@acorex/modules 18.1.5 → 18.2.0

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 (194) hide show
  1. package/application-management/index.d.ts +2 -0
  2. package/application-management/lib/application-management.module.d.ts +0 -2
  3. package/application-management/lib/application-management.route.d.ts +2 -0
  4. package/application-management/lib/application-management.service.d.ts +14 -3
  5. package/application-management/lib/application-management.source.d.ts +7 -0
  6. package/application-management/lib/application-management.types.d.ts +50 -0
  7. package/application-management/lib/entity.loader.d.ts +9 -0
  8. package/application-management/lib/menu.provider.d.ts +5 -0
  9. package/application-management/lib/services/application-management.service.d.ts +10 -0
  10. package/application-management/lib/services/module-management.service.d.ts +10 -0
  11. package/auth/lib/auth.module.d.ts +4 -7
  12. package/auth/lib/menu.provider.d.ts +5 -0
  13. package/backend/lib/data/api/data-provider.d.ts +1 -0
  14. package/backend/lib/data/index.d.ts +0 -1
  15. package/backend/lib/data/local/local-data-provider.d.ts +1 -0
  16. package/conversation/README.md +3 -0
  17. package/conversation/index.d.ts +5 -0
  18. package/conversation/lib/comments/comment-list-view.component.d.ts +66 -0
  19. package/conversation/lib/comments/comment-lookup-popup.component.d.ts +10 -0
  20. package/conversation/lib/comments/comment.module.d.ts +25 -0
  21. package/conversation/lib/comments/comments.service.d.ts +5 -0
  22. package/conversation/lib/comments/comments.type.d.ts +74 -0
  23. package/conversation/lib/conversation.module.d.ts +8 -0
  24. package/esm2022/application-management/index.mjs +3 -1
  25. package/esm2022/application-management/lib/application-management.module.mjs +27 -47
  26. package/esm2022/application-management/lib/application-management.route.mjs +29 -0
  27. package/esm2022/application-management/lib/application-management.service.mjs +15 -15
  28. package/esm2022/application-management/lib/application-management.source.mjs +8 -0
  29. package/esm2022/application-management/lib/application-management.types.mjs +2 -0
  30. package/esm2022/application-management/lib/entities/applications.entity.mjs +8 -8
  31. package/esm2022/application-management/lib/entities/modules.entity.mjs +12 -15
  32. package/esm2022/application-management/lib/entities/property.entity.mjs +1 -2
  33. package/esm2022/application-management/lib/entity.loader.mjs +46 -0
  34. package/esm2022/application-management/lib/layouts/module-entity-detail-view/module-entity-detail-view.component.mjs +3 -3
  35. package/esm2022/application-management/lib/menu.provider.mjs +30 -0
  36. package/esm2022/application-management/lib/services/application-management.service.mjs +17 -0
  37. package/esm2022/application-management/lib/services/module-management.service.mjs +17 -0
  38. package/esm2022/auth/lib/account/app-chooser/app-chooser-slot.component.mjs +2 -2
  39. package/esm2022/auth/lib/account/profile/profile-slot.component.mjs +7 -4
  40. package/esm2022/auth/lib/auth.module.mjs +20 -14
  41. package/esm2022/auth/lib/login/password/password.component.mjs +2 -2
  42. package/esm2022/auth/lib/menu.provider.mjs +53 -0
  43. package/esm2022/backend/lib/backend.module.mjs +22 -26
  44. package/esm2022/backend/lib/data/api/data-provider.mjs +9 -1
  45. package/esm2022/backend/lib/data/index.mjs +1 -2
  46. package/esm2022/backend/lib/data/local/local-data-provider.mjs +11 -1
  47. package/esm2022/conversation/acorex-modules-conversation.mjs +5 -0
  48. package/esm2022/conversation/index.mjs +6 -0
  49. package/esm2022/conversation/lib/comments/comment-list-view.component.mjs +393 -0
  50. package/esm2022/conversation/lib/comments/comment-lookup-popup.component.mjs +56 -0
  51. package/esm2022/conversation/lib/comments/comment.module.mjs +89 -0
  52. package/esm2022/conversation/lib/comments/comments.service.mjs +4 -0
  53. package/esm2022/conversation/lib/comments/comments.type.mjs +2 -0
  54. package/esm2022/conversation/lib/conversation.module.mjs +17 -0
  55. package/esm2022/form-management/lib/form-management.module.mjs +32 -9
  56. package/esm2022/form-management/lib/menu.provider.mjs +35 -0
  57. package/esm2022/notification-management/index.mjs +3 -1
  58. package/esm2022/notification-management/lib/admin-notification-slot/admin-notification-item/admin-notification-item.component.mjs +8 -16
  59. package/esm2022/notification-management/lib/admin-notification-slot/admin-notification-panel/admin-notification-panel.component.mjs +31 -7
  60. package/esm2022/notification-management/lib/admin-notification-slot/admin-notification-slot/admin-notification-slot.component.mjs +3 -3
  61. package/esm2022/notification-management/lib/entities/my-notification.mjs +243 -0
  62. package/esm2022/notification-management/lib/entities/notification-channel.entity.mjs +2 -3
  63. package/esm2022/notification-management/lib/entities/notification-log.entity.mjs +180 -0
  64. package/esm2022/notification-management/lib/entity.loader.mjs +41 -0
  65. package/esm2022/notification-management/lib/menu.provider.mjs +57 -0
  66. package/esm2022/notification-management/lib/notification-management-mock-data.mjs +2 -2
  67. package/esm2022/notification-management/lib/notification-management.module.mjs +34 -39
  68. package/esm2022/notification-management/lib/notification-management.type.mjs +1 -1
  69. package/esm2022/notification-management/lib/notification.service.mjs +1 -1
  70. package/esm2022/{language-management/acorex-modules-language-management.mjs → platform-management/acorex-modules-platform-management.mjs} +1 -1
  71. package/esm2022/platform-management/index.mjs +5 -0
  72. package/esm2022/platform-management/lib/comments/comment-management.service.mjs +18 -0
  73. package/esm2022/platform-management/lib/global-variables/entities/global-variable.entity.mjs +295 -0
  74. package/esm2022/platform-management/lib/global-variables/entity.loader.mjs +26 -0
  75. package/esm2022/platform-management/lib/global-variables/global-variables.service.mjs +16 -0
  76. package/esm2022/platform-management/lib/global-variables/global-variables.types.mjs +2 -0
  77. package/esm2022/platform-management/lib/global-variables/index.mjs +5 -0
  78. package/esm2022/platform-management/lib/languages/entities/language.entity.mjs +234 -0
  79. package/esm2022/platform-management/lib/languages/entity.loader.mjs +26 -0
  80. package/esm2022/platform-management/lib/languages/index.mjs +5 -0
  81. package/esm2022/platform-management/lib/languages/language-management.service.mjs +16 -0
  82. package/esm2022/platform-management/lib/languages/language.types.mjs +2 -0
  83. package/esm2022/platform-management/lib/menu.provider.mjs +52 -0
  84. package/esm2022/platform-management/lib/platform-management.module.mjs +82 -0
  85. package/esm2022/template-management/index.mjs +7 -3
  86. package/esm2022/template-management/lib/entities/category.entity.mjs +234 -0
  87. package/esm2022/template-management/lib/entities/index.mjs +4 -0
  88. package/esm2022/template-management/lib/entities/template-variable.entity.mjs +124 -120
  89. package/esm2022/template-management/lib/entities/text-template.entity.mjs +386 -0
  90. package/esm2022/template-management/lib/entity.loader.mjs +36 -0
  91. package/esm2022/template-management/lib/menu.provider.mjs +43 -0
  92. package/esm2022/template-management/lib/template-management.module.mjs +53 -37
  93. package/esm2022/template-management/lib/template-management.types.mjs +2 -0
  94. package/esm2022/template-management/lib/template.service.mjs +17 -0
  95. package/esm2022/template-management/lib/text-management.source.mjs +3 -0
  96. package/esm2022/template-management/lib/text-template-category.service.mjs +17 -0
  97. package/fesm2022/{acorex-modules-application-management-module-designer.component-CFLXuP2G.mjs → acorex-modules-application-management-module-designer.component-BCaCCEXO.mjs} +2 -2
  98. package/fesm2022/{acorex-modules-application-management-module-designer.component-CFLXuP2G.mjs.map → acorex-modules-application-management-module-designer.component-BCaCCEXO.mjs.map} +1 -1
  99. package/fesm2022/acorex-modules-application-management.mjs +191 -81
  100. package/fesm2022/acorex-modules-application-management.mjs.map +1 -1
  101. package/fesm2022/{acorex-modules-auth-acorex-modules-auth-iGiPFEeb.mjs → acorex-modules-auth-acorex-modules-auth-D2WBJhj6.mjs} +86 -26
  102. package/fesm2022/acorex-modules-auth-acorex-modules-auth-D2WBJhj6.mjs.map +1 -0
  103. package/fesm2022/{acorex-modules-auth-app-chooser.component-BB3SIzCP.mjs → acorex-modules-auth-app-chooser.component-B7BwymT_.mjs} +2 -2
  104. package/fesm2022/{acorex-modules-auth-app-chooser.component-BB3SIzCP.mjs.map → acorex-modules-auth-app-chooser.component-B7BwymT_.mjs.map} +1 -1
  105. package/fesm2022/{acorex-modules-auth-login.module-ChEv9c5I.mjs → acorex-modules-auth-login.module-BjvPlYQZ.mjs} +4 -4
  106. package/fesm2022/{acorex-modules-auth-login.module-ChEv9c5I.mjs.map → acorex-modules-auth-login.module-BjvPlYQZ.mjs.map} +1 -1
  107. package/fesm2022/{acorex-modules-auth-master.layout-CZv3BD5c.mjs → acorex-modules-auth-master.layout-CeqMPrx8.mjs} +2 -2
  108. package/fesm2022/{acorex-modules-auth-master.layout-CZv3BD5c.mjs.map → acorex-modules-auth-master.layout-CeqMPrx8.mjs.map} +1 -1
  109. package/fesm2022/{acorex-modules-auth-password.component-CxZ1weks.mjs → acorex-modules-auth-password.component-87NrYq3i.mjs} +3 -3
  110. package/fesm2022/acorex-modules-auth-password.component-87NrYq3i.mjs.map +1 -0
  111. package/fesm2022/{acorex-modules-auth-password.component-CPWiBXdG.mjs → acorex-modules-auth-password.component-X3BUidi1.mjs} +2 -2
  112. package/fesm2022/{acorex-modules-auth-password.component-CPWiBXdG.mjs.map → acorex-modules-auth-password.component-X3BUidi1.mjs.map} +1 -1
  113. package/fesm2022/{acorex-modules-auth-routes-C7r2Jm6s.mjs → acorex-modules-auth-routes-D1JZT2cF.mjs} +2 -2
  114. package/fesm2022/{acorex-modules-auth-routes-C7r2Jm6s.mjs.map → acorex-modules-auth-routes-D1JZT2cF.mjs.map} +1 -1
  115. package/fesm2022/{acorex-modules-auth-two-factor.module-BgkJYe7T.mjs → acorex-modules-auth-two-factor.module-C28ix6Wr.mjs} +2 -2
  116. package/fesm2022/{acorex-modules-auth-two-factor.module-BgkJYe7T.mjs.map → acorex-modules-auth-two-factor.module-C28ix6Wr.mjs.map} +1 -1
  117. package/fesm2022/acorex-modules-auth.mjs +1 -1
  118. package/fesm2022/acorex-modules-backend.mjs +40 -232
  119. package/fesm2022/acorex-modules-backend.mjs.map +1 -1
  120. package/fesm2022/acorex-modules-conversation.mjs +550 -0
  121. package/fesm2022/acorex-modules-conversation.mjs.map +1 -0
  122. package/fesm2022/acorex-modules-form-management.mjs +63 -7
  123. package/fesm2022/acorex-modules-form-management.mjs.map +1 -1
  124. package/fesm2022/acorex-modules-notification-management.mjs +594 -63
  125. package/fesm2022/acorex-modules-notification-management.mjs.map +1 -1
  126. package/fesm2022/acorex-modules-platform-management.mjs +757 -0
  127. package/fesm2022/acorex-modules-platform-management.mjs.map +1 -0
  128. package/fesm2022/acorex-modules-template-management.mjs +618 -204
  129. package/fesm2022/acorex-modules-template-management.mjs.map +1 -1
  130. package/form-management/lib/form-management.module.d.ts +2 -2
  131. package/form-management/lib/menu.provider.d.ts +5 -0
  132. package/notification-management/index.d.ts +2 -0
  133. package/notification-management/lib/admin-notification-slot/admin-notification-item/admin-notification-item.component.d.ts +0 -4
  134. package/notification-management/lib/admin-notification-slot/admin-notification-panel/admin-notification-panel.component.d.ts +7 -2
  135. package/{template-management/lib/entities/global-template.entity.d.ts → notification-management/lib/entities/my-notification.d.ts} +1 -1
  136. package/notification-management/lib/entities/notification-log.entity.d.ts +3 -0
  137. package/notification-management/lib/entity.loader.d.ts +9 -0
  138. package/notification-management/lib/menu.provider.d.ts +5 -0
  139. package/notification-management/lib/notification-management-mock-data.d.ts +2 -3
  140. package/notification-management/lib/notification-management.module.d.ts +1 -7
  141. package/notification-management/lib/notification-management.service.d.ts +2 -2
  142. package/notification-management/lib/notification-management.type.d.ts +1 -1
  143. package/notification-management/lib/notification.service.d.ts +3 -4
  144. package/package.json +18 -12
  145. package/platform-management/README.md +4 -0
  146. package/platform-management/index.d.ts +4 -0
  147. package/platform-management/lib/comments/comment-management.service.d.ts +10 -0
  148. package/platform-management/lib/global-variables/entities/global-variable.entity.d.ts +3 -0
  149. package/platform-management/lib/global-variables/entity.loader.d.ts +9 -0
  150. package/platform-management/lib/global-variables/global-variables.service.d.ts +10 -0
  151. package/platform-management/lib/global-variables/global-variables.types.d.ts +7 -0
  152. package/platform-management/lib/global-variables/index.d.ts +4 -0
  153. package/platform-management/lib/languages/entity.loader.d.ts +9 -0
  154. package/platform-management/lib/languages/index.d.ts +4 -0
  155. package/platform-management/lib/languages/language-management.service.d.ts +10 -0
  156. package/platform-management/lib/languages/language.types.d.ts +5 -0
  157. package/platform-management/lib/menu.provider.d.ts +5 -0
  158. package/platform-management/lib/platform-management.module.d.ts +6 -0
  159. package/template-management/index.d.ts +6 -2
  160. package/template-management/lib/entities/category.entity.d.ts +3 -0
  161. package/template-management/lib/entities/index.d.ts +3 -0
  162. package/template-management/lib/entities/template-variable.entity.d.ts +1 -1
  163. package/template-management/lib/entities/text-template.entity.d.ts +3 -0
  164. package/template-management/lib/entity.loader.d.ts +9 -0
  165. package/template-management/lib/menu.provider.d.ts +5 -0
  166. package/template-management/lib/template-management.module.d.ts +4 -10
  167. package/template-management/lib/template-management.types.d.ts +19 -0
  168. package/template-management/lib/template.service.d.ts +10 -0
  169. package/template-management/lib/text-management.source.d.ts +2 -0
  170. package/template-management/lib/text-template-category.service.d.ts +10 -0
  171. package/backend/lib/data/api/comment.mock.service.d.ts +0 -62
  172. package/backend/lib/data/api/notification.mock.service.d.ts +0 -34
  173. package/esm2022/backend/lib/data/api/comment.mock.service.mjs +0 -142
  174. package/esm2022/backend/lib/data/api/notification.mock.service.mjs +0 -71
  175. package/esm2022/language-management/index.mjs +0 -2
  176. package/esm2022/language-management/lib/entities/language.entity.mjs +0 -242
  177. package/esm2022/language-management/lib/language-management.module.mjs +0 -39
  178. package/esm2022/language-management/lib/notification-management.service.mjs +0 -23
  179. package/esm2022/template-management/lib/entities/global-template.entity.mjs +0 -298
  180. package/esm2022/template-management/lib/template-management-mock-data.mjs +0 -11
  181. package/esm2022/template-management/lib/template-management.service.mjs +0 -24
  182. package/fesm2022/acorex-modules-auth-acorex-modules-auth-iGiPFEeb.mjs.map +0 -1
  183. package/fesm2022/acorex-modules-auth-password.component-CxZ1weks.mjs.map +0 -1
  184. package/fesm2022/acorex-modules-language-management-language.entity-CwD5FHGc.mjs +0 -266
  185. package/fesm2022/acorex-modules-language-management-language.entity-CwD5FHGc.mjs.map +0 -1
  186. package/fesm2022/acorex-modules-language-management.mjs +0 -46
  187. package/fesm2022/acorex-modules-language-management.mjs.map +0 -1
  188. package/language-management/README.md +0 -3
  189. package/language-management/index.d.ts +0 -1
  190. package/language-management/lib/language-management.module.d.ts +0 -12
  191. package/language-management/lib/notification-management.service.d.ts +0 -9
  192. package/template-management/lib/template-management-mock-data.d.ts +0 -7
  193. package/template-management/lib/template-management.service.d.ts +0 -9
  194. /package/{language-management/lib → platform-management/lib/languages}/entities/language.entity.d.ts +0 -0
