@acorex/modules 18.1.3 → 18.1.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.
Files changed (39) hide show
  1. package/backend/lib/data/api/comment.mock.service.d.ts +62 -0
  2. package/backend/lib/data/index.d.ts +1 -0
  3. package/esm2022/backend/lib/data/api/comment.mock.service.mjs +142 -0
  4. package/esm2022/backend/lib/data/index.mjs +2 -1
  5. package/esm2022/notification-management/acorex-modules-notification-management.mjs +5 -0
  6. package/esm2022/notification-management/index.mjs +4 -0
  7. package/esm2022/notification-management/lib/entities/notification-channel.entity.mjs +329 -0
  8. package/esm2022/notification-management/lib/entities/notification-template.entity.mjs +298 -0
  9. package/esm2022/notification-management/lib/notification-management-mock-data.mjs +20 -0
  10. package/esm2022/notification-management/lib/notification-management.module.mjs +44 -0
  11. package/esm2022/notification-management/lib/notification-management.service.mjs +30 -0
  12. package/esm2022/template-management/acorex-modules-template-management.mjs +5 -0
  13. package/esm2022/template-management/index.mjs +4 -0
  14. package/esm2022/template-management/lib/entities/global-template.entity.mjs +298 -0
  15. package/esm2022/template-management/lib/entities/template-variable.entity.mjs +304 -0
  16. package/esm2022/template-management/lib/template-management-mock-data.mjs +11 -0
  17. package/esm2022/template-management/lib/template-management.module.mjs +45 -0
  18. package/esm2022/template-management/lib/template-management.service.mjs +24 -0
  19. package/fesm2022/acorex-modules-backend.mjs +141 -2
  20. package/fesm2022/acorex-modules-backend.mjs.map +1 -1
  21. package/fesm2022/acorex-modules-notification-management.mjs +728 -0
  22. package/fesm2022/acorex-modules-notification-management.mjs.map +1 -0
  23. package/fesm2022/acorex-modules-template-management.mjs +690 -0
  24. package/fesm2022/acorex-modules-template-management.mjs.map +1 -0
  25. package/notification-management/README.md +3 -0
  26. package/notification-management/index.d.ts +3 -0
  27. package/notification-management/lib/entities/notification-channel.entity.d.ts +3 -0
  28. package/notification-management/lib/entities/notification-template.entity.d.ts +3 -0
  29. package/notification-management/lib/notification-management-mock-data.d.ts +13 -0
  30. package/notification-management/lib/notification-management.module.d.ts +12 -0
  31. package/notification-management/lib/notification-management.service.d.ts +11 -0
  32. package/package.json +19 -7
  33. package/template-management/README.md +3 -0
  34. package/template-management/index.d.ts +3 -0
  35. package/template-management/lib/entities/global-template.entity.d.ts +3 -0
  36. package/template-management/lib/entities/template-variable.entity.d.ts +3 -0
  37. package/template-management/lib/template-management-mock-data.d.ts +7 -0
  38. package/template-management/lib/template-management.module.d.ts +12 -0
  39. package/template-management/lib/template-management.service.d.ts +9 -0
@@ -0,0 +1,62 @@
1
+ import { AXPCommentResponse, AXPDeleteRequest, AXPGetRequest, AXPLikeRequest, AXPPostRequest, AXPPutRequest } from '@acorex/platform/themes/shared';
2
+ import * as i0 from "@angular/core";
3
+ export declare class AXMMockCommentService {
4
+ private storageService;
5
+ private name;
6
+ get(params: AXPGetRequest): Promise<AXPCommentResponse>;
7
+ post(payload: AXPPostRequest): Promise<string>;
8
+ put(payload: AXPPutRequest): Promise<string>;
9
+ delete(payload: AXPDeleteRequest): Promise<void>;
10
+ like(payload: AXPLikeRequest): Promise<string>;
11
+ static ɵfac: i0.ɵɵFactoryDeclaration<AXMMockCommentService, never>;
12
+ static ɵprov: i0.ɵɵInjectableDeclaration<AXMMockCommentService>;
13
+ }
14
+ export declare const COMMENTS: {
15
+ id: string;
16
+ entityId: string;
17
+ content: string;
18
+ contentType: string;
19
+ memberId: string;
20
+ memberType: string;
21
+ roomId: string;
22
+ isPrivate: boolean;
23
+ replyId: null;
24
+ messageVisibles: never[];
25
+ messageStatuses: never[];
26
+ messageHistories: never[];
27
+ replies: {
28
+ id: string;
29
+ content: string;
30
+ contentType: string;
31
+ memberId: string;
32
+ memberType: string;
33
+ roomId: string;
34
+ isPrivate: boolean;
35
+ replyId: string;
36
+ messageVisibles: never[];
37
+ messageStatuses: never[];
38
+ messageHistories: never[];
39
+ isArchived: boolean;
40
+ isLiked: boolean;
41
+ reactionsCount: number;
42
+ repliesCount: number;
43
+ user: {
44
+ userName: string;
45
+ firstName: string;
46
+ lastName: string;
47
+ picture: null;
48
+ id: string;
49
+ };
50
+ }[];
51
+ isArchived: boolean;
52
+ isLiked: boolean;
53
+ reactionsCount: number;
54
+ repliesCount: number;
55
+ user: {
56
+ userName: string;
57
+ firstName: string;
58
+ lastName: string;
59
+ picture: null;
60
+ id: string;
61
+ };
62
+ }[];
@@ -1,3 +1,4 @@
1
+ export * from './api/comment.mock.service';
1
2
  export * from './api/comment.service';
2
3
  export * from './api/data-provider';
3
4
  export * from './api/file.service';
