@acorex/modules 19.2.5 → 19.2.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.
Files changed (65) hide show
  1. package/auth/lib/store/auth.effects.d.ts +2 -2
  2. package/fesm2022/{acorex-modules-application-management-module-designer.component-kMtkkid-.mjs → acorex-modules-application-management-module-designer.component-DPJ4qpK3.mjs} +4 -4
  3. package/fesm2022/acorex-modules-application-management-module-designer.component-DPJ4qpK3.mjs.map +1 -0
  4. package/fesm2022/acorex-modules-application-management.mjs +3 -3
  5. package/fesm2022/acorex-modules-application-management.mjs.map +1 -1
  6. package/fesm2022/{acorex-modules-auth-acorex-modules-auth-CcRRSTGN.mjs → acorex-modules-auth-acorex-modules-auth-D75igkfc.mjs} +22 -22
  7. package/fesm2022/acorex-modules-auth-acorex-modules-auth-D75igkfc.mjs.map +1 -0
  8. package/fesm2022/acorex-modules-auth-app-chooser.component-BZb8n5Ag.mjs +64 -0
  9. package/fesm2022/acorex-modules-auth-app-chooser.component-BZb8n5Ag.mjs.map +1 -0
  10. package/fesm2022/{acorex-modules-auth-login.module-ua9uEgUG.mjs → acorex-modules-auth-login.module-DAtJYcHZ.mjs} +4 -4
  11. package/fesm2022/{acorex-modules-auth-login.module-ua9uEgUG.mjs.map → acorex-modules-auth-login.module-DAtJYcHZ.mjs.map} +1 -1
  12. package/fesm2022/acorex-modules-auth-master.layout-qeAQTygT.mjs +23 -0
  13. package/fesm2022/acorex-modules-auth-master.layout-qeAQTygT.mjs.map +1 -0
  14. package/fesm2022/{acorex-modules-auth-password.component-BVoPZUG9.mjs → acorex-modules-auth-password.component-20Ofs9FL.mjs} +2 -2
  15. package/fesm2022/{acorex-modules-auth-password.component-BVoPZUG9.mjs.map → acorex-modules-auth-password.component-20Ofs9FL.mjs.map} +1 -1
  16. package/fesm2022/{acorex-modules-auth-password.component-CIwOjQRh.mjs → acorex-modules-auth-password.component-CRvI9sIa.mjs} +4 -4
  17. package/fesm2022/acorex-modules-auth-password.component-CRvI9sIa.mjs.map +1 -0
  18. package/fesm2022/{acorex-modules-auth-routes-hR3jePok.mjs → acorex-modules-auth-routes-BDED-qaZ.mjs} +2 -2
  19. package/fesm2022/{acorex-modules-auth-routes-hR3jePok.mjs.map → acorex-modules-auth-routes-BDED-qaZ.mjs.map} +1 -1
  20. package/fesm2022/acorex-modules-auth-tenant-chooser.component-CKsbiOUX.mjs +83 -0
  21. package/fesm2022/acorex-modules-auth-tenant-chooser.component-CKsbiOUX.mjs.map +1 -0
  22. package/fesm2022/{acorex-modules-auth-two-factor.module-CKe_H_-u.mjs → acorex-modules-auth-two-factor.module-B0C2aBWh.mjs} +2 -2
  23. package/fesm2022/{acorex-modules-auth-two-factor.module-CKe_H_-u.mjs.map → acorex-modules-auth-two-factor.module-B0C2aBWh.mjs.map} +1 -1
  24. package/fesm2022/acorex-modules-auth.mjs +1 -1
  25. package/fesm2022/acorex-modules-conversation.mjs +4 -4
  26. package/fesm2022/acorex-modules-conversation.mjs.map +1 -1
  27. package/fesm2022/acorex-modules-form-template-management-template-picker.component-xiRKc4FF.mjs +126 -0
  28. package/fesm2022/acorex-modules-form-template-management-template-picker.component-xiRKc4FF.mjs.map +1 -0
  29. package/fesm2022/acorex-modules-form-template-management.mjs +1 -1
  30. package/fesm2022/acorex-modules-notification-management.mjs +279 -8
  31. package/fesm2022/acorex-modules-notification-management.mjs.map +1 -1
  32. package/fesm2022/acorex-modules-organization-managment-org-chart-configuration.page-DEFgztyn.mjs +92 -0
  33. package/fesm2022/acorex-modules-organization-managment-org-chart-configuration.page-DEFgztyn.mjs.map +1 -0
  34. package/fesm2022/acorex-modules-organization-managment-org-chart-configuration.service-D-LkPUIw.mjs +145 -0
  35. package/fesm2022/acorex-modules-organization-managment-org-chart-configuration.service-D-LkPUIw.mjs.map +1 -0
  36. package/fesm2022/{acorex-modules-organization-managment-org-chart.page-CTHNSn2n.mjs → acorex-modules-organization-managment-org-chart.page-B3aaLlm2.mjs} +111 -19
  37. package/fesm2022/acorex-modules-organization-managment-org-chart.page-B3aaLlm2.mjs.map +1 -0
  38. package/fesm2022/acorex-modules-organization-managment.mjs +2 -2
  39. package/fesm2022/acorex-modules-platform-management.mjs +12 -0
  40. package/fesm2022/acorex-modules-platform-management.mjs.map +1 -1
  41. package/fesm2022/acorex-modules-security-management.mjs +12 -1
  42. package/fesm2022/acorex-modules-security-management.mjs.map +1 -1
  43. package/notification-management/lib/components/promotion-slot/promotion-slot.component.d.ts +11 -0
  44. package/notification-management/lib/entities/channel/channel.types.d.ts +11 -1
  45. package/organization-managment/lib/features/organization-chart/org-chart-configuration.page.d.ts +2 -2
  46. package/organization-managment/lib/features/organization-chart/org-chart-configuration.service.d.ts +24 -0
  47. package/organization-managment/lib/features/organization-chart/org-chart.page.d.ts +1 -1
  48. package/organization-managment/lib/features/organization-chart/org-chart.service.d.ts +3 -19
  49. package/package.json +1 -1
  50. package/security-management/index.d.ts +1 -0
  51. package/security-management/lib/menu.keys.d.ts +5 -0
  52. package/fesm2022/acorex-modules-application-management-module-designer.component-kMtkkid-.mjs.map +0 -1
  53. package/fesm2022/acorex-modules-auth-acorex-modules-auth-CcRRSTGN.mjs.map +0 -1
  54. package/fesm2022/acorex-modules-auth-app-chooser.component-DuRnQda8.mjs +0 -64
  55. package/fesm2022/acorex-modules-auth-app-chooser.component-DuRnQda8.mjs.map +0 -1
  56. package/fesm2022/acorex-modules-auth-master.layout-KNzdjwP6.mjs +0 -23
  57. package/fesm2022/acorex-modules-auth-master.layout-KNzdjwP6.mjs.map +0 -1
  58. package/fesm2022/acorex-modules-auth-password.component-CIwOjQRh.mjs.map +0 -1
  59. package/fesm2022/acorex-modules-auth-tenant-chooser.component-Cx3fK__H.mjs +0 -83
  60. package/fesm2022/acorex-modules-auth-tenant-chooser.component-Cx3fK__H.mjs.map +0 -1
  61. package/fesm2022/acorex-modules-form-template-management-template-picker.component-CG-_1tWi.mjs +0 -126
  62. package/fesm2022/acorex-modules-form-template-management-template-picker.component-CG-_1tWi.mjs.map +0 -1
  63. package/fesm2022/acorex-modules-organization-managment-org-chart-configuration.page-Dc6c7GmB.mjs +0 -310
  64. package/fesm2022/acorex-modules-organization-managment-org-chart-configuration.page-Dc6c7GmB.mjs.map +0 -1
  65. package/fesm2022/acorex-modules-organization-managment-org-chart.page-CTHNSn2n.mjs.map +0 -1
