@acorex/modules 20.0.5 → 20.0.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/common/index.d.ts +22 -2
- package/contact-management/README.md +568 -0
- package/contact-management/index.d.ts +263 -0
- package/conversation/index.d.ts +364 -391
- package/document-management/index.d.ts +5 -1
- package/fesm2022/{acorex-modules-application-management-module-designer.component-CvFiEI1a.mjs → acorex-modules-application-management-module-designer.component-BErRgx0w.mjs} +7 -7
- package/fesm2022/{acorex-modules-application-management-module-designer.component-CvFiEI1a.mjs.map → acorex-modules-application-management-module-designer.component-BErRgx0w.mjs.map} +1 -1
- package/fesm2022/acorex-modules-application-management.mjs +41 -42
- package/fesm2022/acorex-modules-application-management.mjs.map +1 -1
- package/fesm2022/{acorex-modules-auth-acorex-modules-auth-B10cRw3M.mjs → acorex-modules-auth-acorex-modules-auth-X866H4oy.mjs} +44 -44
- package/fesm2022/acorex-modules-auth-acorex-modules-auth-X866H4oy.mjs.map +1 -0
- package/fesm2022/{acorex-modules-auth-app-chooser.component-C-HPf2jz.mjs → acorex-modules-auth-app-chooser.component-DqKTfLA2.mjs} +5 -5
- package/fesm2022/{acorex-modules-auth-app-chooser.component-C-HPf2jz.mjs.map → acorex-modules-auth-app-chooser.component-DqKTfLA2.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-auth-blank.layout-C5d42pO1.mjs → acorex-modules-auth-blank.layout-D2qSgxTy.mjs} +4 -4
- package/fesm2022/{acorex-modules-auth-blank.layout-C5d42pO1.mjs.map → acorex-modules-auth-blank.layout-D2qSgxTy.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-auth-login.module-eC1_ukrb.mjs → acorex-modules-auth-login.module-CWOYzn0L.mjs} +8 -8
- package/fesm2022/{acorex-modules-auth-login.module-eC1_ukrb.mjs.map → acorex-modules-auth-login.module-CWOYzn0L.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-auth-master.layout-DpfqRgAl.mjs → acorex-modules-auth-master.layout-384T0lIg.mjs} +5 -5
- package/fesm2022/{acorex-modules-auth-master.layout-DpfqRgAl.mjs.map → acorex-modules-auth-master.layout-384T0lIg.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-auth-password.component-rE9yrcGW.mjs → acorex-modules-auth-password.component-BW_ooTQG.mjs} +5 -5
- package/fesm2022/acorex-modules-auth-password.component-BW_ooTQG.mjs.map +1 -0
- package/fesm2022/{acorex-modules-auth-password.component-DAB9dWB8.mjs → acorex-modules-auth-password.component-JG95JpLz.mjs} +5 -5
- package/fesm2022/{acorex-modules-auth-password.component-DAB9dWB8.mjs.map → acorex-modules-auth-password.component-JG95JpLz.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-auth-routes-EGvejNu9.mjs → acorex-modules-auth-routes-DqKtHu-i.mjs} +2 -2
- package/fesm2022/{acorex-modules-auth-routes-EGvejNu9.mjs.map → acorex-modules-auth-routes-DqKtHu-i.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-auth-tenant-chooser.component-fmuXNByb.mjs → acorex-modules-auth-tenant-chooser.component-C0jxaqqg.mjs} +4 -4
- package/fesm2022/{acorex-modules-auth-tenant-chooser.component-fmuXNByb.mjs.map → acorex-modules-auth-tenant-chooser.component-C0jxaqqg.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-auth-two-factor-code.component-JYtAQ3qF.mjs → acorex-modules-auth-two-factor-code.component-D7KOomHD.mjs} +4 -4
- package/fesm2022/{acorex-modules-auth-two-factor-code.component-JYtAQ3qF.mjs.map → acorex-modules-auth-two-factor-code.component-D7KOomHD.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-auth-two-factor.module-DF3_fgzH.mjs → acorex-modules-auth-two-factor.module-C88pXqao.mjs} +7 -7
- package/fesm2022/{acorex-modules-auth-two-factor.module-DF3_fgzH.mjs.map → acorex-modules-auth-two-factor.module-C88pXqao.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-auth-user-sessions.component-BPb-WS4k.mjs → acorex-modules-auth-user-sessions.component-loloVwv0.mjs} +5 -5
- package/fesm2022/{acorex-modules-auth-user-sessions.component-BPb-WS4k.mjs.map → acorex-modules-auth-user-sessions.component-loloVwv0.mjs.map} +1 -1
- package/fesm2022/acorex-modules-auth.mjs +1 -1
- package/fesm2022/{acorex-modules-common-search-popup.component-B5JU9uH9.mjs → acorex-modules-common-search-popup.component-CCKiQx0U.mjs} +8 -8
- package/fesm2022/{acorex-modules-common-search-popup.component-B5JU9uH9.mjs.map → acorex-modules-common-search-popup.component-CCKiQx0U.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-common-timeline-version-history-popup.component-DzvUTy5z.mjs → acorex-modules-common-timeline-version-history-popup.component-DJOcjquG.mjs} +8 -8
- package/fesm2022/{acorex-modules-common-timeline-version-history-popup.component-DzvUTy5z.mjs.map → acorex-modules-common-timeline-version-history-popup.component-DJOcjquG.mjs.map} +1 -1
- package/fesm2022/acorex-modules-common.mjs +215 -86
- package/fesm2022/acorex-modules-common.mjs.map +1 -1
- package/fesm2022/acorex-modules-contact-management-address-type.entity-QMEODkhx.mjs +489 -0
- package/fesm2022/acorex-modules-contact-management-address-type.entity-QMEODkhx.mjs.map +1 -0
- package/fesm2022/acorex-modules-contact-management-contact-address.entity-0f4Vaw_k.mjs +827 -0
- package/fesm2022/acorex-modules-contact-management-contact-address.entity-0f4Vaw_k.mjs.map +1 -0
- package/fesm2022/acorex-modules-contact-management-contact-method.entity-ChEz1jW0.mjs +509 -0
- package/fesm2022/acorex-modules-contact-management-contact-method.entity-ChEz1jW0.mjs.map +1 -0
- package/fesm2022/acorex-modules-contact-management-contact-relationship.entity-DLfiEEfk.mjs +469 -0
- package/fesm2022/acorex-modules-contact-management-contact-relationship.entity-DLfiEEfk.mjs.map +1 -0
- package/fesm2022/acorex-modules-contact-management-contact-source.entity-hopVxiIT.mjs +489 -0
- package/fesm2022/acorex-modules-contact-management-contact-source.entity-hopVxiIT.mjs.map +1 -0
- package/fesm2022/acorex-modules-contact-management.mjs +2332 -0
- package/fesm2022/acorex-modules-contact-management.mjs.map +1 -0
- package/fesm2022/acorex-modules-content-management.mjs +119 -55
- package/fesm2022/acorex-modules-content-management.mjs.map +1 -1
- package/fesm2022/acorex-modules-conversation.mjs +2225 -2073
- package/fesm2022/acorex-modules-conversation.mjs.map +1 -1
- package/fesm2022/acorex-modules-dashboard-management.mjs +84 -84
- package/fesm2022/acorex-modules-dashboard-management.mjs.map +1 -1
- package/fesm2022/{acorex-modules-document-management-acorex-modules-document-management-ClH75xx1.mjs → acorex-modules-document-management-acorex-modules-document-management-C4cvhxSV.mjs} +310 -235
- package/fesm2022/acorex-modules-document-management-acorex-modules-document-management-C4cvhxSV.mjs.map +1 -0
- package/fesm2022/{acorex-modules-document-management-attachment-widget.component-B_tjfzIn.mjs → acorex-modules-document-management-attachment-widget.component-B5txg8z0.mjs} +5 -5
- package/fesm2022/{acorex-modules-document-management-attachment-widget.component-B_tjfzIn.mjs.map → acorex-modules-document-management-attachment-widget.component-B5txg8z0.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-document-management-create-folder-dialog.component-DNdRcCAs.mjs → acorex-modules-document-management-create-folder-dialog.component-LfnTz49a.mjs} +5 -5
- package/fesm2022/{acorex-modules-document-management-create-folder-dialog.component-DNdRcCAs.mjs.map → acorex-modules-document-management-create-folder-dialog.component-LfnTz49a.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-document-management-details-view.component-JsK1UgZh.mjs → acorex-modules-document-management-details-view.component-Co5F8eWp.mjs} +5 -5
- package/fesm2022/{acorex-modules-document-management-details-view.component-JsK1UgZh.mjs.map → acorex-modules-document-management-details-view.component-Co5F8eWp.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-document-management-drive-choose.component-DJT9oLek.mjs → acorex-modules-document-management-drive-choose.component-DFRdS7s1.mjs} +5 -5
- package/fesm2022/{acorex-modules-document-management-drive-choose.component-DJT9oLek.mjs.map → acorex-modules-document-management-drive-choose.component-DFRdS7s1.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-document-management-drive.component-DYxpvUWX.mjs → acorex-modules-document-management-drive.component-jGs09Jrd.mjs} +8 -8
- package/fesm2022/{acorex-modules-document-management-drive.component-DYxpvUWX.mjs.map → acorex-modules-document-management-drive.component-jGs09Jrd.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-document-management-large-icons-view.component-B324V2hL.mjs → acorex-modules-document-management-large-icons-view.component-DD9_xgL4.mjs} +5 -5
- package/fesm2022/{acorex-modules-document-management-large-icons-view.component-B324V2hL.mjs.map → acorex-modules-document-management-large-icons-view.component-DD9_xgL4.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-document-management-large-tiles-view.component-V5gHyu9X.mjs → acorex-modules-document-management-large-tiles-view.component-CNBUzaUz.mjs} +5 -5
- package/fesm2022/{acorex-modules-document-management-large-tiles-view.component-V5gHyu9X.mjs.map → acorex-modules-document-management-large-tiles-view.component-CNBUzaUz.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-document-management-link-dialog.component-B-BzU_4Y.mjs → acorex-modules-document-management-link-dialog.component-CXzR7mUW.mjs} +4 -4
- package/fesm2022/{acorex-modules-document-management-link-dialog.component-B-BzU_4Y.mjs.map → acorex-modules-document-management-link-dialog.component-CXzR7mUW.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-document-management-list-view.component-Bm2EH2aT.mjs → acorex-modules-document-management-list-view.component-D4DbyB6W.mjs} +5 -5
- package/fesm2022/{acorex-modules-document-management-list-view.component-Bm2EH2aT.mjs.map → acorex-modules-document-management-list-view.component-D4DbyB6W.mjs.map} +1 -1
- package/fesm2022/acorex-modules-document-management-meta-choose-popup.component-CmMvrfKW.mjs +315 -0
- package/fesm2022/acorex-modules-document-management-meta-choose-popup.component-CmMvrfKW.mjs.map +1 -0
- package/fesm2022/{acorex-modules-document-management-meta-selector-widget-column.component-BDhqsc2j.mjs → acorex-modules-document-management-meta-selector-widget-column.component-DHQjyq8s.mjs} +4 -4
- package/fesm2022/{acorex-modules-document-management-meta-selector-widget-column.component-BDhqsc2j.mjs.map → acorex-modules-document-management-meta-selector-widget-column.component-DHQjyq8s.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-document-management-meta-selector-widget-designer.component-C4GC0GbF.mjs → acorex-modules-document-management-meta-selector-widget-designer.component-Cc6n71wn.mjs} +4 -4
- package/fesm2022/{acorex-modules-document-management-meta-selector-widget-designer.component-C4GC0GbF.mjs.map → acorex-modules-document-management-meta-selector-widget-designer.component-Cc6n71wn.mjs.map} +1 -1
- package/fesm2022/acorex-modules-document-management-meta-selector-widget-view.component-D88h9eR6.mjs +31 -0
- package/fesm2022/acorex-modules-document-management-meta-selector-widget-view.component-D88h9eR6.mjs.map +1 -0
- package/fesm2022/{acorex-modules-document-management-permission-definition.provider-DGqVDVLJ.mjs → acorex-modules-document-management-permission-definition.provider-DoOyhnwQ.mjs} +2 -2
- package/fesm2022/{acorex-modules-document-management-permission-definition.provider-DGqVDVLJ.mjs.map → acorex-modules-document-management-permission-definition.provider-DoOyhnwQ.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-document-management-rename-node-dialog.component-LgpvDguk.mjs → acorex-modules-document-management-rename-node-dialog.component-JDZWsFXL.mjs} +5 -5
- package/fesm2022/{acorex-modules-document-management-rename-node-dialog.component-LgpvDguk.mjs.map → acorex-modules-document-management-rename-node-dialog.component-JDZWsFXL.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-document-management-share-dialog.component-DzuYhAD4.mjs → acorex-modules-document-management-share-dialog.component-DTzXwqHw.mjs} +4 -4
- package/fesm2022/{acorex-modules-document-management-share-dialog.component-DzuYhAD4.mjs.map → acorex-modules-document-management-share-dialog.component-DTzXwqHw.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-document-management-share-email-dialog.component-DNN_3JF2.mjs → acorex-modules-document-management-share-email-dialog.component-BaNzKKG4.mjs} +4 -4
- package/fesm2022/{acorex-modules-document-management-share-email-dialog.component-DNN_3JF2.mjs.map → acorex-modules-document-management-share-email-dialog.component-BaNzKKG4.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-document-management-small-icons-view.component-BwFoe1vd.mjs → acorex-modules-document-management-small-icons-view.component-BNTmgtYr.mjs} +5 -5
- package/fesm2022/{acorex-modules-document-management-small-icons-view.component-BwFoe1vd.mjs.map → acorex-modules-document-management-small-icons-view.component-BNTmgtYr.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-document-management-small-tiles-view.component-B5gp0wus.mjs → acorex-modules-document-management-small-tiles-view.component-CbCBAKyR.mjs} +5 -5
- package/fesm2022/{acorex-modules-document-management-small-tiles-view.component-B5gp0wus.mjs.map → acorex-modules-document-management-small-tiles-view.component-CbCBAKyR.mjs.map} +1 -1
- package/fesm2022/acorex-modules-document-management.mjs +1 -1
- package/fesm2022/{acorex-modules-form-template-management-acorex-modules-form-template-management-B3o427If.mjs → acorex-modules-form-template-management-acorex-modules-form-template-management-BsAsK1EG.mjs} +58 -57
- package/fesm2022/{acorex-modules-form-template-management-acorex-modules-form-template-management-B3o427If.mjs.map → acorex-modules-form-template-management-acorex-modules-form-template-management-BsAsK1EG.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-form-template-management-category.entity-B7dGrmoa.mjs → acorex-modules-form-template-management-category.entity-B3iAtREq.mjs} +2 -2
- package/fesm2022/{acorex-modules-form-template-management-category.entity-B7dGrmoa.mjs.map → acorex-modules-form-template-management-category.entity-B3iAtREq.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-form-template-management-designer.page-DaTGU3w_.mjs → acorex-modules-form-template-management-designer.page-B-TIUKl7.mjs} +4 -4
- package/fesm2022/{acorex-modules-form-template-management-designer.page-DaTGU3w_.mjs.map → acorex-modules-form-template-management-designer.page-B-TIUKl7.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-form-template-management-permission-definition.provider-CjjlgO0w.mjs → acorex-modules-form-template-management-permission-definition.provider-CTG95UDp.mjs} +2 -2
- package/fesm2022/{acorex-modules-form-template-management-permission-definition.provider-CjjlgO0w.mjs.map → acorex-modules-form-template-management-permission-definition.provider-CTG95UDp.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-form-template-management-settings.provider-CiSjuHGI.mjs → acorex-modules-form-template-management-settings.provider-BmFufTUd.mjs} +2 -2
- package/fesm2022/{acorex-modules-form-template-management-settings.provider-CiSjuHGI.mjs.map → acorex-modules-form-template-management-settings.provider-BmFufTUd.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-form-template-management-template-picker.component-CQZ37yC2.mjs → acorex-modules-form-template-management-template-picker.component-CNwhdnGC.mjs} +4 -4
- package/fesm2022/{acorex-modules-form-template-management-template-picker.component-CQZ37yC2.mjs.map → acorex-modules-form-template-management-template-picker.component-CNwhdnGC.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-form-template-management-template-widget-edit.component-DUeV0yO8.mjs → acorex-modules-form-template-management-template-widget-edit.component-BNIx16WW.mjs} +5 -5
- package/fesm2022/{acorex-modules-form-template-management-template-widget-edit.component-DUeV0yO8.mjs.map → acorex-modules-form-template-management-template-widget-edit.component-BNIx16WW.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-form-template-management-template.entity-Cps77n3G.mjs → acorex-modules-form-template-management-template.entity-BGsixiEI.mjs} +2 -2
- package/fesm2022/{acorex-modules-form-template-management-template.entity-Cps77n3G.mjs.map → acorex-modules-form-template-management-template.entity-BGsixiEI.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-form-template-management-viewer-popup.component-K2ZznaDw.mjs → acorex-modules-form-template-management-viewer-popup.component-CzjuUz4o.mjs} +9 -6
- package/fesm2022/acorex-modules-form-template-management-viewer-popup.component-CzjuUz4o.mjs.map +1 -0
- package/fesm2022/acorex-modules-form-template-management.mjs +1 -1
- package/fesm2022/{acorex-modules-issue-management-acorex-modules-issue-management-Blyh8QVB.mjs → acorex-modules-issue-management-acorex-modules-issue-management-C2JoHgaa.mjs} +24 -24
- package/fesm2022/{acorex-modules-issue-management-acorex-modules-issue-management-Blyh8QVB.mjs.map → acorex-modules-issue-management-acorex-modules-issue-management-C2JoHgaa.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-issue-management-capture-screen.component-BzUN6Cty.mjs → acorex-modules-issue-management-capture-screen.component-DTtUkL78.mjs} +5 -5
- package/fesm2022/{acorex-modules-issue-management-capture-screen.component-BzUN6Cty.mjs.map → acorex-modules-issue-management-capture-screen.component-DTtUkL78.mjs.map} +1 -1
- package/fesm2022/acorex-modules-issue-management.mjs +1 -1
- package/fesm2022/acorex-modules-log-management.mjs +10 -10
- package/fesm2022/acorex-modules-log-management.mjs.map +1 -1
- package/fesm2022/acorex-modules-notification-management.mjs +35 -35
- package/fesm2022/acorex-modules-notification-management.mjs.map +1 -1
- package/fesm2022/{acorex-modules-organization-management-add-item.component-COUAmxM8.mjs → acorex-modules-organization-management-add-item.component-D99TugmE.mjs} +4 -4
- package/fesm2022/{acorex-modules-organization-management-add-item.component-COUAmxM8.mjs.map → acorex-modules-organization-management-add-item.component-D99TugmE.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-organization-management-org-chart-configuration.page-DjGUUbel.mjs → acorex-modules-organization-management-org-chart-configuration.page-DTNqHbxt.mjs} +5 -5
- package/fesm2022/{acorex-modules-organization-management-org-chart-configuration.page-DjGUUbel.mjs.map → acorex-modules-organization-management-org-chart-configuration.page-DTNqHbxt.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-organization-management-org-chart-configuration.service-DeoDX_ir.mjs → acorex-modules-organization-management-org-chart-configuration.service-BSO0GrAW.mjs} +4 -4
- package/fesm2022/{acorex-modules-organization-management-org-chart-configuration.service-DeoDX_ir.mjs.map → acorex-modules-organization-management-org-chart-configuration.service-BSO0GrAW.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-organization-management-org-chart.page-xlNWhN4W.mjs → acorex-modules-organization-management-org-chart.page-ioMhEPnQ.mjs} +12 -12
- package/fesm2022/{acorex-modules-organization-management-org-chart.page-xlNWhN4W.mjs.map → acorex-modules-organization-management-org-chart.page-ioMhEPnQ.mjs.map} +1 -1
- package/fesm2022/acorex-modules-organization-management-role.entity-BDErzNv-.mjs.map +1 -1
- package/fesm2022/acorex-modules-organization-management.mjs +122 -122
- package/fesm2022/acorex-modules-organization-management.mjs.map +1 -1
- package/fesm2022/{acorex-modules-platform-management-acorex-modules-platform-management-DqpAYmHM.mjs → acorex-modules-platform-management-acorex-modules-platform-management-CFoPmixl.mjs} +933 -315
- package/fesm2022/acorex-modules-platform-management-acorex-modules-platform-management-CFoPmixl.mjs.map +1 -0
- package/fesm2022/{acorex-modules-platform-management-list-version.component-DidjxkmH.mjs → acorex-modules-platform-management-list-version.component-D0-Ya-Yx.mjs} +7 -7
- package/fesm2022/{acorex-modules-platform-management-list-version.component-DidjxkmH.mjs.map → acorex-modules-platform-management-list-version.component-D0-Ya-Yx.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-platform-management-settings.provider-DcHKHrSK.mjs → acorex-modules-platform-management-settings.provider--ARXqBUY.mjs} +35 -25
- package/fesm2022/acorex-modules-platform-management-settings.provider--ARXqBUY.mjs.map +1 -0
- package/fesm2022/acorex-modules-platform-management.mjs +1 -1
- package/fesm2022/acorex-modules-project-management.mjs +43 -43
- package/fesm2022/acorex-modules-project-management.mjs.map +1 -1
- package/fesm2022/acorex-modules-report-management-report-create-root.component-LrE6TkIp.mjs +302 -0
- package/fesm2022/acorex-modules-report-management-report-create-root.component-LrE6TkIp.mjs.map +1 -0
- package/fesm2022/acorex-modules-report-management-report-runner-root-page.component-BntIoMfN.mjs +617 -0
- package/fesm2022/acorex-modules-report-management-report-runner-root-page.component-BntIoMfN.mjs.map +1 -0
- package/fesm2022/acorex-modules-report-management-run.command-CoXvPC15.mjs +20 -0
- package/fesm2022/acorex-modules-report-management-run.command-CoXvPC15.mjs.map +1 -0
- package/fesm2022/acorex-modules-report-management.mjs +976 -0
- package/fesm2022/acorex-modules-report-management.mjs.map +1 -0
- package/fesm2022/acorex-modules-scheduler-job-management.mjs +14 -14
- package/fesm2022/acorex-modules-scheduler-job-management.mjs.map +1 -1
- package/fesm2022/acorex-modules-security-management.mjs +624 -120
- package/fesm2022/acorex-modules-security-management.mjs.map +1 -1
- package/fesm2022/{acorex-modules-settings-management-setting-page.component-B2CEFpES.mjs → acorex-modules-settings-management-setting-page.component-BKwKLUpD.mjs} +4 -4
- package/fesm2022/{acorex-modules-settings-management-setting-page.component-B2CEFpES.mjs.map → acorex-modules-settings-management-setting-page.component-BKwKLUpD.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-settings-management-setting-view.component-DnD83gFz.mjs → acorex-modules-settings-management-setting-view.component-Dco7MvZr.mjs} +4 -4
- package/fesm2022/{acorex-modules-settings-management-setting-view.component-DnD83gFz.mjs.map → acorex-modules-settings-management-setting-view.component-Dco7MvZr.mjs.map} +1 -1
- package/fesm2022/acorex-modules-settings-management.mjs +6 -6
- package/fesm2022/acorex-modules-settings-management.mjs.map +1 -1
- package/fesm2022/acorex-modules-text-template-management.mjs +24 -24
- package/fesm2022/acorex-modules-text-template-management.mjs.map +1 -1
- package/fesm2022/acorex-modules-training-management.mjs +43 -44
- package/fesm2022/acorex-modules-training-management.mjs.map +1 -1
- package/fesm2022/acorex-modules-workflow-management-task-board.page-ChW_Hwf2.mjs +762 -0
- package/fesm2022/acorex-modules-workflow-management-task-board.page-ChW_Hwf2.mjs.map +1 -0
- package/fesm2022/acorex-modules-workflow-management.mjs +12 -12
- package/fesm2022/acorex-modules-workflow-management.mjs.map +1 -1
- package/package.json +9 -1
- package/platform-management/index.d.ts +235 -8
- package/report-management/README.md +356 -0
- package/report-management/index.d.ts +46 -0
- package/security-management/index.d.ts +162 -2
- package/fesm2022/acorex-modules-auth-acorex-modules-auth-B10cRw3M.mjs.map +0 -1
- package/fesm2022/acorex-modules-auth-password.component-rE9yrcGW.mjs.map +0 -1
- package/fesm2022/acorex-modules-document-management-acorex-modules-document-management-ClH75xx1.mjs.map +0 -1
- package/fesm2022/acorex-modules-document-management-lock-dialog.component-DvZ-vrUE.mjs +0 -51
- package/fesm2022/acorex-modules-document-management-lock-dialog.component-DvZ-vrUE.mjs.map +0 -1
- package/fesm2022/acorex-modules-document-management-meta-choose-popup.component-q6mDKrFi.mjs +0 -190
- package/fesm2022/acorex-modules-document-management-meta-choose-popup.component-q6mDKrFi.mjs.map +0 -1
- package/fesm2022/acorex-modules-document-management-meta-selector-widget-view.component-rlSWRGGl.mjs +0 -32
- package/fesm2022/acorex-modules-document-management-meta-selector-widget-view.component-rlSWRGGl.mjs.map +0 -1
- package/fesm2022/acorex-modules-document-management-unlock-dialog.component-B_TMgAl1.mjs +0 -36
- package/fesm2022/acorex-modules-document-management-unlock-dialog.component-B_TMgAl1.mjs.map +0 -1
- package/fesm2022/acorex-modules-form-template-management-viewer-popup.component-K2ZznaDw.mjs.map +0 -1
- package/fesm2022/acorex-modules-platform-management-acorex-modules-platform-management-DqpAYmHM.mjs.map +0 -1
- package/fesm2022/acorex-modules-platform-management-settings.provider-DcHKHrSK.mjs.map +0 -1
- package/fesm2022/acorex-modules-security-management-permissions-editor.component-B4TdyHtv.mjs +0 -218
- package/fesm2022/acorex-modules-security-management-permissions-editor.component-B4TdyHtv.mjs.map +0 -1
- package/fesm2022/acorex-modules-security-management-permissions-widget-column.component-DTMj6gxb.mjs +0 -41
- package/fesm2022/acorex-modules-security-management-permissions-widget-column.component-DTMj6gxb.mjs.map +0 -1
- package/fesm2022/acorex-modules-security-management-permissions-widget-designer.component-BJdbKpRQ.mjs +0 -20
- package/fesm2022/acorex-modules-security-management-permissions-widget-designer.component-BJdbKpRQ.mjs.map +0 -1
- package/fesm2022/acorex-modules-security-management-permissions-widget-edit.component-GTmDlgWW.mjs +0 -51
- package/fesm2022/acorex-modules-security-management-permissions-widget-edit.component-GTmDlgWW.mjs.map +0 -1
- package/fesm2022/acorex-modules-security-management-permissions-widget-print.component-BZ75aI18.mjs +0 -21
- package/fesm2022/acorex-modules-security-management-permissions-widget-print.component-BZ75aI18.mjs.map +0 -1
- package/fesm2022/acorex-modules-security-management-permissions-widget-view.component-CYQqerAX.mjs +0 -20
- package/fesm2022/acorex-modules-security-management-permissions-widget-view.component-CYQqerAX.mjs.map +0 -1
- package/fesm2022/acorex-modules-workflow-management-task-board.page-R4x5Rq-D.mjs +0 -494
- package/fesm2022/acorex-modules-workflow-management-task-board.page-R4x5Rq-D.mjs.map +0 -1
package/common/index.d.ts
CHANGED
@@ -11,6 +11,7 @@ import { AXPEntity, AXPMenuProvider, AXPMenuProviderContext, AXPSearchCommandPro
|
|
11
11
|
import { AXPEntityDefinitionLoader, AXPEntityDefinitionPreloader, AXPEntityPreloadEntity } from '@acorex/platform/layout/entity';
|
12
12
|
import { Subject } from 'rxjs';
|
13
13
|
import { AXPopupService } from '@acorex/components/popup';
|
14
|
+
import { AXFormComponent } from '@acorex/components/form';
|
14
15
|
|
15
16
|
declare class AXPGlobalSearchModule {
|
16
17
|
constructor(appInitService: AXPAppStartUpService, injector: Injector);
|
@@ -171,18 +172,37 @@ declare class AXMLockPopupWorkflowAction extends AXPWorkflowAction {
|
|
171
172
|
}
|
172
173
|
declare const AXMLockPopupWorkflow: AXPWorkflow;
|
173
174
|
|
175
|
+
declare class AXMUnlockConfirmWorkflowAction extends AXPWorkflowAction {
|
176
|
+
private dialogService;
|
177
|
+
private translationService;
|
178
|
+
private lockService;
|
179
|
+
private sessionService;
|
180
|
+
execute(context: AXPWorkflowContext): Promise<void>;
|
181
|
+
}
|
182
|
+
declare const AXMUnlockConfirmWorkflow: AXPWorkflow;
|
183
|
+
|
184
|
+
interface LockDuration {
|
185
|
+
value: string;
|
186
|
+
text: string;
|
187
|
+
hours?: number;
|
188
|
+
}
|
174
189
|
declare class AXPLockPopupComponent extends AXBasePageComponent {
|
175
|
-
lockAction: 'lock' | 'unlock';
|
176
190
|
refId: string;
|
177
191
|
refType: string;
|
178
192
|
protected readonly isBusy: i0.WritableSignal<boolean>;
|
193
|
+
protected readonly form: i0.Signal<AXFormComponent>;
|
179
194
|
private readonly lockService;
|
180
195
|
private readonly sessionService;
|
196
|
+
private readonly translationService;
|
197
|
+
protected duration: string | null;
|
198
|
+
protected reason: string | null;
|
199
|
+
protected lockDurations: LockDuration[];
|
200
|
+
ngOnInit(): Promise<void>;
|
181
201
|
handleConfirm(): Promise<void>;
|
182
202
|
handleCancel(): void;
|
183
203
|
static ɵfac: i0.ɵɵFactoryDeclaration<AXPLockPopupComponent, never>;
|
184
204
|
static ɵcmp: i0.ɵɵComponentDeclaration<AXPLockPopupComponent, "axp-lock-popup", never, {}, {}, never, never, true, never>;
|
185
205
|
}
|
186
206
|
|
187
|
-
export { AXMCommonModule, AXMEntityProvider, AXMLockPopupWorkflow, AXMLockPopupWorkflowAction, AXMMenuProvider, AXMSearchCommandProvider, AXMSettingProvider, AXPGlobalSearchModule, AXPGlobalSearchViewModel, AXPLockPopupComponent, AXPVersionHistoryModule, AXPWidgetsList, AXP_GLOBAL_SEARCH_CONFIG_TOKEN, RootConfig };
|
207
|
+
export { AXMCommonModule, AXMEntityProvider, AXMLockPopupWorkflow, AXMLockPopupWorkflowAction, AXMMenuProvider, AXMSearchCommandProvider, AXMSettingProvider, AXMUnlockConfirmWorkflow, AXMUnlockConfirmWorkflowAction, AXPGlobalSearchModule, AXPGlobalSearchViewModel, AXPLockPopupComponent, AXPVersionHistoryModule, AXPWidgetsList, AXP_GLOBAL_SEARCH_CONFIG_TOKEN, RootConfig };
|
188
208
|
export type { AXPGlobalSearchConfigs };
|
@@ -0,0 +1,568 @@
|
|
1
|
+
# Contact Management Module
|
2
|
+
|
3
|
+
This module provides comprehensive contact management functionality for the ACoreX Platform, supporting both individual and organizational contacts with dynamic contact methods, addresses, categorization, and relationship mapping.
|
4
|
+
|
5
|
+
## Overview
|
6
|
+
|
7
|
+
The Contact Management module enables organizations to maintain detailed contact records with flexible contact methods, structured addresses with geographic support, and complex relationship mapping between contacts. It supports both personal and business contacts with comprehensive metadata and categorization.
|
8
|
+
|
9
|
+
## Core Features
|
10
|
+
|
11
|
+
- **Unified Contact Management**: Single entity supporting individuals and organizations
|
12
|
+
- **Dynamic Contact Methods**: Flexible contact methods with type-based validation
|
13
|
+
- **International Address Support**: Structured address format with map integration
|
14
|
+
- **Contact Relationships**: Map relationships between contacts (family, business, etc.)
|
15
|
+
- **Categorization System**: Flexible contact types and sources for organization
|
16
|
+
- **Geographic Integration**: Map widget support for address coordinates
|
17
|
+
- **Validation & Verification**: Contact method verification and validation rules
|
18
|
+
|
19
|
+
## Entity Architecture
|
20
|
+
|
21
|
+
The module consists of 8 interconnected entities organized in a hierarchical structure:
|
22
|
+
|
23
|
+
```
|
24
|
+
Contact (Main Entity)
|
25
|
+
├── ContactType (Lookup)
|
26
|
+
├── ContactSource (Lookup)
|
27
|
+
├── ContactMethod (Related)
|
28
|
+
│ └── ContactMethodType (Lookup with Regex)
|
29
|
+
├── ContactAddress (Related)
|
30
|
+
│ └── AddressType (Lookup)
|
31
|
+
└── ContactRelationship (Related)
|
32
|
+
```
|
33
|
+
|
34
|
+
## Entity Definitions
|
35
|
+
|
36
|
+
### 1. Contact (Main Entity)
|
37
|
+
|
38
|
+
The primary entity representing individuals or organizations with core contact information.
|
39
|
+
|
40
|
+
**Key Properties:**
|
41
|
+
|
42
|
+
- `displayName`: Primary display name
|
43
|
+
- `firstName`, `lastName`: Individual names
|
44
|
+
- `title`, `jobTitle`: Professional titles
|
45
|
+
- `company`: Organization affiliation
|
46
|
+
- `contactTypeId`: Type classification
|
47
|
+
- `contactSourceId`: Source tracking
|
48
|
+
- `priority`: Contact priority level
|
49
|
+
- `status`: Current status
|
50
|
+
- `isVip`: VIP designation
|
51
|
+
- `notes`: Additional notes
|
52
|
+
- `lastContactDate`: Last interaction date
|
53
|
+
|
54
|
+
**Sample Data:**
|
55
|
+
|
56
|
+
```json
|
57
|
+
{
|
58
|
+
"id": "c1",
|
59
|
+
"displayName": "John Smith",
|
60
|
+
"firstName": "John",
|
61
|
+
"lastName": "Smith",
|
62
|
+
"title": "Mr.",
|
63
|
+
"jobTitle": "Software Engineer",
|
64
|
+
"company": "Tech Solutions Inc.",
|
65
|
+
"contactTypeId": "ct1",
|
66
|
+
"contactSourceId": "cs1",
|
67
|
+
"priority": "High",
|
68
|
+
"status": "Active",
|
69
|
+
"isVip": true,
|
70
|
+
"notes": "Key technical contact for platform integration",
|
71
|
+
"lastContactDate": "2024-01-15T10:30:00Z"
|
72
|
+
}
|
73
|
+
```
|
74
|
+
|
75
|
+
### 2. ContactType (Lookup Entity)
|
76
|
+
|
77
|
+
Categorizes contacts by type (Individual, Organization, Vendor, Client, etc.).
|
78
|
+
|
79
|
+
**Key Properties:**
|
80
|
+
|
81
|
+
- `name`: Type name
|
82
|
+
- `description`: Type description
|
83
|
+
- `icon`: FontAwesome icon
|
84
|
+
- `isDefault`: Default selection
|
85
|
+
- `isActive`: Active status
|
86
|
+
- `order`: Display order
|
87
|
+
|
88
|
+
**Sample Data:**
|
89
|
+
|
90
|
+
```json
|
91
|
+
[
|
92
|
+
{
|
93
|
+
"id": "ct1",
|
94
|
+
"name": "Individual",
|
95
|
+
"description": "Personal contact",
|
96
|
+
"icon": "fa-light fa-user",
|
97
|
+
"isDefault": true,
|
98
|
+
"isActive": true,
|
99
|
+
"order": 1
|
100
|
+
},
|
101
|
+
{
|
102
|
+
"id": "ct2",
|
103
|
+
"name": "Organization",
|
104
|
+
"description": "Company or organization",
|
105
|
+
"icon": "fa-light fa-building",
|
106
|
+
"isDefault": false,
|
107
|
+
"isActive": true,
|
108
|
+
"order": 2
|
109
|
+
},
|
110
|
+
{
|
111
|
+
"id": "ct3",
|
112
|
+
"name": "Vendor",
|
113
|
+
"description": "Service provider or supplier",
|
114
|
+
"icon": "fa-light fa-truck",
|
115
|
+
"isDefault": false,
|
116
|
+
"isActive": true,
|
117
|
+
"order": 3
|
118
|
+
}
|
119
|
+
]
|
120
|
+
```
|
121
|
+
|
122
|
+
### 3. ContactSource (Lookup Entity)
|
123
|
+
|
124
|
+
Tracks the source or origin of contact acquisition.
|
125
|
+
|
126
|
+
**Key Properties:**
|
127
|
+
|
128
|
+
- `name`: Source name
|
129
|
+
- `description`: Source description
|
130
|
+
- `icon`: FontAwesome icon
|
131
|
+
- `isDefault`: Default selection
|
132
|
+
- `isActive`: Active status
|
133
|
+
- `order`: Display order
|
134
|
+
|
135
|
+
**Sample Data:**
|
136
|
+
|
137
|
+
```json
|
138
|
+
[
|
139
|
+
{
|
140
|
+
"id": "cs1",
|
141
|
+
"name": "Website",
|
142
|
+
"description": "Contact form submission",
|
143
|
+
"icon": "fa-light fa-globe",
|
144
|
+
"isDefault": true,
|
145
|
+
"isActive": true,
|
146
|
+
"order": 1
|
147
|
+
},
|
148
|
+
{
|
149
|
+
"id": "cs2",
|
150
|
+
"name": "Referral",
|
151
|
+
"description": "Referred by existing contact",
|
152
|
+
"icon": "fa-light fa-user-plus",
|
153
|
+
"isDefault": false,
|
154
|
+
"isActive": true,
|
155
|
+
"order": 2
|
156
|
+
},
|
157
|
+
{
|
158
|
+
"id": "cs3",
|
159
|
+
"name": "Event",
|
160
|
+
"description": "Met at conference or event",
|
161
|
+
"icon": "fa-light fa-calendar-days",
|
162
|
+
"isDefault": false,
|
163
|
+
"isActive": true,
|
164
|
+
"order": 3
|
165
|
+
}
|
166
|
+
]
|
167
|
+
```
|
168
|
+
|
169
|
+
### 4. ContactMethodType (Lookup with Validation)
|
170
|
+
|
171
|
+
Defines contact method types with regex validation patterns.
|
172
|
+
|
173
|
+
**Key Properties:**
|
174
|
+
|
175
|
+
- `name`: Method type name
|
176
|
+
- `validationRegex`: Validation pattern
|
177
|
+
- `placeholder`: Input placeholder
|
178
|
+
- `isActive`: Active status
|
179
|
+
|
180
|
+
**Sample Data:**
|
181
|
+
|
182
|
+
```json
|
183
|
+
[
|
184
|
+
{
|
185
|
+
"id": "cmt1",
|
186
|
+
"name": "Email",
|
187
|
+
"validationRegex": "^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\\.[a-zA-Z]{2,}$",
|
188
|
+
"placeholder": "example@domain.com",
|
189
|
+
"isActive": true
|
190
|
+
},
|
191
|
+
{
|
192
|
+
"id": "cmt2",
|
193
|
+
"name": "Phone",
|
194
|
+
"validationRegex": "^[\\+]?[1-9]?[0-9]{7,15}$",
|
195
|
+
"placeholder": "+1-555-123-4567",
|
196
|
+
"isActive": true
|
197
|
+
},
|
198
|
+
{
|
199
|
+
"id": "cmt3",
|
200
|
+
"name": "LinkedIn",
|
201
|
+
"validationRegex": "^https://www\\.linkedin\\.com/in/[a-zA-Z0-9-]+/?$",
|
202
|
+
"placeholder": "https://www.linkedin.com/in/username",
|
203
|
+
"isActive": true
|
204
|
+
},
|
205
|
+
{
|
206
|
+
"id": "cmt4",
|
207
|
+
"name": "Skype",
|
208
|
+
"validationRegex": "^[a-zA-Z][a-zA-Z0-9._-]{5,31}$",
|
209
|
+
"placeholder": "skype_username",
|
210
|
+
"isActive": true
|
211
|
+
}
|
212
|
+
]
|
213
|
+
```
|
214
|
+
|
215
|
+
### 5. ContactMethod (Related Entity)
|
216
|
+
|
217
|
+
Dynamic contact methods linked to contacts with type-based validation.
|
218
|
+
|
219
|
+
**Key Properties:**
|
220
|
+
|
221
|
+
- `contactId`: Parent contact reference
|
222
|
+
- `methodTypeId`: Method type reference
|
223
|
+
- `value`: Contact method value
|
224
|
+
- `isPrimary`: Primary method flag
|
225
|
+
- `isVerified`: Verification status
|
226
|
+
- `notes`: Additional notes
|
227
|
+
|
228
|
+
**Sample Data:**
|
229
|
+
|
230
|
+
```json
|
231
|
+
[
|
232
|
+
{
|
233
|
+
"id": "cm1",
|
234
|
+
"contactId": "c1",
|
235
|
+
"methodTypeId": "cmt1",
|
236
|
+
"value": "john.smith@techsolutions.com",
|
237
|
+
"isPrimary": true,
|
238
|
+
"isVerified": true,
|
239
|
+
"notes": "Work email - primary contact"
|
240
|
+
},
|
241
|
+
{
|
242
|
+
"id": "cm2",
|
243
|
+
"contactId": "c1",
|
244
|
+
"methodTypeId": "cmt2",
|
245
|
+
"value": "+1-555-123-4567",
|
246
|
+
"isPrimary": true,
|
247
|
+
"isVerified": true,
|
248
|
+
"notes": "Mobile phone"
|
249
|
+
},
|
250
|
+
{
|
251
|
+
"id": "cm3",
|
252
|
+
"contactId": "c1",
|
253
|
+
"methodTypeId": "cmt3",
|
254
|
+
"value": "https://www.linkedin.com/in/johnsmith-dev",
|
255
|
+
"isPrimary": false,
|
256
|
+
"isVerified": false,
|
257
|
+
"notes": "Professional LinkedIn profile"
|
258
|
+
}
|
259
|
+
]
|
260
|
+
```
|
261
|
+
|
262
|
+
### 6. AddressType (Lookup Entity)
|
263
|
+
|
264
|
+
Categorizes address types (Home, Work, Billing, Shipping, etc.).
|
265
|
+
|
266
|
+
**Key Properties:**
|
267
|
+
|
268
|
+
- `name`: Address type name
|
269
|
+
- `description`: Type description
|
270
|
+
- `icon`: FontAwesome icon
|
271
|
+
- `isDefault`: Default selection
|
272
|
+
- `isActive`: Active status
|
273
|
+
- `order`: Display order
|
274
|
+
|
275
|
+
**Sample Data:**
|
276
|
+
|
277
|
+
```json
|
278
|
+
[
|
279
|
+
{
|
280
|
+
"id": "at1",
|
281
|
+
"name": "Work",
|
282
|
+
"description": "Business office address",
|
283
|
+
"icon": "fa-light fa-building",
|
284
|
+
"isDefault": true,
|
285
|
+
"isActive": true,
|
286
|
+
"order": 1
|
287
|
+
},
|
288
|
+
{
|
289
|
+
"id": "at2",
|
290
|
+
"name": "Home",
|
291
|
+
"description": "Residential address",
|
292
|
+
"icon": "fa-light fa-home",
|
293
|
+
"isDefault": false,
|
294
|
+
"isActive": true,
|
295
|
+
"order": 2
|
296
|
+
},
|
297
|
+
{
|
298
|
+
"id": "at3",
|
299
|
+
"name": "Billing",
|
300
|
+
"description": "Billing address",
|
301
|
+
"icon": "fa-light fa-credit-card",
|
302
|
+
"isDefault": false,
|
303
|
+
"isActive": true,
|
304
|
+
"order": 3
|
305
|
+
}
|
306
|
+
]
|
307
|
+
```
|
308
|
+
|
309
|
+
### 7. ContactAddress (Related Entity)
|
310
|
+
|
311
|
+
Structured international addresses with geographic coordinates support.
|
312
|
+
|
313
|
+
**Key Properties:**
|
314
|
+
|
315
|
+
- `contactId`: Parent contact reference
|
316
|
+
- `addressTypeId`: Address type reference
|
317
|
+
- `street1`, `street2`: Street address lines
|
318
|
+
- `city`, `state`, `country`: Geographic location
|
319
|
+
- `postalCode`: Postal/ZIP code
|
320
|
+
- `coordinates`: Map coordinates (lat,lng)
|
321
|
+
- `isPrimary`: Primary address flag
|
322
|
+
- `notes`: Additional notes
|
323
|
+
|
324
|
+
**Sample Data:**
|
325
|
+
|
326
|
+
```json
|
327
|
+
[
|
328
|
+
{
|
329
|
+
"id": "ca1",
|
330
|
+
"contactId": "c1",
|
331
|
+
"addressTypeId": "at1",
|
332
|
+
"street1": "123 Tech Boulevard",
|
333
|
+
"street2": "Suite 456",
|
334
|
+
"city": "San Francisco",
|
335
|
+
"state": "California",
|
336
|
+
"country": "United States",
|
337
|
+
"postalCode": "94107",
|
338
|
+
"coordinates": "37.7749,-122.4194",
|
339
|
+
"isPrimary": true,
|
340
|
+
"notes": "Main office building, parking available"
|
341
|
+
},
|
342
|
+
{
|
343
|
+
"id": "ca2",
|
344
|
+
"contactId": "c1",
|
345
|
+
"addressTypeId": "at2",
|
346
|
+
"street1": "789 Residential Street",
|
347
|
+
"street2": "Apt 12B",
|
348
|
+
"city": "Oakland",
|
349
|
+
"state": "California",
|
350
|
+
"country": "United States",
|
351
|
+
"postalCode": "94610",
|
352
|
+
"coordinates": "37.8044,-122.2711",
|
353
|
+
"isPrimary": false,
|
354
|
+
"notes": "Home address"
|
355
|
+
}
|
356
|
+
]
|
357
|
+
```
|
358
|
+
|
359
|
+
### 8. ContactRelationship (Related Entity)
|
360
|
+
|
361
|
+
Maps relationships between contacts (family, business, professional).
|
362
|
+
|
363
|
+
**Key Properties:**
|
364
|
+
|
365
|
+
- `contactId`: Primary contact reference
|
366
|
+
- `relatedContactId`: Related contact reference
|
367
|
+
- `relationshipType`: Relationship classification
|
368
|
+
- `description`: Relationship details
|
369
|
+
- `isActive`: Active relationship status
|
370
|
+
|
371
|
+
**Available Relationship Types:**
|
372
|
+
|
373
|
+
- `parent` - Parent
|
374
|
+
- `child` - Child
|
375
|
+
- `spouse` - Spouse
|
376
|
+
- `sibling` - Sibling
|
377
|
+
- `friend` - Friend
|
378
|
+
- `colleague` - Colleague
|
379
|
+
- `business_partner` - Business Partner
|
380
|
+
- `vendor` - Vendor
|
381
|
+
- `client` - Client
|
382
|
+
- `other` - Other
|
383
|
+
|
384
|
+
**Sample Data:**
|
385
|
+
|
386
|
+
```json
|
387
|
+
[
|
388
|
+
{
|
389
|
+
"id": "cr1",
|
390
|
+
"contactId": "c1",
|
391
|
+
"relatedContactId": "c2",
|
392
|
+
"relationshipType": "colleague",
|
393
|
+
"description": "Works in the same development team",
|
394
|
+
"isActive": true
|
395
|
+
},
|
396
|
+
{
|
397
|
+
"id": "cr2",
|
398
|
+
"contactId": "c1",
|
399
|
+
"relatedContactId": "c3",
|
400
|
+
"relationshipType": "business_partner",
|
401
|
+
"description": "Collaboration partner for platform integration",
|
402
|
+
"isActive": true
|
403
|
+
},
|
404
|
+
{
|
405
|
+
"id": "cr3",
|
406
|
+
"contactId": "c1",
|
407
|
+
"relatedContactId": "c4",
|
408
|
+
"relationshipType": "client",
|
409
|
+
"description": "Key client for enterprise solutions",
|
410
|
+
"isActive": true
|
411
|
+
}
|
412
|
+
]
|
413
|
+
```
|
414
|
+
|
415
|
+
## Integration Examples
|
416
|
+
|
417
|
+
### Complete Contact Profile
|
418
|
+
|
419
|
+
Here's how all entities work together to create a comprehensive contact profile:
|
420
|
+
|
421
|
+
```json
|
422
|
+
{
|
423
|
+
"contact": {
|
424
|
+
"id": "c1",
|
425
|
+
"displayName": "John Smith",
|
426
|
+
"firstName": "John",
|
427
|
+
"lastName": "Smith",
|
428
|
+
"jobTitle": "Senior Software Engineer",
|
429
|
+
"company": "Tech Solutions Inc.",
|
430
|
+
"contactType": {
|
431
|
+
"id": "ct1",
|
432
|
+
"name": "Individual",
|
433
|
+
"icon": "fa-light fa-user"
|
434
|
+
},
|
435
|
+
"contactSource": {
|
436
|
+
"id": "cs1",
|
437
|
+
"name": "Website",
|
438
|
+
"icon": "fa-light fa-globe"
|
439
|
+
},
|
440
|
+
"priority": "High",
|
441
|
+
"status": "Active",
|
442
|
+
"isVip": true
|
443
|
+
},
|
444
|
+
"contactMethods": [
|
445
|
+
{
|
446
|
+
"methodType": { "name": "Email" },
|
447
|
+
"value": "john.smith@techsolutions.com",
|
448
|
+
"isPrimary": true,
|
449
|
+
"isVerified": true
|
450
|
+
},
|
451
|
+
{
|
452
|
+
"methodType": { "name": "Phone" },
|
453
|
+
"value": "+1-555-123-4567",
|
454
|
+
"isPrimary": true,
|
455
|
+
"isVerified": true
|
456
|
+
}
|
457
|
+
],
|
458
|
+
"addresses": [
|
459
|
+
{
|
460
|
+
"addressType": { "name": "Work" },
|
461
|
+
"street1": "123 Tech Boulevard",
|
462
|
+
"city": "San Francisco",
|
463
|
+
"state": "California",
|
464
|
+
"country": "United States",
|
465
|
+
"postalCode": "94107",
|
466
|
+
"isPrimary": true
|
467
|
+
}
|
468
|
+
],
|
469
|
+
"relationships": [
|
470
|
+
{
|
471
|
+
"relatedContact": { "displayName": "Jane Doe" },
|
472
|
+
"relationshipType": "colleague",
|
473
|
+
"description": "Development team member"
|
474
|
+
}
|
475
|
+
]
|
476
|
+
}
|
477
|
+
```
|
478
|
+
|
479
|
+
## Usage & Implementation
|
480
|
+
|
481
|
+
### Translation Keys
|
482
|
+
|
483
|
+
All entities support internationalization using the `@contact-management:` scope:
|
484
|
+
|
485
|
+
```typescript
|
486
|
+
// Entity titles
|
487
|
+
'@contact-management:contact.individual-title';
|
488
|
+
'@contact-management:contact-method.plural-title';
|
489
|
+
'@contact-management:contact-address.basic-info';
|
490
|
+
|
491
|
+
// Field labels
|
492
|
+
'@contact-management:contact.display-name';
|
493
|
+
'@contact-management:contact-method.value';
|
494
|
+
'@contact-management:contact-address.street1';
|
495
|
+
```
|
496
|
+
|
497
|
+
### Widget Integration
|
498
|
+
|
499
|
+
The module leverages various ACoreX widgets:
|
500
|
+
|
501
|
+
- **Text Widgets**: `AXPWidgetsCatalog.text`, `AXPWidgetsCatalog.largeText`
|
502
|
+
- **Lookup Widgets**: `AXPWidgetsCatalog.lookup` for entity references
|
503
|
+
- **Selection Widgets**: `AXPWidgetsCatalog.select` for predefined options
|
504
|
+
- **Toggle Widgets**: `AXPWidgetsCatalog.toggle` for boolean flags
|
505
|
+
- **Map Widget**: `AXPWidgetsCatalog.map` for geographic coordinates
|
506
|
+
- **Number Widgets**: `AXPWidgetsCatalog.number` for ordering and priorities
|
507
|
+
|
508
|
+
### Validation Rules
|
509
|
+
|
510
|
+
Contact methods include regex-based validation:
|
511
|
+
|
512
|
+
```typescript
|
513
|
+
// Email validation
|
514
|
+
validationRegex: '^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\\.[a-zA-Z]{2,}$';
|
515
|
+
|
516
|
+
// Phone validation
|
517
|
+
validationRegex: '^[\\+]?[1-9]?[0-9]{7,15}$';
|
518
|
+
|
519
|
+
// LinkedIn profile validation
|
520
|
+
validationRegex: '^https://www\\.linkedin\\.com/in/[a-zA-Z0-9-]+/?$';
|
521
|
+
```
|
522
|
+
|
523
|
+
## Module Structure
|
524
|
+
|
525
|
+
```
|
526
|
+
libs/modules/contact-management/
|
527
|
+
├── src/
|
528
|
+
│ ├── lib/
|
529
|
+
│ │ ├── entities/
|
530
|
+
│ │ │ ├── contact/
|
531
|
+
│ │ │ ├── contact-type/
|
532
|
+
│ │ │ ├── contact-source/
|
533
|
+
│ │ │ ├── contact-method-type/
|
534
|
+
│ │ │ ├── contact-method/
|
535
|
+
│ │ │ ├── address-type/
|
536
|
+
│ │ │ ├── contact-address/
|
537
|
+
│ │ │ └── contact-relationship/
|
538
|
+
│ │ ├── const.ts
|
539
|
+
│ │ ├── entity.provider.ts
|
540
|
+
│ │ ├── menu.provider.ts
|
541
|
+
│ │ ├── permission.provider.ts
|
542
|
+
│ │ ├── search.provider.ts
|
543
|
+
│ │ └── contact-management.module.ts
|
544
|
+
│ └── index.ts
|
545
|
+
├── README.md
|
546
|
+
└── ng-package.json
|
547
|
+
```
|
548
|
+
|
549
|
+
## Installation & Setup
|
550
|
+
|
551
|
+
1. **Module Registration**: The module auto-registers with lazy loading
|
552
|
+
2. **Translation Files**: Add to `apps/demo/src/assets/i18n/{locale}/contact-management.json`
|
553
|
+
3. **Permissions**: Configure via the permission provider
|
554
|
+
4. **Menu Integration**: Automatically integrated via menu provider
|
555
|
+
|
556
|
+
## Contributing
|
557
|
+
|
558
|
+
When extending this module:
|
559
|
+
|
560
|
+
1. Follow ACoreX entity patterns
|
561
|
+
2. Use proper widget names from `AXPWidgetsCatalog`
|
562
|
+
3. Implement proper validation rules
|
563
|
+
4. Add comprehensive translations
|
564
|
+
5. Update this documentation
|
565
|
+
|
566
|
+
---
|
567
|
+
|
568
|
+
> 💡 **Tip:** This module demonstrates advanced ACoreX patterns including dynamic contact methods, geographic integration, and complex entity relationships. Use it as a reference for implementing similar modules.
|