@acorex/modules 18.0.14 → 18.0.15

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 (45) hide show
  1. package/application-management/index.d.ts +8 -0
  2. package/application-management/lib/application-management-mock-data.d.ts +75 -0
  3. package/application-management/lib/application-management.service.d.ts +21 -0
  4. package/application-management/lib/application-module.entity.d.ts +3 -0
  5. package/application-management/lib/applications.entity.d.ts +3 -0
  6. package/application-management/lib/edition.entity.d.ts +3 -0
  7. package/application-management/lib/entity.entity.d.ts +3 -0
  8. package/application-management/lib/feature.entity.d.ts +3 -0
  9. package/application-management/lib/modules.entity.d.ts +3 -0
  10. package/application-management/lib/permission.entity.d.ts +3 -0
  11. package/esm2022/application-management/index.mjs +9 -1
  12. package/esm2022/application-management/lib/application-management-mock-data.mjs +89 -0
  13. package/esm2022/application-management/lib/application-management.service.mjs +60 -0
  14. package/esm2022/application-management/lib/application-module.entity.mjs +273 -0
  15. package/esm2022/application-management/lib/applications.entity.mjs +311 -0
  16. package/esm2022/application-management/lib/edition.entity.mjs +284 -0
  17. package/esm2022/application-management/lib/entity.entity.mjs +284 -0
  18. package/esm2022/application-management/lib/feature.entity.mjs +284 -0
  19. package/esm2022/application-management/lib/modules.entity.mjs +324 -0
  20. package/esm2022/application-management/lib/permission.entity.mjs +284 -0
  21. package/esm2022/auth/lib/account/account.module.mjs +1 -6
  22. package/esm2022/backend/lib/auth/oidc/oidc.strategy.mjs +2 -3
  23. package/esm2022/backend/lib/data/api/data-provider.mjs +5 -3
  24. package/fesm2022/acorex-modules-application-management.mjs +2165 -2
  25. package/fesm2022/acorex-modules-application-management.mjs.map +1 -1
  26. package/fesm2022/{acorex-modules-auth-acorex-modules-auth-DDSvztIU.mjs → acorex-modules-auth-acorex-modules-auth-BD7I4S8c.mjs} +8 -13
  27. package/fesm2022/{acorex-modules-auth-acorex-modules-auth-DDSvztIU.mjs.map → acorex-modules-auth-acorex-modules-auth-BD7I4S8c.mjs.map} +1 -1
  28. package/fesm2022/{acorex-modules-auth-app-chooser.component-CQ87lFLo.mjs → acorex-modules-auth-app-chooser.component-Cfl1D1Cw.mjs} +2 -2
  29. package/fesm2022/{acorex-modules-auth-app-chooser.component-CQ87lFLo.mjs.map → acorex-modules-auth-app-chooser.component-Cfl1D1Cw.mjs.map} +1 -1
  30. package/fesm2022/{acorex-modules-auth-login.module-Ceocgnz0.mjs → acorex-modules-auth-login.module-BQG4ObmU.mjs} +4 -4
  31. package/fesm2022/{acorex-modules-auth-login.module-Ceocgnz0.mjs.map → acorex-modules-auth-login.module-BQG4ObmU.mjs.map} +1 -1
  32. package/fesm2022/{acorex-modules-auth-master.layout-D30jFVFm.mjs → acorex-modules-auth-master.layout-DoPCP7C0.mjs} +2 -2
  33. package/fesm2022/{acorex-modules-auth-master.layout-D30jFVFm.mjs.map → acorex-modules-auth-master.layout-DoPCP7C0.mjs.map} +1 -1
  34. package/fesm2022/{acorex-modules-auth-password.component-QQakXucW.mjs → acorex-modules-auth-password.component-CfhiS2hO.mjs} +2 -2
  35. package/fesm2022/{acorex-modules-auth-password.component-QQakXucW.mjs.map → acorex-modules-auth-password.component-CfhiS2hO.mjs.map} +1 -1
  36. package/fesm2022/{acorex-modules-auth-password.component-DvmIgK3z.mjs → acorex-modules-auth-password.component-fyMD7oKR.mjs} +2 -2
  37. package/fesm2022/{acorex-modules-auth-password.component-DvmIgK3z.mjs.map → acorex-modules-auth-password.component-fyMD7oKR.mjs.map} +1 -1
  38. package/fesm2022/{acorex-modules-auth-routes-Bu1uHALz.mjs → acorex-modules-auth-routes-95DQOnjS.mjs} +2 -2
  39. package/fesm2022/{acorex-modules-auth-routes-Bu1uHALz.mjs.map → acorex-modules-auth-routes-95DQOnjS.mjs.map} +1 -1
  40. package/fesm2022/{acorex-modules-auth-two-factor.module-CEcPMx4l.mjs → acorex-modules-auth-two-factor.module-BkErlA-n.mjs} +2 -2
  41. package/fesm2022/{acorex-modules-auth-two-factor.module-CEcPMx4l.mjs.map → acorex-modules-auth-two-factor.module-BkErlA-n.mjs.map} +1 -1
  42. package/fesm2022/acorex-modules-auth.mjs +1 -1
  43. package/fesm2022/acorex-modules-backend.mjs +5 -4
  44. package/fesm2022/acorex-modules-backend.mjs.map +1 -1
  45. package/package.json +7 -7
@@ -1 +1,9 @@
1
1
  export * from './lib/application-management.module';
