@posiwise/admin-module 0.0.131 → 0.0.132

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 (83) hide show
  1. package/esm2022/lib/admin-module.routing.mjs +44 -1
  2. package/esm2022/lib/admin.module.mjs +10 -1
  3. package/esm2022/lib/components/TOS/terms-of-service/terms-of-service.component.mjs +3 -3
  4. package/esm2022/lib/components/TOS/terms-of-service-details/terms-of-service-details.component.mjs +3 -3
  5. package/esm2022/lib/components/config/global-config-list/global-config-list.component.mjs +3 -3
  6. package/esm2022/lib/components/contact-us/contact-us-list/contact-us-list.component.mjs +3 -3
  7. package/esm2022/lib/components/credentials/credentials/credentials.component.mjs +3 -3
  8. package/esm2022/lib/components/credentials/subscription-credentials/subscription-credentials.component.mjs +3 -3
  9. package/esm2022/lib/components/domain-config/domain-config-list/domain-config-list.component.mjs +3 -3
  10. package/esm2022/lib/components/faqs/add-faq/add-faq.component.mjs +3 -3
  11. package/esm2022/lib/components/faqs/edit-faq/edit-faq.component.mjs +3 -3
  12. package/esm2022/lib/components/faqs/faqs-list/faqs-list.component.mjs +3 -3
  13. package/esm2022/lib/components/feedback-questions/feedback-questions-list/feedback-questions-list.component.mjs +3 -3
  14. package/esm2022/lib/components/incidents/add-edit-incident/add-edit-incident.component.mjs +3 -3
  15. package/esm2022/lib/components/incidents/incidents-list/incidents-list.component.mjs +3 -3
  16. package/esm2022/lib/components/login-notifications/login-notification-details/login-notification-details.component.mjs +10 -8
  17. package/esm2022/lib/components/login-notifications/login-notifications-list/login-notifications-list.component.mjs +3 -3
  18. package/esm2022/lib/components/mailer/mailer-details/mailer-details.component.mjs +114 -0
  19. package/esm2022/lib/components/mailer/mailer-list/mailer-list.component.mjs +110 -0
  20. package/esm2022/lib/components/mailer/mailer-tabs/mailer-tabs.component.mjs +24 -0
  21. package/esm2022/lib/components/newsletters/newsletter-item-details/newsletter-item-details.component.mjs +3 -3
  22. package/esm2022/lib/components/newsletters/newsletters-items/newsletters-items-view-details/newsletters-items-view-details.component.mjs +3 -3
  23. package/esm2022/lib/components/newsletters/newsletters-list/newsletters-list.component.mjs +3 -3
  24. package/esm2022/lib/components/permissions/permissions-list/permissions-list.component.mjs +3 -3
  25. package/esm2022/lib/components/permissions/roles-list/roles-list.component.mjs +3 -3
  26. package/esm2022/lib/components/products/product-details/product-details.component.mjs +3 -3
  27. package/esm2022/lib/components/products/users-list-for-product/users-list-for-product.component.mjs +3 -3
  28. package/esm2022/lib/components/subscriptions/subscription-agents-list/subscription-agents-list.component.mjs +3 -3
  29. package/esm2022/lib/components/subscriptions/subscription-products/subscription-products.component.mjs +3 -3
  30. package/esm2022/lib/components/subscriptions/subscription-users/subscription-users.component.mjs +3 -3
  31. package/esm2022/lib/components/subscriptions/subscriptions-insight/subscription-insight-nps/subscription-insight-nps.component.mjs +3 -3
  32. package/esm2022/lib/components/subscriptions/subscriptions-list/subscriptions-list.component.mjs +3 -3
  33. package/esm2022/lib/components/tags/tags-category/tags-category.component.mjs +3 -3
  34. package/esm2022/lib/components/tags/tags-list/tags-list.component.mjs +3 -3
  35. package/esm2022/lib/components/tips/tips-list/tips-list.component.mjs +3 -3
  36. package/esm2022/lib/components/users/users-list/users-list.component.mjs +3 -3
  37. package/esm2022/lib/shared/routers/routers.mjs +2 -1
  38. package/fesm2022/posiwise-admin-module.mjs +312 -62
  39. package/fesm2022/posiwise-admin-module.mjs.map +1 -1
  40. package/lib/admin.module.d.ts +109 -106
  41. package/lib/components/TOS/terms-of-service/terms-of-service.component.d.ts +1 -0
  42. package/lib/components/config/global-config-list/global-config-list.component.d.ts +1 -0
  43. package/lib/components/credentials/credentials/credentials.component.d.ts +2 -1
  44. package/lib/components/credentials/subscription-credentials/subscription-credentials.component.d.ts +1 -0
  45. package/lib/components/domain-config/domain-config-details/domain-config-build/domain-config-build.component.d.ts +1 -0
  46. package/lib/components/domain-config/domain-config-details/domain-config-core/domain-config-core.component.d.ts +1 -0
  47. package/lib/components/domain-config/domain-config-details/domain-config-details.component.d.ts +1 -0
  48. package/lib/components/domain-config/domain-config-details/domain-config-integrations/domain-config-integrations.component.d.ts +1 -0
  49. package/lib/components/domain-config/domain-config-details/domain-config-interface/domain-config-interface.component.d.ts +1 -0
  50. package/lib/components/domain-config/domain-config-details/domain-config-organization/domain-config-organization.component.d.ts +1 -0
  51. package/lib/components/domain-config/domain-config-details/domain-config-security/domain-config-security.component.d.ts +1 -0
  52. package/lib/components/domain-config/domain-config-details/domain-config-social/domain-config-social.component.d.ts +1 -0
  53. package/lib/components/domain-config/domain-config-list/domain-config-list.component.d.ts +1 -0
  54. package/lib/components/faqs/add-faq/add-faq.component.d.ts +1 -0
  55. package/lib/components/faqs/edit-faq/edit-faq.component.d.ts +1 -0
  56. package/lib/components/faqs/faqs-list/faqs-list.component.d.ts +1 -0
  57. package/lib/components/feedback-questions/feedback-questions-details/feedback-questions-details.component.d.ts +1 -0
  58. package/lib/components/feedback-questions/feedback-questions-list/feedback-questions-list.component.d.ts +1 -0
  59. package/lib/components/incidents/add-edit-incident/add-edit-incident.component.d.ts +1 -0
  60. package/lib/components/incidents/incidents-list/incidents-list.component.d.ts +1 -0
  61. package/lib/components/login-notifications/login-notification-details/login-notification-details.component.d.ts +1 -0
  62. package/lib/components/login-notifications/login-notifications-list/login-notifications-list.component.d.ts +1 -0
  63. package/lib/components/mailer/mailer-details/mailer-details.component.d.ts +61 -0
  64. package/lib/components/mailer/mailer-list/mailer-list.component.d.ts +64 -0
  65. package/lib/components/mailer/mailer-tabs/mailer-tabs.component.d.ts +11 -0
  66. package/lib/components/newsletters/newsletter-details/newsletter-details.component.d.ts +1 -0
  67. package/lib/components/newsletters/newsletter-item-details/newsletter-item-details.component.d.ts +1 -0
  68. package/lib/components/newsletters/newsletters-items/newsletters-items-view-details/newsletters-items-view-details.component.d.ts +2 -1
  69. package/lib/components/newsletters/newsletters-items/newsletters-items.component.d.ts +1 -0
  70. package/lib/components/newsletters/newsletters-list/newsletters-list.component.d.ts +1 -0
  71. package/lib/components/permissions/permissions-details/permissions-details.component.d.ts +1 -0
  72. package/lib/components/permissions/permissions-list/permissions-list.component.d.ts +1 -0
  73. package/lib/components/permissions/roles-list/roles-list.component.d.ts +1 -0
  74. package/lib/components/products/products-list/products-list.component.d.ts +1 -0
  75. package/lib/components/subscriptions/subscription-product-details/subscription-product-details.component.d.ts +1 -0
  76. package/lib/components/subscriptions/subscription-products/subscription-products.component.d.ts +1 -0
  77. package/lib/components/subscriptions/subscription-users/subscription-users.component.d.ts +1 -0
  78. package/lib/components/subscriptions/subscriptions-list/invite-users/invite-users.component.d.ts +1 -0
  79. package/lib/components/subscriptions/subscriptions-list/subscriptions-list.component.d.ts +1 -0
  80. package/lib/components/tips/tips-list/tips-list.component.d.ts +1 -0
  81. package/lib/components/users/users-list/users-list.component.d.ts +1 -0
  82. package/lib/shared/routers/routers.d.ts +1 -0
  83. package/package.json +1 -1