@@ -26,6 +26,7 @@ import * as i3 from '@acorex/components/avatar';
26
26
  import { AXAvatarModule } from '@acorex/components/avatar';
27
27
  import * as i4 from '@acorex/components/image';
28
28
  import { AXImageModule } from '@acorex/components/image';
29
+ import { AXSafePipe } from '@acorex/core/pipes';
29
30
  import { RootConfig as RootConfig$2 } from '@acorex/modules/form-template-management';
30
31
 
31
32
  const config = {
@@ -190,6 +191,27 @@ async function notificationChannelEntityFactory(injector) {
190
191
  },
191
192
  },
192
193
  },
194
+ },
195
+ {
196
+ name: 'contentType',
197
+ title: `t("contentType", { scope: "${i18n}" })`,
198
+ groupId: 'in-app',
199
+ schema: {
200
+ dataType: 'string',
201
+ interface: {
202
+ type: AXPWidgetsCatalog.select,
203
+ options: {
204
+ valueField: 'name',
205
+ textField: 'title',
206
+ dataSource: [
207
+ { title: 'Media', name: 'media' },
208
+ { title: 'Text', name: 'text' },
209
+ ],
210
+ direction: 'horizontal',
211
+ multiple: false,
212
+ },
213
+ },
214
+ },
193
215
  validations: [
194
216
  {
195
217
  rule: 'required',
@@ -197,7 +219,7 @@ async function notificationChannelEntityFactory(injector) {
197
219
  ],
198
220
  },
199
221
  {
200
- name: 'view-shape',
222
+ name: 'shape',
201
223
  title: `t("shape", { scope: "${i18n}" })`,
202
224
  groupId: 'in-app',
203
225
  schema: {
@@ -234,8 +256,8 @@ async function notificationChannelEntityFactory(injector) {
234
256
  valueField: 'name',
235
257
  textField: 'title',
236
258
  dataSource: [
237
- { title: 'Header Leading', name: 'header-l' },
238
- { title: 'Footer Leading', name: 'footer-l' },
259
+ { title: 'Side Menu Footer', name: 'side-menu-footer' },
260
+ { title: 'Side Menu Header', name: 'side-menu-header' },
239
261
  ],
240
262
  direction: 'horizontal',
241
263
  multiple: false,
@@ -332,6 +354,7 @@ async function notificationChannelEntityFactory(injector) {
332
354
  positions: {
333
355
  lg: {
334
356
  colSpan: 12,
357
+ order: 1,
335
358
  },
336
359
  },
337
360
  },
@@ -342,6 +365,7 @@ async function notificationChannelEntityFactory(injector) {
342
365
  positions: {
343
366
  lg: {
344
367
  colSpan: 12,
368
+ order: 2,
345
369
  },
346
370
  },
347
371
  },
@@ -362,6 +386,7 @@ async function notificationChannelEntityFactory(injector) {
362
386
  positions: {
363
387
  lg: {
364
388
  colSpan: 12,
389
+ order: 10,
365
390
  },
366
391
  },
367
392
  },
@@ -378,20 +403,33 @@ async function notificationChannelEntityFactory(injector) {
378
403
  },
379
404
  {
380
405
  name: 'type',
406
+ layout: {
407
+ positions: {
408
+ lg: {
409
+ colSpan: 12,
410
+ order: 3,
411
+ },
412
+ },
413
+ },
414
+ },
415
+ {
416
+ name: 'contentType',
381
417
  layout: {
382
418
  positions: {
383
419
  lg: {
384
420
  colSpan: 4,
421
+ order: 4,
385
422
  },
386
423
  },
387
424
  },
388
425
  },
389
426
  {
390
- name: 'view-shape',
427
+ name: 'shape',
391
428
  layout: {
392
429
  positions: {
393
430
  lg: {
394
431
  colSpan: 4,
432
+ order: 5,
395
433
  },
396
434
  },
397
435
  },
@@ -402,6 +440,7 @@ async function notificationChannelEntityFactory(injector) {
402
440
  positions: {
403
441
  lg: {
404
442
  colSpan: 4,
443
+ order: 6,
405
444
  },
406
445
  },
407
446
  },
@@ -423,6 +462,9 @@ async function notificationChannelEntityFactory(injector) {
423
462
  {
424
463
  id: 'notificationChannel',
425
464
  },
465
+ {
466
+ id: 'in-app',
467
+ },
426
468
  ],
427
469
  properties: [
428
470
  {
@@ -431,12 +473,24 @@ async function notificationChannelEntityFactory(injector) {
431
473
  positions: {
432
474
  lg: {
433
475
  colSpan: 12,
476
+ order: 1,
434
477
  },
435
478
  },
436
479
  },
437
480
  },
438
481
  {
439
482
  name: 'body',
483
+ layout: {
484
+ positions: {
485
+ lg: {
486
+ colSpan: 12,
487
+ order: 2,
488
+ },
489
+ },
490
+ },
491
+ },
492
+ {
493
+ name: 'template',
440
494
  layout: {
441
495
  positions: {
442
496
  lg: {
@@ -445,6 +499,17 @@ async function notificationChannelEntityFactory(injector) {
445
499
  },
446
500
  },
447
501
  },
502
+ {
503
+ name: 'trigger',
504
+ layout: {
505
+ positions: {
506
+ lg: {
507
+ colSpan: 12,
508
+ order: 10,
509
+ },
510
+ },
511
+ },
512
+ },
448
513
  {
449
514
  name: 'channel',
450
515
  layout: {
@@ -455,6 +520,60 @@ async function notificationChannelEntityFactory(injector) {
455
520
  },
456
521
  },
457
522
  },
523
+ {
524
+ name: 'type',
525
+ layout: {
526
+ positions: {
527
+ lg: {
528
+ colSpan: 12,
529
+ order: 3,
530
+ },
531
+ },
532
+ },
533
+ },
534
+ {
535
+ name: 'contentType',
536
+ layout: {
537
+ positions: {
538
+ lg: {
539
+ colSpan: 4,
540
+ order: 4,
541
+ },
542
+ },
543
+ },
544
+ },
545
+ {
546
+ name: 'shape',
547
+ layout: {
548
+ positions: {
549
+ lg: {
550
+ colSpan: 4,
551
+ order: 5,
552
+ },
553
+ },
554
+ },
555
+ },
556
+ {
557
+ name: 'placement',
558
+ layout: {
559
+ positions: {
560
+ lg: {
561
+ colSpan: 4,
562
+ order: 6,
563
+ },
564
+ },
565
+ },
566
+ },
567
+ {
568
+ name: 'pin',
569
+ layout: {
570
+ positions: {
571
+ lg: {
572
+ colSpan: 4,
573
+ },
574
+ },
575
+ },
576
+ },
458
577
  ],
459
578
  },
460
579
  single: {
@@ -463,6 +582,9 @@ async function notificationChannelEntityFactory(injector) {
463
582
  {
464
583
  id: 'notificationChannel',
465
584
  },
585
+ {
586
+ id: 'in-app',
587
+ },
466
588
  ],
467
589
  properties: [
468
590
  {
@@ -495,6 +617,91 @@ async function notificationChannelEntityFactory(injector) {
495
617
  },
496
618
  },
497
619
  },
620
+ {
621
+ name: 'template',
622
+ layout: {
623
+ positions: {
624
+ lg: {
625
+ colSpan: 12,
626
+ },
627
+ },
628
+ },
629
+ },
630
+ {
631
+ name: 'trigger',
632
+ layout: {
633
+ positions: {
634
+ lg: {
635
+ colSpan: 12,
636
+ order: 10,
637
+ },
638
+ },
639
+ },
640
+ },
641
+ {
642
+ name: 'channel',
643
+ layout: {
644
+ positions: {
645
+ lg: {
646
+ colSpan: 12,
647
+ },
648
+ },
649
+ },
650
+ },
651
+ {
652
+ name: 'type',
653
+ layout: {
654
+ positions: {
655
+ lg: {
656
+ colSpan: 12,
657
+ order: 3,
658
+ },
659
+ },
660
+ },
661
+ },
662
+ {
663
+ name: 'contentType',
664
+ layout: {
665
+ positions: {
666
+ lg: {
667
+ colSpan: 4,
668
+ order: 4,
669
+ },
670
+ },
671
+ },
672
+ },
673
+ {
674
+ name: 'shape',
675
+ layout: {
676
+ positions: {
677
+ lg: {
678
+ colSpan: 4,
679
+ order: 5,
680
+ },
681
+ },
682
+ },
683
+ },
684
+ {
685
+ name: 'placement',
686
+ layout: {
687
+ positions: {
688
+ lg: {
689
+ colSpan: 4,
690
+ order: 6,
691
+ },
692
+ },
693
+ },
694
+ },
695
+ {
696
+ name: 'pin',
697
+ layout: {
698
+ positions: {
699
+ lg: {
700
+ colSpan: 4,
701
+ },
702
+ },
703
+ },
704
+ },
498
705
  ],
499
706
  actions: [],
500
707
  },
@@ -1324,7 +1531,7 @@ class AXMAdminNotificationPanelComponent {
1324
1531
  this.router.navigate([`${this.sessionService.application?.name}/m/notification-management/e/my-notification/list`]);
1325
1532
  }
1326
1533
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXMAdminNotificationPanelComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
1327
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.0.3", type: AXMAdminNotificationPanelComponent, isStandalone: true, selector: "axm-admin-notification-panel", outputs: { onNewNotfication: "onNewNotfication" }, ngImport: i0, template: "<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", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: AXButtonModule }, { kind: "component", type: i1$1.AXButtonComponent, selector: "ax-button", inputs: ["disabled", "size", "tabIndex", "color", "look", "text", "toggleable", "selected", "type", "loadingText"], outputs: ["onBlur", "onFocus", "onClick", "selectedChange", "toggleableChange", "lookChange", "colorChange", "disabledChange", "loadingTextChange"] }, { kind: "ngmodule", type: AXTabsModule }, { kind: "component", type: i2$1.AXTabsComponent, selector: "ax-tabs", inputs: ["look", "location", "fitParent", "minWidth", "content"], outputs: ["onActiveTabChanged"] }, { kind: "component", type: i2$1.AXTabItemComponent, selector: "ax-tab-item", inputs: ["disabled", "text", "key", "headerTemplate", "active"], outputs: ["disabledChange", "onClick", "onBlur", "onFocus", "activeChange"] }, { kind: "directive", type: i2$1.AXTabContentDirective, selector: "[axTabContent]", inputs: ["axTabContent"], exportAs: ["axTabContent"] }, { kind: "ngmodule", type: AXDecoratorModule }, { kind: "component", type: i2.AXDecoratorIconComponent, selector: "ax-icon", inputs: ["icon"] }, { kind: "component", type: i2.AXDecoratorGenericComponent, selector: "ax-footer, ax-header, ax-content, ax-divider, ax-form-hint, ax-prefix, ax-suffix, ax-text, ax-title, ax-subtitle, ax-placeholder, ax-overlay" }, { kind: "ngmodule", type: AXBadgeModule }, { kind: "component", type: i4$1.AXBadgeComponent, selector: "ax-badge", inputs: ["color", "look", "text"] }, { kind: "ngmodule", type: AXPopoverModule }, { kind: "component", type: AXMAdminNotificationItemComponent, selector: "axp-master-notification-item", inputs: ["data"], outputs: ["onPressNotificationItem"] }, { kind: "ngmodule", type: AXFormatModule }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
1534
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.0.3", type: AXMAdminNotificationPanelComponent, isStandalone: true, selector: "axm-admin-notification-panel", outputs: { onNewNotfication: "onNewNotfication" }, ngImport: i0, template: "<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 [data]=\"notif\"\n (onPressNotificationItem)=\"markAsRead($event)\"></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 [disabled]=\"NewNotification() === 0\" [color]=\"'default'\" text=\"Mark all as read\"\n (onClick)=\"markAllAsRead()\"></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>", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: AXButtonModule }, { kind: "component", type: i1$1.AXButtonComponent, selector: "ax-button", inputs: ["disabled", "size", "tabIndex", "color", "look", "text", "toggleable", "selected", "type", "loadingText"], outputs: ["onBlur", "onFocus", "onClick", "selectedChange", "toggleableChange", "lookChange", "colorChange", "disabledChange", "loadingTextChange"] }, { kind: "ngmodule", type: AXTabsModule }, { kind: "component", type: i2$1.AXTabsComponent, selector: "ax-tabs", inputs: ["look", "location", "fitParent", "minWidth", "content"], outputs: ["onActiveTabChanged"] }, { kind: "component", type: i2$1.AXTabItemComponent, selector: "ax-tab-item", inputs: ["disabled", "text", "key", "headerTemplate", "active"], outputs: ["disabledChange", "onClick", "onBlur", "onFocus", "activeChange"] }, { kind: "directive", type: i2$1.AXTabContentDirective, selector: "[axTabContent]", inputs: ["axTabContent"], exportAs: ["axTabContent"] }, { kind: "ngmodule", type: AXDecoratorModule }, { kind: "component", type: i2.AXDecoratorIconComponent, selector: "ax-icon", inputs: ["icon"] }, { kind: "component", type: i2.AXDecoratorGenericComponent, selector: "ax-footer, ax-header, ax-content, ax-divider, ax-form-hint, ax-prefix, ax-suffix, ax-text, ax-title, ax-subtitle, ax-placeholder, ax-overlay" }, { kind: "ngmodule", type: AXBadgeModule }, { kind: "component", type: i4$1.AXBadgeComponent, selector: "ax-badge", inputs: ["color", "look", "text"] }, { kind: "ngmodule", type: AXPopoverModule }, { kind: "component", type: AXMAdminNotificationItemComponent, selector: "axp-master-notification-item", inputs: ["data"], outputs: ["onPressNotificationItem"] }, { kind: "ngmodule", type: AXFormatModule }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
1328
1535
  }
1329
1536
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXMAdminNotificationPanelComponent, decorators: [{
1330
1537
  type: Component,
@@ -1337,7 +1544,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.3", ngImpor
1337
1544
  AXPopoverModule,
1338
1545
  AXMAdminNotificationItemComponent,
1339
1546
  AXFormatModule,
1340
- ], template: "<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" }]
1547
+ ], template: "<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 [data]=\"notif\"\n (onPressNotificationItem)=\"markAsRead($event)\"></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 [disabled]=\"NewNotification() === 0\" [color]=\"'default'\" text=\"Mark all as read\"\n (onClick)=\"markAllAsRead()\"></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>" }]
1341
1548
  }] });