2
+ export * from './lib/application-management.service';
3
+ export * from './lib/application-module.entity';
4
+ export * from './lib/applications.entity';
5
+ export * from './lib/edition.entity';
6
+ export * from './lib/entity.entity';
7
+ export * from './lib/feature.entity';
8
+ export * from './lib/modules.entity';
9
+ export * from './lib/permission.entity';
@@ -0,0 +1,75 @@
1
+ export declare const APPLICATIONS: {
2
+ id: string;
3
+ name: string;
4
+ title: string;
5
+ isArchived: boolean;
6
+ }[];
7
+ export declare const MODULES: {
8
+ id: string;
9
+ name: string;
10
+ title: string;
11
+ isArchived: boolean;
12
+ }[];
13
+ export declare const APPLICATIONS_MODULES: {
14
+ id: string;
15
+ application: {
16
+ id: string;
17
+ name: string;
18
+ title: string;
19
+ isArchived: boolean;
20
+ };
21
+ module: {
22
+ id: string;
23
+ name: string;
24
+ title: string;
25
+ isArchived: boolean;
26
+ };
27
+ }[];
28
+ export declare const EDITIONS: {
29
+ id: string;
30
+ application: {
31
+ id: string;
32
+ name: string;
33
+ title: string;
34
+ isArchived: boolean;
35
+ };
36
+ name: string;
37
+ title: string;
38
+ isArchived: boolean;
39
+ }[];
40
+ export declare const FEATURES: {
41
+ id: string;
42
+ module: {
43
+ id: string;
44
+ name: string;
45
+ title: string;
46
+ isArchived: boolean;
47
+ };
48
+ name: string;
49
+ title: string;
50
+ isArchived: boolean;
51
+ }[];
52
+ export declare const ENTITIES: {
53
+ id: string;
54
+ module: {
55
+ id: string;
56
+ name: string;
57
+ title: string;
58
+ isArchived: boolean;
59
+ };
60
+ name: string;
61
+ title: string;
62
+ isArchived: boolean;
63
+ }[];
64
+ export declare const PERMISSIONS: {
65
+ id: string;
66
+ module: {
67
+ id: string;
68
+ name: string;
69
+ title: string;
70
+ isArchived: boolean;
71
+ };
72
+ name: string;
73
+ title: string;
74
+ isArchived: boolean;
75
+ }[];
@@ -0,0 +1,21 @@
1
+ import { Injector } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ export declare class AXPApplicationManagementService {
4
+ protected _applicationModuleDataProvider: any;
5
+ protected _applicationDataProvider: any;
6
+ protected _moduleDataProvider: any;
7
+ protected _editionDataProvider: any;
8
+ protected _featureDataProvider: any;
9
+ protected _entityDataProvider: any;
10
+ protected _permissionDataProvider: any;
11
+ constructor(injector: Injector);
12
+ get applicationDataProvider(): any;
13
+ get moduleDataProvider(): any;
14
+ get applicationModuleDataProvider(): any;
15
+ get editionDataProvider(): any;
16
+ get featureDataProvider(): any;
17
+ get entityDataProvider(): any;
18
+ get permissionDataProvider(): any;
19
+ static ɵfac: i0.ɵɵFactoryDeclaration<AXPApplicationManagementService, never>;
20
+ static ɵprov: i0.ɵɵInjectableDeclaration<AXPApplicationManagementService>;
21
+ }
@@ -0,0 +1,3 @@
1
+ import { AXPEntity } from '@acorex/platform/common';
2
+ import { Injector } from '@angular/core';
3
+ export declare function applicationModuleEntityFactory(injector: Injector): Promise<AXPEntity | null>;
@@ -0,0 +1,3 @@
1
+ import { AXPEntity } from '@acorex/platform/common';
2
+ import { Injector } from '@angular/core';
3
+ export declare function applicationEntityFactory(injector: Injector): Promise<AXPEntity | null>;
@@ -0,0 +1,3 @@
1
+ import { AXPEntity } from '@acorex/platform/common';
2
+ import { Injector } from '@angular/core';
3
+ export declare function editionEntityFactory(injector: Injector): Promise<AXPEntity | null>;
@@ -0,0 +1,3 @@
1
+ import { AXPEntity } from '@acorex/platform/common';
2
+ import { Injector } from '@angular/core';
3
+ export declare function entityEntityFactory(injector: Injector): Promise<AXPEntity | null>;
@@ -0,0 +1,3 @@
1
+ import { AXPEntity } from '@acorex/platform/common';
2
+ import { Injector } from '@angular/core';
3
+ export declare function featureEntityFactory(injector: Injector): Promise<AXPEntity | null>;
@@ -0,0 +1,3 @@
1
+ import { AXPEntity } from '@acorex/platform/common';
2
+ import { Injector } from '@angular/core';
3
+ export declare function modulesEntityFactory(injector: Injector): Promise<AXPEntity | null>;
@@ -0,0 +1,3 @@
1
+ import { AXPEntity } from '@acorex/platform/common';
2
+ import { Injector } from '@angular/core';
3
+ export declare function permissionEntityFactory(injector: Injector): Promise<AXPEntity | null>;
@@ -1,2 +1,10 @@
1
1
  export * from './lib/application-management.module';
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJzL21vZHVsZXMvYXBwbGljYXRpb24tbWFuYWdlbWVudC9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsY0FBYyxxQ0FBcUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIlxuZXhwb3J0ICogZnJvbSAnLi9saWIvYXBwbGljYXRpb24tbWFuYWdlbWVudC5tb2R1bGUnO1xuICAgICAgICAgICAgICAgICJdfQ==
2
+ export * from './lib/application-management.service';
3
+ export * from './lib/application-module.entity';
4
+ export * from './lib/applications.entity';
5
+ export * from './lib/edition.entity';
6
+ export * from './lib/entity.entity';
7
+ export * from './lib/feature.entity';
8
+ export * from './lib/modules.entity';
9
+ export * from './lib/permission.entity';
10
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJzL21vZHVsZXMvYXBwbGljYXRpb24tbWFuYWdlbWVudC9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxxQ0FBcUMsQ0FBQztBQUNwRCxjQUFjLHNDQUFzQyxDQUFDO0FBQ3JELGNBQWMsaUNBQWlDLENBQUM7QUFDaEQsY0FBYywyQkFBMkIsQ0FBQztBQUMxQyxjQUFjLHNCQUFzQixDQUFDO0FBQ3JDLGNBQWMscUJBQXFCLENBQUM7QUFDcEMsY0FBYyxzQkFBc0IsQ0FBQztBQUNyQyxjQUFjLHNCQUFzQixDQUFDO0FBQ3JDLGNBQWMseUJBQXlCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2xpYi9hcHBsaWNhdGlvbi1tYW5hZ2VtZW50Lm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9hcHBsaWNhdGlvbi1tYW5hZ2VtZW50LnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvYXBwbGljYXRpb24tbW9kdWxlLmVudGl0eSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9hcHBsaWNhdGlvbnMuZW50aXR5JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2VkaXRpb24uZW50aXR5JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2VudGl0eS5lbnRpdHknO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZmVhdHVyZS5lbnRpdHknO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kdWxlcy5lbnRpdHknO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvcGVybWlzc2lvbi5lbnRpdHknO1xuIl19
@@ -0,0 +1,89 @@
1
+ import { AXPDataGenerator } from '@acorex/platform/common';
2
+ export const APPLICATIONS = Array.from({ length: 5 }).map((_, i) => {
3
+ const source = ['appOne', 'appTwo', 'appThree', 'myCoolApp', 'awesomeApp', 'superApp'];
4
+ const name = AXPDataGenerator.pick(source);
5
+ return {
6
+ id: AXPDataGenerator.uuid(),
7
+ name: name,
8
+ title: name,
9
+ isArchived: AXPDataGenerator.boolean(),
10
+ };
11
+ });
12
+ export const MODULES = Array.from({ length: 5 }).map((_, i) => {
13
+ const source = [
14
+ 'UserManagement',
15
+ 'Analytics',
16
+ 'Reporting',
17
+ 'PaymentGateway',
18
+ 'NotificationService',
19
+ 'InventoryManagement',
20
+ ];
21
+ const name = AXPDataGenerator.pick(source);
22
+ return {
23
+ id: AXPDataGenerator.uuid(),
24
+ name: name,
25
+ title: name,
26
+ isArchived: AXPDataGenerator.boolean(),
27
+ };
28
+ });
29
+ export const APPLICATIONS_MODULES = Array.from({ length: 5 }).map((_, i) => {
30
+ return {
31
+ id: AXPDataGenerator.uuid(),
32
+ application: AXPDataGenerator.pick(APPLICATIONS),
33
+ module: AXPDataGenerator.pick(MODULES),
34
+ };
35
+ });
36
+ export const EDITIONS = Array.from({ length: 5 }).map((_, i) => {
37
+ const source = ['Standard', 'Premium', 'Gold', 'Silver', 'Bronze', 'Platinum', 'Enterprise'];
38
+ const name = AXPDataGenerator.pick(source);
39
+ return {
40
+ id: AXPDataGenerator.uuid(),
41
+ application: AXPDataGenerator.pick(APPLICATIONS),
42
+ name: name,
43
+ title: name,
44
+ isArchived: AXPDataGenerator.boolean(),
45
+ };
46
+ });
47
+ export const FEATURES = Array.from({ length: 5 }).map((_, i) => {
48
+ const source = [
49
+ 'User Authentication',
50
+ 'Data Encryption',
51
+ 'Real-time Notifications',
52
+ 'Customizable Dashboards',
53
+ 'API Access',
54
+ 'Multi-language Support',
55
+ 'Analytics and Reporting',
56
+ 'Offline Mode',
57
+ ];
58
+ const name = AXPDataGenerator.pick(source);
59
+ return {
60
+ id: AXPDataGenerator.uuid(),
61
+ module: AXPDataGenerator.pick(MODULES),
62
+ name: name,
63
+ title: name,
64
+ isArchived: AXPDataGenerator.boolean(),
65
+ };
66
+ });
67
+ export const ENTITIES = Array.from({ length: 5 }).map((_, i) => {
68
+ const source = ['User', 'Product', 'Order', 'Customer', 'Transaction', 'Category', 'Review', 'InventoryItem'];
69
+ const name = AXPDataGenerator.pick(source);
70
+ return {
71
+ id: AXPDataGenerator.uuid(),
72
+ module: AXPDataGenerator.pick(MODULES),
73
+ name: name,
74
+ title: name,
75
+ isArchived: AXPDataGenerator.boolean(),
76
+ };
77
+ });
78
+ export const PERMISSIONS = Array.from({ length: 5 }).map((_, i) => {
79
+ const source = ['Read', 'Write', 'Update', 'Delete', 'ManageUsers', 'ViewReports', 'AccessSettings', 'CreateContent'];
80
+ const name = AXPDataGenerator.pick(source);
81
+ return {
82
+ id: AXPDataGenerator.uuid(),
83
+ module: AXPDataGenerator.pick(MODULES),
84
+ name: name,
85
+ title: name,
86
+ isArchived: AXPDataGenerator.boolean(),
87
+ };
88
+ });
89
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwbGljYXRpb24tbWFuYWdlbWVudC1tb2NrLWRhdGEuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL21vZHVsZXMvYXBwbGljYXRpb24tbWFuYWdlbWVudC9zcmMvbGliL2FwcGxpY2F0aW9uLW1hbmFnZW1lbnQtbW9jay1kYXRhLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBRTNELE1BQU0sQ0FBQyxNQUFNLFlBQVksR0FBRyxLQUFLLENBQUMsSUFBSSxDQUFDLEVBQUUsTUFBTSxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFO0lBQ2pFLE1BQU0sTUFBTSxHQUFHLENBQUMsUUFBUSxFQUFFLFFBQVEsRUFBRSxVQUFVLEVBQUUsV0FBVyxFQUFFLFlBQVksRUFBRSxVQUFVLENBQUMsQ0FBQztJQUN2RixNQUFNLElBQUksR0FBRyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7SUFFM0MsT0FBTztRQUNMLEVBQUUsRUFBRSxnQkFBZ0IsQ0FBQyxJQUFJLEVBQUU7UUFDM0IsSUFBSSxFQUFFLElBQUk7UUFDVixLQUFLLEVBQUUsSUFBSTtRQUNYLFVBQVUsRUFBRSxnQkFBZ0IsQ0FBQyxPQUFPLEVBQUU7S0FDdkMsQ0FBQztBQUNKLENBQUMsQ0FBQyxDQUFDO0FBRUgsTUFBTSxDQUFDLE1BQU0sT0FBTyxHQUFHLEtBQUssQ0FBQyxJQUFJLENBQUMsRUFBRSxNQUFNLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUU7SUFDNUQsTUFBTSxNQUFNLEdBQUc7UUFDYixnQkFBZ0I7UUFDaEIsV0FBVztRQUNYLFdBQVc7UUFDWCxnQkFBZ0I7UUFDaEIscUJBQXFCO1FBQ3JCLHFCQUFxQjtLQUN0QixDQUFDO0lBQ0YsTUFBTSxJQUFJLEdBQUcsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBRTNDLE9BQU87UUFDTCxFQUFFLEVBQUUsZ0JBQWdCLENBQUMsSUFBSSxFQUFFO1FBQzNCLElBQUksRUFBRSxJQUFJO1FBQ1YsS0FBSyxFQUFFLElBQUk7UUFDWCxVQUFVLEVBQUUsZ0JBQWdCLENBQUMsT0FBTyxFQUFFO0tBQ3ZDLENBQUM7QUFDSixDQUFDLENBQUMsQ0FBQztBQUVILE1BQU0sQ0FBQyxNQUFNLG9CQUFvQixHQUFHLEtBQUssQ0FBQyxJQUFJLENBQUMsRUFBRSxNQUFNLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUU7SUFDekUsT0FBTztRQUNMLEVBQUUsRUFBRSxnQkFBZ0IsQ0FBQyxJQUFJLEVBQUU7UUFDM0IsV0FBVyxFQUFFLGdCQUFnQixDQUFDLElBQUksQ0FBQyxZQUFZLENBQUM7UUFDaEQsTUFBTSxFQUFFLGdCQUFnQixDQUFDLElBQUksQ0FBQyxPQUFPLENBQUM7S0FDdkMsQ0FBQztBQUNKLENBQUMsQ0FBQyxDQUFDO0FBRUgsTUFBTSxDQUFDLE1BQU0sUUFBUSxHQUFHLEtBQUssQ0FBQyxJQUFJLENBQUMsRUFBRSxNQUFNLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUU7SUFDN0QsTUFBTSxNQUFNLEdBQUcsQ0FBQyxVQUFVLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxRQUFRLEVBQUUsUUFBUSxFQUFFLFVBQVUsRUFBRSxZQUFZLENBQUMsQ0FBQztJQUM3RixNQUFNLElBQUksR0FBRyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7SUFFM0MsT0FBTztRQUNMLEVBQUUsRUFBRSxnQkFBZ0IsQ0FBQyxJQUFJLEVBQUU7UUFDM0IsV0FBVyxFQUFFLGdCQUFnQixDQUFDLElBQUksQ0FBQyxZQUFZLENBQUM7UUFDaEQsSUFBSSxFQUFFLElBQUk7UUFDVixLQUFLLEVBQUUsSUFBSTtRQUNYLFVBQVUsRUFBRSxnQkFBZ0IsQ0FBQyxPQUFPLEVBQUU7S0FDdkMsQ0FBQztBQUNKLENBQUMsQ0FBQyxDQUFDO0FBRUgsTUFBTSxDQUFDLE1BQU0sUUFBUSxHQUFHLEtBQUssQ0FBQyxJQUFJLENBQUMsRUFBRSxNQUFNLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUU7SUFDN0QsTUFBTSxNQUFNLEdBQUc7UUFDYixxQkFBcUI7UUFDckIsaUJBQWlCO1FBQ2pCLHlCQUF5QjtRQUN6Qix5QkFBeUI7UUFDekIsWUFBWTtRQUNaLHdCQUF3QjtRQUN4Qix5QkFBeUI7UUFDekIsY0FBYztLQUNmLENBQUM7SUFDRixNQUFNLElBQUksR0FBRyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDM0MsT0FBTztRQUNMLEVBQUUsRUFBRSxnQkFBZ0IsQ0FBQyxJQUFJLEVBQUU7UUFDM0IsTUFBTSxFQUFFLGdCQUFnQixDQUFDLElBQUksQ0FBQyxPQUFPLENBQUM7UUFDdEMsSUFBSSxFQUFFLElBQUk7UUFDVixLQUFLLEVBQUUsSUFBSTtRQUNYLFVBQVUsRUFBRSxnQkFBZ0IsQ0FBQyxPQUFPLEVBQUU7S0FDdkMsQ0FBQztBQUNKLENBQUMsQ0FBQyxDQUFDO0FBRUgsTUFBTSxDQUFDLE1BQU0sUUFBUSxHQUFHLEtBQUssQ0FBQyxJQUFJLENBQUMsRUFBRSxNQUFNLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUU7SUFDN0QsTUFBTSxNQUFNLEdBQUcsQ0FBQyxNQUFNLEVBQUUsU0FBUyxFQUFFLE9BQU8sRUFBRSxVQUFVLEVBQUUsYUFBYSxFQUFFLFVBQVUsRUFBRSxRQUFRLEVBQUUsZUFBZSxDQUFDLENBQUM7SUFDOUcsTUFBTSxJQUFJLEdBQUcsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQzNDLE9BQU87UUFDTCxFQUFFLEVBQUUsZ0JBQWdCLENBQUMsSUFBSSxFQUFFO1FBQzNCLE1BQU0sRUFBRSxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDO1FBQ3RDLElBQUksRUFBRSxJQUFJO1FBQ1YsS0FBSyxFQUFFLElBQUk7UUFDWCxVQUFVLEVBQUUsZ0JBQWdCLENBQUMsT0FBTyxFQUFFO0tBQ3ZDLENBQUM7QUFDSixDQUFDLENBQUMsQ0FBQztBQUNILE1BQU0sQ0FBQyxNQUFNLFdBQVcsR0FBRyxLQUFLLENBQUMsSUFBSSxDQUFDLEVBQUUsTUFBTSxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFO0lBQ2hFLE1BQU0sTUFBTSxHQUFHLENBQUMsTUFBTSxFQUFFLE9BQU8sRUFBRSxRQUFRLEVBQUUsUUFBUSxFQUFFLGFBQWEsRUFBRSxhQUFhLEVBQUUsZ0JBQWdCLEVBQUUsZUFBZSxDQUFDLENBQUM7SUFDdEgsTUFBTSxJQUFJLEdBQUcsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQzNDLE9BQU87UUFDTCxFQUFFLEVBQUUsZ0JBQWdCLENBQUMsSUFBSSxFQUFFO1FBQzNCLE1BQU0sRUFBRSxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDO1FBQ3RDLElBQUksRUFBRSxJQUFJO1FBQ1YsS0FBSyxFQUFFLElBQUk7UUFDWCxVQUFVLEVBQUUsZ0JBQWdCLENBQUMsT0FBTyxFQUFFO0tBQ3ZDLENBQUM7QUFDSixDQUFDLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFYUERhdGFHZW5lcmF0b3IgfSBmcm9tICdAYWNvcmV4L3BsYXRmb3JtL2NvbW1vbic7XG5cbmV4cG9ydCBjb25zdCBBUFBMSUNBVElPTlMgPSBBcnJheS5mcm9tKHsgbGVuZ3RoOiA1IH0pLm1hcCgoXywgaSkgPT4ge1xuICBjb25zdCBzb3VyY2UgPSBbJ2FwcE9uZScsICdhcHBUd28nLCAnYXBwVGhyZWUnLCAnbXlDb29sQXBwJywgJ2F3ZXNvbWVBcHAnLCAnc3VwZXJBcHAnXTtcbiAgY29uc3QgbmFtZSA9IEFYUERhdGFHZW5lcmF0b3IucGljayhzb3VyY2UpO1xuXG4gIHJldHVybiB7XG4gICAgaWQ6IEFYUERhdGFHZW5lcmF0b3IudXVpZCgpLFxuICAgIG5hbWU6IG5hbWUsXG4gICAgdGl0bGU6IG5hbWUsXG4gICAgaXNBcmNoaXZlZDogQVhQRGF0YUdlbmVyYXRvci5ib29sZWFuKCksXG4gIH07XG59KTtcblxuZXhwb3J0IGNvbnN0IE1PRFVMRVMgPSBBcnJheS5mcm9tKHsgbGVuZ3RoOiA1IH0pLm1hcCgoXywgaSkgPT4ge1xuICBjb25zdCBzb3VyY2UgPSBbXG4gICAgJ1VzZXJNYW5hZ2VtZW50JyxcbiAgICAnQW5hbHl0aWNzJyxcbiAgICAnUmVwb3J0aW5nJyxcbiAgICAnUGF5bWVudEdhdGV3YXknLFxuICAgICdOb3RpZmljYXRpb25TZXJ2aWNlJyxcbiAgICAnSW52ZW50b3J5TWFuYWdlbWVudCcsXG4gIF07XG4gIGNvbnN0IG5hbWUgPSBBWFBEYXRhR2VuZXJhdG9yLnBpY2soc291cmNlKTtcblxuICByZXR1cm4ge1xuICAgIGlkOiBBWFBEYXRhR2VuZXJhdG9yLnV1aWQoKSxcbiAgICBuYW1lOiBuYW1lLFxuICAgIHRpdGxlOiBuYW1lLFxuICAgIGlzQXJjaGl2ZWQ6IEFYUERhdGFHZW5lcmF0b3IuYm9vbGVhbigpLFxuICB9O1xufSk7XG5cbmV4cG9ydCBjb25zdCBBUFBMSUNBVElPTlNfTU9EVUxFUyA9IEFycmF5LmZyb20oeyBsZW5ndGg6IDUgfSkubWFwKChfLCBpKSA9PiB7XG4gIHJldHVybiB7XG4gICAgaWQ6IEFYUERhdGFHZW5lcmF0b3IudXVpZCgpLFxuICAgIGFwcGxpY2F0aW9uOiBBWFBEYXRhR2VuZXJhdG9yLnBpY2soQVBQTElDQVRJT05TKSxcbiAgICBtb2R1bGU6IEFYUERhdGFHZW5lcmF0b3IucGljayhNT0RVTEVTKSxcbiAgfTtcbn0pO1xuXG5leHBvcnQgY29uc3QgRURJVElPTlMgPSBBcnJheS5mcm9tKHsgbGVuZ3RoOiA1IH0pLm1hcCgoXywgaSkgPT4ge1xuICBjb25zdCBzb3VyY2UgPSBbJ1N0YW5kYXJkJywgJ1ByZW1pdW0nLCAnR29sZCcsICdTaWx2ZXInLCAnQnJvbnplJywgJ1BsYXRpbnVtJywgJ0VudGVycHJpc2UnXTtcbiAgY29uc3QgbmFtZSA9IEFYUERhdGFHZW5lcmF0b3IucGljayhzb3VyY2UpO1xuXG4gIHJldHVybiB7XG4gICAgaWQ6IEFYUERhdGFHZW5lcmF0b3IudXVpZCgpLFxuICAgIGFwcGxpY2F0aW9uOiBBWFBEYXRhR2VuZXJhdG9yLnBpY2soQVBQTElDQVRJT05TKSxcbiAgICBuYW1lOiBuYW1lLFxuICAgIHRpdGxlOiBuYW1lLFxuICAgIGlzQXJjaGl2ZWQ6IEFYUERhdGFHZW5lcmF0b3IuYm9vbGVhbigpLFxuICB9O1xufSk7XG5cbmV4cG9ydCBjb25zdCBGRUFUVVJFUyA9IEFycmF5LmZyb20oeyBsZW5ndGg6IDUgfSkubWFwKChfLCBpKSA9PiB7XG4gIGNvbnN0IHNvdXJjZSA9IFtcbiAgICAnVXNlciBBdXRoZW50aWNhdGlvbicsXG4gICAgJ0RhdGEgRW5jcnlwdGlvbicsXG4gICAgJ1JlYWwtdGltZSBOb3RpZmljYXRpb25zJyxcbiAgICAnQ3VzdG9taXphYmxlIERhc2hib2FyZHMnLFxuICAgICdBUEkgQWNjZXNzJyxcbiAgICAnTXVsdGktbGFuZ3VhZ2UgU3VwcG9ydCcsXG4gICAgJ0FuYWx5dGljcyBhbmQgUmVwb3J0aW5nJyxcbiAgICAnT2ZmbGluZSBNb2RlJyxcbiAgXTtcbiAgY29uc3QgbmFtZSA9IEFYUERhdGFHZW5lcmF0b3IucGljayhzb3VyY2UpO1xuICByZXR1cm4ge1xuICAgIGlkOiBBWFBEYXRhR2VuZXJhdG9yLnV1aWQoKSxcbiAgICBtb2R1bGU6IEFYUERhdGFHZW5lcmF0b3IucGljayhNT0RVTEVTKSxcbiAgICBuYW1lOiBuYW1lLFxuICAgIHRpdGxlOiBuYW1lLFxuICAgIGlzQXJjaGl2ZWQ6IEFYUERhdGFHZW5lcmF0b3IuYm9vbGVhbigpLFxuICB9O1xufSk7XG5cbmV4cG9ydCBjb25zdCBFTlRJVElFUyA9IEFycmF5LmZyb20oeyBsZW5ndGg6IDUgfSkubWFwKChfLCBpKSA9PiB7XG4gIGNvbnN0IHNvdXJjZSA9IFsnVXNlcicsICdQcm9kdWN0JywgJ09yZGVyJywgJ0N1c3RvbWVyJywgJ1RyYW5zYWN0aW9uJywgJ0NhdGVnb3J5JywgJ1JldmlldycsICdJbnZlbnRvcnlJdGVtJ107XG4gIGNvbnN0IG5hbWUgPSBBWFBEYXRhR2VuZXJhdG9yLnBpY2soc291cmNlKTtcbiAgcmV0dXJuIHtcbiAgICBpZDogQVhQRGF0YUdlbmVyYXRvci51dWlkKCksXG4gICAgbW9kdWxlOiBBWFBEYXRhR2VuZXJhdG9yLnBpY2soTU9EVUxFUyksXG4gICAgbmFtZTogbmFtZSxcbiAgICB0aXRsZTogbmFtZSxcbiAgICBpc0FyY2hpdmVkOiBBWFBEYXRhR2VuZXJhdG9yLmJvb2xlYW4oKSxcbiAgfTtcbn0pO1xuZXhwb3J0IGNvbnN0IFBFUk1JU1NJT05TID0gQXJyYXkuZnJvbSh7IGxlbmd0aDogNSB9KS5tYXAoKF8sIGkpID0+IHtcbiAgY29uc3Qgc291cmNlID0gWydSZWFkJywgJ1dyaXRlJywgJ1VwZGF0ZScsICdEZWxldGUnLCAnTWFuYWdlVXNlcnMnLCAnVmlld1JlcG9ydHMnLCAnQWNjZXNzU2V0dGluZ3MnLCAnQ3JlYXRlQ29udGVudCddO1xuICBjb25zdCBuYW1lID0gQVhQRGF0YUdlbmVyYXRvci5waWNrKHNvdXJjZSk7XG4gIHJldHVybiB7XG4gICAgaWQ6IEFYUERhdGFHZW5lcmF0b3IudXVpZCgpLFxuICAgIG1vZHVsZTogQVhQRGF0YUdlbmVyYXRvci5waWNrKE1PRFVMRVMpLFxuICAgIG5hbWU6IG5hbWUsXG4gICAgdGl0bGU6IG5hbWUsXG4gICAgaXNBcmNoaXZlZDogQVhQRGF0YUdlbmVyYXRvci5ib29sZWFuKCksXG4gIH07XG59KTtcbiJdfQ==
@@ -0,0 +1,60 @@
1
+ import { Injectable, Injector } from '@angular/core';
2
+ import { APPLICATIONS, APPLICATIONS_MODULES, EDITIONS, ENTITIES, FEATURES, MODULES, PERMISSIONS, } from './application-management-mock-data';
3
+ import { AXPEntityDataProviderImpl, AXPStorageService } from '@acorex/platform/common';
4
+ import * as i0 from "@angular/core";
5
+ export class AXPApplicationManagementService {
6
+ constructor(injector) {
7
+ const storageService = injector.get(AXPStorageService);
8
+ //
9
+ this._applicationDataProvider = new AXPEntityDataProviderImpl(storageService, 'applications');
10
+ this._applicationDataProvider.initial(APPLICATIONS);
11
+ //
12
+ this._moduleDataProvider = new AXPEntityDataProviderImpl(storageService, 'modules');
13
+ this._moduleDataProvider.initial(MODULES);
14
+ //
15
+ this._applicationModuleDataProvider = new AXPEntityDataProviderImpl(storageService, 'applications-modules');
16
+ this._applicationModuleDataProvider.initial(APPLICATIONS_MODULES);
17
+ //
18
+ this._editionDataProvider = new AXPEntityDataProviderImpl(storageService, 'editions');
19
+ this._editionDataProvider.initial(EDITIONS);
20
+ //
21
+ this._featureDataProvider = new AXPEntityDataProviderImpl(storageService, 'features');
22
+ this._featureDataProvider.initial(FEATURES);
23
+ //
24
+ this._entityDataProvider = new AXPEntityDataProviderImpl(storageService, 'entities');
25
+ this._entityDataProvider.initial(ENTITIES);
26
+ //
27
+ this._permissionDataProvider = new AXPEntityDataProviderImpl(storageService, 'permissions');
28
+ this._permissionDataProvider.initial(PERMISSIONS);
29
+ }
30
+ get applicationDataProvider() {
31
+ return this._applicationDataProvider;
32
+ }
33
+ get moduleDataProvider() {
34
+ return this._moduleDataProvider;
35
+ }
36
+ get applicationModuleDataProvider() {
37
+ return this._applicationModuleDataProvider;
38
+ }
39
+ get editionDataProvider() {
40
+ return this._editionDataProvider;
41
+ }
42
+ get featureDataProvider() {
43
+ return this._featureDataProvider;
44
+ }
45
+ get entityDataProvider() {
46
+ return this._entityDataProvider;
47
+ }
48
+ get permissionDataProvider() {
49
+ return this._permissionDataProvider;
50
+ }
51
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: AXPApplicationManagementService, deps: [{ token: i0.Injector }], target: i0.ɵɵFactoryTarget.Injectable }); }
52
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: AXPApplicationManagementService, providedIn: 'root' }); }
53
+ }
54
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: AXPApplicationManagementService, decorators: [{
55
+ type: Injectable,
56
+ args: [{
57
+ providedIn: 'root',
58
+ }]
59
+ }], ctorParameters: () => [{ type: i0.Injector }] });
60
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwbGljYXRpb24tbWFuYWdlbWVudC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tb2R1bGVzL2FwcGxpY2F0aW9uLW1hbmFnZW1lbnQvc3JjL2xpYi9hcHBsaWNhdGlvbi1tYW5hZ2VtZW50LnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDckQsT0FBTyxFQUNMLFlBQVksRUFDWixvQkFBb0IsRUFDcEIsUUFBUSxFQUNSLFFBQVEsRUFDUixRQUFRLEVBQ1IsT0FBTyxFQUNQLFdBQVcsR0FDWixNQUFNLG9DQUFvQyxDQUFDO0FBQzVDLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHlCQUF5QixDQUFDOztBQUt2RixNQUFNLE9BQU8sK0JBQStCO0lBUzFDLFlBQVksUUFBa0I7UUFDNUIsTUFBTSxjQUFjLEdBQUcsUUFBUSxDQUFDLEdBQUcsQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO1FBQ3ZELEVBQUU7UUFDRixJQUFJLENBQUMsd0JBQXdCLEdBQUcsSUFBSSx5QkFBeUIsQ0FBTSxjQUFjLEVBQUUsY0FBYyxDQUFDLENBQUM7UUFDbkcsSUFBSSxDQUFDLHdCQUF3QixDQUFDLE9BQU8sQ0FBQyxZQUFZLENBQUMsQ0FBQztRQUNwRCxFQUFFO1FBQ0YsSUFBSSxDQUFDLG1CQUFtQixHQUFHLElBQUkseUJBQXlCLENBQU0sY0FBYyxFQUFFLFNBQVMsQ0FBQyxDQUFDO1FBQ3pGLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDMUMsRUFBRTtRQUNGLElBQUksQ0FBQyw4QkFBOEIsR0FBRyxJQUFJLHlCQUF5QixDQUFNLGNBQWMsRUFBRSxzQkFBc0IsQ0FBQyxDQUFDO1FBQ2pILElBQUksQ0FBQyw4QkFBOEIsQ0FBQyxPQUFPLENBQUMsb0JBQW9CLENBQUMsQ0FBQztRQUNsRSxFQUFFO1FBQ0YsSUFBSSxDQUFDLG9CQUFvQixHQUFHLElBQUkseUJBQXlCLENBQU0sY0FBYyxFQUFFLFVBQVUsQ0FBQyxDQUFDO1FBQzNGLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDNUMsRUFBRTtRQUNGLElBQUksQ0FBQyxvQkFBb0IsR0FBRyxJQUFJLHlCQUF5QixDQUFNLGNBQWMsRUFBRSxVQUFVLENBQUMsQ0FBQztRQUMzRixJQUFJLENBQUMsb0JBQW9CLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQzVDLEVBQUU7UUFDRixJQUFJLENBQUMsbUJBQW1CLEdBQUcsSUFBSSx5QkFBeUIsQ0FBTSxjQUFjLEVBQUUsVUFBVSxDQUFDLENBQUM7UUFDMUYsSUFBSSxDQUFDLG1CQUFtQixDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUMzQyxFQUFFO1FBQ0YsSUFBSSxDQUFDLHVCQUF1QixHQUFHLElBQUkseUJBQXlCLENBQU0sY0FBYyxFQUFFLGFBQWEsQ0FBQyxDQUFDO1FBQ2pHLElBQUksQ0FBQyx1QkFBdUIsQ0FBQyxPQUFPLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDcEQsQ0FBQztJQUVELElBQVcsdUJBQXVCO1FBQ2hDLE9BQU8sSUFBSSxDQUFDLHdCQUF3QixDQUFDO0lBQ3ZDLENBQUM7SUFFRCxJQUFXLGtCQUFrQjtRQUMzQixPQUFPLElBQUksQ0FBQyxtQkFBbUIsQ0FBQztJQUNsQyxDQUFDO0lBRUQsSUFBVyw2QkFBNkI7UUFDdEMsT0FBTyxJQUFJLENBQUMsOEJBQThCLENBQUM7SUFDN0MsQ0FBQztJQUVELElBQVcsbUJBQW1CO1FBQzVCLE9BQU8sSUFBSSxDQUFDLG9CQUFvQixDQUFDO0lBQ25DLENBQUM7SUFDRCxJQUFXLG1CQUFtQjtRQUM1QixPQUFPLElBQUksQ0FBQyxvQkFBb0IsQ0FBQztJQUNuQyxDQUFDO0lBQ0QsSUFBVyxrQkFBa0I7UUFDM0IsT0FBTyxJQUFJLENBQUMsbUJBQW1CLENBQUM7SUFDbEMsQ0FBQztJQUNELElBQVcsc0JBQXNCO1FBQy9CLE9BQU8sSUFBSSxDQUFDLHVCQUF1QixDQUFDO0lBQ3RDLENBQUM7OEdBekRVLCtCQUErQjtrSEFBL0IsK0JBQStCLGNBRjlCLE1BQU07OzJGQUVQLCtCQUErQjtrQkFIM0MsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlLCBJbmplY3RvciB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtcbiAgQVBQTElDQVRJT05TLFxuICBBUFBMSUNBVElPTlNfTU9EVUxFUyxcbiAgRURJVElPTlMsXG4gIEVOVElUSUVTLFxuICBGRUFUVVJFUyxcbiAgTU9EVUxFUyxcbiAgUEVSTUlTU0lPTlMsXG59IGZyb20gJy4vYXBwbGljYXRpb24tbWFuYWdlbWVudC1tb2NrLWRhdGEnO1xuaW1wb3J0IHsgQVhQRW50aXR5RGF0YVByb3ZpZGVySW1wbCwgQVhQU3RvcmFnZVNlcnZpY2UgfSBmcm9tICdAYWNvcmV4L3BsYXRmb3JtL2NvbW1vbic7XG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxufSlcbmV4cG9ydCBjbGFzcyBBWFBBcHBsaWNhdGlvbk1hbmFnZW1lbnRTZXJ2aWNlIHtcbiAgcHJvdGVjdGVkIF9hcHBsaWNhdGlvbk1vZHVsZURhdGFQcm92aWRlcjogYW55O1xuICBwcm90ZWN0ZWQgX2FwcGxpY2F0aW9uRGF0YVByb3ZpZGVyOiBhbnk7XG4gIHByb3RlY3RlZCBfbW9kdWxlRGF0YVByb3ZpZGVyOiBhbnk7XG4gIHByb3RlY3RlZCBfZWRpdGlvbkRhdGFQcm92aWRlcjogYW55O1xuICBwcm90ZWN0ZWQgX2ZlYXR1cmVEYXRhUHJvdmlkZXI6IGFueTtcbiAgcHJvdGVjdGVkIF9lbnRpdHlEYXRhUHJvdmlkZXI6IGFueTtcbiAgcHJvdGVjdGVkIF9wZXJtaXNzaW9uRGF0YVByb3ZpZGVyOiBhbnk7XG5cbiAgY29uc3RydWN0b3IoaW5qZWN0b3I6IEluamVjdG9yKSB7XG4gICAgY29uc3Qgc3RvcmFnZVNlcnZpY2UgPSBpbmplY3Rvci5nZXQoQVhQU3RvcmFnZVNlcnZpY2UpO1xuICAgIC8vXG4gICAgdGhpcy5fYXBwbGljYXRpb25EYXRhUHJvdmlkZXIgPSBuZXcgQVhQRW50aXR5RGF0YVByb3ZpZGVySW1wbDxhbnk+KHN0b3JhZ2VTZXJ2aWNlLCAnYXBwbGljYXRpb25zJyk7XG4gICAgdGhpcy5fYXBwbGljYXRpb25EYXRhUHJvdmlkZXIuaW5pdGlhbChBUFBMSUNBVElPTlMpO1xuICAgIC8vXG4gICAgdGhpcy5fbW9kdWxlRGF0YVByb3ZpZGVyID0gbmV3IEFYUEVudGl0eURhdGFQcm92aWRlckltcGw8YW55PihzdG9yYWdlU2VydmljZSwgJ21vZHVsZXMnKTtcbiAgICB0aGlzLl9tb2R1bGVEYXRhUHJvdmlkZXIuaW5pdGlhbChNT0RVTEVTKTtcbiAgICAvL1xuICAgIHRoaXMuX2FwcGxpY2F0aW9uTW9kdWxlRGF0YVByb3ZpZGVyID0gbmV3IEFYUEVudGl0eURhdGFQcm92aWRlckltcGw8YW55PihzdG9yYWdlU2VydmljZSwgJ2FwcGxpY2F0aW9ucy1tb2R1bGVzJyk7XG4gICAgdGhpcy5fYXBwbGljYXRpb25Nb2R1bGVEYXRhUHJvdmlkZXIuaW5pdGlhbChBUFBMSUNBVElPTlNfTU9EVUxFUyk7XG4gICAgLy9cbiAgICB0aGlzLl9lZGl0aW9uRGF0YVByb3ZpZGVyID0gbmV3IEFYUEVudGl0eURhdGFQcm92aWRlckltcGw8YW55PihzdG9yYWdlU2VydmljZSwgJ2VkaXRpb25zJyk7XG4gICAgdGhpcy5fZWRpdGlvbkRhdGFQcm92aWRlci5pbml0aWFsKEVESVRJT05TKTtcbiAgICAvL1xuICAgIHRoaXMuX2ZlYXR1cmVEYXRhUHJvdmlkZXIgPSBuZXcgQVhQRW50aXR5RGF0YVByb3ZpZGVySW1wbDxhbnk+KHN0b3JhZ2VTZXJ2aWNlLCAnZmVhdHVyZXMnKTtcbiAgICB0aGlzLl9mZWF0dXJlRGF0YVByb3ZpZGVyLmluaXRpYWwoRkVBVFVSRVMpO1xuICAgIC8vXG4gICAgdGhpcy5fZW50aXR5RGF0YVByb3ZpZGVyID0gbmV3IEFYUEVudGl0eURhdGFQcm92aWRlckltcGw8YW55PihzdG9yYWdlU2VydmljZSwgJ2VudGl0aWVzJyk7XG4gICAgdGhpcy5fZW50aXR5RGF0YVByb3ZpZGVyLmluaXRpYWwoRU5USVRJRVMpO1xuICAgIC8vXG4gICAgdGhpcy5fcGVybWlzc2lvbkRhdGFQcm92aWRlciA9IG5ldyBBWFBFbnRpdHlEYXRhUHJvdmlkZXJJbXBsPGFueT4oc3RvcmFnZVNlcnZpY2UsICdwZXJtaXNzaW9ucycpO1xuICAgIHRoaXMuX3Blcm1pc3Npb25EYXRhUHJvdmlkZXIuaW5pdGlhbChQRVJNSVNTSU9OUyk7XG4gIH1cblxuICBwdWJsaWMgZ2V0IGFwcGxpY2F0aW9uRGF0YVByb3ZpZGVyKCkge1xuICAgIHJldHVybiB0aGlzLl9hcHBsaWNhdGlvbkRhdGFQcm92aWRlcjtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgbW9kdWxlRGF0YVByb3ZpZGVyKCkge1xuICAgIHJldHVybiB0aGlzLl9tb2R1bGVEYXRhUHJvdmlkZXI7XG4gIH1cblxuICBwdWJsaWMgZ2V0IGFwcGxpY2F0aW9uTW9kdWxlRGF0YVByb3ZpZGVyKCkge1xuICAgIHJldHVybiB0aGlzLl9hcHBsaWNhdGlvbk1vZHVsZURhdGFQcm92aWRlcjtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgZWRpdGlvbkRhdGFQcm92aWRlcigpIHtcbiAgICByZXR1cm4gdGhpcy5fZWRpdGlvbkRhdGFQcm92aWRlcjtcbiAgfVxuICBwdWJsaWMgZ2V0IGZlYXR1cmVEYXRhUHJvdmlkZXIoKSB7XG4gICAgcmV0dXJuIHRoaXMuX2ZlYXR1cmVEYXRhUHJvdmlkZXI7XG4gIH1cbiAgcHVibGljIGdldCBlbnRpdHlEYXRhUHJvdmlkZXIoKSB7XG4gICAgcmV0dXJuIHRoaXMuX2VudGl0eURhdGFQcm92aWRlcjtcbiAgfVxuICBwdWJsaWMgZ2V0IHBlcm1pc3Npb25EYXRhUHJvdmlkZXIoKSB7XG4gICAgcmV0dXJuIHRoaXMuX3Blcm1pc3Npb25EYXRhUHJvdmlkZXI7XG4gIH1cbn1cbiJdfQ==
@@ -0,0 +1,273 @@
1
+ import { applyFilterArray, applySortArray } from '@acorex/modules/backend';
2
+ import { AXPDataGenerator, AXPEntityCommandScope, AXPEntityQueryType } from '@acorex/platform/common';
3
+ import { AXPWidgetsCatalog } from '@acorex/platform/layout/builder';
4
+ import { AXPApplicationManagementService } from './application-management.service';
5
+ export async function applicationModuleEntityFactory(injector) {
6
+ const dataService = injector.get(AXPApplicationManagementService);
7
+ const entityDef = {
8
+ module: 'application-management',
9
+ name: 'application-module',
10
+ source: 'application-management.application-module',
11
+ title: 'Modules',
12
+ formats: {
13
+ individual: 'Application Module',
14
+ plural: 'Application Module',
15
+ },
16
+ relatedEntities: [],
17
+ groups: [
18
+ {
19
+ id: 'application-module',
20
+ title: 'Application Module',
21
+ },
22
+ ],
23
+ properties: [
24
+ {
25
+ name: 'application.title',
26
+ title: 'Application Title',
27
+ groupId: 'application-module',
28
+ schema: {
29
+ dataType: 'text',
30
+ interface: {
31
+ type: AXPWidgetsCatalog.text,
32
+ },
33
+ },
34
+ },
35
+ {
36
+ name: 'module.title',
37
+ title: 'Module Title',
38
+ groupId: 'application-module',
39
+ schema: {
40
+ dataType: 'text',
41
+ interface: {
42
+ type: AXPWidgetsCatalog.text,
43
+ },
44
+ },
45
+ },
46
+ ],
47
+ columns: [{ name: 'application.title' }, { name: 'module.title' }, { name: 'isArchived' }],
48
+ commands: {
49
+ create: {
50
+ execute: async (data) => {
51
+ const entity = Object.assign(data, { id: AXPDataGenerator.uuid() });
52
+ dataService.applicationModuleDataProvider.insertOne(entity);
53
+ return Promise.resolve(entity);
54
+ },
55
+ },
56
+ delete: {
57
+ execute: async (id) => {
58
+ await await dataService.applicationModuleDataProvider.deleteOne(id);
59
+ return Promise.resolve();
60
+ },
61
+ },
62
+ update: {
63
+ execute: async (data) => {
64
+ return new Promise((resolve) => {
65
+ setTimeout(async () => {
66
+ await dataService.applicationModuleDataProvider.updateOne(data.id, data);
67
+ resolve(data);
68
+ }, 1000);
69
+ });
70
+ },
71
+ },
72
+ },
73
+ queries: {
74
+ byKey: {
75
+ execute: async (id) => {
76
+ return new Promise((resolve) => {
77
+ setTimeout(async () => {
78
+ const entity = await dataService.applicationModuleDataProvider.getOne(id);
79
+ resolve(entity);
80
+ }, 500);
81
+ });
82
+ },
83
+ type: AXPEntityQueryType.Single,
84
+ },
85
+ list: {
86
+ execute: async (e) => {
87
+ const list = await dataService.applicationModuleDataProvider.getAll();
88
+ const sortedItems = applySortArray(list, e.sort);
89
+ const filteredItems = applyFilterArray(sortedItems, e.filter ? [e.filter] : []);
90
+ return Promise.resolve({
91
+ total: filteredItems.length,
92
+ items: filteredItems.slice(e.skip, (e.skip ?? 0) + (e.take ?? 0)),
93
+ });
94
+ },
95
+ type: AXPEntityQueryType.List,
96
+ },
97
+ },
98
+ interfaces: {
99
+ master: {
100
+ create: {
101
+ sections: [
102
+ {
103
+ id: 'application',
104
+ },
105
+ ],
106
+ properties: [
107
+ {
108
+ name: 'name',
109
+ layout: {
110
+ positions: {
111
+ lg: {
112
+ colSpan: 6,
113
+ },
114
+ },
115
+ },
116
+ },
117
+ {
118
+ name: 'title',
119
+ layout: {
120
+ positions: {
121
+ lg: {
122
+ colSpan: 6,
123
+ },
124
+ },
125
+ },
126
+ },
127
+ {
128
+ name: 'isArchived',
129
+ layout: {
130
+ positions: {
131
+ lg: {
132
+ colSpan: 12,
133
+ },
134
+ },
135
+ },
136
+ },
137
+ ],
138
+ },
139
+ update: {
140
+ sections: [
141
+ {
142
+ id: 'application',
143
+ },
144
+ ],
145
+ properties: [
146
+ {
147
+ name: 'name',
148
+ layout: {
149
+ positions: {
150
+ lg: {
151
+ colSpan: 6,
152
+ },
153
+ },
154
+ },
155
+ },
156
+ {
157
+ name: 'title',
158
+ layout: {
159
+ positions: {
160
+ lg: {
161
+ colSpan: 6,
162
+ },
163
+ },
164
+ },
165
+ },
166
+ {
167
+ name: 'isArchived',
168
+ layout: {
169
+ positions: {
170
+ lg: {
171
+ colSpan: 12,
172
+ },
173
+ },
174
+ },
175
+ },
176
+ ],
177
+ },
178
+ single: {
179
+ title: '{{title}}',
180
+ sections: [
181
+ {
182
+ id: 'application',
183
+ layout: {
184
+ positions: {
185
+ lg: {
186
+ colSpan: 12,
187
+ },
188
+ },
189
+ },
190
+ },
191
+ ],
192
+ properties: [
193
+ {
194
+ name: 'name',
195
+ layout: {
196
+ positions: {
197
+ lg: {
198
+ colSpan: 6,
199
+ },
200
+ },
201
+ },
202
+ },
203
+ {
204
+ name: 'title',
205
+ layout: {
206
+ positions: {
207
+ lg: {
208
+ colSpan: 6,
209
+ },
210
+ },
211
+ },
212
+ },
213
+ {
214
+ name: 'isArchived',
215
+ layout: {
216
+ positions: {
217
+ lg: {
218
+ colSpan: 12,
219
+ },
220
+ },
221
+ },
222
+ },
223
+ ],
224
+ actions: [],
225
+ },
226
+ list: {
227
+ actions: [
228
+ {
229
+ title: 'Create New',
230
+ command: 'create-entity',
231
+ priority: 'primary',
232
+ type: 'create',
233
+ scope: AXPEntityCommandScope.TypeLevel,
234
+ },
235
+ {
236
+ title: 'Delete Items',
237
+ command: 'delete-entity',
238
+ priority: 'primary',
239
+ type: 'delete',
240
+ scope: AXPEntityCommandScope.Selected,
241
+ },
242
+ {
243
+ title: 'Details',
244
+ command: 'open-entity',
245
+ priority: 'primary',
246
+ type: 'view',
247
+ scope: AXPEntityCommandScope.Individual,
248
+ },
249
+ {
250
+ title: 'Delete',
251
+ command: 'delete-entity',
252
+ priority: 'primary',
253
+ type: 'delete',
254
+ scope: AXPEntityCommandScope.Individual,
255
+ },
256
+ ],
257
+ views: [
258
+ {
259
+ name: 'all',
260
+ title: 'All Items',
261
+ fixed: true,
262
+ columns: [],
263
+ conditions: [],
264
+ sorts: [],
265
+ },
266
+ ],
267
+ },
268
+ },
269
+ },
270
+ };
271
+ return entityDef;
272
+ }
273
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwbGljYXRpb24tbW9kdWxlLmVudGl0eS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbW9kdWxlcy9hcHBsaWNhdGlvbi1tYW5hZ2VtZW50L3NyYy9saWIvYXBwbGljYXRpb24tbW9kdWxlLmVudGl0eS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsY0FBYyxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDM0UsT0FBTyxFQUFFLGdCQUFnQixFQUFhLHFCQUFxQixFQUFFLGtCQUFrQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDakgsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFFcEUsT0FBTyxFQUFFLCtCQUErQixFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFFbkYsTUFBTSxDQUFDLEtBQUssVUFBVSw4QkFBOEIsQ0FBQyxRQUFrQjtJQUNyRSxNQUFNLFdBQVcsR0FBRyxRQUFRLENBQUMsR0FBRyxDQUFDLCtCQUErQixDQUFDLENBQUM7SUFFbEUsTUFBTSxTQUFTLEdBQWM7UUFDM0IsTUFBTSxFQUFFLHdCQUF3QjtRQUNoQyxJQUFJLEVBQUUsb0JBQW9CO1FBQzFCLE1BQU0sRUFBRSwyQ0FBMkM7UUFDbkQsS0FBSyxFQUFFLFNBQVM7UUFDaEIsT0FBTyxFQUFFO1lBQ1AsVUFBVSxFQUFFLG9CQUFvQjtZQUNoQyxNQUFNLEVBQUUsb0JBQW9CO1NBQzdCO1FBQ0QsZUFBZSxFQUFFLEVBQUU7UUFDbkIsTUFBTSxFQUFFO1lBQ047Z0JBQ0UsRUFBRSxFQUFFLG9CQUFvQjtnQkFDeEIsS0FBSyxFQUFFLG9CQUFvQjthQUM1QjtTQUNGO1FBQ0QsVUFBVSxFQUFFO1lBQ1Y7Z0JBQ0UsSUFBSSxFQUFFLG1CQUFtQjtnQkFDekIsS0FBSyxFQUFFLG1CQUFtQjtnQkFDMUIsT0FBTyxFQUFFLG9CQUFvQjtnQkFDN0IsTUFBTSxFQUFFO29CQUNO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dEFycmF5IH0gZnJvbSAnQGFjb3JleC9tb2R1bGVzL2JhY2tlbmQnO1xuaW1wb3J0IHsgQVhQRGF0YUdlbmVyYXRvciwgQVhQRW50aXR5LCBBWFBFbnRpdHlDb21tYW5kU2NvcGUsIEFYUEVudGl0eVF1ZXJ5VHlwZSB9IGZyb20gJ0BhY29yZXgvcGxhdGZvcm0vY29tbW9uJztcbmltcG9ydCB7IEFYUFdpZGdldHNDYXRhbG9nIH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9sYXlvdXQvYnVpbGRlcic7XG5pbXBvcnQgeyBJbmplY3RvciB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQVhQQXBwbGljYXRpb25NYW5hZ2VtZW50U2VydmljZSB9IGZyb20gJy4vYXBwbGljYXRpb24tbWFuYWdlbWVudC5zZXJ2aWNlJztcblxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGFwcGxpY2F0aW9uTW9kdWxlRW50aXR5RmFjdG9yeShpbmplY3RvcjogSW5qZWN0b3IpOiBQcm9taXNlPEFYUEVudGl0eSB8IG51bGw+IHtcbiAgY29uc3QgZGF0YVNlcnZpY2UgPSBpbmplY3Rvci5nZXQoQVhQQXBwbGljYXRpb25NYW5hZ2VtZW50U2VydmljZSk7XG5cbiAgY29uc3QgZW50aXR5RGVmOiBBWFBFbnRpdHkgPSB7XG4gICAgbW9kdWxlOiAnYXBwbGljYXRpb24tbWFuYWdlbWVudCcsXG4gICAgbmFtZTogJ2FwcGxpY2F0aW9uLW1vZHVsZScsXG4gICAgc291cmNlOiAnYXBwbGljYXRpb24tbWFuYWdlbWVudC5hcHBsaWNhdGlvbi1tb2R1bGUnLFxuICAgIHRpdGxlOiAnTW9kdWxlcycsXG4gICAgZm9ybWF0czoge1xuICAgICAgaW5kaXZpZHVhbDogJ0FwcGxpY2F0aW9uIE1vZHVsZScsXG4gICAgICBwbHVyYWw6ICdBcHBsaWNhdGlvbiBNb2R1bGUnLFxuICAgIH0sXG4gICAgcmVsYXRlZEVudGl0aWVzOiBbXSxcbiAgICBncm91cHM6IFtcbiAgICAgIHtcbiAgICAgICAgaWQ6ICdhcHBsaWNhdGlvbi1tb2R1bGUnLFxuICAgICAgICB0aXRsZTogJ0FwcGxpY2F0aW9uIE1vZHVsZScsXG4gICAgICB9LFxuICAgIF0sXG4gICAgcHJvcGVydGllczogW1xuICAgICAge1xuICAgICAgICBuYW1lOiAnYXBwbGljYXRpb24udGl0bGUnLFxuICAgICAgICB0aXRsZTogJ0FwcGxpY2F0aW9uIFRpdGxlJyxcbiAgICAgICAgZ3JvdXBJZDogJ2FwcGxpY2F0aW9uLW1vZHVsZScsXG4gICAgICAgIHNjaGVtYToge1xuICAgICAgICAgIGRhdGFUeXBlOiAndGV4dCcsXG4gICAgICAgICAgaW50ZXJmYWNlOiB7XG4gICAgICAgICAgICB0eXBlOiBBWFBXaWRnZXRzQ2F0YWxvZy50ZXh0LFxuICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBuYW1lOiAnbW9kdWxlLnRpdGxlJyxcbiAgICAgICAgdGl0bGU6ICdNb2R1bGUgVGl0bGUnLFxuICAgICAgICBncm91cElkOiAnYXBwbGljYXRpb24tbW9kdWxlJyxcbiAgICAgICAgc2NoZW1hOiB7XG4gICAgICAgICAgZGF0YVR5cGU6ICd0ZXh0JyxcbiAgICAgICAgICBpbnRlcmZhY2U6IHtcbiAgICAgICAgICAgIHR5cGU6IEFYUFdpZGdldHNDYXRhbG9nLnRleHQsXG4gICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgXSxcbiAgICBjb2x1bW5zOiBbeyBuYW1lOiAnYXBwbGljYXRpb24udGl0bGUnIH0sIHsgbmFtZTogJ21vZHVsZS50aXRsZScgfSwgeyBuYW1lOiAnaXNBcmNoaXZlZCcgfV0sXG4gICAgY29tbWFuZHM6IHtcbiAgICAgIGNyZWF0ZToge1xuICAgICAgICBleGVjdXRlOiBhc3luYyAoZGF0YTogYW55KSA9PiB7XG4gICAgICAgICAgY29uc3QgZW50aXR5ID0gT2JqZWN0LmFzc2lnbihkYXRhLCB7IGlkOiBBWFBEYXRhR2VuZXJhdG9yLnV1aWQoKSB9KTtcbiAgICAgICAgICBkYXRhU2VydmljZS5hcHBsaWNhdGlvbk1vZHVsZURhdGFQcm92aWRlci5pbnNlcnRPbmUoZW50aXR5KTtcbiAgICAgICAgICByZXR1cm4gUHJvbWlzZS5yZXNvbHZlKGVudGl0eSk7XG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgICAgZGVsZXRlOiB7XG4gICAgICAgIGV4ZWN1dGU6IGFzeW5jIChpZDogYW55KSA9PiB7XG4gICAgICAgICAgYXdhaXQgYXdhaXQgZGF0YVNlcnZpY2UuYXBwbGljYXRpb25Nb2R1bGVEYXRhUHJvdmlkZXIuZGVsZXRlT25lKGlkKTtcbiAgICAgICAgICByZXR1cm4gUHJvbWlzZS5yZXNvbHZlKCk7XG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgICAgdXBkYXRlOiB7XG4gICAgICAgIGV4ZWN1dGU6IGFzeW5jIChkYXRhOiBhbnkpID0+IHtcbiAgICAgICAgICByZXR1cm4gbmV3IFByb21pc2UoKHJlc29sdmUpID0+IHtcbiAgICAgICAgICAgIHNldFRpbWVvdXQoYXN5bmMgKCkgPT4ge1xuICAgICAgICAgICAgICBhd2FpdCBkYXRhU2VydmljZS5hcHBsaWNhdGlvbk1vZHVsZURhdGFQcm92aWRlci51cGRhdGVPbmUoZGF0YS5pZCwgZGF0YSk7XG4gICAgICAgICAgICAgIHJlc29sdmUoZGF0YSk7XG4gICAgICAgICAgICB9LCAxMDAwKTtcbiAgICAgICAgICB9KTtcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgfSxcbiAgICBxdWVyaWVzOiB7XG4gICAgICBieUtleToge1xuICAgICAgICBleGVjdXRlOiBhc3luYyAoaWQ6IHN0cmluZykgPT4ge1xuICAgICAgICAgIHJldHVybiBuZXcgUHJvbWlzZSgocmVzb2x2ZSkgPT4ge1xuICAgICAgICAgICAgc2V0VGltZW91dChhc3luYyAoKSA9PiB7XG4gICAgICAgICAgICAgIGNvbnN0IGVudGl0eSA9IGF3YWl0IGRhdGFTZXJ2aWNlLmFwcGxpY2F0aW9uTW9kdWxlRGF0YVByb3ZpZGVyLmdldE9uZShpZCk7XG4gICAgICAgICAgICAgIHJlc29sdmUoZW50aXR5KTtcbiAgICAgICAgICAgIH0sIDUwMCk7XG4gICAgICAgICAgfSk7XG4gICAgICAgIH0sXG4gICAgICAgIHR5cGU6IEFYUEVudGl0eVF1ZXJ5VHlwZS5TaW5nbGUsXG4gICAgICB9LFxuICAgICAgbGlzdDoge1xuICAgICAgICBleGVjdXRlOiBhc3luYyAoZTogYW55KSA9PiB7XG4gICAgICAgICAgY29uc3QgbGlzdCA9IGF3YWl0IGRhdGFTZXJ2aWNlLmFwcGxpY2F0aW9uTW9kdWxlRGF0YVByb3ZpZGVyLmdldEFsbCgpO1xuICAgICAgICAgIGNvbnN0IHNvcnRlZEl0ZW1zID0gYXBwbHlTb3J0QXJyYXkobGlzdCwgZS5zb3J0KTtcbiAgICAgICAgICBjb25zdCBmaWx0ZXJlZEl0ZW1zID0gYXBwbHlGaWx0ZXJBcnJheShzb3J0ZWRJdGVtcywgZS5maWx0ZXIgPyBbZS5maWx0ZXJdIDogW10pO1xuICAgICAgICAgIHJldHVybiBQcm9taXNlLnJlc29sdmUoe1xuICAgICAgICAgICAgdG90YWw6IGZpbHRlcmVkSXRlbXMubGVuZ3RoLFxuICAgICAgICAgICAgaXRlbXM6IGZpbHRlcmVkSXRlbXMuc2xpY2UoZS5za2lwLCAoZS5za2lwID8/IDApICsgKGUudGFrZSA/PyAwKSksXG4gICAgICAgICAgfSk7XG4gICAgICAgIH0sXG4gICAgICAgIHR5cGU6IEFYUEVudGl0eVF1ZXJ5VHlwZS5MaXN0LFxuICAgICAgfSxcbiAgICB9LFxuICAgIGludGVyZmFjZXM6IHtcbiAgICAgIG1hc3Rlcjoge1xuICAgICAgICBjcmVhdGU6IHtcbiAgICAgICAgICBzZWN0aW9uczogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBpZDogJ2FwcGxpY2F0aW9uJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgXSxcbiAgICAgICAgICBwcm9wZXJ0aWVzOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIG5hbWU6ICduYW1lJyxcbiAgICAgICAgICAgICAgbGF5b3V0OiB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb25zOiB7XG4gICAgICAgICAgICAgICAgICBsZzoge1xuICAgICAgICAgICAgICAgICAgICBjb2xTcGFuOiA2LFxuICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgbmFtZTogJ3RpdGxlJyxcbiAgICAgICAgICAgICAgbGF5b3V0OiB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb25zOiB7XG4gICAgICAgICAgICAgICAgICBsZzoge1xuICAgICAgICAgICAgICAgICAgICBjb2xTcGFuOiA2LFxuICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgbmFtZTogJ2lzQXJjaGl2ZWQnLFxuICAgICAgICAgICAgICBsYXlvdXQ6IHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbnM6IHtcbiAgICAgICAgICAgICAgICAgIGxnOiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbFNwYW46IDEyLFxuICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICBdLFxuICAgICAgICB9LFxuICAgICAgICB1cGRhdGU6IHtcbiAgICAgICAgICBzZWN0aW9uczogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBpZDogJ2FwcGxpY2F0aW9uJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgXSxcbiAgICAgICAgICBwcm9wZXJ0aWVzOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIG5hbWU6ICduYW1lJyxcbiAgICAgICAgICAgICAgbGF5b3V0OiB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb25zOiB7XG4gICAgICAgICAgICAgICAgICBsZzoge1xuICAgICAgICAgICAgICAgICAgICBjb2xTcGFuOiA2LFxuICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgbmFtZTogJ3RpdGxlJyxcbiAgICAgICAgICAgICAgbGF5b3V0OiB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb25zOiB7XG4gICAgICAgICAgICAgICAgICBsZzoge1xuICAgICAgICAgICAgICAgICAgICBjb2xTcGFuOiA2LFxuICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgbmFtZTogJ2lzQXJjaGl2ZWQnLFxuICAgICAgICAgICAgICBsYXlvdXQ6IHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbnM6IHtcbiAgICAgICAgICAgICAgICAgIGxnOiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbFNwYW46IDEyLFxuICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICBdLFxuICAgICAgICB9LFxuICAgICAgICBzaW5nbGU6IHtcbiAgICAgICAgICB0aXRsZTogJ3t7dGl0bGV9fScsXG4gICAgICAgICAgc2VjdGlvbnM6IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgaWQ6ICdhcHBsaWNhdGlvbicsXG4gICAgICAgICAgICAgIGxheW91dDoge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uczoge1xuICAgICAgICAgICAgICAgICAgbGc6IHtcbiAgICAgICAgICAgICAgICAgICAgY29sU3BhbjogMTIsXG4gICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIF0sXG4gICAgICAgICAgcHJvcGVydGllczogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBuYW1lOiAnbmFtZScsXG4gICAgICAgICAgICAgIGxheW91dDoge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uczoge1xuICAgICAgICAgICAgICAgICAgbGc6IHtcbiAgICAgICAgICAgICAgICAgICAgY29sU3BhbjogNixcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIG5hbWU6ICd0aXRsZScsXG4gICAgICAgICAgICAgIGxheW91dDoge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uczoge1xuICAgICAgICAgICAgICAgICAgbGc6IHtcbiAgICAgICAgICAgICAgICAgICAgY29sU3BhbjogNixcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIG5hbWU6ICdpc0FyY2hpdmVkJyxcbiAgICAgICAgICAgICAgbGF5b3V0OiB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb25zOiB7XG4gICAgICAgICAgICAgICAgICBsZzoge1xuICAgICAgICAgICAgICAgICAgICBjb2xTcGFuOiAxMixcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgXSxcbiAgICAgICAgICBhY3Rpb25zOiBbXSxcbiAgICAgICAgfSxcbiAgICAgICAgbGlzdDoge1xuICAgICAgICAgIGFjdGlvbnM6IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgdGl0bGU6ICdDcmVhdGUgTmV3JyxcbiAgICAgICAgICAgICAgY29tbWFuZDogJ2NyZWF0ZS1lbnRpdHknLFxuICAgICAgICAgICAgICBwcmlvcml0eTogJ3ByaW1hcnknLFxuICAgICAgICAgICAgICB0eXBlOiAnY3JlYXRlJyxcbiAgICAgICAgICAgICAgc2NvcGU6IEFYUEVudGl0eUNvbW1hbmRTY29wZS5UeXBlTGV2ZWwsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICB0aXRsZTogJ0RlbGV0ZSBJdGVtcycsXG4gICAgICAgICAgICAgIGNvbW1hbmQ6ICdkZWxldGUtZW50aXR5JyxcbiAgICAgICAgICAgICAgcHJpb3JpdHk6ICdwcmltYXJ5JyxcbiAgICAgICAgICAgICAgdHlwZTogJ2RlbGV0ZScsXG4gICAgICAgICAgICAgIHNjb3BlOiBBWFBFbnRpdHlDb21tYW5kU2NvcGUuU2VsZWN0ZWQsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICB0aXRsZTogJ0RldGFpbHMnLFxuICAgICAgICAgICAgICBjb21tYW5kOiAnb3Blbi1lbnRpdHknLFxuICAgICAgICAgICAgICBwcmlvcml0eTogJ3ByaW1hcnknLFxuICAgICAgICAgICAgICB0eXBlOiAndmlldycsXG4gICAgICAgICAgICAgIHNjb3BlOiBBWFBFbnRpdHlDb21tYW5kU2NvcGUuSW5kaXZpZHVhbCxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIHRpdGxlOiAnRGVsZXRlJyxcbiAgICAgICAgICAgICAgY29tbWFuZDogJ2RlbGV0ZS1lbnRpdHknLFxuICAgICAgICAgICAgICBwcmlvcml0eTogJ3ByaW1hcnknLFxuICAgICAgICAgICAgICB0eXBlOiAnZGVsZXRlJyxcbiAgICAgICAgICAgICAgc2NvcGU6IEFYUEVudGl0eUNvbW1hbmRTY29wZS5JbmRpdmlkdWFsLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICBdLFxuICAgICAgICAgIHZpZXdzOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIG5hbWU6ICdhbGwnLFxuICAgICAgICAgICAgICB0aXRsZTogJ0FsbCBJdGVtcycsXG4gICAgICAgICAgICAgIGZpeGVkOiB0cnVlLFxuICAgICAgICAgICAgICBjb2x1bW5zOiBbXSxcbiAgICAgICAgICAgICAgY29uZGl0aW9uczogW10sXG4gICAgICAgICAgICAgIHNvcnRzOiBbXSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgXSxcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgfSxcbiAgfTtcblxuICByZXR1cm4gZW50aXR5RGVmO1xufVxuIl19