@acorex/modules 19.2.20 → 19.3.0-next.1
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/application-management/lib/layouts/module-entity-detail-view/module-entity-detail-view.component.d.ts +2 -2
- package/auth/lib/setting.provider.d.ts +4 -0
- package/common/index.d.ts +1 -0
- package/common/lib/entities/dashboard/dashboard.types.d.ts +1 -1
- package/common/lib/features/{dashboard-home/dashboard-home.d.ts → home-dashboard/dashboard-home/home-dashboard.d.ts} +72 -52
- package/common/lib/features/{dashboard-home/dashboard-home.store.d.ts → home-dashboard/dashboard-home/home-dashboard.store.d.ts} +9 -4
- package/common/lib/features/home-dashboard/dashboard-home/index.d.ts +3 -0
- package/common/lib/features/{dashboard-popups → home-dashboard/dashboard-popups}/add-dashboard-popup.d.ts +7 -5
- package/common/lib/features/home-dashboard/dashboard-popups/configuration-popup.d.ts +14 -0
- package/common/lib/features/{dashboard-popups → home-dashboard/dashboard-popups}/dashboard-popup.service.d.ts +5 -4
- package/common/lib/features/home-dashboard/setrting.keys.d.ts +3 -0
- package/common/lib/features/{widget-wrapper → home-dashboard/widget-wrapper}/dashboard-widget-wrapper.d.ts +2 -1
- package/common/lib/menu.provider.d.ts +1 -1
- package/conversation/lib/entities/chat/pages/chat/chat.component.d.ts +1 -1
- package/conversation/lib/entities/comments/comments.service.d.ts +4 -4
- package/conversation/lib/entities/comments/comments.type.d.ts +1 -1
- package/document-management/lib/badge.provider.d.ts +11 -0
- package/document-management/lib/entities/document/document.service.d.ts +1 -1
- package/document-management/lib/entities/document/document.types.d.ts +2 -0
- package/document-management/lib/entities/document-type/document-type.service.d.ts +3 -3
- package/document-management/lib/entities/folder/folder.service.d.ts +2 -7
- package/document-management/lib/entities/folder/folder.types.d.ts +2 -1
- package/document-management/lib/features/document-explorer/components/create-folder-dialog/create-folder-dialog.component.d.ts +9 -0
- package/document-management/lib/features/document-explorer/document-explorer.component.d.ts +20 -8
- package/document-management/lib/features/document-explorer/document-explorer.viewmodel.d.ts +10 -6
- package/document-management/lib/features/document-explorer/views/detail-panel/detail-panel.component.d.ts +40 -36
- package/document-management/lib/features/document-explorer/views/details/details-view.component.d.ts +40 -36
- package/document-management/lib/features/document-explorer/views/large-icons/large-icons-view.component.d.ts +40 -36
- package/document-management/lib/features/document-explorer/views/large-tiles/large-tiles-view.component.d.ts +40 -36
- package/document-management/lib/features/document-explorer/views/list/list-view.component.d.ts +40 -36
- package/document-management/lib/features/document-explorer/views/small-icons/small-icons-view.component.d.ts +40 -36
- package/document-management/lib/features/document-explorer/views/small-tiles/small-tiles-view.component.d.ts +40 -36
- package/document-management/lib/features/drive/drive.component.d.ts +15 -9
- package/document-management/lib/features/drive/index.d.ts +3 -0
- package/document-management/lib/features/drive-choose/drive-choose.component.d.ts +16 -8
- package/document-management/lib/features/shared/components/document-type-choose-file/document-type-choose-file.component.d.ts +16 -0
- package/document-management/lib/features/shared/components/file-viewer-popup/file-viewer-popup.component.d.ts +5 -1
- package/document-management/lib/features/shared/components/folder-path-breadcrumbs/folder-path-breadcrumbs.component.d.ts +10 -6
- package/document-management/lib/features/shared/components/index.d.ts +1 -0
- package/document-management/lib/features/shared/components/link-dialog/link-dialog.component.d.ts +24 -0
- package/document-management/lib/features/shared/components/lock-dialog/lock-dialog.component.d.ts +16 -0
- package/document-management/lib/features/shared/components/share-dialog/share-dialog.component.d.ts +22 -0
- package/document-management/lib/features/shared/components/share-email-dialog/share-email-dialog.component.d.ts +17 -0
- package/document-management/lib/features/shared/components/unlock-dialog/unlock-dialog.component.d.ts +10 -0
- package/document-management/lib/features/shared/document-manager.service.d.ts +45 -22
- package/document-management/lib/features/shared/document-manager.types.d.ts +5 -7
- package/document-management/lib/features/widgets/document-attachment/document-attachment-widget-column.component.d.ts +1 -1
- package/document-management/lib/features/widgets/document-attachment/document-attachment-widget-edit.component.d.ts +66 -44
- package/document-management/lib/features/widgets/document-attachment/document-attachment-widget-print.component.d.ts +1 -1
- package/document-management/lib/features/widgets/document-attachment/document-attachment-widget-view.component.d.ts +1 -1
- package/document-management/lib/features/widgets/document-attachment/index.d.ts +0 -1
- package/fesm2022/acorex-modules-application-management.mjs +0 -1
- package/fesm2022/acorex-modules-application-management.mjs.map +1 -1
- package/fesm2022/{acorex-modules-auth-acorex-modules-auth-DrcL7GCj.mjs → acorex-modules-auth-acorex-modules-auth-5o4GqqVA.mjs} +15 -19
- package/fesm2022/acorex-modules-auth-acorex-modules-auth-5o4GqqVA.mjs.map +1 -0
- package/fesm2022/{acorex-modules-auth-app-chooser.component-CbJb1P_k.mjs → acorex-modules-auth-app-chooser.component-NuQzP5DC.mjs} +2 -2
- package/fesm2022/{acorex-modules-auth-app-chooser.component-CbJb1P_k.mjs.map → acorex-modules-auth-app-chooser.component-NuQzP5DC.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-auth-login.module-DFCB1l7W.mjs → acorex-modules-auth-login.module-B_WrZQJx.mjs} +4 -4
- package/fesm2022/{acorex-modules-auth-login.module-DFCB1l7W.mjs.map → acorex-modules-auth-login.module-B_WrZQJx.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-auth-master.layout-CuKXvY0o.mjs → acorex-modules-auth-master.layout-hDbrFbwO.mjs} +2 -2
- package/fesm2022/{acorex-modules-auth-master.layout-CuKXvY0o.mjs.map → acorex-modules-auth-master.layout-hDbrFbwO.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-auth-password.component-DacOjakT.mjs → acorex-modules-auth-password.component-BnT_IaqN.mjs} +2 -2
- package/fesm2022/{acorex-modules-auth-password.component-DacOjakT.mjs.map → acorex-modules-auth-password.component-BnT_IaqN.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-auth-password.component-5gwz30CZ.mjs → acorex-modules-auth-password.component-DDE0M5GE.mjs} +2 -2
- package/fesm2022/{acorex-modules-auth-password.component-5gwz30CZ.mjs.map → acorex-modules-auth-password.component-DDE0M5GE.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-auth-routes-D018Lg-b.mjs → acorex-modules-auth-routes-Da02kID6.mjs} +2 -2
- package/fesm2022/{acorex-modules-auth-routes-D018Lg-b.mjs.map → acorex-modules-auth-routes-Da02kID6.mjs.map} +1 -1
- package/fesm2022/acorex-modules-auth-setting.provider-D3A0WUgJ.mjs +271 -0
- package/fesm2022/acorex-modules-auth-setting.provider-D3A0WUgJ.mjs.map +1 -0
- package/fesm2022/{acorex-modules-auth-two-factor.module-DiEB7VWl.mjs → acorex-modules-auth-two-factor.module-BrDpX4X1.mjs} +2 -2
- package/fesm2022/{acorex-modules-auth-two-factor.module-DiEB7VWl.mjs.map → acorex-modules-auth-two-factor.module-BrDpX4X1.mjs.map} +1 -1
- package/fesm2022/acorex-modules-auth.mjs +1 -1
- package/fesm2022/acorex-modules-common-index-rvP9ISgL.mjs +717 -0
- package/fesm2022/acorex-modules-common-index-rvP9ISgL.mjs.map +1 -0
- package/fesm2022/acorex-modules-common.mjs +34 -24
- package/fesm2022/acorex-modules-common.mjs.map +1 -1
- package/fesm2022/acorex-modules-conversation.mjs +4 -2
- package/fesm2022/acorex-modules-conversation.mjs.map +1 -1
- package/fesm2022/{acorex-modules-document-management-acorex-modules-document-management-_BOVaDOq.mjs → acorex-modules-document-management-acorex-modules-document-management-C36haVZ_.mjs} +1054 -266
- package/fesm2022/acorex-modules-document-management-acorex-modules-document-management-C36haVZ_.mjs.map +1 -0
- package/fesm2022/acorex-modules-document-management-create-folder-dialog.component-C9YP1aFi.mjs +135 -0
- package/fesm2022/acorex-modules-document-management-create-folder-dialog.component-C9YP1aFi.mjs.map +1 -0
- package/fesm2022/{acorex-modules-document-management-details-view.component-BHcu_gYH.mjs → acorex-modules-document-management-details-view.component-BFMgAxeK.mjs} +2 -2
- package/fesm2022/{acorex-modules-document-management-details-view.component-BHcu_gYH.mjs.map → acorex-modules-document-management-details-view.component-BFMgAxeK.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-document-management-drive-choose.component-WoZfDyLK.mjs → acorex-modules-document-management-drive-choose.component-Bo-I7TN5.mjs} +22 -16
- package/fesm2022/acorex-modules-document-management-drive-choose.component-Bo-I7TN5.mjs.map +1 -0
- package/fesm2022/{acorex-modules-document-management-large-icons-view.component-DvriE0YR.mjs → acorex-modules-document-management-large-icons-view.component-CZ-GUtnO.mjs} +2 -2
- package/fesm2022/{acorex-modules-document-management-large-icons-view.component-DvriE0YR.mjs.map → acorex-modules-document-management-large-icons-view.component-CZ-GUtnO.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-document-management-large-tiles-view.component-ByWrKvZe.mjs → acorex-modules-document-management-large-tiles-view.component-Cw5yZ851.mjs} +2 -2
- package/fesm2022/{acorex-modules-document-management-large-tiles-view.component-ByWrKvZe.mjs.map → acorex-modules-document-management-large-tiles-view.component-Cw5yZ851.mjs.map} +1 -1
- package/fesm2022/acorex-modules-document-management-link-dialog.component-1iPUnhr1.mjs +70 -0
- package/fesm2022/acorex-modules-document-management-link-dialog.component-1iPUnhr1.mjs.map +1 -0
- package/fesm2022/{acorex-modules-document-management-list-view.component-B6J6Tokv.mjs → acorex-modules-document-management-list-view.component-BPkaAGjR.mjs} +2 -2
- package/fesm2022/{acorex-modules-document-management-list-view.component-B6J6Tokv.mjs.map → acorex-modules-document-management-list-view.component-BPkaAGjR.mjs.map} +1 -1
- package/fesm2022/acorex-modules-document-management-lock-dialog.component-BwKdUUcf.mjs +52 -0
- package/fesm2022/acorex-modules-document-management-lock-dialog.component-BwKdUUcf.mjs.map +1 -0
- package/fesm2022/{acorex-modules-document-management-rename-node-dialog.component-Dae6RWb8.mjs → acorex-modules-document-management-rename-node-dialog.component-DEhPxW3b.mjs} +10 -10
- package/fesm2022/acorex-modules-document-management-rename-node-dialog.component-DEhPxW3b.mjs.map +1 -0
- package/fesm2022/acorex-modules-document-management-share-dialog.component-BiNdRpqs.mjs +143 -0
- package/fesm2022/acorex-modules-document-management-share-dialog.component-BiNdRpqs.mjs.map +1 -0
- package/fesm2022/acorex-modules-document-management-share-email-dialog.component-BvR5OuCV.mjs +55 -0
- package/fesm2022/acorex-modules-document-management-share-email-dialog.component-BvR5OuCV.mjs.map +1 -0
- package/fesm2022/{acorex-modules-document-management-small-icons-view.component-TrYeB22e.mjs → acorex-modules-document-management-small-icons-view.component-Cz-sHFPj.mjs} +2 -2
- package/fesm2022/{acorex-modules-document-management-small-icons-view.component-TrYeB22e.mjs.map → acorex-modules-document-management-small-icons-view.component-Cz-sHFPj.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-document-management-small-tiles-view.component-DDKdWg8I.mjs → acorex-modules-document-management-small-tiles-view.component-C_SlJ79h.mjs} +2 -2
- package/fesm2022/{acorex-modules-document-management-small-tiles-view.component-DDKdWg8I.mjs.map → acorex-modules-document-management-small-tiles-view.component-C_SlJ79h.mjs.map} +1 -1
- package/fesm2022/acorex-modules-document-management-unlock-dialog.component-DkZQ84kg.mjs +37 -0
- package/fesm2022/acorex-modules-document-management-unlock-dialog.component-DkZQ84kg.mjs.map +1 -0
- package/fesm2022/acorex-modules-document-management.mjs +1 -1
- package/fesm2022/{acorex-modules-form-template-management-acorex-modules-form-template-management-CJYrDtq6.mjs → acorex-modules-form-template-management-acorex-modules-form-template-management-C3bCqH0S.mjs} +30 -24
- package/fesm2022/acorex-modules-form-template-management-acorex-modules-form-template-management-C3bCqH0S.mjs.map +1 -0
- package/fesm2022/{acorex-modules-form-template-management-category.entity-BdiYytzK.mjs → acorex-modules-form-template-management-category.entity-B8FoSfDd.mjs} +7 -3
- package/fesm2022/acorex-modules-form-template-management-category.entity-B8FoSfDd.mjs.map +1 -0
- package/fesm2022/{acorex-modules-form-template-management-setting.provider-CoETMkEC.mjs → acorex-modules-form-template-management-setting.provider-2gDLkJ82.mjs} +20 -17
- package/fesm2022/acorex-modules-form-template-management-setting.provider-2gDLkJ82.mjs.map +1 -0
- package/fesm2022/{acorex-modules-form-template-management-template-picker.component-0JfGxdMv.mjs → acorex-modules-form-template-management-template-picker.component-M-R2U9CH.mjs} +5 -4
- package/fesm2022/acorex-modules-form-template-management-template-picker.component-M-R2U9CH.mjs.map +1 -0
- package/fesm2022/{acorex-modules-form-template-management-template-widget-edit.component-BkJ3ieIg.mjs → acorex-modules-form-template-management-template-widget-edit.component-CGLJ_4tB.mjs} +2 -2
- package/fesm2022/{acorex-modules-form-template-management-template-widget-edit.component-BkJ3ieIg.mjs.map → acorex-modules-form-template-management-template-widget-edit.component-CGLJ_4tB.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-form-template-management-template.entity-ByE2p0Mu.mjs → acorex-modules-form-template-management-template.entity-Cm57FCm7.mjs} +53 -33
- package/fesm2022/acorex-modules-form-template-management-template.entity-Cm57FCm7.mjs.map +1 -0
- package/fesm2022/{acorex-modules-form-template-management-viewer-popup.component-CThcXWpt.mjs → acorex-modules-form-template-management-viewer-popup.component-C8QVMY0f.mjs} +2 -2
- package/fesm2022/{acorex-modules-form-template-management-viewer-popup.component-CThcXWpt.mjs.map → acorex-modules-form-template-management-viewer-popup.component-C8QVMY0f.mjs.map} +1 -1
- package/fesm2022/acorex-modules-form-template-management.mjs +1 -1
- package/fesm2022/acorex-modules-notification-management.mjs +43 -35
- package/fesm2022/acorex-modules-notification-management.mjs.map +1 -1
- package/fesm2022/{acorex-modules-organization-management-org-chart-configuration.page-JKQwYEPq.mjs → acorex-modules-organization-management-org-chart-configuration.page-BFu7TUGC.mjs} +3 -3
- package/fesm2022/{acorex-modules-organization-management-org-chart-configuration.page-JKQwYEPq.mjs.map → acorex-modules-organization-management-org-chart-configuration.page-BFu7TUGC.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-organization-management-org-chart-configuration.service-QLdDEdqL.mjs → acorex-modules-organization-management-org-chart-configuration.service-B4ohp4o5.mjs} +5 -4
- package/fesm2022/acorex-modules-organization-management-org-chart-configuration.service-B4ohp4o5.mjs.map +1 -0
- package/fesm2022/{acorex-modules-organization-management-org-chart.page-C2ZtUVKI.mjs → acorex-modules-organization-management-org-chart.page-BIytyLYP.mjs} +3 -4
- package/fesm2022/acorex-modules-organization-management-org-chart.page-BIytyLYP.mjs.map +1 -0
- package/fesm2022/{acorex-modules-organization-management-setting.provider-CMDpwkG2.mjs → acorex-modules-organization-management-setting.provider-BPjFNA5E.mjs} +44 -23
- package/fesm2022/acorex-modules-organization-management-setting.provider-BPjFNA5E.mjs.map +1 -0
- package/fesm2022/acorex-modules-organization-management.mjs +6 -6
- package/fesm2022/acorex-modules-organization-management.mjs.map +1 -1
- package/fesm2022/acorex-modules-platform-management-acorex-modules-platform-management-C-vMSeD0.mjs +4746 -0
- package/fesm2022/acorex-modules-platform-management-acorex-modules-platform-management-C-vMSeD0.mjs.map +1 -0
- package/fesm2022/{acorex-modules-platform-management-list-version.component-C9764yzu.mjs → acorex-modules-platform-management-list-version.component-EHtlPye1.mjs} +2 -2
- package/fesm2022/acorex-modules-platform-management-list-version.component-EHtlPye1.mjs.map +1 -0
- package/fesm2022/acorex-modules-platform-management-setting.provider-Bbd_enhk.mjs +335 -0
- package/fesm2022/acorex-modules-platform-management-setting.provider-Bbd_enhk.mjs.map +1 -0
- package/fesm2022/acorex-modules-platform-management.mjs +1 -4866
- package/fesm2022/acorex-modules-platform-management.mjs.map +1 -1
- package/fesm2022/acorex-modules-security-management.mjs +18 -12
- package/fesm2022/acorex-modules-security-management.mjs.map +1 -1
- package/form-template-management/lib/entities/category/category.service.d.ts +2 -2
- package/form-template-management/lib/entities/category/category.types.d.ts +2 -1
- package/form-template-management/lib/entities/template/template.service.d.ts +2 -2
- package/form-template-management/lib/entities/template/template.types.d.ts +38 -5
- package/form-template-management/lib/features/designer/template.provider.d.ts +1 -1
- package/form-template-management/lib/features/designer/widgets/template-picker/template.provider.d.ts +3 -3
- package/form-template-management/lib/setting.provider.d.ts +4 -0
- package/notification-management/lib/{components → features/components}/admin-notification-item/admin-notification-item.component.d.ts +1 -1
- package/notification-management/lib/{components → features/components}/admin-notification-panel/admin-notification-panel.component.d.ts +1 -1
- package/notification-management/lib/setting.provider.d.ts +4 -0
- package/organization-management/lib/features/organization-chart/org-chart-configuration.page.d.ts +2 -2
- package/organization-management/lib/features/organization-chart/org-chart.page.d.ts +2 -2
- package/organization-management/lib/setting.provider.d.ts +5 -3
- package/package.json +1 -1
- package/platform-management/index.d.ts +1 -1
- package/platform-management/lib/entities/app-term/index.d.ts +2 -2
- package/platform-management/lib/entities/app-version/index.d.ts +2 -2
- package/platform-management/lib/entities/index.d.ts +0 -1
- package/platform-management/lib/entities/promotion/index.d.ts +1 -1
- package/platform-management/lib/features/app-terms/check-terms.service.d.ts +11 -0
- package/platform-management/lib/{entities/app-term → features/app-terms}/components/notify-app/notify-app.component.d.ts +1 -1
- package/platform-management/lib/{entities/app-term → features/app-terms}/pages/list/list-terms.component.d.ts +2 -2
- package/platform-management/lib/{entities/check-version.d.ts → features/app-version/check-version.service.d.ts} +3 -4
- package/platform-management/lib/{entities → features}/app-version/components/list-versions/list-version.component.d.ts +1 -1
- package/platform-management/lib/{entities → features}/app-version/components/notify-app/notify-app.component.d.ts +1 -1
- package/platform-management/lib/{common → features/common}/index.d.ts +1 -1
- package/platform-management/lib/{common → features/common}/regional/setting.keys.d.ts +3 -1
- package/platform-management/lib/{common → features/common}/regional/setting.provider.d.ts +4 -1
- package/platform-management/lib/{entities → features}/promotion/components/promotion-slot/promotion-slot.component.d.ts +2 -2
- package/platform-management/lib/platform-management.module.d.ts +4 -3
- package/security-management/lib/entities/users/users.service.d.ts +4 -4
- package/security-management/lib/entities/users/users.types.d.ts +0 -4
- package/common/lib/features/dashboard-home/index.d.ts +0 -1
- package/document-management/lib/features/widgets/document-attachment/document-attachment-widget-filter.component.d.ts +0 -6
- package/fesm2022/acorex-modules-auth-acorex-modules-auth-DrcL7GCj.mjs.map +0 -1
- package/fesm2022/acorex-modules-auth-setting.provider-DDl3OHw6.mjs +0 -59
- package/fesm2022/acorex-modules-auth-setting.provider-DDl3OHw6.mjs.map +0 -1
- package/fesm2022/acorex-modules-common-index-D90SN6SH.mjs +0 -507
- package/fesm2022/acorex-modules-common-index-D90SN6SH.mjs.map +0 -1
- package/fesm2022/acorex-modules-document-management-acorex-modules-document-management-_BOVaDOq.mjs.map +0 -1
- package/fesm2022/acorex-modules-document-management-create-folder-dialog.component-D66KoQNb.mjs +0 -92
- package/fesm2022/acorex-modules-document-management-create-folder-dialog.component-D66KoQNb.mjs.map +0 -1
- package/fesm2022/acorex-modules-document-management-drive-choose.component-WoZfDyLK.mjs.map +0 -1
- package/fesm2022/acorex-modules-document-management-drive.component-B3BCzdVv.mjs +0 -305
- package/fesm2022/acorex-modules-document-management-drive.component-B3BCzdVv.mjs.map +0 -1
- package/fesm2022/acorex-modules-document-management-rename-node-dialog.component-Dae6RWb8.mjs.map +0 -1
- package/fesm2022/acorex-modules-form-template-management-acorex-modules-form-template-management-CJYrDtq6.mjs.map +0 -1
- package/fesm2022/acorex-modules-form-template-management-category.entity-BdiYytzK.mjs.map +0 -1
- package/fesm2022/acorex-modules-form-template-management-setting.provider-CoETMkEC.mjs.map +0 -1
- package/fesm2022/acorex-modules-form-template-management-template-picker.component-0JfGxdMv.mjs.map +0 -1
- package/fesm2022/acorex-modules-form-template-management-template.entity-ByE2p0Mu.mjs.map +0 -1
- package/fesm2022/acorex-modules-organization-management-org-chart-configuration.service-QLdDEdqL.mjs.map +0 -1
- package/fesm2022/acorex-modules-organization-management-org-chart.page-C2ZtUVKI.mjs.map +0 -1
- package/fesm2022/acorex-modules-organization-management-setting.provider-CMDpwkG2.mjs.map +0 -1
- package/fesm2022/acorex-modules-platform-management-list-version.component-C9764yzu.mjs.map +0 -1
- /package/common/lib/features/{dashboard-home/dashboard.type.d.ts → home-dashboard/dashboard-home/home-dashboard.type.d.ts} +0 -0
- /package/notification-management/lib/{components → features/components}/admin-notification-slot/admin-notification-slot.component.d.ts +0 -0
- /package/platform-management/lib/{entities/app-term → features/app-terms}/pages/index.d.ts +0 -0
- /package/platform-management/lib/{entities/app-term → features/app-terms}/workflows/index.d.ts +0 -0
- /package/platform-management/lib/{entities/app-term → features/app-terms}/workflows/notify-new-term.workflow.d.ts +0 -0
- /package/platform-management/lib/{entities → features}/app-version/components/index.d.ts +0 -0
- /package/platform-management/lib/{entities → features}/app-version/components/slots/app-version-slot.component.d.ts +0 -0
- /package/platform-management/lib/{entities → features}/app-version/workflows/change-log.workflow.d.ts +0 -0
- /package/platform-management/lib/{entities → features}/app-version/workflows/index.d.ts +0 -0
- /package/platform-management/lib/{entities → features}/app-version/workflows/show-release-notes.workflow.d.ts +0 -0
- /package/platform-management/lib/{common → features/common}/common.module.d.ts +0 -0
- /package/platform-management/lib/{common → features/common}/entity.provider.d.ts +0 -0
- /package/platform-management/lib/{common → features/common}/regional/data-source.provider.d.ts +0 -0
- /package/platform-management/lib/{common → features/common}/regional/index.d.ts +0 -0
- /package/platform-management/lib/{common → features/common}/regional/language-slot/language-slot.component.d.ts +0 -0
- /package/platform-management/lib/{common → features/common}/regional/regional-store.service.d.ts +0 -0
- /package/platform-management/lib/{entities → features}/promotion/components/index.d.ts +0 -0
@@ -0,0 +1,717 @@
|
|
1
|
+
import * as i5 from '@angular/common';
|
2
|
+
import { CommonModule } from '@angular/common';
|
3
|
+
import * as i0 from '@angular/core';
|
4
|
+
import { output, input, ChangeDetectionStrategy, Component, model, signal, inject, Injectable, computed, effect, ViewEncapsulation } from '@angular/core';
|
5
|
+
import { Router, ActivatedRoute } from '@angular/router';
|
6
|
+
import { AXBreadcrumbsModule } from '@acorex/components/breadcrumbs';
|
7
|
+
import * as i1 from '@acorex/components/button';
|
8
|
+
import { AXButtonModule } from '@acorex/components/button';
|
9
|
+
import { AXButtonGroupModule } from '@acorex/components/button-group';
|
10
|
+
import * as i2 from '@acorex/components/decorators';
|
11
|
+
import { AXDecoratorModule } from '@acorex/components/decorators';
|
12
|
+
import { AXDialogService } from '@acorex/components/dialog';
|
13
|
+
import * as i3 from '@acorex/components/dropdown';
|
14
|
+
import { AXDropdownModule } from '@acorex/components/dropdown';
|
15
|
+
import { AXDropdownButtonModule } from '@acorex/components/dropdown-button';
|
16
|
+
import * as i3$2 from '@acorex/components/grid-layout-builder';
|
17
|
+
import { AXGridLayoutBuilderModule } from '@acorex/components/grid-layout-builder';
|
18
|
+
import * as i4 from '@acorex/core/translation';
|
19
|
+
import { AXTranslationModule, AXTranslationService } from '@acorex/core/translation';
|
20
|
+
import * as i2$1 from '@acorex/platform/layout/builder';
|
21
|
+
import { AXPWidgetGroupEnum, AXPLayoutBuilderModule } from '@acorex/platform/layout/builder';
|
22
|
+
import { AXPWidgetPropertyViewerComponent, AXPWidgetPickerService, AXPDesignerService } from '@acorex/platform/layout/designer';
|
23
|
+
import { AXPBasePageComponent, AXPPageLayoutComponent, AXPBasePage } from '@acorex/platform/themes/default';
|
24
|
+
import { AXPLayoutThemeService, AXPThemeLayoutBlockComponent } from '@acorex/platform/themes/shared';
|
25
|
+
import { AXPopupService } from '@acorex/components/popup';
|
26
|
+
import { AXMDashboardService, RootConfig } from './acorex-modules-common.mjs';
|
27
|
+
import { AXPSettingService } from '@acorex/platform/common';
|
28
|
+
import { AXPPlatformScope, AXPDataGenerator } from '@acorex/platform/core';
|
29
|
+
import { signalStore, withState, withComputed, withMethods, patchState } from '@ngrx/signals';
|
30
|
+
import * as i4$1 from '@acorex/components/label';
|
31
|
+
import { AXLabelModule } from '@acorex/components/label';
|
32
|
+
import { AXBasePageComponent } from '@acorex/components/page';
|
33
|
+
import * as i3$1 from '@acorex/components/text-box';
|
34
|
+
import { AXTextBoxModule } from '@acorex/components/text-box';
|
35
|
+
import * as i1$1 from '@angular/forms';
|
36
|
+
import { FormsModule } from '@angular/forms';
|
37
|
+
|
38
|
+
class AXCDashboardWidgetWrapperComponent {
|
39
|
+
constructor() {
|
40
|
+
this.onDelete = output();
|
41
|
+
this.onConfiguration = output();
|
42
|
+
this.hasOptions = input(true);
|
43
|
+
}
|
44
|
+
handleOnItemClick(event) {
|
45
|
+
switch (event.item.data) {
|
46
|
+
case 'delete':
|
47
|
+
this.onDelete.emit();
|
48
|
+
break;
|
49
|
+
case 'configuration':
|
50
|
+
this.onConfiguration.emit();
|
51
|
+
break;
|
52
|
+
default:
|
53
|
+
break;
|
54
|
+
}
|
55
|
+
}
|
56
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXCDashboardWidgetWrapperComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
57
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.0.3", type: AXCDashboardWidgetWrapperComponent, isStandalone: true, selector: "axc-dashboard-widget-wrapper", inputs: { hasOptions: { classPropertyName: "hasOptions", publicName: "hasOptions", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { onDelete: "onDelete", onConfiguration: "onConfiguration" }, ngImport: i0, template: "<section class=\"ax-relative ax-size-full ax-flex ax-justify-center ax-items-center ax-group\">\n @if(hasOptions()){\n <div class=\"ax-p-1 ax-absolute ax-top-0 ax-left-0 ax-z-[9999] ax-invisible group-hover:ax-visible\">\n <ax-button class=\"ax-sm\" [look]=\"'blank'\">\n <ax-prefix>\n <ax-icon icon=\"fa-light fa-ellipsis-h\"></ax-icon>\n </ax-prefix>\n <ax-dropdown-panel>\n <ng-container *translate=\"let t\">\n <ax-button-item-list (onItemClick)=\"handleOnItemClick($event)\">\n <ax-button-item\n [data]=\"'configuration'\"\n [text]=\"(t('configuration', { scope: 'dashboard' }) | async) || 'configuration'\"\n >\n <ax-prefix>\n <ax-icon icon=\"fa-solid fa-cog\"></ax-icon>\n </ax-prefix>\n </ax-button-item>\n <ax-divider></ax-divider>\n <ax-button-item\n [data]=\"'delete'\"\n [text]=\"(t('delete', { scope: 'dashboard' }) | async) || 'delete'\"\n color=\"danger\"\n >\n <ax-prefix>\n <ax-icon icon=\"fa-solid fa-trash-can\"></ax-icon>\n </ax-prefix>\n </ax-button-item>\n </ax-button-item-list>\n </ng-container>\n </ax-dropdown-panel>\n </ax-button>\n </div>\n }\n <ng-content></ng-content>\n</section>\n", styles: [":host{display:block;width:100%;height:100%}\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: "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.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: AXDropdownModule }, { kind: "component", type: i3.AXDropdownPanelComponent, selector: "ax-dropdown-panel", inputs: ["isOpen", "fitParent", "dropdownWidth", "position", "placement", "_target", "adaptivityEnabled"], outputs: ["onOpened", "onClosed"] }, { kind: "ngmodule", type: AXTranslationModule }, { kind: "directive", type: i4.AXTranslatorDirective, selector: "[translate]" }, { kind: "ngmodule", type: CommonModule }, { kind: "pipe", type: i5.AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
58
|
+
}
|
59
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXCDashboardWidgetWrapperComponent, decorators: [{
|
60
|
+
type: Component,
|
61
|
+
args: [{ selector: 'axc-dashboard-widget-wrapper', changeDetection: ChangeDetectionStrategy.OnPush, imports: [AXButtonModule, AXDecoratorModule, AXDropdownModule, AXTranslationModule, CommonModule], standalone: true, template: "<section class=\"ax-relative ax-size-full ax-flex ax-justify-center ax-items-center ax-group\">\n @if(hasOptions()){\n <div class=\"ax-p-1 ax-absolute ax-top-0 ax-left-0 ax-z-[9999] ax-invisible group-hover:ax-visible\">\n <ax-button class=\"ax-sm\" [look]=\"'blank'\">\n <ax-prefix>\n <ax-icon icon=\"fa-light fa-ellipsis-h\"></ax-icon>\n </ax-prefix>\n <ax-dropdown-panel>\n <ng-container *translate=\"let t\">\n <ax-button-item-list (onItemClick)=\"handleOnItemClick($event)\">\n <ax-button-item\n [data]=\"'configuration'\"\n [text]=\"(t('configuration', { scope: 'dashboard' }) | async) || 'configuration'\"\n >\n <ax-prefix>\n <ax-icon icon=\"fa-solid fa-cog\"></ax-icon>\n </ax-prefix>\n </ax-button-item>\n <ax-divider></ax-divider>\n <ax-button-item\n [data]=\"'delete'\"\n [text]=\"(t('delete', { scope: 'dashboard' }) | async) || 'delete'\"\n color=\"danger\"\n >\n <ax-prefix>\n <ax-icon icon=\"fa-solid fa-trash-can\"></ax-icon>\n </ax-prefix>\n </ax-button-item>\n </ax-button-item-list>\n </ng-container>\n </ax-dropdown-panel>\n </ax-button>\n </div>\n }\n <ng-content></ng-content>\n</section>\n", styles: [":host{display:block;width:100%;height:100%}\n"] }]
|
62
|
+
}] });
|
63
|
+
|
64
|
+
class AXCAddDashboardPopup extends AXBasePageComponent {
|
65
|
+
constructor() {
|
66
|
+
super(...arguments);
|
67
|
+
this.title = model('');
|
68
|
+
this.description = model('');
|
69
|
+
}
|
70
|
+
get isValid() {
|
71
|
+
return !!this.title()?.trim();
|
72
|
+
}
|
73
|
+
ngOnInit() {
|
74
|
+
this.title.set(this.data?.title || '');
|
75
|
+
this.description.set(this.data?.description || '');
|
76
|
+
}
|
77
|
+
async handleClose(isCanceled = false) {
|
78
|
+
this.close({
|
79
|
+
title: this.title()?.trim(),
|
80
|
+
description: this.description()?.trim(),
|
81
|
+
isCanceled,
|
82
|
+
});
|
83
|
+
}
|
84
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXCAddDashboardPopup, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
85
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "19.0.3", type: AXCAddDashboardPopup, isStandalone: true, selector: "ng-component", inputs: { title: { classPropertyName: "title", publicName: "title", isSignal: true, isRequired: false, transformFunction: null }, description: { classPropertyName: "description", publicName: "description", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { title: "titleChange", description: "descriptionChange" }, usesInheritance: true, ngImport: i0, template: `
|
86
|
+
<div class="ax-grid ax-grid-cols-[auto_18rem] ax-gap-4 ax-justify-center ax-p-4 ax-items-center">
|
87
|
+
<ax-label>Title</ax-label>
|
88
|
+
<ax-text-box [(ngModel)]="title" name="title" placeholder="Enter dashboard title"> </ax-text-box>
|
89
|
+
|
90
|
+
<ax-label>Description</ax-label>
|
91
|
+
<ax-text-box [(ngModel)]="description" name="description" placeholder="Enter dashboard description">
|
92
|
+
</ax-text-box>
|
93
|
+
</div>
|
94
|
+
|
95
|
+
<ax-footer>
|
96
|
+
<ax-prefix></ax-prefix>
|
97
|
+
<ax-suffix>
|
98
|
+
<ax-button text="Cancel" look="solid" (onClick)="handleClose(true)"> </ax-button>
|
99
|
+
<ax-button text="Save" look="solid" color="primary" [disabled]="!isValid" (onClick)="handleClose()">
|
100
|
+
<ax-icon class="fa-solid fa-save"></ax-icon>
|
101
|
+
</ax-button>
|
102
|
+
</ax-suffix>
|
103
|
+
</ax-footer>
|
104
|
+
`, isInline: true, dependencies: [{ kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { 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: AXTextBoxModule }, { kind: "component", type: i3$1.AXTextBoxComponent, selector: "ax-text-box", inputs: ["disabled", "tabIndex", "readonly", "value", "state", "name", "id", "placeholder", "maxLength", "allowNull", "type", "autoComplete", "look", "mask-options", "class"], outputs: ["onBlur", "onFocus", "valueChange", "stateChange", "onValueChanged", "readonlyChange", "disabledChange", "onKeyDown", "onKeyUp", "onKeyPress"] }, { kind: "ngmodule", type: AXLabelModule }, { kind: "component", type: i4$1.AXLabelComponent, selector: "ax-label", inputs: ["required", "for"], outputs: ["requiredChange"] }, { 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" }] }); }
|
105
|
+
}
|
106
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXCAddDashboardPopup, decorators: [{
|
107
|
+
type: Component,
|
108
|
+
args: [{
|
109
|
+
template: `
|
110
|
+
<div class="ax-grid ax-grid-cols-[auto_18rem] ax-gap-4 ax-justify-center ax-p-4 ax-items-center">
|
111
|
+
<ax-label>Title</ax-label>
|
112
|
+
<ax-text-box [(ngModel)]="title" name="title" placeholder="Enter dashboard title"> </ax-text-box>
|
113
|
+
|
114
|
+
<ax-label>Description</ax-label>
|
115
|
+
<ax-text-box [(ngModel)]="description" name="description" placeholder="Enter dashboard description">
|
116
|
+
</ax-text-box>
|
117
|
+
</div>
|
118
|
+
|
119
|
+
<ax-footer>
|
120
|
+
<ax-prefix></ax-prefix>
|
121
|
+
<ax-suffix>
|
122
|
+
<ax-button text="Cancel" look="solid" (onClick)="handleClose(true)"> </ax-button>
|
123
|
+
<ax-button text="Save" look="solid" color="primary" [disabled]="!isValid" (onClick)="handleClose()">
|
124
|
+
<ax-icon class="fa-solid fa-save"></ax-icon>
|
125
|
+
</ax-button>
|
126
|
+
</ax-suffix>
|
127
|
+
</ax-footer>
|
128
|
+
`,
|
129
|
+
imports: [FormsModule, AXButtonModule, AXTextBoxModule, AXLabelModule, AXDecoratorModule],
|
130
|
+
}]
|
131
|
+
}] });
|
132
|
+
|
133
|
+
class AXCConfigurationPopup extends AXBasePageComponent {
|
134
|
+
constructor() {
|
135
|
+
super(...arguments);
|
136
|
+
this.widgetData = signal(null);
|
137
|
+
}
|
138
|
+
ngOnInit() {
|
139
|
+
this.widgetData.set(this.widget);
|
140
|
+
}
|
141
|
+
async handleClose(isCanceled = false) {
|
142
|
+
this.close({
|
143
|
+
isCanceled,
|
144
|
+
widget: this.widgetData(),
|
145
|
+
});
|
146
|
+
}
|
147
|
+
handlePropertyChange(event) {
|
148
|
+
this.widgetData.set(event.values);
|
149
|
+
}
|
150
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXCConfigurationPopup, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
151
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.0.3", type: AXCConfigurationPopup, isStandalone: true, selector: "ng-component", usesInheritance: true, ngImport: i0, template: `
|
152
|
+
@if(widget) {
|
153
|
+
<div class="ax-px-1">
|
154
|
+
<axp-widget-property-viewer (onChanged)="handlePropertyChange($event)" [widget]="widget">
|
155
|
+
</axp-widget-property-viewer>
|
156
|
+
</div>
|
157
|
+
}
|
158
|
+
<ax-footer>
|
159
|
+
<ax-prefix></ax-prefix>
|
160
|
+
<ax-suffix>
|
161
|
+
<ax-button text="Cancel" look="solid" (onClick)="handleClose(true)"> </ax-button>
|
162
|
+
<ax-button text="Save" look="solid" color="primary" (onClick)="handleClose()">
|
163
|
+
<ax-icon class="fa-solid fa-save"></ax-icon>
|
164
|
+
</ax-button>
|
165
|
+
</ax-suffix>
|
166
|
+
</ax-footer>
|
167
|
+
`, isInline: true, 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"] }, { 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: "component", type: AXPWidgetPropertyViewerComponent, selector: "axp-widget-property-viewer", inputs: ["widget", "mode"], outputs: ["onChanged"] }] }); }
|
168
|
+
}
|
169
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXCConfigurationPopup, decorators: [{
|
170
|
+
type: Component,
|
171
|
+
args: [{
|
172
|
+
template: `
|
173
|
+
@if(widget) {
|
174
|
+
<div class="ax-px-1">
|
175
|
+
<axp-widget-property-viewer (onChanged)="handlePropertyChange($event)" [widget]="widget">
|
176
|
+
</axp-widget-property-viewer>
|
177
|
+
</div>
|
178
|
+
}
|
179
|
+
<ax-footer>
|
180
|
+
<ax-prefix></ax-prefix>
|
181
|
+
<ax-suffix>
|
182
|
+
<ax-button text="Cancel" look="solid" (onClick)="handleClose(true)"> </ax-button>
|
183
|
+
<ax-button text="Save" look="solid" color="primary" (onClick)="handleClose()">
|
184
|
+
<ax-icon class="fa-solid fa-save"></ax-icon>
|
185
|
+
</ax-button>
|
186
|
+
</ax-suffix>
|
187
|
+
</ax-footer>
|
188
|
+
`,
|
189
|
+
imports: [AXButtonModule, AXDecoratorModule, AXPWidgetPropertyViewerComponent],
|
190
|
+
}]
|
191
|
+
}] });
|
192
|
+
|
193
|
+
class AXPDashboardPopupService {
|
194
|
+
constructor() {
|
195
|
+
this.popupService = inject(AXPopupService);
|
196
|
+
}
|
197
|
+
async generateDashboardLayout(data) {
|
198
|
+
const result = await this.popupService.open(AXCAddDashboardPopup, {
|
199
|
+
header: true,
|
200
|
+
size: 'fit',
|
201
|
+
draggable: true,
|
202
|
+
hasBackdrop: true,
|
203
|
+
title: 'Dashboard Layout Details',
|
204
|
+
data: { data },
|
205
|
+
});
|
206
|
+
if (!result.data) {
|
207
|
+
return;
|
208
|
+
}
|
209
|
+
const { isCanceled, ...rest } = result.data;
|
210
|
+
if (isCanceled) {
|
211
|
+
return;
|
212
|
+
}
|
213
|
+
return rest;
|
214
|
+
}
|
215
|
+
async handlePopupConfiguration(widget) {
|
216
|
+
const result = await this.popupService.open(AXCConfigurationPopup, {
|
217
|
+
header: true,
|
218
|
+
size: 'sm',
|
219
|
+
draggable: true,
|
220
|
+
hasBackdrop: true,
|
221
|
+
title: 'Widget Configuration',
|
222
|
+
data: { widget },
|
223
|
+
});
|
224
|
+
if (!result.data) {
|
225
|
+
return;
|
226
|
+
}
|
227
|
+
const { isCanceled, ...rest } = result.data;
|
228
|
+
if (isCanceled) {
|
229
|
+
return;
|
230
|
+
}
|
231
|
+
return rest.widget;
|
232
|
+
}
|
233
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXPDashboardPopupService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
234
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXPDashboardPopupService, providedIn: 'root' }); }
|
235
|
+
}
|
236
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXPDashboardPopupService, decorators: [{
|
237
|
+
type: Injectable,
|
238
|
+
args: [{ providedIn: 'root' }]
|
239
|
+
}] });
|
240
|
+
|
241
|
+
const path = 'home:dashboard:';
|
242
|
+
var AXPHomeDashboardSetting;
|
243
|
+
(function (AXPHomeDashboardSetting) {
|
244
|
+
AXPHomeDashboardSetting["CurrentDashboard"] = "home:dashboard:current-dashboard";
|
245
|
+
})(AXPHomeDashboardSetting || (AXPHomeDashboardSetting = {}));
|
246
|
+
|
247
|
+
// Create the SignalStore
|
248
|
+
const AXCDashboardStore = signalStore({ providedIn: 'root' },
|
249
|
+
// Initial State Definition
|
250
|
+
withState(() => {
|
251
|
+
// Define initial empty state
|
252
|
+
const state = {
|
253
|
+
dashboards: [],
|
254
|
+
currentDashboardId: null,
|
255
|
+
dashboardsOption: { float: true, cellHeight: 75, gap: 5, minRow: 9, column: 12 },
|
256
|
+
isLoading: false,
|
257
|
+
};
|
258
|
+
return state;
|
259
|
+
}),
|
260
|
+
// Computed Properties
|
261
|
+
withComputed((state) => ({
|
262
|
+
currentDashboard: computed(() => {
|
263
|
+
return state.dashboards().find((dashboard) => dashboard.id === state.currentDashboardId()) || null;
|
264
|
+
}),
|
265
|
+
})),
|
266
|
+
// Methods for State Management
|
267
|
+
withMethods((store, dashboardPopup = inject(AXPDashboardPopupService), dialogService = inject(AXDialogService), translationService = inject(AXTranslationService), widgetPickerService = inject(AXPWidgetPickerService), dashboardService = inject(AXMDashboardService), settingService = inject(AXPSettingService)) => {
|
268
|
+
// Load dashboards from service - runs on init via effect
|
269
|
+
effect(() => {
|
270
|
+
loadDashboards();
|
271
|
+
});
|
272
|
+
// Load dashboards from service
|
273
|
+
async function loadDashboards() {
|
274
|
+
try {
|
275
|
+
patchState(store, { isLoading: true });
|
276
|
+
// Get dashboards from service using query method
|
277
|
+
const result = await dashboardService.query({ skip: 0, take: 100 });
|
278
|
+
const dashboardModels = result.items || [];
|
279
|
+
// Convert dashboard models to AXPDashboardLayout
|
280
|
+
const dashboards = dashboardModels.map(modelToDashboardLayout);
|
281
|
+
// Get current dashboard from settings
|
282
|
+
const currentDashboardId = await settingService
|
283
|
+
.scope(AXPPlatformScope.User)
|
284
|
+
.get(AXPHomeDashboardSetting.CurrentDashboard);
|
285
|
+
let newCurrentDashboardId = null;
|
286
|
+
if (dashboards.length > 0) {
|
287
|
+
// Check if currentDashboardId exists and is valid
|
288
|
+
const dashboardExists = currentDashboardId && dashboards.some((d) => d.id === currentDashboardId);
|
289
|
+
if (dashboardExists) {
|
290
|
+
newCurrentDashboardId = currentDashboardId;
|
291
|
+
}
|
292
|
+
else {
|
293
|
+
// If current dashboard is not valid or not set, use the first one
|
294
|
+
newCurrentDashboardId = dashboards[0].id;
|
295
|
+
// Save to user settings
|
296
|
+
settingService
|
297
|
+
.scope(AXPPlatformScope.User)
|
298
|
+
.set(AXPHomeDashboardSetting.CurrentDashboard, newCurrentDashboardId);
|
299
|
+
}
|
300
|
+
}
|
301
|
+
patchState(store, {
|
302
|
+
dashboards,
|
303
|
+
isLoading: false,
|
304
|
+
currentDashboardId: newCurrentDashboardId,
|
305
|
+
});
|
306
|
+
}
|
307
|
+
catch (error) {
|
308
|
+
console.error('Error loading dashboards:', error);
|
309
|
+
patchState(store, { isLoading: false });
|
310
|
+
}
|
311
|
+
}
|
312
|
+
// Convert entity model to dashboard layout
|
313
|
+
function modelToDashboardLayout(model) {
|
314
|
+
return {
|
315
|
+
id: model.id || '',
|
316
|
+
title: model.title,
|
317
|
+
description: model.description,
|
318
|
+
widget: model.widget || [],
|
319
|
+
};
|
320
|
+
}
|
321
|
+
// Convert dashboard layout to entity model
|
322
|
+
function dashboardLayoutToModel(layout) {
|
323
|
+
return {
|
324
|
+
id: layout.id,
|
325
|
+
name: layout.title,
|
326
|
+
title: layout.title,
|
327
|
+
description: layout.description || '',
|
328
|
+
widget: layout.widget,
|
329
|
+
};
|
330
|
+
}
|
331
|
+
return {
|
332
|
+
// Set current dashboard
|
333
|
+
setCurrentDashboard(dashboardId) {
|
334
|
+
patchState(store, { currentDashboardId: dashboardId });
|
335
|
+
settingService.scope(AXPPlatformScope.User).set(AXPHomeDashboardSetting.CurrentDashboard, dashboardId);
|
336
|
+
},
|
337
|
+
// Add a new dashboard
|
338
|
+
async addDashboard() {
|
339
|
+
try {
|
340
|
+
const newDashboard = await dashboardPopup.generateDashboardLayout({});
|
341
|
+
if (!newDashboard)
|
342
|
+
return;
|
343
|
+
newDashboard.id = AXPDataGenerator.uuid();
|
344
|
+
newDashboard.widget = [];
|
345
|
+
// Create dashboard model and save to service
|
346
|
+
const dashboardModel = dashboardLayoutToModel(newDashboard);
|
347
|
+
await dashboardService.insertOne(dashboardModel);
|
348
|
+
// Update local state
|
349
|
+
const updatedDashboards = [...store.dashboards(), newDashboard];
|
350
|
+
patchState(store, {
|
351
|
+
dashboards: updatedDashboards,
|
352
|
+
currentDashboardId: newDashboard.id,
|
353
|
+
});
|
354
|
+
// Save current dashboard to settings
|
355
|
+
settingService.scope(AXPPlatformScope.User).set(AXPHomeDashboardSetting.CurrentDashboard, newDashboard.id);
|
356
|
+
}
|
357
|
+
catch (error) {
|
358
|
+
console.error('Error adding dashboard:', error);
|
359
|
+
}
|
360
|
+
},
|
361
|
+
// Add a widget to the current dashboard
|
362
|
+
async addWidget() {
|
363
|
+
if (!store.currentDashboardId()) {
|
364
|
+
console.warn('No current dashboard selected');
|
365
|
+
return;
|
366
|
+
}
|
367
|
+
try {
|
368
|
+
const widgets = await widgetPickerService.showPicker({
|
369
|
+
groups: [AXPWidgetGroupEnum.DashboardWidget],
|
370
|
+
});
|
371
|
+
//remove meta from widgets
|
372
|
+
const filteredWidgets = widgets.map(({ __meta__, ...rest }) => rest);
|
373
|
+
// Step 2: Convert the selected widgets into AXPDashboardWidgetData format
|
374
|
+
const convertedWidgets = filteredWidgets.map((widget) => {
|
375
|
+
const id = AXPDataGenerator.uuid();
|
376
|
+
return {
|
377
|
+
config: {
|
378
|
+
height: widget?.meta?.dimensions?.height ?? 2,
|
379
|
+
width: widget?.meta?.dimensions?.width ?? 2,
|
380
|
+
minHeight: widget?.meta?.dimensions?.minHeight,
|
381
|
+
minWidth: widget?.meta?.dimensions?.minWidth,
|
382
|
+
maxHeight: widget?.meta?.dimensions?.maxHeight,
|
383
|
+
maxWidth: widget?.meta?.dimensions?.maxWidth,
|
384
|
+
id,
|
385
|
+
},
|
386
|
+
node: { ...widget, name: id },
|
387
|
+
};
|
388
|
+
});
|
389
|
+
// Step 3: Update the dashboards
|
390
|
+
const updatedDashboards = store.dashboards().map((dashboard) => {
|
391
|
+
if (dashboard.id === store.currentDashboardId()) {
|
392
|
+
return {
|
393
|
+
...dashboard,
|
394
|
+
widget: [...dashboard.widget, ...convertedWidgets],
|
395
|
+
};
|
396
|
+
}
|
397
|
+
return dashboard;
|
398
|
+
});
|
399
|
+
// Step 4: Save the updated dashboard to the service
|
400
|
+
const currentDashboard = updatedDashboards.find((d) => d.id === store.currentDashboardId());
|
401
|
+
if (currentDashboard) {
|
402
|
+
await dashboardService.updateOne(currentDashboard.id, dashboardLayoutToModel(currentDashboard));
|
403
|
+
}
|
404
|
+
patchState(store, { dashboards: updatedDashboards });
|
405
|
+
}
|
406
|
+
catch (error) {
|
407
|
+
console.error('Error adding widget:', error);
|
408
|
+
}
|
409
|
+
},
|
410
|
+
// Remove a dashboard
|
411
|
+
async removeDashboard(id) {
|
412
|
+
if (!id) {
|
413
|
+
console.warn('No dashboard ID provided for removal');
|
414
|
+
return;
|
415
|
+
}
|
416
|
+
try {
|
417
|
+
const dialogResult = await dialogService.confirm(await translationService.translateAsync('workflow.warning'), await translationService.translateAsync('workflow.confirm-delete'), 'danger', 'horizontal');
|
418
|
+
if (dialogResult.result) {
|
419
|
+
// Delete from service
|
420
|
+
await dashboardService.deleteOne(id);
|
421
|
+
// Remove the dashboard from local state
|
422
|
+
const updatedDashboards = store.dashboards().filter((dashboard) => dashboard.id !== id);
|
423
|
+
// Update state and select a new current dashboard if needed
|
424
|
+
let newCurrentDashboardId = store.currentDashboardId();
|
425
|
+
if (id === store.currentDashboardId()) {
|
426
|
+
newCurrentDashboardId = updatedDashboards.length > 0 ? updatedDashboards[0].id : null;
|
427
|
+
// Save to settings if we changed the current dashboard
|
428
|
+
if (newCurrentDashboardId) {
|
429
|
+
settingService
|
430
|
+
.scope(AXPPlatformScope.User)
|
431
|
+
.set(AXPHomeDashboardSetting.CurrentDashboard, newCurrentDashboardId);
|
432
|
+
}
|
433
|
+
}
|
434
|
+
patchState(store, {
|
435
|
+
dashboards: updatedDashboards,
|
436
|
+
currentDashboardId: newCurrentDashboardId,
|
437
|
+
});
|
438
|
+
}
|
439
|
+
}
|
440
|
+
catch (error) {
|
441
|
+
console.error('Error removing dashboard:', error);
|
442
|
+
}
|
443
|
+
},
|
444
|
+
// Remove a widget from a dashboard
|
445
|
+
async removeWidget(dashboardId, widgetId) {
|
446
|
+
const currentDashboard = store.dashboards().find((d) => d.id === dashboardId);
|
447
|
+
if (!currentDashboard)
|
448
|
+
return;
|
449
|
+
const updatedDashboard = {
|
450
|
+
...currentDashboard,
|
451
|
+
widget: currentDashboard.widget.filter((widget) => widget.config.id !== widgetId),
|
452
|
+
};
|
453
|
+
// Save to service
|
454
|
+
await dashboardService.updateOne(dashboardId, dashboardLayoutToModel(updatedDashboard));
|
455
|
+
// Update local state
|
456
|
+
const updatedDashboards = store
|
457
|
+
.dashboards()
|
458
|
+
.map((dashboard) => (dashboard.id === dashboardId ? updatedDashboard : dashboard));
|
459
|
+
patchState(store, { dashboards: updatedDashboards });
|
460
|
+
},
|
461
|
+
// Handle configuration changes
|
462
|
+
async handleConfigChange(dashboard) {
|
463
|
+
// Save to service
|
464
|
+
await dashboardService.updateOne(dashboard.id, dashboardLayoutToModel(dashboard));
|
465
|
+
// Update local state
|
466
|
+
const updatedDashboards = store.dashboards().map((d) => (d.id === dashboard.id ? dashboard : d));
|
467
|
+
patchState(store, {
|
468
|
+
dashboards: updatedDashboards,
|
469
|
+
currentDashboardId: dashboard.id,
|
470
|
+
});
|
471
|
+
// Save current dashboard to settings
|
472
|
+
settingService.scope(AXPPlatformScope.User).set(AXPHomeDashboardSetting.CurrentDashboard, dashboard.id);
|
473
|
+
},
|
474
|
+
// Handle grid layout changes
|
475
|
+
async onGridChange(event) {
|
476
|
+
console.log('onGridChange', event);
|
477
|
+
if (!store.currentDashboard()) {
|
478
|
+
console.warn('No current dashboard for grid change');
|
479
|
+
return;
|
480
|
+
}
|
481
|
+
// Extract nodes from the event and remove the `element` property
|
482
|
+
const nodes = event.nodes.map(({ element, ...rest }) => rest);
|
483
|
+
// Update the current dashboard
|
484
|
+
const currentDashboard = store.currentDashboard();
|
485
|
+
const updatedWidgets = currentDashboard.widget.map((widget) => {
|
486
|
+
const updatedNode = nodes.find((node) => node.id === widget.config.id);
|
487
|
+
if (updatedNode) {
|
488
|
+
return {
|
489
|
+
...widget,
|
490
|
+
config: updatedNode,
|
491
|
+
};
|
492
|
+
}
|
493
|
+
return widget;
|
494
|
+
});
|
495
|
+
const updatedDashboard = {
|
496
|
+
...currentDashboard,
|
497
|
+
widget: updatedWidgets,
|
498
|
+
};
|
499
|
+
// Save to service
|
500
|
+
await dashboardService.updateOne(updatedDashboard.id, dashboardLayoutToModel(updatedDashboard));
|
501
|
+
// Update the dashboards
|
502
|
+
const updatedDashboards = store
|
503
|
+
.dashboards()
|
504
|
+
.map((dashboard) => (dashboard.id === updatedDashboard.id ? updatedDashboard : dashboard));
|
505
|
+
patchState(store, { dashboards: updatedDashboards });
|
506
|
+
},
|
507
|
+
// Handle widget configuration
|
508
|
+
async handlePopupConfiguration(widgetNode) {
|
509
|
+
if (!store.currentDashboard()) {
|
510
|
+
console.warn('No current dashboard selected');
|
511
|
+
return;
|
512
|
+
}
|
513
|
+
try {
|
514
|
+
const updatedNode = await dashboardPopup.handlePopupConfiguration(widgetNode);
|
515
|
+
if (!updatedNode) {
|
516
|
+
return;
|
517
|
+
}
|
518
|
+
// Update the current dashboard's widget with the new configuration
|
519
|
+
const currentDashboard = store.currentDashboard();
|
520
|
+
const updatedWidgets = currentDashboard.widget.map((widget) => {
|
521
|
+
if (widget.node?.name === widgetNode.name && widget.node?.path === widgetNode.path) {
|
522
|
+
return {
|
523
|
+
...widget,
|
524
|
+
node: updatedNode,
|
525
|
+
};
|
526
|
+
}
|
527
|
+
return widget;
|
528
|
+
});
|
529
|
+
const updatedDashboard = {
|
530
|
+
...currentDashboard,
|
531
|
+
widget: updatedWidgets,
|
532
|
+
};
|
533
|
+
// Save to service
|
534
|
+
await dashboardService.updateOne(updatedDashboard.id, dashboardLayoutToModel(updatedDashboard));
|
535
|
+
// Update the dashboards state
|
536
|
+
const updatedDashboards = store
|
537
|
+
.dashboards()
|
538
|
+
.map((dashboard) => (dashboard.id === updatedDashboard.id ? updatedDashboard : dashboard));
|
539
|
+
patchState(store, { dashboards: updatedDashboards });
|
540
|
+
}
|
541
|
+
catch (error) {
|
542
|
+
console.error('Error handling widget configuration:', error);
|
543
|
+
}
|
544
|
+
},
|
545
|
+
// Reload dashboards from service
|
546
|
+
async refreshDashboards() {
|
547
|
+
await loadDashboards();
|
548
|
+
},
|
549
|
+
};
|
550
|
+
}));
|
551
|
+
|
552
|
+
class AXPDashboardHomeComponent extends AXPBasePageComponent {
|
553
|
+
constructor() {
|
554
|
+
super(...arguments);
|
555
|
+
//#region ---------------- Services & Dependencies ----------------
|
556
|
+
this.rootConfig = RootConfig;
|
557
|
+
this.popupService = inject(AXPopupService);
|
558
|
+
this.dialogService = inject(AXDialogService);
|
559
|
+
this.store = inject(AXCDashboardStore);
|
560
|
+
this.router = inject(Router);
|
561
|
+
this.activatedRoute = inject(ActivatedRoute);
|
562
|
+
this.layoutService = inject(AXPLayoutThemeService);
|
563
|
+
//#endregion
|
564
|
+
//#region ---------------- View Properties ----------------
|
565
|
+
this.isEdited = signal(false);
|
566
|
+
this.context = signal({});
|
567
|
+
//#endregion
|
568
|
+
//#region ---------------- Effects ----------------
|
569
|
+
this.#loadingEffect = effect(() => {
|
570
|
+
const isLoading = false; // Since store doesn't have isLoading, we'll default to false
|
571
|
+
this.layoutService.setNavigationLoading(isLoading);
|
572
|
+
});
|
573
|
+
}
|
574
|
+
//#endregion
|
575
|
+
//#region ---------------- Effects ----------------
|
576
|
+
#loadingEffect;
|
577
|
+
//#endregion
|
578
|
+
//#region ---------------- Event Handlers ----------------
|
579
|
+
toggleEdit() {
|
580
|
+
this.isEdited.update((value) => !value);
|
581
|
+
}
|
582
|
+
async confirmWidgetDelete(dashboardId, widgetId) {
|
583
|
+
try {
|
584
|
+
const dialogResult = await this.dialogService.confirm(await this.translateService.translateAsync('workflow.warning'), await this.translateService.translateAsync('workflow.confirm-delete'), 'danger', 'horizontal');
|
585
|
+
if (dialogResult.result) {
|
586
|
+
this.store.removeWidget(dashboardId, widgetId);
|
587
|
+
}
|
588
|
+
}
|
589
|
+
catch (error) {
|
590
|
+
console.error('Error confirming widget deletion:', error);
|
591
|
+
}
|
592
|
+
}
|
593
|
+
//#endregion
|
594
|
+
getPageTitle() {
|
595
|
+
return this.store.currentDashboard()?.title || 'Dashboard';
|
596
|
+
}
|
597
|
+
async getPageDescription() {
|
598
|
+
return this.store.currentDashboard()?.description || '';
|
599
|
+
}
|
600
|
+
getTitleActions() {
|
601
|
+
return [
|
602
|
+
...this.store.dashboards().map((i) => ({
|
603
|
+
title: i.title,
|
604
|
+
command: { name: i.id, metadata: { isDashboard: true, dashboard: i } },
|
605
|
+
icon: i.id === this.store.currentDashboardId() ? 'fa-solid fa-check' : '',
|
606
|
+
})),
|
607
|
+
];
|
608
|
+
}
|
609
|
+
async getPrimaryMenuItems() {
|
610
|
+
const scope = this.rootConfig.config.i18n;
|
611
|
+
return [
|
612
|
+
{
|
613
|
+
title: 't("add-item")',
|
614
|
+
icon: 'fa-light fa-square-plus',
|
615
|
+
color: 'primary',
|
616
|
+
items: [
|
617
|
+
{
|
618
|
+
title: await this.translateService.translateAsync('dashboard', { scope: 'dashboard' }),
|
619
|
+
icon: 'fa-light fa-gauge-high',
|
620
|
+
break: true,
|
621
|
+
command: {
|
622
|
+
name: 'new-dashboard',
|
623
|
+
},
|
624
|
+
},
|
625
|
+
{
|
626
|
+
title: await this.translateService.translateAsync('widget', { scope: 'dashboard' }),
|
627
|
+
icon: 'fa-light fa-window-restore',
|
628
|
+
command: {
|
629
|
+
name: 'new-widget',
|
630
|
+
},
|
631
|
+
},
|
632
|
+
],
|
633
|
+
},
|
634
|
+
];
|
635
|
+
}
|
636
|
+
async getSecondaryMenuItems() {
|
637
|
+
const scope = this.rootConfig.config.i18n;
|
638
|
+
return [
|
639
|
+
{
|
640
|
+
title: await this.translateService.translateAsync('delete-current-dashboard', { scope: 'dashboard' }),
|
641
|
+
icon: 'fa-light fa-trash-can',
|
642
|
+
color: 'danger',
|
643
|
+
disabled: this.store.dashboards().length <= 1,
|
644
|
+
command: {
|
645
|
+
name: 'delete',
|
646
|
+
},
|
647
|
+
},
|
648
|
+
];
|
649
|
+
}
|
650
|
+
getPageBreadcrumbs() {
|
651
|
+
return [
|
652
|
+
{
|
653
|
+
title: this.translateService.translateSync('entity.home'),
|
654
|
+
icon: 'fa-solid fa-home ax-text-xs ax-me-2',
|
655
|
+
},
|
656
|
+
];
|
657
|
+
}
|
658
|
+
async execute(command) {
|
659
|
+
if (command.metadata?.['isDashboard']) {
|
660
|
+
this.store.handleConfigChange(command.metadata?.['dashboard']);
|
661
|
+
this.recompute();
|
662
|
+
}
|
663
|
+
else {
|
664
|
+
switch (command.name) {
|
665
|
+
case 'new-dashboard':
|
666
|
+
await this.store.addDashboard();
|
667
|
+
this.recompute();
|
668
|
+
break;
|
669
|
+
case 'new-widget':
|
670
|
+
await this.store.addWidget();
|
671
|
+
this.recompute();
|
672
|
+
break;
|
673
|
+
case 'delete':
|
674
|
+
await this.store.removeDashboard(this.store.currentDashboard()?.id);
|
675
|
+
this.recompute();
|
676
|
+
break;
|
677
|
+
}
|
678
|
+
}
|
679
|
+
}
|
680
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXPDashboardHomeComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
681
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.0.3", type: AXPDashboardHomeComponent, isStandalone: true, selector: "axp-dashboard-home", providers: [
|
682
|
+
AXPDesignerService,
|
683
|
+
AXCDashboardStore,
|
684
|
+
{
|
685
|
+
provide: AXPBasePage,
|
686
|
+
useExisting: AXPDashboardHomeComponent,
|
687
|
+
},
|
688
|
+
], usesInheritance: true, ngImport: i0, template: "<axp-page-layout *translate=\"let t\">\n <!-- Content Section -->\n\n <axp-page-content class=\"ax-relative\">\n <ax-grid-layout-container [options]=\"store.dashboardsOption()\" (onChange)=\"store.onGridChange($event)\">\n @for(widget of store.currentDashboard()?.widget; track widget.config.id) {\n <ax-grid-layout-widget [options]=\"widget.config\">\n <axc-dashboard-widget-wrapper\n [hasOptions]=\"widget.node?.options?.['hasOptions'] ?? true\"\n (onDelete)=\"confirmWidgetDelete(store.currentDashboard()?.id!, widget.config.id!)\"\n (onConfiguration)=\"store.handlePopupConfiguration(widget.node!)\"\n >\n @if(widget.node) {\n <axp-widgets-container [context]=\"context()\">\n <ng-container axp-widget-renderer [node]=\"widget.node\" [mode]=\"'view'\"></ng-container>\n </axp-widgets-container>\n }\n </axc-dashboard-widget-wrapper>\n </ax-grid-layout-widget>\n } @empty {\n <div class=\"ax-flex ax-flex-col ax-items-center ax-justify-center ax-h-full ax-bg-gray-50 ax-p-4\">\n <ax-icon icon=\"fa-light fa-shapes\" class=\"ax-text-4xl ax-text-gray-400 ax-mb-4\"></ax-icon>\n <h2 class=\"ax-text-xl ax-font-semibold ax-text-gray-700 ax-mb-2\">\n {{ t('no-widgets', { scope: 'dashboard' }) | async }}\n </h2>\n <p class=\"ax-text-gray-500 ax-text-center ax-mb-6\">\n {{ t('add-first-widget', { scope: 'dashboard' }) | async }}\n </p>\n </div>\n }\n </ax-grid-layout-container>\n </axp-page-content>\n</axp-page-layout>\n", styles: ["axp-dashboard-home{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-dashboard-home .placeholder-content{border-radius:.5rem!important;border-width:1px!important;border-style:dashed!important;--tw-border-opacity: 1 !important;border-color:rgba(var(--ax-sys-color-primary-500),var(--tw-border-opacity, 1))!important;background-color:rgba(var(--ax-sys-color-primary-lightest-surface),.5)!important}axp-dashboard-home ax-grid-layout-widget .grid-stack-item-content{border-style:none!important;--tw-shadow: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1) !important;--tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color) !important;box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)!important;background-color:rgb(var(--ax-sys-color-lightest-surface))!important;color:rgb(var(--ax-sys-color-on-lightest-surface))!important;border-color:rgb(var(--ax-sys-color-border-lightest-surface))!important}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "pipe", type: i5.AsyncPipe, name: "async" }, { kind: "ngmodule", type: AXPLayoutBuilderModule }, { kind: "component", type: i2$1.AXPWidgetContainerComponent, selector: "axp-widgets-container", inputs: ["context", "functions"], outputs: ["onContextChanged"] }, { kind: "directive", type: i2$1.AXPWidgetRendererDirective, selector: "[axp-widget-renderer]", inputs: ["parentNode", "index", "mode", "node"], exportAs: ["widgetRenderer"] }, { kind: "ngmodule", type: AXButtonModule }, { kind: "ngmodule", type: AXButtonGroupModule }, { kind: "ngmodule", type: AXGridLayoutBuilderModule }, { kind: "component", type: i3$2.AXGridLayoutContainerComponent, selector: "ax-grid-layout-container", inputs: ["options", "isEmpty"], outputs: ["onAdded", "onRemoved", "onWidgetChange", "onChange", "isLayoutRendered", "isEmptyChange"] }, { kind: "component", type: i3$2.AXGridLayoutWidgetComponent, selector: "ax-grid-layout-widget", inputs: ["options"] }, { kind: "component", type: AXPPageLayoutComponent, selector: "axp-page-layout" }, { kind: "component", type: AXPThemeLayoutBlockComponent, selector: " axp-page-content, axp-page-footer, axp-page-header, axp-page-toolbar, axp-layout-content, axp-layout-page-content, axp-layout-sections, axp-layout-body, axp-layout-container, axp-layout-page-body, axp-layout-prefix, axp-layout-suffix, axp-layout-title-bar, axp-layout-title, axp-layout-title-actions, axp-layout-nav-button, axp-layout-description, axp-layout-breadcrumbs, axp-layout-list-action, " }, { kind: "ngmodule", type: AXDropdownButtonModule }, { kind: "ngmodule", type: AXDropdownModule }, { kind: "ngmodule", type: AXDecoratorModule }, { kind: "component", type: i2.AXDecoratorIconComponent, selector: "ax-icon", inputs: ["icon"] }, { kind: "ngmodule", type: AXTranslationModule }, { kind: "directive", type: i4.AXTranslatorDirective, selector: "[translate]" }, { kind: "ngmodule", type: AXBreadcrumbsModule }, { kind: "component", type: AXCDashboardWidgetWrapperComponent, selector: "axc-dashboard-widget-wrapper", inputs: ["hasOptions"], outputs: ["onDelete", "onConfiguration"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
689
|
+
}
|
690
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXPDashboardHomeComponent, decorators: [{
|
691
|
+
type: Component,
|
692
|
+
args: [{ selector: 'axp-dashboard-home', standalone: true, imports: [
|
693
|
+
CommonModule,
|
694
|
+
AXPLayoutBuilderModule,
|
695
|
+
AXButtonModule,
|
696
|
+
AXButtonGroupModule,
|
697
|
+
AXGridLayoutBuilderModule,
|
698
|
+
AXPPageLayoutComponent,
|
699
|
+
AXPThemeLayoutBlockComponent,
|
700
|
+
AXDropdownButtonModule,
|
701
|
+
AXDropdownModule,
|
702
|
+
AXDecoratorModule,
|
703
|
+
AXTranslationModule,
|
704
|
+
AXBreadcrumbsModule,
|
705
|
+
AXCDashboardWidgetWrapperComponent,
|
706
|
+
], changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, providers: [
|
707
|
+
AXPDesignerService,
|
708
|
+
AXCDashboardStore,
|
709
|
+
{
|
710
|
+
provide: AXPBasePage,
|
711
|
+
useExisting: AXPDashboardHomeComponent,
|
712
|
+
},
|
713
|
+
], template: "<axp-page-layout *translate=\"let t\">\n <!-- Content Section -->\n\n <axp-page-content class=\"ax-relative\">\n <ax-grid-layout-container [options]=\"store.dashboardsOption()\" (onChange)=\"store.onGridChange($event)\">\n @for(widget of store.currentDashboard()?.widget; track widget.config.id) {\n <ax-grid-layout-widget [options]=\"widget.config\">\n <axc-dashboard-widget-wrapper\n [hasOptions]=\"widget.node?.options?.['hasOptions'] ?? true\"\n (onDelete)=\"confirmWidgetDelete(store.currentDashboard()?.id!, widget.config.id!)\"\n (onConfiguration)=\"store.handlePopupConfiguration(widget.node!)\"\n >\n @if(widget.node) {\n <axp-widgets-container [context]=\"context()\">\n <ng-container axp-widget-renderer [node]=\"widget.node\" [mode]=\"'view'\"></ng-container>\n </axp-widgets-container>\n }\n </axc-dashboard-widget-wrapper>\n </ax-grid-layout-widget>\n } @empty {\n <div class=\"ax-flex ax-flex-col ax-items-center ax-justify-center ax-h-full ax-bg-gray-50 ax-p-4\">\n <ax-icon icon=\"fa-light fa-shapes\" class=\"ax-text-4xl ax-text-gray-400 ax-mb-4\"></ax-icon>\n <h2 class=\"ax-text-xl ax-font-semibold ax-text-gray-700 ax-mb-2\">\n {{ t('no-widgets', { scope: 'dashboard' }) | async }}\n </h2>\n <p class=\"ax-text-gray-500 ax-text-center ax-mb-6\">\n {{ t('add-first-widget', { scope: 'dashboard' }) | async }}\n </p>\n </div>\n }\n </ax-grid-layout-container>\n </axp-page-content>\n</axp-page-layout>\n", styles: ["axp-dashboard-home{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-dashboard-home .placeholder-content{border-radius:.5rem!important;border-width:1px!important;border-style:dashed!important;--tw-border-opacity: 1 !important;border-color:rgba(var(--ax-sys-color-primary-500),var(--tw-border-opacity, 1))!important;background-color:rgba(var(--ax-sys-color-primary-lightest-surface),.5)!important}axp-dashboard-home ax-grid-layout-widget .grid-stack-item-content{border-style:none!important;--tw-shadow: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1) !important;--tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color) !important;box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)!important;background-color:rgb(var(--ax-sys-color-lightest-surface))!important;color:rgb(var(--ax-sys-color-on-lightest-surface))!important;border-color:rgb(var(--ax-sys-color-border-lightest-surface))!important}\n"] }]
|
714
|
+
}] });
|
715
|
+
|
716
|
+
export { AXCDashboardStore, AXPDashboardHomeComponent };
|
717
|
+
//# sourceMappingURL=acorex-modules-common-index-rvP9ISgL.mjs.map
|