@mediusinc/mng-commons 5.0.0-rc.0-c31d5206 → 5.0.0-rc.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 (1425) hide show
  1. package/README.md +1 -0
  2. package/core/README.md +8 -0
  3. package/core/action/action-data.model.d.ts +3 -0
  4. package/core/action/action-parameters.model.d.ts +17 -0
  5. package/core/components/pages/error/error.page.component.d.ts +8 -0
  6. package/core/components/pages/not-found/not-found.page.component.d.ts +8 -0
  7. package/core/data-list/data-list-params.util.d.ts +84 -0
  8. package/core/data-providers/base.data-provider.d.ts +32 -0
  9. package/core/data-providers/lookup.data-provider.d.ts +10 -0
  10. package/core/descriptors/action.descriptor.d.ts +12 -0
  11. package/core/descriptors/column.descriptor.d.ts +3 -0
  12. package/core/descriptors/editor.descriptor.d.ts +11 -0
  13. package/core/descriptors/filter.descriptor.d.ts +3 -0
  14. package/core/descriptors/lookup.descriptor.d.ts +12 -0
  15. package/core/descriptors/model.descriptor.d.ts +8 -0
  16. package/core/descriptors/table.descriptor.d.ts +9 -0
  17. package/core/descriptors/tableview.descriptor.d.ts +11 -0
  18. package/core/directives/component.directive.d.ts +20 -0
  19. package/core/directives/dialog-keydown-handler.directive.d.ts +12 -0
  20. package/core/directives/template.directive.d.ts +12 -0
  21. package/core/enum/enum.model.d.ts +8 -0
  22. package/core/enum/enum.util.d.ts +51 -0
  23. package/core/error/error-handler.d.ts +6 -0
  24. package/core/error/error.model.d.ts +47 -0
  25. package/core/error/error.util.d.ts +116 -0
  26. package/core/helpers/coercion.d.ts +9 -0
  27. package/core/helpers/notification.d.ts +2 -0
  28. package/core/helpers/type-helpers.d.ts +16 -0
  29. package/core/index.d.ts +77 -0
  30. package/core/log/log-publisher-console.service.d.ts +4 -0
  31. package/core/log/log.model.d.ts +40 -0
  32. package/core/log/logger.service.d.ts +33 -0
  33. package/core/models/class-service.model.d.ts +7 -0
  34. package/core/models/getter.model.d.ts +2 -0
  35. package/core/models/i18n.model.d.ts +1 -0
  36. package/core/models/menu.model.d.ts +32 -0
  37. package/core/models/user.model.d.ts +8 -0
  38. package/core/pipes/boolean.pipe.d.ts +7 -0
  39. package/core/pipes/class-map.pipe.d.ts +7 -0
  40. package/core/pipes/enumerate-async.pipe.d.ts +9 -0
  41. package/core/pipes/enumerate.pipe.d.ts +16 -0
  42. package/core/pipes/getter.pipe.d.ts +8 -0
  43. package/core/pipes/json-path.pipe.d.ts +13 -0
  44. package/core/pipes/parametrize.pipe.d.ts +12 -0
  45. package/core/pipes/template.pipe.d.ts +10 -0
  46. package/core/provide.d.ts +12 -0
  47. package/core/reflect/type-enum-metadata.d.ts +32 -0
  48. package/core/registry/registry.model.d.ts +8 -0
  49. package/core/registry/type-registry.d.ts +27 -0
  50. package/core/router/route-builder.d.ts +67 -0
  51. package/core/router/router.model.d.ts +13 -0
  52. package/core/router/routes-builder.d.ts +19 -0
  53. package/core/rxjs/map-data-list-result-operator.d.ts +9 -0
  54. package/core/security/permission.guard.d.ts +2 -0
  55. package/core/security/permission.service.d.ts +16 -0
  56. package/core/security/permission.util.d.ts +5 -0
  57. package/core/security/permissions.model.d.ts +55 -0
  58. package/core/services/commons-configuration.service.d.ts +69 -0
  59. package/core/services/commons-init.service.d.ts +30 -0
  60. package/core/services/commons-router.service.d.ts +37 -0
  61. package/core/services/commons.service.d.ts +66 -0
  62. package/core/services/local-storage-config.service.d.ts +11 -0
  63. package/core/services/providers/commons-init.provider.d.ts +4 -0
  64. package/core/services/tokens/browser-storage.token.d.ts +2 -0
  65. package/core/services/tokens/commons-init.token.d.ts +3 -0
  66. package/core/services/tokens/log-publisher.token.d.ts +3 -0
  67. package/core/services/tokens/module-config.token.d.ts +34 -0
  68. package/core/styles/style-constants.d.ts +10 -0
  69. package/core/styles/style.model.d.ts +17 -0
  70. package/core/utils/i18n.util.d.ts +36 -0
  71. package/core/utils/object.util.d.ts +31 -0
  72. package/core/utils/route.util.d.ts +37 -0
  73. package/dev-scripts/version-info.js +1 -1
  74. package/esm2022/core/action/action-data.model.mjs +2 -0
  75. package/esm2022/core/action/action-parameters.model.mjs +2 -0
  76. package/esm2022/core/components/notification/notification-wrapper.component.mjs +50 -0
  77. package/esm2022/core/components/pages/error/error.page.component.mjs +21 -0
  78. package/esm2022/core/components/pages/not-found/not-found.page.component.mjs +21 -0
  79. package/esm2022/core/data-list/data-list-params.util.mjs +417 -0
  80. package/esm2022/core/data-list/data-list.model.mjs +2 -0
  81. package/esm2022/core/data-list/filter-match.model.mjs +105 -0
  82. package/esm2022/core/data-providers/base.data-provider.mjs +48 -0
  83. package/esm2022/core/data-providers/lookup.data-provider.mjs +2 -0
  84. package/esm2022/core/descriptors/action.descriptor.mjs +2 -0
  85. package/esm2022/core/descriptors/column.descriptor.mjs +2 -0
  86. package/esm2022/core/descriptors/editor.descriptor.mjs +2 -0
  87. package/esm2022/core/descriptors/filter.descriptor.mjs +2 -0
  88. package/esm2022/core/descriptors/lookup.descriptor.mjs +2 -0
  89. package/esm2022/core/descriptors/model.descriptor.mjs +2 -0
  90. package/esm2022/core/descriptors/table.descriptor.mjs +2 -0
  91. package/esm2022/core/descriptors/tableview.descriptor.mjs +2 -0
  92. package/esm2022/core/directives/component.directive.mjs +72 -0
  93. package/esm2022/core/directives/dialog-keydown-handler.directive.mjs +49 -0
  94. package/esm2022/core/directives/template.directive.mjs +29 -0
  95. package/esm2022/core/enum/enum.model.mjs +2 -0
  96. package/esm2022/core/enum/enum.util.mjs +83 -0
  97. package/esm2022/core/error/error-handler.mjs +20 -0
  98. package/esm2022/core/error/error.model.mjs +32 -0
  99. package/esm2022/core/error/error.util.mjs +249 -0
  100. package/esm2022/core/helpers/coercion.mjs +52 -0
  101. package/esm2022/core/helpers/notification.mjs +6 -0
  102. package/esm2022/core/helpers/type-helpers.mjs +2 -0
  103. package/esm2022/core/index.mjs +99 -0
  104. package/esm2022/core/log/log-publisher-console.service.mjs +40 -0
  105. package/esm2022/core/log/log.model.mjs +10 -0
  106. package/esm2022/core/log/logger.service.mjs +131 -0
  107. package/esm2022/core/mediusinc-mng-commons-core.mjs +5 -0
  108. package/esm2022/core/models/class-attribute.model.mjs +2 -0
  109. package/esm2022/core/models/class-service.model.mjs +2 -0
  110. package/esm2022/core/models/getter.model.mjs +2 -0
  111. package/esm2022/core/models/i18n.model.mjs +2 -0
  112. package/esm2022/core/models/menu.model.mjs +2 -0
  113. package/esm2022/core/models/user.model.mjs +2 -0
  114. package/esm2022/core/models/version.model.mjs +2 -0
  115. package/esm2022/core/pipes/boolean.pipe.mjs +28 -0
  116. package/esm2022/core/pipes/class-map.pipe.mjs +23 -0
  117. package/esm2022/core/pipes/enumerate-async.pipe.mjs +36 -0
  118. package/esm2022/core/pipes/enumerate.pipe.mjs +49 -0
  119. package/esm2022/core/pipes/getter.pipe.mjs +21 -0
  120. package/esm2022/core/pipes/json-path.pipe.mjs +25 -0
  121. package/esm2022/core/pipes/parametrize.pipe.mjs +86 -0
  122. package/esm2022/core/pipes/template.pipe.mjs +26 -0
  123. package/esm2022/core/provide.mjs +98 -0
  124. package/esm2022/core/reflect/type-enum-decorator.mjs +12 -0
  125. package/esm2022/core/reflect/type-enum-metadata.mjs +62 -0
  126. package/esm2022/core/registry/registry.model.mjs +2 -0
  127. package/esm2022/core/registry/type-registry.mjs +106 -0
  128. package/esm2022/core/router/route-builder.mjs +336 -0
  129. package/esm2022/core/router/router.model.mjs +2 -0
  130. package/esm2022/core/router/routes-builder.mjs +53 -0
  131. package/esm2022/core/rxjs/map-data-list-result-operator.mjs +19 -0
  132. package/esm2022/core/security/permission.guard.mjs +15 -0
  133. package/esm2022/core/security/permission.service.mjs +49 -0
  134. package/esm2022/core/security/permission.util.mjs +16 -0
  135. package/esm2022/core/security/permissions.model.mjs +93 -0
  136. package/esm2022/core/services/commons-configuration.service.mjs +174 -0
  137. package/esm2022/core/services/commons-init.service.mjs +111 -0
  138. package/esm2022/core/services/commons-router.service.mjs +180 -0
  139. package/esm2022/core/services/commons.service.mjs +390 -0
  140. package/esm2022/core/services/local-storage-config.service.mjs +29 -0
  141. package/esm2022/core/services/providers/commons-init.provider.mjs +4 -0
  142. package/esm2022/core/services/tokens/browser-storage.token.mjs +3 -0
  143. package/esm2022/core/services/tokens/commons-init.token.mjs +3 -0
  144. package/esm2022/core/services/tokens/log-publisher.token.mjs +3 -0
  145. package/esm2022/core/services/tokens/module-config.token.mjs +3 -0
  146. package/esm2022/core/styles/style-constants.mjs +11 -0
  147. package/esm2022/core/styles/style.model.mjs +20 -0
  148. package/esm2022/core/utils/date.util.mjs +136 -0
  149. package/esm2022/core/utils/i18n.util.mjs +137 -0
  150. package/esm2022/core/utils/object.util.mjs +147 -0
  151. package/esm2022/core/utils/route.util.mjs +60 -0
  152. package/esm2022/core/utils/string.util.mjs +59 -0
  153. package/esm2022/filter/descriptors/filter-lookup.descriptor.mjs +186 -0
  154. package/esm2022/filter/descriptors/filter.descriptor.mjs +197 -0
  155. package/esm2022/filter/index.mjs +6 -0
  156. package/esm2022/filter/mediusinc-mng-commons-filter.mjs +5 -0
  157. package/esm2022/filter/models/filter.model.mjs +15 -0
  158. package/esm2022/form/api/data-providers/lookup.data-provider.mjs +45 -0
  159. package/esm2022/form/api/descriptors/action-button.descriptor.mjs +68 -0
  160. package/esm2022/form/api/descriptors/button-style.builder.mjs +174 -0
  161. package/esm2022/form/api/index.mjs +8 -0
  162. package/esm2022/form/api/mediusinc-mng-commons-form-api.mjs +5 -0
  163. package/esm2022/form/api/models/trim.model.mjs +2 -0
  164. package/esm2022/form/components/autocomplete/autocomplete.component.mjs +404 -0
  165. package/esm2022/form/components/date-range/date-range.component.mjs +110 -0
  166. package/esm2022/form/components/dropdown/dropdown.component.mjs +213 -0
  167. package/esm2022/form/directives/input-trim.directive.mjs +55 -0
  168. package/esm2022/form/index.mjs +7 -0
  169. package/esm2022/form/mediusinc-mng-commons-form.mjs +5 -0
  170. package/esm2022/index.mjs +2 -74
  171. package/esm2022/model/descriptors/enum.descriptor.mjs +31 -0
  172. package/esm2022/model/descriptors/model.descriptor.mjs +78 -0
  173. package/esm2022/model/descriptors/type.descriptor.mjs +21 -0
  174. package/esm2022/model/index.mjs +11 -0
  175. package/esm2022/model/mediusinc-mng-commons-model.mjs +5 -0
  176. package/esm2022/model/pipes/enum.pipe.mjs +26 -0
  177. package/esm2022/model/pipes/i18n-property.pipe.mjs +19 -0
  178. package/esm2022/model/utils/i18n.util.mjs +51 -0
  179. package/esm2022/model/utils/model.util.mjs +73 -0
  180. package/esm2022/provide.mjs +6 -0
  181. package/esm2022/table/api/data-providers/table.data-provider.mjs +63 -0
  182. package/esm2022/table/api/descriptors/column.descriptor.mjs +359 -0
  183. package/esm2022/table/api/descriptors/sort.descriptor.mjs +45 -0
  184. package/esm2022/table/api/descriptors/table.descriptor.mjs +750 -0
  185. package/esm2022/table/api/helpers/class-attribute-converter.mjs +104 -0
  186. package/esm2022/table/api/index.mjs +16 -0
  187. package/esm2022/table/api/mediusinc-mng-commons-table-api.mjs +5 -0
  188. package/esm2022/table/api/models/class-table-attribute.model.mjs +2 -0
  189. package/esm2022/table/api/models/column-value.model.mjs +2 -0
  190. package/esm2022/table/api/models/column.model.mjs +21 -0
  191. package/esm2022/table/api/models/table-columns.model.mjs +2 -0
  192. package/esm2022/table/api/models/table-event.model.mjs +2 -0
  193. package/esm2022/table/api/models/table.model.mjs +22 -0
  194. package/esm2022/table/components/column-filter-full/column-filter-full.component.mjs +594 -0
  195. package/esm2022/table/components/column-value/column-value.component.mjs +88 -0
  196. package/esm2022/table/components/table/table.component.mjs +647 -0
  197. package/esm2022/table/helpers/notification.mjs +15 -0
  198. package/esm2022/table/helpers/table-layout-prefs.mjs +10 -0
  199. package/esm2022/table/index.mjs +13 -0
  200. package/esm2022/table/mediusinc-mng-commons-table.mjs +5 -0
  201. package/esm2022/table/models/column-preferences.model.mjs +2 -0
  202. package/esm2022/table/pipes/locale-default-row-class.pipe.mjs +27 -0
  203. package/esm2022/table/pipes/table-column-filter-class.pipe.mjs +25 -0
  204. package/esm2022/table/services/data-list.service.mjs +23 -0
  205. package/esm2022/tableview/action/components/action/action.component.mjs +323 -0
  206. package/esm2022/tableview/action/components/editor/action-editor.component.mjs +97 -0
  207. package/esm2022/tableview/action/components/editor/injector-context/action-editor-injector-context.component.mjs +398 -0
  208. package/esm2022/tableview/action/components/localization/data-language-dropdown.component.mjs +53 -0
  209. package/esm2022/tableview/action/components/route/action-route.component.mjs +152 -0
  210. package/esm2022/tableview/action/components/table/action-table.component.mjs +158 -0
  211. package/esm2022/tableview/action/guards/unsaved-changes.guard.mjs +4 -0
  212. package/esm2022/tableview/action/helpers/notification.mjs +17 -0
  213. package/esm2022/tableview/action/helpers/styles.mjs +32 -0
  214. package/esm2022/tableview/action/models/action-editor-dialog-data.model.mjs +2 -0
  215. package/esm2022/tableview/action/models/can-component-deactivate.model.mjs +2 -0
  216. package/esm2022/tableview/action/models/execution/action-context.model.mjs +56 -0
  217. package/esm2022/tableview/action/models/execution/action-instance-state.model.mjs +32 -0
  218. package/esm2022/tableview/action/models/execution/action-instance.model.mjs +170 -0
  219. package/esm2022/tableview/action/services/action-error-mapper.service.mjs +20 -0
  220. package/esm2022/tableview/action/services/action-executor.service.mjs +766 -0
  221. package/esm2022/tableview/action/services/component-action-executor.service.mjs +19 -0
  222. package/esm2022/tableview/action/services/data-provider-executor.service.mjs +26 -0
  223. package/esm2022/tableview/action/services/navigation.service.mjs +52 -0
  224. package/esm2022/tableview/action/services/providers/provide-action-executor.mjs +9 -0
  225. package/esm2022/tableview/action/services/providers/provide-view-container.mjs +17 -0
  226. package/esm2022/tableview/action/services/root-action-executor.service.mjs +18 -0
  227. package/esm2022/tableview/action/services/tokens/action-editor.token.mjs +3 -0
  228. package/esm2022/tableview/action/services/view-container.service.mjs +56 -0
  229. package/esm2022/tableview/action/utils/i18n.util.mjs +126 -0
  230. package/esm2022/tableview/api/action/descriptors/action-confirmation.descriptor.mjs +76 -0
  231. package/esm2022/tableview/api/action/descriptors/action-editor.descriptor.mjs +264 -0
  232. package/esm2022/tableview/api/action/descriptors/action-link.descriptor.mjs +89 -0
  233. package/esm2022/tableview/api/action/descriptors/action.descriptor.mjs +385 -0
  234. package/esm2022/tableview/api/action/helpers/data-provider-executors.mjs +80 -0
  235. package/esm2022/tableview/api/action/models/action-component.model.mjs +2 -0
  236. package/esm2022/tableview/api/action/models/action-descriptor.types.mjs +2 -0
  237. package/esm2022/tableview/api/action/models/action-editor.model.mjs +2 -0
  238. package/esm2022/tableview/api/action/models/action-error.model.mjs +14 -0
  239. package/esm2022/tableview/api/action/models/action.type.mjs +26 -0
  240. package/esm2022/tableview/api/action/models/execution/action-context-validation.model.mjs +2 -0
  241. package/esm2022/tableview/api/action/models/execution/action-context.model.mjs +2 -0
  242. package/esm2022/tableview/api/action/models/execution/action-execution-error.model.mjs +2 -0
  243. package/esm2022/tableview/api/action/models/execution/action-instance-state.model.mjs +32 -0
  244. package/esm2022/tableview/api/action/models/execution/action-instance.model.mjs +2 -0
  245. package/esm2022/tableview/api/action/models/execution/view-container.model.mjs +2 -0
  246. package/esm2022/tableview/api/action/models/tableview-action-default-categories.model.mjs +11 -0
  247. package/esm2022/tableview/api/action/services/data-provider-executor.service.mjs +28 -0
  248. package/esm2022/tableview/api/action/services/tokens/data-language-dropdown.token.mjs +3 -0
  249. package/esm2022/tableview/api/editor/data-providers/editor.data-provider.mjs +104 -0
  250. package/esm2022/tableview/api/editor/descriptors/editor.descriptor.mjs +626 -0
  251. package/esm2022/tableview/api/editor/descriptors/field-action.descriptor.mjs +49 -0
  252. package/esm2022/tableview/api/editor/descriptors/field-base.descriptor.mjs +288 -0
  253. package/esm2022/tableview/api/editor/descriptors/field-group.descriptor.mjs +97 -0
  254. package/esm2022/tableview/api/editor/descriptors/field-lookup.descriptor.mjs +213 -0
  255. package/esm2022/tableview/api/editor/descriptors/field-many.descriptor.mjs +153 -0
  256. package/esm2022/tableview/api/editor/descriptors/field-validation.descriptor.mjs +25 -0
  257. package/esm2022/tableview/api/editor/descriptors/field.descriptor.mjs +343 -0
  258. package/esm2022/tableview/api/editor/helpers/class-attribute-converter.mjs +85 -0
  259. package/esm2022/tableview/api/editor/helpers/field-validators.mjs +33 -0
  260. package/esm2022/tableview/api/editor/models/class-tableview-attribute.model.mjs +2 -0
  261. package/esm2022/tableview/api/editor/models/editor-fields.model.mjs +2 -0
  262. package/esm2022/tableview/api/editor/models/editor.model.mjs +9 -0
  263. package/esm2022/tableview/api/editor/models/field-action-context.model.mjs +2 -0
  264. package/esm2022/tableview/api/editor/models/field.model.mjs +56 -0
  265. package/esm2022/tableview/api/editor/models/form-editor.event.mjs +27 -0
  266. package/esm2022/tableview/api/editor/models/form-editor.interface.mjs +2 -0
  267. package/esm2022/tableview/api/editor/models/formly-custom-field.model.mjs +69 -0
  268. package/esm2022/tableview/api/editor/models/formly-field.model.mjs +2 -0
  269. package/esm2022/tableview/api/editor/models/radio.model.mjs +2 -0
  270. package/esm2022/tableview/api/index.mjs +64 -0
  271. package/esm2022/tableview/api/mediusinc-mng-commons-tableview-api.mjs +5 -0
  272. package/esm2022/tableview/api/tableview/data-providers/tableview.data-provider.mjs +105 -0
  273. package/esm2022/tableview/api/tableview/descriptors/tableview.descriptor.mjs +672 -0
  274. package/esm2022/tableview/api/tableview/helpers/class-attribute-converter.mjs +34 -0
  275. package/esm2022/tableview/api/tableview/helpers/files-export.mjs +34 -0
  276. package/esm2022/tableview/api/tableview/helpers/tableview-create.mjs +24 -0
  277. package/esm2022/tableview/api/tableview/helpers/tableview-default-actions.mjs +240 -0
  278. package/esm2022/tableview/api/tableview/helpers/tableview-input-builder.mjs +162 -0
  279. package/esm2022/tableview/api/tableview/models/class-tableview-attribute.model.mjs +2 -0
  280. package/esm2022/tableview/api/tableview/models/tableview-input.model.mjs +2 -0
  281. package/esm2022/tableview/api/tableview/models/tableview-route.model.mjs +2 -0
  282. package/esm2022/tableview/editor/components/editor/form-editor.component.mjs +285 -0
  283. package/esm2022/tableview/editor/components/formly/fields/formly-field-action/formly-field-action.component.mjs +61 -0
  284. package/esm2022/tableview/editor/components/formly/fields/formly-field-autocomplete/formly-field-autocomplete.component.mjs +54 -0
  285. package/esm2022/tableview/editor/components/formly/fields/formly-field-custom/formly-field-custom.component.mjs +39 -0
  286. package/esm2022/tableview/editor/components/formly/fields/formly-field-dropdown/formly-field-dropdown.component.mjs +49 -0
  287. package/esm2022/tableview/editor/components/formly/fields/formly-field-fieldset/formly-field-fieldset.component.mjs +27 -0
  288. package/esm2022/tableview/editor/components/formly/fields/formly-field-input/formly-field-input.component.mjs +220 -0
  289. package/esm2022/tableview/editor/components/formly/fields/formly-field-label/formly-field-label.component.mjs +24 -0
  290. package/esm2022/tableview/editor/components/formly/fields/formly-field-lookup-dialog/formly-field-lookup-dialog.component.mjs +215 -0
  291. package/esm2022/tableview/editor/components/formly/fields/formly-field-table-dialog-form/formly-field-table-dialog-form.component.mjs +217 -0
  292. package/esm2022/tableview/editor/components/formly/fields/formly-field-table-dialog-multiselect/formly-field-table-dialog-multiselect.component.mjs +196 -0
  293. package/esm2022/tableview/editor/components/formly/fields/formly-field-tabs/formly-field-tabs.component.mjs +18 -0
  294. package/esm2022/tableview/editor/components/formly/wrappers/formly-field-no-label-wrapper/formly-field-no-label-wrapper.component.mjs +33 -0
  295. package/esm2022/tableview/editor/components/formly/wrappers/formly-field-wrapper/formly-field-wrapper.component.mjs +30 -0
  296. package/esm2022/tableview/editor/helpers/formly-config.mjs +260 -0
  297. package/esm2022/tableview/editor/helpers/notification.mjs +11 -0
  298. package/esm2022/tableview/editor/models/formly-config.model.mjs +2 -0
  299. package/esm2022/tableview/editor/services/formly-config.provider.mjs +31 -0
  300. package/esm2022/tableview/editor/utils/editor-formly.util.mjs +337 -0
  301. package/esm2022/tableview/index.mjs +64 -0
  302. package/esm2022/tableview/mediusinc-mng-commons-tableview.mjs +5 -0
  303. package/esm2022/tableview/provide.mjs +61 -0
  304. package/esm2022/tableview/tableview/components/route/tableview-route.component.mjs +15 -0
  305. package/esm2022/tableview/tableview/components/tableview/tableview.component.mjs +84 -0
  306. package/esm2022/tableview/tableview/router/tableview-route-builder.mjs +201 -0
  307. package/esm2022/tableview/tableview/services/tableview-feature-config.token.mjs +3 -0
  308. package/fesm2022/mediusinc-mng-commons-core.mjs +3904 -0
  309. package/fesm2022/mediusinc-mng-commons-core.mjs.map +1 -0
  310. package/fesm2022/mediusinc-mng-commons-filter.mjs +403 -0
  311. package/fesm2022/mediusinc-mng-commons-filter.mjs.map +1 -0
  312. package/fesm2022/mediusinc-mng-commons-form-api.mjs +294 -0
  313. package/fesm2022/mediusinc-mng-commons-form-api.mjs.map +1 -0
  314. package/fesm2022/mediusinc-mng-commons-form.mjs +770 -0
  315. package/fesm2022/mediusinc-mng-commons-form.mjs.map +1 -0
  316. package/fesm2022/mediusinc-mng-commons-model.mjs +300 -0
  317. package/fesm2022/mediusinc-mng-commons-model.mjs.map +1 -0
  318. package/fesm2022/mediusinc-mng-commons-table-api.mjs +1363 -0
  319. package/fesm2022/mediusinc-mng-commons-table-api.mjs.map +1 -0
  320. package/fesm2022/mediusinc-mng-commons-table.mjs +1393 -0
  321. package/fesm2022/mediusinc-mng-commons-table.mjs.map +1 -0
  322. package/fesm2022/mediusinc-mng-commons-tableview-api.mjs +4372 -0
  323. package/fesm2022/mediusinc-mng-commons-tableview-api.mjs.map +1 -0
  324. package/fesm2022/mediusinc-mng-commons-tableview.mjs +4756 -0
  325. package/fesm2022/mediusinc-mng-commons-tableview.mjs.map +1 -0
  326. package/fesm2022/mediusinc-mng-commons.mjs +5 -18605
  327. package/fesm2022/mediusinc-mng-commons.mjs.map +1 -1
  328. package/filter/README.md +9 -0
  329. package/filter/descriptors/filter-lookup.descriptor.d.ts +67 -0
  330. package/filter/descriptors/filter.descriptor.d.ts +67 -0
  331. package/filter/index.d.ts +3 -0
  332. package/form/README.md +8 -0
  333. package/form/api/README.md +7 -0
  334. package/form/api/data-providers/lookup.data-provider.d.ts +19 -0
  335. package/form/api/descriptors/action-button.descriptor.d.ts +25 -0
  336. package/form/api/descriptors/button-style.builder.d.ts +68 -0
  337. package/form/api/index.d.ts +4 -0
  338. package/form/components/autocomplete/autocomplete.component.d.ts +82 -0
  339. package/form/components/date-range/date-range.component.d.ts +28 -0
  340. package/form/components/dropdown/dropdown.component.d.ts +55 -0
  341. package/form/directives/input-trim.directive.d.ts +14 -0
  342. package/form/index.d.ts +4 -0
  343. package/index.d.ts +1 -50
  344. package/model/README.md +7 -0
  345. package/model/descriptors/enum.descriptor.d.ts +14 -0
  346. package/model/descriptors/model.descriptor.d.ts +31 -0
  347. package/model/descriptors/type.descriptor.d.ts +10 -0
  348. package/model/index.d.ts +7 -0
  349. package/model/pipes/enum.pipe.d.ts +8 -0
  350. package/model/pipes/i18n-property.pipe.d.ts +8 -0
  351. package/model/utils/i18n.util.d.ts +15 -0
  352. package/model/utils/model.util.d.ts +8 -0
  353. package/package.json +55 -19
  354. package/provide.d.ts +7 -0
  355. package/table/README.md +11 -0
  356. package/table/api/README.md +9 -0
  357. package/table/api/data-providers/table.data-provider.d.ts +38 -0
  358. package/table/api/descriptors/column.descriptor.d.ts +148 -0
  359. package/table/api/descriptors/table.descriptor.d.ts +271 -0
  360. package/table/api/helpers/class-attribute-converter.d.ts +22 -0
  361. package/table/api/index.d.ts +11 -0
  362. package/table/api/models/class-table-attribute.model.d.ts +8 -0
  363. package/table/api/models/column-value.model.d.ts +7 -0
  364. package/table/api/models/table-columns.model.d.ts +42 -0
  365. package/table/api/models/table-event.model.d.ts +17 -0
  366. package/table/api/models/table.model.d.ts +35 -0
  367. package/table/components/column-filter-full/column-filter-full.component.d.ts +100 -0
  368. package/table/components/column-value/column-value.component.d.ts +33 -0
  369. package/table/components/table/table.component.d.ts +114 -0
  370. package/table/helpers/notification.d.ts +4 -0
  371. package/table/helpers/table-layout-prefs.d.ts +7 -0
  372. package/table/index.d.ts +8 -0
  373. package/table/models/column-preferences.model.d.ts +12 -0
  374. package/table/pipes/locale-default-row-class.pipe.d.ts +10 -0
  375. package/table/pipes/table-column-filter-class.pipe.d.ts +8 -0
  376. package/table/services/data-list.service.d.ts +16 -0
  377. package/tableview/README.md +13 -0
  378. package/tableview/action/components/action/action.component.d.ts +73 -0
  379. package/tableview/action/components/editor/action-editor.component.d.ts +31 -0
  380. package/tableview/action/components/editor/injector-context/action-editor-injector-context.component.d.ts +76 -0
  381. package/tableview/action/components/localization/data-language-dropdown.component.d.ts +22 -0
  382. package/tableview/action/components/route/action-route.component.d.ts +31 -0
  383. package/tableview/action/components/table/action-table.component.d.ts +48 -0
  384. package/tableview/action/guards/unsaved-changes.guard.d.ts +3 -0
  385. package/tableview/action/helpers/notification.d.ts +6 -0
  386. package/tableview/action/helpers/styles.d.ts +5 -0
  387. package/tableview/action/models/action-editor-dialog-data.model.d.ts +11 -0
  388. package/tableview/action/models/execution/action-context.model.d.ts +36 -0
  389. package/tableview/action/models/execution/action-instance-state.model.d.ts +30 -0
  390. package/tableview/action/models/execution/action-instance.model.d.ts +56 -0
  391. package/tableview/action/services/action-error-mapper.service.d.ts +18 -0
  392. package/tableview/action/services/action-executor.service.d.ts +175 -0
  393. package/tableview/action/services/component-action-executor.service.d.ts +9 -0
  394. package/tableview/action/services/data-provider-executor.service.d.ts +23 -0
  395. package/tableview/action/services/navigation.service.d.ts +15 -0
  396. package/tableview/action/services/root-action-executor.service.d.ts +9 -0
  397. package/tableview/action/services/tokens/action-editor.token.d.ts +2 -0
  398. package/tableview/action/services/view-container.service.d.ts +30 -0
  399. package/tableview/action/utils/i18n.util.d.ts +48 -0
  400. package/tableview/api/README.md +11 -0
  401. package/tableview/api/action/descriptors/action-confirmation.descriptor.d.ts +36 -0
  402. package/tableview/api/action/descriptors/action-editor.descriptor.d.ts +117 -0
  403. package/tableview/api/action/descriptors/action-link.descriptor.d.ts +34 -0
  404. package/tableview/api/action/descriptors/action.descriptor.d.ts +151 -0
  405. package/tableview/api/action/helpers/data-provider-executors.d.ts +18 -0
  406. package/tableview/api/action/models/action-component.model.d.ts +12 -0
  407. package/tableview/api/action/models/action-descriptor.types.d.ts +5 -0
  408. package/tableview/api/action/models/action-editor.model.d.ts +4 -0
  409. package/tableview/api/action/models/action-error.model.d.ts +14 -0
  410. package/tableview/api/action/models/execution/action-context-validation.model.d.ts +11 -0
  411. package/tableview/api/action/models/execution/action-context.model.d.ts +24 -0
  412. package/tableview/api/action/models/execution/action-execution-error.model.d.ts +4 -0
  413. package/tableview/api/action/models/execution/action-instance-state.model.d.ts +30 -0
  414. package/tableview/api/action/models/execution/action-instance.model.d.ts +31 -0
  415. package/tableview/api/action/models/execution/view-container.model.d.ts +38 -0
  416. package/tableview/api/action/services/data-provider-executor.service.d.ts +38 -0
  417. package/tableview/api/action/services/tokens/data-language-dropdown.token.d.ts +2 -0
  418. package/tableview/api/editor/data-providers/editor.data-provider.d.ts +87 -0
  419. package/tableview/api/editor/descriptors/editor.descriptor.d.ts +366 -0
  420. package/tableview/api/editor/descriptors/field-action.descriptor.d.ts +22 -0
  421. package/tableview/api/editor/descriptors/field-base.descriptor.d.ts +120 -0
  422. package/tableview/api/editor/descriptors/field-group.descriptor.d.ts +41 -0
  423. package/tableview/api/editor/descriptors/field-lookup.descriptor.d.ts +80 -0
  424. package/tableview/api/editor/descriptors/field-many.descriptor.d.ts +61 -0
  425. package/tableview/api/editor/descriptors/field-validation.descriptor.d.ts +19 -0
  426. package/tableview/api/editor/descriptors/field.descriptor.d.ts +168 -0
  427. package/tableview/api/editor/helpers/class-attribute-converter.d.ts +21 -0
  428. package/tableview/api/editor/helpers/field-validators.d.ts +3 -0
  429. package/tableview/api/editor/models/class-tableview-attribute.model.d.ts +7 -0
  430. package/tableview/api/editor/models/editor-fields.model.d.ts +34 -0
  431. package/tableview/api/editor/models/editor.model.d.ts +7 -0
  432. package/tableview/api/editor/models/field-action-context.model.d.ts +24 -0
  433. package/tableview/api/editor/models/field.model.d.ts +66 -0
  434. package/tableview/api/editor/models/form-editor.event.d.ts +55 -0
  435. package/tableview/api/editor/models/formly-custom-field.model.d.ts +27 -0
  436. package/tableview/api/editor/models/formly-field.model.d.ts +18 -0
  437. package/tableview/api/index.d.ts +50 -0
  438. package/tableview/api/tableview/data-providers/tableview.data-provider.d.ts +43 -0
  439. package/tableview/api/tableview/descriptors/tableview.descriptor.d.ts +296 -0
  440. package/tableview/api/tableview/helpers/class-attribute-converter.d.ts +8 -0
  441. package/tableview/api/tableview/helpers/files-export.d.ts +4 -0
  442. package/tableview/api/tableview/helpers/tableview-create.d.ts +16 -0
  443. package/tableview/api/tableview/helpers/tableview-default-actions.d.ts +38 -0
  444. package/tableview/api/tableview/helpers/tableview-input-builder.d.ts +114 -0
  445. package/tableview/api/tableview/models/class-tableview-attribute.model.d.ts +3 -0
  446. package/tableview/api/tableview/models/tableview-input.model.d.ts +8 -0
  447. package/tableview/api/tableview/models/tableview-route.model.d.ts +20 -0
  448. package/tableview/editor/components/editor/form-editor.component.d.ts +50 -0
  449. package/tableview/editor/components/formly/fields/formly-field-action/formly-field-action.component.d.ts +14 -0
  450. package/tableview/editor/components/formly/fields/formly-field-autocomplete/formly-field-autocomplete.component.d.ts +15 -0
  451. package/tableview/editor/components/formly/fields/formly-field-custom/formly-field-custom.component.d.ts +11 -0
  452. package/tableview/editor/components/formly/fields/formly-field-dropdown/formly-field-dropdown.component.d.ts +14 -0
  453. package/tableview/editor/components/formly/fields/formly-field-fieldset/formly-field-fieldset.component.d.ts +12 -0
  454. package/tableview/editor/components/formly/fields/formly-field-input/formly-field-input.component.d.ts +37 -0
  455. package/tableview/editor/components/formly/fields/formly-field-label/formly-field-label.component.d.ts +11 -0
  456. package/tableview/editor/components/formly/fields/formly-field-lookup-dialog/formly-field-lookup-dialog.component.d.ts +43 -0
  457. package/tableview/editor/components/formly/fields/formly-field-table-dialog-form/formly-field-table-dialog-form.component.d.ts +23 -0
  458. package/tableview/editor/components/formly/fields/formly-field-table-dialog-multiselect/formly-field-table-dialog-multiselect.component.d.ts +41 -0
  459. package/tableview/editor/components/formly/fields/formly-field-tabs/formly-field-tabs.component.d.ts +7 -0
  460. package/tableview/editor/components/formly/wrappers/formly-field-no-label-wrapper/formly-field-no-label-wrapper.component.d.ts +11 -0
  461. package/tableview/editor/components/formly/wrappers/formly-field-wrapper/formly-field-wrapper.component.d.ts +9 -0
  462. package/tableview/editor/helpers/formly-config.d.ts +18 -0
  463. package/tableview/editor/helpers/notification.d.ts +4 -0
  464. package/tableview/editor/models/formly-config.model.d.ts +5 -0
  465. package/tableview/editor/services/formly-config.provider.d.ts +5 -0
  466. package/tableview/editor/utils/editor-formly.util.d.ts +12 -0
  467. package/tableview/index.d.ts +48 -0
  468. package/tableview/provide.d.ts +8 -0
  469. package/tableview/tableview/components/route/tableview-route.component.d.ts +7 -0
  470. package/tableview/tableview/components/tableview/tableview.component.d.ts +26 -0
  471. package/tableview/tableview/router/tableview-route-builder.d.ts +42 -0
  472. package/tableview/tableview/services/tableview-feature-config.token.d.ts +18 -0
  473. package/assets/fonts/poppins-v20-latin-500.woff +0 -0
  474. package/assets/fonts/poppins-v20-latin-500.woff2 +0 -0
  475. package/assets/fonts/poppins-v20-latin-600.woff +0 -0
  476. package/assets/fonts/poppins-v20-latin-600.woff2 +0 -0
  477. package/assets/fonts/poppins-v20-latin-700.woff +0 -0
  478. package/assets/fonts/poppins-v20-latin-700.woff2 +0 -0
  479. package/assets/fonts/poppins-v20-latin-regular.woff +0 -0
  480. package/assets/fonts/poppins-v20-latin-regular.woff2 +0 -0
  481. package/assets/images/effect-ondark.png +0 -0
  482. package/assets/images/effect-ondark.svg +0 -38
  483. package/assets/images/effect-ondark@2x.png +0 -0
  484. package/assets/images/effect-onlight.png +0 -0
  485. package/assets/images/effect-onlight.svg +0 -38
  486. package/assets/images/effect-onlight@2x.png +0 -0
  487. package/assets/images/pages/exception-ondark.png +0 -0
  488. package/assets/images/pages/exception-onlight.png +0 -0
  489. package/assets/images/pages/login-ondark.png +0 -0
  490. package/assets/images/pages/login-onlight.png +0 -0
  491. package/data-api/README.md +0 -3
  492. package/data-api/class-dto/README.md +0 -3
  493. package/data-api/class-dto/helpers/tableview-crud-create.d.ts +0 -40
  494. package/data-api/class-dto/index.d.ts +0 -7
  495. package/data-api/class-dto/models/query-result.model.d.ts +0 -13
  496. package/data-api/class-dto/obsolete/README.md +0 -3
  497. package/data-api/class-dto/obsolete/helpers/query-param-convert.d.ts +0 -23
  498. package/data-api/class-dto/obsolete/helpers/tableview-crud-create.d.ts +0 -22
  499. package/data-api/class-dto/obsolete/index.d.ts +0 -14
  500. package/data-api/class-dto/obsolete/models/builders/query-param.builder.d.ts +0 -36
  501. package/data-api/class-dto/obsolete/models/filter-match-type.model.d.ts +0 -25
  502. package/data-api/class-dto/obsolete/models/filter-param.model.d.ts +0 -23
  503. package/data-api/class-dto/obsolete/models/query-mode.model.d.ts +0 -16
  504. package/data-api/class-dto/obsolete/models/query-param.model.d.ts +0 -31
  505. package/data-api/class-dto/obsolete/models/query-result.model.d.ts +0 -24
  506. package/data-api/class-dto/obsolete/provide.d.ts +0 -9
  507. package/data-api/class-dto/obsolete/services/api.abstract.service.d.ts +0 -36
  508. package/data-api/class-dto/obsolete/services/crud-api.abstract.service.d.ts +0 -37
  509. package/data-api/class-dto/obsolete/services/get-all-api.abstract.service.d.ts +0 -30
  510. package/data-api/class-dto/obsolete/tableview/tableview-crud.data-provider.d.ts +0 -28
  511. package/data-api/class-dto/obsolete/utils/query-param-map.util.d.ts +0 -22
  512. package/data-api/class-dto/serder/object-serializer.d.ts +0 -26
  513. package/data-api/class-dto/services/api.abstract.service.d.ts +0 -22
  514. package/data-api/class-dto/services/crud-api.abstract.service.d.ts +0 -25
  515. package/data-api/class-dto/services/get-all-api.abstract.service.d.ts +0 -14
  516. package/data-api/class-dto/tableview/tableview-crud.data-provider.d.ts +0 -17
  517. package/data-api/helpers/get-all-params.d.ts +0 -69
  518. package/data-api/helpers/tableview-get-all-params-create.d.ts +0 -14
  519. package/data-api/index.d.ts +0 -5
  520. package/data-api/models/request-params.model.d.ts +0 -61
  521. package/data-api/rxjs/map-to-data-list.operator.d.ts +0 -9
  522. package/data-api/types/extract-get-all-params.type.d.ts +0 -14
  523. package/esm2022/data-api/class-dto/helpers/tableview-crud-create.mjs +0 -40
  524. package/esm2022/data-api/class-dto/index.mjs +0 -13
  525. package/esm2022/data-api/class-dto/mediusinc-mng-commons-data-api-class-dto.mjs +0 -5
  526. package/esm2022/data-api/class-dto/models/query-result.model.mjs +0 -24
  527. package/esm2022/data-api/class-dto/obsolete/helpers/query-param-convert.mjs +0 -103
  528. package/esm2022/data-api/class-dto/obsolete/helpers/tableview-crud-create.mjs +0 -21
  529. package/esm2022/data-api/class-dto/obsolete/index.mjs +0 -21
  530. package/esm2022/data-api/class-dto/obsolete/mediusinc-mng-commons-data-api-class-dto-obsolete.mjs +0 -5
  531. package/esm2022/data-api/class-dto/obsolete/models/builders/query-param.builder.mjs +0 -83
  532. package/esm2022/data-api/class-dto/obsolete/models/filter-match-type.model.mjs +0 -27
  533. package/esm2022/data-api/class-dto/obsolete/models/filter-param.model.mjs +0 -33
  534. package/esm2022/data-api/class-dto/obsolete/models/query-mode.model.mjs +0 -18
  535. package/esm2022/data-api/class-dto/obsolete/models/query-param.model.mjs +0 -68
  536. package/esm2022/data-api/class-dto/obsolete/models/query-result.model.mjs +0 -24
  537. package/esm2022/data-api/class-dto/obsolete/provide.mjs +0 -40
  538. package/esm2022/data-api/class-dto/obsolete/services/api.abstract.service.mjs +0 -70
  539. package/esm2022/data-api/class-dto/obsolete/services/crud-api.abstract.service.mjs +0 -83
  540. package/esm2022/data-api/class-dto/obsolete/services/get-all-api.abstract.service.mjs +0 -38
  541. package/esm2022/data-api/class-dto/obsolete/tableview/tableview-crud.data-provider.mjs +0 -51
  542. package/esm2022/data-api/class-dto/obsolete/utils/query-param-map.util.mjs +0 -57
  543. package/esm2022/data-api/class-dto/serder/object-serializer.mjs +0 -184
  544. package/esm2022/data-api/class-dto/services/api.abstract.service.mjs +0 -55
  545. package/esm2022/data-api/class-dto/services/crud-api.abstract.service.mjs +0 -82
  546. package/esm2022/data-api/class-dto/services/get-all-api.abstract.service.mjs +0 -49
  547. package/esm2022/data-api/class-dto/tableview/tableview-crud.data-provider.mjs +0 -49
  548. package/esm2022/data-api/helpers/get-all-params.mjs +0 -180
  549. package/esm2022/data-api/helpers/tableview-get-all-params-create.mjs +0 -18
  550. package/esm2022/data-api/index.mjs +0 -10
  551. package/esm2022/data-api/mediusinc-mng-commons-data-api.mjs +0 -5
  552. package/esm2022/data-api/models/request-params.model.mjs +0 -2
  553. package/esm2022/data-api/rxjs/map-to-data-list.operator.mjs +0 -19
  554. package/esm2022/data-api/types/extract-get-all-params.type.mjs +0 -2
  555. package/esm2022/lib/components/action/action.component.mjs +0 -314
  556. package/esm2022/lib/components/action/editor/action-editor.component.mjs +0 -98
  557. package/esm2022/lib/components/action/editor/injector-context/action-editor-injector-context.component.mjs +0 -394
  558. package/esm2022/lib/components/action/index.mjs +0 -6
  559. package/esm2022/lib/components/action/localization/data-language-dropdown.component.mjs +0 -53
  560. package/esm2022/lib/components/action/models/action-component.model.mjs +0 -2
  561. package/esm2022/lib/components/action/models/action-execution.model.mjs +0 -323
  562. package/esm2022/lib/components/action/models/index.mjs +0 -4
  563. package/esm2022/lib/components/action/models/tableview-action-default-categories.model.mjs +0 -11
  564. package/esm2022/lib/components/action/route/action-route.component.mjs +0 -141
  565. package/esm2022/lib/components/action/table/action-table.component.mjs +0 -152
  566. package/esm2022/lib/components/form/autocomplete/autocomplete.component.mjs +0 -408
  567. package/esm2022/lib/components/form/date-range/date-range.component.mjs +0 -110
  568. package/esm2022/lib/components/form/dropdown/dropdown.component.mjs +0 -210
  569. package/esm2022/lib/components/form/editor/form-editor.component.mjs +0 -281
  570. package/esm2022/lib/components/form/formly/fields/formly-field-action/formly-field-action.component.mjs +0 -61
  571. package/esm2022/lib/components/form/formly/fields/formly-field-autocomplete/formly-field-autocomplete.component.mjs +0 -54
  572. package/esm2022/lib/components/form/formly/fields/formly-field-custom/formly-custom-field-base.model.mjs +0 -69
  573. package/esm2022/lib/components/form/formly/fields/formly-field-custom/formly-field-custom.component.mjs +0 -39
  574. package/esm2022/lib/components/form/formly/fields/formly-field-dropdown/formly-field-dropdown.component.mjs +0 -49
  575. package/esm2022/lib/components/form/formly/fields/formly-field-fieldset/formly-field-fieldset.component.mjs +0 -27
  576. package/esm2022/lib/components/form/formly/fields/formly-field-input/formly-field-input.component.mjs +0 -220
  577. package/esm2022/lib/components/form/formly/fields/formly-field-label/formly-field-label.component.mjs +0 -24
  578. package/esm2022/lib/components/form/formly/fields/formly-field-lookup-dialog/formly-field-lookup-dialog.component.mjs +0 -219
  579. package/esm2022/lib/components/form/formly/fields/formly-field-table-dialog-form/formly-field-table-dialog-form.component.mjs +0 -221
  580. package/esm2022/lib/components/form/formly/fields/formly-field-table-dialog-multiselect/formly-field-table-dialog-multiselect.component.mjs +0 -212
  581. package/esm2022/lib/components/form/formly/fields/formly-field-tabs/formly-field-tabs.component.mjs +0 -18
  582. package/esm2022/lib/components/form/formly/fields/index.mjs +0 -13
  583. package/esm2022/lib/components/form/formly/formly.config.mjs +0 -250
  584. package/esm2022/lib/components/form/formly/index.mjs +0 -2
  585. package/esm2022/lib/components/form/formly/models/formly-config.model.mjs +0 -2
  586. package/esm2022/lib/components/form/formly/models/formly-field.model.mjs +0 -2
  587. package/esm2022/lib/components/form/formly/models/index.mjs +0 -3
  588. package/esm2022/lib/components/form/formly/wrappers/formly-field-no-label-wrapper/formly-field-no-label-wrapper.component.mjs +0 -33
  589. package/esm2022/lib/components/form/formly/wrappers/formly-field-wrapper/formly-field-wrapper.component.mjs +0 -31
  590. package/esm2022/lib/components/form/formly/wrappers/index.mjs +0 -3
  591. package/esm2022/lib/components/form/index.mjs +0 -5
  592. package/esm2022/lib/components/form/models/field-action-context.model.mjs +0 -2
  593. package/esm2022/lib/components/form/models/form-editor.event.mjs +0 -49
  594. package/esm2022/lib/components/form/models/form-editor.interface.mjs +0 -2
  595. package/esm2022/lib/components/form/models/index.mjs +0 -4
  596. package/esm2022/lib/components/layout/breadcrumb.component.mjs +0 -34
  597. package/esm2022/lib/components/layout/footer.component.mjs +0 -19
  598. package/esm2022/lib/components/layout/index.mjs +0 -9
  599. package/esm2022/lib/components/layout/main-layout.component.mjs +0 -53
  600. package/esm2022/lib/components/layout/menu-item.component.mjs +0 -296
  601. package/esm2022/lib/components/layout/menu.component.mjs +0 -34
  602. package/esm2022/lib/components/layout/services/index.mjs +0 -2
  603. package/esm2022/lib/components/layout/services/main-layout.component.service.mjs +0 -196
  604. package/esm2022/lib/components/layout/topbar-user.component.mjs +0 -46
  605. package/esm2022/lib/components/layout/topbar.component.mjs +0 -66
  606. package/esm2022/lib/components/layout/version.component.mjs +0 -60
  607. package/esm2022/lib/components/layoutV2/breadcrumb.component.mjs +0 -30
  608. package/esm2022/lib/components/layoutV2/footer.component.mjs +0 -29
  609. package/esm2022/lib/components/layoutV2/index.mjs +0 -8
  610. package/esm2022/lib/components/layoutV2/main-layout.component.mjs +0 -95
  611. package/esm2022/lib/components/layoutV2/menu-item.component.mjs +0 -275
  612. package/esm2022/lib/components/layoutV2/menu.component.mjs +0 -39
  613. package/esm2022/lib/components/layoutV2/model/index.mjs +0 -3
  614. package/esm2022/lib/components/layoutV2/model/layout-state.model.mjs +0 -2
  615. package/esm2022/lib/components/layoutV2/model/menu.model.mjs +0 -2
  616. package/esm2022/lib/components/layoutV2/services/index.mjs +0 -3
  617. package/esm2022/lib/components/layoutV2/services/main-layout.component.service.mjs +0 -71
  618. package/esm2022/lib/components/layoutV2/services/menu.service.mjs +0 -122
  619. package/esm2022/lib/components/layoutV2/sidebar.component.mjs +0 -62
  620. package/esm2022/lib/components/layoutV2/topbar-user.component.mjs +0 -40
  621. package/esm2022/lib/components/layoutV2/topbar.component.mjs +0 -69
  622. package/esm2022/lib/components/layoutV2/version.component.mjs +0 -63
  623. package/esm2022/lib/components/notification/notification-wrapper.component.mjs +0 -50
  624. package/esm2022/lib/components/pages/error/error.page.component.mjs +0 -21
  625. package/esm2022/lib/components/pages/index.mjs +0 -3
  626. package/esm2022/lib/components/pages/not-found/not-found.page.component.mjs +0 -21
  627. package/esm2022/lib/components/table/column-filter-full/column-filter-full.component.mjs +0 -597
  628. package/esm2022/lib/components/table/column-value/column-value.component.mjs +0 -90
  629. package/esm2022/lib/components/table/models/table.event.mjs +0 -16
  630. package/esm2022/lib/components/table/models/table.interface.mjs +0 -2
  631. package/esm2022/lib/components/table/table-column-filter-class/table-column-filter-class.pipe.mjs +0 -25
  632. package/esm2022/lib/components/table/table.component.mjs +0 -643
  633. package/esm2022/lib/components/tableview/actions/tableview-default-actions.mjs +0 -215
  634. package/esm2022/lib/components/tableview/builders/tableview-builder.mjs +0 -162
  635. package/esm2022/lib/components/tableview/helpers/tableview-create.mjs +0 -24
  636. package/esm2022/lib/components/tableview/index.mjs +0 -7
  637. package/esm2022/lib/components/tableview/models/tableview.model.mjs +0 -2
  638. package/esm2022/lib/components/tableview/route/tableview-route.component.mjs +0 -15
  639. package/esm2022/lib/components/tableview/tableview.component.mjs +0 -82
  640. package/esm2022/lib/data-providers/base.data-provider.mjs +0 -48
  641. package/esm2022/lib/data-providers/editor.data-provider.mjs +0 -105
  642. package/esm2022/lib/data-providers/index.mjs +0 -6
  643. package/esm2022/lib/data-providers/lookup.data-provider.mjs +0 -45
  644. package/esm2022/lib/data-providers/table.data-provider.mjs +0 -64
  645. package/esm2022/lib/data-providers/tableview.data-provider.mjs +0 -105
  646. package/esm2022/lib/descriptors/action/action-button.descriptor.mjs +0 -68
  647. package/esm2022/lib/descriptors/action/action-confirmation.descriptor.mjs +0 -77
  648. package/esm2022/lib/descriptors/action/action-editor.descriptor.mjs +0 -266
  649. package/esm2022/lib/descriptors/action/action-link.descriptor.mjs +0 -89
  650. package/esm2022/lib/descriptors/action/action.descriptor.mjs +0 -383
  651. package/esm2022/lib/descriptors/action/index.mjs +0 -6
  652. package/esm2022/lib/descriptors/editor/editor.descriptor.mjs +0 -510
  653. package/esm2022/lib/descriptors/editor/field-action.descriptor.mjs +0 -50
  654. package/esm2022/lib/descriptors/editor/field-base.descriptor.mjs +0 -285
  655. package/esm2022/lib/descriptors/editor/field-group.descriptor.mjs +0 -97
  656. package/esm2022/lib/descriptors/editor/field-lookup.descriptor.mjs +0 -212
  657. package/esm2022/lib/descriptors/editor/field-many.descriptor.mjs +0 -153
  658. package/esm2022/lib/descriptors/editor/field-validation.descriptor.mjs +0 -25
  659. package/esm2022/lib/descriptors/editor/field.descriptor.mjs +0 -343
  660. package/esm2022/lib/descriptors/editor/index.mjs +0 -9
  661. package/esm2022/lib/descriptors/editor/internal/editor-fields.model.mjs +0 -2
  662. package/esm2022/lib/descriptors/editor/internal/editor.model.mjs +0 -2
  663. package/esm2022/lib/descriptors/filter/filter-lookup.descriptor.mjs +0 -186
  664. package/esm2022/lib/descriptors/filter/filter.descriptor.mjs +0 -198
  665. package/esm2022/lib/descriptors/filter/index.mjs +0 -3
  666. package/esm2022/lib/descriptors/interfaces/field-config.interface.mjs +0 -2
  667. package/esm2022/lib/descriptors/interfaces/index.mjs +0 -3
  668. package/esm2022/lib/descriptors/interfaces/lookup-descriptor.interface.mjs +0 -2
  669. package/esm2022/lib/descriptors/model/enum.descriptor.mjs +0 -31
  670. package/esm2022/lib/descriptors/model/index.mjs +0 -4
  671. package/esm2022/lib/descriptors/model/model.descriptor.mjs +0 -79
  672. package/esm2022/lib/descriptors/model/type.descriptor.mjs +0 -11
  673. package/esm2022/lib/descriptors/table/column.descriptor.mjs +0 -359
  674. package/esm2022/lib/descriptors/table/index.mjs +0 -4
  675. package/esm2022/lib/descriptors/table/internal/table-columns.model.mjs +0 -2
  676. package/esm2022/lib/descriptors/table/internal/table.model.mjs +0 -2
  677. package/esm2022/lib/descriptors/table/sort.descriptor.mjs +0 -45
  678. package/esm2022/lib/descriptors/table/table.descriptor.mjs +0 -751
  679. package/esm2022/lib/descriptors/tableview/index.mjs +0 -2
  680. package/esm2022/lib/descriptors/tableview/internal/tableview.model.mjs +0 -2
  681. package/esm2022/lib/descriptors/tableview/tableview.descriptor.mjs +0 -558
  682. package/esm2022/lib/descriptors/types/action.type.mjs +0 -26
  683. package/esm2022/lib/descriptors/types/column.type.mjs +0 -21
  684. package/esm2022/lib/descriptors/types/editor.type.mjs +0 -8
  685. package/esm2022/lib/descriptors/types/field.type.mjs +0 -56
  686. package/esm2022/lib/descriptors/types/filter.type.mjs +0 -15
  687. package/esm2022/lib/descriptors/types/index.mjs +0 -8
  688. package/esm2022/lib/descriptors/types/table.type.mjs +0 -22
  689. package/esm2022/lib/descriptors/types/trim.type.mjs +0 -2
  690. package/esm2022/lib/directives/component.directive.mjs +0 -66
  691. package/esm2022/lib/directives/dialog-keydown-handler.directive.mjs +0 -49
  692. package/esm2022/lib/directives/index.mjs +0 -5
  693. package/esm2022/lib/directives/input-trim.directive.mjs +0 -55
  694. package/esm2022/lib/directives/template.directive.mjs +0 -29
  695. package/esm2022/lib/error/error.handler.mjs +0 -20
  696. package/esm2022/lib/error/index.mjs +0 -2
  697. package/esm2022/lib/guards/index.mjs +0 -2
  698. package/esm2022/lib/guards/unsaved-changes.guard.mjs +0 -4
  699. package/esm2022/lib/helpers/coercion.mjs +0 -52
  700. package/esm2022/lib/helpers/data-provider-executors.mjs +0 -80
  701. package/esm2022/lib/models/action-editor.model.mjs +0 -2
  702. package/esm2022/lib/models/can-component-deactivate.model.mjs +0 -2
  703. package/esm2022/lib/models/class.model.mjs +0 -2
  704. package/esm2022/lib/models/column-value.model.mjs +0 -2
  705. package/esm2022/lib/models/common-init-event-enum.model.mjs +0 -11
  706. package/esm2022/lib/models/config.model.mjs +0 -2
  707. package/esm2022/lib/models/data-list.model.mjs +0 -2
  708. package/esm2022/lib/models/enum.model.mjs +0 -2
  709. package/esm2022/lib/models/error.model.mjs +0 -44
  710. package/esm2022/lib/models/filter-match.model.mjs +0 -105
  711. package/esm2022/lib/models/index.mjs +0 -20
  712. package/esm2022/lib/models/layout-config.model.mjs +0 -2
  713. package/esm2022/lib/models/log.model.mjs +0 -10
  714. package/esm2022/lib/models/menu.model.mjs +0 -2
  715. package/esm2022/lib/models/radio.model.mjs +0 -2
  716. package/esm2022/lib/models/tableview-attr.model.mjs +0 -2
  717. package/esm2022/lib/models/type-registry.model.mjs +0 -2
  718. package/esm2022/lib/models/user.model.mjs +0 -2
  719. package/esm2022/lib/models/version.model.mjs +0 -2
  720. package/esm2022/lib/models/view-container.model.mjs +0 -2
  721. package/esm2022/lib/pipes/boolean.pipe.mjs +0 -28
  722. package/esm2022/lib/pipes/class-map.pipe.mjs +0 -23
  723. package/esm2022/lib/pipes/enum.pipe.mjs +0 -26
  724. package/esm2022/lib/pipes/enumerate-async.pipe.mjs +0 -41
  725. package/esm2022/lib/pipes/enumerate.pipe.mjs +0 -58
  726. package/esm2022/lib/pipes/getter.pipe.mjs +0 -21
  727. package/esm2022/lib/pipes/i18n-property.pipe.mjs +0 -19
  728. package/esm2022/lib/pipes/index.mjs +0 -12
  729. package/esm2022/lib/pipes/json-path.pipe.mjs +0 -25
  730. package/esm2022/lib/pipes/locale-default-row-class.pipe.mjs +0 -27
  731. package/esm2022/lib/pipes/models/internal/enumrate-pipe-i18n.model.mjs +0 -2
  732. package/esm2022/lib/pipes/models/internal/index.mjs +0 -2
  733. package/esm2022/lib/pipes/parametrize.pipe.mjs +0 -86
  734. package/esm2022/lib/pipes/template.pipe.mjs +0 -26
  735. package/esm2022/lib/provide.mjs +0 -101
  736. package/esm2022/lib/registry/type.registry.mjs +0 -106
  737. package/esm2022/lib/router/index.mjs +0 -4
  738. package/esm2022/lib/router/models/index.mjs +0 -2
  739. package/esm2022/lib/router/models/router.model.mjs +0 -2
  740. package/esm2022/lib/router/route-builder.mjs +0 -347
  741. package/esm2022/lib/router/routes-builder.mjs +0 -69
  742. package/esm2022/lib/router/tableview-route-builder.mjs +0 -201
  743. package/esm2022/lib/security/authorization.guard.mjs +0 -15
  744. package/esm2022/lib/security/authorization.service.mjs +0 -51
  745. package/esm2022/lib/security/authorization.util.mjs +0 -16
  746. package/esm2022/lib/security/index.mjs +0 -4
  747. package/esm2022/lib/security/model/authorization.type.mjs +0 -8
  748. package/esm2022/lib/security/model/index.mjs +0 -4
  749. package/esm2022/lib/security/model/permission-service.interface.mjs +0 -2
  750. package/esm2022/lib/security/model/permissions.model.mjs +0 -87
  751. package/esm2022/lib/services/action/action-executor.service.mjs +0 -747
  752. package/esm2022/lib/services/action/component-action-executor.service.mjs +0 -19
  753. package/esm2022/lib/services/action/index.mjs +0 -5
  754. package/esm2022/lib/services/action/provide-action-executor.mjs +0 -9
  755. package/esm2022/lib/services/action/root-action-executor.service.mjs +0 -18
  756. package/esm2022/lib/services/action-error-mapper.service.mjs +0 -20
  757. package/esm2022/lib/services/commons-init.service.mjs +0 -100
  758. package/esm2022/lib/services/commons.service.mjs +0 -459
  759. package/esm2022/lib/services/configuration.service.mjs +0 -174
  760. package/esm2022/lib/services/data-provider-executor.service.mjs +0 -52
  761. package/esm2022/lib/services/index.mjs +0 -12
  762. package/esm2022/lib/services/internal/commons-init.provider.mjs +0 -4
  763. package/esm2022/lib/services/internal/index.mjs +0 -2
  764. package/esm2022/lib/services/log-publisher-console.service.mjs +0 -40
  765. package/esm2022/lib/services/logger.service.mjs +0 -130
  766. package/esm2022/lib/services/mng-localstorage-config.service.mjs +0 -30
  767. package/esm2022/lib/services/navigation.service.mjs +0 -55
  768. package/esm2022/lib/services/providers/formly-config.provider.mjs +0 -31
  769. package/esm2022/lib/services/providers/index.mjs +0 -2
  770. package/esm2022/lib/services/router.service.mjs +0 -183
  771. package/esm2022/lib/services/tokens/browser-storage.token.mjs +0 -6
  772. package/esm2022/lib/services/tokens/commons-init.token.mjs +0 -3
  773. package/esm2022/lib/services/tokens/default-setting.token.mjs +0 -3
  774. package/esm2022/lib/services/tokens/index.mjs +0 -6
  775. package/esm2022/lib/services/tokens/log-publisher.token.mjs +0 -3
  776. package/esm2022/lib/services/tokens/module-config.token.mjs +0 -3
  777. package/esm2022/lib/services/version.service.mjs +0 -49
  778. package/esm2022/lib/services/view/index.mjs +0 -3
  779. package/esm2022/lib/services/view/provide-view-container.mjs +0 -17
  780. package/esm2022/lib/services/view/view-container.service.mjs +0 -59
  781. package/esm2022/lib/styles/button-style.builder.mjs +0 -174
  782. package/esm2022/lib/styles/index.mjs +0 -3
  783. package/esm2022/lib/styles/models/index.mjs +0 -3
  784. package/esm2022/lib/styles/models/style-level.enum.mjs +0 -12
  785. package/esm2022/lib/styles/models/style-size.enum.mjs +0 -9
  786. package/esm2022/lib/styles/styles.util.mjs +0 -42
  787. package/esm2022/lib/types/action-descriptor.types.mjs +0 -2
  788. package/esm2022/lib/types/data-provider.types.mjs +0 -2
  789. package/esm2022/lib/types/getter.type.mjs +0 -2
  790. package/esm2022/lib/types/i18n.type.mjs +0 -2
  791. package/esm2022/lib/types/index.mjs +0 -8
  792. package/esm2022/lib/types/localstorage-config-value.type.mjs +0 -2
  793. package/esm2022/lib/types/type.decorator.mjs +0 -12
  794. package/esm2022/lib/types/type.model.mjs +0 -2
  795. package/esm2022/lib/utils/data-list-params.util.mjs +0 -416
  796. package/esm2022/lib/utils/date.util.mjs +0 -136
  797. package/esm2022/lib/utils/decorator-metadata.util.mjs +0 -61
  798. package/esm2022/lib/utils/editor-formly.util.mjs +0 -339
  799. package/esm2022/lib/utils/enum.util.mjs +0 -83
  800. package/esm2022/lib/utils/error.util.mjs +0 -247
  801. package/esm2022/lib/utils/export.util.mjs +0 -21
  802. package/esm2022/lib/utils/file.util.mjs +0 -18
  803. package/esm2022/lib/utils/i18n.util.mjs +0 -274
  804. package/esm2022/lib/utils/index.mjs +0 -14
  805. package/esm2022/lib/utils/model.util.mjs +0 -73
  806. package/esm2022/lib/utils/notification.util.mjs +0 -45
  807. package/esm2022/lib/utils/object.util.mjs +0 -135
  808. package/esm2022/lib/utils/route.util.mjs +0 -60
  809. package/esm2022/lib/utils/string.util.mjs +0 -59
  810. package/esm2022/lib/utils/tableview.util.mjs +0 -193
  811. package/esm2022/lib/validators/field.validator.mjs +0 -33
  812. package/esm2022/lib/validators/index.mjs +0 -2
  813. package/fesm2022/mediusinc-mng-commons-data-api-class-dto-obsolete.mjs +0 -698
  814. package/fesm2022/mediusinc-mng-commons-data-api-class-dto-obsolete.mjs.map +0 -1
  815. package/fesm2022/mediusinc-mng-commons-data-api-class-dto.mjs +0 -480
  816. package/fesm2022/mediusinc-mng-commons-data-api-class-dto.mjs.map +0 -1
  817. package/fesm2022/mediusinc-mng-commons-data-api.mjs +0 -224
  818. package/fesm2022/mediusinc-mng-commons-data-api.mjs.map +0 -1
  819. package/lib/components/action/action.component.d.ts +0 -76
  820. package/lib/components/action/editor/action-editor.component.d.ts +0 -33
  821. package/lib/components/action/editor/injector-context/action-editor-injector-context.component.d.ts +0 -80
  822. package/lib/components/action/index.d.ts +0 -5
  823. package/lib/components/action/localization/data-language-dropdown.component.d.ts +0 -24
  824. package/lib/components/action/models/action-component.model.d.ts +0 -13
  825. package/lib/components/action/models/action-execution.model.d.ts +0 -169
  826. package/lib/components/action/models/index.d.ts +0 -3
  827. package/lib/components/action/route/action-route.component.d.ts +0 -31
  828. package/lib/components/action/table/action-table.component.d.ts +0 -49
  829. package/lib/components/form/autocomplete/autocomplete.component.d.ts +0 -83
  830. package/lib/components/form/date-range/date-range.component.d.ts +0 -28
  831. package/lib/components/form/dropdown/dropdown.component.d.ts +0 -54
  832. package/lib/components/form/editor/form-editor.component.d.ts +0 -51
  833. package/lib/components/form/formly/fields/formly-field-action/formly-field-action.component.d.ts +0 -16
  834. package/lib/components/form/formly/fields/formly-field-autocomplete/formly-field-autocomplete.component.d.ts +0 -16
  835. package/lib/components/form/formly/fields/formly-field-custom/formly-custom-field-base.model.d.ts +0 -27
  836. package/lib/components/form/formly/fields/formly-field-custom/formly-field-custom.component.d.ts +0 -12
  837. package/lib/components/form/formly/fields/formly-field-dropdown/formly-field-dropdown.component.d.ts +0 -15
  838. package/lib/components/form/formly/fields/formly-field-fieldset/formly-field-fieldset.component.d.ts +0 -14
  839. package/lib/components/form/formly/fields/formly-field-input/formly-field-input.component.d.ts +0 -39
  840. package/lib/components/form/formly/fields/formly-field-label/formly-field-label.component.d.ts +0 -11
  841. package/lib/components/form/formly/fields/formly-field-lookup-dialog/formly-field-lookup-dialog.component.d.ts +0 -45
  842. package/lib/components/form/formly/fields/formly-field-table-dialog-form/formly-field-table-dialog-form.component.d.ts +0 -25
  843. package/lib/components/form/formly/fields/formly-field-table-dialog-multiselect/formly-field-table-dialog-multiselect.component.d.ts +0 -42
  844. package/lib/components/form/formly/fields/formly-field-tabs/formly-field-tabs.component.d.ts +0 -7
  845. package/lib/components/form/formly/fields/index.d.ts +0 -12
  846. package/lib/components/form/formly/formly.config.d.ts +0 -17
  847. package/lib/components/form/formly/index.d.ts +0 -1
  848. package/lib/components/form/formly/models/formly-config.model.d.ts +0 -11
  849. package/lib/components/form/formly/models/formly-field.model.d.ts +0 -17
  850. package/lib/components/form/formly/models/index.d.ts +0 -2
  851. package/lib/components/form/formly/wrappers/formly-field-no-label-wrapper/formly-field-no-label-wrapper.component.d.ts +0 -11
  852. package/lib/components/form/formly/wrappers/formly-field-wrapper/formly-field-wrapper.component.d.ts +0 -11
  853. package/lib/components/form/formly/wrappers/index.d.ts +0 -2
  854. package/lib/components/form/index.d.ts +0 -4
  855. package/lib/components/form/models/field-action-context.model.d.ts +0 -24
  856. package/lib/components/form/models/form-editor.event.d.ts +0 -58
  857. package/lib/components/form/models/index.d.ts +0 -3
  858. package/lib/components/layout/breadcrumb.component.d.ts +0 -13
  859. package/lib/components/layout/footer.component.d.ts +0 -9
  860. package/lib/components/layout/index.d.ts +0 -8
  861. package/lib/components/layout/main-layout.component.d.ts +0 -19
  862. package/lib/components/layout/menu-item.component.d.ts +0 -55
  863. package/lib/components/layout/menu.component.d.ts +0 -16
  864. package/lib/components/layout/services/index.d.ts +0 -1
  865. package/lib/components/layout/services/main-layout.component.service.d.ts +0 -65
  866. package/lib/components/layout/topbar-user.component.d.ts +0 -22
  867. package/lib/components/layout/topbar.component.d.ts +0 -26
  868. package/lib/components/layout/version.component.d.ts +0 -19
  869. package/lib/components/layoutV2/breadcrumb.component.d.ts +0 -10
  870. package/lib/components/layoutV2/footer.component.d.ts +0 -12
  871. package/lib/components/layoutV2/index.d.ts +0 -7
  872. package/lib/components/layoutV2/main-layout.component.d.ts +0 -24
  873. package/lib/components/layoutV2/menu-item.component.d.ts +0 -42
  874. package/lib/components/layoutV2/menu.component.d.ts +0 -14
  875. package/lib/components/layoutV2/model/index.d.ts +0 -2
  876. package/lib/components/layoutV2/model/layout-state.model.d.ts +0 -10
  877. package/lib/components/layoutV2/model/menu.model.d.ts +0 -4
  878. package/lib/components/layoutV2/services/index.d.ts +0 -2
  879. package/lib/components/layoutV2/services/main-layout.component.service.d.ts +0 -17
  880. package/lib/components/layoutV2/services/menu.service.d.ts +0 -22
  881. package/lib/components/layoutV2/sidebar.component.d.ts +0 -19
  882. package/lib/components/layoutV2/topbar-user.component.d.ts +0 -16
  883. package/lib/components/layoutV2/topbar.component.d.ts +0 -22
  884. package/lib/components/layoutV2/version.component.d.ts +0 -19
  885. package/lib/components/pages/error/error.page.component.d.ts +0 -8
  886. package/lib/components/pages/index.d.ts +0 -2
  887. package/lib/components/pages/not-found/not-found.page.component.d.ts +0 -8
  888. package/lib/components/table/column-filter-full/column-filter-full.component.d.ts +0 -101
  889. package/lib/components/table/column-value/column-value.component.d.ts +0 -35
  890. package/lib/components/table/models/table.event.d.ts +0 -17
  891. package/lib/components/table/models/table.interface.d.ts +0 -17
  892. package/lib/components/table/table-column-filter-class/table-column-filter-class.pipe.d.ts +0 -8
  893. package/lib/components/table/table.component.d.ts +0 -123
  894. package/lib/components/tableview/actions/tableview-default-actions.d.ts +0 -36
  895. package/lib/components/tableview/builders/tableview-builder.d.ts +0 -115
  896. package/lib/components/tableview/helpers/tableview-create.d.ts +0 -16
  897. package/lib/components/tableview/index.d.ts +0 -6
  898. package/lib/components/tableview/models/tableview.model.d.ts +0 -8
  899. package/lib/components/tableview/route/tableview-route.component.d.ts +0 -7
  900. package/lib/components/tableview/tableview.component.d.ts +0 -29
  901. package/lib/data-providers/base.data-provider.d.ts +0 -32
  902. package/lib/data-providers/editor.data-provider.d.ts +0 -88
  903. package/lib/data-providers/index.d.ts +0 -5
  904. package/lib/data-providers/lookup.data-provider.d.ts +0 -27
  905. package/lib/data-providers/table.data-provider.d.ts +0 -40
  906. package/lib/data-providers/tableview.data-provider.d.ts +0 -45
  907. package/lib/descriptors/action/action-button.descriptor.d.ts +0 -25
  908. package/lib/descriptors/action/action-confirmation.descriptor.d.ts +0 -36
  909. package/lib/descriptors/action/action-editor.descriptor.d.ts +0 -118
  910. package/lib/descriptors/action/action-link.descriptor.d.ts +0 -34
  911. package/lib/descriptors/action/action.descriptor.d.ts +0 -149
  912. package/lib/descriptors/action/index.d.ts +0 -5
  913. package/lib/descriptors/editor/editor.descriptor.d.ts +0 -270
  914. package/lib/descriptors/editor/field-action.descriptor.d.ts +0 -23
  915. package/lib/descriptors/editor/field-base.descriptor.d.ts +0 -122
  916. package/lib/descriptors/editor/field-group.descriptor.d.ts +0 -42
  917. package/lib/descriptors/editor/field-lookup.descriptor.d.ts +0 -83
  918. package/lib/descriptors/editor/field-many.descriptor.d.ts +0 -63
  919. package/lib/descriptors/editor/field-validation.descriptor.d.ts +0 -19
  920. package/lib/descriptors/editor/field.descriptor.d.ts +0 -167
  921. package/lib/descriptors/editor/index.d.ts +0 -8
  922. package/lib/descriptors/editor/internal/editor-fields.model.d.ts +0 -33
  923. package/lib/descriptors/editor/internal/editor.model.d.ts +0 -15
  924. package/lib/descriptors/filter/filter-lookup.descriptor.d.ts +0 -70
  925. package/lib/descriptors/filter/filter.descriptor.d.ts +0 -66
  926. package/lib/descriptors/filter/index.d.ts +0 -2
  927. package/lib/descriptors/interfaces/field-config.interface.d.ts +0 -9
  928. package/lib/descriptors/interfaces/index.d.ts +0 -2
  929. package/lib/descriptors/interfaces/lookup-descriptor.interface.d.ts +0 -12
  930. package/lib/descriptors/model/enum.descriptor.d.ts +0 -14
  931. package/lib/descriptors/model/index.d.ts +0 -3
  932. package/lib/descriptors/model/model.descriptor.d.ts +0 -31
  933. package/lib/descriptors/model/type.descriptor.d.ts +0 -5
  934. package/lib/descriptors/table/column.descriptor.d.ts +0 -148
  935. package/lib/descriptors/table/index.d.ts +0 -3
  936. package/lib/descriptors/table/internal/table-columns.model.d.ts +0 -42
  937. package/lib/descriptors/table/internal/table.model.d.ts +0 -12
  938. package/lib/descriptors/table/table.descriptor.d.ts +0 -272
  939. package/lib/descriptors/tableview/index.d.ts +0 -1
  940. package/lib/descriptors/tableview/internal/tableview.model.d.ts +0 -11
  941. package/lib/descriptors/tableview/tableview.descriptor.d.ts +0 -193
  942. package/lib/descriptors/types/editor.type.d.ts +0 -6
  943. package/lib/descriptors/types/field.type.d.ts +0 -47
  944. package/lib/descriptors/types/index.d.ts +0 -7
  945. package/lib/descriptors/types/table.type.d.ts +0 -18
  946. package/lib/directives/component.directive.d.ts +0 -20
  947. package/lib/directives/dialog-keydown-handler.directive.d.ts +0 -12
  948. package/lib/directives/index.d.ts +0 -4
  949. package/lib/directives/input-trim.directive.d.ts +0 -14
  950. package/lib/directives/template.directive.d.ts +0 -12
  951. package/lib/error/error.handler.d.ts +0 -6
  952. package/lib/error/index.d.ts +0 -1
  953. package/lib/guards/index.d.ts +0 -1
  954. package/lib/guards/unsaved-changes.guard.d.ts +0 -3
  955. package/lib/helpers/coercion.d.ts +0 -9
  956. package/lib/helpers/data-provider-executors.d.ts +0 -19
  957. package/lib/models/action-editor.model.d.ts +0 -15
  958. package/lib/models/column-value.model.d.ts +0 -4
  959. package/lib/models/common-init-event-enum.model.d.ts +0 -9
  960. package/lib/models/config.model.d.ts +0 -53
  961. package/lib/models/enum.model.d.ts +0 -7
  962. package/lib/models/error.model.d.ts +0 -50
  963. package/lib/models/index.d.ts +0 -19
  964. package/lib/models/layout-config.model.d.ts +0 -34
  965. package/lib/models/log.model.d.ts +0 -40
  966. package/lib/models/menu.model.d.ts +0 -32
  967. package/lib/models/tableview-attr.model.d.ts +0 -10
  968. package/lib/models/type-registry.model.d.ts +0 -7
  969. package/lib/models/user.model.d.ts +0 -8
  970. package/lib/models/view-container.model.d.ts +0 -24
  971. package/lib/pipes/boolean.pipe.d.ts +0 -7
  972. package/lib/pipes/class-map.pipe.d.ts +0 -7
  973. package/lib/pipes/enum.pipe.d.ts +0 -8
  974. package/lib/pipes/enumerate-async.pipe.d.ts +0 -14
  975. package/lib/pipes/enumerate.pipe.d.ts +0 -21
  976. package/lib/pipes/getter.pipe.d.ts +0 -8
  977. package/lib/pipes/i18n-property.pipe.d.ts +0 -8
  978. package/lib/pipes/index.d.ts +0 -11
  979. package/lib/pipes/json-path.pipe.d.ts +0 -13
  980. package/lib/pipes/locale-default-row-class.pipe.d.ts +0 -10
  981. package/lib/pipes/models/internal/enumrate-pipe-i18n.model.d.ts +0 -5
  982. package/lib/pipes/models/internal/index.d.ts +0 -1
  983. package/lib/pipes/parametrize.pipe.d.ts +0 -13
  984. package/lib/pipes/template.pipe.d.ts +0 -10
  985. package/lib/provide.d.ts +0 -10
  986. package/lib/registry/type.registry.d.ts +0 -25
  987. package/lib/router/index.d.ts +0 -3
  988. package/lib/router/models/index.d.ts +0 -1
  989. package/lib/router/models/router.model.d.ts +0 -31
  990. package/lib/router/route-builder.d.ts +0 -75
  991. package/lib/router/routes-builder.d.ts +0 -28
  992. package/lib/router/tableview-route-builder.d.ts +0 -44
  993. package/lib/security/authorization.guard.d.ts +0 -2
  994. package/lib/security/authorization.service.d.ts +0 -17
  995. package/lib/security/authorization.util.d.ts +0 -5
  996. package/lib/security/index.d.ts +0 -3
  997. package/lib/security/model/authorization.type.d.ts +0 -6
  998. package/lib/security/model/index.d.ts +0 -3
  999. package/lib/security/model/permission-service.interface.d.ts +0 -6
  1000. package/lib/security/model/permissions.model.d.ts +0 -37
  1001. package/lib/services/action/action-executor.service.d.ts +0 -177
  1002. package/lib/services/action/component-action-executor.service.d.ts +0 -9
  1003. package/lib/services/action/index.d.ts +0 -4
  1004. package/lib/services/action/root-action-executor.service.d.ts +0 -9
  1005. package/lib/services/action-error-mapper.service.d.ts +0 -18
  1006. package/lib/services/commons-init.service.d.ts +0 -22
  1007. package/lib/services/commons.service.d.ts +0 -90
  1008. package/lib/services/configuration.service.d.ts +0 -68
  1009. package/lib/services/data-provider-executor.service.d.ts +0 -60
  1010. package/lib/services/index.d.ts +0 -11
  1011. package/lib/services/internal/commons-init.provider.d.ts +0 -4
  1012. package/lib/services/internal/index.d.ts +0 -1
  1013. package/lib/services/log-publisher-console.service.d.ts +0 -4
  1014. package/lib/services/logger.service.d.ts +0 -33
  1015. package/lib/services/mng-localstorage-config.service.d.ts +0 -11
  1016. package/lib/services/navigation.service.d.ts +0 -15
  1017. package/lib/services/providers/formly-config.provider.d.ts +0 -5
  1018. package/lib/services/providers/index.d.ts +0 -1
  1019. package/lib/services/router.service.d.ts +0 -37
  1020. package/lib/services/tokens/browser-storage.token.d.ts +0 -2
  1021. package/lib/services/tokens/commons-init.token.d.ts +0 -3
  1022. package/lib/services/tokens/default-setting.token.d.ts +0 -2
  1023. package/lib/services/tokens/index.d.ts +0 -5
  1024. package/lib/services/tokens/log-publisher.token.d.ts +0 -3
  1025. package/lib/services/tokens/module-config.token.d.ts +0 -3
  1026. package/lib/services/version.service.d.ts +0 -14
  1027. package/lib/services/view/index.d.ts +0 -2
  1028. package/lib/services/view/view-container.service.d.ts +0 -32
  1029. package/lib/styles/button-style.builder.d.ts +0 -68
  1030. package/lib/styles/index.d.ts +0 -2
  1031. package/lib/styles/models/index.d.ts +0 -2
  1032. package/lib/styles/models/style-level.enum.d.ts +0 -10
  1033. package/lib/styles/models/style-size.enum.d.ts +0 -7
  1034. package/lib/styles/styles.util.d.ts +0 -15
  1035. package/lib/types/action-descriptor.types.d.ts +0 -4
  1036. package/lib/types/data-provider.types.d.ts +0 -3
  1037. package/lib/types/getter.type.d.ts +0 -2
  1038. package/lib/types/i18n.type.d.ts +0 -1
  1039. package/lib/types/index.d.ts +0 -7
  1040. package/lib/types/localstorage-config-value.type.d.ts +0 -1
  1041. package/lib/types/type.model.d.ts +0 -31
  1042. package/lib/utils/data-list-params.util.d.ts +0 -84
  1043. package/lib/utils/decorator-metadata.util.d.ts +0 -33
  1044. package/lib/utils/editor-formly.util.d.ts +0 -13
  1045. package/lib/utils/enum.util.d.ts +0 -51
  1046. package/lib/utils/error.util.d.ts +0 -116
  1047. package/lib/utils/export.util.d.ts +0 -5
  1048. package/lib/utils/file.util.d.ts +0 -3
  1049. package/lib/utils/i18n.util.d.ts +0 -85
  1050. package/lib/utils/index.d.ts +0 -13
  1051. package/lib/utils/model.util.d.ts +0 -10
  1052. package/lib/utils/notification.util.d.ts +0 -13
  1053. package/lib/utils/object.util.d.ts +0 -30
  1054. package/lib/utils/route.util.d.ts +0 -37
  1055. package/lib/utils/tableview.util.d.ts +0 -53
  1056. package/lib/validators/field.validator.d.ts +0 -3
  1057. package/lib/validators/index.d.ts +0 -1
  1058. package/openapi/angular/README.mustache +0 -226
  1059. package/openapi/angular/api.module.mustache +0 -39
  1060. package/openapi/angular/api.service.mustache +0 -253
  1061. package/openapi/angular/apiInterface.mustache +0 -47
  1062. package/openapi/angular/apis.mustache +0 -12
  1063. package/openapi/angular/config.yaml +0 -23
  1064. package/openapi/angular/configuration.mustache +0 -128
  1065. package/openapi/angular/custom/base-api.service.mustache +0 -14
  1066. package/openapi/angular/custom/helpers.mustache +0 -71
  1067. package/openapi/angular/custom/modelSchema.mustache +0 -46
  1068. package/openapi/angular/custom/schema.mustache +0 -18
  1069. package/openapi/angular/encoder.mustache +0 -20
  1070. package/openapi/angular/git_push.sh.mustache +0 -57
  1071. package/openapi/angular/index.mustache +0 -0
  1072. package/openapi/angular/licenseInfo.mustache +0 -11
  1073. package/openapi/angular/model.mustache +0 -16
  1074. package/openapi/angular/modelAlias.mustache +0 -1
  1075. package/openapi/angular/modelEnum.mustache +0 -21
  1076. package/openapi/angular/modelGeneric.mustache +0 -14
  1077. package/openapi/angular/modelGenericAdditionalProperties.mustache +0 -5
  1078. package/openapi/angular/modelGenericEnums.mustache +0 -30
  1079. package/openapi/angular/modelOneOf.mustache +0 -14
  1080. package/openapi/angular/modelTaggedUnion.mustache +0 -21
  1081. package/openapi/angular/models.mustache +0 -5
  1082. package/openapi/angular/ng-package.mustache +0 -6
  1083. package/openapi/angular/package.mustache +0 -39
  1084. package/openapi/angular/param.mustache +0 -69
  1085. package/openapi/angular/tsconfig.mustache +0 -28
  1086. package/openapi/angular/variables.mustache +0 -9
  1087. package/openapi/node/model.mustache +0 -83
  1088. package/openapi/node/models.mustache +0 -6
  1089. package/scss/common/layout/_breadcrumb.scss +0 -99
  1090. package/scss/common/layout/_config.scss +0 -100
  1091. package/scss/common/layout/_dashboard.scss +0 -16
  1092. package/scss/common/layout/_exception.scss +0 -133
  1093. package/scss/common/layout/_footer.scss +0 -29
  1094. package/scss/common/layout/_help.scss +0 -156
  1095. package/scss/common/layout/_inlinemenu.scss +0 -68
  1096. package/scss/common/layout/_invoice.scss +0 -176
  1097. package/scss/common/layout/_landing.scss +0 -636
  1098. package/scss/common/layout/_layout_dark.scss +0 -23
  1099. package/scss/common/layout/_layout_light.scss +0 -23
  1100. package/scss/common/layout/_loader.scss +0 -17
  1101. package/scss/common/layout/_login.scss +0 -106
  1102. package/scss/common/layout/_main.scss +0 -45
  1103. package/scss/common/layout/_mixins.scss +0 -222
  1104. package/scss/common/layout/_rightmenu.scss +0 -130
  1105. package/scss/common/layout/_topbar.scss +0 -191
  1106. package/scss/common/layout/_typography.scss +0 -68
  1107. package/scss/common/layout/_utils.scss +0 -96
  1108. package/scss/common/layout/_widgets.scss +0 -392
  1109. package/scss/common/layout/menu/_menu.scss +0 -7
  1110. package/scss/common/layout/menu/_menu_common.scss +0 -183
  1111. package/scss/common/layout/menu/_menu_overlay.scss +0 -52
  1112. package/scss/common/layout/menu/_menu_sidebar.scss +0 -233
  1113. package/scss/common/layout/menu/_menu_slim.scss +0 -137
  1114. package/scss/common/layout/menu/_menu_static.scss +0 -70
  1115. package/scss/common/layout/menu/_menu_theme.scss +0 -364
  1116. package/scss/common/theme/_theme_dark.scss +0 -5
  1117. package/scss/common/theme/_theme_light.scss +0 -5
  1118. package/scss/common/theme/designer/_colors.scss +0 -17
  1119. package/scss/common/theme/designer/_common.scss +0 -41
  1120. package/scss/common/theme/designer/_components.scss +0 -102
  1121. package/scss/common/theme/designer/_mixins.scss +0 -203
  1122. package/scss/common/theme/designer/components/button/_button.scss +0 -572
  1123. package/scss/common/theme/designer/components/button/_speeddial.scss +0 -81
  1124. package/scss/common/theme/designer/components/button/_splitbutton.scss +0 -2
  1125. package/scss/common/theme/designer/components/data/_carousel.scss +0 -37
  1126. package/scss/common/theme/designer/components/data/_datatable.scss +0 -266
  1127. package/scss/common/theme/designer/components/data/_dataview.scss +0 -55
  1128. package/scss/common/theme/designer/components/data/_filter.scss +0 -137
  1129. package/scss/common/theme/designer/components/data/_fullcalendar.scss +0 -324
  1130. package/scss/common/theme/designer/components/data/_orderlist.scss +0 -91
  1131. package/scss/common/theme/designer/components/data/_organizationchart.scss +0 -50
  1132. package/scss/common/theme/designer/components/data/_paginator.scss +0 -83
  1133. package/scss/common/theme/designer/components/data/_picklist.scss +0 -91
  1134. package/scss/common/theme/designer/components/data/_timeline.scss +0 -35
  1135. package/scss/common/theme/designer/components/data/_tree.scss +0 -144
  1136. package/scss/common/theme/designer/components/data/_treetable.scss +0 -241
  1137. package/scss/common/theme/designer/components/data/_virtualscroller.scss +0 -28
  1138. package/scss/common/theme/designer/components/file/_fileupload.scss +0 -58
  1139. package/scss/common/theme/designer/components/input/_autocomplete.scss +0 -105
  1140. package/scss/common/theme/designer/components/input/_calendar.scss +0 -212
  1141. package/scss/common/theme/designer/components/input/_cascadeselect.scss +0 -98
  1142. package/scss/common/theme/designer/components/input/_checkbox.scss +0 -85
  1143. package/scss/common/theme/designer/components/input/_chips.scss +0 -43
  1144. package/scss/common/theme/designer/components/input/_colorpicker.scss +0 -19
  1145. package/scss/common/theme/designer/components/input/_dropdown.scss +0 -136
  1146. package/scss/common/theme/designer/components/input/_editor.scss +0 -122
  1147. package/scss/common/theme/designer/components/input/_inputgroup.scss +0 -69
  1148. package/scss/common/theme/designer/components/input/_inputmask.scss +0 -3
  1149. package/scss/common/theme/designer/components/input/_inputnumber.scss +0 -3
  1150. package/scss/common/theme/designer/components/input/_inputswitch.scss +0 -60
  1151. package/scss/common/theme/designer/components/input/_inputtext.scss +0 -97
  1152. package/scss/common/theme/designer/components/input/_listbox.scss +0 -82
  1153. package/scss/common/theme/designer/components/input/_multiselect.scss +0 -165
  1154. package/scss/common/theme/designer/components/input/_password.scss +0 -33
  1155. package/scss/common/theme/designer/components/input/_radiobutton.scss +0 -78
  1156. package/scss/common/theme/designer/components/input/_rating.scss +0 -48
  1157. package/scss/common/theme/designer/components/input/_selectbutton.scss +0 -50
  1158. package/scss/common/theme/designer/components/input/_slider.scss +0 -71
  1159. package/scss/common/theme/designer/components/input/_togglebutton.scss +0 -48
  1160. package/scss/common/theme/designer/components/input/_treeselect.scss +0 -91
  1161. package/scss/common/theme/designer/components/menu/_breadcrumb.scss +0 -42
  1162. package/scss/common/theme/designer/components/menu/_contextmenu.scss +0 -51
  1163. package/scss/common/theme/designer/components/menu/_dock.scss +0 -51
  1164. package/scss/common/theme/designer/components/menu/_megamenu.scss +0 -103
  1165. package/scss/common/theme/designer/components/menu/_menu.scss +0 -41
  1166. package/scss/common/theme/designer/components/menu/_menubar.scss +0 -180
  1167. package/scss/common/theme/designer/components/menu/_panelmenu.scss +0 -136
  1168. package/scss/common/theme/designer/components/menu/_slidemenu.scss +0 -56
  1169. package/scss/common/theme/designer/components/menu/_steps.scss +0 -56
  1170. package/scss/common/theme/designer/components/menu/_tabmenu.scss +0 -49
  1171. package/scss/common/theme/designer/components/menu/_tieredmenu.scss +0 -57
  1172. package/scss/common/theme/designer/components/messages/_inlinemessage.scss +0 -64
  1173. package/scss/common/theme/designer/components/messages/_message.scss +0 -102
  1174. package/scss/common/theme/designer/components/messages/_toast.scss +0 -94
  1175. package/scss/common/theme/designer/components/misc/_avatar.scss +0 -30
  1176. package/scss/common/theme/designer/components/misc/_badge.scss +0 -48
  1177. package/scss/common/theme/designer/components/misc/_blockui.scss +0 -3
  1178. package/scss/common/theme/designer/components/misc/_chip.scss +0 -38
  1179. package/scss/common/theme/designer/components/misc/_inplace.scss +0 -16
  1180. package/scss/common/theme/designer/components/misc/_progressbar.scss +0 -17
  1181. package/scss/common/theme/designer/components/misc/_scrolltop.scss +0 -20
  1182. package/scss/common/theme/designer/components/misc/_skeleton.scss +0 -8
  1183. package/scss/common/theme/designer/components/misc/_tag.scss +0 -35
  1184. package/scss/common/theme/designer/components/misc/_terminal.scss +0 -11
  1185. package/scss/common/theme/designer/components/multimedia/_galleria.scss +0 -141
  1186. package/scss/common/theme/designer/components/multimedia/_image.scss +0 -44
  1187. package/scss/common/theme/designer/components/overlay/_confirmpopup.scss +0 -65
  1188. package/scss/common/theme/designer/components/overlay/_dialog.scss +0 -63
  1189. package/scss/common/theme/designer/components/overlay/_overlaypanel.scss +0 -62
  1190. package/scss/common/theme/designer/components/overlay/_sidebar.scss +0 -27
  1191. package/scss/common/theme/designer/components/overlay/_tooltip.scss +0 -33
  1192. package/scss/common/theme/designer/components/panel/_accordion.scss +0 -119
  1193. package/scss/common/theme/designer/components/panel/_card.scss +0 -30
  1194. package/scss/common/theme/designer/components/panel/_divider.scss +0 -31
  1195. package/scss/common/theme/designer/components/panel/_fieldset.scss +0 -47
  1196. package/scss/common/theme/designer/components/panel/_panel.scss +0 -42
  1197. package/scss/common/theme/designer/components/panel/_scrollpanel.scss +0 -6
  1198. package/scss/common/theme/designer/components/panel/_splitter.scss +0 -19
  1199. package/scss/common/theme/designer/components/panel/_tabview.scss +0 -66
  1200. package/scss/common/theme/designer/components/panel/_toolbar.scss +0 -10
  1201. package/scss/common/theme/extensions/_button.scss +0 -111
  1202. package/scss/common/theme/extensions/_calendar.scss +0 -18
  1203. package/scss/common/theme/extensions/_card.scss +0 -6
  1204. package/scss/common/theme/extensions/_carousel.scss +0 -13
  1205. package/scss/common/theme/extensions/_checkbox.scss +0 -10
  1206. package/scss/common/theme/extensions/_contextmenu.scss +0 -16
  1207. package/scss/common/theme/extensions/_datatable.scss +0 -83
  1208. package/scss/common/theme/extensions/_dialog.scss +0 -14
  1209. package/scss/common/theme/extensions/_fieldset.scss +0 -6
  1210. package/scss/common/theme/extensions/_galleria.scss +0 -25
  1211. package/scss/common/theme/extensions/_megamenu.scss +0 -18
  1212. package/scss/common/theme/extensions/_menu.scss +0 -14
  1213. package/scss/common/theme/extensions/_menubar.scss +0 -14
  1214. package/scss/common/theme/extensions/_orderlist.scss +0 -37
  1215. package/scss/common/theme/extensions/_paginator.scss +0 -19
  1216. package/scss/common/theme/extensions/_panelmenu.scss +0 -20
  1217. package/scss/common/theme/extensions/_password.scss +0 -5
  1218. package/scss/common/theme/extensions/_picklist.scss +0 -37
  1219. package/scss/common/theme/extensions/_radiobutton.scss +0 -8
  1220. package/scss/common/theme/extensions/_sidebar.scss +0 -19
  1221. package/scss/common/theme/extensions/_slidemenu.scss +0 -10
  1222. package/scss/common/theme/extensions/_slider.scss +0 -6
  1223. package/scss/common/theme/extensions/_steps.scss +0 -50
  1224. package/scss/common/theme/extensions/_tieredmenu.scss +0 -14
  1225. package/scss/common/theme/extensions/_toast.scss +0 -6
  1226. package/scss/common/theme/extensions/_tree.scss +0 -35
  1227. package/scss/common/theme/extensions/_treetable.scss +0 -35
  1228. package/scss/common/theme/extensions/_vendor_extensions.scss +0 -27
  1229. package/scss/common/variables/layout/_common.scss +0 -12
  1230. package/scss/common/variables/layout/_layout_dark.scss +0 -70
  1231. package/scss/common/variables/layout/_layout_light.scss +0 -70
  1232. package/scss/common/variables/theme/_theme_dark.scss +0 -937
  1233. package/scss/common/variables/theme/_theme_light.scss +0 -936
  1234. package/scss/layout/default/_mng-variables-layout-dark.scss +0 -2
  1235. package/scss/layout/default/_mng-variables-layout-light.scss +0 -2
  1236. package/scss/layout/default/layout-dark.scss +0 -2
  1237. package/scss/layout/default/layout-light.scss +0 -2
  1238. package/scss/mng-commons-dark-v2.scss +0 -9
  1239. package/scss/mng-commons-dark.scss +0 -5
  1240. package/scss/mng-commons-light-v2.scss +0 -9
  1241. package/scss/mng-commons-light.scss +0 -8
  1242. package/scss/mng-overrides/_layout_action.scss +0 -10
  1243. package/scss/mng-overrides/_layout_dialog.scss +0 -91
  1244. package/scss/mng-overrides/_layout_forms.scss +0 -38
  1245. package/scss/mng-overrides/_layout_menu.scss +0 -10
  1246. package/scss/mng-overrides/_layout_radio.scss +0 -3
  1247. package/scss/mng-overrides/_layout_styles.scss +0 -35
  1248. package/scss/mng-overrides/_layout_topbar.scss +0 -21
  1249. package/scss/mng-overrides/_mixins.scss +0 -69
  1250. package/scss/mng-overrides/_theme_autocomplete.scss +0 -29
  1251. package/scss/mng-overrides/_theme_button.scss +0 -61
  1252. package/scss/mng-overrides/_theme_datatable.scss +0 -160
  1253. package/scss/mng-overrides/_theme_datepicker.scss +0 -21
  1254. package/scss/mng-overrides/_theme_dialog.scss +0 -108
  1255. package/scss/mng-overrides/_theme_dropdown.scss +0 -22
  1256. package/scss/mng-overrides/_theme_fileupload.scss +0 -24
  1257. package/scss/mng-overrides/_theme_forms.scss +0 -29
  1258. package/scss/mng-overrides/_theme_image.scss +0 -27
  1259. package/scss/mng-overrides/_theme_input.scss +0 -27
  1260. package/scss/mng-overrides/_theme_menu.scss +0 -5
  1261. package/scss/mng-overrides/_theme_multiselect.scss +0 -20
  1262. package/scss/mng-overrides/_theme_styles.scss +0 -17
  1263. package/scss/mng-overrides/_theme_tableview.scss +0 -79
  1264. package/scss/mng-overrides/_theme_tabview.scss +0 -11
  1265. package/scss/mng-overrides/_theme_toast.scss +0 -3
  1266. package/scss/mng-overrides/_theme_toolbar.scss +0 -5
  1267. package/scss/mng-overrides/_variables.scss +0 -15
  1268. package/scss/theme/default/_mng-variables-theme-dark.scss +0 -11
  1269. package/scss/theme/default/_mng-variables-theme-light.scss +0 -13
  1270. package/scss/theme/default/theme-dark.scss +0 -2
  1271. package/scss/theme/default/theme-light.scss +0 -2
  1272. package/scss/v2/layout/_animation.scss +0 -53
  1273. package/scss/v2/layout/_breadcrumb.scss +0 -97
  1274. package/scss/v2/layout/_config.scss +0 -42
  1275. package/scss/v2/layout/_content.scss +0 -3
  1276. package/scss/v2/layout/_fonts.scss +0 -32
  1277. package/scss/v2/layout/_layout_dark.scss +0 -12
  1278. package/scss/v2/layout/_layout_light.scss +0 -12
  1279. package/scss/v2/layout/_main.scss +0 -54
  1280. package/scss/v2/layout/_profile.scss +0 -10
  1281. package/scss/v2/layout/_responsive.scss +0 -131
  1282. package/scss/v2/layout/_sidebar_drawer.scss +0 -283
  1283. package/scss/v2/layout/_sidebar_horizontal.scss +0 -168
  1284. package/scss/v2/layout/_sidebar_reveal.scss +0 -201
  1285. package/scss/v2/layout/_sidebar_slim.scss +0 -157
  1286. package/scss/v2/layout/_sidebar_slim_plus.scss +0 -167
  1287. package/scss/v2/layout/_sidebar_vertical.scss +0 -176
  1288. package/scss/v2/layout/_topbar.scss +0 -174
  1289. package/scss/v2/layout/_typography.scss +0 -62
  1290. package/scss/v2/layout/_utils.scss +0 -33
  1291. package/scss/v2/layout/layout.scss +0 -24
  1292. package/scss/v2/layout/mng/_mng_layout_footer.scss +0 -39
  1293. package/scss/v2/layout/mng/_mng_layout_menu.scss +0 -10
  1294. package/scss/v2/layout/mng/_mng_layout_styles.scss +0 -3
  1295. package/scss/v2/layout/mng/_mng_layout_topbar.scss +0 -18
  1296. package/scss/v2/layout/preloading.scss +0 -84
  1297. package/scss/v2/theme/extensions/_fullcalendar.scss +0 -328
  1298. package/scss/v2/theme/theme-base/_colors.scss +0 -17
  1299. package/scss/v2/theme/theme-base/_common.scss +0 -76
  1300. package/scss/v2/theme/theme-base/_components.scss +0 -110
  1301. package/scss/v2/theme/theme-base/_mixins.scss +0 -337
  1302. package/scss/v2/theme/theme-base/components/button/_button.scss +0 -576
  1303. package/scss/v2/theme/theme-base/components/button/_speeddial.scss +0 -96
  1304. package/scss/v2/theme/theme-base/components/button/_splitbutton.scss +0 -348
  1305. package/scss/v2/theme/theme-base/components/data/_carousel.scss +0 -37
  1306. package/scss/v2/theme/theme-base/components/data/_datatable.scss +0 -338
  1307. package/scss/v2/theme/theme-base/components/data/_dataview.scss +0 -46
  1308. package/scss/v2/theme/theme-base/components/data/_filter.scss +0 -137
  1309. package/scss/v2/theme/theme-base/components/data/_orderlist.scss +0 -114
  1310. package/scss/v2/theme/theme-base/components/data/_organizationchart.scss +0 -50
  1311. package/scss/v2/theme/theme-base/components/data/_paginator.scss +0 -92
  1312. package/scss/v2/theme/theme-base/components/data/_picklist.scss +0 -114
  1313. package/scss/v2/theme/theme-base/components/data/_timeline.scss +0 -35
  1314. package/scss/v2/theme/theme-base/components/data/_tree.scss +0 -150
  1315. package/scss/v2/theme/theme-base/components/data/_treetable.scss +0 -255
  1316. package/scss/v2/theme/theme-base/components/data/_virtualscroller.scss +0 -28
  1317. package/scss/v2/theme/theme-base/components/file/_fileupload.scss +0 -64
  1318. package/scss/v2/theme/theme-base/components/input/_autocomplete.scss +0 -136
  1319. package/scss/v2/theme/theme-base/components/input/_calendar.scss +0 -267
  1320. package/scss/v2/theme/theme-base/components/input/_cascadeselect.scss +0 -135
  1321. package/scss/v2/theme/theme-base/components/input/_checkbox.scss +0 -94
  1322. package/scss/v2/theme/theme-base/components/input/_chips.scss +0 -65
  1323. package/scss/v2/theme/theme-base/components/input/_colorpicker.scss +0 -19
  1324. package/scss/v2/theme/theme-base/components/input/_dropdown.scss +0 -151
  1325. package/scss/v2/theme/theme-base/components/input/_editor.scss +0 -122
  1326. package/scss/v2/theme/theme-base/components/input/_inputgroup.scss +0 -74
  1327. package/scss/v2/theme/theme-base/components/input/_inputmask.scss +0 -16
  1328. package/scss/v2/theme/theme-base/components/input/_inputnumber.scss +0 -28
  1329. package/scss/v2/theme/theme-base/components/input/_inputswitch.scss +0 -60
  1330. package/scss/v2/theme/theme-base/components/input/_inputtext.scss +0 -100
  1331. package/scss/v2/theme/theme-base/components/input/_listbox.scss +0 -97
  1332. package/scss/v2/theme/theme-base/components/input/_multiselect.scss +0 -177
  1333. package/scss/v2/theme/theme-base/components/input/_password.scss +0 -52
  1334. package/scss/v2/theme/theme-base/components/input/_radiobutton.scss +0 -78
  1335. package/scss/v2/theme/theme-base/components/input/_rating.scss +0 -60
  1336. package/scss/v2/theme/theme-base/components/input/_selectbutton.scss +0 -50
  1337. package/scss/v2/theme/theme-base/components/input/_slider.scss +0 -71
  1338. package/scss/v2/theme/theme-base/components/input/_togglebutton.scss +0 -48
  1339. package/scss/v2/theme/theme-base/components/input/_treeselect.scss +0 -139
  1340. package/scss/v2/theme/theme-base/components/menu/_breadcrumb.scss +0 -42
  1341. package/scss/v2/theme/theme-base/components/menu/_contextmenu.scss +0 -39
  1342. package/scss/v2/theme/theme-base/components/menu/_dock.scss +0 -95
  1343. package/scss/v2/theme/theme-base/components/menu/_megamenu.scss +0 -55
  1344. package/scss/v2/theme/theme-base/components/menu/_menu.scss +0 -37
  1345. package/scss/v2/theme/theme-base/components/menu/_menubar.scss +0 -140
  1346. package/scss/v2/theme/theme-base/components/menu/_panelmenu.scss +0 -153
  1347. package/scss/v2/theme/theme-base/components/menu/_slidemenu.scss +0 -59
  1348. package/scss/v2/theme/theme-base/components/menu/_steps.scss +0 -56
  1349. package/scss/v2/theme/theme-base/components/menu/_tabmenu.scss +0 -73
  1350. package/scss/v2/theme/theme-base/components/menu/_tieredmenu.scss +0 -43
  1351. package/scss/v2/theme/theme-base/components/messages/_inlinemessage.scss +0 -69
  1352. package/scss/v2/theme/theme-base/components/messages/_message.scss +0 -107
  1353. package/scss/v2/theme/theme-base/components/messages/_toast.scss +0 -99
  1354. package/scss/v2/theme/theme-base/components/misc/_avatar.scss +0 -30
  1355. package/scss/v2/theme/theme-base/components/misc/_badge.scss +0 -48
  1356. package/scss/v2/theme/theme-base/components/misc/_blockui.scss +0 -0
  1357. package/scss/v2/theme/theme-base/components/misc/_chip.scss +0 -42
  1358. package/scss/v2/theme/theme-base/components/misc/_inplace.scss +0 -16
  1359. package/scss/v2/theme/theme-base/components/misc/_progressbar.scss +0 -17
  1360. package/scss/v2/theme/theme-base/components/misc/_scrolltop.scss +0 -25
  1361. package/scss/v2/theme/theme-base/components/misc/_skeleton.scss +0 -8
  1362. package/scss/v2/theme/theme-base/components/misc/_tag.scss +0 -40
  1363. package/scss/v2/theme/theme-base/components/misc/_terminal.scss +0 -12
  1364. package/scss/v2/theme/theme-base/components/multimedia/_galleria.scss +0 -155
  1365. package/scss/v2/theme/theme-base/components/multimedia/_image.scss +0 -49
  1366. package/scss/v2/theme/theme-base/components/overlay/_confirmpopup.scss +0 -70
  1367. package/scss/v2/theme/theme-base/components/overlay/_dialog.scss +0 -69
  1368. package/scss/v2/theme/theme-base/components/overlay/_overlaypanel.scss +0 -64
  1369. package/scss/v2/theme/theme-base/components/overlay/_sidebar.scss +0 -27
  1370. package/scss/v2/theme/theme-base/components/overlay/_tooltip.scss +0 -33
  1371. package/scss/v2/theme/theme-base/components/panel/_accordion.scss +0 -119
  1372. package/scss/v2/theme/theme-base/components/panel/_card.scss +0 -30
  1373. package/scss/v2/theme/theme-base/components/panel/_divider.scss +0 -31
  1374. package/scss/v2/theme/theme-base/components/panel/_fieldset.scss +0 -47
  1375. package/scss/v2/theme/theme-base/components/panel/_panel.scss +0 -63
  1376. package/scss/v2/theme/theme-base/components/panel/_scrollpanel.scss +0 -6
  1377. package/scss/v2/theme/theme-base/components/panel/_splitter.scss +0 -19
  1378. package/scss/v2/theme/theme-base/components/panel/_tabview.scss +0 -82
  1379. package/scss/v2/theme/theme-base/components/panel/_toolbar.scss +0 -11
  1380. package/scss/v2/theme/theme-base/mng/_mng_mixins.scss +0 -69
  1381. package/scss/v2/theme/theme-base/mng/_mng_theme_autocomplete.scss +0 -34
  1382. package/scss/v2/theme/theme-base/mng/_mng_theme_button.scss +0 -68
  1383. package/scss/v2/theme/theme-base/mng/_mng_theme_datatable.scss +0 -153
  1384. package/scss/v2/theme/theme-base/mng/_mng_theme_datepicker.scss +0 -21
  1385. package/scss/v2/theme/theme-base/mng/_mng_theme_dialog.scss +0 -206
  1386. package/scss/v2/theme/theme-base/mng/_mng_theme_dropdown.scss +0 -32
  1387. package/scss/v2/theme/theme-base/mng/_mng_theme_fileupload.scss +0 -24
  1388. package/scss/v2/theme/theme-base/mng/_mng_theme_forms.scss +0 -66
  1389. package/scss/v2/theme/theme-base/mng/_mng_theme_image.scss +0 -27
  1390. package/scss/v2/theme/theme-base/mng/_mng_theme_input.scss +0 -31
  1391. package/scss/v2/theme/theme-base/mng/_mng_theme_menu.scss +0 -5
  1392. package/scss/v2/theme/theme-base/mng/_mng_theme_multiselect.scss +0 -20
  1393. package/scss/v2/theme/theme-base/mng/_mng_theme_styles.scss +0 -17
  1394. package/scss/v2/theme/theme-base/mng/_mng_theme_tableview.scss +0 -97
  1395. package/scss/v2/theme/theme-base/mng/_mng_theme_tabview.scss +0 -11
  1396. package/scss/v2/theme/theme-base/mng/_mng_theme_toast.scss +0 -3
  1397. package/scss/v2/theme/theme-base/mng/_mng_theme_toolbar.scss +0 -5
  1398. package/scss/v2/theme/theme-base/mng/_mng_variables.scss +0 -15
  1399. package/scss/v2/theme/theme-dark/_extensions.scss +0 -100
  1400. package/scss/v2/theme/theme-dark/_variables.scss +0 -940
  1401. package/scss/v2/theme/theme-dark/blue/theme.scss +0 -14
  1402. package/scss/v2/theme/theme-light/_extensions.scss +0 -100
  1403. package/scss/v2/theme/theme-light/_variables.scss +0 -936
  1404. package/scss/v2/theme/theme-light/blue/theme.scss +0 -14
  1405. /package/{lib → core}/components/notification/notification-wrapper.component.d.ts +0 -0
  1406. /package/{lib/models → core/data-list}/data-list.model.d.ts +0 -0
  1407. /package/{lib/models → core/data-list}/filter-match.model.d.ts +0 -0
  1408. /package/{lib/models/class.model.d.ts → core/models/class-attribute.model.d.ts} +0 -0
  1409. /package/{lib → core}/models/version.model.d.ts +0 -0
  1410. /package/{lib/types/type.decorator.d.ts → core/reflect/type-enum-decorator.d.ts} +0 -0
  1411. /package/{lib → core}/utils/date.util.d.ts +0 -0
  1412. /package/{lib → core}/utils/string.util.d.ts +0 -0
  1413. /package/{lib/descriptors/types/filter.type.d.ts → filter/models/filter.model.d.ts} +0 -0
  1414. /package/{lib/descriptors/types/trim.type.d.ts → form/api/models/trim.model.d.ts} +0 -0
  1415. /package/{assets/i18n → i18n}/en.json +0 -0
  1416. /package/{assets/i18n → i18n}/sl.json +0 -0
  1417. /package/{lib/descriptors/table → table/api/descriptors}/sort.descriptor.d.ts +0 -0
  1418. /package/{lib/descriptors/types/column.type.d.ts → table/api/models/column.model.d.ts} +0 -0
  1419. /package/{lib → tableview/action}/models/can-component-deactivate.model.d.ts +0 -0
  1420. /package/{lib/services/action → tableview/action/services/providers}/provide-action-executor.d.ts +0 -0
  1421. /package/{lib/services/view → tableview/action/services/providers}/provide-view-container.d.ts +0 -0
  1422. /package/{lib/descriptors/types → tableview/api/action/models}/action.type.d.ts +0 -0
  1423. /package/{lib/components → tableview/api}/action/models/tableview-action-default-categories.model.d.ts +0 -0
  1424. /package/{lib/components/form → tableview/api/editor}/models/form-editor.interface.d.ts +0 -0
  1425. /package/{lib → tableview/api/editor}/models/radio.model.d.ts +0 -0