@@ -0,0 +1,142 @@
1
+ import { AXPDataGenerator, AXPStorageService } from '@acorex/platform/common';
2
+ import { inject, Injectable } from '@angular/core';
3
+ import * as i0 from "@angular/core";
4
+ export class AXMMockCommentService {
5
+ constructor() {
6
+ this.storageService = inject(AXPStorageService);
7
+ this.name = 'comments';
8
+ }
9
+ async get(params) {
10
+ const data = (await this.storageService.getAll(this.name));
11
+ return Promise.resolve({ totalCount: data.length, items: data });
12
+ }
13
+ async post(payload) {
14
+ const extraPayload = {
15
+ id: AXPDataGenerator.uuid(), // Generate a unique ID for the comment
16
+ memberId: AXPDataGenerator.uuid(), // Simulate member ID (e.g., the user posting)
17
+ memberType: AXPDataGenerator.pick(['user', 'admin']), // Simulate the member type (user/admin)
18
+ roomId: AXPDataGenerator.uuid(), // Generate a random room ID
19
+ messageVisibles: [], // Empty array for visibility, can be customized
20
+ messageStatuses: [], // Empty array for statuses, can be customized
21
+ messageHistories: [], // Empty array for history, can be customized
22
+ replies: [], // Initially no replies
23
+ isArchived: false, // Default to not archived
24
+ isLiked: false, // Default to not liked
25
+ reactionsCount: 0, // Default to 0 reactions
26
+ repliesCount: 0, // Default to 0 replies
27
+ user: {
28
+ userName: AXPDataGenerator.firstName().toLowerCase(),
29
+ firstName: AXPDataGenerator.firstName(),
30
+ lastName: AXPDataGenerator.lastName(),
31
+ picture: null,
32
+ id: AXPDataGenerator.uuid(),
33
+ },
34
+ };
35
+ const fullPayload = { ...payload, ...extraPayload };
36
+ if (payload.replyId) {
37
+ const message = await this.storageService.getOne(this.name, payload.replyId);
38
+ await this.storageService.updateOne(this.name, payload.replyId, {
39
+ ...message,
40
+ replies: [...message.replies, fullPayload],
41
+ });
42
+ return Promise.resolve('done');
43
+ }
44
+ else {
45
+ await this.storageService.insertOne(this.name, fullPayload);
46
+ return Promise.resolve('done');
47
+ }
48
+ }
49
+ async put(payload) {
50
+ //const message = await this.storageService.getOne(this.name, payload.id);
51
+ await this.storageService.updateOne(this.name, payload.id, { content: payload.content });
52
+ return Promise.resolve('done');
53
+ }
54
+ async delete(payload) {
55
+ await this.storageService.deleteOne(this.name, payload.id);
56
+ return Promise.resolve();
57
+ }
58
+ async like(payload) {
59
+ const message = await this.storageService.getOne(this.name, payload.messageId);
60
+ await this.storageService.updateOne(this.name, payload.messageId, {
61
+ ...message,
62
+ isLiked: !message.isLiked,
63
+ reactionsCount: message.isLiked ? --message.reactionsCount : ++message.reactionsCount,
64
+ });
65
+ return Promise.resolve('done');
66
+ }
67
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: AXMMockCommentService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
68
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: AXMMockCommentService, providedIn: 'root' }); }
69
+ }
70
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: AXMMockCommentService, decorators: [{
71
+ type: Injectable,
72
+ args: [{
73
+ providedIn: 'root',
74
+ }]
75
+ }] });
76
+ export const COMMENTS = Array.from({ length: 10 }).map(() => {
77
+ const contentSource = [
78
+ 'This is a comment.',
79
+ 'I really like this!',
80
+ 'Could you clarify your point?',
81
+ 'Great job on this!',
82
+ 'I have some suggestions.',
83
+ 'This is quite insightful.',
84
+ 'Thanks for sharing!',
85
+ 'I disagree with this perspective.',
86
+ 'Interesting take!',
87
+ 'What do you think about this?',
88
+ ];
89
+ const repliesCount = AXPDataGenerator.number(0, 3);
90
+ return {
91
+ id: AXPDataGenerator.uuid(),
92
+ entityId: 'test', // AXPDataGenerator.pick(ENTITIES).id,//need to fix
93
+ content: `<p>${AXPDataGenerator.pick(contentSource)}</p>`,
94
+ contentType: AXPDataGenerator.pick(['text', 'image', 'video']),
95
+ memberId: AXPDataGenerator.uuid(),
96
+ memberType: AXPDataGenerator.pick(['user', 'admin']),
97
+ roomId: AXPDataGenerator.uuid(),
98
+ isPrivate: AXPDataGenerator.boolean(),
99
+ replyId: null,
100
+ messageVisibles: [],
101
+ messageStatuses: [],
102
+ messageHistories: [],
103
+ replies: Array.from({ length: repliesCount }).map(() => {
104
+ return {
105
+ id: AXPDataGenerator.uuid(),
106
+ content: `<p>${AXPDataGenerator.pick(contentSource)}</p>`,
107
+ contentType: AXPDataGenerator.pick(['text']),
108
+ memberId: AXPDataGenerator.uuid(),
109
+ memberType: AXPDataGenerator.pick(['user', 'admin']),
110
+ roomId: AXPDataGenerator.uuid(),
111
+ isPrivate: AXPDataGenerator.boolean(),
112
+ replyId: AXPDataGenerator.uuid(),
113
+ messageVisibles: [],
114
+ messageStatuses: [],
115
+ messageHistories: [],
116
+ isArchived: AXPDataGenerator.boolean(),
117
+ isLiked: AXPDataGenerator.boolean(),
118
+ reactionsCount: AXPDataGenerator.number(0, 10),
119
+ repliesCount: 0,
120
+ user: {
121
+ userName: AXPDataGenerator.firstName().toLowerCase(),
122
+ firstName: AXPDataGenerator.firstName(),
123
+ lastName: AXPDataGenerator.lastName(),
124
+ picture: null,
125
+ id: AXPDataGenerator.uuid(),
126
+ },
127
+ };
128
+ }),
129
+ isArchived: AXPDataGenerator.boolean(),
130
+ isLiked: AXPDataGenerator.boolean(),
131
+ reactionsCount: AXPDataGenerator.number(0, 100),
132
+ repliesCount: repliesCount,
133
+ user: {
134
+ userName: AXPDataGenerator.firstName().toLowerCase(),
135
+ firstName: AXPDataGenerator.firstName(),
136
+ lastName: AXPDataGenerator.lastName(),
137
+ picture: null,
138
+ id: AXPDataGenerator.uuid(),
139
+ },
140
+ };
141
+ });
142
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tbWVudC5tb2NrLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL21vZHVsZXMvYmFja2VuZC9zcmMvbGliL2RhdGEvYXBpL2NvbW1lbnQubW9jay5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBVTlFLE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQUtuRCxNQUFNLE9BQU8scUJBQXFCO0lBSGxDO1FBSVUsbUJBQWMsR0FBRyxNQUFNLENBQUMsaUJBQWlCLENBQUMsQ0FBQztRQUMzQyxTQUFJLEdBQUcsVUFBVSxDQUFDO0tBK0QzQjtJQTdEQyxLQUFLLENBQUMsR0FBRyxDQUFDLE1BQXFCO1FBQzdCLE1BQU0sSUFBSSxHQUFHLENBQUMsTUFBTSxJQUFJLENBQUMsY0FBYyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQWlCLENBQUM7UUFDM0UsT0FBTyxPQUFPLENBQUMsT0FBTyxDQUFDLEVBQUUsVUFBVSxFQUFFLElBQUksQ0FBQyxNQUFNLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7SUFDbkUsQ0FBQztJQUVELEtBQUssQ0FBQyxJQUFJLENBQUMsT0FBdUI7UUFDaEMsTUFBTSxZQUFZLEdBQUc7WUFDbkIsRUFBRSxFQUFFLGdCQUFnQixDQUFDLElBQUksRUFBRSxFQUFFLHVDQUF1QztZQUNwRSxRQUFRLEVBQUUsZ0JBQWdCLENBQUMsSUFBSSxFQUFFLEVBQUUsOENBQThDO1lBQ2pGLFVBQVUsRUFBRSxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsQ0FBQyxNQUFNLEVBQUUsT0FBTyxDQUFDLENBQUMsRUFBRSx3Q0FBd0M7WUFDOUYsTUFBTSxFQUFFLGdCQUFnQixDQUFDLElBQUksRUFBRSxF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O29CQUNwRCxTQUFTLEVBQUUsZ0JBQWdCLENBQUMsU0FBUyxFQUFFO29CQUN2QyxRQUFRLEVBQUUsZ0JBQWdCLENBQUMsUUFBUSxFQUFFO29CQUNyQyxPQUFPLEVBQUUsSUFBSTtvQkFDYixFQUFFLEVBQUUsZ0JBQWdCLENBQUMsSUFBSSxFQUFFO2lCQUM1QjthQUNGLENBQUM7UUFDSixDQUFDLENBQUM7UUFDRixVQUFVLEVBQUUsZ0JBQWdCLENBQUMsT0FBTyxFQUFFO1FBQ3RDLE9BQU8sRUFBRSxnQkFBZ0IsQ0FBQyxPQUFPLEVBQUU7UUFDbkMsY0FBYyxFQUFFLGdCQUFnQixDQUFDLE1BQU0sQ0FBQyxDQUFDLEVBQUUsR0FBRyxDQUFDO1FBQy9DLFlBQVksRUFBRSxZQUFZO1FBQzFCLElBQUksRUFBRTtZQUNKLFFBQVEsRUFBRSxnQkFBZ0IsQ0FBQyxTQUFTLEVBQUUsQ0FBQyxXQUFXLEVBQUU7WUFDcEQsU0FBUyxFQUFFLGdCQUFnQixDQUFDLFNBQVMsRUFBRTtZQUN2QyxRQUFRLEVBQUUsZ0JBQWdCLENBQUMsUUFBUSxFQUFFO1lBQ3JDLE9BQU8sRUFBRSxJQUFJO1lBQ2IsRUFBRSxFQUFFLGdCQUFnQixDQUFDLElBQUksRUFBRTtTQUM1QjtLQUNGLENBQUM7QUFDSixDQUFDLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFYUERhdGFHZW5lcmF0b3IsIEFYUFN0b3JhZ2VTZXJ2aWNlIH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9jb21tb24nO1xuaW1wb3J0IHtcbiAgQVhQQ29tbWVudCxcbiAgQVhQQ29tbWVudFJlc3BvbnNlLFxuICBBWFBEZWxldGVSZXF1ZXN0LFxuICBBWFBHZXRSZXF1ZXN0LFxuICBBWFBMaWtlUmVxdWVzdCxcbiAgQVhQUG9zdFJlcXVlc3QsXG4gIEFYUFB1dFJlcXVlc3QsXG59IGZyb20gJ0BhY29yZXgvcGxhdGZvcm0vdGhlbWVzL3NoYXJlZCc7XG5pbXBvcnQgeyBpbmplY3QsIEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCcsXG59KVxuZXhwb3J0IGNsYXNzIEFYTU1vY2tDb21tZW50U2VydmljZSB7XG4gIHByaXZhdGUgc3RvcmFnZVNlcnZpY2UgPSBpbmplY3QoQVhQU3RvcmFnZVNlcnZpY2UpO1xuICBwcml2YXRlIG5hbWUgPSAnY29tbWVudHMnO1xuXG4gIGFzeW5jIGdldChwYXJhbXM6IEFYUEdldFJlcXVlc3QpOiBQcm9taXNlPEFYUENvbW1lbnRSZXNwb25zZT4ge1xuICAgIGNvbnN0IGRhdGEgPSAoYXdhaXQgdGhpcy5zdG9yYWdlU2VydmljZS5nZXRBbGwodGhpcy5uYW1lKSkgYXMgQVhQQ29tbWVudFtdO1xuICAgIHJldHVybiBQcm9taXNlLnJlc29sdmUoeyB0b3RhbENvdW50OiBkYXRhLmxlbmd0aCwgaXRlbXM6IGRhdGEgfSk7XG4gIH1cblxuICBhc3luYyBwb3N0KHBheWxvYWQ6IEFYUFBvc3RSZXF1ZXN0KTogUHJvbWlzZTxzdHJpbmc+IHtcbiAgICBjb25zdCBleHRyYVBheWxvYWQgPSB7XG4gICAgICBpZDogQVhQRGF0YUdlbmVyYXRvci51dWlkKCksIC8vIEdlbmVyYXRlIGEgdW5pcXVlIElEIGZvciB0aGUgY29tbWVudFxuICAgICAgbWVtYmVySWQ6IEFYUERhdGFHZW5lcmF0b3IudXVpZCgpLCAvLyBTaW11bGF0ZSBtZW1iZXIgSUQgKGUuZy4sIHRoZSB1c2VyIHBvc3RpbmcpXG4gICAgICBtZW1iZXJUeXBlOiBBWFBEYXRhR2VuZXJhdG9yLnBpY2soWyd1c2VyJywgJ2FkbWluJ10pLCAvLyBTaW11bGF0ZSB0aGUgbWVtYmVyIHR5cGUgKHVzZXIvYWRtaW4pXG4gICAgICByb29tSWQ6IEFYUERhdGFHZW5lcmF0b3IudXVpZCgpLCAvLyBHZW5lcmF0ZSBhIHJhbmRvbSByb29tIElEXG4gICAgICBtZXNzYWdlVmlzaWJsZXM6IFtdLCAvLyBFbXB0eSBhcnJheSBmb3IgdmlzaWJpbGl0eSwgY2FuIGJlIGN1c3RvbWl6ZWRcbiAgICAgIG1lc3NhZ2VTdGF0dXNlczogW10sIC8vIEVtcHR5IGFycmF5IGZvciBzdGF0dXNlcywgY2FuIGJlIGN1c3RvbWl6ZWRcbiAgICAgIG1lc3NhZ2VIaXN0b3JpZXM6IFtdLCAvLyBFbXB0eSBhcnJheSBmb3IgaGlzdG9yeSwgY2FuIGJlIGN1c3RvbWl6ZWRcbiAgICAgIHJlcGxpZXM6IFtdLCAvLyBJbml0aWFsbHkgbm8gcmVwbGllc1xuICAgICAgaXNBcmNoaXZlZDogZmFsc2UsIC8vIERlZmF1bHQgdG8gbm90IGFyY2hpdmVkXG4gICAgICBpc0xpa2VkOiBmYWxzZSwgLy8gRGVmYXVsdCB0byBub3QgbGlrZWRcbiAgICAgIHJlYWN0aW9uc0NvdW50OiAwLCAvLyBEZWZhdWx0IHRvIDAgcmVhY3Rpb25zXG4gICAgICByZXBsaWVzQ291bnQ6IDAsIC8vIERlZmF1bHQgdG8gMCByZXBsaWVzXG4gICAgICB1c2VyOiB7XG4gICAgICAgIHVzZXJOYW1lOiBBWFBEYXRhR2VuZXJhdG9yLmZpcnN0TmFtZSgpLnRvTG93ZXJDYXNlKCksXG4gICAgICAgIGZpcnN0TmFtZTogQVhQRGF0YUdlbmVyYXRvci5maXJzdE5hbWUoKSxcbiAgICAgICAgbGFzdE5hbWU6IEFYUERhdGFHZW5lcmF0b3IubGFzdE5hbWUoKSxcbiAgICAgICAgcGljdHVyZTogbnVsbCxcbiAgICAgICAgaWQ6IEFYUERhdGFHZW5lcmF0b3IudXVpZCgpLFxuICAgICAgfSxcbiAgICB9O1xuICAgIGNvbnN0IGZ1bGxQYXlsb2FkID0geyAuLi5wYXlsb2FkLCAuLi5leHRyYVBheWxvYWQgfTtcbiAgICBpZiAocGF5bG9hZC5yZXBseUlkKSB7XG4gICAgICBjb25zdCBtZXNzYWdlID0gYXdhaXQgdGhpcy5zdG9yYWdlU2VydmljZS5nZXRPbmUodGhpcy5uYW1lLCBwYXlsb2FkLnJlcGx5SWQpO1xuICAgICAgYXdhaXQgdGhpcy5zdG9yYWdlU2VydmljZS51cGRhdGVPbmUodGhpcy5uYW1lLCBwYXlsb2FkLnJlcGx5SWQsIHtcbiAgICAgICAgLi4ubWVzc2FnZSxcbiAgICAgICAgcmVwbGllczogWy4uLm1lc3NhZ2UucmVwbGllcywgZnVsbFBheWxvYWRdLFxuICAgICAgfSk7XG4gICAgICByZXR1cm4gUHJvbWlzZS5yZXNvbHZlKCdkb25lJyk7XG4gICAgfSBlbHNlIHtcbiAgICAgIGF3YWl0IHRoaXMuc3RvcmFnZVNlcnZpY2UuaW5zZXJ0T25lKHRoaXMubmFtZSwgZnVsbFBheWxvYWQpO1xuICAgICAgcmV0dXJuIFByb21pc2UucmVzb2x2ZSgnZG9uZScpO1xuICAgIH1cbiAgfVxuXG4gIGFzeW5jIHB1dChwYXlsb2FkOiBBWFBQdXRSZXF1ZXN0KTogUHJvbWlzZTxzdHJpbmc+IHtcbiAgICAvL2NvbnN0IG1lc3NhZ2UgPSBhd2FpdCB0aGlzLnN0b3JhZ2VTZXJ2aWNlLmdldE9uZSh0aGlzLm5hbWUsIHBheWxvYWQuaWQpO1xuICAgIGF3YWl0IHRoaXMuc3RvcmFnZVNlcnZpY2UudXBkYXRlT25lKHRoaXMubmFtZSwgcGF5bG9hZC5pZCwgeyBjb250ZW50OiBwYXlsb2FkLmNvbnRlbnQgfSk7XG4gICAgcmV0dXJuIFByb21pc2UucmVzb2x2ZSgnZG9uZScpO1xuICB9XG5cbiAgYXN5bmMgZGVsZXRlKHBheWxvYWQ6IEFYUERlbGV0ZVJlcXVlc3QpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICBhd2FpdCB0aGlzLnN0b3JhZ2VTZXJ2aWNlLmRlbGV0ZU9uZSh0aGlzLm5hbWUsIHBheWxvYWQuaWQpO1xuICAgIHJldHVybiBQcm9taXNlLnJlc29sdmUoKTtcbiAgfVxuXG4gIGFzeW5jIGxpa2UocGF5bG9hZDogQVhQTGlrZVJlcXVlc3QpOiBQcm9taXNlPHN0cmluZz4ge1xuICAgIGNvbnN0IG1lc3NhZ2UgPSBhd2FpdCB0aGlzLnN0b3JhZ2VTZXJ2aWNlLmdldE9uZSh0aGlzLm5hbWUsIHBheWxvYWQubWVzc2FnZUlkKTtcbiAgICBhd2FpdCB0aGlzLnN0b3JhZ2VTZXJ2aWNlLnVwZGF0ZU9uZSh0aGlzLm5hbWUsIHBheWxvYWQubWVzc2FnZUlkLCB7XG4gICAgICAuLi5tZXNzYWdlLFxuICAgICAgaXNMaWtlZDogIW1lc3NhZ2UuaXNMaWtlZCxcbiAgICAgIHJlYWN0aW9uc0NvdW50OiBtZXNzYWdlLmlzTGlrZWQgPyAtLW1lc3NhZ2UucmVhY3Rpb25zQ291bnQgOiArK21lc3NhZ2UucmVhY3Rpb25zQ291bnQsXG4gICAgfSk7XG4gICAgcmV0dXJuIFByb21pc2UucmVzb2x2ZSgnZG9uZScpO1xuICB9XG59XG5cbmV4cG9ydCBjb25zdCBDT01NRU5UUyA9IEFycmF5LmZyb20oeyBsZW5ndGg6IDEwIH0pLm1hcCgoKSA9PiB7XG4gIGNvbnN0IGNvbnRlbnRTb3VyY2UgPSBbXG4gICAgJ1RoaXMgaXMgYSBjb21tZW50LicsXG4gICAgJ0kgcmVhbGx5IGxpa2UgdGhpcyEnLFxuICAgICdDb3VsZCB5b3UgY2xhcmlmeSB5b3VyIHBvaW50PycsXG4gICAgJ0dyZWF0IGpvYiBvbiB0aGlzIScsXG4gICAgJ0kgaGF2ZSBzb21lIHN1Z2dlc3Rpb25zLicsXG4gICAgJ1RoaXMgaXMgcXVpdGUgaW5zaWdodGZ1bC4nLFxuICAgICdUaGFua3MgZm9yIHNoYXJpbmchJyxcbiAgICAnSSBkaXNhZ3JlZSB3aXRoIHRoaXMgcGVyc3BlY3RpdmUuJyxcbiAgICAnSW50ZXJlc3RpbmcgdGFrZSEnLFxuICAgICdXaGF0IGRvIHlvdSB0aGluayBhYm91dCB0aGlzPycsXG4gIF07XG4gIGNvbnN0IHJlcGxpZXNDb3VudCA9IEFYUERhdGFHZW5lcmF0b3IubnVtYmVyKDAsIDMpO1xuXG4gIHJldHVybiB7XG4gICAgaWQ6IEFYUERhdGFHZW5lcmF0b3IudXVpZCgpLFxuICAgIGVudGl0eUlkOiAndGVzdCcsIC8vIEFYUERhdGFHZW5lcmF0b3IucGljayhFTlRJVElFUykuaWQsLy9uZWVkIHRvIGZpeFxuICAgIGNvbnRlbnQ6IGA8cD4ke0FYUERhdGFHZW5lcmF0b3IucGljayhjb250ZW50U291cmNlKX08L3A+YCxcbiAgICBjb250ZW50VHlwZTogQVhQRGF0YUdlbmVyYXRvci5waWNrKFsndGV4dCcsICdpbWFnZScsICd2aWRlbyddKSxcbiAgICBtZW1iZXJJZDogQVhQRGF0YUdlbmVyYXRvci51dWlkKCksXG4gICAgbWVtYmVyVHlwZTogQVhQRGF0YUdlbmVyYXRvci5waWNrKFsndXNlcicsICdhZG1pbiddKSxcbiAgICByb29tSWQ6IEFYUERhdGFHZW5lcmF0b3IudXVpZCgpLFxuICAgIGlzUHJpdmF0ZTogQVhQRGF0YUdlbmVyYXRvci5ib29sZWFuKCksXG4gICAgcmVwbHlJZDogbnVsbCxcbiAgICBtZXNzYWdlVmlzaWJsZXM6IFtdLFxuICAgIG1lc3NhZ2VTdGF0dXNlczogW10sXG4gICAgbWVzc2FnZUhpc3RvcmllczogW10sXG4gICAgcmVwbGllczogQXJyYXkuZnJvbSh7IGxlbmd0aDogcmVwbGllc0NvdW50IH0pLm1hcCgoKSA9PiB7XG4gICAgICByZXR1cm4ge1xuICAgICAgICBpZDogQVhQRGF0YUdlbmVyYXRvci51dWlkKCksXG4gICAgICAgIGNvbnRlbnQ6IGA8cD4ke0FYUERhdGFHZW5lcmF0b3IucGljayhjb250ZW50U291cmNlKX08L3A+YCxcbiAgICAgICAgY29udGVudFR5cGU6IEFYUERhdGFHZW5lcmF0b3IucGljayhbJ3RleHQnXSksXG4gICAgICAgIG1lbWJlcklkOiBBWFBEYXRhR2VuZXJhdG9yLnV1aWQoKSxcbiAgICAgICAgbWVtYmVyVHlwZTogQVhQRGF0YUdlbmVyYXRvci5waWNrKFsndXNlcicsICdhZG1pbiddKSxcbiAgICAgICAgcm9vbUlkOiBBWFBEYXRhR2VuZXJhdG9yLnV1aWQoKSxcbiAgICAgICAgaXNQcml2YXRlOiBBWFBEYXRhR2VuZXJhdG9yLmJvb2xlYW4oKSxcbiAgICAgICAgcmVwbHlJZDogQVhQRGF0YUdlbmVyYXRvci51dWlkKCksXG4gICAgICAgIG1lc3NhZ2VWaXNpYmxlczogW10sXG4gICAgICAgIG1lc3NhZ2VTdGF0dXNlczogW10sXG4gICAgICAgIG1lc3NhZ2VIaXN0b3JpZXM6IFtdLFxuICAgICAgICBpc0FyY2hpdmVkOiBBWFBEYXRhR2VuZXJhdG9yLmJvb2xlYW4oKSxcbiAgICAgICAgaXNMaWtlZDogQVhQRGF0YUdlbmVyYXRvci5ib29sZWFuKCksXG4gICAgICAgIHJlYWN0aW9uc0NvdW50OiBBWFBEYXRhR2VuZXJhdG9yLm51bWJlcigwLCAxMCksXG4gICAgICAgIHJlcGxpZXNDb3VudDogMCxcbiAgICAgICAgdXNlcjoge1xuICAgICAgICAgIHVzZXJOYW1lOiBBWFBEYXRhR2VuZXJhdG9yLmZpcnN0TmFtZSgpLnRvTG93ZXJDYXNlKCksXG4gICAgICAgICAgZmlyc3ROYW1lOiBBWFBEYXRhR2VuZXJhdG9yLmZpcnN0TmFtZSgpLFxuICAgICAgICAgIGxhc3ROYW1lOiBBWFBEYXRhR2VuZXJhdG9yLmxhc3ROYW1lKCksXG4gICAgICAgICAgcGljdHVyZTogbnVsbCxcbiAgICAgICAgICBpZDogQVhQRGF0YUdlbmVyYXRvci51dWlkKCksXG4gICAgICAgIH0sXG4gICAgICB9O1xuICAgIH0pLFxuICAgIGlzQXJjaGl2ZWQ6IEFYUERhdGFHZW5lcmF0b3IuYm9vbGVhbigpLFxuICAgIGlzTGlrZWQ6IEFYUERhdGFHZW5lcmF0b3IuYm9vbGVhbigpLFxuICAgIHJlYWN0aW9uc0NvdW50OiBBWFBEYXRhR2VuZXJhdG9yLm51bWJlcigwLCAxMDApLFxuICAgIHJlcGxpZXNDb3VudDogcmVwbGllc0NvdW50LFxuICAgIHVzZXI6IHtcbiAgICAgIHVzZXJOYW1lOiBBWFBEYXRhR2VuZXJhdG9yLmZpcnN0TmFtZSgpLnRvTG93ZXJDYXNlKCksXG4gICAgICBmaXJzdE5hbWU6IEFYUERhdGFHZW5lcmF0b3IuZmlyc3ROYW1lKCksXG4gICAgICBsYXN0TmFtZTogQVhQRGF0YUdlbmVyYXRvci5sYXN0TmFtZSgpLFxuICAgICAgcGljdHVyZTogbnVsbCxcbiAgICAgIGlkOiBBWFBEYXRhR2VuZXJhdG9yLnV1aWQoKSxcbiAgICB9LFxuICB9O1xufSk7XG4iXX0=
@@ -1,6 +1,7 @@
1
+ export * from './api/comment.mock.service';
1
2
  export * from './api/comment.service';