1342
1549
 
1343
1550
  class AXMAdminNotificationSlotComponent {
@@ -1348,7 +1555,7 @@ class AXMAdminNotificationSlotComponent {
1348
1555
  this.totalNewNotification.set(value);
1349
1556
  }
1350
1557
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXMAdminNotificationSlotComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
1351
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.0.3", type: AXMAdminNotificationSlotComponent, isStandalone: true, selector: "ng-component", ngImport: i0, template: "<ax-button class=\"ax-relative\" color=\"primary\" #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-lowest 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>", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: AXButtonModule }, { kind: "component", type: i1$1.AXButtonComponent, selector: "ax-button", inputs: ["disabled", "size", "tabIndex", "color", "look", "text", "toggleable", "selected", "type", "loadingText"], outputs: ["onBlur", "onFocus", "onClick", "selectedChange", "toggleableChange", "lookChange", "colorChange", "disabledChange", "loadingTextChange"] }, { kind: "ngmodule", type: AXDecoratorModule }, { kind: "component", type: i2.AXDecoratorIconComponent, selector: "ax-icon", inputs: ["icon"] }, { kind: "component", type: i2.AXDecoratorGenericComponent, selector: "ax-footer, ax-header, ax-content, ax-divider, ax-form-hint, ax-prefix, ax-suffix, ax-text, ax-title, ax-subtitle, ax-placeholder, ax-overlay" }, { kind: "ngmodule", type: AXBadgeModule }, { kind: "component", type: i4$1.AXBadgeComponent, selector: "ax-badge", inputs: ["color", "look", "text"] }, { kind: "ngmodule", type: AXPopoverModule }, { kind: "component", type: i4$2.AXPopoverComponent, selector: "ax-popover", inputs: ["offsetX", "offsetY", "target", "placement", "content", "openOn", "closeOn", "hasBackdrop", "openAfter", "closeAfter", "backdropClass", "panelClass", "adaptivityEnabled"], outputs: ["onOpened", "onClosed"] }, { kind: "component", type: AXMAdminNotificationPanelComponent, selector: "axm-admin-notification-panel", outputs: ["onNewNotfication"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
1558
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.0.3", type: AXMAdminNotificationSlotComponent, isStandalone: true, selector: "ng-component", ngImport: i0, template: "<ax-button class=\"ax-relative\" color=\"primary\" #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-lightest 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", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: AXButtonModule }, { kind: "component", type: i1$1.AXButtonComponent, selector: "ax-button", inputs: ["disabled", "size", "tabIndex", "color", "look", "text", "toggleable", "selected", "type", "loadingText"], outputs: ["onBlur", "onFocus", "onClick", "selectedChange", "toggleableChange", "lookChange", "colorChange", "disabledChange", "loadingTextChange"] }, { kind: "ngmodule", type: AXDecoratorModule }, { kind: "component", type: i2.AXDecoratorIconComponent, selector: "ax-icon", inputs: ["icon"] }, { kind: "component", type: i2.AXDecoratorGenericComponent, selector: "ax-footer, ax-header, ax-content, ax-divider, ax-form-hint, ax-prefix, ax-suffix, ax-text, ax-title, ax-subtitle, ax-placeholder, ax-overlay" }, { kind: "ngmodule", type: AXBadgeModule }, { kind: "component", type: i4$1.AXBadgeComponent, selector: "ax-badge", inputs: ["color", "look", "text"] }, { kind: "ngmodule", type: AXPopoverModule }, { kind: "component", type: i4$2.AXPopoverComponent, selector: "ax-popover", inputs: ["offsetX", "offsetY", "target", "placement", "content", "openOn", "closeOn", "hasBackdrop", "openAfter", "closeAfter", "backdropClass", "panelClass", "adaptivityEnabled"], outputs: ["onOpened", "onClosed"] }, { kind: "component", type: AXMAdminNotificationPanelComponent, selector: "axm-admin-notification-panel", outputs: ["onNewNotfication"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
1352
1559
  }
1353
1560
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXMAdminNotificationSlotComponent, decorators: [{
1354
1561
  type: Component,
@@ -1359,7 +1566,33 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.3", ngImpor
1359
1566
  AXBadgeModule,
1360
1567
  AXPopoverModule,
1361
1568
  AXMAdminNotificationPanelComponent,
1362
- ], template: "<ax-button class=\"ax-relative\" color=\"primary\" #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-lowest 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>" }]
1569
+ ], template: "<ax-button class=\"ax-relative\" color=\"primary\" #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-lightest 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" }]
1570
+ }] });
1571
+
1572
+ class AXMPromotionSlotComponent {
1573
+ constructor() {
1574
+ this.notificationChannelService = inject(AXMNotificationManagementChannelEntityService);
1575
+ this.listData = signal([]);
1576
+ }
1577
+ async ngOnInit() {
1578
+ const channels = await this.notificationChannelService.query({
1579
+ skip: 0,
1580
+ take: 10000,
1581
+ // filter: {
1582
+ // field: 'type',
1583
+ // operator: { type: 'equal' },
1584
+ // value: 'promotion',
1585
+ // },
1586
+ });
1587
+ console.log(channels.items);
1588
+ this.listData.set(channels.items.filter((x) => x.channel.name == 'inApp' && x.type.name == 'promotion'));
1589
+ }
1590
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXMPromotionSlotComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
1591
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.0.3", type: AXMPromotionSlotComponent, isStandalone: true, selector: "acorex-platform-promotion-slot", ngImport: i0, template: "@for (item of listData(); track item.id) { @if(location == item.placement?.name){ @if (item.contentType?.name ==\n'image') {\n<img\n width=\"300px\"\n height=\"300px\"\n [src]=\"item.body\"\n class=\"ax-w-full ax-h-auto {{ item.shape?.name == 'circle' ? 'ax-rounded-full' : 'ax-rounded-none' }}\"\n/>\n} @if(item.contentType?.name == 'text'){\n<div class=\"ax-m-1 ax-px-6 ax-p-4 ax-border ax-bg-primary ax-rounded-lg\">\n <h1 [innerHTML]=\"item.body | safe : 'html'\"></h1>\n</div>\n\n} } }\n", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "pipe", type: AXSafePipe, name: "safe" }] }); }
1592
+ }
1593
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXMPromotionSlotComponent, decorators: [{
1594
+ type: Component,
1595
+ args: [{ selector: 'acorex-platform-promotion-slot', imports: [CommonModule, AXSafePipe], template: "@for (item of listData(); track item.id) { @if(location == item.placement?.name){ @if (item.contentType?.name ==\n'image') {\n<img\n width=\"300px\"\n height=\"300px\"\n [src]=\"item.body\"\n class=\"ax-w-full ax-h-auto {{ item.shape?.name == 'circle' ? 'ax-rounded-full' : 'ax-rounded-none' }}\"\n/>\n} @if(item.contentType?.name == 'text'){\n<div class=\"ax-m-1 ax-px-6 ax-p-4 ax-border ax-bg-primary ax-rounded-lg\">\n <h1 [innerHTML]=\"item.body | safe : 'html'\"></h1>\n</div>\n\n} } }\n" }]
1363
1596
  }] });