@@ -1,23 +1,23 @@
1
- import { AXPDataGenerator, AXPEntityCommandScope, AXPEntityQueryType } from '@acorex/platform/common';
1
+ import { AXPEntityCommandScope, AXPEntityQueryType } from '@acorex/platform/common';
2
2
  import { AXPWidgetsCatalog } from '@acorex/platform/layout/builder';
3
- import { TemplateManagementService } from '../template-management.service';
4
- export async function templateVariableEntityFactory(injector) {
5
- const dataService = injector.get(TemplateManagementService);
3
+ import { AXMTextTemplateService } from '../template.service';
4
+ export async function textTemplateVariableEntityFactory(injector) {
5
+ const dataService = injector.get(AXMTextTemplateService);
6
6
  const entityDef = {
7
7
  module: 'template-management',
8
- name: 'templateVariable',
9
- source: 'template-management.templateVariable',
10
- title: 'TemplateVariables',
8
+ name: 'textTemplateVariable',
9
+ source: 'template-management.variable',
10
+ title: 'Template Variables',
11
11
  formats: {
12
12
  individual: 'TemplateVariable',
13
- plural: 'TemplateVariables',
13
+ plural: 'TemplateVariables'
14
14
  },
15
15
  relatedEntities: [],
16
16
  groups: [
17
17
  {
18
18
  id: 'templateVariable',
19
- title: 'TemplateVariable',
20
- },
19
+ title: 'TemplateVariable'
20
+ }
21
21
  ],
22
22
  properties: [
23
23
  {
@@ -27,9 +27,9 @@ export async function templateVariableEntityFactory(injector) {
27
27
  schema: {
28
28
  dataType: 'string',
29
29
  interface: {
30
- type: AXPWidgetsCatalog.text,
31
- },
32
- },
30
+ type: AXPWidgetsCatalog.text
31
+ }
32
+ }
33
33
  },
34
34
  {
35
35
  name: 'title',
@@ -38,9 +38,9 @@ export async function templateVariableEntityFactory(injector) {
38
38
  schema: {
39
39
  dataType: 'string',
40
40
  interface: {
41
- type: AXPWidgetsCatalog.text,
42
- },
43
- },
41
+ type: AXPWidgetsCatalog.text
42
+ }
43
+ }
44
44
  },
45
45
  {
46
46
  name: 'type',
@@ -49,81 +49,85 @@ export async function templateVariableEntityFactory(injector) {
49
49
  schema: {
50
50
  dataType: 'string',
51
51
  interface: {
52
- type: AXPWidgetsCatalog.select,
53
- },
54
- },
52
+ type: AXPWidgetsCatalog.select
53
+ }
54
+ }
55
55
  },
