@acorex/modules 19.2.5 → 19.2.7
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/store/auth.effects.d.ts +2 -2
- package/fesm2022/{acorex-modules-application-management-module-designer.component-kMtkkid-.mjs → acorex-modules-application-management-module-designer.component-DPJ4qpK3.mjs} +4 -4
- package/fesm2022/acorex-modules-application-management-module-designer.component-DPJ4qpK3.mjs.map +1 -0
- package/fesm2022/acorex-modules-application-management.mjs +3 -3
- package/fesm2022/acorex-modules-application-management.mjs.map +1 -1
- package/fesm2022/{acorex-modules-auth-acorex-modules-auth-CcRRSTGN.mjs → acorex-modules-auth-acorex-modules-auth-HwJJs-3A.mjs} +24 -24
- package/fesm2022/acorex-modules-auth-acorex-modules-auth-HwJJs-3A.mjs.map +1 -0
- package/fesm2022/acorex-modules-auth-app-chooser.component-BvxMkXPp.mjs +64 -0
- package/fesm2022/acorex-modules-auth-app-chooser.component-BvxMkXPp.mjs.map +1 -0
- package/fesm2022/{acorex-modules-auth-login.module-ua9uEgUG.mjs → acorex-modules-auth-login.module-CDvLUxls.mjs} +4 -4
- package/fesm2022/{acorex-modules-auth-login.module-ua9uEgUG.mjs.map → acorex-modules-auth-login.module-CDvLUxls.mjs.map} +1 -1
- package/fesm2022/acorex-modules-auth-master.layout-CnKBnl8W.mjs +23 -0
- package/fesm2022/acorex-modules-auth-master.layout-CnKBnl8W.mjs.map +1 -0
- package/fesm2022/{acorex-modules-auth-password.component-BVoPZUG9.mjs → acorex-modules-auth-password.component-1FnIjiZ8.mjs} +2 -2
- package/fesm2022/{acorex-modules-auth-password.component-BVoPZUG9.mjs.map → acorex-modules-auth-password.component-1FnIjiZ8.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-auth-password.component-CIwOjQRh.mjs → acorex-modules-auth-password.component-C16jeHuJ.mjs} +4 -4
- package/fesm2022/acorex-modules-auth-password.component-C16jeHuJ.mjs.map +1 -0
- package/fesm2022/{acorex-modules-auth-routes-hR3jePok.mjs → acorex-modules-auth-routes-ZDDUhAWd.mjs} +2 -2
- package/fesm2022/{acorex-modules-auth-routes-hR3jePok.mjs.map → acorex-modules-auth-routes-ZDDUhAWd.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-auth-setting.provider-GJeEbIRd.mjs → acorex-modules-auth-setting.provider-DDl3OHw6.mjs} +2 -2
- package/fesm2022/{acorex-modules-auth-setting.provider-GJeEbIRd.mjs.map → acorex-modules-auth-setting.provider-DDl3OHw6.mjs.map} +1 -1
- package/fesm2022/acorex-modules-auth-tenant-chooser.component-CKsbiOUX.mjs +83 -0
- package/fesm2022/acorex-modules-auth-tenant-chooser.component-CKsbiOUX.mjs.map +1 -0
- package/fesm2022/{acorex-modules-auth-two-factor.module-CKe_H_-u.mjs → acorex-modules-auth-two-factor.module-C32MVGby.mjs} +2 -2
- package/fesm2022/{acorex-modules-auth-two-factor.module-CKe_H_-u.mjs.map → acorex-modules-auth-two-factor.module-C32MVGby.mjs.map} +1 -1
- package/fesm2022/acorex-modules-auth.mjs +1 -1
- package/fesm2022/acorex-modules-conversation.mjs +4 -4
- package/fesm2022/acorex-modules-conversation.mjs.map +1 -1
- package/fesm2022/acorex-modules-form-template-management-acorex-modules-form-template-management-DGGKoVbL.mjs +908 -0
- package/fesm2022/acorex-modules-form-template-management-acorex-modules-form-template-management-DGGKoVbL.mjs.map +1 -0
- package/fesm2022/{acorex-modules-form-template-management-category.entity-BcfMw_wb.mjs → acorex-modules-form-template-management-category.entity-B1X2QyYV.mjs} +2 -2
- package/fesm2022/{acorex-modules-form-template-management-category.entity-BcfMw_wb.mjs.map → acorex-modules-form-template-management-category.entity-B1X2QyYV.mjs.map} +1 -1
- package/fesm2022/acorex-modules-form-template-management-designer.page-BLbPLLdP.mjs.map +1 -1
- package/fesm2022/{acorex-modules-form-template-management-setting.provider-ceq0ZtxA.mjs → acorex-modules-form-template-management-setting.provider-D-HyCbH7.mjs} +2 -2
- package/fesm2022/{acorex-modules-form-template-management-setting.provider-ceq0ZtxA.mjs.map → acorex-modules-form-template-management-setting.provider-D-HyCbH7.mjs.map} +1 -1
- package/fesm2022/acorex-modules-form-template-management-template-picker.component-xiRKc4FF.mjs +126 -0
- package/fesm2022/acorex-modules-form-template-management-template-picker.component-xiRKc4FF.mjs.map +1 -0
- package/fesm2022/{acorex-modules-form-template-management-template-widget-edit.component-CVyFN7D9.mjs → acorex-modules-form-template-management-template-widget-edit.component-CyZLM6M9.mjs} +2 -2
- package/fesm2022/acorex-modules-form-template-management-template-widget-edit.component-CyZLM6M9.mjs.map +1 -0
- package/fesm2022/{acorex-modules-form-template-management-template.entity-BpApQcvG.mjs → acorex-modules-form-template-management-template.entity-DXIhxJeU.mjs} +2 -2
- package/fesm2022/{acorex-modules-form-template-management-template.entity-BpApQcvG.mjs.map → acorex-modules-form-template-management-template.entity-DXIhxJeU.mjs.map} +1 -1
- package/fesm2022/acorex-modules-form-template-management.mjs +1 -907
- package/fesm2022/acorex-modules-form-template-management.mjs.map +1 -1
- package/fesm2022/acorex-modules-notification-management.mjs +263 -9
- package/fesm2022/acorex-modules-notification-management.mjs.map +1 -1
- package/fesm2022/acorex-modules-organization-management-add-item.component-D0tN7Se4.mjs +83 -0
- package/fesm2022/acorex-modules-organization-management-add-item.component-D0tN7Se4.mjs.map +1 -0
- package/fesm2022/{acorex-modules-organization-managment-branch.entity-kuZxLStS.mjs → acorex-modules-organization-management-branch.entity-CbmnpHl2.mjs} +2 -2
- package/fesm2022/acorex-modules-organization-management-branch.entity-CbmnpHl2.mjs.map +1 -0
- package/fesm2022/{acorex-modules-organization-managment-chart.entity-BqUE8fbV.mjs → acorex-modules-organization-management-chart.entity-Bk4WgsYr.mjs} +2 -2
- package/fesm2022/acorex-modules-organization-management-chart.entity-Bk4WgsYr.mjs.map +1 -0
- package/fesm2022/{acorex-modules-organization-managment-company.entity-DJt8tCqO.mjs → acorex-modules-organization-management-company.entity-d7GaCVei.mjs} +2 -2
- package/fesm2022/acorex-modules-organization-management-company.entity-d7GaCVei.mjs.map +1 -0
- package/fesm2022/{acorex-modules-organization-managment-department.entity-C1PxLx6p.mjs → acorex-modules-organization-management-department.entity-Dl7y4Rva.mjs} +2 -2
- package/fesm2022/acorex-modules-organization-management-department.entity-Dl7y4Rva.mjs.map +1 -0
- package/fesm2022/{acorex-modules-organization-managment-division.entity-DHVnrP38.mjs → acorex-modules-organization-management-division.entity-Ckmu2Tj9.mjs} +2 -2
- package/fesm2022/acorex-modules-organization-management-division.entity-Ckmu2Tj9.mjs.map +1 -0
- package/fesm2022/{acorex-modules-organization-managment-employee.entity-D4BSxGAW.mjs → acorex-modules-organization-management-employee.entity-PwlBjkYo.mjs} +2 -2
- package/fesm2022/acorex-modules-organization-management-employee.entity-PwlBjkYo.mjs.map +1 -0
- package/fesm2022/{acorex-modules-organization-managment-employment-type.entity-Cgbezwio.mjs → acorex-modules-organization-management-employment-type.entity-9aOaYT_-.mjs} +2 -2
- package/fesm2022/acorex-modules-organization-management-employment-type.entity-9aOaYT_-.mjs.map +1 -0
- package/fesm2022/acorex-modules-organization-management-org-chart-configuration.page-BzjTyYyS.mjs +92 -0
- package/fesm2022/acorex-modules-organization-management-org-chart-configuration.page-BzjTyYyS.mjs.map +1 -0
- package/fesm2022/acorex-modules-organization-management-org-chart-configuration.service-DObuNZKQ.mjs +145 -0
- package/fesm2022/acorex-modules-organization-management-org-chart-configuration.service-DObuNZKQ.mjs.map +1 -0
- package/fesm2022/acorex-modules-organization-management-org-chart.page-Cz4ENQRa.mjs +868 -0
- package/fesm2022/acorex-modules-organization-management-org-chart.page-Cz4ENQRa.mjs.map +1 -0
- package/fesm2022/{acorex-modules-organization-managment-position.entity-Bbb5KAkm.mjs → acorex-modules-organization-management-position.entity-DDkiBefn.mjs} +2 -2
- package/fesm2022/acorex-modules-organization-management-position.entity-DDkiBefn.mjs.map +1 -0
- package/fesm2022/{acorex-modules-organization-managment-setting.keys-CF6Giykz.mjs → acorex-modules-organization-management-setting.keys-CF6Giykz.mjs} +1 -1
- package/fesm2022/acorex-modules-organization-management-setting.keys-CF6Giykz.mjs.map +1 -0
- package/fesm2022/{acorex-modules-organization-managment-setting.provider-nKs53GcA.mjs → acorex-modules-organization-management-setting.provider-eLv_qnmE.mjs} +3 -3
- package/fesm2022/acorex-modules-organization-management-setting.provider-eLv_qnmE.mjs.map +1 -0
- package/fesm2022/{acorex-modules-organization-managment.mjs → acorex-modules-organization-management.mjs} +66 -22
- package/fesm2022/acorex-modules-organization-management.mjs.map +1 -0
- package/fesm2022/acorex-modules-platform-management.mjs +1455 -155
- package/fesm2022/acorex-modules-platform-management.mjs.map +1 -1
- package/fesm2022/acorex-modules-security-management.mjs +12 -1
- package/fesm2022/acorex-modules-security-management.mjs.map +1 -1
- package/form-template-management/index.d.ts +0 -1
- package/form-template-management/lib/features/designer/index.d.ts +5 -0
- package/form-template-management/lib/{services → features/designer}/template.provider.d.ts +1 -1
- package/form-template-management/lib/features/index.d.ts +1 -0
- package/notification-management/lib/entities/channel/channel.types.d.ts +14 -2
- package/organization-management/README.md +3 -0
- package/organization-management/index.d.ts +4 -0
- package/{organization-managment → organization-management}/lib/entities/chart/chart.types.d.ts +10 -5
- package/organization-management/lib/features/index.d.ts +1 -0
- package/organization-management/lib/features/organization-chart/add-item/add-item.component.d.ts +21 -0
- package/organization-management/lib/features/organization-chart/index.d.ts +1 -0
- package/{organization-managment → organization-management}/lib/features/organization-chart/org-chart-configuration.page.d.ts +4 -4
- package/organization-management/lib/features/organization-chart/org-chart-configuration.service.d.ts +25 -0
- package/organization-management/lib/features/organization-chart/org-chart-print.service.d.ts +45 -0
- package/{organization-managment → organization-management}/lib/features/organization-chart/org-chart.page.d.ts +79 -8
- package/organization-management/lib/features/organization-chart/org-chart.service.d.ts +63 -0
- package/organization-management/lib/features/organization-chart/org-chart.type.d.ts +46 -0
- package/{organization-managment/lib/organization-managment.module.d.ts → organization-management/lib/organization-management.module.d.ts} +4 -4
- package/package.json +8 -8
- package/platform-management/lib/const.d.ts +12 -0
- package/platform-management/lib/entities/app-term/components/notify-app/notify-app.component.d.ts +1 -2
- package/platform-management/lib/entities/data-source/coulmn-def.widget.d.ts +56 -0
- package/platform-management/lib/entities/data-source/data-source.entity.d.ts +3 -0
- package/platform-management/lib/entities/data-source/data-source.service.d.ts +10 -0
- package/platform-management/lib/entities/data-source/data-source.types.d.ts +7 -0
- package/platform-management/lib/entities/data-source/datasource-provider.dynamic.d.ts +6 -0
- package/platform-management/lib/entities/data-source/index.d.ts +3 -0
- package/platform-management/lib/entities/index.d.ts +2 -0
- package/platform-management/lib/entities/promotion/components/index.d.ts +1 -0
- package/platform-management/lib/entities/promotion/components/promotion-slot/promotion-slot.component.d.ts +13 -0
- package/platform-management/lib/entities/promotion/index.d.ts +4 -0
- package/platform-management/lib/entities/promotion/promotion.entity.d.ts +3 -0
- package/platform-management/lib/entities/promotion/promotion.service.d.ts +10 -0
- package/platform-management/lib/entities/promotion/promotion.types.d.ts +15 -0
- package/platform-management/lib/platform-management.module.d.ts +2 -1
- package/security-management/index.d.ts +1 -0
- package/security-management/lib/menu.keys.d.ts +5 -0
- package/fesm2022/acorex-modules-application-management-module-designer.component-kMtkkid-.mjs.map +0 -1
- package/fesm2022/acorex-modules-auth-acorex-modules-auth-CcRRSTGN.mjs.map +0 -1
- package/fesm2022/acorex-modules-auth-app-chooser.component-DuRnQda8.mjs +0 -64
- package/fesm2022/acorex-modules-auth-app-chooser.component-DuRnQda8.mjs.map +0 -1
- package/fesm2022/acorex-modules-auth-master.layout-KNzdjwP6.mjs +0 -23
- package/fesm2022/acorex-modules-auth-master.layout-KNzdjwP6.mjs.map +0 -1
- package/fesm2022/acorex-modules-auth-password.component-CIwOjQRh.mjs.map +0 -1
- package/fesm2022/acorex-modules-auth-tenant-chooser.component-Cx3fK__H.mjs +0 -83
- package/fesm2022/acorex-modules-auth-tenant-chooser.component-Cx3fK__H.mjs.map +0 -1
- package/fesm2022/acorex-modules-form-template-management-template-picker.component-CG-_1tWi.mjs +0 -126
- package/fesm2022/acorex-modules-form-template-management-template-picker.component-CG-_1tWi.mjs.map +0 -1
- package/fesm2022/acorex-modules-form-template-management-template-widget-edit.component-CVyFN7D9.mjs.map +0 -1
- package/fesm2022/acorex-modules-organization-managment-branch.entity-kuZxLStS.mjs.map +0 -1
- package/fesm2022/acorex-modules-organization-managment-chart.entity-BqUE8fbV.mjs.map +0 -1
- package/fesm2022/acorex-modules-organization-managment-company.entity-DJt8tCqO.mjs.map +0 -1
- package/fesm2022/acorex-modules-organization-managment-department.entity-C1PxLx6p.mjs.map +0 -1
- package/fesm2022/acorex-modules-organization-managment-division.entity-DHVnrP38.mjs.map +0 -1
- package/fesm2022/acorex-modules-organization-managment-employee.entity-D4BSxGAW.mjs.map +0 -1
- package/fesm2022/acorex-modules-organization-managment-employment-type.entity-Cgbezwio.mjs.map +0 -1
- package/fesm2022/acorex-modules-organization-managment-org-chart-configuration.page-Dc6c7GmB.mjs +0 -310
- package/fesm2022/acorex-modules-organization-managment-org-chart-configuration.page-Dc6c7GmB.mjs.map +0 -1
- package/fesm2022/acorex-modules-organization-managment-org-chart.page-CTHNSn2n.mjs +0 -505
- package/fesm2022/acorex-modules-organization-managment-org-chart.page-CTHNSn2n.mjs.map +0 -1
- package/fesm2022/acorex-modules-organization-managment-position.entity-Bbb5KAkm.mjs.map +0 -1
- package/fesm2022/acorex-modules-organization-managment-setting.keys-CF6Giykz.mjs.map +0 -1
- package/fesm2022/acorex-modules-organization-managment-setting.provider-nKs53GcA.mjs.map +0 -1
- package/fesm2022/acorex-modules-organization-managment.mjs.map +0 -1
- package/organization-managment/README.md +0 -3
- package/organization-managment/index.d.ts +0 -3
- package/organization-managment/lib/features/organization-chart/org-chart-print.service.d.ts +0 -22
- package/organization-managment/lib/features/organization-chart/org-chart.service.d.ts +0 -35
- package/organization-managment/lib/features/organization-chart/org-chart.type.d.ts +0 -25
- /package/form-template-management/lib/{services → features/designer}/designer-connector.service.d.ts +0 -0
- /package/form-template-management/lib/{pages → features}/designer/designer.page.d.ts +0 -0
- /package/form-template-management/lib/{components → features/designer}/widgets/template/index.d.ts +0 -0
- /package/form-template-management/lib/{components → features/designer}/widgets/template/template-widget-designer.component.d.ts +0 -0
- /package/form-template-management/lib/{components → features/designer}/widgets/template/template-widget-edit.component.d.ts +0 -0
- /package/form-template-management/lib/{components → features/designer}/widgets/template/template-widget-view.component.d.ts +0 -0
- /package/form-template-management/lib/{components → features/designer}/widgets/template/template-widget.config.d.ts +0 -0
- /package/form-template-management/lib/{components → features/designer}/widgets/template-designer/index.d.ts +0 -0
- /package/form-template-management/lib/{components → features/designer}/widgets/template-designer/template-designer-widget-view.component.d.ts +0 -0
- /package/form-template-management/lib/{components → features/designer}/widgets/template-designer/template-designer-widget.config.d.ts +0 -0
- /package/form-template-management/lib/{components → features/designer}/widgets/template-picker/template-picker.component.d.ts +0 -0
- /package/form-template-management/lib/{components → features/designer}/widgets/template-picker/template.provider.d.ts +0 -0
- /package/form-template-management/lib/{workflows → features/designer/workflows}/create-template.workflow.d.ts +0 -0
- /package/form-template-management/lib/{workflows → features/designer/workflows}/design-template.workflow.d.ts +0 -0
- /package/{organization-managment → organization-management}/lib/const.d.ts +0 -0
- /package/{organization-managment → organization-management}/lib/entities/branch/branch.entity.d.ts +0 -0
- /package/{organization-managment → organization-management}/lib/entities/branch/branch.module.d.ts +0 -0
- /package/{organization-managment → organization-management}/lib/entities/branch/branch.service.d.ts +0 -0
- /package/{organization-managment → organization-management}/lib/entities/branch/branch.types.d.ts +0 -0
- /package/{organization-managment → organization-management}/lib/entities/branch/index.d.ts +0 -0
- /package/{organization-managment → organization-management}/lib/entities/chart/chart.entity.d.ts +0 -0
- /package/{organization-managment → organization-management}/lib/entities/chart/chart.module.d.ts +0 -0
- /package/{organization-managment → organization-management}/lib/entities/chart/chart.service.d.ts +0 -0
- /package/{organization-managment → organization-management}/lib/entities/chart/index.d.ts +0 -0
- /package/{organization-managment → organization-management}/lib/entities/company/company.entity.d.ts +0 -0
- /package/{organization-managment → organization-management}/lib/entities/company/company.module.d.ts +0 -0
- /package/{organization-managment → organization-management}/lib/entities/company/company.service.d.ts +0 -0
- /package/{organization-managment → organization-management}/lib/entities/company/company.types.d.ts +0 -0
- /package/{organization-managment → organization-management}/lib/entities/company/index.d.ts +0 -0
- /package/{organization-managment → organization-management}/lib/entities/department/department.entity.d.ts +0 -0
- /package/{organization-managment → organization-management}/lib/entities/department/department.module.d.ts +0 -0
- /package/{organization-managment → organization-management}/lib/entities/department/department.service.d.ts +0 -0
- /package/{organization-managment → organization-management}/lib/entities/department/department.types.d.ts +0 -0
- /package/{organization-managment → organization-management}/lib/entities/department/index.d.ts +0 -0
- /package/{organization-managment → organization-management}/lib/entities/division/division.entity.d.ts +0 -0
- /package/{organization-managment → organization-management}/lib/entities/division/division.module.d.ts +0 -0
- /package/{organization-managment → organization-management}/lib/entities/division/division.service.d.ts +0 -0
- /package/{organization-managment → organization-management}/lib/entities/division/division.types.d.ts +0 -0
- /package/{organization-managment → organization-management}/lib/entities/division/index.d.ts +0 -0
- /package/{organization-managment → organization-management}/lib/entities/employee/employee.entity.d.ts +0 -0
- /package/{organization-managment → organization-management}/lib/entities/employee/employee.module.d.ts +0 -0
- /package/{organization-managment → organization-management}/lib/entities/employee/employee.service.d.ts +0 -0
- /package/{organization-managment → organization-management}/lib/entities/employee/employee.types.d.ts +0 -0
- /package/{organization-managment → organization-management}/lib/entities/employee/index.d.ts +0 -0
- /package/{organization-managment → organization-management}/lib/entities/employment-type/employment-type.entity.d.ts +0 -0
- /package/{organization-managment → organization-management}/lib/entities/employment-type/employment-type.module.d.ts +0 -0
- /package/{organization-managment → organization-management}/lib/entities/employment-type/employment-type.service.d.ts +0 -0
- /package/{organization-managment → organization-management}/lib/entities/employment-type/employment-type.types.d.ts +0 -0
- /package/{organization-managment → organization-management}/lib/entities/employment-type/index.d.ts +0 -0
- /package/{organization-managment → organization-management}/lib/entities/index.d.ts +0 -0
- /package/{organization-managment → organization-management}/lib/entities/position/index.d.ts +0 -0
- /package/{organization-managment → organization-management}/lib/entities/position/position.entity.d.ts +0 -0
- /package/{organization-managment → organization-management}/lib/entities/position/position.module.d.ts +0 -0
- /package/{organization-managment → organization-management}/lib/entities/position/position.service.d.ts +0 -0
- /package/{organization-managment → organization-management}/lib/entities/position/position.types.d.ts +0 -0
- /package/{organization-managment → organization-management}/lib/entity.provider.d.ts +0 -0
- /package/{organization-managment → organization-management}/lib/menu.provider.d.ts +0 -0
- /package/{organization-managment → organization-management}/lib/setting.keys.d.ts +0 -0
- /package/{organization-managment → organization-management}/lib/setting.provider.d.ts +0 -0
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"acorex-modules-organization-management-org-chart.page-Cz4ENQRa.mjs","sources":["../../../../libs/modules/organization-management/src/lib/features/organization-chart/org-chart-print.service.ts","../../../../libs/modules/organization-management/src/lib/features/organization-chart/org-chart.service.ts","../../../../libs/modules/organization-management/src/lib/features/organization-chart/org-chart.page.ts","../../../../libs/modules/organization-management/src/lib/features/organization-chart/org-chart.page.html"],"sourcesContent":["import { AXStyleColorType } from '@acorex/components/common';\nimport { AXDialogRef, AXLoadingDialogService } from '@acorex/components/loading-dialog';\nimport { AXTranslationService } from '@acorex/core/translation';\nimport { AXPExportService } from '@acorex/platform/common';\nimport { inject, Injectable } from '@angular/core';\n\n/**\n * Service for printing organization charts.\n */\n@Injectable()\nexport class AXMOrgChartPrintService {\n private loadingDialog = inject(AXLoadingDialogService);\n private exportService = inject(AXPExportService);\n private translationService = inject(AXTranslationService);\n\n /**\n * Prints the organization chart.\n * @param element - The HTMLElement representing the chart to be printed.\n * @returns A promise that resolves when the print process is complete.\n */\n async printChart(element: HTMLElement): Promise<void> {\n const d = this.loadingDialog.show({\n title: 'Printing Organization Chart...',\n mode: 'determinate',\n progressColor: 'primary',\n progressValue: 0,\n status: '0/10',\n text: 'Initializing print process...',\n buttons: [\n {\n text: 'Cancel',\n color: 'danger',\n onClick: () => {\n d.close();\n },\n },\n ],\n });\n\n try {\n await this.HandleStep(d, await this.translateStatements('preparing-document'), 10, '1/10');\n const chartElement = element;\n const { originalStyles, modifiedStyles } = this.expandChart(chartElement);\n\n await this.HandleStep(d, await this.translateStatements('rendering-chart-image'), 25, '2.5/10');\n const canvasBlob = await this.exportService.generateBlobFromElement(chartElement, {\n popup: true,\n filter: (node: Node) => {\n if (node instanceof Element && node.classList.contains('--toggle')) {\n return false;\n }\n return true;\n },\n bgcolor: 'transparent',\n scale: 2,\n quality: 1,\n height: Number.parseInt(modifiedStyles.modifiedHeight),\n width: Number.parseInt(modifiedStyles.modifiedWidth),\n });\n\n await this.HandleStep(d, await this.translateStatements('finalizing-image-processing'), 50, '5/10');\n this.restoreChartStyles(chartElement, originalStyles);\n\n await this.HandleStep(d, await this.translateStatements('downloading-image'), 75, '7.5/10');\n this.exportService.download(canvasBlob, 'org-chart.png');\n\n await this.HandleStep(d, await this.translateStatements('process-complete'), 100, '10/10');\n\n setTimeout(() => d.close(), 1500);\n } catch (err) {\n console.error('Error capturing chart:', err);\n await this.HandleStep(\n d,\n await this.translateStatements('failed-to-generate-chart-image'),\n 100,\n 'Error',\n 'danger'\n );\n d.close();\n }\n }\n\n /**\n * Expands the chart temporarily to capture the full view.\n * @param chartElement - The HTMLElement representing the chart.\n * @returns An object containing the original and modified styles of the chart.\n */\n private expandChart(chartElement: HTMLElement): {\n originalStyles: {\n originalOverflow: string;\n originalWidth: string;\n originalHeight: string;\n };\n modifiedStyles: {\n modifiedOverflow: string;\n modifiedWidth: string;\n modifiedHeight: string;\n };\n } {\n const originalStyles = {\n originalOverflow: chartElement.style.overflow,\n originalWidth: chartElement.style.width,\n originalHeight: chartElement.style.height,\n };\n\n const modifiedStyles = {\n modifiedOverflow: 'visible',\n modifiedWidth: `${chartElement.scrollWidth}px`,\n modifiedHeight: `${chartElement.scrollHeight}px`,\n };\n\n chartElement.style.overflow = modifiedStyles.modifiedOverflow;\n chartElement.style.width = modifiedStyles.modifiedWidth;\n chartElement.style.height = modifiedStyles.modifiedHeight;\n\n return { originalStyles, modifiedStyles };\n }\n\n /**\n * Restores chart styles after capturing.\n * @param chartElement - The HTMLElement representing the chart.\n * @param originalStyles - The original styles to be restored.\n */\n private restoreChartStyles(\n chartElement: HTMLElement,\n originalStyles: { originalOverflow: string; originalWidth: string; originalHeight: string }\n ): void {\n chartElement.style.overflow = originalStyles.originalOverflow;\n chartElement.style.width = originalStyles.originalWidth;\n chartElement.style.height = originalStyles.originalHeight;\n }\n\n /**\n * Handles updating the progress dialog step.\n * @param dialog - The dialog reference.\n * @param text - The text to display in the dialog.\n * @param progress - The progress value to set.\n * @param status - The status to display.\n * @param color - The color of the progress bar.\n * @returns A promise that resolves when the dialog is updated.\n */\n private async HandleStep(\n dialog: AXDialogRef,\n text: string,\n progress: number,\n status: string,\n color: AXStyleColorType = 'primary'\n ): Promise<void> {\n return new Promise((resolve) => {\n dialog.setProgressColor(color);\n dialog.setProgressText(text);\n dialog.setProgressValue(progress);\n dialog.setProgressStatus(status);\n resolve();\n });\n }\n\n /**\n * Translates a statement using the translation service.\n * @param key - The translation key.\n * @returns A promise that resolves to the translated string.\n */\n private async translateStatements(key: string): Promise<string> {\n return (await this.translationService.translateAsync(key, { scope: 'organization-management' })) + '...';\n }\n}\n","import { computed, inject, Injectable, signal } from '@angular/core';\nimport {\n AXMOrganizationManagementDepartmentEntityService,\n AXMOrganizationManagementBranchEntityService,\n AXMOrganizationManagementEmployeeEntityService,\n AXMOrganizationManagementDivisionEntityService,\n AXMOrganizationManagementPositionEntityService,\n AXMOrganizationManagementChartEntityService\n} from '../../entities';\nimport { AXPDataGenerator, AXPPagedListResult, AXPQueryRequest } from '@acorex/platform/common';\nimport { AXPSessionService } from '@acorex/platform/auth';\nimport { AXMOrgChartConfigService } from './org-chart-configuration.service';\nimport { AXMenuItem } from '@acorex/components/menu';\nimport { AXMOrganizationNode, AXMOrganizationNodeType, AXMOrganizationNodeTypeCategory, AXM_ORG_CHART_NODE_TYPE_ENTITY_MAPPINGS } from './org-chart.type';\nimport get from 'lodash-es/get';\nimport { cloneDeep } from 'lodash-es';\nimport { AXPopupService } from '@acorex/components/popup';\nimport { AXPLayoutThemeService } from '@acorex/platform/themes/shared';\nimport { AXDataSourceQuery } from '@acorex/components/common';\n\n\n@Injectable()\nexport class AXMOrgChartService {\n\n private departmentService = inject(AXMOrganizationManagementDepartmentEntityService);\n private divisionService = inject(AXMOrganizationManagementDivisionEntityService);\n private branchService = inject(AXMOrganizationManagementBranchEntityService);\n private employmentService = inject(AXMOrganizationManagementEmployeeEntityService);\n private positionService = inject(AXMOrganizationManagementPositionEntityService);\n private chartService = inject(AXMOrganizationManagementChartEntityService);\n\n private sessionService = inject(AXPSessionService);\n private configService = inject(AXMOrgChartConfigService);\n private popupService = inject(AXPopupService);\n private layoutService = inject(AXPLayoutThemeService);\n\n\n private readonly _rootNode = signal<AXMOrganizationNode>({ id: AXPDataGenerator.uuid(), title: \"Company\" });\n\n public readonly rootNode = this._rootNode.asReadonly();\n\n // The clipboard holds the node being cut or copied.\n private clipboard = signal<{ mode: 'cut' | 'copy', node: AXMOrganizationNode } | null>(null);\n\n\n //#region Load/Save\n\n public async load(): Promise<void> {\n const first = (await this.chartService.query({\n skip: 0,\n take: 1,\n sort: [\n { field: 'version', dir: 'desc' }\n ]\n })).items[0];\n //\n if (first) {\n const data = first.data as AXMOrganizationNode;\n this._rootNode.set(data);\n }\n else {\n await this.createNew();\n await this.load();\n }\n }\n\n private async createNew(): Promise<void> {\n const tenant = this.sessionService.tenant!;\n const record = {\n id: AXPDataGenerator.uuid(),\n createAt: new Date(),\n updateAt: new Date(),\n version: '0.0.0',\n data: {\n id: AXPDataGenerator.uuid(),\n title: tenant.name,\n type: AXMOrganizationNodeType.Company,\n entity: {\n id: tenant.id,\n source: 'tenant',\n },\n children: []\n },\n };\n await this.chartService.insertOne({ data: record.data, version: record.version });\n }\n\n public async save(): Promise<void> {\n const first = (await this.chartService.query()).items[0];\n await this.chartService.updateOne(first.id!, { version: first.version, data: this._rootNode(), updateAt: new Date() });\n }\n\n //#endregion\n\n\n //#region Context Menu\n\n public async getAllowedAddMenuItems(node: AXMOrganizationNode): Promise<AXMenuItem[]> {\n const allowedCategories = await this.getAllowedChildCategoriesForParent(node);\n const allowedMenuItems: AXMenuItem[] = [];\n // Group items by category for visual breaks.\n const groupedMenuItems: Record<AXMOrganizationNodeTypeCategory, AXMenuItem[]> = {\n Company: [],\n Location: [],\n BusinessUnit: [],\n Role: [],\n Employee: []\n };\n\n Object.entries(AXM_ORG_CHART_NODE_TYPE_ENTITY_MAPPINGS).forEach(([entitySource, config]) => {\n if (allowedCategories.includes(config.category)) {\n groupedMenuItems[config.category].push({\n name: 'add',\n text: `${config.title}`,\n icon: config.icon,\n data: {\n node,\n config,\n source: entitySource\n },\n });\n }\n });\n\n Object.values(groupedMenuItems).forEach(group => {\n if (group.length > 0) {\n allowedMenuItems.push(...group);\n group[group.length - 1].break = true;\n }\n });\n\n if (allowedMenuItems.length > 0) {\n allowedMenuItems[allowedMenuItems.length - 1].break = false;\n }\n return allowedMenuItems;\n }\n\n //#endregion\n\n\n //#region Check Permission \n\n private async getAllowedChildCategoriesForParent(parent: AXMOrganizationNode): Promise<AXMOrganizationNodeTypeCategory[]> {\n await this.configService.load();\n const types = this.configService.types; // e.g. ['Company', 'Location', 'BusinessUnit', 'Role', 'Employee']\n const currentType = get(parent, 'category') as any as AXMOrganizationNodeTypeCategory;\n if (!parent || !currentType) {\n return [];\n }\n const allowedCategories: Set<AXMOrganizationNodeTypeCategory> = new Set();\n Object.entries(AXM_ORG_CHART_NODE_TYPE_ENTITY_MAPPINGS).forEach(([entitySource, config]) => {\n if (this.configService.isAllowed(currentType, config.category) && types.includes(config.category)) {\n allowedCategories.add(config.category);\n }\n });\n return Array.from(allowedCategories);\n }\n\n //#endregion \n\n\n //#region Remove/Cut/Copy/Past\n\n public async removeNode(id: string) {\n this._rootNode.update((node) => this.removeNodeRecursively(node, id)!);\n await this.save();\n }\n\n private removeNodeRecursively(node: AXMOrganizationNode, id: string): AXMOrganizationNode | null {\n // If the node itself is the one to be deleted, return null\n if (node.id === id) {\n return null;\n }\n // Otherwise, recursively check children\n if (node.children) {\n node.children = node.children.filter(child => child.id !== id)\n .map(child => {\n return { ...child, children: this.removeNodeRecursively(child, id)?.children };\n });\n }\n\n return node;\n }\n\n public isPasteAvailable(): boolean {\n return this.clipboard() != null && this.clipboard()?.node != null;\n }\n\n public async allowPaste(target: AXMOrganizationNode): Promise<boolean> {\n if (!this.isPasteAvailable()) {\n return false;\n }\n const allowedCategories = await this.getAllowedChildCategoriesForParent(target);\n // Compare using the clipboard node's category.\n return allowedCategories.includes(get(this.clipboard()?.node, 'category')!);\n }\n\n\n /**\n * Cuts the node with the given id.\n * The node is removed from the tree and stored in the clipboard.\n * Cutting the root node is not allowed.\n */\n public async cutNode(id: string): Promise<void> {\n const tree = this._rootNode();\n if (tree.id === id) {\n throw new Error(\"Cannot cut the root node.\");\n }\n const result = this.findNodeAndParent(tree, id);\n if (!result) {\n throw new Error(\"Node not found.\");\n }\n // Set the clipboard signal with mode 'cut'\n this.clipboard.set({ mode: 'cut', node: result.node });\n // Remove the node from the tree.\n const newTree = this.removeNodeRecursively(tree, id);\n this._rootNode.set(newTree!);\n await this.save();\n }\n\n /**\n * Copies the node with the given id.\n * A deep clone of the node is stored in the clipboard.\n */\n public copyNode(id: string): void {\n const tree = this._rootNode();\n const result = this.findNodeAndParent(tree, id);\n if (!result) {\n throw new Error(\"Node not found.\");\n }\n // Use lodash's cloneDeep to create a deep clone.\n const copiedNode = cloneDeep(result.node);\n this.clipboard.set({ mode: 'copy', node: copiedNode });\n }\n\n /**\n * Pastes the node in the clipboard as a child of the node with the given parentId.\n * For a cut, the node is moved; for a copy, new IDs are generated so the pasted node is unique.\n */\n public async pasteNode(parentId: string): Promise<void> {\n const clipboardValue = this.clipboard();\n if (!clipboardValue) {\n throw new Error(\"Clipboard is empty.\");\n }\n const tree = this._rootNode();\n const parentResult = this.findNodeAndParent(tree, parentId);\n if (!parentResult) {\n throw new Error(\"Parent node not found.\");\n }\n let nodeToPaste: AXMOrganizationNode;\n if (clipboardValue.mode === 'cut') {\n nodeToPaste = clipboardValue.node;\n // Clear the clipboard after pasting.\n this.clipboard.set(null);\n } else {\n nodeToPaste = this.cloneNodeWithNewIds(clipboardValue.node);\n }\n const newTree = this.insertNodeRecursively(tree, parentId, nodeToPaste);\n this._rootNode.set(newTree);\n await this.save();\n }\n\n /**\n * Recursively searches the tree for the node with the given id,\n * returning both the node and its parent.\n */\n private findNodeAndParent(\n node: AXMOrganizationNode,\n id: string,\n parent: AXMOrganizationNode | null = null\n ): { node: AXMOrganizationNode, parent: AXMOrganizationNode | null } | null {\n if (node.id === id) {\n return { node, parent };\n }\n if (node.children) {\n for (const child of node.children) {\n const result = this.findNodeAndParent(child, id, node);\n if (result) {\n return result;\n }\n }\n }\n return null;\n }\n\n\n /**\n * Clones a node recursively and generates new IDs for the node and its children.\n */\n private cloneNodeWithNewIds(node: AXMOrganizationNode): AXMOrganizationNode {\n // First, clone the node using lodash.\n const newNode = cloneDeep(node);\n // Then, assign new IDs recursively.\n this.assignNewIds(newNode);\n return newNode;\n }\n\n /**\n * Recursively assigns new unique IDs to the given node and its children.\n */\n private assignNewIds(node: AXMOrganizationNode): void {\n node.id = AXPDataGenerator.uuid();\n if (node.children) {\n node.children.forEach(child => this.assignNewIds(child));\n }\n }\n\n /**\n * Recursively traverses the tree to insert newNode as a child of the node with parentId.\n */\n private insertNodeRecursively(\n node: AXMOrganizationNode,\n parentId: string,\n newNode: AXMOrganizationNode\n ): AXMOrganizationNode {\n if (node.id === parentId) {\n const newChildren = node.children ? [...node.children, newNode] : [newNode];\n return { ...node, children: newChildren };\n }\n if (node.children) {\n return {\n ...node,\n children: node.children.map(child =>\n this.insertNodeRecursively(child, parentId, newNode)\n )\n };\n }\n return node;\n }\n\n //#endregion\n\n\n //#region Add Node\n\n\n public async addNode(data: any): Promise<boolean> {\n console.log(data);\n this.layoutService.setNavigationLoading(true);\n const comp = (await import('./add-item/add-item.component')).AddItemComponent;\n const node = get(data, 'node') as AXMOrganizationNode;\n const type = get(data, 'config.type');\n const source = get(data, 'source');\n let query: (request: AXPQueryRequest) => Promise<AXPPagedListResult<unknown>>;\n\n switch (type) {\n case AXMOrganizationNodeType.Department:\n query = this.departmentService.query.bind(this.departmentService);\n break;\n case AXMOrganizationNodeType.Division:\n query = this.divisionService.query.bind(this.divisionService);\n break;\n case AXMOrganizationNodeType.Branch:\n query = this.branchService.query.bind(this.branchService);\n break;\n case AXMOrganizationNodeType.Position:\n query = this.positionService.query.bind(this.positionService);\n break;\n case AXMOrganizationNodeType.Employee:\n query = this.employmentService.query.bind(this.employmentService);\n break;\n default:\n break;\n }\n const result = await this.popupService.open(comp, {\n title: `Add ${get(data, 'config.title')}`,\n size: 'md',\n data: {\n config: {\n valueField: 'id',\n textField: 'title',\n query: query!\n }\n }\n })\n\n const newNode: AXMOrganizationNode = {\n id: AXPDataGenerator.uuid(),\n title: result.data.title,\n description: result.data.description,\n subtitle: result.data.subtitle,\n type: type,\n parentId: node.id,\n entity: {\n id: result.data.id,\n source: source\n }\n }\n\n const tree = this._rootNode();\n const newTree = this.insertNodeRecursively(tree, node.id, newNode);\n this._rootNode.set(newTree);\n await this.save();\n\n this.layoutService.setNavigationLoading(false);\n return result.data != null;\n }\n\n\n //#endregion\n\n}\n","import { AXPanViewDirective } from '@acorex/cdk/pan-view';\nimport { AXBadgeModule } from '@acorex/components/badge';\nimport { AXBreadcrumbsModule } from '@acorex/components/breadcrumbs';\nimport { AXButtonModule } from '@acorex/components/button';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXDropdownButtonModule } from '@acorex/components/dropdown-button';\nimport { AXLoadingModule } from '@acorex/components/loading';\nimport { AXContextMenuComponent, AXContextMenuItemsClickEvent, AXContextMenuOpeningEvent, AXMenuItem, AXMenuModule } from '@acorex/components/menu';\nimport { AXTranslationModule } from '@acorex/core/translation';\nimport { AXPSimplePageLayout } from '@acorex/platform/themes/default';\nimport {\n AXPLayoutThemeService,\n AXPThemeLayoutActionsComponent,\n AXPThemeLayoutBlockComponent,\n AXPThemeLayoutFooterComponent,\n AXPThemeLayoutHeaderTemplateComponent,\n AXPThemeLayoutPagePrimaryActionsComponent,\n AXPThemeLayoutPageSecondaryActionsComponent,\n} from '@acorex/platform/themes/shared';\nimport { CommonModule } from '@angular/common';\nimport {\n afterNextRender,\n ChangeDetectionStrategy,\n Component,\n effect,\n ElementRef,\n inject,\n NgZone,\n signal,\n TemplateRef,\n viewChild,\n ViewContainerRef,\n ViewEncapsulation,\n} from '@angular/core';\nimport { RouterModule } from '@angular/router';\nimport get from 'lodash-es/get';\nimport { RootConfig } from '../../const';\nimport { AXMOrgChartConfigService } from './org-chart-configuration.service';\nimport { AXMOrgChartPrintService } from './org-chart-print.service';\nimport { AXMOrgChartService } from './org-chart.service';\nimport { AXM_ORG_CHART_NODE_TYPE_ENTITY_MAPPINGS, AXMOrganizationNode, AXMOrganizationNodeType, AXMOrganizationNodeTypeCategory } from './org-chart.type';\nimport set from 'lodash-es/set';\n\n/**\n * Component for displaying and interacting with an organizational chart.\n */\n@Component({\n templateUrl: './org-chart.page.html',\n styleUrls: ['./org-chart.page.scss'],\n imports: [\n CommonModule,\n RouterModule,\n AXPSimplePageLayout,\n AXPThemeLayoutBlockComponent,\n AXPThemeLayoutHeaderTemplateComponent,\n AXPThemeLayoutActionsComponent,\n AXPThemeLayoutPageSecondaryActionsComponent,\n AXPThemeLayoutPagePrimaryActionsComponent,\n AXPThemeLayoutFooterComponent,\n AXMenuModule,\n AXButtonModule,\n AXDropdownButtonModule,\n AXTranslationModule,\n AXDecoratorModule,\n AXPanViewDirective,\n AXLoadingModule,\n AXBreadcrumbsModule,\n AXBadgeModule,\n ],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n providers: [AXMOrgChartConfigService, AXMOrgChartService, AXMOrgChartPrintService],\n})\nexport class AXMOrgChartPage {\n\n\n protected readonly layout = inject(AXPLayoutThemeService);\n protected readonly rootConfig = RootConfig;\n\n private d3!: typeof import('d3');\n\n private nodeTemplate = viewChild.required<TemplateRef<any>>('nodeTemplate');\n private treeContainer = viewChild.required<ElementRef<HTMLDivElement>>('chart');\n private parent = viewChild.required<ElementRef<HTMLDivElement>>('parent');\n private contextMenu = viewChild(AXContextMenuComponent);\n private panView = viewChild(AXPanViewDirective);\n\n private ngzone = inject(NgZone);\n private viewContainerRef = inject(ViewContainerRef);\n private chartPrintService = inject(AXMOrgChartPrintService);\n private chartService = inject(AXMOrgChartService);\n\n\n private readonly NODE_STROKE_COLOR = 'rgba(var(--ax-sys-color-primary-400))';\n private readonly LINK_STROKE_WIDTH = 1;\n\n protected readonly NodeTypes = AXMOrganizationNodeTypeCategory;\n\n protected isFullscreen = signal(false);\n protected panX = signal(0);\n protected panY = signal(0);\n protected panZoomLevel = signal(100);\n\n protected isChartRendered = false;\n\n\n protected nodeTypes = Object.entries(AXM_ORG_CHART_NODE_TYPE_ENTITY_MAPPINGS).map(c =>\n (\n {\n title: c[1].title,\n color: c[1].color,\n icon: c[1].icon,\n category: c[1].category\n })\n );\n\n #initialize = afterNextRender(async () => {\n this.d3 = await import('d3');\n await this.chartService.load();\n await this.refreshChart();\n });\n\n\n /**\n * Zooms in the chart.\n */\n protected zoomIn() {\n this.panZoomLevel.update((prev) => prev + 5);\n }\n\n /**\n * Zooms out the chart.\n */\n protected zoomOut() {\n this.panZoomLevel.update((prev) => prev - 5);\n }\n\n /**\n * Resets the zoom level and pan position of the chart.\n */\n protected zoomReset() {\n this.panView()?.resetPosition();\n }\n\n /**\n * Toggles fullscreen mode for the chart.\n */\n protected toggleFullscreen() {\n if (this.isFullscreen()) {\n document.exitFullscreen();\n this.isFullscreen.set(false);\n } else {\n this.parent().nativeElement.requestFullscreen();\n this.isFullscreen.set(true);\n }\n document.querySelector(`foreignObject[node=\"node-${this.chartService.rootNode().id}\"]`)?.scrollIntoView({\n behavior: 'smooth',\n block: 'start',\n inline: 'center',\n });\n }\n\n /**\n * Calculates the maximum depth of the organizational chart.\n * @param node - The root node of the chart.\n * @returns The maximum depth of the chart.\n */\n private calculateMaxDepth(node: AXMOrganizationNode): number {\n if (!node.children || node.children.length === 0 || node.isExpanded === false) {\n return 1;\n }\n return 1 + Math.max(...node.children.map((child) => this.calculateMaxDepth(child)));\n }\n\n /**\n * Calculates the maximum breadth of the organizational chart.\n * @param node - The root node of the chart.\n * @returns The maximum breadth of the chart.\n */\n private calculateMaxBreadth(node: AXMOrganizationNode): number {\n if (!node.children || node.children.length === 0 || node.isExpanded === false) {\n return 1;\n }\n return node.children.reduce((acc, child) => acc + this.calculateMaxBreadth(child), 0);\n }\n\n /**\n * Creates and renders the organizational chart.\n * @param el - The container element for the chart.\n * @param data - The root node of the organizational chart.\n */\n createChart(el: Element, data: AXMOrganizationNode): void {\n if (!this.d3) {\n return;\n }\n this.ngzone.runOutsideAngular(() => {\n const NODE_WIDTH_BASE = 260;\n const NODE_HEIGHT_BASE = 180;\n const HORIZONTAL_SPACING = 20;\n const VERTICAL_SPACING = 40;\n\n this.clearChart(el);\n const newSvg = this.d3.select(el).append('svg');\n\n const root = this.d3.hierarchy(data);\n\n root.descendants().forEach((node: any) => {\n if (node.data.isExpanded === false) {\n node.children = undefined;\n }\n });\n\n const treeLayout = this.d3\n .tree<AXMOrganizationNode>()\n .nodeSize([NODE_WIDTH_BASE + HORIZONTAL_SPACING, NODE_HEIGHT_BASE + VERTICAL_SPACING]);\n\n treeLayout(root);\n\n let minX = Infinity,\n maxX = -Infinity,\n minY = Infinity,\n maxY = -Infinity;\n root.descendants().forEach((d: any) => {\n if (d.x < minX) minX = d.x;\n if (d.x > maxX) maxX = d.x;\n if (d.y < minY) minY = d.y;\n if (d.y > maxY) maxY = d.y;\n });\n\n const CONTAINER_WIDTH = maxX - minX + NODE_WIDTH_BASE + 2 * HORIZONTAL_SPACING;\n const CONTAINER_HEIGHT = maxY - minY + NODE_HEIGHT_BASE + 2 * VERTICAL_SPACING;\n\n newSvg.attr('width', CONTAINER_WIDTH).attr('height', CONTAINER_HEIGHT);\n\n const g = newSvg\n .append('g')\n .attr(\n 'transform',\n `translate(${-minX + NODE_WIDTH_BASE / 2 + HORIZONTAL_SPACING / 2}, ${-minY + NODE_HEIGHT_BASE / 2 + VERTICAL_SPACING / 2\n })`\n );\n\n const link = g\n .selectAll('.link')\n .data(root.links())\n .enter()\n .append('path')\n .attr('class', 'link')\n .attr('d', (d: any) => {\n const source = d.source;\n const target = d.target;\n return `M${source.x},${source.y}V${(source.y + target.y) / 2}H${target.x}V${target.y - 10}`;\n })\n .attr('fill', 'none')\n .attr('stroke', this.NODE_STROKE_COLOR)\n .attr('stroke-width', this.LINK_STROKE_WIDTH)\n .attr('from', (d: any) => `node-${d.source.data.id}`)\n .attr('to', (d: any) => `node-${d.target.data.id}`);\n\n const node = g\n .selectAll('.axp-chart-node')\n .data(root.descendants())\n .enter()\n .append('foreignObject')\n .attr('class', 'axp-chart-node')\n .attr('node', (d: any) => `node-${d.data.id}`)\n .attr('x', (d: any) => d.x - NODE_WIDTH_BASE / 2)\n .attr('y', (d: any) => d.y - NODE_HEIGHT_BASE / 2 + 10)\n .attr('width', NODE_WIDTH_BASE)\n .attr('height', NODE_HEIGHT_BASE)\n .each((d: any) => this.renderNodeTemplate(d.data, d.x, d.y));\n\n this.contextMenu()?.refresh();\n });\n if (!this.isChartRendered) {\n // document.querySelector(`foreignObject[node=\"node-${data.id}\"] .--heading-container`)?.scrollIntoView({\n // behavior: 'smooth',\n // block: 'center',\n // inline: 'center',\n // });\n this.isChartRendered = true;\n this.panView()?.resetPosition();\n }\n }\n\n /**\n * Renders the node template for a given organizational node.\n * @param data - The node data.\n * @param x - The x-coordinate of the node.\n * @param y - The y-coordinate of the node.\n */\n private renderNodeTemplate(data: AXMOrganizationNode, x: number, y: number): void {\n\n // Find the key that matches the node type\n const entityKey = Object.keys(AXM_ORG_CHART_NODE_TYPE_ENTITY_MAPPINGS).find(key => {\n const keyName = key.split('.').pop(); // Get the last part after splitting by '.'\n return keyName === data.type; // Compare with data.type\n });\n\n if (entityKey) {\n const categoryMapping = AXM_ORG_CHART_NODE_TYPE_ENTITY_MAPPINGS[entityKey];\n\n // Add the category to the data object\n set(data, 'category', categoryMapping.category);\n }\n\n const viewRef = this.viewContainerRef.createEmbeddedView(this.nodeTemplate(), {\n $implicit: data,\n });\n\n const nodeElement = this.d3.select(this.treeContainer().nativeElement).select(`[node=\"node-${data.id}\"]`);\n const element = nodeElement.node() as HTMLElement | null;\n if (element) {\n element.appendChild(viewRef.rootNodes[0]);\n }\n }\n\n /**\n * Toggles the expansion state of a node.\n * @param data - The node data.\n * @param el - The HTML element representing the node.\n */\n protected toggleNode(data: AXMOrganizationNode, el: HTMLDivElement) {\n data.isExpanded = data.isExpanded === undefined ? false : !data.isExpanded;\n this.createChart(this.treeContainer().nativeElement, this.chartService.rootNode());\n // el.scrollIntoView({\n // behavior: 'smooth',\n // });\n }\n\n /**\n * Clears the chart from the container element.\n * @param el - The container element.\n */\n private clearChart(el: Element): void {\n if (this.d3) {\n this.d3.select(el).select('svg').remove();\n this.viewContainerRef.clear();\n }\n }\n\n private async refreshChart() {\n if (this.d3) {\n this.createChart(this.treeContainer().nativeElement, this.chartService.rootNode());\n }\n }\n\n\n\n //#region Context Menu\n\n protected async handleContextMenuOnOpening(e: AXContextMenuOpeningEvent) {\n const node = get(e.targetElement, '__data__.data') as any as AXMOrganizationNode;\n const allowedAddItems = await this.chartService.getAllowedAddMenuItems(node);\n const allowDelete = node.type != AXMOrganizationNodeType.Company;\n const isPasteAvailable = await this.chartService.isPasteAvailable();\n const allowPaste = await this.chartService.allowPaste(node);\n //\n if (allowedAddItems.length) {\n e.items.push({\n text: 'Add New',\n icon: 'fa-light fa-plus',\n items: allowedAddItems,\n break: allowDelete,\n });\n }\n //\n if (allowDelete) {\n e.items.push({\n name: 'cut',\n text: 'Cut',\n icon: 'fa-light fa-cut',\n data: node\n });\n e.items.push({\n name: 'copy',\n text: 'Copy',\n icon: 'fa-light fa-copy',\n data: node,\n break: !isPasteAvailable\n });\n }\n if (isPasteAvailable) {\n e.items.push({\n name: 'paste',\n text: 'Paste',\n icon: 'fa-light fa-paste',\n data: node,\n break: true,\n disabled: !allowPaste\n });\n }\n //\n if (allowDelete) {\n e.items.push({\n name: 'remove',\n text: 'Remove',\n color: 'danger',\n icon: 'fa-light fa-trash-can',\n data: node,\n });\n }\n //\n if (e.items.length == 0) {\n e.canceled = true;\n }\n }\n\n protected async handleContextMenuItemClick(e: AXContextMenuItemsClickEvent) {\n //\n if (e.item.name == 'add') {\n if (await this.chartService.addNode(e.item.data)) {\n await this.refreshChart();\n }\n }\n //\n else if (e.item.name == 'remove') {\n await this.chartService.removeNode(e.item.data.id)\n await this.refreshChart();\n }\n //\n else if (e.item.name == 'copy') {\n await this.chartService.copyNode(e.item.data.id)\n }\n else if (e.item.name == 'cut') {\n await this.chartService.cutNode(e.item.data.id);\n await this.refreshChart();\n }\n else if (e.item.name == 'paste') {\n await this.chartService.pasteNode(e.item.data.id);\n await this.refreshChart();\n }\n }\n\n //#endregion\n\n /**\n * Prints the organizational chart.\n */\n protected async printChart() {\n let [panX, panY, panZoomLevel] = [this.panX(), this.panY(), this.panZoomLevel()];\n this.panX.set(0), this.panY.set(0), this.panZoomLevel.set(100);\n await this.chartPrintService.printChart(this.treeContainer().nativeElement);\n this.panX.set(panX), this.panY.set(panY), this.panZoomLevel.set(panZoomLevel);\n }\n\n /**\n * Gets the node colors based on the provided color.\n * @param color - The color to use for the node.\n * @returns An object containing the node's background, text, and border colors.\n */\n protected getNodeColors(color: string) {\n if (color.includes('surface')) {\n return {\n '--node-bg-color': `var(--ax-sys-color-${color})`,\n '--node-text-color': `var(--ax-sys-color-on-${color})`,\n '--node-border-color': `var(--ax-sys-color-border-${color})`,\n };\n }\n return {\n '--node-bg-color': `var(--ax-sys-color-${color}-surface)`,\n '--node-text-color': `var(--ax-sys-color-on-${color}-surface)`,\n '--node-border-color': `var(--ax-sys-color-border-${color}-surface)`,\n };\n }\n\n protected updateVar(oldValue: any, newValue: AXMOrganizationNodeTypeCategory) {\n oldValue.cat = newValue;\n }\n\n ngOnDestroy(): void {\n this.clearChart(this.treeContainer().nativeElement);\n }\n}\n","<axp-layout-simple-page *translate=\"let t\">\n <axp-layout-header>\n <axp-layout-title> {{t(rootConfig.entities.chart.title) | async}} </axp-layout-title>\n\n <axp-layout-description> Clear and dynamic view of your organization's structure </axp-layout-description>\n\n <axp-layout-actions>\n <axp-layout-actions-primary> </axp-layout-actions-primary>\n\n <axp-layout-actions-secondary>\n <ax-button-item [text]=\"(t('print') | async)!\" (onClick)=\"printChart()\">\n <ax-prefix>\n <ax-icon [icon]=\"'fa-solid fa-print'\"> </ax-icon>\n </ax-prefix>\n </ax-button-item>\n </axp-layout-actions-secondary>\n </axp-layout-actions>\n\n <axp-layout-breadcrumbs>\n <ax-breadcrumbs [class.ax-hidden]=\"layout.isSmall()\">\n <ng-template #divider>\n <i class=\"fa-regular fa-slash-forward\"></i>\n </ng-template>\n <ax-breadcrumbs-item> {{(t('home') | async)}} </ax-breadcrumbs-item>\n <ax-breadcrumbs-item> Organization </ax-breadcrumbs-item>\n </ax-breadcrumbs>\n </axp-layout-breadcrumbs>\n </axp-layout-header>\n\n <axp-layout-content class=\"ax-overflow-hidden\">\n <div class=\"ax-h-[calc(100vh-290px)]\" #parent id=\"parent\">\n <div #chart axPanView [(panX)]=\"panX\" [(panY)]=\"panY\" [(zoom)]=\"panZoomLevel\" [fitContent]=\"true\"\n wrapperClasses=\"h\" class=\"ax-light\"></div>\n <ax-context-menu [target]=\"'.axp-chart-node'\" [orientation]=\"'vertical'\" [closeOn]=\"'leave'\"\n (onItemClick)=\"handleContextMenuItemClick($event)\" (onOpening)=\"handleContextMenuOnOpening($event)\">\n </ax-context-menu>\n </div>\n </axp-layout-content>\n <axp-layout-footer>\n <axp-layout-prefix>\n <div class=\"ax-flex ax-gap-1 ax-light ax-flex-wrap ax-justify-center\">\n @let v = {cat:'Company'};\n @for (item of nodeTypes; track $index) {\n <div class=\"axp-node-hint\" [style]=\"getNodeColors(item.color)\" [class.ax-ms-4]=\"v.cat!=item.category\">\n <div class=\"--badge\">\n </div>\n {{item.title}}\n </div>\n {{updateVar(v,item.category)}}\n }\n </div>\n </axp-layout-prefix>\n <axp-layout-suffix>\n <div class=\"ax-flex ax-gap-2 \">\n <ax-button (onClick)=\"zoomOut()\">\n <ax-icon class=\"fa-solid fa-minus\"> </ax-icon>\n </ax-button>\n <ax-button [text]=\"panZoomLevel()\" (onClick)=\"zoomReset()\"></ax-button>\n <ax-button (onClick)=\"zoomIn()\">\n <ax-icon class=\"fa-solid fa-add\"> </ax-icon>\n </ax-button>\n <ax-button (onClick)=\"toggleFullscreen()\">\n <ax-icon>\n <i class=\"fa-solid\" [class]=\"isFullscreen()? 'fa-compress' : 'fa-expand'\"></i>\n </ax-icon>\n </ax-button>\n </div>\n </axp-layout-suffix>\n </axp-layout-footer>\n</axp-layout-simple-page>\n\n<ng-template #nodeTemplate let-data>\n <div>\n @switch (data.category) {\n <!-- Company -->\n @case (NodeTypes.Company) {\n <ng-container *ngTemplateOutlet=\"generalTemplate; context: { data,color:'primary' }\"></ng-container>\n }\n <!-- Location -->\n @case (NodeTypes.Location) {\n <ng-container *ngTemplateOutlet=\"generalTemplate; context: { data,color:'accent1' }\"></ng-container>\n }\n <!-- BusinessUnit -->\n @case (NodeTypes.BusinessUnit) {\n <ng-container *ngTemplateOutlet=\"generalTemplate; context: { data,color:'accent2' }\"></ng-container>\n }\n <!-- Role -->\n @case (NodeTypes.Role) {\n <ng-container *ngTemplateOutlet=\"generalTemplate; context: { data,color:'accent3' }\"></ng-container>\n }\n <!-- Employee -->\n @case (NodeTypes.Employee) {\n <ng-container *ngTemplateOutlet=\"generalTemplate; context: { data,color:'surface' }\"></ng-container>\n }\n }\n </div>\n</ng-template>\n\n<!----------------------------------- General Node Template ----------------------------------->\n<ng-template #generalTemplate let-data=\"data\" let-color=\"color\">\n <div #node class=\"--node-container\" [style]=\"getNodeColors(color)\">\n <div class=\"--container\">\n <div class=\"--heading-container\">\n <div class=\"--content\">\n <div class=\"--icon\">\n <i class=\"fa-light fa-xl fa-fw\" [class]=\"data.icon\"></i>\n </div>\n <div class=\"--titles\">\n <span class=\"--title\">{{data.title}}</span>\n <span class=\"--sub-title\">{{data.subtitle}}</span>\n </div>\n @if(data?.children?.length){\n <div class=\"--badge\">\n <span>{{data?.children?.length ?? 0}}</span>\n </div>\n }\n </div>\n </div>\n <div class=\"--body-container\">\n <div class=\"--description\" [class.ax-pb-3]=\"data.children && data.children.length > 0\">\n {{data.description}}\n </div>\n </div>\n @if(data.children && data.children.length > 0){\n <div class=\"--toggle\">\n <ax-button class=\"ax-xs ax-rounded-sm\" (onClick)=\"toggleNode(data,node)\">\n <ax-icon icon=\"fa-solid\" [class]=\"data.isExpanded === false ? 'fa-chevron-down' : 'fa-chevron-up'\"></ax-icon>\n </ax-button>\n </div>\n }\n </div>\n </div>\n</ng-template>"],"names":[],"mappings":"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"}
|
@@ -1,6 +1,6 @@
|
|
1
1
|
import { AXPEntityQueryType, AXPEntityCommandScope } from '@acorex/platform/common';
|
2
2
|
import { AXPWidgetsCatalog } from '@acorex/platform/layout/builder';
|
3
|
-
import { AXMOrganizationManagementPositionEntityService, RootConfig } from './acorex-modules-organization-
|
3
|
+
import { AXMOrganizationManagementPositionEntityService, RootConfig } from './acorex-modules-organization-management.mjs';
|
4
4
|
|
5
5
|
async function factory(injector) {
|
6
6
|
const dataService = injector.get(AXMOrganizationManagementPositionEntityService);
|
@@ -209,4 +209,4 @@ async function factory(injector) {
|
|
209
209
|
}
|
210
210
|
|
211
211
|
export { factory };
|
212
|
-
//# sourceMappingURL=acorex-modules-organization-
|
212
|
+
//# sourceMappingURL=acorex-modules-organization-management-position.entity-DDkiBefn.mjs.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"acorex-modules-organization-management-position.entity-DDkiBefn.mjs","sources":["../../../../libs/modules/organization-management/src/lib/entities/position/position.entity.ts"],"sourcesContent":["import { AXPEntity, AXPEntityCommandScope, AXPEntityQueryType } from '@acorex/platform/common';\nimport { AXPWidgetsCatalog } from '@acorex/platform/layout/builder';\nimport { Injector } from '@angular/core';\nimport { RootConfig } from '../../const';\nimport { AXMOrganizationManagementPositionEntityService } from './position.service';\n\nexport async function factory(injector: Injector): Promise<AXPEntity | null> {\n const dataService = injector.get(AXMOrganizationManagementPositionEntityService);\n const i18n = RootConfig.config.i18n;\n\n const entityDef: AXPEntity = {\n module: RootConfig.module.name,\n name: RootConfig.entities.position.name,\n source: '',\n title: `t(\"position\", { scope: \"${i18n}\" })`,\n formats: {\n individual: `t(\"position\", { scope: \"${i18n}\" })`,\n plural: `t(\"positions\", { scope: \"${i18n}\" })`,\n searchResult: {\n title: '{{ title }}',\n description: RootConfig.module.title,\n },\n },\n relatedEntities: [],\n groups: [\n {\n id: 'section',\n title: `t(\"position\", { scope: \"${i18n}\" })`,\n },\n ],\n properties: [\n {\n name: 'id',\n title: 'ID',\n schema: {\n dataType: 'uuid',\n hidden: true,\n nullable: false,\n readonly: true,\n unique: {\n enabled: true,\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 options: {\n width: '400px',\n },\n },\n },\n validations: [\n {\n rule: 'required',\n },\n ],\n },\n ],\n columns: [{ name: 'title' }],\n commands: {\n create: {\n execute: async (data: any) => {\n const res = await dataService.insertOne(data);\n return { id: res };\n },\n },\n delete: {\n execute: async (id: any) => {\n return await dataService.deleteOne(id);\n },\n },\n update: {\n execute: async (data: any) => {\n return await dataService.updateOne(data.id, data);\n },\n },\n },\n queries: {\n byKey: {\n execute: async (id: string) => {\n return await dataService.getOne(id);\n },\n type: AXPEntityQueryType.Single,\n },\n list: {\n execute: async (e: any) => {\n return await dataService.query({ skip: e.skip, take: e.take, filter: e.filter, sort: e.sort });\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: 'title',\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: '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: '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: [\n {\n name: 'all',\n title: 't(\"allItem\", { scope: \"common\" })',\n fixed: true,\n columns: [],\n conditions: [],\n sorts: [],\n },\n ],\n },\n },\n },\n };\n\n return entityDef;\n}\n"],"names":[],"mappings":"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"}
|
@@ -19,4 +19,4 @@ var AXPOrganizationSetting;
|
|
19
19
|
})(AXPOrganizationSetting || (AXPOrganizationSetting = {}));
|
20
20
|
|
21
21
|
export { AXPOrganizationSetting as A };
|
22
|
-
//# sourceMappingURL=acorex-modules-organization-
|
22
|
+
//# sourceMappingURL=acorex-modules-organization-management-setting.keys-CF6Giykz.mjs.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"acorex-modules-organization-management-setting.keys-CF6Giykz.mjs","sources":["../../../../libs/modules/organization-management/src/lib/setting.keys.ts"],"sourcesContent":["const path = 'organization:';\n\nexport enum AXPOrganizationSetting {\n OrganizationName = `${path}organization-name`,\n OrganizationID = `${path}organization-id`,\n ContactEmail = `${path}contact-email`,\n ContactPhone = `${path}contact-phone`,\n OrganizationAddress = `${path}organization-address`,\n OrganizationCity = `${path}organization-city`,\n OrganizationCountry = `${path}organization-country`,\n BrandingColor = `${path}branding-color`,\n BrandingLogo = `${path}branding-logo`,\n CopyrightText = `${path}copyright-text`,\n ApplicationHeaderTitle = `${path}application-header-title`,\n SupportEmail = `${path}support-email`,\n InfoEmail = `${path}info-email`,\n FaxNumber = `${path}fax-number`,\n Relations = `${path}:relations`,\n}\n"],"names":[],"mappings":"AAAA,MAAM,IAAI,GAAG,eAAe;IAEhB;AAAZ,CAAA,UAAY,sBAAsB,EAAA;AAC9B,IAAA,sBAAA,CAAA,kBAAA,CAAA,GAAA,gCAA6C;AAC7C,IAAA,sBAAA,CAAA,gBAAA,CAAA,GAAA,8BAAyC;AACzC,IAAA,sBAAA,CAAA,cAAA,CAAA,GAAA,4BAAqC;AACrC,IAAA,sBAAA,CAAA,cAAA,CAAA,GAAA,4BAAqC;AACrC,IAAA,sBAAA,CAAA,qBAAA,CAAA,GAAA,mCAAmD;AACnD,IAAA,sBAAA,CAAA,kBAAA,CAAA,GAAA,gCAA6C;AAC7C,IAAA,sBAAA,CAAA,qBAAA,CAAA,GAAA,mCAAmD;AACnD,IAAA,sBAAA,CAAA,eAAA,CAAA,GAAA,6BAAuC;AACvC,IAAA,sBAAA,CAAA,cAAA,CAAA,GAAA,4BAAqC;AACrC,IAAA,sBAAA,CAAA,eAAA,CAAA,GAAA,6BAAuC;AACvC,IAAA,sBAAA,CAAA,wBAAA,CAAA,GAAA,uCAA0D;AAC1D,IAAA,sBAAA,CAAA,cAAA,CAAA,GAAA,4BAAqC;AACrC,IAAA,sBAAA,CAAA,WAAA,CAAA,GAAA,yBAA+B;AAC/B,IAAA,sBAAA,CAAA,WAAA,CAAA,GAAA,yBAA+B;AAC/B,IAAA,sBAAA,CAAA,WAAA,CAAA,GAAA,yBAA+B;AACnC,CAAC,EAhBW,sBAAsB,KAAtB,sBAAsB,GAgBjC,EAAA,CAAA,CAAA;;;;"}
|
@@ -1,5 +1,5 @@
|
|
1
1
|
import { AXPWidgetsCatalog } from '@acorex/platform/layout/builder';
|
2
|
-
import { A as AXPOrganizationSetting } from './acorex-modules-organization-
|
2
|
+
import { A as AXPOrganizationSetting } from './acorex-modules-organization-management-setting.keys-CF6Giykz.mjs';
|
3
3
|
|
4
4
|
class AXMSettingProvider {
|
5
5
|
constructor(sessionService) {
|
@@ -7,7 +7,7 @@ class AXMSettingProvider {
|
|
7
7
|
}
|
8
8
|
async provide(context) {
|
9
9
|
context
|
10
|
-
.addGroup('organization-settings', 'Organization Settings', 'Manage organizational preferences.', 'fa-
|
10
|
+
.addGroup('organization-settings', 'Organization Settings', 'Manage organizational preferences.', 'fa-light fa-building')
|
11
11
|
// Branding Section
|
12
12
|
.addSection('branding', 'Branding', 'Configure company branding.')
|
13
13
|
.addSetting({
|
@@ -180,4 +180,4 @@ class AXMSettingProvider {
|
|
180
180
|
}
|
181
181
|
|
182
182
|
export { AXMSettingProvider };
|
183
|
-
//# sourceMappingURL=acorex-modules-organization-
|
183
|
+
//# sourceMappingURL=acorex-modules-organization-management-setting.provider-eLv_qnmE.mjs.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"acorex-modules-organization-management-setting.provider-eLv_qnmE.mjs","sources":["../../../../libs/modules/organization-management/src/lib/setting.provider.ts"],"sourcesContent":["import { AXPSettingDefinitionProvider, AXPSettingDefinitionProviderContext } from '@acorex/platform/common';\nimport { AXPWidgetsCatalog } from '@acorex/platform/layout/builder';\nimport { AXPOrganizationSetting } from './setting.keys';\nimport { AXPSessionService } from '@acorex/platform/auth';\n\nexport class AXMSettingProvider implements AXPSettingDefinitionProvider {\n\n constructor(private sessionService: AXPSessionService) {\n\n }\n\n async provide(context: AXPSettingDefinitionProviderContext): Promise<void> {\n context\n .addGroup('organization-settings', 'Organization Settings', 'Manage organizational preferences.', 'fa-light fa-building')\n\n // Branding Section\n .addSection('branding', 'Branding', 'Configure company branding.')\n .addSetting({\n key: AXPOrganizationSetting.OrganizationName,\n title: 'Company Name',\n scope: 'T',\n isInherited: false,\n defaultValue: this.sessionService.tenant?.title,\n widget: {\n type: AXPWidgetsCatalog.text,\n },\n description: 'Specify the official name of the company.',\n })\n .addSetting({\n key: 'branding-logo',\n title: 'Company Logo',\n scope: 'T',\n isInherited: false,\n defaultValue: '',\n widget: {\n type: AXPWidgetsCatalog.avatar,\n options: {\n fileTypes: ['image/png', 'image/jpeg'],\n },\n },\n description: 'Upload the company logo.',\n })\n .addSetting({\n key: 'copyright-text',\n title: 'Copyright Text',\n scope: 'T',\n isInherited: true,\n defaultValue: '© 2024 Your Company',\n widget: {\n type: AXPWidgetsCatalog.text,\n },\n description: 'Text displayed in the footer of the application.',\n })\n .addSetting({\n key: 'application-header-title',\n title: 'Application Header Title',\n scope: 'T',\n isInherited: true,\n defaultValue: this.sessionService.application?.title,\n widget: {\n type: AXPWidgetsCatalog.text,\n },\n description: 'Title displayed in the application header.',\n })\n .endSection()\n\n // Contact Details Section\n .addSection('contact', 'Contact Details', 'Set company contact information.')\n .addSetting({\n key: AXPOrganizationSetting.ContactEmail,\n title: 'Company Email',\n scope: 'T',\n isInherited: false,\n defaultValue: '',\n widget: {\n type: AXPWidgetsCatalog.contact,\n options: {\n type: 'email',\n hasLabel: false,\n }\n },\n description: 'Primary email address for the company.',\n })\n .addSetting({\n key: 'support-email',\n title: 'Support Email',\n scope: 'T',\n isInherited: false,\n defaultValue: '',\n widget: {\n type: AXPWidgetsCatalog.contact,\n options: {\n type: 'email',\n hasLabel: false,\n }\n },\n description: 'Support email address for customer inquiries.',\n })\n .addSetting({\n key: 'info-email',\n title: 'Info Email',\n scope: 'T',\n isInherited: false,\n defaultValue: '',\n widget: {\n type: AXPWidgetsCatalog.contact,\n options: {\n type: 'email',\n hasLabel: false,\n }\n },\n description: 'General information email address.',\n })\n .addSetting({\n key: AXPOrganizationSetting.ContactPhone,\n title: 'Company Phone',\n scope: 'T',\n isInherited: false,\n defaultValue: '',\n widget: {\n type: AXPWidgetsCatalog.contact,\n options: {\n type: 'phone',\n hasLabel: false,\n }\n },\n description: 'Primary contact phone number.',\n })\n .addSetting({\n key: 'fax-number',\n title: 'Fax Number',\n scope: 'T',\n isInherited: false,\n defaultValue: '',\n widget: {\n type: AXPWidgetsCatalog.contact,\n options: {\n type: 'phone',\n hasLabel: false,\n }\n },\n description: 'Fax number for the company.',\n })\n .endSection()\n\n // Address Section\n .addSection('address', 'Address', 'Manage company address details.')\n .addSetting({\n key: AXPOrganizationSetting.OrganizationAddress,\n title: 'Street Address',\n scope: 'T',\n isInherited: false,\n defaultValue: '',\n widget: {\n type: AXPWidgetsCatalog.text,\n },\n description: 'Street address of the company.',\n })\n .addSetting({\n key: AXPOrganizationSetting.OrganizationCity,\n title: 'City',\n scope: 'T',\n isInherited: false,\n defaultValue: '',\n widget: {\n type: AXPWidgetsCatalog.text,\n },\n description: 'City where the company is located.',\n })\n .addSetting({\n key: AXPOrganizationSetting.OrganizationCountry,\n title: 'Country',\n scope: 'T',\n isInherited: false,\n defaultValue: '',\n widget: {\n type: AXPWidgetsCatalog.select,\n options: {\n dataSource: ['United States', 'United Kingdom', 'France', 'Germany', 'Japan', 'China'],\n },\n },\n description: 'Country where the company is based.',\n })\n .endSection()\n\n .endGroup();\n }\n}\n"],"names":[],"mappings":";;;MAKa,kBAAkB,CAAA;AAE3B,IAAA,WAAA,CAAoB,cAAiC,EAAA;QAAjC,IAAc,CAAA,cAAA,GAAd,cAAc;;IAIlC,MAAM,OAAO,CAAC,OAA4C,EAAA;QACtD;aACK,QAAQ,CAAC,uBAAuB,EAAE,uBAAuB,EAAE,oCAAoC,EAAE,sBAAsB;;AAGvH,aAAA,UAAU,CAAC,UAAU,EAAE,UAAU,EAAE,6BAA6B;AAChE,aAAA,UAAU,CAAC;YACR,GAAG,EAAE,sBAAsB,CAAC,gBAAgB;AAC5C,YAAA,KAAK,EAAE,cAAc;AACrB,YAAA,KAAK,EAAE,GAAG;AACV,YAAA,WAAW,EAAE,KAAK;AAClB,YAAA,YAAY,EAAE,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE,KAAK;AAC/C,YAAA,MAAM,EAAE;gBACJ,IAAI,EAAE,iBAAiB,CAAC,IAAI;AAC/B,aAAA;AACD,YAAA,WAAW,EAAE,2CAA2C;SAC3D;AACA,aAAA,UAAU,CAAC;AACR,YAAA,GAAG,EAAE,eAAe;AACpB,YAAA,KAAK,EAAE,cAAc;AACrB,YAAA,KAAK,EAAE,GAAG;AACV,YAAA,WAAW,EAAE,KAAK;AAClB,YAAA,YAAY,EAAE,EAAE;AAChB,YAAA,MAAM,EAAE;gBACJ,IAAI,EAAE,iBAAiB,CAAC,MAAM;AAC9B,gBAAA,OAAO,EAAE;AACL,oBAAA,SAAS,EAAE,CAAC,WAAW,EAAE,YAAY,CAAC;AACzC,iBAAA;AACJ,aAAA;AACD,YAAA,WAAW,EAAE,0BAA0B;SAC1C;AACA,aAAA,UAAU,CAAC;AACR,YAAA,GAAG,EAAE,gBAAgB;AACrB,YAAA,KAAK,EAAE,gBAAgB;AACvB,YAAA,KAAK,EAAE,GAAG;AACV,YAAA,WAAW,EAAE,IAAI;AACjB,YAAA,YAAY,EAAE,qBAAqB;AACnC,YAAA,MAAM,EAAE;gBACJ,IAAI,EAAE,iBAAiB,CAAC,IAAI;AAC/B,aAAA;AACD,YAAA,WAAW,EAAE,kDAAkD;SAClE;AACA,aAAA,UAAU,CAAC;AACR,YAAA,GAAG,EAAE,0BAA0B;AAC/B,YAAA,KAAK,EAAE,0BAA0B;AACjC,YAAA,KAAK,EAAE,GAAG;AACV,YAAA,WAAW,EAAE,IAAI;AACjB,YAAA,YAAY,EAAE,IAAI,CAAC,cAAc,CAAC,WAAW,EAAE,KAAK;AACpD,YAAA,MAAM,EAAE;gBACJ,IAAI,EAAE,iBAAiB,CAAC,IAAI;AAC/B,aAAA;AACD,YAAA,WAAW,EAAE,4CAA4C;SAC5D;AACA,aAAA,UAAU;;AAGV,aAAA,UAAU,CAAC,SAAS,EAAE,iBAAiB,EAAE,kCAAkC;AAC3E,aAAA,UAAU,CAAC;YACR,GAAG,EAAE,sBAAsB,CAAC,YAAY;AACxC,YAAA,KAAK,EAAE,eAAe;AACtB,YAAA,KAAK,EAAE,GAAG;AACV,YAAA,WAAW,EAAE,KAAK;AAClB,YAAA,YAAY,EAAE,EAAE;AAChB,YAAA,MAAM,EAAE;gBACJ,IAAI,EAAE,iBAAiB,CAAC,OAAO;AAC/B,gBAAA,OAAO,EAAE;AACL,oBAAA,IAAI,EAAE,OAAO;AACb,oBAAA,QAAQ,EAAE,KAAK;AAClB;AACJ,aAAA;AACD,YAAA,WAAW,EAAE,wCAAwC;SACxD;AACA,aAAA,UAAU,CAAC;AACR,YAAA,GAAG,EAAE,eAAe;AACpB,YAAA,KAAK,EAAE,eAAe;AACtB,YAAA,KAAK,EAAE,GAAG;AACV,YAAA,WAAW,EAAE,KAAK;AAClB,YAAA,YAAY,EAAE,EAAE;AAChB,YAAA,MAAM,EAAE;gBACJ,IAAI,EAAE,iBAAiB,CAAC,OAAO;AAC/B,gBAAA,OAAO,EAAE;AACL,oBAAA,IAAI,EAAE,OAAO;AACb,oBAAA,QAAQ,EAAE,KAAK;AAClB;AACJ,aAAA;AACD,YAAA,WAAW,EAAE,+CAA+C;SAC/D;AACA,aAAA,UAAU,CAAC;AACR,YAAA,GAAG,EAAE,YAAY;AACjB,YAAA,KAAK,EAAE,YAAY;AACnB,YAAA,KAAK,EAAE,GAAG;AACV,YAAA,WAAW,EAAE,KAAK;AAClB,YAAA,YAAY,EAAE,EAAE;AAChB,YAAA,MAAM,EAAE;gBACJ,IAAI,EAAE,iBAAiB,CAAC,OAAO;AAC/B,gBAAA,OAAO,EAAE;AACL,oBAAA,IAAI,EAAE,OAAO;AACb,oBAAA,QAAQ,EAAE,KAAK;AAClB;AACJ,aAAA;AACD,YAAA,WAAW,EAAE,oCAAoC;SACpD;AACA,aAAA,UAAU,CAAC;YACR,GAAG,EAAE,sBAAsB,CAAC,YAAY;AACxC,YAAA,KAAK,EAAE,eAAe;AACtB,YAAA,KAAK,EAAE,GAAG;AACV,YAAA,WAAW,EAAE,KAAK;AAClB,YAAA,YAAY,EAAE,EAAE;AAChB,YAAA,MAAM,EAAE;gBACJ,IAAI,EAAE,iBAAiB,CAAC,OAAO;AAC/B,gBAAA,OAAO,EAAE;AACL,oBAAA,IAAI,EAAE,OAAO;AACb,oBAAA,QAAQ,EAAE,KAAK;AAClB;AACJ,aAAA;AACD,YAAA,WAAW,EAAE,+BAA+B;SAC/C;AACA,aAAA,UAAU,CAAC;AACR,YAAA,GAAG,EAAE,YAAY;AACjB,YAAA,KAAK,EAAE,YAAY;AACnB,YAAA,KAAK,EAAE,GAAG;AACV,YAAA,WAAW,EAAE,KAAK;AAClB,YAAA,YAAY,EAAE,EAAE;AAChB,YAAA,MAAM,EAAE;gBACJ,IAAI,EAAE,iBAAiB,CAAC,OAAO;AAC/B,gBAAA,OAAO,EAAE;AACL,oBAAA,IAAI,EAAE,OAAO;AACb,oBAAA,QAAQ,EAAE,KAAK;AAClB;AACJ,aAAA;AACD,YAAA,WAAW,EAAE,6BAA6B;SAC7C;AACA,aAAA,UAAU;;AAGV,aAAA,UAAU,CAAC,SAAS,EAAE,SAAS,EAAE,iCAAiC;AAClE,aAAA,UAAU,CAAC;YACR,GAAG,EAAE,sBAAsB,CAAC,mBAAmB;AAC/C,YAAA,KAAK,EAAE,gBAAgB;AACvB,YAAA,KAAK,EAAE,GAAG;AACV,YAAA,WAAW,EAAE,KAAK;AAClB,YAAA,YAAY,EAAE,EAAE;AAChB,YAAA,MAAM,EAAE;gBACJ,IAAI,EAAE,iBAAiB,CAAC,IAAI;AAC/B,aAAA;AACD,YAAA,WAAW,EAAE,gCAAgC;SAChD;AACA,aAAA,UAAU,CAAC;YACR,GAAG,EAAE,sBAAsB,CAAC,gBAAgB;AAC5C,YAAA,KAAK,EAAE,MAAM;AACb,YAAA,KAAK,EAAE,GAAG;AACV,YAAA,WAAW,EAAE,KAAK;AAClB,YAAA,YAAY,EAAE,EAAE;AAChB,YAAA,MAAM,EAAE;gBACJ,IAAI,EAAE,iBAAiB,CAAC,IAAI;AAC/B,aAAA;AACD,YAAA,WAAW,EAAE,oCAAoC;SACpD;AACA,aAAA,UAAU,CAAC;YACR,GAAG,EAAE,sBAAsB,CAAC,mBAAmB;AAC/C,YAAA,KAAK,EAAE,SAAS;AAChB,YAAA,KAAK,EAAE,GAAG;AACV,YAAA,WAAW,EAAE,KAAK;AAClB,YAAA,YAAY,EAAE,EAAE;AAChB,YAAA,MAAM,EAAE;gBACJ,IAAI,EAAE,iBAAiB,CAAC,MAAM;AAC9B,gBAAA,OAAO,EAAE;AACL,oBAAA,UAAU,EAAE,CAAC,eAAe,EAAE,gBAAgB,EAAE,QAAQ,EAAE,SAAS,EAAE,OAAO,EAAE,OAAO,CAAC;AACzF,iBAAA;AACJ,aAAA;AACD,YAAA,WAAW,EAAE,qCAAqC;SACrD;AACA,aAAA,UAAU;AAEV,aAAA,QAAQ,EAAE;;AAEtB;;;;"}
|
@@ -29,13 +29,13 @@ const RootConfig = {
|
|
29
29
|
name: 'Division',
|
30
30
|
source: `${config.module}.Division`,
|
31
31
|
title: `t("division",{scope:"${config.i18n}"})`,
|
32
|
-
icon: 'fa-light fa-
|
32
|
+
icon: 'fa-light fa-sitemap',
|
33
33
|
},
|
34
34
|
department: {
|
35
35
|
name: 'Department',
|
36
36
|
source: `${config.module}.Department`,
|
37
37
|
title: `t("department",{scope:"${config.i18n}"})`,
|
38
|
-
icon: 'fa-light fa-
|
38
|
+
icon: 'fa-light fa-building-user',
|
39
39
|
},
|
40
40
|
branch: {
|
41
41
|
name: 'Branch',
|
@@ -47,7 +47,7 @@ const RootConfig = {
|
|
47
47
|
name: 'Position',
|
48
48
|
source: `${config.module}.Position`,
|
49
49
|
title: `t("position",{scope:"${config.i18n}"})`,
|
50
|
-
icon: 'fa-light fa-user-
|
50
|
+
icon: 'fa-light fa-user-tie',
|
51
51
|
},
|
52
52
|
employee: {
|
53
53
|
name: 'Employee',
|
@@ -386,6 +386,50 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.3", ngImpor
|
|
386
386
|
}]
|
387
387
|
}] });
|
388
388
|
|
389
|
+
var AXMOrganizationNodeTypeCategory;
|
390
|
+
(function (AXMOrganizationNodeTypeCategory) {
|
391
|
+
AXMOrganizationNodeTypeCategory["Company"] = "Company";
|
392
|
+
AXMOrganizationNodeTypeCategory["Location"] = "Location";
|
393
|
+
AXMOrganizationNodeTypeCategory["BusinessUnit"] = "BusinessUnit";
|
394
|
+
AXMOrganizationNodeTypeCategory["Role"] = "Role";
|
395
|
+
AXMOrganizationNodeTypeCategory["Employee"] = "Employee"; // Employee
|
396
|
+
})(AXMOrganizationNodeTypeCategory || (AXMOrganizationNodeTypeCategory = {}));
|
397
|
+
const AXM_ORG_CHART_NODE_TYPE_CATEGORY_LIST = {
|
398
|
+
"Company": { title: "Company", icon: "fal fa-building", color: 'primary' },
|
399
|
+
"Location": { title: "Location", icon: "fal fa-map", color: 'accent1' },
|
400
|
+
"BusinessUnit": { title: "Business Unit", icon: "fal fa-network-wired", color: 'accent2' },
|
401
|
+
"Role": { title: "Role", icon: "fal fa-user-tie", color: 'accent3' },
|
402
|
+
"Employee": { title: "Employee", icon: "fal a-address-card", color: 'surface' },
|
403
|
+
};
|
404
|
+
var AXMOrganizationNodeType;
|
405
|
+
(function (AXMOrganizationNodeType) {
|
406
|
+
AXMOrganizationNodeType["Company"] = "Company";
|
407
|
+
AXMOrganizationNodeType["Country"] = "Country";
|
408
|
+
AXMOrganizationNodeType["State"] = "State";
|
409
|
+
AXMOrganizationNodeType["City"] = "City";
|
410
|
+
AXMOrganizationNodeType["Division"] = "Division";
|
411
|
+
AXMOrganizationNodeType["Department"] = "Department";
|
412
|
+
AXMOrganizationNodeType["Branch"] = "Branch";
|
413
|
+
AXMOrganizationNodeType["Position"] = "Position";
|
414
|
+
AXMOrganizationNodeType["Employee"] = "Employee";
|
415
|
+
})(AXMOrganizationNodeType || (AXMOrganizationNodeType = {}));
|
416
|
+
// Define a mapping between entity sources, organization node types, titles, and icons
|
417
|
+
const AXM_ORG_CHART_NODE_TYPE_ENTITY_MAPPINGS = {
|
418
|
+
'OrganizationManagement.Company': { category: AXMOrganizationNodeTypeCategory.Company, type: AXMOrganizationNodeType.Company, title: 'Company', icon: 'fal fa-building', color: "primary" },
|
419
|
+
// Location
|
420
|
+
'OrganizationManagement.Country': { category: AXMOrganizationNodeTypeCategory.Location, type: AXMOrganizationNodeType.Country, title: 'Country', icon: 'fal fa-globe', color: "accent1" },
|
421
|
+
'OrganizationManagement.State': { category: AXMOrganizationNodeTypeCategory.Location, type: AXMOrganizationNodeType.State, title: 'State', icon: 'fal fa-map', color: "accent1" },
|
422
|
+
'OrganizationManagement.City': { category: AXMOrganizationNodeTypeCategory.Location, type: AXMOrganizationNodeType.City, title: 'City', icon: 'fal fa-city', color: "accent1" },
|
423
|
+
// Business Unit
|
424
|
+
'OrganizationManagement.Division': { category: AXMOrganizationNodeTypeCategory.BusinessUnit, type: AXMOrganizationNodeType.Division, title: 'Division', icon: 'fal fa-sitemap', color: "accent2" },
|
425
|
+
'OrganizationManagement.Department': { category: AXMOrganizationNodeTypeCategory.BusinessUnit, type: AXMOrganizationNodeType.Department, title: 'Department', icon: 'fal fa-building-user', color: "accent2" },
|
426
|
+
'OrganizationManagement.Branch': { category: AXMOrganizationNodeTypeCategory.BusinessUnit, type: AXMOrganizationNodeType.Branch, title: 'Branch', icon: 'fal fa-network-wired', color: "accent2" },
|
427
|
+
// Role
|
428
|
+
'OrganizationManagement.Position': { category: AXMOrganizationNodeTypeCategory.Role, type: AXMOrganizationNodeType.Position, title: 'Position', icon: 'fal fa-user-tie', color: "accent3" },
|
429
|
+
// Employee
|
430
|
+
'OrganizationManagement.Employee': { category: AXMOrganizationNodeTypeCategory.Employee, type: AXMOrganizationNodeType.Employee, title: 'Employee', icon: 'fal fa-address-card', color: "surface" }
|
431
|
+
};
|
432
|
+
|
389
433
|
class AXMOrganizationModuleEntityProvider {
|
390
434
|
constructor() {
|
391
435
|
this.injector = inject(Injector);
|
@@ -401,21 +445,21 @@ class AXMOrganizationModuleEntityProvider {
|
|
401
445
|
if (moduleName == RootConfig.module.name) {
|
402
446
|
switch (entityName) {
|
403
447
|
case RootConfig.entities.company.name:
|
404
|
-
return (await import('./acorex-modules-organization-
|
448
|
+
return (await import('./acorex-modules-organization-management-company.entity-d7GaCVei.mjs')).factory(this.injector);
|
405
449
|
case RootConfig.entities.division.name:
|
406
|
-
return (await import('./acorex-modules-organization-
|
450
|
+
return (await import('./acorex-modules-organization-management-division.entity-Ckmu2Tj9.mjs')).factory(this.injector);
|
407
451
|
case RootConfig.entities.department.name:
|
408
|
-
return (await import('./acorex-modules-organization-
|
452
|
+
return (await import('./acorex-modules-organization-management-department.entity-Dl7y4Rva.mjs')).factory(this.injector);
|
409
453
|
case RootConfig.entities.branch.name:
|
410
|
-
return (await import('./acorex-modules-organization-
|
454
|
+
return (await import('./acorex-modules-organization-management-branch.entity-CbmnpHl2.mjs')).factory(this.injector);
|
411
455
|
case RootConfig.entities.employee.name:
|
412
|
-
return (await import('./acorex-modules-organization-
|
456
|
+
return (await import('./acorex-modules-organization-management-employee.entity-PwlBjkYo.mjs')).factory(this.injector);
|
413
457
|
case RootConfig.entities.employmentType.name:
|
414
|
-
return (await import('./acorex-modules-organization-
|
458
|
+
return (await import('./acorex-modules-organization-management-employment-type.entity-9aOaYT_-.mjs')).factory(this.injector);
|
415
459
|
case RootConfig.entities.position.name:
|
416
|
-
return (await import('./acorex-modules-organization-
|
460
|
+
return (await import('./acorex-modules-organization-management-position.entity-DDkiBefn.mjs')).factory(this.injector);
|
417
461
|
case RootConfig.entities.chart.name:
|
418
|
-
return (await import('./acorex-modules-organization-
|
462
|
+
return (await import('./acorex-modules-organization-management-chart.entity-Bk4WgsYr.mjs')).factory(this.injector);
|
419
463
|
}
|
420
464
|
}
|
421
465
|
return null;
|
@@ -515,20 +559,20 @@ function routesFacory() {
|
|
515
559
|
children: [
|
516
560
|
{
|
517
561
|
path: 'chart',
|
518
|
-
loadComponent: () => import('./acorex-modules-organization-
|
562
|
+
loadComponent: () => import('./acorex-modules-organization-management-org-chart.page-Cz4ENQRa.mjs').then(function (n) { return n.o; }).then((c) => c.AXMOrgChartPage),
|
519
563
|
},
|
520
564
|
{
|
521
565
|
path: 'configuration',
|
522
|
-
loadComponent: () => import('./acorex-modules-organization-
|
566
|
+
loadComponent: () => import('./acorex-modules-organization-management-org-chart-configuration.page-BzjTyYyS.mjs').then((c) => c.AXMOrgChartConfigurationPage),
|
523
567
|
},
|
524
568
|
],
|
525
569
|
},
|
526
570
|
];
|
527
571
|
return routes;
|
528
572
|
}
|
529
|
-
class
|
530
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type:
|
531
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.0.3", ngImport: i0, type:
|
573
|
+
class AXMOrganizationManagementModule {
|
574
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXMOrganizationManagementModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
575
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.0.3", ngImport: i0, type: AXMOrganizationManagementModule, imports: [CommonModule,
|
532
576
|
AXMOrganizationManagementCompanyEntityModule,
|
533
577
|
AXMOrganizationManagementDepartmentEntityModule,
|
534
578
|
AXMOrganizationManagementDivisionEntityModule,
|
@@ -537,7 +581,7 @@ class AXMOrganizationManagmentModule {
|
|
537
581
|
AXMOrganizationManagementPositionEntityModule,
|
538
582
|
AXMOrganizationManagementChartEntityModule,
|
539
583
|
AXMOrganizationManagementEmploymentTypeEntityModule] }); }
|
540
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type:
|
584
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXMOrganizationManagementModule, providers: [
|
541
585
|
{
|
542
586
|
provide: AXP_ENTITY_DEFINITION_LOADER,
|
543
587
|
useClass: AXMOrganizationModuleEntityProvider,
|
@@ -547,7 +591,7 @@ class AXMOrganizationManagmentModule {
|
|
547
591
|
provide: AXP_SETTING_DEFINITION_PROVIDER,
|
548
592
|
useFactory: async () => {
|
549
593
|
const injector = inject(Injector);
|
550
|
-
const provider = (await import('./acorex-modules-organization-
|
594
|
+
const provider = (await import('./acorex-modules-organization-management-setting.provider-eLv_qnmE.mjs')).AXMSettingProvider;
|
551
595
|
return new provider(injector.get(AXPSessionService));
|
552
596
|
},
|
553
597
|
multi: true,
|
@@ -572,7 +616,7 @@ class AXMOrganizationManagmentModule {
|
|
572
616
|
AXMOrganizationManagementChartEntityModule,
|
573
617
|
AXMOrganizationManagementEmploymentTypeEntityModule] }); }
|
574
618
|
}
|
575
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type:
|
619
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXMOrganizationManagementModule, decorators: [{
|
576
620
|
type: NgModule,
|
577
621
|
args: [{
|
578
622
|
imports: [
|
@@ -596,7 +640,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.3", ngImpor
|
|
596
640
|
provide: AXP_SETTING_DEFINITION_PROVIDER,
|
597
641
|
useFactory: async () => {
|
598
642
|
const injector = inject(Injector);
|
599
|
-
const provider = (await import('./acorex-modules-organization-
|
643
|
+
const provider = (await import('./acorex-modules-organization-management-setting.provider-eLv_qnmE.mjs')).AXMSettingProvider;
|
600
644
|
return new provider(injector.get(AXPSessionService));
|
601
645
|
},
|
602
646
|
multi: true,
|
@@ -619,5 +663,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.3", ngImpor
|
|
619
663
|
* Generated bundle index. Do not edit.
|
620
664
|
*/
|
621
665
|
|
622
|
-
export { AXMOrganizationManagementBranchEntityModule, AXMOrganizationManagementBranchEntityService, AXMOrganizationManagementBranchEntityServiceImpl, AXMOrganizationManagementChartEntityModule, AXMOrganizationManagementChartEntityService, AXMOrganizationManagementChartEntityServiceImpl, AXMOrganizationManagementCompanyEntityModule, AXMOrganizationManagementCompanyEntityService, AXMOrganizationManagementCompanyEntityServiceImpl, AXMOrganizationManagementDepartmentEntityModule, AXMOrganizationManagementDepartmentEntityService, AXMOrganizationManagementDepartmentEntityServiceImpl, AXMOrganizationManagementDivisionEntityModule, AXMOrganizationManagementDivisionEntityService, AXMOrganizationManagementDivisionEntityServiceImpl, AXMOrganizationManagementEmployeeEntityModule, AXMOrganizationManagementEmployeeEntityService, AXMOrganizationManagementEmployeeEntityServiceImpl, AXMOrganizationManagementEmploymentTypeEntityModule, AXMOrganizationManagementEmploymentTypeEntityService, AXMOrganizationManagementEmploymentTypeEntityServiceImpl, AXMOrganizationManagementPositionEntityModule, AXMOrganizationManagementPositionEntityService, AXMOrganizationManagementPositionEntityServiceImpl,
|
623
|
-
//# sourceMappingURL=acorex-modules-organization-
|
666
|
+
export { AXMOrganizationManagementBranchEntityModule, AXMOrganizationManagementBranchEntityService, AXMOrganizationManagementBranchEntityServiceImpl, AXMOrganizationManagementChartEntityModule, AXMOrganizationManagementChartEntityService, AXMOrganizationManagementChartEntityServiceImpl, AXMOrganizationManagementCompanyEntityModule, AXMOrganizationManagementCompanyEntityService, AXMOrganizationManagementCompanyEntityServiceImpl, AXMOrganizationManagementDepartmentEntityModule, AXMOrganizationManagementDepartmentEntityService, AXMOrganizationManagementDepartmentEntityServiceImpl, AXMOrganizationManagementDivisionEntityModule, AXMOrganizationManagementDivisionEntityService, AXMOrganizationManagementDivisionEntityServiceImpl, AXMOrganizationManagementEmployeeEntityModule, AXMOrganizationManagementEmployeeEntityService, AXMOrganizationManagementEmployeeEntityServiceImpl, AXMOrganizationManagementEmploymentTypeEntityModule, AXMOrganizationManagementEmploymentTypeEntityService, AXMOrganizationManagementEmploymentTypeEntityServiceImpl, AXMOrganizationManagementModule, AXMOrganizationManagementPositionEntityModule, AXMOrganizationManagementPositionEntityService, AXMOrganizationManagementPositionEntityServiceImpl, AXMOrganizationNodeType, AXMOrganizationNodeTypeCategory, AXM_ORG_CHART_NODE_TYPE_CATEGORY_LIST, AXM_ORG_CHART_NODE_TYPE_ENTITY_MAPPINGS, RootConfig };
|
667
|
+
//# sourceMappingURL=acorex-modules-organization-management.mjs.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"acorex-modules-organization-management.mjs","sources":["../../../../libs/modules/organization-management/src/lib/const.ts","../../../../libs/modules/organization-management/src/lib/entities/company/company.service.ts","../../../../libs/modules/organization-management/src/lib/entities/company/company.module.ts","../../../../libs/modules/organization-management/src/lib/entities/division/division.service.ts","../../../../libs/modules/organization-management/src/lib/entities/division/division.module.ts","../../../../libs/modules/organization-management/src/lib/entities/department/department.service.ts","../../../../libs/modules/organization-management/src/lib/entities/department/department.module.ts","../../../../libs/modules/organization-management/src/lib/entities/branch/branch.service.ts","../../../../libs/modules/organization-management/src/lib/entities/branch/branch.module.ts","../../../../libs/modules/organization-management/src/lib/entities/position/position.service.ts","../../../../libs/modules/organization-management/src/lib/entities/position/position.module.ts","../../../../libs/modules/organization-management/src/lib/entities/employee/employee.service.ts","../../../../libs/modules/organization-management/src/lib/entities/employee/employee.module.ts","../../../../libs/modules/organization-management/src/lib/entities/employment-type/employment-type.service.ts","../../../../libs/modules/organization-management/src/lib/entities/employment-type/employment-type.module.ts","../../../../libs/modules/organization-management/src/lib/entities/chart/chart.service.ts","../../../../libs/modules/organization-management/src/lib/entities/chart/chart.module.ts","../../../../libs/modules/organization-management/src/lib/features/organization-chart/org-chart.type.ts","../../../../libs/modules/organization-management/src/lib/entity.provider.ts","../../../../libs/modules/organization-management/src/lib/menu.provider.ts","../../../../libs/modules/organization-management/src/lib/organization-management.module.ts","../../../../libs/modules/organization-management/src/acorex-modules-organization-management.ts"],"sourcesContent":["const config = {\n i18n: 'organization-management',\n module: 'OrganizationManagement',\n};\nexport const RootConfig = {\n config,\n module: {\n route: 'organization-management',\n name: config.module,\n title: `t('module-name', {scope:\"${config.i18n}\"})`,\n icon: 'fa-light fa-sitemap',\n },\n entities: {\n company: {\n name: 'Company',\n source: `${config.module}.Company`,\n title: `t(\"company\", {scope:\"${config.i18n}\"})`,\n icon: 'fa-light fa-building',\n },\n division: {\n name: 'Division',\n source: `${config.module}.Division`,\n title: `t(\"division\",{scope:\"${config.i18n}\"})`,\n icon: 'fa-light fa-sitemap',\n },\n department: {\n name: 'Department',\n source: `${config.module}.Department`,\n title: `t(\"department\",{scope:\"${config.i18n}\"})`,\n icon: 'fa-light fa-building-user',\n },\n branch: {\n name: 'Branch',\n source: `${config.module}.Branch`,\n title: `t(\"branch\",{scope:\"${config.i18n}\"})`,\n icon: 'fa-light fa-network-wired',\n },\n position: {\n name: 'Position',\n source: `${config.module}.Position`,\n title: `t(\"position\",{scope:\"${config.i18n}\"})`,\n icon: 'fa-light fa-user-tie',\n },\n employee: {\n name: 'Employee',\n source: `${config.module}.Employee`,\n title: `t(\"employee\",{scope:\"${config.i18n}\"})`,\n icon: 'fa-light fa-address-card',\n },\n employmentType: {\n name: 'EmploymentType',\n source: `${config.module}.EmploymentType`,\n title: `t(\"employment-type\",{scope:\"${config.i18n}\"})`,\n icon: 'fa-light fa-file-signature',\n },\n structure: {\n name: 'ChartStructure',\n source: `${config.module}.ChartStructure`,\n title: `t(\"org-conf-long\",{scope:\"${config.i18n}\"})`,\n menu: {\n title: `t(\"org-conf-short\",{scope:\"${config.i18n}\"})`,\n },\n icon: 'fa-light fa-gear',\n },\n chart: {\n name: 'Chart',\n source: `${config.module}.Chart`,\n title: `t(\"org-chart-long\",{scope:\"${config.i18n}\"})`,\n menu: {\n title: `t(\"org-chart-short\",{scope:\"${config.i18n}\"})`,\n },\n icon: 'fa-light fa-chart-diagram',\n },\n },\n};\n","import { AXMEntityCrudServiceImpl } from '@acorex/platform/common';\nimport { Injectable } from '@angular/core';\nimport { RootConfig } from '../../const';\nimport { AXMOrganizationManagementCompanyEntityModel } from './company.types';\n\nexport abstract class AXMOrganizationManagementCompanyEntityService extends AXMEntityCrudServiceImpl<\n string,\n AXMOrganizationManagementCompanyEntityModel\n> { }\n\n@Injectable()\nexport class AXMOrganizationManagementCompanyEntityServiceImpl extends AXMOrganizationManagementCompanyEntityService {\n constructor() {\n super(RootConfig.entities.company.source);\n }\n}\n","import { NgModule } from '@angular/core';\nimport {\n AXMOrganizationManagementCompanyEntityService,\n AXMOrganizationManagementCompanyEntityServiceImpl,\n} from './company.service';\n\n@NgModule({\n imports: [],\n exports: [],\n declarations: [],\n providers: [\n {\n provide: AXMOrganizationManagementCompanyEntityService,\n useClass: AXMOrganizationManagementCompanyEntityServiceImpl,\n },\n ],\n})\nexport class AXMOrganizationManagementCompanyEntityModule {}\n","import { AXMEntityCrudServiceImpl } from '@acorex/platform/common';\nimport { Injectable } from '@angular/core';\nimport { RootConfig } from '../../const';\nimport { AXMOrganizationManagementDivisionEntityModel } from './division.types';\n\nexport abstract class AXMOrganizationManagementDivisionEntityService extends AXMEntityCrudServiceImpl<\n string,\n AXMOrganizationManagementDivisionEntityModel\n> { }\n\n@Injectable()\nexport class AXMOrganizationManagementDivisionEntityServiceImpl extends AXMOrganizationManagementDivisionEntityService {\n constructor() {\n super(RootConfig.entities.division.source);\n }\n}\n","import { NgModule } from '@angular/core';\nimport {\n AXMOrganizationManagementDivisionEntityService,\n AXMOrganizationManagementDivisionEntityServiceImpl,\n} from './division.service';\n\n@NgModule({\n imports: [],\n exports: [],\n declarations: [],\n providers: [\n {\n provide: AXMOrganizationManagementDivisionEntityService,\n useClass: AXMOrganizationManagementDivisionEntityServiceImpl,\n },\n ],\n})\nexport class AXMOrganizationManagementDivisionEntityModule { }\n","import { AXMEntityCrudServiceImpl } from '@acorex/platform/common';\nimport { Injectable } from '@angular/core';\nimport { RootConfig } from '../../const';\nimport { AXMOrganizationManagementDepartmentEntityModel } from './department.types';\n\nexport abstract class AXMOrganizationManagementDepartmentEntityService extends AXMEntityCrudServiceImpl<\n string,\n AXMOrganizationManagementDepartmentEntityModel\n> { }\n\n@Injectable()\nexport class AXMOrganizationManagementDepartmentEntityServiceImpl extends AXMOrganizationManagementDepartmentEntityService {\n constructor() {\n super(RootConfig.entities.department.source);\n }\n}\n","import { NgModule } from '@angular/core';\nimport {\n AXMOrganizationManagementDepartmentEntityService,\n AXMOrganizationManagementDepartmentEntityServiceImpl,\n} from './department.service';\n\n@NgModule({\n imports: [],\n exports: [],\n declarations: [],\n providers: [\n {\n provide: AXMOrganizationManagementDepartmentEntityService,\n useClass: AXMOrganizationManagementDepartmentEntityServiceImpl,\n },\n ],\n})\nexport class AXMOrganizationManagementDepartmentEntityModule {}\n","import { AXMEntityCrudServiceImpl } from '@acorex/platform/common';\nimport { Injectable } from '@angular/core';\nimport { RootConfig } from '../../const';\nimport { AXMOrganizationManagementBranchEntityModel } from './branch.types';\n\nexport abstract class AXMOrganizationManagementBranchEntityService extends AXMEntityCrudServiceImpl<\n string,\n AXMOrganizationManagementBranchEntityModel\n> { }\n\n@Injectable()\nexport class AXMOrganizationManagementBranchEntityServiceImpl extends AXMOrganizationManagementBranchEntityService {\n constructor() {\n super(RootConfig.entities.branch.source);\n }\n}\n","import { NgModule } from '@angular/core';\nimport {\n AXMOrganizationManagementBranchEntityService,\n AXMOrganizationManagementBranchEntityServiceImpl,\n} from './branch.service';\n\n@NgModule({\n imports: [],\n exports: [],\n declarations: [],\n providers: [\n {\n provide: AXMOrganizationManagementBranchEntityService,\n useClass: AXMOrganizationManagementBranchEntityServiceImpl,\n },\n ],\n})\nexport class AXMOrganizationManagementBranchEntityModule { }\n","import { AXMEntityCrudServiceImpl } from '@acorex/platform/common';\nimport { Injectable } from '@angular/core';\nimport { RootConfig } from '../../const';\nimport { AXMOrganizationManagementPositionEntityModel } from './position.types';\nexport abstract class AXMOrganizationManagementPositionEntityService extends AXMEntityCrudServiceImpl<\n string,\n AXMOrganizationManagementPositionEntityModel\n> { }\n\n@Injectable()\nexport class AXMOrganizationManagementPositionEntityServiceImpl extends AXMOrganizationManagementPositionEntityService {\n constructor() {\n super(RootConfig.entities.position.source);\n }\n}\n","import { NgModule } from '@angular/core';\nimport {\n AXMOrganizationManagementPositionEntityService,\n AXMOrganizationManagementPositionEntityServiceImpl,\n} from './position.service';\n\n@NgModule({\n imports: [],\n exports: [],\n declarations: [],\n providers: [\n {\n provide: AXMOrganizationManagementPositionEntityService,\n useClass: AXMOrganizationManagementPositionEntityServiceImpl,\n },\n ],\n})\nexport class AXMOrganizationManagementPositionEntityModule {}\n","import { AXMEntityCrudServiceImpl } from '@acorex/platform/common';\nimport { Injectable } from '@angular/core';\nimport { RootConfig } from '../../const';\nimport { AXMOrganizationManagementEmployeeEntityModel } from './employee.types';\n\nexport abstract class AXMOrganizationManagementEmployeeEntityService extends AXMEntityCrudServiceImpl<\n string,\n AXMOrganizationManagementEmployeeEntityModel\n> { }\n\n@Injectable()\nexport class AXMOrganizationManagementEmployeeEntityServiceImpl extends AXMOrganizationManagementEmployeeEntityService {\n constructor() {\n super(RootConfig.entities.employee.source);\n }\n}\n","import { NgModule } from '@angular/core';\nimport {\n AXMOrganizationManagementEmployeeEntityService,\n AXMOrganizationManagementEmployeeEntityServiceImpl,\n} from './employee.service';\n\n@NgModule({\n imports: [],\n exports: [],\n declarations: [],\n providers: [\n {\n provide: AXMOrganizationManagementEmployeeEntityService,\n useClass: AXMOrganizationManagementEmployeeEntityServiceImpl,\n },\n ],\n})\nexport class AXMOrganizationManagementEmployeeEntityModule { }\n","import { AXMEntityCrudServiceImpl } from '@acorex/platform/common';\nimport { Injectable } from '@angular/core';\nimport { RootConfig } from '../../const';\nimport { AXMOrganizationManagementEmploymentTypeEntityModel } from './employment-type.types';\n\nexport abstract class AXMOrganizationManagementEmploymentTypeEntityService extends AXMEntityCrudServiceImpl<\n string,\n AXMOrganizationManagementEmploymentTypeEntityModel\n> { }\n\n@Injectable()\nexport class AXMOrganizationManagementEmploymentTypeEntityServiceImpl extends AXMOrganizationManagementEmploymentTypeEntityService {\n constructor() {\n super(RootConfig.entities.employmentType.source);\n }\n}\n","import { NgModule } from '@angular/core';\nimport {\n AXMOrganizationManagementEmploymentTypeEntityService,\n AXMOrganizationManagementEmploymentTypeEntityServiceImpl,\n} from './employment-type.service';\n\n@NgModule({\n imports: [],\n exports: [],\n declarations: [],\n providers: [\n {\n provide: AXMOrganizationManagementEmploymentTypeEntityService,\n useClass: AXMOrganizationManagementEmploymentTypeEntityServiceImpl,\n },\n ],\n})\nexport class AXMOrganizationManagementEmploymentTypeEntityModule { }\n","import { AXMEntityCrudServiceImpl } from '@acorex/platform/common';\nimport { Injectable } from '@angular/core';\nimport { RootConfig } from '../../const';\nimport { AXMOrganizationManagementChartEntityModel } from './chart.types';\nexport abstract class AXMOrganizationManagementChartEntityService extends AXMEntityCrudServiceImpl<\n string,\n AXMOrganizationManagementChartEntityModel\n> { }\n\n@Injectable()\nexport class AXMOrganizationManagementChartEntityServiceImpl extends AXMOrganizationManagementChartEntityService {\n constructor() {\n super(RootConfig.entities.chart.source);\n }\n}\n","import { NgModule } from '@angular/core';\nimport {\n AXMOrganizationManagementChartEntityService,\n AXMOrganizationManagementChartEntityServiceImpl,\n} from './chart.service';\n\n@NgModule({\n imports: [],\n exports: [],\n declarations: [],\n providers: [\n {\n provide: AXMOrganizationManagementChartEntityService,\n useClass: AXMOrganizationManagementChartEntityServiceImpl,\n },\n ],\n})\nexport class AXMOrganizationManagementChartEntityModule {}\n","export enum AXMOrganizationNodeTypeCategory {\n Company = 'Company', // Company\n Location = 'Location', // Country, State, City\n BusinessUnit = 'BusinessUnit', // Division, Department, Branch\n Role = 'Role', // Position\n Employee = 'Employee' // Employee\n}\n\nexport const AXM_ORG_CHART_NODE_TYPE_CATEGORY_LIST: Record<string, { title: string; icon: string, color: string }> = {\n \"Company\": { title: \"Company\", icon: \"fal fa-building\", color: 'primary' },\n \"Location\": { title: \"Location\", icon: \"fal fa-map\", color: 'accent1' },\n \"BusinessUnit\": { title: \"Business Unit\", icon: \"fal fa-network-wired\", color: 'accent2' },\n \"Role\": { title: \"Role\", icon: \"fal fa-user-tie\", color: 'accent3' },\n \"Employee\": { title: \"Employee\", icon: \"fal a-address-card\", color: 'surface' },\n}\n\nexport enum AXMOrganizationNodeType {\n Company = 'Company',\n Country = 'Country',\n State = 'State',\n City = 'City',\n Division = 'Division',\n Department = 'Department',\n Branch = 'Branch',\n Position = 'Position',\n Employee = 'Employee',\n}\n\n\n// Define a mapping between entity sources, organization node types, titles, and icons \nexport const AXM_ORG_CHART_NODE_TYPE_ENTITY_MAPPINGS: Record<string, { category: AXMOrganizationNodeTypeCategory; type: AXMOrganizationNodeType, title: string; icon: string, color: string }> = {\n 'OrganizationManagement.Company': { category: AXMOrganizationNodeTypeCategory.Company, type: AXMOrganizationNodeType.Company, title: 'Company', icon: 'fal fa-building', color: \"primary\" },\n // Location\n 'OrganizationManagement.Country': { category: AXMOrganizationNodeTypeCategory.Location, type: AXMOrganizationNodeType.Country, title: 'Country', icon: 'fal fa-globe', color: \"accent1\" },\n 'OrganizationManagement.State': { category: AXMOrganizationNodeTypeCategory.Location, type: AXMOrganizationNodeType.State, title: 'State', icon: 'fal fa-map', color: \"accent1\" },\n 'OrganizationManagement.City': { category: AXMOrganizationNodeTypeCategory.Location, type: AXMOrganizationNodeType.City, title: 'City', icon: 'fal fa-city', color: \"accent1\" },\n // Business Unit\n 'OrganizationManagement.Division': { category: AXMOrganizationNodeTypeCategory.BusinessUnit, type: AXMOrganizationNodeType.Division, title: 'Division', icon: 'fal fa-sitemap', color: \"accent2\" },\n 'OrganizationManagement.Department': { category: AXMOrganizationNodeTypeCategory.BusinessUnit, type: AXMOrganizationNodeType.Department, title: 'Department', icon: 'fal fa-building-user', color: \"accent2\" },\n 'OrganizationManagement.Branch': { category: AXMOrganizationNodeTypeCategory.BusinessUnit, type: AXMOrganizationNodeType.Branch, title: 'Branch', icon: 'fal fa-network-wired', color: \"accent2\" },\n // Role\n 'OrganizationManagement.Position': { category: AXMOrganizationNodeTypeCategory.Role, type: AXMOrganizationNodeType.Position, title: 'Position', icon: 'fal fa-user-tie', color: \"accent3\" },\n // Employee\n 'OrganizationManagement.Employee': { category: AXMOrganizationNodeTypeCategory.Employee, type: AXMOrganizationNodeType.Employee, title: 'Employee', icon: 'fal fa-address-card', color: \"surface\" }\n};\n\n\nexport interface AXMOrganizationNode {\n id: string; // Unique identifier for the node\n title: string,// Title of the node\n subtitle?: string;\n description?: string | null,// Description of the node\n isExpanded?: boolean; // Add this property\n children?: AXMOrganizationNode[];\n icon?: string;\n type?: AXMOrganizationNodeType; // Type of the node\n parentId?: string | null; // ID of the parent node (null for root)\n entity?: {\n id: string; // ID of the linked entity\n source: string; // Source of the linked entity (e.g., 'OrganizationManagement.Branch', 'OrganizationManagement.Department', etc.)\n }\n metadata?: Record<string, any>; // Additional metadata (e.g., roles, counts, etc.)\n}","import { AXPEntity } from '@acorex/platform/common';\nimport { AXPEntityDefinitionLoader, AXPEntityPreloadEntity } from '@acorex/platform/layout/entity';\nimport { Injectable, Injector, inject } from '@angular/core';\nimport { RootConfig } from './const';\n\n@Injectable()\nexport class AXMOrganizationModuleEntityProvider implements AXPEntityDefinitionLoader {\n public preload(): AXPEntityPreloadEntity[] {\n const module = RootConfig.module.name;\n return Array.from(Object.values(RootConfig.entities)).map((entity: any) => ({\n module: module,\n entity: entity.name,\n }));\n }\n\n private injector = inject(Injector);\n\n async get(moduleName: string, entityName: string): Promise<AXPEntity | null> {\n if (moduleName == RootConfig.module.name) {\n switch (entityName) {\n case RootConfig.entities.company.name:\n return (await import('./entities/company/company.entity')).factory(this.injector);\n case RootConfig.entities.division.name:\n return (await import('./entities/division/division.entity')).factory(this.injector);\n case RootConfig.entities.department.name:\n return (await import('./entities/department/department.entity')).factory(this.injector);\n case RootConfig.entities.branch.name:\n return (await import('./entities/branch/branch.entity')).factory(this.injector);\n case RootConfig.entities.employee.name:\n return (await import('./entities/employee/employee.entity')).factory(this.injector);\n case RootConfig.entities.employmentType.name:\n return (await import('./entities/employment-type/employment-type.entity')).factory(this.injector);\n case RootConfig.entities.position.name:\n return (await import('./entities/position/position.entity')).factory(this.injector);\n case RootConfig.entities.chart.name:\n return (await import('./entities/chart/chart.entity')).factory(this.injector);\n }\n }\n return null;\n }\n}\n","import { AXPMenuProvider, AXPMenuProviderContext } from '@acorex/platform/common';\nimport { AXPEntityService } from '@acorex/platform/layout/entity';\nimport { inject } from '@angular/core';\nimport { RootConfig } from './const';\nimport { AXPSessionService } from '@acorex/platform/auth';\n\nexport class AXMMenuProvider implements AXPMenuProvider {\n private entityService = inject(AXPEntityService);\n private sessionService = inject(AXPSessionService);\n\n async provide(context: AXPMenuProviderContext): Promise<void> {\n const scope = RootConfig.config.i18n;\n const module = RootConfig.module;\n\n context.addItems([\n {\n priority: 9001,\n text: `t('root-menu', {scope: \"${scope}\"})`,\n icon: 'fa-light fa-file-invoice',\n children: [\n // {\n // text: `t(\"companies\", {scope:\"${scope}\"})`,\n // path: this.entityService.createPath(module.name, RootConfig.entities.company.name),\n // priority: 10000,\n // icon: RootConfig.entities.company.icon,\n // },\n {\n text: `t('divisions', {scope:\"${scope}\"})`,\n path: this.entityService.createPath(module.name, RootConfig.entities.division.name),\n priority: 12,\n icon: RootConfig.entities.division.icon,\n },\n {\n text: `t('departments', {scope:\"${scope}\"})`,\n path: this.entityService.createPath(module.name, RootConfig.entities.department.name),\n priority: 13,\n icon: RootConfig.entities.department.icon,\n },\n {\n text: `t('branches', {scope:\"${scope}\"})`,\n path: this.entityService.createPath(module.name, RootConfig.entities.branch.name),\n priority: 14,\n icon: RootConfig.entities.branch.icon,\n },\n {\n text: `t('positions', {scope:\"${scope}\"})`,\n path: this.entityService.createPath(module.name, RootConfig.entities.position.name),\n priority: 15,\n icon: RootConfig.entities.position.icon,\n },\n {\n text: `t('employment-types', {scope:\"${scope}\"})`,\n path: this.entityService.createPath(module.name, RootConfig.entities.employmentType.name),\n priority: 21,\n icon: RootConfig.entities.employmentType.icon,\n },\n {\n text: `t('employees', {scope:\"${scope}\"})`,\n path: this.entityService.createPath(module.name, RootConfig.entities.employee.name),\n priority: 22,\n icon: RootConfig.entities.employee.icon,\n },\n {\n text: `Chart`,\n type: 'break',\n priority: 30,\n },\n {\n text: RootConfig.entities.structure.menu.title,\n path: `${this.sessionService.application?.name}/organization/configuration`,\n priority: 31,\n icon: RootConfig.entities.structure.icon,\n },\n {\n text: RootConfig.entities.chart.menu.title,\n path: `${this.sessionService.application?.name}/organization/chart`,\n priority: 31,\n icon: RootConfig.entities.chart.icon,\n },\n ],\n },\n ]);\n }\n}\n","import { AXP_MENU_PROVIDER, AXP_SETTING_DEFINITION_PROVIDER } from '@acorex/platform/common';\nimport { AXP_ENTITY_CONFIG_TOKEN, AXP_ENTITY_DEFINITION_LOADER } from '@acorex/platform/layout/entity';\nimport { CommonModule } from '@angular/common';\nimport { inject, Injector, NgModule } from '@angular/core';\nimport { Routes, ROUTES } from '@angular/router';\nimport { AXMOrganizationManagementChartEntityModule } from './entities/chart/chart.module';\nimport { AXMOrganizationManagementCompanyEntityModule } from './entities/company/company.module';\nimport { AXMOrganizationManagementDepartmentEntityModule } from './entities/department/department.module';\nimport { AXMOrganizationManagementEmployeeEntityModule } from './entities/employee/employee.module';\nimport { AXMOrganizationManagementPositionEntityModule } from './entities/position/position.module';\nimport { AXMOrganizationModuleEntityProvider } from './entity.provider';\nimport { AXMMenuProvider } from './menu.provider';\nimport { AXPSessionService } from '@acorex/platform/auth';\nimport { AXMOrganizationManagementDivisionEntityModule } from './entities/division/division.module';\nimport { AXMOrganizationManagementBranchEntityModule } from './entities/branch/branch.module';\nimport { AXMOrganizationManagementEmploymentTypeEntityModule } from './entities/employment-type';\n\nfunction routesFacory() {\n const config = inject(AXP_ENTITY_CONFIG_TOKEN);\n const routes: Routes = [\n {\n component: config.viewers.root(),\n path: ':app/organization',\n children: [\n {\n path: 'chart',\n loadComponent: () => import('./features/organization-chart/org-chart.page').then((c) => c.AXMOrgChartPage),\n },\n {\n path: 'configuration',\n loadComponent: () => import('./features/organization-chart/org-chart-configuration.page').then((c) => c.AXMOrgChartConfigurationPage),\n },\n ],\n },\n ];\n return routes;\n}\n\n@NgModule({\n imports: [\n CommonModule,\n AXMOrganizationManagementCompanyEntityModule,\n AXMOrganizationManagementDepartmentEntityModule,\n AXMOrganizationManagementDivisionEntityModule,\n AXMOrganizationManagementBranchEntityModule,\n AXMOrganizationManagementEmployeeEntityModule,\n AXMOrganizationManagementPositionEntityModule,\n AXMOrganizationManagementChartEntityModule,\n AXMOrganizationManagementEmploymentTypeEntityModule\n ],\n providers: [\n {\n provide: AXP_ENTITY_DEFINITION_LOADER,\n useClass: AXMOrganizationModuleEntityProvider,\n multi: true,\n },\n {\n provide: AXP_SETTING_DEFINITION_PROVIDER,\n useFactory: async () => {\n const injector = inject(Injector);\n const provider = (await import('./setting.provider')).AXMSettingProvider;\n return new provider(injector.get(AXPSessionService));\n },\n multi: true,\n },\n {\n provide: AXP_MENU_PROVIDER,\n useClass: AXMMenuProvider,\n multi: true,\n },\n {\n provide: ROUTES,\n multi: true,\n useFactory: routesFacory,\n },\n ],\n})\nexport class AXMOrganizationManagementModule { }\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|