@mediusinc/mng-commons 6.0.0-rc.5 → 6.0.0-rc.7

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 (395) hide show
  1. package/README.md +6 -6
  2. package/core/components/notification/notification-wrapper.component.d.ts +4 -4
  3. package/core/data-list/data-list-params-helpers.d.ts +1 -0
  4. package/core/directives/component.directive.d.ts +11 -13
  5. package/core/directives/rerender.directive.d.ts +1 -1
  6. package/core/directives/template.directive.d.ts +3 -7
  7. package/core/error/error.model.d.ts +4 -4
  8. package/core/helpers/notification.d.ts +2 -2
  9. package/core/i18n/i18n-common.d.ts +2 -2
  10. package/core/provide.d.ts +3 -3
  11. package/core/styles/style-constants.d.ts +9 -8
  12. package/core/styles/style.model.d.ts +2 -1
  13. package/fesm2022/mediusinc-mng-commons-core.mjs +167 -201
  14. package/fesm2022/mediusinc-mng-commons-core.mjs.map +1 -1
  15. package/fesm2022/mediusinc-mng-commons-form-api.mjs +8 -9
  16. package/fesm2022/mediusinc-mng-commons-form-api.mjs.map +1 -1
  17. package/fesm2022/mediusinc-mng-commons-form.mjs +151 -52
  18. package/fesm2022/mediusinc-mng-commons-form.mjs.map +1 -1
  19. package/fesm2022/mediusinc-mng-commons-table-column-toggle.component-a8KG1NIX.mjs +30 -0
  20. package/fesm2022/mediusinc-mng-commons-table-column-toggle.component-a8KG1NIX.mjs.map +1 -0
  21. package/fesm2022/mediusinc-mng-commons-table-mediusinc-mng-commons-table-C2vrMoNL.mjs +2130 -0
  22. package/fesm2022/mediusinc-mng-commons-table-mediusinc-mng-commons-table-C2vrMoNL.mjs.map +1 -0
  23. package/fesm2022/mediusinc-mng-commons-table.mjs +1 -2154
  24. package/fesm2022/mediusinc-mng-commons-table.mjs.map +1 -1
  25. package/fesm2022/mediusinc-mng-commons-tableview-api.mjs +97 -49
  26. package/fesm2022/mediusinc-mng-commons-tableview-api.mjs.map +1 -1
  27. package/fesm2022/mediusinc-mng-commons-tableview.mjs +332 -293
  28. package/fesm2022/mediusinc-mng-commons-tableview.mjs.map +1 -1
  29. package/fesm2022/mediusinc-mng-commons.mjs.map +1 -1
  30. package/form/api/index.d.ts +1 -0
  31. package/form/api/models/empty-value.model.d.ts +7 -0
  32. package/form/components/autocomplete/autocomplete.component.d.ts +1 -2
  33. package/form/components/date-range/date-range.component.d.ts +4 -3
  34. package/form/components/dropdown/dropdown.component.d.ts +3 -2
  35. package/form/components/number-range/number-range.component.d.ts +3 -2
  36. package/form/directives/input-empty-value.directive.d.ts +40 -0
  37. package/form/directives/input-trim.directive.d.ts +3 -5
  38. package/form/index.d.ts +1 -0
  39. package/i18n/en.json +57 -8
  40. package/i18n/sl.json +1 -3
  41. package/package.json +10 -36
  42. package/provide.d.ts +2 -2
  43. package/table/components/column-toggle/column-toggle.component.d.ts +12 -0
  44. package/table/components/filter/filter-form/filter-form.component.d.ts +2 -2
  45. package/table/components/table/table.component.d.ts +0 -1
  46. package/table/helpers/filters.d.ts +3 -2
  47. package/table/helpers/notification.d.ts +2 -2
  48. package/table/provide.d.ts +7 -0
  49. package/table/services/table-metadata.service.d.ts +3 -3
  50. package/tableview/action/components/action/action.component.d.ts +1 -0
  51. package/tableview/action/components/editor/action-editor.component.d.ts +1 -1
  52. package/tableview/action/components/table/action-table.component.d.ts +2 -1
  53. package/tableview/action/helpers/notification.d.ts +3 -3
  54. package/tableview/action/models/execution/action-context.model.d.ts +2 -2
  55. package/tableview/action/services/action-executor.service.d.ts +1 -1
  56. package/tableview/api/action/descriptors/action.descriptor.d.ts +3 -3
  57. package/tableview/api/action/models/action-confirmation.model.d.ts +4 -2
  58. package/tableview/api/action/models/execution/action-context.model.d.ts +2 -2
  59. package/tableview/api/editor/descriptors/editor.descriptor.d.ts +5 -0
  60. package/tableview/api/editor/descriptors/field-base.descriptor.d.ts +14 -10
  61. package/tableview/api/editor/descriptors/field-group.descriptor.d.ts +10 -0
  62. package/tableview/api/editor/descriptors/field.descriptor.d.ts +36 -9
  63. package/tableview/api/editor/descriptors/wrappers/editor-descriptor-nested-object-wrapper.d.ts +1 -1
  64. package/tableview/api/editor/models/field-action-context.model.d.ts +1 -1
  65. package/tableview/api/editor/models/field.model.d.ts +1 -2
  66. package/tableview/api/editor/models/form-editor.interface.d.ts +2 -2
  67. package/tableview/api/editor/models/formly-custom-field.model.d.ts +1 -1
  68. package/tableview/api/editor/models/formly-field.model.d.ts +2 -2
  69. package/tableview/editor/components/editor/form-editor.component.d.ts +2 -2
  70. package/tableview/editor/components/formly/fields/formly-field-action/formly-field-action.component.d.ts +1 -1
  71. package/tableview/editor/components/formly/fields/formly-field-datepicker/formly-field-datepicker.component.d.ts +2 -1
  72. package/tableview/editor/components/formly/fields/formly-field-fieldset/formly-field-fieldset.component.d.ts +4 -6
  73. package/tableview/editor/components/formly/fields/formly-field-lookup-dialog/formly-field-lookup-dialog.component.d.ts +0 -2
  74. package/tableview/editor/components/formly/fields/formly-field-tabs/formly-field-tabs.component.d.ts +2 -2
  75. package/tableview/editor/components/formly/fields/formly-field-type.abstract.component.d.ts +8 -15
  76. package/tableview/editor/components/formly/fields/formly-group-type.abstract.component.d.ts +7 -0
  77. package/tableview/editor/components/formly/fields/formly-type.abstract.component.d.ts +20 -0
  78. package/tableview/editor/components/formly/wrappers/formly-field-no-label-wrapper/formly-field-no-label-wrapper.component.d.ts +11 -4
  79. package/tableview/editor/components/formly/wrappers/formly-field-wrapper/formly-field-wrapper.component.d.ts +2 -1
  80. package/tableview/editor/helpers/formly-config.d.ts +1 -1
  81. package/tableview/editor/helpers/notification.d.ts +3 -3
  82. package/tableview/editor/models/formly-config.model.d.ts +10 -1
  83. package/tableview/editor/models/formly.model.d.ts +23 -0
  84. package/tableview/editor/services/form-editor.service.d.ts +2 -2
  85. package/tableview/tableview/router/tableview-route-builder.d.ts +10 -3
  86. package/tableview/tableview/services/tableview-feature-config.token.d.ts +1 -1
  87. package/version-info.json +3 -3
  88. package/esm2022/core/action/action-data.model.mjs +0 -2
  89. package/esm2022/core/action/action-parameters.model.mjs +0 -2
  90. package/esm2022/core/components/notification/notification-wrapper.component.mjs +0 -50
  91. package/esm2022/core/data-list/data-list-params-helpers.mjs +0 -465
  92. package/esm2022/core/data-list/data-list.model.mjs +0 -2
  93. package/esm2022/core/data-list/filter-match.model.mjs +0 -105
  94. package/esm2022/core/data-list/filter-metadata.model.mjs +0 -2
  95. package/esm2022/core/data-providers/base.data-provider.mjs +0 -16
  96. package/esm2022/core/data-providers/lookup.data-provider.mjs +0 -2
  97. package/esm2022/core/descriptors/action.descriptor.mjs +0 -2
  98. package/esm2022/core/descriptors/column.descriptor.mjs +0 -2
  99. package/esm2022/core/descriptors/editor.descriptor.mjs +0 -2
  100. package/esm2022/core/descriptors/enum.descriptor.mjs +0 -2
  101. package/esm2022/core/descriptors/filter.descriptor.mjs +0 -2
  102. package/esm2022/core/descriptors/lookup.descriptor.mjs +0 -2
  103. package/esm2022/core/descriptors/model.descriptor.mjs +0 -2
  104. package/esm2022/core/descriptors/table.descriptor.mjs +0 -2
  105. package/esm2022/core/descriptors/tableview.descriptor.mjs +0 -2
  106. package/esm2022/core/directives/component.directive.mjs +0 -75
  107. package/esm2022/core/directives/rerender.directive.mjs +0 -25
  108. package/esm2022/core/directives/template.directive.mjs +0 -29
  109. package/esm2022/core/enum/enum-helpers.mjs +0 -90
  110. package/esm2022/core/enum/enum.model.mjs +0 -2
  111. package/esm2022/core/error/error-handler.mjs +0 -20
  112. package/esm2022/core/error/error-helpers.mjs +0 -273
  113. package/esm2022/core/error/error.model.mjs +0 -33
  114. package/esm2022/core/helpers/coercion.mjs +0 -55
  115. package/esm2022/core/helpers/date.mjs +0 -119
  116. package/esm2022/core/helpers/notification.mjs +0 -21
  117. package/esm2022/core/helpers/number.mjs +0 -19
  118. package/esm2022/core/helpers/object.mjs +0 -152
  119. package/esm2022/core/helpers/route.mjs +0 -58
  120. package/esm2022/core/helpers/string.mjs +0 -57
  121. package/esm2022/core/helpers/templates.mjs +0 -4
  122. package/esm2022/core/helpers/type-helpers.mjs +0 -2
  123. package/esm2022/core/i18n/i18n-common.mjs +0 -24
  124. package/esm2022/core/i18n/i18n-error.mjs +0 -29
  125. package/esm2022/core/i18n/i18n-type.mjs +0 -46
  126. package/esm2022/core/index.mjs +0 -107
  127. package/esm2022/core/log/log-publisher-console.service.mjs +0 -40
  128. package/esm2022/core/log/log.model.mjs +0 -10
  129. package/esm2022/core/log/logger.service.mjs +0 -131
  130. package/esm2022/core/mediusinc-mng-commons-core.mjs +0 -5
  131. package/esm2022/core/models/class-attribute.model.mjs +0 -2
  132. package/esm2022/core/models/class-service.model.mjs +0 -2
  133. package/esm2022/core/models/getter.model.mjs +0 -2
  134. package/esm2022/core/models/i18n.model.mjs +0 -2
  135. package/esm2022/core/models/menu.model.mjs +0 -2
  136. package/esm2022/core/models/user.model.mjs +0 -2
  137. package/esm2022/core/models/version.model.mjs +0 -2
  138. package/esm2022/core/pipes/boolean.pipe.mjs +0 -34
  139. package/esm2022/core/pipes/class-map.pipe.mjs +0 -23
  140. package/esm2022/core/pipes/enum.pipe.mjs +0 -38
  141. package/esm2022/core/pipes/enumerate-async.pipe.mjs +0 -36
  142. package/esm2022/core/pipes/enumerate.pipe.mjs +0 -49
  143. package/esm2022/core/pipes/getter.pipe.mjs +0 -21
  144. package/esm2022/core/pipes/i18n-property.pipe.mjs +0 -19
  145. package/esm2022/core/pipes/json-path.pipe.mjs +0 -25
  146. package/esm2022/core/pipes/parametrize.pipe.mjs +0 -86
  147. package/esm2022/core/pipes/template.pipe.mjs +0 -25
  148. package/esm2022/core/provide.mjs +0 -79
  149. package/esm2022/core/reactivity/effect.mjs +0 -22
  150. package/esm2022/core/reflect/type-enum-decorator.mjs +0 -12
  151. package/esm2022/core/reflect/type-enum-metadata.mjs +0 -62
  152. package/esm2022/core/registry/registry.model.mjs +0 -2
  153. package/esm2022/core/registry/type-registry.mjs +0 -106
  154. package/esm2022/core/router/route-builder.mjs +0 -431
  155. package/esm2022/core/router/router.model.mjs +0 -2
  156. package/esm2022/core/router/routes-builder.mjs +0 -52
  157. package/esm2022/core/rxjs/map-data-list-result-operator.mjs +0 -22
  158. package/esm2022/core/security/permission-helpers.mjs +0 -14
  159. package/esm2022/core/security/permission.guard.mjs +0 -15
  160. package/esm2022/core/security/permission.service.mjs +0 -101
  161. package/esm2022/core/security/permissions.model.mjs +0 -93
  162. package/esm2022/core/services/commons-configuration.service.mjs +0 -189
  163. package/esm2022/core/services/commons-init.service.mjs +0 -111
  164. package/esm2022/core/services/commons-router.service.mjs +0 -181
  165. package/esm2022/core/services/commons-storage.service.mjs +0 -31
  166. package/esm2022/core/services/commons.service.mjs +0 -324
  167. package/esm2022/core/services/providers/commons-init.provider.mjs +0 -4
  168. package/esm2022/core/services/tokens/browser-storage.token.mjs +0 -3
  169. package/esm2022/core/services/tokens/commons-init.token.mjs +0 -3
  170. package/esm2022/core/services/tokens/log-publisher.token.mjs +0 -3
  171. package/esm2022/core/services/tokens/module-config.token.mjs +0 -3
  172. package/esm2022/core/styles/style-constants.mjs +0 -11
  173. package/esm2022/core/styles/style.model.mjs +0 -20
  174. package/esm2022/filter/descriptors/filter-generic.descriptor.mjs +0 -31
  175. package/esm2022/filter/descriptors/filter-lookup.descriptor.mjs +0 -168
  176. package/esm2022/filter/descriptors/filter.descriptor.mjs +0 -421
  177. package/esm2022/filter/index.mjs +0 -8
  178. package/esm2022/filter/mediusinc-mng-commons-filter.mjs +0 -5
  179. package/esm2022/filter/models/filter-generic-property.model.mjs +0 -2
  180. package/esm2022/filter/models/filter.model.mjs +0 -20
  181. package/esm2022/form/api/data-providers/lookup-data-provider.factory.mjs +0 -15
  182. package/esm2022/form/api/data-providers/lookup.data-provider.mjs +0 -15
  183. package/esm2022/form/api/descriptors/action-button.descriptor.mjs +0 -56
  184. package/esm2022/form/api/descriptors/button-style.builder.mjs +0 -153
  185. package/esm2022/form/api/index.mjs +0 -10
  186. package/esm2022/form/api/mediusinc-mng-commons-form-api.mjs +0 -5
  187. package/esm2022/form/api/models/button.model.mjs +0 -2
  188. package/esm2022/form/api/models/trim.model.mjs +0 -2
  189. package/esm2022/form/components/autocomplete/autocomplete.component.mjs +0 -436
  190. package/esm2022/form/components/date-range/date-range.component.mjs +0 -147
  191. package/esm2022/form/components/dropdown/dropdown.component.mjs +0 -372
  192. package/esm2022/form/components/number-range/number-range.component.mjs +0 -123
  193. package/esm2022/form/directives/input-trim.directive.mjs +0 -50
  194. package/esm2022/form/index.mjs +0 -8
  195. package/esm2022/form/mediusinc-mng-commons-form.mjs +0 -5
  196. package/esm2022/index.mjs +0 -2
  197. package/esm2022/mediusinc-mng-commons.mjs +0 -5
  198. package/esm2022/model/class/data-providers/base-from-class-data-provider.factory.mjs +0 -5
  199. package/esm2022/model/class/descriptors/model-class.descriptor.mjs +0 -28
  200. package/esm2022/model/class/descriptors/type-class.descriptor.mjs +0 -6
  201. package/esm2022/model/class/helpers/model.mjs +0 -53
  202. package/esm2022/model/class/index.mjs +0 -8
  203. package/esm2022/model/class/mediusinc-mng-commons-model-class.mjs +0 -5
  204. package/esm2022/model/data-providers/base-from-type-data-provider.factory.mjs +0 -13
  205. package/esm2022/model/descriptors/enum.descriptor.mjs +0 -28
  206. package/esm2022/model/descriptors/model.descriptor.mjs +0 -53
  207. package/esm2022/model/descriptors/type.descriptor.mjs +0 -7
  208. package/esm2022/model/helpers/i18n.mjs +0 -47
  209. package/esm2022/model/index.mjs +0 -9
  210. package/esm2022/model/mediusinc-mng-commons-model.mjs +0 -5
  211. package/esm2022/provide.mjs +0 -6
  212. package/esm2022/table/api/class/class-table-attribute-converter.mjs +0 -80
  213. package/esm2022/table/api/class/class-table-attribute.model.mjs +0 -2
  214. package/esm2022/table/api/class/class-table-data-provider.factory.mjs +0 -5
  215. package/esm2022/table/api/class/class-table-descriptor-helpers.mjs +0 -99
  216. package/esm2022/table/api/class/class-table-descriptor.factory.mjs +0 -21
  217. package/esm2022/table/api/class/index.mjs +0 -6
  218. package/esm2022/table/api/class/mediusinc-mng-commons-table-api-class.mjs +0 -5
  219. package/esm2022/table/api/data-providers/table-data-provider.factory.mjs +0 -15
  220. package/esm2022/table/api/data-providers/table.data-provider.mjs +0 -33
  221. package/esm2022/table/api/descriptors/column.descriptor.mjs +0 -475
  222. package/esm2022/table/api/descriptors/sort.descriptor.mjs +0 -67
  223. package/esm2022/table/api/descriptors/table-descriptor.factory.mjs +0 -22
  224. package/esm2022/table/api/descriptors/table.descriptor.mjs +0 -1116
  225. package/esm2022/table/api/helpers/column-converter.mjs +0 -25
  226. package/esm2022/table/api/helpers/table-data-provider-descriptor-convert.mjs +0 -7
  227. package/esm2022/table/api/index.mjs +0 -19
  228. package/esm2022/table/api/mediusinc-mng-commons-table-api.mjs +0 -5
  229. package/esm2022/table/api/models/column-value.model.mjs +0 -2
  230. package/esm2022/table/api/models/column.model.mjs +0 -21
  231. package/esm2022/table/api/models/row-expandable-component.model.mjs +0 -2
  232. package/esm2022/table/api/models/table-columns.model.mjs +0 -2
  233. package/esm2022/table/api/models/table-event.model.mjs +0 -2
  234. package/esm2022/table/api/models/table.model.mjs +0 -21
  235. package/esm2022/table/components/column-filter/column-filter.component.mjs +0 -389
  236. package/esm2022/table/components/column-value/column-value.component.mjs +0 -78
  237. package/esm2022/table/components/filter/filter-active-tag/filter-active-tag.component.mjs +0 -55
  238. package/esm2022/table/components/filter/filter-form/filter-form.component.mjs +0 -226
  239. package/esm2022/table/components/filter/filter-overlay-with-tag/filter-overlay-with-tag.component.mjs +0 -219
  240. package/esm2022/table/components/table/table.component.mjs +0 -319
  241. package/esm2022/table/helpers/filters.mjs +0 -312
  242. package/esm2022/table/helpers/notification.mjs +0 -21
  243. package/esm2022/table/helpers/table-layout-prefs.mjs +0 -10
  244. package/esm2022/table/helpers/table.mjs +0 -24
  245. package/esm2022/table/index.mjs +0 -24
  246. package/esm2022/table/mediusinc-mng-commons-table.mjs +0 -5
  247. package/esm2022/table/models/column-preferences.model.mjs +0 -2
  248. package/esm2022/table/models/filter.model.mjs +0 -2
  249. package/esm2022/table/pipes/filter-value.pipe.mjs +0 -77
  250. package/esm2022/table/pipes/locale-default-row-class.pipe.mjs +0 -27
  251. package/esm2022/table/pipes/table-column-filter-class.pipe.mjs +0 -25
  252. package/esm2022/table/provide.mjs +0 -19
  253. package/esm2022/table/services/table-data.service.mjs +0 -194
  254. package/esm2022/table/services/table-feature-config.token.mjs +0 -3
  255. package/esm2022/table/services/table-metadata.service.mjs +0 -136
  256. package/esm2022/table/services/table-preferences.service.mjs +0 -142
  257. package/esm2022/tableview/action/components/action/action.component.mjs +0 -277
  258. package/esm2022/tableview/action/components/editor/action-editor.component.mjs +0 -86
  259. package/esm2022/tableview/action/components/editor/injector-context/action-editor-injector-context.component.mjs +0 -428
  260. package/esm2022/tableview/action/components/localization/data-language-dropdown.component.mjs +0 -35
  261. package/esm2022/tableview/action/components/route/action-route.component.mjs +0 -146
  262. package/esm2022/tableview/action/components/table/action-table.component.mjs +0 -102
  263. package/esm2022/tableview/action/guards/unsaved-changes.guard.mjs +0 -4
  264. package/esm2022/tableview/action/helpers/action-execution.mjs +0 -25
  265. package/esm2022/tableview/action/helpers/i18n.mjs +0 -102
  266. package/esm2022/tableview/action/helpers/notification.mjs +0 -78
  267. package/esm2022/tableview/action/helpers/styles.mjs +0 -32
  268. package/esm2022/tableview/action/models/action-editor-dialog-data.model.mjs +0 -2
  269. package/esm2022/tableview/action/models/can-component-deactivate.model.mjs +0 -2
  270. package/esm2022/tableview/action/models/execution/action-context.model.mjs +0 -64
  271. package/esm2022/tableview/action/models/execution/action-instance.model.mjs +0 -169
  272. package/esm2022/tableview/action/services/action-error-mapper.service.mjs +0 -20
  273. package/esm2022/tableview/action/services/action-executor.service.mjs +0 -772
  274. package/esm2022/tableview/action/services/component-action-executor.service.mjs +0 -19
  275. package/esm2022/tableview/action/services/data-provider-executor.service.mjs +0 -41
  276. package/esm2022/tableview/action/services/navigation.service.mjs +0 -53
  277. package/esm2022/tableview/action/services/providers/provide-action-executor.mjs +0 -9
  278. package/esm2022/tableview/action/services/providers/provide-view-container.mjs +0 -17
  279. package/esm2022/tableview/action/services/root-action-executor.service.mjs +0 -18
  280. package/esm2022/tableview/action/services/tokens/action-editor.token.mjs +0 -3
  281. package/esm2022/tableview/action/services/view-container.service.mjs +0 -40
  282. package/esm2022/tableview/api/action/descriptors/action-descriptor.factory.mjs +0 -28
  283. package/esm2022/tableview/api/action/descriptors/action-editor-descriptor.factory.mjs +0 -30
  284. package/esm2022/tableview/api/action/descriptors/action-editor.descriptor.mjs +0 -223
  285. package/esm2022/tableview/api/action/descriptors/action-link-descriptor.factory.mjs +0 -32
  286. package/esm2022/tableview/api/action/descriptors/action-link.descriptor.mjs +0 -74
  287. package/esm2022/tableview/api/action/descriptors/action.descriptor.mjs +0 -302
  288. package/esm2022/tableview/api/action/descriptors/editor-action-descriptor.factory.mjs +0 -21
  289. package/esm2022/tableview/api/action/descriptors/editor-action-editor-descriptor.factory.mjs +0 -21
  290. package/esm2022/tableview/api/action/descriptors/table-action-descriptor.factory.mjs +0 -37
  291. package/esm2022/tableview/api/action/descriptors/table-action-editor-descriptor.factory.mjs +0 -40
  292. package/esm2022/tableview/api/action/helpers/data-provider-executors.mjs +0 -100
  293. package/esm2022/tableview/api/action/models/action-component.model.mjs +0 -2
  294. package/esm2022/tableview/api/action/models/action-confirmation.model.mjs +0 -2
  295. package/esm2022/tableview/api/action/models/action-descriptor.types.mjs +0 -2
  296. package/esm2022/tableview/api/action/models/action-editor.model.mjs +0 -2
  297. package/esm2022/tableview/api/action/models/action-error.model.mjs +0 -14
  298. package/esm2022/tableview/api/action/models/action.type.mjs +0 -26
  299. package/esm2022/tableview/api/action/models/execution/action-context-validation.model.mjs +0 -2
  300. package/esm2022/tableview/api/action/models/execution/action-context.model.mjs +0 -2
  301. package/esm2022/tableview/api/action/models/execution/action-execution-error.model.mjs +0 -2
  302. package/esm2022/tableview/api/action/models/execution/action-instance-state.model.mjs +0 -32
  303. package/esm2022/tableview/api/action/models/execution/action-instance.model.mjs +0 -2
  304. package/esm2022/tableview/api/action/models/execution/view-container.model.mjs +0 -2
  305. package/esm2022/tableview/api/action/models/tableview-action-default-categories.model.mjs +0 -11
  306. package/esm2022/tableview/api/action/services/data-provider-executor.service.mjs +0 -28
  307. package/esm2022/tableview/api/action/services/tokens/data-language-dropdown.token.mjs +0 -3
  308. package/esm2022/tableview/api/class/editor/class-editor-attribute-converter.mjs +0 -85
  309. package/esm2022/tableview/api/class/editor/class-editor-attribute.model.mjs +0 -2
  310. package/esm2022/tableview/api/class/editor/class-editor-data-provider.factory.mjs +0 -5
  311. package/esm2022/tableview/api/class/editor/class-editor-descriptor-helpers.mjs +0 -95
  312. package/esm2022/tableview/api/class/editor/class-editor-descriptor.factory.mjs +0 -21
  313. package/esm2022/tableview/api/class/index.mjs +0 -13
  314. package/esm2022/tableview/api/class/mediusinc-mng-commons-tableview-api-class.mjs +0 -5
  315. package/esm2022/tableview/api/class/tableview/class-tableview-attribute-converter.mjs +0 -35
  316. package/esm2022/tableview/api/class/tableview/class-tableview-attribute.model.mjs +0 -2
  317. package/esm2022/tableview/api/class/tableview/class-tableview-data-provider.factory.mjs +0 -5
  318. package/esm2022/tableview/api/class/tableview/class-tableview-descriptor-helpers.mjs +0 -111
  319. package/esm2022/tableview/api/class/tableview/class-tableview-descriptor.factory.mjs +0 -26
  320. package/esm2022/tableview/api/editor/data-providers/editor-data-provider.factory.mjs +0 -15
  321. package/esm2022/tableview/api/editor/data-providers/editor.data-provider.mjs +0 -114
  322. package/esm2022/tableview/api/editor/descriptors/editor-descriptor.factory.mjs +0 -15
  323. package/esm2022/tableview/api/editor/descriptors/editor.descriptor.mjs +0 -437
  324. package/esm2022/tableview/api/editor/descriptors/field-action.descriptor.mjs +0 -51
  325. package/esm2022/tableview/api/editor/descriptors/field-base.descriptor.mjs +0 -314
  326. package/esm2022/tableview/api/editor/descriptors/field-group.descriptor.mjs +0 -103
  327. package/esm2022/tableview/api/editor/descriptors/field-lookup.descriptor.mjs +0 -211
  328. package/esm2022/tableview/api/editor/descriptors/field-many.descriptor.mjs +0 -142
  329. package/esm2022/tableview/api/editor/descriptors/field-validation.descriptor.mjs +0 -25
  330. package/esm2022/tableview/api/editor/descriptors/field.descriptor.mjs +0 -402
  331. package/esm2022/tableview/api/editor/descriptors/wrappers/editor-descriptor-nested-object-wrapper.mjs +0 -51
  332. package/esm2022/tableview/api/editor/models/editor-fields.model.mjs +0 -2
  333. package/esm2022/tableview/api/editor/models/editor.model.mjs +0 -9
  334. package/esm2022/tableview/api/editor/models/field-action-context.model.mjs +0 -2
  335. package/esm2022/tableview/api/editor/models/field-image-preview.model.mjs +0 -2
  336. package/esm2022/tableview/api/editor/models/field-validation.model.mjs +0 -2
  337. package/esm2022/tableview/api/editor/models/field.model.mjs +0 -57
  338. package/esm2022/tableview/api/editor/models/form-editor.event.mjs +0 -28
  339. package/esm2022/tableview/api/editor/models/form-editor.interface.mjs +0 -2
  340. package/esm2022/tableview/api/editor/models/formly-custom-field.model.mjs +0 -70
  341. package/esm2022/tableview/api/editor/models/formly-field.model.mjs +0 -2
  342. package/esm2022/tableview/api/editor/models/formly-options.model.mjs +0 -2
  343. package/esm2022/tableview/api/editor/models/radio.model.mjs +0 -2
  344. package/esm2022/tableview/api/index.mjs +0 -76
  345. package/esm2022/tableview/api/mediusinc-mng-commons-tableview-api.mjs +0 -5
  346. package/esm2022/tableview/api/tableview/data-providers/tableview-data-provider.factory.mjs +0 -18
  347. package/esm2022/tableview/api/tableview/data-providers/tableview.data-provider.mjs +0 -84
  348. package/esm2022/tableview/api/tableview/descriptors/tableview-descriptor.factory.mjs +0 -34
  349. package/esm2022/tableview/api/tableview/descriptors/tableview.descriptor.mjs +0 -377
  350. package/esm2022/tableview/api/tableview/helpers/files-export.mjs +0 -34
  351. package/esm2022/tableview/api/tableview/helpers/tableview-create.mjs +0 -26
  352. package/esm2022/tableview/api/tableview/helpers/tableview-data-provider-descriptor-convert.mjs +0 -7
  353. package/esm2022/tableview/api/tableview/helpers/tableview-default-actions.mjs +0 -324
  354. package/esm2022/tableview/api/tableview/helpers/tableview-input-builder.mjs +0 -319
  355. package/esm2022/tableview/api/tableview/models/tableview-descriptor-fields-manage-helper.type.mjs +0 -2
  356. package/esm2022/tableview/api/tableview/models/tableview-descriptor-helper.type.mjs +0 -2
  357. package/esm2022/tableview/api/tableview/models/tableview-input.model.mjs +0 -2
  358. package/esm2022/tableview/api/tableview/models/tableview-route.model.mjs +0 -2
  359. package/esm2022/tableview/editor/components/editor/auto-save-status/auto-save-status.component.mjs +0 -82
  360. package/esm2022/tableview/editor/components/editor/form-editor.component.mjs +0 -480
  361. package/esm2022/tableview/editor/components/formly/constants.mjs +0 -2
  362. package/esm2022/tableview/editor/components/formly/fields/formly-field-action/formly-field-action.component.mjs +0 -66
  363. package/esm2022/tableview/editor/components/formly/fields/formly-field-autocomplete/formly-field-autocomplete.component.mjs +0 -47
  364. package/esm2022/tableview/editor/components/formly/fields/formly-field-custom/formly-field-custom.component.mjs +0 -39
  365. package/esm2022/tableview/editor/components/formly/fields/formly-field-datepicker/formly-field-datepicker.component.mjs +0 -165
  366. package/esm2022/tableview/editor/components/formly/fields/formly-field-dropdown/formly-field-dropdown.component.mjs +0 -42
  367. package/esm2022/tableview/editor/components/formly/fields/formly-field-fieldset/formly-field-fieldset.component.mjs +0 -34
  368. package/esm2022/tableview/editor/components/formly/fields/formly-field-input/formly-field-input.component.mjs +0 -211
  369. package/esm2022/tableview/editor/components/formly/fields/formly-field-label/formly-field-label.component.mjs +0 -23
  370. package/esm2022/tableview/editor/components/formly/fields/formly-field-lookup-dialog/formly-field-lookup-dialog.component.mjs +0 -195
  371. package/esm2022/tableview/editor/components/formly/fields/formly-field-table-dialog-form/formly-field-table-dialog-form.component.mjs +0 -239
  372. package/esm2022/tableview/editor/components/formly/fields/formly-field-table-dialog-multiselect/formly-field-table-dialog-multiselect.component.mjs +0 -205
  373. package/esm2022/tableview/editor/components/formly/fields/formly-field-tabs/formly-field-tabs.component.mjs +0 -28
  374. package/esm2022/tableview/editor/components/formly/fields/formly-field-type.abstract.component.mjs +0 -46
  375. package/esm2022/tableview/editor/components/formly/pipes/formly-field-label.pipe.mjs +0 -19
  376. package/esm2022/tableview/editor/components/formly/wrappers/formly-field-no-label-wrapper/formly-field-no-label-wrapper.component.mjs +0 -33
  377. package/esm2022/tableview/editor/components/formly/wrappers/formly-field-wrapper/formly-field-wrapper.component.mjs +0 -59
  378. package/esm2022/tableview/editor/helpers/editor-autosave.mjs +0 -49
  379. package/esm2022/tableview/editor/helpers/editor-field.mjs +0 -39
  380. package/esm2022/tableview/editor/helpers/editor-formly.mjs +0 -388
  381. package/esm2022/tableview/editor/helpers/editor-validators.mjs +0 -25
  382. package/esm2022/tableview/editor/helpers/field-create.mjs +0 -21
  383. package/esm2022/tableview/editor/helpers/formly-config.mjs +0 -260
  384. package/esm2022/tableview/editor/helpers/notification.mjs +0 -11
  385. package/esm2022/tableview/editor/models/editor-auto-save-preview.model.mjs +0 -2
  386. package/esm2022/tableview/editor/models/formly-config.model.mjs +0 -2
  387. package/esm2022/tableview/editor/services/form-editor.service.mjs +0 -96
  388. package/esm2022/tableview/editor/services/formly-config.provider.mjs +0 -31
  389. package/esm2022/tableview/index.mjs +0 -67
  390. package/esm2022/tableview/mediusinc-mng-commons-tableview.mjs +0 -5
  391. package/esm2022/tableview/provide.mjs +0 -105
  392. package/esm2022/tableview/tableview/components/route/tableview-route.component.mjs +0 -15
  393. package/esm2022/tableview/tableview/components/tableview/tableview.component.mjs +0 -59
  394. package/esm2022/tableview/tableview/router/tableview-route-builder.mjs +0 -175
  395. package/esm2022/tableview/tableview/services/tableview-feature-config.token.mjs +0 -3
