@acorex/modules 18.1.3 → 18.1.5
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/backend/lib/data/api/comment.mock.service.d.ts +62 -0
- package/backend/lib/data/api/notification.mock.service.d.ts +34 -0
- package/backend/lib/data/index.d.ts +1 -0
- package/esm2022/application-management/lib/application-management.service.mjs +3 -3
- package/esm2022/application-management/lib/module-designer/module-designer.component.mjs +1 -1
- package/esm2022/auth/lib/account/profile/profile-slot.component.mjs +3 -3
- package/esm2022/backend/lib/backend.module.mjs +11 -1
- package/esm2022/backend/lib/data/api/comment.mock.service.mjs +142 -0
- package/esm2022/backend/lib/data/api/notification.mock.service.mjs +71 -0
- package/esm2022/backend/lib/data/index.mjs +2 -1
- package/esm2022/form-management/lib/form-management.module.mjs +5 -4
- package/esm2022/language-management/acorex-modules-language-management.mjs +5 -0
- package/esm2022/language-management/index.mjs +2 -0
- package/esm2022/language-management/lib/entities/language.entity.mjs +242 -0
- package/esm2022/language-management/lib/language-management.module.mjs +39 -0
- package/esm2022/language-management/lib/notification-management.service.mjs +23 -0
- package/esm2022/notification-management/acorex-modules-notification-management.mjs +5 -0
- package/esm2022/notification-management/index.mjs +7 -0
- package/esm2022/notification-management/lib/admin-notification-slot/admin-notification-item/admin-notification-item.component.mjs +47 -0
- package/esm2022/notification-management/lib/admin-notification-slot/admin-notification-panel/admin-notification-panel.component.mjs +131 -0
- package/esm2022/notification-management/lib/admin-notification-slot/admin-notification-slot/admin-notification-slot.component.mjs +36 -0
- package/esm2022/notification-management/lib/entities/notification-channel.entity.mjs +345 -0
- package/esm2022/notification-management/lib/entities/notification-template.entity.mjs +298 -0
- package/esm2022/notification-management/lib/entities/notification.entity.mjs +207 -0
- package/esm2022/notification-management/lib/notification-management-mock-data.mjs +55 -0
- package/esm2022/notification-management/lib/notification-management.module.mjs +66 -0
- package/esm2022/notification-management/lib/notification-management.service.mjs +39 -0
- package/esm2022/notification-management/lib/notification-management.type.mjs +2 -0
- package/esm2022/notification-management/lib/notification.service.mjs +3 -0
- package/esm2022/template-management/acorex-modules-template-management.mjs +5 -0
- package/esm2022/template-management/index.mjs +4 -0
- package/esm2022/template-management/lib/entities/global-template.entity.mjs +298 -0
- package/esm2022/template-management/lib/entities/template-variable.entity.mjs +304 -0
- package/esm2022/template-management/lib/template-management-mock-data.mjs +11 -0
- package/esm2022/template-management/lib/template-management.module.mjs +45 -0
- package/esm2022/template-management/lib/template-management.service.mjs +24 -0
- package/fesm2022/{acorex-modules-application-management-module-designer.component-C-lY0Apl.mjs → acorex-modules-application-management-module-designer.component-CFLXuP2G.mjs} +2 -2
- package/fesm2022/{acorex-modules-application-management-module-designer.component-C-lY0Apl.mjs.map → acorex-modules-application-management-module-designer.component-CFLXuP2G.mjs.map} +1 -1
- package/fesm2022/acorex-modules-application-management.mjs +3 -3
- package/fesm2022/acorex-modules-application-management.mjs.map +1 -1
- package/fesm2022/{acorex-modules-auth-acorex-modules-auth-4OzzidjS.mjs → acorex-modules-auth-acorex-modules-auth-iGiPFEeb.mjs} +10 -10
- package/fesm2022/acorex-modules-auth-acorex-modules-auth-iGiPFEeb.mjs.map +1 -0
- package/fesm2022/{acorex-modules-auth-app-chooser.component-CHTEeWgx.mjs → acorex-modules-auth-app-chooser.component-BB3SIzCP.mjs} +2 -2
- package/fesm2022/{acorex-modules-auth-app-chooser.component-CHTEeWgx.mjs.map → acorex-modules-auth-app-chooser.component-BB3SIzCP.mjs.map} +1 -1
- package/fesm2022/acorex-modules-auth-blank.layout-Bq822Iz4.mjs.map +1 -1
- package/fesm2022/{acorex-modules-auth-login.module-DMit4yw0.mjs → acorex-modules-auth-login.module-ChEv9c5I.mjs} +4 -4
- package/fesm2022/acorex-modules-auth-login.module-ChEv9c5I.mjs.map +1 -0
- package/fesm2022/{acorex-modules-auth-master.layout-BCYIjTB0.mjs → acorex-modules-auth-master.layout-CZv3BD5c.mjs} +2 -2
- package/fesm2022/{acorex-modules-auth-master.layout-BCYIjTB0.mjs.map → acorex-modules-auth-master.layout-CZv3BD5c.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-auth-password.component-WA-CA0Ln.mjs → acorex-modules-auth-password.component-CPWiBXdG.mjs} +2 -2
- package/fesm2022/{acorex-modules-auth-password.component-WA-CA0Ln.mjs.map → acorex-modules-auth-password.component-CPWiBXdG.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-auth-password.component-D16ms36y.mjs → acorex-modules-auth-password.component-CxZ1weks.mjs} +2 -2
- package/fesm2022/{acorex-modules-auth-password.component-D16ms36y.mjs.map → acorex-modules-auth-password.component-CxZ1weks.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-auth-routes-C3ye31RS.mjs → acorex-modules-auth-routes-C7r2Jm6s.mjs} +2 -2
- package/fesm2022/{acorex-modules-auth-routes-C3ye31RS.mjs.map → acorex-modules-auth-routes-C7r2Jm6s.mjs.map} +1 -1
- package/fesm2022/acorex-modules-auth-tenant-chooser.component-CHr5_kh7.mjs.map +1 -1
- package/fesm2022/acorex-modules-auth-two-factor-code.component-B_7l39pX.mjs.map +1 -1
- package/fesm2022/{acorex-modules-auth-two-factor.module-CkZCBo0B.mjs → acorex-modules-auth-two-factor.module-BgkJYe7T.mjs} +2 -2
- package/fesm2022/acorex-modules-auth-two-factor.module-BgkJYe7T.mjs.map +1 -0
- package/fesm2022/acorex-modules-auth.mjs +1 -1
- package/fesm2022/acorex-modules-backend.mjs +218 -2
- package/fesm2022/acorex-modules-backend.mjs.map +1 -1
- package/fesm2022/acorex-modules-form-management-designer.page-SoPH2V7i.mjs.map +1 -1
- package/fesm2022/acorex-modules-form-management.mjs +4 -3
- package/fesm2022/acorex-modules-form-management.mjs.map +1 -1
- package/fesm2022/acorex-modules-language-management-language.entity-CwD5FHGc.mjs +266 -0
- package/fesm2022/acorex-modules-language-management-language.entity-CwD5FHGc.mjs.map +1 -0
- package/fesm2022/acorex-modules-language-management.mjs +46 -0
- package/fesm2022/acorex-modules-language-management.mjs.map +1 -0
- package/fesm2022/acorex-modules-notification-management.mjs +1203 -0
- package/fesm2022/acorex-modules-notification-management.mjs.map +1 -0
- package/fesm2022/acorex-modules-template-management.mjs +690 -0
- package/fesm2022/acorex-modules-template-management.mjs.map +1 -0
- package/form-management/lib/form-management.module.d.ts +2 -1
- package/language-management/README.md +3 -0
- package/language-management/index.d.ts +1 -0
- package/language-management/lib/entities/language.entity.d.ts +3 -0
- package/language-management/lib/language-management.module.d.ts +12 -0
- package/language-management/lib/notification-management.service.d.ts +9 -0
- package/notification-management/README.md +3 -0
- package/notification-management/index.d.ts +6 -0
- package/notification-management/lib/admin-notification-slot/admin-notification-item/admin-notification-item.component.d.ts +14 -0
- package/notification-management/lib/admin-notification-slot/admin-notification-panel/admin-notification-panel.component.d.ts +30 -0
- package/notification-management/lib/admin-notification-slot/admin-notification-slot/admin-notification-slot.component.d.ts +7 -0
- package/notification-management/lib/entities/notification-channel.entity.d.ts +3 -0
- package/notification-management/lib/entities/notification-template.entity.d.ts +3 -0
- package/notification-management/lib/entities/notification.entity.d.ts +3 -0
- package/notification-management/lib/notification-management-mock-data.d.ts +41 -0
- package/notification-management/lib/notification-management.module.d.ts +13 -0
- package/notification-management/lib/notification-management.service.d.ts +15 -0
- package/notification-management/lib/notification-management.type.d.ts +42 -0
- package/notification-management/lib/notification.service.d.ts +7 -0
- package/package.json +23 -11
- package/template-management/README.md +3 -0
- package/template-management/index.d.ts +3 -0
- package/template-management/lib/entities/global-template.entity.d.ts +3 -0
- package/template-management/lib/entities/template-variable.entity.d.ts +3 -0
- package/template-management/lib/template-management-mock-data.d.ts +7 -0
- package/template-management/lib/template-management.module.d.ts +12 -0
- package/template-management/lib/template-management.service.d.ts +9 -0
- package/esm2022/notification/acorex-modules-notification.mjs +0 -5
- package/esm2022/notification/index.mjs +0 -4
- package/esm2022/notification/lib/notification.module.mjs +0 -16
- package/fesm2022/acorex-modules-auth-acorex-modules-auth-4OzzidjS.mjs.map +0 -1
- package/fesm2022/acorex-modules-auth-login.module-DMit4yw0.mjs.map +0 -1
- package/fesm2022/acorex-modules-auth-two-factor.module-CkZCBo0B.mjs.map +0 -1
- package/fesm2022/acorex-modules-notification.mjs +0 -26
- package/fesm2022/acorex-modules-notification.mjs.map +0 -1
- package/notification/README.md +0 -4
- package/notification/index.d.ts +0 -1
- package/notification/lib/notification.module.d.ts +0 -6
@@ -0,0 +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/notification-management.module.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-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 { AXPSessionService } from '@acorex/platform/auth';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, computed, inject, input, output } from '@angular/core';\nimport { Router } from '@angular/router';\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 router = inject(Router);\n sessionStorage = inject(AXPSessionService);\n\n differentTime = computed<number>(() => Date.now() - this.data().createAt.getTime());\n\n pressNotificationItem(id: string) {\n this.onPressNotificationItem.emit(id);\n //const [module, entity] = this.data().RelativeType?.split('.') as [string, string];\n //const url = `${this.sessionStorage.application?.name}/m/${module}/e/${entity}/${this.data().RelativeId}`;\n //console.log(url);\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(true){\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 { AXMNotificationMarkAsReadRequest, AXMNotificationResponse } from './notification-management.type';\nexport abstract class AXMNotificationService {\n abstract getList(): AXMNotificationResponse;\n abstract toggleRead(payload?: AXMNotificationMarkAsReadRequest): boolean;\n abstract markAllAsRead(): boolean;\n abstract create(): boolean;\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 { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, computed, effect, inject, OnInit, output, signal } from '@angular/core';\nimport {\n AXMNotificationCategory,\n AXMNotificationItem,\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\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 protected onPressNotificationItem = (id: string) => {\n this.notifications.update((old) =>\n old?.map((item) => (item.id === id && !item.readAt ? { ...item, readAt: new Date() } : item))\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 protected markAllAsRead() {\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}\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)=\"onPressNotificationItem($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\"></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 ax-text-slate-400 dark:ax-text-slate-200\"></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 { AXPComponentSlotModule } from '@acorex/platform/common';\nimport { AXPEntityDefinitionRegistryService } from '@acorex/platform/layout/entity';\nimport { Inject, Injector, ModuleWithProviders, NgModule, Optional } from '@angular/core';\nimport { AXMAdminNotificationSlotComponent } from './admin-notification-slot/admin-notification-slot/admin-notification-slot.component';\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})\nexport class AXMNotificationManagementModule {\n static forRoot(): ModuleWithProviders<AXMNotificationManagementModule> {\n return {\n ngModule: AXMNotificationManagementModule,\n providers: [\n {\n provide: 'AXP_REGISTER_TEMPLATE_NoTIFICATION',\n useFactory: async (entityRegistry: AXPEntityDefinitionRegistryService, injector: Injector) => {\n const notificationTemplateEntity = await (\n await import('./entities/notification.entity')\n ).notificationEntityFactory(injector);\n entityRegistry.register(notificationTemplateEntity as any);\n //\n\n const notificationChannelEntity = await (\n await import('./entities/notification-channel.entity')\n ).notificationChannelEntityFactory(injector);\n entityRegistry.register(notificationChannelEntity as any);\n\n //\n const notificationEntity = await (\n await import('./entities/notification.entity')\n ).notificationEntityFactory(injector);\n entityRegistry.register(notificationEntity as any);\n },\n deps: [AXPEntityDefinitionRegistryService, Injector], // Add any dependencies if needed\n },\n ],\n };\n }\n\n /**\n * @ignore\n */\n constructor(@Optional() @Inject('AXP_REGISTER_TEMPLATE_NoTIFICATION') instances: any[]) { }\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.largeText,\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 debugger;\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 { 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":["i2","i1","i4","i3"],"mappings":"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"}
|