@acorex/modules 20.3.0-next.2 → 20.3.0-next.4
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.
- package/fesm2022/acorex-modules-common.mjs +0 -21
- package/fesm2022/acorex-modules-common.mjs.map +1 -1
- package/fesm2022/acorex-modules-content-management.mjs +4 -44
- package/fesm2022/acorex-modules-content-management.mjs.map +1 -1
- package/fesm2022/acorex-modules-dashboard-management.mjs +1 -1
- package/fesm2022/acorex-modules-dashboard-management.mjs.map +1 -1
- package/fesm2022/acorex-modules-data-management.mjs +5 -0
- package/fesm2022/acorex-modules-data-management.mjs.map +1 -1
- package/fesm2022/{acorex-modules-document-management-acorex-modules-document-management-Dgy-OSBs.mjs → acorex-modules-document-management-acorex-modules-document-management-DDriJFmP.mjs} +88 -67
- package/fesm2022/acorex-modules-document-management-acorex-modules-document-management-DDriJFmP.mjs.map +1 -0
- package/fesm2022/{acorex-modules-document-management-attachment-widget.component-Df-ToSSS.mjs → acorex-modules-document-management-attachment-widget.component-OYJu4IJz.mjs} +2 -2
- package/fesm2022/{acorex-modules-document-management-attachment-widget.component-Df-ToSSS.mjs.map → acorex-modules-document-management-attachment-widget.component-OYJu4IJz.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-document-management-create-folder-dialog.component-rD3uIvAi.mjs → acorex-modules-document-management-create-folder-dialog.component-CZzlGMcu.mjs} +2 -2
- package/fesm2022/{acorex-modules-document-management-create-folder-dialog.component-rD3uIvAi.mjs.map → acorex-modules-document-management-create-folder-dialog.component-CZzlGMcu.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-document-management-details-view.component-B46W2yNV.mjs → acorex-modules-document-management-details-view.component-VdV7xGPS.mjs} +2 -2
- package/fesm2022/{acorex-modules-document-management-details-view.component-B46W2yNV.mjs.map → acorex-modules-document-management-details-view.component-VdV7xGPS.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-document-management-document-signature-popup.component-DVNJGVCs.mjs → acorex-modules-document-management-document-signature-popup.component-Gi0_m0oe.mjs} +2 -2
- package/fesm2022/{acorex-modules-document-management-document-signature-popup.component-DVNJGVCs.mjs.map → acorex-modules-document-management-document-signature-popup.component-Gi0_m0oe.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-document-management-drive-choose.component-BX7CGKrz.mjs → acorex-modules-document-management-drive-choose.component-BgRZ_nhs.mjs} +2 -2
- package/fesm2022/{acorex-modules-document-management-drive-choose.component-BX7CGKrz.mjs.map → acorex-modules-document-management-drive-choose.component-BgRZ_nhs.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-document-management-drive.component-Cq2jq81B.mjs → acorex-modules-document-management-drive.component-BRCGsnuI.mjs} +2 -2
- package/fesm2022/{acorex-modules-document-management-drive.component-Cq2jq81B.mjs.map → acorex-modules-document-management-drive.component-BRCGsnuI.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-document-management-large-icons-view.component-YFCNhzDy.mjs → acorex-modules-document-management-large-icons-view.component-CnsPx3K3.mjs} +2 -2
- package/fesm2022/{acorex-modules-document-management-large-icons-view.component-YFCNhzDy.mjs.map → acorex-modules-document-management-large-icons-view.component-CnsPx3K3.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-document-management-large-tiles-view.component--qzP70x7.mjs → acorex-modules-document-management-large-tiles-view.component-D4OUme1W.mjs} +2 -2
- package/fesm2022/{acorex-modules-document-management-large-tiles-view.component--qzP70x7.mjs.map → acorex-modules-document-management-large-tiles-view.component-D4OUme1W.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-document-management-list-view.component-BX-LW6ZY.mjs → acorex-modules-document-management-list-view.component-C7i4jI9h.mjs} +2 -2
- package/fesm2022/{acorex-modules-document-management-list-view.component-BX-LW6ZY.mjs.map → acorex-modules-document-management-list-view.component-C7i4jI9h.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-document-management-permission-definition.provider-CzKeJee7.mjs → acorex-modules-document-management-permission-definition.provider-ZQbJAb7x.mjs} +42 -2
- package/fesm2022/acorex-modules-document-management-permission-definition.provider-ZQbJAb7x.mjs.map +1 -0
- package/fesm2022/{acorex-modules-document-management-rename-node-dialog.component-DdNiN_KY.mjs → acorex-modules-document-management-rename-node-dialog.component-DHVn7RIv.mjs} +2 -2
- package/fesm2022/{acorex-modules-document-management-rename-node-dialog.component-DdNiN_KY.mjs.map → acorex-modules-document-management-rename-node-dialog.component-DHVn7RIv.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-document-management-small-icons-view.component-BHt1AmMl.mjs → acorex-modules-document-management-small-icons-view.component-By36moe5.mjs} +2 -2
- package/fesm2022/{acorex-modules-document-management-small-icons-view.component-BHt1AmMl.mjs.map → acorex-modules-document-management-small-icons-view.component-By36moe5.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-document-management-small-tiles-view.component-FB8Wld2S.mjs → acorex-modules-document-management-small-tiles-view.component-CO6MfsEU.mjs} +2 -2
- package/fesm2022/{acorex-modules-document-management-small-tiles-view.component-FB8Wld2S.mjs.map → acorex-modules-document-management-small-tiles-view.component-CO6MfsEU.mjs.map} +1 -1
- package/fesm2022/acorex-modules-document-management.mjs +1 -1
- package/fesm2022/{acorex-modules-human-capital-management-acorex-modules-human-capital-management-Bf-tLXnX.mjs → acorex-modules-human-capital-management-acorex-modules-human-capital-management-WkDn4mpE.mjs} +10 -10
- package/fesm2022/{acorex-modules-human-capital-management-acorex-modules-human-capital-management-Bf-tLXnX.mjs.map → acorex-modules-human-capital-management-acorex-modules-human-capital-management-WkDn4mpE.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-human-capital-management-employee-skill.entity-Bf59aJXl.mjs → acorex-modules-human-capital-management-employee-skill.entity-DsUYujPr.mjs} +2 -2
- package/fesm2022/{acorex-modules-human-capital-management-employee-skill.entity-Bf59aJXl.mjs.map → acorex-modules-human-capital-management-employee-skill.entity-DsUYujPr.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-human-capital-management-employee.entity-CkCvNdte.mjs → acorex-modules-human-capital-management-employee.entity-CC-LIIki.mjs} +2 -2
- package/fesm2022/{acorex-modules-human-capital-management-employee.entity-CkCvNdte.mjs.map → acorex-modules-human-capital-management-employee.entity-CC-LIIki.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-human-capital-management-employment-type.entity-CDsdURsN.mjs → acorex-modules-human-capital-management-employment-type.entity-Mgkdm2vo.mjs} +2 -2
- package/fesm2022/{acorex-modules-human-capital-management-employment-type.entity-CDsdURsN.mjs.map → acorex-modules-human-capital-management-employment-type.entity-Mgkdm2vo.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-human-capital-management-leave-request.entity-D5iNotoP.mjs → acorex-modules-human-capital-management-leave-request.entity-BJyciZGL.mjs} +2 -2
- package/fesm2022/{acorex-modules-human-capital-management-leave-request.entity-D5iNotoP.mjs.map → acorex-modules-human-capital-management-leave-request.entity-BJyciZGL.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-human-capital-management-leave-type.entity-DuLh4EF_.mjs → acorex-modules-human-capital-management-leave-type.entity-IewYlMLV.mjs} +2 -2
- package/fesm2022/{acorex-modules-human-capital-management-leave-type.entity-DuLh4EF_.mjs.map → acorex-modules-human-capital-management-leave-type.entity-IewYlMLV.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-human-capital-management-position-assignment.entity-DdsBZyVA.mjs → acorex-modules-human-capital-management-position-assignment.entity-BlKFRnO0.mjs} +2 -2
- package/fesm2022/{acorex-modules-human-capital-management-position-assignment.entity-DdsBZyVA.mjs.map → acorex-modules-human-capital-management-position-assignment.entity-BlKFRnO0.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-human-capital-management-skill-level.entity-BVFXdOYw.mjs → acorex-modules-human-capital-management-skill-level.entity-De1qKpcU.mjs} +2 -2
- package/fesm2022/{acorex-modules-human-capital-management-skill-level.entity-BVFXdOYw.mjs.map → acorex-modules-human-capital-management-skill-level.entity-De1qKpcU.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-human-capital-management-skill.entity-Civ9PhC3.mjs → acorex-modules-human-capital-management-skill.entity-RrnBU0M5.mjs} +2 -2
- package/fesm2022/{acorex-modules-human-capital-management-skill.entity-Civ9PhC3.mjs.map → acorex-modules-human-capital-management-skill.entity-RrnBU0M5.mjs.map} +1 -1
- package/fesm2022/acorex-modules-human-capital-management.mjs +1 -1
- package/fesm2022/acorex-modules-locale-management.mjs +5 -0
- package/fesm2022/acorex-modules-locale-management.mjs.map +1 -1
- package/fesm2022/acorex-modules-organization-management.mjs +1 -1
- package/fesm2022/acorex-modules-organization-management.mjs.map +1 -1
- package/fesm2022/acorex-modules-report-management.mjs +1 -1
- package/fesm2022/acorex-modules-report-management.mjs.map +1 -1
- package/fesm2022/acorex-modules-security-management.mjs +4 -2
- package/fesm2022/acorex-modules-security-management.mjs.map +1 -1
- package/fesm2022/acorex-modules-settings-management.mjs +46 -2
- package/fesm2022/acorex-modules-settings-management.mjs.map +1 -1
- package/fesm2022/{acorex-modules-task-management-task-board.page-FDZgH0ir.mjs → acorex-modules-task-management-task-board.page-DThbrMLC.mjs} +3 -3
- package/fesm2022/{acorex-modules-task-management-task-board.page-FDZgH0ir.mjs.map → acorex-modules-task-management-task-board.page-DThbrMLC.mjs.map} +1 -1
- package/fesm2022/acorex-modules-task-management.mjs +35 -37
- package/fesm2022/acorex-modules-task-management.mjs.map +1 -1
- package/package.json +1 -1
- package/fesm2022/acorex-modules-document-management-acorex-modules-document-management-Dgy-OSBs.mjs.map +0 -1
- package/fesm2022/acorex-modules-document-management-permission-definition.provider-CzKeJee7.mjs.map +0 -1
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"acorex-modules-document-management-acorex-modules-document-management-Dgy-OSBs.mjs","sources":["../tmp-esm2022/document-management/lib/const.js","../tmp-esm2022/document-management/lib/entity.provider.js","../tmp-esm2022/document-management/lib/permission.keys.js","../tmp-esm2022/document-management/lib/menu.provider.js","../tmp-esm2022/document-management/lib/search-command.provider.js","../tmp-esm2022/document-management/lib/settings.provider.js","../tmp-esm2022/document-management/lib/entities/document/document.service.js","../tmp-esm2022/document-management/lib/entities/document/document.entity.js","../tmp-esm2022/document-management/lib/entities/document/document.module.js","../tmp-esm2022/document-management/lib/entities/document/document.types.js","../tmp-esm2022/document-management/lib/entities/document-type/document-type.service.js","../tmp-esm2022/document-management/lib/entities/document-type/document-type.entity.js","../tmp-esm2022/document-management/lib/entities/document-type/document-type.module.js","../tmp-esm2022/document-management/lib/entities/document-type-meta-definition/document-type-meta-definition.service.js","../tmp-esm2022/document-management/lib/entities/document-type-meta-definition/document-type-meta-definition.entity.js","../tmp-esm2022/document-management/lib/entities/document-type-meta-definition/document-type-meta-definition.module.js","../tmp-esm2022/document-management/lib/entities/document-type-meta-value/document-type-meta-value.service.js","../tmp-esm2022/document-management/lib/entities/document-type-meta-value/document-type-meta-value.entity.js","../tmp-esm2022/document-management/lib/entities/document-type-meta-value/document-type-meta-value.module.js","../tmp-esm2022/document-management/lib/entities/document-type-status-definition/document-type-status-definition.service.js","../tmp-esm2022/document-management/lib/entities/document-type-status-definition/document-type-status-definition.entity.js","../tmp-esm2022/document-management/lib/entities/document-type-status-definition/document-type-status-definition.module.js","../tmp-esm2022/document-management/lib/entities/document-releted/document.entity.js","../tmp-esm2022/document-management/lib/entities/folder/folder.service.js","../tmp-esm2022/document-management/lib/entities/folder/folder.entity.js","../tmp-esm2022/document-management/lib/entities/folder/folder.module.js","../tmp-esm2022/document-management/lib/entities/review/review.service.js","../tmp-esm2022/document-management/lib/entities/review/review.entity.js","../tmp-esm2022/document-management/lib/entities/review/review.module.js","../tmp-esm2022/document-management/lib/entities/distribution/distribution.service.js","../tmp-esm2022/document-management/lib/entities/distribution/distribution.entity.js","../tmp-esm2022/document-management/lib/entities/distribution/distribution.module.js","../tmp-esm2022/document-management/lib/entities/distribution-interaction/distribution-interaction.service.js","../tmp-esm2022/document-management/lib/entities/distribution-interaction/distribution-interaction.entity.js","../tmp-esm2022/document-management/lib/entities/distribution-interaction/distribution-interaction.module.js","../tmp-esm2022/document-management/lib/entities/document-releted/document-releted.module.js","../tmp-esm2022/document-management/lib/entities/index.js","../tmp-esm2022/document-management/lib/features/file-type/providers/image.file.js","../tmp-esm2022/document-management/lib/features/file-type/providers/video.file.js","../tmp-esm2022/document-management/lib/features/file-type/providers/document.file.js","../tmp-esm2022/document-management/lib/features/file-type/providers/audio.file.js","../tmp-esm2022/document-management/lib/features/file-type/providers/archive.file.js","../tmp-esm2022/document-management/lib/features/file-type/providers/code.file.js","../tmp-esm2022/document-management/lib/features/file-type/widgets/file-type-extension/file-type-extension-column.component.js","../tmp-esm2022/document-management/lib/features/file-type/widgets/file-type-extension/file-type-extension-designer.component.js","../tmp-esm2022/document-management/lib/features/file-type/widgets/file-type-extension/file-type-extension-edit.component.js","../tmp-esm2022/document-management/lib/features/file-type/widgets/file-type-extension/file-type-extension-view.component.js","../tmp-esm2022/document-management/lib/features/file-type/widgets/file-type-extension/file-type-extension-widget.config.js","../tmp-esm2022/document-management/lib/features/file-type/file-type.module.js","../tmp-esm2022/document-management/lib/features/workflow/upload/upload.workflow.js","../tmp-esm2022/document-management/lib/features/workflow/document-review/document-review.workflow.js","../tmp-esm2022/document-management/lib/features/workflow/document-distribution/document-distribution.workflow.js","../tmp-esm2022/document-management/lib/features/workflow/document-signature/document-signature.workflow.js","../tmp-esm2022/document-management/lib/badge.provider.js","../tmp-esm2022/document-management/lib/features/shared/services/document-attachments.service.js","../tmp-esm2022/document-management/lib/features/shared/document-manager.service.js","../tmp-esm2022/document-management/lib/features/shared/components/document-type-choose-file/document-type-choose-file.component.js","../tmp-esm2022/document-management/lib/features/shared/components/file-viewer-popup/file-viewer-popup.component.js","../tmp-esm2022/document-management/lib/features/document-explorer/settings.keys.js","../tmp-esm2022/document-management/lib/features/document-explorer/document-explorer.viewmodel.js","../tmp-esm2022/document-management/lib/features/document-explorer/document-explorer.component.js","../tmp-esm2022/document-management/lib/features/shared/components/folder-path-breadcrumbs/folder-path-breadcrumbs.component.js","../tmp-esm2022/document-management/lib/features/drive-choose/slots/file-uploader-widget-extension/upload-from-drive.hook.js","../tmp-esm2022/document-management/lib/features/drive-choose/drive-choose.module.js","../tmp-esm2022/document-management/lib/features/meta-choose-widget/meta-list/meta-list-item/meta-list-item.component.js","../tmp-esm2022/document-management/lib/features/meta-choose-widget/meta-list/meta-list.component.js","../tmp-esm2022/document-management/lib/features/meta-choose-widget/meta-selector-widget-edit.component.js","../tmp-esm2022/document-management/lib/features/meta-choose-widget/meta-selector-widget.config.js","../tmp-esm2022/document-management/lib/features/widgets/attachment/document-uploader-widget.config.js","../tmp-esm2022/document-management/lib/features/widgets/attachment/document-uploader-designer.component.js","../tmp-esm2022/document-management/lib/features/widgets/attachment/document-uploader-edit.component.js","../tmp-esm2022/document-management/lib/features/widgets/attachment/document-uploader-view.component.js","../tmp-esm2022/document-management/lib/features/widgets/attachment/document-uploader-filter.component.js","../tmp-esm2022/document-management/lib/features/widgets/attachment/document-uploader-column.component.js","../tmp-esm2022/document-management/lib/features/widgets/attachment/document-uploader-print.component.js","../tmp-esm2022/document-management/lib/features/task/review.task.provider.js","../tmp-esm2022/document-management/lib/features/task/distribution.task.provider.js","../tmp-esm2022/document-management/lib/features/shared/attachments.plugin.js","../tmp-esm2022/document-management/lib/features/shared/document-file-uploader.widget.plugin.js","../tmp-esm2022/document-management/lib/document-management.module.js","../tmp-esm2022/document-management/acorex-modules-document-management.js"],"sourcesContent":["const config = {\n i18n: 'document-management',\n};\nexport const RootConfig = {\n config,\n module: {\n module: 'DocumentManagement',\n name: 'DocumentManagement',\n title: `t('documentManagement', {scope:\"${config.i18n}\"})`,\n icon: 'fa-light fa-books',\n },\n entities: {\n documentRelated: {\n name: 'DocumentRelated',\n title: `t(\"document\", { scope: \"${config.i18n}\" })`,\n titlePlural: `t(\"documentPlural\", { scope: \"${config.i18n}\" })`,\n icon: 'fa-light fa-default',\n },\n distributionInteraction: {\n name: 'DistributionInteraction',\n title: `t(\"distributionInteraction\", { scope: \"${config.i18n}\" })`,\n titlePlural: `t(\"distributionInteractionPlural\", { scope: \"${config.i18n}\" })`,\n icon: 'fa-light fa-default',\n },\n distribution: {\n name: 'Distribution',\n title: `t(\"distribution\", { scope: \"${config.i18n}\" })`,\n titlePlural: `t(\"distributionPlural\", { scope: \"${config.i18n}\" })`,\n icon: 'fa-light fa-default',\n },\n review: {\n name: 'Review',\n title: `t(\"review\", { scope: \"${config.i18n}\" })`,\n titlePlural: `t(\"reviewPlural\", { scope: \"${config.i18n}\" })`,\n icon: 'fa-light fa-file-pen',\n },\n folder: {\n name: 'Folder',\n title: `t(\"folder\", { scope: \"${config.i18n}\" })`,\n titlePlural: `t(\"folderPlural\", { scope: \"${config.i18n}\" })`,\n icon: 'fa-light fa-folder',\n },\n document: {\n name: 'Document',\n title: `t(\"document\", { scope: \"${config.i18n}\" })`,\n titlePlural: `t(\"documentPlural\", { scope: \"${config.i18n}\" })`,\n icon: 'fa-light fa-file',\n },\n documentType: {\n name: 'DocumentType',\n title: `t(\"documentType\", { scope: \"${config.i18n}\" })`,\n titlePlural: `t(\"documentTypePlural\", { scope: \"${config.i18n}\" })`,\n icon: 'fa-light fa-books',\n },\n documentTypeMetaDefinition: {\n name: 'documentTypeMeta',\n title: `t(\"documentTypeMeta\", { scope: \"${config.i18n}\" })`,\n titlePlural: `t(\"documentTypeMetaPlural\", { scope: \"${config.i18n}\" })`,\n icon: 'fa-light fa-meta',\n },\n documentTypeMetaValue: {\n name: 'documentTypeMetaValue',\n title: `t(\"documentTypeMetaValue\", { scope: \"${config.i18n}\" })`,\n titlePlural: `t(\"documentTypeMetaValuePlural\", { scope: \"${config.i18n}\" })`,\n icon: 'fa-light fa-meta',\n },\n documentTypeStatus: {\n name: 'documentTypeStatus',\n title: `t(\"documentTypeStatus\", { scope: \"${config.i18n}\" })`,\n titlePlural: `t(\"documentTypeStatusPlural\", { scope: \"${config.i18n}\" })`,\n icon: 'fa-light fa-status',\n },\n },\n};\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uc3QuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL21vZHVsZXMvZG9jdW1lbnQtbWFuYWdlbWVudC9zcmMvbGliL2NvbnN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sTUFBTSxHQUFHO0lBQ2IsSUFBSSxFQUFFLHFCQUFxQjtDQUM1QixDQUFDO0FBQ0YsTUFBTSxDQUFDLE1BQU0sVUFBVSxHQUFHO0lBQ3hCLE1BQU07SUFDTixNQUFNLEVBQUU7UUFDTixNQUFNLEVBQUUsb0JBQW9CO1FBQzVCLElBQUksRUFBRSxvQkFBb0I7UUFDMUIsS0FBSyxFQUFFLG1DQUFtQyxNQUFNLENBQUMsSUFBSSxLQUFLO1FBQzFELElBQUksRUFBRSxtQkFBbUI7S0FDMUI7SUFDRCxRQUFRLEVBQUU7UUFDUixlQUFlLEVBQUU7WUFDZixJQUFJLEVBQUUsaUJBQWlCO1lBQ3ZCLEtBQUssRUFBRSwyQkFBMkIsTUFBTSxDQUFDLElBQUksTUFBTTtZQUNuRCxXQUFXLEVBQUUsaUNBQWlDLE1BQU0sQ0FBQyxJQUFJLE1BQU07WUFDL0QsSUFBSSxFQUFFLHFCQUFxQjtTQUM1QjtRQUNELHVCQUF1QixFQUFFO1lBQ3ZCLElBQUksRUFBRSx5QkFBeUI7WUFDL0IsS0FBSyxFQUFFLDBDQUEwQyxNQUFNLENBQUMsSUFBSSxNQUFNO1lBQ2xFLFdBQVcsRUFBRSxnREFBZ0QsTUFBTSxDQUFDLElBQUksTUFBTTtZQUM5RSxJQUFJLEVBQUUscUJBQXFCO1NBQzVCO1FBQ0QsWUFBWSxFQUFFO1lBQ1osSUFBSSxFQUFFLGNBQWM7WUFDcEIsS0FBSyxFQUFFLCtCQUErQixNQUFNLENBQUMsSUFBSSxNQUFNO1lBQ3ZELFdBQVcsRUFBRSxxQ0FBcUMsTUFBTSxDQUFDLElBQUksTUFBTTtZQUNuRSxJQUFJLEVBQUUscUJBQXFCO1NBQzVCO1FBQ0QsTUFBTSxFQUFFO1lBQ04sSUFBSSxFQUFFLFFBQVE7WUFDZCxLQUFLLEVBQUUseUJBQXlCLE1BQU0sQ0FBQyxJQUFJLE1BQU07WUFDakQsV0FBVyxFQUFFLCtCQUErQixNQUFNLENBQUMsSUFBSSxNQUFNO1lBQzdELElBQUksRUFBRSxzQkFBc0I7U0FDN0I7UUFDRCxNQUFNLEVBQUU7WUFDTixJQUFJLEVBQUUsUUFBUTtZQUNkLEtBQUssRUFBRSx5QkFBeUIsTUFBTSxDQUFDLElBQUksTUFBTTtZQUNqRCxXQUFXLEVBQUUsK0JBQStCLE1BQU0sQ0FBQyxJQUFJLE1BQU07WUFDN0QsSUFBSSxFQUFFLG9CQUFvQjtTQUMzQjtRQUNELFFBQVEsRUFBRTtZQUNSLElBQUksRUFBRSxVQUFVO1lBQ2hCLEtBQUssRUFBRSwyQkFBMkIsTUFBTSxDQUFDLElBQUksTUFBTTtZQUNuRCxXQUFXLEVBQUUsaUNBQWlDLE1BQU0sQ0FBQyxJQUFJLE1BQU07WUFDL0QsSUFBSSxFQUFFLGtCQUFrQjtTQUN6QjtRQUNELFlBQVksRUFBRTtZQUNaLElBQUksRUFBRSxjQUFjO1lBQ3BCLEtBQUssRUFBRSwrQkFBK0IsTUFBTSxDQUFDLElBQUksTUFBTTtZQUN2RCxXQUFXLEVBQUUscUNBQXFDLE1BQU0sQ0FBQyxJQUFJLE1BQU07WUFDbkUsSUFBSSxFQUFFLG1CQUFtQjtTQUMxQjtRQUNELDBCQUEwQixFQUFFO1lBQzFCLElBQUksRUFBRSxrQkFBa0I7WUFDeEIsS0FBSyxFQUFFLG1DQUFtQyxNQUFNLENBQUMsSUFBSSxNQUFNO1lBQzNELFdBQVcsRUFBRSx5Q0FBeUMsTUFBTSxDQUFDLElBQUksTUFBTTtZQUN2RSxJQUFJLEVBQUUsa0JBQWtCO1NBQ3pCO1FBQ0QscUJBQXFCLEVBQUU7WUFDckIsSUFBSSxFQUFFLHVCQUF1QjtZQUM3QixLQUFLLEVBQUUsd0NBQXdDLE1BQU0sQ0FBQyxJQUFJLE1BQU07WUFDaEUsV0FBVyxFQUFFLDhDQUE4QyxNQUFNLENBQUMsSUFBSSxNQUFNO1lBQzVFLElBQUksRUFBRSxrQkFBa0I7U0FDekI7UUFDRCxrQkFBa0IsRUFBRTtZQUNsQixJQUFJLEVBQUUsb0JBQW9CO1lBQzFCLEtBQUssRUFBRSxxQ0FBcUMsTUFBTSxDQUFDLElBQUksTUFBTTtZQUM3RCxXQUFXLEVBQUUsMkNBQTJDLE1BQU0sQ0FBQyxJQUFJLE1BQU07WUFDekUsSUFBSSxFQUFFLG9CQUFvQjtTQUMzQjtLQUNGO0NBQ0YsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImNvbnN0IGNvbmZpZyA9IHtcbiAgaTE4bjogJ2RvY3VtZW50LW1hbmFnZW1lbnQnLFxufTtcbmV4cG9ydCBjb25zdCBSb290Q29uZmlnID0ge1xuICBjb25maWcsXG4gIG1vZHVsZToge1xuICAgIG1vZHVsZTogJ0RvY3VtZW50TWFuYWdlbWVudCcsXG4gICAgbmFtZTogJ0RvY3VtZW50TWFuYWdlbWVudCcsXG4gICAgdGl0bGU6IGB0KCdkb2N1bWVudE1hbmFnZW1lbnQnLCB7c2NvcGU6XCIke2NvbmZpZy5pMThufVwifSlgLFxuICAgIGljb246ICdmYS1saWdodCBmYS1ib29rcycsXG4gIH0sXG4gIGVudGl0aWVzOiB7XG4gICAgZG9jdW1lbnRSZWxhdGVkOiB7XG4gICAgICBuYW1lOiAnRG9jdW1lbnRSZWxhdGVkJyxcbiAgICAgIHRpdGxlOiBgdChcImRvY3VtZW50XCIsIHsgc2NvcGU6IFwiJHtjb25maWcuaTE4bn1cIiB9KWAsXG4gICAgICB0aXRsZVBsdXJhbDogYHQoXCJkb2N1bWVudFBsdXJhbFwiLCB7IHNjb3BlOiBcIiR7Y29uZmlnLmkxOG59XCIgfSlgLFxuICAgICAgaWNvbjogJ2ZhLWxpZ2h0IGZhLWRlZmF1bHQnLFxuICAgIH0sXG4gICAgZGlzdHJpYnV0aW9uSW50ZXJhY3Rpb246IHtcbiAgICAgIG5hbWU6ICdEaXN0cmlidXRpb25JbnRlcmFjdGlvbicsXG4gICAgICB0aXRsZTogYHQoXCJkaXN0cmlidXRpb25JbnRlcmFjdGlvblwiLCB7IHNjb3BlOiBcIiR7Y29uZmlnLmkxOG59XCIgfSlgLFxuICAgICAgdGl0bGVQbHVyYWw6IGB0KFwiZGlzdHJpYnV0aW9uSW50ZXJhY3Rpb25QbHVyYWxcIiwgeyBzY29wZTogXCIke2NvbmZpZy5pMThufVwiIH0pYCxcbiAgICAgIGljb246ICdmYS1saWdodCBmYS1kZWZhdWx0JyxcbiAgICB9LFxuICAgIGRpc3RyaWJ1dGlvbjoge1xuICAgICAgbmFtZTogJ0Rpc3RyaWJ1dGlvbicsXG4gICAgICB0aXRsZTogYHQoXCJkaXN0cmlidXRpb25cIiwgeyBzY29wZTogXCIke2NvbmZpZy5pMThufVwiIH0pYCxcbiAgICAgIHRpdGxlUGx1cmFsOiBgdChcImRpc3RyaWJ1dGlvblBsdXJhbFwiLCB7IHNjb3BlOiBcIiR7Y29uZmlnLmkxOG59XCIgfSlgLFxuICAgICAgaWNvbjogJ2ZhLWxpZ2h0IGZhLWRlZmF1bHQnLFxuICAgIH0sXG4gICAgcmV2aWV3OiB7XG4gICAgICBuYW1lOiAnUmV2aWV3JyxcbiAgICAgIHRpdGxlOiBgdChcInJldmlld1wiLCB7IHNjb3BlOiBcIiR7Y29uZmlnLmkxOG59XCIgfSlgLFxuICAgICAgdGl0bGVQbHVyYWw6IGB0KFwicmV2aWV3UGx1cmFsXCIsIHsgc2NvcGU6IFwiJHtjb25maWcuaTE4bn1cIiB9KWAsXG4gICAgICBpY29uOiAnZmEtbGlnaHQgZmEtZmlsZS1wZW4nLFxuICAgIH0sXG4gICAgZm9sZGVyOiB7XG4gICAgICBuYW1lOiAnRm9sZGVyJyxcbiAgICAgIHRpdGxlOiBgdChcImZvbGRlclwiLCB7IHNjb3BlOiBcIiR7Y29uZmlnLmkxOG59XCIgfSlgLFxuICAgICAgdGl0bGVQbHVyYWw6IGB0KFwiZm9sZGVyUGx1cmFsXCIsIHsgc2NvcGU6IFwiJHtjb25maWcuaTE4bn1cIiB9KWAsXG4gICAgICBpY29uOiAnZmEtbGlnaHQgZmEtZm9sZGVyJyxcbiAgICB9LFxuICAgIGRvY3VtZW50OiB7XG4gICAgICBuYW1lOiAnRG9jdW1lbnQnLFxuICAgICAgdGl0bGU6IGB0KFwiZG9jdW1lbnRcIiwgeyBzY29wZTogXCIke2NvbmZpZy5pMThufVwiIH0pYCxcbiAgICAgIHRpdGxlUGx1cmFsOiBgdChcImRvY3VtZW50UGx1cmFsXCIsIHsgc2NvcGU6IFwiJHtjb25maWcuaTE4bn1cIiB9KWAsXG4gICAgICBpY29uOiAnZmEtbGlnaHQgZmEtZmlsZScsXG4gICAgfSxcbiAgICBkb2N1bWVudFR5cGU6IHtcbiAgICAgIG5hbWU6ICdEb2N1bWVudFR5cGUnLFxuICAgICAgdGl0bGU6IGB0KFwiZG9jdW1lbnRUeXBlXCIsIHsgc2NvcGU6IFwiJHtjb25maWcuaTE4bn1cIiB9KWAsXG4gICAgICB0aXRsZVBsdXJhbDogYHQoXCJkb2N1bWVudFR5cGVQbHVyYWxcIiwgeyBzY29wZTogXCIke2NvbmZpZy5pMThufVwiIH0pYCxcbiAgICAgIGljb246ICdmYS1saWdodCBmYS1ib29rcycsXG4gICAgfSxcbiAgICBkb2N1bWVudFR5cGVNZXRhRGVmaW5pdGlvbjoge1xuICAgICAgbmFtZTogJ2RvY3VtZW50VHlwZU1ldGEnLFxuICAgICAgdGl0bGU6IGB0KFwiZG9jdW1lbnRUeXBlTWV0YVwiLCB7IHNjb3BlOiBcIiR7Y29uZmlnLmkxOG59XCIgfSlgLFxuICAgICAgdGl0bGVQbHVyYWw6IGB0KFwiZG9jdW1lbnRUeXBlTWV0YVBsdXJhbFwiLCB7IHNjb3BlOiBcIiR7Y29uZmlnLmkxOG59XCIgfSlgLFxuICAgICAgaWNvbjogJ2ZhLWxpZ2h0IGZhLW1ldGEnLFxuICAgIH0sXG4gICAgZG9jdW1lbnRUeXBlTWV0YVZhbHVlOiB7XG4gICAgICBuYW1lOiAnZG9jdW1lbnRUeXBlTWV0YVZhbHVlJyxcbiAgICAgIHRpdGxlOiBgdChcImRvY3VtZW50VHlwZU1ldGFWYWx1ZVwiLCB7IHNjb3BlOiBcIiR7Y29uZmlnLmkxOG59XCIgfSlgLFxuICAgICAgdGl0bGVQbHVyYWw6IGB0KFwiZG9jdW1lbnRUeXBlTWV0YVZhbHVlUGx1cmFsXCIsIHsgc2NvcGU6IFwiJHtjb25maWcuaTE4bn1cIiB9KWAsXG4gICAgICBpY29uOiAnZmEtbGlnaHQgZmEtbWV0YScsXG4gICAgfSxcbiAgICBkb2N1bWVudFR5cGVTdGF0dXM6IHtcbiAgICAgIG5hbWU6ICdkb2N1bWVudFR5cGVTdGF0dXMnLFxuICAgICAgdGl0bGU6IGB0KFwiZG9jdW1lbnRUeXBlU3RhdHVzXCIsIHsgc2NvcGU6IFwiJHtjb25maWcuaTE4bn1cIiB9KWAsXG4gICAgICB0aXRsZVBsdXJhbDogYHQoXCJkb2N1bWVudFR5cGVTdGF0dXNQbHVyYWxcIiwgeyBzY29wZTogXCIke2NvbmZpZy5pMThufVwiIH0pYCxcbiAgICAgIGljb246ICdmYS1saWdodCBmYS1zdGF0dXMnLFxuICAgIH0sXG4gIH0sXG59O1xuIl19","import { Injectable, Injector, inject } from '@angular/core';\nimport { RootConfig } from './const';\nimport * as i0 from \"@angular/core\";\nexport class AXMEntityProvider {\n constructor() {\n this.injector = inject(Injector);\n }\n preload() {\n const module = RootConfig.module.name;\n return Array.from(Object.values(RootConfig.entities)).map((entity) => ({\n module: module,\n entity: entity.name,\n }));\n }\n async get(moduleName, entityName) {\n if (moduleName == RootConfig.module.name) {\n switch (entityName) {\n case RootConfig.entities.document.name:\n return (await import('./entities')).documentFactory(this.injector);\n case RootConfig.entities.documentType.name:\n return (await import('./entities')).documentTypeFactory(this.injector);\n case RootConfig.entities.folder.name:\n return (await import('./entities')).folderFactory(this.injector);\n case RootConfig.entities.review.name:\n return (await import('./entities')).reviewFactory(this.injector);\n case RootConfig.entities.distribution.name:\n return (await import('./entities')).distributionFactory(this.injector);\n case RootConfig.entities.distributionInteraction.name:\n return (await import('./entities')).distributionInteractionFactory(this.injector);\n case RootConfig.entities.documentRelated.name:\n return (await import('./entities')).documentRelatedFactory(this.injector);\n }\n }\n return null;\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: AXMEntityProvider, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }\n static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: AXMEntityProvider }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: AXMEntityProvider, decorators: [{\n type: Injectable\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW50aXR5LnByb3ZpZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tb2R1bGVzL2RvY3VtZW50LW1hbmFnZW1lbnQvc3JjL2xpYi9lbnRpdHkucHJvdmlkZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBTUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxRQUFRLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzdELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxTQUFTLENBQUM7O0FBR3JDLE1BQU0sT0FBTyxpQkFBaUI7SUFEOUI7UUFFVSxhQUFRLEdBQUcsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDO0tBK0JyQztJQTdCUSxPQUFPO1FBQ1osTUFBTSxNQUFNLEdBQUcsVUFBVSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUM7UUFDdEMsT0FBTyxLQUFLLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsVUFBVSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsTUFBVyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1lBQzFFLE1BQU0sRUFBRSxNQUFNO1lBQ2QsTUFBTSxFQUFFLE1BQU0sQ0FBQyxJQUFJO1NBQ3BCLENBQUMsQ0FBQyxDQUFDO0lBQ04sQ0FBQztJQUVELEtBQUssQ0FBQyxHQUFHLENBQUMsVUFBa0IsRUFBRSxVQUFrQjtRQUM5QyxJQUFJLFVBQVUsSUFBSSxVQUFVLENBQUMsTUFBTSxDQUFDLElBQUksRUFBRSxDQUFDO1lBQ3pDLFFBQVEsVUFBVSxFQUFFLENBQUM7Z0JBQ25CLEtBQUssVUFBVSxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsSUFBSTtvQkFDcEMsT0FBTyxDQUFDLE1BQU0sTUFBTSxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztnQkFDckUsS0FBSyxVQUFVLENBQUMsUUFBUSxDQUFDLFlBQVksQ0FBQyxJQUFJO29CQUN4QyxPQUFPLENBQUMsTUFBTSxNQUFNLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQyxtQkFBbUIsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7Z0JBQ3pFLEtBQUssVUFBVSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsSUFBSTtvQkFDbEMsT0FBTyxDQUFDLE1BQU0sTUFBTSxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztnQkFDbkUsS0FBSyxVQUFVLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxJQUFJO29CQUNsQyxPQUFPLENBQUMsTUFBTSxNQUFNLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO2dCQUNuRSxLQUFLLFVBQVUsQ0FBQyxRQUFRLENBQUMsWUFBWSxDQUFDLElBQUk7b0JBQ3hDLE9BQU8sQ0FBQyxNQUFNLE1BQU0sQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDLG1CQUFtQixDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztnQkFDekUsS0FBSyxVQUFVLENBQUMsUUFBUSxDQUFDLHVCQUF1QixDQUFDLElBQUk7b0JBQ25ELE9BQU8sQ0FBQyxNQUFNLE1BQU0sQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDLDhCQUE4QixDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztnQkFDcEYsS0FBSyxVQUFVLENBQUMsUUFBUSxDQUFDLGVBQWUsQ0FBQyxJQUFJO29CQUMzQyxPQUFPLENBQUMsTUFBTSxNQUFNLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQyxzQkFBc0IsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7WUFDOUUsQ0FBQztRQUNILENBQUM7UUFDRCxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7OEdBL0JVLGlCQUFpQjtrSEFBakIsaUJBQWlCOzsyRkFBakIsaUJBQWlCO2tCQUQ3QixVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQVhQRW50aXR5IH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9jb21tb24nO1xuaW1wb3J0IHtcbiAgQVhQRW50aXR5RGVmaW5pdGlvbkxvYWRlcixcbiAgQVhQRW50aXR5RGVmaW5pdGlvblByZWxvYWRlcixcbiAgQVhQRW50aXR5UHJlbG9hZEVudGl0eSxcbn0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9sYXlvdXQvZW50aXR5JztcbmltcG9ydCB7IEluamVjdGFibGUsIEluamVjdG9yLCBpbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFJvb3RDb25maWcgfSBmcm9tICcuL2NvbnN0JztcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIEFYTUVudGl0eVByb3ZpZGVyIGltcGxlbWVudHMgQVhQRW50aXR5RGVmaW5pdGlvbkxvYWRlciwgQVhQRW50aXR5RGVmaW5pdGlvblByZWxvYWRlciB7XG4gIHByaXZhdGUgaW5qZWN0b3IgPSBpbmplY3QoSW5qZWN0b3IpO1xuXG4gIHB1YmxpYyBwcmVsb2FkKCk6IEFYUEVudGl0eVByZWxvYWRFbnRpdHlbXSB7XG4gICAgY29uc3QgbW9kdWxlID0gUm9vdENvbmZpZy5tb2R1bGUubmFtZTtcbiAgICByZXR1cm4gQXJyYXkuZnJvbShPYmplY3QudmFsdWVzKFJvb3RDb25maWcuZW50aXRpZXMpKS5tYXAoKGVudGl0eTogYW55KSA9PiAoe1xuICAgICAgbW9kdWxlOiBtb2R1bGUsXG4gICAgICBlbnRpdHk6IGVudGl0eS5uYW1lLFxuICAgIH0pKTtcbiAgfVxuXG4gIGFzeW5jIGdldChtb2R1bGVOYW1lOiBzdHJpbmcsIGVudGl0eU5hbWU6IHN0cmluZyk6IFByb21pc2U8QVhQRW50aXR5IHwgbnVsbD4ge1xuICAgIGlmIChtb2R1bGVOYW1lID09IFJvb3RDb25maWcubW9kdWxlLm5hbWUpIHtcbiAgICAgIHN3aXRjaCAoZW50aXR5TmFtZSkge1xuICAgICAgICBjYXNlIFJvb3RDb25maWcuZW50aXRpZXMuZG9jdW1lbnQubmFtZTpcbiAgICAgICAgICByZXR1cm4gKGF3YWl0IGltcG9ydCgnLi9lbnRpdGllcycpKS5kb2N1bWVudEZhY3RvcnkodGhpcy5pbmplY3Rvcik7XG4gICAgICAgIGNhc2UgUm9vdENvbmZpZy5lbnRpdGllcy5kb2N1bWVudFR5cGUubmFtZTpcbiAgICAgICAgICByZXR1cm4gKGF3YWl0IGltcG9ydCgnLi9lbnRpdGllcycpKS5kb2N1bWVudFR5cGVGYWN0b3J5KHRoaXMuaW5qZWN0b3IpO1xuICAgICAgICBjYXNlIFJvb3RDb25maWcuZW50aXRpZXMuZm9sZGVyLm5hbWU6XG4gICAgICAgICAgcmV0dXJuIChhd2FpdCBpbXBvcnQoJy4vZW50aXRpZXMnKSkuZm9sZGVyRmFjdG9yeSh0aGlzLmluamVjdG9yKTtcbiAgICAgICAgY2FzZSBSb290Q29uZmlnLmVudGl0aWVzLnJldmlldy5uYW1lOlxuICAgICAgICAgIHJldHVybiAoYXdhaXQgaW1wb3J0KCcuL2VudGl0aWVzJykpLnJldmlld0ZhY3RvcnkodGhpcy5pbmplY3Rvcik7XG4gICAgICAgIGNhc2UgUm9vdENvbmZpZy5lbnRpdGllcy5kaXN0cmlidXRpb24ubmFtZTpcbiAgICAgICAgICByZXR1cm4gKGF3YWl0IGltcG9ydCgnLi9lbnRpdGllcycpKS5kaXN0cmlidXRpb25GYWN0b3J5KHRoaXMuaW5qZWN0b3IpO1xuICAgICAgICBjYXNlIFJvb3RDb25maWcuZW50aXRpZXMuZGlzdHJpYnV0aW9uSW50ZXJhY3Rpb24ubmFtZTpcbiAgICAgICAgICByZXR1cm4gKGF3YWl0IGltcG9ydCgnLi9lbnRpdGllcycpKS5kaXN0cmlidXRpb25JbnRlcmFjdGlvbkZhY3RvcnkodGhpcy5pbmplY3Rvcik7XG4gICAgICAgIGNhc2UgUm9vdENvbmZpZy5lbnRpdGllcy5kb2N1bWVudFJlbGF0ZWQubmFtZTpcbiAgICAgICAgICByZXR1cm4gKGF3YWl0IGltcG9ydCgnLi9lbnRpdGllcycpKS5kb2N1bWVudFJlbGF0ZWRGYWN0b3J5KHRoaXMuaW5qZWN0b3IpO1xuICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gbnVsbDtcbiAgfVxufVxuIl19","export const AXMPermissionsKeys = {\n DocumentManagement: {\n Management: 'document-management:manage',\n DocumentType: {\n Management: 'document-management:document-type:manage',\n View: 'document-management:document-type:view',\n Edit: 'document-management:document-type:edit',\n Delete: 'document-management:document-type:delete',\n Create: 'document-management:document-type:create',\n },\n Driver: {\n Management: 'document-management:driver:manage',\n View: 'document-management:driver:view',\n Edit: 'document-management:driver:edit',\n Delete: 'document-management:driver:delete',\n Create: 'document-management:driver:create',\n },\n Review: {\n Management: 'document-management:review:manage',\n View: 'document-management:review:view',\n Edit: 'document-management:review:edit',\n Delete: 'document-management:review:delete',\n Create: 'document-management:document-type:create',\n },\n Distribution: {\n Management: 'document-management:distribution:manage',\n View: 'document-management:distribution:view',\n Edit: 'document-management:distribution:edit',\n Delete: 'document-management:distribution:delete',\n Create: 'document-management:distribution:create',\n },\n DistributionInteraction: {\n Management: 'document-management:distribution-interaction:manage',\n View: 'document-management:distribution-interaction:view',\n Edit: 'document-management:distribution-interaction:edit',\n Delete: 'document-management:distribution-interaction:delete',\n Create: 'document-management:distribution-interaction:create',\n },\n },\n};\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGVybWlzc2lvbi5rZXlzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tb2R1bGVzL2RvY3VtZW50LW1hbmFnZW1lbnQvc3JjL2xpYi9wZXJtaXNzaW9uLmtleXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxDQUFDLE1BQU0sa0JBQWtCLEdBQUc7SUFDaEMsa0JBQWtCLEVBQUU7UUFDbEIsVUFBVSxFQUFFLDRCQUE0QjtRQUN4QyxZQUFZLEVBQUU7WUFDWixVQUFVLEVBQUUsMENBQTBDO1lBQ3RELElBQUksRUFBRSx3Q0FBd0M7WUFDOUMsSUFBSSxFQUFFLHdDQUF3QztZQUM5QyxNQUFNLEVBQUUsMENBQTBDO1lBQ2xELE1BQU0sRUFBRSwwQ0FBMEM7U0FDbkQ7UUFDRCxNQUFNLEVBQUU7WUFDTixVQUFVLEVBQUUsbUNBQW1DO1lBQy9DLElBQUksRUFBRSxpQ0FBaUM7WUFDdkMsSUFBSSxFQUFFLGlDQUFpQztZQUN2QyxNQUFNLEVBQUUsbUNBQW1DO1lBQzNDLE1BQU0sRUFBRSxtQ0FBbUM7U0FDNUM7UUFDRCxNQUFNLEVBQUU7WUFDTixVQUFVLEVBQUUsbUNBQW1DO1lBQy9DLElBQUksRUFBRSxpQ0FBaUM7WUFDdkMsSUFBSSxFQUFFLGlDQUFpQztZQUN2QyxNQUFNLEVBQUUsbUNBQW1DO1lBQzNDLE1BQU0sRUFBRSwwQ0FBMEM7U0FDbkQ7UUFDRCxZQUFZLEVBQUU7WUFDWixVQUFVLEVBQUUseUNBQXlDO1lBQ3JELElBQUksRUFBRSx1Q0FBdUM7WUFDN0MsSUFBSSxFQUFFLHVDQUF1QztZQUM3QyxNQUFNLEVBQUUseUNBQXlDO1lBQ2pELE1BQU0sRUFBRSx5Q0FBeUM7U0FDbEQ7UUFDRCx1QkFBdUIsRUFBRTtZQUN2QixVQUFVLEVBQUUscURBQXFEO1lBQ2pFLElBQUksRUFBRSxtREFBbUQ7WUFDekQsSUFBSSxFQUFFLG1EQUFtRDtZQUN6RCxNQUFNLEVBQUUscURBQXFEO1lBQzdELE1BQU0sRUFBRSxxREFBcUQ7U0FDOUQ7S0FDRjtDQUNGLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgY29uc3QgQVhNUGVybWlzc2lvbnNLZXlzID0ge1xuICBEb2N1bWVudE1hbmFnZW1lbnQ6IHtcbiAgICBNYW5hZ2VtZW50OiAnZG9jdW1lbnQtbWFuYWdlbWVudDptYW5hZ2UnLFxuICAgIERvY3VtZW50VHlwZToge1xuICAgICAgTWFuYWdlbWVudDogJ2RvY3VtZW50LW1hbmFnZW1lbnQ6ZG9jdW1lbnQtdHlwZTptYW5hZ2UnLFxuICAgICAgVmlldzogJ2RvY3VtZW50LW1hbmFnZW1lbnQ6ZG9jdW1lbnQtdHlwZTp2aWV3JyxcbiAgICAgIEVkaXQ6ICdkb2N1bWVudC1tYW5hZ2VtZW50OmRvY3VtZW50LXR5cGU6ZWRpdCcsXG4gICAgICBEZWxldGU6ICdkb2N1bWVudC1tYW5hZ2VtZW50OmRvY3VtZW50LXR5cGU6ZGVsZXRlJyxcbiAgICAgIENyZWF0ZTogJ2RvY3VtZW50LW1hbmFnZW1lbnQ6ZG9jdW1lbnQtdHlwZTpjcmVhdGUnLFxuICAgIH0sXG4gICAgRHJpdmVyOiB7XG4gICAgICBNYW5hZ2VtZW50OiAnZG9jdW1lbnQtbWFuYWdlbWVudDpkcml2ZXI6bWFuYWdlJyxcbiAgICAgIFZpZXc6ICdkb2N1bWVudC1tYW5hZ2VtZW50OmRyaXZlcjp2aWV3JyxcbiAgICAgIEVkaXQ6ICdkb2N1bWVudC1tYW5hZ2VtZW50OmRyaXZlcjplZGl0JyxcbiAgICAgIERlbGV0ZTogJ2RvY3VtZW50LW1hbmFnZW1lbnQ6ZHJpdmVyOmRlbGV0ZScsXG4gICAgICBDcmVhdGU6ICdkb2N1bWVudC1tYW5hZ2VtZW50OmRyaXZlcjpjcmVhdGUnLFxuICAgIH0sXG4gICAgUmV2aWV3OiB7XG4gICAgICBNYW5hZ2VtZW50OiAnZG9jdW1lbnQtbWFuYWdlbWVudDpyZXZpZXc6bWFuYWdlJyxcbiAgICAgIFZpZXc6ICdkb2N1bWVudC1tYW5hZ2VtZW50OnJldmlldzp2aWV3JyxcbiAgICAgIEVkaXQ6ICdkb2N1bWVudC1tYW5hZ2VtZW50OnJldmlldzplZGl0JyxcbiAgICAgIERlbGV0ZTogJ2RvY3VtZW50LW1hbmFnZW1lbnQ6cmV2aWV3OmRlbGV0ZScsXG4gICAgICBDcmVhdGU6ICdkb2N1bWVudC1tYW5hZ2VtZW50OmRvY3VtZW50LXR5cGU6Y3JlYXRlJyxcbiAgICB9LFxuICAgIERpc3RyaWJ1dGlvbjoge1xuICAgICAgTWFuYWdlbWVudDogJ2RvY3VtZW50LW1hbmFnZW1lbnQ6ZGlzdHJpYnV0aW9uOm1hbmFnZScsXG4gICAgICBWaWV3OiAnZG9jdW1lbnQtbWFuYWdlbWVudDpkaXN0cmlidXRpb246dmlldycsXG4gICAgICBFZGl0OiAnZG9jdW1lbnQtbWFuYWdlbWVudDpkaXN0cmlidXRpb246ZWRpdCcsXG4gICAgICBEZWxldGU6ICdkb2N1bWVudC1tYW5hZ2VtZW50OmRpc3RyaWJ1dGlvbjpkZWxldGUnLFxuICAgICAgQ3JlYXRlOiAnZG9jdW1lbnQtbWFuYWdlbWVudDpkaXN0cmlidXRpb246Y3JlYXRlJyxcbiAgICB9LFxuICAgIERpc3RyaWJ1dGlvbkludGVyYWN0aW9uOiB7XG4gICAgICBNYW5hZ2VtZW50OiAnZG9jdW1lbnQtbWFuYWdlbWVudDpkaXN0cmlidXRpb24taW50ZXJhY3Rpb246bWFuYWdlJyxcbiAgICAgIFZpZXc6ICdkb2N1bWVudC1tYW5hZ2VtZW50OmRpc3RyaWJ1dGlvbi1pbnRlcmFjdGlvbjp2aWV3JyxcbiAgICAgIEVkaXQ6ICdkb2N1bWVudC1tYW5hZ2VtZW50OmRpc3RyaWJ1dGlvbi1pbnRlcmFjdGlvbjplZGl0JyxcbiAgICAgIERlbGV0ZTogJ2RvY3VtZW50LW1hbmFnZW1lbnQ6ZGlzdHJpYnV0aW9uLWludGVyYWN0aW9uOmRlbGV0ZScsXG4gICAgICBDcmVhdGU6ICdkb2N1bWVudC1tYW5hZ2VtZW50OmRpc3RyaWJ1dGlvbi1pbnRlcmFjdGlvbjpjcmVhdGUnLFxuICAgIH0sXG4gIH0sXG59O1xuIl19","import { AXPSessionService } from '@acorex/platform/auth';\nimport { AXPEntityService } from '@acorex/platform/layout/entity';\nimport { inject } from '@angular/core';\nimport { firstValueFrom } from 'rxjs';\nimport { RootConfig } from './const';\nimport { AXMPermissionsKeys } from './permission.keys';\nexport class AXMMenuProvider {\n constructor() {\n this.entityService = inject(AXPEntityService);\n this.sessionService = inject(AXPSessionService);\n }\n async provide(context) {\n const isAuthorized = await firstValueFrom(this.sessionService.isAuthorized$);\n if (!isAuthorized) {\n return;\n }\n //\n context.addItems([\n {\n priority: 9001,\n text: RootConfig.module.title,\n icon: RootConfig.module.icon,\n data: {\n requiredPermission: [AXMPermissionsKeys.DocumentManagement.Management]\n },\n children: [\n {\n text: RootConfig.entities.documentType.title,\n path: this.entityService.createPath(RootConfig.module.name, RootConfig.entities.documentType.name),\n icon: RootConfig.entities.documentType.icon,\n data: {\n requiredPermission: [AXMPermissionsKeys.DocumentManagement.DocumentType.Management]\n },\n badgeKey: 'badge-1',\n priority: 2,\n },\n {\n text: `t('scope.tenant.title', {scope: \"${RootConfig.config.i18n}\"})`,\n path: `${this.sessionService.application?.name}/drive/tenant`,\n icon: RootConfig.entities.document.icon,\n data: {\n requiredPermission: [AXMPermissionsKeys.DocumentManagement.Driver.Management],\n scope: 'tenant',\n },\n badgeKey: 'badge-2',\n priority: 1,\n },\n {\n text: `t(\"document-review-title\", { scope: \"${RootConfig.config.i18n}\" })`,\n path: this.entityService.createPath(RootConfig.module.name, RootConfig.entities.document.name),\n icon: RootConfig.entities.review.icon,\n data: {\n // requiredPermission: [AXMPermissionsKeys.DocumentManagement.Review.Management]\n },\n badgeKey: 'review-badge',\n priority: 4,\n },\n {\n text: RootConfig.entities.distribution.title,\n path: this.entityService.createPath(RootConfig.module.name, RootConfig.entities.distribution.name),\n icon: RootConfig.entities.review.icon,\n data: {\n // requiredPermission: [AXMPermissionsKeys.DocumentManagement.Review.Management]\n },\n priority: 4,\n },\n ],\n },\n ]);\n //\n context.find('user-profile').addItems([\n {\n name: 'my-notifications',\n text: `t('scope.user.title', {scope: \"${RootConfig.config.i18n}\"})`,\n icon: 'fa-light fa-folder-open',\n path: `${this.sessionService.application?.name}/drive/user`,\n data: {\n scope: 'user',\n requiredPermission: [AXMPermissionsKeys.DocumentManagement.Driver.Management]\n },\n },\n ]);\n }\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVudS5wcm92aWRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbW9kdWxlcy9kb2N1bWVudC1tYW5hZ2VtZW50L3NyYy9saWIvbWVudS5wcm92aWRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUUxRCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUNsRSxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3ZDLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDdEMsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLFNBQVMsQ0FBQztBQUNyQyxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUV2RCxNQUFNLE9BQU8sZUFBZTtJQUE1QjtRQUNVLGtCQUFhLEdBQUcsTUFBTSxDQUFDLGdCQUFnQixDQUFDLENBQUM7UUFDekMsbUJBQWMsR0FBRyxNQUFNLENBQUMsaUJBQWlCLENBQUMsQ0FBQztJQTBFckQsQ0FBQztJQXhFQyxLQUFLLENBQUMsT0FBTyxDQUFDLE9BQStCO1FBQzNDLE1BQU0sWUFBWSxHQUFHLE1BQU0sY0FBYyxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsYUFBYSxDQUFDLENBQUM7UUFDN0UsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDO1lBQ2xCLE9BQU87UUFDVCxDQUFDO1FBQ0QsRUFBRTtRQUNGLE9BQU8sQ0FBQyxRQUFRLENBQUM7WUFDZjtnQkFDRSxRQUFRLEVBQUUsSUFBSTtnQkFDZCxJQUFJLEVBQUUsVUFBVSxDQUFDLE1BQU0sQ0FBQyxLQUFLO2dCQUM3QixJQUFJLEVBQUUsVUFBVSxDQUFDLE1BQU0sQ0FBQyxJQUFJO2dCQUM1QixJQUFJLEVBQUU7b0JBQ0wsa0JBQWtCLEVBQUUsQ0FBQyxrQkFBa0IsQ0FB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IH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9hdXRoJztcbmltcG9ydCB7IEFYUE1lbnVQcm92aWRlciwgQVhQTWVudVByb3ZpZGVyQ29udGV4dCB9IGZyb20gJ0BhY29yZXgvcGxhdGZvcm0vY29tbW9uJztcbmltcG9ydCB7IEFYUEVudGl0eVNlcnZpY2UgfSBmcm9tICdAYWNvcmV4L3BsYXRmb3JtL2xheW91dC9lbnRpdHknO1xuaW1wb3J0IHsgaW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBmaXJzdFZhbHVlRnJvbSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgUm9vdENvbmZpZyB9IGZyb20gJy4vY29uc3QnO1xuaW1wb3J0IHsgQVhNUGVybWlzc2lvbnNLZXlzIH0gZnJvbSAnLi9wZXJtaXNzaW9uLmtleXMnO1xuXG5leHBvcnQgY2xhc3MgQVhNTWVudVByb3ZpZGVyIGltcGxlbWVudHMgQVhQTWVudVByb3ZpZGVyIHtcbiAgcHJpdmF0ZSBlbnRpdHlTZXJ2aWNlID0gaW5qZWN0KEFYUEVudGl0eVNlcnZpY2UpO1xuICBwcml2YXRlIHNlc3Npb25TZXJ2aWNlID0gaW5qZWN0KEFYUFNlc3Npb25TZXJ2aWNlKTtcblxuICBhc3luYyBwcm92aWRlKGNvbnRleHQ6IEFYUE1lbnVQcm92aWRlckNvbnRleHQpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICBjb25zdCBpc0F1dGhvcml6ZWQgPSBhd2FpdCBmaXJzdFZhbHVlRnJvbSh0aGlzLnNlc3Npb25TZXJ2aWNlLmlzQXV0aG9yaXplZCQpO1xuICAgIGlmICghaXNBdXRob3JpemVkKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIC8vXG4gICAgY29udGV4dC5hZGRJdGVtcyhbXG4gICAgICB7XG4gICAgICAgIHByaW9yaXR5OiA5MDAxLFxuICAgICAgICB0ZXh0OiBSb290Q29uZmlnLm1vZHVsZS50aXRsZSxcbiAgICAgICAgaWNvbjogUm9vdENvbmZpZy5tb2R1bGUuaWNvbixcbiAgICAgICAgZGF0YToge1xuICAgICAgICAgcmVxdWlyZWRQZXJtaXNzaW9uOiBbQVhNUGVybWlzc2lvbnNLZXlzLkRvY3VtZW50TWFuYWdlbWVudC5NYW5hZ2VtZW50XVxuICAgICAgICB9LFxuICAgICAgICBjaGlsZHJlbjogW1xuICAgICAgICAgIHtcbiAgICAgICAgICAgIHRleHQ6IFJvb3RDb25maWcuZW50aXRpZXMuZG9jdW1lbnRUeXBlLnRpdGxlLFxuICAgICAgICAgICAgcGF0aDogdGhpcy5lbnRpdHlTZXJ2aWNlLmNyZWF0ZVBhdGgoUm9vdENvbmZpZy5tb2R1bGUubmFtZSwgUm9vdENvbmZpZy5lbnRpdGllcy5kb2N1bWVudFR5cGUubmFtZSksXG4gICAgICAgICAgICBpY29uOiBSb290Q29uZmlnLmVudGl0aWVzLmRvY3VtZW50VHlwZS5pY29uLFxuICAgICAgICAgICAgZGF0YToge1xuICAgICAgICAgICAgICByZXF1aXJlZFBlcm1pc3Npb246IFtBWE1QZXJtaXNzaW9uc0tleXMuRG9jdW1lbnRNYW5hZ2VtZW50LkRvY3VtZW50VHlwZS5NYW5hZ2VtZW50XVxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIGJhZGdlS2V5OiAnYmFkZ2UtMScsXG4gICAgICAgICAgICBwcmlvcml0eTogMixcbiAgICAgICAgICB9LFxuICAgICAgICAgIHtcbiAgICAgICAgICAgIHRleHQ6IGB0KCdzY29wZS50ZW5hbnQudGl0bGUnLCB7c2NvcGU6IFwiJHtSb290Q29uZmlnLmNvbmZpZy5pMThufVwifSlgLFxuICAgICAgICAgICAgcGF0aDogYCR7dGhpcy5zZXNzaW9uU2VydmljZS5hcHBsaWNhdGlvbj8ubmFtZX0vZHJpdmUvdGVuYW50YCxcbiAgICAgICAgICAgIGljb246IFJvb3RDb25maWcuZW50aXRpZXMuZG9jdW1lbnQuaWNvbixcbiAgICAgICAgICAgIGRhdGE6IHtcbiAgICAgICAgICAgICAgcmVxdWlyZWRQZXJtaXNzaW9uOiBbQVhNUGVybWlzc2lvbnNLZXlzLkRvY3VtZW50TWFuYWdlbWVudC5Ecml2ZXIuTWFuYWdlbWVudF0sXG4gICAgICAgICAgICAgIHNjb3BlOiAndGVuYW50JyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBiYWRnZUtleTogJ2JhZGdlLTInLFxuICAgICAgICAgICAgcHJpb3JpdHk6IDEsXG4gICAgICAgICAgfSxcbiAgICAgICAgICB7XG4gICAgICAgICAgICB0ZXh0OiAgYHQoXCJkb2N1bWVudC1yZXZpZXctdGl0bGVcIiwgeyBzY29wZTogXCIke1Jvb3RDb25maWcuY29uZmlnLmkxOG59XCIgfSlgLFxuICAgICAgICAgICAgcGF0aDogdGhpcy5lbnRpdHlTZXJ2aWNlLmNyZWF0ZVBhdGgoUm9vdENvbmZpZy5tb2R1bGUubmFtZSwgUm9vdENvbmZpZy5lbnRpdGllcy5kb2N1bWVudC5uYW1lKSxcbiAgICAgICAgICAgIGljb246IFJvb3RDb25maWcuZW50aXRpZXMucmV2aWV3Lmljb24sXG4gICAgICAgICAgICBkYXRhOiB7XG4gICAgICAgICAgICAvLyAgcmVxdWlyZWRQZXJtaXNzaW9uOiBbQVhNUGVybWlzc2lvbnNLZXlzLkRvY3VtZW50TWFuYWdlbWVudC5SZXZpZXcuTWFuYWdlbWVudF1cbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBiYWRnZUtleSA6ICdyZXZpZXctYmFkZ2UnLFxuICAgICAgICAgICAgcHJpb3JpdHk6IDQsXG4gICAgICAgICAgfSxcbiAgICAgICAgICB7XG4gICAgICAgICAgICB0ZXh0OiAgUm9vdENvbmZpZy5lbnRpdGllcy5kaXN0cmlidXRpb24udGl0bGUsXG4gICAgICAgICAgICBwYXRoOiB0aGlzLmVudGl0eVNlcnZpY2UuY3JlYXRlUGF0aChSb290Q29uZmlnLm1vZHVsZS5uYW1lLCBSb290Q29uZmlnLmVudGl0aWVzLmRpc3RyaWJ1dGlvbi5uYW1lKSxcbiAgICAgICAgICAgIGljb246IFJvb3RDb25maWcuZW50aXRpZXMucmV2aWV3Lmljb24sXG4gICAgICAgICAgICBkYXRhOiB7XG4gICAgICAgICAgICAvLyAgcmVxdWlyZWRQZXJtaXNzaW9uOiBbQVhNUGVybWlzc2lvbnNLZXlzLkRvY3VtZW50TWFuYWdlbWVudC5SZXZpZXcuTWFuYWdlbWVudF1cbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBwcmlvcml0eTogNCxcbiAgICAgICAgICB9LFxuICAgICAgICBdLFxuICAgICAgfSxcbiAgICBdKTtcbiAgICAvL1xuICAgIGNvbnRleHQuZmluZCgndXNlci1wcm9maWxlJykuYWRkSXRlbXMoW1xuICAgICAge1xuICAgICAgICBuYW1lOiAnbXktbm90aWZpY2F0aW9ucycsXG4gICAgICAgIHRleHQ6IGB0KCdzY29wZS51c2VyLnRpdGxlJywge3Njb3BlOiBcIiR7Um9vdENvbmZpZy5jb25maWcuaTE4bn1cIn0pYCxcbiAgICAgICAgaWNvbjogJ2ZhLWxpZ2h0IGZhLWZvbGRlci1vcGVuJyxcbiAgICAgICAgcGF0aDogYCR7dGhpcy5zZXNzaW9uU2VydmljZS5hcHBsaWNhdGlvbj8ubmFtZX0vZHJpdmUvdXNlcmAsXG4gICAgICAgIGRhdGE6IHtcbiAgICAgICAgICBzY29wZTogJ3VzZXInLFxuICAgICAgICAgIHJlcXVpcmVkUGVybWlzc2lvbjogW0FYTVBlcm1pc3Npb25zS2V5cy5Eb2N1bWVudE1hbmFnZW1lbnQuRHJpdmVyLk1hbmFnZW1lbnRdXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgIF0pO1xuICB9XG59XG4iXX0=","import { AXPSearchCommandProvider } from '@acorex/platform/common';\nexport class AXMSearchCommandProvider extends AXPSearchCommandProvider {\n constructor() {\n super(...arguments);\n this.commands = [\n // {\n // group: 'command',\n // title: 'New Form Template',\n // icon: RootConfig.entities.template.icon,\n // description: 'Create a new form template for designing reusable forms.', // Added description\n // commands: {\n // 'create-entity': {\n // entity: `${RootConfig.module.name}.${RootConfig.entities.template.name}`,\n // },\n // },\n // }\n ];\n }\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VhcmNoLWNvbW1hbmQucHJvdmlkZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL21vZHVsZXMvZG9jdW1lbnQtbWFuYWdlbWVudC9zcmMvbGliL3NlYXJjaC1jb21tYW5kLnByb3ZpZGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx3QkFBd0IsRUFBbUIsTUFBTSx5QkFBeUIsQ0FBQztBQUVwRixNQUFNLE9BQU8sd0JBQXlCLFNBQVEsd0JBQXdCO0lBQXRFOztRQUNFLGFBQVEsR0FBc0I7UUFDNUIsSUFBSTtRQUNKLHNCQUFzQjtRQUN0QiwrQkFBK0I7UUFDL0IsNENBQTRDO1FBQzVDLGlHQUFpRztRQUNqRyxlQUFlO1FBQ2Ysd0JBQXdCO1FBQ3hCLGlGQUFpRjtRQUNqRixRQUFRO1FBQ1IsTUFBTTtRQUNOLElBQUk7U0FDTCxDQUFDO0lBQ0osQ0FBQztDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQVhQU2VhcmNoQ29tbWFuZFByb3ZpZGVyLCBBWFBTZWFyY2hSZXN1bHQgfSBmcm9tICdAYWNvcmV4L3BsYXRmb3JtL2NvbW1vbic7XG5cbmV4cG9ydCBjbGFzcyBBWE1TZWFyY2hDb21tYW5kUHJvdmlkZXIgZXh0ZW5kcyBBWFBTZWFyY2hDb21tYW5kUHJvdmlkZXIge1xuICBjb21tYW5kczogQVhQU2VhcmNoUmVzdWx0W10gPSBbXG4gICAgLy8ge1xuICAgIC8vICAgZ3JvdXA6ICdjb21tYW5kJyxcbiAgICAvLyAgdGl0bGU6ICdOZXcgRm9ybSBUZW1wbGF0ZScsXG4gICAgLy8gIGljb246IFJvb3RDb25maWcuZW50aXRpZXMudGVtcGxhdGUuaWNvbixcbiAgICAvLyAgZGVzY3JpcHRpb246ICdDcmVhdGUgYSBuZXcgZm9ybSB0ZW1wbGF0ZSBmb3IgZGVzaWduaW5nIHJldXNhYmxlIGZvcm1zLicsIC8vIEFkZGVkIGRlc2NyaXB0aW9uXG4gICAgLy8gIGNvbW1hbmRzOiB7XG4gICAgLy8gICAgJ2NyZWF0ZS1lbnRpdHknOiB7XG4gICAgLy8gICAgICBlbnRpdHk6IGAke1Jvb3RDb25maWcubW9kdWxlLm5hbWV9LiR7Um9vdENvbmZpZy5lbnRpdGllcy50ZW1wbGF0ZS5uYW1lfWAsXG4gICAgLy8gICAgfSxcbiAgICAvLyAgfSxcbiAgICAvLyB9XG4gIF07XG59XG4iXX0=","export class AXMSettingProvider {\n async provide(context) {\n }\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2V0dGluZ3MucHJvdmlkZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL21vZHVsZXMvZG9jdW1lbnQtbWFuYWdlbWVudC9zcmMvbGliL3NldHRpbmdzLnByb3ZpZGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE1BQU0sT0FBTyxrQkFBa0I7SUFDN0IsS0FBSyxDQUFDLE9BQU8sQ0FBQyxPQUE0QztJQUUxRCxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBWFBTZXR0aW5nRGVmaW5pdGlvblByb3ZpZGVyLCBBWFBTZXR0aW5nRGVmaW5pdGlvblByb3ZpZGVyQ29udGV4dCB9IGZyb20gJ0BhY29yZXgvcGxhdGZvcm0vY29tbW9uJztcblxuZXhwb3J0IGNsYXNzIEFYTVNldHRpbmdQcm92aWRlciBpbXBsZW1lbnRzIEFYUFNldHRpbmdEZWZpbml0aW9uUHJvdmlkZXIge1xuICBhc3luYyBwcm92aWRlKGNvbnRleHQ6IEFYUFNldHRpbmdEZWZpbml0aW9uUHJvdmlkZXJDb250ZXh0KTogUHJvbWlzZTx2b2lkPiB7XG5cbiAgfVxufVxuIl19","import { AXMEntityCrudServiceImpl } from '@acorex/platform/layout/entity';\nimport { Injectable } from '@angular/core';\nimport { RootConfig } from '../../const';\nimport * as i0 from \"@angular/core\";\nexport class AXMDocumentService extends AXMEntityCrudServiceImpl {\n}\nexport class AXMDocumentServiceImpl extends AXMDocumentService {\n constructor() {\n super(`${RootConfig.module.name}.${RootConfig.entities.document.name}`);\n }\n async getPath(_) {\n throw new Error('Not implemented');\n }\n async searchFiles(_searchTerm, _rootFolderId) {\n throw new Error('Not implemented');\n }\n async findMany(ids) {\n const resp = await this.query({\n skip: 0,\n take: ids.length || 1000,\n filter: {\n field: 'id',\n operator: { type: 'in' },\n value: ids,\n },\n });\n return (resp?.items ?? []);\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: AXMDocumentServiceImpl, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }\n static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: AXMDocumentServiceImpl }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: AXMDocumentServiceImpl, decorators: [{\n type: Injectable\n }], ctorParameters: () => [] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG9jdW1lbnQuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbW9kdWxlcy9kb2N1bWVudC1tYW5hZ2VtZW50L3NyYy9saWIvZW50aXRpZXMvZG9jdW1lbnQvZG9jdW1lbnQuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUMxRSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxhQUFhLENBQUM7O0FBSXpDLE1BQU0sT0FBZ0Isa0JBQW1CLFNBQVEsd0JBR2hEO0NBTUE7QUFHRCxNQUFNLE9BQU8sc0JBQXVCLFNBQVEsa0JBQWtCO0lBQzVEO1FBQ0UsS0FBSyxDQUFDLEdBQUcsVUFBVSxDQUFDLE1BQU0sQ0FBQyxJQUFJLElBQUksVUFBVSxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQztJQUMxRSxDQUFDO0lBRVEsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFTO1FBQzlCLE1BQU0sSUFBSSxLQUFLLENBQUMsaUJBQWlCLENBQUMsQ0FBQztJQUNyQyxDQUFDO0lBRVEsS0FBSyxDQUFDLFdBQVcsQ0FDeEIsV0FBbUIsRUFDbkIsYUFBcUI7UUFFckIsTUFBTSxJQUFJLEtBQUssQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO0lBQ3JDLENBQUM7SUFFUSxLQUFLLENBQUMsUUFBUSxDQUFDLEdBQWE7UUFDbkMsTUFBTSxJQUFJLEdBQUcsTUFBTSxJQUFJLENBQUMsS0FBSyxDQUFDO1lBQzVCLElBQUksRUFBRSxDQUFDO1lBQ1AsSUFBSSxFQUFFLEdBQUcsQ0FBQyxNQUFNLElBQUksSUFBSTtZQUN4QixNQUFNLEVBQUU7Z0JBQ04sS0FBSyxFQUFFLElBQUk7Z0JBQ1gsUUFBUSxFQUFFLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRTtnQkFDeEIsS0FBSyxFQUFFLEdBQUc7YUFDWDtTQUNGLENBQUMsQ0FBQztRQUNILE9BQU8sQ0FBQyxJQUFJLEVBQUUsS0FBSyxJQUFJLEVBQUUsQ0FBMEQsQ0FBQztJQUN0RixDQUFDOzhHQTNCVSxzQkFBc0I7a0hBQXRCLHNCQUFzQjs7MkZBQXRCLHNCQUFzQjtrQkFEbEMsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFYTUVudGl0eUNydWRTZXJ2aWNlSW1wbCB9IGZyb20gJ0BhY29yZXgvcGxhdGZvcm0vbGF5b3V0L2VudGl0eSc7XG5pbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBSb290Q29uZmlnIH0gZnJvbSAnLi4vLi4vY29uc3QnO1xuaW1wb3J0IHsgQVhNRG9jdW1lbnRNYW5hZ2VtZW50Rm9sZGVyRW50aXR5TW9kZWwgfSBmcm9tICcuLi9mb2xkZXInO1xuaW1wb3J0IHsgQVhNRG9jdW1lbnRNYW5hZ2VtZW50RG9jdW1lbnRFbnRpdHlNb2RlbCB9IGZyb20gJy4vZG9jdW1lbnQudHlwZXMnO1xuXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgQVhNRG9jdW1lbnRTZXJ2aWNlIGV4dGVuZHMgQVhNRW50aXR5Q3J1ZFNlcnZpY2VJbXBsPFxuICBzdHJpbmcsXG4gIEFYTURvY3VtZW50TWFuYWdlbWVudERvY3VtZW50RW50aXR5TW9kZWxcbj4ge1xuICBhYnN0cmFjdCBnZXRQYXRoKGRvY3VtZW50SWQ6IHN0cmluZywgc3RvcEZvbGRlcklkPzogc3RyaW5nKTogUHJvbWlzZTxBWE1Eb2N1bWVudE1hbmFnZW1lbnRGb2xkZXJFbnRpdHlNb2RlbFtdPjtcblxuICBhYnN0cmFjdCBzZWFyY2hGaWxlcyhzZWFyY2hUZXJtOiBzdHJpbmcsIHJvb3RGb2xkZXJJZDogc3RyaW5nKTogUHJvbWlzZTxBWE1Eb2N1bWVudE1hbmFnZW1lbnREb2N1bWVudEVudGl0eU1vZGVsW10+O1xuXG4gIGFic3RyYWN0IGZpbmRNYW55KGlkczogc3RyaW5nW10pOiBQcm9taXNlPEFYTURvY3VtZW50TWFuYWdlbWVudERvY3VtZW50RW50aXR5TW9kZWxbXT47XG59XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBBWE1Eb2N1bWVudFNlcnZpY2VJbXBsIGV4dGVuZHMgQVhNRG9jdW1lbnRTZXJ2aWNlIHtcbiAgY29uc3RydWN0b3IoKSB7XG4gICAgc3VwZXIoYCR7Um9vdENvbmZpZy5tb2R1bGUubmFtZX0uJHtSb290Q29uZmlnLmVudGl0aWVzLmRvY3VtZW50Lm5hbWV9YCk7XG4gIH1cblxuICBvdmVycmlkZSBhc3luYyBnZXRQYXRoKF86IHN0cmluZyk6IFByb21pc2U8QVhNRG9jdW1lbnRNYW5hZ2VtZW50Rm9sZGVyRW50aXR5TW9kZWxbXT4ge1xuICAgIHRocm93IG5ldyBFcnJvcignTm90IGltcGxlbWVudGVkJyk7XG4gIH1cblxuICBvdmVycmlkZSBhc3luYyBzZWFyY2hGaWxlcyhcbiAgICBfc2VhcmNoVGVybTogc3RyaW5nLFxuICAgIF9yb290Rm9sZGVySWQ6IHN0cmluZ1xuICApOiBQcm9taXNlPEFYTURvY3VtZW50TWFuYWdlbWVudERvY3VtZW50RW50aXR5TW9kZWxbXT4ge1xuICAgIHRocm93IG5ldyBFcnJvcignTm90IGltcGxlbWVudGVkJyk7XG4gIH1cblxuICBvdmVycmlkZSBhc3luYyBmaW5kTWFueShpZHM6IHN0cmluZ1tdKTogUHJvbWlzZTxBWE1Eb2N1bWVudE1hbmFnZW1lbnREb2N1bWVudEVudGl0eU1vZGVsW10+IHtcbiAgICBjb25zdCByZXNwID0gYXdhaXQgdGhpcy5xdWVyeSh7XG4gICAgICBza2lwOiAwLFxuICAgICAgdGFrZTogaWRzLmxlbmd0aCB8fCAxMDAwLFxuICAgICAgZmlsdGVyOiB7XG4gICAgICAgIGZpZWxkOiAnaWQnLFxuICAgICAgICBvcGVyYXRvcjogeyB0eXBlOiAnaW4nIH0sXG4gICAgICAgIHZhbHVlOiBpZHMsXG4gICAgICB9LFxuICAgIH0pO1xuICAgIHJldHVybiAocmVzcD8uaXRlbXMgPz8gW10pIGFzIHVua25vd24gYXMgQVhNRG9jdW1lbnRNYW5hZ2VtZW50RG9jdW1lbnRFbnRpdHlNb2RlbFtdO1xuICB9XG59XG4iXX0=","import { AXPEntityCommandScope, AXPEntityQueryType, createAllQueryView, createQueryView, } from '@acorex/platform/common';\nimport { AXPWidgetsCatalog } from '@acorex/platform/layout/builder';\nimport { RootConfig } from '../../const';\nimport { AXMDocumentService } from './document.service';\nexport async function documentFactory(injector) {\n const dataService = injector.get(AXMDocumentService);\n const i18n = RootConfig.config.i18n;\n const entityDef = {\n module: RootConfig.module.name,\n name: RootConfig.entities.document.name,\n source: '',\n title: RootConfig.entities.review.title,\n formats: {\n individual: RootConfig.entities.review.title,\n plural: RootConfig.entities.review.titlePlural,\n searchResult: {\n title: '{{ title }}',\n description: RootConfig.module.title,\n },\n },\n relatedEntities: [\n {\n entity: `${RootConfig.module.name}.${RootConfig.entities.review.name}`,\n columns: ['reviewerId', 'status', 'comment', 'reviewedAt', 'modifiedAt', 'modifiedBy'],\n conditions: [\n {\n name: 'documentId',\n operator: {\n type: 'equal',\n },\n value: '{{context.eval(\"id\")}}',\n },\n ],\n // hidden: '{{context.eval(\"toggle\")}}',\n actions: [],\n },\n // {\n // entity: `${RootConfig.module.name}.${RootConfig.entities.distribution.name}`,\n // columns: ['version'],\n // conditions: [\n // {\n // name: 'documentId',\n // operator: {\n // type: 'equal',\n // },\n // value: '{{context.eval(\"id\")}}',\n // },\n // ],\n // // hidden: '{{context.eval(\"toggle\")}}',\n // actions: [],\n // },\n ],\n groups: [\n {\n id: 'section',\n title: RootConfig.entities.document.title,\n },\n ],\n properties: [\n {\n name: 'name',\n title: 't(\"name\", { scope: \"common\" })',\n groupId: 'section',\n options: {\n sort: {\n enabled: true,\n },\n filter: {\n inline: {\n enabled: true,\n },\n advance: {\n enabled: true,\n },\n },\n },\n schema: {\n dataType: 'string',\n readonly: true,\n interface: {\n type: AXPWidgetsCatalog.text,\n options: {\n placeholder: 't(\"name\", { scope: \"common\" })',\n },\n },\n },\n validations: [\n {\n rule: 'required',\n },\n ],\n },\n {\n name: 'type',\n title: 't(\"type\", { scope: \"common\" })',\n groupId: 'section',\n schema: {\n dataType: 'string',\n readonly: true,\n interface: {\n type: AXPWidgetsCatalog.lookup,\n options: {\n entity: `${RootConfig.module.name}.${RootConfig.entities.documentType.name}`,\n expose: 'type',\n },\n },\n },\n validations: [\n {\n rule: 'required',\n },\n ],\n },\n {\n name: 'metaData',\n title: `t(\"metaData\", { scope: \"${i18n}\" })`,\n groupId: 'section',\n schema: {\n dataType: 'string',\n readonly: true,\n interface: {\n type: AXPWidgetsCatalog.metaData,\n options: {\n listMeta: ` {{context.eval(\"type.meta\")}} `,\n },\n },\n },\n validations: [\n {\n rule: 'required',\n },\n ],\n },\n {\n name: 'fileId',\n title: `t(\"file\", { scope: \"${i18n}\" })`,\n groupId: 'section',\n schema: {\n dataType: 'string',\n readonly: true,\n interface: {\n type: AXPWidgetsCatalog.fileUploader,\n options: {\n maxFileSize: ` {{context.eval(\"type.maxSize\")}} `,\n multiple: ` {{context.eval(\"type.multiple\")}} `,\n // accept: ` {{context.eval(\"type.multiple\")}} `,\n },\n },\n },\n validations: [\n {\n rule: 'required',\n },\n ],\n },\n {\n name: 'version',\n title: `t(\"version\", { scope: \"${i18n}\" })`,\n groupId: 'section',\n schema: {\n dataType: 'number',\n readonly: true,\n interface: {\n type: AXPWidgetsCatalog.number,\n options: {},\n },\n },\n },\n {\n name: 'size',\n title: `t(\"size\", { scope: \"${i18n}\" })`,\n schema: {\n dataType: 'number',\n readonly: true,\n interface: {\n type: AXPWidgetsCatalog.number,\n options: {},\n },\n },\n },\n {\n name: 'status',\n title: `t(\"status\", { scope: \"${i18n}\" })`,\n groupId: 'section',\n options: {\n sort: {\n enabled: true,\n },\n filter: {\n inline: {\n enabled: true,\n },\n advance: {\n enabled: true,\n },\n },\n },\n schema: {\n dataType: 'string',\n readonly: true,\n interface: {\n type: AXPWidgetsCatalog.text,\n options: {\n content: `{{ context.eval('status') }}`,\n },\n },\n },\n },\n {\n name: 'documentReview',\n title: `t(\"documentReview\", { scope: \"${i18n}\" })`,\n schema: {\n dataType: 'string',\n readonly: true,\n interface: {\n type: AXPWidgetsCatalog.text,\n options: {\n content: `{{ context.eval('documentReview') }}`,\n },\n },\n },\n },\n {\n name: 'documentReviewReviewer',\n title: `t(\"documentReview\", { scope: \"${i18n}\" })`,\n schema: {\n dataType: 'string',\n readonly: true,\n interface: {\n type: AXPWidgetsCatalog.text,\n options: {\n content: `{{ context.eval('documentReviewReviewer') }}`,\n },\n },\n },\n },\n {\n name: 'documentReviewComment',\n title: `t(\"documentReview\", { scope: \"${i18n}\" })`,\n schema: {\n dataType: 'string',\n readonly: true,\n interface: {\n type: AXPWidgetsCatalog.richText,\n options: {\n content: `{{ context.eval('documentReviewComment') }}`,\n },\n },\n },\n },\n {\n name: 'documentReviewStatus',\n title: `t(\"documentReview\", { scope: \"${i18n}\" })`,\n schema: {\n defaultValue: '{{context.eval(\"documentReview.reviewStatus\") == \"Approve\"}}',\n dataType: 'string',\n readonly: true,\n interface: {\n type: AXPWidgetsCatalog.toggle,\n options: {\n content: `{{ context.eval('documentReviewComment') }}`,\n },\n },\n },\n },\n ],\n columns: [\n { name: 'name' },\n { name: 'status' },\n { name: 'version' },\n { name: 'fileId' },\n {\n name: 'documentReviewReviewer',\n title: `t(\"reviewer\", { scope: \"${i18n}\" })`,\n options: {\n dataPath: 'documentReview.reviewer.title',\n },\n },\n {\n name: 'documentReviewComment',\n title: `t(\"comment\", { scope: \"${i18n}\" })`,\n options: {\n dataPath: 'documentReview.comment',\n },\n },\n {\n name: 'documentReviewStatus',\n title: `t(\"approve\", { scope: \"${i18n}\" })`,\n options: {\n dataPath: 'documentReview.reviewStatus',\n },\n },\n ],\n commands: {\n create: {\n execute: async (data) => {\n const res = await dataService.insertOne(data);\n return { id: res };\n },\n },\n delete: {\n execute: async (id) => {\n return await dataService.deleteOne(id);\n },\n },\n update: {\n execute: async (data) => {\n return await dataService.updateOne(data.id, data);\n },\n },\n },\n queries: {\n byKey: {\n execute: async (id) => {\n const x = await dataService.getOne(id);\n console.log(x);\n return x;\n },\n type: AXPEntityQueryType.Single,\n },\n list: {\n execute: async (e) => {\n const filter = e.filter;\n // Base filter for requiresReview\n const baseFilters = [\n {\n field: 'documentType.requiresReview',\n operator: { type: 'equal' },\n value: true,\n },\n ];\n // Check if e.filter has filters array with items\n const hasAdditionalFilters = filter?.filters && Array.isArray(filter.filters) && filter.filters.length > 0;\n // Combine filters if additional filters exist\n const allFilters = hasAdditionalFilters\n ? [...baseFilters, ...filter.filters]\n : baseFilters;\n const x = await dataService.query({\n skip: e.skip,\n take: e.take,\n filter: {\n logic: 'and',\n filters: allFilters,\n },\n });\n console.log(x);\n return x;\n },\n type: AXPEntityQueryType.List,\n },\n },\n interfaces: {\n master: {\n create: {\n sections: [\n {\n id: 'section',\n },\n ],\n properties: [\n {\n name: 'name',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n },\n },\n },\n },\n {\n name: 'type',\n layout: {\n positions: {\n lg: {\n colSpan: 12,\n },\n },\n },\n },\n {\n name: 'metaData',\n layout: {\n positions: {\n lg: {\n colSpan: 12,\n },\n },\n },\n },\n {\n name: 'fileId',\n layout: {\n positions: {\n lg: {\n colSpan: 12,\n },\n },\n },\n },\n ],\n },\n // update: {\n // sections: [\n // {\n // id: 'section',\n // },\n // ],\n // properties: [\n // {\n // name: 'name',\n // layout: {\n // positions: {\n // lg: {\n // colSpan: 6,\n // },\n // },\n // },\n // },\n // {\n // name: 'type',\n // layout: {\n // positions: {\n // lg: {\n // colSpan: 12,\n // },\n // },\n // },\n // },\n // {\n // name: 'metaData',\n // layout: {\n // positions: {\n // lg: {\n // colSpan: 12,\n // },\n // },\n // },\n // },\n // {\n // name: 'file',\n // layout: {\n // positions: {\n // lg: {\n // colSpan: 12,\n // },\n // },\n // },\n // },\n // ],\n // },\n single: {\n title: '{{title}}',\n sections: [\n {\n id: 'section',\n layout: {\n positions: {\n lg: {\n colSpan: 12,\n },\n },\n },\n },\n ],\n properties: [\n {\n name: 'name',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n },\n },\n },\n },\n {\n name: 'type',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n },\n },\n },\n },\n {\n name: 'metaData',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n },\n },\n },\n },\n // {\n // name: 'fileId',\n // layout: {\n // positions: {\n // lg: {\n // colSpan: 12,\n // },\n // },\n // },\n // },\n // {\n // name: 'file',\n // layout: {\n // positions: {\n // lg: {\n // colSpan: 12,\n // },\n // },\n // },\n // },\n {\n name: 'status',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n },\n },\n },\n },\n {\n name: 'version',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n },\n },\n },\n },\n ],\n actions: [\n {\n title: `t(\"document-review.send-review.title\", { scope: \"${i18n}\" })`,\n command: {\n name: 'send-to-review',\n options: {\n id: '{{context.eval(\"id\")}}',\n title: '{{context.eval(\"title\")}}',\n },\n },\n priority: 'primary',\n type: 'sent',\n scope: AXPEntityCommandScope.TypeLevel,\n disabled: '{{context.eval(\"status\") != \"Draft\"}}',\n },\n {\n title: `t(\"document-review.submit-review.title\", { scope: \"${i18n}\" })`,\n command: {\n name: 'submit-review',\n options: {\n id: '{{context.eval(\"reviewRecordId\")}}',\n // reviewedAt : '{{ variables.execute(\"now\") }}',\n decoration: {\n header: {\n title: '{{ context.eval(\"title\") + \" - version: \" + context.eval(\"version\") }}',\n },\n },\n },\n },\n priority: 'primary',\n type: 'review',\n scope: AXPEntityCommandScope.TypeLevel,\n disabled: '{{context.eval(\"status\") != \"PendingReview\"}}',\n },\n {\n title: `t(\"distributed\", { scope: \"${i18n}\" })`,\n command: {\n name: 'distributed',\n options: {\n id: '{{context.eval(\"id\")}}',\n title: '{{context.eval(\"title\")}}',\n },\n },\n priority: 'primary',\n type: 'review',\n scope: AXPEntityCommandScope.TypeLevel,\n disabled: '{{context.eval(\"status\") != \"Reviewed\" && context.eval(\"status\") != \"Completed\"}}',\n },\n ],\n },\n list: {\n actions: [\n {\n title: 't(\"detail\", { scope: \"common\" })',\n command: 'open-entity',\n priority: 'secondary',\n type: 'view',\n default: true,\n scope: AXPEntityCommandScope.Individual,\n },\n {\n title: `t(\"document-review.send-review.title\", { scope: \"${i18n}\" })`,\n icon: 'fa-light fa-shield-check',\n command: {\n name: 'send-to-review',\n options: {\n id: '{{context.eval(\"id\")}}',\n title: '{{context.eval(\"title\")}}',\n },\n },\n priority: 'secondary',\n type: 'sent',\n scope: AXPEntityCommandScope.Individual,\n disabled: '{{context.eval(\"status\") != \"Draft\"}}',\n },\n {\n title: `t(\"document-review.submit-review.title\", { scope: \"${i18n}\" })`,\n icon: 'fa-light fa-ballot-check',\n command: {\n name: 'submit-review',\n options: {\n id: '{{context.eval(\"reviewRecordId\")}}',\n // reviewedAt : '{{ variables.execute(\"now\") }}',\n decoration: {\n header: {\n title: '{{ context.eval(\"title\") + \" - version: \" + context.eval(\"version\") }}',\n },\n },\n },\n },\n priority: 'secondary',\n type: 'review',\n scope: AXPEntityCommandScope.Individual,\n disabled: '{{context.eval(\"status\") != \"PendingReview\"}}',\n },\n {\n title: `t(\"distributed\", { scope: \"${i18n}\" })`,\n icon: 'fa-light fa-chart-network',\n command: {\n name: 'distributed',\n options: {\n id: '{{context.eval(\"id\")}}',\n title: '{{context.eval(\"title\")}}',\n },\n },\n priority: 'secondary',\n type: 'review',\n scope: AXPEntityCommandScope.Individual,\n disabled: '{{context.eval(\"status\") != \"Reviewed\" && context.eval(\"status\") != \"Completed\"}}',\n },\n ],\n views: [\n createAllQueryView({ sorts: [{ name: 'name', dir: 'asc' }] }),\n createQueryView('Draft', `t(\"draft\", { scope: \"${i18n}\" })`, true, {\n conditions: [\n {\n name: 'status',\n operator: {\n type: 'equal',\n },\n value: 'Draft',\n },\n ],\n }),\n createQueryView('PendingReview', `t(\"pending\", { scope: \"${i18n}\" })`, true, {\n conditions: [\n {\n name: 'status',\n operator: {\n type: 'equal',\n },\n value: 'PendingReview',\n },\n ],\n }),\n createQueryView('Reviewed', `t(\"reviewed\", { scope: \"${i18n}\" })`, true, {\n conditions: [\n {\n name: 'status',\n operator: {\n type: 'equal',\n },\n value: 'Reviewed',\n },\n ],\n }),\n ],\n },\n },\n },\n };\n return entityDef;\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG9jdW1lbnQuZW50aXR5LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tb2R1bGVzL2RvY3VtZW50LW1hbmFnZW1lbnQvc3JjL2xpYi9lbnRpdGllcy9kb2N1bWVudC9kb2N1bWVudC5lbnRpdHkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUVMLHFCQUFxQixFQUNyQixrQkFBa0IsRUFDbEIsa0JBQWtCLEVBQ2xCLGVBQWUsR0FDaEIsTUFBTSx5QkFBeUIsQ0FBQztBQUNqQyxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUVwRSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBRXhELE1BQU0sQ0FBQyxLQUFLLFVBQVUsZUFBZSxDQUFDLFFBQWtCO0lBQ3RELE1BQU0sV0FBVyxHQUFHLFFBQVEsQ0FBQyxHQUFHLENBQUMsa0JBQWtCLENBQUMsQ0FBQztJQUNyRCxNQUFNLElBQUksR0FBRyxVQUFVLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQztJQUVwQyxNQUFNLFNBQVMsR0FBYztRQUMzQixNQUFNLEVBQUUsVUFBVSxDQUFDLE1BQU0sQ0FBQyxJQUFJO1FBQzlCLElBQUksRUFBRSxVQUFVLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxJQUFJO1FBQ3ZDLE1BQU0sRUFBRSxFQUFFO1FBQ1YsS0FBSyxFQUFFLFVBQVUsQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLEtBQUs7UUFDdkMsT0FBTyxFQUFFO1lBQ1AsVUFBVSxFQUFFLFVBQVUsQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLEtBQUs7WUFDNUMsTUFBTSxFQUFFLFVBQVUsQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLFdBQVc7WUFDOUMsWUFBWSxFQUFFO2dCQUNaLEtBQUssRUFBRSxhQUFhO2dC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aUNBQ3ZCOzZCQUNGO3lCQUNGLENBQUM7d0JBQ0YsZUFBZSxDQUFDLFVBQVUsRUFBRSwyQkFBMkIsSUFBSSxNQUFNLEVBQUUsSUFBSSxFQUFFOzRCQUN2RSxVQUFVLEVBQUU7Z0NBQ1Y7b0NBQ0UsSUFBSSxFQUFFLFFBQVE7b0NBQ2QsUUFBUSxFQUFFO3dDQUNSLElBQUksRUFBRSxPQUFPO3FDQUNkO29DQUNELEtBQUssRUFBRSxVQUFVO2lDQUNsQjs2QkFDRjt5QkFDRixDQUFDO3FCQUNIO2lCQUNGO2FBQ0Y7U0FDRjtLQUNGLENBQUM7SUFFRixPQUFPLFNBQVMsQ0FBQztBQUNuQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQVhEYXRhU291cmNlRmlsdGVyT3B0aW9uIH0gZnJvbSAnQGFjb3JleC9jZGsvY29tbW9uJztcbmltcG9ydCB7XG4gIEFYUEVudGl0eSxcbiAgQVhQRW50aXR5Q29tbWFuZFNjb3BlLFxuICBBWFBFbnRpdHlRdWVyeVR5cGUsXG4gIGNyZWF0ZUFsbFF1ZXJ5VmlldyxcbiAgY3JlYXRlUXVlcnlWaWV3LFxufSBmcm9tICdAYWNvcmV4L3BsYXRmb3JtL2NvbW1vbic7XG5pbXBvcnQgeyBBWFBXaWRnZXRzQ2F0YWxvZyB9IGZyb20gJ0BhY29yZXgvcGxhdGZvcm0vbGF5b3V0L2J1aWxkZXInO1xuaW1wb3J0IHsgSW5qZWN0b3IgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFJvb3RDb25maWcgfSBmcm9tICcuLi8uLi9jb25zdCc7XG5pbXBvcnQgeyBBWE1Eb2N1bWVudFNlcnZpY2UgfSBmcm9tICcuL2RvY3VtZW50LnNlcnZpY2UnO1xuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gZG9jdW1lbnRGYWN0b3J5KGluamVjdG9yOiBJbmplY3Rvcik6IFByb21pc2U8QVhQRW50aXR5IHwgbnVsbD4ge1xuICBjb25zdCBkYXRhU2VydmljZSA9IGluamVjdG9yLmdldChBWE1Eb2N1bWVudFNlcnZpY2UpO1xuICBjb25zdCBpMThuID0gUm9vdENvbmZpZy5jb25maWcuaTE4bjtcblxuICBjb25zdCBlbnRpdHlEZWY6IEFYUEVudGl0eSA9IHtcbiAgICBtb2R1bGU6IFJvb3RDb25maWcubW9kdWxlLm5hbWUsXG4gICAgbmFtZTogUm9vdENvbmZpZy5lbnRpdGllcy5kb2N1bWVudC5uYW1lLFxuICAgIHNvdXJjZTogJycsXG4gICAgdGl0bGU6IFJvb3RDb25maWcuZW50aXRpZXMucmV2aWV3LnRpdGxlLFxuICAgIGZvcm1hdHM6IHtcbiAgICAgIGluZGl2aWR1YWw6IFJvb3RDb25maWcuZW50aXRpZXMucmV2aWV3LnRpdGxlLFxuICAgICAgcGx1cmFsOiBSb290Q29uZmlnLmVudGl0aWVzLnJldmlldy50aXRsZVBsdXJhbCxcbiAgICAgIHNlYXJjaFJlc3VsdDoge1xuICAgICAgICB0aXRsZTogJ3t7IHRpdGxlIH19JyxcbiAgICAgICAgZGVzY3JpcHRpb246IFJvb3RDb25maWcubW9kdWxlLnRpdGxlLFxuICAgICAgfSxcbiAgICB9LFxuICAgIHJlbGF0ZWRFbnRpdGllczogW1xuICAgICAge1xuICAgICAgICBlbnRpdHk6IGAke1Jvb3RDb25maWcubW9kdWxlLm5hbWV9LiR7Um9vdENvbmZpZy5lbnRpdGllcy5yZXZpZXcubmFtZX1gLFxuICAgICAgICBjb2x1bW5zOiBbJ3Jldmlld2VySWQnLCAnc3RhdHVzJywgJ2NvbW1lbnQnLCAncmV2aWV3ZWRBdCcsICdtb2RpZmllZEF0JywgJ21vZGlmaWVkQnknXSxcbiAgICAgICAgY29uZGl0aW9uczogW1xuICAgICAgICAgIHtcbiAgICAgICAgICAgIG5hbWU6ICdkb2N1bWVudElkJyxcbiAgICAgICAgICAgIG9wZXJhdG9yOiB7XG4gICAgICAgICAgICAgIHR5cGU6ICdlcXVhbCcsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgdmFsdWU6ICd7e2NvbnRleHQuZXZhbChcImlkXCIpfX0nLFxuICAgICAgICAgIH0sXG4gICAgICAgIF0sXG4gICAgICAgIC8vIGhpZGRlbjogJ3t7Y29udGV4dC5ldmFsKFwidG9nZ2xlXCIpfX0nLFxuICAgICAgICBhY3Rpb25zOiBbXSxcbiAgICAgIH0sXG4gICAgICAvLyB7XG4gICAgICAvLyAgIGVudGl0eTogYCR7Um9vdENvbmZpZy5tb2R1bGUubmFtZX0uJHtSb290Q29uZmlnLmVudGl0aWVzLmRpc3RyaWJ1dGlvbi5uYW1lfWAsXG4gICAgICAvLyAgIGNvbHVtbnM6IFsndmVyc2lvbiddLFxuICAgICAgLy8gICBjb25kaXRpb25zOiBbXG4gICAgICAvLyAgICAge1xuICAgICAgLy8gICAgICAgbmFtZTogJ2RvY3VtZW50SWQnLFxuICAgICAgLy8gICAgICAgb3BlcmF0b3I6IHtcbiAgICAgIC8vICAgICAgICAgdHlwZTogJ2VxdWFsJyxcbiAgICAgIC8vICAgICAgIH0sXG4gICAgICAvLyAgICAgICB2YWx1ZTogJ3t7Y29udGV4dC5ldmFsKFwiaWRcIil9fScsXG4gICAgICAvLyAgICAgfSxcbiAgICAgIC8vICAgXSxcbiAgICAgIC8vICAgLy8gaGlkZGVuOiAne3tjb250ZXh0LmV2YWwoXCJ0b2dnbGVcIil9fScsXG4gICAgICAvLyAgIGFjdGlvbnM6IFtdLFxuICAgICAgLy8gfSxcbiAgICBdLFxuICAgIGdyb3VwczogW1xuICAgICAge1xuICAgICAgICBpZDogJ3NlY3Rpb24nLFxuICAgICAgICB0aXRsZTogUm9vdENvbmZpZy5lbnRpdGllcy5kb2N1bWVudC50aXRsZSxcbiAgICAgIH0sXG4gICAgXSxcbiAgICBwcm9wZXJ0aWVzOiBbXG4gICAgICB7XG4gICAgICAgIG5hbWU6ICduYW1lJyxcbiAgICAgICAgdGl0bGU6ICd0KFwibmFtZVwiLCB7IHNjb3BlOiBcImNvbW1vblwiIH0pJyxcbiAgICAgICAgZ3JvdXBJZDogJ3NlY3Rpb24nLFxuICAgICAgICBvcHRpb25zOiB7XG4gICAgICAgICAgc29ydDoge1xuICAgICAgICAgICAgZW5hYmxlZDogdHJ1ZSxcbiAgICAgICAgICB9LFxuICAgICAgICAgIGZpbHRlcjoge1xuICAgICAgICAgICAgaW5saW5lOiB7XG4gICAgICAgICAgICAgIGVuYWJsZWQ6IHRydWUsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgYWR2YW5jZToge1xuICAgICAgICAgICAgICBlbmFibGVkOiB0cnVlLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgICBzY2hlbWE6IHtcbiAgICAgICAgICBkYXRhVHlwZTogJ3N0cmluZycsXG4gICAgICAgICAgcmVhZG9ubHk6IHRydWUsXG4gICAgICAgICAgaW50ZXJmYWNlOiB7XG4gICAgICAgICAgICB0eXBlOiBBWFBXaWRnZXRzQ2F0YWxvZy50ZXh0LFxuICAgICAgICAgICAgb3B0aW9uczoge1xuICAgICAgICAgICAgICBwbGFjZWhvbGRlcjogJ3QoXCJuYW1lXCIsIHsgc2NvcGU6IFwiY29tbW9uXCIgfSknLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgICB2YWxpZGF0aW9uczogW1xuICAgICAgICAgIHtcbiAgICAgICAgICAgIHJ1bGU6ICdyZXF1aXJlZCcsXG4gICAgICAgICAgfSxcbiAgICAgICAgXSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIG5hbWU6ICd0eXBlJyxcbiAgICAgICAgdGl0bGU6ICd0KFwidHlwZVwiLCB7IHNjb3BlOiBcImNvbW1vblwiIH0pJyxcbiAgICAgICAgZ3JvdXBJZDogJ3NlY3Rpb24nLFxuICAgICAgICBzY2hlbWE6IHtcbiAgICAgICAgICBkYXRhVHlwZTogJ3N0cmluZycsXG4gICAgICAgICAgcmVhZG9ubHk6IHRydWUsXG4gICAgICAgICAgaW50ZXJmYWNlOiB7XG4gICAgICAgICAgICB0eXBlOiBBWFBXaWRnZXRzQ2F0YWxvZy5sb29rdXAsXG4gICAgICAgICAgICBvcHRpb25zOiB7XG4gICAgICAgICAgICAgIGVudGl0eTogYCR7Um9vdENvbmZpZy5tb2R1bGUubmFtZX0uJHtSb290Q29uZmlnLmVudGl0aWVzLmRvY3VtZW50VHlwZS5uYW1lfWAsXG4gICAgICAgICAgICAgIGV4cG9zZTogJ3R5cGUnLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgICB2YWxpZGF0aW9uczogW1xuICAgICAgICAgIHtcbiAgICAgICAgICAgIHJ1bGU6ICdyZXF1aXJlZCcsXG4gICAgICAgICAgfSxcbiAgICAgICAgXSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIG5hbWU6ICdtZXRhRGF0YScsXG4gICAgICAgIHRpdGxlOiBgdChcIm1ldGFEYXRhXCIsIHsgc2NvcGU6IFwiJHtpMThufVwiIH0pYCxcbiAgICAgICAgZ3JvdXBJZDogJ3NlY3Rpb24nLFxuICAgICAgICBzY2hlbWE6IHtcbiAgICAgICAgICBkYXRhVHlwZTogJ3N0cmluZycsXG4gICAgICAgICAgcmVhZG9ubHk6IHRydWUsXG4gICAgICAgICAgaW50ZXJmYWNlOiB7XG4gICAgICAgICAgICB0eXBlOiBBWFBXaWRnZXRzQ2F0YWxvZy5tZXRhRGF0YSxcbiAgICAgICAgICAgIG9wdGlvbnM6IHtcbiAgICAgICAgICAgICAgbGlzdE1ldGE6IGAge3tjb250ZXh0LmV2YWwoXCJ0eXBlLm1ldGFcIil9fSBgLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgICB2YWxpZGF0aW9uczogW1xuICAgICAgICAgIHtcbiAgICAgICAgICAgIHJ1bGU6ICdyZXF1aXJlZCcsXG4gICAgICAgICAgfSxcbiAgICAgICAgXSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIG5hbWU6ICdmaWxlSWQnLFxuICAgICAgICB0aXRsZTogYHQoXCJmaWxlXCIsIHsgc2NvcGU6IFwiJHtpMThufVwiIH0pYCxcbiAgICAgICAgZ3JvdXBJZDogJ3NlY3Rpb24nLFxuICAgICAgICBzY2hlbWE6IHtcbiAgICAgICAgICBkYXRhVHlwZTogJ3N0cmluZycsXG4gICAgICAgICAgcmVhZG9ubHk6IHRydWUsXG4gICAgICAgICAgaW50ZXJmYWNlOiB7XG4gICAgICAgICAgICB0eXBlOiBBWFBXaWRnZXRzQ2F0YWxvZy5maWxlVXBsb2FkZXIsXG4gICAgICAgICAgICBvcHRpb25zOiB7XG4gICAgICAgICAgICAgIG1heEZpbGVTaXplOiBgIHt7Y29udGV4dC5ldmFsKFwidHlwZS5tYXhTaXplXCIpfX0gYCxcbiAgICAgICAgICAgICAgbXVsdGlwbGU6IGAge3tjb250ZXh0LmV2YWwoXCJ0eXBlLm11bHRpcGxlXCIpfX0gYCxcbiAgICAgICAgICAgICAgLy8gIGFjY2VwdDogYCB7e2NvbnRleHQuZXZhbChcInR5cGUubXVsdGlwbGVcIil9fSBgLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgICB2YWxpZGF0aW9uczogW1xuICAgICAgICAgIHtcbiAgICAgICAgICAgIHJ1bGU6ICdyZXF1aXJlZCcsXG4gICAgICAgICAgfSxcbiAgICAgICAgXSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIG5hbWU6ICd2ZXJzaW9uJyxcbiAgICAgICAgdGl0bGU6IGB0KFwidmVyc2lvblwiLCB7IHNjb3BlOiBcIiR7aTE4bn1cIiB9KWAsXG4gICAgICAgIGdyb3VwSWQ6ICdzZWN0aW9uJyxcbiAgICAgICAgc2NoZW1hOiB7XG4gICAgICAgICAgZGF0YVR5cGU6ICdudW1iZXInLFxuICAgICAgICAgIHJlYWRvbmx5OiB0cnVlLFxuICAgICAgICAgIGludGVyZmFjZToge1xuICAgICAgICAgICAgdHlwZTogQVhQV2lkZ2V0c0NhdGFsb2cubnVtYmVyLFxuICAgICAgICAgICAgb3B0aW9uczoge30sXG4gICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIG5hbWU6ICdzaXplJyxcbiAgICAgICAgdGl0bGU6IGB0KFwic2l6ZVwiLCB7IHNjb3BlOiBcIiR7aTE4bn1cIiB9KWAsXG4gICAgICAgIHNjaGVtYToge1xuICAgICAgICAgIGRhdGFUeXBlOiAnbnVtYmVyJyxcbiAgICAgICAgICByZWFkb25seTogdHJ1ZSxcbiAgICAgICAgICBpbnRlcmZhY2U6IHtcbiAgICAgICAgICAgIHR5cGU6IEFYUFdpZGdldHNDYXRhbG9nLm51bWJlcixcbiAgICAgICAgICAgIG9wdGlvbnM6IHt9LFxuICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBuYW1lOiAnc3RhdHVzJyxcbiAgICAgICAgdGl0bGU6IGB0KFwic3RhdHVzXCIsIHsgc2NvcGU6IFwiJHtpMThufVwiIH0pYCxcbiAgICAgICAgZ3JvdXBJZDogJ3NlY3Rpb24nLFxuICAgICAgICBvcHRpb25zOiB7XG4gICAgICAgICAgc29ydDoge1xuICAgICAgICAgICAgZW5hYmxlZDogdHJ1ZSxcbiAgICAgICAgICB9LFxuICAgICAgICAgIGZpbHRlcjoge1xuICAgICAgICAgICAgaW5saW5lOiB7XG4gICAgICAgICAgICAgIGVuYWJsZWQ6IHRydWUsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgYWR2YW5jZToge1xuICAgICAgICAgICAgICBlbmFibGVkOiB0cnVlLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgICBzY2hlbWE6IHtcbiAgICAgICAgICBkYXRhVHlwZTogJ3N0cmluZycsXG4gICAgICAgICAgcmVhZG9ubHk6IHRydWUsXG4gICAgICAgICAgaW50ZXJmYWNlOiB7XG4gICAgICAgICAgICB0eXBlOiBBWFBXaWRnZXRzQ2F0YWxvZy50ZXh0LFxuICAgICAgICAgICAgb3B0aW9uczoge1xuICAgICAgICAgICAgICBjb250ZW50OiBge3sgY29udGV4dC5ldmFsKCdzdGF0dXMnKSB9fWAsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBuYW1lOiAnZG9jdW1lbnRSZXZpZXcnLFxuICAgICAgICB0aXRsZTogYHQoXCJkb2N1bWVudFJldmlld1wiLCB7IHNjb3BlOiBcIiR7aTE4bn1cIiB9KWAsXG4gICAgICAgIHNjaGVtYToge1xuICAgICAgICAgIGRhdGFUeXBlOiAnc3RyaW5nJyxcbiAgICAgICAgICByZWFkb25seTogdHJ1ZSxcbiAgICAgICAgICBpbnRlcmZhY2U6IHtcbiAgICAgICAgICAgIHR5cGU6IEFYUFdpZGdldHNDYXRhbG9nLnRleHQsXG4gICAgICAgICAgICBvcHRpb25zOiB7XG4gICAgICAgICAgICAgIGNvbnRlbnQ6IGB7eyBjb250ZXh0LmV2YWwoJ2RvY3VtZW50UmV2aWV3JykgfX1gLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgbmFtZTogJ2RvY3VtZW50UmV2aWV3UmV2aWV3ZXInLFxuICAgICAgICB0aXRsZTogYHQoXCJkb2N1bWVudFJldmlld1wiLCB7IHNjb3BlOiBcIiR7aTE4bn1cIiB9KWAsXG4gICAgICAgIHNjaGVtYToge1xuICAgICAgICAgIGRhdGFUeXBlOiAnc3RyaW5nJyxcbiAgICAgICAgICByZWFkb25seTogdHJ1ZSxcbiAgICAgICAgICBpbnRlcmZhY2U6IHtcbiAgICAgICAgICAgIHR5cGU6IEFYUFdpZGdldHNDYXRhbG9nLnRleHQsXG4gICAgICAgICAgICBvcHRpb25zOiB7XG4gICAgICAgICAgICAgIGNvbnRlbnQ6IGB7eyBjb250ZXh0LmV2YWwoJ2RvY3VtZW50UmV2aWV3UmV2aWV3ZXInKSB9fWAsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBuYW1lOiAnZG9jdW1lbnRSZXZpZXdDb21tZW50JyxcbiAgICAgICAgdGl0bGU6IGB0KFwiZG9jdW1lbnRSZXZpZXdcIiwgeyBzY29wZTogXCIke2kxOG59XCIgfSlgLFxuICAgICAgICBzY2hlbWE6IHtcbiAgICAgICAgICBkYXRhVHlwZTogJ3N0cmluZycsXG4gICAgICAgICAgcmVhZG9ubHk6IHRydWUsXG4gICAgICAgICAgaW50ZXJmYWNlOiB7XG4gICAgICAgICAgICB0eXBlOiBBWFBXaWRnZXRzQ2F0YWxvZy5yaWNoVGV4dCxcbiAgICAgICAgICAgIG9wdGlvbnM6IHtcbiAgICAgICAgICAgICAgY29udGVudDogYHt7IGNvbnRleHQuZXZhbCgnZG9jdW1lbnRSZXZpZXdDb21tZW50JykgfX1gLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgbmFtZTogJ2RvY3VtZW50UmV2aWV3U3RhdHVzJyxcbiAgICAgICAgdGl0bGU6IGB0KFwiZG9jdW1lbnRSZXZpZXdcIiwgeyBzY29wZTogXCIke2kxOG59XCIgfSlgLFxuICAgICAgICBzY2hlbWE6IHtcbiAgICAgICAgICBkZWZhdWx0VmFsdWU6ICd7e2NvbnRleHQuZXZhbChcImRvY3VtZW50UmV2aWV3LnJldmlld1N0YXR1c1wiKSA9PSBcIkFwcHJvdmVcIn19JyxcbiAgICAgICAgICBkYXRhVHlwZTogJ3N0cmluZycsXG4gICAgICAgICAgcmVhZG9ubHk6IHRydWUsXG4gICAgICAgICAgaW50ZXJmYWNlOiB7XG4gICAgICAgICAgICB0eXBlOiBBWFBXaWRnZXRzQ2F0YWxvZy50b2dnbGUsXG4gICAgICAgICAgICBvcHRpb25zOiB7XG4gICAgICAgICAgICAgIGNvbnRlbnQ6IGB7eyBjb250ZXh0LmV2YWwoJ2RvY3VtZW50UmV2aWV3Q29tbWVudCcpIH19YCxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgXSxcbiAgICBjb2x1bW5zOiBbXG4gICAgICB7IG5hbWU6ICduYW1lJyB9LFxuICAgICAgeyBuYW1lOiAnc3RhdHVzJyB9LFxuICAgICAgeyBuYW1lOiAndmVyc2lvbicgfSxcbiAgICAgIHsgbmFtZTogJ2ZpbGVJZCcgfSxcbiAgICAgIHtcbiAgICAgICAgbmFtZTogJ2RvY3VtZW50UmV2aWV3UmV2aWV3ZXInLFxuICAgICAgICB0aXRsZTogYHQoXCJyZXZpZXdlclwiLCB7IHNjb3BlOiBcIiR7aTE4bn1cIiB9KWAsXG4gICAgICAgIG9wdGlvbnM6IHtcbiAgICAgICAgICBkYXRhUGF0aDogJ2RvY3VtZW50UmV2aWV3LnJldmlld2VyLnRpdGxlJyxcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIG5hbWU6ICdkb2N1bWVudFJldmlld0NvbW1lbnQnLFxuICAgICAgICB0aXRsZTogYHQoXCJjb21tZW50XCIsIHsgc2NvcGU6IFwiJHtpMThufVwiIH0pYCxcbiAgICAgICAgb3B0aW9uczoge1xuICAgICAgICAgIGRhdGFQYXRoOiAnZG9jdW1lbnRSZXZpZXcuY29tbWVudCcsXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBuYW1lOiAnZG9jdW1lbnRSZXZpZXdTdGF0dXMnLFxuICAgICAgICB0aXRsZTogYHQoXCJhcHByb3ZlXCIsIHsgc2NvcGU6IFwiJHtpMThufVwiIH0pYCxcbiAgICAgICAgb3B0aW9uczoge1xuICAgICAgICAgIGRhdGFQYXRoOiAnZG9jdW1lbnRSZXZpZXcucmV2aWV3U3RhdHVzJyxcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgXSxcbiAgICBjb21tYW5kczoge1xuICAgICAgY3JlYXRlOiB7XG4gICAgICAgIGV4ZWN1dGU6IGFzeW5jIChkYXRhOiBhbnkpID0+IHtcbiAgICAgICAgICBjb25zdCByZXMgPSBhd2FpdCBkYXRhU2VydmljZS5pbnNlcnRPbmUoZGF0YSk7XG4gICAgICAgICAgcmV0dXJuIHsgaWQ6IHJlcyB9O1xuICAgICAgICB9LFxuICAgICAgfSxcbiAgICAgIGRlbGV0ZToge1xuICAgICAgICBleGVjdXRlOiBhc3luYyAoaWQ6IGFueSkgPT4ge1xuICAgICAgICAgIHJldHVybiBhd2FpdCBkYXRhU2VydmljZS5kZWxldGVPbmUoaWQpO1xuICAgICAgICB9LFxuICAgICAgfSxcbiAgICAgIHVwZGF0ZToge1xuICAgICAgICBleGVjdXRlOiBhc3luYyAoZGF0YTogYW55KSA9PiB7XG4gICAgICAgICAgcmV0dXJuIGF3YWl0IGRhdGFTZXJ2aWNlLnVwZGF0ZU9uZShkYXRhLmlkLCBkYXRhKTtcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgfSxcbiAgICBxdWVyaWVzOiB7XG4gICAgICBieUtleToge1xuICAgICAgICBleGVjdXRlOiBhc3luYyAoaWQ6IHN0cmluZykgPT4ge1xuICAgICAgICAgIGNvbnN0IHggPSBhd2FpdCBkYXRhU2VydmljZS5nZXRPbmUoaWQpO1xuICAgICAgICAgIGNvbnNvbGUubG9nKHgpO1xuICAgICAgICAgIHJldHVybiB4O1xuICAgICAgICB9LFxuICAgICAgICB0eXBlOiBBWFBFbnRpdHlRdWVyeVR5cGUuU2luZ2xlLFxuICAgICAgfSxcbiAgICAgIGxpc3Q6IHtcbiAgICAgICAgZXhlY3V0ZTogYXN5bmMgKGU6IGFueSkgPT4ge1xuICAgICAgICAgIGNvbnN0IGZpbHRlciA9IGUuZmlsdGVyIGFzIEFYRGF0YVNvdXJjZUZpbHRlck9wdGlvbjtcblxuICAgICAgICAgIC8vIEJhc2UgZmlsdGVyIGZvciByZXF1aXJlc1Jldmlld1xuICAgICAgICAgIGNvbnN0IGJhc2VGaWx0ZXJzOiBBWERhdGFTb3VyY2VGaWx0ZXJPcHRpb25bXSA9IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgZmllbGQ6ICdkb2N1bWVudFR5cGUucmVxdWlyZXNSZXZpZXcnLFxuICAgICAgICAgICAgICBvcGVyYXRvcjogeyB0eXBlOiAnZXF1YWwnIGFzIGNvbnN0IH0sXG4gICAgICAgICAgICAgIHZhbHVlOiB0cnVlLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICBdO1xuXG4gICAgICAgICAgLy8gQ2hlY2sgaWYgZS5maWx0ZXIgaGFzIGZpbHRlcnMgYXJyYXkgd2l0aCBpdGVtc1xuICAgICAgICAgIGNvbnN0IGhhc0FkZGl0aW9uYWxGaWx0ZXJzID0gZmlsdGVyPy5maWx0ZXJzICYmIEFycmF5LmlzQXJyYXkoZmlsdGVyLmZpbHRlcnMpICYmIGZpbHRlci5maWx0ZXJzLmxlbmd0aCA+IDA7XG5cbiAgICAgICAgICAvLyBDb21iaW5lIGZpbHRlcnMgaWYgYWRkaXRpb25hbCBmaWx0ZXJzIGV4aXN0XG4gICAgICAgICAgY29uc3QgYWxsRmlsdGVycyA9IGhhc0FkZGl0aW9uYWxGaWx0ZXJzXG4gICAgICAgICAgICA/IFsuLi5iYXNlRmlsdGVycywgLi4uKGZpbHRlci5maWx0ZXJzIGFzIEFYRGF0YVNvdXJjZUZpbHRlck9wdGlvbltdKV1cbiAgICAgICAgICAgIDogYmFzZUZpbHRlcnM7XG5cbiAgICAgICAgICBjb25zdCB4ID0gYXdhaXQgZGF0YVNlcnZpY2UucXVlcnkoe1xuICAgICAgICAgICAgc2tpcDogZS5za2lwLFxuICAgICAgICAgICAgdGFrZTogZS50YWtlLFxuICAgICAgICAgICAgZmlsdGVyOiB7XG4gICAgICAgICAgICAgIGxvZ2ljOiAnYW5kJyxcbiAgICAgICAgICAgICAgZmlsdGVyczogYWxsRmlsdGVycyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgfSk7XG4gICAgICAgICAgY29uc29sZS5sb2coeCk7XG5cbiAgICAgICAgICByZXR1cm4geDtcbiAgICAgICAgfSxcbiAgICAgICAgdHlwZTogQVhQRW50aXR5UXVlcnlUeXBlLkxpc3QsXG4gICAgICB9LFxuICAgIH0sXG4gICAgaW50ZXJmYWNlczoge1xuICAgICAgbWFzdGVyOiB7XG4gICAgICAgIGNyZWF0ZToge1xuICAgICAgICAgIHNlY3Rpb25zOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIGlkOiAnc2VjdGlvbicsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIF0sXG4gICAgICAgICAgcHJvcGVydGllczogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBuYW1lOiAnbmFtZScsXG4gICAgICAgICAgICAgIGxheW91dDoge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uczoge1xuICAgICAgICAgICAgICAgICAgbGc6IHtcbiAgICAgICAgICAgICAgICAgICAgY29sU3BhbjogNixcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIG5hbWU6ICd0eXBlJyxcbiAgICAgICAgICAgICAgbGF5b3V0OiB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb25zOiB7XG4gICAgICAgICAgICAgICAgICBsZzoge1xuICAgICAgICAgICAgICAgICAgICBjb2xTcGFuOiAxMixcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIG5hbWU6ICdtZXRhRGF0YScsXG4gICAgICAgICAgICAgIGxheW91dDoge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uczoge1xuICAgICAgICAgICAgICAgICAgbGc6IHtcbiAgICAgICAgICAgICAgICAgICAgY29sU3BhbjogMTIsXG4gICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBuYW1lOiAnZmlsZUlkJyxcbiAgICAgICAgICAgICAgbGF5b3V0OiB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb25zOiB7XG4gICAgICAgICAgICAgICAgICBsZzoge1xuICAgICAgICAgICAgICAgICAgICBjb2xTcGFuOiAxMixcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgXSxcbiAgICAgICAgfSxcbiAgICAgICAgLy8gdXBkYXRlOiB7XG4gICAgICAgIC8vICAgc2VjdGlvbnM6IFtcbiAgICAgICAgLy8gICAgIHtcbiAgICAgICAgLy8gICAgICAgaWQ6ICdzZWN0aW9uJyxcbiAgICAgICAgLy8gICAgIH0sXG4gICAgICAgIC8vICAgXSxcbiAgICAgICAgLy8gICBwcm9wZXJ0aWVzOiBbXG4gICAgICAgIC8vICAgICB7XG4gICAgICAgIC8vICAgICAgIG5hbWU6ICduYW1lJyxcbiAgICAgICAgLy8gICAgICAgbGF5b3V0OiB7XG4gICAgICAgIC8vICAgICAgICAgcG9zaXRpb25zOiB7XG4gICAgICAgIC8vICAgICAgICAgICBsZzoge1xuICAgICAgICAvLyAgICAgICAgICAgICBjb2xTcGFuOiA2LFxuICAgICAgICAvLyAgICAgICAgICAgfSxcbiAgICAgICAgLy8gICAgICAgICB9LFxuICAgICAgICAvLyAgICAgICB9LFxuICAgICAgICAvLyAgICAgfSxcbiAgICAgICAgLy8gICAgIHtcbiAgICAgICAgLy8gICAgICAgbmFtZTogJ3R5cGUnLFxuICAgICAgICAvLyAgICAgICBsYXlvdXQ6IHtcbiAgICAgICAgLy8gICAgICAgICBwb3NpdGlvbnM6IHtcbiAgICAgICAgLy8gICAgICAgICAgIGxnOiB7XG4gICAgICAgIC8vICAgICAgICAgICAgIGNvbFNwYW46IDEyLFxuICAgICAgICAvLyAgICAgICAgICAgfSxcbiAgICAgICAgLy8gICAgICAgICB9LFxuICAgICAgICAvLyAgICAgICB9LFxuICAgICAgICAvLyAgICAgfSxcbiAgICAgICAgLy8gICAgIHtcbiAgICAgICAgLy8gICAgICAgbmFtZTogJ21ldGFEYXRhJyxcbiAgICAgICAgLy8gICAgICAgbGF5b3V0OiB7XG4gICAgICAgIC8vICAgICAgICAgcG9zaXRpb25zOiB7XG4gICAgICAgIC8vICAgICAgICAgICBsZzoge1xuICAgICAgICAvLyAgICAgICAgICAgICBjb2xTcGFuOiAxMixcbiAgICAgICAgLy8gICAgICAgICAgIH0sXG4gICAgICAgIC8vICAgICAgICAgfSxcbiAgICAgICAgLy8gICAgICAgfSxcbiAgICAgICAgLy8gICAgIH0sXG4gICAgICAgIC8vICAgICB7XG4gICAgICAgIC8vICAgICAgIG5hbWU6ICdmaWxlJyxcbiAgICAgICAgLy8gICAgICAgbGF5b3V0OiB7XG4gICAgICAgIC8vICAgICAgICAgcG9zaXRpb25zOiB7XG4gICAgICAgIC8vICAgICAgICAgICBsZzoge1xuICAgICAgICAvLyAgICAgICAgICAgICBjb2xTcGFuOiAxMixcbiAgICAgICAgLy8gICAgICAgICAgIH0sXG4gICAgICAgIC8vICAgICAgICAgfSxcbiAgICAgICAgLy8gICAgICAgfSxcbiAgICAgICAgLy8gICAgIH0sXG4gICAgICAgIC8vICAgXSxcbiAgICAgICAgLy8gfSxcbiAgICAgICAgc2luZ2xlOiB7XG4gICAgICAgICAgdGl0bGU6ICd7e3RpdGxlfX0nLFxuICAgICAgICAgIHNlY3Rpb25zOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIGlkOiAnc2VjdGlvbicsXG4gICAgICAgICAgICAgIGxheW91dDoge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uczoge1xuICAgICAgICAgICAgICAgICAgbGc6IHtcbiAgICAgICAgICAgICAgICAgICAgY29sU3BhbjogMTIsXG4gICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIF0sXG4gICAgICAgICAgcHJvcGVydGllczogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBuYW1lOiAnbmFtZScsXG4gICAgICAgICAgICAgIGxheW91dDoge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uczoge1xuICAgICAgICAgICAgICAgICAgbGc6IHtcbiAgICAgICAgICAgICAgICAgICAgY29sU3BhbjogNixcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIG5hbWU6ICd0eXBlJyxcbiAgICAgICAgICAgICAgbGF5b3V0OiB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb25zOiB7XG4gICAgICAgICAgICAgICAgICBsZzoge1xuICAgICAgICAgICAgICAgICAgICBjb2xTcGFuOiA2LFxuICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgbmFtZTogJ21ldGFEYXRhJyxcbiAgICAgICAgICAgICAgbGF5b3V0OiB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb25zOiB7XG4gICAgICAgICAgICAgICAgICBsZzoge1xuICAgICAgICAgICAgICAgICAgICBjb2xTcGFuOiA2LFxuICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIC8vIHtcbiAgICAgICAgICAgIC8vICAgbmFtZTogJ2ZpbGVJZCcsXG4gICAgICAgICAgICAvLyAgIGxheW91dDoge1xuICAgICAgICAgICAgLy8gICAgIHBvc2l0aW9uczoge1xuICAgICAgICAgICAgLy8gICAgICAgbGc6IHtcbiAgICAgICAgICAgIC8vICAgICAgICAgY29sU3BhbjogMTIsXG4gICAgICAgICAgICAvLyAgICAgICB9LFxuICAgICAgICAgICAgLy8gICAgIH0sXG4gICAgICAgICAgICAvLyAgIH0sXG4gICAgICAgICAgICAvLyB9LFxuICAgICAgICAgICAgLy8ge1xuICAgICAgICAgICAgLy8gICBuYW1lOiAnZmlsZScsXG4gICAgICAgICAgICAvLyAgIGxheW91dDoge1xuICAgICAgICAgICAgLy8gICAgIHBvc2l0aW9uczoge1xuICAgICAgICAgICAgLy8gICAgICAgbGc6IHtcbiAgICAgICAgICAgIC8vICAgICAgICAgY29sU3BhbjogMTIsXG4gICAgICAgICAgICAvLyAgICAgICB9LFxuICAgICAgICAgICAgLy8gICAgIH0sXG4gICAgICAgICAgICAvLyAgIH0sXG4gICAgICAgICAgICAvLyB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBuYW1lOiAnc3RhdHVzJyxcbiAgICAgICAgICAgICAgbGF5b3V0OiB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb25zOiB7XG4gICAgICAgICAgICAgICAgICBsZzoge1xuICAgICAgICAgICAgICAgICAgICBjb2xTcGFuOiA2LFxuICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgbmFtZTogJ3ZlcnNpb24nLFxuICAgICAgICAgICAgICBsYXlvdXQ6IHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbnM6IHtcbiAgICAgICAgICAgICAgICAgIGxnOiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbFNwYW46IDYsXG4gICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIF0sXG4gICAgICAgICAgYWN0aW9uczogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICB0aXRsZTogYHQoXCJkb2N1bWVudC1yZXZpZXcuc2VuZC1yZXZpZXcudGl0bGVcIiwgeyBzY29wZTogXCIke2kxOG59XCIgfSlgLFxuICAgICAgICAgICAgICBjb21tYW5kOiB7XG4gICAgICAgICAgICAgICAgbmFtZTogJ3NlbmQtdG8tcmV2aWV3JyxcbiAgICAgICAgICAgICAgICBvcHRpb25zOiB7XG4gICAgICAgICAgICAgICAgICBpZDogJ3t7Y29udGV4dC5ldmFsKFwiaWRcIil9fScsXG4gICAgICAgICAgICAgICAgICB0aXRsZTogJ3t7Y29udGV4dC5ldmFsKFwidGl0bGVcIil9fScsXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgcHJpb3JpdHk6ICdwcmltYXJ5JyxcbiAgICAgICAgICAgICAgdHlwZTogJ3NlbnQnLFxuICAgICAgICAgICAgICBzY29wZTogQVhQRW50aXR5Q29tbWFuZFNjb3BlLlR5cGVMZXZlbCxcbiAgICAgICAgICAgICAgZGlzYWJsZWQ6ICd7e2NvbnRleHQuZXZhbChcInN0YXR1c1wiKSAhPSBcIkRyYWZ0XCJ9fScsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICB0aXRsZTogYHQoXCJkb2N1bWVudC1yZXZpZXcuc3VibWl0LXJldmlldy50aXRsZVwiLCB7IHNjb3BlOiBcIiR7aTE4bn1cIiB9KWAsXG4gICAgICAgICAgICAgIGNvbW1hbmQ6IHtcbiAgICAgICAgICAgICAgICBuYW1lOiAnc3VibWl0LXJldmlldycsXG4gICAgICAgICAgICAgICAgb3B0aW9uczoge1xuICAgICAgICAgICAgICAgICAgaWQ6ICd7e2NvbnRleHQuZXZhbChcInJldmlld1JlY29yZElkXCIpfX0nLFxuICAgICAgICAgICAgICAgICAgLy8gcmV2aWV3ZWRBdCA6ICd7eyB2YXJpYWJsZXMuZXhlY3V0ZShcIm5vd1wiKSB9fScsXG4gICAgICAgICAgICAgICAgICBkZWNvcmF0aW9uOiB7XG4gICAgICAgICAgICAgICAgICAgIGhlYWRlcjoge1xuICAgICAgICAgICAgICAgICAgICAgIHRpdGxlOiAne3sgY29udGV4dC5ldmFsKFwidGl0bGVcIikgKyBcIiAtIHZlcnNpb246IFwiICsgY29udGV4dC5ldmFsKFwidmVyc2lvblwiKSB9fScsXG4gICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIHByaW9yaXR5OiAncHJpbWFyeScsXG4gICAgICAgICAgICAgIHR5cGU6ICdyZXZpZXcnLFxuICAgICAgICAgICAgICBzY29wZTogQVhQRW50aXR5Q29tbWFuZFNjb3BlLlR5cGVMZXZlbCxcbiAgICAgICAgICAgICAgZGlzYWJsZWQ6ICd7e2NvbnRleHQuZXZhbChcInN0YXR1c1wiKSAhPSBcIlBlbmRpbmdSZXZpZXdcIn19JyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIHRpdGxlOiBgdChcImRpc3RyaWJ1dGVkXCIsIHsgc2NvcGU6IFwiJHtpMThufVwiIH0pYCxcbiAgICAgICAgICAgICAgY29tbWFuZDoge1xuICAgICAgICAgICAgICAgIG5hbWU6ICdkaXN0cmlidXRlZCcsXG4gICAgICAgICAgICAgICAgb3B0aW9uczoge1xuICAgICAgICAgICAgICAgICAgaWQ6ICd7e2NvbnRleHQuZXZhbChcImlkXCIpfX0nLFxuICAgICAgICAgICAgICAgICAgdGl0bGU6ICd7e2NvbnRleHQuZXZhbChcInRpdGxlXCIpfX0nLFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIHByaW9yaXR5OiAncHJpbWFyeScsXG4gICAgICAgICAgICAgIHR5cGU6ICdyZXZpZXcnLFxuICAgICAgICAgICAgICBzY29wZTogQVhQRW50aXR5Q29tbWFuZFNjb3BlLlR5cGVMZXZlbCxcbiAgICAgICAgICAgICAgZGlzYWJsZWQ6ICd7e2NvbnRleHQuZXZhbChcInN0YXR1c1wiKSAhPSBcIlJldmlld2VkXCIgJiYgY29udGV4dC5ldmFsKFwic3RhdHVzXCIpICE9IFwiQ29tcGxldGVkXCJ9fScsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIF0sXG4gICAgICAgIH0sXG4gICAgICAgIGxpc3Q6IHtcbiAgICAgICAgICBhY3Rpb25zOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIHRpdGxlOiAndChcImRldGFpbFwiLCB7IHNjb3BlOiBcImNvbW1vblwiIH0pJyxcbiAgICAgICAgICAgICAgY29tbWFuZDogJ29wZW4tZW50aXR5JyxcbiAgICAgICAgICAgICAgcHJpb3JpdHk6ICdzZWNvbmRhcnknLFxuICAgICAgICAgICAgICB0eXBlOiAndmlldycsXG4gICAgICAgICAgICAgIGRlZmF1bHQ6IHRydWUsXG4gICAgICAgICAgICAgIHNjb3BlOiBBWFBFbnRpdHlDb21tYW5kU2NvcGUuSW5kaXZpZHVhbCxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIHRpdGxlOiBgdChcImRvY3VtZW50LXJldmlldy5zZW5kLXJldmlldy50aXRsZVwiLCB7IHNjb3BlOiBcIiR7aTE4bn1cIiB9KWAsXG4gICAgICAgICAgICAgIGljb246ICdmYS1saWdodCBmYS1zaGllbGQtY2hlY2snLFxuICAgICAgICAgICAgICBjb21tYW5kOiB7XG4gICAgICAgICAgICAgICAgbmFtZTogJ3NlbmQtdG8tcmV2aWV3JyxcbiAgICAgICAgICAgICAgICBvcHRpb25zOiB7XG4gICAgICAgICAgICAgICAgICBpZDogJ3t7Y29udGV4dC5ldmFsKFwiaWRcIil9fScsXG4gICAgICAgICAgICAgICAgICB0aXRsZTogJ3t7Y29udGV4dC5ldmFsKFwidGl0bGVcIil9fScsXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgcHJpb3JpdHk6ICdzZWNvbmRhcnknLFxuICAgICAgICAgICAgICB0eXBlOiAnc2VudCcsXG4gICAgICAgICAgICAgIHNjb3BlOiBBWFBFbnRpdHlDb21tYW5kU2NvcGUuSW5kaXZpZHVhbCxcbiAgICAgICAgICAgICAgZGlzYWJsZWQ6ICd7e2NvbnRleHQuZXZhbChcInN0YXR1c1wiKSAhPSBcIkRyYWZ0XCJ9fScsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICB0aXRsZTogYHQoXCJkb2N1bWVudC1yZXZpZXcuc3VibWl0LXJldmlldy50aXRsZVwiLCB7IHNjb3BlOiBcIiR7aTE4bn1cIiB9KWAsXG4gICAgICAgICAgICAgIGljb246ICdmYS1saWdodCBmYS1iYWxsb3QtY2hlY2snLFxuICAgICAgICAgICAgICBjb21tYW5kOiB7XG4gICAgICAgICAgICAgICAgbmFtZTogJ3N1Ym1pdC1yZXZpZXcnLFxuICAgICAgICAgICAgICAgIG9wdGlvbnM6IHtcbiAgICAgICAgICAgICAgICAgIGlkOiAne3tjb250ZXh0LmV2YWwoXCJyZXZpZXdSZWNvcmRJZFwiKX19JyxcbiAgICAgICAgICAgICAgICAgIC8vIHJldmlld2VkQXQgOiAne3sgdmFyaWFibGVzLmV4ZWN1dGUoXCJub3dcIikgfX0nLFxuICAgICAgICAgICAgICAgICAgZGVjb3JhdGlvbjoge1xuICAgICAgICAgICAgICAgICAgICBoZWFkZXI6IHtcbiAgICAgICAgICAgICAgICAgICAgICB0aXRsZTogJ3t7IGNvbnRleHQuZXZhbChcInRpdGxlXCIpICsgXCIgLSB2ZXJzaW9uOiBcIiArIGNvbnRleHQuZXZhbChcInZlcnNpb25cIikgfX0nLFxuICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICBwcmlvcml0eTogJ3NlY29uZGFyeScsXG4gICAgICAgICAgICAgIHR5cGU6ICdyZXZpZXcnLFxuICAgICAgICAgICAgICBzY29wZTogQVhQRW50aXR5Q29tbWFuZFNjb3BlLkluZGl2aWR1YWwsXG4gICAgICAgICAgICAgIGRpc2FibGVkOiAne3tjb250ZXh0LmV2YWwoXCJzdGF0dXNcIikgIT0gXCJQZW5kaW5nUmV2aWV3XCJ9fScsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICB0aXRsZTogYHQoXCJkaXN0cmlidXRlZFwiLCB7IHNjb3BlOiBcIiR7aTE4bn1cIiB9KWAsXG4gICAgICAgICAgICAgIGljb246ICdmYS1saWdodCBmYS1jaGFydC1uZXR3b3JrJyxcbiAgICAgICAgICAgICAgY29tbWFuZDoge1xuICAgICAgICAgICAgICAgIG5hbWU6ICdkaXN0cmlidXRlZCcsXG4gICAgICAgICAgICAgICAgb3B0aW9uczoge1xuICAgICAgICAgICAgICAgICAgaWQ6ICd7e2NvbnRleHQuZXZhbChcImlkXCIpfX0nLFxuICAgICAgICAgICAgICAgICAgdGl0bGU6ICd7e2NvbnRleHQuZXZhbChcInRpdGxlXCIpfX0nLFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIHByaW9yaXR5OiAnc2Vjb25kYXJ5JyxcbiAgICAgICAgICAgICAgdHlwZTogJ3JldmlldycsXG4gICAgICAgICAgICAgIHNjb3BlOiBBWFBFbnRpdHlDb21tYW5kU2NvcGUuSW5kaXZpZHVhbCxcbiAgICAgICAgICAgICAgZGlzYWJsZWQ6ICd7e2NvbnRleHQuZXZhbChcInN0YXR1c1wiKSAhPSBcIlJldmlld2VkXCIgJiYgY29udGV4dC5ldmFsKFwic3RhdHVzXCIpICE9IFwiQ29tcGxldGVkXCJ9fScsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIF0sXG4gICAgICAgICAgdmlld3M6IFtcbiAgICAgICAgICAgIGNyZWF0ZUFsbFF1ZXJ5Vmlldyh7IHNvcnRzOiBbeyBuYW1lOiAnbmFtZScsIGRpcjogJ2FzYycgfV0gfSksXG4gICAgICAgICAgICBjcmVhdGVRdWVyeVZpZXcoJ0RyYWZ0JywgYHQoXCJkcmFmdFwiLCB7IHNjb3BlOiBcIiR7aTE4bn1cIiB9KWAsIHRydWUsIHtcbiAgICAgICAgICAgICAgY29uZGl0aW9uczogW1xuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgIG5hbWU6ICdzdGF0dXMnLFxuICAgICAgICAgICAgICAgICAgb3BlcmF0b3I6IHtcbiAgICAgICAgICAgICAgICAgICAgdHlwZTogJ2VxdWFsJyxcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICB2YWx1ZTogJ0RyYWZ0JyxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgfSksXG4gICAgICAgICAgICBjcmVhdGVRdWVyeVZpZXcoJ1BlbmRpbmdSZXZpZXcnLCBgdChcInBlbmRpbmdcIiwgeyBzY29wZTogXCIke2kxOG59XCIgfSlgLCB0cnVlLCB7XG4gICAgICAgICAgICAgIGNvbmRpdGlvbnM6IFtcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICBuYW1lOiAnc3RhdHVzJyxcbiAgICAgICAgICAgICAgICAgIG9wZXJhdG9yOiB7XG4gICAgICAgICAgICAgICAgICAgIHR5cGU6ICdlcXVhbCcsXG4gICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgdmFsdWU6ICdQZW5kaW5nUmV2aWV3JyxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgfSksXG4gICAgICAgICAgICBjcmVhdGVRdWVyeVZpZXcoJ1Jldmlld2VkJywgYHQoXCJyZXZpZXdlZFwiLCB7IHNjb3BlOiBcIiR7aTE4bn1cIiB9KWAsIHRydWUsIHtcbiAgICAgICAgICAgICAgY29uZGl0aW9uczogW1xuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgIG5hbWU6ICdzdGF0dXMnLFxuICAgICAgICAgICAgICAgICAgb3BlcmF0b3I6IHtcbiAgICAgICAgICAgICAgICAgICAgdHlwZTogJ2VxdWFsJyxcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICB2YWx1ZTogJ1Jldmlld2VkJyxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgfSksXG4gICAgICAgICAgXSxcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgfSxcbiAgfTtcblxuICByZXR1cm4gZW50aXR5RGVmO1xufVxuIl19","import { NgModule } from '@angular/core';\nimport { AXMDocumentService, AXMDocumentServiceImpl } from './document.service';\nimport * as i0 from \"@angular/core\";\nexport class AXMDocumentManagementDocumentEntityModule {\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: AXMDocumentManagementDocumentEntityModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }\n static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: \"14.0.0\", version: \"20.1.8\", ngImport: i0, type: AXMDocumentManagementDocumentEntityModule }); }\n static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: AXMDocumentManagementDocumentEntityModule, providers: [\n {\n provide: AXMDocumentService,\n useClass: AXMDocumentServiceImpl,\n },\n ] }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: AXMDocumentManagementDocumentEntityModule, decorators: [{\n type: NgModule,\n args: [{\n imports: [],\n exports: [],\n declarations: [],\n providers: [\n {\n provide: AXMDocumentService,\n useClass: AXMDocumentServiceImpl,\n },\n ],\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG9jdW1lbnQubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tb2R1bGVzL2RvY3VtZW50LW1hbmFnZW1lbnQvc3JjL2xpYi9lbnRpdGllcy9kb2N1bWVudC9kb2N1bWVudC5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQzs7QUFhaEYsTUFBTSxPQUFPLHlDQUF5Qzs4R0FBekMseUNBQXlDOytHQUF6Qyx5Q0FBeUM7K0dBQXpDLHlDQUF5QyxhQVB6QztZQUNUO2dCQUNFLE9BQU8sRUFBRSxrQkFBa0I7Z0JBQzNCLFFBQVEsRUFBRSxzQkFBc0I7YUFDakM7U0FDRjs7MkZBRVUseUNBQXlDO2tCQVhyRCxRQUFRO21CQUFDO29CQUNSLE9BQU8sRUFBRSxFQUFFO29CQUNYLE9BQU8sRUFBRSxFQUFFO29CQUNYLFlBQVksRUFBRSxFQUFFO29CQUNoQixTQUFTLEVBQUU7d0JBQ1Q7NEJBQ0UsT0FBTyxFQUFFLGtCQUFrQjs0QkFDM0IsUUFBUSxFQUFFLHNCQUFzQjt5QkFDakM7cUJBQ0Y7aUJBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQVhNRG9jdW1lbnRTZXJ2aWNlLCBBWE1Eb2N1bWVudFNlcnZpY2VJbXBsIH0gZnJvbSAnLi9kb2N1bWVudC5zZXJ2aWNlJztcblxuQE5nTW9kdWxlKHtcbiAgaW1wb3J0czogW10sXG4gIGV4cG9ydHM6IFtdLFxuICBkZWNsYXJhdGlvbnM6IFtdLFxuICBwcm92aWRlcnM6IFtcbiAgICB7XG4gICAgICBwcm92aWRlOiBBWE1Eb2N1bWVudFNlcnZpY2UsXG4gICAgICB1c2VDbGFzczogQVhNRG9jdW1lbnRTZXJ2aWNlSW1wbCxcbiAgICB9LFxuICBdLFxufSlcbmV4cG9ydCBjbGFzcyBBWE1Eb2N1bWVudE1hbmFnZW1lbnREb2N1bWVudEVudGl0eU1vZHVsZSB7fVxuIl19","export function getNextStatus(options) {\n const { current, requiresReview, requiresDistribution, reviewFirst, reviewResult, allSignaturesCollected } = options;\n switch (current) {\n case 'Draft':\n if (requiresReview)\n return 'PendingReview';\n if (requiresDistribution)\n return 'Distributed';\n return 'Completed';\n case 'PendingReview':\n if (reviewResult === 'rejected')\n return 'Rejected';\n if (reviewResult === 'approved') {\n if (requiresDistribution)\n return 'Distributed';\n return 'Completed';\n }\n return null;\n case 'Reviewed':\n if (requiresDistribution)\n return 'Distributed';\n return 'Completed';\n case 'Distributed':\n if (allSignaturesCollected)\n return 'Completed';\n return 'Distributed';\n default:\n return null;\n }\n}\nconst AXMDocumentWorkflowTransitionMap = {\n Draft: ['PendingReview', 'Distributed', 'Completed'],\n PendingReview: ['Reviewed', 'Rejected'],\n Rejected: ['PendingReview'], // پس از اصلاح\n Reviewed: ['Distributed', 'Completed'],\n Distributed: ['Completed'],\n Completed: []\n};\nexport function canTransition(from, to) {\n return AXMDocumentWorkflowTransitionMap[from]?.includes(to) ?? false;\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG9jdW1lbnQudHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL21vZHVsZXMvZG9jdW1lbnQtbWFuYWdlbWVudC9zcmMvbGliL2VudGl0aWVzL2RvY3VtZW50L2RvY3VtZW50LnR5cGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQW9EQSxNQUFNLFVBQVUsYUFBYSxDQUFDLE9BQTZCO0lBQ3pELE1BQU0sRUFDSixPQUFPLEVBQ1AsY0FBYyxFQUNkLG9CQUFvQixFQUNwQixXQUFXLEVBQ1gsWUFBWSxFQUNaLHNCQUFzQixFQUN2QixHQUFHLE9BQU8sQ0FBQztJQUVaLFFBQVEsT0FBTyxFQUFFLENBQUM7UUFDaEIsS0FBSyxPQUFPO1lBQ1YsSUFBSSxjQUFjO2dCQUFFLE9BQU8sZUFBZSxDQUFDO1lBQzNDLElBQUksb0JBQW9CO2dCQUFFLE9BQU8sYUFBYSxDQUFDO1lBQy9DLE9BQU8sV0FBVyxDQUFDO1FBRXJCLEtBQUssZUFBZTtZQUNsQixJQUFJLFlBQVksS0FBSyxVQUFVO2dCQUFFLE9BQU8sVUFBVSxDQUFDO1lBQ25ELElBQUksWUFBWSxLQUFLLFVBQVUsRUFBRSxDQUFDO2dCQUNoQyxJQUFJLG9CQUFvQjtvQkFBRSxPQUFPLGFBQWEsQ0FBQztnQkFDL0MsT0FBTyxXQUFXLENBQUM7WUFDckIsQ0FBQztZQUNELE9BQU8sSUFBSSxDQUFDO1FBRWQsS0FBSyxVQUFVO1lBQ2IsSUFBSSxvQkFBb0I7Z0JBQUUsT0FBTyxhQUFhLENBQUM7WUFDL0MsT0FBTyxXQUFXLENBQUM7UUFFckIsS0FBSyxhQUFhO1lBQ2hCLElBQUksc0JBQXNCO2dCQUFFLE9BQU8sV0FBVyxDQUFDO1lBQy9DLE9BQU8sYUFBYSxDQUFDO1FBRXZCO1lBQ0UsT0FBTyxJQUFJLENBQUM7SUFDaEIsQ0FBQztBQUNILENBQUM7QUFFRCxNQUFNLGdDQUFnQyxHQUFpRTtJQUNyRyxLQUFLLEVBQUUsQ0FBQyxlQUFlLEVBQUUsYUFBYSxFQUFFLFdBQVcsQ0FBQztJQUNwRCxhQUFhLEVBQUUsQ0FBQyxVQUFVLEVBQUUsVUFBVSxDQUFDO0lBQ3ZDLFFBQVEsRUFBRSxDQUFDLGVBQWUsQ0FBQyxFQUFFLGNBQWM7SUFDM0MsUUFBUSxFQUFFLENBQUMsYUFBYSxFQUFFLFdBQVcsQ0FBQztJQUN0QyxXQUFXLEVBQUUsQ0FBQyxXQUFXLENBQUM7SUFDMUIsU0FBUyxFQUFFLEVBQUU7Q0FDZCxDQUFDO0FBRUYsTUFBTSxVQUFVLGFBQWEsQ0FBQyxJQUE4QixFQUFFLEVBQTRCO0lBQ3hGLE9BQU8sZ0NBQWdDLENBQUMsSUFBSSxDQUFDLEVBQUUsUUFBUSxDQUFDLEVBQUUsQ0FBQyxJQUFJLEtBQUssQ0FBQztBQUN2RSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQVhQRW50aXR5TW9kZWwgfSBmcm9tICdAYWNvcmV4L3BsYXRmb3JtL2xheW91dC9lbnRpdHknO1xuaW1wb3J0IHsgQVhNRG9jdW1lbnRNYW5hZ2VtZW50RG9jdW1lbnRUeXBlRW50aXR5TW9kZWwgfSBmcm9tICcuLi9kb2N1bWVudC10eXBlJztcbmltcG9ydCB7IEFYTURvY3VtZW50TWFuYWdlbWVudFJldmlld0VudGl0eU1vZGVsIH0gZnJvbSAnLi4vcmV2aWV3JztcbmltcG9ydCB7IEFYUEZpbGVMaXN0SXRlbSB9IGZyb20gJ0BhY29yZXgvcGxhdGZvcm0vY29yZSc7XG5cbmV4cG9ydCB0eXBlIEFYTURvY3VtZW50V29ya2Zsb3dQaGFzZSA9XG4gIHwgJ0RyYWZ0J1xuICB8ICdQZW5kaW5nUmV2aWV3J1xuICB8ICdSZWplY3RlZCcgICAgXG4gIHwgJ1Jldmlld2VkJ1xuICB8ICdEaXN0cmlidXRlZCdcbiAgfCAnQ29tcGxldGVkJztcblxuZXhwb3J0IGludGVyZmFjZSBBWE1Eb2N1bWVudE1ldGEge1xuICBuYW1lOnN0cmluZztcbiAgdGl0bGU6c3RyaW5nO1xuICB2YWx1ZTpzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQVhNRG9jdW1lbnRNYW5hZ2VtZW50RG9jdW1lbnRFbnRpdHlNb2RlbCBleHRlbmRzIEFYUEVudGl0eU1vZGVsPHN0cmluZz4ge1xuICBuYW1lOiBzdHJpbmc7XG4gIHRpdGxlOiBzdHJpbmc7XG4gIGRvY3VtZW50VHlwZTogQVhNRG9jdW1lbnRNYW5hZ2VtZW50RG9jdW1lbnRUeXBlRW50aXR5TW9kZWw7ICBcbiAgcGFyZW50SWQ6IHN0cmluZztcbiAgZmlsZUlkOiBzdHJpbmd8QVhQRmlsZUxpc3RJdGVtfGFueTsgLy8gSUQgb2YgdGhlIGZpbGUgaW4gRmlsZVN0b3JhZ2VcbiAgcmVmUmVjb3JkSWQ/OiBzdHJpbmc7XG4gIHJlZkVudGl0eT86IHN0cmluZztcbiAgZGVzY3JpcHRpb24/OiBzdHJpbmc7XG4gIHNpemU6IG51bWJlcjtcbiAgdmVyc2lvbj86IG51bWJlcjtcbiAgcmV2aWV3UmVjb3JkSWQ/OiBzdHJpbmc7XG4gIGV4cGlyYXRpb25EYXRlPzogRGF0ZTtcbiAgZmlsZURhdGE/OiBBWFBGaWxlTGlzdEl0ZW1bXTtcbiAgc3RhdHVzPzogQVhNRG9jdW1lbnRXb3JrZmxvd1BoYXNlO1xuXG4gIGRvY3VtZW50UmV2aWV3PzogQVhNRG9jdW1lbnRNYW5hZ2VtZW50UmV2aWV3RW50aXR5TW9kZWw7XG5cbiAgbWV0YT86IFJlY29yZDxzdHJpbmcsIEFYTURvY3VtZW50TWV0YT47XG59XG5cblxuXG4vL3N1Z2dlc3QgQ2hhdEdQdFxuaW50ZXJmYWNlIEdldE5leHRTdGF0dXNPcHRpb25zIHtcbiAgY3VycmVudDogQVhNRG9jdW1lbnRXb3JrZmxvd1BoYXNlO1xuICByZXF1aXJlc1JldmlldzogYm9vbGVhbjtcbiAgcmVxdWlyZXNEaXN0cmlidXRpb246IGJvb2xlYW47XG4gIHJldmlld0ZpcnN0OiBib29sZWFuOyAvLyBkZWZhdWx0cyB0byB0cnVlXG4gIHJldmlld1Jlc3VsdD86ICdhcHByb3ZlZCcgfCAncmVqZWN0ZWQnO1xuICBhbGxTaWduYXR1cmVzQ29sbGVjdGVkPzogYm9vbGVhbjtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGdldE5leHRTdGF0dXMob3B0aW9uczogR2V0TmV4dFN0YXR1c09wdGlvbnMpOiBBWE1Eb2N1bWVudFdvcmtmbG93UGhhc2UgfCBudWxsIHtcbiAgY29uc3Qge1xuICAgIGN1cnJlbnQsXG4gICAgcmVxdWlyZXNSZXZpZXcsXG4gICAgcmVxdWlyZXNEaXN0cmlidXRpb24sXG4gICAgcmV2aWV3Rmlyc3QsXG4gICAgcmV2aWV3UmVzdWx0LFxuICAgIGFsbFNpZ25hdHVyZXNDb2xsZWN0ZWRcbiAgfSA9IG9wdGlvbnM7XG5cbiAgc3dpdGNoIChjdXJyZW50KSB7XG4gICAgY2FzZSAnRHJhZnQnOlxuICAgICAgaWYgKHJlcXVpcmVzUmV2aWV3KSByZXR1cm4gJ1BlbmRpbmdSZXZpZXcnO1xuICAgICAgaWYgKHJlcXVpcmVzRGlzdHJpYnV0aW9uKSByZXR1cm4gJ0Rpc3RyaWJ1dGVkJztcbiAgICAgIHJldHVybiAnQ29tcGxldGVkJztcblxuICAgIGNhc2UgJ1BlbmRpbmdSZXZpZXcnOlxuICAgICAgaWYgKHJldmlld1Jlc3VsdCA9PT0gJ3JlamVjdGVkJykgcmV0dXJuICdSZWplY3RlZCc7XG4gICAgICBpZiAocmV2aWV3UmVzdWx0ID09PSAnYXBwcm92ZWQnKSB7XG4gICAgICAgIGlmIChyZXF1aXJlc0Rpc3RyaWJ1dGlvbikgcmV0dXJuICdEaXN0cmlidXRlZCc7XG4gICAgICAgIHJldHVybiAnQ29tcGxldGVkJztcbiAgICAgIH1cbiAgICAgIHJldHVybiBudWxsO1xuXG4gICAgY2FzZSAnUmV2aWV3ZWQnOlxuICAgICAgaWYgKHJlcXVpcmVzRGlzdHJpYnV0aW9uKSByZXR1cm4gJ0Rpc3RyaWJ1dGVkJztcbiAgICAgIHJldHVybiAnQ29tcGxldGVkJztcblxuICAgIGNhc2UgJ0Rpc3RyaWJ1dGVkJzpcbiAgICAgIGlmIChhbGxTaWduYXR1cmVzQ29sbGVjdGVkKSByZXR1cm4gJ0NvbXBsZXRlZCc7XG4gICAgICByZXR1cm4gJ0Rpc3RyaWJ1dGVkJztcblxuICAgIGRlZmF1bHQ6XG4gICAgICByZXR1cm4gbnVsbDtcbiAgfVxufVxuXG5jb25zdCBBWE1Eb2N1bWVudFdvcmtmbG93VHJhbnNpdGlvbk1hcDogUmVjb3JkPEFYTURvY3VtZW50V29ya2Zsb3dQaGFzZSwgQVhNRG9jdW1lbnRXb3JrZmxvd1BoYXNlW10+ID0ge1xuICBEcmFmdDogWydQZW5kaW5nUmV2aWV3JywgJ0Rpc3RyaWJ1dGVkJywgJ0NvbXBsZXRlZCddLFxuICBQZW5kaW5nUmV2aWV3OiBbJ1Jldmlld2VkJywgJ1JlamVjdGVkJ10sXG4gIFJlamVjdGVkOiBbJ1BlbmRpbmdSZXZpZXcnXSwgLy8g2b7YsyDYp9iyINin2LXZhNin2K1cbiAgUmV2aWV3ZWQ6IFsnRGlzdHJpYnV0ZWQnLCAnQ29tcGxldGVkJ10sXG4gIERpc3RyaWJ1dGVkOiBbJ0NvbXBsZXRlZCddLFxuICBDb21wbGV0ZWQ6IFtdXG59O1xuXG5leHBvcnQgZnVuY3Rpb24gY2FuVHJhbnNpdGlvbihmcm9tOiBBWE1Eb2N1bWVudFdvcmtmbG93UGhhc2UsIHRvOiBBWE1Eb2N1bWVudFdvcmtmbG93UGhhc2UpOiBib29sZWFuIHtcbiAgcmV0dXJuIEFYTURvY3VtZW50V29ya2Zsb3dUcmFuc2l0aW9uTWFwW2Zyb21dPy5pbmNsdWRlcyh0bykgPz8gZmFsc2U7XG59XG4iXX0=","import { AXMEntityCrudServiceImpl } from '@acorex/platform/layout/entity';\nimport { Injectable } from '@angular/core';\nimport { RootConfig } from '../../const';\nimport * as i0 from \"@angular/core\";\nexport class AXMDocumentTypeService extends AXMEntityCrudServiceImpl {\n}\nexport class AXMDocumentTypeServiceImpl extends AXMDocumentTypeService {\n constructor() {\n super(`${RootConfig.module.name}.${RootConfig.entities.documentType.name}`);\n }\n async getByName(name) {\n return (await this.query({\n skip: 0,\n take: 1,\n filter: {\n logic: 'and',\n filters: [\n {\n field: 'name',\n operator: {\n type: 'equal',\n },\n value: name\n }\n ]\n },\n })).items[0];\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: AXMDocumentTypeServiceImpl, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }\n static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: AXMDocumentTypeServiceImpl }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: AXMDocumentTypeServiceImpl, decorators: [{\n type: Injectable\n }], ctorParameters: () => [] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG9jdW1lbnQtdHlwZS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tb2R1bGVzL2RvY3VtZW50LW1hbmFnZW1lbnQvc3JjL2xpYi9lbnRpdGllcy9kb2N1bWVudC10eXBlL2RvY3VtZW50LXR5cGUuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUMxRSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxhQUFhLENBQUM7O0FBR3pDLE1BQU0sT0FBZ0Isc0JBQXVCLFNBQVEsd0JBR3BEO0NBSUE7QUFHRCxNQUFNLE9BQU8sMEJBQTJCLFNBQVEsc0JBQXNCO0lBQ3BFO1FBQ0UsS0FBSyxDQUFDLEdBQUcsVUFBVSxDQUFDLE1BQU0sQ0FBQyxJQUFJLElBQUksVUFBVSxDQUFDLFFBQVEsQ0FBQyxZQUFZLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQztJQUM5RSxDQUFDO0lBRVEsS0FBSyxDQUFDLFNBQVMsQ0FBQyxJQUFZO1FBQ25DLE9BQU8sQ0FBQyxNQUFNLElBQUksQ0FBQyxLQUFLLENBQUM7WUFDdkIsSUFBSSxFQUFHLENBQUM7WUFDUixJQUFJLEVBQUcsQ0FBQztZQUNSLE1BQU0sRUFBRTtnQkFDTixLQUFLLEVBQUcsS0FBSztnQkFDYixPQUFPLEVBQUc7b0JBQ1I7d0JBQ0UsS0FBSyxFQUFHLE1BQU07d0JBQ2QsUUFBUSxFQUFHOzRCQUNULElBQUksRUFBRyxPQUFPO3lCQUNmO3dCQUNELEtBQUssRUFBRyxJQUFJO3FCQUNiO2lCQUNGO2FBQ0Y7U0FDRixDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDZixDQUFDOzhHQXRCVSwwQkFBMEI7a0hBQTFCLDBCQUEwQjs7MkZBQTFCLDBCQUEwQjtrQkFEdEMsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFYTUVudGl0eUNydWRTZXJ2aWNlSW1wbCB9IGZyb20gJ0BhY29yZXgvcGxhdGZvcm0vbGF5b3V0L2VudGl0eSc7XG5pbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBSb290Q29uZmlnIH0gZnJvbSAnLi4vLi4vY29uc3QnO1xuaW1wb3J0IHsgQVhNRG9jdW1lbnRNYW5hZ2VtZW50RG9jdW1lbnRUeXBlRW50aXR5TW9kZWwgfSBmcm9tICcuL2RvY3VtZW50LXR5cGUudHlwZXMnO1xuXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgQVhNRG9jdW1lbnRUeXBlU2VydmljZSBleHRlbmRzIEFYTUVudGl0eUNydWRTZXJ2aWNlSW1wbDxcbiAgc3RyaW5nLFxuICBBWE1Eb2N1bWVudE1hbmFnZW1lbnREb2N1bWVudFR5cGVFbnRpdHlNb2RlbFxuPiB7XG5cbiAgYWJzdHJhY3QgZ2V0QnlOYW1lKG5hbWU6IHN0cmluZyk6IFByb21pc2U8QVhNRG9jdW1lbnRNYW5hZ2VtZW50RG9jdW1lbnRUeXBlRW50aXR5TW9kZWw+O1xuXG59XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBBWE1Eb2N1bWVudFR5cGVTZXJ2aWNlSW1wbCBleHRlbmRzIEFYTURvY3VtZW50VHlwZVNlcnZpY2Uge1xuICBjb25zdHJ1Y3RvcigpIHtcbiAgICBzdXBlcihgJHtSb290Q29uZmlnLm1vZHVsZS5uYW1lfS4ke1Jvb3RDb25maWcuZW50aXRpZXMuZG9jdW1lbnRUeXBlLm5hbWV9YCk7XG4gIH1cblxuICBvdmVycmlkZSBhc3luYyBnZXRCeU5hbWUobmFtZTogc3RyaW5nKTogUHJvbWlzZTxBWE1Eb2N1bWVudE1hbmFnZW1lbnREb2N1bWVudFR5cGVFbnRpdHlNb2RlbD4ge1xuICAgIHJldHVybiAoYXdhaXQgdGhpcy5xdWVyeSh7XG4gICAgICBza2lwIDogMCxcbiAgICAgIHRha2UgOiAxLFxuICAgICAgZmlsdGVyOiB7XG4gICAgICAgIGxvZ2ljIDogJ2FuZCcsXG4gICAgICAgIGZpbHRlcnMgOiBbXG4gICAgICAgICAge1xuICAgICAgICAgICAgZmllbGQgOiAnbmFtZScsXG4gICAgICAgICAgICBvcGVyYXRvciA6IHtcbiAgICAgICAgICAgICAgdHlwZSA6ICdlcXVhbCcsICAgICAgICAgICAgICBcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB2YWx1ZSA6IG5hbWVcbiAgICAgICAgICB9XG4gICAgICAgIF1cbiAgICAgIH0sXG4gICAgfSkpLml0ZW1zWzBdO1xuICB9XG59IFxuIl19","import { AXPEntityCommandScope, AXPEntityQueryType, createAllQueryView } from '@acorex/platform/common';\nimport { AXPWidgetsCatalog } from '@acorex/platform/layout/builder';\nimport { RootConfig } from '../../const';\nimport { AXMDocumentTypeService } from './document-type.service';\nexport async function documentTypeFactory(injector) {\n const dataService = injector.get(AXMDocumentTypeService);\n const i18n = RootConfig.config.i18n;\n const entityDef = {\n module: RootConfig.module.name,\n name: RootConfig.entities.documentType.name,\n source: '',\n title: RootConfig.entities.documentType.title,\n formats: {\n individual: RootConfig.entities.documentType.title,\n plural: RootConfig.entities.documentType.titlePlural,\n searchResult: {\n title: '{{ title }}',\n description: RootConfig.module.title,\n },\n },\n relatedEntities: [],\n groups: [\n {\n id: 'section',\n title: RootConfig.entities.documentType.title,\n },\n {\n id: 'management',\n title: `t(\"management\", { scope: \"${i18n}\" })`,\n },\n ],\n properties: [\n {\n name: 'name',\n title: 't(\"name\", { scope: \"common\" })',\n groupId: 'section',\n options: {\n sort: {\n enabled: true,\n },\n },\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.text,\n },\n },\n validations: [\n {\n rule: 'required',\n },\n ],\n },\n {\n name: 'title',\n title: 't(\"title\", { scope: \"common\" })',\n groupId: 'section',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.text,\n },\n },\n validations: [\n {\n rule: 'required',\n },\n ],\n },\n {\n name: 'maxSize',\n title: `t(\"maxSize\", { scope: \"${i18n}\" })`,\n groupId: 'section',\n schema: {\n dataType: 'number',\n interface: {\n type: AXPWidgetsCatalog.numberUnit,\n options: {\n textField: 'name',\n valueField: 'value',\n dataSource: [\n {\n name: 'kb',\n value: 'KB',\n calUnit: 1,\n },\n {\n name: 'mb',\n value: 'MB',\n calUnit: 1024,\n },\n {\n name: 'gb',\n value: 'GB',\n calUnit: 1024 * 1024,\n },\n ],\n mainUnit: 'kb',\n },\n },\n },\n validations: [\n {\n rule: 'required',\n },\n ],\n },\n {\n name: 'isEncrypted',\n title: `t(\"isEncrypted\", { scope: \"${i18n}\" })`,\n groupId: 'section',\n schema: {\n dataType: 'boolean',\n interface: {\n type: AXPWidgetsCatalog.toggle,\n },\n },\n },\n {\n name: 'enableExpiration',\n title: `t(\"enableExpiration\", { scope: \"${i18n}\" })`,\n groupId: 'management',\n schema: {\n dataType: 'boolean',\n interface: {\n type: AXPWidgetsCatalog.toggle,\n },\n },\n },\n {\n name: 'requiresReview',\n title: `t(\"requiresReview\", { scope: \"${i18n}\" })`,\n groupId: 'management',\n schema: {\n dataType: 'boolean',\n interface: {\n type: AXPWidgetsCatalog.toggle,\n },\n },\n },\n {\n name: 'requiresDistribution',\n title: `t(\"requiresDistribution\", { scope: \"${i18n}\" })`,\n groupId: 'management',\n schema: {\n dataType: 'boolean',\n interface: {\n type: AXPWidgetsCatalog.toggle,\n },\n },\n },\n {\n name: 'enableVersioning',\n title: `t(\"enableVersioning\", { scope: \"${i18n}\" })`,\n groupId: 'management',\n schema: {\n dataType: 'boolean',\n interface: {\n type: AXPWidgetsCatalog.toggle,\n options: {\n disabled: '{{ !!context.eval(\"requiresReview\") }}',\n },\n triggers: [\n {\n event: \"{{ events.context('requiresReview') }}\",\n action: \"{{ context.set('enableVersioning', true) }}\",\n },\n ],\n },\n },\n },\n {\n name: 'meta',\n title: `t(\"metaTitle\", { scope: \"${i18n}\" })`,\n groupId: 'section',\n schema: {\n dataType: 'object',\n interface: {\n type: 'meta-selector-editor',\n },\n },\n },\n {\n name: 'type',\n title: `t(\"type\", { scope: \"${i18n}\" })`,\n groupId: 'section',\n schema: {\n dataType: 'object',\n interface: {\n type: AXPWidgetsCatalog.fileTypeExtension,\n options: {},\n },\n },\n },\n ],\n columns: [{ name: 'name' }, { name: 'title' }],\n commands: {\n create: {\n execute: async (data) => {\n data.meta = data.meta\n .filter((item) => item.status !== 'deleted')\n .map((item) => ({\n ...item,\n status: 'active',\n }));\n const res = await dataService.insertOne(data);\n return { id: res };\n },\n },\n delete: {\n execute: async (id) => {\n return await dataService.deleteOne(id);\n },\n },\n update: {\n execute: async (data) => {\n data.meta = data.meta\n .filter((item) => item.status !== 'deleted')\n .map((item) => ({\n ...item,\n status: 'active',\n }));\n return await dataService.updateOne(data.id, data);\n },\n },\n },\n queries: {\n byKey: {\n execute: async (id) => {\n return await dataService.getOne(id);\n },\n type: AXPEntityQueryType.Single,\n },\n list: {\n execute: async (e) => {\n return await dataService.query(e);\n },\n type: AXPEntityQueryType.List,\n },\n },\n interfaces: {\n master: {\n create: {\n sections: [\n {\n id: 'section',\n },\n {\n id: 'management',\n },\n ],\n properties: [\n {\n name: 'name',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n },\n },\n },\n },\n {\n name: 'title',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n },\n },\n },\n },\n {\n name: 'maxSize',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n },\n },\n },\n },\n {\n name: 'isEncrypted',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n },\n },\n },\n },\n {\n name: 'enableExpiration',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n },\n },\n },\n },\n {\n name: 'requiresReview',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n },\n },\n },\n },\n {\n name: 'requiresDistribution',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n },\n },\n },\n },\n {\n name: 'enableVersioning',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n },\n },\n },\n },\n {\n name: 'meta',\n layout: {\n positions: {\n lg: {\n colSpan: 12,\n },\n },\n },\n },\n {\n name: 'type',\n layout: {\n positions: {\n lg: {\n colSpan: 12,\n },\n },\n },\n },\n ],\n },\n update: {\n sections: [\n {\n id: 'section',\n },\n {\n id: 'management',\n },\n ],\n properties: [\n {\n name: 'name',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n },\n },\n },\n },\n {\n name: 'title',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n },\n },\n },\n },\n {\n name: 'maxSize',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n },\n },\n },\n },\n {\n name: 'isEncrypted',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n },\n },\n },\n },\n {\n name: 'enableExpiration',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n },\n },\n },\n },\n {\n name: 'requiresReview',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n },\n },\n },\n },\n {\n name: 'requiresDistribution',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n },\n },\n },\n },\n {\n name: 'enableVersioning',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n },\n },\n },\n },\n {\n name: 'meta',\n layout: {\n positions: {\n lg: {\n colSpan: 12,\n },\n },\n },\n },\n {\n name: 'type',\n layout: {\n positions: {\n lg: {\n colSpan: 12,\n },\n },\n },\n },\n ],\n },\n single: {\n title: '{{title}}',\n sections: [\n {\n id: 'section',\n layout: {\n positions: {\n lg: {\n colSpan: 12,\n },\n },\n },\n },\n {\n id: 'management',\n layout: {\n positions: {\n lg: {\n colSpan: 12,\n },\n },\n },\n },\n ],\n properties: [\n {\n name: 'name',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n },\n },\n },\n },\n {\n name: 'title',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n },\n },\n },\n },\n {\n name: 'maxSize',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n },\n },\n },\n },\n {\n name: 'isEncrypted',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n },\n },\n },\n },\n {\n name: 'enableExpiration',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n },\n },\n },\n },\n {\n name: 'requiresReview',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n },\n },\n },\n },\n {\n name: 'requiresDistribution',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n },\n },\n },\n },\n {\n name: 'enableVersioning',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n },\n },\n },\n },\n {\n name: 'meta',\n layout: {\n positions: {\n lg: {\n colSpan: 12,\n },\n },\n },\n },\n {\n name: 'type',\n layout: {\n positions: {\n lg: {\n colSpan: 12,\n },\n },\n },\n },\n ],\n actions: [],\n },\n list: {\n actions: [\n {\n title: `t(\"create\", { scope: \"common\" })`,\n command: 'create-entity',\n priority: 'primary',\n type: 'create',\n scope: AXPEntityCommandScope.TypeLevel,\n },\n {\n title: 't(\"deleteItems\", { scope: \"common\" })',\n command: 'delete-entity',\n priority: 'primary',\n type: 'delete',\n scope: AXPEntityCommandScope.Selected,\n },\n {\n title: 't(\"detail\", { scope: \"common\" })',\n command: 'open-entity',\n priority: 'secondary',\n type: 'view',\n scope: AXPEntityCommandScope.Individual,\n },\n {\n title: 't(\"delete\", { scope: \"common\" })',\n command: 'delete-entity',\n priority: 'secondary',\n type: 'delete',\n scope: AXPEntityCommandScope.Individual,\n },\n ],\n views: [createAllQueryView()],\n },\n },\n },\n };\n return entityDef;\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG9jdW1lbnQtdHlwZS5lbnRpdHkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL21vZHVsZXMvZG9jdW1lbnQtbWFuYWdlbWVudC9zcmMvbGliL2VudGl0aWVzL2RvY3VtZW50LXR5cGUvZG9jdW1lbnQtdHlwZS5lbnRpdHkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFhLHFCQUFxQixFQUFFLGtCQUFrQixFQUFFLGtCQUFrQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDbkgsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFFcEUsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUN6QyxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUVqRSxNQUFNLENBQUMsS0FBSyxVQUFVLG1CQUFtQixDQUFDLFFBQWtCO0lBQzFELE1BQU0sV0FBVyxHQUFHLFFBQVEsQ0FBQyxHQUFHLENBQUMsc0JBQXNCLENBQUMsQ0FBQztJQUN6RCxNQUFNLElBQUksR0FBRyxVQUFVLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQztJQUVwQyxNQUFNLFNBQVMsR0FBYztRQUMzQixNQUFNLEVBQUUsVUFBVSxDQUFDLE1BQU0sQ0FBQyxJQUFJO1FBQzlCLElBQUksRUFBRSxVQUFVLENBQUMsUUFBUSxDQUFDLFlBQVksQ0FBQyxJQUFJO1FBQzNDLE1BQU0sRUFBRSxFQUFFO1FBQ1YsS0FBSyxFQUFFLFVBQVUsQ0FBQyxRQUFRLENBQUMsWUFBWSxDQUFDLEtBQUs7UUFDN0MsT0FBTyxFQUFFO1lBQ1AsVUFBVSxFQUFFLFVBQVUsQ0FBQyxRQUFRLENBQUMsWUFBWSxDQUFDLEtBQUs7WUFDbEQsTUFBTSxFQUFFLFVBQVUsQ0FBQyxRQUFRLENBQUMsWUFBWSxDQUFDLFdBQVc7WUFDcEQsWUFBWSxFQUFFO2dCQUNaLEtBQUssRUFBRSxhQUFh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RUFBRSxxQkFBcUIsQ0FBQyxVQUFVO3lCQUN4QztxQkFDRjtvQkFDRCxLQUFLLEVBQUUsQ0FBQyxrQkFBa0IsRUFBRSxDQUFDO2lCQUM5QjthQUNGO1NBQ0Y7S0FDRixDQUFDO0lBRUYsT0FBTyxTQUFTLENBQUM7QUFDbkIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFYUEVudGl0eSwgQVhQRW50aXR5Q29tbWFuZFNjb3BlLCBBWFBFbnRpdHlRdWVyeVR5cGUsIGNyZWF0ZUFsbFF1ZXJ5VmlldyB9IGZyb20gJ0BhY29yZXgvcGxhdGZvcm0vY29tbW9uJztcbmltcG9ydCB7IEFYUFdpZGdldHNDYXRhbG9nIH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9sYXlvdXQvYnVpbGRlcic7XG5pbXBvcnQgeyBJbmplY3RvciB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgUm9vdENvbmZpZyB9IGZyb20gJy4uLy4uL2NvbnN0JztcbmltcG9ydCB7IEFYTURvY3VtZW50VHlwZVNlcnZpY2UgfSBmcm9tICcuL2RvY3VtZW50LXR5cGUuc2VydmljZSc7XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBkb2N1bWVudFR5cGVGYWN0b3J5KGluamVjdG9yOiBJbmplY3Rvcik6IFByb21pc2U8QVhQRW50aXR5IHwgbnVsbD4ge1xuICBjb25zdCBkYXRhU2VydmljZSA9IGluamVjdG9yLmdldChBWE1Eb2N1bWVudFR5cGVTZXJ2aWNlKTtcbiAgY29uc3QgaTE4biA9IFJvb3RDb25maWcuY29uZmlnLmkxOG47XG5cbiAgY29uc3QgZW50aXR5RGVmOiBBWFBFbnRpdHkgPSB7XG4gICAgbW9kdWxlOiBSb290Q29uZmlnLm1vZHVsZS5uYW1lLFxuICAgIG5hbWU6IFJvb3RDb25maWcuZW50aXRpZXMuZG9jdW1lbnRUeXBlLm5hbWUsXG4gICAgc291cmNlOiAnJyxcbiAgICB0aXRsZTogUm9vdENvbmZpZy5lbnRpdGllcy5kb2N1bWVudFR5cGUudGl0bGUsXG4gICAgZm9ybWF0czoge1xuICAgICAgaW5kaXZpZHVhbDogUm9vdENvbmZpZy5lbnRpdGllcy5kb2N1bWVudFR5cGUudGl0bGUsXG4gICAgICBwbHVyYWw6IFJvb3RDb25maWcuZW50aXRpZXMuZG9jdW1lbnRUeXBlLnRpdGxlUGx1cmFsLFxuICAgICAgc2VhcmNoUmVzdWx0OiB7XG4gICAgICAgIHRpdGxlOiAne3sgdGl0bGUgfX0nLFxuICAgICAgICBkZXNjcmlwdGlvbjogUm9vdENvbmZpZy5tb2R1bGUudGl0bGUsXG4gICAgICB9LFxuICAgIH0sXG4gICAgcmVsYXRlZEVudGl0aWVzOiBbXSxcbiAgICBncm91cHM6IFtcbiAgICAgIHtcbiAgICAgICAgaWQ6ICdzZWN0aW9uJyxcbiAgICAgICAgdGl0bGU6IFJvb3RDb25maWcuZW50aXRpZXMuZG9jdW1lbnRUeXBlLnRpdGxlLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgaWQ6ICdtYW5hZ2VtZW50JyxcbiAgICAgICAgdGl0bGU6IGB0KFwibWFuYWdlbWVudFwiLCB7IHNjb3BlOiBcIiR7aTE4bn1cIiB9KWAsXG4gICAgICB9LFxuICAgIF0sXG4gICAgcHJvcGVydGllczogW1xuICAgICAge1xuICAgICAgICBuYW1lOiAnbmFtZScsXG4gICAgICAgIHRpdGxlOiAndChcIm5hbWVcIiwgeyBzY29wZTogXCJjb21tb25cIiB9KScsXG4gICAgICAgIGdyb3VwSWQ6ICdzZWN0aW9uJyxcbiAgICAgICAgb3B0aW9uczoge1xuICAgICAgICAgIHNvcnQ6IHtcbiAgICAgICAgICAgIGVuYWJsZWQ6IHRydWUsXG4gICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgICAgc2NoZW1hOiB7XG4gICAgICAgICAgZGF0YVR5cGU6ICdzdHJpbmcnLFxuICAgICAgICAgIGludGVyZmFjZToge1xuICAgICAgICAgICAgdHlwZTogQVhQV2lkZ2V0c0NhdGFsb2cudGV4dCxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgICB2YWxpZGF0aW9uczogW1xuICAgICAgICAgIHtcbiAgICAgICAgICAgIHJ1bGU6ICdyZXF1aXJlZCcsXG4gICAgICAgICAgfSxcbiAgICAgICAgXSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIG5hbWU6ICd0aXRsZScsXG4gICAgICAgIHRpdGxlOiAndChcInRpdGxlXCIsIHsgc2NvcGU6IFwiY29tbW9uXCIgfSknLFxuICAgICAgICBncm91cElkOiAnc2VjdGlvbicsXG4gICAgICAgIHNjaGVtYToge1xuICAgICAgICAgIGRhdGFUeXBlOiAnc3RyaW5nJyxcbiAgICAgICAgICBpbnRlcmZhY2U6IHtcbiAgICAgICAgICAgIHR5cGU6IEFYUFdpZGdldHNDYXRhbG9nLnRleHQsXG4gICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgICAgdmFsaWRhdGlvbnM6IFtcbiAgICAgICAgICB7XG4gICAgICAgICAgICBydWxlOiAncmVxdWlyZWQnLFxuICAgICAgICAgIH0sXG4gICAgICAgIF0sXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBuYW1lOiAnbWF4U2l6ZScsXG4gICAgICAgIHRpdGxlOiBgdChcIm1heFNpemVcIiwgeyBzY29wZTogXCIke2kxOG59XCIgfSlgLFxuICAgICAgICBncm91cElkOiAnc2VjdGlvbicsXG4gICAgICAgIHNjaGVtYToge1xuICAgICAgICAgIGRhdGFUeXBlOiAnbnVtYmVyJyxcbiAgICAgICAgICBpbnRlcmZhY2U6IHtcbiAgICAgICAgICAgIHR5cGU6IEFYUFdpZGdldHNDYXRhbG9nLm51bWJlclVuaXQsXG4gICAgICAgICAgICBvcHRpb25zOiB7XG4gICAgICAgICAgICAgIHRleHRGaWVsZDogJ25hbWUnLFxuICAgICAgICAgICAgICB2YWx1ZUZpZWxkOiAndmFsdWUnLFxuICAgICAgICAgICAgICBkYXRhU291cmNlOiBbXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgbmFtZTogJ2tiJyxcbiAgICAgICAgICAgICAgICAgIHZhbHVlOiAnS0InLFxuICAgICAgICAgICAgICAgICAgY2FsVW5pdDogMSxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgIG5hbWU6ICdtYicsXG4gICAgICAgICAgICAgICAgICB2YWx1ZTogJ01CJyxcbiAgICAgICAgICAgICAgICAgIGNhbFVuaXQ6IDEwMjQsXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICBuYW1lOiAnZ2InLFxuICAgICAgICAgICAgICAgICAgdmFsdWU6ICdHQicsXG4gICAgICAgICAgICAgICAgICBjYWxVbml0OiAxMDI0ICogMTAyNCxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICBtYWluVW5pdDogJ2tiJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgICAgdmFsaWRhdGlvbnM6IFtcbiAgICAgICAgICB7XG4gICAgICAgICAgICBydWxlOiAncmVxdWlyZWQnLFxuICAgICAgICAgIH0sXG4gICAgICAgIF0sXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBuYW1lOiAnaXNFbmNyeXB0ZWQnLFxuICAgICAgICB0aXRsZTogYHQoXCJpc0VuY3J5cHRlZFwiLCB7IHNjb3BlOiBcIiR7aTE4bn1cIiB9KWAsXG4gICAgICAgIGdyb3VwSWQ6ICdzZWN0aW9uJyxcbiAgICAgICAgc2NoZW1hOiB7XG4gICAgICAgICAgZGF0YVR5cGU6ICdib29sZWFuJyxcbiAgICAgICAgICBpbnRlcmZhY2U6IHtcbiAgICAgICAgICAgIHR5cGU6IEFYUFdpZGdldHNDYXRhbG9nLnRvZ2dsZSxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgbmFtZTogJ2VuYWJsZUV4cGlyYXRpb24nLFxuICAgICAgICB0aXRsZTogYHQoXCJlbmFibGVFeHBpcmF0aW9uXCIsIHsgc2NvcGU6IFwiJHtpMThufVwiIH0pYCxcbiAgICAgICAgZ3JvdXBJZDogJ21hbmFnZW1lbnQnLFxuICAgICAgICBzY2hlbWE6IHtcbiAgICAgICAgICBkYXRhVHlwZTogJ2Jvb2xlYW4nLFxuICAgICAgICAgIGludGVyZmFjZToge1xuICAgICAgICAgICAgdHlwZTogQVhQV2lkZ2V0c0NhdGFsb2cudG9nZ2xlLFxuICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBuYW1lOiAncmVxdWlyZXNSZXZpZXcnLFxuICAgICAgICB0aXRsZTogYHQoXCJyZXF1aXJlc1Jldmlld1wiLCB7IHNjb3BlOiBcIiR7aTE4bn1cIiB9KWAsXG4gICAgICAgIGdyb3VwSWQ6ICdtYW5hZ2VtZW50JyxcbiAgICAgICAgc2NoZW1hOiB7XG4gICAgICAgICAgZGF0YVR5cGU6ICdib29sZWFuJyxcbiAgICAgICAgICBpbnRlcmZhY2U6IHtcbiAgICAgICAgICAgIHR5cGU6IEFYUFdpZGdldHNDYXRhbG9nLnRvZ2dsZSxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgbmFtZTogJ3JlcXVpcmVzRGlzdHJpYnV0aW9uJyxcbiAgICAgICAgdGl0bGU6IGB0KFwicmVxdWlyZXNEaXN0cmlidXRpb25cIiwgeyBzY29wZTogXCIke2kxOG59XCIgfSlgLFxuICAgICAgICBncm91cElkOiAnbWFuYWdlbWVudCcsXG4gICAgICAgIHNjaGVtYToge1xuICAgICAgICAgIGRhdGFUeXBlOiAnYm9vbGVhbicsXG4gICAgICAgICAgaW50ZXJmYWNlOiB7XG4gICAgICAgICAgICB0eXBlOiBBWFBXaWRnZXRzQ2F0YWxvZy50b2dnbGUsXG4gICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIG5hbWU6ICdlbmFibGVWZXJzaW9uaW5nJyxcbiAgICAgICAgdGl0bGU6IGB0KFwiZW5hYmxlVmVyc2lvbmluZ1wiLCB7IHNjb3BlOiBcIiR7aTE4bn1cIiB9KWAsXG4gICAgICAgIGdyb3VwSWQ6ICdtYW5hZ2VtZW50JyxcbiAgICAgICAgc2NoZW1hOiB7XG4gICAgICAgICAgZGF0YVR5cGU6ICdib29sZWFuJyxcbiAgICAgICAgICBpbnRlcmZhY2U6IHtcbiAgICAgICAgICAgIHR5cGU6IEFYUFdpZGdldHNDYXRhbG9nLnRvZ2dsZSxcbiAgICAgICAgICAgIG9wdGlvbnM6IHtcbiAgICAgICAgICAgICAgZGlzYWJsZWQ6ICd7eyAhIWNvbnRleHQuZXZhbChcInJlcXVpcmVzUmV2aWV3XCIpIH19JyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB0cmlnZ2VyczogW1xuICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgZXZlbnQ6IFwie3sgZXZlbnRzLmNvbnRleHQoJ3JlcXVpcmVzUmV2aWV3JykgfX1cIixcbiAgICAgICAgICAgICAgICBhY3Rpb246IFwie3sgY29udGV4dC5zZXQoJ2VuYWJsZVZlcnNpb25pbmcnLCB0cnVlKSB9fVwiLFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgXSxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgbmFtZTogJ21ldGEnLFxuICAgICAgICB0aXRsZTogYHQoXCJtZXRhVGl0bGVcIiwgeyBzY29wZTogXCIke2kxOG59XCIgfSlgLFxuICAgICAgICBncm91cElkOiAnc2VjdGlvbicsXG4gICAgICAgIHNjaGVtYToge1xuICAgICAgICAgIGRhdGFUeXBlOiAnb2JqZWN0JyxcbiAgICAgICAgICBpbnRlcmZhY2U6IHtcbiAgICAgICAgICAgIHR5cGU6ICdtZXRhLXNlbGVjdG9yLWVkaXRvcicsXG4gICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIG5hbWU6ICd0eXBlJyxcbiAgICAgICAgdGl0bGU6IGB0KFwidHlwZVwiLCB7IHNjb3BlOiBcIiR7aTE4bn1cIiB9KWAsXG4gICAgICAgIGdyb3VwSWQ6ICdzZWN0aW9uJyxcbiAgICAgICAgc2NoZW1hOiB7XG4gICAgICAgICAgZGF0YVR5cGU6ICdvYmplY3QnLFxuICAgICAgICAgIGludGVyZmFjZToge1xuICAgICAgICAgICAgdHlwZTogQVhQV2lkZ2V0c0NhdGFsb2cuZmlsZVR5cGVFeHRlbnNpb24sXG4gICAgICAgICAgICBvcHRpb25zOiB7fSxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgfSxcbiAgICBdLFxuICAgIGNvbHVtbnM6IFt7IG5hbWU6ICduYW1lJyB9LCB7IG5hbWU6ICd0aXRsZScgfV0sXG4gICAgY29tbWFuZHM6IHtcbiAgICAgIGNyZWF0ZToge1xuICAgICAgICBleGVjdXRlOiBhc3luYyAoZGF0YTogYW55KSA9PiB7XG4gICAgICAgICAgZGF0YS5tZXRhID0gZGF0YS5tZXRhXG4gICAgICAgICAgICAuZmlsdGVyKChpdGVtOiBhbnkpID0+IGl0ZW0uc3RhdHVzICE9PSAnZGVsZXRlZCcpXG4gICAgICAgICAgICAubWFwKChpdGVtOiBhbnkpID0+ICh7XG4gICAgICAgICAgICAgIC4uLml0ZW0sXG4gICAgICAgICAgICAgIHN0YXR1czogJ2FjdGl2ZScsXG4gICAgICAgICAgICB9KSk7XG5cbiAgICAgICAgICBjb25zdCByZXMgPSBhd2FpdCBkYXRhU2VydmljZS5pbnNlcnRPbmUoZGF0YSk7XG4gICAgICAgICAgcmV0dXJuIHsgaWQ6IHJlcyB9O1xuICAgICAgICB9LFxuICAgICAgfSxcbiAgICAgIGRlbGV0ZToge1xuICAgICAgICBleGVjdXRlOiBhc3luYyAoaWQ6IGFueSkgPT4ge1xuICAgICAgICAgIHJldHVybiBhd2FpdCBkYXRhU2VydmljZS5kZWxldGVPbmUoaWQpO1xuICAgICAgICB9LFxuICAgICAgfSxcbiAgICAgIHVwZGF0ZToge1xuICAgICAgICBleGVjdXRlOiBhc3luYyAoZGF0YTogYW55KSA9PiB7XG4gICAgICAgICAgZGF0YS5tZXRhID0gZGF0YS5tZXRhXG4gICAgICAgICAgICAuZmlsdGVyKChpdGVtOiBhbnkpID0+IGl0ZW0uc3RhdHVzICE9PSAnZGVsZXRlZCcpXG4gICAgICAgICAgICAubWFwKChpdGVtOiBhbnkpID0+ICh7XG4gICAgICAgICAgICAgIC4uLml0ZW0sXG4gICAgICAgICAgICAgIHN0YXR1czogJ2FjdGl2ZScsXG4gICAgICAgICAgICB9KSk7XG5cbiAgICAgICAgICByZXR1cm4gYXdhaXQgZGF0YVNlcnZpY2UudXBkYXRlT25lKGRhdGEuaWQsIGRhdGEpO1xuICAgICAgICB9LFxuICAgICAgfSxcbiAgICB9LFxuICAgIHF1ZXJpZXM6IHtcbiAgICAgIGJ5S2V5OiB7XG4gICAgICAgIGV4ZWN1dGU6IGFzeW5jIChpZDogc3RyaW5nKSA9PiB7XG4gICAgICAgICAgcmV0dXJuIGF3YWl0IGRhdGFTZXJ2aWNlLmdldE9uZShpZCk7XG4gICAgICAgIH0sXG4gICAgICAgIHR5cGU6IEFYUEVudGl0eVF1ZXJ5VHlwZS5TaW5nbGUsXG4gICAgICB9LFxuICAgICAgbGlzdDoge1xuICAgICAgICBleGVjdXRlOiBhc3luYyAoZTogYW55KSA9PiB7XG4gICAgICAgICAgcmV0dXJuIGF3YWl0IGRhdGFTZXJ2aWNlLnF1ZXJ5KGUpO1xuICAgICAgICB9LFxuICAgICAgICB0eXBlOiBBWFBFbnRpdHlRdWVyeVR5cGUuTGlzdCxcbiAgICAgIH0sXG4gICAgfSxcbiAgICBpbnRlcmZhY2VzOiB7XG4gICAgICBtYXN0ZXI6IHtcbiAgICAgICAgY3JlYXRlOiB7XG4gICAgICAgICAgc2VjdGlvbnM6IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgaWQ6ICdzZWN0aW9uJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIGlkOiAnbWFuYWdlbWVudCcsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIF0sXG4gICAgICAgICAgcHJvcGVydGllczogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBuYW1lOiAnbmFtZScsXG4gICAgICAgICAgICAgIGxheW91dDoge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uczoge1xuICAgICAgICAgICAgICAgICAgbGc6IHtcbiAgICAgICAgICAgICAgICAgICAgY29sU3BhbjogNixcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIG5hbWU6ICd0aXRsZScsXG4gICAgICAgICAgICAgIGxheW91dDoge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uczoge1xuICAgICAgICAgICAgICAgICAgbGc6IHtcbiAgICAgICAgICAgICAgICAgICAgY29sU3BhbjogNixcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIG5hbWU6ICdtYXhTaXplJyxcbiAgICAgICAgICAgICAgbGF5b3V0OiB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb25zOiB7XG4gICAgICAgICAgICAgICAgICBsZzoge1xuICAgICAgICAgICAgICAgICAgICBjb2xTcGFuOiA2LFxuICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgbmFtZTogJ2lzRW5jcnlwdGVkJyxcbiAgICAgICAgICAgICAgbGF5b3V0OiB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb25zOiB7XG4gICAgICAgICAgICAgICAgICBsZzoge1xuICAgICAgICAgICAgICAgICAgICBjb2xTcGFuOiA2LFxuICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgbmFtZTogJ2VuYWJsZUV4cGlyYXRpb24nLFxuICAgICAgICAgICAgICBsYXlvdXQ6IHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbnM6IHtcbiAgICAgICAgICAgICAgICAgIGxnOiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbFNwYW46IDYsXG4gICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBuYW1lOiAncmVxdWlyZXNSZXZpZXcnLFxuICAgICAgICAgICAgICBsYXlvdXQ6IHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbnM6IHtcbiAgICAgICAgICAgICAgICAgIGxnOiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbFNwYW46IDYsXG4gICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBuYW1lOiAncmVxdWlyZXNEaXN0cmlidXRpb24nLFxuICAgICAgICAgICAgICBsYXlvdXQ6IHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbnM6IHtcbiAgICAgICAgICAgICAgICAgIGxnOiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbFNwYW46IDYsXG4gICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBuYW1lOiAnZW5hYmxlVmVyc2lvbmluZycsXG4gICAgICAgICAgICAgIGxheW91dDoge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uczoge1xuICAgICAgICAgICAgICAgICAgbGc6IHtcbiAgICAgICAgICAgICAgICAgICAgY29sU3BhbjogNixcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIG5hbWU6ICdtZXRhJyxcbiAgICAgICAgICAgICAgbGF5b3V0OiB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb25zOiB7XG4gICAgICAgICAgICAgICAgICBsZzoge1xuICAgICAgICAgICAgICAgICAgICBjb2xTcGFuOiAxMixcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIG5hbWU6ICd0eXBlJyxcbiAgICAgICAgICAgICAgbGF5b3V0OiB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb25zOiB7XG4gICAgICAgICAgICAgICAgICBsZzoge1xuICAgICAgICAgICAgICAgICAgICBjb2xTcGFuOiAxMixcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgXSxcbiAgICAgICAgfSxcbiAgICAgICAgdXBkYXRlOiB7XG4gICAgICAgICAgc2VjdGlvbnM6IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgaWQ6ICdzZWN0aW9uJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIGlkOiAnbWFuYWdlbWVudCcsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIF0sXG4gICAgICAgICAgcHJvcGVydGllczogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBuYW1lOiAnbmFtZScsXG4gICAgICAgICAgICAgIGxheW91dDoge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uczoge1xuICAgICAgICAgICAgICAgICAgbGc6IHtcbiAgICAgICAgICAgICAgICAgICAgY29sU3BhbjogNixcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIG5hbWU6ICd0aXRsZScsXG4gICAgICAgICAgICAgIGxheW91dDoge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uczoge1xuICAgICAgICAgICAgICAgICAgbGc6IHtcbiAgICAgICAgICAgICAgICAgICAgY29sU3BhbjogNixcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIG5hbWU6ICdtYXhTaXplJyxcbiAgICAgICAgICAgICAgbGF5b3V0OiB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb25zOiB7XG4gICAgICAgICAgICAgICAgICBsZzoge1xuICAgICAgICAgICAgICAgICAgICBjb2xTcGFuOiA2LFxuICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgbmFtZTogJ2lzRW5jcnlwdGVkJyxcbiAgICAgICAgICAgICAgbGF5b3V0OiB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb25zOiB7XG4gICAgICAgICAgICAgICAgICBsZzoge1xuICAgICAgICAgICAgICAgICAgICBjb2xTcGFuOiA2LFxuICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgbmFtZTogJ2VuYWJsZUV4cGlyYXRpb24nLFxuICAgICAgICAgICAgICBsYXlvdXQ6IHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbnM6IHtcbiAgICAgICAgICAgICAgICAgIGxnOiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbFNwYW46IDYsXG4gICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBuYW1lOiAncmVxdWlyZXNSZXZpZXcnLFxuICAgICAgICAgICAgICBsYXlvdXQ6IHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbnM6IHtcbiAgICAgICAgICAgICAgICAgIGxnOiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbFNwYW46IDYsXG4gICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBuYW1lOiAncmVxdWlyZXNEaXN0cmlidXRpb24nLFxuICAgICAgICAgICAgICBsYXlvdXQ6IHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbnM6IHtcbiAgICAgICAgICAgICAgICAgIGxnOiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbFNwYW46IDYsXG4gICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBuYW1lOiAnZW5hYmxlVmVyc2lvbmluZycsXG4gICAgICAgICAgICAgIGxheW91dDoge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uczoge1xuICAgICAgICAgICAgICAgICAgbGc6IHtcbiAgICAgICAgICAgICAgICAgICAgY29sU3BhbjogNixcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIG5hbWU6ICdtZXRhJyxcbiAgICAgICAgICAgICAgbGF5b3V0OiB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb25zOiB7XG4gICAgICAgICAgICAgICAgICBsZzoge1xuICAgICAgICAgICAgICAgICAgICBjb2xTcGFuOiAxMixcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIG5hbWU6ICd0eXBlJyxcbiAgICAgICAgICAgICAgbGF5b3V0OiB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb25zOiB7XG4gICAgICAgICAgICAgICAgICBsZzoge1xuICAgICAgICAgICAgICAgICAgICBjb2xTcGFuOiAxMixcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgXSxcbiAgICAgICAgfSxcbiAgICAgICAgc2luZ2xlOiB7XG4gICAgICAgICAgdGl0bGU6ICd7e3RpdGxlfX0nLFxuICAgICAgICAgIHNlY3Rpb25zOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIGlkOiAnc2VjdGlvbicsXG4gICAgICAgICAgICAgIGxheW91dDoge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uczoge1xuICAgICAgICAgICAgICAgICAgbGc6IHtcbiAgICAgICAgICAgICAgICAgICAgY29sU3BhbjogMTIsXG4gICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBpZDogJ21hbmFnZW1lbnQnLFxuICAgICAgICAgICAgICBsYXlvdXQ6IHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbnM6IHtcbiAgICAgICAgICAgICAgICAgIGxnOiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbFNwYW46IDEyLFxuICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICBdLFxuICAgICAgICAgIHByb3BlcnRpZXM6IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgbmFtZTogJ25hbWUnLFxuICAgICAgICAgICAgICBsYXlvdXQ6IHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbnM6IHtcbiAgICAgICAgICAgICAgICAgIGxnOiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbFNwYW46IDYsXG4gICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBuYW1lOiAndGl0bGUnLFxuICAgICAgICAgICAgICBsYXlvdXQ6IHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbnM6IHtcbiAgICAgICAgICAgICAgICAgIGxnOiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbFNwYW46IDYsXG4gICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBuYW1lOiAnbWF4U2l6ZScsXG4gICAgICAgICAgICAgIGxheW91dDoge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uczoge1xuICAgICAgICAgICAgICAgICAgbGc6IHtcbiAgICAgICAgICAgICAgICAgICAgY29sU3BhbjogNixcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIG5hbWU6ICdpc0VuY3J5cHRlZCcsXG4gICAgICAgICAgICAgIGxheW91dDoge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uczoge1xuICAgICAgICAgICAgICAgICAgbGc6IHtcbiAgICAgICAgICAgICAgICAgICAgY29sU3BhbjogNixcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIG5hbWU6ICdlbmFibGVFeHBpcmF0aW9uJyxcbiAgICAgICAgICAgICAgbGF5b3V0OiB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb25zOiB7XG4gICAgICAgICAgICAgICAgICBsZzoge1xuICAgICAgICAgICAgICAgICAgICBjb2xTcGFuOiA2LFxuICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgbmFtZTogJ3JlcXVpcmVzUmV2aWV3JyxcbiAgICAgICAgICAgICAgbGF5b3V0OiB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb25zOiB7XG4gICAgICAgICAgICAgICAgICBsZzoge1xuICAgICAgICAgICAgICAgICAgICBjb2xTcGFuOiA2LFxuICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgbmFtZTogJ3JlcXVpcmVzRGlzdHJpYnV0aW9uJyxcbiAgICAgICAgICAgICAgbGF5b3V0OiB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb25zOiB7XG4gICAgICAgICAgICAgICAgICBsZzoge1xuICAgICAgICAgICAgICAgICAgICBjb2xTcGFuOiA2LFxuICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgbmFtZTogJ2VuYWJsZVZlcnNpb25pbmcnLFxuICAgICAgICAgICAgICBsYXlvdXQ6IHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbnM6IHtcbiAgICAgICAgICAgICAgICAgIGxnOiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbFNwYW46IDYsXG4gICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBuYW1lOiAnbWV0YScsXG4gICAgICAgICAgICAgIGxheW91dDoge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uczoge1xuICAgICAgICAgICAgICAgICAgbGc6IHtcbiAgICAgICAgICAgICAgICAgICAgY29sU3BhbjogMTIsXG4gICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBuYW1lOiAndHlwZScsXG4gICAgICAgICAgICAgIGxheW91dDoge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uczoge1xuICAgICAgICAgICAgICAgICAgbGc6IHtcbiAgICAgICAgICAgICAgICAgICAgY29sU3BhbjogMTIsXG4gICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIF0sXG4gICAgICAgICAgYWN0aW9uczogW10sXG4gICAgICAgIH0sXG4gICAgICAgIGxpc3Q6IHtcbiAgICAgICAgICBhY3Rpb25zOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIHRpdGxlOiBgdChcImNyZWF0ZVwiLCB7IHNjb3BlOiBcImNvbW1vblwiIH0pYCxcbiAgICAgICAgICAgICAgY29tbWFuZDogJ2NyZWF0ZS1lbnRpdHknLFxuICAgICAgICAgICAgICBwcmlvcml0eTogJ3ByaW1hcnknLFxuICAgICAgICAgICAgICB0eXBlOiAnY3JlYXRlJyxcbiAgICAgICAgICAgICAgc2NvcGU6IEFYUEVudGl0eUNvbW1hbmRTY29wZS5UeXBlTGV2ZWwsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICB0aXRsZTogJ3QoXCJkZWxldGVJdGVtc1wiLCB7IHNjb3BlOiBcImNvbW1vblwiIH0pJyxcbiAgICAgICAgICAgICAgY29tbWFuZDogJ2RlbGV0ZS1lbnRpdHknLFxuICAgICAgICAgICAgICBwcmlvcml0eTogJ3ByaW1hcnknLFxuICAgICAgICAgICAgICB0eXBlOiAnZGVsZXRlJyxcbiAgICAgICAgICAgICAgc2NvcGU6IEFYUEVudGl0eUNvbW1hbmRTY29wZS5TZWxlY3RlZCxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIHRpdGxlOiAndChcImRldGFpbFwiLCB7IHNjb3BlOiBcImNvbW1vblwiIH0pJyxcbiAgICAgICAgICAgICAgY29tbWFuZDogJ29wZW4tZW50aXR5JyxcbiAgICAgICAgICAgICAgcHJpb3JpdHk6ICdzZWNvbmRhcnknLFxuICAgICAgICAgICAgICB0eXBlOiAndmlldycsXG4gICAgICAgICAgICAgIHNjb3BlOiBBWFBFbnRpdHlDb21tYW5kU2NvcGUuSW5kaXZpZHVhbCxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIHRpdGxlOiAndChcImRlbGV0ZVwiLCB7IHNjb3BlOiBcImNvbW1vblwiIH0pJyxcbiAgICAgICAgICAgICAgY29tbWFuZDogJ2RlbGV0ZS1lbnRpdHknLFxuICAgICAgICAgICAgICBwcmlvcml0eTogJ3NlY29uZGFyeScsXG4gICAgICAgICAgICAgIHR5cGU6ICdkZWxldGUnLFxuICAgICAgICAgICAgICBzY29wZTogQVhQRW50aXR5Q29tbWFuZFNjb3BlLkluZGl2aWR1YWwsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIF0sXG4gICAgICAgICAgdmlld3M6IFtjcmVhdGVBbGxRdWVyeVZpZXcoKV0sXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgIH0sXG4gIH07XG5cbiAgcmV0dXJuIGVudGl0eURlZjtcbn1cbiJdfQ==","import { NgModule } from '@angular/core';\nimport { AXMDocumentTypeService, AXMDocumentTypeServiceImpl } from './document-type.service';\nimport * as i0 from \"@angular/core\";\nexport class AXMDocumentManagementDocumentTypeEntityModule {\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: AXMDocumentManagementDocumentTypeEntityModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }\n static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: \"14.0.0\", version: \"20.1.8\", ngImport: i0, type: AXMDocumentManagementDocumentTypeEntityModule }); }\n static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: AXMDocumentManagementDocumentTypeEntityModule, providers: [\n {\n provide: AXMDocumentTypeService,\n useClass: AXMDocumentTypeServiceImpl,\n },\n ] }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: AXMDocumentManagementDocumentTypeEntityModule, decorators: [{\n type: NgModule,\n args: [{\n imports: [],\n exports: [],\n declarations: [],\n providers: [\n {\n provide: AXMDocumentTypeService,\n useClass: AXMDocumentTypeServiceImpl,\n },\n ],\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG9jdW1lbnQtdHlwZS5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL21vZHVsZXMvZG9jdW1lbnQtbWFuYWdlbWVudC9zcmMvbGliL2VudGl0aWVzL2RvY3VtZW50LXR5cGUvZG9jdW1lbnQtdHlwZS5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQzs7QUFhN0YsTUFBTSxPQUFPLDZDQUE2Qzs4R0FBN0MsNkNBQTZDOytHQUE3Qyw2Q0FBNkM7K0dBQTdDLDZDQUE2QyxhQVA3QztZQUNUO2dCQUNFLE9BQU8sRUFBRSxzQkFBc0I7Z0JBQy9CLFFBQVEsRUFBRSwwQkFBMEI7YUFDckM7U0FDRjs7MkZBRVUsNkNBQTZDO2tCQVh6RCxRQUFRO21CQUFDO29CQUNSLE9BQU8sRUFBRSxFQUFFO29CQUNYLE9BQU8sRUFBRSxFQUFFO29CQUNYLFlBQVksRUFBRSxFQUFFO29CQUNoQixTQUFTLEVBQUU7d0JBQ1Q7NEJBQ0UsT0FBTyxFQUFFLHNCQUFzQjs0QkFDL0IsUUFBUSxFQUFFLDBCQUEwQjt5QkFDckM7cUJBQ0Y7aUJBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQVhNRG9jdW1lbnRUeXBlU2VydmljZSwgQVhNRG9jdW1lbnRUeXBlU2VydmljZUltcGwgfSBmcm9tICcuL2RvY3VtZW50LXR5cGUuc2VydmljZSc7XG5cbkBOZ01vZHVsZSh7XG4gIGltcG9ydHM6IFtdLFxuICBleHBvcnRzOiBbXSxcbiAgZGVjbGFyYXRpb25zOiBbXSxcbiAgcHJvdmlkZXJzOiBbXG4gICAge1xuICAgICAgcHJvdmlkZTogQVhNRG9jdW1lbnRUeXBlU2VydmljZSxcbiAgICAgIHVzZUNsYXNzOiBBWE1Eb2N1bWVudFR5cGVTZXJ2aWNlSW1wbCxcbiAgICB9LFxuICBdLFxufSlcbmV4cG9ydCBjbGFzcyBBWE1Eb2N1bWVudE1hbmFnZW1lbnREb2N1bWVudFR5cGVFbnRpdHlNb2R1bGUge31cbiJdfQ==","import { AXMEntityCrudServiceImpl } from '@acorex/platform/layout/entity';\nimport { Injectable } from '@angular/core';\nimport { RootConfig } from '../../const';\nimport * as i0 from \"@angular/core\";\nexport class AXMDocumentManagementDocumentTypeMetaDefinitionEntityService extends AXMEntityCrudServiceImpl {\n}\nexport class AXMDocumentManagementDocumentTypeMetaDefinitionEntityServiceImpl extends AXMDocumentManagementDocumentTypeMetaDefinitionEntityService {\n constructor() {\n super(`${RootConfig.module.name}.${RootConfig.entities.documentTypeMetaDefinition}`);\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: AXMDocumentManagementDocumentTypeMetaDefinitionEntityServiceImpl, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }\n static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: AXMDocumentManagementDocumentTypeMetaDefinitionEntityServiceImpl }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: AXMDocumentManagementDocumentTypeMetaDefinitionEntityServiceImpl, decorators: [{\n type: Injectable\n }], ctorParameters: () => [] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG9jdW1lbnQtdHlwZS1tZXRhLWRlZmluaXRpb24uc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbW9kdWxlcy9kb2N1bWVudC1tYW5hZ2VtZW50L3NyYy9saWIvZW50aXRpZXMvZG9jdW1lbnQtdHlwZS1tZXRhLWRlZmluaXRpb24vZG9jdW1lbnQtdHlwZS1tZXRhLWRlZmluaXRpb24uc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUMxRSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxhQUFhLENBQUM7O0FBR3pDLE1BQU0sT0FBZ0IsNERBQTZELFNBQVEsd0JBRzFGO0NBQUc7QUFHSixNQUFNLE9BQU8sZ0VBQWlFLFNBQVEsNERBQTREO0lBQ2hKO1FBQ0UsS0FBSyxDQUFDLEdBQUcsVUFBVSxDQUFDLE1BQU0sQ0FBQyxJQUFJLElBQUksVUFBVSxDQUFDLFFBQVEsQ0FBQywwQkFBMEIsRUFBRSxDQUFDLENBQUM7SUFDdkYsQ0FBQzs4R0FIVSxnRUFBZ0U7a0hBQWhFLGdFQUFnRTs7MkZBQWhFLGdFQUFnRTtrQkFENUUsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFYTUVudGl0eUNydWRTZXJ2aWNlSW1wbCB9IGZyb20gJ0BhY29yZXgvcGxhdGZvcm0vbGF5b3V0L2VudGl0eSc7XG5pbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBSb290Q29uZmlnIH0gZnJvbSAnLi4vLi4vY29uc3QnO1xuaW1wb3J0IHsgQVhNRG9jdW1lbnRNYW5hZ2VtZW50RG9jdW1lbnRUeXBlTWV0YURlZmluaXRpb25FbnRpdHlNb2RlbCB9IGZyb20gJy4vZG9jdW1lbnQtdHlwZS1tZXRhLWRlZmluaXRpb24udHlwZXMnO1xuXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgQVhNRG9jdW1lbnRNYW5hZ2VtZW50RG9jdW1lbnRUeXBlTWV0YURlZmluaXRpb25FbnRpdHlTZXJ2aWNlIGV4dGVuZHMgQVhNRW50aXR5Q3J1ZFNlcnZpY2VJbXBsPFxuICBzdHJpbmcsXG4gIEFYTURvY3VtZW50TWFuYWdlbWVudERvY3VtZW50VHlwZU1ldGFEZWZpbml0aW9uRW50aXR5TW9kZWxcbj4ge31cblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIEFYTURvY3VtZW50TWFuYWdlbWVudERvY3VtZW50VHlwZU1ldGFEZWZpbml0aW9uRW50aXR5U2VydmljZUltcGwgZXh0ZW5kcyBBWE1Eb2N1bWVudE1hbmFnZW1lbnREb2N1bWVudFR5cGVNZXRhRGVmaW5pdGlvbkVudGl0eVNlcnZpY2Uge1xuICBjb25zdHJ1Y3RvcigpIHtcbiAgICBzdXBlcihgJHtSb290Q29uZmlnLm1vZHVsZS5uYW1lfS4ke1Jvb3RDb25maWcuZW50aXRpZXMuZG9jdW1lbnRUeXBlTWV0YURlZmluaXRpb259YCk7XG4gIH1cbn1cbiJdfQ==","import { AXPEntityCommandScope, AXPEntityQueryType, createAllQueryView } from '@acorex/platform/common';\nimport { AXPWidgetsCatalog } from '@acorex/platform/layout/builder';\nimport { RootConfig } from '../../const';\nimport { AXMDocumentManagementDocumentTypeMetaDefinitionEntityService } from './document-type-meta-definition.service';\nexport async function documentTypeMetaDefinitionfactory(injector) {\n const dataService = injector.get(AXMDocumentManagementDocumentTypeMetaDefinitionEntityService);\n const entityDef = {\n module: RootConfig.module.name,\n name: RootConfig.entities.document.name,\n source: '',\n title: RootConfig.entities.document.title,\n formats: {\n individual: RootConfig.entities.document.title,\n plural: RootConfig.entities.document.titlePlural,\n searchResult: {\n title: '{{ title }}',\n description: RootConfig.module.title,\n },\n },\n relatedEntities: [],\n groups: [\n {\n id: 'section',\n title: RootConfig.entities.document.title,\n },\n ],\n properties: [\n {\n name: 'name',\n title: 't(\"name\", { scope: \"common\" })',\n groupId: 'section',\n options: {\n sort: {\n enabled: true,\n },\n },\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.text,\n },\n },\n validations: [\n {\n rule: 'required',\n },\n ],\n },\n {\n name: 'title',\n title: 't(\"title\", { scope: \"common\" })',\n groupId: 'section',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.text,\n },\n },\n validations: [\n {\n rule: 'required',\n },\n ],\n },\n ],\n columns: [{ name: 'name' }, { name: 'title' }],\n commands: {\n create: {\n execute: async (data) => {\n const res = await dataService.insertOne(data);\n return { id: res };\n },\n },\n delete: {\n execute: async (id) => {\n return await dataService.deleteOne(id);\n },\n },\n update: {\n execute: async (data) => {\n return await dataService.updateOne(data.id, data);\n },\n },\n },\n queries: {\n byKey: {\n execute: async (id) => {\n return await dataService.getOne(id);\n },\n type: AXPEntityQueryType.Single,\n },\n list: {\n execute: async (e) => {\n return await dataService.query(e);\n },\n type: AXPEntityQueryType.List,\n },\n },\n interfaces: {\n master: {\n create: {\n sections: [\n {\n id: 'section',\n },\n ],\n properties: [\n {\n name: 'name',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n },\n },\n },\n },\n {\n name: 'title',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n },\n },\n },\n },\n ],\n },\n update: {\n sections: [\n {\n id: 'section',\n },\n ],\n properties: [\n {\n name: 'name',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n },\n },\n },\n },\n {\n name: 'title',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n },\n },\n },\n },\n ],\n },\n single: {\n title: '{{title}}',\n sections: [\n {\n id: 'section',\n layout: {\n positions: {\n lg: {\n colSpan: 12,\n },\n },\n },\n },\n ],\n properties: [\n {\n name: 'name',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n },\n },\n },\n },\n {\n name: 'title',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n },\n },\n },\n },\n ],\n actions: [],\n },\n list: {\n actions: [\n {\n title: `t(\"create\", { scope: \"common\" })`,\n command: 'create-entity',\n priority: 'primary',\n type: 'create',\n scope: AXPEntityCommandScope.TypeLevel,\n },\n {\n title: 't(\"deleteItems\", { scope: \"common\" })',\n command: 'delete-entity',\n priority: 'primary',\n type: 'delete',\n scope: AXPEntityCommandScope.Selected,\n },\n {\n title: 't(\"detail\", { scope: \"common\" })',\n command: 'open-entity',\n priority: 'secondary',\n type: 'view',\n scope: AXPEntityCommandScope.Individual,\n },\n {\n title: 't(\"delete\", { scope: \"common\" })',\n command: 'delete-entity',\n priority: 'secondary',\n type: 'delete',\n scope: AXPEntityCommandScope.Individual,\n },\n ],\n views: [createAllQueryView({ sorts: [{ name: 'title', dir: 'asc' }] })],\n },\n },\n },\n };\n return entityDef;\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG9jdW1lbnQtdHlwZS1tZXRhLWRlZmluaXRpb24uZW50aXR5LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tb2R1bGVzL2RvY3VtZW50LW1hbmFnZW1lbnQvc3JjL2xpYi9lbnRpdGllcy9kb2N1bWVudC10eXBlLW1ldGEtZGVmaW5pdGlvbi9kb2N1bWVudC10eXBlLW1ldGEtZGVmaW5pdGlvbi5lbnRpdHkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFhLHFCQUFxQixFQUFFLGtCQUFrQixFQUFFLGtCQUFrQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDbkgsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFFcEUsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUN6QyxPQUFPLEVBQUUsNERBQTRELEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQztBQUV2SCxNQUFNLENBQUMsS0FBSyxVQUFVLGlDQUFpQyxDQUFDLFFBQWtCO0lBQ3hFLE1BQU0sV0FBVyxHQUFHLFFBQVEsQ0FBQyxHQUFHLENBQUMsNERBQTRELENBQUMsQ0FBQztJQUUvRixNQUFNLFNBQVMsR0FBYztRQUMzQixNQUFNLEVBQUUsVUFBVSxDQUFDLE1BQU0sQ0FBQyxJQUFJO1FBQzlCLElBQUksRUFBRSxVQUFVLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxJQUFJO1FBQ3ZDLE1BQU0sRUFBRSxFQUFFO1FBQ1YsS0FBSyxFQUFFLFVBQVUsQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLEtBQUs7UUFDekMsT0FBTyxFQUFFO1lBQ1AsVUFBVSxFQUFFLFVBQVUsQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLEtBQUs7WUFDOUMsTUFBTSxFQUFFLFVBQVUsQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLFdBQVc7WUFDaEQsWUFBWSxFQUFFO2dCQUNaLEtBQUssRUFBRSxhQUFhO2dC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Y29wZSwgQVhQRW50aXR5UXVlcnlUeXBlLCBjcmVhdGVBbGxRdWVyeVZpZXcgfSBmcm9tICdAYWNvcmV4L3BsYXRmb3JtL2NvbW1vbic7XG5pbXBvcnQgeyBBWFBXaWRnZXRzQ2F0YWxvZyB9IGZyb20gJ0BhY29yZXgvcGxhdGZvcm0vbGF5b3V0L2J1aWxkZXInO1xuaW1wb3J0IHsgSW5qZWN0b3IgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFJvb3RDb25maWcgfSBmcm9tICcuLi8uLi9jb25zdCc7XG5pbXBvcnQgeyBBWE1Eb2N1bWVudE1hbmFnZW1lbnREb2N1bWVudFR5cGVNZXRhRGVmaW5pdGlvbkVudGl0eVNlcnZpY2UgfSBmcm9tICcuL2RvY3VtZW50LXR5cGUtbWV0YS1kZWZpbml0aW9uLnNlcnZpY2UnO1xuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gZG9jdW1lbnRUeXBlTWV0YURlZmluaXRpb25mYWN0b3J5KGluamVjdG9yOiBJbmplY3Rvcik6IFByb21pc2U8QVhQRW50aXR5IHwgbnVsbD4ge1xuICBjb25zdCBkYXRhU2VydmljZSA9IGluamVjdG9yLmdldChBWE1Eb2N1bWVudE1hbmFnZW1lbnREb2N1bWVudFR5cGVNZXRhRGVmaW5pdGlvbkVudGl0eVNlcnZpY2UpO1xuXG4gIGNvbnN0IGVudGl0eURlZjogQVhQRW50aXR5ID0ge1xuICAgIG1vZHVsZTogUm9vdENvbmZpZy5tb2R1bGUubmFtZSxcbiAgICBuYW1lOiBSb290Q29uZmlnLmVudGl0aWVzLmRvY3VtZW50Lm5hbWUsXG4gICAgc291cmNlOiAnJyxcbiAgICB0aXRsZTogUm9vdENvbmZpZy5lbnRpdGllcy5kb2N1bWVudC50aXRsZSxcbiAgICBmb3JtYXRzOiB7XG4gICAgICBpbmRpdmlkdWFsOiBSb290Q29uZmlnLmVudGl0aWVzLmRvY3VtZW50LnRpdGxlLFxuICAgICAgcGx1cmFsOiBSb290Q29uZmlnLmVudGl0aWVzLmRvY3VtZW50LnRpdGxlUGx1cmFsLFxuICAgICAgc2VhcmNoUmVzdWx0OiB7XG4gICAgICAgIHRpdGxlOiAne3sgdGl0bGUgfX0nLFxuICAgICAgICBkZXNjcmlwdGlvbjogUm9vdENvbmZpZy5tb2R1bGUudGl0bGUsXG4gICAgICB9LFxuICAgIH0sXG4gICAgcmVsYXRlZEVudGl0aWVzOiBbXSxcbiAgICBncm91cHM6IFtcbiAgICAgIHtcbiAgICAgICAgaWQ6ICdzZWN0aW9uJyxcbiAgICAgICAgdGl0bGU6IFJvb3RDb25maWcuZW50aXRpZXMuZG9jdW1lbnQudGl0bGUsXG4gICAgICB9LFxuICAgIF0sXG4gICAgcHJvcGVydGllczogW1xuICAgICAge1xuICAgICAgICBuYW1lOiAnbmFtZScsXG4gICAgICAgIHRpdGxlOiAndChcIm5hbWVcIiwgeyBzY29wZTogXCJjb21tb25cIiB9KScsXG4gICAgICAgIGdyb3VwSWQ6ICdzZWN0aW9uJyxcbiAgICAgICAgb3B0aW9uczoge1xuICAgICAgICAgIHNvcnQ6IHtcbiAgICAgICAgICAgIGVuYWJsZWQ6IHRydWUsXG4gICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgICAgc2NoZW1hOiB7XG4gICAgICAgICAgZGF0YVR5cGU6ICdzdHJpbmcnLFxuICAgICAgICAgIGludGVyZmFjZToge1xuICAgICAgICAgICAgdHlwZTogQVhQV2lkZ2V0c0NhdGFsb2cudGV4dCxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgICB2YWxpZGF0aW9uczogW1xuICAgICAgICAgIHtcbiAgICAgICAgICAgIHJ1bGU6ICdyZXF1aXJlZCcsXG4gICAgICAgICAgfSxcbiAgICAgICAgXSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIG5hbWU6ICd0aXRsZScsXG4gICAgICAgIHRpdGxlOiAndChcInRpdGxlXCIsIHsgc2NvcGU6IFwiY29tbW9uXCIgfSknLFxuICAgICAgICBncm91cElkOiAnc2VjdGlvbicsXG4gICAgICAgIHNjaGVtYToge1xuICAgICAgICAgIGRhdGFUeXBlOiAnc3RyaW5nJyxcbiAgICAgICAgICBpbnRlcmZhY2U6IHtcbiAgICAgICAgICAgIHR5cGU6IEFYUFdpZGdldHNDYXRhbG9nLnRleHQsXG4gICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgICAgdmFsaWRhdGlvbnM6IFtcbiAgICAgICAgICB7XG4gICAgICAgICAgICBydWxlOiAncmVxdWlyZWQnLFxuICAgICAgICAgIH0sXG4gICAgICAgIF0sXG4gICAgICB9LFxuICAgIF0sXG4gICAgY29sdW1uczogW3sgbmFtZTogJ25hbWUnIH0sIHsgbmFtZTogJ3RpdGxlJyB9XSxcbiAgICBjb21tYW5kczoge1xuICAgICAgY3JlYXRlOiB7XG4gICAgICAgIGV4ZWN1dGU6IGFzeW5jIChkYXRhOiBhbnkpID0+IHtcbiAgICAgICAgICBjb25zdCByZXMgPSBhd2FpdCBkYXRhU2VydmljZS5pbnNlcnRPbmUoZGF0YSk7XG4gICAgICAgICAgcmV0dXJuIHsgaWQ6IHJlcyB9O1xuICAgICAgICB9LFxuICAgICAgfSxcbiAgICAgIGRlbGV0ZToge1xuICAgICAgICBleGVjdXRlOiBhc3luYyAoaWQ6IGFueSkgPT4ge1xuICAgICAgICAgIHJldHVybiBhd2FpdCBkYXRhU2VydmljZS5kZWxldGVPbmUoaWQpO1xuICAgICAgICB9LFxuICAgICAgfSxcbiAgICAgIHVwZGF0ZToge1xuICAgICAgICBleGVjdXRlOiBhc3luYyAoZGF0YTogYW55KSA9PiB7XG4gICAgICAgICAgcmV0dXJuIGF3YWl0IGRhdGFTZXJ2aWNlLnVwZGF0ZU9uZShkYXRhLmlkLCBkYXRhKTtcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgfSxcbiAgICBxdWVyaWVzOiB7XG4gICAgICBieUtleToge1xuICAgICAgICBleGVjdXRlOiBhc3luYyAoaWQ6IHN0cmluZykgPT4ge1xuICAgICAgICAgIHJldHVybiBhd2FpdCBkYXRhU2VydmljZS5nZXRPbmUoaWQpO1xuICAgICAgICB9LFxuICAgICAgICB0eXBlOiBBWFBFbnRpdHlRdWVyeVR5cGUuU2luZ2xlLFxuICAgICAgfSxcbiAgICAgIGxpc3Q6IHtcbiAgICAgICAgZXhlY3V0ZTogYXN5bmMgKGU6IGFueSkgPT4ge1xuICAgICAgICAgIHJldHVybiBhd2FpdCBkYXRhU2VydmljZS5xdWVyeShlKTtcbiAgICAgICAgfSxcbiAgICAgICAgdHlwZTogQVhQRW50aXR5UXVlcnlUeXBlLkxpc3QsXG4gICAgICB9LFxuICAgIH0sXG4gICAgaW50ZXJmYWNlczoge1xuICAgICAgbWFzdGVyOiB7XG4gICAgICAgIGNyZWF0ZToge1xuICAgICAgICAgIHNlY3Rpb25zOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIGlkOiAnc2VjdGlvbicsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIF0sXG4gICAgICAgICAgcHJvcGVydGllczogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBuYW1lOiAnbmFtZScsXG4gICAgICAgICAgICAgIGxheW91dDoge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uczoge1xuICAgICAgICAgICAgICAgICAgbGc6IHtcbiAgICAgICAgICAgICAgICAgICAgY29sU3BhbjogNixcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIG5hbWU6ICd0aXRsZScsXG4gICAgICAgICAgICAgIGxheW91dDoge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uczoge1xuICAgICAgICAgICAgICAgICAgbGc6IHtcbiAgICAgICAgICAgICAgICAgICAgY29sU3BhbjogNixcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgXSxcbiAgICAgICAgfSxcbiAgICAgICAgdXBkYXRlOiB7XG4gICAgICAgICAgc2VjdGlvbnM6IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgaWQ6ICdzZWN0aW9uJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgXSxcbiAgICAgICAgICBwcm9wZXJ0aWVzOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIG5hbWU6ICduYW1lJyxcbiAgICAgICAgICAgICAgbGF5b3V0OiB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb25zOiB7XG4gICAgICAgICAgICAgICAgICBsZzoge1xuICAgICAgICAgICAgICAgICAgICBjb2xTcGFuOiA2LFxuICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgbmFtZTogJ3RpdGxlJyxcbiAgICAgICAgICAgICAgbGF5b3V0OiB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb25zOiB7XG4gICAgICAgICAgICAgICAgICBsZzoge1xuICAgICAgICAgICAgICAgICAgICBjb2xTcGFuOiA2LFxuICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICBdLFxuICAgICAgICB9LFxuICAgICAgICBzaW5nbGU6IHtcbiAgICAgICAgICB0aXRsZTogJ3t7dGl0bGV9fScsXG4gICAgICAgICAgc2VjdGlvbnM6IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgaWQ6ICdzZWN0aW9uJyxcbiAgICAgICAgICAgICAgbGF5b3V0OiB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb25zOiB7XG4gICAgICAgICAgICAgICAgICBsZzoge1xuICAgICAgICAgICAgICAgICAgICBjb2xTcGFuOiAxMixcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgXSxcbiAgICAgICAgICBwcm9wZXJ0aWVzOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIG5hbWU6ICduYW1lJyxcbiAgICAgICAgICAgICAgbGF5b3V0OiB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb25zOiB7XG4gICAgICAgICAgICAgICAgICBsZzoge1xuICAgICAgICAgICAgICAgICAgICBjb2xTcGFuOiA2LFxuICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgbmFtZTogJ3RpdGxlJyxcbiAgICAgICAgICAgICAgbGF5b3V0OiB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb25zOiB7XG4gICAgICAgICAgICAgICAgICBsZzoge1xuICAgICAgICAgICAgICAgICAgICBjb2xTcGFuOiA2LFxuICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICBdLFxuICAgICAgICAgIGFjdGlvbnM6IFtdLFxuICAgICAgICB9LFxuICAgICAgICBsaXN0OiB7XG4gICAgICAgICAgYWN0aW9uczogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICB0aXRsZTogYHQoXCJjcmVhdGVcIiwgeyBzY29wZTogXCJjb21tb25cIiB9KWAsXG4gICAgICAgICAgICAgIGNvbW1hbmQ6ICdjcmVhdGUtZW50aXR5JyxcbiAgICAgICAgICAgICAgcHJpb3JpdHk6ICdwcmltYXJ5JyxcbiAgICAgICAgICAgICAgdHlwZTogJ2NyZWF0ZScsXG4gICAgICAgICAgICAgIHNjb3BlOiBBWFBFbnRpdHlDb21tYW5kU2NvcGUuVHlwZUxldmVsLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgdGl0bGU6ICd0KFwiZGVsZXRlSXRlbXNcIiwgeyBzY29wZTogXCJjb21tb25cIiB9KScsXG4gICAgICAgICAgICAgIGNvbW1hbmQ6ICdkZWxldGUtZW50aXR5JyxcbiAgICAgICAgICAgICAgcHJpb3JpdHk6ICdwcmltYXJ5JyxcbiAgICAgICAgICAgICAgdHlwZTogJ2RlbGV0ZScsXG4gICAgICAgICAgICAgIHNjb3BlOiBBWFBFbnRpdHlDb21tYW5kU2NvcGUuU2VsZWN0ZWQsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICB0aXRsZTogJ3QoXCJkZXRhaWxcIiwgeyBzY29wZTogXCJjb21tb25cIiB9KScsXG4gICAgICAgICAgICAgIGNvbW1hbmQ6ICdvcGVuLWVudGl0eScsXG4gICAgICAgICAgICAgIHByaW9yaXR5OiAnc2Vjb25kYXJ5JyxcbiAgICAgICAgICAgICAgdHlwZTogJ3ZpZXcnLFxuICAgICAgICAgICAgICBzY29wZTogQVhQRW50aXR5Q29tbWFuZFNjb3BlLkluZGl2aWR1YWwsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICB0aXRsZTogJ3QoXCJkZWxldGVcIiwgeyBzY29wZTogXCJjb21tb25cIiB9KScsXG4gICAgICAgICAgICAgIGNvbW1hbmQ6ICdkZWxldGUtZW50aXR5JyxcbiAgICAgICAgICAgICAgcHJpb3JpdHk6ICdzZWNvbmRhcnknLFxuICAgICAgICAgICAgICB0eXBlOiAnZGVsZXRlJyxcbiAgICAgICAgICAgICAgc2NvcGU6IEFYUEVudGl0eUNvbW1hbmRTY29wZS5JbmRpdmlkdWFsLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICBdLFxuICAgICAgICAgIHZpZXdzOiBbY3JlYXRlQWxsUXVlcnlWaWV3KHsgc29ydHM6IFt7IG5hbWU6ICd0aXRsZScsIGRpcjogJ2FzYycgfV0gfSldLFxuICAgICAgICB9LFxuICAgICAgfSxcbiAgICB9LFxuICB9O1xuXG4gIHJldHVybiBlbnRpdHlEZWY7XG59XG4iXX0=","import { NgModule } from '@angular/core';\nimport { AXMDocumentManagementDocumentTypeMetaDefinitionEntityService, AXMDocumentManagementDocumentTypeMetaDefinitionEntityServiceImpl } from './document-type-meta-definition.service';\nimport * as i0 from \"@angular/core\";\nexport class AXMDocumentManagementDocumentTypeMetaDefinitionEntityModule {\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: AXMDocumentManagementDocumentTypeMetaDefinitionEntityModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }\n static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: \"14.0.0\", version: \"20.1.8\", ngImport: i0, type: AXMDocumentManagementDocumentTypeMetaDefinitionEntityModule }); }\n static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: AXMDocumentManagementDocumentTypeMetaDefinitionEntityModule, providers: [\n {\n provide: AXMDocumentManagementDocumentTypeMetaDefinitionEntityService,\n useClass: AXMDocumentManagementDocumentTypeMetaDefinitionEntityServiceImpl,\n },\n ] }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: AXMDocumentManagementDocumentTypeMetaDefinitionEntityModule, decorators: [{\n type: NgModule,\n args: [{\n imports: [],\n exports: [],\n declarations: [],\n providers: [\n {\n provide: AXMDocumentManagementDocumentTypeMetaDefinitionEntityService,\n useClass: AXMDocumentManagementDocumentTypeMetaDefinitionEntityServiceImpl,\n },\n ],\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG9jdW1lbnQtdHlwZS1tZXRhLWRlZmluaXRpb24ubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tb2R1bGVzL2RvY3VtZW50LW1hbmFnZW1lbnQvc3JjL2xpYi9lbnRpdGllcy9kb2N1bWVudC10eXBlLW1ldGEtZGVmaW5pdGlvbi9kb2N1bWVudC10eXBlLW1ldGEtZGVmaW5pdGlvbi5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQ0wsNERBQTRELEVBQzVELGdFQUFnRSxFQUNqRSxNQUFNLHlDQUF5QyxDQUFDOztBQWFqRCxNQUFNLE9BQU8sMkRBQTJEOzhHQUEzRCwyREFBMkQ7K0dBQTNELDJEQUEyRDsrR0FBM0QsMkRBQTJELGFBUDNEO1lBQ1Q7Z0JBQ0UsT0FBTyxFQUFFLDREQUE0RDtnQkFDckUsUUFBUSxFQUFFLGdFQUFnRTthQUMzRTtTQUNGOzsyRkFFVSwyREFBMkQ7a0JBWHZFLFFBQVE7bUJBQUM7b0JBQ1IsT0FBTyxFQUFFLEVBQUU7b0JBQ1gsT0FBTyxFQUFFLEVBQUU7b0JBQ1gsWUFBWSxFQUFFLEVBQUU7b0JBQ2hCLFNBQVMsRUFBRTt3QkFDVDs0QkFDRSxPQUFPLEVBQUUsNERBQTREOzRCQUNyRSxRQUFRLEVBQUUsZ0VBQWdFO3lCQUMzRTtxQkFDRjtpQkFDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICBBWE1Eb2N1bWVudE1hbmFnZW1lbnREb2N1bWVudFR5cGVNZXRhRGVmaW5pdGlvbkVudGl0eVNlcnZpY2UsXG4gIEFYTURvY3VtZW50TWFuYWdlbWVudERvY3VtZW50VHlwZU1ldGFEZWZpbml0aW9uRW50aXR5U2VydmljZUltcGxcbn0gZnJvbSAnLi9kb2N1bWVudC10eXBlLW1ldGEtZGVmaW5pdGlvbi5zZXJ2aWNlJztcblxuQE5nTW9kdWxlKHtcbiAgaW1wb3J0czogW10sXG4gIGV4cG9ydHM6IFtdLFxuICBkZWNsYXJhdGlvbnM6IFtdLFxuICBwcm92aWRlcnM6IFtcbiAgICB7XG4gICAgICBwcm92aWRlOiBBWE1Eb2N1bWVudE1hbmFnZW1lbnREb2N1bWVudFR5cGVNZXRhRGVmaW5pdGlvbkVudGl0eVNlcnZpY2UsXG4gICAgICB1c2VDbGFzczogQVhNRG9jdW1lbnRNYW5hZ2VtZW50RG9jdW1lbnRUeXBlTWV0YURlZmluaXRpb25FbnRpdHlTZXJ2aWNlSW1wbCxcbiAgICB9LFxuICBdLFxufSlcbmV4cG9ydCBjbGFzcyBBWE1Eb2N1bWVudE1hbmFnZW1lbnREb2N1bWVudFR5cGVNZXRhRGVmaW5pdGlvbkVudGl0eU1vZHVsZSB7fSJdfQ==","import { AXMEntityCrudServiceImpl } from '@acorex/platform/layout/entity';\nimport { Injectable } from '@angular/core';\nimport { RootConfig } from '../../const';\nimport * as i0 from \"@angular/core\";\nexport class AXMDocumentManagementDocumentTypeMetaValueEntityService extends AXMEntityCrudServiceImpl {\n}\nexport class AXMDocumentManagementDocumentTypeMetaValueEntityServiceImpl extends AXMDocumentManagementDocumentTypeMetaValueEntityService {\n constructor() {\n super(`${RootConfig.module.name}.${RootConfig.entities.documentTypeMetaValue}`);\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: AXMDocumentManagementDocumentTypeMetaValueEntityServiceImpl, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }\n static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: AXMDocumentManagementDocumentTypeMetaValueEntityServiceImpl }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: AXMDocumentManagementDocumentTypeMetaValueEntityServiceImpl, decorators: [{\n type: Injectable\n }], ctorParameters: () => [] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG9jdW1lbnQtdHlwZS1tZXRhLXZhbHVlLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL21vZHVsZXMvZG9jdW1lbnQtbWFuYWdlbWVudC9zcmMvbGliL2VudGl0aWVzL2RvY3VtZW50LXR5cGUtbWV0YS12YWx1ZS9kb2N1bWVudC10eXBlLW1ldGEtdmFsdWUuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUMxRSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxhQUFhLENBQUM7O0FBR3pDLE1BQU0sT0FBZ0IsdURBQXdELFNBQVEsd0JBR3JGO0NBQUc7QUFHSixNQUFNLE9BQU8sMkRBQTRELFNBQVEsdURBQXVEO0lBQ3RJO1FBQ0UsS0FBSyxDQUFDLEdBQUcsVUFBVSxDQUFDLE1BQU0sQ0FBQyxJQUFJLElBQUksVUFBVSxDQUFDLFFBQVEsQ0FBQyxxQkFBcUIsRUFBRSxDQUFDLENBQUM7SUFDbEYsQ0FBQzs4R0FIVSwyREFBMkQ7a0hBQTNELDJEQUEyRDs7MkZBQTNELDJEQUEyRDtrQkFEdkUsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFYTUVudGl0eUNydWRTZXJ2aWNlSW1wbCB9IGZyb20gJ0BhY29yZXgvcGxhdGZvcm0vbGF5b3V0L2VudGl0eSc7XG5pbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBSb290Q29uZmlnIH0gZnJvbSAnLi4vLi4vY29uc3QnO1xuaW1wb3J0IHsgQVhNRG9jdW1lbnRNYW5hZ2VtZW50RG9jdW1lbnRUeXBlTWV0YVZhbHVlRW50aXR5TW9kZWwgfSBmcm9tICcuL2RvY3VtZW50LXR5cGUtbWV0YS12YWx1ZS50eXBlcyc7XG5cbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBBWE1Eb2N1bWVudE1hbmFnZW1lbnREb2N1bWVudFR5cGVNZXRhVmFsdWVFbnRpdHlTZXJ2aWNlIGV4dGVuZHMgQVhNRW50aXR5Q3J1ZFNlcnZpY2VJbXBsPFxuICBzdHJpbmcsXG4gIEFYTURvY3VtZW50TWFuYWdlbWVudERvY3VtZW50VHlwZU1ldGFWYWx1ZUVudGl0eU1vZGVsXG4+IHt9XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBBWE1Eb2N1bWVudE1hbmFnZW1lbnREb2N1bWVudFR5cGVNZXRhVmFsdWVFbnRpdHlTZXJ2aWNlSW1wbCBleHRlbmRzIEFYTURvY3VtZW50TWFuYWdlbWVudERvY3VtZW50VHlwZU1ldGFWYWx1ZUVudGl0eVNlcnZpY2Uge1xuICBjb25zdHJ1Y3RvcigpIHtcbiAgICBzdXBlcihgJHtSb290Q29uZmlnLm1vZHVsZS5uYW1lfS4ke1Jvb3RDb25maWcuZW50aXRpZXMuZG9jdW1lbnRUeXBlTWV0YVZhbHVlfWApO1xuICB9XG59XG4iXX0=","import { AXPEntityCommandScope, AXPEntityQueryType, createAllQueryView } from '@acorex/platform/common';\nimport { AXPWidgetsCatalog } from '@acorex/platform/layout/builder';\nimport { RootConfig } from '../../const';\nimport { AXMDocumentManagementDocumentTypeMetaValueEntityService } from './document-type-meta-value.service';\nexport async function documentTypeMetaValueFactory(injector) {\n const dataService = injector.get(AXMDocumentManagementDocumentTypeMetaValueEntityService);\n const entityDef = {\n module: RootConfig.module.name,\n name: RootConfig.entities.document.name,\n source: '',\n title: RootConfig.entities.document.title,\n formats: {\n individual: RootConfig.entities.document.title,\n plural: RootConfig.entities.document.titlePlural,\n searchResult: {\n title: '{{ title }}',\n description: RootConfig.module.title,\n },\n },\n relatedEntities: [],\n groups: [\n {\n id: 'section',\n title: RootConfig.entities.document.title,\n },\n ],\n properties: [\n {\n name: 'name',\n title: 't(\"name\", { scope: \"common\" })',\n groupId: 'section',\n options: {\n sort: {\n enabled: true,\n },\n },\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.text,\n },\n },\n validations: [\n {\n rule: 'required',\n },\n ],\n },\n {\n name: 'title',\n title: 't(\"title\", { scope: \"common\" })',\n groupId: 'section',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.text,\n },\n },\n validations: [\n {\n rule: 'required',\n },\n ],\n },\n ],\n columns: [{ name: 'name' }, { name: 'title' }],\n commands: {\n create: {\n execute: async (data) => {\n const res = await dataService.insertOne(data);\n return { id: res };\n },\n },\n delete: {\n execute: async (id) => {\n return await dataService.deleteOne(id);\n },\n },\n update: {\n execute: async (data) => {\n return await dataService.updateOne(data.id, data);\n },\n },\n },\n queries: {\n byKey: {\n execute: async (id) => {\n return await dataService.getOne(id);\n },\n type: AXPEntityQueryType.Single,\n },\n list: {\n execute: async (e) => {\n return await dataService.query(e);\n },\n type: AXPEntityQueryType.List,\n },\n },\n interfaces: {\n master: {\n create: {\n sections: [\n {\n id: 'section',\n },\n ],\n properties: [\n {\n name: 'name',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n },\n },\n },\n },\n {\n name: 'title',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n },\n },\n },\n },\n ],\n },\n update: {\n sections: [\n {\n id: 'section',\n },\n ],\n properties: [\n {\n name: 'name',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n },\n },\n },\n },\n {\n name: 'title',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n },\n },\n },\n },\n ],\n },\n single: {\n title: '{{title}}',\n sections: [\n {\n id: 'section',\n layout: {\n positions: {\n lg: {\n colSpan: 12,\n },\n },\n },\n },\n ],\n properties: [\n {\n name: 'name',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n },\n },\n },\n },\n {\n name: 'title',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n },\n },\n },\n },\n ],\n actions: [],\n },\n list: {\n actions: [\n {\n title: `t(\"create\", { scope: \"common\" })`,\n command: 'create-entity',\n priority: 'primary',\n type: 'create',\n scope: AXPEntityCommandScope.TypeLevel,\n },\n {\n title: 't(\"deleteItems\", { scope: \"common\" })',\n command: 'delete-entity',\n priority: 'primary',\n type: 'delete',\n scope: AXPEntityCommandScope.Selected,\n },\n {\n title: 't(\"detail\", { scope: \"common\" })',\n command: 'open-entity',\n priority: 'secondary',\n type: 'view',\n scope: AXPEntityCommandScope.Individual,\n },\n {\n title: 't(\"delete\", { scope: \"common\" })',\n command: 'delete-entity',\n priority: 'secondary',\n type: 'delete',\n scope: AXPEntityCommandScope.Individual,\n },\n ],\n views: [createAllQueryView({ sorts: [{ name: 'title', dir: 'asc' }] })],\n },\n },\n },\n };\n return entityDef;\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG9jdW1lbnQtdHlwZS1tZXRhLXZhbHVlLmVudGl0eS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbW9kdWxlcy9kb2N1bWVudC1tYW5hZ2VtZW50L3NyYy9saWIvZW50aXRpZXMvZG9jdW1lbnQtdHlwZS1tZXRhLXZhbHVlL2RvY3VtZW50LXR5cGUtbWV0YS12YWx1ZS5lbnRpdHkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFhLHFCQUFxQixFQUFFLGtCQUFrQixFQUFFLGtCQUFrQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDbkgsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFFcEUsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUN6QyxPQUFPLEVBQUUsdURBQXVELEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUU3RyxNQUFNLENBQUMsS0FBSyxVQUFVLDRCQUE0QixDQUFDLFFBQWtCO0lBQ25FLE1BQU0sV0FBVyxHQUFHLFFBQVEsQ0FBQyxHQUFHLENBQUMsdURBQXVELENBQUMsQ0FBQztJQUUxRixNQUFNLFNBQVMsR0FBYztRQUMzQixNQUFNLEVBQUUsVUFBVSxDQUFDLE1BQU0sQ0FBQyxJQUFJO1FBQzlCLElBQUksRUFBRSxVQUFVLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxJQUFJO1FBQ3ZDLE1BQU0sRUFBRSxFQUFFO1FBQ1YsS0FBSyxFQUFFLFVBQVUsQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLEtBQUs7UUFDekMsT0FBTyxFQUFFO1lBQ1AsVUFBVSxFQUFFLFVBQVUsQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLEtBQUs7WUFDOUMsTUFBTSxFQUFFLFVBQVUsQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLFdBQVc7WUFDaEQsWUFBWSxFQUFFO2dCQUNaLEtBQUssRUFBRSxhQUFhO2dCQUNwQixXQUFXLEVBQUUs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UXVlcnlUeXBlLCBjcmVhdGVBbGxRdWVyeVZpZXcgfSBmcm9tICdAYWNvcmV4L3BsYXRmb3JtL2NvbW1vbic7XG5pbXBvcnQgeyBBWFBXaWRnZXRzQ2F0YWxvZyB9IGZyb20gJ0BhY29yZXgvcGxhdGZvcm0vbGF5b3V0L2J1aWxkZXInO1xuaW1wb3J0IHsgSW5qZWN0b3IgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFJvb3RDb25maWcgfSBmcm9tICcuLi8uLi9jb25zdCc7XG5pbXBvcnQgeyBBWE1Eb2N1bWVudE1hbmFnZW1lbnREb2N1bWVudFR5cGVNZXRhVmFsdWVFbnRpdHlTZXJ2aWNlIH0gZnJvbSAnLi9kb2N1bWVudC10eXBlLW1ldGEtdmFsdWUuc2VydmljZSc7XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBkb2N1bWVudFR5cGVNZXRhVmFsdWVGYWN0b3J5KGluamVjdG9yOiBJbmplY3Rvcik6IFByb21pc2U8QVhQRW50aXR5IHwgbnVsbD4ge1xuICBjb25zdCBkYXRhU2VydmljZSA9IGluamVjdG9yLmdldChBWE1Eb2N1bWVudE1hbmFnZW1lbnREb2N1bWVudFR5cGVNZXRhVmFsdWVFbnRpdHlTZXJ2aWNlKTtcblxuICBjb25zdCBlbnRpdHlEZWY6IEFYUEVudGl0eSA9IHtcbiAgICBtb2R1bGU6IFJvb3RDb25maWcubW9kdWxlLm5hbWUsXG4gICAgbmFtZTogUm9vdENvbmZpZy5lbnRpdGllcy5kb2N1bWVudC5uYW1lLFxuICAgIHNvdXJjZTogJycsXG4gICAgdGl0bGU6IFJvb3RDb25maWcuZW50aXRpZXMuZG9jdW1lbnQudGl0bGUsXG4gICAgZm9ybWF0czoge1xuICAgICAgaW5kaXZpZHVhbDogUm9vdENvbmZpZy5lbnRpdGllcy5kb2N1bWVudC50aXRsZSxcbiAgICAgIHBsdXJhbDogUm9vdENvbmZpZy5lbnRpdGllcy5kb2N1bWVudC50aXRsZVBsdXJhbCxcbiAgICAgIHNlYXJjaFJlc3VsdDoge1xuICAgICAgICB0aXRsZTogJ3t7IHRpdGxlIH19JyxcbiAgICAgICAgZGVzY3JpcHRpb246IFJvb3RDb25maWcubW9kdWxlLnRpdGxlLFxuICAgICAgfSxcbiAgICB9LFxuICAgIHJlbGF0ZWRFbnRpdGllczogW10sXG4gICAgZ3JvdXBzOiBbXG4gICAgICB7XG4gICAgICAgIGlkOiAnc2VjdGlvbicsXG4gICAgICAgIHRpdGxlOiBSb290Q29uZmlnLmVudGl0aWVzLmRvY3VtZW50LnRpdGxlLFxuICAgICAgfSxcbiAgICBdLFxuICAgIHByb3BlcnRpZXM6IFtcbiAgICAgIHtcbiAgICAgICAgbmFtZTogJ25hbWUnLFxuICAgICAgICB0aXRsZTogJ3QoXCJuYW1lXCIsIHsgc2NvcGU6IFwiY29tbW9uXCIgfSknLFxuICAgICAgICBncm91cElkOiAnc2VjdGlvbicsXG4gICAgICAgIG9wdGlvbnM6IHtcbiAgICAgICAgICBzb3J0OiB7XG4gICAgICAgICAgICBlbmFibGVkOiB0cnVlLFxuICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICAgIHNjaGVtYToge1xuICAgICAgICAgIGRhdGFUeXBlOiAnc3RyaW5nJyxcbiAgICAgICAgICBpbnRlcmZhY2U6IHtcbiAgICAgICAgICAgIHR5cGU6IEFYUFdpZGdldHNDYXRhbG9nLnRleHQsXG4gICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgICAgdmFsaWRhdGlvbnM6IFtcbiAgICAgICAgICB7XG4gICAgICAgICAgICBydWxlOiAncmVxdWlyZWQnLFxuICAgICAgICAgIH0sXG4gICAgICAgIF0sXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBuYW1lOiAndGl0bGUnLFxuICAgICAgICB0aXRsZTogJ3QoXCJ0aXRsZVwiLCB7IHNjb3BlOiBcImNvbW1vblwiIH0pJyxcbiAgICAgICAgZ3JvdXBJZDogJ3NlY3Rpb24nLFxuICAgICAgICBzY2hlbWE6IHtcbiAgICAgICAgICBkYXRhVHlwZTogJ3N0cmluZycsXG4gICAgICAgICAgaW50ZXJmYWNlOiB7XG4gICAgICAgICAgICB0eXBlOiBBWFBXaWRnZXRzQ2F0YWxvZy50ZXh0LFxuICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICAgIHZhbGlkYXRpb25zOiBbXG4gICAgICAgICAge1xuICAgICAgICAgICAgcnVsZTogJ3JlcXVpcmVkJyxcbiAgICAgICAgICB9LFxuICAgICAgICBdLFxuICAgICAgfSxcbiAgICBdLFxuICAgIGNvbHVtbnM6IFt7IG5hbWU6ICduYW1lJyB9LCB7IG5hbWU6ICd0aXRsZScgfV0sXG4gICAgY29tbWFuZHM6IHtcbiAgICAgIGNyZWF0ZToge1xuICAgICAgICBleGVjdXRlOiBhc3luYyAoZGF0YTogYW55KSA9PiB7XG4gICAgICAgICAgY29uc3QgcmVzID0gYXdhaXQgZGF0YVNlcnZpY2UuaW5zZXJ0T25lKGRhdGEpO1xuICAgICAgICAgIHJldHVybiB7IGlkOiByZXMgfTtcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgICBkZWxldGU6IHtcbiAgICAgICAgZXhlY3V0ZTogYXN5bmMgKGlkOiBhbnkpID0+IHtcbiAgICAgICAgICByZXR1cm4gYXdhaXQgZGF0YVNlcnZpY2UuZGVsZXRlT25lKGlkKTtcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgICB1cGRhdGU6IHtcbiAgICAgICAgZXhlY3V0ZTogYXN5bmMgKGRhdGE6IGFueSkgPT4ge1xuICAgICAgICAgIHJldHVybiBhd2FpdCBkYXRhU2VydmljZS51cGRhdGVPbmUoZGF0YS5pZCwgZGF0YSk7XG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgIH0sXG4gICAgcXVlcmllczoge1xuICAgICAgYnlLZXk6IHtcbiAgICAgICAgZXhlY3V0ZTogYXN5bmMgKGlkOiBzdHJpbmcpID0+IHtcbiAgICAgICAgICByZXR1cm4gYXdhaXQgZGF0YVNlcnZpY2UuZ2V0T25lKGlkKTtcbiAgICAgICAgfSxcbiAgICAgICAgdHlwZTogQVhQRW50aXR5UXVlcnlUeXBlLlNpbmdsZSxcbiAgICAgIH0sXG4gICAgICBsaXN0OiB7XG4gICAgICAgIGV4ZWN1dGU6IGFzeW5jIChlOiBhbnkpID0+IHtcbiAgICAgICAgICByZXR1cm4gYXdhaXQgZGF0YVNlcnZpY2UucXVlcnkoZSk7XG4gICAgICAgIH0sXG4gICAgICAgIHR5cGU6IEFYUEVudGl0eVF1ZXJ5VHlwZS5MaXN0LFxuICAgICAgfSxcbiAgICB9LFxuICAgIGludGVyZmFjZXM6IHtcbiAgICAgIG1hc3Rlcjoge1xuICAgICAgICBjcmVhdGU6IHtcbiAgICAgICAgICBzZWN0aW9uczogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBpZDogJ3NlY3Rpb24nLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICBdLFxuICAgICAgICAgIHByb3BlcnRpZXM6IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgbmFtZTogJ25hbWUnLFxuICAgICAgICAgICAgICBsYXlvdXQ6IHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbnM6IHtcbiAgICAgICAgICAgICAgICAgIGxnOiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbFNwYW46IDYsXG4gICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBuYW1lOiAndGl0bGUnLFxuICAgICAgICAgICAgICBsYXlvdXQ6IHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbnM6IHtcbiAgICAgICAgICAgICAgICAgIGxnOiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbFNwYW46IDYsXG4gICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIF0sXG4gICAgICAgIH0sXG4gICAgICAgIHVwZGF0ZToge1xuICAgICAgICAgIHNlY3Rpb25zOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIGlkOiAnc2VjdGlvbicsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIF0sXG4gICAgICAgICAgcHJvcGVydGllczogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBuYW1lOiAnbmFtZScsXG4gICAgICAgICAgICAgIGxheW91dDoge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uczoge1xuICAgICAgICAgICAgICAgICAgbGc6IHtcbiAgICAgICAgICAgICAgICAgICAgY29sU3BhbjogNixcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIG5hbWU6ICd0aXRsZScsXG4gICAgICAgICAgICAgIGxheW91dDoge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uczoge1xuICAgICAgICAgICAgICAgICAgbGc6IHtcbiAgICAgICAgICAgICAgICAgICAgY29sU3BhbjogNixcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgXSxcbiAgICAgICAgfSxcbiAgICAgICAgc2luZ2xlOiB7XG4gICAgICAgICAgdGl0bGU6ICd7e3RpdGxlfX0nLFxuICAgICAgICAgIHNlY3Rpb25zOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIGlkOiAnc2VjdGlvbicsXG4gICAgICAgICAgICAgIGxheW91dDoge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uczoge1xuICAgICAgICAgICAgICAgICAgbGc6IHtcbiAgICAgICAgICAgICAgICAgICAgY29sU3BhbjogMTIsXG4gICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIF0sXG4gICAgICAgICAgcHJvcGVydGllczogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBuYW1lOiAnbmFtZScsXG4gICAgICAgICAgICAgIGxheW91dDoge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uczoge1xuICAgICAgICAgICAgICAgICAgbGc6IHtcbiAgICAgICAgICAgICAgICAgICAgY29sU3BhbjogNixcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIG5hbWU6ICd0aXRsZScsXG4gICAgICAgICAgICAgIGxheW91dDoge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uczoge1xuICAgICAgICAgICAgICAgICAgbGc6IHtcbiAgICAgICAgICAgICAgICAgICAgY29sU3BhbjogNixcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgXSxcbiAgICAgICAgICBhY3Rpb25zOiBbXSxcbiAgICAgICAgfSxcbiAgICAgICAgbGlzdDoge1xuICAgICAgICAgIGFjdGlvbnM6IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgdGl0bGU6IGB0KFwiY3JlYXRlXCIsIHsgc2NvcGU6IFwiY29tbW9uXCIgfSlgLFxuICAgICAgICAgICAgICBjb21tYW5kOiAnY3JlYXRlLWVudGl0eScsXG4gICAgICAgICAgICAgIHByaW9yaXR5OiAncHJpbWFyeScsXG4gICAgICAgICAgICAgIHR5cGU6ICdjcmVhdGUnLFxuICAgICAgICAgICAgICBzY29wZTogQVhQRW50aXR5Q29tbWFuZFNjb3BlLlR5cGVMZXZlbCxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIHRpdGxlOiAndChcImRlbGV0ZUl0ZW1zXCIsIHsgc2NvcGU6IFwiY29tbW9uXCIgfSknLFxuICAgICAgICAgICAgICBjb21tYW5kOiAnZGVsZXRlLWVudGl0eScsXG4gICAgICAgICAgICAgIHByaW9yaXR5OiAncHJpbWFyeScsXG4gICAgICAgICAgICAgIHR5cGU6ICdkZWxldGUnLFxuICAgICAgICAgICAgICBzY29wZTogQVhQRW50aXR5Q29tbWFuZFNjb3BlLlNlbGVjdGVkLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgdGl0bGU6ICd0KFwiZGV0YWlsXCIsIHsgc2NvcGU6IFwiY29tbW9uXCIgfSknLFxuICAgICAgICAgICAgICBjb21tYW5kOiAnb3Blbi1lbnRpdHknLFxuICAgICAgICAgICAgICBwcmlvcml0eTogJ3NlY29uZGFyeScsXG4gICAgICAgICAgICAgIHR5cGU6ICd2aWV3JyxcbiAgICAgICAgICAgICAgc2NvcGU6IEFYUEVudGl0eUNvbW1hbmRTY29wZS5JbmRpdmlkdWFsLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgdGl0bGU6ICd0KFwiZGVsZXRlXCIsIHsgc2NvcGU6IFwiY29tbW9uXCIgfSknLFxuICAgICAgICAgICAgICBjb21tYW5kOiAnZGVsZXRlLWVudGl0eScsXG4gICAgICAgICAgICAgIHByaW9yaXR5OiAnc2Vjb25kYXJ5JyxcbiAgICAgICAgICAgICAgdHlwZTogJ2RlbGV0ZScsXG4gICAgICAgICAgICAgIHNjb3BlOiBBWFBFbnRpdHlDb21tYW5kU2NvcGUuSW5kaXZpZHVhbCxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgXSxcbiAgICAgICAgICB2aWV3czogW2NyZWF0ZUFsbFF1ZXJ5Vmlldyh7IHNvcnRzOiBbeyBuYW1lOiAndGl0bGUnLCBkaXI6ICdhc2MnIH1dIH0pXSxcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgfSxcbiAgfTtcblxuICByZXR1cm4gZW50aXR5RGVmO1xufVxuIl19","import { NgModule } from '@angular/core';\nimport { AXMDocumentManagementDocumentTypeMetaValueEntityService, AXMDocumentManagementDocumentTypeMetaValueEntityServiceImpl } from './document-type-meta-value.service';\nimport * as i0 from \"@angular/core\";\nexport class AXMDocumentManagementDocumentTypeMetaValueEntityModule {\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: AXMDocumentManagementDocumentTypeMetaValueEntityModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }\n static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: \"14.0.0\", version: \"20.1.8\", ngImport: i0, type: AXMDocumentManagementDocumentTypeMetaValueEntityModule }); }\n static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: AXMDocumentManagementDocumentTypeMetaValueEntityModule, providers: [\n {\n provide: AXMDocumentManagementDocumentTypeMetaValueEntityService,\n useClass: AXMDocumentManagementDocumentTypeMetaValueEntityServiceImpl,\n },\n ] }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: AXMDocumentManagementDocumentTypeMetaValueEntityModule, decorators: [{\n type: NgModule,\n args: [{\n imports: [],\n exports: [],\n declarations: [],\n providers: [\n {\n provide: AXMDocumentManagementDocumentTypeMetaValueEntityService,\n useClass: AXMDocumentManagementDocumentTypeMetaValueEntityServiceImpl,\n },\n ],\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG9jdW1lbnQtdHlwZS1tZXRhLXZhbHVlLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbW9kdWxlcy9kb2N1bWVudC1tYW5hZ2VtZW50L3NyYy9saWIvZW50aXRpZXMvZG9jdW1lbnQtdHlwZS1tZXRhLXZhbHVlL2RvY3VtZW50LXR5cGUtbWV0YS12YWx1ZS5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQ0wsdURBQXVELEVBQ3ZELDJEQUEyRCxFQUM1RCxNQUFNLG9DQUFvQyxDQUFDOztBQWE1QyxNQUFNLE9BQU8sc0RBQXNEOzhHQUF0RCxzREFBc0Q7K0dBQXRELHNEQUFzRDsrR0FBdEQsc0RBQXNELGFBUHREO1lBQ1Q7Z0JBQ0UsT0FBTyxFQUFFLHVEQUF1RDtnQkFDaEUsUUFBUSxFQUFFLDJEQUEyRDthQUN0RTtTQUNGOzsyRkFFVSxzREFBc0Q7a0JBWGxFLFFBQVE7bUJBQUM7b0JBQ1IsT0FBTyxFQUFFLEVBQUU7b0JBQ1gsT0FBTyxFQUFFLEVBQUU7b0JBQ1gsWUFBWSxFQUFFLEVBQUU7b0JBQ2hCLFNBQVMsRUFBRTt3QkFDVDs0QkFDRSxPQUFPLEVBQUUsdURBQXVEOzRCQUNoRSxRQUFRLEVBQUUsMkRBQTJEO3lCQUN0RTtxQkFDRjtpQkFDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICBBWE1Eb2N1bWVudE1hbmFnZW1lbnREb2N1bWVudFR5cGVNZXRhVmFsdWVFbnRpdHlTZXJ2aWNlLFxuICBBWE1Eb2N1bWVudE1hbmFnZW1lbnREb2N1bWVudFR5cGVNZXRhVmFsdWVFbnRpdHlTZXJ2aWNlSW1wbFxufSBmcm9tICcuL2RvY3VtZW50LXR5cGUtbWV0YS12YWx1ZS5zZXJ2aWNlJztcblxuQE5nTW9kdWxlKHtcbiAgaW1wb3J0czogW10sXG4gIGV4cG9ydHM6IFtdLFxuICBkZWNsYXJhdGlvbnM6IFtdLFxuICBwcm92aWRlcnM6IFtcbiAgICB7XG4gICAgICBwcm92aWRlOiBBWE1Eb2N1bWVudE1hbmFnZW1lbnREb2N1bWVudFR5cGVNZXRhVmFsdWVFbnRpdHlTZXJ2aWNlLFxuICAgICAgdXNlQ2xhc3M6IEFYTURvY3VtZW50TWFuYWdlbWVudERvY3VtZW50VHlwZU1ldGFWYWx1ZUVudGl0eVNlcnZpY2VJbXBsLFxuICAgIH0sXG4gIF0sXG59KVxuZXhwb3J0IGNsYXNzIEFYTURvY3VtZW50TWFuYWdlbWVudERvY3VtZW50VHlwZU1ldGFWYWx1ZUVudGl0eU1vZHVsZSB7fSJdfQ==","import { AXMEntityCrudServiceImpl } from '@acorex/platform/layout/entity';\nimport { Injectable } from '@angular/core';\nimport { RootConfig } from '../../const';\nimport * as i0 from \"@angular/core\";\nexport class AXMDocumentManagementDocumentTypeStatusDefinitionEntityService extends AXMEntityCrudServiceImpl {\n}\nexport class AXMDocumentManagementDocumentTypeStatusDefinitionEntityServiceImpl extends AXMDocumentManagementDocumentTypeStatusDefinitionEntityService {\n constructor() {\n super(`${RootConfig.module.name}.${RootConfig.entities.documentTypeStatus}`);\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: AXMDocumentManagementDocumentTypeStatusDefinitionEntityServiceImpl, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }\n static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: AXMDocumentManagementDocumentTypeStatusDefinitionEntityServiceImpl }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: AXMDocumentManagementDocumentTypeStatusDefinitionEntityServiceImpl, decorators: [{\n type: Injectable\n }], ctorParameters: () => [] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG9jdW1lbnQtdHlwZS1zdGF0dXMtZGVmaW5pdGlvbi5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tb2R1bGVzL2RvY3VtZW50LW1hbmFnZW1lbnQvc3JjL2xpYi9lbnRpdGllcy9kb2N1bWVudC10eXBlLXN0YXR1cy1kZWZpbml0aW9uL2RvY3VtZW50LXR5cGUtc3RhdHVzLWRlZmluaXRpb24uc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUMxRSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxhQUFhLENBQUM7O0FBR3pDLE1BQU0sT0FBZ0IsOERBQStELFNBQVEsd0JBRzVGO0NBQUc7QUFHSixNQUFNLE9BQU8sa0VBQW1FLFNBQVEsOERBQThEO0lBQ3BKO1FBQ0UsS0FBSyxDQUFDLEdBQUcsVUFBVSxDQUFDLE1BQU0sQ0FBQyxJQUFJLElBQUksVUFBVSxDQUFDLFFBQVEsQ0FBQyxrQkFBa0IsRUFBRSxDQUFDLENBQUM7SUFDL0UsQ0FBQzs4R0FIVSxrRUFBa0U7a0hBQWxFLGtFQUFrRTs7MkZBQWxFLGtFQUFrRTtrQkFEOUUsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFYTUVudGl0eUNydWRTZXJ2aWNlSW1wbCB9IGZyb20gJ0BhY29yZXgvcGxhdGZvcm0vbGF5b3V0L2VudGl0eSc7XG5pbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBSb290Q29uZmlnIH0gZnJvbSAnLi4vLi4vY29uc3QnO1xuaW1wb3J0IHsgQVhNRG9jdW1lbnRNYW5hZ2VtZW50RG9jdW1lbnRUeXBlU3RhdHVzRGVmaW5pdGlvbkVudGl0eU1vZGVsIH0gZnJvbSAnLi9kb2N1bWVudC10eXBlLXN0YXR1cy1kZWZpbml0aW9uLnR5cGVzJztcblxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIEFYTURvY3VtZW50TWFuYWdlbWVudERvY3VtZW50VHlwZVN0YXR1c0RlZmluaXRpb25FbnRpdHlTZXJ2aWNlIGV4dGVuZHMgQVhNRW50aXR5Q3J1ZFNlcnZpY2VJbXBsPFxuICBzdHJpbmcsXG4gIEFYTURvY3VtZW50TWFuYWdlbWVudERvY3VtZW50VHlwZVN0YXR1c0RlZmluaXRpb25FbnRpdHlNb2RlbFxuPiB7fVxuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgQVhNRG9jdW1lbnRNYW5hZ2VtZW50RG9jdW1lbnRUeXBlU3RhdHVzRGVmaW5pdGlvbkVudGl0eVNlcnZpY2VJbXBsIGV4dGVuZHMgQVhNRG9jdW1lbnRNYW5hZ2VtZW50RG9jdW1lbnRUeXBlU3RhdHVzRGVmaW5pdGlvbkVudGl0eVNlcnZpY2Uge1xuICBjb25zdHJ1Y3RvcigpIHtcbiAgICBzdXBlcihgJHtSb290Q29uZmlnLm1vZHVsZS5uYW1lfS4ke1Jvb3RDb25maWcuZW50aXRpZXMuZG9jdW1lbnRUeXBlU3RhdHVzfWApO1xuICB9XG59XG4iXX0=","import { AXPEntityCommandScope, AXPEntityQueryType, createAllQueryView } from '@acorex/platform/common';\nimport { AXPWidgetsCatalog } from '@acorex/platform/layout/builder';\nimport { RootConfig } from '../../const';\nimport { AXMDocumentManagementDocumentTypeStatusDefinitionEntityService } from './document-type-status-definition.service';\nexport async function documentTypeStatusDefinitionFactory(injector) {\n const dataService = injector.get(AXMDocumentManagementDocumentTypeStatusDefinitionEntityService);\n const entityDef = {\n module: RootConfig.module.name,\n name: RootConfig.entities.document.name,\n source: '',\n title: RootConfig.entities.document.title,\n formats: {\n individual: RootConfig.entities.document.title,\n plural: RootConfig.entities.document.titlePlural,\n searchResult: {\n title: '{{ title }}',\n description: RootConfig.module.title,\n },\n },\n relatedEntities: [],\n groups: [\n {\n id: 'section',\n title: RootConfig.entities.document.title,\n },\n ],\n properties: [\n {\n name: 'name',\n title: 't(\"name\", { scope: \"common\" })',\n groupId: 'section',\n options: {\n sort: {\n enabled: true,\n },\n },\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.text,\n },\n },\n validations: [\n {\n rule: 'required',\n },\n ],\n },\n {\n name: 'title',\n title: 't(\"title\", { scope: \"common\" })',\n groupId: 'section',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.text,\n },\n },\n validations: [\n {\n rule: 'required',\n },\n ],\n },\n ],\n columns: [{ name: 'name' }, { name: 'title' }],\n commands: {\n create: {\n execute: async (data) => {\n const res = await dataService.insertOne(data);\n return { id: res };\n },\n },\n delete: {\n execute: async (id) => {\n return await dataService.deleteOne(id);\n },\n },\n update: {\n execute: async (data) => {\n return await dataService.updateOne(data.id, data);\n },\n },\n },\n queries: {\n byKey: {\n execute: async (id) => {\n return await dataService.getOne(id);\n },\n type: AXPEntityQueryType.Single,\n },\n list: {\n execute: async (e) => {\n return await dataService.query(e);\n },\n type: AXPEntityQueryType.List,\n },\n },\n interfaces: {\n master: {\n create: {\n sections: [\n {\n id: 'section',\n },\n ],\n properties: [\n {\n name: 'name',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n },\n },\n },\n },\n {\n name: 'title',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n },\n },\n },\n },\n ],\n },\n update: {\n sections: [\n {\n id: 'section',\n },\n ],\n properties: [\n {\n name: 'name',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n },\n },\n },\n },\n {\n name: 'title',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n },\n },\n },\n },\n ],\n },\n single: {\n title: '{{title}}',\n sections: [\n {\n id: 'section',\n layout: {\n positions: {\n lg: {\n colSpan: 12,\n },\n },\n },\n },\n ],\n properties: [\n {\n name: 'name',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n },\n },\n },\n },\n {\n name: 'title',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n },\n },\n },\n },\n ],\n actions: [],\n },\n list: {\n actions: [\n {\n title: `t(\"create\", { scope: \"common\" })`,\n command: 'create-entity',\n priority: 'primary',\n type: 'create',\n scope: AXPEntityCommandScope.TypeLevel,\n },\n {\n title: 't(\"deleteItems\", { scope: \"common\" })',\n command: 'delete-entity',\n priority: 'primary',\n type: 'delete',\n scope: AXPEntityCommandScope.Selected,\n },\n {\n title: 't(\"detail\", { scope: \"common\" })',\n command: 'open-entity',\n priority: 'secondary',\n type: 'view',\n scope: AXPEntityCommandScope.Individual,\n },\n {\n title: 't(\"delete\", { scope: \"common\" })',\n command: 'delete-entity',\n priority: 'secondary',\n type: 'delete',\n scope: AXPEntityCommandScope.Individual,\n },\n ],\n views: [createAllQueryView({ sorts: [{ name: 'title', dir: 'asc' }] })],\n },\n },\n },\n };\n return entityDef;\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG9jdW1lbnQtdHlwZS1zdGF0dXMtZGVmaW5pdGlvbi5lbnRpdHkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL21vZHVsZXMvZG9jdW1lbnQtbWFuYWdlbWVudC9zcmMvbGliL2VudGl0aWVzL2RvY3VtZW50LXR5cGUtc3RhdHVzLWRlZmluaXRpb24vZG9jdW1lbnQtdHlwZS1zdGF0dXMtZGVmaW5pdGlvbi5lbnRpdHkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFhLHFCQUFxQixFQUFFLGtCQUFrQixFQUFFLGtCQUFrQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDbkgsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFFcEUsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUN6QyxPQUFPLEVBQUUsOERBQThELEVBQUUsTUFBTSwyQ0FBMkMsQ0FBQztBQUUzSCxNQUFNLENBQUMsS0FBSyxVQUFVLG1DQUFtQyxDQUFDLFFBQWtCO0lBQzFFLE1BQU0sV0FBVyxHQUFHLFFBQVEsQ0FBQyxHQUFHLENBQUMsOERBQThELENBQUMsQ0FBQztJQUVqRyxNQUFNLFNBQVMsR0FBYztRQUMzQixNQUFNLEVBQUUsVUFBVSxDQUFDLE1BQU0sQ0FBQyxJQUFJO1FBQzlCLElBQUksRUFBRSxVQUFVLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxJQUFJO1FBQ3ZDLE1BQU0sRUFBRSxFQUFFO1FBQ1YsS0FBSyxFQUFFLFVBQVUsQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLEtBQUs7UUFDekMsT0FBTyxFQUFFO1lBQ1AsVUFBVSxFQUFFLFVBQVUsQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLEtBQUs7WUFDOUMsTUFBTSxFQUFFLFVBQVUsQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLFdBQVc7WUFDaEQsWUFBWSxFQUFFO2dCQUNaLEtBQUssRUFBRSxh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bW1hbmRTY29wZSwgQVhQRW50aXR5UXVlcnlUeXBlLCBjcmVhdGVBbGxRdWVyeVZpZXcgfSBmcm9tICdAYWNvcmV4L3BsYXRmb3JtL2NvbW1vbic7XG5pbXBvcnQgeyBBWFBXaWRnZXRzQ2F0YWxvZyB9IGZyb20gJ0BhY29yZXgvcGxhdGZvcm0vbGF5b3V0L2J1aWxkZXInO1xuaW1wb3J0IHsgSW5qZWN0b3IgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFJvb3RDb25maWcgfSBmcm9tICcuLi8uLi9jb25zdCc7XG5pbXBvcnQgeyBBWE1Eb2N1bWVudE1hbmFnZW1lbnREb2N1bWVudFR5cGVTdGF0dXNEZWZpbml0aW9uRW50aXR5U2VydmljZSB9IGZyb20gJy4vZG9jdW1lbnQtdHlwZS1zdGF0dXMtZGVmaW5pdGlvbi5zZXJ2aWNlJztcblxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGRvY3VtZW50VHlwZVN0YXR1c0RlZmluaXRpb25GYWN0b3J5KGluamVjdG9yOiBJbmplY3Rvcik6IFByb21pc2U8QVhQRW50aXR5IHwgbnVsbD4ge1xuICBjb25zdCBkYXRhU2VydmljZSA9IGluamVjdG9yLmdldChBWE1Eb2N1bWVudE1hbmFnZW1lbnREb2N1bWVudFR5cGVTdGF0dXNEZWZpbml0aW9uRW50aXR5U2VydmljZSk7XG5cbiAgY29uc3QgZW50aXR5RGVmOiBBWFBFbnRpdHkgPSB7XG4gICAgbW9kdWxlOiBSb290Q29uZmlnLm1vZHVsZS5uYW1lLFxuICAgIG5hbWU6IFJvb3RDb25maWcuZW50aXRpZXMuZG9jdW1lbnQubmFtZSxcbiAgICBzb3VyY2U6ICcnLFxuICAgIHRpdGxlOiBSb290Q29uZmlnLmVudGl0aWVzLmRvY3VtZW50LnRpdGxlLFxuICAgIGZvcm1hdHM6IHtcbiAgICAgIGluZGl2aWR1YWw6IFJvb3RDb25maWcuZW50aXRpZXMuZG9jdW1lbnQudGl0bGUsXG4gICAgICBwbHVyYWw6IFJvb3RDb25maWcuZW50aXRpZXMuZG9jdW1lbnQudGl0bGVQbHVyYWwsXG4gICAgICBzZWFyY2hSZXN1bHQ6IHtcbiAgICAgICAgdGl0bGU6ICd7eyB0aXRsZSB9fScsXG4gICAgICAgIGRlc2NyaXB0aW9uOiBSb290Q29uZmlnLm1vZHVsZS50aXRsZSxcbiAgICAgIH0sXG4gICAgfSxcbiAgICByZWxhdGVkRW50aXRpZXM6IFtdLFxuICAgIGdyb3VwczogW1xuICAgICAge1xuICAgICAgICBpZDogJ3NlY3Rpb24nLFxuICAgICAgICB0aXRsZTogUm9vdENvbmZpZy5lbnRpdGllcy5kb2N1bWVudC50aXRsZSxcbiAgICAgIH0sXG4gICAgXSxcbiAgICBwcm9wZXJ0aWVzOiBbXG4gICAgICB7XG4gICAgICAgIG5hbWU6ICduYW1lJyxcbiAgICAgICAgdGl0bGU6ICd0KFwibmFtZVwiLCB7IHNjb3BlOiBcImNvbW1vblwiIH0pJyxcbiAgICAgICAgZ3JvdXBJZDogJ3NlY3Rpb24nLFxuICAgICAgICBvcHRpb25zOiB7XG4gICAgICAgICAgc29ydDoge1xuICAgICAgICAgICAgZW5hYmxlZDogdHJ1ZSxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgICBzY2hlbWE6IHtcbiAgICAgICAgICBkYXRhVHlwZTogJ3N0cmluZycsXG4gICAgICAgICAgaW50ZXJmYWNlOiB7XG4gICAgICAgICAgICB0eXBlOiBBWFBXaWRnZXRzQ2F0YWxvZy50ZXh0LFxuICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICAgIHZhbGlkYXRpb25zOiBbXG4gICAgICAgICAge1xuICAgICAgICAgICAgcnVsZTogJ3JlcXVpcmVkJyxcbiAgICAgICAgICB9LFxuICAgICAgICBdLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgbmFtZTogJ3RpdGxlJyxcbiAgICAgICAgdGl0bGU6ICd0KFwidGl0bGVcIiwgeyBzY29wZTogXCJjb21tb25cIiB9KScsXG4gICAgICAgIGdyb3VwSWQ6ICdzZWN0aW9uJyxcbiAgICAgICAgc2NoZW1hOiB7XG4gICAgICAgICAgZGF0YVR5cGU6ICdzdHJpbmcnLFxuICAgICAgICAgIGludGVyZmFjZToge1xuICAgICAgICAgICAgdHlwZTogQVhQV2lkZ2V0c0NhdGFsb2cudGV4dCxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgICB2YWxpZGF0aW9uczogW1xuICAgICAgICAgIHtcbiAgICAgICAgICAgIHJ1bGU6ICdyZXF1aXJlZCcsXG4gICAgICAgICAgfSxcbiAgICAgICAgXSxcbiAgICAgIH0sXG4gICAgXSxcbiAgICBjb2x1bW5zOiBbeyBuYW1lOiAnbmFtZScgfSwgeyBuYW1lOiAndGl0bGUnIH1dLFxuICAgIGNvbW1hbmRzOiB7XG4gICAgICBjcmVhdGU6IHtcbiAgICAgICAgZXhlY3V0ZTogYXN5bmMgKGRhdGE6IGFueSkgPT4ge1xuICAgICAgICAgIGNvbnN0IHJlcyA9IGF3YWl0IGRhdGFTZXJ2aWNlLmluc2VydE9uZShkYXRhKTtcbiAgICAgICAgICByZXR1cm4geyBpZDogcmVzIH07XG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgICAgZGVsZXRlOiB7XG4gICAgICAgIGV4ZWN1dGU6IGFzeW5jIChpZDogYW55KSA9PiB7XG4gICAgICAgICAgcmV0dXJuIGF3YWl0IGRhdGFTZXJ2aWNlLmRlbGV0ZU9uZShpZCk7XG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgICAgdXBkYXRlOiB7XG4gICAgICAgIGV4ZWN1dGU6IGFzeW5jIChkYXRhOiBhbnkpID0+IHtcbiAgICAgICAgICByZXR1cm4gYXdhaXQgZGF0YVNlcnZpY2UudXBkYXRlT25lKGRhdGEuaWQsIGRhdGEpO1xuICAgICAgICB9LFxuICAgICAgfSxcbiAgICB9LFxuICAgIHF1ZXJpZXM6IHtcbiAgICAgIGJ5S2V5OiB7XG4gICAgICAgIGV4ZWN1dGU6IGFzeW5jIChpZDogc3RyaW5nKSA9PiB7XG4gICAgICAgICAgcmV0dXJuIGF3YWl0IGRhdGFTZXJ2aWNlLmdldE9uZShpZCk7XG4gICAgICAgIH0sXG4gICAgICAgIHR5cGU6IEFYUEVudGl0eVF1ZXJ5VHlwZS5TaW5nbGUsXG4gICAgICB9LFxuICAgICAgbGlzdDoge1xuICAgICAgICBleGVjdXRlOiBhc3luYyAoZTogYW55KSA9PiB7XG4gICAgICAgICAgcmV0dXJuIGF3YWl0IGRhdGFTZXJ2aWNlLnF1ZXJ5KGUpO1xuICAgICAgICB9LFxuICAgICAgICB0eXBlOiBBWFBFbnRpdHlRdWVyeVR5cGUuTGlzdCxcbiAgICAgIH0sXG4gICAgfSxcbiAgICBpbnRlcmZhY2VzOiB7XG4gICAgICBtYXN0ZXI6IHtcbiAgICAgICAgY3JlYXRlOiB7XG4gICAgICAgICAgc2VjdGlvbnM6IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgaWQ6ICdzZWN0aW9uJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgXSxcbiAgICAgICAgICBwcm9wZXJ0aWVzOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIG5hbWU6ICduYW1lJyxcbiAgICAgICAgICAgICAgbGF5b3V0OiB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb25zOiB7XG4gICAgICAgICAgICAgICAgICBsZzoge1xuICAgICAgICAgICAgICAgICAgICBjb2xTcGFuOiA2LFxuICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgbmFtZTogJ3RpdGxlJyxcbiAgICAgICAgICAgICAgbGF5b3V0OiB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb25zOiB7XG4gICAgICAgICAgICAgICAgICBsZzoge1xuICAgICAgICAgICAgICAgICAgICBjb2xTcGFuOiA2LFxuICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICBdLFxuICAgICAgICB9LFxuICAgICAgICB1cGRhdGU6IHtcbiAgICAgICAgICBzZWN0aW9uczogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBpZDogJ3NlY3Rpb24nLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICBdLFxuICAgICAgICAgIHByb3BlcnRpZXM6IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgbmFtZTogJ25hbWUnLFxuICAgICAgICAgICAgICBsYXlvdXQ6IHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbnM6IHtcbiAgICAgICAgICAgICAgICAgIGxnOiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbFNwYW46IDYsXG4gICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBuYW1lOiAndGl0bGUnLFxuICAgICAgICAgICAgICBsYXlvdXQ6IHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbnM6IHtcbiAgICAgICAgICAgICAgICAgIGxnOiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbFNwYW46IDYsXG4gICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIF0sXG4gICAgICAgIH0sXG4gICAgICAgIHNpbmdsZToge1xuICAgICAgICAgIHRpdGxlOiAne3t0aXRsZX19JyxcbiAgICAgICAgICBzZWN0aW9uczogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBpZDogJ3NlY3Rpb24nLFxuICAgICAgICAgICAgICBsYXlvdXQ6IHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbnM6IHtcbiAgICAgICAgICAgICAgICAgIGxnOiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbFNwYW46IDEyLFxuICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICBdLFxuICAgICAgICAgIHByb3BlcnRpZXM6IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgbmFtZTogJ25hbWUnLFxuICAgICAgICAgICAgICBsYXlvdXQ6IHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbnM6IHtcbiAgICAgICAgICAgICAgICAgIGxnOiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbFNwYW46IDYsXG4gICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBuYW1lOiAndGl0bGUnLFxuICAgICAgICAgICAgICBsYXlvdXQ6IHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbnM6IHtcbiAgICAgICAgICAgICAgICAgIGxnOiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbFNwYW46IDYsXG4gICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIF0sXG4gICAgICAgICAgYWN0aW9uczogW10sXG4gICAgICAgIH0sXG4gICAgICAgIGxpc3Q6IHtcbiAgICAgICAgICBhY3Rpb25zOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIHRpdGxlOiBgdChcImNyZWF0ZVwiLCB7IHNjb3BlOiBcImNvbW1vblwiIH0pYCxcbiAgICAgICAgICAgICAgY29tbWFuZDogJ2NyZWF0ZS1lbnRpdHknLFxuICAgICAgICAgICAgICBwcmlvcml0eTogJ3ByaW1hcnknLFxuICAgICAgICAgICAgICB0eXBlOiAnY3JlYXRlJyxcbiAgICAgICAgICAgICAgc2NvcGU6IEFYUEVudGl0eUNvbW1hbmRTY29wZS5UeXBlTGV2ZWwsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICB0aXRsZTogJ3QoXCJkZWxldGVJdGVtc1wiLCB7IHNjb3BlOiBcImNvbW1vblwiIH0pJyxcbiAgICAgICAgICAgICAgY29tbWFuZDogJ2RlbGV0ZS1lbnRpdHknLFxuICAgICAgICAgICAgICBwcmlvcml0eTogJ3ByaW1hcnknLFxuICAgICAgICAgICAgICB0eXBlOiAnZGVsZXRlJyxcbiAgICAgICAgICAgICAgc2NvcGU6IEFYUEVudGl0eUNvbW1hbmRTY29wZS5TZWxlY3RlZCxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIHRpdGxlOiAndChcImRldGFpbFwiLCB7IHNjb3BlOiBcImNvbW1vblwiIH0pJyxcbiAgICAgICAgICAgICAgY29tbWFuZDogJ29wZW4tZW50aXR5JyxcbiAgICAgICAgICAgICAgcHJpb3JpdHk6ICdzZWNvbmRhcnknLFxuICAgICAgICAgICAgICB0eXBlOiAndmlldycsXG4gICAgICAgICAgICAgIHNjb3BlOiBBWFBFbnRpdHlDb21tYW5kU2NvcGUuSW5kaXZpZHVhbCxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIHRpdGxlOiAndChcImRlbGV0ZVwiLCB7IHNjb3BlOiBcImNvbW1vblwiIH0pJyxcbiAgICAgICAgICAgICAgY29tbWFuZDogJ2RlbGV0ZS1lbnRpdHknLFxuICAgICAgICAgICAgICBwcmlvcml0eTogJ3NlY29uZGFyeScsXG4gICAgICAgICAgICAgIHR5cGU6ICdkZWxldGUnLFxuICAgICAgICAgICAgICBzY29wZTogQVhQRW50aXR5Q29tbWFuZFNjb3BlLkluZGl2aWR1YWwsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIF0sXG4gICAgICAgICAgdmlld3M6IFtjcmVhdGVBbGxRdWVyeVZpZXcoeyBzb3J0czogW3sgbmFtZTogJ3RpdGxlJywgZGlyOiAnYXNjJyB9XSB9KV0sXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgIH0sXG4gIH07XG5cbiAgcmV0dXJuIGVudGl0eURlZjtcbn1cbiJdfQ==","import { NgModule } from '@angular/core';\nimport { AXMDocumentManagementDocumentTypeStatusDefinitionEntityService, AXMDocumentManagementDocumentTypeStatusDefinitionEntityServiceImpl } from './document-type-status-definition.service';\nimport * as i0 from \"@angular/core\";\nexport class AXMDocumentManagementDocumentTypeStatusDefinitionEntityModule {\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: AXMDocumentManagementDocumentTypeStatusDefinitionEntityModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }\n static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: \"14.0.0\", version: \"20.1.8\", ngImport: i0, type: AXMDocumentManagementDocumentTypeStatusDefinitionEntityModule }); }\n static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: AXMDocumentManagementDocumentTypeStatusDefinitionEntityModule, providers: [\n {\n provide: AXMDocumentManagementDocumentTypeStatusDefinitionEntityService,\n useClass: AXMDocumentManagementDocumentTypeStatusDefinitionEntityServiceImpl,\n },\n ] }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: AXMDocumentManagementDocumentTypeStatusDefinitionEntityModule, decorators: [{\n type: NgModule,\n args: [{\n imports: [],\n exports: [],\n declarations: [],\n providers: [\n {\n provide: AXMDocumentManagementDocumentTypeStatusDefinitionEntityService,\n useClass: AXMDocumentManagementDocumentTypeStatusDefinitionEntityServiceImpl,\n },\n ],\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG9jdW1lbnQtdHlwZS1zdGF0dXMtZGVmaW5pdGlvbi5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL21vZHVsZXMvZG9jdW1lbnQtbWFuYWdlbWVudC9zcmMvbGliL2VudGl0aWVzL2RvY3VtZW50LXR5cGUtc3RhdHVzLWRlZmluaXRpb24vZG9jdW1lbnQtdHlwZS1zdGF0dXMtZGVmaW5pdGlvbi5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQ0wsOERBQThELEVBQzlELGtFQUFrRSxFQUNuRSxNQUFNLDJDQUEyQyxDQUFDOztBQWFuRCxNQUFNLE9BQU8sNkRBQTZEOzhHQUE3RCw2REFBNkQ7K0dBQTdELDZEQUE2RDsrR0FBN0QsNkRBQTZELGFBUDdEO1lBQ1Q7Z0JBQ0UsT0FBTyxFQUFFLDhEQUE4RDtnQkFDdkUsUUFBUSxFQUFFLGtFQUFrRTthQUM3RTtTQUNGOzsyRkFFVSw2REFBNkQ7a0JBWHpFLFFBQVE7bUJBQUM7b0JBQ1IsT0FBTyxFQUFFLEVBQUU7b0JBQ1gsT0FBTyxFQUFFLEVBQUU7b0JBQ1gsWUFBWSxFQUFFLEVBQUU7b0JBQ2hCLFNBQVMsRUFBRTt3QkFDVDs0QkFDRSxPQUFPLEVBQUUsOERBQThEOzRCQUN2RSxRQUFRLEVBQUUsa0VBQWtFO3lCQUM3RTtxQkFDRjtpQkFDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICBBWE1Eb2N1bWVudE1hbmFnZW1lbnREb2N1bWVudFR5cGVTdGF0dXNEZWZpbml0aW9uRW50aXR5U2VydmljZSxcbiAgQVhNRG9jdW1lbnRNYW5hZ2VtZW50RG9jdW1lbnRUeXBlU3RhdHVzRGVmaW5pdGlvbkVudGl0eVNlcnZpY2VJbXBsXG59IGZyb20gJy4vZG9jdW1lbnQtdHlwZS1zdGF0dXMtZGVmaW5pdGlvbi5zZXJ2aWNlJztcblxuQE5nTW9kdWxlKHtcbiAgaW1wb3J0czogW10sXG4gIGV4cG9ydHM6IFtdLFxuICBkZWNsYXJhdGlvbnM6IFtdLFxuICBwcm92aWRlcnM6IFtcbiAgICB7XG4gICAgICBwcm92aWRlOiBBWE1Eb2N1bWVudE1hbmFnZW1lbnREb2N1bWVudFR5cGVTdGF0dXNEZWZpbml0aW9uRW50aXR5U2VydmljZSxcbiAgICAgIHVzZUNsYXNzOiBBWE1Eb2N1bWVudE1hbmFnZW1lbnREb2N1bWVudFR5cGVTdGF0dXNEZWZpbml0aW9uRW50aXR5U2VydmljZUltcGwsXG4gICAgfSxcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgQVhNRG9jdW1lbnRNYW5hZ2VtZW50RG9jdW1lbnRUeXBlU3RhdHVzRGVmaW5pdGlvbkVudGl0eU1vZHVsZSB7fSJdfQ==","import { AXPEntityCommandScope, AXPEntityQueryType, createAllQueryView, createQueryView, } from '@acorex/platform/common';\nimport { AXPWidgetsCatalog } from '@acorex/platform/layout/builder';\nimport { RootConfig } from '../../const';\nimport { AXMDocumentService } from '../document/document.service';\nexport async function documentRelatedFactory(injector) {\n const dataService = injector.get(AXMDocumentService);\n const i18n = RootConfig.config.i18n;\n const entityDef = {\n module: RootConfig.module.name,\n name: RootConfig.entities.documentRelated.name,\n source: '',\n title: RootConfig.entities.documentRelated.title,\n formats: {\n individual: RootConfig.entities.documentRelated.title,\n plural: RootConfig.entities.documentRelated.titlePlural,\n searchResult: {\n title: '{{ title }}',\n description: RootConfig.module.title,\n },\n },\n relatedEntities: [],\n groups: [\n {\n id: 'section',\n title: RootConfig.entities.documentRelated.title,\n },\n ],\n properties: [\n {\n name: 'name',\n title: 't(\"name\", { scope: \"common\" })',\n groupId: 'section',\n schema: {\n dataType: 'string',\n readonly: true,\n interface: {\n type: AXPWidgetsCatalog.text,\n options: {\n placeholder: 't(\"name\", { scope: \"common\" })',\n },\n },\n },\n },\n {\n name: 'size',\n title: 't(\"size\", { scope: \"common\" })',\n groupId: 'section',\n schema: {\n dataType: 'string',\n readonly: true,\n interface: {\n type: AXPWidgetsCatalog.number,\n options: {},\n },\n },\n validations: [\n {\n rule: 'required',\n },\n ],\n },\n {\n name: 'type',\n title: 't(\"type\", { scope: \"common\" })',\n groupId: 'section',\n schema: {\n dataType: 'string',\n readonly: true,\n interface: {\n type: AXPWidgetsCatalog.lookup,\n options: {\n entity: `${RootConfig.module.name}.${RootConfig.entities.documentType.name}`,\n expose: 'type',\n },\n },\n },\n validations: [\n {\n rule: 'required',\n },\n ],\n },\n {\n name: 'metaData',\n title: `t(\"metaData\", { scope: \"${i18n}\" })`,\n groupId: 'section',\n schema: {\n dataType: 'object',\n readonly: true,\n interface: {\n type: AXPWidgetsCatalog.blockLayout,\n options: {},\n // children: 'context.eval(\"type.meta\")'\n children: []\n },\n },\n validations: [\n {\n rule: 'required',\n },\n ],\n },\n {\n name: 'fileId',\n title: `t(\"file\", { scope: \"${i18n}\" })`,\n groupId: 'section',\n schema: {\n dataType: 'string',\n readonly: true,\n interface: {\n type: AXPWidgetsCatalog.fileUploader,\n options: {\n maxFileSize: ` {{context.eval(\"type.maxSize\")}} `,\n multiple: ` {{context.eval(\"type.multiple\")}} `,\n // accept: ` {{context.eval(\"type.multiple\")}} `,\n },\n },\n },\n validations: [\n {\n rule: 'required',\n },\n ],\n },\n ],\n columns: [\n { name: 'name' },\n { name: 'fileId' },\n { name: 'type' },\n { name: 'size' }\n ],\n commands: {\n create: {\n execute: async (data) => {\n const res = await dataService.insertOne(data);\n return { id: res };\n },\n },\n delete: {\n execute: async (id) => {\n return await dataService.deleteOne(id);\n },\n },\n update: {\n execute: async (data) => {\n return await dataService.updateOne(data.id, data);\n },\n },\n },\n queries: {\n byKey: {\n execute: async (id) => {\n const x = await dataService.getOne(id);\n console.log(x);\n return x;\n },\n type: AXPEntityQueryType.Single,\n },\n list: {\n execute: async (e) => {\n const x = await dataService.query({\n skip: e.skip,\n take: e.take,\n filter: e.filter,\n });\n return x;\n },\n type: AXPEntityQueryType.List,\n },\n },\n interfaces: {\n master: {\n create: {\n sections: [\n {\n id: 'section',\n },\n ],\n properties: [\n {\n name: 'metaData',\n layout: {\n positions: {\n lg: {\n colSpan: 12,\n },\n },\n },\n },\n {\n name: 'fileId',\n layout: {\n positions: {\n lg: {\n colSpan: 12,\n },\n },\n },\n },\n ],\n },\n update: {\n sections: [\n {\n id: 'section',\n },\n ],\n properties: [\n {\n name: 'name',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n },\n },\n },\n },\n {\n name: 'type',\n layout: {\n positions: {\n lg: {\n colSpan: 12,\n },\n },\n },\n },\n {\n name: 'metaData',\n layout: {\n positions: {\n lg: {\n colSpan: 12,\n },\n },\n },\n },\n {\n name: 'file',\n layout: {\n positions: {\n lg: {\n colSpan: 12,\n },\n },\n },\n },\n ],\n },\n single: {\n title: '{{title}}',\n sections: [\n {\n id: 'section',\n layout: {\n positions: {\n lg: {\n colSpan: 12,\n },\n },\n },\n },\n ],\n properties: [\n {\n name: 'metaData',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n },\n }\n },\n },\n {\n name: 'fileId',\n layout: {\n positions: {\n lg: {\n colSpan: 12,\n },\n },\n },\n },\n ],\n actions: [\n {\n title: `t(\"document-review.send-review.title\", { scope: \"${i18n}\" })`,\n command: {\n name: 'send-to-review',\n options: {\n id: '{{context.eval(\"id\")}}',\n title: '{{context.eval(\"title\")}}',\n },\n },\n priority: 'primary',\n type: 'sent',\n scope: AXPEntityCommandScope.TypeLevel,\n disabled: '{{context.eval(\"status\") != \"Draft\"}}',\n },\n {\n title: `t(\"document-review.submit-review.title\", { scope: \"${i18n}\" })`,\n command: {\n name: 'submit-review',\n options: {\n id: '{{context.eval(\"reviewRecordId\")}}',\n decoration: {\n header: {\n title: '{{ context.eval(\"title\") }}',\n },\n },\n },\n },\n priority: 'primary',\n type: 'review',\n scope: AXPEntityCommandScope.TypeLevel,\n disabled: '{{context.eval(\"status\") != \"PendingReview\"}}',\n },\n {\n title: `t(\"distributed\", { scope: \"${i18n}\" })`,\n command: {\n name: 'distributed',\n options: {\n id: '{{context.eval(\"id\")}}',\n title: '{{context.eval(\"title\")}}',\n },\n },\n priority: 'primary',\n type: 'review',\n scope: AXPEntityCommandScope.TypeLevel,\n disabled: '{{context.eval(\"status\") != \"Reviewed\" && context.eval(\"status\") != \"Completed\"}}',\n },\n ],\n },\n list: {\n actions: [\n {\n title: 't(\"detail\", { scope: \"common\" })',\n command: 'open-entity',\n priority: 'secondary',\n type: 'view',\n default: true,\n scope: AXPEntityCommandScope.Individual,\n },\n {\n title: `t(\"document-review.send-review.title\", { scope: \"${i18n}\" })`,\n icon: 'fa-light fa-shield-check',\n command: {\n name: 'send-to-review',\n options: {\n id: '{{context.eval(\"id\")}}',\n title: '{{context.eval(\"title\")}}',\n },\n },\n priority: 'secondary',\n type: 'sent',\n scope: AXPEntityCommandScope.Individual,\n disabled: '{{context.eval(\"status\") != \"Draft\"}}',\n },\n {\n title: `t(\"document-review.submit-review.title\", { scope: \"${i18n}\" })`,\n icon: 'fa-light fa-ballot-check',\n command: {\n name: 'submit-review',\n options: {\n id: '{{context.eval(\"reviewRecordId\")}}',\n // reviewedAt : '{{ variables.execute(\"now\") }}',\n decoration: {\n header: {\n title: '{{ context.eval(\"title\") + \" - version: \" + context.eval(\"version\") }}',\n },\n },\n },\n },\n priority: 'secondary',\n type: 'review',\n scope: AXPEntityCommandScope.Individual,\n disabled: '{{context.eval(\"status\") != \"PendingReview\"}}',\n },\n {\n title: `t(\"distributed\", { scope: \"${i18n}\" })`,\n icon: 'fa-light fa-chart-network',\n command: {\n name: 'distributed',\n options: {\n id: '{{context.eval(\"id\")}}',\n title: '{{context.eval(\"title\")}}',\n },\n },\n priority: 'secondary',\n type: 'review',\n scope: AXPEntityCommandScope.Individual,\n disabled: '{{context.eval(\"status\") != \"Reviewed\" && context.eval(\"status\") != \"Completed\"}}',\n },\n ],\n views: [\n createAllQueryView({ sorts: [{ name: 'name', dir: 'asc' }] }),\n createQueryView('Draft', `t(\"draft\", { scope: \"${i18n}\" })`, true, {\n conditions: [\n {\n name: 'status',\n operator: {\n type: 'equal',\n },\n value: 'Draft',\n },\n ],\n }),\n createQueryView('PendingReview', `t(\"pending\", { scope: \"${i18n}\" })`, true, {\n conditions: [\n {\n name: 'status',\n operator: {\n type: 'equal',\n },\n value: 'PendingReview',\n },\n ],\n }),\n createQueryView('Reviewed', `t(\"reviewed\", { scope: \"${i18n}\" })`, true, {\n conditions: [\n {\n name: 'status',\n operator: {\n type: 'equal',\n },\n value: 'Reviewed',\n },\n ],\n }),\n ],\n },\n },\n },\n };\n return entityDef;\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG9jdW1lbnQuZW50aXR5LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tb2R1bGVzL2RvY3VtZW50LW1hbmFnZW1lbnQvc3JjL2xpYi9lbnRpdGllcy9kb2N1bWVudC1yZWxldGVkL2RvY3VtZW50LmVudGl0eS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBRUwscUJBQXFCLEVBQ3JCLGtCQUFrQixFQUNsQixrQkFBa0IsRUFDbEIsZUFBZSxHQUNoQixNQUFNLHlCQUF5QixDQUFDO0FBQ2pDLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBRXBFLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDekMsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFFbEUsTUFBTSxDQUFDLEtBQUssVUFBVSxzQkFBc0IsQ0FBQyxRQUFrQjtJQUM3RCxNQUFNLFdBQVcsR0FBRyxRQUFRLENBQUMsR0FBRyxDQUFDLGtCQUFrQixDQUFDLENBQUM7SUFDckQsTUFBTSxJQUFJLEdBQUcsVUFBVSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUM7SUFFcEMsTUFBTSxTQUFTLEdBQWM7UUFDM0IsTUFBTSxFQUFFLFVBQVUsQ0FBQyxNQUFNLENBQUMsSUFBSTtRQUM5QixJQUFJLEVBQUUsVUFBVSxDQUFDLFFBQVEsQ0FBQyxlQUFlLENBQUMsSUFBSTtRQUM5QyxNQUFNLEVBQUUsRUFBRTtRQUNWLEtBQUssRUFBRSxVQUFVLENBQUMsUUFBUSxDQUFDLGVBQWUsQ0FBQyxLQUFLO1FBQ2hELE9BQU8sRUFBRTtZQUNQLFVBQVUsRUFBRSxVQUFVLENBQUMsUUFBUSxDQUFDLGVBQWUsQ0FBQyxLQUFLO1lBQ3JELE1BQU0sRUFBRSxVQUFVLENBQUMsUUFBUSxDQUFDLGVBQWUsQ0FBQyxXQUFXO1lBQ3ZELFlBQVksRUFBRTtnQkFDWixLQUFLLEVB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RTt3QkFDTCxrQkFBa0IsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLEVBQUUsSUFBSSxFQUFFLE1BQU0sRUFBRSxHQUFHLEVBQUUsS0FBSyxFQUFFLENBQUMsRUFBRSxDQUFDO3dCQUM3RCxlQUFlLENBQUMsT0FBTyxFQUFFLHdCQUF3QixJQUFJLE1BQU0sRUFBRSxJQUFJLEVBQUU7NEJBQ2pFLFVBQVUsRUFBRTtnQ0FDVjtvQ0FDRSxJQUFJLEVBQUUsUUFBUTtvQ0FDZCxRQUFRLEVBQUU7d0NBQ1IsSUFBSSxFQUFFLE9BQU87cUNBQ2Q7b0NBQ0QsS0FBSyxFQUFFLE9BQU87aUNBQ2Y7NkJBQ0Y7eUJBQ0YsQ0FBQzt3QkFDRixlQUFlLENBQUMsZUFBZSxFQUFFLDBCQUEwQixJQUFJLE1BQU0sRUFBRSxJQUFJLEVBQUU7NEJBQzNFLFVBQVUsRUFBRTtnQ0FDVjtvQ0FDRSxJQUFJLEVBQUUsUUFBUTtvQ0FDZCxRQUFRLEVBQUU7d0NBQ1IsSUFBSSxFQUFFLE9BQU87cUNBQ2Q7b0NBQ0QsS0FBSyxFQUFFLGVBQWU7aUNBQ3ZCOzZCQUNGO3lCQUNGLENBQUM7d0JBQ0YsZUFBZSxDQUFDLFVBQVUsRUFBRSwyQkFBMkIsSUFBSSxNQUFNLEVBQUUsSUFBSSxFQUFFOzRCQUN2RSxVQUFVLEVBQUU7Z0NBQ1Y7b0NBQ0UsSUFBSSxFQUFFLFFBQVE7b0NBQ2QsUUFBUSxFQUFFO3dDQUNSLElBQUksRUFBRSxPQUFPO3FDQUNkO29DQUNELEtBQUssRUFBRSxVQUFVO2lDQUNsQjs2QkFDRjt5QkFDRixDQUFDO3FCQUNIO2lCQUNGO2FBQ0Y7U0FDRjtLQUNGLENBQUM7SUFFRixPQUFPLFNBQVMsQ0FBQztBQUNuQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQVhEYXRhU291cmNlRmlsdGVyT3B0aW9uIH0gZnJvbSAnQGFjb3JleC9jZGsvY29tbW9uJztcbmltcG9ydCB7XG4gIEFYUEVudGl0eSxcbiAgQVhQRW50aXR5Q29tbWFuZFNjb3BlLFxuICBBWFBFbnRpdHlRdWVyeVR5cGUsXG4gIGNyZWF0ZUFsbFF1ZXJ5VmlldyxcbiAgY3JlYXRlUXVlcnlWaWV3LFxufSBmcm9tICdAYWNvcmV4L3BsYXRmb3JtL2NvbW1vbic7XG5pbXBvcnQgeyBBWFBXaWRnZXRzQ2F0YWxvZyB9IGZyb20gJ0BhY29yZXgvcGxhdGZvcm0vbGF5b3V0L2J1aWxkZXInO1xuaW1wb3J0IHsgSW5qZWN0b3IgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFJvb3RDb25maWcgfSBmcm9tICcuLi8uLi9jb25zdCc7XG5pbXBvcnQgeyBBWE1Eb2N1bWVudFNlcnZpY2UgfSBmcm9tICcuLi9kb2N1bWVudC9kb2N1bWVudC5zZXJ2aWNlJztcblxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGRvY3VtZW50UmVsYXRlZEZhY3RvcnkoaW5qZWN0b3I6IEluamVjdG9yKTogUHJvbWlzZTxBWFBFbnRpdHkgfCBudWxsPiB7XG4gIGNvbnN0IGRhdGFTZXJ2aWNlID0gaW5qZWN0b3IuZ2V0KEFYTURvY3VtZW50U2VydmljZSk7XG4gIGNvbnN0IGkxOG4gPSBSb290Q29uZmlnLmNvbmZpZy5pMThuO1xuXG4gIGNvbnN0IGVudGl0eURlZjogQVhQRW50aXR5ID0ge1xuICAgIG1vZHVsZTogUm9vdENvbmZpZy5tb2R1bGUubmFtZSxcbiAgICBuYW1lOiBSb290Q29uZmlnLmVudGl0aWVzLmRvY3VtZW50UmVsYXRlZC5uYW1lLFxuICAgIHNvdXJjZTogJycsXG4gICAgdGl0bGU6IFJvb3RDb25maWcuZW50aXRpZXMuZG9jdW1lbnRSZWxhdGVkLnRpdGxlLFxuICAgIGZvcm1hdHM6IHtcbiAgICAgIGluZGl2aWR1YWw6IFJvb3RDb25maWcuZW50aXRpZXMuZG9jdW1lbnRSZWxhdGVkLnRpdGxlLFxuICAgICAgcGx1cmFsOiBSb290Q29uZmlnLmVudGl0aWVzLmRvY3VtZW50UmVsYXRlZC50aXRsZVBsdXJhbCxcbiAgICAgIHNlYXJjaFJlc3VsdDoge1xuICAgICAgICB0aXRsZTogJ3t7IHRpdGxlIH19JyxcbiAgICAgICAgZGVzY3JpcHRpb246IFJvb3RDb25maWcubW9kdWxlLnRpdGxlLFxuICAgICAgfSxcbiAgICB9LFxuICAgIHJlbGF0ZWRFbnRpdGllczogW10sXG4gICAgZ3JvdXBzOiBbXG4gICAgICB7XG4gICAgICAgIGlkOiAnc2VjdGlvbicsXG4gICAgICAgIHRpdGxlOiBSb290Q29uZmlnLmVudGl0aWVzLmRvY3VtZW50UmVsYXRlZC50aXRsZSxcbiAgICAgIH0sXG4gICAgXSxcbiAgICBwcm9wZXJ0aWVzOiBbXG4gICAgICB7XG4gICAgICAgIG5hbWU6ICduYW1lJyxcbiAgICAgICAgdGl0bGU6ICd0KFwibmFtZVwiLCB7IHNjb3BlOiBcImNvbW1vblwiIH0pJyxcbiAgICAgICAgZ3JvdXBJZDogJ3NlY3Rpb24nLFxuICAgICAgICBzY2hlbWE6IHtcbiAgICAgICAgICBkYXRhVHlwZTogJ3N0cmluZycsXG4gICAgICAgICAgcmVhZG9ubHk6IHRydWUsXG4gICAgICAgICAgaW50ZXJmYWNlOiB7XG4gICAgICAgICAgICB0eXBlOiBBWFBXaWRnZXRzQ2F0YWxvZy50ZXh0LFxuICAgICAgICAgICAgb3B0aW9uczoge1xuICAgICAgICAgICAgICBwbGFjZWhvbGRlcjogJ3QoXCJuYW1lXCIsIHsgc2NvcGU6IFwiY29tbW9uXCIgfSknLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgbmFtZTogJ3NpemUnLFxuICAgICAgICB0aXRsZTogJ3QoXCJzaXplXCIsIHsgc2NvcGU6IFwiY29tbW9uXCIgfSknLFxuICAgICAgICBncm91cElkOiAnc2VjdGlvbicsXG4gICAgICAgIHNjaGVtYToge1xuICAgICAgICAgIGRhdGFUeXBlOiAnc3RyaW5nJyxcbiAgICAgICAgICByZWFkb25seTogdHJ1ZSxcbiAgICAgICAgICBpbnRlcmZhY2U6IHtcbiAgICAgICAgICAgIHR5cGU6IEFYUFdpZGdldHNDYXRhbG9nLm51bWJlcixcbiAgICAgICAgICAgIG9wdGlvbnM6IHtcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgICAgdmFsaWRhdGlvbnM6IFtcbiAgICAgICAgICB7XG4gICAgICAgICAgICBydWxlOiAncmVxdWlyZWQnLFxuICAgICAgICAgIH0sXG4gICAgICAgIF0sXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBuYW1lOiAndHlwZScsXG4gICAgICAgIHRpdGxlOiAndChcInR5cGVcIiwgeyBzY29wZTogXCJjb21tb25cIiB9KScsXG4gICAgICAgIGdyb3VwSWQ6ICdzZWN0aW9uJyxcbiAgICAgICAgc2NoZW1hOiB7XG4gICAgICAgICAgZGF0YVR5cGU6ICdzdHJpbmcnLFxuICAgICAgICAgIHJlYWRvbmx5OiB0cnVlLFxuICAgICAgICAgIGludGVyZmFjZToge1xuICAgICAgICAgICAgdHlwZTogQVhQV2lkZ2V0c0NhdGFsb2cubG9va3VwLFxuICAgICAgICAgICAgb3B0aW9uczoge1xuICAgICAgICAgICAgICBlbnRpdHk6IGAke1Jvb3RDb25maWcubW9kdWxlLm5hbWV9LiR7Um9vdENvbmZpZy5lbnRpdGllcy5kb2N1bWVudFR5cGUubmFtZX1gLFxuICAgICAgICAgICAgICBleHBvc2U6ICd0eXBlJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgICAgdmFsaWRhdGlvbnM6IFtcbiAgICAgICAgICB7XG4gICAgICAgICAgICBydWxlOiAncmVxdWlyZWQnLFxuICAgICAgICAgIH0sXG4gICAgICAgIF0sXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBuYW1lOiAnbWV0YURhdGEnLFxuICAgICAgICB0aXRsZTogYHQoXCJtZXRhRGF0YVwiLCB7IHNjb3BlOiBcIiR7aTE4bn1cIiB9KWAsXG4gICAgICAgIGdyb3VwSWQ6ICdzZWN0aW9uJyxcbiAgICAgICAgc2NoZW1hOiB7XG4gICAgICAgICAgZGF0YVR5cGU6ICdvYmplY3QnLFxuICAgICAgICAgIHJlYWRvbmx5OiB0cnVlLFxuICAgICAgICAgIGludGVyZmFjZToge1xuICAgICAgICAgICAgdHlwZTogQVhQV2lkZ2V0c0NhdGFsb2cuYmxvY2tMYXlvdXQsXG4gICAgICAgICAgICBvcHRpb25zOiB7XG4gICAgICAgICAgICAgXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgIC8vIGNoaWxkcmVuOiAnY29udGV4dC5ldmFsKFwidHlwZS5tZXRhXCIpJ1xuICAgICAgICAgICAgICBjaGlsZHJlbjogW11cbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgICB2YWxpZGF0aW9uczogW1xuICAgICAgICAgIHtcbiAgICAgICAgICAgIHJ1bGU6ICdyZXF1aXJlZCcsXG4gICAgICAgICAgfSxcbiAgICAgICAgXSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIG5hbWU6ICdmaWxlSWQnLFxuICAgICAgICB0aXRsZTogYHQoXCJmaWxlXCIsIHsgc2NvcGU6IFwiJHtpMThufVwiIH0pYCxcbiAgICAgICAgZ3JvdXBJZDogJ3NlY3Rpb24nLFxuICAgICAgICBzY2hlbWE6IHtcbiAgICAgICAgICBkYXRhVHlwZTogJ3N0cmluZycsXG4gICAgICAgICAgcmVhZG9ubHk6IHRydWUsXG4gICAgICAgICAgaW50ZXJmYWNlOiB7XG4gICAgICAgICAgICB0eXBlOiBBWFBXaWRnZXRzQ2F0YWxvZy5maWxlVXBsb2FkZXIsXG4gICAgICAgICAgICBvcHRpb25zOiB7XG4gICAgICAgICAgICAgIG1heEZpbGVTaXplOiBgIHt7Y29udGV4dC5ldmFsKFwidHlwZS5tYXhTaXplXCIpfX0gYCxcbiAgICAgICAgICAgICAgbXVsdGlwbGU6IGAge3tjb250ZXh0LmV2YWwoXCJ0eXBlLm11bHRpcGxlXCIpfX0gYCxcbiAgICAgICAgICAgIC8vICBhY2NlcHQ6IGAge3tjb250ZXh0LmV2YWwoXCJ0eXBlLm11bHRpcGxlXCIpfX0gYCxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgICAgdmFsaWRhdGlvbnM6IFtcbiAgICAgICAgICB7XG4gICAgICAgICAgICBydWxlOiAncmVxdWlyZWQnLFxuICAgICAgICAgIH0sXG4gICAgICAgIF0sXG4gICAgICB9LFxuICAgIF0sXG4gICAgY29sdW1uczogW1xuICAgICAgeyBuYW1lOiduYW1lJyB9LFxuICAgICAgeyBuYW1lOidmaWxlSWQnIH0sXG4gICAgICB7IG5hbWU6J3R5cGUnIH0sXG4gICAgICB7IG5hbWU6J3NpemUnIH1cbiAgICBcbiAgICBdLFxuICAgIGNvbW1hbmRzOiB7XG4gICAgICBjcmVhdGU6IHtcbiAgICAgICAgZXhlY3V0ZTogYXN5bmMgKGRhdGE6IGFueSkgPT4ge1xuICAgICAgICAgIGNvbnN0IHJlcyA9IGF3YWl0IGRhdGFTZXJ2aWNlLmluc2VydE9uZShkYXRhKTtcbiAgICAgICAgICByZXR1cm4geyBpZDogcmVzIH07XG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgICAgZGVsZXRlOiB7XG4gICAgICAgIGV4ZWN1dGU6IGFzeW5jIChpZDogYW55KSA9PiB7XG4gICAgICAgICAgcmV0dXJuIGF3YWl0IGRhdGFTZXJ2aWNlLmRlbGV0ZU9uZShpZCk7XG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgICAgdXBkYXRlOiB7XG4gICAgICAgIGV4ZWN1dGU6IGFzeW5jIChkYXRhOiBhbnkpID0+IHtcbiAgICAgICAgICByZXR1cm4gYXdhaXQgZGF0YVNlcnZpY2UudXBkYXRlT25lKGRhdGEuaWQsIGRhdGEpO1xuICAgICAgICB9LFxuICAgICAgfSxcbiAgICB9LFxuICAgIHF1ZXJpZXM6IHtcbiAgICAgIGJ5S2V5OiB7XG4gICAgICAgIGV4ZWN1dGU6IGFzeW5jIChpZDogc3RyaW5nKSA9PiB7XG4gICAgICAgICAgY29uc3QgeCA9IGF3YWl0IGRhdGFTZXJ2aWNlLmdldE9uZShpZCk7XG4gICAgICAgICAgY29uc29sZS5sb2coeCk7XG4gICAgICAgICAgcmV0dXJuIHg7XG4gICAgICAgIH0sXG4gICAgICAgIHR5cGU6IEFYUEVudGl0eVF1ZXJ5VHlwZS5TaW5nbGUsXG4gICAgICB9LFxuICAgICAgbGlzdDoge1xuICAgICAgICBleGVjdXRlOiBhc3luYyAoZTogYW55KSA9PiB7XG4gICAgICAgICAgY29uc3QgeCA9IGF3YWl0IGRhdGFTZXJ2aWNlLnF1ZXJ5KHtcbiAgICAgICAgICAgIHNraXA6IGUuc2tpcCxcbiAgICAgICAgICAgIHRha2U6IGUudGFrZSxcbiAgICAgICAgICAgIGZpbHRlcjogZS5maWx0ZXIsXG4gICAgICAgICAgfSk7XG5cblxuICAgICAgICAgIHJldHVybiB4O1xuICAgICAgICB9LFxuICAgICAgICB0eXBlOiBBWFBFbnRpdHlRdWVyeVR5cGUuTGlzdCxcbiAgICAgIH0sXG4gICAgfSxcbiAgICBpbnRlcmZhY2VzOiB7XG4gICAgICBtYXN0ZXI6IHtcbiAgICAgICAgY3JlYXRlOiB7XG4gICAgICAgICAgc2VjdGlvbnM6IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgaWQ6ICdzZWN0aW9uJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgXSxcbiAgICAgICAgICBwcm9wZXJ0aWVzOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIG5hbWU6ICdtZXRhRGF0YScsXG4gICAgICAgICAgICAgIGxheW91dDoge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uczoge1xuICAgICAgICAgICAgICAgICAgbGc6IHtcbiAgICAgICAgICAgICAgICAgICAgY29sU3BhbjogMTIsXG4gICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBuYW1lOiAnZmlsZUlkJyxcbiAgICAgICAgICAgICAgbGF5b3V0OiB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb25zOiB7XG4gICAgICAgICAgICAgICAgICBsZzoge1xuICAgICAgICAgICAgICAgICAgICBjb2xTcGFuOiAxMixcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgXSxcbiAgICAgICAgfSxcbiAgICAgICAgdXBkYXRlOiB7XG4gICAgICAgICAgc2VjdGlvbnM6IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgaWQ6ICdzZWN0aW9uJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgXSxcbiAgICAgICAgICBwcm9wZXJ0aWVzOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIG5hbWU6ICduYW1lJyxcbiAgICAgICAgICAgICAgbGF5b3V0OiB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb25zOiB7XG4gICAgICAgICAgICAgICAgICBsZzoge1xuICAgICAgICAgICAgICAgICAgICBjb2xTcGFuOiA2LFxuICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgbmFtZTogJ3R5cGUnLFxuICAgICAgICAgICAgICBsYXlvdXQ6IHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbnM6IHtcbiAgICAgICAgICAgICAgICAgIGxnOiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbFNwYW46IDEyLFxuICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgbmFtZTogJ21ldGFEYXRhJyxcbiAgICAgICAgICAgICAgbGF5b3V0OiB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb25zOiB7XG4gICAgICAgICAgICAgICAgICBsZzoge1xuICAgICAgICAgICAgICAgICAgICBjb2xTcGFuOiAxMixcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIG5hbWU6ICdmaWxlJyxcbiAgICAgICAgICAgICAgbGF5b3V0OiB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb25zOiB7XG4gICAgICAgICAgICAgICAgICBsZzoge1xuICAgICAgICAgICAgICAgICAgICBjb2xTcGFuOiAxMixcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgXSxcbiAgICAgICAgfSxcbiAgICAgICAgc2luZ2xlOiB7XG4gICAgICAgICAgdGl0bGU6ICd7e3RpdGxlfX0nLFxuICAgICAgICAgIHNlY3Rpb25zOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIGlkOiAnc2VjdGlvbicsXG4gICAgICAgICAgICAgIGxheW91dDoge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uczoge1xuICAgICAgICAgICAgICAgICAgbGc6IHtcbiAgICAgICAgICAgICAgICAgICAgY29sU3BhbjogMTIsXG4gICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIF0sXG4gICAgICAgICAgcHJvcGVydGllczogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBuYW1lOiAnbWV0YURhdGEnLFxuICAgICAgICAgICAgICBsYXlvdXQ6IHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbnM6IHtcbiAgICAgICAgICAgICAgICAgIGxnOiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbFNwYW46IDYsXG4gICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIG5hbWU6ICdmaWxlSWQnLFxuICAgICAgICAgICAgICBsYXlvdXQ6IHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbnM6IHtcbiAgICAgICAgICAgICAgICAgIGxnOiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbFNwYW46IDEyLFxuICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICBdLFxuICAgICAgICAgIGFjdGlvbnM6IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgdGl0bGU6IGB0KFwiZG9jdW1lbnQtcmV2aWV3LnNlbmQtcmV2aWV3LnRpdGxlXCIsIHsgc2NvcGU6IFwiJHtpMThufVwiIH0pYCxcbiAgICAgICAgICAgICAgY29tbWFuZDoge1xuICAgICAgICAgICAgICAgIG5hbWU6ICdzZW5kLXRvLXJldmlldycsXG4gICAgICAgICAgICAgICAgb3B0aW9uczoge1xuICAgICAgICAgICAgICAgICAgaWQ6ICd7e2NvbnRleHQuZXZhbChcImlkXCIpfX0nLFxuICAgICAgICAgICAgICAgICAgdGl0bGU6ICd7e2NvbnRleHQuZXZhbChcInRpdGxlXCIpfX0nLFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIHByaW9yaXR5OiAncHJpbWFyeScsXG4gICAgICAgICAgICAgIHR5cGU6ICdzZW50JyxcbiAgICAgICAgICAgICAgc2NvcGU6IEFYUEVudGl0eUNvbW1hbmRTY29wZS5UeXBlTGV2ZWwsXG4gICAgICAgICAgICAgIGRpc2FibGVkOiAne3tjb250ZXh0LmV2YWwoXCJzdGF0dXNcIikgIT0gXCJEcmFmdFwifX0nLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgdGl0bGU6IGB0KFwiZG9jdW1lbnQtcmV2aWV3LnN1Ym1pdC1yZXZpZXcudGl0bGVcIiwgeyBzY29wZTogXCIke2kxOG59XCIgfSlgLFxuICAgICAgICAgICAgICBjb21tYW5kOiB7XG4gICAgICAgICAgICAgICAgbmFtZTogJ3N1Ym1pdC1yZXZpZXcnLFxuICAgICAgICAgICAgICAgIG9wdGlvbnM6IHtcbiAgICAgICAgICAgICAgICAgIGlkOiAne3tjb250ZXh0LmV2YWwoXCJyZXZpZXdSZWNvcmRJZFwiKX19JyxcbiAgICAgICAgICAgICAgICAgIGRlY29yYXRpb246IHtcbiAgICAgICAgICAgICAgICAgICAgaGVhZGVyOiB7XG4gICAgICAgICAgICAgICAgICAgICAgdGl0bGU6ICd7eyBjb250ZXh0LmV2YWwoXCJ0aXRsZVwiKSB9fScsXG4gICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIHByaW9yaXR5OiAncHJpbWFyeScsXG4gICAgICAgICAgICAgIHR5cGU6ICdyZXZpZXcnLFxuICAgICAgICAgICAgICBzY29wZTogQVhQRW50aXR5Q29tbWFuZFNjb3BlLlR5cGVMZXZlbCxcbiAgICAgICAgICAgICAgZGlzYWJsZWQ6ICd7e2NvbnRleHQuZXZhbChcInN0YXR1c1wiKSAhPSBcIlBlbmRpbmdSZXZpZXdcIn19JyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIHRpdGxlOiBgdChcImRpc3RyaWJ1dGVkXCIsIHsgc2NvcGU6IFwiJHtpMThufVwiIH0pYCxcbiAgICAgICAgICAgICAgY29tbWFuZDoge1xuICAgICAgICAgICAgICAgIG5hbWU6ICdkaXN0cmlidXRlZCcsXG4gICAgICAgICAgICAgICAgb3B0aW9uczoge1xuICAgICAgICAgICAgICAgICAgaWQ6ICd7e2NvbnRleHQuZXZhbChcImlkXCIpfX0nLFxuICAgICAgICAgICAgICAgICAgdGl0bGU6ICd7e2NvbnRleHQuZXZhbChcInRpdGxlXCIpfX0nLFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIHByaW9yaXR5OiAncHJpbWFyeScsXG4gICAgICAgICAgICAgIHR5cGU6ICdyZXZpZXcnLFxuICAgICAgICAgICAgICBzY29wZTogQVhQRW50aXR5Q29tbWFuZFNjb3BlLlR5cGVMZXZlbCxcbiAgICAgICAgICAgICAgZGlzYWJsZWQ6ICd7e2NvbnRleHQuZXZhbChcInN0YXR1c1wiKSAhPSBcIlJldmlld2VkXCIgJiYgY29udGV4dC5ldmFsKFwic3RhdHVzXCIpICE9IFwiQ29tcGxldGVkXCJ9fScsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIF0sXG4gICAgICAgIH0sXG4gICAgICAgIGxpc3Q6IHtcbiAgICAgICAgICBhY3Rpb25zOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIHRpdGxlOiAndChcImRldGFpbFwiLCB7IHNjb3BlOiBcImNvbW1vblwiIH0pJyxcbiAgICAgICAgICAgICAgY29tbWFuZDogJ29wZW4tZW50aXR5JyxcbiAgICAgICAgICAgICAgcHJpb3JpdHk6ICdzZWNvbmRhcnknLFxuICAgICAgICAgICAgICB0eXBlOiAndmlldycsXG4gICAgICAgICAgICAgIGRlZmF1bHQ6IHRydWUsXG4gICAgICAgICAgICAgIHNjb3BlOiBBWFBFbnRpdHlDb21tYW5kU2NvcGUuSW5kaXZpZHVhbCxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIHRpdGxlOiBgdChcImRvY3VtZW50LXJldmlldy5zZW5kLXJldmlldy50aXRsZVwiLCB7IHNjb3BlOiBcIiR7aTE4bn1cIiB9KWAsXG4gICAgICAgICAgICAgIGljb246ICdmYS1saWdodCBmYS1zaGllbGQtY2hlY2snLFxuICAgICAgICAgICAgICBjb21tYW5kOiB7XG4gICAgICAgICAgICAgICAgbmFtZTogJ3NlbmQtdG8tcmV2aWV3JyxcbiAgICAgICAgICAgICAgICBvcHRpb25zOiB7XG4gICAgICAgICAgICAgICAgICBpZDogJ3t7Y29udGV4dC5ldmFsKFwiaWRcIil9fScsXG4gICAgICAgICAgICAgICAgICB0aXRsZTogJ3t7Y29udGV4dC5ldmFsKFwidGl0bGVcIil9fScsXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgcHJpb3JpdHk6ICdzZWNvbmRhcnknLFxuICAgICAgICAgICAgICB0eXBlOiAnc2VudCcsXG4gICAgICAgICAgICAgIHNjb3BlOiBBWFBFbnRpdHlDb21tYW5kU2NvcGUuSW5kaXZpZHVhbCxcbiAgICAgICAgICAgICAgZGlzYWJsZWQ6ICd7e2NvbnRleHQuZXZhbChcInN0YXR1c1wiKSAhPSBcIkRyYWZ0XCJ9fScsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICB0aXRsZTogYHQoXCJkb2N1bWVudC1yZXZpZXcuc3VibWl0LXJldmlldy50aXRsZVwiLCB7IHNjb3BlOiBcIiR7aTE4bn1cIiB9KWAsXG4gICAgICAgICAgICAgIGljb246ICdmYS1saWdodCBmYS1iYWxsb3QtY2hlY2snLFxuICAgICAgICAgICAgICBjb21tYW5kOiB7XG4gICAgICAgICAgICAgICAgbmFtZTogJ3N1Ym1pdC1yZXZpZXcnLFxuICAgICAgICAgICAgICAgIG9wdGlvbnM6IHtcbiAgICAgICAgICAgICAgICAgIGlkOiAne3tjb250ZXh0LmV2YWwoXCJyZXZpZXdSZWNvcmRJZFwiKX19JyxcbiAgICAgICAgICAgICAgICAgIC8vIHJldmlld2VkQXQgOiAne3sgdmFyaWFibGVzLmV4ZWN1dGUoXCJub3dcIikgfX0nLFxuICAgICAgICAgICAgICAgICAgZGVjb3JhdGlvbjoge1xuICAgICAgICAgICAgICAgICAgICBoZWFkZXI6IHtcbiAgICAgICAgICAgICAgICAgICAgICB0aXRsZTogJ3t7IGNvbnRleHQuZXZhbChcInRpdGxlXCIpICsgXCIgLSB2ZXJzaW9uOiBcIiArIGNvbnRleHQuZXZhbChcInZlcnNpb25cIikgfX0nLFxuICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICBwcmlvcml0eTogJ3NlY29uZGFyeScsXG4gICAgICAgICAgICAgIHR5cGU6ICdyZXZpZXcnLFxuICAgICAgICAgICAgICBzY29wZTogQVhQRW50aXR5Q29tbWFuZFNjb3BlLkluZGl2aWR1YWwsXG4gICAgICAgICAgICAgIGRpc2FibGVkOiAne3tjb250ZXh0LmV2YWwoXCJzdGF0dXNcIikgIT0gXCJQZW5kaW5nUmV2aWV3XCJ9fScsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICB0aXRsZTogYHQoXCJkaXN0cmlidXRlZFwiLCB7IHNjb3BlOiBcIiR7aTE4bn1cIiB9KWAsXG4gICAgICAgICAgICAgIGljb246ICdmYS1saWdodCBmYS1jaGFydC1uZXR3b3JrJyxcbiAgICAgICAgICAgICAgY29tbWFuZDoge1xuICAgICAgICAgICAgICAgIG5hbWU6ICdkaXN0cmlidXRlZCcsXG4gICAgICAgICAgICAgICAgb3B0aW9uczoge1xuICAgICAgICAgICAgICAgICAgaWQ6ICd7e2NvbnRleHQuZXZhbChcImlkXCIpfX0nLFxuICAgICAgICAgICAgICAgICAgdGl0bGU6ICd7e2NvbnRleHQuZXZhbChcInRpdGxlXCIpfX0nLFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIHByaW9yaXR5OiAnc2Vjb25kYXJ5JyxcbiAgICAgICAgICAgICAgdHlwZTogJ3JldmlldycsXG4gICAgICAgICAgICAgIHNjb3BlOiBBWFBFbnRpdHlDb21tYW5kU2NvcGUuSW5kaXZpZHVhbCxcbiAgICAgICAgICAgICAgZGlzYWJsZWQ6ICd7e2NvbnRleHQuZXZhbChcInN0YXR1c1wiKSAhPSBcIlJldmlld2VkXCIgJiYgY29udGV4dC5ldmFsKFwic3RhdHVzXCIpICE9IFwiQ29tcGxldGVkXCJ9fScsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIF0sXG4gICAgICAgICAgdmlld3M6IFtcbiAgICAgICAgICAgIGNyZWF0ZUFsbFF1ZXJ5Vmlldyh7IHNvcnRzOiBbeyBuYW1lOiAnbmFtZScsIGRpcjogJ2FzYycgfV0gfSksXG4gICAgICAgICAgICBjcmVhdGVRdWVyeVZpZXcoJ0RyYWZ0JywgYHQoXCJkcmFmdFwiLCB7IHNjb3BlOiBcIiR7aTE4bn1cIiB9KWAsIHRydWUsIHtcbiAgICAgICAgICAgICAgY29uZGl0aW9uczogW1xuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgIG5hbWU6ICdzdGF0dXMnLFxuICAgICAgICAgICAgICAgICAgb3BlcmF0b3I6IHtcbiAgICAgICAgICAgICAgICAgICAgdHlwZTogJ2VxdWFsJyxcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICB2YWx1ZTogJ0RyYWZ0JyxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgfSksXG4gICAgICAgICAgICBjcmVhdGVRdWVyeVZpZXcoJ1BlbmRpbmdSZXZpZXcnLCBgdChcInBlbmRpbmdcIiwgeyBzY29wZTogXCIke2kxOG59XCIgfSlgLCB0cnVlLCB7XG4gICAgICAgICAgICAgIGNvbmRpdGlvbnM6IFtcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICBuYW1lOiAnc3RhdHVzJyxcbiAgICAgICAgICAgICAgICAgIG9wZXJhdG9yOiB7XG4gICAgICAgICAgICAgICAgICAgIHR5cGU6ICdlcXVhbCcsXG4gICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgdmFsdWU6ICdQZW5kaW5nUmV2aWV3JyxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgfSksXG4gICAgICAgICAgICBjcmVhdGVRdWVyeVZpZXcoJ1Jldmlld2VkJywgYHQoXCJyZXZpZXdlZFwiLCB7IHNjb3BlOiBcIiR7aTE4bn1cIiB9KWAsIHRydWUsIHtcbiAgICAgICAgICAgICAgY29uZGl0aW9uczogW1xuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgIG5hbWU6ICdzdGF0dXMnLFxuICAgICAgICAgICAgICAgICAgb3BlcmF0b3I6IHtcbiAgICAgICAgICAgICAgICAgICAgdHlwZTogJ2VxdWFsJyxcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICB2YWx1ZTogJ1Jldmlld2VkJyxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgfSksXG4gICAgICAgICAgXSxcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgfSxcbiAgfTtcblxuICByZXR1cm4gZW50aXR5RGVmO1xufVxuIl19","import { AXMEntityCrudServiceImpl } from '@acorex/platform/layout/entity';\nimport { Injectable } from '@angular/core';\nimport { RootConfig } from '../../const';\nimport * as i0 from \"@angular/core\";\nexport class AXMFolderService extends AXMEntityCrudServiceImpl {\n}\nexport class AXMFolderServiceImpl extends AXMFolderService {\n constructor() {\n super(`${RootConfig.module.name}.${RootConfig.entities.folder.name}`);\n }\n async getPath(_) {\n throw new Error('Not implemented');\n }\n async searchFolders(_searchTerm, _rootFolderId) {\n throw new Error('Not implemented');\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: AXMFolderServiceImpl, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }\n static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: AXMFolderServiceImpl }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: AXMFolderServiceImpl, decorators: [{\n type: Injectable\n }], ctorParameters: () => [] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9sZGVyLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL21vZHVsZXMvZG9jdW1lbnQtbWFuYWdlbWVudC9zcmMvbGliL2VudGl0aWVzL2ZvbGRlci9mb2xkZXIuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUMxRSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxhQUFhLENBQUM7O0FBR3pDLE1BQU0sT0FBZ0IsZ0JBQWlCLFNBQVEsd0JBTTlDO0NBSUE7QUFHRCxNQUFNLE9BQU8sb0JBQXFCLFNBQVEsZ0JBQWdCO0lBQ3hEO1FBQ0UsS0FBSyxDQUFDLEdBQUcsVUFBVSxDQUFDLE1BQU0sQ0FBQyxJQUFJLElBQUksVUFBVSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQztJQUN4RSxDQUFDO0lBRVEsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFTO1FBQzlCLE1BQU0sSUFBSSxLQUFLLENBQUMsaUJBQWlCLENBQUMsQ0FBQztJQUNyQyxDQUFDO0lBRVEsS0FBSyxDQUFDLGFBQWEsQ0FDMUIsV0FBbUIsRUFDbkIsYUFBcUI7UUFFckIsTUFBTSxJQUFJLEtBQUssQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO0lBQ3JDLENBQUM7OEdBZFUsb0JBQW9CO2tIQUFwQixvQkFBb0I7OzJGQUFwQixvQkFBb0I7a0JBRGhDLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBWE1FbnRpdHlDcnVkU2VydmljZUltcGwgfSBmcm9tICdAYWNvcmV4L3BsYXRmb3JtL2xheW91dC9lbnRpdHknO1xuaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgUm9vdENvbmZpZyB9IGZyb20gJy4uLy4uL2NvbnN0JztcbmltcG9ydCB7IEFYTURvY3VtZW50TWFuYWdlbWVudEZvbGRlckNyZWF0ZUR0bywgQVhNRG9jdW1lbnRNYW5hZ2VtZW50Rm9sZGVyRW50aXR5TW9kZWwgfSBmcm9tICcuL2ZvbGRlci50eXBlcyc7XG5cbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBBWE1Gb2xkZXJTZXJ2aWNlIGV4dGVuZHMgQVhNRW50aXR5Q3J1ZFNlcnZpY2VJbXBsPFxuICBzdHJpbmcsXG4gIEFYTURvY3VtZW50TWFuYWdlbWVudEZvbGRlckVudGl0eU1vZGVsLFxuICBBWE1Eb2N1bWVudE1hbmFnZW1lbnRGb2xkZXJFbnRpdHlNb2RlbCxcbiAgQVhNRG9jdW1lbnRNYW5hZ2VtZW50Rm9sZGVyQ3JlYXRlRHRvXG4vL0FYTURvY3VtZW50TWFuYWdlbWVudEZvbGRlckdldER0b1xuPiB7XG4gIGFic3RyYWN0IGdldFBhdGgoZm9sZGVySWQ6IHN0cmluZywgc3RvcEZvbGRlcklkPzogc3RyaW5nKTogUHJvbWlzZTxBWE1Eb2N1bWVudE1hbmFnZW1lbnRGb2xkZXJFbnRpdHlNb2RlbFtdPjtcblxuICBhYnN0cmFjdCBzZWFyY2hGb2xkZXJzKHNlYXJjaFRlcm06IHN0cmluZywgcm9vdEZvbGRlcklkOiBzdHJpbmcpOiBQcm9taXNlPEFYTURvY3VtZW50TWFuYWdlbWVudEZvbGRlckVudGl0eU1vZGVsW10+O1xufVxuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgQVhNRm9sZGVyU2VydmljZUltcGwgZXh0ZW5kcyBBWE1Gb2xkZXJTZXJ2aWNlIHtcbiAgY29uc3RydWN0b3IoKSB7XG4gICAgc3VwZXIoYCR7Um9vdENvbmZpZy5tb2R1bGUubmFtZX0uJHtSb290Q29uZmlnLmVudGl0aWVzLmZvbGRlci5uYW1lfWApO1xuICB9XG5cbiAgb3ZlcnJpZGUgYXN5bmMgZ2V0UGF0aChfOiBzdHJpbmcpOiBQcm9taXNlPEFYTURvY3VtZW50TWFuYWdlbWVudEZvbGRlckVudGl0eU1vZGVsW10+IHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ05vdCBpbXBsZW1lbnRlZCcpO1xuICB9XG5cbiAgb3ZlcnJpZGUgYXN5bmMgc2VhcmNoRm9sZGVycyhcbiAgICBfc2VhcmNoVGVybTogc3RyaW5nLFxuICAgIF9yb290Rm9sZGVySWQ6IHN0cmluZ1xuICApOiBQcm9taXNlPEFYTURvY3VtZW50TWFuYWdlbWVudEZvbGRlckVudGl0eU1vZGVsW10+IHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ05vdCBpbXBsZW1lbnRlZCcpO1xuICB9XG59XG4iXX0=","import { AXPEntityCommandScope, AXPEntityQueryType, createAllQueryView } from '@acorex/platform/common';\nimport { AXPWidgetsCatalog } from '@acorex/platform/layout/builder';\nimport { RootConfig } from '../../const';\nimport { AXMFolderService } from './folder.service';\nexport async function folderFactory(injector) {\n const dataService = injector.get(AXMFolderService);\n const entityDef = {\n module: RootConfig.module.name,\n name: RootConfig.entities.folder.name,\n source: '',\n title: RootConfig.entities.folder.title,\n formats: {\n individual: RootConfig.entities.folder.title,\n plural: RootConfig.entities.folder.titlePlural,\n searchResult: {\n title: '{{ title }}',\n description: RootConfig.module.title,\n },\n },\n relatedEntities: [],\n groups: [\n {\n id: 'section',\n title: RootConfig.entities.folder.title,\n },\n ],\n properties: [\n {\n name: 'name',\n title: 't(\"name\", { scope: \"common\" })',\n groupId: 'section',\n options: {\n sort: {\n enabled: true,\n },\n },\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.text,\n },\n },\n validations: [\n {\n rule: 'required',\n },\n ],\n },\n {\n name: 'title',\n title: 't(\"title\", { scope: \"common\" })',\n groupId: 'section',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.text,\n },\n },\n validations: [\n {\n rule: 'required',\n },\n ],\n },\n ],\n columns: [{ name: 'name' }, { name: 'title' }],\n commands: {\n create: {\n execute: async (data) => {\n const res = await dataService.insertOne(data);\n return { id: res };\n },\n },\n delete: {\n execute: async (id) => {\n return await dataService.deleteOne(id);\n },\n },\n update: {\n execute: async (data) => {\n return await dataService.updateOne(data.id, data);\n },\n },\n },\n queries: {\n byKey: {\n execute: async (id) => {\n return await dataService.getOne(id);\n },\n type: AXPEntityQueryType.Single,\n },\n list: {\n execute: async (e) => {\n return await dataService.query(e);\n },\n type: AXPEntityQueryType.List,\n },\n },\n interfaces: {\n master: {\n create: {\n sections: [\n {\n id: 'section',\n },\n ],\n properties: [\n {\n name: 'name',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n },\n },\n },\n },\n {\n name: 'title',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n },\n },\n },\n },\n ],\n },\n update: {\n sections: [\n {\n id: 'section',\n },\n ],\n properties: [\n {\n name: 'name',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n },\n },\n },\n },\n {\n name: 'title',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n },\n },\n },\n },\n ],\n },\n single: {\n title: '{{title}}',\n sections: [\n {\n id: 'section',\n layout: {\n positions: {\n lg: {\n colSpan: 12,\n },\n },\n },\n },\n ],\n properties: [\n {\n name: 'name',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n },\n },\n },\n },\n {\n name: 'title',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n },\n },\n },\n },\n ],\n actions: [],\n },\n list: {\n actions: [\n {\n title: `t(\"create\", { scope: \"common\" })`,\n command: 'create-entity',\n priority: 'primary',\n type: 'create',\n scope: AXPEntityCommandScope.TypeLevel,\n },\n {\n title: 't(\"deleteItems\", { scope: \"common\" })',\n command: 'delete-entity',\n priority: 'primary',\n type: 'delete',\n scope: AXPEntityCommandScope.Selected,\n },\n {\n title: 't(\"detail\", { scope: \"common\" })',\n command: 'open-entity',\n priority: 'secondary',\n type: 'view',\n scope: AXPEntityCommandScope.Individual,\n },\n {\n title: 't(\"delete\", { scope: \"common\" })',\n command: 'delete-entity',\n priority: 'secondary',\n type: 'delete',\n scope: AXPEntityCommandScope.Individual,\n },\n ],\n views: [createAllQueryView({ sorts: [{ name: 'title', dir: 'asc' }] })],\n },\n },\n },\n };\n return entityDef;\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9sZGVyLmVudGl0eS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbW9kdWxlcy9kb2N1bWVudC1tYW5hZ2VtZW50L3NyYy9saWIvZW50aXRpZXMvZm9sZGVyL2ZvbGRlci5lbnRpdHkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFhLHFCQUFxQixFQUFFLGtCQUFrQixFQUFFLGtCQUFrQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDbkgsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFFcEUsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUN6QyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUVwRCxNQUFNLENBQUMsS0FBSyxVQUFVLGFBQWEsQ0FBQyxRQUFrQjtJQUNwRCxNQUFNLFdBQVcsR0FBRyxRQUFRLENBQUMsR0FBRyxDQUFDLGdCQUFnQixDQUFDLENBQUM7SUFFbkQsTUFBTSxTQUFTLEdBQWM7UUFDM0IsTUFBTSxFQUFFLFVBQVUsQ0FBQyxNQUFNLENBQUMsSUFBSTtRQUM5QixJQUFJLEVBQUUsVUFBVSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsSUFBSTtRQUNyQyxNQUFNLEVBQUUsRUFBRTtRQUNWLEtBQUssRUFBRSxVQUFVLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxLQUFLO1FBQ3ZDLE9BQU8sRUFBRTtZQUNQLFVBQVUsRUFBRSxVQUFVLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxLQUFLO1lBQzVDLE1BQU0sRUFBRSxVQUFVLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxXQUFXO1lBQzlDLFlBQVksRUFBRTtnQkFDWixLQUFLLEVBQUUsYUFBYTtnQkFDcEIsV0FBVyxFQUFFLFVBQVUsQ0FBQyxNQUFNLENBQUMsS0FBSzthQUNyQztTQUNGO1FBQ0QsZUFBZSxFQUFFLEVBQUU7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TyxFQUFFLEVBQUU7aUJBQ1o7Z0JBQ0QsSUFBSSxFQUFFO29CQUNKLE9BQU8sRUFBRTt3QkFDUDs0QkFDRSxLQUFLLEVBQUUsa0NBQWtDOzRCQUN6QyxPQUFPLEVBQUUsZUFBZTs0QkFDeEIsUUFBUSxFQUFFLFNBQVM7NEJBQ25CLElBQUksRUFBRSxRQUFROzRCQUNkLEtBQUssRUFBRSxxQkFBcUIsQ0FBQyxTQUFTO3lCQUN2Qzt3QkFDRDs0QkFDRSxLQUFLLEVBQUUsdUNBQXVDOzRCQUM5QyxPQUFPLEVBQUUsZUFBZTs0QkFDeEIsUUFBUSxFQUFFLFNBQVM7NEJBQ25CLElBQUksRUFBRSxRQUFROzRCQUNkLEtBQUssRUFBRSxxQkFBcUIsQ0FBQyxRQUFRO3lCQUN0Qzt3QkFDRDs0QkFDRSxLQUFLLEVBQUUsa0NBQWtDOzRCQUN6QyxPQUFPLEVBQUUsYUFBYTs0QkFDdEIsUUFBUSxFQUFFLFdBQVc7NEJBQ3JCLElBQUksRUFBRSxNQUFNOzRCQUNaLEtBQUssRUFBRSxxQkFBcUIsQ0FBQyxVQUFVO3lCQUN4Qzt3QkFDRDs0QkFDRSxLQUFLLEVBQUUsa0NBQWtDOzRCQUN6QyxPQUFPLEVBQUUsZUFBZTs0QkFDeEIsUUFBUSxFQUFFLFdBQVc7NEJBQ3JCLElBQUksRUFBRSxRQUFROzRCQUNkLEtBQUssRUFBRSxxQkFBcUIsQ0FBQyxVQUFVO3lCQUN4QztxQkFDRjtvQkFDRCxLQUFLLEVBQUUsQ0FBQyxrQkFBa0IsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBRSxHQUFHLEVBQUUsS0FBSyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUM7aUJBQ3hFO2FBQ0Y7U0FDRjtLQUNGLENBQUM7SUFFRixPQUFPLFNBQVMsQ0FBQztBQUNuQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQVhQRW50aXR5LCBBWFBFbnRpdHlDb21tYW5kU2NvcGUsIEFYUEVudGl0eVF1ZXJ5VHlwZSwgY3JlYXRlQWxsUXVlcnlWaWV3IH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9jb21tb24nO1xuaW1wb3J0IHsgQVhQV2lkZ2V0c0NhdGFsb2cgfSBmcm9tICdAYWNvcmV4L3BsYXRmb3JtL2xheW91dC9idWlsZGVyJztcbmltcG9ydCB7IEluamVjdG9yIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBSb290Q29uZmlnIH0gZnJvbSAnLi4vLi4vY29uc3QnO1xuaW1wb3J0IHsgQVhNRm9sZGVyU2VydmljZSB9IGZyb20gJy4vZm9sZGVyLnNlcnZpY2UnO1xuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gZm9sZGVyRmFjdG9yeShpbmplY3RvcjogSW5qZWN0b3IpOiBQcm9taXNlPEFYUEVudGl0eSB8IG51bGw+IHtcbiAgY29uc3QgZGF0YVNlcnZpY2UgPSBpbmplY3Rvci5nZXQoQVhNRm9sZGVyU2VydmljZSk7XG5cbiAgY29uc3QgZW50aXR5RGVmOiBBWFBFbnRpdHkgPSB7XG4gICAgbW9kdWxlOiBSb290Q29uZmlnLm1vZHVsZS5uYW1lLFxuICAgIG5hbWU6IFJvb3RDb25maWcuZW50aXRpZXMuZm9sZGVyLm5hbWUsXG4gICAgc291cmNlOiAnJyxcbiAgICB0aXRsZTogUm9vdENvbmZpZy5lbnRpdGllcy5mb2xkZXIudGl0bGUsXG4gICAgZm9ybWF0czoge1xuICAgICAgaW5kaXZpZHVhbDogUm9vdENvbmZpZy5lbnRpdGllcy5mb2xkZXIudGl0bGUsXG4gICAgICBwbHVyYWw6IFJvb3RDb25maWcuZW50aXRpZXMuZm9sZGVyLnRpdGxlUGx1cmFsLFxuICAgICAgc2VhcmNoUmVzdWx0OiB7XG4gICAgICAgIHRpdGxlOiAne3sgdGl0bGUgfX0nLFxuICAgICAgICBkZXNjcmlwdGlvbjogUm9vdENvbmZpZy5tb2R1bGUudGl0bGUsXG4gICAgICB9LFxuICAgIH0sXG4gICAgcmVsYXRlZEVudGl0aWVzOiBbXSxcbiAgICBncm91cHM6IFtcbiAgICAgIHtcbiAgICAgICAgaWQ6ICdzZWN0aW9uJyxcbiAgICAgICAgdGl0bGU6IFJvb3RDb25maWcuZW50aXRpZXMuZm9sZGVyLnRpdGxlLFxuICAgICAgfSxcbiAgICBdLFxuICAgIHByb3BlcnRpZXM6IFtcbiAgICAgIHtcbiAgICAgICAgbmFtZTogJ25hbWUnLFxuICAgICAgICB0aXRsZTogJ3QoXCJuYW1lXCIsIHsgc2NvcGU6IFwiY29tbW9uXCIgfSknLFxuICAgICAgICBncm91cElkOiAnc2VjdGlvbicsXG4gICAgICAgIG9wdGlvbnM6IHtcbiAgICAgICAgICBzb3J0OiB7XG4gICAgICAgICAgICBlbmFibGVkOiB0cnVlLFxuICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICAgIHNjaGVtYToge1xuICAgICAgICAgIGRhdGFUeXBlOiAnc3RyaW5nJyxcbiAgICAgICAgICBpbnRlcmZhY2U6IHtcbiAgICAgICAgICAgIHR5cGU6IEFYUFdpZGdldHNDYXRhbG9nLnRleHQsXG4gICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgICAgdmFsaWRhdGlvbnM6IFtcbiAgICAgICAgICB7XG4gICAgICAgICAgICBydWxlOiAncmVxdWlyZWQnLFxuICAgICAgICAgIH0sXG4gICAgICAgIF0sXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBuYW1lOiAndGl0bGUnLFxuICAgICAgICB0aXRsZTogJ3QoXCJ0aXRsZVwiLCB7IHNjb3BlOiBcImNvbW1vblwiIH0pJyxcbiAgICAgICAgZ3JvdXBJZDogJ3NlY3Rpb24nLFxuICAgICAgICBzY2hlbWE6IHtcbiAgICAgICAgICBkYXRhVHlwZTogJ3N0cmluZycsXG4gICAgICAgICAgaW50ZXJmYWNlOiB7XG4gICAgICAgICAgICB0eXBlOiBBWFBXaWRnZXRzQ2F0YWxvZy50ZXh0LFxuICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICAgIHZhbGlkYXRpb25zOiBbXG4gICAgICAgICAge1xuICAgICAgICAgICAgcnVsZTogJ3JlcXVpcmVkJyxcbiAgICAgICAgICB9LFxuICAgICAgICBdLFxuICAgICAgfSxcbiAgICBdLFxuICAgIGNvbHVtbnM6IFt7IG5hbWU6ICduYW1lJyB9LCB7IG5hbWU6ICd0aXRsZScgfV0sXG4gICAgY29tbWFuZHM6IHtcbiAgICAgIGNyZWF0ZToge1xuICAgICAgICBleGVjdXRlOiBhc3luYyAoZGF0YTogYW55KSA9PiB7XG4gICAgICAgICAgY29uc3QgcmVzID0gYXdhaXQgZGF0YVNlcnZpY2UuaW5zZXJ0T25lKGRhdGEpO1xuICAgICAgICAgIHJldHVybiB7IGlkOiByZXMgfTtcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgICBkZWxldGU6IHtcbiAgICAgICAgZXhlY3V0ZTogYXN5bmMgKGlkOiBhbnkpID0+IHtcbiAgICAgICAgICByZXR1cm4gYXdhaXQgZGF0YVNlcnZpY2UuZGVsZXRlT25lKGlkKTtcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgICB1cGRhdGU6IHtcbiAgICAgICAgZXhlY3V0ZTogYXN5bmMgKGRhdGE6IGFueSkgPT4ge1xuICAgICAgICAgIHJldHVybiBhd2FpdCBkYXRhU2VydmljZS51cGRhdGVPbmUoZGF0YS5pZCwgZGF0YSk7XG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgIH0sXG4gICAgcXVlcmllczoge1xuICAgICAgYnlLZXk6IHtcbiAgICAgICAgZXhlY3V0ZTogYXN5bmMgKGlkOiBzdHJpbmcpID0+IHtcbiAgICAgICAgICByZXR1cm4gYXdhaXQgZGF0YVNlcnZpY2UuZ2V0T25lKGlkKTtcbiAgICAgICAgfSxcbiAgICAgICAgdHlwZTogQVhQRW50aXR5UXVlcnlUeXBlLlNpbmdsZSxcbiAgICAgIH0sXG4gICAgICBsaXN0OiB7XG4gICAgICAgIGV4ZWN1dGU6IGFzeW5jIChlOiBhbnkpID0+IHtcbiAgICAgICAgICByZXR1cm4gYXdhaXQgZGF0YVNlcnZpY2UucXVlcnkoZSk7XG4gICAgICAgIH0sXG4gICAgICAgIHR5cGU6IEFYUEVudGl0eVF1ZXJ5VHlwZS5MaXN0LFxuICAgICAgfSxcbiAgICB9LFxuICAgIGludGVyZmFjZXM6IHtcbiAgICAgIG1hc3Rlcjoge1xuICAgICAgICBjcmVhdGU6IHtcbiAgICAgICAgICBzZWN0aW9uczogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBpZDogJ3NlY3Rpb24nLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICBdLFxuICAgICAgICAgIHByb3BlcnRpZXM6IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgbmFtZTogJ25hbWUnLFxuICAgICAgICAgICAgICBsYXlvdXQ6IHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbnM6IHtcbiAgICAgICAgICAgICAgICAgIGxnOiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbFNwYW46IDYsXG4gICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBuYW1lOiAndGl0bGUnLFxuICAgICAgICAgICAgICBsYXlvdXQ6IHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbnM6IHtcbiAgICAgICAgICAgICAgICAgIGxnOiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbFNwYW46IDYsXG4gICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIF0sXG4gICAgICAgIH0sXG4gICAgICAgIHVwZGF0ZToge1xuICAgICAgICAgIHNlY3Rpb25zOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIGlkOiAnc2VjdGlvbicsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIF0sXG4gICAgICAgICAgcHJvcGVydGllczogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBuYW1lOiAnbmFtZScsXG4gICAgICAgICAgICAgIGxheW91dDoge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uczoge1xuICAgICAgICAgICAgICAgICAgbGc6IHtcbiAgICAgICAgICAgICAgICAgICAgY29sU3BhbjogNixcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIG5hbWU6ICd0aXRsZScsXG4gICAgICAgICAgICAgIGxheW91dDoge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uczoge1xuICAgICAgICAgICAgICAgICAgbGc6IHtcbiAgICAgICAgICAgICAgICAgICAgY29sU3BhbjogNixcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgXSxcbiAgICAgICAgfSxcbiAgICAgICAgc2luZ2xlOiB7XG4gICAgICAgICAgdGl0bGU6ICd7e3RpdGxlfX0nLFxuICAgICAgICAgIHNlY3Rpb25zOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIGlkOiAnc2VjdGlvbicsXG4gICAgICAgICAgICAgIGxheW91dDoge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uczoge1xuICAgICAgICAgICAgICAgICAgbGc6IHtcbiAgICAgICAgICAgICAgICAgICAgY29sU3BhbjogMTIsXG4gICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIF0sXG4gICAgICAgICAgcHJvcGVydGllczogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBuYW1lOiAnbmFtZScsXG4gICAgICAgICAgICAgIGxheW91dDoge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uczoge1xuICAgICAgICAgICAgICAgICAgbGc6IHtcbiAgICAgICAgICAgICAgICAgICAgY29sU3BhbjogNixcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIG5hbWU6ICd0aXRsZScsXG4gICAgICAgICAgICAgIGxheW91dDoge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uczoge1xuICAgICAgICAgICAgICAgICAgbGc6IHtcbiAgICAgICAgICAgICAgICAgICAgY29sU3BhbjogNixcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgXSxcbiAgICAgICAgICBhY3Rpb25zOiBbXSxcbiAgICAgICAgfSxcbiAgICAgICAgbGlzdDoge1xuICAgICAgICAgIGFjdGlvbnM6IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgdGl0bGU6IGB0KFwiY3JlYXRlXCIsIHsgc2NvcGU6IFwiY29tbW9uXCIgfSlgLFxuICAgICAgICAgICAgICBjb21tYW5kOiAnY3JlYXRlLWVudGl0eScsXG4gICAgICAgICAgICAgIHByaW9yaXR5OiAncHJpbWFyeScsXG4gICAgICAgICAgICAgIHR5cGU6ICdjcmVhdGUnLFxuICAgICAgICAgICAgICBzY29wZTogQVhQRW50aXR5Q29tbWFuZFNjb3BlLlR5cGVMZXZlbCxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIHRpdGxlOiAndChcImRlbGV0ZUl0ZW1zXCIsIHsgc2NvcGU6IFwiY29tbW9uXCIgfSknLFxuICAgICAgICAgICAgICBjb21tYW5kOiAnZGVsZXRlLWVudGl0eScsXG4gICAgICAgICAgICAgIHByaW9yaXR5OiAncHJpbWFyeScsXG4gICAgICAgICAgICAgIHR5cGU6ICdkZWxldGUnLFxuICAgICAgICAgICAgICBzY29wZTogQVhQRW50aXR5Q29tbWFuZFNjb3BlLlNlbGVjdGVkLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgdGl0bGU6ICd0KFwiZGV0YWlsXCIsIHsgc2NvcGU6IFwiY29tbW9uXCIgfSknLFxuICAgICAgICAgICAgICBjb21tYW5kOiAnb3Blbi1lbnRpdHknLFxuICAgICAgICAgICAgICBwcmlvcml0eTogJ3NlY29uZGFyeScsXG4gICAgICAgICAgICAgIHR5cGU6ICd2aWV3JyxcbiAgICAgICAgICAgICAgc2NvcGU6IEFYUEVudGl0eUNvbW1hbmRTY29wZS5JbmRpdmlkdWFsLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgdGl0bGU6ICd0KFwiZGVsZXRlXCIsIHsgc2NvcGU6IFwiY29tbW9uXCIgfSknLFxuICAgICAgICAgICAgICBjb21tYW5kOiAnZGVsZXRlLWVudGl0eScsXG4gICAgICAgICAgICAgIHByaW9yaXR5OiAnc2Vjb25kYXJ5JyxcbiAgICAgICAgICAgICAgdHlwZTogJ2RlbGV0ZScsXG4gICAgICAgICAgICAgIHNjb3BlOiBBWFBFbnRpdHlDb21tYW5kU2NvcGUuSW5kaXZpZHVhbCxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgXSxcbiAgICAgICAgICB2aWV3czogW2NyZWF0ZUFsbFF1ZXJ5Vmlldyh7IHNvcnRzOiBbeyBuYW1lOiAndGl0bGUnLCBkaXI6ICdhc2MnIH1dIH0pXSxcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgfSxcbiAgfTtcblxuICByZXR1cm4gZW50aXR5RGVmO1xufVxuIl19","import { NgModule } from '@angular/core';\nimport { AXMFolderService, AXMFolderServiceImpl } from './folder.service';\nimport * as i0 from \"@angular/core\";\nexport class AXMFolderEntityModule {\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: AXMFolderEntityModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }\n static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: \"14.0.0\", version: \"20.1.8\", ngImport: i0, type: AXMFolderEntityModule }); }\n static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: AXMFolderEntityModule, providers: [\n {\n provide: AXMFolderService,\n useClass: AXMFolderServiceImpl,\n },\n ] }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: AXMFolderEntityModule, decorators: [{\n type: NgModule,\n args: [{\n imports: [],\n exports: [],\n declarations: [],\n providers: [\n {\n provide: AXMFolderService,\n useClass: AXMFolderServiceImpl,\n },\n ],\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9sZGVyLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbW9kdWxlcy9kb2N1bWVudC1tYW5hZ2VtZW50L3NyYy9saWIvZW50aXRpZXMvZm9sZGVyL2ZvbGRlci5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQzs7QUFhMUUsTUFBTSxPQUFPLHFCQUFxQjs4R0FBckIscUJBQXFCOytHQUFyQixxQkFBcUI7K0dBQXJCLHFCQUFxQixhQVBuQjtZQUNQO2dCQUNJLE9BQU8sRUFBRSxnQkFBZ0I7Z0JBQ3pCLFFBQVEsRUFBRSxvQkFBb0I7YUFDakM7U0FDSjs7MkZBRVEscUJBQXFCO2tCQVhqQyxRQUFRO21CQUFDO29CQUNOLE9BQU8sRUFBRSxFQUFFO29CQUNYLE9BQU8sRUFBRSxFQUFFO29CQUNYLFlBQVksRUFBRSxFQUFFO29CQUNoQixTQUFTLEVBQUU7d0JBQ1A7NEJBQ0ksT0FBTyxFQUFFLGdCQUFnQjs0QkFDekIsUUFBUSxFQUFFLG9CQUFvQjt5QkFDakM7cUJBQ0o7aUJBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQVhNRm9sZGVyU2VydmljZSwgQVhNRm9sZGVyU2VydmljZUltcGwgfSBmcm9tICcuL2ZvbGRlci5zZXJ2aWNlJztcblxuQE5nTW9kdWxlKHtcbiAgICBpbXBvcnRzOiBbXSxcbiAgICBleHBvcnRzOiBbXSxcbiAgICBkZWNsYXJhdGlvbnM6IFtdLFxuICAgIHByb3ZpZGVyczogW1xuICAgICAgICB7XG4gICAgICAgICAgICBwcm92aWRlOiBBWE1Gb2xkZXJTZXJ2aWNlLFxuICAgICAgICAgICAgdXNlQ2xhc3M6IEFYTUZvbGRlclNlcnZpY2VJbXBsLFxuICAgICAgICB9LFxuICAgIF0sXG59KVxuZXhwb3J0IGNsYXNzIEFYTUZvbGRlckVudGl0eU1vZHVsZSB7IH1cbiJdfQ==","import { AXMEntityCrudServiceImpl } from '@acorex/platform/layout/entity';\nimport { Injectable } from '@angular/core';\nimport { RootConfig } from '../../const';\nimport * as i0 from \"@angular/core\";\nexport class AXMReviewService extends AXMEntityCrudServiceImpl {\n}\nexport class AXMReviewServiceImpl extends AXMReviewService {\n constructor() {\n super(`${RootConfig.module.name}.${RootConfig.entities.review.name}`);\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: AXMReviewServiceImpl, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }\n static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: AXMReviewServiceImpl }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: AXMReviewServiceImpl, decorators: [{\n type: Injectable\n }], ctorParameters: () => [] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmV2aWV3LnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL21vZHVsZXMvZG9jdW1lbnQtbWFuYWdlbWVudC9zcmMvbGliL2VudGl0aWVzL3Jldmlldy9yZXZpZXcuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUMxRSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxhQUFhLENBQUM7O0FBR3pDLE1BQU0sT0FBZ0IsZ0JBQWlCLFNBQVEsd0JBRzlDO0NBQUc7QUFHSixNQUFNLE9BQU8sb0JBQXFCLFNBQVEsZ0JBQWdCO0lBQ3hEO1FBQ0UsS0FBSyxDQUFDLEdBQUcsVUFBVSxDQUFDLE1BQU0sQ0FBQyxJQUFJLElBQUksVUFBVSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQztJQUN4RSxDQUFDOzhHQUhVLG9CQUFvQjtrSEFBcEIsb0JBQW9COzsyRkFBcEIsb0JBQW9CO2tCQURoQyxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQVhNRW50aXR5Q3J1ZFNlcnZpY2VJbXBsIH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9sYXlvdXQvZW50aXR5JztcbmltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFJvb3RDb25maWcgfSBmcm9tICcuLi8uLi9jb25zdCc7XG5pbXBvcnQgeyBBWE1Eb2N1bWVudE1hbmFnZW1lbnRSZXZpZXdFbnRpdHlNb2RlbCB9IGZyb20gJy4vcmV2aWV3LnR5cGVzJztcblxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIEFYTVJldmlld1NlcnZpY2UgZXh0ZW5kcyBBWE1FbnRpdHlDcnVkU2VydmljZUltcGw8XG4gIHN0cmluZyxcbiAgQVhNRG9jdW1lbnRNYW5hZ2VtZW50UmV2aWV3RW50aXR5TW9kZWxcbj4ge31cblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIEFYTVJldmlld1NlcnZpY2VJbXBsIGV4dGVuZHMgQVhNUmV2aWV3U2VydmljZSB7XG4gIGNvbnN0cnVjdG9yKCkge1xuICAgIHN1cGVyKGAke1Jvb3RDb25maWcubW9kdWxlLm5hbWV9LiR7Um9vdENvbmZpZy5lbnRpdGllcy5yZXZpZXcubmFtZX1gKTtcbiAgfVxufVxuIl19","import { AXPEntityQueryType, createAllQueryView } from '@acorex/platform/common';\nimport { AXPWidgetsCatalog } from '@acorex/platform/layout/builder';\nimport { RootConfig } from '../../const';\nimport { AXMReviewService } from './review.service';\n// Helper function to update document status based on review status\nasync function updateDocumentStatus(documentId, reviewStatus, injector) {\n try {\n // Import document service dynamically to avoid circular dependencies\n const { AXMDocumentService } = await import('../document/document.service');\n const documentService = injector.get(AXMDocumentService);\n // Map review status to document workflow phase\n let documentStatus;\n switch (reviewStatus) {\n case 'Approved':\n documentStatus = 'Reviewed';\n break;\n case 'Rejected':\n documentStatus = 'Rejected';\n break;\n case 'Pending':\n documentStatus = 'PendingReview';\n break;\n default:\n documentStatus = 'PendingReview';\n }\n // Update the document status\n await documentService.updateOne(documentId, { status: documentStatus });\n }\n catch (error) {\n console.error('Failed to update document status:', error);\n // Don't throw error to avoid breaking the review process\n }\n}\nexport async function reviewFactory(injector) {\n const dataService = injector.get(AXMReviewService);\n const i18n = RootConfig.config.i18n;\n const entityDef = {\n module: RootConfig.module.name,\n name: RootConfig.entities.review.name,\n source: '',\n title: RootConfig.entities.review.title,\n formats: {\n individual: RootConfig.entities.review.title,\n plural: RootConfig.entities.review.titlePlural,\n searchResult: {\n title: '{{ title }}',\n description: RootConfig.module.title,\n },\n },\n relatedEntities: [],\n groups: [\n {\n id: 'section',\n title: RootConfig.entities.review.title,\n },\n ],\n properties: [\n {\n name: 'version',\n title: `t(\"version\", { scope: \"${i18n}\" })`,\n groupId: 'section',\n schema: {\n dataType: 'number',\n interface: {\n type: AXPWidgetsCatalog.textBlockLayout,\n options: {\n content: `{{ context.eval('version') }}`,\n },\n },\n },\n },\n {\n name: 'documentId',\n groupId: 'section',\n title: `t(\"document\", { scope: \"${i18n}\" })`,\n options: {\n sort: {\n enabled: true,\n },\n filter: {\n advance: {\n enabled: true,\n },\n inline: {\n enabled: true,\n },\n },\n },\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.lookup,\n options: {\n entity: `${RootConfig.module.name}.${RootConfig.entities.document.name}`,\n multiple: false,\n filter: \"{{ { logic:'and' , filters: [ { field:'documentType.requiresReview' , value: true , operator: { type:'equal' } },] } }}\",\n textField: 'name',\n valueField: 'id',\n expose: [\n { source: 'id', target: 'document.id' },\n { source: 'name', target: 'document.name' },\n { source: 'title', target: 'document.title' },\n { source: 'version', target: 'document.version' },\n ],\n },\n triggers: [\n {\n event: \"{{ events.context('documentId') }}\",\n action: \"{{ context.set('version' , context.eval('document').version ) }}\",\n },\n ],\n },\n },\n validations: [\n {\n rule: 'required',\n },\n ],\n },\n {\n name: 'reviewerId',\n title: `t(\"reviewer\", { scope: \"${i18n}\" })`,\n groupId: 'section',\n schema: {\n dataType: 'string',\n defaultValue: '{{ session.currentUser().id }}',\n interface: {\n type: AXPWidgetsCatalog.lookup,\n options: {\n entity: 'SecurityManagement.User',\n multiple: false,\n textField: 'username',\n valueField: 'id',\n expose: [\n { source: 'id', target: 'reviewer.id' },\n { source: 'username', target: 'reviewer.username' },\n ],\n },\n },\n },\n validations: [\n {\n rule: 'required',\n },\n ],\n },\n {\n name: 'status',\n title: `t(\"approve\", { scope: \"${i18n}\" })`,\n groupId: 'section',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.toggle,\n options: {},\n },\n },\n validations: [\n {\n rule: 'required',\n },\n ],\n },\n {\n name: 'comment',\n title: `t(\"comment\", { scope: \"${i18n}\" })`,\n groupId: 'section',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.richText,\n },\n },\n },\n {\n name: 'reviewedAt',\n title: `t(\"reviewedAt\", { scope: \"${i18n}\" })`,\n groupId: 'section',\n options: {\n sort: {\n enabled: true,\n },\n filter: {\n advance: {\n enabled: true,\n },\n inline: {\n enabled: false,\n },\n },\n },\n schema: {\n defaultValue: '{{ variables.execute(\"now\") }}',\n dataType: 'date',\n interface: {\n type: AXPWidgetsCatalog.dateTime,\n options: {\n showTime: true,\n },\n },\n },\n validations: [\n {\n rule: 'required',\n },\n ],\n },\n {\n name: 'modifiedAt',\n title: `t(\"modifiedAt\", { scope: \"${i18n}\" })`,\n groupId: 'section',\n options: {\n sort: {\n enabled: true,\n },\n filter: {\n advance: {\n enabled: true,\n },\n inline: {\n enabled: false,\n },\n },\n },\n schema: {\n dataType: 'date',\n interface: {\n type: AXPWidgetsCatalog.dateTime,\n options: {\n showTime: true,\n },\n },\n },\n },\n {\n name: 'modifiedBy',\n title: `t(\"modifiedBy\", { scope: \"${i18n}\" })`,\n groupId: 'section',\n options: {\n sort: {\n enabled: true,\n },\n filter: {\n advance: {\n enabled: true,\n },\n inline: {\n enabled: true,\n },\n },\n },\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.lookup,\n options: {\n entity: 'SecurityManagement.User',\n multiple: false,\n textField: 'name',\n valueField: 'id',\n expose: [\n { source: 'id', target: 'modifier.id' },\n { source: 'name', target: 'modifier.name' },\n ],\n },\n },\n },\n },\n ],\n columns: [\n { name: 'documentId', options: { dataPath: 'document.name' } },\n { name: 'reviewerId', options: { dataPath: 'reviewer.title' } },\n { name: 'status' },\n { name: 'comment' },\n { name: 'reviewedAt' },\n { name: 'modifiedAt' },\n { name: 'modifiedBy' },\n ],\n commands: {\n create: {\n execute: async (data) => {\n // Set reviewedAt to current date if not provided\n if (!data.reviewedAt) {\n data.reviewedAt = new Date();\n }\n //TODO for test\n data.reviewStatus = 'Approved';\n // Create the review record\n const res = await dataService.insertOne(data);\n // Update document status based on review status\n await updateDocumentStatus(data.documentId, data.reviewStatus, injector);\n return { id: res };\n },\n },\n delete: {\n execute: async (id) => {\n return await dataService.deleteOne(id);\n },\n },\n update: {\n execute: async (data) => {\n // Update reviewedAt to current date\n data.reviewedAt = new Date();\n //TODO for test\n data.reviewStatus = 'Approved';\n // Update the review record\n const result = await dataService.updateOne(data.id, data);\n // Update document status based on review status\n await updateDocumentStatus(data.documentId, data.reviewStatus, injector);\n return result;\n },\n },\n },\n queries: {\n byKey: {\n execute: async (id) => {\n const review = await dataService.getOne(id);\n return {\n ...review,\n reviewedAt: review.reviewedAt ?? new Date(),\n };\n },\n type: AXPEntityQueryType.Single,\n },\n list: {\n execute: async (e) => {\n const a = await dataService.query(e);\n console.log(a);\n return a;\n },\n type: AXPEntityQueryType.List,\n },\n },\n interfaces: {\n master: {\n create: {\n sections: [\n {\n id: 'section',\n },\n ],\n properties: [\n {\n name: 'documentId',\n layout: {\n positions: {\n lg: {\n colSpan: 12,\n order: 1,\n },\n },\n },\n },\n {\n name: 'reviewerId',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n order: 5,\n },\n },\n },\n },\n {\n name: 'version',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n order: 2,\n },\n },\n },\n },\n {\n name: 'status',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n order: 3,\n },\n },\n },\n },\n {\n name: 'comment',\n layout: {\n positions: {\n lg: {\n colSpan: 12,\n order: 4,\n },\n },\n },\n },\n {\n name: 'reviewedAt',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n order: 6,\n },\n },\n },\n },\n ],\n },\n update: {\n sections: [\n {\n id: 'section',\n },\n ],\n properties: [\n {\n name: 'reviewerId',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n order: 5,\n },\n },\n },\n },\n {\n name: 'comment',\n layout: {\n positions: {\n lg: {\n colSpan: 12,\n order: 4,\n },\n },\n },\n },\n {\n name: 'reviewedAt',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n order: 6,\n },\n },\n },\n },\n ],\n },\n single: {\n title: '{{document.name}} - Review',\n sections: [\n {\n id: 'section',\n layout: {\n positions: {\n lg: {\n colSpan: 12,\n },\n },\n },\n },\n ],\n properties: [\n {\n name: 'documentId',\n dataPath: 'document',\n layout: {\n positions: {\n lg: {\n colSpan: 12,\n order: 1,\n },\n },\n },\n },\n {\n name: 'reviewerId',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n order: 5,\n },\n },\n },\n },\n {\n name: 'version',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n order: 2,\n },\n },\n },\n },\n {\n name: 'status',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n order: 3,\n },\n },\n },\n },\n {\n name: 'comment',\n layout: {\n positions: {\n lg: {\n colSpan: 12,\n order: 4,\n },\n },\n },\n },\n {\n name: 'reviewedAt',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n order: 6,\n },\n },\n },\n },\n {\n name: 'modifiedAt',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n order: 7,\n },\n },\n },\n },\n {\n name: 'modifiedBy',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n order: 8,\n },\n },\n },\n },\n ],\n actions: [],\n },\n list: {\n actions: [],\n views: [\n createAllQueryView({\n sorts: [{ name: 'reviewedAt', dir: 'desc' }],\n }),\n ],\n },\n },\n },\n };\n return entityDef;\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmV2aWV3LmVudGl0eS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbW9kdWxlcy9kb2N1bWVudC1tYW5hZ2VtZW50L3NyYy9saWIvZW50aXRpZXMvcmV2aWV3L3Jldmlldy5lbnRpdHkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFhLGtCQUFrQixFQUFFLGtCQUFrQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDNUYsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFFcEUsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUV6QyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUVwRCxtRUFBbUU7QUFDbkUsS0FBSyxVQUFVLG9CQUFvQixDQUFDLFVBQWtCLEVBQUUsWUFBb0IsRUFBRSxRQUFrQjtJQUM5RixJQUFJLENBQUM7UUFDSCxxRUFBcUU7UUFDckUsTUFBTSxFQUFFLGtCQUFrQixFQUFFLEdBQUcsTUFBTSxNQUFNLENBQUMsOEJBQThCLENBQUMsQ0FBQztRQUM1RSxNQUFNLGVBQWUsR0FBRyxRQUFRLENBQUMsR0FBRyxDQUFDLGtCQUFrQixDQUFDLENBQUM7UUFFekQsK0NBQStDO1FBQy9DLElBQUksY0FBd0MsQ0FBQztRQUM3QyxRQUFRLFlBQVksRUFBRSxDQUFDO1lBQ3JCLEtBQUssVUFBVTtnQkFDYixjQUFjLEdBQUcsVUFBVSxDQUFDO2dCQUM1QixNQUFNO1lBQ1IsS0FBSyxVQUFVO2dCQUNiLGNBQWMsR0FBRyxVQUFVLENBQUM7Z0JBQzVCLE1BQU07WUFDUixLQUFLLFNBQVM7Z0JBQ1osY0FBYyxHQUFHLGVBQWUsQ0FBQztnQkFDakMsTUFBTTtZQUNSO2dCQUNFLGNBQWMsR0FBRyxlQUFlLENBQUM7UUFDckMsQ0FBQztRQUVELDZCQUE2QjtRQUM3QixNQUFNLGVBQWUsQ0FBQyxTQUFTLENB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NEJBQ0UsSUFBSSxFQUFFLFlBQVk7NEJBQ2xCLE1BQU0sRUFBRTtnQ0FDTixTQUFTLEVBQUU7b0NBQ1QsRUFBRSxFQUFFO3dDQUNGLE9BQU8sRUFBRSxDQUFDO3dDQUNWLEtBQUssRUFBRSxDQUFDO3FDQUNUO2lDQUNGOzZCQUNGO3lCQUNGO3FCQUNGO29CQUNELE9BQU8sRUFBRSxFQUFFO2lCQUNaO2dCQUNELElBQUksRUFBRTtvQkFDSixPQUFPLEVBQUUsRUFBRTtvQkFDWCxLQUFLLEVBQUU7d0JBQ0wsa0JBQWtCLENBQUM7NEJBQ2pCLEtBQUssRUFBRSxDQUFDLEVBQUUsSUFBSSxFQUFFLFlBQVksRUFBRSxHQUFHLEVBQUUsTUFBTSxFQUFFLENBQUM7eUJBQzdDLENBQUM7cUJBQ0g7aUJBQ0Y7YUFDRjtTQUNGO0tBQ0YsQ0FBQztJQUVGLE9BQU8sU0FBUyxDQUFDO0FBQ25CLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBWFBFbnRpdHksIEFYUEVudGl0eVF1ZXJ5VHlwZSwgY3JlYXRlQWxsUXVlcnlWaWV3IH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9jb21tb24nO1xuaW1wb3J0IHsgQVhQV2lkZ2V0c0NhdGFsb2cgfSBmcm9tICdAYWNvcmV4L3BsYXRmb3JtL2xheW91dC9idWlsZGVyJztcbmltcG9ydCB7IEluamVjdG9yIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBSb290Q29uZmlnIH0gZnJvbSAnLi4vLi4vY29uc3QnO1xuaW1wb3J0IHsgQVhNRG9jdW1lbnRXb3JrZmxvd1BoYXNlIH0gZnJvbSAnLi4vZG9jdW1lbnQvZG9jdW1lbnQudHlwZXMnO1xuaW1wb3J0IHsgQVhNUmV2aWV3U2VydmljZSB9IGZyb20gJy4vcmV2aWV3LnNlcnZpY2UnO1xuXG4vLyBIZWxwZXIgZnVuY3Rpb24gdG8gdXBkYXRlIGRvY3VtZW50IHN0YXR1cyBiYXNlZCBvbiByZXZpZXcgc3RhdHVzXG5hc3luYyBmdW5jdGlvbiB1cGRhdGVEb2N1bWVudFN0YXR1cyhkb2N1bWVudElkOiBzdHJpbmcsIHJldmlld1N0YXR1czogc3RyaW5nLCBpbmplY3RvcjogSW5qZWN0b3IpOiBQcm9taXNlPHZvaWQ+IHtcbiAgdHJ5IHtcbiAgICAvLyBJbXBvcnQgZG9jdW1lbnQgc2VydmljZSBkeW5hbWljYWxseSB0byBhdm9pZCBjaXJjdWxhciBkZXBlbmRlbmNpZXNcbiAgICBjb25zdCB7IEFYTURvY3VtZW50U2VydmljZSB9ID0gYXdhaXQgaW1wb3J0KCcuLi9kb2N1bWVudC9kb2N1bWVudC5zZXJ2aWNlJyk7XG4gICAgY29uc3QgZG9jdW1lbnRTZXJ2aWNlID0gaW5qZWN0b3IuZ2V0KEFYTURvY3VtZW50U2VydmljZSk7XG5cbiAgICAvLyBNYXAgcmV2aWV3IHN0YXR1cyB0byBkb2N1bWVudCB3b3JrZmxvdyBwaGFzZVxuICAgIGxldCBkb2N1bWVudFN0YXR1czogQVhNRG9jdW1lbnRXb3JrZmxvd1BoYXNlO1xuICAgIHN3aXRjaCAocmV2aWV3U3RhdHVzKSB7XG4gICAgICBjYXNlICdBcHByb3ZlZCc6XG4gICAgICAgIGRvY3VtZW50U3RhdHVzID0gJ1Jldmlld2VkJztcbiAgICAgICAgYnJlYWs7XG4gICAgICBjYXNlICdSZWplY3RlZCc6XG4gICAgICAgIGRvY3VtZW50U3RhdHVzID0gJ1JlamVjdGVkJztcbiAgICAgICAgYnJlYWs7XG4gICAgICBjYXNlICdQZW5kaW5nJzpcbiAgICAgICAgZG9jdW1lbnRTdGF0dXMgPSAnUGVuZGluZ1Jldmlldyc7XG4gICAgICAgIGJyZWFrO1xuICAgICAgZGVmYXVsdDpcbiAgICAgICAgZG9jdW1lbnRTdGF0dXMgPSAnUGVuZGluZ1Jldmlldyc7XG4gICAgfVxuXG4gICAgLy8gVXBkYXRlIHRoZSBkb2N1bWVudCBzdGF0dXNcbiAgICBhd2FpdCBkb2N1bWVudFNlcnZpY2UudXBkYXRlT25lKGRvY3VtZW50SWQsIHsgc3RhdHVzOiBkb2N1bWVudFN0YXR1cyB9KTtcbiAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICBjb25zb2xlLmVycm9yKCdGYWlsZWQgdG8gdXBkYXRlIGRvY3VtZW50IHN0YXR1czonLCBlcnJvcik7XG4gICAgLy8gRG9uJ3QgdGhyb3cgZXJyb3IgdG8gYXZvaWQgYnJlYWtpbmcgdGhlIHJldmlldyBwcm9jZXNzXG4gIH1cbn1cblxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIHJldmlld0ZhY3RvcnkoaW5qZWN0b3I6IEluamVjdG9yKTogUHJvbWlzZTxBWFBFbnRpdHkgfCBudWxsPiB7XG4gIGNvbnN0IGRhdGFTZXJ2aWNlID0gaW5qZWN0b3IuZ2V0KEFYTVJldmlld1NlcnZpY2UpO1xuICBjb25zdCBpMThuID0gUm9vdENvbmZpZy5jb25maWcuaTE4bjtcblxuICBjb25zdCBlbnRpdHlEZWY6IEFYUEVudGl0eSA9IHtcbiAgICBtb2R1bGU6IFJvb3RDb25maWcubW9kdWxlLm5hbWUsXG4gICAgbmFtZTogUm9vdENvbmZpZy5lbnRpdGllcy5yZXZpZXcubmFtZSxcbiAgICBzb3VyY2U6ICcnLFxuICAgIHRpdGxlOiBSb290Q29uZmlnLmVudGl0aWVzLnJldmlldy50aXRsZSxcbiAgICBmb3JtYXRzOiB7XG4gICAgICBpbmRpdmlkdWFsOiBSb290Q29uZmlnLmVudGl0aWVzLnJldmlldy50aXRsZSxcbiAgICAgIHBsdXJhbDogUm9vdENvbmZpZy5lbnRpdGllcy5yZXZpZXcudGl0bGVQbHVyYWwsXG4gICAgICBzZWFyY2hSZXN1bHQ6IHtcbiAgICAgICAgdGl0bGU6ICd7eyB0aXRsZSB9fScsXG4gICAgICAgIGRlc2NyaXB0aW9uOiBSb290Q29uZmlnLm1vZHVsZS50aXRsZSxcbiAgICAgIH0sXG4gICAgfSxcbiAgICByZWxhdGVkRW50aXRpZXM6IFtdLFxuICAgIGdyb3VwczogW1xuICAgICAge1xuICAgICAgICBpZDogJ3NlY3Rpb24nLFxuICAgICAgICB0aXRsZTogUm9vdENvbmZpZy5lbnRpdGllcy5yZXZpZXcudGl0bGUsXG4gICAgICB9LFxuICAgIF0sXG4gICAgcHJvcGVydGllczogW1xuICAgICAge1xuICAgICAgICBuYW1lOiAndmVyc2lvbicsXG4gICAgICAgIHRpdGxlOiBgdChcInZlcnNpb25cIiwgeyBzY29wZTogXCIke2kxOG59XCIgfSlgLFxuICAgICAgICBncm91cElkOiAnc2VjdGlvbicsXG4gICAgICAgIHNjaGVtYToge1xuICAgICAgICAgIGRhdGFUeXBlOiAnbnVtYmVyJyxcbiAgICAgICAgICBpbnRlcmZhY2U6IHtcbiAgICAgICAgICAgIHR5cGU6IEFYUFdpZGdldHNDYXRhbG9nLnRleHRCbG9ja0xheW91dCxcbiAgICAgICAgICAgIG9wdGlvbnM6IHtcbiAgICAgICAgICAgICAgY29udGVudDogYHt7IGNvbnRleHQuZXZhbCgndmVyc2lvbicpIH19YCxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIG5hbWU6ICdkb2N1bWVudElkJyxcbiAgICAgICAgZ3JvdXBJZDogJ3NlY3Rpb24nLFxuICAgICAgICB0aXRsZTogYHQoXCJkb2N1bWVudFwiLCB7IHNjb3BlOiBcIiR7aTE4bn1cIiB9KWAsXG4gICAgICAgIG9wdGlvbnM6IHtcbiAgICAgICAgICBzb3J0OiB7XG4gICAgICAgICAgICBlbmFibGVkOiB0cnVlLFxuICAgICAgICAgIH0sXG4gICAgICAgICAgZmlsdGVyOiB7XG4gICAgICAgICAgICBhZHZhbmNlOiB7XG4gICAgICAgICAgICAgIGVuYWJsZWQ6IHRydWUsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgaW5saW5lOiB7XG4gICAgICAgICAgICAgIGVuYWJsZWQ6IHRydWUsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICAgIHNjaGVtYToge1xuICAgICAgICAgIGRhdGFUeXBlOiAnc3RyaW5nJyxcbiAgICAgICAgICBpbnRlcmZhY2U6IHtcbiAgICAgICAgICAgIHR5cGU6IEFYUFdpZGdldHNDYXRhbG9nLmxvb2t1cCxcbiAgICAgICAgICAgIG9wdGlvbnM6IHtcbiAgICAgICAgICAgICAgZW50aXR5OiBgJHtSb290Q29uZmlnLm1vZHVsZS5uYW1lfS4ke1Jvb3RDb25maWcuZW50aXRpZXMuZG9jdW1lbnQubmFtZX1gLFxuICAgICAgICAgICAgICBtdWx0aXBsZTogZmFsc2UsXG4gICAgICAgICAgICAgIGZpbHRlcjpcbiAgICAgICAgICAgICAgICBcInt7IHsgbG9naWM6J2FuZCcgLCBmaWx0ZXJzOiBbIHsgZmllbGQ6J2RvY3VtZW50VHlwZS5yZXF1aXJlc1JldmlldycgLCB2YWx1ZTogdHJ1ZSAsIG9wZXJhdG9yOiB7IHR5cGU6J2VxdWFsJyB9IH0sXSB9IH19XCIsXG4gICAgICAgICAgICAgIHRleHRGaWVsZDogJ25hbWUnLFxuICAgICAgICAgICAgICB2YWx1ZUZpZWxkOiAnaWQnLFxuICAgICAgICAgICAgICBleHBvc2U6IFtcbiAgICAgICAgICAgICAgICB7IHNvdXJjZTogJ2lkJywgdGFyZ2V0OiAnZG9jdW1lbnQuaWQnIH0sXG4gICAgICAgICAgICAgICAgeyBzb3VyY2U6ICduYW1lJywgdGFyZ2V0OiAnZG9jdW1lbnQubmFtZScgfSxcbiAgICAgICAgICAgICAgICB7IHNvdXJjZTogJ3RpdGxlJywgdGFyZ2V0OiAnZG9jdW1lbnQudGl0bGUnIH0sXG4gICAgICAgICAgICAgICAgeyBzb3VyY2U6ICd2ZXJzaW9uJywgdGFyZ2V0OiAnZG9jdW1lbnQudmVyc2lvbicgfSxcbiAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB0cmlnZ2VyczogW1xuICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgZXZlbnQ6IFwie3sgZXZlbnRzLmNvbnRleHQoJ2RvY3VtZW50SWQnKSB9fVwiLFxuICAgICAgICAgICAgICAgIGFjdGlvbjogXCJ7eyBjb250ZXh0LnNldCgndmVyc2lvbicgLCBjb250ZXh0LmV2YWwoJ2RvY3VtZW50JykudmVyc2lvbiApIH19XCIsXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBdLFxuICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICAgIHZhbGlkYXRpb25zOiBbXG4gICAgICAgICAge1xuICAgICAgICAgICAgcnVsZTogJ3JlcXVpcmVkJyxcbiAgICAgICAgICB9LFxuICAgICAgICBdLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgbmFtZTogJ3Jldmlld2VySWQnLFxuICAgICAgICB0aXRsZTogYHQoXCJyZXZpZXdlclwiLCB7IHNjb3BlOiBcIiR7aTE4bn1cIiB9KWAsXG4gICAgICAgIGdyb3VwSWQ6ICdzZWN0aW9uJyxcbiAgICAgICAgc2NoZW1hOiB7XG4gICAgICAgICAgZGF0YVR5cGU6ICdzdHJpbmcnLFxuICAgICAgICAgIGRlZmF1bHRWYWx1ZTogJ3t7IHNlc3Npb24uY3VycmVudFVzZXIoKS5pZCB9fScsXG4gICAgICAgICAgaW50ZXJmYWNlOiB7XG4gICAgICAgICAgICB0eXBlOiBBWFBXaWRnZXRzQ2F0YWxvZy5sb29rdXAsXG4gICAgICAgICAgICBvcHRpb25zOiB7XG4gICAgICAgICAgICAgIGVudGl0eTogJ1NlY3VyaXR5TWFuYWdlbWVudC5Vc2VyJyxcbiAgICAgICAgICAgICAgbXVsdGlwbGU6IGZhbHNlLFxuICAgICAgICAgICAgICB0ZXh0RmllbGQ6ICd1c2VybmFtZScsXG4gICAgICAgICAgICAgIHZhbHVlRmllbGQ6ICdpZCcsXG4gICAgICAgICAgICAgIGV4cG9zZTogW1xuICAgICAgICAgICAgICAgIHsgc291cmNlOiAnaWQnLCB0YXJnZXQ6ICdyZXZpZXdlci5pZCcgfSxcbiAgICAgICAgICAgICAgICB7IHNvdXJjZTogJ3VzZXJuYW1lJywgdGFyZ2V0OiAncmV2aWV3ZXIudXNlcm5hbWUnIH0sXG4gICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICAgIHZhbGlkYXRpb25zOiBbXG4gICAgICAgICAge1xuICAgICAgICAgICAgcnVsZTogJ3JlcXVpcmVkJyxcbiAgICAgICAgICB9LFxuICAgICAgICBdLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgbmFtZTogJ3N0YXR1cycsXG4gICAgICAgIHRpdGxlOiBgdChcImFwcHJvdmVcIiwgeyBzY29wZTogXCIke2kxOG59XCIgfSlgLFxuICAgICAgICBncm91cElkOiAnc2VjdGlvbicsXG4gICAgICAgIHNjaGVtYToge1xuICAgICAgICAgIGRhdGFUeXBlOiAnc3RyaW5nJyxcbiAgICAgICAgICBpbnRlcmZhY2U6IHtcbiAgICAgICAgICAgIHR5cGU6IEFYUFdpZGdldHNDYXRhbG9nLnRvZ2dsZSxcbiAgICAgICAgICAgIG9wdGlvbnM6IHt9LFxuICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICAgIHZhbGlkYXRpb25zOiBbXG4gICAgICAgICAge1xuICAgICAgICAgICAgcnVsZTogJ3JlcXVpcmVkJyxcbiAgICAgICAgICB9LFxuICAgICAgICBdLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgbmFtZTogJ2NvbW1lbnQnLFxuICAgICAgICB0aXRsZTogYHQoXCJjb21tZW50XCIsIHsgc2NvcGU6IFwiJHtpMThufVwiIH0pYCxcbiAgICAgICAgZ3JvdXBJZDogJ3NlY3Rpb24nLFxuICAgICAgICBzY2hlbWE6IHtcbiAgICAgICAgICBkYXRhVHlwZTogJ3N0cmluZycsXG4gICAgICAgICAgaW50ZXJmYWNlOiB7XG4gICAgICAgICAgICB0eXBlOiBBWFBXaWRnZXRzQ2F0YWxvZy5yaWNoVGV4dCxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgbmFtZTogJ3Jldmlld2VkQXQnLFxuICAgICAgICB0aXRsZTogYHQoXCJyZXZpZXdlZEF0XCIsIHsgc2NvcGU6IFwiJHtpMThufVwiIH0pYCxcbiAgICAgICAgZ3JvdXBJZDogJ3NlY3Rpb24nLFxuICAgICAgICBvcHRpb25zOiB7XG4gICAgICAgICAgc29ydDoge1xuICAgICAgICAgICAgZW5hYmxlZDogdHJ1ZSxcbiAgICAgICAgICB9LFxuICAgICAgICAgIGZpbHRlcjoge1xuICAgICAgICAgICAgYWR2YW5jZToge1xuICAgICAgICAgICAgICBlbmFibGVkOiB0cnVlLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIGlubGluZToge1xuICAgICAgICAgICAgICBlbmFibGVkOiBmYWxzZSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgICAgc2NoZW1hOiB7XG4gICAgICAgICAgZGVmYXVsdFZhbHVlOiAne3sgdmFyaWFibGVzLmV4ZWN1dGUoXCJub3dcIikgfX0nLFxuICAgICAgICAgIGRhdGFUeXBlOiAnZGF0ZScsXG4gICAgICAgICAgaW50ZXJmYWNlOiB7XG4gICAgICAgICAgICB0eXBlOiBBWFBXaWRnZXRzQ2F0YWxvZy5kYXRlVGltZSxcbiAgICAgICAgICAgIG9wdGlvbnM6IHtcbiAgICAgICAgICAgICAgc2hvd1RpbWU6IHRydWUsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICAgIHZhbGlkYXRpb25zOiBbXG4gICAgICAgICAge1xuICAgICAgICAgICAgcnVsZTogJ3JlcXVpcmVkJyxcbiAgICAgICAgICB9LFxuICAgICAgICBdLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgbmFtZTogJ21vZGlmaWVkQXQnLFxuICAgICAgICB0aXRsZTogYHQoXCJtb2RpZmllZEF0XCIsIHsgc2NvcGU6IFwiJHtpMThufVwiIH0pYCxcbiAgICAgICAgZ3JvdXBJZDogJ3NlY3Rpb24nLFxuICAgICAgICBvcHRpb25zOiB7XG4gICAgICAgICAgc29ydDoge1xuICAgICAgICAgICAgZW5hYmxlZDogdHJ1ZSxcbiAgICAgICAgICB9LFxuICAgICAgICAgIGZpbHRlcjoge1xuICAgICAgICAgICAgYWR2YW5jZToge1xuICAgICAgICAgICAgICBlbmFibGVkOiB0cnVlLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIGlubGluZToge1xuICAgICAgICAgICAgICBlbmFibGVkOiBmYWxzZSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgICAgc2NoZW1hOiB7XG4gICAgICAgICAgZGF0YVR5cGU6ICdkYXRlJyxcbiAgICAgICAgICBpbnRlcmZhY2U6IHtcbiAgICAgICAgICAgIHR5cGU6IEFYUFdpZGdldHNDYXRhbG9nLmRhdGVUaW1lLFxuICAgICAgICAgICAgb3B0aW9uczoge1xuICAgICAgICAgICAgICBzaG93VGltZTogdHJ1ZSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIG5hbWU6ICdtb2RpZmllZEJ5JyxcbiAgICAgICAgdGl0bGU6IGB0KFwibW9kaWZpZWRCeVwiLCB7IHNjb3BlOiBcIiR7aTE4bn1cIiB9KWAsXG4gICAgICAgIGdyb3VwSWQ6ICdzZWN0aW9uJyxcbiAgICAgICAgb3B0aW9uczoge1xuICAgICAgICAgIHNvcnQ6IHtcbiAgICAgICAgICAgIGVuYWJsZWQ6IHRydWUsXG4gICAgICAgICAgfSxcbiAgICAgICAgICBmaWx0ZXI6IHtcbiAgICAgICAgICAgIGFkdmFuY2U6IHtcbiAgICAgICAgICAgICAgZW5hYmxlZDogdHJ1ZSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBpbmxpbmU6IHtcbiAgICAgICAgICAgICAgZW5hYmxlZDogdHJ1ZSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgICAgc2NoZW1hOiB7XG4gICAgICAgICAgZGF0YVR5cGU6ICdzdHJpbmcnLFxuICAgICAgICAgIGludGVyZmFjZToge1xuICAgICAgICAgICAgdHlwZTogQVhQV2lkZ2V0c0NhdGFsb2cubG9va3VwLFxuICAgICAgICAgICAgb3B0aW9uczoge1xuICAgICAgICAgICAgICBlbnRpdHk6ICdTZWN1cml0eU1hbmFnZW1lbnQuVXNlcicsXG4gICAgICAgICAgICAgIG11bHRpcGxlOiBmYWxzZSxcbiAgICAgICAgICAgICAgdGV4dEZpZWxkOiAnbmFtZScsXG4gICAgICAgICAgICAgIHZhbHVlRmllbGQ6ICdpZCcsXG4gICAgICAgICAgICAgIGV4cG9zZTogW1xuICAgICAgICAgICAgICAgIHsgc291cmNlOiAnaWQnLCB0YXJnZXQ6ICdtb2RpZmllci5pZCcgfSxcbiAgICAgICAgICAgICAgICB7IHNvdXJjZTogJ25hbWUnLCB0YXJnZXQ6ICdtb2RpZmllci5uYW1lJyB9LFxuICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgfSxcbiAgICBdLFxuICAgIGNvbHVtbnM6IFtcbiAgICAgIHsgbmFtZTogJ2RvY3VtZW50SWQnLCBvcHRpb25zOiB7IGRhdGFQYXRoOiAnZG9jdW1lbnQubmFtZScgfSB9LFxuICAgICAgeyBuYW1lOiAncmV2aWV3ZXJJZCcsIG9wdGlvbnM6IHsgZGF0YVBhdGg6ICdyZXZpZXdlci50aXRsZScgfSB9LFxuICAgICAgeyBuYW1lOiAnc3RhdHVzJyB9LFxuICAgICAgeyBuYW1lOiAnY29tbWVudCcgfSxcbiAgICAgIHsgbmFtZTogJ3Jldmlld2VkQXQnIH0sXG4gICAgICB7IG5hbWU6ICdtb2RpZmllZEF0JyB9LFxuICAgICAgeyBuYW1lOiAnbW9kaWZpZWRCeScgfSxcbiAgICBdLFxuICAgIGNvbW1hbmRzOiB7XG4gICAgICBjcmVhdGU6IHtcbiAgICAgICAgZXhlY3V0ZTogYXN5bmMgKGRhdGE6IGFueSkgPT4ge1xuICAgICAgICAgIC8vIFNldCByZXZpZXdlZEF0IHRvIGN1cnJlbnQgZGF0ZSBpZiBub3QgcHJvdmlkZWRcbiAgICAgICAgICBpZiAoIWRhdGEucmV2aWV3ZWRBdCkge1xuICAgICAgICAgICAgZGF0YS5yZXZpZXdlZEF0ID0gbmV3IERhdGUoKTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAvL1RPRE8gZm9yIHRlc3RcbiAgICAgICAgICBkYXRhLnJldmlld1N0YXR1cyA9ICdBcHByb3ZlZCc7XG5cbiAgICAgICAgICAvLyBDcmVhdGUgdGhlIHJldmlldyByZWNvcmRcbiAgICAgICAgICBjb25zdCByZXMgPSBhd2FpdCBkYXRhU2VydmljZS5pbnNlcnRPbmUoZGF0YSk7XG5cbiAgICAgICAgICAvLyBVcGRhdGUgZG9jdW1lbnQgc3RhdHVzIGJhc2VkIG9uIHJldmlldyBzdGF0dXNcbiAgICAgICAgICBhd2FpdCB1cGRhdGVEb2N1bWVudFN0YXR1cyhkYXRhLmRvY3VtZW50SWQsIGRhdGEucmV2aWV3U3RhdHVzLCBpbmplY3Rvcik7XG5cbiAgICAgICAgICByZXR1cm4geyBpZDogcmVzIH07XG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgICAgZGVsZXRlOiB7XG4gICAgICAgIGV4ZWN1dGU6IGFzeW5jIChpZDogYW55KSA9PiB7XG4gICAgICAgICAgcmV0dXJuIGF3YWl0IGRhdGFTZXJ2aWNlLmRlbGV0ZU9uZShpZCk7XG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgICAgdXBkYXRlOiB7XG4gICAgICAgIGV4ZWN1dGU6IGFzeW5jIChkYXRhOiBhbnkpID0+IHtcbiAgICAgICAgICAvLyBVcGRhdGUgcmV2aWV3ZWRBdCB0byBjdXJyZW50IGRhdGVcbiAgICAgICAgICBkYXRhLnJldmlld2VkQXQgPSBuZXcgRGF0ZSgpO1xuXG4gICAgICAgICAgLy9UT0RPIGZvciB0ZXN0XG4gICAgICAgICAgZGF0YS5yZXZpZXdTdGF0dXMgPSAnQXBwcm92ZWQnO1xuXG4gICAgICAgICAgLy8gVXBkYXRlIHRoZSByZXZpZXcgcmVjb3JkXG4gICAgICAgICAgY29uc3QgcmVzdWx0ID0gYXdhaXQgZGF0YVNlcnZpY2UudXBkYXRlT25lKGRhdGEuaWQsIGRhdGEpO1xuXG4gICAgICAgICAgLy8gVXBkYXRlIGRvY3VtZW50IHN0YXR1cyBiYXNlZCBvbiByZXZpZXcgc3RhdHVzXG4gICAgICAgICAgYXdhaXQgdXBkYXRlRG9jdW1lbnRTdGF0dXMoZGF0YS5kb2N1bWVudElkLCBkYXRhLnJldmlld1N0YXR1cywgaW5qZWN0b3IpO1xuXG4gICAgICAgICAgcmV0dXJuIHJlc3VsdDtcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgfSxcbiAgICBxdWVyaWVzOiB7XG4gICAgICBieUtleToge1xuICAgICAgICBleGVjdXRlOiBhc3luYyAoaWQ6IHN0cmluZykgPT4ge1xuICAgICAgICAgIGNvbnN0IHJldmlldyA9IGF3YWl0IGRhdGFTZXJ2aWNlLmdldE9uZShpZCk7XG4gICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIC4uLnJldmlldyxcbiAgICAgICAgICAgIHJldmlld2VkQXQ6IHJldmlldy5yZXZpZXdlZEF0ID8/IG5ldyBEYXRlKCksXG4gICAgICAgICAgfTtcbiAgICAgICAgfSxcbiAgICAgICAgdHlwZTogQVhQRW50aXR5UXVlcnlUeXBlLlNpbmdsZSxcbiAgICAgIH0sXG4gICAgICBsaXN0OiB7XG4gICAgICAgIGV4ZWN1dGU6IGFzeW5jIChlOiBhbnkpID0+IHtcbiAgICAgICAgICBjb25zdCBhID0gYXdhaXQgZGF0YVNlcnZpY2UucXVlcnkoZSk7XG4gICAgICAgICAgY29uc29sZS5sb2coYSk7XG4gICAgICAgICAgcmV0dXJuIGE7XG4gICAgICAgIH0sXG4gICAgICAgIHR5cGU6IEFYUEVudGl0eVF1ZXJ5VHlwZS5MaXN0LFxuICAgICAgfSxcbiAgICB9LFxuICAgIGludGVyZmFjZXM6IHtcbiAgICAgIG1hc3Rlcjoge1xuICAgICAgICBjcmVhdGU6IHtcbiAgICAgICAgICBzZWN0aW9uczogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBpZDogJ3NlY3Rpb24nLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICBdLFxuICAgICAgICAgIHByb3BlcnRpZXM6IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgbmFtZTogJ2RvY3VtZW50SWQnLFxuICAgICAgICAgICAgICBsYXlvdXQ6IHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbnM6IHtcbiAgICAgICAgICAgICAgICAgIGxnOiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbFNwYW46IDEyLFxuICAgICAgICAgICAgICAgICAgICBvcmRlcjogMSxcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIG5hbWU6ICdyZXZpZXdlcklkJyxcbiAgICAgICAgICAgICAgbGF5b3V0OiB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb25zOiB7XG4gICAgICAgICAgICAgICAgICBsZzoge1xuICAgICAgICAgICAgICAgICAgICBjb2xTcGFuOiA2LFxuICAgICAgICAgICAgICAgICAgICBvcmRlcjogNSxcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIG5hbWU6ICd2ZXJzaW9uJyxcbiAgICAgICAgICAgICAgbGF5b3V0OiB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb25zOiB7XG4gICAgICAgICAgICAgICAgICBsZzoge1xuICAgICAgICAgICAgICAgICAgICBjb2xTcGFuOiA2LFxuICAgICAgICAgICAgICAgICAgICBvcmRlcjogMixcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIG5hbWU6ICdzdGF0dXMnLFxuICAgICAgICAgICAgICBsYXlvdXQ6IHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbnM6IHtcbiAgICAgICAgICAgICAgICAgIGxnOiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbFNwYW46IDYsXG4gICAgICAgICAgICAgICAgICAgIG9yZGVyOiAzLFxuICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgbmFtZTogJ2NvbW1lbnQnLFxuICAgICAgICAgICAgICBsYXlvdXQ6IHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbnM6IHtcbiAgICAgICAgICAgICAgICAgIGxnOiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbFNwYW46IDEyLFxuICAgICAgICAgICAgICAgICAgICBvcmRlcjogNCxcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIG5hbWU6ICdyZXZpZXdlZEF0JyxcbiAgICAgICAgICAgICAgbGF5b3V0OiB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb25zOiB7XG4gICAgICAgICAgICAgICAgICBsZzoge1xuICAgICAgICAgICAgICAgICAgICBjb2xTcGFuOiA2LFxuICAgICAgICAgICAgICAgICAgICBvcmRlcjogNixcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgXSxcbiAgICAgICAgfSxcbiAgICAgICAgdXBkYXRlOiB7XG4gICAgICAgICAgc2VjdGlvbnM6IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgaWQ6ICdzZWN0aW9uJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgXSxcbiAgICAgICAgICBwcm9wZXJ0aWVzOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIG5hbWU6ICdyZXZpZXdlcklkJyxcbiAgICAgICAgICAgICAgbGF5b3V0OiB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb25zOiB7XG4gICAgICAgICAgICAgICAgICBsZzoge1xuICAgICAgICAgICAgICAgICAgICBjb2xTcGFuOiA2LFxuICAgICAgICAgICAgICAgICAgICBvcmRlcjogNSxcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIG5hbWU6ICdjb21tZW50JyxcbiAgICAgICAgICAgICAgbGF5b3V0OiB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb25zOiB7XG4gICAgICAgICAgICAgICAgICBsZzoge1xuICAgICAgICAgICAgICAgICAgICBjb2xTcGFuOiAxMixcbiAgICAgICAgICAgICAgICAgICAgb3JkZXI6IDQsXG4gICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBuYW1lOiAncmV2aWV3ZWRBdCcsXG4gICAgICAgICAgICAgIGxheW91dDoge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uczoge1xuICAgICAgICAgICAgICAgICAgbGc6IHtcbiAgICAgICAgICAgICAgICAgICAgY29sU3BhbjogNixcbiAgICAgICAgICAgICAgICAgICAgb3JkZXI6IDYsXG4gICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIF0sXG4gICAgICAgIH0sXG5cbiAgICAgICAgc2luZ2xlOiB7XG4gICAgICAgICAgdGl0bGU6ICd7e2RvY3VtZW50Lm5hbWV9fSAtIFJldmlldycsXG4gICAgICAgICAgc2VjdGlvbnM6IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgaWQ6ICdzZWN0aW9uJyxcbiAgICAgICAgICAgICAgbGF5b3V0OiB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb25zOiB7XG4gICAgICAgICAgICAgICAgICBsZzoge1xuICAgICAgICAgICAgICAgICAgICBjb2xTcGFuOiAxMixcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgXSxcbiAgICAgICAgICBwcm9wZXJ0aWVzOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIG5hbWU6ICdkb2N1bWVudElkJyxcbiAgICAgICAgICAgICAgZGF0YVBhdGg6ICdkb2N1bWVudCcsXG4gICAgICAgICAgICAgIGxheW91dDoge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uczoge1xuICAgICAgICAgICAgICAgICAgbGc6IHtcbiAgICAgICAgICAgICAgICAgICAgY29sU3BhbjogMTIsXG4gICAgICAgICAgICAgICAgICAgIG9yZGVyOiAxLFxuICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgbmFtZTogJ3Jldmlld2VySWQnLFxuICAgICAgICAgICAgICBsYXlvdXQ6IHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbnM6IHtcbiAgICAgICAgICAgICAgICAgIGxnOiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbFNwYW46IDYsXG4gICAgICAgICAgICAgICAgICAgIG9yZGVyOiA1LFxuICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgbmFtZTogJ3ZlcnNpb24nLFxuICAgICAgICAgICAgICBsYXlvdXQ6IHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbnM6IHtcbiAgICAgICAgICAgICAgICAgIGxnOiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbFNwYW46IDYsXG4gICAgICAgICAgICAgICAgICAgIG9yZGVyOiAyLFxuICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgbmFtZTogJ3N0YXR1cycsXG4gICAgICAgICAgICAgIGxheW91dDoge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uczoge1xuICAgICAgICAgICAgICAgICAgbGc6IHtcbiAgICAgICAgICAgICAgICAgICAgY29sU3BhbjogNixcbiAgICAgICAgICAgICAgICAgICAgb3JkZXI6IDMsXG4gICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBuYW1lOiAnY29tbWVudCcsXG4gICAgICAgICAgICAgIGxheW91dDoge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uczoge1xuICAgICAgICAgICAgICAgICAgbGc6IHtcbiAgICAgICAgICAgICAgICAgICAgY29sU3BhbjogMTIsXG4gICAgICAgICAgICAgICAgICAgIG9yZGVyOiA0LFxuICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgbmFtZTogJ3Jldmlld2VkQXQnLFxuICAgICAgICAgICAgICBsYXlvdXQ6IHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbnM6IHtcbiAgICAgICAgICAgICAgICAgIGxnOiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbFNwYW46IDYsXG4gICAgICAgICAgICAgICAgICAgIG9yZGVyOiA2LFxuICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgbmFtZTogJ21vZGlmaWVkQXQnLFxuICAgICAgICAgICAgICBsYXlvdXQ6IHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbnM6IHtcbiAgICAgICAgICAgICAgICAgIGxnOiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbFNwYW46IDYsXG4gICAgICAgICAgICAgICAgICAgIG9yZGVyOiA3LFxuICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgbmFtZTogJ21vZGlmaWVkQnknLFxuICAgICAgICAgICAgICBsYXlvdXQ6IHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbnM6IHtcbiAgICAgICAgICAgICAgICAgIGxnOiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbFNwYW46IDYsXG4gICAgICAgICAgICAgICAgICAgIG9yZGVyOiA4LFxuICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICBdLFxuICAgICAgICAgIGFjdGlvbnM6IFtdLFxuICAgICAgICB9LFxuICAgICAgICBsaXN0OiB7XG4gICAgICAgICAgYWN0aW9uczogW10sXG4gICAgICAgICAgdmlld3M6IFtcbiAgICAgICAgICAgIGNyZWF0ZUFsbFF1ZXJ5Vmlldyh7XG4gICAgICAgICAgICAgIHNvcnRzOiBbeyBuYW1lOiAncmV2aWV3ZWRBdCcsIGRpcjogJ2Rlc2MnIH1dLFxuICAgICAgICAgICAgfSksXG4gICAgICAgICAgXSxcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgfSxcbiAgfTtcblxuICByZXR1cm4gZW50aXR5RGVmO1xufVxuIl19","import { NgModule } from '@angular/core';\nimport { AXMReviewService, AXMReviewServiceImpl } from './review.service';\nimport * as i0 from \"@angular/core\";\nexport class AXMReviewEntityModule {\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: AXMReviewEntityModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }\n static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: \"14.0.0\", version: \"20.1.8\", ngImport: i0, type: AXMReviewEntityModule }); }\n static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: AXMReviewEntityModule, providers: [\n {\n provide: AXMReviewService,\n useClass: AXMReviewServiceImpl,\n },\n ] }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: AXMReviewEntityModule, decorators: [{\n type: NgModule,\n args: [{\n imports: [],\n exports: [],\n declarations: [],\n providers: [\n {\n provide: AXMReviewService,\n useClass: AXMReviewServiceImpl,\n },\n ],\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmV2aWV3Lm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbW9kdWxlcy9kb2N1bWVudC1tYW5hZ2VtZW50L3NyYy9saWIvZW50aXRpZXMvcmV2aWV3L3Jldmlldy5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQzs7QUFhMUUsTUFBTSxPQUFPLHFCQUFxQjs4R0FBckIscUJBQXFCOytHQUFyQixxQkFBcUI7K0dBQXJCLHFCQUFxQixhQVBuQjtZQUNQO2dCQUNJLE9BQU8sRUFBRSxnQkFBZ0I7Z0JBQ3pCLFFBQVEsRUFBRSxvQkFBb0I7YUFDakM7U0FDSjs7MkZBRVEscUJBQXFCO2tCQVhqQyxRQUFRO21CQUFDO29CQUNOLE9BQU8sRUFBRSxFQUFFO29CQUNYLE9BQU8sRUFBRSxFQUFFO29CQUNYLFlBQVksRUFBRSxFQUFFO29CQUNoQixTQUFTLEVBQUU7d0JBQ1A7NEJBQ0ksT0FBTyxFQUFFLGdCQUFnQjs0QkFDekIsUUFBUSxFQUFFLG9CQUFvQjt5QkFDakM7cUJBQ0o7aUJBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQVhNUmV2aWV3U2VydmljZSwgQVhNUmV2aWV3U2VydmljZUltcGwgfSBmcm9tICcuL3Jldmlldy5zZXJ2aWNlJztcblxuQE5nTW9kdWxlKHtcbiAgICBpbXBvcnRzOiBbXSxcbiAgICBleHBvcnRzOiBbXSxcbiAgICBkZWNsYXJhdGlvbnM6IFtdLFxuICAgIHByb3ZpZGVyczogW1xuICAgICAgICB7XG4gICAgICAgICAgICBwcm92aWRlOiBBWE1SZXZpZXdTZXJ2aWNlLFxuICAgICAgICAgICAgdXNlQ2xhc3M6IEFYTVJldmlld1NlcnZpY2VJbXBsLFxuICAgICAgICB9LFxuICAgIF0sXG59KVxuZXhwb3J0IGNsYXNzIEFYTVJldmlld0VudGl0eU1vZHVsZSB7IH1cbiJdfQ==","import { AXMEntityCrudServiceImpl } from '@acorex/platform/layout/entity';\nimport { Injectable } from '@angular/core';\nimport { RootConfig } from '../../const';\nimport * as i0 from \"@angular/core\";\nexport class AXMDistributionService extends AXMEntityCrudServiceImpl {\n}\nexport class AXMDistributionServiceImpl extends AXMDistributionService {\n constructor() {\n super(`${RootConfig.module.name}.${RootConfig.entities.distribution.name}`);\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: AXMDistributionServiceImpl, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }\n static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: AXMDistributionServiceImpl }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: AXMDistributionServiceImpl, decorators: [{\n type: Injectable\n }], ctorParameters: () => [] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlzdHJpYnV0aW9uLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL21vZHVsZXMvZG9jdW1lbnQtbWFuYWdlbWVudC9zcmMvbGliL2VudGl0aWVzL2Rpc3RyaWJ1dGlvbi9kaXN0cmlidXRpb24uc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUMxRSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxhQUFhLENBQUM7O0FBR3pDLE1BQU0sT0FBZ0Isc0JBQXVCLFNBQVEsd0JBR3BEO0NBQUc7QUFHSixNQUFNLE9BQU8sMEJBQTJCLFNBQVEsc0JBQXNCO0lBQ3BFO1FBQ0UsS0FBSyxDQUFDLEdBQUcsVUFBVSxDQUFDLE1BQU0sQ0FBQyxJQUFJLElBQUksVUFBVSxDQUFDLFFBQVEsQ0FBQyxZQUFZLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQztJQUM5RSxDQUFDOzhHQUhVLDBCQUEwQjtrSEFBMUIsMEJBQTBCOzsyRkFBMUIsMEJBQTBCO2tCQUR0QyxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQVhNRW50aXR5Q3J1ZFNlcnZpY2VJbXBsIH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9sYXlvdXQvZW50aXR5JztcbmltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFJvb3RDb25maWcgfSBmcm9tICcuLi8uLi9jb25zdCc7XG5pbXBvcnQgeyBBWE1Eb2N1bWVudE1hbmFnZW1lbnREaXN0cmlidXRpb25FbnRpdHlNb2RlbCB9IGZyb20gJy4vZGlzdHJpYnV0aW9uLnR5cGVzJztcblxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIEFYTURpc3RyaWJ1dGlvblNlcnZpY2UgZXh0ZW5kcyBBWE1FbnRpdHlDcnVkU2VydmljZUltcGw8XG4gIHN0cmluZyxcbiAgQVhNRG9jdW1lbnRNYW5hZ2VtZW50RGlzdHJpYnV0aW9uRW50aXR5TW9kZWxcbj4ge31cblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIEFYTURpc3RyaWJ1dGlvblNlcnZpY2VJbXBsIGV4dGVuZHMgQVhNRGlzdHJpYnV0aW9uU2VydmljZSB7XG4gIGNvbnN0cnVjdG9yKCkge1xuICAgIHN1cGVyKGAke1Jvb3RDb25maWcubW9kdWxlLm5hbWV9LiR7Um9vdENvbmZpZy5lbnRpdGllcy5kaXN0cmlidXRpb24ubmFtZX1gKTtcbiAgfVxufVxuIl19","import { AXPEntityCommandScope, AXPEntityQueryType, createAllQueryView } from '@acorex/platform/common';\nimport { AXPWidgetsCatalog } from '@acorex/platform/layout/builder';\nimport { RootConfig } from '../../const';\nimport { AXMDistributionService } from './distribution.service';\nexport async function distributionFactory(injector) {\n const dataService = injector.get(AXMDistributionService);\n const i18n = RootConfig.config.i18n;\n const entityDef = {\n module: RootConfig.module.name,\n name: RootConfig.entities.distribution.name,\n source: '',\n title: RootConfig.entities.distribution.title,\n formats: {\n individual: RootConfig.entities.distribution.title,\n plural: RootConfig.entities.distribution.titlePlural,\n searchResult: {\n title: '{{ title }}',\n description: RootConfig.module.title,\n },\n },\n relatedEntities: [\n {\n entity: `${RootConfig.module.name}.${RootConfig.entities.distributionInteraction.name}`,\n columns: [],\n conditions: [\n {\n name: 'documentDistributionId',\n operator: {\n type: 'equal',\n },\n value: '{{context.eval(\"id\")}}',\n },\n ],\n },\n ],\n groups: [\n {\n id: 'section',\n title: RootConfig.entities.distribution.title,\n },\n ],\n properties: [\n {\n name: 'documentId',\n title: `t(\"documentId\", { scope: \"${i18n}\" })`,\n groupId: 'section',\n options: {},\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.lookup,\n options: {\n entity: 'DocumentManagement.documents',\n multiple: false,\n look: 'lookup',\n },\n },\n },\n validations: [\n {\n rule: 'required',\n },\n ],\n },\n {\n name: 'version',\n title: `t(\"version\", { scope: \"${i18n}\" })`,\n groupId: 'section',\n options: {\n sort: {\n enabled: true,\n },\n filter: {\n advance: {\n enabled: true,\n },\n inline: {\n enabled: false,\n },\n },\n },\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.text,\n },\n },\n validations: [\n {\n rule: 'required',\n },\n ],\n },\n {\n name: 'viewedCount',\n title: `t(\"viewed-count\", { scope: \"${i18n}\" })`,\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.text,\n },\n },\n },\n {\n name: 'signedCount',\n title: `t(\"signed-count\", { scope: \"${i18n}\" })`,\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.text,\n },\n },\n },\n {\n name: 'status',\n title: `t(\"status\", { scope: \"${i18n}\" })`,\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.text,\n },\n },\n },\n ],\n columns: [{ name: 'documentId', options: { dataPath: 'document.name' } }, { name: 'version' },\n { name: 'viewedCount' }, { name: 'signedCount' }, { name: 'status' }\n ],\n commands: {\n create: {\n execute: async (data) => {\n const res = await dataService.insertOne(data);\n return { id: res };\n },\n },\n delete: {\n execute: async (id) => {\n return await dataService.deleteOne(id);\n },\n },\n update: {\n execute: async (data) => {\n return await dataService.updateOne(data.id, data);\n },\n },\n },\n queries: {\n byKey: {\n execute: async (id) => {\n return await dataService.getOne(id);\n },\n type: AXPEntityQueryType.Single,\n },\n list: {\n execute: async (e) => {\n const x = await dataService.query(e);\n console.log(x);\n return x;\n },\n type: AXPEntityQueryType.List,\n },\n },\n interfaces: {\n master: {\n create: {\n sections: [\n {\n id: 'section',\n },\n ],\n properties: [\n {\n name: 'documentId',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n order: 1,\n },\n },\n },\n },\n {\n name: 'version',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n order: 2,\n },\n },\n },\n },\n ],\n },\n update: {\n sections: [\n {\n id: 'section',\n },\n ],\n properties: [\n {\n name: 'documentId',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n order: 1,\n },\n },\n },\n },\n {\n name: 'version',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n order: 2,\n },\n },\n },\n },\n ],\n },\n single: {\n title: `{{document.name}}`,\n sections: [\n {\n id: 'section',\n layout: {\n positions: {\n lg: {\n colSpan: 12,\n },\n },\n },\n },\n ],\n properties: [\n {\n name: 'documentId',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n order: 1,\n },\n },\n },\n },\n {\n name: 'version',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n order: 2,\n },\n },\n },\n },\n ],\n actions: [],\n },\n list: {\n actions: [\n {\n title: `t(\"create\", { scope: \"common\" })`,\n command: 'create-entity',\n priority: 'primary',\n type: 'create',\n scope: AXPEntityCommandScope.TypeLevel,\n },\n {\n title: 't(\"deleteItems\", { scope: \"common\" })',\n command: 'delete-entity',\n priority: 'primary',\n type: 'delete',\n scope: AXPEntityCommandScope.Selected,\n },\n {\n title: 't(\"detail\", { scope: \"common\" })',\n command: 'open-entity',\n priority: 'secondary',\n type: 'view',\n scope: AXPEntityCommandScope.Individual,\n },\n {\n title: 't(\"delete\", { scope: \"common\" })',\n command: 'delete-entity',\n priority: 'secondary',\n type: 'delete',\n scope: AXPEntityCommandScope.Individual,\n },\n ],\n views: [\n createAllQueryView({\n sorts: [{ name: 'documentId', dir: 'asc' }],\n }),\n ],\n },\n },\n },\n };\n return entityDef;\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlzdHJpYnV0aW9uLmVudGl0eS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbW9kdWxlcy9kb2N1bWVudC1tYW5hZ2VtZW50L3NyYy9saWIvZW50aXRpZXMvZGlzdHJpYnV0aW9uL2Rpc3RyaWJ1dGlvbi5lbnRpdHkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFhLHFCQUFxQixFQUFFLGtCQUFrQixFQUFFLGtCQUFrQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDbkgsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFFcEUsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUN6QyxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUVoRSxNQUFNLENBQUMsS0FBSyxVQUFVLG1CQUFtQixDQUFDLFFBQWtCO0lBQzFELE1BQU0sV0FBVyxHQUFHLFFBQVEsQ0FBQyxHQUFHLENBQUMsc0JBQXNCLENBQUMsQ0FBQztJQUN6RCxNQUFNLElBQUksR0FBRyxVQUFVLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQztJQUVwQyxNQUFNLFNBQVMsR0FBYztRQUMzQixNQUFNLEVBQUUsVUFBVSxDQUFDLE1BQU0sQ0FBQyxJQUFJO1FBQzlCLElBQUksRUFBRSxVQUFVLENBQUMsUUFBUSxDQUFDLFlBQVksQ0FBQyxJQUFJO1FBQzNDLE1BQU0sRUFBRSxFQUFFO1FBQ1YsS0FBSyxFQUFFLFVBQVUsQ0FBQyxRQUFRLENBQUMsWUFBWSxDQUFDLEtBQUs7UUFDN0MsT0FBTyxFQUFFO1lBQ1AsVUFBVSxFQUFFLFVBQVUsQ0FBQyxRQUFRLENBQUMsWUFBWSxDQUFDLEtBQUs7WUFDbEQsTUFBTSxFQUFFLFVBQVUsQ0FBQyxRQUFRLENBQUMsWUFBWSxDQUFDLFdBQVc7WUFDcEQsWUFBWSxFQUFFO2dCQUNaLEtBQUssRUFBRSxhQUFhO2dC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QUFNOzRCQUNaLEtBQUssRUFBRSxxQkFBcUIsQ0FBQyxVQUFVO3lCQUN4Qzt3QkFDRDs0QkFDRSxLQUFLLEVBQUUsa0NBQWtDOzRCQUN6QyxPQUFPLEVBQUUsZUFBZTs0QkFDeEIsUUFBUSxFQUFFLFdBQVc7NEJBQ3JCLElBQUksRUFBRSxRQUFROzRCQUNkLEtBQUssRUFBRSxxQkFBcUIsQ0FBQyxVQUFVO3lCQUN4QztxQkFDRjtvQkFDRCxLQUFLLEVBQUU7d0JBQ0wsa0JBQWtCLENBQUM7NEJBQ2pCLEtBQUssRUFBRSxDQUFDLEVBQUUsSUFBSSxFQUFFLFlBQVksRUFBRSxHQUFHLEVBQUUsS0FBSyxFQUFFLENBQUM7eUJBQzVDLENBQUM7cUJBQ0g7aUJBQ0Y7YUFDRjtTQUNGO0tBQ0YsQ0FBQztJQUVGLE9BQU8sU0FBUyxDQUFDO0FBQ25CLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBWFBFbnRpdHksIEFYUEVudGl0eUNvbW1hbmRTY29wZSwgQVhQRW50aXR5UXVlcnlUeXBlLCBjcmVhdGVBbGxRdWVyeVZpZXcgfSBmcm9tICdAYWNvcmV4L3BsYXRmb3JtL2NvbW1vbic7XG5pbXBvcnQgeyBBWFBXaWRnZXRzQ2F0YWxvZyB9IGZyb20gJ0BhY29yZXgvcGxhdGZvcm0vbGF5b3V0L2J1aWxkZXInO1xuaW1wb3J0IHsgSW5qZWN0b3IgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFJvb3RDb25maWcgfSBmcm9tICcuLi8uLi9jb25zdCc7XG5pbXBvcnQgeyBBWE1EaXN0cmlidXRpb25TZXJ2aWNlIH0gZnJvbSAnLi9kaXN0cmlidXRpb24uc2VydmljZSc7XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBkaXN0cmlidXRpb25GYWN0b3J5KGluamVjdG9yOiBJbmplY3Rvcik6IFByb21pc2U8QVhQRW50aXR5IHwgbnVsbD4ge1xuICBjb25zdCBkYXRhU2VydmljZSA9IGluamVjdG9yLmdldChBWE1EaXN0cmlidXRpb25TZXJ2aWNlKTtcbiAgY29uc3QgaTE4biA9IFJvb3RDb25maWcuY29uZmlnLmkxOG47XG5cbiAgY29uc3QgZW50aXR5RGVmOiBBWFBFbnRpdHkgPSB7XG4gICAgbW9kdWxlOiBSb290Q29uZmlnLm1vZHVsZS5uYW1lLFxuICAgIG5hbWU6IFJvb3RDb25maWcuZW50aXRpZXMuZGlzdHJpYnV0aW9uLm5hbWUsXG4gICAgc291cmNlOiAnJyxcbiAgICB0aXRsZTogUm9vdENvbmZpZy5lbnRpdGllcy5kaXN0cmlidXRpb24udGl0bGUsXG4gICAgZm9ybWF0czoge1xuICAgICAgaW5kaXZpZHVhbDogUm9vdENvbmZpZy5lbnRpdGllcy5kaXN0cmlidXRpb24udGl0bGUsXG4gICAgICBwbHVyYWw6IFJvb3RDb25maWcuZW50aXRpZXMuZGlzdHJpYnV0aW9uLnRpdGxlUGx1cmFsLFxuICAgICAgc2VhcmNoUmVzdWx0OiB7XG4gICAgICAgIHRpdGxlOiAne3sgdGl0bGUgfX0nLFxuICAgICAgICBkZXNjcmlwdGlvbjogUm9vdENvbmZpZy5tb2R1bGUudGl0bGUsXG4gICAgICB9LFxuICAgIH0sXG4gICAgcmVsYXRlZEVudGl0aWVzOiBbXG4gICAgICB7XG4gICAgICAgIGVudGl0eTogYCR7Um9vdENvbmZpZy5tb2R1bGUubmFtZX0uJHtSb290Q29uZmlnLmVudGl0aWVzLmRpc3RyaWJ1dGlvbkludGVyYWN0aW9uLm5hbWV9YCxcbiAgICAgICAgY29sdW1uczogW10sXG4gICAgICAgIGNvbmRpdGlvbnM6IFtcbiAgICAgICAgICB7XG4gICAgICAgICAgICBuYW1lOiAnZG9jdW1lbnREaXN0cmlidXRpb25JZCcsXG4gICAgICAgICAgICBvcGVyYXRvcjoge1xuICAgICAgICAgICAgICB0eXBlOiAnZXF1YWwnLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHZhbHVlOiAne3tjb250ZXh0LmV2YWwoXCJpZFwiKX19JyxcbiAgICAgICAgICB9LFxuICAgICAgICBdLFxuICAgICAgfSxcbiAgICBdLFxuICAgIGdyb3VwczogW1xuICAgICAge1xuICAgICAgICBpZDogJ3NlY3Rpb24nLFxuICAgICAgICB0aXRsZTogUm9vdENvbmZpZy5lbnRpdGllcy5kaXN0cmlidXRpb24udGl0bGUsXG4gICAgICB9LFxuICAgIF0sXG4gICAgcHJvcGVydGllczogW1xuICAgICAge1xuICAgICAgICBuYW1lOiAnZG9jdW1lbnRJZCcsXG4gICAgICAgIHRpdGxlOiBgdChcImRvY3VtZW50SWRcIiwgeyBzY29wZTogXCIke2kxOG59XCIgfSlgLFxuICAgICAgICBncm91cElkOiAnc2VjdGlvbicsXG4gICAgICAgIG9wdGlvbnM6IHt9LFxuICAgICAgICBzY2hlbWE6IHtcbiAgICAgICAgICBkYXRhVHlwZTogJ3N0cmluZycsXG4gICAgICAgICAgaW50ZXJmYWNlOiB7XG4gICAgICAgICAgICB0eXBlOiBBWFBXaWRnZXRzQ2F0YWxvZy5sb29rdXAsXG4gICAgICAgICAgICBvcHRpb25zOiB7XG4gICAgICAgICAgICAgIGVudGl0eTogJ0RvY3VtZW50TWFuYWdlbWVudC5kb2N1bWVudHMnLFxuICAgICAgICAgICAgICBtdWx0aXBsZTogZmFsc2UsXG4gICAgICAgICAgICAgIGxvb2s6ICdsb29rdXAnLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgICB2YWxpZGF0aW9uczogW1xuICAgICAgICAgIHtcbiAgICAgICAgICAgIHJ1bGU6ICdyZXF1aXJlZCcsXG4gICAgICAgICAgfSxcbiAgICAgICAgXSxcbiAgICAgIH0sXG5cbiAgICAgIHtcbiAgICAgICAgbmFtZTogJ3ZlcnNpb24nLFxuICAgICAgICB0aXRsZTogYHQoXCJ2ZXJzaW9uXCIsIHsgc2NvcGU6IFwiJHtpMThufVwiIH0pYCxcbiAgICAgICAgZ3JvdXBJZDogJ3NlY3Rpb24nLFxuICAgICAgICBvcHRpb25zOiB7XG4gICAgICAgICAgc29ydDoge1xuICAgICAgICAgICAgZW5hYmxlZDogdHJ1ZSxcbiAgICAgICAgICB9LFxuICAgICAgICAgIGZpbHRlcjoge1xuICAgICAgICAgICAgYWR2YW5jZToge1xuICAgICAgICAgICAgICBlbmFibGVkOiB0cnVlLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIGlubGluZToge1xuICAgICAgICAgICAgICBlbmFibGVkOiBmYWxzZSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgICAgc2NoZW1hOiB7XG4gICAgICAgICAgZGF0YVR5cGU6ICdzdHJpbmcnLFxuICAgICAgICAgIGludGVyZmFjZToge1xuICAgICAgICAgICAgdHlwZTogQVhQV2lkZ2V0c0NhdGFsb2cudGV4dCxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgICB2YWxpZGF0aW9uczogW1xuICAgICAgICAgIHtcbiAgICAgICAgICAgIHJ1bGU6ICdyZXF1aXJlZCcsXG4gICAgICAgICAgfSxcbiAgICAgICAgXSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIG5hbWU6ICd2aWV3ZWRDb3VudCcsXG4gICAgICAgIHRpdGxlOiBgdChcInZpZXdlZC1jb3VudFwiLCB7IHNjb3BlOiBcIiR7aTE4bn1cIiB9KWAsXG4gICAgICAgIHNjaGVtYToge1xuICAgICAgICAgIGRhdGFUeXBlOiAnc3RyaW5nJyxcbiAgICAgICAgICBpbnRlcmZhY2U6IHtcbiAgICAgICAgICAgIHR5cGU6IEFYUFdpZGdldHNDYXRhbG9nLnRleHQsXG4gICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIG5hbWU6ICdzaWduZWRDb3VudCcsXG4gICAgICAgIHRpdGxlOiBgdChcInNpZ25lZC1jb3VudFwiLCB7IHNjb3BlOiBcIiR7aTE4bn1cIiB9KWAsXG4gICAgICAgIHNjaGVtYToge1xuICAgICAgICAgIGRhdGFUeXBlOiAnc3RyaW5nJyxcbiAgICAgICAgICBpbnRlcmZhY2U6IHtcbiAgICAgICAgICAgIHR5cGU6IEFYUFdpZGdldHNDYXRhbG9nLnRleHQsXG4gICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIG5hbWU6ICdzdGF0dXMnLFxuICAgICAgICB0aXRsZTogYHQoXCJzdGF0dXNcIiwgeyBzY29wZTogXCIke2kxOG59XCIgfSlgLFxuICAgICAgICBzY2hlbWE6IHtcbiAgICAgICAgICBkYXRhVHlwZTogJ3N0cmluZycsXG4gICAgICAgICAgaW50ZXJmYWNlOiB7XG4gICAgICAgICAgICB0eXBlOiBBWFBXaWRnZXRzQ2F0YWxvZy50ZXh0LFxuICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgIF0sXG4gICAgY29sdW1uczogW3sgbmFtZTogJ2RvY3VtZW50SWQnLCBvcHRpb25zOiB7IGRhdGFQYXRoOiAnZG9jdW1lbnQubmFtZScgfSB9LCB7IG5hbWU6ICd2ZXJzaW9uJyB9XG4gICAgICAsIHtuYW1lIDogJ3ZpZXdlZENvdW50J30gLCB7bmFtZSA6ICdzaWduZWRDb3VudCd9ICwge25hbWUgOiAnc3RhdHVzJ31cbiAgICBdLFxuICAgIGNvbW1hbmRzOiB7XG4gICAgICBjcmVhdGU6IHtcbiAgICAgICAgZXhlY3V0ZTogYXN5bmMgKGRhdGE6IGFueSkgPT4ge1xuICAgICAgICAgIGNvbnN0IHJlcyA9IGF3YWl0IGRhdGFTZXJ2aWNlLmluc2VydE9uZShkYXRhKTtcbiAgICAgICAgICByZXR1cm4geyBpZDogcmVzIH07XG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgICAgZGVsZXRlOiB7XG4gICAgICAgIGV4ZWN1dGU6IGFzeW5jIChpZDogYW55KSA9PiB7XG4gICAgICAgICAgcmV0dXJuIGF3YWl0IGRhdGFTZXJ2aWNlLmRlbGV0ZU9uZShpZCk7XG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgICAgdXBkYXRlOiB7XG4gICAgICAgIGV4ZWN1dGU6IGFzeW5jIChkYXRhOiBhbnkpID0+IHtcbiAgICAgICAgICByZXR1cm4gYXdhaXQgZGF0YVNlcnZpY2UudXBkYXRlT25lKGRhdGEuaWQsIGRhdGEpO1xuICAgICAgICB9LFxuICAgICAgfSxcbiAgICB9LFxuICAgIHF1ZXJpZXM6IHtcbiAgICAgIGJ5S2V5OiB7XG4gICAgICAgIGV4ZWN1dGU6IGFzeW5jIChpZDogc3RyaW5nKSA9PiB7XG4gICAgICAgICAgcmV0dXJuIGF3YWl0IGRhdGFTZXJ2aWNlLmdldE9uZShpZCk7XG4gICAgICAgIH0sXG4gICAgICAgIHR5cGU6IEFYUEVudGl0eVF1ZXJ5VHlwZS5TaW5nbGUsXG4gICAgICB9LFxuICAgICAgbGlzdDoge1xuICAgICAgICBleGVjdXRlOiBhc3luYyAoZTogYW55KSA9PiB7XG4gICAgICAgICAgY29uc3QgeCA9IGF3YWl0IGRhdGFTZXJ2aWNlLnF1ZXJ5KGUpO1xuICAgICAgICAgIGNvbnNvbGUubG9nKHgpO1xuICAgICAgICAgIHJldHVybiB4O1xuICAgICAgICB9LFxuICAgICAgICB0eXBlOiBBWFBFbnRpdHlRdWVyeVR5cGUuTGlzdCxcbiAgICAgIH0sXG4gICAgfSxcbiAgICBpbnRlcmZhY2VzOiB7XG4gICAgICBtYXN0ZXI6IHtcbiAgICAgICAgY3JlYXRlOiB7XG4gICAgICAgICAgc2VjdGlvbnM6IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgaWQ6ICdzZWN0aW9uJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgXSxcbiAgICAgICAgICBwcm9wZXJ0aWVzOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIG5hbWU6ICdkb2N1bWVudElkJyxcbiAgICAgICAgICAgICAgbGF5b3V0OiB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb25zOiB7XG4gICAgICAgICAgICAgICAgICBsZzoge1xuICAgICAgICAgICAgICAgICAgICBjb2xTcGFuOiA2LFxuICAgICAgICAgICAgICAgICAgICBvcmRlcjogMSxcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIH0sXG5cbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgbmFtZTogJ3ZlcnNpb24nLFxuICAgICAgICAgICAgICBsYXlvdXQ6IHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbnM6IHtcbiAgICAgICAgICAgICAgICAgIGxnOiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbFNwYW46IDYsXG4gICAgICAgICAgICAgICAgICAgIG9yZGVyOiAyLFxuICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICBdLFxuICAgICAgICB9LFxuICAgICAgICB1cGRhdGU6IHtcbiAgICAgICAgICBzZWN0aW9uczogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBpZDogJ3NlY3Rpb24nLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICBdLFxuICAgICAgICAgIHByb3BlcnRpZXM6IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgbmFtZTogJ2RvY3VtZW50SWQnLFxuICAgICAgICAgICAgICBsYXlvdXQ6IHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbnM6IHtcbiAgICAgICAgICAgICAgICAgIGxnOiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbFNwYW46IDYsXG4gICAgICAgICAgICAgICAgICAgIG9yZGVyOiAxLFxuICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfSxcblxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBuYW1lOiAndmVyc2lvbicsXG4gICAgICAgICAgICAgIGxheW91dDoge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uczoge1xuICAgICAgICAgICAgICAgICAgbGc6IHtcbiAgICAgICAgICAgICAgICAgICAgY29sU3BhbjogNixcbiAgICAgICAgICAgICAgICAgICAgb3JkZXI6IDIsXG4gICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIF0sXG4gICAgICAgIH0sXG4gICAgICAgIHNpbmdsZToge1xuICAgICAgICAgIHRpdGxlOiBge3tkb2N1bWVudC5uYW1lfX1gLFxuICAgICAgICAgIHNlY3Rpb25zOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIGlkOiAnc2VjdGlvbicsXG4gICAgICAgICAgICAgIGxheW91dDoge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uczoge1xuICAgICAgICAgICAgICAgICAgbGc6IHtcbiAgICAgICAgICAgICAgICAgICAgY29sU3BhbjogMTIsXG4gICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIF0sXG4gICAgICAgICAgcHJvcGVydGllczogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBuYW1lOiAnZG9jdW1lbnRJZCcsXG4gICAgICAgICAgICAgIGxheW91dDoge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uczoge1xuICAgICAgICAgICAgICAgICAgbGc6IHtcbiAgICAgICAgICAgICAgICAgICAgY29sU3BhbjogNixcbiAgICAgICAgICAgICAgICAgICAgb3JkZXI6IDEsXG4gICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9LFxuXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIG5hbWU6ICd2ZXJzaW9uJyxcbiAgICAgICAgICAgICAgbGF5b3V0OiB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb25zOiB7XG4gICAgICAgICAgICAgICAgICBsZzoge1xuICAgICAgICAgICAgICAgICAgICBjb2xTcGFuOiA2LFxuICAgICAgICAgICAgICAgICAgICBvcmRlcjogMixcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgXSxcbiAgICAgICAgICBhY3Rpb25zOiBbXG4gICAgICAgICAgIFxuICAgICAgICAgIF0sXG4gICAgICAgIH0sXG4gICAgICAgIGxpc3Q6IHtcbiAgICAgICAgICBhY3Rpb25zOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIHRpdGxlOiBgdChcImNyZWF0ZVwiLCB7IHNjb3BlOiBcImNvbW1vblwiIH0pYCxcbiAgICAgICAgICAgICAgY29tbWFuZDogJ2NyZWF0ZS1lbnRpdHknLFxuICAgICAgICAgICAgICBwcmlvcml0eTogJ3ByaW1hcnknLFxuICAgICAgICAgICAgICB0eXBlOiAnY3JlYXRlJyxcbiAgICAgICAgICAgICAgc2NvcGU6IEFYUEVudGl0eUNvbW1hbmRTY29wZS5UeXBlTGV2ZWwsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICB0aXRsZTogJ3QoXCJkZWxldGVJdGVtc1wiLCB7IHNjb3BlOiBcImNvbW1vblwiIH0pJyxcbiAgICAgICAgICAgICAgY29tbWFuZDogJ2RlbGV0ZS1lbnRpdHknLFxuICAgICAgICAgICAgICBwcmlvcml0eTogJ3ByaW1hcnknLFxuICAgICAgICAgICAgICB0eXBlOiAnZGVsZXRlJyxcbiAgICAgICAgICAgICAgc2NvcGU6IEFYUEVudGl0eUNvbW1hbmRTY29wZS5TZWxlY3RlZCxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIHRpdGxlOiAndChcImRldGFpbFwiLCB7IHNjb3BlOiBcImNvbW1vblwiIH0pJyxcbiAgICAgICAgICAgICAgY29tbWFuZDogJ29wZW4tZW50aXR5JyxcbiAgICAgICAgICAgICAgcHJpb3JpdHk6ICdzZWNvbmRhcnknLFxuICAgICAgICAgICAgICB0eXBlOiAndmlldycsXG4gICAgICAgICAgICAgIHNjb3BlOiBBWFBFbnRpdHlDb21tYW5kU2NvcGUuSW5kaXZpZHVhbCxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIHRpdGxlOiAndChcImRlbGV0ZVwiLCB7IHNjb3BlOiBcImNvbW1vblwiIH0pJyxcbiAgICAgICAgICAgICAgY29tbWFuZDogJ2RlbGV0ZS1lbnRpdHknLFxuICAgICAgICAgICAgICBwcmlvcml0eTogJ3NlY29uZGFyeScsXG4gICAgICAgICAgICAgIHR5cGU6ICdkZWxldGUnLFxuICAgICAgICAgICAgICBzY29wZTogQVhQRW50aXR5Q29tbWFuZFNjb3BlLkluZGl2aWR1YWwsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIF0sXG4gICAgICAgICAgdmlld3M6IFtcbiAgICAgICAgICAgIGNyZWF0ZUFsbFF1ZXJ5Vmlldyh7XG4gICAgICAgICAgICAgIHNvcnRzOiBbeyBuYW1lOiAnZG9jdW1lbnRJZCcsIGRpcjogJ2FzYycgfV0sXG4gICAgICAgICAgICB9KSxcbiAgICAgICAgICBdLFxuICAgICAgICB9LFxuICAgICAgfSxcbiAgICB9LFxuICB9O1xuXG4gIHJldHVybiBlbnRpdHlEZWY7XG59XG4iXX0=","import { NgModule } from '@angular/core';\nimport { AXMDistributionService, AXMDistributionServiceImpl } from './distribution.service';\nimport * as i0 from \"@angular/core\";\nexport class AXMDistributionEntityModule {\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: AXMDistributionEntityModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }\n static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: \"14.0.0\", version: \"20.1.8\", ngImport: i0, type: AXMDistributionEntityModule }); }\n static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: AXMDistributionEntityModule, providers: [\n {\n provide: AXMDistributionService,\n useClass: AXMDistributionServiceImpl,\n },\n ] }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: AXMDistributionEntityModule, decorators: [{\n type: NgModule,\n args: [{\n imports: [],\n exports: [],\n declarations: [],\n providers: [\n {\n provide: AXMDistributionService,\n useClass: AXMDistributionServiceImpl,\n },\n ],\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlzdHJpYnV0aW9uLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbW9kdWxlcy9kb2N1bWVudC1tYW5hZ2VtZW50L3NyYy9saWIvZW50aXRpZXMvZGlzdHJpYnV0aW9uL2Rpc3RyaWJ1dGlvbi5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQzs7QUFhNUYsTUFBTSxPQUFPLDJCQUEyQjs4R0FBM0IsMkJBQTJCOytHQUEzQiwyQkFBMkI7K0dBQTNCLDJCQUEyQixhQVB6QjtZQUNQO2dCQUNJLE9BQU8sRUFBRSxzQkFBc0I7Z0JBQy9CLFFBQVEsRUFBRSwwQkFBMEI7YUFDdkM7U0FDSjs7MkZBRVEsMkJBQTJCO2tCQVh2QyxRQUFRO21CQUFDO29CQUNOLE9BQU8sRUFBRSxFQUFFO29CQUNYLE9BQU8sRUFBRSxFQUFFO29CQUNYLFlBQVksRUFBRSxFQUFFO29CQUNoQixTQUFTLEVBQUU7d0JBQ1A7NEJBQ0ksT0FBTyxFQUFFLHNCQUFzQjs0QkFDL0IsUUFBUSxFQUFFLDBCQUEwQjt5QkFDdkM7cUJBQ0o7aUJBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQVhNRGlzdHJpYnV0aW9uU2VydmljZSwgQVhNRGlzdHJpYnV0aW9uU2VydmljZUltcGwgfSBmcm9tICcuL2Rpc3RyaWJ1dGlvbi5zZXJ2aWNlJztcblxuQE5nTW9kdWxlKHtcbiAgICBpbXBvcnRzOiBbXSxcbiAgICBleHBvcnRzOiBbXSxcbiAgICBkZWNsYXJhdGlvbnM6IFtdLFxuICAgIHByb3ZpZGVyczogW1xuICAgICAgICB7XG4gICAgICAgICAgICBwcm92aWRlOiBBWE1EaXN0cmlidXRpb25TZXJ2aWNlLFxuICAgICAgICAgICAgdXNlQ2xhc3M6IEFYTURpc3RyaWJ1dGlvblNlcnZpY2VJbXBsLFxuICAgICAgICB9LFxuICAgIF0sXG59KVxuZXhwb3J0IGNsYXNzIEFYTURpc3RyaWJ1dGlvbkVudGl0eU1vZHVsZSB7IH1cbiJdfQ==","import { AXMEntityCrudServiceImpl } from '@acorex/platform/layout/entity';\nimport { Injectable } from '@angular/core';\nimport { RootConfig } from '../../const';\nimport * as i0 from \"@angular/core\";\nexport class AXMDistributionInteractionService extends AXMEntityCrudServiceImpl {\n}\nexport class AXMDistributionInteractionServiceImpl extends AXMDistributionInteractionService {\n constructor() {\n super(`${RootConfig.module.name}.${RootConfig.entities.distributionInteraction.name}`);\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: AXMDistributionInteractionServiceImpl, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }\n static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: AXMDistributionInteractionServiceImpl }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: AXMDistributionInteractionServiceImpl, decorators: [{\n type: Injectable\n }], ctorParameters: () => [] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlzdHJpYnV0aW9uLWludGVyYWN0aW9uLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL21vZHVsZXMvZG9jdW1lbnQtbWFuYWdlbWVudC9zcmMvbGliL2VudGl0aWVzL2Rpc3RyaWJ1dGlvbi1pbnRlcmFjdGlvbi9kaXN0cmlidXRpb24taW50ZXJhY3Rpb24uc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUMxRSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxhQUFhLENBQUM7O0FBR3pDLE1BQU0sT0FBZ0IsaUNBQWtDLFNBQVEsd0JBSS9EO0NBQUc7QUFHSixNQUFNLE9BQU8scUNBQXNDLFNBQVEsaUNBQWlDO0lBQzFGO1FBQ0UsS0FBSyxDQUFDLEdBQUcsVUFBVSxDQUFDLE1BQU0sQ0FBQyxJQUFJLElBQUksVUFBVSxDQUFDLFFBQVEsQ0FBQyx1QkFBdUIsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDO0lBQ3pGLENBQUM7OEdBSFUscUNBQXFDO2tIQUFyQyxxQ0FBcUM7OzJGQUFyQyxxQ0FBcUM7a0JBRGpELFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBWE1FbnRpdHlDcnVkU2VydmljZUltcGwgfSBmcm9tICdAYWNvcmV4L3BsYXRmb3JtL2xheW91dC9lbnRpdHknO1xuaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgUm9vdENvbmZpZyB9IGZyb20gJy4uLy4uL2NvbnN0JztcbmltcG9ydCB7IEFYTURpc3RyaWJ1dGlvbkludGVyYWN0aW9uU3VtbWFyeSwgQVhNRG9jdW1lbnRNYW5hZ2VtZW50RGlzdHJpYnV0aW9uSW50ZXJhY3Rpb25FbnRpdHlNb2RlbCB9IGZyb20gJy4vZGlzdHJpYnV0aW9uLWludGVyYWN0aW9uLnR5cGVzJztcblxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIEFYTURpc3RyaWJ1dGlvbkludGVyYWN0aW9uU2VydmljZSBleHRlbmRzIEFYTUVudGl0eUNydWRTZXJ2aWNlSW1wbDxcbiAgc3RyaW5nLFxuICBBWE1Eb2N1bWVudE1hbmFnZW1lbnREaXN0cmlidXRpb25JbnRlcmFjdGlvbkVudGl0eU1vZGVsLFxuICBhbnlcbj4ge31cblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIEFYTURpc3RyaWJ1dGlvbkludGVyYWN0aW9uU2VydmljZUltcGwgZXh0ZW5kcyBBWE1EaXN0cmlidXRpb25JbnRlcmFjdGlvblNlcnZpY2Uge1xuICBjb25zdHJ1Y3RvcigpIHtcbiAgICBzdXBlcihgJHtSb290Q29uZmlnLm1vZHVsZS5uYW1lfS4ke1Jvb3RDb25maWcuZW50aXRpZXMuZGlzdHJpYnV0aW9uSW50ZXJhY3Rpb24ubmFtZX1gKTtcbiAgfVxufVxuIl19","import { AXPEntityQueryType, createAllQueryView } from '@acorex/platform/common';\nimport { AXPWidgetsCatalog } from '@acorex/platform/layout/builder';\nimport { RootConfig } from '../../const';\nimport { AXMDistributionInteractionService } from './distribution-interaction.service';\nexport async function distributionInteractionFactory(injector) {\n const dataService = injector.get(AXMDistributionInteractionService);\n const i18n = RootConfig.config.i18n;\n const entityDef = {\n module: RootConfig.module.name,\n name: RootConfig.entities.distributionInteraction.name,\n source: '',\n title: RootConfig.entities.distributionInteraction.title,\n formats: {\n individual: RootConfig.entities.distributionInteraction.title,\n plural: RootConfig.entities.distributionInteraction.titlePlural,\n searchResult: {\n title: '{{ title }}',\n description: RootConfig.module.title,\n },\n },\n relatedEntities: [],\n groups: [\n {\n id: 'section',\n title: RootConfig.entities.distributionInteraction.title,\n },\n ],\n properties: [\n {\n name: 'user',\n title: `t(\"user\", { scope: \"common\" })`,\n groupId: 'section',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.text,\n },\n },\n validations: [\n {\n rule: 'required',\n },\n ],\n },\n {\n name: 'hasViewed',\n title: `t(\"has-view\", { scope: \"${i18n}\" })`,\n groupId: 'section',\n schema: {\n dataType: 'boolean',\n interface: {\n type: AXPWidgetsCatalog.toggle,\n },\n },\n },\n {\n name: 'hasSigned',\n title: `t(\"has-signed\", { scope: \"${i18n}\" })`,\n groupId: 'section',\n schema: {\n dataType: 'boolean',\n interface: {\n type: AXPWidgetsCatalog.toggle,\n },\n },\n },\n {\n name: 'lastViewDate',\n title: `t(\"view-at\", { scope: \"${i18n}\" })`,\n groupId: 'section',\n schema: {\n dataType: 'date',\n interface: {\n type: AXPWidgetsCatalog.dateTime,\n },\n },\n },\n {\n name: 'lastSignDate',\n title: `t(\"signed-at\", { scope: \"${i18n}\" })`,\n groupId: 'section',\n schema: {\n dataType: 'date',\n interface: {\n type: AXPWidgetsCatalog.dateTime,\n },\n },\n },\n ],\n columns: [{ name: 'user', options: { dataPath: 'user.title' } }, { name: 'hasViewed' },\n { name: 'lastViewDate' },\n { name: 'hasSigned' },\n { name: 'lastSignDate' }\n ],\n commands: {\n create: {\n execute: async (data) => {\n const res = await dataService.insertOne(data);\n return { id: res };\n },\n },\n delete: {\n execute: async (id) => {\n return await dataService.deleteOne(id);\n },\n },\n update: {\n execute: async (data) => {\n return await dataService.updateOne(data.id, data);\n },\n },\n },\n queries: {\n byKey: {\n execute: async (id) => {\n return await dataService.getOne(id);\n },\n type: AXPEntityQueryType.Single,\n },\n list: {\n execute: async (e) => {\n const x = await dataService.query(e);\n console.log(x);\n return x;\n },\n type: AXPEntityQueryType.List,\n },\n },\n interfaces: {\n master: {\n create: {\n sections: [\n {\n id: 'section',\n },\n ],\n properties: [\n {\n name: 'name',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n order: 1,\n },\n },\n },\n },\n {\n name: 'title',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n order: 2,\n },\n },\n },\n },\n ],\n },\n update: {\n sections: [\n {\n id: 'section',\n },\n ],\n properties: [\n {\n name: 'name',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n order: 1,\n },\n },\n },\n },\n {\n name: 'title',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n order: 2,\n },\n },\n },\n },\n ],\n },\n single: {\n title: '{{title}}',\n sections: [\n {\n id: 'section',\n layout: {\n positions: {\n lg: {\n colSpan: 12,\n },\n },\n },\n },\n ],\n properties: [\n {\n name: 'name',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n order: 1,\n },\n },\n },\n },\n {\n name: 'title',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n order: 2,\n },\n },\n },\n },\n ],\n actions: [],\n },\n list: {\n actions: [],\n views: [\n createAllQueryView({\n sorts: [{ name: 'name', dir: 'asc' }],\n }),\n ],\n },\n },\n },\n };\n return entityDef;\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlzdHJpYnV0aW9uLWludGVyYWN0aW9uLmVudGl0eS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbW9kdWxlcy9kb2N1bWVudC1tYW5hZ2VtZW50L3NyYy9saWIvZW50aXRpZXMvZGlzdHJpYnV0aW9uLWludGVyYWN0aW9uL2Rpc3RyaWJ1dGlvbi1pbnRlcmFjdGlvbi5lbnRpdHkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFvQyxrQkFBa0IsRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ25ILE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBRXBFLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDekMsT0FBTyxFQUFFLGlDQUFpQyxFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFFdkYsTUFBTSxDQUFDLEtBQUssVUFBVSw4QkFBOEIsQ0FBQyxRQUFrQjtJQUNyRSxNQUFNLFdBQVcsR0FBRyxRQUFRLENBQUMsR0FBRyxDQUFDLGlDQUFpQyxDQUFDLENBQUM7SUFDcEUsTUFBTSxJQUFJLEdBQUcsVUFBVSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUM7SUFFcEMsTUFBTSxTQUFTLEdBQWM7UUFDM0IsTUFBTSxFQUFFLFVBQVUsQ0FBQyxNQUFNLENBQUMsSUFBSTtRQUM5QixJQUFJLEVBQUUsVUFBVSxDQUFDLFFBQVEsQ0FBQyx1QkFBdUIsQ0FBQyxJQUFJO1FBQ3RELE1BQU0sRUFBRSxFQUFFO1FBQ1YsS0FBSyxFQUFFLFVBQVUsQ0FBQyxRQUFRLENBQUMsdUJBQXVCLENBQUMsS0FBSztRQUN4RCxPQUFPLEVBQUU7WUFDUCxVQUFVLEVBQUUsVUFBVSxDQUFDLFFBQVEsQ0FBQyx1QkFBdUIsQ0FBQyxLQUFLO1lBQzdELE1BQU0sRUFBRSxVQUFVLENBQUMsUUFBUSxDQUFDLHVCQUF1QixDQUFDLFdBQVc7WUFDL0Qs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QUU7aUJBQ1o7Z0JBQ0QsSUFBSSxFQUFFO29CQUNKLE9BQU8sRUFBRSxFQUVSO29CQUNELEtBQUssRUFBRTt3QkFDTCxrQkFBa0IsQ0FBQzs0QkFDakIsS0FBSyxFQUFFLENBQUMsRUFBRSxJQUFJLEVBQUUsTUFBTSxFQUFFLEdBQUcsRUFBRSxLQUFLLEVBQUUsQ0FBQzt5QkFDdEMsQ0FBQztxQkFDSDtpQkFDRjthQUNGO1NBQ0Y7S0FDRixDQUFDO0lBRUYsT0FBTyxTQUFTLENBQUM7QUFDbkIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFYUEVudGl0eSwgQVhQRW50aXR5Q29tbWFuZFNjb3BlLCBBWFBFbnRpdHlRdWVyeVR5cGUsIGNyZWF0ZUFsbFF1ZXJ5VmlldyB9IGZyb20gJ0BhY29yZXgvcGxhdGZvcm0vY29tbW9uJztcbmltcG9ydCB7IEFYUFdpZGdldHNDYXRhbG9nIH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9sYXlvdXQvYnVpbGRlcic7XG5pbXBvcnQgeyBJbmplY3RvciB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgUm9vdENvbmZpZyB9IGZyb20gJy4uLy4uL2NvbnN0JztcbmltcG9ydCB7IEFYTURpc3RyaWJ1dGlvbkludGVyYWN0aW9uU2VydmljZSB9IGZyb20gJy4vZGlzdHJpYnV0aW9uLWludGVyYWN0aW9uLnNlcnZpY2UnO1xuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gZGlzdHJpYnV0aW9uSW50ZXJhY3Rpb25GYWN0b3J5KGluamVjdG9yOiBJbmplY3Rvcik6IFByb21pc2U8QVhQRW50aXR5IHwgbnVsbD4ge1xuICBjb25zdCBkYXRhU2VydmljZSA9IGluamVjdG9yLmdldChBWE1EaXN0cmlidXRpb25JbnRlcmFjdGlvblNlcnZpY2UpO1xuICBjb25zdCBpMThuID0gUm9vdENvbmZpZy5jb25maWcuaTE4bjtcblxuICBjb25zdCBlbnRpdHlEZWY6IEFYUEVudGl0eSA9IHtcbiAgICBtb2R1bGU6IFJvb3RDb25maWcubW9kdWxlLm5hbWUsXG4gICAgbmFtZTogUm9vdENvbmZpZy5lbnRpdGllcy5kaXN0cmlidXRpb25JbnRlcmFjdGlvbi5uYW1lLFxuICAgIHNvdXJjZTogJycsXG4gICAgdGl0bGU6IFJvb3RDb25maWcuZW50aXRpZXMuZGlzdHJpYnV0aW9uSW50ZXJhY3Rpb24udGl0bGUsXG4gICAgZm9ybWF0czoge1xuICAgICAgaW5kaXZpZHVhbDogUm9vdENvbmZpZy5lbnRpdGllcy5kaXN0cmlidXRpb25JbnRlcmFjdGlvbi50aXRsZSxcbiAgICAgIHBsdXJhbDogUm9vdENvbmZpZy5lbnRpdGllcy5kaXN0cmlidXRpb25JbnRlcmFjdGlvbi50aXRsZVBsdXJhbCxcbiAgICAgIHNlYXJjaFJlc3VsdDoge1xuICAgICAgICB0aXRsZTogJ3t7IHRpdGxlIH19JyxcbiAgICAgICAgZGVzY3JpcHRpb246IFJvb3RDb25maWcubW9kdWxlLnRpdGxlLFxuICAgICAgfSxcbiAgICB9LFxuICAgIHJlbGF0ZWRFbnRpdGllczogW10sXG4gICAgZ3JvdXBzOiBbXG4gICAgICB7XG4gICAgICAgIGlkOiAnc2VjdGlvbicsXG4gICAgICAgIHRpdGxlOiBSb290Q29uZmlnLmVudGl0aWVzLmRpc3RyaWJ1dGlvbkludGVyYWN0aW9uLnRpdGxlLFxuICAgICAgfSxcbiAgICBdLFxuICAgIHByb3BlcnRpZXM6IFtcbiAgICAgIHtcbiAgICAgICAgbmFtZTogJ3VzZXInLFxuICAgICAgICB0aXRsZTogYHQoXCJ1c2VyXCIsIHsgc2NvcGU6IFwiY29tbW9uXCIgfSlgLFxuICAgICAgICBncm91cElkOiAnc2VjdGlvbicsXG4gICAgICAgIHNjaGVtYToge1xuICAgICAgICAgIGRhdGFUeXBlOiAnc3RyaW5nJyxcbiAgICAgICAgICBpbnRlcmZhY2U6IHtcbiAgICAgICAgICAgIHR5cGU6IEFYUFdpZGdldHNDYXRhbG9nLnRleHQsXG4gICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgICAgdmFsaWRhdGlvbnM6IFtcbiAgICAgICAgICB7XG4gICAgICAgICAgICBydWxlOiAncmVxdWlyZWQnLFxuICAgICAgICAgIH0sXG4gICAgICAgIF0sXG4gICAgICB9LFxuXG4gICAgICB7XG4gICAgICAgIG5hbWU6ICdoYXNWaWV3ZWQnLFxuICAgICAgICB0aXRsZTogYHQoXCJoYXMtdmlld1wiLCB7IHNjb3BlOiBcIiR7aTE4bn1cIiB9KWAsXG4gICAgICAgIGdyb3VwSWQ6ICdzZWN0aW9uJyxcbiAgICAgICAgc2NoZW1hOiB7XG4gICAgICAgICAgZGF0YVR5cGU6ICdib29sZWFuJyxcbiAgICAgICAgICBpbnRlcmZhY2U6IHtcbiAgICAgICAgICAgIHR5cGU6IEFYUFdpZGdldHNDYXRhbG9nLnRvZ2dsZSxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgbmFtZTogJ2hhc1NpZ25lZCcsXG4gICAgICAgIHRpdGxlOiBgdChcImhhcy1zaWduZWRcIiwgeyBzY29wZTogXCIke2kxOG59XCIgfSlgLFxuICAgICAgICBncm91cElkOiAnc2VjdGlvbicsXG4gICAgICAgIHNjaGVtYToge1xuICAgICAgICAgIGRhdGFUeXBlOiAnYm9vbGVhbicsXG4gICAgICAgICAgaW50ZXJmYWNlOiB7XG4gICAgICAgICAgICB0eXBlOiBBWFBXaWRnZXRzQ2F0YWxvZy50b2dnbGUsXG4gICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIG5hbWU6ICdsYXN0Vmlld0RhdGUnLFxuICAgICAgICB0aXRsZTogYHQoXCJ2aWV3LWF0XCIsIHsgc2NvcGU6IFwiJHtpMThufVwiIH0pYCxcbiAgICAgICAgZ3JvdXBJZDogJ3NlY3Rpb24nLFxuICAgICAgICBzY2hlbWE6IHtcbiAgICAgICAgICBkYXRhVHlwZTogJ2RhdGUnLFxuICAgICAgICAgIGludGVyZmFjZToge1xuICAgICAgICAgICAgdHlwZTogQVhQV2lkZ2V0c0NhdGFsb2cuZGF0ZVRpbWUsXG4gICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIG5hbWU6ICdsYXN0U2lnbkRhdGUnLFxuICAgICAgICB0aXRsZTogYHQoXCJzaWduZWQtYXRcIiwgeyBzY29wZTogXCIke2kxOG59XCIgfSlgLFxuICAgICAgICBncm91cElkOiAnc2VjdGlvbicsXG4gICAgICAgIHNjaGVtYToge1xuICAgICAgICAgIGRhdGFUeXBlOiAnZGF0ZScsXG4gICAgICAgICAgaW50ZXJmYWNlOiB7XG4gICAgICAgICAgICB0eXBlOiBBWFBXaWRnZXRzQ2F0YWxvZy5kYXRlVGltZSxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgfSxcbiAgICBdLFxuICAgIGNvbHVtbnM6IFt7IG5hbWU6ICd1c2VyJyAsIG9wdGlvbnMgOiB7ZGF0YVBhdGggOiAndXNlci50aXRsZSd9IH0sIHsgbmFtZTogJ2hhc1ZpZXdlZCcgfSxcbiAgICAgIHtuYW1lIDogJ2xhc3RWaWV3RGF0ZSd9LFxuICAgIHtuYW1lIDogJ2hhc1NpZ25lZCd9LFxuICAgICAge25hbWUgOiAnbGFzdFNpZ25EYXRlJyB9XG4gICAgXSxcbiAgICBjb21tYW5kczoge1xuICAgICAgY3JlYXRlOiB7XG4gICAgICAgIGV4ZWN1dGU6IGFzeW5jIChkYXRhOiBhbnkpID0+IHtcbiAgICAgICAgICBjb25zdCByZXMgPSBhd2FpdCBkYXRhU2VydmljZS5pbnNlcnRPbmUoZGF0YSk7XG4gICAgICAgICAgcmV0dXJuIHsgaWQ6IHJlcyB9O1xuICAgICAgICB9LFxuICAgICAgfSxcbiAgICAgIGRlbGV0ZToge1xuICAgICAgICBleGVjdXRlOiBhc3luYyAoaWQ6IGFueSkgPT4ge1xuICAgICAgICAgIHJldHVybiBhd2FpdCBkYXRhU2VydmljZS5kZWxldGVPbmUoaWQpO1xuICAgICAgICB9LFxuICAgICAgfSxcbiAgICAgIHVwZGF0ZToge1xuICAgICAgICBleGVjdXRlOiBhc3luYyAoZGF0YTogYW55KSA9PiB7XG4gICAgICAgICAgcmV0dXJuIGF3YWl0IGRhdGFTZXJ2aWNlLnVwZGF0ZU9uZShkYXRhLmlkLCBkYXRhKTtcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgfSxcbiAgICBxdWVyaWVzOiB7XG4gICAgICBieUtleToge1xuICAgICAgICBleGVjdXRlOiBhc3luYyAoaWQ6IHN0cmluZykgPT4ge1xuICAgICAgICAgIHJldHVybiBhd2FpdCBkYXRhU2VydmljZS5nZXRPbmUoaWQpO1xuICAgICAgICB9LFxuICAgICAgICB0eXBlOiBBWFBFbnRpdHlRdWVyeVR5cGUuU2luZ2xlLFxuICAgICAgfSxcbiAgICAgIGxpc3Q6IHtcbiAgICAgICAgZXhlY3V0ZTogYXN5bmMgKGU6IGFueSkgPT4ge1xuICAgICAgICAgIGNvbnN0IHg9IGF3YWl0IGRhdGFTZXJ2aWNlLnF1ZXJ5KGUpO1xuICAgICAgICAgIGNvbnNvbGUubG9nKHgpO1xuICAgICAgICAgIFxuICAgICAgICAgIHJldHVybiB4O1xuICAgICAgICB9LFxuICAgICAgICB0eXBlOiBBWFBFbnRpdHlRdWVyeVR5cGUuTGlzdCxcbiAgICAgIH0sXG4gICAgfSxcbiAgICBpbnRlcmZhY2VzOiB7XG4gICAgICBtYXN0ZXI6IHtcbiAgICAgICAgY3JlYXRlOiB7XG4gICAgICAgICAgc2VjdGlvbnM6IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgaWQ6ICdzZWN0aW9uJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgXSxcbiAgICAgICAgICBwcm9wZXJ0aWVzOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIG5hbWU6ICduYW1lJyxcbiAgICAgICAgICAgICAgbGF5b3V0OiB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb25zOiB7XG4gICAgICAgICAgICAgICAgICBsZzoge1xuICAgICAgICAgICAgICAgICAgICBjb2xTcGFuOiA2LFxuICAgICAgICAgICAgICAgICAgICBvcmRlcjogMSxcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIH0sXG5cbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgbmFtZTogJ3RpdGxlJyxcbiAgICAgICAgICAgICAgbGF5b3V0OiB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb25zOiB7XG4gICAgICAgICAgICAgICAgICBsZzoge1xuICAgICAgICAgICAgICAgICAgICBjb2xTcGFuOiA2LFxuICAgICAgICAgICAgICAgICAgICBvcmRlcjogMixcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgXSxcbiAgICAgICAgfSxcbiAgICAgICAgdXBkYXRlOiB7XG4gICAgICAgICAgc2VjdGlvbnM6IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgaWQ6ICdzZWN0aW9uJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgXSxcbiAgICAgICAgICBwcm9wZXJ0aWVzOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIG5hbWU6ICduYW1lJyxcbiAgICAgICAgICAgICAgbGF5b3V0OiB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb25zOiB7XG4gICAgICAgICAgICAgICAgICBsZzoge1xuICAgICAgICAgICAgICAgICAgICBjb2xTcGFuOiA2LFxuICAgICAgICAgICAgICAgICAgICBvcmRlcjogMSxcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIH0sXG5cbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgbmFtZTogJ3RpdGxlJyxcbiAgICAgICAgICAgICAgbGF5b3V0OiB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb25zOiB7XG4gICAgICAgICAgICAgICAgICBsZzoge1xuICAgICAgICAgICAgICAgICAgICBjb2xTcGFuOiA2LFxuICAgICAgICAgICAgICAgICAgICBvcmRlcjogMixcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgXSxcbiAgICAgICAgfSxcbiAgICAgICAgc2luZ2xlOiB7XG4gICAgICAgICAgdGl0bGU6ICd7e3RpdGxlfX0nLFxuICAgICAgICAgIHNlY3Rpb25zOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIGlkOiAnc2VjdGlvbicsXG4gICAgICAgICAgICAgIGxheW91dDoge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uczoge1xuICAgICAgICAgICAgICAgICAgbGc6IHtcbiAgICAgICAgICAgICAgICAgICAgY29sU3BhbjogMTIsXG4gICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIF0sXG4gICAgICAgICAgcHJvcGVydGllczogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBuYW1lOiAnbmFtZScsXG4gICAgICAgICAgICAgIGxheW91dDoge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uczoge1xuICAgICAgICAgICAgICAgICAgbGc6IHtcbiAgICAgICAgICAgICAgICAgICAgY29sU3BhbjogNixcbiAgICAgICAgICAgICAgICAgICAgb3JkZXI6IDEsXG4gICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9LFxuXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIG5hbWU6ICd0aXRsZScsXG4gICAgICAgICAgICAgIGxheW91dDoge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uczoge1xuICAgICAgICAgICAgICAgICAgbGc6IHtcbiAgICAgICAgICAgICAgICAgICAgY29sU3BhbjogNixcbiAgICAgICAgICAgICAgICAgICAgb3JkZXI6IDIsXG4gICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIF0sXG4gICAgICAgICAgYWN0aW9uczogW10sXG4gICAgICAgIH0sXG4gICAgICAgIGxpc3Q6IHtcbiAgICAgICAgICBhY3Rpb25zOiBbXG5cbiAgICAgICAgICBdLFxuICAgICAgICAgIHZpZXdzOiBbXG4gICAgICAgICAgICBjcmVhdGVBbGxRdWVyeVZpZXcoe1xuICAgICAgICAgICAgICBzb3J0czogW3sgbmFtZTogJ25hbWUnLCBkaXI6ICdhc2MnIH1dLFxuICAgICAgICAgICAgfSksXG4gICAgICAgICAgXSxcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgfSxcbiAgfTtcblxuICByZXR1cm4gZW50aXR5RGVmO1xufVxuIl19","import { NgModule } from '@angular/core';\nimport { AXMDistributionInteractionService, AXMDistributionInteractionServiceImpl } from './distribution-interaction.service';\nimport * as i0 from \"@angular/core\";\nexport class AXMDistributionInteractionEntityModule {\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: AXMDistributionInteractionEntityModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }\n static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: \"14.0.0\", version: \"20.1.8\", ngImport: i0, type: AXMDistributionInteractionEntityModule }); }\n static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: AXMDistributionInteractionEntityModule, providers: [\n {\n provide: AXMDistributionInteractionService,\n useClass: AXMDistributionInteractionServiceImpl,\n },\n ] }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: AXMDistributionInteractionEntityModule, decorators: [{\n type: NgModule,\n args: [{\n imports: [],\n exports: [],\n declarations: [],\n providers: [\n {\n provide: AXMDistributionInteractionService,\n useClass: AXMDistributionInteractionServiceImpl,\n },\n ],\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlzdHJpYnV0aW9uLWludGVyYWN0aW9uLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbW9kdWxlcy9kb2N1bWVudC1tYW5hZ2VtZW50L3NyYy9saWIvZW50aXRpZXMvZGlzdHJpYnV0aW9uLWludGVyYWN0aW9uL2Rpc3RyaWJ1dGlvbi1pbnRlcmFjdGlvbi5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsaUNBQWlDLEVBQUUscUNBQXFDLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQzs7QUFhOUgsTUFBTSxPQUFPLHNDQUFzQzs4R0FBdEMsc0NBQXNDOytHQUF0QyxzQ0FBc0M7K0dBQXRDLHNDQUFzQyxhQVBwQztZQUNQO2dCQUNJLE9BQU8sRUFBRSxpQ0FBaUM7Z0JBQzFDLFFBQVEsRUFBRSxxQ0FBcUM7YUFDbEQ7U0FDSjs7MkZBRVEsc0NBQXNDO2tCQVhsRCxRQUFRO21CQUFDO29CQUNOLE9BQU8sRUFBRSxFQUFFO29CQUNYLE9BQU8sRUFBRSxFQUFFO29CQUNYLFlBQVksRUFBRSxFQUFFO29CQUNoQixTQUFTLEVBQUU7d0JBQ1A7NEJBQ0ksT0FBTyxFQUFFLGlDQUFpQzs0QkFDMUMsUUFBUSxFQUFFLHFDQUFxQzt5QkFDbEQ7cUJBQ0o7aUJBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQVhNRGlzdHJpYnV0aW9uSW50ZXJhY3Rpb25TZXJ2aWNlLCBBWE1EaXN0cmlidXRpb25JbnRlcmFjdGlvblNlcnZpY2VJbXBsIH0gZnJvbSAnLi9kaXN0cmlidXRpb24taW50ZXJhY3Rpb24uc2VydmljZSc7XG5cbkBOZ01vZHVsZSh7XG4gICAgaW1wb3J0czogW10sXG4gICAgZXhwb3J0czogW10sXG4gICAgZGVjbGFyYXRpb25zOiBbXSxcbiAgICBwcm92aWRlcnM6IFtcbiAgICAgICAge1xuICAgICAgICAgICAgcHJvdmlkZTogQVhNRGlzdHJpYnV0aW9uSW50ZXJhY3Rpb25TZXJ2aWNlLFxuICAgICAgICAgICAgdXNlQ2xhc3M6IEFYTURpc3RyaWJ1dGlvbkludGVyYWN0aW9uU2VydmljZUltcGwsXG4gICAgICAgIH0sXG4gICAgXSxcbn0pXG5leHBvcnQgY2xhc3MgQVhNRGlzdHJpYnV0aW9uSW50ZXJhY3Rpb25FbnRpdHlNb2R1bGUgeyB9XG4iXX0=","import { NgModule } from '@angular/core';\nimport * as i0 from \"@angular/core\";\nexport class AXMDocumentReletedEntityModule {\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: AXMDocumentReletedEntityModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }\n static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: \"14.0.0\", version: \"20.1.8\", ngImport: i0, type: AXMDocumentReletedEntityModule }); }\n static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: AXMDocumentReletedEntityModule }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: AXMDocumentReletedEntityModule, decorators: [{\n type: NgModule,\n args: [{\n imports: [],\n exports: [],\n declarations: [],\n providers: [],\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG9jdW1lbnQtcmVsZXRlZC5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL21vZHVsZXMvZG9jdW1lbnQtbWFuYWdlbWVudC9zcmMvbGliL2VudGl0aWVzL2RvY3VtZW50LXJlbGV0ZWQvZG9jdW1lbnQtcmVsZXRlZC5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFRekMsTUFBTSxPQUFPLDhCQUE4Qjs4R0FBOUIsOEJBQThCOytHQUE5Qiw4QkFBOEI7K0dBQTlCLDhCQUE4Qjs7MkZBQTlCLDhCQUE4QjtrQkFOMUMsUUFBUTttQkFBQztvQkFDUixPQUFPLEVBQUUsRUFBRTtvQkFDWCxPQUFPLEVBQUUsRUFBRTtvQkFDWCxZQUFZLEVBQUUsRUFBRTtvQkFDaEIsU0FBUyxFQUFFLEVBQUU7aUJBQ2QiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5ATmdNb2R1bGUoe1xuICBpbXBvcnRzOiBbXSxcbiAgZXhwb3J0czogW10sXG4gIGRlY2xhcmF0aW9uczogW10sXG4gIHByb3ZpZGVyczogW10sXG59KVxuZXhwb3J0IGNsYXNzIEFYTURvY3VtZW50UmVsZXRlZEVudGl0eU1vZHVsZSB7fVxuIl19","// Entity Services\nexport * from './document';\nexport * from './document-type';\nexport * from './document-type-meta-definition';\nexport * from './document-type-meta-value';\nexport * from './document-type-status-definition';\nexport * from './document-releted';\nexport * from './folder';\nexport * from './review';\nexport * from './distribution';\nexport * from './distribution-interaction';\n// Entity Modules\nexport * from './document/document.module';\nexport * from './document-type/document-type.module';\nexport * from './document-type-meta-definition/document-type-meta-definition.module';\nexport * from './document-type-meta-value/document-type-meta-value.module';\nexport * from './document-type-status-definition/document-type-status-definition.module';\nexport * from './document-releted/document-releted.module';\nexport * from './folder/folder.module';\nexport * from './review/review.module';\nexport * from './distribution/distribution.module';\nexport * from './distribution-interaction/distribution-interaction.module';\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL21vZHVsZXMvZG9jdW1lbnQtbWFuYWdlbWVudC9zcmMvbGliL2VudGl0aWVzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGtCQUFrQjtBQUNsQixjQUFjLFlBQVksQ0FBQztBQUMzQixjQUFjLGlCQUFpQixDQUFDO0FBQ2hDLGNBQWMsaUNBQWlDLENBQUM7QUFDaEQsY0FBYyw0QkFBNEIsQ0FBQztBQUMzQyxjQUFjLG1DQUFtQyxDQUFDO0FBQ2xELGNBQWMsb0JBQW9CLENBQUM7QUFDbkMsY0FBYyxVQUFVLENBQUM7QUFDekIsY0FBYyxVQUFVLENBQUM7QUFDekIsY0FBYyxnQkFBZ0IsQ0FBQztBQUMvQixjQUFjLDRCQUE0QixDQUFDO0FBRTNDLGlCQUFpQjtBQUNqQixjQUFjLDRCQUE0QixDQUFDO0FBQzNDLGNBQWMsc0NBQXNDLENBQUM7QUFDckQsY0FBYyxzRUFBc0UsQ0FBQztBQUNyRixjQUFjLDREQUE0RCxDQUFDO0FBQzNFLGNBQWMsMEVBQTBFLENBQUM7QUFDekYsY0FBYyw0Q0FBNEMsQ0FBQztBQUMzRCxjQUFjLHdCQUF3QixDQUFDO0FBQ3ZDLGNBQWMsd0JBQXdCLENBQUM7QUFDdkMsY0FBYyxvQ0FBb0MsQ0FBQztBQUNuRCxjQUFjLDREQUE0RCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLy8gRW50aXR5IFNlcnZpY2VzXG5leHBvcnQgKiBmcm9tICcuL2RvY3VtZW50JztcbmV4cG9ydCAqIGZyb20gJy4vZG9jdW1lbnQtdHlwZSc7XG5leHBvcnQgKiBmcm9tICcuL2RvY3VtZW50LXR5cGUtbWV0YS1kZWZpbml0aW9uJztcbmV4cG9ydCAqIGZyb20gJy4vZG9jdW1lbnQtdHlwZS1tZXRhLXZhbHVlJztcbmV4cG9ydCAqIGZyb20gJy4vZG9jdW1lbnQtdHlwZS1zdGF0dXMtZGVmaW5pdGlvbic7XG5leHBvcnQgKiBmcm9tICcuL2RvY3VtZW50LXJlbGV0ZWQnO1xuZXhwb3J0ICogZnJvbSAnLi9mb2xkZXInO1xuZXhwb3J0ICogZnJvbSAnLi9yZXZpZXcnO1xuZXhwb3J0ICogZnJvbSAnLi9kaXN0cmlidXRpb24nO1xuZXhwb3J0ICogZnJvbSAnLi9kaXN0cmlidXRpb24taW50ZXJhY3Rpb24nO1xuXG4vLyBFbnRpdHkgTW9kdWxlc1xuZXhwb3J0ICogZnJvbSAnLi9kb2N1bWVudC9kb2N1bWVudC5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9kb2N1bWVudC10eXBlL2RvY3VtZW50LXR5cGUubW9kdWxlJztcbmV4cG9ydCAqIGZyb20gJy4vZG9jdW1lbnQtdHlwZS1tZXRhLWRlZmluaXRpb24vZG9jdW1lbnQtdHlwZS1tZXRhLWRlZmluaXRpb24ubW9kdWxlJztcbmV4cG9ydCAqIGZyb20gJy4vZG9jdW1lbnQtdHlwZS1tZXRhLXZhbHVlL2RvY3VtZW50LXR5cGUtbWV0YS12YWx1ZS5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9kb2N1bWVudC10eXBlLXN0YXR1cy1kZWZpbml0aW9uL2RvY3VtZW50LXR5cGUtc3RhdHVzLWRlZmluaXRpb24ubW9kdWxlJztcbmV4cG9ydCAqIGZyb20gJy4vZG9jdW1lbnQtcmVsZXRlZC9kb2N1bWVudC1yZWxldGVkLm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL2ZvbGRlci9mb2xkZXIubW9kdWxlJztcbmV4cG9ydCAqIGZyb20gJy4vcmV2aWV3L3Jldmlldy5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9kaXN0cmlidXRpb24vZGlzdHJpYnV0aW9uLm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL2Rpc3RyaWJ1dGlvbi1pbnRlcmFjdGlvbi9kaXN0cmlidXRpb24taW50ZXJhY3Rpb24ubW9kdWxlJztcbiJdfQ==","import { AXPWidgetsCatalog } from '@acorex/platform/layout/builder';\nexport class AXMImageFileTypeProvider {\n async items() {\n return [\n {\n name: 'image',\n title: 'Image',\n icon: 'fa-light fa-image ax-text-purple-500',\n extensions: [\n {\n name: 'jpg',\n title: 'JPEG',\n icon: 'fa-light fa-image ax-text-purple-500',\n meta: [],\n },\n {\n name: 'png',\n title: 'PNG',\n icon: 'fa-light fa-image ax-text-purple-500',\n meta: [],\n },\n {\n name: 'gif',\n title: 'GIF',\n icon: 'fa-light fa-image ax-text-purple-500',\n meta: [\n {\n name: 'duration',\n title: 'Duration',\n interface: async () => {\n return {\n type: AXPWidgetsCatalog.text,\n options: {\n validations: [\n {\n rule: \"required\"\n }\n ]\n },\n path: 'gift.duration',\n };\n },\n },\n ],\n },\n ],\n meta: [\n {\n name: 'width',\n title: 'Width',\n interface: async () => {\n return {\n type: AXPWidgetsCatalog.text,\n options: {\n validations: [\n {\n rule: \"required\"\n }\n ]\n },\n path: 'image.width',\n };\n },\n },\n {\n name: 'height',\n title: 'Height',\n interface: async () => {\n return {\n type: AXPWidgetsCatalog.text,\n options: {},\n path: 'image.height',\n };\n },\n },\n ],\n },\n ];\n }\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1hZ2UuZmlsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbW9kdWxlcy9kb2N1bWVudC1tYW5hZ2VtZW50L3NyYy9saWIvZmVhdHVyZXMvZmlsZS10eXBlL3Byb3ZpZGVycy9pbWFnZS5maWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBRXBFLE1BQU0sT0FBTyx3QkFBd0I7SUFJbkMsS0FBSyxDQUFDLEtBQUs7UUFDVCxPQUFPO1lBQ0w7Z0JBQ0UsSUFBSSxFQUFFLE9BQU87Z0JBQ2IsS0FBSyxFQUFFLE9BQU87Z0JBQ2QsSUFBSSxFQUFFLHNDQUFzQztnQkFDNUMsVUFBVSxFQUFFO29CQUNWO3dCQUNFLElBQUksRUFBRSxLQUFLO3dCQUNYLEtBQUssRUFBRSxNQUFNO3dCQUNiLElBQUksRUFBRSxzQ0FBc0M7d0JBQzVDLElBQUksRUFBRSxFQUFFO3FCQUNUO29CQUNEO3dCQUNFLElBQUksRUFBRSxLQUFLO3dCQUNYLEtBQUssRUFBRSxLQUFLO3dCQUNaLElBQUksRUFBRSxzQ0FBc0M7d0JBQzVDLElBQUksRUFBRSxFQUFFO3FCQUNUO29CQUNEO3dCQUNFLElBQUksRUFBRSxLQUFLO3dCQUNYLEtBQUssRUFBRSxLQUFLO3dCQUNaLElBQUksRUFBRSxzQ0FBc0M7d0JBQzVDLElBQUksRUFBRTs0QkFDSjtnQ0FDRSxJQUFJLEVBQUUsVUFBVTtnQ0FDaEIsS0FBSyxFQUFFLFVBQVU7Z0NBQ2pCLFNBQVMsRUFBRSxLQUFLLElBQUksRUFBRTtvQ0FDcEIsT0FBTzt3Q0FDTCxJQUFJLEVBQUUsaUJBQWlCLENBQUMsSUFBSTt3Q0FDNUIsT0FBTyxFQUFFOzRDQUNQLFdBQVcsRUFBRTtnREFDWDtvREFDRSxJQUFJLEVBQUUsVUFBVTtpREFDakI7NkNBQ0Y7eUNBQ0Y7d0NBQ0QsSUFBSSxFQUFFLGVBQWU7cUNBQ3RCLENBQUM7Z0NBQ0osQ0FBQzs2QkFDRjt5QkFDRjtxQkFDRjtpQkFDRjtnQkFDRCxJQUFJLEVBQUU7b0JBQ0o7d0JBQ0UsSUFBSSxFQUFFLE9BQU87d0JBQ2IsS0FBSyxFQUFFLE9BQU87d0JBQ2QsU0FBUyxFQUFFLEtBQUssSUFBSSxFQUFFOzRCQUNwQixPQUFPO2dDQUNMLElBQUksRUFBRSxpQkFBaUIsQ0FBQyxJQUFJO2dDQUM1QixPQUFPLEVBQUU7b0NBQ1AsV0FBVyxFQUFFO3dDQUNYOzRDQUNFLElBQUksRUFBRSxVQUFVO3lDQUNqQjtxQ0FDRjtpQ0FDRjtnQ0FDRCxJQUFJLEVBQUUsYUFBYTs2QkFDcEIsQ0FBQzt3QkFDSixDQUFDO3FCQUNGO29CQUNEO3dCQUNFLElBQUksRUFBRSxRQUFRO3dCQUNkLEtBQUssRUFBRSxRQUFRO3dCQUNmLFNBQVMsRUFBRSxLQUFLLElBQUksRUFBRTs0QkFDcEIsT0FBTztnQ0FDTCxJQUFJLEVBQUUsaUJBQWlCLENBQUMsSUFBSTtnQ0FDNUIsT0FBTyxFQUFFLEVBQUU7Z0NBQ1gsSUFBSSxFQUFFLGNBQWM7NkJBQ3JCLENBQUM7d0JBQ0osQ0FBQztxQkFDRjtpQkFDRjthQUNGO1NBQ0YsQ0FBQztJQUNKLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFYUEZpbGVUeXBlSW5mb1Byb3ZpZGVyLCBBWFBGaWxlVHlwZSB9IGZyb20gJ0BhY29yZXgvcGxhdGZvcm0vY29tbW9uJztcbmltcG9ydCB7IEFYUFdpZGdldHNDYXRhbG9nIH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9sYXlvdXQvYnVpbGRlcic7XG5cbmV4cG9ydCBjbGFzcyBBWE1JbWFnZUZpbGVUeXBlUHJvdmlkZXIgaW1wbGVtZW50cyBBWFBGaWxlVHlwZUluZm9Qcm92aWRlciB7XG5cblxuXG4gIGFzeW5jIGl0ZW1zKCk6IFByb21pc2U8QVhQRmlsZVR5cGVbXT4ge1xuICAgIHJldHVybiBbXG4gICAgICB7XG4gICAgICAgIG5hbWU6ICdpbWFnZScsXG4gICAgICAgIHRpdGxlOiAnSW1hZ2UnLFxuICAgICAgICBpY29uOiAnZmEtbGlnaHQgZmEtaW1hZ2UgYXgtdGV4dC1wdXJwbGUtNTAwJyxcbiAgICAgICAgZXh0ZW5zaW9uczogW1xuICAgICAgICAgIHtcbiAgICAgICAgICAgIG5hbWU6ICdqcGcnLFxuICAgICAgICAgICAgdGl0bGU6ICdKUEVHJyxcbiAgICAgICAgICAgIGljb246ICdmYS1saWdodCBmYS1pbWFnZSBheC10ZXh0LXB1cnBsZS01MDAnLFxuICAgICAgICAgICAgbWV0YTogW10sXG4gICAgICAgICAgfSxcbiAgICAgICAgICB7XG4gICAgICAgICAgICBuYW1lOiAncG5nJyxcbiAgICAgICAgICAgIHRpdGxlOiAnUE5HJyxcbiAgICAgICAgICAgIGljb246ICdmYS1saWdodCBmYS1pbWFnZSBheC10ZXh0LXB1cnBsZS01MDAnLFxuICAgICAgICAgICAgbWV0YTogW10sXG4gICAgICAgICAgfSxcbiAgICAgICAgICB7XG4gICAgICAgICAgICBuYW1lOiAnZ2lmJyxcbiAgICAgICAgICAgIHRpdGxlOiAnR0lGJyxcbiAgICAgICAgICAgIGljb246ICdmYS1saWdodCBmYS1pbWFnZSBheC10ZXh0LXB1cnBsZS01MDAnLFxuICAgICAgICAgICAgbWV0YTogW1xuICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgbmFtZTogJ2R1cmF0aW9uJyxcbiAgICAgICAgICAgICAgICB0aXRsZTogJ0R1cmF0aW9uJyxcbiAgICAgICAgICAgICAgICBpbnRlcmZhY2U6IGFzeW5jICgpID0+IHtcbiAgICAgICAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgICAgICAgIHR5cGU6IEFYUFdpZGdldHNDYXRhbG9nLnRleHQsXG4gICAgICAgICAgICAgICAgICAgIG9wdGlvbnM6IHtcbiAgICAgICAgICAgICAgICAgICAgICB2YWxpZGF0aW9uczogW1xuICAgICAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgICBydWxlOiBcInJlcXVpcmVkXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICBdXG4gICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgIHBhdGg6ICdnaWZ0LmR1cmF0aW9uJyxcbiAgICAgICAgICAgICAgICAgIH07XG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIF0sXG4gICAgICAgICAgfSxcbiAgICAgICAgXSxcbiAgICAgICAgbWV0YTogW1xuICAgICAgICAgIHtcbiAgICAgICAgICAgIG5hbWU6ICd3aWR0aCcsXG4gICAgICAgICAgICB0aXRsZTogJ1dpZHRoJyxcbiAgICAgICAgICAgIGludGVyZmFjZTogYXN5bmMgKCkgPT4ge1xuICAgICAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgICAgIHR5cGU6IEFYUFdpZGdldHNDYXRhbG9nLnRleHQsXG4gICAgICAgICAgICAgICAgb3B0aW9uczoge1xuICAgICAgICAgICAgICAgICAgdmFsaWRhdGlvbnM6IFtcbiAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgIHJ1bGU6IFwicmVxdWlyZWRcIlxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICBdXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICBwYXRoOiAnaW1hZ2Uud2lkdGgnLFxuICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgfSxcbiAgICAgICAgICB9LFxuICAgICAgICAgIHtcbiAgICAgICAgICAgIG5hbWU6ICdoZWlnaHQnLFxuICAgICAgICAgICAgdGl0bGU6ICdIZWlnaHQnLFxuICAgICAgICAgICAgaW50ZXJmYWNlOiBhc3luYyAoKSA9PiB7XG4gICAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgICAgdHlwZTogQVhQV2lkZ2V0c0NhdGFsb2cudGV4dCxcbiAgICAgICAgICAgICAgICBvcHRpb25zOiB7fSxcbiAgICAgICAgICAgICAgICBwYXRoOiAnaW1hZ2UuaGVpZ2h0JyxcbiAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgfSxcbiAgICAgICAgXSxcbiAgICAgIH0sXG4gICAgXTtcbiAgfVxufVxuIl19","export class AXMVideoFileTypeProvider {\n async items() {\n return [\n {\n name: 'video',\n title: 'Video',\n icon: 'fa-light fa-video ax-text-red-500',\n extensions: [\n {\n name: 'mp4',\n title: 'MP4',\n icon: 'fa-light fa-video ax-text-red-500',\n meta: [],\n },\n {\n name: 'avi',\n title: 'AVI',\n icon: 'fa-light fa-video ax-text-red-500',\n meta: [],\n },\n {\n name: 'mkv',\n title: 'MKV',\n icon: 'fa-light fa-video ax-text-red-500',\n meta: [],\n },\n ],\n },\n ];\n }\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmlkZW8uZmlsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbW9kdWxlcy9kb2N1bWVudC1tYW5hZ2VtZW50L3NyYy9saWIvZmVhdHVyZXMvZmlsZS10eXBlL3Byb3ZpZGVycy92aWRlby5maWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE1BQU0sT0FBTyx3QkFBd0I7SUFDbkMsS0FBSyxDQUFDLEtBQUs7UUFDVCxPQUFPO1lBQ0w7Z0JBQ0UsSUFBSSxFQUFFLE9BQU87Z0JBQ2IsS0FBSyxFQUFFLE9BQU87Z0JBQ2QsSUFBSSxFQUFFLG1DQUFtQztnQkFDekMsVUFBVSxFQUFFO29CQUNWO3dCQUNFLElBQUksRUFBRSxLQUFLO3dCQUNYLEtBQUssRUFBRSxLQUFLO3dCQUNaLElBQUksRUFBRSxtQ0FBbUM7d0JBQ3pDLElBQUksRUFBRSxFQUFFO3FCQUNUO29CQUNEO3dCQUNFLElBQUksRUFBRSxLQUFLO3dCQUNYLEtBQUssRUFBRSxLQUFLO3dCQUNaLElBQUksRUFBRSxtQ0FBbUM7d0JBQ3pDLElBQUksRUFBRSxFQUFFO3FCQUNUO29CQUNEO3dCQUNFLElBQUksRUFBRSxLQUFLO3dCQUNYLEtBQUssRUFBRSxLQUFLO3dCQUNaLElBQUksRUFBRSxtQ0FBbUM7d0JBQ3pDLElBQUksRUFBRSxFQUFFO3FCQUNUO2lCQUNGO2FBQ0Y7U0FDRixDQUFDO0lBQ0osQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQVhQRmlsZVR5cGVJbmZvUHJvdmlkZXIsIEFYUEZpbGVUeXBlIH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9jb21tb24nO1xuXG5leHBvcnQgY2xhc3MgQVhNVmlkZW9GaWxlVHlwZVByb3ZpZGVyIGltcGxlbWVudHMgQVhQRmlsZVR5cGVJbmZvUHJvdmlkZXIge1xuICBhc3luYyBpdGVtcygpOiBQcm9taXNlPEFYUEZpbGVUeXBlW10+IHtcbiAgICByZXR1cm4gW1xuICAgICAge1xuICAgICAgICBuYW1lOiAndmlkZW8nLFxuICAgICAgICB0aXRsZTogJ1ZpZGVvJyxcbiAgICAgICAgaWNvbjogJ2ZhLWxpZ2h0IGZhLXZpZGVvIGF4LXRleHQtcmVkLTUwMCcsXG4gICAgICAgIGV4dGVuc2lvbnM6IFtcbiAgICAgICAgICB7XG4gICAgICAgICAgICBuYW1lOiAnbXA0JyxcbiAgICAgICAgICAgIHRpdGxlOiAnTVA0JyxcbiAgICAgICAgICAgIGljb246ICdmYS1saWdodCBmYS12aWRlbyBheC10ZXh0LXJlZC01MDAnLFxuICAgICAgICAgICAgbWV0YTogW10sXG4gICAgICAgICAgfSxcbiAgICAgICAgICB7XG4gICAgICAgICAgICBuYW1lOiAnYXZpJyxcbiAgICAgICAgICAgIHRpdGxlOiAnQVZJJyxcbiAgICAgICAgICAgIGljb246ICdmYS1saWdodCBmYS12aWRlbyBheC10ZXh0LXJlZC01MDAnLFxuICAgICAgICAgICAgbWV0YTogW10sXG4gICAgICAgICAgfSxcbiAgICAgICAgICB7XG4gICAgICAgICAgICBuYW1lOiAnbWt2JyxcbiAgICAgICAgICAgIHRpdGxlOiAnTUtWJyxcbiAgICAgICAgICAgIGljb246ICdmYS1saWdodCBmYS12aWRlbyBheC10ZXh0LXJlZC01MDAnLFxuICAgICAgICAgICAgbWV0YTogW10sXG4gICAgICAgICAgfSxcbiAgICAgICAgXSxcbiAgICAgIH0sXG4gICAgXTtcbiAgfVxufVxuIl19","export class AXMDocumentFileTypeProvider {\n async items() {\n return [\n {\n name: 'document',\n title: 'Document',\n icon: 'fa-light fa-file-lines ax-text-blue-600',\n extensions: [\n {\n name: 'pdf',\n title: 'PDF',\n icon: 'fa-light fa-file-pdf ax-text-red-600',\n meta: [],\n },\n {\n name: 'doc',\n title: 'Word',\n icon: 'fa-light fa-file-word ax-text-blue-700',\n meta: [],\n },\n {\n name: 'docx',\n title: 'Word',\n icon: 'fa-light fa-file-word ax-text-blue-700',\n meta: [],\n },\n {\n name: 'xls',\n title: 'Excel',\n icon: 'fa-light fa-file-excel ax-text-green-700',\n meta: [],\n },\n {\n name: 'xlsx',\n title: 'Excel',\n icon: 'fa-light fa-file-excel ax-text-green-700',\n meta: [],\n },\n {\n name: 'ppt',\n title: 'PowerPoint',\n icon: 'fa-light fa-file-powerpoint ax-text-orange-700',\n meta: [],\n },\n {\n name: 'pptx',\n title: 'PowerPoint',\n icon: 'fa-light fa-file-powerpoint ax-text-orange-700',\n meta: [],\n },\n {\n name: 'txt',\n title: 'Text',\n icon: 'fa-light fa-file-lines ax-text-blue-600',\n meta: [],\n },\n {\n name: 'rtf',\n title: 'Rich Text',\n icon: 'fa-light fa-file-lines ax-text-blue-600',\n meta: [],\n },\n ],\n },\n ];\n }\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG9jdW1lbnQuZmlsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbW9kdWxlcy9kb2N1bWVudC1tYW5hZ2VtZW50L3NyYy9saWIvZmVhdHVyZXMvZmlsZS10eXBlL3Byb3ZpZGVycy9kb2N1bWVudC5maWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE1BQU0sT0FBTywyQkFBMkI7SUFDcEMsS0FBSyxDQUFDLEtBQUs7UUFDUCxPQUFPO1lBQ0g7Z0JBQ0ksSUFBSSxFQUFFLFVBQVU7Z0JBQ2hCLEtBQUssRUFBRSxVQUFVO2dCQUNqQixJQUFJLEVBQUUseUNBQXlDO2dCQUMvQyxVQUFVLEVBQUU7b0JBQ1I7d0JBQ0ksSUFBSSxFQUFFLEtBQUs7d0JBQ1gsS0FBSyxFQUFFLEtBQUs7d0JBQ1osSUFBSSxFQUFFLHNDQUFzQzt3QkFDNUMsSUFBSSxFQUFFLEVBQUU7cUJBQ1g7b0JBQ0Q7d0JBQ0ksSUFBSSxFQUFFLEtBQUs7d0JBQ1gsS0FBSyxFQUFFLE1BQU07d0JBQ2IsSUFBSSxFQUFFLHdDQUF3Qzt3QkFDOUMsSUFBSSxFQUFFLEVBQUU7cUJBQ1g7b0JBQ0Q7d0JBQ0ksSUFBSSxFQUFFLE1BQU07d0JBQ1osS0FBSyxFQUFFLE1BQU07d0JBQ2IsSUFBSSxFQUFFLHdDQUF3Qzt3QkFDOUMsSUFBSSxFQUFFLEVBQUU7cUJBQ1g7b0JBQ0Q7d0JBQ0ksSUFBSSxFQUFFLEtBQUs7d0JBQ1gsS0FBSyxFQUFFLE9BQU87d0JBQ2QsSUFBSSxFQUFFLDBDQUEwQzt3QkFDaEQsSUFBSSxFQUFFLEVBQUU7cUJBQ1g7b0JBQ0Q7d0JBQ0ksSUFBSSxFQUFFLE1BQU07d0JBQ1osS0FBSyxFQUFFLE9BQU87d0JBQ2QsSUFBSSxFQUFFLDBDQUEwQzt3QkFDaEQsSUFBSSxFQUFFLEVBQUU7cUJBQ1g7b0JBQ0Q7d0JBQ0ksSUFBSSxFQUFFLEtBQUs7d0JBQ1gsS0FBSyxFQUFFLFlBQVk7d0JBQ25CLElBQUksRUFBRSxnREFBZ0Q7d0JBQ3RELElBQUksRUFBRSxFQUFFO3FCQUNYO29CQUNEO3dCQUNJLElBQUksRUFBRSxNQUFNO3dCQUNaLEtBQUssRUFBRSxZQUFZO3dCQUNuQixJQUFJLEVBQUUsZ0RBQWdEO3dCQUN0RCxJQUFJLEVBQUUsRUFBRTtxQkFDWDtvQkFDRDt3QkFDSSxJQUFJLEVBQUUsS0FBSzt3QkFDWCxLQUFLLEVBQUUsTUFBTTt3QkFDYixJQUFJLEVBQUUseUNBQXlDO3dCQUMvQyxJQUFJLEVBQUUsRUFBRTtxQkFDWDtvQkFDRDt3QkFDSSxJQUFJLEVBQUUsS0FBSzt3QkFDWCxLQUFLLEVBQUUsV0FBVzt3QkFDbEIsSUFBSSxFQUFFLHlDQUF5Qzt3QkFDL0MsSUFBSSxFQUFFLEVBQUU7cUJBQ1g7aUJBQ0o7YUFDSjtTQUNKLENBQUM7SUFDTixDQUFDO0NBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBWFBGaWxlVHlwZUluZm9Qcm92aWRlciwgQVhQRmlsZVR5cGUgfSBmcm9tICdAYWNvcmV4L3BsYXRmb3JtL2NvbW1vbic7XG5cbmV4cG9ydCBjbGFzcyBBWE1Eb2N1bWVudEZpbGVUeXBlUHJvdmlkZXIgaW1wbGVtZW50cyBBWFBGaWxlVHlwZUluZm9Qcm92aWRlciB7XG4gICAgYXN5bmMgaXRlbXMoKTogUHJvbWlzZTxBWFBGaWxlVHlwZVtdPiB7XG4gICAgICAgIHJldHVybiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgbmFtZTogJ2RvY3VtZW50JyxcbiAgICAgICAgICAgICAgICB0aXRsZTogJ0RvY3VtZW50JyxcbiAgICAgICAgICAgICAgICBpY29uOiAnZmEtbGlnaHQgZmEtZmlsZS1saW5lcyBheC10ZXh0LWJsdWUtNjAwJyxcbiAgICAgICAgICAgICAgICBleHRlbnNpb25zOiBbXG4gICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU6ICdwZGYnLFxuICAgICAgICAgICAgICAgICAgICAgICAgdGl0bGU6ICdQREYnLFxuICAgICAgICAgICAgICAgICAgICAgICAgaWNvbjogJ2ZhLWxpZ2h0IGZhLWZpbGUtcGRmIGF4LXRleHQtcmVkLTYwMCcsXG4gICAgICAgICAgICAgICAgICAgICAgICBtZXRhOiBbXSxcbiAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgbmFtZTogJ2RvYycsXG4gICAgICAgICAgICAgICAgICAgICAgICB0aXRsZTogJ1dvcmQnLFxuICAgICAgICAgICAgICAgICAgICAgICAgaWNvbjogJ2ZhLWxpZ2h0IGZhLWZpbGUtd29yZCBheC10ZXh0LWJsdWUtNzAwJyxcbiAgICAgICAgICAgICAgICAgICAgICAgIG1ldGE6IFtdLFxuICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICBuYW1lOiAnZG9jeCcsXG4gICAgICAgICAgICAgICAgICAgICAgICB0aXRsZTogJ1dvcmQnLFxuICAgICAgICAgICAgICAgICAgICAgICAgaWNvbjogJ2ZhLWxpZ2h0IGZhLWZpbGUtd29yZCBheC10ZXh0LWJsdWUtNzAwJyxcbiAgICAgICAgICAgICAgICAgICAgICAgIG1ldGE6IFtdLFxuICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICBuYW1lOiAneGxzJyxcbiAgICAgICAgICAgICAgICAgICAgICAgIHRpdGxlOiAnRXhjZWwnLFxuICAgICAgICAgICAgICAgICAgICAgICAgaWNvbjogJ2ZhLWxpZ2h0IGZhLWZpbGUtZXhjZWwgYXgtdGV4dC1ncmVlbi03MDAnLFxuICAgICAgICAgICAgICAgICAgICAgICAgbWV0YTogW10sXG4gICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU6ICd4bHN4JyxcbiAgICAgICAgICAgICAgICAgICAgICAgIHRpdGxlOiAnRXhjZWwnLFxuICAgICAgICAgICAgICAgICAgICAgICAgaWNvbjogJ2ZhLWxpZ2h0IGZhLWZpbGUtZXhjZWwgYXgtdGV4dC1ncmVlbi03MDAnLFxuICAgICAgICAgICAgICAgICAgICAgICAgbWV0YTogW10sXG4gICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU6ICdwcHQnLFxuICAgICAgICAgICAgICAgICAgICAgICAgdGl0bGU6ICdQb3dlclBvaW50JyxcbiAgICAgICAgICAgICAgICAgICAgICAgIGljb246ICdmYS1saWdodCBmYS1maWxlLXBvd2VycG9pbnQgYXgtdGV4dC1vcmFuZ2UtNzAwJyxcbiAgICAgICAgICAgICAgICAgICAgICAgIG1ldGE6IFtdLFxuICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICBuYW1lOiAncHB0eCcsXG4gICAgICAgICAgICAgICAgICAgICAgICB0aXRsZTogJ1Bvd2VyUG9pbnQnLFxuICAgICAgICAgICAgICAgICAgICAgICAgaWNvbjogJ2ZhLWxpZ2h0IGZhLWZpbGUtcG93ZXJwb2ludCBheC10ZXh0LW9yYW5nZS03MDAnLFxuICAgICAgICAgICAgICAgICAgICAgICAgbWV0YTogW10sXG4gICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU6ICd0eHQnLFxuICAgICAgICAgICAgICAgICAgICAgICAgdGl0bGU6ICdUZXh0JyxcbiAgICAgICAgICAgICAgICAgICAgICAgIGljb246ICdmYS1saWdodCBmYS1maWxlLWxpbmVzIGF4LXRleHQtYmx1ZS02MDAnLFxuICAgICAgICAgICAgICAgICAgICAgICAgbWV0YTogW10sXG4gICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU6ICdydGYnLFxuICAgICAgICAgICAgICAgICAgICAgICAgdGl0bGU6ICdSaWNoIFRleHQnLFxuICAgICAgICAgICAgICAgICAgICAgICAgaWNvbjogJ2ZhLWxpZ2h0IGZhLWZpbGUtbGluZXMgYXgtdGV4dC1ibHVlLTYwMCcsXG4gICAgICAgICAgICAgICAgICAgICAgICBtZXRhOiBbXSxcbiAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgXTtcbiAgICB9XG59ICJdfQ==","export class AXMAudioFileTypeProvider {\n async items() {\n return [\n {\n name: 'audio',\n title: 'Audio',\n icon: 'fa-light fa-file-audio ax-text-green-500',\n extensions: [\n {\n name: 'mp3',\n title: 'MP3',\n icon: 'fa-light fa-file-audio ax-text-green-500',\n meta: [],\n },\n {\n name: 'wav',\n title: 'WAV',\n icon: 'fa-light fa-file-audio ax-text-green-500',\n meta: [],\n },\n {\n name: 'ogg',\n title: 'OGG',\n icon: 'fa-light fa-file-audio ax-text-green-500',\n meta: [],\n },\n {\n name: 'm4a',\n title: 'M4A',\n icon: 'fa-light fa-file-audio ax-text-green-500',\n meta: [],\n },\n {\n name: 'flac',\n title: 'FLAC',\n icon: 'fa-light fa-file-audio ax-text-green-500',\n meta: [],\n },\n ],\n },\n ];\n }\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXVkaW8uZmlsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbW9kdWxlcy9kb2N1bWVudC1tYW5hZ2VtZW50L3NyYy9saWIvZmVhdHVyZXMvZmlsZS10eXBlL3Byb3ZpZGVycy9hdWRpby5maWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE1BQU0sT0FBTyx3QkFBd0I7SUFDakMsS0FBSyxDQUFDLEtBQUs7UUFDUCxPQUFPO1lBQ0g7Z0JBQ0ksSUFBSSxFQUFFLE9BQU87Z0JBQ2IsS0FBSyxFQUFFLE9BQU87Z0JBQ2QsSUFBSSxFQUFFLDBDQUEwQztnQkFDaEQsVUFBVSxFQUFFO29CQUNSO3dCQUNJLElBQUksRUFBRSxLQUFLO3dCQUNYLEtBQUssRUFBRSxLQUFLO3dCQUNaLElBQUksRUFBRSwwQ0FBMEM7d0JBQ2hELElBQUksRUFBRSxFQUFFO3FCQUNYO29CQUNEO3dCQUNJLElBQUksRUFBRSxLQUFLO3dCQUNYLEtBQUssRUFBRSxLQUFLO3dCQUNaLElBQUksRUFBRSwwQ0FBMEM7d0JBQ2hELElBQUksRUFBRSxFQUFFO3FCQUNYO29CQUNEO3dCQUNJLElBQUksRUFBRSxLQUFLO3dCQUNYLEtBQUssRUFBRSxLQUFLO3dCQUNaLElBQUksRUFBRSwwQ0FBMEM7d0JBQ2hELElBQUksRUFBRSxFQUFFO3FCQUNYO29CQUNEO3dCQUNJLElBQUksRUFBRSxLQUFLO3dCQUNYLEtBQUssRUFBRSxLQUFLO3dCQUNaLElBQUksRUFBRSwwQ0FBMEM7d0JBQ2hELElBQUksRUFBRSxFQUFFO3FCQUNYO29CQUNEO3dCQUNJLElBQUksRUFBRSxNQUFNO3dCQUNaLEtBQUssRUFBRSxNQUFNO3dCQUNiLElBQUksRUFBRSwwQ0FBMEM7d0JBQ2hELElBQUksRUFBRSxFQUFFO3FCQUNYO2lCQUNKO2FBQ0o7U0FDSixDQUFDO0lBQ04sQ0FBQztDQUNKIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQVhQRmlsZVR5cGVJbmZvUHJvdmlkZXIsIEFYUEZpbGVUeXBlIH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9jb21tb24nO1xuXG5leHBvcnQgY2xhc3MgQVhNQXVkaW9GaWxlVHlwZVByb3ZpZGVyIGltcGxlbWVudHMgQVhQRmlsZVR5cGVJbmZvUHJvdmlkZXIge1xuICAgIGFzeW5jIGl0ZW1zKCk6IFByb21pc2U8QVhQRmlsZVR5cGVbXT4ge1xuICAgICAgICByZXR1cm4gW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIG5hbWU6ICdhdWRpbycsXG4gICAgICAgICAgICAgICAgdGl0bGU6ICdBdWRpbycsXG4gICAgICAgICAgICAgICAgaWNvbjogJ2ZhLWxpZ2h0IGZhLWZpbGUtYXVkaW8gYXgtdGV4dC1ncmVlbi01MDAnLFxuICAgICAgICAgICAgICAgIGV4dGVuc2lvbnM6IFtcbiAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgbmFtZTogJ21wMycsXG4gICAgICAgICAgICAgICAgICAgICAgICB0aXRsZTogJ01QMycsXG4gICAgICAgICAgICAgICAgICAgICAgICBpY29uOiAnZmEtbGlnaHQgZmEtZmlsZS1hdWRpbyBheC10ZXh0LWdyZWVuLTUwMCcsXG4gICAgICAgICAgICAgICAgICAgICAgICBtZXRhOiBbXSxcbiAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgbmFtZTogJ3dhdicsXG4gICAgICAgICAgICAgICAgICAgICAgICB0aXRsZTogJ1dBVicsXG4gICAgICAgICAgICAgICAgICAgICAgICBpY29uOiAnZmEtbGlnaHQgZmEtZmlsZS1hdWRpbyBheC10ZXh0LWdyZWVuLTUwMCcsXG4gICAgICAgICAgICAgICAgICAgICAgICBtZXRhOiBbXSxcbiAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgbmFtZTogJ29nZycsXG4gICAgICAgICAgICAgICAgICAgICAgICB0aXRsZTogJ09HRycsXG4gICAgICAgICAgICAgICAgICAgICAgICBpY29uOiAnZmEtbGlnaHQgZmEtZmlsZS1hdWRpbyBheC10ZXh0LWdyZWVuLTUwMCcsXG4gICAgICAgICAgICAgICAgICAgICAgICBtZXRhOiBbXSxcbiAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgbmFtZTogJ200YScsXG4gICAgICAgICAgICAgICAgICAgICAgICB0aXRsZTogJ000QScsXG4gICAgICAgICAgICAgICAgICAgICAgICBpY29uOiAnZmEtbGlnaHQgZmEtZmlsZS1hdWRpbyBheC10ZXh0LWdyZWVuLTUwMCcsXG4gICAgICAgICAgICAgICAgICAgICAgICBtZXRhOiBbXSxcbiAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgbmFtZTogJ2ZsYWMnLFxuICAgICAgICAgICAgICAgICAgICAgICAgdGl0bGU6ICdGTEFDJyxcbiAgICAgICAgICAgICAgICAgICAgICAgIGljb246ICdmYS1saWdodCBmYS1maWxlLWF1ZGlvIGF4LXRleHQtZ3JlZW4tNTAwJyxcbiAgICAgICAgICAgICAgICAgICAgICAgIG1ldGE6IFtdLFxuICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICB9LFxuICAgICAgICBdO1xuICAgIH1cbn0gIl19","export class AXMArchiveFileTypeProvider {\n async items() {\n return [\n {\n name: 'archive',\n title: 'Archive',\n icon: 'fa-light fa-file-zipper ax-text-orange-500',\n extensions: [\n {\n name: 'zip',\n title: 'ZIP',\n icon: 'fa-light fa-file-zipper ax-text-orange-500',\n meta: [],\n },\n {\n name: 'rar',\n title: 'RAR',\n icon: 'fa-light fa-file-zipper ax-text-orange-500',\n meta: [],\n },\n {\n name: '7z',\n title: '7-Zip',\n icon: 'fa-light fa-file-zipper ax-text-orange-500',\n meta: [],\n },\n {\n name: 'tar',\n title: 'TAR',\n icon: 'fa-light fa-file-zipper ax-text-orange-500',\n meta: [],\n },\n {\n name: 'gz',\n title: 'GZIP',\n icon: 'fa-light fa-file-zipper ax-text-orange-500',\n meta: [],\n },\n ],\n },\n ];\n }\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXJjaGl2ZS5maWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tb2R1bGVzL2RvY3VtZW50LW1hbmFnZW1lbnQvc3JjL2xpYi9mZWF0dXJlcy9maWxlLXR5cGUvcHJvdmlkZXJzL2FyY2hpdmUuZmlsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxNQUFNLE9BQU8sMEJBQTBCO0lBQ25DLEtBQUssQ0FBQyxLQUFLO1FBQ1AsT0FBTztZQUNIO2dCQUNJLElBQUksRUFBRSxTQUFTO2dCQUNmLEtBQUssRUFBRSxTQUFTO2dCQUNoQixJQUFJLEVBQUUsNENBQTRDO2dCQUNsRCxVQUFVLEVBQUU7b0JBQ1I7d0JBQ0ksSUFBSSxFQUFFLEtBQUs7d0JBQ1gsS0FBSyxFQUFFLEtBQUs7d0JBQ1osSUFBSSxFQUFFLDRDQUE0Qzt3QkFDbEQsSUFBSSxFQUFFLEVBQUU7cUJBQ1g7b0JBQ0Q7d0JBQ0ksSUFBSSxFQUFFLEtBQUs7d0JBQ1gsS0FBSyxFQUFFLEtBQUs7d0JBQ1osSUFBSSxFQUFFLDRDQUE0Qzt3QkFDbEQsSUFBSSxFQUFFLEVBQUU7cUJBQ1g7b0JBQ0Q7d0JBQ0ksSUFBSSxFQUFFLElBQUk7d0JBQ1YsS0FBSyxFQUFFLE9BQU87d0JBQ2QsSUFBSSxFQUFFLDRDQUE0Qzt3QkFDbEQsSUFBSSxFQUFFLEVBQUU7cUJBQ1g7b0JBQ0Q7d0JBQ0ksSUFBSSxFQUFFLEtBQUs7d0JBQ1gsS0FBSyxFQUFFLEtBQUs7d0JBQ1osSUFBSSxFQUFFLDRDQUE0Qzt3QkFDbEQsSUFBSSxFQUFFLEVBQUU7cUJBQ1g7b0JBQ0Q7d0JBQ0ksSUFBSSxFQUFFLElBQUk7d0JBQ1YsS0FBSyxFQUFFLE1BQU07d0JBQ2IsSUFBSSxFQUFFLDRDQUE0Qzt3QkFDbEQsSUFBSSxFQUFFLEVBQUU7cUJBQ1g7aUJBQ0o7YUFDSjtTQUNKLENBQUM7SUFDTixDQUFDO0NBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBWFBGaWxlVHlwZUluZm9Qcm92aWRlciwgQVhQRmlsZVR5cGUgfSBmcm9tICdAYWNvcmV4L3BsYXRmb3JtL2NvbW1vbic7XG5cbmV4cG9ydCBjbGFzcyBBWE1BcmNoaXZlRmlsZVR5cGVQcm92aWRlciBpbXBsZW1lbnRzIEFYUEZpbGVUeXBlSW5mb1Byb3ZpZGVyIHtcbiAgICBhc3luYyBpdGVtcygpOiBQcm9taXNlPEFYUEZpbGVUeXBlW10+IHtcbiAgICAgICAgcmV0dXJuIFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBuYW1lOiAnYXJjaGl2ZScsXG4gICAgICAgICAgICAgICAgdGl0bGU6ICdBcmNoaXZlJyxcbiAgICAgICAgICAgICAgICBpY29uOiAnZmEtbGlnaHQgZmEtZmlsZS16aXBwZXIgYXgtdGV4dC1vcmFuZ2UtNTAwJyxcbiAgICAgICAgICAgICAgICBleHRlbnNpb25zOiBbXG4gICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU6ICd6aXAnLFxuICAgICAgICAgICAgICAgICAgICAgICAgdGl0bGU6ICdaSVAnLFxuICAgICAgICAgICAgICAgICAgICAgICAgaWNvbjogJ2ZhLWxpZ2h0IGZhLWZpbGUtemlwcGVyIGF4LXRleHQtb3JhbmdlLTUwMCcsXG4gICAgICAgICAgICAgICAgICAgICAgICBtZXRhOiBbXSxcbiAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgbmFtZTogJ3JhcicsXG4gICAgICAgICAgICAgICAgICAgICAgICB0aXRsZTogJ1JBUicsXG4gICAgICAgICAgICAgICAgICAgICAgICBpY29uOiAnZmEtbGlnaHQgZmEtZmlsZS16aXBwZXIgYXgtdGV4dC1vcmFuZ2UtNTAwJyxcbiAgICAgICAgICAgICAgICAgICAgICAgIG1ldGE6IFtdLFxuICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICBuYW1lOiAnN3onLFxuICAgICAgICAgICAgICAgICAgICAgICAgdGl0bGU6ICc3LVppcCcsXG4gICAgICAgICAgICAgICAgICAgICAgICBpY29uOiAnZmEtbGlnaHQgZmEtZmlsZS16aXBwZXIgYXgtdGV4dC1vcmFuZ2UtNTAwJyxcbiAgICAgICAgICAgICAgICAgICAgICAgIG1ldGE6IFtdLFxuICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICBuYW1lOiAndGFyJyxcbiAgICAgICAgICAgICAgICAgICAgICAgIHRpdGxlOiAnVEFSJyxcbiAgICAgICAgICAgICAgICAgICAgICAgIGljb246ICdmYS1saWdodCBmYS1maWxlLXppcHBlciBheC10ZXh0LW9yYW5nZS01MDAnLFxuICAgICAgICAgICAgICAgICAgICAgICAgbWV0YTogW10sXG4gICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU6ICdneicsXG4gICAgICAgICAgICAgICAgICAgICAgICB0aXRsZTogJ0daSVAnLFxuICAgICAgICAgICAgICAgICAgICAgICAgaWNvbjogJ2ZhLWxpZ2h0IGZhLWZpbGUtemlwcGVyIGF4LXRleHQtb3JhbmdlLTUwMCcsXG4gICAgICAgICAgICAgICAgICAgICAgICBtZXRhOiBbXSxcbiAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgXTtcbiAgICB9XG59ICJdfQ==","export class AXMCodeFileTypeProvider {\n async items() {\n return [\n {\n name: 'code',\n title: 'Code',\n icon: 'fa-light fa-file-code ax-text-blue-500',\n extensions: [\n {\n name: 'js',\n title: 'JavaScript',\n icon: 'fa-light fa-file-code ax-text-yellow-500',\n meta: [],\n },\n {\n name: 'ts',\n title: 'TypeScript',\n icon: 'fa-light fa-file-code ax-text-blue-600',\n meta: [],\n },\n {\n name: 'html',\n title: 'HTML',\n icon: 'fa-light fa-file-code ax-text-orange-600',\n meta: [],\n },\n {\n name: 'css',\n title: 'CSS',\n icon: 'fa-light fa-file-code ax-text-pink-500',\n meta: [],\n },\n {\n name: 'json',\n title: 'JSON',\n icon: 'fa-light fa-file-code ax-text-green-500',\n meta: [],\n },\n {\n name: 'xml',\n title: 'XML',\n icon: 'fa-light fa-file-code ax-text-green-500',\n meta: [],\n },\n {\n name: 'py',\n title: 'Python',\n icon: 'fa-light fa-file-code ax-text-yellow-500',\n meta: [],\n },\n {\n name: 'java',\n title: 'Java',\n icon: 'fa-light fa-file-code ax-text-red-500',\n meta: [],\n },\n {\n name: 'cpp',\n title: 'C++',\n icon: 'fa-light fa-file-code ax-text-blue-500',\n meta: [],\n },\n {\n name: 'cs',\n title: 'C#',\n icon: 'fa-light fa-file-code ax-text-blue-500',\n meta: [],\n },\n ],\n },\n ];\n }\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29kZS5maWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tb2R1bGVzL2RvY3VtZW50LW1hbmFnZW1lbnQvc3JjL2xpYi9mZWF0dXJlcy9maWxlLXR5cGUvcHJvdmlkZXJzL2NvZGUuZmlsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxNQUFNLE9BQU8sdUJBQXVCO0lBQ2hDLEtBQUssQ0FBQyxLQUFLO1FBQ1AsT0FBTztZQUNIO2dCQUNJLElBQUksRUFBRSxNQUFNO2dCQUNaLEtBQUssRUFBRSxNQUFNO2dCQUNiLElBQUksRUFBRSx3Q0FBd0M7Z0JBQzlDLFVBQVUsRUFBRTtvQkFDUjt3QkFDSSxJQUFJLEVBQUUsSUFBSTt3QkFDVixLQUFLLEVBQUUsWUFBWTt3QkFDbkIsSUFBSSxFQUFFLDBDQUEwQzt3QkFDaEQsSUFBSSxFQUFFLEVBQUU7cUJBQ1g7b0JBQ0Q7d0JBQ0ksSUFBSSxFQUFFLElBQUk7d0JBQ1YsS0FBSyxFQUFFLFlBQVk7d0JBQ25CLElBQUksRUFBRSx3Q0FBd0M7d0JBQzlDLElBQUksRUFBRSxFQUFFO3FCQUNYO29CQUNEO3dCQUNJLElBQUksRUFBRSxNQUFNO3dCQUNaLEtBQUssRUFBRSxNQUFNO3dCQUNiLElBQUksRUFBRSwwQ0FBMEM7d0JBQ2hELElBQUksRUFBRSxFQUFFO3FCQUNYO29CQUNEO3dCQUNJLElBQUksRUFBRSxLQUFLO3dCQUNYLEtBQUssRUFBRSxLQUFLO3dCQUNaLElBQUksRUFBRSx3Q0FBd0M7d0JBQzlDLElBQUksRUFBRSxFQUFFO3FCQUNYO29CQUNEO3dCQUNJLElBQUksRUFBRSxNQUFNO3dCQUNaLEtBQUssRUFBRSxNQUFNO3dCQUNiLElBQUksRUFBRSx5Q0FBeUM7d0JBQy9DLElBQUksRUFBRSxFQUFFO3FCQUNYO29CQUNEO3dCQUNJLElBQUksRUFBRSxLQUFLO3dCQUNYLEtBQUssRUFBRSxLQUFLO3dCQUNaLElBQUksRUFBRSx5Q0FBeUM7d0JBQy9DLElBQUksRUFBRSxFQUFFO3FCQUNYO29CQUNEO3dCQUNJLElBQUksRUFBRSxJQUFJO3dCQUNWLEtBQUssRUFBRSxRQUFRO3dCQUNmLElBQUksRUFBRSwwQ0FBMEM7d0JBQ2hELElBQUksRUFBRSxFQUFFO3FCQUNYO29CQUNEO3dCQUNJLElBQUksRUFBRSxNQUFNO3dCQUNaLEtBQUssRUFBRSxNQUFNO3dCQUNiLElBQUksRUFBRSx1Q0FBdUM7d0JBQzdDLElBQUksRUFBRSxFQUFFO3FCQUNYO29CQUNEO3dCQUNJLElBQUksRUFBRSxLQUFLO3dCQUNYLEtBQUssRUFBRSxLQUFLO3dCQUNaLElBQUksRUFBRSx3Q0FBd0M7d0JBQzlDLElBQUksRUFBRSxFQUFFO3FCQUNYO29CQUNEO3dCQUNJLElBQUksRUFBRSxJQUFJO3dCQUNWLEtBQUssRUFBRSxJQUFJO3dCQUNYLElBQUksRUFBRSx3Q0FBd0M7d0JBQzlDLElBQUksRUFBRSxFQUFFO3FCQUNYO2lCQUNKO2FBQ0o7U0FDSixDQUFDO0lBQ04sQ0FBQztDQUNKIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQVhQRmlsZVR5cGVJbmZvUHJvdmlkZXIsIEFYUEZpbGVUeXBlIH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9jb21tb24nO1xuXG5leHBvcnQgY2xhc3MgQVhNQ29kZUZpbGVUeXBlUHJvdmlkZXIgaW1wbGVtZW50cyBBWFBGaWxlVHlwZUluZm9Qcm92aWRlciB7XG4gICAgYXN5bmMgaXRlbXMoKTogUHJvbWlzZTxBWFBGaWxlVHlwZVtdPiB7XG4gICAgICAgIHJldHVybiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgbmFtZTogJ2NvZGUnLFxuICAgICAgICAgICAgICAgIHRpdGxlOiAnQ29kZScsXG4gICAgICAgICAgICAgICAgaWNvbjogJ2ZhLWxpZ2h0IGZhLWZpbGUtY29kZSBheC10ZXh0LWJsdWUtNTAwJyxcbiAgICAgICAgICAgICAgICBleHRlbnNpb25zOiBbXG4gICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU6ICdqcycsXG4gICAgICAgICAgICAgICAgICAgICAgICB0aXRsZTogJ0phdmFTY3JpcHQnLFxuICAgICAgICAgICAgICAgICAgICAgICAgaWNvbjogJ2ZhLWxpZ2h0IGZhLWZpbGUtY29kZSBheC10ZXh0LXllbGxvdy01MDAnLFxuICAgICAgICAgICAgICAgICAgICAgICAgbWV0YTogW10sXG4gICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU6ICd0cycsXG4gICAgICAgICAgICAgICAgICAgICAgICB0aXRsZTogJ1R5cGVTY3JpcHQnLFxuICAgICAgICAgICAgICAgICAgICAgICAgaWNvbjogJ2ZhLWxpZ2h0IGZhLWZpbGUtY29kZSBheC10ZXh0LWJsdWUtNjAwJyxcbiAgICAgICAgICAgICAgICAgICAgICAgIG1ldGE6IFtdLFxuICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICBuYW1lOiAnaHRtbCcsXG4gICAgICAgICAgICAgICAgICAgICAgICB0aXRsZTogJ0hUTUwnLFxuICAgICAgICAgICAgICAgICAgICAgICAgaWNvbjogJ2ZhLWxpZ2h0IGZhLWZpbGUtY29kZSBheC10ZXh0LW9yYW5nZS02MDAnLFxuICAgICAgICAgICAgICAgICAgICAgICAgbWV0YTogW10sXG4gICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU6ICdjc3MnLFxuICAgICAgICAgICAgICAgICAgICAgICAgdGl0bGU6ICdDU1MnLFxuICAgICAgICAgICAgICAgICAgICAgICAgaWNvbjogJ2ZhLWxpZ2h0IGZhLWZpbGUtY29kZSBheC10ZXh0LXBpbmstNTAwJyxcbiAgICAgICAgICAgICAgICAgICAgICAgIG1ldGE6IFtdLFxuICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICBuYW1lOiAnanNvbicsXG4gICAgICAgICAgICAgICAgICAgICAgICB0aXRsZTogJ0pTT04nLFxuICAgICAgICAgICAgICAgICAgICAgICAgaWNvbjogJ2ZhLWxpZ2h0IGZhLWZpbGUtY29kZSBheC10ZXh0LWdyZWVuLTUwMCcsXG4gICAgICAgICAgICAgICAgICAgICAgICBtZXRhOiBbXSxcbiAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgbmFtZTogJ3htbCcsXG4gICAgICAgICAgICAgICAgICAgICAgICB0aXRsZTogJ1hNTCcsXG4gICAgICAgICAgICAgICAgICAgICAgICBpY29uOiAnZmEtbGlnaHQgZmEtZmlsZS1jb2RlIGF4LXRleHQtZ3JlZW4tNTAwJyxcbiAgICAgICAgICAgICAgICAgICAgICAgIG1ldGE6IFtdLFxuICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICBuYW1lOiAncHknLFxuICAgICAgICAgICAgICAgICAgICAgICAgdGl0bGU6ICdQeXRob24nLFxuICAgICAgICAgICAgICAgICAgICAgICAgaWNvbjogJ2ZhLWxpZ2h0IGZhLWZpbGUtY29kZSBheC10ZXh0LXllbGxvdy01MDAnLFxuICAgICAgICAgICAgICAgICAgICAgICAgbWV0YTogW10sXG4gICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU6ICdqYXZhJyxcbiAgICAgICAgICAgICAgICAgICAgICAgIHRpdGxlOiAnSmF2YScsXG4gICAgICAgICAgICAgICAgICAgICAgICBpY29uOiAnZmEtbGlnaHQgZmEtZmlsZS1jb2RlIGF4LXRleHQtcmVkLTUwMCcsXG4gICAgICAgICAgICAgICAgICAgICAgICBtZXRhOiBbXSxcbiAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgbmFtZTogJ2NwcCcsXG4gICAgICAgICAgICAgICAgICAgICAgICB0aXRsZTogJ0MrKycsXG4gICAgICAgICAgICAgICAgICAgICAgICBpY29uOiAnZmEtbGlnaHQgZmEtZmlsZS1jb2RlIGF4LXRleHQtYmx1ZS01MDAnLFxuICAgICAgICAgICAgICAgICAgICAgICAgbWV0YTogW10sXG4gICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU6ICdjcycsXG4gICAgICAgICAgICAgICAgICAgICAgICB0aXRsZTogJ0MjJyxcbiAgICAgICAgICAgICAgICAgICAgICAgIGljb246ICdmYS1saWdodCBmYS1maWxlLWNvZGUgYXgtdGV4dC1ibHVlLTUwMCcsXG4gICAgICAgICAgICAgICAgICAgICAgICBtZXRhOiBbXSxcbiAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgXTtcbiAgICB9XG59ICJdfQ==","import { AXPValueWidgetComponent } from '@acorex/platform/layout/builder';\nimport { ChangeDetectionStrategy, Component } from '@angular/core';\nimport * as i0 from \"@angular/core\";\nexport class AXMFileTypeExtensionWidgetColumnComponent extends AXPValueWidgetComponent {\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: AXMFileTypeExtensionWidgetColumnComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }\n static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"14.0.0\", version: \"20.1.8\", type: AXMFileTypeExtensionWidgetColumnComponent, isStandalone: true, selector: \"ng-component\", inputs: { rawValue: \"rawValue\" }, usesInheritance: true, ngImport: i0, template: ``, isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: AXMFileTypeExtensionWidgetColumnComponent, decorators: [{\n type: Component,\n args: [{\n template: ``,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [],\n inputs: ['rawValue'],\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZS10eXBlLWV4dGVuc2lvbi1jb2x1bW4uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tb2R1bGVzL2RvY3VtZW50LW1hbmFnZW1lbnQvc3JjL2xpYi9mZWF0dXJlcy9maWxlLXR5cGUvd2lkZ2V0cy9maWxlLXR5cGUtZXh0ZW5zaW9uL2ZpbGUtdHlwZS1leHRlbnNpb24tY29sdW1uLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUUxRSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQVFuRSxNQUFNLE9BQU8seUNBQTBDLFNBQVEsdUJBQTRCOzhHQUE5RSx5Q0FBeUM7a0dBQXpDLHlDQUF5QyxpSUFMMUMsRUFBRTs7MkZBS0QseUNBQXlDO2tCQU5yRCxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxFQUFFO29CQUNaLGVBQWUsRUFBRSx1QkFBdUIsQ0FBQyxNQUFNO29CQUMvQyxPQUFPLEVBQUUsRUFBRTtvQkFDWCxNQUFNLEVBQUUsQ0FBQyxVQUFVLENBQUM7aUJBQ3JCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQVhQVmFsdWVXaWRnZXRDb21wb25lbnQgfSBmcm9tICdAYWNvcmV4L3BsYXRmb3JtL2xheW91dC9idWlsZGVyJztcblxuaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5AQ29tcG9uZW50KHtcbiAgdGVtcGxhdGU6IGBgLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgaW1wb3J0czogW10sXG4gIGlucHV0czogWydyYXdWYWx1ZSddLFxufSlcbmV4cG9ydCBjbGFzcyBBWE1GaWxlVHlwZUV4dGVuc2lvbldpZGdldENvbHVtbkNvbXBvbmVudCBleHRlbmRzIEFYUFZhbHVlV2lkZ2V0Q29tcG9uZW50PGFueT4geyB9XG4iXX0=","import { AXPValueWidgetComponent } from '@acorex/platform/layout/builder';\nimport { ChangeDetectionStrategy, Component } from '@angular/core';\nimport * as i0 from \"@angular/core\";\nexport class AXMFileTypeExtensionWidgetDesignerComponent extends AXPValueWidgetComponent {\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: AXMFileTypeExtensionWidgetDesignerComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }\n static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"14.0.0\", version: \"20.1.8\", type: AXMFileTypeExtensionWidgetDesignerComponent, isStandalone: true, selector: \"ng-component\", inputs: { rawValue: \"rawValue\" }, usesInheritance: true, ngImport: i0, template: ``, isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: AXMFileTypeExtensionWidgetDesignerComponent, decorators: [{\n type: Component,\n args: [{\n template: ``,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [],\n inputs: ['rawValue'],\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZS10eXBlLWV4dGVuc2lvbi1kZXNpZ25lci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL21vZHVsZXMvZG9jdW1lbnQtbWFuYWdlbWVudC9zcmMvbGliL2ZlYXR1cmVzL2ZpbGUtdHlwZS93aWRnZXRzL2ZpbGUtdHlwZS1leHRlbnNpb24vZmlsZS10eXBlLWV4dGVuc2lvbi1kZXNpZ25lci5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFFMUUsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFRbkUsTUFBTSxPQUFPLDJDQUE0QyxTQUFRLHVCQUE0Qjs4R0FBaEYsMkNBQTJDO2tHQUEzQywyQ0FBMkMsaUlBTDVDLEVBQUU7OzJGQUtELDJDQUEyQztrQkFOdkQsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsRUFBRTtvQkFDWixlQUFlLEVBQUUsdUJBQXVCLENBQUMsTUFBTTtvQkFDL0MsT0FBTyxFQUFFLEVBQUU7b0JBQ1gsTUFBTSxFQUFFLENBQUMsVUFBVSxDQUFDO2lCQUNyQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFYUFZhbHVlV2lkZ2V0Q29tcG9uZW50IH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9sYXlvdXQvYnVpbGRlcic7XG5cbmltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuQENvbXBvbmVudCh7XG4gIHRlbXBsYXRlOiBgYCxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIGltcG9ydHM6IFtdLFxuICBpbnB1dHM6IFsncmF3VmFsdWUnXSxcbn0pXG5leHBvcnQgY2xhc3MgQVhNRmlsZVR5cGVFeHRlbnNpb25XaWRnZXREZXNpZ25lckNvbXBvbmVudCBleHRlbmRzIEFYUFZhbHVlV2lkZ2V0Q29tcG9uZW50PGFueT4geyB9XG4iXX0=","import { AXCollapseModule } from '@acorex/components/collapse';\nimport { AXDataSource } from '@acorex/cdk/common';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXFormModule } from '@acorex/components/form';\nimport { AXLabelModule } from '@acorex/components/label';\nimport { AXSelectBoxModule } from '@acorex/components/select-box';\nimport { AXPFileTypeProviderService } from '@acorex/platform/common';\nimport { AXPLayoutBuilderModule, AXPValueWidgetComponent, } from '@acorex/platform/layout/builder';\nimport { ChangeDetectionStrategy, Component, inject, signal } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\nimport get from 'lodash-es/get';\nimport set from 'lodash-es/set';\nimport * as i0 from \"@angular/core\";\nimport * as i1 from \"@acorex/components/select-box\";\nimport * as i2 from \"@angular/forms\";\nimport * as i3 from \"@acorex/components/form\";\nimport * as i4 from \"@acorex/components/label\";\nimport * as i5 from \"@acorex/components/decorators\";\nimport * as i6 from \"@acorex/platform/layout/builder\";\nimport * as i7 from \"@acorex/components/collapse\";\nexport class AXMFileTypeExtensionWidgetEditComponent extends AXPValueWidgetComponent {\n constructor() {\n super(...arguments);\n this.fileTypeService = inject(AXPFileTypeProviderService);\n this.dataSource = new AXDataSource({\n load: async (_) => {\n try {\n const res = await this.fileTypeService.items();\n const types = res\n .map((item) => {\n const { meta, extensions, ...rest } = item;\n return extensions.map((ext) => {\n const { meta, ...extRest } = ext;\n return {\n ...rest,\n ...extRest,\n name: `${item.name}.${ext.name}`,\n title: `${item.title}/${ext.title}`,\n };\n });\n })\n .flat();\n return {\n items: types,\n total: types.length,\n };\n }\n catch (e) {\n console.log(e);\n }\n return {\n items: [],\n total: 0,\n };\n },\n pageSize: 100,\n });\n this.selectedItems = signal(this.getValue()?.selectedItems ?? [], ...(ngDevMode ? [{ debugName: \"selectedItems\" }] : []));\n this.context = signal(this.getValue()?.context ?? {}, ...(ngDevMode ? [{ debugName: \"context\" }] : []));\n }\n ngOnInit() {\n super.ngOnInit();\n this.selectedItems.set(this.getValue()?.selectedItems ?? []);\n this.context.set(this.getValue()?.context ?? {});\n }\n outputs() {\n return ['selectedItems', 'context'];\n }\n handleOnContextChange(e) {\n this.context.set(e.data);\n this.setValue({ ...this.getValue(), context: e.data });\n }\n async handleValueChange(e) {\n const selectItems = e.component.selectedItems;\n this.setValue({ ...this.getValue(), selectedItems: selectItems });\n const result = {};\n for (const item of selectItems) {\n const type = item.name.split('.')[0];\n const ext = item.name.split('.')[1];\n var fileType = await this.fileTypeService.get(type);\n if (fileType != undefined) {\n const extension = fileType.extensions.find((extension) => extension.name == ext) || { name: ext, title: '' };\n if (extension.meta) {\n for (const meta of extension.meta) {\n if (!get(meta, '__node__')) {\n set(meta, '__node__', typeof meta.interface == 'function' ? await meta.interface() : meta.interface);\n }\n }\n }\n if (fileType.meta) {\n for (const meta of fileType.meta) {\n if (!get(meta, '__node__')) {\n set(meta, '__node__', typeof meta.interface == 'function' ? await meta.interface() : meta.interface);\n }\n }\n }\n if (result[type]) {\n result[type] = {\n ...fileType,\n extensions: [...result[type].extensions, extension],\n };\n }\n else {\n result[type] = {\n ...fileType,\n extensions: [extension],\n };\n }\n }\n }\n this.selectedItems.set(Object.values(result));\n }\n getNode(meta) {\n return get(meta, '__node__');\n }\n filedIsRequired(meta) {\n const node = get(meta, '__node__');\n if (node && node.options && node.options.validations) {\n return node.options.validations.some((validation) => validation.rule === 'required');\n }\n return false;\n }\n hasMetaInExtensions(extensions) {\n return extensions.some((ext) => ext.meta && ext.meta.length > 0);\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: AXMFileTypeExtensionWidgetEditComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }\n static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"17.0.0\", version: \"20.1.8\", type: AXMFileTypeExtensionWidgetEditComponent, isStandalone: true, selector: \"ng-component\", usesInheritance: true, ngImport: i0, template: ` <div>\n <ax-select-box\n #dd\n [dataSource]=\"dataSource\"\n valueField=\"name\"\n textField=\"title\"\n [multiple]=\"true\"\n [ngModel]=\"getValue()?.selectedItems\"\n (onValueChanged)=\"handleValueChange($event)\"\n >\n </ax-select-box>\n <div class=\"ax-py-3\"></div>\n <axp-widgets-container (onContextChanged)=\"handleOnContextChange($event)\" [context]=\"context()\">\n @if (selectedItems().length > 0) {\n <ax-collapse-group look=\"fill\">\n @for (item of selectedItems(); track item.name) {\n <!-- File Types -->\n <ax-collapse [caption]=\"item.title\">\n <div class=\"ax-flex ax-flex-col ax-gap-5\">\n @if (item.meta && item.meta.length > 0) {\n <div class=\"ax-flex ax-flex-col ax-gap-2\">\n <ax-text [textContent]=\"'Global Meta Data'\" class=\"ax-font-bold ax-text-sm\"></ax-text>\n @for (metaFile of item.meta; track metaFile.name) {\n <!-- File Meta Data -->\n <ax-form-field>\n <ax-label [required]=\"filedIsRequired(metaFile)\">{{ metaFile.title }}</ax-label>\n <ng-container axp-widget-renderer [node]=\"getNode(metaFile)\" [mode]=\"'edit'\"></ng-container>\n </ax-form-field>\n }\n </div>\n }\n @if (item.extensions && item.extensions.length > 0) {\n <div class=\"ax-flex ax-flex-col ax-gap-3\">\n @for (ext of item.extensions; track ext.name) {\n <!-- Extensions -->\n @if (ext.meta && ext.meta.length > 0) {\n <ax-text [textContent]=\"ext.title\" class=\"ax-font-bold ax-text-sm\"></ax-text>\n <div class=\"ax-flex ax-flex-col ax-gap-2\">\n @for (extMeta of ext.meta; track $index) {\n <!-- Extension Meta Data -->\n <ax-form-field>\n <ax-label [required]=\"filedIsRequired(extMeta)\">{{ extMeta.title }}</ax-label>\n <ng-container\n axp-widget-renderer\n [node]=\"getNode(extMeta)\"\n [mode]=\"'edit'\"\n ></ng-container>\n </ax-form-field>\n }\n </div>\n }\n <!-- End Extension Meta Data -->\n }\n </div>\n <!-- End Extensions -->\n }\n </div>\n </ax-collapse>\n }\n <!-- End File Types -->\n </ax-collapse-group>\n }\n </axp-widgets-container>\n </div>`, isInline: true, dependencies: [{ kind: \"ngmodule\", type: AXSelectBoxModule }, { kind: \"component\", type: i1.AXSelectBoxComponent, selector: \"ax-select-box\", inputs: [\"disabled\", \"readonly\", \"tabIndex\", \"placeholder\", \"minValue\", \"maxValue\", \"value\", \"state\", \"name\", \"id\", \"type\", \"look\", \"multiple\", \"valueField\", \"textField\", \"disabledField\", \"textTemplate\", \"selectedItems\", \"isItemTruncated\", \"showItemTooltip\", \"dataSource\", \"minRecordsForSearch\", \"caption\", \"itemTemplate\", \"selectedTemplate\", \"emptyTemplate\", \"loadingTemplate\", \"dropdownWidth\", \"searchBoxAutoFocus\"], outputs: [\"valueChange\", \"stateChange\", \"onValueChanged\", \"onBlur\", \"onFocus\", \"readonlyChange\", \"disabledChange\", \"onOpened\", \"onClosed\", \"onItemSelected\", \"onItemClick\"] }, { kind: \"ngmodule\", type: FormsModule }, { kind: \"directive\", type: i2.NgControlStatus, selector: \"[formControlName],[ngModel],[formControl]\" }, { kind: \"directive\", type: i2.NgModel, selector: \"[ngModel]:not([formControlName]):not([formControl])\", inputs: [\"name\", \"disabled\", \"ngModel\", \"ngModelOptions\"], outputs: [\"ngModelChange\"], exportAs: [\"ngModel\"] }, { kind: \"ngmodule\", type: AXFormModule }, { kind: \"component\", type: i3.AXFormFieldComponent, selector: \"ax-form-field\", inputs: [\"labelMode\"] }, { kind: \"ngmodule\", type: AXLabelModule }, { kind: \"component\", type: i4.AXLabelComponent, selector: \"ax-label\", inputs: [\"required\", \"for\"], outputs: [\"requiredChange\"] }, { kind: \"ngmodule\", type: AXDecoratorModule }, { kind: \"component\", type: i5.AXDecoratorGenericComponent, selector: \"ax-footer, ax-header, ax-content, ax-divider, ax-form-hint, ax-prefix, ax-suffix, ax-text, ax-title, ax-subtitle, ax-placeholder, ax-overlay\" }, { kind: \"ngmodule\", type: AXPLayoutBuilderModule }, { kind: \"component\", type: i6.AXPWidgetContainerComponent, selector: \"axp-widgets-container\", inputs: [\"context\", \"functions\"], outputs: [\"onContextChanged\"] }, { kind: \"directive\", type: i6.AXPWidgetRendererDirective, selector: \"[axp-widget-renderer]\", inputs: [\"parentNode\", \"index\", \"mode\", \"node\"], outputs: [\"onOptionsChanged\", \"onValueChanged\"], exportAs: [\"widgetRenderer\"] }, { kind: \"ngmodule\", type: AXCollapseModule }, { kind: \"component\", type: i7.AXCollapseComponent, selector: \"ax-collapse\", inputs: [\"disabled\", \"look\", \"isCollapsed\", \"showHeader\", \"caption\", \"icon\", \"isLoading\", \"headerTemplate\"], outputs: [\"onClick\", \"isCollapsedChange\"] }, { kind: \"component\", type: i7.AXCollapseGroupComponent, selector: \"ax-collapse-group\", inputs: [\"look\", \"accordion\", \"activeIndex\"], outputs: [\"accordionChange\", \"activeIndexChange\"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: AXMFileTypeExtensionWidgetEditComponent, decorators: [{\n type: Component,\n args: [{\n template: ` <div>\n <ax-select-box\n #dd\n [dataSource]=\"dataSource\"\n valueField=\"name\"\n textField=\"title\"\n [multiple]=\"true\"\n [ngModel]=\"getValue()?.selectedItems\"\n (onValueChanged)=\"handleValueChange($event)\"\n >\n </ax-select-box>\n <div class=\"ax-py-3\"></div>\n <axp-widgets-container (onContextChanged)=\"handleOnContextChange($event)\" [context]=\"context()\">\n @if (selectedItems().length > 0) {\n <ax-collapse-group look=\"fill\">\n @for (item of selectedItems(); track item.name) {\n <!-- File Types -->\n <ax-collapse [caption]=\"item.title\">\n <div class=\"ax-flex ax-flex-col ax-gap-5\">\n @if (item.meta && item.meta.length > 0) {\n <div class=\"ax-flex ax-flex-col ax-gap-2\">\n <ax-text [textContent]=\"'Global Meta Data'\" class=\"ax-font-bold ax-text-sm\"></ax-text>\n @for (metaFile of item.meta; track metaFile.name) {\n <!-- File Meta Data -->\n <ax-form-field>\n <ax-label [required]=\"filedIsRequired(metaFile)\">{{ metaFile.title }}</ax-label>\n <ng-container axp-widget-renderer [node]=\"getNode(metaFile)\" [mode]=\"'edit'\"></ng-container>\n </ax-form-field>\n }\n </div>\n }\n @if (item.extensions && item.extensions.length > 0) {\n <div class=\"ax-flex ax-flex-col ax-gap-3\">\n @for (ext of item.extensions; track ext.name) {\n <!-- Extensions -->\n @if (ext.meta && ext.meta.length > 0) {\n <ax-text [textContent]=\"ext.title\" class=\"ax-font-bold ax-text-sm\"></ax-text>\n <div class=\"ax-flex ax-flex-col ax-gap-2\">\n @for (extMeta of ext.meta; track $index) {\n <!-- Extension Meta Data -->\n <ax-form-field>\n <ax-label [required]=\"filedIsRequired(extMeta)\">{{ extMeta.title }}</ax-label>\n <ng-container\n axp-widget-renderer\n [node]=\"getNode(extMeta)\"\n [mode]=\"'edit'\"\n ></ng-container>\n </ax-form-field>\n }\n </div>\n }\n <!-- End Extension Meta Data -->\n }\n </div>\n <!-- End Extensions -->\n }\n </div>\n </ax-collapse>\n }\n <!-- End File Types -->\n </ax-collapse-group>\n }\n </axp-widgets-container>\n </div>`,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [\n AXSelectBoxModule,\n FormsModule,\n AXFormModule,\n AXLabelModule,\n AXDecoratorModule,\n AXPLayoutBuilderModule,\n AXCollapseModule\n ],\n inputs: [],\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZS10eXBlLWV4dGVuc2lvbi1lZGl0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbW9kdWxlcy9kb2N1bWVudC1tYW5hZ2VtZW50L3NyYy9saWIvZmVhdHVyZXMvZmlsZS10eXBlL3dpZGdldHMvZmlsZS10eXBlLWV4dGVuc2lvbi9maWxlLXR5cGUtZXh0ZW5zaW9uLWVkaXQuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQy9ELE9BQU8sRUFBRSxZQUFZLEVBQXVCLE1BQU0sb0JBQW9CLENBQUM7QUFDdkUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDbEUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUN6RCxPQUFPLEVBQXdCLGlCQUFpQixFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDeEYsT0FBTyxFQUFlLDBCQUEwQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDbEYsT0FBTyxFQUNMLHNCQUFzQixFQUV0Qix1QkFBdUIsR0FFeEIsTUFBTSxpQ0FBaUMsQ0FBQztBQUV6QyxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbkYsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzdDLE9BQU8sR0FBRyxNQUFNLGVBQWUsQ0FBQztBQUNoQyxPQUFPLEdBQUcsTUFBTSxlQUFlLENBQUM7Ozs7Ozs7OztBQStFaEMsTUFBTSxPQUFPLHVDQUF3QyxTQUFRLHVCQUE0QjtJQTdFekY7O1FBOEVZLG9CQUFlLEdBQUcsTUFBTSxDQUFDLDBCQUEw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LENBQUMsSUFBSSxLQUFLLFVBQVUsQ0FBQyxDQUFDO1FBQzVGLENBQUM7UUFDRCxPQUFPLEtBQUssQ0FBQztJQUNmLENBQUM7SUFFUyxtQkFBbUIsQ0FBQyxVQUFpQjtRQUM3QyxPQUFPLFVBQVUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxHQUFHLEVBQUUsRUFBRSxDQUFDLEdBQUcsQ0FBQyxJQUFJLElBQUksR0FBRyxDQUFDLElBQUksQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDLENBQUM7SUFDbkUsQ0FBQzs4R0E5R1UsdUNBQXVDO2tHQUF2Qyx1Q0FBdUMsK0ZBNUV4Qzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O1NBK0RILDJEQUdMLGlCQUFpQiwrckJBQ2pCLFdBQVcsOFZBQ1gsWUFBWSxzSUFDWixhQUFhLGdLQUNiLGlCQUFpQixxUEFDakIsc0JBQXNCLDhaQUN0QixnQkFBZ0I7OzJGQUlQLHVDQUF1QztrQkE3RW5ELFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7U0ErREg7b0JBQ1AsZUFBZSxFQUFFLHVCQUF1QixDQUFDLE1BQU07b0JBQy9DLE9BQU8sRUFBRTt3QkFDUCxpQkFBaUI7d0JBQ2pCLFdBQVc7d0JBQ1gsWUFBWTt3QkFDWixhQUFhO3dCQUNiLGlCQUFpQjt3QkFDakIsc0JBQXNCO3dCQUN0QixnQkFBZ0I7cUJBQ25CO29CQUNDLE1BQU0sRUFBRSxFQUFFO2lCQUNYIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQVhDb2xsYXBzZU1vZHVsZSB9IGZyb20gJ0BhY29yZXgvY29tcG9uZW50cy9jb2xsYXBzZSc7XG5pbXBvcnQgeyBBWERhdGFTb3VyY2UsIEFYVmFsdWVDaGFuZ2VkRXZlbnQgfSBmcm9tICdAYWNvcmV4L2Nkay9jb21tb24nO1xuaW1wb3J0IHsgQVhEZWNvcmF0b3JNb2R1bGUgfSBmcm9tICdAYWNvcmV4L2NvbXBvbmVudHMvZGVjb3JhdG9ycyc7XG5pbXBvcnQgeyBBWEZvcm1Nb2R1bGUgfSBmcm9tICdAYWNvcmV4L2NvbXBvbmVudHMvZm9ybSc7XG5pbXBvcnQgeyBBWExhYmVsTW9kdWxlIH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL2xhYmVsJztcbmltcG9ydCB7IEFYU2VsZWN0Qm94Q29tcG9uZW50LCBBWFNlbGVjdEJveE1vZHVsZSB9IGZyb20gJ0BhY29yZXgvY29tcG9uZW50cy9zZWxlY3QtYm94JztcbmltcG9ydCB7IEFYUEZpbGVUeXBlLCBBWFBGaWxlVHlwZVByb3ZpZGVyU2VydmljZSB9IGZyb20gJ0BhY29yZXgvcGxhdGZvcm0vY29tbW9uJztcbmltcG9ydCB7XG4gIEFYUExheW91dEJ1aWxkZXJNb2R1bGUsXG4gIEFYUExheW91dENvbnRleHRDaGFuZ2VFdmVudCxcbiAgQVhQVmFsdWVXaWRnZXRDb21wb25lbnQsXG4gIEFYUFdpZGdldE5vZGUsXG59IGZyb20gJ0BhY29yZXgvcGxhdGZvcm0vbGF5b3V0L2J1aWxkZXInO1xuXG5pbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBpbmplY3QsIHNpZ25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgZ2V0IGZyb20gJ2xvZGFzaC1lcy9nZXQnO1xuaW1wb3J0IHNldCBmcm9tICdsb2Rhc2gtZXMvc2V0JztcblxuQENvbXBvbmVudCh7XG4gIHRlbXBsYXRlOiBgIDxkaXY+XG4gICAgPGF4LXNlbGVjdC1ib3hcbiAgICAgICNkZFxuICAgICAgW2RhdGFTb3VyY2VdPVwiZGF0YVNvdXJjZVwiXG4gICAgICB2YWx1ZUZpZWxkPVwibmFtZVwiXG4gICAgICB0ZXh0RmllbGQ9XCJ0aXRsZVwiXG4gICAgICBbbXVsdGlwbGVdPVwidHJ1ZVwiXG4gICAgICBbbmdNb2RlbF09XCJnZXRWYWx1ZSgpPy5zZWxlY3RlZEl0ZW1zXCJcbiAgICAgIChvblZhbHVlQ2hhbmdlZCk9XCJoYW5kbGVWYWx1ZUNoYW5nZSgkZXZlbnQpXCJcbiAgICA+XG4gICAgPC9heC1zZWxlY3QtYm94PlxuICAgIDxkaXYgY2xhc3M9XCJheC1weS0zXCI+PC9kaXY+XG4gICAgPGF4cC13aWRnZXRzLWNvbnRhaW5lciAob25Db250ZXh0Q2hhbmdlZCk9XCJoYW5kbGVPbkNvbnRleHRDaGFuZ2UoJGV2ZW50KVwiIFtjb250ZXh0XT1cImNvbnRleHQoKVwiPlxuICAgICAgQGlmIChzZWxlY3RlZEl0ZW1zKCkubGVuZ3RoID4gMCkge1xuICAgICAgICA8YXgtY29sbGFwc2UtZ3JvdXAgbG9vaz1cImZpbGxcIj5cbiAgICAgICAgICBAZm9yIChpdGVtIG9mIHNlbGVjdGVkSXRlbXMoKTsgdHJhY2sgaXRlbS5uYW1lKSB7XG4gICAgICAgICAgICA8IS0tIEZpbGUgVHlwZXMgLS0+XG4gICAgICAgICAgICA8YXgtY29sbGFwc2UgW2NhcHRpb25dPVwiaXRlbS50aXRsZVwiPlxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYXgtZmxleCBheC1mbGV4LWNvbCBheC1nYXAtNVwiPlxuICAgICAgICAgICAgICAgIEBpZiAoaXRlbS5tZXRhICYmIGl0ZW0ubWV0YS5sZW5ndGggPiAwKSB7XG4gICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYXgtZmxleCBheC1mbGV4LWNvbCBheC1nYXAtMlwiPlxuICAgICAgICAgICAgICAgICAgICA8YXgtdGV4dCBbdGV4dENvbnRlbnRdPVwiJ0dsb2JhbCBNZXRhIERhdGEnXCIgY2xhc3M9XCJheC1mb250LWJvbGQgYXgtdGV4dC1zbVwiPjwvYXgtdGV4dD5cbiAgICAgICAgICAgICAgICAgICAgQGZvciAobWV0YUZpbGUgb2YgaXRlbS5tZXRhOyB0cmFjayBtZXRhRmlsZS5uYW1lKSB7XG4gICAgICAgICAgICAgICAgICAgICAgPCEtLSBGaWxlIE1ldGEgRGF0YSAtLT5cbiAgICAgICAgICAgICAgICAgICAgICA8YXgtZm9ybS1maWVsZD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxheC1sYWJlbCBbcmVxdWlyZWRdPVwiZmlsZWRJc1JlcXVpcmVkKG1ldGFGaWxlKVwiPnt7IG1ldGFGaWxlLnRpdGxlIH19PC9heC1sYWJlbD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgYXhwLXdpZGdldC1yZW5kZXJlciBbbm9kZV09XCJnZXROb2RlKG1ldGFGaWxlKVwiIFttb2RlXT1cIidlZGl0J1wiPjwvbmctY29udGFpbmVyPlxuICAgICAgICAgICAgICAgICAgICAgIDwvYXgtZm9ybS1maWVsZD5cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIEBpZiAoaXRlbS5leHRlbnNpb25zICYmIGl0ZW0uZXh0ZW5zaW9ucy5sZW5ndGggPiAwKSB7XG4gICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYXgtZmxleCBheC1mbGV4LWNvbCBheC1nYXAtM1wiPlxuICAgICAgICAgICAgICAgICAgICBAZm9yIChleHQgb2YgaXRlbS5leHRlbnNpb25zOyB0cmFjayBleHQubmFtZSkge1xuICAgICAgICAgICAgICAgICAgICAgIDwhLS0gRXh0ZW5zaW9ucyAtLT5cbiAgICAgICAgICAgICAgICAgICAgICBAaWYgKGV4dC5tZXRhICYmIGV4dC5tZXRhLmxlbmd0aCA+IDApIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIDxheC10ZXh0IFt0ZXh0Q29udGVudF09XCJleHQudGl0bGVcIiBjbGFzcz1cImF4LWZvbnQtYm9sZCBheC10ZXh0LXNtXCI+PC9heC10ZXh0PlxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImF4LWZsZXggYXgtZmxleC1jb2wgYXgtZ2FwLTJcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgQGZvciAoZXh0TWV0YSBvZiBleHQubWV0YTsgdHJhY2sgJGluZGV4KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPCEtLSBFeHRlbnNpb24gTWV0YSBEYXRhIC0tPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxheC1mb3JtLWZpZWxkPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGF4LWxhYmVsIFtyZXF1aXJlZF09XCJmaWxlZElzUmVxdWlyZWQoZXh0TWV0YSlcIj57eyBleHRNZXRhLnRpdGxlIH19PC9heC1sYWJlbD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYXhwLXdpZGdldC1yZW5kZXJlclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbm9kZV09XCJnZXROb2RlKGV4dE1ldGEpXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW21vZGVdPVwiJ2VkaXQnXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID48L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2F4LWZvcm0tZmllbGQ+XG4gICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICA8IS0tIEVuZCBFeHRlbnNpb24gTWV0YSBEYXRhIC0tPlxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgIDwhLS0gRW5kIEV4dGVuc2lvbnMgLS0+XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDwvYXgtY29sbGFwc2U+XG4gICAgICAgICAgfVxuICAgICAgICAgIDwhLS0gRW5kIEZpbGUgVHlwZXMgLS0+XG4gICAgICAgIDwvYXgtY29sbGFwc2UtZ3JvdXA+XG4gICAgICB9XG4gICAgPC9heHAtd2lkZ2V0cy1jb250YWluZXI+XG4gIDwvZGl2PmAsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBpbXBvcnRzOiBbXG4gICAgQVhTZWxlY3RCb3hNb2R1bGUsXG4gICAgRm9ybXNNb2R1bGUsXG4gICAgQVhGb3JtTW9kdWxlLFxuICAgIEFYTGFiZWxNb2R1bGUsXG4gICAgQVhEZWNvcmF0b3JNb2R1bGUsXG4gICAgQVhQTGF5b3V0QnVpbGRlck1vZHVsZSxcbiAgICBBWENvbGxhcHNlTW9kdWxlXG5dLFxuICBpbnB1dHM6IFtdLFxufSlcbmV4cG9ydCBjbGFzcyBBWE1GaWxlVHlwZUV4dGVuc2lvbldpZGdldEVkaXRDb21wb25lbnQgZXh0ZW5kcyBBWFBWYWx1ZVdpZGdldENvbXBvbmVudDxhbnk+IHtcbiAgcHJvdGVjdGVkIGZpbGVUeXBlU2VydmljZSA9IGluamVjdChBWFBGaWxlVHlwZVByb3ZpZGVyU2VydmljZSk7XG4gIHByb3RlY3RlZCBkYXRhU291cmNlID0gbmV3IEFYRGF0YVNvdXJjZTx1bmtub3duPih7XG4gICAgbG9hZDogYXN5bmMgKF8pID0+IHtcbiAgICAgIHRyeSB7XG4gICAgICAgIGNvbnN0IHJlcyA9IGF3YWl0IHRoaXMuZmlsZVR5cGVTZXJ2aWNlLml0ZW1zKCk7XG4gICAgICAgIGNvbnN0IHR5cGVzID0gcmVzXG4gICAgICAgICAgLm1hcCgoaXRlbSkgPT4ge1xuICAgICAgICAgICAgY29uc3QgeyBtZXRhLCBleHRlbnNpb25zLCAuLi5yZXN0IH0gPSBpdGVtO1xuICAgICAgICAgICAgcmV0dXJuIGV4dGVuc2lvbnMubWFwKChleHQpID0+IHtcbiAgICAgICAgICAgICAgY29uc3QgeyBtZXRhLCAuLi5leHRSZXN0IH0gPSBleHQ7XG4gICAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgICAgLi4ucmVzdCxcbiAgICAgICAgICAgICAgICAuLi5leHRSZXN0LFxuICAgICAgICAgICAgICAgIG5hbWU6IGAke2l0ZW0ubmFtZX0uJHtleHQubmFtZX1gLFxuICAgICAgICAgICAgICAgIHRpdGxlOiBgJHtpdGVtLnRpdGxlfS8ke2V4dC50aXRsZX1gLFxuICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgfSlcbiAgICAgICAgICAuZmxhdCgpO1xuXG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgaXRlbXM6IHR5cGVzLFxuICAgICAgICAgIHRvdGFsOiB0eXBlcy5sZW5ndGgsXG4gICAgICAgIH07XG4gICAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgIGNvbnNvbGUubG9nKGUpO1xuICAgICAgfVxuICAgICAgcmV0dXJuIHtcbiAgICAgICAgaXRlbXM6IFtdLFxuICAgICAgICB0b3RhbDogMCxcbiAgICAgIH07XG4gICAgfSxcbiAgICBwYWdlU2l6ZTogMTAwLFxuICB9KTtcblxuICBwdWJsaWMgc2VsZWN0ZWRJdGVtcyA9IHNpZ25hbDxBWFBGaWxlVHlwZVtdPih0aGlzLmdldFZhbHVlKCk/LnNlbGVjdGVkSXRlbXMgPz8gW10pO1xuICBwdWJsaWMgY29udGV4dCA9IHNpZ25hbDxhbnk+KHRoaXMuZ2V0VmFsdWUoKT8uY29udGV4dCA/PyB7fSk7XG5cbiAgb3ZlcnJpZGUgbmdPbkluaXQoKSB7XG4gICAgc3VwZXIubmdPbkluaXQoKTtcbiAgICB0aGlzLnNlbGVjdGVkSXRlbXMuc2V0KHRoaXMuZ2V0VmFsdWUoKT8uc2VsZWN0ZWRJdGVtcyA/PyBbXSk7XG4gICAgdGhpcy5jb250ZXh0LnNldCh0aGlzLmdldFZhbHVlKCk/LmNvbnRleHQgPz8ge30pO1xuICB9XG5cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIG91dHB1dHMoKTogc3RyaW5nW10ge1xuICAgIHJldHVybiBbJ3NlbGVjdGVkSXRlbXMnLCAnY29udGV4dCddO1xuICB9XG5cbiAgcHJvdGVjdGVkIGhhbmRsZU9uQ29udGV4dENoYW5nZShlOiBBWFBMYXlvdXRDb250ZXh0Q2hhbmdlRXZlbnQpIHtcbiAgICB0aGlzLmNvbnRleHQuc2V0KGUuZGF0YSk7XG4gICAgdGhpcy5zZXRWYWx1ZSh7IC4uLnRoaXMuZ2V0VmFsdWUoKSwgY29udGV4dDogZS5kYXRhIH0pO1xuICB9XG5cbiAgcHJvdGVjdGVkIGFzeW5jIGhhbmRsZVZhbHVlQ2hhbmdlKGU6IEFYVmFsdWVDaGFuZ2VkRXZlbnQpIHtcbiAgICBjb25zdCBzZWxlY3RJdGVtcyA9IChlLmNvbXBvbmVudCBhcyBBWFNlbGVjdEJveENvbXBvbmVudCkuc2VsZWN0ZWRJdGVtcyBhcyBBWFBGaWxlVHlwZVtdO1xuICAgIHRoaXMuc2V0VmFsdWUoeyAuLi50aGlzLmdldFZhbHVlKCksIHNlbGVjdGVkSXRlbXM6IHNlbGVjdEl0ZW1zIH0pO1xuXG4gICAgY29uc3QgcmVzdWx0OiB7IFtrZXk6IHN0cmluZ106IEFYUEZpbGVUeXBlIH0gPSB7fTtcbiAgICBmb3IgKGNvbnN0IGl0ZW0gb2Ygc2VsZWN0SXRlbXMpIHtcbiAgICAgIGNvbnN0IHR5cGUgPSBpdGVtLm5hbWUuc3BsaXQoJy4nKVswXTtcbiAgICAgIGNvbnN0IGV4dCA9IGl0ZW0ubmFtZS5zcGxpdCgnLicpWzFdO1xuICAgICAgdmFyIGZpbGVUeXBlID0gYXdhaXQgdGhpcy5maWxlVHlwZVNlcnZpY2UuZ2V0KHR5cGUpO1xuICAgICAgaWYgKGZpbGVUeXBlICE9IHVuZGVmaW5lZCkge1xuICAgICAgICBjb25zdCBleHRlbnNpb24gPSBmaWxlVHlwZS5leHRlbnNpb25zLmZpbmQoKGV4dGVuc2lvbikgPT4gZXh0ZW5zaW9uLm5hbWUgPT0gZXh0KSB8fCB7IG5hbWU6IGV4dCwgdGl0bGU6ICcnIH07XG4gICAgICAgIGlmIChleHRlbnNpb24ubWV0YSkge1xuICAgICAgICAgIGZvciAoY29uc3QgbWV0YSBvZiBleHRlbnNpb24ubWV0YSkge1xuICAgICAgICAgICAgaWYgKCFnZXQobWV0YSwgJ19fbm9kZV9fJykpIHtcbiAgICAgICAgICAgICAgc2V0KG1ldGEsICdfX25vZGVfXycsIHR5cGVvZiBtZXRhLmludGVyZmFjZSA9PSAnZnVuY3Rpb24nID8gYXdhaXQgbWV0YS5pbnRlcmZhY2UoKSA6IG1ldGEuaW50ZXJmYWNlKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgaWYgKGZpbGVUeXBlLm1ldGEpIHtcbiAgICAgICAgICBmb3IgKGNvbnN0IG1ldGEgb2YgZmlsZVR5cGUubWV0YSkge1xuICAgICAgICAgICAgaWYgKCFnZXQobWV0YSwgJ19fbm9kZV9fJykpIHtcbiAgICAgICAgICAgICAgc2V0KG1ldGEsICdfX25vZGVfXycsIHR5cGVvZiBtZXRhLmludGVyZmFjZSA9PSAnZnVuY3Rpb24nID8gYXdhaXQgbWV0YS5pbnRlcmZhY2UoKSA6IG1ldGEuaW50ZXJmYWNlKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgaWYgKHJlc3VsdFt0eXBlXSkge1xuICAgICAgICAgIHJlc3VsdFt0eXBlXSA9IHtcbiAgICAgICAgICAgIC4uLmZpbGVUeXBlLFxuICAgICAgICAgICAgZXh0ZW5zaW9uczogWy4uLnJlc3VsdFt0eXBlXS5leHRlbnNpb25zLCBleHRlbnNpb25dLFxuICAgICAgICAgIH07XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgcmVzdWx0W3R5cGVdID0ge1xuICAgICAgICAgICAgLi4uZmlsZVR5cGUsXG4gICAgICAgICAgICBleHRlbnNpb25zOiBbZXh0ZW5zaW9uXSxcbiAgICAgICAgICB9O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgdGhpcy5zZWxlY3RlZEl0ZW1zLnNldChPYmplY3QudmFsdWVzKHJlc3VsdCkpO1xuICB9XG5cbiAgcHJvdGVjdGVkIGdldE5vZGUobWV0YTogYW55KTogQVhQV2lkZ2V0Tm9kZSB7XG4gICAgcmV0dXJuIGdldChtZXRhLCAnX19ub2RlX18nKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBmaWxlZElzUmVxdWlyZWQobWV0YTogYW55KTogYm9vbGVhbiB7XG4gICAgY29uc3Qgbm9kZSA9IGdldChtZXRhLCAnX19ub2RlX18nKTtcbiAgICBpZiAobm9kZSAmJiBub2RlLm9wdGlvbnMgJiYgbm9kZS5vcHRpb25zLnZhbGlkYXRpb25zKSB7XG4gICAgICByZXR1cm4gbm9kZS5vcHRpb25zLnZhbGlkYXRpb25zLnNvbWUoKHZhbGlkYXRpb246IGFueSkgPT4gdmFsaWRhdGlvbi5ydWxlID09PSAncmVxdWlyZWQnKTtcbiAgICB9XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG5cbiAgcHJvdGVjdGVkIGhhc01ldGFJbkV4dGVuc2lvbnMoZXh0ZW5zaW9uczogYW55W10pOiBib29sZWFuIHtcbiAgICByZXR1cm4gZXh0ZW5zaW9ucy5zb21lKChleHQpID0+IGV4dC5tZXRhICYmIGV4dC5tZXRhLmxlbmd0aCA+IDApO1xuICB9XG59XG4iXX0=","import { AXPValueWidgetComponent } from '@acorex/platform/layout/builder';\nimport { ChangeDetectionStrategy, Component } from '@angular/core';\nimport * as i0 from \"@angular/core\";\nexport class AXMFileTypeExtensionWidgetViewComponent extends AXPValueWidgetComponent {\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: AXMFileTypeExtensionWidgetViewComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }\n static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"14.0.0\", version: \"20.1.8\", type: AXMFileTypeExtensionWidgetViewComponent, isStandalone: true, selector: \"ng-component\", inputs: { rawValue: \"rawValue\" }, usesInheritance: true, ngImport: i0, template: ``, isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: AXMFileTypeExtensionWidgetViewComponent, decorators: [{\n type: Component,\n args: [{\n template: ``,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [],\n inputs: ['rawValue'],\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZS10eXBlLWV4dGVuc2lvbi12aWV3LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbW9kdWxlcy9kb2N1bWVudC1tYW5hZ2VtZW50L3NyYy9saWIvZmVhdHVyZXMvZmlsZS10eXBlL3dpZGdldHMvZmlsZS10eXBlLWV4dGVuc2lvbi9maWxlLXR5cGUtZXh0ZW5zaW9uLXZpZXcuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBRTFFLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBUW5FLE1BQU0sT0FBTyx1Q0FBd0MsU0FBUSx1QkFBNEI7OEdBQTVFLHVDQUF1QztrR0FBdkMsdUNBQXVDLGlJQUx4QyxFQUFFOzsyRkFLRCx1Q0FBdUM7a0JBTm5ELFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLEVBQUU7b0JBQ1osZUFBZSxFQUFFLHVCQUF1QixDQUFDLE1BQU07b0JBQy9DLE9BQU8sRUFBRSxFQUFFO29CQUNYLE1BQU0sRUFBRSxDQUFDLFVBQVUsQ0FBQztpQkFDckIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBWFBWYWx1ZVdpZGdldENvbXBvbmVudCB9IGZyb20gJ0BhY29yZXgvcGxhdGZvcm0vbGF5b3V0L2J1aWxkZXInO1xuXG5pbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBDb21wb25lbnQoe1xuICB0ZW1wbGF0ZTogYGAsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBpbXBvcnRzOiBbXSxcbiAgaW5wdXRzOiBbJ3Jhd1ZhbHVlJ10sXG59KVxuZXhwb3J0IGNsYXNzIEFYTUZpbGVUeXBlRXh0ZW5zaW9uV2lkZ2V0Vmlld0NvbXBvbmVudCBleHRlbmRzIEFYUFZhbHVlV2lkZ2V0Q29tcG9uZW50PGFueT4geyB9XG4iXX0=","import { AXP_WIDGETS_ADVANCE_CATEGORY } from '@acorex/platform/layout/builder';\nimport { AXP_DATA_PATH_PROPERTY, AXP_NAME_PROPERTY } from '@acorex/platform/widgets';\nexport const AXmFileTypeExtensionWidget = {\n name: 'file-type-extension',\n title: 'File Type Extension',\n description: 'Uploads and manages files',\n icon: 'fa-light fa-files',\n categories: AXP_WIDGETS_ADVANCE_CATEGORY,\n type: 'editor',\n properties: [AXP_NAME_PROPERTY, AXP_DATA_PATH_PROPERTY],\n components: {\n view: {\n component: () => import('./file-type-extension-view.component').then((c) => c.AXMFileTypeExtensionWidgetViewComponent),\n },\n edit: {\n component: () => import('./file-type-extension-edit.component').then((c) => c.AXMFileTypeExtensionWidgetEditComponent),\n },\n // filter: {\n // component: () => import('./file-type-extension-filter.component').then((c) => c.AXPFileBoxWidgetFilterComponent),\n // },\n column: {\n component: () => import('./file-type-extension-column.component').then((c) => c.AXMFileTypeExtensionWidgetColumnComponent),\n },\n // print: {\n // component: () => import('./file-type-extension-print.component').then((c) => c.AXPFileBoxWidgetPrintComponent),\n // },\n designer: {\n component: () => import('./file-type-extension-edit.component').then((c) => c.AXMFileTypeExtensionWidgetEditComponent),\n },\n },\n};\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZS10eXBlLWV4dGVuc2lvbi13aWRnZXQuY29uZmlnLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tb2R1bGVzL2RvY3VtZW50LW1hbmFnZW1lbnQvc3JjL2xpYi9mZWF0dXJlcy9maWxlLXR5cGUvd2lkZ2V0cy9maWxlLXR5cGUtZXh0ZW5zaW9uL2ZpbGUtdHlwZS1leHRlbnNpb24td2lkZ2V0LmNvbmZpZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsNEJBQTRCLEVBQW1CLE1BQU0saUNBQWlDLENBQUM7QUFDaEcsT0FBTyxFQUFFLHNCQUFzQixFQUFFLGlCQUFpQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFFckYsTUFBTSxDQUFDLE1BQU0sMEJBQTBCLEdBQW9CO0lBQ3pELElBQUksRUFBRSxxQkFBcUI7SUFDM0IsS0FBSyxFQUFFLHFCQUFxQjtJQUM1QixXQUFXLEVBQUUsMkJBQTJCO0lBQ3hDLElBQUksRUFBRSxtQkFBbUI7SUFDekIsVUFBVSxFQUFFLDRCQUE0QjtJQUN4QyxJQUFJLEVBQUUsUUFBUTtJQUNkLFVBQVUsRUFBRSxDQUFDLGlCQUFpQixFQUFFLHNCQUFzQixDQUFDO0lBQ3ZELFVBQVUsRUFBRTtRQUNWLElBQUksRUFBRTtZQUNKLFNBQVMsRUFBRSxHQUFHLEVBQUUsQ0FDZCxNQUFNLENBQUMsc0NBQXNDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyx1Q0FBdUMsQ0FBQztTQUN4RztRQUNELElBQUksRUFBRTtZQUNKLFNBQVMsRUFBRSxHQUFHLEVBQUUsQ0FDZCxNQUFNLENBQUMsc0NBQXNDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyx1Q0FBdUMsQ0FBQztTQUN4RztRQUNELFlBQVk7UUFDWixzSEFBc0g7UUFDdEgsS0FBSztRQUNMLE1BQU0sRUFBRTtZQUNOLFNBQVMsRUFBRSxHQUFHLEVBQUUsQ0FDZCxNQUFNLENBQUMsd0NBQXdDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyx5Q0FBeUMsQ0FBQztTQUM1RztRQUNELFdBQVc7UUFDWCxvSEFBb0g7UUFDcEgsS0FBSztRQUNMLFFBQVEsRUFBRTtZQUNSLFNBQVMsRUFBRSxHQUFHLEVBQUUsQ0FDZCxNQUFNLENBQUMsc0NBQXNDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyx1Q0FBdUMsQ0FBQztTQUN4RztLQUNGO0NBQ0YsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFYUF9XSURHRVRTX0FEVkFOQ0VfQ0FURUdPUlksIEFYUFdpZGdldENvbmZpZyB9IGZyb20gJ0BhY29yZXgvcGxhdGZvcm0vbGF5b3V0L2J1aWxkZXInO1xuaW1wb3J0IHsgQVhQX0RBVEFfUEFUSF9QUk9QRVJUWSwgQVhQX05BTUVfUFJPUEVSVFkgfSBmcm9tICdAYWNvcmV4L3BsYXRmb3JtL3dpZGdldHMnO1xuXG5leHBvcnQgY29uc3QgQVhtRmlsZVR5cGVFeHRlbnNpb25XaWRnZXQ6IEFYUFdpZGdldENvbmZpZyA9IHtcbiAgbmFtZTogJ2ZpbGUtdHlwZS1leHRlbnNpb24nLFxuICB0aXRsZTogJ0ZpbGUgVHlwZSBFeHRlbnNpb24nLFxuICBkZXNjcmlwdGlvbjogJ1VwbG9hZHMgYW5kIG1hbmFnZXMgZmlsZXMnLFxuICBpY29uOiAnZmEtbGlnaHQgZmEtZmlsZXMnLFxuICBjYXRlZ29yaWVzOiBBWFBfV0lER0VUU19BRFZBTkNFX0NBVEVHT1JZLFxuICB0eXBlOiAnZWRpdG9yJyxcbiAgcHJvcGVydGllczogW0FYUF9OQU1FX1BST1BFUlRZLCBBWFBfREFUQV9QQVRIX1BST1BFUlRZXSxcbiAgY29tcG9uZW50czoge1xuICAgIHZpZXc6IHtcbiAgICAgIGNvbXBvbmVudDogKCkgPT5cbiAgICAgICAgaW1wb3J0KCcuL2ZpbGUtdHlwZS1leHRlbnNpb24tdmlldy5jb21wb25lbnQnKS50aGVuKChjKSA9PiBjLkFYTUZpbGVUeXBlRXh0ZW5zaW9uV2lkZ2V0Vmlld0NvbXBvbmVudCksXG4gICAgfSxcbiAgICBlZGl0OiB7XG4gICAgICBjb21wb25lbnQ6ICgpID0+XG4gICAgICAgIGltcG9ydCgnLi9maWxlLXR5cGUtZXh0ZW5zaW9uLWVkaXQuY29tcG9uZW50JykudGhlbigoYykgPT4gYy5BWE1GaWxlVHlwZUV4dGVuc2lvbldpZGdldEVkaXRDb21wb25lbnQpLFxuICAgIH0sXG4gICAgLy8gZmlsdGVyOiB7XG4gICAgLy8gICBjb21wb25lbnQ6ICgpID0+IGltcG9ydCgnLi9maWxlLXR5cGUtZXh0ZW5zaW9uLWZpbHRlci5jb21wb25lbnQnKS50aGVuKChjKSA9PiBjLkFYUEZpbGVCb3hXaWRnZXRGaWx0ZXJDb21wb25lbnQpLFxuICAgIC8vIH0sXG4gICAgY29sdW1uOiB7XG4gICAgICBjb21wb25lbnQ6ICgpID0+XG4gICAgICAgIGltcG9ydCgnLi9maWxlLXR5cGUtZXh0ZW5zaW9uLWNvbHVtbi5jb21wb25lbnQnKS50aGVuKChjKSA9PiBjLkFYTUZpbGVUeXBlRXh0ZW5zaW9uV2lkZ2V0Q29sdW1uQ29tcG9uZW50KSxcbiAgICB9LFxuICAgIC8vIHByaW50OiB7XG4gICAgLy8gICBjb21wb25lbnQ6ICgpID0+IGltcG9ydCgnLi9maWxlLXR5cGUtZXh0ZW5zaW9uLXByaW50LmNvbXBvbmVudCcpLnRoZW4oKGMpID0+IGMuQVhQRmlsZUJveFdpZGdldFByaW50Q29tcG9uZW50KSxcbiAgICAvLyB9LFxuICAgIGRlc2lnbmVyOiB7XG4gICAgICBjb21wb25lbnQ6ICgpID0+XG4gICAgICAgIGltcG9ydCgnLi9maWxlLXR5cGUtZXh0ZW5zaW9uLWVkaXQuY29tcG9uZW50JykudGhlbigoYykgPT4gYy5BWE1GaWxlVHlwZUV4dGVuc2lvbldpZGdldEVkaXRDb21wb25lbnQpLFxuICAgIH0sXG4gIH0sXG59O1xuXG5kZWNsYXJlIG1vZHVsZSAnQGFjb3JleC9wbGF0Zm9ybS9sYXlvdXQvYnVpbGRlcicge1xuICBpbnRlcmZhY2UgQVhQV2lkZ2V0VHlwZXNNYXAge1xuICAgIGZpbGVUeXBlRXh0ZW5zaW9uOiAnZmlsZS10eXBlLWV4dGVuc2lvbic7XG4gIH1cbn1cbiJdfQ==","import { AXP_FILE_TYPE_INFO_PROVIDER } from '@acorex/platform/common';\nimport { NgModule } from '@angular/core';\nimport { AXMArchiveFileTypeProvider, AXMAudioFileTypeProvider, AXMCodeFileTypeProvider, AXMDocumentFileTypeProvider, AXMImageFileTypeProvider, AXMVideoFileTypeProvider, } from './providers';\nimport * as i0 from \"@angular/core\";\nexport class AXMFileTypeModule {\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: AXMFileTypeModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }\n static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: \"14.0.0\", version: \"20.1.8\", ngImport: i0, type: AXMFileTypeModule }); }\n static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: AXMFileTypeModule, providers: [\n {\n provide: AXP_FILE_TYPE_INFO_PROVIDER,\n useClass: AXMImageFileTypeProvider,\n multi: true,\n },\n {\n provide: AXP_FILE_TYPE_INFO_PROVIDER,\n useClass: AXMVideoFileTypeProvider,\n multi: true,\n },\n {\n provide: AXP_FILE_TYPE_INFO_PROVIDER,\n useClass: AXMDocumentFileTypeProvider,\n multi: true,\n },\n {\n provide: AXP_FILE_TYPE_INFO_PROVIDER,\n useClass: AXMAudioFileTypeProvider,\n multi: true,\n },\n {\n provide: AXP_FILE_TYPE_INFO_PROVIDER,\n useClass: AXMCodeFileTypeProvider,\n multi: true,\n },\n {\n provide: AXP_FILE_TYPE_INFO_PROVIDER,\n useClass: AXMArchiveFileTypeProvider,\n multi: true,\n },\n ] }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: AXMFileTypeModule, decorators: [{\n type: NgModule,\n args: [{\n providers: [\n {\n provide: AXP_FILE_TYPE_INFO_PROVIDER,\n useClass: AXMImageFileTypeProvider,\n multi: true,\n },\n {\n provide: AXP_FILE_TYPE_INFO_PROVIDER,\n useClass: AXMVideoFileTypeProvider,\n multi: true,\n },\n {\n provide: AXP_FILE_TYPE_INFO_PROVIDER,\n useClass: AXMDocumentFileTypeProvider,\n multi: true,\n },\n {\n provide: AXP_FILE_TYPE_INFO_PROVIDER,\n useClass: AXMAudioFileTypeProvider,\n multi: true,\n },\n {\n provide: AXP_FILE_TYPE_INFO_PROVIDER,\n useClass: AXMCodeFileTypeProvider,\n multi: true,\n },\n {\n provide: AXP_FILE_TYPE_INFO_PROVIDER,\n useClass: AXMArchiveFileTypeProvider,\n multi: true,\n },\n ],\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZS10eXBlLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbW9kdWxlcy9kb2N1bWVudC1tYW5hZ2VtZW50L3NyYy9saWIvZmVhdHVyZXMvZmlsZS10eXBlL2ZpbGUtdHlwZS5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDdEUsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQ0gsMEJBQTBCLEVBQzFCLHdCQUF3QixFQUN4Qix1QkFBdUIsRUFDdkIsMkJBQTJCLEVBQzNCLHdCQUF3QixFQUN4Qix3QkFBd0IsR0FDM0IsTUFBTSxhQUFhLENBQUM7O0FBb0NyQixNQUFNLE9BQU8saUJBQWlCOzhHQUFqQixpQkFBaUI7K0dBQWpCLGlCQUFpQjsrR0FBakIsaUJBQWlCLGFBakNmO1lBQ1A7Z0JBQ0ksT0FBTyxFQUFFLDJCQUEyQjtnQkFDcEMsUUFBUSxFQUFFLHdCQUF3QjtnQkFDbEMsS0FBSyxFQUFFLElBQUk7YUFDZDtZQUNEO2dCQUNJLE9BQU8sRUFBRSwyQkFBMkI7Z0JBQ3BDLFFBQVEsRUFBRSx3QkFBd0I7Z0JBQ2xDLEtBQUssRUFBRSxJQUFJO2FBQ2Q7WUFDRDtnQkFDSSxPQUFPLEVBQUUsMkJBQTJCO2dCQUNwQyxRQUFRLEVBQUUsMkJBQTJCO2dCQUNyQyxLQUFLLEVBQUUsSUFBSTthQUNkO1lBQ0Q7Z0JBQ0ksT0FBTyxFQUFFLDJCQUEyQjtnQkFDcEMsUUFBUSxFQUFFLHdCQUF3QjtnQkFDbEMsS0FBSyxFQUFFLElBQUk7YUFDZDtZQUNEO2dCQUNJLE9BQU8sRUFBRSwyQkFBMkI7Z0JBQ3BDLFFBQVEsRUFBRSx1QkFBdUI7Z0JBQ2pDLEtBQUssRUFBRSxJQUFJO2FBQ2Q7WUFDRDtnQkFDSSxPQUFPLEVBQUUsMkJBQTJCO2dCQUNwQyxRQUFRLEVBQUUsMEJBQTBCO2dCQUNwQyxLQUFLLEVBQUUsSUFBSTthQUNkO1NBQ0o7OzJGQUVRLGlCQUFpQjtrQkFsQzdCLFFBQVE7bUJBQUM7b0JBQ04sU0FBUyxFQUFFO3dCQUNQOzRCQUNJLE9BQU8sRUFBRSwyQkFBMkI7NEJBQ3BDLFFBQVEsRUFBRSx3QkFBd0I7NEJBQ2xDLEtBQUssRUFBRSxJQUFJO3lCQUNkO3dCQUNEOzRCQUNJLE9BQU8sRUFBRSwyQkFBMkI7NEJBQ3BDLFFBQVEsRUFBRSx3QkFBd0I7NEJBQ2xDLEtBQUssRUFBRSxJQUFJO3lCQUNkO3dCQUNEOzRCQUNJLE9BQU8sRUFBRSwyQkFBMkI7NEJBQ3BDLFFBQVEsRUFBRSwyQkFBMkI7NEJBQ3JDLEtBQUssRUFBRSxJQUFJO3lCQUNkO3dCQUNEOzRCQUNJLE9BQU8sRUFBRSwyQkFBMkI7NEJBQ3BDLFFBQVEsRUFBRSx3QkFBd0I7NEJBQ2xDLEtBQUssRUFBRSxJQUFJO3lCQUNkO3dCQUNEOzRCQUNJLE9BQU8sRUFBRSwyQkFBMkI7NEJBQ3BDLFFBQVEsRUFBRSx1QkFBdUI7NEJBQ2pDLEtBQUssRUFBRSxJQUFJO3lCQUNkO3dCQUNEOzRCQUNJLE9BQU8sRUFBRSwyQkFBMkI7NEJBQ3BDLFFBQVEsRUFBRSwwQkFBMEI7NEJBQ3BDLEtBQUssRUFBRSxJQUFJO3lCQUNkO3FCQUNKO2lCQUNKIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQVhQX0ZJTEVfVFlQRV9JTkZPX1BST1ZJREVSIH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9jb21tb24nO1xuaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gICAgQVhNQXJjaGl2ZUZpbGVUeXBlUHJvdmlkZXIsXG4gICAgQVhNQXVkaW9GaWxlVHlwZVByb3ZpZGVyLFxuICAgIEFYTUNvZGVGaWxlVHlwZVByb3ZpZGVyLFxuICAgIEFYTURvY3VtZW50RmlsZVR5cGVQcm92aWRlcixcbiAgICBBWE1JbWFnZUZpbGVUeXBlUHJvdmlkZXIsXG4gICAgQVhNVmlkZW9GaWxlVHlwZVByb3ZpZGVyLFxufSBmcm9tICcuL3Byb3ZpZGVycyc7XG5cbkBOZ01vZHVsZSh7XG4gICAgcHJvdmlkZXJzOiBbXG4gICAgICAgIHtcbiAgICAgICAgICAgIHByb3ZpZGU6IEFYUF9GSUxFX1RZUEVfSU5GT19QUk9WSURFUixcbiAgICAgICAgICAgIHVzZUNsYXNzOiBBWE1JbWFnZUZpbGVUeXBlUHJvdmlkZXIsXG4gICAgICAgICAgICBtdWx0aTogdHJ1ZSxcbiAgICAgICAgfSxcbiAgICAgICAge1xuICAgICAgICAgICAgcHJvdmlkZTogQVhQX0ZJTEVfVFlQRV9JTkZPX1BST1ZJREVSLFxuICAgICAgICAgICAgdXNlQ2xhc3M6IEFYTVZpZGVvRmlsZVR5cGVQcm92aWRlcixcbiAgICAgICAgICAgIG11bHRpOiB0cnVlLFxuICAgICAgICB9LFxuICAgICAgICB7XG4gICAgICAgICAgICBwcm92aWRlOiBBWFBfRklMRV9UWVBFX0lORk9fUFJPVklERVIsXG4gICAgICAgICAgICB1c2VDbGFzczogQVhNRG9jdW1lbnRGaWxlVHlwZVByb3ZpZGVyLFxuICAgICAgICAgICAgbXVsdGk6IHRydWUsXG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICAgIHByb3ZpZGU6IEFYUF9GSUxFX1RZUEVfSU5GT19QUk9WSURFUixcbiAgICAgICAgICAgIHVzZUNsYXNzOiBBWE1BdWRpb0ZpbGVUeXBlUHJvdmlkZXIsXG4gICAgICAgICAgICBtdWx0aTogdHJ1ZSxcbiAgICAgICAgfSxcbiAgICAgICAge1xuICAgICAgICAgICAgcHJvdmlkZTogQVhQX0ZJTEVfVFlQRV9JTkZPX1BST1ZJREVSLFxuICAgICAgICAgICAgdXNlQ2xhc3M6IEFYTUNvZGVGaWxlVHlwZVByb3ZpZGVyLFxuICAgICAgICAgICAgbXVsdGk6IHRydWUsXG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICAgIHByb3ZpZGU6IEFYUF9GSUxFX1RZUEVfSU5GT19QUk9WSURFUixcbiAgICAgICAgICAgIHVzZUNsYXNzOiBBWE1BcmNoaXZlRmlsZVR5cGVQcm92aWRlcixcbiAgICAgICAgICAgIG11bHRpOiB0cnVlLFxuICAgICAgICB9LFxuICAgIF0sXG59KVxuZXhwb3J0IGNsYXNzIEFYTUZpbGVUeXBlTW9kdWxlIHsgfSAiXX0=","import { AXPopupService } from '@acorex/components/popup';\nimport { AXUploaderService } from '@acorex/components/uploader';\nimport { AXPWorkflowAction } from '@acorex/platform/workflow';\nimport { inject } from '@angular/core';\nimport { AXMDocumentTypeService } from '../../../entities';\nexport class AXMCheckDocumentTypeWorkflowAction extends AXPWorkflowAction {\n async execute(context) {\n const documentType = context.getVariable('documentType');\n if (documentType) {\n context.setOutput('need-choose-document-type', false);\n }\n else {\n context.setOutput('need-choose-document-type', true);\n }\n }\n}\nexport class AXMChooseDocumentTypeWorkflowAction extends AXPWorkflowAction {\n constructor() {\n super(...arguments);\n this.popupService = inject(AXPopupService);\n }\n async execute(context) {\n const comp = (await import('../../shared/components')).AXMDocumentTypeChooseFileComponent;\n const result = await this.popupService.open(comp);\n if (result.data != null && result.data.documentTypeId != null) {\n context.setVariable('documentTypeId', result.data.documentTypeId);\n context.setOutput('isCanceled', false);\n }\n else {\n context.setOutput('isCanceled', true);\n }\n }\n}\nexport class AXMChooseFileWorkflowAction extends AXPWorkflowAction {\n constructor() {\n super(...arguments);\n this.documentTypeService = inject(AXMDocumentTypeService);\n this.uploadService = inject(AXUploaderService);\n }\n async execute(context) {\n var doc = context.getVariable('documentType');\n if (!doc) {\n const docId = context.getVariable('documentTypeId');\n doc = await this.documentTypeService.getOne(docId);\n }\n this.uploadService.browse({\n //accept: doc.type,\n multiple: false,\n });\n }\n}\nexport const AXMUploadWorkflow = {\n startStepId: 'check-document-type',\n steps: {\n 'check-document-type': {\n action: 'AXMCheckDocumentTypeWorkflowAction',\n nextSteps: [\n {\n conditions: [{ type: 'SINGLE', expression: 'context.getOutput(\"need-choose-document-type\") == true' }],\n nextStepId: 'choose-document-type',\n },\n ],\n },\n 'choose-document-type': {\n action: 'AXMChooseDocumentTypeWorkflowAction',\n nextSteps: [\n {\n conditions: [{ type: 'SINGLE', expression: 'context.getOutput(\"isCanceled\") == false' }],\n nextStepId: 'file-browser',\n },\n ],\n },\n 'file-browser': {\n action: 'AXMChooseFileWorkflowAction',\n nextSteps: [\n {\n conditions: [],\n nextStepId: 'dispatch-event',\n },\n ],\n },\n },\n};\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXBsb2FkLndvcmtmbG93LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tb2R1bGVzL2RvY3VtZW50LW1hbmFnZW1lbnQvc3JjL2xpYi9mZWF0dXJlcy93b3JrZmxvdy91cGxvYWQvdXBsb2FkLndvcmtmbG93LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMxRCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUNoRSxPQUFPLEVBQWUsaUJBQWlCLEVBQXNCLE1BQU0sMkJBQTJCLENBQUM7QUFDL0YsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN2QyxPQUFPLEVBQWdELHNCQUFzQixFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDekcsTUFBTSxPQUFPLGtDQUFtQyxTQUFRLGlCQUFpQjtJQUM5RCxLQUFLLENBQUMsT0FBTyxDQUFDLE9BQTJCO1FBQ2hELE1BQU0sWUFBWSxHQUFHLE9BQU8sQ0FBQyxXQUFXLENBQUMsY0FBYyxDQUFDLENBQUM7UUFDekQsSUFBSSxZQUFZLEVBQUUsQ0FBQztZQUNqQixPQUFPLENBQUMsU0FBUyxDQUFDLDJCQUEyQixFQUFFLEtBQUssQ0FBQyxDQUFDO1FBQ3hELENBQUM7YUFBTSxDQUFDO1lBQ04sT0FBTyxDQUFDLFNBQVMsQ0FBQywyQkFBMkIsRUFBRSxJQUFJLENBQUMsQ0FBQztRQUN2RCxDQUFDO0lBQ0gsQ0FBQztDQUNGO0FBRUQsTUFBTSxPQUFPLG1DQUFvQyxTQUFRLGlCQUFpQjtJQUExRTs7UUFDRSxpQkFBWSxHQUFHLE1BQU0sQ0FBQyxjQUFjLENBQUMsQ0FBQztJQVl4QyxDQUFDO0lBVlUsS0FBSyxDQUFDLE9BQU8sQ0FBQyxPQUEyQjtRQUNoRCxNQUFNLElBQUksR0FBRyxDQUFDLE1BQU0sTUFBTSxDQUFDLHlCQUF5QixDQUFDLENBQUMsQ0FBQyxrQ0FBa0MsQ0FBQztRQUMxRixNQUFNLE1BQU0sR0FBRyxNQUFNLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ2xELElBQUksTUFBTSxDQUFDLElBQUksSUFBSSxJQUFJLElBQUksTUFBTSxDQUFDLElBQUksQ0FBQyxjQUFjLElBQUksSUFBSSxFQUFFLENBQUM7WUFDOUQsT0FBTyxDQUFDLFdBQVcsQ0FBQyxnQkFBZ0IsRUFBRSxNQUFNLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxDQUFDO1lBQ2xFLE9BQU8sQ0FBQyxTQUFTLENBQUMsWUFBWSxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBQ3pDLENBQUM7YUFBTSxDQUFDO1lBQ04sT0FBTyxDQUFDLFNBQVMsQ0FBQyxZQUFZLEVBQUUsSUFBSSxDQUFDLENBQUM7UUFDeEMsQ0FBQztJQUNILENBQUM7Q0FDRjtBQUVELE1BQU0sT0FBTywyQkFBNEIsU0FBUSxpQkFBaUI7SUFBbEU7O1FBQ0Usd0JBQW1CLEdBQUcsTUFBTSxDQUFDLHNCQUFzQixDQUFDLENBQUM7UUFDckQsa0JBQWEsR0FBRyxNQUFNLENBQUMsaUJBQWlCLENBQUMsQ0FBQztJQWM1QyxDQUFDO0lBWlUsS0FBSyxDQUFDLE9BQU8sQ0FBQyxPQUEyQjtRQUNoRCxJQUFJLEdBQUcsR0FBaUQsT0FBTyxDQUFDLFdBQVcsQ0FBQyxjQUFjLENBQUMsQ0FBQztRQUM1RixJQUFJLENBQUMsR0FBRyxFQUFFLENBQUM7WUFDVCxNQUFNLEtBQUssR0FBRyxPQUFPLENBQUMsV0FBVyxDQUFDLGdCQUFnQixDQUFDLENBQUM7WUFDcEQsR0FBRyxHQUFHLE1BQU0sSUFBSSxDQUFDLG1CQUFtQixDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNyRCxDQUFDO1FBRUQsSUFBSSxDQUFDLGFBQWEsQ0FBQyxNQUFNLENBQUM7WUFDeEIsbUJBQW1CO1lBQ25CLFFBQVEsRUFBRSxLQUFLO1NBQ2hCLENBQUMsQ0FBQztJQUNMLENBQUM7Q0FDRjtBQUVELE1BQU0sQ0FBQyxNQUFNLGlCQUFpQixHQUFnQjtJQUM1QyxXQUFXLEVBQUUscUJBQXFCO0lBQ2xDLEtBQUssRUFBRTtRQUNMLHFCQUFxQixFQUFFO1lBQ3JCLE1BQU0sRUFBRSxvQ0FBb0M7WUFDNUMsU0FBUyxFQUFFO2dCQUNUO29CQUNFLFVBQVUsRUFBRSxDQUFDLEVBQUUsSUFBSSxFQUFFLFFBQVEsRUFBRSxVQUFVLEVBQUUsd0RBQXdELEVBQUUsQ0FBQztvQkFDdEcsVUFBVSxFQUFFLHNCQUFzQjtpQkFDbkM7YUFDRjtTQUNGO1FBQ0Qsc0JBQXNCLEVBQUU7WUFDdEIsTUFBTSxFQUFFLHFDQUFxQztZQUM3QyxTQUFTLEVBQUU7Z0JBQ1Q7b0JBQ0UsVUFBVSxFQUFFLENBQUMsRUFBRSxJQUFJLEVBQUUsUUFBUSxFQUFFLFVBQVUsRUFBRSwwQ0FBMEMsRUFBRSxDQUFDO29CQUN4RixVQUFVLEVBQUUsY0FBYztpQkFDM0I7YUFDRjtTQUNGO1FBQ0QsY0FBYyxFQUFFO1lBQ2QsTUFBTSxFQUFFLDZCQUE2QjtZQUNyQyxTQUFTLEVBQUU7Z0JBQ1Q7b0JBQ0UsVUFBVSxFQUFFLEVBQUU7b0JBQ2QsVUFBVSxFQUFFLGdCQUFnQjtpQkFDN0I7YUFDRjtTQUNGO0tBQ0Y7Q0FDRixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQVhQb3B1cFNlcnZpY2UgfSBmcm9tICdAYWNvcmV4L2NvbXBvbmVudHMvcG9wdXAnO1xuaW1wb3J0IHsgQVhVcGxvYWRlclNlcnZpY2UgfSBmcm9tICdAYWNvcmV4L2NvbXBvbmVudHMvdXBsb2FkZXInO1xuaW1wb3J0IHsgQVhQV29ya2Zsb3csIEFYUFdvcmtmbG93QWN0aW9uLCBBWFBXb3JrZmxvd0NvbnRleHQgfSBmcm9tICdAYWNvcmV4L3BsYXRmb3JtL3dvcmtmbG93JztcbmltcG9ydCB7IGluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQVhNRG9jdW1lbnRNYW5hZ2VtZW50RG9jdW1lbnRUeXBlRW50aXR5TW9kZWwsIEFYTURvY3VtZW50VHlwZVNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9lbnRpdGllcyc7XG5leHBvcnQgY2xhc3MgQVhNQ2hlY2tEb2N1bWVudFR5cGVXb3JrZmxvd0FjdGlvbiBleHRlbmRzIEFYUFdvcmtmbG93QWN0aW9uIHtcbiAgb3ZlcnJpZGUgYXN5bmMgZXhlY3V0ZShjb250ZXh0OiBBWFBXb3JrZmxvd0NvbnRleHQpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICBjb25zdCBkb2N1bWVudFR5cGUgPSBjb250ZXh0LmdldFZhcmlhYmxlKCdkb2N1bWVudFR5cGUnKTtcbiAgICBpZiAoZG9jdW1lbnRUeXBlKSB7XG4gICAgICBjb250ZXh0LnNldE91dHB1dCgnbmVlZC1jaG9vc2UtZG9jdW1lbnQtdHlwZScsIGZhbHNlKTtcbiAgICB9IGVsc2Uge1xuICAgICAgY29udGV4dC5zZXRPdXRwdXQoJ25lZWQtY2hvb3NlLWRvY3VtZW50LXR5cGUnLCB0cnVlKTtcbiAgICB9XG4gIH1cbn1cblxuZXhwb3J0IGNsYXNzIEFYTUNob29zZURvY3VtZW50VHlwZVdvcmtmbG93QWN0aW9uIGV4dGVuZHMgQVhQV29ya2Zsb3dBY3Rpb24ge1xuICBwb3B1cFNlcnZpY2UgPSBpbmplY3QoQVhQb3B1cFNlcnZpY2UpO1xuXG4gIG92ZXJyaWRlIGFzeW5jIGV4ZWN1dGUoY29udGV4dDogQVhQV29ya2Zsb3dDb250ZXh0KTogUHJvbWlzZTx2b2lkPiB7XG4gICAgY29uc3QgY29tcCA9IChhd2FpdCBpbXBvcnQoJy4uLy4uL3NoYXJlZC9jb21wb25lbnRzJykpLkFYTURvY3VtZW50VHlwZUNob29zZUZpbGVDb21wb25lbnQ7XG4gICAgY29uc3QgcmVzdWx0ID0gYXdhaXQgdGhpcy5wb3B1cFNlcnZpY2Uub3Blbihjb21wKTtcbiAgICBpZiAocmVzdWx0LmRhdGEgIT0gbnVsbCAmJiByZXN1bHQuZGF0YS5kb2N1bWVudFR5cGVJZCAhPSBudWxsKSB7XG4gICAgICBjb250ZXh0LnNldFZhcmlhYmxlKCdkb2N1bWVudFR5cGVJZCcsIHJlc3VsdC5kYXRhLmRvY3VtZW50VHlwZUlkKTtcbiAgICAgIGNvbnRleHQuc2V0T3V0cHV0KCdpc0NhbmNlbGVkJywgZmFsc2UpO1xuICAgIH0gZWxzZSB7XG4gICAgICBjb250ZXh0LnNldE91dHB1dCgnaXNDYW5jZWxlZCcsIHRydWUpO1xuICAgIH1cbiAgfVxufVxuXG5leHBvcnQgY2xhc3MgQVhNQ2hvb3NlRmlsZVdvcmtmbG93QWN0aW9uIGV4dGVuZHMgQVhQV29ya2Zsb3dBY3Rpb24ge1xuICBkb2N1bWVudFR5cGVTZXJ2aWNlID0gaW5qZWN0KEFYTURvY3VtZW50VHlwZVNlcnZpY2UpO1xuICB1cGxvYWRTZXJ2aWNlID0gaW5qZWN0KEFYVXBsb2FkZXJTZXJ2aWNlKTtcblxuICBvdmVycmlkZSBhc3luYyBleGVjdXRlKGNvbnRleHQ6IEFYUFdvcmtmbG93Q29udGV4dCk6IFByb21pc2U8dm9pZD4ge1xuICAgIHZhciBkb2M6IEFYTURvY3VtZW50TWFuYWdlbWVudERvY3VtZW50VHlwZUVudGl0eU1vZGVsID0gY29udGV4dC5nZXRWYXJpYWJsZSgnZG9jdW1lbnRUeXBlJyk7XG4gICAgaWYgKCFkb2MpIHtcbiAgICAgIGNvbnN0IGRvY0lkID0gY29udGV4dC5nZXRWYXJpYWJsZSgnZG9jdW1lbnRUeXBlSWQnKTtcbiAgICAgIGRvYyA9IGF3YWl0IHRoaXMuZG9jdW1lbnRUeXBlU2VydmljZS5nZXRPbmUoZG9jSWQpO1xuICAgIH1cblxuICAgIHRoaXMudXBsb2FkU2VydmljZS5icm93c2Uoe1xuICAgICAgLy9hY2NlcHQ6IGRvYy50eXBlLFxuICAgICAgbXVsdGlwbGU6IGZhbHNlLFxuICAgIH0pO1xuICB9XG59XG5cbmV4cG9ydCBjb25zdCBBWE1VcGxvYWRXb3JrZmxvdzogQVhQV29ya2Zsb3cgPSB7XG4gIHN0YXJ0U3RlcElkOiAnY2hlY2stZG9jdW1lbnQtdHlwZScsXG4gIHN0ZXBzOiB7XG4gICAgJ2NoZWNrLWRvY3VtZW50LXR5cGUnOiB7XG4gICAgICBhY3Rpb246ICdBWE1DaGVja0RvY3VtZW50VHlwZVdvcmtmbG93QWN0aW9uJyxcbiAgICAgIG5leHRTdGVwczogW1xuICAgICAgICB7XG4gICAgICAgICAgY29uZGl0aW9uczogW3sgdHlwZTogJ1NJTkdMRScsIGV4cHJlc3Npb246ICdjb250ZXh0LmdldE91dHB1dChcIm5lZWQtY2hvb3NlLWRvY3VtZW50LXR5cGVcIikgPT0gdHJ1ZScgfV0sXG4gICAgICAgICAgbmV4dFN0ZXBJZDogJ2Nob29zZS1kb2N1bWVudC10eXBlJyxcbiAgICAgICAgfSxcbiAgICAgIF0sXG4gICAgfSxcbiAgICAnY2hvb3NlLWRvY3VtZW50LXR5cGUnOiB7XG4gICAgICBhY3Rpb246ICdBWE1DaG9vc2VEb2N1bWVudFR5cGVXb3JrZmxvd0FjdGlvbicsXG4gICAgICBuZXh0U3RlcHM6IFtcbiAgICAgICAge1xuICAgICAgICAgIGNvbmRpdGlvbnM6IFt7IHR5cGU6ICdTSU5HTEUnLCBleHByZXNzaW9uOiAnY29udGV4dC5nZXRPdXRwdXQoXCJpc0NhbmNlbGVkXCIpID09IGZhbHNlJyB9XSxcbiAgICAgICAgICBuZXh0U3RlcElkOiAnZmlsZS1icm93c2VyJyxcbiAgICAgICAgfSxcbiAgICAgIF0sXG4gICAgfSxcbiAgICAnZmlsZS1icm93c2VyJzoge1xuICAgICAgYWN0aW9uOiAnQVhNQ2hvb3NlRmlsZVdvcmtmbG93QWN0aW9uJyxcbiAgICAgIG5leHRTdGVwczogW1xuICAgICAgICB7XG4gICAgICAgICAgY29uZGl0aW9uczogW10sXG4gICAgICAgICAgbmV4dFN0ZXBJZDogJ2Rpc3BhdGNoLWV2ZW50JyxcbiAgICAgICAgfSxcbiAgICAgIF0sXG4gICAgfSxcbiAgfSxcbn07XG4iXX0=","import { AXPopupService } from '@acorex/components/popup';\nimport { AXTranslationService } from '@acorex/core/translation';\nimport { AXPWorkflowAction } from '@acorex/platform/workflow';\nimport { inject, Injectable } from '@angular/core';\nimport { RootConfig } from '../../../const';\nimport { AXMDocumentService, AXMReviewService } from '../../../entities';\nimport * as i0 from \"@angular/core\";\n/**\n * Action to show confirmation dialog for sending document to review\n */\nexport class AXMSendToReviewConfirmAction extends AXPWorkflowAction {\n constructor() {\n super(...arguments);\n this.popupService = inject(AXPopupService);\n this.translationService = inject(AXTranslationService);\n }\n async execute(context) {\n const documentId = context.getVariable('options.id');\n const documentTitle = context.getVariable('options.title');\n const comp = await import('./document-send-to-review-popup.component').then((m) => m.AXMDocumentSendToReviewPopupComponent);\n const result = await this.popupService.open(comp, {\n title: await this.translationService.translateAsync('document-review.confirm-send.title', {\n scope: 'document-management',\n params: { title: documentTitle },\n }),\n data: {\n documentId: documentId,\n documentTitle: documentTitle,\n },\n });\n context.setOutput('confirmed', result.data.confirmed);\n context.setVariable('assignTo', result.data.assignedTo);\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: AXMSendToReviewConfirmAction, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }\n static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: AXMSendToReviewConfirmAction }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: AXMSendToReviewConfirmAction, decorators: [{\n type: Injectable\n }] });\n/**\n * Action to update document status to PendingReview\n */\nexport class AXMUpdateDocumentStatusAction extends AXPWorkflowAction {\n constructor() {\n super(...arguments);\n this.documentService = inject(AXMDocumentService);\n this.reviewService = inject(AXMReviewService);\n }\n async execute(context) {\n try {\n const documentId = context.getVariable('options.id');\n const document = await this.documentService.getOne(documentId);\n const reviewRecordID = await this.reviewService.insertOne({\n documentId: documentId,\n reviewStatus: 'Pending',\n version: document.version ?? 0,\n modifiedAt: document.updatedAt,\n // modifiedBy : document.updatedBy,\n modifiedBy: {\n //TODO\n id: document.updatedBy ?? '',\n name: document.updatedBy ?? '',\n title: document.updatedBy ?? '',\n },\n reviewerId: context.getVariable('assignTo'),\n });\n await this.documentService.updateOne(documentId, {\n status: 'PendingReview',\n reviewRecordId: reviewRecordID,\n });\n context.setOutput('success', true);\n }\n catch (error) {\n context.setOutput('success', false);\n context.setOutput('error', error);\n }\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: AXMUpdateDocumentStatusAction, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }\n static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: AXMUpdateDocumentStatusAction }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: AXMUpdateDocumentStatusAction, decorators: [{\n type: Injectable\n }] });\n// Note: Using AXPToastAction from platform/common instead of custom toast action\n/**\n * Workflow for sending document to review\n */\nexport const AXMSendToReviewWorkflow = {\n startStepId: 'confirm-send',\n steps: {\n 'confirm-send': {\n id: 'confirm-send',\n action: 'AXMSendToReviewConfirmAction',\n nextSteps: [\n {\n conditions: [{ type: 'SINGLE', expression: 'context.getOutput(\"confirmed\") == true' }],\n nextStepId: 'update-status',\n },\n ],\n },\n 'update-status': {\n id: 'update-status',\n action: 'AXMUpdateDocumentStatusAction',\n nextSteps: [\n {\n conditions: [{ type: 'SINGLE', expression: 'context.getOutput(\"success\") == true' }],\n nextStepId: 'reload-entity',\n },\n {\n conditions: [{ type: 'SINGLE', expression: 'context.getOutput(\"success\") == false' }],\n nextStepId: 'show-error',\n },\n ],\n },\n 'reload-entity': {\n id: 'reload-entity',\n action: 'reload',\n },\n 'show-success': {\n id: 'show-success',\n action: 'AXPToastAction',\n input: {\n color: 'success',\n title: 'document-review.send-review.success',\n content: 'document-review.send-review.success',\n },\n },\n 'show-error': {\n id: 'show-error',\n action: 'AXPToastAction',\n input: {\n color: 'danger',\n title: 'document-review.send-review.error',\n content: 'document-review.send-review.error',\n },\n },\n },\n};\nexport class AXMChangeEntityAction extends AXPWorkflowAction {\n async execute(context) {\n context.setVariable('entity', `${RootConfig.module.name}.${RootConfig.entities.document.name}`);\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: AXMChangeEntityAction, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }\n static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: AXMChangeEntityAction }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: AXMChangeEntityAction, decorators: [{\n type: Injectable\n }] });\n/**\n * Workflow for submitting review\n */\nexport const AXMSubmitReviewWorkflow = {\n startStepId: 'open-review-entity',\n steps: {\n 'open-review-entity': {\n action: 'start-workflow',\n input: {\n workflow: 'quick-modify-entity',\n context: {\n entity: `${RootConfig.module.name}.${RootConfig.entities.review.name}`,\n data: {\n id: '{{ context.getVariable(\"options.id\") }}',\n },\n },\n },\n nextSteps: [\n {\n conditions: [{ type: 'SINGLE', expression: 'context.getOutput(\"result\") == true' }],\n nextStepId: 'change-entity',\n },\n {\n conditions: [{ type: 'SINGLE', expression: 'context.getOutput(\"result\") == false' }],\n nextStepId: 'show-error',\n },\n ],\n },\n 'change-entity': {\n id: 'change-entity',\n action: 'AXMChangeEntityAction',\n nextSteps: [\n {\n nextStepId: 'reload-entity',\n conditions: [],\n },\n ],\n },\n 'reload-entity': {\n id: 'reload-entity',\n action: 'reload',\n },\n },\n};\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG9jdW1lbnQtcmV2aWV3LndvcmtmbG93LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tb2R1bGVzL2RvY3VtZW50LW1hbmFnZW1lbnQvc3JjL2xpYi9mZWF0dXJlcy93b3JrZmxvdy9kb2N1bWVudC1yZXZpZXcvZG9jdW1lbnQtcmV2aWV3LndvcmtmbG93LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMxRCxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUNoRSxPQUFPLEVBQWUsaUJBQWlCLEVBQXNCLE1BQU0sMkJBQTJCLENBQUM7QUFDL0YsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbkQsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzVDLE9BQU8sRUFBRSxrQkFBa0IsRUFBNEIsZ0JBQWdCLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQzs7QUFDbkc7O0dBRUc7QUFFSCxNQUFNLE9BQU8sNEJBQTZCLFNBQVEsaUJBQWlCO0lBRG5FOztRQUVVLGlCQUFZLEdBQUcsTUFBTSxDQUFDLGNBQWMsQ0FBQyxDQUFDO1FBQ3RDLHVCQUFrQixHQUFHLE1BQU0sQ0FBQyxvQkFBb0IsQ0FBQyxDQUFDO0tBdUIzRDtJQXJCQyxLQUFLLENBQUMsT0FBTyxDQUFDLE9BQTJCO1FBQ3ZDLE1BQU0sVUFBVSxHQUFHLE9BQU8sQ0FBQyxXQUFXLENBQUMsWUFBWSxDQUFDLENBQUM7UUFDckQsTUFBTSxhQUFhLEdBQUcsT0FBTyxDQUFDLFdBQVcsQ0FBQyxlQUFlLENBQUMsQ0FBQztRQUUzRCxNQUFNLElBQUksR0FBRyxNQUFNLE1BQU0sQ0FBQywyQ0FBMkMsQ0FBQyxDQUFDLElBQUksQ0FDekUsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENB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QUFNLEVBQUUsUUFBUTtTQUNqQjtLQUNGO0NBQ0YsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFYUG9wdXBTZXJ2aWNlIH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL3BvcHVwJztcbmltcG9ydCB7IEFYVHJhbnNsYXRpb25TZXJ2aWNlIH0gZnJvbSAnQGFjb3JleC9jb3JlL3RyYW5zbGF0aW9uJztcbmltcG9ydCB7IEFYUFdvcmtmbG93LCBBWFBXb3JrZmxvd0FjdGlvbiwgQVhQV29ya2Zsb3dDb250ZXh0IH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS93b3JrZmxvdyc7XG5pbXBvcnQgeyBpbmplY3QsIEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFJvb3RDb25maWcgfSBmcm9tICcuLi8uLi8uLi9jb25zdCc7XG5pbXBvcnQgeyBBWE1Eb2N1bWVudFNlcnZpY2UsIEFYTURvY3VtZW50V29ya2Zsb3dQaGFzZSwgQVhNUmV2aWV3U2VydmljZSB9IGZyb20gJy4uLy4uLy4uL2VudGl0aWVzJztcbi8qKlxuICogQWN0aW9uIHRvIHNob3cgY29uZmlybWF0aW9uIGRpYWxvZyBmb3Igc2VuZGluZyBkb2N1bWVudCB0byByZXZpZXdcbiAqL1xuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIEFYTVNlbmRUb1Jldmlld0NvbmZpcm1BY3Rpb24gZXh0ZW5kcyBBWFBXb3JrZmxvd0FjdGlvbiB7XG4gIHByaXZhdGUgcG9wdXBTZXJ2aWNlID0gaW5qZWN0KEFYUG9wdXBTZXJ2aWNlKTtcbiAgcHJpdmF0ZSB0cmFuc2xhdGlvblNlcnZpY2UgPSBpbmplY3QoQVhUcmFuc2xhdGlvblNlcnZpY2UpO1xuXG4gIGFzeW5jIGV4ZWN1dGUoY29udGV4dDogQVhQV29ya2Zsb3dDb250ZXh0KTogUHJvbWlzZTx2b2lkPiB7XG4gICAgY29uc3QgZG9jdW1lbnRJZCA9IGNvbnRleHQuZ2V0VmFyaWFibGUoJ29wdGlvbnMuaWQnKTtcbiAgICBjb25zdCBkb2N1bWVudFRpdGxlID0gY29udGV4dC5nZXRWYXJpYWJsZSgnb3B0aW9ucy50aXRsZScpO1xuXG4gICAgY29uc3QgY29tcCA9IGF3YWl0IGltcG9ydCgnLi9kb2N1bWVudC1zZW5kLXRvLXJldmlldy1wb3B1cC5jb21wb25lbnQnKS50aGVuKFxuICAgICAgKG0pID0+IG0uQVhNRG9jdW1lbnRTZW5kVG9SZXZpZXdQb3B1cENvbXBvbmVudCxcbiAgICApO1xuICAgIGNvbnN0IHJlc3VsdCA9IGF3YWl0IHRoaXMucG9wdXBTZXJ2aWNlLm9wZW4oY29tcCwge1xuICAgICAgdGl0bGU6IGF3YWl0IHRoaXMudHJhbnNsYXRpb25TZXJ2aWNlLnRyYW5zbGF0ZUFzeW5jKCdkb2N1bWVudC1yZXZpZXcuY29uZmlybS1zZW5kLnRpdGxlJywge1xuICAgICAgICBzY29wZTogJ2RvY3VtZW50LW1hbmFnZW1lbnQnLFxuICAgICAgICBwYXJhbXM6IHsgdGl0bGU6IGRvY3VtZW50VGl0bGUgfSxcbiAgICAgIH0pLFxuICAgICAgZGF0YToge1xuICAgICAgICBkb2N1bWVudElkOiBkb2N1bWVudElkLFxuICAgICAgICBkb2N1bWVudFRpdGxlOiBkb2N1bWVudFRpdGxlLFxuICAgICAgfSxcbiAgICB9KTtcblxuICAgIGNvbnRleHQuc2V0T3V0cHV0KCdjb25maXJtZWQnLCByZXN1bHQuZGF0YS5jb25maXJtZWQpO1xuICAgIGNvbnRleHQuc2V0VmFyaWFibGUoJ2Fzc2lnblRvJywgcmVzdWx0LmRhdGEuYXNzaWduZWRUbyk7XG4gIH1cbn1cblxuLyoqXG4gKiBBY3Rpb24gdG8gdXBkYXRlIGRvY3VtZW50IHN0YXR1cyB0byBQZW5kaW5nUmV2aWV3XG4gKi9cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBBWE1VcGRhdGVEb2N1bWVudFN0YXR1c0FjdGlvbiBleHRlbmRzIEFYUFdvcmtmbG93QWN0aW9uIHtcbiAgcHJpdmF0ZSBkb2N1bWVudFNlcnZpY2UgPSBpbmplY3QoQVhNRG9jdW1lbnRTZXJ2aWNlKTtcbiAgcHJpdmF0ZSByZXZpZXdTZXJ2aWNlID0gaW5qZWN0KEFYTVJldmlld1NlcnZpY2UpO1xuXG4gIGFzeW5jIGV4ZWN1dGUoY29udGV4dDogQVhQV29ya2Zsb3dDb250ZXh0KTogUHJvbWlzZTx2b2lkPiB7XG4gICAgdHJ5IHtcbiAgICAgIGNvbnN0IGRvY3VtZW50SWQgPSBjb250ZXh0LmdldFZhcmlhYmxlPHN0cmluZz4oJ29wdGlvbnMuaWQnKTtcblxuICAgICAgY29uc3QgZG9jdW1lbnQgPSBhd2FpdCB0aGlzLmRvY3VtZW50U2VydmljZS5nZXRPbmUoZG9jdW1lbnRJZCk7XG5cbiAgICAgIGNvbnN0IHJldmlld1JlY29yZElEID0gYXdhaXQgdGhpcy5yZXZpZXdTZXJ2aWNlLmluc2VydE9uZSh7XG4gICAgICAgIGRvY3VtZW50SWQ6IGRvY3VtZW50SWQsXG4gICAgICAgIHJldmlld1N0YXR1czogJ1BlbmRpbmcnLFxuICAgICAgICB2ZXJzaW9uOiBkb2N1bWVudC52ZXJzaW9uID8/IDAsXG4gICAgICAgIG1vZGlmaWVkQXQ6IGRvY3VtZW50LnVwZGF0ZWRBdCxcbiAgICAgICAgLy8gbW9kaWZpZWRCeSA6IGRvY3VtZW50LnVwZGF0ZWRCeSxcbiAgICAgICAgbW9kaWZpZWRCeToge1xuICAgICAgICAgIC8vVE9ET1xuICAgICAgICAgIGlkOiBkb2N1bWVudC51cGRhdGVkQnkgPz8gJycsXG4gICAgICAgICAgbmFtZTogZG9jdW1lbnQudXBkYXRlZEJ5ID8/ICcnLFxuICAgICAgICAgIHRpdGxlOiBkb2N1bWVudC51cGRhdGVkQnkgPz8gJycsXG4gICAgICAgIH0sXG4gICAgICAgIHJldmlld2VySWQ6IGNvbnRleHQuZ2V0VmFyaWFibGUoJ2Fzc2lnblRvJyksXG4gICAgICB9KTtcblxuICAgICAgYXdhaXQgdGhpcy5kb2N1bWVudFNlcnZpY2UudXBkYXRlT25lKGRvY3VtZW50SWQsIHtcbiAgICAgICAgc3RhdHVzOiAnUGVuZGluZ1JldmlldycgYXMgQVhNRG9jdW1lbnRXb3JrZmxvd1BoYXNlLFxuICAgICAgICByZXZpZXdSZWNvcmRJZDogcmV2aWV3UmVjb3JkSUQsXG4gICAgICB9KTtcblxuICAgICAgY29udGV4dC5zZXRPdXRwdXQoJ3N1Y2Nlc3MnLCB0cnVlKTtcbiAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgY29udGV4dC5zZXRPdXRwdXQoJ3N1Y2Nlc3MnLCBmYWxzZSk7XG4gICAgICBjb250ZXh0LnNldE91dHB1dCgnZXJyb3InLCBlcnJvcik7XG4gICAgfVxuICB9XG59XG5cbi8vIE5vdGU6IFVzaW5nIEFYUFRvYXN0QWN0aW9uIGZyb20gcGxhdGZvcm0vY29tbW9uIGluc3RlYWQgb2YgY3VzdG9tIHRvYXN0IGFjdGlvblxuXG4vKipcbiAqIFdvcmtmbG93IGZvciBzZW5kaW5nIGRvY3VtZW50IHRvIHJldmlld1xuICovXG5leHBvcnQgY29uc3QgQVhNU2VuZFRvUmV2aWV3V29ya2Zsb3c6IEFYUFdvcmtmbG93ID0ge1xuICBzdGFydFN0ZXBJZDogJ2NvbmZpcm0tc2VuZCcsXG4gIHN0ZXBzOiB7XG4gICAgJ2NvbmZpcm0tc2VuZCc6IHtcbiAgICAgIGlkOiAnY29uZmlybS1zZW5kJyxcbiAgICAgIGFjdGlvbjogJ0FYTVNlbmRUb1Jldmlld0NvbmZpcm1BY3Rpb24nLFxuICAgICAgbmV4dFN0ZXBzOiBbXG4gICAgICAgIHtcbiAgICAgICAgICBjb25kaXRpb25zOiBbeyB0eXBlOiAnU0lOR0xFJywgZXhwcmVzc2lvbjogJ2NvbnRleHQuZ2V0T3V0cHV0KFwiY29uZmlybWVkXCIpID09IHRydWUnIH1dLFxuICAgICAgICAgIG5leHRTdGVwSWQ6ICd1cGRhdGUtc3RhdHVzJyxcbiAgICAgICAgfSxcbiAgICAgIF0sXG4gICAgfSxcbiAgICAndXBkYXRlLXN0YXR1cyc6IHtcbiAgICAgIGlkOiAndXBkYXRlLXN0YXR1cycsXG4gICAgICBhY3Rpb246ICdBWE1VcGRhdGVEb2N1bWVudFN0YXR1c0FjdGlvbicsXG4gICAgICBuZXh0U3RlcHM6IFtcbiAgICAgICAge1xuICAgICAgICAgIGNvbmRpdGlvbnM6IFt7IHR5cGU6ICdTSU5HTEUnLCBleHByZXNzaW9uOiAnY29udGV4dC5nZXRPdXRwdXQoXCJzdWNjZXNzXCIpID09IHRydWUnIH1dLFxuICAgICAgICAgIG5leHRTdGVwSWQ6ICdyZWxvYWQtZW50aXR5JyxcbiAgICAgICAgfSxcbiAgICAgICAge1xuICAgICAgICAgIGNvbmRpdGlvbnM6IFt7IHR5cGU6ICdTSU5HTEUnLCBleHByZXNzaW9uOiAnY29udGV4dC5nZXRPdXRwdXQoXCJzdWNjZXNzXCIpID09IGZhbHNlJyB9XSxcbiAgICAgICAgICBuZXh0U3RlcElkOiAnc2hvdy1lcnJvcicsXG4gICAgICAgIH0sXG4gICAgICBdLFxuICAgIH0sXG4gICAgJ3JlbG9hZC1lbnRpdHknOiB7XG4gICAgICBpZDogJ3JlbG9hZC1lbnRpdHknLFxuICAgICAgYWN0aW9uOiAncmVsb2FkJyxcbiAgICB9LFxuICAgICdzaG93LXN1Y2Nlc3MnOiB7XG4gICAgICBpZDogJ3Nob3ctc3VjY2VzcycsXG4gICAgICBhY3Rpb246ICdBWFBUb2FzdEFjdGlvbicsXG4gICAgICBpbnB1dDoge1xuICAgICAgICBjb2xvcjogJ3N1Y2Nlc3MnLFxuICAgICAgICB0aXRsZTogJ2RvY3VtZW50LXJldmlldy5zZW5kLXJldmlldy5zdWNjZXNzJyxcbiAgICAgICAgY29udGVudDogJ2RvY3VtZW50LXJldmlldy5zZW5kLXJldmlldy5zdWNjZXNzJyxcbiAgICAgIH0sXG4gICAgfSxcbiAgICAnc2hvdy1lcnJvcic6IHtcbiAgICAgIGlkOiAnc2hvdy1lcnJvcicsXG4gICAgICBhY3Rpb246ICdBWFBUb2FzdEFjdGlvbicsXG4gICAgICBpbnB1dDoge1xuICAgICAgICBjb2xvcjogJ2RhbmdlcicsXG4gICAgICAgIHRpdGxlOiAnZG9jdW1lbnQtcmV2aWV3LnNlbmQtcmV2aWV3LmVycm9yJyxcbiAgICAgICAgY29udGVudDogJ2RvY3VtZW50LXJldmlldy5zZW5kLXJldmlldy5lcnJvcicsXG4gICAgICB9LFxuICAgIH0sXG4gIH0sXG59O1xuXG5cblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIEFYTUNoYW5nZUVudGl0eUFjdGlvbiBleHRlbmRzIEFYUFdvcmtmbG93QWN0aW9uIHtcbiAgYXN5bmMgZXhlY3V0ZShjb250ZXh0OiBBWFBXb3JrZmxvd0NvbnRleHQpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICBjb250ZXh0LnNldFZhcmlhYmxlKCdlbnRpdHknLCBgJHtSb290Q29uZmlnLm1vZHVsZS5uYW1lfS4ke1Jvb3RDb25maWcuZW50aXRpZXMuZG9jdW1lbnQubmFtZX1gKTtcbiAgfVxufVxuXG4vKipcbiAqIFdvcmtmbG93IGZvciBzdWJtaXR0aW5nIHJldmlld1xuICovXG5leHBvcnQgY29uc3QgQVhNU3VibWl0UmV2aWV3V29ya2Zsb3c6IEFYUFdvcmtmbG93ID0ge1xuICBzdGFydFN0ZXBJZDogJ29wZW4tcmV2aWV3LWVudGl0eScsXG4gIHN0ZXBzOiB7XG4gICAgJ29wZW4tcmV2aWV3LWVudGl0eSc6IHtcbiAgICAgIGFjdGlvbjogJ3N0YXJ0LXdvcmtmbG93JyxcbiAgICAgIGlucHV0OiB7XG4gICAgICAgIHdvcmtmbG93OiAncXVpY2stbW9kaWZ5LWVudGl0eScsXG4gICAgICAgIGNvbnRleHQ6IHtcbiAgICAgICAgICBlbnRpdHk6IGAke1Jvb3RDb25maWcubW9kdWxlLm5hbWV9LiR7Um9vdENvbmZpZy5lbnRpdGllcy5yZXZpZXcubmFtZX1gLFxuICAgICAgICAgIGRhdGE6IHtcbiAgICAgICAgICAgIGlkOiAne3sgY29udGV4dC5nZXRWYXJpYWJsZShcIm9wdGlvbnMuaWRcIikgfX0nLFxuICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgICAgbmV4dFN0ZXBzOiBbXG4gICAgICAgIHtcbiAgICAgICAgICBjb25kaXRpb25zOiBbeyB0eXBlOiAnU0lOR0xFJywgZXhwcmVzc2lvbjogJ2NvbnRleHQuZ2V0T3V0cHV0KFwicmVzdWx0XCIpID09IHRydWUnIH1dLFxuICAgICAgICAgIG5leHRTdGVwSWQ6ICdjaGFuZ2UtZW50aXR5JyxcbiAgICAgICAgfSxcbiAgICAgICAge1xuICAgICAgICAgIGNvbmRpdGlvbnM6IFt7IHR5cGU6ICdTSU5HTEUnLCBleHByZXNzaW9uOiAnY29udGV4dC5nZXRPdXRwdXQoXCJyZXN1bHRcIikgPT0gZmFsc2UnIH1dLFxuICAgICAgICAgIG5leHRTdGVwSWQ6ICdzaG93LWVycm9yJyxcbiAgICAgICAgfSxcbiAgICAgIF0sXG4gICAgfSxcbiAgICAnY2hhbmdlLWVudGl0eSc6IHtcbiAgICAgIGlkOiAnY2hhbmdlLWVudGl0eScsXG4gICAgICBhY3Rpb246ICdBWE1DaGFuZ2VFbnRpdHlBY3Rpb24nLFxuICAgICAgbmV4dFN0ZXBzOiBbXG4gICAgICAgIHtcbiAgICAgICAgICBuZXh0U3RlcElkOiAncmVsb2FkLWVudGl0eScsXG4gICAgICAgICAgY29uZGl0aW9uczogW10sXG4gICAgICAgIH0sXG4gICAgICBdLFxuICAgIH0sXG4gICAgJ3JlbG9hZC1lbnRpdHknOiB7XG4gICAgICBpZDogJ3JlbG9hZC1lbnRpdHknLFxuICAgICAgYWN0aW9uOiAncmVsb2FkJyxcbiAgICB9LFxuICB9LFxufTtcbiJdfQ==","import { AXPopupService } from '@acorex/components/popup';\nimport { AXTranslationService } from '@acorex/core/translation';\nimport { AXPWorkflowAction } from '@acorex/platform/workflow';\nimport { inject, Injectable } from '@angular/core';\nimport { AXMDocumentService } from '../../../entities';\nimport { AXMDistributionService } from '../../../entities/distribution/distribution.service';\nimport * as i0 from \"@angular/core\";\n/**\n * Action to show document distribution popup\n */\nexport class AXMDocumentDistributionPopupAction extends AXPWorkflowAction {\n constructor() {\n super(...arguments);\n this.popupService = inject(AXPopupService);\n this.translationService = inject(AXTranslationService);\n }\n async execute(context) {\n const documentId = context.getVariable('options.id');\n const documentTitle = context.getVariable('options.title');\n const comp = await import('./document-distribution-popup.component')\n .then(x => x.AXMDocumentDistributionPopupComponent);\n const result = await this.popupService.open(comp, {\n title: await this.translationService.translateAsync('document-distribution.title', {\n scope: 'document-management',\n params: { title: documentTitle }\n }),\n size: 'md',\n data: {\n documentId,\n documentTitle\n }\n });\n context.setOutput('confirmed', result.data?.confirmed || false);\n if (result.data?.confirmed) {\n context.setOutput('assignedTo', result.data.assignedTo);\n // context.setOutput('dueDate', result.data.dueDate);\n // context.setOutput('comment', result.data.comment);\n }\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: AXMDocumentDistributionPopupAction, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }\n static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: AXMDocumentDistributionPopupAction }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: AXMDocumentDistributionPopupAction, decorators: [{\n type: Injectable\n }] });\n/**\n * Action to create distribution records and update document status\n */\nexport class AXMCreateDistributionRecordsAction extends AXPWorkflowAction {\n constructor() {\n super(...arguments);\n this.documentService = inject(AXMDocumentService);\n this.distributionService = inject(AXMDistributionService);\n }\n async execute(context) {\n try {\n const documentId = context.getVariable('options.id');\n const assignedTo = context.getOutput('assignedTo');\n const document = await this.documentService.getOne(documentId);\n this.distributionService.insertOne({\n documentId,\n version: document.version,\n assignedTo,\n });\n // Update document status to Distributed\n await this.documentService.updateOne(documentId, {\n status: 'Distributed',\n });\n context.setOutput('success', true);\n context.setOutput('distributionCount', assignedTo.length);\n }\n catch (error) {\n context.setOutput('success', false);\n context.setOutput('error', error);\n }\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: AXMCreateDistributionRecordsAction, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }\n static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: AXMCreateDistributionRecordsAction }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: AXMCreateDistributionRecordsAction, decorators: [{\n type: Injectable\n }] });\n/**\n * Workflow for distributing documents to users\n */\nexport const AXMDocumentDistributionWorkflow = {\n startStepId: 'show-distribution-popup',\n steps: {\n 'show-distribution-popup': {\n id: 'show-distribution-popup',\n action: 'AXMDocumentDistributionPopupAction',\n nextSteps: [\n {\n conditions: [{ type: 'SINGLE', expression: 'context.getOutput(\"confirmed\") == true' }],\n nextStepId: 'create-distributions',\n },\n ],\n },\n 'create-distributions': {\n id: 'create-distributions',\n action: 'AXMCreateDistributionRecordsAction',\n nextSteps: [\n {\n conditions: [{ type: 'SINGLE', expression: 'context.getOutput(\"success\") == true' }],\n nextStepId: 'show-success',\n },\n {\n conditions: [{ type: 'SINGLE', expression: 'context.getOutput(\"success\") == false' }],\n nextStepId: 'show-error',\n },\n ],\n },\n 'show-success': {\n id: 'show-success',\n action: 'AXPToastAction',\n input: {\n color: 'success',\n title: 'document-distribution.success.title',\n content: 'document-distribution.success.message',\n },\n nextSteps: [\n {\n conditions: [],\n nextStepId: 'reload-entity',\n },\n ],\n },\n 'show-error': {\n id: 'show-error',\n action: 'AXPToastAction',\n input: {\n color: 'danger',\n title: 'document-distribution.error.title',\n content: 'document-distribution.error.message',\n },\n },\n 'reload-entity': {\n id: 'reload-entity',\n action: 'reload',\n },\n },\n};\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG9jdW1lbnQtZGlzdHJpYnV0aW9uLndvcmtmbG93LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tb2R1bGVzL2RvY3VtZW50LW1hbmFnZW1lbnQvc3JjL2xpYi9mZWF0dXJlcy93b3JrZmxvdy9kb2N1bWVudC1kaXN0cmlidXRpb24vZG9jdW1lbnQtZGlzdHJpYnV0aW9uLndvcmtmbG93LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMxRCxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUNoRSxPQUFPLEVBQWUsaUJBQWlCLEVBQXNCLE1BQU0sMkJBQTJCLENBQUM7QUFDL0YsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbkQsT0FBTyxFQUFFLGtCQUFrQixFQUE0QixNQUFNLG1CQUFtQixDQUFDO0FBQ2pGLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLHFEQUFxRCxDQUFDOztBQUU3Rjs7R0FFRztBQUVILE1BQU0sT0FBTyxrQ0FBbUMsU0FBUSxpQkFBaUI7SUFEekU7O1FBRVUsaUJBQVksR0FBRyxNQUFNLENBQUMsY0FBYyxDQUFDLENBQUM7UUFDdEMsdUJBQWtCLEdBQUcsTUFBTSxDQUFDLG9CQUFvQixDQUFDLENBQUM7S0E0QjNEO0lBMUJDLEtBQUssQ0FBQyxPQUFPLENBQUMsT0FBMkI7UUFDdkMsTUFBTSxVQUFVLEdBQUcsT0FBTyxDQUFDLFdBQVcsQ0FBQyxZQUFZLENBQUMsQ0FBQztRQUNyRCxNQUFNLGFBQWEsR0FBRyxPQUFPLENBQUMsV0FBVyxDQUFDLGVBQWUsQ0FBQyxDQUFDO1FBRTNELE1BQU0sSUFBSSxHQUFHLE1BQU0sTUFBTSxDQUFDLHlDQUF5QyxDQUFDO2FBQ2pFLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxxQ0FBcUMsQ0FBQyxDQUFDO1FBRXRELE1BQU0sTUFBTSxHQUFHLE1BQU0sSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFO1lBQ2hELEtBQUssRUFBRSxNQUFNLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxjQUFjLENBQUMsNkJBQTZCLEVBQUU7Z0JBQ2pGLEtBQUssRUFBRSxxQkFBcUI7Z0JBQzVCLE1BQU0sRUFBRSxFQUFFLEtBQUssRUFBRSxhQUFhLEVBQUU7YUFDakMsQ0FBQztZQUNGLElBQUksRUFBRSxJQUFJO1lBQ1YsSUFBSSxFQUFFO2dCQUNKLFVBQVU7Z0JBQ1YsYUFBYTthQUNkO1NBQ0YsQ0FBQyxDQUFDO1FBRUgsT0FBTyxDQUFDLFNBQVMsQ0FBQyxXQUFXLEVBQUUsTUFBTSxDQUFDLElBQUksRUFBRSxTQUFTLElBQUksS0FBSyxDQUFDLENBQUM7UUFDaEUsSUFBSSxNQUFNLENBQUMsSUFBSSxFQUFFLFNBQVMsRUFBRSxDQUFDO1lBQzNCLE9BQU8sQ0FBQyxTQUFTLENBQUMsWUFBWSxFQUFFLE1BQU0sQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUM7WUFDeEQscURBQXFEO1lBQ3JELHFEQUFxRDtRQUN2RCxDQUFDO0lBQ0gsQ0FBQzs4R0E3QlUsa0NBQWtDO2tIQUFsQyxrQ0FBa0M7OzJGQUFsQyxrQ0FBa0M7a0JBRDlDLFVBQVU7O0FBaUNYOztHQUVHO0FBRUgsTUFBTSxPQUFPLGtDQUFtQyxTQUFRLGlCQUFpQjtJQUR6RTs7UUFFVSxvQkFBZSxHQUFHLE1BQU0sQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO1FBQzdDLHdCQUFtQixHQUFHLE1BQU0sQ0FBQyxzQkFBc0IsQ0FBQyxDQUFDO0tBMkI5RDtJQXpCQyxLQUFLLENBQUMsT0FBTyxDQUFDLE9BQTJCO1FBQ3ZDLElBQUksQ0FBQztZQUNILE1BQU0sVUFBVSxHQUFHLE9BQU8sQ0FBQyxXQUFXLENBQVMsWUFBWSxDQUFDLENBQUM7WUFDN0QsTUFBTSxVQUFVLEdBQUcsT0FBTyxDQUFDLFNBQVMsQ0FBUSxZQUFZLENBQUMsQ0FBQztZQUUxRCxNQUFNLFFBQVEsR0FBRyxNQUFNLElBQUksQ0FBQyxlQUFlLENBQUMsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1lBRS9ELElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxTQUFTLENBQUM7Z0JBQzdCLFVBQVU7Z0JBQ1YsT0FBTyxFQUFFLFFBQVEsQ0FBQyxPQUFPO2dCQUN6QixVQUFVO2FBQ2YsQ0FBQyxDQUFDO1lBRUgsd0NBQXdDO1lBQ3hDLE1BQU0sSUFBSSxDQUFDLGVBQWUsQ0FBQyxTQUFTLENBQUMsVUFBVSxFQUFFO2dCQUMvQyxNQUFNLEVBQUUsYUFBeUM7YUFDbEQsQ0FBQyxDQUFDO1lBRUgsT0FBTyxDQUFDLFNBQVMsQ0FBQyxTQUFTLEVBQUUsSUFBSSxDQUFDLENBQUM7WUFDbkMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxtQkFBbUIsRUFBRSxVQUFVLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDNUQsQ0FBQztRQUFDLE9BQU8sS0FBSyxFQUFFLENBQUM7WUFDZixPQUFPLENBQUMsU0FBUyxDQUFDLFNBQVMsRUFBRSxLQUFLLENBQUMsQ0FBQztZQUNwQyxPQUFPLENBQUMsU0FBUyxDQUFDLE9BQU8sRUFBRSxLQUFLLENBQUMsQ0FBQztRQUNwQyxDQUFDO0lBQ0gsQ0FBQzs4R0E1QlUsa0NBQWtDO2tIQUFsQyxrQ0FBa0M7OzJGQUFsQyxrQ0FBa0M7a0JBRDlDLFVBQVU7O0FBZ0NYOztHQUVHO0FBQ0gsTUFBTSxDQUFDLE1BQU0sK0JBQStCLEdBQWdCO0lBQzFELFdBQVcsRUFBRSx5QkFBeUI7SUFDdEMsS0FBSyxFQUFFO1FBQ0wseUJBQXlCLEVBQUU7WUFDekIsRUFBRSxFQUFFLHlCQUF5QjtZQUM3QixNQUFNLEVBQUUsb0NBQW9DO1lBQzVDLFNBQVMsRUFBRTtnQkFDVDtvQkFDRSxVQUFVLEVBQUUsQ0FBQyxFQUFFLElBQUksRUFBRSxRQUFRLEVBQUUsVUFBVSxFQUFFLHdDQUF3QyxFQUFFLENBQUM7b0JBQ3RGLFVBQVUsRUFBRSxzQkFBc0I7aUJBQ25DO2FBQ0Y7U0FDRjtRQUNELHNCQUFzQixFQUFFO1lBQ3RCLEVBQUUsRUFBRSxzQkFBc0I7WUFDMUIsTUFBTSxFQUFFLG9DQUFvQztZQUM1QyxTQUFTLEVBQUU7Z0JBQ1Q7b0JBQ0UsVUFBVSxFQUFFLENBQUMsRUFBRSxJQUFJLEVBQUUsUUFBUSxFQUFFLFVBQVUsRUFBRSxzQ0FBc0MsRUFBRSxDQUFDO29CQUNwRixVQUFVLEVBQUUsY0FBYztpQkFDM0I7Z0JBQ0Q7b0JBQ0UsVUFBVSxFQUFFLENBQUMsRUFBRSxJQUFJLEVBQUUsUUFBUSxFQUFFLFVBQVUsRUFBRSx1Q0FBdUMsRUFBRSxDQUFDO29CQUNyRixVQUFVLEVBQUUsWUFBWTtpQkFDekI7YUFDRjtTQUNGO1FBQ0QsY0FBYyxFQUFFO1lBQ2QsRUFBRSxFQUFFLGNBQWM7WUFDbEIsTUFBTSxFQUFFLGdCQUFnQjtZQUN4QixLQUFLLEVBQUU7Z0JBQ0wsS0FBSyxFQUFFLFNBQVM7Z0JBQ2hCLEtBQUssRUFBRSxxQ0FBcUM7Z0JBQzVDLE9BQU8sRUFBRSx1Q0FBdUM7YUFDakQ7WUFDRCxTQUFTLEVBQUU7Z0JBQ1Q7b0JBQ0UsVUFBVSxFQUFFLEVBQUU7b0JBQ2QsVUFBVSxFQUFFLGVBQWU7aUJBQzVCO2FBQ0Y7U0FDRjtRQUNELFlBQVksRUFBRTtZQUNaLEVBQUUsRUFBRSxZQUFZO1lBQ2hCLE1BQU0sRUFBRSxnQkFBZ0I7WUFDeEIsS0FBSyxFQUFFO2dCQUNMLEtBQUssRUFBRSxRQUFRO2dCQUNmLEtBQUssRUFBRSxtQ0FBbUM7Z0JBQzFDLE9BQU8sRUFBRSxxQ0FBcUM7YUFDL0M7U0FDRjtRQUNELGVBQWUsRUFBRTtZQUNmLEVBQUUsRUFBRSxlQUFlO1lBQ25CLE1BQU0sRUFBRSxRQUFRO1NBQ2pCO0tBQ0Y7Q0FDRixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQVhQb3B1cFNlcnZpY2UgfSBmcm9tICdAYWNvcmV4L2NvbXBvbmVudHMvcG9wdXAnO1xuaW1wb3J0IHsgQVhUcmFuc2xhdGlvblNlcnZpY2UgfSBmcm9tICdAYWNvcmV4L2NvcmUvdHJhbnNsYXRpb24nO1xuaW1wb3J0IHsgQVhQV29ya2Zsb3csIEFYUFdvcmtmbG93QWN0aW9uLCBBWFBXb3JrZmxvd0NvbnRleHQgfSBmcm9tICdAYWNvcmV4L3BsYXRmb3JtL3dvcmtmbG93JztcbmltcG9ydCB7IGluamVjdCwgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQVhNRG9jdW1lbnRTZXJ2aWNlLCBBWE1Eb2N1bWVudFdvcmtmbG93UGhhc2UgfSBmcm9tICcuLi8uLi8uLi9lbnRpdGllcyc7XG5pbXBvcnQgeyBBWE1EaXN0cmlidXRpb25TZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vZW50aXRpZXMvZGlzdHJpYnV0aW9uL2Rpc3RyaWJ1dGlvbi5zZXJ2aWNlJztcblxuLyoqXG4gKiBBY3Rpb24gdG8gc2hvdyBkb2N1bWVudCBkaXN0cmlidXRpb24gcG9wdXBcbiAqL1xuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIEFYTURvY3VtZW50RGlzdHJpYnV0aW9uUG9wdXBBY3Rpb24gZXh0ZW5kcyBBWFBXb3JrZmxvd0FjdGlvbiB7XG4gIHByaXZhdGUgcG9wdXBTZXJ2aWNlID0gaW5qZWN0KEFYUG9wdXBTZXJ2aWNlKTtcbiAgcHJpdmF0ZSB0cmFuc2xhdGlvblNlcnZpY2UgPSBpbmplY3QoQVhUcmFuc2xhdGlvblNlcnZpY2UpO1xuXG4gIGFzeW5jIGV4ZWN1dGUoY29udGV4dDogQVhQV29ya2Zsb3dDb250ZXh0KTogUHJvbWlzZTx2b2lkPiB7XG4gICAgY29uc3QgZG9jdW1lbnRJZCA9IGNvbnRleHQuZ2V0VmFyaWFibGUoJ29wdGlvbnMuaWQnKTtcbiAgICBjb25zdCBkb2N1bWVudFRpdGxlID0gY29udGV4dC5nZXRWYXJpYWJsZSgnb3B0aW9ucy50aXRsZScpO1xuXG4gICAgY29uc3QgY29tcCA9IGF3YWl0IGltcG9ydCgnLi9kb2N1bWVudC1kaXN0cmlidXRpb24tcG9wdXAuY29tcG9uZW50JylcbiAgICAgIC50aGVuKHggPT4geC5BWE1Eb2N1bWVudERpc3RyaWJ1dGlvblBvcHVwQ29tcG9uZW50KTtcbiAgICAgIFxuICAgIGNvbnN0IHJlc3VsdCA9IGF3YWl0IHRoaXMucG9wdXBTZXJ2aWNlLm9wZW4oY29tcCwge1xuICAgICAgdGl0bGU6IGF3YWl0IHRoaXMudHJhbnNsYXRpb25TZXJ2aWNlLnRyYW5zbGF0ZUFzeW5jKCdkb2N1bWVudC1kaXN0cmlidXRpb24udGl0bGUnLCB7XG4gICAgICAgIHNjb3BlOiAnZG9jdW1lbnQtbWFuYWdlbWVudCcsXG4gICAgICAgIHBhcmFtczogeyB0aXRsZTogZG9jdW1lbnRUaXRsZSB9XG4gICAgICB9KSxcbiAgICAgIHNpemU6ICdtZCcsXG4gICAgICBkYXRhOiB7XG4gICAgICAgIGRvY3VtZW50SWQsXG4gICAgICAgIGRvY3VtZW50VGl0bGVcbiAgICAgIH1cbiAgICB9KTtcblxuICAgIGNvbnRleHQuc2V0T3V0cHV0KCdjb25maXJtZWQnLCByZXN1bHQuZGF0YT8uY29uZmlybWVkIHx8IGZhbHNlKTtcbiAgICBpZiAocmVzdWx0LmRhdGE/LmNvbmZpcm1lZCkge1xuICAgICAgY29udGV4dC5zZXRPdXRwdXQoJ2Fzc2lnbmVkVG8nLCByZXN1bHQuZGF0YS5hc3NpZ25lZFRvKTtcbiAgICAgIC8vIGNvbnRleHQuc2V0T3V0cHV0KCdkdWVEYXRlJywgcmVzdWx0LmRhdGEuZHVlRGF0ZSk7XG4gICAgICAvLyBjb250ZXh0LnNldE91dHB1dCgnY29tbWVudCcsIHJlc3VsdC5kYXRhLmNvbW1lbnQpO1xuICAgIH1cbiAgfVxufVxuXG4vKipcbiAqIEFjdGlvbiB0byBjcmVhdGUgZGlzdHJpYnV0aW9uIHJlY29yZHMgYW5kIHVwZGF0ZSBkb2N1bWVudCBzdGF0dXNcbiAqL1xuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIEFYTUNyZWF0ZURpc3RyaWJ1dGlvblJlY29yZHNBY3Rpb24gZXh0ZW5kcyBBWFBXb3JrZmxvd0FjdGlvbiB7XG4gIHByaXZhdGUgZG9jdW1lbnRTZXJ2aWNlID0gaW5qZWN0KEFYTURvY3VtZW50U2VydmljZSk7XG4gIHByaXZhdGUgZGlzdHJpYnV0aW9uU2VydmljZSA9IGluamVjdChBWE1EaXN0cmlidXRpb25TZXJ2aWNlKTtcblxuICBhc3luYyBleGVjdXRlKGNvbnRleHQ6IEFYUFdvcmtmbG93Q29udGV4dCk6IFByb21pc2U8dm9pZD4ge1xuICAgIHRyeSB7XG4gICAgICBjb25zdCBkb2N1bWVudElkID0gY29udGV4dC5nZXRWYXJpYWJsZTxzdHJpbmc+KCdvcHRpb25zLmlkJyk7XG4gICAgICBjb25zdCBhc3NpZ25lZFRvID0gY29udGV4dC5nZXRPdXRwdXQ8YW55W10+KCdhc3NpZ25lZFRvJyk7XG5cbiAgICAgIGNvbnN0IGRvY3VtZW50ID0gYXdhaXQgdGhpcy5kb2N1bWVudFNlcnZpY2UuZ2V0T25lKGRvY3VtZW50SWQpO1xuXG4gICAgICB0aGlzLmRpc3RyaWJ1dGlvblNlcnZpY2UuaW5zZXJ0T25lKHtcbiAgICAgICAgICAgIGRvY3VtZW50SWQsXG4gICAgICAgICAgICB2ZXJzaW9uOiBkb2N1bWVudC52ZXJzaW9uLFxuICAgICAgICAgICAgYXNzaWduZWRUbyxcbiAgICAgIH0pO1xuXG4gICAgICAvLyBVcGRhdGUgZG9jdW1lbnQgc3RhdHVzIHRvIERpc3RyaWJ1dGVkXG4gICAgICBhd2FpdCB0aGlzLmRvY3VtZW50U2VydmljZS51cGRhdGVPbmUoZG9jdW1lbnRJZCwge1xuICAgICAgICBzdGF0dXM6ICdEaXN0cmlidXRlZCcgYXMgQVhNRG9jdW1lbnRXb3JrZmxvd1BoYXNlLFxuICAgICAgfSk7XG5cbiAgICAgIGNvbnRleHQuc2V0T3V0cHV0KCdzdWNjZXNzJywgdHJ1ZSk7XG4gICAgICBjb250ZXh0LnNldE91dHB1dCgnZGlzdHJpYnV0aW9uQ291bnQnLCBhc3NpZ25lZFRvLmxlbmd0aCk7XG4gICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgIGNvbnRleHQuc2V0T3V0cHV0KCdzdWNjZXNzJywgZmFsc2UpO1xuICAgICAgY29udGV4dC5zZXRPdXRwdXQoJ2Vycm9yJywgZXJyb3IpO1xuICAgIH1cbiAgfVxufVxuXG4vKipcbiAqIFdvcmtmbG93IGZvciBkaXN0cmlidXRpbmcgZG9jdW1lbnRzIHRvIHVzZXJzXG4gKi9cbmV4cG9ydCBjb25zdCBBWE1Eb2N1bWVudERpc3RyaWJ1dGlvbldvcmtmbG93OiBBWFBXb3JrZmxvdyA9IHtcbiAgc3RhcnRTdGVwSWQ6ICdzaG93LWRpc3RyaWJ1dGlvbi1wb3B1cCcsXG4gIHN0ZXBzOiB7XG4gICAgJ3Nob3ctZGlzdHJpYnV0aW9uLXBvcHVwJzoge1xuICAgICAgaWQ6ICdzaG93LWRpc3RyaWJ1dGlvbi1wb3B1cCcsXG4gICAgICBhY3Rpb246ICdBWE1Eb2N1bWVudERpc3RyaWJ1dGlvblBvcHVwQWN0aW9uJyxcbiAgICAgIG5leHRTdGVwczogW1xuICAgICAgICB7XG4gICAgICAgICAgY29uZGl0aW9uczogW3sgdHlwZTogJ1NJTkdMRScsIGV4cHJlc3Npb246ICdjb250ZXh0LmdldE91dHB1dChcImNvbmZpcm1lZFwiKSA9PSB0cnVlJyB9XSxcbiAgICAgICAgICBuZXh0U3RlcElkOiAnY3JlYXRlLWRpc3RyaWJ1dGlvbnMnLFxuICAgICAgICB9LFxuICAgICAgXSxcbiAgICB9LFxuICAgICdjcmVhdGUtZGlzdHJpYnV0aW9ucyc6IHtcbiAgICAgIGlkOiAnY3JlYXRlLWRpc3RyaWJ1dGlvbnMnLFxuICAgICAgYWN0aW9uOiAnQVhNQ3JlYXRlRGlzdHJpYnV0aW9uUmVjb3Jkc0FjdGlvbicsXG4gICAgICBuZXh0U3RlcHM6IFtcbiAgICAgICAge1xuICAgICAgICAgIGNvbmRpdGlvbnM6IFt7IHR5cGU6ICdTSU5HTEUnLCBleHByZXNzaW9uOiAnY29udGV4dC5nZXRPdXRwdXQoXCJzdWNjZXNzXCIpID09IHRydWUnIH1dLFxuICAgICAgICAgIG5leHRTdGVwSWQ6ICdzaG93LXN1Y2Nlc3MnLFxuICAgICAgICB9LFxuICAgICAgICB7XG4gICAgICAgICAgY29uZGl0aW9uczogW3sgdHlwZTogJ1NJTkdMRScsIGV4cHJlc3Npb246ICdjb250ZXh0LmdldE91dHB1dChcInN1Y2Nlc3NcIikgPT0gZmFsc2UnIH1dLFxuICAgICAgICAgIG5leHRTdGVwSWQ6ICdzaG93LWVycm9yJyxcbiAgICAgICAgfSxcbiAgICAgIF0sXG4gICAgfSxcbiAgICAnc2hvdy1zdWNjZXNzJzoge1xuICAgICAgaWQ6ICdzaG93LXN1Y2Nlc3MnLFxuICAgICAgYWN0aW9uOiAnQVhQVG9hc3RBY3Rpb24nLFxuICAgICAgaW5wdXQ6IHtcbiAgICAgICAgY29sb3I6ICdzdWNjZXNzJyxcbiAgICAgICAgdGl0bGU6ICdkb2N1bWVudC1kaXN0cmlidXRpb24uc3VjY2Vzcy50aXRsZScsXG4gICAgICAgIGNvbnRlbnQ6ICdkb2N1bWVudC1kaXN0cmlidXRpb24uc3VjY2Vzcy5tZXNzYWdlJyxcbiAgICAgIH0sXG4gICAgICBuZXh0U3RlcHM6IFtcbiAgICAgICAge1xuICAgICAgICAgIGNvbmRpdGlvbnM6IFtdLFxuICAgICAgICAgIG5leHRTdGVwSWQ6ICdyZWxvYWQtZW50aXR5JyxcbiAgICAgICAgfSxcbiAgICAgIF0sXG4gICAgfSxcbiAgICAnc2hvdy1lcnJvcic6IHtcbiAgICAgIGlkOiAnc2hvdy1lcnJvcicsXG4gICAgICBhY3Rpb246ICdBWFBUb2FzdEFjdGlvbicsXG4gICAgICBpbnB1dDoge1xuICAgICAgICBjb2xvcjogJ2RhbmdlcicsXG4gICAgICAgIHRpdGxlOiAnZG9jdW1lbnQtZGlzdHJpYnV0aW9uLmVycm9yLnRpdGxlJyxcbiAgICAgICAgY29udGVudDogJ2RvY3VtZW50LWRpc3RyaWJ1dGlvbi5lcnJvci5tZXNzYWdlJyxcbiAgICAgIH0sXG4gICAgfSxcbiAgICAncmVsb2FkLWVudGl0eSc6IHtcbiAgICAgIGlkOiAncmVsb2FkLWVudGl0eScsXG4gICAgICBhY3Rpb246ICdyZWxvYWQnLFxuICAgIH0sXG4gIH0sXG59O1xuIl19","import { AXPopupService } from '@acorex/components/popup';\nimport { AXTranslationService } from '@acorex/core/translation';\nimport { AXPWorkflowAction } from '@acorex/platform/workflow';\nimport { inject, Injectable } from '@angular/core';\nimport { AXMDistributionInteractionService } from '../../../entities/distribution-interaction/distribution-interaction.service';\nimport * as i0 from \"@angular/core\";\n/**\n * Action to show document signature popup\n */\nexport class AXMDocumentSignaturePopupAction extends AXPWorkflowAction {\n constructor() {\n super(...arguments);\n this.popupService = inject(AXPopupService);\n this.translationService = inject(AXTranslationService);\n }\n async execute(context) {\n const documentId = context.getVariable('options.id');\n const documentTitle = context.getVariable('options.title');\n const fileId = context.getVariable('options.fileId');\n const comp = await import('./document-signature-popup.component')\n .then(x => x.AXMDocumentSignaturePopupComponent);\n console.log(fileId);\n const result = await this.popupService.open(comp, {\n title: await this.translationService.translateAsync('document-signature.title', {\n scope: 'document-management',\n params: { title: documentTitle }\n }),\n size: 'md',\n data: {\n documentId,\n documentTitle,\n fileId\n }\n });\n context.setOutput('confirmed', result.data?.confirmed || false);\n if (result.data?.confirmed) {\n context.setOutput('signature', result.data.signature);\n }\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: AXMDocumentSignaturePopupAction, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }\n static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: AXMDocumentSignaturePopupAction }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: AXMDocumentSignaturePopupAction, decorators: [{\n type: Injectable\n }] });\n/**\n * Action to save signature interaction to database\n */\nexport class AXMSaveSignatureInteractionAction extends AXPWorkflowAction {\n constructor() {\n super(...arguments);\n this.distributionInteractionService = inject(AXMDistributionInteractionService);\n }\n async execute(context) {\n try {\n const documentId = context.getVariable('options.id');\n const signature = context.getOutput('signature');\n // TODO: Get current user ID from auth service or context\n // For now using a placeholder - this should be replaced with actual user service\n const currentUserId = 'current-user-id';\n // Create signature interaction record\n const distributionInteractionData = {\n documentDistributionId: documentId, // TODO: This should map to actual distribution ID\n userId: currentUserId,\n action: 'Signed',\n actionTime: new Date(),\n signatureType: 'Digital',\n signatureData: signature,\n };\n await this.distributionInteractionService.insertOne(distributionInteractionData);\n context.setOutput('success', true);\n }\n catch (error) {\n context.setOutput('success', false);\n context.setOutput('error', error);\n }\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: AXMSaveSignatureInteractionAction, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }\n static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: AXMSaveSignatureInteractionAction }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: AXMSaveSignatureInteractionAction, decorators: [{\n type: Injectable\n }] });\n/**\n * Workflow for document signature process\n */\nexport const AXMDocumentSignatureWorkflow = {\n startStepId: 'show-signature-popup',\n steps: {\n 'show-signature-popup': {\n id: 'show-signature-popup',\n action: 'AXMDocumentSignaturePopupAction',\n nextSteps: [\n {\n conditions: [{ type: 'SINGLE', expression: 'context.getOutput(\"confirmed\") == true' }],\n nextStepId: 'save-signature',\n },\n ],\n },\n 'save-signature': {\n id: 'save-signature',\n action: 'AXMSaveSignatureInteractionAction',\n nextSteps: [\n {\n conditions: [{ type: 'SINGLE', expression: 'context.getOutput(\"success\") == true' }],\n nextStepId: 'show-success',\n },\n {\n conditions: [{ type: 'SINGLE', expression: 'context.getOutput(\"success\") == false' }],\n nextStepId: 'show-error',\n },\n ],\n },\n 'show-success': {\n id: 'show-success',\n action: 'AXPToastAction',\n input: {\n color: 'success',\n title: 'document-signature.success.title',\n content: 'document-signature.success.message',\n },\n nextSteps: [\n {\n conditions: [],\n nextStepId: 'reload-entity',\n },\n ],\n },\n 'show-error': {\n id: 'show-error',\n action: 'AXPToastAction',\n input: {\n color: 'danger',\n title: 'document-signature.error.title',\n content: 'document-signature.error.message',\n },\n },\n 'reload-entity': {\n id: 'reload-entity',\n action: 'reload',\n },\n },\n};\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG9jdW1lbnQtc2lnbmF0dXJlLndvcmtmbG93LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tb2R1bGVzL2RvY3VtZW50LW1hbmFnZW1lbnQvc3JjL2xpYi9mZWF0dXJlcy93b3JrZmxvdy9kb2N1bWVudC1zaWduYXR1cmUvZG9jdW1lbnQtc2lnbmF0dXJlLndvcmtmbG93LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMxRCxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUNoRSxPQUFPLEVBQWUsaUJBQWlCLEVBQXNCLE1BQU0sMkJBQTJCLENBQUM7QUFDL0YsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFbkQsT0FBTyxFQUFFLGlDQUFpQyxFQUFFLE1BQU0sNkVBQTZFLENBQUM7O0FBRWhJOztHQUVHO0FBRUgsTUFBTSxPQUFPLCtCQUFnQyxTQUFRLGlCQUFpQjtJQUR0RTs7UUFFVSxpQkFBWSxHQUFHLE1BQU0sQ0FBQyxjQUFjLENBQUMsQ0FBQztRQUN0Qyx1QkFBa0IsR0FBRyxNQUFNLENBQUMsb0JBQW9CLENBQUMsQ0FBQztLQStCM0Q7SUE3QkMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxPQUEyQjtRQUN2QyxNQUFNLFVBQVUsR0FBRyxPQUFPLENBQUMsV0FBVyxDQUFDLFlBQVksQ0FBQyxDQUFDO1FBQ3JELE1BQU0sYUFBYSxHQUFHLE9BQU8sQ0FBQyxXQUFXLENBQUMsZUFBZSxDQUFDLENBQUM7UUFDM0QsTUFBTSxNQUFNLEdBQUcsT0FBTyxDQUFDLFdBQVcsQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO1FBRXJELE1BQU0sSUFBSSxHQUFHLE1BQU0sTUFBTSxDQUFDLHNDQUFzQyxDQUFDO2FBQzlELElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxD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QUFFLEVBQUUsZ0JBQWdCO1lBQ3BCLE1BQU0sRUFBRSxtQ0FBbUM7WUFDM0MsU0FBUyxFQUFFO2dCQUNUO29CQUNFLFVBQVUsRUFBRSxDQUFDLEVBQUUsSUFBSSxFQUFFLFFBQVEsRUFBRSxVQUFVLEVBQUUsc0NBQXNDLEVBQUUsQ0FBQztvQkFDcEYsVUFBVSxFQUFFLGNBQWM7aUJBQzNCO2dCQUNEO29CQUNFLFVBQVUsRUFBRSxDQUFDLEVBQUUsSUFBSSxFQUFFLFFBQVEsRUFBRSxVQUFVLEVBQUUsdUNBQXVDLEVBQUUsQ0FBQztvQkFDckYsVUFBVSxFQUFFLFlBQVk7aUJBQ3pCO2FBQ0Y7U0FDRjtRQUNELGNBQWMsRUFBRTtZQUNkLEVBQUUsRUFBRSxjQUFjO1lBQ2xCLE1BQU0sRUFBRSxnQkFBZ0I7WUFDeEIsS0FBSyxFQUFFO2dCQUNMLEtBQUssRUFBRSxTQUFTO2dCQUNoQixLQUFLLEVBQUUsa0NBQWtDO2dCQUN6QyxPQUFPLEVBQUUsb0NBQW9DO2FBQzlDO1lBQ0QsU0FBUyxFQUFFO2dCQUNUO29CQUNFLFVBQVUsRUFBRSxFQUFFO29CQUNkLFVBQVUsRUFBRSxlQUFlO2lCQUM1QjthQUNGO1NBQ0Y7UUFDRCxZQUFZLEVBQUU7WUFDWixFQUFFLEVBQUUsWUFBWTtZQUNoQixNQUFNLEVBQUUsZ0JBQWdCO1lBQ3hCLEtBQUssRUFBRTtnQkFDTCxLQUFLLEVBQUUsUUFBUTtnQkFDZixLQUFLLEVBQUUsZ0NBQWdDO2dCQUN2QyxPQUFPLEVBQUUsa0NBQWtDO2FBQzVDO1NBQ0Y7UUFDRCxlQUFlLEVBQUU7WUFDZixFQUFFLEVBQUUsZUFBZTtZQUNuQixNQUFNLEVBQUUsUUFBUTtTQUNqQjtLQUNGO0NBQ0YsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFYUG9wdXBTZXJ2aWNlIH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL3BvcHVwJztcbmltcG9ydCB7IEFYVHJhbnNsYXRpb25TZXJ2aWNlIH0gZnJvbSAnQGFjb3JleC9jb3JlL3RyYW5zbGF0aW9uJztcbmltcG9ydCB7IEFYUFdvcmtmbG93LCBBWFBXb3JrZmxvd0FjdGlvbiwgQVhQV29ya2Zsb3dDb250ZXh0IH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS93b3JrZmxvdyc7XG5pbXBvcnQgeyBpbmplY3QsIEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFJvb3RDb25maWcgfSBmcm9tICcuLi8uLi8uLi9jb25zdCc7XG5pbXBvcnQgeyBBWE1EaXN0cmlidXRpb25JbnRlcmFjdGlvblNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9lbnRpdGllcy9kaXN0cmlidXRpb24taW50ZXJhY3Rpb24vZGlzdHJpYnV0aW9uLWludGVyYWN0aW9uLnNlcnZpY2UnO1xuXG4vKipcbiAqIEFjdGlvbiB0byBzaG93IGRvY3VtZW50IHNpZ25hdHVyZSBwb3B1cFxuICovXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgQVhNRG9jdW1lbnRTaWduYXR1cmVQb3B1cEFjdGlvbiBleHRlbmRzIEFYUFdvcmtmbG93QWN0aW9uIHtcbiAgcHJpdmF0ZSBwb3B1cFNlcnZpY2UgPSBpbmplY3QoQVhQb3B1cFNlcnZpY2UpO1xuICBwcml2YXRlIHRyYW5zbGF0aW9uU2VydmljZSA9IGluamVjdChBWFRyYW5zbGF0aW9uU2VydmljZSk7XG5cbiAgYXN5bmMgZXhlY3V0ZShjb250ZXh0OiBBWFBXb3JrZmxvd0NvbnRleHQpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICBjb25zdCBkb2N1bWVudElkID0gY29udGV4dC5nZXRWYXJpYWJsZSgnb3B0aW9ucy5pZCcpO1xuICAgIGNvbnN0IGRvY3VtZW50VGl0bGUgPSBjb250ZXh0LmdldFZhcmlhYmxlKCdvcHRpb25zLnRpdGxlJyk7XG4gICAgY29uc3QgZmlsZUlkID0gY29udGV4dC5nZXRWYXJpYWJsZSgnb3B0aW9ucy5maWxlSWQnKTtcblxuICAgIGNvbnN0IGNvbXAgPSBhd2FpdCBpbXBvcnQoJy4vZG9jdW1lbnQtc2lnbmF0dXJlLXBvcHVwLmNvbXBvbmVudCcpXG4gICAgICAudGhlbih4ID0+IHguQVhNRG9jdW1lbnRTaWduYXR1cmVQb3B1cENvbXBvbmVudCk7XG5cbiAgICAgIGNvbnNvbGUubG9nKGZpbGVJZCk7XG4gICAgICBcbiAgICAgIFxuICAgIGNvbnN0IHJlc3VsdCA9IGF3YWl0IHRoaXMucG9wdXBTZXJ2aWNlLm9wZW4oY29tcCwge1xuICAgICAgdGl0bGU6IGF3YWl0IHRoaXMudHJhbnNsYXRpb25TZXJ2aWNlLnRyYW5zbGF0ZUFzeW5jKCdkb2N1bWVudC1zaWduYXR1cmUudGl0bGUnLCB7XG4gICAgICAgIHNjb3BlOiAnZG9jdW1lbnQtbWFuYWdlbWVudCcsXG4gICAgICAgIHBhcmFtczogeyB0aXRsZTogZG9jdW1lbnRUaXRsZSB9XG4gICAgICB9KSxcbiAgICAgIHNpemU6ICdtZCcsXG4gICAgICBkYXRhOiB7XG4gICAgICAgIGRvY3VtZW50SWQsXG4gICAgICAgIGRvY3VtZW50VGl0bGUsXG4gICAgICAgIGZpbGVJZFxuICAgICAgfVxuICAgIH0pO1xuXG4gICAgY29udGV4dC5zZXRPdXRwdXQoJ2NvbmZpcm1lZCcsIHJlc3VsdC5kYXRhPy5jb25maXJtZWQgfHwgZmFsc2UpO1xuICAgIGlmIChyZXN1bHQuZGF0YT8uY29uZmlybWVkKSB7XG4gICAgICBjb250ZXh0LnNldE91dHB1dCgnc2lnbmF0dXJlJywgcmVzdWx0LmRhdGEuc2lnbmF0dXJlKTtcbiAgICB9XG4gIH1cbn1cblxuLyoqXG4gKiBBY3Rpb24gdG8gc2F2ZSBzaWduYXR1cmUgaW50ZXJhY3Rpb24gdG8gZGF0YWJhc2VcbiAqL1xuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIEFYTVNhdmVTaWduYXR1cmVJbnRlcmFjdGlvbkFjdGlvbiBleHRlbmRzIEFYUFdvcmtmbG93QWN0aW9uIHtcbiAgcHJpdmF0ZSBkaXN0cmlidXRpb25JbnRlcmFjdGlvblNlcnZpY2UgPSBpbmplY3QoQVhNRGlzdHJpYnV0aW9uSW50ZXJhY3Rpb25TZXJ2aWNlKTtcblxuICBhc3luYyBleGVjdXRlKGNvbnRleHQ6IEFYUFdvcmtmbG93Q29udGV4dCk6IFByb21pc2U8dm9pZD4ge1xuICAgIHRyeSB7XG4gICAgICBjb25zdCBkb2N1bWVudElkID0gY29udGV4dC5nZXRWYXJpYWJsZSgnb3B0aW9ucy5pZCcpO1xuICAgICAgY29uc3Qgc2lnbmF0dXJlID0gY29udGV4dC5nZXRPdXRwdXQoJ3NpZ25hdHVyZScpO1xuICAgICAgXG4gICAgICAvLyBUT0RPOiBHZXQgY3VycmVudCB1c2VyIElEIGZyb20gYXV0aCBzZXJ2aWNlIG9yIGNvbnRleHRcbiAgICAgIC8vIEZvciBub3cgdXNpbmcgYSBwbGFjZWhvbGRlciAtIHRoaXMgc2hvdWxkIGJlIHJlcGxhY2VkIHdpdGggYWN0dWFsIHVzZXIgc2VydmljZVxuICAgICAgY29uc3QgY3VycmVudFVzZXJJZCA9ICdjdXJyZW50LXVzZXItaWQnO1xuICAgICAgXG4gICAgICAvLyBDcmVhdGUgc2lnbmF0dXJlIGludGVyYWN0aW9uIHJlY29yZFxuICAgICAgY29uc3QgZGlzdHJpYnV0aW9uSW50ZXJhY3Rpb25EYXRhID0ge1xuICAgICAgICBkb2N1bWVudERpc3RyaWJ1dGlvbklkOiBkb2N1bWVudElkLCAvLyBUT0RPOiBUaGlzIHNob3VsZCBtYXAgdG8gYWN0dWFsIGRpc3RyaWJ1dGlvbiBJRFxuICAgICAgICB1c2VySWQ6IGN1cnJlbnRVc2VySWQsXG4gICAgICAgIGFjdGlvbjogJ1NpZ25lZCcgYXMgY29uc3QsXG4gICAgICAgIGFjdGlvblRpbWU6IG5ldyBEYXRlKCksXG4gICAgICAgIHNpZ25hdHVyZVR5cGU6ICdEaWdpdGFsJyBhcyBjb25zdCxcbiAgICAgICAgc2lnbmF0dXJlRGF0YTogc2lnbmF0dXJlLFxuICAgICAgfTtcblxuICAgICAgYXdhaXQgdGhpcy5kaXN0cmlidXRpb25JbnRlcmFjdGlvblNlcnZpY2UuaW5zZXJ0T25lKGRpc3RyaWJ1dGlvbkludGVyYWN0aW9uRGF0YSk7XG4gICAgICBcbiAgICAgIGNvbnRleHQuc2V0T3V0cHV0KCdzdWNjZXNzJywgdHJ1ZSk7XG4gICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgIGNvbnRleHQuc2V0T3V0cHV0KCdzdWNjZXNzJywgZmFsc2UpO1xuICAgICAgY29udGV4dC5zZXRPdXRwdXQoJ2Vycm9yJywgZXJyb3IpO1xuICAgIH1cbiAgfVxufVxuXG4vKipcbiAqIFdvcmtmbG93IGZvciBkb2N1bWVudCBzaWduYXR1cmUgcHJvY2Vzc1xuICovXG5leHBvcnQgY29uc3QgQVhNRG9jdW1lbnRTaWduYXR1cmVXb3JrZmxvdzogQVhQV29ya2Zsb3cgPSB7XG4gIHN0YXJ0U3RlcElkOiAnc2hvdy1zaWduYXR1cmUtcG9wdXAnLFxuICBzdGVwczoge1xuICAgICdzaG93LXNpZ25hdHVyZS1wb3B1cCc6IHtcbiAgICAgIGlkOiAnc2hvdy1zaWduYXR1cmUtcG9wdXAnLFxuICAgICAgYWN0aW9uOiAnQVhNRG9jdW1lbnRTaWduYXR1cmVQb3B1cEFjdGlvbicsXG4gICAgICBuZXh0U3RlcHM6IFtcbiAgICAgICAge1xuICAgICAgICAgIGNvbmRpdGlvbnM6IFt7IHR5cGU6ICdTSU5HTEUnLCBleHByZXNzaW9uOiAnY29udGV4dC5nZXRPdXRwdXQoXCJjb25maXJtZWRcIikgPT0gdHJ1ZScgfV0sXG4gICAgICAgICAgbmV4dFN0ZXBJZDogJ3NhdmUtc2lnbmF0dXJlJyxcbiAgICAgICAgfSxcbiAgICAgIF0sXG4gICAgfSxcbiAgICAnc2F2ZS1zaWduYXR1cmUnOiB7XG4gICAgICBpZDogJ3NhdmUtc2lnbmF0dXJlJyxcbiAgICAgIGFjdGlvbjogJ0FYTVNhdmVTaWduYXR1cmVJbnRlcmFjdGlvbkFjdGlvbicsXG4gICAgICBuZXh0U3RlcHM6IFtcbiAgICAgICAge1xuICAgICAgICAgIGNvbmRpdGlvbnM6IFt7IHR5cGU6ICdTSU5HTEUnLCBleHByZXNzaW9uOiAnY29udGV4dC5nZXRPdXRwdXQoXCJzdWNjZXNzXCIpID09IHRydWUnIH1dLFxuICAgICAgICAgIG5leHRTdGVwSWQ6ICdzaG93LXN1Y2Nlc3MnLFxuICAgICAgICB9LFxuICAgICAgICB7XG4gICAgICAgICAgY29uZGl0aW9uczogW3sgdHlwZTogJ1NJTkdMRScsIGV4cHJlc3Npb246ICdjb250ZXh0LmdldE91dHB1dChcInN1Y2Nlc3NcIikgPT0gZmFsc2UnIH1dLFxuICAgICAgICAgIG5leHRTdGVwSWQ6ICdzaG93LWVycm9yJyxcbiAgICAgICAgfSxcbiAgICAgIF0sXG4gICAgfSxcbiAgICAnc2hvdy1zdWNjZXNzJzoge1xuICAgICAgaWQ6ICdzaG93LXN1Y2Nlc3MnLFxuICAgICAgYWN0aW9uOiAnQVhQVG9hc3RBY3Rpb24nLFxuICAgICAgaW5wdXQ6IHtcbiAgICAgICAgY29sb3I6ICdzdWNjZXNzJyxcbiAgICAgICAgdGl0bGU6ICdkb2N1bWVudC1zaWduYXR1cmUuc3VjY2Vzcy50aXRsZScsXG4gICAgICAgIGNvbnRlbnQ6ICdkb2N1bWVudC1zaWduYXR1cmUuc3VjY2Vzcy5tZXNzYWdlJyxcbiAgICAgIH0sXG4gICAgICBuZXh0U3RlcHM6IFtcbiAgICAgICAge1xuICAgICAgICAgIGNvbmRpdGlvbnM6IFtdLFxuICAgICAgICAgIG5leHRTdGVwSWQ6ICdyZWxvYWQtZW50aXR5JyxcbiAgICAgICAgfSxcbiAgICAgIF0sXG4gICAgfSxcbiAgICAnc2hvdy1lcnJvcic6IHtcbiAgICAgIGlkOiAnc2hvdy1lcnJvcicsXG4gICAgICBhY3Rpb246ICdBWFBUb2FzdEFjdGlvbicsXG4gICAgICBpbnB1dDoge1xuICAgICAgICBjb2xvcjogJ2RhbmdlcicsXG4gICAgICAgIHRpdGxlOiAnZG9jdW1lbnQtc2lnbmF0dXJlLmVycm9yLnRpdGxlJyxcbiAgICAgICAgY29udGVudDogJ2RvY3VtZW50LXNpZ25hdHVyZS5lcnJvci5tZXNzYWdlJyxcbiAgICAgIH0sXG4gICAgfSxcbiAgICAncmVsb2FkLWVudGl0eSc6IHtcbiAgICAgIGlkOiAncmVsb2FkLWVudGl0eScsXG4gICAgICBhY3Rpb246ICdyZWxvYWQnLFxuICAgIH0sXG4gIH0sXG59O1xuIl19","import { inject, Injectable, signal } from '@angular/core';\nimport { AXMDocumentService } from './entities';\nimport * as i0 from \"@angular/core\";\nexport class AXMDocumentReviewBadgeProvider {\n constructor() {\n this.documentReviewService = inject(AXMDocumentService);\n this.count = signal(0, ...(ngDevMode ? [{ debugName: \"count\" }] : []));\n this.key = 'review-badge';\n this.getCount();\n }\n async getCount() {\n // Base filter for requiresReview\n const baseFilters = [\n {\n field: 'documentType.requiresReview',\n operator: { type: 'equal' },\n value: true,\n },\n {\n field: 'status',\n operator: { type: 'equal' },\n value: 'PendingReview',\n },\n ];\n const x = await this.documentReviewService.query({\n skip: 0,\n take: 1,\n filter: {\n logic: 'and',\n filters: baseFilters,\n },\n });\n this.count.set(x.total);\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: AXMDocumentReviewBadgeProvider, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }\n static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: AXMDocumentReviewBadgeProvider }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: AXMDocumentReviewBadgeProvider, decorators: [{\n type: Injectable\n }], ctorParameters: () => [] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFkZ2UucHJvdmlkZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL21vZHVsZXMvZG9jdW1lbnQtbWFuYWdlbWVudC9zcmMvbGliL2JhZGdlLnByb3ZpZGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzRCxPQUFPLEVBQUUsa0JBQWtCLEVBQW9CLE1BQU0sWUFBWSxDQUFDOztBQUdsRSxNQUFNLE9BQU8sOEJBQThCO0lBS3pDO1FBSlEsMEJBQXFCLEdBQUcsTUFBTSxDQUFDLGtCQUFrQixDQUFDLENBQUM7UUFDM0QsVUFBSyxHQUFHLE1BQU0sQ0FBQyxDQUFDLGlEQUFDLENBQUM7UUFDbEIsUUFBRyxHQUFHLGNBQWMsQ0FBQztRQUduQixJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7SUFDbEIsQ0FBQztJQUVELEtBQUssQ0FBQyxRQUFRO1FBQ1osaUNBQWlDO1FBQ2pDLE1BQU0sV0FBVyxHQUErQjtZQUM5QztnQkFDRSxLQUFLLEVBQUUsNkJBQTZCO2dCQUNwQyxRQUFRLEVBQUUsRUFBRSxJQUFJLEVBQUUsT0FBZ0IsRUFBRTtnQkFDcEMsS0FBSyxFQUFFLElBQUk7YUFDWjtZQUNEO2dCQUNFLEtBQUssRUFBRSxRQUFRO2dCQUNmLFFBQVEsRUFBRSxFQUFFLElBQUksRUFBRSxPQUFnQixFQUFFO2dCQUNwQyxLQUFLLEVBQUUsZUFBZTthQUN2QjtTQUNGLENBQUM7UUFFRixNQUFNLENBQUMsR0FBRyxNQUFNLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxLQUFLLENBQUM7WUFDL0MsSUFBSSxFQUFFLENBQUM7WUFDUCxJQUFJLEVBQUUsQ0FBQztZQUNQLE1BQU0sRUFBRTtnQkFDTixLQUFLLEVBQUUsS0FBSztnQkFDWixPQUFPLEVBQUUsV0FBVzthQUNyQjtTQUNGLENBQUMsQ0FBQztRQUVILElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUMxQixDQUFDOzhHQWxDVSw4QkFBOEI7a0hBQTlCLDhCQUE4Qjs7MkZBQTlCLDhCQUE4QjtrQkFEMUMsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFYRGF0YVNvdXJjZUZpbHRlck9wdGlvbiB9IGZyb20gJ0BhY29yZXgvY2RrL2NvbW1vbic7XG5pbXBvcnQgeyBBWFBUYXNrQmFkZ2VQcm92aWRlciB9IGZyb20gJ0BhY29yZXgvcGxhdGZvcm0vbGF5b3V0L2NvbXBvbmVudHMnO1xuaW1wb3J0IHsgaW5qZWN0LCBJbmplY3RhYmxlLCBzaWduYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFYTURvY3VtZW50U2VydmljZSwgQVhNUmV2aWV3U2VydmljZSB9IGZyb20gJy4vZW50aXRpZXMnO1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgQVhNRG9jdW1lbnRSZXZpZXdCYWRnZVByb3ZpZGVyIGltcGxlbWVudHMgQVhQVGFza0JhZGdlUHJvdmlkZXIge1xuICBwcml2YXRlIGRvY3VtZW50UmV2aWV3U2VydmljZSA9IGluamVjdChBWE1Eb2N1bWVudFNlcnZpY2UpO1xuICBjb3VudCA9IHNpZ25hbCgwKTtcbiAga2V5ID0gJ3Jldmlldy1iYWRnZSc7XG5cbiAgY29uc3RydWN0b3IoKSB7XG4gICAgdGhpcy5nZXRDb3VudCgpO1xuICB9XG5cbiAgYXN5bmMgZ2V0Q291bnQoKSB7XG4gICAgLy8gQmFzZSBmaWx0ZXIgZm9yIHJlcXVpcmVzUmV2aWV3XG4gICAgY29uc3QgYmFzZUZpbHRlcnM6IEFYRGF0YVNvdXJjZUZpbHRlck9wdGlvbltdID0gW1xuICAgICAge1xuICAgICAgICBmaWVsZDogJ2RvY3VtZW50VHlwZS5yZXF1aXJlc1JldmlldycsXG4gICAgICAgIG9wZXJhdG9yOiB7IHR5cGU6ICdlcXVhbCcgYXMgY29uc3QgfSxcbiAgICAgICAgdmFsdWU6IHRydWUsXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBmaWVsZDogJ3N0YXR1cycsXG4gICAgICAgIG9wZXJhdG9yOiB7IHR5cGU6ICdlcXVhbCcgYXMgY29uc3QgfSxcbiAgICAgICAgdmFsdWU6ICdQZW5kaW5nUmV2aWV3JyxcbiAgICAgIH0sXG4gICAgXTtcblxuICAgIGNvbnN0IHggPSBhd2FpdCB0aGlzLmRvY3VtZW50UmV2aWV3U2VydmljZS5xdWVyeSh7XG4gICAgICBza2lwOiAwLFxuICAgICAgdGFrZTogMSxcbiAgICAgIGZpbHRlcjoge1xuICAgICAgICBsb2dpYzogJ2FuZCcsXG4gICAgICAgIGZpbHRlcnM6IGJhc2VGaWx0ZXJzLFxuICAgICAgfSxcbiAgICB9KTtcblxuICAgIHRoaXMuY291bnQuc2V0KHgudG90YWwpO1xuICB9XG59XG4iXX0=","import { AXPopupService } from '@acorex/components/popup';\nimport { AXFileService } from '@acorex/core/file';\nimport { inject, Injectable } from '@angular/core';\nimport { AXMDocumentService, AXMDocumentTypeService } from '../../../entities';\nimport { AXPWorkflowService } from '@acorex/platform/workflow';\nimport * as i0 from \"@angular/core\";\nexport class DocumentAttachmentsService {\n constructor() {\n this.fileService = inject(AXFileService);\n this.documentTypeService = inject(AXMDocumentTypeService);\n this.popupService = inject(AXPopupService);\n this.workflowService = inject(AXPWorkflowService);\n this.documentService = inject(AXMDocumentService);\n }\n async attachFile(fileType, options) {\n // Validate input data\n this.validateAttachmentOptions(options);\n const fileTypeEntity = await this.resolveFileType(fileType);\n const files = await this.chooseFiles(fileTypeEntity, options?.multiple);\n if (files.length === 0) {\n return false;\n }\n const popupData = {\n documentType: fileTypeEntity,\n files: this.mapFilesToFileListItems(files),\n parentId: options?.folderId ?? '',\n };\n const result = await this.openDocumentTypeChooseFilePopup(`Select ${fileTypeEntity.title}`, popupData);\n return this.handlePopupResult(result);\n }\n async updateAttachedFile(fileId, options) {\n const file = await this.documentService.getOne(fileId);\n if (!file) {\n throw new Error('File not found');\n }\n const popupData = {\n documentType: file.documentType,\n files: [file.fileId],\n parentId: options?.folderId ?? '',\n metaData: file.meta,\n documentId: fileId,\n };\n const result = await this.openDocumentTypeChooseFilePopup(`Edit ${file.name}`, popupData);\n return this.handlePopupResult(result);\n }\n validateAttachmentOptions(options) {\n if (!((options?.entityId && options?.entityRecordId) || options?.folderId)) {\n throw new Error('You must provide either both entityId and entityRecordId, or folderId.');\n }\n }\n async resolveFileType(fileType) {\n if (typeof fileType === 'string') {\n const fileTypeId = fileType;\n const fileTypeEntity = await this.documentTypeService.getOne(fileTypeId);\n if (!fileTypeEntity) {\n throw new Error('File type not found');\n }\n return fileTypeEntity;\n }\n return fileType;\n }\n async chooseFiles(fileTypeEntity, multiple) {\n const acceptTypes = fileTypeEntity.type.selectedItems.map((item) => `.${item.name.split('.')[1]}`).join(',');\n console.log(acceptTypes);\n return await this.fileService.choose({\n multiple: multiple ?? false,\n accept: acceptTypes,\n });\n }\n mapFilesToFileListItems(files) {\n return files.map((file) => ({\n name: file.name,\n size: file.size,\n type: file.type,\n status: 'attached',\n source: {\n kind: 'blob',\n value: file,\n },\n }));\n }\n async openDocumentTypeChooseFilePopup(title, data) {\n const comp = (await import('../components')).AXMDocumentTypeChooseFileComponent;\n return await this.popupService.open(comp, {\n title,\n data,\n });\n }\n async handlePopupResult(result) {\n if (result?.data?.cancel) {\n return false;\n }\n if (this.shouldExecuteWorkflow(result)) {\n return await this.executeWorkflow(result.data.fileIds[0]);\n }\n return true;\n }\n shouldExecuteWorkflow(result) {\n return !!(result?.data?.isReviewSent && result.data.fileIds && result.data.fileIds.length > 0);\n }\n async executeWorkflow(fileId) {\n console.log('Executing workflow for file:', fileId);\n const workflowResult = await this.workflowService.execute('send-to-review', {\n options: {\n id: fileId,\n },\n });\n console.log('Workflow result:', workflowResult);\n return true;\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: DocumentAttachmentsService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }\n static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: DocumentAttachmentsService, providedIn: 'root' }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: DocumentAttachmentsService, decorators: [{\n type: Injectable,\n args: [{\n providedIn: 'root',\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG9jdW1lbnQtYXR0YWNobWVudHMuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbW9kdWxlcy9kb2N1bWVudC1tYW5hZ2VtZW50L3NyYy9saWIvZmVhdHVyZXMvc2hhcmVkL3NlcnZpY2VzL2RvY3VtZW50LWF0dGFjaG1lbnRzLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQzFELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUVsRCxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNuRCxPQUFPLEVBQWdELGtCQUFrQixFQUFFLHNCQUFzQixFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDN0gsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sMkJBQTJCLENBQUM7O0FBMEIvRCxNQUFNLE9BQU8sMEJBQTBCO0lBSHZDO1FBSW1CLGdCQUFXLEdBQUcsTUFBTSxDQUFDLGFBQWEsQ0FBQyxDQUFDO1FBQ3BDLHdCQUFtQixHQUFHLE1BQU0sQ0FBQyxzQkFBc0IsQ0FBQyxDQUFDO1FBQ3JELGlCQUFZLEdBQUcsTUFBTSxDQUFDLGNBQWMsQ0FBQyxDQUFDO1FBQ3RDLG9CQUFlLEdBQUcsTUFBTSxDQUFDLGtCQUFrQixDQUFDLENBQUM7UUFDN0Msb0JBQWUsR0FBRyxNQUFNLENBQUMsa0JBQWtCLENBQUMsQ0FBQztLQWtJL0Q7SUFoSUMsS0FBSyxDQUFDLFVBQVUsQ0FDZCxRQUErRCxFQUMvRCxPQUEyQjtRQUUzQixzQkFBc0I7UUFDdEIsSUFBSSxDQUFDLHlCQUF5QixDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBRXhDLE1BQU0sY0FBYyxHQUFHLE1BQU0sSUFBSSxDQUFDLGVBQWUsQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUM1RCxNQUFNLEtB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TUFBbUI7UUFDL0MsT0FBTyxDQUFDLENBQUMsQ0FBQyxNQUFNLEVBQUUsSUFBSSxFQUFFLFlBQVksSUFBSSxNQUFNLENBQUMsSUFBSSxDQUFDLE9BQU8sSUFBSSxNQUFNLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDLENBQUM7SUFDakcsQ0FBQztJQUVPLEtBQUssQ0FBQyxlQUFlLENBQUMsTUFBYztRQUMxQyxPQUFPLENBQUMsR0FBRyxDQUFDLDhCQUE4QixFQUFFLE1BQU0sQ0FBQyxDQUFDO1FBRXBELE1BQU0sY0FBYyxHQUFHLE1BQU0sSUFBSSxDQUFDLGVBQWUsQ0FBQyxPQUFPLENBQUMsZ0JBQWdCLEVBQUU7WUFDMUUsT0FBTyxFQUFFO2dCQUNQLEVBQUUsRUFBRSxNQUFNO2FBQ1g7U0FDRixDQUFDLENBQUM7UUFFSCxPQUFPLENBQUMsR0FBRyxDQUFDLGtCQUFrQixFQUFFLGNBQWMsQ0FBQyxDQUFDO1FBQ2hELE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQzs4R0F0SVUsMEJBQTBCO2tIQUExQiwwQkFBMEIsY0FGekIsTUFBTTs7MkZBRVAsMEJBQTBCO2tCQUh0QyxVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFYUG9wdXBTZXJ2aWNlIH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL3BvcHVwJztcbmltcG9ydCB7IEFYRmlsZVNlcnZpY2UgfSBmcm9tICdAYWNvcmV4L2NvcmUvZmlsZSc7XG5pbXBvcnQgeyBBWFBGaWxlTGlzdEl0ZW0gfSBmcm9tICdAYWNvcmV4L3BsYXRmb3JtL2NvcmUnO1xuaW1wb3J0IHsgaW5qZWN0LCBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBWE1Eb2N1bWVudE1hbmFnZW1lbnREb2N1bWVudFR5cGVFbnRpdHlNb2RlbCwgQVhNRG9jdW1lbnRTZXJ2aWNlLCBBWE1Eb2N1bWVudFR5cGVTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vZW50aXRpZXMnO1xuaW1wb3J0IHsgQVhQV29ya2Zsb3dTZXJ2aWNlIH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS93b3JrZmxvdyc7XG5cbmludGVyZmFjZSBBdHRhY2htZW50T3B0aW9ucyB7XG4gIG11bHRpcGxlPzogYm9vbGVhbjtcbiAgZm9sZGVySWQ/OiBzdHJpbmc7XG4gIGVudGl0eUlkPzogc3RyaW5nO1xuICBlbnRpdHlSZWNvcmRJZD86IHN0cmluZztcbn1cblxuaW50ZXJmYWNlIFVwZGF0ZUF0dGFjaG1lbnRPcHRpb25zIHtcbiAgZW50aXR5SWQ/OiBzdHJpbmc7XG4gIGVudGl0eVJlY29yZElkPzogc3RyaW5nO1xuICBmb2xkZXJJZD86IHN0cmluZztcbn1cblxuaW50ZXJmYWNlIFBvcHVwUmVzdWx0IHtcbiAgZGF0YT86IHtcbiAgICBjYW5jZWw/OiBib29sZWFuO1xuICAgIGlzUmV2aWV3U2VudD86IGJvb2xlYW47XG4gICAgZmlsZUlkcz86IHN0cmluZ1tdO1xuICB9O1xufVxuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290Jyxcbn0pXG5leHBvcnQgY2xhc3MgRG9jdW1lbnRBdHRhY2htZW50c1NlcnZpY2Uge1xuICBwcml2YXRlIHJlYWRvbmx5IGZpbGVTZXJ2aWNlID0gaW5qZWN0KEFYRmlsZVNlcnZpY2UpO1xuICBwcml2YXRlIHJlYWRvbmx5IGRvY3VtZW50VHlwZVNlcnZpY2UgPSBpbmplY3QoQVhNRG9jdW1lbnRUeXBlU2VydmljZSk7XG4gIHByaXZhdGUgcmVhZG9ubHkgcG9wdXBTZXJ2aWNlID0gaW5qZWN0KEFYUG9wdXBTZXJ2aWNlKTtcbiAgcHJpdmF0ZSByZWFkb25seSB3b3JrZmxvd1NlcnZpY2UgPSBpbmplY3QoQVhQV29ya2Zsb3dTZXJ2aWNlKTtcbiAgcHJpdmF0ZSByZWFkb25seSBkb2N1bWVudFNlcnZpY2UgPSBpbmplY3QoQVhNRG9jdW1lbnRTZXJ2aWNlKTtcblxuICBhc3luYyBhdHRhY2hGaWxlKFxuICAgIGZpbGVUeXBlOiBzdHJpbmcgfCBBWE1Eb2N1bWVudE1hbmFnZW1lbnREb2N1bWVudFR5cGVFbnRpdHlNb2RlbCxcbiAgICBvcHRpb25zPzogQXR0YWNobWVudE9wdGlvbnMsXG4gICk6IFByb21pc2U8Ym9vbGVhbj4ge1xuICAgIC8vIFZhbGlkYXRlIGlucHV0IGRhdGFcbiAgICB0aGlzLnZhbGlkYXRlQXR0YWNobWVudE9wdGlvbnMob3B0aW9ucyk7XG5cbiAgICBjb25zdCBmaWxlVHlwZUVudGl0eSA9IGF3YWl0IHRoaXMucmVzb2x2ZUZpbGVUeXBlKGZpbGVUeXBlKTtcbiAgICBjb25zdCBmaWxlcyA9IGF3YWl0IHRoaXMuY2hvb3NlRmlsZXMoZmlsZVR5cGVFbnRpdHksIG9wdGlvbnM/Lm11bHRpcGxlKTtcbiAgICBcbiAgICBpZiAoZmlsZXMubGVuZ3RoID09PSAwKSB7XG4gICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuXG4gICAgY29uc3QgcG9wdXBEYXRhID0ge1xuICAgICAgZG9jdW1lbnRUeXBlOiBmaWxlVHlwZUVudGl0eSxcbiAgICAgIGZpbGVzOiB0aGlzLm1hcEZpbGVzVG9GaWxlTGlzdEl0ZW1zKGZpbGVzKSxcbiAgICAgIHBhcmVudElkOiBvcHRpb25zPy5mb2xkZXJJZCA/PyAnJyxcbiAgICB9O1xuXG4gICAgY29uc3QgcmVzdWx0ID0gYXdhaXQgdGhpcy5vcGVuRG9jdW1lbnRUeXBlQ2hvb3NlRmlsZVBvcHVwKFxuICAgICAgYFNlbGVjdCAke2ZpbGVUeXBlRW50aXR5LnRpdGxlfWAsXG4gICAgICBwb3B1cERhdGFcbiAgICApO1xuXG4gICAgcmV0dXJuIHRoaXMuaGFuZGxlUG9wdXBSZXN1bHQocmVzdWx0KTtcbiAgfVxuXG4gIGFzeW5jIHVwZGF0ZUF0dGFjaGVkRmlsZShmaWxlSWQ6IHN0cmluZywgb3B0aW9ucz86IFVwZGF0ZUF0dGFjaG1lbnRPcHRpb25zKTogUHJvbWlzZTxib29sZWFuPiB7XG4gICAgY29uc3QgZmlsZSA9IGF3YWl0IHRoaXMuZG9jdW1lbnRTZXJ2aWNlLmdldE9uZShmaWxlSWQpO1xuICAgIGlmICghZmlsZSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdGaWxlIG5vdCBmb3VuZCcpO1xuICAgIH1cblxuICAgIGNvbnN0IHBvcHVwRGF0YSA9IHtcbiAgICAgIGRvY3VtZW50VHlwZTogZmlsZS5kb2N1bWVudFR5cGUsXG4gICAgICBmaWxlczogW2ZpbGUuZmlsZUlkXSxcbiAgICAgIHBhcmVudElkOiBvcHRpb25zPy5mb2xkZXJJZCA/PyAnJyxcbiAgICAgIG1ldGFEYXRhOiBmaWxlLm1ldGEsXG4gICAgICBkb2N1bWVudElkOiBmaWxlSWQsXG4gICAgfTtcblxuICAgIGNvbnN0IHJlc3VsdCA9IGF3YWl0IHRoaXMub3BlbkRvY3VtZW50VHlwZUNob29zZUZpbGVQb3B1cChcbiAgICAgIGBFZGl0ICR7ZmlsZS5uYW1lfWAsXG4gICAgICBwb3B1cERhdGFcbiAgICApO1xuXG4gICAgcmV0dXJuIHRoaXMuaGFuZGxlUG9wdXBSZXN1bHQocmVzdWx0KTtcbiAgfVxuXG4gIHByaXZhdGUgdmFsaWRhdGVBdHRhY2htZW50T3B0aW9ucyhvcHRpb25zPzogQXR0YWNobWVudE9wdGlvbnMpOiB2b2lkIHtcbiAgICBpZiAoISgob3B0aW9ucz8uZW50aXR5SWQgJiYgb3B0aW9ucz8uZW50aXR5UmVjb3JkSWQpIHx8IG9wdGlvbnM/LmZvbGRlcklkKSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdZb3UgbXVzdCBwcm92aWRlIGVpdGhlciBib3RoIGVudGl0eUlkIGFuZCBlbnRpdHlSZWNvcmRJZCwgb3IgZm9sZGVySWQuJyk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBhc3luYyByZXNvbHZlRmlsZVR5cGUoZmlsZVR5cGU6IHN0cmluZyB8IEFYTURvY3VtZW50TWFuYWdlbWVudERvY3VtZW50VHlwZUVudGl0eU1vZGVsKTogUHJvbWlzZTxBWE1Eb2N1bWVudE1hbmFnZW1lbnREb2N1bWVudFR5cGVFbnRpdHlNb2RlbD4ge1xuICAgIGlmICh0eXBlb2YgZmlsZVR5cGUgPT09ICdzdHJpbmcnKSB7XG4gICAgICBjb25zdCBmaWxlVHlwZUlkID0gZmlsZVR5cGU7XG4gICAgICBjb25zdCBmaWxlVHlwZUVudGl0eSA9IGF3YWl0IHRoaXMuZG9jdW1lbnRUeXBlU2VydmljZS5nZXRPbmUoZmlsZVR5cGVJZCk7XG4gICAgICBpZiAoIWZpbGVUeXBlRW50aXR5KSB7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcignRmlsZSB0eXBlIG5vdCBmb3VuZCcpO1xuICAgICAgfVxuICAgICAgcmV0dXJuIGZpbGVUeXBlRW50aXR5O1xuICAgIH1cbiAgICByZXR1cm4gZmlsZVR5cGU7XG4gIH1cblxuICBwcml2YXRlIGFzeW5jIGNob29zZUZpbGVzKGZpbGVUeXBlRW50aXR5OiBBWE1Eb2N1bWVudE1hbmFnZW1lbnREb2N1bWVudFR5cGVFbnRpdHlNb2RlbCwgbXVsdGlwbGU/OiBib29sZWFuKTogUHJvbWlzZTxGaWxlW10+IHtcbiAgICBjb25zdCBhY2NlcHRUeXBlcyA9IGZpbGVUeXBlRW50aXR5LnR5cGUuc2VsZWN0ZWRJdGVtcy5tYXAoKGl0ZW0pID0+IGAuJHtpdGVtLm5hbWUuc3BsaXQoJy4nKVsxXX1gKS5qb2luKCcsJyk7XG4gICAgY29uc29sZS5sb2coYWNjZXB0VHlwZXMpO1xuICAgIFxuICAgIHJldHVybiBhd2FpdCB0aGlzLmZpbGVTZXJ2aWNlLmNob29zZSh7XG4gICAgICBtdWx0aXBsZTogbXVsdGlwbGUgPz8gZmFsc2UsXG4gICAgICBhY2NlcHQ6IGFjY2VwdFR5cGVzLFxuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBtYXBGaWxlc1RvRmlsZUxpc3RJdGVtcyhmaWxlczogRmlsZVtdKTogQVhQRmlsZUxpc3RJdGVtW10ge1xuICAgIHJldHVybiBmaWxlcy5tYXA8QVhQRmlsZUxpc3RJdGVtPigoZmlsZSkgPT4gKHtcbiAgICAgIG5hbWU6IGZpbGUubmFtZSxcbiAgICAgIHNpemU6IGZpbGUuc2l6ZSxcbiAgICAgIHR5cGU6IGZpbGUudHlwZSxcbiAgICAgIHN0YXR1czogJ2F0dGFjaGVkJyxcbiAgICAgIHNvdXJjZToge1xuICAgICAgICBraW5kOiAnYmxvYicsXG4gICAgICAgIHZhbHVlOiBmaWxlLFxuICAgICAgfSxcbiAgICB9KSk7XG4gIH1cblxuICBwcml2YXRlIGFzeW5jIG9wZW5Eb2N1bWVudFR5cGVDaG9vc2VGaWxlUG9wdXAodGl0bGU6IHN0cmluZywgZGF0YTogYW55KTogUHJvbWlzZTxQb3B1cFJlc3VsdD4ge1xuICAgIGNvbnN0IGNvbXAgPSAoYXdhaXQgaW1wb3J0KCcuLi9jb21wb25lbnRzJykpLkFYTURvY3VtZW50VHlwZUNob29zZUZpbGVDb21wb25lbnQ7XG4gICAgXG4gICAgcmV0dXJuIGF3YWl0IHRoaXMucG9wdXBTZXJ2aWNlLm9wZW4oY29tcCwge1xuICAgICAgdGl0bGUsXG4gICAgICBkYXRhLFxuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBhc3luYyBoYW5kbGVQb3B1cFJlc3VsdChyZXN1bHQ6IFBvcHVwUmVzdWx0KTogUHJvbWlzZTxib29sZWFuPiB7XG4gICAgaWYgKHJlc3VsdD8uZGF0YT8uY2FuY2VsKSB7XG4gICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMuc2hvdWxkRXhlY3V0ZVdvcmtmbG93KHJlc3VsdCkpIHtcbiAgICAgIHJldHVybiBhd2FpdCB0aGlzLmV4ZWN1dGVXb3JrZmxvdyhyZXN1bHQuZGF0YSEuZmlsZUlkcyFbMF0pO1xuICAgIH1cblxuICAgIHJldHVybiB0cnVlO1xuICB9XG5cbiAgcHJpdmF0ZSBzaG91bGRFeGVjdXRlV29ya2Zsb3cocmVzdWx0OiBQb3B1cFJlc3VsdCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiAhIShyZXN1bHQ/LmRhdGE/LmlzUmV2aWV3U2VudCAmJiByZXN1bHQuZGF0YS5maWxlSWRzICYmIHJlc3VsdC5kYXRhLmZpbGVJZHMubGVuZ3RoID4gMCk7XG4gIH1cblxuICBwcml2YXRlIGFzeW5jIGV4ZWN1dGVXb3JrZmxvdyhmaWxlSWQ6IHN0cmluZyk6IFByb21pc2U8Ym9vbGVhbj4ge1xuICAgIGNvbnNvbGUubG9nKCdFeGVjdXRpbmcgd29ya2Zsb3cgZm9yIGZpbGU6JywgZmlsZUlkKTtcbiAgICBcbiAgICBjb25zdCB3b3JrZmxvd1Jlc3VsdCA9IGF3YWl0IHRoaXMud29ya2Zsb3dTZXJ2aWNlLmV4ZWN1dGUoJ3NlbmQtdG8tcmV2aWV3Jywge1xuICAgICAgb3B0aW9uczoge1xuICAgICAgICBpZDogZmlsZUlkLFxuICAgICAgfSxcbiAgICB9KTtcbiAgICBcbiAgICBjb25zb2xlLmxvZygnV29ya2Zsb3cgcmVzdWx0OicsIHdvcmtmbG93UmVzdWx0KTtcbiAgICByZXR1cm4gdHJ1ZTtcbiAgfVxufVxuIl19","//#region ---- Imports ----\nimport { AXDialogService } from '@acorex/components/dialog';\nimport { AXPopupService } from '@acorex/components/popup';\nimport { AXPSessionService } from '@acorex/platform/auth';\nimport { AXPFileStorageService } from '@acorex/platform/common';\nimport { AXPWorkflowService } from '@acorex/platform/workflow';\nimport { inject, Injectable } from '@angular/core';\nimport { RootConfig } from '../../const';\nimport { AXFileService } from '@acorex/core/file';\nimport { AXTranslationService } from '@acorex/core/translation';\nimport { AXPPlatformScope } from '@acorex/platform/core';\nimport { castArray } from 'lodash-es';\nimport { AXMDocumentService, AXMDocumentTypeService, AXMFolderService, AXMReviewService, } from '../../entities';\nimport { DocumentAttachmentsService } from './services/document-attachments.service';\nimport * as i0 from \"@angular/core\";\n//#endregion\n//#region ---- Service Implementation ----\n/**\n * Service for handling document drive operations\n */\nexport class AXMDocumentManagerService {\n constructor() {\n //#region ---- Services & Dependencies ----\n this.folderService = inject(AXMFolderService);\n this.sessionService = inject(AXPSessionService);\n this.documentService = inject(AXMDocumentService);\n this.documentTypeService = inject(AXMDocumentTypeService);\n this.popupService = inject(AXPopupService);\n this.dialogService = inject(AXDialogService);\n this.fileService = inject(AXPFileStorageService);\n this.fileManagerService = inject(AXFileService);\n this.workflow = inject(AXPWorkflowService);\n this.translate = inject(AXTranslationService);\n this.reviewService = inject(AXMReviewService);\n this.attachmentsService = inject(DocumentAttachmentsService);\n //#endregion\n //#region ---- Private Properties ----\n this.scopedDriveCache = new Map();\n //#endregion\n //#region ---- Mapping Methods ----\n /**\n * Maps folder entity to document explorer node\n */\n this.mapFolderDtoToFolderNode = (folder) => {\n return {\n id: folder.id,\n name: folder.name,\n type: 'folder',\n parentId: folder.parentId || null,\n modifiedAt: folder.updatedAt,\n createdAt: folder.createdAt,\n description: folder.description,\n childrenCount: folder.nodeCount,\n size: folder.size,\n documentTypes: folder.documentTypes || [],\n storageType: 'physical',\n inherit: folder.inherit,\n children: [\n ...(folder.folders?.map(this.mapFolderDtoToFolderNode) || []),\n ...(folder.documents?.map(this.mapFileToNode) || []),\n ],\n };\n };\n }\n //#endregion\n //#region ---- Scope Management Methods ----\n /**\n * Creates a scoped drive service for the specified platform scope\n */\n scope(scope, options) {\n const cacheKey = this.getScopeCacheKey(scope, options);\n if (!this.scopedDriveCache.has(cacheKey)) {\n this.scopedDriveCache.set(cacheKey, new ScopedDriveService(this, scope, options));\n }\n return this.scopedDriveCache.get(cacheKey);\n }\n /**\n * Generates a cache key for the scoped drive service\n */\n getScopeCacheKey(scope, options) {\n return scope;\n }\n //#endregion\n //#region ---- Private Helper Methods ----\n /**\n * Gets the platform root folder (top-level folder)\n */\n async getPlatformRootFolder() {\n const result = await this.folderService.query({\n skip: 0,\n take: 1,\n filter: {\n operator: null,\n logic: 'and',\n filters: [\n { field: 'parentId', operator: { type: 'isNull' } },\n { field: 'tenantId', operator: { type: 'isNull' } },\n { field: 'userId', operator: { type: 'isNull' } },\n ],\n },\n });\n if (result.items.length === 0) {\n throw new Error('Platform root folder not found');\n }\n return result.items[0];\n }\n /**\n * Gets the tenant root folder\n */\n async getTenantRootFolder(rootFolder, tenantId) {\n if (!tenantId) {\n throw new Error('Tenant ID is required');\n }\n const result = await this.folderService.query({\n skip: 0,\n take: 1,\n filter: {\n operator: null,\n logic: 'and',\n filters: [\n {\n field: 'parentId',\n operator: { type: 'equal' },\n value: rootFolder.folders?.find((f) => f.name === 'Tenants')?.id,\n },\n { field: 'tenantId', operator: { type: 'equal' }, value: tenantId },\n { field: 'userId', operator: { type: 'isNull' } },\n ],\n },\n });\n if (result.items.length === 0) {\n throw new Error('Tenant root folder not found');\n }\n return result.items[0];\n }\n /**\n * Gets the user root folder\n */\n async getUserRootFolder(tenantFolderId, tenantId, userId) {\n if (!tenantId || !userId) {\n throw new Error('Both Tenant ID and User ID are required');\n }\n const result = await this.folderService.query({\n skip: 0,\n take: 1,\n filter: {\n operator: null,\n logic: 'and',\n filters: [\n { field: 'parentId', operator: { type: 'equal' }, value: tenantFolderId },\n { field: 'tenantId', operator: { type: 'equal' }, value: tenantId },\n { field: 'userId', operator: { type: 'equal' }, value: userId },\n ],\n },\n });\n if (result.items.length === 0) {\n throw new Error('User root folder not found');\n }\n return result.items[0];\n }\n /**\n * Maps file entity to document explorer node\n */\n mapFileToNode(file) {\n return {\n id: file.id,\n name: file.name,\n type: 'file',\n parentId: file.parentId,\n modifiedAt: file.updatedAt,\n createdAt: file.createdAt,\n size: file.size,\n fileId: file.fileId,\n storageType: 'physical',\n meta: file.meta ? Object.values(file.meta) : undefined,\n documentTypes: file.documentType ? [file.documentType] : [],\n };\n }\n /**\n * Maps document to media viewer data\n */\n async mapDocumentToMediaViewerData(doc) {\n if (!doc.fileId?.startsWith('http')) {\n const fileInfo = await this.fileService.getInfo(doc.fileId);\n return {\n id: doc.id ?? '',\n name: doc.name,\n type: doc.name.endsWith('.pdf') ? 'pdf' : 'image',\n url: fileInfo.url ?? '',\n size: doc.size.toString(),\n thumbnail: fileInfo.url ?? '',\n };\n }\n return {\n id: doc.id ?? '',\n name: doc.name,\n type: doc.meta?.['type'] ?? 'image',\n url: doc.fileId ?? '',\n size: doc.size.toString(),\n thumbnail: doc.fileId ?? '',\n };\n }\n //#endregion\n //#region ---- Utility Methods ----\n /**\n * Builds navigation path for a node\n */\n async buildPath(node, stopFolderId) {\n if (node.type === 'file') {\n return (await this.documentService.getPath(node.id, stopFolderId)).map(this.mapFolderDtoToFolderNode);\n }\n else {\n return (await this.folderService.getPath(node.id, stopFolderId)).map(this.mapFolderDtoToFolderNode);\n }\n }\n /**\n * Creates a copy name by adding \" copy\" before the extension\n */\n createCopyName(originalName) {\n const lastDotIndex = originalName.lastIndexOf('.');\n if (lastDotIndex === -1) {\n // No extension\n return `${originalName} copy`;\n }\n const nameWithoutExt = originalName.substring(0, lastDotIndex);\n const extension = originalName.substring(lastDotIndex);\n return `${nameWithoutExt} copy${extension}`;\n }\n //#endregion\n //#region ---- Root and Folder Operations ----\n /**\n * Gets the root folder based on the specified scope\n */\n async getRoot(scope, options) {\n const rootFolder = await this.getPlatformRootFolder();\n let result;\n let path = [];\n switch (scope) {\n case AXPPlatformScope.Platform:\n result = this.mapFolderDtoToFolderNode(rootFolder);\n path = await this.buildPath(result);\n break;\n case AXPPlatformScope.Tenant: {\n if (!options?.tenantId) {\n throw new Error('Tenant ID is required for tenant scope');\n }\n const tenantRoot = await this.getTenantRootFolder(rootFolder, options.tenantId);\n result = this.mapFolderDtoToFolderNode(tenantRoot);\n path = await this.buildPath(result, tenantRoot.id);\n break;\n }\n case AXPPlatformScope.User: {\n if (!options?.tenantId || !options?.userId) {\n throw new Error('Both Tenant ID and User ID are required for user scope');\n }\n const tenantFolder = await this.getTenantRootFolder(rootFolder, options.tenantId);\n const userRoot = await this.getUserRootFolder(tenantFolder.folders?.find((f) => f.name === 'Users')?.id, options.tenantId, options.userId);\n result = this.mapFolderDtoToFolderNode(userRoot);\n path = await this.buildPath(result, userRoot.id);\n break;\n }\n default:\n throw new Error(`Invalid scope: ${scope}`);\n }\n return { path, result };\n }\n /**\n * Gets a specific folder by ID\n */\n async getFolder(scope, folderId, options) {\n if (!folderId) {\n throw new Error('Folder ID is required');\n }\n const folder = await this.folderService.getOne(folderId);\n if (!folder) {\n throw new Error('Folder not found');\n }\n const result = this.mapFolderDtoToFolderNode(folder);\n const path = await this.buildPath(result, (await this.getRoot(scope, options)).result.id);\n return { path, result };\n }\n /**\n * Creates a new folder\n */\n async createFolder(data) {\n const now = new Date();\n const currentUser = this.sessionService.user;\n const folderToCreate = {\n ...data,\n createdAt: now,\n updatedAt: now,\n createdBy: currentUser?.id?.toString() ?? 'system',\n updatedBy: currentUser?.id?.toString() ?? 'system',\n isSystem: false,\n isHidden: false,\n isDeleted: false,\n size: 0,\n };\n const createdFolder = await this.folderService.insertOne(folderToCreate);\n const folder = await this.folderService.getOne(createdFolder);\n return this.mapFolderDtoToFolderNode(folder);\n }\n /**\n * Updates an existing folder\n */\n async updateFolder(folderId, data) {\n const currentUser = this.sessionService.user;\n const updateData = {\n ...data,\n updatedBy: currentUser?.id?.toString() ?? 'system',\n updatedAt: new Date(),\n };\n await this.folderService.updateOne(folderId, updateData);\n const updatedFolder = await this.folderService.getOne(folderId);\n return this.mapFolderDtoToFolderNode(updatedFolder);\n }\n /**\n * Deletes a folder\n */\n async deleteFolder(folderId) {\n await this.folderService.deleteOne(folderId);\n }\n /**\n * Gets available storage space\n */\n async getAvailableSpace() {\n // For now, return a fixed value of 100GB (56 * 1024 * 1024 * 1024 bytes)\n // This should be replaced with actual storage quota logic when implemented\n return 56 * 1024 * 1024 * 1024;\n }\n //#endregion\n //#region ---- File Operations ----\n /**\n * Creates a new file\n */\n async createFile(data) {\n const fileId = await this.documentService.insertOne(data);\n const file = await this.documentService.getOne(fileId);\n return this.mapFileToNode(file);\n }\n /**\n * Updates an existing file\n */\n async updateFile(fileId, data) {\n const updatedFile = await this.documentService.updateOne(fileId, data);\n return this.mapFileToNode(updatedFile);\n }\n /**\n * Deletes a file\n */\n async deleteFile(fileId) {\n await this.documentService.deleteOne(fileId);\n }\n /**\n * Opens a file\n */\n async openFile(node) {\n const file = await this.documentService.getOne(node.id);\n }\n /**\n * Downloads a file\n */\n async downloadFile(node) {\n // const file = await this.documentService.getOne(node.id);\n if (node.fileId) {\n if (node.fileId.source?.value && typeof node.fileId.source.value === 'string' && node.fileId.source.value?.startsWith('http')) {\n const link = document.createElement('a');\n link.href = node.fileId.source.value;\n link.download = node.name;\n document.body.appendChild(link);\n link.click();\n document.body.removeChild(link);\n return;\n }\n const fileInfo = await this.fileService.getInfo(node.fileId.id ?? '');\n const link = document.createElement('a');\n link.href = fileInfo.url ?? '';\n link.download = node.name; // Set the desired file name\n document.body.appendChild(link);\n link.click();\n document.body.removeChild(link);\n }\n else {\n console.log('id is null');\n }\n }\n //#endregion\n //#region ---- Node Operations ----\n /**\n * Deletes multiple nodes (files and folders)\n */\n async deleteNodes(nodes) {\n for (const node of nodes) {\n if (node.type == 'folder') {\n await this.deleteFolder(node.id);\n }\n else {\n await this.deleteFile(node.id);\n }\n }\n }\n /**\n * Creates a copy of a node (file or folder)\n */\n async copy(node) {\n if (!node) {\n throw new Error('Node to copy cannot be null or undefined');\n }\n // Create a name with \" copy\" before the extension\n const newName = this.createCopyName(node.name);\n if (node.type === 'file') {\n // Get the original file to copy all its data\n const originalFile = await this.documentService.getOne(node.id);\n if (!originalFile) {\n throw new Error(`File with ID ${node.id} not found`);\n }\n // Create a document model from the original with the new name\n // Extract needed properties without id\n const { id, ...fileDataWithoutId } = originalFile;\n const fileData = {\n ...fileDataWithoutId,\n name: newName,\n title: newName,\n };\n // Create the new file\n return await this.createFile(fileData);\n }\n else if (node.type === 'folder') {\n // Get the original folder to copy all its data\n const originalFolder = await this.folderService.getOne(node.id);\n if (!originalFolder) {\n throw new Error(`Folder with ID ${node.id} not found`);\n }\n // Create a folder model from the original with the new name\n // Extract needed properties without id\n const { id, ...folderDataWithoutId } = originalFolder;\n const folderData = {\n ...folderDataWithoutId,\n name: newName,\n };\n // Create the new folder\n return await this.createFolder(folderData);\n }\n else {\n throw new Error(`Unsupported node type: ${node.type}`);\n }\n }\n /**\n * Moves a node to another location\n */\n async moveTo(options) {\n const comp = (await import('../drive-choose/drive-choose.component')).AXMDocumentDriveChooseComponent;\n const popup = await this.popupService.open(comp, {\n title: `Choose ${options.browseMode == 'file' ? 'File' : 'Folder'}`,\n data: {\n selectionMode: options.multiple ? 'multiple' : 'single',\n browseMode: options.browseMode ?? 'file',\n scope: options.scope,\n },\n });\n const selectedFolders = popup.data.result ? (popup.data?.items ?? []) : [];\n if (selectedFolders.length > 0) {\n const selectedFolder = selectedFolders[0];\n if (selectedFolder) {\n if (options.node.type === 'folder') {\n await this.updateFolder(options.node.id, { parentId: selectedFolder.id });\n }\n else {\n await this.updateFile(options.node.id, { parentId: selectedFolder.id });\n }\n return true;\n }\n else {\n return false;\n }\n }\n else {\n return false;\n }\n }\n /**\n * Copies a node to another location\n */\n async copyTo(options) {\n const comp = (await import('../drive-choose/drive-choose.component')).AXMDocumentDriveChooseComponent;\n const popup = await this.popupService.open(comp, {\n title: `Choose ${options.browseMode == 'file' ? 'File' : 'Folder'}`,\n data: {\n selectionMode: options.multiple ? 'multiple' : 'single',\n browseMode: options.browseMode ?? 'file',\n scope: options.scope,\n },\n });\n const selectedFolders = popup.data.result ? (popup.data?.items ?? []) : [];\n if (selectedFolders.length > 0) {\n const selectedFolder = selectedFolders[0];\n if (selectedFolder) {\n if (options.node.type === 'folder') {\n await this.createFolder({\n name: options.node.name,\n parentId: selectedFolder.id,\n color: '#ffffff',\n size: options.node.size,\n inherit: options.node.inherit ?? 'None',\n });\n }\n else {\n await this.createFile({\n title: options.node.name,\n name: options.node.name,\n parentId: selectedFolder.id,\n //TODO upload file to file storage\n fileId: '',\n size: 0,\n documentType: options.node.documentTypes[0],\n // TODO\n status: 'Draft',\n });\n }\n return true;\n }\n else {\n return false;\n }\n }\n else {\n return false;\n }\n }\n //#endregion\n //#region ---- Search Operations ----\n /**\n * Searches for folders by term within a scope\n */\n async searchFolders(searchTerm, scope, options) {\n const { result: rootNode } = options?.folderId\n ? await this.getFolder(scope, options.folderId, options)\n : await this.getRoot(scope, options);\n const folders = await this.folderService.searchFolders(searchTerm, rootNode.id);\n return folders.map((folder) => this.mapFolderDtoToFolderNode(folder));\n }\n /**\n * Searches for files by term within a scope\n */\n async searchFiles(searchTerm, scope, options) {\n const { result: rootNode } = options?.folderId\n ? await this.getFolder(scope, options.folderId, options)\n : await this.getRoot(scope, options);\n const files = await this.documentService.searchFiles(searchTerm, rootNode.id);\n return files.map((file) => this.mapFileToNode(file));\n }\n /**\n * Searches for both files and folders by term within a scope\n */\n async searchNodes(searchTerm, scope, options) {\n const [folders, files] = await Promise.all([\n this.searchFolders(searchTerm, scope, options),\n this.searchFiles(searchTerm, scope, options),\n ]);\n return [...folders, ...files];\n }\n //#endregion\n //#region ---- Data Retrieval Operations ----\n /**\n * Gets all folders\n */\n async getAllFolders() {\n //TODO filter by scope\n return (await this.folderService.query()).items.map(this.mapFolderDtoToFolderNode);\n }\n /**\n * Gets all files with optional query\n */\n async getAllFiles(request) {\n //TODO filter by scope\n return (await this.documentService.query(request)).items.map(this.mapFileToNode);\n }\n /**\n * Gets all nodes (files and folders)\n */\n async getAllNodes() {\n return [...(await this.getAllFolders()), ...(await this.getAllFiles())];\n }\n //#endregion\n //#region ---- File Upload Operations ----\n /**\n * Uploads file by document type to a specific folder\n */\n async uploadFileByType(folderId, docTypeId) {\n const result = await this.attachmentsService.attachFile(docTypeId, {\n multiple: true,\n folderId: folderId,\n });\n return result;\n }\n /**\n * Uploads file by document type to a specific folder\n */\n async updateUploadFileByType(node) {\n const result = await this.attachmentsService.updateAttachedFile(node.id, {\n folderId: node.parentId ?? '',\n });\n return result;\n }\n // const editableFile = await this.documentService.getOne(node.id);\n /*\n if (editableFile.documentType) {\n const docType = editableFile.documentType;\n\n const result = await this.popupService.open(comp, {\n title: `Edit ${editableFile.name}`,\n data: {\n documentType: docType,\n files: [editableFile.fileId],\n parentId: node.parentId,\n metaData: editableFile.meta,\n },\n });\n if (result.data != null) {\n const { uploads, result: metaContext, isReviewSent } = result.data;\n\n let newFileId: string | undefined;\n\n const itemUpload: AXPFileListItem = uploads[0];\n if (!(itemUpload.source?.kind == 'fileId' && itemUpload.source.value == editableFile.fileId)) {\n const f = await this.fileService.save({\n category: 'document',\n file: itemUpload.source?.value as File,\n //refId: folderId,\n refId: node.parentId ?? '',\n refType: `${RootConfig.module.name}.${RootConfig.entities.folder.name}`,\n name: itemUpload.name,\n });\n await this.fileService.commit(f.fileId);\n\n newFileId = f.fileId;\n }\n\n if (newFileId != undefined || metaContext != editableFile.meta) {\n const newVersion = docType.enableVersioning ? (editableFile.version ?? 1) + 1 : undefined;\n let reviewRecordID = undefined;\n if (isReviewSent) {\n const comp = await import('../workflow/document-review/document-send-to-review-popup.component').then(\n (m) => m.AXMDocumentSendToReviewPopupComponent,\n );\n const result = await this.popupService.open(comp, {\n title: await this.translate.translateAsync('document-review.confirm-send.title', {\n scope: 'document-management',\n params: { title: editableFile.name },\n }),\n data: {\n documentId: editableFile.id,\n documentTitle: editableFile.name,\n },\n });\n\n if (result.data != null && result.data.confirmed) {\n reviewRecordID = await this.reviewService.insertOne({\n documentId: node.id,\n version: newVersion ?? 0,\n reviewStatus: 'Pending',\n modifiedBy: this.sessionService.user as AXPApplicationUserReference,\n reviewerId: result.data.assignedTo,\n });\n }\n }\n\n await this.documentService.updateOne(node.id, {\n fileId: newFileId ?? editableFile.fileId,\n meta: metaContext,\n version: newVersion,\n reviewRecordId: reviewRecordID,\n status: docType.requiresReview ? (isReviewSent ? 'PendingReview' : 'Draft') : 'Completed',\n });\n }\n\n return true;\n } else {\n return false;\n }\n } else {\n return false;\n }\n }\n\n //#endregion\n\n //#region ---- Dialog Operations ----\n\n /**\n * Shows share dialog for a node\n */\n async showShareDialog(node) {\n const comp = (await import('./components/share-dialog/share-dialog.component')).AXMShareDialogComponent;\n const popup = await this.popupService.open(comp, {\n title: 'Share',\n data: {\n node,\n },\n });\n if (popup.data?.result) {\n // Handle the share action with popup.data.data\n }\n }\n /**\n * Shows share via email dialog for a node\n */\n async showShareWithEmailDialog(node) {\n const comp = (await import('./components/share-email-dialog/share-email-dialog.component'))\n .AXMShareEmailDialogComponent;\n const popup = await this.popupService.open(comp, {\n title: 'Share via Email',\n data: {\n node,\n },\n });\n if (popup.data?.result) {\n // Handle the share via email action with popup.data.data\n }\n }\n /**\n * Shows link dialog for a node\n */\n async showLinkDialog(node) {\n const comp = (await import('./components/link-dialog/link-dialog.component')).AXMLinkDialogComponent;\n const popup = await this.popupService.open(comp, {\n title: 'Share Link',\n data: {\n node,\n },\n });\n if (popup.data?.result) {\n // Handle the link generation with popup.data.data\n }\n }\n /**\n * Shows lock dialog for a document\n */\n async showLockDialog(node) {\n const result = await this.workflow.execute('lock-popup', {\n refId: node.id,\n refType: `${RootConfig.module.name}.${node.type === 'folder' ? RootConfig.entities.folder.name : RootConfig.entities.document.name}`,\n });\n const isCanceled = result.getOutput('isCanceled');\n return !isCanceled;\n }\n /**\n * Shows unlock dialog for a document\n */\n async showUnlockDialog(node) {\n const result = await this.workflow.execute('unlock-confirm', {\n refId: node.id,\n refType: `${RootConfig.module.name}.${node.type === 'folder' ? RootConfig.entities.folder.name : RootConfig.entities.document.name}`,\n });\n const unlocked = result.getOutput('unlocked');\n return unlocked;\n }\n /**\n * Shows folder edit dialog\n */\n async showFolderEditDialog(node) {\n const comp = (await import('../document-explorer/components/create-folder-dialog/create-folder-dialog.component'))\n .AXMCreateFolderDialog;\n const popup = await this.popupService.open(comp, {\n title: await this.translate.translateAsync('@document-management:actions.update-folder'),\n data: {\n defaultValue: node,\n },\n });\n return popup.data?.result;\n }\n /**\n * Shows create folder dialog\n */\n async showCreateFolderDialog(parentId) {\n const comp = (await import('../document-explorer/components/create-folder-dialog/create-folder-dialog.component'))\n .AXMCreateFolderDialog;\n const popup = await this.popupService.open(comp, {\n title: await this.translate.translateAsync('@document-management:actions.create-folder'),\n data: {\n parentId,\n },\n });\n return popup.data?.folder;\n }\n /**\n * Shows rename popup for a node\n */\n async showRenamePopup(node) {\n const comp = (await import('../document-explorer/components/rename-node-dialog/rename-node-dialog.component'))\n .AXMRenameNodeDialog;\n const popup = await this.popupService.open(comp, {\n title: 't(\"actions.rename\")',\n data: {\n node,\n },\n });\n return popup.data?.result;\n }\n /**\n * Shows delete nodes confirmation dialog\n */\n async showDeleteNodesDialog(nodeIds) {\n const result = await this.workflow.execute('delete-entity', {\n entities: nodeIds.map((node) => ({\n source: `${RootConfig.module.name}.${node.type == 'folder' ? RootConfig.entities.folder.name : RootConfig.entities.document.name}`,\n ids: [node.id],\n })),\n });\n return result.getOutput('result') ?? false;\n }\n /**\n * Shows choose file dialog\n */\n async showChooseFileDialog(scope) {\n const comp = (await import('../drive-choose/drive-choose.component')).AXMDocumentDriveChooseComponent;\n const result = await this.popupService.open(comp, {\n title: await this.translate.translateAsync('@document-management:actions.choose-from-drive'),\n data: {\n scope: scope,\n },\n });\n if (result.data?.result) {\n return castArray(result.data.items);\n }\n return [];\n }\n /**\n * Shows file viewer popup\n */\n async showFileViewerPopup(node, options) {\n const isVirtualFolder = node.parentId === 'virtual';\n const parentFolderName = isVirtualFolder ? 'Virtual' : (await this.folderService.getOne(node.parentId)).name;\n const documents = isVirtualFolder\n ? (options?.folderVirtualFiles ?? [])\n : ((await this.folderService.getOne(node.parentId)).documents ?? []);\n const nodes = await Promise.all(documents\n .filter((item) => {\n if (!item.name)\n return false;\n const ext = item.name.split('.').pop()?.toLowerCase();\n return ext && ['jpg', 'jpeg', 'png', 'gif', 'bmp', 'webp', 'pdf'].includes(ext);\n })\n .map((doc) => this.mapDocumentToMediaViewerData(doc)));\n const comp = (await import('./components/file-viewer-popup/file-viewer-popup.component'))\n .AXMFileViewerPopupComponent;\n await this.popupService.open(comp, {\n title: parentFolderName,\n data: {\n nodes,\n index: isVirtualFolder\n ? (options?.folderVirtualFiles?.findIndex((f) => f.id === node.id) ?? 0)\n : (options?.index ?? 0),\n },\n });\n }\n /**\n * Updates a file name\n */\n async updateFileName(node, name) {\n if (node.storageType == 'physical') {\n return this.mapFileToNode(await this.documentService.updateOne(node.id, { name }));\n }\n else {\n node.name = name;\n return node;\n }\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: AXMDocumentManagerService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }\n static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: AXMDocumentManagerService, providedIn: 'root' }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: AXMDocumentManagerService, decorators: [{\n type: Injectable,\n args: [{\n providedIn: 'root',\n }]\n }] });\n//#endregion\n//#region ---- Scoped Drive Service ----\n/**\n * Scoped drive service for specific platform scopes\n */\nexport class ScopedDriveService {\n //#region ---- Constructor ----\n constructor(parent, scope, options) {\n this.parent = parent;\n this.scope = scope;\n this.options = options;\n this.validateScopeOptions();\n }\n //#endregion\n //#region ---- Validation Methods ----\n /**\n * Validates the scope options are appropriate for the selected scope\n */\n validateScopeOptions() {\n switch (this.scope) {\n case AXPPlatformScope.Tenant:\n if (!this.options?.tenantId) {\n throw new Error('Tenant ID is required for tenant scope');\n }\n break;\n case AXPPlatformScope.User:\n if (!this.options?.tenantId || !this.options?.userId) {\n throw new Error('Both Tenant ID and User ID are required for user scope');\n }\n break;\n }\n }\n //#endregion\n //#region ---- Scoped Operations ----\n /**\n * Gets root folder for this scope\n */\n async getRoot() {\n return this.parent.getRoot(this.scope, this.options);\n }\n /**\n * Gets folder for this scope\n */\n async getFolder(folderId) {\n return this.parent.getFolder(this.scope, folderId, this.options);\n }\n /**\n * Creates folder in this scope\n */\n async createFolder(data) {\n const folderData = {\n ...data,\n tenantId: this.options?.tenantId,\n userId: this.options?.userId,\n };\n return this.parent.createFolder(folderData);\n }\n /**\n * Updates folder in this scope\n */\n async updateFolder(folderId, data) {\n return this.parent.updateFolder(folderId, data);\n }\n /**\n * Deletes folder in this scope\n */\n async deleteFolder(folderId) {\n return this.parent.deleteFolder(folderId);\n }\n /**\n * Gets available space for this scope\n */\n async getAvailableSpace() {\n return this.parent.getAvailableSpace();\n }\n /**\n * Searches folders in this scope\n */\n async searchFolders(searchTerm) {\n this.validateScopeOptions();\n return this.parent.searchFolders(searchTerm, this.scope, this.options);\n }\n /**\n * Searches files in this scope\n */\n async searchFiles(searchTerm) {\n this.validateScopeOptions();\n return this.parent.searchFiles(searchTerm, this.scope, this.options);\n }\n /**\n * Searches nodes in this scope\n */\n async searchNodes(searchTerm) {\n this.validateScopeOptions();\n return this.parent.searchNodes(searchTerm, this.scope, this.options);\n }\n /**\n * Creates a copy of a node in this scope\n */\n async copy(node) {\n this.validateScopeOptions();\n return this.parent.copy(node);\n }\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG9jdW1lbnQtbWFuYWdlci5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tb2R1bGVzL2RvY3VtZW50LW1hbmFnZW1lbnQvc3JjL2xpYi9mZWF0dXJlcy9zaGFyZWQvZG9jdW1lbnQtbWFuYWdlci5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLCtCQUErQjtBQUUvQixPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFFNUQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQzFELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQzFELE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ2hFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQy9ELE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ25ELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFFekMsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ2xELE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ2hFLE9BQU8sRUFBZ0QsZ0JBQWdCLEVBQW1CLE1BQU0sdUJBQXVCLENBQUM7QUFDeEgsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUN0QyxPQUFPLEVBSUwsa0JBQWtCLEVBQ2xCLHNCQUFzQixFQUN0QixnQkFBZ0IsRUFDaEIsZ0JBQWdCLEdBQ2pCLE1BQU0sZ0JBQWdCLENBQUM7QUFReEIsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0seUNBQXlDLENBQUM7O0FBb0dyRixZQUFZO0FBRVosOENBQThDO0FBRTlDOztHQUVHO0FBSUgsTUFBTSxPQUFPLHlCQUF5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O09BRUc7SUFDSCxLQUFLLENBQUMsV0FBVyxDQUFDLFVBQWtCO1FBQ2xDLElBQUksQ0FBQyxvQkFBb0IsRUFBRSxDQUFDO1FBQzVCLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxXQUFXLENBQUMsVUFBVSxFQUFFLElBQUksQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQ3ZFLENBQUM7SUFFRDs7T0FFRztJQUNILEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBNkI7UUFDdEMsSUFBSSxDQUFDLG9CQUFvQixFQUFFLENBQUM7UUFDNUIsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUNoQyxDQUFDO0NBR0YiLCJzb3VyY2VzQ29udGVudCI6WyIvLyNyZWdpb24gLS0tLSAgIEltcG9ydHMgICAtLS0tXG5cbmltcG9ydCB7IEFYRGlhbG9nU2VydmljZSB9IGZyb20gJ0BhY29yZXgvY29tcG9uZW50cy9kaWFsb2cnO1xuaW1wb3J0IHsgQVhNZWRpYVZpZXdlckRhdGEgfSBmcm9tICdAYWNvcmV4L2NvbXBvbmVudHMvbWVkaWEtdmlld2VyJztcbmltcG9ydCB7IEFYUG9wdXBTZXJ2aWNlIH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL3BvcHVwJztcbmltcG9ydCB7IEFYUFNlc3Npb25TZXJ2aWNlIH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9hdXRoJztcbmltcG9ydCB7IEFYUEZpbGVTdG9yYWdlU2VydmljZSB9IGZyb20gJ0BhY29yZXgvcGxhdGZvcm0vY29tbW9uJztcbmltcG9ydCB7IEFYUFdvcmtmbG93U2VydmljZSB9IGZyb20gJ0BhY29yZXgvcGxhdGZvcm0vd29ya2Zsb3cnO1xuaW1wb3J0IHsgaW5qZWN0LCBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBSb290Q29uZmlnIH0gZnJvbSAnLi4vLi4vY29uc3QnO1xuXG5pbXBvcnQgeyBBWEZpbGVTZXJ2aWNlIH0gZnJvbSAnQGFjb3JleC9jb3JlL2ZpbGUnO1xuaW1wb3J0IHsgQVhUcmFuc2xhdGlvblNlcnZpY2UgfSBmcm9tICdAYWNvcmV4L2NvcmUvdHJhbnNsYXRpb24nO1xuaW1wb3J0IHsgQVhQQXBwbGljYXRpb25Vc2VyUmVmZXJlbmNlLCBBWFBGaWxlTGlzdEl0ZW0sIEFYUFBsYXRmb3JtU2NvcGUsIEFYUFF1ZXJ5UmVxdWVzdCB9IGZyb20gJ0BhY29yZXgvcGxhdGZvcm0vY29yZSc7XG5pbXBvcnQgeyBjYXN0QXJyYXkgfSBmcm9tICdsb2Rhc2gtZXMnO1xuaW1wb3J0IHtcbiAgQVhNRG9jdW1lbnRNYW5hZ2VtZW50RG9jdW1lbnRFbnRpdHlNb2RlbCxcbiAgQVhNRG9jdW1lbnRNYW5hZ2VtZW50Rm9sZGVyQ3JlYXRlRHRvLFxuICBBWE1Eb2N1bWVudE1hbmFnZW1lbnRGb2xkZXJFbnRpdHlNb2RlbCxcbiAgQVhNRG9jdW1lbnRTZXJ2aWNlLFxuICBBWE1Eb2N1bWVudFR5cGVTZXJ2aWNlLFxuICBBWE1Gb2xkZXJTZXJ2aWNlLFxuICBBWE1SZXZpZXdTZXJ2aWNlLFxufSBmcm9tICcuLi8uLi9lbnRpdGllcyc7XG5pbXBvcnQge1xuICBBWE1Eb2N1bWVudEV4cGxvcmVyQnJvd3NlTW9kZSxcbiAgQVhNRG9jdW1lbnRFeHBsb3Jlck5vZGUsXG4gIENyZWF0ZUZpbGVEdG8sXG4gIFVwZGF0ZUZpbGVEdG8sXG4gIFVwZGF0ZUZvbGRlckR0byxcbn0gZnJvbSAnLi9kb2N1bWVudC1tYW5hZ2VyLnR5cGVzJztcbmltcG9ydCB7IERvY3VtZW50QXR0YWNobWVudHNTZXJ2aWNlIH0gZnJvbSAnLi9zZXJ2aWNlcy9kb2N1bWVudC1hdHRhY2htZW50cy5zZXJ2aWNlJztcbi8vI2VuZHJlZ2lvblxuXG4vLyNyZWdpb24gLS0tLSAgIEludGVyZmFjZSBEZWZpbml0aW9ucyAgIC0tLS1cblxuLyoqXG4gKiBJbnRlcmZhY2UgZGVmaW5pbmcgdGhlIGNvbnRyYWN0IGZvciBkb2N1bWVudCBkcml2ZSBzZXJ2aWNlXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQVhNRG9jdW1lbnRNYW5hZ2VyU2VydmljZUludGVyZmFjZSB7XG4gIC8vIFNjb3BlIG1hbmFnZW1lbnRcbiAgc2NvcGUoc2NvcGU6IEFYUFBsYXRmb3JtU2NvcGUsIG9wdGlvbnM/OiB7IHRlbmFudElkPzogc3RyaW5nOyB1c2VySWQ/OiBzdHJpbmcgfSk6IFNjb3BlZERyaXZlU2VydmljZTtcblxuICAvLyBSb290IGFuZCBmb2xkZXIgb3BlcmF0aW9uc1xuICBnZXRSb290KFxuICAgIHNjb3BlOiBBWFBQbGF0Zm9ybVNjb3BlLFxuICAgIG9wdGlvbnM/OiB7IHRlbmFudElkPzogc3RyaW5nOyB1c2VySWQ/OiBzdHJpbmcgfSxcbiAgKTogUHJvbWlzZTx7XG4gICAgcGF0aDogQVhNRG9jdW1lbnRFeHBsb3Jlck5vZGVbXTtcbiAgICByZXN1bHQ6IEFYTURvY3VtZW50RXhwbG9yZXJOb2RlO1xuICB9PjtcbiAgZ2V0Rm9sZGVyKFxuICAgIHNjb3BlOiBBWFBQbGF0Zm9ybVNjb3BlLFxuICAgIGZvbGRlcklkOiBzdHJpbmcsXG4gICk6IFByb21pc2U8e1xuICAgIHBhdGg6IEFYTURvY3VtZW50RXhwbG9yZXJOb2RlW107XG4gICAgcmVzdWx0OiBBWE1Eb2N1bWVudEV4cGxvcmVyTm9kZTtcbiAgfT47XG4gIGNyZWF0ZUZvbGRlcihkYXRhOiBBWE1Eb2N1bWVudE1hbmFnZW1lbnRGb2xkZXJDcmVhdGVEdG8pOiBQcm9taXNlPEFYTURvY3VtZW50RXhwbG9yZXJOb2RlPjtcbiAgdXBkYXRlRm9sZGVyKGZvbGRlcklkOiBzdHJpbmcsIGRhdGE6IFVwZGF0ZUZvbGRlckR0byk6IFByb21pc2U8QVhNRG9jdW1lbnRFeHBsb3Jlck5vZGU+O1xuICBkZWxldGVGb2xkZXIoZm9sZGVySWQ6IHN0cmluZyk6IFByb21pc2U8dm9pZD47XG4gIGdldEF2YWlsYWJsZVNwYWNlKCk6IFByb21pc2U8bnVtYmVyPjtcblxuICAvLyBGaWxlIG9wZXJhdGlvbnNcbiAgY3JlYXRlRmlsZShkYXRhOiBDcmVhdGVGaWxlRHRvKTogUHJvbWlzZTxBWE1Eb2N1bWVudEV4cGxvcmVyTm9kZT47XG4gIHVwZGF0ZUZpbGUoZmlsZUlkOiBzdHJpbmcsIGRhdGE6IFVwZGF0ZUZpbGVEdG8pOiBQcm9taXNlPEFYTURvY3VtZW50RXhwbG9yZXJOb2RlPjtcbiAgZGVsZXRlRmlsZShmaWxlSWQ6IHN0cmluZyk6IFByb21pc2U8dm9pZD47XG5cbiAgLy8gTm9kZSBvcGVyYXRpb25zXG4gIGRlbGV0ZU5vZGVzKG5vZGVJZHM6IEFYTURvY3VtZW50RXhwbG9yZXJOb2RlW10pOiBQcm9taXNlPHZvaWQ+O1xuICBjb3B5KG5vZGU6IEFYTURvY3VtZW50RXhwbG9yZXJOb2RlKTogUHJvbWlzZTxBWE1Eb2N1bWVudEV4cGxvcmVyTm9kZT47XG5cbiAgLy8gRGlhbG9nIG9wZXJhdGlvbnNcbiAgc2hvd0NyZWF0ZUZvbGRlckRpYWxvZyhwYXJlbnRJZD86IHN0cmluZyk6IFByb21pc2U8QVhNRG9jdW1lbnRFeHBsb3Jlck5vZGUgfCBudWxsPjtcbiAgc2hvd0RlbGV0ZU5vZGVzRGlhbG9nKG5vZGVJZHM6IEFYTURvY3VtZW50RXhwbG9yZXJOb2RlW10pOiBQcm9taXNlPGJvb2xlYW4+O1xuICBzaG93UmVuYW1lUG9wdXAobm9kZTogQVhNRG9jdW1lbnRFeHBsb3Jlck5vZGUpOiBQcm9taXNlPEFYTURvY3VtZW50RXhwbG9yZXJOb2RlIHwgdW5kZWZpbmVkPjtcblxuICAvLyBTZWFyY2ggb3BlcmF0aW9uc1xuICBzZWFyY2hGb2xkZXJzKFxuICAgIHNlYXJjaFRlcm06IHN0cmluZyxcbiAgICBzY29wZTogQVhQUGxhdGZvcm1TY29wZSxcbiAgICBvcHRpb25zPzogeyB0ZW5hbnRJZD86IHN0cmluZzsgdXNlcklkPzogc3RyaW5nIH0sXG4gICk6IFByb21pc2U8QVhNRG9jdW1lbnRFeHBsb3Jlck5vZGVbXT47XG5cbiAgc2VhcmNoRmlsZXMoXG4gICAgc2VhcmNoVGVybTogc3RyaW5nLFxuICAgIHNjb3BlOiBBWFBQbGF0Zm9ybVNjb3BlLFxuICAgIG9wdGlvbnM/OiB7IHRlbmFudElkPzogc3RyaW5nOyB1c2VySWQ/OiBzdHJpbmcgfSxcbiAgKTogUHJvbWlzZTxBWE1Eb2N1bWVudEV4cGxvcmVyTm9kZVtdPjtcblxuICBzZWFyY2hOb2RlcyhcbiAgICBzZWFyY2hUZXJtOiBzdHJpbmcsXG4gICAgc2NvcGU6IEFYUFBsYXRmb3JtU2NvcGUsXG4gICAgb3B0aW9ucz86IHsgdGVuYW50SWQ/OiBzdHJpbmc7IHVzZXJJZD86IHN0cmluZyB9LFxuICApOiBQcm9taXNlPEFYTURvY3VtZW50RXhwbG9yZXJOb2RlW10+O1xuXG4gIC8vIEZpbGUgYnJvd3Npbmcgb3BlcmF0aW9uc1xuICBzaG93Q2hvb3NlRmlsZURpYWxvZyhyb290OiBzdHJpbmcpOiBQcm9taXNlPEFYTURvY3VtZW50RXhwbG9yZXJOb2RlW10+O1xuXG4gIC8vIEZpbGUgYWN0aW9uc1xuICBtb3ZlVG8ob3B0aW9uczoge1xuICAgIG5vZGU6IEFYTURvY3VtZW50RXhwbG9yZXJOb2RlO1xuICAgIGJyb3dzZU1vZGU/OiBBWE1Eb2N1bWVudEV4cGxvcmVyQnJvd3NlTW9kZTtcbiAgICBtdWx0aXBsZT86IGJvb2xlYW47XG4gIH0pOiBQcm9taXNlPGJvb2xlYW4+O1xuXG4gIGNvcHlUbyhvcHRpb25zOiB7XG4gICAgbm9kZTogQVhNRG9jdW1lbnRFeHBsb3Jlck5vZGU7XG4gICAgYnJvd3NlTW9kZT86IEFYTURvY3VtZW50RXhwbG9yZXJCcm93c2VNb2RlO1xuICAgIG11bHRpcGxlPzogYm9vbGVhbjtcbiAgfSk6IFByb21pc2U8Ym9vbGVhbj47XG5cbiAgc2hvd0ZpbGVWaWV3ZXJQb3B1cChub2RlOiBBWE1Eb2N1bWVudEV4cGxvcmVyTm9kZSk6IFByb21pc2U8dm9pZD47XG4gIG9wZW5GaWxlKG5vZGU6IEFYTURvY3VtZW50RXhwbG9yZXJOb2RlKTogUHJvbWlzZTx2b2lkPjtcblxuICAvLyBEYXRhIHJldHJpZXZhbCBvcGVyYXRpb25zXG4gIGdldEFsbEZvbGRlcnMoKTogUHJvbWlzZTxBWE1Eb2N1bWVudEV4cGxvcmVyTm9kZVtdPjtcbiAgZ2V0QWxsRmlsZXMocmVxdWVzdD86IEFYUFF1ZXJ5UmVxdWVzdCk6IFByb21pc2U8QVhNRG9jdW1lbnRFeHBsb3Jlck5vZGVbXT47XG4gIGdldEFsbE5vZGVzKCk6IFByb21pc2U8QVhNRG9jdW1lbnRFeHBsb3Jlck5vZGVbXT47XG4gIGRvd25sb2FkRmlsZShub2RlOiBBWE1Eb2N1bWVudEV4cGxvcmVyTm9kZSk6IFByb21pc2U8dm9pZD47XG5cbiAgLy8gU2hhcmluZyBhbmQgY29sbGFib3JhdGlvbiBvcGVyYXRpb25zXG4gIHNob3dTaGFyZURpYWxvZyhub2RlOiBBWE1Eb2N1bWVudEV4cGxvcmVyTm9kZSk6IFByb21pc2U8dm9pZD47XG4gIHNob3dTaGFyZVdpdGhFbWFpbERpYWxvZyhub2RlOiBBWE1Eb2N1bWVudEV4cGxvcmVyTm9kZSk6IFByb21pc2U8dm9pZD47XG4gIHNob3dMaW5rRGlhbG9nKG5vZGU6IEFYTURvY3VtZW50RXhwbG9yZXJOb2RlKTogUHJvbWlzZTx2b2lkPjtcbiAgc2hvd0xvY2tEaWFsb2cobm9kZTogQVhNRG9jdW1lbnRFeHBsb3Jlck5vZGUpOiBQcm9taXNlPGJvb2xlYW4+O1xuICBzaG93VW5sb2NrRGlhbG9nKG5vZGU6IEFYTURvY3VtZW50RXhwbG9yZXJOb2RlKTogUHJvbWlzZTxib29sZWFuPjtcbiAgc2hvd0ZvbGRlckVkaXREaWFsb2cobm9kZTogQVhNRG9jdW1lbnRFeHBsb3Jlck5vZGUpOiBQcm9taXNlPGJvb2xlYW4+O1xuICB1cGRhdGVGaWxlTmFtZShub2RlOiBBWE1Eb2N1bWVudEV4cGxvcmVyTm9kZSwgbmFtZTogc3RyaW5nKTogUHJvbWlzZTxBWE1Eb2N1bWVudEV4cGxvcmVyTm9kZT47XG59XG5cbi8vI2VuZHJlZ2lvblxuXG4vLyNyZWdpb24gLS0tLSAgIFNlcnZpY2UgSW1wbGVtZW50YXRpb24gICAtLS0tXG5cbi8qKlxuICogU2VydmljZSBmb3IgaGFuZGxpbmcgZG9jdW1lbnQgZHJpdmUgb3BlcmF0aW9uc1xuICovXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290Jyxcbn0pXG5leHBvcnQgY2xhc3MgQVhNRG9jdW1lbnRNYW5hZ2VyU2VydmljZSBpbXBsZW1lbnRzIEFYTURvY3VtZW50TWFuYWdlclNlcnZpY2VJbnRlcmZhY2Uge1xuICAvLyNyZWdpb24gLS0tLSAgIFNlcnZpY2VzICYgRGVwZW5kZW5jaWVzICAgLS0tLVxuXG4gIHByb3RlY3RlZCBmb2xkZXJTZXJ2aWNlID0gaW5qZWN0KEFYTUZvbGRlclNlcnZpY2UpO1xuICBwcm90ZWN0ZWQgc2Vzc2lvblNlcnZpY2UgPSBpbmplY3QoQVhQU2Vzc2lvblNlcnZpY2UpO1xuICBwcm90ZWN0ZWQgZG9jdW1lbnRTZXJ2aWNlID0gaW5qZWN0KEFYTURvY3VtZW50U2VydmljZSk7XG4gIHByb3RlY3RlZCBkb2N1bWVudFR5cGVTZXJ2aWNlID0gaW5qZWN0KEFYTURvY3VtZW50VHlwZVNlcnZpY2UpO1xuICBwcm90ZWN0ZWQgcG9wdXBTZXJ2aWNlID0gaW5qZWN0KEFYUG9wdXBTZXJ2aWNlKTtcbiAgcHJvdGVjdGVkIGRpYWxvZ1NlcnZpY2UgPSBpbmplY3QoQVhEaWFsb2dTZXJ2aWNlKTtcbiAgcHJvdGVjdGVkIGZpbGVTZXJ2aWNlID0gaW5qZWN0KEFYUEZpbGVTdG9yYWdlU2VydmljZSk7XG4gIHByb3RlY3RlZCBmaWxlTWFuYWdlclNlcnZpY2UgPSBpbmplY3QoQVhGaWxlU2VydmljZSk7XG4gIHByb3RlY3RlZCB3b3JrZmxvdyA9IGluamVjdChBWFBXb3JrZmxvd1NlcnZpY2UpO1xuICBwcm90ZWN0ZWQgdHJhbnNsYXRlID0gaW5qZWN0KEFYVHJhbnNsYXRpb25TZXJ2aWNlKTtcblxuICBwcm90ZWN0ZWQgcmV2aWV3U2VydmljZSA9IGluamVjdChBWE1SZXZpZXdTZXJ2aWNlKTtcblxuICBwcm90ZWN0ZWQgYXR0YWNobWVudHNTZXJ2aWNlID0gaW5qZWN0KERvY3VtZW50QXR0YWNobWVudHNTZXJ2aWNlKTtcblxuICAvLyNlbmRyZWdpb25cblxuICAvLyNyZWdpb24gLS0tLSAgIFByaXZhdGUgUHJvcGVydGllcyAgIC0tLS1cblxuICBwcml2YXRlIHNjb3BlZERyaXZlQ2FjaGU6IE1hcDxBWFBQbGF0Zm9ybVNjb3BlLCBTY29wZWREcml2ZVNlcnZpY2U+ID0gbmV3IE1hcCgpO1xuXG4gIC8vI2VuZHJlZ2lvblxuXG4gIC8vI3JlZ2lvbiAtLS0tICAgU2NvcGUgTWFuYWdlbWVudCBNZXRob2RzICAgLS0tLVxuXG4gIC8qKlxuICAgKiBDcmVhdGVzIGEgc2NvcGVkIGRyaXZlIHNlcnZpY2UgZm9yIHRoZSBzcGVjaWZpZWQgcGxhdGZvcm0gc2NvcGVcbiAgICovXG4gIHNjb3BlKHNjb3BlOiBBWFBQbGF0Zm9ybVNjb3BlLCBvcHRpb25zPzogeyB0ZW5hbnRJZD86IHN0cmluZzsgdXNlcklkPzogc3RyaW5nIH0pOiBTY29wZWREcml2ZVNlcnZpY2Uge1xuICAgIGNvbnN0IGNhY2hlS2V5ID0gdGhpcy5nZXRTY29wZUNhY2hlS2V5KHNjb3BlLCBvcHRpb25zKTtcbiAgICBpZiAoIXRoaXMuc2NvcGVkRHJpdmVDYWNoZS5oYXMoY2FjaGVLZXkpKSB7XG4gICAgICB0aGlzLnNjb3BlZERyaXZlQ2FjaGUuc2V0KGNhY2hlS2V5LCBuZXcgU2NvcGVkRHJpdmVTZXJ2aWNlKHRoaXMsIHNjb3BlLCBvcHRpb25zKSk7XG4gICAgfVxuICAgIHJldHVybiB0aGlzLnNjb3BlZERyaXZlQ2FjaGUuZ2V0KGNhY2hlS2V5KSE7XG4gIH1cblxuICAvKipcbiAgICogR2VuZXJhdGVzIGEgY2FjaGUga2V5IGZvciB0aGUgc2NvcGVkIGRyaXZlIHNlcnZpY2VcbiAgICovXG4gIHByaXZhdGUgZ2V0U2NvcGVDYWNoZUtleShcbiAgICBzY29wZTogQVhQUGxhdGZvcm1TY29wZSxcbiAgICBvcHRpb25zPzogeyB0ZW5hbnRJZD86IHN0cmluZzsgdXNlcklkPzogc3RyaW5nIH0sXG4gICk6IEFYUFBsYXRmb3JtU2NvcGUge1xuICAgIHJldHVybiBzY29wZTtcbiAgfVxuXG4gIC8vI2VuZHJlZ2lvblxuXG4gIC8vI3JlZ2lvbiAtLS0tICAgUHJpdmF0ZSBIZWxwZXIgTWV0aG9kcyAgIC0tLS1cblxuICAvKipcbiAgICogR2V0cyB0aGUgcGxhdGZvcm0gcm9vdCBmb2xkZXIgKHRvcC1sZXZlbCBmb2xkZXIpXG4gICAqL1xuICBwcml2YXRlIGFzeW5jIGdldFBsYXRmb3JtUm9vdEZvbGRlcigpOiBQcm9taXNlPEFYTURvY3VtZW50TWFuYWdlbWVudEZvbGRlckVudGl0eU1vZGVsPiB7XG4gICAgY29uc3QgcmVzdWx0ID0gYXdhaXQgdGhpcy5mb2xkZXJTZXJ2aWNlLnF1ZXJ5KHtcbiAgICAgIHNraXA6IDAsXG4gICAgICB0YWtlOiAxLFxuICAgICAgZmlsdGVyOiB7XG4gICAgICAgIG9wZXJhdG9yOiBudWxsISxcbiAgICAgICAgbG9naWM6ICdhbmQnLFxuICAgICAgICBmaWx0ZXJzOiBbXG4gICAgICAgICAgeyBmaWVsZDogJ3BhcmVudElkJywgb3BlcmF0b3I6IHsgdHlwZTogJ2lzTnVsbCcgfSB9LFxuICAgICAgICAgIHsgZmllbGQ6ICd0ZW5hbnRJZCcsIG9wZXJhdG9yOiB7IHR5cGU6ICdpc051bGwnIH0gfSxcbiAgICAgICAgICB7IGZpZWxkOiAndXNlcklkJywgb3BlcmF0b3I6IHsgdHlwZTogJ2lzTnVsbCcgfSB9LFxuICAgICAgICBdLFxuICAgICAgfSxcbiAgICB9KTtcblxuICAgIGlmIChyZXN1bHQuaXRlbXMubGVuZ3RoID09PSAwKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ1BsYXRmb3JtIHJvb3QgZm9sZGVyIG5vdCBmb3VuZCcpO1xuICAgIH1cblxuICAgIHJldHVybiByZXN1bHQuaXRlbXNbMF07XG4gIH1cblxuICAvKipcbiAgICogR2V0cyB0aGUgdGVuYW50IHJvb3QgZm9sZGVyXG4gICAqL1xuICBwcml2YXRlIGFzeW5jIGdldFRlbmFudFJvb3RGb2xkZXIoXG4gICAgcm9vdEZvbGRlcjogQVhNRG9jdW1lbnRNYW5hZ2VtZW50Rm9sZGVyRW50aXR5TW9kZWwsXG4gICAgdGVuYW50SWQ6IHN0cmluZyxcbiAgKTogUHJvbWlzZTxBWE1Eb2N1bWVudE1hbmFnZW1lbnRGb2xkZXJFbnRpdHlNb2RlbD4ge1xuICAgIGlmICghdGVuYW50SWQpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignVGVuYW50IElEIGlzIHJlcXVpcmVkJyk7XG4gICAgfVxuXG4gICAgY29uc3QgcmVzdWx0ID0gYXdhaXQgdGhpcy5mb2xkZXJTZXJ2aWNlLnF1ZXJ5KHtcbiAgICAgIHNraXA6IDAsXG4gICAgICB0YWtlOiAxLFxuICAgICAgZmlsdGVyOiB7XG4gICAgICAgIG9wZXJhdG9yOiBudWxsISxcbiAgICAgICAgbG9naWM6ICdhbmQnLFxuICAgICAgICBmaWx0ZXJzOiBbXG4gICAgICAgICAge1xuICAgICAgICAgICAgZmllbGQ6ICdwYXJlbnRJZCcsXG4gICAgICAgICAgICBvcGVyYXRvcjogeyB0eXBlOiAnZXF1YWwnIH0sXG4gICAgICAgICAgICB2YWx1ZTogcm9vdEZvbGRlci5mb2xkZXJzPy5maW5kKChmKSA9PiBmLm5hbWUgPT09ICdUZW5hbnRzJyk/LmlkLFxuICAgICAgICAgIH0sXG4gICAgICAgICAgeyBmaWVsZDogJ3RlbmFudElkJywgb3BlcmF0b3I6IHsgdHlwZTogJ2VxdWFsJyB9LCB2YWx1ZTogdGVuYW50SWQgfSxcbiAgICAgICAgICB7IGZpZWxkOiAndXNlcklkJywgb3BlcmF0b3I6IHsgdHlwZTogJ2lzTnVsbCcgfSB9LFxuICAgICAgICBdLFxuICAgICAgfSxcbiAgICB9KTtcblxuICAgIGlmIChyZXN1bHQuaXRlbXMubGVuZ3RoID09PSAwKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ1RlbmFudCByb290IGZvbGRlciBub3QgZm91bmQnKTtcbiAgICB9XG5cbiAgICByZXR1cm4gcmVzdWx0Lml0ZW1zWzBdO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldHMgdGhlIHVzZXIgcm9vdCBmb2xkZXJcbiAgICovXG4gIHByaXZhdGUgYXN5bmMgZ2V0VXNlclJvb3RGb2xkZXIoXG4gICAgdGVuYW50Rm9sZGVySWQ6IHN0cmluZyxcbiAgICB0ZW5hbnRJZDogc3RyaW5nLFxuICAgIHVzZXJJZDogc3RyaW5nLFxuICApOiBQcm9taXNlPEFYTURvY3VtZW50TWFuYWdlbWVudEZvbGRlckVudGl0eU1vZGVsPiB7XG4gICAgaWYgKCF0ZW5hbnRJZCB8fCAhdXNlcklkKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ0JvdGggVGVuYW50IElEIGFuZCBVc2VyIElEIGFyZSByZXF1aXJlZCcpO1xuICAgIH1cblxuICAgIGNvbnN0IHJlc3VsdCA9IGF3YWl0IHRoaXMuZm9sZGVyU2VydmljZS5xdWVyeSh7XG4gICAgICBza2lwOiAwLFxuICAgICAgdGFrZTogMSxcbiAgICAgIGZpbHRlcjoge1xuICAgICAgICBvcGVyYXRvcjogbnVsbCEsXG4gICAgICAgIGxvZ2ljOiAnYW5kJyxcbiAgICAgICAgZmlsdGVyczogW1xuICAgICAgICAgIHsgZmllbGQ6ICdwYXJlbnRJZCcsIG9wZXJhdG9yOiB7IHR5cGU6ICdlcXVhbCcgfSwgdmFsdWU6IHRlbmFudEZvbGRlcklkIH0sXG4gICAgICAgICAgeyBmaWVsZDogJ3RlbmFudElkJywgb3BlcmF0b3I6IHsgdHlwZTogJ2VxdWFsJyB9LCB2YWx1ZTogdGVuYW50SWQgfSxcbiAgICAgICAgICB7IGZpZWxkOiAndXNlcklkJywgb3BlcmF0b3I6IHsgdHlwZTogJ2VxdWFsJyB9LCB2YWx1ZTogdXNlcklkIH0sXG4gICAgICAgIF0sXG4gICAgICB9LFxuICAgIH0pO1xuXG4gICAgaWYgKHJlc3VsdC5pdGVtcy5sZW5ndGggPT09IDApIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignVXNlciByb290IGZvbGRlciBub3QgZm91bmQnKTtcbiAgICB9XG5cbiAgICByZXR1cm4gcmVzdWx0Lml0ZW1zWzBdO1xuICB9XG5cbiAgLy8jZW5kcmVnaW9uXG5cbiAgLy8jcmVnaW9uIC0tLS0gICBNYXBwaW5nIE1ldGhvZHMgICAtLS0tXG5cbiAgLyoqXG4gICAqIE1hcHMgZm9sZGVyIGVudGl0eSB0byBkb2N1bWVudCBleHBsb3JlciBub2RlXG4gICAqL1xuICBwcml2YXRlIG1hcEZvbGRlckR0b1RvRm9sZGVyTm9kZSA9IChmb2xkZXI6IEFYTURvY3VtZW50TWFuYWdlbWVudEZvbGRlckVudGl0eU1vZGVsKTogQVhNRG9jdW1lbnRFeHBsb3Jlck5vZGUgPT4ge1xuICAgIHJldHVybiB7XG4gICAgICBpZDogZm9sZGVyLmlkISxcbiAgICAgIG5hbWU6IGZvbGRlci5uYW1lLFxuICAgICAgdHlwZTogJ2ZvbGRlcicsXG4gICAgICBwYXJlbnRJZDogZm9sZGVyLnBhcmVudElkIHx8IG51bGwsXG4gICAgICBtb2RpZmllZEF0OiBmb2xkZXIudXBkYXRlZEF0LFxuICAgICAgY3JlYXRlZEF0OiBmb2xkZXIuY3JlYXRlZEF0LFxuICAgICAgZGVzY3JpcHRpb246IGZvbGRlci5kZXNjcmlwdGlvbixcbiAgICAgIGNoaWxkcmVuQ291bnQ6IGZvbGRlci5ub2RlQ291bnQsXG4gICAgICBzaXplOiBmb2xkZXIuc2l6ZSxcbiAgICAgIGRvY3VtZW50VHlwZXM6IGZvbGRlci5kb2N1bWVudFR5cGVzIHx8IFtdLFxuICAgICAgc3RvcmFnZVR5cGU6ICdwaHlzaWNhbCcsXG4gICAgICBpbmhlcml0OiBmb2xkZXIuaW5oZXJpdCxcbiAgICAgIGNoaWxkcmVuOiBbXG4gICAgICAgIC4uLihmb2xkZXIuZm9sZGVycz8ubWFwKHRoaXMubWFwRm9sZGVyRHRvVG9Gb2xkZXJOb2RlKSB8fCBbXSksXG4gICAgICAgIC4uLihmb2xkZXIuZG9jdW1lbnRzPy5tYXAodGhpcy5tYXBGaWxlVG9Ob2RlKSB8fCBbXSksXG4gICAgICBdLFxuICAgIH07XG4gIH07XG5cbiAgLyoqXG4gICAqIE1hcHMgZmlsZSBlbnRpdHkgdG8gZG9jdW1lbnQgZXhwbG9yZXIgbm9kZVxuICAgKi9cbiAgcHJpdmF0ZSBtYXBGaWxlVG9Ob2RlKGZpbGU6IEFYTURvY3VtZW50TWFuYWdlbWVudERvY3VtZW50RW50aXR5TW9kZWwpOiBBWE1Eb2N1bWVudEV4cGxvcmVyTm9kZSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIGlkOiBmaWxlLmlkISxcbiAgICAgIG5hbWU6IGZpbGUubmFtZSxcbiAgICAgIHR5cGU6ICdmaWxlJyxcbiAgICAgIHBhcmVudElkOiBmaWxlLnBhcmVudElkLFxuICAgICAgbW9kaWZpZWRBdDogZmlsZS51cGRhdGVkQXQsXG4gICAgICBjcmVhdGVkQXQ6IGZpbGUuY3JlYXRlZEF0LFxuICAgICAgc2l6ZTogZmlsZS5zaXplLFxuICAgICAgZmlsZUlkOiBmaWxlLmZpbGVJZCxcbiAgICAgIHN0b3JhZ2VUeXBlOiAncGh5c2ljYWwnLFxuICAgICAgbWV0YTogZmlsZS5tZXRhID8gT2JqZWN0LnZhbHVlcyhmaWxlLm1ldGEpIDogdW5kZWZpbmVkLFxuICAgICAgZG9jdW1lbnRUeXBlczogZmlsZS5kb2N1bWVudFR5cGUgPyBbZmlsZS5kb2N1bWVudFR5cGVdIDogW10sXG4gICAgfTtcbiAgfVxuXG4gIC8qKlxuICAgKiBNYXBzIGRvY3VtZW50IHRvIG1lZGlhIHZpZXdlciBkYXRhXG4gICAqL1xuICBwcml2YXRlIGFzeW5jIG1hcERvY3VtZW50VG9NZWRpYVZpZXdlckRhdGEoXG4gICAgZG9jOiBBWE1Eb2N1bWVudE1hbmFnZW1lbnREb2N1bWVudEVudGl0eU1vZGVsIHwgQVhNRG9jdW1lbnRFeHBsb3Jlck5vZGUsXG4gICk6IFByb21pc2U8QVhNZWRpYVZpZXdlckRhdGE+IHtcbiAgICBpZiAoIWRvYy5maWxlSWQ/LnN0YXJ0c1dpdGgoJ2h0dHAnKSkge1xuICAgICAgY29uc3QgZmlsZUluZm8gPSBhd2FpdCB0aGlzLmZpbGVTZXJ2aWNlLmdldEluZm8oZG9jLmZpbGVJZCEpO1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgaWQ6IGRvYy5pZCA/PyAnJyxcbiAgICAgICAgbmFtZTogZG9jLm5hbWUsXG4gICAgICAgIHR5cGU6IGRvYy5uYW1lLmVuZHNXaXRoKCcucGRmJykgPyAncGRmJyA6ICdpbWFnZScsXG4gICAgICAgIHVybDogZmlsZUluZm8udXJsID8/ICcnLFxuICAgICAgICBzaXplOiBkb2Muc2l6ZS50b1N0cmluZygpLFxuICAgICAgICB0aHVtYm5haWw6IGZpbGVJbmZvLnVybCA/PyAnJyxcbiAgICAgIH07XG4gICAgfVxuXG4gICAgcmV0dXJuIHtcbiAgICAgIGlkOiBkb2MuaWQgPz8gJycsXG4gICAgICBuYW1lOiBkb2MubmFtZSxcbiAgICAgIHR5cGU6IChkb2MgYXMgYW55KS5tZXRhPy5bJ3R5cGUnXSA/PyAnaW1hZ2UnLFxuICAgICAgdXJsOiBkb2MuZmlsZUlkID8/ICcnLFxuICAgICAgc2l6ZTogZG9jLnNpemUudG9TdHJpbmcoKSxcbiAgICAgIHRodW1ibmFpbDogZG9jLmZpbGVJZCA/PyAnJyxcbiAgICB9O1xuICB9XG5cbiAgLy8jZW5kcmVnaW9uXG5cbiAgLy8jcmVnaW9uIC0tLS0gICBVdGlsaXR5IE1ldGhvZHMgICAtLS0tXG5cbiAgLyoqXG4gICAqIEJ1aWxkcyBuYXZpZ2F0aW9uIHBhdGggZm9yIGEgbm9kZVxuICAgKi9cbiAgcHJpdmF0ZSBhc3luYyBidWlsZFBhdGgobm9kZTogQVhNRG9jdW1lbnRFeHBsb3Jlck5vZGUsIHN0b3BGb2xkZXJJZD86IHN0cmluZyk6IFByb21pc2U8QVhNRG9jdW1lbnRFeHBsb3Jlck5vZGVbXT4ge1xuICAgIGlmIChub2RlLnR5cGUgPT09ICdmaWxlJykge1xuICAgICAgcmV0dXJuIChhd2FpdCB0aGlzLmRvY3VtZW50U2VydmljZS5nZXRQYXRoKG5vZGUuaWQsIHN0b3BGb2xkZXJJZCkpLm1hcCh0aGlzLm1hcEZvbGRlckR0b1RvRm9sZGVyTm9kZSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiAoYXdhaXQgdGhpcy5mb2xkZXJTZXJ2aWNlLmdldFBhdGgobm9kZS5pZCwgc3RvcEZvbGRlcklkKSkubWFwKHRoaXMubWFwRm9sZGVyRHRvVG9Gb2xkZXJOb2RlKTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogQ3JlYXRlcyBhIGNvcHkgbmFtZSBieSBhZGRpbmcgXCIgY29weVwiIGJlZm9yZSB0aGUgZXh0ZW5zaW9uXG4gICAqL1xuICBwcml2YXRlIGNyZWF0ZUNvcHlOYW1lKG9yaWdpbmFsTmFtZTogc3RyaW5nKTogc3RyaW5nIHtcbiAgICBjb25zdCBsYXN0RG90SW5kZXggPSBvcmlnaW5hbE5hbWUubGFzdEluZGV4T2YoJy4nKTtcblxuICAgIGlmIChsYXN0RG90SW5kZXggPT09IC0xKSB7XG4gICAgICAvLyBObyBleHRlbnNpb25cbiAgICAgIHJldHVybiBgJHtvcmlnaW5hbE5hbWV9IGNvcHlgO1xuICAgIH1cblxuICAgIGNvbnN0IG5hbWVXaXRob3V0RXh0ID0gb3JpZ2luYWxOYW1lLnN1YnN0cmluZygwLCBsYXN0RG90SW5kZXgpO1xuICAgIGNvbnN0IGV4dGVuc2lvbiA9IG9yaWdpbmFsTmFtZS5zdWJzdHJpbmcobGFzdERvdEluZGV4KTtcblxuICAgIHJldHVybiBgJHtuYW1lV2l0aG91dEV4dH0gY29weSR7ZXh0ZW5zaW9ufWA7XG4gIH1cblxuICAvLyNlbmRyZWdpb25cblxuICAvLyNyZWdpb24gLS0tLSAgIFJvb3QgYW5kIEZvbGRlciBPcGVyYXRpb25zICAgLS0tLVxuXG4gIC8qKlxuICAgKiBHZXRzIHRoZSByb290IGZvbGRlciBiYXNlZCBvbiB0aGUgc3BlY2lmaWVkIHNjb3BlXG4gICAqL1xuICBhc3luYyBnZXRSb290KFxuICAgIHNjb3BlOiBBWFBQbGF0Zm9ybVNjb3BlLFxuICAgIG9wdGlvbnM/OiB7IHRlbmFudElkPzogc3RyaW5nOyB1c2VySWQ/OiBzdHJpbmcgfSxcbiAgKTogUHJvbWlzZTx7XG4gICAgcGF0aDogQVhNRG9jdW1lbnRFeHBsb3Jlck5vZGVbXTtcbiAgICByZXN1bHQ6IEFYTURvY3VtZW50RXhwbG9yZXJOb2RlO1xuICB9PiB7XG4gICAgY29uc3Qgcm9vdEZvbGRlciA9IGF3YWl0IHRoaXMuZ2V0UGxhdGZvcm1Sb290Rm9sZGVyKCk7XG4gICAgbGV0IHJlc3VsdDogQVhNRG9jdW1lbnRFeHBsb3Jlck5vZGU7XG4gICAgbGV0IHBhdGg6IEFYTURvY3VtZW50RXhwbG9yZXJOb2RlW10gPSBbXTtcblxuICAgIHN3aXRjaCAoc2NvcGUpIHtcbiAgICAgIGNhc2UgQVhQUGxhdGZvcm1TY29wZS5QbGF0Zm9ybTpcbiAgICAgICAgcmVzdWx0ID0gdGhpcy5tYXBGb2xkZXJEdG9Ub0ZvbGRlck5vZGUocm9vdEZvbGRlcik7XG4gICAgICAgIHBhdGggPSBhd2FpdCB0aGlzLmJ1aWxkUGF0aChyZXN1bHQpO1xuICAgICAgICBicmVhaztcblxuICAgICAgY2FzZSBBWFBQbGF0Zm9ybVNjb3BlLlRlbmFudDoge1xuICAgICAgICBpZiAoIW9wdGlvbnM/LnRlbmFudElkKSB7XG4gICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdUZW5hbnQgSUQgaXMgcmVxdWlyZWQgZm9yIHRlbmFudCBzY29wZScpO1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IHRlbmFudFJvb3QgPSBhd2FpdCB0aGlzLmdldFRlbmFudFJvb3RGb2xkZXIocm9vdEZvbGRlciwgb3B0aW9ucy50ZW5hbnRJZCk7XG4gICAgICAgIHJlc3VsdCA9IHRoaXMubWFwRm9sZGVyRHRvVG9Gb2xkZXJOb2RlKHRlbmFudFJvb3QpO1xuICAgICAgICBwYXRoID0gYXdhaXQgdGhpcy5idWlsZFBhdGgocmVzdWx0LCB0ZW5hbnRSb290LmlkKTtcbiAgICAgICAgYnJlYWs7XG4gICAgICB9XG5cbiAgICAgIGNhc2UgQVhQUGxhdGZvcm1TY29wZS5Vc2VyOiB7XG4gICAgICAgIGlmICghb3B0aW9ucz8udGVuYW50SWQgfHwgIW9wdGlvbnM/LnVzZXJJZCkge1xuICAgICAgICAgIHRocm93IG5ldyBFcnJvcignQm90aCBUZW5hbnQgSUQgYW5kIFVzZXIgSUQgYXJlIHJlcXVpcmVkIGZvciB1c2VyIHNjb3BlJyk7XG4gICAgICAgIH1cbiAgICAgICAgY29uc3QgdGVuYW50Rm9sZGVyID0gYXdhaXQgdGhpcy5nZXRUZW5hbnRSb290Rm9sZGVyKHJvb3RGb2xkZXIsIG9wdGlvbnMudGVuYW50SWQpO1xuICAgICAgICBjb25zdCB1c2VyUm9vdCA9IGF3YWl0IHRoaXMuZ2V0VXNlclJvb3RGb2xkZXIoXG4gICAgICAgICAgdGVuYW50Rm9sZGVyLmZvbGRlcnM/LmZpbmQoKGYpID0+IGYubmFtZSA9PT0gJ1VzZXJzJyk/LmlkISxcbiAgICAgICAgICBvcHRpb25zLnRlbmFudElkLFxuICAgICAgICAgIG9wdGlvbnMudXNlcklkLFxuICAgICAgICApO1xuICAgICAgICByZXN1bHQgPSB0aGlzLm1hcEZvbGRlckR0b1RvRm9sZGVyTm9kZSh1c2VyUm9vdCk7XG4gICAgICAgIHBhdGggPSBhd2FpdCB0aGlzLmJ1aWxkUGF0aChyZXN1bHQsIHVzZXJSb290LmlkKTtcbiAgICAgICAgYnJlYWs7XG4gICAgICB9XG5cbiAgICAgIGRlZmF1bHQ6XG4gICAgICAgIHRocm93IG5ldyBFcnJvcihgSW52YWxpZCBzY29wZTogJHtzY29wZX1gKTtcbiAgICB9XG5cbiAgICByZXR1cm4geyBwYXRoLCByZXN1bHQgfTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXRzIGEgc3BlY2lmaWMgZm9sZGVyIGJ5IElEXG4gICAqL1xuICBhc3luYyBnZXRGb2xkZXIoXG4gICAgc2NvcGU6IEFYUFBsYXRmb3JtU2NvcGUsXG4gICAgZm9sZGVySWQ6IHN0cmluZyxcbiAgICBvcHRpb25zPzogeyB0ZW5hbnRJZD86IHN0cmluZzsgdXNlcklkPzogc3RyaW5nIH0sXG4gICk6IFByb21pc2U8e1xuICAgIHBhdGg6IEFYTURvY3VtZW50RXhwbG9yZXJOb2RlW107XG4gICAgcmVzdWx0OiBBWE1Eb2N1bWVudEV4cGxvcmVyTm9kZTtcbiAgfT4ge1xuICAgIGlmICghZm9sZGVySWQpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignRm9sZGVyIElEIGlzIHJlcXVpcmVkJyk7XG4gICAgfVxuXG4gICAgY29uc3QgZm9sZGVyID0gYXdhaXQgdGhpcy5mb2xkZXJTZXJ2aWNlLmdldE9uZShmb2xkZXJJZCk7XG4gICAgaWYgKCFmb2xkZXIpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignRm9sZGVyIG5vdCBmb3VuZCcpO1xuICAgIH1cblxuICAgIGNvbnN0IHJlc3VsdCA9IHRoaXMubWFwRm9sZGVyRHRvVG9Gb2xkZXJOb2RlKGZvbGRlcik7XG4gICAgY29uc3QgcGF0aCA9IGF3YWl0IHRoaXMuYnVpbGRQYXRoKHJlc3VsdCwgKGF3YWl0IHRoaXMuZ2V0Um9vdChzY29wZSwgb3B0aW9ucykpLnJlc3VsdC5pZCk7XG5cbiAgICByZXR1cm4geyBwYXRoLCByZXN1bHQgfTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDcmVhdGVzIGEgbmV3IGZvbGRlclxuICAgKi9cbiAgYXN5bmMgY3JlYXRlRm9sZGVyKGRhdGE6IEFYTURvY3VtZW50TWFuYWdlbWVudEZvbGRlckNyZWF0ZUR0byk6IFByb21pc2U8QVhNRG9jdW1lbnRFeHBsb3Jlck5vZGU+IHtcbiAgICBjb25zdCBub3cgPSBuZXcgRGF0ZSgpO1xuICAgIGNvbnN0IGN1cnJlbnRVc2VyID0gdGhpcy5zZXNzaW9uU2VydmljZS51c2VyO1xuXG4gICAgY29uc3QgZm9sZGVyVG9DcmVhdGU6IE9taXQ8QVhNRG9jdW1lbnRNYW5hZ2VtZW50Rm9sZGVyRW50aXR5TW9kZWwsICdpZCc+ID0ge1xuICAgICAgLi4uZGF0YSxcbiAgICAgIGNyZWF0ZWRBdDogbm93LFxuICAgICAgdXBkYXRlZEF0OiBub3csXG4gICAgICBjcmVhdGVkQnk6IGN1cnJlbnRVc2VyPy5pZD8udG9TdHJpbmcoKSA/PyAnc3lzdGVtJyxcbiAgICAgIHVwZGF0ZWRCeTogY3VycmVudFVzZXI/LmlkPy50b1N0cmluZygpID8/ICdzeXN0ZW0nLFxuICAgICAgaXNTeXN0ZW06IGZhbHNlLFxuICAgICAgaXNIaWRkZW46IGZhbHNlLFxuICAgICAgaXNEZWxldGVkOiBmYWxzZSxcbiAgICAgIHNpemU6IDAsXG4gICAgfTtcblxuICAgIGNvbnN0IGNyZWF0ZWRGb2xkZXIgPSBhd2FpdCB0aGlzLmZvbGRlclNlcnZpY2UuaW5zZXJ0T25lKGZvbGRlclRvQ3JlYXRlKTtcbiAgICBjb25zdCBmb2xkZXIgPSBhd2FpdCB0aGlzLmZvbGRlclNlcnZpY2UuZ2V0T25lKGNyZWF0ZWRGb2xkZXIpO1xuICAgIHJldHVybiB0aGlzLm1hcEZvbGRlckR0b1RvRm9sZGVyTm9kZShmb2xkZXIpO1xuICB9XG5cbiAgLyoqXG4gICAqIFVwZGF0ZXMgYW4gZXhpc3RpbmcgZm9sZGVyXG4gICAqL1xuICBhc3luYyB1cGRhdGVGb2xkZXIoZm9sZGVySWQ6IHN0cmluZywgZGF0YTogVXBkYXRlRm9sZGVyRHRvKTogUHJvbWlzZTxBWE1Eb2N1bWVudEV4cGxvcmVyTm9kZT4ge1xuICAgIGNvbnN0IGN1cnJlbnRVc2VyID0gdGhpcy5zZXNzaW9uU2VydmljZS51c2VyO1xuICAgIGNvbnN0IHVwZGF0ZURhdGEgPSB7XG4gICAgICAuLi5kYXRhLFxuICAgICAgdXBkYXRlZEJ5OiBjdXJyZW50VXNlcj8uaWQ/LnRvU3RyaW5nKCkgPz8gJ3N5c3RlbScsXG4gICAgICB1cGRhdGVkQXQ6IG5ldyBEYXRlKCksXG4gICAgfTtcbiAgICBhd2FpdCB0aGlzLmZvbGRlclNlcnZpY2UudXBkYXRlT25lKGZvbGRlcklkLCB1cGRhdGVEYXRhKTtcbiAgICBjb25zdCB1cGRhdGVkRm9sZGVyID0gYXdhaXQgdGhpcy5mb2xkZXJTZXJ2aWNlLmdldE9uZShmb2xkZXJJZCk7XG4gICAgcmV0dXJuIHRoaXMubWFwRm9sZGVyRHRvVG9Gb2xkZXJOb2RlKHVwZGF0ZWRGb2xkZXIpO1xuICB9XG5cbiAgLyoqXG4gICAqIERlbGV0ZXMgYSBmb2xkZXJcbiAgICovXG4gIGFzeW5jIGRlbGV0ZUZvbGRlcihmb2xkZXJJZDogc3RyaW5nKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgYXdhaXQgdGhpcy5mb2xkZXJTZXJ2aWNlLmRlbGV0ZU9uZShmb2xkZXJJZCk7XG4gIH1cblxuICAvKipcbiAgICogR2V0cyBhdmFpbGFibGUgc3RvcmFnZSBzcGFjZVxuICAgKi9cbiAgYXN5bmMgZ2V0QXZhaWxhYmxlU3BhY2UoKTogUHJvbWlzZTxudW1iZXI+IHtcbiAgICAvLyBGb3Igbm93LCByZXR1cm4gYSBmaXhlZCB2YWx1ZSBvZiAxMDBHQiAoNTYgKiAxMDI0ICogMTAyNCAqIDEwMjQgYnl0ZXMpXG4gICAgLy8gVGhpcyBzaG91bGQgYmUgcmVwbGFjZWQgd2l0aCBhY3R1YWwgc3RvcmFnZSBxdW90YSBsb2dpYyB3aGVuIGltcGxlbWVudGVkXG4gICAgcmV0dXJuIDU2ICogMTAyNCAqIDEwMjQgKiAxMDI0O1xuICB9XG5cbiAgLy8jZW5kcmVnaW9uXG5cbiAgLy8jcmVnaW9uIC0tLS0gICBGaWxlIE9wZXJhdGlvbnMgICAtLS0tXG5cbiAgLyoqXG4gICAqIENyZWF0ZXMgYSBuZXcgZmlsZVxuICAgKi9cbiAgYXN5bmMgY3JlYXRlRmlsZShkYXRhOiBDcmVhdGVGaWxlRHRvKTogUHJvbWlzZTxBWE1Eb2N1bWVudEV4cGxvcmVyTm9kZT4ge1xuICAgIGNvbnN0IGZpbGVJZCA9IGF3YWl0IHRoaXMuZG9jdW1lbnRTZXJ2aWNlLmluc2VydE9uZShkYXRhKTtcbiAgICBjb25zdCBmaWxlID0gYXdhaXQgdGhpcy5kb2N1bWVudFNlcnZpY2UuZ2V0T25lKGZpbGVJZCk7XG4gICAgcmV0dXJuIHRoaXMubWFwRmlsZVRvTm9kZShmaWxlKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBVcGRhdGVzIGFuIGV4aXN0aW5nIGZpbGVcbiAgICovXG4gIGFzeW5jIHVwZGF0ZUZpbGUoZmlsZUlkOiBzdHJpbmcsIGRhdGE6IFVwZGF0ZUZpbGVEdG8pOiBQcm9taXNlPEFYTURvY3VtZW50RXhwbG9yZXJOb2RlPiB7XG4gICAgY29uc3QgdXBkYXRlZEZpbGUgPSBhd2FpdCB0aGlzLmRvY3VtZW50U2VydmljZS51cGRhdGVPbmUoZmlsZUlkLCBkYXRhKTtcbiAgICByZXR1cm4gdGhpcy5tYXBGaWxlVG9Ob2RlKHVwZGF0ZWRGaWxlKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBEZWxldGVzIGEgZmlsZVxuICAgKi9cbiAgYXN5bmMgZGVsZXRlRmlsZShmaWxlSWQ6IHN0cmluZyk6IFByb21pc2U8dm9pZD4ge1xuICAgIGF3YWl0IHRoaXMuZG9jdW1lbnRTZXJ2aWNlLmRlbGV0ZU9uZShmaWxlSWQpO1xuICB9XG5cbiAgLyoqXG4gICAqIE9wZW5zIGEgZmlsZVxuICAgKi9cbiAgYXN5bmMgb3BlbkZpbGUobm9kZTogQVhNRG9jdW1lbnRFeHBsb3Jlck5vZGUpIHtcbiAgICBjb25zdCBmaWxlID0gYXdhaXQgdGhpcy5kb2N1bWVudFNlcnZpY2UuZ2V0T25lKG5vZGUuaWQpO1xuICB9XG5cbiAgLyoqXG4gICAqIERvd25sb2FkcyBhIGZpbGVcbiAgICovXG4gIGFzeW5jIGRvd25sb2FkRmlsZShub2RlOiBBWE1Eb2N1bWVudEV4cGxvcmVyTm9kZSk6IFByb21pc2U8dm9pZD4ge1xuICAgIC8vIGNvbnN0IGZpbGUgPSBhd2FpdCB0aGlzLmRvY3VtZW50U2VydmljZS5nZXRPbmUobm9kZS5pZCk7XG4gICAgaWYgKG5vZGUuZmlsZUlkKSB7XG4gICAgICBpZiAobm9kZS5maWxlSWQuc291cmNlPy52YWx1ZSAmJiB0eXBlb2Ygbm9kZS5maWxlSWQuc291cmNlLnZhbHVlID09PSAnc3RyaW5nJyAmJiBub2RlLmZpbGVJZC5zb3VyY2UudmFsdWU/LnN0YXJ0c1dpdGgoJ2h0dHAnKSkge1xuICAgICAgICBjb25zdCBsaW5rID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnYScpO1xuICAgICAgICBsaW5rLmhyZWYgPSBub2RlLmZpbGVJZC5zb3VyY2UudmFsdWU7XG4gICAgICAgIGxpbmsuZG93bmxvYWQgPSBub2RlLm5hbWU7XG4gICAgICAgIGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQobGluayk7XG4gICAgICAgIGxpbmsuY2xpY2soKTtcbiAgICAgICAgZG9jdW1lbnQuYm9keS5yZW1vdmVDaGlsZChsaW5rKTtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuICAgICAgY29uc3QgZmlsZUluZm8gPSBhd2FpdCB0aGlzLmZpbGVTZXJ2aWNlLmdldEluZm8obm9kZS5maWxlSWQuaWQgPz8gJycpO1xuXG4gICAgICBjb25zdCBsaW5rID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnYScpO1xuICAgICAgbGluay5ocmVmID0gZmlsZUluZm8udXJsID8/ICcnO1xuICAgICAgbGluay5kb3dubG9hZCA9IG5vZGUubmFtZTsgLy8gU2V0IHRoZSBkZXNpcmVkIGZpbGUgbmFtZVxuICAgICAgZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChsaW5rKTtcbiAgICAgIGxpbmsuY2xpY2soKTtcbiAgICAgIGRvY3VtZW50LmJvZHkucmVtb3ZlQ2hpbGQobGluayk7XG4gICAgfSBlbHNlIHtcbiAgICAgIGNvbnNvbGUubG9nKCdpZCBpcyBudWxsJyk7XG4gICAgfVxuICB9XG5cbiAgLy8jZW5kcmVnaW9uXG5cbiAgLy8jcmVnaW9uIC0tLS0gICBOb2RlIE9wZXJhdGlvbnMgICAtLS0tXG5cbiAgLyoqXG4gICAqIERlbGV0ZXMgbXVsdGlwbGUgbm9kZXMgKGZpbGVzIGFuZCBmb2xkZXJzKVxuICAgKi9cbiAgYXN5bmMgZGVsZXRlTm9kZXMobm9kZXM6IEFYTURvY3VtZW50RXhwbG9yZXJOb2RlW10pOiBQcm9taXNlPHZvaWQ+IHtcbiAgICBmb3IgKGNvbnN0IG5vZGUgb2Ygbm9kZXMpIHtcbiAgICAgIGlmIChub2RlLnR5cGUgPT0gJ2ZvbGRlcicpIHtcbiAgICAgICAgYXdhaXQgdGhpcy5kZWxldGVGb2xkZXIobm9kZS5pZCk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBhd2FpdCB0aGlzLmRlbGV0ZUZpbGUobm9kZS5pZCk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIENyZWF0ZXMgYSBjb3B5IG9mIGEgbm9kZSAoZmlsZSBvciBmb2xkZXIpXG4gICAqL1xuICBhc3luYyBjb3B5KG5vZGU6IEFYTURvY3VtZW50RXhwbG9yZXJOb2RlKTogUHJvbWlzZTxBWE1Eb2N1bWVudEV4cGxvcmVyTm9kZT4ge1xuICAgIGlmICghbm9kZSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdOb2RlIHRvIGNvcHkgY2Fubm90IGJlIG51bGwgb3IgdW5kZWZpbmVkJyk7XG4gICAgfVxuXG4gICAgLy8gQ3JlYXRlIGEgbmFtZSB3aXRoIFwiIGNvcHlcIiBiZWZvcmUgdGhlIGV4dGVuc2lvblxuICAgIGNvbnN0IG5ld05hbWUgPSB0aGlzLmNyZWF0ZUNvcHlOYW1lKG5vZGUubmFtZSk7XG5cbiAgICBpZiAobm9kZS50eXBlID09PSAnZmlsZScpIHtcbiAgICAgIC8vIEdldCB0aGUgb3JpZ2luYWwgZmlsZSB0byBjb3B5IGFsbCBpdHMgZGF0YVxuICAgICAgY29uc3Qgb3JpZ2luYWxGaWxlID0gYXdhaXQgdGhpcy5kb2N1bWVudFNlcnZpY2UuZ2V0T25lKG5vZGUuaWQpO1xuICAgICAgaWYgKCFvcmlnaW5hbEZpbGUpIHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBGaWxlIHdpdGggSUQgJHtub2RlLmlkfSBub3QgZm91bmRgKTtcbiAgICAgIH1cblxuICAgICAgLy8gQ3JlYXRlIGEgZG9jdW1lbnQgbW9kZWwgZnJvbSB0aGUgb3JpZ2luYWwgd2l0aCB0aGUgbmV3IG5hbWVcbiAgICAgIC8vIEV4dHJhY3QgbmVlZGVkIHByb3BlcnRpZXMgd2l0aG91dCBpZFxuICAgICAgY29uc3QgeyBpZCwgLi4uZmlsZURhdGFXaXRob3V0SWQgfSA9IG9yaWdpbmFsRmlsZTtcbiAgICAgIGNvbnN0IGZpbGVEYXRhOiBDcmVhdGVGaWxlRHRvID0ge1xuICAgICAgICAuLi5maWxlRGF0YVdpdGhvdXRJZCxcbiAgICAgICAgbmFtZTogbmV3TmFtZSxcbiAgICAgICAgdGl0bGU6IG5ld05hbWUsXG4gICAgICB9O1xuXG4gICAgICAvLyBDcmVhdGUgdGhlIG5ldyBmaWxlXG4gICAgICByZXR1cm4gYXdhaXQgdGhpcy5jcmVhdGVGaWxlKGZpbGVEYXRhKTtcbiAgICB9IGVsc2UgaWYgKG5vZGUudHlwZSA9PT0gJ2ZvbGRlcicpIHtcbiAgICAgIC8vIEdldCB0aGUgb3JpZ2luYWwgZm9sZGVyIHRvIGNvcHkgYWxsIGl0cyBkYXRhXG4gICAgICBjb25zdCBvcmlnaW5hbEZvbGRlciA9IGF3YWl0IHRoaXMuZm9sZGVyU2VydmljZS5nZXRPbmUobm9kZS5pZCk7XG4gICAgICBpZiAoIW9yaWdpbmFsRm9sZGVyKSB7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcihgRm9sZGVyIHdpdGggSUQgJHtub2RlLmlkfSBub3QgZm91bmRgKTtcbiAgICAgIH1cblxuICAgICAgLy8gQ3JlYXRlIGEgZm9sZGVyIG1vZGVsIGZyb20gdGhlIG9yaWdpbmFsIHdpdGggdGhlIG5ldyBuYW1lXG4gICAgICAvLyBFeHRyYWN0IG5lZWRlZCBwcm9wZXJ0aWVzIHdpdGhvdXQgaWRcbiAgICAgIGNvbnN0IHsgaWQsIC4uLmZvbGRlckRhdGFXaXRob3V0SWQgfSA9IG9yaWdpbmFsRm9sZGVyO1xuICAgICAgY29uc3QgZm9sZGVyRGF0YTogQVhNRG9jdW1lbnRNYW5hZ2VtZW50Rm9sZGVyQ3JlYXRlRHRvID0ge1xuICAgICAgICAuLi5mb2xkZXJEYXRhV2l0aG91dElkLFxuICAgICAgICBuYW1lOiBuZXdOYW1lLFxuICAgICAgfTtcblxuICAgICAgLy8gQ3JlYXRlIHRoZSBuZXcgZm9sZGVyXG4gICAgICByZXR1cm4gYXdhaXQgdGhpcy5jcmVhdGVGb2xkZXIoZm9sZGVyRGF0YSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihgVW5zdXBwb3J0ZWQgbm9kZSB0eXBlOiAke25vZGUudHlwZX1gKTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogTW92ZXMgYSBub2RlIHRvIGFub3RoZXIgbG9jYXRpb25cbiAgICovXG4gIGFzeW5jIG1vdmVUbyhvcHRpb25zOiB7XG4gICAgbm9kZTogQVhNRG9jdW1lbnRFeHBsb3Jlck5vZGU7XG4gICAgc2NvcGU6IEFYUFBsYXRmb3JtU2NvcGU7XG4gICAgYnJvd3NlTW9kZT86IEFYTURvY3VtZW50RXhwbG9yZXJCcm93c2VNb2RlO1xuICAgIG11bHRpcGxlPzogYm9vbGVhbjtcbiAgfSk6IFByb21pc2U8Ym9vbGVhbj4ge1xuICAgIGNvbnN0IGNvbXAgPSAoYXdhaXQgaW1wb3J0KCcuLi9kcml2ZS1jaG9vc2UvZHJpdmUtY2hvb3NlLmNvbXBvbmVudCcpKS5BWE1Eb2N1bWVudERyaXZlQ2hvb3NlQ29tcG9uZW50O1xuICAgIGNvbnN0IHBvcHVwID0gYXdhaXQgdGhpcy5wb3B1cFNlcnZpY2Uub3Blbihjb21wLCB7XG4gICAgICB0aXRsZTogYENob29zZSAke29wdGlvbnMuYnJvd3NlTW9kZSA9PSAnZmlsZScgPyAnRmlsZScgOiAnRm9sZGVyJ31gLFxuICAgICAgZGF0YToge1xuICAgICAgICBzZWxlY3Rpb25Nb2RlOiBvcHRpb25zLm11bHRpcGxlID8gJ211bHRpcGxlJyA6ICdzaW5nbGUnLFxuICAgICAgICBicm93c2VNb2RlOiBvcHRpb25zLmJyb3dzZU1vZGUgPz8gJ2ZpbGUnLFxuICAgICAgICBzY29wZTogb3B0aW9ucy5zY29wZSxcbiAgICAgIH0sXG4gICAgfSk7XG5cbiAgICBjb25zdCBzZWxlY3RlZEZvbGRlcnMgPSBwb3B1cC5kYXRhLnJlc3VsdCA/IChwb3B1cC5kYXRhPy5pdGVtcyA/PyBbXSkgOiBbXTtcbiAgICBpZiAoc2VsZWN0ZWRGb2xkZXJzLmxlbmd0aCA+IDApIHtcbiAgICAgIGNvbnN0IHNlbGVjdGVkRm9sZGVyID0gc2VsZWN0ZWRGb2xkZXJzWzBdO1xuICAgICAgaWYgKHNlbGVjdGVkRm9sZGVyKSB7XG4gICAgICAgIGlmIChvcHRpb25zLm5vZGUudHlwZSA9PT0gJ2ZvbGRlcicpIHtcbiAgICAgICAgICBhd2FpdCB0aGlzLnVwZGF0ZUZvbGRlcihvcHRpb25zLm5vZGUuaWQsIHsgcGFyZW50SWQ6IHNlbGVjdGVkRm9sZGVyLmlkIH0pO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIGF3YWl0IHRoaXMudXBkYXRlRmlsZShvcHRpb25zLm5vZGUuaWQsIHsgcGFyZW50SWQ6IHNlbGVjdGVkRm9sZGVyLmlkIH0pO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgfVxuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIENvcGllcyBhIG5vZGUgdG8gYW5vdGhlciBsb2NhdGlvblxuICAgKi9cbiAgYXN5bmMgY29weVRvKG9wdGlvbnM6IHtcbiAgICBub2RlOiBBWE1Eb2N1bWVudEV4cGxvcmVyTm9kZTtcbiAgICBzY29wZTogQVhQUGxhdGZvcm1TY29wZTtcbiAgICBicm93c2VNb2RlPzogQVhNRG9jdW1lbnRFeHBsb3JlckJyb3dzZU1vZGU7XG4gICAgbXVsdGlwbGU/OiBib29sZWFuO1xuICB9KTogUHJvbWlzZTxib29sZWFuPiB7XG4gICAgY29uc3QgY29tcCA9IChhd2FpdCBpbXBvcnQoJy4uL2RyaXZlLWNob29zZS9kcml2ZS1jaG9vc2UuY29tcG9uZW50JykpLkFYTURvY3VtZW50RHJpdmVDaG9vc2VDb21wb25lbnQ7XG4gICAgY29uc3QgcG9wdXAgPSBhd2FpdCB0aGlzLnBvcHVwU2VydmljZS5vcGVuKGNvbXAsIHtcbiAgICAgIHRpdGxlOiBgQ2hvb3NlICR7b3B0aW9ucy5icm93c2VNb2RlID09ICdmaWxlJyA/ICdGaWxlJyA6ICdGb2xkZXInfWAsXG4gICAgICBkYXRhOiB7XG4gICAgICAgIHNlbGVjdGlvbk1vZGU6IG9wdGlvbnMubXVsdGlwbGUgPyAnbXVsdGlwbGUnIDogJ3NpbmdsZScsXG4gICAgICAgIGJyb3dzZU1vZGU6IG9wdGlvbnMuYnJvd3NlTW9kZSA/PyAnZmlsZScsXG4gICAgICAgIHNjb3BlOiBvcHRpb25zLnNjb3BlLFxuICAgICAgfSxcbiAgICB9KTtcblxuICAgIGNvbnN0IHNlbGVjdGVkRm9sZGVycyA9IHBvcHVwLmRhdGEucmVzdWx0ID8gKHBvcHVwLmRhdGE/Lml0ZW1zID8/IFtdKSA6IFtdO1xuICAgIGlmIChzZWxlY3RlZEZvbGRlcnMubGVuZ3RoID4gMCkge1xuICAgICAgY29uc3Qgc2VsZWN0ZWRGb2xkZXIgPSBzZWxlY3RlZEZvbGRlcnNbMF07XG4gICAgICBpZiAoc2VsZWN0ZWRGb2xkZXIpIHtcbiAgICAgICAgaWYgKG9wdGlvbnMubm9kZS50eXBlID09PSAnZm9sZGVyJykge1xuICAgICAgICAgIGF3YWl0IHRoaXMuY3JlYXRlRm9sZGVyKHtcbiAgICAgICAgICAgIG5hbWU6IG9wdGlvbnMubm9kZS5uYW1lLFxuICAgICAgICAgICAgcGFyZW50SWQ6IHNlbGVjdGVkRm9sZGVyLmlkLFxuICAgICAgICAgICAgY29sb3I6ICcjZmZmZmZmJyxcbiAgICAgICAgICAgIHNpemU6IG9wdGlvbnMubm9kZS5zaXplLFxuICAgICAgICAgICAgaW5oZXJpdDogb3B0aW9ucy5ub2RlLmluaGVyaXQgPz8gJ05vbmUnLFxuICAgICAgICAgIH0pO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIGF3YWl0IHRoaXMuY3JlYXRlRmlsZSh7XG4gICAgICAgICAgICB0aXRsZTogb3B0aW9ucy5ub2RlLm5hbWUsXG4gICAgICAgICAgICBuYW1lOiBvcHRpb25zLm5vZGUubmFtZSxcbiAgICAgICAgICAgIHBhcmVudElkOiBzZWxlY3RlZEZvbGRlci5pZCxcbiAgICAgICAgICAgIC8vVE9ETyB1cGxvYWQgZmlsZSB0byBmaWxlIHN0b3JhZ2VcbiAgICAgICAgICAgIGZpbGVJZDogJycsXG4gICAgICAgICAgICBzaXplOiAwLFxuICAgICAgICAgICAgZG9jdW1lbnRUeXBlOiBvcHRpb25zLm5vZGUuZG9jdW1lbnRUeXBlc1swXSxcbiAgICAgICAgICAgIC8vIFRPRE9cbiAgICAgICAgICAgIHN0YXR1czogJ0RyYWZ0JyxcbiAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgIH1cbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cbiAgfVxuXG4gIC8vI2VuZHJlZ2lvblxuXG4gIC8vI3JlZ2lvbiAtLS0tICAgU2VhcmNoIE9wZXJhdGlvbnMgICAtLS0tXG5cbiAgLyoqXG4gICAqIFNlYXJjaGVzIGZvciBmb2xkZXJzIGJ5IHRlcm0gd2l0aGluIGEgc2NvcGVcbiAgICovXG4gIGFzeW5jIHNlYXJjaEZvbGRlcnMoXG4gICAgc2VhcmNoVGVybTogc3RyaW5nLFxuICAgIHNjb3BlOiBBWFBQbGF0Zm9ybVNjb3BlLFxuICAgIG9wdGlvbnM/OiB7IHRlbmFudElkPzogc3RyaW5nOyB1c2VySWQ/OiBzdHJpbmc7IGZvbGRlcklkPzogc3RyaW5nIH0sXG4gICk6IFByb21pc2U8QVhNRG9jdW1lbnRFeHBsb3Jlck5vZGVbXT4ge1xuICAgIGNvbnN0IHsgcmVzdWx0OiByb290Tm9kZSB9ID0gb3B0aW9ucz8uZm9sZGVySWRcbiAgICAgID8gYXdhaXQgdGhpcy5nZXRGb2xkZXIoc2NvcGUsIG9wdGlvbnMuZm9sZGVySWQsIG9wdGlvbnMpXG4gICAgICA6IGF3YWl0IHRoaXMuZ2V0Um9vdChzY29wZSwgb3B0aW9ucyk7XG5cbiAgICBjb25zdCBmb2xkZXJzID0gYXdhaXQgdGhpcy5mb2xkZXJTZXJ2aWNlLnNlYXJjaEZvbGRlcnMoc2VhcmNoVGVybSwgcm9vdE5vZGUuaWQpO1xuXG4gICAgcmV0dXJuIGZvbGRlcnMubWFwKChmb2xkZXIpID0+IHRoaXMubWFwRm9sZGVyRHRvVG9Gb2xkZXJOb2RlKGZvbGRlcikpO1xuICB9XG5cbiAgLyoqXG4gICAqIFNlYXJjaGVzIGZvciBmaWxlcyBieSB0ZXJtIHdpdGhpbiBhIHNjb3BlXG4gICAqL1xuICBhc3luYyBzZWFyY2hGaWxlcyhcbiAgICBzZWFyY2hUZXJtOiBzdHJpbmcsXG4gICAgc2NvcGU6IEFYUFBsYXRmb3JtU2NvcGUsXG4gICAgb3B0aW9ucz86IHsgdGVuYW50SWQ/OiBzdHJpbmc7IHVzZXJJZD86IHN0cmluZzsgZm9sZGVySWQ/OiBzdHJpbmcgfSxcbiAgKTogUHJvbWlzZTxBWE1Eb2N1bWVudEV4cGxvcmVyTm9kZVtdPiB7XG4gICAgY29uc3QgeyByZXN1bHQ6IHJvb3ROb2RlIH0gPSBvcHRpb25zPy5mb2xkZXJJZFxuICAgICAgPyBhd2FpdCB0aGlzLmdldEZvbGRlcihzY29wZSwgb3B0aW9ucy5mb2xkZXJJZCwgb3B0aW9ucylcbiAgICAgIDogYXdhaXQgdGhpcy5nZXRSb290KHNjb3BlLCBvcHRpb25zKTtcblxuICAgIGNvbnN0IGZpbGVzID0gYXdhaXQgdGhpcy5kb2N1bWVudFNlcnZpY2Uuc2VhcmNoRmlsZXMoc2VhcmNoVGVybSwgcm9vdE5vZGUuaWQpO1xuXG4gICAgcmV0dXJuIGZpbGVzLm1hcCgoZmlsZSkgPT4gdGhpcy5tYXBGaWxlVG9Ob2RlKGZpbGUpKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBTZWFyY2hlcyBmb3IgYm90aCBmaWxlcyBhbmQgZm9sZGVycyBieSB0ZXJtIHdpdGhpbiBhIHNjb3BlXG4gICAqL1xuICBhc3luYyBzZWFyY2hOb2RlcyhcbiAgICBzZWFyY2hUZXJtOiBzdHJpbmcsXG4gICAgc2NvcGU6IEFYUFBsYXRmb3JtU2NvcGUsXG4gICAgb3B0aW9ucz86IHsgdGVuYW50SWQ/OiBzdHJpbmc7IHVzZXJJZD86IHN0cmluZzsgZm9sZGVySWQ/OiBzdHJpbmcgfSxcbiAgKTogUHJvbWlzZTxBWE1Eb2N1bWVudEV4cGxvcmVyTm9kZVtdPiB7XG4gICAgY29uc3QgW2ZvbGRlcnMsIGZpbGVzXSA9IGF3YWl0IFByb21pc2UuYWxsKFtcbiAgICAgIHRoaXMuc2VhcmNoRm9sZGVycyhzZWFyY2hUZXJtLCBzY29wZSwgb3B0aW9ucyksXG4gICAgICB0aGlzLnNlYXJjaEZpbGVzKHNlYXJjaFRlcm0sIHNjb3BlLCBvcHRpb25zKSxcbiAgICBdKTtcblxuICAgIHJldHVybiBbLi4uZm9sZGVycywgLi4uZmlsZXNdO1xuICB9XG5cbiAgLy8jZW5kcmVnaW9uXG5cbiAgLy8jcmVnaW9uIC0tLS0gICBEYXRhIFJldHJpZXZhbCBPcGVyYXRpb25zICAgLS0tLVxuXG4gIC8qKlxuICAgKiBHZXRzIGFsbCBmb2xkZXJzXG4gICAqL1xuICBhc3luYyBnZXRBbGxGb2xkZXJzKCk6IFByb21pc2U8QVhNRG9jdW1lbnRFeHBsb3Jlck5vZGVbXT4ge1xuICAgIC8vVE9ETyBmaWx0ZXIgYnkgc2NvcGVcbiAgICByZXR1cm4gKGF3YWl0IHRoaXMuZm9sZGVyU2VydmljZS5xdWVyeSgpKS5pdGVtcy5tYXAodGhpcy5tYXBGb2xkZXJEdG9Ub0ZvbGRlck5vZGUpO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldHMgYWxsIGZpbGVzIHdpdGggb3B0aW9uYWwgcXVlcnlcbiAgICovXG4gIGFzeW5jIGdldEFsbEZpbGVzKHJlcXVlc3Q/OiBBWFBRdWVyeVJlcXVlc3QpOiBQcm9taXNlPEFYTURvY3VtZW50RXhwbG9yZXJOb2RlW10+IHtcbiAgICAvL1RPRE8gZmlsdGVyIGJ5IHNjb3BlXG4gICAgcmV0dXJuIChhd2FpdCB0aGlzLmRvY3VtZW50U2VydmljZS5xdWVyeShyZXF1ZXN0KSkuaXRlbXMubWFwKHRoaXMubWFwRmlsZVRvTm9kZSk7XG4gIH1cblxuICAvKipcbiAgICogR2V0cyBhbGwgbm9kZXMgKGZpbGVzIGFuZCBmb2xkZXJzKVxuICAgKi9cbiAgYXN5bmMgZ2V0QWxsTm9kZXMoKTogUHJvbWlzZTxBWE1Eb2N1bWVudEV4cGxvcmVyTm9kZVtdPiB7XG4gICAgcmV0dXJuIFsuLi4oYXdhaXQgdGhpcy5nZXRBbGxGb2xkZXJzKCkpLCAuLi4oYXdhaXQgdGhpcy5nZXRBbGxGaWxlcygpKV07XG4gIH1cblxuICAvLyNlbmRyZWdpb25cblxuICAvLyNyZWdpb24gLS0tLSAgIEZpbGUgVXBsb2FkIE9wZXJhdGlvbnMgICAtLS0tXG5cbiAgLyoqXG4gICAqIFVwbG9hZHMgZmlsZSBieSBkb2N1bWVudCB0eXBlIHRvIGEgc3BlY2lmaWMgZm9sZGVyXG4gICAqL1xuICBhc3luYyB1cGxvYWRGaWxlQnlUeXBlKGZvbGRlcklkOiBzdHJpbmcsIGRvY1R5cGVJZDogc3RyaW5nKTogUHJvbWlzZTxib29sZWFuPiB7XG4gICAgY29uc3QgcmVzdWx0ID0gYXdhaXQgdGhpcy5hdHRhY2htZW50c1NlcnZpY2UuYXR0YWNoRmlsZShkb2NUeXBlSWQsIHtcbiAgICAgIG11bHRpcGxlOiB0cnVlLFxuICAgICAgZm9sZGVySWQ6IGZvbGRlcklkLFxuICAgIH0pO1xuICAgICAgcmV0dXJuIHJlc3VsdDtcbiAgfVxuXG4gIC8qKlxuICAgKiBVcGxvYWRzIGZpbGUgYnkgZG9jdW1lbnQgdHlwZSB0byBhIHNwZWNpZmljIGZvbGRlclxuICAgKi9cbiAgYXN5bmMgdXBkYXRlVXBsb2FkRmlsZUJ5VHlwZShub2RlOiBBWE1Eb2N1bWVudEV4cGxvcmVyTm9kZSk6IFByb21pc2U8Ym9vbGVhbj4ge1xuICAgIGNvbnN0IHJlc3VsdCA9IGF3YWl0IHRoaXMuYXR0YWNobWVudHNTZXJ2aWNlLnVwZGF0ZUF0dGFjaGVkRmlsZShub2RlLmlkLCB7XG4gICAgICBmb2xkZXJJZDogbm9kZS5wYXJlbnRJZCA/PyAnJyxcbiAgICB9KTtcbiAgICByZXR1cm4gcmVzdWx0O1xuICB9XG5cbiAgLy8gIGNvbnN0IGVkaXRhYmxlRmlsZSA9IGF3YWl0IHRoaXMuZG9jdW1lbnRTZXJ2aWNlLmdldE9uZShub2RlLmlkKTtcbiAgICAvKlxuICAgIGlmIChlZGl0YWJsZUZpbGUuZG9jdW1lbnRUeXBlKSB7XG4gICAgICBjb25zdCBkb2NUeXBlID0gZWRpdGFibGVGaWxlLmRvY3VtZW50VHlwZTtcblxuICAgICAgY29uc3QgcmVzdWx0ID0gYXdhaXQgdGhpcy5wb3B1cFNlcnZpY2Uub3Blbihjb21wLCB7XG4gICAgICAgIHRpdGxlOiBgRWRpdCAke2VkaXRhYmxlRmlsZS5uYW1lfWAsXG4gICAgICAgIGRhdGE6IHtcbiAgICAgICAgICBkb2N1bWVudFR5cGU6IGRvY1R5cGUsXG4gICAgICAgICAgZmlsZXM6IFtlZGl0YWJsZUZpbGUuZmlsZUlkXSxcbiAgICAgICAgICBwYXJlbnRJZDogbm9kZS5wYXJlbnRJZCwgIFxuICAgICAgICAgIG1ldGFEYXRhOiBlZGl0YWJsZUZpbGUubWV0YSxcbiAgICAgICAgfSxcbiAgICAgIH0pO1xuICAgICAgaWYgKHJlc3VsdC5kYXRhICE9IG51bGwpIHtcbiAgICAgICAgY29uc3QgeyB1cGxvYWRzLCByZXN1bHQ6IG1ldGFDb250ZXh0LCBpc1Jldmlld1NlbnQgfSA9IHJlc3VsdC5kYXRhO1xuXG4gICAgICAgIGxldCBuZXdGaWxlSWQ6IHN0cmluZyB8IHVuZGVmaW5lZDtcblxuICAgICAgICBjb25zdCBpdGVtVXBsb2FkOiBBWFBGaWxlTGlzdEl0ZW0gPSB1cGxvYWRzWzBdO1xuICAgICAgICBpZiAoIShpdGVtVXBsb2FkLnNvdXJjZT8ua2luZCA9PSAnZmlsZUlkJyAmJiBpdGVtVXBsb2FkLnNvdXJjZS52YWx1ZSA9PSBlZGl0YWJsZUZpbGUuZmlsZUlkKSkge1xuICAgICAgICAgIGNvbnN0IGYgPSBhd2FpdCB0aGlzLmZpbGVTZXJ2aWNlLnNhdmUoe1xuICAgICAgICAgICAgY2F0ZWdvcnk6ICdkb2N1bWVudCcsXG4gICAgICAgICAgICBmaWxlOiBpdGVtVXBsb2FkLnNvdXJjZT8udmFsdWUgYXMgRmlsZSxcbiAgICAgICAgICAgIC8vcmVmSWQ6IGZvbGRlcklkLFxuICAgICAgICAgICAgcmVmSWQ6IG5vZGUucGFyZW50SWQgPz8gJycsXG4gICAgICAgICAgICByZWZUeXBlOiBgJHtSb290Q29uZmlnLm1vZHVsZS5uYW1lfS4ke1Jvb3RDb25maWcuZW50aXRpZXMuZm9sZGVyLm5hbWV9YCxcbiAgICAgICAgICAgIG5hbWU6IGl0ZW1VcGxvYWQubmFtZSxcbiAgICAgICAgICB9KTtcbiAgICAgICAgICBhd2FpdCB0aGlzLmZpbGVTZXJ2aWNlLmNvbW1pdChmLmZpbGVJZCk7XG5cbiAgICAgICAgICBuZXdGaWxlSWQgPSBmLmZpbGVJZDtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChuZXdGaWxlSWQgIT0gdW5kZWZpbmVkIHx8IG1ldGFDb250ZXh0ICE9IGVkaXRhYmxlRmlsZS5tZXRhKSB7XG4gICAgICAgICAgY29uc3QgbmV3VmVyc2lvbiA9IGRvY1R5cGUuZW5hYmxlVmVyc2lvbmluZyA/IChlZGl0YWJsZUZpbGUudmVyc2lvbiA/PyAxKSArIDEgOiB1bmRlZmluZWQ7XG4gICAgICAgICAgbGV0IHJldmlld1JlY29yZElEID0gdW5kZWZpbmVkO1xuICAgICAgICAgIGlmIChpc1Jldmlld1NlbnQpIHtcbiAgICAgICAgICAgIGNvbnN0IGNvbXAgPSBhd2FpdCBpbXBvcnQoJy4uL3dvcmtmbG93L2RvY3VtZW50LXJldmlldy9kb2N1bWVudC1zZW5kLXRvLXJldmlldy1wb3B1cC5jb21wb25lbnQnKS50aGVuKFxuICAgICAgICAgICAgICAobSkgPT4gbS5BWE1Eb2N1bWVudFNlbmRUb1Jldmlld1BvcHVwQ29tcG9uZW50LFxuICAgICAgICAgICAgKTtcbiAgICAgICAgICAgIGNvbnN0IHJlc3VsdCA9IGF3YWl0IHRoaXMucG9wdXBTZXJ2aWNlLm9wZW4oY29tcCwge1xuICAgICAgICAgICAgICB0aXRsZTogYXdhaXQgdGhpcy50cmFuc2xhdGUudHJhbnNsYXRlQXN5bmMoJ2RvY3VtZW50LXJldmlldy5jb25maXJtLXNlbmQudGl0bGUnLCB7XG4gICAgICAgICAgICAgICAgc2NvcGU6ICdkb2N1bWVudC1tYW5hZ2VtZW50JyxcbiAgICAgICAgICAgICAgICBwYXJhbXM6IHsgdGl0bGU6IGVkaXRhYmxlRmlsZS5uYW1lIH0sXG4gICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgICBkYXRhOiB7XG4gICAgICAgICAgICAgICAgZG9jdW1lbnRJZDogZWRpdGFibGVGaWxlLmlkLFxuICAgICAgICAgICAgICAgIGRvY3VtZW50VGl0bGU6IGVkaXRhYmxlRmlsZS5uYW1lLFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfSk7XG5cbiAgICAgICAgICAgIGlmIChyZXN1bHQuZGF0YSAhPSBudWxsICYmIHJlc3VsdC5kYXRhLmNvbmZpcm1lZCkge1xuICAgICAgICAgICAgICByZXZpZXdSZWNvcmRJRCA9IGF3YWl0IHRoaXMucmV2aWV3U2VydmljZS5pbnNlcnRPbmUoe1xuICAgICAgICAgICAgICAgIGRvY3VtZW50SWQ6IG5vZGUuaWQsXG4gICAgICAgICAgICAgICAgdmVyc2lvbjogbmV3VmVyc2lvbiA/PyAwLFxuICAgICAgICAgICAgICAgIHJldmlld1N0YXR1czogJ1BlbmRpbmcnLFxuICAgICAgICAgICAgICAgIG1vZGlmaWVkQnk6IHRoaXMuc2Vzc2lvblNlcnZpY2UudXNlciBhcyBBWFBBcHBsaWNhdGlvblVzZXJSZWZlcmVuY2UsXG4gICAgICAgICAgICAgICAgcmV2aWV3ZXJJZDogcmVzdWx0LmRhdGEuYXNzaWduZWRUbyxcbiAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgYXdhaXQgdGhpcy5kb2N1bWVudFNlcnZpY2UudXBkYXRlT25lKG5vZGUuaWQsIHtcbiAgICAgICAgICAgIGZpbGVJZDogbmV3RmlsZUlkID8/IGVkaXRhYmxlRmlsZS5maWxlSWQsXG4gICAgICAgICAgICBtZXRhOiBtZXRhQ29udGV4dCxcbiAgICAgICAgICAgIHZlcnNpb246IG5ld1ZlcnNpb24sXG4gICAgICAgICAgICByZXZpZXdSZWNvcmRJZDogcmV2aWV3UmVjb3JkSUQsXG4gICAgICAgICAgICBzdGF0dXM6IGRvY1R5cGUucmVxdWlyZXNSZXZpZXcgPyAoaXNSZXZpZXdTZW50ID8gJ1BlbmRpbmdSZXZpZXcnIDogJ0RyYWZ0JykgOiAnQ29tcGxldGVkJyxcbiAgICAgICAgICB9KTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgfVxuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuICB9XG5cbiAgLy8jZW5kcmVnaW9uXG5cbiAgLy8jcmVnaW9uIC0tLS0gICBEaWFsb2cgT3BlcmF0aW9ucyAgIC0tLS1cblxuICAvKipcbiAgICogU2hvd3Mgc2hhcmUgZGlhbG9nIGZvciBhIG5vZGVcbiAgICovXG4gIGFzeW5jIHNob3dTaGFyZURpYWxvZyhub2RlOiBBWE1Eb2N1bWVudEV4cGxvcmVyTm9kZSk6IFByb21pc2U8dm9pZD4ge1xuICAgIGNvbnN0IGNvbXAgPSAoYXdhaXQgaW1wb3J0KCcuL2NvbXBvbmVudHMvc2hhcmUtZGlhbG9nL3NoYXJlLWRpYWxvZy5jb21wb25lbnQnKSkuQVhNU2hhcmVEaWFsb2dDb21wb25lbnQ7XG4gICAgY29uc3QgcG9wdXAgPSBhd2FpdCB0aGlzLnBvcHVwU2VydmljZS5vcGVuKGNvbXAsIHtcbiAgICAgIHRpdGxlOiAnU2hhcmUnLFxuICAgICAgZGF0YToge1xuICAgICAgICBub2RlLFxuICAgICAgfSxcbiAgICB9KTtcblxuICAgIGlmIChwb3B1cC5kYXRhPy5yZXN1bHQpIHtcbiAgICAgIC8vIEhhbmRsZSB0aGUgc2hhcmUgYWN0aW9uIHdpdGggcG9wdXAuZGF0YS5kYXRhXG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIFNob3dzIHNoYXJlIHZpYSBlbWFpbCBkaWFsb2cgZm9yIGEgbm9kZVxuICAgKi9cbiAgYXN5bmMgc2hvd1NoYXJlV2l0aEVtYWlsRGlhbG9nKG5vZGU6IEFYTURvY3VtZW50RXhwbG9yZXJOb2RlKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgY29uc3QgY29tcCA9IChhd2FpdCBpbXBvcnQoJy4vY29tcG9uZW50cy9zaGFyZS1lbWFpbC1kaWFsb2cvc2hhcmUtZW1haWwtZGlhbG9nLmNvbXBvbmVudCcpKVxuICAgICAgLkFYTVNoYXJlRW1haWxEaWFsb2dDb21wb25lbnQ7XG4gICAgY29uc3QgcG9wdXAgPSBhd2FpdCB0aGlzLnBvcHVwU2VydmljZS5vcGVuKGNvbXAsIHtcbiAgICAgIHRpdGxlOiAnU2hhcmUgdmlhIEVtYWlsJyxcbiAgICAgIGRhdGE6IHtcbiAgICAgICAgbm9kZSxcbiAgICAgIH0sXG4gICAgfSk7XG5cbiAgICBpZiAocG9wdXAuZGF0YT8ucmVzdWx0KSB7XG4gICAgICAvLyBIYW5kbGUgdGhlIHNoYXJlIHZpYSBlbWFpbCBhY3Rpb24gd2l0aCBwb3B1cC5kYXRhLmRhdGFcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogU2hvd3MgbGluayBkaWFsb2cgZm9yIGEgbm9kZVxuICAgKi9cbiAgYXN5bmMgc2hvd0xpbmtEaWFsb2cobm9kZTogQVhNRG9jdW1lbnRFeHBsb3Jlck5vZGUpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICBjb25zdCBjb21wID0gKGF3YWl0IGltcG9ydCgnLi9jb21wb25lbnRzL2xpbmstZGlhbG9nL2xpbmstZGlhbG9nLmNvbXBvbmVudCcpKS5BWE1MaW5rRGlhbG9nQ29tcG9uZW50O1xuICAgIGNvbnN0IHBvcHVwID0gYXdhaXQgdGhpcy5wb3B1cFNlcnZpY2Uub3Blbihjb21wLCB7XG4gICAgICB0aXRsZTogJ1NoYXJlIExpbmsnLFxuICAgICAgZGF0YToge1xuICAgICAgICBub2RlLFxuICAgICAgfSxcbiAgICB9KTtcblxuICAgIGlmIChwb3B1cC5kYXRhPy5yZXN1bHQpIHtcbiAgICAgIC8vIEhhbmRsZSB0aGUgbGluayBnZW5lcmF0aW9uIHdpdGggcG9wdXAuZGF0YS5kYXRhXG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIFNob3dzIGxvY2sgZGlhbG9nIGZvciBhIGRvY3VtZW50XG4gICAqL1xuICBhc3luYyBzaG93TG9ja0RpYWxvZyhub2RlOiBBWE1Eb2N1bWVudEV4cGxvcmVyTm9kZSk6IFByb21pc2U8Ym9vbGVhbj4ge1xuICAgIGNvbnN0IHJlc3VsdCA9IGF3YWl0IHRoaXMud29ya2Zsb3cuZXhlY3V0ZSgnbG9jay1wb3B1cCcsIHtcbiAgICAgIHJlZklkOiBub2RlLmlkLFxuICAgICAgcmVmVHlwZTogYCR7Um9vdENvbmZpZy5tb2R1bGUubmFtZX0uJHtub2RlLnR5cGUgPT09ICdmb2xkZXInID8gUm9vdENvbmZpZy5lbnRpdGllcy5mb2xkZXIubmFtZSA6IFJvb3RDb25maWcuZW50aXRpZXMuZG9jdW1lbnQubmFtZX1gLFxuICAgIH0pO1xuXG4gICAgY29uc3QgaXNDYW5jZWxlZCA9IHJlc3VsdC5nZXRPdXRwdXQoJ2lzQ2FuY2VsZWQnKSBhcyBib29sZWFuO1xuICAgIHJldHVybiAhaXNDYW5jZWxlZDtcbiAgfVxuXG4gIC8qKlxuICAgKiBTaG93cyB1bmxvY2sgZGlhbG9nIGZvciBhIGRvY3VtZW50XG4gICAqL1xuICBhc3luYyBzaG93VW5sb2NrRGlhbG9nKG5vZGU6IEFYTURvY3VtZW50RXhwbG9yZXJOb2RlKTogUHJvbWlzZTxib29sZWFuPiB7XG4gICAgY29uc3QgcmVzdWx0ID0gYXdhaXQgdGhpcy53b3JrZmxvdy5leGVjdXRlKCd1bmxvY2stY29uZmlybScsIHtcbiAgICAgIHJlZklkOiBub2RlLmlkLFxuICAgICAgcmVmVHlwZTogYCR7Um9vdENvbmZpZy5tb2R1bGUubmFtZX0uJHtub2RlLnR5cGUgPT09ICdmb2xkZXInID8gUm9vdENvbmZpZy5lbnRpdGllcy5mb2xkZXIubmFtZSA6IFJvb3RDb25maWcuZW50aXRpZXMuZG9jdW1lbnQubmFtZX1gLFxuICAgIH0pO1xuXG4gICAgY29uc3QgdW5sb2NrZWQgPSByZXN1bHQuZ2V0T3V0cHV0KCd1bmxvY2tlZCcpIGFzIGJvb2xlYW47XG4gICAgcmV0dXJuIHVubG9ja2VkO1xuICB9XG5cbiAgLyoqXG4gICAqIFNob3dzIGZvbGRlciBlZGl0IGRpYWxvZ1xuICAgKi9cbiAgYXN5bmMgc2hvd0ZvbGRlckVkaXREaWFsb2cobm9kZTogQVhNRG9jdW1lbnRFeHBsb3Jlck5vZGUpOiBQcm9taXNlPGJvb2xlYW4+IHtcbiAgICBjb25zdCBjb21wID0gKGF3YWl0IGltcG9ydCgnLi4vZG9jdW1lbnQtZXhwbG9yZXIvY29tcG9uZW50cy9jcmVhdGUtZm9sZGVyLWRpYWxvZy9jcmVhdGUtZm9sZGVyLWRpYWxvZy5jb21wb25lbnQnKSlcbiAgICAgIC5BWE1DcmVhdGVGb2xkZXJEaWFsb2c7XG4gICAgY29uc3QgcG9wdXAgPSBhd2FpdCB0aGlzLnBvcHVwU2VydmljZS5vcGVuKGNvbXAsIHtcbiAgICAgIHRpdGxlOiBhd2FpdCB0aGlzLnRyYW5zbGF0ZS50cmFuc2xhdGVBc3luYygnQGRvY3VtZW50LW1hbmFnZW1lbnQ6YWN0aW9ucy51cGRhdGUtZm9sZGVyJyksXG4gICAgICBkYXRhOiB7XG4gICAgICAgIGRlZmF1bHRWYWx1ZTogbm9kZSxcbiAgICAgIH0sXG4gICAgfSk7XG5cbiAgICByZXR1cm4gcG9wdXAuZGF0YT8ucmVzdWx0O1xuICB9XG5cbiAgLyoqXG4gICAqIFNob3dzIGNyZWF0ZSBmb2xkZXIgZGlhbG9nXG4gICAqL1xuICBhc3luYyBzaG93Q3JlYXRlRm9sZGVyRGlhbG9nKHBhcmVudElkPzogc3RyaW5nKTogUHJvbWlzZTxBWE1Eb2N1bWVudEV4cGxvcmVyTm9kZSB8IG51bGw+IHtcbiAgICBjb25zdCBjb21wID0gKGF3YWl0IGltcG9ydCgnLi4vZG9jdW1lbnQtZXhwbG9yZXIvY29tcG9uZW50cy9jcmVhdGUtZm9sZGVyLWRpYWxvZy9jcmVhdGUtZm9sZGVyLWRpYWxvZy5jb21wb25lbnQnKSlcbiAgICAgIC5BWE1DcmVhdGVGb2xkZXJEaWFsb2c7XG4gICAgY29uc3QgcG9wdXAgPSBhd2FpdCB0aGlzLnBvcHVwU2VydmljZS5vcGVuKGNvbXAsIHtcbiAgICAgIHRpdGxlOiBhd2FpdCB0aGlzLnRyYW5zbGF0ZS50cmFuc2xhdGVBc3luYygnQGRvY3VtZW50LW1hbmFnZW1lbnQ6YWN0aW9ucy5jcmVhdGUtZm9sZGVyJyksXG4gICAgICBkYXRhOiB7XG4gICAgICAgIHBhcmVudElkLFxuICAgICAgfSxcbiAgICB9KTtcbiAgICByZXR1cm4gcG9wdXAuZGF0YT8uZm9sZGVyIGFzIEFYTURvY3VtZW50RXhwbG9yZXJOb2RlO1xuICB9XG5cbiAgLyoqXG4gICAqIFNob3dzIHJlbmFtZSBwb3B1cCBmb3IgYSBub2RlXG4gICAqL1xuICBhc3luYyBzaG93UmVuYW1lUG9wdXAobm9kZTogQVhNRG9jdW1lbnRFeHBsb3Jlck5vZGUpOiBQcm9taXNlPEFYTURvY3VtZW50RXhwbG9yZXJOb2RlIHwgdW5kZWZpbmVkPiB7XG4gICAgY29uc3QgY29tcCA9IChhd2FpdCBpbXBvcnQoJy4uL2RvY3VtZW50LWV4cGxvcmVyL2NvbXBvbmVudHMvcmVuYW1lLW5vZGUtZGlhbG9nL3JlbmFtZS1ub2RlLWRpYWxvZy5jb21wb25lbnQnKSlcbiAgICAgIC5BWE1SZW5hbWVOb2RlRGlhbG9nO1xuICAgIGNvbnN0IHBvcHVwID0gYXdhaXQgdGhpcy5wb3B1cFNlcnZpY2Uub3Blbihjb21wLCB7XG4gICAgICB0aXRsZTogJ3QoXCJhY3Rpb25zLnJlbmFtZVwiKScsXG4gICAgICBkYXRhOiB7XG4gICAgICAgIG5vZGUsXG4gICAgICB9LFxuICAgIH0pO1xuXG4gICAgcmV0dXJuIHBvcHVwLmRhdGE/LnJlc3VsdDtcbiAgfVxuXG4gIC8qKlxuICAgKiBTaG93cyBkZWxldGUgbm9kZXMgY29uZmlybWF0aW9uIGRpYWxvZ1xuICAgKi9cbiAgYXN5bmMgc2hvd0RlbGV0ZU5vZGVzRGlhbG9nKG5vZGVJZHM6IEFYTURvY3VtZW50RXhwbG9yZXJOb2RlW10pOiBQcm9taXNlPGJvb2xlYW4+IHtcbiAgICBjb25zdCByZXN1bHQgPSBhd2FpdCB0aGlzLndvcmtmbG93LmV4ZWN1dGUoJ2RlbGV0ZS1lbnRpdHknLCB7XG4gICAgICBlbnRpdGllczogbm9kZUlkcy5tYXAoKG5vZGUpID0+ICh7XG4gICAgICAgIHNvdXJjZTogYCR7Um9vdENvbmZpZy5tb2R1bGUubmFtZX0uJHtcbiAgICAgICAgICBub2RlLnR5cGUgPT0gJ2ZvbGRlcicgPyBSb290Q29uZmlnLmVudGl0aWVzLmZvbGRlci5uYW1lIDogUm9vdENvbmZpZy5lbnRpdGllcy5kb2N1bWVudC5uYW1lXG4gICAgICAgIH1gLFxuICAgICAgICBpZHM6IFtub2RlLmlkXSxcbiAgICAgIH0pKSxcbiAgICB9KTtcbiAgICByZXR1cm4gKHJlc3VsdC5nZXRPdXRwdXQoJ3Jlc3VsdCcpIGFzIGJvb2xlYW4pID8/IGZhbHNlO1xuICB9XG5cbiAgLyoqXG4gICAqIFNob3dzIGNob29zZSBmaWxlIGRpYWxvZ1xuICAgKi9cbiAgYXN5bmMgc2hvd0Nob29zZUZpbGVEaWFsb2coc2NvcGU6IEFYUFBsYXRmb3JtU2NvcGUpOiBQcm9taXNlPEFYTURvY3VtZW50RXhwbG9yZXJOb2RlW10+IHtcbiAgICBjb25zdCBjb21wID0gKGF3YWl0IGltcG9ydCgnLi4vZHJpdmUtY2hvb3NlL2RyaXZlLWNob29zZS5jb21wb25lbnQnKSkuQVhNRG9jdW1lbnREcml2ZUNob29zZUNvbXBvbmVudDtcbiAgICBjb25zdCByZXN1bHQgPSBhd2FpdCB0aGlzLnBvcHVwU2VydmljZS5vcGVuKGNvbXAsIHtcbiAgICAgIHRpdGxlOiBhd2FpdCB0aGlzLnRyYW5zbGF0ZS50cmFuc2xhdGVBc3luYygnQGRvY3VtZW50LW1hbmFnZW1lbnQ6YWN0aW9ucy5jaG9vc2UtZnJvbS1kcml2ZScpLFxuICAgICAgZGF0YToge1xuICAgICAgICBzY29wZTogc2NvcGUsXG4gICAgICB9LFxuICAgIH0pO1xuICAgIGlmIChyZXN1bHQuZGF0YT8ucmVzdWx0KSB7XG4gICAgICByZXR1cm4gY2FzdEFycmF5KHJlc3VsdC5kYXRhLml0ZW1zKTtcbiAgICB9XG4gICAgcmV0dXJuIFtdO1xuICB9XG5cbiAgLyoqXG4gICAqIFNob3dzIGZpbGUgdmlld2VyIHBvcHVwXG4gICAqL1xuICBhc3luYyBzaG93RmlsZVZpZXdlclBvcHVwKFxuICAgIG5vZGU6IEFYTURvY3VtZW50RXhwbG9yZXJOb2RlLFxuICAgIG9wdGlvbnM/OiB7IGluZGV4PzogbnVtYmVyOyBmb2xkZXJWaXJ0dWFsRmlsZXM/OiBBWE1Eb2N1bWVudEV4cGxvcmVyTm9kZVtdIH0sXG4gICk6IFByb21pc2U8dm9pZD4ge1xuICAgIGNvbnN0IGlzVmlydHVhbEZvbGRlciA9IG5vZGUucGFyZW50SWQgPT09ICd2aXJ0dWFsJztcbiAgICBjb25zdCBwYXJlbnRGb2xkZXJOYW1lID0gaXNWaXJ0dWFsRm9sZGVyID8gJ1ZpcnR1YWwnIDogKGF3YWl0IHRoaXMuZm9sZGVyU2VydmljZS5nZXRPbmUobm9kZS5wYXJlbnRJZCEpKS5uYW1lO1xuXG4gICAgY29uc3QgZG9jdW1lbnRzID0gaXNWaXJ0dWFsRm9sZGVyXG4gICAgICA/IChvcHRpb25zPy5mb2xkZXJWaXJ0dWFsRmlsZXMgPz8gW10pXG4gICAgICA6ICgoYXdhaXQgdGhpcy5mb2xkZXJTZXJ2aWNlLmdldE9uZShub2RlLnBhcmVudElkISkpLmRvY3VtZW50cyA/PyBbXSk7XG5cbiAgICBjb25zdCBub2RlcyA9IGF3YWl0IFByb21pc2UuYWxsKFxuICAgICAgZG9jdW1lbnRzXG4gICAgICAgIC5maWx0ZXIoKGl0ZW0pID0+IHtcbiAgICAgICAgICBpZiAoIWl0ZW0ubmFtZSkgcmV0dXJuIGZhbHNlO1xuICAgICAgICAgIGNvbnN0IGV4dCA9IGl0ZW0ubmFtZS5zcGxpdCgnLicpLnBvcCgpPy50b0xvd2VyQ2FzZSgpO1xuICAgICAgICAgIHJldHVybiBleHQgJiYgWydqcGcnLCAnanBlZycsICdwbmcnLCAnZ2lmJywgJ2JtcCcsICd3ZWJwJywgJ3BkZiddLmluY2x1ZGVzKGV4dCk7XG4gICAgICAgIH0pXG4gICAgICAgIC5tYXAoKGRvYykgPT4gdGhpcy5tYXBEb2N1bWVudFRvTWVkaWFWaWV3ZXJEYXRhKGRvYykpLFxuICAgICk7XG5cbiAgICBjb25zdCBjb21wID0gKGF3YWl0IGltcG9ydCgnLi9jb21wb25lbnRzL2ZpbGUtdmlld2VyLXBvcHVwL2ZpbGUtdmlld2VyLXBvcHVwLmNvbXBvbmVudCcpKVxuICAgICAgLkFYTUZpbGVWaWV3ZXJQb3B1cENvbXBvbmVudDtcblxuICAgIGF3YWl0IHRoaXMucG9wdXBTZXJ2aWNlLm9wZW4oY29tcCwge1xuICAgICAgdGl0bGU6IHBhcmVudEZvbGRlck5hbWUsXG4gICAgICBkYXRhOiB7XG4gICAgICAgIG5vZGVzLFxuICAgICAgICBpbmRleDogaXNWaXJ0dWFsRm9sZGVyXG4gICAgICAgICAgPyAob3B0aW9ucz8uZm9sZGVyVmlydHVhbEZpbGVzPy5maW5kSW5kZXgoKGYpID0+IGYuaWQgPT09IG5vZGUuaWQpID8/IDApXG4gICAgICAgICAgOiAob3B0aW9ucz8uaW5kZXggPz8gMCksXG4gICAgICB9LFxuICAgIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIFVwZGF0ZXMgYSBmaWxlIG5hbWVcbiAgICovXG4gIGFzeW5jIHVwZGF0ZUZpbGVOYW1lKG5vZGU6IEFYTURvY3VtZW50RXhwbG9yZXJOb2RlLCBuYW1lOiBzdHJpbmcpOiBQcm9taXNlPEFYTURvY3VtZW50RXhwbG9yZXJOb2RlPiB7XG4gICAgaWYgKG5vZGUuc3RvcmFnZVR5cGUgPT0gJ3BoeXNpY2FsJykge1xuICAgICAgcmV0dXJuIHRoaXMubWFwRmlsZVRvTm9kZShhd2FpdCB0aGlzLmRvY3VtZW50U2VydmljZS51cGRhdGVPbmUobm9kZS5pZCwgeyBuYW1lIH0pKTtcbiAgICB9IGVsc2Uge1xuICAgICAgbm9kZS5uYW1lID0gbmFtZTtcbiAgICAgIHJldHVybiBub2RlO1xuICAgIH1cbiAgfVxuXG4gIC8vI2VuZHJlZ2lvblxufVxuXG4vLyNlbmRyZWdpb25cblxuLy8jcmVnaW9uIC0tLS0gICBTY29wZWQgRHJpdmUgU2VydmljZSAgIC0tLS1cblxuLyoqXG4gKiBTY29wZWQgZHJpdmUgc2VydmljZSBmb3Igc3BlY2lmaWMgcGxhdGZvcm0gc2NvcGVzXG4gKi9cbmV4cG9ydCBjbGFzcyBTY29wZWREcml2ZVNlcnZpY2Uge1xuICAvLyNyZWdpb24gLS0tLSAgIENvbnN0cnVjdG9yICAgLS0tLVxuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgcGFyZW50OiBBWE1Eb2N1bWVudE1hbmFnZXJTZXJ2aWNlLFxuICAgIHByaXZhdGUgc2NvcGU6IEFYUFBsYXRmb3JtU2NvcGUsXG4gICAgcHJpdmF0ZSBvcHRpb25zPzogeyB0ZW5hbnRJZD86IHN0cmluZzsgdXNlcklkPzogc3RyaW5nIH0sXG4gICkge1xuICAgIHRoaXMudmFsaWRhdGVTY29wZU9wdGlvbnMoKTtcbiAgfVxuXG4gIC8vI2VuZHJlZ2lvblxuXG4gIC8vI3JlZ2lvbiAtLS0tICAgVmFsaWRhdGlvbiBNZXRob2RzICAgLS0tLVxuXG4gIC8qKlxuICAgKiBWYWxpZGF0ZXMgdGhlIHNjb3BlIG9wdGlvbnMgYXJlIGFwcHJvcHJpYXRlIGZvciB0aGUgc2VsZWN0ZWQgc2NvcGVcbiAgICovXG4gIHByaXZhdGUgdmFsaWRhdGVTY29wZU9wdGlvbnMoKTogdm9pZCB7XG4gICAgc3dpdGNoICh0aGlzLnNjb3BlKSB7XG4gICAgICBjYXNlIEFYUFBsYXRmb3JtU2NvcGUuVGVuYW50OlxuICAgICAgICBpZiAoIXRoaXMub3B0aW9ucz8udGVuYW50SWQpIHtcbiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ1RlbmFudCBJRCBpcyByZXF1aXJlZCBmb3IgdGVuYW50IHNjb3BlJyk7XG4gICAgICAgIH1cbiAgICAgICAgYnJlYWs7XG4gICAgICBjYXNlIEFYUFBsYXRmb3JtU2NvcGUuVXNlcjpcbiAgICAgICAgaWYgKCF0aGlzLm9wdGlvbnM/LnRlbmFudElkIHx8ICF0aGlzLm9wdGlvbnM/LnVzZXJJZCkge1xuICAgICAgICAgIHRocm93IG5ldyBFcnJvcignQm90aCBUZW5hbnQgSUQgYW5kIFVzZXIgSUQgYXJlIHJlcXVpcmVkIGZvciB1c2VyIHNjb3BlJyk7XG4gICAgICAgIH1cbiAgICAgICAgYnJlYWs7XG4gICAgfVxuICB9XG5cbiAgLy8jZW5kcmVnaW9uXG5cbiAgLy8jcmVnaW9uIC0tLS0gICBTY29wZWQgT3BlcmF0aW9ucyAgIC0tLS1cblxuICAvKipcbiAgICogR2V0cyByb290IGZvbGRlciBmb3IgdGhpcyBzY29wZVxuICAgKi9cbiAgYXN5bmMgZ2V0Um9vdCgpOiBQcm9taXNlPHtcbiAgICBwYXRoOiBBWE1Eb2N1bWVudEV4cGxvcmVyTm9kZVtdO1xuICAgIHJlc3VsdDogQVhNRG9jdW1lbnRFeHBsb3Jlck5vZGU7XG4gIH0+IHtcbiAgICByZXR1cm4gdGhpcy5wYXJlbnQuZ2V0Um9vdCh0aGlzLnNjb3BlLCB0aGlzLm9wdGlvbnMpO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldHMgZm9sZGVyIGZvciB0aGlzIHNjb3BlXG4gICAqL1xuICBhc3luYyBnZXRGb2xkZXIoZm9sZGVySWQ6IHN0cmluZyk6IFByb21pc2U8e1xuICAgIHBhdGg6IEFYTURvY3VtZW50RXhwbG9yZXJOb2RlW107XG4gICAgcmVzdWx0OiBBWE1Eb2N1bWVudEV4cGxvcmVyTm9kZTtcbiAgfT4ge1xuICAgIHJldHVybiB0aGlzLnBhcmVudC5nZXRGb2xkZXIodGhpcy5zY29wZSwgZm9sZGVySWQsIHRoaXMub3B0aW9ucyk7XG4gIH1cblxuICAvKipcbiAgICogQ3JlYXRlcyBmb2xkZXIgaW4gdGhpcyBzY29wZVxuICAgKi9cbiAgYXN5bmMgY3JlYXRlRm9sZGVyKFxuICAgIGRhdGE6IE9taXQ8QVhNRG9jdW1lbnRNYW5hZ2VtZW50Rm9sZGVyQ3JlYXRlRHRvLCAndGVuYW50SWQnIHwgJ3VzZXJJZCc+LFxuICApOiBQcm9taXNlPEFYTURvY3VtZW50RXhwbG9yZXJOb2RlPiB7XG4gICAgY29uc3QgZm9sZGVyRGF0YTogQVhNRG9jdW1lbnRNYW5hZ2VtZW50Rm9sZGVyQ3JlYXRlRHRvID0ge1xuICAgICAgLi4uZGF0YSxcbiAgICAgIHRlbmFudElkOiB0aGlzLm9wdGlvbnM/LnRlbmFudElkLFxuICAgICAgdXNlcklkOiB0aGlzLm9wdGlvbnM/LnVzZXJJZCxcbiAgICB9O1xuICAgIHJldHVybiB0aGlzLnBhcmVudC5jcmVhdGVGb2xkZXIoZm9sZGVyRGF0YSk7XG4gIH1cblxuICAvKipcbiAgICogVXBkYXRlcyBmb2xkZXIgaW4gdGhpcyBzY29wZVxuICAgKi9cbiAgYXN5bmMgdXBkYXRlRm9sZGVyKGZvbGRlcklkOiBzdHJpbmcsIGRhdGE6IFVwZGF0ZUZvbGRlckR0byk6IFByb21pc2U8QVhNRG9jdW1lbnRFeHBsb3Jlck5vZGU+IHtcbiAgICByZXR1cm4gdGhpcy5wYXJlbnQudXBkYXRlRm9sZGVyKGZvbGRlcklkLCBkYXRhKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBEZWxldGVzIGZvbGRlciBpbiB0aGlzIHNjb3BlXG4gICAqL1xuICBhc3luYyBkZWxldGVGb2xkZXIoZm9sZGVySWQ6IHN0cmluZyk6IFByb21pc2U8dm9pZD4ge1xuICAgIHJldHVybiB0aGlzLnBhcmVudC5kZWxldGVGb2xkZXIoZm9sZGVySWQpO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldHMgYXZhaWxhYmxlIHNwYWNlIGZvciB0aGlzIHNjb3BlXG4gICAqL1xuICBhc3luYyBnZXRBdmFpbGFibGVTcGFjZSgpOiBQcm9taXNlPG51bWJlcj4ge1xuICAgIHJldHVybiB0aGlzLnBhcmVudC5nZXRBdmFpbGFibGVTcGFjZSgpO1xuICB9XG5cbiAgLyoqXG4gICAqIFNlYXJjaGVzIGZvbGRlcnMgaW4gdGhpcyBzY29wZVxuICAgKi9cbiAgYXN5bmMgc2VhcmNoRm9sZGVycyhzZWFyY2hUZXJtOiBzdHJpbmcpOiBQcm9taXNlPEFYTURvY3VtZW50RXhwbG9yZXJOb2RlW10+IHtcbiAgICB0aGlzLnZhbGlkYXRlU2NvcGVPcHRpb25zKCk7XG4gICAgcmV0dXJuIHRoaXMucGFyZW50LnNlYXJjaEZvbGRlcnMoc2VhcmNoVGVybSwgdGhpcy5zY29wZSwgdGhpcy5vcHRpb25zKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBTZWFyY2hlcyBmaWxlcyBpbiB0aGlzIHNjb3BlXG4gICAqL1xuICBhc3luYyBzZWFyY2hGaWxlcyhzZWFyY2hUZXJtOiBzdHJpbmcpOiBQcm9taXNlPEFYTURvY3VtZW50RXhwbG9yZXJOb2RlW10+IHtcbiAgICB0aGlzLnZhbGlkYXRlU2NvcGVPcHRpb25zKCk7XG4gICAgcmV0dXJuIHRoaXMucGFyZW50LnNlYXJjaEZpbGVzKHNlYXJjaFRlcm0sIHRoaXMuc2NvcGUsIHRoaXMub3B0aW9ucyk7XG4gIH1cblxuICAvKipcbiAgICogU2VhcmNoZXMgbm9kZXMgaW4gdGhpcyBzY29wZVxuICAgKi9cbiAgYXN5bmMgc2VhcmNoTm9kZXMoc2VhcmNoVGVybTogc3RyaW5nKTogUHJvbWlzZTxBWE1Eb2N1bWVudEV4cGxvcmVyTm9kZVtdPiB7XG4gICAgdGhpcy52YWxpZGF0ZVNjb3BlT3B0aW9ucygpO1xuICAgIHJldHVybiB0aGlzLnBhcmVudC5zZWFyY2hOb2RlcyhzZWFyY2hUZXJtLCB0aGlzLnNjb3BlLCB0aGlzLm9wdGlvbnMpO1xuICB9XG5cbiAgLyoqXG4gICAqIENyZWF0ZXMgYSBjb3B5IG9mIGEgbm9kZSBpbiB0aGlzIHNjb3BlXG4gICAqL1xuICBhc3luYyBjb3B5KG5vZGU6IEFYTURvY3VtZW50RXhwbG9yZXJOb2RlKTogUHJvbWlzZTxBWE1Eb2N1bWVudEV4cGxvcmVyTm9kZT4ge1xuICAgIHRoaXMudmFsaWRhdGVTY29wZU9wdGlvbnMoKTtcbiAgICByZXR1cm4gdGhpcy5wYXJlbnQuY29weShub2RlKTtcbiAgfVxuXG4gIC8vI2VuZHJlZ2lvblxufVxuXG4vLyNlbmRyZWdpb25cbiJdfQ==","import { AXButtonModule } from '@acorex/components/button';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXDropdownButtonModule } from '@acorex/components/dropdown-button';\nimport { AXFormModule } from '@acorex/components/form';\nimport { AXLabelModule } from '@acorex/components/label';\nimport { AXBasePageComponent } from '@acorex/components/page';\nimport { AXSelectBoxModule } from '@acorex/components/select-box';\nimport { AXTranslationModule } from '@acorex/core/translation';\nimport { AXPLayoutBuilderModule } from '@acorex/platform/layout/builder';\nimport { AXPDynamicFormComponent, } from '@acorex/platform/layout/components';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, computed, inject, signal } from '@angular/core';\nimport { AXMDocumentService, } from '../../../../entities';\nimport * as i0 from \"@angular/core\";\nimport * as i1 from \"@acorex/components/button\";\nimport * as i2 from \"@acorex/components/decorators\";\nimport * as i3 from \"@acorex/components/dropdown-button\";\nimport * as i4 from \"@angular/common\";\nimport * as i5 from \"@acorex/core/translation\";\nexport class AXMDocumentTypeChooseFileComponent extends AXBasePageComponent {\n constructor() {\n super(...arguments);\n this.documentService = inject(AXMDocumentService);\n //update Data\n this.metaData = {};\n this.formDefinition = signal({\n groups: [],\n }, ...(ngDevMode ? [{ debugName: \"formDefinition\" }] : []));\n this.formContext = signal({}, ...(ngDevMode ? [{ debugName: \"formContext\" }] : []));\n this.defaultLayout = computed(() => {\n return {\n positions: {\n default: {\n colSpan: 12,\n },\n },\n };\n }, ...(ngDevMode ? [{ debugName: \"defaultLayout\" }] : []));\n }\n async ngOnInit() {\n this.isLoading = true;\n //\n await this.renderForm();\n //\n this.isLoading = false;\n }\n handleCancel() {\n this.close({\n cancel: true,\n });\n }\n async renderForm() {\n const groups = await Promise.all(this.files.map(async (item, index) => {\n return {\n name: item.id ?? item.name,\n title: item.name,\n parameters: [\n ...(await Promise.all(this.documentType.meta.map(async (meta) => {\n let node = typeof meta.interface === 'function'\n ? await meta.interface()\n : JSON.parse(meta.interface)['children'][0]['children'][0];\n node = {\n ...node,\n path: `files[${index}].${meta.name}`,\n defaultValue: this.metaData[meta.name]?.value,\n };\n return {\n path: `files[${index}].${meta.name}`,\n title: meta.title,\n widget: node,\n };\n }))),\n {\n path: `files[${index}].file`,\n title: 'File',\n widget: {\n path: `files[${index}].file`,\n type: 'file-uploader',\n defaultValue: [item],\n options: {\n fileEditable: false,\n readonly: true,\n accept: this.documentType.type.selectedItems.map((item) => `.${item.name.split('.')[1]}`).join(','),\n },\n },\n },\n ],\n };\n }));\n this.formDefinition.set({\n groups,\n });\n }\n handleContextChange(event) {\n this.formContext.set(event);\n }\n /**\n * Extracts meta data from FileContextItem by filtering out non-meta properties\n */\n extractMetaFromFileContext(item) {\n const meta = {};\n // Get all keys from the item\n const keys = Object.keys(item ?? {});\n // Filter out known properties and extract meta fields\n keys.forEach((key) => {\n // Skip known properties\n if (['file'].includes(key)) {\n return;\n }\n // Add the remaining properties as meta\n meta[key] = {\n name: key,\n title: this.documentType.meta.find((meta) => meta.name === key)?.title ?? key,\n value: item?.[key],\n };\n });\n return meta;\n }\n async handleSubmit(isReviewSent = false) {\n this.isLoading = true;\n if (this.documentId) {\n await this.documentService.updateOne(this.documentId, {\n meta: this.extractMetaFromFileContext(this.formContext()['files'][0]),\n });\n this.isLoading = false;\n this.close({\n isReviewSent: isReviewSent,\n fileIds: [this.documentId],\n cancel: false,\n });\n }\n else {\n const promises = this.formContext()['files'].map(async (item) => {\n const f = item.file[0];\n const file = await this.documentService.insertOne({\n fileId: f,\n name: f.name,\n title: f.name,\n documentType: this.documentType,\n parentId: this.parentId,\n size: f.size || 0,\n meta: this.extractMetaFromFileContext(item),\n });\n return file;\n });\n const fileIds = await Promise.all(promises);\n this.isLoading = false;\n this.close({\n isReviewSent: isReviewSent,\n fileIds: fileIds,\n cancel: false,\n });\n }\n }\n handleSubmitWithoutSave() {\n this.close({\n cancel: false,\n files: this.formContext()['files']\n .map((item) => ({\n ...item,\n meta: this.extractMetaFromFileContext(item),\n })),\n });\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: AXMDocumentTypeChooseFileComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }\n static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"17.0.0\", version: \"20.1.8\", type: AXMDocumentTypeChooseFileComponent, isStandalone: true, selector: \"ng-component\", usesInheritance: true, ngImport: i0, template: \"<ax-content>\\n <div class=\\\"ax-flex ax-flex-col ax-py-4 ax-px-6\\\">\\n <axp-dynamic-form \\n [formDefinition]=\\\"formDefinition()\\\" \\n [context]=\\\"formContext()\\\"\\n [layoutConfig]=\\\"defaultLayout()\\\" \\n [layoutLook]=\\\"'compact'\\\" \\n (contextChange)=\\\"handleContextChange($event)\\\"\\n >\\n </axp-dynamic-form>\\n </div>\\n</ax-content>\\n<ax-footer>\\n @if (parentId == null || parentId == undefined) {\\n <ax-suffix>\\n <ax-button [text]=\\\"'submit' | translate | async\\\" (onClick)=\\\"handleSubmitWithoutSave()\\\" look=\\\"solid\\\" color=\\\"primary\\\"> </ax-button>\\n </ax-suffix>\\n } @else {\\n <ax-suffix>\\n <ax-button [text]=\\\"'cancel' | translate | async\\\" (onClick)=\\\"handleCancel()\\\"> </ax-button>\\n\\n @if (files.length == 1) {\\n <ax-dropdown-button\\n color=\\\"primary\\\"\\n [text]=\\\"('@common:submit' | translate | async)!\\\"\\n look=\\\"solid\\\"\\n (onClick)=\\\"handleSubmit()\\\"\\n >\\n <ax-button-item-list>\\n <ax-button-item\\n [text]=\\\"('@document-management:submitAndSendForReview' | translate | async)!\\\"\\n (onClick)=\\\"handleSubmit(true)\\\"\\n >\\n </ax-button-item>\\n </ax-button-item-list>\\n </ax-dropdown-button>\\n } @else {\\n <ax-button\\n color=\\\"primary\\\"\\n [text]=\\\"('@common:submit' | translate | async)!\\\"\\n (onClick)=\\\"handleSubmit()\\\"\\n look=\\\"solid\\\"\\n >\\n </ax-button>\\n }\\n </ax-suffix>\\n }\\n</ax-footer>\\n\", dependencies: [{ kind: \"ngmodule\", type: CommonModule }, { kind: \"ngmodule\", type: \n //\n AXButtonModule }, { kind: \"component\", type: i1.AXButtonComponent, selector: \"ax-button\", inputs: [\"disabled\", \"size\", \"tabIndex\", \"color\", \"look\", \"text\", \"toggleable\", \"selected\", \"iconOnly\", \"type\", \"loadingText\"], outputs: [\"onBlur\", \"onFocus\", \"onClick\", \"selectedChange\", \"toggleableChange\", \"lookChange\", \"colorChange\", \"disabledChange\", \"loadingTextChange\"] }, { kind: \"component\", type: i1.AXButtonItemComponent, selector: \"ax-button-item\", inputs: [\"color\", \"disabled\", \"text\", \"selected\", \"divided\", \"data\", \"name\"], outputs: [\"onClick\", \"onFocus\", \"onBlur\", \"disabledChange\"] }, { kind: \"component\", type: i1.AXButtonItemListComponent, selector: \"ax-button-item-list\", inputs: [\"items\"], outputs: [\"onItemClick\"] }, { kind: \"ngmodule\", type: AXDecoratorModule }, { kind: \"component\", type: i2.AXDecoratorGenericComponent, selector: \"ax-footer, ax-header, ax-content, ax-divider, ax-form-hint, ax-prefix, ax-suffix, ax-text, ax-title, ax-subtitle, ax-placeholder, ax-overlay\" }, { kind: \"ngmodule\", type: AXFormModule }, { kind: \"ngmodule\", type: AXLabelModule }, { kind: \"ngmodule\", type: AXSelectBoxModule }, { kind: \"ngmodule\", type: AXTranslationModule }, { kind: \"ngmodule\", type: AXDropdownButtonModule }, { kind: \"component\", type: i3.AXDropdownButtonComponent, selector: \"ax-dropdown-button\", inputs: [\"disabled\", \"size\", \"color\", \"look\", \"text\", \"type\", \"mode\"], outputs: [\"onBlur\", \"onFocus\", \"onClick\", \"selectedChange\", \"lookChange\", \"colorChange\", \"disabledChange\"] }, { kind: \"ngmodule\", type: \n //\n AXPLayoutBuilderModule }, { kind: \"component\", type: AXPDynamicFormComponent, selector: \"axp-dynamic-form\", inputs: [\"formDefinition\", \"context\", \"layoutLook\", \"layoutDirection\", \"layoutConfig\"], outputs: [\"contextChange\", \"contextInitiated\", \"validityChange\"] }, { kind: \"pipe\", type: i4.AsyncPipe, name: \"async\" }, { kind: \"pipe\", type: i5.AXTranslatorPipe, name: \"translate\" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: AXMDocumentTypeChooseFileComponent, decorators: [{\n type: Component,\n args: [{ changeDetection: ChangeDetectionStrategy.OnPush, imports: [\n CommonModule,\n //\n AXButtonModule,\n AXDecoratorModule,\n AXFormModule,\n AXLabelModule,\n AXSelectBoxModule,\n AXTranslationModule,\n AXDropdownButtonModule,\n //\n AXPLayoutBuilderModule,\n AXPDynamicFormComponent,\n ], template: \"<ax-content>\\n <div class=\\\"ax-flex ax-flex-col ax-py-4 ax-px-6\\\">\\n <axp-dynamic-form \\n [formDefinition]=\\\"formDefinition()\\\" \\n [context]=\\\"formContext()\\\"\\n [layoutConfig]=\\\"defaultLayout()\\\" \\n [layoutLook]=\\\"'compact'\\\" \\n (contextChange)=\\\"handleContextChange($event)\\\"\\n >\\n </axp-dynamic-form>\\n </div>\\n</ax-content>\\n<ax-footer>\\n @if (parentId == null || parentId == undefined) {\\n <ax-suffix>\\n <ax-button [text]=\\\"'submit' | translate | async\\\" (onClick)=\\\"handleSubmitWithoutSave()\\\" look=\\\"solid\\\" color=\\\"primary\\\"> </ax-button>\\n </ax-suffix>\\n } @else {\\n <ax-suffix>\\n <ax-button [text]=\\\"'cancel' | translate | async\\\" (onClick)=\\\"handleCancel()\\\"> </ax-button>\\n\\n @if (files.length == 1) {\\n <ax-dropdown-button\\n color=\\\"primary\\\"\\n [text]=\\\"('@common:submit' | translate | async)!\\\"\\n look=\\\"solid\\\"\\n (onClick)=\\\"handleSubmit()\\\"\\n >\\n <ax-button-item-list>\\n <ax-button-item\\n [text]=\\\"('@document-management:submitAndSendForReview' | translate | async)!\\\"\\n (onClick)=\\\"handleSubmit(true)\\\"\\n >\\n </ax-button-item>\\n </ax-button-item-list>\\n </ax-dropdown-button>\\n } @else {\\n <ax-button\\n color=\\\"primary\\\"\\n [text]=\\\"('@common:submit' | translate | async)!\\\"\\n (onClick)=\\\"handleSubmit()\\\"\\n look=\\\"solid\\\"\\n >\\n </ax-button>\\n }\\n </ax-suffix>\\n }\\n</ax-footer>\\n\" }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG9jdW1lbnQtdHlwZS1jaG9vc2UtZmlsZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL21vZHVsZXMvZG9jdW1lbnQtbWFuYWdlbWVudC9zcmMvbGliL2ZlYXR1cmVzL3NoYXJlZC9jb21wb25lbnRzL2RvY3VtZW50LXR5cGUtY2hvb3NlLWZpbGUvZG9jdW1lbnQtdHlwZS1jaG9vc2UtZmlsZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL21vZHVsZXMvZG9jdW1lbnQtbWFuYWdlbWVudC9zcmMvbGliL2ZlYXR1cmVzL3NoYXJlZC9jb21wb25lbnRzL2RvY3VtZW50LXR5cGUtY2hvb3NlLWZpbGUvZG9jdW1lbnQtdHlwZS1jaG9vc2UtZmlsZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDM0QsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDbEUsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFDNUUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUN6RCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUM5RCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUNsRSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUUvRCxPQUFPLEVBQUUsc0JBQXNCLEVBQWlCLE1BQU0saUNBQWlDLENBQUM7QUFDeEYsT0FBTyxFQUNMLHVCQUF1QixHQUl4QixNQUFNLG9DQUFvQyxDQUFDO0FBQzVDLE9BQU8s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c0I7Z0JBQ3RCLEVBQUU7Z0JBQ0Ysc0JBQXNCLCtCQUN0Qix1QkFBdUI7OzJGQUdkLGtDQUFrQztrQkFsQjlDLFNBQVM7c0NBQ1MsdUJBQXVCLENBQUMsTUFBTSxXQUV0Qzt3QkFDUCxZQUFZO3dCQUNaLEVBQUU7d0JBQ0YsY0FBYzt3QkFDZCxpQkFBaUI7d0JBQ2pCLFlBQVk7d0JBQ1osYUFBYTt3QkFDYixpQkFBaUI7d0JBQ2pCLG1CQUFtQjt3QkFDbkIsc0JBQXNCO3dCQUN0QixFQUFFO3dCQUNGLHNCQUFzQjt3QkFDdEIsdUJBQXVCO3FCQUN4QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFYQnV0dG9uTW9kdWxlIH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL2J1dHRvbic7XG5pbXBvcnQgeyBBWERlY29yYXRvck1vZHVsZSB9IGZyb20gJ0BhY29yZXgvY29tcG9uZW50cy9kZWNvcmF0b3JzJztcbmltcG9ydCB7IEFYRHJvcGRvd25CdXR0b25Nb2R1bGUgfSBmcm9tICdAYWNvcmV4L2NvbXBvbmVudHMvZHJvcGRvd24tYnV0dG9uJztcbmltcG9ydCB7IEFYRm9ybU1vZHVsZSB9IGZyb20gJ0BhY29yZXgvY29tcG9uZW50cy9mb3JtJztcbmltcG9ydCB7IEFYTGFiZWxNb2R1bGUgfSBmcm9tICdAYWNvcmV4L2NvbXBvbmVudHMvbGFiZWwnO1xuaW1wb3J0IHsgQVhCYXNlUGFnZUNvbXBvbmVudCB9IGZyb20gJ0BhY29yZXgvY29tcG9uZW50cy9wYWdlJztcbmltcG9ydCB7IEFYU2VsZWN0Qm94TW9kdWxlIH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL3NlbGVjdC1ib3gnO1xuaW1wb3J0IHsgQVhUcmFuc2xhdGlvbk1vZHVsZSB9IGZyb20gJ0BhY29yZXgvY29yZS90cmFuc2xhdGlvbic7XG5pbXBvcnQgeyBBWFBDb250ZXh0Q2hhbmdlRXZlbnQsIEFYUENvbnRleHREYXRhLCBBWFBGaWxlTGlzdEl0ZW0gfSBmcm9tICdAYWNvcmV4L3BsYXRmb3JtL2NvcmUnO1xuaW1wb3J0IHsgQVhQTGF5b3V0QnVpbGRlck1vZHVsZSwgQVhQV2lkZ2V0Tm9kZSB9IGZyb20gJ0BhY29yZXgvcGxhdGZvcm0vbGF5b3V0L2J1aWxkZXInO1xuaW1wb3J0IHtcbiAgQVhQRHluYW1pY0Zvcm1Db21wb25lbnQsXG4gIEFYUER5bmFtaWNGb3JtRGVmaW5pdGlvbixcbiAgQVhQRHluYW1pY0Zvcm1GaWVsZERlZmluaXRpb24sXG4gIEFYUER5bmFtaWNGb3JtR3JvdXBEZWZpbml0aW9uLFxufSBmcm9tICdAYWNvcmV4L3BsYXRmb3JtL2xheW91dC9jb21wb25lbnRzJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBjb21wdXRlZCwgaW5qZWN0LCBzaWduYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gIEFYTURvY3VtZW50TWFuYWdlbWVudERvY3VtZW50VHlwZUVudGl0eU1vZGVsLFxuICBBWE1Eb2N1bWVudE1ldGEsXG4gIEFYTURvY3VtZW50U2VydmljZSxcbn0gZnJvbSAnLi4vLi4vLi4vLi4vZW50aXRpZXMnO1xuXG5AQ29tcG9uZW50KHtcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlVXJsOiAnLi9kb2N1bWVudC10eXBlLWNob29zZS1maWxlLmNvbXBvbmVudC5odG1sJyxcbiAgaW1wb3J0czogW1xuICAgIENvbW1vbk1vZHVsZSxcbiAgICAvL1xuICAgIEFYQnV0dG9uTW9kdWxlLFxuICAgIEFYRGVjb3JhdG9yTW9kdWxlLFxuICAgIEFYRm9ybU1vZHVsZSxcbiAgICBBWExhYmVsTW9kdWxlLFxuICAgIEFYU2VsZWN0Qm94TW9kdWxlLFxuICAgIEFYVHJhbnNsYXRpb25Nb2R1bGUsXG4gICAgQVhEcm9wZG93bkJ1dHRvbk1vZHVsZSxcbiAgICAvL1xuICAgIEFYUExheW91dEJ1aWxkZXJNb2R1bGUsXG4gICAgQVhQRHluYW1pY0Zvcm1Db21wb25lbnQsXG4gIF0sXG59KVxuZXhwb3J0IGNsYXNzIEFYTURvY3VtZW50VHlwZUNob29zZUZpbGVDb21wb25lbnQgZXh0ZW5kcyBBWEJhc2VQYWdlQ29tcG9uZW50IHtcbiAgcHJvdGVjdGVkIHJlYWRvbmx5IGRvY3VtZW50U2VydmljZSA9IGluamVjdChBWE1Eb2N1bWVudFNlcnZpY2UpO1xuXG4gIGRvY3VtZW50VHlwZSE6IEFYTURvY3VtZW50TWFuYWdlbWVudERvY3VtZW50VHlwZUVudGl0eU1vZGVsO1xuICBmaWxlcyE6IEFYUEZpbGVMaXN0SXRlbVtdO1xuICBwYXJlbnRJZCE6IHN0cmluZztcblxuICAvL3VwZGF0ZSBEYXRhXG4gIG1ldGFEYXRhOiBSZWNvcmQ8c3RyaW5nLCBBWE1Eb2N1bWVudE1ldGE+ID0ge307XG4gIGRvY3VtZW50SWQ/OiBzdHJpbmc7XG5cbiAgcHJvdGVjdGVkIGZvcm1EZWZpbml0aW9uID0gc2lnbmFsPEFYUER5bmFtaWNGb3JtRGVmaW5pdGlvbj4oe1xuICAgIGdyb3VwczogW10sXG4gIH0pO1xuXG4gIHByb3RlY3RlZCBmb3JtQ29udGV4dCA9IHNpZ25hbDxBWFBDb250ZXh0RGF0YT4oe30pO1xuXG4gIHByb3RlY3RlZCBkZWZhdWx0TGF5b3V0ID0gY29tcHV0ZWQoKCkgPT4ge1xuICAgIHJldHVybiB7XG4gICAgICBwb3NpdGlvbnM6IHtcbiAgICAgICAgZGVmYXVsdDoge1xuICAgICAgICAgIGNvbFNwYW46IDEyLFxuICAgICAgICB9LFxuICAgICAgfSxcbiAgICB9O1xuICB9KTtcblxuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgYXN5bmMgbmdPbkluaXQoKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgdGhpcy5pc0xvYWRpbmcgPSB0cnVlO1xuICAgIC8vXG4gICAgYXdhaXQgdGhpcy5yZW5kZXJGb3JtKCk7XG4gICAgLy9cbiAgICB0aGlzLmlzTG9hZGluZyA9IGZhbHNlO1xuICB9XG5cbiAgcHJvdGVjdGVkIGhhbmRsZUNhbmNlbCgpIHtcbiAgICB0aGlzLmNsb3NlKHtcbiAgICAgIGNhbmNlbDogdHJ1ZSxcbiAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgYXN5bmMgcmVuZGVyRm9ybSgpIHtcbiAgICBjb25zdCBncm91cHM6IEFYUER5bmFtaWNGb3JtR3JvdXBEZWZpbml0aW9uW10gPSBhd2FpdCBQcm9taXNlLmFsbChcbiAgICAgIHRoaXMuZmlsZXMubWFwKGFzeW5jIChpdGVtLCBpbmRleCkgPT4ge1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgIG5hbWU6IGl0ZW0uaWQgPz8gaXRlbS5uYW1lLFxuICAgICAgICAgIHRpdGxlOiBpdGVtLm5hbWUsXG4gICAgICAgICAgcGFyYW1ldGVyczogW1xuICAgICAgICAgICAgLi4uKGF3YWl0IFByb21pc2UuYWxsKFxuICAgICAgICAgICAgICB0aGlzLmRvY3VtZW50VHlwZS5tZXRhLm1hcDxQcm9taXNlPEFYUER5bmFtaWNGb3JtRmllbGREZWZpbml0aW9uPj4oYXN5bmMgKG1ldGEpID0+IHtcbiAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICBsZXQgbm9kZTogQVhQV2lkZ2V0Tm9kZSA9XG4gICAgICAgICAgICAgICAgICB0eXBlb2YgbWV0YS5pbnRlcmZhY2UgPT09ICdmdW5jdGlvbidcbiAgICAgICAgICAgICAgICAgICAgPyBhd2FpdCBtZXRhLmludGVyZmFjZSgpXG4gICAgICAgICAgICAgICAgICAgIDogSlNPTi5wYXJzZShtZXRhLmludGVyZmFjZSBhcyBzdHJpbmcpWydjaGlsZHJlbiddWzBdWydjaGlsZHJlbiddWzBdO1xuICAgICAgICAgICAgICAgIG5vZGUgPSB7XG4gICAgICAgICAgICAgICAgICAuLi5ub2RlLFxuICAgICAgICAgICAgICAgICAgcGF0aDogYGZpbGVzWyR7aW5kZXh9XS4ke21ldGEubmFtZX1gLFxuICAgICAgICAgICAgICAgICAgZGVmYXVsdFZhbHVlOiB0aGlzLm1ldGFEYXRhW21ldGEubmFtZV0/LnZhbHVlLFxuICAgICAgICAgICAgICAgIH07XG4gICAgICAgICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICAgICAgIHBhdGg6IGBmaWxlc1ske2luZGV4fV0uJHttZXRhLm5hbWV9YCxcbiAgICAgICAgICAgICAgICAgIHRpdGxlOiBtZXRhLnRpdGxlLFxuICAgICAgICAgICAgICAgICAgd2lkZ2V0OiBub2RlLFxuICAgICAgICAgICAgICAgIH07XG4gICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgKSksXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIHBhdGg6IGBmaWxlc1ske2luZGV4fV0uZmlsZWAsXG4gICAgICAgICAgICAgIHRpdGxlOiAnRmlsZScsXG4gICAgICAgICAgICAgIHdpZGdldDoge1xuICAgICAgICAgICAgICAgIHBhdGg6IGBmaWxlc1ske2luZGV4fV0uZmlsZWAsXG4gICAgICAgICAgICAgICAgdHlwZTogJ2ZpbGUtdXBsb2FkZXInLFxuICAgICAgICAgICAgICAgIGRlZmF1bHRWYWx1ZTogW2l0ZW1dLFxuICAgICAgICAgICAgICAgIG9wdGlvbnM6IHtcbiAgICAgICAgICAgICAgICAgIGZpbGVFZGl0YWJsZTogZmFsc2UsXG4gICAgICAgICAgICAgICAgICByZWFkb25seTogdHJ1ZSxcbiAgICAgICAgICAgICAgICAgIGFjY2VwdDogdGhpcy5kb2N1bWVudFR5cGUudHlwZS5zZWxlY3RlZEl0ZW1zLm1hcCgoaXRlbSkgPT4gYC4ke2l0ZW0ubmFtZS5zcGxpdCgnLicpWzFdfWApLmpvaW4oJywnKSxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICB9IGFzIEFYUFdpZGdldE5vZGUsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIF0sXG4gICAgICAgIH07XG4gICAgICB9KSxcbiAgICApO1xuXG4gICAgdGhpcy5mb3JtRGVmaW5pdGlvbi5zZXQoe1xuICAgICAgZ3JvdXBzLFxuICAgIH0pO1xuICB9XG5cbiAgcHJvdGVjdGVkIGhhbmRsZUNvbnRleHRDaGFuZ2UoZXZlbnQ6IEFYUENvbnRleHRDaGFuZ2VFdmVudCkge1xuICAgIHRoaXMuZm9ybUNvbnRleHQuc2V0KGV2ZW50KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBFeHRyYWN0cyBtZXRhIGRhdGEgZnJvbSBGaWxlQ29udGV4dEl0ZW0gYnkgZmlsdGVyaW5nIG91dCBub24tbWV0YSBwcm9wZXJ0aWVzXG4gICAqL1xuICBwcml2YXRlIGV4dHJhY3RNZXRhRnJvbUZpbGVDb250ZXh0KGl0ZW06IGFueSk6IFJlY29yZDxzdHJpbmcsIEFYTURvY3VtZW50TWV0YT4ge1xuICAgIGNvbnN0IG1ldGE6IFJlY29yZDxzdHJpbmcsIEFYTURvY3VtZW50TWV0YT4gPSB7fTtcblxuICAgIC8vIEdldCBhbGwga2V5cyBmcm9tIHRoZSBpdGVtXG4gICAgY29uc3Qga2V5cyA9IE9iamVjdC5rZXlzKGl0ZW0gPz8ge30pO1xuXG4gICAgLy8gRmlsdGVyIG91dCBrbm93biBwcm9wZXJ0aWVzIGFuZCBleHRyYWN0IG1ldGEgZmllbGRzXG4gICAga2V5cy5mb3JFYWNoKChrZXkpID0+IHtcbiAgICAgIC8vIFNraXAga25vd24gcHJvcGVydGllc1xuICAgICAgaWYgKFsnZmlsZSddLmluY2x1ZGVzKGtleSkpIHtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuXG4gICAgICAvLyBBZGQgdGhlIHJlbWFpbmluZyBwcm9wZXJ0aWVzIGFzIG1ldGFcbiAgICAgIG1ldGFba2V5XSA9IHtcbiAgICAgICAgbmFtZToga2V5LFxuICAgICAgICB0aXRsZTogdGhpcy5kb2N1bWVudFR5cGUubWV0YS5maW5kKChtZXRhKSA9PiBtZXRhLm5hbWUgPT09IGtleSk/LnRpdGxlID8/IGtleSxcbiAgICAgICAgdmFsdWU6IGl0ZW0/LltrZXldLFxuICAgICAgfTtcbiAgICB9KTtcblxuICAgIHJldHVybiBtZXRhO1xuICB9XG5cbiAgcHJvdGVjdGVkIGFzeW5jIGhhbmRsZVN1Ym1pdChpc1Jldmlld1NlbnQ6IGJvb2xlYW4gPSBmYWxzZSkge1xuICAgIHRoaXMuaXNMb2FkaW5nID0gdHJ1ZTtcblxuICAgICAgaWYgKHRoaXMuZG9jdW1lbnRJZCkge1xuICAgICAgICBhd2FpdCB0aGlzLmRvY3VtZW50U2VydmljZS51cGRhdGVPbmUodGhpcy5kb2N1bWVudElkLCB7XG4gICAgICAgICAgbWV0YTogdGhpcy5leHRyYWN0TWV0YUZyb21GaWxlQ29udGV4dCh0aGlzLmZvcm1Db250ZXh0KClbJ2ZpbGVzJ11bMF0pLFxuICAgICAgICB9KTtcbiAgICAgICAgdGhpcy5pc0xvYWRpbmcgPSBmYWxzZTtcbiAgICAgICAgdGhpcy5jbG9zZSh7XG4gICAgICAgICAgaXNSZXZpZXdTZW50OiBpc1Jldmlld1NlbnQsXG4gICAgICAgICAgZmlsZUlkczogW3RoaXMuZG9jdW1lbnRJZF0sXG4gICAgICAgICAgY2FuY2VsOiBmYWxzZSxcbiAgICAgICAgfSk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBjb25zdCBwcm9taXNlcyA9ICh0aGlzLmZvcm1Db250ZXh0KClbJ2ZpbGVzJ10gYXMgYW55W10pLm1hcDxQcm9taXNlPHN0cmluZz4+KGFzeW5jIChpdGVtOiBhbnkpID0+IHtcbiAgICAgICAgICBjb25zdCBmID0gaXRlbS5maWxlWzBdO1xuXG4gICAgICAgICAgY29uc3QgZmlsZSA9IGF3YWl0IHRoaXMuZG9jdW1lbnRTZXJ2aWNlLmluc2VydE9uZSh7XG4gICAgICAgICAgICBmaWxlSWQ6IGYsXG4gICAgICAgICAgICBuYW1lOiBmLm5hbWUsXG4gICAgICAgICAgICB0aXRsZTogZi5uYW1lLFxuICAgICAgICAgICAgZG9jdW1lbnRUeXBlOiB0aGlzLmRvY3VtZW50VHlwZSxcbiAgICAgICAgICAgIHBhcmVudElkOiB0aGlzLnBhcmVudElkLFxuICAgICAgICAgICAgc2l6ZTogZi5zaXplIHx8IDAsXG4gICAgICAgICAgICBtZXRhOiB0aGlzLmV4dHJhY3RNZXRhRnJvbUZpbGVDb250ZXh0KGl0ZW0pLFxuICAgICAgICAgIH0pO1xuICAgICAgICAgIHJldHVybiBmaWxlO1xuICAgICAgICB9KTtcblxuICAgICAgICBjb25zdCBmaWxlSWRzID0gYXdhaXQgUHJvbWlzZS5hbGwocHJvbWlzZXMpO1xuXG4gICAgICAgIHRoaXMuaXNMb2FkaW5nID0gZmFsc2U7XG4gICAgICAgIHRoaXMuY2xvc2Uoe1xuICAgICAgICAgIGlzUmV2aWV3U2VudDogaXNSZXZpZXdTZW50LFxuICAgICAgICAgIGZpbGVJZHM6IGZpbGVJZHMsXG4gICAgICAgICAgY2FuY2VsOiBmYWxzZSxcbiAgICAgICAgfSk7XG4gICAgICB9XG4gIH1cblxuICBwcm90ZWN0ZWQgaGFuZGxlU3VibWl0V2l0aG91dFNhdmUoKSB7XG4gICAgdGhpcy5jbG9zZSh7XG4gICAgICBjYW5jZWw6IGZhbHNlLFxuICAgICAgZmlsZXM6ICh0aGlzLmZvcm1Db250ZXh0KClbJ2ZpbGVzJ10gYXMgYW55W10pXG4gICAgICAgIC5tYXAoKGl0ZW06IGFueSkgPT4gKHtcbiAgICAgICAgICAuLi5pdGVtLFxuICAgICAgICAgIG1ldGE6IHRoaXMuZXh0cmFjdE1ldGFGcm9tRmlsZUNvbnRleHQoaXRlbSksXG4gICAgICAgIH0pKSxcbiAgICB9KTtcbiAgfVxufVxuIiwiPGF4LWNvbnRlbnQ+XG4gIDxkaXYgY2xhc3M9XCJheC1mbGV4IGF4LWZsZXgtY29sIGF4LXB5LTQgYXgtcHgtNlwiPlxuICAgIDxheHAtZHluYW1pYy1mb3JtIFxuICAgICAgICAgIFtmb3JtRGVmaW5pdGlvbl09XCJmb3JtRGVmaW5pdGlvbigpXCIgXG4gICAgICAgICAgW2NvbnRleHRdPVwiZm9ybUNvbnRleHQoKVwiXG4gICAgICAgICAgW2xheW91dENvbmZpZ109XCJkZWZhdWx0TGF5b3V0KClcIiBcbiAgICAgICAgICBbbGF5b3V0TG9va109XCInY29tcGFjdCdcIiBcbiAgICAgICAgICAoY29udGV4dENoYW5nZSk9XCJoYW5kbGVDb250ZXh0Q2hhbmdlKCRldmVudClcIlxuICAgICAgPlxuICAgIDwvYXhwLWR5bmFtaWMtZm9ybT5cbiAgPC9kaXY+XG48L2F4LWNvbnRlbnQ+XG48YXgtZm9vdGVyPlxuICBAaWYgKHBhcmVudElkID09IG51bGwgfHwgcGFyZW50SWQgPT0gdW5kZWZpbmVkKSB7XG4gICAgPGF4LXN1ZmZpeD5cbiAgICAgIDxheC1idXR0b24gW3RleHRdPVwiJ3N1Ym1pdCcgfCB0cmFuc2xhdGUgfCBhc3luY1wiIChvbkNsaWNrKT1cImhhbmRsZVN1Ym1pdFdpdGhvdXRTYXZlKClcIiAgbG9vaz1cInNvbGlkXCIgY29sb3I9XCJwcmltYXJ5XCI+IDwvYXgtYnV0dG9uPlxuICAgIDwvYXgtc3VmZml4PlxuICB9IEBlbHNlIHtcbiAgICA8YXgtc3VmZml4PlxuICAgICAgPGF4LWJ1dHRvbiBbdGV4dF09XCInY2FuY2VsJyB8IHRyYW5zbGF0ZSB8IGFzeW5jXCIgKG9uQ2xpY2spPVwiaGFuZGxlQ2FuY2VsKClcIj4gPC9heC1idXR0b24+XG5cbiAgICAgIEBpZiAoZmlsZXMubGVuZ3RoID09IDEpIHtcbiAgICAgICAgPGF4LWRyb3Bkb3duLWJ1dHRvblxuICAgICAgICAgIGNvbG9yPVwicHJpbWFyeVwiXG4gICAgICAgICAgW3RleHRdPVwiKCdAY29tbW9uOnN1Ym1pdCcgfCB0cmFuc2xhdGUgfCBhc3luYykhXCJcbiAgICAgICAgICBsb29rPVwic29saWRcIlxuICAgICAgICAgIChvbkNsaWNrKT1cImhhbmRsZVN1Ym1pdCgpXCJcbiAgICAgICAgPlxuICAgICAgICAgIDxheC1idXR0b24taXRlbS1saXN0PlxuICAgICAgICAgICAgPGF4LWJ1dHRvbi1pdGVtXG4gICAgICAgICAgICAgIFt0ZXh0XT1cIignQGRvY3VtZW50LW1hbmFnZW1lbnQ6c3VibWl0QW5kU2VuZEZvclJldmlldycgfCB0cmFuc2xhdGUgfCBhc3luYykhXCJcbiAgICAgICAgICAgICAgKG9uQ2xpY2spPVwiaGFuZGxlU3VibWl0KHRydWUpXCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgIDwvYXgtYnV0dG9uLWl0ZW0+XG4gICAgICAgICAgPC9heC1idXR0b24taXRlbS1saXN0PlxuICAgICAgICA8L2F4LWRyb3Bkb3duLWJ1dHRvbj5cbiAgICAgIH0gQGVsc2Uge1xuICAgICAgICA8YXgtYnV0dG9uXG4gICAgICAgICAgY29sb3I9XCJwcmltYXJ5XCJcbiAgICAgICAgICBbdGV4dF09XCIoJ0Bjb21tb246c3VibWl0JyB8IHRyYW5zbGF0ZSB8IGFzeW5jKSFcIlxuICAgICAgICAgIChvbkNsaWNrKT1cImhhbmRsZVN1Ym1pdCgpXCJcbiAgICAgICAgICBsb29rPVwic29saWRcIlxuICAgICAgICA+XG4gICAgICAgIDwvYXgtYnV0dG9uPlxuICAgICAgfVxuICAgIDwvYXgtc3VmZml4PlxuICB9XG48L2F4LWZvb3Rlcj5cbiJdfQ==","import { AXButtonModule } from '@acorex/components/button';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXMediaViewerContainerComponent, AXMediaViewerModule, } from '@acorex/components/media-viewer';\nimport { AXBasePageComponent } from '@acorex/components/page';\nimport { afterNextRender, ChangeDetectionStrategy, Component, viewChild } from '@angular/core';\nimport * as i0 from \"@angular/core\";\nimport * as i1 from \"@acorex/components/decorators\";\nimport * as i2 from \"@acorex/components/button\";\nimport * as i3 from \"@acorex/components/media-viewer\";\nexport class AXMFileViewerPopupComponent extends AXBasePageComponent {\n constructor() {\n super(...arguments);\n this.index = 0;\n this.mediaViewer = viewChild(AXMediaViewerContainerComponent, ...(ngDevMode ? [{ debugName: \"mediaViewer\" }] : []));\n this.f = afterNextRender(() => {\n setTimeout(() => {\n this.mediaViewer()?.goToIndex(this.index, 0);\n });\n });\n }\n ngAfterViewInit() {\n console.log(this.index);\n //Called after ngAfterContentInit when the component's view has been initialized. Applies to components only.\n //Add 'implements AfterViewInit' to the class.\n this.mediaViewer()?.goToIndex(this.index, 0);\n }\n onClose() {\n this.close();\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: AXMFileViewerPopupComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }\n static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"17.2.0\", version: \"20.1.8\", type: AXMFileViewerPopupComponent, isStandalone: true, selector: \"ng-component\", viewQueries: [{ propertyName: \"mediaViewer\", first: true, predicate: AXMediaViewerContainerComponent, descendants: true, isSignal: true }], usesInheritance: true, ngImport: i0, template: \"<ax-content>\\n <ax-media-viewer-container [thumbnail]=\\\"true\\\" #c [dataArray]=\\\"nodes\\\">\\n <ax-header>\\n <ax-prefix>\\n <ax-file-info></ax-file-info>\\n </ax-prefix>\\n <ax-suffix>\\n <ax-fullscreen-button></ax-fullscreen-button>\\n </ax-suffix>\\n </ax-header>\\n <ax-prefix>\\n <ax-button (click)=\\\"c.next()\\\">\\n <ax-icon class=\\\"ax-icon ax-icon-chevron-right\\\"> </ax-icon>\\n </ax-button>\\n </ax-prefix>\\n <ax-suffix>\\n <ax-button (click)=\\\"c.prev()\\\">\\n <ax-icon class=\\\"ax-icon ax-icon-chevron-left\\\"> </ax-icon>\\n </ax-button>\\n </ax-suffix>\\n </ax-media-viewer-container>\\n</ax-content>\\n<ax-footer>\\n <ax-suffix>\\n <ax-button [text]=\\\"'close'\\\" (click)=\\\"onClose()\\\" />\\n </ax-suffix>\\n</ax-footer>\\n\", styles: [\"ax-media-viewer-container{--ax-sys-border-radius:0 }\\n\"], dependencies: [{ kind: \"ngmodule\", type: AXDecoratorModule }, { kind: \"component\", type: i1.AXDecoratorIconComponent, selector: \"ax-icon\", inputs: [\"icon\"] }, { kind: \"component\", type: i1.AXDecoratorGenericComponent, selector: \"ax-footer, ax-header, ax-content, ax-divider, ax-form-hint, ax-prefix, ax-suffix, ax-text, ax-title, ax-subtitle, ax-placeholder, ax-overlay\" }, { kind: \"component\", type: i1.AXDecoratorFullScreenButtonComponent, selector: \"ax-fullscreen-button\" }, { kind: \"ngmodule\", type: AXButtonModule }, { kind: \"component\", type: i2.AXButtonComponent, selector: \"ax-button\", inputs: [\"disabled\", \"size\", \"tabIndex\", \"color\", \"look\", \"text\", \"toggleable\", \"selected\", \"iconOnly\", \"type\", \"loadingText\"], outputs: [\"onBlur\", \"onFocus\", \"onClick\", \"selectedChange\", \"toggleableChange\", \"lookChange\", \"colorChange\", \"disabledChange\", \"loadingTextChange\"] }, { kind: \"ngmodule\", type: AXMediaViewerModule }, { kind: \"component\", type: i3.AXMediaViewerContainerComponent, selector: \"ax-media-viewer-container\", inputs: [\"dataArray\", \"thumbnail\"] }, { kind: \"component\", type: i3.AXFileInfoComponent, selector: \"ax-file-info\" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: AXMFileViewerPopupComponent, decorators: [{\n type: Component,\n args: [{ changeDetection: ChangeDetectionStrategy.OnPush, imports: [AXDecoratorModule, AXButtonModule, AXMediaViewerModule], template: \"<ax-content>\\n <ax-media-viewer-container [thumbnail]=\\\"true\\\" #c [dataArray]=\\\"nodes\\\">\\n <ax-header>\\n <ax-prefix>\\n <ax-file-info></ax-file-info>\\n </ax-prefix>\\n <ax-suffix>\\n <ax-fullscreen-button></ax-fullscreen-button>\\n </ax-suffix>\\n </ax-header>\\n <ax-prefix>\\n <ax-button (click)=\\\"c.next()\\\">\\n <ax-icon class=\\\"ax-icon ax-icon-chevron-right\\\"> </ax-icon>\\n </ax-button>\\n </ax-prefix>\\n <ax-suffix>\\n <ax-button (click)=\\\"c.prev()\\\">\\n <ax-icon class=\\\"ax-icon ax-icon-chevron-left\\\"> </ax-icon>\\n </ax-button>\\n </ax-suffix>\\n </ax-media-viewer-container>\\n</ax-content>\\n<ax-footer>\\n <ax-suffix>\\n <ax-button [text]=\\\"'close'\\\" (click)=\\\"onClose()\\\" />\\n </ax-suffix>\\n</ax-footer>\\n\", styles: [\"ax-media-viewer-container{--ax-sys-border-radius:0 }\\n\"] }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZS12aWV3ZXItcG9wdXAuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tb2R1bGVzL2RvY3VtZW50LW1hbmFnZW1lbnQvc3JjL2xpYi9mZWF0dXJlcy9zaGFyZWQvY29tcG9uZW50cy9maWxlLXZpZXdlci1wb3B1cC9maWxlLXZpZXdlci1wb3B1cC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL21vZHVsZXMvZG9jdW1lbnQtbWFuYWdlbWVudC9zcmMvbGliL2ZlYXR1cmVzL3NoYXJlZC9jb21wb25lbnRzL2ZpbGUtdmlld2VyLXBvcHVwL2ZpbGUtdmlld2VyLXBvcHVwLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUNsRSxPQUFPLEVBQ0wsK0JBQStCLEVBRS9CLG1CQUFtQixHQUNwQixNQUFNLGlDQUFpQyxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQzlELE9BQU8sRUFBRSxlQUFlLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7Ozs7QUFRL0YsTUFBTSxPQUFPLDJCQUE0QixTQUFRLG1CQUFtQjtJQU5wRTs7UUFPRSxVQUFLLEdBQVcsQ0FBQyxDQUFDO1FBQ2xCLGdCQUFXLEdBQUcsU0FBUyxDQUFDLCtCQUErQix1REFBQyxDQUFDO1FBRXpELE1BQUMsR0FBRyxlQUFlLENBQUMsR0FBRyxFQUFFO1lBQ3ZCLFVBQVUsQ0FBQyxHQUFHLEVBQUU7Z0JBQ2QsSUFBSSxDQUFDLFdBQVcsRUFBRSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQyxDQUFDO1lBQy9DLENBQUMsQ0FBQyxDQUFDO1FBQ0wsQ0FBQyxDQUFDLENBQUM7S0FlSjtJQWJDLGVBQWU7UUFDYixPQUFPLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUV4Qiw2R0FBNkc7UUFDN0csOENBQThDO1FBQzlDLElBQUksQ0FBQyxXQUFXLEVBQUUsRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDLENBQUMsQ0FBQztJQUMvQyxDQUFDO0lBRUQsT0FBTztRQUNMLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUNmLENBQUM7OEdBcEJVLDJCQUEyQjtrR0FBM0IsMkJBQTJCLHFIQUVkLCtCQUErQix1RkNsQnpELDB4QkEyQkEsK0dEYlksaUJBQWlCLDhiQUFFLGNBQWMsNlhBQUUsbUJBQW1COzsyRkFFckQsMkJBQTJCO2tCQU52QyxTQUFTO3NDQUNTLHVCQUF1QixDQUFDLE1BQU0sV0FHdEMsQ0FBQyxpQkFBaUIsRUFBRSxjQUFjLEVBQUUsbUJBQW1CLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBWEJ1dHRvbk1vZHVsZSB9IGZyb20gJ0BhY29yZXgvY29tcG9uZW50cy9idXR0b24nO1xuaW1wb3J0IHsgQVhEZWNvcmF0b3JNb2R1bGUgfSBmcm9tICdAYWNvcmV4L2NvbXBvbmVudHMvZGVjb3JhdG9ycyc7XG5pbXBvcnQge1xuICBBWE1lZGlhVmlld2VyQ29udGFpbmVyQ29tcG9uZW50LFxuICBBWE1lZGlhVmlld2VyRGF0YSxcbiAgQVhNZWRpYVZpZXdlck1vZHVsZSxcbn0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL21lZGlhLXZpZXdlcic7XG5pbXBvcnQgeyBBWEJhc2VQYWdlQ29tcG9uZW50IH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL3BhZ2UnO1xuaW1wb3J0IHsgYWZ0ZXJOZXh0UmVuZGVyLCBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCB2aWV3Q2hpbGQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuQENvbXBvbmVudCh7XG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZVVybDogJy4vZmlsZS12aWV3ZXItcG9wdXAuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybDogJy4vZmlsZS12aWV3ZXItcG9wdXAuc2NzcycsXG4gIGltcG9ydHM6IFtBWERlY29yYXRvck1vZHVsZSwgQVhCdXR0b25Nb2R1bGUsIEFYTWVkaWFWaWV3ZXJNb2R1bGVdLFxufSlcbmV4cG9ydCBjbGFzcyBBWE1GaWxlVmlld2VyUG9wdXBDb21wb25lbnQgZXh0ZW5kcyBBWEJhc2VQYWdlQ29tcG9uZW50IHtcbiAgaW5kZXg6IG51bWJlciA9IDA7XG4gIG1lZGlhVmlld2VyID0gdmlld0NoaWxkKEFYTWVkaWFWaWV3ZXJDb250YWluZXJDb21wb25lbnQpO1xuXG4gIGYgPSBhZnRlck5leHRSZW5kZXIoKCkgPT4ge1xuICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgdGhpcy5tZWRpYVZpZXdlcigpPy5nb1RvSW5kZXgodGhpcy5pbmRleCwgMCk7XG4gICAgfSk7XG4gIH0pO1xuXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcbiAgICBjb25zb2xlLmxvZyh0aGlzLmluZGV4KTtcblxuICAgIC8vQ2FsbGVkIGFmdGVyIG5nQWZ0ZXJDb250ZW50SW5pdCB3aGVuIHRoZSBjb21wb25lbnQncyB2aWV3IGhhcyBiZWVuIGluaXRpYWxpemVkLiBBcHBsaWVzIHRvIGNvbXBvbmVudHMgb25seS5cbiAgICAvL0FkZCAnaW1wbGVtZW50cyBBZnRlclZpZXdJbml0JyB0byB0aGUgY2xhc3MuXG4gICAgdGhpcy5tZWRpYVZpZXdlcigpPy5nb1RvSW5kZXgodGhpcy5pbmRleCwgMCk7XG4gIH1cblxuICBvbkNsb3NlKCkge1xuICAgIHRoaXMuY2xvc2UoKTtcbiAgfVxuXG4gIG5vZGVzITogQVhNZWRpYVZpZXdlckRhdGFbXTtcbn1cbiIsIjxheC1jb250ZW50PlxuICA8YXgtbWVkaWEtdmlld2VyLWNvbnRhaW5lciBbdGh1bWJuYWlsXT1cInRydWVcIiAjYyBbZGF0YUFycmF5XT1cIm5vZGVzXCI+XG4gICAgPGF4LWhlYWRlcj5cbiAgICAgIDxheC1wcmVmaXg+XG4gICAgICAgIDxheC1maWxlLWluZm8+PC9heC1maWxlLWluZm8+XG4gICAgICA8L2F4LXByZWZpeD5cbiAgICAgIDxheC1zdWZmaXg+XG4gICAgICAgIDxheC1mdWxsc2NyZWVuLWJ1dHRvbj48L2F4LWZ1bGxzY3JlZW4tYnV0dG9uPlxuICAgICAgPC9heC1zdWZmaXg+XG4gICAgPC9heC1oZWFkZXI+XG4gICAgPGF4LXByZWZpeD5cbiAgICAgIDxheC1idXR0b24gKGNsaWNrKT1cImMubmV4dCgpXCI+XG4gICAgICAgIDxheC1pY29uIGNsYXNzPVwiYXgtaWNvbiBheC1pY29uLWNoZXZyb24tcmlnaHRcIj4gPC9heC1pY29uPlxuICAgICAgPC9heC1idXR0b24+XG4gICAgPC9heC1wcmVmaXg+XG4gICAgPGF4LXN1ZmZpeD5cbiAgICAgIDxheC1idXR0b24gKGNsaWNrKT1cImMucHJldigpXCI+XG4gICAgICAgIDxheC1pY29uIGNsYXNzPVwiYXgtaWNvbiBheC1pY29uLWNoZXZyb24tbGVmdFwiPiA8L2F4LWljb24+XG4gICAgICA8L2F4LWJ1dHRvbj5cbiAgICA8L2F4LXN1ZmZpeD5cbiAgPC9heC1tZWRpYS12aWV3ZXItY29udGFpbmVyPlxuPC9heC1jb250ZW50PlxuPGF4LWZvb3Rlcj5cbiAgPGF4LXN1ZmZpeD5cbiAgICA8YXgtYnV0dG9uIFt0ZXh0XT1cIidjbG9zZSdcIiAoY2xpY2spPVwib25DbG9zZSgpXCIgLz5cbiAgPC9heC1zdWZmaXg+XG48L2F4LWZvb3Rlcj5cbiJdfQ==","export var AXPDocumentExplorerSettings;\n(function (AXPDocumentExplorerSettings) {\n AXPDocumentExplorerSettings[\"ViewMode\"] = \"document-explorer:layout:view-mode\";\n AXPDocumentExplorerSettings[\"SortField\"] = \"document-explorer:layout:sort-field\";\n AXPDocumentExplorerSettings[\"SortDirection\"] = \"document-explorer:layout:sort-direction\";\n})(AXPDocumentExplorerSettings || (AXPDocumentExplorerSettings = {}));\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2V0dGluZ3Mua2V5cy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbW9kdWxlcy9kb2N1bWVudC1tYW5hZ2VtZW50L3NyYy9saWIvZmVhdHVyZXMvZG9jdW1lbnQtZXhwbG9yZXIvc2V0dGluZ3Mua2V5cy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLENBQU4sSUFBWSwyQkFJWDtBQUpELFdBQVksMkJBQTJCO0lBQ25DLDhFQUErQyxDQUFBO0lBQy9DLGdGQUFpRCxDQUFBO0lBQ2pELHdGQUF5RCxDQUFBO0FBQzdELENBQUMsRUFKVywyQkFBMkIsS0FBM0IsMkJBQTJCLFFBSXRDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGVudW0gQVhQRG9jdW1lbnRFeHBsb3JlclNldHRpbmdzIHtcbiAgICBWaWV3TW9kZSA9ICdkb2N1bWVudC1leHBsb3JlcjpsYXlvdXQ6dmlldy1tb2RlJyxcbiAgICBTb3J0RmllbGQgPSAnZG9jdW1lbnQtZXhwbG9yZXI6bGF5b3V0OnNvcnQtZmllbGQnLFxuICAgIFNvcnREaXJlY3Rpb24gPSAnZG9jdW1lbnQtZXhwbG9yZXI6bGF5b3V0OnNvcnQtZGlyZWN0aW9uJ1xufVxuXG4iXX0=","import { AXTranslationService } from '@acorex/core/translation';\nimport { AXPSessionService } from '@acorex/platform/auth';\nimport { AXPFileTypeProviderService, AXPSettingService, AXPLockService } from '@acorex/platform/common';\nimport { AXPPlatformScope } from '@acorex/platform/core';\nimport { computed, inject } from '@angular/core';\nimport { patchState, signalStore, withComputed, withMethods, withState } from '@ngrx/signals';\nimport { RootConfig } from '../../const';\nimport { AXMDocumentTypeService } from '../../entities';\nimport { AXMDocumentManagerService } from '../shared/document-manager.service';\nimport { AXPDocumentExplorerSettings } from './settings.keys';\nexport const AXPDocumentExplorerViewModel = signalStore({ providedIn: 'root' }, withState(() => ({\n // View State\n viewMode: 'large-tiles',\n isLoading: false,\n scope: AXPPlatformScope.User,\n // Navigation State\n currentPath: [],\n currentNode: null,\n loadingFolderId: null,\n navigatingFolderId: null,\n backHistory: [],\n // Selection State\n selectionMode: 'none',\n selectedNodes: [],\n // Browse State\n browseMode: 'file',\n // Sort State\n sortField: 'name',\n sortDirection: 'asc',\n // Content State\n folders: [],\n files: [],\n itemsCount: 0,\n availableSpace: 0,\n // Drive State\n currentDrive: null,\n // File Type State\n fileTypes: [],\n // Detail Panel State\n detailPanel: false,\n})), withComputed((store) => ({\n isRoot: computed(() => {\n const path = store.currentPath();\n return path.length === 1;\n }),\n isVirtual: computed(() => {\n const node = store.currentNode();\n return node?.storageType === 'virtual';\n }),\n currentFolder: computed(() => store.currentNode()),\n currentFolderContents: computed(() => ({\n folders: store.folders(),\n files: store.files(),\n })),\n isLargeTilesView: computed(() => store.viewMode() === 'large-tiles'),\n isSmallTilesView: computed(() => store.viewMode() === 'small-tiles'),\n isListView: computed(() => store.viewMode() === 'list'),\n isDetailsView: computed(() => store.viewMode() === 'details'),\n isLargeIconsView: computed(() => store.viewMode() === 'large-icons'),\n isSmallIconsView: computed(() => store.viewMode() === 'small-icons'),\n isBackAvailable: computed(() => store.backHistory().length > 0),\n isUpAvailable: computed(() => {\n const node = store.currentNode();\n return node?.parentId != null;\n }),\n selectedCount: computed(() => store.selectedNodes().length),\n hasSelectedItems: computed(() => store.selectedNodes().length > 0),\n hasMultipleSelectedItems: computed(() => store.selectedNodes().length > 1),\n isMultiSelect: computed(() => store.selectionMode() === 'multiple'),\n selectedNode: computed(() => store.selectedNodes()[0] ?? null),\n isDetailPanelOpen: computed(() => store.detailPanel()),\n})), withMethods((store, fileTypeService = inject(AXPFileTypeProviderService), documentTypeService = inject(AXMDocumentTypeService), driveService = inject(AXMDocumentManagerService), settingService = inject(AXPSettingService), sessionService = inject(AXPSessionService), translateService = inject(AXTranslationService), lockService = inject(AXPLockService)) => ({\n async initialize(options) {\n // Load file types\n const fileTypes = await fileTypeService.items();\n patchState(store, { fileTypes });\n // Load initial settings\n const viewMode = await settingService\n .scope(options?.scope || AXPPlatformScope.User)\n .get(AXPDocumentExplorerSettings.ViewMode);\n const sortField = await settingService\n .scope(options?.scope || AXPPlatformScope.User)\n .get(AXPDocumentExplorerSettings.SortField);\n const sortDirection = await settingService\n .scope(options?.scope || AXPPlatformScope.User)\n .get(AXPDocumentExplorerSettings.SortDirection);\n patchState(store, {\n viewMode: viewMode || 'list',\n sortField: sortField || 'name',\n sortDirection: sortDirection || 'asc',\n browseMode: options?.browseMode || 'file',\n scope: options?.scope || AXPPlatformScope.User,\n });\n },\n _load: async (folderId) => {\n patchState(store, { loadingFolderId: folderId, isLoading: true });\n await new Promise((resolve) => setTimeout(resolve, 100));\n try {\n const node = await driveService.getFolder(store.scope(), folderId, {\n tenantId: sessionService.tenant?.id,\n userId: sessionService.user?.id,\n });\n // Sort with direction\n const sortField = store.sortField();\n const sortDirection = store.sortDirection();\n const directionMultiplier = sortDirection === 'asc' ? 1 : -1;\n switch (sortField) {\n case 'name':\n node.result.children = node.result.children?.sort((a, b) => directionMultiplier * a.name.localeCompare(b.name));\n break;\n case 'modified':\n node.result.children = node.result.children?.sort((a, b) => directionMultiplier * ((a.modifiedAt?.getTime() ?? 0) - (b.modifiedAt?.getTime() ?? 0)));\n break;\n case 'size':\n node.result.children = node.result.children?.sort((a, b) => directionMultiplier * ((a.size ?? 0) - (b.size ?? 0)));\n break;\n default:\n node.result.children = node.result.children?.sort((a, b) => directionMultiplier * a.name.localeCompare(b.name));\n break;\n }\n patchState(store, {\n currentNode: node.result,\n currentPath: node.path,\n folders: node.result.children?.filter((item) => item.type === 'folder') || [],\n files: node.result.children?.filter((item) => store.browseMode() == 'file' && item.type === 'file') || [],\n itemsCount: node.result.children?.length || 0,\n availableSpace: await driveService.getAvailableSpace(),\n loadingFolderId: null,\n isLoading: false,\n navigatingFolderId: null,\n });\n }\n catch (error) {\n patchState(store, {\n loadingFolderId: null,\n isLoading: false,\n });\n throw error;\n }\n },\n navigateToFolder(folderId) {\n const currentNode = store.currentNode();\n if (currentNode) {\n patchState(store, {\n backHistory: [...store.backHistory(), { folderId: currentNode.id, path: store.currentPath() }],\n });\n }\n patchState(store, { navigatingFolderId: folderId });\n },\n async loadFolderContents(folderId) {\n await this._load(folderId);\n this.deselectAll();\n },\n async virtualFolder(files = [], options) {\n const id = 'virtual';\n patchState(store, {\n loadingFolderId: id,\n isLoading: true,\n });\n await new Promise((resolve) => setTimeout(resolve, 100));\n const node = {\n id: id,\n name: options?.name || 'virtual',\n type: 'folder',\n children: files,\n parentId: options?.parentId || null,\n size: 0,\n // TODO \n documentTypes: [],\n storageType: 'virtual',\n };\n patchState(store, {\n currentNode: node,\n currentPath: [\n node\n ],\n folders: files.filter((item) => item.type === 'folder'),\n files: files.filter((item) => item.type === 'file'),\n itemsCount: files.length,\n availableSpace: await driveService.getAvailableSpace(),\n loadingFolderId: null,\n isLoading: false,\n navigatingFolderId: null,\n });\n },\n setViewMode(mode) {\n patchState(store, { viewMode: mode });\n settingService.scope(AXPPlatformScope.User).set(AXPDocumentExplorerSettings.ViewMode, mode);\n },\n isViewMode(mode) {\n return store.viewMode() === mode;\n },\n setSortField(field) {\n patchState(store, { sortField: field });\n settingService.scope(AXPPlatformScope.User).set(AXPDocumentExplorerSettings.SortField, field);\n this.refresh();\n },\n setSortDirection(direction) {\n patchState(store, { sortDirection: direction });\n settingService.scope(AXPPlatformScope.User).set(AXPDocumentExplorerSettings.SortDirection, direction);\n this.refresh();\n },\n setSelectionMode(mode) {\n patchState(store, { selectionMode: mode });\n },\n setDrive(scope) {\n patchState(store, { currentDrive: scope });\n },\n isLoadingFolder(folderId) {\n return store.loadingFolderId() === folderId;\n },\n getFileInfo(fileName) {\n const fileTypes = store.fileTypes();\n const extension = fileName.split('.').pop()?.toLowerCase() || '';\n const extensions = fileTypes.flatMap((type) => type.extensions);\n const fileType = extensions.find((e) => e.name === extension);\n return {\n icon: fileType?.icon || 'fa-light fa-file',\n type: fileType?.name || 'Unknown',\n };\n },\n getNodeInfo(node) {\n // If no node, return a default object\n if (!node) {\n return {\n name: '---',\n icon: 'fa-light fa-folder',\n type: 'Folder',\n sections: [\n {\n title: 'Details',\n details: [],\n },\n ],\n };\n }\n // If the node is a file, return the file info\n if (node.type === 'file') {\n const fileTypes = store.fileTypes();\n const extension = node.name.split('.').pop()?.toLowerCase() || '';\n const extensions = fileTypes.flatMap((type) => type.extensions);\n const fileType = extensions.find((e) => e.name === extension);\n return {\n name: node.name,\n icon: fileType?.icon || 'fa-light fa-file',\n type: 'File',\n sections: [\n {\n title: 'Details',\n details: [\n {\n title: 'Description',\n content: node.description,\n icon: 'fa-solid fa-file-lines',\n },\n {\n title: 'Size',\n content: node.size || 0,\n format: 'filesize',\n icon: 'fa-solid fa-file-lines',\n },\n {\n title: 'Created at',\n content: node.createdAt || new Date(),\n format: 'datetime',\n icon: 'fa-solid fa-calendar-days',\n },\n {\n title: 'Modified at',\n content: node.modifiedAt || new Date(),\n format: 'datetime',\n icon: 'fa-solid fa-calendar-days',\n },\n ],\n },\n {\n title: 'Metadata',\n details: node.meta ? node.meta.map((meta) => ({\n title: meta.title,\n content: meta.value,\n })) : [],\n },\n ],\n };\n }\n // If the node is a folder, return the folder info\n else {\n return {\n name: node.name,\n icon: 'fa-light fa-folder ax-text-yellow-500',\n type: 'Folder',\n sections: [\n {\n title: 'Details',\n details: [\n {\n title: 'Description',\n content: node.description,\n icon: 'fa-solid fa-file-lines',\n },\n {\n title: 'Items',\n content: node.childrenCount,\n icon: 'fa-solid fa-file-lines',\n },\n {\n title: 'Size',\n content: node.size || 0,\n format: 'filesize',\n icon: 'fa-solid fa-file-lines',\n },\n {\n title: 'Created at',\n content: node.createdAt || new Date(),\n format: 'datetime',\n icon: 'fa-solid fa-calendar-days',\n },\n {\n title: 'Modified at',\n content: node.modifiedAt || new Date(),\n format: 'datetime',\n icon: 'fa-solid fa-calendar-days',\n },\n ],\n },\n ],\n };\n }\n },\n sortItems(items) {\n const field = store.sortField();\n const direction = store.sortDirection();\n return [...items].sort((a, b) => {\n let comparison = 0;\n switch (field) {\n case 'name':\n comparison = a.name.localeCompare(b.name);\n break;\n case 'modified':\n const aDate = a.modifiedAt ? new Date(a.modifiedAt) : new Date(0);\n const bDate = b.modifiedAt ? new Date(b.modifiedAt) : new Date(0);\n comparison = aDate.getTime() - bDate.getTime();\n break;\n case 'size':\n comparison = (a.size || 0) - (b.size || 0);\n break;\n }\n return direction === 'asc' ? comparison : -comparison;\n });\n },\n async refresh() {\n if (!store.isVirtual()) {\n const currentFolder = store.currentNode();\n if (currentFolder) {\n await this._load(currentFolder.id);\n }\n }\n else {\n patchState(store, { loadingFolderId: 'fake' });\n patchState(store, { loadingFolderId: null });\n }\n },\n navigateToUp() {\n const currentNode = store.currentNode();\n const parentId = currentNode?.parentId;\n if (parentId && currentNode) {\n patchState(store, {\n backHistory: [...store.backHistory(), { folderId: currentNode.id, path: store.currentPath() }],\n });\n patchState(store, { navigatingFolderId: parentId });\n this.loadFolderContents(parentId);\n }\n },\n async navigateBack() {\n const history = store.backHistory();\n if (history.length === 0) {\n return;\n }\n const lastEntry = history[history.length - 1];\n patchState(store, { backHistory: history.slice(0, history.length - 1) });\n patchState(store, { navigatingFolderId: lastEntry.folderId });\n await this.loadFolderContents(lastEntry.folderId);\n },\n async openGalleryWithFolderId() {\n const folder = store.currentNode();\n const files = folder?.children?.filter((item) => item.type === 'file') || [];\n await driveService.showFileViewerPopup(files[0]);\n },\n //TODO: Delete only one node at a time\n async deleteNodes(nodes = store.selectedNodes()) {\n if (store.isVirtual()) {\n patchState(store, {\n files: store.currentFolderContents().files.filter((file) => !nodes.some((node) => node.name === file.name)),\n });\n this.deselectAll();\n }\n else {\n const result = await driveService.showDeleteNodesDialog(nodes);\n if (result) {\n this.deselectAll();\n await this.refresh();\n }\n }\n },\n toggleSelect(node) {\n if (store.selectionMode() === 'multiple') {\n patchState(store, {\n selectedNodes: store.selectedNodes().includes(node)\n ? store.selectedNodes().filter((n) => n.id !== node.id)\n : [...store.selectedNodes(), node],\n });\n }\n else {\n patchState(store, { selectedNodes: [node] });\n }\n },\n isItemSelected(node) {\n return store.selectedNodes().some((selectedNode) => selectedNode.id === node.id);\n },\n selectAll() {\n patchState(store, { selectedNodes: [...store.folders(), ...store.files()] });\n },\n deselectAll() {\n patchState(store, { selectedNodes: [] });\n },\n openDetailPanel() {\n patchState(store, { detailPanel: true });\n },\n closeDetailPanel() {\n patchState(store, { detailPanel: false });\n },\n toggleDetailPanel() {\n patchState(store, { detailPanel: !store.detailPanel() });\n },\n //#region Menu Items\n async getFolderAddMenuItems() {\n const scope = RootConfig.config.i18n;\n return [\n {\n title: await translateService.translateAsync('actions.create-folder', { scope }),\n icon: 'fa-light fa-folder-plus',\n break: true,\n command: {\n name: 'new-folder',\n options: {\n folderId: store.currentFolder()?.id,\n },\n },\n },\n ...(store.currentFolder()?.documentTypes?.map((type) => ({\n title: type.title,\n //icon: type.icon,\n icon: 'fa-light fa-file-arrow-up',\n break: true,\n command: {\n name: `upload.${type.name}`,\n options: {\n folderId: store.currentFolder()?.id,\n documentType: type,\n },\n },\n })) ?? []),\n // {\n // title: await translateService.translateAsync('actions.open-gallery', { scope }),\n // icon: 'fa-light fa-images',\n // break: true,\n // command: {\n // name: 'open-gallery',\n // options: {\n // folderId: store.currentFolder()?.id,\n // },\n // },\n // },\n ];\n },\n async getFolderActionMenuItems() {\n return [\n {\n name: 'refresh',\n title: await translateService.translateAsync('refresh'),\n icon: 'fa-light fa-rotate-right',\n // break: true,\n },\n // {\n // name: 'delete',\n // title: await translateService.translateAsync('delete'),\n // color: 'danger',\n // icon: 'fa-light fa-trash',\n // },\n ];\n },\n //#endregion\n //#region Context Menu Items\n async getContextMenuItems() {\n return [...(await this.getFolderAddMenuItems()), ...(await this.getFolderActionMenuItems())];\n },\n //#endregion\n //#region ---- Menu Items ----\n /**\n * Returns menu items for file context menu\n */\n async getFileContextMenuItems(node) {\n const trans = async (key) => await translateService.translateAsync(key, { scope: RootConfig.config.i18n });\n const isLocked = async () => await this.isLocked(node);\n // const isNodeLocked = false;\n const menuItems = [\n {\n name: 'open-file',\n text: await trans('menu.open'),\n icon: this.getFileInfo(node.name).icon,\n data: node,\n },\n {\n name: 'download',\n text: await trans('menu.download'),\n icon: 'fa-light fa-download',\n data: node,\n },\n {\n name: 'share',\n text: await trans('menu.share.share'),\n icon: 'fa-light fa-share-nodes',\n items: [\n {\n name: 'share',\n text: await trans('menu.share.share'),\n icon: 'fa-light fa-users',\n data: node,\n },\n {\n name: 'share-with-email',\n text: await trans('menu.share.email'),\n icon: 'fa-light fa-envelope',\n data: node,\n },\n {\n name: 'link',\n text: await trans('menu.share.link'),\n icon: 'fa-light fa-link',\n data: node,\n },\n ],\n break: true,\n },\n ];\n // Information submenu items\n const infoSubItems = [\n {\n name: 'properties',\n text: await trans('menu.properties'),\n icon: 'fa-light fa-memo-circle-info',\n break: true,\n data: node,\n },\n ];\n // Add rename only if not locked\n // if (!isNodeLocked) {\n // infoSubItems.unshift({\n // name: 'rename',\n // text: await trans('menu.rename'),\n // icon: 'fa-light fa-pencil',\n // data: node,\n // });\n // }\n //Add lock or unlock based on current state\n // if (isNodeLocked) {\n infoSubItems.push({\n name: 'unlock',\n text: await trans('menu.unlock'),\n icon: 'fa-light fa-unlock',\n data: node,\n });\n // } else {\n infoSubItems.push({\n name: 'lock',\n text: await trans('menu.lock'),\n icon: 'fa-light fa-lock',\n data: node,\n });\n // }\n menuItems.push({\n name: 'file-info',\n text: await trans('menu.information'),\n icon: 'fa-light fa-circle-info',\n items: infoSubItems,\n break: true,\n });\n // Add copy/move/delete operations only if not locked\n menuItems.push({\n name: 'copy',\n text: await trans('menu.make-copy'),\n icon: 'fa-light fa-copy',\n data: node,\n }, {\n name: 'copy-to',\n text: await trans('menu.copy-to'),\n icon: 'fa-light fa-copy',\n data: node,\n }, {\n name: 'move-to',\n text: await trans('menu.move-to'),\n icon: 'fa-light fa-arrow-right-arrow-left',\n break: true,\n data: node,\n }, {\n name: 'delete',\n text: await trans('menu.delete'),\n icon: 'fa-light fa-trash',\n data: node,\n });\n return menuItems;\n },\n /**\n * Returns menu items for folder context menu\n */\n async getFolderContextMenuItems(node) {\n const trans = async (key) => await translateService.translateAsync(key, { scope: RootConfig.config.i18n });\n // const isNodeLocked = await this.isLocked(node);\n const isNodeLocked = false;\n const items = [\n {\n name: 'open-folder',\n text: await trans('menu.open'),\n icon: 'fa-light fa-folder-open',\n data: node,\n }\n ];\n // Add upload menu only if not locked\n if (!isNodeLocked && node?.documentTypes?.length) {\n items.push({\n text: await trans('menu.upload'),\n icon: 'fa-light fa-file-arrow-up',\n break: true,\n items: node.documentTypes.map((type, index, array) => ({\n name: `upload.${type.name}`,\n text: type.title,\n icon: 'fa-light fa-file-arrow-up',\n break: index !== array.length - 1,\n data: {\n node,\n documentType: type,\n },\n })),\n });\n }\n // Information submenu items\n const infoSubItems = [\n {\n name: 'properties',\n text: await trans('menu.properties'),\n icon: 'fa-light fa-memo-circle-info',\n break: true,\n data: node,\n },\n ];\n // Add rename only if not locked\n if (!isNodeLocked) {\n infoSubItems.unshift({\n name: 'rename',\n text: await trans('menu.rename'),\n icon: 'fa-light fa-pencil',\n data: node,\n });\n }\n // Add lock or unlock based on current state\n if (isNodeLocked) {\n infoSubItems.push({\n name: 'unlock',\n text: await trans('menu.unlock'),\n icon: 'fa-light fa-unlock',\n data: node,\n });\n }\n else {\n infoSubItems.push({\n name: 'lock',\n text: await trans('menu.lock'),\n icon: 'fa-light fa-lock',\n data: node,\n });\n }\n items.push({\n name: 'folder-info',\n text: await trans('menu.information'),\n icon: 'fa-light fa-circle-info',\n items: infoSubItems,\n break: true,\n });\n // Add copy/move/delete operations only if not locked\n if (!isNodeLocked) {\n items.push({\n name: 'copy',\n text: await trans('menu.make-copy'),\n icon: 'fa-light fa-copy',\n data: node,\n }, {\n name: 'copy-to',\n text: await trans('menu.copy-to'),\n icon: 'fa-light fa-copy',\n data: node,\n }, {\n name: 'move-to',\n text: await trans('menu.move-to'),\n icon: 'fa-light fa-arrow-right-arrow-left',\n break: true,\n data: node,\n }, {\n name: 'delete',\n text: await trans('menu.delete'),\n icon: 'fa-light fa-trash',\n data: node,\n });\n }\n return items;\n },\n /**\n * Returns context menu items based on node type\n */\n async getNodeContextMenuItems(node) {\n if (node.type === 'file') {\n return await this.getFileContextMenuItems(node);\n }\n else {\n return await this.getFolderContextMenuItems(node);\n }\n },\n //#endregion\n //#region ---- Menu Actions ----\n /**\n * Opens a file\n */\n async openFile(node) {\n await driveService.openFile(node);\n },\n /**\n * Handles all menu item clicks\n */\n async handleMenuItemClick(name, data) {\n const node = data;\n switch (name) {\n case 'open-folder':\n this.navigateToFolder(node.id);\n break;\n case 'open-file':\n await this.openFile(node);\n break;\n case 'open-gallery':\n if (data.folderId != null) {\n await this.openGalleryWithFolderId();\n }\n else {\n await this.openGallery(node);\n }\n break;\n case 'download':\n this.downloadFile(node);\n break;\n case 'new-folder':\n await this.createFolder(node);\n break;\n case 'paste':\n //TODO: Handle paste operation\n break;\n case 'move-to':\n await this.moveTo(node);\n break;\n case 'copy-to':\n await this.copyTo(node);\n break;\n case 'rename':\n await this.renameNode(node);\n break;\n case 'properties':\n await this.showFolderProperty(node);\n break;\n case 'delete':\n await this.deleteNodes([node]);\n break;\n case 'refresh':\n await this.refresh();\n break;\n case 'copy':\n await this.makeCopy(node);\n break;\n /*\n case 'share':\n await this.share(node);\n break;\n case 'share-with-email':\n await this.shareWithEmail(node);\n break;\n case 'link':\n await this.link(node);\n break;\n */\n case 'lock':\n await this.lock(node);\n break;\n case 'unlock':\n await this.unlock(node);\n break;\n default:\n if (name?.startsWith('upload.')) {\n await this.uploadFileByType(data.node?.id ?? store.currentNode()?.id, data.documentType.id);\n await this.refresh();\n }\n break;\n }\n },\n /**\n * Downloads the specified file\n */\n downloadFile(node) {\n driveService.downloadFile(node);\n },\n /**\n * Opens the gallery for a folder\n */\n async openGallery(node) {\n await driveService.showFileViewerPopup(node, {\n folderVirtualFiles: store.files(),\n index: store.files().findIndex((f) => f.id === node.id),\n });\n },\n /**\n * Shows properties for a folder\n */\n async showFolderProperty(node) {\n if (node.type == 'folder') {\n if (await driveService.showFolderEditDialog(node)) {\n await this.refresh();\n }\n }\n else {\n if (await driveService.updateUploadFileByType(node)) {\n await this.refresh();\n }\n }\n },\n /**\n * Creates a new folder\n */\n async createFolder(node) {\n const parentId = node?.id ?? store.currentNode()?.id;\n if (parentId) {\n const result = await driveService.showCreateFolderDialog(parentId);\n if (result) {\n await this.refresh();\n }\n }\n },\n /**\n * Renames a node\n */\n async renameNode(node) {\n if (node) {\n const result = await driveService.showRenamePopup(node);\n if (result) {\n if (node.storageType == 'virtual') {\n const files = store.files();\n const updatedFiles = files.map((file) => {\n if (file.id === result.id) {\n return result;\n }\n return file;\n });\n this.virtualFolder(updatedFiles);\n }\n await this.refresh();\n }\n return result;\n }\n return;\n },\n /**\n * Makes a copy of a node\n */\n async makeCopy(node) {\n if (node) {\n try {\n await driveService.copy(node);\n await this.refresh();\n }\n catch (error) {\n console.error('Error copying node:', error);\n }\n }\n },\n /**\n * Checks if a node is locked\n */\n async isLocked(node) {\n try {\n return lockService.check({\n refId: node.id,\n refType: `${RootConfig.module.name}.${node.type === 'folder' ? RootConfig.entities.folder.name : RootConfig.entities.document.name}`,\n });\n }\n catch (error) {\n console.error('Error checking lock status:', error);\n return false;\n }\n },\n /**\n * Locks a node\n */\n async lock(node) {\n const locked = await driveService.showLockDialog(node);\n if (locked) {\n await this.refresh();\n }\n },\n /**\n * Unlocks a node\n */\n async unlock(node) {\n const unlocked = await driveService.showUnlockDialog(node);\n if (unlocked) {\n await this.refresh();\n }\n },\n /**\n * Moves a node to a different location\n */\n async moveTo(node) {\n if (node) {\n const result = await driveService.moveTo({ browseMode: 'folder', node: node, scope: store.scope() });\n if (result) {\n await this.refresh();\n }\n }\n },\n /**\n * Copies a node to a different location\n */\n async copyTo(node) {\n if (node) {\n const result = await driveService.copyTo({ browseMode: 'folder', node: node, scope: store.scope() });\n if (result) {\n await this.refresh();\n }\n }\n },\n /**\n * Uploads a file by type\n */\n async uploadFileByType(folderId, documentTypeId) {\n await driveService.uploadFileByType(folderId, documentTypeId);\n await this.refresh();\n },\n //#endregion\n})));\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG9jdW1lbnQtZXhwbG9yZXIudmlld21vZGVsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tb2R1bGVzL2RvY3VtZW50LW1hbmFnZW1lbnQvc3JjL2xpYi9mZWF0dXJlcy9kb2N1bWVudC1leHBsb3Jlci9kb2N1bWVudC1leHBsb3Jlci52aWV3bW9kZWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDaEUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDMUQsT0FBTyxFQUFlLDBCQUEwQixFQUFFLGlCQUFpQixFQUFFLGNBQWMsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ3JILE9BQU8sRUFBcUIsZ0JBQWdCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUM1RSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNqRCxPQUFPLEVBQUUsVUFBVSxFQUFFLFdBQVcsRUFBRSxZQUFZLEVBQUUsV0FBVyxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM5RixPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3hELE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBTy9FLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRzlELE1BQU0sQ0FBQyxNQUFNLDRCQUE0QixHQUFHLFdBQVcsQ0FDckQsRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFLEVBRXRCLFNBQVMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDO0lBQ2YsYUFBYTtJQUNiLFFBQVEsRUFBRSxhQUE0QztJQUN0RCxTQUFTLEVBQUUsS0FBSztJQUNo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QUFDLE1BQU0sQ0FBQyxJQUE4QjtRQUN6QyxJQUFJLElBQUksRUFBRSxDQUFDO1lBQ1QsTUFBTSxNQUFNLEdBQUcsTUFBTSxZQUFZLENBQUMsTUFBTSxDQUFDLEVBQUUsVUFBVSxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLEtBQUssRUFBRSxLQUFLLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1lBQ3JHLElBQUksTUFBTSxFQUFFLENBQUM7Z0JBQ1gsTUFBTSxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7WUFDdkIsQ0FBQztRQUNILENBQUM7SUFDSCxDQUFDO0lBRUQ7O09BRUc7SUFDSCxLQUFLLENBQUMsZ0JBQWdCLENBQUMsUUFBZ0IsRUFBRSxjQUFzQjtRQUM3RCxNQUFNLFlBQVksQ0FBQyxnQkFBZ0IsQ0FBQyxRQUFRLEVBQUUsY0FBYyxDQUFDLENBQUM7UUFDOUQsTUFBTSxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7SUFDdkIsQ0FBQztJQUVELFlBQVk7Q0FDYixDQUFDLENBQ0gsQ0FDRixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQVhUcmFuc2xhdGlvblNlcnZpY2UgfSBmcm9tICdAYWNvcmV4L2NvcmUvdHJhbnNsYXRpb24nO1xuaW1wb3J0IHsgQVhQU2Vzc2lvblNlcnZpY2UgfSBmcm9tICdAYWNvcmV4L3BsYXRmb3JtL2F1dGgnO1xuaW1wb3J0IHsgQVhQRmlsZVR5cGUsIEFYUEZpbGVUeXBlUHJvdmlkZXJTZXJ2aWNlLCBBWFBTZXR0aW5nU2VydmljZSwgQVhQTG9ja1NlcnZpY2UgfSBmcm9tICdAYWNvcmV4L3BsYXRmb3JtL2NvbW1vbic7XG5pbXBvcnQgeyBBWFBBY3Rpb25NZW51SXRlbSwgQVhQUGxhdGZvcm1TY29wZSB9IGZyb20gJ0BhY29yZXgvcGxhdGZvcm0vY29yZSc7XG5pbXBvcnQgeyBjb21wdXRlZCwgaW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBwYXRjaFN0YXRlLCBzaWduYWxTdG9yZSwgd2l0aENvbXB1dGVkLCB3aXRoTWV0aG9kcywgd2l0aFN0YXRlIH0gZnJvbSAnQG5ncngvc2lnbmFscyc7XG5pbXBvcnQgeyBSb290Q29uZmlnIH0gZnJvbSAnLi4vLi4vY29uc3QnO1xuaW1wb3J0IHsgQVhNRG9jdW1lbnRUeXBlU2VydmljZSB9IGZyb20gJy4uLy4uL2VudGl0aWVzJztcbmltcG9ydCB7IEFYTURvY3VtZW50TWFuYWdlclNlcnZpY2UgfSBmcm9tICcuLi9zaGFyZWQvZG9jdW1lbnQtbWFuYWdlci5zZXJ2aWNlJztcbmltcG9ydCB7XG4gIEFYTURvY3VtZW50RXhwbG9yZXJCcm93c2VNb2RlLFxuICBBWE1Eb2N1bWVudEV4cGxvcmVyTm9kZSxcbiAgQVhNRG9jdW1lbnRTZWxlY3Rpb25Nb2RlLFxuICBBWFBEb2N1bWVudEV4cGxvcmVyVmlld01vZGUsXG59IGZyb20gJy4uL3NoYXJlZC9kb2N1bWVudC1tYW5hZ2VyLnR5cGVzJztcbmltcG9ydCB7IEFYUERvY3VtZW50RXhwbG9yZXJTZXR0aW5ncyB9IGZyb20gJy4vc2V0dGluZ3Mua2V5cyc7XG5pbXBvcnQgeyBBWE1lbnVJdGVtIH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL21lbnUnO1xuXG5leHBvcnQgY29uc3QgQVhQRG9jdW1lbnRFeHBsb3JlclZpZXdNb2RlbCA9IHNpZ25hbFN0b3JlKFxuICB7IHByb3ZpZGVkSW46ICdyb290JyB9LFxuXG4gIHdpdGhTdGF0ZSgoKSA9PiAoe1xuICAgIC8vIFZpZXcgU3RhdGVcbiAgICB2aWV3TW9kZTogJ2xhcmdlLXRpbGVzJyBhcyBBWFBEb2N1bWVudEV4cGxvcmVyVmlld01vZGUsXG4gICAgaXNMb2FkaW5nOiBmYWxzZSxcbiAgICBzY29wZTogQVhQUGxhdGZvcm1TY29wZS5Vc2VyLFxuXG4gICAgLy8gTmF2aWdhdGlvbiBTdGF0ZVxuICAgIGN1cnJlbnRQYXRoOiBbXSBhcyBBWE1Eb2N1bWVudEV4cGxvcmVyTm9kZVtdLFxuICAgIGN1cnJlbnROb2RlOiBudWxsIGFzIEFYTURvY3VtZW50RXhwbG9yZXJOb2RlIHwgbnVsbCxcbiAgICBsb2FkaW5nRm9sZGVySWQ6IG51bGwgYXMgc3RyaW5nIHwgbnVsbCxcbiAgICBuYXZpZ2F0aW5nRm9sZGVySWQ6IG51bGwgYXMgc3RyaW5nIHwgbnVsbCxcbiAgICBiYWNrSGlzdG9yeTogW10gYXMgeyBmb2xkZXJJZDogc3RyaW5nOyBwYXRoOiBBWE1Eb2N1bWVudEV4cGxvcmVyTm9kZVtdIH1bXSxcblxuICAgIC8vIFNlbGVjdGlvbiBTdGF0ZVxuICAgIHNlbGVjdGlvbk1vZGU6ICdub25lJyBhcyBBWE1Eb2N1bWVudFNlbGVjdGlvbk1vZGUsXG4gICAgc2VsZWN0ZWROb2RlczogW10gYXMgQVhNRG9jdW1lbnRFeHBsb3Jlck5vZGVbXSxcblxuICAgIC8vIEJyb3dzZSBTdGF0ZVxuICAgIGJyb3dzZU1vZGU6ICdmaWxlJyBhcyBBWE1Eb2N1bWVudEV4cGxvcmVyQnJvd3NlTW9kZSxcblxuICAgIC8vIFNvcnQgU3RhdGVcbiAgICBzb3J0RmllbGQ6ICduYW1lJyxcbiAgICBzb3J0RGlyZWN0aW9uOiAnYXNjJyxcblxuICAgIC8vIENvbnRlbnQgU3RhdGVcbiAgICBmb2xkZXJzOiBbXSBhcyBBWE1Eb2N1bWVudEV4cGxvcmVyTm9kZVtdLFxuICAgIGZpbGVzOiBbXSBhcyBBWE1Eb2N1bWVudEV4cGxvcmVyTm9kZVtdLFxuICAgIGl0ZW1zQ291bnQ6IDAsXG4gICAgYXZhaWxhYmxlU3BhY2U6IDAsXG5cbiAgICAvLyBEcml2ZSBTdGF0ZVxuICAgIGN1cnJlbnREcml2ZTogbnVsbCBhcyBBWFBQbGF0Zm9ybVNjb3BlIHwgbnVsbCxcblxuICAgIC8vIEZpbGUgVHlwZSBTdGF0ZVxuICAgIGZpbGVUeXBlczogW10gYXMgQVhQRmlsZVR5cGVbXSxcbiAgICAvLyBEZXRhaWwgUGFuZWwgU3RhdGVcbiAgICBkZXRhaWxQYW5lbDogZmFsc2UsXG4gIH0pKSxcblxuICB3aXRoQ29tcHV0ZWQoKHN0b3JlKSA9PiAoe1xuICAgIGlzUm9vdDogY29tcHV0ZWQoKCkgPT4ge1xuICAgICAgY29uc3QgcGF0aCA9IHN0b3JlLmN1cnJlbnRQYXRoKCk7XG4gICAgICByZXR1cm4gcGF0aC5sZW5ndGggPT09IDE7XG4gICAgfSksXG5cbiAgICBpc1ZpcnR1YWw6IGNvbXB1dGVkKCgpID0+IHtcbiAgICAgIGNvbnN0IG5vZGUgPSBzdG9yZS5jdXJyZW50Tm9kZSgpO1xuICAgICAgcmV0dXJuIG5vZGU/LnN0b3JhZ2VUeXBlID09PSAndmlydHVhbCc7XG4gICAgfSksXG5cbiAgICBjdXJyZW50Rm9sZGVyOiBjb21wdXRlZCgoKSA9PiBzdG9yZS5jdXJyZW50Tm9kZSgpKSxcblxuICAgIGN1cnJlbnRGb2xkZXJDb250ZW50czogY29tcHV0ZWQoKCkgPT4gKHtcbiAgICAgIGZvbGRlcnM6IHN0b3JlLmZvbGRlcnMoKSxcbiAgICAgIGZpbGVzOiBzdG9yZS5maWxlcygpLFxuICAgIH0pKSxcblxuICAgIGlzTGFyZ2VUaWxlc1ZpZXc6IGNvbXB1dGVkKCgpID0+IHN0b3JlLnZpZXdNb2RlKCkgPT09ICdsYXJnZS10aWxlcycpLFxuICAgIGlzU21hbGxUaWxlc1ZpZXc6IGNvbXB1dGVkKCgpID0+IHN0b3JlLnZpZXdNb2RlKCkgPT09ICdzbWFsbC10aWxlcycpLFxuICAgIGlzTGlzdFZpZXc6IGNvbXB1dGVkKCgpID0+IHN0b3JlLnZpZXdNb2RlKCkgPT09ICdsaXN0JyksXG4gICAgaXNEZXRhaWxzVmlldzogY29tcHV0ZWQoKCkgPT4gc3RvcmUudmlld01vZGUoKSA9PT0gJ2RldGFpbHMnKSxcbiAgICBpc0xhcmdlSWNvbnNWaWV3OiBjb21wdXRlZCgoKSA9PiBzdG9yZS52aWV3TW9kZSgpID09PSAnbGFyZ2UtaWNvbnMnKSxcbiAgICBpc1NtYWxsSWNvbnNWaWV3OiBjb21wdXRlZCgoKSA9PiBzdG9yZS52aWV3TW9kZSgpID09PSAnc21hbGwtaWNvbnMnKSxcblxuICAgIGlzQmFja0F2YWlsYWJsZTogY29tcHV0ZWQoKCkgPT4gc3RvcmUuYmFja0hpc3RvcnkoKS5sZW5ndGggPiAwKSxcbiAgICBpc1VwQXZhaWxhYmxlOiBjb21wdXRlZCgoKSA9PiB7XG4gICAgICBjb25zdCBub2RlID0gc3RvcmUuY3VycmVudE5vZGUoKTtcbiAgICAgIHJldHVybiBub2RlPy5wYXJlbnRJZCAhPSBudWxsO1xuICAgIH0pLFxuXG4gICAgc2VsZWN0ZWRDb3VudDogY29tcHV0ZWQoKCkgPT4gc3RvcmUuc2VsZWN0ZWROb2RlcygpLmxlbmd0aCksXG4gICAgaGFzU2VsZWN0ZWRJdGVtczogY29tcHV0ZWQoKCkgPT4gc3RvcmUuc2VsZWN0ZWROb2RlcygpLmxlbmd0aCA+IDApLFxuICAgIGhhc011bHRpcGxlU2VsZWN0ZWRJdGVtczogY29tcHV0ZWQoKCkgPT4gc3RvcmUuc2VsZWN0ZWROb2RlcygpLmxlbmd0aCA+IDEpLFxuICAgIGlzTXVsdGlTZWxlY3Q6IGNvbXB1dGVkKCgpID0+IHN0b3JlLnNlbGVjdGlvbk1vZGUoKSA9PT0gJ211bHRpcGxlJyksXG4gICAgc2VsZWN0ZWROb2RlOiBjb21wdXRlZDxBWE1Eb2N1bWVudEV4cGxvcmVyTm9kZSB8IG51bGw+KCgpID0+IHN0b3JlLnNlbGVjdGVkTm9kZXMoKVswXSA/PyBudWxsKSxcblxuICAgIGlzRGV0YWlsUGFuZWxPcGVuOiBjb21wdXRlZCgoKSA9PiBzdG9yZS5kZXRhaWxQYW5lbCgpKSxcbiAgfSkpLFxuXG4gIHdpdGhNZXRob2RzKFxuICAgIChcbiAgICAgIHN0b3JlLFxuICAgICAgZmlsZVR5cGVTZXJ2aWNlID0gaW5qZWN0KEFYUEZpbGVUeXBlUHJvdmlkZXJTZXJ2aWNlKSxcbiAgICAgIGRvY3VtZW50VHlwZVNlcnZpY2UgPSBpbmplY3QoQVhNRG9jdW1lbnRUeXBlU2VydmljZSksXG4gICAgICBkcml2ZVNlcnZpY2UgPSBpbmplY3QoQVhNRG9jdW1lbnRNYW5hZ2VyU2VydmljZSksXG4gICAgICBzZXR0aW5nU2VydmljZSA9IGluamVjdChBWFBTZXR0aW5nU2VydmljZSksXG4gICAgICBzZXNzaW9uU2VydmljZSA9IGluamVjdChBWFBTZXNzaW9uU2VydmljZSksXG4gICAgICB0cmFuc2xhdGVTZXJ2aWNlID0gaW5qZWN0KEFYVHJhbnNsYXRpb25TZXJ2aWNlKSxcbiAgICAgIGxvY2tTZXJ2aWNlID0gaW5qZWN0KEFYUExvY2tTZXJ2aWNlKVxuICAgICkgPT4gKHtcbiAgICAgIGFzeW5jIGluaXRpYWxpemUob3B0aW9ucz86IHtcbiAgICAgICAgc2NvcGU/OiBBWFBQbGF0Zm9ybVNjb3BlOyBicm93c2VNb2RlPzogQVhNRG9jdW1lbnRFeHBsb3JlckJyb3dzZU1vZGUsXG4gICAgICAgIGZpbHRlcj86IGFueVxuICAgICAgfSkge1xuICAgICAgICAvLyBMb2FkIGZpbGUgdHlwZXNcbiAgICAgICAgY29uc3QgZmlsZVR5cGVzID0gYXdhaXQgZmlsZVR5cGVTZXJ2aWNlLml0ZW1zKCk7XG4gICAgICAgIHBhdGNoU3RhdGUoc3RvcmUsIHsgZmlsZVR5cGVzIH0pO1xuICAgICAgICAvLyBMb2FkIGluaXRpYWwgc2V0dGluZ3NcbiAgICAgICAgY29uc3Qgdmlld01vZGUgPSBhd2FpdCBzZXR0aW5nU2VydmljZVxuICAgICAgICAgIC5zY29wZShvcHRpb25zPy5zY29wZSB8fCBBWFBQbGF0Zm9ybVNjb3BlLlVzZXIpXG4gICAgICAgICAgLmdldChBWFBEb2N1bWVudEV4cGxvcmVyU2V0dGluZ3MuVmlld01vZGUpO1xuICAgICAgICBjb25zdCBzb3J0RmllbGQgPSBhd2FpdCBzZXR0aW5nU2VydmljZVxuICAgICAgICAgIC5zY29wZShvcHRpb25zPy5zY29wZSB8fCBBWFBQbGF0Zm9ybVNjb3BlLlVzZXIpXG4gICAgICAgICAgLmdldChBWFBEb2N1bWVudEV4cGxvcmVyU2V0dGluZ3MuU29ydEZpZWxkKTtcbiAgICAgICAgY29uc3Qgc29ydERpcmVjdGlvbiA9IGF3YWl0IHNldHRpbmdTZXJ2aWNlXG4gICAgICAgICAgLnNjb3BlKG9wdGlvbnM/LnNjb3BlIHx8IEFYUFBsYXRmb3JtU2NvcGUuVXNlcilcbiAgICAgICAgICAuZ2V0KEFYUERvY3VtZW50RXhwbG9yZXJTZXR0aW5ncy5Tb3J0RGlyZWN0aW9uKTtcblxuICAgICAgICBwYXRjaFN0YXRlKHN0b3JlLCB7XG4gICAgICAgICAgdmlld01vZGU6IHZpZXdNb2RlIHx8ICdsaXN0JyxcbiAgICAgICAgICBzb3J0RmllbGQ6IHNvcnRGaWVsZCB8fCAnbmFtZScsXG4gICAgICAgICAgc29ydERpcmVjdGlvbjogc29ydERpcmVjdGlvbiB8fCAnYXNjJyxcbiAgICAgICAgICBicm93c2VNb2RlOiBvcHRpb25zPy5icm93c2VNb2RlIHx8ICdmaWxlJyxcbiAgICAgICAgICBzY29wZTogb3B0aW9ucz8uc2NvcGUgfHwgQVhQUGxhdGZvcm1TY29wZS5Vc2VyLFxuICAgICAgICB9KTtcbiAgICAgIH0sXG5cbiAgICAgIF9sb2FkOiBhc3luYyAoZm9sZGVySWQ6IHN0cmluZykgPT4ge1xuICAgICAgICBwYXRjaFN0YXRlKHN0b3JlLCB7IGxvYWRpbmdGb2xkZXJJZDogZm9sZGVySWQsIGlzTG9hZGluZzogdHJ1ZSB9KTtcblxuICAgICAgICBhd2FpdCBuZXcgUHJvbWlzZSgocmVzb2x2ZSkgPT4gc2V0VGltZW91dChyZXNvbHZlLCAxMDApKTtcblxuICAgICAgICB0cnkge1xuICAgICAgICAgIGNvbnN0IG5vZGUgPSBhd2FpdCBkcml2ZVNlcnZpY2UuZ2V0Rm9sZGVyKHN0b3JlLnNjb3BlKCksIGZvbGRlcklkLCB7XG4gICAgICAgICAgICB0ZW5hbnRJZDogc2Vzc2lvblNlcnZpY2UudGVuYW50Py5pZCxcbiAgICAgICAgICAgIHVzZXJJZDogc2Vzc2lvblNlcnZpY2UudXNlcj8uaWQsXG4gICAgICAgICAgfSk7XG5cbiAgICAgICAgICAvLyBTb3J0IHdpdGggZGlyZWN0aW9uXG4gICAgICAgICAgY29uc3Qgc29ydEZpZWxkID0gc3RvcmUuc29ydEZpZWxkKCk7XG4gICAgICAgICAgY29uc3Qgc29ydERpcmVjdGlvbiA9IHN0b3JlLnNvcnREaXJlY3Rpb24oKTtcbiAgICAgICAgICBjb25zdCBkaXJlY3Rpb25NdWx0aXBsaWVyID0gc29ydERpcmVjdGlvbiA9PT0gJ2FzYycgPyAxIDogLTE7XG5cbiAgICAgICAgICBzd2l0Y2ggKHNvcnRGaWVsZCkge1xuICAgICAgICAgICAgY2FzZSAnbmFtZSc6XG4gICAgICAgICAgICAgIG5vZGUucmVzdWx0LmNoaWxkcmVuID0gbm9kZS5yZXN1bHQuY2hpbGRyZW4/LnNvcnQoKGEsIGIpID0+XG4gICAgICAgICAgICAgICAgZGlyZWN0aW9uTXVsdGlwbGllciAqIGEubmFtZS5sb2NhbGVDb21wYXJlKGIubmFtZSkpO1xuICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIGNhc2UgJ21vZGlmaWVkJzpcbiAgICAgICAgICAgICAgbm9kZS5yZXN1bHQuY2hpbGRyZW4gPSBub2RlLnJlc3VsdC5jaGlsZHJlbj8uc29ydCgoYSwgYikgPT5cbiAgICAgICAgICAgICAgICBkaXJlY3Rpb25NdWx0aXBsaWVyICogKChhLm1vZGlmaWVkQXQ/LmdldFRpbWUoKSA/PyAwKSAtIChiLm1vZGlmaWVkQXQ/LmdldFRpbWUoKSA/PyAwKSkpO1xuICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIGNhc2UgJ3NpemUnOlxuICAgICAgICAgICAgICBub2RlLnJlc3VsdC5jaGlsZHJlbiA9IG5vZGUucmVzdWx0LmNoaWxkcmVuPy5zb3J0KChhLCBiKSA9PlxuICAgICAgICAgICAgICAgIGRpcmVjdGlvbk11bHRpcGxpZXIgKiAoKGEuc2l6ZSA/PyAwKSAtIChiLnNpemUgPz8gMCkpKTtcbiAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgICAgICBub2RlLnJlc3VsdC5jaGlsZHJlbiA9IG5vZGUucmVzdWx0LmNoaWxkcmVuPy5zb3J0KChhLCBiKSA9PlxuICAgICAgICAgICAgICAgIGRpcmVjdGlvbk11bHRpcGxpZXIgKiBhLm5hbWUubG9jYWxlQ29tcGFyZShiLm5hbWUpKTtcbiAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgfVxuXG5cblxuICAgICAgICAgIHBhdGNoU3RhdGUoc3RvcmUsIHtcbiAgICAgICAgICAgIGN1cnJlbnROb2RlOiBub2RlLnJlc3VsdCxcbiAgICAgICAgICAgIGN1cnJlbnRQYXRoOiBub2RlLnBhdGgsXG5cbiAgICAgICAgICAgIGZvbGRlcnM6IG5vZGUucmVzdWx0LmNoaWxkcmVuPy5maWx0ZXIoKGl0ZW06IEFYTURvY3VtZW50RXhwbG9yZXJOb2RlKSA9PiBpdGVtLnR5cGUgPT09ICdmb2xkZXInKSB8fCBbXSxcbiAgICAgICAgICAgIGZpbGVzOlxuICAgICAgICAgICAgICBub2RlLnJlc3VsdC5jaGlsZHJlbj8uZmlsdGVyKFxuICAgICAgICAgICAgICAgIChpdGVtOiBBWE1Eb2N1bWVudEV4cGxvcmVyTm9kZSkgPT4gc3RvcmUuYnJvd3NlTW9kZSgpID09ICdmaWxlJyAmJiBpdGVtLnR5cGUgPT09ICdmaWxlJ1xuICAgICAgICAgICAgICApIHx8IFtdLFxuICAgICAgICAgICAgaXRlbXNDb3VudDogbm9kZS5yZXN1bHQuY2hpbGRyZW4/Lmxlbmd0aCB8fCAwLFxuICAgICAgICAgICAgYXZhaWxhYmxlU3BhY2U6IGF3YWl0IGRyaXZlU2VydmljZS5nZXRBdmFpbGFibGVTcGFjZSgpLFxuICAgICAgICAgICAgbG9hZGluZ0ZvbGRlcklkOiBudWxsLFxuICAgICAgICAgICAgaXNMb2FkaW5nOiBmYWxzZSxcbiAgICAgICAgICAgIG5hdmlnYXRpbmdGb2xkZXJJZDogbnVsbCxcbiAgICAgICAgICB9KTtcbiAgICAgICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgICAgICBwYXRjaFN0YXRlKHN0b3JlLCB7XG4gICAgICAgICAgICBsb2FkaW5nRm9sZGVySWQ6IG51bGwsXG4gICAgICAgICAgICBpc0xvYWRpbmc6IGZhbHNlLFxuICAgICAgICAgIH0pO1xuICAgICAgICAgIHRocm93IGVycm9yO1xuICAgICAgICB9XG4gICAgICB9LFxuXG4gICAgICBuYXZpZ2F0ZVRvRm9sZGVyKGZvbGRlcklkOiBzdHJpbmcpIHtcbiAgICAgICAgY29uc3QgY3VycmVudE5vZGUgPSBzdG9yZS5jdXJyZW50Tm9kZSgpO1xuICAgICAgICBpZiAoY3VycmVudE5vZGUpIHtcbiAgICAgICAgICBwYXRjaFN0YXRlKHN0b3JlLCB7XG4gICAgICAgICAgICBiYWNrSGlzdG9yeTogWy4uLnN0b3JlLmJhY2tIaXN0b3J5KCksIHsgZm9sZGVySWQ6IGN1cnJlbnROb2RlLmlkLCBwYXRoOiBzdG9yZS5jdXJyZW50UGF0aCgpIH1dLFxuICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgICAgIHBhdGNoU3RhdGUoc3RvcmUsIHsgbmF2aWdhdGluZ0ZvbGRlcklkOiBmb2xkZXJJZCB9KTtcbiAgICAgIH0sXG5cbiAgICAgIGFzeW5jIGxvYWRGb2xkZXJDb250ZW50cyhmb2xkZXJJZDogc3RyaW5nKSB7XG4gICAgICAgIGF3YWl0IHRoaXMuX2xvYWQoZm9sZGVySWQpO1xuICAgICAgICB0aGlzLmRlc2VsZWN0QWxsKCk7XG4gICAgICB9LFxuXG4gICAgICBhc3luYyB2aXJ0dWFsRm9sZGVyKGZpbGVzOiBBWE1Eb2N1bWVudEV4cGxvcmVyTm9kZVtdID0gW10sIG9wdGlvbnM/OiB7XG4gICAgICAgIG5hbWU/OiBzdHJpbmcsXG4gICAgICAgIHBhcmVudElkPzogc3RyaW5nLFxuICAgICAgfSkge1xuICAgICAgICBjb25zdCBpZCA9ICd2aXJ0dWFsJztcbiAgICAgICAgcGF0Y2hTdGF0ZShzdG9yZSwge1xuICAgICAgICAgIGxvYWRpbmdGb2xkZXJJZDogaWQsXG4gICAgICAgICAgaXNMb2FkaW5nOiB0cnVlLFxuICAgICAgICB9KTtcbiAgICAgICAgYXdhaXQgbmV3IFByb21pc2UoKHJlc29sdmUpID0+IHNldFRpbWVvdXQocmVzb2x2ZSwgMTAwKSk7XG5cbiAgICAgICAgY29uc3Qgbm9kZTogQVhNRG9jdW1lbnRFeHBsb3Jlck5vZGUgPSB7XG4gICAgICAgICAgaWQ6IGlkLFxuICAgICAgICAgIG5hbWU6IG9wdGlvbnM/Lm5hbWUgfHwgJ3ZpcnR1YWwnLFxuICAgICAgICAgIHR5cGU6ICdmb2xkZXInLFxuICAgICAgICAgIGNoaWxkcmVuOiBmaWxlcyxcbiAgICAgICAgICBwYXJlbnRJZDogb3B0aW9ucz8ucGFyZW50SWQgfHwgbnVsbCxcbiAgICAgICAgICBzaXplOiAwLFxuICAgICAgICAgIC8vIFRPRE8gXG4gICAgICAgICAgZG9jdW1lbnRUeXBlcyA6IFtdLFxuICAgICAgICAgIHN0b3JhZ2VUeXBlOiAndmlydHVhbCcsXG4gICAgICAgIH07XG4gICAgICAgIHBhdGNoU3RhdGUoc3RvcmUsIHtcbiAgICAgICAgICBjdXJyZW50Tm9kZTogbm9kZSxcbiAgICAgICAgICBjdXJyZW50UGF0aDogW1xuICAgICAgICAgICAgbm9kZVxuICAgICAgICAgIF0sXG4gICAgICAgICAgZm9sZGVyczogZmlsZXMuZmlsdGVyKChpdGVtKSA9PiBpdGVtLnR5cGUgPT09ICdmb2xkZXInKSxcbiAgICAgICAgICBmaWxlczogZmlsZXMuZmlsdGVyKChpdGVtKSA9PiBpdGVtLnR5cGUgPT09ICdmaWxlJyksXG4gICAgICAgICAgaXRlbXNDb3VudDogZmlsZXMubGVuZ3RoLFxuICAgICAgICAgIGF2YWlsYWJsZVNwYWNlOiBhd2FpdCBkcml2ZVNlcnZpY2UuZ2V0QXZhaWxhYmxlU3BhY2UoKSxcbiAgICAgICAgICBsb2FkaW5nRm9sZGVySWQ6IG51bGwsXG4gICAgICAgICAgaXNMb2FkaW5nOiBmYWxzZSxcbiAgICAgICAgICBuYXZpZ2F0aW5nRm9sZGVySWQ6IG51bGwsXG4gICAgICAgIH0pO1xuICAgICAgfSxcblxuICAgICAgc2V0Vmlld01vZGUobW9kZTogQVhQRG9jdW1lbnRFeHBsb3JlclZpZXdNb2RlIHwgc3RyaW5nKSB7XG4gICAgICAgIHBhdGNoU3RhdGUoc3RvcmUsIHsgdmlld01vZGU6IG1vZGUgYXMgQVhQRG9jdW1lbnRFeHBsb3JlclZpZXdNb2RlIH0pO1xuICAgICAgICBzZXR0aW5nU2VydmljZS5zY29wZShBWFBQbGF0Zm9ybVNjb3BlLlVzZXIpLnNldChBWFBEb2N1bWVudEV4cGxvcmVyU2V0dGluZ3MuVmlld01vZGUsIG1vZGUpO1xuICAgICAgfSxcbiAgICAgIGlzVmlld01vZGUobW9kZTogQVhQRG9jdW1lbnRFeHBsb3JlclZpZXdNb2RlIHwgc3RyaW5nKSB7XG4gICAgICAgIHJldHVybiBzdG9yZS52aWV3TW9kZSgpID09PSBtb2RlO1xuICAgICAgfSxcblxuICAgICAgc2V0U29ydEZpZWxkKGZpZWxkOiBzdHJpbmcpIHtcbiAgICAgICAgcGF0Y2hTdGF0ZShzdG9yZSwgeyBzb3J0RmllbGQ6IGZpZWxkIH0pO1xuICAgICAgICBzZXR0aW5nU2VydmljZS5zY29wZShBWFBQbGF0Zm9ybVNjb3BlLlVzZXIpLnNldChBWFBEb2N1bWVudEV4cGxvcmVyU2V0dGluZ3MuU29ydEZpZWxkLCBmaWVsZCk7XG4gICAgICAgIHRoaXMucmVmcmVzaCgpO1xuICAgICAgfSxcblxuICAgICAgc2V0U29ydERpcmVjdGlvbihkaXJlY3Rpb246IHN0cmluZykge1xuICAgICAgICBwYXRjaFN0YXRlKHN0b3JlLCB7IHNvcnREaXJlY3Rpb246IGRpcmVjdGlvbiB9KTtcbiAgICAgICAgc2V0dGluZ1NlcnZpY2Uuc2NvcGUoQVhQUGxhdGZvcm1TY29wZS5Vc2VyKS5zZXQoQVhQRG9jdW1lbnRFeHBsb3JlclNldHRpbmdzLlNvcnREaXJlY3Rpb24sIGRpcmVjdGlvbik7XG4gICAgICAgIHRoaXMucmVmcmVzaCgpO1xuICAgICAgfSxcbiAgICAgIHNldFNlbGVjdGlvbk1vZGUobW9kZTogQVhNRG9jdW1lbnRTZWxlY3Rpb25Nb2RlIHwgc3RyaW5nKSB7XG4gICAgICAgIHBhdGNoU3RhdGUoc3RvcmUsIHsgc2VsZWN0aW9uTW9kZTogbW9kZSBhcyBBWE1Eb2N1bWVudFNlbGVjdGlvbk1vZGUgfSk7XG4gICAgICB9LFxuXG4gICAgICBzZXREcml2ZShzY29wZTogQVhQUGxhdGZvcm1TY29wZSkge1xuICAgICAgICBwYXRjaFN0YXRlKHN0b3JlLCB7IGN1cnJlbnREcml2ZTogc2NvcGUgfSk7XG4gICAgICB9LFxuXG4gICAgICBpc0xvYWRpbmdGb2xkZXIoZm9sZGVySWQ6IHN0cmluZyk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gc3RvcmUubG9hZGluZ0ZvbGRlcklkKCkgPT09IGZvbGRlcklkO1xuICAgICAgfSxcblxuICAgICAgZ2V0RmlsZUluZm8oZmlsZU5hbWU6IHN0cmluZyk6IHsgaWNvbjogc3RyaW5nOyB0eXBlOiBzdHJpbmcgfSB7XG4gICAgICAgIGNvbnN0IGZpbGVUeXBlcyA9IHN0b3JlLmZpbGVUeXBlcygpO1xuICAgICAgICBjb25zdCBleHRlbnNpb24gPSBmaWxlTmFtZS5zcGxpdCgnLicpLnBvcCgpPy50b0xvd2VyQ2FzZSgpIHx8ICcnO1xuICAgICAgICBjb25zdCBleHRlbnNpb25zID0gZmlsZVR5cGVzLmZsYXRNYXAoKHR5cGUpID0+IHR5cGUuZXh0ZW5zaW9ucyk7XG4gICAgICAgIGNvbnN0IGZpbGVUeXBlID0gZXh0ZW5zaW9ucy5maW5kKChlKSA9PiBlLm5hbWUgPT09IGV4dGVuc2lvbik7XG5cbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICBpY29uOiBmaWxlVHlwZT8uaWNvbiB8fCAnZmEtbGlnaHQgZmEtZmlsZScsXG4gICAgICAgICAgdHlwZTogZmlsZVR5cGU/Lm5hbWUgfHwgJ1Vua25vd24nLFxuICAgICAgICB9O1xuICAgICAgfSxcblxuICAgICAgZ2V0Tm9kZUluZm8obm9kZTogQVhNRG9jdW1lbnRFeHBsb3Jlck5vZGUpOiB7XG4gICAgICAgIG5hbWU6IHN0cmluZztcbiAgICAgICAgaWNvbjogc3RyaW5nO1xuICAgICAgICB0eXBlOiBzdHJpbmc7XG4gICAgICAgIHNlY3Rpb25zOlxuICAgICAgICB7XG4gICAgICAgICAgdGl0bGU6IHN0cmluZztcbiAgICAgICAgICBkZXRhaWxzOiB7XG4gICAgICAgICAgICB0aXRsZTogc3RyaW5nO1xuICAgICAgICAgICAgY29udGVudD86IGFueTtcbiAgICAgICAgICAgIGljb24/OiBzdHJpbmc7XG4gICAgICAgICAgICBmb3JtYXQ/OiAnZGF0ZXRpbWUnIHwgJ2ZpbGVzaXplJyB8ICdudW1iZXInIHwgJ3N0cmluZyc7XG4gICAgICAgICAgfVtdO1xuICAgICAgICB9W107XG4gICAgICB9IHtcbiAgICAgICAgLy8gSWYgbm8gbm9kZSwgcmV0dXJuIGEgZGVmYXVsdCBvYmplY3RcbiAgICAgICAgaWYgKCFub2RlKSB7XG4gICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIG5hbWU6ICctLS0nLFxuICAgICAgICAgICAgaWNvbjogJ2ZhLWxpZ2h0IGZhLWZvbGRlcicsXG4gICAgICAgICAgICB0eXBlOiAnRm9sZGVyJyxcbiAgICAgICAgICAgIHNlY3Rpb25zOiBbXG4gICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICB0aXRsZTogJ0RldGFpbHMnLFxuICAgICAgICAgICAgICAgIGRldGFpbHM6IFtdLFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgXSxcbiAgICAgICAgICB9O1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gSWYgdGhlIG5vZGUgaXMgYSBmaWxlLCByZXR1cm4gdGhlIGZpbGUgaW5mb1xuICAgICAgICBpZiAobm9kZS50eXBlID09PSAnZmlsZScpIHtcblxuICAgICAgICAgIGNvbnN0IGZpbGVUeXBlcyA9IHN0b3JlLmZpbGVUeXBlcygpO1xuICAgICAgICAgIGNvbnN0IGV4dGVuc2lvbiA9IG5vZGUubmFtZS5zcGxpdCgnLicpLnBvcCgpPy50b0xvd2VyQ2FzZSgpIHx8ICcnO1xuICAgICAgICAgIGNvbnN0IGV4dGVuc2lvbnMgPSBmaWxlVHlwZXMuZmxhdE1hcCgodHlwZSkgPT4gdHlwZS5leHRlbnNpb25zKTtcbiAgICAgICAgICBjb25zdCBmaWxlVHlwZSA9IGV4dGVuc2lvbnMuZmluZCgoZSkgPT4gZS5uYW1lID09PSBleHRlbnNpb24pO1xuICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICBuYW1lOiBub2RlLm5hbWUsXG4gICAgICAgICAgICBpY29uOiBmaWxlVHlwZT8uaWNvbiB8fCAnZmEtbGlnaHQgZmEtZmlsZScsXG4gICAgICAgICAgICB0eXBlOiAnRmlsZScsXG4gICAgICAgICAgICBzZWN0aW9uczogW1xuICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgdGl0bGU6ICdEZXRhaWxzJyxcbiAgICAgICAgICAgICAgICBkZXRhaWxzOiBbXG4gICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIHRpdGxlOiAnRGVzY3JpcHRpb24nLFxuICAgICAgICAgICAgICAgICAgICBjb250ZW50OiBub2RlLmRlc2NyaXB0aW9uLFxuICAgICAgICAgICAgICAgICAgICBpY29uOiAnZmEtc29saWQgZmEtZmlsZS1saW5lcycsXG4gICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICB0aXRsZTogJ1NpemUnLFxuICAgICAgICAgICAgICAgICAgICBjb250ZW50OiBub2RlLnNpemUgfHwgMCxcbiAgICAgICAgICAgICAgICAgICAgZm9ybWF0OiAnZmlsZXNpemUnLFxuICAgICAgICAgICAgICAgICAgICBpY29uOiAnZmEtc29saWQgZmEtZmlsZS1saW5lcycsXG4gICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICB0aXRsZTogJ0NyZWF0ZWQgYXQnLFxuICAgICAgICAgICAgICAgICAgICBjb250ZW50OiBub2RlLmNyZWF0ZWRBdCB8fCBuZXcgRGF0ZSgpLFxuICAgICAgICAgICAgICAgICAgICBmb3JtYXQ6ICdkYXRldGltZScsXG4gICAgICAgICAgICAgICAgICAgIGljb246ICdmYS1zb2xpZCBmYS1jYWxlbmRhci1kYXlzJyxcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIHRpdGxlOiAnTW9kaWZpZWQgYXQnLFxuICAgICAgICAgICAgICAgICAgICBjb250ZW50OiBub2RlLm1vZGlmaWVkQXQgfHwgbmV3IERhdGUoKSxcbiAgICAgICAgICAgICAgICAgICAgZm9ybWF0OiAnZGF0ZXRpbWUnLFxuICAgICAgICAgICAgICAgICAgICBpY29uOiAnZmEtc29saWQgZmEtY2FsZW5kYXItZGF5cycsXG4gICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICB0aXRsZTogJ01ldGFkYXRhJyxcbiAgICAgICAgICAgICAgICBkZXRhaWxzOiBub2RlLm1ldGEgPyBub2RlLm1ldGEubWFwKChtZXRhKSA9PiAoe1xuICAgICAgICAgICAgICAgICAgdGl0bGU6IG1ldGEudGl0bGUsXG4gICAgICAgICAgICAgICAgICBjb250ZW50OiBtZXRhLnZhbHVlLFxuICAgICAgICAgICAgICAgIH0pKSA6IFtdLFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgXSxcbiAgICAgICAgICB9O1xuICAgICAgICB9XG4gICAgICAgIC8vIElmIHRoZSBub2RlIGlzIGEgZm9sZGVyLCByZXR1cm4gdGhlIGZvbGRlciBpbmZvXG4gICAgICAgIGVsc2Uge1xuICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICBuYW1lOiBub2RlLm5hbWUsXG4gICAgICAgICAgICBpY29uOiAnZmEtbGlnaHQgZmEtZm9sZGVyIGF4LXRleHQteWVsbG93LTUwMCcsXG4gICAgICAgICAgICB0eXBlOiAnRm9sZGVyJyxcbiAgICAgICAgICAgIHNlY3Rpb25zOiBbXG4gICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICB0aXRsZTogJ0RldGFpbHMnLFxuICAgICAgICAgICAgICAgIGRldGFpbHM6IFtcbiAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgdGl0bGU6ICdEZXNjcmlwdGlvbicsXG4gICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IG5vZGUuZGVzY3JpcHRpb24sXG4gICAgICAgICAgICAgICAgICAgIGljb246ICdmYS1zb2xpZCBmYS1maWxlLWxpbmVzJyxcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIHRpdGxlOiAnSXRlbXMnLFxuICAgICAgICAgICAgICAgICAgICBjb250ZW50OiBub2RlLmNoaWxkcmVuQ291bnQsXG4gICAgICAgICAgICAgICAgICAgIGljb246ICdmYS1zb2xpZCBmYS1maWxlLWxpbmVzJyxcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIHRpdGxlOiAnU2l6ZScsXG4gICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IG5vZGUuc2l6ZSB8fCAwLFxuICAgICAgICAgICAgICAgICAgICBmb3JtYXQ6ICdmaWxlc2l6ZScsXG4gICAgICAgICAgICAgICAgICAgIGljb246ICdmYS1zb2xpZCBmYS1maWxlLWxpbmVzJyxcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIHRpdGxlOiAnQ3JlYXRlZCBhdCcsXG4gICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IG5vZGUuY3JlYXRlZEF0IHx8IG5ldyBEYXRlKCksXG4gICAgICAgICAgICAgICAgICAgIGZvcm1hdDogJ2RhdGV0aW1lJyxcbiAgICAgICAgICAgICAgICAgICAgaWNvbjogJ2ZhLXNvbGlkIGZhLWNhbGVuZGFyLWRheXMnLFxuICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgdGl0bGU6ICdNb2RpZmllZCBhdCcsXG4gICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IG5vZGUubW9kaWZpZWRBdCB8fCBuZXcgRGF0ZSgpLFxuICAgICAgICAgICAgICAgICAgICBmb3JtYXQ6ICdkYXRldGltZScsXG4gICAgICAgICAgICAgICAgICAgIGljb246ICdmYS1zb2xpZCBmYS1jYWxlbmRhci1kYXlzJyxcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIF0sXG4gICAgICAgICAgfTtcbiAgICAgICAgfVxuICAgICAgfSxcblxuICAgICAgc29ydEl0ZW1zKGl0ZW1zOiBBWE1Eb2N1bWVudEV4cGxvcmVyTm9kZVtdKTogQVhNRG9jdW1lbnRFeHBsb3Jlck5vZGVbXSB7XG4gICAgICAgIGNvbnN0IGZpZWxkID0gc3RvcmUuc29ydEZpZWxkKCk7XG4gICAgICAgIGNvbnN0IGRpcmVjdGlvbiA9IHN0b3JlLnNvcnREaXJlY3Rpb24oKTtcblxuICAgICAgICByZXR1cm4gWy4uLml0ZW1zXS5zb3J0KChhLCBiKSA9PiB7XG4gICAgICAgICAgbGV0IGNvbXBhcmlzb24gPSAwO1xuXG4gICAgICAgICAgc3dpdGNoIChmaWVsZCkge1xuICAgICAgICAgICAgY2FzZSAnbmFtZSc6XG4gICAgICAgICAgICAgIGNvbXBhcmlzb24gPSBhLm5hbWUubG9jYWxlQ29tcGFyZShiLm5hbWUpO1xuICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIGNhc2UgJ21vZGlmaWVkJzpcbiAgICAgICAgICAgICAgY29uc3QgYURhdGUgPSBhLm1vZGlmaWVkQXQgPyBuZXcgRGF0ZShhLm1vZGlmaWVkQXQpIDogbmV3IERhdGUoMCk7XG4gICAgICAgICAgICAgIGNvbnN0IGJEYXRlID0gYi5tb2RpZmllZEF0ID8gbmV3IERhdGUoYi5tb2RpZmllZEF0KSA6IG5ldyBEYXRlKDApO1xuICAgICAgICAgICAgICBjb21wYXJpc29uID0gYURhdGUuZ2V0VGltZSgpIC0gYkRhdGUuZ2V0VGltZSgpO1xuICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIGNhc2UgJ3NpemUnOlxuICAgICAgICAgICAgICBjb21wYXJpc29uID0gKGEuc2l6ZSB8fCAwKSAtIChiLnNpemUgfHwgMCk7XG4gICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIHJldHVybiBkaXJlY3Rpb24gPT09ICdhc2MnID8gY29tcGFyaXNvbiA6IC1jb21wYXJpc29uO1xuICAgICAgICB9KTtcbiAgICAgIH0sXG5cbiAgICAgIGFzeW5jIHJlZnJlc2goKSB7XG4gICAgICAgIGlmICghc3RvcmUuaXNWaXJ0dWFsKCkpIHtcbiAgICAgICAgICBjb25zdCBjdXJyZW50Rm9sZGVyID0gc3RvcmUuY3VycmVudE5vZGUoKTtcbiAgICAgICAgICBpZiAoY3VycmVudEZvbGRlcikge1xuICAgICAgICAgICAgYXdhaXQgdGhpcy5fbG9hZChjdXJyZW50Rm9sZGVyLmlkKTtcbiAgICAgICAgICB9XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgcGF0Y2hTdGF0ZShzdG9yZSwgeyBsb2FkaW5nRm9sZGVySWQ6ICdmYWtlJyB9KTtcbiAgICAgICAgICBwYXRjaFN0YXRlKHN0b3JlLCB7IGxvYWRpbmdGb2xkZXJJZDogbnVsbCB9KTtcbiAgICAgICAgfVxuICAgICAgfSxcblxuICAgICAgbmF2aWdhdGVUb1VwKCkge1xuICAgICAgICBjb25zdCBjdXJyZW50Tm9kZSA9IHN0b3JlLmN1cnJlbnROb2RlKCk7XG4gICAgICAgIGNvbnN0IHBhcmVudElkID0gY3VycmVudE5vZGU/LnBhcmVudElkO1xuICAgICAgICBpZiAocGFyZW50SWQgJiYgY3VycmVudE5vZGUpIHtcbiAgICAgICAgICBwYXRjaFN0YXRlKHN0b3JlLCB7XG4gICAgICAgICAgICBiYWNrSGlzdG9yeTogWy4uLnN0b3JlLmJhY2tIaXN0b3J5KCksIHsgZm9sZGVySWQ6IGN1cnJlbnROb2RlLmlkLCBwYXRoOiBzdG9yZS5jdXJyZW50UGF0aCgpIH1dLFxuICAgICAgICAgIH0pO1xuICAgICAgICAgIHBhdGNoU3RhdGUoc3RvcmUsIHsgbmF2aWdhdGluZ0ZvbGRlcklkOiBwYXJlbnRJZCB9KTtcbiAgICAgICAgICB0aGlzLmxvYWRGb2xkZXJDb250ZW50cyhwYXJlbnRJZCk7XG4gICAgICAgIH1cbiAgICAgIH0sXG5cbiAgICAgIGFzeW5jIG5hdmlnYXRlQmFjaygpIHtcbiAgICAgICAgY29uc3QgaGlzdG9yeSA9IHN0b3JlLmJhY2tIaXN0b3J5KCk7XG4gICAgICAgIGlmIChoaXN0b3J5Lmxlbmd0aCA9PT0gMCkge1xuICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICBjb25zdCBsYXN0RW50cnkgPSBoaXN0b3J5W2hpc3RvcnkubGVuZ3RoIC0gMV07XG4gICAgICAgIHBhdGNoU3RhdGUoc3RvcmUsIHsgYmFja0hpc3Rvcnk6IGhpc3Rvcnkuc2xpY2UoMCwgaGlzdG9yeS5sZW5ndGggLSAxKSB9KTtcbiAgICAgICAgcGF0Y2hTdGF0ZShzdG9yZSwgeyBuYXZpZ2F0aW5nRm9sZGVySWQ6IGxhc3RFbnRyeS5mb2xkZXJJZCB9KTtcbiAgICAgICAgYXdhaXQgdGhpcy5sb2FkRm9sZGVyQ29udGVudHMobGFzdEVudHJ5LmZvbGRlcklkKTtcbiAgICAgIH0sXG5cbiAgICAgIGFzeW5jIG9wZW5HYWxsZXJ5V2l0aEZvbGRlcklkKCk6IFByb21pc2U8dm9pZD4ge1xuICAgICAgICBjb25zdCBmb2xkZXIgPSBzdG9yZS5jdXJyZW50Tm9kZSgpO1xuICAgICAgICBjb25zdCBmaWxlcyA9IGZvbGRlcj8uY2hpbGRyZW4/LmZpbHRlcigoaXRlbTogQVhNRG9jdW1lbnRFeHBsb3Jlck5vZGUpID0+IGl0ZW0udHlwZSA9PT0gJ2ZpbGUnKSB8fCBbXTtcbiAgICAgICAgYXdhaXQgZHJpdmVTZXJ2aWNlLnNob3dGaWxlVmlld2VyUG9wdXAoZmlsZXNbMF0pO1xuICAgICAgfSxcblxuICAgICAgLy9UT0RPOiBEZWxldGUgb25seSBvbmUgbm9kZSBhdCBhIHRpbWVcbiAgICAgIGFzeW5jIGRlbGV0ZU5vZGVzKG5vZGVzOiBBWE1Eb2N1bWVudEV4cGxvcmVyTm9kZVtdID0gc3RvcmUuc2VsZWN0ZWROb2RlcygpKSB7XG4gICAgICAgIGlmIChzdG9yZS5pc1ZpcnR1YWwoKSkge1xuICAgICAgICAgIHBhdGNoU3RhdGUoc3RvcmUsIHtcbiAgICAgICAgICAgIGZpbGVzOiBzdG9yZS5jdXJyZW50Rm9sZGVyQ29udGVudHMoKS5maWxlcy5maWx0ZXIoKGZpbGUpID0+ICFub2Rlcy5zb21lKChub2RlKSA9PiBub2RlLm5hbWUgPT09IGZpbGUubmFtZSkpLFxuICAgICAgICAgIH0pO1xuICAgICAgICAgIHRoaXMuZGVzZWxlY3RBbGwoKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBjb25zdCByZXN1bHQgPSBhd2FpdCBkcml2ZVNlcnZpY2Uuc2hvd0RlbGV0ZU5vZGVzRGlhbG9nKG5vZGVzKTtcbiAgICAgICAgICBpZiAocmVzdWx0KSB7XG4gICAgICAgICAgICB0aGlzLmRlc2VsZWN0QWxsKCk7XG4gICAgICAgICAgICBhd2FpdCB0aGlzLnJlZnJlc2goKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH0sXG5cbiAgICAgIHRvZ2dsZVNlbGVjdChub2RlOiBBWE1Eb2N1bWVudEV4cGxvcmVyTm9kZSkge1xuICAgICAgICBpZiAoc3RvcmUuc2VsZWN0aW9uTW9kZSgpID09PSAnbXVsdGlwbGUnKSB7XG4gICAgICAgICAgcGF0Y2hTdGF0ZShzdG9yZSwge1xuICAgICAgICAgICAgc2VsZWN0ZWROb2Rlczogc3RvcmUuc2VsZWN0ZWROb2RlcygpLmluY2x1ZGVzKG5vZGUpXG4gICAgICAgICAgICAgID8gc3RvcmUuc2VsZWN0ZWROb2RlcygpLmZpbHRlcigobikgPT4gbi5pZCAhPT0gbm9kZS5pZClcbiAgICAgICAgICAgICAgOiBbLi4uc3RvcmUuc2VsZWN0ZWROb2RlcygpLCBub2RlXSxcbiAgICAgICAgICB9KTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBwYXRjaFN0YXRlKHN0b3JlLCB7IHNlbGVjdGVkTm9kZXM6IFtub2RlXSB9KTtcbiAgICAgICAgfVxuICAgICAgfSxcblxuICAgICAgaXNJdGVtU2VsZWN0ZWQobm9kZTogQVhNRG9jdW1lbnRFeHBsb3Jlck5vZGUpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHN0b3JlLnNlbGVjdGVkTm9kZXMoKS5zb21lKChzZWxlY3RlZE5vZGUpID0+IHNlbGVjdGVkTm9kZS5pZCA9PT0gbm9kZS5pZCk7XG4gICAgICB9LFxuXG4gICAgICBzZWxlY3RBbGwoKSB7XG4gICAgICAgIHBhdGNoU3RhdGUoc3RvcmUsIHsgc2VsZWN0ZWROb2RlczogWy4uLnN0b3JlLmZvbGRlcnMoKSwgLi4uc3RvcmUuZmlsZXMoKV0gfSk7XG4gICAgICB9LFxuXG4gICAgICBkZXNlbGVjdEFsbCgpIHtcbiAgICAgICAgcGF0Y2hTdGF0ZShzdG9yZSwgeyBzZWxlY3RlZE5vZGVzOiBbXSB9KTtcbiAgICAgIH0sXG5cbiAgICAgIG9wZW5EZXRhaWxQYW5lbCgpIHtcbiAgICAgICAgcGF0Y2hTdGF0ZShzdG9yZSwgeyBkZXRhaWxQYW5lbDogdHJ1ZSB9KTtcbiAgICAgIH0sXG5cbiAgICAgIGNsb3NlRGV0YWlsUGFuZWwoKSB7XG4gICAgICAgIHBhdGNoU3RhdGUoc3RvcmUsIHsgZGV0YWlsUGFuZWw6IGZhbHNlIH0pO1xuICAgICAgfSxcblxuICAgICAgdG9nZ2xlRGV0YWlsUGFuZWwoKSB7XG4gICAgICAgIHBhdGNoU3RhdGUoc3RvcmUsIHsgZGV0YWlsUGFuZWw6ICFzdG9yZS5kZXRhaWxQYW5lbCgpIH0pO1xuICAgICAgfSxcblxuICAgICAgLy8jcmVnaW9uIE1lbnUgSXRlbXNcblxuICAgICAgYXN5bmMgZ2V0Rm9sZGVyQWRkTWVudUl0ZW1zKCk6IFByb21pc2U8QVhQQWN0aW9uTWVudUl0ZW1bXT4ge1xuICAgICAgICBjb25zdCBzY29wZSA9IFJvb3RDb25maWcuY29uZmlnLmkxOG47XG5cbiAgICAgICAgcmV0dXJuIFtcbiAgICAgICAgICB7XG4gICAgICAgICAgICB0aXRsZTogYXdhaXQgdHJhbnNsYXRlU2VydmljZS50cmFuc2xhdGVBc3luYygnYWN0aW9ucy5jcmVhdGUtZm9sZGVyJywgeyBzY29wZSB9KSxcbiAgICAgICAgICAgIGljb246ICdmYS1saWdodCBmYS1mb2xkZXItcGx1cycsXG4gICAgICAgICAgICBicmVhazogdHJ1ZSxcbiAgICAgICAgICAgIGNvbW1hbmQ6IHtcbiAgICAgICAgICAgICAgbmFtZTogJ25ldy1mb2xkZXInLFxuICAgICAgICAgICAgICBvcHRpb25zOiB7XG4gICAgICAgICAgICAgICAgZm9sZGVySWQ6IHN0b3JlLmN1cnJlbnRGb2xkZXIoKT8uaWQsXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIH0sXG4gICAgICAgICAgLi4uKHN0b3JlLmN1cnJlbnRGb2xkZXIoKT8uZG9jdW1lbnRUeXBlcz8ubWFwKCh0eXBlKSA9PiAoe1xuICAgICAgICAgICAgdGl0bGU6IHR5cGUudGl0bGUsXG4gICAgICAgICAgICAvL2ljb246IHR5cGUuaWNvbixcbiAgICAgICAgICAgIGljb246ICdmYS1saWdodCBmYS1maWxlLWFycm93LXVwJyxcbiAgICAgICAgICAgIGJyZWFrOiB0cnVlLFxuICAgICAgICAgICAgY29tbWFuZDoge1xuICAgICAgICAgICAgICBuYW1lOiBgdXBsb2FkLiR7dHlwZS5uYW1lfWAsXG4gICAgICAgICAgICAgIG9wdGlvbnM6IHtcbiAgICAgICAgICAgICAgICBmb2xkZXJJZDogc3RvcmUuY3VycmVudEZvbGRlcigpPy5pZCxcbiAgICAgICAgICAgICAgICBkb2N1bWVudFR5cGU6IHR5cGUsXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIH0pKSA/PyBbXSksXG4gICAgICAgICAgLy8ge1xuICAgICAgICAgIC8vICAgdGl0bGU6IGF3YWl0IHRyYW5zbGF0ZVNlcnZpY2UudHJhbnNsYXRlQXN5bmMoJ2FjdGlvbnMub3Blbi1nYWxsZXJ5JywgeyBzY29wZSB9KSxcbiAgICAgICAgICAvLyAgIGljb246ICdmYS1saWdodCBmYS1pbWFnZXMnLFxuICAgICAgICAgIC8vICAgYnJlYWs6IHRydWUsXG4gICAgICAgICAgLy8gICBjb21tYW5kOiB7XG4gICAgICAgICAgLy8gICAgIG5hbWU6ICdvcGVuLWdhbGxlcnknLFxuICAgICAgICAgIC8vICAgICBvcHRpb25zOiB7XG4gICAgICAgICAgLy8gICAgICAgZm9sZGVySWQ6IHN0b3JlLmN1cnJlbnRGb2xkZXIoKT8uaWQsXG4gICAgICAgICAgLy8gICAgIH0sXG4gICAgICAgICAgLy8gICB9LFxuICAgICAgICAgIC8vIH0sXG4gICAgICAgIF07XG4gICAgICB9LFxuXG4gICAgICBhc3luYyBnZXRGb2xkZXJBY3Rpb25NZW51SXRlbXMoKTogUHJvbWlzZTxBWFBBY3Rpb25NZW51SXRlbVtdPiB7XG4gICAgICAgIHJldHVybiBbXG4gICAgICAgICAge1xuICAgICAgICAgICAgbmFtZTogJ3JlZnJlc2gnLFxuICAgICAgICAgICAgdGl0bGU6IGF3YWl0IHRyYW5zbGF0ZVNlcnZpY2UudHJhbnNsYXRlQXN5bmMoJ3JlZnJlc2gnKSxcbiAgICAgICAgICAgIGljb246ICdmYS1saWdodCBmYS1yb3RhdGUtcmlnaHQnLFxuICAgICAgICAgICAgLy8gYnJlYWs6IHRydWUsXG4gICAgICAgICAgfSxcbiAgICAgICAgICAvLyB7XG4gICAgICAgICAgLy8gICBuYW1lOiAnZGVsZXRlJyxcbiAgICAgICAgICAvLyAgIHRpdGxlOiBhd2FpdCB0cmFuc2xhdGVTZXJ2aWNlLnRyYW5zbGF0ZUFzeW5jKCdkZWxldGUnKSxcbiAgICAgICAgICAvLyAgIGNvbG9yOiAnZGFuZ2VyJyxcbiAgICAgICAgICAvLyAgIGljb246ICdmYS1saWdodCBmYS10cmFzaCcsXG4gICAgICAgICAgLy8gfSxcbiAgICAgICAgXTtcbiAgICAgIH0sXG5cbiAgICAgIC8vI2VuZHJlZ2lvblxuXG4gICAgICAvLyNyZWdpb24gQ29udGV4dCBNZW51IEl0ZW1zXG5cbiAgICAgIGFzeW5jIGdldENvbnRleHRNZW51SXRlbXMoKTogUHJvbWlzZTxBWFBBY3Rpb25NZW51SXRlbVtdPiB7XG4gICAgICAgIHJldHVybiBbLi4uKGF3YWl0IHRoaXMuZ2V0Rm9sZGVyQWRkTWVudUl0ZW1zKCkpLCAuLi4oYXdhaXQgdGhpcy5nZXRGb2xkZXJBY3Rpb25NZW51SXRlbXMoKSldO1xuICAgICAgfSxcblxuICAgICAgLy8jZW5kcmVnaW9uXG5cbiAgICAgIC8vI3JlZ2lvbiAtLS0tICAgTWVudSBJdGVtcyAgIC0tLS1cblxuICAgICAgLyoqXG4gICAgICAgKiBSZXR1cm5zIG1lbnUgaXRlbXMgZm9yIGZpbGUgY29udGV4dCBtZW51XG4gICAgICAgKi9cbiAgICAgIGFzeW5jIGdldEZpbGVDb250ZXh0TWVudUl0ZW1zKG5vZGU6IEFYTURvY3VtZW50RXhwbG9yZXJOb2RlKTogUHJvbWlzZTxBWE1lbnVJdGVtW10+IHtcbiAgICAgICAgY29uc3QgdHJhbnMgPSBhc3luYyAoa2V5OiBzdHJpbmcpID0+IGF3YWl0IHRyYW5zbGF0ZVNlcnZpY2UudHJhbnNsYXRlQXN5bmMoa2V5LCB7IHNjb3BlOiBSb290Q29uZmlnLmNvbmZpZy5pMThuIH0pO1xuICAgICAgICBjb25zdCBpc0xvY2tlZCA9IGFzeW5jICgpPT4gYXdhaXQgdGhpcy5pc0xvY2tlZChub2RlKTtcbiAgICAgICAgLy8gIGNvbnN0IGlzTm9kZUxvY2tlZCA9IGZhbHNlO1xuXG4gICAgICAgIGNvbnN0IG1lbnVJdGVtczogQVhNZW51SXRlbVtdID0gW1xuICAgICAgICAgIHtcbiAgICAgICAgICAgIG5hbWU6ICdvcGVuLWZpbGUnLFxuICAgICAgICAgICAgdGV4dDogYXdhaXQgdHJhbnMoJ21lbnUub3BlbicpLFxuICAgICAgICAgICAgaWNvbjogdGhpcy5nZXRGaWxlSW5mbyhub2RlLm5hbWUpLmljb24sXG4gICAgICAgICAgICBkYXRhOiBub2RlLFxuICAgICAgICAgIH0sXG4gICAgICAgICAge1xuICAgICAgICAgICAgbmFtZTogJ2Rvd25sb2FkJyxcbiAgICAgICAgICAgIHRleHQ6IGF3YWl0IHRyYW5zKCdtZW51LmRvd25sb2FkJyksXG4gICAgICAgICAgICBpY29uOiAnZmEtbGlnaHQgZmEtZG93bmxvYWQnLFxuICAgICAgICAgICAgZGF0YTogbm9kZSxcbiAgICAgICAgICB9LFxuICAgICAgICAgIHtcbiAgICAgICAgICAgIG5hbWU6ICdzaGFyZScsXG4gICAgICAgICAgICB0ZXh0OiBhd2FpdCB0cmFucygnbWVudS5zaGFyZS5zaGFyZScpLFxuICAgICAgICAgICAgaWNvbjogJ2ZhLWxpZ2h0IGZhLXNoYXJlLW5vZGVzJyxcbiAgICAgICAgICAgIGl0ZW1zOiBbXG4gICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBuYW1lOiAnc2hhcmUnLFxuICAgICAgICAgICAgICAgIHRleHQ6IGF3YWl0IHRyYW5zKCdtZW51LnNoYXJlLnNoYXJlJyksXG4gICAgICAgICAgICAgICAgaWNvbjogJ2ZhLWxpZ2h0IGZhLXVzZXJzJyxcbiAgICAgICAgICAgICAgICBkYXRhOiBub2RlLFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgbmFtZTogJ3NoYXJlLXdpdGgtZW1haWwnLFxuICAgICAgICAgICAgICAgIHRleHQ6IGF3YWl0IHRyYW5zKCdtZW51LnNoYXJlLmVtYWlsJyksXG4gICAgICAgICAgICAgICAgaWNvbjogJ2ZhLWxpZ2h0IGZhLWVudmVsb3BlJyxcbiAgICAgICAgICAgICAgICBkYXRhOiBub2RlLFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgbmFtZTogJ2xpbmsnLFxuICAgICAgICAgICAgICAgIHRleHQ6IGF3YWl0IHRyYW5zKCdtZW51LnNoYXJlLmxpbmsnKSxcbiAgICAgICAgICAgICAgICBpY29uOiAnZmEtbGlnaHQgZmEtbGluaycsXG4gICAgICAgICAgICAgICAgZGF0YTogbm9kZSxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIF0sXG4gICAgICAgICAgICBicmVhazogdHJ1ZSxcbiAgICAgICAgICB9LFxuICAgICAgICBdO1xuXG4gICAgICAgIC8vIEluZm9ybWF0aW9uIHN1Ym1lbnUgaXRlbXNcbiAgICAgICAgY29uc3QgaW5mb1N1Ykl0ZW1zOiBBWE1lbnVJdGVtW10gPSBbXG4gICAgICAgICAge1xuICAgICAgICAgICAgbmFtZTogJ3Byb3BlcnRpZXMnLFxuICAgICAgICAgICAgdGV4dDogYXdhaXQgdHJhbnMoJ21lbnUucHJvcGVydGllcycpLFxuICAgICAgICAgICAgaWNvbjogJ2ZhLWxpZ2h0IGZhLW1lbW8tY2lyY2xlLWluZm8nLFxuICAgICAgICAgICAgYnJlYWs6IHRydWUsXG4gICAgICAgICAgICBkYXRhOiBub2RlLFxuICAgICAgICAgIH0sXG4gICAgICAgIF07XG5cbiAgICAgICAgLy8gQWRkIHJlbmFtZSBvbmx5IGlmIG5vdCBsb2NrZWRcbiAgICAgICAgLy8gaWYgKCFpc05vZGVMb2NrZWQpIHtcbiAgICAgICAgLy8gICBpbmZvU3ViSXRlbXMudW5zaGlmdCh7XG4gICAgICAgIC8vICAgICBuYW1lOiAncmVuYW1lJyxcbiAgICAgICAgLy8gICAgIHRleHQ6IGF3YWl0IHRyYW5zKCdtZW51LnJlbmFtZScpLFxuICAgICAgICAvLyAgICAgaWNvbjogJ2ZhLWxpZ2h0IGZhLXBlbmNpbCcsXG4gICAgICAgIC8vICAgICBkYXRhOiBub2RlLFxuICAgICAgICAvLyAgIH0pO1xuICAgICAgICAvLyB9XG4gICAgICAgIFxuXG4gICAgICAgIC8vQWRkIGxvY2sgb3IgdW5sb2NrIGJhc2VkIG9uIGN1cnJlbnQgc3RhdGVcbiAgICAgICAvLyBpZiAoaXNOb2RlTG9ja2VkKSB7XG4gICAgICAgICAgaW5mb1N1Ykl0ZW1zLnB1c2goe1xuICAgICAgICAgICAgbmFtZTogJ3VubG9jaycsXG4gICAgICAgICAgICB0ZXh0OiBhd2FpdCB0cmFucygnbWVudS51bmxvY2snKSxcbiAgICAgICAgICAgIGljb246ICdmYS1saWdodCBmYS11bmxvY2snLFxuICAgICAgICAgICAgZGF0YTogbm9kZSxcbiAgICAgICAgICB9KTtcbiAgICAgIC8vICB9IGVsc2Uge1xuICAgICAgICAgIGluZm9TdWJJdGVtcy5wdXNoKHtcbiAgICAgICAgICAgIG5hbWU6ICdsb2NrJyxcbiAgICAgICAgICAgIHRleHQ6IGF3YWl0IHRyYW5zKCdtZW51LmxvY2snKSxcbiAgICAgICAgICAgIGljb246ICdmYS1saWdodCBmYS1sb2NrJyxcbiAgICAgICAgICAgIGRhdGE6IG5vZGUsXG4gICAgICAgICAgfSk7XG4gICAgIC8vICAgfVxuXG4gICAgICAgIG1lbnVJdGVtcy5wdXNoKHtcbiAgICAgICAgICBuYW1lOiAnZmlsZS1pbmZvJyxcbiAgICAgICAgICB0ZXh0OiBhd2FpdCB0cmFucygnbWVudS5pbmZvcm1hdGlvbicpLFxuICAgICAgICAgIGljb246ICdmYS1saWdodCBmYS1jaXJjbGUtaW5mbycsXG4gICAgICAgICAgaXRlbXM6IGluZm9TdWJJdGVtcyxcbiAgICAgICAgICBicmVhazogdHJ1ZSxcbiAgICAgICAgfSk7XG5cbiAgICAgICAgLy8gQWRkIGNvcHkvbW92ZS9kZWxldGUgb3BlcmF0aW9ucyBvbmx5IGlmIG5vdCBsb2NrZWRcbiAgICAgICAgICBtZW51SXRlbXMucHVzaChcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgbmFtZTogJ2NvcHknLFxuICAgICAgICAgICAgICB0ZXh0OiBhd2FpdCB0cmFucygnbWVudS5tYWtlLWNvcHknKSxcbiAgICAgICAgICAgICAgaWNvbjogJ2ZhLWxpZ2h0IGZhLWNvcHknLFxuICAgICAgICAgICAgICBkYXRhOiBub2RlLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgbmFtZTogJ2NvcHktdG8nLFxuICAgICAgICAgICAgICB0ZXh0OiBhd2FpdCB0cmFucygnbWVudS5jb3B5LXRvJyksXG4gICAgICAgICAgICAgIGljb246ICdmYS1saWdodCBmYS1jb3B5JyxcbiAgICAgICAgICAgICAgZGF0YTogbm9kZSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIG5hbWU6ICdtb3ZlLXRvJyxcbiAgICAgICAgICAgICAgdGV4dDogYXdhaXQgdHJhbnMoJ21lbnUubW92ZS10bycpLFxuICAgICAgICAgICAgICBpY29uOiAnZmEtbGlnaHQgZmEtYXJyb3ctcmlnaHQtYXJyb3ctbGVmdCcsXG4gICAgICAgICAgICAgIGJyZWFrOiB0cnVlLFxuICAgICAgICAgICAgICBkYXRhOiBub2RlLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgbmFtZTogJ2RlbGV0ZScsXG4gICAgICAgICAgICAgIHRleHQ6IGF3YWl0IHRyYW5zKCdtZW51LmRlbGV0ZScpLFxuICAgICAgICAgICAgICBpY29uOiAnZmEtbGlnaHQgZmEtdHJhc2gnLFxuICAgICAgICAgICAgICBkYXRhOiBub2RlLFxuICAgICAgICAgICAgfVxuICAgICAgICAgICk7XG5cbiAgICAgICAgcmV0dXJuIG1lbnVJdGVtcztcbiAgICAgIH0sXG5cbiAgICAgIC8qKlxuICAgICAgICogUmV0dXJucyBtZW51IGl0ZW1zIGZvciBmb2xkZXIgY29udGV4dCBtZW51XG4gICAgICAgKi9cbiAgICAgIGFzeW5jIGdldEZvbGRlckNvbnRleHRNZW51SXRlbXMobm9kZTogQVhNRG9jdW1lbnRFeHBsb3Jlck5vZGUpOiBQcm9taXNlPEFYTWVudUl0ZW1bXT4ge1xuICAgICAgICBjb25zdCB0cmFucyA9IGFzeW5jIChrZXk6IHN0cmluZykgPT4gYXdhaXQgdHJhbnNsYXRlU2VydmljZS50cmFuc2xhdGVBc3luYyhrZXksIHsgc2NvcGU6IFJvb3RDb25maWcuY29uZmlnLmkxOG4gfSk7XG4gICAgICAgLy8gY29uc3QgaXNOb2RlTG9ja2VkID0gYXdhaXQgdGhpcy5pc0xvY2tlZChub2RlKTtcbiAgICAgICAgY29uc3QgaXNOb2RlTG9ja2VkID0gZmFsc2U7XG5cbiAgICAgICAgY29uc3QgaXRlbXM6IEFYTWVudUl0ZW1bXSA9IFtcbiAgICAgICAgICB7XG4gICAgICAgICAgICBuYW1lOiAnb3Blbi1mb2xkZXInLFxuICAgICAgICAgICAgdGV4dDogYXdhaXQgdHJhbnMoJ21lbnUub3BlbicpLFxuICAgICAgICAgICAgaWNvbjogJ2ZhLWxpZ2h0IGZhLWZvbGRlci1vcGVuJyxcbiAgICAgICAgICAgIGRhdGE6IG5vZGUsXG4gICAgICAgICAgfVxuICAgICAgICBdO1xuXG4gICAgICAgIC8vIEFkZCB1cGxvYWQgbWVudSBvbmx5IGlmIG5vdCBsb2NrZWRcbiAgICAgICAgaWYgKCFpc05vZGVMb2NrZWQgJiYgbm9kZT8uZG9jdW1lbnRUeXBlcz8ubGVuZ3RoKSB7XG4gICAgICAgICAgaXRlbXMucHVzaCh7XG4gICAgICAgICAgICB0ZXh0OiBhd2FpdCB0cmFucygnbWVudS51cGxvYWQnKSxcbiAgICAgICAgICAgIGljb246ICdmYS1saWdodCBmYS1maWxlLWFycm93LXVwJyxcbiAgICAgICAgICAgIGJyZWFrOiB0cnVlLFxuICAgICAgICAgICAgaXRlbXM6IG5vZGUuZG9jdW1lbnRUeXBlcy5tYXAoKHR5cGUsIGluZGV4LCBhcnJheSkgPT4gKHtcbiAgICAgICAgICAgICAgbmFtZTogYHVwbG9hZC4ke3R5cGUubmFtZX1gLFxuICAgICAgICAgICAgICB0ZXh0OiB0eXBlLnRpdGxlLFxuICAgICAgICAgICAgICBpY29uOiAnZmEtbGlnaHQgZmEtZmlsZS1hcnJvdy11cCcsXG4gICAgICAgICAgICAgIGJyZWFrOiBpbmRleCAhPT0gYXJyYXkubGVuZ3RoIC0gMSxcbiAgICAgICAgICAgICAgZGF0YToge1xuICAgICAgICAgICAgICAgIG5vZGUsXG4gICAgICAgICAgICAgICAgZG9jdW1lbnRUeXBlOiB0eXBlLFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfSkpLFxuICAgICAgICAgIH0pO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gSW5mb3JtYXRpb24gc3VibWVudSBpdGVtc1xuICAgICAgICBjb25zdCBpbmZvU3ViSXRlbXM6IEFYTWVudUl0ZW1bXSA9IFtcbiAgICAgICAgICB7XG4gICAgICAgICAgICBuYW1lOiAncHJvcGVydGllcycsXG4gICAgICAgICAgICB0ZXh0OiBhd2FpdCB0cmFucygnbWVudS5wcm9wZXJ0aWVzJyksXG4gICAgICAgICAgICBpY29uOiAnZmEtbGlnaHQgZmEtbWVtby1jaXJjbGUtaW5mbycsXG4gICAgICAgICAgICBicmVhazogdHJ1ZSxcbiAgICAgICAgICAgIGRhdGE6IG5vZGUsXG4gICAgICAgICAgfSxcbiAgICAgICAgXTtcblxuICAgICAgICAvLyBBZGQgcmVuYW1lIG9ubHkgaWYgbm90IGxvY2tlZFxuICAgICAgICBpZiAoIWlzTm9kZUxvY2tlZCkge1xuICAgICAgICAgIGluZm9TdWJJdGVtcy51bnNoaWZ0KHtcbiAgICAgICAgICAgIG5hbWU6ICdyZW5hbWUnLFxuICAgICAgICAgICAgdGV4dDogYXdhaXQgdHJhbnMoJ21lbnUucmVuYW1lJyksXG4gICAgICAgICAgICBpY29uOiAnZmEtbGlnaHQgZmEtcGVuY2lsJyxcbiAgICAgICAgICAgIGRhdGE6IG5vZGUsXG4gICAgICAgICAgfSk7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBBZGQgbG9jayBvciB1bmxvY2sgYmFzZWQgb24gY3VycmVudCBzdGF0ZVxuICAgICAgICBpZiAoaXNOb2RlTG9ja2VkKSB7XG4gICAgICAgICAgaW5mb1N1Ykl0ZW1zLnB1c2goe1xuICAgICAgICAgICAgbmFtZTogJ3VubG9jaycsXG4gICAgICAgICAgICB0ZXh0OiBhd2FpdCB0cmFucygnbWVudS51bmxvY2snKSxcbiAgICAgICAgICAgIGljb246ICdmYS1saWdodCBmYS11bmxvY2snLFxuICAgICAgICAgICAgZGF0YTogbm9kZSxcbiAgICAgICAgICB9KTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBpbmZvU3ViSXRlbXMucHVzaCh7XG4gICAgICAgICAgICBuYW1lOiAnbG9jaycsXG4gICAgICAgICAgICB0ZXh0OiBhd2FpdCB0cmFucygnbWVudS5sb2NrJyksXG4gICAgICAgICAgICBpY29uOiAnZmEtbGlnaHQgZmEtbG9jaycsXG4gICAgICAgICAgICBkYXRhOiBub2RlLFxuICAgICAgICAgIH0pO1xuICAgICAgICB9XG5cbiAgICAgICAgaXRlbXMucHVzaCh7XG4gICAgICAgICAgbmFtZTogJ2ZvbGRlci1pbmZvJyxcbiAgICAgICAgICB0ZXh0OiBhd2FpdCB0cmFucygnbWVudS5pbmZvcm1hdGlvbicpLFxuICAgICAgICAgIGljb246ICdmYS1saWdodCBmYS1jaXJjbGUtaW5mbycsXG4gICAgICAgICAgaXRlbXM6IGluZm9TdWJJdGVtcyxcbiAgICAgICAgICBicmVhazogdHJ1ZSxcbiAgICAgICAgfSk7XG5cbiAgICAgICAgLy8gQWRkIGNvcHkvbW92ZS9kZWxldGUgb3BlcmF0aW9ucyBvbmx5IGlmIG5vdCBsb2NrZWRcbiAgICAgICAgaWYgKCFpc05vZGVMb2NrZWQpIHtcbiAgICAgICAgICBpdGVtcy5wdXNoKFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBuYW1lOiAnY29weScsXG4gICAgICAgICAgICAgIHRleHQ6IGF3YWl0IHRyYW5zKCdtZW51Lm1ha2UtY29weScpLFxuICAgICAgICAgICAgICBpY29uOiAnZmEtbGlnaHQgZmEtY29weScsXG4gICAgICAgICAgICAgIGRhdGE6IG5vZGUsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBuYW1lOiAnY29weS10bycsXG4gICAgICAgICAgICAgIHRleHQ6IGF3YWl0IHRyYW5zKCdtZW51LmNvcHktdG8nKSxcbiAgICAgICAgICAgICAgaWNvbjogJ2ZhLWxpZ2h0IGZhLWNvcHknLFxuICAgICAgICAgICAgICBkYXRhOiBub2RlLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgbmFtZTogJ21vdmUtdG8nLFxuICAgICAgICAgICAgICB0ZXh0OiBhd2FpdCB0cmFucygnbWVudS5tb3ZlLXRvJyksXG4gICAgICAgICAgICAgIGljb246ICdmYS1saWdodCBmYS1hcnJvdy1yaWdodC1hcnJvdy1sZWZ0JyxcbiAgICAgICAgICAgICAgYnJlYWs6IHRydWUsXG4gICAgICAgICAgICAgIGRhdGE6IG5vZGUsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBuYW1lOiAnZGVsZXRlJyxcbiAgICAgICAgICAgICAgdGV4dDogYXdhaXQgdHJhbnMoJ21lbnUuZGVsZXRlJyksXG4gICAgICAgICAgICAgIGljb246ICdmYS1saWdodCBmYS10cmFzaCcsXG4gICAgICAgICAgICAgIGRhdGE6IG5vZGUsXG4gICAgICAgICAgICB9XG4gICAgICAgICAgKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBpdGVtcztcbiAgICAgIH0sXG5cbiAgICAgIC8qKlxuICAgICAgICogUmV0dXJucyBjb250ZXh0IG1lbnUgaXRlbXMgYmFzZWQgb24gbm9kZSB0eXBlXG4gICAgICAgKi9cbiAgICAgIGFzeW5jIGdldE5vZGVDb250ZXh0TWVudUl0ZW1zKG5vZGU6IEFYTURvY3VtZW50RXhwbG9yZXJOb2RlKTogUHJvbWlzZTxBWE1lbnVJdGVtW10+IHtcbiAgICAgICAgaWYgKG5vZGUudHlwZSA9PT0gJ2ZpbGUnKSB7XG4gICAgICAgICAgcmV0dXJuIGF3YWl0IHRoaXMuZ2V0RmlsZUNvbnRleHRNZW51SXRlbXMobm9kZSk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgcmV0dXJuIGF3YWl0IHRoaXMuZ2V0Rm9sZGVyQ29udGV4dE1lbnVJdGVtcyhub2RlKTtcbiAgICAgICAgfVxuICAgICAgfSxcblxuICAgICAgLy8jZW5kcmVnaW9uXG5cbiAgICAgIC8vI3JlZ2lvbiAtLS0tICAgTWVudSBBY3Rpb25zICAgLS0tLVxuXG4gICAgICAvKipcbiAgICAgICAqIE9wZW5zIGEgZmlsZVxuICAgICAgICovXG4gICAgICBhc3luYyBvcGVuRmlsZShub2RlOiBBWE1Eb2N1bWVudEV4cGxvcmVyTm9kZSk6IFByb21pc2U8dm9pZD4ge1xuICAgICAgICBhd2FpdCBkcml2ZVNlcnZpY2Uub3BlbkZpbGUobm9kZSk7XG4gICAgICB9LFxuXG4gICAgICAvKipcbiAgICAgICAqIEhhbmRsZXMgYWxsIG1lbnUgaXRlbSBjbGlja3NcbiAgICAgICAqL1xuICAgICAgYXN5bmMgaGFuZGxlTWVudUl0ZW1DbGljayhuYW1lOiBzdHJpbmcsIGRhdGE6IGFueSk6IFByb21pc2U8dm9pZD4ge1xuICAgICAgICBjb25zdCBub2RlID0gZGF0YSBhcyBBWE1Eb2N1bWVudEV4cGxvcmVyTm9kZTtcbiAgICAgICAgc3dpdGNoIChuYW1lKSB7XG4gICAgICAgICAgY2FzZSAnb3Blbi1mb2xkZXInOlxuICAgICAgICAgICAgdGhpcy5uYXZpZ2F0ZVRvRm9sZGVyKG5vZGUuaWQpO1xuICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgY2FzZSAnb3Blbi1maWxlJzpcbiAgICAgICAgICAgIGF3YWl0IHRoaXMub3BlbkZpbGUobm9kZSk7XG4gICAgICAgICAgICBicmVhaztcbiAgICAgICAgICBjYXNlICdvcGVuLWdhbGxlcnknOlxuICAgICAgICAgICAgaWYgKGRhdGEuZm9sZGVySWQgIT0gbnVsbCkge1xuICAgICAgICAgICAgICBhd2FpdCB0aGlzLm9wZW5HYWxsZXJ5V2l0aEZvbGRlcklkKCk7XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICBhd2FpdCB0aGlzLm9wZW5HYWxsZXJ5KG5vZGUpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgY2FzZSAnZG93bmxvYWQnOlxuICAgICAgICAgICAgdGhpcy5kb3dubG9hZEZpbGUobm9kZSk7XG4gICAgICAgICAgICBicmVhaztcbiAgICAgICAgICBjYXNlICduZXctZm9sZGVyJzpcbiAgICAgICAgICAgIGF3YWl0IHRoaXMuY3JlYXRlRm9sZGVyKG5vZGUpO1xuICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgY2FzZSAncGFzdGUnOlxuICAgICAgICAgICAgLy9UT0RPOiBIYW5kbGUgcGFzdGUgb3BlcmF0aW9uXG4gICAgICAgICAgICBicmVhaztcbiAgICAgICAgICBjYXNlICdtb3ZlLXRvJzpcbiAgICAgICAgICAgIGF3YWl0IHRoaXMubW92ZVRvKG5vZGUpO1xuICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgY2FzZSAnY29weS10byc6XG4gICAgICAgICAgICBhd2FpdCB0aGlzLmNvcHlUbyhub2RlKTtcbiAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgIGNhc2UgJ3JlbmFtZSc6XG4gICAgICAgICAgICBhd2FpdCB0aGlzLnJlbmFtZU5vZGUobm9kZSk7XG4gICAgICAgICAgICBicmVhaztcbiAgICAgICAgICBjYXNlICdwcm9wZXJ0aWVzJzpcbiAgICAgICAgICAgIGF3YWl0IHRoaXMuc2hvd0ZvbGRlclByb3BlcnR5KG5vZGUpO1xuICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgY2FzZSAnZGVsZXRlJzpcbiAgICAgICAgICAgIGF3YWl0IHRoaXMuZGVsZXRlTm9kZXMoW25vZGVdKTtcbiAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgIGNhc2UgJ3JlZnJlc2gnOlxuICAgICAgICAgICAgYXdhaXQgdGhpcy5yZWZyZXNoKCk7XG4gICAgICAgICAgICBicmVhaztcbiAgICAgICAgICBjYXNlICdjb3B5JzpcbiAgICAgICAgICAgIGF3YWl0IHRoaXMubWFrZUNvcHkobm9kZSk7XG4gICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAvKlxuICAgICAgICAgIGNhc2UgJ3NoYXJlJzpcbiAgICAgICAgICAgIGF3YWl0IHRoaXMuc2hhcmUobm9kZSk7XG4gICAgICAgICAgICBicmVhaztcbiAgICAgICAgICBjYXNlICdzaGFyZS13aXRoLWVtYWlsJzpcbiAgICAgICAgICAgIGF3YWl0IHRoaXMuc2hhcmVXaXRoRW1haWwobm9kZSk7XG4gICAgICAgICAgICBicmVhaztcbiAgICAgICAgICBjYXNlICdsaW5rJzpcbiAgICAgICAgICAgIGF3YWl0IHRoaXMubGluayhub2RlKTtcbiAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICovXG4gICAgICAgICAgY2FzZSAnbG9jayc6XG4gICAgICAgICAgICBhd2FpdCB0aGlzLmxvY2sobm9kZSk7XG4gICAgICAgICAgICBicmVhaztcbiAgICAgICAgICBjYXNlICd1bmxvY2snOlxuICAgICAgICAgICAgYXdhaXQgdGhpcy51bmxvY2sobm9kZSk7XG4gICAgICAgICAgICBicmVhaztcbiAgICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgICAgaWYgKG5hbWU/LnN0YXJ0c1dpdGgoJ3VwbG9hZC4nKSkge1xuICAgICAgICAgICAgICBhd2FpdCB0aGlzLnVwbG9hZEZpbGVCeVR5cGUoXG4gICAgICAgICAgICAgICAgZGF0YS5ub2RlPy5pZCA/PyBzdG9yZS5jdXJyZW50Tm9kZSgpPy5pZCxcbiAgICAgICAgICAgICAgICBkYXRhLmRvY3VtZW50VHlwZS5pZFxuICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgICBhd2FpdCB0aGlzLnJlZnJlc2goKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICB9XG4gICAgICB9LFxuXG4gICAgICAvKipcbiAgICAgICAqIERvd25sb2FkcyB0aGUgc3BlY2lmaWVkIGZpbGVcbiAgICAgICAqL1xuICAgICAgZG93bmxvYWRGaWxlKG5vZGU6IEFYTURvY3VtZW50RXhwbG9yZXJOb2RlKTogdm9pZCB7XG4gICAgICAgIGRyaXZlU2VydmljZS5kb3dubG9hZEZpbGUobm9kZSk7XG4gICAgICB9LFxuXG4gICAgICAvKipcbiAgICAgICAqIE9wZW5zIHRoZSBnYWxsZXJ5IGZvciBhIGZvbGRlclxuICAgICAgICovXG4gICAgICBhc3luYyBvcGVuR2FsbGVyeShub2RlOiBBWE1Eb2N1bWVudEV4cGxvcmVyTm9kZSk6IFByb21pc2U8dm9pZD4ge1xuICAgICAgICBhd2FpdCBkcml2ZVNlcnZpY2Uuc2hvd0ZpbGVWaWV3ZXJQb3B1cChub2RlLCB7XG4gICAgICAgICAgZm9sZGVyVmlydHVhbEZpbGVzOiBzdG9yZS5maWxlcygpLFxuICAgICAgICAgIGluZGV4OiBzdG9yZS5maWxlcygpLmZpbmRJbmRleCgoZjogQVhNRG9jdW1lbnRFeHBsb3Jlck5vZGUpID0+IGYuaWQgPT09IG5vZGUuaWQpLFxuICAgICAgICB9KTtcbiAgICAgIH0sXG5cbiAgICAgIC8qKlxuICAgICAgICogU2hvd3MgcHJvcGVydGllcyBmb3IgYSBmb2xkZXJcbiAgICAgICAqL1xuICAgICAgYXN5bmMgc2hvd0ZvbGRlclByb3BlcnR5KG5vZGU6IEFYTURvY3VtZW50RXhwbG9yZXJOb2RlKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgICAgIGlmKG5vZGUudHlwZSA9PSAnZm9sZGVyJyl7XG4gICAgICAgICAgaWYgKGF3YWl0IGRyaXZlU2VydmljZS5zaG93Rm9sZGVyRWRpdERpYWxvZyhub2RlKSkge1xuICAgICAgICAgICAgYXdhaXQgdGhpcy5yZWZyZXNoKCk7XG4gICAgICAgICAgfVxuICAgICAgICB9ZWxzZXtcbiAgICAgICAgICBpZiAoYXdhaXQgZHJpdmVTZXJ2aWNlLnVwZGF0ZVVwbG9hZEZpbGVCeVR5cGUobm9kZSkpIHtcbiAgICAgICAgICAgIGF3YWl0IHRoaXMucmVmcmVzaCgpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfSxcblxuICAgICAgLyoqXG4gICAgICAgKiBDcmVhdGVzIGEgbmV3IGZvbGRlclxuICAgICAgICovXG4gICAgICBhc3luYyBjcmVhdGVGb2xkZXIobm9kZT86IEFYTURvY3VtZW50RXhwbG9yZXJOb2RlKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgICAgIGNvbnN0IHBhcmVudElkID0gbm9kZT8uaWQgPz8gc3RvcmUuY3VycmVudE5vZGUoKT8uaWQ7XG4gICAgICAgIGlmIChwYXJlbnRJZCkge1xuICAgICAgICAgIGNvbnN0IHJlc3VsdCA9IGF3YWl0IGRyaXZlU2VydmljZS5zaG93Q3JlYXRlRm9sZGVyRGlhbG9nKHBhcmVudElkKTtcbiAgICAgICAgICBpZiAocmVzdWx0KSB7XG4gICAgICAgICAgICBhd2FpdCB0aGlzLnJlZnJlc2goKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH0sXG5cbiAgICAgIC8qKlxuICAgICAgICogUmVuYW1lcyBhIG5vZGVcbiAgICAgICAqL1xuICAgICAgYXN5bmMgcmVuYW1lTm9kZShub2RlPzogQVhNRG9jdW1lbnRFeHBsb3Jlck5vZGUpOiBQcm9taXNlPEFYTURvY3VtZW50RXhwbG9yZXJOb2RlIHwgdW5kZWZpbmVkPiB7XG4gICAgICAgIGlmIChub2RlKSB7XG4gICAgICAgICAgY29uc3QgcmVzdWx0ID0gYXdhaXQgZHJpdmVTZXJ2aWNlLnNob3dSZW5hbWVQb3B1cChub2RlKTtcbiAgICAgICAgICBpZiAocmVzdWx0KSB7XG4gICAgICAgICAgICBpZiAobm9kZS5zdG9yYWdlVHlwZSA9PSAndmlydHVhbCcpIHtcbiAgICAgICAgICAgICAgY29uc3QgZmlsZXMgPSBzdG9yZS5maWxlcygpO1xuICAgICAgICAgICAgICBjb25zdCB1cGRhdGVkRmlsZXMgPSBmaWxlcy5tYXAoKGZpbGUpID0+IHtcbiAgICAgICAgICAgICAgICBpZiAoZmlsZS5pZCA9PT0gcmVzdWx0LmlkKSB7XG4gICAgICAgICAgICAgICAgICByZXR1cm4gcmVzdWx0O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICByZXR1cm4gZmlsZTtcbiAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgIHRoaXMudmlydHVhbEZvbGRlcih1cGRhdGVkRmlsZXMpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgYXdhaXQgdGhpcy5yZWZyZXNoKCk7XG4gICAgICAgICAgfVxuICAgICAgICAgIHJldHVybiByZXN1bHQ7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuO1xuICAgICAgfSxcblxuICAgICAgLyoqXG4gICAgICAgKiBNYWtlcyBhIGNvcHkgb2YgYSBub2RlXG4gICAgICAgKi9cbiAgICAgIGFzeW5jIG1ha2VDb3B5KG5vZGU/OiBBWE1Eb2N1bWVudEV4cGxvcmVyTm9kZSk6IFByb21pc2U8dm9pZD4ge1xuICAgICAgICBpZiAobm9kZSkge1xuICAgICAgICAgIHRyeSB7XG4gICAgICAgICAgICBhd2FpdCBkcml2ZVNlcnZpY2UuY29weShub2RlKTtcbiAgICAgICAgICAgIGF3YWl0IHRoaXMucmVmcmVzaCgpO1xuICAgICAgICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICAgICAgICBjb25zb2xlLmVycm9yKCdFcnJvciBjb3B5aW5nIG5vZGU6JywgZXJyb3IpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfSxcblxuICAgICAgLyoqXG4gICAgICAgKiBDaGVja3MgaWYgYSBub2RlIGlzIGxvY2tlZFxuICAgICAgICovXG4gICAgICBhc3luYyBpc0xvY2tlZChub2RlOiBBWE1Eb2N1bWVudEV4cGxvcmVyTm9kZSk6IFByb21pc2U8Ym9vbGVhbj4ge1xuICAgICAgICB0cnkge1xuICAgICAgICAgIHJldHVybiAgbG9ja1NlcnZpY2UuY2hlY2soe1xuICAgICAgICAgICAgcmVmSWQ6IG5vZGUuaWQsXG4gICAgICAgICAgICByZWZUeXBlOiBgJHtSb290Q29uZmlnLm1vZHVsZS5uYW1lfS4ke25vZGUudHlwZSA9PT0gJ2ZvbGRlcicgPyBSb290Q29uZmlnLmVudGl0aWVzLmZvbGRlci5uYW1lIDogUm9vdENvbmZpZy5lbnRpdGllcy5kb2N1bWVudC5uYW1lfWAsXG4gICAgICAgICAgfSk7XG4gICAgICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICAgICAgY29uc29sZS5lcnJvcignRXJyb3IgY2hlY2tpbmcgbG9jayBzdGF0dXM6JywgZXJyb3IpO1xuICAgICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgICAgfVxuICAgICAgfSxcblxuICAgICAgLyoqXG4gICAgICAgKiBMb2NrcyBhIG5vZGVcbiAgICAgICAqL1xuICAgICAgYXN5bmMgbG9jayhub2RlOiBBWE1Eb2N1bWVudEV4cGxvcmVyTm9kZSk6IFByb21pc2U8dm9pZD4ge1xuICAgICAgICBjb25zdCBsb2NrZWQgPSBhd2FpdCBkcml2ZVNlcnZpY2Uuc2hvd0xvY2tEaWFsb2cobm9kZSk7XG4gICAgICAgIGlmIChsb2NrZWQpIHtcbiAgICAgICAgICBhd2FpdCB0aGlzLnJlZnJlc2goKTtcbiAgICAgICAgfVxuICAgICAgfSxcblxuICAgICAgLyoqXG4gICAgICAgKiBVbmxvY2tzIGEgbm9kZVxuICAgICAgICovXG4gICAgICBhc3luYyB1bmxvY2sobm9kZTogQVhNRG9jdW1lbnRFeHBsb3Jlck5vZGUpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICAgICAgY29uc3QgdW5sb2NrZWQgPSBhd2FpdCBkcml2ZVNlcnZpY2Uuc2hvd1VubG9ja0RpYWxvZyhub2RlKTtcbiAgICAgICAgaWYgKHVubG9ja2VkKSB7XG4gICAgICAgICAgYXdhaXQgdGhpcy5yZWZyZXNoKCk7XG4gICAgICAgIH1cbiAgICAgIH0sXG5cbiAgICAgIC8qKlxuICAgICAgICogTW92ZXMgYSBub2RlIHRvIGEgZGlmZmVyZW50IGxvY2F0aW9uXG4gICAgICAgKi9cbiAgICAgIGFzeW5jIG1vdmVUbyhub2RlPzogQVhNRG9jdW1lbnRFeHBsb3Jlck5vZGUpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICAgICAgaWYgKG5vZGUpIHtcbiAgICAgICAgICBjb25zdCByZXN1bHQgPSBhd2FpdCBkcml2ZVNlcnZpY2UubW92ZVRvKHsgYnJvd3NlTW9kZTogJ2ZvbGRlcicsIG5vZGU6IG5vZGUsIHNjb3BlOiBzdG9yZS5zY29wZSgpIH0pO1xuICAgICAgICAgIGlmIChyZXN1bHQpIHtcbiAgICAgICAgICAgIGF3YWl0IHRoaXMucmVmcmVzaCgpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfSxcblxuICAgICAgLyoqXG4gICAgICAgKiBDb3BpZXMgYSBub2RlIHRvIGEgZGlmZmVyZW50IGxvY2F0aW9uXG4gICAgICAgKi9cbiAgICAgIGFzeW5jIGNvcHlUbyhub2RlPzogQVhNRG9jdW1lbnRFeHBsb3Jlck5vZGUpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICAgICAgaWYgKG5vZGUpIHtcbiAgICAgICAgICBjb25zdCByZXN1bHQgPSBhd2FpdCBkcml2ZVNlcnZpY2UuY29weVRvKHsgYnJvd3NlTW9kZTogJ2ZvbGRlcicsIG5vZGU6IG5vZGUsIHNjb3BlOiBzdG9yZS5zY29wZSgpIH0pO1xuICAgICAgICAgIGlmIChyZXN1bHQpIHtcbiAgICAgICAgICAgIGF3YWl0IHRoaXMucmVmcmVzaCgpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfSxcblxuICAgICAgLyoqXG4gICAgICAgKiBVcGxvYWRzIGEgZmlsZSBieSB0eXBlXG4gICAgICAgKi9cbiAgICAgIGFzeW5jIHVwbG9hZEZpbGVCeVR5cGUoZm9sZGVySWQ6IHN0cmluZywgZG9jdW1lbnRUeXBlSWQ6IHN0cmluZyk6IFByb21pc2U8dm9pZD4ge1xuICAgICAgICBhd2FpdCBkcml2ZVNlcnZpY2UudXBsb2FkRmlsZUJ5VHlwZShmb2xkZXJJZCwgZG9jdW1lbnRUeXBlSWQpO1xuICAgICAgICBhd2FpdCB0aGlzLnJlZnJlc2goKTtcbiAgICAgIH0sXG5cbiAgICAgIC8vI2VuZHJlZ2lvblxuICAgIH0pXG4gIClcbik7XG4iXX0=","import { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXLoadingModule } from '@acorex/components/loading';\nimport { AXMenuModule, } from '@acorex/components/menu';\nimport { AXDateTimeModule } from '@acorex/core/date-time';\nimport { AXFormatModule } from '@acorex/core/format';\nimport { AXTranslationService } from '@acorex/core/translation';\nimport { AXPLayoutThemeService } from '@acorex/platform/themes/shared';\nimport { CommonModule } from '@angular/common';\nimport { Component, effect, inject, input, signal, viewChild, ViewEncapsulation } from '@angular/core';\nimport { RouterModule } from '@angular/router';\nimport { get } from 'lodash-es';\nimport { AXMDocumentManagerService } from '../shared/document-manager.service';\nimport { AXPDocumentExplorerViewModel } from './document-explorer.viewmodel';\nimport * as i0 from \"@angular/core\";\nimport * as i1 from \"@angular/common\";\nimport * as i2 from \"@acorex/components/decorators\";\nimport * as i3 from \"@acorex/components/menu\";\nexport class AXMDocumentExplorerComponent {\n constructor() {\n this.vm = inject(AXPDocumentExplorerViewModel);\n this.contextMenu = viewChild('itemsContextMenu', ...(ngDevMode ? [{ debugName: \"contextMenu\" }] : []));\n this.rootContextMenu = viewChild('rootContextMenu', ...(ngDevMode ? [{ debugName: \"rootContextMenu\" }] : []));\n this.driveService = inject(AXMDocumentManagerService);\n this.translateService = inject(AXTranslationService);\n this.layout = inject(AXPLayoutThemeService);\n this.browseMode = input('file', ...(ngDevMode ? [{ debugName: \"browseMode\" }] : []));\n this.viewMode = input(...(ngDevMode ? [undefined, { debugName: \"viewMode\" }] : []));\n this.selectionMode = input('none', ...(ngDevMode ? [{ debugName: \"selectionMode\" }] : []));\n this.showContextMenu = input(true, ...(ngDevMode ? [{ debugName: \"showContextMenu\" }] : []));\n this.view = signal(null, ...(ngDevMode ? [{ debugName: \"view\" }] : []));\n this.viewMap = {\n list: async () => (await import('./views/list/list-view.component')).AXMDocumentExplorerListViewComponent,\n 'small-tiles': async () => (await import('./views/small-tiles/small-tiles-view.component')).AXMDocumentExplorerSmallTilesViewComponent,\n 'large-tiles': async () => (await import('./views/large-tiles/large-tiles-view.component')).AXMDocumentExplorerLargeTilesViewComponent,\n details: async () => (await import('./views/details/details-view.component')).AXMDocumentExplorerDetailsViewComponent,\n 'large-icons': async () => (await import('./views/large-icons/large-icons-view.component')).AXMDocumentExplorerLargeIconsViewComponent,\n 'small-icons': async () => (await import('./views/small-icons/small-icons-view.component')).AXMDocumentExplorerSmallIconsViewComponent,\n 'attachment': async () => (await import('./views/attachement-widget/attachment-widget.component')).AXMDocumentExplorerAttachmentComponent,\n };\n this.#effect = effect(() => {\n if (this.vm.loadingFolderId() == null) {\n setTimeout(() => {\n this.contextMenu()?.refresh();\n this.rootContextMenu()?.refresh();\n }, 300);\n }\n }, ...(ngDevMode ? [{ debugName: \"#effect\" }] : []));\n this.#effect2 = effect(() => {\n if (this.viewMode()) {\n this.vm.setViewMode(this.viewMode());\n }\n if (this.selectionMode()) {\n this.vm.setSelectionMode(this.selectionMode());\n }\n }, ...(ngDevMode ? [{ debugName: \"#effect2\" }] : []));\n this.#effect3 = effect(async () => {\n const func = get(this.viewMap, this.vm.viewMode()) ?? this.viewMap['large-tiles'];\n const comp = await func();\n this.view.set(comp);\n }, ...(ngDevMode ? [{ debugName: \"#effect3\" }] : []));\n }\n #effect;\n #effect2;\n #effect3;\n //#region Menu and Context Menu\n async handleContextMenuOnOpening(e) {\n const node = get(e.targetElement, '__data__');\n if (!node) {\n return;\n }\n // Get menu items from ViewModel\n const items = await this.vm.getNodeContextMenuItems(node);\n // Set items directly to the context menu\n e.items.push(...items);\n }\n async handleContextMenuRootOnOpening(e) {\n //TODO: check async translate method in acorex\n const items = [\n ...(await this.vm.getFolderAddMenuItems()).map((m) => ({\n ...m,\n name: m.command?.name,\n data: m.command?.options,\n })),\n ...(await this.vm.getFolderActionMenuItems()),\n ];\n const mappedItems = items.map((m) => ({\n ...m,\n text: m.title,\n }));\n e.items.push(...mappedItems);\n e.items[e.items.length - 1].break = false;\n }\n async handleContextMenuItemClick(e) {\n if (e.item.name) {\n await this.vm.handleMenuItemClick(e.item.name, e.item.data);\n }\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: AXMDocumentExplorerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }\n static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"17.0.0\", version: \"20.1.8\", type: AXMDocumentExplorerComponent, isStandalone: true, selector: \"axm-document-explorer\", inputs: { browseMode: { classPropertyName: \"browseMode\", publicName: \"browseMode\", isSignal: true, isRequired: false, transformFunction: null }, viewMode: { classPropertyName: \"viewMode\", publicName: \"viewMode\", isSignal: true, isRequired: false, transformFunction: null }, selectionMode: { classPropertyName: \"selectionMode\", publicName: \"selectionMode\", isSignal: true, isRequired: false, transformFunction: null }, showContextMenu: { classPropertyName: \"showContextMenu\", publicName: \"showContextMenu\", isSignal: true, isRequired: false, transformFunction: null } }, viewQueries: [{ propertyName: \"contextMenu\", first: true, predicate: [\"itemsContextMenu\"], descendants: true, isSignal: true }, { propertyName: \"rootContextMenu\", first: true, predicate: [\"rootContextMenu\"], descendants: true, isSignal: true }], ngImport: i0, template: \"<!-- Empty State -->\\n<div class=\\\"view-container\\\">\\n @if (vm.folders().length === 0 && vm.files().length === 0) {\\n <div class=\\\"ax-flex ax-flex-col ax-items-center ax-justify-center ax-py-16 ax-h-full\\\">\\n <ax-icon icon=\\\"fa-light fa-folder-open\\\" class=\\\"ax-text-6xl ax-mb-4\\\"></ax-icon>\\n <h3 class=\\\"ax-text-xl ax-font-medium ax-mb-2\\\">No Items Found</h3>\\n <p class=\\\"\\\">This folder is empty. Add some files or folders to get started.</p>\\n </div>\\n } @else {\\n <ng-container [ngComponentOutlet]=\\\"view()\\\"></ng-container>\\n }\\n</div>\\n\\n<!-- Context Menu -->\\n@if (showContextMenu()) {\\n<!-- Item Context Menu-->\\n<ax-context-menu\\n #itemsContextMenu\\n [target]=\\\"'.__explorer-item'\\\"\\n [orientation]=\\\"'vertical'\\\"\\n [closeOn]=\\\"'leave'\\\"\\n (onItemClick)=\\\"handleContextMenuItemClick($event)\\\"\\n (onOpening)=\\\"handleContextMenuOnOpening($event)\\\"\\n>\\n</ax-context-menu>\\n<!-- Root Context Menu-->\\n<ax-context-menu\\n #rootContextMenu\\n [target]=\\\"'.view-container'\\\"\\n [orientation]=\\\"'vertical'\\\"\\n [closeOn]=\\\"'leave'\\\"\\n (onItemClick)=\\\"handleContextMenuItemClick($event)\\\"\\n (onOpening)=\\\"handleContextMenuRootOnOpening($event)\\\"\\n>\\n</ax-context-menu>\\n}\\n\", styles: [\"axm-document-explorer{display:flex;height:max-content;min-height:100%;width:100%;flex-direction:row;gap:1rem}axm-document-explorer>.view-container{display:flex;flex:1 1 0%;-webkit-user-select:none;-moz-user-select:-moz-none;user-select:none;flex-direction:column;gap:1rem}axm-document-explorer .animation-duration-2s{--fa-animation-duration: 2s}\\n\"], dependencies: [{ kind: \"ngmodule\", type: CommonModule }, { kind: \"directive\", type: i1.NgComponentOutlet, selector: \"[ngComponentOutlet]\", inputs: [\"ngComponentOutlet\", \"ngComponentOutletInputs\", \"ngComponentOutletInjector\", \"ngComponentOutletEnvironmentInjector\", \"ngComponentOutletContent\", \"ngComponentOutletNgModule\", \"ngComponentOutletNgModuleFactory\"], exportAs: [\"ngComponentOutlet\"] }, { kind: \"ngmodule\", type: RouterModule }, { kind: \"ngmodule\", type: AXDecoratorModule }, { kind: \"component\", type: i2.AXDecoratorIconComponent, selector: \"ax-icon\", inputs: [\"icon\"] }, { kind: \"ngmodule\", type: AXLoadingModule }, { kind: \"ngmodule\", type: AXFormatModule }, { kind: \"ngmodule\", type: AXDateTimeModule }, { kind: \"ngmodule\", type: AXMenuModule }, { kind: \"component\", type: i3.AXContextMenuComponent, selector: \"ax-context-menu\", inputs: [\"orientation\", \"openOn\", \"closeOn\", \"items\", \"target\"], outputs: [\"onItemClick\", \"onOpening\"] }], encapsulation: i0.ViewEncapsulation.None }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: AXMDocumentExplorerComponent, decorators: [{\n type: Component,\n args: [{ selector: 'axm-document-explorer', standalone: true, encapsulation: ViewEncapsulation.None, imports: [\n CommonModule,\n RouterModule,\n AXDecoratorModule,\n AXLoadingModule,\n AXFormatModule,\n AXDateTimeModule,\n AXMenuModule,\n ], template: \"<!-- Empty State -->\\n<div class=\\\"view-container\\\">\\n @if (vm.folders().length === 0 && vm.files().length === 0) {\\n <div class=\\\"ax-flex ax-flex-col ax-items-center ax-justify-center ax-py-16 ax-h-full\\\">\\n <ax-icon icon=\\\"fa-light fa-folder-open\\\" class=\\\"ax-text-6xl ax-mb-4\\\"></ax-icon>\\n <h3 class=\\\"ax-text-xl ax-font-medium ax-mb-2\\\">No Items Found</h3>\\n <p class=\\\"\\\">This folder is empty. Add some files or folders to get started.</p>\\n </div>\\n } @else {\\n <ng-container [ngComponentOutlet]=\\\"view()\\\"></ng-container>\\n }\\n</div>\\n\\n<!-- Context Menu -->\\n@if (showContextMenu()) {\\n<!-- Item Context Menu-->\\n<ax-context-menu\\n #itemsContextMenu\\n [target]=\\\"'.__explorer-item'\\\"\\n [orientation]=\\\"'vertical'\\\"\\n [closeOn]=\\\"'leave'\\\"\\n (onItemClick)=\\\"handleContextMenuItemClick($event)\\\"\\n (onOpening)=\\\"handleContextMenuOnOpening($event)\\\"\\n>\\n</ax-context-menu>\\n<!-- Root Context Menu-->\\n<ax-context-menu\\n #rootContextMenu\\n [target]=\\\"'.view-container'\\\"\\n [orientation]=\\\"'vertical'\\\"\\n [closeOn]=\\\"'leave'\\\"\\n (onItemClick)=\\\"handleContextMenuItemClick($event)\\\"\\n (onOpening)=\\\"handleContextMenuRootOnOpening($event)\\\"\\n>\\n</ax-context-menu>\\n}\\n\", styles: [\"axm-document-explorer{display:flex;height:max-content;min-height:100%;width:100%;flex-direction:row;gap:1rem}axm-document-explorer>.view-container{display:flex;flex:1 1 0%;-webkit-user-select:none;-moz-user-select:-moz-none;user-select:none;flex-direction:column;gap:1rem}axm-document-explorer .animation-duration-2s{--fa-animation-duration: 2s}\\n\"] }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG9jdW1lbnQtZXhwbG9yZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tb2R1bGVzL2RvY3VtZW50LW1hbmFnZW1lbnQvc3JjL2xpYi9mZWF0dXJlcy9kb2N1bWVudC1leHBsb3Jlci9kb2N1bWVudC1leHBsb3Jlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL21vZHVsZXMvZG9jdW1lbnQtbWFuYWdlbWVudC9zcmMvbGliL2ZlYXR1cmVzL2RvY3VtZW50LWV4cGxvcmVyL2RvY3VtZW50LWV4cGxvcmVyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQ2xFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUM3RCxPQUFPLEVBS0wsWUFBWSxHQUNiLE1BQU0seUJBQXlCLENBQUM7QUFDakMsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDMUQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3JELE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBRWhFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQ3ZFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBUSxTQUFTLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDN0csT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxHQUFHLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFDaEMs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WTtxQkFDYiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFYRGVjb3JhdG9yTW9kdWxlIH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL2RlY29yYXRvcnMnO1xuaW1wb3J0IHsgQVhMb2FkaW5nTW9kdWxlIH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL2xvYWRpbmcnO1xuaW1wb3J0IHtcbiAgQVhDb250ZXh0TWVudUNvbXBvbmVudCxcbiAgQVhDb250ZXh0TWVudUl0ZW1zQ2xpY2tFdmVudCxcbiAgQVhDb250ZXh0TWVudU9wZW5pbmdFdmVudCxcbiAgQVhNZW51SXRlbSxcbiAgQVhNZW51TW9kdWxlLFxufSBmcm9tICdAYWNvcmV4L2NvbXBvbmVudHMvbWVudSc7XG5pbXBvcnQgeyBBWERhdGVUaW1lTW9kdWxlIH0gZnJvbSAnQGFjb3JleC9jb3JlL2RhdGUtdGltZSc7XG5pbXBvcnQgeyBBWEZvcm1hdE1vZHVsZSB9IGZyb20gJ0BhY29yZXgvY29yZS9mb3JtYXQnO1xuaW1wb3J0IHsgQVhUcmFuc2xhdGlvblNlcnZpY2UgfSBmcm9tICdAYWNvcmV4L2NvcmUvdHJhbnNsYXRpb24nO1xuaW1wb3J0IHsgQVhQUGxhdGZvcm1TY29wZSB9IGZyb20gJ0BhY29yZXgvcGxhdGZvcm0vY29yZSc7XG5pbXBvcnQgeyBBWFBMYXlvdXRUaGVtZVNlcnZpY2UgfSBmcm9tICdAYWNvcmV4L3BsYXRmb3JtL3RoZW1lcy9zaGFyZWQnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IENvbXBvbmVudCwgZWZmZWN0LCBpbmplY3QsIGlucHV0LCBzaWduYWwsIFR5cGUsIHZpZXdDaGlsZCwgVmlld0VuY2Fwc3VsYXRpb24gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFJvdXRlck1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQgeyBnZXQgfSBmcm9tICdsb2Rhc2gtZXMnO1xuaW1wb3J0IHsgQVhNRG9jdW1lbnRNYW5hZ2VyU2VydmljZSB9IGZyb20gJy4uL3NoYXJlZC9kb2N1bWVudC1tYW5hZ2VyLnNlcnZpY2UnO1xuaW1wb3J0IHtcbiAgQVhNRG9jdW1lbnRFeHBsb3JlckJyb3dzZU1vZGUsXG4gIEFYTURvY3VtZW50RXhwbG9yZXJOb2RlLFxuICBBWE1Eb2N1bWVudFNlbGVjdGlvbk1vZGUsXG4gIEFYUERvY3VtZW50RXhwbG9yZXJWaWV3TW9kZSxcbn0gZnJvbSAnLi4vc2hhcmVkL2RvY3VtZW50LW1hbmFnZXIudHlwZXMnO1xuaW1wb3J0IHsgQVhQRG9jdW1lbnRFeHBsb3JlclZpZXdNb2RlbCB9IGZyb20gJy4vZG9jdW1lbnQtZXhwbG9yZXIudmlld21vZGVsJztcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2F4bS1kb2N1bWVudC1leHBsb3JlcicsXG4gIHRlbXBsYXRlVXJsOiAnLi9kb2N1bWVudC1leHBsb3Jlci5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2RvY3VtZW50LWV4cGxvcmVyLmNvbXBvbmVudC5zY3NzJ10sXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gIGltcG9ydHM6IFtcbiAgICBDb21tb25Nb2R1bGUsXG4gICAgUm91dGVyTW9kdWxlLFxuICAgIEFYRGVjb3JhdG9yTW9kdWxlLFxuICAgIEFYTG9hZGluZ01vZHVsZSxcbiAgICBBWEZvcm1hdE1vZHVsZSxcbiAgICBBWERhdGVUaW1lTW9kdWxlLFxuICAgIEFYTWVudU1vZHVsZSxcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgQVhNRG9jdW1lbnRFeHBsb3JlckNvbXBvbmVudCB7XG4gIHByb3RlY3RlZCB2bSA9IGluamVjdChBWFBEb2N1bWVudEV4cGxvcmVyVmlld01vZGVsKTtcbiAgcHJvdGVjdGVkIGNvbnRleHRNZW51ID0gdmlld0NoaWxkPEFYQ29udGV4dE1lbnVDb21wb25lbnQ+KCdpdGVtc0NvbnRleHRNZW51Jyk7XG4gIHByb3RlY3RlZCByb290Q29udGV4dE1lbnUgPSB2aWV3Q2hpbGQ8QVhDb250ZXh0TWVudUNvbXBvbmVudD4oJ3Jvb3RDb250ZXh0TWVudScpO1xuICBwcm90ZWN0ZWQgZHJpdmVTZXJ2aWNlID0gaW5qZWN0KEFYTURvY3VtZW50TWFuYWdlclNlcnZpY2UpO1xuICBwcm90ZWN0ZWQgdHJhbnNsYXRlU2VydmljZSA9IGluamVjdChBWFRyYW5zbGF0aW9uU2VydmljZSk7XG4gIHByb3RlY3RlZCByZWFkb25seSBsYXlvdXQgPSBpbmplY3QoQVhQTGF5b3V0VGhlbWVTZXJ2aWNlKTtcblxuICBicm93c2VNb2RlID0gaW5wdXQ8QVhNRG9jdW1lbnRFeHBsb3JlckJyb3dzZU1vZGU+KCdmaWxlJyk7XG4gIHZpZXdNb2RlID0gaW5wdXQ8QVhQRG9jdW1lbnRFeHBsb3JlclZpZXdNb2RlPigpO1xuICBzZWxlY3Rpb25Nb2RlID0gaW5wdXQ8QVhNRG9jdW1lbnRTZWxlY3Rpb25Nb2RlPignbm9uZScpO1xuICBzaG93Q29udGV4dE1lbnUgPSBpbnB1dDxib29sZWFuPih0cnVlKTtcblxuICBwcm90ZWN0ZWQgdmlldyA9IHNpZ25hbDxUeXBlPGFueT4gfCBudWxsPihudWxsKTtcblxuICBwcml2YXRlIHZpZXdNYXAgPSB7XG4gICAgbGlzdDogYXN5bmMgKCkgPT4gKGF3YWl0IGltcG9ydCgnLi92aWV3cy9saXN0L2xpc3Qtdmlldy5jb21wb25lbnQnKSkuQVhNRG9jdW1lbnRFeHBsb3Jlckxpc3RWaWV3Q29tcG9uZW50LFxuICAgICdzbWFsbC10aWxlcyc6IGFzeW5jICgpID0+XG4gICAgICAoYXdhaXQgaW1wb3J0KCcuL3ZpZXdzL3NtYWxsLXRpbGVzL3NtYWxsLXRpbGVzLXZpZXcuY29tcG9uZW50JykpLkFYTURvY3VtZW50RXhwbG9yZXJTbWFsbFRpbGVzVmlld0NvbXBvbmVudCxcbiAgICAnbGFyZ2UtdGlsZXMnOiBhc3luYyAoKSA9PlxuICAgICAgKGF3YWl0IGltcG9ydCgnLi92aWV3cy9sYXJnZS10aWxlcy9sYXJnZS10aWxlcy12aWV3LmNvbXBvbmVudCcpKS5BWE1Eb2N1bWVudEV4cGxvcmVyTGFyZ2VUaWxlc1ZpZXdDb21wb25lbnQsXG4gICAgZGV0YWlsczogYXN5bmMgKCkgPT5cbiAgICAgIChhd2FpdCBpbXBvcnQoJy4vdmlld3MvZGV0YWlscy9kZXRhaWxzLXZpZXcuY29tcG9uZW50JykpLkFYTURvY3VtZW50RXhwbG9yZXJEZXRhaWxzVmlld0NvbXBvbmVudCxcbiAgICAnbGFyZ2UtaWNvbnMnOiBhc3luYyAoKSA9PlxuICAgICAgKGF3YWl0IGltcG9ydCgnLi92aWV3cy9sYXJnZS1pY29ucy9sYXJnZS1pY29ucy12aWV3LmNvbXBvbmVudCcpKS5BWE1Eb2N1bWVudEV4cGxvcmVyTGFyZ2VJY29uc1ZpZXdDb21wb25lbnQsXG4gICAgJ3NtYWxsLWljb25zJzogYXN5bmMgKCkgPT5cbiAgICAgIChhd2FpdCBpbXBvcnQoJy4vdmlld3Mvc21hbGwtaWNvbnMvc21hbGwtaWNvbnMtdmlldy5jb21wb25lbnQnKSkuQVhNRG9jdW1lbnRFeHBsb3JlclNtYWxsSWNvbnNWaWV3Q29tcG9uZW50LFxuICAgICdhdHRhY2htZW50JzogYXN5bmMgKCkgPT5cbiAgICAgIChhd2FpdCBpbXBvcnQoJy4vdmlld3MvYXR0YWNoZW1lbnQtd2lkZ2V0L2F0dGFjaG1lbnQtd2lkZ2V0LmNvbXBvbmVudCcpKS5BWE1Eb2N1bWVudEV4cGxvcmVyQXR0YWNobWVudENvbXBvbmVudCxcbiAgfTtcblxuICAjZWZmZWN0ID0gZWZmZWN0KCgpID0+IHtcbiAgICBpZiAodGhpcy52bS5sb2FkaW5nRm9sZGVySWQoKSA9PSBudWxsKSB7XG4gICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgdGhpcy5jb250ZXh0TWVudSgpPy5yZWZyZXNoKCk7XG4gICAgICAgIHRoaXMucm9vdENvbnRleHRNZW51KCk/LnJlZnJlc2goKTtcbiAgICAgIH0sIDMwMCk7XG4gICAgfVxuICB9KTtcblxuICAjZWZmZWN0MiA9IGVmZmVjdCgoKSA9PiB7XG4gICAgaWYgKHRoaXMudmlld01vZGUoKSkge1xuICAgICAgdGhpcy52bS5zZXRWaWV3TW9kZSh0aGlzLnZpZXdNb2RlKCkhKTtcbiAgICB9XG4gICAgaWYgKHRoaXMuc2VsZWN0aW9uTW9kZSgpKSB7XG4gICAgICB0aGlzLnZtLnNldFNlbGVjdGlvbk1vZGUodGhpcy5zZWxlY3Rpb25Nb2RlKCkhKTtcbiAgICB9XG4gIH0pO1xuXG4gICNlZmZlY3QzID0gZWZmZWN0KGFzeW5jICgpID0+IHtcbiAgICBjb25zdCBmdW5jID0gZ2V0KHRoaXMudmlld01hcCwgdGhpcy52bS52aWV3TW9kZSgpIGFzIHN0cmluZykgPz8gdGhpcy52aWV3TWFwWydsYXJnZS10aWxlcyddO1xuICAgIGNvbnN0IGNvbXAgPSBhd2FpdCBmdW5jKCk7XG4gICAgdGhpcy52aWV3LnNldChjb21wKTtcbiAgfSk7XG5cbiAgLy8jcmVnaW9uIE1lbnUgYW5kIENvbnRleHQgTWVudVxuXG4gIHByb3RlY3RlZCBhc3luYyBoYW5kbGVDb250ZXh0TWVudU9uT3BlbmluZyhlOiBBWENvbnRleHRNZW51T3BlbmluZ0V2ZW50KSB7XG4gICAgY29uc3Qgbm9kZSA9IGdldChlLnRhcmdldEVsZW1lbnQsICdfX2RhdGFfXycpIGFzIGFueSBhcyBBWE1Eb2N1bWVudEV4cGxvcmVyTm9kZTtcbiAgICBpZiAoIW5vZGUpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICAvLyBHZXQgbWVudSBpdGVtcyBmcm9tIFZpZXdNb2RlbFxuICAgIGNvbnN0IGl0ZW1zID0gYXdhaXQgdGhpcy52bS5nZXROb2RlQ29udGV4dE1lbnVJdGVtcyhub2RlKTtcbiAgICBcbiAgICAvLyBTZXQgaXRlbXMgZGlyZWN0bHkgdG8gdGhlIGNvbnRleHQgbWVudVxuICAgIGUuaXRlbXMucHVzaCguLi5pdGVtcyk7XG4gIH1cblxuICBwcm90ZWN0ZWQgYXN5bmMgaGFuZGxlQ29udGV4dE1lbnVSb290T25PcGVuaW5nKGU6IEFYQ29udGV4dE1lbnVPcGVuaW5nRXZlbnQpIHtcbiAgICAvL1RPRE86IGNoZWNrIGFzeW5jIHRyYW5zbGF0ZSBtZXRob2QgaW4gYWNvcmV4XG4gICAgY29uc3QgaXRlbXMgPSBbXG4gICAgICAuLi4oYXdhaXQgdGhpcy52bS5nZXRGb2xkZXJBZGRNZW51SXRlbXMoKSkubWFwKChtKSA9PiAoe1xuICAgICAgICAuLi5tLFxuICAgICAgICBuYW1lOiBtLmNvbW1hbmQ/Lm5hbWUsXG4gICAgICAgIGRhdGE6IG0uY29tbWFuZD8ub3B0aW9ucyxcbiAgICAgIH0pKSxcbiAgICAgIC4uLihhd2FpdCB0aGlzLnZtLmdldEZvbGRlckFjdGlvbk1lbnVJdGVtcygpKSxcbiAgICBdO1xuICAgIGNvbnN0IG1hcHBlZEl0ZW1zID0gaXRlbXMubWFwKChtKSA9PiAoe1xuICAgICAgLi4ubSxcbiAgICAgIHRleHQ6IG0udGl0bGUsXG4gICAgfSkpIGFzIEFYTWVudUl0ZW1bXTtcbiAgICBlLml0ZW1zLnB1c2goLi4ubWFwcGVkSXRlbXMpO1xuXG4gICAgZS5pdGVtc1tlLml0ZW1zLmxlbmd0aCAtIDFdLmJyZWFrID0gZmFsc2U7XG4gIH1cblxuICBwcm90ZWN0ZWQgYXN5bmMgaGFuZGxlQ29udGV4dE1lbnVJdGVtQ2xpY2soZTogQVhDb250ZXh0TWVudUl0ZW1zQ2xpY2tFdmVudCkge1xuICAgIGlmIChlLml0ZW0ubmFtZSkge1xuICAgICAgYXdhaXQgdGhpcy52bS5oYW5kbGVNZW51SXRlbUNsaWNrKGUuaXRlbS5uYW1lLCBlLml0ZW0uZGF0YSk7XG4gICAgfVxuICB9XG5cbiAgLy8jZW5kcmVnaW9uXG5cbiAgLy8g2KrZhdin2YUg2YXYqtiv2YfYp9uMINiy24zYsSDYqNmHIFZpZXdNb2RlbCDZhdmG2KrZgtmEINi02K/Zh+KAjNin2YbYryDZiCDYr9uM2q/YsSDZhdmI2LHYryDZhtuM2KfYsiDZhtuM2LPYqtmG2K9cblxufVxuIiwiPCEtLSBFbXB0eSBTdGF0ZSAtLT5cbjxkaXYgY2xhc3M9XCJ2aWV3LWNvbnRhaW5lclwiPlxuICBAaWYgKHZtLmZvbGRlcnMoKS5sZW5ndGggPT09IDAgJiYgdm0uZmlsZXMoKS5sZW5ndGggPT09IDApIHtcbiAgPGRpdiBjbGFzcz1cImF4LWZsZXggYXgtZmxleC1jb2wgYXgtaXRlbXMtY2VudGVyIGF4LWp1c3RpZnktY2VudGVyIGF4LXB5LTE2IGF4LWgtZnVsbFwiPlxuICAgIDxheC1pY29uIGljb249XCJmYS1saWdodCBmYS1mb2xkZXItb3BlblwiIGNsYXNzPVwiYXgtdGV4dC02eGwgYXgtbWItNFwiPjwvYXgtaWNvbj5cbiAgICA8aDMgY2xhc3M9XCJheC10ZXh0LXhsIGF4LWZvbnQtbWVkaXVtIGF4LW1iLTJcIj5ObyBJdGVtcyBGb3VuZDwvaDM+XG4gICAgPHAgY2xhc3M9XCJcIj5UaGlzIGZvbGRlciBpcyBlbXB0eS4gQWRkIHNvbWUgZmlsZXMgb3IgZm9sZGVycyB0byBnZXQgc3RhcnRlZC48L3A+XG4gIDwvZGl2PlxuICB9IEBlbHNlIHtcbiAgPG5nLWNvbnRhaW5lciBbbmdDb21wb25lbnRPdXRsZXRdPVwidmlldygpXCI+PC9uZy1jb250YWluZXI+XG4gIH1cbjwvZGl2PlxuXG48IS0tIENvbnRleHQgTWVudSAtLT5cbkBpZiAoc2hvd0NvbnRleHRNZW51KCkpIHtcbjwhLS0gSXRlbSBDb250ZXh0IE1lbnUtLT5cbjxheC1jb250ZXh0LW1lbnVcbiAgI2l0ZW1zQ29udGV4dE1lbnVcbiAgW3RhcmdldF09XCInLl9fZXhwbG9yZXItaXRlbSdcIlxuICBbb3JpZW50YXRpb25dPVwiJ3ZlcnRpY2FsJ1wiXG4gIFtjbG9zZU9uXT1cIidsZWF2ZSdcIlxuICAob25JdGVtQ2xpY2spPVwiaGFuZGxlQ29udGV4dE1lbnVJdGVtQ2xpY2soJGV2ZW50KVwiXG4gIChvbk9wZW5pbmcpPVwiaGFuZGxlQ29udGV4dE1lbnVPbk9wZW5pbmcoJGV2ZW50KVwiXG4+XG48L2F4LWNvbnRleHQtbWVudT5cbjwhLS0gUm9vdCBDb250ZXh0IE1lbnUtLT5cbjxheC1jb250ZXh0LW1lbnVcbiAgI3Jvb3RDb250ZXh0TWVudVxuICBbdGFyZ2V0XT1cIicudmlldy1jb250YWluZXInXCJcbiAgW29yaWVudGF0aW9uXT1cIid2ZXJ0aWNhbCdcIlxuICBbY2xvc2VPbl09XCInbGVhdmUnXCJcbiAgKG9uSXRlbUNsaWNrKT1cImhhbmRsZUNvbnRleHRNZW51SXRlbUNsaWNrKCRldmVudClcIlxuICAob25PcGVuaW5nKT1cImhhbmRsZUNvbnRleHRNZW51Um9vdE9uT3BlbmluZygkZXZlbnQpXCJcbj5cbjwvYXgtY29udGV4dC1tZW51PlxufVxuIl19","import { AXButtonModule } from \"@acorex/components/button\";\nimport { AXDecoratorModule } from \"@acorex/components/decorators\";\nimport { AXPDocumentExplorerViewModel } from \"../../../document-explorer\";\nimport { Component, inject } from \"@angular/core\";\nimport { AXPLayoutThemeService } from '@acorex/platform/themes/shared';\nimport * as i0 from \"@angular/core\";\nimport * as i1 from \"@acorex/components/button\";\nimport * as i2 from \"@acorex/components/decorators\";\nexport class AXMFolderPathBreadcrumbsComponent {\n constructor() {\n this.vm = inject(AXPDocumentExplorerViewModel);\n this.layout = inject(AXPLayoutThemeService);\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: AXMFolderPathBreadcrumbsComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }\n static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"17.0.0\", version: \"20.1.8\", type: AXMFolderPathBreadcrumbsComponent, isStandalone: true, selector: \"axm-folder-path-breadcrumbs\", ngImport: i0, template: \"<!-- Breadcrumbs Section -->\\n<div class=\\\"__breadcrumb ax-xs\\\">\\n <!-- Desktop Breadcrumb -->\\n @for (item of vm.currentPath(); track item.id; let i = $index;let last = $last) {\\n <!-- Navigation Button -->\\n <ax-button look=\\\"blank\\\" (onClick)=\\\"vm.navigateToFolder(item.id)\\\" [text]=\\\"item.name\\\" [disabled]=\\\"last\\\">\\n @if(i === 0) {\\n <ax-icon icon=\\\"fa-light fa-cloud\\\"></ax-icon>\\n }@else {\\n <ax-icon icon=\\\"fa-light fa-folder-closed\\\"></ax-icon>\\n }\\n </ax-button>\\n <!-- Separator -->\\n @if(!last) {\\n <i class=\\\"far fa-chevron-right rtl:ax-rotate-180 fa-fw fa-xs ax-me-2\\\"></i>\\n }\\n <!-- End Navigation Button -->\\n }\\n</div>\\n\", styles: [\":host{display:flex;width:100%;align-items:center}:host .__nav{display:flex;flex-direction:row;align-items:center;gap:.25rem;border-inline-end-width:1px;padding-inline-start:.25rem;padding-inline-end:.5rem}:host .__breadcrumb{display:flex;flex-direction:row;flex-wrap:wrap;align-items:center;padding-inline-start:.5rem;padding-inline-end:.25rem}:host .__breadcrumb .ax-state-disabled button,:host .__breadcrumb .ax-state-loading button{cursor:default!important}\\n\"], dependencies: [{ kind: \"ngmodule\", type: AXButtonModule }, { kind: \"component\", type: i1.AXButtonComponent, selector: \"ax-button\", inputs: [\"disabled\", \"size\", \"tabIndex\", \"color\", \"look\", \"text\", \"toggleable\", \"selected\", \"iconOnly\", \"type\", \"loadingText\"], outputs: [\"onBlur\", \"onFocus\", \"onClick\", \"selectedChange\", \"toggleableChange\", \"lookChange\", \"colorChange\", \"disabledChange\", \"loadingTextChange\"] }, { kind: \"ngmodule\", type: AXDecoratorModule }, { kind: \"component\", type: i2.AXDecoratorIconComponent, selector: \"ax-icon\", inputs: [\"icon\"] }] }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: AXMFolderPathBreadcrumbsComponent, decorators: [{\n type: Component,\n args: [{ selector: 'axm-folder-path-breadcrumbs', standalone: true, imports: [\n AXButtonModule,\n AXDecoratorModule,\n ], template: \"<!-- Breadcrumbs Section -->\\n<div class=\\\"__breadcrumb ax-xs\\\">\\n <!-- Desktop Breadcrumb -->\\n @for (item of vm.currentPath(); track item.id; let i = $index;let last = $last) {\\n <!-- Navigation Button -->\\n <ax-button look=\\\"blank\\\" (onClick)=\\\"vm.navigateToFolder(item.id)\\\" [text]=\\\"item.name\\\" [disabled]=\\\"last\\\">\\n @if(i === 0) {\\n <ax-icon icon=\\\"fa-light fa-cloud\\\"></ax-icon>\\n }@else {\\n <ax-icon icon=\\\"fa-light fa-folder-closed\\\"></ax-icon>\\n }\\n </ax-button>\\n <!-- Separator -->\\n @if(!last) {\\n <i class=\\\"far fa-chevron-right rtl:ax-rotate-180 fa-fw fa-xs ax-me-2\\\"></i>\\n }\\n <!-- End Navigation Button -->\\n }\\n</div>\\n\", styles: [\":host{display:flex;width:100%;align-items:center}:host .__nav{display:flex;flex-direction:row;align-items:center;gap:.25rem;border-inline-end-width:1px;padding-inline-start:.25rem;padding-inline-end:.5rem}:host .__breadcrumb{display:flex;flex-direction:row;flex-wrap:wrap;align-items:center;padding-inline-start:.5rem;padding-inline-end:.25rem}:host .__breadcrumb .ax-state-disabled button,:host .__breadcrumb .ax-state-loading button{cursor:default!important}\\n\"] }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9sZGVyLXBhdGgtYnJlYWRjcnVtYnMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tb2R1bGVzL2RvY3VtZW50LW1hbmFnZW1lbnQvc3JjL2xpYi9mZWF0dXJlcy9zaGFyZWQvY29tcG9uZW50cy9mb2xkZXItcGF0aC1icmVhZGNydW1icy9mb2xkZXItcGF0aC1icmVhZGNydW1icy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL21vZHVsZXMvZG9jdW1lbnQtbWFuYWdlbWVudC9zcmMvbGliL2ZlYXR1cmVzL3NoYXJlZC9jb21wb25lbnRzL2ZvbGRlci1wYXRoLWJyZWFkY3J1bWJzL2ZvbGRlci1wYXRoLWJyZWFkY3J1bWJzLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUNsRSxPQUFPLEVBQUUsNEJBQTRCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUUxRSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNsRCxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQzs7OztBQWF2RSxNQUFNLE9BQU8saUNBQWlDO0lBVjlDO1FBV1ksT0FBRSxHQUFHLE1BQU0sQ0FBQyw0QkFBNEIsQ0FBQyxDQUFDO1FBQzFDLFdBQU0sR0FBRyxNQUFNLENBQUMscUJBQXFCLENBQUMsQ0FBQztLQUNsRDs4R0FIWSxpQ0FBaUM7a0dBQWpDLGlDQUFpQyx1RkNsQjlDLDJwQkFtQkEsdWdCRExJLGNBQWMsNlhBQ2QsaUJBQWlCOzsyRkFHUixpQ0FBaUM7a0JBVjdDLFNBQVM7K0JBQ0UsNkJBQTZCLGNBRzNCLElBQUksV0FDUDt3QkFDUCxjQUFjO3dCQUNkLGlCQUFpQjtxQkFDbEIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBWEJ1dHRvbk1vZHVsZSB9IGZyb20gXCJAYWNvcmV4L2NvbXBvbmVudHMvYnV0dG9uXCI7XG5pbXBvcnQgeyBBWERlY29yYXRvck1vZHVsZSB9IGZyb20gXCJAYWNvcmV4L2NvbXBvbmVudHMvZGVjb3JhdG9yc1wiO1xuaW1wb3J0IHsgQVhQRG9jdW1lbnRFeHBsb3JlclZpZXdNb2RlbCB9IGZyb20gXCIuLi8uLi8uLi9kb2N1bWVudC1leHBsb3JlclwiO1xuaW1wb3J0IHsgQVhNRG9jdW1lbnRFeHBsb3Jlck5vZGUgfSBmcm9tIFwiLi4vLi4vZG9jdW1lbnQtbWFuYWdlci50eXBlc1wiO1xuaW1wb3J0IHsgQ29tcG9uZW50LCBpbmplY3QgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHsgQVhQTGF5b3V0VGhlbWVTZXJ2aWNlIH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS90aGVtZXMvc2hhcmVkJztcblxuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdheG0tZm9sZGVyLXBhdGgtYnJlYWRjcnVtYnMnLFxuICB0ZW1wbGF0ZVVybDogJy4vZm9sZGVyLXBhdGgtYnJlYWRjcnVtYnMuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9mb2xkZXItcGF0aC1icmVhZGNydW1icy5jb21wb25lbnQuc2NzcyddLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbXG4gICAgQVhCdXR0b25Nb2R1bGUsXG4gICAgQVhEZWNvcmF0b3JNb2R1bGUsXG4gIF0sXG59KVxuZXhwb3J0IGNsYXNzIEFYTUZvbGRlclBhdGhCcmVhZGNydW1ic0NvbXBvbmVudCB7XG4gIHByb3RlY3RlZCB2bSA9IGluamVjdChBWFBEb2N1bWVudEV4cGxvcmVyVmlld01vZGVsKTtcbiAgcHJvdGVjdGVkIGxheW91dCA9IGluamVjdChBWFBMYXlvdXRUaGVtZVNlcnZpY2UpO1xufVxuIiwiPCEtLSBCcmVhZGNydW1icyBTZWN0aW9uIC0tPlxuPGRpdiBjbGFzcz1cIl9fYnJlYWRjcnVtYiBheC14c1wiPlxuICA8IS0tIERlc2t0b3AgQnJlYWRjcnVtYiAtLT5cbiAgQGZvciAoaXRlbSBvZiB2bS5jdXJyZW50UGF0aCgpOyB0cmFjayBpdGVtLmlkOyBsZXQgaSA9ICRpbmRleDtsZXQgbGFzdCA9ICRsYXN0KSB7XG4gIDwhLS0gTmF2aWdhdGlvbiBCdXR0b24gLS0+XG4gIDxheC1idXR0b24gbG9vaz1cImJsYW5rXCIgKG9uQ2xpY2spPVwidm0ubmF2aWdhdGVUb0ZvbGRlcihpdGVtLmlkKVwiIFt0ZXh0XT1cIml0ZW0ubmFtZVwiIFtkaXNhYmxlZF09XCJsYXN0XCI+XG4gICAgQGlmKGkgPT09IDApIHtcbiAgICA8YXgtaWNvbiBpY29uPVwiZmEtbGlnaHQgZmEtY2xvdWRcIj48L2F4LWljb24+XG4gICAgfUBlbHNlIHtcbiAgICA8YXgtaWNvbiBpY29uPVwiZmEtbGlnaHQgZmEtZm9sZGVyLWNsb3NlZFwiPjwvYXgtaWNvbj5cbiAgICB9XG4gIDwvYXgtYnV0dG9uPlxuICA8IS0tIFNlcGFyYXRvciAtLT5cbiAgQGlmKCFsYXN0KSB7XG4gIDxpIGNsYXNzPVwiZmFyIGZhLWNoZXZyb24tcmlnaHQgcnRsOmF4LXJvdGF0ZS0xODAgZmEtZncgZmEteHMgYXgtbWUtMlwiPjwvaT5cbiAgfVxuICA8IS0tIEVuZCBOYXZpZ2F0aW9uIEJ1dHRvbiAtLT5cbiAgfVxuPC9kaXY+XG4iXX0=","import { inject } from '@angular/core';\nimport { AXMDocumentManagerService } from '../../../shared';\nimport { AXPFileStorageService } from '@acorex/platform/common';\nimport { AXPPlatformScope } from '@acorex/platform/core';\nexport const UploadFromDriveHookProvider = {\n key: 'file-uploader.actions',\n priority: 0,\n execute: (payload) => {\n const driveService = inject(AXMDocumentManagerService);\n const fileStorageService = inject(AXPFileStorageService);\n payload.actions = [\n ...payload.actions,\n {\n plugin: 'upload-document-from-drive',\n global: true,\n textKey: '@document-management:actions.choose-from-drive',\n icon: 'fa-light fa-file-arrow-up',\n run: async ({ host }) => {\n const result = await driveService.showChooseFileDialog(AXPPlatformScope.Tenant);\n host.setValue([\n ...(host.getValue() ?? []),\n ...result.map((item) => ({\n ...(item.fileId ?? {}),\n status: 'uploading',\n })),\n ]);\n for await (const item of result) {\n if (!item.fileId?.id || item.type === 'folder') {\n continue;\n }\n try {\n const storageInfo = await fileStorageService.getInfo(item.fileId.id);\n if (!storageInfo) {\n const currentFiles = host.getValue();\n host.setValue(currentFiles.filter((f) => f.id !== (item.fileId?.id ?? '')));\n continue;\n }\n const currentFiles = host.getValue();\n const fileIndex = currentFiles.findIndex((f) => f.id === (item.fileId?.id ?? ''));\n if (fileIndex !== -1) {\n const updatedFiles = [...currentFiles];\n updatedFiles[fileIndex] = {\n ...updatedFiles[fileIndex],\n status: 'attached',\n source: {\n kind: 'blob',\n value: new Blob([storageInfo.binary], { type: storageInfo.mimeType }),\n },\n };\n host.setValue(updatedFiles);\n }\n }\n catch {\n const currentFiles = host.getValue();\n host.setValue(currentFiles.filter((f) => f.id !== (item.fileId?.id ?? '')));\n }\n }\n },\n },\n ];\n return payload;\n },\n};\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXBsb2FkLWZyb20tZHJpdmUuaG9vay5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbW9kdWxlcy9kb2N1bWVudC1tYW5hZ2VtZW50L3NyYy9saWIvZmVhdHVyZXMvZHJpdmUtY2hvb3NlL3Nsb3RzL2ZpbGUtdXBsb2FkZXItd2lkZ2V0LWV4dGVuc2lvbi91cGxvYWQtZnJvbS1kcml2ZS5ob29rLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFdkMsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDNUQsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDaEUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFHekQsTUFBTSxDQUFDLE1BQU0sMkJBQTJCLEdBQWtEO0lBQ3hGLEdBQUcsRUFBRSx1QkFBdUI7SUFDNUIsUUFBUSxFQUFFLENBQUM7SUFDWCxPQUFPLEVBQUUsQ0FBQyxPQUFzQyxFQUFFLEVBQUU7UUFDbEQsTUFBTSxZQUFZLEdBQUcsTUFBTSxDQUFDLHlCQUF5QixDQUFDLENBQUM7UUFDdkQsTUFBTSxrQkFBa0IsR0FBRyxNQUFNLENBQUMscUJBQXFCLENBQUMsQ0FBQztRQUV6RCxPQUFPLENBQUMsT0FBTyxHQUFHO1lBQ2hCLEdBQUcsT0FBTyxDQUFDLE9BQU87WUFDbEI7Z0JBQ0UsTUFBTSxFQUFFLDRCQUE0QjtnQkFDcEMsTUFBTSxFQUFFLElBQUk7Z0JBQ1osT0FBTyxFQUFFLGdEQUFnRDtnQkFDekQsSUFBSSxFQUFFLDJCQUEyQjtnQkFDakMsR0FBRyxFQUFFLEtBQUssRUFBRSxFQUFFLElBQUksRUFBaUIsRUFBRSxFQUFFO29CQUNyQyxNQUFNLE1BQU0sR0FBRyxNQUFNLFlBQVksQ0FBQyxvQkFBb0IsQ0FBQyxnQkFBZ0IsQ0FBQyxNQUFNLENBQUMsQ0FBQztvQkFFaEYsSUFBSSxDQUFDLFFBQVEsQ0FBQzt3QkFDWixHQUFHLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxJQUFJLEVBQUUsQ0FBQzt3QkFDMUIsR0FBRyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBUyxFQUFFLEVBQUUsQ0FBQyxDQUFDOzRCQUM1QixHQUFHLENBQUMsSUFBSSxDQUFDLE1BQU0sSUFBSSxFQUFFLENBQUM7NEJBQ3RCLE1BQU0sRUFBRSxXQUFXO3lCQUNwQixDQUFDLENBQXNCO3FCQUN6QixDQUFDLENBQUM7b0JBRUgsSUFBSSxLQUFLLEVBQUUsTUFBTSxJQUFJLElBQUksTUFBTSxFQUFFLENBQUM7d0JBQ2hDLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLEVBQUUsSUFBSSxJQUFJLENBQUMsSUFBSSxLQUFLLFFBQVEsRUFBRSxDQUFDOzRCQUMvQyxTQUFTO3dCQUNYLENBQUM7d0JBQ0QsSUFBSSxDQUFDOzRCQUNILE1BQU0sV0FBVyxHQUFHLE1BQU0sa0JBQWtCLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLENBQUM7NEJBQ3JFLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztnQ0FDakIsTUFBTSxZQUFZLEdBQUcsSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDO2dDQUNyQyxJQUFJLENBQUMsUUFBUSxDQUFDLFlBQVksQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFNLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLEtBQUssQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUM7Z0NBQ2pGLFNBQVM7NEJBQ1gsQ0FBQzs0QkFFRCxNQUFNLFlBQVksR0FBRyxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7NEJBQ3JDLE1BQU0sU0FBUyxHQUFHLFlBQVksQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFNLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLEtBQUssQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDOzRCQUN2RixJQUFJLFNBQVMsS0FBSyxDQUFDLENBQUMsRUFBRSxDQUFDO2dDQUNyQixNQUFNLFlBQVksR0FBRyxDQUFDLEdBQUcsWUFBWSxDQUFDLENBQUM7Z0NBQ3ZDLFlBQVksQ0FBQyxTQUFTLENBQUMsR0FBRztvQ0FDeEIsR0FBRyxZQUFZLENBQUMsU0FBUyxDQUFDO29DQUMxQixNQUFNLEVBQUUsVUFBVTtvQ0FDbEIsTUFBTSxFQUFFO3dDQUNOLElBQUksRUFBRSxNQUFNO3dDQUNaLEtBQUssRUFBRSxJQUFJLElBQUksQ0FBQyxDQUFDLFdBQVcsQ0FBQyxNQUFrQixDQUFDLEVBQUUsRUFBRSxJQUFJLEVBQUUsV0FBVyxDQUFDLFFBQVEsRUFBRSxDQUFDO3FDQUNsRjtpQ0FDRixDQUFDO2dDQUNGLElBQUksQ0FBQyxRQUFRLENBQUMsWUFBWSxDQUFDLENBQUM7NEJBQzlCLENBQUM7d0JBQ0gsQ0FBQzt3QkFBQyxNQUFNLENBQUM7NEJBQ1AsTUFBTSxZQUFZLEdBQUcsSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDOzRCQUNyQyxJQUFJLENBQUMsUUFBUSxDQUFDLFlBQVksQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFNLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLEtBQUssQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUM7d0JBQ25GLENBQUM7b0JBQ0gsQ0FBQztnQkFDSCxDQUFDO2FBQ0Y7U0FDRixDQUFDO1FBRUYsT0FBTyxPQUFPLENBQUM7SUFDakIsQ0FBQztDQUNGLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBpbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFYUERpc3RyaWJ1dGVkRXZlbnRMaXN0ZW5lclByb3ZpZGVyIH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9jb3JlJztcbmltcG9ydCB7IEFYTURvY3VtZW50TWFuYWdlclNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9zaGFyZWQnO1xuaW1wb3J0IHsgQVhQRmlsZVN0b3JhZ2VTZXJ2aWNlIH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9jb21tb24nO1xuaW1wb3J0IHsgQVhQUGxhdGZvcm1TY29wZSB9IGZyb20gJ0BhY29yZXgvcGxhdGZvcm0vY29yZSc7XG5pbXBvcnQgeyBBWFBGaWxlTGlzdEl0ZW0gfSBmcm9tICdAYWNvcmV4L3BsYXRmb3JtL2NvcmUnO1xuXG5leHBvcnQgY29uc3QgVXBsb2FkRnJvbURyaXZlSG9va1Byb3ZpZGVyOiBBWFBEaXN0cmlidXRlZEV2ZW50TGlzdGVuZXJQcm92aWRlcjxhbnksIGFueT4gPSB7XG4gIGtleTogJ2ZpbGUtdXBsb2FkZXIuYWN0aW9ucycsXG4gIHByaW9yaXR5OiAwLFxuICBleGVjdXRlOiAocGF5bG9hZDogeyBob3N0OiBhbnk7IGFjdGlvbnM6IGFueVtdIH0pID0+IHtcbiAgICBjb25zdCBkcml2ZVNlcnZpY2UgPSBpbmplY3QoQVhNRG9jdW1lbnRNYW5hZ2VyU2VydmljZSk7XG4gICAgY29uc3QgZmlsZVN0b3JhZ2VTZXJ2aWNlID0gaW5qZWN0KEFYUEZpbGVTdG9yYWdlU2VydmljZSk7XG5cbiAgICBwYXlsb2FkLmFjdGlvbnMgPSBbXG4gICAgICAuLi5wYXlsb2FkLmFjdGlvbnMsXG4gICAgICB7XG4gICAgICAgIHBsdWdpbjogJ3VwbG9hZC1kb2N1bWVudC1mcm9tLWRyaXZlJyxcbiAgICAgICAgZ2xvYmFsOiB0cnVlLFxuICAgICAgICB0ZXh0S2V5OiAnQGRvY3VtZW50LW1hbmFnZW1lbnQ6YWN0aW9ucy5jaG9vc2UtZnJvbS1kcml2ZScsXG4gICAgICAgIGljb246ICdmYS1saWdodCBmYS1maWxlLWFycm93LXVwJyxcbiAgICAgICAgcnVuOiBhc3luYyAoeyBob3N0IH06IHsgaG9zdDogYW55IH0pID0+IHtcbiAgICAgICAgICBjb25zdCByZXN1bHQgPSBhd2FpdCBkcml2ZVNlcnZpY2Uuc2hvd0Nob29zZUZpbGVEaWFsb2coQVhQUGxhdGZvcm1TY29wZS5UZW5hbnQpO1xuXG4gICAgICAgICAgaG9zdC5zZXRWYWx1ZShbXG4gICAgICAgICAgICAuLi4oaG9zdC5nZXRWYWx1ZSgpID8/IFtdKSxcbiAgICAgICAgICAgIC4uLnJlc3VsdC5tYXAoKGl0ZW06IGFueSkgPT4gKHtcbiAgICAgICAgICAgICAgLi4uKGl0ZW0uZmlsZUlkID8/IHt9KSxcbiAgICAgICAgICAgICAgc3RhdHVzOiAndXBsb2FkaW5nJyxcbiAgICAgICAgICAgIH0pKSBhcyBBWFBGaWxlTGlzdEl0ZW1bXSxcbiAgICAgICAgICBdKTtcblxuICAgICAgICAgIGZvciBhd2FpdCAoY29uc3QgaXRlbSBvZiByZXN1bHQpIHtcbiAgICAgICAgICAgIGlmICghaXRlbS5maWxlSWQ/LmlkIHx8IGl0ZW0udHlwZSA9PT0gJ2ZvbGRlcicpIHtcbiAgICAgICAgICAgICAgY29udGludWU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICB0cnkge1xuICAgICAgICAgICAgICBjb25zdCBzdG9yYWdlSW5mbyA9IGF3YWl0IGZpbGVTdG9yYWdlU2VydmljZS5nZXRJbmZvKGl0ZW0uZmlsZUlkLmlkKTtcbiAgICAgICAgICAgICAgaWYgKCFzdG9yYWdlSW5mbykge1xuICAgICAgICAgICAgICAgIGNvbnN0IGN1cnJlbnRGaWxlcyA9IGhvc3QuZ2V0VmFsdWUoKTtcbiAgICAgICAgICAgICAgICBob3N0LnNldFZhbHVlKGN1cnJlbnRGaWxlcy5maWx0ZXIoKGY6IGFueSkgPT4gZi5pZCAhPT0gKGl0ZW0uZmlsZUlkPy5pZCA/PyAnJykpKTtcbiAgICAgICAgICAgICAgICBjb250aW51ZTtcbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgIGNvbnN0IGN1cnJlbnRGaWxlcyA9IGhvc3QuZ2V0VmFsdWUoKTtcbiAgICAgICAgICAgICAgY29uc3QgZmlsZUluZGV4ID0gY3VycmVudEZpbGVzLmZpbmRJbmRleCgoZjogYW55KSA9PiBmLmlkID09PSAoaXRlbS5maWxlSWQ/LmlkID8/ICcnKSk7XG4gICAgICAgICAgICAgIGlmIChmaWxlSW5kZXggIT09IC0xKSB7XG4gICAgICAgICAgICAgICAgY29uc3QgdXBkYXRlZEZpbGVzID0gWy4uLmN1cnJlbnRGaWxlc107XG4gICAgICAgICAgICAgICAgdXBkYXRlZEZpbGVzW2ZpbGVJbmRleF0gPSB7XG4gICAgICAgICAgICAgICAgICAuLi51cGRhdGVkRmlsZXNbZmlsZUluZGV4XSxcbiAgICAgICAgICAgICAgICAgIHN0YXR1czogJ2F0dGFjaGVkJyxcbiAgICAgICAgICAgICAgICAgIHNvdXJjZToge1xuICAgICAgICAgICAgICAgICAgICBraW5kOiAnYmxvYicsXG4gICAgICAgICAgICAgICAgICAgIHZhbHVlOiBuZXcgQmxvYihbc3RvcmFnZUluZm8uYmluYXJ5IGFzIEJsb2JQYXJ0XSwgeyB0eXBlOiBzdG9yYWdlSW5mby5taW1lVHlwZSB9KSxcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgICAgICBob3N0LnNldFZhbHVlKHVwZGF0ZWRGaWxlcyk7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0gY2F0Y2gge1xuICAgICAgICAgICAgICBjb25zdCBjdXJyZW50RmlsZXMgPSBob3N0LmdldFZhbHVlKCk7XG4gICAgICAgICAgICAgIGhvc3Quc2V0VmFsdWUoY3VycmVudEZpbGVzLmZpbHRlcigoZjogYW55KSA9PiBmLmlkICE9PSAoaXRlbS5maWxlSWQ/LmlkID8/ICcnKSkpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgXTtcblxuICAgIHJldHVybiBwYXlsb2FkO1xuICB9LFxufTtcblxuXG4iXX0=","import { NgModule } from \"@angular/core\";\nimport { AXP_DISTRIBUTED_EVENT_LISTENER_PROVIDER } from \"@acorex/platform/core\";\nimport { UploadFromDriveHookProvider } from \"./slots/file-uploader-widget-extension\";\nimport * as i0 from \"@angular/core\";\nexport class AXMDriveChooseModule {\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: AXMDriveChooseModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }\n static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: \"14.0.0\", version: \"20.1.8\", ngImport: i0, type: AXMDriveChooseModule }); }\n static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: AXMDriveChooseModule, providers: [\n { provide: AXP_DISTRIBUTED_EVENT_LISTENER_PROVIDER, useValue: UploadFromDriveHookProvider, multi: true }\n ] }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: AXMDriveChooseModule, decorators: [{\n type: NgModule,\n args: [{\n imports: [],\n providers: [\n { provide: AXP_DISTRIBUTED_EVENT_LISTENER_PROVIDER, useValue: UploadFromDriveHookProvider, multi: true }\n ]\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJpdmUtY2hvb3NlLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbW9kdWxlcy9kb2N1bWVudC1tYW5hZ2VtZW50L3NyYy9saWIvZmVhdHVyZXMvZHJpdmUtY2hvb3NlL2RyaXZlLWNob29zZS5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsdUNBQXVDLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUNoRixPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQzs7QUFTckYsTUFBTSxPQUFPLG9CQUFvQjs4R0FBcEIsb0JBQW9COytHQUFwQixvQkFBb0I7K0dBQXBCLG9CQUFvQixhQUpsQjtZQUNQLEVBQUUsT0FBTyxFQUFFLHVDQUF1QyxFQUFFLFFBQVEsRUFBRSwyQkFBMkIsRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFO1NBQzNHOzsyRkFFUSxvQkFBb0I7a0JBUGhDLFFBQVE7bUJBQUM7b0JBQ04sT0FBTyxFQUFDLEVBQ1A7b0JBQ0QsU0FBUyxFQUFFO3dCQUNQLEVBQUUsT0FBTyxFQUFFLHVDQUF1QyxFQUFFLFFBQVEsRUFBRSwyQkFBMkIsRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFO3FCQUMzRztpQkFDSiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gXCJAYW5ndWxhci9jb21tb25cIjtcbmltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcbmltcG9ydCB7IEFYUF9ESVNUUklCVVRFRF9FVkVOVF9MSVNURU5FUl9QUk9WSURFUiB9IGZyb20gXCJAYWNvcmV4L3BsYXRmb3JtL2NvcmVcIjtcbmltcG9ydCB7IFVwbG9hZEZyb21Ecml2ZUhvb2tQcm92aWRlciB9IGZyb20gXCIuL3Nsb3RzL2ZpbGUtdXBsb2FkZXItd2lkZ2V0LWV4dGVuc2lvblwiO1xuXG5ATmdNb2R1bGUoe1xuICAgIGltcG9ydHM6W1xuICAgIF0sXG4gICAgcHJvdmlkZXJzOiBbXG4gICAgICAgIHsgcHJvdmlkZTogQVhQX0RJU1RSSUJVVEVEX0VWRU5UX0xJU1RFTkVSX1BST1ZJREVSLCB1c2VWYWx1ZTogVXBsb2FkRnJvbURyaXZlSG9va1Byb3ZpZGVyLCBtdWx0aTogdHJ1ZSB9XG4gICAgXVxufSkgIFxuZXhwb3J0IGNsYXNzIEFYTURyaXZlQ2hvb3NlTW9kdWxlIHsgXG5cbn0iXX0=","import { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, input, output } from '@angular/core';\nimport { AXButtonModule } from '@acorex/components/button';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXTranslationModule } from '@acorex/core/translation';\nimport * as i0 from \"@angular/core\";\nimport * as i1 from \"@acorex/components/button\";\nimport * as i2 from \"@acorex/components/decorators\";\nimport * as i3 from \"@acorex/core/translation\";\nimport * as i4 from \"@angular/common\";\nexport class AXMetaListItemComponent {\n constructor() {\n this.item = input.required(...(ngDevMode ? [{ debugName: \"item\" }] : []));\n this.onRemove = output();\n this.onRevert = output();\n this.onEdit = output();\n }\n handleRemove() {\n this.onRemove.emit();\n }\n handleRevert() {\n this.onRevert.emit();\n }\n handleEdit() {\n this.onEdit.emit();\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: AXMetaListItemComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }\n static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"17.0.0\", version: \"20.1.8\", type: AXMetaListItemComponent, isStandalone: true, selector: \"axp-meta-list-item\", inputs: { item: { classPropertyName: \"item\", publicName: \"item\", isSignal: true, isRequired: true, transformFunction: null } }, outputs: { onRemove: \"onRemove\", onRevert: \"onRevert\", onEdit: \"onEdit\" }, ngImport: i0, template: `\n <div class=\"axp-meta-list-item\" [class.__deleted]=\"item().status === 'deleted'\" *translate=\"let t\">\n <div class=\"__content\">\n <div class=\"__header\">\n <div class=\"__info\">\n <h4 class=\"__title\">{{ item().text }}</h4>\n <p class=\"__subtitle\">\n @if (item().isRequired) {\n <span class=\"__required-badge\">{{ t('@document-management:meta.required') | async }}</span>\n }\n </p>\n </div>\n\n @if (item().status === 'deleted') {\n <div class=\"__status-badge\">\n <ax-icon icon=\"fa-light fa-trash\" class=\"__icon\"></ax-icon>\n <span>{{ t('@document-management:meta.deleted') | async }}</span>\n </div>\n }\n </div>\n </div>\n \n <div class=\"__actions\">\n @if (item().status === 'deleted') {\n <ax-button \n class=\"ax-xs\"\n look=\"outline\" \n color=\"success\"\n (onClick)=\"handleRevert()\">\n <ax-prefix>\n <ax-icon icon=\"fa-light fa-undo\"></ax-icon>\n </ax-prefix>\n </ax-button>\n } @else {\n <ax-button \n class=\"ax-xs\"\n look=\"ghost\" \n color=\"accent3\"\n (onClick)=\"handleEdit()\">\n <ax-prefix>\n <ax-icon icon=\"fa-light fa-edit\"></ax-icon>\n </ax-prefix>\n </ax-button>\n \n <ax-button \n class=\"ax-xs\"\n look=\"ghost\" \n color=\"danger\"\n (onClick)=\"handleRemove()\">\n <ax-prefix>\n <ax-icon icon=\"fa-light fa-trash\"></ax-icon>\n </ax-prefix>\n </ax-button>\n }\n </div>\n </div>\n `, isInline: true, styles: [\".axp-meta-list-item{display:flex;align-items:center;justify-content:space-between;border-radius:.375rem;padding-left:.5rem;padding-right:.5rem;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.2s;animation-duration:.2s}.axp-meta-list-item:hover{background-color:rgb(var(--ax-sys-color-lighter-surface));color:rgb(var(--ax-sys-color-on-lighter-surface));border-color:rgb(var(--ax-sys-color-border-lighter-surface))}.axp-meta-list-item.__deleted{--tw-border-opacity: 1;border-color:rgba(var(--ax-sys-color-danger-500),var(--tw-border-opacity, 1))}.axp-meta-list-item.__deleted{--tw-bg-opacity: 1;background-color:rgba(var(--ax-sys-color-danger-50),var(--tw-bg-opacity, 1))}.axp-meta-list-item.__deleted .__content{opacity:.6}.axp-meta-list-item .__content{flex:1 1 0%}.axp-meta-list-item .__content .__header{display:flex}.axp-meta-list-item .__content .__header{align-items:center}.axp-meta-list-item .__content .__header{justify-content:space-between}.axp-meta-list-item .__content .__header .__info{flex:1 1 0%}.axp-meta-list-item .__content .__header .__info .__title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.axp-meta-list-item .__content .__header .__info .__title{text-align:start}.axp-meta-list-item .__content .__header .__info .__title{font-size:.875rem;line-height:1.25rem}.axp-meta-list-item .__content .__header .__info .__title{font-weight:500}.axp-meta-list-item .__content .__header .__info .__subtitle .__required-badge{display:inline-flex}.axp-meta-list-item .__content .__header .__info .__subtitle .__required-badge{align-items:center}.axp-meta-list-item .__content .__header .__info .__subtitle .__required-badge{border-radius:9999px}.axp-meta-list-item .__content .__header .__info .__subtitle .__required-badge{padding-left:.5rem;padding-right:.5rem}.axp-meta-list-item .__content .__header .__info .__subtitle .__required-badge{padding-top:.25rem;padding-bottom:.25rem}.axp-meta-list-item .__content .__header .__info .__subtitle .__required-badge{font-size:.75rem;line-height:1rem}.axp-meta-list-item .__content .__header .__info .__subtitle .__required-badge{font-weight:500}.axp-meta-list-item .__content .__header .__info .__subtitle .__required-badge{--tw-bg-opacity: 1;background-color:rgb(255 237 213 / var(--tw-bg-opacity, 1))}.axp-meta-list-item .__content .__header .__info .__subtitle .__required-badge{--tw-text-opacity: 1;color:rgb(154 52 18 / var(--tw-text-opacity, 1))}.axp-meta-list-item .__actions{margin-left:auto}.axp-meta-list-item .__actions{display:flex}\\n\"], dependencies: [{ kind: \"ngmodule\", type: CommonModule }, { kind: \"ngmodule\", type: AXButtonModule }, { kind: \"component\", type: i1.AXButtonComponent, selector: \"ax-button\", inputs: [\"disabled\", \"size\", \"tabIndex\", \"color\", \"look\", \"text\", \"toggleable\", \"selected\", \"iconOnly\", \"type\", \"loadingText\"], outputs: [\"onBlur\", \"onFocus\", \"onClick\", \"selectedChange\", \"toggleableChange\", \"lookChange\", \"colorChange\", \"disabledChange\", \"loadingTextChange\"] }, { kind: \"ngmodule\", type: AXDecoratorModule }, { kind: \"component\", type: i2.AXDecoratorIconComponent, selector: \"ax-icon\", inputs: [\"icon\"] }, { kind: \"component\", type: i2.AXDecoratorGenericComponent, selector: \"ax-footer, ax-header, ax-content, ax-divider, ax-form-hint, ax-prefix, ax-suffix, ax-text, ax-title, ax-subtitle, ax-placeholder, ax-overlay\" }, { kind: \"ngmodule\", type: AXTranslationModule }, { kind: \"directive\", type: i3.AXTranslatorDirective, selector: \"[translate]\" }, { kind: \"pipe\", type: i4.AsyncPipe, name: \"async\" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: AXMetaListItemComponent, decorators: [{\n type: Component,\n args: [{ selector: 'axp-meta-list-item', template: `\n <div class=\"axp-meta-list-item\" [class.__deleted]=\"item().status === 'deleted'\" *translate=\"let t\">\n <div class=\"__content\">\n <div class=\"__header\">\n <div class=\"__info\">\n <h4 class=\"__title\">{{ item().text }}</h4>\n <p class=\"__subtitle\">\n @if (item().isRequired) {\n <span class=\"__required-badge\">{{ t('@document-management:meta.required') | async }}</span>\n }\n </p>\n </div>\n\n @if (item().status === 'deleted') {\n <div class=\"__status-badge\">\n <ax-icon icon=\"fa-light fa-trash\" class=\"__icon\"></ax-icon>\n <span>{{ t('@document-management:meta.deleted') | async }}</span>\n </div>\n }\n </div>\n </div>\n \n <div class=\"__actions\">\n @if (item().status === 'deleted') {\n <ax-button \n class=\"ax-xs\"\n look=\"outline\" \n color=\"success\"\n (onClick)=\"handleRevert()\">\n <ax-prefix>\n <ax-icon icon=\"fa-light fa-undo\"></ax-icon>\n </ax-prefix>\n </ax-button>\n } @else {\n <ax-button \n class=\"ax-xs\"\n look=\"ghost\" \n color=\"accent3\"\n (onClick)=\"handleEdit()\">\n <ax-prefix>\n <ax-icon icon=\"fa-light fa-edit\"></ax-icon>\n </ax-prefix>\n </ax-button>\n \n <ax-button \n class=\"ax-xs\"\n look=\"ghost\" \n color=\"danger\"\n (onClick)=\"handleRemove()\">\n <ax-prefix>\n <ax-icon icon=\"fa-light fa-trash\"></ax-icon>\n </ax-prefix>\n </ax-button>\n }\n </div>\n </div>\n `, changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [\n CommonModule,\n AXButtonModule,\n AXDecoratorModule,\n AXTranslationModule\n ], styles: [\".axp-meta-list-item{display:flex;align-items:center;justify-content:space-between;border-radius:.375rem;padding-left:.5rem;padding-right:.5rem;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.2s;animation-duration:.2s}.axp-meta-list-item:hover{background-color:rgb(var(--ax-sys-color-lighter-surface));color:rgb(var(--ax-sys-color-on-lighter-surface));border-color:rgb(var(--ax-sys-color-border-lighter-surface))}.axp-meta-list-item.__deleted{--tw-border-opacity: 1;border-color:rgba(var(--ax-sys-color-danger-500),var(--tw-border-opacity, 1))}.axp-meta-list-item.__deleted{--tw-bg-opacity: 1;background-color:rgba(var(--ax-sys-color-danger-50),var(--tw-bg-opacity, 1))}.axp-meta-list-item.__deleted .__content{opacity:.6}.axp-meta-list-item .__content{flex:1 1 0%}.axp-meta-list-item .__content .__header{display:flex}.axp-meta-list-item .__content .__header{align-items:center}.axp-meta-list-item .__content .__header{justify-content:space-between}.axp-meta-list-item .__content .__header .__info{flex:1 1 0%}.axp-meta-list-item .__content .__header .__info .__title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.axp-meta-list-item .__content .__header .__info .__title{text-align:start}.axp-meta-list-item .__content .__header .__info .__title{font-size:.875rem;line-height:1.25rem}.axp-meta-list-item .__content .__header .__info .__title{font-weight:500}.axp-meta-list-item .__content .__header .__info .__subtitle .__required-badge{display:inline-flex}.axp-meta-list-item .__content .__header .__info .__subtitle .__required-badge{align-items:center}.axp-meta-list-item .__content .__header .__info .__subtitle .__required-badge{border-radius:9999px}.axp-meta-list-item .__content .__header .__info .__subtitle .__required-badge{padding-left:.5rem;padding-right:.5rem}.axp-meta-list-item .__content .__header .__info .__subtitle .__required-badge{padding-top:.25rem;padding-bottom:.25rem}.axp-meta-list-item .__content .__header .__info .__subtitle .__required-badge{font-size:.75rem;line-height:1rem}.axp-meta-list-item .__content .__header .__info .__subtitle .__required-badge{font-weight:500}.axp-meta-list-item .__content .__header .__info .__subtitle .__required-badge{--tw-bg-opacity: 1;background-color:rgb(255 237 213 / var(--tw-bg-opacity, 1))}.axp-meta-list-item .__content .__header .__info .__subtitle .__required-badge{--tw-text-opacity: 1;color:rgb(154 52 18 / var(--tw-text-opacity, 1))}.axp-meta-list-item .__actions{margin-left:auto}.axp-meta-list-item .__actions{display:flex}\\n\"] }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWV0YS1saXN0LWl0ZW0uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tb2R1bGVzL2RvY3VtZW50LW1hbmFnZW1lbnQvc3JjL2xpYi9mZWF0dXJlcy9tZXRhLWNob29zZS13aWRnZXQvbWV0YS1saXN0L21ldGEtbGlzdC1pdGVtL21ldGEtbGlzdC1pdGVtLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2xGLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUNsRSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQzs7Ozs7O0FBdUgvRCxNQUFNLE9BQU8sdUJBQXVCO0lBcEhwQztRQXFIRSxTQUFJLEdBQUcsS0FBSyxDQUFDLFFBQVEsK0NBQWdCLENBQUM7UUFFdEMsYUFBUSxHQUFHLE1BQU0sRUFBUSxDQUFDO1FBQzFCLGFBQVEsR0FBRyxNQUFNLEVBQVEsQ0FBQztRQUMxQixXQUFNLEdBQUcsTUFBTSxFQUFRLENBQUM7S0FhekI7SUFYQyxZQUFZO1FBQ1YsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUN2QixDQUFDO0lBRUQsWUFBWTtRQUNWLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDdkIsQ0FBQztJQUVELFVBQVU7UUFDUixJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ3JCLENBQUM7OEdBakJVLHVCQUF1QjtrR0FBdkIsdUJBQXVCLHlSQWxIeEI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBd0RULDRrRkFvREMsWUFBWSw4QkFDWixjQUFjLDZYQUNkLGlCQUFpQixzVkFDakIsbUJBQW1COzsyRkFHVix1QkFBdUI7a0JBcEhuQyxTQUFTOytCQUNFLG9CQUFvQixZQUNwQjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0F3RFQsbUJBaURnQix1QkFBdUIsQ0FBQyxNQUFNLGNBQ25DLElBQUksV0FDUDt3QkFDUCxZQUFZO3dCQUNaLGNBQWM7d0JBQ2QsaUJBQWlCO3dCQUNqQixtQkFBbUI7cUJBQ3BCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIGlucHV0LCBvdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFYQnV0dG9uTW9kdWxlIH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL2J1dHRvbic7XG5pbXBvcnQgeyBBWERlY29yYXRvck1vZHVsZSB9IGZyb20gJ0BhY29yZXgvY29tcG9uZW50cy9kZWNvcmF0b3JzJztcbmltcG9ydCB7IEFYVHJhbnNsYXRpb25Nb2R1bGUgfSBmcm9tICdAYWNvcmV4L2NvcmUvdHJhbnNsYXRpb24nO1xuaW1wb3J0IHsgTWV0YURhdGFJdGVtIH0gZnJvbSAnLi4vbWV0YS1saXN0LmNvbXBvbmVudCc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2F4cC1tZXRhLWxpc3QtaXRlbScsXG4gIHRlbXBsYXRlOiBgXG4gICAgPGRpdiBjbGFzcz1cImF4cC1tZXRhLWxpc3QtaXRlbVwiIFtjbGFzcy5fX2RlbGV0ZWRdPVwiaXRlbSgpLnN0YXR1cyA9PT0gJ2RlbGV0ZWQnXCIgKnRyYW5zbGF0ZT1cImxldCB0XCI+XG4gICAgICA8ZGl2IGNsYXNzPVwiX19jb250ZW50XCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJfX2hlYWRlclwiPlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJfX2luZm9cIj5cbiAgICAgICAgICAgIDxoNCBjbGFzcz1cIl9fdGl0bGVcIj57eyBpdGVtKCkudGV4dCB9fTwvaDQ+XG4gICAgICAgICAgICA8cCBjbGFzcz1cIl9fc3VidGl0bGVcIj5cbiAgICAgICAgICAgICAgQGlmIChpdGVtKCkuaXNSZXF1aXJlZCkge1xuICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiX19yZXF1aXJlZC1iYWRnZVwiPnt7IHQoJ0Bkb2N1bWVudC1tYW5hZ2VtZW50Om1ldGEucmVxdWlyZWQnKSB8IGFzeW5jIH19PC9zcGFuPlxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICA8L3A+XG4gICAgICAgICAgPC9kaXY+XG5cbiAgICAgICAgICBAaWYgKGl0ZW0oKS5zdGF0dXMgPT09ICdkZWxldGVkJykge1xuICAgICAgICAgICAgPGRpdiBjbGFzcz1cIl9fc3RhdHVzLWJhZGdlXCI+XG4gICAgICAgICAgICAgIDxheC1pY29uIGljb249XCJmYS1saWdodCBmYS10cmFzaFwiIGNsYXNzPVwiX19pY29uXCI+PC9heC1pY29uPlxuICAgICAgICAgICAgICA8c3Bhbj57eyB0KCdAZG9jdW1lbnQtbWFuYWdlbWVudDptZXRhLmRlbGV0ZWQnKSB8IGFzeW5jIH19PC9zcGFuPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgfVxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvZGl2PlxuICAgICAgXG4gICAgICA8ZGl2IGNsYXNzPVwiX19hY3Rpb25zXCI+XG4gICAgICAgIEBpZiAoaXRlbSgpLnN0YXR1cyA9PT0gJ2RlbGV0ZWQnKSB7XG4gICAgICAgICAgPGF4LWJ1dHRvbiBcbiAgICAgICAgICAgIGNsYXNzPVwiYXgteHNcIlxuICAgICAgICAgICAgbG9vaz1cIm91dGxpbmVcIiBcbiAgICAgICAgICAgIGNvbG9yPVwic3VjY2Vzc1wiXG4gICAgICAgICAgICAob25DbGljayk9XCJoYW5kbGVSZXZlcnQoKVwiPlxuICAgICAgICAgICAgPGF4LXByZWZpeD5cbiAgICAgICAgICAgICAgPGF4LWljb24gaWNvbj1cImZhLWxpZ2h0IGZhLXVuZG9cIj48L2F4LWljb24+XG4gICAgICAgICAgICA8L2F4LXByZWZpeD5cbiAgICAgICAgICA8L2F4LWJ1dHRvbj5cbiAgICAgICAgfSBAZWxzZSB7XG4gICAgICAgICAgPGF4LWJ1dHRvbiBcbiAgICAgICAgICAgIGNsYXNzPVwiYXgteHNcIlxuICAgICAgICAgICAgbG9vaz1cImdob3N0XCIgXG4gICAgICAgICAgICBjb2xvcj1cImFjY2VudDNcIlxuICAgICAgICAgICAgKG9uQ2xpY2spPVwiaGFuZGxlRWRpdCgpXCI+XG4gICAgICAgICAgICA8YXgtcHJlZml4PlxuICAgICAgICAgICAgICA8YXgtaWNvbiBpY29uPVwiZmEtbGlnaHQgZmEtZWRpdFwiPjwvYXgtaWNvbj5cbiAgICAgICAgICAgIDwvYXgtcHJlZml4PlxuICAgICAgICAgIDwvYXgtYnV0dG9uPlxuICAgICAgICAgIFxuICAgICAgICAgIDxheC1idXR0b24gXG4gICAgICAgICAgICBjbGFzcz1cImF4LXhzXCJcbiAgICAgICAgICAgIGxvb2s9XCJnaG9zdFwiIFxuICAgICAgICAgICAgY29sb3I9XCJkYW5nZXJcIlxuICAgICAgICAgICAgKG9uQ2xpY2spPVwiaGFuZGxlUmVtb3ZlKClcIj5cbiAgICAgICAgICAgIDxheC1wcmVmaXg+XG4gICAgICAgICAgICAgIDxheC1pY29uIGljb249XCJmYS1saWdodCBmYS10cmFzaFwiPjwvYXgtaWNvbj5cbiAgICAgICAgICAgIDwvYXgtcHJlZml4PlxuICAgICAgICAgIDwvYXgtYnV0dG9uPlxuICAgICAgICB9XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgYCxcbiAgc3R5bGVzOiBbYFxuICAgIC5heHAtbWV0YS1saXN0LWl0ZW0ge1xuICAgICAgQGFwcGx5IGF4LWZsZXggYXgtaXRlbXMtY2VudGVyIGF4LWp1c3RpZnktYmV0d2VlbiBheC1yb3VuZGVkLW1kIGF4LXB4LTI7XG4gICAgICBAYXBwbHkgYXgtdHJhbnNpdGlvbi1hbGwgYXgtZHVyYXRpb24tMjAwO1xuXG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgQGFwcGx5IGF4LWxpZ2h0ZXItc3VyZmFjZTtcbiAgICAgIH1cblxuICAgICAgJi5fX2RlbGV0ZWQge1xuICAgICAgICBAYXBwbHkgYXgtYmctZGFuZ2VyLTUwIGF4LWJvcmRlci1kYW5nZXItNTAwO1xuICAgICAgICBcbiAgICAgICAgLl9fY29udGVudCB7XG4gICAgICAgICAgQGFwcGx5IGF4LW9wYWNpdHktNjA7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLl9fY29udGVudCB7XG4gICAgICAgIEBhcHBseSBheC1mbGV4LTE7XG5cbiAgICAgICAgLl9faGVhZGVyIHtcbiAgICAgICAgICBAYXBwbHkgYXgtZmxleCBheC1pdGVtcy1jZW50ZXIgYXgtanVzdGlmeS1iZXR3ZWVuO1xuXG4gICAgICAgICAgLl9faW5mbyB7XG4gICAgICAgICAgICBAYXBwbHkgYXgtZmxleC0xO1xuXG4gICAgICAgICAgICAuX190aXRsZSB7XG4gICAgICAgICAgICAgIEBhcHBseSBheC10ZXh0LXNtIGF4LXRydW5jYXRlIGF4LXRleHQtc3RhcnQgYXgtZm9udC1tZWRpdW07XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5fX3N1YnRpdGxlIHtcblxuICAgICAgICAgICAgICAuX19yZXF1aXJlZC1iYWRnZSB7XG4gICAgICAgICAgICAgICAgQGFwcGx5IGF4LWlubGluZS1mbGV4IGF4LWl0ZW1zLWNlbnRlciBheC1weC0yIGF4LXB5LTEgYXgtcm91bmRlZC1mdWxsIGF4LXRleHQteHMgYXgtZm9udC1tZWRpdW07XG4gICAgICAgICAgICAgICAgQGFwcGx5IGF4LWJnLW9yYW5nZS0xMDAgYXgtdGV4dC1vcmFuZ2UtODAwO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuXG4gICAgICAgXG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLl9fYWN0aW9ucyB7XG4gICAgICAgIEBhcHBseSBheC1mbGV4IGF4LW1sLWF1dG87XG4gICAgICB9XG4gICAgfVxuICBgXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtcbiAgICBDb21tb25Nb2R1bGUsXG4gICAgQVhCdXR0b25Nb2R1bGUsXG4gICAgQVhEZWNvcmF0b3JNb2R1bGUsXG4gICAgQVhUcmFuc2xhdGlvbk1vZHVsZVxuICBdXG59KVxuZXhwb3J0IGNsYXNzIEFYTWV0YUxpc3RJdGVtQ29tcG9uZW50IHtcbiAgaXRlbSA9IGlucHV0LnJlcXVpcmVkPE1ldGFEYXRhSXRlbT4oKTtcbiAgXG4gIG9uUmVtb3ZlID0gb3V0cHV0PHZvaWQ+KCk7XG4gIG9uUmV2ZXJ0ID0gb3V0cHV0PHZvaWQ+KCk7XG4gIG9uRWRpdCA9IG91dHB1dDx2b2lkPigpO1xuICBcbiAgaGFuZGxlUmVtb3ZlKCkge1xuICAgIHRoaXMub25SZW1vdmUuZW1pdCgpO1xuICB9XG4gIFxuICBoYW5kbGVSZXZlcnQoKSB7XG4gICAgdGhpcy5vblJldmVydC5lbWl0KCk7XG4gIH1cbiAgXG4gIGhhbmRsZUVkaXQoKSB7XG4gICAgdGhpcy5vbkVkaXQuZW1pdCgpO1xuICB9XG59ICJdfQ==","import { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, input, output } from '@angular/core';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXMetaListItemComponent } from './meta-list-item/meta-list-item.component';\nimport * as i0 from \"@angular/core\";\nimport * as i1 from \"@acorex/components/decorators\";\nexport class AXMetaListComponent {\n constructor() {\n this.metaItems = input([], ...(ngDevMode ? [{ debugName: \"metaItems\" }] : []));\n this.onRemove = output();\n this.onRevert = output();\n this.onEdit = output();\n }\n handleRemove(item) {\n this.onRemove.emit(item);\n }\n handleRevert(item) {\n this.onRevert.emit(item);\n }\n handleEdit(item) {\n this.onEdit.emit(item);\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: AXMetaListComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }\n static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"17.0.0\", version: \"20.1.8\", type: AXMetaListComponent, isStandalone: true, selector: \"axp-meta-list\", inputs: { metaItems: { classPropertyName: \"metaItems\", publicName: \"metaItems\", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { onRemove: \"onRemove\", onRevert: \"onRevert\", onEdit: \"onEdit\" }, ngImport: i0, template: `\n <div class=\"axp-meta-list\">\n @if (metaItems().length === 0) {\n <div class=\"__empty-state\">\n <div class=\"__content\">\n <ax-icon class=\"__icon\" icon=\"fa-light fa-list-check\"></ax-icon>\n <p class=\"__message\">No metadata items added yet</p>\n </div>\n </div>\n }\n \n @for (item of metaItems(); track item.id) {\n <axp-meta-list-item \n [item]=\"item\"\n (onRemove)=\"handleRemove(item)\"\n (onRevert)=\"handleRevert(item)\"\n (onEdit)=\"handleEdit(item)\"\n />\n }\n </div>\n `, isInline: true, styles: [\".axp-meta-list .__empty-state{display:flex}.axp-meta-list .__empty-state{align-items:center}.axp-meta-list .__empty-state{justify-content:center}.axp-meta-list .__empty-state{padding-top:.5rem;padding-bottom:.5rem}.axp-meta-list .__empty-state .__content .__icon{margin-bottom:.5rem}.axp-meta-list .__empty-state .__content .__icon{font-size:1.5rem;line-height:2rem}.axp-meta-list .__empty-state .__content .__message{font-size:.875rem;line-height:1.25rem}\\n\"], dependencies: [{ kind: \"ngmodule\", type: CommonModule }, { kind: \"ngmodule\", type: AXDecoratorModule }, { kind: \"component\", type: i1.AXDecoratorIconComponent, selector: \"ax-icon\", inputs: [\"icon\"] }, { kind: \"component\", type: AXMetaListItemComponent, selector: \"axp-meta-list-item\", inputs: [\"item\"], outputs: [\"onRemove\", \"onRevert\", \"onEdit\"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: AXMetaListComponent, decorators: [{\n type: Component,\n args: [{ selector: 'axp-meta-list', template: `\n <div class=\"axp-meta-list\">\n @if (metaItems().length === 0) {\n <div class=\"__empty-state\">\n <div class=\"__content\">\n <ax-icon class=\"__icon\" icon=\"fa-light fa-list-check\"></ax-icon>\n <p class=\"__message\">No metadata items added yet</p>\n </div>\n </div>\n }\n \n @for (item of metaItems(); track item.id) {\n <axp-meta-list-item \n [item]=\"item\"\n (onRemove)=\"handleRemove(item)\"\n (onRevert)=\"handleRevert(item)\"\n (onEdit)=\"handleEdit(item)\"\n />\n }\n </div>\n `, changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [\n CommonModule,\n AXDecoratorModule,\n AXMetaListItemComponent\n ], styles: [\".axp-meta-list .__empty-state{display:flex}.axp-meta-list .__empty-state{align-items:center}.axp-meta-list .__empty-state{justify-content:center}.axp-meta-list .__empty-state{padding-top:.5rem;padding-bottom:.5rem}.axp-meta-list .__empty-state .__content .__icon{margin-bottom:.5rem}.axp-meta-list .__empty-state .__content .__icon{font-size:1.5rem;line-height:2rem}.axp-meta-list .__empty-state .__content .__message{font-size:.875rem;line-height:1.25rem}\\n\"] }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWV0YS1saXN0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbW9kdWxlcy9kb2N1bWVudC1tYW5hZ2VtZW50L3NyYy9saWIvZmVhdHVyZXMvbWV0YS1jaG9vc2Utd2lkZ2V0L21ldGEtbGlzdC9tZXRhLWxpc3QuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbEYsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDbEUsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sMkNBQTJDLENBQUM7OztBQTREcEYsTUFBTSxPQUFPLG1CQUFtQjtJQWpEaEM7UUFrREUsY0FBUyxHQUFHLEtBQUssQ0FBaUIsRUFBRSxxREFBQyxDQUFDO1FBRXRDLGFBQVEsR0FBRyxNQUFNLEVBQWdCLENBQUM7UUFDbEMsYUFBUSxHQUFHLE1BQU0sRUFBZ0IsQ0FBQztRQUNsQyxXQUFNLEdBQUcsTUFBTSxFQUFnQixDQUFDO0tBYWpDO0lBWEMsWUFBWSxDQUFDLElBQWtCO1FBQzdCLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQzNCLENBQUM7SUFFRCxZQUFZLENBQUMsSUFBa0I7UUFDN0IsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDM0IsQ0FBQztJQUVELFVBQVUsQ0FBQyxJQUFrQjtRQUMzQixJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUN6QixDQUFDOzhHQWpCVSxtQkFBbUI7a0dBQW5CLG1CQUFtQixvU0EvQ3BCOzs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQW9CVCxtaEJBc0JDLFlBQVksOEJBQ1osaUJBQWlCLGdJQUNqQix1QkFBdUI7OzJGQUdkLG1CQUFtQjtrQkFqRC9CLFNBQVM7K0JBQ0UsZUFBZSxZQUNmOzs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQW9CVCxtQkFtQmdCLHVCQUF1QixDQUFDLE1BQU0sY0FDbkMsSUFBSSxXQUNQO3dCQUNQLFlBQVk7d0JBQ1osaUJBQWlCO3dCQUNqQix1QkFBdUI7cUJBQ3hCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIGlucHV0LCBvdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFYRGVjb3JhdG9yTW9kdWxlIH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL2RlY29yYXRvcnMnO1xuaW1wb3J0IHsgQVhNZXRhTGlzdEl0ZW1Db21wb25lbnQgfSBmcm9tICcuL21ldGEtbGlzdC1pdGVtL21ldGEtbGlzdC1pdGVtLmNvbXBvbmVudCc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgTWV0YURhdGFJdGVtIHtcbiAgaWQ6IHN0cmluZztcbiAgdGV4dDogc3RyaW5nO1xuICBpc1JlcXVpcmVkOiBib29sZWFuO1xuICBwbGFjZWhvbGRlcj86IHN0cmluZztcbiAgc3RhdHVzPzogJ2FjdGl2ZScgfCAnZGVsZXRlZCcgfCAndGVtcG9yYXJ5JztcbiAgW2tleTogc3RyaW5nXTogYW55O1xufVxuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdheHAtbWV0YS1saXN0JyxcbiAgdGVtcGxhdGU6IGBcbiAgICA8ZGl2IGNsYXNzPVwiYXhwLW1ldGEtbGlzdFwiPlxuICAgICAgQGlmIChtZXRhSXRlbXMoKS5sZW5ndGggPT09IDApIHtcbiAgICAgICAgPGRpdiBjbGFzcz1cIl9fZW1wdHktc3RhdGVcIj5cbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiX19jb250ZW50XCI+XG4gICAgICAgICAgICA8YXgtaWNvbiBjbGFzcz1cIl9faWNvblwiIGljb249XCJmYS1saWdodCBmYS1saXN0LWNoZWNrXCI+PC9heC1pY29uPlxuICAgICAgICAgICAgPHAgY2xhc3M9XCJfX21lc3NhZ2VcIj5ObyBtZXRhZGF0YSBpdGVtcyBhZGRlZCB5ZXQ8L3A+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgICAgfVxuICAgICAgXG4gICAgICBAZm9yIChpdGVtIG9mIG1ldGFJdGVtcygpOyB0cmFjayBpdGVtLmlkKSB7XG4gICAgICAgIDxheHAtbWV0YS1saXN0LWl0ZW0gXG4gICAgICAgICAgW2l0ZW1dPVwiaXRlbVwiXG4gICAgICAgICAgKG9uUmVtb3ZlKT1cImhhbmRsZVJlbW92ZShpdGVtKVwiXG4gICAgICAgICAgKG9uUmV2ZXJ0KT1cImhhbmRsZVJldmVydChpdGVtKVwiXG4gICAgICAgICAgKG9uRWRpdCk9XCJoYW5kbGVFZGl0KGl0ZW0pXCJcbiAgICAgICAgLz5cbiAgICAgIH1cbiAgICA8L2Rpdj5cbiAgYCxcbiAgc3R5bGVzOiBbYFxuICAgIC5heHAtbWV0YS1saXN0IHtcbiAgICAgIFxuICAgICAgLl9fZW1wdHktc3RhdGUge1xuICAgICAgICBAYXBwbHkgYXgtZmxleCBheC1pdGVtcy1jZW50ZXIgYXgtanVzdGlmeS1jZW50ZXIgYXgtcHktMjtcbiAgICAgICAgXG4gICAgICAgIC5fX2NvbnRlbnQge1xuICAgICAgICAgIC5fX2ljb24ge1xuICAgICAgICAgICAgQGFwcGx5IGF4LXRleHQtMnhsIGF4LW1iLTI7XG4gICAgICAgICAgfVxuICAgICAgICAgIFxuICAgICAgICAgIC5fX21lc3NhZ2Uge1xuICAgICAgICAgICAgQGFwcGx5IGF4LXRleHQtc207XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICBgXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtcbiAgICBDb21tb25Nb2R1bGUsXG4gICAgQVhEZWNvcmF0b3JNb2R1bGUsXG4gICAgQVhNZXRhTGlzdEl0ZW1Db21wb25lbnRcbiAgXVxufSlcbmV4cG9ydCBjbGFzcyBBWE1ldGFMaXN0Q29tcG9uZW50IHtcbiAgbWV0YUl0ZW1zID0gaW5wdXQ8TWV0YURhdGFJdGVtW10+KFtdKTtcbiAgXG4gIG9uUmVtb3ZlID0gb3V0cHV0PE1ldGFEYXRhSXRlbT4oKTtcbiAgb25SZXZlcnQgPSBvdXRwdXQ8TWV0YURhdGFJdGVtPigpO1xuICBvbkVkaXQgPSBvdXRwdXQ8TWV0YURhdGFJdGVtPigpO1xuICBcbiAgaGFuZGxlUmVtb3ZlKGl0ZW06IE1ldGFEYXRhSXRlbSkge1xuICAgIHRoaXMub25SZW1vdmUuZW1pdChpdGVtKTtcbiAgfVxuICBcbiAgaGFuZGxlUmV2ZXJ0KGl0ZW06IE1ldGFEYXRhSXRlbSkge1xuICAgIHRoaXMub25SZXZlcnQuZW1pdChpdGVtKTtcbiAgfVxuICBcbiAgaGFuZGxlRWRpdChpdGVtOiBNZXRhRGF0YUl0ZW0pIHtcbiAgICB0aGlzLm9uRWRpdC5lbWl0KGl0ZW0pO1xuICB9XG59ICJdfQ==","import { AXButtonModule } from '@acorex/components/button';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXPopupService } from '@acorex/components/popup';\nimport { AXSelectBoxModule } from '@acorex/components/select-box';\nimport { AXTranslationModule } from '@acorex/core/translation';\nimport { AXPValueWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, HostBinding, inject, computed } from '@angular/core';\nimport { AXMetaListComponent } from './meta-list/meta-list.component';\nimport { cloneDeep } from 'lodash-es';\nimport * as i0 from \"@angular/core\";\nimport * as i1 from \"@acorex/components/button\";\nimport * as i2 from \"@acorex/components/decorators\";\nimport * as i3 from \"@acorex/core/translation\";\nimport * as i4 from \"@angular/common\";\nexport class AXPMetaSelectorWidgetEditComponent extends AXPValueWidgetComponent {\n constructor() {\n super(...arguments);\n //#region ---- Services & Dependencies ----\n this.popupService = inject(AXPopupService);\n //#endregion\n //#region ---- Computed Properties ----\n /**\n * Convert raw value to MetaDataItem format for display\n */\n this.metaItems = computed(() => {\n const value = this.getValue();\n if (!Array.isArray(value)) {\n return [];\n }\n return value.map(item => ({\n id: item.id,\n text: item.text,\n isRequired: item.isRequired ?? false,\n placeholder: item.placeholder,\n status: item.status || 'active',\n ...item\n }));\n }, ...(ngDevMode ? [{ debugName: \"metaItems\" }] : []));\n }\n //#endregion\n //#region ---- Event Handlers ----\n /**\n * Handle adding new metadata items\n */\n async handleAddClick() {\n const comp = (await import('./meta-choose-popup/meta-choose-popup.component')).AXPMetaChoosePopupComponent;\n const result = await this.popupService.open(comp, {\n title: 'Meta Selector',\n data: {\n initialData: cloneDeep(this.getValue())\n }\n });\n if (result.data != undefined && result.data != null) {\n this.setValue(result.data);\n }\n }\n /**\n * Handle removing a metadata item\n */\n handleMetaRemove(item) {\n this.removeMetaItem(item);\n }\n /**\n * Handle reverting a deleted metadata item\n */\n handleMetaRevert(item) {\n item.status = 'active';\n this.updateMetaItem(item);\n }\n /**\n * Handle editing a metadata item\n */\n async handleMetaEdit(item) {\n const comp = (await import('./meta-choose-popup/meta-choose-popup.component')).AXPMetaChoosePopupComponent;\n const result = await this.popupService.open(comp, {\n title: 'Edit Meta Selector',\n data: {\n initialData: cloneDeep(this.getValue()),\n editMode: true,\n editingItem: item\n }\n });\n if (result.data != undefined && result.data != null) {\n this.setValue(result.data);\n }\n }\n //#endregion\n //#region ---- Utility Methods ----\n /**\n * Remove a metadata item (mark as deleted if uploaded, remove if attached)\n */\n removeMetaItem(item) {\n const currentValue = this.getValue() || [];\n if (item.status === 'active') {\n // Mark as deleted instead of removing completely\n const updatedValue = currentValue.map((meta) => meta.id === item.id ? { ...meta, status: 'deleted' } : meta);\n this.setValue(updatedValue);\n }\n else {\n // Remove completely if already marked as deleted\n const updatedValue = currentValue.filter((meta) => meta.id !== item.id);\n this.setValue(updatedValue);\n }\n }\n /**\n * Update a specific metadata item\n */\n updateMetaItem(item) {\n const currentValue = this.getValue() || [];\n const updatedValue = currentValue.map((meta) => meta.id === item.id ? { ...meta, ...item } : meta);\n this.setValue(updatedValue);\n }\n //#endregion\n //#region ---- Host Binding ----\n get __class() {\n const cls = {};\n cls[`ax-block`] = true;\n cls[`ax-border`] = true;\n cls[`ax-rounded-md`] = true;\n cls[`ax-lightest-surface`] = true;\n cls[`ax-flex-1`] = true;\n return cls;\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: AXPMetaSelectorWidgetEditComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }\n static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"14.0.0\", version: \"20.1.8\", type: AXPMetaSelectorWidgetEditComponent, isStandalone: true, selector: \"axp-meta-selector-widget-edit\", host: { properties: { \"class\": \"this.__class\" } }, usesInheritance: true, ngImport: i0, template: `\n <div class=\"axp-meta-selector-widget-edit\" *translate=\"let t\">\n \n <div class=\"__header\">\n <ax-button \n class=\"ax-sm\" \n [text]=\"t('@document-management:actions.add-item') | async\" \n [color]=\"'primary'\" \n (click)='handleAddClick()'>\n <ax-prefix>\n <ax-icon icon=\"fa-light fa-plus\"></ax-icon>\n </ax-prefix>\n </ax-button>\n </div>\n \n <div class=\"__content\">\n <axp-meta-list \n [metaItems]=\"metaItems()\"\n (onRemove)=\"handleMetaRemove($event)\"\n (onRevert)=\"handleMetaRevert($event)\"\n (onEdit)=\"handleMetaEdit($event)\"\n />\n </div>\n \n </div>\n `, isInline: true, styles: [\".axp-meta-selector-widget-edit .__header{display:flex}.axp-meta-selector-widget-edit .__header{justify-content:flex-end}.axp-meta-selector-widget-edit .__header{border-bottom-width:1px}.axp-meta-selector-widget-edit .__header,.axp-meta-selector-widget-edit .__content{padding:.5rem}\\n\"], dependencies: [{ kind: \"ngmodule\", type: CommonModule }, { kind: \"ngmodule\", type: AXSelectBoxModule }, { kind: \"ngmodule\", type: AXButtonModule }, { kind: \"component\", type: i1.AXButtonComponent, selector: \"ax-button\", inputs: [\"disabled\", \"size\", \"tabIndex\", \"color\", \"look\", \"text\", \"toggleable\", \"selected\", \"iconOnly\", \"type\", \"loadingText\"], outputs: [\"onBlur\", \"onFocus\", \"onClick\", \"selectedChange\", \"toggleableChange\", \"lookChange\", \"colorChange\", \"disabledChange\", \"loadingTextChange\"] }, { kind: \"ngmodule\", type: AXDecoratorModule }, { kind: \"component\", type: i2.AXDecoratorIconComponent, selector: \"ax-icon\", inputs: [\"icon\"] }, { kind: \"component\", type: i2.AXDecoratorGenericComponent, selector: \"ax-footer, ax-header, ax-content, ax-divider, ax-form-hint, ax-prefix, ax-suffix, ax-text, ax-title, ax-subtitle, ax-placeholder, ax-overlay\" }, { kind: \"ngmodule\", type: AXTranslationModule }, { kind: \"directive\", type: i3.AXTranslatorDirective, selector: \"[translate]\" }, { kind: \"component\", type: AXMetaListComponent, selector: \"axp-meta-list\", inputs: [\"metaItems\"], outputs: [\"onRemove\", \"onRevert\", \"onEdit\"] }, { kind: \"pipe\", type: i4.AsyncPipe, name: \"async\" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: AXPMetaSelectorWidgetEditComponent, decorators: [{\n type: Component,\n args: [{ selector: 'axp-meta-selector-widget-edit', template: `\n <div class=\"axp-meta-selector-widget-edit\" *translate=\"let t\">\n \n <div class=\"__header\">\n <ax-button \n class=\"ax-sm\" \n [text]=\"t('@document-management:actions.add-item') | async\" \n [color]=\"'primary'\" \n (click)='handleAddClick()'>\n <ax-prefix>\n <ax-icon icon=\"fa-light fa-plus\"></ax-icon>\n </ax-prefix>\n </ax-button>\n </div>\n \n <div class=\"__content\">\n <axp-meta-list \n [metaItems]=\"metaItems()\"\n (onRemove)=\"handleMetaRemove($event)\"\n (onRevert)=\"handleMetaRevert($event)\"\n (onEdit)=\"handleMetaEdit($event)\"\n />\n </div>\n \n </div>\n `, changeDetection: ChangeDetectionStrategy.OnPush, imports: [\n CommonModule,\n AXSelectBoxModule,\n AXButtonModule,\n AXDecoratorModule,\n AXTranslationModule,\n AXMetaListComponent\n ], styles: [\".axp-meta-selector-widget-edit .__header{display:flex}.axp-meta-selector-widget-edit .__header{justify-content:flex-end}.axp-meta-selector-widget-edit .__header{border-bottom-width:1px}.axp-meta-selector-widget-edit .__header,.axp-meta-selector-widget-edit .__content{padding:.5rem}\\n\"] }]\n }], propDecorators: { __class: [{\n type: HostBinding,\n args: ['class']\n }] } });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWV0YS1zZWxlY3Rvci13aWRnZXQtZWRpdC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL21vZHVsZXMvZG9jdW1lbnQtbWFuYWdlbWVudC9zcmMvbGliL2ZlYXR1cmVzL21ldGEtY2hvb3NlLXdpZGdldC9tZXRhLXNlbGVjdG9yLXdpZGdldC1lZGl0LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDM0QsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDbEUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQzFELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQ2xFLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQy9ELE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQzFFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUUvQyxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLFdBQVcsRUFBRSxNQUFNLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2xHLE9BQU8sRUFBRSxtQkFBbUIsRUFBZ0IsTUFBTSxpQ0FBaUMsQ0FBQztBQUNwRixPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sV0FBVyxDQUFDOzs7Ozs7QUFvRHRDLE1BQU0sT0FBTyxrQ0FBbUMsU0FBUSx1QkFBNEI7SUFsRHBGOztRQW9ERSwrQ0FBK0M7UUFFckMsaUJBQVksR0FBRyxNQUFNLENBQUMsY0FBYyxDQUFDLENBQUM7UUFFaEQsWUFBWTtRQUVaLDJDQUEyQztRQUUzQzs7V0FFRztRQUNPLGNBQVMsR0FBRyxRQUFRLENBQWlCLEdBQUcsRUFBRTtZ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QUFHLENBQUMscUJBQXFCLENBQUMsR0FBRyxJQUFJLENBQUM7UUFDbEMsR0FBRyxDQUFDLFdBQVcsQ0FBQyxHQUFHLElBQUksQ0FBQztRQUN4QixPQUFPLEdBQUcsQ0FBQztJQUNiLENBQUM7OEdBcElVLGtDQUFrQztrR0FBbEMsa0NBQWtDLG1LQWhEbkM7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0F5QlQscVdBZUMsWUFBWSw4QkFDWixpQkFBaUIsOEJBQ2pCLGNBQWMsNlhBQ2QsaUJBQWlCLHNWQUNqQixtQkFBbUIsK0dBQ25CLG1CQUFtQjs7MkZBR1Ysa0NBQWtDO2tCQWxEOUMsU0FBUzsrQkFDRSwrQkFBK0IsWUFDL0I7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0F5QlQsbUJBYWdCLHVCQUF1QixDQUFDLE1BQU0sV0FDdEM7d0JBQ1AsWUFBWTt3QkFDWixpQkFBaUI7d0JBQ2pCLGNBQWM7d0JBQ2QsaUJBQWlCO3dCQUNqQixtQkFBbUI7d0JBQ25CLG1CQUFtQjtxQkFDcEI7OEJBOEhXLE9BQU87c0JBRGxCLFdBQVc7dUJBQUMsT0FBTyIsInNvdXJjZXNDb250ZW50IjpbIlxuaW1wb3J0IHsgQVhCdXR0b25Nb2R1bGUgfSBmcm9tICdAYWNvcmV4L2NvbXBvbmVudHMvYnV0dG9uJztcbmltcG9ydCB7IEFYRGVjb3JhdG9yTW9kdWxlIH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL2RlY29yYXRvcnMnO1xuaW1wb3J0IHsgQVhQb3B1cFNlcnZpY2UgfSBmcm9tICdAYWNvcmV4L2NvbXBvbmVudHMvcG9wdXAnO1xuaW1wb3J0IHsgQVhTZWxlY3RCb3hNb2R1bGUgfSBmcm9tICdAYWNvcmV4L2NvbXBvbmVudHMvc2VsZWN0LWJveCc7XG5pbXBvcnQgeyBBWFRyYW5zbGF0aW9uTW9kdWxlIH0gZnJvbSAnQGFjb3JleC9jb3JlL3RyYW5zbGF0aW9uJztcbmltcG9ydCB7IEFYUFZhbHVlV2lkZ2V0Q29tcG9uZW50IH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9sYXlvdXQvYnVpbGRlcic7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuXG5pbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBIb3N0QmluZGluZywgaW5qZWN0LCBjb21wdXRlZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQVhNZXRhTGlzdENvbXBvbmVudCwgTWV0YURhdGFJdGVtIH0gZnJvbSAnLi9tZXRhLWxpc3QvbWV0YS1saXN0LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBjbG9uZURlZXAgfSBmcm9tICdsb2Rhc2gtZXMnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdheHAtbWV0YS1zZWxlY3Rvci13aWRnZXQtZWRpdCcsXG4gIHRlbXBsYXRlOiBgXG4gICAgPGRpdiBjbGFzcz1cImF4cC1tZXRhLXNlbGVjdG9yLXdpZGdldC1lZGl0XCIgKnRyYW5zbGF0ZT1cImxldCB0XCI+XG4gICAgICBcbiAgICAgIDxkaXYgY2xhc3M9XCJfX2hlYWRlclwiPlxuICAgICAgICA8YXgtYnV0dG9uIFxuICAgICAgICAgIGNsYXNzPVwiYXgtc21cIiBcbiAgICAgICAgICBbdGV4dF09XCJ0KCdAZG9jdW1lbnQtbWFuYWdlbWVudDphY3Rpb25zLmFkZC1pdGVtJykgfCBhc3luY1wiIFxuICAgICAgICAgIFtjb2xvcl09XCIncHJpbWFyeSdcIiBcbiAgICAgICAgICAoY2xpY2spPSdoYW5kbGVBZGRDbGljaygpJz5cbiAgICAgICAgICA8YXgtcHJlZml4PlxuICAgICAgICAgICAgPGF4LWljb24gaWNvbj1cImZhLWxpZ2h0IGZhLXBsdXNcIj48L2F4LWljb24+XG4gICAgICAgICAgPC9heC1wcmVmaXg+XG4gICAgICAgIDwvYXgtYnV0dG9uPlxuICAgICAgPC9kaXY+XG4gICAgICBcbiAgICAgIDxkaXYgY2xhc3M9XCJfX2NvbnRlbnRcIj5cbiAgICAgICAgPGF4cC1tZXRhLWxpc3QgXG4gICAgICAgICAgW21ldGFJdGVtc109XCJtZXRhSXRlbXMoKVwiXG4gICAgICAgICAgKG9uUmVtb3ZlKT1cImhhbmRsZU1ldGFSZW1vdmUoJGV2ZW50KVwiXG4gICAgICAgICAgKG9uUmV2ZXJ0KT1cImhhbmRsZU1ldGFSZXZlcnQoJGV2ZW50KVwiXG4gICAgICAgICAgKG9uRWRpdCk9XCJoYW5kbGVNZXRhRWRpdCgkZXZlbnQpXCJcbiAgICAgICAgLz5cbiAgICAgIDwvZGl2PlxuICAgICAgXG4gICAgPC9kaXY+XG4gIGAsXG4gIHN0eWxlczogW2BcbiAgICAuYXhwLW1ldGEtc2VsZWN0b3Itd2lkZ2V0LWVkaXQge1xuICAgICAgXG4gICAgICAuX19oZWFkZXIge1xuICAgICAgICBAYXBwbHkgYXgtZmxleCBheC1qdXN0aWZ5LWVuZCBheC1ib3JkZXItYiBheC1wLTI7XG4gICAgICB9XG4gICAgICBcbiAgICAgIC5fX2NvbnRlbnQge1xuICAgICAgICBAYXBwbHkgYXgtcC0yO1xuICAgICAgfVxuICAgIH1cbiAgYF0sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBpbXBvcnRzOiBbXG4gICAgQ29tbW9uTW9kdWxlLCBcbiAgICBBWFNlbGVjdEJveE1vZHVsZSwgXG4gICAgQVhCdXR0b25Nb2R1bGUsIFxuICAgIEFYRGVjb3JhdG9yTW9kdWxlLCBcbiAgICBBWFRyYW5zbGF0aW9uTW9kdWxlLFxuICAgIEFYTWV0YUxpc3RDb21wb25lbnRcbiAgXVxufSlcbmV4cG9ydCBjbGFzcyBBWFBNZXRhU2VsZWN0b3JXaWRnZXRFZGl0Q29tcG9uZW50IGV4dGVuZHMgQVhQVmFsdWVXaWRnZXRDb21wb25lbnQ8YW55PiB7XG5cbiAgLy8jcmVnaW9uIC0tLS0gICBTZXJ2aWNlcyAmIERlcGVuZGVuY2llcyAgIC0tLS1cblxuICBwcm90ZWN0ZWQgcG9wdXBTZXJ2aWNlID0gaW5qZWN0KEFYUG9wdXBTZXJ2aWNlKTtcblxuICAvLyNlbmRyZWdpb25cblxuICAvLyNyZWdpb24gLS0tLSAgIENvbXB1dGVkIFByb3BlcnRpZXMgICAtLS0tXG5cbiAgLyoqXG4gICAqIENvbnZlcnQgcmF3IHZhbHVlIHRvIE1ldGFEYXRhSXRlbSBmb3JtYXQgZm9yIGRpc3BsYXlcbiAgICovXG4gIHByb3RlY3RlZCBtZXRhSXRlbXMgPSBjb21wdXRlZDxNZXRhRGF0YUl0ZW1bXT4oKCkgPT4ge1xuICAgIGNvbnN0IHZhbHVlID0gdGhpcy5nZXRWYWx1ZSgpO1xuICAgIGlmICghQXJyYXkuaXNBcnJheSh2YWx1ZSkpIHtcbiAgICAgIHJldHVybiBbXTtcbiAgICB9XG4gICAgXG4gICAgcmV0dXJuIHZhbHVlLm1hcChpdGVtID0+ICh7XG4gICAgICBpZDogaXRlbS5pZCxcbiAgICAgIHRleHQ6IGl0ZW0udGV4dCxcbiAgICAgIGlzUmVxdWlyZWQ6IGl0ZW0uaXNSZXF1aXJlZCA/PyBmYWxzZSxcbiAgICAgIHBsYWNlaG9sZGVyOiBpdGVtLnBsYWNlaG9sZGVyLFxuICAgICAgc3RhdHVzOiBpdGVtLnN0YXR1cyB8fCAnYWN0aXZlJyxcbiAgICAgIC4uLml0ZW1cbiAgICB9IGFzIE1ldGFEYXRhSXRlbSkpO1xuICB9KTtcblxuICAvLyNlbmRyZWdpb25cblxuICAvLyNyZWdpb24gLS0tLSAgIEV2ZW50IEhhbmRsZXJzICAgLS0tLVxuXG4gIC8qKlxuICAgKiBIYW5kbGUgYWRkaW5nIG5ldyBtZXRhZGF0YSBpdGVtc1xuICAgKi9cbiAgYXN5bmMgaGFuZGxlQWRkQ2xpY2soKSB7XG4gICAgY29uc3QgY29tcCA9IChhd2FpdCBpbXBvcnQoJy4vbWV0YS1jaG9vc2UtcG9wdXAvbWV0YS1jaG9vc2UtcG9wdXAuY29tcG9uZW50JykpLkFYUE1ldGFDaG9vc2VQb3B1cENvbXBvbmVudDtcbiAgICBjb25zdCByZXN1bHQgPSBhd2FpdCB0aGlzLnBvcHVwU2VydmljZS5vcGVuKGNvbXAsIHtcbiAgICAgIHRpdGxlOiAnTWV0YSBTZWxlY3RvcicsXG4gICAgICBkYXRhOiB7XG4gICAgICAgIGluaXRpYWxEYXRhOiBjbG9uZURlZXAodGhpcy5nZXRWYWx1ZSgpKVxuICAgICAgfVxuICAgIH0pO1xuICAgIFxuICAgIGlmIChyZXN1bHQuZGF0YSAhPSB1bmRlZmluZWQgJiYgcmVzdWx0LmRhdGEgIT0gbnVsbCkge1xuICAgICAgdGhpcy5zZXRWYWx1ZShyZXN1bHQuZGF0YSk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIEhhbmRsZSByZW1vdmluZyBhIG1ldGFkYXRhIGl0ZW1cbiAgICovXG4gIGhhbmRsZU1ldGFSZW1vdmUoaXRlbTogTWV0YURhdGFJdGVtKSB7XG4gICAgdGhpcy5yZW1vdmVNZXRhSXRlbShpdGVtKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBIYW5kbGUgcmV2ZXJ0aW5nIGEgZGVsZXRlZCBtZXRhZGF0YSBpdGVtXG4gICAqL1xuICBoYW5kbGVNZXRhUmV2ZXJ0KGl0ZW06IE1ldGFEYXRhSXRlbSkge1xuICAgIGl0ZW0uc3RhdHVzID0gJ2FjdGl2ZSc7XG4gICAgdGhpcy51cGRhdGVNZXRhSXRlbShpdGVtKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBIYW5kbGUgZWRpdGluZyBhIG1ldGFkYXRhIGl0ZW1cbiAgICovXG4gIGFzeW5jIGhhbmRsZU1ldGFFZGl0KGl0ZW06IE1ldGFEYXRhSXRlbSkge1xuICAgIGNvbnN0IGNvbXAgPSAoYXdhaXQgaW1wb3J0KCcuL21ldGEtY2hvb3NlLXBvcHVwL21ldGEtY2hvb3NlLXBvcHVwLmNvbXBvbmVudCcpKS5BWFBNZXRhQ2hvb3NlUG9wdXBDb21wb25lbnQ7XG4gICAgY29uc3QgcmVzdWx0ID0gYXdhaXQgdGhpcy5wb3B1cFNlcnZpY2Uub3Blbihjb21wLCB7XG4gICAgICB0aXRsZTogJ0VkaXQgTWV0YSBTZWxlY3RvcicsXG4gICAgICBkYXRhOiB7XG4gICAgICAgIGluaXRpYWxEYXRhOiBjbG9uZURlZXAodGhpcy5nZXRWYWx1ZSgpKSxcbiAgICAgICAgZWRpdE1vZGU6IHRydWUsXG4gICAgICAgIGVkaXRpbmdJdGVtOiBpdGVtXG4gICAgICB9XG4gICAgfSk7XG4gICAgXG4gICAgaWYgKHJlc3VsdC5kYXRhICE9IHVuZGVmaW5lZCAmJiByZXN1bHQuZGF0YSAhPSBudWxsKSB7XG4gICAgICBcbiAgICAgIHRoaXMuc2V0VmFsdWUocmVzdWx0LmRhdGEpO1xuICAgIH1cbiAgfVxuXG4gIC8vI2VuZHJlZ2lvblxuXG4gIC8vI3JlZ2lvbiAtLS0tICAgVXRpbGl0eSBNZXRob2RzICAgLS0tLVxuXG4gIC8qKlxuICAgKiBSZW1vdmUgYSBtZXRhZGF0YSBpdGVtIChtYXJrIGFzIGRlbGV0ZWQgaWYgdXBsb2FkZWQsIHJlbW92ZSBpZiBhdHRhY2hlZClcbiAgICovXG4gIHByaXZhdGUgcmVtb3ZlTWV0YUl0ZW0oaXRlbTogTWV0YURhdGFJdGVtKSB7XG4gICAgY29uc3QgY3VycmVudFZhbHVlID0gdGhpcy5nZXRWYWx1ZSgpIHx8IFtdO1xuICAgIFxuICAgIGlmIChpdGVtLnN0YXR1cyA9PT0gJ2FjdGl2ZScpIHtcbiAgICAgIC8vIE1hcmsgYXMgZGVsZXRlZCBpbnN0ZWFkIG9mIHJlbW92aW5nIGNvbXBsZXRlbHlcbiAgICAgIGNvbnN0IHVwZGF0ZWRWYWx1ZSA9IGN1cnJlbnRWYWx1ZS5tYXAoKG1ldGE6IGFueSkgPT4gXG4gICAgICAgIG1ldGEuaWQgPT09IGl0ZW0uaWQgPyB7IC4uLm1ldGEsIHN0YXR1czogJ2RlbGV0ZWQnIH0gOiBtZXRhXG4gICAgICApO1xuICAgICAgdGhpcy5zZXRWYWx1ZSh1cGRhdGVkVmFsdWUpO1xuICAgIH0gZWxzZSB7XG4gICAgICAvLyBSZW1vdmUgY29tcGxldGVseSBpZiBhbHJlYWR5IG1hcmtlZCBhcyBkZWxldGVkXG4gICAgICBjb25zdCB1cGRhdGVkVmFsdWUgPSBjdXJyZW50VmFsdWUuZmlsdGVyKChtZXRhOiBhbnkpID0+IG1ldGEuaWQgIT09IGl0ZW0uaWQpO1xuICAgICAgdGhpcy5zZXRWYWx1ZSh1cGRhdGVkVmFsdWUpO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBVcGRhdGUgYSBzcGVjaWZpYyBtZXRhZGF0YSBpdGVtXG4gICAqL1xuICBwcml2YXRlIHVwZGF0ZU1ldGFJdGVtKGl0ZW06IE1ldGFEYXRhSXRlbSkge1xuICAgIGNvbnN0IGN1cnJlbnRWYWx1ZSA9IHRoaXMuZ2V0VmFsdWUoKSB8fCBbXTtcbiAgICBjb25zdCB1cGRhdGVkVmFsdWUgPSBjdXJyZW50VmFsdWUubWFwKChtZXRhOiBhbnkpID0+IFxuICAgICAgbWV0YS5pZCA9PT0gaXRlbS5pZCA/IHsgLi4ubWV0YSwgLi4uaXRlbSB9IDogbWV0YVxuICAgICk7XG4gICAgdGhpcy5zZXRWYWx1ZSh1cGRhdGVkVmFsdWUpO1xuICB9XG5cbiAgLy8jZW5kcmVnaW9uXG5cbiAgLy8jcmVnaW9uIC0tLS0gICBIb3N0IEJpbmRpbmcgICAtLS0tXG5cbiAgQEhvc3RCaW5kaW5nKCdjbGFzcycpXG4gIHByaXZhdGUgZ2V0IF9fY2xhc3MoKTogc3RyaW5nIHtcbiAgICBjb25zdCBjbHM6IGFueSA9IHt9O1xuICAgIGNsc1tgYXgtYmxvY2tgXSA9IHRydWU7XG4gICAgY2xzW2BheC1ib3JkZXJgXSA9IHRydWU7XG4gICAgY2xzW2BheC1yb3VuZGVkLW1kYF0gPSB0cnVlO1xuICAgIGNsc1tgYXgtbGlnaHRlc3Qtc3VyZmFjZWBdID0gdHJ1ZTtcbiAgICBjbHNbYGF4LWZsZXgtMWBdID0gdHJ1ZTtcbiAgICByZXR1cm4gY2xzO1xuICB9XG5cbiAgLy8jZW5kcmVnaW9uXG5cbn0gIl19","import { AXP_WIDGETS_EDITOR_CATEGORY, AXPWidgetGroupEnum } from '@acorex/platform/layout/builder';\nimport { AXP_DATA_PATH_PROPERTY, AXP_DISABLED_PROPERTY, AXP_LABEL_PROPERTY, AXP_NAME_PROPERTY, AXP_READONLY_PROPERTY } from '@acorex/platform/widgets';\nexport const AXPMetaSelectorWidget = {\n name: 'meta-selector-editor',\n title: 'Meta Selector',\n categories: AXP_WIDGETS_EDITOR_CATEGORY,\n groups: [AXPWidgetGroupEnum.FormElement],\n description: 'Selects metadata from available options',\n icon: 'fa-light fa-list-check',\n defaultFilterWidgetName: 'string-filter',\n type: 'editor',\n options: {\n needLabel: false,\n },\n properties: [\n AXP_NAME_PROPERTY,\n AXP_DATA_PATH_PROPERTY,\n AXP_LABEL_PROPERTY,\n AXP_READONLY_PROPERTY,\n AXP_DISABLED_PROPERTY,\n ],\n components: {\n designer: {\n component: () => import('./meta-selector-widget-designer.component').then((c) => c.AXPMetaSelectorWidgetDesignerComponent),\n },\n view: {\n component: () => import('./meta-selector-widget-view.component').then((c) => c.AXPMetaSelectorWidgetViewComponent),\n },\n edit: {\n component: () => import('./meta-selector-widget-edit.component').then((c) => c.AXPMetaSelectorWidgetEditComponent),\n },\n print: {\n component: () => import('./meta-selector-widget-edit.component').then((c) => c.AXPMetaSelectorWidgetEditComponent),\n },\n column: {\n component: () => import('./meta-selector-widget-column.component').then((c) => c.AXPMetaSelectorWidgetColumnComponent),\n },\n filter: {\n component: () => import('./meta-selector-widget-edit.component').then((c) => c.AXPMetaSelectorWidgetEditComponent),\n },\n },\n};\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWV0YS1zZWxlY3Rvci13aWRnZXQuY29uZmlnLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tb2R1bGVzL2RvY3VtZW50LW1hbmFnZW1lbnQvc3JjL2xpYi9mZWF0dXJlcy9tZXRhLWNob29zZS13aWRnZXQvbWV0YS1zZWxlY3Rvci13aWRnZXQuY29uZmlnLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSwyQkFBMkIsRUFBbUIsa0JBQWtCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUNuSCxPQUFPLEVBQUUsc0JBQXNCLEVBQUUscUJBQXFCLEVBQUUsa0JBQWtCLEVBQUUsaUJBQWlCLEVBQUUscUJBQXFCLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUV2SixNQUFNLENBQUMsTUFBTSxxQkFBcUIsR0FBcUQ7SUFDckYsSUFBSSxFQUFFLHNCQUFzQjtJQUM1QixLQUFLLEVBQUUsZUFBZTtJQUN0QixVQUFVLEVBQUUsMkJBQTJCO0lBQ3ZDLE1BQU0sRUFBRSxDQUFDLGtCQUFrQixDQUFDLFdBQVcsQ0FBQztJQUN4QyxXQUFXLEVBQUUseUNBQXlDO0lBQ3RELElBQUksRUFBRSx3QkFBd0I7SUFDOUIsdUJBQXVCLEVBQUUsZUFBZTtJQUN4QyxJQUFJLEVBQUUsUUFBUTtJQUNkLE9BQU8sRUFBRTtRQUNQLFNBQVMsRUFBRSxLQUFLO0tBQ2pCO0lBQ0QsVUFBVSxFQUFFO1FBQ1YsaUJBQWlCO1FBQ2pCLHNCQUFzQjtRQUN0QixrQkFBa0I7UUFDbEIscUJBQXFCO1FBQ3JCLHFCQUFxQjtLQUN0QjtJQUNELFVBQVUsRUFBRTtRQUNWLFFBQVEsRUFBRTtZQUNSLFNBQVMsRUFBRSxHQUFHLEVBQUUsQ0FBQyxNQUFNLENBQUMsMkNBQTJDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxzQ0FBc0MsQ0FBQztTQUMzSDtRQUNELElBQUksRUFBRTtZQUNKLFNBQVMsRUFBRSxHQUFHLEVBQUUsQ0FBQyxNQUFNLENBQUMsdUNBQXVDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxrQ0FBa0MsQ0FBQztTQUNuSDtRQUNELElBQUksRUFBRTtZQUNKLFNBQVMsRUFBRSxHQUFHLEVBQUUsQ0FBQyxNQUFNLENBQUMsdUNBQXVDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxrQ0FBa0MsQ0FBQztTQUNuSDtRQUNELEtBQUssRUFBRTtZQUNMLFNBQVMsRUFBRSxHQUFHLEVBQUUsQ0FBQyxNQUFNLENBQUMsdUNBQXVDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxrQ0FBa0MsQ0FBQztTQUNuSDtRQUNELE1BQU0sRUFBRTtZQUNOLFNBQVMsRUFBRSxHQUFHLEVBQUUsQ0FBQyxNQUFNLENBQUMseUNBQXlDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxvQ0FBb0MsQ0FBQztTQUN2SDtRQUNELE1BQU0sRUFBRTtZQUNOLFNBQVMsRUFBRSxHQUFHLEVBQUUsQ0FBQyxNQUFNLENBQUMsdUNBQXVDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxrQ0FBa0MsQ0FBQztTQUNuSDtLQUNGO0NBQ0YsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFYUF9XSURHRVRTX0VESVRPUl9DQVRFR09SWSwgQVhQV2lkZ2V0Q29uZmlnLCBBWFBXaWRnZXRHcm91cEVudW0gfSBmcm9tICdAYWNvcmV4L3BsYXRmb3JtL2xheW91dC9idWlsZGVyJztcbmltcG9ydCB7IEFYUF9EQVRBX1BBVEhfUFJPUEVSVFksIEFYUF9ESVNBQkxFRF9QUk9QRVJUWSwgQVhQX0xBQkVMX1BST1BFUlRZLCBBWFBfTkFNRV9QUk9QRVJUWSwgQVhQX1JFQURPTkxZX1BST1BFUlRZIH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS93aWRnZXRzJztcblxuZXhwb3J0IGNvbnN0IEFYUE1ldGFTZWxlY3RvcldpZGdldDogQVhQV2lkZ2V0Q29uZmlnPEFYUE1ldGFTZWxlY3RvcldpZGdldENvbmZpZ1R5cGU+ID0ge1xuICBuYW1lOiAnbWV0YS1zZWxlY3Rvci1lZGl0b3InLFxuICB0aXRsZTogJ01ldGEgU2VsZWN0b3InLFxuICBjYXRlZ29yaWVzOiBBWFBfV0lER0VUU19FRElUT1JfQ0FURUdPUlksXG4gIGdyb3VwczogW0FYUFdpZGdldEdyb3VwRW51bS5Gb3JtRWxlbWVudF0sXG4gIGRlc2NyaXB0aW9uOiAnU2VsZWN0cyBtZXRhZGF0YSBmcm9tIGF2YWlsYWJsZSBvcHRpb25zJyxcbiAgaWNvbjogJ2ZhLWxpZ2h0IGZhLWxpc3QtY2hlY2snLFxuICBkZWZhdWx0RmlsdGVyV2lkZ2V0TmFtZTogJ3N0cmluZy1maWx0ZXInLFxuICB0eXBlOiAnZWRpdG9yJyxcbiAgb3B0aW9uczoge1xuICAgIG5lZWRMYWJlbDogZmFsc2UsXG4gIH0sXG4gIHByb3BlcnRpZXM6IFtcbiAgICBBWFBfTkFNRV9QUk9QRVJUWSxcbiAgICBBWFBfREFUQV9QQVRIX1BST1BFUlRZLFxuICAgIEFYUF9MQUJFTF9QUk9QRVJUWSxcbiAgICBBWFBfUkVBRE9OTFlfUFJPUEVSVFksXG4gICAgQVhQX0RJU0FCTEVEX1BST1BFUlRZLFxuICBdLFxuICBjb21wb25lbnRzOiB7XG4gICAgZGVzaWduZXI6IHtcbiAgICAgIGNvbXBvbmVudDogKCkgPT4gaW1wb3J0KCcuL21ldGEtc2VsZWN0b3Itd2lkZ2V0LWRlc2lnbmVyLmNvbXBvbmVudCcpLnRoZW4oKGMpID0+IGMuQVhQTWV0YVNlbGVjdG9yV2lkZ2V0RGVzaWduZXJDb21wb25lbnQpLFxuICAgIH0sXG4gICAgdmlldzoge1xuICAgICAgY29tcG9uZW50OiAoKSA9PiBpbXBvcnQoJy4vbWV0YS1zZWxlY3Rvci13aWRnZXQtdmlldy5jb21wb25lbnQnKS50aGVuKChjKSA9PiBjLkFYUE1ldGFTZWxlY3RvcldpZGdldFZpZXdDb21wb25lbnQpLFxuICAgIH0sXG4gICAgZWRpdDoge1xuICAgICAgY29tcG9uZW50OiAoKSA9PiBpbXBvcnQoJy4vbWV0YS1zZWxlY3Rvci13aWRnZXQtZWRpdC5jb21wb25lbnQnKS50aGVuKChjKSA9PiBjLkFYUE1ldGFTZWxlY3RvcldpZGdldEVkaXRDb21wb25lbnQpLFxuICAgIH0sXG4gICAgcHJpbnQ6IHtcbiAgICAgIGNvbXBvbmVudDogKCkgPT4gaW1wb3J0KCcuL21ldGEtc2VsZWN0b3Itd2lkZ2V0LWVkaXQuY29tcG9uZW50JykudGhlbigoYykgPT4gYy5BWFBNZXRhU2VsZWN0b3JXaWRnZXRFZGl0Q29tcG9uZW50KSxcbiAgICB9LFxuICAgIGNvbHVtbjoge1xuICAgICAgY29tcG9uZW50OiAoKSA9PiBpbXBvcnQoJy4vbWV0YS1zZWxlY3Rvci13aWRnZXQtY29sdW1uLmNvbXBvbmVudCcpLnRoZW4oKGMpID0+IGMuQVhQTWV0YVNlbGVjdG9yV2lkZ2V0Q29sdW1uQ29tcG9uZW50KSxcbiAgICB9LFxuICAgIGZpbHRlcjoge1xuICAgICAgY29tcG9uZW50OiAoKSA9PiBpbXBvcnQoJy4vbWV0YS1zZWxlY3Rvci13aWRnZXQtZWRpdC5jb21wb25lbnQnKS50aGVuKChjKSA9PiBjLkFYUE1ldGFTZWxlY3RvcldpZGdldEVkaXRDb21wb25lbnQpLFxuICAgIH0sXG4gIH0sXG59O1xuXG5leHBvcnQgdHlwZSBBWFBNZXRhU2VsZWN0b3JXaWRnZXRDb25maWdUeXBlID0ge1xuICB0eXBlOiAnZWRpdG9yJztcbn07XG5cbiJdfQ==","import { AXP_WIDGETS_EDITOR_CATEGORY, AXPWidgetGroupEnum } from '@acorex/platform/layout/builder';\nimport { AXP_DATA_PATH_PROPERTY, AXP_DISABLED_PROPERTY, AXP_NAME_PROPERTY, AXP_READONLY_PROPERTY, AXP_REQUIRED_VALIDATION_PROPERTY, AXP_ALLOW_MULTIPLE_PROPERTY, AXP_DOWNLOADABLE_PROPERTY, AXP_DESCRIPTION_PROPERTY, AXP_BEHAVIOR_PROPERTY_GROUP, } from '@acorex/platform/widgets';\nexport const AXPDocumentUploaderWidget = {\n name: 'document-uploader',\n title: 'Document Uploader',\n description: 'Uploads and manages documents with metadata',\n icon: 'fa-light fa-file-upload',\n categories: AXP_WIDGETS_EDITOR_CATEGORY,\n groups: [AXPWidgetGroupEnum.FormElement],\n type: 'editor',\n properties: [\n AXP_NAME_PROPERTY,\n AXP_DATA_PATH_PROPERTY,\n AXP_READONLY_PROPERTY,\n AXP_DISABLED_PROPERTY,\n AXP_ALLOW_MULTIPLE_PROPERTY,\n AXP_DOWNLOADABLE_PROPERTY,\n AXP_DESCRIPTION_PROPERTY,\n AXP_REQUIRED_VALIDATION_PROPERTY,\n {\n name: 'accept',\n title: 'Accept',\n group: AXP_BEHAVIOR_PROPERTY_GROUP,\n schema: {\n dataType: 'string',\n interface: {\n name: 'accept',\n path: 'options.accept',\n type: 'text',\n },\n },\n visible: true,\n },\n {\n name: 'fileEditable',\n title: 'File Editable',\n group: AXP_BEHAVIOR_PROPERTY_GROUP,\n schema: {\n dataType: 'boolean',\n interface: {\n name: 'fileEditable',\n path: 'options.fileEditable',\n type: 'checkbox',\n },\n },\n visible: true,\n },\n ],\n components: {\n designer: {\n component: () => import('./document-uploader-designer.component').then((c) => c.AXPDocumentUploaderWidgetDesignerComponent),\n },\n view: {\n component: () => import('./document-uploader-view.component').then((c) => c.AXPDocumentUploaderWidgetViewComponent),\n },\n edit: {\n component: () => import('./document-uploader-edit.component').then((c) => c.AXPDocumentUploaderWidgetEditComponent),\n },\n filter: {\n component: () => import('./document-uploader-filter.component').then((c) => c.AXPDocumentUploaderWidgetFilterComponent),\n },\n column: {\n component: () => import('./document-uploader-column.component').then((c) => c.AXPDocumentUploaderWidgetColumnComponent),\n },\n print: {\n component: () => import('./document-uploader-print.component').then((c) => c.AXPDocumentUploaderWidgetPrintComponent),\n },\n },\n};\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG9jdW1lbnQtdXBsb2FkZXItd2lkZ2V0LmNvbmZpZy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbW9kdWxlcy9kb2N1bWVudC1tYW5hZ2VtZW50L3NyYy9saWIvZmVhdHVyZXMvd2lkZ2V0cy9hdHRhY2htZW50L2RvY3VtZW50LXVwbG9hZGVyLXdpZGdldC5jb25maWcudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLDJCQUEyQixFQUFtQixrQkFBa0IsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQ25ILE9BQU8sRUFDTCxzQkFBc0IsRUFDdEIscUJBQXFCLEVBQ3JCLGlCQUFpQixFQUNqQixxQkFBcUIsRUFDckIsZ0NBQWdDLEVBQ2hDLDJCQUEyQixFQUMzQix5QkFBeUIsRUFDekIsd0JBQXdCLEVBQ3hCLDJCQUEyQixHQUM1QixNQUFNLDBCQUEwQixDQUFDO0FBR2xDLE1BQU0sQ0FBQyxNQUFNLHlCQUF5QixHQUFvQjtJQUN4RCxJQUFJLEVBQUUsbUJBQW1CO0lBQ3pCLEtBQUssRUFBRSxtQkFBbUI7SUFDMUIsV0FBVyxFQUFFLDZDQUE2QztJQUMxRCxJQUFJLEVBQUUseUJBQXlCO0lBQy9CLFVBQVUsRUFBRSwyQkFBMkI7SUFDdkMsTUFBTSxFQUFFLENBQUMsa0JBQWtCLENBQUMsV0FBVyxDQUFDO0lBQ3hDLElBQUksRUFBRSxRQUFRO0lBQ2QsVUFBVSxFQUFFO1FBQ1YsaUJBQWlCO1FBQ2pCLHNCQUFzQjtRQUN0QixxQkFBcUI7UUFDckIscUJBQXFCO1FBQ3JCLDJCQUEyQjtRQUMzQix5QkFBeUI7UUFDekIsd0JBQXdCO1FBQ3hCLGdDQUFnQztRQUNoQztZQUNFLElBQUksRUFBRSxRQUFRO1lBQ2QsS0FBSyxFQUFFLFFBQVE7WUFDZixLQUFLLEVBQUUsMkJBQTJCO1lBQ2xDLE1BQU0sRUFBRTtnQkFDTixRQUFRLEVBQUUsUUFBUTtnQkFDbEIsU0FBUyxFQUFFO29CQUNULElBQUksRUFBRSxRQUFRO29CQUNkLElBQUksRUFBRSxnQkFBZ0I7b0JBQ3RCLElBQUksRUFBRSxNQUFNO2lCQUNiO2FBQ0Y7WUFDRCxPQUFPLEVBQUUsSUFBSTtTQUNkO1FBQ0Q7WUFDRSxJQUFJLEVBQUUsY0FBYztZQUNwQixLQUFLLEVBQUUsZUFBZTtZQUN0QixLQUFLLEVBQUUsMkJBQTJCO1lBQ2xDLE1BQU0sRUFBRTtnQkFDTixRQUFRLEVBQUUsU0FBUztnQkFDbkIsU0FBUyxFQUFFO29CQUNULElBQUksRUFBRSxjQUFjO29CQUNwQixJQUFJLEVBQUUsc0JBQXNCO29CQUM1QixJQUFJLEVBQUUsVUFBVTtpQkFDakI7YUFDRjtZQUNELE9BQU8sRUFBRSxJQUFJO1NBQ2Q7S0FDRjtJQUNELFVBQVUsRUFBRTtRQUNWLFFBQVEsRUFBRTtZQUNSLFNBQVMsRUFBRSxHQUFHLEVBQUUsQ0FDZCxNQUFNLENBQUMsd0NBQXdDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQywwQ0FBMEMsQ0FBQztTQUM3RztRQUNELElBQUksRUFBRTtZQUNKLFNBQVMsRUFBRSxHQUFHLEVBQUUsQ0FBQyxNQUFNLENBQUMsb0NBQW9DLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxzQ0FBc0MsQ0FBQztTQUNwSDtRQUNELElBQUksRUFBRTtZQUNKLFNBQVMsRUFBRSxHQUFHLEVBQUUsQ0FBQyxNQUFNLENBQUMsb0NBQW9DLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxzQ0FBc0MsQ0FBQztTQUNwSDtRQUNELE1BQU0sRUFBRTtZQUNOLFNBQVMsRUFBRSxHQUFHLEVBQUUsQ0FBQyxNQUFNLENBQUMsc0NBQXNDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyx3Q0FBd0MsQ0FBQztTQUN4SDtRQUNELE1BQU0sRUFBRTtZQUNOLFNBQVMsRUFBRSxHQUFHLEVBQUUsQ0FBQyxNQUFNLENBQUMsc0NBQXNDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyx3Q0FBd0MsQ0FBQztTQUN4SDtRQUNELEtBQUssRUFBRTtZQUNMLFNBQVMsRUFBRSxHQUFHLEVBQUUsQ0FBQyxNQUFNLENBQUMscUNBQXFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyx1Q0FBdUMsQ0FBQztTQUN0SDtLQUNGO0NBQ0YsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFYUF9XSURHRVRTX0VESVRPUl9DQVRFR09SWSwgQVhQV2lkZ2V0Q29uZmlnLCBBWFBXaWRnZXRHcm91cEVudW0gfSBmcm9tICdAYWNvcmV4L3BsYXRmb3JtL2xheW91dC9idWlsZGVyJztcbmltcG9ydCB7XG4gIEFYUF9EQVRBX1BBVEhfUFJPUEVSVFksXG4gIEFYUF9ESVNBQkxFRF9QUk9QRVJUWSxcbiAgQVhQX05BTUVfUFJPUEVSVFksXG4gIEFYUF9SRUFET05MWV9QUk9QRVJUWSxcbiAgQVhQX1JFUVVJUkVEX1ZBTElEQVRJT05fUFJPUEVSVFksXG4gIEFYUF9BTExPV19NVUxUSVBMRV9QUk9QRVJUWSxcbiAgQVhQX0RPV05MT0FEQUJMRV9QUk9QRVJUWSxcbiAgQVhQX0RFU0NSSVBUSU9OX1BST1BFUlRZLFxuICBBWFBfQkVIQVZJT1JfUFJPUEVSVFlfR1JPVVAsXG59IGZyb20gJ0BhY29yZXgvcGxhdGZvcm0vd2lkZ2V0cyc7XG5pbXBvcnQgeyBBWFBFeHByZXNzaW9uLCBBWFBSZXF1aXJlZFZhbGlkYXRpb25SdWxlIH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9jb3JlJztcblxuZXhwb3J0IGNvbnN0IEFYUERvY3VtZW50VXBsb2FkZXJXaWRnZXQ6IEFYUFdpZGdldENvbmZpZyA9IHtcbiAgbmFtZTogJ2RvY3VtZW50LXVwbG9hZGVyJyxcbiAgdGl0bGU6ICdEb2N1bWVudCBVcGxvYWRlcicsXG4gIGRlc2NyaXB0aW9uOiAnVXBsb2FkcyBhbmQgbWFuYWdlcyBkb2N1bWVudHMgd2l0aCBtZXRhZGF0YScsXG4gIGljb246ICdmYS1saWdodCBmYS1maWxlLXVwbG9hZCcsXG4gIGNhdGVnb3JpZXM6IEFYUF9XSURHRVRTX0VESVRPUl9DQVRFR09SWSxcbiAgZ3JvdXBzOiBbQVhQV2lkZ2V0R3JvdXBFbnVtLkZvcm1FbGVtZW50XSxcbiAgdHlwZTogJ2VkaXRvcicsXG4gIHByb3BlcnRpZXM6IFtcbiAgICBBWFBfTkFNRV9QUk9QRVJUWSxcbiAgICBBWFBfREFUQV9QQVRIX1BST1BFUlRZLFxuICAgIEFYUF9SRUFET05MWV9QUk9QRVJUWSxcbiAgICBBWFBfRElTQUJMRURfUFJPUEVSVFksXG4gICAgQVhQX0FMTE9XX01VTFRJUExFX1BST1BFUlRZLFxuICAgIEFYUF9ET1dOTE9BREFCTEVfUFJPUEVSVFksXG4gICAgQVhQX0RFU0NSSVBUSU9OX1BST1BFUlRZLFxuICAgIEFYUF9SRVFVSVJFRF9WQUxJREFUSU9OX1BST1BFUlRZLFxuICAgIHtcbiAgICAgIG5hbWU6ICdhY2NlcHQnLFxuICAgICAgdGl0bGU6ICdBY2NlcHQnLFxuICAgICAgZ3JvdXA6IEFYUF9CRUhBVklPUl9QUk9QRVJUWV9HUk9VUCxcbiAgICAgIHNjaGVtYToge1xuICAgICAgICBkYXRhVHlwZTogJ3N0cmluZycsXG4gICAgICAgIGludGVyZmFjZToge1xuICAgICAgICAgIG5hbWU6ICdhY2NlcHQnLFxuICAgICAgICAgIHBhdGg6ICdvcHRpb25zLmFjY2VwdCcsXG4gICAgICAgICAgdHlwZTogJ3RleHQnLFxuICAgICAgICB9LFxuICAgICAgfSxcbiAgICAgIHZpc2libGU6IHRydWUsXG4gICAgfSxcbiAgICB7XG4gICAgICBuYW1lOiAnZmlsZUVkaXRhYmxlJyxcbiAgICAgIHRpdGxlOiAnRmlsZSBFZGl0YWJsZScsXG4gICAgICBncm91cDogQVhQX0JFSEFWSU9SX1BST1BFUlRZX0dST1VQLFxuICAgICAgc2NoZW1hOiB7XG4gICAgICAgIGRhdGFUeXBlOiAnYm9vbGVhbicsXG4gICAgICAgIGludGVyZmFjZToge1xuICAgICAgICAgIG5hbWU6ICdmaWxlRWRpdGFibGUnLFxuICAgICAgICAgIHBhdGg6ICdvcHRpb25zLmZpbGVFZGl0YWJsZScsXG4gICAgICAgICAgdHlwZTogJ2NoZWNrYm94JyxcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgICB2aXNpYmxlOiB0cnVlLFxuICAgIH0sXG4gIF0sXG4gIGNvbXBvbmVudHM6IHtcbiAgICBkZXNpZ25lcjoge1xuICAgICAgY29tcG9uZW50OiAoKSA9PlxuICAgICAgICBpbXBvcnQoJy4vZG9jdW1lbnQtdXBsb2FkZXItZGVzaWduZXIuY29tcG9uZW50JykudGhlbigoYykgPT4gYy5BWFBEb2N1bWVudFVwbG9hZGVyV2lkZ2V0RGVzaWduZXJDb21wb25lbnQpLFxuICAgIH0sXG4gICAgdmlldzoge1xuICAgICAgY29tcG9uZW50OiAoKSA9PiBpbXBvcnQoJy4vZG9jdW1lbnQtdXBsb2FkZXItdmlldy5jb21wb25lbnQnKS50aGVuKChjKSA9PiBjLkFYUERvY3VtZW50VXBsb2FkZXJXaWRnZXRWaWV3Q29tcG9uZW50KSxcbiAgICB9LFxuICAgIGVkaXQ6IHtcbiAgICAgIGNvbXBvbmVudDogKCkgPT4gaW1wb3J0KCcuL2RvY3VtZW50LXVwbG9hZGVyLWVkaXQuY29tcG9uZW50JykudGhlbigoYykgPT4gYy5BWFBEb2N1bWVudFVwbG9hZGVyV2lkZ2V0RWRpdENvbXBvbmVudCksXG4gICAgfSxcbiAgICBmaWx0ZXI6IHtcbiAgICAgIGNvbXBvbmVudDogKCkgPT4gaW1wb3J0KCcuL2RvY3VtZW50LXVwbG9hZGVyLWZpbHRlci5jb21wb25lbnQnKS50aGVuKChjKSA9PiBjLkFYUERvY3VtZW50VXBsb2FkZXJXaWRnZXRGaWx0ZXJDb21wb25lbnQpLFxuICAgIH0sXG4gICAgY29sdW1uOiB7XG4gICAgICBjb21wb25lbnQ6ICgpID0+IGltcG9ydCgnLi9kb2N1bWVudC11cGxvYWRlci1jb2x1bW4uY29tcG9uZW50JykudGhlbigoYykgPT4gYy5BWFBEb2N1bWVudFVwbG9hZGVyV2lkZ2V0Q29sdW1uQ29tcG9uZW50KSxcbiAgICB9LFxuICAgIHByaW50OiB7XG4gICAgICBjb21wb25lbnQ6ICgpID0+IGltcG9ydCgnLi9kb2N1bWVudC11cGxvYWRlci1wcmludC5jb21wb25lbnQnKS50aGVuKChjKSA9PiBjLkFYUERvY3VtZW50VXBsb2FkZXJXaWRnZXRQcmludENvbXBvbmVudCksXG4gICAgfSxcbiAgfSxcbn07XG5cbmRlY2xhcmUgbW9kdWxlICdAYWNvcmV4L3BsYXRmb3JtL2xheW91dC9idWlsZGVyJyB7XG4gIGludGVyZmFjZSBBWFBXaWRnZXRUeXBlc01hcCB7XG4gICAgZG9jdW1lbnRVcGxvYWRlciA6ICdkb2N1bWVudC11cGxvYWRlcic7XG4gIH1cbn1cblxuZXhwb3J0IGludGVyZmFjZSBBWFBEb2N1bWVudFVwbG9hZGVyV2lkZ2V0T3B0aW9ucyB7XG4gIGRpc2FibGVkPzogYm9vbGVhbiB8IEFYUEV4cHJlc3Npb247XG4gIHJlYWRvbmx5PzogYm9vbGVhbiB8IEFYUEV4cHJlc3Npb247XG4gIG11bHRpcGxlPzogYm9vbGVhbjtcbiAgZG93bmxvYWRhYmxlPzogYm9vbGVhbjtcbiAgYWNjZXB0Pzogc3RyaW5nO1xuICBmaWxlRWRpdGFibGU/OiBib29sZWFuO1xuICB2YWxpZGF0aW9ucz86IEFYUFJlcXVpcmVkVmFsaWRhdGlvblJ1bGVbXTtcbn1cblxuXG5cbiJdfQ==","import { AXPValueWidgetComponent } from '@acorex/platform/layout/builder';\nimport { ChangeDetectionStrategy, Component, computed, HostBinding } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\nimport { AXButtonModule } from '@acorex/components/button';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXFormModule } from '@acorex/components/form';\nimport { AXLabelModule } from '@acorex/components/label';\nimport { AXTranslationModule } from '@acorex/core/translation';\nimport { CommonModule } from '@angular/common';\nimport * as i0 from \"@angular/core\";\nexport class AXPDocumentUploaderWidgetDesignerComponent extends AXPValueWidgetComponent {\n constructor() {\n super(...arguments);\n this.placeholder = computed(() => this.options()[\"placeholder\"] || \"Click to upload files\", ...(ngDevMode ? [{ debugName: \"placeholder\" }] : []));\n this.disabled = computed(() => this.options()[\"disabled\"], ...(ngDevMode ? [{ debugName: \"disabled\" }] : []));\n this.readonly = computed(() => this.options()[\"readonly\"], ...(ngDevMode ? [{ debugName: \"readonly\" }] : []));\n this.hasClearButton = computed(() => this.options()['hasClearButton'], ...(ngDevMode ? [{ debugName: \"hasClearButton\" }] : []));\n this.fileCount = computed(() => (this.getValue() ?? []).length, ...(ngDevMode ? [{ debugName: \"fileCount\" }] : []));\n this.hasFiles = computed(() => this.fileCount() > 0, ...(ngDevMode ? [{ debugName: \"hasFiles\" }] : []));\n }\n get __class() {\n const cls = {};\n cls[`ax-block`] = true;\n cls[`ax-flex-1`] = true;\n return cls;\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: AXPDocumentUploaderWidgetDesignerComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }\n static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"17.0.0\", version: \"20.1.8\", type: AXPDocumentUploaderWidgetDesignerComponent, isStandalone: true, selector: \"axp-document-uploader-widget-designer\", host: { properties: { \"class\": \"this.__class\" } }, usesInheritance: true, ngImport: i0, template: `\n <div class=\"ax-flex ax-flex-col ax-gap-2 ax-p-2 ax-border ax-rounded ax-border-dashed ax-border-gray-300\">\n <div class=\"ax-flex ax-items-center ax-gap-2\">\n <i class=\"fa-light fa-file-upload ax-text-gray-400\"></i>\n <span class=\"ax-text-sm ax-text-gray-600\">{{ placeholder() }}</span>\n </div>\n @if(hasFiles()){\n <div class=\"ax-text-xs ax-text-gray-500\">\n {{ fileCount() }} file(s) selected\n </div>\n }\n </div>\n `, isInline: true, dependencies: [{ kind: \"ngmodule\", type: FormsModule }, { kind: \"ngmodule\", type: AXButtonModule }, { kind: \"ngmodule\", type: AXDecoratorModule }, { kind: \"ngmodule\", type: AXFormModule }, { kind: \"ngmodule\", type: AXLabelModule }, { kind: \"ngmodule\", type: AXTranslationModule }, { kind: \"ngmodule\", type: CommonModule }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: AXPDocumentUploaderWidgetDesignerComponent, decorators: [{\n type: Component,\n args: [{\n selector: 'axp-document-uploader-widget-designer',\n template: `\n <div class=\"ax-flex ax-flex-col ax-gap-2 ax-p-2 ax-border ax-rounded ax-border-dashed ax-border-gray-300\">\n <div class=\"ax-flex ax-items-center ax-gap-2\">\n <i class=\"fa-light fa-file-upload ax-text-gray-400\"></i>\n <span class=\"ax-text-sm ax-text-gray-600\">{{ placeholder() }}</span>\n </div>\n @if(hasFiles()){\n <div class=\"ax-text-xs ax-text-gray-500\">\n {{ fileCount() }} file(s) selected\n </div>\n }\n </div>\n `,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [FormsModule, AXButtonModule, AXDecoratorModule, AXFormModule, AXLabelModule, AXTranslationModule, CommonModule]\n }]\n }], propDecorators: { __class: [{\n type: HostBinding,\n args: ['class']\n }] } });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG9jdW1lbnQtdXBsb2FkZXItZGVzaWduZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tb2R1bGVzL2RvY3VtZW50LW1hbmFnZW1lbnQvc3JjL2xpYi9mZWF0dXJlcy93aWRnZXRzL2F0dGFjaG1lbnQvZG9jdW1lbnQtdXBsb2FkZXItZGVzaWduZXIuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBRzFFLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsUUFBUSxFQUFFLFdBQVcsRUFBVSxNQUFNLGVBQWUsQ0FBQztBQUNsRyxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDN0MsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQzNELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQ2xFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUN2RCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDekQsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDL0QsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDOztBQW9CL0MsTUFBTSxPQUFPLDBDQUEyQyxTQUFRLHVCQUEwQztJQWxCMUc7O1FBb0JZLGdCQUFXLEdBQUcsUUFBUSxDQUFTLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQyxhQUFhLENBQVcsSUFBSSx1QkFBdUIsdURBQUMsQ0FBQztRQUN6RyxhQUFRLEdBQUcsUUFBUSxDQUFVLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQyxVQUFVLENBQVksb0RBQUMsQ0FBQztRQUMxRSxhQUFRLEdBQUcsUUFBUSxDQUFVLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQyxVQUFVLENBQVksb0RBQUMsQ0FBQztRQUMxRSxtQkFBYyxHQUFHLFFBQVEsQ0FBVSxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUMsZ0JBQWdCLENBQVksMERBQUMsQ0FBQztRQUN0RixjQUFTLEdBQUcsUUFBUSxDQUFTLEdBQUcsRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDLE1BQU0scURBQUMsQ0FBQztRQUNuRSxhQUFRLEdBQUcsUUFBUSxDQUFVLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUUsR0FBRyxDQUFDLG9EQUFDLENBQUM7S0FTcEU7SUFQQyxJQUNZLE9BQU87UUFDakIsTUFBTSxHQUFHLEdBQVEsRUFBRSxDQUFDO1FBQ3BCLEdBQUcsQ0FBQyxVQUFVLENBQUMsR0FBRyxJQUFJLENBQUM7UUFDdkIsR0FBRyxDQUFDLFdBQVcsQ0FBQyxHQUFHLElBQUksQ0FBQztRQUN4QixPQUFPLEdBQUcsQ0FBQztJQUNiLENBQUM7OEdBZlUsMENBQTBDO2tHQUExQywwQ0FBMEMsMktBaEIzQzs7Ozs7Ozs7Ozs7O0dBWVQsMkRBRVMsV0FBVyw4QkFBRSxjQUFjLDhCQUFFLGlCQUFpQiw4QkFBRSxZQUFZLDhCQUFFLGFBQWEsOEJBQUUsbUJBQW1CLDhCQUFFLFlBQVk7OzJGQUU3RywwQ0FBMEM7a0JBbEJ0RCxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSx1Q0FBdUM7b0JBQ2pELFFBQVEsRUFBRTs7Ozs7Ozs7Ozs7O0dBWVQ7b0JBQ0QsZUFBZSxFQUFFLHVCQUF1QixDQUFDLE1BQU07b0JBQy9DLE9BQU8sRUFBRSxDQUFDLFdBQVcsRUFBRSxjQUFjLEVBQUUsaUJBQWlCLEVBQUUsWUFBWSxFQUFFLGFBQWEsRUFBRSxtQkFBbUIsRUFBRSxZQUFZLENBQUM7aUJBQzFIOzhCQVdhLE9BQU87c0JBRGxCLFdBQVc7dUJBQUMsT0FBTyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFYUFZhbHVlV2lkZ2V0Q29tcG9uZW50IH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9sYXlvdXQvYnVpbGRlcic7XG5pbXBvcnQgeyBBWFBGaWxlTGlzdEl0ZW0gfSBmcm9tICdAYWNvcmV4L3BsYXRmb3JtL2NvcmUnO1xuXG5pbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBjb21wdXRlZCwgSG9zdEJpbmRpbmcsIGluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBBWEJ1dHRvbk1vZHVsZSB9IGZyb20gJ0BhY29yZXgvY29tcG9uZW50cy9idXR0b24nO1xuaW1wb3J0IHsgQVhEZWNvcmF0b3JNb2R1bGUgfSBmcm9tICdAYWNvcmV4L2NvbXBvbmVudHMvZGVjb3JhdG9ycyc7XG5pbXBvcnQgeyBBWEZvcm1Nb2R1bGUgfSBmcm9tICdAYWNvcmV4L2NvbXBvbmVudHMvZm9ybSc7XG5pbXBvcnQgeyBBWExhYmVsTW9kdWxlIH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL2xhYmVsJztcbmltcG9ydCB7IEFYVHJhbnNsYXRpb25Nb2R1bGUgfSBmcm9tICdAYWNvcmV4L2NvcmUvdHJhbnNsYXRpb24nO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYXhwLWRvY3VtZW50LXVwbG9hZGVyLXdpZGdldC1kZXNpZ25lcicsXG4gIHRlbXBsYXRlOiBgXG4gICAgPGRpdiBjbGFzcz1cImF4LWZsZXggYXgtZmxleC1jb2wgYXgtZ2FwLTIgYXgtcC0yIGF4LWJvcmRlciBheC1yb3VuZGVkIGF4LWJvcmRlci1kYXNoZWQgYXgtYm9yZGVyLWdyYXktMzAwXCI+XG4gICAgICA8ZGl2IGNsYXNzPVwiYXgtZmxleCBheC1pdGVtcy1jZW50ZXIgYXgtZ2FwLTJcIj5cbiAgICAgICAgPGkgY2xhc3M9XCJmYS1saWdodCBmYS1maWxlLXVwbG9hZCBheC10ZXh0LWdyYXktNDAwXCI+PC9pPlxuICAgICAgICA8c3BhbiBjbGFzcz1cImF4LXRleHQtc20gYXgtdGV4dC1ncmF5LTYwMFwiPnt7IHBsYWNlaG9sZGVyKCkgfX08L3NwYW4+XG4gICAgICA8L2Rpdj5cbiAgICAgIEBpZihoYXNGaWxlcygpKXtcbiAgICAgICAgPGRpdiBjbGFzcz1cImF4LXRleHQteHMgYXgtdGV4dC1ncmF5LTUwMFwiPlxuICAgICAgICAgIHt7IGZpbGVDb3VudCgpIH19IGZpbGUocykgc2VsZWN0ZWRcbiAgICAgICAgPC9kaXY+XG4gICAgICB9XG4gICAgPC9kaXY+XG4gIGAsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBpbXBvcnRzOiBbRm9ybXNNb2R1bGUsIEFYQnV0dG9uTW9kdWxlLCBBWERlY29yYXRvck1vZHVsZSwgQVhGb3JtTW9kdWxlLCBBWExhYmVsTW9kdWxlLCBBWFRyYW5zbGF0aW9uTW9kdWxlLCBDb21tb25Nb2R1bGVdXG59KVxuZXhwb3J0IGNsYXNzIEFYUERvY3VtZW50VXBsb2FkZXJXaWRnZXREZXNpZ25lckNvbXBvbmVudCBleHRlbmRzIEFYUFZhbHVlV2lkZ2V0Q29tcG9uZW50PEFYUEZpbGVMaXN0SXRlbVtdPiB7XG5cbiAgcHJvdGVjdGVkIHBsYWNlaG9sZGVyID0gY29tcHV0ZWQ8c3RyaW5nPigoKSA9PiB0aGlzLm9wdGlvbnMoKVtcInBsYWNlaG9sZGVyXCJdIGFzIHN0cmluZyB8fCBcIkNsaWNrIHRvIHVwbG9hZCBmaWxlc1wiKTtcbiAgcHJvdGVjdGVkIGRpc2FibGVkID0gY29tcHV0ZWQ8Ym9vbGVhbj4oKCkgPT4gdGhpcy5vcHRpb25zKClbXCJkaXNhYmxlZFwiXSBhcyBib29sZWFuKTtcbiAgcHJvdGVjdGVkIHJlYWRvbmx5ID0gY29tcHV0ZWQ8Ym9vbGVhbj4oKCkgPT4gdGhpcy5vcHRpb25zKClbXCJyZWFkb25seVwiXSBhcyBib29sZWFuKTtcbiAgcHJvdGVjdGVkIGhhc0NsZWFyQnV0dG9uID0gY29tcHV0ZWQ8Ym9vbGVhbj4oKCkgPT4gdGhpcy5vcHRpb25zKClbJ2hhc0NsZWFyQnV0dG9uJ10gYXMgYm9vbGVhbik7XG4gIHByb3RlY3RlZCBmaWxlQ291bnQgPSBjb21wdXRlZDxudW1iZXI+KCgpID0+ICh0aGlzLmdldFZhbHVlKCkgPz8gW10pLmxlbmd0aCk7XG4gIHByb3RlY3RlZCBoYXNGaWxlcyA9IGNvbXB1dGVkPGJvb2xlYW4+KCgpID0+IHRoaXMuZmlsZUNvdW50KCkgPiAwKTtcblxuICBASG9zdEJpbmRpbmcoJ2NsYXNzJylcbiAgcHJpdmF0ZSBnZXQgX19jbGFzcygpOiBzdHJpbmcge1xuICAgIGNvbnN0IGNsczogYW55ID0ge307XG4gICAgY2xzW2BheC1ibG9ja2BdID0gdHJ1ZTtcbiAgICBjbHNbYGF4LWZsZXgtMWBdID0gdHJ1ZTtcbiAgICByZXR1cm4gY2xzO1xuICB9XG59Il19","import { AXPValueWidgetComponent } from '@acorex/platform/layout/builder';\nimport { AXButtonModule } from '@acorex/components/button';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXFormModule } from '@acorex/components/form';\nimport { AXLabelModule } from '@acorex/components/label';\nimport { AXFileService } from '@acorex/core/file';\nimport { AXTranslationModule } from '@acorex/core/translation';\nimport { AXPDynamicFormComponent, } from '@acorex/platform/layout/components';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, computed, inject, signal } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\nimport * as i0 from \"@angular/core\";\nexport class AXPDocumentUploaderWidgetEditComponent extends AXPValueWidgetComponent {\n constructor() {\n super(...arguments);\n this.fileService = inject(AXFileService);\n this.readonly = computed(() => this.options()['readonly'], ...(ngDevMode ? [{ debugName: \"readonly\" }] : []));\n this.formDefinition = signal({\n groups: [],\n }, ...(ngDevMode ? [{ debugName: \"formDefinition\" }] : []));\n this.formContext = signal({}, ...(ngDevMode ? [{ debugName: \"formContext\" }] : []));\n this.defaultLayout = computed(() => {\n return {\n positions: {\n default: {\n colSpan: 12,\n },\n },\n };\n }, ...(ngDevMode ? [{ debugName: \"defaultLayout\" }] : []));\n }\n ngOnInit() {\n this.renderForm();\n //\n super.ngOnInit();\n }\n async renderForm() {\n const groups = await Promise.all(this.getValue().map(async (item, index) => {\n const docType = item.documentType;\n return {\n name: item.id ?? item.name,\n title: item.name,\n parameters: [\n ...(await Promise.all(Object.values(item.meta ?? {}).map(async (m) => {\n const meta = docType?.meta.find((meta) => meta.name === m.name);\n let node = typeof meta?.interface === 'function'\n ? await meta?.interface()\n : JSON.parse(meta?.interface)['children'][0]['children'][0];\n node = {\n ...node,\n path: `files[${index}].${meta?.name}`,\n defaultValue: m.value,\n };\n return {\n path: `files[${index}].${meta?.name}`,\n title: meta?.title,\n widget: node,\n };\n }))),\n {\n path: `files[${index}].file`,\n title: 'File',\n widget: {\n path: `files[${index}].file`,\n type: 'file-uploader',\n defaultValue: [item],\n options: {\n fileEditable: false,\n readonly: true,\n accept: docType?.type.selectedItems.map((item) => `.${item.name.split('.')[1]}`).join(','),\n },\n },\n },\n ],\n };\n }));\n this.formDefinition.set({\n groups,\n });\n }\n handleContextChange(event) {\n this.formContext.set(event);\n console.log(this.formContext());\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: AXPDocumentUploaderWidgetEditComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }\n static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"14.0.0\", version: \"20.1.8\", type: AXPDocumentUploaderWidgetEditComponent, isStandalone: true, selector: \"axp-document-uploader-widget-edit\", usesInheritance: true, ngImport: i0, template: `\n <div class=\"ax-flex ax-flex-col ax-py-4 ax-px-6\">\n <axp-dynamic-form\n [formDefinition]=\"formDefinition()\"\n [context]=\"formContext()\"\n [layoutConfig]=\"defaultLayout()\"\n [layoutLook]=\"'compact'\"\n (contextChange)=\"handleContextChange($event)\"\n >\n </axp-dynamic-form>\n </div>\n `, isInline: true, dependencies: [{ kind: \"ngmodule\", type: FormsModule }, { kind: \"ngmodule\", type: AXButtonModule }, { kind: \"ngmodule\", type: AXDecoratorModule }, { kind: \"ngmodule\", type: AXFormModule }, { kind: \"ngmodule\", type: AXLabelModule }, { kind: \"ngmodule\", type: AXTranslationModule }, { kind: \"ngmodule\", type: CommonModule }, { kind: \"component\", type: AXPDynamicFormComponent, selector: \"axp-dynamic-form\", inputs: [\"formDefinition\", \"context\", \"layoutLook\", \"layoutDirection\", \"layoutConfig\"], outputs: [\"contextChange\", \"contextInitiated\", \"validityChange\"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: AXPDocumentUploaderWidgetEditComponent, decorators: [{\n type: Component,\n args: [{\n selector: 'axp-document-uploader-widget-edit',\n template: `\n <div class=\"ax-flex ax-flex-col ax-py-4 ax-px-6\">\n <axp-dynamic-form\n [formDefinition]=\"formDefinition()\"\n [context]=\"formContext()\"\n [layoutConfig]=\"defaultLayout()\"\n [layoutLook]=\"'compact'\"\n (contextChange)=\"handleContextChange($event)\"\n >\n </axp-dynamic-form>\n </div>\n `,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [\n FormsModule,\n AXButtonModule,\n AXDecoratorModule,\n AXFormModule,\n AXLabelModule,\n AXTranslationModule,\n CommonModule,\n AXPDynamicFormComponent,\n ],\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG9jdW1lbnQtdXBsb2FkZXItZWRpdC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL21vZHVsZXMvZG9jdW1lbnQtbWFuYWdlbWVudC9zcmMvbGliL2ZlYXR1cmVzL3dpZGdldHMvYXR0YWNobWVudC9kb2N1bWVudC11cGxvYWRlci1lZGl0LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsdUJBQXVCLEVBQWlCLE1BQU0saUNBQWlDLENBQUM7QUFFekYsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQzNELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQ2xFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUN2RCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDekQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ2xELE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQy9ELE9BQU8sRUFDTCx1QkFBdUIsR0FJeEIsTUFBTSxvQ0FBb0MsQ0FBQztBQUM1QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxRQUFRLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM3RixPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7O0FBNkI3QyxNQUFNLE9BQU8sc0NBQXVDLFNBQVEsdUJBRTNEO0lBNUJEOztRQTZCcUIsZ0JBQVcsR0FBRyxNQUFNLENBQUMsYUFBYSxDQUFDLENBQUM7UUFFN0MsYUFBUSxHQUFHLFFBQVEsQ0FBVSxHQUFHLEVBQUUsQ0FBQyxJQUFJLENB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QUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQzs2QkFDM0Y7eUJBQ2U7cUJBQ25CO2lCQUNGO2FBQ0YsQ0FBQztRQUNKLENBQUMsQ0FBQyxDQUNILENBQUM7UUFFRixJQUFJLENBQUMsY0FBYyxDQUFDLEdBQUcsQ0FBQztZQUN0QixNQUFNO1NBQ1AsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVTLG1CQUFtQixDQUFDLEtBQTRCO1FBQ3hELElBQUksQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQzVCLE9BQU8sQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDLENBQUM7SUFDbEMsQ0FBQzs4R0FuRlUsc0NBQXNDO2tHQUF0QyxzQ0FBc0Msb0hBeEJ2Qzs7Ozs7Ozs7Ozs7R0FXVCwyREFHQyxXQUFXLDhCQUNYLGNBQWMsOEJBQ2QsaUJBQWlCLDhCQUNqQixZQUFZLDhCQUNaLGFBQWEsOEJBQ2IsbUJBQW1CLDhCQUNuQixZQUFZLCtCQUNaLHVCQUF1Qjs7MkZBR2Qsc0NBQXNDO2tCQTFCbEQsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsbUNBQW1DO29CQUM3QyxRQUFRLEVBQUU7Ozs7Ozs7Ozs7O0dBV1Q7b0JBQ0QsZUFBZSxFQUFFLHVCQUF1QixDQUFDLE1BQU07b0JBQy9DLE9BQU8sRUFBRTt3QkFDUCxXQUFXO3dCQUNYLGNBQWM7d0JBQ2QsaUJBQWlCO3dCQUNqQixZQUFZO3dCQUNaLGFBQWE7d0JBQ2IsbUJBQW1CO3dCQUNuQixZQUFZO3dCQUNaLHVCQUF1QjtxQkFDeEI7aUJBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBWFBDb250ZXh0Q2hhbmdlRXZlbnQsIEFYUENvbnRleHREYXRhIH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9jb3JlJztcbmltcG9ydCB7IEFYUFZhbHVlV2lkZ2V0Q29tcG9uZW50LCBBWFBXaWRnZXROb2RlIH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9sYXlvdXQvYnVpbGRlcic7XG5cbmltcG9ydCB7IEFYQnV0dG9uTW9kdWxlIH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL2J1dHRvbic7XG5pbXBvcnQgeyBBWERlY29yYXRvck1vZHVsZSB9IGZyb20gJ0BhY29yZXgvY29tcG9uZW50cy9kZWNvcmF0b3JzJztcbmltcG9ydCB7IEFYRm9ybU1vZHVsZSB9IGZyb20gJ0BhY29yZXgvY29tcG9uZW50cy9mb3JtJztcbmltcG9ydCB7IEFYTGFiZWxNb2R1bGUgfSBmcm9tICdAYWNvcmV4L2NvbXBvbmVudHMvbGFiZWwnO1xuaW1wb3J0IHsgQVhGaWxlU2VydmljZSB9IGZyb20gJ0BhY29yZXgvY29yZS9maWxlJztcbmltcG9ydCB7IEFYVHJhbnNsYXRpb25Nb2R1bGUgfSBmcm9tICdAYWNvcmV4L2NvcmUvdHJhbnNsYXRpb24nO1xuaW1wb3J0IHtcbiAgQVhQRHluYW1pY0Zvcm1Db21wb25lbnQsXG4gIEFYUER5bmFtaWNGb3JtRGVmaW5pdGlvbixcbiAgQVhQRHluYW1pY0Zvcm1GaWVsZERlZmluaXRpb24sXG4gIEFYUER5bmFtaWNGb3JtR3JvdXBEZWZpbml0aW9uLFxufSBmcm9tICdAYWNvcmV4L3BsYXRmb3JtL2xheW91dC9jb21wb25lbnRzJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBjb21wdXRlZCwgaW5qZWN0LCBzaWduYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgQVhNRG9jdW1lbnRNYW5hZ2VtZW50RG9jdW1lbnRFbnRpdHlNb2RlbCB9IGZyb20gJy4uLy4uLy4uL2VudGl0aWVzJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYXhwLWRvY3VtZW50LXVwbG9hZGVyLXdpZGdldC1lZGl0JyxcbiAgdGVtcGxhdGU6IGBcbiAgICA8ZGl2IGNsYXNzPVwiYXgtZmxleCBheC1mbGV4LWNvbCBheC1weS00IGF4LXB4LTZcIj5cbiAgICAgIDxheHAtZHluYW1pYy1mb3JtXG4gICAgICAgIFtmb3JtRGVmaW5pdGlvbl09XCJmb3JtRGVmaW5pdGlvbigpXCJcbiAgICAgICAgW2NvbnRleHRdPVwiZm9ybUNvbnRleHQoKVwiXG4gICAgICAgIFtsYXlvdXRDb25maWddPVwiZGVmYXVsdExheW91dCgpXCJcbiAgICAgICAgW2xheW91dExvb2tdPVwiJ2NvbXBhY3QnXCJcbiAgICAgICAgKGNvbnRleHRDaGFuZ2UpPVwiaGFuZGxlQ29udGV4dENoYW5nZSgkZXZlbnQpXCJcbiAgICAgID5cbiAgICAgIDwvYXhwLWR5bmFtaWMtZm9ybT5cbiAgICA8L2Rpdj5cbiAgYCxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIGltcG9ydHM6IFtcbiAgICBGb3Jtc01vZHVsZSxcbiAgICBBWEJ1dHRvbk1vZHVsZSxcbiAgICBBWERlY29yYXRvck1vZHVsZSxcbiAgICBBWEZvcm1Nb2R1bGUsXG4gICAgQVhMYWJlbE1vZHVsZSxcbiAgICBBWFRyYW5zbGF0aW9uTW9kdWxlLFxuICAgIENvbW1vbk1vZHVsZSxcbiAgICBBWFBEeW5hbWljRm9ybUNvbXBvbmVudCxcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgQVhQRG9jdW1lbnRVcGxvYWRlcldpZGdldEVkaXRDb21wb25lbnQgZXh0ZW5kcyBBWFBWYWx1ZVdpZGdldENvbXBvbmVudDxcbiAgQVhNRG9jdW1lbnRNYW5hZ2VtZW50RG9jdW1lbnRFbnRpdHlNb2RlbFtdXG4+IHtcbiAgcHJvdGVjdGVkIHJlYWRvbmx5IGZpbGVTZXJ2aWNlID0gaW5qZWN0KEFYRmlsZVNlcnZpY2UpO1xuXG4gIHByb3RlY3RlZCByZWFkb25seSA9IGNvbXB1dGVkPGJvb2xlYW4+KCgpID0+IHRoaXMub3B0aW9ucygpWydyZWFkb25seSddIGFzIGJvb2xlYW4pO1xuXG4gIHByb3RlY3RlZCBmb3JtRGVmaW5pdGlvbiA9IHNpZ25hbDxBWFBEeW5hbWljRm9ybURlZmluaXRpb24+KHtcbiAgICBncm91cHM6IFtdLFxuICB9KTtcblxuICBwcm90ZWN0ZWQgZm9ybUNvbnRleHQgPSBzaWduYWw8QVhQQ29udGV4dERhdGE+KHt9KTtcblxuICBwcm90ZWN0ZWQgZGVmYXVsdExheW91dCA9IGNvbXB1dGVkKCgpID0+IHtcbiAgICByZXR1cm4ge1xuICAgICAgcG9zaXRpb25zOiB7XG4gICAgICAgIGRlZmF1bHQ6IHtcbiAgICAgICAgICBjb2xTcGFuOiAxMixcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgfTtcbiAgfSk7XG5cbiAgb3ZlcnJpZGUgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5yZW5kZXJGb3JtKCk7XG4gICAgLy9cbiAgICBzdXBlci5uZ09uSW5pdCgpO1xuICB9XG5cbiAgcHJpdmF0ZSBhc3luYyByZW5kZXJGb3JtKCkge1xuICAgIGNvbnN0IGdyb3VwczogQVhQRHluYW1pY0Zvcm1Hcm91cERlZmluaXRpb25bXSA9IGF3YWl0IFByb21pc2UuYWxsKFxuICAgICAgdGhpcy5nZXRWYWx1ZSgpLm1hcChhc3luYyAoaXRlbSwgaW5kZXgpID0+IHtcbiAgICAgICAgY29uc3QgZG9jVHlwZSA9IGl0ZW0uZG9jdW1lbnRUeXBlO1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgIG5hbWU6IGl0ZW0uaWQgPz8gaXRlbS5uYW1lLFxuICAgICAgICAgIHRpdGxlOiBpdGVtLm5hbWUsXG4gICAgICAgICAgcGFyYW1ldGVyczogW1xuICAgICAgICAgICAgLi4uKGF3YWl0IFByb21pc2UuYWxsKFxuICAgICAgICAgICAgICBPYmplY3QudmFsdWVzKGl0ZW0ubWV0YSA/PyB7fSkubWFwPFByb21pc2U8QVhQRHluYW1pY0Zvcm1GaWVsZERlZmluaXRpb24+Pihhc3luYyAobSkgPT4ge1xuICAgICAgICAgICAgICAgIGNvbnN0IG1ldGEgPSBkb2NUeXBlPy5tZXRhLmZpbmQoKG1ldGEpID0+IG1ldGEubmFtZSA9PT0gbS5uYW1lKTtcbiAgICAgICAgICAgICAgICBsZXQgbm9kZTogQVhQV2lkZ2V0Tm9kZSA9XG4gICAgICAgICAgICAgICAgICB0eXBlb2YgbWV0YT8uaW50ZXJmYWNlID09PSAnZnVuY3Rpb24nXG4gICAgICAgICAgICAgICAgICAgID8gYXdhaXQgbWV0YT8uaW50ZXJmYWNlKClcbiAgICAgICAgICAgICAgICAgICAgOiBKU09OLnBhcnNlKG1ldGE/LmludGVyZmFjZSBhcyBzdHJpbmcpWydjaGlsZHJlbiddWzBdWydjaGlsZHJlbiddWzBdO1xuICAgICAgICAgICAgICAgIG5vZGUgPSB7XG4gICAgICAgICAgICAgICAgICAuLi5ub2RlLFxuICAgICAgICAgICAgICAgICAgcGF0aDogYGZpbGVzWyR7aW5kZXh9XS4ke21ldGE/Lm5hbWV9YCxcbiAgICAgICAgICAgICAgICAgIGRlZmF1bHRWYWx1ZTogbS52YWx1ZSxcbiAgICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgICAgICBwYXRoOiBgZmlsZXNbJHtpbmRleH1dLiR7bWV0YT8ubmFtZX1gLFxuICAgICAgICAgICAgICAgICAgdGl0bGU6IG1ldGE/LnRpdGxlLFxuICAgICAgICAgICAgICAgICAgd2lkZ2V0OiBub2RlLFxuICAgICAgICAgICAgICAgIH07XG4gICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgKSksXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIHBhdGg6IGBmaWxlc1ske2luZGV4fV0uZmlsZWAsXG4gICAgICAgICAgICAgIHRpdGxlOiAnRmlsZScsXG4gICAgICAgICAgICAgIHdpZGdldDoge1xuICAgICAgICAgICAgICAgIHBhdGg6IGBmaWxlc1ske2luZGV4fV0uZmlsZWAsXG4gICAgICAgICAgICAgICAgdHlwZTogJ2ZpbGUtdXBsb2FkZXInLFxuICAgICAgICAgICAgICAgIGRlZmF1bHRWYWx1ZTogW2l0ZW1dLFxuICAgICAgICAgICAgICAgIG9wdGlvbnM6IHtcbiAgICAgICAgICAgICAgICAgIGZpbGVFZGl0YWJsZTogZmFsc2UsXG4gICAgICAgICAgICAgICAgICByZWFkb25seTogdHJ1ZSxcbiAgICAgICAgICAgICAgICAgIGFjY2VwdDogZG9jVHlwZT8udHlwZS5zZWxlY3RlZEl0ZW1zLm1hcCgoaXRlbSkgPT4gYC4ke2l0ZW0ubmFtZS5zcGxpdCgnLicpWzFdfWApLmpvaW4oJywnKSxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICB9IGFzIEFYUFdpZGdldE5vZGUsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIF0sXG4gICAgICAgIH07XG4gICAgICB9KSxcbiAgICApO1xuXG4gICAgdGhpcy5mb3JtRGVmaW5pdGlvbi5zZXQoe1xuICAgICAgZ3JvdXBzLFxuICAgIH0pO1xuICB9XG5cbiAgcHJvdGVjdGVkIGhhbmRsZUNvbnRleHRDaGFuZ2UoZXZlbnQ6IEFYUENvbnRleHRDaGFuZ2VFdmVudCkge1xuICAgIHRoaXMuZm9ybUNvbnRleHQuc2V0KGV2ZW50KTtcbiAgICBjb25zb2xlLmxvZyh0aGlzLmZvcm1Db250ZXh0KCkpO1xuICB9XG59XG4iXX0=","import { AXPLayoutBuilderModule, AXPValueWidgetComponent } from '@acorex/platform/layout/builder';\nimport { ChangeDetectionStrategy, Component, computed } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { AXButtonModule } from '@acorex/components/button';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXTranslationModule } from '@acorex/core/translation';\nimport * as i0 from \"@angular/core\";\nimport * as i1 from \"@acorex/platform/layout/builder\";\nexport class AXPDocumentUploaderWidgetViewComponent extends AXPValueWidgetComponent {\n constructor() {\n super(...arguments);\n this.fileUploaderNode = computed(() => ({\n type: 'file-uploader',\n path: `${this.path}.fileId`,\n options: {\n readOnly: true,\n },\n }), ...(ngDevMode ? [{ debugName: \"fileUploaderNode\" }] : []));\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: AXPDocumentUploaderWidgetViewComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }\n static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"14.0.0\", version: \"20.1.8\", type: AXPDocumentUploaderWidgetViewComponent, isStandalone: true, selector: \"axp-document-uploader-widget-view\", usesInheritance: true, ngImport: i0, template: `\n <ng-container axp-widget-renderer [node]=\"fileUploaderNode()\" [mode]=\"'view'\"> </ng-container> \n `, isInline: true, dependencies: [{ kind: \"ngmodule\", type: CommonModule }, { kind: \"ngmodule\", type: AXButtonModule }, { kind: \"ngmodule\", type: AXDecoratorModule }, { kind: \"ngmodule\", type: AXTranslationModule }, { kind: \"ngmodule\", type: AXPLayoutBuilderModule }, { kind: \"directive\", type: i1.AXPWidgetRendererDirective, selector: \"[axp-widget-renderer]\", inputs: [\"parentNode\", \"index\", \"mode\", \"node\"], outputs: [\"onOptionsChanged\", \"onValueChanged\"], exportAs: [\"widgetRenderer\"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: AXPDocumentUploaderWidgetViewComponent, decorators: [{\n type: Component,\n args: [{\n selector: 'axp-document-uploader-widget-view',\n template: `\n <ng-container axp-widget-renderer [node]=\"fileUploaderNode()\" [mode]=\"'view'\"> </ng-container> \n `,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule, AXButtonModule, AXDecoratorModule, AXTranslationModule, AXPLayoutBuilderModule]\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG9jdW1lbnQtdXBsb2FkZXItdmlldy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL21vZHVsZXMvZG9jdW1lbnQtbWFuYWdlbWVudC9zcmMvbGliL2ZlYXR1cmVzL3dpZGdldHMvYXR0YWNobWVudC9kb2N1bWVudC11cGxvYWRlci12aWV3LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsdUJBQXVCLEVBQWlCLE1BQU0saUNBQWlDLENBQUM7QUFHakgsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxRQUFRLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFDckYsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUNsRSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQzs7O0FBVy9ELE1BQU0sT0FBTyxzQ0FBdUMsU0FBUSx1QkFBbUU7SUFSL0g7O1FBVVkscUJBQWdCLEdBQUcsUUFBUSxDQUFnQixHQUFHLEVBQUUsQ0FBQyxDQUFDO1lBQzFELElBQUksRUFBRSxlQUFlO1lBQ3JCLElBQUksRUFBRSxHQUFHLElBQUksQ0FBQyxJQUFJLFNBQVM7WUFDM0IsT0FBTyxFQUFFO2dCQUNQLFFBQVEsRUFBRSxJQUFJO2FBQ2Y7U0FDRixDQUFDLDREQUFDLENBQUM7S0FDTDs4R0FUWSxzQ0FBc0M7a0dBQXRDLHNDQUFzQyxvSEFOdkM7O0dBRVQsMkRBRVMsWUFBWSw4QkFBRSxjQUFjLDhCQUFFLGlCQUFpQiw4QkFBRSxtQkFBbUIsOEJBQUUsc0JBQXNCOzsyRkFFM0Ysc0NBQXNDO2tCQVJsRCxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxtQ0FBbUM7b0JBQzdDLFFBQVEsRUFBRTs7R0FFVDtvQkFDRCxlQUFlLEVBQUUsdUJBQXVCLENBQUMsTUFBTTtvQkFDL0MsT0FBTyxFQUFFLENBQUMsWUFBWSxFQUFFLGNBQWMsRUFBRSxpQkFBaUIsRUFBRSxtQkFBbUIsRUFBRSxzQkFBc0IsQ0FBQztpQkFDeEciLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBWFBMYXlvdXRCdWlsZGVyTW9kdWxlLCBBWFBWYWx1ZVdpZGdldENvbXBvbmVudCwgQVhQV2lkZ2V0Tm9kZSB9IGZyb20gJ0BhY29yZXgvcGxhdGZvcm0vbGF5b3V0L2J1aWxkZXInO1xuaW1wb3J0IHsgQVhQRmlsZUxpc3RJdGVtIH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9jb3JlJztcblxuaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgY29tcHV0ZWQsIGluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IEFYQnV0dG9uTW9kdWxlIH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL2J1dHRvbic7XG5pbXBvcnQgeyBBWERlY29yYXRvck1vZHVsZSB9IGZyb20gJ0BhY29yZXgvY29tcG9uZW50cy9kZWNvcmF0b3JzJztcbmltcG9ydCB7IEFYVHJhbnNsYXRpb25Nb2R1bGUgfSBmcm9tICdAYWNvcmV4L2NvcmUvdHJhbnNsYXRpb24nO1xuaW1wb3J0IHsgQVhNRG9jdW1lbnRNYW5hZ2VtZW50RG9jdW1lbnRFbnRpdHlNb2RlbCB9IGZyb20gJy4uLy4uLy4uL2VudGl0aWVzJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYXhwLWRvY3VtZW50LXVwbG9hZGVyLXdpZGdldC12aWV3JyxcbiAgdGVtcGxhdGU6IGBcbiAgICA8bmctY29udGFpbmVyIGF4cC13aWRnZXQtcmVuZGVyZXIgW25vZGVdPVwiZmlsZVVwbG9hZGVyTm9kZSgpXCIgW21vZGVdPVwiJ3ZpZXcnXCI+IDwvbmctY29udGFpbmVyPiBcbiAgYCxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIEFYQnV0dG9uTW9kdWxlLCBBWERlY29yYXRvck1vZHVsZSwgQVhUcmFuc2xhdGlvbk1vZHVsZSwgQVhQTGF5b3V0QnVpbGRlck1vZHVsZV1cbn0pXG5leHBvcnQgY2xhc3MgQVhQRG9jdW1lbnRVcGxvYWRlcldpZGdldFZpZXdDb21wb25lbnQgZXh0ZW5kcyBBWFBWYWx1ZVdpZGdldENvbXBvbmVudDxBWE1Eb2N1bWVudE1hbmFnZW1lbnREb2N1bWVudEVudGl0eU1vZGVsW10+IHtcblxuICBwcm90ZWN0ZWQgZmlsZVVwbG9hZGVyTm9kZSA9IGNvbXB1dGVkPEFYUFdpZGdldE5vZGU+KCgpID0+ICh7XG4gICAgdHlwZTogJ2ZpbGUtdXBsb2FkZXInLFxuICAgIHBhdGg6IGAke3RoaXMucGF0aH0uZmlsZUlkYCxcbiAgICBvcHRpb25zOiB7XG4gICAgICByZWFkT25seTogdHJ1ZSxcbiAgICB9LFxuICB9KSk7XG59XG4iXX0=","import { AXPValueWidgetComponent } from '@acorex/platform/layout/builder';\nimport { ChangeDetectionStrategy, Component, computed } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\nimport { AXButtonModule } from '@acorex/components/button';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXFormModule } from '@acorex/components/form';\nimport { AXLabelModule } from '@acorex/components/label';\nimport { AXTranslationModule } from '@acorex/core/translation';\nimport { CommonModule } from '@angular/common';\nimport * as i0 from \"@angular/core\";\nimport * as i1 from \"@acorex/components/button\";\nimport * as i2 from \"@acorex/components/label\";\nexport class AXPDocumentUploaderWidgetFilterComponent extends AXPValueWidgetComponent {\n constructor() {\n super(...arguments);\n this.hasFiles = computed(() => this.options()['hasFiles'] || false, ...(ngDevMode ? [{ debugName: \"hasFiles\" }] : []));\n this.noFiles = computed(() => this.options()['noFiles'] || false, ...(ngDevMode ? [{ debugName: \"noFiles\" }] : []));\n }\n toggleHasFiles() {\n const currentOptions = this.options();\n this.setOptions({\n ...currentOptions,\n hasFiles: !this.hasFiles()\n });\n }\n toggleNoFiles() {\n const currentOptions = this.options();\n this.setOptions({\n ...currentOptions,\n noFiles: !this.noFiles()\n });\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: AXPDocumentUploaderWidgetFilterComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }\n static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"14.0.0\", version: \"20.1.8\", type: AXPDocumentUploaderWidgetFilterComponent, isStandalone: true, selector: \"ng-component\", usesInheritance: true, ngImport: i0, template: `\n <div class=\"ax-flex ax-flex-col ax-gap-2\">\n <ax-label>File Filter</ax-label>\n <div class=\"ax-flex ax-gap-2\">\n <ax-button \n [text]=\"'Has Files'\" \n [color]=\"hasFiles() ? 'primary' : 'secondary'\" \n [look]=\"hasFiles() ? 'solid' : 'outline'\"\n (onClick)=\"toggleHasFiles()\">\n </ax-button>\n <ax-button \n [text]=\"'No Files'\" \n [color]=\"noFiles() ? 'primary' : 'secondary'\" \n [look]=\"noFiles() ? 'solid' : 'outline'\"\n (onClick)=\"toggleNoFiles()\">\n </ax-button>\n </div>\n </div>\n `, isInline: true, dependencies: [{ kind: \"ngmodule\", type: FormsModule }, { kind: \"ngmodule\", type: AXButtonModule }, { kind: \"component\", type: i1.AXButtonComponent, selector: \"ax-button\", inputs: [\"disabled\", \"size\", \"tabIndex\", \"color\", \"look\", \"text\", \"toggleable\", \"selected\", \"iconOnly\", \"type\", \"loadingText\"], outputs: [\"onBlur\", \"onFocus\", \"onClick\", \"selectedChange\", \"toggleableChange\", \"lookChange\", \"colorChange\", \"disabledChange\", \"loadingTextChange\"] }, { kind: \"ngmodule\", type: AXDecoratorModule }, { kind: \"ngmodule\", type: AXFormModule }, { kind: \"ngmodule\", type: AXLabelModule }, { kind: \"component\", type: i2.AXLabelComponent, selector: \"ax-label\", inputs: [\"required\", \"for\"], outputs: [\"requiredChange\"] }, { kind: \"ngmodule\", type: AXTranslationModule }, { kind: \"ngmodule\", type: CommonModule }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: AXPDocumentUploaderWidgetFilterComponent, decorators: [{\n type: Component,\n args: [{\n template: `\n <div class=\"ax-flex ax-flex-col ax-gap-2\">\n <ax-label>File Filter</ax-label>\n <div class=\"ax-flex ax-gap-2\">\n <ax-button \n [text]=\"'Has Files'\" \n [color]=\"hasFiles() ? 'primary' : 'secondary'\" \n [look]=\"hasFiles() ? 'solid' : 'outline'\"\n (onClick)=\"toggleHasFiles()\">\n </ax-button>\n <ax-button \n [text]=\"'No Files'\" \n [color]=\"noFiles() ? 'primary' : 'secondary'\" \n [look]=\"noFiles() ? 'solid' : 'outline'\"\n (onClick)=\"toggleNoFiles()\">\n </ax-button>\n </div>\n </div>\n `,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [FormsModule, AXButtonModule, AXDecoratorModule, AXFormModule, AXLabelModule, AXTranslationModule, CommonModule],\n inputs: []\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG9jdW1lbnQtdXBsb2FkZXItZmlsdGVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbW9kdWxlcy9kb2N1bWVudC1tYW5hZ2VtZW50L3NyYy9saWIvZmVhdHVyZXMvd2lkZ2V0cy9hdHRhY2htZW50L2RvY3VtZW50LXVwbG9hZGVyLWZpbHRlci5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFHMUUsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDN0UsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzdDLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUNsRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDdkQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ3pELE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQy9ELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQzs7OztBQTBCL0MsTUFBTSxPQUFPLHdDQUF5QyxTQUFRLHVCQUEwQztJQXhCeEc7O1FBMEJZLGFBQVEsR0FBRyxRQUFRLENBQVUsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDLFVBQVUsQ0FBWSxJQUFJLEtBQUssb0RBQUMsQ0FBQztRQUNuRixZQUFPLEdBQUcsUUFBUSxDQUFVLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQyxTQUFTLENBQVksSUFBSSxLQUFLLG1EQUFDLENBQUM7S0FpQjVGO0lBZlcsY0FBYztRQUN0QixNQUFNLGNBQWMsR0FBRyxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7UUFDdEMsSUFBSSxDQUFDLFVBQVUsQ0FBQztZQUNkLEdBQUcsY0FBYztZQUNqQixRQUFRLEVBQUUsQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFO1NBQzNCLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFUyxhQUFhO1FBQ3JCLE1BQU0sY0FBYyxHQUFHLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUN0QyxJQUFJLENBQUMsVUFBVSxDQUFDO1lBQ2QsR0FBRyxjQUFjO1lBQ2pCLE9BQU8sRUFBRSxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUU7U0FDekIsQ0FBQyxDQUFDO0lBQ0wsQ0FBQzs4R0FuQlUsd0NBQXdDO2tHQUF4Qyx3Q0FBd0MsK0ZBdkJ6Qzs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBa0JULDJEQUVTLFdBQVcsOEJBQUUsY0FBYyw2WEFBRSxpQkFBaUIsOEJBQUUsWUFBWSw4QkFBRSxhQUFhLGdLQUFFLG1CQUFtQiw4QkFBRSxZQUFZOzsyRkFHN0csd0NBQXdDO2tCQXhCcEQsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUU7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQWtCVDtvQkFDRCxlQUFlLEVBQUUsdUJBQXVCLENBQUMsTUFBTTtvQkFDL0MsT0FBTyxFQUFFLENBQUMsV0FBVyxFQUFFLGNBQWMsRUFBRSxpQkFBaUIsRUFBRSxZQUFZLEVBQUUsYUFBYSxFQUFFLG1CQUFtQixFQUFFLFlBQVksQ0FBQztvQkFDekgsTUFBTSxFQUFFLEVBQUU7aUJBQ1giLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBWFBWYWx1ZVdpZGdldENvbXBvbmVudCB9IGZyb20gJ0BhY29yZXgvcGxhdGZvcm0vbGF5b3V0L2J1aWxkZXInO1xuaW1wb3J0IHsgQVhQRmlsZUxpc3RJdGVtIH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9jb3JlJztcblxuaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgY29tcHV0ZWQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgQVhCdXR0b25Nb2R1bGUgfSBmcm9tICdAYWNvcmV4L2NvbXBvbmVudHMvYnV0dG9uJztcbmltcG9ydCB7IEFYRGVjb3JhdG9yTW9kdWxlIH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL2RlY29yYXRvcnMnO1xuaW1wb3J0IHsgQVhGb3JtTW9kdWxlIH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL2Zvcm0nO1xuaW1wb3J0IHsgQVhMYWJlbE1vZHVsZSB9IGZyb20gJ0BhY29yZXgvY29tcG9uZW50cy9sYWJlbCc7XG5pbXBvcnQgeyBBWFRyYW5zbGF0aW9uTW9kdWxlIH0gZnJvbSAnQGFjb3JleC9jb3JlL3RyYW5zbGF0aW9uJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5cbkBDb21wb25lbnQoe1xuICB0ZW1wbGF0ZTogYFxuICAgIDxkaXYgY2xhc3M9XCJheC1mbGV4IGF4LWZsZXgtY29sIGF4LWdhcC0yXCI+XG4gICAgICA8YXgtbGFiZWw+RmlsZSBGaWx0ZXI8L2F4LWxhYmVsPlxuICAgICAgPGRpdiBjbGFzcz1cImF4LWZsZXggYXgtZ2FwLTJcIj5cbiAgICAgICAgPGF4LWJ1dHRvbiBcbiAgICAgICAgICBbdGV4dF09XCInSGFzIEZpbGVzJ1wiIFxuICAgICAgICAgIFtjb2xvcl09XCJoYXNGaWxlcygpID8gJ3ByaW1hcnknIDogJ3NlY29uZGFyeSdcIiBcbiAgICAgICAgICBbbG9va109XCJoYXNGaWxlcygpID8gJ3NvbGlkJyA6ICdvdXRsaW5lJ1wiXG4gICAgICAgICAgKG9uQ2xpY2spPVwidG9nZ2xlSGFzRmlsZXMoKVwiPlxuICAgICAgICA8L2F4LWJ1dHRvbj5cbiAgICAgICAgPGF4LWJ1dHRvbiBcbiAgICAgICAgICBbdGV4dF09XCInTm8gRmlsZXMnXCIgXG4gICAgICAgICAgW2NvbG9yXT1cIm5vRmlsZXMoKSA/ICdwcmltYXJ5JyA6ICdzZWNvbmRhcnknXCIgXG4gICAgICAgICAgW2xvb2tdPVwibm9GaWxlcygpID8gJ3NvbGlkJyA6ICdvdXRsaW5lJ1wiXG4gICAgICAgICAgKG9uQ2xpY2spPVwidG9nZ2xlTm9GaWxlcygpXCI+XG4gICAgICAgIDwvYXgtYnV0dG9uPlxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gIGAsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBpbXBvcnRzOiBbRm9ybXNNb2R1bGUsIEFYQnV0dG9uTW9kdWxlLCBBWERlY29yYXRvck1vZHVsZSwgQVhGb3JtTW9kdWxlLCBBWExhYmVsTW9kdWxlLCBBWFRyYW5zbGF0aW9uTW9kdWxlLCBDb21tb25Nb2R1bGVdLFxuICBpbnB1dHM6IFtdXG59KVxuZXhwb3J0IGNsYXNzIEFYUERvY3VtZW50VXBsb2FkZXJXaWRnZXRGaWx0ZXJDb21wb25lbnQgZXh0ZW5kcyBBWFBWYWx1ZVdpZGdldENvbXBvbmVudDxBWFBGaWxlTGlzdEl0ZW1bXT4ge1xuICBcbiAgcHJvdGVjdGVkIGhhc0ZpbGVzID0gY29tcHV0ZWQ8Ym9vbGVhbj4oKCkgPT4gdGhpcy5vcHRpb25zKClbJ2hhc0ZpbGVzJ10gYXMgYm9vbGVhbiB8fCBmYWxzZSk7XG4gIHByb3RlY3RlZCBub0ZpbGVzID0gY29tcHV0ZWQ8Ym9vbGVhbj4oKCkgPT4gdGhpcy5vcHRpb25zKClbJ25vRmlsZXMnXSBhcyBib29sZWFuIHx8IGZhbHNlKTtcblxuICBwcm90ZWN0ZWQgdG9nZ2xlSGFzRmlsZXMoKSB7XG4gICAgY29uc3QgY3VycmVudE9wdGlvbnMgPSB0aGlzLm9wdGlvbnMoKTtcbiAgICB0aGlzLnNldE9wdGlvbnMoe1xuICAgICAgLi4uY3VycmVudE9wdGlvbnMsXG4gICAgICBoYXNGaWxlczogIXRoaXMuaGFzRmlsZXMoKVxuICAgIH0pO1xuICB9XG5cbiAgcHJvdGVjdGVkIHRvZ2dsZU5vRmlsZXMoKSB7XG4gICAgY29uc3QgY3VycmVudE9wdGlvbnMgPSB0aGlzLm9wdGlvbnMoKTtcbiAgICB0aGlzLnNldE9wdGlvbnMoe1xuICAgICAgLi4uY3VycmVudE9wdGlvbnMsXG4gICAgICBub0ZpbGVzOiAhdGhpcy5ub0ZpbGVzKClcbiAgICB9KTtcbiAgfVxufVxuIl19","import { AXPColumnWidgetComponent } from '@acorex/platform/layout/builder';\nimport { ChangeDetectionStrategy, Component, computed, inject } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { AXTranslationModule } from '@acorex/core/translation';\nimport { AXPFileUploaderWidgetService } from '@acorex/platform/widgets';\nimport { castArray } from 'lodash-es';\nimport * as i0 from \"@angular/core\";\nimport * as i1 from \"@angular/common\";\nimport * as i2 from \"@acorex/core/translation\";\nexport class AXPDocumentUploaderWidgetColumnComponent extends AXPColumnWidgetComponent {\n constructor() {\n super(...arguments);\n this.count = computed(() => {\n const value = castArray(this.rawValue ?? []);\n return value.length;\n }, ...(ngDevMode ? [{ debugName: \"count\" }] : []));\n this.fileService = inject(AXPFileUploaderWidgetService);\n }\n async openFileList() {\n this.fileService.showFileList({\n files: castArray(this.rawValue ?? []),\n readOnly: true,\n });\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: AXPDocumentUploaderWidgetColumnComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }\n static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"14.0.0\", version: \"20.1.8\", type: AXPDocumentUploaderWidgetColumnComponent, isStandalone: true, selector: \"ng-component\", inputs: { rawValue: \"rawValue\", rowData: \"rowData\" }, usesInheritance: true, ngImport: i0, template: `\n <span class=\"ax-cursor-pointer ax-text-primary ax-underline\" (click)=\"openFileList()\">\n {{ count() }} {{ '@document-management:file' | translate | async }}\n </span>\n `, isInline: true, dependencies: [{ kind: \"ngmodule\", type: CommonModule }, { kind: \"ngmodule\", type: AXTranslationModule }, { kind: \"pipe\", type: i1.AsyncPipe, name: \"async\" }, { kind: \"pipe\", type: i2.AXTranslatorPipe, name: \"translate\" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: AXPDocumentUploaderWidgetColumnComponent, decorators: [{\n type: Component,\n args: [{\n template: `\n <span class=\"ax-cursor-pointer ax-text-primary ax-underline\" (click)=\"openFileList()\">\n {{ count() }} {{ '@document-management:file' | translate | async }}\n </span>\n `,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule, AXTranslationModule],\n inputs: ['rawValue', 'rowData']\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG9jdW1lbnQtdXBsb2FkZXItY29sdW1uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbW9kdWxlcy9kb2N1bWVudC1tYW5hZ2VtZW50L3NyYy9saWIvZmVhdHVyZXMvd2lkZ2V0cy9hdHRhY2htZW50L2RvY3VtZW50LXVwbG9hZGVyLWNvbHVtbi5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFHM0UsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxRQUFRLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3JGLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMvRCxPQUFPLEVBQUUsNEJBQTRCLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUN4RSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sV0FBVyxDQUFDOzs7O0FBWXRDLE1BQU0sT0FBTyx3Q0FBeUMsU0FBUSx3QkFBMkM7SUFWekc7O1FBWVksVUFBSyxHQUFHLFFBQVEsQ0FBQyxHQUFHLEVBQUU7WUFDOUIsTUFBTSxLQUFLLEdBQUcsU0FBUyxDQUFDLElBQUksQ0FBQyxRQUFRLElBQUksRUFBRSxDQUFDLENBQUM7WUFDN0MsT0FBTyxLQUFLLENBQUMsTUFBTSxDQUFDO1FBQ3RCLENBQUMsaURBQUMsQ0FBQztRQUVLLGdCQUFXLEdBQUcsTUFBTSxDQUFDLDRCQUE0QixDQUFDLENBQUM7S0FRNUQ7SUFOQyxLQUFLLENBQUMsWUFBWTtRQUNoQixJQUFJLENBQUMsV0FBVyxDQUFDLFlBQVksQ0FBQztZQUM1QixLQUFLLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxRQUFRLElBQUksRUFBRSxDQUFDO1lBQ3JDLFFBQVEsRUFBRSxJQUFJO1NBQ2YsQ0FBQyxDQUFDO0lBQ0wsQ0FBQzs4R0FkVSx3Q0FBd0M7a0dBQXhDLHdDQUF3QyxxSkFUekM7Ozs7R0FJVCwyREFFUyxZQUFZLDhCQUFFLG1CQUFtQjs7MkZBR2hDLHdDQUF3QztrQkFWcEQsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUU7Ozs7R0FJVDtvQkFDRCxlQUFlLEVBQUUsdUJBQXVCLENBQUMsTUFBTTtvQkFDL0MsT0FBTyxFQUFFLENBQUMsWUFBWSxFQUFFLG1CQUFtQixDQUFDO29CQUM1QyxNQUFNLEVBQUUsQ0FBQyxVQUFVLEVBQUUsU0FBUyxDQUFDO2lCQUNoQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFYUENvbHVtbldpZGdldENvbXBvbmVudCB9IGZyb20gJ0BhY29yZXgvcGxhdGZvcm0vbGF5b3V0L2J1aWxkZXInO1xuaW1wb3J0IHsgQVhQRmlsZUxpc3RJdGVtIH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9jb3JlJztcblxuaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgY29tcHV0ZWQsIGluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IEFYVHJhbnNsYXRpb25Nb2R1bGUgfSBmcm9tICdAYWNvcmV4L2NvcmUvdHJhbnNsYXRpb24nO1xuaW1wb3J0IHsgQVhQRmlsZVVwbG9hZGVyV2lkZ2V0U2VydmljZSB9IGZyb20gJ0BhY29yZXgvcGxhdGZvcm0vd2lkZ2V0cyc7XG5pbXBvcnQgeyBjYXN0QXJyYXkgfSBmcm9tICdsb2Rhc2gtZXMnO1xuXG5AQ29tcG9uZW50KHtcbiAgdGVtcGxhdGU6IGBcbiAgICA8c3BhbiBjbGFzcz1cImF4LWN1cnNvci1wb2ludGVyIGF4LXRleHQtcHJpbWFyeSBheC11bmRlcmxpbmVcIiAoY2xpY2spPVwib3BlbkZpbGVMaXN0KClcIj5cbiAgICAgIHt7IGNvdW50KCkgfX0ge3sgJ0Bkb2N1bWVudC1tYW5hZ2VtZW50OmZpbGUnIHwgdHJhbnNsYXRlIHwgYXN5bmMgfX1cbiAgICA8L3NwYW4+XG4gIGAsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlLCBBWFRyYW5zbGF0aW9uTW9kdWxlXSxcbiAgaW5wdXRzOiBbJ3Jhd1ZhbHVlJywgJ3Jvd0RhdGEnXVxufSlcbmV4cG9ydCBjbGFzcyBBWFBEb2N1bWVudFVwbG9hZGVyV2lkZ2V0Q29sdW1uQ29tcG9uZW50IGV4dGVuZHMgQVhQQ29sdW1uV2lkZ2V0Q29tcG9uZW50PEFYUEZpbGVMaXN0SXRlbVtdPiB7XG4gIFxuICBwcm90ZWN0ZWQgY291bnQgPSBjb21wdXRlZCgoKSA9PiB7XG4gICAgY29uc3QgdmFsdWUgPSBjYXN0QXJyYXkodGhpcy5yYXdWYWx1ZSA/PyBbXSk7XG4gICAgcmV0dXJuIHZhbHVlLmxlbmd0aDtcbiAgfSk7XG5cbiAgcHJpdmF0ZSBmaWxlU2VydmljZSA9IGluamVjdChBWFBGaWxlVXBsb2FkZXJXaWRnZXRTZXJ2aWNlKTtcblxuICBhc3luYyBvcGVuRmlsZUxpc3QoKSB7XG4gICAgdGhpcy5maWxlU2VydmljZS5zaG93RmlsZUxpc3Qoe1xuICAgICAgZmlsZXM6IGNhc3RBcnJheSh0aGlzLnJhd1ZhbHVlID8/IFtdKSxcbiAgICAgIHJlYWRPbmx5OiB0cnVlLFxuICAgIH0pO1xuICB9XG59XG4iXX0=","import { AXPValueWidgetComponent } from '@acorex/platform/layout/builder';\nimport { ChangeDetectionStrategy, Component, computed } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport * as i0 from \"@angular/core\";\nexport class AXPDocumentUploaderWidgetPrintComponent extends AXPValueWidgetComponent {\n constructor() {\n super(...arguments);\n this.hasFiles = computed(() => (this.getValue() ?? []).length > 0, ...(ngDevMode ? [{ debugName: \"hasFiles\" }] : []));\n }\n formatFileSize(bytes) {\n if (!bytes)\n return '0 B';\n const sizes = ['B', 'KB', 'MB', 'GB'];\n const i = Math.floor(Math.log(bytes) / Math.log(1024));\n return Math.round(bytes / Math.pow(1024, i) * 100) / 100 + ' ' + sizes[i];\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: AXPDocumentUploaderWidgetPrintComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }\n static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"17.0.0\", version: \"20.1.8\", type: AXPDocumentUploaderWidgetPrintComponent, isStandalone: true, selector: \"ng-component\", usesInheritance: true, ngImport: i0, template: `\n <div class=\"ax-flex ax-flex-col ax-gap-1\">\n @if(hasFiles()){\n @for(file of getValue(); track file.id) {\n <div class=\"ax-text-sm\">\n {{ file.name }} ({{ formatFileSize(file.size) }})\n </div>\n }\n } @else {\n <span class=\"ax-text-gray-500\">No files</span>\n }\n </div>\n `, isInline: true, dependencies: [{ kind: \"ngmodule\", type: CommonModule }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: AXPDocumentUploaderWidgetPrintComponent, decorators: [{\n type: Component,\n args: [{\n template: `\n <div class=\"ax-flex ax-flex-col ax-gap-1\">\n @if(hasFiles()){\n @for(file of getValue(); track file.id) {\n <div class=\"ax-text-sm\">\n {{ file.name }} ({{ formatFileSize(file.size) }})\n </div>\n }\n } @else {\n <span class=\"ax-text-gray-500\">No files</span>\n }\n </div>\n `,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule],\n inputs: []\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG9jdW1lbnQtdXBsb2FkZXItcHJpbnQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tb2R1bGVzL2RvY3VtZW50LW1hbmFnZW1lbnQvc3JjL2xpYi9mZWF0dXJlcy93aWRnZXRzL2F0dGFjaG1lbnQvZG9jdW1lbnQtdXBsb2FkZXItcHJpbnQuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBRzFFLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzdFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQzs7QUFvQi9DLE1BQU0sT0FBTyx1Q0FBd0MsU0FBUSx1QkFBMEM7SUFsQnZHOztRQW9CWSxhQUFRLEdBQUcsUUFBUSxDQUFVLEdBQUcsRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDLE1BQU0sR0FBRyxDQUFDLG9EQUFDLENBQUM7S0FTbEY7SUFQVyxjQUFjLENBQUMsS0FBYztRQUNyQyxJQUFJLENBQUMsS0FBSztZQUFFLE9BQU8sS0FBSyxDQUFDO1FBRXpCLE1BQU0sS0FBSyxHQUFHLENBQUMsR0FBRyxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxDQUFDLENBQUM7UUFDdEMsTUFBTSxDQUFDLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztRQUN2RCxPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQyxHQUFHLEdBQUcsQ0FBQyxHQUFHLEdBQUcsR0FBRyxHQUFHLEdBQUcsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQzVFLENBQUM7OEdBVlUsdUNBQXVDO2tHQUF2Qyx1Q0FBdUMsK0ZBakJ4Qzs7Ozs7Ozs7Ozs7O0dBWVQsMkRBRVMsWUFBWTs7MkZBR1gsdUNBQXVDO2tCQWxCbkQsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUU7Ozs7Ozs7Ozs7OztHQVlUO29CQUNELGVBQWUsRUFBRSx1QkFBdUIsQ0FBQyxNQUFNO29CQUMvQyxPQUFPLEVBQUUsQ0FBQyxZQUFZLENBQUM7b0JBQ3ZCLE1BQU0sRUFBRSxFQUFFO2lCQUNYIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQVhQVmFsdWVXaWRnZXRDb21wb25lbnQgfSBmcm9tICdAYWNvcmV4L3BsYXRmb3JtL2xheW91dC9idWlsZGVyJztcbmltcG9ydCB7IEFYUEZpbGVMaXN0SXRlbSB9IGZyb20gJ0BhY29yZXgvcGxhdGZvcm0vY29yZSc7XG5cbmltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIGNvbXB1dGVkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuXG5AQ29tcG9uZW50KHtcbiAgdGVtcGxhdGU6IGBcbiAgICA8ZGl2IGNsYXNzPVwiYXgtZmxleCBheC1mbGV4LWNvbCBheC1nYXAtMVwiPlxuICAgICAgQGlmKGhhc0ZpbGVzKCkpe1xuICAgICAgICBAZm9yKGZpbGUgb2YgZ2V0VmFsdWUoKTsgdHJhY2sgZmlsZS5pZCkge1xuICAgICAgICAgIDxkaXYgY2xhc3M9XCJheC10ZXh0LXNtXCI+XG4gICAgICAgICAgICB7eyBmaWxlLm5hbWUgfX0gKHt7IGZvcm1hdEZpbGVTaXplKGZpbGUuc2l6ZSkgfX0pXG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIH1cbiAgICAgIH0gQGVsc2Uge1xuICAgICAgICA8c3BhbiBjbGFzcz1cImF4LXRleHQtZ3JheS01MDBcIj5ObyBmaWxlczwvc3Bhbj5cbiAgICAgIH1cbiAgICA8L2Rpdj5cbiAgYCxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGVdLFxuICBpbnB1dHM6IFtdXG59KVxuZXhwb3J0IGNsYXNzIEFYUERvY3VtZW50VXBsb2FkZXJXaWRnZXRQcmludENvbXBvbmVudCBleHRlbmRzIEFYUFZhbHVlV2lkZ2V0Q29tcG9uZW50PEFYUEZpbGVMaXN0SXRlbVtdPiB7XG4gIFxuICBwcm90ZWN0ZWQgaGFzRmlsZXMgPSBjb21wdXRlZDxib29sZWFuPigoKSA9PiAodGhpcy5nZXRWYWx1ZSgpID8/IFtdKS5sZW5ndGggPiAwKTtcblxuICBwcm90ZWN0ZWQgZm9ybWF0RmlsZVNpemUoYnl0ZXM/OiBudW1iZXIpOiBzdHJpbmcge1xuICAgIGlmICghYnl0ZXMpIHJldHVybiAnMCBCJztcbiAgICBcbiAgICBjb25zdCBzaXplcyA9IFsnQicsICdLQicsICdNQicsICdHQiddO1xuICAgIGNvbnN0IGkgPSBNYXRoLmZsb29yKE1hdGgubG9nKGJ5dGVzKSAvIE1hdGgubG9nKDEwMjQpKTtcbiAgICByZXR1cm4gTWF0aC5yb3VuZChieXRlcyAvIE1hdGgucG93KDEwMjQsIGkpICogMTAwKSAvIDEwMCArICcgJyArIHNpemVzW2ldO1xuICB9XG59Il19","import { AXPDistributedEventListenerService, } from '@acorex/platform/core';\nimport { AXPWorkflowService, AXPWorkflowTaskProvider, } from '@acorex/platform/workflow';\nimport { inject } from '@angular/core';\nimport { AXMReviewService } from '../../entities';\nexport class AXMDocumentReviewTaskProvider extends AXPWorkflowTaskProvider {\n constructor() {\n super(...arguments);\n this.documentReviewService = inject(AXMReviewService);\n this.workflowService = inject(AXPWorkflowService);\n this.eventService = inject(AXPDistributedEventListenerService);\n }\n get name() {\n return 'document-review';\n }\n get title() {\n return 'Document Review';\n }\n get icon() {\n return 'fa-light fa-file-pen';\n }\n /**\n * Retrieves a list of tasks, optionally filtered by a date range.\n * If a date range is provided in the options, only tasks that overlap with that range will be returned.\n * @param options Filtering options, primarily containing a date range.\n * @returns An array of filtered tasks.\n */\n async getTasks(options) {\n const baseFilter = {\n logic: 'and',\n filters: [],\n };\n if (options?.range?.from) {\n baseFilter.filters?.push({\n field: 'reviewDate',\n operator: { type: 'gte' },\n value: options.range.from,\n });\n }\n if (options?.range?.end) {\n baseFilter.filters?.push({\n field: 'distributionDate',\n operator: { type: 'lte' },\n value: options.range.end,\n });\n }\n const filteredList = await this.documentReviewService.query({\n skip: options?.skip ?? 0,\n take: options?.take ?? 10,\n filter: baseFilter,\n });\n const tasks = {\n items: filteredList.items.map((item) => ({\n id: item.id,\n title: item.document?.title ?? '' + ' - ' + item.version,\n description: item.document?.description ?? '',\n startDate: item.createdAt ?? new Date(),\n endDate: item.createdAt\n ? new Date(new Date(item.createdAt).getTime() + 24 * 60 * 60 * 1000)\n : new Date(new Date().getTime() + 24 * 60 * 60 * 1000),\n assignee: {\n id: item.reviewerId ?? '',\n type: 'user',\n fullName: item.reviewer?.title ?? '',\n },\n index: 3,\n status: {\n id: item.reviewStatus,\n title: item.reviewStatus,\n },\n priority: 'high',\n reporter: {\n id: item.createdBy ?? '',\n type: 'user',\n fullName: item.createdBy ?? '',\n },\n })),\n total: filteredList.total,\n };\n return tasks;\n }\n /**\n * Updates one or more tasks in the provider's list.\n * This method finds each task by its ID and applies the new properties from the input.\n * It also automatically recalculates the `allDay` flag based on the task's duration.\n * @param tasksToUpdate An array of task objects to update. Each object must have an `id`.\n * @returns An array of the tasks that were successfully updated.\n */\n async updateTasks(tasksToUpdate) {\n console.log(tasksToUpdate);\n return tasksToUpdate;\n }\n async executeCommand(command) {\n if (command.name === 'submitReview') {\n console.log(command.options);\n const workflow = await this.workflowService.execute('submit-review', {\n options: command.options,\n });\n this.eventService.dispatch('task-board.refresh');\n }\n return { success: true };\n }\n async getActions(task) {\n const review = {\n name: 'submitReview',\n title: 'Submit Review',\n icon: 'fa-light fa-pen-to-square',\n command: { name: 'submitReview', options: { id: task?.id ?? '' } },\n };\n const list = [];\n if (task?.status?.id === 'Pending') {\n list.push(review);\n }\n return list;\n }\n async getExtraFields() {\n return [];\n }\n async getStatuses() {\n return [\n { index: 0, key: 'Pending', title: 'Pending' },\n { index: 1, key: 'Approved', title: 'Approved' },\n { index: 2, key: 'Rejected', title: 'Rejected' },\n ];\n }\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmV2aWV3LnRhc2sucHJvdmlkZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL21vZHVsZXMvZG9jdW1lbnQtbWFuYWdlbWVudC9zcmMvbGliL2ZlYXR1cmVzL3Rhc2svcmV2aWV3LnRhc2sucHJvdmlkZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUVMLGtDQUFrQyxHQUduQyxNQUFNLHVCQUF1QixDQUFDO0FBQy9CLE9BQU8sRUFLTCxrQkFBa0IsRUFDbEIsdUJBQXVCLEdBQ3hCLE1BQU0sMkJBQTJCLENBQUM7QUFDbkMsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN2QyxPQUFPLEVBQTBDLGdCQUFnQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFMUYsTUFBTSxPQUFPLDZCQUE4QixTQUFRLHVCQUErRDtJQUFsSDs7UUFDVSwwQkFBcUIsR0FBRyxNQUFNLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztRQUNqRCxvQkFBZSxHQUFHLE1BQU0sQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO1FBQzdDLGlCQUFZLEdBQUcsTUFBTSxDQUFDLGtDQUFrQyxDQUFDLENBQUM7SUFvSXBFLENBQUM7SUFsSUMsSUFBSSxJQUFJO1FBQ04sT0FBTyxpQkFBaUIsQ0FBQztJQUMzQixDQUFDO0lBRUQsSUFBSSxLQUFLO1FBQ1AsT0FBTyxpQkFBaUIsQ0FBQztJQUMzQixDQUFDO0lBRUQsSUFBSSxJQUFJO1FBQ04sT0FBTyxzQkFBc0IsQ0FBQztJQUNoQyxDQUFDO0lBRUQ7Ozs7O09BS0c7SUFDSCxLQUFLLENBQUMsUUFBUSxDQUNaLE9BQXNCO1FBRXRCLE1BQU0sVUFBVSxHQUE2QjtZQUMzQyxLQUFLLEVBQUUsS0FBSztZQUNaLE9BQU8sRUFBRSxFQUFFO1NBQ1osQ0FBQztRQUVGLElBQUksT0FBTyxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsQ0FBQztZQUN6QixVQUFVLENB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WUFDaEQsRUFBRSxLQUFLLEVBQUUsQ0FBQyxFQUFFLEdBQUcsRUFBRSxVQUFVLEVBQUUsS0FBSyxFQUFFLFVBQVUsRUFBRTtTQUNqRCxDQUFDO0lBQ0osQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQVhEYXRhU291cmNlRmlsdGVyT3B0aW9uIH0gZnJvbSAnQGFjb3JleC9jZGsvY29tbW9uJztcbmltcG9ydCB7XG4gIEFYUEFjdGlvbk1lbnVJdGVtLFxuICBBWFBEaXN0cmlidXRlZEV2ZW50TGlzdGVuZXJTZXJ2aWNlLFxuICBBWFBFeGVjdXRlQ29tbWFuZCxcbiAgQVhQRXhlY3V0ZUNvbW1hbmRSZXN1bHQsXG59IGZyb20gJ0BhY29yZXgvcGxhdGZvcm0vY29yZSc7XG5pbXBvcnQge1xuICBBWFBFeHRyYUZpZWxkLFxuICBBWFBUYXNrLFxuICBBWFBUYXNrRmlsdGVyLFxuICBBWFBUYXNrU3RhdHVzLFxuICBBWFBXb3JrZmxvd1NlcnZpY2UsXG4gIEFYUFdvcmtmbG93VGFza1Byb3ZpZGVyLFxufSBmcm9tICdAYWNvcmV4L3BsYXRmb3JtL3dvcmtmbG93JztcbmltcG9ydCB7IGluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQVhNRG9jdW1lbnRNYW5hZ2VtZW50UmV2aWV3RW50aXR5TW9kZWwsIEFYTVJldmlld1NlcnZpY2UgfSBmcm9tICcuLi8uLi9lbnRpdGllcyc7XG5cbmV4cG9ydCBjbGFzcyBBWE1Eb2N1bWVudFJldmlld1Rhc2tQcm92aWRlciBleHRlbmRzIEFYUFdvcmtmbG93VGFza1Byb3ZpZGVyPEFYTURvY3VtZW50TWFuYWdlbWVudFJldmlld0VudGl0eU1vZGVsPiB7XG4gIHByaXZhdGUgZG9jdW1lbnRSZXZpZXdTZXJ2aWNlID0gaW5qZWN0KEFYTVJldmlld1NlcnZpY2UpO1xuICBwcml2YXRlIHdvcmtmbG93U2VydmljZSA9IGluamVjdChBWFBXb3JrZmxvd1NlcnZpY2UpO1xuICBwcml2YXRlIGV2ZW50U2VydmljZSA9IGluamVjdChBWFBEaXN0cmlidXRlZEV2ZW50TGlzdGVuZXJTZXJ2aWNlKTtcblxuICBnZXQgbmFtZSgpOiBzdHJpbmcge1xuICAgIHJldHVybiAnZG9jdW1lbnQtcmV2aWV3JztcbiAgfVxuXG4gIGdldCB0aXRsZSgpOiBzdHJpbmcge1xuICAgIHJldHVybiAnRG9jdW1lbnQgUmV2aWV3JztcbiAgfVxuXG4gIGdldCBpY29uKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuICdmYS1saWdodCBmYS1maWxlLXBlbic7XG4gIH1cblxuICAvKipcbiAgICogUmV0cmlldmVzIGEgbGlzdCBvZiB0YXNrcywgb3B0aW9uYWxseSBmaWx0ZXJlZCBieSBhIGRhdGUgcmFuZ2UuXG4gICAqIElmIGEgZGF0ZSByYW5nZSBpcyBwcm92aWRlZCBpbiB0aGUgb3B0aW9ucywgb25seSB0YXNrcyB0aGF0IG92ZXJsYXAgd2l0aCB0aGF0IHJhbmdlIHdpbGwgYmUgcmV0dXJuZWQuXG4gICAqIEBwYXJhbSBvcHRpb25zIEZpbHRlcmluZyBvcHRpb25zLCBwcmltYXJpbHkgY29udGFpbmluZyBhIGRhdGUgcmFuZ2UuXG4gICAqIEByZXR1cm5zIEFuIGFycmF5IG9mIGZpbHRlcmVkIHRhc2tzLlxuICAgKi9cbiAgYXN5bmMgZ2V0VGFza3MoXG4gICAgb3B0aW9uczogQVhQVGFza0ZpbHRlcixcbiAgKTogUHJvbWlzZTx7IGl0ZW1zOiBBWFBUYXNrPEFYTURvY3VtZW50TWFuYWdlbWVudFJldmlld0VudGl0eU1vZGVsPltdOyB0b3RhbDogbnVtYmVyIH0+IHtcbiAgICBjb25zdCBiYXNlRmlsdGVyOiBBWERhdGFTb3VyY2VGaWx0ZXJPcHRpb24gPSB7XG4gICAgICBsb2dpYzogJ2FuZCcsXG4gICAgICBmaWx0ZXJzOiBbXSxcbiAgICB9O1xuXG4gICAgaWYgKG9wdGlvbnM/LnJhbmdlPy5mcm9tKSB7XG4gICAgICBiYXNlRmlsdGVyLmZpbHRlcnM/LnB1c2goe1xuICAgICAgICBmaWVsZDogJ3Jldmlld0RhdGUnLFxuICAgICAgICBvcGVyYXRvcjogeyB0eXBlOiAnZ3RlJyB9LFxuICAgICAgICB2YWx1ZTogb3B0aW9ucyEucmFuZ2UhLmZyb20sXG4gICAgICB9KTtcbiAgICB9XG4gICAgaWYgKG9wdGlvbnM/LnJhbmdlPy5lbmQpIHtcbiAgICAgIGJhc2VGaWx0ZXIuZmlsdGVycz8ucHVzaCh7XG4gICAgICAgIGZpZWxkOiAnZGlzdHJpYnV0aW9uRGF0ZScsXG4gICAgICAgIG9wZXJhdG9yOiB7IHR5cGU6ICdsdGUnIH0sXG4gICAgICAgIHZhbHVlOiBvcHRpb25zIS5yYW5nZSEuZW5kLFxuICAgICAgfSk7XG4gICAgfVxuICAgIGNvbnN0IGZpbHRlcmVkTGlzdCA9IGF3YWl0IHRoaXMuZG9jdW1lbnRSZXZpZXdTZXJ2aWNlLnF1ZXJ5KHtcbiAgICAgIHNraXA6IG9wdGlvbnM/LnNraXAgPz8gMCxcbiAgICAgIHRha2U6IG9wdGlvbnM/LnRha2UgPz8gMTAsXG4gICAgICBmaWx0ZXI6IGJhc2VGaWx0ZXIsXG4gICAgfSk7XG5cbiAgICBjb25zdCB0YXNrcyA9IHtcbiAgICAgIGl0ZW1zOiBmaWx0ZXJlZExpc3QuaXRlbXMubWFwPEFYUFRhc2s8QVhNRG9jdW1lbnRNYW5hZ2VtZW50UmV2aWV3RW50aXR5TW9kZWw+PigoaXRlbSkgPT4gKHtcbiAgICAgICAgaWQ6IGl0ZW0uaWQsXG4gICAgICAgIHRpdGxlOiBpdGVtLmRvY3VtZW50Py50aXRsZSA/PyAnJyArICcgLSAnICsgaXRlbS52ZXJzaW9uLFxuICAgICAgICBkZXNjcmlwdGlvbjogaXRlbS5kb2N1bWVudD8uZGVzY3JpcHRpb24gPz8gJycsXG4gICAgICAgIHN0YXJ0RGF0ZTogaXRlbS5jcmVhdGVkQXQgPz8gbmV3IERhdGUoKSxcbiAgICAgICAgZW5kRGF0ZTogaXRlbS5jcmVhdGVkQXRcbiAgICAgICAgICA/IG5ldyBEYXRlKG5ldyBEYXRlKGl0ZW0uY3JlYXRlZEF0KS5nZXRUaW1lKCkgKyAyNCAqIDYwICogNjAgKiAxMDAwKVxuICAgICAgICAgIDogbmV3IERhdGUobmV3IERhdGUoKS5nZXRUaW1lKCkgKyAyNCAqIDYwICogNjAgKiAxMDAwKSxcbiAgICAgICAgYXNzaWduZWU6IHtcbiAgICAgICAgICBpZDogaXRlbS5yZXZpZXdlcklkID8/ICcnLFxuICAgICAgICAgIHR5cGU6ICd1c2VyJyxcbiAgICAgICAgICBmdWxsTmFtZTogaXRlbS5yZXZpZXdlcj8udGl0bGUgPz8gJycsXG4gICAgICAgIH0sXG4gICAgICAgIGluZGV4OiAzLFxuICAgICAgICBzdGF0dXM6IHtcbiAgICAgICAgICBpZDogaXRlbS5yZXZpZXdTdGF0dXMsXG4gICAgICAgICAgdGl0bGU6IGl0ZW0ucmV2aWV3U3RhdHVzLFxuICAgICAgICB9LFxuICAgICAgICBwcmlvcml0eTogJ2hpZ2gnLFxuICAgICAgICByZXBvcnRlcjoge1xuICAgICAgICAgIGlkOiBpdGVtLmNyZWF0ZWRCeSA/PyAnJyxcbiAgICAgICAgICB0eXBlOiAndXNlcicsXG4gICAgICAgICAgZnVsbE5hbWU6IGl0ZW0uY3JlYXRlZEJ5ID8/ICcnLFxuICAgICAgICB9LFxuICAgICAgfSkpLFxuICAgICAgdG90YWw6IGZpbHRlcmVkTGlzdC50b3RhbCxcbiAgICB9O1xuXG4gICAgcmV0dXJuIHRhc2tzO1xuICB9XG5cbiAgLyoqXG4gICAqIFVwZGF0ZXMgb25lIG9yIG1vcmUgdGFza3MgaW4gdGhlIHByb3ZpZGVyJ3MgbGlzdC5cbiAgICogVGhpcyBtZXRob2QgZmluZHMgZWFjaCB0YXNrIGJ5IGl0cyBJRCBhbmQgYXBwbGllcyB0aGUgbmV3IHByb3BlcnRpZXMgZnJvbSB0aGUgaW5wdXQuXG4gICAqIEl0IGFsc28gYXV0b21hdGljYWxseSByZWNhbGN1bGF0ZXMgdGhlIGBhbGxEYXlgIGZsYWcgYmFzZWQgb24gdGhlIHRhc2sncyBkdXJhdGlvbi5cbiAgICogQHBhcmFtIHRhc2tzVG9VcGRhdGUgQW4gYXJyYXkgb2YgdGFzayBvYmplY3RzIHRvIHVwZGF0ZS4gRWFjaCBvYmplY3QgbXVzdCBoYXZlIGFuIGBpZGAuXG4gICAqIEByZXR1cm5zIEFuIGFycmF5IG9mIHRoZSB0YXNrcyB0aGF0IHdlcmUgc3VjY2Vzc2Z1bGx5IHVwZGF0ZWQuXG4gICAqL1xuICBhc3luYyB1cGRhdGVUYXNrcyhcbiAgICB0YXNrc1RvVXBkYXRlOiBBWFBUYXNrPEFYTURvY3VtZW50TWFuYWdlbWVudFJldmlld0VudGl0eU1vZGVsPltdLFxuICApOiBQcm9taXNlPEFYUFRhc2s8QVhNRG9jdW1lbnRNYW5hZ2VtZW50UmV2aWV3RW50aXR5TW9kZWw+W10+IHtcbiAgICBjb25zb2xlLmxvZyh0YXNrc1RvVXBkYXRlKTtcblxuICAgIHJldHVybiB0YXNrc1RvVXBkYXRlO1xuICB9XG5cbiAgYXN5bmMgZXhlY3V0ZUNvbW1hbmQoY29tbWFuZDogQVhQRXhlY3V0ZUNvbW1hbmQpOiBQcm9taXNlPEFYUEV4ZWN1dGVDb21tYW5kUmVzdWx0PiB7XG4gICAgaWYgKGNvbW1hbmQubmFtZSA9PT0gJ3N1Ym1pdFJldmlldycpIHtcbiAgICAgIGNvbnNvbGUubG9nKGNvbW1hbmQub3B0aW9ucyk7XG4gICAgICBjb25zdCB3b3JrZmxvdyA9IGF3YWl0IHRoaXMud29ya2Zsb3dTZXJ2aWNlLmV4ZWN1dGUoJ3N1Ym1pdC1yZXZpZXcnLCB7XG4gICAgICAgIG9wdGlvbnM6IGNvbW1hbmQub3B0aW9ucyxcbiAgICAgIH0pO1xuICAgICAgdGhpcy5ldmVudFNlcnZpY2UuZGlzcGF0Y2goJ3Rhc2stYm9hcmQucmVmcmVzaCcpO1xuICAgIH1cbiAgICByZXR1cm4geyBzdWNjZXNzOiB0cnVlIH07XG4gIH1cblxuICBhc3luYyBnZXRBY3Rpb25zKHRhc2s/OiBBWFBUYXNrPEFYTURvY3VtZW50TWFuYWdlbWVudFJldmlld0VudGl0eU1vZGVsPik6IFByb21pc2U8QVhQQWN0aW9uTWVudUl0ZW1bXT4ge1xuICAgIGNvbnN0IHJldmlldzogQVhQQWN0aW9uTWVudUl0ZW0gPSB7XG4gICAgICBuYW1lOiAnc3VibWl0UmV2aWV3JyxcbiAgICAgIHRpdGxlOiAnU3VibWl0IFJldmlldycsXG4gICAgICBpY29uOiAnZmEtbGlnaHQgZmEtcGVuLXRvLXNxdWFyZScsXG4gICAgICBjb21tYW5kOiB7IG5hbWU6ICdzdWJtaXRSZXZpZXcnLCBvcHRpb25zOiB7IGlkOiB0YXNrPy5pZCA/PyAnJyB9IH0sXG4gICAgfTtcbiAgICBjb25zdCBsaXN0ID0gW107XG5cbiAgICBpZiAodGFzaz8uc3RhdHVzPy5pZCA9PT0gJ1BlbmRpbmcnKSB7XG4gICAgICBsaXN0LnB1c2gocmV2aWV3KTtcbiAgICB9XG4gICAgcmV0dXJuIGxpc3Q7XG4gIH1cblxuICBhc3luYyBnZXRFeHRyYUZpZWxkcygpOiBQcm9taXNlPEFYUEV4dHJhRmllbGRbXT4ge1xuICAgIHJldHVybiBbXTtcbiAgfVxuXG4gIGFzeW5jIGdldFN0YXR1c2VzKCk6IFByb21pc2U8QVhQVGFza1N0YXR1c1tdPiB7XG4gICAgcmV0dXJuIFtcbiAgICAgIHsgaW5kZXg6IDAsIGtleTogJ1BlbmRpbmcnLCB0aXRsZTogJ1BlbmRpbmcnIH0sXG4gICAgICB7IGluZGV4OiAxLCBrZXk6ICdBcHByb3ZlZCcsIHRpdGxlOiAnQXBwcm92ZWQnIH0sXG4gICAgICB7IGluZGV4OiAyLCBrZXk6ICdSZWplY3RlZCcsIHRpdGxlOiAnUmVqZWN0ZWQnIH0sXG4gICAgXTtcbiAgfVxufVxuIl19","import { AXPWorkflowService, AXPWorkflowTaskProvider, } from '@acorex/platform/workflow';\nimport { inject } from '@angular/core';\nimport { AXMDistributionService } from '../../entities';\nimport { RootConfig } from '../../const';\nexport class AXMDocumentDistributionTaskProvider extends AXPWorkflowTaskProvider {\n constructor() {\n super(...arguments);\n this.documentService = inject(AXMDistributionService);\n this.workflowService = inject(AXPWorkflowService);\n }\n get name() {\n return 'document-distribution';\n }\n get title() {\n return 'Document Distribution';\n }\n get icon() {\n return 'fa-light fa-file-pen';\n }\n /**\n * Retrieves a list of tasks, optionally filtered by a date range.\n * If a date range is provided in the options, only tasks that overlap with that range will be returned.\n * @param options Filtering options, primarily containing a date range.\n * @returns An array of filtered tasks.\n */\n async getTasks(options) {\n const baseFilter = {\n logic: 'and',\n filters: [],\n };\n if (options?.range?.from) {\n baseFilter.filters?.push({\n field: 'distributionDate',\n operator: { type: 'gte' },\n value: options.range.from,\n });\n }\n if (options?.range?.end) {\n baseFilter.filters?.push({\n field: 'distributionDate',\n operator: { type: 'lte' },\n value: options.range.end,\n });\n }\n const filteredList = await this.documentService.query({\n skip: options?.skip ?? 0,\n take: options?.take ?? 10,\n filter: baseFilter,\n });\n return {\n items: filteredList.items.map((item) => ({\n id: item.id,\n title: item.document?.title ?? '' + ' - ' + item.version,\n startDate: item.createdAt ?? new Date(),\n endDate: item.dueDate ?? new Date(),\n index: 0,\n status: {\n id: 0,\n title: 'Pending',\n },\n priority: 'high',\n reporter: {\n id: item.createdBy ?? '',\n type: 'user',\n },\n data: item,\n })),\n total: filteredList.total,\n };\n }\n /**\n * Updates one or more tasks in the provider's list.\n * This method finds each task by its ID and applies the new properties from the input.\n * It also automatically recalculates the `allDay` flag based on the task's duration.\n * @param tasksToUpdate An array of task objects to update. Each object must have an `id`.\n * @returns An array of the tasks that were successfully updated.\n */\n async updateTasks(tasksToUpdate) {\n console.log(tasksToUpdate);\n return tasksToUpdate;\n }\n async executeCommand(command) {\n if (command.name === 'document-signature') {\n this.workflowService.execute(command.name, command);\n }\n return { success: true };\n }\n async getActions(task) {\n const edit = {\n title: `t(\"document-distribution.sign\", { scope: \"${RootConfig.config.i18n}\" })`,\n command: {\n name: 'document-signature',\n options: {\n id: task?.id,\n title: task?.title,\n fileId: task?.data?.document?.fileId,\n }\n },\n };\n return [edit];\n }\n async getExtraFields() {\n return [];\n }\n async getStatuses() {\n return [\n { index: 0, key: 'pending', title: 'Pending' },\n { index: 1, key: 'in-progress', title: 'In Progress' },\n { index: 2, key: 'done', title: 'Done' },\n { index: 3, key: 'canceled', title: 'Canceled' },\n ];\n }\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlzdHJpYnV0aW9uLnRhc2sucHJvdmlkZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL21vZHVsZXMvZG9jdW1lbnQtbWFuYWdlbWVudC9zcmMvbGliL2ZlYXR1cmVzL3Rhc2svZGlzdHJpYnV0aW9uLnRhc2sucHJvdmlkZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBR0EsT0FBTyxFQUtMLGtCQUFrQixFQUNsQix1QkFBdUIsR0FDeEIsTUFBTSwyQkFBMkIsQ0FBQztBQUNuQyxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3ZDLE9BQU8sRUFBZ0Qsc0JBQXNCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUN0RyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBRXpDLE1BQU0sT0FBTyxtQ0FBb0MsU0FBUSx1QkFBcUU7SUFBOUg7O1FBQ1Usb0JBQWUsR0FBRyxNQUFNLENBQUMsc0JBQXNCLENBQUMsQ0FBQztRQUNqRCxvQkFBZSxHQUFHLE1BQU0sQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO0lBeUh2RCxDQUFDO0lBdkhDLElBQUksSUFBSTtRQUNOLE9BQU8sdUJBQXVCLENBQUM7SUFDakMsQ0FBQztJQUVELElBQUksS0FBSztRQUNQLE9BQU8sdUJBQXVCLENBQUM7SUFDakMsQ0FBQztJQUVELElBQUksSUFBSTtRQUNOLE9BQU8sc0JBQXNCLENBQUM7SUFDaEMsQ0FBQztJQUVEOzs7OztPQUtHO0lBQ0gsS0FBSyxDQUFDLFFBQVEsQ0FDWixPQUFzQjtRQUV0QixNQUFNLFVBQVUsR0FBNkI7WUFDM0MsS0FBSyxFQUFFLEtBQUs7WUFDWixPQUFPLEVBQUUsRUFBRTtTQUNaLENBQUM7UUFFRixJQUFJLE9BQU8sRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLENBQUM7WUFDekIsVUFBVSxDQUFDLE9BQU8sRUFBRSxJQUFJLENBQUM7Z0JBQ3ZCLEtBQUssRUFB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QUM7SUFDWixDQUFDO0lBRUQsS0FBSyxDQUFDLFdBQVc7UUFDZixPQUFPO1lBQ0wsRUFBRSxLQUFLLEVBQUUsQ0FBQyxFQUFFLEdBQUcsRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLFNBQVMsRUFBRTtZQUM5QyxFQUFFLEtBQUssRUFBRSxDQUFDLEVBQUUsR0FBRyxFQUFFLGFBQWEsRUFBRSxLQUFLLEVBQUUsYUFBYSxFQUFFO1lBQ3RELEVBQUUsS0FBSyxFQUFFLENBQUMsRUFBRSxHQUFHLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUU7WUFDeEMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxFQUFFLEdBQUcsRUFBRSxVQUFVLEVBQUUsS0FBSyxFQUFFLFVBQVUsRUFBRTtTQUNqRCxDQUFDO0lBQ0osQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQVhEYXRhU291cmNlRmlsdGVyT3B0aW9uIH0gZnJvbSAnQGFjb3JleC9jZGsvY29tbW9uJztcbmltcG9ydCB7IEFYQ2FsZW5kYXJTZXJ2aWNlIH0gZnJvbSAnQGFjb3JleC9jb3JlL2RhdGUtdGltZSc7XG5pbXBvcnQgeyBBWFBBY3Rpb25NZW51SXRlbSwgQVhQRXhlY3V0ZUNvbW1hbmQsIEFYUEV4ZWN1dGVDb21tYW5kUmVzdWx0IH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9jb3JlJztcbmltcG9ydCB7XG4gIEFYUEV4dHJhRmllbGQsXG4gIEFYUFRhc2ssXG4gIEFYUFRhc2tGaWx0ZXIsXG4gIEFYUFRhc2tTdGF0dXMsXG4gIEFYUFdvcmtmbG93U2VydmljZSxcbiAgQVhQV29ya2Zsb3dUYXNrUHJvdmlkZXIsXG59IGZyb20gJ0BhY29yZXgvcGxhdGZvcm0vd29ya2Zsb3cnO1xuaW1wb3J0IHsgaW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBWE1Eb2N1bWVudE1hbmFnZW1lbnREaXN0cmlidXRpb25FbnRpdHlNb2RlbCwgQVhNRGlzdHJpYnV0aW9uU2VydmljZSB9IGZyb20gJy4uLy4uL2VudGl0aWVzJztcbmltcG9ydCB7IFJvb3RDb25maWcgfSBmcm9tICcuLi8uLi9jb25zdCc7XG5cbmV4cG9ydCBjbGFzcyBBWE1Eb2N1bWVudERpc3RyaWJ1dGlvblRhc2tQcm92aWRlciBleHRlbmRzIEFYUFdvcmtmbG93VGFza1Byb3ZpZGVyPEFYTURvY3VtZW50TWFuYWdlbWVudERpc3RyaWJ1dGlvbkVudGl0eU1vZGVsPiB7XG4gIHByaXZhdGUgZG9jdW1lbnRTZXJ2aWNlID0gaW5qZWN0KEFYTURpc3RyaWJ1dGlvblNlcnZpY2UpO1xuICBwcml2YXRlIHdvcmtmbG93U2VydmljZSA9IGluamVjdChBWFBXb3JrZmxvd1NlcnZpY2UpO1xuXG4gIGdldCBuYW1lKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuICdkb2N1bWVudC1kaXN0cmlidXRpb24nO1xuICB9XG5cbiAgZ2V0IHRpdGxlKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuICdEb2N1bWVudCBEaXN0cmlidXRpb24nO1xuICB9XG5cbiAgZ2V0IGljb24oKTogc3RyaW5nIHtcbiAgICByZXR1cm4gJ2ZhLWxpZ2h0IGZhLWZpbGUtcGVuJztcbiAgfVxuXG4gIC8qKlxuICAgKiBSZXRyaWV2ZXMgYSBsaXN0IG9mIHRhc2tzLCBvcHRpb25hbGx5IGZpbHRlcmVkIGJ5IGEgZGF0ZSByYW5nZS5cbiAgICogSWYgYSBkYXRlIHJhbmdlIGlzIHByb3ZpZGVkIGluIHRoZSBvcHRpb25zLCBvbmx5IHRhc2tzIHRoYXQgb3ZlcmxhcCB3aXRoIHRoYXQgcmFuZ2Ugd2lsbCBiZSByZXR1cm5lZC5cbiAgICogQHBhcmFtIG9wdGlvbnMgRmlsdGVyaW5nIG9wdGlvbnMsIHByaW1hcmlseSBjb250YWluaW5nIGEgZGF0ZSByYW5nZS5cbiAgICogQHJldHVybnMgQW4gYXJyYXkgb2YgZmlsdGVyZWQgdGFza3MuXG4gICAqL1xuICBhc3luYyBnZXRUYXNrcyhcbiAgICBvcHRpb25zOiBBWFBUYXNrRmlsdGVyLFxuICApOiBQcm9taXNlPHsgaXRlbXM6IEFYUFRhc2s8QVhNRG9jdW1lbnRNYW5hZ2VtZW50RGlzdHJpYnV0aW9uRW50aXR5TW9kZWw+W107IHRvdGFsOiBudW1iZXIgfT4ge1xuICAgIGNvbnN0IGJhc2VGaWx0ZXI6IEFYRGF0YVNvdXJjZUZpbHRlck9wdGlvbiA9IHtcbiAgICAgIGxvZ2ljOiAnYW5kJyxcbiAgICAgIGZpbHRlcnM6IFtdLFxuICAgIH07XG5cbiAgICBpZiAob3B0aW9ucz8ucmFuZ2U/LmZyb20pIHtcbiAgICAgIGJhc2VGaWx0ZXIuZmlsdGVycz8ucHVzaCh7XG4gICAgICAgIGZpZWxkOiAnZGlzdHJpYnV0aW9uRGF0ZScsXG4gICAgICAgIG9wZXJhdG9yOiB7IHR5cGU6ICdndGUnIH0sXG4gICAgICAgIHZhbHVlOiBvcHRpb25zIS5yYW5nZSEuZnJvbSxcbiAgICAgIH0pO1xuICAgIH1cbiAgICBpZiAob3B0aW9ucz8ucmFuZ2U/LmVuZCkge1xuICAgICAgYmFzZUZpbHRlci5maWx0ZXJzPy5wdXNoKHtcbiAgICAgICAgZmllbGQ6ICdkaXN0cmlidXRpb25EYXRlJyxcbiAgICAgICAgb3BlcmF0b3I6IHsgdHlwZTogJ2x0ZScgfSxcbiAgICAgICAgdmFsdWU6IG9wdGlvbnMhLnJhbmdlIS5lbmQsXG4gICAgICB9KTtcbiAgICB9XG5cbiAgICBjb25zdCBmaWx0ZXJlZExpc3QgPSBhd2FpdCB0aGlzLmRvY3VtZW50U2VydmljZS5xdWVyeSh7XG4gICAgICBza2lwOiBvcHRpb25zPy5za2lwID8/IDAsXG4gICAgICB0YWtlOiBvcHRpb25zPy50YWtlID8/IDEwLFxuICAgICAgZmlsdGVyOiBiYXNlRmlsdGVyLFxuICAgIH0pO1xuXG4gICAgcmV0dXJuIHtcbiAgICAgIGl0ZW1zOiBmaWx0ZXJlZExpc3QuaXRlbXMubWFwPEFYUFRhc2s8QVhNRG9jdW1lbnRNYW5hZ2VtZW50RGlzdHJpYnV0aW9uRW50aXR5TW9kZWw+PigoaXRlbSkgPT4gKHtcbiAgICAgICAgaWQ6IGl0ZW0uaWQsXG4gICAgICAgIHRpdGxlOiBpdGVtLmRvY3VtZW50Py50aXRsZSA/PyAnJyArICcgLSAnICsgaXRlbS52ZXJzaW9uLFxuICAgICAgICBzdGFydERhdGU6IGl0ZW0uY3JlYXRlZEF0ID8/IG5ldyBEYXRlKCksXG4gICAgICAgIGVuZERhdGU6IGl0ZW0uZHVlRGF0ZSA/PyBuZXcgRGF0ZSgpLFxuICAgICAgICBpbmRleDogMCxcbiAgICAgICAgc3RhdHVzOiB7XG4gICAgICAgICAgaWQ6IDAsXG4gICAgICAgICAgdGl0bGU6ICdQZW5kaW5nJyxcbiAgICAgICAgfSxcbiAgICAgICAgcHJpb3JpdHk6ICdoaWdoJyxcbiAgICAgICAgcmVwb3J0ZXI6IHtcbiAgICAgICAgICBpZDogaXRlbS5jcmVhdGVkQnkgPz8gJycsXG4gICAgICAgICAgdHlwZTogJ3VzZXInLFxuICAgICAgICB9LFxuICAgICAgICBkYXRhIDogaXRlbSxcbiAgICAgIH0pKSxcbiAgICAgIHRvdGFsOiBmaWx0ZXJlZExpc3QudG90YWwsXG4gICAgfTtcbiAgfVxuXG4gIC8qKlxuICAgKiBVcGRhdGVzIG9uZSBvciBtb3JlIHRhc2tzIGluIHRoZSBwcm92aWRlcidzIGxpc3QuXG4gICAqIFRoaXMgbWV0aG9kIGZpbmRzIGVhY2ggdGFzayBieSBpdHMgSUQgYW5kIGFwcGxpZXMgdGhlIG5ldyBwcm9wZXJ0aWVzIGZyb20gdGhlIGlucHV0LlxuICAgKiBJdCBhbHNvIGF1dG9tYXRpY2FsbHkgcmVjYWxjdWxhdGVzIHRoZSBgYWxsRGF5YCBmbGFnIGJhc2VkIG9uIHRoZSB0YXNrJ3MgZHVyYXRpb24uXG4gICAqIEBwYXJhbSB0YXNrc1RvVXBkYXRlIEFuIGFycmF5IG9mIHRhc2sgb2JqZWN0cyB0byB1cGRhdGUuIEVhY2ggb2JqZWN0IG11c3QgaGF2ZSBhbiBgaWRgLlxuICAgKiBAcmV0dXJucyBBbiBhcnJheSBvZiB0aGUgdGFza3MgdGhhdCB3ZXJlIHN1Y2Nlc3NmdWxseSB1cGRhdGVkLlxuICAgKi9cbiAgYXN5bmMgdXBkYXRlVGFza3MoXG4gICAgdGFza3NUb1VwZGF0ZTogQVhQVGFzazxBWE1Eb2N1bWVudE1hbmFnZW1lbnREaXN0cmlidXRpb25FbnRpdHlNb2RlbD5bXSxcbiAgKTogUHJvbWlzZTxBWFBUYXNrPEFYTURvY3VtZW50TWFuYWdlbWVudERpc3RyaWJ1dGlvbkVudGl0eU1vZGVsPltdPiB7XG4gICAgY29uc29sZS5sb2codGFza3NUb1VwZGF0ZSk7XG5cbiAgICByZXR1cm4gdGFza3NUb1VwZGF0ZTtcbiAgfVxuXG4gIGFzeW5jIGV4ZWN1dGVDb21tYW5kKGNvbW1hbmQ6IEFYUEV4ZWN1dGVDb21tYW5kKTogUHJvbWlzZTxBWFBFeGVjdXRlQ29tbWFuZFJlc3VsdD4ge1xuICAgIGlmIChjb21tYW5kLm5hbWUgPT09ICdkb2N1bWVudC1zaWduYXR1cmUnKSB7XG4gICAgICB0aGlzLndvcmtmbG93U2VydmljZS5leGVjdXRlKGNvbW1hbmQubmFtZSAsIGNvbW1hbmQpO1xuICAgIH1cbiAgICByZXR1cm4geyBzdWNjZXNzOiB0cnVlIH07XG4gIH1cblxuICBhc3luYyBnZXRBY3Rpb25zKHRhc2s/OiBBWFBUYXNrPEFYTURvY3VtZW50TWFuYWdlbWVudERpc3RyaWJ1dGlvbkVudGl0eU1vZGVsPik6IFByb21pc2U8QVhQQWN0aW9uTWVudUl0ZW1bXT4ge1xuICAgIGNvbnN0IGVkaXQ6IEFYUEFjdGlvbk1lbnVJdGVtID0gIHtcbiAgICAgIHRpdGxlOiBgdChcImRvY3VtZW50LWRpc3RyaWJ1dGlvbi5zaWduXCIsIHsgc2NvcGU6IFwiJHtSb290Q29uZmlnLmNvbmZpZy5pMThufVwiIH0pYCxcbiAgICAgIGNvbW1hbmQ6IHtcbiAgICAgICAgbmFtZSA6ICdkb2N1bWVudC1zaWduYXR1cmUnLFxuICAgICAgICBvcHRpb25zIDoge1xuICAgICAgICAgIGlkIDogdGFzaz8uaWQsXG4gICAgICAgICAgdGl0bGUgOiB0YXNrPy50aXRsZSwgIFxuICAgICAgICAgIGZpbGVJZCA6IHRhc2s/LmRhdGE/LmRvY3VtZW50Py5maWxlSWQsXG4gICAgICAgIH1cbiAgICAgIH0sXG4gICAgfTtcblxuICAgIHJldHVybiBbZWRpdF07XG4gIH1cblxuICBhc3luYyBnZXRFeHRyYUZpZWxkcygpOiBQcm9taXNlPEFYUEV4dHJhRmllbGRbXT4ge1xuICAgIHJldHVybiBbXTtcbiAgfVxuXG4gIGFzeW5jIGdldFN0YXR1c2VzKCk6IFByb21pc2U8QVhQVGFza1N0YXR1c1tdPiB7XG4gICAgcmV0dXJuIFtcbiAgICAgIHsgaW5kZXg6IDAsIGtleTogJ3BlbmRpbmcnLCB0aXRsZTogJ1BlbmRpbmcnIH0sXG4gICAgICB7IGluZGV4OiAxLCBrZXk6ICdpbi1wcm9ncmVzcycsIHRpdGxlOiAnSW4gUHJvZ3Jlc3MnIH0sXG4gICAgICB7IGluZGV4OiAyLCBrZXk6ICdkb25lJywgdGl0bGU6ICdEb25lJyB9LFxuICAgICAgeyBpbmRleDogMywga2V5OiAnY2FuY2VsZWQnLCB0aXRsZTogJ0NhbmNlbGVkJyB9LFxuICAgIF07XG4gIH1cbn1cbiJdfQ==","import { AXPEntityCommandScope } from '@acorex/platform/common';\nimport { actionExists, ensureListActions } from '@acorex/platform/layout/entity';\n/**\n * attachments plugin\n * Notes:\n * - Always ensures an 'attachments' group and single-view section\n * - Always ensures the property exists if missing\n * - Uses provided accept/multiple/fileEditable; others are fixed\n */\nexport const attachmentsPlugin = {\n name: 'attachments',\n order: 50,\n apply: (ctx, options) => {\n const opts = options ?? {};\n const field = opts.field && opts.field.trim().length > 0 ? opts.field : 'attachments';\n const displayTitle = opts.title && opts.title.trim().length > 0 ? opts.title : 'Attachments';\n // Ensure group and section ids (unique per field)\n const sectionId = `attachments-${field}`;\n const groupIdForProperty = `attachments-${field}`;\n const existingGroups = ctx.groups.list() ?? [];\n if (!existingGroups.some((g) => g.id === groupIdForProperty)) {\n ctx.groups.add({ id: groupIdForProperty, title: displayTitle });\n }\n // Ensure property exists (using a generic file-uploader interface)\n const props = ctx.properties.list();\n if (!props.some((p) => p.name === field)) {\n ctx.properties.add({\n name: field,\n title: displayTitle,\n groupId: groupIdForProperty,\n schema: {\n dataType: 'string',\n interface: {\n type: 'file-uploader',\n options: {\n multiple: opts.multiple ?? true,\n accept: opts.accept,\n fileEditable: opts.fileEditable ?? true,\n fileIds: `{{ context.eval(\"${field}\") }}`,\n plugins: opts.plugins ?? [],\n },\n },\n },\n });\n }\n // Ensure column exists\n const cols = ctx.columns.list() ?? [];\n if (!cols?.some((c) => c.name === field)) {\n ctx.columns.add({ name: field });\n }\n // Ensure single view section and property layout exists\n const sectionOrder = 8;\n const colSpan = 12;\n ctx.interfaces.master.single.update((single) => {\n const next = single ?? { title: ctx.entity.title, sections: [], properties: [] };\n next.sections = next.sections ?? [];\n if (!next.sections.some((s) => s.id === sectionId)) {\n next.sections.push({ id: sectionId, title: displayTitle, order: 100 });\n }\n next.properties = next.properties ?? [];\n if (!next.properties.some((p) => p.name === field)) {\n next.properties.push({\n name: field,\n layout: {\n label: { visible: false },\n positions: { lg: { colSpan, order: sectionOrder } },\n },\n });\n }\n return next;\n });\n // Ensure create view includes the section and property layout\n ctx.interfaces.master.create.update((create) => {\n const next = create ?? { sections: [], properties: [] };\n next.sections = next.sections ?? [];\n if (!next.sections.some((s) => s.id === sectionId)) {\n next.sections.push({ id: sectionId, title: displayTitle });\n }\n next.properties = next.properties ?? [];\n if (!next.properties.some((p) => p.name === field)) {\n next.properties.push({\n name: field,\n layout: {\n label: { visible: false },\n positions: { lg: { colSpan, order: 6 } },\n },\n });\n }\n return next;\n });\n // Ensure update view includes the section and property layout\n ctx.interfaces.master.modify.update((modify) => {\n const next = modify ?? { sections: [], properties: [] };\n next.sections = next.sections ?? [];\n if (!next.sections.some((s) => s.id === sectionId)) {\n next.sections.push({ id: sectionId, title: displayTitle });\n }\n next.properties = next.properties ?? [];\n if (!next.properties.some((p) => p.name === field)) {\n next.properties.push({\n name: field,\n layout: {\n positions: { lg: { colSpan, order: 6 } },\n },\n });\n }\n return next;\n });\n // Ensure list action to open file uploader popup exists\n ensureListActions(ctx);\n ctx.interfaces.update((i) => {\n const actions = i.master.list.actions;\n const cmdName = 'show-file-uploader-popup';\n const actionName = `attachments-${field}`;\n if (!actionExists(actions, cmdName, actionName)) {\n actions.push({\n name: actionName,\n title: opts.titleKey ?? opts.label ?? '@document-management:actions.upload-files',\n command: {\n name: cmdName,\n options: {\n id: '{{ context.eval(\"id\") }}',\n files: `{{ context.eval(\"${field}\") }}`,\n multiple: opts.multiple ?? true,\n accept: opts.accept ?? '.jpg,.jpeg,.png,.gif,.webp',\n key: field,\n fileEditable: opts.fileEditable ?? true,\n },\n },\n priority: 'secondary',\n type: 'upload',\n scope: AXPEntityCommandScope.Individual,\n });\n }\n return i;\n });\n // Stamp normalized config for middleware\n ctx.entity.extensions ??= {};\n ctx.entity.extensions.attachments ??= {};\n ctx.entity.extensions.attachments[field] = { title: displayTitle };\n },\n};\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXR0YWNobWVudHMucGx1Z2luLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tb2R1bGVzL2RvY3VtZW50LW1hbmFnZW1lbnQvc3JjL2xpYi9mZWF0dXJlcy9zaGFyZWQvYXR0YWNobWVudHMucGx1Z2luLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ2hFLE9BQU8sRUFBRSxZQUFZLEVBQXlCLGlCQUFpQixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFzQnhHOzs7Ozs7R0FNRztBQUNILE1BQU0sQ0FBQyxNQUFNLGlCQUFpQixHQUEwQjtJQUN0RCxJQUFJLEVBQUUsYUFBYTtJQUNuQixLQUFLLEVBQUUsRUFBRTtJQUNULEtBQUssRUFBRSxDQUFDLEdBQUcsRUFBRSxPQUFrQyxFQUFFLEVBQUU7UUFDakQsTUFBTSxJQUFJLEdBQUcsT0FBTyxJQUFJLEVBQUUsQ0FBQztRQUMzQixNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsS0FBSyxJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxFQUFFLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsYUFBYSxDQUFDO1FBQ3RGLE1BQU0sWUFBWSxHQUFHLElBQUksQ0FBQyxLQUFLLElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLEVBQUUsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxhQUFhLENBQUM7UUFFN0Ysa0RBQWtEO1FBQ2xELE1BQU0sU0FBUyxHQUFHLGVBQWUsS0FBSyxFQUFFLENBQUM7UUFDekMsTUFBTSxrQkFBa0IsR0FBRyxlQUFlLEtBQUssRUFBRSxDQUFDO1FBQ2xELE1BQU0sY0FBYyxHQUFHLEdBQUcsQ0FBQyxN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LEVBQUUsUUFBUTtvQkFDZCxLQUFLLEVBQUUscUJBQXFCLENBQUMsVUFBVTtpQkFDeEMsQ0FBQyxDQUFDO1lBQ0wsQ0FBQztZQUNELE9BQU8sQ0FBUSxDQUFDO1FBQ2xCLENBQUMsQ0FBQyxDQUFDO1FBRUgseUNBQXlDO1FBQ3hDLEdBQUcsQ0FBQyxNQUFjLENBQUMsVUFBVSxLQUFLLEVBQUUsQ0FBQztRQUNyQyxHQUFHLENBQUMsTUFBYyxDQUFDLFVBQVUsQ0FBQyxXQUFXLEtBQUssRUFBRSxDQUFDO1FBQ2pELEdBQUcsQ0FBQyxNQUFjLENBQUMsVUFBVSxDQUFDLFdBQVcsQ0FBQyxLQUFLLENBQUMsR0FBRyxFQUFFLEtBQUssRUFBRSxZQUFZLEVBQUUsQ0FBQztJQUM5RSxDQUFDO0NBQ0YsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFYUEVudGl0eUNvbW1hbmRTY29wZSB9IGZyb20gJ0BhY29yZXgvcGxhdGZvcm0vY29tbW9uJztcbmltcG9ydCB7IGFjdGlvbkV4aXN0cywgQVhQRW50aXR5QWN0aW9uUGx1Z2luLCBlbnN1cmVMaXN0QWN0aW9ucyB9IGZyb20gJ0BhY29yZXgvcGxhdGZvcm0vbGF5b3V0L2VudGl0eSc7XG5cbmV4cG9ydCB0eXBlIEF0dGFjaG1lbnRzUGx1Z2luT3B0aW9ucyA9IHtcbiAgLy8gcHJvcGVydHkgbmFtZSB0byBob2xkIGZpbGUgbGlzdCwgZS5nLiwgZGVmYXVsdCBpcyAnYXR0YWNobWVudHMnXG4gIGZpZWxkPzogc3RyaW5nO1xuICAvLyBmaWVsZCBhbmQgZ3JvdXAgdGl0bGVcbiAgdGl0bGU/OiBzdHJpbmc7XG4gIC8vIGFjY2VwdDogc3RyaW5nIChlLmcuLCAnLmpwZywucG5nJylcbiAgYWNjZXB0Pzogc3RyaW5nO1xuICAvLyBtdWx0aXBsZTogYm9vbGVhbiAoZGVmYXVsdCB0cnVlKVxuICBtdWx0aXBsZT86IGJvb2xlYW47XG4gIC8vIHRpdGxlS2V5OiBzdHJpbmcgKGkxOG4ga2V5IGZvciBhY3Rpb24gdGl0bGUpXG4gIHRpdGxlS2V5Pzogc3RyaW5nO1xuICAvLyBsYWJlbDogc3RyaW5nIChmYWxsYmFjayBhY3Rpb24gbGFiZWwpXG4gIGxhYmVsPzogc3RyaW5nO1xuICAvLyBmaWxlRWRpdGFibGU6IGJvb2xlYW4gKGRlZmF1bHQgdHJ1ZSlcbiAgZmlsZUVkaXRhYmxlPzogYm9vbGVhbjtcbiAgLy8gZmlsZS11cGxvYWRlciBwbHVnaW5zXG4gIHBsdWdpbnM/OiB7IG5hbWU6IHN0cmluZzsgb3B0aW9ucz86IHVua25vd24gfVtdO1xuICBleGNsdWRlUGx1Z2lucz86IHN0cmluZ1tdO1xufTtcblxuLyoqXG4gKiBhdHRhY2htZW50cyBwbHVnaW5cbiAqIE5vdGVzOlxuICogLSBBbHdheXMgZW5zdXJlcyBhbiAnYXR0YWNobWVudHMnIGdyb3VwIGFuZCBzaW5nbGUtdmlldyBzZWN0aW9uXG4gKiAtIEFsd2F5cyBlbnN1cmVzIHRoZSBwcm9wZXJ0eSBleGlzdHMgaWYgbWlzc2luZ1xuICogLSBVc2VzIHByb3ZpZGVkIGFjY2VwdC9tdWx0aXBsZS9maWxlRWRpdGFibGU7IG90aGVycyBhcmUgZml4ZWRcbiAqL1xuZXhwb3J0IGNvbnN0IGF0dGFjaG1lbnRzUGx1Z2luOiBBWFBFbnRpdHlBY3Rpb25QbHVnaW4gPSB7XG4gIG5hbWU6ICdhdHRhY2htZW50cycsXG4gIG9yZGVyOiA1MCxcbiAgYXBwbHk6IChjdHgsIG9wdGlvbnM/OiBBdHRhY2htZW50c1BsdWdpbk9wdGlvbnMpID0+IHtcbiAgICBjb25zdCBvcHRzID0gb3B0aW9ucyA/PyB7fTtcbiAgICBjb25zdCBmaWVsZCA9IG9wdHMuZmllbGQgJiYgb3B0cy5maWVsZC50cmltKCkubGVuZ3RoID4gMCA/IG9wdHMuZmllbGQgOiAnYXR0YWNobWVudHMnO1xuICAgIGNvbnN0IGRpc3BsYXlUaXRsZSA9IG9wdHMudGl0bGUgJiYgb3B0cy50aXRsZS50cmltKCkubGVuZ3RoID4gMCA/IG9wdHMudGl0bGUgOiAnQXR0YWNobWVudHMnO1xuXG4gICAgLy8gRW5zdXJlIGdyb3VwIGFuZCBzZWN0aW9uIGlkcyAodW5pcXVlIHBlciBmaWVsZClcbiAgICBjb25zdCBzZWN0aW9uSWQgPSBgYXR0YWNobWVudHMtJHtmaWVsZH1gO1xuICAgIGNvbnN0IGdyb3VwSWRGb3JQcm9wZXJ0eSA9IGBhdHRhY2htZW50cy0ke2ZpZWxkfWA7XG4gICAgY29uc3QgZXhpc3RpbmdHcm91cHMgPSBjdHguZ3JvdXBzLmxpc3QoKSA/PyBbXTtcbiAgICBpZiAoIWV4aXN0aW5nR3JvdXBzLnNvbWUoKGc6IGFueSkgPT4gZy5pZCA9PT0gZ3JvdXBJZEZvclByb3BlcnR5KSkge1xuICAgICAgY3R4Lmdyb3Vwcy5hZGQoeyBpZDogZ3JvdXBJZEZvclByb3BlcnR5LCB0aXRsZTogZGlzcGxheVRpdGxlIH0gYXMgYW55KTtcbiAgICB9XG5cbiAgICAvLyBFbnN1cmUgcHJvcGVydHkgZXhpc3RzICh1c2luZyBhIGdlbmVyaWMgZmlsZS11cGxvYWRlciBpbnRlcmZhY2UpXG4gICAgY29uc3QgcHJvcHMgPSBjdHgucHJvcGVydGllcy5saXN0KCk7XG4gICAgaWYgKCFwcm9wcy5zb21lKChwOiBhbnkpID0+IHAubmFtZSA9PT0gZmllbGQpKSB7XG4gICAgICBjdHgucHJvcGVydGllcy5hZGQoe1xuICAgICAgICBuYW1lOiBmaWVsZCxcbiAgICAgICAgdGl0bGU6IGRpc3BsYXlUaXRsZSxcbiAgICAgICAgZ3JvdXBJZDogZ3JvdXBJZEZvclByb3BlcnR5LFxuICAgICAgICBzY2hlbWE6IHtcbiAgICAgICAgICBkYXRhVHlwZTogJ3N0cmluZycsXG4gICAgICAgICAgaW50ZXJmYWNlOiB7XG4gICAgICAgICAgICB0eXBlOiAnZmlsZS11cGxvYWRlcicsXG4gICAgICAgICAgICBvcHRpb25zOiB7XG4gICAgICAgICAgICAgIG11bHRpcGxlOiBvcHRzLm11bHRpcGxlID8/IHRydWUsXG4gICAgICAgICAgICAgIGFjY2VwdDogb3B0cy5hY2NlcHQsXG4gICAgICAgICAgICAgIGZpbGVFZGl0YWJsZTogb3B0cy5maWxlRWRpdGFibGUgPz8gdHJ1ZSxcbiAgICAgICAgICAgICAgZmlsZUlkczogYHt7IGNvbnRleHQuZXZhbChcIiR7ZmllbGR9XCIpIH19YCxcbiAgICAgICAgICAgICAgcGx1Z2luczogb3B0cy5wbHVnaW5zID8/IFtdLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgfSBhcyBhbnkpO1xuICAgIH1cblxuICAgIC8vIEVuc3VyZSBjb2x1bW4gZXhpc3RzXG4gICAgY29uc3QgY29scyA9IGN0eC5jb2x1bW5zLmxpc3QoKSA/PyBbXTtcbiAgICBpZiAoIWNvbHM/LnNvbWUoKGM6IGFueSkgPT4gYy5uYW1lID09PSBmaWVsZCkpIHtcbiAgICAgIGN0eC5jb2x1bW5zLmFkZCh7IG5hbWU6IGZpZWxkIH0gYXMgYW55KTtcbiAgICB9XG5cbiAgICAvLyBFbnN1cmUgc2luZ2xlIHZpZXcgc2VjdGlvbiBhbmQgcHJvcGVydHkgbGF5b3V0IGV4aXN0c1xuICAgIGNvbnN0IHNlY3Rpb25PcmRlciA9IDg7XG4gICAgY29uc3QgY29sU3BhbiA9IDEyO1xuICAgIGN0eC5pbnRlcmZhY2VzLm1hc3Rlci5zaW5nbGUudXBkYXRlKChzaW5nbGUpID0+IHtcbiAgICAgIGNvbnN0IG5leHQ6IGFueSA9IHNpbmdsZSA/PyB7IHRpdGxlOiBjdHguZW50aXR5LnRpdGxlLCBzZWN0aW9uczogW10sIHByb3BlcnRpZXM6IFtdIH07XG4gICAgICBuZXh0LnNlY3Rpb25zID0gbmV4dC5zZWN0aW9ucyA/PyBbXTtcbiAgICAgIGlmICghbmV4dC5zZWN0aW9ucy5zb21lKChzOiBhbnkpID0+IHMuaWQgPT09IHNlY3Rpb25JZCkpIHtcbiAgICAgICAgbmV4dC5zZWN0aW9ucy5wdXNoKHsgaWQ6IHNlY3Rpb25JZCwgdGl0bGU6IGRpc3BsYXlUaXRsZSwgb3JkZXI6IDEwMCB9KTtcbiAgICAgIH1cbiAgICAgIG5leHQucHJvcGVydGllcyA9IG5leHQucHJvcGVydGllcyA/PyBbXTtcbiAgICAgIGlmICghbmV4dC5wcm9wZXJ0aWVzLnNvbWUoKHA6IGFueSkgPT4gcC5uYW1lID09PSBmaWVsZCkpIHtcbiAgICAgICAgbmV4dC5wcm9wZXJ0aWVzLnB1c2goe1xuICAgICAgICAgIG5hbWU6IGZpZWxkLFxuICAgICAgICAgIGxheW91dDoge1xuICAgICAgICAgICAgbGFiZWw6IHsgdmlzaWJsZTogZmFsc2UgfSxcbiAgICAgICAgICAgIHBvc2l0aW9uczogeyBsZzogeyBjb2xTcGFuLCBvcmRlcjogc2VjdGlvbk9yZGVyIH0gfSxcbiAgICAgICAgICB9LFxuICAgICAgICB9KTtcbiAgICAgIH1cbiAgICAgIHJldHVybiBuZXh0O1xuICAgIH0pO1xuXG4gICAgLy8gRW5zdXJlIGNyZWF0ZSB2aWV3IGluY2x1ZGVzIHRoZSBzZWN0aW9uIGFuZCBwcm9wZXJ0eSBsYXlvdXRcbiAgICBjdHguaW50ZXJmYWNlcy5tYXN0ZXIuY3JlYXRlLnVwZGF0ZSgoY3JlYXRlKSA9PiB7XG4gICAgICBjb25zdCBuZXh0OiBhbnkgPSBjcmVhdGUgPz8geyBzZWN0aW9uczogW10sIHByb3BlcnRpZXM6IFtdIH07XG4gICAgICBuZXh0LnNlY3Rpb25zID0gbmV4dC5zZWN0aW9ucyA/PyBbXTtcbiAgICAgIGlmICghbmV4dC5zZWN0aW9ucy5zb21lKChzOiBhbnkpID0+IHMuaWQgPT09IHNlY3Rpb25JZCkpIHtcbiAgICAgICAgbmV4dC5zZWN0aW9ucy5wdXNoKHsgaWQ6IHNlY3Rpb25JZCwgdGl0bGU6IGRpc3BsYXlUaXRsZSB9KTtcbiAgICAgIH1cbiAgICAgIG5leHQucHJvcGVydGllcyA9IG5leHQucHJvcGVydGllcyA/PyBbXTtcbiAgICAgIGlmICghbmV4dC5wcm9wZXJ0aWVzLnNvbWUoKHA6IGFueSkgPT4gcC5uYW1lID09PSBmaWVsZCkpIHtcbiAgICAgICAgbmV4dC5wcm9wZXJ0aWVzLnB1c2goe1xuICAgICAgICAgIG5hbWU6IGZpZWxkLFxuICAgICAgICAgIGxheW91dDoge1xuICAgICAgICAgICAgbGFiZWw6IHsgdmlzaWJsZTogZmFsc2UgfSxcbiAgICAgICAgICAgIHBvc2l0aW9uczogeyBsZzogeyBjb2xTcGFuLCBvcmRlcjogNiB9IH0sXG4gICAgICAgICAgfSxcbiAgICAgICAgfSk7XG4gICAgICB9XG4gICAgICByZXR1cm4gbmV4dDtcbiAgICB9KTtcblxuICAgIC8vIEVuc3VyZSB1cGRhdGUgdmlldyBpbmNsdWRlcyB0aGUgc2VjdGlvbiBhbmQgcHJvcGVydHkgbGF5b3V0XG4gICAgY3R4LmludGVyZmFjZXMubWFzdGVyLm1vZGlmeS51cGRhdGUoKG1vZGlmeSkgPT4ge1xuICAgICAgY29uc3QgbmV4dDogYW55ID0gbW9kaWZ5ID8/IHsgc2VjdGlvbnM6IFtdLCBwcm9wZXJ0aWVzOiBbXSB9O1xuICAgICAgbmV4dC5zZWN0aW9ucyA9IG5leHQuc2VjdGlvbnMgPz8gW107XG4gICAgICBpZiAoIW5leHQuc2VjdGlvbnMuc29tZSgoczogYW55KSA9PiBzLmlkID09PSBzZWN0aW9uSWQpKSB7XG4gICAgICAgIG5leHQuc2VjdGlvbnMucHVzaCh7IGlkOiBzZWN0aW9uSWQsIHRpdGxlOiBkaXNwbGF5VGl0bGUgfSk7XG4gICAgICB9XG4gICAgICBuZXh0LnByb3BlcnRpZXMgPSBuZXh0LnByb3BlcnRpZXMgPz8gW107XG4gICAgICBpZiAoIW5leHQucHJvcGVydGllcy5zb21lKChwOiBhbnkpID0+IHAubmFtZSA9PT0gZmllbGQpKSB7XG4gICAgICAgIG5leHQucHJvcGVydGllcy5wdXNoKHtcbiAgICAgICAgICBuYW1lOiBmaWVsZCxcbiAgICAgICAgICBsYXlvdXQ6IHtcbiAgICAgICAgICAgIHBvc2l0aW9uczogeyBsZzogeyBjb2xTcGFuLCBvcmRlcjogNiB9IH0sXG4gICAgICAgICAgfSxcbiAgICAgICAgfSk7XG4gICAgICB9XG4gICAgICByZXR1cm4gbmV4dDtcbiAgICB9KTtcblxuICAgIC8vIEVuc3VyZSBsaXN0IGFjdGlvbiB0byBvcGVuIGZpbGUgdXBsb2FkZXIgcG9wdXAgZXhpc3RzXG4gICAgZW5zdXJlTGlzdEFjdGlvbnMoY3R4KTtcbiAgICBjdHguaW50ZXJmYWNlcy51cGRhdGUoKGkpID0+IHtcbiAgICAgIGNvbnN0IGFjdGlvbnMgPSAoaSBhcyBhbnkpLm1hc3Rlci5saXN0LmFjdGlvbnMgYXMgYW55W107XG4gICAgICBjb25zdCBjbWROYW1lID0gJ3Nob3ctZmlsZS11cGxvYWRlci1wb3B1cCc7XG4gICAgICBjb25zdCBhY3Rpb25OYW1lID0gYGF0dGFjaG1lbnRzLSR7ZmllbGR9YDtcbiAgICAgIGlmICghYWN0aW9uRXhpc3RzKGFjdGlvbnMsIGNtZE5hbWUsIGFjdGlvbk5hbWUpKSB7XG4gICAgICAgIGFjdGlvbnMucHVzaCh7XG4gICAgICAgICAgbmFtZTogYWN0aW9uTmFtZSxcbiAgICAgICAgICB0aXRsZTogb3B0cy50aXRsZUtleSA/PyBvcHRzLmxhYmVsID8/ICdAZG9jdW1lbnQtbWFuYWdlbWVudDphY3Rpb25zLnVwbG9hZC1maWxlcycsXG4gICAgICAgICAgY29tbWFuZDoge1xuICAgICAgICAgICAgbmFtZTogY21kTmFtZSxcbiAgICAgICAgICAgIG9wdGlvbnM6IHtcbiAgICAgICAgICAgICAgaWQ6ICd7eyBjb250ZXh0LmV2YWwoXCJpZFwiKSB9fScsXG4gICAgICAgICAgICAgIGZpbGVzOiBge3sgY29udGV4dC5ldmFsKFwiJHtmaWVsZH1cIikgfX1gLFxuICAgICAgICAgICAgICBtdWx0aXBsZTogb3B0cy5tdWx0aXBsZSA/PyB0cnVlLFxuICAgICAgICAgICAgICBhY2NlcHQ6IG9wdHMuYWNjZXB0ID8/ICcuanBnLC5qcGVnLC5wbmcsLmdpZiwud2VicCcsXG4gICAgICAgICAgICAgIGtleTogZmllbGQsXG4gICAgICAgICAgICAgIGZpbGVFZGl0YWJsZTogb3B0cy5maWxlRWRpdGFibGUgPz8gdHJ1ZSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgfSxcbiAgICAgICAgICBwcmlvcml0eTogJ3NlY29uZGFyeScsXG4gICAgICAgICAgdHlwZTogJ3VwbG9hZCcsXG4gICAgICAgICAgc2NvcGU6IEFYUEVudGl0eUNvbW1hbmRTY29wZS5JbmRpdmlkdWFsLFxuICAgICAgICB9KTtcbiAgICAgIH1cbiAgICAgIHJldHVybiBpIGFzIGFueTtcbiAgICB9KTtcblxuICAgIC8vIFN0YW1wIG5vcm1hbGl6ZWQgY29uZmlnIGZvciBtaWRkbGV3YXJlXG4gICAgKGN0eC5lbnRpdHkgYXMgYW55KS5leHRlbnNpb25zID8/PSB7fTtcbiAgICAoY3R4LmVudGl0eSBhcyBhbnkpLmV4dGVuc2lvbnMuYXR0YWNobWVudHMgPz89IHt9O1xuICAgIChjdHguZW50aXR5IGFzIGFueSkuZXh0ZW5zaW9ucy5hdHRhY2htZW50c1tmaWVsZF0gPSB7IHRpdGxlOiBkaXNwbGF5VGl0bGUgfTtcbiAgfSxcbn07XG4iXX0=","import { inject, Injector } from '@angular/core';\nimport { AXMDocumentTypeService } from '../../entities/document-type/document-type.service';\nimport { AXPopupService } from '@acorex/components/popup';\nimport { set } from 'lodash-es';\n// ---------------- Configure: set accept based on docTypeId ----------------\nexport const DocumentFileUploaderConfigureProvider = {\n key: 'file-uploader.configure',\n priority: 0,\n async execute(payload) {\n const isEnabled = Array.isArray(payload.plugins) && payload.plugins.some(p => p.name === 'document');\n const isExcluded = Array.isArray(payload.excludePlugins) && payload.excludePlugins.includes('document');\n if (!isEnabled || isExcluded)\n return payload;\n const opts = (payload.plugins.find(p => p.name === 'document')?.options ?? {});\n if (!opts.docTypeName)\n return payload;\n const documentTypeService = inject(AXMDocumentTypeService);\n const docType = await documentTypeService.getByName(opts.docTypeName);\n const selected = docType?.type?.selectedItems ?? [];\n const extensions = Array.from(new Set(selected\n .map((s) => s?.name)\n .filter((n) => typeof n === 'string' && n.includes('.'))\n .map((n) => `.${n.split('.').pop()?.toLowerCase()}`)));\n payload.overrides = payload.overrides || {};\n payload.overrides['accept'] = extensions.join(',');\n return payload;\n },\n};\n// --------------- After Files Added: scaffold for post-add processing ---------------\nexport const DocumentFileUploaderBeforeFilesAddedProvider = {\n key: 'file-uploader.beforeFilesAdded',\n priority: 0,\n async execute(payload) {\n const isEnabled = Array.isArray(payload.plugins) && payload.plugins.some(p => p.name === 'document');\n const isExcluded = Array.isArray(payload.excludePlugins) && payload.excludePlugins.includes('document');\n if (!isEnabled || isExcluded)\n return payload;\n const opts = (payload.plugins.find(p => p.name === 'document')?.options ?? {});\n if (!opts.docTypeName)\n return payload;\n const injector = inject(Injector);\n const documentTypeService = injector.get(AXMDocumentTypeService);\n const docType = await documentTypeService.getByName(opts.docTypeName);\n const popupService = injector.get(AXPopupService);\n const comp = (await import('./components')).AXMDocumentTypeChooseFileComponent;\n const result = await popupService.open(comp, {\n title: 'Document Type Choose File',\n data: {\n files: payload.newFiles,\n documentType: docType,\n },\n });\n if ((result.data?.cancel != null && !result.data.cancel) && result.data?.files) {\n payload.newFiles.forEach((file, i) => {\n set(file, 'meta', result.data.files[i].meta);\n });\n }\n return payload;\n },\n};\n// --------------- Per-File Actions: scaffold to add item-level actions ---------------\nexport const DocumentFileUploaderFileItemActionsProvider = {\n key: 'file-uploader.fileItem.actions',\n priority: 0,\n async execute(payload) {\n const isEnabled = Array.isArray(payload.plugins) && payload.plugins.some(p => p.name === 'document');\n const isExcluded = Array.isArray(payload.excludePlugins) && payload.excludePlugins.includes('document');\n if (!isEnabled || isExcluded)\n return payload;\n payload.actions = [\n ...(payload.actions ?? []),\n {\n plugin: 'document',\n global: false,\n textKey: '@document-management:actions.edit-metadata',\n icon: 'fa-light fa-pen-to-square',\n run: async (ctx) => {\n // Scaffold: open metadata editing flow and then update file via capabilities\n // ctx.capabilities.updateFile(f => f.id === payload.item.id, f => ({ ...f, /* ... */ }));\n },\n },\n ];\n return payload;\n },\n};\n// Convenience export to register all providers at once in a module\nexport const DocumentFileUploaderWidgetPluginProviders = [\n DocumentFileUploaderConfigureProvider,\n DocumentFileUploaderBeforeFilesAddedProvider,\n DocumentFileUploaderFileItemActionsProvider,\n];\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG9jdW1lbnQtZmlsZS11cGxvYWRlci53aWRnZXQucGx1Z2luLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tb2R1bGVzL2RvY3VtZW50LW1hbmFnZW1lbnQvc3JjL2xpYi9mZWF0dXJlcy9zaGFyZWQvZG9jdW1lbnQtZmlsZS11cGxvYWRlci53aWRnZXQucGx1Z2luLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxNQUFNLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRWpELE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLG9EQUFvRCxDQUFDO0FBQzVGLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUUxRCxPQUFPLEVBQUUsR0FBRyxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBMEJoQyw2RUFBNkU7QUFDN0UsTUFBTSxDQUFDLE1BQU0scUNBQXFDLEdBQWtEO0lBQ2xHLEdBQUcsRUFBRSx5QkFBeUI7SUFDOUIsUUFBUSxFQUFFLENBQUM7SUFDWCxLQUFLLENBQUMsT0FBTyxDQUFDLE9BQTZEO1FBQ3pFLE1BQU0sU0FBUyxHQUFHLEtBQUssQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxJQUFJLE9BQU8sQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksS0FBSyxVQUFVLENBQUMsQ0FBQztRQUNyRyxNQUFNLFVBQVUsR0FBRyxLQUFLLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxjQUFjLENBQUMsSUFBSSxPQUFPLENBQUMsY0FBYyxDQUFDLFFBQVEsQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUN4RyxJQUFJLENBQUMsU0FBUyxJQUFJLFVBQVU7WUFBRSxPQUFPLE9BQU8sQ0FBQztRQUU3QyxNQUFNLElBQUksR0FBRyxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsSUFB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UUFDeEcsSUFBSSxDQUFDLFNBQVMsSUFBSSxVQUFVO1lBQUUsT0FBTyxPQUFPLENBQUM7UUFFN0MsT0FBTyxDQUFDLE9BQU8sR0FBRztZQUNoQixHQUFHLENBQUMsT0FBTyxDQUFDLE9BQU8sSUFBSSxFQUFFLENBQUM7WUFDMUI7Z0JBQ0UsTUFBTSxFQUFFLFVBQVU7Z0JBQ2xCLE1BQU0sRUFBRSxLQUFLO2dCQUNiLE9BQU8sRUFBRSw0Q0FBNEM7Z0JBQ3JELElBQUksRUFBRSwyQkFBMkI7Z0JBQ2pDLEdBQUcsRUFBRSxLQUFLLEVBQUUsR0FBUSxFQUFFLEVBQUU7b0JBQ3RCLDZFQUE2RTtvQkFDN0UsMEZBQTBGO2dCQUM1RixDQUFDO2FBQ0Y7U0FDRixDQUFDO1FBRUYsT0FBTyxPQUFPLENBQUM7SUFDakIsQ0FBQztDQUNGLENBQUM7QUFFRixtRUFBbUU7QUFDbkUsTUFBTSxDQUFDLE1BQU0seUNBQXlDLEdBQUc7SUFDdkQscUNBQXFDO0lBQ3JDLDRDQUE0QztJQUM1QywyQ0FBMkM7Q0FDNUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGluamVjdCwgSW5qZWN0b3IgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFYUERpc3RyaWJ1dGVkRXZlbnRMaXN0ZW5lclByb3ZpZGVyLCBBWFBGaWxlTGlzdEl0ZW0gfSBmcm9tICdAYWNvcmV4L3BsYXRmb3JtL2NvcmUnO1xuaW1wb3J0IHsgQVhNRG9jdW1lbnRUeXBlU2VydmljZSB9IGZyb20gJy4uLy4uL2VudGl0aWVzL2RvY3VtZW50LXR5cGUvZG9jdW1lbnQtdHlwZS5zZXJ2aWNlJztcbmltcG9ydCB7IEFYUG9wdXBTZXJ2aWNlIH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL3BvcHVwJztcbmltcG9ydCB7IEFYUEZpbGVVcGxvYWRlcldpZGdldEVkaXRDb21wb25lbnQgfSBmcm9tICdAYWNvcmV4L3BsYXRmb3JtL3dpZGdldHMnO1xuaW1wb3J0IHsgc2V0IH0gZnJvbSAnbG9kYXNoLWVzJztcblxuLyoqXG4gKiBEb2N1bWVudCBGaWxlIFVwbG9hZGVyIFdpZGdldCBQbHVnaW5cbiAqXG4gKiBQcm92aWRlcyBob29rIHByb3ZpZGVycyBmb3IgdGhlIEZpbGUgVXBsb2FkZXIgd2lkZ2V0IHRvIGludGVncmF0ZSBEb2N1bWVudCBNYW5hZ2VtZW50IGJlaGF2aW9ycy5cbiAqIEtleXMgaW1wbGVtZW50ZWQgaGVyZTpcbiAqIC0gZmlsZS11cGxvYWRlci5jb25maWd1cmUgICAgICAgICDihpIgb3ZlcnJpZGUgYWNjZXB0IGJhc2VkIG9uIGRvY1R5cGVJZFxuICogLSBmaWxlLXVwbG9hZGVyLmFmdGVyRmlsZXNBZGRlZCAgIOKGkiBlbnRyeSBwb2ludCBmb3IgcG9zdC1hZGQgcHJvY2Vzc2luZyAoc2NhZmZvbGQpXG4gKiAtIGZpbGUtdXBsb2FkZXIuZmlsZUl0ZW0uYWN0aW9ucyAg4oaSIGFkZCBwZXItZmlsZSBhY3Rpb25zIChlLmcuLCBFZGl0IE1ldGFkYXRhKSAoc2NhZmZvbGQpXG4gKlxuICogQ29udmVudGlvbnM6XG4gKiAtIHBsdWdpbiBuYW1lOiAnZG9jdW1lbnQnXG4gKiAtIHBsdWdpbk9wdGlvbnMga2V5OiBwbHVnaW5PcHRpb25zWydkb2N1bWVudCddIGFzIHsgZG9jVHlwZU5hbWU6IHN0cmluZyB9XG4gKi9cblxudHlwZSBEb2N1bWVudFBsdWdpbk9wdGlvbnMgPSB7IGRvY1R5cGVOYW1lOiBzdHJpbmcgfTtcblxudHlwZSBCYXNlUGF5bG9hZCA9IHtcbiAgcGx1Z2luczogeyBuYW1lOiBzdHJpbmc7IG9wdGlvbnM/OiB1bmtub3duIH1bXTtcbiAgZXhjbHVkZVBsdWdpbnM6IHN0cmluZ1tdO1xuICBwbHVnaW5PcHRpb25zPzogUmVjb3JkPHN0cmluZywgdW5rbm93bj47XG4gIGNhcGFiaWxpdGllczogYW55O1xuICBob3N0OiBBWFBGaWxlVXBsb2FkZXJXaWRnZXRFZGl0Q29tcG9uZW50O1xufTtcblxuLy8gLS0tLS0tLS0tLS0tLS0tLSBDb25maWd1cmU6IHNldCBhY2NlcHQgYmFzZWQgb24gZG9jVHlwZUlkIC0tLS0tLS0tLS0tLS0tLS1cbmV4cG9ydCBjb25zdCBEb2N1bWVudEZpbGVVcGxvYWRlckNvbmZpZ3VyZVByb3ZpZGVyOiBBWFBEaXN0cmlidXRlZEV2ZW50TGlzdGVuZXJQcm92aWRlcjxhbnksIGFueT4gPSB7XG4gIGtleTogJ2ZpbGUtdXBsb2FkZXIuY29uZmlndXJlJyxcbiAgcHJpb3JpdHk6IDAsXG4gIGFzeW5jIGV4ZWN1dGUocGF5bG9hZDogQmFzZVBheWxvYWQgJiB7IG92ZXJyaWRlczogUmVjb3JkPHN0cmluZywgdW5rbm93bj4gfSkge1xuICAgIGNvbnN0IGlzRW5hYmxlZCA9IEFycmF5LmlzQXJyYXkocGF5bG9hZC5wbHVnaW5zKSAmJiBwYXlsb2FkLnBsdWdpbnMuc29tZShwID0+IHAubmFtZSA9PT0gJ2RvY3VtZW50Jyk7XG4gICAgY29uc3QgaXNFeGNsdWRlZCA9IEFycmF5LmlzQXJyYXkocGF5bG9hZC5leGNsdWRlUGx1Z2lucykgJiYgcGF5bG9hZC5leGNsdWRlUGx1Z2lucy5pbmNsdWRlcygnZG9jdW1lbnQnKTtcbiAgICBpZiAoIWlzRW5hYmxlZCB8fCBpc0V4Y2x1ZGVkKSByZXR1cm4gcGF5bG9hZDtcblxuICAgIGNvbnN0IG9wdHMgPSAocGF5bG9hZC5wbHVnaW5zLmZpbmQocCA9PiBwLm5hbWUgPT09ICdkb2N1bWVudCcpPy5vcHRpb25zID8/IHt9KSBhcyBEb2N1bWVudFBsdWdpbk9wdGlvbnM7XG4gICAgaWYgKCFvcHRzLmRvY1R5cGVOYW1lKSByZXR1cm4gcGF5bG9hZDtcblxuICAgIGNvbnN0IGRvY3VtZW50VHlwZVNlcnZpY2UgPSBpbmplY3QoQVhNRG9jdW1lbnRUeXBlU2VydmljZSk7XG4gICAgY29uc3QgZG9jVHlwZSA9IGF3YWl0IGRvY3VtZW50VHlwZVNlcnZpY2UuZ2V0QnlOYW1lKG9wdHMuZG9jVHlwZU5hbWUpO1xuICAgIGNvbnN0IHNlbGVjdGVkID0gZG9jVHlwZT8udHlwZT8uc2VsZWN0ZWRJdGVtcyA/PyBbXTtcblxuICAgIGNvbnN0IGV4dGVuc2lvbnM6IHN0cmluZ1tdID0gQXJyYXkuZnJvbShcbiAgICAgIG5ldyBTZXQoXG4gICAgICAgIChzZWxlY3RlZCBhcyBhbnlbXSlcbiAgICAgICAgICAubWFwKChzKSA9PiBzPy5uYW1lKVxuICAgICAgICAgIC5maWx0ZXIoKG46IHN0cmluZykgPT4gdHlwZW9mIG4gPT09ICdzdHJpbmcnICYmIG4uaW5jbHVkZXMoJy4nKSlcbiAgICAgICAgICAubWFwKChuOiBzdHJpbmcpID0+IGAuJHtuLnNwbGl0KCcuJykucG9wKCk/LnRvTG93ZXJDYXNlKCl9YClcbiAgICAgIClcbiAgICApO1xuXG4gICAgcGF5bG9hZC5vdmVycmlkZXMgPSBwYXlsb2FkLm92ZXJyaWRlcyB8fCB7fTtcbiAgICBwYXlsb2FkLm92ZXJyaWRlc1snYWNjZXB0J10gPSBleHRlbnNpb25zLmpvaW4oJywnKTtcbiAgICByZXR1cm4gcGF5bG9hZDtcbiAgfSxcbn07XG5cbi8vIC0tLS0tLS0tLS0tLS0tLSBBZnRlciBGaWxlcyBBZGRlZDogc2NhZmZvbGQgZm9yIHBvc3QtYWRkIHByb2Nlc3NpbmcgLS0tLS0tLS0tLS0tLS0tXG5leHBvcnQgY29uc3QgRG9jdW1lbnRGaWxlVXBsb2FkZXJCZWZvcmVGaWxlc0FkZGVkUHJvdmlkZXI6IEFYUERpc3RyaWJ1dGVkRXZlbnRMaXN0ZW5lclByb3ZpZGVyPGFueSwgYW55PiA9IHtcbiAga2V5OiAnZmlsZS11cGxvYWRlci5iZWZvcmVGaWxlc0FkZGVkJyxcbiAgcHJpb3JpdHk6IDAsXG4gIGFzeW5jIGV4ZWN1dGUocGF5bG9hZDogQmFzZVBheWxvYWQgJiB7IG5ld0ZpbGVzOiBBWFBGaWxlTGlzdEl0ZW1bXSB9KSB7XG4gICAgY29uc3QgaXNFbmFibGVkID0gQXJyYXkuaXNBcnJheShwYXlsb2FkLnBsdWdpbnMpICYmIHBheWxvYWQucGx1Z2lucy5zb21lKHAgPT4gcC5uYW1lID09PSAnZG9jdW1lbnQnKTtcbiAgICBjb25zdCBpc0V4Y2x1ZGVkID0gQXJyYXkuaXNBcnJheShwYXlsb2FkLmV4Y2x1ZGVQbHVnaW5zKSAmJiBwYXlsb2FkLmV4Y2x1ZGVQbHVnaW5zLmluY2x1ZGVzKCdkb2N1bWVudCcpO1xuICAgIGlmICghaXNFbmFibGVkIHx8IGlzRXhjbHVkZWQpIHJldHVybiBwYXlsb2FkO1xuXG4gICAgY29uc3Qgb3B0cyA9IChwYXlsb2FkLnBsdWdpbnMuZmluZChwID0+IHAubmFtZSA9PT0gJ2RvY3VtZW50Jyk/Lm9wdGlvbnMgPz8ge30pIGFzIERvY3VtZW50UGx1Z2luT3B0aW9ucztcbiAgICBpZiAoIW9wdHMuZG9jVHlwZU5hbWUpIHJldHVybiBwYXlsb2FkO1xuXG4gICAgY29uc3QgaW5qZWN0b3IgPSBpbmplY3QoSW5qZWN0b3IpO1xuICAgIGNvbnN0IGRvY3VtZW50VHlwZVNlcnZpY2UgPSBpbmplY3Rvci5nZXQoQVhNRG9jdW1lbnRUeXBlU2VydmljZSk7XG4gICAgY29uc3QgZG9jVHlwZSA9IGF3YWl0IGRvY3VtZW50VHlwZVNlcnZpY2UuZ2V0QnlOYW1lKG9wdHMuZG9jVHlwZU5hbWUpO1xuICAgIFxuXG4gICAgY29uc3QgcG9wdXBTZXJ2aWNlID0gaW5qZWN0b3IuZ2V0KEFYUG9wdXBTZXJ2aWNlKTtcbiAgICBjb25zdCBjb21wID0gKGF3YWl0IGltcG9ydCgnLi9jb21wb25lbnRzJykpLkFYTURvY3VtZW50VHlwZUNob29zZUZpbGVDb21wb25lbnQ7XG5cblxuICAgIGNvbnN0IHJlc3VsdCA9IGF3YWl0IHBvcHVwU2VydmljZS5vcGVuKGNvbXAsIHtcbiAgICAgIHRpdGxlOiAnRG9jdW1lbnQgVHlwZSBDaG9vc2UgRmlsZScsXG4gICAgICBkYXRhOiB7XG4gICAgICAgIGZpbGVzOiBwYXlsb2FkLm5ld0ZpbGVzLFxuICAgICAgICBkb2N1bWVudFR5cGU6IGRvY1R5cGUsXG4gICAgICB9LFxuICAgIH0pO1xuICAgIFxuICAgIGlmKChyZXN1bHQuZGF0YT8uY2FuY2VsICE9IG51bGwgJiYgIXJlc3VsdC5kYXRhLmNhbmNlbCkgJiYgcmVzdWx0LmRhdGE/LmZpbGVzKXtcbiAgICAgIHBheWxvYWQubmV3RmlsZXMuZm9yRWFjaCgoZmlsZSwgaSkgPT4ge1xuICAgICAgICBzZXQoZmlsZSwgJ21ldGEnLCByZXN1bHQuZGF0YS5maWxlc1tpXS5tZXRhKTtcbiAgICAgIH0pO1xuICAgIH1cbiAgICBcbiAgICByZXR1cm4gcGF5bG9hZDtcbiAgfSxcbn07XG5cbi8vIC0tLS0tLS0tLS0tLS0tLSBQZXItRmlsZSBBY3Rpb25zOiBzY2FmZm9sZCB0byBhZGQgaXRlbS1sZXZlbCBhY3Rpb25zIC0tLS0tLS0tLS0tLS0tLVxuZXhwb3J0IGNvbnN0IERvY3VtZW50RmlsZVVwbG9hZGVyRmlsZUl0ZW1BY3Rpb25zUHJvdmlkZXI6IEFYUERpc3RyaWJ1dGVkRXZlbnRMaXN0ZW5lclByb3ZpZGVyPGFueSwgYW55PiA9IHtcbiAga2V5OiAnZmlsZS11cGxvYWRlci5maWxlSXRlbS5hY3Rpb25zJyxcbiAgcHJpb3JpdHk6IDAsXG4gIGFzeW5jIGV4ZWN1dGUocGF5bG9hZDogQmFzZVBheWxvYWQgJiB7IGl0ZW06IGFueTsgaW5kZXg6IG51bWJlcjsgYWN0aW9uczogYW55W10gfSkge1xuICAgIGNvbnN0IGlzRW5hYmxlZCA9IEFycmF5LmlzQXJyYXkocGF5bG9hZC5wbHVnaW5zKSAmJiBwYXlsb2FkLnBsdWdpbnMuc29tZShwID0+IHAubmFtZSA9PT0gJ2RvY3VtZW50Jyk7XG4gICAgY29uc3QgaXNFeGNsdWRlZCA9IEFycmF5LmlzQXJyYXkocGF5bG9hZC5leGNsdWRlUGx1Z2lucykgJiYgcGF5bG9hZC5leGNsdWRlUGx1Z2lucy5pbmNsdWRlcygnZG9jdW1lbnQnKTtcbiAgICBpZiAoIWlzRW5hYmxlZCB8fCBpc0V4Y2x1ZGVkKSByZXR1cm4gcGF5bG9hZDtcblxuICAgIHBheWxvYWQuYWN0aW9ucyA9IFtcbiAgICAgIC4uLihwYXlsb2FkLmFjdGlvbnMgPz8gW10pLFxuICAgICAge1xuICAgICAgICBwbHVnaW46ICdkb2N1bWVudCcsXG4gICAgICAgIGdsb2JhbDogZmFsc2UsXG4gICAgICAgIHRleHRLZXk6ICdAZG9jdW1lbnQtbWFuYWdlbWVudDphY3Rpb25zLmVkaXQtbWV0YWRhdGEnLFxuICAgICAgICBpY29uOiAnZmEtbGlnaHQgZmEtcGVuLXRvLXNxdWFyZScsXG4gICAgICAgIHJ1bjogYXN5bmMgKGN0eDogYW55KSA9PiB7XG4gICAgICAgICAgLy8gU2NhZmZvbGQ6IG9wZW4gbWV0YWRhdGEgZWRpdGluZyBmbG93IGFuZCB0aGVuIHVwZGF0ZSBmaWxlIHZpYSBjYXBhYmlsaXRpZXNcbiAgICAgICAgICAvLyBjdHguY2FwYWJpbGl0aWVzLnVwZGF0ZUZpbGUoZiA9PiBmLmlkID09PSBwYXlsb2FkLml0ZW0uaWQsIGYgPT4gKHsgLi4uZiwgLyogLi4uICovIH0pKTtcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgXTtcblxuICAgIHJldHVybiBwYXlsb2FkO1xuICB9LFxufTtcblxuLy8gQ29udmVuaWVuY2UgZXhwb3J0IHRvIHJlZ2lzdGVyIGFsbCBwcm92aWRlcnMgYXQgb25jZSBpbiBhIG1vZHVsZVxuZXhwb3J0IGNvbnN0IERvY3VtZW50RmlsZVVwbG9hZGVyV2lkZ2V0UGx1Z2luUHJvdmlkZXJzID0gW1xuICBEb2N1bWVudEZpbGVVcGxvYWRlckNvbmZpZ3VyZVByb3ZpZGVyLFxuICBEb2N1bWVudEZpbGVVcGxvYWRlckJlZm9yZUZpbGVzQWRkZWRQcm92aWRlcixcbiAgRG9jdW1lbnRGaWxlVXBsb2FkZXJGaWxlSXRlbUFjdGlvbnNQcm92aWRlcixcbl07XG5cblxuIl19","import { AXP_PERMISSION_DEFINITION_PROVIDER, AXPAuthGuard } from '@acorex/platform/auth';\nimport { AXP_MENU_PROVIDER, AXP_SEARCH_PROVIDER, AXP_SETTING_DEFINITION_PROVIDER } from '@acorex/platform/common';\nimport { AXP_ENTITY_ACTION_PLUGIN, AXP_ENTITY_CONFIG_TOKEN, AXP_ENTITY_DEFINITION_LOADER } from '@acorex/platform/layout/entity';\nimport { inject, Injector, NgModule } from '@angular/core';\nimport { AXMEntityProvider } from './entity.provider';\nimport { AXMMenuProvider } from './menu.provider';\nimport { AXMSearchCommandProvider } from './search-command.provider';\nimport { AXMSettingProvider } from './settings.provider';\nimport { AXPLayoutBuilderModule } from '@acorex/platform/layout/builder';\nimport { ROUTES } from '@angular/router';\n// Entity Modules\nimport { AXMDocumentManagementDocumentEntityModule, AXMDocumentManagementDocumentTypeEntityModule, AXMDocumentManagementDocumentTypeMetaDefinitionEntityModule, AXMDocumentManagementDocumentTypeMetaValueEntityModule, AXMDocumentManagementDocumentTypeStatusDefinitionEntityModule, AXMFolderEntityModule, AXMReviewEntityModule, AXMDistributionEntityModule, AXMDistributionInteractionEntityModule, } from './entities';\nimport { AXmFileTypeExtensionWidget } from './features/file-type';\nimport { AXMFileTypeModule } from './features/file-type/file-type.module';\nimport { AXMediaViewerModule } from '@acorex/components/media-viewer';\nimport { AXP_WORKFLOW_TASK_PROVIDER, AXPWorkflowModule } from '@acorex/platform/workflow';\nimport { AXMCheckDocumentTypeWorkflowAction, AXMChooseDocumentTypeWorkflowAction, AXMChooseFileWorkflowAction, AXMUploadWorkflow, } from './features/workflow/upload/upload.workflow';\nimport { AXMSendToReviewConfirmAction, AXMUpdateDocumentStatusAction, AXMSendToReviewWorkflow, AXMSubmitReviewWorkflow, AXMChangeEntityAction, } from './features/workflow/document-review/document-review.workflow';\nimport { AXMDocumentDistributionPopupAction, AXMCreateDistributionRecordsAction, AXMDocumentDistributionWorkflow, } from './features/workflow/document-distribution/document-distribution.workflow';\nimport { AXMDocumentSignaturePopupAction, AXMSaveSignatureInteractionAction, AXMDocumentSignatureWorkflow, } from './features/workflow/document-signature/document-signature.workflow';\nimport { AXMDocumentReviewBadgeProvider } from './badge.provider';\nimport { AXP_TASK_BADGE_PROVIDERS } from '@acorex/platform/layout/components';\nimport { AXMDriveChooseModule } from './features/drive-choose/drive-choose.module';\nimport { AXPMetaSelectorWidget } from './features/meta-choose-widget';\nimport { AXPDocumentUploaderWidget } from './features/widgets/attachment';\nimport { AXMDocumentReviewTaskProvider } from './features/task/review.task.provider';\nimport { AXMDocumentDistributionTaskProvider } from './features/task/distribution.task.provider';\nimport { attachmentsPlugin } from './features/shared/attachments.plugin';\nimport { DocumentFileUploaderWidgetPluginProviders } from './features/shared/document-file-uploader.widget.plugin';\nimport { AXP_DISTRIBUTED_EVENT_LISTENER_PROVIDER } from '@acorex/platform/core';\nimport * as i0 from \"@angular/core\";\nimport * as i1 from \"@acorex/platform/layout/builder\";\nimport * as i2 from \"@acorex/components/media-viewer\";\nimport * as i3 from \"@acorex/platform/workflow\";\nfunction routesFacory() {\n const config = inject(AXP_ENTITY_CONFIG_TOKEN);\n const routes = [\n {\n path: ':app/drive/:scope',\n loadComponent: () => {\n return config.viewers.root();\n },\n canActivate: [AXPAuthGuard],\n data: { reuse: true },\n children: [\n {\n path: '',\n loadComponent: () => import('./features/drive/drive.component').then((c) => c.AXMDocumentDriveComponent),\n },\n {\n path: ':id',\n loadComponent: () => import('./features/drive/drive.component').then((c) => c.AXMDocumentDriveComponent),\n },\n ],\n },\n ];\n return routes;\n}\nexport class AXMDocumentManagementModule {\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: AXMDocumentManagementModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }\n static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: \"14.0.0\", version: \"20.1.8\", ngImport: i0, type: AXMDocumentManagementModule, imports: [AXMDriveChooseModule,\n // Entity Modules\n AXMDocumentManagementDocumentTypeStatusDefinitionEntityModule,\n AXMDocumentManagementDocumentTypeMetaValueEntityModule,\n AXMDocumentManagementDocumentTypeMetaDefinitionEntityModule,\n AXMDocumentManagementDocumentTypeEntityModule,\n AXMDocumentManagementDocumentEntityModule,\n AXMFolderEntityModule,\n AXMReviewEntityModule,\n AXMDistributionEntityModule,\n AXMDistributionInteractionEntityModule, i1.AXPLayoutBuilderModule, AXMFileTypeModule, i2.AXMediaViewerModule, i3.AXPWorkflowModule] }); }\n static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: AXMDocumentManagementModule, providers: [\n {\n provide: AXP_MENU_PROVIDER,\n useClass: AXMMenuProvider,\n multi: true,\n },\n {\n provide: AXP_ENTITY_DEFINITION_LOADER,\n useClass: AXMEntityProvider,\n multi: true,\n },\n {\n provide: AXP_SETTING_DEFINITION_PROVIDER,\n useClass: AXMSettingProvider,\n multi: true,\n },\n {\n provide: AXP_SEARCH_PROVIDER,\n useClass: AXMSearchCommandProvider,\n multi: true,\n },\n {\n provide: AXP_PERMISSION_DEFINITION_PROVIDER,\n useFactory: async () => {\n const injector = inject(Injector);\n const provider = (await import('./permission-definition.provider')).AXMPermissionDefinitionProvider;\n return new provider(injector);\n },\n multi: true,\n },\n {\n provide: AXP_TASK_BADGE_PROVIDERS,\n useClass: AXMDocumentReviewBadgeProvider,\n multi: true,\n },\n {\n provide: AXP_WORKFLOW_TASK_PROVIDER,\n useClass: AXMDocumentReviewTaskProvider,\n multi: true,\n },\n {\n provide: AXP_WORKFLOW_TASK_PROVIDER,\n useClass: AXMDocumentDistributionTaskProvider,\n multi: true,\n },\n //{ provide: AXP_ENTITY_STORAGE_MIDDLEWARE, multi: true, useValue: attachmentsUploadMiddleware },\n { provide: AXP_ENTITY_ACTION_PLUGIN, multi: true, useValue: attachmentsPlugin },\n {\n provide: ROUTES,\n multi: true,\n useFactory: routesFacory,\n },\n ...DocumentFileUploaderWidgetPluginProviders.map(p => ({\n provide: AXP_DISTRIBUTED_EVENT_LISTENER_PROVIDER, useValue: p, multi: true\n }))\n ], imports: [AXMDriveChooseModule,\n // Entity Modules\n AXMDocumentManagementDocumentTypeStatusDefinitionEntityModule,\n AXMDocumentManagementDocumentTypeMetaValueEntityModule,\n AXMDocumentManagementDocumentTypeMetaDefinitionEntityModule,\n AXMDocumentManagementDocumentTypeEntityModule,\n AXMDocumentManagementDocumentEntityModule,\n AXMFolderEntityModule,\n AXMReviewEntityModule,\n AXMDistributionEntityModule,\n AXMDistributionInteractionEntityModule,\n AXPLayoutBuilderModule.forChild({\n widgets: [AXmFileTypeExtensionWidget, AXPMetaSelectorWidget, AXPDocumentUploaderWidget],\n }),\n AXMFileTypeModule,\n AXMediaViewerModule.forRoot(),\n AXPWorkflowModule.forChild({\n actions: {\n AXMCheckDocumentTypeWorkflowAction,\n AXMChooseDocumentTypeWorkflowAction,\n AXMChooseFileWorkflowAction,\n AXMSendToReviewConfirmAction,\n AXMUpdateDocumentStatusAction,\n AXMDocumentDistributionPopupAction,\n AXMCreateDistributionRecordsAction,\n AXMDocumentSignaturePopupAction,\n AXMSaveSignatureInteractionAction,\n AXMChangeEntityAction\n },\n workflows: {\n 'upload-document': AXMUploadWorkflow,\n 'send-to-review': AXMSendToReviewWorkflow,\n 'submit-review': AXMSubmitReviewWorkflow,\n 'distributed': AXMDocumentDistributionWorkflow,\n 'document-signature': AXMDocumentSignatureWorkflow,\n },\n })] }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: AXMDocumentManagementModule, decorators: [{\n type: NgModule,\n args: [{\n imports: [\n AXMDriveChooseModule,\n // Entity Modules\n AXMDocumentManagementDocumentTypeStatusDefinitionEntityModule,\n AXMDocumentManagementDocumentTypeMetaValueEntityModule,\n AXMDocumentManagementDocumentTypeMetaDefinitionEntityModule,\n AXMDocumentManagementDocumentTypeEntityModule,\n AXMDocumentManagementDocumentEntityModule,\n AXMFolderEntityModule,\n AXMReviewEntityModule,\n AXMDistributionEntityModule,\n AXMDistributionInteractionEntityModule,\n AXPLayoutBuilderModule.forChild({\n widgets: [AXmFileTypeExtensionWidget, AXPMetaSelectorWidget, AXPDocumentUploaderWidget],\n }),\n AXMFileTypeModule,\n AXMediaViewerModule.forRoot(),\n AXPWorkflowModule.forChild({\n actions: {\n AXMCheckDocumentTypeWorkflowAction,\n AXMChooseDocumentTypeWorkflowAction,\n AXMChooseFileWorkflowAction,\n AXMSendToReviewConfirmAction,\n AXMUpdateDocumentStatusAction,\n AXMDocumentDistributionPopupAction,\n AXMCreateDistributionRecordsAction,\n AXMDocumentSignaturePopupAction,\n AXMSaveSignatureInteractionAction,\n AXMChangeEntityAction\n },\n workflows: {\n 'upload-document': AXMUploadWorkflow,\n 'send-to-review': AXMSendToReviewWorkflow,\n 'submit-review': AXMSubmitReviewWorkflow,\n 'distributed': AXMDocumentDistributionWorkflow,\n 'document-signature': AXMDocumentSignatureWorkflow,\n },\n }),\n ],\n exports: [],\n providers: [\n {\n provide: AXP_MENU_PROVIDER,\n useClass: AXMMenuProvider,\n multi: true,\n },\n {\n provide: AXP_ENTITY_DEFINITION_LOADER,\n useClass: AXMEntityProvider,\n multi: true,\n },\n {\n provide: AXP_SETTING_DEFINITION_PROVIDER,\n useClass: AXMSettingProvider,\n multi: true,\n },\n {\n provide: AXP_SEARCH_PROVIDER,\n useClass: AXMSearchCommandProvider,\n multi: true,\n },\n {\n provide: AXP_PERMISSION_DEFINITION_PROVIDER,\n useFactory: async () => {\n const injector = inject(Injector);\n const provider = (await import('./permission-definition.provider')).AXMPermissionDefinitionProvider;\n return new provider(injector);\n },\n multi: true,\n },\n {\n provide: AXP_TASK_BADGE_PROVIDERS,\n useClass: AXMDocumentReviewBadgeProvider,\n multi: true,\n },\n {\n provide: AXP_WORKFLOW_TASK_PROVIDER,\n useClass: AXMDocumentReviewTaskProvider,\n multi: true,\n },\n {\n provide: AXP_WORKFLOW_TASK_PROVIDER,\n useClass: AXMDocumentDistributionTaskProvider,\n multi: true,\n },\n //{ provide: AXP_ENTITY_STORAGE_MIDDLEWARE, multi: true, useValue: attachmentsUploadMiddleware },\n { provide: AXP_ENTITY_ACTION_PLUGIN, multi: true, useValue: attachmentsPlugin },\n {\n provide: ROUTES,\n multi: true,\n useFactory: routesFacory,\n },\n ...DocumentFileUploaderWidgetPluginProviders.map(p => ({\n provide: AXP_DISTRIBUTED_EVENT_LISTENER_PROVIDER, useValue: p, multi: true\n }))\n ],\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG9jdW1lbnQtbWFuYWdlbWVudC5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL21vZHVsZXMvZG9jdW1lbnQtbWFuYWdlbWVudC9zcmMvbGliL2RvY3VtZW50LW1hbmFnZW1lbnQubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxrQ0FBa0MsRUFBRSxZQUFZLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUN6RixPQUFPLEVBQUUsaUJBQWlCLEVBQUUsbUJBQW1CLEVBQUUsK0JBQStCLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUNsSCxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsdUJBQXVCLEVBQUUsNEJBQTRCLEVBQWlDLE1BQU0sZ0NBQWdDLENBQUM7QUFDaEssT0FBTyxFQUFFLE1BQU0sRUFBRSxRQUFRLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ3RELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUNsRCxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUNyRSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUV6RCxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUN6RSxPQUFPLEVBQUUsTUFBTSxFQUFVLE1BQU0saUJBQWlCLENBQUM7QUFFakQsaUJBQWlCO0FBQ2pCLE9BQU8sRUFDTCx5Q0FBeUMsRUFDekMsNkNBQTZDLEVBQzdDLDJEQUEyRCxFQUMzRCxzREFBc0QsRUFDdEQsNkRBQTZELEVBQzdELHFCQUFxQixFQUNyQixxQkFBcUIsRUFDckIsMkJBQTJCLEVBQzNCLHNDQUFzQyxHQUN2QyxNQUFNLFlBQVksQ0FBQztBQUVwQixPQUFPLEVBQUUsMEJBQTBCLEVB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LEtBQUssRUFBRSxJQUFJO3lCQUMzRSxDQUFDLENBQUM7cUJBQ0o7aUJBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBWFBfUEVSTUlTU0lPTl9ERUZJTklUSU9OX1BST1ZJREVSLCBBWFBBdXRoR3VhcmQgfSBmcm9tICdAYWNvcmV4L3BsYXRmb3JtL2F1dGgnO1xuaW1wb3J0IHsgQVhQX01FTlVfUFJPVklERVIsIEFYUF9TRUFSQ0hfUFJPVklERVIsIEFYUF9TRVRUSU5HX0RFRklOSVRJT05fUFJPVklERVIgfSBmcm9tICdAYWNvcmV4L3BsYXRmb3JtL2NvbW1vbic7XG5pbXBvcnQgeyBBWFBfRU5USVRZX0FDVElPTl9QTFVHSU4sIEFYUF9FTlRJVFlfQ09ORklHX1RPS0VOLCBBWFBfRU5USVRZX0RFRklOSVRJT05fTE9BREVSLCBBWFBfRU5USVRZX1NUT1JBR0VfTUlERExFV0FSRSB9IGZyb20gJ0BhY29yZXgvcGxhdGZvcm0vbGF5b3V0L2VudGl0eSc7XG5pbXBvcnQgeyBpbmplY3QsIEluamVjdG9yLCBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQVhNRW50aXR5UHJvdmlkZXIgfSBmcm9tICcuL2VudGl0eS5wcm92aWRlcic7XG5pbXBvcnQgeyBBWE1NZW51UHJvdmlkZXIgfSBmcm9tICcuL21lbnUucHJvdmlkZXInO1xuaW1wb3J0IHsgQVhNU2VhcmNoQ29tbWFuZFByb3ZpZGVyIH0gZnJvbSAnLi9zZWFyY2gtY29tbWFuZC5wcm92aWRlcic7XG5pbXBvcnQgeyBBWE1TZXR0aW5nUHJvdmlkZXIgfSBmcm9tICcuL3NldHRpbmdzLnByb3ZpZGVyJztcblxuaW1wb3J0IHsgQVhQTGF5b3V0QnVpbGRlck1vZHVsZSB9IGZyb20gJ0BhY29yZXgvcGxhdGZvcm0vbGF5b3V0L2J1aWxkZXInO1xuaW1wb3J0IHsgUk9VVEVTLCBSb3V0ZXMgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuXG4vLyBFbnRpdHkgTW9kdWxlc1xuaW1wb3J0IHtcbiAgQVhNRG9jdW1lbnRNYW5hZ2VtZW50RG9jdW1lbnRFbnRpdHlNb2R1bGUsXG4gIEFYTURvY3VtZW50TWFuYWdlbWVudERvY3VtZW50VHlwZUVudGl0eU1vZHVsZSxcbiAgQVhNRG9jdW1lbnRNYW5hZ2VtZW50RG9jdW1lbnRUeXBlTWV0YURlZmluaXRpb25FbnRpdHlNb2R1bGUsXG4gIEFYTURvY3VtZW50TWFuYWdlbWVudERvY3VtZW50VHlwZU1ldGFWYWx1ZUVudGl0eU1vZHVsZSxcbiAgQVhNRG9jdW1lbnRNYW5hZ2VtZW50RG9jdW1lbnRUeXBlU3RhdHVzRGVmaW5pdGlvbkVudGl0eU1vZHVsZSxcbiAgQVhNRm9sZGVyRW50aXR5TW9kdWxlLFxuICBBWE1SZXZpZXdFbnRpdHlNb2R1bGUsXG4gIEFYTURpc3RyaWJ1dGlvbkVudGl0eU1vZHVsZSxcbiAgQVhNRGlzdHJpYnV0aW9uSW50ZXJhY3Rpb25FbnRpdHlNb2R1bGUsXG59IGZyb20gJy4vZW50aXRpZXMnO1xuXG5pbXBvcnQgeyBBWG1GaWxlVHlwZUV4dGVuc2lvbldpZGdldCB9IGZyb20gJy4vZmVhdHVyZXMvZmlsZS10eXBlJztcbmltcG9ydCB7IEFYTUZpbGVUeXBlTW9kdWxlIH0gZnJvbSAnLi9mZWF0dXJlcy9maWxlLXR5cGUvZmlsZS10eXBlLm1vZHVsZSc7XG5cbmltcG9ydCB7IEFYTWVkaWFWaWV3ZXJNb2R1bGUgfSBmcm9tICdAYWNvcmV4L2NvbXBvbmVudHMvbWVkaWEtdmlld2VyJztcbmltcG9ydCB7IEFYUF9XT1JLRkxPV19UQVNLX1BST1ZJREVSLCBBWFBXb3JrZmxvd01vZHVsZSB9IGZyb20gJ0BhY29yZXgvcGxhdGZvcm0vd29ya2Zsb3cnO1xuaW1wb3J0IHtcbiAgQVhNQ2hlY2tEb2N1bWVudFR5cGVXb3JrZmxvd0FjdGlvbixcbiAgQVhNQ2hvb3NlRG9jdW1lbnRUeXBlV29ya2Zsb3dBY3Rpb24sXG4gIEFYTUNob29zZUZpbGVXb3JrZmxvd0FjdGlvbixcbiAgQVhNVXBsb2FkV29ya2Zsb3csXG59IGZyb20gJy4vZmVhdHVyZXMvd29ya2Zsb3cvdXBsb2FkL3VwbG9hZC53b3JrZmxvdyc7XG5pbXBvcnQge1xuICBBWE1TZW5kVG9SZXZpZXdDb25maXJtQWN0aW9uLFxuICBBWE1VcGRhdGVEb2N1bWVudFN0YXR1c0FjdGlvbixcbiAgQVhNU2VuZFRvUmV2aWV3V29ya2Zsb3csXG4gIEFYTVN1Ym1pdFJldmlld1dvcmtmbG93LFxuICBBWE1DaGFuZ2VFbnRpdHlBY3Rpb24sXG59IGZyb20gJy4vZmVhdHVyZXMvd29ya2Zsb3cvZG9jdW1lbnQtcmV2aWV3L2RvY3VtZW50LXJldmlldy53b3JrZmxvdyc7XG5pbXBvcnQge1xuICBBWE1Eb2N1bWVudERpc3RyaWJ1dGlvblBvcHVwQWN0aW9uLFxuICBBWE1DcmVhdGVEaXN0cmlidXRpb25SZWNvcmRzQWN0aW9uLFxuICBBWE1Eb2N1bWVudERpc3RyaWJ1dGlvbldvcmtmbG93LFxufSBmcm9tICcuL2ZlYXR1cmVzL3dvcmtmbG93L2RvY3VtZW50LWRpc3RyaWJ1dGlvbi9kb2N1bWVudC1kaXN0cmlidXRpb24ud29ya2Zsb3cnO1xuaW1wb3J0IHtcbiAgQVhNRG9jdW1lbnRTaWduYXR1cmVQb3B1cEFjdGlvbixcbiAgQVhNU2F2ZVNpZ25hdHVyZUludGVyYWN0aW9uQWN0aW9uLFxuICBBWE1Eb2N1bWVudFNpZ25hdHVyZVdvcmtmbG93LFxufSBmcm9tICcuL2ZlYXR1cmVzL3dvcmtmbG93L2RvY3VtZW50LXNpZ25hdHVyZS9kb2N1bWVudC1zaWduYXR1cmUud29ya2Zsb3cnO1xuaW1wb3J0IHsgQVhNRG9jdW1lbnRSZXZpZXdCYWRnZVByb3ZpZGVyIH0gZnJvbSAnLi9iYWRnZS5wcm92aWRlcic7XG5pbXBvcnQgeyBBWFBfVEFTS19CQURHRV9QUk9WSURFUlMgfSBmcm9tICdAYWNvcmV4L3BsYXRmb3JtL2xheW91dC9jb21wb25lbnRzJztcbmltcG9ydCB7IEFYTURyaXZlQ2hvb3NlTW9kdWxlIH0gZnJvbSAnLi9mZWF0dXJlcy9kcml2ZS1jaG9vc2UvZHJpdmUtY2hvb3NlLm1vZHVsZSc7XG5pbXBvcnQgeyBBWFBNZXRhU2VsZWN0b3JXaWRnZXQgfSBmcm9tICcuL2ZlYXR1cmVzL21ldGEtY2hvb3NlLXdpZGdldCc7XG5pbXBvcnQgeyBBWFBEb2N1bWVudFVwbG9hZGVyV2lkZ2V0IH0gZnJvbSAnLi9mZWF0dXJlcy93aWRnZXRzL2F0dGFjaG1lbnQnO1xuXG5mdW5jdGlvbiByb3V0ZXNGYWNvcnkoKSB7XG4gIGNvbnN0IGNvbmZpZyA9IGluamVjdChBWFBfRU5USVRZX0NPTkZJR19UT0tFTik7XG4gIGNvbnN0IHJvdXRlczogUm91dGVzID0gW1xuICAgIHtcbiAgICAgIHBhdGg6ICc6YXBwL2RyaXZlLzpzY29wZScsXG4gICAgICBsb2FkQ29tcG9uZW50OiAoKSA9PiB7XG4gICAgICAgIHJldHVybiBjb25maWcudmlld2Vycy5yb290KCk7XG4gICAgICB9LFxuICAgICAgY2FuQWN0aXZhdGU6IFtBWFBBdXRoR3VhcmRdLFxuICAgICAgZGF0YTogeyByZXVzZTogdHJ1ZSB9LFxuICAgICAgY2hpbGRyZW46IFtcbiAgICAgICAge1xuICAgICAgICAgIHBhdGg6ICcnLFxuICAgICAgICAgIGxvYWRDb21wb25lbnQ6ICgpID0+IGltcG9ydCgnLi9mZWF0dXJlcy9kcml2ZS9kcml2ZS5jb21wb25lbnQnKS50aGVuKChjKSA9PiBjLkFYTURvY3VtZW50RHJpdmVDb21wb25lbnQpLFxuICAgICAgICB9LFxuICAgICAgICB7XG4gICAgICAgICAgcGF0aDogJzppZCcsXG4gICAgICAgICAgbG9hZENvbXBvbmVudDogKCkgPT4gaW1wb3J0KCcuL2ZlYXR1cmVzL2RyaXZlL2RyaXZlLmNvbXBvbmVudCcpLnRoZW4oKGMpID0+IGMuQVhNRG9jdW1lbnREcml2ZUNvbXBvbmVudCksXG4gICAgICAgIH0sXG4gICAgICBdLFxuICAgIH0sXG4gIF07XG4gIHJldHVybiByb3V0ZXM7XG59XG5cbmltcG9ydCB7IEFYTURvY3VtZW50UmV2aWV3VGFza1Byb3ZpZGVyIH0gZnJvbSAnLi9mZWF0dXJlcy90YXNrL3Jldmlldy50YXNrLnByb3ZpZGVyJztcbmltcG9ydCB7IEFYTURvY3VtZW50RGlzdHJpYnV0aW9uVGFza1Byb3ZpZGVyIH0gZnJvbSAnLi9mZWF0dXJlcy90YXNrL2Rpc3RyaWJ1dGlvbi50YXNrLnByb3ZpZGVyJztcbmltcG9ydCB7IGF0dGFjaG1lbnRzVXBsb2FkTWlkZGxld2FyZSB9IGZyb20gJy4vZmVhdHVyZXMvc2hhcmVkL2F0dGFjaG1lbnRzLXVwbG9hZC5taWRkbGV3YXJlJztcbmltcG9ydCB7IGF0dGFjaG1lbnRzUGx1Z2luIH0gZnJvbSAnLi9mZWF0dXJlcy9zaGFyZWQvYXR0YWNobWVudHMucGx1Z2luJztcblxuaW1wb3J0IHsgRG9jdW1lbnRGaWxlVXBsb2FkZXJXaWRnZXRQbHVnaW5Qcm92aWRlcnMgfSBmcm9tICcuL2ZlYXR1cmVzL3NoYXJlZC9kb2N1bWVudC1maWxlLXVwbG9hZGVyLndpZGdldC5wbHVnaW4nO1xuaW1wb3J0IHsgQVhQX0RJU1RSSUJVVEVEX0VWRU5UX0xJU1RFTkVSX1BST1ZJREVSIH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9jb3JlJztcbkBOZ01vZHVsZSh7XG4gIGltcG9ydHM6IFtcbiAgICBBWE1Ecml2ZUNob29zZU1vZHVsZSxcbiAgICAvLyBFbnRpdHkgTW9kdWxlc1xuICAgIEFYTURvY3VtZW50TWFuYWdlbWVudERvY3VtZW50VHlwZVN0YXR1c0RlZmluaXRpb25FbnRpdHlNb2R1bGUsXG4gICAgQVhNRG9jdW1lbnRNYW5hZ2VtZW50RG9jdW1lbnRUeXBlTWV0YVZhbHVlRW50aXR5TW9kdWxlLFxuICAgIEFYTURvY3VtZW50TWFuYWdlbWVudERvY3VtZW50VHlwZU1ldGFEZWZpbml0aW9uRW50aXR5TW9kdWxlLFxuICAgIEFYTURvY3VtZW50TWFuYWdlbWVudERvY3VtZW50VHlwZUVudGl0eU1vZHVsZSxcbiAgICBBWE1Eb2N1bWVudE1hbmFnZW1lbnREb2N1bWVudEVudGl0eU1vZHVsZSxcbiAgICBBWE1Gb2xkZXJFbnRpdHlNb2R1bGUsXG4gICAgQVhNUmV2aWV3RW50aXR5TW9kdWxlLFxuICAgIEFYTURpc3RyaWJ1dGlvbkVudGl0eU1vZHVsZSxcbiAgICBBWE1EaXN0cmlidXRpb25JbnRlcmFjdGlvbkVudGl0eU1vZHVsZSxcbiAgICBBWFBMYXlvdXRCdWlsZGVyTW9kdWxlLmZvckNoaWxkKHtcbiAgICAgIHdpZGdldHM6IFtBWG1GaWxlVHlwZUV4dGVuc2lvbldpZGdldCwgQVhQTWV0YVNlbGVjdG9yV2lkZ2V0LCBBWFBEb2N1bWVudFVwbG9hZGVyV2lkZ2V0XSxcbiAgICB9KSxcbiAgICBBWE1GaWxlVHlwZU1vZHVsZSxcbiAgICBBWE1lZGlhVmlld2VyTW9kdWxlLmZvclJvb3QoKSxcbiAgICBBWFBXb3JrZmxvd01vZHVsZS5mb3JDaGlsZCh7XG4gICAgICBhY3Rpb25zOiB7XG4gICAgICAgIEFYTUNoZWNrRG9jdW1lbnRUeXBlV29ya2Zsb3dBY3Rpb24sXG4gICAgICAgIEFYTUNob29zZURvY3VtZW50VHlwZVdvcmtmbG93QWN0aW9uLFxuICAgICAgICBBWE1DaG9vc2VGaWxlV29ya2Zsb3dBY3Rpb24sXG4gICAgICAgIEFYTVNlbmRUb1Jldmlld0NvbmZpcm1BY3Rpb24sXG4gICAgICAgIEFYTVVwZGF0ZURvY3VtZW50U3RhdHVzQWN0aW9uLFxuICAgICAgICBBWE1Eb2N1bWVudERpc3RyaWJ1dGlvblBvcHVwQWN0aW9uLFxuICAgICAgICBBWE1DcmVhdGVEaXN0cmlidXRpb25SZWNvcmRzQWN0aW9uLFxuICAgICAgICBBWE1Eb2N1bWVudFNpZ25hdHVyZVBvcHVwQWN0aW9uLFxuICAgICAgICBBWE1TYXZlU2lnbmF0dXJlSW50ZXJhY3Rpb25BY3Rpb24sXG4gICAgICAgIEFYTUNoYW5nZUVudGl0eUFjdGlvblxuICAgICAgfSxcbiAgICAgIHdvcmtmbG93czoge1xuICAgICAgICAndXBsb2FkLWRvY3VtZW50JzogQVhNVXBsb2FkV29ya2Zsb3csXG4gICAgICAgICdzZW5kLXRvLXJldmlldyc6IEFYTVNlbmRUb1Jldmlld1dvcmtmbG93LFxuICAgICAgICAnc3VibWl0LXJldmlldyc6IEFYTVN1Ym1pdFJldmlld1dvcmtmbG93LFxuICAgICAgICAnZGlzdHJpYnV0ZWQnOiBBWE1Eb2N1bWVudERpc3RyaWJ1dGlvbldvcmtmbG93LFxuICAgICAgICAnZG9jdW1lbnQtc2lnbmF0dXJlJzogQVhNRG9jdW1lbnRTaWduYXR1cmVXb3JrZmxvdyxcbiAgICAgIH0sXG4gICAgfSksXG4gIF0sXG4gIGV4cG9ydHM6IFtdLFxuXG4gIHByb3ZpZGVyczogW1xuICAgIHtcbiAgICAgIHByb3ZpZGU6IEFYUF9NRU5VX1BST1ZJREVSLFxuICAgICAgdXNlQ2xhc3M6IEFYTU1lbnVQcm92aWRlcixcbiAgICAgIG11bHRpOiB0cnVlLFxuICAgIH0sXG4gICAge1xuICAgICAgcHJvdmlkZTogQVhQX0VOVElUWV9ERUZJTklUSU9OX0xPQURFUixcbiAgICAgIHVzZUNsYXNzOiBBWE1FbnRpdHlQcm92aWRlcixcbiAgICAgIG11bHRpOiB0cnVlLFxuICAgIH0sXG4gICAge1xuICAgICAgcHJvdmlkZTogQVhQX1NFVFRJTkdfREVGSU5JVElPTl9QUk9WSURFUixcbiAgICAgIHVzZUNsYXNzOiBBWE1TZXR0aW5nUHJvdmlkZXIsXG4gICAgICBtdWx0aTogdHJ1ZSxcbiAgICB9LFxuICAgIHtcbiAgICAgIHByb3ZpZGU6IEFYUF9TRUFSQ0hfUFJPVklERVIsXG4gICAgICB1c2VDbGFzczogQVhNU2VhcmNoQ29tbWFuZFByb3ZpZGVyLFxuICAgICAgbXVsdGk6IHRydWUsXG4gICAgfSxcbiAgICB7XG4gICAgICBwcm92aWRlOiBBWFBfUEVSTUlTU0lPTl9ERUZJTklUSU9OX1BST1ZJREVSLFxuICAgICAgdXNlRmFjdG9yeTogYXN5bmMgKCkgPT4ge1xuICAgICAgICBjb25zdCBpbmplY3RvciA9IGluamVjdChJbmplY3Rvcik7XG4gICAgICAgIGNvbnN0IHByb3ZpZGVyID0gKGF3YWl0IGltcG9ydCgnLi9wZXJtaXNzaW9uLWRlZmluaXRpb24ucHJvdmlkZXInKSkuQVhNUGVybWlzc2lvbkRlZmluaXRpb25Qcm92aWRlcjtcbiAgICAgICAgcmV0dXJuIG5ldyBwcm92aWRlcihpbmplY3Rvcik7XG4gICAgICB9LFxuICAgICAgbXVsdGk6IHRydWUsXG4gICAgfSxcbiAgICB7XG4gICAgICBwcm92aWRlOiBBWFBfVEFTS19CQURHRV9QUk9WSURFUlMsXG4gICAgICB1c2VDbGFzczogQVhNRG9jdW1lbnRSZXZpZXdCYWRnZVByb3ZpZGVyLFxuICAgICAgbXVsdGk6IHRydWUsXG4gICAgfSxcbiAgICB7XG4gICAgICBwcm92aWRlOiBBWFBfV09SS0ZMT1dfVEFTS19QUk9WSURFUixcbiAgICAgIHVzZUNsYXNzOiBBWE1Eb2N1bWVudFJldmlld1Rhc2tQcm92aWRlcixcbiAgICAgIG11bHRpOiB0cnVlLFxuICAgIH0sXG4gICAge1xuICAgICAgcHJvdmlkZTogQVhQX1dPUktGTE9XX1RBU0tfUFJPVklERVIsXG4gICAgICB1c2VDbGFzczogQVhNRG9jdW1lbnREaXN0cmlidXRpb25UYXNrUHJvdmlkZXIsXG4gICAgICBtdWx0aTogdHJ1ZSxcbiAgICB9LFxuICAgIC8veyBwcm92aWRlOiBBWFBfRU5USVRZX1NUT1JBR0VfTUlERExFV0FSRSwgbXVsdGk6IHRydWUsIHVzZVZhbHVlOiBhdHRhY2htZW50c1VwbG9hZE1pZGRsZXdhcmUgfSxcbiAgICB7IHByb3ZpZGU6IEFYUF9FTlRJVFlfQUNUSU9OX1BMVUdJTiwgbXVsdGk6IHRydWUsIHVzZVZhbHVlOiBhdHRhY2htZW50c1BsdWdpbiB9LFxuICAgIHtcbiAgICAgIHByb3ZpZGU6IFJPVVRFUyxcbiAgICAgIG11bHRpOiB0cnVlLFxuICAgICAgdXNlRmFjdG9yeTogcm91dGVzRmFjb3J5LFxuICAgIH0sXG4gICAgLi4uRG9jdW1lbnRGaWxlVXBsb2FkZXJXaWRnZXRQbHVnaW5Qcm92aWRlcnMubWFwKHAgPT4gKHtcbiAgICAgIHByb3ZpZGU6IEFYUF9ESVNUUklCVVRFRF9FVkVOVF9MSVNURU5FUl9QUk9WSURFUiwgdXNlVmFsdWU6IHAsIG11bHRpOiB0cnVlXG4gICAgfSkpXG4gIF0sXG59KVxuZXhwb3J0IGNsYXNzIEFYTURvY3VtZW50TWFuYWdlbWVudE1vZHVsZSB7IH1cbiJdfQ==","/**\n * Generated bundle index. Do not edit.\n */\nexport * from './index';\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWNvcmV4LW1vZHVsZXMtZG9jdW1lbnQtbWFuYWdlbWVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYnMvbW9kdWxlcy9kb2N1bWVudC1tYW5hZ2VtZW50L3NyYy9hY29yZXgtbW9kdWxlcy1kb2N1bWVudC1tYW5hZ2VtZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUgsY0FBYyxTQUFTLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEdlbmVyYXRlZCBidW5kbGUgaW5kZXguIERvIG5vdCBlZGl0LlxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vaW5kZXgnO1xuIl19"],"names":["i2","i5","i6","i1","i3","i4","get","set"],"mappings":"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"}
|