@mediusinc/mng-commons 5.5.0 → 6.0.0-rc.3

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 (300) hide show
  1. package/core/action/action-parameters.model.d.ts +4 -4
  2. package/core/data-providers/base.data-provider.d.ts +4 -7
  3. package/core/data-providers/lookup.data-provider.d.ts +2 -2
  4. package/core/descriptors/model.descriptor.d.ts +1 -7
  5. package/core/descriptors/tableview.descriptor.d.ts +5 -5
  6. package/core/helpers/notification.d.ts +17 -1
  7. package/core/helpers/route.d.ts +0 -1
  8. package/core/helpers/type-helpers.d.ts +8 -0
  9. package/core/i18n/i18n-error.d.ts +2 -3
  10. package/core/index.d.ts +0 -3
  11. package/core/models/menu.model.d.ts +0 -4
  12. package/core/router/route-builder.d.ts +1 -1
  13. package/core/services/commons.service.d.ts +0 -32
  14. package/core/services/tokens/module-config.token.d.ts +0 -28
  15. package/esm2022/core/action/action-parameters.model.mjs +1 -1
  16. package/esm2022/core/data-providers/base.data-provider.mjs +2 -4
  17. package/esm2022/core/data-providers/lookup.data-provider.mjs +1 -1
  18. package/esm2022/core/descriptors/model.descriptor.mjs +1 -1
  19. package/esm2022/core/descriptors/tableview.descriptor.mjs +1 -1
  20. package/esm2022/core/helpers/notification.mjs +19 -4
  21. package/esm2022/core/helpers/type-helpers.mjs +1 -1
  22. package/esm2022/core/i18n/i18n-error.mjs +10 -8
  23. package/esm2022/core/index.mjs +1 -4
  24. package/esm2022/core/models/menu.model.mjs +1 -1
  25. package/esm2022/core/router/route-builder.mjs +2 -2
  26. package/esm2022/core/services/commons.service.mjs +1 -34
  27. package/esm2022/core/services/tokens/module-config.token.mjs +1 -1
  28. package/esm2022/filter/descriptors/filter-lookup.descriptor.mjs +5 -86
  29. package/esm2022/filter/descriptors/filter.descriptor.mjs +7 -29
  30. package/esm2022/form/api/data-providers/lookup-data-provider.factory.mjs +14 -41
  31. package/esm2022/form/api/data-providers/lookup.data-provider.mjs +3 -3
  32. package/esm2022/form/api/descriptors/action-button.descriptor.mjs +5 -17
  33. package/esm2022/form/api/descriptors/button-style.builder.mjs +80 -101
  34. package/esm2022/form/api/index.mjs +2 -1
  35. package/esm2022/form/api/models/button.model.mjs +2 -0
  36. package/esm2022/model/class/data-providers/base-from-class-data-provider.factory.mjs +5 -0
  37. package/esm2022/model/class/descriptors/model-class.descriptor.mjs +28 -0
  38. package/esm2022/model/class/descriptors/type-class.descriptor.mjs +6 -0
  39. package/esm2022/model/class/helpers/model.mjs +53 -0
  40. package/esm2022/model/class/index.mjs +8 -0
  41. package/esm2022/model/class/mediusinc-mng-commons-model-class.mjs +5 -0
  42. package/esm2022/model/data-providers/base-from-type-data-provider.factory.mjs +11 -6
  43. package/esm2022/model/descriptors/model.descriptor.mjs +11 -54
  44. package/esm2022/model/descriptors/type.descriptor.mjs +2 -10
  45. package/esm2022/model/helpers/i18n.mjs +14 -9
  46. package/esm2022/model/index.mjs +1 -2
  47. package/esm2022/table/api/class/class-table-attribute-converter.mjs +80 -0
  48. package/esm2022/table/api/class/class-table-attribute.model.mjs +2 -0
  49. package/esm2022/table/api/class/class-table-data-provider.factory.mjs +5 -0
  50. package/esm2022/table/api/class/class-table-descriptor-helpers.mjs +99 -0
  51. package/esm2022/table/api/class/class-table-descriptor.factory.mjs +21 -0
  52. package/esm2022/table/api/class/index.mjs +6 -0
  53. package/esm2022/table/api/class/mediusinc-mng-commons-table-api-class.mjs +5 -0
  54. package/esm2022/table/api/data-providers/table-data-provider.factory.mjs +14 -41
  55. package/esm2022/table/api/data-providers/table.data-provider.mjs +3 -9
  56. package/esm2022/table/api/descriptors/column.descriptor.mjs +8 -3
  57. package/esm2022/table/api/descriptors/table-descriptor.factory.mjs +10 -77
  58. package/esm2022/table/api/descriptors/table.descriptor.mjs +3 -3
  59. package/esm2022/table/api/helpers/column-converter.mjs +25 -0
  60. package/esm2022/table/api/helpers/table-data-provider-descriptor-convert.mjs +4 -4
  61. package/esm2022/table/api/index.mjs +2 -4
  62. package/esm2022/table/api/models/table-columns.model.mjs +1 -1
  63. package/esm2022/table/components/column-value/column-value.component.mjs +7 -5
  64. package/esm2022/table/components/filter/filter-active-tag/filter-active-tag.component.mjs +3 -3
  65. package/esm2022/table/components/filter/filter-form/filter-form.component.mjs +5 -5
  66. package/esm2022/table/components/table/table.component.mjs +17 -18
  67. package/esm2022/table/helpers/notification.mjs +19 -13
  68. package/esm2022/tableview/action/components/action/action.component.mjs +41 -37
  69. package/esm2022/tableview/action/components/editor/injector-context/action-editor-injector-context.component.mjs +22 -13
  70. package/esm2022/tableview/action/helpers/action-execution.mjs +1 -1
  71. package/esm2022/tableview/action/helpers/i18n.mjs +50 -30
  72. package/esm2022/tableview/action/helpers/notification.mjs +73 -12
  73. package/esm2022/tableview/action/helpers/styles.mjs +2 -2
  74. package/esm2022/tableview/action/models/execution/action-context.model.mjs +1 -1
  75. package/esm2022/tableview/action/models/execution/action-instance.model.mjs +1 -1
  76. package/esm2022/tableview/action/services/action-executor.service.mjs +92 -75
  77. package/esm2022/tableview/action/services/data-provider-executor.service.mjs +18 -3
  78. package/esm2022/tableview/api/action/descriptors/action-descriptor.factory.mjs +13 -104
  79. package/esm2022/tableview/api/action/descriptors/action-editor-descriptor.factory.mjs +15 -62
  80. package/esm2022/tableview/api/action/descriptors/action-editor.descriptor.mjs +35 -82
  81. package/esm2022/tableview/api/action/descriptors/action-link-descriptor.factory.mjs +20 -33
  82. package/esm2022/tableview/api/action/descriptors/action-link.descriptor.mjs +1 -1
  83. package/esm2022/tableview/api/action/descriptors/action.descriptor.mjs +54 -95
  84. package/esm2022/tableview/api/action/descriptors/editor-action-descriptor.factory.mjs +21 -0
  85. package/esm2022/tableview/api/action/descriptors/editor-action-editor-descriptor.factory.mjs +21 -0
  86. package/esm2022/tableview/api/action/descriptors/table-action-descriptor.factory.mjs +37 -0
  87. package/esm2022/tableview/api/action/descriptors/table-action-editor-descriptor.factory.mjs +40 -0
  88. package/esm2022/tableview/api/action/helpers/data-provider-executors.mjs +25 -5
  89. package/esm2022/tableview/api/action/models/action-confirmation.model.mjs +2 -0
  90. package/esm2022/tableview/api/action/models/action-descriptor.types.mjs +1 -1
  91. package/esm2022/tableview/api/action/models/action-error.model.mjs +1 -1
  92. package/esm2022/tableview/api/action/models/execution/action-context-validation.model.mjs +1 -1
  93. package/esm2022/tableview/api/action/models/execution/action-context.model.mjs +1 -1
  94. package/esm2022/tableview/api/action/models/execution/action-instance.model.mjs +1 -1
  95. package/esm2022/tableview/api/action/models/tableview-action-default-categories.model.mjs +6 -6
  96. package/esm2022/tableview/api/action/services/data-provider-executor.service.mjs +3 -3
  97. package/esm2022/tableview/api/class/editor/class-editor-attribute-converter.mjs +85 -0
  98. package/esm2022/tableview/api/class/editor/class-editor-attribute.model.mjs +2 -0
  99. package/esm2022/tableview/api/class/editor/class-editor-data-provider.factory.mjs +5 -0
  100. package/esm2022/tableview/api/class/editor/class-editor-descriptor-helpers.mjs +95 -0
  101. package/esm2022/tableview/api/class/editor/class-editor-descriptor.factory.mjs +21 -0
  102. package/esm2022/tableview/api/class/index.mjs +13 -0
  103. package/esm2022/tableview/api/class/mediusinc-mng-commons-tableview-api-class.mjs +5 -0
  104. package/esm2022/tableview/api/class/tableview/class-tableview-attribute-converter.mjs +35 -0
  105. package/esm2022/tableview/api/class/tableview/class-tableview-attribute.model.mjs +2 -0
  106. package/esm2022/tableview/api/class/tableview/class-tableview-data-provider.factory.mjs +5 -0
  107. package/esm2022/tableview/api/class/tableview/class-tableview-descriptor-helpers.mjs +111 -0
  108. package/esm2022/tableview/api/class/tableview/class-tableview-descriptor.factory.mjs +26 -0
  109. package/esm2022/tableview/api/editor/data-providers/editor-data-provider.factory.mjs +14 -32
  110. package/esm2022/tableview/api/editor/data-providers/editor.data-provider.mjs +40 -7
  111. package/esm2022/tableview/api/editor/descriptors/editor-descriptor.factory.mjs +7 -73
  112. package/esm2022/tableview/api/editor/descriptors/editor.descriptor.mjs +49 -134
  113. package/esm2022/tableview/api/editor/descriptors/field-action.descriptor.mjs +14 -8
  114. package/esm2022/tableview/api/editor/descriptors/field-base.descriptor.mjs +11 -2
  115. package/esm2022/tableview/api/editor/descriptors/field-lookup.descriptor.mjs +3 -5
  116. package/esm2022/tableview/api/editor/descriptors/field-many.descriptor.mjs +2 -18
  117. package/esm2022/tableview/api/editor/descriptors/wrappers/editor-descriptor-nested-object-wrapper.mjs +51 -0
  118. package/esm2022/tableview/api/editor/models/editor-fields.model.mjs +1 -1
  119. package/esm2022/tableview/api/editor/models/form-editor.event.mjs +1 -1
  120. package/esm2022/tableview/api/editor/models/formly-custom-field.model.mjs +1 -1
  121. package/esm2022/tableview/api/index.mjs +9 -9
  122. package/esm2022/tableview/api/tableview/data-providers/tableview-data-provider.factory.mjs +13 -51
  123. package/esm2022/tableview/api/tableview/data-providers/tableview.data-provider.mjs +19 -11
  124. package/esm2022/tableview/api/tableview/descriptors/tableview-descriptor.factory.mjs +19 -96
  125. package/esm2022/tableview/api/tableview/descriptors/tableview.descriptor.mjs +29 -182
  126. package/esm2022/tableview/api/tableview/helpers/tableview-create.mjs +8 -6
  127. package/esm2022/tableview/api/tableview/helpers/tableview-data-provider-descriptor-convert.mjs +4 -4
  128. package/esm2022/tableview/api/tableview/helpers/tableview-default-actions.mjs +154 -106
  129. package/esm2022/tableview/api/tableview/helpers/tableview-input-builder.mjs +164 -7
  130. package/esm2022/tableview/api/tableview/models/tableview-descriptor-fields-manage-helper.type.mjs +2 -0
  131. package/esm2022/tableview/api/tableview/models/tableview-descriptor-helper.type.mjs +2 -0
  132. package/esm2022/tableview/api/tableview/models/tableview-input.model.mjs +1 -1
  133. package/esm2022/tableview/api/tableview/models/tableview-route.model.mjs +1 -1
  134. package/esm2022/tableview/editor/components/editor/form-editor.component.mjs +5 -8
  135. package/esm2022/tableview/editor/components/formly/fields/formly-field-action/formly-field-action.component.mjs +7 -5
  136. package/esm2022/tableview/editor/components/formly/fields/formly-field-table-dialog-form/formly-field-table-dialog-form.component.mjs +34 -23
  137. package/esm2022/tableview/editor/helpers/editor-field.mjs +3 -3
  138. package/esm2022/tableview/editor/helpers/editor-formly.mjs +4 -4
  139. package/esm2022/tableview/editor/helpers/field-create.mjs +21 -0
  140. package/esm2022/tableview/index.mjs +3 -2
  141. package/esm2022/tableview/provide.mjs +44 -1
  142. package/esm2022/tableview/tableview/components/route/tableview-route.component.mjs +1 -1
  143. package/esm2022/tableview/tableview/components/tableview/tableview.component.mjs +3 -1
  144. package/fesm2022/mediusinc-mng-commons-core.mjs +715 -792
  145. package/fesm2022/mediusinc-mng-commons-core.mjs.map +1 -1
  146. package/fesm2022/mediusinc-mng-commons-filter.mjs +10 -113
  147. package/fesm2022/mediusinc-mng-commons-filter.mjs.map +1 -1
  148. package/fesm2022/mediusinc-mng-commons-form-api.mjs +144 -203
  149. package/fesm2022/mediusinc-mng-commons-form-api.mjs.map +1 -1
  150. package/fesm2022/mediusinc-mng-commons-model-class.mjs +97 -0
  151. package/fesm2022/mediusinc-mng-commons-model-class.mjs.map +1 -0
  152. package/fesm2022/mediusinc-mng-commons-model.mjs +35 -144
  153. package/fesm2022/mediusinc-mng-commons-model.mjs.map +1 -1
  154. package/fesm2022/mediusinc-mng-commons-table-api-class.mjs +204 -0
  155. package/fesm2022/mediusinc-mng-commons-table-api-class.mjs.map +1 -0
  156. package/fesm2022/mediusinc-mng-commons-table-api.mjs +55 -319
  157. package/fesm2022/mediusinc-mng-commons-table-api.mjs.map +1 -1
  158. package/fesm2022/mediusinc-mng-commons-table.mjs +45 -38
  159. package/fesm2022/mediusinc-mng-commons-table.mjs.map +1 -1
  160. package/fesm2022/mediusinc-mng-commons-tableview-api-class.mjs +367 -0
  161. package/fesm2022/mediusinc-mng-commons-tableview-api-class.mjs.map +1 -0
  162. package/fesm2022/mediusinc-mng-commons-tableview-api.mjs +850 -1483
  163. package/fesm2022/mediusinc-mng-commons-tableview-api.mjs.map +1 -1
  164. package/fesm2022/mediusinc-mng-commons-tableview.mjs +421 -220
  165. package/fesm2022/mediusinc-mng-commons-tableview.mjs.map +1 -1
  166. package/filter/descriptors/filter-lookup.descriptor.d.ts +1 -26
  167. package/filter/descriptors/filter.descriptor.d.ts +5 -12
  168. package/form/api/data-providers/lookup-data-provider.factory.d.ts +17 -20
  169. package/form/api/data-providers/lookup.data-provider.d.ts +3 -3
  170. package/form/api/descriptors/action-button.descriptor.d.ts +11 -13
  171. package/form/api/descriptors/button-style.builder.d.ts +30 -44
  172. package/form/api/index.d.ts +1 -0
  173. package/form/api/models/button.model.d.ts +19 -0
  174. package/i18n/sl.json +56 -6
  175. package/model/class/README.md +8 -0
  176. package/model/class/data-providers/base-from-class-data-provider.factory.d.ts +3 -0
  177. package/model/class/descriptors/model-class.descriptor.d.ts +12 -0
  178. package/model/class/descriptors/type-class.descriptor.d.ts +3 -0
  179. package/model/{helpers → class/helpers}/model.d.ts +1 -2
  180. package/model/class/index.d.ts +4 -0
  181. package/model/data-providers/base-from-type-data-provider.factory.d.ts +13 -6
  182. package/model/descriptors/model.descriptor.d.ts +12 -27
  183. package/model/descriptors/type.descriptor.d.ts +0 -5
  184. package/model/helpers/i18n.d.ts +8 -3
  185. package/model/index.d.ts +0 -1
  186. package/package.json +25 -7
  187. package/table/api/class/README.md +10 -0
  188. package/table/api/{helpers/class-attribute-converter.d.ts → class/class-table-attribute-converter.d.ts} +2 -9
  189. package/table/api/{models → class}/class-table-attribute.model.d.ts +1 -1
  190. package/table/api/class/class-table-data-provider.factory.d.ts +4 -0
  191. package/table/api/{helpers/table-descriptor-helpers.d.ts → class/class-table-descriptor-helpers.d.ts} +2 -4
  192. package/table/api/class/class-table-descriptor.factory.d.ts +11 -0
  193. package/table/api/class/index.d.ts +5 -0
  194. package/table/api/data-providers/table-data-provider.factory.d.ts +17 -20
  195. package/table/api/data-providers/table.data-provider.d.ts +4 -12
  196. package/table/api/descriptors/column.descriptor.d.ts +5 -2
  197. package/table/api/descriptors/table-descriptor.factory.d.ts +3 -39
  198. package/table/api/descriptors/table.descriptor.d.ts +3 -3
  199. package/table/api/helpers/column-converter.d.ts +7 -0
  200. package/table/api/helpers/table-data-provider-descriptor-convert.d.ts +3 -3
  201. package/table/api/index.d.ts +1 -3
  202. package/table/api/models/table-columns.model.d.ts +2 -2
  203. package/table/components/column-value/column-value.component.d.ts +2 -0
  204. package/table/components/filter/filter-active-tag/filter-active-tag.component.d.ts +1 -1
  205. package/table/components/filter/filter-form/filter-form.component.d.ts +1 -1
  206. package/table/components/filter/filter-overlay-with-tag/filter-overlay-with-tag.component.d.ts +1 -1
  207. package/table/components/table/table.component.d.ts +0 -10
  208. package/table/helpers/notification.d.ts +10 -1
  209. package/tableview/action/components/action/action.component.d.ts +10 -13
  210. package/tableview/action/components/editor/action-editor.component.d.ts +1 -1
  211. package/tableview/action/components/editor/injector-context/action-editor-injector-context.component.d.ts +6 -5
  212. package/tableview/action/components/localization/data-language-dropdown.component.d.ts +3 -3
  213. package/tableview/action/components/table/action-table.component.d.ts +3 -3
  214. package/tableview/action/helpers/action-execution.d.ts +1 -1
  215. package/tableview/action/helpers/i18n.d.ts +36 -11
  216. package/tableview/action/helpers/notification.d.ts +37 -3
  217. package/tableview/action/models/execution/action-context.model.d.ts +3 -3
  218. package/tableview/action/models/execution/action-instance.model.d.ts +5 -5
  219. package/tableview/action/services/action-executor.service.d.ts +7 -7
  220. package/tableview/action/services/data-provider-executor.service.d.ts +16 -16
  221. package/tableview/action/services/view-container.service.d.ts +1 -1
  222. package/tableview/api/action/descriptors/action-descriptor.factory.d.ts +20 -31
  223. package/tableview/api/action/descriptors/action-editor-descriptor.factory.d.ts +18 -25
  224. package/tableview/api/action/descriptors/action-editor.descriptor.d.ts +39 -47
  225. package/tableview/api/action/descriptors/action-link-descriptor.factory.d.ts +21 -13
  226. package/tableview/api/action/descriptors/action-link.descriptor.d.ts +3 -3
  227. package/tableview/api/action/descriptors/action.descriptor.d.ts +49 -60
  228. package/tableview/api/action/descriptors/editor-action-descriptor.factory.d.ts +21 -0
  229. package/tableview/api/action/descriptors/editor-action-editor-descriptor.factory.d.ts +21 -0
  230. package/tableview/api/action/descriptors/table-action-descriptor.factory.d.ts +36 -0
  231. package/tableview/api/action/descriptors/table-action-editor-descriptor.factory.d.ts +40 -0
  232. package/tableview/api/action/helpers/data-provider-executors.d.ts +13 -8
  233. package/tableview/api/action/models/action-confirmation.model.d.ts +14 -0
  234. package/tableview/api/action/models/action-descriptor.types.d.ts +6 -2
  235. package/tableview/api/action/models/action-error.model.d.ts +1 -1
  236. package/tableview/api/action/models/execution/action-context-validation.model.d.ts +2 -2
  237. package/tableview/api/action/models/execution/action-context.model.d.ts +2 -2
  238. package/tableview/api/action/models/execution/action-instance.model.d.ts +1 -1
  239. package/tableview/api/action/models/tableview-action-default-categories.model.d.ts +5 -5
  240. package/tableview/api/action/services/data-provider-executor.service.d.ts +26 -25
  241. package/tableview/api/class/README.md +13 -0
  242. package/tableview/api/{editor/helpers/class-attribute-converter.d.ts → class/editor/class-editor-attribute-converter.d.ts} +2 -2
  243. package/tableview/api/{editor/models/class-tableview-attribute.model.d.ts → class/editor/class-editor-attribute.model.d.ts} +1 -1
  244. package/tableview/api/class/editor/class-editor-data-provider.factory.d.ts +4 -0
  245. package/tableview/api/{editor/helpers/editor-descriptor-helpers.d.ts → class/editor/class-editor-descriptor-helpers.d.ts} +2 -5
  246. package/tableview/api/class/editor/class-editor-descriptor.factory.d.ts +11 -0
  247. package/tableview/api/class/index.d.ts +10 -0
  248. package/tableview/api/{tableview/helpers/class-attribute-converter.d.ts → class/tableview/class-tableview-attribute-converter.d.ts} +1 -1
  249. package/tableview/api/{tableview/models → class/tableview}/class-tableview-attribute.model.d.ts +2 -2
  250. package/tableview/api/class/tableview/class-tableview-data-provider.factory.d.ts +4 -0
  251. package/tableview/api/{tableview/helpers/tableview-descriptor-helpers.d.ts → class/tableview/class-tableview-descriptor-helpers.d.ts} +1 -2
  252. package/tableview/api/class/tableview/class-tableview-descriptor.factory.d.ts +12 -0
  253. package/tableview/api/editor/data-providers/editor-data-provider.factory.d.ts +17 -16
  254. package/tableview/api/editor/data-providers/editor.data-provider.d.ts +64 -29
  255. package/tableview/api/editor/descriptors/editor-descriptor.factory.d.ts +5 -38
  256. package/tableview/api/editor/descriptors/editor.descriptor.d.ts +48 -112
  257. package/tableview/api/editor/descriptors/field-action.descriptor.d.ts +5 -5
  258. package/tableview/api/editor/descriptors/field-base.descriptor.d.ts +8 -1
  259. package/tableview/api/editor/descriptors/field-lookup.descriptor.d.ts +2 -3
  260. package/tableview/api/editor/descriptors/field-many.descriptor.d.ts +3 -11
  261. package/tableview/api/editor/descriptors/wrappers/editor-descriptor-nested-object-wrapper.d.ts +25 -0
  262. package/tableview/api/editor/models/editor-fields.model.d.ts +25 -21
  263. package/tableview/api/editor/models/form-editor.event.d.ts +0 -4
  264. package/tableview/api/index.d.ts +8 -7
  265. package/tableview/api/tableview/data-providers/tableview-data-provider.factory.d.ts +20 -25
  266. package/tableview/api/tableview/data-providers/tableview.data-provider.d.ts +22 -22
  267. package/tableview/api/tableview/descriptors/tableview-descriptor.factory.d.ts +20 -50
  268. package/tableview/api/tableview/descriptors/tableview.descriptor.d.ts +69 -163
  269. package/tableview/api/tableview/helpers/tableview-create.d.ts +18 -5
  270. package/tableview/api/tableview/helpers/tableview-data-provider-descriptor-convert.d.ts +2 -2
  271. package/tableview/api/tableview/helpers/tableview-default-actions.d.ts +73 -20
  272. package/tableview/api/tableview/helpers/tableview-input-builder.d.ts +87 -9
  273. package/tableview/api/tableview/models/tableview-descriptor-fields-manage-helper.type.d.ts +9 -0
  274. package/tableview/api/tableview/models/tableview-descriptor-helper.type.d.ts +2 -0
  275. package/tableview/api/tableview/models/tableview-input.model.d.ts +1 -1
  276. package/tableview/api/tableview/models/tableview-route.model.d.ts +1 -1
  277. package/tableview/editor/helpers/field-create.d.ts +9 -0
  278. package/tableview/index.d.ts +2 -1
  279. package/tableview/provide.d.ts +7 -0
  280. package/tableview/tableview/components/route/tableview-route.component.d.ts +1 -1
  281. package/tableview/tableview/components/tableview/tableview.component.d.ts +6 -6
  282. package/version-info.json +6 -6
  283. package/core/components/pages/error/error.page.component.d.ts +0 -11
  284. package/core/components/pages/not-found/not-found.page.component.d.ts +0 -11
  285. package/core/data-providers/base-data-provider.factory.d.ts +0 -13
  286. package/esm2022/core/components/pages/error/error.page.component.mjs +0 -24
  287. package/esm2022/core/components/pages/not-found/not-found.page.component.mjs +0 -24
  288. package/esm2022/core/data-providers/base-data-provider.factory.mjs +0 -28
  289. package/esm2022/model/helpers/model.mjs +0 -71
  290. package/esm2022/table/api/helpers/class-attribute-converter.mjs +0 -104
  291. package/esm2022/table/api/helpers/table-descriptor-helpers.mjs +0 -98
  292. package/esm2022/table/api/models/class-table-attribute.model.mjs +0 -2
  293. package/esm2022/tableview/api/action/descriptors/action-confirmation.descriptor.mjs +0 -88
  294. package/esm2022/tableview/api/editor/helpers/class-attribute-converter.mjs +0 -85
  295. package/esm2022/tableview/api/editor/helpers/editor-descriptor-helpers.mjs +0 -95
  296. package/esm2022/tableview/api/editor/models/class-tableview-attribute.model.mjs +0 -2
  297. package/esm2022/tableview/api/tableview/helpers/class-attribute-converter.mjs +0 -34
  298. package/esm2022/tableview/api/tableview/helpers/tableview-descriptor-helpers.mjs +0 -110
  299. package/esm2022/tableview/api/tableview/models/class-tableview-attribute.model.mjs +0 -2
  300. package/tableview/api/action/descriptors/action-confirmation.descriptor.d.ts +0 -37