56
56
  {
57
- name: 'requirement',
58
- title: 'Requirement',
57
+ name: 'required',
58
+ title: 'required',
59
59
  groupId: 'templateVariable',
60
60
  schema: {
61
61
  dataType: 'boolean',
62
62
  interface: {
63
- type: AXPWidgetsCatalog.toggle,
64
- },
65
- },
66
- },
63
+ type: AXPWidgetsCatalog.toggle
64
+ }
65
+ }
66
+ }
67
67
  ],
68
- columns: [{ name: 'name' }, { name: 'title' }, { name: 'requirement' }],
68
+ columns: [{ name: 'name' }, { name: 'title' }, { name: 'required' }],
69
69
  commands: {
70
70
  create: {
71
71
  execute: async (data) => {
72
- const entity = Object.assign(data, { id: AXPDataGenerator.uuid() });
73
- // dataService.templateVariableDataProvider.insertOne(entity);
74
- return Promise.resolve(entity);
75
- },
72
+ const item = await dataService.getOne(data.globalTemplateId);
73
+ (item.templateVariables ??= []).push(data);
74
+ return await dataService.updateOne(data.globalTemplateId, item);
75
+ }
76
76
  },
77
77
  delete: {
78
78
  execute: async (id) => {
79
79
  // await await dataService.templateVariableDataProvider.deleteOne(id);
80
80
  return Promise.resolve();
81
- },
81
+ }
82
82
  },
83
83
  update: {
84
84
  execute: async (data) => {
85
- debugger;
85
+ console.log(data);
86
86
  return new Promise((resolve) => {
87
87
  setTimeout(async () => {
88
88
  // await dataService.templateVariableDataProvider.updateOne(data.id, data);
89
89
  resolve(data);
90
90
  }, 1000);
91
91
  });
92
- },
93
- },
92
+ }
93
+ }
94
94
  },
95
95
  queries: {
96
96
  byKey: {
97
97
  execute: async (id) => {
98
98
  return new Promise((resolve) => {
99
99
  setTimeout(async () => {
100
- // const entity = await dataService.templateVariableDataProvider.getOne(id);
100
+ const entity = await dataService.getOne(id);
101
101
  // resolve(entity);
102
102
  }, 500);
103
103
  });
104
104
  },
105
- type: AXPEntityQueryType.Single,
105
+ type: AXPEntityQueryType.Single
106
106
  },
107
107
  list: {
108
108
  execute: async (e) => {
109
- // const list = await dataService.templateVariableDataProvider.getAll();
110
- // const sortedItems = applySortArray(list, e.sort);
111
- // const filteredItems = applyFilterArray(sortedItems, e.filter ? [e.filter] : []);
112
- // return Promise.resolve({
113
- // total: filteredItems.length,
114
- // items: filteredItems.slice(e.skip, (e.skip ?? 0) + (e.take ?? 0)),
115
- // });
109
+ if (e.filter != null && e.filter.filters != null && e.filter.filters[0].value != null) {
110
+ const parentItem = await dataService.getOne(e.filter?.filters[0].value);
111
+ return {
112
+ totalCount: parentItem.templateVariables.length,
113
+ items: parentItem.templateVariables
114
+ };
115
+ }
116
+ else {
117
+ //TODO throw exception
118
+ return [];
119
+ }
116
120
  },
117
- type: AXPEntityQueryType.List,
118
- },
121
+ type: AXPEntityQueryType.List
122
+ }
119
123
  },
120
124
  interfaces: {
121
125
  master: {
122
126
  create: {
123
127
  sections: [
124
128
  {
125
- id: 'templateVariable',
126
- },
129
+ id: 'templateVariable'
130
+ }
127
131
  ],
128
132
  properties: [
129
133
  {
@@ -131,44 +135,44 @@ export async function templateVariableEntityFactory(injector) {
131
135
  layout: {
132
136
  positions: {
133
137
  lg: {
134
- colSpan: 6,
135
- },
136
- },
137
- },
138
+ colSpan: 6
139
+ }
140
+ }
141
+ }
138
142
  },
139
143
  {
140
144
  name: 'title',
141
145
  layout: {
142
146
  positions: {
143
147
  lg: {
144
- colSpan: 6,
145
- },
146
- },
147
- },
148
+ colSpan: 6
149
+ }
150
+ }
151
+ }
148
152
  },
149
153
  {
150
- name: 'requirement',
154
+ name: 'required',
151
155
  layout: {
152
156
  positions: {
153
157
  lg: {
154
- colSpan: 6,
155
- },
156
- },
157
- },
158
- },
159
- ],
158
+ colSpan: 6
159
+ }
160
+ }
161
+ }
162
+ }
163
+ ]
160
164
  },
161
165
  update: {
162
166
  sections: [
163
167
  {
164
- id: 'templateVariable',
168
+ id: 'templateVariable'
165
169
  },
166
170
  {
167
- id: 'schema',
171
+ id: 'schema'
168
172
  },
169
173
  {
170
- id: 'interface',
171
- },
174
+ id: 'interface'
175
+ }
172
176
  ],
173
177
  properties: [
174
178
  {
@@ -176,49 +180,49 @@ export async function templateVariableEntityFactory(injector) {
176
180
  layout: {
177
181
  positions: {
178
182
  lg: {
179
- colSpan: 6,
180
- },
181
- },
182
- },
183
+ colSpan: 6
184
+ }
185
+ }
186
+ }
183
187
  },
184
188
  {
185
189
  name: 'title',
186
190
  layout: {
187
191
  positions: {
188
192
  lg: {
189
- colSpan: 6,
190
- },
191
- },
192
- },
193
+ colSpan: 6
194
+ }
195
+ }
196
+ }
193
197
  },
194
198
  {
195
199
  name: 'schema.nullable',
196
200
  layout: {
197
201
  positions: {
198
202
  lg: {
199
- colSpan: 6,
200
- },
201
- },
202
- },
203
+ colSpan: 6
204
+ }
205
+ }
206
+ }
203
207
  },
204
208
  {
205
- name: 'requirement',
209
+ name: 'required',
206
210
  layout: {
207
211
  positions: {
208
212
  lg: {
209
- colSpan: 6,
210
- },
211
- },
212
- },
213
- },
214
- ],
213
+ colSpan: 6
214
+ }
215
+ }
216
+ }
217
+ }
218
+ ]
215
219
  },
216
220
  single: {
217
221
  title: '{{title}}',
218
222
  sections: [
219
223
  {
220
- id: 'templateVariable',
221
- },
224
+ id: 'templateVariable'
225
+ }
222
226
  ],
223
227
  properties: [
224
228
  {
@@ -226,33 +230,33 @@ export async function templateVariableEntityFactory(injector) {
226
230
  layout: {
227
231
  positions: {
228
232
  lg: {
229
- colSpan: 6,
230
- },
231
- },
232
- },
233
+ colSpan: 6
234
+ }
235
+ }
236
+ }
233
237
  },
