@acorex/modules 19.1.4 → 19.1.6
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/fesm2022/{acorex-modules-application-management-module-designer.component-1pXIvIeG.mjs → acorex-modules-application-management-module-designer.component-DjX4Ixc9.mjs} +2 -2
- package/fesm2022/acorex-modules-application-management-module-designer.component-DjX4Ixc9.mjs.map +1 -0
- package/fesm2022/acorex-modules-application-management.mjs +1 -1
- package/fesm2022/acorex-modules-notification-management.mjs +630 -687
- package/fesm2022/acorex-modules-notification-management.mjs.map +1 -1
- package/fesm2022/acorex-modules-platform-management.mjs +28 -32
- package/fesm2022/acorex-modules-platform-management.mjs.map +1 -1
- package/fesm2022/acorex-modules-text-template-management.mjs +2 -2
- package/fesm2022/acorex-modules-text-template-management.mjs.map +1 -1
- package/notification-management/index.d.ts +2 -2
- package/notification-management/lib/const.d.ts +1 -0
- package/notification-management/lib/entities/channel/channel.service.d.ts +10 -0
- package/notification-management/lib/entities/channel/channel.types.d.ts +8 -0
- package/notification-management/lib/entities/template/template.service.d.ts +10 -0
- package/notification-management/lib/entities/template/template.types.d.ts +8 -0
- package/package.json +7 -7
- package/platform-management/lib/common/organizarion/setting.keys.d.ts +14 -14
- package/platform-management/lib/common/regional/setting.keys.d.ts +11 -11
- package/platform-management/lib/const.d.ts +0 -4
- package/fesm2022/acorex-modules-application-management-module-designer.component-1pXIvIeG.mjs.map +0 -1
- package/notification-management/lib/notification-management-mock-data.d.ts +0 -40
- package/notification-management/lib/notification-management.service.d.ts +0 -15
- /package/notification-management/lib/entities/{notification-channel.entity.d.ts → channel/channel.entity.d.ts} +0 -0
- /package/notification-management/lib/entities/{notification-template.entity.d.ts → template/template.entity.d.ts} +0 -0
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"acorex-modules-notification-management.mjs","sources":["../../../../libs/modules/notification-management/src/lib/notification.service.ts","../../../../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/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/const.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 {\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 { 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 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 { 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 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 { AXMAdminNotificationPanelComponent } from '../admin-notification-panel/admin-notification-panel.component';\n@Component({\n templateUrl: './admin-notification-slot.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [\n CommonModule,\n AXButtonModule,\n AXDecoratorModule,\n AXBadgeModule,\n AXPopoverModule,\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","export const AXMNotificationManagementModuleConst = {\n moduleName: 'NotificationManagement',\n moduleRoute: 'notification-management',\n i18n: 'notification-management',\n myNotificationEntity: 'my-notification',\n notificationTemplateEntity: 'notification-template',\n notificationEntity: 'notification',\n};\n","import { AXPMenuProvider, AXPMenuProviderContext } from '@acorex/platform/common';\nimport { AXPEntityService } from '@acorex/platform/layout/entity';\nimport { inject } from '@angular/core';\nimport { AXMNotificationManagementModuleConst } from './const';\n\nexport class AXMNotificationManagmentModuleMenuProvider implements AXPMenuProvider {\n private entityService = inject(AXPEntityService);\n\n async provide(context: AXPMenuProviderContext): Promise<void> {\n const scope = AXMNotificationManagementModuleConst.i18n;\n const moduleName = AXMNotificationManagementModuleConst.moduleName;\n context.addItems([\n {\n name: moduleName,\n priority: 9001,\n text: `t('module-name', {scope: \"${scope}\"})`,\n icon: 'fa-solid fa-bells',\n data: {\n // requiredPermission: 'demo.admin.settings',\n },\n children: [\n {\n text: `t('templates', {scope: \"${scope}\"})`,\n //TODO something might be missing here notificationTemplate vs notification- template\n path: this.entityService.createPath(\n moduleName,\n AXMNotificationManagementModuleConst.notificationTemplateEntity\n ),\n icon: 'fa-solid fa-file-invoice',\n data: {\n // requiredPermission: '',\n },\n },\n {\n text: `t('reports', {scope: \"${scope}\"})`,\n path: this.entityService.createPath(moduleName, AXMNotificationManagementModuleConst.notificationEntity),\n icon: 'fa-solid fa-file-chart-column',\n data: {\n // requiredPermission: '',\n },\n },\n ],\n },\n ]);\n //\n context.find('edit-profile').insert(\n [\n {\n name: 'my-notifications',\n text: `t('my', {scope: \"${scope}\"})`,\n icon: 'fa-solid fa-bell',\n path: this.entityService.createPath(moduleName, AXMNotificationManagementModuleConst.myNotificationEntity),\n data: {\n // requiredPermission: '',\n },\n },\n ],\n 'after'\n );\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: `t('my',{scope: 'notification-management'})`,\n formats: {\n individual: `t('my',{scope: 'notification-management'})`,\n plural: `t('my',{scope: 'notification-management'})`,\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: 't(\"title\", { scope: \"common\" })',\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: 't(\"template\",{scope: \"notification-management\"})',\n formats: {\n individual: 't(\"template\",{scope: \"notification-management\"})',\n plural: 't(\"template\",{scope: \"notification-management\"})',\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: 't(\"notifications\",{scope: \"notification-management\"})',\n formats: {\n individual: 't(\"notifications\",{scope: \"notification-management\"})',\n plural: 't(\"notifications\",{scope: \"notification-management\"})',\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/notification.service.ts","../../../../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/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/const.ts","../../../../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/channel/channel.service.ts","../../../../libs/modules/notification-management/src/lib/entities/channel/channel.entity.ts","../../../../libs/modules/notification-management/src/lib/entities/my-notification.ts","../../../../libs/modules/notification-management/src/lib/entities/notification-log.entity.ts","../../../../libs/modules/notification-management/src/lib/entities/notification.entity.ts","../../../../libs/modules/notification-management/src/lib/entities/template/template.service.ts","../../../../libs/modules/notification-management/src/lib/entities/template/template.entity.ts","../../../../libs/modules/notification-management/src/acorex-modules-notification-management.ts"],"sourcesContent":["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 { 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 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 { 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 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 { AXMAdminNotificationPanelComponent } from '../admin-notification-panel/admin-notification-panel.component';\n@Component({\n templateUrl: './admin-notification-slot.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [\n CommonModule,\n AXButtonModule,\n AXDecoratorModule,\n AXBadgeModule,\n AXPopoverModule,\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","export const AXMNotificationManagementModuleConst = {\n moduleName: 'NotificationManagement',\n moduleRoute: 'notification-management',\n i18n: 'notification-management',\n myNotificationEntity: 'my-notification',\n notificationTemplateEntity: 'Templates',\n notificationChannelEntity: 'Channels',\n notificationEntity: 'Notifications',\n};\n","import { AXPEntity } from '@acorex/platform/common';\nimport { AXPEntityDefinitionLoader } from '@acorex/platform/layout/entity';\nimport { Injectable, Injector, inject } from '@angular/core';\nimport { AXMNotificationManagementModuleConst } from './const';\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 AXMNotificationManagementModuleConst.notificationTemplateEntity: {\n const entity = (await import('./entities/template/template.entity')).notificationTemplateEntityFactory;\n resolve(entity(this.injector));\n break;\n }\n case AXMNotificationManagementModuleConst.notificationChannelEntity: {\n const entity = (await import('./entities/channel/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 AXMNotificationManagementModuleConst.notificationEntity: {\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 { AXPMenuProvider, AXPMenuProviderContext } from '@acorex/platform/common';\nimport { AXPEntityService } from '@acorex/platform/layout/entity';\nimport { inject } from '@angular/core';\nimport { AXMNotificationManagementModuleConst } from './const';\n\nexport class AXMNotificationManagmentModuleMenuProvider implements AXPMenuProvider {\n private entityService = inject(AXPEntityService);\n\n async provide(context: AXPMenuProviderContext): Promise<void> {\n const scope = AXMNotificationManagementModuleConst.i18n;\n const moduleName = AXMNotificationManagementModuleConst.moduleName;\n context.addItems([\n {\n name: moduleName,\n priority: 9001,\n text: `t('module-name', {scope: \"${scope}\"})`,\n icon: 'fa-solid fa-bells',\n data: {\n // requiredPermission: 'demo.admin.settings',\n },\n children: [\n {\n text: `t('templates', {scope: \"${scope}\"})`,\n //TODO something might be missing here notificationTemplate vs notification- template\n path: this.entityService.createPath(\n moduleName,\n AXMNotificationManagementModuleConst.notificationTemplateEntity\n ),\n icon: 'fa-solid fa-file-invoice',\n data: {\n // requiredPermission: '',\n },\n },\n {\n text: `t('reports', {scope: \"${scope}\"})`,\n path: this.entityService.createPath(moduleName, AXMNotificationManagementModuleConst.notificationEntity),\n icon: 'fa-solid fa-file-chart-column',\n data: {\n // requiredPermission: '',\n },\n },\n ],\n },\n ]);\n //\n context.find('edit-profile').insert(\n [\n {\n name: 'my-notifications',\n text: `t('my', {scope: \"${scope}\"})`,\n icon: 'fa-solid fa-bell',\n path: this.entityService.createPath(moduleName, AXMNotificationManagementModuleConst.myNotificationEntity),\n data: {\n // requiredPermission: '',\n },\n },\n ],\n 'after'\n );\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 { AXMEntityCrudServiceImpl } from '@acorex/platform/common';\nimport { Injectable } from '@angular/core';\nimport { AXMNotificationManagementModuleConst } from '../../const';\nimport { AXMNotificationManagementChannelEntityModel } from './channel.types';\n\nexport abstract class AXMNotificationManagementChannelEntityService extends AXMEntityCrudServiceImpl<\n string,\n AXMNotificationManagementChannelEntityModel\n> {}\n\n@Injectable()\nexport class AXMNotificationManagementChannelEntityServiceImpl extends AXMNotificationManagementChannelEntityService {\n constructor() {\n super(\n `${AXMNotificationManagementModuleConst.moduleName}.${AXMNotificationManagementModuleConst.notificationChannelEntity}`\n );\n }\n}\n","import { AXPDataGenerator, AXPEntity, AXPEntityCommandScope, AXPEntityQueryType } from '@acorex/platform/common';\nimport { AXPWidgetsCatalog } from '@acorex/platform/layout/builder';\nimport { Injector } from '@angular/core';\nimport { AXMNotificationManagementModuleConst } from '../../const';\nimport { AXMNotificationManagementChannelEntityService } from './channel.service';\n\nexport async function notificationChannelEntityFactory(injector: Injector): Promise<AXPEntity | null> {\n const dataService = injector.get(AXMNotificationManagementChannelEntityService);\n\n const entityDef: AXPEntity = {\n module: AXMNotificationManagementModuleConst.moduleName,\n name: AXMNotificationManagementModuleConst.notificationChannelEntity,\n source: '',\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.insertOne(entity);\n return Promise.resolve(entity);\n },\n },\n delete: {\n execute: async (id: any) => {\n await await dataService.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.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.getOne(id);\n resolve(entity);\n }, 500);\n });\n },\n type: AXPEntityQueryType.Single,\n },\n list: {\n execute: async (e: any) => {\n return await dataService.query({ skip: e.skip, take: e.take, filter: e.filter });\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 {\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: `t('my',{scope: 'notification-management'})`,\n formats: {\n individual: `t('my',{scope: 'notification-management'})`,\n plural: `t('my',{scope: 'notification-management'})`,\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: 't(\"title\", { scope: \"common\" })',\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 { AXPEntity, AXPEntityCommandScope, AXPEntityQueryType } from '@acorex/platform/common';\nimport { AXPWidgetsCatalog } from '@acorex/platform/layout/builder';\nimport { Injector } from '@angular/core';\nimport { AXMNotificationManagementChannelEntityService } from './channel/channel.service';\n\nexport async function notificationLogEntityFactory(injector: Injector): Promise<AXPEntity | null> {\n const dataService = injector.get(AXMNotificationManagementChannelEntityService);\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.getOne(id);\n resolve(entity);\n }, 500);\n });\n },\n type: AXPEntityQueryType.Single,\n },\n list: {\n execute: async (e: any) => {\n return await dataService.query({ skip: e.skip, take: e.take, filter: e.filter });\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 { AXPEntity, AXPEntityCommandScope, AXPEntityQueryType } from '@acorex/platform/common';\nimport { AXPWidgetsCatalog } from '@acorex/platform/layout/builder';\nimport { Injector } from '@angular/core';\nimport { AXMNotificationManagementModuleConst } from '../const';\nimport { AXMNotificationManagementChannelEntityService } from './channel/channel.service';\n\nexport async function notificationEntityFactory(injector: Injector): Promise<AXPEntity | null> {\n const dataService = injector.get(AXMNotificationManagementChannelEntityService);\n\n const entityDef: AXPEntity = {\n module: AXMNotificationManagementModuleConst.moduleName,\n name: AXMNotificationManagementModuleConst.notificationEntity,\n source: '',\n title: 't(\"notifications\",{scope: \"notification-management\"})',\n formats: {\n individual: 't(\"notifications\",{scope: \"notification-management\"})',\n plural: 't(\"notifications\",{scope: \"notification-management\"})',\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 validations: [\n {\n rule: 'required',\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 validations: [\n {\n rule: 'required',\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 validations: [\n {\n rule: 'required',\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.getOne(id);\n resolve(entity);\n }, 500);\n });\n },\n type: AXPEntityQueryType.Single,\n },\n list: {\n execute: async (e: any) => {\n return await dataService.query({ skip: e.skip, take: e.take, filter: e.filter });\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 { AXMEntityCrudServiceImpl } from '@acorex/platform/common';\nimport { Injectable } from '@angular/core';\nimport { AXMNotificationManagementModuleConst } from '../../const';\nimport { AXMNotificationManagementTemplateEntityModel } from './template.types';\n\nexport abstract class AXMNotificationManagementTemplateEntityService extends AXMEntityCrudServiceImpl<\n string,\n AXMNotificationManagementTemplateEntityModel\n> {}\n\n@Injectable()\nexport class AXMNotificationManagementTemplateEntityServiceImpl extends AXMNotificationManagementTemplateEntityService {\n constructor() {\n super(\n `${AXMNotificationManagementModuleConst.moduleName}.${AXMNotificationManagementModuleConst.notificationTemplateEntity}`\n );\n }\n}\n","import { AXPDataGenerator, AXPEntity, AXPEntityCommandScope, AXPEntityQueryType } from '@acorex/platform/common';\nimport { AXPWidgetsCatalog } from '@acorex/platform/layout/builder';\nimport { Injector } from '@angular/core';\nimport { AXMNotificationManagementModuleConst } from '../../const';\nimport { AXMNotificationManagementTemplateEntityService } from './template.service';\n\nexport async function notificationTemplateEntityFactory(injector: Injector): Promise<AXPEntity | null> {\n const dataService = injector.get(AXMNotificationManagementTemplateEntityService);\n\n const entityDef: AXPEntity = {\n module: AXMNotificationManagementModuleConst.moduleName,\n name: AXMNotificationManagementModuleConst.notificationTemplateEntity,\n source: '',\n title: 't(\"template\",{scope: \"notification-management\"})',\n formats: {\n individual: 't(\"template\",{scope: \"notification-management\"})',\n plural: 't(\"template\",{scope: \"notification-management\"})',\n },\n relatedEntities: [\n {\n entity: AXMNotificationManagementModuleConst.notificationChannelEntity,\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 validations: [\n {\n rule: 'required',\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 validations: [\n {\n rule: 'required',\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 validations: [\n {\n rule: 'required',\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.insertOne(entity);\n return Promise.resolve(entity);\n },\n },\n delete: {\n execute: async (id: any) => {\n await await dataService.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.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.getOne(id);\n resolve(entity);\n }, 500);\n });\n },\n type: AXPEntityQueryType.Single,\n },\n list: {\n execute: async (e: any) => {\n return await dataService.query({ skip: e.skip, take: e.take, filter: e.filter });\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","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1","i2","i4","i3"],"mappings":"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"}
|
@@ -35,20 +35,20 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.3", ngImpor
|
|
35
35
|
type: Injectable
|
36
36
|
}] });
|
37
37
|
|
38
|
-
const path$1 = '
|
38
|
+
const path$1 = 'regional:';
|
39
39
|
var AXPRegionalSetting;
|
40
40
|
(function (AXPRegionalSetting) {
|
41
|
-
AXPRegionalSetting["TimeZone"] = "
|
42
|
-
AXPRegionalSetting["Language"] = "
|
43
|
-
AXPRegionalSetting["Country"] = "
|
44
|
-
AXPRegionalSetting["Regional"] = "
|
45
|
-
AXPRegionalSetting["Calendar"] = "
|
46
|
-
AXPRegionalSetting["FirstDayOfWeek"] = "
|
47
|
-
AXPRegionalSetting["WorkDays"] = "
|
48
|
-
AXPRegionalSetting["ShortDate"] = "
|
49
|
-
AXPRegionalSetting["LongDate"] = "
|
50
|
-
AXPRegionalSetting["ShortTime"] = "
|
51
|
-
AXPRegionalSetting["LongTime"] = "
|
41
|
+
AXPRegionalSetting["TimeZone"] = "regional:timezone";
|
42
|
+
AXPRegionalSetting["Language"] = "regional:language";
|
43
|
+
AXPRegionalSetting["Country"] = "regional:country";
|
44
|
+
AXPRegionalSetting["Regional"] = "regional:regional";
|
45
|
+
AXPRegionalSetting["Calendar"] = "regional:calendar";
|
46
|
+
AXPRegionalSetting["FirstDayOfWeek"] = "regional:first-day-of-week";
|
47
|
+
AXPRegionalSetting["WorkDays"] = "regional:work-days";
|
48
|
+
AXPRegionalSetting["ShortDate"] = "regional:short-date";
|
49
|
+
AXPRegionalSetting["LongDate"] = "regional:long-date";
|
50
|
+
AXPRegionalSetting["ShortTime"] = "regional:short-time";
|
51
|
+
AXPRegionalSetting["LongTime"] = "regional:long-time";
|
52
52
|
})(AXPRegionalSetting || (AXPRegionalSetting = {}));
|
53
53
|
|
54
54
|
class AXPRegionalService {
|
@@ -148,7 +148,7 @@ class AXMRegionalSettingProvider {
|
|
148
148
|
type: AXPWidgetsCatalog.select,
|
149
149
|
options: {
|
150
150
|
valueField: 'locale',
|
151
|
-
dataSource: await
|
151
|
+
dataSource: await this.regionalService.getRegionalFormats(),
|
152
152
|
},
|
153
153
|
triggers: [
|
154
154
|
{
|
@@ -337,23 +337,23 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.3", ngImpor
|
|
337
337
|
args: [{ imports: [AXDropdownModule, AXDecoratorModule, AXPopoverModule, AXButtonModule, CommonModule], template: "<ax-button look=\"blank\">\n <ax-icon class=\"fa-regular fa-globe\"> </ax-icon>\n <ax-dropdown-panel>\n <ax-button-item-list>\n @for(lang of items(); track lang){\n <ax-button-item [text]=\"lang.title\" [selected]=\"store.language()===lang.code\"\n (onClick)=\"store.changeLanguage(lang.code)\">\n <ax-prefix>\n <ax-icon icon=\"fa-solid fa-flag\"> </ax-icon>\n </ax-prefix>\n </ax-button-item>\n }\n </ax-button-item-list>\n </ax-dropdown-panel>\n</ax-button>" }]
|
338
338
|
}] });
|
339
339
|
|
340
|
-
const path = '
|
340
|
+
const path = 'organization:';
|
341
341
|
var AXPOrganizationSetting;
|
342
342
|
(function (AXPOrganizationSetting) {
|
343
|
-
AXPOrganizationSetting["OrganizationName"] = "
|
344
|
-
AXPOrganizationSetting["OrganizationID"] = "
|
345
|
-
AXPOrganizationSetting["ContactEmail"] = "
|
346
|
-
AXPOrganizationSetting["ContactPhone"] = "
|
347
|
-
AXPOrganizationSetting["OrganizationAddress"] = "
|
348
|
-
AXPOrganizationSetting["OrganizationCity"] = "
|
349
|
-
AXPOrganizationSetting["OrganizationCountry"] = "
|
350
|
-
AXPOrganizationSetting["BrandingColor"] = "
|
351
|
-
AXPOrganizationSetting["BrandingLogo"] = "
|
352
|
-
AXPOrganizationSetting["CopyrightText"] = "
|
353
|
-
AXPOrganizationSetting["ApplicationHeaderTitle"] = "
|
354
|
-
AXPOrganizationSetting["SupportEmail"] = "
|
355
|
-
AXPOrganizationSetting["InfoEmail"] = "
|
356
|
-
AXPOrganizationSetting["FaxNumber"] = "
|
343
|
+
AXPOrganizationSetting["OrganizationName"] = "organization:organization-name";
|
344
|
+
AXPOrganizationSetting["OrganizationID"] = "organization:organization-id";
|
345
|
+
AXPOrganizationSetting["ContactEmail"] = "organization:contact-email";
|
346
|
+
AXPOrganizationSetting["ContactPhone"] = "organization:contact-phone";
|
347
|
+
AXPOrganizationSetting["OrganizationAddress"] = "organization:organization-address";
|
348
|
+
AXPOrganizationSetting["OrganizationCity"] = "organization:organization-city";
|
349
|
+
AXPOrganizationSetting["OrganizationCountry"] = "organization:organization-country";
|
350
|
+
AXPOrganizationSetting["BrandingColor"] = "organization:branding-color";
|
351
|
+
AXPOrganizationSetting["BrandingLogo"] = "organization:branding-logo";
|
352
|
+
AXPOrganizationSetting["CopyrightText"] = "organization:copyright-text";
|
353
|
+
AXPOrganizationSetting["ApplicationHeaderTitle"] = "organization:application-header-title";
|
354
|
+
AXPOrganizationSetting["SupportEmail"] = "organization:support-email";
|
355
|
+
AXPOrganizationSetting["InfoEmail"] = "organization:info-email";
|
356
|
+
AXPOrganizationSetting["FaxNumber"] = "organization:fax-number";
|
357
357
|
})(AXPOrganizationSetting || (AXPOrganizationSetting = {}));
|
358
358
|
|
359
359
|
class AXMOrganizationSettingProvider {
|
@@ -613,10 +613,6 @@ const AXMPlatformManagementModuleConst = {
|
|
613
613
|
i18n: 'platform-management',
|
614
614
|
localizationManagement: 'localization-management',
|
615
615
|
globalVariableEntity: 'variables',
|
616
|
-
currencyEntity: 'currencies',
|
617
|
-
countryEntity: 'countries',
|
618
|
-
provinceEntity: 'provinces',
|
619
|
-
cityEntity: 'cities',
|
620
616
|
};
|
621
617
|
|
622
618
|
class AXMGlobalVariablesService extends AXMEntityCrudServiceImpl {
|