@@ -0,0 +1,110 @@
1
+ import { ChangeDetectorRef, Component, Injector } from '@angular/core';
2
+ import swal from 'sweetalert2';
3
+ import { AdminService } from '@posiwise/admin-module-utils';
4
+ import { ROUTERS } from '../../../shared/routers/routers';
5
+ import { PAGE_SIZE, TOKEN_KEY } from '@posiwise/common-utilities';
6
+ import { AppBaseComponent } from '@posiwise/app-base-component';
7
+ import { HelperService } from '@posiwise/helper-service';
8
+ import { PermissionService } from '@posiwise/common-services';
9
+ import * as i0 from "@angular/core";
10
+ import * as i1 from "@posiwise/admin-module-utils";
11
+ import * as i2 from "primeng/table";
12
+ import * as i3 from "primeng/api";
13
+ import * as i4 from "primeng/inputtext";
14
+ import * as i5 from "@angular/common";
15
+ import * as i6 from "@angular/forms";
16
+ import * as i7 from "@angular/router";
17
+ import * as i8 from "primeng/progressspinner";
18
+ import * as i9 from "@posiwise/shared-components";
19
+ import * as i10 from "@posiwise/directives";
20
+ import * as i11 from "@ng-bootstrap/ng-bootstrap";
21
+ import * as i12 from "@jsverse/transloco";
22
+ import * as i13 from "@posiwise/pipes";
23
+ export class MailerListComponent extends AppBaseComponent {
24
+ constructor(adminService, injector, cdr) {
25
+ super(injector);
26
+ this.adminService = adminService;
27
+ this.cdr = cdr;
28
+ this.data = {
29
+ custom_emails: [],
30
+ object_count: 0,
31
+ unfiltered_count: 0
32
+ };
33
+ this.searchText = '';
34
+ this.loading = true;
35
+ this.isLoaded = false;
36
+ this.page = 1;
37
+ this.routers = ROUTERS;
38
+ }
39
+ ngOnInit() {
40
+ this.localStorage.getItem$(TOKEN_KEY).subscribe(res => {
41
+ this.userLoggedIn = !!res;
42
+ if (this.userLoggedIn) {
43
+ this.subscriptionId = PermissionService.selectedSubscription?.id;
44
+ }
45
+ });
46
+ this.getMailers({
47
+ page: this.page,
48
+ page_size: PAGE_SIZE,
49
+ order_by: '',
50
+ order_direction: '',
51
+ search: this.searchText
52
+ });
53
+ }
54
+ ngAfterViewChecked() {
55
+ this.cdr.detectChanges();
56
+ }
57
+ onLazyLoad(event) {
58
+ const pageDetails = HelperService.onTableLazyLoad(event);
59
+ this.page = pageDetails.page;
60
+ this.getMailers({
61
+ page: this.page,
62
+ page_size: PAGE_SIZE,
63
+ order_by: pageDetails.sortField,
64
+ order_direction: pageDetails.sortOrder,
65
+ search: this.searchText
66
+ });
67
+ }
68
+ getMailers(paging) {
69
+ this.isLoaded = false;
70
+ this.adminService.getMailers(paging, this.subscriptionId || null).subscribe(response => {
71
+ this.data = response;
72
+ this.availableMailerTypes = response?.custom_emails?.map(email => email.template_name);
73
+ this.loading = false;
74
+ this.isLoaded = true;
75
+ });
76
+ }
77
+ onDelete(item) {
78
+ swal.fire({
79
+ title: 'Delete',
80
+ text: `Are you sure you want to delete?`,
81
+ showCancelButton: true,
82
+ reverseButtons: true,
83
+ icon: 'warning'
84
+ }).then(rep => {
85
+ if (rep.value) {
86
+ this.adminService.deleteMailer(item.id, this.subscriptionId).subscribe(() => {
87
+ this.data.custom_emails = this.data.custom_emails.filter(x => x.id !== item.id);
88
+ this.data.object_count--;
89
+ if (this.data.object_count === 0 && !this.searchText) {
90
+ this.data.unfiltered_count = 0;
91
+ }
92
+ this.toast.success(this.translation.translate('Admin.Mailer.DeletedMessage'));
93
+ });
94
+ }
95
+ });
96
+ }
97
+ navigateMailerItems(id) {
98
+ this.router.navigate([`/admin/mailer/items`], { queryParams: { mailer_id: id } });
99
+ }
100
+ ngOnDestroy() {
101
+ super.ngOnDestroy();
102
+ }
103
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: MailerListComponent, deps: [{ token: i1.AdminService }, { token: i0.Injector }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
104
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.11", type: MailerListComponent, selector: "pw-mailer-list", usesInheritance: true, ngImport: i0, template: "<div class=\"row\">\n <div class=\"col-12 d-flex justify-content-between align-items-center text-end\">\n <h2 class=\"card-title p-0 float-start\">Mailers</h2>\n <button *rbacAllow=\"'SubscriptionSuperAdmin'\"\n class=\"btn btn-outline-primary btn-sm float-end m-0\"\n [routerLink]=\"[routers.mailerDetails + 'add']\">\n <i class=\"fa fa-plus-circle\" aria-hidden=\"true\"></i> Create Mailer\n </button>\n </div>\n </div>\n <div class=\"w-100 text-center mt-3\"\n *ngIf=\"!isLoaded\">\n <p-progressSpinner strokeWidth=\"2\"> </p-progressSpinner>\n </div>\n <div class=\"primeng-datatable-container table-responsive mt-3\"\n [class.hideTable]=\"data.unfiltered_count === 0\">\n <p-table #tt\n [value]=\"data.custom_emails\"\n [paginator]=\"data.object_count !== 0\"\n [rows]=\"PAGE_SIZE\"\n [totalRecords]=\"data.object_count\"\n [loading]=\"loading\"\n [lazy]=\"true\"\n [filterDelay]=\"1000\"\n (onLazyLoad)=\"onLazyLoad($event)\"\n [customSort]=\"true\">\n <!--sort order should be default empty when page load-->\n\n <!-- Caption Header, Search Bar -->\n <ng-template pTemplate=\"caption\">\n <div class=\"text-end\">\n <i class=\"fa fa-search mt-2 me-2\" aria-hidden=\"true\"></i>\n <input type=\"text\"\n pInputText\n size=\"50\"\n placeholder=\"Search\"\n [(ngModel)]=\"searchText\"\n (input)=\"tt.filterGlobal($event.target.value, 'contains')\" />\n </div>\n </ng-template>\n\n <!-- Column Header -->\n <ng-template pTemplate=\"header\">\n <tr>\n <th scope=\"true\"\n pSortableColumn=\"name\">\n {{'Label.Subject' | transloco}}\n </th>\n <th scope=\"true\"\n pSortableColumn=\"active\">\n {{'Label.Body' | transloco}}\n </th>\n <th scope=\"true\"\n pSortableColumn=\"name\">\n {{'Label.TemplateName' | transloco}}\n </th>\n <th class=\"actions-list-two\"\n scope=\"true\">{{ 'Label.Actions' | transloco }}</th>\n </tr>\n </ng-template>\n\n <!-- Table Body -->\n <ng-template pTemplate=\"body\"\n let-item>\n <tr>\n <td data-head=\"Name\">\n {{item.subject}}\n </td>\n <td data-head=\"Body\">\n {{(item.body|removeHtml: 'quill')|textTruncate: 200}}\n </td>\n <td data-head=\"Name\">\n <span [appDynamicBadge]=\"{ itemsArray: availableMailerTypes, item: item.template_name }\"\n color=\"cyan\"\n class=\"badge\"> {{item.template_name}}</span>\n </td>\n <td data-head=\"Action\">\n <ul class=\"list-unstyled list-inline list-action\"\n *rbacAllow=\"'SubscriptionSuperAdmin'\">\n <li ngbTooltip=\"Edit\"\n class=\"me-2 me-sm-3\"\n [routerLink]=\"[routers.mailerDetails + item.id]\">\n <i class=\"fa fa-edit edit-icon\" aria-hidden=\"true\"></i>\n </li>\n <li ngbTooltip=\"Delete\"\n class=\"me-2 me-sm-3\"\n (click)=\"onDelete(item)\">\n <i class=\"fa fa-trash delete-icon\" aria-hidden=\"true\"></i>\n </li>\n </ul>\n </td>\n </tr>\n </ng-template>\n </p-table>\n <div *ngIf=\"data.object_count === 0 && data.unfiltered_count !== 0\">\n <pw-no-data [withImage]=\"true\" [message]=\"'Search.NoDataMessage' | transloco\" [description]=\"'Search.NoDataDescription' | transloco\" >\n </pw-no-data>\n </div>\n <span *ngIf=\"data.object_count !== 0\" class=\"total-records-count\">{{ 'Label.Total' | transloco }}: {{ data.object_count }}</span>\n </div>\n <div *ngIf=\"data.unfiltered_count === 0 && isLoaded\">\n <pw-no-data [withImage]=\"true\" [message]=\"'Admin.Mailer.NoDataMessage' | transloco\"> </pw-no-data>\n </div>\n", dependencies: [{ kind: "component", type: i2.Table, selector: "p-table", inputs: ["frozenColumns", "frozenValue", "style", "styleClass", "tableStyle", "tableStyleClass", "paginator", "pageLinks", "rowsPerPageOptions", "alwaysShowPaginator", "paginatorPosition", "paginatorStyleClass", "paginatorDropdownAppendTo", "paginatorDropdownScrollHeight", "currentPageReportTemplate", "showCurrentPageReport", "showJumpToPageDropdown", "showJumpToPageInput", "showFirstLastIcon", "showPageLinks", "defaultSortOrder", "sortMode", "resetPageOnSort", "selectionMode", "selectionPageOnly", "contextMenuSelection", "contextMenuSelectionMode", "dataKey", "metaKeySelection", "rowSelectable", "rowTrackBy", "lazy", "lazyLoadOnInit", "compareSelectionBy", "csvSeparator", "exportFilename", "filters", "globalFilterFields", "filterDelay", "filterLocale", "expandedRowKeys", "editingRowKeys", "rowExpandMode", "scrollable", "scrollDirection", "rowGroupMode", "scrollHeight", "virtualScroll", "virtualScrollItemSize", "virtualScrollOptions", "virtualScrollDelay", "frozenWidth", "responsive", "contextMenu", "resizableColumns", "columnResizeMode", "reorderableColumns", "loading", "loadingIcon", "showLoader", "rowHover", "customSort", "showInitialSortBadge", "autoLayout", "exportFunction", "exportHeader", "stateKey", "stateStorage", "editMode", "groupRowsBy", "groupRowsByOrder", "responsiveLayout", "breakpoint", "paginatorLocale", "value", "columns", "first", "rows", "totalRecords", "sortField", "sortOrder", "multiSortMeta", "selection", "selectAll", "virtualRowHeight"], outputs: ["contextMenuSelectionChange", "selectAllChange", "selectionChange", "onRowSelect", "onRowUnselect", "onPage", "onSort", "onFilter", "onLazyLoad", "onRowExpand", "onRowCollapse", "onContextMenuSelect", "onColResize", "onColReorder", "onRowReorder", "onEditInit", "onEditComplete", "onEditCancel", "onHeaderCheckboxToggle", "sortFunction", "firstChange", "rowsChange", "onStateSave", "onStateRestore"] }, { kind: "directive", type: i3.PrimeTemplate, selector: "[pTemplate]", inputs: ["type", "pTemplate"] }, { kind: "directive", type: i2.SortableColumn, selector: "[pSortableColumn]", inputs: ["pSortableColumn", "pSortableColumnDisabled"] }, { kind: "directive", type: i4.InputText, selector: "[pInputText]", inputs: ["variant"] }, { kind: "directive", type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i6.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i6.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i6.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i7.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "component", type: i8.ProgressSpinner, selector: "p-progressSpinner", inputs: ["styleClass", "style", "strokeWidth", "fill", "animationDuration", "ariaLabel"] }, { kind: "component", type: i9.NoDataComponent, selector: "pw-no-data", inputs: ["message", "description", "withImage"] }, { kind: "directive", type: i10.DynamicBadgeDirective, selector: "[appDynamicBadge]", inputs: ["appDynamicBadge", "color"] }, { kind: "directive", type: i10.RbacAllowDirective, selector: "[rbacAllow]", inputs: ["rbacAllow"] }, { kind: "directive", type: i11.NgbTooltip, selector: "[ngbTooltip]", inputs: ["animation", "autoClose", "placement", "popperOptions", "triggers", "positionTarget", "container", "disableTooltip", "tooltipClass", "tooltipContext", "openDelay", "closeDelay", "ngbTooltip"], outputs: ["shown", "hidden"], exportAs: ["ngbTooltip"] }, { kind: "pipe", type: i12.TranslocoPipe, name: "transloco" }, { kind: "pipe", type: i13.RemoveHtmlPipe, name: "removeHtml" }, { kind: "pipe", type: i13.TextTruncatePipe, name: "textTruncate" }] }); }
105
+ }
106
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: MailerListComponent, decorators: [{
107
+ type: Component,
108
+ args: [{ selector: 'pw-mailer-list', template: "<div class=\"row\">\n <div class=\"col-12 d-flex justify-content-between align-items-center text-end\">\n <h2 class=\"card-title p-0 float-start\">Mailers</h2>\n <button *rbacAllow=\"'SubscriptionSuperAdmin'\"\n class=\"btn btn-outline-primary btn-sm float-end m-0\"\n [routerLink]=\"[routers.mailerDetails + 'add']\">\n <i class=\"fa fa-plus-circle\" aria-hidden=\"true\"></i> Create Mailer\n </button>\n </div>\n </div>\n <div class=\"w-100 text-center mt-3\"\n *ngIf=\"!isLoaded\">\n <p-progressSpinner strokeWidth=\"2\"> </p-progressSpinner>\n </div>\n <div class=\"primeng-datatable-container table-responsive mt-3\"\n [class.hideTable]=\"data.unfiltered_count === 0\">\n <p-table #tt\n [value]=\"data.custom_emails\"\n [paginator]=\"data.object_count !== 0\"\n [rows]=\"PAGE_SIZE\"\n [totalRecords]=\"data.object_count\"\n [loading]=\"loading\"\n [lazy]=\"true\"\n [filterDelay]=\"1000\"\n (onLazyLoad)=\"onLazyLoad($event)\"\n [customSort]=\"true\">\n <!--sort order should be default empty when page load-->\n\n <!-- Caption Header, Search Bar -->\n <ng-template pTemplate=\"caption\">\n <div class=\"text-end\">\n <i class=\"fa fa-search mt-2 me-2\" aria-hidden=\"true\"></i>\n <input type=\"text\"\n pInputText\n size=\"50\"\n placeholder=\"Search\"\n [(ngModel)]=\"searchText\"\n (input)=\"tt.filterGlobal($event.target.value, 'contains')\" />\n </div>\n </ng-template>\n\n <!-- Column Header -->\n <ng-template pTemplate=\"header\">\n <tr>\n <th scope=\"true\"\n pSortableColumn=\"name\">\n {{'Label.Subject' | transloco}}\n </th>\n <th scope=\"true\"\n pSortableColumn=\"active\">\n {{'Label.Body' | transloco}}\n </th>\n <th scope=\"true\"\n pSortableColumn=\"name\">\n {{'Label.TemplateName' | transloco}}\n </th>\n <th class=\"actions-list-two\"\n scope=\"true\">{{ 'Label.Actions' | transloco }}</th>\n </tr>\n </ng-template>\n\n <!-- Table Body -->\n <ng-template pTemplate=\"body\"\n let-item>\n <tr>\n <td data-head=\"Name\">\n {{item.subject}}\n </td>\n <td data-head=\"Body\">\n {{(item.body|removeHtml: 'quill')|textTruncate: 200}}\n </td>\n <td data-head=\"Name\">\n <span [appDynamicBadge]=\"{ itemsArray: availableMailerTypes, item: item.template_name }\"\n color=\"cyan\"\n class=\"badge\"> {{item.template_name}}</span>\n </td>\n <td data-head=\"Action\">\n <ul class=\"list-unstyled list-inline list-action\"\n *rbacAllow=\"'SubscriptionSuperAdmin'\">\n <li ngbTooltip=\"Edit\"\n class=\"me-2 me-sm-3\"\n [routerLink]=\"[routers.mailerDetails + item.id]\">\n <i class=\"fa fa-edit edit-icon\" aria-hidden=\"true\"></i>\n </li>\n <li ngbTooltip=\"Delete\"\n class=\"me-2 me-sm-3\"\n (click)=\"onDelete(item)\">\n <i class=\"fa fa-trash delete-icon\" aria-hidden=\"true\"></i>\n </li>\n </ul>\n </td>\n </tr>\n </ng-template>\n </p-table>\n <div *ngIf=\"data.object_count === 0 && data.unfiltered_count !== 0\">\n <pw-no-data [withImage]=\"true\" [message]=\"'Search.NoDataMessage' | transloco\" [description]=\"'Search.NoDataDescription' | transloco\" >\n </pw-no-data>\n </div>\n <span *ngIf=\"data.object_count !== 0\" class=\"total-records-count\">{{ 'Label.Total' | transloco }}: {{ data.object_count }}</span>\n </div>\n <div *ngIf=\"data.unfiltered_count === 0 && isLoaded\">\n <pw-no-data [withImage]=\"true\" [message]=\"'Admin.Mailer.NoDataMessage' | transloco\"> </pw-no-data>\n </div>\n" }]
109
+ }], ctorParameters: () => [{ type: i1.AdminService }, { type: i0.Injector }, { type: i0.ChangeDetectorRef }] });
110
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFpbGVyLWxpc3QuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hZG1pbi1tb2R1bGUvc3JjL2xpYi9jb21wb25lbnRzL21haWxlci9tYWlsZXItbGlzdC9tYWlsZXItbGlzdC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FkbWluLW1vZHVsZS9zcmMvbGliL2NvbXBvbmVudHMvbWFpbGVyL21haWxlci1saXN0L21haWxlci1saXN0LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFFSCxpQkFBaUIsRUFDakIsU0FBUyxFQUNULFFBQVEsRUFHWCxNQUFNLGVBQWUsQ0FBQztBQUV2QixPQUFPLElBQUksTUFBTSxhQUFhLENBQUM7QUFFL0IsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQzVELE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUMxRCxPQUFPLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ2xFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBRWhFLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUN6RCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQzs7Ozs7Ozs7Ozs7Ozs7O0FBTTlELE1BQU0sT0FBTyxtQkFDVCxTQUFRLGdCQUFnQjtJQXlCeEIsWUFDWSxZQUEwQixFQUNsQyxRQUFrQixFQUNWLEdBQXNCO1FBRTlCLEtBQUssQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUpSLGlCQUFZLEdBQVosWUFBWSxDQUFjO1FBRTFCLFFBQUcsR0FBSCxHQUFHLENBQW1CO1FBekJsQyxTQUFJLEdBQUc7WUFDSCxhQUFhLEVBQUUsRUFBRTtZQUNqQixZQUFZ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Q0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDO29CQUNoRixJQUFJLENBQUMsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDO29CQUV6QixJQUFJLElBQUksQ0FBQyxJQUFJLENBQUMsWUFBWSxLQUFLLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQzt3QkFDbkQsSUFBSSxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxDQUFDLENBQUM7b0JBQ25DLENBQUM7b0JBQ0QsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxTQUFTLENBQUMsNkJBQTZCLENBQUMsQ0FBQyxDQUFDO2dCQUNsRixDQUFDLENBQUMsQ0FBQztZQUNQLENBQUM7UUFDTCxDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7SUFFRCxtQkFBbUIsQ0FBQyxFQUFVO1FBQzFCLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUMscUJBQXFCLENBQUMsRUFBRSxFQUFFLFdBQVcsRUFBRSxFQUFFLFNBQVMsRUFBRSxFQUFFLEVBQUUsRUFBRSxDQUFDLENBQUM7SUFDdEYsQ0FBQztJQUVRLFdBQVc7UUFDaEIsS0FBSyxDQUFDLFdBQVcsRUFBRSxDQUFDO0lBQ3hCLENBQUM7K0dBeEdRLG1CQUFtQjttR0FBbkIsbUJBQW1CLDZFQ3ZCaEMsdStIQXVHQTs7NEZEaEZhLG1CQUFtQjtrQkFKL0IsU0FBUzsrQkFDSSxnQkFBZ0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICAgIEFmdGVyVmlld0NoZWNrZWQsXG4gICAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgQ29tcG9uZW50LFxuICAgIEluamVjdG9yLFxuICAgIE9uRGVzdHJveSxcbiAgICBPbkluaXRcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBMYXp5TG9hZEV2ZW50IH0gZnJvbSAncHJpbWVuZy9hcGknO1xuaW1wb3J0IHN3YWwgZnJvbSAnc3dlZXRhbGVydDInO1xuXG5pbXBvcnQgeyBBZG1pblNlcnZpY2UgfSBmcm9tICdAcG9zaXdpc2UvYWRtaW4tbW9kdWxlLXV0aWxzJztcbmltcG9ydCB7IFJPVVRFUlMgfSBmcm9tICcuLi8uLi8uLi9zaGFyZWQvcm91dGVycy9yb3V0ZXJzJztcbmltcG9ydCB7IFBBR0VfU0laRSwgVE9LRU5fS0VZIH0gZnJvbSAnQHBvc2l3aXNlL2NvbW1vbi11dGlsaXRpZXMnO1xuaW1wb3J0IHsgQXBwQmFzZUNvbXBvbmVudCB9IGZyb20gJ0Bwb3Npd2lzZS9hcHAtYmFzZS1jb21wb25lbnQnO1xuaW1wb3J0IHsgUGFnaW5nIH0gZnJvbSAnQHBvc2l3aXNlL2NvbW1vbi11dGlsaXRpZXMnO1xuaW1wb3J0IHsgSGVscGVyU2VydmljZSB9IGZyb20gJ0Bwb3Npd2lzZS9oZWxwZXItc2VydmljZSc7XG5pbXBvcnQgeyBQZXJtaXNzaW9uU2VydmljZSB9IGZyb20gJ0Bwb3Npd2lzZS9jb21tb24tc2VydmljZXMnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ3B3LW1haWxlci1saXN0JyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vbWFpbGVyLWxpc3QuY29tcG9uZW50Lmh0bWwnXG59KVxuZXhwb3J0IGNsYXNzIE1haWxlckxpc3RDb21wb25lbnRcbiAgICBleHRlbmRzIEFwcEJhc2VDb21wb25lbnRcbiAgICBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95LCBBZnRlclZpZXdDaGVja2VkXG57XG4gICAgZGF0YSA9IHtcbiAgICAgICAgY3VzdG9tX2VtYWlsczogW10sXG4gICAgICAgIG9iamVjdF9jb3VudDogMCxcbiAgICAgICAgdW5maWx0ZXJlZF9jb3VudDogMFxuICAgIH07XG5cbiAgICBzZWFyY2hUZXh0ID0gJyc7XG5cbiAgICBhdmFpbGFibGVNYWlsZXJUeXBlcztcblxuICAgIGxvYWRpbmcgPSB0cnVlO1xuXG4gICAgaXNMb2FkZWQgPSBmYWxzZTtcblxuICAgIHByaXZhdGUgcGFnZSA9IDE7XG5cbiAgICByb3V0ZXJzID0gUk9VVEVSUztcblxuICAgIHN1YnNjcmlwdGlvbklkOiBudW1iZXI7XG5cbiAgICB1c2VyTG9nZ2VkSW46IGJvb2xlYW47XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHJpdmF0ZSBhZG1pblNlcnZpY2U6IEFkbWluU2VydmljZSxcbiAgICAgICAgaW5qZWN0b3I6IEluamVjdG9yLFxuICAgICAgICBwcml2YXRlIGNkcjogQ2hhbmdlRGV0ZWN0b3JSZWZcbiAgICApIHtcbiAgICAgICAgc3VwZXIoaW5qZWN0b3IpO1xuICAgIH1cblxuICAgIG5nT25Jbml0KCkge1xuICAgICAgICB0aGlzLmxvY2FsU3RvcmFnZS5nZXRJdGVtJChUT0tFTl9LRVkpLnN1YnNjcmliZShyZXMgPT4ge1xuICAgICAgICAgICAgdGhpcy51c2VyTG9nZ2VkSW4gPSAhIXJlcztcbiAgICAgICAgICAgIGlmICh0aGlzLnVzZXJMb2dnZWRJbikge1xuICAgICAgICAgICAgICAgIHRoaXMuc3Vic2NyaXB0aW9uSWQgPSBQZXJtaXNzaW9uU2VydmljZS5zZWxlY3RlZFN1YnNjcmlwdGlvbj8uaWQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgICAgICB0aGlzLmdldE1haWxlcnMoe1xuICAgICAgICAgICAgcGFnZTogdGhpcy5wYWdlLFxuICAgICAgICAgICAgcGFnZV9zaXplOiBQQUdFX1NJWkUsXG4gICAgICAgICAgICBvcmRlcl9ieTogJycsXG4gICAgICAgICAgICBvcmRlcl9kaXJlY3Rpb246ICcnLFxuICAgICAgICAgICAgc2VhcmNoOiB0aGlzLnNlYXJjaFRleHRcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgbmdBZnRlclZpZXdDaGVja2VkKCkge1xuICAgICAgICB0aGlzLmNkci5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgfVxuXG4gICAgb25MYXp5TG9hZChldmVudDogTGF6eUxvYWRFdmVudCkge1xuICAgICAgICBjb25zdCBwYWdlRGV0YWlscyA9IEhlbHBlclNlcnZpY2Uub25UYWJsZUxhenlMb2FkKGV2ZW50KTtcbiAgICAgICAgdGhpcy5wYWdlID0gcGFnZURldGFpbHMucGFnZTtcbiAgICAgICAgdGhpcy5nZXRNYWlsZXJzKHtcbiAgICAgICAgICAgIHBhZ2U6IHRoaXMucGFnZSxcbiAgICAgICAgICAgIHBhZ2Vfc2l6ZTogUEFHRV9TSVpFLFxuICAgICAgICAgICAgb3JkZXJfYnk6IHBhZ2VEZXRhaWxzLnNvcnRGaWVsZCxcbiAgICAgICAgICAgIG9yZGVyX2RpcmVjdGlvbjogcGFnZURldGFpbHMuc29ydE9yZGVyLFxuICAgICAgICAgICAgc2VhcmNoOiB0aGlzLnNlYXJjaFRleHRcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXRNYWlsZXJzKHBhZ2luZzogUGFnaW5nKSB7XG4gICAgICAgIHRoaXMuaXNMb2FkZWQgPSBmYWxzZTtcbiAgICAgICAgdGhpcy5hZG1pblNlcnZpY2UuZ2V0TWFpbGVycyhwYWdpbmcsIHRoaXMuc3Vic2NyaXB0aW9uSWQgfHwgbnVsbCkuc3Vic2NyaWJlKHJlc3BvbnNlID0+IHtcbiAgICAgICAgICAgIHRoaXMuZGF0YSA9IHJlc3BvbnNlO1xuICAgICAgICAgICAgdGhpcy5hdmFpbGFibGVNYWlsZXJUeXBlcyA9IHJlc3BvbnNlPy5jdXN0b21fZW1haWxzPy5tYXAoZW1haWwgPT4gZW1haWwudGVtcGxhdGVfbmFtZSk7XG4gICAgICAgICAgICB0aGlzLmxvYWRpbmcgPSBmYWxzZTtcbiAgICAgICAgICAgIHRoaXMuaXNMb2FkZWQgPSB0cnVlO1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBvbkRlbGV0ZShpdGVtKSB7XG4gICAgICAgIHN3YWwuZmlyZSh7XG4gICAgICAgICAgICB0aXRsZTogJ0RlbGV0ZScsXG4gICAgICAgICAgICB0ZXh0OiBgQXJlIHlvdSBzdXJlIHlvdSB3YW50IHRvIGRlbGV0ZT9gLFxuICAgICAgICAgICAgc2hvd0NhbmNlbEJ1dHRvbjogdHJ1ZSxcbiAgICAgICAgICAgIHJldmVyc2VCdXR0b25zOiB0cnVlLFxuICAgICAgICAgICAgaWNvbjogJ3dhcm5pbmcnXG4gICAgICAgIH0pLnRoZW4ocmVwID0+IHtcbiAgICAgICAgICAgIGlmIChyZXAudmFsdWUpIHtcbiAgICAgICAgICAgICAgICB0aGlzLmFkbWluU2VydmljZS5kZWxldGVNYWlsZXIoaXRlbS5pZCwgdGhpcy5zdWJzY3JpcHRpb25JZCkuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5kYXRhLmN1c3RvbV9lbWFpbHMgPSB0aGlzLmRhdGEuY3VzdG9tX2VtYWlscy5maWx0ZXIoeCA9PiB4LmlkICE9PSBpdGVtLmlkKTtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5kYXRhLm9iamVjdF9jb3VudC0tO1xuXG4gICAgICAgICAgICAgICAgICAgIGlmICh0aGlzLmRhdGEub2JqZWN0X2NvdW50ID09PSAwICYmICF0aGlzLnNlYXJjaFRleHQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuZGF0YS51bmZpbHRlcmVkX2NvdW50ID0gMDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB0aGlzLnRvYXN0LnN1Y2Nlc3ModGhpcy50cmFuc2xhdGlvbi50cmFuc2xhdGUoJ0FkbWluLk1haWxlci5EZWxldGVkTWVzc2FnZScpKTtcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgbmF2aWdhdGVNYWlsZXJJdGVtcyhpZDogbnVtYmVyKSB7XG4gICAgICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKFtgL2FkbWluL21haWxlci9pdGVtc2BdLCB7IHF1ZXJ5UGFyYW1zOiB7IG1haWxlcl9pZDogaWQgfSB9KTtcbiAgICB9XG5cbiAgICBvdmVycmlkZSBuZ09uRGVzdHJveSgpIHtcbiAgICAgICAgc3VwZXIubmdPbkRlc3Ryb3koKTtcbiAgICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwicm93XCI+XG4gICAgPGRpdiBjbGFzcz1cImNvbC0xMiBkLWZsZXgganVzdGlmeS1jb250ZW50LWJldHdlZW4gYWxpZ24taXRlbXMtY2VudGVyIHRleHQtZW5kXCI+XG4gICAgICA8aDIgY2xhc3M9XCJjYXJkLXRpdGxlIHAtMCBmbG9hdC1zdGFydFwiPk1haWxlcnM8L2gyPlxuICAgICAgPGJ1dHRvbiAqcmJhY0FsbG93PVwiJ1N1YnNjcmlwdGlvblN1cGVyQWRtaW4nXCJcbiAgICAgICAgY2xhc3M9XCJidG4gYnRuLW91dGxpbmUtcHJpbWFyeSBidG4tc20gZmxvYXQtZW5kIG0tMFwiXG4gICAgICAgIFtyb3V0ZXJMaW5rXT1cIltyb3V0ZXJzLm1haWxlckRldGFpbHMgKyAnYWRkJ11cIj5cbiAgICAgICAgPGkgY2xhc3M9XCJmYSBmYS1wbHVzLWNpcmNsZVwiIGFyaWEtaGlkZGVuPVwidHJ1ZVwiPjwvaT4gQ3JlYXRlIE1haWxlclxuICAgICAgPC9idXR0b24+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuICA8ZGl2IGNsYXNzPVwidy0xMDAgdGV4dC1jZW50ZXIgbXQtM1wiXG4gICAgKm5nSWY9XCIhaXNMb2FkZWRcIj5cbiAgICA8cC1wcm9ncmVzc1NwaW5uZXIgc3Ryb2tlV2lkdGg9XCIyXCI+IDwvcC1wcm9ncmVzc1NwaW5uZXI+XG4gIDwvZGl2PlxuICA8ZGl2IGNsYXNzPVwicHJpbWVuZy1kYXRhdGFibGUtY29udGFpbmVyIHRhYmxlLXJlc3BvbnNpdmUgbXQtM1wiXG4gICAgW2NsYXNzLmhpZGVUYWJsZV09XCJkYXRhLnVuZmlsdGVyZWRfY291bnQgPT09IDBcIj5cbiAgICA8cC10YWJsZSAjdHRcbiAgICAgIFt2YWx1ZV09XCJkYXRhLmN1c3RvbV9lbWFpbHNcIlxuICAgICAgW3BhZ2luYXRvcl09XCJkYXRhLm9iamVjdF9jb3VudCAhPT0gMFwiXG4gICAgICBbcm93c109XCJQQUdFX1NJWkVcIlxuICAgICAgW3RvdGFsUmVjb3Jkc109XCJkYXRhLm9iamVjdF9jb3VudFwiXG4gICAgICBbbG9hZGluZ109XCJsb2FkaW5nXCJcbiAgICAgIFtsYXp5XT1cInRydWVcIlxuICAgICAgW2ZpbHRlckRlbGF5XT1cIjEwMDBcIlxuICAgICAgKG9uTGF6eUxvYWQpPVwib25MYXp5TG9hZCgkZXZlbnQpXCJcbiAgICAgIFtjdXN0b21Tb3J0XT1cInRydWVcIj5cbiAgICAgIDwhLS1zb3J0IG9yZGVyIHNob3VsZCBiZSBkZWZhdWx0IGVtcHR5IHdoZW4gcGFnZSBsb2FkLS0+XG5cbiAgICAgIDwhLS0gQ2FwdGlvbiBIZWFkZXIsIFNlYXJjaCBCYXIgLS0+XG4gICAgICA8bmctdGVtcGxhdGUgcFRlbXBsYXRlPVwiY2FwdGlvblwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwidGV4dC1lbmRcIj5cbiAgICAgICAgICA8aSBjbGFzcz1cImZhIGZhLXNlYXJjaCBtdC0yIG1lLTJcIiBhcmlhLWhpZGRlbj1cInRydWVcIj48L2k+XG4gICAgICAgICAgPGlucHV0IHR5cGU9XCJ0ZXh0XCJcbiAgICAgICAgICAgIHBJbnB1dFRleHRcbiAgICAgICAgICAgIHNpemU9XCI1MFwiXG4gICAgICAgICAgICBwbGFjZWhvbGRlcj1cIlNlYXJjaFwiXG4gICAgICAgICAgICBbKG5nTW9kZWwpXT1cInNlYXJjaFRleHRcIlxuICAgICAgICAgICAgKGlucHV0KT1cInR0LmZpbHRlckdsb2JhbCgkZXZlbnQudGFyZ2V0LnZhbHVlLCAnY29udGFpbnMnKVwiIC8+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9uZy10ZW1wbGF0ZT5cblxuICAgICAgPCEtLSBDb2x1bW4gSGVhZGVyIC0tPlxuICAgICAgPG5nLXRlbXBsYXRlIHBUZW1wbGF0ZT1cImhlYWRlclwiPlxuICAgICAgICA8dHI+XG4gICAgICAgICAgPHRoIHNjb3BlPVwidHJ1ZVwiXG4gICAgICAgICAgICBwU29ydGFibGVDb2x1bW49XCJuYW1lXCI+XG4gICAgICAgICAgICB7eydMYWJlbC5TdWJqZWN0JyB8IHRyYW5zbG9jb319XG4gICAgICAgICAgPC90aD5cbiAgICAgICAgICA8dGggc2NvcGU9XCJ0cnVlXCJcbiAgICAgICAgICAgIHBTb3J0YWJsZUNvbHVtbj1cImFjdGl2ZVwiPlxuICAgICAgICAgICAge3snTGFiZWwuQm9keScgfCB0cmFuc2xvY299fVxuICAgICAgICAgIDwvdGg+XG4gICAgICAgICAgPHRoIHNjb3BlPVwidHJ1ZVwiXG4gICAgICAgICAgICBwU29ydGFibGVDb2x1bW49XCJuYW1lXCI+XG4gICAgICAgICAgICB7eydMYWJlbC5UZW1wbGF0ZU5hbWUnIHwgdHJhbnNsb2NvfX1cbiAgICAgICAgICA8L3RoPlxuICAgICAgICAgIDx0aCBjbGFzcz1cImFjdGlvbnMtbGlzdC10d29cIlxuICAgICAgICAgIHNjb3BlPVwidHJ1ZVwiPnt7ICdMYWJlbC5BY3Rpb25zJyB8IHRyYW5zbG9jbyB9fTwvdGg+XG4gICAgICAgIDwvdHI+XG4gICAgICA8L25nLXRlbXBsYXRlPlxuXG4gICAgICA8IS0tIFRhYmxlIEJvZHkgLS0+XG4gICAgICA8bmctdGVtcGxhdGUgcFRlbXBsYXRlPVwiYm9keVwiXG4gICAgICAgIGxldC1pdGVtPlxuICAgICAgICA8dHI+XG4gICAgICAgICAgPHRkIGRhdGEtaGVhZD1cIk5hbWVcIj5cbiAgICAgICAgICAge3tpdGVtLnN1YmplY3R9fVxuICAgICAgICAgIDwvdGQ+XG4gICAgICAgICAgPHRkIGRhdGEtaGVhZD1cIkJvZHlcIj5cbiAgICAgICAgICAgIHt7KGl0ZW0uYm9keXxyZW1vdmVIdG1sOiAncXVpbGwnKXx0ZXh0VHJ1bmNhdGU6IDIwMH19XG4gICAgICAgICAgIDwvdGQ+XG4gICAgICAgICAgIDx0ZCBkYXRhLWhlYWQ9XCJOYW1lXCI+XG4gICAgICAgICAgICA8c3BhbiBbYXBwRHluYW1pY0JhZGdlXT1cInsgaXRlbXNBcnJheTogYXZhaWxhYmxlTWFpbGVyVHlwZXMsIGl0ZW06IGl0ZW0udGVtcGxhdGVfbmFtZSB9XCJcbiAgICAgICAgICAgIGNvbG9yPVwiY3lhblwiXG4gICAgICAgICAgICBjbGFzcz1cImJhZGdlXCI+IHt7aXRlbS50ZW1wbGF0ZV9uYW1lfX08L3NwYW4+XG4gICAgICAgICAgIDwvdGQ+XG4gICAgICAgICAgPHRkIGRhdGEtaGVhZD1cIkFjdGlvblwiPlxuICAgICAgICAgICAgPHVsIGNsYXNzPVwibGlzdC11bnN0eWxlZCBsaXN0LWlubGluZSBsaXN0LWFjdGlvblwiXG4gICAgICAgICAgICAgICpyYmFjQWxsb3c9XCInU3Vic2NyaXB0aW9uU3VwZXJBZG1pbidcIj5cbiAgICAgICAgICAgICAgPGxpIG5nYlRvb2x0aXA9XCJFZGl0XCJcbiAgICAgICAgICAgICAgICBjbGFzcz1cIm1lLTIgbWUtc20tM1wiXG4gICAgICAgICAgICAgICAgW3JvdXRlckxpbmtdPVwiW3JvdXRlcnMubWFpbGVyRGV0YWlscyArIGl0ZW0uaWRdXCI+XG4gICAgICAgICAgICAgICAgPGkgY2xhc3M9XCJmYSBmYS1lZGl0IGVkaXQtaWNvblwiIGFyaWEtaGlkZGVuPVwidHJ1ZVwiPjwvaT5cbiAgICAgICAgICAgICAgPC9saT5cbiAgICAgICAgICAgICAgPGxpIG5nYlRvb2x0aXA9XCJEZWxldGVcIlxuICAgICAgICAgICAgICAgIGNsYXNzPVwibWUtMiBtZS1zbS0zXCJcbiAgICAgICAgICAgICAgICAoY2xpY2spPVwib25EZWxldGUoaXRlbSlcIj5cbiAgICAgICAgICAgICAgICA8aSBjbGFzcz1cImZhIGZhLXRyYXNoIGRlbGV0ZS1pY29uXCIgYXJpYS1oaWRkZW49XCJ0cnVlXCI+PC9pPlxuICAgICAgICAgICAgICA8L2xpPlxuICAgICAgICAgICAgPC91bD5cbiAgICAgICAgICA8L3RkPlxuICAgICAgICA8L3RyPlxuICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICA8L3AtdGFibGU+XG4gIDxkaXYgKm5nSWY9XCJkYXRhLm9iamVjdF9jb3VudCA9PT0gMCAmJiBkYXRhLnVuZmlsdGVyZWRfY291bnQgIT09IDBcIj5cbiAgICAgIDxwdy1uby1kYXRhIFt3aXRoSW1hZ2VdPVwidHJ1ZVwiIFttZXNzYWdlXT1cIidTZWFyY2guTm9EYXRhTWVzc2FnZScgfCB0cmFuc2xvY29cIiBbZGVzY3JpcHRpb25dPVwiJ1NlYXJjaC5Ob0RhdGFEZXNjcmlwdGlvbicgfCB0cmFuc2xvY29cIiA+XG4gICAgICA8L3B3LW5vLWRhdGE+XG4gIDwvZGl2PlxuICAgIDxzcGFuICpuZ0lmPVwiZGF0YS5vYmplY3RfY291bnQgIT09IDBcIiBjbGFzcz1cInRvdGFsLXJlY29yZHMtY291bnRcIj57eyAnTGFiZWwuVG90YWwnIHwgdHJhbnNsb2NvIH19OiB7eyAgZGF0YS5vYmplY3RfY291bnQgfX08L3NwYW4+XG4gIDwvZGl2PlxuICA8ZGl2ICpuZ0lmPVwiZGF0YS51bmZpbHRlcmVkX2NvdW50ID09PSAwICYmIGlzTG9hZGVkXCI+XG4gICAgPHB3LW5vLWRhdGEgW3dpdGhJbWFnZV09XCJ0cnVlXCIgW21lc3NhZ2VdPVwiJ0FkbWluLk1haWxlci5Ob0RhdGFNZXNzYWdlJyB8IHRyYW5zbG9jb1wiPiA8L3B3LW5vLWRhdGE+XG4gIDwvZGl2PlxuIl19
@@ -0,0 +1,24 @@
1
+ import { Component, Injector } from '@angular/core';
2
+ import { AppBaseComponent } from '@posiwise/app-base-component';
3
+ import * as i0 from "@angular/core";
4
+ import * as i1 from "@posiwise/shared-components";
5
+ export class MailerComponent extends AppBaseComponent {
6
+ constructor(injector) {
7
+ super(injector);
8
+ this.items = [
9
+ {
10
+ id: 'mailer',
11
+ label: 'Mailers',
12
+ icon: 'fa fa-fw fa-envelope',
13
+ routerLink: ['/admin/mailers']
14
+ }
15
+ ];
16
+ }
17
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: MailerComponent, deps: [{ token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component }); }
18
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.11", type: MailerComponent, selector: "pw-mailer", usesInheritance: true, ngImport: i0, template: `<pw-tabs [items]="items"></pw-tabs>`, isInline: true, styles: [".text-truncate{max-width:150px}.card-body{min-height:65vh}\n"], dependencies: [{ kind: "component", type: i1.PwTabsComponent, selector: "pw-tabs", inputs: ["items", "withSubscription"] }] }); }
19
+ }
20
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: MailerComponent, decorators: [{
21
+ type: Component,
22
+ args: [{ selector: 'pw-mailer', template: `<pw-tabs [items]="items"></pw-tabs>`, styles: [".text-truncate{max-width:150px}.card-body{min-height:65vh}\n"] }]
23
+ }], ctorParameters: () => [{ type: i0.Injector }] });
24
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFpbGVyLXRhYnMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hZG1pbi1tb2R1bGUvc3JjL2xpYi9jb21wb25lbnRzL21haWxlci9tYWlsZXItdGFicy9tYWlsZXItdGFicy5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFcEQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sOEJBQThCLENBQUM7OztBQWdCaEUsTUFBTSxPQUFPLGVBQWdCLFNBQVEsZ0JBQWdCO0lBQ2pELFlBQVksUUFBa0I7UUFDMUIsS0FBSyxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBS3BCLFVBQUssR0FBZTtZQUNoQjtnQkFDSSxFQUFFLEVBQUUsUUFBUTtnQkFDWixLQUFLLEVBQUUsU0FBUztnQkFDaEIsSUFBSSxFQUFFLHNCQUFzQjtnQkFDNUIsVUFBVSxFQUFFLENBQUMsZ0JBQWdCLENBQUM7YUFDakM7U0FDSixDQUFDO0lBWEYsQ0FBQzsrR0FIUSxlQUFlO21HQUFmLGVBQWUsd0VBWmQscUNBQXFDOzs0RkFZdEMsZUFBZTtrQkFkM0IsU0FBUzsrQkFDSSxXQUFXLFlBQ1gscUNBQXFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbmplY3RvciB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTWVudUl0ZW0gfSBmcm9tICdwcmltZW5nL2FwaSc7XG5pbXBvcnQgeyBBcHBCYXNlQ29tcG9uZW50IH0gZnJvbSAnQHBvc2l3aXNlL2FwcC1iYXNlLWNvbXBvbmVudCc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAncHctbWFpbGVyJyxcbiAgICB0ZW1wbGF0ZTogYDxwdy10YWJzIFtpdGVtc109XCJpdGVtc1wiPjwvcHctdGFicz5gLFxuICAgIHN0eWxlczogW1xuICAgICAgICBgXG4gICAgICAgICAgICAudGV4dC10cnVuY2F0ZSB7XG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOiAxNTBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5jYXJkLWJvZHkge1xuICAgICAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDY1dmg7XG4gICAgICAgICAgICB9XG4gICAgICAgIGBcbiAgICBdXG59KVxuZXhwb3J0IGNsYXNzIE1haWxlckNvbXBvbmVudCBleHRlbmRzIEFwcEJhc2VDb21wb25lbnQge1xuICAgIGNvbnN0cnVjdG9yKGluamVjdG9yOiBJbmplY3Rvcikge1xuICAgICAgICBzdXBlcihpbmplY3Rvcik7XG4gICAgfVxuXG4gICAgYWN0aXZlSXRlbTogTWVudUl0ZW07XG5cbiAgICBpdGVtczogTWVudUl0ZW1bXSA9IFtcbiAgICAgICAge1xuICAgICAgICAgICAgaWQ6ICdtYWlsZXInLFxuICAgICAgICAgICAgbGFiZWw6ICdNYWlsZXJzJyxcbiAgICAgICAgICAgIGljb246ICdmYSBmYS1mdyBmYS1lbnZlbG9wZScsXG4gICAgICAgICAgICByb3V0ZXJMaW5rOiBbJy9hZG1pbi9tYWlsZXJzJ11cbiAgICAgICAgfVxuICAgIF07XG59XG4iXX0=