234
238
  {
235
239
  name: 'title',
236
240
  layout: {
237
241
  positions: {
238
242
  lg: {
239
- colSpan: 6,
240
- },
241
- },
242
- },
243
+ colSpan: 6
244
+ }
245
+ }
246
+ }
243
247
  },
244
248
  {
245
- name: 'requirement',
249
+ name: 'required',
246
250
  layout: {
247
251
  positions: {
248
252
  lg: {
249
- colSpan: 12,
250
- },
251
- },
252
- },
253
- },
253
+ colSpan: 12
254
+ }
255
+ }
256
+ }
257
+ }
254
258
  ],
255
- actions: [],
259
+ actions: []
256
260
  },
257
261
  list: {
258
262
  actions: [
@@ -261,29 +265,29 @@ export async function templateVariableEntityFactory(injector) {
261
265
  command: 'create-entity',
262
266
  priority: 'primary',
263
267
  type: 'create',
264
- scope: AXPEntityCommandScope.TypeLevel,
268
+ scope: AXPEntityCommandScope.TypeLevel
265
269
  },
266
270
  {
267
271
  title: 'Delete Items',
268
272
  command: 'delete-entity',
269
273
  priority: 'primary',
270
274
  type: 'delete',
271
- scope: AXPEntityCommandScope.Selected,
272
- },
273
- {
274
- title: 'Details',
275
- command: 'open-entity',
276
- priority: 'primary',
277
- type: 'view',
278
- scope: AXPEntityCommandScope.Individual,
275
+ scope: AXPEntityCommandScope.Selected
279
276
  },
277
+ // {
278
+ // title: 'Update',
279
+ // command: 'update-entity',
280
+ // priority: 'primary',
281
+ // type: 'view',
282
+ // scope: AXPEntityCommandScope.Individual
283
+ // },
280
284
  {
281
285
  title: 'Delete',
282
286
  command: 'delete-entity',
283
287
  priority: 'primary',
284
288
  type: 'delete',
285
- scope: AXPEntityCommandScope.Individual,
286
- },
289
+ scope: AXPEntityCommandScope.Individual
290
+ }
287
291
  ],
288
292
  views: [
289
293
  {
@@ -292,13 +296,13 @@ export async function templateVariableEntityFactory(injector) {
292
296
  fixed: true,
293
297
  columns: [],
294
298
  conditions: [],
295
- sorts: [],
296
- },
297
- ],
298
- },
299
- },
300
- },
299
+ sorts: []
300
+ }
301
+ ]
302
+ }
303
+ }
304
+ }
301
305
  };
302
306
  return entityDef;
303
307
  }
