nuxeo-development-framework 3.8.2 → 3.8.4
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/bundles/nuxeo-development-framework.umd.js +31221 -30524
- package/bundles/nuxeo-development-framework.umd.js.map +1 -1
- package/esm2015/lib/components/notifications/components/base-list-notfications.component.js +156 -0
- package/esm2015/lib/components/notifications/components/base-notifications.component.js +31 -0
- package/esm2015/lib/components/notifications/components/index.js +7 -0
- package/esm2015/lib/components/notifications/components/notification-item/get-icon.pipe.js +44 -0
- package/esm2015/lib/components/notifications/components/notification-item/notification-item.component.js +41 -129
- package/esm2015/lib/components/notifications/components/notification-source-select/notification-source-select.component.js +38 -0
- package/esm2015/lib/components/notifications/components/notification-status-toggle/notification-status-toggle.component.js +26 -0
- package/esm2015/lib/components/notifications/components/notifications-button/notifications-button.component.js +77 -165
- package/esm2015/lib/components/notifications/components/notifications-date-select/notifications-date-select.component.js +63 -0
- package/esm2015/lib/components/notifications/components/notifications-list/notifications-list.component.js +53 -175
- package/esm2015/lib/components/notifications/components/notifications-list/options.js +24 -0
- package/esm2015/lib/components/notifications/components/notifications-list-actions/notifications-list-actions.component.js +43 -0
- package/esm2015/lib/components/notifications/components/notifications-settings/check-if-subscribed.pipe.js +28 -0
- package/esm2015/lib/components/notifications/components/notifications-settings/notifications-settings.adapter.js +30 -0
- package/esm2015/lib/components/notifications/components/notifications-settings/notifications-settings.component.js +163 -0
- package/esm2015/lib/components/notifications/components/notifications-sidebar/notifications-sidebar-content.js +28 -0
- package/esm2015/lib/components/notifications/components/notifications-sidebar/notifications-sidebar.component.js +158 -0
- package/esm2015/lib/components/notifications/constants/date.js +8 -0
- package/esm2015/lib/components/notifications/constants/index.js +5 -0
- package/esm2015/lib/components/notifications/constants/pagination.js +5 -0
- package/esm2015/lib/components/notifications/constants/panel.js +5 -0
- package/esm2015/lib/components/notifications/constants/status.js +10 -0
- package/esm2015/lib/components/notifications/containers/index.js +3 -0
- package/esm2015/lib/components/notifications/containers/notifications-list-container/notifications-list-container.component.js +98 -0
- package/esm2015/lib/components/notifications/containers/notifications-list-container/options.js +18 -0
- package/esm2015/lib/components/notifications/containers/notifications-settings-container/notifications-settings-container.component.js +67 -0
- package/esm2015/lib/components/notifications/directives/button.directive.js +28 -0
- package/esm2015/lib/components/notifications/directives/index.js +3 -0
- package/esm2015/lib/components/notifications/directives/notification.directive.js +28 -0
- package/esm2015/lib/components/notifications/index.js +2 -0
- package/esm2015/lib/components/notifications/models/common.js +2 -0
- package/esm2015/lib/components/notifications/models/index.js +11 -0
- package/esm2015/lib/components/notifications/models/notification-definition.model.js +2 -0
- package/esm2015/lib/components/notifications/models/notification-options.js +2 -0
- package/esm2015/lib/components/notifications/models/notification-setting.presenter.js +2 -0
- package/esm2015/lib/components/notifications/models/notification-subscription.model.js +2 -0
- package/esm2015/lib/components/notifications/models/notification.model.js +2 -0
- package/esm2015/lib/components/notifications/models/notifications-list-options.js +3 -0
- package/esm2015/lib/components/notifications/models/paging-response.model.js +2 -0
- package/esm2015/lib/components/notifications/models/params.model.js +2 -0
- package/esm2015/lib/components/notifications/models/vocabularies.js +2 -0
- package/esm2015/lib/components/notifications/notifications.module.js +80 -46
- package/esm2015/lib/components/notifications/public-api.js +9 -0
- package/esm2015/lib/components/notifications/services/index.js +2 -0
- package/esm2015/lib/components/notifications/services/listener.service.js +19 -0
- package/esm2015/lib/components/notifications/services/notifications.service.js +156 -0
- package/esm2015/lib/components/notifications/services/params.service.js +31 -0
- package/esm2015/lib/components/notifications/services/response.service.js +65 -0
- package/esm2015/lib/components/notifications/utilities/index.js +2 -0
- package/esm2015/lib/components/notifications/utilities/response.adapter.js +12 -0
- package/esm2015/lib/components/{notifications → toasts}/components/notification-toast/notification-toast.component.js +7 -11
- package/esm2015/lib/components/toasts/index.js +2 -0
- package/esm2015/lib/components/toasts/public-api.js +3 -0
- package/esm2015/lib/components/toasts/toasts.module.js +19 -0
- package/esm2015/lib/core/models/api-response.model.js +2 -0
- package/esm2015/lib/core/models/automation-response.model.js +2 -0
- package/esm2015/lib/core/models/base-response.models.js +2 -0
- package/esm2015/lib/core/models/index.js +5 -0
- package/esm2015/lib/core/services/nuxeo/nuxeo.service.js +3 -3
- package/esm2015/lib/core/services/translation/translation.service.js +3 -3
- package/esm2015/public-api.js +136 -142
- package/fesm2015/nuxeo-development-framework.js +23227 -22604
- package/fesm2015/nuxeo-development-framework.js.map +1 -1
- package/lib/components/notifications/components/base-list-notfications.component.d.ts +42 -0
- package/lib/components/notifications/components/base-notifications.component.d.ts +17 -0
- package/lib/components/notifications/components/index.d.ts +6 -0
- package/lib/components/notifications/components/notification-item/get-icon.pipe.d.ts +8 -0
- package/lib/components/notifications/components/notification-item/notification-item.component.d.ts +21 -22
- package/lib/components/notifications/components/notification-source-select/notification-source-select.component.d.ts +15 -0
- package/lib/components/notifications/components/notification-status-toggle/notification-status-toggle.component.d.ts +8 -0
- package/lib/components/notifications/components/notifications-button/notifications-button.component.d.ts +31 -30
- package/lib/components/notifications/components/notifications-date-select/notifications-date-select.component.d.ts +22 -0
- package/lib/components/notifications/components/notifications-list/notifications-list.component.d.ts +15 -54
- package/lib/components/notifications/components/notifications-list/options.d.ts +2 -0
- package/lib/components/notifications/components/notifications-list-actions/notifications-list-actions.component.d.ts +15 -0
- package/lib/components/notifications/components/notifications-settings/check-if-subscribed.pipe.d.ts +8 -0
- package/lib/components/notifications/components/notifications-settings/notifications-settings.adapter.d.ts +3 -0
- package/lib/components/notifications/components/notifications-settings/notifications-settings.component.d.ts +40 -0
- package/lib/components/notifications/components/notifications-sidebar/notifications-sidebar-content.d.ts +9 -0
- package/lib/components/notifications/components/notifications-sidebar/notifications-sidebar.component.d.ts +43 -0
- package/lib/components/notifications/constants/date.d.ts +7 -0
- package/lib/components/notifications/constants/index.d.ts +4 -0
- package/lib/components/notifications/constants/pagination.d.ts +4 -0
- package/lib/components/notifications/constants/panel.d.ts +4 -0
- package/lib/components/notifications/constants/status.d.ts +9 -0
- package/lib/components/notifications/containers/index.d.ts +2 -0
- package/lib/components/notifications/containers/notifications-list-container/notifications-list-container.component.d.ts +27 -0
- package/lib/components/notifications/containers/notifications-list-container/options.d.ts +2 -0
- package/lib/components/notifications/containers/notifications-settings-container/notifications-settings-container.component.d.ts +22 -0
- package/lib/components/notifications/directives/button.directive.d.ts +9 -0
- package/lib/components/notifications/directives/index.d.ts +2 -0
- package/lib/components/notifications/directives/notification.directive.d.ts +9 -0
- package/lib/components/notifications/index.d.ts +1 -0
- package/lib/components/notifications/models/common.d.ts +64 -0
- package/lib/components/notifications/models/index.d.ts +10 -0
- package/lib/components/notifications/models/notification-definition.model.d.ts +17 -0
- package/lib/components/notifications/models/notification-options.d.ts +7 -0
- package/lib/components/notifications/models/notification-setting.presenter.d.ts +24 -0
- package/lib/components/notifications/models/notification-subscription.model.d.ts +13 -0
- package/lib/components/notifications/models/notification.model.d.ts +16 -0
- package/lib/components/notifications/models/notifications-list-options.d.ts +34 -0
- package/lib/components/notifications/models/paging-response.model.d.ts +12 -0
- package/lib/components/notifications/models/params.model.d.ts +6 -0
- package/lib/components/notifications/models/vocabularies.d.ts +12 -0
- package/lib/components/notifications/notifications.module.d.ts +32 -16
- package/lib/components/notifications/public-api.d.ts +8 -0
- package/lib/components/notifications/services/index.d.ts +1 -0
- package/lib/components/notifications/services/listener.service.d.ts +8 -0
- package/lib/components/notifications/services/notifications.service.d.ts +56 -0
- package/lib/components/notifications/services/params.service.d.ts +19 -0
- package/lib/components/notifications/services/response.service.d.ts +19 -0
- package/lib/components/notifications/utilities/index.d.ts +1 -0
- package/lib/components/notifications/utilities/response.adapter.d.ts +3 -0
- package/lib/components/{notifications → toasts}/components/notification-toast/notification-toast.component.d.ts +1 -3
- package/lib/components/toasts/index.d.ts +1 -0
- package/lib/components/toasts/public-api.d.ts +2 -0
- package/lib/components/toasts/toasts.module.d.ts +8 -0
- package/lib/core/models/api-response.model.d.ts +24 -0
- package/lib/core/models/automation-response.model.d.ts +24 -0
- package/lib/core/models/base-response.models.d.ts +12 -0
- package/lib/core/models/index.d.ts +4 -0
- package/lib/core/services/nuxeo/nuxeo.service.d.ts +1 -1
- package/lib/core/services/translation/translation.service.d.ts +3 -3
- package/package.json +1 -1
- package/public-api.d.ts +130 -136
- package/esm2015/lib/components/notifications/components/notification-options/notification-options.component.js +0 -22
- package/esm2015/lib/components/notifications/notifications.service.js +0 -358
- package/lib/components/notifications/components/notification-options/notification-options.component.d.ts +0 -10
- package/lib/components/notifications/notifications.service.d.ts +0 -87
|
@@ -0,0 +1,156 @@
|
|
|
1
|
+
import { ChangeDetectorRef, Directive, EventEmitter, Output, } from '@angular/core';
|
|
2
|
+
import { finalize, map, switchMap, takeUntil, tap } from 'rxjs/operators';
|
|
3
|
+
import { TranslationService } from '../../../core/services/translation/translation.service';
|
|
4
|
+
import { NOTIFICATION_STATUS, PAGINATION_MODE } from '../constants';
|
|
5
|
+
import { ListenerService } from '../services/listener.service';
|
|
6
|
+
import { ParamsService } from '../services/params.service';
|
|
7
|
+
import { ResponseService } from '../services/response.service';
|
|
8
|
+
import { BaseNotification } from './base-notifications.component';
|
|
9
|
+
import * as i0 from "@angular/core";
|
|
10
|
+
export class BaseListNotifications extends BaseNotification {
|
|
11
|
+
constructor(inject) {
|
|
12
|
+
super(inject);
|
|
13
|
+
this.inject = inject;
|
|
14
|
+
this.markAllRead = new EventEmitter();
|
|
15
|
+
this.itemClicked = new EventEmitter();
|
|
16
|
+
this._paramsService = this.inject.get(ParamsService);
|
|
17
|
+
this._responseService = this.inject.get(ResponseService);
|
|
18
|
+
this._listenerService = this.inject.get(ListenerService);
|
|
19
|
+
this._translationService = this.inject.get(TranslationService);
|
|
20
|
+
this._cdr = this.inject.get(ChangeDetectorRef);
|
|
21
|
+
this.response$ = this._responseService.response$;
|
|
22
|
+
this.trackByFn = (_, item) => item.uid;
|
|
23
|
+
this.isLoadingResult = false;
|
|
24
|
+
this.direction$ = this._translationService.isArabic$.pipe(map((isArabic) => (isArabic ? 'rtl' : 'ltr')));
|
|
25
|
+
this.paginationModeEnum = PAGINATION_MODE;
|
|
26
|
+
this._listenerService.onUpdate$
|
|
27
|
+
.pipe(switchMap((data) => this._updateList()), takeUntil(this.destroy$))
|
|
28
|
+
.subscribe((res) => {
|
|
29
|
+
this._responseService.setResponse(res, true);
|
|
30
|
+
});
|
|
31
|
+
}
|
|
32
|
+
markAllAsRead(event) {
|
|
33
|
+
this.notificationsService
|
|
34
|
+
.markAllAsRead()
|
|
35
|
+
.pipe(takeUntil(this.destroy$))
|
|
36
|
+
.subscribe((res) => {
|
|
37
|
+
this._listenerService.triggerUpdate('markAllAsRead');
|
|
38
|
+
this.markAllRead.emit(event);
|
|
39
|
+
this._responseService.resetPagination();
|
|
40
|
+
this._paramsService.applyParams({
|
|
41
|
+
override: true,
|
|
42
|
+
params: {
|
|
43
|
+
currentPageIndex: 0,
|
|
44
|
+
},
|
|
45
|
+
});
|
|
46
|
+
});
|
|
47
|
+
}
|
|
48
|
+
onScrollDown() {
|
|
49
|
+
if (this._responseService.totalItems > this._responseService.itemsLength &&
|
|
50
|
+
!this.isLoadingResult) {
|
|
51
|
+
this._responseService.increasePage();
|
|
52
|
+
this._paramsService.applyParams({
|
|
53
|
+
override: false,
|
|
54
|
+
params: Object.assign(Object.assign({}, this._paramsService.activatedQuery.params), { currentPageIndex: this._responseService.selectedPage }),
|
|
55
|
+
});
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
changePage(page) {
|
|
59
|
+
this._responseService.setPage(page);
|
|
60
|
+
this._paramsService.applyParams({
|
|
61
|
+
override: true,
|
|
62
|
+
params: Object.assign(Object.assign({}, this._paramsService.activatedQuery.params), { currentPageIndex: this._responseService.selectedPage }),
|
|
63
|
+
});
|
|
64
|
+
}
|
|
65
|
+
onItemClick(notification) {
|
|
66
|
+
var _a;
|
|
67
|
+
this.itemClicked.emit(notification);
|
|
68
|
+
if (((_a = notification.properties) === null || _a === void 0 ? void 0 : _a['notif_cnt:status']) !== NOTIFICATION_STATUS.read) {
|
|
69
|
+
this.markAsRead(notification);
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
markAsRead(notification) {
|
|
73
|
+
this.notificationsService
|
|
74
|
+
.markAsRead(notification.uid)
|
|
75
|
+
.pipe(takeUntil(this.destroy$))
|
|
76
|
+
.subscribe((res) => {
|
|
77
|
+
this._listenerService.triggerUpdate('markAsRead');
|
|
78
|
+
});
|
|
79
|
+
}
|
|
80
|
+
markAsUnread(notification) {
|
|
81
|
+
this.notificationsService
|
|
82
|
+
.markAsUnread(notification.uid)
|
|
83
|
+
.pipe(takeUntil(this.destroy$))
|
|
84
|
+
.subscribe((res) => {
|
|
85
|
+
this._listenerService.triggerUpdate('markAsUnread');
|
|
86
|
+
});
|
|
87
|
+
}
|
|
88
|
+
markAsDeleted(notification) {
|
|
89
|
+
this.notificationsService
|
|
90
|
+
.markAsDeleted(notification.uid)
|
|
91
|
+
.pipe(takeUntil(this.destroy$))
|
|
92
|
+
.subscribe((res) => {
|
|
93
|
+
this._listenerService.triggerUpdate('markAsDeleted');
|
|
94
|
+
});
|
|
95
|
+
}
|
|
96
|
+
_applyFilter(params) {
|
|
97
|
+
this._responseService.resetPagination();
|
|
98
|
+
this._paramsService.applyParams({
|
|
99
|
+
override: true,
|
|
100
|
+
params,
|
|
101
|
+
});
|
|
102
|
+
}
|
|
103
|
+
_prepareData() {
|
|
104
|
+
let isOverride = false;
|
|
105
|
+
this._paramsService.params$
|
|
106
|
+
.pipe(tap((query) => {
|
|
107
|
+
isOverride = query.override;
|
|
108
|
+
this.isLoadingResult = true;
|
|
109
|
+
this._cdr.detectChanges();
|
|
110
|
+
}), switchMap((query) => {
|
|
111
|
+
return this.notificationsService.getNotifications(query.params).pipe(finalize(() => {
|
|
112
|
+
this.isLoadingResult = false;
|
|
113
|
+
this._cdr.detectChanges();
|
|
114
|
+
}));
|
|
115
|
+
}), takeUntil(this.destroy$))
|
|
116
|
+
.subscribe((res) => {
|
|
117
|
+
this._responseService.setResponse(res, isOverride);
|
|
118
|
+
});
|
|
119
|
+
}
|
|
120
|
+
_prepareLanguage() {
|
|
121
|
+
this._translationService.isArabic$
|
|
122
|
+
.pipe(map((data) => (data ? 'ar-AR' : 'en-US')), takeUntil(this.destroy$))
|
|
123
|
+
.subscribe((res) => {
|
|
124
|
+
this.currentLang = res;
|
|
125
|
+
});
|
|
126
|
+
}
|
|
127
|
+
_updateList() {
|
|
128
|
+
const query = this._paramsService.activatedQuery;
|
|
129
|
+
const payload = Object.assign(Object.assign({}, query), { currentPageIndex: 0 });
|
|
130
|
+
if (!this.options) {
|
|
131
|
+
return this.notificationsService.getNotificationsMongo(payload);
|
|
132
|
+
}
|
|
133
|
+
if (this.options.paginationMode === PAGINATION_MODE.navigator) {
|
|
134
|
+
Object.assign(payload, {
|
|
135
|
+
currentPageIndex: this._responseService.selectedPage,
|
|
136
|
+
});
|
|
137
|
+
}
|
|
138
|
+
if (this.options.paginationMode === PAGINATION_MODE.scroll) {
|
|
139
|
+
const page = this._responseService.selectedPage + 1;
|
|
140
|
+
Object.assign(payload, {
|
|
141
|
+
pageSize: Math.floor(page * ((query === null || query === void 0 ? void 0 : query.pageSize) || 20)),
|
|
142
|
+
});
|
|
143
|
+
}
|
|
144
|
+
return this.notificationsService.getNotificationsMongo(payload);
|
|
145
|
+
}
|
|
146
|
+
}
|
|
147
|
+
BaseListNotifications.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: BaseListNotifications, deps: [{ token: i0.Injector }], target: i0.ɵɵFactoryTarget.Directive });
|
|
148
|
+
BaseListNotifications.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.17", type: BaseListNotifications, outputs: { markAllRead: "markAllRead", itemClicked: "itemClicked" }, usesInheritance: true, ngImport: i0 });
|
|
149
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: BaseListNotifications, decorators: [{
|
|
150
|
+
type: Directive
|
|
151
|
+
}], ctorParameters: function () { return [{ type: i0.Injector }]; }, propDecorators: { markAllRead: [{
|
|
152
|
+
type: Output
|
|
153
|
+
}], itemClicked: [{
|
|
154
|
+
type: Output
|
|
155
|
+
}] } });
|
|
156
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS1saXN0LW5vdGZpY2F0aW9ucy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9udXhlby1kZXZlbG9wbWVudC1mcmFtZXdvcmsvc3JjL2xpYi9jb21wb25lbnRzL25vdGlmaWNhdGlvbnMvY29tcG9uZW50cy9iYXNlLWxpc3Qtbm90ZmljYXRpb25zLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsaUJBQWlCLEVBQ2pCLFNBQVMsRUFDVCxZQUFZLEVBRVosTUFBTSxHQUNQLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxRQUFRLEVBQUUsR0FBRyxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDMUUsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sd0RBQXdELENBQUM7QUFDNUYsT0FBTyxFQUFFLG1CQUFtQixFQUFFLGVBQWUsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQU1wRSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDL0QsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQzNELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUMvRCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQzs7QUFHbEUsTUFBTSxPQUFPLHFCQUFzQixTQUFRLGdCQUFnQjtJQXdCekQsWUFBc0IsTUFBZ0I7UUFDcEMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBRE0sV0FBTSxHQUFOLE1BQU0sQ0FBVTtRQXZCNUIsZ0JBQVcsR0FBRyxJQUFJLFlBQVksRUFBUyxDQUFDO1FBQ3hDLGdCQUFXLEdBQUcsSUFBSSxZQUFZLEVBQXFCLENBQUM7UUFFM0MsbUJBQWMsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFD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QUksQ0FBQyxnQkFBZ0IsQ0FBQyxZQUFZLEdBQUcsQ0FBQyxDQUFDO1lBQ3BELE1BQU0sQ0FBQyxNQUFNLENBQUMsT0FBTyxFQUFFO2dCQUNyQixRQUFRLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLEdBQUcsQ0FBQyxDQUFBLEtBQUssYUFBTCxLQUFLLHVCQUFMLEtBQUssQ0FBRSxRQUFRLEtBQUksRUFBRSxDQUFDLENBQUM7YUFDckQsQ0FBQyxDQUFDO1NBQ0o7UUFFRCxPQUFPLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxxQkFBcUIsQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUNsRSxDQUFDOzttSEFyTFUscUJBQXFCO3VHQUFyQixxQkFBcUI7NEZBQXJCLHFCQUFxQjtrQkFEakMsU0FBUzsrRkFFRSxXQUFXO3NCQUFwQixNQUFNO2dCQUNHLFdBQVc7c0JBQXBCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xyXG4gIENoYW5nZURldGVjdG9yUmVmLFxyXG4gIERpcmVjdGl2ZSxcclxuICBFdmVudEVtaXR0ZXIsXHJcbiAgSW5qZWN0b3IsXHJcbiAgT3V0cHV0LFxyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBmaW5hbGl6ZSwgbWFwLCBzd2l0Y2hNYXAsIHRha2VVbnRpbCwgdGFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xyXG5pbXBvcnQgeyBUcmFuc2xhdGlvblNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9jb3JlL3NlcnZpY2VzL3RyYW5zbGF0aW9uL3RyYW5zbGF0aW9uLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBOT1RJRklDQVRJT05fU1RBVFVTLCBQQUdJTkFUSU9OX01PREUgfSBmcm9tICcuLi9jb25zdGFudHMnO1xyXG5pbXBvcnQge1xyXG4gIE5vdGlmaWNhdGlvbk1vZGVsLFxyXG4gIE5vdGlmaWNhdGlvbnNMaXN0T3B0aW9ucyxcclxuICBQYXlsb2FkUGFyYW1zTW9kZWwsXHJcbn0gZnJvbSAnLi4vbW9kZWxzJztcclxuaW1wb3J0IHsgTGlzdGVuZXJTZXJ2aWNlIH0gZnJvbSAnLi4vc2VydmljZXMvbGlzdGVuZXIuc2VydmljZSc7XHJcbmltcG9ydCB7IFBhcmFtc1NlcnZpY2UgfSBmcm9tICcuLi9zZXJ2aWNlcy9wYXJhbXMuc2VydmljZSc7XHJcbmltcG9ydCB7IFJlc3BvbnNlU2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzL3Jlc3BvbnNlLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBCYXNlTm90aWZpY2F0aW9uIH0gZnJvbSAnLi9iYXNlLW5vdGlmaWNhdGlvbnMuY29tcG9uZW50JztcclxuXHJcbkBEaXJlY3RpdmUoKVxyXG5leHBvcnQgY2xhc3MgQmFzZUxpc3ROb3RpZmljYXRpb25zIGV4dGVuZHMgQmFzZU5vdGlmaWNhdGlvbiB7XHJcbiAgQE91dHB1dCgpIG1hcmtBbGxSZWFkID0gbmV3IEV2ZW50RW1pdHRlcjxFdmVudD4oKTtcclxuICBAT3V0cHV0KCkgaXRlbUNsaWNrZWQgPSBuZXcgRXZlbnRFbWl0dGVyPE5vdGlmaWNhdGlvbk1vZGVsPigpO1xyXG5cclxuICBwcm90ZWN0ZWQgcmVhZG9ubHkgX3BhcmFtc1NlcnZpY2UgPSB0aGlzLmluamVjdC5nZXQoUGFyYW1zU2VydmljZSk7XHJcbiAgcHJvdGVjdGVkIHJlYWRvbmx5IF9yZXNwb25zZVNlcnZpY2UgPSB0aGlzLmluamVjdC5nZXQoUmVzcG9uc2VTZXJ2aWNlKTtcclxuICBwcm90ZWN0ZWQgcmVhZG9ubHkgX2xpc3RlbmVyU2VydmljZSA9IHRoaXMuaW5qZWN0LmdldChMaXN0ZW5lclNlcnZpY2UpO1xyXG4gIHByb3RlY3RlZCByZWFkb25seSBfdHJhbnNsYXRpb25TZXJ2aWNlID0gdGhpcy5pbmplY3QuZ2V0KFRyYW5zbGF0aW9uU2VydmljZSk7XHJcblxyXG4gIHByb3RlY3RlZCBfY2RyID0gdGhpcy5pbmplY3QuZ2V0KENoYW5nZURldGVjdG9yUmVmKTtcclxuXHJcbiAgcmVhZG9ubHkgcmVzcG9uc2UkID0gdGhpcy5fcmVzcG9uc2VTZXJ2aWNlLnJlc3BvbnNlJDtcclxuXHJcbiAgdHJhY2tCeUZuID0gKF86IG51bWJlciwgaXRlbTogTm90aWZpY2F0aW9uTW9kZWwpID0+IGl0ZW0udWlkO1xyXG5cclxuICBpc0xvYWRpbmdSZXN1bHQgPSBmYWxzZTtcclxuXHJcbiAgY3VycmVudExhbmc6IHN0cmluZztcclxuICByZWFkb25seSBkaXJlY3Rpb24kID0gdGhpcy5fdHJhbnNsYXRpb25TZXJ2aWNlLmlzQXJhYmljJC5waXBlKFxyXG4gICAgbWFwKChpc0FyYWJpYykgPT4gKGlzQXJhYmljID8gJ3J0bCcgOiAnbHRyJykpXHJcbiAgKTtcclxuXHJcbiAgb3B0aW9uczogTm90aWZpY2F0aW9uc0xpc3RPcHRpb25zO1xyXG4gIHBhZ2luYXRpb25Nb2RlRW51bSA9IFBBR0lOQVRJT05fTU9ERTtcclxuICBjb25zdHJ1Y3Rvcihwcm90ZWN0ZWQgaW5qZWN0OiBJbmplY3Rvcikge1xyXG4gICAgc3VwZXIoaW5qZWN0KTtcclxuXHJcbiAgICB0aGlzLl9saXN0ZW5lclNlcnZpY2Uub25VcGRhdGUkXHJcbiAgICAgIC5waXBlKFxyXG4gICAgICAgIHN3aXRjaE1hcCgoZGF0YSkgPT4gdGhpcy5fdXBkYXRlTGlzdCgpKSxcclxuICAgICAgICB0YWtlVW50aWwodGhpcy5kZXN0cm95JClcclxuICAgICAgKVxyXG4gICAgICAuc3Vic2NyaWJlKChyZXMpID0+IHtcclxuICAgICAgICB0aGlzLl9yZXNwb25zZVNlcnZpY2Uuc2V0UmVzcG9uc2UocmVzLCB0cnVlKTtcclxuICAgICAgfSk7XHJcbiAgfVxyXG5cclxuICBtYXJrQWxsQXNSZWFkKGV2ZW50KSB7XHJcbiAgICB0aGlzLm5vdGlmaWNhdGlvbnNTZXJ2aWNlXHJcbiAgICAgIC5tYXJrQWxsQXNSZWFkKClcclxuICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveSQpKVxyXG4gICAgICAuc3Vic2NyaWJlKChyZXMpID0+IHtcclxuICAgICAgICB0aGlzLl9saXN0ZW5lclNlcnZpY2UudHJpZ2dlclVwZGF0ZSgnbWFya0FsbEFzUmVhZCcpO1xyXG4gICAgICAgIHRoaXMubWFya0FsbFJlYWQuZW1pdChldmVudCk7XHJcbiAgICAgICAgdGhpcy5fcmVzcG9uc2VTZXJ2aWNlLnJlc2V0UGFnaW5hdGlvbigpO1xyXG4gICAgICAgIHRoaXMuX3BhcmFtc1NlcnZpY2UuYXBwbHlQYXJhbXMoe1xyXG4gICAgICAgICAgb3ZlcnJpZGU6IHRydWUsXHJcbiAgICAgICAgICBwYXJhbXM6IHtcclxuICAgICAgICAgICAgY3VycmVudFBhZ2VJbmRleDogMCxcclxuICAgICAgICAgIH0sXHJcbiAgICAgICAgfSk7XHJcbiAgICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgb25TY3JvbGxEb3duKCkge1xyXG4gICAgaWYgKFxyXG4gICAgICB0aGlzLl9yZXNwb25zZVNlcnZpY2UudG90YWxJdGVtcyA+IHRoaXMuX3Jlc3BvbnNlU2VydmljZS5pdGVtc0xlbmd0aCAmJlxyXG4gICAgICAhdGhpcy5pc0xvYWRpbmdSZXN1bHRcclxuICAgICkge1xyXG4gICAgICB0aGlzLl9yZXNwb25zZVNlcnZpY2UuaW5jcmVhc2VQYWdlKCk7XHJcbiAgICAgIHRoaXMuX3BhcmFtc1NlcnZpY2UuYXBwbHlQYXJhbXMoe1xyXG4gICAgICAgIG92ZXJyaWRlOiBmYWxzZSxcclxuICAgICAgICBwYXJhbXM6IHtcclxuICAgICAgICAgIC4uLnRoaXMuX3BhcmFtc1NlcnZpY2UuYWN0aXZhdGVkUXVlcnkucGFyYW1zLFxyXG4gICAgICAgICAgY3VycmVudFBhZ2VJbmRleDogdGhpcy5fcmVzcG9uc2VTZXJ2aWNlLnNlbGVjdGVkUGFnZSxcclxuICAgICAgICB9LFxyXG4gICAgICB9KTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGNoYW5nZVBhZ2UocGFnZTogbnVtYmVyKSB7XHJcbiAgICB0aGlzLl9yZXNwb25zZVNlcnZpY2Uuc2V0UGFnZShwYWdlKTtcclxuICAgIHRoaXMuX3BhcmFtc1NlcnZpY2UuYXBwbHlQYXJhbXMoe1xyXG4gICAgICBvdmVycmlkZTogdHJ1ZSxcclxuICAgICAgcGFyYW1zOiB7XHJcbiAgICAgICAgLi4udGhpcy5fcGFyYW1zU2VydmljZS5hY3RpdmF0ZWRRdWVyeS5wYXJhbXMsXHJcbiAgICAgICAgY3VycmVudFBhZ2VJbmRleDogdGhpcy5fcmVzcG9uc2VTZXJ2aWNlLnNlbGVjdGVkUGFnZSxcclxuICAgICAgfSxcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgb25JdGVtQ2xpY2sobm90aWZpY2F0aW9uOiBOb3RpZmljYXRpb25Nb2RlbCkge1xyXG4gICAgdGhpcy5pdGVtQ2xpY2tlZC5lbWl0KG5vdGlmaWNhdGlvbik7XHJcbiAgICBpZiAobm90aWZpY2F0aW9uLnByb3BlcnRpZXM/Llsnbm90aWZfY250OnN0YXR1cyddICE9PSBOT1RJRklDQVRJT05fU1RBVFVTLnJlYWQpIHtcclxuICAgICAgdGhpcy5tYXJrQXNSZWFkKG5vdGlmaWNhdGlvbik7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBtYXJrQXNSZWFkKG5vdGlmaWNhdGlvbjogTm90aWZpY2F0aW9uTW9kZWwpIHtcclxuICAgIHRoaXMubm90aWZpY2F0aW9uc1NlcnZpY2VcclxuICAgICAgLm1hcmtBc1JlYWQobm90aWZpY2F0aW9uLnVpZClcclxuICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveSQpKVxyXG4gICAgICAuc3Vic2NyaWJlKChyZXMpID0+IHtcclxuICAgICAgICB0aGlzLl9saXN0ZW5lclNlcnZpY2UudHJpZ2dlclVwZGF0ZSgnbWFya0FzUmVhZCcpO1xyXG4gICAgICB9KTtcclxuICB9XHJcblxyXG4gIG1hcmtBc1VucmVhZChub3RpZmljYXRpb246IE5vdGlmaWNhdGlvbk1vZGVsKSB7XHJcbiAgICB0aGlzLm5vdGlmaWNhdGlvbnNTZXJ2aWNlXHJcbiAgICAgIC5tYXJrQXNVbnJlYWQobm90aWZpY2F0aW9uLnVpZClcclxuICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveSQpKVxyXG4gICAgICAuc3Vic2NyaWJlKChyZXMpID0+IHtcclxuICAgICAgICB0aGlzLl9saXN0ZW5lclNlcnZpY2UudHJpZ2dlclVwZGF0ZSgnbWFya0FzVW5yZWFkJyk7XHJcbiAgICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgbWFya0FzRGVsZXRlZChub3RpZmljYXRpb246IE5vdGlmaWNhdGlvbk1vZGVsKSB7XHJcbiAgICB0aGlzLm5vdGlmaWNhdGlvbnNTZXJ2aWNlXHJcbiAgICAgIC5tYXJrQXNEZWxldGVkKG5vdGlmaWNhdGlvbi51aWQpXHJcbiAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSlcclxuICAgICAgLnN1YnNjcmliZSgocmVzKSA9PiB7XHJcbiAgICAgICAgdGhpcy5fbGlzdGVuZXJTZXJ2aWNlLnRyaWdnZXJVcGRhdGUoJ21hcmtBc0RlbGV0ZWQnKTtcclxuICAgICAgfSk7XHJcbiAgfVxyXG5cclxuICBwcm90ZWN0ZWQgX2FwcGx5RmlsdGVyKHBhcmFtczogUmVjb3JkPHN0cmluZywgYW55Pikge1xyXG4gICAgdGhpcy5fcmVzcG9uc2VTZXJ2aWNlLnJlc2V0UGFnaW5hdGlvbigpO1xyXG4gICAgdGhpcy5fcGFyYW1zU2VydmljZS5hcHBseVBhcmFtcyh7XHJcbiAgICAgIG92ZXJyaWRlOiB0cnVlLFxyXG4gICAgICBwYXJhbXMsXHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIHByb3RlY3RlZCBfcHJlcGFyZURhdGEoKSB7XHJcbiAgICBsZXQgaXNPdmVycmlkZSA9IGZhbHNlO1xyXG4gICAgdGhpcy5fcGFyYW1zU2VydmljZS5wYXJhbXMkXHJcbiAgICAgIC5waXBlKFxyXG4gICAgICAgIHRhcCgocXVlcnkpID0+IHtcclxuICAgICAgICAgIGlzT3ZlcnJpZGUgPSBxdWVyeS5vdmVycmlkZTtcclxuICAgICAgICAgIHRoaXMuaXNMb2FkaW5nUmVzdWx0ID0gdHJ1ZTtcclxuICAgICAgICAgIHRoaXMuX2Nkci5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgICAgICAgfSksXHJcbiAgICAgICAgc3dpdGNoTWFwKChxdWVyeSkgPT4ge1xyXG4gICAgICAgICAgcmV0dXJuIHRoaXMubm90aWZpY2F0aW9uc1NlcnZpY2UuZ2V0Tm90aWZpY2F0aW9ucyhxdWVyeS5wYXJhbXMpLnBpcGUoXHJcbiAgICAgICAgICAgIGZpbmFsaXplKCgpID0+IHtcclxuICAgICAgICAgICAgICB0aGlzLmlzTG9hZGluZ1Jlc3VsdCA9IGZhbHNlO1xyXG4gICAgICAgICAgICAgIHRoaXMuX2Nkci5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgICAgICAgICAgIH0pXHJcbiAgICAgICAgICApO1xyXG4gICAgICAgIH0pLFxyXG4gICAgICAgIHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKVxyXG4gICAgICApXHJcbiAgICAgIC5zdWJzY3JpYmUoKHJlcykgPT4ge1xyXG4gICAgICAgIHRoaXMuX3Jlc3BvbnNlU2VydmljZS5zZXRSZXNwb25zZShyZXMsIGlzT3ZlcnJpZGUpO1xyXG4gICAgICB9KTtcclxuICB9XHJcblxyXG4gIHByb3RlY3RlZCBfcHJlcGFyZUxhbmd1YWdlKCkge1xyXG4gICAgdGhpcy5fdHJhbnNsYXRpb25TZXJ2aWNlLmlzQXJhYmljJFxyXG4gICAgICAucGlwZShcclxuICAgICAgICBtYXAoKGRhdGEpID0+IChkYXRhID8gJ2FyLUFSJyA6ICdlbi1VUycpKSxcclxuICAgICAgICB0YWtlVW50aWwodGhpcy5kZXN0cm95JClcclxuICAgICAgKVxyXG4gICAgICAuc3Vic2NyaWJlKChyZXMpID0+IHtcclxuICAgICAgICB0aGlzLmN1cnJlbnRMYW5nID0gcmVzO1xyXG4gICAgICB9KTtcclxuICB9XHJcblxyXG4gIHByb3RlY3RlZCBfdXBkYXRlTGlzdCgpIHtcclxuICAgIGNvbnN0IHF1ZXJ5ID0gdGhpcy5fcGFyYW1zU2VydmljZS5hY3RpdmF0ZWRRdWVyeTtcclxuXHJcbiAgICBjb25zdCBwYXlsb2FkOiBQYXlsb2FkUGFyYW1zTW9kZWwgPSB7IC4uLnF1ZXJ5LCBjdXJyZW50UGFnZUluZGV4OiAwIH07XHJcblxyXG4gICAgaWYgKCF0aGlzLm9wdGlvbnMpIHtcclxuICAgICAgcmV0dXJuIHRoaXMubm90aWZpY2F0aW9uc1NlcnZpY2UuZ2V0Tm90aWZpY2F0aW9uc01vbmdvKHBheWxvYWQpO1xyXG4gICAgfVxyXG5cclxuICAgIGlmICh0aGlzLm9wdGlvbnMucGFnaW5hdGlvbk1vZGUgPT09IFBBR0lOQVRJT05fTU9ERS5uYXZpZ2F0b3IpIHtcclxuICAgICAgT2JqZWN0LmFzc2lnbihwYXlsb2FkLCB7XHJcbiAgICAgICAgY3VycmVudFBhZ2VJbmRleDogdGhpcy5fcmVzcG9uc2VTZXJ2aWNlLnNlbGVjdGVkUGFnZSxcclxuICAgICAgfSk7XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKHRoaXMub3B0aW9ucy5wYWdpbmF0aW9uTW9kZSA9PT0gUEFHSU5BVElPTl9NT0RFLnNjcm9sbCkge1xyXG4gICAgICBjb25zdCBwYWdlID0gdGhpcy5fcmVzcG9uc2VTZXJ2aWNlLnNlbGVjdGVkUGFnZSArIDE7XHJcbiAgICAgIE9iamVjdC5hc3NpZ24ocGF5bG9hZCwge1xyXG4gICAgICAgIHBhZ2VTaXplOiBNYXRoLmZsb29yKHBhZ2UgKiAocXVlcnk/LnBhZ2VTaXplIHx8IDIwKSksXHJcbiAgICAgIH0pO1xyXG4gICAgfVxyXG5cclxuICAgIHJldHVybiB0aGlzLm5vdGlmaWNhdGlvbnNTZXJ2aWNlLmdldE5vdGlmaWNhdGlvbnNNb25nbyhwYXlsb2FkKTtcclxuICB9XHJcbn1cclxuIl19
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import { Directive } from '@angular/core';
|
|
2
|
+
import { Subject } from 'rxjs';
|
|
3
|
+
import { NotificationsService } from '../services/notifications.service';
|
|
4
|
+
import * as i0 from "@angular/core";
|
|
5
|
+
export class DestroySubject {
|
|
6
|
+
constructor() {
|
|
7
|
+
this.destroy$ = new Subject();
|
|
8
|
+
}
|
|
9
|
+
ngOnDestroy() {
|
|
10
|
+
this.destroy$.next();
|
|
11
|
+
this.destroy$.complete();
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
|
+
DestroySubject.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: DestroySubject, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
15
|
+
DestroySubject.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.17", type: DestroySubject, ngImport: i0 });
|
|
16
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: DestroySubject, decorators: [{
|
|
17
|
+
type: Directive
|
|
18
|
+
}] });
|
|
19
|
+
export class BaseNotification extends DestroySubject {
|
|
20
|
+
constructor(inject) {
|
|
21
|
+
super();
|
|
22
|
+
this.inject = inject;
|
|
23
|
+
this.notificationsService = this.inject.get(NotificationsService);
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
BaseNotification.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: BaseNotification, deps: [{ token: i0.Injector }], target: i0.ɵɵFactoryTarget.Directive });
|
|
27
|
+
BaseNotification.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.17", type: BaseNotification, usesInheritance: true, ngImport: i0 });
|
|
28
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: BaseNotification, decorators: [{
|
|
29
|
+
type: Directive
|
|
30
|
+
}], ctorParameters: function () { return [{ type: i0.Injector }]; } });
|
|
31
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS1ub3RpZmljYXRpb25zLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL251eGVvLWRldmVsb3BtZW50LWZyYW1ld29yay9zcmMvbGliL2NvbXBvbmVudHMvbm90aWZpY2F0aW9ucy9jb21wb25lbnRzL2Jhc2Utbm90aWZpY2F0aW9ucy5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBdUIsTUFBTSxlQUFlLENBQUM7QUFDL0QsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMvQixPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQzs7QUFHekUsTUFBTSxPQUFnQixjQUFjO0lBRHBDO1FBRUUsYUFBUSxHQUFHLElBQUksT0FBTyxFQUFRLENBQUM7S0FLaEM7SUFKQyxXQUFXO1FBQ1QsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUNyQixJQUFJLENBQUMsUUFBUSxDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQzNCLENBQUM7OzRHQUxtQixjQUFjO2dHQUFkLGNBQWM7NEZBQWQsY0FBYztrQkFEbkMsU0FBUzs7QUFVVixNQUFNLE9BQWdCLGdCQUFpQixTQUFRLGNBQWM7SUFHM0QsWUFBc0IsTUFBZ0I7UUFDcEMsS0FBSyxFQUFFLENBQUM7UUFEWSxXQUFNLEdBQU4sTUFBTSxDQUFVO1FBRnRCLHlCQUFvQixHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLG9CQUFvQixDQUFDLENBQUM7SUFJN0UsQ0FBQzs7OEdBTG1CLGdCQUFnQjtrR0FBaEIsZ0JBQWdCOzRGQUFoQixnQkFBZ0I7a0JBRHJDLFNBQVMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUsIEluamVjdG9yLCBPbkRlc3Ryb3kgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBOb3RpZmljYXRpb25zU2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzL25vdGlmaWNhdGlvbnMuc2VydmljZSc7XHJcblxyXG5ARGlyZWN0aXZlKClcclxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIERlc3Ryb3lTdWJqZWN0IGltcGxlbWVudHMgT25EZXN0cm95IHtcclxuICBkZXN0cm95JCA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XHJcbiAgbmdPbkRlc3Ryb3koKSB7XHJcbiAgICB0aGlzLmRlc3Ryb3kkLm5leHQoKTtcclxuICAgIHRoaXMuZGVzdHJveSQuY29tcGxldGUoKTtcclxuICB9XHJcbn1cclxuXHJcbkBEaXJlY3RpdmUoKVxyXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgQmFzZU5vdGlmaWNhdGlvbiBleHRlbmRzIERlc3Ryb3lTdWJqZWN0IHtcclxuICBwdWJsaWMgcmVhZG9ubHkgbm90aWZpY2F0aW9uc1NlcnZpY2UgPSB0aGlzLmluamVjdC5nZXQoTm90aWZpY2F0aW9uc1NlcnZpY2UpO1xyXG5cclxuICBjb25zdHJ1Y3Rvcihwcm90ZWN0ZWQgaW5qZWN0OiBJbmplY3Rvcikge1xyXG4gICAgc3VwZXIoKTtcclxuICB9XHJcbn1cclxuIl19
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
export * from './notification-item/notification-item.component';
|
|
2
|
+
export * from './notification-source-select/notification-source-select.component';
|
|
3
|
+
export * from './notification-status-toggle/notification-status-toggle.component';
|
|
4
|
+
export * from './notifications-button/notifications-button.component';
|
|
5
|
+
export * from './notifications-date-select/notifications-date-select.component';
|
|
6
|
+
export * from './notifications-list/notifications-list.component';
|
|
7
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9udXhlby1kZXZlbG9wbWVudC1mcmFtZXdvcmsvc3JjL2xpYi9jb21wb25lbnRzL25vdGlmaWNhdGlvbnMvY29tcG9uZW50cy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLGlEQUFpRCxDQUFDO0FBQ2hFLGNBQWMsbUVBQW1FLENBQUM7QUFDbEYsY0FBYyxtRUFBbUUsQ0FBQztBQUNsRixjQUFjLHVEQUF1RCxDQUFDO0FBQ3RFLGNBQWMsaUVBQWlFLENBQUM7QUFDaEYsY0FBYyxtREFBbUQsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vbm90aWZpY2F0aW9uLWl0ZW0vbm90aWZpY2F0aW9uLWl0ZW0uY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9ub3RpZmljYXRpb24tc291cmNlLXNlbGVjdC9ub3RpZmljYXRpb24tc291cmNlLXNlbGVjdC5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL25vdGlmaWNhdGlvbi1zdGF0dXMtdG9nZ2xlL25vdGlmaWNhdGlvbi1zdGF0dXMtdG9nZ2xlLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbm90aWZpY2F0aW9ucy1idXR0b24vbm90aWZpY2F0aW9ucy1idXR0b24uY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9ub3RpZmljYXRpb25zLWRhdGUtc2VsZWN0L25vdGlmaWNhdGlvbnMtZGF0ZS1zZWxlY3QuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9ub3RpZmljYXRpb25zLWxpc3Qvbm90aWZpY2F0aW9ucy1saXN0LmNvbXBvbmVudCc7XHJcbiJdfQ==
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
import { Pipe } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
export class GetIconPipe {
|
|
4
|
+
transform(data, options) {
|
|
5
|
+
if (!data || !options) {
|
|
6
|
+
return '';
|
|
7
|
+
}
|
|
8
|
+
if (options.property && Object.keys((options === null || options === void 0 ? void 0 : options.types) || {}).length) {
|
|
9
|
+
const key = resolveData(data, options.property);
|
|
10
|
+
return options.types[key] || (options === null || options === void 0 ? void 0 : options.default);
|
|
11
|
+
}
|
|
12
|
+
return (options === null || options === void 0 ? void 0 : options.default) || '';
|
|
13
|
+
}
|
|
14
|
+
}
|
|
15
|
+
GetIconPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: GetIconPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
|
|
16
|
+
GetIconPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: GetIconPipe, name: "getIcon" });
|
|
17
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: GetIconPipe, decorators: [{
|
|
18
|
+
type: Pipe,
|
|
19
|
+
args: [{
|
|
20
|
+
name: 'getIcon',
|
|
21
|
+
}]
|
|
22
|
+
}] });
|
|
23
|
+
function resolveData(data, field) {
|
|
24
|
+
if (data && field) {
|
|
25
|
+
if (field.indexOf('.') == -1) {
|
|
26
|
+
return data[field];
|
|
27
|
+
}
|
|
28
|
+
else {
|
|
29
|
+
let fields = field.split('.');
|
|
30
|
+
let value = data;
|
|
31
|
+
for (let i = 0, len = fields.length; i < len; ++i) {
|
|
32
|
+
if (value == null) {
|
|
33
|
+
return null;
|
|
34
|
+
}
|
|
35
|
+
value = value[fields[i]];
|
|
36
|
+
}
|
|
37
|
+
return value;
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
else {
|
|
41
|
+
return null;
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2V0LWljb24ucGlwZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL251eGVvLWRldmVsb3BtZW50LWZyYW1ld29yay9zcmMvbGliL2NvbXBvbmVudHMvbm90aWZpY2F0aW9ucy9jb21wb25lbnRzL25vdGlmaWNhdGlvbi1pdGVtL2dldC1pY29uLnBpcGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLElBQUksRUFBaUIsTUFBTSxlQUFlLENBQUM7O0FBTXBELE1BQU0sT0FBTyxXQUFXO0lBQ3RCLFNBQVMsQ0FBQyxJQUF1QixFQUFFLE9BQTBDO1FBQzNFLElBQUksQ0FBQyxJQUFJLElBQUksQ0FBQyxPQUFPLEVBQUU7WUFDckIsT0FBTyxFQUFFLENBQUM7U0FDWDtRQUVELElBQUksT0FBTyxDQUFDLFFBQVEsSUFBSSxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUEsT0FBTyxhQUFQLE9BQU8sdUJBQVAsT0FBTyxDQUFFLEtBQUssS0FBSSxFQUFFLENBQUMsQ0FBQyxNQUFNLEVBQUU7WUFDaEUsTUFBTSxHQUFHLEdBQUcsV0FBVyxDQUFDLElBQUksRUFBRSxPQUFPLENBQUMsUUFBUSxDQUFDLENBQUM7WUFDaEQsT0FBTyxPQUFPLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxLQUFJLE9BQU8sYUFBUCxPQUFPLHVCQUFQLE9BQU8sQ0FBRSxPQUFPLENBQUEsQ0FBQztTQUMvQztRQUVELE9BQU8sQ0FBQSxPQUFPLGFBQVAsT0FBTyx1QkFBUCxPQUFPLENBQUUsT0FBTyxLQUFJLEVBQUUsQ0FBQztJQUNoQyxDQUFDOzt5R0FaVSxXQUFXO3VHQUFYLFdBQVc7NEZBQVgsV0FBVztrQkFIdkIsSUFBSTttQkFBQztvQkFDSixJQUFJLEVBQUUsU0FBUztpQkFDaEI7O0FBZ0JELFNBQVMsV0FBVyxDQUFDLElBQXVCLEVBQUUsS0FBYTtJQUN6RCxJQUFJLElBQUksSUFBSSxLQUFLLEVBQUU7UUFDakIsSUFBSSxLQUFLLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsQ0FBQyxFQUFFO1lBQzVCLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1NBQ3BCO2FBQU07WUFDTCxJQUFJLE1BQU0sR0FBYSxLQUFLLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1lBQ3hDLElBQUksS0FBSyxHQUFHLElBQUksQ0FBQztZQUNqQixLQUFLLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxHQUFHLEdBQUcsTUFBTSxDQUFDLE1BQU0sRUFBRSxDQUFDLEdBQUcsR0FBRyxFQUFFLEVBQUUsQ0FBQyxFQUFFO2dCQUNqRCxJQUFJLEtBQUssSUFBSSxJQUFJLEVBQUU7b0JBQ2pCLE9BQU8sSUFBSSxDQUFDO2lCQUNiO2dCQUNELEtBQUssR0FBRyxLQUFLLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7YUFDMUI7WUFDRCxPQUFPLEtBQUssQ0FBQztTQUNkO0tBQ0Y7U0FBTTtRQUNMLE9BQU8sSUFBSSxDQUFDO0tBQ2I7QUFDSCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUGlwZSwgUGlwZVRyYW5zZm9ybSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBOb3RpZmljYXRpb25Nb2RlbCwgTm90aWZpY2F0aW9uc0xpc3RPcHRpb25zIH0gZnJvbSAnLi4vLi4vbW9kZWxzJztcclxuXHJcbkBQaXBlKHtcclxuICBuYW1lOiAnZ2V0SWNvbicsXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBHZXRJY29uUGlwZSBpbXBsZW1lbnRzIFBpcGVUcmFuc2Zvcm0ge1xyXG4gIHRyYW5zZm9ybShkYXRhOiBOb3RpZmljYXRpb25Nb2RlbCwgb3B0aW9uczogTm90aWZpY2F0aW9uc0xpc3RPcHRpb25zWydpY29ucyddKTogc3RyaW5nIHtcclxuICAgIGlmICghZGF0YSB8fCAhb3B0aW9ucykge1xyXG4gICAgICByZXR1cm4gJyc7XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKG9wdGlvbnMucHJvcGVydHkgJiYgT2JqZWN0LmtleXMob3B0aW9ucz8udHlwZXMgfHwge30pLmxlbmd0aCkge1xyXG4gICAgICBjb25zdCBrZXkgPSByZXNvbHZlRGF0YShkYXRhLCBvcHRpb25zLnByb3BlcnR5KTtcclxuICAgICAgcmV0dXJuIG9wdGlvbnMudHlwZXNba2V5XSB8fCBvcHRpb25zPy5kZWZhdWx0O1xyXG4gICAgfVxyXG5cclxuICAgIHJldHVybiBvcHRpb25zPy5kZWZhdWx0IHx8ICcnO1xyXG4gIH1cclxufVxyXG5cclxuZnVuY3Rpb24gcmVzb2x2ZURhdGEoZGF0YTogTm90aWZpY2F0aW9uTW9kZWwsIGZpZWxkOiBzdHJpbmcpOiBhbnkge1xyXG4gIGlmIChkYXRhICYmIGZpZWxkKSB7XHJcbiAgICBpZiAoZmllbGQuaW5kZXhPZignLicpID09IC0xKSB7XHJcbiAgICAgIHJldHVybiBkYXRhW2ZpZWxkXTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIGxldCBmaWVsZHM6IHN0cmluZ1tdID0gZmllbGQuc3BsaXQoJy4nKTtcclxuICAgICAgbGV0IHZhbHVlID0gZGF0YTtcclxuICAgICAgZm9yIChsZXQgaSA9IDAsIGxlbiA9IGZpZWxkcy5sZW5ndGg7IGkgPCBsZW47ICsraSkge1xyXG4gICAgICAgIGlmICh2YWx1ZSA9PSBudWxsKSB7XHJcbiAgICAgICAgICByZXR1cm4gbnVsbDtcclxuICAgICAgICB9XHJcbiAgICAgICAgdmFsdWUgPSB2YWx1ZVtmaWVsZHNbaV1dO1xyXG4gICAgICB9XHJcbiAgICAgIHJldHVybiB2YWx1ZTtcclxuICAgIH1cclxuICB9IGVsc2Uge1xyXG4gICAgcmV0dXJuIG51bGw7XHJcbiAgfVxyXG59XHJcbiJdfQ==
|
|
@@ -1,143 +1,55 @@
|
|
|
1
|
-
import { Component, EventEmitter, Input, Output, ViewEncapsulation, } from
|
|
1
|
+
import { ChangeDetectionStrategy, Component, EventEmitter, Input, Output, ViewEncapsulation, } from '@angular/core';
|
|
2
|
+
import { NOTIFICATION_STATUS } from '../../constants';
|
|
3
|
+
import { DestroySubject } from '../base-notifications.component';
|
|
2
4
|
import * as i0 from "@angular/core";
|
|
3
|
-
import * as i1 from "
|
|
4
|
-
import * as i2 from "@angular/
|
|
5
|
-
import * as i3 from "@angular/material/
|
|
6
|
-
import * as i4 from "@angular/
|
|
7
|
-
import * as i5 from "
|
|
8
|
-
import * as i6 from "
|
|
9
|
-
import * as i7 from "@
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
this.
|
|
16
|
-
this.
|
|
17
|
-
this.update = new EventEmitter();
|
|
18
|
-
this.arContent = "";
|
|
19
|
-
this.enContent = "";
|
|
20
|
-
this.lang = 'en';
|
|
5
|
+
import * as i1 from "@angular/material/button";
|
|
6
|
+
import * as i2 from "@angular/material/icon";
|
|
7
|
+
import * as i3 from "@angular/material/menu";
|
|
8
|
+
import * as i4 from "@angular/common";
|
|
9
|
+
import * as i5 from "./get-icon.pipe";
|
|
10
|
+
import * as i6 from "../../../../pipes/time-ago.pipe";
|
|
11
|
+
import * as i7 from "@ngx-translate/core";
|
|
12
|
+
export class NotificationItemComponent extends DestroySubject {
|
|
13
|
+
constructor() {
|
|
14
|
+
super();
|
|
15
|
+
this.markAsUnread = new EventEmitter();
|
|
16
|
+
this.markAsRead = new EventEmitter();
|
|
17
|
+
this.markAsDeleted = new EventEmitter();
|
|
18
|
+
this.status = NOTIFICATION_STATUS;
|
|
21
19
|
}
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
}
|
|
25
|
-
toggleRead(event) {
|
|
26
|
-
this.update.emit({ action: "status", notification: this.notification });
|
|
27
|
-
}
|
|
28
|
-
ngOnInit() {
|
|
29
|
-
this.langSubscription = this.translationSrvice.isArabic.subscribe(res => {
|
|
30
|
-
this.lang = res ? 'ar' : 'en';
|
|
31
|
-
});
|
|
32
|
-
// this.notification.notificationContents.forEach((res) => {
|
|
33
|
-
// if (res.lang === "AR") {
|
|
34
|
-
// this.arContent = res.message;
|
|
35
|
-
// }
|
|
36
|
-
// if (res.lang === "EN") {
|
|
37
|
-
// this.enContent = res.message;
|
|
38
|
-
// }
|
|
39
|
-
// });
|
|
20
|
+
set notification(value) {
|
|
21
|
+
this._notification = value;
|
|
40
22
|
}
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
this.notification.notificationContents.forEach((res) => {
|
|
44
|
-
if (res.lang === "AR") {
|
|
45
|
-
this.arContent = res.message;
|
|
46
|
-
}
|
|
47
|
-
if (res.lang === "EN") {
|
|
48
|
-
this.enContent = res.message;
|
|
49
|
-
}
|
|
50
|
-
});
|
|
51
|
-
}
|
|
52
|
-
else {
|
|
53
|
-
this.notification.notificationContents.forEach((res) => {
|
|
54
|
-
if (res.lang === "AR") {
|
|
55
|
-
this.arContent = res.message.replace("رقم", "رقم -");
|
|
56
|
-
if (res.message.includes('ExtRequest') || res.message.includes('IntRequest')) {
|
|
57
|
-
this.arContent = res.message.replace("المستند", "الطلب");
|
|
58
|
-
this.arContent = this.arContent.replace(('IntRequest'), "رقم - ");
|
|
59
|
-
this.arContent = this.arContent.replace(('ExtRequest'), "رقم - ");
|
|
60
|
-
}
|
|
61
|
-
}
|
|
62
|
-
if (res.lang === "EN") {
|
|
63
|
-
this.enContent = res.message.replace("correspondence", "correspondence -");
|
|
64
|
-
if (res.message.includes('ExtRequest') || res.message.includes('IntRequest')) {
|
|
65
|
-
this.enContent = res.message.replace("document", "request");
|
|
66
|
-
this.enContent = this.enContent.replace(('IntRequest'), "number - ");
|
|
67
|
-
this.enContent = this.enContent.replace(('ExtRequest'), "number - ");
|
|
68
|
-
}
|
|
69
|
-
}
|
|
70
|
-
});
|
|
71
|
-
}
|
|
23
|
+
get notification() {
|
|
24
|
+
return this._notification;
|
|
72
25
|
}
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
component: NotificationOptionsComponent,
|
|
77
|
-
cssClass: 'notification-options',
|
|
78
|
-
event: event,
|
|
79
|
-
showBackdrop: false,
|
|
80
|
-
});
|
|
81
|
-
await popover.present();
|
|
82
|
-
const { data } = await popover.onDidDismiss();
|
|
83
|
-
if (data && this.notification) {
|
|
84
|
-
this.updateNotification(data);
|
|
85
|
-
|
|
86
|
-
}
|
|
87
|
-
|
|
88
|
-
} */
|
|
89
|
-
updateNotification(data) {
|
|
90
|
-
this.update.emit({ action: data, notification: this.notification });
|
|
91
|
-
}
|
|
92
|
-
navigateToDetais(corrId) {
|
|
93
|
-
let sourceType = this.notification.sourceType;
|
|
94
|
-
const isAssignmentOrApproval = sourceType === "approval" || sourceType === "assignment";
|
|
95
|
-
const correspondence = sourceType === "correspondence";
|
|
96
|
-
const assignment = sourceType === "assignment";
|
|
97
|
-
const approval = sourceType === "approval";
|
|
98
|
-
const memo = sourceType === "memo";
|
|
99
|
-
const general = sourceType === "general";
|
|
100
|
-
const workspace = sourceType === "corrWorkspace";
|
|
101
|
-
const id = memo ? this.notification.sourceId : corrId;
|
|
102
|
-
if (corrId) {
|
|
103
|
-
this.router.navigate([
|
|
104
|
-
{
|
|
105
|
-
outlets: { viewer: ["view", id] },
|
|
106
|
-
},
|
|
107
|
-
], {
|
|
108
|
-
queryParams: Object.assign(Object.assign(Object.assign({ location: this.router.url }, (approval && { approvalMode: true })), (assignment && { assignmentMode: true })), (assignment && {
|
|
109
|
-
assignmentId: this.notification.data.assignmentId,
|
|
110
|
-
})),
|
|
111
|
-
});
|
|
112
|
-
}
|
|
113
|
-
if (workspace) {
|
|
114
|
-
this.router.navigate([{ outlets: { viewer: ['workspace-viewer', this.notification.sourceId] } }], {
|
|
115
|
-
queryParams: { location: this.router.url },
|
|
116
|
-
});
|
|
117
|
-
}
|
|
118
|
-
if (memo) {
|
|
119
|
-
this.router.navigate([{ outlets: { viewer: ["memo", id] } }], {
|
|
120
|
-
queryParams: { location: this.router.url },
|
|
121
|
-
});
|
|
122
|
-
}
|
|
26
|
+
closeMenu(event, menu) {
|
|
27
|
+
event.stopPropagation();
|
|
28
|
+
menu.closed.emit();
|
|
123
29
|
}
|
|
124
30
|
}
|
|
125
|
-
NotificationItemComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: NotificationItemComponent, deps: [
|
|
126
|
-
NotificationItemComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: NotificationItemComponent, selector: "app-notification-item", inputs: { notification: "notification", isArabic: "isArabic" }, outputs: { update: "update" }, host: { classAttribute: "notification-item" }, usesOnChanges: true, ngImport: i0, template: "<div class=\"notification-item\">\r\n <mat-list-item\r\n (click)=\"navigateToDetais(notification.data.correspondenceId)\"\r\n [ngClass]=\"{ unread: notification.status != 'READ' }\"\r\n >\r\n <p [dir]=\"isArabic ? 'rtl' : 'ltr'\" mat-line class=\"wrap\">{{ isArabic ? arContent : enContent }}</p>\r\n <p mat-line class=\"time-ago\">{{ notification?.sendDate | timeAgo: lang }}</p>\r\n <button\r\n class=\"mat-icon-button\"\r\n (click)=\"stop($event)\"\r\n [matMenuTriggerFor]=\"appMenu\"\r\n mat-icon-button\r\n >\r\n <mat-icon class=\"mat-24 notification-item-ActionsTrigger\">more_vert</mat-icon>\r\n </button>\r\n <mat-menu class=\"notificationItemActions\" #appMenu=\"matMenu\">\r\n <div class=\"actionsContainer\" (click)=\"stop($event)\">\r\n <mat-list-item\r\n (click)=\"toggleRead($event)\"\r\n class=\"user-option mat-menu-item\"\r\n >\r\n <mat-icon *ngIf=\"notification.status === 'READ'\" class=\"option-icon\"\r\n >check_circle_outline</mat-icon\r\n >\r\n <mat-icon *ngIf=\"notification.status != 'READ'\" class=\"option-icon\"\r\n >check_circle</mat-icon\r\n >\r\n <span class=\"read_unread_action\">{{\r\n (notification.status === \"READ\"\r\n ? \"notifications.markAsUnread\"\r\n : \"notifications.markAsRead\"\r\n ) | translate\r\n }}\r\n </span>\r\n </mat-list-item>\r\n <mat-list-item\r\n (click)=\"updateNotification('delete')\"\r\n class=\"user-option mat-menu-item\"\r\n >\r\n <mat-icon class=\"option-icon\">remove_circle</mat-icon>\r\n <span class=\"remove_action\">{{ \"notifications.delete\" | translate }}</span>\r\n </mat-list-item>\r\n </div>\r\n </mat-menu>\r\n </mat-list-item>\r\n</div>\r\n", styles: [".bi{margin:0!important}.memo-sorting-wrapper{width:265px;margin:0 10px;height:100%;display:flex}.memo-sorting-wrapper .sorting-direction{width:65px;height:40px;background-color:#465573;color:#fff;font-size:20px;display:flex;justify-content:center;align-items:center;cursor:pointer}.memo-sorting-wrapper .memo-sorting-trigger{width:calc(100% - 65px);height:100%;background-color:transparent;border:1px solid lightgrey;display:flex;justify-content:space-between;align-items:center;padding:0 15px;font-size:14px}.memo-sorting-wrapper .memo-sorting-trigger i{font-size:16px;color:gray}.memo-sorting-menu{width:200px}.my-button{border:1px solid #465573;color:#465573;border-radius:5px;background-color:transparent;font-weight:bold;min-width:80px;height:40px}.my-button.reset{border:none}.my-button:hover{color:#fff;background-color:#465573}.my-button:hover.reset{color:#465573;border:1px solid #465573;background-color:#fff}.app-property-value .app-input-wrapper label{color:#646f85;font-size:13px;margin-bottom:5px}.app-property-value .app-input-wrapper label .text-danger{font-size:16px;line-height:14px;margin:0 5px!important}.app-property-value .app-input-wrapper .form-control{border:1px solid #ccc;border-radius:5px;background-color:#8f98aa1a;height:40px}.app-property-value .app-input-wrapper .form-control:disabled{background-color:#e9ecef!important}.app-property-value .app-input-wrapper .form-control:focus{border:1px solid #1a96c6;box-shadow:0 0 4px #79c3c26b!important}.app-property-value .app-input-wrapper .app-textitem-editable-error .error-containers{list-style:none;padding:0;margin:0;font-size:14px}.app-property-value .app-input-wrapper .app-textitem-editable-error .error-containers .error{margin-top:5px}.autocomplete-container .input-container input:focus,hijri-gregorian-datepicker .form-group .input-group .form-control:focus,.ng-select.ng-select-focused .ng-select-container{border:1px solid #1a96c6!important;box-shadow:0 0 4px #79c3c26b!important}input::placeholder{font-size:12px}.form-control:focus{box-shadow:none!important}.mat-stepper-horizontal{margin-top:-25px}.mat-stepper-horizontal .mat-horizontal-stepper-header-container .mat-step-header.cdk-program-focused{background-color:transparent}.mat-stepper-horizontal .mat-horizontal-stepper-header-container .mat-step-header .mat-step-icon-selected{background-color:transparent;color:#fff;background-image:linear-gradient(to right,#0dbab5,#1a96c6)}@media only screen and (max-width: 576px){.mat-stepper-horizontal .mat-horizontal-stepper-header-container .mat-step-header .mat-step-label .mat-step-text-label{white-space:pre-wrap;overflow:visible}}.mat-stepper-horizontal .mat-horizontal-content-container{overflow:visible}@media only screen and (max-width: 768px){.mat-stepper-horizontal .mat-horizontal-content-container{padding:0 0 24px}}.mat-stepper-horizontal.rtl .mat-horizontal-stepper-header:first-child:after,.mat-stepper-horizontal.rtl .mat-horizontal-stepper-header:last-child:before{display:none}.mat-stepper-horizontal.rtl .mat-horizontal-stepper-header:first-child:before{border-top-width:1px;border-top-style:solid;content:\"\";display:inline-block;height:0;position:absolute;width:calc(50% - 20px);left:0}.mat-stepper-horizontal.rtl .mat-horizontal-stepper-header:last-child:after{border-top-width:1px;border-top-style:solid;content:\"\";display:inline-block;height:0;position:absolute;width:calc(50% - 20px);right:0}.form-wrapper{padding:30px 15px;border:1px solid #dde0e2}.form-wrapper .buttons-wrapper{display:flex;justify-content:space-between}.form-wrapper .buttons-wrapper .action-buttons-wrapper{display:flex}.form-wrapper .buttons-wrapper button{background-image:linear-gradient(to right,#0dbab5,#1a96c6);height:40px;color:#fff;border:none;width:125px;margin-top:20px;border-radius:5px}.form-wrapper .buttons-wrapper button:disabled{opacity:.4;cursor:not-allowed}.form-wrapper .buttons-wrapper button:hover{opacity:.7}.form-wrapper .upload-wrapper{display:flex;flex-direction:column;justify-content:flex-end}.form-wrapper .upload-wrapper label{color:#8f98aa;font-size:14px}.form-wrapper .upload-wrapper button{padding:10px;border:1px solid lightgray}.form-wrapper .upload-wrapper button span{margin:0 10px}.renameFileComponent .form-wrapper{padding:30px 15px;border:none!important}.renameFileComponent .form-wrapper .buttons-wrapper{display:flex;justify-content:space-between}.renameFileComponent .form-wrapper .buttons-wrapper .action-buttons-wrapper{display:flex}.renameFileComponent .form-wrapper .buttons-wrapper button{background-image:linear-gradient(to right,#0dbab5,#1a96c6);height:40px;color:#fff;border:none;width:125px;margin-top:20px;border-radius:5px}.renameFileComponent .form-wrapper .buttons-wrapper button:disabled{opacity:.4;cursor:not-allowed}.renameFileComponent .form-wrapper .buttons-wrapper button:hover{opacity:.7}.renameFileComponent .form-wrapper .upload-wrapper{display:flex;flex-direction:column;justify-content:flex-end}.renameFileComponent .form-wrapper .upload-wrapper label{color:#8f98aa;font-size:14px}.renameFileComponent .form-wrapper .upload-wrapper button{padding:10px;border:1px solid lightgray}.renameFileComponent .form-wrapper .upload-wrapper button span{margin:0 10px}.my-dynamic-viewer{display:flex;align-items:center;font-size:12px;min-height:30px}.my-dynamic-viewer .my-label{font-size:12px;font-weight:500;width:150px;word-break:break-word}@media (max-width: 992px){.my-dynamic-viewer .my-label{width:50%}}.my-dynamic-viewer .my-value{width:calc(100% - 150px);word-break:break-word}@media (max-width: 992px){.my-dynamic-viewer .my-value{width:50%}}.my-dynamic-viewer .direction-img{font-size:14px}.my-dynamic-viewer .direction-img .incoming{display:none}.my-dynamic-viewer .direction-img .outgoing{display:none}.my-dynamic-viewer .direction-img .internal{display:none}.my-dynamic-viewer.draft .my-value{color:#596973}.my-dynamic-viewer.inProgress .my-value{color:#3c3cf0}.my-dynamic-viewer.registered .my-value{color:#4f008c}.my-dynamic-viewer.archived .my-value{color:#fbb62c}.my-dynamic-viewer.closed .my-value{color:#00dca5}.my-dynamic-viewer.approved .my-value{color:#06a57e}.my-dynamic-viewer.assigned .my-value{color:#fd6670}.my-dynamic-viewer.sent .my-value{color:#3c3cf0}.my-dynamic-viewer.published .my-value{color:#00dca5}.my-dynamic-viewer.Outgoing .my-value{display:flex}.my-dynamic-viewer.Outgoing .my-value .direction-img .outgoing{color:#fbb62c;margin:1px 5px;display:flex}.my-dynamic-viewer.Outgoing .my-value .text{margin:0 5px}.my-dynamic-viewer.Internal .my-value{display:flex}.my-dynamic-viewer.Internal .my-value .direction-img .internal{color:#3c3cf0;margin:1px 5px;display:flex}.my-dynamic-viewer.Internal .my-value .text{margin:0 5px}.my-dynamic-viewer.Incoming .my-value{display:flex}.my-dynamic-viewer.Incoming .my-value .direction-img .incoming{color:#00dca5;display:flex}.my-dynamic-viewer.Incoming .my-value .text{margin:-3px 5px 0}.my-dynamic-viewer.vertical{display:block}.my-dynamic-viewer.vertical .my-label{width:auto}.my-dynamic-viewer.vertical .my-value{width:auto}.my-dynamic-viewer.with-out-label{width:100%!important}.user-option{cursor:pointer}.notification-item .mat-icon-button{background:none;border:none;margin:0;padding:0}.notification-item mat-list-item{border:1px solid #b4bac6;height:80px;font-size:11px}.notification-item mat-list-item:hover{cursor:pointer}.notification-item mat-list-item p{font-size:12px}.notification-item mat-list-item.unread{background:#f7f8f9}.notification-item mat-list-item .time-ago{font-size:11px!important;opacity:.8}.notification-item mat-list-item .options{opacity:0;transition:.3s}.notification-item mat-list-item .options ion-button{margin:0!important}.notification-item mat-list-item .options:focus{opacity:1}.notification-item mat-list-item:hover .options{opacity:1}.notification-item .type{padding:2px;margin:0;height:18px}.rtl .notification-item .mat-list-item-content{flex-direction:row-reverse}\n"], components: [{ type: i3.MatListItem, selector: "mat-list-item, a[mat-list-item], button[mat-list-item]", inputs: ["disableRipple", "disabled"], exportAs: ["matListItem"] }, { type: i4.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { type: i5.MatMenu, selector: "mat-menu", exportAs: ["matMenu"] }], directives: [{ type: i6.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i7.MatLine, selector: "[mat-line], [matLine]" }, { type: i8.Dir, selector: "[dir]", inputs: ["dir"], outputs: ["dirChange"], exportAs: ["dir"] }, { type: i5.MatMenuTrigger, selector: "[mat-menu-trigger-for], [matMenuTriggerFor]", inputs: ["matMenuTriggerRestoreFocus", "mat-menu-trigger-for", "matMenuTriggerFor", "matMenuTriggerData"], outputs: ["menuOpened", "onMenuOpen", "menuClosed", "onMenuClose"], exportAs: ["matMenuTrigger"] }, { type: i6.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], pipes: { "timeAgo": i9.TimeAgoPipe, "translate": i10.TranslatePipe }, encapsulation: i0.ViewEncapsulation.None });
|
|
31
|
+
NotificationItemComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: NotificationItemComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
32
|
+
NotificationItemComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: NotificationItemComponent, selector: "app-notification-item", inputs: { iconOptions: "iconOptions", currentLang: "currentLang", notification: "notification" }, outputs: { markAsUnread: "markAsUnread", markAsRead: "markAsRead", markAsDeleted: "markAsDeleted" }, usesInheritance: true, ngImport: i0, template: "<div\r\n *ngIf=\"notification?.properties as properties\"\r\n class=\"notification-item\"\r\n [class.new-item]=\"properties['notif_cnt:status'] == status.new\"\r\n [class.unread-item]=\"properties['notif_cnt:status'] == status.unRead\"\r\n>\r\n <div class=\"notification-item__icon\">\r\n <div class=\"notification-item__icon__wrapper\" *ngIf=\"iconOptions?.active\">\r\n <i [class]=\"notification | getIcon : iconOptions\"></i>\r\n </div>\r\n </div>\r\n <div class=\"notification-item__content\">\r\n <p class=\"notification-item__message line-clamp-2\">\r\n {{\r\n currentLang === 'ar-AR'\r\n ? properties['notif_cnt:arMessage']\r\n : properties['notif_cnt:enMessage']\r\n }}\r\n </p>\r\n <button\r\n class=\"mat-icon-button\"\r\n [matMenuTriggerFor]=\"appMenu\"\r\n mat-icon-button\r\n (click)=\"$event.stopPropagation()\"\r\n >\r\n <mat-icon class=\"mat-24\">more_horiz</mat-icon>\r\n </button>\r\n <span class=\"notification-item__date\">{{\r\n properties['dc:created'] | timeAgo : currentLang\r\n }}</span>\r\n </div>\r\n\r\n <mat-menu class=\"notification-item__actions\" #appMenu=\"matMenu\">\r\n <span (click)=\"closeMenu($event, appMenu)\">\r\n <button\r\n *ngIf=\"properties['notif_cnt:status'] == status.read\"\r\n mat-menu-item\r\n class=\"notification-item__actions__item\"\r\n (click)=\"markAsUnread.emit(notification)\"\r\n >\r\n <span class=\"mx-1\">{{ 'notifications.markAsUnread' | translate }}</span>\r\n </button>\r\n\r\n <button\r\n *ngIf=\"\r\n properties['notif_cnt:status'] == status.new ||\r\n properties['notif_cnt:status'] == status.unRead\r\n \"\r\n mat-menu-item\r\n class=\"notification-item__actions__item\"\r\n (click)=\"markAsRead.emit(notification)\"\r\n >\r\n <span class=\"mx-1\">{{ 'notifications.markAsRead' | translate }}</span>\r\n </button>\r\n\r\n <button\r\n mat-menu-item\r\n (click)=\"markAsDeleted.emit(notification)\"\r\n class=\"notification-item__actions__item\"\r\n >\r\n <span>{{ 'notifications.delete' | translate }}</span>\r\n </button>\r\n </span>\r\n </mat-menu>\r\n</div>\r\n", styles: [".notification-item{display:var(--n-item-display, grid);grid-template-columns:var(--n-item-columns, auto 1fr);grid-gap:var(--n-item-gap, .5rem);gap:var(--n-item-gap, .5rem);padding:var(--n-items-padding, .5rem 1rem);border:var(--n-item-border, solid #eee);border-width:var(--n-item-border-width, 0 0 1px 0);background:var(--n-item-background, transparent);min-height:var(--n-item-height, 85px)}.notification-item.new-item{--n-item-background: var(--n-status-new-color, #fcfcfc)}.notification-item.unread-item{--n-item-background: var(--n-status-unread-color, #fcfcfc)}.notification-item__icon{display:var(--n-item-icon-display, flex);align-items:var(--n-item-icon-align-items, center)}.notification-item__icon__wrapper{width:var(--n-item-icon-width, 56px);height:var(--n-item-icon-height, 56px);background:var(--n-item-icon-background, rgba(0, 0, 0, .025));color:var(--n-item-icon-color, #636363);font-size:var(--n-item-icon-size, 1.5rem);border-radius:var(--n-item-icon-radius, 50%);display:grid;place-items:center}.notification-item__content{display:var(--n-item-content-display, grid);grid-template-columns:var(--n-item-content-columns, 1fr auto);grid-gap:var(--n-item-gap, .2rem);gap:var(--n-item-gap, .2rem)}.notification-item__message{margin-bottom:0;font-size:var(--n-item-font-size, .9rem);color:var(--n-item-message-color)}.notification-item__date{font-size:var(--n-item-date-size, .8rem);text-align:var(--n-item-date-align, end);grid-column:var(--n-item-date-column, span 2);padding:var(--n-item-date-padding, 0 11px);color:var(--n-item-date-color)}.notification-item__actions{border-radius:var(--n-actions-radius, 4px);background:var(--n-actions-background, #fff);box-shadow:var(--n-actions-shadow, 0px 1px 4px -1px rgba(28, 52, 84, .26))}.notification-item__actions .mat-menu-content:not(:empty){padding:var(--n-actions--menu-padding, .5rem)}.notification-item__actions__item{text-align:var(--action-item-align, start)!important;background:var(--action-item-background, transparent)!important;color:var(--action-item-color, #28282d);padding:var(--action-item-padding, .4rem);height:var(--action-item-height, 38px);line-height:var(--action-item-line, 38px);border-radius:var(--action-item-radius, 4px);font-size:var(--action-item-size, 14px)}.notification-item__actions__item:hover{--action-item-background: var(--action-hover-background, #e6f7ff);--action-item-color: var(--action-hover-color, #005fdb)}\n"], components: [{ type: i1.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { type: i2.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { type: i3.MatMenu, selector: "mat-menu", exportAs: ["matMenu"] }, { type: i3.MatMenuItem, selector: "[mat-menu-item]", inputs: ["disabled", "disableRipple", "role"], exportAs: ["matMenuItem"] }], directives: [{ type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i3.MatMenuTrigger, selector: "[mat-menu-trigger-for], [matMenuTriggerFor]", inputs: ["matMenuTriggerRestoreFocus", "mat-menu-trigger-for", "matMenuTriggerFor", "matMenuTriggerData"], outputs: ["menuOpened", "onMenuOpen", "menuClosed", "onMenuClose"], exportAs: ["matMenuTrigger"] }], pipes: { "getIcon": i5.GetIconPipe, "timeAgo": i6.TimeAgoPipe, "translate": i7.TranslatePipe }, changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
127
33
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: NotificationItemComponent, decorators: [{
|
|
128
34
|
type: Component,
|
|
129
35
|
args: [{
|
|
130
|
-
selector:
|
|
131
|
-
styleUrls: [
|
|
132
|
-
templateUrl:
|
|
133
|
-
|
|
36
|
+
selector: 'app-notification-item',
|
|
37
|
+
styleUrls: ['./notification-item.component.scss'],
|
|
38
|
+
templateUrl: './notification-item.component.html',
|
|
39
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
134
40
|
encapsulation: ViewEncapsulation.None,
|
|
135
41
|
}]
|
|
136
|
-
}], ctorParameters: function () { return [
|
|
42
|
+
}], ctorParameters: function () { return []; }, propDecorators: { iconOptions: [{
|
|
137
43
|
type: Input
|
|
138
|
-
}],
|
|
139
|
-
type:
|
|
140
|
-
}],
|
|
44
|
+
}], currentLang: [{
|
|
45
|
+
type: Input
|
|
46
|
+
}], notification: [{
|
|
141
47
|
type: Input
|
|
48
|
+
}], markAsUnread: [{
|
|
49
|
+
type: Output
|
|
50
|
+
}], markAsRead: [{
|
|
51
|
+
type: Output
|
|
52
|
+
}], markAsDeleted: [{
|
|
53
|
+
type: Output
|
|
142
54
|
}] } });
|
|
143
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm90aWZpY2F0aW9uLWl0ZW0uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbnV4ZW8tZGV2ZWxvcG1lbnQtZnJhbWV3b3JrL3NyYy9saWIvY29tcG9uZW50cy9ub3RpZmljYXRpb25zL2NvbXBvbmVudHMvbm90aWZpY2F0aW9uLWl0ZW0vbm90aWZpY2F0aW9uLWl0ZW0uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbnV4ZW8tZGV2ZWxvcG1lbnQtZnJhbWV3b3JrL3NyYy9saWIvY29tcG9uZW50cy9ub3RpZmljYXRpb25zL2NvbXBvbmVudHMvbm90aWZpY2F0aW9uLWl0ZW0vbm90aWZpY2F0aW9uLWl0ZW0uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFNBQVMsRUFDVCxZQUFZLEVBQ1osS0FBSyxFQUNMLE1BQU0sRUFFTixpQkFBaUIsR0FDbEIsTUFBTSxlQUFlLENBQUM7Ozs7Ozs7Ozs7OztBQVl2QixNQUFNLE9BQU8seUJBQXlCO0lBU3BDLFlBQW9CLGlCQUFxQyxFQUFVLE1BQWM7UUFBN0Qsc0JBQWlCLEdBQWpCLGlCQUFpQixDQUFvQjtRQUFVLFdBQU0sR0FBTixNQUFNLENBQVE7UUFQdkUsV0FBTSxHQUFzQixJQUFJLFlBQVksRUFBRSxDQUFDO1FBRXpELGNBQVMsR0FBRyxFQUFFLENBQUM7UUFDZixjQUFTLEdBQUcsRUFBRSxDQUFDO1FBQ2YsU0FBSSxHQUFHLElBQUksQ0FBQztJQUd5RSxDQUFDO0lBRXRGLElBQUksQ0FBQyxLQUFLO1FBQ1IsS0FBSyxDQUFDLGVBQWUsRUFBRSxDQUFDO0lBQzFCLENBQUM7SUFDRCxVQUFVLENBQUMsS0FBSztRQUNkLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLEVBQUUsTUFBTSxFQUFFLFFBQVEsRUFBRSxZQUFZLEVBQUUsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDLENBQUM7SUFDMUUsQ0FBQztJQUNELFFBQVE7UUFDTixJQUFJLENBQUMsZ0JBQWdCLEdBQUcsSUFBSSxDQUFDLGlCQUFpQixDQUFDLFFBQVEsQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUU7WUFDdEUsSUFBSSxDQUFDLElBQUksR0FBRyxHQUFHLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDO1FBQ2hDLENBQUMsQ0FBQyxDQUFBO1FBQ0YsNERBQTREO1FBQzVELDZCQUE2QjtRQUM3QixvQ0FBb0M7UUFDcEMsTUFBTTtRQUNOLDZCQUE2QjtRQUM3QixvQ0FBb0M7UUFDcEMsTUFBTTtRQUNOLE1BQU07SUFDUixDQUFDO0lBQ0QsV0FBVyxDQUFDLE9BQXNCO1FBQ2hDLElBQUksSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsNkJBQTZCLEVBQUU7WUFDeEQsSUFBSSxDQUFDLFlBQVksQ0FBQyxvQkFBb0IsQ0FBQyxPQUFPLENBQUMsQ0FBQyxHQUFHLEVBQUUsRUFBRTtnQkFDckQsSUFBSSxHQUFHLENBQUMsSUFBSSxLQUFLLElBQUksRUFBRTtvQkFDckIsSUFBSSxDQUFDLFNBQVMsR0FBRyxHQUFHLENBQUMsT0FBTyxDQUFDO2lCQUM5QjtnQkFDRCxJQUFJLEdBQUcsQ0FBQyxJQUFJLEtBQUssSUFBSSxFQUFFO29CQUNyQixJQUFJLENBQUMsU0FBUyxHQUFHLEdBQUcsQ0FBQyxPQUFPLENBQUM7aUJBQzlCO1lBQ0gsQ0FBQyxDQUFDLENBQUM7U0FDSjthQUFNO1lBQ0wsSUFBSSxDQUFDLFlBQVksQ0FBQyxvQkFBb0IsQ0FBQyxPQUFPLENBQUMsQ0FBQyxHQUFHLEVBQUUsRUFBRTtnQkFDckQsSUFBSSxHQUFHLENBQUMsSUFBSSxLQUFLLElBQUksRUFBRTtvQkFDckIsSUFBSSxDQUFDLFNBQVMsR0FBRyxHQUFHLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxLQUFLLEVBQUUsT0FBTyxDQUFDLENBQUM7b0JBQ3JELElBQUksR0FBRyxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsWUFBWSxDQUFDLElBQUksR0FBRyxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsWUFBWSxDQUFDLEVBQUU7d0JBQzVFLElBQUksQ0FBQyxTQUFTLEdBQUcsR0FBRyxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsU0FBUyxFQUFFLE9BQU8sQ0FBQyxDQUFDO3dCQUN6RCxJQUFJLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLENBQUMsWUFBWSxDQUFDLEVBQUUsUUFBUSxDQUFDLENBQUM7d0JBQ2xFLElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxZQUFZLENBQUMsRUFBRSxRQUFRLENBQUMsQ0FBQztxQkFFbkU7aUJBQ0Y7Z0JBQ0QsSUFBSSxHQUFHLENBQUMsSUFBSSxLQUFLLElBQUksRUFBRTtvQkFDckIsSUFBSSxDQUFDLFNBQVMsR0FBRyxHQUFHLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxnQkFBZ0IsRUFBRSxrQkFBa0IsQ0FBQyxDQUFDO29CQUMzRSxJQUFJLEdBQUcsQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLFlBQVksQ0FBQyxJQUFJLEdBQUcsQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLFlBQVksQ0FBQyxFQUFFO3dCQUM1RSxJQUFJLENBQUMsU0FBUyxHQUFHLEdBQUcsQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLFVBQVUsRUFBRSxTQUFTLENBQUMsQ0FBQzt3QkFDNUQsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxDQUFDLFlBQVksQ0FBQyxFQUFFLFdBQVcsQ0FBQyxDQUFDO3dCQUNyRSxJQUFJLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLENBQUMsWUFBWSxDQUFDLEVBQUUsV0FBVyxDQUFDLENBQUM7cUJBRXRFO2lCQUNGO1lBQ0gsQ0FBQyxDQUFDLENBQUM7U0FDSjtJQUNILENBQUM7SUFDRDs7Ozs7Ozs7Ozs7Ozs7O1NBZUs7SUFDTCxrQkFBa0IsQ0FBQyxJQUFJO1FBQ3JCLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSxZQUFZLEVBQUUsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDLENBQUM7SUFDdEUsQ0FBQztJQUNELGdCQUFnQixDQUFDLE1BQU07UUFDckIsSUFBSSxVQUFVLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQyxVQUFVLENBQUM7UUFDOUMsTUFBTSxzQkFBc0IsR0FDMUIsVUFBVSxLQUFLLFVBQVUsSUFBSSxVQUFVLEtBQUssWUFBWSxDQUFDO1FBQzNELE1BQU0sY0FBYyxHQUFHLFVBQVUsS0FBSyxnQkFBZ0IsQ0FBQztRQUN2RCxNQUFNLFVBQVUsR0FBRyxVQUFVLEtBQUssWUFBWSxDQUFDO1FBQy9DLE1BQU0sUUFBUSxHQUFHLFVBQVUsS0FBSyxVQUFVLENBQUM7UUFDM0MsTUFBTSxJQUFJLEdBQUcsVUFBVSxLQUFLLE1BQU0sQ0FBQztRQUNuQyxNQUFNLE9BQU8sR0FBRyxVQUFVLEtBQUssU0FBUyxDQUFDO1FBQ3pDLE1BQU0sU0FBUyxHQUFHLFVBQVUsS0FBSyxlQUFlLENBQUE7UUFDaEQsTUFBTSxFQUFFLEdBQUcsSUFBSSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDO1FBQ3RELElBQUksTUFBTSxFQUFFO1lBQ1YsSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQ2xCO2dCQUNFO29CQUNFLE9BQU8sRUFBRSxFQUFFLE1BQU0sRUFBRSxDQUFDLE1BQU0sRUFBRSxFQUFFLENBQUMsRUFBRTtpQkFDbEM7YUFDRixFQUNEO2dCQUNFLFdBQVcsOENBQ1QsUUFBUSxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsR0FBRyxJQUN0QixDQUFDLFFBQVEsSUFBSSxFQUFFLFlBQVksRUFBRSxJQUFJLEVBQUUsQ0FBQyxHQUNwQyxDQUFDLFVBQVUsSUFBSSxFQUFFLGNBQWMsRUFBRSxJQUFJLEVBQUUsQ0FBQyxHQUN4QyxDQUFDLFVBQVUsSUFBSTtvQkFDaEIsWUFBWSxFQUFFLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLFlBQVk7aUJBQ2xELENBQUMsQ0FDSDthQUNGLENBQ0YsQ0FBQztTQUNIO1FBQ0QsSUFBRyxTQUFTLEVBQUM7WUFDWCxJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FDbEIsQ0FBQyxFQUFFLE9BQU8sRUFBRSxFQUFFLE1BQU0sRUFBRSxDQUFDLGtCQUFrQixFQUFFLElBQUksQ0FBQyxZQUFZLENBQUMsUUFBUSxDQUFDLEVBQUUsRUFBRSxDQUFDLEVBQzNFO2dCQUNFLFdBQVcsRUFBRSxFQUFFLFFBQVEsRUFBRSxJQUFJLENBQUMsTUFBTSxDQUFDLEdBQUcsRUFBRTthQUMzQyxDQUNGLENBQUE7U0FDRjtRQUNELElBQUksSUFBSSxFQUFFO1lBQ1IsSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQyxFQUFFLE9BQU8sRUFBRSxFQUFFLE1BQU0sRUFBRSxDQUFDLE1BQU0sRUFBRSxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsRUFBRTtnQkFDNUQsV0FBVyxFQUFFLEVBQUUsUUFBUSxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsR0FBRyxFQUFFO2FBQzNDLENBQUMsQ0FBQztTQUNKO0lBQ0gsQ0FBQzs7dUhBN0hVLHlCQUF5QjsyR0FBekIseUJBQXlCLGdPQ25CdEMsNDNEQThDQTs0RkQzQmEseUJBQXlCO2tCQVByQyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSx1QkFBdUI7b0JBQ2pDLFNBQVMsRUFBRSxDQUFDLG9DQUFvQyxDQUFDO29CQUNqRCxXQUFXLEVBQUUsb0NBQW9DO29CQUNqRCxJQUFJLEVBQUUsRUFBRSxLQUFLLEVBQUUsbUJBQW1CLEVBQUU7b0JBQ3BDLGFBQWEsRUFBRSxpQkFBaUIsQ0FBQyxJQUFJO2lCQUN0Qzs4SEFFVSxZQUFZO3NCQUFwQixLQUFLO2dCQUNJLE1BQU07c0JBQWYsTUFBTTtnQkFDRSxRQUFRO3NCQUFoQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuICBDb21wb25lbnQsXHJcbiAgRXZlbnRFbWl0dGVyLFxyXG4gIElucHV0LFxyXG4gIE91dHB1dCxcclxuICBTaW1wbGVDaGFuZ2VzLFxyXG4gIFZpZXdFbmNhcHN1bGF0aW9uLFxyXG59IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcbmltcG9ydCB7IFRyYW5zbGF0aW9uU2VydmljZSB9IGZyb20gJy4uLy4uLy4uLy4uL2NvcmUvc2VydmljZXMvdHJhbnNsYXRpb24vdHJhbnNsYXRpb24uc2VydmljZSc7XHJcbmltcG9ydCB7IFJvdXRlciB9IGZyb20gXCJAYW5ndWxhci9yb3V0ZXJcIjtcclxuaW1wb3J0IHsgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogXCJhcHAtbm90aWZpY2F0aW9uLWl0ZW1cIixcclxuICBzdHlsZVVybHM6IFtcIi4vbm90aWZpY2F0aW9uLWl0ZW0uY29tcG9uZW50LnNjc3NcIl0sXHJcbiAgdGVtcGxhdGVVcmw6IFwiLi9ub3RpZmljYXRpb24taXRlbS5jb21wb25lbnQuaHRtbFwiLFxyXG4gIGhvc3Q6IHsgY2xhc3M6IFwibm90aWZpY2F0aW9uLWl0ZW1cIiB9LFxyXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBOb3RpZmljYXRpb25JdGVtQ29tcG9uZW50IHtcclxuICBASW5wdXQoKSBub3RpZmljYXRpb247XHJcbiAgQE91dHB1dCgpIHVwZGF0ZTogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcbiAgQElucHV0KCkgaXNBcmFiaWM7XHJcbiAgYXJDb250ZW50ID0gXCJcIjtcclxuICBlbkNvbnRlbnQgPSBcIlwiO1xyXG4gIGxhbmcgPSAnZW4nO1xyXG4gIGxhbmdTdWJzY3JpcHRpb246IFN1YnNjcmlwdGlvbjtcclxuXHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSB0cmFuc2xhdGlvblNydmljZTogVHJhbnNsYXRpb25TZXJ2aWNlLCBwcml2YXRlIHJvdXRlcjogUm91dGVyKSB7IH1cclxuXHJcbiAgc3RvcChldmVudCkge1xyXG4gICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XHJcbiAgfVxyXG4gIHRvZ2dsZVJlYWQoZXZlbnQpIHtcclxuICAgIHRoaXMudXBkYXRlLmVtaXQoeyBhY3Rpb246IFwic3RhdHVzXCIsIG5vdGlmaWNhdGlvbjogdGhpcy5ub3RpZmljYXRpb24gfSk7XHJcbiAgfVxyXG4gIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgdGhpcy5sYW5nU3Vic2NyaXB0aW9uID0gdGhpcy50cmFuc2xhdGlvblNydmljZS5pc0FyYWJpYy5zdWJzY3JpYmUocmVzID0+IHtcclxuICAgICAgdGhpcy5sYW5nID0gcmVzID8gJ2FyJyA6ICdlbic7XHJcbiAgICB9KVxyXG4gICAgLy8gdGhpcy5ub3RpZmljYXRpb24ubm90aWZpY2F0aW9uQ29udGVudHMuZm9yRWFjaCgocmVzKSA9PiB7XHJcbiAgICAvLyAgIGlmIChyZXMubGFuZyA9PT0gXCJBUlwiKSB7XHJcbiAgICAvLyAgICAgdGhpcy5hckNvbnRlbnQgPSByZXMubWVzc2FnZTtcclxuICAgIC8vICAgfVxyXG4gICAgLy8gICBpZiAocmVzLmxhbmcgPT09IFwiRU5cIikge1xyXG4gICAgLy8gICAgIHRoaXMuZW5Db250ZW50ID0gcmVzLm1lc3NhZ2U7XHJcbiAgICAvLyAgIH1cclxuICAgIC8vIH0pO1xyXG4gIH1cclxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XHJcbiAgICBpZiAodGhpcy5ub3RpZmljYXRpb24uZGF0YS5jb3JyZXNwb25kZW5jZVJlZmVyZW5jZU51bWJlcikge1xyXG4gICAgICB0aGlzLm5vdGlmaWNhdGlvbi5ub3RpZmljYXRpb25Db250ZW50cy5mb3JFYWNoKChyZXMpID0+IHtcclxuICAgICAgICBpZiAocmVzLmxhbmcgPT09IFwiQVJcIikge1xyXG4gICAgICAgICAgdGhpcy5hckNvbnRlbnQgPSByZXMubWVzc2FnZTtcclxuICAgICAgICB9XHJcbiAgICAgICAgaWYgKHJlcy5sYW5nID09PSBcIkVOXCIpIHtcclxuICAgICAgICAgIHRoaXMuZW5Db250ZW50ID0gcmVzLm1lc3NhZ2U7XHJcbiAgICAgICAgfVxyXG4gICAgICB9KTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMubm90aWZpY2F0aW9uLm5vdGlmaWNhdGlvbkNvbnRlbnRzLmZvckVhY2goKHJlcykgPT4ge1xyXG4gICAgICAgIGlmIChyZXMubGFuZyA9PT0gXCJBUlwiKSB7XHJcbiAgICAgICAgICB0aGlzLmFyQ29udGVudCA9IHJlcy5tZXNzYWdlLnJlcGxhY2UoXCLYsdmC2YVcIiwgXCLYsdmC2YUgLVwiKTtcclxuICAgICAgICAgIGlmIChyZXMubWVzc2FnZS5pbmNsdWRlcygnRXh0UmVxdWVzdCcpIHx8IHJlcy5tZXNzYWdlLmluY2x1ZGVzKCdJbnRSZXF1ZXN0JykpIHtcclxuICAgICAgICAgICAgdGhpcy5hckNvbnRlbnQgPSByZXMubWVzc2FnZS5yZXBsYWNlKFwi2KfZhNmF2LPYqtmG2K9cIiwgXCLYp9mE2LfZhNioXCIpO1xyXG4gICAgICAgICAgICB0aGlzLmFyQ29udGVudCA9IHRoaXMuYXJDb250ZW50LnJlcGxhY2UoKCdJbnRSZXF1ZXN0JyksIFwi2LHZgtmFIC0gXCIpO1xyXG4gICAgICAgICAgICB0aGlzLmFyQ29udGVudCA9IHRoaXMuYXJDb250ZW50LnJlcGxhY2UoKCdFeHRSZXF1ZXN0JyksIFwi2LHZgtmFIC0gXCIpO1xyXG5cclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgaWYgKHJlcy5sYW5nID09PSBcIkVOXCIpIHtcclxuICAgICAgICAgIHRoaXMuZW5Db250ZW50ID0gcmVzLm1lc3NhZ2UucmVwbGFjZShcImNvcnJlc3BvbmRlbmNlXCIsIFwiY29ycmVzcG9uZGVuY2UgLVwiKTtcclxuICAgICAgICAgIGlmIChyZXMubWVzc2FnZS5pbmNsdWRlcygnRXh0UmVxdWVzdCcpIHx8IHJlcy5tZXNzYWdlLmluY2x1ZGVzKCdJbnRSZXF1ZXN0JykpIHtcclxuICAgICAgICAgICAgdGhpcy5lbkNvbnRlbnQgPSByZXMubWVzc2FnZS5yZXBsYWNlKFwiZG9jdW1lbnRcIiwgXCJyZXF1ZXN0XCIpO1xyXG4gICAgICAgICAgICB0aGlzLmVuQ29udGVudCA9IHRoaXMuZW5Db250ZW50LnJlcGxhY2UoKCdJbnRSZXF1ZXN0JyksIFwibnVtYmVyIC0gXCIpO1xyXG4gICAgICAgICAgICB0aGlzLmVuQ29udGVudCA9IHRoaXMuZW5Db250ZW50LnJlcGxhY2UoKCdFeHRSZXF1ZXN0JyksIFwibnVtYmVyIC0gXCIpO1xyXG5cclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH0pO1xyXG4gICAgfVxyXG4gIH1cclxuICAvKiBhc3luYyBzaG93T3B0aW9ucyhldmVudCkge1xyXG4gICAgICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XHJcbiAgICAgICBjb25zdCBwb3BvdmVyID0gYXdhaXQgdGhpcy5wb3BvdmVyQ3RybC5jcmVhdGUoe1xyXG4gICAgICAgICAgIGNvbXBvbmVudDogTm90aWZpY2F0aW9uT3B0aW9uc0NvbXBvbmVudCxcclxuICAgICAgICAgICBjc3NDbGFzczogJ25vdGlmaWNhdGlvbi1vcHRpb25zJyxcclxuICAgICAgICAgICBldmVudDogZXZlbnQsXHJcbiAgICAgICAgICAgc2hvd0JhY2tkcm9wOiBmYWxzZSxcclxuICAgICAgIH0pO1xyXG4gICAgICAgYXdhaXQgcG9wb3Zlci5wcmVzZW50KCk7XHJcbiAgICAgICBjb25zdCB7IGRhdGEgfSA9IGF3YWl0IHBvcG92ZXIub25EaWREaXNtaXNzKCk7XHJcbiAgICAgICBpZiAoZGF0YSAmJiB0aGlzLm5vdGlmaWNhdGlvbikge1xyXG4gICAgICAgICAgIHRoaXMudXBkYXRlTm90aWZpY2F0aW9uKGRhdGEpO1xyXG5cclxuICAgICAgIH1cclxuXHJcbiAgIH0gKi9cclxuICB1cGRhdGVOb3RpZmljYXRpb24oZGF0YSkge1xyXG4gICAgdGhpcy51cGRhdGUuZW1pdCh7IGFjdGlvbjogZGF0YSwgbm90aWZpY2F0aW9uOiB0aGlzLm5vdGlmaWNhdGlvbiB9KTtcclxuICB9XHJcbiAgbmF2aWdhdGVUb0RldGFpcyhjb3JySWQpIHtcclxuICAgIGxldCBzb3VyY2VUeXBlID0gdGhpcy5ub3RpZmljYXRpb24uc291cmNlVHlwZTtcclxuICAgIGNvbnN0IGlzQXNzaWdubWVudE9yQXBwcm92YWw6IGJvb2xlYW4gPVxyXG4gICAgICBzb3VyY2VUeXBlID09PSBcImFwcHJvdmFsXCIgfHwgc291cmNlVHlwZSA9PT0gXCJhc3NpZ25tZW50XCI7XHJcbiAgICBjb25zdCBjb3JyZXNwb25kZW5jZSA9IHNvdXJjZVR5cGUgPT09IFwiY29ycmVzcG9uZGVuY2VcIjtcclxuICAgIGNvbnN0IGFzc2lnbm1lbnQgPSBzb3VyY2VUeXBlID09PSBcImFzc2lnbm1lbnRcIjtcclxuICAgIGNvbnN0IGFwcHJvdmFsID0gc291cmNlVHlwZSA9PT0gXCJhcHByb3ZhbFwiO1xyXG4gICAgY29uc3QgbWVtbyA9IHNvdXJjZVR5cGUgPT09IFwibWVtb1wiO1xyXG4gICAgY29uc3QgZ2VuZXJhbCA9IHNvdXJjZVR5cGUgPT09IFwiZ2VuZXJhbFwiO1xyXG4gICAgY29uc3Qgd29ya3NwYWNlID0gc291cmNlVHlwZSA9PT0gXCJjb3JyV29ya3NwYWNlXCJcclxuICAgIGNvbnN0IGlkID0gbWVtbyA/IHRoaXMubm90aWZpY2F0aW9uLnNvdXJjZUlkIDogY29ycklkO1xyXG4gICAgaWYgKGNvcnJJZCkge1xyXG4gICAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZShcclxuICAgICAgICBbXHJcbiAgICAgICAgICB7XHJcbiAgICAgICAgICAgIG91dGxldHM6IHsgdmlld2VyOiBbXCJ2aWV3XCIsIGlkXSB9LFxyXG4gICAgICAgICAgfSxcclxuICAgICAgICBdLFxyXG4gICAgICAgIHtcclxuICAgICAgICAgIHF1ZXJ5UGFyYW1zOiB7XHJcbiAgICAgICAgICAgIGxvY2F0aW9uOiB0aGlzLnJvdXRlci51cmwsXHJcbiAgICAgICAgICAgIC4uLihhcHByb3ZhbCAmJiB7IGFwcHJvdmFsTW9kZTogdHJ1ZSB9KSxcclxuICAgICAgICAgICAgLi4uKGFzc2lnbm1lbnQgJiYgeyBhc3NpZ25tZW50TW9kZTogdHJ1ZSB9KSxcclxuICAgICAgICAgICAgLi4uKGFzc2lnbm1lbnQgJiYge1xyXG4gICAgICAgICAgICAgIGFzc2lnbm1lbnRJZDogdGhpcy5ub3RpZmljYXRpb24uZGF0YS5hc3NpZ25tZW50SWQsXHJcbiAgICAgICAgICAgIH0pLFxyXG4gICAgICAgICAgfSxcclxuICAgICAgICB9XHJcbiAgICAgICk7XHJcbiAgICB9XHJcbiAgICBpZih3b3Jrc3BhY2Upe1xyXG4gICAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZShcclxuICAgICAgICBbeyBvdXRsZXRzOiB7IHZpZXdlcjogWyd3b3Jrc3BhY2Utdmlld2VyJyAsdGhpcy5ub3RpZmljYXRpb24uc291cmNlSWRdIH0gfV0sXHJcbiAgICAgICAge1xyXG4gICAgICAgICAgcXVlcnlQYXJhbXM6IHsgbG9jYXRpb246IHRoaXMucm91dGVyLnVybCB9LFxyXG4gICAgICAgIH1cclxuICAgICAgKVxyXG4gICAgfVxyXG4gICAgaWYgKG1lbW8pIHtcclxuICAgICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoW3sgb3V0bGV0czogeyB2aWV3ZXI6IFtcIm1lbW9cIiwgaWRdIH0gfV0sIHtcclxuICAgICAgICBxdWVyeVBhcmFtczogeyBsb2NhdGlvbjogdGhpcy5yb3V0ZXIudXJsIH0sXHJcbiAgICAgIH0pO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCI8ZGl2IGNsYXNzPVwibm90aWZpY2F0aW9uLWl0ZW1cIj5cclxuICA8bWF0LWxpc3QtaXRlbVxyXG4gICAgKGNsaWNrKT1cIm5hdmlnYXRlVG9EZXRhaXMobm90aWZpY2F0aW9uLmRhdGEuY29ycmVzcG9uZGVuY2VJZClcIlxyXG4gICAgW25nQ2xhc3NdPVwieyB1bnJlYWQ6IG5vdGlmaWNhdGlvbi5zdGF0dXMgIT0gJ1JFQUQnIH1cIlxyXG4gID5cclxuICAgIDxwIFtkaXJdPVwiaXNBcmFiaWMgPyAncnRsJyA6ICdsdHInXCIgbWF0LWxpbmUgY2xhc3M9XCJ3cmFwXCI+e3sgaXNBcmFiaWMgPyBhckNvbnRlbnQgOiBlbkNvbnRlbnQgfX08L3A+XHJcbiAgICA8cCBtYXQtbGluZSBjbGFzcz1cInRpbWUtYWdvXCI+e3sgbm90aWZpY2F0aW9uPy5zZW5kRGF0ZSB8IHRpbWVBZ286IGxhbmcgIH19PC9wPlxyXG4gICAgPGJ1dHRvblxyXG4gICAgICBjbGFzcz1cIm1hdC1pY29uLWJ1dHRvblwiXHJcbiAgICAgIChjbGljayk9XCJzdG9wKCRldmVudClcIlxyXG4gICAgICBbbWF0TWVudVRyaWdnZXJGb3JdPVwiYXBwTWVudVwiXHJcbiAgICAgIG1hdC1pY29uLWJ1dHRvblxyXG4gICAgPlxyXG4gICAgICA8bWF0LWljb24gY2xhc3M9XCJtYXQtMjQgbm90aWZpY2F0aW9uLWl0ZW0tQWN0aW9uc1RyaWdnZXJcIj5tb3JlX3ZlcnQ8L21hdC1pY29uPlxyXG4gICAgPC9idXR0b24+XHJcbiAgICA8bWF0LW1lbnUgY2xhc3M9XCJub3RpZmljYXRpb25JdGVtQWN0aW9uc1wiICNhcHBNZW51PVwibWF0TWVudVwiPlxyXG4gICAgICA8ZGl2IGNsYXNzPVwiYWN0aW9uc0NvbnRhaW5lclwiIChjbGljayk9XCJzdG9wKCRldmVudClcIj5cclxuICAgICAgICA8bWF0LWxpc3QtaXRlbVxyXG4gICAgICAgICAgKGNsaWNrKT1cInRvZ2dsZVJlYWQoJGV2ZW50KVwiXHJcbiAgICAgICAgICBjbGFzcz1cInVzZXItb3B0aW9uIG1hdC1tZW51LWl0ZW1cIlxyXG4gICAgICAgID5cclxuICAgICAgICAgIDxtYXQtaWNvbiAqbmdJZj1cIm5vdGlmaWNhdGlvbi5zdGF0dXMgPT09ICdSRUFEJ1wiIGNsYXNzPVwib3B0aW9uLWljb25cIlxyXG4gICAgICAgICAgICA+Y2hlY2tfY2lyY2xlX291dGxpbmU8L21hdC1pY29uXHJcbiAgICAgICAgICA+XHJcbiAgICAgICAgICA8bWF0LWljb24gKm5nSWY9XCJub3RpZmljYXRpb24uc3RhdHVzICE9ICdSRUFEJ1wiIGNsYXNzPVwib3B0aW9uLWljb25cIlxyXG4gICAgICAgICAgICA+Y2hlY2tfY2lyY2xlPC9tYXQtaWNvblxyXG4gICAgICAgICAgPlxyXG4gICAgICAgICAgPHNwYW4gY2xhc3M9XCJyZWFkX3VucmVhZF9hY3Rpb25cIj57e1xyXG4gICAgICAgICAgICAobm90aWZpY2F0aW9uLnN0YXR1cyA9PT0gXCJSRUFEXCJcclxuICAgICAgICAgICAgICA/IFwibm90aWZpY2F0aW9ucy5tYXJrQXNVbnJlYWRcIlxyXG4gICAgICAgICAgICAgIDogXCJub3RpZmljYXRpb25zLm1hcmtBc1JlYWRcIlxyXG4gICAgICAgICAgICApIHwgdHJhbnNsYXRlXHJcbiAgICAgICAgICB9fVxyXG4gICAgICAgIDwvc3Bhbj5cclxuICAgICAgICA8L21hdC1saXN0LWl0ZW0+XHJcbiAgICAgICAgPG1hdC1saXN0LWl0ZW1cclxuICAgICAgICAgIChjbGljayk9XCJ1cGRhdGVOb3RpZmljYXRpb24oJ2RlbGV0ZScpXCJcclxuICAgICAgICAgIGNsYXNzPVwidXNlci1vcHRpb24gbWF0LW1lbnUtaXRlbVwiXHJcbiAgICAgICAgPlxyXG4gICAgICAgICAgPG1hdC1pY29uIGNsYXNzPVwib3B0aW9uLWljb25cIj5yZW1vdmVfY2lyY2xlPC9tYXQtaWNvbj5cclxuICAgICAgICAgIDxzcGFuIGNsYXNzPVwicmVtb3ZlX2FjdGlvblwiPnt7IFwibm90aWZpY2F0aW9ucy5kZWxldGVcIiB8IHRyYW5zbGF0ZSB9fTwvc3Bhbj5cclxuICAgICAgICA8L21hdC1saXN0LWl0ZW0+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgPC9tYXQtbWVudT5cclxuICA8L21hdC1saXN0LWl0ZW0+XHJcbjwvZGl2PlxyXG4iXX0=
|
|
55
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm90aWZpY2F0aW9uLWl0ZW0uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbnV4ZW8tZGV2ZWxvcG1lbnQtZnJhbWV3b3JrL3NyYy9saWIvY29tcG9uZW50cy9ub3RpZmljYXRpb25zL2NvbXBvbmVudHMvbm90aWZpY2F0aW9uLWl0ZW0vbm90aWZpY2F0aW9uLWl0ZW0uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbnV4ZW8tZGV2ZWxvcG1lbnQtZnJhbWV3b3JrL3NyYy9saWIvY29tcG9uZW50cy9ub3RpZmljYXRpb25zL2NvbXBvbmVudHMvbm90aWZpY2F0aW9uLWl0ZW0vbm90aWZpY2F0aW9uLWl0ZW0uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsWUFBWSxFQUNaLEtBQUssRUFDTCxNQUFNLEVBQ04saUJBQWlCLEdBQ2xCLE1BQU0sZUFBZSxDQUFDO0FBR3ZCLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRXRELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQzs7Ozs7Ozs7O0FBU2pFLE1BQU0sT0FBTyx5QkFBMEIsU0FBUSxjQUFjO0lBbUIzRDtRQUNFLEtBQUssRUFBRSxDQUFDO1FBTkEsaUJBQVksR0FBRyxJQUFJLFlBQVksRUFBcUIsQ0FBQztRQUNyRCxlQUFVLEdBQUcsSUFBSSxZQUFZLEVBQXFCLENBQUM7UUFDbkQsa0JBQWEsR0FBRyxJQUFJLFlBQVksRUFBcUIsQ0FBQztRQUV2RCxXQUFNLEdBQUcsbUJBQW1CLENBQUM7SUFHdEMsQ0FBQztJQWZELElBQWEsWUFBWSxDQUFDLEtBQXdCO1FBQ2hELElBQUksQ0FBQyxhQUFhLEdBQUcsS0FBSyxDQUFDO0lBQzdCLENBQUM7SUFFRCxJQUFJLFlBQVk7UUFDZCxPQUFPLElBQUksQ0FBQyxhQUFhLENBQUM7SUFDNUIsQ0FBQztJQVdELFNBQVMsQ0FBQyxLQUFZLEVBQUUsSUFBYTtRQUNuQyxLQUFLLENBQUMsZUFBZSxFQUFFLENBQUM7UUFDeEIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUNyQixDQUFDOzt1SEExQlUseUJBQXlCOzJHQUF6Qix5QkFBeUIsMlJDckJ0Qywyd0VBaUVBOzRGRDVDYSx5QkFBeUI7a0JBUHJDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLHVCQUF1QjtvQkFDakMsU0FBUyxFQUFFLENBQUMsb0NBQW9DLENBQUM7b0JBQ2pELFdBQVcsRUFBRSxvQ0FBb0M7b0JBQ2pELGVBQWUsRUFBRSx1QkFBdUIsQ0FBQyxNQUFNO29CQUMvQyxhQUFhLEVBQUUsaUJBQWlCLENBQUMsSUFBSTtpQkFDdEM7MEVBR1UsV0FBVztzQkFBbkIsS0FBSztnQkFFRyxXQUFXO3NCQUFuQixLQUFLO2dCQUVPLFlBQVk7c0JBQXhCLEtBQUs7Z0JBUUksWUFBWTtzQkFBckIsTUFBTTtnQkFDRyxVQUFVO3NCQUFuQixNQUFNO2dCQUNHLGFBQWE7c0JBQXRCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xyXG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxyXG4gIENvbXBvbmVudCxcclxuICBFdmVudEVtaXR0ZXIsXHJcbiAgSW5wdXQsXHJcbiAgT3V0cHV0LFxyXG4gIFZpZXdFbmNhcHN1bGF0aW9uLFxyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5cclxuaW1wb3J0IHsgTWF0TWVudSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL21lbnUnO1xyXG5pbXBvcnQgeyBOT1RJRklDQVRJT05fU1RBVFVTIH0gZnJvbSAnLi4vLi4vY29uc3RhbnRzJztcclxuaW1wb3J0IHsgTm90aWZpY2F0aW9uTW9kZWwsIE5vdGlmaWNhdGlvbnNMaXN0T3B0aW9ucyB9IGZyb20gJy4uLy4uL21vZGVscyc7XHJcbmltcG9ydCB7IERlc3Ryb3lTdWJqZWN0IH0gZnJvbSAnLi4vYmFzZS1ub3RpZmljYXRpb25zLmNvbXBvbmVudCc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2FwcC1ub3RpZmljYXRpb24taXRlbScsXHJcbiAgc3R5bGVVcmxzOiBbJy4vbm90aWZpY2F0aW9uLWl0ZW0uY29tcG9uZW50LnNjc3MnXSxcclxuICB0ZW1wbGF0ZVVybDogJy4vbm90aWZpY2F0aW9uLWl0ZW0uY29tcG9uZW50Lmh0bWwnLFxyXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxyXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBOb3RpZmljYXRpb25JdGVtQ29tcG9uZW50IGV4dGVuZHMgRGVzdHJveVN1YmplY3Qge1xyXG5cclxuICBASW5wdXQoKSBpY29uT3B0aW9uczogTm90aWZpY2F0aW9uc0xpc3RPcHRpb25zWydpY29ucyddO1xyXG5cclxuICBASW5wdXQoKSBjdXJyZW50TGFuZzogc3RyaW5nO1xyXG4gIHByaXZhdGUgX25vdGlmaWNhdGlvbjogTm90aWZpY2F0aW9uTW9kZWw7XHJcbiAgQElucHV0KCkgc2V0IG5vdGlmaWNhdGlvbih2YWx1ZTogTm90aWZpY2F0aW9uTW9kZWwpIHtcclxuICAgIHRoaXMuX25vdGlmaWNhdGlvbiA9IHZhbHVlO1xyXG4gIH1cclxuXHJcbiAgZ2V0IG5vdGlmaWNhdGlvbigpIHtcclxuICAgIHJldHVybiB0aGlzLl9ub3RpZmljYXRpb247XHJcbiAgfVxyXG5cclxuICBAT3V0cHV0KCkgbWFya0FzVW5yZWFkID0gbmV3IEV2ZW50RW1pdHRlcjxOb3RpZmljYXRpb25Nb2RlbD4oKTtcclxuICBAT3V0cHV0KCkgbWFya0FzUmVhZCA9IG5ldyBFdmVudEVtaXR0ZXI8Tm90aWZpY2F0aW9uTW9kZWw+KCk7XHJcbiAgQE91dHB1dCgpIG1hcmtBc0RlbGV0ZWQgPSBuZXcgRXZlbnRFbWl0dGVyPE5vdGlmaWNhdGlvbk1vZGVsPigpO1xyXG5cclxuICByZWFkb25seSBzdGF0dXMgPSBOT1RJRklDQVRJT05fU1RBVFVTO1xyXG4gIGNvbnN0cnVjdG9yKCkge1xyXG4gICAgc3VwZXIoKTtcclxuICB9XHJcblxyXG4gIGNsb3NlTWVudShldmVudDogRXZlbnQsIG1lbnU6IE1hdE1lbnUpIHtcclxuICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xyXG4gICAgbWVudS5jbG9zZWQuZW1pdCgpO1xyXG4gIH1cclxufVxyXG4iLCI8ZGl2XHJcbiAgKm5nSWY9XCJub3RpZmljYXRpb24/LnByb3BlcnRpZXMgYXMgcHJvcGVydGllc1wiXHJcbiAgY2xhc3M9XCJub3RpZmljYXRpb24taXRlbVwiXHJcbiAgW2NsYXNzLm5ldy1pdGVtXT1cInByb3BlcnRpZXNbJ25vdGlmX2NudDpzdGF0dXMnXSA9PSBzdGF0dXMubmV3XCJcclxuICBbY2xhc3MudW5yZWFkLWl0ZW1dPVwicHJvcGVydGllc1snbm90aWZfY250OnN0YXR1cyddID09IHN0YXR1cy51blJlYWRcIlxyXG4+XHJcbiAgPGRpdiBjbGFzcz1cIm5vdGlmaWNhdGlvbi1pdGVtX19pY29uXCI+XHJcbiAgICA8ZGl2IGNsYXNzPVwibm90aWZpY2F0aW9uLWl0ZW1fX2ljb25fX3dyYXBwZXJcIiAqbmdJZj1cImljb25PcHRpb25zPy5hY3RpdmVcIj5cclxuICAgICAgPGkgW2NsYXNzXT1cIm5vdGlmaWNhdGlvbiB8IGdldEljb24gOiBpY29uT3B0aW9uc1wiPjwvaT5cclxuICAgIDwvZGl2PlxyXG4gIDwvZGl2PlxyXG4gIDxkaXYgY2xhc3M9XCJub3RpZmljYXRpb24taXRlbV9fY29udGVudFwiPlxyXG4gICAgPHAgY2xhc3M9XCJub3RpZmljYXRpb24taXRlbV9fbWVzc2FnZSBsaW5lLWNsYW1wLTJcIj5cclxuICAgICAge3tcclxuICAgICAgICBjdXJyZW50TGFuZyA9PT0gJ2FyLUFSJ1xyXG4gICAgICAgICAgPyBwcm9wZXJ0aWVzWydub3RpZl9jbnQ6YXJNZXNzYWdlJ11cclxuICAgICAgICAgIDogcHJvcGVydGllc1snbm90aWZfY250OmVuTWVzc2FnZSddXHJcbiAgICAgIH19XHJcbiAgICA8L3A+XHJcbiAgICA8YnV0dG9uXHJcbiAgICAgIGNsYXNzPVwibWF0LWljb24tYnV0dG9uXCJcclxuICAgICAgW21hdE1lbnVUcmlnZ2VyRm9yXT1cImFwcE1lbnVcIlxyXG4gICAgICBtYXQtaWNvbi1idXR0b25cclxuICAgICAgKGNsaWNrKT1cIiRldmVudC5zdG9wUHJvcGFnYXRpb24oKVwiXHJcbiAgICA+XHJcbiAgICAgIDxtYXQtaWNvbiBjbGFzcz1cIm1hdC0yNFwiPm1vcmVfaG9yaXo8L21hdC1pY29uPlxyXG4gICAgPC9idXR0b24+XHJcbiAgICA8c3BhbiBjbGFzcz1cIm5vdGlmaWNhdGlvbi1pdGVtX19kYXRlXCI+e3tcclxuICAgICAgcHJvcGVydGllc1snZGM6Y3JlYXRlZCddIHwgdGltZUFnbyA6IGN1cnJlbnRMYW5nXHJcbiAgICB9fTwvc3Bhbj5cclxuICA8L2Rpdj5cclxuXHJcbiAgPG1hdC1tZW51IGNsYXNzPVwibm90aWZpY2F0aW9uLWl0ZW1fX2FjdGlvbnNcIiAjYXBwTWVudT1cIm1hdE1lbnVcIj5cclxuICAgIDxzcGFuIChjbGljayk9XCJjbG9zZU1lbnUoJGV2ZW50LCBhcHBNZW51KVwiPlxyXG4gICAgICA8YnV0dG9uXHJcbiAgICAgICAgKm5nSWY9XCJwcm9wZXJ0aWVzWydub3RpZl9jbnQ6c3RhdHVzJ10gPT0gc3RhdHVzLnJlYWRcIlxyXG4gICAgICAgIG1hdC1tZW51LWl0ZW1cclxuICAgICAgICBjbGFzcz1cIm5vdGlmaWNhdGlvbi1pdGVtX19hY3Rpb25zX19pdGVtXCJcclxuICAgICAgICAoY2xpY2spPVwibWFya0FzVW5yZWFkLmVtaXQobm90aWZpY2F0aW9uKVwiXHJcbiAgICAgID5cclxuICAgICAgICA8c3BhbiBjbGFzcz1cIm14LTFcIj57eyAnbm90aWZpY2F0aW9ucy5tYXJrQXNVbnJlYWQnIHwgdHJhbnNsYXRlIH19PC9zcGFuPlxyXG4gICAgICA8L2J1dHRvbj5cclxuXHJcbiAgICAgIDxidXR0b25cclxuICAgICAgICAqbmdJZj1cIlxyXG4gICAgICAgICAgcHJvcGVydGllc1snbm90aWZfY250OnN0YXR1cyddID09IHN0YXR1cy5uZXcgfHxcclxuICAgICAgICAgIHByb3BlcnRpZXNbJ25vdGlmX2NudDpzdGF0dXMnXSA9PSBzdGF0dXMudW5SZWFkXHJcbiAgICAgICAgXCJcclxuICAgICAgICBtYXQtbWVudS1pdGVtXHJcbiAgICAgICAgY2xhc3M9XCJub3RpZmljYXRpb24taXRlbV9fYWN0aW9uc19faXRlbVwiXHJcbiAgICAgICAgKGNsaWNrKT1cIm1hcmtBc1JlYWQuZW1pdChub3RpZmljYXRpb24pXCJcclxuICAgICAgPlxyXG4gICAgICAgIDxzcGFuIGNsYXNzPVwibXgtMVwiPnt7ICdub3RpZmljYXRpb25zLm1hcmtBc1JlYWQnIHwgdHJhbnNsYXRlIH19PC9zcGFuPlxyXG4gICAgICA8L2J1dHRvbj5cclxuXHJcbiAgICAgIDxidXR0b25cclxuICAgICAgICBtYXQtbWVudS1pdGVtXHJcbiAgICAgICAgKGNsaWNrKT1cIm1hcmtBc0RlbGV0ZWQuZW1pdChub3RpZmljYXRpb24pXCJcclxuICAgICAgICBjbGFzcz1cIm5vdGlmaWNhdGlvbi1pdGVtX19hY3Rpb25zX19pdGVtXCJcclxuICAgICAgPlxyXG4gICAgICAgIDxzcGFuPnt7ICdub3RpZmljYXRpb25zLmRlbGV0ZScgfCB0cmFuc2xhdGUgfX08L3NwYW4+XHJcbiAgICAgIDwvYnV0dG9uPlxyXG4gICAgPC9zcGFuPlxyXG4gIDwvbWF0LW1lbnU+XHJcbjwvZGl2PlxyXG4iXX0=
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import { ChangeDetectionStrategy, Component, EventEmitter, Output, ViewEncapsulation, } from '@angular/core';
|
|
2
|
+
import { map } from 'rxjs/operators';
|
|
3
|
+
import { TranslationService } from '../../../../core/services/translation/translation.service';
|
|
4
|
+
import { BaseNotification } from '../base-notifications.component';
|
|
5
|
+
import * as i0 from "@angular/core";
|
|
6
|
+
import * as i1 from "@angular/material/button";
|
|
7
|
+
import * as i2 from "@angular/material/menu";
|
|
8
|
+
import * as i3 from "@angular/common";
|
|
9
|
+
import * as i4 from "@angular/cdk/bidi";
|
|
10
|
+
import * as i5 from "@ngx-translate/core";
|
|
11
|
+
export class NotificationSourceSelectComponent extends BaseNotification {
|
|
12
|
+
constructor() {
|
|
13
|
+
super(...arguments);
|
|
14
|
+
this._translationService = this.inject.get(TranslationService);
|
|
15
|
+
this.sourceTypes$ = this.notificationsService.getSourceTypes();
|
|
16
|
+
this.typeChanged = new EventEmitter();
|
|
17
|
+
this.direction$ = this._translationService.isArabic$.pipe(map((isArabic) => (isArabic ? 'rtl' : 'ltr')));
|
|
18
|
+
}
|
|
19
|
+
selectFilterType(type) {
|
|
20
|
+
this.selectedFilterType = type;
|
|
21
|
+
this.typeChanged.emit(type === null || type === void 0 ? void 0 : type.id);
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
NotificationSourceSelectComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: NotificationSourceSelectComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
25
|
+
NotificationSourceSelectComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: NotificationSourceSelectComponent, selector: "app-notification-source-select", outputs: { typeChanged: "typeChanged" }, usesInheritance: true, ngImport: i0, template: "<span [dir]=\"direction$ | async\" *ngIf=\"sourceTypes$ | async as sourceTypes\">\r\n <button\r\n (click)=\"$event.stopPropagation()\"\r\n class=\"type-filter-trigger px-2\"\r\n [matMenuTriggerFor]=\"filterTypeMenu\"\r\n #filterTypeMenuTrigger=\"matMenuTrigger\"\r\n mat-stroked-button\r\n >\r\n <span>{{\r\n (selectedFilterType\r\n ? 'vocabulary.VOC_Notf_SourceTypes.' + selectedFilterType.properties.id\r\n : 'notifications.allTypes'\r\n ) | translate\r\n }}</span>\r\n <span class=\"icon icon-chevron-down\"></span>\r\n </button>\r\n <mat-menu class=\"source-type-select-menu\" #filterTypeMenu=\"matMenu\">\r\n <span (click)=\"$event.stopPropagation()\">\r\n <button\r\n mat-menu-item\r\n class=\"source-type-select-menu__option\"\r\n (click)=\"selectFilterType(null); filterTypeMenuTrigger.closed.emit()\"\r\n >\r\n <span>{{ 'notifications.all' | translate }}</span>\r\n </button>\r\n <button\r\n mat-menu-item\r\n class=\"source-type-select-menu__option\"\r\n *ngFor=\"let type of sourceTypes\"\r\n (click)=\"selectFilterType(type); filterTypeMenuTrigger.closed.emit()\"\r\n >\r\n <span>{{\r\n 'vocabulary.VOC_Notf_SourceTypes.' + type?.properties.id | translate\r\n }}</span>\r\n </button>\r\n </span>\r\n </mat-menu>\r\n</span>\r\n", styles: [".source-type-select-menu{box-shadow:var(--source-type-menu-shadow, 0px 1px 4px -1px rgba(28, 52, 84, .26))}.source-type-select-menu .mat-menu-content:not(:empty){padding:var(--source-type-menu-padding, .5rem)}.source-type-select-menu__option{background:var(--source-type-option-background, transparent)!important;border-radius:var(--source-type-option-radius, 4px);font-size:var(--source-type-option-size, 14px);color:var(--source-type-option-color, #28282d);height:var(--source-type-option-height, 38px);line-height:var(--source-type-option-line-height, 38px)}.source-type-select-menu__option:hover{--source-type-option-background: var(--source-type-option-hover-background, #e6f7ff);--source-type-option-color: var(--source-type-option-hover-color, #005fdb)}.source-type-select-menu__option .mat-icon{color:currentColor}\n"], components: [{ type: i1.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { type: i2.MatMenu, selector: "mat-menu", exportAs: ["matMenu"] }, { type: i2.MatMenuItem, selector: "[mat-menu-item]", inputs: ["disabled", "disableRipple", "role"], exportAs: ["matMenuItem"] }], directives: [{ type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i4.Dir, selector: "[dir]", inputs: ["dir"], outputs: ["dirChange"], exportAs: ["dir"] }, { type: i2.MatMenuTrigger, selector: "[mat-menu-trigger-for], [matMenuTriggerFor]", inputs: ["matMenuTriggerRestoreFocus", "mat-menu-trigger-for", "matMenuTriggerFor", "matMenuTriggerData"], outputs: ["menuOpened", "onMenuOpen", "menuClosed", "onMenuClose"], exportAs: ["matMenuTrigger"] }, { type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }], pipes: { "async": i3.AsyncPipe, "translate": i5.TranslatePipe }, changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
26
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: NotificationSourceSelectComponent, decorators: [{
|
|
27
|
+
type: Component,
|
|
28
|
+
args: [{
|
|
29
|
+
selector: 'app-notification-source-select',
|
|
30
|
+
templateUrl: './notification-source-select.component.html',
|
|
31
|
+
styleUrls: ['./notification-source-select.component.scss'],
|
|
32
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
33
|
+
encapsulation: ViewEncapsulation.None,
|
|
34
|
+
}]
|
|
35
|
+
}], propDecorators: { typeChanged: [{
|
|
36
|
+
type: Output
|
|
37
|
+
}] } });
|
|
38
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm90aWZpY2F0aW9uLXNvdXJjZS1zZWxlY3QuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbnV4ZW8tZGV2ZWxvcG1lbnQtZnJhbWV3b3JrL3NyYy9saWIvY29tcG9uZW50cy9ub3RpZmljYXRpb25zL2NvbXBvbmVudHMvbm90aWZpY2F0aW9uLXNvdXJjZS1zZWxlY3Qvbm90aWZpY2F0aW9uLXNvdXJjZS1zZWxlY3QuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbnV4ZW8tZGV2ZWxvcG1lbnQtZnJhbWV3b3JrL3NyYy9saWIvY29tcG9uZW50cy9ub3RpZmljYXRpb25zL2NvbXBvbmVudHMvbm90aWZpY2F0aW9uLXNvdXJjZS1zZWxlY3Qvbm90aWZpY2F0aW9uLXNvdXJjZS1zZWxlY3QuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsWUFBWSxFQUNaLE1BQU0sRUFDTixpQkFBaUIsR0FDbEIsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3JDLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDJEQUEyRCxDQUFDO0FBRS9GLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGlDQUFpQyxDQUFDOzs7Ozs7O0FBU25FLE1BQU0sT0FBTyxpQ0FBa0MsU0FBUSxnQkFBZ0I7SUFQdkU7O1FBUXFCLHdCQUFtQixHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLGtCQUFrQixDQUFDLENBQUM7UUFDN0UsaUJBQVksR0FBRyxJQUFJLENBQUMsb0JBQW9CLENBQUMsY0FBYyxFQUFFLENBQUM7UUFDaEQsZ0JBQVcsR0FBRyxJQUFJLFlBQVksRUFBVSxDQUFDO1FBSTFDLGVBQVUsR0FBRyxJQUFJLENBQUMsbUJBQW1CLENBQUMsU0FBUyxDQUFDLElBQUksQ0FDM0QsR0FBRyxDQUFDLENBQUMsUUFBUSxFQUFFLEVBQUUsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUM5QyxDQUFDO0tBTUg7SUFKQyxnQkFBZ0IsQ0FBQyxJQUFvQjtRQUNuQyxJQUFJLENBQUMsa0JBQWtCLEdBQUcsSUFBSSxDQUFDO1FBQy9CLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLElBQUksYUFBSixJQUFJLHVCQUFKLElBQUksQ0FBRSxFQUFFLENBQUMsQ0FBQztJQUNsQyxDQUFDOzsrSEFkVSxpQ0FBaUM7bUhBQWpDLGlDQUFpQyxzSUNuQjlDLGc0Q0FzQ0E7NEZEbkJhLGlDQUFpQztrQkFQN0MsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsZ0NBQWdDO29CQUMxQyxXQUFXLEVBQUUsNkNBQTZDO29CQUMxRCxTQUFTLEVBQUUsQ0FBQyw2Q0FBNkMsQ0FBQztvQkFDMUQsZUFBZSxFQUFFLHVCQUF1QixDQUFDLE1BQU07b0JBQy9DLGFBQWEsRUFBRSxpQkFBaUIsQ0FBQyxJQUFJO2lCQUN0Qzs4QkFJVyxXQUFXO3NCQUFwQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcclxuICBDb21wb25lbnQsXHJcbiAgRXZlbnRFbWl0dGVyLFxyXG4gIE91dHB1dCxcclxuICBWaWV3RW5jYXBzdWxhdGlvbixcclxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgbWFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xyXG5pbXBvcnQgeyBUcmFuc2xhdGlvblNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi8uLi9jb3JlL3NlcnZpY2VzL3RyYW5zbGF0aW9uL3RyYW5zbGF0aW9uLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBWb2NhYnVsYXJ5VHlwZSB9IGZyb20gJy4uLy4uL21vZGVscyc7XHJcbmltcG9ydCB7IEJhc2VOb3RpZmljYXRpb24gfSBmcm9tICcuLi9iYXNlLW5vdGlmaWNhdGlvbnMuY29tcG9uZW50JztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnYXBwLW5vdGlmaWNhdGlvbi1zb3VyY2Utc2VsZWN0JyxcclxuICB0ZW1wbGF0ZVVybDogJy4vbm90aWZpY2F0aW9uLXNvdXJjZS1zZWxlY3QuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL25vdGlmaWNhdGlvbi1zb3VyY2Utc2VsZWN0LmNvbXBvbmVudC5zY3NzJ10sXHJcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXHJcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcclxufSlcclxuZXhwb3J0IGNsYXNzIE5vdGlmaWNhdGlvblNvdXJjZVNlbGVjdENvbXBvbmVudCBleHRlbmRzIEJhc2VOb3RpZmljYXRpb24ge1xyXG4gIHByb3RlY3RlZCByZWFkb25seSBfdHJhbnNsYXRpb25TZXJ2aWNlID0gdGhpcy5pbmplY3QuZ2V0KFRyYW5zbGF0aW9uU2VydmljZSk7XHJcbiAgc291cmNlVHlwZXMkID0gdGhpcy5ub3RpZmljYXRpb25zU2VydmljZS5nZXRTb3VyY2VUeXBlcygpO1xyXG4gIEBPdXRwdXQoKSB0eXBlQ2hhbmdlZCA9IG5ldyBFdmVudEVtaXR0ZXI8c3RyaW5nPigpO1xyXG5cclxuICBzZWxlY3RlZEZpbHRlclR5cGU6IFZvY2FidWxhcnlUeXBlIHwgbnVsbDtcclxuXHJcbiAgcmVhZG9ubHkgZGlyZWN0aW9uJCA9IHRoaXMuX3RyYW5zbGF0aW9uU2VydmljZS5pc0FyYWJpYyQucGlwZShcclxuICAgIG1hcCgoaXNBcmFiaWMpID0+IChpc0FyYWJpYyA/ICdydGwnIDogJ2x0cicpKVxyXG4gICk7XHJcblxyXG4gIHNlbGVjdEZpbHRlclR5cGUodHlwZTogVm9jYWJ1bGFyeVR5cGUpIHtcclxuICAgIHRoaXMuc2VsZWN0ZWRGaWx0ZXJUeXBlID0gdHlwZTtcclxuICAgIHRoaXMudHlwZUNoYW5nZWQuZW1pdCh0eXBlPy5pZCk7XHJcbiAgfVxyXG59XHJcbiIsIjxzcGFuIFtkaXJdPVwiZGlyZWN0aW9uJCB8IGFzeW5jXCIgKm5nSWY9XCJzb3VyY2VUeXBlcyQgfCBhc3luYyBhcyBzb3VyY2VUeXBlc1wiPlxyXG4gIDxidXR0b25cclxuICAgIChjbGljayk9XCIkZXZlbnQuc3RvcFByb3BhZ2F0aW9uKClcIlxyXG4gICAgY2xhc3M9XCJ0eXBlLWZpbHRlci10cmlnZ2VyIHB4LTJcIlxyXG4gICAgW21hdE1lbnVUcmlnZ2VyRm9yXT1cImZpbHRlclR5cGVNZW51XCJcclxuICAgICNmaWx0ZXJUeXBlTWVudVRyaWdnZXI9XCJtYXRNZW51VHJpZ2dlclwiXHJcbiAgICBtYXQtc3Ryb2tlZC1idXR0b25cclxuICA+XHJcbiAgICA8c3Bhbj57e1xyXG4gICAgICAoc2VsZWN0ZWRGaWx0ZXJUeXBlXHJcbiAgICAgICAgPyAndm9jYWJ1bGFyeS5WT0NfTm90Zl9Tb3VyY2VUeXBlcy4nICsgc2VsZWN0ZWRGaWx0ZXJUeXBlLnByb3BlcnRpZXMuaWRcclxuICAgICAgICA6ICdub3RpZmljYXRpb25zLmFsbFR5cGVzJ1xyXG4gICAgICApIHwgdHJhbnNsYXRlXHJcbiAgICB9fTwvc3Bhbj5cclxuICAgIDxzcGFuIGNsYXNzPVwiaWNvbiBpY29uLWNoZXZyb24tZG93blwiPjwvc3Bhbj5cclxuICA8L2J1dHRvbj5cclxuICA8bWF0LW1lbnUgY2xhc3M9XCJzb3VyY2UtdHlwZS1zZWxlY3QtbWVudVwiICNmaWx0ZXJUeXBlTWVudT1cIm1hdE1lbnVcIj5cclxuICAgIDxzcGFuIChjbGljayk9XCIkZXZlbnQuc3RvcFByb3BhZ2F0aW9uKClcIj5cclxuICAgICAgPGJ1dHRvblxyXG4gICAgICAgIG1hdC1tZW51LWl0ZW1cclxuICAgICAgICBjbGFzcz1cInNvdXJjZS10eXBlLXNlbGVjdC1tZW51X19vcHRpb25cIlxyXG4gICAgICAgIChjbGljayk9XCJzZWxlY3RGaWx0ZXJUeXBlKG51bGwpOyBmaWx0ZXJUeXBlTWVudVRyaWdnZXIuY2xvc2VkLmVtaXQoKVwiXHJcbiAgICAgID5cclxuICAgICAgICA8c3Bhbj57eyAnbm90aWZpY2F0aW9ucy5hbGwnIHwgdHJhbnNsYXRlIH19PC9zcGFuPlxyXG4gICAgICA8L2J1dHRvbj5cclxuICAgICAgPGJ1dHRvblxyXG4gICAgICAgIG1hdC1tZW51LWl0ZW1cclxuICAgICAgICBjbGFzcz1cInNvdXJjZS10eXBlLXNlbGVjdC1tZW51X19vcHRpb25cIlxyXG4gICAgICAgICpuZ0Zvcj1cImxldCB0eXBlIG9mIHNvdXJjZVR5cGVzXCJcclxuICAgICAgICAoY2xpY2spPVwic2VsZWN0RmlsdGVyVHlwZSh0eXBlKTsgZmlsdGVyVHlwZU1lbnVUcmlnZ2VyLmNsb3NlZC5lbWl0KClcIlxyXG4gICAgICA+XHJcbiAgICAgICAgPHNwYW4+e3tcclxuICAgICAgICAgICd2b2NhYnVsYXJ5LlZPQ19Ob3RmX1NvdXJjZVR5cGVzLicgKyB0eXBlPy5wcm9wZXJ0aWVzLmlkIHwgdHJhbnNsYXRlXHJcbiAgICAgICAgfX08L3NwYW4+XHJcbiAgICAgIDwvYnV0dG9uPlxyXG4gICAgPC9zcGFuPlxyXG4gIDwvbWF0LW1lbnU+XHJcbjwvc3Bhbj5cclxuIl19
|