@@ -1,42 +1,9 @@
1
- import { CommonsInternalError, findReflectTypeName } from '@mediusinc/mng-commons/core';
2
- import { findClassIdAttribute, findClassTitleAttribute } from '../helpers/model';
3
1
  import { TypeDescriptor } from './type.descriptor';
4
2
  export class ModelDescriptor {
5
- constructor(type, idProperty, titleProperty, i18nBaseKey) {
6
- this._type = type;
3
+ constructor(idProperty, titleProperty, i18nBaseKey) {
7
4
  this._idProperty = idProperty;
8
5
  this._titleProperty = titleProperty;
9
- if (!this._idProperty && type) {
10
- this._idProperty = findClassIdAttribute(type) ?? undefined;
11
- }
12
- if (!this._titleProperty && type) {
13
- this._titleProperty = findClassTitleAttribute(type) ?? undefined;
14
- }
15
- this._i18nBaseKey =
16
- (typeof i18nBaseKey === 'string' || typeof i18nBaseKey === 'undefined' ? i18nBaseKey : findReflectTypeName(i18nBaseKey)) ??
17
- findReflectTypeName(type) ??
18
- '';
19
- }
20
- /**
21
- * @deprecated Use standalone {model()} instead.
22
- */
23
- static create(idProperty, titleProperty, i18nBaseKey) {
24
- return new ModelDescriptor(undefined, idProperty, titleProperty, i18nBaseKey);
25
- }
26
- /**
27
- * @deprecated Use standalone {model()} instead.
28
- */
29
- static fromClass(type, idProperty, titleProperty, i18nBaseKey) {
30
- return new ModelDescriptor(type, idProperty, titleProperty, i18nBaseKey);
31
- }
32
- get type() {
33
- return this._type;
34
- }
35
- /**
36
- * @deprecated Use `i18nBaseKey` instead.
37
- */
38
- get typeName() {
39
- return this.i18nBaseKey;
6
+ this._i18nBaseKey = i18nBaseKey ?? '';
40
7
  }
41
8
  get i18nBaseKey() {
42
9
  return this._i18nBaseKey;
@@ -64,33 +31,23 @@ export class ModelDescriptor {
64
31
  return this;
65
32
  }
66
33
  withI18nBase(base) {
67
- if (typeof base !== 'string') {
68
- const typeName = findReflectTypeName(base);
69
- if (!typeName) {
70
- throw new CommonsInternalError(`Could not find define i18nBaseKey for ${base} on model ${this.i18nBaseKey}`);
71
- }
72
- base = typeName;
73
- }
74
34
  this._i18nBaseKey = base;
75
35
  return this;
76
36
  }
77
37
  copy() {
78
- return new ModelDescriptor(this._type, this._idProperty, this._titleProperty, this._i18nBaseKey);
38
+ return new ModelDescriptor(this._idProperty, this._titleProperty, this._i18nBaseKey);
79
39
  }
80
40
  }
81
- export function model(typeOrClassOrOpts, opts) {
82
- if (typeOrClassOrOpts == null) {
83
- return new ModelDescriptor(undefined);
84
- }
85
- else if (typeOrClassOrOpts instanceof TypeDescriptor) {
86
- return new ModelDescriptor(undefined, opts?.id, opts?.title, opts?.i18nBase);
41
+ export function model(typeOrOpts, opts) {
42
+ if (typeOrOpts == null) {
43
+ return new ModelDescriptor();
87
44
  }
88
- else if (typeof typeOrClassOrOpts === 'function') {
89
- return new ModelDescriptor(typeOrClassOrOpts, opts?.id, opts?.title, opts?.i18nBase);
45
+ else if (typeOrOpts instanceof TypeDescriptor) {
46
+ return new ModelDescriptor(opts?.id, opts?.title, opts?.i18nBase);
90
47
  }
91
48
  else {
92
- const typeOrClassAsOpts = typeOrClassOrOpts;
93
- return new ModelDescriptor(undefined, typeOrClassAsOpts?.id, typeOrClassAsOpts?.title, typeOrClassAsOpts?.i18nBase);
49
+ const modelOpts = typeOrOpts;
50
+ return new ModelDescriptor(modelOpts?.id, modelOpts?.title, modelOpts?.i18nBase);
94
51
  }
95
52
  }
96
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kZWwuZGVzY3JpcHRvci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL21vZGVsL3NyYy9kZXNjcmlwdG9ycy9tb2RlbC5kZXNjcmlwdG9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBMEIsb0JBQW9CLEVBQW9CLG1CQUFtQixFQUFDLE1BQU0sNkJBQTZCLENBQUM7QUFFakksT0FBTyxFQUFDLG9CQUFvQixFQUFFLHVCQUF1QixFQUFDLE1BQU0sa0JBQWtCLENBQUM7QUFDL0UsT0FBTyxFQUFDLGNBQWMsRUFBQyxNQUFNLG1CQUFtQixDQUFDO0FBRWpELE1BQU0sT0FBTyxlQUFlO0lBTXhCLFlBQW1CLElBQWdCLEVBQUUsVUFBbUIsRUFBRSxhQUFrRCxFQUFFLFdBQXFDO1FBQy9JLElBQUksQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDO1FBQ2xCLElBQUksQ0FBQyxXQUFXLEdBQUcsVUFBVSxDQUFDO1FBQzlCLElBQUksQ0FBQyxjQUFjLEdBQUcsYUFBYSxDQUFDO1FBQ3BDLElBQUksQ0FBQyxJQUFJLENBQUMsV0FBVyxJQUFJLElBQUksRUFBRSxDQUFDO1lBQzVCLElBQUksQ0FBQyxXQUFXLEdBQUcsb0JBQW9CLENBQUMsSUFBbUMsQ0FBQyxJQUFJLFNBQVMsQ0FBQztRQUM5RixDQUFDO1FBQ0QsSUFBSSxDQUFDLElBQUksQ0FBQyxjQUFjLElBQUksSUFBSSxFQUFFLENBQUM7WUFDL0IsSUFBSSxDQUFDLGNBQWMsR0FBRyx1QkFBdUIsQ0FBQyxJQUFtQyxDQUFDLElBQUksU0FBUyxDQUFDO1FBQ3BHLENBQUM7UUFDRCxJQUFJLENBQUMsWUFBWTtZQUNiLENBQUMsT0FBTyxXQUFXLEtBQUssUUFBUSxJQUFJLE9BQU8sV0FBVyxLQUFLLFdBQVcsQ0FBQyxDQUFDLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQyxtQkFBbUIsQ0FBQyxXQUFXLENBQUMsQ0FBQztnQkFDeEgsbUJBQW1CLENBQUMsSUFBd0Is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T0FBTyxJQUFJLGVBQWUsQ0FBMEIsaUJBQXFDLEVBQUUsSUFBSSxFQUFFLEVBQVksRUFBRSxJQUFJLEVBQUUsS0FBZSxFQUFFLElBQUksRUFBRSxRQUFRLENBQUMsQ0FBQztJQUMxSixDQUFDO1NBQU0sQ0FBQztRQUNKLE1BQU0saUJBQWlCLEdBQUcsaUJBQXFELENBQUM7UUFDaEYsT0FBTyxJQUFJLGVBQWUsQ0FBbUIsU0FBUyxFQUFFLGlCQUFpQixFQUFFLEVBQVksRUFBRSxpQkFBaUIsRUFBRSxLQUFlLEVBQUUsaUJBQWlCLEVBQUUsUUFBUSxDQUFDLENBQUM7SUFDOUosQ0FBQztBQUNMLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NsYXNzT3B0VHlwZSwgQ2xhc3NUeXBlLCBDb21tb25zSW50ZXJuYWxFcnJvciwgSU1vZGVsRGVzY3JpcHRvciwgZmluZFJlZmxlY3RUeXBlTmFtZX0gZnJvbSAnQG1lZGl1c2luYy9tbmctY29tbW9ucy9jb3JlJztcblxuaW1wb3J0IHtmaW5kQ2xhc3NJZEF0dHJpYnV0ZSwgZmluZENsYXNzVGl0bGVBdHRyaWJ1dGV9IGZyb20gJy4uL2hlbHBlcnMvbW9kZWwnO1xuaW1wb3J0IHtUeXBlRGVzY3JpcHRvcn0gZnJvbSAnLi90eXBlLmRlc2NyaXB0b3InO1xuXG5leHBvcnQgY2xhc3MgTW9kZWxEZXNjcmlwdG9yPE1vZGVsLCBNb2RlbENsYXNzID0gQ2xhc3NPcHRUeXBlPE1vZGVsPj4gaW1wbGVtZW50cyBJTW9kZWxEZXNjcmlwdG9yPE1vZGVsLCBNb2RlbENsYXNzPiB7XG4gICAgcHJpdmF0ZSByZWFkb25seSBfdHlwZTogTW9kZWxDbGFzcztcbiAgICBwcml2YXRlIF9pMThuQmFzZUtleTogc3RyaW5nO1xuICAgIHByaXZhdGUgX2lkUHJvcGVydHk/OiBzdHJpbmc7XG4gICAgcHJpdmF0ZSBfdGl0bGVQcm9wZXJ0eT86IHN0cmluZyB8ICgoaXRlbTogTW9kZWwpID0+IHN0cmluZyk7XG5cbiAgICBwdWJsaWMgY29uc3RydWN0b3IodHlwZTogTW9kZWxDbGFzcywgaWRQcm9wZXJ0eT86IHN0cmluZywgdGl0bGVQcm9wZXJ0eT86IHN0cmluZyB8ICgoaXRlbTogTW9kZWwpID0+IHN0cmluZyksIGkxOG5CYXNlS2V5Pzogc3RyaW5nIHwgQ2xhc3NUeXBlPGFueT4pIHtcbiAgICAgICAgdGhpcy5fdHlwZSA9IHR5cGU7XG4gICAgICAgIHRoaXMuX2lkUHJvcGVydHkgPSBpZFByb3BlcnR5O1xuICAgICAgICB0aGlzLl90aXRsZVByb3BlcnR5ID0gdGl0bGVQcm9wZXJ0eTtcbiAgICAgICAgaWYgKCF0aGlzLl9pZFByb3BlcnR5ICYmIHR5cGUpIHtcbiAgICAgICAgICAgIHRoaXMuX2lkUHJvcGVydHkgPSBmaW5kQ2xhc3NJZEF0dHJpYnV0ZSh0eXBlIGFzIHVua25vd24gYXMgQ2xhc3NUeXBlPE1vZGVsPikgPz8gdW5kZWZpbmVkO1xuICAgICAgICB9XG4gICAgICAgIGlmICghdGhpcy5fdGl0bGVQcm9wZXJ0eSAmJiB0eXBlKSB7XG4gICAgICAgICAgICB0aGlzLl90aXRsZVByb3BlcnR5ID0gZmluZENsYXNzVGl0bGVBdHRyaWJ1dGUodHlwZSBhcyB1bmtub3duIGFzIENsYXNzVHlwZTxNb2RlbD4pID8/IHVuZGVmaW5lZDtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLl9pMThuQmFzZUtleSA9XG4gICAgICAgICAgICAodHlwZW9mIGkxOG5CYXNlS2V5ID09PSAnc3RyaW5nJyB8fCB0eXBlb2YgaTE4bkJhc2VLZXkgPT09ICd1bmRlZmluZWQnID8gaTE4bkJhc2VLZXkgOiBmaW5kUmVmbGVjdFR5cGVOYW1lKGkxOG5CYXNlS2V5KSkgPz9cbiAgICAgICAgICAgIGZpbmRSZWZsZWN0VHlwZU5hbWUodHlwZSBhcyBDbGFzc1R5cGU8TW9kZWw+KSA/P1xuICAgICAgICAgICAgJyc7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQGRlcHJlY2F0ZWQgVXNlIHN0YW5kYWxvbmUge21vZGVsKCl9IGluc3RlYWQuXG4gICAgICovXG4gICAgcHVibGljIHN0YXRpYyBjcmVhdGU8TW9kZWw+KGlkUHJvcGVydHk/OiBrZXlvZiBNb2RlbCwgdGl0bGVQcm9wZXJ0eT86IGtleW9mIE1vZGVsLCBpMThuQmFzZUtleT86IHN0cmluZyB8IENsYXNzVHlwZTx1bmtub3duPik6IE1vZGVsRGVzY3JpcHRvcjxNb2RlbCwgdW5kZWZpbmVkPiB7XG4gICAgICAgIHJldHVybiBuZXcgTW9kZWxEZXNjcmlwdG9yKHVuZGVmaW5lZCwgaWRQcm9wZXJ0eSBhcyBzdHJpbmcsIHRpdGxlUHJvcGVydHkgYXMgc3RyaW5nLCBpMThuQmFzZUtleSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQGRlcHJlY2F0ZWQgVXNlIHN0YW5kYWxvbmUge21vZGVsKCl9IGluc3RlYWQuXG4gICAgICovXG4gICAgcHVibGljIHN0YXRpYyBmcm9tQ2xhc3M8TW9kZWw+KFxuICAgICAgICB0eXBlOiBDbGFzc1R5cGU8TW9kZWw+LFxuICAgICAgICBpZFByb3BlcnR5Pzoga2V5b2YgTW9kZWwsXG4gICAgICAgIHRpdGxlUHJvcGVydHk/OiBrZXlvZiBNb2RlbCxcbiAgICAgICAgaTE4bkJhc2VLZXk/OiBzdHJpbmcgfCBDbGFzc1R5cGU8dW5rbm93bj5cbiAgICApOiBNb2RlbERlc2NyaXB0b3I8TW9kZWwsIENsYXNzVHlwZTxNb2RlbD4+IHtcbiAgICAgICAgcmV0dXJuIG5ldyBNb2RlbERlc2NyaXB0b3IodHlwZSwgaWRQcm9wZXJ0eSBhcyBzdHJpbmcsIHRpdGxlUHJvcGVydHkgYXMgc3RyaW5nLCBpMThuQmFzZUtleSk7XG4gICAgfVxuXG4gICAgcHVibGljIGdldCB0eXBlKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5fdHlwZTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBAZGVwcmVjYXRlZCBVc2UgYGkxOG5CYXNlS2V5YCBpbnN0ZWFkLlxuICAgICAqL1xuICAgIHB1YmxpYyBnZXQgdHlwZU5hbWUoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLmkxOG5CYXNlS2V5O1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXQgaTE4bkJhc2VLZXkoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLl9pMThuQmFzZUtleTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0IGlkUHJvcGVydHkoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLl9pZFByb3BlcnR5O1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXQgdGl0bGVQcm9wZXJ0eSgpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX3RpdGxlUHJvcGVydHk7XG4gICAgfVxuXG4gICAgcHVibGljIHdpdGhJZFByb3BlcnR5KHByb3BlcnR5OiBrZXlvZiBNb2RlbCk6IHRoaXMge1xuICAgICAgICB0aGlzLl9pZFByb3BlcnR5ID0gcHJvcGVydHkgYXMgc3RyaW5nO1xuICAgICAgICByZXR1cm4gdGhpcztcbiAgICB9XG5cbiAgICBwdWJsaWMgd2l0aElkUHJvcGVydHlVbnNhZmUocHJvcGVydHk6IHN0cmluZyk6IHRoaXMge1xuICAgICAgICB0aGlzLl9pZFByb3BlcnR5ID0gcHJvcGVydHk7XG4gICAgICAgIHJldHVybiB0aGlzO1xuICAgIH1cblxuICAgIHB1YmxpYyB3aXRoVGl0bGVQcm9wZXJ0eShwcm9wZXJ0eToga2V5b2YgTW9kZWwpOiB0aGlzIHtcbiAgICAgICAgdGhpcy5fdGl0bGVQcm9wZXJ0eSA9IHByb3BlcnR5IGFzIHN0cmluZztcbiAgICAgICAgcmV0dXJuIHRoaXM7XG4gICAgfVxuXG4gICAgcHVibGljIHdpdGhUaXRsZVByb3BlcnR5VW5zYWZlKHByb3BlcnR5OiBzdHJpbmcpOiB0aGlzIHtcbiAgICAgICAgdGhpcy5fdGl0bGVQcm9wZXJ0eSA9IHByb3BlcnR5O1xuICAgICAgICByZXR1cm4gdGhpcztcbiAgICB9XG5cbiAgICBwdWJsaWMgd2l0aEkxOG5CYXNlKGJhc2U6IENsYXNzVHlwZTxhbnk+IHwgc3RyaW5nKTogdGhpcyB7XG4gICAgICAgIGlmICh0eXBlb2YgYmFzZSAhPT0gJ3N0cmluZycpIHtcbiAgICAgICAgICAgIGNvbnN0IHR5cGVOYW1lID0gZmluZFJlZmxlY3RUeXBlTmFtZShiYXNlKTtcbiAgICAgICAgICAgIGlmICghdHlwZU5hbWUpIHtcbiAgICAgICAgICAgICAgICB0aHJvdyBuZXcgQ29tbW9uc0ludGVybmFsRXJyb3IoYENvdWxkIG5vdCBmaW5kIGRlZmluZSBpMThuQmFzZUtleSBmb3IgJHtiYXNlfSBvbiBtb2RlbCAke3RoaXMuaTE4bkJhc2VLZXl9YCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBiYXNlID0gdHlwZU5hbWU7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5faTE4bkJhc2VLZXkgPSBiYXNlO1xuICAgICAgICByZXR1cm4gdGhpcztcbiAgICB9XG5cbiAgICBwdWJsaWMgY29weSgpOiBNb2RlbERlc2NyaXB0b3I8TW9kZWwsIE1vZGVsQ2xhc3M+IHtcbiAgICAgICAgcmV0dXJuIG5ldyBNb2RlbERlc2NyaXB0b3I8TW9kZWwsIE1vZGVsQ2xhc3M+KHRoaXMuX3R5cGUsIHRoaXMuX2lkUHJvcGVydHksIHRoaXMuX3RpdGxlUHJvcGVydHksIHRoaXMuX2kxOG5CYXNlS2V5KTtcbiAgICB9XG59XG5cbmV4cG9ydCB0eXBlIE1vZGVsRGVzY3JpcHRvckNyZWF0ZU9wdHM8TW9kZWw+ID0ge1xuICAgIGlkPzoga2V5b2YgTW9kZWw7XG4gICAgdGl0bGU/OiBrZXlvZiBNb2RlbCB8ICgoaXRlbTogTW9kZWwpID0+IHN0cmluZyk7XG4gICAgaTE4bkJhc2U/OiBzdHJpbmcgfCBDbGFzc1R5cGU8YW55Pjtcbn07XG5cbmV4cG9ydCBmdW5jdGlvbiBtb2RlbDxNb2RlbD4oKTogTW9kZWxEZXNjcmlwdG9yPE1vZGVsLCB1bmRlZmluZWQ+O1xuZXhwb3J0IGZ1bmN0aW9uIG1vZGVsPE1vZGVsPihvcHRzOiBNb2RlbERlc2NyaXB0b3JDcmVhdGVPcHRzPE1vZGVsPik6IE1vZGVsRGVzY3JpcHRvcjxNb2RlbCwgdW5kZWZpbmVkPjtcbmV4cG9ydCBmdW5jdGlvbiBtb2RlbDxNb2RlbD4odHlwZTogVHlwZURlc2NyaXB0b3I8TW9kZWw+LCBvcHRzPzogTW9kZWxEZXNjcmlwdG9yQ3JlYXRlT3B0czxNb2RlbD4pOiBNb2RlbERlc2NyaXB0b3I8TW9kZWwsIHVuZGVmaW5lZD47XG5leHBvcnQgZnVuY3Rpb24gbW9kZWw8TW9kZWw+KGNsYXp6OiBDbGFzc1R5cGU8TW9kZWw+LCBvcHRzPzogTW9kZWxEZXNjcmlwdG9yQ3JlYXRlT3B0czxNb2RlbD4pOiBNb2RlbERlc2NyaXB0b3I8TW9kZWwsIENsYXNzVHlwZTxNb2RlbD4+O1xuZXhwb3J0IGZ1bmN0aW9uIG1vZGVsPE1vZGVsPih0eXBlT3JDbGFzc09yT3B0cz86IENsYXNzVHlwZTxNb2RlbD4gfCBUeXBlRGVzY3JpcHRvcjxNb2RlbD4gfCBNb2RlbERlc2NyaXB0b3JDcmVhdGVPcHRzPE1vZGVsPiwgb3B0cz86IE1vZGVsRGVzY3JpcHRvckNyZWF0ZU9wdHM8TW9kZWw+KSB7XG4gICAgaWYgKHR5cGVPckNsYXNzT3JPcHRzID09IG51bGwpIHtcbiAgICAgICAgcmV0dXJuIG5ldyBNb2RlbERlc2NyaXB0b3I8TW9kZWwsIHVuZGVmaW5lZD4odW5kZWZpbmVkKTtcbiAgICB9IGVsc2UgaWYgKHR5cGVPckNsYXNzT3JPcHRzIGluc3RhbmNlb2YgVHlwZURlc2NyaXB0b3IpIHtcbiAgICAgICAgcmV0dXJuIG5ldyBNb2RlbERlc2NyaXB0b3I8TW9kZWwsIHVuZGVmaW5lZD4odW5kZWZpbmVkLCBvcHRzPy5pZCBhcyBzdHJpbmcsIG9wdHM/LnRpdGxlIGFzIHN0cmluZywgb3B0cz8uaTE4bkJhc2UpO1xuICAgIH0gZWxzZSBpZiAodHlwZW9mIHR5cGVPckNsYXNzT3JPcHRzID09PSAnZnVuY3Rpb24nKSB7XG4gICAgICAgIHJldHVybiBuZXcgTW9kZWxEZXNjcmlwdG9yPE1vZGVsLCBDbGFzc1R5cGU8TW9kZWw+Pih0eXBlT3JDbGFzc09yT3B0cyBhcyBDbGFzc1R5cGU8TW9kZWw+LCBvcHRzPy5pZCBhcyBzdHJpbmcsIG9wdHM/LnRpdGxlIGFzIHN0cmluZywgb3B0cz8uaTE4bkJhc2UpO1xuICAgIH0gZWxzZSB7XG4gICAgICAgIGNvbnN0IHR5cGVPckNsYXNzQXNPcHRzID0gdHlwZU9yQ2xhc3NPck9wdHMgYXMgTW9kZWxEZXNjcmlwdG9yQ3JlYXRlT3B0czxNb2RlbD47XG4gICAgICAgIHJldHVybiBuZXcgTW9kZWxEZXNjcmlwdG9yPE1vZGVsLCB1bmRlZmluZWQ+KHVuZGVmaW5lZCwgdHlwZU9yQ2xhc3NBc09wdHM/LmlkIGFzIHN0cmluZywgdHlwZU9yQ2xhc3NBc09wdHM/LnRpdGxlIGFzIHN0cmluZywgdHlwZU9yQ2xhc3NBc09wdHM/LmkxOG5CYXNlKTtcbiAgICB9XG59XG4iXX0=
53
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kZWwuZGVzY3JpcHRvci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL21vZGVsL3NyYy9kZXNjcmlwdG9ycy9tb2RlbC5kZXNjcmlwdG9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE9BQU8sRUFBQyxjQUFjLEVBQUMsTUFBTSxtQkFBbUIsQ0FBQztBQUVqRCxNQUFNLE9BQU8sZUFBZTtJQUt4QixZQUFtQixVQUFtQixFQUFFLGFBQWtELEVBQUUsV0FBb0I7UUFDNUcsSUFBSSxDQUFDLFdBQVcsR0FBRyxVQUFVLENBQUM7UUFDOUIsSUFBSSxDQUFDLGNBQWMsR0FBRyxhQUFhLENBQUM7UUFDcEMsSUFBSSxDQUFDLFlBQVksR0FBRyxXQUFXLElBQUksRUFBRSxDQUFDO0lBQzFDLENBQUM7SUFFRCxJQUFXLFdBQVc7UUFDbEIsT0FBTyxJQUFJLENBQUMsWUFBWSxDQUFDO0lBQzdCLENBQUM7SUFFRCxJQUFXLFVBQVU7UUFDakIsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDO0lBQzVCLENBQUM7SUFFRCxJQUFXLGFBQWE7UUFDcEIsT0FBTyxJQUFJLENBQUMsY0FBYyxDQUFDO0lBQy9CLENBQUM7SUFFTSxjQUFjLENBQUMsUUFBcUI7UUFDdkMsSUFBSSxDQUFDLFdBQVcsR0FBRyxRQUFrQixDQUFDO1FBQ3RDLE9BQU8sSUFBSSxDQUFDO0lBQ2hCLENBQUM7SUFFTSxvQkFBb0IsQ0FBQyxRQUFnQjtRQUN4QyxJQUFJLENBQUMsV0FBVyxHQUFHLFFBQVEsQ0FBQztRQUM1QixPQUFPLElBQUksQ0FBQztJQUNoQixDQUFDO0lBRU0saUJBQWlCLENBQUMsUUFBcUI7UUFDMUMsSUFBSSxDQUFDLGNBQWMsR0FBRyxRQUFrQixDQUFDO1FBQ3pDLE9BQU8sSUFBSSxDQUFDO0lBQ2hCLENBQUM7SUFFTSx1QkFBdUIsQ0FBQyxRQUFnQjtRQUMzQyxJQUFJLENBQUMsY0FBYyxHQUFHLFFBQVEsQ0FBQztRQUMvQixPQUFPLElBQUksQ0FBQztJQUNoQixDQUFDO0lBRU0sWUFBWSxDQUFDLElBQVk7UUFDNUIsSUFBSSxDQUFDLFlBQVksR0FBRyxJQUFJLENBQUM7UUFDekIsT0FBTyxJQUFJLENBQUM7SUFDaEIsQ0FBQztJQUVNLElBQUk7UUFDUCxPQUFPLElBQUksZUFBZSxDQUFRLElBQUksQ0FBQyxXQUFXLEVBQUUsSUFBSSxDQUFDLGNBQWMsRUFBRSxJQUFJLENBQUMsWUFBWSxDQUFDLENBQUM7SUFDaEcsQ0FBQztDQUNKO0FBV0QsTUFBTSxVQUFVLEtBQUssQ0FBUSxVQUFxRSxFQUFFLElBQXVDO0lBQ3ZJLElBQUksVUFBVSxJQUFJLElBQUksRUFBRSxDQUFDO1FBQ3JCLE9BQU8sSUFBSSxlQUFlLEVBQVMsQ0FBQztJQUN4QyxDQUFDO1NBQU0sSUFBSSxVQUFVLFlBQVksY0FBYyxFQUFFLENBQUM7UUFDOUMsT0FBTyxJQUFJLGVBQWUsQ0FBUSxJQUFJLEVBQUUsRUFBWSxFQUFFLElBQUksRUFBRSxLQUFlLEVBQUUsSUFBSSxFQUFFLFFBQVEsQ0FBQyxDQUFDO0lBQ2pHLENBQUM7U0FBTSxDQUFDO1FBQ0osTUFBTSxTQUFTLEdBQUcsVUFBOEMsQ0FBQztRQUNqRSxPQUFPLElBQUksZUFBZSxDQUFRLFNBQVMsRUFBRSxFQUFZLEVBQUUsU0FBUyxFQUFFLEtBQWUsRUFBRSxTQUFTLEVBQUUsUUFBUSxDQUFDLENBQUM7SUFDaEgsQ0FBQztBQUNMLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0lNb2RlbERlc2NyaXB0b3J9IGZyb20gJ0BtZWRpdXNpbmMvbW5nLWNvbW1vbnMvY29yZSc7XG5cbmltcG9ydCB7VHlwZURlc2NyaXB0b3J9IGZyb20gJy4vdHlwZS5kZXNjcmlwdG9yJztcblxuZXhwb3J0IGNsYXNzIE1vZGVsRGVzY3JpcHRvcjxNb2RlbD4gaW1wbGVtZW50cyBJTW9kZWxEZXNjcmlwdG9yPE1vZGVsPiB7XG4gICAgcHJvdGVjdGVkIF9pMThuQmFzZUtleTogc3RyaW5nO1xuICAgIHByb3RlY3RlZCBfaWRQcm9wZXJ0eT86IHN0cmluZztcbiAgICBwcm90ZWN0ZWQgX3RpdGxlUHJvcGVydHk/OiBzdHJpbmcgfCAoKGl0ZW06IE1vZGVsKSA9PiBzdHJpbmcpO1xuXG4gICAgcHVibGljIGNvbnN0cnVjdG9yKGlkUHJvcGVydHk/OiBzdHJpbmcsIHRpdGxlUHJvcGVydHk/OiBzdHJpbmcgfCAoKGl0ZW06IE1vZGVsKSA9PiBzdHJpbmcpLCBpMThuQmFzZUtleT86IHN0cmluZykge1xuICAgICAgICB0aGlzLl9pZFByb3BlcnR5ID0gaWRQcm9wZXJ0eTtcbiAgICAgICAgdGhpcy5fdGl0bGVQcm9wZXJ0eSA9IHRpdGxlUHJvcGVydHk7XG4gICAgICAgIHRoaXMuX2kxOG5CYXNlS2V5ID0gaTE4bkJhc2VLZXkgPz8gJyc7XG4gICAgfVxuXG4gICAgcHVibGljIGdldCBpMThuQmFzZUtleSgpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2kxOG5CYXNlS2V5O1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXQgaWRQcm9wZXJ0eSgpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2lkUHJvcGVydHk7XG4gICAgfVxuXG4gICAgcHVibGljIGdldCB0aXRsZVByb3BlcnR5KCkge1xuICAgICAgICByZXR1cm4gdGhpcy5fdGl0bGVQcm9wZXJ0eTtcbiAgICB9XG5cbiAgICBwdWJsaWMgd2l0aElkUHJvcGVydHkocHJvcGVydHk6IGtleW9mIE1vZGVsKTogdGhpcyB7XG4gICAgICAgIHRoaXMuX2lkUHJvcGVydHkgPSBwcm9wZXJ0eSBhcyBzdHJpbmc7XG4gICAgICAgIHJldHVybiB0aGlzO1xuICAgIH1cblxuICAgIHB1YmxpYyB3aXRoSWRQcm9wZXJ0eVVuc2FmZShwcm9wZXJ0eTogc3RyaW5nKTogdGhpcyB7XG4gICAgICAgIHRoaXMuX2lkUHJvcGVydHkgPSBwcm9wZXJ0eTtcbiAgICAgICAgcmV0dXJuIHRoaXM7XG4gICAgfVxuXG4gICAgcHVibGljIHdpdGhUaXRsZVByb3BlcnR5KHByb3BlcnR5OiBrZXlvZiBNb2RlbCk6IHRoaXMge1xuICAgICAgICB0aGlzLl90aXRsZVByb3BlcnR5ID0gcHJvcGVydHkgYXMgc3RyaW5nO1xuICAgICAgICByZXR1cm4gdGhpcztcbiAgICB9XG5cbiAgICBwdWJsaWMgd2l0aFRpdGxlUHJvcGVydHlVbnNhZmUocHJvcGVydHk6IHN0cmluZyk6IHRoaXMge1xuICAgICAgICB0aGlzLl90aXRsZVByb3BlcnR5ID0gcHJvcGVydHk7XG4gICAgICAgIHJldHVybiB0aGlzO1xuICAgIH1cblxuICAgIHB1YmxpYyB3aXRoSTE4bkJhc2UoYmFzZTogc3RyaW5nKTogdGhpcyB7XG4gICAgICAgIHRoaXMuX2kxOG5CYXNlS2V5ID0gYmFzZTtcbiAgICAgICAgcmV0dXJuIHRoaXM7XG4gICAgfVxuXG4gICAgcHVibGljIGNvcHkoKTogTW9kZWxEZXNjcmlwdG9yPE1vZGVsPiB7XG4gICAgICAgIHJldHVybiBuZXcgTW9kZWxEZXNjcmlwdG9yPE1vZGVsPih0aGlzLl9pZFByb3BlcnR5LCB0aGlzLl90aXRsZVByb3BlcnR5LCB0aGlzLl9pMThuQmFzZUtleSk7XG4gICAgfVxufVxuXG5leHBvcnQgdHlwZSBNb2RlbERlc2NyaXB0b3JDcmVhdGVPcHRzPE1vZGVsPiA9IHtcbiAgICBpZD86IGtleW9mIE1vZGVsO1xuICAgIHRpdGxlPzoga2V5b2YgTW9kZWwgfCAoKGl0ZW06IE1vZGVsKSA9PiBzdHJpbmcpO1xuICAgIGkxOG5CYXNlPzogc3RyaW5nO1xufTtcblxuZXhwb3J0IGZ1bmN0aW9uIG1vZGVsPE1vZGVsPigpOiBNb2RlbERlc2NyaXB0b3I8TW9kZWw+O1xuZXhwb3J0IGZ1bmN0aW9uIG1vZGVsPE1vZGVsPihvcHRzOiBNb2RlbERlc2NyaXB0b3JDcmVhdGVPcHRzPE1vZGVsPik6IE1vZGVsRGVzY3JpcHRvcjxNb2RlbD47XG5leHBvcnQgZnVuY3Rpb24gbW9kZWw8TW9kZWw+KHR5cGU6IFR5cGVEZXNjcmlwdG9yPE1vZGVsPiwgb3B0cz86IE1vZGVsRGVzY3JpcHRvckNyZWF0ZU9wdHM8TW9kZWw+KTogTW9kZWxEZXNjcmlwdG9yPE1vZGVsPjtcbmV4cG9ydCBmdW5jdGlvbiBtb2RlbDxNb2RlbD4odHlwZU9yT3B0cz86IFR5cGVEZXNjcmlwdG9yPE1vZGVsPiB8IE1vZGVsRGVzY3JpcHRvckNyZWF0ZU9wdHM8TW9kZWw+LCBvcHRzPzogTW9kZWxEZXNjcmlwdG9yQ3JlYXRlT3B0czxNb2RlbD4pIHtcbiAgICBpZiAodHlwZU9yT3B0cyA9PSBudWxsKSB7XG4gICAgICAgIHJldHVybiBuZXcgTW9kZWxEZXNjcmlwdG9yPE1vZGVsPigpO1xuICAgIH0gZWxzZSBpZiAodHlwZU9yT3B0cyBpbnN0YW5jZW9mIFR5cGVEZXNjcmlwdG9yKSB7XG4gICAgICAgIHJldHVybiBuZXcgTW9kZWxEZXNjcmlwdG9yPE1vZGVsPihvcHRzPy5pZCBhcyBzdHJpbmcsIG9wdHM/LnRpdGxlIGFzIHN0cmluZywgb3B0cz8uaTE4bkJhc2UpO1xuICAgIH0gZWxzZSB7XG4gICAgICAgIGNvbnN0IG1vZGVsT3B0cyA9IHR5cGVPck9wdHMgYXMgTW9kZWxEZXNjcmlwdG9yQ3JlYXRlT3B0czxNb2RlbD47XG4gICAgICAgIHJldHVybiBuZXcgTW9kZWxEZXNjcmlwdG9yPE1vZGVsPihtb2RlbE9wdHM/LmlkIGFzIHN0cmluZywgbW9kZWxPcHRzPy50aXRsZSBhcyBzdHJpbmcsIG1vZGVsT3B0cz8uaTE4bkJhc2UpO1xuICAgIH1cbn1cbiJdfQ==
@@ -1,15 +1,7 @@
1
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
1
2
  export class TypeDescriptor {
2
- constructor(classType) {
3
- this._classType = classType;
4
- }
5
- get classType() {
6
- return this._classType;
7
- }
8
3
  }
9
4
  export function type() {
10
5
  return new TypeDescriptor();
11
6
  }
12
- export function typeClass(type) {
13
- return new TypeDescriptor(type);
14
- }
15
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZS5kZXNjcmlwdG9yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vbW9kZWwvc3JjL2Rlc2NyaXB0b3JzL3R5cGUuZGVzY3JpcHRvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxNQUFNLE9BQU8sY0FBYztJQUd2QixZQUFtQixTQUEyQjtRQUMxQyxJQUFJLENBQUMsVUFBVSxHQUFHLFNBQVMsQ0FBQztJQUNoQyxDQUFDO0lBRUQsSUFBVyxTQUFTO1FBQ2hCLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQztJQUMzQixDQUFDO0NBQ0o7QUFFRCxNQUFNLFVBQVUsSUFBSTtJQUNoQixPQUFPLElBQUksY0FBYyxFQUFRLENBQUM7QUFDdEMsQ0FBQztBQUVELE1BQU0sVUFBVSxTQUFTLENBQU8sSUFBcUI7SUFDakQsT0FBTyxJQUFJLGNBQWMsQ0FBTyxJQUFJLENBQUMsQ0FBQztBQUMxQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDbGFzc1R5cGV9IGZyb20gJ0BtZWRpdXNpbmMvbW5nLWNvbW1vbnMvY29yZSc7XG5cbmV4cG9ydCBjbGFzcyBUeXBlRGVzY3JpcHRvcjxUeXBlPiB7XG4gICAgcHJpdmF0ZSByZWFkb25seSBfY2xhc3NUeXBlPzogQ2xhc3NUeXBlPFR5cGU+O1xuXG4gICAgcHVibGljIGNvbnN0cnVjdG9yKGNsYXNzVHlwZT86IENsYXNzVHlwZTxUeXBlPikge1xuICAgICAgICB0aGlzLl9jbGFzc1R5cGUgPSBjbGFzc1R5cGU7XG4gICAgfVxuXG4gICAgcHVibGljIGdldCBjbGFzc1R5cGUoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLl9jbGFzc1R5cGU7XG4gICAgfVxufVxuXG5leHBvcnQgZnVuY3Rpb24gdHlwZTxUeXBlPigpOiBUeXBlRGVzY3JpcHRvcjxUeXBlPiB7XG4gICAgcmV0dXJuIG5ldyBUeXBlRGVzY3JpcHRvcjxUeXBlPigpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gdHlwZUNsYXNzPFR5cGU+KHR5cGU6IENsYXNzVHlwZTxUeXBlPik6IFR5cGVEZXNjcmlwdG9yPFR5cGU+IHtcbiAgICByZXR1cm4gbmV3IFR5cGVEZXNjcmlwdG9yPFR5cGU+KHR5cGUpO1xufVxuIl19
7
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZS5kZXNjcmlwdG9yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vbW9kZWwvc3JjL2Rlc2NyaXB0b3JzL3R5cGUuZGVzY3JpcHRvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSw2REFBNkQ7QUFDN0QsTUFBTSxPQUFPLGNBQWM7Q0FBUztBQUVwQyxNQUFNLFVBQVUsSUFBSTtJQUNoQixPQUFPLElBQUksY0FBYyxFQUFRLENBQUM7QUFDdEMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tdW51c2VkLXZhcnNcbmV4cG9ydCBjbGFzcyBUeXBlRGVzY3JpcHRvcjxUeXBlPiB7fVxuXG5leHBvcnQgZnVuY3Rpb24gdHlwZTxUeXBlPigpOiBUeXBlRGVzY3JpcHRvcjxUeXBlPiB7XG4gICAgcmV0dXJuIG5ldyBUeXBlRGVzY3JpcHRvcjxUeXBlPigpO1xufVxuIl19
@@ -1,8 +1,8 @@
1
1
  import { map } from 'rxjs/operators';
2
2
  import { getI18n, getI18nTypeKeyBasePath, getI18nTypeParams, getI18nTypeParamsAsync } from '@mediusinc/mng-commons/core';
3
- export function getI18nForModel(translate, model, keyPath, customKey, item, fallbackKey, params) {
4
- const keys = getKeysByPriority(model, keyPath, customKey, fallbackKey);
5
- const i18nParams = getI18nModelParams(translate, model, item, params);
3
+ export function getI18nForModel(translate, model, keyPath, opts) {
4
+ const keys = getKeysByPriority(model, keyPath, opts?.customKey, opts?.fallbackKey);
5
+ const i18nParams = getI18nModelParams(translate, model, opts?.item, opts?.params);
6
6
  return getI18n(translate, i18nParams, ...keys);
7
7
  }
8
8
  export function getI18nModelParams(translate, model, item, params = {}) {
@@ -12,7 +12,7 @@ export function getI18nModelParams(translate, model, item, params = {}) {
12
12
  export function getI18nModelParamsAsync(translate, model, item, params = {}) {
13
13
  return getI18nTypeParamsAsync(translate, model?.i18nBaseKey, item, params).pipe(map(i18nParams => populateI18nModelParams(model?.idProperty, model?.titleProperty, item, i18nParams)));
14
14
  }
15
- export function populateI18nModelParams(idProperty, titleProperty, item, params = {}) {
15
+ function populateI18nModelParams(idProperty, titleProperty, item, params = {}) {
16
16
  const paramsRes = { ...params, itemId: '', itemTitle: '' };
17
17
  if (item) {
18
18
  if (idProperty && item[idProperty]) {
@@ -32,11 +32,16 @@ function getKeysByPriority(model, keyPath, customKey, fallbackKey) {
32
32
  if (customKey) {
33
33
  keys.push(customKey);
34
34
  }
35
- const modelActionKey = getI18nTypeKeyBasePath(model.i18nBaseKey, ...keyPath);
36
- keys.push(modelActionKey);
37
- if (fallbackKey) {
38
- keys.push(fallbackKey);
35
+ else {
36
+ const modelActionKey = getI18nTypeKeyBasePath(model.i18nBaseKey, keyPath);
37
+ keys.push(modelActionKey);
38
+ if (keyPath !== modelActionKey) {
39
+ keys.push(keyPath);
40
+ }
41
+ if (fallbackKey) {
42
+ keys.push(fallbackKey);
43
+ }
39
44
  }
40
45
  return keys;
41
46
  }
42
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaTE4bi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL21vZGVsL3NyYy9oZWxwZXJzL2kxOG4udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsT0FBTyxFQUFDLEdBQUcsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBRW5DLE9BQU8sRUFBWSxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsaUJBQWlCLEVBQUUsc0JBQXNCLEVBQUMsTUFBTSw2QkFBNkIsQ0FBQztBQUlsSSxNQUFNLFVBQVUsZUFBZSxDQUMzQixTQUEyQixFQUMzQixLQUEyQixFQUMzQixPQUFlLEVBQ2YsU0FBa0IsRUFDbEIsSUFBVSxFQUNWLFdBQW9CLEVBQ3BCLE1BQVk7SUFFWixNQUFNLElBQUksR0FBRyxpQkFBaUIsQ0FBQyxLQUFLLEVBQUUsT0FBTyxFQUFFLFNBQVMsRUFBRSxXQUFXLENBQUMsQ0FBQztJQUN2RSxNQUFNLFVBQVUsR0FBRyxrQkFBa0IsQ0FBQyxTQUFTLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxNQUFNLENBQUMsQ0FBQztJQUN0RSxPQUFPLE9BQU8sQ0FBQyxTQUFTLEVBQUUsVUFBVSxFQUFFLEdBQUcsSUFBSSxDQUFDLENBQUM7QUFDbkQsQ0FBQztBQUVELE1BQU0sVUFBVSxrQkFBa0IsQ0FBQyxTQUEyQixFQUFFLEtBQTRCLEVBQUUsSUFBVSxFQUFFLFNBQWMsRUFBRTtJQUN0SCxNQUFNLFVBQVUsR0FBRyxpQkFBaUIsQ0FBQyxTQUFTLEVBQUUsS0FBSyxFQUFFLFdBQVcsRUFBRSxJQUFJLEVBQUUsTUFBTSxDQUFDLENBQUM7SUFDbEYsT0FBTyx1QkFBdUIsQ0FBQyxLQUFLLEVBQUUsVUFBVSxFQUFFLEtBQUssRUFBRSxhQUFhLEVBQUUsSUFBSSxFQUFFLFVBQVUsQ0FBQyxDQUFDO0FBQzlGLENBQUM7QUFFRCxNQUFNLFVBQVUsdUJBQXVCLENBQUMsU0FBMkIsRUFBRSxLQUE0QixFQUFFLElBQVUsRUFBRSxTQUFjLEVBQUU7SUFDM0gsT0FBTyxzQkFBc0IsQ0FBQyxTQUFTLEVBQUUsS0FBSyxFQUFFLFdBQVcsRUFBRSxJQUFJLEVBQUUsTUFBTSxDQUFDLENBQUMsSUFBSSxDQUMzRSxHQUFHLENBQUMsVUFBVSxDQUFDLEVBQUUsQ0FBQyx1QkFBdUIsQ0FBQyxLQUFLLEVBQUUsVUFBVSxFQUFFLEtBQUssRUFBRSxhQUFhLEVBQUUsSUFBSSxFQUFFLFVBQVUsQ0FBQyxDQUFDLENBQ3hHLENBQUM7QUFDTixDQUFDO0FBRUQsTUFBTSxVQUFVLHVCQUF1QixDQUFDLFVBQXNCLEVBQUUsYUFBbUQsRUFBRSxJQUFVLEVBQUUsU0FBYyxFQUFFO0lBQzdJLE1BQU0sU0FBUyxHQUFHLEVBQUMsR0FBRyxNQUFNLEVBQUUsTUFBTSxFQUFFLEVBQUUsRUFBRSxTQUFTLEVBQUUsRUFBRSxFQUFDLENBQUM7SUFDekQsSUFBSSxJQUFJLEVBQUUsQ0FBQztRQUNQLElBQUksVUFBVSxJQUFJLElBQUksQ0FBQyxVQUFVLENBQUMsRUFBRSxDQUFDO1lBQ2pDLFNBQVMsQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBQ3hDLENBQUM7UUFDRCxJQUFJLE9BQU8sYUFBYSxLQUFLLFVBQVUsRUFBRSxDQUFDO1lBQ3RDLFNBQVMsQ0FBQyxTQUFTLEdBQUcsYUFBYSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQzlDLENBQUM7YUFBTSxJQUFJLGFBQWEsSUFBSSxJQUFJLENBQUMsYUFBYSxDQUFDLEVBQUUsQ0FBQztZQUM5QyxTQUFTLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQztRQUM5QyxDQUFDO0lBQ0wsQ0FBQztJQUNELE9BQU8sU0FBUyxDQUFDO0FBQ3JCLENBQUM7QUFFRCxTQUFTLGlCQUFpQixDQUFDLEtBQTJCLEVBQUUsT0FBZSxFQUFFLFNBQWtCLEVBQUUsV0FBb0I7SUFDN0csTUFBTSxJQUFJLEdBQUcsRUFBRSxDQUFDO0lBQ2hCLElBQUksU0FBUyxFQUFFLENBQUM7UUFDWixJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQ3pCLENBQUM7SUFDRCxNQUFNLGNBQWMsR0FBRyxzQkFBc0IsQ0FBQyxLQUFLLENBQUMsV0FBVyxFQUFFLEdBQUcsT0FBTyxDQUFDLENBQUM7SUFDN0UsSUFBSSxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsQ0FBQztJQUMxQixJQUFJLFdBQVcsRUFBRSxDQUFDO1FBQ2QsSUFBSSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQztJQUMzQixDQUFDO0lBQ0QsT0FBTyxJQUFJLENBQUM7QUFDaEIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7VHJhbnNsYXRlU2VydmljZX0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSc7XG5pbXBvcnQge09ic2VydmFibGV9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHttYXB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuaW1wb3J0IHtLZXlPZlR5cGUsIGdldEkxOG4sIGdldEkxOG5UeXBlS2V5QmFzZVBhdGgsIGdldEkxOG5UeXBlUGFyYW1zLCBnZXRJMThuVHlwZVBhcmFtc0FzeW5jfSBmcm9tICdAbWVkaXVzaW5jL21uZy1jb21tb25zL2NvcmUnO1xuXG5pbXBvcnQge01vZGVsRGVzY3JpcHRvcn0gZnJvbSAnLi4vZGVzY3JpcHRvcnMvbW9kZWwuZGVzY3JpcHRvcic7XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRJMThuRm9yTW9kZWwoXG4gICAgdHJhbnNsYXRlOiBUcmFuc2xhdGVTZXJ2aWNlLFxuICAgIG1vZGVsOiBNb2RlbERlc2NyaXB0b3I8YW55PixcbiAgICBrZXlQYXRoOiBzdHJpbmcsXG4gICAgY3VzdG9tS2V5Pzogc3RyaW5nLFxuICAgIGl0ZW0/OiBhbnksXG4gICAgZmFsbGJhY2tLZXk/OiBzdHJpbmcsXG4gICAgcGFyYW1zPzogYW55XG4pOiBzdHJpbmcgfCBudWxsIHtcbiAgICBjb25zdCBrZXlzID0gZ2V0S2V5c0J5UHJpb3JpdHkobW9kZWwsIGtleVBhdGgsIGN1c3RvbUtleSwgZmFsbGJhY2tLZXkpO1xuICAgIGNvbnN0IGkxOG5QYXJhbXMgPSBnZXRJMThuTW9kZWxQYXJhbXModHJhbnNsYXRlLCBtb2RlbCwgaXRlbSwgcGFyYW1zKTtcbiAgICByZXR1cm4gZ2V0STE4bih0cmFuc2xhdGUsIGkxOG5QYXJhbXMsIC4uLmtleXMpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZ2V0STE4bk1vZGVsUGFyYW1zKHRyYW5zbGF0ZTogVHJhbnNsYXRlU2VydmljZSwgbW9kZWw/OiBNb2RlbERlc2NyaXB0b3I8YW55PiwgaXRlbT86IGFueSwgcGFyYW1zOiBhbnkgPSB7fSk6IGFueSB7XG4gICAgY29uc3QgaTE4blBhcmFtcyA9IGdldEkxOG5UeXBlUGFyYW1zKHRyYW5zbGF0ZSwgbW9kZWw/LmkxOG5CYXNlS2V5LCBpdGVtLCBwYXJhbXMpO1xuICAgIHJldHVybiBwb3B1bGF0ZUkxOG5Nb2RlbFBhcmFtcyhtb2RlbD8uaWRQcm9wZXJ0eSwgbW9kZWw/LnRpdGxlUHJvcGVydHksIGl0ZW0sIGkxOG5QYXJhbXMpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZ2V0STE4bk1vZGVsUGFyYW1zQXN5bmModHJhbnNsYXRlOiBUcmFuc2xhdGVTZXJ2aWNlLCBtb2RlbD86IE1vZGVsRGVzY3JpcHRvcjxhbnk+LCBpdGVtPzogYW55LCBwYXJhbXM6IGFueSA9IHt9KTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICByZXR1cm4gZ2V0STE4blR5cGVQYXJhbXNBc3luYyh0cmFuc2xhdGUsIG1vZGVsPy5pMThuQmFzZUtleSwgaXRlbSwgcGFyYW1zKS5waXBlKFxuICAgICAgICBtYXAoaTE4blBhcmFtcyA9PiBwb3B1bGF0ZUkxOG5Nb2RlbFBhcmFtcyhtb2RlbD8uaWRQcm9wZXJ0eSwgbW9kZWw/LnRpdGxlUHJvcGVydHksIGl0ZW0sIGkxOG5QYXJhbXMpKVxuICAgICk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBwb3B1bGF0ZUkxOG5Nb2RlbFBhcmFtcyhpZFByb3BlcnR5PzogS2V5T2ZUeXBlLCB0aXRsZVByb3BlcnR5PzogS2V5T2ZUeXBlIHwgKChpdGVtOiBhbnkpID0+IHN0cmluZyksIGl0ZW0/OiBhbnksIHBhcmFtczogYW55ID0ge30pOiBhbnkge1xuICAgIGNvbnN0IHBhcmFtc1JlcyA9IHsuLi5wYXJhbXMsIGl0ZW1JZDogJycsIGl0ZW1UaXRsZTogJyd9O1xuICAgIGlmIChpdGVtKSB7XG4gICAgICAgIGlmIChpZFByb3BlcnR5ICYmIGl0ZW1baWRQcm9wZXJ0eV0pIHtcbiAgICAgICAgICAgIHBhcmFtc1Jlcy5pdGVtSWQgPSBpdGVtW2lkUHJvcGVydHldO1xuICAgICAgICB9XG4gICAgICAgIGlmICh0eXBlb2YgdGl0bGVQcm9wZXJ0eSA9PT0gJ2Z1bmN0aW9uJykge1xuICAgICAgICAgICAgcGFyYW1zUmVzLml0ZW1UaXRsZSA9IHRpdGxlUHJvcGVydHkoaXRlbSk7XG4gICAgICAgIH0gZWxzZSBpZiAodGl0bGVQcm9wZXJ0eSAmJiBpdGVtW3RpdGxlUHJvcGVydHldKSB7XG4gICAgICAgICAgICBwYXJhbXNSZXMuaXRlbVRpdGxlID0gaXRlbVt0aXRsZVByb3BlcnR5XTtcbiAgICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gcGFyYW1zUmVzO1xufVxuXG5mdW5jdGlvbiBnZXRLZXlzQnlQcmlvcml0eShtb2RlbDogTW9kZWxEZXNjcmlwdG9yPGFueT4sIGtleVBhdGg6IHN0cmluZywgY3VzdG9tS2V5Pzogc3RyaW5nLCBmYWxsYmFja0tleT86IHN0cmluZykge1xuICAgIGNvbnN0IGtleXMgPSBbXTtcbiAgICBpZiAoY3VzdG9tS2V5KSB7XG4gICAgICAgIGtleXMucHVzaChjdXN0b21LZXkpO1xuICAgIH1cbiAgICBjb25zdCBtb2RlbEFjdGlvbktleSA9IGdldEkxOG5UeXBlS2V5QmFzZVBhdGgobW9kZWwuaTE4bkJhc2VLZXksIC4uLmtleVBhdGgpO1xuICAgIGtleXMucHVzaChtb2RlbEFjdGlvbktleSk7XG4gICAgaWYgKGZhbGxiYWNrS2V5KSB7XG4gICAgICAgIGtleXMucHVzaChmYWxsYmFja0tleSk7XG4gICAgfVxuICAgIHJldHVybiBrZXlzO1xufVxuIl19
47
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaTE4bi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL21vZGVsL3NyYy9oZWxwZXJzL2kxOG4udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsT0FBTyxFQUFDLEdBQUcsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBRW5DLE9BQU8sRUFBWSxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsaUJBQWlCLEVBQUUsc0JBQXNCLEVBQUMsTUFBTSw2QkFBNkIsQ0FBQztBQVdsSSxNQUFNLFVBQVUsZUFBZSxDQUFDLFNBQTJCLEVBQUUsS0FBMkIsRUFBRSxPQUFlLEVBQUUsSUFBd0I7SUFDL0gsTUFBTSxJQUFJLEdBQUcsaUJBQWlCLENBQUMsS0FBSyxFQUFFLE9BQU8sRUFBRSxJQUFJLEVBQUUsU0FBUyxFQUFFLElBQUksRUFBRSxXQUFXLENBQUMsQ0FBQztJQUNuRixNQUFNLFVBQVUsR0FBRyxrQkFBa0IsQ0FBQyxTQUFTLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLE1BQU0sQ0FBQyxDQUFDO0lBQ2xGLE9BQU8sT0FBTyxDQUFDLFNBQVMsRUFBRSxVQUFVLEVBQUUsR0FBRyxJQUFJLENBQUMsQ0FBQztBQUNuRCxDQUFDO0FBRUQsTUFBTSxVQUFVLGtCQUFrQixDQUFDLFNBQTJCLEVBQUUsS0FBNEIsRUFBRSxJQUFVLEVBQUUsU0FBYyxFQUFFO0lBQ3RILE1BQU0sVUFBVSxHQUFHLGlCQUFpQixDQUFDLFNBQVMsRUFBRSxLQUFLLEVBQUUsV0FBVyxFQUFFLElBQUksRUFBRSxNQUFNLENBQUMsQ0FBQztJQUNsRixPQUFPLHVCQUF1QixDQUFDLEtBQUssRUFBRSxVQUFVLEVBQUUsS0FBSyxFQUFFLGFBQWEsRUFBRSxJQUFJLEVBQUUsVUFBVSxDQUFDLENBQUM7QUFDOUYsQ0FBQztBQUVELE1BQU0sVUFBVSx1QkFBdUIsQ0FBQyxTQUEyQixFQUFFLEtBQTRCLEVBQUUsSUFBVSxFQUFFLFNBQWMsRUFBRTtJQUMzSCxPQUFPLHNCQUFzQixDQUFDLFNBQVMsRUFBRSxLQUFLLEVBQUUsV0FBVyxFQUFFLElBQUksRUFBRSxNQUFNLENBQUMsQ0FBQyxJQUFJLENBQzNFLEdBQUcsQ0FBQyxVQUFVLENBQUMsRUFBRSxDQUFDLHVCQUF1QixDQUFDLEtBQUssRUFBRSxVQUFVLEVBQUUsS0FBSyxFQUFFLGFBQWEsRUFBRSxJQUFJLEVBQUUsVUFBVSxDQUFDLENBQUMsQ0FDeEcsQ0FBQztBQUNOLENBQUM7QUFFRCxTQUFTLHVCQUF1QixDQUFDLFVBQXNCLEVBQUUsYUFBbUQsRUFBRSxJQUFVLEVBQUUsU0FBYyxFQUFFO0lBQ3RJLE1BQU0sU0FBUyxHQUFHLEVBQUMsR0FBRyxNQUFNLEVBQUUsTUFBTSxFQUFFLEVBQUUsRUFBRSxTQUFTLEVBQUUsRUFBRSxFQUFDLENBQUM7SUFDekQsSUFBSSxJQUFJLEVBQUUsQ0FBQztRQUNQLElBQUksVUFBVSxJQUFJLElBQUksQ0FBQyxVQUFVLENBQUMsRUFBRSxDQUFDO1lBQ2pDLFNBQVMsQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBQ3hDLENBQUM7UUFDRCxJQUFJLE9BQU8sYUFBYSxLQUFLLFVBQVUsRUFBRSxDQUFDO1lBQ3RDLFNBQVMsQ0FBQyxTQUFTLEdBQUcsYUFBYSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQzlDLENBQUM7YUFBTSxJQUFJLGFBQWEsSUFBSSxJQUFJLENBQUMsYUFBYSxDQUFDLEVBQUUsQ0FBQztZQUM5QyxTQUFTLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQztRQUM5QyxDQUFDO0lBQ0wsQ0FBQztJQUNELE9BQU8sU0FBUyxDQUFDO0FBQ3JCLENBQUM7QUFFRCxTQUFTLGlCQUFpQixDQUFDLEtBQTJCLEVBQUUsT0FBZSxFQUFFLFNBQWtCLEVBQUUsV0FBb0I7SUFDN0csTUFBTSxJQUFJLEdBQUcsRUFBRSxDQUFDO0lBQ2hCLElBQUksU0FBUyxFQUFFLENBQUM7UUFDWixJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQ3pCLENBQUM7U0FBTSxDQUFDO1FBQ0osTUFBTSxjQUFjLEdBQUcsc0JBQXNCLENBQUMsS0FBSyxDQUFDLFdBQVcsRUFBRSxPQUFPLENBQUMsQ0FBQztRQUMxRSxJQUFJLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxDQUFDO1FBQzFCLElBQUksT0FBTyxLQUFLLGNBQWMsRUFBRSxDQUFDO1lBQzdCLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDdkIsQ0FBQztRQUNELElBQUksV0FBVyxFQUFFLENBQUM7WUFDZCxJQUFJLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBQzNCLENBQUM7SUFDTCxDQUFDO0lBQ0QsT0FBTyxJQUFJLENBQUM7QUFDaEIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7VHJhbnNsYXRlU2VydmljZX0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSc7XG5pbXBvcnQge09ic2VydmFibGV9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHttYXB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuaW1wb3J0IHtLZXlPZlR5cGUsIGdldEkxOG4sIGdldEkxOG5UeXBlS2V5QmFzZVBhdGgsIGdldEkxOG5UeXBlUGFyYW1zLCBnZXRJMThuVHlwZVBhcmFtc0FzeW5jfSBmcm9tICdAbWVkaXVzaW5jL21uZy1jb21tb25zL2NvcmUnO1xuXG5pbXBvcnQge01vZGVsRGVzY3JpcHRvcn0gZnJvbSAnLi4vZGVzY3JpcHRvcnMvbW9kZWwuZGVzY3JpcHRvcic7XG5cbnR5cGUgTW9kZWxJMThuT3B0c1R5cGUgPSB7XG4gICAgY3VzdG9tS2V5Pzogc3RyaW5nO1xuICAgIGZhbGxiYWNrS2V5Pzogc3RyaW5nO1xuICAgIGl0ZW0/OiBhbnk7XG4gICAgcGFyYW1zPzogYW55O1xufTtcblxuZXhwb3J0IGZ1bmN0aW9uIGdldEkxOG5Gb3JNb2RlbCh0cmFuc2xhdGU6IFRyYW5zbGF0ZVNlcnZpY2UsIG1vZGVsOiBNb2RlbERlc2NyaXB0b3I8YW55Piwga2V5UGF0aDogc3RyaW5nLCBvcHRzPzogTW9kZWxJMThuT3B0c1R5cGUpOiBzdHJpbmcgfCBudWxsIHtcbiAgICBjb25zdCBrZXlzID0gZ2V0S2V5c0J5UHJpb3JpdHkobW9kZWwsIGtleVBhdGgsIG9wdHM/LmN1c3RvbUtleSwgb3B0cz8uZmFsbGJhY2tLZXkpO1xuICAgIGNvbnN0IGkxOG5QYXJhbXMgPSBnZXRJMThuTW9kZWxQYXJhbXModHJhbnNsYXRlLCBtb2RlbCwgb3B0cz8uaXRlbSwgb3B0cz8ucGFyYW1zKTtcbiAgICByZXR1cm4gZ2V0STE4bih0cmFuc2xhdGUsIGkxOG5QYXJhbXMsIC4uLmtleXMpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZ2V0STE4bk1vZGVsUGFyYW1zKHRyYW5zbGF0ZTogVHJhbnNsYXRlU2VydmljZSwgbW9kZWw/OiBNb2RlbERlc2NyaXB0b3I8YW55PiwgaXRlbT86IGFueSwgcGFyYW1zOiBhbnkgPSB7fSk6IGFueSB7XG4gICAgY29uc3QgaTE4blBhcmFtcyA9IGdldEkxOG5UeXBlUGFyYW1zKHRyYW5zbGF0ZSwgbW9kZWw/LmkxOG5CYXNlS2V5LCBpdGVtLCBwYXJhbXMpO1xuICAgIHJldHVybiBwb3B1bGF0ZUkxOG5Nb2RlbFBhcmFtcyhtb2RlbD8uaWRQcm9wZXJ0eSwgbW9kZWw/LnRpdGxlUHJvcGVydHksIGl0ZW0sIGkxOG5QYXJhbXMpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZ2V0STE4bk1vZGVsUGFyYW1zQXN5bmModHJhbnNsYXRlOiBUcmFuc2xhdGVTZXJ2aWNlLCBtb2RlbD86IE1vZGVsRGVzY3JpcHRvcjxhbnk+LCBpdGVtPzogYW55LCBwYXJhbXM6IGFueSA9IHt9KTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICByZXR1cm4gZ2V0STE4blR5cGVQYXJhbXNBc3luYyh0cmFuc2xhdGUsIG1vZGVsPy5pMThuQmFzZUtleSwgaXRlbSwgcGFyYW1zKS5waXBlKFxuICAgICAgICBtYXAoaTE4blBhcmFtcyA9PiBwb3B1bGF0ZUkxOG5Nb2RlbFBhcmFtcyhtb2RlbD8uaWRQcm9wZXJ0eSwgbW9kZWw/LnRpdGxlUHJvcGVydHksIGl0ZW0sIGkxOG5QYXJhbXMpKVxuICAgICk7XG59XG5cbmZ1bmN0aW9uIHBvcHVsYXRlSTE4bk1vZGVsUGFyYW1zKGlkUHJvcGVydHk/OiBLZXlPZlR5cGUsIHRpdGxlUHJvcGVydHk/OiBLZXlPZlR5cGUgfCAoKGl0ZW06IGFueSkgPT4gc3RyaW5nKSwgaXRlbT86IGFueSwgcGFyYW1zOiBhbnkgPSB7fSk6IGFueSB7XG4gICAgY29uc3QgcGFyYW1zUmVzID0gey4uLnBhcmFtcywgaXRlbUlkOiAnJywgaXRlbVRpdGxlOiAnJ307XG4gICAgaWYgKGl0ZW0pIHtcbiAgICAgICAgaWYgKGlkUHJvcGVydHkgJiYgaXRlbVtpZFByb3BlcnR5XSkge1xuICAgICAgICAgICAgcGFyYW1zUmVzLml0ZW1JZCA9IGl0ZW1baWRQcm9wZXJ0eV07XG4gICAgICAgIH1cbiAgICAgICAgaWYgKHR5cGVvZiB0aXRsZVByb3BlcnR5ID09PSAnZnVuY3Rpb24nKSB7XG4gICAgICAgICAgICBwYXJhbXNSZXMuaXRlbVRpdGxlID0gdGl0bGVQcm9wZXJ0eShpdGVtKTtcbiAgICAgICAgfSBlbHNlIGlmICh0aXRsZVByb3BlcnR5ICYmIGl0ZW1bdGl0bGVQcm9wZXJ0eV0pIHtcbiAgICAgICAgICAgIHBhcmFtc1Jlcy5pdGVtVGl0bGUgPSBpdGVtW3RpdGxlUHJvcGVydHldO1xuICAgICAgICB9XG4gICAgfVxuICAgIHJldHVybiBwYXJhbXNSZXM7XG59XG5cbmZ1bmN0aW9uIGdldEtleXNCeVByaW9yaXR5KG1vZGVsOiBNb2RlbERlc2NyaXB0b3I8YW55Piwga2V5UGF0aDogc3RyaW5nLCBjdXN0b21LZXk/OiBzdHJpbmcsIGZhbGxiYWNrS2V5Pzogc3RyaW5nKSB7XG4gICAgY29uc3Qga2V5cyA9IFtdO1xuICAgIGlmIChjdXN0b21LZXkpIHtcbiAgICAgICAga2V5cy5wdXNoKGN1c3RvbUtleSk7XG4gICAgfSBlbHNlIHtcbiAgICAgICAgY29uc3QgbW9kZWxBY3Rpb25LZXkgPSBnZXRJMThuVHlwZUtleUJhc2VQYXRoKG1vZGVsLmkxOG5CYXNlS2V5LCBrZXlQYXRoKTtcbiAgICAgICAga2V5cy5wdXNoKG1vZGVsQWN0aW9uS2V5KTtcbiAgICAgICAgaWYgKGtleVBhdGggIT09IG1vZGVsQWN0aW9uS2V5KSB7XG4gICAgICAgICAgICBrZXlzLnB1c2goa2V5UGF0aCk7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKGZhbGxiYWNrS2V5KSB7XG4gICAgICAgICAgICBrZXlzLnB1c2goZmFsbGJhY2tLZXkpO1xuICAgICAgICB9XG4gICAgfVxuICAgIHJldHVybiBrZXlzO1xufVxuIl19
@@ -6,5 +6,4 @@ export * from './descriptors/model.descriptor';
6
6
  export * from './descriptors/type.descriptor';
7
7
  // helpers
8
8
  export * from './helpers/i18n';
9
- export * from './helpers/model';
10
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9tb2RlbC9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsaUJBQWlCO0FBQ2pCLGNBQWMsdURBQXVELENBQUM7QUFFdEUsY0FBYztBQUNkLGNBQWMsK0JBQStCLENBQUM7QUFDOUMsY0FBYyxnQ0FBZ0MsQ0FBQztBQUMvQyxjQUFjLCtCQUErQixDQUFDO0FBRTlDLFVBQVU7QUFDVixjQUFjLGdCQUFnQixDQUFDO0FBQy9CLGNBQWMsaUJBQWlCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBkYXRhIHByb3ZpZGVyc1xuZXhwb3J0ICogZnJvbSAnLi9kYXRhLXByb3ZpZGVycy9iYXNlLWZyb20tdHlwZS1kYXRhLXByb3ZpZGVyLmZhY3RvcnknO1xuXG4vLyBkZXNjcmlwdG9yc1xuZXhwb3J0ICogZnJvbSAnLi9kZXNjcmlwdG9ycy9lbnVtLmRlc2NyaXB0b3InO1xuZXhwb3J0ICogZnJvbSAnLi9kZXNjcmlwdG9ycy9tb2RlbC5kZXNjcmlwdG9yJztcbmV4cG9ydCAqIGZyb20gJy4vZGVzY3JpcHRvcnMvdHlwZS5kZXNjcmlwdG9yJztcblxuLy8gaGVscGVyc1xuZXhwb3J0ICogZnJvbSAnLi9oZWxwZXJzL2kxOG4nO1xuZXhwb3J0ICogZnJvbSAnLi9oZWxwZXJzL21vZGVsJztcbiJdfQ==
9
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9tb2RlbC9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsaUJBQWlCO0FBQ2pCLGNBQWMsdURBQXVELENBQUM7QUFFdEUsY0FBYztBQUNkLGNBQWMsK0JBQStCLENBQUM7QUFDOUMsY0FBYyxnQ0FBZ0MsQ0FBQztBQUMvQyxjQUFjLCtCQUErQixDQUFDO0FBRTlDLFVBQVU7QUFDVixjQUFjLGdCQUFnQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLy8gZGF0YSBwcm92aWRlcnNcbmV4cG9ydCAqIGZyb20gJy4vZGF0YS1wcm92aWRlcnMvYmFzZS1mcm9tLXR5cGUtZGF0YS1wcm92aWRlci5mYWN0b3J5JztcblxuLy8gZGVzY3JpcHRvcnNcbmV4cG9ydCAqIGZyb20gJy4vZGVzY3JpcHRvcnMvZW51bS5kZXNjcmlwdG9yJztcbmV4cG9ydCAqIGZyb20gJy4vZGVzY3JpcHRvcnMvbW9kZWwuZGVzY3JpcHRvcic7XG5leHBvcnQgKiBmcm9tICcuL2Rlc2NyaXB0b3JzL3R5cGUuZGVzY3JpcHRvcic7XG5cbi8vIGhlbHBlcnNcbmV4cG9ydCAqIGZyb20gJy4vaGVscGVycy9pMThuJztcbiJdfQ==
@@ -0,0 +1,80 @@
1
+ import { CommonsInternalError, TypeRegistry } from '@mediusinc/mng-commons/core';
2
+ import { ColumnDisplayTypeEnum, ColumnTypeEnum } from '@mediusinc/mng-commons/table/api';
3
+ /**
4
+ * converts string type to column type enum, default is string
5
+ * @param attributeType
6
+ */
7
+ export function getColumnTypeFromClassAttributeDefType(attributeType) {
8
+ const typeRegistry = TypeRegistry.get();
9
+ if (typeRegistry.findEnum(attributeType)) {
10
+ attributeType = 'enum';
11
+ }
12
+ else if (typeRegistry.findType(attributeType)) {
13
+ attributeType = 'class';
14
+ }
15
+ switch (attributeType.toLowerCase()) {
16
+ case 'number':
17
+ case 'currency':
18
+ return ColumnTypeEnum.Number;
19
+ case 'boolean':
20
+ return ColumnTypeEnum.Boolean;
21
+ case 'date':
22
+ return ColumnTypeEnum.Date;
23
+ case 'enum':
24
+ return ColumnTypeEnum.Enum;
25
+ case 'custom':
26
+ return ColumnTypeEnum.Custom;
27
+ case 'class':
28
+ return ColumnTypeEnum.String;
29
+ case 'string':
30
+ default:
31
+ return ColumnTypeEnum.String;
32
+ }
33
+ }
34
+ export function getColumnDisplayTypeFromColumnType(columnType, attributeType) {
35
+ switch (columnType) {
36
+ case ColumnTypeEnum.Number:
37
+ return attributeType === 'currency' ? ColumnDisplayTypeEnum.Currency : ColumnDisplayTypeEnum.Number;
38
+ case ColumnTypeEnum.Boolean:
39
+ return ColumnDisplayTypeEnum.Boolean;
40
+ case ColumnTypeEnum.Date:
41
+ return ColumnDisplayTypeEnum.Date;
42
+ case ColumnTypeEnum.Enum:
43
+ return ColumnDisplayTypeEnum.Enum;
44
+ case ColumnTypeEnum.Custom:
45
+ return ColumnDisplayTypeEnum.Component;
46
+ case ColumnTypeEnum.String:
47
+ default:
48
+ return ColumnDisplayTypeEnum.String;
49
+ }
50
+ }
51
+ export function expandClassAttributeDefWithTableDef(attributes) {
52
+ if (!attributes) {
53
+ throw new CommonsInternalError('Class attribute definition is null, problem with TypeRegistry::findAttributesDefinitionByClassType?', { name: 'TableviewUtilsError' });
54
+ }
55
+ const typeRegistry = TypeRegistry.get();
56
+ const tableClassAttributeDef = [];
57
+ for (const attribute of attributes) {
58
+ const enumType = typeRegistry.findEnum(attribute.type);
59
+ const columnType = enumType ? ColumnTypeEnum.Enum : getColumnTypeFromClassAttributeDefType(attribute.type);
60
+ tableClassAttributeDef.push({
61
+ name: attribute.name,
62
+ baseName: attribute.baseName,
63
+ type: attribute.type,
64
+ subtype: attribute.subtype,
65
+ columnType: enumType ? ColumnTypeEnum.Enum : getColumnTypeFromClassAttributeDefType(attribute.type),
66
+ columnDisplayType: getColumnDisplayTypeFromColumnType(columnType, attribute.type),
67
+ enumType: typeRegistry.findEnum(attribute.type),
68
+ classType: typeRegistry.findType(attribute.type)
69
+ });
70
+ }
71
+ return tableClassAttributeDef;
72
+ }
73
+ /**
74
+ * returns attributes from class type and extends to typed def with column and field enum type
75
+ * @param type class type
76
+ */
77
+ export function getTableClassAttributeDef(type) {
78
+ return expandClassAttributeDefWithTableDef(TypeRegistry.get().findAttributesDefinitionByClassType(type));
79
+ }
80
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xhc3MtdGFibGUtYXR0cmlidXRlLWNvbnZlcnRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3RhYmxlL2FwaS9jbGFzcy9zcmMvY2xhc3MtdGFibGUtYXR0cmlidXRlLWNvbnZlcnRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQStCLG9CQUFvQixFQUFZLFlBQVksRUFBQyxNQUFNLDZCQUE2QixDQUFDO0FBQ3ZILE9BQU8sRUFBQyxxQkFBcUIsRUFBRSxjQUFjLEVBQUMsTUFBTSxrQ0FBa0MsQ0FBQztBQUl2Rjs7O0dBR0c7QUFDSCxNQUFNLFVBQVUsc0NBQXNDLENBQUMsYUFBcUI7SUFDeEUsTUFBTSxZQUFZLEdBQUcsWUFBWSxDQUFDLEdBQUcsRUFBRSxDQUFDO0lBQ3hDLElBQUksWUFBWSxDQUFDLFFBQVEsQ0FBQyxhQUFhLENBQWEsRUFBRSxDQUFDO1FBQ25ELGFBQWEsR0FBRyxNQUFNLENBQUM7SUFDM0IsQ0FBQztTQUFNLElBQUksWUFBWSxDQUFDLFFBQVEsQ0FBQyxhQUFhLENBQW1CLEVBQUUsQ0FBQztRQUNoRSxhQUFhLEdBQUcsT0FBTyxDQUFDO0lBQzVCLENBQUM7SUFFRCxRQUFRLGFBQWEsQ0FBQyxXQUFXLEVBQUUsRUFBRSxDQUFDO1FBQ2xDLEtBQUssUUFBUSxDQUFDO1FBQ2QsS0FBSyxVQUFVO1lBQ1gsT0FBTyxjQUFjLENBQUMsTUFBTSxDQUFDO1FBQ2pDLEtBQUssU0FBUztZQUNWLE9BQU8sY0FBYyxDQUFDLE9BQU8sQ0FBQztRQUNsQyxLQUFLLE1BQU07WUFDUCxPQUFPLGNBQWMsQ0FBQyxJQUFJLENBQUM7UUFDL0IsS0FBSyxNQUFNO1lBQ1AsT0FBTyxjQUFjLENBQUMsSUFBSSxDQUFDO1FBQy9CLEtBQUssUUFBUTtZQUNULE9BQU8sY0FBYyxDQUFDLE1BQU0sQ0FBQztRQUNqQyxLQUFLLE9BQU87WUFDUixPQUFPLGNBQWMsQ0FBQyxNQUFNLENBQUM7UUFDakMsS0FBSyxRQUFRLENBQUM7UUFDZDtZQUNJLE9BQU8sY0FBYyxDQUFDLE1BQU0sQ0FBQztJQUNyQyxDQUFDO0FBQ0wsQ0FBQztBQUVELE1BQU0sVUFBVSxrQ0FBa0MsQ0FBQyxVQUEwQixFQUFFLGFBQXFCO0lBQ2hHLFFBQVEsVUFBVSxFQUFFLENBQUM7UUFDakIsS0FBSyxjQUFjLENBQUMsTUFBTTtZQUN0QixPQUFPLGFBQWEsS0FBSyxVQUFVLENBQUMsQ0FBQyxDQUFDLHFCQUFxQixDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMscUJBQXFCLENBQUMsTUFBTSxDQUFDO1FBQ3hHLEtBQUssY0FBYyxDQUFDLE9BQU87WUFDdkIsT0FBTyxxQkFBcUIsQ0FBQyxPQUFPLENBQUM7UUFDekMsS0FBSyxjQUFjLENBQUMsSUFBSTtZQUNwQixPQUFPLHFCQUFxQixDQUFDLElBQUksQ0FBQztRQUN0QyxLQUFLLGNBQWMsQ0FBQyxJQUFJO1lBQ3BCLE9BQU8scUJBQXFCLENBQUMsSUFBSSxDQUFDO1FBQ3RDLEtBQUssY0FBYyxDQUFDLE1BQU07WUFDdEIsT0FBTyxxQkFBcUIsQ0FBQyxTQUFTLENBQUM7UUFDM0MsS0FBSyxjQUFjLENBQUMsTUFBTSxDQUFDO1FBQzNCO1lBQ0ksT0FBTyxxQkFBcUIsQ0FBQyxNQUFNLENBQUM7SUFDNUMsQ0FBQztBQUNMLENBQUM7QUFFRCxNQUFNLFVBQVUsbUNBQW1DLENBQUMsVUFBNEM7SUFDNUYsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO1FBQ2QsTUFBTSxJQUFJLG9CQUFvQixDQUFDLHFHQUFxRyxFQUFFLEVBQUMsSUFBSSxFQUFFLHFCQUFxQixFQUFDLENBQUMsQ0FBQztJQUN6SyxDQUFDO0lBRUQsTUFBTSxZQUFZLEdBQUcsWUFBWSxDQUFDLEdBQUcsRUFBRSxDQUFDO0lBQ3hDLE1BQU0sc0JBQXNCLEdBQTZCLEVBQUUsQ0FBQztJQUM1RCxLQUFLLE1BQU0sU0FBUyxJQUFJLFVBQVUsRUFBRSxDQUFDO1FBQ2pDLE1BQU0sUUFBUSxHQUFHLFlBQVksQ0FBQyxRQUFRLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3ZELE1BQU0sVUFBVSxHQUFHLFFBQVEsQ0FBQyxDQUFDLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsc0NBQXNDLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQzNHLHNCQUFzQixDQUFDLElBQUksQ0FBQztZQUN4QixJQUFJLEVBQUUsU0FBUyxDQUFDLElBQUk7WUFDcEIsUUFBUSxFQUFFLFNBQVMsQ0FBQyxRQUFRO1lBQzVCLElBQUksRUFBRSxTQUFTLENBQUMsSUFBSTtZQUNwQixPQUFPLEVBQUUsU0FBUyxDQUFDLE9BQU87WUFDMUIsVUFBVSxFQUFFLFFBQVEsQ0FBQyxDQUFDLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsc0NBQXNDLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQztZQUNuRyxpQkFBaUIsRUFBRSxrQ0FBa0MsQ0FBQyxVQUFVLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQztZQUNqRixRQUFRLEVBQUUsWUFBWSxDQUFDLFFBQVEsQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFhO1lBQzNELFNBQVMsRUFBRSxZQUFZLENBQUMsUUFBUSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQW1CO1NBQ3JFLENBQUMsQ0FBQztJQUNQLENBQUM7SUFFRCxPQUFPLHNCQUFzQixDQUFDO0FBQ2xDLENBQUM7QUFFRDs7O0dBR0c7QUFDSCxNQUFNLFVBQVUseUJBQXlCLENBQUksSUFBa0I7SUFDM0QsT0FBTyxtQ0FBbUMsQ0FBQyxZQUFZLENBQUMsR0FBRyxFQUFFLENBQUMsbUNBQW1DLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztBQUM3RyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDbGFzc0F0dHJpYnV0ZURlZiwgQ2xhc3NUeXBlLCBDb21tb25zSW50ZXJuYWxFcnJvciwgRW51bVR5cGUsIFR5cGVSZWdpc3RyeX0gZnJvbSAnQG1lZGl1c2luYy9tbmctY29tbW9ucy9jb3JlJztcbmltcG9ydCB7Q29sdW1uRGlzcGxheVR5cGVFbnVtLCBDb2x1bW5UeXBlRW51bX0gZnJvbSAnQG1lZGl1c2luYy9tbmctY29tbW9ucy90YWJsZS9hcGknO1xuXG5pbXBvcnQge1RhYmxlQ2xhc3NBdHRyaWJ1dGVEZWZ9IGZyb20gJy4vY2xhc3MtdGFibGUtYXR0cmlidXRlLm1vZGVsJztcblxuLyoqXG4gKiBjb252ZXJ0cyBzdHJpbmcgdHlwZSB0byBjb2x1bW4gdHlwZSBlbnVtLCBkZWZhdWx0IGlzIHN0cmluZ1xuICogQHBhcmFtIGF0dHJpYnV0ZVR5cGVcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGdldENvbHVtblR5cGVGcm9tQ2xhc3NBdHRyaWJ1dGVEZWZUeXBlKGF0dHJpYnV0ZVR5cGU6IHN0cmluZyk6IENvbHVtblR5cGVFbnVtIHtcbiAgICBjb25zdCB0eXBlUmVnaXN0cnkgPSBUeXBlUmVnaXN0cnkuZ2V0KCk7XG4gICAgaWYgKHR5cGVSZWdpc3RyeS5maW5kRW51bShhdHRyaWJ1dGVUeXBlKSBhcyBFbnVtVHlwZSkge1xuICAgICAgICBhdHRyaWJ1dGVUeXBlID0gJ2VudW0nO1xuICAgIH0gZWxzZSBpZiAodHlwZVJlZ2lzdHJ5LmZpbmRUeXBlKGF0dHJpYnV0ZVR5cGUpIGFzIENsYXNzVHlwZTxhbnk+KSB7XG4gICAgICAgIGF0dHJpYnV0ZVR5cGUgPSAnY2xhc3MnO1xuICAgIH1cblxuICAgIHN3aXRjaCAoYXR0cmlidXRlVHlwZS50b0xvd2VyQ2FzZSgpKSB7XG4gICAgICAgIGNhc2UgJ251bWJlcic6XG4gICAgICAgIGNhc2UgJ2N1cnJlbmN5JzpcbiAgICAgICAgICAgIHJldHVybiBDb2x1bW5UeXBlRW51bS5OdW1iZXI7XG4gICAgICAgIGNhc2UgJ2Jvb2xlYW4nOlxuICAgICAgICAgICAgcmV0dXJuIENvbHVtblR5cGVFbnVtLkJvb2xlYW47XG4gICAgICAgIGNhc2UgJ2RhdGUnOlxuICAgICAgICAgICAgcmV0dXJuIENvbHVtblR5cGVFbnVtLkRhdGU7XG4gICAgICAgIGNhc2UgJ2VudW0nOlxuICAgICAgICAgICAgcmV0dXJuIENvbHVtblR5cGVFbnVtLkVudW07XG4gICAgICAgIGNhc2UgJ2N1c3RvbSc6XG4gICAgICAgICAgICByZXR1cm4gQ29sdW1uVHlwZUVudW0uQ3VzdG9tO1xuICAgICAgICBjYXNlICdjbGFzcyc6XG4gICAgICAgICAgICByZXR1cm4gQ29sdW1uVHlwZUVudW0uU3RyaW5nO1xuICAgICAgICBjYXNlICdzdHJpbmcnOlxuICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgICAgcmV0dXJuIENvbHVtblR5cGVFbnVtLlN0cmluZztcbiAgICB9XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRDb2x1bW5EaXNwbGF5VHlwZUZyb21Db2x1bW5UeXBlKGNvbHVtblR5cGU6IENvbHVtblR5cGVFbnVtLCBhdHRyaWJ1dGVUeXBlOiBzdHJpbmcpOiBDb2x1bW5EaXNwbGF5VHlwZUVudW0ge1xuICAgIHN3aXRjaCAoY29sdW1uVHlwZSkge1xuICAgICAgICBjYXNlIENvbHVtblR5cGVFbnVtLk51bWJlcjpcbiAgICAgICAgICAgIHJldHVybiBhdHRyaWJ1dGVUeXBlID09PSAnY3VycmVuY3knID8gQ29sdW1uRGlzcGxheVR5cGVFbnVtLkN1cnJlbmN5IDogQ29sdW1uRGlzcGxheVR5cGVFbnVtLk51bWJlcjtcbiAgICAgICAgY2FzZSBDb2x1bW5UeXBlRW51bS5Cb29sZWFuOlxuICAgICAgICAgICAgcmV0dXJuIENvbHVtbkRpc3BsYXlUeXBlRW51bS5Cb29sZWFuO1xuICAgICAgICBjYXNlIENvbHVtblR5cGVFbnVtLkRhdGU6XG4gICAgICAgICAgICByZXR1cm4gQ29sdW1uRGlzcGxheVR5cGVFbnVtLkRhdGU7XG4gICAgICAgIGNhc2UgQ29sdW1uVHlwZUVudW0uRW51bTpcbiAgICAgICAgICAgIHJldHVybiBDb2x1bW5EaXNwbGF5VHlwZUVudW0uRW51bTtcbiAgICAgICAgY2FzZSBDb2x1bW5UeXBlRW51bS5DdXN0b206XG4gICAgICAgICAgICByZXR1cm4gQ29sdW1uRGlzcGxheVR5cGVFbnVtLkNvbXBvbmVudDtcbiAgICAgICAgY2FzZSBDb2x1bW5UeXBlRW51bS5TdHJpbmc6XG4gICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgICByZXR1cm4gQ29sdW1uRGlzcGxheVR5cGVFbnVtLlN0cmluZztcbiAgICB9XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBleHBhbmRDbGFzc0F0dHJpYnV0ZURlZldpdGhUYWJsZURlZihhdHRyaWJ1dGVzPzogQXJyYXk8Q2xhc3NBdHRyaWJ1dGVEZWY+IHwgbnVsbCk6IFRhYmxlQ2xhc3NBdHRyaWJ1dGVEZWZbXSB7XG4gICAgaWYgKCFhdHRyaWJ1dGVzKSB7XG4gICAgICAgIHRocm93IG5ldyBDb21tb25zSW50ZXJuYWxFcnJvcignQ2xhc3MgYXR0cmlidXRlIGRlZmluaXRpb24gaXMgbnVsbCwgcHJvYmxlbSB3aXRoIFR5cGVSZWdpc3RyeTo6ZmluZEF0dHJpYnV0ZXNEZWZpbml0aW9uQnlDbGFzc1R5cGU/Jywge25hbWU6ICdUYWJsZXZpZXdVdGlsc0Vycm9yJ30pO1xuICAgIH1cblxuICAgIGNvbnN0IHR5cGVSZWdpc3RyeSA9IFR5cGVSZWdpc3RyeS5nZXQoKTtcbiAgICBjb25zdCB0YWJsZUNsYXNzQXR0cmlidXRlRGVmOiBUYWJsZUNsYXNzQXR0cmlidXRlRGVmW10gPSBbXTtcbiAgICBmb3IgKGNvbnN0IGF0dHJpYnV0ZSBvZiBhdHRyaWJ1dGVzKSB7XG4gICAgICAgIGNvbnN0IGVudW1UeXBlID0gdHlwZVJlZ2lzdHJ5LmZpbmRFbnVtKGF0dHJpYnV0ZS50eXBlKTtcbiAgICAgICAgY29uc3QgY29sdW1uVHlwZSA9IGVudW1UeXBlID8gQ29sdW1uVHlwZUVudW0uRW51bSA6IGdldENvbHVtblR5cGVGcm9tQ2xhc3NBdHRyaWJ1dGVEZWZUeXBlKGF0dHJpYnV0ZS50eXBlKTtcbiAgICAgICAgdGFibGVDbGFzc0F0dHJpYnV0ZURlZi5wdXNoKHtcbiAgICAgICAgICAgIG5hbWU6IGF0dHJpYnV0ZS5uYW1lLFxuICAgICAgICAgICAgYmFzZU5hbWU6IGF0dHJpYnV0ZS5iYXNlTmFtZSxcbiAgICAgICAgICAgIHR5cGU6IGF0dHJpYnV0ZS50eXBlLFxuICAgICAgICAgICAgc3VidHlwZTogYXR0cmlidXRlLnN1YnR5cGUsXG4gICAgICAgICAgICBjb2x1bW5UeXBlOiBlbnVtVHlwZSA/IENvbHVtblR5cGVFbnVtLkVudW0gOiBnZXRDb2x1bW5UeXBlRnJvbUNsYXNzQXR0cmlidXRlRGVmVHlwZShhdHRyaWJ1dGUudHlwZSksXG4gICAgICAgICAgICBjb2x1bW5EaXNwbGF5VHlwZTogZ2V0Q29sdW1uRGlzcGxheVR5cGVGcm9tQ29sdW1uVHlwZShjb2x1bW5UeXBlLCBhdHRyaWJ1dGUudHlwZSksXG4gICAgICAgICAgICBlbnVtVHlwZTogdHlwZVJlZ2lzdHJ5LmZpbmRFbnVtKGF0dHJpYnV0ZS50eXBlKSBhcyBFbnVtVHlwZSxcbiAgICAgICAgICAgIGNsYXNzVHlwZTogdHlwZVJlZ2lzdHJ5LmZpbmRUeXBlKGF0dHJpYnV0ZS50eXBlKSBhcyBDbGFzc1R5cGU8YW55PlxuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICByZXR1cm4gdGFibGVDbGFzc0F0dHJpYnV0ZURlZjtcbn1cblxuLyoqXG4gKiByZXR1cm5zIGF0dHJpYnV0ZXMgZnJvbSBjbGFzcyB0eXBlIGFuZCBleHRlbmRzIHRvIHR5cGVkIGRlZiB3aXRoIGNvbHVtbiBhbmQgZmllbGQgZW51bSB0eXBlXG4gKiBAcGFyYW0gdHlwZSBjbGFzcyB0eXBlXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBnZXRUYWJsZUNsYXNzQXR0cmlidXRlRGVmPFQ+KHR5cGU6IENsYXNzVHlwZTxUPik6IFRhYmxlQ2xhc3NBdHRyaWJ1dGVEZWZbXSB7XG4gICAgcmV0dXJuIGV4cGFuZENsYXNzQXR0cmlidXRlRGVmV2l0aFRhYmxlRGVmKFR5cGVSZWdpc3RyeS5nZXQoKS5maW5kQXR0cmlidXRlc0RlZmluaXRpb25CeUNsYXNzVHlwZSh0eXBlKSk7XG59XG4iXX0=
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xhc3MtdGFibGUtYXR0cmlidXRlLm1vZGVsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vdGFibGUvYXBpL2NsYXNzL3NyYy9jbGFzcy10YWJsZS1hdHRyaWJ1dGUubW9kZWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q2xhc3NBdHRyaWJ1dGVEZWYsIENsYXNzVHlwZSwgRW51bVR5cGV9IGZyb20gJ0BtZWRpdXNpbmMvbW5nLWNvbW1vbnMvY29yZSc7XG5pbXBvcnQge0NvbHVtbkRpc3BsYXlUeXBlRW51bSwgQ29sdW1uVHlwZUVudW19IGZyb20gJ0BtZWRpdXNpbmMvbW5nLWNvbW1vbnMvdGFibGUvYXBpJztcblxuZXhwb3J0IGludGVyZmFjZSBUYWJsZUNsYXNzQXR0cmlidXRlRGVmIGV4dGVuZHMgQ2xhc3NBdHRyaWJ1dGVEZWYge1xuICAgIGNvbHVtblR5cGU6IENvbHVtblR5cGVFbnVtO1xuICAgIGNvbHVtbkRpc3BsYXlUeXBlOiBDb2x1bW5EaXNwbGF5VHlwZUVudW07XG4gICAgZW51bVR5cGU/OiBFbnVtVHlwZTtcbiAgICBjbGFzc1R5cGU/OiBDbGFzc1R5cGU8YW55Pjtcbn1cbiJdfQ==
@@ -0,0 +1,5 @@
1
+ import { TableDataProviderInst } from '@mediusinc/mng-commons/table/api';
2
+ export function tableDataProviderFromClass(type, serviceType) {
3
+ return new TableDataProviderInst(serviceType);
4
+ }
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xhc3MtdGFibGUtZGF0YS1wcm92aWRlci5mYWN0b3J5LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vdGFibGUvYXBpL2NsYXNzL3NyYy9jbGFzcy10YWJsZS1kYXRhLXByb3ZpZGVyLmZhY3RvcnkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFDLHFCQUFxQixFQUFDLE1BQU0sa0NBQWtDLENBQUM7QUFTdkUsTUFBTSxVQUFVLDBCQUEwQixDQUN0QyxJQUFzQixFQUN0QixXQUEwQjtJQUUxQixPQUFPLElBQUkscUJBQXFCLENBQStDLFdBQTJCLENBQUMsQ0FBQztBQUNoSCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDbGFzc1R5cGUsIFNlcnZpY2VDbGFzc1R5cGV9IGZyb20gJ0BtZWRpdXNpbmMvbW5nLWNvbW1vbnMvY29yZSc7XG5pbXBvcnQge1RhYmxlRGF0YVByb3ZpZGVySW5zdH0gZnJvbSAnQG1lZGl1c2luYy9tbmctY29tbW9ucy90YWJsZS9hcGknO1xuXG5leHBvcnQgZnVuY3Rpb24gdGFibGVEYXRhUHJvdmlkZXJGcm9tQ2xhc3M8TW9kZWwsIFNvcnRzID0ga2V5b2YgTW9kZWwsIEZpbHRlcnMgZXh0ZW5kcyBrZXlvZiBhbnkgPSBrZXlvZiBNb2RlbD4oXG4gICAgdHlwZTogQ2xhc3NUeXBlPE1vZGVsPlxuKTogVGFibGVEYXRhUHJvdmlkZXJJbnN0PE1vZGVsLCB1bmRlZmluZWQsIFNvcnRzLCBGaWx0ZXJzLCB1bmRlZmluZWQ+O1xuZXhwb3J0IGZ1bmN0aW9uIHRhYmxlRGF0YVByb3ZpZGVyRnJvbUNsYXNzPE1vZGVsLCBTZXJ2aWNlID0gYW55LCBTb3J0cyA9IGtleW9mIE1vZGVsLCBGaWx0ZXJzIGV4dGVuZHMga2V5b2YgYW55ID0ga2V5b2YgTW9kZWw+KFxuICAgIHR5cGU6IENsYXNzVHlwZTxNb2RlbD4sXG4gICAgc2VydmljZVR5cGU6IFNlcnZpY2VDbGFzc1R5cGU8U2VydmljZT5cbik6IFRhYmxlRGF0YVByb3ZpZGVySW5zdDxNb2RlbCwgU2VydmljZSwgU29ydHMsIEZpbHRlcnMsIFNlcnZpY2VDbGFzc1R5cGU8U2VydmljZT4+O1xuZXhwb3J0IGZ1bmN0aW9uIHRhYmxlRGF0YVByb3ZpZGVyRnJvbUNsYXNzPE1vZGVsLCBTZXJ2aWNlID0gYW55LCBTb3J0cyA9IGtleW9mIE1vZGVsLCBGaWx0ZXJzIGV4dGVuZHMga2V5b2YgYW55ID0ga2V5b2YgTW9kZWwsIFNlcnZpY2VDbGFzcyA9IFNlcnZpY2VDbGFzc1R5cGU8U2VydmljZT4+KFxuICAgIHR5cGU6IENsYXNzVHlwZTxNb2RlbD4sXG4gICAgc2VydmljZVR5cGU/OiBTZXJ2aWNlQ2xhc3Ncbikge1xuICAgIHJldHVybiBuZXcgVGFibGVEYXRhUHJvdmlkZXJJbnN0PE1vZGVsLCBTZXJ2aWNlLCBTb3J0cywgRmlsdGVycywgU2VydmljZUNsYXNzPihzZXJ2aWNlVHlwZSBhcyBTZXJ2aWNlQ2xhc3MpO1xufVxuIl19
@@ -0,0 +1,99 @@
1
+ import { CommonsInternalError, TypeRegistry } from '@mediusinc/mng-commons/core';
2
+ import { enumModelGeneric } from '@mediusinc/mng-commons/model';
3
+ import { ModelClassDescriptor, findClassTitleAttribute } from '@mediusinc/mng-commons/model/class';
4
+ import { ColumnTypeEnum } from '@mediusinc/mng-commons/table/api';
5
+ import { getTableClassAttributeDef } from './class-table-attribute-converter';
6
+ /**
7
+ * generates column based on attributes
8
+ * @param desc Table descriptor
9
+ * @param attribute attribute map
10
+ * @param column if provided, replaced by new, otherwise new is created
11
+ * @param args additional parameters
12
+ */
13
+ export function upsertTableColumnFromAttributeDef(desc, attribute, column, ...args) {
14
+ if (column == null) {
15
+ column = desc.addColumnUnsafe(attribute.name);
16
+ }
17
+ if (attribute.columnType === ColumnTypeEnum.Enum && args.length === 0 && attribute.enumType) {
18
+ args = [enumModelGeneric(attribute.enumType)];
19
+ }
20
+ column = column.asType(attribute.columnType, attribute.columnDisplayType, ...args);
21
+ if (attribute.classType) {
22
+ const titleProperty = findClassTitleAttribute(attribute.classType) ?? undefined;
23
+ if (titleProperty) {
24
+ column.withGetter(value => value?.[titleProperty]);
25
+ }
26
+ }
27
+ else {
28
+ desc.addFilterFromColumnDescriptorUnsafe(column, false);
29
+ desc.withSortUnsafe(column.property);
30
+ }
31
+ return column;
32
+ }
33
+ /**
34
+ * defines modified type of column
35
+ * DO NOT USE with enum (use withCustomEnumType)
36
+ * @param descriptor table descriptor
37
+ * @param property column name
38
+ * @param columnType modified type
39
+ * @param args additional attributes
40
+ * @param columnDisplayType
41
+ */
42
+ export function modifyTableClassAttributeColumnType(descriptor, property, columnType, columnDisplayType, ...args) {
43
+ return modifyTableClassAttributeColumnTypeUnsafe(descriptor, property, columnType, columnDisplayType, ...args);
44
+ }
45
+ export function modifyTableClassAttributeColumnTypeUnsafe(descriptor, property, columnType, columnDisplayType, ...args) {
46
+ if (!(descriptor.model instanceof ModelClassDescriptor)) {
47
+ throw new CommonsInternalError(`withColumnModifiedType cannot be executed for property ${property}: Model descriptor is not of type 'ModelClassDescriptor' is not defined.`);
48
+ }
49
+ const attributeDef = getTableClassAttributeDef(descriptor.model.classType).find(attr => attr.name === property);
50
+ if (attributeDef != null) {
51
+ attributeDef.columnType = columnType ?? attributeDef.columnType;
52
+ attributeDef.columnDisplayType = columnDisplayType ?? attributeDef.columnDisplayType;
53
+ return upsertTableColumnFromAttributeDef(descriptor, attributeDef, descriptor.columns.find(col => col.property === attributeDef.name), ...args);
54
+ }
55
+ return null;
56
+ }
57
+ /**
58
+ * defines custom enum type for column
59
+ * @param descriptor table descriptor
60
+ * @param property column name
61
+ * @param enumDesc Enum descriptor.
62
+ */
63
+ export function modifyTableClassAttributeColumnEnum(descriptor, property, enumDesc) {
64
+ return tableDescriptorModifyEnumColumnUnsafe(descriptor, property, enumDesc);
65
+ }
66
+ export function tableDescriptorModifyEnumColumnUnsafe(descriptor, property, enumDesc) {
67
+ if (!(descriptor.model instanceof ModelClassDescriptor)) {
68
+ throw new CommonsInternalError(`withColumnModifiedEnum cannot be executed for property ${property}: Model descriptor is not of type 'ModelClassDescriptor' is not defined.`);
69
+ }
70
+ const attributeDef = getTableClassAttributeDef(descriptor.model.classType).find(attr => attr.name === property);
71
+ if (attributeDef != null) {
72
+ attributeDef.columnType = ColumnTypeEnum.Enum;
73
+ upsertTableColumnFromAttributeDef(descriptor, attributeDef, descriptor.columns.find(col => col.property === property), enumDesc ?? enumModelGeneric(TypeRegistry.get().findEnum(attributeDef.type)));
74
+ }
75
+ return null;
76
+ }
77
+ /**
78
+ * modifies column with class and lookup provider
79
+ * @param descriptor table descriptor
80
+ * @param property column name
81
+ * @param lookupProvider lookupProvider for class
82
+ * @param optionsLabelProperty
83
+ * @param filterProperty
84
+ */
85
+ export function modifyTableColumnFilterLookup(descriptor, property, lookupProvider, optionsLabelProperty, filterProperty) {
86
+ return modifyTableColumnFilterLookupUnsafe(descriptor, property, lookupProvider, optionsLabelProperty, filterProperty);
87
+ }
88
+ export function modifyTableColumnFilterLookupUnsafe(descriptor, property, lookupProvider, optionsLabelProperty, filterProperty) {
89
+ const column = descriptor.columns.find(col => col.property === property);
90
+ if (column) {
91
+ const filter = descriptor.addFilterLookupUnsafe(column.property, lookupProvider, filterProperty);
92
+ if (optionsLabelProperty) {
93
+ filter.withOptionsLabelPropertyUnsafe(optionsLabelProperty);
94
+ }
95
+ return filter;
96
+ }
97
+ return null;
98
+ }
99
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xhc3MtdGFibGUtZGVzY3JpcHRvci1oZWxwZXJzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vdGFibGUvYXBpL2NsYXNzL3NyYy9jbGFzcy10YWJsZS1kZXNjcmlwdG9yLWhlbHBlcnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLG9CQUFvQixFQUFpQyxZQUFZLEVBQUMsTUFBTSw2QkFBNkIsQ0FBQztBQUU5RyxPQUFPLEVBQWlCLGdCQUFnQixFQUFDLE1BQU0sOEJBQThCLENBQUM7QUFDOUUsT0FBTyxFQUFDLG9CQUFvQixFQUFFLHVCQUF1QixFQUFDLE1BQU0sb0NBQW9DLENBQUM7QUFDakcsT0FBTyxFQUEwQyxjQUFjLEVBQXNCLE1BQU0sa0NBQWtDLENBQUM7QUFFOUgsT0FBTyxFQUFDLHlCQUF5QixFQUFDLE1BQU0sbUNBQW1DLENBQUM7QUFHNUU7Ozs7OztHQU1HO0FBQ0gsTUFBTSxVQUFVLGlDQUFpQyxDQUM3QyxJQUErQyxFQUMvQyxTQUFpQyxFQUNqQyxNQUFrRCxFQUNsRCxHQUFHLElBQVc7SUFFZCxJQUFJLE1BQU0sSUFBSSxJQUFJLEVBQUUsQ0FBQztRQUNqQixNQUFNLEdBQUcsSUFBSSxDQUFDLGVBQWUsQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDbEQsQ0FBQztJQUVELElBQUksU0FBUyxDQUFDLFVBQVUsS0FBSyxjQUFjLENBQUMsSUFBSSxJQUFJLElBQUksQ0FBQyxNQUFNLEtBQUssQ0FBQyxJQUFJLFNBQVMsQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUMxRixJQUFJLEdBQUcsQ0FBQyxnQkFBZ0IsQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQztJQUNsRCxDQUFDO0lBRUQsTUFBTSxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLFVBQVUsRUFBRSxTQUFTLENBQUMsaUJBQWlCLEVBQUUsR0FBRyxJQUFJLENBQUMsQ0FBQztJ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Q2xCLENBQUM7SUFDRCxPQUFPLElBQUksQ0FBQztBQUNoQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDb21tb25zSW50ZXJuYWxFcnJvciwgRW51bVR5cGUsIElMb29rdXBEYXRhUHJvdmlkZXIsIFR5cGVSZWdpc3RyeX0gZnJvbSAnQG1lZGl1c2luYy9tbmctY29tbW9ucy9jb3JlJztcbmltcG9ydCB7RmlsdGVyTG9va3VwRGVzY3JpcHRvcn0gZnJvbSAnQG1lZGl1c2luYy9tbmctY29tbW9ucy9maWx0ZXInO1xuaW1wb3J0IHtFbnVtRGVzY3JpcHRvciwgZW51bU1vZGVsR2VuZXJpY30gZnJvbSAnQG1lZGl1c2luYy9tbmctY29tbW9ucy9tb2RlbCc7XG5pbXBvcnQge01vZGVsQ2xhc3NEZXNjcmlwdG9yLCBmaW5kQ2xhc3NUaXRsZUF0dHJpYnV0ZX0gZnJvbSAnQG1lZGl1c2luYy9tbmctY29tbW9ucy9tb2RlbC9jbGFzcyc7XG5pbXBvcnQge0NvbHVtbkRlc2NyaXB0b3IsIENvbHVtbkRpc3BsYXlUeXBlRW51bSwgQ29sdW1uVHlwZUVudW0sIFRhYmxlRGVzY3JpcHRvckluc3R9IGZyb20gJ0BtZWRpdXNpbmMvbW5nLWNvbW1vbnMvdGFibGUvYXBpJztcblxuaW1wb3J0IHtnZXRUYWJsZUNsYXNzQXR0cmlidXRlRGVmfSBmcm9tICcuL2NsYXNzLXRhYmxlLWF0dHJpYnV0ZS1jb252ZXJ0ZXInO1xuaW1wb3J0IHtUYWJsZUNsYXNzQXR0cmlidXRlRGVmfSBmcm9tICcuL2NsYXNzLXRhYmxlLWF0dHJpYnV0ZS5tb2RlbCc7XG5cbi8qKlxuICogZ2VuZXJhdGVzIGNvbHVtbiBiYXNlZCBvbiBhdHRyaWJ1dGVzXG4gKiBAcGFyYW0gZGVzYyBUYWJsZSBkZXNjcmlwdG9yXG4gKiBAcGFyYW0gYXR0cmlidXRlIGF0dHJpYnV0ZSBtYXBcbiAqIEBwYXJhbSBjb2x1bW4gaWYgcHJvdmlkZWQsIHJlcGxhY2VkIGJ5IG5ldywgb3RoZXJ3aXNlIG5ldyBpcyBjcmVhdGVkXG4gKiBAcGFyYW0gYXJncyBhZGRpdGlvbmFsIHBhcmFtZXRlcnNcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHVwc2VydFRhYmxlQ29sdW1uRnJvbUF0dHJpYnV0ZURlZjxDb2x1bW5Nb2RlbCwgVGFibGVNb2RlbD4oXG4gICAgZGVzYzogVGFibGVEZXNjcmlwdG9ySW5zdDxUYWJsZU1vZGVsLCBhbnksIGFueT4sXG4gICAgYXR0cmlidXRlOiBUYWJsZUNsYXNzQXR0cmlidXRlRGVmLFxuICAgIGNvbHVtbj86IENvbHVtbkRlc2NyaXB0b3I8Q29sdW1uTW9kZWwsIFRhYmxlTW9kZWw+LFxuICAgIC4uLmFyZ3M6IGFueVtdXG4pOiBDb2x1bW5EZXNjcmlwdG9yPENvbHVtbk1vZGVsLCBUYWJsZU1vZGVsPiB7XG4gICAgaWYgKGNvbHVtbiA9PSBudWxsKSB7XG4gICAgICAgIGNvbHVtbiA9IGRlc2MuYWRkQ29sdW1uVW5zYWZlKGF0dHJpYnV0ZS5uYW1lKTtcbiAgICB9XG5cbiAgICBpZiAoYXR0cmlidXRlLmNvbHVtblR5cGUgPT09IENvbHVtblR5cGVFbnVtLkVudW0gJiYgYXJncy5sZW5ndGggPT09IDAgJiYgYXR0cmlidXRlLmVudW1UeXBlKSB7XG4gICAgICAgIGFyZ3MgPSBbZW51bU1vZGVsR2VuZXJpYyhhdHRyaWJ1dGUuZW51bVR5cGUpXTtcbiAgICB9XG5cbiAgICBjb2x1bW4gPSBjb2x1bW4uYXNUeXBlKGF0dHJpYnV0ZS5jb2x1bW5UeXBlLCBhdHRyaWJ1dGUuY29sdW1uRGlzcGxheVR5cGUsIC4uLmFyZ3MpO1xuICAgIGlmIChhdHRyaWJ1dGUuY2xhc3NUeXBlKSB7XG4gICAgICAgIGNvbnN0IHRpdGxlUHJvcGVydHkgPSBmaW5kQ2xhc3NUaXRsZUF0dHJpYnV0ZShhdHRyaWJ1dGUuY2xhc3NUeXBlKSA/PyB1bmRlZmluZWQ7XG4gICAgICAgIGlmICh0aXRsZVByb3BlcnR5KSB7XG4gICAgICAgICAgICBjb2x1bW4ud2l0aEdldHRlcih2YWx1ZSA9PiB2YWx1ZT8uW3RpdGxlUHJvcGVydHkgYXMga2V5b2Ygb2JqZWN0XSk7XG4gICAgICAgIH1cbiAgICB9IGVsc2Uge1xuICAgICAgICBkZXNjLmFkZEZpbHRlckZyb21Db2x1bW5EZXNjcmlwdG9yVW5zYWZlKGNvbHVtbiwgZmFsc2UpO1xuICAgICAgICBkZXNjLndpdGhTb3J0VW5zYWZlKGNvbHVtbi5wcm9wZXJ0eSk7XG4gICAgfVxuXG4gICAgcmV0dXJuIGNvbHVtbjtcbn1cblxuLyoqXG4gKiBkZWZpbmVzIG1vZGlmaWVkIHR5cGUgb2YgY29sdW1uXG4gKiBETyBOT1QgVVNFIHdpdGggZW51bSAodXNlIHdpdGhDdXN0b21FbnVtVHlwZSlcbiAqIEBwYXJhbSBkZXNjcmlwdG9yIHRhYmxlIGRlc2NyaXB0b3JcbiAqIEBwYXJhbSBwcm9wZXJ0eSBjb2x1bW4gbmFtZVxuICogQHBhcmFtIGNvbHVtblR5cGUgbW9kaWZpZWQgdHlwZVxuICogQHBhcmFtIGFyZ3MgYWRkaXRpb25hbCBhdHRyaWJ1dGVzXG4gKiBAcGFyYW0gY29sdW1uRGlzcGxheVR5cGVcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIG1vZGlmeVRhYmxlQ2xhc3NBdHRyaWJ1dGVDb2x1bW5UeXBlPFxuICAgIFRhYmxlTW9kZWwsXG4gICAgUHJvcGVydHkgZXh0ZW5kcyBrZXlvZiBUYWJsZU1vZGVsLFxuICAgIENvbHVtbk1vZGVsID0gTm9uTnVsbGFibGU8VGFibGVNb2RlbFtQcm9wZXJ0eV0+LFxuICAgIENvbHVtblZhbHVlID0gVGFibGVNb2RlbFtQcm9wZXJ0eV1cbj4oXG4gICAgZGVzY3JpcHRvcjogVGFibGVEZXNjcmlwdG9ySW5zdDxUYWJsZU1vZGVsLCBhbnksIGFueT4sXG4gICAgcHJvcGVydHk6IFByb3BlcnR5LFxuICAgIGNvbHVtblR5cGU/OiBDb2x1bW5UeXBlRW51bSxcbiAgICBjb2x1bW5EaXNwbGF5VHlwZT86IENvbHVtbkRpc3BsYXlUeXBlRW51bSxcbiAgICAuLi5hcmdzOiBhbnlbXVxuKTogQ29sdW1uRGVzY3JpcHRvcjxDb2x1bW5Nb2RlbCwgVGFibGVNb2RlbCwgQ29sdW1uVmFsdWU+IHwgbnVsbCB7XG4gICAgcmV0dXJuIG1vZGlmeVRhYmxlQ2xhc3NBdHRyaWJ1dGVDb2x1bW5UeXBlVW5zYWZlPFRhYmxlTW9kZWwsIENvbHVtbk1vZGVsLCBDb2x1bW5WYWx1ZT4oZGVzY3JpcHRvciwgcHJvcGVydHkgYXMgc3RyaW5nLCBjb2x1bW5UeXBlLCBjb2x1bW5EaXNwbGF5VHlwZSwgLi4uYXJncyk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBtb2RpZnlUYWJsZUNsYXNzQXR0cmlidXRlQ29sdW1uVHlwZVVuc2FmZTxUYWJsZU1vZGVsLCBDb2x1bW5Nb2RlbCA9IGFueSwgQ29sdW1uVmFsdWUgPSBDb2x1bW5Nb2RlbD4oXG4gICAgZGVzY3JpcHRvcjogVGFibGVEZXNjcmlwdG9ySW5zdDxUYWJsZU1vZGVsLCBhbnksIGFueT4sXG4gICAgcHJvcGVydHk6IHN0cmluZyxcbiAgICBjb2x1bW5UeXBlPzogQ29sdW1uVHlwZUVudW0sXG4gICAgY29sdW1uRGlzcGxheVR5cGU/OiBDb2x1bW5EaXNwbGF5VHlwZUVudW0sXG4gICAgLi4uYXJnczogYW55W11cbik6IENvbHVtbkRlc2NyaXB0b3I8Q29sdW1uTW9kZWwsIFRhYmxlTW9kZWwsIENvbHVtblZhbHVlPiB8IG51bGwge1xuICAgIGlmICghKGRlc2NyaXB0b3IubW9kZWwgaW5zdGFuY2VvZiBNb2RlbENsYXNzRGVzY3JpcHRvcikpIHtcbiAgICAgICAgdGhyb3cgbmV3IENvbW1vbnNJbnRlcm5hbEVycm9yKFxuICAgICAgICAgICAgYHdpdGhDb2x1bW5Nb2RpZmllZFR5cGUgY2Fubm90IGJlIGV4ZWN1dGVkIGZvciBwcm9wZXJ0eSAke3Byb3BlcnR5fTogTW9kZWwgZGVzY3JpcHRvciBpcyBub3Qgb2YgdHlwZSAnTW9kZWxDbGFzc0Rlc2NyaXB0b3InIGlzIG5vdCBkZWZpbmVkLmBcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBjb25zdCBhdHRyaWJ1dGVEZWYgPSBnZXRUYWJsZUNsYXNzQXR0cmlidXRlRGVmKGRlc2NyaXB0b3IubW9kZWwuY2xhc3NUeXBlKS5maW5kKGF0dHIgPT4gYXR0ci5uYW1lID09PSBwcm9wZXJ0eSk7XG5cbiAgICBpZiAoYXR0cmlidXRlRGVmICE9IG51bGwpIHtcbiAgICAgICAgYXR0cmlidXRlRGVmLmNvbHVtblR5cGUgPSBjb2x1bW5UeXBlID8/IGF0dHJpYnV0ZURlZi5jb2x1bW5UeXBlO1xuICAgICAgICBhdHRyaWJ1dGVEZWYuY29sdW1uRGlzcGxheVR5cGUgPSBjb2x1bW5EaXNwbGF5VHlwZSA/PyBhdHRyaWJ1dGVEZWYuY29sdW1uRGlzcGxheVR5cGU7XG4gICAgICAgIHJldHVybiB1cHNlcnRUYWJsZUNvbHVtbkZyb21BdHRyaWJ1dGVEZWYoXG4gICAgICAgICAgICBkZXNjcmlwdG9yLFxuICAgICAgICAgICAgYXR0cmlidXRlRGVmLFxuICAgICAgICAgICAgZGVzY3JpcHRvci5jb2x1bW5zLmZpbmQoY29sID0+IGNvbC5wcm9wZXJ0eSA9PT0gYXR0cmlidXRlRGVmLm5hbWUpLFxuICAgICAgICAgICAgLi4uYXJnc1xuICAgICAgICApO1xuICAgIH1cblxuICAgIHJldHVybiBudWxsO1xufVxuXG4vKipcbiAqIGRlZmluZXMgY3VzdG9tIGVudW0gdHlwZSBmb3IgY29sdW1uXG4gKiBAcGFyYW0gZGVzY3JpcHRvciB0YWJsZSBkZXNjcmlwdG9yXG4gKiBAcGFyYW0gcHJvcGVydHkgY29sdW1uIG5hbWVcbiAqIEBwYXJhbSBlbnVtRGVzYyBFbnVtIGRlc2NyaXB0b3IuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBtb2RpZnlUYWJsZUNsYXNzQXR0cmlidXRlQ29sdW1uRW51bTxcbiAgICBUYWJsZU1vZGVsLFxuICAgIFByb3BlcnR5IGV4dGVuZHMga2V5b2YgVGFibGVNb2RlbCxcbiAgICBFbnVtIGV4dGVuZHMgTm9uTnVsbGFibGU8VGFibGVNb2RlbFtQcm9wZXJ0eV0+LFxuICAgIENvbHVtbk1vZGVsID0gTm9uTnVsbGFibGU8VGFibGVNb2RlbFtQcm9wZXJ0eV0+LFxuICAgIENvbHVtblZhbHVlID0gVGFibGVNb2RlbFtQcm9wZXJ0eV1cbj4oZGVzY3JpcHRvcjogVGFibGVEZXNjcmlwdG9ySW5zdDxUYWJsZU1vZGVsLCBhbnksIGFueT4sIHByb3BlcnR5OiBQcm9wZXJ0eSwgZW51bURlc2M/OiBFbnVtRGVzY3JpcHRvcjxFbnVtPik6IENvbHVtbkRlc2NyaXB0b3I8Q29sdW1uTW9kZWwsIFRhYmxlTW9kZWwsIENvbHVtblZhbHVlPiB8IG51bGwge1xuICAgIHJldHVybiB0YWJsZURlc2NyaXB0b3JNb2RpZnlFbnVtQ29sdW1uVW5zYWZlPFRhYmxlTW9kZWwsIEVudW0sIENvbHVtbk1vZGVsLCBDb2x1bW5WYWx1ZT4oZGVzY3JpcHRvciwgcHJvcGVydHkgYXMgc3RyaW5nLCBlbnVtRGVzYyk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiB0YWJsZURlc2NyaXB0b3JNb2RpZnlFbnVtQ29sdW1uVW5zYWZlPFRhYmxlTW9kZWwsIEVudW0gPSBhbnksIENvbHVtbk1vZGVsID0gYW55LCBDb2x1bW5WYWx1ZSA9IENvbHVtbk1vZGVsPihcbiAgICBkZXNjcmlwdG9yOiBUYWJsZURlc2NyaXB0b3JJbnN0PFRhYmxlTW9kZWwsIGFueSwgYW55PixcbiAgICBwcm9wZXJ0eTogc3RyaW5nLFxuICAgIGVudW1EZXNjPzogRW51bURlc2NyaXB0b3I8RW51bT5cbik6IENvbHVtbkRlc2NyaXB0b3I8Q29sdW1uTW9kZWwsIFRhYmxlTW9kZWwsIENvbHVtblZhbHVlPiB8IG51bGwge1xuICAgIGlmICghKGRlc2NyaXB0b3IubW9kZWwgaW5zdGFuY2VvZiBNb2RlbENsYXNzRGVzY3JpcHRvcikpIHtcbiAgICAgICAgdGhyb3cgbmV3IENvbW1vbnNJbnRlcm5hbEVycm9yKFxuICAgICAgICAgICAgYHdpdGhDb2x1bW5Nb2RpZmllZEVudW0gY2Fubm90IGJlIGV4ZWN1dGVkIGZvciBwcm9wZXJ0eSAke3Byb3BlcnR5fTogTW9kZWwgZGVzY3JpcHRvciBpcyBub3Qgb2YgdHlwZSAnTW9kZWxDbGFzc0Rlc2NyaXB0b3InIGlzIG5vdCBkZWZpbmVkLmBcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBjb25zdCBhdHRyaWJ1dGVEZWYgPSBnZXRUYWJsZUNsYXNzQXR0cmlidXRlRGVmKGRlc2NyaXB0b3IubW9kZWwuY2xhc3NUeXBlKS5maW5kKGF0dHIgPT4gYXR0ci5uYW1lID09PSBwcm9wZXJ0eSk7XG5cbiAgICBpZiAoYXR0cmlidXRlRGVmICE9IG51bGwpIHtcbiAgICAgICAgYXR0cmlidXRlRGVmLmNvbHVtblR5cGUgPSBDb2x1bW5UeXBlRW51bS5FbnVtO1xuICAgICAgICB1cHNlcnRUYWJsZUNvbHVtbkZyb21BdHRyaWJ1dGVEZWYoXG4gICAgICAgICAgICBkZXNjcmlwdG9yLFxuICAgICAgICAgICAgYXR0cmlidXRlRGVmLFxuICAgICAgICAgICAgZGVzY3JpcHRvci5jb2x1bW5zLmZpbmQoY29sID0+IGNvbC5wcm9wZXJ0eSA9PT0gcHJvcGVydHkpLFxuICAgICAgICAgICAgZW51bURlc2MgPz8gZW51bU1vZGVsR2VuZXJpYyhUeXBlUmVnaXN0cnkuZ2V0KCkuZmluZEVudW0oYXR0cmlidXRlRGVmLnR5cGUpIGFzIEVudW1UeXBlKVxuICAgICAgICApO1xuICAgIH1cblxuICAgIHJldHVybiBudWxsO1xufVxuXG4vKipcbiAqIG1vZGlmaWVzIGNvbHVtbiB3aXRoIGNsYXNzIGFuZCBsb29rdXAgcHJvdmlkZXJcbiAqIEBwYXJhbSBkZXNjcmlwdG9yIHRhYmxlIGRlc2NyaXB0b3JcbiAqIEBwYXJhbSBwcm9wZXJ0eSBjb2x1bW4gbmFtZVxuICogQHBhcmFtIGxvb2t1cFByb3ZpZGVyIGxvb2t1cFByb3ZpZGVyIGZvciBjbGFzc1xuICogQHBhcmFtIG9wdGlvbnNMYWJlbFByb3BlcnR5XG4gKiBAcGFyYW0gZmlsdGVyUHJvcGVydHlcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIG1vZGlmeVRhYmxlQ29sdW1uRmlsdGVyTG9va3VwPFRhYmxlTW9kZWwsIFByb3BlcnR5IGV4dGVuZHMga2V5b2YgVGFibGVNb2RlbCwgU2VydmljZSwgQ29sdW1uTW9kZWwgPSBOb25OdWxsYWJsZTxUYWJsZU1vZGVsW1Byb3BlcnR5XT4+KFxuICAgIGRlc2NyaXB0b3I6IFRhYmxlRGVzY3JpcHRvckluc3Q8VGFibGVNb2RlbCwgYW55LCBhbnk+LFxuICAgIHByb3BlcnR5OiBQcm9wZXJ0eSxcbiAgICBsb29rdXBQcm92aWRlcj86IElMb29rdXBEYXRhUHJvdmlkZXI8Q29sdW1uTW9kZWwsIGFueT4sXG4gICAgb3B0aW9uc0xhYmVsUHJvcGVydHk/OiBrZXlvZiBDb2x1bW5Nb2RlbCxcbiAgICBmaWx0ZXJQcm9wZXJ0eT86IGtleW9mIENvbHVtbk1vZGVsXG4pOiBGaWx0ZXJMb29rdXBEZXNjcmlwdG9yPENvbHVtbk1vZGVsLCBUYWJsZU1vZGVsLCBTZXJ2aWNlPiB8IG51bGwge1xuICAgIHJldHVybiBtb2RpZnlUYWJsZUNvbHVtbkZpbHRlckxvb2t1cFVuc2FmZTxUYWJsZU1vZGVsLCBTZXJ2aWNlLCBDb2x1bW5Nb2RlbD4oXG4gICAgICAgIGRlc2NyaXB0b3IsXG4gICAgICAgIHByb3BlcnR5IGFzIHN0cmluZyxcbiAgICAgICAgbG9va3VwUHJvdmlkZXIsXG4gICAgICAgIG9wdGlvbnNMYWJlbFByb3BlcnR5IGFzIHN0cmluZyxcbiAgICAgICAgZmlsdGVyUHJvcGVydHkgYXMgc3RyaW5nXG4gICAgKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIG1vZGlmeVRhYmxlQ29sdW1uRmlsdGVyTG9va3VwVW5zYWZlPFRhYmxlTW9kZWwsIFNlcnZpY2UsIENvbHVtbk1vZGVsPihcbiAgICBkZXNjcmlwdG9yOiBUYWJsZURlc2NyaXB0b3JJbnN0PFRhYmxlTW9kZWwsIGFueSwgYW55PixcbiAgICBwcm9wZXJ0eTogc3RyaW5nLFxuICAgIGxvb2t1cFByb3ZpZGVyPzogSUxvb2t1cERhdGFQcm92aWRlcjxDb2x1bW5Nb2RlbCwgU2VydmljZT4sXG4gICAgb3B0aW9uc0xhYmVsUHJvcGVydHk/OiBzdHJpbmcsXG4gICAgZmlsdGVyUHJvcGVydHk/OiBzdHJpbmdcbik6IEZpbHRlckxvb2t1cERlc2NyaXB0b3I8Q29sdW1uTW9kZWwsIFRhYmxlTW9kZWwsIFNlcnZpY2U+IHwgbnVsbCB7XG4gICAgY29uc3QgY29sdW1uID0gZGVzY3JpcHRvci5jb2x1bW5zLmZpbmQoY29sID0+IGNvbC5wcm9wZXJ0eSA9PT0gcHJvcGVydHkpO1xuICAgIGlmIChjb2x1bW4pIHtcbiAgICAgICAgY29uc3QgZmlsdGVyID0gZGVzY3JpcHRvci5hZGRGaWx0ZXJMb29rdXBVbnNhZmUoY29sdW1uLnByb3BlcnR5LCBsb29rdXBQcm92aWRlciwgZmlsdGVyUHJvcGVydHkpO1xuICAgICAgICBpZiAob3B0aW9uc0xhYmVsUHJvcGVydHkpIHtcbiAgICAgICAgICAgIGZpbHRlci53aXRoT3B0aW9uc0xhYmVsUHJvcGVydHlVbnNhZmUob3B0aW9uc0xhYmVsUHJvcGVydHkpO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBmaWx0ZXI7XG4gICAgfVxuICAgIHJldHVybiBudWxsO1xufVxuIl19
@@ -0,0 +1,21 @@
1
+ import { modelClass } from '@mediusinc/mng-commons/model/class';
2
+ import { TableDescriptorInst } from '@mediusinc/mng-commons/table/api';
3
+ import { getTableClassAttributeDef } from './class-table-attribute-converter';
4
+ import { upsertTableColumnFromAttributeDef } from './class-table-descriptor-helpers';
5
+ export function tableDescriptorFromClass(type, opts) {
6
+ return new TableDescriptorInst(modelClass(type, opts));
7
+ }
8
+ /**
9
+ * generates descriptor based on type attribute definition
10
+ * @param type class type
11
+ * @param attributes
12
+ * @param opts
13
+ */
14
+ export function tableDescriptorFromClassAttrsDef(type, attributes, opts) {
15
+ const descriptor = new TableDescriptorInst(modelClass(type, opts), true);
16
+ (attributes ?? getTableClassAttributeDef(type))
17
+ .filter(attr => !attr.type.includes('Set') && !attr.type.includes('Array'))
18
+ .forEach(attr => upsertTableColumnFromAttributeDef(descriptor, attr));
19
+ return descriptor;
20
+ }
21
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xhc3MtdGFibGUtZGVzY3JpcHRvci5mYWN0b3J5LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vdGFibGUvYXBpL2NsYXNzL3NyYy9jbGFzcy10YWJsZS1kZXNjcmlwdG9yLmZhY3RvcnkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFDLFVBQVUsRUFBQyxNQUFNLG9DQUFvQyxDQUFDO0FBQzlELE9BQU8sRUFBZ0MsbUJBQW1CLEVBQUMsTUFBTSxrQ0FBa0MsQ0FBQztBQUVwRyxPQUFPLEVBQUMseUJBQXlCLEVBQUMsTUFBTSxtQ0FBbUMsQ0FBQztBQUU1RSxPQUFPLEVBQUMsaUNBQWlDLEVBQUMsTUFBTSxrQ0FBa0MsQ0FBQztBQUVuRixNQUFNLFVBQVUsd0JBQXdCLENBQ3BDLElBQTJCLEVBQzNCLElBQWdEO0lBRWhELE9BQU8sSUFBSSxtQkFBbUIsQ0FBNkIsVUFBVSxDQUFhLElBQTZCLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FBQztBQUM1SCxDQUFDO0FBRUQ7Ozs7O0dBS0c7QUFDSCxNQUFNLFVBQVUsZ0NBQWdDLENBQzVDLElBQTJCLEVBQzNCLFVBQXFDLEVBQ3JDLElBQWdEO0lBRWhELE1BQU0sVUFBVSxHQUFHLElBQUksbUJBQW1CLENBQTZCLFVBQVUsQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDckcsQ0FBQyxVQUFVLElBQUkseUJBQXlCLENBQUMsSUFBSSxDQUFDLENBQUM7U0FDMUMsTUFBTSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1NBQzFFLE9BQU8sQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLGlDQUFpQyxDQUFDLFVBQVUsRUFBRSxJQUFJLENBQUMsQ0FBQyxDQUFDO0lBQzFFLE9BQU8sVUFBVSxDQUFDO0FBQ3RCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NsYXNzVHlwZX0gZnJvbSAnQG1lZGl1c2luYy9tbmctY29tbW9ucy9jb3JlJztcbmltcG9ydCB7bW9kZWxDbGFzc30gZnJvbSAnQG1lZGl1c2luYy9tbmctY29tbW9ucy9tb2RlbC9jbGFzcyc7XG5pbXBvcnQge1RhYmxlRGVzY3JpcHRvckNyZWF0ZU9wdHNUeXBlLCBUYWJsZURlc2NyaXB0b3JJbnN0fSBmcm9tICdAbWVkaXVzaW5jL21uZy1jb21tb25zL3RhYmxlL2FwaSc7XG5cbmltcG9ydCB7Z2V0VGFibGVDbGFzc0F0dHJpYnV0ZURlZn0gZnJvbSAnLi9jbGFzcy10YWJsZS1hdHRyaWJ1dGUtY29udmVydGVyJztcbmltcG9ydCB7VGFibGVDbGFzc0F0dHJpYnV0ZURlZn0gZnJvbSAnLi9jbGFzcy10YWJsZS1hdHRyaWJ1dGUubW9kZWwnO1xuaW1wb3J0IHt1cHNlcnRUYWJsZUNvbHVtbkZyb21BdHRyaWJ1dGVEZWZ9IGZyb20gJy4vY2xhc3MtdGFibGUtZGVzY3JpcHRvci1oZWxwZXJzJztcblxuZXhwb3J0IGZ1bmN0aW9uIHRhYmxlRGVzY3JpcHRvckZyb21DbGFzczxUYWJsZU1vZGVsLCBTb3J0cyA9IGtleW9mIFRhYmxlTW9kZWwsIEZpbHRlcnMgPSBrZXlvZiBUYWJsZU1vZGVsPihcbiAgICB0eXBlOiBDbGFzc1R5cGU8VGFibGVNb2RlbD4sXG4gICAgb3B0cz86IFRhYmxlRGVzY3JpcHRvckNyZWF0ZU9wdHNUeXBlPFRhYmxlTW9kZWw+XG4pOiBUYWJsZURlc2NyaXB0b3JJbnN0PFRhYmxlTW9kZWwsIFNvcnRzLCBGaWx0ZXJzPiB7XG4gICAgcmV0dXJuIG5ldyBUYWJsZURlc2NyaXB0b3JJbnN0PFRhYmxlTW9kZWwsIFNvcnRzLCBGaWx0ZXJzPihtb2RlbENsYXNzPFRhYmxlTW9kZWw+KHR5cGUgYXMgQ2xhc3NUeXBlPFRhYmxlTW9kZWw+LCBvcHRzKSk7XG59XG5cbi8qKlxuICogZ2VuZXJhdGVzIGRlc2NyaXB0b3IgYmFzZWQgb24gdHlwZSBhdHRyaWJ1dGUgZGVmaW5pdGlvblxuICogQHBhcmFtIHR5cGUgY2xhc3MgdHlwZVxuICogQHBhcmFtIGF0dHJpYnV0ZXNcbiAqIEBwYXJhbSBvcHRzXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiB0YWJsZURlc2NyaXB0b3JGcm9tQ2xhc3NBdHRyc0RlZjxUYWJsZU1vZGVsLCBTb3J0cyA9IGtleW9mIFRhYmxlTW9kZWwsIEZpbHRlcnMgPSBrZXlvZiBUYWJsZU1vZGVsPihcbiAgICB0eXBlOiBDbGFzc1R5cGU8VGFibGVNb2RlbD4sXG4gICAgYXR0cmlidXRlcz86IFRhYmxlQ2xhc3NBdHRyaWJ1dGVEZWZbXSxcbiAgICBvcHRzPzogVGFibGVEZXNjcmlwdG9yQ3JlYXRlT3B0c1R5cGU8VGFibGVNb2RlbD5cbik6IFRhYmxlRGVzY3JpcHRvckluc3Q8VGFibGVNb2RlbCwgU29ydHMsIEZpbHRlcnM+IHtcbiAgICBjb25zdCBkZXNjcmlwdG9yID0gbmV3IFRhYmxlRGVzY3JpcHRvckluc3Q8VGFibGVNb2RlbCwgU29ydHMsIEZpbHRlcnM+KG1vZGVsQ2xhc3ModHlwZSwgb3B0cyksIHRydWUpO1xuICAgIChhdHRyaWJ1dGVzID8/IGdldFRhYmxlQ2xhc3NBdHRyaWJ1dGVEZWYodHlwZSkpXG4gICAgICAgIC5maWx0ZXIoYXR0ciA9PiAhYXR0ci50eXBlLmluY2x1ZGVzKCdTZXQnKSAmJiAhYXR0ci50eXBlLmluY2x1ZGVzKCdBcnJheScpKVxuICAgICAgICAuZm9yRWFjaChhdHRyID0+IHVwc2VydFRhYmxlQ29sdW1uRnJvbUF0dHJpYnV0ZURlZihkZXNjcmlwdG9yLCBhdHRyKSk7XG4gICAgcmV0dXJuIGRlc2NyaXB0b3I7XG59XG4iXX0=
@@ -0,0 +1,6 @@
1
+ export * from './class-table-attribute.model';
2
+ export * from './class-table-attribute-converter';
3
+ export * from './class-table-data-provider.factory';
4
+ export * from './class-table-descriptor.factory';
5
+ export * from './class-table-descriptor-helpers';
6
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi90YWJsZS9hcGkvY2xhc3Mvc3JjL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsK0JBQStCLENBQUM7QUFDOUMsY0FBYyxtQ0FBbUMsQ0FBQztBQUNsRCxjQUFjLHFDQUFxQyxDQUFDO0FBQ3BELGNBQWMsa0NBQWtDLENBQUM7QUFDakQsY0FBYyxrQ0FBa0MsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vY2xhc3MtdGFibGUtYXR0cmlidXRlLm1vZGVsJztcbmV4cG9ydCAqIGZyb20gJy4vY2xhc3MtdGFibGUtYXR0cmlidXRlLWNvbnZlcnRlcic7XG5leHBvcnQgKiBmcm9tICcuL2NsYXNzLXRhYmxlLWRhdGEtcHJvdmlkZXIuZmFjdG9yeSc7XG5leHBvcnQgKiBmcm9tICcuL2NsYXNzLXRhYmxlLWRlc2NyaXB0b3IuZmFjdG9yeSc7XG5leHBvcnQgKiBmcm9tICcuL2NsYXNzLXRhYmxlLWRlc2NyaXB0b3ItaGVscGVycyc7XG4iXX0=
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Generated bundle index. Do not edit.
3
+ */
4
+ export * from './index';
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVkaXVzaW5jLW1uZy1jb21tb25zLXRhYmxlLWFwaS1jbGFzcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3RhYmxlL2FwaS9jbGFzcy9zcmMvbWVkaXVzaW5jLW1uZy1jb21tb25zLXRhYmxlLWFwaS1jbGFzcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsU0FBUyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL2luZGV4JztcbiJdfQ==
@@ -1,42 +1,15 @@
1
1
  import { TableDataProviderInst } from './table.data-provider';
2
- export class TableDataProvider extends TableDataProviderInst {
3
- constructor() {
4
- super(undefined, undefined);
5
- }
6
- static create() {
7
- return tableDataProvider();
8
- }
9
- static fromClass(type) {
10
- return tableDataProviderFromClass(type);
11
- }
12
- static fromClassWithService(type, serviceType) {
13
- return tableDataProviderFromClass(type, serviceType);
14
- }
15
- static fromService(serviceType) {
16
- return tableDataProviderWithService(serviceType);
17
- }
18
- }
19
- export function tableDataProvider(type, serviceTypeOrOpts,
20
- // eslint-disable-next-line @typescript-eslint/no-unused-vars
21
- opts) {
22
- if (serviceTypeOrOpts === undefined || typeof serviceTypeOrOpts === 'function') {
23
- return new TableDataProviderInst(undefined, serviceTypeOrOpts);
24
- }
25
- else {
26
- return new TableDataProviderInst(undefined, undefined);
27
- }
28
- }
29
- export function tableDataProviderWithService(serviceType,
30
- // eslint-disable-next-line @typescript-eslint/no-unused-vars
31
- opts) {
32
- return new TableDataProviderInst(undefined, serviceType);
33
- }
34
- export function tableDataProviderFromClass(type, serviceType) {
35
- return new TableDataProviderInst(type, serviceType);
36
- }
37
- export function tableDataProviderFromModel(model, serviceTypeOrOpts, opts) {
38
- return typeof serviceTypeOrOpts === 'function'
39
- ? new TableDataProviderInst(model.type, serviceTypeOrOpts)
40
- : new TableDataProviderInst(model.type, undefined);
41
- }
42
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUtZGF0YS1wcm92aWRlci5mYWN0b3J5LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vdGFibGUvYXBpL3NyYy9kYXRhLXByb3ZpZGVycy90YWJsZS1kYXRhLXByb3ZpZGVyLmZhY3RvcnkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBR0EsT0FBTyxFQUFDLHFCQUFxQixFQUFDLE1BQU0sdUJBQXVCLENBQUM7QUFFNUQsTUFBTSxPQUFPLGlCQUFrQixTQUFRLHFCQUEwQjtJQUM3RDtRQUNJLEtBQUssQ0FBQyxTQUFTLEVBQUUsU0FBUyxDQUFDLENBQUM7SUFDaEMsQ0FBQztJQUVNLE1BQU0sQ0FBQyxNQUFNO1FBQ2hCLE9BQU8saUJBQWlCLEVBQXlCLENBQUM7SUFDdEQsQ0FBQztJQUVNLE1BQU0sQ0FBQyxTQUFTLENBQ25CLElBQXNCO1FBRXRCLE9BQU8sMEJBQTBCLENBQXdCLElBQUksQ0FBQyxDQUFDO0lBQ25FLENBQUM7SUFFTSxNQUFNLENBQUMsb0JBQW9CLENBQzlCLElBQXNCLEVBQ3RCLFdBQXNDO1FBRXRDLE9BQU8sMEJBQTBCLENBQWlDLElBQUksRUFBRSxXQUFXLENBQUMsQ0FBQztJQUN6RixDQUFDO0lBRU0sTUFBTSxDQUFDLFdBQVcsQ0FDckIsV0FBc0M7UUFFdEMsT0FBTyw0QkFBNEIsQ0FBaUMsV0FBVyxDQUFDLENBQUM7SUFDckYsQ0FBQztDQUNKO0FBd0JELE1BQU0sVUFBVSxpQkFBaUIsQ0FDN0IsSUFBNEIsRUFDNUIsaUJBQXlGO0FBQ3pGLDZEQUE2RDtBQUM3RCxJQUE2RDtJQUU3RCxJQUFJLGlCQUFpQixLQUFLLFNBQVMsSUFBSSxPQUFPLGlCQUFpQixLQUFLLFVBQVUsRUFBRSxDQUFDO1FBQzdFLE9BQU8sSUFBSSxxQkFBcUIsQ0FBMEQsU0FBUyxFQUFFLGlCQUFpQyxDQUFDLENBQUM7SUFDNUksQ0FBQztTQUFNLENBQUM7UUFDSixPQUFPLElBQUkscUJBQXFCLENBQTBELFNBQVMsRUFBRSxTQUF5QixDQUFDLENBQUM7SUFDcEksQ0FBQztBQUNMLENBQUM7QUFFRCxNQUFNLFVBQVUsNEJBQTRCLENBQ3hDLFdBQXNDO0FBQ3RDLDZEQUE2RDtBQUM3RCxJQUE2RDtJQUU3RCxPQUFPLElBQUkscUJBQXFCLENBQXVFLFNBQVMsRUFBRSxXQUFXLENBQUMsQ0FBQztBQUNuSSxDQUFDO0FBU0QsTUFBTSxVQUFVLDBCQUEwQixDQUN0QyxJQUFzQixFQUN0QixXQUEwQjtJQUUxQixPQUFPLElBQUkscUJBQXFCLENBQWlFLElBQUksRUFBRSxXQUEyQixDQUFDLENBQUM7QUFDeEksQ0FBQztBQVdELE1BQU0sVUFBVSwwQkFBMEIsQ0FReEMsS0FBeUMsRUFBRSxpQkFBZ0MsRUFBRSxJQUE2RDtJQUN4SSxPQUFPLE9BQU8saUJBQWlCLEtBQUssVUFBVTtRQUMxQyxDQUFDLENBQUMsSUFBSSxxQkFBcUIsQ0FDckIsS0FBSyxDQUFDLElBQXdCLEVBQzlCLGlCQUE4QyxDQUNqRDtRQUNILENBQUMsQ0FBQyxJQUFJLHFCQUFxQixDQUFnRSxLQUFLLENBQUMsSUFBd0IsRUFBRSxTQUFTLENBQUMsQ0FBQztBQUM5SSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDbGFzc1R5cGUsIFNlcnZpY2VDbGFzc1R5cGV9IGZyb20gJ0BtZWRpdXNpbmMvbW5nLWNvbW1vbnMvY29yZSc7XG5pbXBvcnQge01vZGVsRGVzY3JpcHRvciwgVHlwZURlc2NyaXB0b3J9IGZyb20gJ0BtZWRpdXNpbmMvbW5nLWNvbW1vbnMvbW9kZWwnO1xuXG5pbXBvcnQge1RhYmxlRGF0YVByb3ZpZGVySW5zdH0gZnJvbSAnLi90YWJsZS5kYXRhLXByb3ZpZGVyJztcblxuZXhwb3J0IGNsYXNzIFRhYmxlRGF0YVByb3ZpZGVyIGV4dGVuZHMgVGFibGVEYXRhUHJvdmlkZXJJbnN0PGFueT4ge1xuICAgIHByb3RlY3RlZCBjb25zdHJ1Y3RvcigpIHtcbiAgICAgICAgc3VwZXIodW5kZWZpbmVkLCB1bmRlZmluZWQpO1xuICAgIH1cblxuICAgIHB1YmxpYyBzdGF0aWMgY3JlYXRlPE1vZGVsLCBTb3J0cyA9IGtleW9mIE1vZGVsLCBGaWx0ZXJzIGV4dGVuZHMga2V5b2YgYW55ID0ga2V5b2YgTW9kZWw+KCk6IFRhYmxlRGF0YVByb3ZpZGVySW5zdDxNb2RlbCwgdW5kZWZpbmVkLCBTb3J0cywgRmlsdGVycywgdW5kZWZpbmVkLCB1bmRlZmluZWQ+IHtcbiAgICAgICAgcmV0dXJuIHRhYmxlRGF0YVByb3ZpZGVyPE1vZGVsLCBTb3J0cywgRmlsdGVycz4oKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgc3RhdGljIGZyb21DbGFzczxNb2RlbCwgU29ydHMgPSBrZXlvZiBNb2RlbCwgRmlsdGVycyBleHRlbmRzIGtleW9mIGFueSA9IGtleW9mIE1vZGVsPihcbiAgICAgICAgdHlwZTogQ2xhc3NUeXBlPE1vZGVsPlxuICAgICk6IFRhYmxlRGF0YVByb3ZpZGVySW5zdDxNb2RlbCwgdW5kZWZpbmVkLCBTb3J0cywgRmlsdGVycywgQ2xhc3NUeXBlPE1vZGVsPiwgdW5kZWZpbmVkPiB7XG4gICAgICAgIHJldHVybiB0YWJsZURhdGFQcm92aWRlckZyb21DbGFzczxNb2RlbCwgU29ydHMsIEZpbHRlcnM+KHR5cGUpO1xuICAgIH1cblxuICAgIHB1YmxpYyBzdGF0aWMgZnJvbUNsYXNzV2l0aFNlcnZpY2U8TW9kZWwsIFNlcnZpY2UsIFNvcnRzID0ga2V5b2YgTW9kZWwsIEZpbHRlcnMgZXh0ZW5kcyBrZXlvZiBhbnkgPSBrZXlvZiBNb2RlbD4oXG4gICAgICAgIHR5cGU6IENsYXNzVHlwZTxNb2RlbD4sXG4gICAgICAgIHNlcnZpY2VUeXBlOiBTZXJ2aWNlQ2xhc3NUeXBlPFNlcnZpY2U+XG4gICAgKTogVGFibGVEYXRhUHJvdmlkZXJJbnN0PE1vZGVsLCBTZXJ2aWNlLCBTb3J0cywgRmlsdGVycywgQ2xhc3NUeXBlPE1vZGVsPiwgU2VydmljZUNsYXNzVHlwZTxTZXJ2aWNlPj4ge1xuICAgICAgICByZXR1cm4gdGFibGVEYXRhUHJvdmlkZXJGcm9tQ2xhc3M8TW9kZWwsIFNlcnZpY2UsIFNvcnRzLCBGaWx0ZXJzPih0eXBlLCBzZXJ2aWNlVHlwZSk7XG4gICAgfVxuXG4gICAgcHVibGljIHN0YXRpYyBmcm9tU2VydmljZTxTZXJ2aWNlLCBNb2RlbCwgU29ydHMgPSBrZXlvZiBNb2RlbCwgRmlsdGVycyBleHRlbmRzIGtleW9mIGFueSA9IGtleW9mIE1vZGVsPihcbiAgICAgICAgc2VydmljZVR5cGU6IFNlcnZpY2VDbGFzc1R5cGU8U2VydmljZT5cbiAgICApOiBUYWJsZURhdGFQcm92aWRlckluc3Q8TW9kZWwsIFNlcnZpY2UsIFNvcnRzLCBGaWx0ZXJzLCB1bmRlZmluZWQsIFNlcnZpY2VDbGFzc1R5cGU8U2VydmljZT4+IHtcbiAgICAgICAgcmV0dXJuIHRhYmxlRGF0YVByb3ZpZGVyV2l0aFNlcnZpY2U8U2VydmljZSwgTW9kZWwsIFNvcnRzLCBGaWx0ZXJzPihzZXJ2aWNlVHlwZSk7XG4gICAgfVxufVxuXG5leHBvcnQgdHlwZSBUYWJsZURhdGFQcm92aWRlckNyZWF0ZU9wdHNUeXBlPFRhYmxlTW9kZWwsIFNvcnRzID0ga2V5b2YgVGFibGVNb2RlbCwgRmlsdGVycyA9IGtleW9mIFRhYmxlTW9kZWw+ID0ge1xuICAgIGZpbHRlcnNUeXBlPzogVHlwZURlc2NyaXB0b3I8RmlsdGVycz47XG4gICAgc29ydHNUeXBlPzogVHlwZURlc2NyaXB0b3I8U29ydHM+O1xufTtcblxuZXhwb3J0IGZ1bmN0aW9uIHRhYmxlRGF0YVByb3ZpZGVyPE1vZGVsLCBTb3J0cyA9IGtleW9mIE1vZGVsLCBGaWx0ZXJzIGV4dGVuZHMga2V5b2YgYW55ID0ga2V5b2YgTW9kZWw+KCk6IFRhYmxlRGF0YVByb3ZpZGVySW5zdDxcbiAgICBNb2RlbCxcbiAgICB1bmRlZmluZWQsXG4gICAgU29ydHMsXG4gICAgRmlsdGVycyxcbiAgICB1bmRlZmluZWQsXG4gICAgdW5kZWZpbmVkXG4+O1xuZXhwb3J0IGZ1bmN0aW9uIHRhYmxlRGF0YVByb3ZpZGVyPE1vZGVsLCBTb3J0cyA9IGtleW9mIE1vZGVsLCBGaWx0ZXJzIGV4dGVuZHMga2V5b2YgYW55ID0ga2V5b2YgTW9kZWw+KFxuICAgIHR5cGU6IFR5cGVEZXNjcmlwdG9yPE1vZGVsPixcbiAgICBvcHRzPzogVGFibGVEYXRhUHJvdmlkZXJDcmVhdGVPcHRzVHlwZTxNb2RlbCwgU29ydHMsIEZpbHRlcnM+XG4pOiBUYWJsZURhdGFQcm92aWRlckluc3Q8TW9kZWwsIHVuZGVmaW5lZCwgU29ydHMsIEZpbHRlcnMsIHVuZGVmaW5lZCwgdW5kZWZpbmVkPjtcbmV4cG9ydCBmdW5jdGlvbiB0YWJsZURhdGFQcm92aWRlcjxNb2RlbCwgU2VydmljZSA9IGFueSwgU29ydHMgPSBrZXlvZiBNb2RlbCwgRmlsdGVycyBleHRlbmRzIGtleW9mIGFueSA9IGtleW9mIE1vZGVsPihcbiAgICB0eXBlOiBUeXBlRGVzY3JpcHRvcjxNb2RlbD4sXG4gICAgc2VydmljZVR5cGU6IFNlcnZpY2VDbGFzc1R5cGU8U2VydmljZT4sXG4gICAgb3B0cz86IFRhYmxlRGF0YVByb3ZpZGVyQ3JlYXRlT3B0c1R5cGU8TW9kZWwsIFNvcnRzLCBGaWx0ZXJzPlxuKTogVGFibGVEYXRhUHJvdmlkZXJJbnN0PE1vZGVsLCBTZXJ2aWNlLCBTb3J0cywgRmlsdGVycywgdW5kZWZpbmVkLCBTZXJ2aWNlQ2xhc3NUeXBlPFNlcnZpY2U+PjtcbmV4cG9ydCBmdW5jdGlvbiB0YWJsZURhdGFQcm92aWRlcjxNb2RlbCwgU2VydmljZSA9IGFueSwgU29ydHMgPSBrZXlvZiBNb2RlbCwgRmlsdGVycyBleHRlbmRzIGtleW9mIGFueSA9IGtleW9mIE1vZGVsLCBTZXJ2aWNlQ2xhc3MgPSBTZXJ2aWNlQ2xhc3NUeXBlPFNlcnZpY2U+PihcbiAgICB0eXBlPzogVHlwZURlc2NyaXB0b3I8TW9kZWw+LFxuICAgIHNlcnZpY2VUeXBlT3JPcHRzPzogU2VydmljZUNsYXNzIHwgVGFibGVEYXRhUHJvdmlkZXJDcmVhdGVPcHRzVHlwZTxNb2RlbCwgU29ydHMsIEZpbHRlcnM+LFxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tdW51c2VkLXZhcnNcbiAgICBvcHRzPzogVGFibGVEYXRhUHJvdmlkZXJDcmVhdGVPcHRzVHlwZTxNb2RlbCwgU29ydHMsIEZpbHRlcnM+XG4pOiBUYWJsZURhdGFQcm92aWRlckluc3Q8TW9kZWwsIFNlcnZpY2UsIFNvcnRzLCBGaWx0ZXJzLCB1bmRlZmluZWQsIFNlcnZpY2VDbGFzcz4ge1xuICAgIGlmIChzZXJ2aWNlVHlwZU9yT3B0cyA9PT0gdW5kZWZpbmVkIHx8IHR5cGVvZiBzZXJ2aWNlVHlwZU9yT3B0cyA9PT0gJ2Z1bmN0aW9uJykge1xuICAgICAgICByZXR1cm4gbmV3IFRhYmxlRGF0YVByb3ZpZGVySW5zdDxNb2RlbCwgU2VydmljZSwgU29ydHMsIEZpbHRlcnMsIHVuZGVmaW5lZCwgU2VydmljZUNsYXNzPih1bmRlZmluZWQsIHNlcnZpY2VUeXBlT3JPcHRzIGFzIFNlcnZpY2VDbGFzcyk7XG4gICAgfSBlbHNlIHtcbiAgICAgICAgcmV0dXJuIG5ldyBUYWJsZURhdGFQcm92aWRlckluc3Q8TW9kZWwsIFNlcnZpY2UsIFNvcnRzLCBGaWx0ZXJzLCB1bmRlZmluZWQsIFNlcnZpY2VDbGFzcz4odW5kZWZpbmVkLCB1bmRlZmluZWQgYXMgU2VydmljZUNsYXNzKTtcbiAgICB9XG59XG5cbmV4cG9ydCBmdW5jdGlvbiB0YWJsZURhdGFQcm92aWRlcldpdGhTZXJ2aWNlPFNlcnZpY2UsIE1vZGVsLCBTb3J0cyA9IGtleW9mIE1vZGVsLCBGaWx0ZXJzIGV4dGVuZHMga2V5b2YgYW55ID0ga2V5b2YgTW9kZWw+KFxuICAgIHNlcnZpY2VUeXBlOiBTZXJ2aWNlQ2xhc3NUeXBlPFNlcnZpY2U+LFxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tdW51c2VkLXZhcnNcbiAgICBvcHRzPzogVGFibGVEYXRhUHJvdmlkZXJDcmVhdGVPcHRzVHlwZTxNb2RlbCwgU29ydHMsIEZpbHRlcnM+XG4pOiBUYWJsZURhdGFQcm92aWRlckluc3Q8TW9kZWwsIFNlcnZpY2UsIFNvcnRzLCBGaWx0ZXJzLCB1bmRlZmluZWQsIFNlcnZpY2VDbGFzc1R5cGU8U2VydmljZT4+IHtcbiAgICByZXR1cm4gbmV3IFRhYmxlRGF0YVByb3ZpZGVySW5zdDxNb2RlbCwgU2VydmljZSwgU29ydHMsIEZpbHRlcnMsIHVuZGVmaW5lZCwgU2VydmljZUNsYXNzVHlwZTxTZXJ2aWNlPj4odW5kZWZpbmVkLCBzZXJ2aWNlVHlwZSk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiB0YWJsZURhdGFQcm92aWRlckZyb21DbGFzczxNb2RlbCwgU29ydHMgPSBrZXlvZiBNb2RlbCwgRmlsdGVycyBleHRlbmRzIGtleW9mIGFueSA9IGtleW9mIE1vZGVsPihcbiAgICB0eXBlOiBDbGFzc1R5cGU8TW9kZWw+XG4pOiBUYWJsZURhdGFQcm92aWRlckluc3Q8TW9kZWwsIHVuZGVmaW5lZCwgU29ydHMsIEZpbHRlcnMsIENsYXNzVHlwZTxNb2RlbD4sIHVuZGVmaW5lZD47XG5leHBvcnQgZnVuY3Rpb24gdGFibGVEYXRhUHJvdmlkZXJGcm9tQ2xhc3M8TW9kZWwsIFNlcnZpY2UgPSBhbnksIFNvcnRzID0ga2V5b2YgTW9kZWwsIEZpbHRlcnMgZXh0ZW5kcyBrZXlvZiBhbnkgPSBrZXlvZiBNb2RlbD4oXG4gICAgdHlwZTogQ2xhc3NUeXBlPE1vZGVsPixcbiAgICBzZXJ2aWNlVHlwZTogU2VydmljZUNsYXNzVHlwZTxTZXJ2aWNlPlxuKTogVGFibGVEYXRhUHJvdmlkZXJJbnN0PE1vZGVsLCBTZXJ2aWNlLCBTb3J0cywgRmlsdGVycywgQ2xhc3NUeXBlPE1vZGVsPiwgU2VydmljZUNsYXNzVHlwZTxTZXJ2aWNlPj47XG5leHBvcnQgZnVuY3Rpb24gdGFibGVEYXRhUHJvdmlkZXJGcm9tQ2xhc3M8TW9kZWwsIFNlcnZpY2UgPSBhbnksIFNvcnRzID0ga2V5b2YgTW9kZWwsIEZpbHRlcnMgZXh0ZW5kcyBrZXlvZiBhbnkgPSBrZXlvZiBNb2RlbCwgU2VydmljZUNsYXNzID0gU2VydmljZUNsYXNzVHlwZTxTZXJ2aWNlPj4oXG4gICAgdHlwZTogQ2xhc3NUeXBlPE1vZGVsPixcbiAgICBzZXJ2aWNlVHlwZT86IFNlcnZpY2VDbGFzc1xuKSB7XG4gICAgcmV0dXJuIG5ldyBUYWJsZURhdGFQcm92aWRlckluc3Q8TW9kZWwsIFNlcnZpY2UsIFNvcnRzLCBGaWx0ZXJzLCBDbGFzc1R5cGU8TW9kZWw+LCBTZXJ2aWNlQ2xhc3M+KHR5cGUsIHNlcnZpY2VUeXBlIGFzIFNlcnZpY2VDbGFzcyk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiB0YWJsZURhdGFQcm92aWRlckZyb21Nb2RlbDxNb2RlbCwgU29ydHMgPSBrZXlvZiBNb2RlbCwgRmlsdGVycyBleHRlbmRzIGtleW9mIGFueSA9IGtleW9mIE1vZGVsLCBNb2RlbENsYXNzID0gQ2xhc3NUeXBlPE1vZGVsPj4oXG4gICAgbW9kZWw6IE1vZGVsRGVzY3JpcHRvcjxNb2RlbCwgTW9kZWxDbGFzcz4sXG4gICAgb3B0cz86IFRhYmxlRGF0YVByb3ZpZGVyQ3JlYXRlT3B0c1R5cGU8TW9kZWwsIFNvcnRzLCBGaWx0ZXJzPlxuKTogVGFibGVEYXRhUHJvdmlkZXJJbnN0PE1vZGVsLCB1bmRlZmluZWQsIFNvcnRzLCBGaWx0ZXJzLCBNb2RlbENsYXNzLCB1bmRlZmluZWQ+O1xuZXhwb3J0IGZ1bmN0aW9uIHRhYmxlRGF0YVByb3ZpZGVyRnJvbU1vZGVsPE1vZGVsLCBTZXJ2aWNlID0gYW55LCBTb3J0cyA9IGtleW9mIE1vZGVsLCBGaWx0ZXJzIGV4dGVuZHMga2V5b2YgYW55ID0ga2V5b2YgTW9kZWwsIE1vZGVsQ2xhc3MgPSBDbGFzc1R5cGU8TW9kZWw+PihcbiAgICBtb2RlbDogTW9kZWxEZXNjcmlwdG9yPE1vZGVsLCBNb2RlbENsYXNzPixcbiAgICBzZXJ2aWNlQ2xhc3M6IFNlcnZpY2VDbGFzc1R5cGU8U2VydmljZT4sXG4gICAgb3B0cz86IFRhYmxlRGF0YVByb3ZpZGVyQ3JlYXRlT3B0c1R5cGU8TW9kZWwsIFNvcnRzLCBGaWx0ZXJzPlxuKTogVGFibGVEYXRhUHJvdmlkZXJJbnN0PE1vZGVsLCBTZXJ2aWNlLCBTb3J0cywgRmlsdGVycywgTW9kZWxDbGFzcywgU2VydmljZUNsYXNzVHlwZTxTZXJ2aWNlPj47XG5leHBvcnQgZnVuY3Rpb24gdGFibGVEYXRhUHJvdmlkZXJGcm9tTW9kZWw8XG4gICAgTW9kZWwsXG4gICAgU2VydmljZSA9IGFueSxcbiAgICBTb3J0cyA9IGtleW9mIE1vZGVsLFxuICAgIEZpbHRlcnMgZXh0ZW5kcyBrZXlvZiBhbnkgPSBrZXlvZiBNb2RlbCxcbiAgICBNb2RlbENsYXNzID0gQ2xhc3NUeXBlPE1vZGVsPixcbiAgICBTZXJ2aWNlQ2xhc3MgPSBTZXJ2aWNlQ2xhc3NUeXBlPFNlcnZpY2U+XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby11bnVzZWQtdmFyc1xuPihtb2RlbDogTW9kZWxEZXNjcmlwdG9yPE1vZGVsLCBNb2RlbENsYXNzPiwgc2VydmljZVR5cGVPck9wdHM/OiBTZXJ2aWNlQ2xhc3MsIG9wdHM/OiBUYWJsZURhdGFQcm92aWRlckNyZWF0ZU9wdHNUeXBlPE1vZGVsLCBTb3J0cywgRmlsdGVycz4pIHtcbiAgICByZXR1cm4gdHlwZW9mIHNlcnZpY2VUeXBlT3JPcHRzID09PSAnZnVuY3Rpb24nXG4gICAgICAgID8gbmV3IFRhYmxlRGF0YVByb3ZpZGVySW5zdDxNb2RlbCwgU2VydmljZSwgU29ydHMsIEZpbHRlcnMsIENsYXNzVHlwZTxNb2RlbD4sIFNlcnZpY2VDbGFzc1R5cGU8U2VydmljZT4+KFxuICAgICAgICAgICAgICBtb2RlbC50eXBlIGFzIENsYXNzVHlwZTxNb2RlbD4sXG4gICAgICAgICAgICAgIHNlcnZpY2VUeXBlT3JPcHRzIGFzIFNlcnZpY2VDbGFzc1R5cGU8U2VydmljZT5cbiAgICAgICAgICApXG4gICAgICAgIDogbmV3IFRhYmxlRGF0YVByb3ZpZGVySW5zdDxNb2RlbCwgdW5kZWZpbmVkLCBTb3J0cywgRmlsdGVycywgQ2xhc3NUeXBlPE1vZGVsPiwgdW5kZWZpbmVkPihtb2RlbC50eXBlIGFzIENsYXNzVHlwZTxNb2RlbD4sIHVuZGVmaW5lZCk7XG59XG4iXX0=
2
+ /**
3
+ * Creates and returns an instance of `TableDataProviderInst` with the specified options for managing table data.
4
+ *
5
+ * @param {Object} [opts] - The options object to configure the data provider.
6
+ * @param {TypeDescriptor<Model> | ModelDescriptor<Model>} [opts.type] - The descriptor defining the type of model.
7
+ * @param {ServiceClassType<Service>} [opts.service] - The service class type associated with the data provider.
8
+ * @param {TypeDescriptor<CreateModel> | ModelDescriptor<CreateModel>} [opts.filtersType] - The descriptor defining the filters type.
9
+ * @param {TypeDescriptor<UpdateModel> | ModelDescriptor<UpdateModel>} [opts.sortsType] - The descriptor defining the sorts type.
10
+ * @return {TableDataProviderInst<Model, Service, Sorts, Filters, ServiceClass>} An instance of `TableDataProviderInst` configured according to the provided options.
11
+ */
12
+ export function tableDataProvider(opts) {
13
+ return new TableDataProviderInst(opts?.service);
14
+ }
15
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUtZGF0YS1wcm92aWRlci5mYWN0b3J5LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vdGFibGUvYXBpL3NyYy9kYXRhLXByb3ZpZGVycy90YWJsZS1kYXRhLXByb3ZpZGVyLmZhY3RvcnkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBR0EsT0FBTyxFQUFDLHFCQUFxQixFQUFDLE1BQU0sdUJBQXVCLENBQUM7QUFFNUQ7Ozs7Ozs7OztHQVNHO0FBQ0gsTUFBTSxVQUFVLGlCQUFpQixDQU0vQixJQUtEO0lBQ0csT0FBTyxJQUFJLHFCQUFxQixDQUErQyxJQUFJLEVBQUUsT0FBdUIsQ0FBQyxDQUFDO0FBQ2xILENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1NlcnZpY2VDbGFzc1R5cGV9IGZyb20gJ0BtZWRpdXNpbmMvbW5nLWNvbW1vbnMvY29yZSc7XG5pbXBvcnQge01vZGVsRGVzY3JpcHRvciwgVHlwZURlc2NyaXB0b3J9IGZyb20gJ0BtZWRpdXNpbmMvbW5nLWNvbW1vbnMvbW9kZWwnO1xuXG5pbXBvcnQge1RhYmxlRGF0YVByb3ZpZGVySW5zdH0gZnJvbSAnLi90YWJsZS5kYXRhLXByb3ZpZGVyJztcblxuLyoqXG4gKiBDcmVhdGVzIGFuZCByZXR1cm5zIGFuIGluc3RhbmNlIG9mIGBUYWJsZURhdGFQcm92aWRlckluc3RgIHdpdGggdGhlIHNwZWNpZmllZCBvcHRpb25zIGZvciBtYW5hZ2luZyB0YWJsZSBkYXRhLlxuICpcbiAqIEBwYXJhbSB7T2JqZWN0fSBbb3B0c10gLSBUaGUgb3B0aW9ucyBvYmplY3QgdG8gY29uZmlndXJlIHRoZSBkYXRhIHByb3ZpZGVyLlxuICogQHBhcmFtIHtUeXBlRGVzY3JpcHRvcjxNb2RlbD4gfCBNb2RlbERlc2NyaXB0b3I8TW9kZWw+fSBbb3B0cy50eXBlXSAtIFRoZSBkZXNjcmlwdG9yIGRlZmluaW5nIHRoZSB0eXBlIG9mIG1vZGVsLlxuICogQHBhcmFtIHtTZXJ2aWNlQ2xhc3NUeXBlPFNlcnZpY2U+fSBbb3B0cy5zZXJ2aWNlXSAtIFRoZSBzZXJ2aWNlIGNsYXNzIHR5cGUgYXNzb2NpYXRlZCB3aXRoIHRoZSBkYXRhIHByb3ZpZGVyLlxuICogQHBhcmFtIHtUeXBlRGVzY3JpcHRvcjxDcmVhdGVNb2RlbD4gfCBNb2RlbERlc2NyaXB0b3I8Q3JlYXRlTW9kZWw+fSBbb3B0cy5maWx0ZXJzVHlwZV0gLSBUaGUgZGVzY3JpcHRvciBkZWZpbmluZyB0aGUgZmlsdGVycyB0eXBlLlxuICogQHBhcmFtIHtUeXBlRGVzY3JpcHRvcjxVcGRhdGVNb2RlbD4gfCBNb2RlbERlc2NyaXB0b3I8VXBkYXRlTW9kZWw+fSBbb3B0cy5zb3J0c1R5cGVdIC0gVGhlIGRlc2NyaXB0b3IgZGVmaW5pbmcgdGhlIHNvcnRzIHR5cGUuXG4gKiBAcmV0dXJuIHtUYWJsZURhdGFQcm92aWRlckluc3Q8TW9kZWwsIFNlcnZpY2UsIFNvcnRzLCBGaWx0ZXJzLCBTZXJ2aWNlQ2xhc3M+fSBBbiBpbnN0YW5jZSBvZiBgVGFibGVEYXRhUHJvdmlkZXJJbnN0YCBjb25maWd1cmVkIGFjY29yZGluZyB0byB0aGUgcHJvdmlkZWQgb3B0aW9ucy5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHRhYmxlRGF0YVByb3ZpZGVyPFxuICAgIE1vZGVsLFxuICAgIFNlcnZpY2UgPSB1bmRlZmluZWQsXG4gICAgU29ydHMgPSBrZXlvZiBNb2RlbCxcbiAgICBGaWx0ZXJzIGV4dGVuZHMga2V5b2YgYW55ID0ga2V5b2YgTW9kZWwsXG4gICAgU2VydmljZUNsYXNzID0gU2VydmljZSBleHRlbmRzIHVuZGVmaW5lZCA/IHVuZGVmaW5lZCA6IFNlcnZpY2VDbGFzc1R5cGU8U2VydmljZT5cbj4ob3B0cz86IHtcbiAgICB0eXBlPzogVHlwZURlc2NyaXB0b3I8TW9kZWw+IHwgTW9kZWxEZXNjcmlwdG9yPE1vZGVsPjtcbiAgICBzZXJ2aWNlPzogU2VydmljZUNsYXNzVHlwZTxTZXJ2aWNlPjtcbiAgICBmaWx0ZXJzVHlwZT86IFR5cGVEZXNjcmlwdG9yPEZpbHRlcnM+IHwgTW9kZWxEZXNjcmlwdG9yPEZpbHRlcnM+O1xuICAgIHNvcnRzVHlwZT86IFR5cGVEZXNjcmlwdG9yPFNvcnRzPiB8IE1vZGVsRGVzY3JpcHRvcjxTb3J0cz47XG59KTogVGFibGVEYXRhUHJvdmlkZXJJbnN0PE1vZGVsLCBTZXJ2aWNlLCBTb3J0cywgRmlsdGVycywgU2VydmljZUNsYXNzPiB7XG4gICAgcmV0dXJuIG5ldyBUYWJsZURhdGFQcm92aWRlckluc3Q8TW9kZWwsIFNlcnZpY2UsIFNvcnRzLCBGaWx0ZXJzLCBTZXJ2aWNlQ2xhc3M+KG9wdHM/LnNlcnZpY2UgYXMgU2VydmljZUNsYXNzKTtcbn1cbiJdfQ==