304
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVtcGxhdGUtdmFyaWFibGUuZW50aXR5LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tb2R1bGVzL3RlbXBsYXRlLW1hbmFnZW1lbnQvc3JjL2xpYi9lbnRpdGllcy90ZW1wbGF0ZS12YXJpYWJsZS5lbnRpdHkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGdCQUFnQixFQUFhLHFCQUFxQixFQUFFLGtCQUFrQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDakgsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFFcEUsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFFM0UsTUFBTSxDQUFDLEtBQUssVUFBVSw2QkFBNkIsQ0FBQyxRQUFrQjtJQUNwRSxNQUFNLFdBQVcsR0FBRyxRQUFRLENBQUMsR0FBRyxDQUFDLHlCQUF5QixDQUFDLENBQUM7SUFFNUQsTUFBTSxTQUFTLEdBQWM7UUFDM0IsTUFBTSxFQUFFLHFCQUFxQjtRQUM3QixJQUFJLEVBQUUsa0JBQWtCO1FBQ3hCLE1BQU0sRUFBRSxzQ0FBc0M7UUFDOUMsS0FBSyxFQUFFLG1CQUFtQjtRQUMxQixPQUFPLEVBQUU7WUFDUCxVQUFVLEVBQUUsa0JBQWtCO1lBQzlCLE1BQU0sRUFBRSxtQkFBbUI7U0FDNUI7UUFDRCxlQUFlLEVBQUUsRUFBRTtRQUNuQixNQUFNLEVBQUU7WUFDTjtnQkFDRSxFQUFFLEVBQUUsa0JBQWtCO2dCQUN0QixLQUFLLEVBQUUsa0JBQWtCO2FBQzFCO1NBQ0Y7UUFDRCxVQUFVLEVBQUU7WUFDVjtnQkFDRSxJQUFJLEVBQUUsTUFBTTtnQkFDWixLQUFLLEVBQUUsTUFBTTtnQkFDYixPQUFPLEVBQUUsa0JBQWtCO2dCQUMzQixNQUFNLEVBQUU7b0JBQ04sUUFBUSxFQUFFLFFBQVE7b0JBQ2xCLFNBQVMsRUFBRTt3QkFDVCxJQUFJLEVBQUUsaUJB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SyxFQUFFLHFCQUFxQixDQUFDLFNBQVM7eUJBQ3ZDO3dCQUNEOzRCQUNFLEtBQUssRUFBRSxjQUFjOzRCQUNyQixPQUFPLEVBQUUsZUFBZTs0QkFDeEIsUUFBUSxFQUFFLFNBQVM7NEJBQ25CLElBQUksRUFBRSxRQUFROzRCQUNkLEtBQUssRUFBRSxxQkFBcUIsQ0FBQyxRQUFRO3lCQUN0Qzt3QkFDRDs0QkFDRSxLQUFLLEVBQUUsU0FBUzs0QkFDaEIsT0FBTyxFQUFFLGFBQWE7NEJBQ3RCLFFBQVEsRUFBRSxTQUFTOzRCQUNuQixJQUFJLEVBQUUsTUFBTTs0QkFDWixLQUFLLEVBQUUscUJBQXFCLENBQUMsVUFBVTt5QkFDeEM7d0JBQ0Q7NEJBQ0UsS0FBSyxFQUFFLFFBQVE7NEJBQ2YsT0FBTyxFQUFFLGVBQWU7NEJBQ3hCLFFBQVEsRUFBRSxTQUFTOzRCQUNuQixJQUFJLEVBQUUsUUFBUTs0QkFDZCxLQUFLLEVBQUUscUJBQXFCLENBQUMsVUFBVTt5QkFDeEM7cUJBQ0Y7b0JBQ0QsS0FBSyxFQUFFO3dCQUNMOzRCQUNFLElBQUksRUFBRSxLQUFLOzRCQUNYLEtBQUssRUFBRSxXQUFXOzRCQUNsQixLQUFLLEVBQUUsSUFBSTs0QkFDWCxPQUFPLEVBQUUsRUFBRTs0QkFDWCxVQUFVLEVBQUUsRUFBRTs0QkFDZCxLQUFLLEVBQUUsRUFBRTt5QkFDVjtxQkFDRjtpQkFDRjthQUNGO1NBQ0Y7S0FDRixDQUFDO0lBRUYsT0FBTyxTQUFTLENBQUM7QUFDbkIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFYUERhdGFHZW5lcmF0b3IsIEFYUEVudGl0eSwgQVhQRW50aXR5Q29tbWFuZFNjb3BlLCBBWFBFbnRpdHlRdWVyeVR5cGUgfSBmcm9tICdAYWNvcmV4L3BsYXRmb3JtL2NvbW1vbic7XG5pbXBvcnQgeyBBWFBXaWRnZXRzQ2F0YWxvZyB9IGZyb20gJ0BhY29yZXgvcGxhdGZvcm0vbGF5b3V0L2J1aWxkZXInO1xuaW1wb3J0IHsgSW5qZWN0b3IgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFRlbXBsYXRlTWFuYWdlbWVudFNlcnZpY2UgfSBmcm9tICcuLi90ZW1wbGF0ZS1tYW5hZ2VtZW50LnNlcnZpY2UnO1xuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gdGVtcGxhdGVWYXJpYWJsZUVudGl0eUZhY3RvcnkoaW5qZWN0b3I6IEluamVjdG9yKTogUHJvbWlzZTxBWFBFbnRpdHkgfCBudWxsPiB7XG4gIGNvbnN0IGRhdGFTZXJ2aWNlID0gaW5qZWN0b3IuZ2V0KFRlbXBsYXRlTWFuYWdlbWVudFNlcnZpY2UpO1xuXG4gIGNvbnN0IGVudGl0eURlZjogQVhQRW50aXR5ID0ge1xuICAgIG1vZHVsZTogJ3RlbXBsYXRlLW1hbmFnZW1lbnQnLFxuICAgIG5hbWU6ICd0ZW1wbGF0ZVZhcmlhYmxlJyxcbiAgICBzb3VyY2U6ICd0ZW1wbGF0ZS1tYW5hZ2VtZW50LnRlbXBsYXRlVmFyaWFibGUnLFxuICAgIHRpdGxlOiAnVGVtcGxhdGVWYXJpYWJsZXMnLFxuICAgIGZvcm1hdHM6IHtcbiAgICAgIGluZGl2aWR1YWw6ICdUZW1wbGF0ZVZhcmlhYmxlJyxcbiAgICAgIHBsdXJhbDogJ1RlbXBsYXRlVmFyaWFibGVzJyxcbiAgICB9LFxuICAgIHJlbGF0ZWRFbnRpdGllczogW10sXG4gICAgZ3JvdXBzOiBbXG4gICAgICB7XG4gICAgICAgIGlkOiAndGVtcGxhdGVWYXJpYWJsZScsXG4gICAgICAgIHRpdGxlOiAnVGVtcGxhdGVWYXJpYWJsZScsXG4gICAgICB9LFxuICAgIF0sXG4gICAgcHJvcGVydGllczogW1xuICAgICAge1xuICAgICAgICBuYW1lOiAnbmFtZScsXG4gICAgICAgIHRpdGxlOiAnTmFtZScsXG4gICAgICAgIGdyb3VwSWQ6ICd0ZW1wbGF0ZVZhcmlhYmxlJyxcbiAgICAgICAgc2NoZW1hOiB7XG4gICAgICAgICAgZGF0YVR5cGU6ICdzdHJpbmcnLFxuICAgICAgICAgIGludGVyZmFjZToge1xuICAgICAgICAgICAgdHlwZTogQVhQV2lkZ2V0c0NhdGFsb2cudGV4dCxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgbmFtZTogJ3RpdGxlJyxcbiAgICAgICAgdGl0bGU6ICdUaXRsZScsXG4gICAgICAgIGdyb3VwSWQ6ICd0ZW1wbGF0ZVZhcmlhYmxlJyxcbiAgICAgICAgc2NoZW1hOiB7XG4gICAgICAgICAgZGF0YVR5cGU6ICdzdHJpbmcnLFxuICAgICAgICAgIGludGVyZmFjZToge1xuICAgICAgICAgICAgdHlwZTogQVhQV2lkZ2V0c0NhdGFsb2cudGV4dCxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgbmFtZTogJ3R5cGUnLFxuICAgICAgICB0aXRsZTogJ1R5cGUnLFxuICAgICAgICBncm91cElkOiAndGVtcGxhdGVWYXJpYWJsZScsXG4gICAgICAgIHNjaGVtYToge1xuICAgICAgICAgIGRhdGFUeXBlOiAnc3RyaW5nJyxcbiAgICAgICAgICBpbnRlcmZhY2U6IHtcbiAgICAgICAgICAgIHR5cGU6IEFYUFdpZGdldHNDYXRhbG9nLnNlbGVjdCxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgbmFtZTogJ3JlcXVpcmVtZW50JyxcbiAgICAgICAgdGl0bGU6ICdSZXF1aXJlbWVudCcsXG4gICAgICAgIGdyb3VwSWQ6ICd0ZW1wbGF0ZVZhcmlhYmxlJyxcbiAgICAgICAgc2NoZW1hOiB7XG4gICAgICAgICAgZGF0YVR5cGU6ICdib29sZWFuJyxcbiAgICAgICAgICBpbnRlcmZhY2U6IHtcbiAgICAgICAgICAgIHR5cGU6IEFYUFdpZGdldHNDYXRhbG9nLnRvZ2dsZSxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgfSxcbiAgICBdLFxuICAgIGNvbHVtbnM6IFt7IG5hbWU6ICduYW1lJyB9LCB7IG5hbWU6ICd0aXRsZScgfSwgeyBuYW1lOiAncmVxdWlyZW1lbnQnIH1dLFxuICAgIGNvbW1hbmRzOiB7XG4gICAgICBjcmVhdGU6IHtcbiAgICAgICAgZXhlY3V0ZTogYXN5bmMgKGRhdGE6IGFueSkgPT4ge1xuICAgICAgICAgIGNvbnN0IGVudGl0eSA9IE9iamVjdC5hc3NpZ24oZGF0YSwgeyBpZDogQVhQRGF0YUdlbmVyYXRvci51dWlkKCkgfSk7XG5cbiAgICAgICAgICAvLyAgZGF0YVNlcnZpY2UudGVtcGxhdGVWYXJpYWJsZURhdGFQcm92aWRlci5pbnNlcnRPbmUoZW50aXR5KTtcbiAgICAgICAgICByZXR1cm4gUHJvbWlzZS5yZXNvbHZlKGVudGl0eSk7XG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgICAgZGVsZXRlOiB7XG4gICAgICAgIGV4ZWN1dGU6IGFzeW5jIChpZDogYW55KSA9PiB7XG4gICAgICAgICAgLy8gICAgYXdhaXQgYXdhaXQgZGF0YVNlcnZpY2UudGVtcGxhdGVWYXJpYWJsZURhdGFQcm92aWRlci5kZWxldGVPbmUoaWQpO1xuICAgICAgICAgIHJldHVybiBQcm9taXNlLnJlc29sdmUoKTtcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgICB1cGRhdGU6IHtcbiAgICAgICAgZXhlY3V0ZTogYXN5bmMgKGRhdGE6IGFueSkgPT4ge1xuICAgICAgICAgIGRlYnVnZ2VyO1xuICAgICAgICAgIHJldHVybiBuZXcgUHJvbWlzZSgocmVzb2x2ZSkgPT4ge1xuICAgICAgICAgICAgc2V0VGltZW91dChhc3luYyAoKSA9PiB7XG4gICAgICAgICAgICAgIC8vICAgYXdhaXQgZGF0YVNlcnZpY2UudGVtcGxhdGVWYXJpYWJsZURhdGFQcm92aWRlci51cGRhdGVPbmUoZGF0YS5pZCwgZGF0YSk7XG4gICAgICAgICAgICAgIHJlc29sdmUoZGF0YSk7XG4gICAgICAgICAgICB9LCAxMDAwKTtcbiAgICAgICAgICB9KTtcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgfSxcbiAgICBxdWVyaWVzOiB7XG4gICAgICBieUtleToge1xuICAgICAgICBleGVjdXRlOiBhc3luYyAoaWQ6IHN0cmluZykgPT4ge1xuICAgICAgICAgIHJldHVybiBuZXcgUHJvbWlzZSgocmVzb2x2ZSkgPT4ge1xuICAgICAgICAgICAgc2V0VGltZW91dChhc3luYyAoKSA9PiB7XG4gICAgICAgICAgICAgIC8vIGNvbnN0IGVudGl0eSA9IGF3YWl0IGRhdGFTZXJ2aWNlLnRlbXBsYXRlVmFyaWFibGVEYXRhUHJvdmlkZXIuZ2V0T25lKGlkKTtcbiAgICAgICAgICAgICAgLy8gcmVzb2x2ZShlbnRpdHkpO1xuICAgICAgICAgICAgfSwgNTAwKTtcbiAgICAgICAgICB9KTtcbiAgICAgICAgfSxcbiAgICAgICAgdHlwZTogQVhQRW50aXR5UXVlcnlUeXBlLlNpbmdsZSxcbiAgICAgIH0sXG4gICAgICBsaXN0OiB7XG4gICAgICAgIGV4ZWN1dGU6IGFzeW5jIChlOiBhbnkpID0+IHtcbiAgICAgICAgICAvLyAgIGNvbnN0IGxpc3QgPSBhd2FpdCBkYXRhU2VydmljZS50ZW1wbGF0ZVZhcmlhYmxlRGF0YVByb3ZpZGVyLmdldEFsbCgpO1xuICAgICAgICAgIC8vICAgY29uc3Qgc29ydGVkSXRlbXMgPSBhcHBseVNvcnRBcnJheShsaXN0LCBlLnNvcnQpO1xuICAgICAgICAgIC8vICAgY29uc3QgZmlsdGVyZWRJdGVtcyA9IGFwcGx5RmlsdGVyQXJyYXkoc29ydGVkSXRlbXMsIGUuZmlsdGVyID8gW2UuZmlsdGVyXSA6IFtdKTtcbiAgICAgICAgICAvLyAgIHJldHVybiBQcm9taXNlLnJlc29sdmUoe1xuICAgICAgICAgIC8vICAgICB0b3RhbDogZmlsdGVyZWRJdGVtcy5sZW5ndGgsXG4gICAgICAgICAgLy8gICAgIGl0ZW1zOiBmaWx0ZXJlZEl0ZW1zLnNsaWNlKGUuc2tpcCwgKGUuc2tpcCA/PyAwKSArIChlLnRha2UgPz8gMCkpLFxuICAgICAgICAgIC8vICAgfSk7XG4gICAgICAgIH0sXG4gICAgICAgIHR5cGU6IEFYUEVudGl0eVF1ZXJ5VHlwZS5MaXN0LFxuICAgICAgfSxcbiAgICB9LFxuICAgIGludGVyZmFjZXM6IHtcbiAgICAgIG1hc3Rlcjoge1xuICAgICAgICBjcmVhdGU6IHtcbiAgICAgICAgICBzZWN0aW9uczogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBpZDogJ3RlbXBsYXRlVmFyaWFibGUnLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICBdLFxuICAgICAgICAgIHByb3BlcnRpZXM6IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgbmFtZTogJ25hbWUnLFxuICAgICAgICAgICAgICBsYXlvdXQ6IHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbnM6IHtcbiAgICAgICAgICAgICAgICAgIGxnOiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbFNwYW46IDYsXG4gICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBuYW1lOiAndGl0bGUnLFxuICAgICAgICAgICAgICBsYXlvdXQ6IHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbnM6IHtcbiAgICAgICAgICAgICAgICAgIGxnOiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbFNwYW46IDYsXG4gICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBuYW1lOiAncmVxdWlyZW1lbnQnLFxuICAgICAgICAgICAgICBsYXlvdXQ6IHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbnM6IHtcbiAgICAgICAgICAgICAgICAgIGxnOiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbFNwYW46IDYsXG4gICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIF0sXG4gICAgICAgIH0sXG4gICAgICAgIHVwZGF0ZToge1xuICAgICAgICAgIHNlY3Rpb25zOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIGlkOiAndGVtcGxhdGVWYXJpYWJsZScsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBpZDogJ3NjaGVtYScsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBpZDogJ2ludGVyZmFjZScsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIF0sXG4gICAgICAgICAgcHJvcGVydGllczogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBuYW1lOiAnbmFtZScsXG4gICAgICAgICAgICAgIGxheW91dDoge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uczoge1xuICAgICAgICAgICAgICAgICAgbGc6IHtcbiAgICAgICAgICAgICAgICAgICAgY29sU3BhbjogNixcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIG5hbWU6ICd0aXRsZScsXG4gICAgICAgICAgICAgIGxheW91dDoge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uczoge1xuICAgICAgICAgICAgICAgICAgbGc6IHtcbiAgICAgICAgICAgICAgICAgICAgY29sU3BhbjogNixcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIH0sXG5cbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgbmFtZTogJ3NjaGVtYS5udWxsYWJsZScsXG4gICAgICAgICAgICAgIGxheW91dDoge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uczoge1xuICAgICAgICAgICAgICAgICAgbGc6IHtcbiAgICAgICAgICAgICAgICAgICAgY29sU3BhbjogNixcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIG5hbWU6ICdyZXF1aXJlbWVudCcsXG4gICAgICAgICAgICAgIGxheW91dDoge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uczoge1xuICAgICAgICAgICAgICAgICAgbGc6IHtcbiAgICAgICAgICAgICAgICAgICAgY29sU3BhbjogNixcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgXSxcbiAgICAgICAgfSxcbiAgICAgICAgc2luZ2xlOiB7XG4gICAgICAgICAgdGl0bGU6ICd7e3RpdGxlfX0nLFxuICAgICAgICAgIHNlY3Rpb25zOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIGlkOiAndGVtcGxhdGVWYXJpYWJsZScsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIF0sXG4gICAgICAgICAgcHJvcGVydGllczogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBuYW1lOiAnbmFtZScsXG4gICAgICAgICAgICAgIGxheW91dDoge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uczoge1xuICAgICAgICAgICAgICAgICAgbGc6IHtcbiAgICAgICAgICAgICAgICAgICAgY29sU3BhbjogNixcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIG5hbWU6ICd0aXRsZScsXG4gICAgICAgICAgICAgIGxheW91dDoge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uczoge1xuICAgICAgICAgICAgICAgICAgbGc6IHtcbiAgICAgICAgICAgICAgICAgICAgY29sU3BhbjogNixcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIG5hbWU6ICdyZXF1aXJlbWVudCcsXG4gICAgICAgICAgICAgIGxheW91dDoge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uczoge1xuICAgICAgICAgICAgICAgICAgbGc6IHtcbiAgICAgICAgICAgICAgICAgICAgY29sU3BhbjogMTIsXG4gICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIF0sXG4gICAgICAgICAgYWN0aW9uczogW10sXG4gICAgICAgIH0sXG4gICAgICAgIGxpc3Q6IHtcbiAgICAgICAgICBhY3Rpb25zOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIHRpdGxlOiAnQ3JlYXRlIE5ldycsXG4gICAgICAgICAgICAgIGNvbW1hbmQ6ICdjcmVhdGUtZW50aXR5JyxcbiAgICAgICAgICAgICAgcHJpb3JpdHk6ICdwcmltYXJ5JyxcbiAgICAgICAgICAgICAgdHlwZTogJ2NyZWF0ZScsXG4gICAgICAgICAgICAgIHNjb3BlOiBBWFBFbnRpdHlDb21tYW5kU2NvcGUuVHlwZUxldmVsLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgdGl0bGU6ICdEZWxldGUgSXRlbXMnLFxuICAgICAgICAgICAgICBjb21tYW5kOiAnZGVsZXRlLWVudGl0eScsXG4gICAgICAgICAgICAgIHByaW9yaXR5OiAncHJpbWFyeScsXG4gICAgICAgICAgICAgIHR5cGU6ICdkZWxldGUnLFxuICAgICAgICAgICAgICBzY29wZTogQVhQRW50aXR5Q29tbWFuZFNjb3BlLlNlbGVjdGVkLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgdGl0bGU6ICdEZXRhaWxzJyxcbiAgICAgICAgICAgICAgY29tbWFuZDogJ29wZW4tZW50aXR5JyxcbiAgICAgICAgICAgICAgcHJpb3JpdHk6ICdwcmltYXJ5JyxcbiAgICAgICAgICAgICAgdHlwZTogJ3ZpZXcnLFxuICAgICAgICAgICAgICBzY29wZTogQVhQRW50aXR5Q29tbWFuZFNjb3BlLkluZGl2aWR1YWwsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICB0aXRsZTogJ0RlbGV0ZScsXG4gICAgICAgICAgICAgIGNvbW1hbmQ6ICdkZWxldGUtZW50aXR5JyxcbiAgICAgICAgICAgICAgcHJpb3JpdHk6ICdwcmltYXJ5JyxcbiAgICAgICAgICAgICAgdHlwZTogJ2RlbGV0ZScsXG4gICAgICAgICAgICAgIHNjb3BlOiBBWFBFbnRpdHlDb21tYW5kU2NvcGUuSW5kaXZpZHVhbCxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgXSxcbiAgICAgICAgICB2aWV3czogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBuYW1lOiAnYWxsJyxcbiAgICAgICAgICAgICAgdGl0bGU6ICdBbGwgSXRlbXMnLFxuICAgICAgICAgICAgICBmaXhlZDogdHJ1ZSxcbiAgICAgICAgICAgICAgY29sdW1uczogW10sXG4gICAgICAgICAgICAgIGNvbmRpdGlvbnM6IFtdLFxuICAgICAgICAgICAgICBzb3J0czogW10sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIF0sXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgIH0sXG4gIH07XG5cbiAgcmV0dXJuIGVudGl0eURlZjtcbn1cbiJdfQ==
308
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVtcGxhdGUtdmFyaWFibGUuZW50aXR5LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tb2R1bGVzL3RlbXBsYXRlLW1hbmFnZW1lbnQvc3JjL2xpYi9lbnRpdGllcy90ZW1wbGF0ZS12YXJpYWJsZS5lbnRpdHkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFhLHFCQUFxQixFQUFFLGtCQUFrQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDL0YsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFFcEUsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFFN0QsTUFBTSxDQUFDLEtBQUssVUFBVSxpQ0FBaUMsQ0FBQyxRQUFrQjtJQUN4RSxNQUFNLFdBQVcsR0FBRyxRQUFRLENBQUMsR0FBRyxDQUFDLHNCQUFzQixDQUFDLENBQUM7SUFFekQsTUFBTSxTQUFTLEdBQWM7UUFDM0IsTUFBTSxFQUFFLHFCQUFxQjtRQUM3QixJQUFJLEVBQUUsc0JBQXNCO1FBQzVCLE1BQU0sRUFBRSw4QkFBOEI7UUFDdEMsS0FBSyxFQUFFLG9CQUFvQjtRQUMzQixPQUFPLEVBQUU7WUFDUCxVQUFVLEVBQUUsa0JBQWtCO1lBQzlCLE1BQU0sRUFBRSxtQkFBbUI7U0FDNUI7UUFDRCxlQUFlLEVBQUUsRUFBRTtRQUNuQixNQUFNLEVBQUU7WUFDTjtnQkFDRSxFQUFFLEVBQUUsa0JBQWtCO2dCQUN0QixLQUFLLEVBQUUsa0JBQWtCO2FBQzFCO1NBQ0Y7UUFDRCxVQUFVLEVBQUU7WUFDVjtnQkFDRSxJQUFJLEVBQUUsTUFBTTtnQkFDWixLQUFLLEVBQUUsTUFBTTtnQkFDYixPQUFPLEVBQUUsa0JBQWtCO2dCQUMzQixNQUFNLEVBQUU7b0JBQ04sUUFBUSxFQUFFLFFBQVE7b0JBQ2xCLFNBQVMsRUFBRTt3QkFDVCxJQUFJLEVBQUUsaUJBQWlCLENBQUMsSUFB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QUFFLFdBQVc7NEJBQ2xCLEtBQUssRUFBRSxJQUFJOzRCQUNYLE9BQU8sRUFBRSxFQUFFOzRCQUNYLFVBQVUsRUFBRSxFQUFFOzRCQUNkLEtBQUssRUFBRSxFQUFFO3lCQUNWO3FCQUNGO2lCQUNGO2FBQ0Y7U0FDRjtLQUNGLENBQUM7SUFFRixPQUFPLFNBQVMsQ0FBQztBQUNuQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQVhQRW50aXR5LCBBWFBFbnRpdHlDb21tYW5kU2NvcGUsIEFYUEVudGl0eVF1ZXJ5VHlwZSB9IGZyb20gJ0BhY29yZXgvcGxhdGZvcm0vY29tbW9uJztcbmltcG9ydCB7IEFYUFdpZGdldHNDYXRhbG9nIH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9sYXlvdXQvYnVpbGRlcic7XG5pbXBvcnQgeyBJbmplY3RvciB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQVhNVGV4dFRlbXBsYXRlU2VydmljZSB9IGZyb20gJy4uL3RlbXBsYXRlLnNlcnZpY2UnO1xuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gdGV4dFRlbXBsYXRlVmFyaWFibGVFbnRpdHlGYWN0b3J5KGluamVjdG9yOiBJbmplY3Rvcik6IFByb21pc2U8QVhQRW50aXR5IHwgbnVsbD4ge1xuICBjb25zdCBkYXRhU2VydmljZSA9IGluamVjdG9yLmdldChBWE1UZXh0VGVtcGxhdGVTZXJ2aWNlKTtcblxuICBjb25zdCBlbnRpdHlEZWY6IEFYUEVudGl0eSA9IHtcbiAgICBtb2R1bGU6ICd0ZW1wbGF0ZS1tYW5hZ2VtZW50JyxcbiAgICBuYW1lOiAndGV4dFRlbXBsYXRlVmFyaWFibGUnLFxuICAgIHNvdXJjZTogJ3RlbXBsYXRlLW1hbmFnZW1lbnQudmFyaWFibGUnLFxuICAgIHRpdGxlOiAnVGVtcGxhdGUgVmFyaWFibGVzJyxcbiAgICBmb3JtYXRzOiB7XG4gICAgICBpbmRpdmlkdWFsOiAnVGVtcGxhdGVWYXJpYWJsZScsXG4gICAgICBwbHVyYWw6ICdUZW1wbGF0ZVZhcmlhYmxlcydcbiAgICB9LFxuICAgIHJlbGF0ZWRFbnRpdGllczogW10sXG4gICAgZ3JvdXBzOiBbXG4gICAgICB7XG4gICAgICAgIGlkOiAndGVtcGxhdGVWYXJpYWJsZScsXG4gICAgICAgIHRpdGxlOiAnVGVtcGxhdGVWYXJpYWJsZSdcbiAgICAgIH1cbiAgICBdLFxuICAgIHByb3BlcnRpZXM6IFtcbiAgICAgIHtcbiAgICAgICAgbmFtZTogJ25hbWUnLFxuICAgICAgICB0aXRsZTogJ05hbWUnLFxuICAgICAgICBncm91cElkOiAndGVtcGxhdGVWYXJpYWJsZScsXG4gICAgICAgIHNjaGVtYToge1xuICAgICAgICAgIGRhdGFUeXBlOiAnc3RyaW5nJyxcbiAgICAgICAgICBpbnRlcmZhY2U6IHtcbiAgICAgICAgICAgIHR5cGU6IEFYUFdpZGdldHNDYXRhbG9nLnRleHRcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIG5hbWU6ICd0aXRsZScsXG4gICAgICAgIHRpdGxlOiAnVGl0bGUnLFxuICAgICAgICBncm91cElkOiAndGVtcGxhdGVWYXJpYWJsZScsXG4gICAgICAgIHNjaGVtYToge1xuICAgICAgICAgIGRhdGFUeXBlOiAnc3RyaW5nJyxcbiAgICAgICAgICBpbnRlcmZhY2U6IHtcbiAgICAgICAgICAgIHR5cGU6IEFYUFdpZGdldHNDYXRhbG9nLnRleHRcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIG5hbWU6ICd0eXBlJyxcbiAgICAgICAgdGl0bGU6ICdUeXBlJyxcbiAgICAgICAgZ3JvdXBJZDogJ3RlbXBsYXRlVmFyaWFibGUnLFxuICAgICAgICBzY2hlbWE6IHtcbiAgICAgICAgICBkYXRhVHlwZTogJ3N0cmluZycsXG4gICAgICAgICAgaW50ZXJmYWNlOiB7XG4gICAgICAgICAgICB0eXBlOiBBWFBXaWRnZXRzQ2F0YWxvZy5zZWxlY3RcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIG5hbWU6ICdyZXF1aXJlZCcsXG4gICAgICAgIHRpdGxlOiAncmVxdWlyZWQnLFxuICAgICAgICBncm91cElkOiAndGVtcGxhdGVWYXJpYWJsZScsXG4gICAgICAgIHNjaGVtYToge1xuICAgICAgICAgIGRhdGFUeXBlOiAnYm9vbGVhbicsXG4gICAgICAgICAgaW50ZXJmYWNlOiB7XG4gICAgICAgICAgICB0eXBlOiBBWFBXaWRnZXRzQ2F0YWxvZy50b2dnbGVcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICBdLFxuICAgIGNvbHVtbnM6IFt7IG5hbWU6ICduYW1lJyB9LCB7IG5hbWU6ICd0aXRsZScgfSwgeyBuYW1lOiAncmVxdWlyZWQnIH1dLFxuICAgIGNvbW1hbmRzOiB7XG4gICAgICBjcmVhdGU6IHtcbiAgICAgICAgZXhlY3V0ZTogYXN5bmMgKGRhdGE6IGFueSkgPT4ge1xuICAgICAgICAgIGNvbnN0IGl0ZW0gPSBhd2FpdCBkYXRhU2VydmljZS5nZXRPbmUoZGF0YS5nbG9iYWxUZW1wbGF0ZUlkKTtcbiAgICAgICAgICAoaXRlbS50ZW1wbGF0ZVZhcmlhYmxlcyA/Pz0gW10pLnB1c2goZGF0YSk7XG4gICAgICAgICAgcmV0dXJuIGF3YWl0IGRhdGFTZXJ2aWNlLnVwZGF0ZU9uZShkYXRhLmdsb2JhbFRlbXBsYXRlSWQsIGl0ZW0pO1xuICAgICAgICB9XG4gICAgICB9LFxuICAgICAgZGVsZXRlOiB7XG4gICAgICAgIGV4ZWN1dGU6IGFzeW5jIChpZDogYW55KSA9PiB7XG4gICAgICAgICAgLy8gICAgYXdhaXQgYXdhaXQgZGF0YVNlcnZpY2UudGVtcGxhdGVWYXJpYWJsZURhdGFQcm92aWRlci5kZWxldGVPbmUoaWQpO1xuICAgICAgICAgIHJldHVybiBQcm9taXNlLnJlc29sdmUoKTtcbiAgICAgICAgfVxuICAgICAgfSxcbiAgICAgIHVwZGF0ZToge1xuICAgICAgICBleGVjdXRlOiBhc3luYyAoZGF0YTogYW55KSA9PiB7XG4gICAgICAgICAgY29uc29sZS5sb2coZGF0YSk7XG4gICAgICAgICAgcmV0dXJuIG5ldyBQcm9taXNlKChyZXNvbHZlKSA9PiB7XG4gICAgICAgICAgICBzZXRUaW1lb3V0KGFzeW5jICgpID0+IHtcbiAgICAgICAgICAgICAgLy8gICBhd2FpdCBkYXRhU2VydmljZS50ZW1wbGF0ZVZhcmlhYmxlRGF0YVByb3ZpZGVyLnVwZGF0ZU9uZShkYXRhLmlkLCBkYXRhKTtcbiAgICAgICAgICAgICAgcmVzb2x2ZShkYXRhKTtcbiAgICAgICAgICAgIH0sIDEwMDApO1xuICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfSxcbiAgICBxdWVyaWVzOiB7XG4gICAgICBieUtleToge1xuICAgICAgICBleGVjdXRlOiBhc3luYyAoaWQ6IHN0cmluZykgPT4ge1xuICAgICAgICAgIHJldHVybiBuZXcgUHJvbWlzZSgocmVzb2x2ZSkgPT4ge1xuICAgICAgICAgICAgc2V0VGltZW91dChhc3luYyAoKSA9PiB7XG4gICAgICAgICAgICAgICBjb25zdCBlbnRpdHkgPSBhd2FpdCBkYXRhU2VydmljZS5nZXRPbmUoaWQpO1xuICAgICAgICAgICAgICAvLyByZXNvbHZlKGVudGl0eSk7XG4gICAgICAgICAgICB9LCA1MDApO1xuICAgICAgICAgIH0pO1xuICAgICAgICB9LFxuICAgICAgICB0eXBlOiBBWFBFbnRpdHlRdWVyeVR5cGUuU2luZ2xlXG4gICAgICB9LFxuICAgICAgbGlzdDoge1xuICAgICAgICBleGVjdXRlOiBhc3luYyAoZTogYW55KSA9PiB7XG4gICAgICAgICAgaWYgKGUuZmlsdGVyICE9IG51bGwgJiYgZS5maWx0ZXIuZmlsdGVycyAhPSBudWxsICYmIGUuZmlsdGVyLmZpbHRlcnNbMF0udmFsdWUgIT0gbnVsbCkge1xuICAgICAgICAgICAgY29uc3QgcGFyZW50SXRlbSA9IGF3YWl0IGRhdGFTZXJ2aWNlLmdldE9uZSg8c3RyaW5nPmUuZmlsdGVyPy5maWx0ZXJzWzBdLnZhbHVlKTtcbiAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgIHRvdGFsQ291bnQ6IHBhcmVudEl0ZW0udGVtcGxhdGVWYXJpYWJsZXMubGVuZ3RoLFxuICAgICAgICAgICAgICBpdGVtczogcGFyZW50SXRlbS50ZW1wbGF0ZVZhcmlhYmxlc1xuICAgICAgICAgICAgfTtcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgLy9UT0RPIHRocm93IGV4Y2VwdGlvblxuICAgICAgICAgICAgcmV0dXJuIFtdO1xuICAgICAgICAgIH1cbiAgICAgICAgfSxcbiAgICAgICAgdHlwZTogQVhQRW50aXR5UXVlcnlUeXBlLkxpc3RcbiAgICAgIH1cbiAgICB9LFxuICAgIGludGVyZmFjZXM6IHtcbiAgICAgIG1hc3Rlcjoge1xuICAgICAgICBjcmVhdGU6IHtcbiAgICAgICAgICBzZWN0aW9uczogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBpZDogJ3RlbXBsYXRlVmFyaWFibGUnXG4gICAgICAgICAgICB9XG4gICAgICAgICAgXSxcbiAgICAgICAgICBwcm9wZXJ0aWVzOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIG5hbWU6ICduYW1lJyxcbiAgICAgICAgICAgICAgbGF5b3V0OiB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb25zOiB7XG4gICAgICAgICAgICAgICAgICBsZzoge1xuICAgICAgICAgICAgICAgICAgICBjb2xTcGFuOiA2XG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBuYW1lOiAndGl0bGUnLFxuICAgICAgICAgICAgICBsYXlvdXQ6IHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbnM6IHtcbiAgICAgICAgICAgICAgICAgIGxnOiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbFNwYW46IDZcbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIG5hbWU6ICdyZXF1aXJlZCcsXG4gICAgICAgICAgICAgIGxheW91dDoge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uczoge1xuICAgICAgICAgICAgICAgICAgbGc6IHtcbiAgICAgICAgICAgICAgICAgICAgY29sU3BhbjogNlxuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIF1cbiAgICAgICAgfSxcbiAgICAgICAgdXBkYXRlOiB7XG4gICAgICAgICAgc2VjdGlvbnM6IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgaWQ6ICd0ZW1wbGF0ZVZhcmlhYmxlJ1xuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgaWQ6ICdzY2hlbWEnXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBpZDogJ2ludGVyZmFjZSdcbiAgICAgICAgICAgIH1cbiAgICAgICAgICBdLFxuICAgICAgICAgIHByb3BlcnRpZXM6IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgbmFtZTogJ25hbWUnLFxuICAgICAgICAgICAgICBsYXlvdXQ6IHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbnM6IHtcbiAgICAgICAgICAgICAgICAgIGxnOiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbFNwYW46IDZcbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIG5hbWU6ICd0aXRsZScsXG4gICAgICAgICAgICAgIGxheW91dDoge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uczoge1xuICAgICAgICAgICAgICAgICAgbGc6IHtcbiAgICAgICAgICAgICAgICAgICAgY29sU3BhbjogNlxuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSxcblxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBuYW1lOiAnc2NoZW1hLm51bGxhYmxlJyxcbiAgICAgICAgICAgICAgbGF5b3V0OiB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb25zOiB7XG4gICAgICAgICAgICAgICAgICBsZzoge1xuICAgICAgICAgICAgICAgICAgICBjb2xTcGFuOiA2XG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBuYW1lOiAncmVxdWlyZWQnLFxuICAgICAgICAgICAgICBsYXlvdXQ6IHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbnM6IHtcbiAgICAgICAgICAgICAgICAgIGxnOiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbFNwYW46IDZcbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICBdXG4gICAgICAgIH0sXG4gICAgICAgIHNpbmdsZToge1xuICAgICAgICAgIHRpdGxlOiAne3t0aXRsZX19JyxcbiAgICAgICAgICBzZWN0aW9uczogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBpZDogJ3RlbXBsYXRlVmFyaWFibGUnXG4gICAgICAgICAgICB9XG4gICAgICAgICAgXSxcbiAgICAgICAgICBwcm9wZXJ0aWVzOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIG5hbWU6ICduYW1lJyxcbiAgICAgICAgICAgICAgbGF5b3V0OiB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb25zOiB7XG4gICAgICAgICAgICAgICAgICBsZzoge1xuICAgICAgICAgICAgICAgICAgICBjb2xTcGFuOiA2XG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBuYW1lOiAndGl0bGUnLFxuICAgICAgICAgICAgICBsYXlvdXQ6IHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbnM6IHtcbiAgICAgICAgICAgICAgICAgIGxnOiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbFNwYW46IDZcbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIG5hbWU6ICdyZXF1aXJlZCcsXG4gICAgICAgICAgICAgIGxheW91dDoge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uczoge1xuICAgICAgICAgICAgICAgICAgbGc6IHtcbiAgICAgICAgICAgICAgICAgICAgY29sU3BhbjogMTJcbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICBdLFxuICAgICAgICAgIGFjdGlvbnM6IFtdXG4gICAgICAgIH0sXG4gICAgICAgIGxpc3Q6IHtcbiAgICAgICAgICBhY3Rpb25zOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIHRpdGxlOiAnQ3JlYXRlIE5ldycsXG4gICAgICAgICAgICAgIGNvbW1hbmQ6ICdjcmVhdGUtZW50aXR5JyxcbiAgICAgICAgICAgICAgcHJpb3JpdHk6ICdwcmltYXJ5JyxcbiAgICAgICAgICAgICAgdHlwZTogJ2NyZWF0ZScsXG4gICAgICAgICAgICAgIHNjb3BlOiBBWFBFbnRpdHlDb21tYW5kU2NvcGUuVHlwZUxldmVsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICB0aXRsZTogJ0RlbGV0ZSBJdGVtcycsXG4gICAgICAgICAgICAgIGNvbW1hbmQ6ICdkZWxldGUtZW50aXR5JyxcbiAgICAgICAgICAgICAgcHJpb3JpdHk6ICdwcmltYXJ5JyxcbiAgICAgICAgICAgICAgdHlwZTogJ2RlbGV0ZScsXG4gICAgICAgICAgICAgIHNjb3BlOiBBWFBFbnRpdHlDb21tYW5kU2NvcGUuU2VsZWN0ZWRcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAvLyB7XG4gICAgICAgICAgICAvLyAgIHRpdGxlOiAnVXBkYXRlJyxcbiAgICAgICAgICAgIC8vICAgY29tbWFuZDogJ3VwZGF0ZS1lbnRpdHknLFxuICAgICAgICAgICAgLy8gICBwcmlvcml0eTogJ3ByaW1hcnknLFxuICAgICAgICAgICAgLy8gICB0eXBlOiAndmlldycsXG4gICAgICAgICAgICAvLyAgIHNjb3BlOiBBWFBFbnRpdHlDb21tYW5kU2NvcGUuSW5kaXZpZHVhbFxuICAgICAgICAgICAgLy8gfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgdGl0bGU6ICdEZWxldGUnLFxuICAgICAgICAgICAgICBjb21tYW5kOiAnZGVsZXRlLWVudGl0eScsXG4gICAgICAgICAgICAgIHByaW9yaXR5OiAncHJpbWFyeScsXG4gICAgICAgICAgICAgIHR5cGU6ICdkZWxldGUnLFxuICAgICAgICAgICAgICBzY29wZTogQVhQRW50aXR5Q29tbWFuZFNjb3BlLkluZGl2aWR1YWxcbiAgICAgICAgICAgIH1cbiAgICAgICAgICBdLFxuICAgICAgICAgIHZpZXdzOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIG5hbWU6ICdhbGwnLFxuICAgICAgICAgICAgICB0aXRsZTogJ0FsbCBJdGVtcycsXG4gICAgICAgICAgICAgIGZpeGVkOiB0cnVlLFxuICAgICAgICAgICAgICBjb2x1bW5zOiBbXSxcbiAgICAgICAgICAgICAgY29uZGl0aW9uczogW10sXG4gICAgICAgICAgICAgIHNvcnRzOiBbXVxuICAgICAgICAgICAgfVxuICAgICAgICAgIF1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfTtcblxuICByZXR1cm4gZW50aXR5RGVmO1xufVxuIl19