@@ -1,19 +0,0 @@
1
- import { Injectable, inject } from '@angular/core';
2
- import { ActionExecutorService } from './action-executor.service';
3
- import { RootActionExecutorService } from './root-action-executor.service';
4
- import * as i0 from "@angular/core";
5
- export class ComponentActionExecutorService extends ActionExecutorService {
6
- constructor() {
7
- super(...arguments);
8
- this.rootActionExecutorService = inject(RootActionExecutorService);
9
- }
10
- get instances() {
11
- return this.rootActionExecutorService.instances;
12
- }
13
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: ComponentActionExecutorService, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }
14
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: ComponentActionExecutorService }); }
15
- }
16
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: ComponentActionExecutorService, decorators: [{
17
- type: Injectable
18
- }] });
19
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tcG9uZW50LWFjdGlvbi1leGVjdXRvci5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vdGFibGV2aWV3L3NyYy9hY3Rpb24vc2VydmljZXMvY29tcG9uZW50LWFjdGlvbi1leGVjdXRvci5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxVQUFVLEVBQUUsTUFBTSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBR2pELE9BQU8sRUFBQyxxQkFBcUIsRUFBQyxNQUFNLDJCQUEyQixDQUFDO0FBQ2hFLE9BQU8sRUFBQyx5QkFBeUIsRUFBQyxNQUFNLGdDQUFnQyxDQUFDOztBQUd6RSxNQUFNLE9BQU8sOEJBQStCLFNBQVEscUJBQXFCO0lBRHpFOztRQUVxQiw4QkFBeUIsR0FBRyxNQUFNLENBQUMseUJBQXlCLENBQUMsQ0FBQztLQUtsRjtJQUhHLElBQVcsU0FBUztRQUNoQixPQUFPLElBQUksQ0FBQyx5QkFBeUIsQ0FBQyxTQUFTLENBQUM7SUFDcEQsQ0FBQzsrR0FMUSw4QkFBOEI7bUhBQTlCLDhCQUE4Qjs7NEZBQTlCLDhCQUE4QjtrQkFEMUMsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7SW5qZWN0YWJsZSwgaW5qZWN0fSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHtBY3Rpb25JbnN0YW5jZX0gZnJvbSAnLi4vbW9kZWxzL2V4ZWN1dGlvbi9hY3Rpb24taW5zdGFuY2UubW9kZWwnO1xuaW1wb3J0IHtBY3Rpb25FeGVjdXRvclNlcnZpY2V9IGZyb20gJy4vYWN0aW9uLWV4ZWN1dG9yLnNlcnZpY2UnO1xuaW1wb3J0IHtSb290QWN0aW9uRXhlY3V0b3JTZXJ2aWNlfSBmcm9tICcuL3Jvb3QtYWN0aW9uLWV4ZWN1dG9yLnNlcnZpY2UnO1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgQ29tcG9uZW50QWN0aW9uRXhlY3V0b3JTZXJ2aWNlIGV4dGVuZHMgQWN0aW9uRXhlY3V0b3JTZXJ2aWNlIHtcbiAgICBwcml2YXRlIHJlYWRvbmx5IHJvb3RBY3Rpb25FeGVjdXRvclNlcnZpY2UgPSBpbmplY3QoUm9vdEFjdGlvbkV4ZWN1dG9yU2VydmljZSk7XG5cbiAgICBwdWJsaWMgZ2V0IGluc3RhbmNlcygpOiBBY3Rpb25JbnN0YW5jZTxhbnksIGFueT5bXSB7XG4gICAgICAgIHJldHVybiB0aGlzLnJvb3RBY3Rpb25FeGVjdXRvclNlcnZpY2UuaW5zdGFuY2VzO1xuICAgIH1cbn1cbiJdfQ==
@@ -1,41 +0,0 @@
1
- import { Injectable } from '@angular/core';
2
- import { isObservable } from 'rxjs';
3
- import { DataProviderExecutor, runCreateFromDataProvider, runDeleteFromDataProvider, runFetchFromDataProvider, runFnFromDataProviderOrFallback, runGetAllFromDataProvider, runUpdateFromDataProvider } from '@mediusinc/mng-commons/tableview/api';
4
- import * as i0 from "@angular/core";
5
- export class DefaultDataProviderExecutor extends DataProviderExecutor {
6
- runGetAll(ctx, fallback) {
7
- return fallback ? runFnFromDataProviderOrFallback(ctx, runGetAllFromDataProvider, fallback) : runGetAllFromDataProvider(ctx);
8
- }
9
- runFetch(ctx, fetchReason, fallback) {
10
- const fetchOpts = {
11
- reason: fetchReason,
12
- strict: false
13
- };
14
- if (fallback) {
15
- const dataProviderExec = runFetchFromDataProvider(ctx, fetchOpts);
16
- if (isObservable(dataProviderExec)) {
17
- return dataProviderExec;
18
- }
19
- return fallback;
20
- }
21
- else {
22
- return runFetchFromDataProvider(ctx, fetchOpts);
23
- }
24
- // return fallback ? runFnFromDataProviderOrFallback(ctx, runFetchFromDataProvider, fallback) : runFetchFromDataProvider(ctx);
25
- }
26
- runCreate(ctx, fallback) {
27
- return fallback ? runFnFromDataProviderOrFallback(ctx, runCreateFromDataProvider, fallback) : runCreateFromDataProvider(ctx);
28
- }
29
- runUpdate(ctx, fallback) {
30
- return fallback ? runFnFromDataProviderOrFallback(ctx, runUpdateFromDataProvider, fallback) : runUpdateFromDataProvider(ctx);
31
- }
32
- runDelete(ctx, fallback) {
33
- return fallback ? runFnFromDataProviderOrFallback(ctx, runDeleteFromDataProvider, fallback) : runDeleteFromDataProvider(ctx);
34
- }
35
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: DefaultDataProviderExecutor, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }
36
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: DefaultDataProviderExecutor }); }
37
- }
38
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: DefaultDataProviderExecutor, decorators: [{
39
- type: Injectable
40
- }] });
41
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YS1wcm92aWRlci1leGVjdXRvci5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vdGFibGV2aWV3L3NyYy9hY3Rpb24vc2VydmljZXMvZGF0YS1wcm92aWRlci1leGVjdXRvci5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxVQUFVLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFFekMsT0FBTyxFQUFhLFlBQVksRUFBQyxNQUFNLE1BQU0sQ0FBQztBQUc5QyxPQUFPLEVBQ0gsb0JBQW9CLEVBR3BCLHlCQUF5QixFQUN6Qix5QkFBeUIsRUFDekIsd0JBQXdCLEVBQ3hCLCtCQUErQixFQUMvQix5QkFBeUIsRUFDekIseUJBQXlCLEVBQzVCLE1BQU0sc0NBQXNDLENBQUM7O0FBRzlDLE1BQU0sT0FBTywyQkFBNEIsU0FBUSxvQkFBb0I7SUFPakQsU0FBUyxDQUNyQixHQUFrRCxFQUNsRCxRQUEyQztRQUUzQyxPQUFPLFFBQVEsQ0FBQyxDQUFDLENBQUMsK0JBQStCLENBQUMsR0FBRyxFQUFFLHlCQUF5QixFQUFFLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyx5QkFBeUIsQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUNqSSxDQUFDO0lBZ0JlLFFBQVEsQ0FDcEIsR0FBa0QsRUFDbEQsV0FBMkQsRUFDM0QsUUFBcUM7UUFFckMsTUFBTSxTQUFTLEdBQUc7WUFDZCxNQUFNLEVBQUUsV0FBVztZQUNuQixNQUFNLEVBQUUsS0FBSztTQUNoQixDQUFDO1FBQ0YsSUFBSSxRQUFRLEVBQUUsQ0FBQztZQUNYLE1BQU0sZ0JBQWdCLEdBQUcsd0JBQXdCLENBQUMsR0FBRyxFQUFFLFNBQVMsQ0FBQyxDQUFDO1lBQ2xFLElBQUksWUFBWSxDQUFDLGdCQUFnQixDQUFDLEVBQUUsQ0FBQztnQkFDakMsT0FBTyxnQkFBZ0IsQ0FBQztZQUM1QixDQUFDO1lBQ0QsT0FBTyxRQUFRLENBQUM7UUFDcEIsQ0FBQzthQUFNLENBQUM7WUFDSixPQUFPLHdCQUF3QixDQUFDLEdBQUcsRUFBRSxTQUFTLENBQUMsQ0FBQztRQUNwRCxDQUFDO1FBQ0QsOEhBQThIO0lBQ2xJLENBQUM7SUFLZSxTQUFTLENBQ3JCLEdBQWtELEVBQ2xELFFBQXFDO1FBRXJDLE9BQU8sUUFBUSxDQUFDLENBQUMsQ0FBQywrQkFBK0IsQ0FBQyxHQUFHLEVBQUUseUJBQXlCLEVBQUUsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDLHlCQUF5QixDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ2pJLENBQUM7SUFLZSxTQUFTLENBQ3JCLEdBQWtELEVBQ2xELFFBQXFDO1FBRXJDLE9BQU8sUUFBUSxDQUFDLENBQUMsQ0FBQywrQkFBK0IsQ0FBQyxHQUFHLEVBQUUseUJBQXlCLEVBQUUsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDLHlCQUF5QixDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ2pJLENBQUM7SUFLZSxTQUFTLENBQ3JCLEdBQWtELEVBQ2xELFFBQXFDO1FBRXJDLE9BQU8sUUFBUSxDQUFDLENBQUMsQ0FBQywrQkFBK0IsQ0FBQyxHQUFHLEVBQUUseUJBQXlCLEVBQUUsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDLHlCQUF5QixDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ2pJLENBQUM7K0dBN0VRLDJCQUEyQjttSEFBM0IsMkJBQTJCOzs0RkFBM0IsMkJBQTJCO2tCQUR2QyxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtJbmplY3RhYmxlfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHtPYnNlcnZhYmxlLCBpc09ic2VydmFibGV9IGZyb20gJ3J4anMnO1xuXG5pbXBvcnQge0RhdGFMaXN0UmVzdWx0LCBOdWxsYWJsZX0gZnJvbSAnQG1lZGl1c2luYy9tbmctY29tbW9ucy9jb3JlJztcbmltcG9ydCB7XG4gICAgRGF0YVByb3ZpZGVyRXhlY3V0b3IsXG4gICAgSUFjdGlvbkNvbnRleHQsXG4gICAgUnVuRmV0Y2hGcm9tRGF0YVByb3ZpZGVyUmVhc29uVHlwZSxcbiAgICBydW5DcmVhdGVGcm9tRGF0YVByb3ZpZGVyLFxuICAgIHJ1bkRlbGV0ZUZyb21EYXRhUHJvdmlkZXIsXG4gICAgcnVuRmV0Y2hGcm9tRGF0YVByb3ZpZGVyLFxuICAgIHJ1bkZuRnJvbURhdGFQcm92aWRlck9yRmFsbGJhY2ssXG4gICAgcnVuR2V0QWxsRnJvbURhdGFQcm92aWRlcixcbiAgICBydW5VcGRhdGVGcm9tRGF0YVByb3ZpZGVyXG59IGZyb20gJ0BtZWRpdXNpbmMvbW5nLWNvbW1vbnMvdGFibGV2aWV3L2FwaSc7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBEZWZhdWx0RGF0YVByb3ZpZGVyRXhlY3V0b3IgZXh0ZW5kcyBEYXRhUHJvdmlkZXJFeGVjdXRvciB7XG4gICAgcHVibGljIG92ZXJyaWRlIHJ1bkdldEFsbDxJdGVtLCBQYXJhbWV0ZXJzSXRlbSwgU2VydmljZT4oY3R4OiBJQWN0aW9uQ29udGV4dDxJdGVtLCBQYXJhbWV0ZXJzSXRlbSwgU2VydmljZT4pOiBPYnNlcnZhYmxlPERhdGFMaXN0UmVzdWx0PEl0ZW0+PiB8IG51bGw7XG4gICAgcHVibGljIG92ZXJyaWRlIHJ1bkdldEFsbDxJdGVtLCBQYXJhbWV0ZXJzSXRlbSwgU2VydmljZT4oXG4gICAgICAgIGN0eDogSUFjdGlvbkNvbnRleHQ8SXRlbSwgUGFyYW1ldGVyc0l0ZW0sIFNlcnZpY2U+LFxuICAgICAgICBmYWxsYmFjazogT2JzZXJ2YWJsZTxEYXRhTGlzdFJlc3VsdDxJdGVtPj5cbiAgICApOiBPYnNlcnZhYmxlPERhdGFMaXN0UmVzdWx0PEl0ZW0+PjtcbiAgICBwdWJsaWMgb3ZlcnJpZGUgcnVuR2V0QWxsPEl0ZW0sIFBhcmFtZXRlcnNJdGVtLCBTZXJ2aWNlPihjdHg6IElBY3Rpb25Db250ZXh0PEl0ZW0sIFBhcmFtZXRlcnNJdGVtLCBTZXJ2aWNlPiwgZmFsbGJhY2s6IHVuZGVmaW5lZCk6IE9ic2VydmFibGU8RGF0YUxpc3RSZXN1bHQ8SXRlbT4+IHwgbnVsbDtcbiAgICBwdWJsaWMgb3ZlcnJpZGUgcnVuR2V0QWxsPEl0ZW0sIFBhcmFtZXRlcnNJdGVtLCBTZXJ2aWNlPihcbiAgICAgICAgY3R4OiBJQWN0aW9uQ29udGV4dDxJdGVtLCBQYXJhbWV0ZXJzSXRlbSwgU2VydmljZT4sXG4gICAgICAgIGZhbGxiYWNrPzogT2JzZXJ2YWJsZTxEYXRhTGlzdFJlc3VsdDxJdGVtPj5cbiAgICApOiBPYnNlcnZhYmxlPERhdGFMaXN0UmVzdWx0PEl0ZW0+PiB8IG51bGwge1xuICAgICAgICByZXR1cm4gZmFsbGJhY2sgPyBydW5GbkZyb21EYXRhUHJvdmlkZXJPckZhbGxiYWNrKGN0eCwgcnVuR2V0QWxsRnJvbURhdGFQcm92aWRlciwgZmFsbGJhY2spIDogcnVuR2V0QWxsRnJvbURhdGFQcm92aWRlcihjdHgpO1xuICAgIH1cblxuICAgIHB1YmxpYyBvdmVycmlkZSBydW5GZXRjaDxJdGVtLCBQYXJhbWV0ZXJzSXRlbSwgU2VydmljZT4oXG4gICAgICAgIGN0eDogSUFjdGlvbkNvbnRleHQ8SXRlbSwgUGFyYW1ldGVyc0l0ZW0sIFNlcnZpY2U+LFxuICAgICAgICBmZXRjaFJlYXNvbj86IFJ1bkZldGNoRnJvbURhdGFQcm92aWRlclJlYXNvblR5cGVcbiAgICApOiBPYnNlcnZhYmxlPEl0ZW0+IHwgbnVsbDtcbiAgICBwdWJsaWMgb3ZlcnJpZGUgcnVuRmV0Y2g8SXRlbSwgUGFyYW1ldGVyc0l0ZW0sIFNlcnZpY2U+KFxuICAgICAgICBjdHg6IElBY3Rpb25Db250ZXh0PEl0ZW0sIFBhcmFtZXRlcnNJdGVtLCBTZXJ2aWNlPixcbiAgICAgICAgZmV0Y2hSZWFzb246IFJ1bkZldGNoRnJvbURhdGFQcm92aWRlclJlYXNvblR5cGUgfCB1bmRlZmluZWQsXG4gICAgICAgIGZhbGxiYWNrOiBPYnNlcnZhYmxlPE51bGxhYmxlPEl0ZW0+PlxuICAgICk6IE9ic2VydmFibGU8TnVsbGFibGU8SXRlbT4+O1xuICAgIHB1YmxpYyBvdmVycmlkZSBydW5GZXRjaDxJdGVtLCBQYXJhbWV0ZXJzSXRlbSwgU2VydmljZT4oXG4gICAgICAgIGN0eDogSUFjdGlvbkNvbnRleHQ8SXRlbSwgUGFyYW1ldGVyc0l0ZW0sIFNlcnZpY2U+LFxuICAgICAgICBmZXRjaFJlYXNvbjogUnVuRmV0Y2hGcm9tRGF0YVByb3ZpZGVyUmVhc29uVHlwZSB8IHVuZGVmaW5lZCxcbiAgICAgICAgZmFsbGJhY2s6IHVuZGVmaW5lZFxuICAgICk6IE9ic2VydmFibGU8TnVsbGFibGU8SXRlbT4+IHwgbnVsbDtcbiAgICBwdWJsaWMgb3ZlcnJpZGUgcnVuRmV0Y2g8SXRlbSwgUGFyYW1ldGVyc0l0ZW0sIFNlcnZpY2U+KFxuICAgICAgICBjdHg6IElBY3Rpb25Db250ZXh0PEl0ZW0sIFBhcmFtZXRlcnNJdGVtLCBTZXJ2aWNlPixcbiAgICAgICAgZmV0Y2hSZWFzb246IFJ1bkZldGNoRnJvbURhdGFQcm92aWRlclJlYXNvblR5cGUgfCB1bmRlZmluZWQsXG4gICAgICAgIGZhbGxiYWNrPzogT2JzZXJ2YWJsZTxOdWxsYWJsZTxJdGVtPj5cbiAgICApOiBPYnNlcnZhYmxlPE51bGxhYmxlPEl0ZW0+PiB8IG51bGwge1xuICAgICAgICBjb25zdCBmZXRjaE9wdHMgPSB7XG4gICAgICAgICAgICByZWFzb246IGZldGNoUmVhc29uLFxuICAgICAgICAgICAgc3RyaWN0OiBmYWxzZVxuICAgICAgICB9O1xuICAgICAgICBpZiAoZmFsbGJhY2spIHtcbiAgICAgICAgICAgIGNvbnN0IGRhdGFQcm92aWRlckV4ZWMgPSBydW5GZXRjaEZyb21EYXRhUHJvdmlkZXIoY3R4LCBmZXRjaE9wdHMpO1xuICAgICAgICAgICAgaWYgKGlzT2JzZXJ2YWJsZShkYXRhUHJvdmlkZXJFeGVjKSkge1xuICAgICAgICAgICAgICAgIHJldHVybiBkYXRhUHJvdmlkZXJFeGVjO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcmV0dXJuIGZhbGxiYWNrO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgcmV0dXJuIHJ1bkZldGNoRnJvbURhdGFQcm92aWRlcihjdHgsIGZldGNoT3B0cyk7XG4gICAgICAgIH1cbiAgICAgICAgLy8gcmV0dXJuIGZhbGxiYWNrID8gcnVuRm5Gcm9tRGF0YVByb3ZpZGVyT3JGYWxsYmFjayhjdHgsIHJ1bkZldGNoRnJvbURhdGFQcm92aWRlciwgZmFsbGJhY2spIDogcnVuRmV0Y2hGcm9tRGF0YVByb3ZpZGVyKGN0eCk7XG4gICAgfVxuXG4gICAgcHVibGljIG92ZXJyaWRlIHJ1bkNyZWF0ZTxJdGVtLCBQYXJhbWV0ZXJzSXRlbSwgU2VydmljZT4oY3R4OiBJQWN0aW9uQ29udGV4dDxJdGVtLCBQYXJhbWV0ZXJzSXRlbSwgU2VydmljZT4pOiBPYnNlcnZhYmxlPEl0ZW0+IHwgbnVsbDtcbiAgICBwdWJsaWMgb3ZlcnJpZGUgcnVuQ3JlYXRlPEl0ZW0sIFBhcmFtZXRlcnNJdGVtLCBTZXJ2aWNlPihjdHg6IElBY3Rpb25Db250ZXh0PEl0ZW0sIFBhcmFtZXRlcnNJdGVtLCBTZXJ2aWNlPiwgZmFsbGJhY2s6IE9ic2VydmFibGU8TnVsbGFibGU8SXRlbT4+KTogT2JzZXJ2YWJsZTxOdWxsYWJsZTxJdGVtPj47XG4gICAgcHVibGljIG92ZXJyaWRlIHJ1bkNyZWF0ZTxJdGVtLCBQYXJhbWV0ZXJzSXRlbSwgU2VydmljZT4oY3R4OiBJQWN0aW9uQ29udGV4dDxJdGVtLCBQYXJhbWV0ZXJzSXRlbSwgU2VydmljZT4sIGZhbGxiYWNrOiB1bmRlZmluZWQpOiBPYnNlcnZhYmxlPE51bGxhYmxlPEl0ZW0+PiB8IG51bGw7XG4gICAgcHVibGljIG92ZXJyaWRlIHJ1bkNyZWF0ZTxJdGVtLCBQYXJhbWV0ZXJzSXRlbSwgU2VydmljZT4oXG4gICAgICAgIGN0eDogSUFjdGlvbkNvbnRleHQ8SXRlbSwgUGFyYW1ldGVyc0l0ZW0sIFNlcnZpY2U+LFxuICAgICAgICBmYWxsYmFjaz86IE9ic2VydmFibGU8TnVsbGFibGU8SXRlbT4+XG4gICAgKTogT2JzZXJ2YWJsZTxOdWxsYWJsZTxJdGVtPj4gfCBudWxsIHtcbiAgICAgICAgcmV0dXJuIGZhbGxiYWNrID8gcnVuRm5Gcm9tRGF0YVByb3ZpZGVyT3JGYWxsYmFjayhjdHgsIHJ1bkNyZWF0ZUZyb21EYXRhUHJvdmlkZXIsIGZhbGxiYWNrKSA6IHJ1bkNyZWF0ZUZyb21EYXRhUHJvdmlkZXIoY3R4KTtcbiAgICB9XG5cbiAgICBwdWJsaWMgb3ZlcnJpZGUgcnVuVXBkYXRlPEl0ZW0sIFBhcmFtZXRlcnNJdGVtLCBTZXJ2aWNlPihjdHg6IElBY3Rpb25Db250ZXh0PEl0ZW0sIFBhcmFtZXRlcnNJdGVtLCBTZXJ2aWNlPik6IE9ic2VydmFibGU8SXRlbT4gfCBudWxsO1xuICAgIHB1YmxpYyBvdmVycmlkZSBydW5VcGRhdGU8SXRlbSwgUGFyYW1ldGVyc0l0ZW0sIFNlcnZpY2U+KGN0eDogSUFjdGlvbkNvbnRleHQ8SXRlbSwgUGFyYW1ldGVyc0l0ZW0sIFNlcnZpY2U+LCBmYWxsYmFjazogT2JzZXJ2YWJsZTxOdWxsYWJsZTxJdGVtPj4pOiBPYnNlcnZhYmxlPE51bGxhYmxlPEl0ZW0+PjtcbiAgICBwdWJsaWMgb3ZlcnJpZGUgcnVuVXBkYXRlPEl0ZW0sIFBhcmFtZXRlcnNJdGVtLCBTZXJ2aWNlPihjdHg6IElBY3Rpb25Db250ZXh0PEl0ZW0sIFBhcmFtZXRlcnNJdGVtLCBTZXJ2aWNlPiwgZmFsbGJhY2s6IHVuZGVmaW5lZCk6IE9ic2VydmFibGU8TnVsbGFibGU8SXRlbT4+IHwgbnVsbDtcbiAgICBwdWJsaWMgb3ZlcnJpZGUgcnVuVXBkYXRlPEl0ZW0sIFBhcmFtZXRlcnNJdGVtLCBTZXJ2aWNlPihcbiAgICAgICAgY3R4OiBJQWN0aW9uQ29udGV4dDxJdGVtLCBQYXJhbWV0ZXJzSXRlbSwgU2VydmljZT4sXG4gICAgICAgIGZhbGxiYWNrPzogT2JzZXJ2YWJsZTxOdWxsYWJsZTxJdGVtPj5cbiAgICApOiBPYnNlcnZhYmxlPE51bGxhYmxlPEl0ZW0+PiB8IG51bGwge1xuICAgICAgICByZXR1cm4gZmFsbGJhY2sgPyBydW5GbkZyb21EYXRhUHJvdmlkZXJPckZhbGxiYWNrKGN0eCwgcnVuVXBkYXRlRnJvbURhdGFQcm92aWRlciwgZmFsbGJhY2spIDogcnVuVXBkYXRlRnJvbURhdGFQcm92aWRlcihjdHgpO1xuICAgIH1cblxuICAgIHB1YmxpYyBvdmVycmlkZSBydW5EZWxldGU8SXRlbSwgUGFyYW1ldGVyc0l0ZW0sIFNlcnZpY2U+KGN0eDogSUFjdGlvbkNvbnRleHQ8SXRlbSwgUGFyYW1ldGVyc0l0ZW0sIFNlcnZpY2U+KTogT2JzZXJ2YWJsZTxOdWxsYWJsZTxJdGVtPj4gfCBudWxsO1xuICAgIHB1YmxpYyBvdmVycmlkZSBydW5EZWxldGU8SXRlbSwgUGFyYW1ldGVyc0l0ZW0sIFNlcnZpY2U+KGN0eDogSUFjdGlvbkNvbnRleHQ8SXRlbSwgUGFyYW1ldGVyc0l0ZW0sIFNlcnZpY2U+LCBmYWxsYmFjazogT2JzZXJ2YWJsZTxOdWxsYWJsZTxJdGVtPj4pOiBPYnNlcnZhYmxlPE51bGxhYmxlPEl0ZW0+PjtcbiAgICBwdWJsaWMgb3ZlcnJpZGUgcnVuRGVsZXRlPEl0ZW0sIFBhcmFtZXRlcnNJdGVtLCBTZXJ2aWNlPihjdHg6IElBY3Rpb25Db250ZXh0PEl0ZW0sIFBhcmFtZXRlcnNJdGVtLCBTZXJ2aWNlPiwgZmFsbGJhY2s6IHVuZGVmaW5lZCk6IE9ic2VydmFibGU8TnVsbGFibGU8SXRlbT4+IHwgbnVsbDtcbiAgICBwdWJsaWMgb3ZlcnJpZGUgcnVuRGVsZXRlPEl0ZW0sIFBhcmFtZXRlcnNJdGVtLCBTZXJ2aWNlPihcbiAgICAgICAgY3R4OiBJQWN0aW9uQ29udGV4dDxJdGVtLCBQYXJhbWV0ZXJzSXRlbSwgU2VydmljZT4sXG4gICAgICAgIGZhbGxiYWNrPzogT2JzZXJ2YWJsZTxOdWxsYWJsZTxJdGVtPj5cbiAgICApOiBPYnNlcnZhYmxlPE51bGxhYmxlPEl0ZW0+PiB8IG51bGwge1xuICAgICAgICByZXR1cm4gZmFsbGJhY2sgPyBydW5GbkZyb21EYXRhUHJvdmlkZXJPckZhbGxiYWNrKGN0eCwgcnVuRGVsZXRlRnJvbURhdGFQcm92aWRlciwgZmFsbGJhY2spIDogcnVuRGVsZXRlRnJvbURhdGFQcm92aWRlcihjdHgpO1xuICAgIH1cbn1cbiJdfQ==
@@ -1,53 +0,0 @@
1
- import { Location } from '@angular/common';
2
- import { Injectable } from '@angular/core';
3
- import { takeUntilDestroyed } from '@angular/core/rxjs-interop';
4
- import { NavigationEnd, Router } from '@angular/router';
5
- import * as i0 from "@angular/core";
6
- import * as i1 from "@angular/router";
7
- import * as i2 from "@angular/common";
8
- export class NavigationService {
9
- constructor(router, location) {
10
- this.router = router;
11
- this.location = location;
12
- this.history = [];
13
- this.router.events.pipe(takeUntilDestroyed()).subscribe(event => {
14
- if (event instanceof NavigationEnd) {
15
- this.history.push(event.urlAfterRedirects);
16
- }
17
- });
18
- }
19
- getCurrentLocationFromHistory() {
20
- if (this.history.length > 0) {
21
- return this.history[this.history.length - 1];
22
- }
23
- else {
24
- return null;
25
- }
26
- }
27
- getCurrentLocationFromUrl() {
28
- return this.location.path(true);
29
- }
30
- getPreviousLocationFromHistory() {
31
- if (this.history.length > 1) {
32
- return this.history[this.history.length - 2];
33
- }
34
- else {
35
- return null;
36
- }
37
- }
38
- back() {
39
- this.history.pop();
40
- if (this.history.length > 0) {
41
- this.location.back();
42
- }
43
- else {
44
- this.router.navigateByUrl('/');
45
- }
46
- }
47
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: NavigationService, deps: [{ token: i1.Router }, { token: i2.Location }], target: i0.ɵɵFactoryTarget.Injectable }); }
48
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: NavigationService }); }
49
- }
50
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: NavigationService, decorators: [{
51
- type: Injectable
52
- }], ctorParameters: () => [{ type: i1.Router }, { type: i2.Location }] });
53
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmF2aWdhdGlvbi5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vdGFibGV2aWV3L3NyYy9hY3Rpb24vc2VydmljZXMvbmF2aWdhdGlvbi5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxRQUFRLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUN6QyxPQUFPLEVBQUMsVUFBVSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBQyxrQkFBa0IsRUFBQyxNQUFNLDRCQUE0QixDQUFDO0FBQzlELE9BQU8sRUFBQyxhQUFhLEVBQUUsTUFBTSxFQUFDLE1BQU0saUJBQWlCLENBQUM7Ozs7QUFHdEQsTUFBTSxPQUFPLGlCQUFpQjtJQUcxQixZQUNZLE1BQWMsRUFDZCxRQUFrQjtRQURsQixXQUFNLEdBQU4sTUFBTSxDQUFRO1FBQ2QsYUFBUSxHQUFSLFFBQVEsQ0FBVTtRQUp0QixZQUFPLEdBQWtCLEVBQUUsQ0FBQztRQU1oQyxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsa0JBQWtCLEVBQUUsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRTtZQUM1RCxJQUFJLEtBQUssWUFBWSxhQUFhLEVBQUUsQ0FBQztnQkFDakMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLGlCQUFpQixDQUFDLENBQUM7WUFDL0MsQ0FBQztRQUNMLENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUVNLDZCQUE2QjtRQUNoQyxJQUFJLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRSxDQUFDO1lBQzFCLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsQ0FBQztRQUNqRCxDQUFDO2FBQU0sQ0FBQztZQUNKLE9BQU8sSUFBSSxDQUFDO1FBQ2hCLENBQUM7SUFDTCxDQUFDO0lBRU0seUJBQXlCO1FBQzVCLE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDcEMsQ0FBQztJQUVNLDhCQUE4QjtRQUNqQyxJQUFJLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRSxDQUFDO1lBQzFCLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsQ0FBQztRQUNqRCxDQUFDO2FBQU0sQ0FBQztZQUNKLE9BQU8sSUFBSSxDQUFDO1FBQ2hCLENBQUM7SUFDTCxDQUFDO0lBRU0sSUFBSTtRQUNQLElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRyxFQUFFLENBQUM7UUFDbkIsSUFBSSxJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUUsQ0FBQztZQUMxQixJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksRUFBRSxDQUFDO1FBQ3pCLENBQUM7YUFBTSxDQUFDO1lBQ0osSUFBSSxDQUFDLE1BQU0sQ0FBQyxhQUFhLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDbkMsQ0FBQztJQUNMLENBQUM7K0dBekNRLGlCQUFpQjttSEFBakIsaUJBQWlCOzs0RkFBakIsaUJBQWlCO2tCQUQ3QixVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtMb2NhdGlvbn0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7SW5qZWN0YWJsZX0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge3Rha2VVbnRpbERlc3Ryb3llZH0gZnJvbSAnQGFuZ3VsYXIvY29yZS9yeGpzLWludGVyb3AnO1xuaW1wb3J0IHtOYXZpZ2F0aW9uRW5kLCBSb3V0ZXJ9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBOYXZpZ2F0aW9uU2VydmljZSB7XG4gICAgcHJpdmF0ZSBoaXN0b3J5OiBBcnJheTxzdHJpbmc+ID0gW107XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHJpdmF0ZSByb3V0ZXI6IFJvdXRlcixcbiAgICAgICAgcHJpdmF0ZSBsb2NhdGlvbjogTG9jYXRpb25cbiAgICApIHtcbiAgICAgICAgdGhpcy5yb3V0ZXIuZXZlbnRzLnBpcGUodGFrZVVudGlsRGVzdHJveWVkKCkpLnN1YnNjcmliZShldmVudCA9PiB7XG4gICAgICAgICAgICBpZiAoZXZlbnQgaW5zdGFuY2VvZiBOYXZpZ2F0aW9uRW5kKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5oaXN0b3J5LnB1c2goZXZlbnQudXJsQWZ0ZXJSZWRpcmVjdHMpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0Q3VycmVudExvY2F0aW9uRnJvbUhpc3RvcnkoKTogc3RyaW5nIHwgbnVsbCB7XG4gICAgICAgIGlmICh0aGlzLmhpc3RvcnkubGVuZ3RoID4gMCkge1xuICAgICAgICAgICAgcmV0dXJuIHRoaXMuaGlzdG9yeVt0aGlzLmhpc3RvcnkubGVuZ3RoIC0gMV07XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICByZXR1cm4gbnVsbDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHB1YmxpYyBnZXRDdXJyZW50TG9jYXRpb25Gcm9tVXJsKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5sb2NhdGlvbi5wYXRoKHRydWUpO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXRQcmV2aW91c0xvY2F0aW9uRnJvbUhpc3RvcnkoKTogc3RyaW5nIHwgbnVsbCB7XG4gICAgICAgIGlmICh0aGlzLmhpc3RvcnkubGVuZ3RoID4gMSkge1xuICAgICAgICAgICAgcmV0dXJuIHRoaXMuaGlzdG9yeVt0aGlzLmhpc3RvcnkubGVuZ3RoIC0gMl07XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICByZXR1cm4gbnVsbDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHB1YmxpYyBiYWNrKCk6IHZvaWQge1xuICAgICAgICB0aGlzLmhpc3RvcnkucG9wKCk7XG4gICAgICAgIGlmICh0aGlzLmhpc3RvcnkubGVuZ3RoID4gMCkge1xuICAgICAgICAgICAgdGhpcy5sb2NhdGlvbi5iYWNrKCk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZUJ5VXJsKCcvJyk7XG4gICAgICAgIH1cbiAgICB9XG59XG4iXX0=
@@ -1,9 +0,0 @@
1
- import { ActionExecutorService } from '../action-executor.service';
2
- import { ComponentActionExecutorService } from '../component-action-executor.service';
3
- export function provideActionExecutor() {
4
- return {
5
- provide: ActionExecutorService,
6
- useClass: ComponentActionExecutorService
7
- };
8
- }
9
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvdmlkZS1hY3Rpb24tZXhlY3V0b3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi90YWJsZXZpZXcvc3JjL2FjdGlvbi9zZXJ2aWNlcy9wcm92aWRlcnMvcHJvdmlkZS1hY3Rpb24tZXhlY3V0b3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsT0FBTyxFQUFDLHFCQUFxQixFQUFDLE1BQU0sNEJBQTRCLENBQUM7QUFDakUsT0FBTyxFQUFDLDhCQUE4QixFQUFDLE1BQU0sc0NBQXNDLENBQUM7QUFFcEYsTUFBTSxVQUFVLHFCQUFxQjtJQUNqQyxPQUFPO1FBQ0gsT0FBTyxFQUFFLHFCQUFxQjtRQUM5QixRQUFRLEVBQUUsOEJBQThCO0tBQzNDLENBQUM7QUFDTixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtQcm92aWRlcn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7QWN0aW9uRXhlY3V0b3JTZXJ2aWNlfSBmcm9tICcuLi9hY3Rpb24tZXhlY3V0b3Iuc2VydmljZSc7XG5pbXBvcnQge0NvbXBvbmVudEFjdGlvbkV4ZWN1dG9yU2VydmljZX0gZnJvbSAnLi4vY29tcG9uZW50LWFjdGlvbi1leGVjdXRvci5zZXJ2aWNlJztcblxuZXhwb3J0IGZ1bmN0aW9uIHByb3ZpZGVBY3Rpb25FeGVjdXRvcigpOiBQcm92aWRlciB7XG4gICAgcmV0dXJuIHtcbiAgICAgICAgcHJvdmlkZTogQWN0aW9uRXhlY3V0b3JTZXJ2aWNlLFxuICAgICAgICB1c2VDbGFzczogQ29tcG9uZW50QWN0aW9uRXhlY3V0b3JTZXJ2aWNlXG4gICAgfTtcbn1cbiJdfQ==
@@ -1,17 +0,0 @@
1
- import { Injector } from '@angular/core';
2
- import { ViewContainer } from '../view-container.service';
3
- export function provideViewContainer(provideParentIfPresent = true) {
4
- return {
5
- provide: ViewContainer,
6
- useFactory: (injector) => {
7
- if (provideParentIfPresent) {
8
- return injector.get(ViewContainer, null, { optional: true, skipSelf: true }) ?? new ViewContainer();
9
- }
10
- else {
11
- return new ViewContainer();
12
- }
13
- },
14
- deps: [Injector]
15
- };
16
- }
17
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvdmlkZS12aWV3LWNvbnRhaW5lci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3RhYmxldmlldy9zcmMvYWN0aW9uL3NlcnZpY2VzL3Byb3ZpZGVycy9wcm92aWRlLXZpZXctY29udGFpbmVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxRQUFRLEVBQVcsTUFBTSxlQUFlLENBQUM7QUFFakQsT0FBTyxFQUFDLGFBQWEsRUFBQyxNQUFNLDJCQUEyQixDQUFDO0FBRXhELE1BQU0sVUFBVSxvQkFBb0IsQ0FBQyxzQkFBc0IsR0FBRyxJQUFJO0lBQzlELE9BQU87UUFDSCxPQUFPLEVBQUUsYUFBYTtRQUN0QixVQUFVLEVBQUUsQ0FBQyxRQUFrQixFQUFFLEVBQUU7WUFDL0IsSUFBSSxzQkFBc0IsRUFBRSxDQUFDO2dCQUN6QixPQUFPLFFBQVEsQ0FBQyxHQUFHLENBQUMsYUFBYSxFQUFFLElBQUksRUFBRSxFQUFDLFFBQVEsRUFBRSxJQUFJLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBQyxDQUFDLElBQUksSUFBSSxhQUFhLEVBQUUsQ0FBQztZQUN0RyxDQUFDO2lCQUFNLENBQUM7Z0JBQ0osT0FBTyxJQUFJLGFBQWEsRUFBRSxDQUFDO1lBQy9CLENBQUM7UUFDTCxDQUFDO1FBQ0QsSUFBSSxFQUFFLENBQUMsUUFBUSxDQUFDO0tBQ25CLENBQUM7QUFDTixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtJbmplY3RvciwgUHJvdmlkZXJ9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQge1ZpZXdDb250YWluZXJ9IGZyb20gJy4uL3ZpZXctY29udGFpbmVyLnNlcnZpY2UnO1xuXG5leHBvcnQgZnVuY3Rpb24gcHJvdmlkZVZpZXdDb250YWluZXIocHJvdmlkZVBhcmVudElmUHJlc2VudCA9IHRydWUpOiBQcm92aWRlciB7XG4gICAgcmV0dXJuIHtcbiAgICAgICAgcHJvdmlkZTogVmlld0NvbnRhaW5lcixcbiAgICAgICAgdXNlRmFjdG9yeTogKGluamVjdG9yOiBJbmplY3RvcikgPT4ge1xuICAgICAgICAgICAgaWYgKHByb3ZpZGVQYXJlbnRJZlByZXNlbnQpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gaW5qZWN0b3IuZ2V0KFZpZXdDb250YWluZXIsIG51bGwsIHtvcHRpb25hbDogdHJ1ZSwgc2tpcFNlbGY6IHRydWV9KSA/PyBuZXcgVmlld0NvbnRhaW5lcigpO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gbmV3IFZpZXdDb250YWluZXIoKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSxcbiAgICAgICAgZGVwczogW0luamVjdG9yXVxuICAgIH07XG59XG4iXX0=
@@ -1,18 +0,0 @@
1
- import { Injectable } from '@angular/core';
2
- import { ActionExecutorService } from './action-executor.service';
3
- import * as i0 from "@angular/core";
4
- export class RootActionExecutorService extends ActionExecutorService {
5
- constructor() {
6
- super(...arguments);
7
- this._instances = [];
8
- }
9
- get instances() {
10
- return this._instances;
11
- }
12
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: RootActionExecutorService, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }
13
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: RootActionExecutorService }); }
14
- }
15
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: RootActionExecutorService, decorators: [{
16
- type: Injectable
17
- }] });
18
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm9vdC1hY3Rpb24tZXhlY3V0b3Iuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3RhYmxldmlldy9zcmMvYWN0aW9uL3NlcnZpY2VzL3Jvb3QtYWN0aW9uLWV4ZWN1dG9yLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFVBQVUsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUd6QyxPQUFPLEVBQUMscUJBQXFCLEVBQUMsTUFBTSwyQkFBMkIsQ0FBQzs7QUFHaEUsTUFBTSxPQUFPLHlCQUEwQixTQUFRLHFCQUFxQjtJQURwRTs7UUFFcUIsZUFBVSxHQUErQixFQUFFLENBQUM7S0FLaEU7SUFIRyxJQUFXLFNBQVM7UUFDaEIsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDO0lBQzNCLENBQUM7K0dBTFEseUJBQXlCO21IQUF6Qix5QkFBeUI7OzRGQUF6Qix5QkFBeUI7a0JBRHJDLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0luamVjdGFibGV9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQge0FjdGlvbkluc3RhbmNlfSBmcm9tICcuLi9tb2RlbHMvZXhlY3V0aW9uL2FjdGlvbi1pbnN0YW5jZS5tb2RlbCc7XG5pbXBvcnQge0FjdGlvbkV4ZWN1dG9yU2VydmljZX0gZnJvbSAnLi9hY3Rpb24tZXhlY3V0b3Iuc2VydmljZSc7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBSb290QWN0aW9uRXhlY3V0b3JTZXJ2aWNlIGV4dGVuZHMgQWN0aW9uRXhlY3V0b3JTZXJ2aWNlIHtcbiAgICBwcml2YXRlIHJlYWRvbmx5IF9pbnN0YW5jZXM6IEFjdGlvbkluc3RhbmNlPGFueSwgYW55PltdID0gW107XG5cbiAgICBwdWJsaWMgZ2V0IGluc3RhbmNlcygpOiBBY3Rpb25JbnN0YW5jZTxhbnksIGFueT5bXSB7XG4gICAgICAgIHJldHVybiB0aGlzLl9pbnN0YW5jZXM7XG4gICAgfVxufVxuIl19
@@ -1,3 +0,0 @@
1
- import { InjectionToken } from '@angular/core';
2
- export const ACTION_EDITOR_COMPONENT_IT = new InjectionToken('ACTION_EDITOR_COMPONENT');
3
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aW9uLWVkaXRvci50b2tlbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3RhYmxldmlldy9zcmMvYWN0aW9uL3NlcnZpY2VzL3Rva2Vucy9hY3Rpb24tZWRpdG9yLnRva2VuLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxjQUFjLEVBQU8sTUFBTSxlQUFlLENBQUM7QUFFbkQsTUFBTSxDQUFDLE1BQU0sMEJBQTBCLEdBQThCLElBQUksY0FBYyxDQUFZLHlCQUF5QixDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0luamVjdGlvblRva2VuLCBUeXBlfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuZXhwb3J0IGNvbnN0IEFDVElPTl9FRElUT1JfQ09NUE9ORU5UX0lUOiBJbmplY3Rpb25Ub2tlbjxUeXBlPGFueT4+ID0gbmV3IEluamVjdGlvblRva2VuPFR5cGU8YW55Pj4oJ0FDVElPTl9FRElUT1JfQ09NUE9ORU5UJyk7XG4iXX0=
@@ -1,40 +0,0 @@
1
- import { Injectable, signal } from '@angular/core';
2
- import { Subject } from 'rxjs';
3
- import * as i0 from "@angular/core";
4
- /**
5
- * Should be used with providers defined within component.
6
- */
7
- export class ViewContainer {
8
- constructor() {
9
- this.dataProvider = signal(undefined);
10
- this.routeTriggeredActionInstance = signal(undefined);
11
- this.actions = signal([]);
12
- this._tableReloadSubject = new Subject();
13
- this._editorResetSubject = new Subject();
14
- this._editorCloseSubject = new Subject();
15
- }
16
- get tableReload$() {
17
- return this._tableReloadSubject.asObservable();
18
- }
19
- reloadTable(event) {
20
- this._tableReloadSubject.next(event ?? {});
21
- }
22
- get editorReset$() {
23
- return this._editorResetSubject.asObservable();
24
- }
25
- resetEditor(event) {
26
- this._editorResetSubject.next(event ?? {});
27
- }
28
- get editorClose$() {
29
- return this._editorCloseSubject.asObservable();
30
- }
31
- closeEditor(event) {
32
- this._editorCloseSubject.next(event ?? {});
33
- }
34
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: ViewContainer, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
35
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: ViewContainer }); }
36
- }
37
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: ViewContainer, decorators: [{
38
- type: Injectable
39
- }] });
40
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmlldy1jb250YWluZXIuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3RhYmxldmlldy9zcmMvYWN0aW9uL3NlcnZpY2VzL3ZpZXctY29udGFpbmVyLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFVBQVUsRUFBRSxNQUFNLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFFakQsT0FBTyxFQUFhLE9BQU8sRUFBQyxNQUFNLE1BQU0sQ0FBQzs7QUFRekM7O0dBRUc7QUFFSCxNQUFNLE9BQU8sYUFBYTtJQUQxQjtRQUVXLGlCQUFZLEdBQUcsTUFBTSxDQUEyQyxTQUFTLENBQUMsQ0FBQztRQUMzRSxpQ0FBNEIsR0FBRyxNQUFNLENBQTRDLFNBQVMsQ0FBQyxDQUFDO1FBQzVGLFlBQU8sR0FBRyxNQUFNLENBQW9DLEVBQUUsQ0FBQyxDQUFDO1FBRXZELHdCQUFtQixHQUE4QixJQUFJLE9BQU8sRUFBRSxDQUFDO1FBQy9ELHdCQUFtQixHQUFvQyxJQUFJLE9BQU8sRUFBRSxDQUFDO1FBQ3JFLHdCQUFtQixHQUFpRCxJQUFJLE9BQU8sRUFBRSxDQUFDO0tBeUI3RjtJQXZCRyxJQUFXLFlBQVk7UUFDbkIsT0FBTyxJQUFJLENBQUMsbUJBQW1CLENBQUMsWUFBWSxFQUFFLENBQUM7SUFDbkQsQ0FBQztJQUVNLFdBQVcsQ0FBQyxLQUF3QjtRQUN2QyxJQUFJLENBQUMsbUJBQW1CLENBQUMsSUFBSSxDQUFDLEtBQUssSUFBSSxFQUFFLENBQUMsQ0FBQztJQUMvQyxDQUFDO0lBRUQsSUFBVyxZQUFZO1FBQ25CLE9BQU8sSUFBSSxDQUFDLG1CQUFtQixDQUFDLFlBQVksRUFBRSxDQUFDO0lBQ25ELENBQUM7SUFFTSxXQUFXLENBQUMsS0FBMEM7UUFDekQsSUFBSSxDQUFDLG1CQUFtQixDQUFDLElBQUksQ0FBQyxLQUFLLElBQUksRUFBRSxDQUFDLENBQUM7SUFDL0MsQ0FBQztJQUVELElBQVcsWUFBWTtRQUNuQixPQUFPLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUNuRCxDQUFDO0lBRU0sV0FBVyxDQUFDLEtBQTJDO1FBQzFELElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxJQUFJLENBQUMsS0FBSyxJQUFJLEVBQUUsQ0FBQyxDQUFDO0lBQy9DLENBQUM7K0dBL0JRLGFBQWE7bUhBQWIsYUFBYTs7NEZBQWIsYUFBYTtrQkFEekIsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7SW5qZWN0YWJsZSwgc2lnbmFsfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHtPYnNlcnZhYmxlLCBTdWJqZWN0fSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHtJRGF0YVByb3ZpZGVyfSBmcm9tICdAbWVkaXVzaW5jL21uZy1jb21tb25zL2NvcmUnO1xuaW1wb3J0IHtUYWJsZVJlbG9hZEV2ZW50fSBmcm9tICdAbWVkaXVzaW5jL21uZy1jb21tb25zL3RhYmxlL2FwaSc7XG5pbXBvcnQge0FjdGlvbkRlc2NyaXB0b3JJbnN0LCBFZGl0b3JSZXNldEV2ZW50LCBJVmlld0NvbnRhaW5lciwgVmlld0NvbnRhaW5lckVkaXRvckNsb3NlRXZlbnR9IGZyb20gJ0BtZWRpdXNpbmMvbW5nLWNvbW1vbnMvdGFibGV2aWV3L2FwaSc7XG5cbmltcG9ydCB7QWN0aW9uSW5zdGFuY2V9IGZyb20gJy4uL21vZGVscy9leGVjdXRpb24vYWN0aW9uLWluc3RhbmNlLm1vZGVsJztcblxuLyoqXG4gKiBTaG91bGQgYmUgdXNlZCB3aXRoIHByb3ZpZGVycyBkZWZpbmVkIHdpdGhpbiBjb21wb25lbnQuXG4gKi9cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBWaWV3Q29udGFpbmVyPEl0ZW0sIFNlcnZpY2UgPSB1bmRlZmluZWQ+IGltcGxlbWVudHMgSVZpZXdDb250YWluZXI8SXRlbSwgU2VydmljZSwgQWN0aW9uSW5zdGFuY2U8SXRlbSwgU2VydmljZT4+IHtcbiAgICBwdWJsaWMgZGF0YVByb3ZpZGVyID0gc2lnbmFsPElEYXRhUHJvdmlkZXI8SXRlbSwgU2VydmljZT4gfCB1bmRlZmluZWQ+KHVuZGVmaW5lZCk7XG4gICAgcHVibGljIHJvdXRlVHJpZ2dlcmVkQWN0aW9uSW5zdGFuY2UgPSBzaWduYWw8QWN0aW9uSW5zdGFuY2U8SXRlbSwgU2VydmljZT4gfCB1bmRlZmluZWQ+KHVuZGVmaW5lZCk7XG4gICAgcHVibGljIGFjdGlvbnMgPSBzaWduYWw8QXJyYXk8QWN0aW9uRGVzY3JpcHRvckluc3Q8SXRlbT4+PihbXSk7XG5cbiAgICBwcml2YXRlIF90YWJsZVJlbG9hZFN1YmplY3Q6IFN1YmplY3Q8VGFibGVSZWxvYWRFdmVudD4gPSBuZXcgU3ViamVjdCgpO1xuICAgIHByaXZhdGUgX2VkaXRvclJlc2V0U3ViamVjdDogU3ViamVjdDxFZGl0b3JSZXNldEV2ZW50PEl0ZW0+PiA9IG5ldyBTdWJqZWN0KCk7XG4gICAgcHJpdmF0ZSBfZWRpdG9yQ2xvc2VTdWJqZWN0OiBTdWJqZWN0PFZpZXdDb250YWluZXJFZGl0b3JDbG9zZUV2ZW50PEl0ZW0+PiA9IG5ldyBTdWJqZWN0KCk7XG5cbiAgICBwdWJsaWMgZ2V0IHRhYmxlUmVsb2FkJCgpOiBPYnNlcnZhYmxlPFRhYmxlUmVsb2FkRXZlbnQ+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX3RhYmxlUmVsb2FkU3ViamVjdC5hc09ic2VydmFibGUoKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgcmVsb2FkVGFibGUoZXZlbnQ/OiBUYWJsZVJlbG9hZEV2ZW50KTogdm9pZCB7XG4gICAgICAgIHRoaXMuX3RhYmxlUmVsb2FkU3ViamVjdC5uZXh0KGV2ZW50ID8/IHt9KTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0IGVkaXRvclJlc2V0JCgpOiBPYnNlcnZhYmxlPEVkaXRvclJlc2V0RXZlbnQ8SXRlbT4+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2VkaXRvclJlc2V0U3ViamVjdC5hc09ic2VydmFibGUoKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgcmVzZXRFZGl0b3IoZXZlbnQ/OiBFZGl0b3JSZXNldEV2ZW50PEl0ZW0+IHwgdW5kZWZpbmVkKTogdm9pZCB7XG4gICAgICAgIHRoaXMuX2VkaXRvclJlc2V0U3ViamVjdC5uZXh0KGV2ZW50ID8/IHt9KTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0IGVkaXRvckNsb3NlJCgpOiBPYnNlcnZhYmxlPFZpZXdDb250YWluZXJFZGl0b3JDbG9zZUV2ZW50PEl0ZW0+PiB7XG4gICAgICAgIHJldHVybiB0aGlzLl9lZGl0b3JDbG9zZVN1YmplY3QuYXNPYnNlcnZhYmxlKCk7XG4gICAgfVxuXG4gICAgcHVibGljIGNsb3NlRWRpdG9yKGV2ZW50PzogVmlld0NvbnRhaW5lckVkaXRvckNsb3NlRXZlbnQ8SXRlbT4pOiB2b2lkIHtcbiAgICAgICAgdGhpcy5fZWRpdG9yQ2xvc2VTdWJqZWN0Lm5leHQoZXZlbnQgPz8ge30pO1xuICAgIH1cbn1cbiJdfQ==
@@ -1,28 +0,0 @@
1
- import { ActionDescriptorInst } from './action.descriptor';
2
- export const actionGetProviderCfgObj = (serviceOrDataProvider) => {
3
- const cfg = {};
4
- if (serviceOrDataProvider) {
5
- if (serviceOrDataProvider.isDataProvider) {
6
- // type casting needed, cause there was no other way found to differentiate the types
7
- cfg.dataProvider = serviceOrDataProvider;
8
- }
9
- else {
10
- cfg.serviceType = serviceOrDataProvider;
11
- }
12
- }
13
- return cfg;
14
- };
15
- /**
16
- * Creates and returns an instance of ActionDescriptorInst, allowing customization of the action's behavior through configuration options.
17
- *
18
- * @param {string} actionName - The unique name of the action.
19
- * @param {ActionDescriptorCreateFromModelOptsType<Model, Service, RunInput, RunResult, ValidationInput>} [opts] - Optional configuration object to define the action's behavior, including model, service provider and other.
20
- * @return {ActionDescriptorInst<Model, Service, RunInput, RunResult, ValidationInput>} An instance of ActionDescriptorInst configured with the provided parameters.
21
- */
22
- export function action(actionName, opts) {
23
- return new ActionDescriptorInst(actionName, {
24
- ...(opts?.serviceProvider ? actionGetProviderCfgObj(opts.serviceProvider) : {}),
25
- ...opts
26
- });
27
- }
28
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aW9uLWRlc2NyaXB0b3IuZmFjdG9yeS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3RhYmxldmlldy9hcGkvc3JjL2FjdGlvbi9kZXNjcmlwdG9ycy9hY3Rpb24tZGVzY3JpcHRvci5mYWN0b3J5LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUdBLE9BQU8sRUFBK0Usb0JBQW9CLEVBQUMsTUFBTSxxQkFBcUIsQ0FBQztBQWtCdkksTUFBTSxDQUFDLE1BQU0sdUJBQXVCLEdBQUcsQ0FBaUIscUJBQTBELEVBQUUsRUFBRTtJQUNsSCxNQUFNLEdBQUcsR0FBMkQsRUFBRSxDQUFDO0lBQ3ZFLElBQUkscUJBQXFCLEVBQUUsQ0FBQztRQUN4QixJQUFLLHFCQUF1QyxDQUFDLGNBQWMsRUFBRSxDQUFDO1lBQzFELHFGQUFxRjtZQUNyRixHQUFHLENBQUMsWUFBWSxHQUFHLHFCQUFzRCxDQUFDO1FBQzlFLENBQUM7YUFBTSxDQUFDO1lBQ0osR0FBRyxDQUFDLFdBQVcsR0FBRyxxQkFBa0QsQ0FBQztRQUN6RSxDQUFDO0lBQ0wsQ0FBQztJQUNELE9BQU8sR0FBRyxDQUFDO0FBQ2YsQ0FBQyxDQUFDO0FBRUY7Ozs7OztHQU1HO0FBQ0gsTUFBTSxVQUFVLE1BQU0sQ0FDbEIsVUFBa0IsRUFDbEIsSUFBMkY7SUFFM0YsT0FBTyxJQUFJLG9CQUFvQixDQUF1RCxVQUFVLEVBQUU7UUFDOUYsR0FBRyxDQUFDLElBQUksRUFBRSxlQUFlLENBQUMsQ0FBQyxDQUFDLHVCQUF1QixDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO1FBQy9FLEdBQUcsSUFBSTtLQUNWLENBQUMsQ0FBQztBQUNQLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0lEYXRhUHJvdmlkZXIsIFNlcnZpY2VDbGFzc1R5cGV9IGZyb20gJ0BtZWRpdXNpbmMvbW5nLWNvbW1vbnMvY29yZSc7XG5pbXBvcnQge01vZGVsRGVzY3JpcHRvciwgVHlwZURlc2NyaXB0b3J9IGZyb20gJ0BtZWRpdXNpbmMvbW5nLWNvbW1vbnMvbW9kZWwnO1xuXG5pbXBvcnQge0FjdGlvbkRlc2NyaXB0b3JDcmVhdGVPcHRzUGFyZW50VHlwZSwgQWN0aW9uRGVzY3JpcHRvckNyZWF0ZU9wdHNQcm92aWRlclR5cGUsIEFjdGlvbkRlc2NyaXB0b3JJbnN0fSBmcm9tICcuL2FjdGlvbi5kZXNjcmlwdG9yJztcblxuZXhwb3J0IHR5cGUgQWN0aW9uRGVzY3JpcHRvckNyZWF0ZUZyb21Nb2RlbE9wdHNUeXBlPFJ1bklucHV0VHlwZSwgUnVuUmV0dXJuVHlwZSwgVmFsaWRhdGlvbklucHV0PiA9IEFjdGlvbkRlc2NyaXB0b3JDcmVhdGVPcHRzUGFyZW50VHlwZSAmIHtcbiAgICBydW5JbnB1dFR5cGU/OiBUeXBlRGVzY3JpcHRvcjxSdW5JbnB1dFR5cGU+O1xuICAgIHJ1blJldHVyblR5cGU/OiBUeXBlRGVzY3JpcHRvcjxSdW5SZXR1cm5UeXBlPjtcbiAgICB2YWxpZGF0aW9uVHlwZT86IFR5cGVEZXNjcmlwdG9yPFZhbGlkYXRpb25JbnB1dD47XG59O1xuXG5leHBvcnQgdHlwZSBBY3Rpb25EZXNjcmlwdG9yQ3JlYXRlT3B0c1R5cGU8TW9kZWwsIFNlcnZpY2UsIFJ1bklucHV0VHlwZSwgUnVuUmV0dXJuVHlwZSwgVmFsaWRhdGlvbklucHV0PiA9IEFjdGlvbkRlc2NyaXB0b3JDcmVhdGVPcHRzUGFyZW50VHlwZSAmIHtcbiAgICBtb2RlbD86IE1vZGVsRGVzY3JpcHRvcjxNb2RlbD47XG4gICAgc2VydmljZVByb3ZpZGVyPzogQWN0aW9uUHJvdmlkZXJUeXBlPE1vZGVsLCBTZXJ2aWNlPjtcbiAgICBydW5JbnB1dFR5cGU/OiBUeXBlRGVzY3JpcHRvcjxSdW5JbnB1dFR5cGU+O1xuICAgIHJ1blJldHVyblR5cGU/OiBUeXBlRGVzY3JpcHRvcjxSdW5SZXR1cm5UeXBlPjtcbiAgICB2YWxpZGF0aW9uVHlwZT86IFR5cGVEZXNjcmlwdG9yPFZhbGlkYXRpb25JbnB1dD47XG59O1xuXG5leHBvcnQgdHlwZSBBY3Rpb25Qcm92aWRlclR5cGU8TW9kZWwsIFNlcnZpY2U+ID0gU2VydmljZUNsYXNzVHlwZTxTZXJ2aWNlPiB8IElEYXRhUHJvdmlkZXI8TW9kZWwsIFNlcnZpY2U+O1xuXG5leHBvcnQgY29uc3QgYWN0aW9uR2V0UHJvdmlkZXJDZmdPYmogPSA8TW9kZWwsIFNlcnZpY2U+KHNlcnZpY2VPckRhdGFQcm92aWRlcj86IEFjdGlvblByb3ZpZGVyVHlwZTxNb2RlbCwgU2VydmljZT4pID0+IHtcbiAgICBjb25zdCBjZmc6IEFjdGlvbkRlc2NyaXB0b3JDcmVhdGVPcHRzUHJvdmlkZXJUeXBlPE1vZGVsLCBTZXJ2aWNlPiA9IHt9O1xuICAgIGlmIChzZXJ2aWNlT3JEYXRhUHJvdmlkZXIpIHtcbiAgICAgICAgaWYgKChzZXJ2aWNlT3JEYXRhUHJvdmlkZXIgYXMgSURhdGFQcm92aWRlcikuaXNEYXRhUHJvdmlkZXIpIHtcbiAgICAgICAgICAgIC8vIHR5cGUgY2FzdGluZyBuZWVkZWQsIGNhdXNlIHRoZXJlIHdhcyBubyBvdGhlciB3YXkgZm91bmQgdG8gZGlmZmVyZW50aWF0ZSB0aGUgdHlwZXNcbiAgICAgICAgICAgIGNmZy5kYXRhUHJvdmlkZXIgPSBzZXJ2aWNlT3JEYXRhUHJvdmlkZXIgYXMgSURhdGFQcm92aWRlcjxNb2RlbCwgU2VydmljZT47XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBjZmcuc2VydmljZVR5cGUgPSBzZXJ2aWNlT3JEYXRhUHJvdmlkZXIgYXMgU2VydmljZUNsYXNzVHlwZTxTZXJ2aWNlPjtcbiAgICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gY2ZnO1xufTtcblxuLyoqXG4gKiBDcmVhdGVzIGFuZCByZXR1cm5zIGFuIGluc3RhbmNlIG9mIEFjdGlvbkRlc2NyaXB0b3JJbnN0LCBhbGxvd2luZyBjdXN0b21pemF0aW9uIG9mIHRoZSBhY3Rpb24ncyBiZWhhdmlvciB0aHJvdWdoIGNvbmZpZ3VyYXRpb24gb3B0aW9ucy5cbiAqXG4gKiBAcGFyYW0ge3N0cmluZ30gYWN0aW9uTmFtZSAtIFRoZSB1bmlxdWUgbmFtZSBvZiB0aGUgYWN0aW9uLlxuICogQHBhcmFtIHtBY3Rpb25EZXNjcmlwdG9yQ3JlYXRlRnJvbU1vZGVsT3B0c1R5cGU8TW9kZWwsIFNlcnZpY2UsIFJ1bklucHV0LCBSdW5SZXN1bHQsIFZhbGlkYXRpb25JbnB1dD59IFtvcHRzXSAtIE9wdGlvbmFsIGNvbmZpZ3VyYXRpb24gb2JqZWN0IHRvIGRlZmluZSB0aGUgYWN0aW9uJ3MgYmVoYXZpb3IsIGluY2x1ZGluZyBtb2RlbCwgc2VydmljZSBwcm92aWRlciBhbmQgb3RoZXIuXG4gKiBAcmV0dXJuIHtBY3Rpb25EZXNjcmlwdG9ySW5zdDxNb2RlbCwgU2VydmljZSwgUnVuSW5wdXQsIFJ1blJlc3VsdCwgVmFsaWRhdGlvbklucHV0Pn0gQW4gaW5zdGFuY2Ugb2YgQWN0aW9uRGVzY3JpcHRvckluc3QgY29uZmlndXJlZCB3aXRoIHRoZSBwcm92aWRlZCBwYXJhbWV0ZXJzLlxuICovXG5leHBvcnQgZnVuY3Rpb24gYWN0aW9uPE1vZGVsLCBTZXJ2aWNlID0gdW5kZWZpbmVkLCBSdW5JbnB1dCA9IE1vZGVsLCBSdW5SZXN1bHQgPSBNb2RlbCwgVmFsaWRhdGlvbklucHV0ID0gTW9kZWw+KFxuICAgIGFjdGlvbk5hbWU6IHN0cmluZyxcbiAgICBvcHRzPzogQWN0aW9uRGVzY3JpcHRvckNyZWF0ZU9wdHNUeXBlPE1vZGVsLCBTZXJ2aWNlLCBSdW5JbnB1dCwgUnVuUmVzdWx0LCBWYWxpZGF0aW9uSW5wdXQ+XG4pOiBBY3Rpb25EZXNjcmlwdG9ySW5zdDxNb2RlbCwgU2VydmljZSwgUnVuSW5wdXQsIFJ1blJlc3VsdCwgVmFsaWRhdGlvbklucHV0PiB7XG4gICAgcmV0dXJuIG5ldyBBY3Rpb25EZXNjcmlwdG9ySW5zdDxNb2RlbCwgU2VydmljZSwgUnVuSW5wdXQsIFJ1blJlc3VsdCwgVmFsaWRhdGlvbklucHV0PihhY3Rpb25OYW1lLCB7XG4gICAgICAgIC4uLihvcHRzPy5zZXJ2aWNlUHJvdmlkZXIgPyBhY3Rpb25HZXRQcm92aWRlckNmZ09iaihvcHRzLnNlcnZpY2VQcm92aWRlcikgOiB7fSksXG4gICAgICAgIC4uLm9wdHNcbiAgICB9KTtcbn1cbiJdfQ==
@@ -1,30 +0,0 @@
1
- import { ActionEditorDescriptorInst } from './action-editor.descriptor';
2
- export const actionEditorGetProviderCfgObj = (serviceOrDataProvider) => {
3
- const cfg = {};
4
- if (serviceOrDataProvider) {
5
- if (serviceOrDataProvider.isDataProvider) {
6
- // type casting needed, cause there was no other way found to differentiate the types
7
- cfg.dataProvider = serviceOrDataProvider;
8
- }
9
- else {
10
- cfg.serviceType = serviceOrDataProvider;
11
- }
12
- }
13
- return cfg;
14
- };
15
- /**
16
- * Creates an ActionEditorDescriptorInst instance with the provided editor descriptor and options.
17
- *
18
- * @param {string} actionName - The name of the action to associate with the editor.
19
- * @param {EditorDescriptorInst<EditorModel, any>} editor - The editor descriptor instance to be used.
20
- * @param {ActionEditorDescriptorOptsType<Model, Service, FetchInput, SubmitReturn, ValidationInput>} [opts] - Optional configuration options for the ActionEditor.
21
- * @return {ActionEditorDescriptorInst<Model, Service, EditorModel, FetchInput, SubmitReturn, ValidationInput>} An instance of ActionEditorDescriptor with the configured parameters.
22
- */
23
- export function actionEditor(actionName, editor, opts) {
24
- return new ActionEditorDescriptorInst(editor, actionName, {
25
- ...opts,
26
- ...(opts?.serviceProvider ? actionEditorGetProviderCfgObj(opts.serviceProvider) : {}),
27
- model: opts?.model
28
- });
29
- }
30
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aW9uLWVkaXRvci1kZXNjcmlwdG9yLmZhY3RvcnkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi90YWJsZXZpZXcvYXBpL3NyYy9hY3Rpb24vZGVzY3JpcHRvcnMvYWN0aW9uLWVkaXRvci1kZXNjcmlwdG9yLmZhY3RvcnkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBS0EsT0FBTyxFQUErQywwQkFBMEIsRUFBQyxNQUFNLDRCQUE0QixDQUFDO0FBYXBILE1BQU0sQ0FBQyxNQUFNLDZCQUE2QixHQUFHLENBQWlCLHFCQUFnRSxFQUFFLEVBQUU7SUFDOUgsTUFBTSxHQUFHLEdBQWlFLEVBQUUsQ0FBQztJQUM3RSxJQUFJLHFCQUFxQixFQUFFLENBQUM7UUFDeEIsSUFBSyxxQkFBNkMsQ0FBQyxjQUFjLEVBQUUsQ0FBQztZQUNoRSxxRkFBcUY7WUFDckYsR0FBRyxDQUFDLFlBQVksR0FBRyxxQkFBNEQsQ0FBQztRQUNwRixDQUFDO2FBQU0sQ0FBQztZQUNKLEdBQUcsQ0FBQyxXQUFXLEdBQUcscUJBQWtELENBQUM7UUFDekUsQ0FBQztJQUNMLENBQUM7SUFDRCxPQUFPLEdBQUcsQ0FBQztBQUNmLENBQUMsQ0FBQztBQUVGOzs7Ozs7O0dBT0c7QUFDSCxNQUFNLFVBQVUsWUFBWSxDQUN4QixVQUFrQixFQUNsQixNQUE4QyxFQUM5QyxJQUFnRztJQUVoRyxPQUFPLElBQUksMEJBQTBCLENBQXlFLE1BQU0sRUFBRSxVQUFVLEVBQUU7UUFDOUgsR0FBRyxJQUFJO1FBQ1AsR0FBRyxDQUFDLElBQUksRUFBRSxlQUFlLENBQUMsQ0FBQyxDQUFDLDZCQUE2QixDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO1FBQ3JGLEtBQUssRUFBRSxJQUFJLEVBQUUsS0FBSztLQUNyQixDQUFDLENBQUM7QUFDUCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtTZXJ2aWNlQ2xhc3NUeXBlfSBmcm9tICdAbWVkaXVzaW5jL21uZy1jb21tb25zL2NvcmUnO1xuaW1wb3J0IHtNb2RlbERlc2NyaXB0b3IsIFR5cGVEZXNjcmlwdG9yfSBmcm9tICdAbWVkaXVzaW5jL21uZy1jb21tb25zL21vZGVsJztcblxuaW1wb3J0IHtJRWRpdG9yRGF0YVByb3ZpZGVyfSBmcm9tICcuLi8uLi9lZGl0b3IvZGF0YS1wcm92aWRlcnMvZWRpdG9yLmRhdGEtcHJvdmlkZXInO1xuaW1wb3J0IHtFZGl0b3JEZXNjcmlwdG9ySW5zdH0gZnJvbSAnLi4vLi4vZWRpdG9yL2Rlc2NyaXB0b3JzL2VkaXRvci5kZXNjcmlwdG9yJztcbmltcG9ydCB7QWN0aW9uRWRpdG9yRGVzY3JpcHRvckNyZWF0ZU9wdHNQcm92aWRlclR5cGUsIEFjdGlvbkVkaXRvckRlc2NyaXB0b3JJbnN0fSBmcm9tICcuL2FjdGlvbi1lZGl0b3IuZGVzY3JpcHRvcic7XG5pbXBvcnQge0FjdGlvbkRlc2NyaXB0b3JDcmVhdGVPcHRzUGFyZW50VHlwZX0gZnJvbSAnLi9hY3Rpb24uZGVzY3JpcHRvcic7XG5cbmV4cG9ydCB0eXBlIEFjdGlvbkVkaXRvclByb3ZpZGVyVHlwZTxNb2RlbCwgU2VydmljZT4gPSBTZXJ2aWNlQ2xhc3NUeXBlPFNlcnZpY2U+IHwgSUVkaXRvckRhdGFQcm92aWRlcjxNb2RlbCwgU2VydmljZT47XG5cbmV4cG9ydCB0eXBlIEFjdGlvbkVkaXRvckRlc2NyaXB0b3JPcHRzVHlwZTxNb2RlbCwgU2VydmljZSwgRmV0Y2hJbnB1dCwgU3VibWl0UmV0dXJuLCBWYWxpZGF0aW9uSW5wdXQ+ID0gQWN0aW9uRGVzY3JpcHRvckNyZWF0ZU9wdHNQYXJlbnRUeXBlICYge1xuICAgIG1vZGVsPzogTW9kZWxEZXNjcmlwdG9yPE1vZGVsPjtcbiAgICBzZXJ2aWNlUHJvdmlkZXI/OiBBY3Rpb25FZGl0b3JQcm92aWRlclR5cGU8TW9kZWwsIFNlcnZpY2U+O1xuICAgIGZldGNoSW5wdXRUeXBlPzogVHlwZURlc2NyaXB0b3I8RmV0Y2hJbnB1dD47XG4gICAgc3VibWl0UmV0dXJuVHlwZT86IFR5cGVEZXNjcmlwdG9yPFN1Ym1pdFJldHVybj47XG4gICAgdmFsaWRhdGlvblR5cGU/OiBUeXBlRGVzY3JpcHRvcjxWYWxpZGF0aW9uSW5wdXQ+O1xufTtcblxuZXhwb3J0IGNvbnN0IGFjdGlvbkVkaXRvckdldFByb3ZpZGVyQ2ZnT2JqID0gPE1vZGVsLCBTZXJ2aWNlPihzZXJ2aWNlT3JEYXRhUHJvdmlkZXI/OiBBY3Rpb25FZGl0b3JQcm92aWRlclR5cGU8TW9kZWwsIFNlcnZpY2U+KSA9PiB7XG4gICAgY29uc3QgY2ZnOiBBY3Rpb25FZGl0b3JEZXNjcmlwdG9yQ3JlYXRlT3B0c1Byb3ZpZGVyVHlwZTxNb2RlbCwgU2VydmljZT4gPSB7fTtcbiAgICBpZiAoc2VydmljZU9yRGF0YVByb3ZpZGVyKSB7XG4gICAgICAgIGlmICgoc2VydmljZU9yRGF0YVByb3ZpZGVyIGFzIElFZGl0b3JEYXRhUHJvdmlkZXIpLmlzRGF0YVByb3ZpZGVyKSB7XG4gICAgICAgICAgICAvLyB0eXBlIGNhc3RpbmcgbmVlZGVkLCBjYXVzZSB0aGVyZSB3YXMgbm8gb3RoZXIgd2F5IGZvdW5kIHRvIGRpZmZlcmVudGlhdGUgdGhlIHR5cGVzXG4gICAgICAgICAgICBjZmcuZGF0YVByb3ZpZGVyID0gc2VydmljZU9yRGF0YVByb3ZpZGVyIGFzIElFZGl0b3JEYXRhUHJvdmlkZXI8TW9kZWwsIFNlcnZpY2U+O1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgY2ZnLnNlcnZpY2VUeXBlID0gc2VydmljZU9yRGF0YVByb3ZpZGVyIGFzIFNlcnZpY2VDbGFzc1R5cGU8U2VydmljZT47XG4gICAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIGNmZztcbn07XG5cbi8qKlxuICogQ3JlYXRlcyBhbiBBY3Rpb25FZGl0b3JEZXNjcmlwdG9ySW5zdCBpbnN0YW5jZSB3aXRoIHRoZSBwcm92aWRlZCBlZGl0b3IgZGVzY3JpcHRvciBhbmQgb3B0aW9ucy5cbiAqXG4gKiBAcGFyYW0ge3N0cmluZ30gYWN0aW9uTmFtZSAtIFRoZSBuYW1lIG9mIHRoZSBhY3Rpb24gdG8gYXNzb2NpYXRlIHdpdGggdGhlIGVkaXRvci5cbiAqIEBwYXJhbSB7RWRpdG9yRGVzY3JpcHRvckluc3Q8RWRpdG9yTW9kZWwsIGFueT59IGVkaXRvciAtIFRoZSBlZGl0b3IgZGVzY3JpcHRvciBpbnN0YW5jZSB0byBiZSB1c2VkLlxuICogQHBhcmFtIHtBY3Rpb25FZGl0b3JEZXNjcmlwdG9yT3B0c1R5cGU8TW9kZWwsIFNlcnZpY2UsIEZldGNoSW5wdXQsIFN1Ym1pdFJldHVybiwgVmFsaWRhdGlvbklucHV0Pn0gW29wdHNdIC0gT3B0aW9uYWwgY29uZmlndXJhdGlvbiBvcHRpb25zIGZvciB0aGUgQWN0aW9uRWRpdG9yLlxuICogQHJldHVybiB7QWN0aW9uRWRpdG9yRGVzY3JpcHRvckluc3Q8TW9kZWwsIFNlcnZpY2UsIEVkaXRvck1vZGVsLCBGZXRjaElucHV0LCBTdWJtaXRSZXR1cm4sIFZhbGlkYXRpb25JbnB1dD59IEFuIGluc3RhbmNlIG9mIEFjdGlvbkVkaXRvckRlc2NyaXB0b3Igd2l0aCB0aGUgY29uZmlndXJlZCBwYXJhbWV0ZXJzLlxuICovXG5leHBvcnQgZnVuY3Rpb24gYWN0aW9uRWRpdG9yPEVkaXRvck1vZGVsLCBNb2RlbCA9IEVkaXRvck1vZGVsLCBTZXJ2aWNlID0gdW5kZWZpbmVkLCBGZXRjaElucHV0ID0gTW9kZWwsIFN1Ym1pdFJldHVybiA9IE1vZGVsLCBWYWxpZGF0aW9uSW5wdXQgPSBNb2RlbD4oXG4gICAgYWN0aW9uTmFtZTogc3RyaW5nLFxuICAgIGVkaXRvcjogRWRpdG9yRGVzY3JpcHRvckluc3Q8RWRpdG9yTW9kZWwsIGFueT4sXG4gICAgb3B0cz86IEFjdGlvbkVkaXRvckRlc2NyaXB0b3JPcHRzVHlwZTxNb2RlbCwgU2VydmljZSwgRmV0Y2hJbnB1dCwgU3VibWl0UmV0dXJuLCBWYWxpZGF0aW9uSW5wdXQ+XG4pOiBBY3Rpb25FZGl0b3JEZXNjcmlwdG9ySW5zdDxNb2RlbCwgU2VydmljZSwgRWRpdG9yTW9kZWwsIEZldGNoSW5wdXQsIFN1Ym1pdFJldHVybiwgVmFsaWRhdGlvbklucHV0PiB7XG4gICAgcmV0dXJuIG5ldyBBY3Rpb25FZGl0b3JEZXNjcmlwdG9ySW5zdDxNb2RlbCwgU2VydmljZSwgRWRpdG9yTW9kZWwsIEZldGNoSW5wdXQsIFN1Ym1pdFJldHVybiwgVmFsaWRhdGlvbklucHV0PihlZGl0b3IsIGFjdGlvbk5hbWUsIHtcbiAgICAgICAgLi4ub3B0cyxcbiAgICAgICAgLi4uKG9wdHM/LnNlcnZpY2VQcm92aWRlciA/IGFjdGlvbkVkaXRvckdldFByb3ZpZGVyQ2ZnT2JqKG9wdHMuc2VydmljZVByb3ZpZGVyKSA6IHt9KSxcbiAgICAgICAgbW9kZWw6IG9wdHM/Lm1vZGVsXG4gICAgfSk7XG59XG4iXX0=
@@ -1,223 +0,0 @@
1
- import { CommonsInternalError, StyleSizeEnum } from '@mediusinc/mng-commons/core';
2
- import { EditorDataProviderInst } from '../../editor/data-providers/editor.data-provider';
3
- import { ActionEditorSubmitTypeEnum, ActionPositionEnum, ActionTypeEnum } from '../models/action.type';
4
- import { ActionDescriptorInst } from './action.descriptor';
5
- export class ActionEditorDescriptorInst extends ActionDescriptorInst {
6
- constructor(editorDescriptor, actionName, cfg) {
7
- super(actionName, {
8
- ...cfg,
9
- model: cfg?.model ?? editorDescriptor.model
10
- });
11
- this._dataProvider = undefined;
12
- this._editorActions = [];
13
- this._editorTitle = undefined;
14
- this._editorTitleParams = undefined;
15
- this._dialogSize = StyleSizeEnum.Normal;
16
- this._resubmitRefetch = true;
17
- this._unsavedChangesConfirmation = false;
18
- if (cfg?.serviceType) {
19
- this._dataProvider = new EditorDataProviderInst(cfg.serviceType);
20
- }
21
- else if (cfg?.dataProvider) {
22
- this._dataProvider = cfg.dataProvider;
23
- }
24
- this._type = ActionTypeEnum.Editor;
25
- this._editorDescriptor = editorDescriptor;
26
- this._editorActions.push(actionEditorSubmit(this), actionEditorCancel(this));
27
- }
28
- get editorTitle() {
29
- return this._editorTitle;
30
- }
31
- get editorTitleParams() {
32
- return this._editorTitleParams;
33
- }
34
- get editorDescriptor() {
35
- return this._editorDescriptor;
36
- }
37
- get dialogSize() {
38
- return this._dialogSize;
39
- }
40
- get dialogClassName() {
41
- return this._dialogClassName;
42
- }
43
- get fetchNotificationOnSuccess() {
44
- return this._fetchNotificationOnSuccess;
45
- }
46
- get fetchNotificationOnError() {
47
- return this._fetchNotificationOnError;
48
- }
49
- get dataProvider() {
50
- return this._dataProvider;
51
- }
52
- get hasRunFunction() {
53
- throw new CommonsInternalError(`Run function cannot be used in editor action for ${this._actionNameLong}. Use submit function instead`);
54
- }
55
- get runFunction() {
56
- throw new CommonsInternalError(`Run function cannot be used in editor action for ${this._actionNameLong}. Use submit function instead`);
57
- }
58
- get hasFetchFunction() {
59
- return typeof this._fetchFunction === 'function';
60
- }
61
- get fetchFunction() {
62
- return this._fetchFunction;
63
- }
64
- get hasSubmitFunction() {
65
- return typeof this._fetchFunction === 'function';
66
- }
67
- get submitFunction() {
68
- return this._submitFunction;
69
- }
70
- get editorActions() {
71
- return this._editorActions;
72
- }
73
- get editorComponent() {
74
- return this._editorComponent;
75
- }
76
- get resubmitEnabled() {
77
- return this._resubmitEnabled;
78
- }
79
- get resubmitRefetch() {
80
- return this._resubmitRefetch;
81
- }
82
- get unsavedChangesConfirmation() {
83
- return this._unsavedChangesConfirmation;
84
- }
85
- withEditorTitle(title, params) {
86
- this._editorTitle = title;
87
- this._editorTitleParams = params;
88
- return this;
89
- }
90
- withDialogSize(size = StyleSizeEnum.Normal) {
91
- this._dialogSize = size;
92
- return this;
93
- }
94
- withDialogClassName(className) {
95
- this._dialogClassName = className;
96
- return this;
97
- }
98
- withRunFunction(fn) {
99
- return this.withSubmitFunction(fn);
100
- }
101
- withFetchFunction(fn) {
102
- this._fetchFunction = fn;
103
- return this;
104
- }
105
- withSubmitFunction(fn) {
106
- this._submitFunction = fn;
107
- return this;
108
- }
109
- /**
110
- * Override default notifications setup. Notifications can either be overridden with custom text or turned on/off.
111
- *
112
- * @param opts Provide config for texts or on/off flag for submit (is same as run) or fetch success/error notifications.
113
- */
114
- withNotifications(opts) {
115
- super.withNotifications(typeof opts === 'boolean'
116
- ? opts
117
- : {
118
- runOnSuccess: opts?.submitOnSuccess ?? opts?.runOnSuccess,
119
- runOnError: opts?.submitOnError ?? opts?.runOnError
120
- });
121
- this._fetchNotificationOnSuccess = typeof opts === 'boolean' ? opts : opts?.fetchOnSuccess;
122
- this._fetchNotificationOnError = typeof opts === 'boolean' ? opts : opts?.fetchOnError;
123
- return this;
124
- }
125
- withEditorAction(action) {
126
- this._editorActions.push(action);
127
- return this;
128
- }
129
- withEditorActions(actions) {
130
- this._editorActions = actions;
131
- return this;
132
- }
133
- withEditorComponent(editorComponent) {
134
- this._editorComponent = editorComponent;
135
- return this;
136
- }
137
- /**
138
- * Enables or disables resubmit resubmit - this means the form will not exit after successful submission, but will instead remain open.
139
- *
140
- * @param {boolean} [enabled=true] - Specifies whether resubmit is enabled or disabled. Defaults to true if not provided.
141
- * @param {boolean} [refetch=true] - Specifies whether the data should be refetched after resubmit. If not, the data in the form stays as is. Defaults to true if not provided.
142
- *
143
- * @returns {this} - Returns the current instance with the resubmit configuration updated.
144
- */
145
- withResubmit(enabled, refetch = true) {
146
- this._resubmitEnabled = enabled;
147
- this._resubmitRefetch = refetch;
148
- return this;
149
- }
150
- withUnsavedChangesConfirmation(unsavedChangesConfirmation = true) {
151
- this._unsavedChangesConfirmation = unsavedChangesConfirmation;
152
- return this;
153
- }
154
- copyFieldsTo(descriptor) {
155
- super.copyFieldsTo(descriptor);
156
- descriptor._editorActions = this._editorActions.map(a => a.copy());
157
- descriptor._editorTitle = this._editorTitle;
158
- descriptor._editorTitleParams = this._editorTitleParams != null ? { ...this._editorTitleParams } : undefined;
159
- descriptor._fetchNotificationOnSuccess = typeof this._fetchNotificationOnSuccess === 'object' ? { ...this._fetchNotificationOnSuccess } : this._fetchNotificationOnSuccess;
160
- descriptor._fetchNotificationOnError = typeof this._fetchNotificationOnError === 'object' ? { ...this._fetchNotificationOnError } : this._fetchNotificationOnError;
161
- descriptor._dialogSize = this._dialogSize;
162
- descriptor._dialogClassName = this._dialogClassName;
163
- descriptor._fetchFunction = this._fetchFunction;
164
- descriptor._submitFunction = this._submitFunction;
165
- descriptor._editorComponent = this._editorComponent;
166
- descriptor._resubmitEnabled = this._resubmitEnabled;
167
- descriptor._resubmitRefetch = this._resubmitRefetch;
168
- descriptor._unsavedChangesConfirmation = this._unsavedChangesConfirmation;
169
- return descriptor;
170
- }
171
- copy() {
172
- const editor = this._editorDescriptor.copy();
173
- const descriptor = new ActionEditorDescriptorInst(editor, this._actionName, {
174
- dataProvider: this._dataProvider,
175
- model: this._model?.copy(),
176
- parentModel: this._parentModel,
177
- parentProperty: this._parentProperty
178
- });
179
- this.copyFieldsTo(descriptor);
180
- return descriptor;
181
- }
182
- }
183
- export class ActionEditorSubmitDescriptorInst extends ActionDescriptorInst {
184
- constructor(editorActionName, editorActionModel, submitType = ActionEditorSubmitTypeEnum.Submit) {
185
- super(submitType === ActionEditorSubmitTypeEnum.Submit ? `${editorActionName}.submit` : `${editorActionName}.cancel`, { model: editorActionModel });
186
- this._submitType = submitType;
187
- this._position = ActionPositionEnum.FooterRight;
188
- }
189
- get submitType() {
190
- return this._submitType;
191
- }
192
- copy() {
193
- const descriptor = new ActionEditorSubmitDescriptorInst(this._actionName.split('.').slice(0, -1).join('.'), this._model?.copy(), this._submitType);
194
- this.copyFieldsTo(descriptor);
195
- return descriptor;
196
- }
197
- }
198
- /**
199
- * creates primary action with primary button style
200
- * @param editorAction
201
- * @param submitType
202
- */
203
- export function actionEditorSubmit(editorAction, submitType = ActionEditorSubmitTypeEnum.Submit) {
204
- return new ActionEditorSubmitDescriptorInst(editorAction.actionName, editorAction.model, submitType).withButtonOpts({
205
- style: {
206
- level: editorAction.button?.style?.level
207
- }
208
- });
209
- }
210
- /**
211
- * creates secondary button with text button style
212
- * @param editorAction
213
- * @param submitType
214
- */
215
- export function actionEditorCancel(editorAction, submitType = ActionEditorSubmitTypeEnum.Cancel) {
216
- return new ActionEditorSubmitDescriptorInst(editorAction.actionName, editorAction.model, submitType).withButtonOpts({
217
- style: {
218
- textButton: true,
219
- level: editorAction.button?.style?.level
220
- }
221
- });
222
- }
223
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aW9uLWVkaXRvci5kZXNjcmlwdG9yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vdGFibGV2aWV3L2FwaS9zcmMvYWN0aW9uL2Rlc2NyaXB0b3JzL2FjdGlvbi1lZGl0b3IuZGVzY3JpcHRvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxPQUFPLEVBQUMsb0JBQW9CLEVBQW9CLGFBQWEsRUFBQyxNQUFNLDZCQUE2QixDQUFDO0FBR2xHLE9BQU8sRUFBQyxzQkFBc0IsRUFBc0IsTUFBTSxrREFBa0QsQ0FBQztBQUc3RyxPQUFPLEVBQUMsMEJBQTBCLEVBQUUsa0JBQWtCLEVBQUUsY0FBYyxFQUFDLE1BQU0sdUJBQXVCLENBQUM7QUFDckcsT0FBTyxFQUF1QyxvQkFBb0IsRUFBQyxNQUFNLHFCQUFxQixDQUFDO0FBYS9GLE1BQU0sT0FBTywwQkFPWCxTQUFRLG9CQUFzRjtJQXVCNUYsWUFBbUIsZ0JBQXVELEVBQUUsVUFBa0IsRUFBRSxHQUE4RDtRQUMxSixLQUFLLENBQUMsVUFBVSxFQUFFO1lBQ2QsR0FBRyxHQUFHO1lBQ04sS0FBSyxFQUFFLEdBQUcsRUFBRSxLQUFLLElBQUssZ0JBQWdCLENBQUMsS0FBMEM7U0FDcEYsQ0FBQyxDQUFDO1FBekJxQixrQkFBYSxHQUFvQyxTQUFTLENBQUM7UUFFN0UsbUJBQWMsR0FBa0UsRUFBRSxDQUFDO1FBQ25GLGlCQUFZLEdBQW1CLFNBQVMsQ0FBQztRQUN6Qyx1QkFBa0IsR0FBUyxTQUFTLENBQUM7UUFLckMsZ0JBQVcsR0FBRyxhQUFhLENBQUMsTUFBTSxDQUFDO1FBU25DLHFCQUFnQixHQUFHLElBQUksQ0FBQztRQUN4QixnQ0FBMkIsR0FBRyxLQUFLLENBQUM7UUFRMUMsSUFBSSxHQUFHLEVBQUUsV0FBVyxFQUFFLENBQUM7WUFDbkIsSUFBSSxDQUFDLGFBQWEsR0FBRyxJQUFJLHNCQUFzQixDQUFnQixHQUFHLENBQUMsV0FBVyxDQUFDLENBQUM7UUFD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QUFLLEVBQUUsVUFBVSxDQUFDLENBQUMsY0FBYyxDQUFDO1FBQ3BJLEtBQUssRUFBRTtZQUNILEtBQUssRUFBRSxZQUFZLENBQUMsTUFBTSxFQUFFLEtBQUssRUFBRSxLQUFLO1NBQzNDO0tBQ0osQ0FBQyxDQUFDO0FBQ1AsQ0FBQztBQUVEOzs7O0dBSUc7QUFDSCxNQUFNLFVBQVUsa0JBQWtCLENBQzlCLFlBQWdGLEVBQ2hGLFVBQVUsR0FBRywwQkFBMEIsQ0FBQyxNQUFNO0lBRTlDLE9BQU8sSUFBSSxnQ0FBZ0MsQ0FBcUIsWUFBWSxDQUFDLFVBQVUsRUFBRSxZQUFZLENBQUMsS0FBSyxFQUFFLFVBQVUsQ0FBQyxDQUFDLGNBQWMsQ0FBQztRQUNwSSxLQUFLLEVBQUU7WUFDSCxVQUFVLEVBQUUsSUFBSTtZQUNoQixLQUFLLEVBQUUsWUFBWSxDQUFDLE1BQU0sRUFBRSxLQUFLLEVBQUUsS0FBSztTQUMzQztLQUNKLENBQUMsQ0FBQztBQUNQLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1R5cGV9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQge0NvbW1vbnNJbnRlcm5hbEVycm9yLCBTZXJ2aWNlQ2xhc3NUeXBlLCBTdHlsZVNpemVFbnVtfSBmcm9tICdAbWVkaXVzaW5jL21uZy1jb21tb25zL2NvcmUnO1xuaW1wb3J0IHtNb2RlbERlc2NyaXB0b3J9IGZyb20gJ0BtZWRpdXNpbmMvbW5nLWNvbW1vbnMvbW9kZWwnO1xuXG5pbXBvcnQge0VkaXRvckRhdGFQcm92aWRlckluc3QsIElFZGl0b3JEYXRhUHJvdmlkZXJ9IGZyb20gJy4uLy4uL2VkaXRvci9kYXRhLXByb3ZpZGVycy9lZGl0b3IuZGF0YS1wcm92aWRlcic7XG5pbXBvcnQge0VkaXRvckRlc2NyaXB0b3JJbnN0fSBmcm9tICcuLi8uLi9lZGl0b3IvZGVzY3JpcHRvcnMvZWRpdG9yLmRlc2NyaXB0b3InO1xuaW1wb3J0IHtBY3Rpb25Ob3RpZmljYXRpb25UeXBlLCBBY3Rpb25SdW5GblR5cGV9IGZyb20gJy4uL21vZGVscy9hY3Rpb24tZGVzY3JpcHRvci50eXBlcyc7XG5pbXBvcnQge0FjdGlvbkVkaXRvclN1Ym1pdFR5cGVFbnVtLCBBY3Rpb25Qb3NpdGlvbkVudW0sIEFjdGlvblR5cGVFbnVtfSBmcm9tICcuLi9tb2RlbHMvYWN0aW9uLnR5cGUnO1xuaW1wb3J0IHtBY3Rpb25EZXNjcmlwdG9yQ3JlYXRlT3B0c1BhcmVudFR5cGUsIEFjdGlvbkRlc2NyaXB0b3JJbnN0fSBmcm9tICcuL2FjdGlvbi5kZXNjcmlwdG9yJztcblxuZXhwb3J0IHR5cGUgQWN0aW9uRWRpdG9yRGVzY3JpcHRvckNvbnN0cnVjdG9yT3B0c1R5cGU8TW9kZWwsIFNlcnZpY2U+ID0gQWN0aW9uRGVzY3JpcHRvckNyZWF0ZU9wdHNQYXJlbnRUeXBlICZcbiAgICBBY3Rpb25FZGl0b3JEZXNjcmlwdG9yQ3JlYXRlT3B0c1Byb3ZpZGVyVHlwZTxNb2RlbCwgU2VydmljZT4gJiB7XG4gICAgICAgIG1vZGVsPzogTW9kZWxEZXNjcmlwdG9yPE1vZGVsPjtcbiAgICAgICAgaXNUYWJsZXZpZXdNYWluRWRpdG9yPzogYm9vbGVhbjtcbiAgICB9O1xuXG5leHBvcnQgdHlwZSBBY3Rpb25FZGl0b3JEZXNjcmlwdG9yQ3JlYXRlT3B0c1Byb3ZpZGVyVHlwZTxNb2RlbCwgU2VydmljZT4gPSB7XG4gICAgc2VydmljZVR5cGU/OiBTZXJ2aWNlQ2xhc3NUeXBlPFNlcnZpY2U+O1xuICAgIGRhdGFQcm92aWRlcj86IElFZGl0b3JEYXRhUHJvdmlkZXI8TW9kZWwsIFNlcnZpY2U+O1xufTtcblxuZXhwb3J0IGNsYXNzIEFjdGlvbkVkaXRvckRlc2NyaXB0b3JJbnN0PFxuICAgIEl0ZW0sXG4gICAgU2VydmljZSA9IGFueSxcbiAgICBFZGl0b3JJdGVtID0gSXRlbSxcbiAgICBGZXRjaElucHV0SXRlbSA9IEl0ZW0sXG4gICAgU3VibWl0UmV0dXJuSXRlbSA9IEl0ZW0sXG4gICAgVmFsaWRhdGlvbklucHV0SXRlbSA9IEl0ZW1cbj4gZXh0ZW5kcyBBY3Rpb25EZXNjcmlwdG9ySW5zdDxJdGVtLCBTZXJ2aWNlLCBFZGl0b3JJdGVtLCBTdWJtaXRSZXR1cm5JdGVtLCBWYWxpZGF0aW9uSW5wdXRJdGVtPiB7XG4gICAgcHJpdmF0ZSByZWFkb25seSBfZWRpdG9yRGVzY3JpcHRvcjogRWRpdG9yRGVzY3JpcHRvckluc3Q8RWRpdG9ySXRlbSwgYW55PjtcbiAgICBwcm90ZWN0ZWQgb3ZlcnJpZGUgcmVhZG9ubHkgX2RhdGFQcm92aWRlcj86IElFZGl0b3JEYXRhUHJvdmlkZXI8SXRlbSwgYW55PiA9IHVuZGVmaW5lZDtcblxuICAgIHByb3RlY3RlZCBfZWRpdG9yQWN0aW9uczogQWN0aW9uRGVzY3JpcHRvckluc3Q8YW55LCBhbnksIEVkaXRvckl0ZW0sIGFueSwgRWRpdG9ySXRlbT5bXSA9IFtdO1xuICAgIHByb3RlY3RlZCBfZWRpdG9yVGl0bGU/OiBzdHJpbmcgfCBudWxsID0gdW5kZWZpbmVkO1xuICAgIHByb3RlY3RlZCBfZWRpdG9yVGl0bGVQYXJhbXM/OiBhbnkgPSB1bmRlZmluZWQ7XG5cbiAgICBwcm90ZWN0ZWQgX2ZldGNoTm90aWZpY2F0aW9uT25TdWNjZXNzPzogQWN0aW9uTm90aWZpY2F0aW9uVHlwZSB8IGJvb2xlYW47XG4gICAgcHJvdGVjdGVkIF9mZXRjaE5vdGlmaWNhdGlvbk9uRXJyb3I/OiBBY3Rpb25Ob3RpZmljYXRpb25UeXBlIHwgYm9vbGVhbjtcblxuICAgIHByb3RlY3RlZCBfZGlhbG9nU2l6ZSA9IFN0eWxlU2l6ZUVudW0uTm9ybWFsO1xuICAgIHByb3RlY3RlZCBfZGlhbG9nQ2xhc3NOYW1lPzogc3RyaW5nO1xuXG4gICAgcHJvdGVjdGVkIF9mZXRjaEZ1bmN0aW9uPzogQWN0aW9uUnVuRm5UeXBlPEl0ZW0sIFNlcnZpY2UsIEZldGNoSW5wdXRJdGVtLCBFZGl0b3JJdGVtPjtcbiAgICBwcm90ZWN0ZWQgX3N1Ym1pdEZ1bmN0aW9uPzogQWN0aW9uUnVuRm5UeXBlPEl0ZW0sIFNlcnZpY2UsIEVkaXRvckl0ZW0sIFN1Ym1pdFJldHVybkl0ZW0+O1xuXG4gICAgcHJvdGVjdGVkIF9lZGl0b3JDb21wb25lbnQ/OiBUeXBlPGFueT47XG5cbiAgICBwcm90ZWN0ZWQgX3Jlc3VibWl0RW5hYmxlZD86IGJvb2xlYW47XG4gICAgcHJvdGVjdGVkIF9yZXN1Ym1pdFJlZmV0Y2ggPSB0cnVlO1xuICAgIHByb3RlY3RlZCBfdW5zYXZlZENoYW5nZXNDb25maXJtYXRpb24gPSBmYWxzZTtcblxuICAgIHB1YmxpYyBjb25zdHJ1Y3RvcihlZGl0b3JEZXNjcmlwdG9yOiBFZGl0b3JEZXNjcmlwdG9ySW5zdDxFZGl0b3JJdGVtLCBhbnk+LCBhY3Rpb25OYW1lOiBzdHJpbmcsIGNmZz86IEFjdGlvbkVkaXRvckRlc2NyaXB0b3JDb25zdHJ1Y3Rvck9wdHNUeXBlPEl0ZW0sIFNlcnZpY2U+KSB7XG4gICAgICAgIHN1cGVyKGFjdGlvbk5hbWUsIHtcbiAgICAgICAgICAgIC4uLmNmZyxcbiAgICAgICAgICAgIG1vZGVsOiBjZmc/Lm1vZGVsID8/IChlZGl0b3JEZXNjcmlwdG9yLm1vZGVsIGFzIHVua25vd24gYXMgTW9kZWxEZXNjcmlwdG9yPEl0ZW0+KVxuICAgICAgICB9KTtcblxuICAgICAgICBpZiAoY2ZnPy5zZXJ2aWNlVHlwZSkge1xuICAgICAgICAgICAgdGhpcy5fZGF0YVByb3ZpZGVyID0gbmV3IEVkaXRvckRhdGFQcm92aWRlckluc3Q8SXRlbSwgU2VydmljZT4oY2ZnLnNlcnZpY2VUeXBlKTtcbiAgICAgICAgfSBlbHNlIGlmIChjZmc/LmRhdGFQcm92aWRlcikge1xuICAgICAgICAgICAgdGhpcy5fZGF0YVByb3ZpZGVyID0gY2ZnLmRhdGFQcm92aWRlcjtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMuX3R5cGUgPSBBY3Rpb25UeXBlRW51bS5FZGl0b3I7XG4gICAgICAgIHRoaXMuX2VkaXRvckRlc2NyaXB0b3IgPSBlZGl0b3JEZXNjcmlwdG9yO1xuICAgICAgICB0aGlzLl9lZGl0b3JBY3Rpb25zLnB1c2goYWN0aW9uRWRpdG9yU3VibWl0KHRoaXMpLCBhY3Rpb25FZGl0b3JDYW5jZWwodGhpcykpO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXQgZWRpdG9yVGl0bGUoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLl9lZGl0b3JUaXRsZTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0IGVkaXRvclRpdGxlUGFyYW1zKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5fZWRpdG9yVGl0bGVQYXJhbXM7XG4gICAgfVxuXG4gICAgcHVibGljIGdldCBlZGl0b3JEZXNjcmlwdG9yKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5fZWRpdG9yRGVzY3JpcHRvcjtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0IGRpYWxvZ1NpemUoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLl9kaWFsb2dTaXplO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXQgZGlhbG9nQ2xhc3NOYW1lKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5fZGlhbG9nQ2xhc3NOYW1lO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXQgZmV0Y2hOb3RpZmljYXRpb25PblN1Y2Nlc3MoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLl9mZXRjaE5vdGlmaWNhdGlvbk9uU3VjY2VzcztcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0IGZldGNoTm90aWZpY2F0aW9uT25FcnJvcigpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2ZldGNoTm90aWZpY2F0aW9uT25FcnJvcjtcbiAgICB9XG5cbiAgICBwdWJsaWMgb3ZlcnJpZGUgZ2V0IGRhdGFQcm92aWRlcigpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2RhdGFQcm92aWRlcjtcbiAgICB9XG5cbiAgICBwdWJsaWMgb3ZlcnJpZGUgZ2V0IGhhc1J1bkZ1bmN0aW9uKCk6IGJvb2xlYW4ge1xuICAgICAgICB0aHJvdyBuZXcgQ29tbW9uc0ludGVybmFsRXJyb3IoYFJ1biBmdW5jdGlvbiBjYW5ub3QgYmUgdXNlZCBpbiBlZGl0b3IgYWN0aW9uIGZvciAke3RoaXMuX2FjdGlvbk5hbWVMb25nfS4gVXNlIHN1Ym1pdCBmdW5jdGlvbiBpbnN0ZWFkYCk7XG4gICAgfVxuXG4gICAgcHVibGljIG92ZXJyaWRlIGdldCBydW5GdW5jdGlvbigpOiBBY3Rpb25SdW5GblR5cGU8SXRlbSwgU2VydmljZSwgRWRpdG9ySXRlbSwgU3VibWl0UmV0dXJuSXRlbT4ge1xuICAgICAgICB0aHJvdyBuZXcgQ29tbW9uc0ludGVybmFsRXJyb3IoYFJ1biBmdW5jdGlvbiBjYW5ub3QgYmUgdXNlZCBpbiBlZGl0b3IgYWN0aW9uIGZvciAke3RoaXMuX2FjdGlvbk5hbWVMb25nfS4gVXNlIHN1Ym1pdCBmdW5jdGlvbiBpbnN0ZWFkYCk7XG4gICAgfVxuXG4gICAgcHVibGljIGdldCBoYXNGZXRjaEZ1bmN0aW9uKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdHlwZW9mIHRoaXMuX2ZldGNoRnVuY3Rpb24gPT09ICdmdW5jdGlvbic7XG4gICAgfVxuXG4gICAgcHVibGljIGdldCBmZXRjaEZ1bmN0aW9uKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5fZmV0Y2hGdW5jdGlvbjtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0IGhhc1N1Ym1pdEZ1bmN0aW9uKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdHlwZW9mIHRoaXMuX2ZldGNoRnVuY3Rpb24gPT09ICdmdW5jdGlvbic7XG4gICAgfVxuXG4gICAgcHVibGljIGdldCBzdWJtaXRGdW5jdGlvbigpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX3N1Ym1pdEZ1bmN0aW9uO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXQgZWRpdG9yQWN0aW9ucygpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2VkaXRvckFjdGlvbnM7XG4gICAgfVxuXG4gICAgcHVibGljIGdldCBlZGl0b3JDb21wb25lbnQoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLl9lZGl0b3JDb21wb25lbnQ7XG4gICAgfVxuXG4gICAgcHVibGljIGdldCByZXN1Ym1pdEVuYWJsZWQoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLl9yZXN1Ym1pdEVuYWJsZWQ7XG4gICAgfVxuXG4gICAgcHVibGljIGdldCByZXN1Ym1pdFJlZmV0Y2goKSB7XG4gICAgICAgIHJldHVybiB0aGlzLl9yZXN1Ym1pdFJlZmV0Y2g7XG4gICAgfVxuXG4gICAgcHVibGljIGdldCB1bnNhdmVkQ2hhbmdlc0NvbmZpcm1hdGlvbigpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX3Vuc2F2ZWRDaGFuZ2VzQ29uZmlybWF0aW9uO1xuICAgIH1cblxuICAgIHB1YmxpYyB3aXRoRWRpdG9yVGl0bGUodGl0bGU6IHN0cmluZyB8IG51bGwsIHBhcmFtcz86IGFueSk6IHRoaXMge1xuICAgICAgICB0aGlzLl9lZGl0b3JUaXRsZSA9IHRpdGxlO1xuICAgICAgICB0aGlzLl9lZGl0b3JUaXRsZVBhcmFtcyA9IHBhcmFtcztcbiAgICAgICAgcmV0dXJuIHRoaXM7XG4gICAgfVxuXG4gICAgcHVibGljIHdpdGhEaWFsb2dTaXplKHNpemUgPSBTdHlsZVNpemVFbnVtLk5vcm1hbCk6IHRoaXMge1xuICAgICAgICB0aGlzLl9kaWFsb2dTaXplID0gc2l6ZTtcbiAgICAgICAgcmV0dXJuIHRoaXM7XG4gICAgfVxuXG4gICAgcHVibGljIHdpdGhEaWFsb2dDbGFzc05hbWUoY2xhc3NOYW1lOiBzdHJpbmcpOiB0aGlzIHtcbiAgICAgICAgdGhpcy5fZGlhbG9nQ2xhc3NOYW1lID0gY2xhc3NOYW1lO1xuICAgICAgICByZXR1cm4gdGhpcztcbiAgICB9XG5cbiAgICBwdWJsaWMgb3ZlcnJpZGUgd2l0aFJ1bkZ1bmN0aW9uKGZuOiBBY3Rpb25SdW5GblR5cGU8SXRlbSwgU2VydmljZSwgRWRpdG9ySXRlbSwgU3VibWl0UmV0dXJuSXRlbT4pOiB0aGlzIHtcbiAgICAgICAgcmV0dXJuIHRoaXMud2l0aFN1Ym1pdEZ1bmN0aW9uKGZuKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgd2l0aEZldGNoRnVuY3Rpb24oZm46IEFjdGlvblJ1bkZuVHlwZTxJdGVtLCBTZXJ2aWNlLCBGZXRjaElucHV0SXRlbSwgRWRpdG9ySXRlbT4pOiB0aGlzIHtcbiAgICAgICAgdGhpcy5fZmV0Y2hGdW5jdGlvbiA9IGZuO1xuICAgICAgICByZXR1cm4gdGhpcztcbiAgICB9XG5cbiAgICBwdWJsaWMgd2l0aFN1Ym1pdEZ1bmN0aW9uKGZuOiBBY3Rpb25SdW5GblR5cGU8SXRlbSwgU2VydmljZSwgRWRpdG9ySXRlbSwgU3VibWl0UmV0dXJuSXRlbT4pOiB0aGlzIHtcbiAgICAgICAgdGhpcy5fc3VibWl0RnVuY3Rpb24gPSBmbjtcbiAgICAgICAgcmV0dXJuIHRoaXM7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogT3ZlcnJpZGUgZGVmYXVsdCBub3RpZmljYXRpb25zIHNldHVwLiBOb3RpZmljYXRpb25zIGNhbiBlaXRoZXIgYmUgb3ZlcnJpZGRlbiB3aXRoIGN1c3RvbSB0ZXh0IG9yIHR1cm5lZCBvbi9vZmYuXG4gICAgICpcbiAgICAgKiBAcGFyYW0gb3B0cyBQcm92aWRlIGNvbmZpZyBmb3IgdGV4dHMgb3Igb24vb2ZmIGZsYWcgZm9yIHN1Ym1pdCAoaXMgc2FtZSBhcyBydW4pIG9yIGZldGNoIHN1Y2Nlc3MvZXJyb3Igbm90aWZpY2F0aW9ucy5cbiAgICAgKi9cbiAgICBwdWJsaWMgb3ZlcnJpZGUgd2l0aE5vdGlmaWNhdGlvbnMoXG4gICAgICAgIG9wdHM/OlxuICAgICAgICAgICAgfCB7XG4gICAgICAgICAgICAgICAgICBzdWJtaXRPblN1Y2Nlc3M/OiBBY3Rpb25Ob3RpZmljYXRpb25UeXBlIHwgYm9vbGVhbjtcbiAgICAgICAgICAgICAgICAgIHN1Ym1pdE9uRXJyb3I/OiBBY3Rpb25Ob3RpZmljYXRpb25UeXBlIHwgYm9vbGVhbjtcbiAgICAgICAgICAgICAgICAgIHJ1bk9uU3VjY2Vzcz86IEFjdGlvbk5vdGlmaWNhdGlvblR5cGUgfCBib29sZWFuO1xuICAgICAgICAgICAgICAgICAgcnVuT25FcnJvcj86IEFjdGlvbk5vdGlmaWNhdGlvblR5cGUgfCBib29sZWFuO1xuICAgICAgICAgICAgICAgICAgZmV0Y2hPblN1Y2Nlc3M/OiBBY3Rpb25Ob3RpZmljYXRpb25UeXBlIHwgYm9vbGVhbjtcbiAgICAgICAgICAgICAgICAgIGZldGNoT25FcnJvcj86IEFjdGlvbk5vdGlmaWNhdGlvblR5cGUgfCBib29sZWFuO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB8IGJvb2xlYW5cbiAgICApOiB0aGlzIHtcbiAgICAgICAgc3VwZXIud2l0aE5vdGlmaWNhdGlvbnMoXG4gICAgICAgICAgICB0eXBlb2Ygb3B0cyA9PT0gJ2Jvb2xlYW4nXG4gICAgICAgICAgICAgICAgPyBvcHRzXG4gICAgICAgICAgICAgICAgOiB7XG4gICAgICAgICAgICAgICAgICAgICAgcnVuT25TdWNjZXNzOiBvcHRzPy5zdWJtaXRPblN1Y2Nlc3MgPz8gb3B0cz8ucnVuT25TdWNjZXNzLFxuICAgICAgICAgICAgICAgICAgICAgIHJ1bk9uRXJyb3I6IG9wdHM/LnN1Ym1pdE9uRXJyb3IgPz8gb3B0cz8ucnVuT25FcnJvclxuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICApO1xuICAgICAgICB0aGlzLl9mZXRjaE5vdGlmaWNhdGlvbk9uU3VjY2VzcyA9IHR5cGVvZiBvcHRzID09PSAnYm9vbGVhbicgPyBvcHRzIDogb3B0cz8uZmV0Y2hPblN1Y2Nlc3M7XG4gICAgICAgIHRoaXMuX2ZldGNoTm90aWZpY2F0aW9uT25FcnJvciA9IHR5cGVvZiBvcHRzID09PSAnYm9vbGVhbicgPyBvcHRzIDogb3B0cz8uZmV0Y2hPbkVycm9yO1xuICAgICAgICByZXR1cm4gdGhpcztcbiAgICB9XG5cbiAgICBwdWJsaWMgd2l0aEVkaXRvckFjdGlvbihhY3Rpb246IEFjdGlvbkRlc2NyaXB0b3JJbnN0PGFueSwgYW55LCBFZGl0b3JJdGVtLCBhbnksIEVkaXRvckl0ZW0+KTogdGhpcyB7XG4gICAgICAgIHRoaXMuX2VkaXRvckFjdGlvbnMucHVzaChhY3Rpb24pO1xuICAgICAgICByZXR1cm4gdGhpcztcbiAgICB9XG5cbiAgICBwdWJsaWMgd2l0aEVkaXRvckFjdGlvbnMoYWN0aW9uczogQWN0aW9uRGVzY3JpcHRvckluc3Q8YW55LCBhbnksIEVkaXRvckl0ZW0sIGFueSwgRWRpdG9ySXRlbT5bXSk6IHRoaXMge1xuICAgICAgICB0aGlzLl9lZGl0b3JBY3Rpb25zID0gYWN0aW9ucztcbiAgICAgICAgcmV0dXJuIHRoaXM7XG4gICAgfVxuXG4gICAgcHVibGljIHdpdGhFZGl0b3JDb21wb25lbnQoZWRpdG9yQ29tcG9uZW50OiBUeXBlPGFueT4pOiB0aGlzIHtcbiAgICAgICAgdGhpcy5fZWRpdG9yQ29tcG9uZW50ID0gZWRpdG9yQ29tcG9uZW50O1xuICAgICAgICByZXR1cm4gdGhpcztcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBFbmFibGVzIG9yIGRpc2FibGVzIHJlc3VibWl0IHJlc3VibWl0IC0gdGhpcyBtZWFucyB0aGUgZm9ybSB3aWxsIG5vdCBleGl0IGFmdGVyIHN1Y2Nlc3NmdWwgc3VibWlzc2lvbiwgYnV0IHdpbGwgaW5zdGVhZCByZW1haW4gb3Blbi5cbiAgICAgKlxuICAgICAqIEBwYXJhbSB7Ym9vbGVhbn0gW2VuYWJsZWQ9dHJ1ZV0gLSBTcGVjaWZpZXMgd2hldGhlciByZXN1Ym1pdCBpcyBlbmFibGVkIG9yIGRpc2FibGVkLiBEZWZhdWx0cyB0byB0cnVlIGlmIG5vdCBwcm92aWRlZC5cbiAgICAgKiBAcGFyYW0ge2Jvb2xlYW59IFtyZWZldGNoPXRydWVdIC0gU3BlY2lmaWVzIHdoZXRoZXIgdGhlIGRhdGEgc2hvdWxkIGJlIHJlZmV0Y2hlZCBhZnRlciByZXN1Ym1pdC4gSWYgbm90LCB0aGUgZGF0YSBpbiB0aGUgZm9ybSBzdGF5cyBhcyBpcy4gRGVmYXVsdHMgdG8gdHJ1ZSBpZiBub3QgcHJvdmlkZWQuXG4gICAgICpcbiAgICAgKiBAcmV0dXJucyB7dGhpc30gLSBSZXR1cm5zIHRoZSBjdXJyZW50IGluc3RhbmNlIHdpdGggdGhlIHJlc3VibWl0IGNvbmZpZ3VyYXRpb24gdXBkYXRlZC5cbiAgICAgKi9cbiAgICBwdWJsaWMgd2l0aFJlc3VibWl0KGVuYWJsZWQ/OiBib29sZWFuLCByZWZldGNoID0gdHJ1ZSk6IHRoaXMge1xuICAgICAgICB0aGlzLl9yZXN1Ym1pdEVuYWJsZWQgPSBlbmFibGVkO1xuICAgICAgICB0aGlzLl9yZXN1Ym1pdFJlZmV0Y2ggPSByZWZldGNoO1xuICAgICAgICByZXR1cm4gdGhpcztcbiAgICB9XG5cbiAgICBwdWJsaWMgd2l0aFVuc2F2ZWRDaGFuZ2VzQ29uZmlybWF0aW9uKHVuc2F2ZWRDaGFuZ2VzQ29uZmlybWF0aW9uID0gdHJ1ZSk6IHRoaXMge1xuICAgICAgICB0aGlzLl91bnNhdmVkQ2hhbmdlc0NvbmZpcm1hdGlvbiA9IHVuc2F2ZWRDaGFuZ2VzQ29uZmlybWF0aW9uO1xuICAgICAgICByZXR1cm4gdGhpcztcbiAgICB9XG5cbiAgICBvdmVycmlkZSBjb3B5RmllbGRzVG8oXG4gICAgICAgIGRlc2NyaXB0b3I6IEFjdGlvbkVkaXRvckRlc2NyaXB0b3JJbnN0PEl0ZW0sIFNlcnZpY2UsIEVkaXRvckl0ZW0sIEZldGNoSW5wdXRJdGVtLCBTdWJtaXRSZXR1cm5JdGVtLCBWYWxpZGF0aW9uSW5wdXRJdGVtPlxuICAgICk6IEFjdGlvbkVkaXRvckRlc2NyaXB0b3JJbnN0PEl0ZW0sIFNlcnZpY2UsIEVkaXRvckl0ZW0sIEZldGNoSW5wdXRJdGVtLCBTdWJtaXRSZXR1cm5JdGVtLCBWYWxpZGF0aW9uSW5wdXRJdGVtPiB7XG4gICAgICAgIHN1cGVyLmNvcHlGaWVsZHNUbyhkZXNjcmlwdG9yKTtcbiAgICAgICAgZGVzY3JpcHRvci5fZWRpdG9yQWN0aW9ucyA9IHRoaXMuX2VkaXRvckFjdGlvbnMubWFwKGEgPT4gYS5jb3B5KCkpO1xuICAgICAgICBkZXNjcmlwdG9yLl9lZGl0b3JUaXRsZSA9IHRoaXMuX2VkaXRvclRpdGxlO1xuICAgICAgICBkZXNjcmlwdG9yLl9lZGl0b3JUaXRsZVBhcmFtcyA9IHRoaXMuX2VkaXRvclRpdGxlUGFyYW1zICE9IG51bGwgPyB7Li4udGhpcy5fZWRpdG9yVGl0bGVQYXJhbXN9IDogdW5kZWZpbmVkO1xuXG4gICAgICAgIGRlc2NyaXB0b3IuX2ZldGNoTm90aWZpY2F0aW9uT25TdWNjZXNzID0gdHlwZW9mIHRoaXMuX2ZldGNoTm90aWZpY2F0aW9uT25TdWNjZXNzID09PSAnb2JqZWN0JyA/IHsuLi50aGlzLl9mZXRjaE5vdGlmaWNhdGlvbk9uU3VjY2Vzc30gOiB0aGlzLl9mZXRjaE5vdGlmaWNhdGlvbk9uU3VjY2VzcztcbiAgICAgICAgZGVzY3JpcHRvci5fZmV0Y2hOb3RpZmljYXRpb25PbkVycm9yID0gdHlwZW9mIHRoaXMuX2ZldGNoTm90aWZpY2F0aW9uT25FcnJvciA9PT0gJ29iamVjdCcgPyB7Li4udGhpcy5fZmV0Y2hOb3RpZmljYXRpb25PbkVycm9yfSA6IHRoaXMuX2ZldGNoTm90aWZpY2F0aW9uT25FcnJvcjtcblxuICAgICAgICBkZXNjcmlwdG9yLl9kaWFsb2dTaXplID0gdGhpcy5fZGlhbG9nU2l6ZTtcbiAgICAgICAgZGVzY3JpcHRvci5fZGlhbG9nQ2xhc3NOYW1lID0gdGhpcy5fZGlhbG9nQ2xhc3NOYW1lO1xuICAgICAgICBkZXNjcmlwdG9yLl9mZXRjaEZ1bmN0aW9uID0gdGhpcy5fZmV0Y2hGdW5jdGlvbjtcbiAgICAgICAgZGVzY3JpcHRvci5fc3VibWl0RnVuY3Rpb24gPSB0aGlzLl9zdWJtaXRGdW5jdGlvbjtcbiAgICAgICAgZGVzY3JpcHRvci5fZWRpdG9yQ29tcG9uZW50ID0gdGhpcy5fZWRpdG9yQ29tcG9uZW50O1xuICAgICAgICBkZXNjcmlwdG9yLl9yZXN1Ym1pdEVuYWJsZWQgPSB0aGlzLl9yZXN1Ym1pdEVuYWJsZWQ7XG4gICAgICAgIGRlc2NyaXB0b3IuX3Jlc3VibWl0UmVmZXRjaCA9IHRoaXMuX3Jlc3VibWl0UmVmZXRjaDtcbiAgICAgICAgZGVzY3JpcHRvci5fdW5zYXZlZENoYW5nZXNDb25maXJtYXRpb24gPSB0aGlzLl91bnNhdmVkQ2hhbmdlc0NvbmZpcm1hdGlvbjtcbiAgICAgICAgcmV0dXJuIGRlc2NyaXB0b3I7XG4gICAgfVxuXG4gICAgb3ZlcnJpZGUgY29weSgpOiBBY3Rpb25FZGl0b3JEZXNjcmlwdG9ySW5zdDxJdGVtLCBTZXJ2aWNlLCBFZGl0b3JJdGVtLCBGZXRjaElucHV0SXRlbSwgU3VibWl0UmV0dXJuSXRlbSwgVmFsaWRhdGlvbklucHV0SXRlbT4ge1xuICAgICAgICBjb25zdCBlZGl0b3IgPSB0aGlzLl9lZGl0b3JEZXNjcmlwdG9yLmNvcHkoKTtcbiAgICAgICAgY29uc3QgZGVzY3JpcHRvciA9IG5ldyBBY3Rpb25FZGl0b3JEZXNjcmlwdG9ySW5zdDxJdGVtLCBTZXJ2aWNlLCBFZGl0b3JJdGVtLCBGZXRjaElucHV0SXRlbSwgU3VibWl0UmV0dXJuSXRlbSwgVmFsaWRhdGlvbklucHV0SXRlbT4oZWRpdG9yLCB0aGlzLl9hY3Rpb25OYW1lLCB7XG4gICAgICAgICAgICBkYXRhUHJvdmlkZXI6IHRoaXMuX2RhdGFQcm92aWRlcixcbiAgICAgICAgICAgIG1vZGVsOiB0aGlzLl9tb2RlbD8uY29weSgpLFxuICAgICAgICAgICAgcGFyZW50TW9kZWw6IHRoaXMuX3BhcmVudE1vZGVsLFxuICAgICAgICAgICAgcGFyZW50UHJvcGVydHk6IHRoaXMuX3BhcmVudFByb3BlcnR5XG4gICAgICAgIH0pO1xuICAgICAgICB0aGlzLmNvcHlGaWVsZHNUbyhkZXNjcmlwdG9yKTtcbiAgICAgICAgcmV0dXJuIGRlc2NyaXB0b3I7XG4gICAgfVxufVxuZXhwb3J0IGNsYXNzIEFjdGlvbkVkaXRvclN1Ym1pdERlc2NyaXB0b3JJbnN0PE1vZGVsLCBFZGl0b3JNb2RlbD4gZXh0ZW5kcyBBY3Rpb25EZXNjcmlwdG9ySW5zdDxNb2RlbCwgdW5kZWZpbmVkLCBFZGl0b3JNb2RlbCwgRWRpdG9yTW9kZWwsIEVkaXRvck1vZGVsPiB7XG4gICAgcHJpdmF0ZSByZWFkb25seSBfc3VibWl0VHlwZTogQWN0aW9uRWRpdG9yU3VibWl0VHlwZUVudW07XG5cbiAgICBwdWJsaWMgY29uc3RydWN0b3IoZWRpdG9yQWN0aW9uTmFtZTogc3RyaW5nLCBlZGl0b3JBY3Rpb25Nb2RlbDogTW9kZWxEZXNjcmlwdG9yPE1vZGVsPiB8IHVuZGVmaW5lZCwgc3VibWl0VHlwZSA9IEFjdGlvbkVkaXRvclN1Ym1pdFR5cGVFbnVtLlN1Ym1pdCkge1xuICAgICAgICBzdXBlcihzdWJtaXRUeXBlID09PSBBY3Rpb25FZGl0b3JTdWJtaXRUeXBlRW51bS5TdWJtaXQgPyBgJHtlZGl0b3JBY3Rpb25OYW1lfS5zdWJtaXRgIDogYCR7ZWRpdG9yQWN0aW9uTmFtZX0uY2FuY2VsYCwge21vZGVsOiBlZGl0b3JBY3Rpb25Nb2RlbH0pO1xuICAgICAgICB0aGlzLl9zdWJtaXRUeXBlID0gc3VibWl0VHlwZTtcbiAgICAgICAgdGhpcy5fcG9zaXRpb24gPSBBY3Rpb25Qb3NpdGlvbkVudW0uRm9vdGVyUmlnaHQ7XG4gICAgfVxuXG4gICAgcHVibGljIGdldCBzdWJtaXRUeXBlKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5fc3VibWl0VHlwZTtcbiAgICB9XG5cbiAgICBvdmVycmlkZSBjb3B5KCk6IEFjdGlvbkVkaXRvclN1Ym1pdERlc2NyaXB0b3JJbnN0PE1vZGVsLCBFZGl0b3JNb2RlbD4ge1xuICAgICAgICBjb25zdCBkZXNjcmlwdG9yID0gbmV3IEFjdGlvbkVkaXRvclN1Ym1pdERlc2NyaXB0b3JJbnN0PE1vZGVsLCBFZGl0b3JNb2RlbD4odGhpcy5fYWN0aW9uTmFtZS5zcGxpdCgnLicpLnNsaWNlKDAsIC0xKS5qb2luKCcuJyksIHRoaXMuX21vZGVsPy5jb3B5KCksIHRoaXMuX3N1Ym1pdFR5cGUpO1xuICAgICAgICB0aGlzLmNvcHlGaWVsZHNUbyhkZXNjcmlwdG9yKTtcbiAgICAgICAgcmV0dXJuIGRlc2NyaXB0b3I7XG4gICAgfVxufVxuXG4vKipcbiAqIGNyZWF0ZXMgcHJpbWFyeSBhY3Rpb24gd2l0aCBwcmltYXJ5IGJ1dHRvbiBzdHlsZVxuICogQHBhcmFtIGVkaXRvckFjdGlvblxuICogQHBhcmFtIHN1Ym1pdFR5cGVcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGFjdGlvbkVkaXRvclN1Ym1pdDxNb2RlbCwgRWRpdG9yTW9kZWw+KFxuICAgIGVkaXRvckFjdGlvbjogQWN0aW9uRWRpdG9yRGVzY3JpcHRvckluc3Q8TW9kZWwsIGFueSwgRWRpdG9yTW9kZWwsIGFueSwgYW55LCBhbnk+LFxuICAgIHN1Ym1pdFR5cGUgPSBBY3Rpb25FZGl0b3JTdWJtaXRUeXBlRW51bS5TdWJtaXRcbik6IEFjdGlvbkVkaXRvclN1Ym1pdERlc2NyaXB0b3JJbnN0PE1vZGVsLCBFZGl0b3JNb2RlbD4ge1xuICAgIHJldHVybiBuZXcgQWN0aW9uRWRpdG9yU3VibWl0RGVzY3JpcHRvckluc3Q8TW9kZWwsIEVkaXRvck1vZGVsPihlZGl0b3JBY3Rpb24uYWN0aW9uTmFtZSwgZWRpdG9yQWN0aW9uLm1vZGVsLCBzdWJtaXRUeXBlKS53aXRoQnV0dG9uT3B0cyh7XG4gICAgICAgIHN0eWxlOiB7XG4gICAgICAgICAgICBsZXZlbDogZWRpdG9yQWN0aW9uLmJ1dHRvbj8uc3R5bGU/LmxldmVsXG4gICAgICAgIH1cbiAgICB9KTtcbn1cblxuLyoqXG4gKiBjcmVhdGVzIHNlY29uZGFyeSBidXR0b24gd2l0aCB0ZXh0IGJ1dHRvbiBzdHlsZVxuICogQHBhcmFtIGVkaXRvckFjdGlvblxuICogQHBhcmFtIHN1Ym1pdFR5cGVcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGFjdGlvbkVkaXRvckNhbmNlbDxNb2RlbCwgRWRpdG9yTW9kZWw+KFxuICAgIGVkaXRvckFjdGlvbjogQWN0aW9uRWRpdG9yRGVzY3JpcHRvckluc3Q8TW9kZWwsIGFueSwgRWRpdG9yTW9kZWwsIGFueSwgYW55LCBhbnk+LFxuICAgIHN1Ym1pdFR5cGUgPSBBY3Rpb25FZGl0b3JTdWJtaXRUeXBlRW51bS5DYW5jZWxcbik6IEFjdGlvbkVkaXRvclN1Ym1pdERlc2NyaXB0b3JJbnN0PE1vZGVsLCBFZGl0b3JNb2RlbD4ge1xuICAgIHJldHVybiBuZXcgQWN0aW9uRWRpdG9yU3VibWl0RGVzY3JpcHRvckluc3Q8TW9kZWwsIEVkaXRvck1vZGVsPihlZGl0b3JBY3Rpb24uYWN0aW9uTmFtZSwgZWRpdG9yQWN0aW9uLm1vZGVsLCBzdWJtaXRUeXBlKS53aXRoQnV0dG9uT3B0cyh7XG4gICAgICAgIHN0eWxlOiB7XG4gICAgICAgICAgICB0ZXh0QnV0dG9uOiB0cnVlLFxuICAgICAgICAgICAgbGV2ZWw6IGVkaXRvckFjdGlvbi5idXR0b24/LnN0eWxlPy5sZXZlbFxuICAgICAgICB9XG4gICAgfSk7XG59XG4iXX0=