1364
1597
 
1365
1598
  class AXMEntityLoader {
@@ -1453,6 +1686,25 @@ class AXMNotificationManagementModule {
1453
1686
  component: AXMAdminNotificationSlotComponent,
1454
1687
  },
1455
1688
  ],
1689
+ 'side-menu-footer': [
1690
+ {
1691
+ name: 'side-menu-footer',
1692
+ component: AXMPromotionSlotComponent,
1693
+ options: {
1694
+ location: 'side-menu-footer',
1695
+ },
1696
+ },
1697
+ ],
1698
+ 'side-menu-header': [
1699
+ {
1700
+ name: 'side-menu-header',
1701
+ component: AXMPromotionSlotComponent,
1702
+ priority: 2,
1703
+ options: {
1704
+ location: 'side-menu-header',
1705
+ },
1706
+ },
1707
+ ],
1456
1708
  })] }); }
1457
1709
  }
1458
1710
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXMNotificationManagementModule, decorators: [{
@@ -1466,6 +1718,25 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.3", ngImpor
1466
1718
  component: AXMAdminNotificationSlotComponent,
1467
1719
  },
1468
1720
  ],
1721
+ 'side-menu-footer': [
1722
+ {
1723
+ name: 'side-menu-footer',
1724
+ component: AXMPromotionSlotComponent,
1725
+ options: {
1726
+ location: 'side-menu-footer',
1727
+ },
1728
+ },
1729
+ ],
1730
+ 'side-menu-header': [
1731
+ {
1732
+ name: 'side-menu-header',
1733
+ component: AXMPromotionSlotComponent,
1734
+ priority: 2,
1735
+ options: {
1736
+ location: 'side-menu-header',
1737
+ },
1738
+ },
1739
+ ],
1469
1740
  }),
1470
1741
  ],
1471
1742
  exports: [],