2
3
  export * from './api/data-provider';
3
4
  export * from './api/file.service';
4
5
  export * from './api/module-designer.service';
5
6
  export * from './local/local-data-provider';
6
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL21vZHVsZXMvYmFja2VuZC9zcmMvbGliL2RhdGEvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyx1QkFBdUIsQ0FBQztBQUN0QyxjQUFjLHFCQUFxQixDQUFDO0FBQ3BDLGNBQWMsb0JBQW9CLENBQUM7QUFDbkMsY0FBYywrQkFBK0IsQ0FBQztBQUM5QyxjQUFjLDZCQUE2QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9hcGkvY29tbWVudC5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vYXBpL2RhdGEtcHJvdmlkZXInO1xuZXhwb3J0ICogZnJvbSAnLi9hcGkvZmlsZS5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vYXBpL21vZHVsZS1kZXNpZ25lci5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vbG9jYWwvbG9jYWwtZGF0YS1wcm92aWRlcic7XG4iXX0=
7
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL21vZHVsZXMvYmFja2VuZC9zcmMvbGliL2RhdGEvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyw0QkFBNEIsQ0FBQztBQUMzQyxjQUFjLHVCQUF1QixDQUFDO0FBQ3RDLGNBQWMscUJBQXFCLENBQUM7QUFDcEMsY0FBYyxvQkFBb0IsQ0FBQztBQUNuQyxjQUFjLCtCQUErQixDQUFDO0FBQzlDLGNBQWMsNkJBQTZCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2FwaS9jb21tZW50Lm1vY2suc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL2FwaS9jb21tZW50LnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9hcGkvZGF0YS1wcm92aWRlcic7XG5leHBvcnQgKiBmcm9tICcuL2FwaS9maWxlLnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9hcGkvbW9kdWxlLWRlc2lnbmVyLnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9sb2NhbC9sb2NhbC1kYXRhLXByb3ZpZGVyJztcbiJdfQ==
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Generated bundle index. Do not edit.
3
+ */
4
+ export * from './index';
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWNvcmV4LW1vZHVsZXMtbm90aWZpY2F0aW9uLW1hbmFnZW1lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJzL21vZHVsZXMvbm90aWZpY2F0aW9uLW1hbmFnZW1lbnQvc3JjL2Fjb3JleC1tb2R1bGVzLW5vdGlmaWNhdGlvbi1tYW5hZ2VtZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUgsY0FBYyxTQUFTLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEdlbmVyYXRlZCBidW5kbGUgaW5kZXguIERvIG5vdCBlZGl0LlxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vaW5kZXgnO1xuIl19
@@ -0,0 +1,4 @@
1
+ export * from './lib/notification-management.module';
2
+ export * from './lib/entities/notification-channel.entity';
3
+ export * from './lib/entities/notification-template.entity';
4
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJzL21vZHVsZXMvbm90aWZpY2F0aW9uLW1hbmFnZW1lbnQvc3JjL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsc0NBQXNDLENBQUM7QUFFckQsY0FBYyw0Q0FBNEMsQ0FBQztBQUMzRCxjQUFjLDZDQUE2QyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9saWIvbm90aWZpY2F0aW9uLW1hbmFnZW1lbnQubW9kdWxlJztcblxuZXhwb3J0ICogZnJvbSAnLi9saWIvZW50aXRpZXMvbm90aWZpY2F0aW9uLWNoYW5uZWwuZW50aXR5JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2VudGl0aWVzL25vdGlmaWNhdGlvbi10ZW1wbGF0ZS5lbnRpdHknO1xuIl19
@@ -0,0 +1,329 @@
1
+ import { AXPDataGenerator, AXPEntityCommandScope, AXPEntityQueryType } from '@acorex/platform/common';
2
+ import { applyFilterArray, applySortArray } from '@acorex/platform/core';
3
+ import { AXPWidgetsCatalog } from '@acorex/platform/layout/builder';
4
+ import { NotificationManagementService } from '../notification-management.service';
5
+ export async function notificationChannelEntityFactory(injector) {
6
+ const dataService = injector.get(NotificationManagementService);
7
+ const entityDef = {
8
+ module: 'notification-management',
9
+ name: 'notificationChannel',
10
+ source: 'notification-management.notificationChannel',
11
+ title: 'Notification Channel',
12
+ formats: {
13
+ individual: 'Channel',
14
+ plural: 'Channels',
15
+ },
16
+ relatedEntities: [],
17
+ groups: [
18
+ {
19
+ id: 'notificationChannel',
20
+ title: 'Notification Channel',
21
+ },
22
+ ],
23
+ properties: [
24
+ {
25
+ name: 'title',
26
+ title: 'Title',
27
+ groupId: 'notificationChannel',
28
+ schema: {
29
+ dataType: 'string',
30
+ interface: {
31
+ type: AXPWidgetsCatalog.text,
32
+ },
33
+ },
34
+ validations: [
35
+ {
36
+ rule: 'required',
37
+ },
38
+ ],
39
+ },
40
+ {
41
+ name: 'template',
42
+ title: 'Template',
43
+ groupId: 'notificationChannel',
44
+ schema: {
45
+ dataType: 'string',
46
+ interface: {
47
+ type: AXPWidgetsCatalog.lookup,
48
+ options: {
49
+ entity: 'template-management.globalTemplate',
50
+ expose: { source: 'content', target: 'body' },
51
+ },
52
+ },
53
+ },
54
+ },
55
+ {
56
+ name: 'body',
57
+ title: 'Body',
58
+ groupId: 'notificationChannel',
59
+ schema: {
60
+ dataType: 'string',
61
+ interface: {
62
+ type: AXPWidgetsCatalog.largeText,
63
+ },
64
+ },
65
+ validations: [
66
+ {
67
+ rule: 'required',
68
+ },
69
+ ],
70
+ },
71
+ {
72
+ name: 'channel',
73
+ title: 'Channel',
74
+ groupId: 'notificationChannel',
75
+ schema: {
76
+ dataType: 'string',
77
+ interface: {
78
+ type: AXPWidgetsCatalog.select,
79
+ options: {
80
+ valueField: 'name',
81
+ textField: 'title',
82
+ dataSource: [
83
+ { title: 'SMS', name: 'sms' },
84
+ { title: 'Email', name: 'email' },
85
+ { title: 'In App', name: 'inApp' },
86
+ ],
87
+ direction: 'horizontal',
88
+ multiple: false,
89
+ },
90
+ },
91
+ },
92
+ validations: [
93
+ {
94
+ rule: 'required',
95
+ },
96
+ ],
97
+ },
98
+ ],
99
+ columns: [{ name: 'title' }, { name: 'body' }, { name: 'channel' }],
100
+ commands: {
101
+ create: {
102
+ execute: async (data) => {
103
+ const entity = Object.assign(data, { id: AXPDataGenerator.uuid() });
104
+ dataService.notificationChannelDataProvider.insertOne(entity);
105
+ return Promise.resolve(entity);
106
+ },
107
+ },
108
+ delete: {
109
+ execute: async (id) => {
110
+ await await dataService.notificationChannelDataProvider.deleteOne(id);
111
+ return Promise.resolve();
112
+ },
113
+ },
114
+ update: {
115
+ execute: async (data) => {
116
+ debugger;
117
+ return new Promise((resolve) => {
118
+ setTimeout(async () => {
119
+ await dataService.notificationChannelDataProvider.updateOne(data.id, data);
120
+ resolve(data);
121
+ }, 1000);
122
+ });
123
+ },
124
+ },
125
+ },
126
+ queries: {
127
+ byKey: {
128
+ execute: async (id) => {
129
+ return new Promise((resolve) => {
130
+ setTimeout(async () => {
131
+ const entity = await dataService.notificationChannelDataProvider.getOne(id);
132
+ resolve(entity);
133
+ }, 500);
134
+ });
135
+ },
136
+ type: AXPEntityQueryType.Single,
137
+ },
138
+ list: {
139
+ execute: async (e) => {
140
+ const list = await dataService.notificationChannelDataProvider.getAll();
141
+ const sortedItems = applySortArray(list, e.sort);
142
+ const filteredItems = applyFilterArray(sortedItems, e.filter ? [e.filter] : []);
143
+ return Promise.resolve({
144
+ total: filteredItems.length,
145
+ items: filteredItems.slice(e.skip, (e.skip ?? 0) + (e.take ?? 0)),
146
+ });
147
+ },
148
+ type: AXPEntityQueryType.List,
149
+ },
150
+ },
151
+ interfaces: {
152
+ master: {
153
+ create: {
154
+ sections: [
155
+ {
156
+ id: 'notificationChannel',
157
+ },
158
+ ],
159
+ properties: [
160
+ {
161
+ name: 'title',
162
+ layout: {
163
+ positions: {
164
+ lg: {
165
+ colSpan: 12,
166
+ },
167
+ },
168
+ },
169
+ },
170
+ {
171
+ name: 'body',
172
+ layout: {
173
+ positions: {
174
+ lg: {
175
+ colSpan: 12,
176
+ },
177
+ },
178
+ },
179
+ },
180
+ {
181
+ name: 'template',
182
+ layout: {
183
+ positions: {
184
+ lg: {
185
+ colSpan: 12,
186
+ },
187
+ },
188
+ },
189
+ },
190
+ {
191
+ name: 'channel',
192
+ layout: {
193
+ positions: {
194
+ lg: {
195
+ colSpan: 12,
196
+ },
197
+ },
198
+ },
199
+ },
200
+ ],
201
+ },
202
+ update: {
203
+ sections: [
204
+ {
205
+ id: 'notificationChannel',
206
+ },
207
+ ],
208
+ properties: [
209
+ {
210
+ name: 'title',
211
+ layout: {
212
+ positions: {
213
+ lg: {
214
+ colSpan: 12,
215
+ },
216
+ },
217
+ },
218
+ },
219
+ {
220
+ name: 'body',
221
+ layout: {
222
+ positions: {
223
+ lg: {
224
+ colSpan: 12,
225
+ },
226
+ },
227
+ },
228
+ },
229
+ {
230
+ name: 'channel',
231
+ layout: {
232
+ positions: {
233
+ lg: {
234
+ colSpan: 12,
235
+ },
236
+ },
237
+ },
238
+ },
239
+ ],
240
+ },
241
+ single: {
242
+ title: '{{title}}',
243
+ sections: [
244
+ {
245
+ id: 'notificationChannel',
246
+ },
247
+ ],
248
+ properties: [
249
+ {
250
+ name: 'title',
251
+ layout: {
252
+ positions: {
253
+ lg: {
254
+ colSpan: 6,
255
+ },
256
+ },
257
+ },
258
+ },
259
+ {
260
+ name: 'body',
261
+ layout: {
262
+ positions: {
263
+ lg: {
264
+ colSpan: 6,
265
+ },
266
+ },
267
+ },
268
+ },
269
+ {
270
+ name: 'channel',
271
+ layout: {
272
+ positions: {
273
+ lg: {
274
+ colSpan: 12,
275
+ },
276
+ },
277
+ },
278
+ },
279
+ ],
280
+ actions: [],
281
+ },
282
+ list: {
283
+ actions: [
284
+ {
285
+ title: 'Create New',
286
+ command: 'create-entity',
287
+ priority: 'primary',
288
+ type: 'create',
289
+ scope: AXPEntityCommandScope.TypeLevel,
290
+ },
291
+ {
292
+ title: 'Delete Items',
293
+ command: 'delete-entity',
294
+ priority: 'primary',
295
+ type: 'delete',
296
+ scope: AXPEntityCommandScope.Selected,
297
+ },
298
+ {
299
+ title: 'Details',
300
+ command: 'open-entity',
301
+ priority: 'primary',
302
+ type: 'view',
303
+ scope: AXPEntityCommandScope.Individual,
304
+ },
305
+ {
306
+ title: 'Delete',
307
+ command: 'delete-entity',
308
+ priority: 'primary',
309
+ type: 'delete',
310
+ scope: AXPEntityCommandScope.Individual,
311
+ },
312
+ ],
313
+ views: [
314
+ {
315
+ name: 'all',
316
+ title: 'All Items',
317
+ fixed: true,
318
+ columns: [],
319
+ conditions: [],
320
+ sorts: [],
321
+ },
322
+ ],
323
+ },
324
+ },
325
+ },
326
+ };
327
+ return entityDef;
328
+ }
329
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm90aWZpY2F0aW9uLWNoYW5uZWwuZW50aXR5LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tb2R1bGVzL25vdGlmaWNhdGlvbi1tYW5hZ2VtZW50L3NyYy9saWIvZW50aXRpZXMvbm90aWZpY2F0aW9uLWNoYW5uZWwuZW50aXR5LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxnQkFBZ0IsRUFBYSxxQkFBcUIsRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ2pILE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxjQUFjLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUN6RSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUVwRSxPQUFPLEVBQUUsNkJBQTZCLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUVuRixNQUFNLENBQUMsS0FBSyxVQUFVLGdDQUFnQyxDQUFDLFFBQWtCO0lBQ3ZFLE1BQU0sV0FBVyxHQUFHLFFBQVEsQ0FBQyxHQUFHLENBQUMsNkJBQTZCLENBQUMsQ0FBQztJQUVoRSxNQUFNLFNBQVMsR0FBYztRQUMzQixNQUFNLEVBQUUseUJBQXlCO1FBQ2pDLElBQUksRUFBRSxxQkFBcUI7UUFDM0IsTUFBTSxFQUFFLDZDQUE2QztRQUNyRCxLQUFLLEVBQUUsc0JBQXNCO1FBQzdCLE9BQU8sRUFBRTtZQUNQLFVBQVUsRUFBRSxTQUFTO1lBQ3JCLE1BQU0sRUFBRSxVQUFVO1NBQ25CO1FBQ0QsZUFBZSxFQUFFLEVBQUU7UUFDbkIsTUFBTSxFQUFFO1lBQ047Z0JBQ0UsRUFBRSxFQUFFLHFCQUFxQjtnQkFDekIsS0FBSyxFQUFFLHNCQUFzQjthQUM5QjtTQUNGO1FBQ0QsVUFBVSxFQUFFO1lBQ1Y7Z0JBQ0UsSUFBSSxFQUFFLE9BQU87Z0JBQ2IsS0FBSyxFQUFFLE9BQU87Z0JBQ2QsT0FBTyxFQUFFLHFCQUFxQjtnQkFDOUIsTUFBTSxF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LFNBQVMsQ0FBQztBQUNuQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQVhQRGF0YUdlbmVyYXRvciwgQVhQRW50aXR5LCBBWFBFbnRpdHlDb21tYW5kU2NvcGUsIEFYUEVudGl0eVF1ZXJ5VHlwZSB9IGZyb20gJ0BhY29yZXgvcGxhdGZvcm0vY29tbW9uJztcbmltcG9ydCB7IGFwcGx5RmlsdGVyQXJyYXksIGFwcGx5U29ydEFycmF5IH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9jb3JlJztcbmltcG9ydCB7IEFYUFdpZGdldHNDYXRhbG9nIH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9sYXlvdXQvYnVpbGRlcic7XG5pbXBvcnQgeyBJbmplY3RvciB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTm90aWZpY2F0aW9uTWFuYWdlbWVudFNlcnZpY2UgfSBmcm9tICcuLi9ub3RpZmljYXRpb24tbWFuYWdlbWVudC5zZXJ2aWNlJztcblxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIG5vdGlmaWNhdGlvbkNoYW5uZWxFbnRpdHlGYWN0b3J5KGluamVjdG9yOiBJbmplY3Rvcik6IFByb21pc2U8QVhQRW50aXR5IHwgbnVsbD4ge1xuICBjb25zdCBkYXRhU2VydmljZSA9IGluamVjdG9yLmdldChOb3RpZmljYXRpb25NYW5hZ2VtZW50U2VydmljZSk7XG5cbiAgY29uc3QgZW50aXR5RGVmOiBBWFBFbnRpdHkgPSB7XG4gICAgbW9kdWxlOiAnbm90aWZpY2F0aW9uLW1hbmFnZW1lbnQnLFxuICAgIG5hbWU6ICdub3RpZmljYXRpb25DaGFubmVsJyxcbiAgICBzb3VyY2U6ICdub3RpZmljYXRpb24tbWFuYWdlbWVudC5ub3RpZmljYXRpb25DaGFubmVsJyxcbiAgICB0aXRsZTogJ05vdGlmaWNhdGlvbiBDaGFubmVsJyxcbiAgICBmb3JtYXRzOiB7XG4gICAgICBpbmRpdmlkdWFsOiAnQ2hhbm5lbCcsXG4gICAgICBwbHVyYWw6ICdDaGFubmVscycsXG4gICAgfSxcbiAgICByZWxhdGVkRW50aXRpZXM6IFtdLFxuICAgIGdyb3VwczogW1xuICAgICAge1xuICAgICAgICBpZDogJ25vdGlmaWNhdGlvbkNoYW5uZWwnLFxuICAgICAgICB0aXRsZTogJ05vdGlmaWNhdGlvbiBDaGFubmVsJyxcbiAgICAgIH0sXG4gICAgXSxcbiAgICBwcm9wZXJ0aWVzOiBbXG4gICAgICB7XG4gICAgICAgIG5hbWU6ICd0aXRsZScsXG4gICAgICAgIHRpdGxlOiAnVGl0bGUnLFxuICAgICAgICBncm91cElkOiAnbm90aWZpY2F0aW9uQ2hhbm5lbCcsXG4gICAgICAgIHNjaGVtYToge1xuICAgICAgICAgIGRhdGFUeXBlOiAnc3RyaW5nJyxcbiAgICAgICAgICBpbnRlcmZhY2U6IHtcbiAgICAgICAgICAgIHR5cGU6IEFYUFdpZGdldHNDYXRhbG9nLnRleHQsXG4gICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgICAgdmFsaWRhdGlvbnM6IFtcbiAgICAgICAgICB7XG4gICAgICAgICAgICBydWxlOiAncmVxdWlyZWQnLFxuICAgICAgICAgIH0sXG4gICAgICAgIF0sXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBuYW1lOiAndGVtcGxhdGUnLFxuICAgICAgICB0aXRsZTogJ1RlbXBsYXRlJyxcbiAgICAgICAgZ3JvdXBJZDogJ25vdGlmaWNhdGlvbkNoYW5uZWwnLFxuICAgICAgICBzY2hlbWE6IHtcbiAgICAgICAgICBkYXRhVHlwZTogJ3N0cmluZycsXG4gICAgICAgICAgaW50ZXJmYWNlOiB7XG4gICAgICAgICAgICB0eXBlOiBBWFBXaWRnZXRzQ2F0YWxvZy5sb29rdXAsXG4gICAgICAgICAgICBvcHRpb25zOiB7XG4gICAgICAgICAgICAgIGVudGl0eTogJ3RlbXBsYXRlLW1hbmFnZW1lbnQuZ2xvYmFsVGVtcGxhdGUnLFxuICAgICAgICAgICAgICBleHBvc2U6IHsgc291cmNlOiAnY29udGVudCcsIHRhcmdldDogJ2JvZHknIH0sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBuYW1lOiAnYm9keScsXG4gICAgICAgIHRpdGxlOiAnQm9keScsXG4gICAgICAgIGdyb3VwSWQ6ICdub3RpZmljYXRpb25DaGFubmVsJyxcbiAgICAgICAgc2NoZW1hOiB7XG4gICAgICAgICAgZGF0YVR5cGU6ICdzdHJpbmcnLFxuICAgICAgICAgIGludGVyZmFjZToge1xuICAgICAgICAgICAgdHlwZTogQVhQV2lkZ2V0c0NhdGFsb2cubGFyZ2VUZXh0LFxuICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICAgIHZhbGlkYXRpb25zOiBbXG4gICAgICAgICAge1xuICAgICAgICAgICAgcnVsZTogJ3JlcXVpcmVkJyxcbiAgICAgICAgICB9LFxuICAgICAgICBdLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgbmFtZTogJ2NoYW5uZWwnLFxuICAgICAgICB0aXRsZTogJ0NoYW5uZWwnLFxuICAgICAgICBncm91cElkOiAnbm90aWZpY2F0aW9uQ2hhbm5lbCcsXG4gICAgICAgIHNjaGVtYToge1xuICAgICAgICAgIGRhdGFUeXBlOiAnc3RyaW5nJyxcbiAgICAgICAgICBpbnRlcmZhY2U6IHtcbiAgICAgICAgICAgIHR5cGU6IEFYUFdpZGdldHNDYXRhbG9nLnNlbGVjdCxcbiAgICAgICAgICAgIG9wdGlvbnM6IHtcbiAgICAgICAgICAgICAgdmFsdWVGaWVsZDogJ25hbWUnLFxuICAgICAgICAgICAgICB0ZXh0RmllbGQ6ICd0aXRsZScsXG4gICAgICAgICAgICAgIGRhdGFTb3VyY2U6IFtcbiAgICAgICAgICAgICAgICB7IHRpdGxlOiAnU01TJywgbmFtZTogJ3NtcycgfSxcbiAgICAgICAgICAgICAgICB7IHRpdGxlOiAnRW1haWwnLCBuYW1lOiAnZW1haWwnIH0sXG4gICAgICAgICAgICAgICAgeyB0aXRsZTogJ0luIEFwcCcsIG5hbWU6ICdpbkFwcCcgfSxcbiAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgZGlyZWN0aW9uOiAnaG9yaXpvbnRhbCcsXG4gICAgICAgICAgICAgIG11bHRpcGxlOiBmYWxzZSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgICAgdmFsaWRhdGlvbnM6IFtcbiAgICAgICAgICB7XG4gICAgICAgICAgICBydWxlOiAncmVxdWlyZWQnLFxuICAgICAgICAgIH0sXG4gICAgICAgIF0sXG4gICAgICB9LFxuICAgIF0sXG4gICAgY29sdW1uczogW3sgbmFtZTogJ3RpdGxlJyB9LCB7IG5hbWU6ICdib2R5JyB9LCB7IG5hbWU6ICdjaGFubmVsJyB9XSxcbiAgICBjb21tYW5kczoge1xuICAgICAgY3JlYXRlOiB7XG4gICAgICAgIGV4ZWN1dGU6IGFzeW5jIChkYXRhOiBhbnkpID0+IHtcbiAgICAgICAgICBjb25zdCBlbnRpdHkgPSBPYmplY3QuYXNzaWduKGRhdGEsIHsgaWQ6IEFYUERhdGFHZW5lcmF0b3IudXVpZCgpIH0pO1xuXG4gICAgICAgICAgZGF0YVNlcnZpY2Uubm90aWZpY2F0aW9uQ2hhbm5lbERhdGFQcm92aWRlci5pbnNlcnRPbmUoZW50aXR5KTtcbiAgICAgICAgICByZXR1cm4gUHJvbWlzZS5yZXNvbHZlKGVudGl0eSk7XG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgICAgZGVsZXRlOiB7XG4gICAgICAgIGV4ZWN1dGU6IGFzeW5jIChpZDogYW55KSA9PiB7XG4gICAgICAgICAgYXdhaXQgYXdhaXQgZGF0YVNlcnZpY2Uubm90aWZpY2F0aW9uQ2hhbm5lbERhdGFQcm92aWRlci5kZWxldGVPbmUoaWQpO1xuICAgICAgICAgIHJldHVybiBQcm9taXNlLnJlc29sdmUoKTtcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgICB1cGRhdGU6IHtcbiAgICAgICAgZXhlY3V0ZTogYXN5bmMgKGRhdGE6IGFueSkgPT4ge1xuICAgICAgICAgIGRlYnVnZ2VyO1xuICAgICAgICAgIHJldHVybiBuZXcgUHJvbWlzZSgocmVzb2x2ZSkgPT4ge1xuICAgICAgICAgICAgc2V0VGltZW91dChhc3luYyAoKSA9PiB7XG4gICAgICAgICAgICAgIGF3YWl0IGRhdGFTZXJ2aWNlLm5vdGlmaWNhdGlvbkNoYW5uZWxEYXRhUHJvdmlkZXIudXBkYXRlT25lKGRhdGEuaWQsIGRhdGEpO1xuICAgICAgICAgICAgICByZXNvbHZlKGRhdGEpO1xuICAgICAgICAgICAgfSwgMTAwMCk7XG4gICAgICAgICAgfSk7XG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgIH0sXG4gICAgcXVlcmllczoge1xuICAgICAgYnlLZXk6IHtcbiAgICAgICAgZXhlY3V0ZTogYXN5bmMgKGlkOiBzdHJpbmcpID0+IHtcbiAgICAgICAgICByZXR1cm4gbmV3IFByb21pc2UoKHJlc29sdmUpID0+IHtcbiAgICAgICAgICAgIHNldFRpbWVvdXQoYXN5bmMgKCkgPT4ge1xuICAgICAgICAgICAgICBjb25zdCBlbnRpdHkgPSBhd2FpdCBkYXRhU2VydmljZS5ub3RpZmljYXRpb25DaGFubmVsRGF0YVByb3ZpZGVyLmdldE9uZShpZCk7XG4gICAgICAgICAgICAgIHJlc29sdmUoZW50aXR5KTtcbiAgICAgICAgICAgIH0sIDUwMCk7XG4gICAgICAgICAgfSk7XG4gICAgICAgIH0sXG4gICAgICAgIHR5cGU6IEFYUEVudGl0eVF1ZXJ5VHlwZS5TaW5nbGUsXG4gICAgICB9LFxuICAgICAgbGlzdDoge1xuICAgICAgICBleGVjdXRlOiBhc3luYyAoZTogYW55KSA9PiB7XG4gICAgICAgICAgY29uc3QgbGlzdCA9IGF3YWl0IGRhdGFTZXJ2aWNlLm5vdGlmaWNhdGlvbkNoYW5uZWxEYXRhUHJvdmlkZXIuZ2V0QWxsKCk7XG4gICAgICAgICAgY29uc3Qgc29ydGVkSXRlbXMgPSBhcHBseVNvcnRBcnJheShsaXN0LCBlLnNvcnQpO1xuICAgICAgICAgIGNvbnN0IGZpbHRlcmVkSXRlbXMgPSBhcHBseUZpbHRlckFycmF5KHNvcnRlZEl0ZW1zLCBlLmZpbHRlciA/IFtlLmZpbHRlcl0gOiBbXSk7XG4gICAgICAgICAgcmV0dXJuIFByb21pc2UucmVzb2x2ZSh7XG4gICAgICAgICAgICB0b3RhbDogZmlsdGVyZWRJdGVtcy5sZW5ndGgsXG4gICAgICAgICAgICBpdGVtczogZmlsdGVyZWRJdGVtcy5zbGljZShlLnNraXAsIChlLnNraXAgPz8gMCkgKyAoZS50YWtlID8/IDApKSxcbiAgICAgICAgICB9KTtcbiAgICAgICAgfSxcbiAgICAgICAgdHlwZTogQVhQRW50aXR5UXVlcnlUeXBlLkxpc3QsXG4gICAgICB9LFxuICAgIH0sXG4gICAgaW50ZXJmYWNlczoge1xuICAgICAgbWFzdGVyOiB7XG4gICAgICAgIGNyZWF0ZToge1xuICAgICAgICAgIHNlY3Rpb25zOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIGlkOiAnbm90aWZpY2F0aW9uQ2hhbm5lbCcsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIF0sXG4gICAgICAgICAgcHJvcGVydGllczogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBuYW1lOiAndGl0bGUnLFxuICAgICAgICAgICAgICBsYXlvdXQ6IHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbnM6IHtcbiAgICAgICAgICAgICAgICAgIGxnOiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbFNwYW46IDEyLFxuICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgbmFtZTogJ2JvZHknLFxuICAgICAgICAgICAgICBsYXlvdXQ6IHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbnM6IHtcbiAgICAgICAgICAgICAgICAgIGxnOiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbFNwYW46IDEyLFxuICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgbmFtZTogJ3RlbXBsYXRlJyxcbiAgICAgICAgICAgICAgbGF5b3V0OiB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb25zOiB7XG4gICAgICAgICAgICAgICAgICBsZzoge1xuICAgICAgICAgICAgICAgICAgICBjb2xTcGFuOiAxMixcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIG5hbWU6ICdjaGFubmVsJyxcbiAgICAgICAgICAgICAgbGF5b3V0OiB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb25zOiB7XG4gICAgICAgICAgICAgICAgICBsZzoge1xuICAgICAgICAgICAgICAgICAgICBjb2xTcGFuOiAxMixcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgXSxcbiAgICAgICAgfSxcbiAgICAgICAgdXBkYXRlOiB7XG4gICAgICAgICAgc2VjdGlvbnM6IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgaWQ6ICdub3RpZmljYXRpb25DaGFubmVsJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgXSxcbiAgICAgICAgICBwcm9wZXJ0aWVzOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIG5hbWU6ICd0aXRsZScsXG4gICAgICAgICAgICAgIGxheW91dDoge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uczoge1xuICAgICAgICAgICAgICAgICAgbGc6IHtcbiAgICAgICAgICAgICAgICAgICAgY29sU3BhbjogMTIsXG4gICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBuYW1lOiAnYm9keScsXG4gICAgICAgICAgICAgIGxheW91dDoge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uczoge1xuICAgICAgICAgICAgICAgICAgbGc6IHtcbiAgICAgICAgICAgICAgICAgICAgY29sU3BhbjogMTIsXG4gICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBuYW1lOiAnY2hhbm5lbCcsXG4gICAgICAgICAgICAgIGxheW91dDoge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uczoge1xuICAgICAgICAgICAgICAgICAgbGc6IHtcbiAgICAgICAgICAgICAgICAgICAgY29sU3BhbjogMTIsXG4gICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIF0sXG4gICAgICAgIH0sXG4gICAgICAgIHNpbmdsZToge1xuICAgICAgICAgIHRpdGxlOiAne3t0aXRsZX19JyxcbiAgICAgICAgICBzZWN0aW9uczogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBpZDogJ25vdGlmaWNhdGlvbkNoYW5uZWwnLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICBdLFxuICAgICAgICAgIHByb3BlcnRpZXM6IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgbmFtZTogJ3RpdGxlJyxcbiAgICAgICAgICAgICAgbGF5b3V0OiB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb25zOiB7XG4gICAgICAgICAgICAgICAgICBsZzoge1xuICAgICAgICAgICAgICAgICAgICBjb2xTcGFuOiA2LFxuICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgbmFtZTogJ2JvZHknLFxuICAgICAgICAgICAgICBsYXlvdXQ6IHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbnM6IHtcbiAgICAgICAgICAgICAgICAgIGxnOiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbFNwYW46IDYsXG4gICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBuYW1lOiAnY2hhbm5lbCcsXG4gICAgICAgICAgICAgIGxheW91dDoge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uczoge1xuICAgICAgICAgICAgICAgICAgbGc6IHtcbiAgICAgICAgICAgICAgICAgICAgY29sU3BhbjogMTIsXG4gICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIF0sXG4gICAgICAgICAgYWN0aW9uczogW10sXG4gICAgICAgIH0sXG4gICAgICAgIGxpc3Q6IHtcbiAgICAgICAgICBhY3Rpb25zOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIHRpdGxlOiAnQ3JlYXRlIE5ldycsXG4gICAgICAgICAgICAgIGNvbW1hbmQ6ICdjcmVhdGUtZW50aXR5JyxcbiAgICAgICAgICAgICAgcHJpb3JpdHk6ICdwcmltYXJ5JyxcbiAgICAgICAgICAgICAgdHlwZTogJ2NyZWF0ZScsXG4gICAgICAgICAgICAgIHNjb3BlOiBBWFBFbnRpdHlDb21tYW5kU2NvcGUuVHlwZUxldmVsLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgdGl0bGU6ICdEZWxldGUgSXRlbXMnLFxuICAgICAgICAgICAgICBjb21tYW5kOiAnZGVsZXRlLWVudGl0eScsXG4gICAgICAgICAgICAgIHByaW9yaXR5OiAncHJpbWFyeScsXG4gICAgICAgICAgICAgIHR5cGU6ICdkZWxldGUnLFxuICAgICAgICAgICAgICBzY29wZTogQVhQRW50aXR5Q29tbWFuZFNjb3BlLlNlbGVjdGVkLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgdGl0bGU6ICdEZXRhaWxzJyxcbiAgICAgICAgICAgICAgY29tbWFuZDogJ29wZW4tZW50aXR5JyxcbiAgICAgICAgICAgICAgcHJpb3JpdHk6ICdwcmltYXJ5JyxcbiAgICAgICAgICAgICAgdHlwZTogJ3ZpZXcnLFxuICAgICAgICAgICAgICBzY29wZTogQVhQRW50aXR5Q29tbWFuZFNjb3BlLkluZGl2aWR1YWwsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICB0aXRsZTogJ0RlbGV0ZScsXG4gICAgICAgICAgICAgIGNvbW1hbmQ6ICdkZWxldGUtZW50aXR5JyxcbiAgICAgICAgICAgICAgcHJpb3JpdHk6ICdwcmltYXJ5JyxcbiAgICAgICAgICAgICAgdHlwZTogJ2RlbGV0ZScsXG4gICAgICAgICAgICAgIHNjb3BlOiBBWFBFbnRpdHlDb21tYW5kU2NvcGUuSW5kaXZpZHVhbCxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgXSxcbiAgICAgICAgICB2aWV3czogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBuYW1lOiAnYWxsJyxcbiAgICAgICAgICAgICAgdGl0bGU6ICdBbGwgSXRlbXMnLFxuICAgICAgICAgICAgICBmaXhlZDogdHJ1ZSxcbiAgICAgICAgICAgICAgY29sdW1uczogW10sXG4gICAgICAgICAgICAgIGNvbmRpdGlvbnM6IFtdLFxuICAgICAgICAgICAgICBzb3J0czogW10sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIF0sXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgIH0sXG4gIH07XG5cbiAgcmV0dXJuIGVudGl0eURlZjtcbn1cbiJdfQ==