@@ -1,136 +0,0 @@
1
- export class DateUtil {
2
- static { this.NG_PRIME_FORMAT_SUPPORTED = [/d{1,2}/g, /E{1,5}/g, /c{1,5}/g, /M{1,5}/g, /L{1,5}/g, /y{1,4}/g, /Y{1,4}/g]; }
3
- static { this.NG_PRIME_FORMAT_OTHER = [
4
- /G{1,5}/g,
5
- /w{1,2}/g,
6
- /W/g,
7
- /a{1,5}/g,
8
- /B{1,5}/g,
9
- /b{1,5}/g,
10
- /h{1,2}/g,
11
- /H{1,2}/g,
12
- /m{1,2}/g,
13
- /s{1,2}/g,
14
- /S{1,3}/g,
15
- /z{1,4}/g,
16
- /Z{1,5}/g,
17
- /O{1,4}/g
18
- ]; }
19
- static { this.NG_PRIME_FORMAT_MAP = {
20
- // days
21
- d: 'd',
22
- dd: 'dd',
23
- E: 'D',
24
- EE: 'D',
25
- EEE: 'D',
26
- EEEE: 'DD',
27
- EEEEE: 'D',
28
- EEEEEE: 'D',
29
- c: 'd',
30
- cc: 'dd',
31
- ccc: 'D',
32
- cccc: 'DD',
33
- ccccc: 'D',
34
- cccccc: 'D',
35
- // months
36
- M: 'm',
37
- MM: 'mm',
38
- MMM: 'M',
39
- MMMM: 'MM',
40
- MMMMM: 'M',
41
- L: 'm',
42
- LL: 'mm',
43
- LLL: 'M',
44
- LLLL: 'MM',
45
- LLLLL: 'M',
46
- // year
47
- y: 'y',
48
- yy: 'y',
49
- yyy: 'yy',
50
- yyyy: 'yy',
51
- Y: 'y',
52
- YY: 'y',
53
- YYY: 'yy',
54
- YYYY: 'yy'
55
- }; }
56
- static padNumber(num, size = 2) {
57
- let str = String(num);
58
- while (str.length < size) {
59
- str = '0' + str;
60
- }
61
- return str;
62
- }
63
- static toIsoString(value, type = 'date-time', dateTimeOpts = {}) {
64
- if (typeof value === 'string') {
65
- value = new Date(value);
66
- }
67
- if (typeof value === 'number') {
68
- value = new Date(value);
69
- }
70
- if (!(value instanceof Date)) {
71
- return null;
72
- }
73
- if (type === 'date') {
74
- // date only, no time part (and timezone, millis, utc does not matter ...)
75
- return value.getFullYear() + '-' + DateUtil.padNumber(value.getMonth() + 1) + '-' + DateUtil.padNumber(value.getDate());
76
- }
77
- if (dateTimeOpts.utc) {
78
- let str = value.toISOString();
79
- if (dateTimeOpts.noMillis) {
80
- const dotIdx = str.lastIndexOf('.');
81
- str = str.substring(0, dotIdx) + str.substring(dotIdx + 4, str.length);
82
- }
83
- if (dateTimeOpts.noTimezone) {
84
- str = str.substring(0, str.length - 1);
85
- }
86
- return str;
87
- }
88
- else {
89
- let base = value.getFullYear() +
90
- '-' +
91
- DateUtil.padNumber(value.getMonth() + 1) +
92
- '-' +
93
- DateUtil.padNumber(value.getDate()) +
94
- 'T' +
95
- DateUtil.padNumber(value.getHours()) +
96
- ':' +
97
- DateUtil.padNumber(value.getMinutes()) +
98
- ':' +
99
- DateUtil.padNumber(value.getSeconds());
100
- if (!dateTimeOpts.noMillis) {
101
- base += '.' + DateUtil.padNumber(value.getMilliseconds());
102
- }
103
- if (!dateTimeOpts.noTimezone) {
104
- const tzo = -value.getTimezoneOffset(), dif = tzo >= 0 ? '+' : '-';
105
- base = base + (dif + DateUtil.padNumber(Math.floor(Math.abs(tzo) / 60)) + ':' + DateUtil.padNumber(Math.abs(tzo) % 60));
106
- }
107
- return base;
108
- }
109
- }
110
- static fromAngularToPrimeDateFormat(ngDateFormat) {
111
- let primeDateFormat = ngDateFormat;
112
- for (const regex of DateUtil.NG_PRIME_FORMAT_OTHER) {
113
- primeDateFormat = primeDateFormat.replace(regex, ' ');
114
- }
115
- for (const regex of DateUtil.NG_PRIME_FORMAT_SUPPORTED) {
116
- const matches = [...primeDateFormat.matchAll(regex)].reverse();
117
- for (const match of matches) {
118
- if (match.index) {
119
- const matchStr = match[0];
120
- const replacement = DateUtil.NG_PRIME_FORMAT_MAP[matchStr] ?? match[0];
121
- primeDateFormat = primeDateFormat.substring(0, match.index) + replacement + primeDateFormat.substring(match.index + matchStr.length);
122
- }
123
- }
124
- }
125
- primeDateFormat = primeDateFormat.replace(/\s+\W\s+/g, ' ');
126
- primeDateFormat = primeDateFormat.replace(/\s\s+/g, ' ');
127
- return primeDateFormat.trim();
128
- }
129
- static fromAngularDateFormatHasTime(ngDateFormat) {
130
- return /[hHmsS]/.test(ngDateFormat);
131
- }
132
- static fromAngularDateFormatHasSeconds(ngDateFormat) {
133
- return /[sS]/.test(ngDateFormat);
134
- }
135
- }
136
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZS51dGlsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2xpYi91dGlscy9kYXRlLnV0aWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBR0EsTUFBTSxPQUFPLFFBQVE7YUFDTyw4QkFBeUIsR0FBRyxDQUFDLFNBQVMsRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLFNBQVMsQ0FBQyxDQUFDO2FBQzFHLDBCQUFxQixHQUFHO1FBQzVDLFNBQVM7UUFDVCxTQUFTO1FBQ1QsSUFBSTtRQUNKLFNBQVM7UUFDVCxTQUFTO1FBQ1QsU0FBUztRQUNULFNBQVM7UUFDVCxTQUFTO1FBQ1QsU0FBUztRQUNULFNBQVM7UUFDVCxTQUFTO1FBQ1QsU0FBUztRQUNULFNBQVM7UUFDVCxTQUFTO0tBQ1osQ0FBQzthQUNzQix3QkFBbUIsR0FBRztRQUMxQyxPQUFPO1FBQ1AsQ0FBQyxFQUFFLEdBQUc7UUFDTixFQUFFLEVBQUUsSUFBSTtRQUNSLENBQUMsRUFBRSxHQUFHO1FBQ04sRUFBRSxFQUFFLEdBQUc7UUFDUCxHQUFHLEVBQUUsR0FBRztRQUNSLElBQUksRUFBRSxJQUFJO1FBQ1YsS0FBSyxFQUFFLEdBQUc7UUFDVixNQUFNLEVBQUUsR0FBRztRQUNYLENBQUMsRUFBRSxHQUFHO1FBQ04sRUFBRSxFQUFFLElBQUk7UUFDUixHQUFHLEVBQUUsR0FBRztRQUNSLElBQUksRUFBRSxJQUFJO1FBQ1YsS0FBSyxFQUFFLEdBQUc7UUFDVixNQUFNLEVBQUUsR0FBRztRQUNYLFNBQVM7UUFDVCxDQUFDLEVBQUUsR0FBRztRQUNOLEVBQUUsRUFBRSxJQUFJO1FBQ1IsR0FBRyxFQUFFLEdBQUc7UUFDUixJQUFJLEVBQUUsSUFBSTtRQUNWLEtBQUssRUFBRSxHQUFHO1FBQ1YsQ0FBQyxFQUFFLEdBQUc7UUFDTixFQUFFLEVBQUUsSUFBSTtRQUNSLEdBQUcsRUFBRSxHQUFHO1FBQ1IsSUFB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RyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUM7b0JBQzFCLE1BQU0sV0FBVyxHQUFHLFFBQVEsQ0FBQyxtQkFBbUIsQ0FBQyxRQUF3QixDQUFDLElBQUksS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDO29CQUN2RixlQUFlLEdBQUcsZUFBZSxDQUFDLFNBQVMsQ0FBQyxDQUFDLEVBQUUsS0FBSyxDQUFDLEtBQUssQ0FBQyxHQUFHLFdBQVcsR0FBRyxlQUFlLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxLQUFLLEdBQUcsUUFBUSxDQUFDLE1BQU0sQ0FBQyxDQUFDO2lCQUN4STthQUNKO1NBQ0o7UUFDRCxlQUFlLEdBQUcsZUFBZSxDQUFDLE9BQU8sQ0FBQyxXQUFXLEVBQUUsR0FBRyxDQUFDLENBQUM7UUFDNUQsZUFBZSxHQUFHLGVBQWUsQ0FBQyxPQUFPLENBQUMsUUFBUSxFQUFFLEdBQUcsQ0FBQyxDQUFDO1FBRXpELE9BQU8sZUFBZSxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ2xDLENBQUM7SUFFTSxNQUFNLENBQUMsNEJBQTRCLENBQUMsWUFBb0I7UUFDM0QsT0FBTyxTQUFTLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDO0lBQ3hDLENBQUM7SUFFTSxNQUFNLENBQUMsK0JBQStCLENBQUMsWUFBb0I7UUFDOUQsT0FBTyxNQUFNLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDO0lBQ3JDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgdHlwZSB0b0lzb1N0cmluZ1R5cGVPcHRUeXBlID0gJ2RhdGUnIHwgJ2RhdGUtdGltZScgfCAnZGF0ZVRpbWUnO1xuZXhwb3J0IHR5cGUgdG9Jc29TdHJpbmdEYXRlVGltZU9wdHNUeXBlID0ge3V0Yz86IGJvb2xlYW47IG5vVGltZXpvbmU/OiBib29sZWFuOyBub01pbGxpcz86IGJvb2xlYW59O1xuXG5leHBvcnQgY2xhc3MgRGF0ZVV0aWwge1xuICAgIHByaXZhdGUgc3RhdGljIHJlYWRvbmx5IE5HX1BSSU1FX0ZPUk1BVF9TVVBQT1JURUQgPSBbL2R7MSwyfS9nLCAvRXsxLDV9L2csIC9jezEsNX0vZywgL017MSw1fS9nLCAvTHsxLDV9L2csIC95ezEsNH0vZywgL1l7MSw0fS9nXTtcbiAgICBwcml2YXRlIHN0YXRpYyByZWFkb25seSBOR19QUklNRV9GT1JNQVRfT1RIRVIgPSBbXG4gICAgICAgIC9HezEsNX0vZyxcbiAgICAgICAgL3d7MSwyfS9nLFxuICAgICAgICAvVy9nLFxuICAgICAgICAvYXsxLDV9L2csXG4gICAgICAgIC9CezEsNX0vZyxcbiAgICAgICAgL2J7MSw1fS9nLFxuICAgICAgICAvaHsxLDJ9L2csXG4gICAgICAgIC9IezEsMn0vZyxcbiAgICAgICAgL217MSwyfS9nLFxuICAgICAgICAvc3sxLDJ9L2csXG4gICAgICAgIC9TezEsM30vZyxcbiAgICAgICAgL3p7MSw0fS9nLFxuICAgICAgICAvWnsxLDV9L2csXG4gICAgICAgIC9PezEsNH0vZ1xuICAgIF07XG4gICAgcHJpdmF0ZSBzdGF0aWMgcmVhZG9ubHkgTkdfUFJJTUVfRk9STUFUX01BUCA9IHtcbiAgICAgICAgLy8gZGF5c1xuICAgICAgICBkOiAnZCcsXG4gICAgICAgIGRkOiAnZGQnLFxuICAgICAgICBFOiAnRCcsXG4gICAgICAgIEVFOiAnRCcsXG4gICAgICAgIEVFRTogJ0QnLFxuICAgICAgICBFRUVFOiAnREQnLFxuICAgICAgICBFRUVFRTogJ0QnLFxuICAgICAgICBFRUVFRUU6ICdEJyxcbiAgICAgICAgYzogJ2QnLFxuICAgICAgICBjYzogJ2RkJyxcbiAgICAgICAgY2NjOiAnRCcsXG4gICAgICAgIGNjY2M6ICdERCcsXG4gICAgICAgIGNjY2NjOiAnRCcsXG4gICAgICAgIGNjY2NjYzogJ0QnLFxuICAgICAgICAvLyBtb250aHNcbiAgICAgICAgTTogJ20nLFxuICAgICAgICBNTTogJ21tJyxcbiAgICAgICAgTU1NOiAnTScsXG4gICAgICAgIE1NTU06ICdNTScsXG4gICAgICAgIE1NTU1NOiAnTScsXG4gICAgICAgIEw6ICdtJyxcbiAgICAgICAgTEw6ICdtbScsXG4gICAgICAgIExMTDogJ00nLFxuICAgICAgICBMTExMOiAnTU0nLFxuICAgICAgICBMTExMTDogJ00nLFxuICAgICAgICAvLyB5ZWFyXG4gICAgICAgIHk6ICd5JyxcbiAgICAgICAgeXk6ICd5JyxcbiAgICAgICAgeXl5OiAneXknLFxuICAgICAgICB5eXl5OiAneXknLFxuICAgICAgICBZOiAneScsXG4gICAgICAgIFlZOiAneScsXG4gICAgICAgIFlZWTogJ3l5JyxcbiAgICAgICAgWVlZWTogJ3l5J1xuICAgIH07XG5cbiAgICBwcml2YXRlIHN0YXRpYyBwYWROdW1iZXIobnVtOiBudW1iZXIsIHNpemUgPSAyKSB7XG4gICAgICAgIGxldCBzdHIgPSBTdHJpbmcobnVtKTtcbiAgICAgICAgd2hpbGUgKHN0ci5sZW5ndGggPCBzaXplKSB7XG4gICAgICAgICAgICBzdHIgPSAnMCcgKyBzdHI7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHN0cjtcbiAgICB9XG5cbiAgICBwdWJsaWMgc3RhdGljIHRvSXNvU3RyaW5nKHZhbHVlOiBzdHJpbmcgfCBudW1iZXIgfCBEYXRlLCB0eXBlPzogJ2RhdGUnKTogc3RyaW5nO1xuICAgIHB1YmxpYyBzdGF0aWMgdG9Jc29TdHJpbmcodmFsdWU6IHN0cmluZyB8IG51bWJlciB8IERhdGUsIHR5cGU6ICdkYXRlLXRpbWUnIHwgJ2RhdGVUaW1lJywgZGF0ZVRpbWVPcHRzPzogdG9Jc29TdHJpbmdEYXRlVGltZU9wdHNUeXBlKTogc3RyaW5nO1xuICAgIHB1YmxpYyBzdGF0aWMgdG9Jc29TdHJpbmcodmFsdWU6IHVuZGVmaW5lZCB8IG51bGwgfCB1bmtub3duLCB0eXBlPzogJ2RhdGUnKTogbnVsbDtcbiAgICBwdWJsaWMgc3RhdGljIHRvSXNvU3RyaW5nKHZhbHVlOiB1bmRlZmluZWQgfCBudWxsIHwgdW5rbm93biwgdHlwZTogJ2RhdGUtdGltZScgfCAnZGF0ZVRpbWUnLCBkYXRlVGltZU9wdHM/OiB0b0lzb1N0cmluZ0RhdGVUaW1lT3B0c1R5cGUpOiBudWxsO1xuICAgIHB1YmxpYyBzdGF0aWMgdG9Jc29TdHJpbmcodmFsdWU6IHVua25vd24sIHR5cGU/OiB0b0lzb1N0cmluZ1R5cGVPcHRUeXBlLCBkYXRlVGltZU9wdHM/OiB0b0lzb1N0cmluZ0RhdGVUaW1lT3B0c1R5cGUpOiBzdHJpbmcgfCBudWxsO1xuICAgIHB1YmxpYyBzdGF0aWMgdG9Jc29TdHJpbmcodmFsdWU6IHVua25vd24sIHR5cGU6IHRvSXNvU3RyaW5nVHlwZU9wdFR5cGUgPSAnZGF0ZS10aW1lJywgZGF0ZVRpbWVPcHRzOiB0b0lzb1N0cmluZ0RhdGVUaW1lT3B0c1R5cGUgPSB7fSk6IHN0cmluZyB8IG51bGwge1xuICAgICAgICBpZiAodHlwZW9mIHZhbHVlID09PSAnc3RyaW5nJykge1xuICAgICAgICAgICAgdmFsdWUgPSBuZXcgRGF0ZSh2YWx1ZSk7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKHR5cGVvZiB2YWx1ZSA9PT0gJ251bWJlcicpIHtcbiAgICAgICAgICAgIHZhbHVlID0gbmV3IERhdGUodmFsdWUpO1xuICAgICAgICB9XG4gICAgICAgIGlmICghKHZhbHVlIGluc3RhbmNlb2YgRGF0ZSkpIHtcbiAgICAgICAgICAgIHJldHVybiBudWxsO1xuICAgICAgICB9XG4gICAgICAgIGlmICh0eXBlID09PSAnZGF0ZScpIHtcbiAgICAgICAgICAgIC8vIGRhdGUgb25seSwgbm8gdGltZSBwYXJ0IChhbmQgdGltZXpvbmUsIG1pbGxpcywgdXRjIGRvZXMgbm90IG1hdHRlciAuLi4pXG4gICAgICAgICAgICByZXR1cm4gdmFsdWUuZ2V0RnVsbFllYXIoKSArICctJyArIERhdGVVdGlsLnBhZE51bWJlcih2YWx1ZS5nZXRNb250aCgpICsgMSkgKyAnLScgKyBEYXRlVXRpbC5wYWROdW1iZXIodmFsdWUuZ2V0RGF0ZSgpKTtcbiAgICAgICAgfVxuICAgICAgICBpZiAoZGF0ZVRpbWVPcHRzLnV0Yykge1xuICAgICAgICAgICAgbGV0IHN0ciA9IHZhbHVlLnRvSVNPU3RyaW5nKCk7XG4gICAgICAgICAgICBpZiAoZGF0ZVRpbWVPcHRzLm5vTWlsbGlzKSB7XG4gICAgICAgICAgICAgICAgY29uc3QgZG90SWR4ID0gc3RyLmxhc3RJbmRleE9mKCcuJyk7XG4gICAgICAgICAgICAgICAgc3RyID0gc3RyLnN1YnN0cmluZygwLCBkb3RJZHgpICsgc3RyLnN1YnN0cmluZyhkb3RJZHggKyA0LCBzdHIubGVuZ3RoKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmIChkYXRlVGltZU9wdHMubm9UaW1lem9uZSkge1xuICAgICAgICAgICAgICAgIHN0ciA9IHN0ci5zdWJzdHJpbmcoMCwgc3RyLmxlbmd0aCAtIDEpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcmV0dXJuIHN0cjtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIGxldCBiYXNlID1cbiAgICAgICAgICAgICAgICB2YWx1ZS5nZXRGdWxsWWVhcigpICtcbiAgICAgICAgICAgICAgICAnLScgK1xuICAgICAgICAgICAgICAgIERhdGVVdGlsLnBhZE51bWJlcih2YWx1ZS5nZXRNb250aCgpICsgMSkgK1xuICAgICAgICAgICAgICAgICctJyArXG4gICAgICAgICAgICAgICAgRGF0ZVV0aWwucGFkTnVtYmVyKHZhbHVlLmdldERhdGUoKSkgK1xuICAgICAgICAgICAgICAgICdUJyArXG4gICAgICAgICAgICAgICAgRGF0ZVV0aWwucGFkTnVtYmVyKHZhbHVlLmdldEhvdXJzKCkpICtcbiAgICAgICAgICAgICAgICAnOicgK1xuICAgICAgICAgICAgICAgIERhdGVVdGlsLnBhZE51bWJlcih2YWx1ZS5nZXRNaW51dGVzKCkpICtcbiAgICAgICAgICAgICAgICAnOicgK1xuICAgICAgICAgICAgICAgIERhdGVVdGlsLnBhZE51bWJlcih2YWx1ZS5nZXRTZWNvbmRzKCkpO1xuXG4gICAgICAgICAgICBpZiAoIWRhdGVUaW1lT3B0cy5ub01pbGxpcykge1xuICAgICAgICAgICAgICAgIGJhc2UgKz0gJy4nICsgRGF0ZVV0aWwucGFkTnVtYmVyKHZhbHVlLmdldE1pbGxpc2Vjb25kcygpKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmICghZGF0ZVRpbWVPcHRzLm5vVGltZXpvbmUpIHtcbiAgICAgICAgICAgICAgICBjb25zdCB0em8gPSAtdmFsdWUuZ2V0VGltZXpvbmVPZmZzZXQoKSxcbiAgICAgICAgICAgICAgICAgICAgZGlmID0gdHpvID49IDAgPyAnKycgOiAnLSc7XG5cbiAgICAgICAgICAgICAgICBiYXNlID0gYmFzZSArIChkaWYgKyBEYXRlVXRpbC5wYWROdW1iZXIoTWF0aC5mbG9vcihNYXRoLmFicyh0em8pIC8gNjApKSArICc6JyArIERhdGVVdGlsLnBhZE51bWJlcihNYXRoLmFicyh0em8pICUgNjApKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgcmV0dXJuIGJhc2U7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwdWJsaWMgc3RhdGljIGZyb21Bbmd1bGFyVG9QcmltZURhdGVGb3JtYXQobmdEYXRlRm9ybWF0OiBzdHJpbmcpOiBzdHJpbmcge1xuICAgICAgICBsZXQgcHJpbWVEYXRlRm9ybWF0ID0gbmdEYXRlRm9ybWF0O1xuICAgICAgICBmb3IgKGNvbnN0IHJlZ2V4IG9mIERhdGVVdGlsLk5HX1BSSU1FX0ZPUk1BVF9PVEhFUikge1xuICAgICAgICAgICAgcHJpbWVEYXRlRm9ybWF0ID0gcHJpbWVEYXRlRm9ybWF0LnJlcGxhY2UocmVnZXgsICcgJyk7XG4gICAgICAgIH1cbiAgICAgICAgZm9yIChjb25zdCByZWdleCBvZiBEYXRlVXRpbC5OR19QUklNRV9GT1JNQVRfU1VQUE9SVEVEKSB7XG4gICAgICAgICAgICBjb25zdCBtYXRjaGVzID0gWy4uLnByaW1lRGF0ZUZvcm1hdC5tYXRjaEFsbChyZWdleCldLnJldmVyc2UoKTtcbiAgICAgICAgICAgIGZvciAoY29uc3QgbWF0Y2ggb2YgbWF0Y2hlcykge1xuICAgICAgICAgICAgICAgIGlmIChtYXRjaC5pbmRleCkge1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBtYXRjaFN0ciA9IG1hdGNoWzBdO1xuICAgICAgICAgICAgICAgICAgICBjb25zdCByZXBsYWNlbWVudCA9IERhdGVVdGlsLk5HX1BSSU1FX0ZPUk1BVF9NQVBbbWF0Y2hTdHIgYXMga2V5b2Ygb2JqZWN0XSA/PyBtYXRjaFswXTtcbiAgICAgICAgICAgICAgICAgICAgcHJpbWVEYXRlRm9ybWF0ID0gcHJpbWVEYXRlRm9ybWF0LnN1YnN0cmluZygwLCBtYXRjaC5pbmRleCkgKyByZXBsYWNlbWVudCArIHByaW1lRGF0ZUZvcm1hdC5zdWJzdHJpbmcobWF0Y2guaW5kZXggKyBtYXRjaFN0ci5sZW5ndGgpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBwcmltZURhdGVGb3JtYXQgPSBwcmltZURhdGVGb3JtYXQucmVwbGFjZSgvXFxzK1xcV1xccysvZywgJyAnKTtcbiAgICAgICAgcHJpbWVEYXRlRm9ybWF0ID0gcHJpbWVEYXRlRm9ybWF0LnJlcGxhY2UoL1xcc1xccysvZywgJyAnKTtcblxuICAgICAgICByZXR1cm4gcHJpbWVEYXRlRm9ybWF0LnRyaW0oKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgc3RhdGljIGZyb21Bbmd1bGFyRGF0ZUZvcm1hdEhhc1RpbWUobmdEYXRlRm9ybWF0OiBzdHJpbmcpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIC9baEhtc1NdLy50ZXN0KG5nRGF0ZUZvcm1hdCk7XG4gICAgfVxuXG4gICAgcHVibGljIHN0YXRpYyBmcm9tQW5ndWxhckRhdGVGb3JtYXRIYXNTZWNvbmRzKG5nRGF0ZUZvcm1hdDogc3RyaW5nKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiAvW3NTXS8udGVzdChuZ0RhdGVGb3JtYXQpO1xuICAgIH1cbn1cbiJdfQ==
@@ -1,61 +0,0 @@
1
- import 'reflect-metadata';
2
- import { MngInternalError } from '../models';
3
- import { MngLoggerService } from '../services';
4
- export class DecoratorMetadataUtil {
5
- static { this.reflectTypeNameKey = 'typeName'; }
6
- static { this.reflectEnumNameKey = 'enumName'; }
7
- /**
8
- * Defines type name decorator.
9
- * @param targetType class.
10
- * @param typeName Name of the type.
11
- */
12
- static defineReflectTypeName(targetType, typeName) {
13
- if (!Reflect.hasOwnMetadata(DecoratorMetadataUtil.reflectTypeNameKey, targetType)) {
14
- Reflect.defineMetadata(DecoratorMetadataUtil.reflectTypeNameKey, typeName, targetType);
15
- }
16
- }
17
- /**
18
- * Defines enum name decorator.
19
- * @param targetType enum object.
20
- * @param enumName Name of the enum.
21
- */
22
- static defineReflectEnumName(targetType, enumName) {
23
- if (!Reflect.hasOwnMetadata(DecoratorMetadataUtil.reflectEnumNameKey, targetType)) {
24
- Reflect.defineMetadata(DecoratorMetadataUtil.reflectEnumNameKey, enumName, targetType);
25
- }
26
- }
27
- /**
28
- * Gets type name from reflect metadata.
29
- * @param type Class.
30
- */
31
- static findTypeName(type) {
32
- if (!type) {
33
- return null;
34
- }
35
- const typeName = Reflect.getMetadata(DecoratorMetadataUtil.reflectTypeNameKey, type);
36
- if (typeName) {
37
- return typeName;
38
- }
39
- MngLoggerService.get().debug('WARNING: Reflect metadata could not be found for type, you might experience some issues in production build.', type?.name);
40
- return type.name;
41
- }
42
- /**
43
- * Gets type name from either decorator or reflect metadata.
44
- * @param type Class.
45
- */
46
- static typeNameExists(type) {
47
- return Reflect.hasOwnMetadata(DecoratorMetadataUtil.reflectTypeNameKey, type);
48
- }
49
- /**
50
- * Gets enum name from either decorator or reflect metadata.
51
- * @param enumType Class.
52
- */
53
- static findEnumName(enumType) {
54
- const enumName = Reflect.getMetadata(DecoratorMetadataUtil.reflectEnumNameKey, enumType);
55
- if (enumName) {
56
- return enumName;
57
- }
58
- throw new MngInternalError('Could not fined enum name', { name: 'TypeUtilsError' });
59
- }
60
- }
61
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVjb3JhdG9yLW1ldGFkYXRhLnV0aWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvbGliL3V0aWxzL2RlY29yYXRvci1tZXRhZGF0YS51dGlsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sa0JBQWtCLENBQUM7QUFFMUIsT0FBTyxFQUFDLGdCQUFnQixFQUFDLE1BQU0sV0FBVyxDQUFDO0FBQzNDLE9BQU8sRUFBQyxnQkFBZ0IsRUFBQyxNQUFNLGFBQWEsQ0FBQztBQUc3QyxNQUFNLE9BQU8scUJBQXFCO2FBQ1AsdUJBQWtCLEdBQUcsVUFBVSxDQUFDO2FBQ2hDLHVCQUFrQixHQUFHLFVBQVUsQ0FBQztJQUV2RDs7OztPQUlHO0lBQ0ksTUFBTSxDQUFDLHFCQUFxQixDQUFDLFVBQTBCLEVBQUUsUUFBZ0I7UUFDNUUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxjQUFjLENBQUMscUJBQXFCLENBQUMsa0JBQWtCLEVBQUUsVUFBVSxDQUFDLEVBQUU7WUFDL0UsT0FBTyxDQUFDLGNBQWMsQ0FBQyxxQkFBcUIsQ0FBQyxrQkFBa0IsRUFBRSxRQUFRLEVBQUUsVUFBVSxDQUFDLENBQUM7U0FDMUY7SUFDTCxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNJLE1BQU0sQ0FBQyxxQkFBcUIsQ0FBQyxVQUFvQixFQUFFLFFBQWdCO1FBQ3RFLElBQUksQ0FBQyxPQUFPLENBQUMsY0FBYyxDQUFDLHFCQUFxQixDQUFDLGtCQUFrQixFQUFFLFVBQVUsQ0FBQyxFQUFFO1lBQy9FLE9BQU8sQ0FBQyxjQUFjLENBQUMscUJBQXFCLENBQUMsa0JBQWtCLEVBQUUsUUFBUSxFQUFFLFVBQVUsQ0FBQyxDQUFDO1NBQzFGO0lBQ0wsQ0FBQztJQUVEOzs7T0FHRztJQUNJLE1BQU0sQ0FBQyxZQUFZLENBQUksSUFBbUI7UUFDN0MsSUFBSSxDQUFDLElBQUksRUFBRTtZQUNQLE9BQU8sSUFBSSxDQUFDO1NBQ2Y7UUFDRCxNQUFNLFFBQVEsR0FBRyxPQUFPLENBQUMsV0FBVyxDQUFDLHFCQUFxQixDQUFDLGtCQUFrQixFQUFFLElBQUksQ0FBQyxDQUFDO1FBQ3JGLElBQUksUUFBUSxFQUFFO1lBQ1YsT0FBTyxRQUFRLENBQUM7U0FDbkI7UUFDRCxnQkFBZ0IsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxLQUFLLENBQUMsOEdBQThHLEVBQUUsSUFBSSxFQUFFLElBQUksQ0FBQyxDQUFDO1FBQ3pKLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQztJQUNyQixDQUFDO0lBRUQ7OztPQUdHO0lBQ0ksTUFBTSxDQUFDLGNBQWMsQ0FBQyxJQUFvQjtRQUM3QyxPQUFPLE9BQU8sQ0FBQyxjQUFjLENBQUMscUJBQXFCLENBQUMsa0JBQWtCLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDbEYsQ0FBQztJQUVEOzs7T0FHRztJQUNJLE1BQU0sQ0FBQyxZQUFZLENBQUMsUUFBa0I7UUFDekMsTUFBTSxRQUFRLEdBQUcsT0FBTyxDQUFDLFdBQVcsQ0FBQyxxQkFBcUIsQ0FBQyxrQkFBa0IsRUFBRSxRQUFRLENBQUMsQ0FBQztRQUN6RixJQUFJLFFBQVEsRUFBRTtZQUNWLE9BQU8sUUFBUSxDQUFDO1NBQ25CO1FBQ0QsTUFBTSxJQUFJLGdCQUFnQixDQUFDLDJCQUEyQixFQUFFLEVBQUMsSUFBSSxFQUFFLGdCQUFnQixFQUFDLENBQUMsQ0FBQztJQUN0RixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICdyZWZsZWN0LW1ldGFkYXRhJztcblxuaW1wb3J0IHtNbmdJbnRlcm5hbEVycm9yfSBmcm9tICcuLi9tb2RlbHMnO1xuaW1wb3J0IHtNbmdMb2dnZXJTZXJ2aWNlfSBmcm9tICcuLi9zZXJ2aWNlcyc7XG5pbXBvcnQge0NsYXNzVHlwZSwgRW51bVR5cGV9IGZyb20gJy4uL3R5cGVzJztcblxuZXhwb3J0IGNsYXNzIERlY29yYXRvck1ldGFkYXRhVXRpbCB7XG4gICAgcHVibGljIHN0YXRpYyByZWFkb25seSByZWZsZWN0VHlwZU5hbWVLZXkgPSAndHlwZU5hbWUnO1xuICAgIHB1YmxpYyBzdGF0aWMgcmVhZG9ubHkgcmVmbGVjdEVudW1OYW1lS2V5ID0gJ2VudW1OYW1lJztcblxuICAgIC8qKlxuICAgICAqIERlZmluZXMgdHlwZSBuYW1lIGRlY29yYXRvci5cbiAgICAgKiBAcGFyYW0gdGFyZ2V0VHlwZSBjbGFzcy5cbiAgICAgKiBAcGFyYW0gdHlwZU5hbWUgTmFtZSBvZiB0aGUgdHlwZS5cbiAgICAgKi9cbiAgICBwdWJsaWMgc3RhdGljIGRlZmluZVJlZmxlY3RUeXBlTmFtZSh0YXJnZXRUeXBlOiBDbGFzc1R5cGU8YW55PiwgdHlwZU5hbWU6IHN0cmluZykge1xuICAgICAgICBpZiAoIVJlZmxlY3QuaGFzT3duTWV0YWRhdGEoRGVjb3JhdG9yTWV0YWRhdGFVdGlsLnJlZmxlY3RUeXBlTmFtZUtleSwgdGFyZ2V0VHlwZSkpIHtcbiAgICAgICAgICAgIFJlZmxlY3QuZGVmaW5lTWV0YWRhdGEoRGVjb3JhdG9yTWV0YWRhdGFVdGlsLnJlZmxlY3RUeXBlTmFtZUtleSwgdHlwZU5hbWUsIHRhcmdldFR5cGUpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogRGVmaW5lcyBlbnVtIG5hbWUgZGVjb3JhdG9yLlxuICAgICAqIEBwYXJhbSB0YXJnZXRUeXBlIGVudW0gb2JqZWN0LlxuICAgICAqIEBwYXJhbSBlbnVtTmFtZSBOYW1lIG9mIHRoZSBlbnVtLlxuICAgICAqL1xuICAgIHB1YmxpYyBzdGF0aWMgZGVmaW5lUmVmbGVjdEVudW1OYW1lKHRhcmdldFR5cGU6IEVudW1UeXBlLCBlbnVtTmFtZTogc3RyaW5nKSB7XG4gICAgICAgIGlmICghUmVmbGVjdC5oYXNPd25NZXRhZGF0YShEZWNvcmF0b3JNZXRhZGF0YVV0aWwucmVmbGVjdEVudW1OYW1lS2V5LCB0YXJnZXRUeXBlKSkge1xuICAgICAgICAgICAgUmVmbGVjdC5kZWZpbmVNZXRhZGF0YShEZWNvcmF0b3JNZXRhZGF0YVV0aWwucmVmbGVjdEVudW1OYW1lS2V5LCBlbnVtTmFtZSwgdGFyZ2V0VHlwZSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBHZXRzIHR5cGUgbmFtZSBmcm9tIHJlZmxlY3QgbWV0YWRhdGEuXG4gICAgICogQHBhcmFtIHR5cGUgQ2xhc3MuXG4gICAgICovXG4gICAgcHVibGljIHN0YXRpYyBmaW5kVHlwZU5hbWU8VD4odHlwZT86IENsYXNzVHlwZTxUPik6IHN0cmluZyB8IG51bGwge1xuICAgICAgICBpZiAoIXR5cGUpIHtcbiAgICAgICAgICAgIHJldHVybiBudWxsO1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IHR5cGVOYW1lID0gUmVmbGVjdC5nZXRNZXRhZGF0YShEZWNvcmF0b3JNZXRhZGF0YVV0aWwucmVmbGVjdFR5cGVOYW1lS2V5LCB0eXBlKTtcbiAgICAgICAgaWYgKHR5cGVOYW1lKSB7XG4gICAgICAgICAgICByZXR1cm4gdHlwZU5hbWU7XG4gICAgICAgIH1cbiAgICAgICAgTW5nTG9nZ2VyU2VydmljZS5nZXQoKS5kZWJ1ZygnV0FSTklORzogUmVmbGVjdCBtZXRhZGF0YSBjb3VsZCBub3QgYmUgZm91bmQgZm9yIHR5cGUsIHlvdSBtaWdodCBleHBlcmllbmNlIHNvbWUgaXNzdWVzIGluIHByb2R1Y3Rpb24gYnVpbGQuJywgdHlwZT8ubmFtZSk7XG4gICAgICAgIHJldHVybiB0eXBlLm5hbWU7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogR2V0cyB0eXBlIG5hbWUgZnJvbSBlaXRoZXIgZGVjb3JhdG9yIG9yIHJlZmxlY3QgbWV0YWRhdGEuXG4gICAgICogQHBhcmFtIHR5cGUgQ2xhc3MuXG4gICAgICovXG4gICAgcHVibGljIHN0YXRpYyB0eXBlTmFtZUV4aXN0cyh0eXBlOiBDbGFzc1R5cGU8YW55Pik6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gUmVmbGVjdC5oYXNPd25NZXRhZGF0YShEZWNvcmF0b3JNZXRhZGF0YVV0aWwucmVmbGVjdFR5cGVOYW1lS2V5LCB0eXBlKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBHZXRzIGVudW0gbmFtZSBmcm9tIGVpdGhlciBkZWNvcmF0b3Igb3IgcmVmbGVjdCBtZXRhZGF0YS5cbiAgICAgKiBAcGFyYW0gZW51bVR5cGUgQ2xhc3MuXG4gICAgICovXG4gICAgcHVibGljIHN0YXRpYyBmaW5kRW51bU5hbWUoZW51bVR5cGU6IEVudW1UeXBlKTogc3RyaW5nIHtcbiAgICAgICAgY29uc3QgZW51bU5hbWUgPSBSZWZsZWN0LmdldE1ldGFkYXRhKERlY29yYXRvck1ldGFkYXRhVXRpbC5yZWZsZWN0RW51bU5hbWVLZXksIGVudW1UeXBlKTtcbiAgICAgICAgaWYgKGVudW1OYW1lKSB7XG4gICAgICAgICAgICByZXR1cm4gZW51bU5hbWU7XG4gICAgICAgIH1cbiAgICAgICAgdGhyb3cgbmV3IE1uZ0ludGVybmFsRXJyb3IoJ0NvdWxkIG5vdCBmaW5lZCBlbnVtIG5hbWUnLCB7bmFtZTogJ1R5cGVVdGlsc0Vycm9yJ30pO1xuICAgIH1cbn1cbiJdfQ==
@@ -1,339 +0,0 @@
1
- import { map } from 'rxjs/operators';
2
- import { FieldActionDescriptor, FieldInputDescriptor, FieldLookupDescriptor, FieldLookupEnumDescriptor, FieldManyEditorDescriptor, FieldManyToManyEditorDescriptor } from '../descriptors/editor';
3
- import { TableviewDescriptor } from '../descriptors/tableview';
4
- import { FieldInputTypeEnum, FieldLookupTypeEnum, TableviewEditorTypeEnum } from '../descriptors/types';
5
- import { MngInternalError } from '../models';
6
- import { MngCommonsService } from '../services';
7
- export class EditorFormlyUtil {
8
- static createFormlyConfigFromDescriptor(descriptor, formEditorComponent) {
9
- const fields = [];
10
- if (descriptor.isLocalized) {
11
- descriptor = EditorFormlyUtil.createLocalizationsTab(descriptor);
12
- }
13
- if (!descriptor.isLocalized && descriptor.tabs.length === 1 && descriptor.tabs[0].default) {
14
- // dont use tabs
15
- fields.push(...EditorFormlyUtil.createFormlyGroupType(descriptor.tabs[0].fields, formEditorComponent));
16
- }
17
- else {
18
- fields.push(...EditorFormlyUtil.createFormlyTabType(descriptor.tabs, formEditorComponent));
19
- }
20
- return fields;
21
- }
22
- static createLocalizationsTab(descriptor) {
23
- if (descriptor.isLocalized && descriptor.tableviewEditorType !== TableviewEditorTypeEnum.Details) {
24
- if (!descriptor.localizationModel) {
25
- throw new MngInternalError('Localization model must be defined.');
26
- }
27
- const localizationsTableViewDescriptor = TableviewDescriptor.fromModel(descriptor.localizationModel);
28
- if (!descriptor.localizationLocaleProperty) {
29
- throw new MngInternalError('Localization locale property must be defined.');
30
- }
31
- localizationsTableViewDescriptor.addColumn(descriptor.localizationLocaleProperty);
32
- localizationsTableViewDescriptor.editEditor.addField(descriptor.localizationLocaleProperty).withDisabled(true);
33
- localizationsTableViewDescriptor.detailsEditor.addField(descriptor.localizationLocaleProperty).withDisabled(true);
34
- localizationsTableViewDescriptor.addEditor
35
- .addFieldLookupWithProvider(descriptor.localizationLocaleProperty, MngCommonsService)
36
- .withLookup((qp, service) => service.appDataLanguages)
37
- .withDisabled(false)
38
- .withRequired();
39
- descriptor.fields.forEach(field => {
40
- if (field.isLocalized) {
41
- localizationsTableViewDescriptor.addColumn(field.property);
42
- localizationsTableViewDescriptor.addField(field.property);
43
- }
44
- });
45
- const descriptorWithLocalizations = descriptor.copy();
46
- descriptorWithLocalizations.createTabGroup('localizations');
47
- if (!descriptor.localizationLocalizationProperty) {
48
- throw new MngInternalError('Localization localization property must be defined');
49
- }
50
- descriptorWithLocalizations.addFieldManyEditor(descriptor.localizationLocalizationProperty, localizationsTableViewDescriptor);
51
- return descriptorWithLocalizations;
52
- }
53
- return descriptor;
54
- }
55
- static createFormlyTabType(tabGroups, formEditorComponent) {
56
- const tabsField = {
57
- type: 'tabs',
58
- fieldGroup: [],
59
- props: {
60
- formEditorComponent
61
- }
62
- };
63
- for (const tab of tabGroups) {
64
- const tabField = {
65
- id: tab.name,
66
- props: {
67
- formEditorComponent
68
- },
69
- expressions: {},
70
- fieldGroup: []
71
- };
72
- if (tab.title) {
73
- tabField.props.label = tab.title;
74
- }
75
- tabField.fieldGroup.push(...EditorFormlyUtil.createFormlyGroupType(tab.fields, formEditorComponent));
76
- tabsField.fieldGroup.push(tabField);
77
- }
78
- return [tabsField];
79
- }
80
- static createFormlyGroupType(groups, formEditorComponent) {
81
- if (groups.length === 1 && groups[0].default) {
82
- // dont use fieldset, just create fields
83
- return EditorFormlyUtil.createFormlyFields(groups[0], formEditorComponent);
84
- }
85
- else {
86
- const groupsField = {
87
- type: 'fieldset',
88
- fieldGroup: [],
89
- props: {
90
- formEditorComponent
91
- },
92
- expressions: {}
93
- };
94
- for (const group of groups) {
95
- const groupField = {
96
- id: group.name,
97
- props: {
98
- descriptor: group
99
- },
100
- expressions: {},
101
- fieldGroup: []
102
- };
103
- if (group.title) {
104
- groupField.props.label = group.title;
105
- }
106
- groupField.fieldGroup.push(...EditorFormlyUtil.createFormlyFields(group, formEditorComponent));
107
- groupsField.fieldGroup.push(groupField);
108
- }
109
- return [groupsField];
110
- }
111
- }
112
- static createFormlyFields(descriptor, formEditorComponent) {
113
- const fields = [];
114
- for (const descriptorField of descriptor.fields) {
115
- fields.push(EditorFormlyUtil.createFormlyField(descriptorField, formEditorComponent));
116
- }
117
- // wrap in group to be able to use flex grid
118
- const wrapperGroup = {
119
- fieldGroupClassName: 'p-fluid formgrid grid',
120
- fieldGroup: fields
121
- };
122
- EditorFormlyUtil.addValidationsToFormlyField(wrapperGroup, descriptor.validations);
123
- return [wrapperGroup];
124
- }
125
- static createFormlyField(descriptor, formEditorComponent) {
126
- const field = {
127
- key: descriptor.property,
128
- modelOptions: {
129
- updateOn: descriptor.updateOn
130
- },
131
- hooks: {
132
- onInit: () => (descriptor.onInit ? descriptor.onInit(field) : undefined),
133
- onChanges: () => (descriptor.onChanges ? descriptor.onChanges(field) : undefined),
134
- afterContentInit: () => (descriptor.afterContentInit ? descriptor.afterContentInit(field) : undefined),
135
- afterViewInit: () => (descriptor.afterViewInit ? descriptor.afterViewInit(field) : undefined),
136
- onDestroy: () => (descriptor.onDestroy ? descriptor.onDestroy(field) : undefined)
137
- },
138
- props: {
139
- descriptor,
140
- formEditorComponent,
141
- onValueChange: descriptor.onValueChange
142
- },
143
- expressions: {}
144
- };
145
- let className = descriptor.className;
146
- if (!className) {
147
- // assign default field width through entire row
148
- className = 'col-12';
149
- }
150
- field.className = className;
151
- if (descriptor instanceof FieldInputDescriptor) {
152
- switch (descriptor.fieldType) {
153
- case FieldInputTypeEnum.Hidden:
154
- break;
155
- case FieldInputTypeEnum.Label:
156
- field.type = 'label';
157
- delete field.key;
158
- break;
159
- case FieldInputTypeEnum.Textarea:
160
- field.type = 'textarea';
161
- field.props.maxLength = descriptor.maxLength;
162
- field.props.minLength = descriptor.minLength;
163
- field.props.pattern = descriptor.pattern;
164
- break;
165
- case FieldInputTypeEnum.Number:
166
- field.type = 'number';
167
- field.props.min = descriptor.numberMin;
168
- field.props.max = descriptor.numberMax;
169
- break;
170
- case FieldInputTypeEnum.Currency:
171
- field.type = 'currency';
172
- field.props.min = descriptor.numberMin;
173
- field.props.max = descriptor.numberMax;
174
- break;
175
- case FieldInputTypeEnum.Switch:
176
- field.type = 'switch';
177
- field.defaultValue = false;
178
- break;
179
- case FieldInputTypeEnum.Radio:
180
- field.type = 'radio';
181
- break;
182
- case FieldInputTypeEnum.Datepicker:
183
- field.type = 'datepicker';
184
- break;
185
- case FieldInputTypeEnum.Mask:
186
- field.type = 'mask';
187
- break;
188
- case FieldInputTypeEnum.File:
189
- case FieldInputTypeEnum.ImageFile:
190
- field.type = 'file';
191
- break;
192
- case FieldInputTypeEnum.ImageUrl:
193
- field.type = 'imageUrl';
194
- break;
195
- case FieldInputTypeEnum.Custom:
196
- if (descriptor.customComponentType) {
197
- field.type = 'custom';
198
- field.props['customComponentType'] = descriptor.customComponentType;
199
- if (Array.isArray(descriptor.customComponentWrappers)) {
200
- field.wrappers = descriptor.customComponentWrappers;
201
- }
202
- else {
203
- // default wrapper
204
- field.wrappers = ['field'];
205
- }
206
- }
207
- break;
208
- default:
209
- field.type = 'input';
210
- field.props.minLength = descriptor.minLength;
211
- field.props.maxLength = descriptor.maxLength;
212
- field.props.pattern = descriptor.pattern;
213
- break;
214
- }
215
- }
216
- else if (descriptor instanceof FieldActionDescriptor) {
217
- field.type = 'action';
218
- field.wrappers = descriptor.wrappers;
219
- delete field.key;
220
- }
221
- else if (descriptor instanceof FieldLookupEnumDescriptor) {
222
- switch (descriptor.lookupType) {
223
- case FieldLookupTypeEnum.Custom:
224
- field.type = descriptor.customComponentName;
225
- break;
226
- default:
227
- field.type = 'enum';
228
- break;
229
- }
230
- }
231
- else if (descriptor instanceof FieldLookupDescriptor) {
232
- switch (descriptor.lookupType) {
233
- case FieldLookupTypeEnum.Autocomplete:
234
- field.type = 'autocomplete';
235
- break;
236
- case FieldLookupTypeEnum.Dialog:
237
- field.type = 'dialog';
238
- break;
239
- case FieldLookupTypeEnum.Custom:
240
- field.type = descriptor.customComponentName;
241
- break;
242
- case FieldLookupTypeEnum.Dropdown:
243
- default:
244
- field.type = 'dropdown';
245
- break;
246
- }
247
- }
248
- else if (descriptor instanceof FieldManyToManyEditorDescriptor) {
249
- field.type = 'table-dialog-multiselect';
250
- }
251
- else if (descriptor instanceof FieldManyEditorDescriptor) {
252
- field.type = 'table-dialog-form';
253
- }
254
- if (descriptor.label) {
255
- field.props.label = descriptor.label;
256
- }
257
- if (descriptor.requiredExpression) {
258
- field.expressions['props.required'] = descriptor.requiredExpression;
259
- }
260
- if (descriptor.required) {
261
- field.props.required = true;
262
- if (descriptor.requiredHideLabelMarker) {
263
- field.props['hideRequiredMarker'] = true;
264
- }
265
- }
266
- if (descriptor.hiddenExpression) {
267
- field.expressions['hide'] = descriptor.hiddenExpression;
268
- }
269
- if (descriptor.disabledExpression) {
270
- field.expressions['props.disabled'] = descriptor.disabledExpression;
271
- }
272
- else if (descriptor.disabled) {
273
- field.props.disabled = true;
274
- }
275
- else {
276
- field.expressions['props.disabled'] = 'formState.disabled';
277
- }
278
- if (typeof descriptor.defaultValue !== 'undefined') {
279
- field.defaultValue = descriptor.defaultValue;
280
- }
281
- EditorFormlyUtil.addValidationsToFormlyField(field, descriptor.validations);
282
- EditorFormlyUtil.addAsyncValidationsToFormlyField(field, descriptor.asyncValidations);
283
- return field;
284
- }
285
- static addValidationsToFormlyField(config, validations) {
286
- if (!config.validators) {
287
- config.validators = {};
288
- }
289
- for (const validation of validations) {
290
- if (typeof validation.validator === 'function') {
291
- config.validators[validation.name] = {
292
- expression: (control, field, options) => {
293
- const validatorRes = validation.validator(control, field, options);
294
- // formly validator only excepts true/false for validation
295
- // map possible angular validator result to true/false
296
- return typeof validatorRes === 'boolean' ? validatorRes : validatorRes === null;
297
- }
298
- };
299
- if (typeof validation.message === 'function') {
300
- config.validators[validation.name].message = validation.message;
301
- }
302
- }
303
- else {
304
- if (!Array.isArray(config.validators.validation)) {
305
- config.validators.validation = [];
306
- }
307
- config.validators.validation.push(validation.name);
308
- }
309
- }
310
- }
311
- static addAsyncValidationsToFormlyField(config, asyncValidations) {
312
- if (!config.asyncValidators) {
313
- config.asyncValidators = {};
314
- }
315
- for (const validation of asyncValidations) {
316
- if (typeof validation.validator === 'function') {
317
- config.asyncValidators[validation.name] = {
318
- expression: (control, field, options) => {
319
- const validator = validation.validator;
320
- const validatorObs = validator(control, field, options);
321
- // formly validator only excepts true/false for validation
322
- // map possible angular validator result to true/false
323
- return validatorObs.pipe(map(value => (typeof value === 'boolean' ? value : value === null)));
324
- }
325
- };
326
- if (typeof validation.message === 'function') {
327
- config.asyncValidators[validation.name].message = validation.message;
328
- }
329
- }
330
- else {
331
- if (!Array.isArray(config.asyncValidators.validation)) {
332
- config.asyncValidators.validation = [];
333
- }
334
- config.asyncValidators.validation.push(validation.name);
335
- }
336
- }
337
- }
338
- }
339
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWRpdG9yLWZvcm1seS51dGlsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2xpYi91dGlscy9lZGl0b3ItZm9ybWx5LnV0aWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBSUEsT0FBTyxFQUFDLEdBQUcsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBSW5DLE9BQU8sRUFHSCxxQkFBcUIsRUFFckIsb0JBQW9CLEVBQ3BCLHFCQUFxQixFQUNyQix5QkFBeUIsRUFDekIseUJBQXlCLEVBQ3pCLCtCQUErQixFQUdsQyxNQUFNLHVCQUF1QixDQUFDO0FBQy9CLE9BQU8sRUFBQyxtQkFBbUIsRUFBQyxNQUFNLDBCQUEwQixDQUFDO0FBQzdELE9BQU8sRUFBQyxrQkFBa0IsRUFBRSxtQkFBbUIsRUFBRSx1QkFBdUIsRUFBQyxNQUFNLHNCQUFzQixDQUFDO0FBQ3RHLE9BQU8sRUFBQyxnQkFBZ0IsRUFBQyxNQUFNLFdBQVcsQ0FBQztBQUMzQyxPQUFPLEVBQUMsaUJBQWlCLEVBQUMsTUFBTSxhQUFhLENBQUM7QUFHOUMsTUFBTSxPQUFPLGdCQUFnQjtJQUNsQixNQUFNLENBQUMsZ0NBQWdDLENBQUMsVUFBcUMsRUFBRSxtQkFBa0Q7UUFDcEksTUFBTSxNQUFNLEdBQXdCLEVBQUUsQ0FBQztRQUV2QyxJQUFJLFVBQVUsQ0FBQyxXQUFXLEVBQUU7WUFDeEIsVUFBVSxHQUFHLGdCQUFnQixDQUFDLHNCQUFzQixDQUFDLFVBQVUsQ0FBQyxDQUFDO1NBQ3BFO1FBRUQsSUFBSSxDQUFDLFVBQVUsQ0FBQyxXQUFXLElBQUksVUFBVSxDQUFDLElBQUksQ0FBQyxNQUFNLEtBQUssQ0FBQyxJQUFJLFVBQVUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsT0FBTyxFQUFFO1lBQ3ZGLGdCQUFnQjtZQUNoQixNQUFNLENBQUMsSUFBSSxDQUFDLEdBQUcsZ0JBQWdCLENBQUMscUJBQXFCLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLEVBQUUsbUJBQW1CLENBQUMsQ0FBQyxDQUFDO1NBQzFHO2FBQU07WUFDSCxNQUFNLENBQUMsSUFBSSxDQUFDLEdBQUcsZ0JBQWdCLENBQUMsbUJBQW1CLENBQUMsVUFBVSxDQUFDLElBQUksRUFBRSxtQkFBbUIsQ0FBQyxDQUFDLENBQUM7U0FDOUY7UUFFRCxPQUFPLE1BQU0sQ0FBQztJQUNsQixDQUFDO0lBQ00sTUFBTSxDQUFDLHNCQUFzQixDQUFDLFVBQXFDO1FBQ3RFLElBQUksVUFBVSxDQUFDLFdBQVcsSUFBSSxVQUFVLENBQUMsbUJBQW1CLEtBQUssdUJBQXVCLENBQUMsT0FBTyxFQUFFO1lBQzlGLElBQUksQ0FBQyxVQUFVLENBQUMsaUJBQWlCLEVBQUU7Z0JBQy9CLE1BQU0sSUFBSSxnQkFBZ0IsQ0FBQyxxQ0FBcUMsQ0FBQyxDQUFDO2FBQ3JFO1lBQ0QsTUFBTSxnQ0FBZ0MsR0FBRyxtQkFBbUIsQ0FBQyxTQUFTLENBQUMsVUFBVSxDQUFDLGlCQUFpQixDQUFDLENBQUM7WUFDckcsSUFBSSxDQUFDLFVBQVUsQ0FBQywwQkFBMEIsRUFBRTtnQkFDeEMsTUFBTSxJQUFJLGdCQUFnQixDQUFDLCtDQUErQyxDQUFDLENBQUM7YUFDL0U7WUFDRCxnQ0FBZ0MsQ0FBQyxTQUFTLENBQUMsVUFBVSxDQUFDLDBCQUEwQixDQUFDLENBQUM7WUFDbEYsZ0NBQWdDLENBQUMsVUFBVSxDQUFDLFFBQVEsQ0FBQyxVQUFVLENBQUMsMEJBQTBCLENBQUMsQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDL0csZ0NBQWdDLENBQUMsYUFBYSxDQUFDLFFBQVEsQ0FBQyxVQUFVLENBQUMsMEJBQTBCLENBQUMsQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDbEgsZ0NBQWdDLENBQUMsU0FBUztpQkFDckMsMEJBQTBCLENBQTRCLFVBQVUsQ0FBQywwQkFBMEIsRUFBRSxpQkFBaUIsQ0FBQztpQkFDL0csVUFBVSxDQUFDLENBQUMsRUFBRSxFQUFFLE9BQU8sRUFBRSxFQUFFLENBQUMsT0FBTyxDQUFDLGdCQUFnQixDQUFDO2lCQUNyRCxZQUFZLENBQUMsS0FBSyxDQUFDO2lCQUNuQixZQUFZLEVBQUUsQ0FBQztZQUNwQixVQUFVLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsRUFBRTtnQkFDOUIsSUFBSSxLQUFLLENBQUMsV0FBVyxFQUFFO29CQUNuQixnQ0FBZ0MsQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxDQUFDO29CQUMzRCxnQ0FBZ0MsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxDQUFDO2lCQUM3RDtZQUNMLENBQUMsQ0FBQyxDQUFDO1lBQ0gsTUFBTSwyQkFBMkIsR0FBRyxVQUFVLENBQUMsSUFBSSxFQUFFLENBQUM7WUFDdEQsMkJBQTJCLENBQUMsY0FBYyxDQUFDLGVBQWUsQ0FBQyxDQUFDO1lBQzVELElBQUksQ0FBQyxVQUFVLENBQUMsZ0NBQWdDLEVBQUU7Z0JBQzlDLE1BQU0sSUFBSSxnQkFBZ0IsQ0FBQyxvREFBb0QsQ0FBQyxDQUFDO2FBQ3BGO1lBQ0QsMkJBQTJCLENBQUMsa0JBQWtCLENBQUMsVUFBVSxDQUFDLGdDQUFnQyxFQUFFLGdDQUFnQyxDQUFDLENBQUM7WUFFOUgsT0FBTywyQkFBMkIsQ0FBQztTQUN0QztRQUNELE9BQU8sVUFBVSxDQUFDO0lBQ3RCLENBQUM7SUFDTSxNQUFNLENBQUMsbUJBQW1CLENBQUMsU0FBeUMsRUFBRSxtQkFBa0Q7UUFDM0gsTUFBTSxTQUFTLEdBQXNCO1lBQ2pDLElBQUksRUFBRSxNQUFNO1lBQ1osVUFBVSxFQUFFLEVBQUU7WUFDZCxLQUFLLEVBQUU7Z0JBQ0gsbUJBQW1CO2FBQ3RCO1NBQ0osQ0FBQztRQUNGLEtBQUssTUFBTSxHQUFHLElBQUksU0FBUyxFQUFFO1lBQ3pCLE1BQU0sUUFBUSxHQUF5QjtnQkFDbkMsRUFBRSxFQUFFLEdBQUcsQ0FBQyxJQUFJO2dCQUNaLEtBQUssRUFBRTtvQkFDSCxtQkFBbUI7aUJBQ3RCO2dCQUNELFdBQVcsRUFBRSxFQUFFO2dCQUNmLFVBQVUsRUFBRSxFQUFFO2FBQ2pCLENBQUM7WUFDRixJQUFJLEdBQUcsQ0FBQyxLQUFLLEVBQUU7Z0JBQ1gsUUFBUSxDQUFDLEtBQUssQ0FBQyxLQUFLLEdBQUcsR0FBRyxDQUFDLEtBQUssQ0FBQzthQUNwQztZQUNELFFBQVEsQ0FBQyxVQUFXLENBQUMsSUFBSSxDQUFDLEdBQUcsZ0JBQWdCLENBQUMscUJBQXFCLENBQUMsR0FBRyxDQUFDLE1BQU0sRUFBRSxtQkFBbUIsQ0FBQyxDQUFDLENBQUM7WUFDdEcsU0FBUyxDQUFDLFVBQVcsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7U0FDeEM7UUFDRCxPQUFPLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDdkIsQ0FBQztJQUVNLE1BQU0sQ0FBQyxxQkFBcUIsQ0FBQyxNQUFtQyxFQUFFLG1CQUFrRDtRQUN2SCxJQUFJLE1BQU0sQ0FBQyxNQUFNLEtBQUssQ0FBQyxJQUFJLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxPQUFPLEVBQUU7WUFDMUMsd0NBQXdDO1lBQ3hDLE9BQU8sZ0JBQWdCLENBQUMsa0JBQWtCLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLG1CQUFtQixDQUFDLENBQUM7U0FDOUU7YUFBTTtZQUNILE1BQU0sV0FBVyxHQUF5QjtnQkFDdEMsSUFBSSxFQUFFLFVBQVU7Z0JBQ2hCLFVBQVUsRUFBRSxFQUFFO2dCQUNkLEtBQUssRUFBRTtvQkFDSCxtQkFBbUI7aUJBQ3RCO2dCQUNELFdBQVcsRUFBRSxFQUFFO2FBQ2xCLENBQUM7WUFDRixLQUFLLE1BQU0sS0FBSyxJQUFJLE1BQU0sRUFBRTtnQkFDeEIsTUFBTSxVQUFVLEdBQXlCO29CQUNyQyxFQUFFLEVBQUUsS0FBSyxDQUFDLElBQUk7b0JBQ2QsS0FBSyxFQUFFO3dCQUNILFVBQVUsRUFBRSxLQUFLO3FCQUNwQjtvQkFDRCxXQUFXLEVBQUUsRUFBRTtvQkFDZixVQUFVLEVBQUUsRUFBRTtpQkFDakIsQ0FBQztnQkFDRixJQUFJLEtBQUssQ0FBQyxLQUFLLEVBQUU7b0JBQ2IsVUFBVSxDQUFDLEtBQUssQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDLEtBQUssQ0FBQztpQkFDeEM7Z0JBQ0QsVUFBVSxDQUFDLFVBQVcsQ0FBQyxJQUFJLENBQUMsR0FBRyxnQkFBZ0IsQ0FBQyxrQkFBa0IsQ0FBQyxLQUFLLEVBQUUsbUJBQW1CLENBQUMsQ0FBQyxDQUFDO2dCQUNoRyxXQUFXLENBQUMsVUFBVyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQzthQUM1QztZQUNELE9BQU8sQ0FBQyxXQUFXLENBQUMsQ0FBQztTQUN4QjtJQUNMLENBQUM7SUFFTSxNQUFNLENBQUMsa0JBQWtCLENBQUMsVUFBcUMsRUFBRSxtQkFBa0Q7UUFDdEgsTUFBTSxNQUFNLEdBQXdCLEVBQUUsQ0FBQztRQUN2QyxLQUFLLE1BQU0sZUFBZSxJQUFJLFVBQVUsQ0FBQyxNQUFNLEVBQUU7WUFDN0MsTUFBTSxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxpQkFBaUIsQ0FBQyxlQUFlLEVBQUUsbUJBQW1CLENBQUMsQ0FBQyxDQUFDO1NBQ3pGO1FBQ0QsNENBQTRDO1FBQzVDLE1BQU0sWUFBWSxHQUFzQjtZQUNwQyxtQkFBbUIsRUFBRSx1QkFBdUI7WUFDNUMsVUFBVSxFQUFFLE1BQU07U0FDckIsQ0FBQztRQUVGLGdCQUFnQixDQUFDLDJCQUEyQixDQUFDLFlBQVksRUFBRSxVQUFVLENBQUMsV0FBVyxDQUFDLENBQUM7UUFFbkYsT0FBTyxDQUFDLFlBQVksQ0FBQyxDQUFDO0lBQzFCLENBQUM7SUFFTSxNQUFNLENBQUMsaUJBQWlCLENBQUMsVUFBc0MsRUFBRSxtQkFBa0Q7UUFDdEgsTUFBTSxLQUFLLEdBQXlCO1lBQ2hDLEdBQUcsRUFBRSxVQUFVLENBQUMsUUFBUTtZQUN4QixZQUFZLEVBQUU7Z0JBQ1YsUUFBUSxFQUFFLFVBQVUsQ0FBQyxRQUFRO2FBQ2hDO1lBQ0QsS0FBSyxFQUFFO2dCQUNILE1BQU0sRUFBRSxHQUFHLEVBQUUsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQztnQkFDeEUsU0FBUyxFQUFFLEdBQUcsRUFBRSxDQUFDLENBQUMsVUFBVSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsVUFBVSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDO2dCQUNqRixnQkFBZ0IsRUFBRSxHQUFHLEVBQUUsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDLENBQUMsVUFBVSxDQUFDLGdCQUFnQixDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUM7Z0JBQ3RHLGFBQWEsRUFBRSxHQUFHLEVBQUUsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxhQUFhLENBQUMsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQztnQkFDN0YsU0FBUyxFQUFFLEdBQUcsRUFBRSxDQUFDLENBQUMsVUFBVSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsVUFBVSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDO2FBQ3BGO1lBQ0QsS0FBSyxFQUFFO2dCQUNILFVBQVU7Z0JBQ1YsbUJBQW1CO2dCQUNuQixhQUFhLEVBQUUsVUFBVSxDQUFDLGFBQWE7YUFDMUM7WUFDRCxXQUFXLEVBQUUsRUFBRTtTQUNsQixDQUFDO1FBRUYsSUFBSSxTQUFTLEdBQUcsVUFBVSxDQUFDLFNBQVMsQ0FBQztRQUNyQyxJQUFJLENBQUMsU0FBUyxFQUFFO1lBQ1osZ0RBQWdEO1lBQ2hELFNBQVMsR0FBRyxRQUFRLENBQUM7U0FDeEI7UUFDRCxLQUFLLENBQUMsU0FBUyxHQUFHLFNBQVMsQ0FBQztRQUU1QixJQUFJLFVBQVUsWUFBWSxvQkFBb0IsRUFBRTtZQUM1QyxRQUFRLFVBQVUsQ0FBQyxTQUFTLEVBQUU7Z0JBQzFCLEtBQUssa0JBQWtCLENBQUMsTUFBTTtvQkFDMUIsTUFBTTtnQkFDVixLQUFLLGtCQUFrQixDQUFDLEtBQUs7b0JBQ3pCLEtBQUssQ0FBQyxJQUFJLEdBQUcsT0FBTyxDQUFDO29CQUNyQixPQUFPLEtBQUssQ0FBQyxHQUFHLENBQUM7b0JBQ2pCLE1BQU07Z0JBQ1YsS0FBSyxrQkFBa0IsQ0FBQyxRQUFRO29CQUM1QixLQUFLLENBQUMsSUFBSSxHQUFHLFVBQVUsQ0FBQztvQkFDeEIsS0FBSyxDQUFDLEtBQUssQ0FBQyxTQUFTLEdBQUcsVUFBVSxDQUFDLFNBQVMsQ0FBQztvQkFDN0MsS0FBSyxDQUFDLEtBQUssQ0FBQyxTQUFTLEdBQUcsVUFBVSxDQUFDLFNBQVMsQ0FBQztvQkFDN0MsS0FBSyxDQUFDLEtBQUssQ0FBQyxPQUFPLEdBQUcsVUFBVSxDQUFDLE9BQU8sQ0FBQztvQkFDekMsTUFBTTtnQkFDVixLQUFLLGtCQUFrQixDQUFDLE1BQU07b0JBQzFCLEtBQUssQ0FBQyxJQUFJLEdBQUcsUUFBUSxDQUFDO29CQUN0QixLQUFLLENBQUMsS0FBSyxDQUFDLEdBQUcsR0FBRyxVQUFVLENBQUMsU0FBUyxDQUFDO29CQUN2QyxLQUFLLENBQUMsS0FBSyxDQUFDLEdBQUcsR0FBRyxVQUFVLENBQUMsU0FBUyxDQUFDO29CQUN2QyxNQUFNO2dCQUNWLEtBQUssa0JBQWtCLENBQUMsUUFBUTtvQkFDNUIsS0FBSyxDQUFDLElBQUksR0FBRyxVQUFVLENBQUM7b0JBQ3hCLEtBQUssQ0FBQyxLQUFLLENBQUMsR0FBRyxHQUFHLFVBQVUsQ0FBQyxTQUFTLENBQUM7b0JBQ3ZDLEtBQUssQ0FBQyxLQUFLLENBQUMsR0FBRyxHQUFHLFVBQVUsQ0FBQyxTQUFTLENBQUM7b0JBQ3ZDLE1BQU07Z0JBQ1YsS0FBSyxrQkFBa0IsQ0FBQyxNQUFNO29CQUMxQixLQUFLLENBQUMsSUFBSSxHQUFHLFFBQVEsQ0FBQztvQkFDdEIsS0FBSyxDQUFDLFlBQVksR0FBRyxLQUFLLENBQUM7b0JBQzNCLE1BQU07Z0JBQ1YsS0FBSyxrQkFBa0IsQ0FBQyxLQUFLO29CQUN6QixLQUFLLENBQUMsSUFBSSxHQUFHLE9BQU8sQ0FBQztvQkFDckIsTUFBTTtnQkFDVixLQUFLLGtCQUFrQixDQUFDLFVBQVU7b0JBQzlCLEtBQUssQ0FBQyxJQUFJLEdBQUcsWUFBWSxDQUFDO29CQUMxQixNQUFNO2dCQUNWLEtBQUssa0JBQWtCLENBQUMsSUFBSTtvQkFDeEIsS0FBSyxDQUFDLElBQUksR0FBRyxNQUFNLENBQUM7b0JBQ3BCLE1BQU07Z0JBQ1YsS0FBSyxrQkFBa0IsQ0FBQyxJQUFJLENBQUM7Z0JBQzdCLEtBQUssa0JBQWtCLENBQUMsU0FBUztvQkFDN0IsS0FBSyxDQUFDLElBQUksR0FBRyxNQUFNLENBQUM7b0JBQ3BCLE1BQU07Z0JBQ1YsS0FBSyxrQkFBa0IsQ0FBQyxRQUFRO29CQUM1QixLQUFLLENBQUMsSUFBSSxHQUFHLFVBQVUsQ0FBQztvQkFDeEIsTUFBTTtnQkFDVixLQUFLLGtCQUFrQixDQUFDLE1BQU07b0JBQzFCLElBQUksVUFBVSxDQUFDLG1CQUFtQixFQUFFO3dCQUNoQyxLQUFLLENBQUMsSUFBSSxHQUFHLFFBQVEsQ0FBQzt3QkFDdEIsS0FBSyxDQUFDLEtBQUssQ0FBQyxxQkFBcUIsQ0FBQyxHQUFHLFVBQVUsQ0FBQyxtQkFBbUIsQ0FBQzt3QkFDcEUsSUFBSSxLQUFLLENBQUMsT0FBTyxDQUFDLFVBQVUsQ0FBQyx1QkFBdUIsQ0FBQyxFQUFFOzRCQUNuRCxLQUFLLENBQUMsUUFBUSxHQUFHLFVBQVUsQ0FBQyx1QkFBdUIsQ0FBQzt5QkFDdkQ7NkJBQU07NEJBQ0gsa0JBQWtCOzRCQUNsQixLQUFLLENBQUMsUUFBUSxHQUFHLENBQUMsT0FBTyxDQUFDLENBQUM7eUJBQzlCO3FCQUNKO29CQUNELE1BQU07Z0JBQ1Y7b0JBQ0ksS0FBSyxDQUFDLElBQUksR0FBRyxPQUFPLENBQUM7b0JBQ3JCLEtBQUssQ0FBQyxLQUFLLENBQUMsU0FBUyxHQUFHLFVBQVUsQ0FBQyxTQUFTLENBQUM7b0JBQzdDLEtBQUssQ0FBQyxLQUFLLENBQUMsU0FBUyxHQUFHLFVBQVUsQ0FBQyxTQUFTLENBQUM7b0JBQzdDLEtBQUssQ0FBQyxLQUFLLENBQUMsT0FBTyxHQUFHLFVBQVUsQ0FBQyxPQUFPLENBQUM7b0JBQ3pDLE1BQU07YUFDYjtTQUNKO2FBQU0sSUFBSSxVQUFVLFlBQVkscUJBQXFCLEVBQUU7WUFDcEQsS0FBSyxDQUFDLElBQUksR0FBRyxRQUFRLENBQUM7WUFDdEIsS0FBSyxDQUFDLFFBQVEsR0FBRyxVQUFVLENBQUMsUUFBUSxDQUFDO1lBQ3JDLE9BQU8sS0FBSyxDQUFDLEdBQUcsQ0FBQztTQUNwQjthQUFNLElBQUksVUFBVSxZQUFZLHlCQUF5QixFQUFFO1lBQ3hELFFBQVEsVUFBVSxDQUFDLFVBQVUsRUFBRTtnQkFDM0IsS0FBSyxtQkFBbUIsQ0FBQyxNQUFNO29CQUMzQixLQUFLLENBQUMsSUFBSSxHQUFHLFVBQVUsQ0FBQyxtQkFBbUIsQ0FBQztvQkFDNUMsTUFBTTtnQkFDVjtvQkFDSSxLQUFLLENBQUMsSUFBSSxHQUFHLE1BQU0sQ0FBQztvQkFDcEIsTUFBTTthQUNiO1NBQ0o7YUFBTSxJQUFJLFVBQVUsWUFBWSxxQkFBcUIsRUFBRTtZQUNwRCxRQUFRLFVBQVUsQ0FBQyxVQUFVLEVBQUU7Z0JBQzNCLEtBQUssbUJBQW1CLENBQUMsWUFBWTtvQkFDakMsS0FBSyxDQUFDLElBQUksR0FBRyxjQUFjLENBQUM7b0JBQzVCLE1BQU07Z0JBQ1YsS0FBSyxtQkFBbUIsQ0FBQyxNQUFNO29CQUMzQixLQUFLLENBQUMsSUFBSSxHQUFHLFFBQVEsQ0FBQztvQkFDdEIsTUFBTTtnQkFDVixLQUFLLG1CQUFtQixDQUFDLE1BQU07b0JBQzNCLEtBQUssQ0FBQyxJQUFJLEdBQUcsVUFBVSxDQUFDLG1CQUFtQixDQUFDO29CQUM1QyxNQUFNO2dCQUNWLEtBQUssbUJBQW1CLENBQUMsUUFBUSxDQUFDO2dCQUNsQztvQkFDSSxLQUFLLENBQUMsSUFBSSxHQUFHLFVBQVUsQ0FBQztvQkFDeEIsTUFBTTthQUNiO1NBQ0o7YUFBTSxJQUFJLFVBQVUsWUFBWSwrQkFBK0IsRUFBRTtZQUM5RCxLQUFLLENBQUMsSUFBSSxHQUFHLDBCQUEwQixDQUFDO1NBQzNDO2FBQU0sSUFBSSxVQUFVLFlBQVkseUJBQXlCLEVBQUU7WUFDeEQsS0FBSyxDQUFDLElBQUksR0FBRyxtQkFBbUIsQ0FBQztTQUNwQztRQUVELElBQUksVUFBVSxDQUFDLEtBQUssRUFBRTtZQUNsQixLQUFLLENBQUMsS0FBSyxDQUFDLEtBQUssR0FBRyxVQUFVLENBQUMsS0FBSyxDQUFDO1NBQ3hDO1FBRUQsSUFBSSxVQUFVLENBQUMsa0JBQWtCLEVBQUU7WUFDL0IsS0FBSyxDQUFDLFdBQVksQ0FBQyxnQkFBZ0IsQ0FBQyxHQUFHLFVBQVUsQ0FBQyxrQkFBa0IsQ0FBQztTQUN4RTtRQUNELElBQUksVUFBVSxDQUFDLFFBQVEsRUFBRTtZQUNyQixLQUFLLENBQUMsS0FBTSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUM7WUFDN0IsSUFBSSxVQUFVLENBQUMsdUJBQXVCLEVBQUU7Z0JBQ3BDLEtBQUssQ0FBQyxLQUFNLENBQUMsb0JBQW9CLENBQUMsR0FBRyxJQUFJLENBQUM7YUFDN0M7U0FDSjtRQUVELElBQUksVUFBVSxDQUFDLGdCQUFnQixFQUFFO1lBQzdCLEtBQUssQ0FBQyxXQUFZLENBQUMsTUFBTSxDQUFDLEdBQUcsVUFBVSxDQUFDLGdCQUFnQixDQUFDO1NBQzVEO1FBRUQsSUFBSSxVQUFVLENBQUMsa0JBQWtCLEVBQUU7WUFDL0IsS0FBSyxDQUFDLFdBQVksQ0FBQyxnQkFBZ0IsQ0FBQyxHQUFHLFVBQVUsQ0FBQyxrQkFBa0IsQ0FBQztTQUN4RTthQUFNLElBQUksVUFBVSxDQUFDLFFBQVEsRUFBRTtZQUM1QixLQUFLLENBQUMsS0FBSyxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUM7U0FDL0I7YUFBTTtZQUNILEtBQUssQ0FBQyxXQUFZLENBQUMsZ0JBQWdCLENBQUMsR0FBRyxvQkFBb0IsQ0FBQztTQUMvRDtRQUVELElBQUksT0FBTyxVQUFVLENBQUMsWUFBWSxLQUFLLFdBQVcsRUFBRTtZQUNoRCxLQUFLLENBQUMsWUFBWSxHQUFHLFVBQVUsQ0FBQyxZQUFZLENBQUM7U0FDaEQ7UUFFRCxnQkFBZ0IsQ0FBQywyQkFBMkIsQ0FBQyxLQUFLLEVBQUUsVUFBVSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBQzVFLGdCQUFnQixDQUFDLGdDQUFnQyxDQUFDLEtBQUssRUFBRSxVQUFVLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztRQUV0RixPQUFPLEtBQUssQ0FBQztJQUNqQixDQUFDO0lBRU0sTUFBTSxDQUFDLDJCQUEyQixDQUFDLE1BQXlCLEVBQUUsV0FBNkM7UUFDOUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxVQUFVLEVBQUU7WUFDcEIsTUFBTSxDQUFDLFVBQVUsR0FBRyxFQUFFLENBQUM7U0FDMUI7UUFFRCxLQUFLLE1BQU0sVUFBVSxJQUFJLFdBQVcsRUFBRTtZQUNsQyxJQUFJLE9BQU8sVUFBVSxDQUFDLFNBQVMsS0FBSyxVQUFVLEVBQUU7Z0JBQzVDLE1BQU0sQ0FBQyxVQUFVLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxHQUFHO29CQUNqQyxVQUFVLEVBQUUsQ0FDUixPQUF3QixFQUN4QixLQUF3QixFQUN4QixPQUVDLEVBQ0gsRUFBRTt3QkFDQSxNQUFNLFlBQVksR0FBRyxVQUFVLENBQUMsU0FBVSxDQUFDLE9BQU8sRUFBRSxLQUFLLEVBQUUsT0FBTyxDQUFDLENBQUM7d0JBQ3BFLDBEQUEwRDt3QkFDMUQsc0RBQXNEO3dCQUN0RCxPQUFPLE9BQU8sWUFBWSxLQUFLLFNBQVMsQ0FBQyxDQUFDLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQyxZQUFZLEtBQUssSUFBSSxDQUFDO29CQUNwRixDQUFDO2lCQUNKLENBQUM7Z0JBQ0YsSUFBSSxPQUFPLFVBQVUsQ0FBQyxPQUFPLEtBQUssVUFBVSxFQUFFO29CQUMxQyxNQUFNLENBQUMsVUFBVSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxPQUFPLEdBQUcsVUFBVSxDQUFDLE9BQU8sQ0FBQztpQkFDbkU7YUFDSjtpQkFBTTtnQkFDSCxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsVUFBVSxDQUFDLFVBQVUsQ0FBQyxFQUFFO29CQUM5QyxNQUFNLENBQUMsVUFBVSxDQUFDLFVBQVUsR0FBRyxFQUFFLENBQUM7aUJBQ3JDO2dCQUNELE1BQU0sQ0FBQyxVQUFVLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLENBQUM7YUFDdEQ7U0FDSjtJQUNMLENBQUM7SUFFTSxNQUFNLENBQUMsZ0NBQWdDLENBQUMsTUFBeUIsRUFBRSxnQkFBa0Q7UUFDeEgsSUFBSSxDQUFDLE1BQU0sQ0FBQyxlQUFlLEVBQUU7WUFDekIsTUFBTSxDQUFDLGVBQWUsR0FBRyxFQUFFLENBQUM7U0FDL0I7UUFFRCxLQUFLLE1BQU0sVUFBVSxJQUFJLGdCQUFnQixFQUFFO1lBQ3ZDLElBQUksT0FBTyxVQUFVLENBQUMsU0FBUyxLQUFLLFVBQVUsRUFBRTtnQkFDNUMsTUFBTSxDQUFDLGVBQWUsQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLEdBQUc7b0JBQ3RDLFVBQVUsRUFBRSxDQUNSLE9BQXdCLEVBQ3hCLEtBQXdCLEVBQ3hCLE9BRUMsRUFDSCxFQUFFO3dCQUNBLE1BQU0sU0FBUyxHQUEyQixVQUFVLENBQUMsU0FBUyxDQUFDO3dCQUUvRCxNQUFNLFlBQVksR0FBa0QsU0FBUyxDQUFDLE9BQU8sRUFBRSxLQUFLLEVBQUUsT0FBTyxDQUFDLENBQUM7d0JBQ3ZHLDBEQUEwRDt3QkFDMUQsc0RBQXNEO3dCQUN0RCxPQUFPLFlBQVksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLEtBQUssS0FBSyxTQUFTLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsS0FBSyxLQUFLLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQztvQkFDbEcsQ0FBQztpQkFDSixDQUFDO2dCQUNGLElBQUksT0FBTyxVQUFVLENBQUMsT0FBTyxLQUFLLFVBQVUsRUFBRTtvQkFDMUMsTUFBTSxDQUFDLGVBQWUsQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLENBQUMsT0FBTyxHQUFHLFVBQVUsQ0FBQyxPQUFPLENBQUM7aUJBQ3hFO2FBQ0o7aUJBQU07Z0JBQ0gsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLGVBQWUsQ0FBQyxVQUFVLENBQUMsRUFBRTtvQkFDbkQsTUFBTSxDQUFDLGVBQWUsQ0FBQyxVQUFVLEdBQUcsRUFBRSxDQUFDO2lCQUMxQztnQkFDRCxNQUFNLENBQUMsZUFBZSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxDQUFDO2FBQzNEO1NBQ0o7SUFDTCxDQUFDO0NBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0Fic3RyYWN0Q29udHJvbCwgVmFsaWRhdGlvbkVycm9yc30gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuXG5pbXBvcnQge0Zvcm1seUZpZWxkQ29uZmlnfSBmcm9tICdAbmd4LWZvcm1seS9jb3JlJztcbmltcG9ydCB7T2JzZXJ2YWJsZX0gZnJvbSAncnhqcyc7XG5pbXBvcnQge21hcH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5pbXBvcnQge01uZ0Zvcm1seUZpZWxkQ29uZmlnfSBmcm9tICcuLi9jb21wb25lbnRzL2Zvcm0vZm9ybWx5L21vZGVscyc7XG5pbXBvcnQge0lGb3JtRWRpdG9yQ29tcG9uZW50fSBmcm9tICcuLi9jb21wb25lbnRzL2Zvcm0vbW9kZWxzJztcbmltcG9ydCB7XG4gICAgQUZpZWxkRGVzY3JpcHRvcixcbiAgICBFZGl0b3JEZXNjcmlwdG9ySW5zdCxcbiAgICBGaWVsZEFjdGlvbkRlc2NyaXB0b3IsXG4gICAgRmllbGRHcm91cERlc2NyaXB0b3IsXG4gICAgRmllbGRJbnB1dERlc2NyaXB0b3IsXG4gICAgRmllbGRMb29rdXBEZXNjcmlwdG9yLFxuICAgIEZpZWxkTG9va3VwRW51bURlc2NyaXB0b3IsXG4gICAgRmllbGRNYW55RWRpdG9yRGVzY3JpcHRvcixcbiAgICBGaWVsZE1hbnlUb01hbnlFZGl0b3JEZXNjcmlwdG9yLFxuICAgIEZpZWxkVGFiR3JvdXBEZXNjcmlwdG9yLFxuICAgIEZpZWxkVmFsaWRhdGlvbkRlc2NyaXB0b3Jcbn0gZnJvbSAnLi4vZGVzY3JpcHRvcnMvZWRpdG9yJztcbmltcG9ydCB7VGFibGV2aWV3RGVzY3JpcHRvcn0gZnJvbSAnLi4vZGVzY3JpcHRvcnMvdGFibGV2aWV3JztcbmltcG9ydCB7RmllbGRJbnB1dFR5cGVFbnVtLCBGaWVsZExvb2t1cFR5cGVFbnVtLCBUYWJsZXZpZXdFZGl0b3JUeXBlRW51bX0gZnJvbSAnLi4vZGVzY3JpcHRvcnMvdHlwZXMnO1xuaW1wb3J0IHtNbmdJbnRlcm5hbEVycm9yfSBmcm9tICcuLi9tb2RlbHMnO1xuaW1wb3J0IHtNbmdDb21tb25zU2VydmljZX0gZnJvbSAnLi4vc2VydmljZXMnO1xuaW1wb3J0IHtNbmdGaWVsZEFzeW5jVmFsaWRhdG9yfSBmcm9tICcuLi90eXBlcyc7XG5cbmV4cG9ydCBjbGFzcyBFZGl0b3JGb3JtbHlVdGlsIHtcbiAgICBwdWJsaWMgc3RhdGljIGNyZWF0ZUZvcm1seUNvbmZpZ0Zyb21EZXNjcmlwdG9yKGRlc2NyaXB0b3I6IEVkaXRvckRlc2NyaXB0b3JJbnN0PGFueT4sIGZvcm1FZGl0b3JDb21wb25lbnQ6IElGb3JtRWRpdG9yQ29tcG9uZW50PHVua25vd24+KTogRm9ybWx5RmllbGRDb25maWdbXSB7XG4gICAgICAgIGNvbnN0IGZpZWxkczogRm9ybWx5RmllbGRDb25maWdbXSA9IFtdO1xuXG4gICAgICAgIGlmIChkZXNjcmlwdG9yLmlzTG9jYWxpemVkKSB7XG4gICAgICAgICAgICBkZXNjcmlwdG9yID0gRWRpdG9yRm9ybWx5VXRpbC5jcmVhdGVMb2NhbGl6YXRpb25zVGFiKGRlc2NyaXB0b3IpO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKCFkZXNjcmlwdG9yLmlzTG9jYWxpemVkICYmIGRlc2NyaXB0b3IudGFicy5sZW5ndGggPT09IDEgJiYgZGVzY3JpcHRvci50YWJzWzBdLmRlZmF1bHQpIHtcbiAgICAgICAgICAgIC8vIGRvbnQgdXNlIHRhYnNcbiAgICAgICAgICAgIGZpZWxkcy5wdXNoKC4uLkVkaXRvckZvcm1seVV0aWwuY3JlYXRlRm9ybWx5R3JvdXBUeXBlKGRlc2NyaXB0b3IudGFic1swXS5maWVsZHMsIGZvcm1FZGl0b3JDb21wb25lbnQpKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIGZpZWxkcy5wdXNoKC4uLkVkaXRvckZvcm1seVV0aWwuY3JlYXRlRm9ybWx5VGFiVHlwZShkZXNjcmlwdG9yLnRhYnMsIGZvcm1FZGl0b3JDb21wb25lbnQpKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBmaWVsZHM7XG4gICAgfVxuICAgIHB1YmxpYyBzdGF0aWMgY3JlYXRlTG9jYWxpemF0aW9uc1RhYihkZXNjcmlwdG9yOiBFZGl0b3JEZXNjcmlwdG9ySW5zdDxhbnk+KSB7XG4gICAgICAgIGlmIChkZXNjcmlwdG9yLmlzTG9jYWxpemVkICYmIGRlc2NyaXB0b3IudGFibGV2aWV3RWRpdG9yVHlwZSAhPT0gVGFibGV2aWV3RWRpdG9yVHlwZUVudW0uRGV0YWlscykge1xuICAgICAgICAgICAgaWYgKCFkZXNjcmlwdG9yLmxvY2FsaXphdGlvbk1vZGVsKSB7XG4gICAgICAgICAgICAgICAgdGhyb3cgbmV3IE1uZ0ludGVybmFsRXJyb3IoJ0xvY2FsaXphdGlvbiBtb2RlbCBtdXN0IGJlIGRlZmluZWQuJyk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBjb25zdCBsb2NhbGl6YXRpb25zVGFibGVWaWV3RGVzY3JpcHRvciA9IFRhYmxldmlld0Rlc2NyaXB0b3IuZnJvbU1vZGVsKGRlc2NyaXB0b3IubG9jYWxpemF0aW9uTW9kZWwpO1xuICAgICAgICAgICAgaWYgKCFkZXNjcmlwdG9yLmxvY2FsaXphdGlvbkxvY2FsZVByb3BlcnR5KSB7XG4gICAgICAgICAgICAgICAgdGhyb3cgbmV3IE1uZ0ludGVybmFsRXJyb3IoJ0xvY2FsaXphdGlvbiBsb2NhbGUgcHJvcGVydHkgbXVzdCBiZSBkZWZpbmVkLicpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgbG9jYWxpemF0aW9uc1RhYmxlVmlld0Rlc2NyaXB0b3IuYWRkQ29sdW1uKGRlc2NyaXB0b3IubG9jYWxpemF0aW9uTG9jYWxlUHJvcGVydHkpO1xuICAgICAgICAgICAgbG9jYWxpemF0aW9uc1RhYmxlVmlld0Rlc2NyaXB0b3IuZWRpdEVkaXRvci5hZGRGaWVsZChkZXNjcmlwdG9yLmxvY2FsaXphdGlvbkxvY2FsZVByb3BlcnR5KS53aXRoRGlzYWJsZWQodHJ1ZSk7XG4gICAgICAgICAgICBsb2NhbGl6YXRpb25zVGFibGVWaWV3RGVzY3JpcHRvci5kZXRhaWxzRWRpdG9yLmFkZEZpZWxkKGRlc2NyaXB0b3IubG9jYWxpemF0aW9uTG9jYWxlUHJvcGVydHkpLndpdGhEaXNhYmxlZCh0cnVlKTtcbiAgICAgICAgICAgIGxvY2FsaXphdGlvbnNUYWJsZVZpZXdEZXNjcmlwdG9yLmFkZEVkaXRvclxuICAgICAgICAgICAgICAgIC5hZGRGaWVsZExvb2t1cFdpdGhQcm92aWRlcjxNbmdDb21tb25zU2VydmljZSwgc3RyaW5nPihkZXNjcmlwdG9yLmxvY2FsaXphdGlvbkxvY2FsZVByb3BlcnR5LCBNbmdDb21tb25zU2VydmljZSlcbiAgICAgICAgICAgICAgICAud2l0aExvb2t1cCgocXAsIHNlcnZpY2UpID0+IHNlcnZpY2UuYXBwRGF0YUxhbmd1YWdlcylcbiAgICAgICAgICAgICAgICAud2l0aERpc2FibGVkKGZhbHNlKVxuICAgICAgICAgICAgICAgIC53aXRoUmVxdWlyZWQoKTtcbiAgICAgICAgICAgIGRlc2NyaXB0b3IuZmllbGRzLmZvckVhY2goZmllbGQgPT4ge1xuICAgICAgICAgICAgICAgIGlmIChmaWVsZC5pc0xvY2FsaXplZCkge1xuICAgICAgICAgICAgICAgICAgICBsb2NhbGl6YXRpb25zVGFibGVWaWV3RGVzY3JpcHRvci5hZGRDb2x1bW4oZmllbGQucHJvcGVydHkpO1xuICAgICAgICAgICAgICAgICAgICBsb2NhbGl6YXRpb25zVGFibGVWaWV3RGVzY3JpcHRvci5hZGRGaWVsZChmaWVsZC5wcm9wZXJ0eSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICBjb25zdCBkZXNjcmlwdG9yV2l0aExvY2FsaXphdGlvbnMgPSBkZXNjcmlwdG9yLmNvcHkoKTtcbiAgICAgICAgICAgIGRlc2NyaXB0b3JXaXRoTG9jYWxpemF0aW9ucy5jcmVhdGVUYWJHcm91cCgnbG9jYWxpemF0aW9ucycpO1xuICAgICAgICAgICAgaWYgKCFkZXNjcmlwdG9yLmxvY2FsaXphdGlvbkxvY2FsaXphdGlvblByb3BlcnR5KSB7XG4gICAgICAgICAgICAgICAgdGhyb3cgbmV3IE1uZ0ludGVybmFsRXJyb3IoJ0xvY2FsaXphdGlvbiBsb2NhbGl6YXRpb24gcHJvcGVydHkgbXVzdCBiZSBkZWZpbmVkJyk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBkZXNjcmlwdG9yV2l0aExvY2FsaXphdGlvbnMuYWRkRmllbGRNYW55RWRpdG9yKGRlc2NyaXB0b3IubG9jYWxpemF0aW9uTG9jYWxpemF0aW9uUHJvcGVydHksIGxvY2FsaXphdGlvbnNUYWJsZVZpZXdEZXNjcmlwdG9yKTtcblxuICAgICAgICAgICAgcmV0dXJuIGRlc2NyaXB0b3JXaXRoTG9jYWxpemF0aW9ucztcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gZGVzY3JpcHRvcjtcbiAgICB9XG4gICAgcHVibGljIHN0YXRpYyBjcmVhdGVGb3JtbHlUYWJUeXBlKHRhYkdyb3VwczogRmllbGRUYWJHcm91cERlc2NyaXB0b3I8YW55PltdLCBmb3JtRWRpdG9yQ29tcG9uZW50OiBJRm9ybUVkaXRvckNvbXBvbmVudDx1bmtub3duPik6IEZvcm1seUZpZWxkQ29uZmlnW10ge1xuICAgICAgICBjb25zdCB0YWJzRmllbGQ6IEZvcm1seUZpZWxkQ29uZmlnID0ge1xuICAgICAgICAgICAgdHlwZTogJ3RhYnMnLFxuICAgICAgICAgICAgZmllbGRHcm91cDogW10sXG4gICAgICAgICAgICBwcm9wczoge1xuICAgICAgICAgICAgICAgIGZvcm1FZGl0b3JDb21wb25lbnRcbiAgICAgICAgICAgIH1cbiAgICAgICAgfTtcbiAgICAgICAgZm9yIChjb25zdCB0YWIgb2YgdGFiR3JvdXBzKSB7XG4gICAgICAgICAgICBjb25zdCB0YWJGaWVsZDogTW5nRm9ybWx5RmllbGRDb25maWcgPSB7XG4gICAgICAgICAgICAgICAgaWQ6IHRhYi5uYW1lLFxuICAgICAgICAgICAgICAgIHByb3BzOiB7XG4gICAgICAgICAgICAgICAgICAgIGZvcm1FZGl0b3JDb21wb25lbnRcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIGV4cHJlc3Npb25zOiB7fSxcbiAgICAgICAgICAgICAgICBmaWVsZEdyb3VwOiBbXVxuICAgICAgICAgICAgfTtcbiAgICAgICAgICAgIGlmICh0YWIudGl0bGUpIHtcbiAgICAgICAgICAgICAgICB0YWJGaWVsZC5wcm9wcy5sYWJlbCA9IHRhYi50aXRsZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHRhYkZpZWxkLmZpZWxkR3JvdXAhLnB1c2goLi4uRWRpdG9yRm9ybWx5VXRpbC5jcmVhdGVGb3JtbHlHcm91cFR5cGUodGFiLmZpZWxkcywgZm9ybUVkaXRvckNvbXBvbmVudCkpO1xuICAgICAgICAgICAgdGFic0ZpZWxkLmZpZWxkR3JvdXAhLnB1c2godGFiRmllbGQpO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBbdGFic0ZpZWxkXTtcbiAgICB9XG5cbiAgICBwdWJsaWMgc3RhdGljIGNyZWF0ZUZvcm1seUdyb3VwVHlwZShncm91cHM6IEZpZWxkR3JvdXBEZXNjcmlwdG9yPGFueT5bXSwgZm9ybUVkaXRvckNvbXBvbmVudDogSUZvcm1FZGl0b3JDb21wb25lbnQ8dW5rbm93bj4pOiBGb3JtbHlGaWVsZENvbmZpZ1tdIHtcbiAgICAgICAgaWYgKGdyb3Vwcy5sZW5ndGggPT09IDEgJiYgZ3JvdXBzWzBdLmRlZmF1bHQpIHtcbiAgICAgICAgICAgIC8vIGRvbnQgdXNlIGZpZWxkc2V0LCBqdXN0IGNyZWF0ZSBmaWVsZHNcbiAgICAgICAgICAgIHJldHVybiBFZGl0b3JGb3JtbHlVdGlsLmNyZWF0ZUZvcm1seUZpZWxkcyhncm91cHNbMF0sIGZvcm1FZGl0b3JDb21wb25lbnQpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgY29uc3QgZ3JvdXBzRmllbGQ6IE1uZ0Zvcm1seUZpZWxkQ29uZmlnID0ge1xuICAgICAgICAgICAgICAgIHR5cGU6ICdmaWVsZHNldCcsXG4gICAgICAgICAgICAgICAgZmllbGRHcm91cDogW10sXG4gICAgICAgICAgICAgICAgcHJvcHM6IHtcbiAgICAgICAgICAgICAgICAgICAgZm9ybUVkaXRvckNvbXBvbmVudFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgZXhwcmVzc2lvbnM6IHt9XG4gICAgICAgICAgICB9O1xuICAgICAgICAgICAgZm9yIChjb25zdCBncm91cCBvZiBncm91cHMpIHtcbiAgICAgICAgICAgICAgICBjb25zdCBncm91cEZpZWxkOiBNbmdGb3JtbHlGaWVsZENvbmZpZyA9IHtcbiAgICAgICAgICAgICAgICAgICAgaWQ6IGdyb3VwLm5hbWUsXG4gICAgICAgICAgICAgICAgICAgIHByb3BzOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBkZXNjcmlwdG9yOiBncm91cFxuICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICBleHByZXNzaW9uczoge30sXG4gICAgICAgICAgICAgICAgICAgIGZpZWxkR3JvdXA6IFtdXG4gICAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgICAgICBpZiAoZ3JvdXAudGl0bGUpIHtcbiAgICAgICAgICAgICAgICAgICAgZ3JvdXBGaWVsZC5wcm9wcy5sYWJlbCA9IGdyb3VwLnRpdGxlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBncm91cEZpZWxkLmZpZWxkR3JvdXAhLnB1c2goLi4uRWRpdG9yRm9ybWx5VXRpbC5jcmVhdGVGb3JtbHlGaWVsZHMoZ3JvdXAsIGZvcm1FZGl0b3JDb21wb25lbnQpKTtcbiAgICAgICAgICAgICAgICBncm91cHNGaWVsZC5maWVsZEdyb3VwIS5wdXNoKGdyb3VwRmllbGQpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcmV0dXJuIFtncm91cHNGaWVsZF07XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwdWJsaWMgc3RhdGljIGNyZWF0ZUZvcm1seUZpZWxkcyhkZXNjcmlwdG9yOiBGaWVsZEdyb3VwRGVzY3JpcHRvcjxhbnk+LCBmb3JtRWRpdG9yQ29tcG9uZW50OiBJRm9ybUVkaXRvckNvbXBvbmVudDx1bmtub3duPik6IEZvcm1seUZpZWxkQ29uZmlnW10ge1xuICAgICAgICBjb25zdCBmaWVsZHM6IEZvcm1seUZpZWxkQ29uZmlnW10gPSBbXTtcbiAgICAgICAgZm9yIChjb25zdCBkZXNjcmlwdG9yRmllbGQgb2YgZGVzY3JpcHRvci5maWVsZHMpIHtcbiAgICAgICAgICAgIGZpZWxkcy5wdXNoKEVkaXRvckZvcm1seVV0aWwuY3JlYXRlRm9ybWx5RmllbGQoZGVzY3JpcHRvckZpZWxkLCBmb3JtRWRpdG9yQ29tcG9uZW50KSk7XG4gICAgICAgIH1cbiAgICAgICAgLy8gd3JhcCBpbiBncm91cCB0byBiZSBhYmxlIHRvIHVzZSBmbGV4IGdyaWRcbiAgICAgICAgY29uc3Qgd3JhcHBlckdyb3VwOiBGb3JtbHlGaWVsZENvbmZpZyA9IHtcbiAgICAgICAgICAgIGZpZWxkR3JvdXBDbGFzc05hbWU6ICdwLWZsdWlkIGZvcm1ncmlkIGdyaWQnLFxuICAgICAgICAgICAgZmllbGRHcm91cDogZmllbGRzXG4gICAgICAgIH07XG5cbiAgICAgICAgRWRpdG9yRm9ybWx5VXRpbC5hZGRWYWxpZGF0aW9uc1RvRm9ybWx5RmllbGQod3JhcHBlckdyb3VwLCBkZXNjcmlwdG9yLnZhbGlkYXRpb25zKTtcblxuICAgICAgICByZXR1cm4gW3dyYXBwZXJHcm91cF07XG4gICAgfVxuXG4gICAgcHVibGljIHN0YXRpYyBjcmVhdGVGb3JtbHlGaWVsZChkZXNjcmlwdG9yOiBBRmllbGREZXNjcmlwdG9yPGFueSwgYW55PiwgZm9ybUVkaXRvckNvbXBvbmVudDogSUZvcm1FZGl0b3JDb21wb25lbnQ8dW5rbm93bj4pOiBGb3JtbHlGaWVsZENvbmZpZyB7XG4gICAgICAgIGNvbnN0IGZpZWxkOiBNbmdGb3JtbHlGaWVsZENvbmZpZyA9IHtcbiAgICAgICAgICAgIGtleTogZGVzY3JpcHRvci5wcm9wZXJ0eSxcbiAgICAgICAgICAgIG1vZGVsT3B0aW9uczoge1xuICAgICAgICAgICAgICAgIHVwZGF0ZU9uOiBkZXNjcmlwdG9yLnVwZGF0ZU9uXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgaG9va3M6IHtcbiAgICAgICAgICAgICAgICBvbkluaXQ6ICgpID0+IChkZXNjcmlwdG9yLm9uSW5pdCA/IGRlc2NyaXB0b3Iub25Jbml0KGZpZWxkKSA6IHVuZGVmaW5lZCksXG4gICAgICAgICAgICAgICAgb25DaGFuZ2VzOiAoKSA9PiAoZGVzY3JpcHRvci5vbkNoYW5nZXMgPyBkZXNjcmlwdG9yLm9uQ2hhbmdlcyhmaWVsZCkgOiB1bmRlZmluZWQpLFxuICAgICAgICAgICAgICAgIGFmdGVyQ29udGVudEluaXQ6ICgpID0+IChkZXNjcmlwdG9yLmFmdGVyQ29udGVudEluaXQgPyBkZXNjcmlwdG9yLmFmdGVyQ29udGVudEluaXQoZmllbGQpIDogdW5kZWZpbmVkKSxcbiAgICAgICAgICAgICAgICBhZnRlclZpZXdJbml0OiAoKSA9PiAoZGVzY3JpcHRvci5hZnRlclZpZXdJbml0ID8gZGVzY3JpcHRvci5hZnRlclZpZXdJbml0KGZpZWxkKSA6IHVuZGVmaW5lZCksXG4gICAgICAgICAgICAgICAgb25EZXN0cm95OiAoKSA9PiAoZGVzY3JpcHRvci5vbkRlc3Ryb3kgPyBkZXNjcmlwdG9yLm9uRGVzdHJveShmaWVsZCkgOiB1bmRlZmluZWQpXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgcHJvcHM6IHtcbiAgICAgICAgICAgICAgICBkZXNjcmlwdG9yLFxuICAgICAgICAgICAgICAgIGZvcm1FZGl0b3JDb21wb25lbnQsXG4gICAgICAgICAgICAgICAgb25WYWx1ZUNoYW5nZTogZGVzY3JpcHRvci5vblZhbHVlQ2hhbmdlXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgZXhwcmVzc2lvbnM6IHt9XG4gICAgICAgIH07XG5cbiAgICAgICAgbGV0IGNsYXNzTmFtZSA9IGRlc2NyaXB0b3IuY2xhc3NOYW1lO1xuICAgICAgICBpZiAoIWNsYXNzTmFtZSkge1xuICAgICAgICAgICAgLy8gYXNzaWduIGRlZmF1bHQgZmllbGQgd2lkdGggdGhyb3VnaCBlbnRpcmUgcm93XG4gICAgICAgICAgICBjbGFzc05hbWUgPSAnY29sLTEyJztcbiAgICAgICAgfVxuICAgICAgICBmaWVsZC5jbGFzc05hbWUgPSBjbGFzc05hbWU7XG5cbiAgICAgICAgaWYgKGRlc2NyaXB0b3IgaW5zdGFuY2VvZiBGaWVsZElucHV0RGVzY3JpcHRvcikge1xuICAgICAgICAgICAgc3dpdGNoIChkZXNjcmlwdG9yLmZpZWxkVHlwZSkge1xuICAgICAgICAgICAgICAgIGNhc2UgRmllbGRJbnB1dFR5cGVFbnVtLkhpZGRlbjpcbiAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgICAgY2FzZSBGaWVsZElucHV0VHlwZUVudW0uTGFiZWw6XG4gICAgICAgICAgICAgICAgICAgIGZpZWxkLnR5cGUgPSAnbGFiZWwnO1xuICAgICAgICAgICAgICAgICAgICBkZWxldGUgZmllbGQua2V5O1xuICAgICAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgICAgICBjYXNlIEZpZWxkSW5wdXRUeXBlRW51bS5UZXh0YXJlYTpcbiAgICAgICAgICAgICAgICAgICAgZmllbGQudHlwZSA9ICd0ZXh0YXJlYSc7XG4gICAgICAgICAgICAgICAgICAgIGZpZWxkLnByb3BzLm1heExlbmd0aCA9IGRlc2NyaXB0b3IubWF4TGVuZ3RoO1xuICAgICAgICAgICAgICAgICAgICBmaWVsZC5wcm9wcy5taW5MZW5ndGggPSBkZXNjcmlwdG9yLm1pbkxlbmd0aDtcbiAgICAgICAgICAgICAgICAgICAgZmllbGQucHJvcHMucGF0dGVybiA9IGRlc2NyaXB0b3IucGF0dGVybjtcbiAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgICAgY2FzZSBGaWVsZElucHV0VHlwZUVudW0uTnVtYmVyOlxuICAgICAgICAgICAgICAgICAgICBmaWVsZC50eXBlID0gJ251bWJlcic7XG4gICAgICAgICAgICAgICAgICAgIGZpZWxkLnByb3BzLm1pbiA9IGRlc2NyaXB0b3IubnVtYmVyTWluO1xuICAgICAgICAgICAgICAgICAgICBmaWVsZC5wcm9wcy5tYXggPSBkZXNjcmlwdG9yLm51bWJlck1heDtcbiAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgICAgY2FzZSBGaWVsZElucHV0VHlwZUVudW0uQ3VycmVuY3k6XG4gICAgICAgICAgICAgICAgICAgIGZpZWxkLnR5cGUgPSAnY3VycmVuY3knO1xuICAgICAgICAgICAgICAgICAgICBmaWVsZC5wcm9wcy5taW4gPSBkZXNjcmlwdG9yLm51bWJlck1pbjtcbiAgICAgICAgICAgICAgICAgICAgZmllbGQucHJvcHMubWF4ID0gZGVzY3JpcHRvci5udW1iZXJNYXg7XG4gICAgICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgICAgIGNhc2UgRmllbGRJbnB1dFR5cGVFbnVtLlN3aXRjaDpcbiAgICAgICAgICAgICAgICAgICAgZmllbGQudHlwZSA9ICdzd2l0Y2gnO1xuICAgICAgICAgICAgICAgICAgICBmaWVsZC5kZWZhdWx0VmFsdWUgPSBmYWxzZTtcbiAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgICAgY2FzZSBGaWVsZElucHV0VHlwZUVudW0uUmFkaW86XG4gICAgICAgICAgICAgICAgICAgIGZpZWxkLnR5cGUgPSAncmFkaW8nO1xuICAgICAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgICAgICBjYXNlIEZpZWxkSW5wdXRUeXBlRW51bS5EYXRlcGlja2VyOlxuICAgICAgICAgICAgICAgICAgICBmaWVsZC50eXBlID0gJ2RhdGVwaWNrZXInO1xuICAgICAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgICAgICBjYXNlIEZpZWxkSW5wdXRUeXBlRW51bS5NYXNrOlxuICAgICAgICAgICAgICAgICAgICBmaWVsZC50eXBlID0gJ21hc2snO1xuICAgICAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgICAgICBjYXNlIEZpZWxkSW5wdXRUeXBlRW51bS5GaWxlOlxuICAgICAgICAgICAgICAgIGNhc2UgRmllbGRJbnB1dFR5cGVFbnVtLkltYWdlRmlsZTpcbiAgICAgICAgICAgICAgICAgICAgZmllbGQudHlwZSA9ICdmaWxlJztcbiAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgICAgY2FzZSBGaWVsZElucHV0VHlwZUVudW0uSW1hZ2VVcmw6XG4gICAgICAgICAgICAgICAgICAgIGZpZWxkLnR5cGUgPSAnaW1hZ2VVcmwnO1xuICAgICAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgICAgICBjYXNlIEZpZWxkSW5wdXRUeXBlRW51bS5DdXN0b206XG4gICAgICAgICAgICAgICAgICAgIGlmIChkZXNjcmlwdG9yLmN1c3RvbUNvbXBvbmVudFR5cGUpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZpZWxkLnR5cGUgPSAnY3VzdG9tJztcbiAgICAgICAgICAgICAgICAgICAgICAgIGZpZWxkLnByb3BzWydjdXN0b21Db21wb25lbnRUeXBlJ10gPSBkZXNjcmlwdG9yLmN1c3RvbUNvbXBvbmVudFR5cGU7XG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAoQXJyYXkuaXNBcnJheShkZXNjcmlwdG9yLmN1c3RvbUNvbXBvbmVudFdyYXBwZXJzKSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpZWxkLndyYXBwZXJzID0gZGVzY3JpcHRvci5jdXN0b21Db21wb25lbnRXcmFwcGVycztcbiAgICAgICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gZGVmYXVsdCB3cmFwcGVyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZmllbGQud3JhcHBlcnMgPSBbJ2ZpZWxkJ107XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICAgICAgICAgICAgZmllbGQudHlwZSA9ICdpbnB1dCc7XG4gICAgICAgICAgICAgICAgICAgIGZpZWxkLnByb3BzLm1pbkxlbmd0aCA9IGRlc2NyaXB0b3IubWluTGVuZ3RoO1xuICAgICAgICAgICAgICAgICAgICBmaWVsZC5wcm9wcy5tYXhMZW5ndGggPSBkZXNjcmlwdG9yLm1heExlbmd0aDtcbiAgICAgICAgICAgICAgICAgICAgZmllbGQucHJvcHMucGF0dGVybiA9IGRlc2NyaXB0b3IucGF0dGVybjtcbiAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0gZWxzZSBpZiAoZGVzY3JpcHRvciBpbnN0YW5jZW9mIEZpZWxkQWN0aW9uRGVzY3JpcHRvcikge1xuICAgICAgICAgICAgZmllbGQudHlwZSA9ICdhY3Rpb24nO1xuICAgICAgICAgICAgZmllbGQud3JhcHBlcnMgPSBkZXNjcmlwdG9yLndyYXBwZXJzO1xuICAgICAgICAgICAgZGVsZXRlIGZpZWxkLmtleTtcbiAgICAgICAgfSBlbHNlIGlmIChkZXNjcmlwdG9yIGluc3RhbmNlb2YgRmllbGRMb29rdXBFbnVtRGVzY3JpcHRvcikge1xuICAgICAgICAgICAgc3dpdGNoIChkZXNjcmlwdG9yLmxvb2t1cFR5cGUpIHtcbiAgICAgICAgICAgICAgICBjYXNlIEZpZWxkTG9va3VwVHlwZUVudW0uQ3VzdG9tOlxuICAgICAgICAgICAgICAgICAgICBmaWVsZC50eXBlID0gZGVzY3JpcHRvci5jdXN0b21Db21wb25lbnROYW1lO1xuICAgICAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgICAgICAgICAgICBmaWVsZC50eXBlID0gJ2VudW0nO1xuICAgICAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSBlbHNlIGlmIChkZXNjcmlwdG9yIGluc3RhbmNlb2YgRmllbGRMb29rdXBEZXNjcmlwdG9yKSB7XG4gICAgICAgICAgICBzd2l0Y2ggKGRlc2NyaXB0b3IubG9va3VwVHlwZSkge1xuICAgICAgICAgICAgICAgIGNhc2UgRmllbGRMb29rdXBUeXBlRW51bS5BdXRvY29tcGxldGU6XG4gICAgICAgICAgICAgICAgICAgIGZpZWxkLnR5cGUgPSAnYXV0b2NvbXBsZXRlJztcbiAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgICAgY2FzZSBGaWVsZExvb2t1cFR5cGVFbnVtLkRpYWxvZzpcbiAgICAgICAgICAgICAgICAgICAgZmllbGQudHlwZSA9ICdkaWFsb2cnO1xuICAgICAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgICAgICBjYXNlIEZpZWxkTG9va3VwVHlwZUVudW0uQ3VzdG9tOlxuICAgICAgICAgICAgICAgICAgICBmaWVsZC50eXBlID0gZGVzY3JpcHRvci5jdXN0b21Db21wb25lbnROYW1lO1xuICAgICAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgICAgICBjYXNlIEZpZWxkTG9va3VwVHlwZUVudW0uRHJvcGRvd246XG4gICAgICAgICAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICAgICAgICAgICAgZmllbGQudHlwZSA9ICdkcm9wZG93bic7XG4gICAgICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgfVxuICAgICAgICB9IGVsc2UgaWYgKGRlc2NyaXB0b3IgaW5zdGFuY2VvZiBGaWVsZE1hbnlUb01hbnlFZGl0b3JEZXNjcmlwdG9yKSB7XG4gICAgICAgICAgICBmaWVsZC50eXBlID0gJ3RhYmxlLWRpYWxvZy1tdWx0aXNlbGVjdCc7XG4gICAgICAgIH0gZWxzZSBpZiAoZGVzY3JpcHRvciBpbnN0YW5jZW9mIEZpZWxkTWFueUVkaXRvckRlc2NyaXB0b3IpIHtcbiAgICAgICAgICAgIGZpZWxkLnR5cGUgPSAndGFibGUtZGlhbG9nLWZvcm0nO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKGRlc2NyaXB0b3IubGFiZWwpIHtcbiAgICAgICAgICAgIGZpZWxkLnByb3BzLmxhYmVsID0gZGVzY3JpcHRvci5sYWJlbDtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChkZXNjcmlwdG9yLnJlcXVpcmVkRXhwcmVzc2lvbikge1xuICAgICAgICAgICAgZmllbGQuZXhwcmVzc2lvbnMhWydwcm9wcy5yZXF1aXJlZCddID0gZGVzY3JpcHRvci5yZXF1aXJlZEV4cHJlc3Npb247XG4gICAgICAgIH1cbiAgICAgICAgaWYgKGRlc2NyaXB0b3IucmVxdWlyZWQpIHtcbiAgICAgICAgICAgIGZpZWxkLnByb3BzIS5yZXF1aXJlZCA9IHRydWU7XG4gICAgICAgICAgICBpZiAoZGVzY3JpcHRvci5yZXF1aXJlZEhpZGVMYWJlbE1hcmtlcikge1xuICAgICAgICAgICAgICAgIGZpZWxkLnByb3BzIVsnaGlkZVJlcXVpcmVkTWFya2VyJ10gPSB0cnVlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgaWYgKGRlc2NyaXB0b3IuaGlkZGVuRXhwcmVzc2lvbikge1xuICAgICAgICAgICAgZmllbGQuZXhwcmVzc2lvbnMhWydoaWRlJ10gPSBkZXNjcmlwdG9yLmhpZGRlbkV4cHJlc3Npb247XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoZGVzY3JpcHRvci5kaXNhYmxlZEV4cHJlc3Npb24pIHtcbiAgICAgICAgICAgIGZpZWxkLmV4cHJlc3Npb25zIVsncHJvcHMuZGlzYWJsZWQnXSA9IGRlc2NyaXB0b3IuZGlzYWJsZWRFeHByZXNzaW9uO1xuICAgICAgICB9IGVsc2UgaWYgKGRlc2NyaXB0b3IuZGlzYWJsZWQpIHtcbiAgICAgICAgICAgIGZpZWxkLnByb3BzLmRpc2FibGVkID0gdHJ1ZTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIGZpZWxkLmV4cHJlc3Npb25zIVsncHJvcHMuZGlzYWJsZWQnXSA9ICdmb3JtU3RhdGUuZGlzYWJsZWQnO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHR5cGVvZiBkZXNjcmlwdG9yLmRlZmF1bHRWYWx1ZSAhPT0gJ3VuZGVmaW5lZCcpIHtcbiAgICAgICAgICAgIGZpZWxkLmRlZmF1bHRWYWx1ZSA9IGRlc2NyaXB0b3IuZGVmYXVsdFZhbHVlO1xuICAgICAgICB9XG5cbiAgICAgICAgRWRpdG9yRm9ybWx5VXRpbC5hZGRWYWxpZGF0aW9uc1RvRm9ybWx5RmllbGQoZmllbGQsIGRlc2NyaXB0b3IudmFsaWRhdGlvbnMpO1xuICAgICAgICBFZGl0b3JGb3JtbHlVdGlsLmFkZEFzeW5jVmFsaWRhdGlvbnNUb0Zvcm1seUZpZWxkKGZpZWxkLCBkZXNjcmlwdG9yLmFzeW5jVmFsaWRhdGlvbnMpO1xuXG4gICAgICAgIHJldHVybiBmaWVsZDtcbiAgICB9XG5cbiAgICBwdWJsaWMgc3RhdGljIGFkZFZhbGlkYXRpb25zVG9Gb3JtbHlGaWVsZChjb25maWc6IEZvcm1seUZpZWxkQ29uZmlnLCB2YWxpZGF0aW9uczogQXJyYXk8RmllbGRWYWxpZGF0aW9uRGVzY3JpcHRvcj4pIHtcbiAgICAgICAgaWYgKCFjb25maWcudmFsaWRhdG9ycykge1xuICAgICAgICAgICAgY29uZmlnLnZhbGlkYXRvcnMgPSB7fTtcbiAgICAgICAgfVxuXG4gICAgICAgIGZvciAoY29uc3QgdmFsaWRhdGlvbiBvZiB2YWxpZGF0aW9ucykge1xuICAgICAgICAgICAgaWYgKHR5cGVvZiB2YWxpZGF0aW9uLnZhbGlkYXRvciA9PT0gJ2Z1bmN0aW9uJykge1xuICAgICAgICAgICAgICAgIGNvbmZpZy52YWxpZGF0b3JzW3ZhbGlkYXRpb24ubmFtZV0gPSB7XG4gICAgICAgICAgICAgICAgICAgIGV4cHJlc3Npb246IChcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRyb2w6IEFic3RyYWN0Q29udHJvbCxcbiAgICAgICAgICAgICAgICAgICAgICAgIGZpZWxkOiBGb3JtbHlGaWVsZENvbmZpZyxcbiAgICAgICAgICAgICAgICAgICAgICAgIG9wdGlvbnM/OiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgW2lkOiBzdHJpbmddOiBhbnk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgdmFsaWRhdG9yUmVzID0gdmFsaWRhdGlvbi52YWxpZGF0b3IhKGNvbnRyb2wsIGZpZWxkLCBvcHRpb25zKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIC8vIGZvcm1seSB2YWxpZGF0b3Igb25seSBleGNlcHRzIHRydWUvZmFsc2UgZm9yIHZhbGlkYXRpb25cbiAgICAgICAgICAgICAgICAgICAgICAgIC8vIG1hcCBwb3NzaWJsZSBhbmd1bGFyIHZhbGlkYXRvciByZXN1bHQgdG8gdHJ1ZS9mYWxzZVxuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHR5cGVvZiB2YWxpZGF0b3JSZXMgPT09ICdib29sZWFuJyA/IHZhbGlkYXRvclJlcyA6IHZhbGlkYXRvclJlcyA9PT0gbnVsbDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH07XG4gICAgICAgICAgICAgICAgaWYgKHR5cGVvZiB2YWxpZGF0aW9uLm1lc3NhZ2UgPT09ICdmdW5jdGlvbicpIHtcbiAgICAgICAgICAgICAgICAgICAgY29uZmlnLnZhbGlkYXRvcnNbdmFsaWRhdGlvbi5uYW1lXS5tZXNzYWdlID0gdmFsaWRhdGlvbi5tZXNzYWdlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgaWYgKCFBcnJheS5pc0FycmF5KGNvbmZpZy52YWxpZGF0b3JzLnZhbGlkYXRpb24pKSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbmZpZy52YWxpZGF0b3JzLnZhbGlkYXRpb24gPSBbXTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgY29uZmlnLnZhbGlkYXRvcnMudmFsaWRhdGlvbi5wdXNoKHZhbGlkYXRpb24ubmFtZSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwdWJsaWMgc3RhdGljIGFkZEFzeW5jVmFsaWRhdGlvbnNUb0Zvcm1seUZpZWxkKGNvbmZpZzogRm9ybWx5RmllbGRDb25maWcsIGFzeW5jVmFsaWRhdGlvbnM6IEFycmF5PEZpZWxkVmFsaWRhdGlvbkRlc2NyaXB0b3I+KSB7XG4gICAgICAgIGlmICghY29uZmlnLmFzeW5jVmFsaWRhdG9ycykge1xuICAgICAgICAgICAgY29uZmlnLmFzeW5jVmFsaWRhdG9ycyA9IHt9O1xuICAgICAgICB9XG5cbiAgICAgICAgZm9yIChjb25zdCB2YWxpZGF0aW9uIG9mIGFzeW5jVmFsaWRhdGlvbnMpIHtcbiAgICAgICAgICAgIGlmICh0eXBlb2YgdmFsaWRhdGlvbi52YWxpZGF0b3IgPT09ICdmdW5jdGlvbicpIHtcbiAgICAgICAgICAgICAgICBjb25maWcuYXN5bmNWYWxpZGF0b3JzW3ZhbGlkYXRpb24ubmFtZV0gPSB7XG4gICAgICAgICAgICAgICAgICAgIGV4cHJlc3Npb246IChcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRyb2w6IEFic3RyYWN0Q29udHJvbCxcbiAgICAgICAgICAgICAgICAgICAgICAgIGZpZWxkOiBGb3JtbHlGaWVsZENvbmZpZyxcbiAgICAgICAgICAgICAgICAgICAgICAgIG9wdGlvbnM/OiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgW2lkOiBzdHJpbmddOiBhbnk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgdmFsaWRhdG9yID0gPE1uZ0ZpZWxkQXN5bmNWYWxpZGF0b3I+dmFsaWRhdGlvbi52YWxpZGF0b3I7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHZhbGlkYXRvck9iczogT2JzZXJ2YWJsZTxWYWxpZGF0aW9uRXJyb3JzIHwgYm9vbGVhbiB8IG51bGw+ID0gdmFsaWRhdG9yKGNvbnRyb2wsIGZpZWxkLCBvcHRpb25zKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIC8vIGZvcm1seSB2YWxpZGF0b3Igb25seSBleGNlcHRzIHRydWUvZmFsc2UgZm9yIHZhbGlkYXRpb25cbiAgICAgICAgICAgICAgICAgICAgICAgIC8vIG1hcCBwb3NzaWJsZSBhbmd1bGFyIHZhbGlkYXRvciByZXN1bHQgdG8gdHJ1ZS9mYWxzZVxuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHZhbGlkYXRvck9icy5waXBlKG1hcCh2YWx1ZSA9PiAodHlwZW9mIHZhbHVlID09PSAnYm9vbGVhbicgPyB2YWx1ZSA6IHZhbHVlID09PSBudWxsKSkpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgICAgICBpZiAodHlwZW9mIHZhbGlkYXRpb24ubWVzc2FnZSA9PT0gJ2Z1bmN0aW9uJykge1xuICAgICAgICAgICAgICAgICAgICBjb25maWcuYXN5bmNWYWxpZGF0b3JzW3ZhbGlkYXRpb24ubmFtZV0ubWVzc2FnZSA9IHZhbGlkYXRpb24ubWVzc2FnZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIGlmICghQXJyYXkuaXNBcnJheShjb25maWcuYXN5bmNWYWxpZGF0b3JzLnZhbGlkYXRpb24pKSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbmZpZy5hc3luY1ZhbGlkYXRvcnMudmFsaWRhdGlvbiA9IFtdO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBjb25maWcuYXN5bmNWYWxpZGF0b3JzLnZhbGlkYXRpb24ucHVzaCh2YWxpZGF0aW9uLm5hbWUpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuIl19