@acorex/modules 18.2.0 → 18.2.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/application-management/lib/application-management.source.d.ts +1 -0
- package/application-management/lib/services/application-module-management.service.d.ts +10 -0
- package/application-management/lib/services/edition-management.service.d.ts +10 -0
- package/application-management/lib/services/entity-management.service.d.ts +10 -0
- package/application-management/lib/services/feature-management.service.d.ts +10 -0
- package/application-management/lib/services/permission-management.service.d.ts +10 -0
- package/application-management/lib/services/property-management.service.d.ts +10 -0
- package/auth/lib/menu.provider.d.ts +1 -2
- package/conversation/index.d.ts +13 -4
- package/conversation/lib/conversation.module.d.ts +6 -3
- package/conversation/lib/entities/chat/chat.module.d.ts +23 -0
- package/conversation/lib/entities/chat/chat.type.d.ts +21 -0
- package/conversation/lib/entities/chat/components/chat-item/chat-item.component.d.ts +16 -0
- package/conversation/lib/entities/chat/components/chat-item-footer/chat-item-footer.component.d.ts +5 -0
- package/conversation/lib/entities/chat/components/chat-item-header/chat-item-header.component.d.ts +5 -0
- package/conversation/lib/entities/chat/components/chat-items/chat-items.component.d.ts +6 -0
- package/conversation/lib/entities/chat/components/chat-preview/chat-preview.component.d.ts +28 -0
- package/conversation/lib/entities/chat/pages/chat/chat.component.d.ts +5 -0
- package/conversation/lib/{comments → entities/comments}/comment.module.d.ts +1 -1
- package/{platform-management/lib/comments/comment-management.service.d.ts → conversation/lib/entities/comments/comments.service.d.ts} +5 -2
- package/conversation/lib/{comments → entities/comments/pages}/comment-list-view.component.d.ts +1 -1
- package/converstion-test/README.md +4 -0
- package/converstion-test/index.d.ts +1 -0
- package/converstion-test/lib/converstion-test.module.d.ts +6 -0
- package/esm2022/application-management/lib/application-management.module.mjs +36 -1
- package/esm2022/application-management/lib/application-management.source.mjs +2 -1
- package/esm2022/application-management/lib/entities/application-module.entity.mjs +10 -13
- package/esm2022/application-management/lib/entities/edition.entity.mjs +10 -13
- package/esm2022/application-management/lib/entities/entity.entity.mjs +10 -13
- package/esm2022/application-management/lib/entities/feature.entity.mjs +10 -13
- package/esm2022/application-management/lib/entities/modules.entity.mjs +2 -2
- package/esm2022/application-management/lib/entities/permission.entity.mjs +10 -13
- package/esm2022/application-management/lib/entities/property.entity.mjs +10 -13
- package/esm2022/application-management/lib/layouts/module-entity-detail-view/module-entity-detail-view.component.mjs +5 -4
- package/esm2022/application-management/lib/menu.provider.mjs +5 -5
- package/esm2022/application-management/lib/services/application-module-management.service.mjs +17 -0
- package/esm2022/application-management/lib/services/edition-management.service.mjs +17 -0
- package/esm2022/application-management/lib/services/entity-management.service.mjs +17 -0
- package/esm2022/application-management/lib/services/feature-management.service.mjs +17 -0
- package/esm2022/application-management/lib/services/permission-management.service.mjs +17 -0
- package/esm2022/application-management/lib/services/property-management.service.mjs +17 -0
- package/esm2022/auth/lib/account/account.module.mjs +6 -2
- package/esm2022/auth/lib/menu.provider.mjs +17 -22
- package/esm2022/conversation/index.mjs +14 -5
- package/esm2022/conversation/lib/conversation.module.mjs +13 -8
- package/esm2022/conversation/lib/entities/chat/chat.module.mjs +90 -0
- package/esm2022/conversation/lib/entities/chat/chat.type.mjs +2 -0
- package/esm2022/conversation/lib/entities/chat/components/chat-item/chat-item.component.mjs +35 -0
- package/esm2022/conversation/lib/entities/chat/components/chat-item-footer/chat-item-footer.component.mjs +13 -0
- package/esm2022/conversation/lib/entities/chat/components/chat-item-header/chat-item-header.component.mjs +15 -0
- package/esm2022/conversation/lib/entities/chat/components/chat-items/chat-items.component.mjs +15 -0
- package/esm2022/conversation/lib/entities/chat/components/chat-preview/chat-preview.component.mjs +237 -0
- package/esm2022/conversation/lib/entities/chat/pages/chat/chat.component.mjs +15 -0
- package/esm2022/conversation/lib/entities/comments/comment.module.mjs +100 -0
- package/esm2022/conversation/lib/entities/comments/comments.service.mjs +20 -0
- package/esm2022/conversation/lib/entities/comments/comments.type.mjs +2 -0
- package/esm2022/conversation/lib/entities/comments/pages/comment-list-view.component.mjs +393 -0
- package/esm2022/conversation/lib/{comments → entities/comments/pages}/comment-lookup-popup.component.mjs +1 -1
- package/esm2022/converstion-test/acorex-modules-converstion-test.mjs +5 -0
- package/esm2022/converstion-test/index.mjs +2 -0
- package/esm2022/converstion-test/lib/converstion-test.module.mjs +16 -0
- package/esm2022/form-template-management/acorex-modules-form-template-management.mjs +5 -0
- package/esm2022/form-template-management/index.mjs +2 -0
- package/esm2022/form-template-management/lib/const.mjs +8 -0
- package/esm2022/form-template-management/lib/entities/category/category.entity.mjs +241 -0
- package/esm2022/form-template-management/lib/entities/category/category.module.mjs +28 -0
- package/esm2022/form-template-management/lib/entities/category/category.service.mjs +17 -0
- package/esm2022/form-template-management/lib/entities/category/category.types.mjs +2 -0
- package/esm2022/form-template-management/lib/entities/category/index.mjs +5 -0
- package/esm2022/form-template-management/lib/entities/template/index.mjs +5 -0
- package/esm2022/form-template-management/lib/entities/template/template.entity.mjs +241 -0
- package/esm2022/form-template-management/lib/entities/template/template.module.mjs +28 -0
- package/esm2022/form-template-management/lib/entities/template/template.service.mjs +17 -0
- package/esm2022/form-template-management/lib/entities/template/template.types.mjs +2 -0
- package/esm2022/form-template-management/lib/entity.provider.mjs +25 -0
- package/esm2022/form-template-management/lib/form-template-management.module.mjs +77 -0
- package/esm2022/form-template-management/lib/menu.provider.mjs +45 -0
- package/esm2022/form-template-management/lib/pages/designer/designer.page.mjs +24 -0
- package/esm2022/localization-management/acorex-modules-localization-management.mjs +5 -0
- package/esm2022/localization-management/index.mjs +8 -0
- package/esm2022/localization-management/lib/culture/culture.entity.mjs +239 -0
- package/esm2022/localization-management/lib/culture/culture.service.mjs +17 -0
- package/esm2022/localization-management/lib/culture/culture.types.mjs +2 -0
- package/esm2022/localization-management/lib/culture/index.mjs +4 -0
- package/esm2022/localization-management/lib/entity.loader.mjs +36 -0
- package/esm2022/localization-management/lib/language/index.mjs +4 -0
- package/esm2022/localization-management/lib/language/language-slot/language-slot.component.mjs +30 -0
- package/esm2022/localization-management/lib/language/language.entity.mjs +239 -0
- package/esm2022/localization-management/lib/language/language.service.mjs +17 -0
- package/esm2022/localization-management/lib/language/language.types.mjs +2 -0
- package/esm2022/localization-management/lib/localization-management.module.mjs +99 -0
- package/esm2022/localization-management/lib/localization-management.source.mjs +4 -0
- package/esm2022/localization-management/lib/localization-store.service.mjs +34 -0
- package/esm2022/localization-management/lib/menu.provider.mjs +46 -0
- package/esm2022/localization-management/lib/time-zone/index.mjs +4 -0
- package/esm2022/localization-management/lib/time-zone/time-zone.entity.mjs +256 -0
- package/esm2022/localization-management/lib/time-zone/time-zone.service.mjs +17 -0
- package/esm2022/localization-management/lib/time-zone/time-zone.types.mjs +2 -0
- package/esm2022/notification-management/lib/admin-notification-slot/admin-notification-item/admin-notification-item.component.mjs +3 -3
- package/esm2022/notification-management/lib/admin-notification-slot/admin-notification-slot/admin-notification-slot.component.mjs +3 -3
- package/esm2022/notification-management/lib/entities/my-notification.mjs +8 -15
- package/esm2022/notification-management/lib/entities/notification-channel.entity.mjs +3 -3
- package/esm2022/notification-management/lib/menu.provider.mjs +6 -11
- package/esm2022/platform-management/index.mjs +2 -3
- package/esm2022/platform-management/lib/common/common.module.mjs +65 -0
- package/esm2022/platform-management/lib/common/common.source.mjs +5 -0
- package/esm2022/platform-management/lib/common/country/country-datasource.provider.mjs +27 -0
- package/esm2022/platform-management/lib/common/country/country.entity.mjs +696 -0
- package/esm2022/platform-management/lib/common/country/country.service.mjs +17 -0
- package/esm2022/platform-management/lib/common/country/country.types.mjs +2 -0
- package/esm2022/platform-management/lib/common/country/index.mjs +4 -0
- package/esm2022/platform-management/lib/common/currency/currency.entity.mjs +283 -0
- package/esm2022/platform-management/lib/common/currency/currency.service.mjs +17 -0
- package/esm2022/platform-management/lib/common/currency/currency.types.mjs +2 -0
- package/esm2022/platform-management/lib/common/currency/index.mjs +4 -0
- package/esm2022/platform-management/lib/common/entity.loader.mjs +36 -0
- package/esm2022/platform-management/lib/common/index.mjs +5 -0
- package/esm2022/platform-management/lib/common/province/index.mjs +4 -0
- package/esm2022/platform-management/lib/common/province/province.entity.mjs +307 -0
- package/esm2022/platform-management/lib/common/province/province.service.mjs +17 -0
- package/esm2022/platform-management/lib/common/province/province.types.mjs +2 -0
- package/esm2022/platform-management/lib/global-variables/entities/global-variable.entity.mjs +54 -4
- package/esm2022/platform-management/lib/menu.provider.mjs +30 -14
- package/esm2022/platform-management/lib/platform-management.module.mjs +11 -32
- package/esm2022/template-management/index.mjs +2 -2
- package/esm2022/template-management/lib/entities/category.entity.mjs +32 -15
- package/esm2022/template-management/lib/entities/template-variable.entity.mjs +90 -90
- package/esm2022/template-management/lib/entities/text-template.entity.mjs +26 -1
- package/esm2022/template-management/lib/entity.provider.mjs +32 -0
- package/esm2022/template-management/lib/menu.provider.mjs +5 -5
- package/esm2022/template-management/lib/template-management.module.mjs +4 -4
- package/fesm2022/{acorex-modules-application-management-module-designer.component-BCaCCEXO.mjs → acorex-modules-application-management-module-designer.component-CaR_HZfL.mjs} +3 -3
- package/fesm2022/{acorex-modules-application-management-module-designer.component-BCaCCEXO.mjs.map → acorex-modules-application-management-module-designer.component-CaR_HZfL.mjs.map} +1 -1
- package/fesm2022/acorex-modules-application-management.mjs +338 -242
- package/fesm2022/acorex-modules-application-management.mjs.map +1 -1
- package/fesm2022/{acorex-modules-auth-acorex-modules-auth-D2WBJhj6.mjs → acorex-modules-auth-acorex-modules-auth-BVOt-gis.mjs} +29 -28
- package/fesm2022/acorex-modules-auth-acorex-modules-auth-BVOt-gis.mjs.map +1 -0
- package/fesm2022/{acorex-modules-auth-app-chooser.component-B7BwymT_.mjs → acorex-modules-auth-app-chooser.component-DhPEtLuK.mjs} +2 -2
- package/fesm2022/{acorex-modules-auth-app-chooser.component-B7BwymT_.mjs.map → acorex-modules-auth-app-chooser.component-DhPEtLuK.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-auth-login.module-BjvPlYQZ.mjs → acorex-modules-auth-login.module-sFVL-lYB.mjs} +4 -4
- package/fesm2022/{acorex-modules-auth-login.module-BjvPlYQZ.mjs.map → acorex-modules-auth-login.module-sFVL-lYB.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-auth-master.layout-CeqMPrx8.mjs → acorex-modules-auth-master.layout-Bnt5qiio.mjs} +2 -2
- package/fesm2022/{acorex-modules-auth-master.layout-CeqMPrx8.mjs.map → acorex-modules-auth-master.layout-Bnt5qiio.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-auth-password.component-X3BUidi1.mjs → acorex-modules-auth-password.component-BXL-aLTx.mjs} +2 -2
- package/fesm2022/{acorex-modules-auth-password.component-X3BUidi1.mjs.map → acorex-modules-auth-password.component-BXL-aLTx.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-auth-password.component-87NrYq3i.mjs → acorex-modules-auth-password.component-ClaRp38G.mjs} +2 -2
- package/fesm2022/{acorex-modules-auth-password.component-87NrYq3i.mjs.map → acorex-modules-auth-password.component-ClaRp38G.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-auth-routes-D1JZT2cF.mjs → acorex-modules-auth-routes-MDneFw2m.mjs} +2 -2
- package/fesm2022/{acorex-modules-auth-routes-D1JZT2cF.mjs.map → acorex-modules-auth-routes-MDneFw2m.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-auth-two-factor.module-C28ix6Wr.mjs → acorex-modules-auth-two-factor.module-BHulbf0N.mjs} +2 -2
- package/fesm2022/{acorex-modules-auth-two-factor.module-C28ix6Wr.mjs.map → acorex-modules-auth-two-factor.module-BHulbf0N.mjs.map} +1 -1
- package/fesm2022/acorex-modules-auth.mjs +1 -1
- package/fesm2022/acorex-modules-conversation.mjs +413 -11
- package/fesm2022/acorex-modules-conversation.mjs.map +1 -1
- package/fesm2022/acorex-modules-converstion-test.mjs +23 -0
- package/fesm2022/acorex-modules-converstion-test.mjs.map +1 -0
- package/fesm2022/{acorex-modules-form-management-designer.page-SoPH2V7i.mjs → acorex-modules-form-template-management-designer.page-DC18KFvK.mjs} +6 -6
- package/fesm2022/acorex-modules-form-template-management-designer.page-DC18KFvK.mjs.map +1 -0
- package/fesm2022/acorex-modules-form-template-management.mjs +713 -0
- package/fesm2022/acorex-modules-form-template-management.mjs.map +1 -0
- package/fesm2022/acorex-modules-localization-management.mjs +1019 -0
- package/fesm2022/acorex-modules-localization-management.mjs.map +1 -0
- package/fesm2022/acorex-modules-notification-management.mjs +18 -29
- package/fesm2022/acorex-modules-notification-management.mjs.map +1 -1
- package/fesm2022/acorex-modules-platform-management.mjs +1424 -213
- package/fesm2022/acorex-modules-platform-management.mjs.map +1 -1
- package/fesm2022/acorex-modules-template-management.mjs +162 -124
- package/fesm2022/acorex-modules-template-management.mjs.map +1 -1
- package/form-template-management/README.md +4 -0
- package/form-template-management/index.d.ts +1 -0
- package/form-template-management/lib/const.d.ts +7 -0
- package/form-template-management/lib/entities/category/category.entity.d.ts +3 -0
- package/form-template-management/lib/entities/category/category.module.d.ts +6 -0
- package/form-template-management/lib/entities/category/category.service.d.ts +10 -0
- package/form-template-management/lib/entities/category/category.types.d.ts +5 -0
- package/form-template-management/lib/entities/category/index.d.ts +4 -0
- package/form-template-management/lib/entities/template/index.d.ts +4 -0
- package/form-template-management/lib/entities/template/template.entity.d.ts +3 -0
- package/form-template-management/lib/entities/template/template.module.d.ts +6 -0
- package/form-template-management/lib/entities/template/template.service.d.ts +10 -0
- package/form-template-management/lib/entities/template/template.types.d.ts +5 -0
- package/form-template-management/lib/entity.provider.d.ts +9 -0
- package/form-template-management/lib/form-template-management.module.d.ts +10 -0
- package/form-template-management/lib/menu.provider.d.ts +5 -0
- package/form-template-management/lib/pages/designer/designer.page.d.ts +5 -0
- package/localization-management/README.md +4 -0
- package/localization-management/index.d.ts +7 -0
- package/localization-management/lib/culture/culture.entity.d.ts +3 -0
- package/localization-management/lib/culture/culture.service.d.ts +10 -0
- package/localization-management/lib/culture/culture.types.d.ts +12 -0
- package/localization-management/lib/culture/index.d.ts +3 -0
- package/localization-management/lib/entity.loader.d.ts +9 -0
- package/localization-management/lib/language/index.d.ts +3 -0
- package/localization-management/lib/language/language-slot/language-slot.component.d.ts +19 -0
- package/localization-management/lib/localization-management.module.d.ts +10 -0
- package/localization-management/lib/localization-management.source.d.ts +3 -0
- package/localization-management/lib/localization-store.service.d.ts +7 -0
- package/localization-management/lib/menu.provider.d.ts +5 -0
- package/localization-management/lib/time-zone/index.d.ts +3 -0
- package/localization-management/lib/time-zone/time-zone.entity.d.ts +3 -0
- package/localization-management/lib/time-zone/time-zone.service.d.ts +10 -0
- package/localization-management/lib/time-zone/time-zone.types.d.ts +9 -0
- package/notification-management/lib/menu.provider.d.ts +0 -1
- package/package.json +24 -12
- package/platform-management/index.d.ts +1 -2
- package/platform-management/lib/common/common.module.d.ts +6 -0
- package/platform-management/lib/common/common.source.d.ts +4 -0
- package/platform-management/lib/common/country/country-datasource.provider.d.ts +5 -0
- package/platform-management/lib/common/country/country.entity.d.ts +3 -0
- package/platform-management/lib/common/country/country.service.d.ts +10 -0
- package/platform-management/lib/common/country/country.types.d.ts +18 -0
- package/platform-management/lib/common/country/index.d.ts +3 -0
- package/platform-management/lib/common/currency/currency.entity.d.ts +3 -0
- package/platform-management/lib/common/currency/currency.service.d.ts +10 -0
- package/platform-management/lib/common/currency/currency.types.d.ts +6 -0
- package/platform-management/lib/common/currency/index.d.ts +3 -0
- package/platform-management/lib/{languages → common}/entity.loader.d.ts +3 -3
- package/platform-management/lib/common/index.d.ts +4 -0
- package/platform-management/lib/common/province/index.d.ts +3 -0
- package/platform-management/lib/common/province/province.entity.d.ts +3 -0
- package/platform-management/lib/common/province/province.service.d.ts +10 -0
- package/platform-management/lib/common/province/province.types.d.ts +7 -0
- package/platform-management/lib/menu.provider.d.ts +1 -1
- package/platform-management/lib/platform-management.module.d.ts +2 -1
- package/template-management/index.d.ts +1 -1
- package/template-management/lib/{entity.loader.d.ts → entity.provider.d.ts} +3 -3
- package/conversation/lib/comments/comments.service.d.ts +0 -5
- package/esm2022/conversation/lib/comments/comment-list-view.component.mjs +0 -393
- package/esm2022/conversation/lib/comments/comment.module.mjs +0 -89
- package/esm2022/conversation/lib/comments/comments.service.mjs +0 -4
- package/esm2022/conversation/lib/comments/comments.type.mjs +0 -2
- package/esm2022/form-management/acorex-modules-form-management.mjs +0 -5
- package/esm2022/form-management/index.mjs +0 -2
- package/esm2022/form-management/lib/designer/designer.page.mjs +0 -24
- package/esm2022/form-management/lib/form-management.module.mjs +0 -53
- package/esm2022/form-management/lib/menu.provider.mjs +0 -35
- package/esm2022/platform-management/lib/comments/comment-management.service.mjs +0 -18
- package/esm2022/platform-management/lib/languages/entities/language.entity.mjs +0 -234
- package/esm2022/platform-management/lib/languages/entity.loader.mjs +0 -26
- package/esm2022/platform-management/lib/languages/index.mjs +0 -5
- package/esm2022/platform-management/lib/languages/language-management.service.mjs +0 -16
- package/esm2022/platform-management/lib/languages/language.types.mjs +0 -2
- package/esm2022/template-management/lib/entity.loader.mjs +0 -36
- package/fesm2022/acorex-modules-auth-acorex-modules-auth-D2WBJhj6.mjs.map +0 -1
- package/fesm2022/acorex-modules-form-management-designer.page-SoPH2V7i.mjs.map +0 -1
- package/fesm2022/acorex-modules-form-management.mjs +0 -93
- package/fesm2022/acorex-modules-form-management.mjs.map +0 -1
- package/form-management/README.md +0 -4
- package/form-management/index.d.ts +0 -1
- package/form-management/lib/designer/designer.page.d.ts +0 -5
- package/form-management/lib/form-management.module.d.ts +0 -8
- package/form-management/lib/menu.provider.d.ts +0 -5
- package/platform-management/lib/languages/index.d.ts +0 -4
- /package/conversation/lib/{comments → entities/comments}/comments.type.d.ts +0 -0
- /package/conversation/lib/{comments → entities/comments/pages}/comment-lookup-popup.component.d.ts +0 -0
- /package/{platform-management/lib/languages/entities → localization-management/lib/language}/language.entity.d.ts +0 -0
- /package/{platform-management/lib/languages/language-management.service.d.ts → localization-management/lib/language/language.service.d.ts} +0 -0
- /package/{platform-management/lib/languages → localization-management/lib/language}/language.types.d.ts +0 -0
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"acorex-modules-notification-management.mjs","sources":["../../../../libs/modules/notification-management/src/lib/admin-notification-slot/admin-notification-item/admin-notification-item.component.ts","../../../../libs/modules/notification-management/src/lib/admin-notification-slot/admin-notification-item/admin-notification-item.component.html","../../../../libs/modules/notification-management/src/lib/notification.service.ts","../../../../libs/modules/notification-management/src/lib/admin-notification-slot/admin-notification-panel/admin-notification-panel.component.ts","../../../../libs/modules/notification-management/src/lib/admin-notification-slot/admin-notification-panel/admin-notification-panel.component.html","../../../../libs/modules/notification-management/src/lib/admin-notification-slot/admin-notification-slot/admin-notification-slot.component.ts","../../../../libs/modules/notification-management/src/lib/admin-notification-slot/admin-notification-slot/admin-notification-slot.component.html","../../../../libs/modules/notification-management/src/lib/entity.loader.ts","../../../../libs/modules/notification-management/src/lib/menu.provider.ts","../../../../libs/modules/notification-management/src/lib/notification-management.module.ts","../../../../libs/modules/notification-management/src/lib/entities/my-notification.ts","../../../../libs/modules/notification-management/src/lib/notification-management-mock-data.ts","../../../../libs/modules/notification-management/src/lib/notification-management.service.ts","../../../../libs/modules/notification-management/src/lib/entities/notification-channel.entity.ts","../../../../libs/modules/notification-management/src/lib/entities/notification-log.entity.ts","../../../../libs/modules/notification-management/src/lib/entities/notification-template.entity.ts","../../../../libs/modules/notification-management/src/lib/entities/notification.entity.ts","../../../../libs/modules/notification-management/src/acorex-modules-notification-management.ts"],"sourcesContent":["import { AXAvatarModule } from '@acorex/components/avatar';\nimport { AXBadgeModule } from '@acorex/components/badge';\nimport { AXButtonModule } from '@acorex/components/button';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXImageModule } from '@acorex/components/image';\nimport { AXFormatModule } from '@acorex/core/format';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, computed, input, output } from '@angular/core';\nimport { AXMNotificationItem } from '../../notification-management.type';\n\n@Component({\n selector: 'axp-master-notification-item',\n templateUrl: './admin-notification-item.component.html',\n styleUrls: ['./admin-notification-item.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: true,\n imports: [\n CommonModule,\n AXButtonModule,\n AXDecoratorModule,\n AXAvatarModule,\n AXImageModule,\n AXBadgeModule,\n AXFormatModule,\n ],\n})\nexport class AXMAdminNotificationItemComponent {\n data = input.required<AXMNotificationItem>();\n onPressNotificationItem = output<string>();\n\n differentTime = computed<number>(() => Date.now() - this.data().createAt.getTime());\n\n pressNotificationItem(id: string) {\n this.onPressNotificationItem.emit(id);\n }\n}\n","<div\n class=\"notification-item\"\n [id]=\"data().id\"\n (click)=\"pressNotificationItem(data().id)\"\n [class]=\"[data().template.prority, data().readAt ? 'read' : 'unread']\"\n>\n <ax-avatar look=\"rounded\" color=\"primary\">\n @if(data().user.image){\n <ax-image src=\"https://i.pravatar.cc/300\"></ax-image>\n }@else {\n <ax-icon>\n <i class=\"fa-solid fa-lock\"></i>\n </ax-icon>\n }\n </ax-avatar>\n <div>\n <div class=\"notification-item-title\">{{ data().title }}</div>\n <div class=\"notification-item-body\">{{ data().body }}</div>\n <!-- @if(false){\n <div>\n <div class=\"notification-file\">\n <ax-avatar color=\"primary\">\n <ax-icon>\n <i class=\"fa-solid fa-file-word ax-text-2xl\"></i>\n </ax-icon>\n </ax-avatar>\n <div>\n <div class=\"notification-file-name\">New project details.docx</div>\n <div class=\"notification-file-size\">250 KB</div>\n </div>\n <ax-button look=\"blank\">\n <ax-icon>\n <i class=\"fa-solid fa-download\"></i>\n </ax-icon>\n </ax-button>\n </div>\n </div>\n } -->\n <div class=\"notification-item-time\">{{ differentTime() | format : 'timeleft' | async }}</div>\n </div>\n @if(!data().template.isPinned){\n <div class=\"pin-notification\">\n <ax-icon>\n <i class=\"fa-solid fa-thumbtack\"></i>\n </ax-icon>\n </div>\n }\n</div>\n","import {\n AXMNotificationItem,\n AXMNotificationMarkAsReadRequest,\n AXMNotificationResponse,\n} from './notification-management.type';\nexport abstract class AXMNotificationService {\n abstract getList(): AXMNotificationResponse;\n abstract markAsRead(payload?: AXMNotificationMarkAsReadRequest): void;\n abstract create(payload?: AXMNotificationItem): void;\n}\n","import { AXBadgeModule } from '@acorex/components/badge';\nimport { AXButtonModule } from '@acorex/components/button';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXPopoverModule } from '@acorex/components/popover';\nimport { AXTabsModule } from '@acorex/components/tabs';\nimport { AXToastService } from '@acorex/components/toast';\nimport { AXFormatModule } from '@acorex/core/format';\nimport { AXPSessionService } from '@acorex/platform/auth';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, computed, effect, inject, OnInit, output, signal } from '@angular/core';\nimport { Router } from '@angular/router';\nimport {\n AXMNotificationCategory,\n AXMNotificationItem,\n AXMNotificationMarkAsReadRequest,\n AXMNotificationResponse,\n} from '../../notification-management.type';\nimport { AXMNotificationService } from '../../notification.service';\nimport { AXMAdminNotificationItemComponent } from '../admin-notification-item/admin-notification-item.component';\n@Component({\n selector: 'axm-admin-notification-panel',\n templateUrl: './admin-notification-panel.component.html',\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [\n CommonModule,\n AXButtonModule,\n AXTabsModule,\n AXDecoratorModule,\n AXBadgeModule,\n AXPopoverModule,\n AXMAdminNotificationItemComponent,\n AXFormatModule,\n ],\n})\nexport class AXMAdminNotificationPanelComponent implements OnInit {\n onNewNotfication = output<number>();\n\n private notificationService = inject(AXMNotificationService);\n private toastService = inject(AXToastService);\n private router = inject(Router);\n private sessionService = inject(AXPSessionService);\n\n notifications = signal<AXMNotificationItem[] | undefined>(undefined);\n totalNotifications = signal<number | undefined>(undefined);\n\n tabItems = computed<AXTabData[]>(() => this.getTabItems(this.notifications()), {\n equal: (a, b) => JSON.stringify(a) === JSON.stringify(b),\n });\n activeTab = signal<AXMTabDataText>('All');\n\n changeActiveTab(tab: AXMTabDataText) {\n this.activeTab.set(tab);\n }\n\n NewNotification = computed<number>(() => this.getNewNotification(this.tabItems()));\n NewNotificationEffect = effect(() => this.onNewNotfication.emit(this.NewNotification()));\n\n ngOnInit(): void {\n this.loadNotification();\n }\n\n private async loadNotification() {\n try {\n const response: AXMNotificationResponse = await this.notificationService.getList();\n this.totalNotifications.set(response.total);\n const orderedResponse = response.items.sort((a, b) => {\n if (a.template.isPinned === b.template.isPinned) {\n return new Date(a.createAt).getTime() - new Date(b.createAt).getTime();\n }\n return a.template.isPinned ? 1 : -1;\n });\n this.notifications.set(orderedResponse);\n } catch (error) {\n this.toastService.show({\n content: typeof error === 'string' ? error : 'Failed to load notifications!',\n color: 'danger',\n location: 'bottom-center',\n closeButton: true,\n timeOut: 3000,\n timeOutProgress: true,\n });\n }\n }\n\n private getTabItems(notifications: AXMNotificationItem[] | undefined): AXTabData[] {\n if (!notifications) {\n return [\n {\n text: 'All',\n //active: true,\n count: 0,\n },\n ];\n }\n const categoryCountMap = new Map<AXMTabDataText, number>();\n notifications.forEach((notification) => {\n const category = notification.template.category;\n if (!categoryCountMap.has(category)) {\n categoryCountMap.set(category, 0);\n }\n if (!notification.readAt) {\n categoryCountMap.set(category, categoryCountMap.get(category)! + 1);\n }\n });\n const tabItems = Array.from(categoryCountMap.entries()).map(([category, count]) => ({\n text: category,\n count: count,\n }));\n const totalCount = Array.from(categoryCountMap.values()).reduce((a, b) => a + b, 0);\n tabItems.unshift({\n text: 'All',\n count: totalCount,\n });\n return tabItems;\n }\n\n private getNewNotification(data: AXTabData[]): number {\n const total = data.filter((tab) => tab.text !== 'All').reduce((sum, tab) => sum + tab.count, 0);\n return total;\n }\n\n protected getNotificationItems(category: AXMTabDataText) {\n if (category === 'All') {\n return this.notifications();\n } else {\n return this.notifications()?.filter((item) => item.template.category === category) as AXMNotificationItem[];\n }\n }\n //\n\n protected async markAsRead(id: string): Promise<void> {\n try {\n const payload: AXMNotificationMarkAsReadRequest = { id: [id] };\n await this.notificationService.markAsRead(payload);\n this.toggleRead(id);\n } catch (error) {}\n }\n\n private toggleRead(id: string): void {\n this.notifications.update((old) =>\n old?.map((item) => (item.id === id ? { ...item, readAt: item.readAt ? null : new Date() } : item))\n );\n }\n\n protected async markAllAsRead() {\n try {\n await this.notificationService.markAsRead();\n this.toggleMarkAllAsRead();\n } catch (error) {\n console.error(error);\n }\n }\n\n private toggleMarkAllAsRead() {\n this.notifications.update((notification) =>\n notification?.map((item) => {\n if (!item.readAt) {\n return { ...item, readAt: new Date() };\n }\n return item;\n })\n );\n }\n protected viewAllNotifications(): void {\n this.router.navigate([`${this.sessionService.application?.name}/m/notification-management/e/my-notification/list`]);\n }\n}\n\ninterface AXTabData {\n text: AXMTabDataText;\n count: number;\n}\ntype AXMTabDataText = AXMNotificationCategory | 'All';\n","<div class=\"ax-p-4 ax-flex ax-justify-between ax-items-center\">\n <span class=\"ax-text-xl\">Notifications</span>\n <ax-button color=\"default\" look=\"blank\">\n <ax-icon>\n <i class=\"fa-regular fa-gear fa-lg\"></i>\n </ax-icon>\n </ax-button>\n</div>\n<ax-tabs [content]=\"cons\" look=\"with-line\" location=\"bottom\">\n @for(tab of tabItems(); track tab.text){\n <ax-tab-item [text]=\"tab.text\" [active]=\"activeTab() === tab.text\" (activeChange)=\"changeActiveTab(tab.text)\">\n <ax-suffix>\n @if(tab.count){\n <ax-badge [color]=\"activeTab() === tab.text ? 'primary' : 'ghost'\" [text]=\"tab.count.toString()\"></ax-badge>\n }\n </ax-suffix>\n <ax-content>\n <div class=\"ax-max-h-[50vh] ax-overflow-y-auto\">\n @for(notif of getNotificationItems(tab.text); track notif.id){\n <axp-master-notification-item\n [data]=\"notif\"\n (onPressNotificationItem)=\"markAsRead($event)\"\n ></axp-master-notification-item>\n }\n </div>\n <div class=\"ax-flex ax-gap-4 ax-justify-between ax-p-4 ax-border-t ax-border-default\">\n <ax-button\n [disabled]=\"NewNotification() === 0\"\n color=\"ghost\"\n text=\"Mark all as read\"\n (onClick)=\"markAllAsRead()\"\n ></ax-button>\n <ax-button color=\"primary\" text=\"View all notifications\" (onClick)=\"viewAllNotifications()\"></ax-button>\n </div>\n </ax-content>\n </ax-tab-item>\n }\n</ax-tabs>\n\n<ng-template [axTabContent] #cons=\"axTabContent\"></ng-template>\n","import { AXBadgeModule } from '@acorex/components/badge';\nimport { AXButtonModule } from '@acorex/components/button';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXPopoverModule } from '@acorex/components/popover';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, signal } from '@angular/core';\nimport { AXMAdminNotificationItemComponent } from '../admin-notification-item/admin-notification-item.component';\nimport { AXMAdminNotificationPanelComponent } from '../admin-notification-panel/admin-notification-panel.component';\n@Component({\n templateUrl: './admin-notification-slot.component.html',\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [\n CommonModule,\n AXButtonModule,\n AXDecoratorModule,\n AXBadgeModule,\n AXPopoverModule,\n AXMAdminNotificationItemComponent,\n AXMAdminNotificationPanelComponent,\n ],\n})\nexport class AXMAdminNotificationSlotComponent {\n totalNewNotification = signal<number>(0);\n setTotalNewNotification(value: number): void {\n this.totalNewNotification.set(value);\n }\n}\n","<ax-button color=\"secondary\" class=\"ax-relative\" look=\"blank\" #notification>\n <ax-icon>\n <i class=\"fa-regular fa-bell\"></i>\n </ax-icon>\n <ax-suffix class=\"ax-absolute ax-top-0 ax-left-1/2\">\n @if(totalNewNotification()){\n <ax-badge color=\"success\" [text]=\"totalNewNotification().toString()\"></ax-badge>\n }\n </ax-suffix>\n</ax-button>\n<ax-popover [target]=\"notification\" [openOn]=\"'toggle'\" [closeOn]=\"'clickOut'\" [adaptivityEnabled]=\"true\">\n <div class=\"ax-bg-surface ax-border ax-border-default ax-rounded-md ax-shadow-md ax-w-full\">\n <axm-admin-notification-panel (onNewNotfication)=\"setTotalNewNotification($event)\"> </axm-admin-notification-panel>\n </div>\n</ax-popover>\n","import { AXPEntity } from '@acorex/platform/common';\nimport { AXPEntityDefinitionLoader } from '@acorex/platform/layout/entity';\nimport { Injectable, Injector, inject } from '@angular/core';\n\n@Injectable()\nexport class AXMNotificationModuleEntityLoader implements AXPEntityDefinitionLoader {\n private injector = inject(Injector);\n\n async get(moduleName: string, entityName: string): Promise<AXPEntity | null> {\n return new Promise(async (resolve) => {\n switch (entityName) {\n case 'notificationTemplate': {\n const entity = (await import('./entities/notification-template.entity')).notificationTemplateEntityFactory;\n resolve(entity(this.injector));\n break;\n }\n case 'notificationChannel': {\n const entity = (await import('./entities/notification-channel.entity')).notificationChannelEntityFactory;\n resolve(entity(this.injector));\n break;\n }\n case 'my-notification': {\n const entity = (await import('./entities/my-notification')).myNotificationEntityFactory;\n resolve(entity(this.injector));\n break;\n }\n case 'notification': {\n const entity = (await import('./entities/notification.entity')).notificationEntityFactory;\n resolve(entity(this.injector));\n break;\n }\n default:\n resolve(null);\n }\n });\n }\n}\n","import { AXTranslationService } from \"@acorex/core/translation\";\nimport { AXPMenuInsertion, AXPMenuProvider } from \"@acorex/platform/common\";\nimport { inject } from \"@angular/core\";\n\nexport class AXMNotificationManagmentModuleMenuProvider implements AXPMenuProvider {\n\n private translateService = inject(AXTranslationService);\n\n async items(): Promise<AXPMenuInsertion[]> {\n const scope = \"notification\"; // Scope for translation lookup\n return [\n {\n items: [\n {\n text: await this.translateService.translateAsync('myNotifications', { scope }),\n path: '/demo/m/notification-management/e/my-notification/list',\n data: {\n // requiredPermission: '',\n },\n },\n ],\n insertAt: {\n target: 'edit-profile',\n },\n },\n {\n items: [\n {\n priority: 9001,\n text: await this.translateService.translateAsync('notificationManagement', { scope }),\n icon: 'fa-solid fa-bells',\n data: {\n // requiredPermission: 'demo.admin.settings',\n },\n children: [\n {\n text: await this.translateService.translateAsync('template', { scope }),\n path: '/demo/m/notification-management/e/notificationTemplate/list',\n icon: 'fa-solid fa-file-invoice',\n data: {\n // requiredPermission: '',\n },\n },\n {\n text: await this.translateService.translateAsync('report', { scope }),\n path: '/demo/m/notification-management/e/notification/list',\n icon: 'fa-solid fa-file-chart-column',\n data: {\n // requiredPermission: '',\n },\n },\n ],\n },\n ],\n },\n ] as AXPMenuInsertion[];\n }\n}\n","import { AXP_MENU_PROVIDER, AXPComponentSlotModule } from '@acorex/platform/common';\nimport { AXP_ENTITY_DEFINITION_LOADER } from '@acorex/platform/layout/entity';\nimport { NgModule } from '@angular/core';\nimport { AXMAdminNotificationSlotComponent } from './admin-notification-slot/admin-notification-slot/admin-notification-slot.component';\nimport { AXMNotificationModuleEntityLoader } from './entity.loader';\nimport { AXMNotificationManagmentModuleMenuProvider } from './menu.provider';\n\n@NgModule({\n imports: [\n AXPComponentSlotModule.forChild({\n 'header-end': [\n {\n name: 'notification',\n component: AXMAdminNotificationSlotComponent,\n },\n ],\n }),\n ],\n exports: [],\n declarations: [],\n providers: [\n {\n provide: AXP_ENTITY_DEFINITION_LOADER,\n useClass: AXMNotificationModuleEntityLoader,\n multi: true,\n },\n {\n provide: AXP_MENU_PROVIDER,\n useClass: AXMNotificationManagmentModuleMenuProvider,\n multi: true,\n },\n ],\n})\nexport class AXMNotificationManagementModule {}\n","import {\n AXPDataGenerator,\n AXPEntity,\n AXPEntityCommandScope,\n AXPEntityDataProviderImpl,\n AXPEntityQueryType,\n AXPEntityStorageService,\n} from '@acorex/platform/common';\nimport { AXPWidgetsCatalog } from '@acorex/platform/layout/builder';\nimport { Injector } from '@angular/core';\n\nexport async function myNotificationEntityFactory(injector: Injector): Promise<AXPEntity | null> {\n const storageService = injector.get(AXPEntityStorageService);\n const dataProvider = new AXPEntityDataProviderImpl<any>(storageService, 'notifications');\n\n const entityDef: AXPEntity = {\n module: 'notification-management',\n name: 'notification',\n source: 'notification-management.notification',\n title: 'My Notifications',\n formats: {\n individual: 'Notification',\n plural: 'My Notifications',\n },\n groups: [\n { id: 'data', title: 'Data' },\n { id: 'content', title: 'Content' },\n { id: 'action', title: 'Action' },\n { id: 'user', title: 'User' },\n { id: 'template', title: 'Template' },\n ],\n properties: [\n {\n name: 'id',\n title: 'ID',\n groupId: 'data',\n schema: {\n dataType: 'string',\n hidden: true,\n nullable: false,\n readonly: true,\n unique: { enabled: true },\n },\n },\n {\n name: 'title',\n title: 'Title',\n groupId: 'data',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.text,\n },\n },\n },\n {\n name: 'body',\n title: 'Body',\n groupId: 'data',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.largeText,\n },\n },\n },\n {\n name: 'channel',\n title: 'Channel',\n groupId: 'data',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.select,\n options: { dataSource: ['InApp', 'Email', 'SMS'], multiple: false },\n },\n },\n },\n {\n name: 'content.type',\n title: 'Content Data',\n groupId: 'content',\n schema: {\n dataType: 'object',\n interface: {\n type: AXPWidgetsCatalog.richText,\n },\n },\n },\n {\n name: 'action.type',\n title: 'Action Type',\n groupId: 'action',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.select,\n options: { dataSource: ['Link', 'Entity', 'Popup'], multiple: false },\n },\n },\n },\n {\n name: 'User.name',\n title: 'Username',\n groupId: 'user',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.text,\n },\n },\n },\n\n {\n name: 'template.category',\n title: 'Category',\n groupId: 'template',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.select,\n options: { dataSource: ['Inbox', 'Archive'], multiple: false },\n },\n },\n },\n {\n name: 'template.prority',\n title: 'Prority',\n groupId: 'template',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.select,\n options: { dataSource: ['Warning', 'Danger', 'Notice'], multiple: false },\n },\n },\n },\n {\n name: 'template.isPinned',\n title: 'Is Pinned',\n groupId: 'template',\n schema: {\n dataType: 'boolean',\n interface: {\n type: AXPWidgetsCatalog.checkbox,\n options: {\n label: 'Is Pinned',\n },\n },\n },\n },\n {\n name: 'readAt',\n title: 'Read At',\n groupId: 'data',\n schema: {\n dataType: 'datetime',\n interface: {\n type: AXPWidgetsCatalog.dateTime,\n options: { format: 'date' },\n },\n },\n },\n {\n name: 'createAt',\n title: 'Created At',\n groupId: 'data',\n schema: {\n dataType: 'datetime',\n interface: {\n type: AXPWidgetsCatalog.dateTime,\n options: { format: 'date' },\n },\n },\n },\n ],\n columns: [\n { name: 'title' },\n { name: 'body' },\n { name: 'channel' },\n { name: 'user.name' },\n { name: 'template.category' },\n { name: 'template.prority' },\n { name: 'createAt' },\n { name: 'readAt' },\n ],\n commands: {\n create: {\n execute: async (data: any) => {\n console.log('CREATE', data);\n const entity = Object.assign(data, { id: AXPDataGenerator.uuid() });\n await dataProvider.insertOne(entity);\n return entity;\n },\n },\n delete: {\n execute: async (id: any) => {\n console.log('CREATE', id);\n await dataProvider.deleteOne(id);\n },\n },\n update: {\n execute: async (data: any) => {\n await dataProvider.updateOne(data.id, data);\n },\n },\n },\n queries: {\n byKey: {\n execute: async (id: string) => {\n return await dataProvider.getOne(id);\n },\n type: AXPEntityQueryType.Single,\n },\n list: {\n execute: async (e: any) => {\n const list = await dataProvider.getAll();\n return {\n total: list.length,\n items: list.slice(e.skip, e.skip + e.take),\n };\n },\n type: AXPEntityQueryType.List,\n },\n },\n interfaces: {\n master: {\n create: { sections: [{ id: 'content' }, { id: 'action' }, { id: 'user' }, { id: 'template' }] },\n update: { sections: [{ id: 'content' }, { id: 'action' }, { id: 'user' }, { id: 'template' }] },\n list: {\n actions: [\n // {\n // title: 'Create New',\n // command: 'create-entity',\n // priority: 'primary',\n // type: 'create',\n // scope: AXPEntityCommandScope.TypeLevel,\n // },\n {\n title: 'Delete',\n command: 'delete-entity',\n priority: 'primary',\n type: 'delete',\n scope: AXPEntityCommandScope.Selected,\n },\n ],\n views: [{ name: 'all', title: 'All Notifications', fixed: true, columns: [], conditions: [], sorts: [] }],\n },\n },\n },\n };\n\n return entityDef;\n}\n","import { AXPDataGenerator } from '@acorex/platform/common';\n\nconst CHANNELS = ['InApp', 'Email', 'SMS'];\n\nconst TITLES = ['Buy Me!', 'Black Friday', 'New Message'];\n\nconst BODIES = ['Buy New Glass From Shop', 'New Offers For Black Friday!', 'Saeed Send New File Message'];\n\nconst CATEGORIES = ['Inbox', 'Archive', 'Role'];\n\nconst TYPES = ['File', 'Person', 'Notification'];\n\nconst PRORITIES = ['Warning', 'Danger', 'Notice'];\n\nexport const NOTIFICATION_TEMPLATES = Array.from({ length: 5 }).map((_, i) => {\n const name = AXPDataGenerator.string();\n return {\n id: AXPDataGenerator.uuid(),\n name: name,\n title: name,\n description: AXPDataGenerator.string(200),\n };\n});\n\nexport const NOTIFICATION_CHANNELS = Array.from({ length: 3 }).map((_, i) => {\n return {\n body: BODIES[i],\n title: TITLES[i],\n channel: CHANNELS[i],\n inApp: {\n category: AXPDataGenerator.pick(CATEGORIES),\n level: AXPDataGenerator.pick(PRORITIES),\n type: AXPDataGenerator.pick(TYPES),\n },\n };\n});\n\nexport const NOTIFICATIONS = Array.from({ length: 5 }).map((_, i) => {\n return {\n id: AXPDataGenerator.uuid(),\n title: AXPDataGenerator.pick(TITLES),\n body: AXPDataGenerator.pick(BODIES),\n channel: AXPDataGenerator.pick(CHANNELS),\n data: {},\n RelativeType: 'demo.sample',\n RelativeId: '535c8c8a-5e64-4079-929d-752394669b51',\n user: {\n id: AXPDataGenerator.uuid(),\n name: AXPDataGenerator.firstName() + ' ' + AXPDataGenerator.lastName(),\n image: 'https://i.pravatar.cc/300',\n },\n template: {\n category: AXPDataGenerator.pick(CATEGORIES),\n prority: AXPDataGenerator.pick(PRORITIES),\n type: AXPDataGenerator.pick(TYPES),\n icon: 'fa-image',\n isPinned: AXPDataGenerator.boolean(),\n },\n readAt: AXPDataGenerator.pick([AXPDataGenerator.date(), null]),\n createAt: AXPDataGenerator.date(),\n entityName: 'notifications',\n };\n});\n","import { AXPEntityDataProviderImpl, AXPEntityStorageService } from '@acorex/platform/common';\nimport { inject, Injectable } from '@angular/core';\nimport { NOTIFICATION_CHANNELS, NOTIFICATION_TEMPLATES, NOTIFICATIONS } from './notification-management-mock-data';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class NotificationManagementService {\n protected storageService = inject(AXPEntityStorageService);\n protected _notificationTemplateDataProvider: AXPEntityDataProviderImpl<any>;\n protected _notificationChannelDataProvider: any;\n protected _notificationDataProvider: any;\n\n constructor() {\n //\n this._notificationTemplateDataProvider = new AXPEntityDataProviderImpl<any>(\n this.storageService,\n 'notificationTemplates'\n );\n this._notificationTemplateDataProvider.initial(NOTIFICATION_TEMPLATES);\n\n //\n this._notificationChannelDataProvider = new AXPEntityDataProviderImpl<any>(\n this.storageService,\n 'notificationChannels'\n );\n this._notificationChannelDataProvider.initial(NOTIFICATION_CHANNELS);\n\n //\n this._notificationDataProvider = new AXPEntityDataProviderImpl<any>(this.storageService, 'notifications');\n this._notificationDataProvider.initial(NOTIFICATIONS);\n }\n\n public notificationTemplateList() {\n return this._notificationTemplateDataProvider.getAll();\n }\n\n public get notificationTemplateDataProvider() {\n return this._notificationTemplateDataProvider;\n }\n\n public get notificationChannelDataProvider() {\n return this._notificationChannelDataProvider;\n }\n\n public get notificationDataProvider() {\n return this._notificationDataProvider;\n }\n}\n","import { AXPDataGenerator, AXPEntity, AXPEntityCommandScope, AXPEntityQueryType } from '@acorex/platform/common';\nimport { applyFilterArray, applySortArray } from '@acorex/platform/core';\nimport { AXPWidgetsCatalog } from '@acorex/platform/layout/builder';\nimport { Injector } from '@angular/core';\nimport { NotificationManagementService } from '../notification-management.service';\n\nexport async function notificationChannelEntityFactory(injector: Injector): Promise<AXPEntity | null> {\n const dataService = injector.get(NotificationManagementService);\n\n const entityDef: AXPEntity = {\n module: 'notification-management',\n name: 'notificationChannel',\n source: 'notification-management.notificationChannel',\n title: 'Notification Channel',\n formats: {\n individual: 'Channel',\n plural: 'Channels',\n },\n relatedEntities: [],\n groups: [\n {\n id: 'notificationChannel',\n title: 'Notification Channel',\n },\n ],\n properties: [\n {\n name: 'title',\n title: 'Title',\n groupId: 'notificationChannel',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.text,\n },\n },\n validations: [\n {\n rule: 'required',\n },\n ],\n },\n {\n name: 'template',\n title: 'Template',\n groupId: 'notificationChannel',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.lookup,\n options: {\n entity: 'template-management.globalTemplate',\n expose: { source: 'content', target: 'body' },\n },\n },\n },\n },\n {\n name: 'body',\n title: 'Body',\n groupId: 'notificationChannel',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.richText,\n },\n },\n validations: [\n {\n rule: 'required',\n },\n ],\n },\n {\n name: 'channel',\n title: 'Channel',\n groupId: 'notificationChannel',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.select,\n options: {\n valueField: 'name',\n textField: 'title',\n dataSource: [\n { title: 'SMS', name: 'sms' },\n { title: 'Email', name: 'email' },\n { title: 'In App', name: 'inApp' },\n ],\n direction: 'horizontal',\n multiple: false,\n },\n },\n },\n validations: [\n {\n rule: 'required',\n },\n ],\n },\n {\n name: 'title',\n title: 'Title',\n groupId: 'notificationChannel',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.text,\n },\n },\n validations: [\n {\n rule: 'required',\n },\n ],\n },\n ],\n columns: [{ name: 'title' }, { name: 'body' }, { name: 'channel' }],\n commands: {\n create: {\n execute: async (data: any) => {\n const entity = Object.assign(data, { id: AXPDataGenerator.uuid() });\n\n dataService.notificationChannelDataProvider.insertOne(entity);\n return Promise.resolve(entity);\n },\n },\n delete: {\n execute: async (id: any) => {\n await await dataService.notificationChannelDataProvider.deleteOne(id);\n return Promise.resolve();\n },\n },\n update: {\n execute: async (data: any) => {\n return new Promise((resolve) => {\n setTimeout(async () => {\n await dataService.notificationChannelDataProvider.updateOne(data.id, data);\n resolve(data);\n }, 1000);\n });\n },\n },\n },\n queries: {\n byKey: {\n execute: async (id: string) => {\n return new Promise((resolve) => {\n setTimeout(async () => {\n const entity = await dataService.notificationChannelDataProvider.getOne(id);\n resolve(entity);\n }, 500);\n });\n },\n type: AXPEntityQueryType.Single,\n },\n list: {\n execute: async (e: any) => {\n const list = await dataService.notificationChannelDataProvider.getAll();\n const sortedItems = applySortArray(list, e.sort);\n const filteredItems = applyFilterArray(sortedItems, e.filter ? [e.filter] : []);\n return Promise.resolve({\n total: filteredItems.length,\n items: filteredItems.slice(e.skip, (e.skip ?? 0) + (e.take ?? 0)),\n });\n },\n type: AXPEntityQueryType.List,\n },\n },\n interfaces: {\n master: {\n create: {\n sections: [\n {\n id: 'notificationChannel',\n },\n ],\n properties: [\n {\n name: 'title',\n layout: {\n positions: {\n lg: {\n colSpan: 12,\n },\n },\n },\n },\n {\n name: 'body',\n layout: {\n positions: {\n lg: {\n colSpan: 12,\n },\n },\n },\n },\n {\n name: 'template',\n layout: {\n positions: {\n lg: {\n colSpan: 12,\n },\n },\n },\n },\n {\n name: 'channel',\n layout: {\n positions: {\n lg: {\n colSpan: 12,\n },\n },\n },\n },\n ],\n },\n update: {\n sections: [\n {\n id: 'notificationChannel',\n },\n ],\n properties: [\n {\n name: 'title',\n layout: {\n positions: {\n lg: {\n colSpan: 12,\n },\n },\n },\n },\n {\n name: 'body',\n layout: {\n positions: {\n lg: {\n colSpan: 12,\n },\n },\n },\n },\n {\n name: 'channel',\n layout: {\n positions: {\n lg: {\n colSpan: 12,\n },\n },\n },\n },\n ],\n },\n single: {\n title: '{{title}}',\n sections: [\n {\n id: 'notificationChannel',\n },\n ],\n properties: [\n {\n name: 'title',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n },\n },\n },\n },\n {\n name: 'body',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n },\n },\n },\n },\n {\n name: 'channel',\n layout: {\n positions: {\n lg: {\n colSpan: 12,\n },\n },\n },\n },\n ],\n actions: [],\n },\n list: {\n actions: [\n {\n title: 'Create New',\n command: 'create-entity',\n priority: 'primary',\n type: 'create',\n scope: AXPEntityCommandScope.TypeLevel,\n },\n {\n title: 'Delete Items',\n command: 'delete-entity',\n priority: 'primary',\n type: 'delete',\n scope: AXPEntityCommandScope.Selected,\n },\n {\n title: 'Details',\n command: 'open-entity',\n priority: 'primary',\n type: 'view',\n scope: AXPEntityCommandScope.Individual,\n },\n {\n title: 'Delete',\n command: 'delete-entity',\n priority: 'primary',\n type: 'delete',\n scope: AXPEntityCommandScope.Individual,\n },\n ],\n views: [\n {\n name: 'all',\n title: 'All Items',\n fixed: true,\n columns: [],\n conditions: [],\n sorts: [],\n },\n ],\n },\n },\n },\n };\n\n return entityDef;\n}\n","import { AXPEntity, AXPEntityCommandScope, AXPEntityQueryType } from '@acorex/platform/common';\nimport { applyFilterArray, applySortArray } from '@acorex/platform/core';\nimport { AXPWidgetsCatalog } from '@acorex/platform/layout/builder';\nimport { Injector } from '@angular/core';\nimport { NotificationManagementService } from '../notification-management.service';\n\nexport async function notificationLogEntityFactory(injector: Injector): Promise<AXPEntity | null> {\n const dataService = injector.get(NotificationManagementService);\n\n const entityDef: AXPEntity = {\n module: 'notification-management',\n name: 'notification',\n source: 'notification-management.notificationLog',\n title: 'Notification',\n formats: {\n individual: 'NotificationLog',\n plural: 'NotificationLogs',\n },\n relatedEntities: [],\n groups: [\n {\n id: 'notification',\n title: 'Notification',\n },\n ],\n properties: [\n {\n name: 'name',\n title: 'Name',\n groupId: 'notification',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.text,\n },\n },\n },\n {\n name: 'title',\n title: 'Title',\n groupId: 'notification',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.text,\n },\n },\n },\n {\n name: 'status',\n title: 'Status',\n groupId: 'notification',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.richText,\n },\n },\n },\n ],\n columns: [{ name: 'name' }, { name: 'title' }, { name: 'body' }, { name: 'user.name' }, { name: 'channel' }],\n queries: {\n byKey: {\n execute: async (id: string) => {\n return new Promise((resolve) => {\n setTimeout(async () => {\n const entity = await dataService.notificationDataProvider.getOne(id);\n resolve(entity);\n }, 500);\n });\n },\n type: AXPEntityQueryType.Single,\n },\n list: {\n execute: async (e: any) => {\n const list = await dataService.notificationDataProvider.getAll();\n const sortedItems = applySortArray(list, e.sort);\n const filteredItems = applyFilterArray(sortedItems, e.filter ? [e.filter] : []);\n return Promise.resolve({\n total: filteredItems.length,\n items: filteredItems.slice(e.skip, (e.skip ?? 0) + (e.take ?? 0)),\n });\n },\n type: AXPEntityQueryType.List,\n },\n },\n interfaces: {\n master: {\n single: {\n title: '{{title}}',\n sections: [\n {\n id: 'notification',\n layout: {\n positions: {\n lg: {\n colSpan: 12,\n },\n },\n },\n },\n ],\n properties: [\n {\n name: 'name',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n },\n },\n },\n },\n {\n name: 'user.name',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n },\n },\n },\n },\n {\n name: 'title',\n layout: {\n positions: {\n lg: {\n colSpan: 12,\n },\n },\n },\n },\n {\n name: 'body',\n layout: {\n positions: {\n lg: {\n colSpan: 12,\n },\n },\n },\n },\n {\n name: 'channel',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n },\n },\n },\n },\n ],\n actions: [],\n },\n list: {\n actions: [\n {\n title: 'Details',\n command: 'open-entity',\n priority: 'primary',\n type: 'view',\n scope: AXPEntityCommandScope.Individual,\n },\n ],\n views: [\n {\n name: 'all',\n title: 'All Items',\n fixed: true,\n columns: [],\n conditions: [],\n sorts: [],\n },\n ],\n },\n },\n },\n };\n\n return entityDef;\n}\n","import { AXPDataGenerator, AXPEntity, AXPEntityCommandScope, AXPEntityQueryType } from '@acorex/platform/common';\nimport { applyFilterArray, applySortArray } from '@acorex/platform/core';\nimport { AXPWidgetsCatalog } from '@acorex/platform/layout/builder';\nimport { Injector } from '@angular/core';\nimport { NotificationManagementService } from '../notification-management.service';\n\nexport async function notificationTemplateEntityFactory(injector: Injector): Promise<AXPEntity | null> {\n const dataService = injector.get(NotificationManagementService);\n\n const entityDef: AXPEntity = {\n module: 'notification-management',\n name: 'notificationTemplate',\n source: 'notification-management.notificationTemplate',\n title: 'Templates',\n formats: {\n individual: 'NotificationTemplate',\n plural: 'NotificationTemplates',\n },\n relatedEntities: [\n {\n entity: 'notification-management.notificationChannel',\n columns: ['title', 'body', 'channel'],\n conditions: [\n {\n name: 'notificationId',\n operator: {\n type: 'equal',\n },\n value: 'id',\n },\n ],\n },\n ],\n groups: [\n {\n id: 'notification',\n title: 'Notification',\n },\n ],\n properties: [\n {\n name: 'name',\n title: 'Name',\n groupId: 'notification',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.text,\n },\n },\n },\n {\n name: 'title',\n title: 'Title',\n groupId: 'notification',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.text,\n },\n },\n },\n {\n name: 'description',\n title: 'Description',\n groupId: 'notification',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.text,\n },\n },\n },\n ],\n columns: [{ name: 'name' }, { name: 'title' }],\n commands: {\n create: {\n execute: async (data: any) => {\n const entity = Object.assign(data, { id: AXPDataGenerator.uuid() });\n\n dataService.notificationTemplateDataProvider.insertOne(entity);\n return Promise.resolve(entity);\n },\n },\n delete: {\n execute: async (id: any) => {\n await await dataService.notificationTemplateDataProvider.deleteOne(id);\n return Promise.resolve();\n },\n },\n update: {\n execute: async (data: any) => {\n return new Promise((resolve) => {\n setTimeout(async () => {\n await dataService.notificationTemplateDataProvider.updateOne(data.id, data);\n resolve(data);\n }, 1000);\n });\n },\n },\n },\n queries: {\n byKey: {\n execute: async (id: string) => {\n return new Promise((resolve) => {\n setTimeout(async () => {\n const entity = await dataService.notificationTemplateDataProvider.getOne(id);\n resolve(entity);\n }, 500);\n });\n },\n type: AXPEntityQueryType.Single,\n },\n list: {\n execute: async (e: any) => {\n const list = await dataService.notificationTemplateDataProvider.getAll();\n const sortedItems = applySortArray(list, e.sort);\n const filteredItems = applyFilterArray(sortedItems, e.filter ? [e.filter] : []);\n return Promise.resolve({\n total: filteredItems.length,\n items: filteredItems.slice(e.skip, (e.skip ?? 0) + (e.take ?? 0)),\n });\n },\n type: AXPEntityQueryType.List,\n },\n },\n interfaces: {\n master: {\n create: {\n sections: [\n {\n id: 'notification',\n },\n ],\n properties: [\n {\n name: 'name',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n },\n },\n },\n },\n {\n name: 'title',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n },\n },\n },\n },\n {\n name: 'description',\n layout: {\n positions: {\n lg: {\n colSpan: 12,\n },\n },\n },\n },\n ],\n },\n update: {\n sections: [\n {\n id: 'notification',\n },\n ],\n properties: [\n {\n name: 'name',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n },\n },\n },\n },\n {\n name: 'title',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n },\n },\n },\n },\n {\n name: 'description',\n layout: {\n positions: {\n lg: {\n colSpan: 12,\n },\n },\n },\n },\n ],\n },\n single: {\n title: '{{title}}',\n sections: [\n {\n id: 'notification',\n layout: {\n positions: {\n lg: {\n colSpan: 12,\n },\n },\n },\n },\n ],\n properties: [\n {\n name: 'name',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n },\n },\n },\n },\n {\n name: 'title',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n },\n },\n },\n },\n {\n name: 'description',\n layout: {\n positions: {\n lg: {\n colSpan: 12,\n },\n },\n },\n },\n ],\n actions: [],\n },\n list: {\n actions: [\n {\n title: 'Create New',\n command: 'create-entity',\n priority: 'primary',\n type: 'create',\n scope: AXPEntityCommandScope.TypeLevel,\n },\n {\n title: 'Delete Items',\n command: 'delete-entity',\n priority: 'primary',\n type: 'delete',\n scope: AXPEntityCommandScope.Selected,\n },\n {\n title: 'Details',\n command: 'open-entity',\n priority: 'primary',\n type: 'view',\n scope: AXPEntityCommandScope.Individual,\n },\n {\n title: 'Delete',\n command: 'delete-entity',\n priority: 'primary',\n type: 'delete',\n scope: AXPEntityCommandScope.Individual,\n },\n ],\n views: [\n {\n name: 'all',\n title: 'All Items',\n fixed: true,\n columns: [],\n conditions: [],\n sorts: [],\n },\n ],\n },\n },\n },\n };\n\n return entityDef;\n}\n","import { AXPEntity, AXPEntityCommandScope, AXPEntityQueryType } from '@acorex/platform/common';\nimport { applyFilterArray, applySortArray } from '@acorex/platform/core';\nimport { AXPWidgetsCatalog } from '@acorex/platform/layout/builder';\nimport { Injector } from '@angular/core';\nimport { NotificationManagementService } from '../notification-management.service';\n\nexport async function notificationEntityFactory(injector: Injector): Promise<AXPEntity | null> {\n const dataService = injector.get(NotificationManagementService);\n\n const entityDef: AXPEntity = {\n module: 'notification-management',\n name: 'notification',\n source: 'notification-management.notification',\n title: 'Notification',\n formats: {\n individual: 'Notification',\n plural: 'Notifications',\n },\n relatedEntities: [\n {\n entity: 'notification-management.notificationLog',\n columns: ['title', 'status'],\n },\n ],\n groups: [\n {\n id: 'notification',\n title: 'Notification',\n },\n ],\n properties: [\n {\n name: 'name',\n title: 'Name',\n groupId: 'notification',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.text,\n },\n },\n },\n {\n name: 'title',\n title: 'Title',\n groupId: 'notification',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.text,\n },\n },\n },\n {\n name: 'body',\n title: 'Body',\n groupId: 'notification',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.richText,\n },\n },\n },\n {\n name: 'channel',\n title: 'Channel',\n groupId: 'notification',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.text,\n },\n },\n },\n {\n name: 'user.name',\n title: 'User Name',\n groupId: 'notification',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.text,\n },\n },\n },\n ],\n columns: [{ name: 'title' }, { name: 'body' }, { name: 'user.name' }, { name: 'channel' }],\n queries: {\n byKey: {\n execute: async (id: string) => {\n return new Promise((resolve) => {\n setTimeout(async () => {\n const entity = await dataService.notificationDataProvider.getOne(id);\n resolve(entity);\n }, 500);\n });\n },\n type: AXPEntityQueryType.Single,\n },\n list: {\n execute: async (e: any) => {\n const list = await dataService.notificationDataProvider.getAll();\n const sortedItems = applySortArray(list, e.sort);\n const filteredItems = applyFilterArray(sortedItems, e.filter ? [e.filter] : []);\n return Promise.resolve({\n total: filteredItems.length,\n items: filteredItems.slice(e.skip, (e.skip ?? 0) + (e.take ?? 0)),\n });\n },\n type: AXPEntityQueryType.List,\n },\n },\n interfaces: {\n master: {\n single: {\n title: '{{title}}',\n sections: [\n {\n id: 'notification',\n layout: {\n positions: {\n lg: {\n colSpan: 12,\n },\n },\n },\n },\n ],\n properties: [\n {\n name: 'name',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n },\n },\n },\n },\n {\n name: 'user.name',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n },\n },\n },\n },\n {\n name: 'title',\n layout: {\n positions: {\n lg: {\n colSpan: 12,\n },\n },\n },\n },\n {\n name: 'body',\n layout: {\n positions: {\n lg: {\n colSpan: 12,\n },\n },\n },\n },\n {\n name: 'channel',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n },\n },\n },\n },\n ],\n actions: [],\n },\n list: {\n actions: [\n {\n title: 'Details',\n command: 'open-entity',\n priority: 'primary',\n type: 'view',\n scope: AXPEntityCommandScope.Individual,\n },\n ],\n views: [\n {\n name: 'all',\n title: 'All Items',\n fixed: true,\n columns: [],\n conditions: [],\n sorts: [],\n },\n ],\n },\n },\n },\n };\n\n return entityDef;\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1","i2","i4","i3"],"mappings":"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"}
|
1
|
+
{"version":3,"file":"acorex-modules-notification-management.mjs","sources":["../../../../libs/modules/notification-management/src/lib/admin-notification-slot/admin-notification-item/admin-notification-item.component.ts","../../../../libs/modules/notification-management/src/lib/admin-notification-slot/admin-notification-item/admin-notification-item.component.html","../../../../libs/modules/notification-management/src/lib/notification.service.ts","../../../../libs/modules/notification-management/src/lib/admin-notification-slot/admin-notification-panel/admin-notification-panel.component.ts","../../../../libs/modules/notification-management/src/lib/admin-notification-slot/admin-notification-panel/admin-notification-panel.component.html","../../../../libs/modules/notification-management/src/lib/admin-notification-slot/admin-notification-slot/admin-notification-slot.component.ts","../../../../libs/modules/notification-management/src/lib/admin-notification-slot/admin-notification-slot/admin-notification-slot.component.html","../../../../libs/modules/notification-management/src/lib/entity.loader.ts","../../../../libs/modules/notification-management/src/lib/menu.provider.ts","../../../../libs/modules/notification-management/src/lib/notification-management.module.ts","../../../../libs/modules/notification-management/src/lib/entities/my-notification.ts","../../../../libs/modules/notification-management/src/lib/notification-management-mock-data.ts","../../../../libs/modules/notification-management/src/lib/notification-management.service.ts","../../../../libs/modules/notification-management/src/lib/entities/notification-channel.entity.ts","../../../../libs/modules/notification-management/src/lib/entities/notification-log.entity.ts","../../../../libs/modules/notification-management/src/lib/entities/notification-template.entity.ts","../../../../libs/modules/notification-management/src/lib/entities/notification.entity.ts","../../../../libs/modules/notification-management/src/acorex-modules-notification-management.ts"],"sourcesContent":["import { AXAvatarModule } from '@acorex/components/avatar';\nimport { AXBadgeModule } from '@acorex/components/badge';\nimport { AXButtonModule } from '@acorex/components/button';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXImageModule } from '@acorex/components/image';\nimport { AXFormatModule } from '@acorex/core/format';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, computed, input, output } from '@angular/core';\nimport { AXMNotificationItem } from '../../notification-management.type';\n\n@Component({\n selector: 'axp-master-notification-item',\n templateUrl: './admin-notification-item.component.html',\n styleUrls: ['./admin-notification-item.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: true,\n imports: [\n CommonModule,\n AXButtonModule,\n AXDecoratorModule,\n AXAvatarModule,\n AXImageModule,\n AXBadgeModule,\n AXFormatModule,\n ],\n})\nexport class AXMAdminNotificationItemComponent {\n data = input.required<AXMNotificationItem>();\n onPressNotificationItem = output<string>();\n\n differentTime = computed<number>(() => Date.now() - this.data().createAt.getTime());\n\n pressNotificationItem(id: string) {\n this.onPressNotificationItem.emit(id);\n }\n}\n","<div\n class=\"notification-item\"\n [id]=\"data().id\"\n (click)=\"pressNotificationItem(data().id)\"\n [class]=\"[data().template.prority, data().readAt ? 'read' : 'unread']\"\n>\n <ax-avatar look=\"rounded\" color=\"primary\">\n @if(data().user.image){\n <ax-image src=\"https://i.pravatar.cc/300\"></ax-image>\n }@else {\n <ax-icon>\n <i class=\"fa-solid fa-lock\"></i>\n </ax-icon>\n }\n </ax-avatar>\n <div>\n <div class=\"notification-item-title\">{{ data().title }}</div>\n <div class=\"notification-item-body\">{{ data().body }}</div>\n <!-- @if(false){\n <div>\n <div class=\"notification-file\">\n <ax-avatar color=\"primary\">\n <ax-icon>\n <i class=\"fa-solid fa-file-word ax-text-2xl\"></i>\n </ax-icon>\n </ax-avatar>\n <div>\n <div class=\"notification-file-name\">New project details.docx</div>\n <div class=\"notification-file-size\">250 KB</div>\n </div>\n <ax-button look=\"blank\">\n <ax-icon>\n <i class=\"fa-solid fa-download\"></i>\n </ax-icon>\n </ax-button>\n </div>\n </div>\n } -->\n <div class=\"notification-item-time\">{{ differentTime() | format : 'timeleft' | async }}</div>\n </div>\n @if(!data().template.isPinned){\n <div class=\"pin-notification ltr:ax-rotate-45 rtl:ax-left-0 rtl:-ax-rotate-45 ltr:ax-right-0\">\n <ax-icon>\n <i class=\"fa-solid fa-thumbtack\"></i>\n </ax-icon>\n </div>\n }\n</div>\n","import {\n AXMNotificationItem,\n AXMNotificationMarkAsReadRequest,\n AXMNotificationResponse,\n} from './notification-management.type';\nexport abstract class AXMNotificationService {\n abstract getList(): AXMNotificationResponse;\n abstract markAsRead(payload?: AXMNotificationMarkAsReadRequest): void;\n abstract create(payload?: AXMNotificationItem): void;\n}\n","import { AXBadgeModule } from '@acorex/components/badge';\nimport { AXButtonModule } from '@acorex/components/button';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXPopoverModule } from '@acorex/components/popover';\nimport { AXTabsModule } from '@acorex/components/tabs';\nimport { AXToastService } from '@acorex/components/toast';\nimport { AXFormatModule } from '@acorex/core/format';\nimport { AXPSessionService } from '@acorex/platform/auth';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, computed, effect, inject, OnInit, output, signal } from '@angular/core';\nimport { Router } from '@angular/router';\nimport {\n AXMNotificationCategory,\n AXMNotificationItem,\n AXMNotificationMarkAsReadRequest,\n AXMNotificationResponse,\n} from '../../notification-management.type';\nimport { AXMNotificationService } from '../../notification.service';\nimport { AXMAdminNotificationItemComponent } from '../admin-notification-item/admin-notification-item.component';\n@Component({\n selector: 'axm-admin-notification-panel',\n templateUrl: './admin-notification-panel.component.html',\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [\n CommonModule,\n AXButtonModule,\n AXTabsModule,\n AXDecoratorModule,\n AXBadgeModule,\n AXPopoverModule,\n AXMAdminNotificationItemComponent,\n AXFormatModule,\n ],\n})\nexport class AXMAdminNotificationPanelComponent implements OnInit {\n onNewNotfication = output<number>();\n\n private notificationService = inject(AXMNotificationService);\n private toastService = inject(AXToastService);\n private router = inject(Router);\n private sessionService = inject(AXPSessionService);\n\n notifications = signal<AXMNotificationItem[] | undefined>(undefined);\n totalNotifications = signal<number | undefined>(undefined);\n\n tabItems = computed<AXTabData[]>(() => this.getTabItems(this.notifications()), {\n equal: (a, b) => JSON.stringify(a) === JSON.stringify(b),\n });\n activeTab = signal<AXMTabDataText>('All');\n\n changeActiveTab(tab: AXMTabDataText) {\n this.activeTab.set(tab);\n }\n\n NewNotification = computed<number>(() => this.getNewNotification(this.tabItems()));\n NewNotificationEffect = effect(() => this.onNewNotfication.emit(this.NewNotification()));\n\n ngOnInit(): void {\n this.loadNotification();\n }\n\n private async loadNotification() {\n try {\n const response: AXMNotificationResponse = await this.notificationService.getList();\n this.totalNotifications.set(response.total);\n const orderedResponse = response.items.sort((a, b) => {\n if (a.template.isPinned === b.template.isPinned) {\n return new Date(a.createAt).getTime() - new Date(b.createAt).getTime();\n }\n return a.template.isPinned ? 1 : -1;\n });\n this.notifications.set(orderedResponse);\n } catch (error) {\n this.toastService.show({\n content: typeof error === 'string' ? error : 'Failed to load notifications!',\n color: 'danger',\n location: 'bottom-center',\n closeButton: true,\n timeOut: 3000,\n timeOutProgress: true,\n });\n }\n }\n\n private getTabItems(notifications: AXMNotificationItem[] | undefined): AXTabData[] {\n if (!notifications) {\n return [\n {\n text: 'All',\n //active: true,\n count: 0,\n },\n ];\n }\n const categoryCountMap = new Map<AXMTabDataText, number>();\n notifications.forEach((notification) => {\n const category = notification.template.category;\n if (!categoryCountMap.has(category)) {\n categoryCountMap.set(category, 0);\n }\n if (!notification.readAt) {\n categoryCountMap.set(category, categoryCountMap.get(category)! + 1);\n }\n });\n const tabItems = Array.from(categoryCountMap.entries()).map(([category, count]) => ({\n text: category,\n count: count,\n }));\n const totalCount = Array.from(categoryCountMap.values()).reduce((a, b) => a + b, 0);\n tabItems.unshift({\n text: 'All',\n count: totalCount,\n });\n return tabItems;\n }\n\n private getNewNotification(data: AXTabData[]): number {\n const total = data.filter((tab) => tab.text !== 'All').reduce((sum, tab) => sum + tab.count, 0);\n return total;\n }\n\n protected getNotificationItems(category: AXMTabDataText) {\n if (category === 'All') {\n return this.notifications();\n } else {\n return this.notifications()?.filter((item) => item.template.category === category) as AXMNotificationItem[];\n }\n }\n //\n\n protected async markAsRead(id: string): Promise<void> {\n try {\n const payload: AXMNotificationMarkAsReadRequest = { id: [id] };\n await this.notificationService.markAsRead(payload);\n this.toggleRead(id);\n } catch (error) {}\n }\n\n private toggleRead(id: string): void {\n this.notifications.update((old) =>\n old?.map((item) => (item.id === id ? { ...item, readAt: item.readAt ? null : new Date() } : item))\n );\n }\n\n protected async markAllAsRead() {\n try {\n await this.notificationService.markAsRead();\n this.toggleMarkAllAsRead();\n } catch (error) {\n console.error(error);\n }\n }\n\n private toggleMarkAllAsRead() {\n this.notifications.update((notification) =>\n notification?.map((item) => {\n if (!item.readAt) {\n return { ...item, readAt: new Date() };\n }\n return item;\n })\n );\n }\n protected viewAllNotifications(): void {\n this.router.navigate([`${this.sessionService.application?.name}/m/notification-management/e/my-notification/list`]);\n }\n}\n\ninterface AXTabData {\n text: AXMTabDataText;\n count: number;\n}\ntype AXMTabDataText = AXMNotificationCategory | 'All';\n","<div class=\"ax-p-4 ax-flex ax-justify-between ax-items-center\">\n <span class=\"ax-text-xl\">Notifications</span>\n <ax-button color=\"default\" look=\"blank\">\n <ax-icon>\n <i class=\"fa-regular fa-gear fa-lg\"></i>\n </ax-icon>\n </ax-button>\n</div>\n<ax-tabs [content]=\"cons\" look=\"with-line\" location=\"bottom\">\n @for(tab of tabItems(); track tab.text){\n <ax-tab-item [text]=\"tab.text\" [active]=\"activeTab() === tab.text\" (activeChange)=\"changeActiveTab(tab.text)\">\n <ax-suffix>\n @if(tab.count){\n <ax-badge [color]=\"activeTab() === tab.text ? 'primary' : 'ghost'\" [text]=\"tab.count.toString()\"></ax-badge>\n }\n </ax-suffix>\n <ax-content>\n <div class=\"ax-max-h-[50vh] ax-overflow-y-auto\">\n @for(notif of getNotificationItems(tab.text); track notif.id){\n <axp-master-notification-item\n [data]=\"notif\"\n (onPressNotificationItem)=\"markAsRead($event)\"\n ></axp-master-notification-item>\n }\n </div>\n <div class=\"ax-flex ax-gap-4 ax-justify-between ax-p-4 ax-border-t ax-border-default\">\n <ax-button\n [disabled]=\"NewNotification() === 0\"\n color=\"ghost\"\n text=\"Mark all as read\"\n (onClick)=\"markAllAsRead()\"\n ></ax-button>\n <ax-button color=\"primary\" text=\"View all notifications\" (onClick)=\"viewAllNotifications()\"></ax-button>\n </div>\n </ax-content>\n </ax-tab-item>\n }\n</ax-tabs>\n\n<ng-template [axTabContent] #cons=\"axTabContent\"></ng-template>\n","import { AXBadgeModule } from '@acorex/components/badge';\nimport { AXButtonModule } from '@acorex/components/button';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXPopoverModule } from '@acorex/components/popover';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, signal } from '@angular/core';\nimport { AXMAdminNotificationItemComponent } from '../admin-notification-item/admin-notification-item.component';\nimport { AXMAdminNotificationPanelComponent } from '../admin-notification-panel/admin-notification-panel.component';\n@Component({\n templateUrl: './admin-notification-slot.component.html',\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [\n CommonModule,\n AXButtonModule,\n AXDecoratorModule,\n AXBadgeModule,\n AXPopoverModule,\n AXMAdminNotificationItemComponent,\n AXMAdminNotificationPanelComponent,\n ],\n})\nexport class AXMAdminNotificationSlotComponent {\n totalNewNotification = signal<number>(0);\n setTotalNewNotification(value: number): void {\n this.totalNewNotification.set(value);\n }\n}\n","<ax-button class=\"ax-relative\" look=\"blank\" #notification>\n <ax-icon>\n <i class=\"fa-regular fa-bell\"></i>\n </ax-icon>\n <ax-suffix class=\"ax-absolute ax-top-0 ax-left-1/2\">\n @if(totalNewNotification()){\n <ax-badge color=\"success\" [text]=\"totalNewNotification().toString()\"></ax-badge>\n }\n </ax-suffix>\n</ax-button>\n<ax-popover [target]=\"notification\" [openOn]=\"'toggle'\" [closeOn]=\"'clickOut'\" [adaptivityEnabled]=\"true\">\n <div class=\"ax-bg-surface ax-border ax-border-default ax-rounded-md ax-shadow-md ax-w-full\">\n <axm-admin-notification-panel (onNewNotfication)=\"setTotalNewNotification($event)\"> </axm-admin-notification-panel>\n </div>\n</ax-popover>\n","import { AXPEntity } from '@acorex/platform/common';\nimport { AXPEntityDefinitionLoader } from '@acorex/platform/layout/entity';\nimport { Injectable, Injector, inject } from '@angular/core';\n\n@Injectable()\nexport class AXMNotificationModuleEntityLoader implements AXPEntityDefinitionLoader {\n private injector = inject(Injector);\n\n async get(moduleName: string, entityName: string): Promise<AXPEntity | null> {\n return new Promise(async (resolve) => {\n switch (entityName) {\n case 'notificationTemplate': {\n const entity = (await import('./entities/notification-template.entity')).notificationTemplateEntityFactory;\n resolve(entity(this.injector));\n break;\n }\n case 'notificationChannel': {\n const entity = (await import('./entities/notification-channel.entity')).notificationChannelEntityFactory;\n resolve(entity(this.injector));\n break;\n }\n case 'my-notification': {\n const entity = (await import('./entities/my-notification')).myNotificationEntityFactory;\n resolve(entity(this.injector));\n break;\n }\n case 'notification': {\n const entity = (await import('./entities/notification.entity')).notificationEntityFactory;\n resolve(entity(this.injector));\n break;\n }\n default:\n resolve(null);\n }\n });\n }\n}\n","import { AXPMenuInsertion, AXPMenuProvider } from \"@acorex/platform/common\";\n\nexport class AXMNotificationManagmentModuleMenuProvider implements AXPMenuProvider {\n\n\n async items(): Promise<AXPMenuInsertion[]> {\n const scope = \"#notification-management\"; // Scope for translation lookup\n return [\n {\n items: [\n {\n text: `${scope}.my`,\n path: '/demo/m/notification-management/e/my-notification/list',\n data: {\n // requiredPermission: '',\n },\n },\n ],\n insertAt: {\n target: 'edit-profile',\n },\n },\n {\n items: [\n {\n priority: 9001,\n text: `${scope}.module-name`,\n icon: 'fa-solid fa-bells',\n data: {\n // requiredPermission: 'demo.admin.settings',\n },\n children: [\n {\n text: `${scope}.templates`,\n path: '/demo/m/notification-management/e/notificationTemplate/list',\n icon: 'fa-solid fa-file-invoice',\n data: {\n // requiredPermission: '',\n },\n },\n {\n text: `${scope}.reports`,\n path: '/demo/m/notification-management/e/notification/list',\n icon: 'fa-solid fa-file-chart-column',\n data: {\n // requiredPermission: '',\n },\n },\n ],\n },\n ],\n },\n ] as AXPMenuInsertion[];\n }\n}\n","import { AXP_MENU_PROVIDER, AXPComponentSlotModule } from '@acorex/platform/common';\nimport { AXP_ENTITY_DEFINITION_LOADER } from '@acorex/platform/layout/entity';\nimport { NgModule } from '@angular/core';\nimport { AXMAdminNotificationSlotComponent } from './admin-notification-slot/admin-notification-slot/admin-notification-slot.component';\nimport { AXMNotificationModuleEntityLoader } from './entity.loader';\nimport { AXMNotificationManagmentModuleMenuProvider } from './menu.provider';\n\n@NgModule({\n imports: [\n AXPComponentSlotModule.forChild({\n 'header-end': [\n {\n name: 'notification',\n component: AXMAdminNotificationSlotComponent,\n },\n ],\n }),\n ],\n exports: [],\n declarations: [],\n providers: [\n {\n provide: AXP_ENTITY_DEFINITION_LOADER,\n useClass: AXMNotificationModuleEntityLoader,\n multi: true,\n },\n {\n provide: AXP_MENU_PROVIDER,\n useClass: AXMNotificationManagmentModuleMenuProvider,\n multi: true,\n },\n ],\n})\nexport class AXMNotificationManagementModule {}\n","import {\n AXPDataGenerator,\n AXPEntity,\n AXPEntityCommandScope,\n AXPEntityDataProviderImpl,\n AXPEntityQueryType,\n AXPEntityStorageService,\n} from '@acorex/platform/common';\nimport { AXPWidgetsCatalog } from '@acorex/platform/layout/builder';\nimport { Injector } from '@angular/core';\n\nexport async function myNotificationEntityFactory(injector: Injector): Promise<AXPEntity | null> {\n const storageService = injector.get(AXPEntityStorageService);\n const dataProvider = new AXPEntityDataProviderImpl<any>(storageService, 'notifications');\n const moduleName = 'notification-management';\n const scope = `#${moduleName}`;\n\n const entityDef: AXPEntity = {\n module: moduleName,\n name: 'notification',\n source: 'notification-management.notification',\n title: `${scope}.my`,\n formats: {\n individual: `${scope}.my`,\n plural: `${scope}.my`,\n },\n groups: [\n { id: 'data', title: 'Data' },\n { id: 'content', title: 'Content' },\n { id: 'action', title: 'Action' },\n { id: 'user', title: 'User' },\n { id: 'template', title: 'Template' },\n ],\n properties: [\n {\n name: 'id',\n title: 'ID',\n groupId: 'data',\n schema: {\n dataType: 'string',\n hidden: true,\n nullable: false,\n readonly: true,\n unique: { enabled: true },\n },\n },\n {\n name: 'title',\n title: '#common.title',\n groupId: 'data',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.text,\n },\n },\n },\n {\n name: 'body',\n title: 'Body',\n groupId: 'data',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.largeText,\n },\n },\n },\n {\n name: 'channel',\n title: 'Channel',\n groupId: 'data',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.select,\n options: { dataSource: ['InApp', 'Email', 'SMS'], multiple: false },\n },\n },\n },\n {\n name: 'content.type',\n title: 'Content Data',\n groupId: 'content',\n schema: {\n dataType: 'object',\n interface: {\n type: AXPWidgetsCatalog.richText,\n },\n },\n },\n {\n name: 'action.type',\n title: 'Action Type',\n groupId: 'action',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.select,\n options: { dataSource: ['Link', 'Entity', 'Popup'], multiple: false },\n },\n },\n },\n {\n name: 'User.name',\n title: 'Username',\n groupId: 'user',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.text,\n },\n },\n },\n\n {\n name: 'template.category',\n title: 'Category',\n groupId: 'template',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.select,\n options: { dataSource: ['Inbox', 'Archive'], multiple: false },\n },\n },\n },\n {\n name: 'template.prority',\n title: 'Prority',\n groupId: 'template',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.select,\n options: { dataSource: ['Warning', 'Danger', 'Notice'], multiple: false },\n },\n },\n },\n {\n name: 'template.isPinned',\n title: 'Is Pinned',\n groupId: 'template',\n schema: {\n dataType: 'boolean',\n interface: {\n type: AXPWidgetsCatalog.checkbox,\n options: {\n label: 'Is Pinned',\n },\n },\n },\n },\n {\n name: 'readAt',\n title: 'Read At',\n groupId: 'data',\n schema: {\n dataType: 'datetime',\n interface: {\n type: AXPWidgetsCatalog.dateTime,\n options: { format: 'date' },\n },\n },\n },\n {\n name: 'createAt',\n title: 'Created At',\n groupId: 'data',\n schema: {\n dataType: 'datetime',\n interface: {\n type: AXPWidgetsCatalog.dateTime,\n options: { format: 'date' },\n },\n },\n },\n ],\n columns: [\n { name: 'title' },\n { name: 'body' },\n { name: 'channel' },\n { name: 'user.name' },\n { name: 'template.category' },\n { name: 'template.prority' },\n { name: 'createAt' },\n { name: 'readAt' },\n ],\n commands: {\n create: {\n execute: async (data: any) => {\n console.log('CREATE', data);\n const entity = Object.assign(data, { id: AXPDataGenerator.uuid() });\n await dataProvider.insertOne(entity);\n return entity;\n },\n },\n delete: {\n execute: async (id: any) => {\n console.log('CREATE', id);\n await dataProvider.deleteOne(id);\n },\n },\n update: {\n execute: async (data: any) => {\n await dataProvider.updateOne(data.id, data);\n },\n },\n },\n queries: {\n byKey: {\n execute: async (id: string) => {\n return await dataProvider.getOne(id);\n },\n type: AXPEntityQueryType.Single,\n },\n list: {\n execute: async (e: any) => {\n const list = await dataProvider.getAll();\n return {\n total: list.length,\n items: list.slice(e.skip, e.skip + e.take),\n };\n },\n type: AXPEntityQueryType.List,\n },\n },\n interfaces: {\n master: {\n list: {\n actions: [\n {\n title: 'Delete',\n command: 'delete-entity',\n priority: 'primary',\n type: 'delete',\n scope: AXPEntityCommandScope.Selected,\n },\n ],\n views: [{ name: 'all', title: 'All Notifications', fixed: true, columns: [], conditions: [], sorts: [] }],\n },\n },\n },\n };\n\n return entityDef;\n}\n","import { AXPDataGenerator } from '@acorex/platform/common';\n\nconst CHANNELS = ['InApp', 'Email', 'SMS'];\n\nconst TITLES = ['Buy Me!', 'Black Friday', 'New Message'];\n\nconst BODIES = ['Buy New Glass From Shop', 'New Offers For Black Friday!', 'Saeed Send New File Message'];\n\nconst CATEGORIES = ['Inbox', 'Archive', 'Role'];\n\nconst TYPES = ['File', 'Person', 'Notification'];\n\nconst PRORITIES = ['Warning', 'Danger', 'Notice'];\n\nexport const NOTIFICATION_TEMPLATES = Array.from({ length: 5 }).map((_, i) => {\n const name = AXPDataGenerator.string();\n return {\n id: AXPDataGenerator.uuid(),\n name: name,\n title: name,\n description: AXPDataGenerator.string(200),\n };\n});\n\nexport const NOTIFICATION_CHANNELS = Array.from({ length: 3 }).map((_, i) => {\n return {\n body: BODIES[i],\n title: TITLES[i],\n channel: CHANNELS[i],\n inApp: {\n category: AXPDataGenerator.pick(CATEGORIES),\n level: AXPDataGenerator.pick(PRORITIES),\n type: AXPDataGenerator.pick(TYPES),\n },\n };\n});\n\nexport const NOTIFICATIONS = Array.from({ length: 5 }).map((_, i) => {\n return {\n id: AXPDataGenerator.uuid(),\n title: AXPDataGenerator.pick(TITLES),\n body: AXPDataGenerator.pick(BODIES),\n channel: AXPDataGenerator.pick(CHANNELS),\n data: {},\n RelativeType: 'demo.sample',\n RelativeId: '535c8c8a-5e64-4079-929d-752394669b51',\n user: {\n id: AXPDataGenerator.uuid(),\n name: AXPDataGenerator.firstName() + ' ' + AXPDataGenerator.lastName(),\n image: 'https://i.pravatar.cc/300',\n },\n template: {\n category: AXPDataGenerator.pick(CATEGORIES),\n prority: AXPDataGenerator.pick(PRORITIES),\n type: AXPDataGenerator.pick(TYPES),\n icon: 'fa-image',\n isPinned: AXPDataGenerator.boolean(),\n },\n readAt: AXPDataGenerator.pick([AXPDataGenerator.date(), null]),\n createAt: AXPDataGenerator.date(),\n entityName: 'notifications',\n };\n});\n","import { AXPEntityDataProviderImpl, AXPEntityStorageService } from '@acorex/platform/common';\nimport { inject, Injectable } from '@angular/core';\nimport { NOTIFICATION_CHANNELS, NOTIFICATION_TEMPLATES, NOTIFICATIONS } from './notification-management-mock-data';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class NotificationManagementService {\n protected storageService = inject(AXPEntityStorageService);\n protected _notificationTemplateDataProvider: AXPEntityDataProviderImpl<any>;\n protected _notificationChannelDataProvider: any;\n protected _notificationDataProvider: any;\n\n constructor() {\n //\n this._notificationTemplateDataProvider = new AXPEntityDataProviderImpl<any>(\n this.storageService,\n 'notificationTemplates'\n );\n this._notificationTemplateDataProvider.initial(NOTIFICATION_TEMPLATES);\n\n //\n this._notificationChannelDataProvider = new AXPEntityDataProviderImpl<any>(\n this.storageService,\n 'notificationChannels'\n );\n this._notificationChannelDataProvider.initial(NOTIFICATION_CHANNELS);\n\n //\n this._notificationDataProvider = new AXPEntityDataProviderImpl<any>(this.storageService, 'notifications');\n this._notificationDataProvider.initial(NOTIFICATIONS);\n }\n\n public notificationTemplateList() {\n return this._notificationTemplateDataProvider.getAll();\n }\n\n public get notificationTemplateDataProvider() {\n return this._notificationTemplateDataProvider;\n }\n\n public get notificationChannelDataProvider() {\n return this._notificationChannelDataProvider;\n }\n\n public get notificationDataProvider() {\n return this._notificationDataProvider;\n }\n}\n","import { AXPDataGenerator, AXPEntity, AXPEntityCommandScope, AXPEntityQueryType } from '@acorex/platform/common';\nimport { applyFilterArray, applySortArray } from '@acorex/platform/core';\nimport { AXPWidgetsCatalog } from '@acorex/platform/layout/builder';\nimport { Injector } from '@angular/core';\nimport { NotificationManagementService } from '../notification-management.service';\n\nexport async function notificationChannelEntityFactory(injector: Injector): Promise<AXPEntity | null> {\n const dataService = injector.get(NotificationManagementService);\n\n const entityDef: AXPEntity = {\n module: 'notification-management',\n name: 'notificationChannel',\n source: 'notificationManagement.notificationChannel',\n title: 'Notification Channel',\n formats: {\n individual: 'Channel',\n plural: 'Channels',\n },\n relatedEntities: [],\n groups: [\n {\n id: 'notificationChannel',\n title: 'Notification Channel',\n },\n ],\n properties: [\n {\n name: 'title',\n title: 'Title',\n groupId: 'notificationChannel',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.text,\n },\n },\n validations: [\n {\n rule: 'required',\n },\n ],\n },\n {\n name: 'template',\n title: 'Template',\n groupId: 'notificationChannel',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.lookup,\n options: {\n entity: 'templateManagement.template',\n expose: { source: 'content', target: 'body' },\n },\n },\n },\n },\n {\n name: 'body',\n title: 'Body',\n groupId: 'notificationChannel',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.richText,\n },\n },\n validations: [\n {\n rule: 'required',\n },\n ],\n },\n {\n name: 'channel',\n title: 'Channel',\n groupId: 'notificationChannel',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.select,\n options: {\n valueField: 'name',\n textField: 'title',\n dataSource: [\n { title: 'SMS', name: 'sms' },\n { title: 'Email', name: 'email' },\n { title: 'In App', name: 'inApp' },\n ],\n direction: 'horizontal',\n multiple: false,\n },\n },\n },\n validations: [\n {\n rule: 'required',\n },\n ],\n },\n {\n name: 'title',\n title: 'Title',\n groupId: 'notificationChannel',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.text,\n },\n },\n validations: [\n {\n rule: 'required',\n },\n ],\n },\n ],\n columns: [{ name: 'title' }, { name: 'body' }, { name: 'channel' }],\n commands: {\n create: {\n execute: async (data: any) => {\n const entity = Object.assign(data, { id: AXPDataGenerator.uuid() });\n\n dataService.notificationChannelDataProvider.insertOne(entity);\n return Promise.resolve(entity);\n },\n },\n delete: {\n execute: async (id: any) => {\n await await dataService.notificationChannelDataProvider.deleteOne(id);\n return Promise.resolve();\n },\n },\n update: {\n execute: async (data: any) => {\n return new Promise((resolve) => {\n setTimeout(async () => {\n await dataService.notificationChannelDataProvider.updateOne(data.id, data);\n resolve(data);\n }, 1000);\n });\n },\n },\n },\n queries: {\n byKey: {\n execute: async (id: string) => {\n return new Promise((resolve) => {\n setTimeout(async () => {\n const entity = await dataService.notificationChannelDataProvider.getOne(id);\n resolve(entity);\n }, 500);\n });\n },\n type: AXPEntityQueryType.Single,\n },\n list: {\n execute: async (e: any) => {\n const list = await dataService.notificationChannelDataProvider.getAll();\n const sortedItems = applySortArray(list, e.sort);\n const filteredItems = applyFilterArray(sortedItems, e.filter ? [e.filter] : []);\n return Promise.resolve({\n total: filteredItems.length,\n items: filteredItems.slice(e.skip, (e.skip ?? 0) + (e.take ?? 0)),\n });\n },\n type: AXPEntityQueryType.List,\n },\n },\n interfaces: {\n master: {\n create: {\n sections: [\n {\n id: 'notificationChannel',\n },\n ],\n properties: [\n {\n name: 'title',\n layout: {\n positions: {\n lg: {\n colSpan: 12,\n },\n },\n },\n },\n {\n name: 'body',\n layout: {\n positions: {\n lg: {\n colSpan: 12,\n },\n },\n },\n },\n {\n name: 'template',\n layout: {\n positions: {\n lg: {\n colSpan: 12,\n },\n },\n },\n },\n {\n name: 'channel',\n layout: {\n positions: {\n lg: {\n colSpan: 12,\n },\n },\n },\n },\n ],\n },\n update: {\n sections: [\n {\n id: 'notificationChannel',\n },\n ],\n properties: [\n {\n name: 'title',\n layout: {\n positions: {\n lg: {\n colSpan: 12,\n },\n },\n },\n },\n {\n name: 'body',\n layout: {\n positions: {\n lg: {\n colSpan: 12,\n },\n },\n },\n },\n {\n name: 'channel',\n layout: {\n positions: {\n lg: {\n colSpan: 12,\n },\n },\n },\n },\n ],\n },\n single: {\n title: '{{title}}',\n sections: [\n {\n id: 'notificationChannel',\n },\n ],\n properties: [\n {\n name: 'title',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n },\n },\n },\n },\n {\n name: 'body',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n },\n },\n },\n },\n {\n name: 'channel',\n layout: {\n positions: {\n lg: {\n colSpan: 12,\n },\n },\n },\n },\n ],\n actions: [],\n },\n list: {\n actions: [\n {\n title: 'Create New',\n command: 'create-entity',\n priority: 'primary',\n type: 'create',\n scope: AXPEntityCommandScope.TypeLevel,\n },\n {\n title: 'Delete Items',\n command: 'delete-entity',\n priority: 'primary',\n type: 'delete',\n scope: AXPEntityCommandScope.Selected,\n },\n {\n title: 'Details',\n command: 'open-entity',\n priority: 'primary',\n type: 'view',\n scope: AXPEntityCommandScope.Individual,\n },\n {\n title: 'Delete',\n command: 'delete-entity',\n priority: 'primary',\n type: 'delete',\n scope: AXPEntityCommandScope.Individual,\n },\n ],\n views: [\n {\n name: 'all',\n title: 'All Items',\n fixed: true,\n columns: [],\n conditions: [],\n sorts: [],\n },\n ],\n },\n },\n },\n };\n\n return entityDef;\n}\n","import { AXPEntity, AXPEntityCommandScope, AXPEntityQueryType } from '@acorex/platform/common';\nimport { applyFilterArray, applySortArray } from '@acorex/platform/core';\nimport { AXPWidgetsCatalog } from '@acorex/platform/layout/builder';\nimport { Injector } from '@angular/core';\nimport { NotificationManagementService } from '../notification-management.service';\n\nexport async function notificationLogEntityFactory(injector: Injector): Promise<AXPEntity | null> {\n const dataService = injector.get(NotificationManagementService);\n\n const entityDef: AXPEntity = {\n module: 'notification-management',\n name: 'notification',\n source: 'notification-management.notificationLog',\n title: 'Notification',\n formats: {\n individual: 'NotificationLog',\n plural: 'NotificationLogs',\n },\n relatedEntities: [],\n groups: [\n {\n id: 'notification',\n title: 'Notification',\n },\n ],\n properties: [\n {\n name: 'name',\n title: 'Name',\n groupId: 'notification',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.text,\n },\n },\n },\n {\n name: 'title',\n title: 'Title',\n groupId: 'notification',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.text,\n },\n },\n },\n {\n name: 'status',\n title: 'Status',\n groupId: 'notification',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.richText,\n },\n },\n },\n ],\n columns: [{ name: 'name' }, { name: 'title' }, { name: 'body' }, { name: 'user.name' }, { name: 'channel' }],\n queries: {\n byKey: {\n execute: async (id: string) => {\n return new Promise((resolve) => {\n setTimeout(async () => {\n const entity = await dataService.notificationDataProvider.getOne(id);\n resolve(entity);\n }, 500);\n });\n },\n type: AXPEntityQueryType.Single,\n },\n list: {\n execute: async (e: any) => {\n const list = await dataService.notificationDataProvider.getAll();\n const sortedItems = applySortArray(list, e.sort);\n const filteredItems = applyFilterArray(sortedItems, e.filter ? [e.filter] : []);\n return Promise.resolve({\n total: filteredItems.length,\n items: filteredItems.slice(e.skip, (e.skip ?? 0) + (e.take ?? 0)),\n });\n },\n type: AXPEntityQueryType.List,\n },\n },\n interfaces: {\n master: {\n single: {\n title: '{{title}}',\n sections: [\n {\n id: 'notification',\n layout: {\n positions: {\n lg: {\n colSpan: 12,\n },\n },\n },\n },\n ],\n properties: [\n {\n name: 'name',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n },\n },\n },\n },\n {\n name: 'user.name',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n },\n },\n },\n },\n {\n name: 'title',\n layout: {\n positions: {\n lg: {\n colSpan: 12,\n },\n },\n },\n },\n {\n name: 'body',\n layout: {\n positions: {\n lg: {\n colSpan: 12,\n },\n },\n },\n },\n {\n name: 'channel',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n },\n },\n },\n },\n ],\n actions: [],\n },\n list: {\n actions: [\n {\n title: 'Details',\n command: 'open-entity',\n priority: 'primary',\n type: 'view',\n scope: AXPEntityCommandScope.Individual,\n },\n ],\n views: [\n {\n name: 'all',\n title: 'All Items',\n fixed: true,\n columns: [],\n conditions: [],\n sorts: [],\n },\n ],\n },\n },\n },\n };\n\n return entityDef;\n}\n","import { AXPDataGenerator, AXPEntity, AXPEntityCommandScope, AXPEntityQueryType } from '@acorex/platform/common';\nimport { applyFilterArray, applySortArray } from '@acorex/platform/core';\nimport { AXPWidgetsCatalog } from '@acorex/platform/layout/builder';\nimport { Injector } from '@angular/core';\nimport { NotificationManagementService } from '../notification-management.service';\n\nexport async function notificationTemplateEntityFactory(injector: Injector): Promise<AXPEntity | null> {\n const dataService = injector.get(NotificationManagementService);\n\n const entityDef: AXPEntity = {\n module: 'notification-management',\n name: 'notificationTemplate',\n source: 'notification-management.notificationTemplate',\n title: 'Templates',\n formats: {\n individual: 'NotificationTemplate',\n plural: 'NotificationTemplates',\n },\n relatedEntities: [\n {\n entity: 'notification-management.notificationChannel',\n columns: ['title', 'body', 'channel'],\n conditions: [\n {\n name: 'notificationId',\n operator: {\n type: 'equal',\n },\n value: 'id',\n },\n ],\n },\n ],\n groups: [\n {\n id: 'notification',\n title: 'Notification',\n },\n ],\n properties: [\n {\n name: 'name',\n title: 'Name',\n groupId: 'notification',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.text,\n },\n },\n },\n {\n name: 'title',\n title: 'Title',\n groupId: 'notification',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.text,\n },\n },\n },\n {\n name: 'description',\n title: 'Description',\n groupId: 'notification',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.text,\n },\n },\n },\n ],\n columns: [{ name: 'name' }, { name: 'title' }],\n commands: {\n create: {\n execute: async (data: any) => {\n const entity = Object.assign(data, { id: AXPDataGenerator.uuid() });\n\n dataService.notificationTemplateDataProvider.insertOne(entity);\n return Promise.resolve(entity);\n },\n },\n delete: {\n execute: async (id: any) => {\n await await dataService.notificationTemplateDataProvider.deleteOne(id);\n return Promise.resolve();\n },\n },\n update: {\n execute: async (data: any) => {\n return new Promise((resolve) => {\n setTimeout(async () => {\n await dataService.notificationTemplateDataProvider.updateOne(data.id, data);\n resolve(data);\n }, 1000);\n });\n },\n },\n },\n queries: {\n byKey: {\n execute: async (id: string) => {\n return new Promise((resolve) => {\n setTimeout(async () => {\n const entity = await dataService.notificationTemplateDataProvider.getOne(id);\n resolve(entity);\n }, 500);\n });\n },\n type: AXPEntityQueryType.Single,\n },\n list: {\n execute: async (e: any) => {\n const list = await dataService.notificationTemplateDataProvider.getAll();\n const sortedItems = applySortArray(list, e.sort);\n const filteredItems = applyFilterArray(sortedItems, e.filter ? [e.filter] : []);\n return Promise.resolve({\n total: filteredItems.length,\n items: filteredItems.slice(e.skip, (e.skip ?? 0) + (e.take ?? 0)),\n });\n },\n type: AXPEntityQueryType.List,\n },\n },\n interfaces: {\n master: {\n create: {\n sections: [\n {\n id: 'notification',\n },\n ],\n properties: [\n {\n name: 'name',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n },\n },\n },\n },\n {\n name: 'title',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n },\n },\n },\n },\n {\n name: 'description',\n layout: {\n positions: {\n lg: {\n colSpan: 12,\n },\n },\n },\n },\n ],\n },\n update: {\n sections: [\n {\n id: 'notification',\n },\n ],\n properties: [\n {\n name: 'name',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n },\n },\n },\n },\n {\n name: 'title',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n },\n },\n },\n },\n {\n name: 'description',\n layout: {\n positions: {\n lg: {\n colSpan: 12,\n },\n },\n },\n },\n ],\n },\n single: {\n title: '{{title}}',\n sections: [\n {\n id: 'notification',\n layout: {\n positions: {\n lg: {\n colSpan: 12,\n },\n },\n },\n },\n ],\n properties: [\n {\n name: 'name',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n },\n },\n },\n },\n {\n name: 'title',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n },\n },\n },\n },\n {\n name: 'description',\n layout: {\n positions: {\n lg: {\n colSpan: 12,\n },\n },\n },\n },\n ],\n actions: [],\n },\n list: {\n actions: [\n {\n title: 'Create New',\n command: 'create-entity',\n priority: 'primary',\n type: 'create',\n scope: AXPEntityCommandScope.TypeLevel,\n },\n {\n title: 'Delete Items',\n command: 'delete-entity',\n priority: 'primary',\n type: 'delete',\n scope: AXPEntityCommandScope.Selected,\n },\n {\n title: 'Details',\n command: 'open-entity',\n priority: 'primary',\n type: 'view',\n scope: AXPEntityCommandScope.Individual,\n },\n {\n title: 'Delete',\n command: 'delete-entity',\n priority: 'primary',\n type: 'delete',\n scope: AXPEntityCommandScope.Individual,\n },\n ],\n views: [\n {\n name: 'all',\n title: 'All Items',\n fixed: true,\n columns: [],\n conditions: [],\n sorts: [],\n },\n ],\n },\n },\n },\n };\n\n return entityDef;\n}\n","import { AXPEntity, AXPEntityCommandScope, AXPEntityQueryType } from '@acorex/platform/common';\nimport { applyFilterArray, applySortArray } from '@acorex/platform/core';\nimport { AXPWidgetsCatalog } from '@acorex/platform/layout/builder';\nimport { Injector } from '@angular/core';\nimport { NotificationManagementService } from '../notification-management.service';\n\nexport async function notificationEntityFactory(injector: Injector): Promise<AXPEntity | null> {\n const dataService = injector.get(NotificationManagementService);\n\n const entityDef: AXPEntity = {\n module: 'notification-management',\n name: 'notification',\n source: 'notification-management.notification',\n title: 'Notification',\n formats: {\n individual: 'Notification',\n plural: 'Notifications',\n },\n relatedEntities: [\n {\n entity: 'notification-management.notificationLog',\n columns: ['title', 'status'],\n },\n ],\n groups: [\n {\n id: 'notification',\n title: 'Notification',\n },\n ],\n properties: [\n {\n name: 'name',\n title: 'Name',\n groupId: 'notification',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.text,\n },\n },\n },\n {\n name: 'title',\n title: 'Title',\n groupId: 'notification',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.text,\n },\n },\n },\n {\n name: 'body',\n title: 'Body',\n groupId: 'notification',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.richText,\n },\n },\n },\n {\n name: 'channel',\n title: 'Channel',\n groupId: 'notification',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.text,\n },\n },\n },\n {\n name: 'user.name',\n title: 'User Name',\n groupId: 'notification',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.text,\n },\n },\n },\n ],\n columns: [{ name: 'title' }, { name: 'body' }, { name: 'user.name' }, { name: 'channel' }],\n queries: {\n byKey: {\n execute: async (id: string) => {\n return new Promise((resolve) => {\n setTimeout(async () => {\n const entity = await dataService.notificationDataProvider.getOne(id);\n resolve(entity);\n }, 500);\n });\n },\n type: AXPEntityQueryType.Single,\n },\n list: {\n execute: async (e: any) => {\n const list = await dataService.notificationDataProvider.getAll();\n const sortedItems = applySortArray(list, e.sort);\n const filteredItems = applyFilterArray(sortedItems, e.filter ? [e.filter] : []);\n return Promise.resolve({\n total: filteredItems.length,\n items: filteredItems.slice(e.skip, (e.skip ?? 0) + (e.take ?? 0)),\n });\n },\n type: AXPEntityQueryType.List,\n },\n },\n interfaces: {\n master: {\n single: {\n title: '{{title}}',\n sections: [\n {\n id: 'notification',\n layout: {\n positions: {\n lg: {\n colSpan: 12,\n },\n },\n },\n },\n ],\n properties: [\n {\n name: 'name',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n },\n },\n },\n },\n {\n name: 'user.name',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n },\n },\n },\n },\n {\n name: 'title',\n layout: {\n positions: {\n lg: {\n colSpan: 12,\n },\n },\n },\n },\n {\n name: 'body',\n layout: {\n positions: {\n lg: {\n colSpan: 12,\n },\n },\n },\n },\n {\n name: 'channel',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n },\n },\n },\n },\n ],\n actions: [],\n },\n list: {\n actions: [\n {\n title: 'Details',\n command: 'open-entity',\n priority: 'primary',\n type: 'view',\n scope: AXPEntityCommandScope.Individual,\n },\n ],\n views: [\n {\n name: 'all',\n title: 'All Items',\n fixed: true,\n columns: [],\n conditions: [],\n sorts: [],\n },\n ],\n },\n },\n },\n };\n\n return entityDef;\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1","i2","i4","i3"],"mappings":"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"}
|