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

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 (267) 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/route.d.ts +0 -1
  7. package/core/helpers/type-helpers.d.ts +8 -0
  8. package/core/index.d.ts +0 -3
  9. package/core/models/menu.model.d.ts +0 -4
  10. package/core/services/commons.service.d.ts +0 -32
  11. package/core/services/tokens/module-config.token.d.ts +0 -28
  12. package/esm2022/core/action/action-parameters.model.mjs +1 -1
  13. package/esm2022/core/data-providers/base.data-provider.mjs +2 -4
  14. package/esm2022/core/data-providers/lookup.data-provider.mjs +1 -1
  15. package/esm2022/core/descriptors/model.descriptor.mjs +1 -1
  16. package/esm2022/core/descriptors/tableview.descriptor.mjs +1 -1
  17. package/esm2022/core/helpers/type-helpers.mjs +1 -1
  18. package/esm2022/core/index.mjs +1 -4
  19. package/esm2022/core/models/menu.model.mjs +1 -1
  20. package/esm2022/core/services/commons.service.mjs +1 -34
  21. package/esm2022/core/services/tokens/module-config.token.mjs +1 -1
  22. package/esm2022/filter/descriptors/filter-lookup.descriptor.mjs +5 -86
  23. package/esm2022/filter/descriptors/filter.descriptor.mjs +7 -29
  24. package/esm2022/form/api/data-providers/lookup-data-provider.factory.mjs +14 -41
  25. package/esm2022/form/api/data-providers/lookup.data-provider.mjs +3 -3
  26. package/esm2022/model/class/data-providers/base-from-class-data-provider.factory.mjs +5 -0
  27. package/esm2022/model/class/descriptors/model-class.descriptor.mjs +28 -0
  28. package/esm2022/model/class/descriptors/type-class.descriptor.mjs +6 -0
  29. package/esm2022/model/class/helpers/model.mjs +53 -0
  30. package/esm2022/model/class/index.mjs +8 -0
  31. package/esm2022/model/class/mediusinc-mng-commons-model-class.mjs +5 -0
  32. package/esm2022/model/data-providers/base-from-type-data-provider.factory.mjs +11 -6
  33. package/esm2022/model/descriptors/model.descriptor.mjs +11 -54
  34. package/esm2022/model/descriptors/type.descriptor.mjs +2 -10
  35. package/esm2022/model/index.mjs +1 -2
  36. package/esm2022/table/api/class/class-table-attribute-converter.mjs +80 -0
  37. package/esm2022/table/api/class/class-table-attribute.model.mjs +2 -0
  38. package/esm2022/table/api/class/class-table-data-provider.factory.mjs +5 -0
  39. package/esm2022/table/api/class/class-table-descriptor-helpers.mjs +99 -0
  40. package/esm2022/table/api/class/class-table-descriptor.factory.mjs +21 -0
  41. package/esm2022/table/api/class/index.mjs +6 -0
  42. package/esm2022/table/api/class/mediusinc-mng-commons-table-api-class.mjs +5 -0
  43. package/esm2022/table/api/data-providers/table-data-provider.factory.mjs +14 -41
  44. package/esm2022/table/api/data-providers/table.data-provider.mjs +3 -9
  45. package/esm2022/table/api/descriptors/column.descriptor.mjs +8 -3
  46. package/esm2022/table/api/descriptors/table-descriptor.factory.mjs +10 -77
  47. package/esm2022/table/api/descriptors/table.descriptor.mjs +3 -3
  48. package/esm2022/table/api/helpers/column-converter.mjs +25 -0
  49. package/esm2022/table/api/helpers/table-data-provider-descriptor-convert.mjs +4 -4
  50. package/esm2022/table/api/index.mjs +2 -4
  51. package/esm2022/table/api/models/table-columns.model.mjs +1 -1
  52. package/esm2022/table/components/column-value/column-value.component.mjs +4 -3
  53. package/esm2022/table/components/filter/filter-active-tag/filter-active-tag.component.mjs +3 -3
  54. package/esm2022/table/components/filter/filter-form/filter-form.component.mjs +5 -5
  55. package/esm2022/table/components/table/table.component.mjs +6 -8
  56. package/esm2022/tableview/action/components/action/action.component.mjs +1 -1
  57. package/esm2022/tableview/action/components/editor/injector-context/action-editor-injector-context.component.mjs +10 -6
  58. package/esm2022/tableview/action/helpers/action-execution.mjs +1 -1
  59. package/esm2022/tableview/action/models/execution/action-context.model.mjs +1 -1
  60. package/esm2022/tableview/action/models/execution/action-instance.model.mjs +1 -1
  61. package/esm2022/tableview/action/services/action-executor.service.mjs +11 -11
  62. package/esm2022/tableview/action/services/data-provider-executor.service.mjs +18 -3
  63. package/esm2022/tableview/api/action/descriptors/action-confirmation.descriptor.mjs +1 -1
  64. package/esm2022/tableview/api/action/descriptors/action-descriptor.factory.mjs +13 -104
  65. package/esm2022/tableview/api/action/descriptors/action-editor-descriptor.factory.mjs +15 -62
  66. package/esm2022/tableview/api/action/descriptors/action-editor.descriptor.mjs +3 -63
  67. package/esm2022/tableview/api/action/descriptors/action-link-descriptor.factory.mjs +17 -30
  68. package/esm2022/tableview/api/action/descriptors/action-link.descriptor.mjs +1 -1
  69. package/esm2022/tableview/api/action/descriptors/action.descriptor.mjs +6 -29
  70. package/esm2022/tableview/api/action/descriptors/editor-action-descriptor.factory.mjs +21 -0
  71. package/esm2022/tableview/api/action/descriptors/editor-action-editor-descriptor.factory.mjs +21 -0
  72. package/esm2022/tableview/api/action/descriptors/table-action-descriptor.factory.mjs +37 -0
  73. package/esm2022/tableview/api/action/descriptors/table-action-editor-descriptor.factory.mjs +40 -0
  74. package/esm2022/tableview/api/action/helpers/data-provider-executors.mjs +25 -5
  75. package/esm2022/tableview/api/action/models/action-descriptor.types.mjs +1 -1
  76. package/esm2022/tableview/api/action/models/action-error.model.mjs +1 -1
  77. package/esm2022/tableview/api/action/models/execution/action-context-validation.model.mjs +1 -1
  78. package/esm2022/tableview/api/action/models/execution/action-context.model.mjs +1 -1
  79. package/esm2022/tableview/api/action/models/execution/action-instance.model.mjs +1 -1
  80. package/esm2022/tableview/api/action/models/tableview-action-default-categories.model.mjs +6 -6
  81. package/esm2022/tableview/api/action/services/data-provider-executor.service.mjs +3 -3
  82. package/esm2022/tableview/api/class/editor/class-editor-attribute-converter.mjs +85 -0
  83. package/esm2022/tableview/api/class/editor/class-editor-attribute.model.mjs +2 -0
  84. package/esm2022/tableview/api/class/editor/class-editor-data-provider.factory.mjs +5 -0
  85. package/esm2022/tableview/api/class/editor/class-editor-descriptor-helpers.mjs +95 -0
  86. package/esm2022/tableview/api/class/editor/class-editor-descriptor.factory.mjs +21 -0
  87. package/esm2022/tableview/api/class/index.mjs +13 -0
  88. package/esm2022/tableview/api/class/mediusinc-mng-commons-tableview-api-class.mjs +5 -0
  89. package/esm2022/tableview/api/class/tableview/class-tableview-attribute-converter.mjs +35 -0
  90. package/esm2022/tableview/api/class/tableview/class-tableview-attribute.model.mjs +2 -0
  91. package/esm2022/tableview/api/class/tableview/class-tableview-data-provider.factory.mjs +5 -0
  92. package/esm2022/tableview/api/class/tableview/class-tableview-descriptor-helpers.mjs +111 -0
  93. package/esm2022/tableview/api/class/tableview/class-tableview-descriptor.factory.mjs +26 -0
  94. package/esm2022/tableview/api/editor/data-providers/editor-data-provider.factory.mjs +14 -32
  95. package/esm2022/tableview/api/editor/data-providers/editor.data-provider.mjs +40 -7
  96. package/esm2022/tableview/api/editor/descriptors/editor-descriptor.factory.mjs +7 -73
  97. package/esm2022/tableview/api/editor/descriptors/editor.descriptor.mjs +49 -134
  98. package/esm2022/tableview/api/editor/descriptors/field-base.descriptor.mjs +11 -2
  99. package/esm2022/tableview/api/editor/descriptors/field-lookup.descriptor.mjs +3 -5
  100. package/esm2022/tableview/api/editor/descriptors/field-many.descriptor.mjs +2 -18
  101. package/esm2022/tableview/api/editor/descriptors/wrappers/editor-descriptor-nested-object-wrapper.mjs +51 -0
  102. package/esm2022/tableview/api/editor/models/editor-fields.model.mjs +1 -1
  103. package/esm2022/tableview/api/editor/models/form-editor.event.mjs +1 -1
  104. package/esm2022/tableview/api/index.mjs +8 -8
  105. package/esm2022/tableview/api/tableview/data-providers/tableview-data-provider.factory.mjs +13 -51
  106. package/esm2022/tableview/api/tableview/data-providers/tableview.data-provider.mjs +19 -11
  107. package/esm2022/tableview/api/tableview/descriptors/tableview-descriptor.factory.mjs +19 -96
  108. package/esm2022/tableview/api/tableview/descriptors/tableview.descriptor.mjs +29 -182
  109. package/esm2022/tableview/api/tableview/helpers/tableview-create.mjs +8 -6
  110. package/esm2022/tableview/api/tableview/helpers/tableview-data-provider-descriptor-convert.mjs +4 -4
  111. package/esm2022/tableview/api/tableview/helpers/tableview-default-actions.mjs +117 -99
  112. package/esm2022/tableview/api/tableview/helpers/tableview-input-builder.mjs +164 -7
  113. package/esm2022/tableview/api/tableview/models/tableview-descriptor-fields-manage-helper.type.mjs +2 -0
  114. package/esm2022/tableview/api/tableview/models/tableview-descriptor-helper.type.mjs +2 -0
  115. package/esm2022/tableview/api/tableview/models/tableview-input.model.mjs +1 -1
  116. package/esm2022/tableview/api/tableview/models/tableview-route.model.mjs +1 -1
  117. package/esm2022/tableview/editor/components/formly/fields/formly-field-table-dialog-form/formly-field-table-dialog-form.component.mjs +6 -6
  118. package/esm2022/tableview/editor/helpers/editor-field.mjs +3 -3
  119. package/esm2022/tableview/editor/helpers/editor-formly.mjs +4 -4
  120. package/esm2022/tableview/editor/helpers/field-create.mjs +21 -0
  121. package/esm2022/tableview/index.mjs +3 -2
  122. package/esm2022/tableview/tableview/components/route/tableview-route.component.mjs +1 -1
  123. package/esm2022/tableview/tableview/components/tableview/tableview.component.mjs +3 -1
  124. package/fesm2022/mediusinc-mng-commons-core.mjs +687 -781
  125. package/fesm2022/mediusinc-mng-commons-core.mjs.map +1 -1
  126. package/fesm2022/mediusinc-mng-commons-filter.mjs +10 -113
  127. package/fesm2022/mediusinc-mng-commons-filter.mjs.map +1 -1
  128. package/fesm2022/mediusinc-mng-commons-form-api.mjs +15 -42
  129. package/fesm2022/mediusinc-mng-commons-form-api.mjs.map +1 -1
  130. package/fesm2022/mediusinc-mng-commons-model-class.mjs +97 -0
  131. package/fesm2022/mediusinc-mng-commons-model-class.mjs.map +1 -0
  132. package/fesm2022/mediusinc-mng-commons-model.mjs +23 -137
  133. package/fesm2022/mediusinc-mng-commons-model.mjs.map +1 -1
  134. package/fesm2022/mediusinc-mng-commons-table-api-class.mjs +204 -0
  135. package/fesm2022/mediusinc-mng-commons-table-api-class.mjs.map +1 -0
  136. package/fesm2022/mediusinc-mng-commons-table-api.mjs +55 -319
  137. package/fesm2022/mediusinc-mng-commons-table-api.mjs.map +1 -1
  138. package/fesm2022/mediusinc-mng-commons-table.mjs +14 -15
  139. package/fesm2022/mediusinc-mng-commons-table.mjs.map +1 -1
  140. package/fesm2022/mediusinc-mng-commons-tableview-api-class.mjs +367 -0
  141. package/fesm2022/mediusinc-mng-commons-tableview-api-class.mjs.map +1 -0
  142. package/fesm2022/mediusinc-mng-commons-tableview-api.mjs +715 -1298
  143. package/fesm2022/mediusinc-mng-commons-tableview-api.mjs.map +1 -1
  144. package/fesm2022/mediusinc-mng-commons-tableview.mjs +67 -27
  145. package/fesm2022/mediusinc-mng-commons-tableview.mjs.map +1 -1
  146. package/filter/descriptors/filter-lookup.descriptor.d.ts +1 -26
  147. package/filter/descriptors/filter.descriptor.d.ts +5 -12
  148. package/form/api/data-providers/lookup-data-provider.factory.d.ts +17 -20
  149. package/form/api/data-providers/lookup.data-provider.d.ts +3 -3
  150. package/model/class/README.md +8 -0
  151. package/model/class/data-providers/base-from-class-data-provider.factory.d.ts +3 -0
  152. package/model/class/descriptors/model-class.descriptor.d.ts +12 -0
  153. package/model/class/descriptors/type-class.descriptor.d.ts +3 -0
  154. package/model/{helpers → class/helpers}/model.d.ts +1 -2
  155. package/model/class/index.d.ts +4 -0
  156. package/model/data-providers/base-from-type-data-provider.factory.d.ts +13 -6
  157. package/model/descriptors/model.descriptor.d.ts +12 -27
  158. package/model/descriptors/type.descriptor.d.ts +0 -5
  159. package/model/index.d.ts +0 -1
  160. package/package.json +19 -1
  161. package/table/api/class/README.md +10 -0
  162. package/table/api/{helpers/class-attribute-converter.d.ts → class/class-table-attribute-converter.d.ts} +2 -9
  163. package/table/api/{models → class}/class-table-attribute.model.d.ts +1 -1
  164. package/table/api/class/class-table-data-provider.factory.d.ts +4 -0
  165. package/table/api/{helpers/table-descriptor-helpers.d.ts → class/class-table-descriptor-helpers.d.ts} +2 -4
  166. package/table/api/class/class-table-descriptor.factory.d.ts +11 -0
  167. package/table/api/class/index.d.ts +5 -0
  168. package/table/api/data-providers/table-data-provider.factory.d.ts +17 -20
  169. package/table/api/data-providers/table.data-provider.d.ts +4 -12
  170. package/table/api/descriptors/column.descriptor.d.ts +5 -2
  171. package/table/api/descriptors/table-descriptor.factory.d.ts +3 -39
  172. package/table/api/descriptors/table.descriptor.d.ts +3 -3
  173. package/table/api/helpers/column-converter.d.ts +7 -0
  174. package/table/api/helpers/table-data-provider-descriptor-convert.d.ts +3 -3
  175. package/table/api/index.d.ts +1 -3
  176. package/table/api/models/table-columns.model.d.ts +2 -2
  177. package/table/components/column-value/column-value.component.d.ts +1 -0
  178. package/table/components/filter/filter-active-tag/filter-active-tag.component.d.ts +1 -1
  179. package/table/components/filter/filter-form/filter-form.component.d.ts +1 -1
  180. package/table/components/filter/filter-overlay-with-tag/filter-overlay-with-tag.component.d.ts +1 -1
  181. package/table/components/table/table.component.d.ts +0 -9
  182. package/tableview/action/components/action/action.component.d.ts +2 -2
  183. package/tableview/action/components/editor/action-editor.component.d.ts +1 -1
  184. package/tableview/action/components/editor/injector-context/action-editor-injector-context.component.d.ts +6 -5
  185. package/tableview/action/components/localization/data-language-dropdown.component.d.ts +3 -3
  186. package/tableview/action/components/table/action-table.component.d.ts +3 -3
  187. package/tableview/action/helpers/action-execution.d.ts +1 -1
  188. package/tableview/action/models/execution/action-context.model.d.ts +3 -3
  189. package/tableview/action/models/execution/action-instance.model.d.ts +5 -5
  190. package/tableview/action/services/action-executor.service.d.ts +7 -7
  191. package/tableview/action/services/data-provider-executor.service.d.ts +16 -16
  192. package/tableview/action/services/view-container.service.d.ts +1 -1
  193. package/tableview/api/action/descriptors/action-confirmation.descriptor.d.ts +1 -1
  194. package/tableview/api/action/descriptors/action-descriptor.factory.d.ts +20 -31
  195. package/tableview/api/action/descriptors/action-editor-descriptor.factory.d.ts +18 -25
  196. package/tableview/api/action/descriptors/action-editor.descriptor.d.ts +22 -40
  197. package/tableview/api/action/descriptors/action-link-descriptor.factory.d.ts +21 -13
  198. package/tableview/api/action/descriptors/action-link.descriptor.d.ts +3 -3
  199. package/tableview/api/action/descriptors/action.descriptor.d.ts +31 -33
  200. package/tableview/api/action/descriptors/editor-action-descriptor.factory.d.ts +21 -0
  201. package/tableview/api/action/descriptors/editor-action-editor-descriptor.factory.d.ts +21 -0
  202. package/tableview/api/action/descriptors/table-action-descriptor.factory.d.ts +36 -0
  203. package/tableview/api/action/descriptors/table-action-editor-descriptor.factory.d.ts +40 -0
  204. package/tableview/api/action/helpers/data-provider-executors.d.ts +13 -8
  205. package/tableview/api/action/models/action-descriptor.types.d.ts +2 -2
  206. package/tableview/api/action/models/action-error.model.d.ts +1 -1
  207. package/tableview/api/action/models/execution/action-context-validation.model.d.ts +2 -2
  208. package/tableview/api/action/models/execution/action-context.model.d.ts +2 -2
  209. package/tableview/api/action/models/execution/action-instance.model.d.ts +1 -1
  210. package/tableview/api/action/models/tableview-action-default-categories.model.d.ts +5 -5
  211. package/tableview/api/action/services/data-provider-executor.service.d.ts +26 -25
  212. package/tableview/api/class/README.md +13 -0
  213. package/tableview/api/{editor/helpers/class-attribute-converter.d.ts → class/editor/class-editor-attribute-converter.d.ts} +2 -2
  214. package/tableview/api/{editor/models/class-tableview-attribute.model.d.ts → class/editor/class-editor-attribute.model.d.ts} +1 -1
  215. package/tableview/api/class/editor/class-editor-data-provider.factory.d.ts +4 -0
  216. package/tableview/api/{editor/helpers/editor-descriptor-helpers.d.ts → class/editor/class-editor-descriptor-helpers.d.ts} +2 -5
  217. package/tableview/api/class/editor/class-editor-descriptor.factory.d.ts +11 -0
  218. package/tableview/api/class/index.d.ts +10 -0
  219. package/tableview/api/{tableview/helpers/class-attribute-converter.d.ts → class/tableview/class-tableview-attribute-converter.d.ts} +1 -1
  220. package/tableview/api/{tableview/models → class/tableview}/class-tableview-attribute.model.d.ts +2 -2
  221. package/tableview/api/class/tableview/class-tableview-data-provider.factory.d.ts +4 -0
  222. package/tableview/api/{tableview/helpers/tableview-descriptor-helpers.d.ts → class/tableview/class-tableview-descriptor-helpers.d.ts} +1 -2
  223. package/tableview/api/class/tableview/class-tableview-descriptor.factory.d.ts +12 -0
  224. package/tableview/api/editor/data-providers/editor-data-provider.factory.d.ts +17 -16
  225. package/tableview/api/editor/data-providers/editor.data-provider.d.ts +64 -29
  226. package/tableview/api/editor/descriptors/editor-descriptor.factory.d.ts +5 -38
  227. package/tableview/api/editor/descriptors/editor.descriptor.d.ts +48 -112
  228. package/tableview/api/editor/descriptors/field-base.descriptor.d.ts +8 -1
  229. package/tableview/api/editor/descriptors/field-lookup.descriptor.d.ts +2 -3
  230. package/tableview/api/editor/descriptors/field-many.descriptor.d.ts +3 -11
  231. package/tableview/api/editor/descriptors/wrappers/editor-descriptor-nested-object-wrapper.d.ts +25 -0
  232. package/tableview/api/editor/models/editor-fields.model.d.ts +25 -21
  233. package/tableview/api/editor/models/form-editor.event.d.ts +0 -4
  234. package/tableview/api/index.d.ts +7 -6
  235. package/tableview/api/tableview/data-providers/tableview-data-provider.factory.d.ts +20 -25
  236. package/tableview/api/tableview/data-providers/tableview.data-provider.d.ts +22 -22
  237. package/tableview/api/tableview/descriptors/tableview-descriptor.factory.d.ts +20 -50
  238. package/tableview/api/tableview/descriptors/tableview.descriptor.d.ts +69 -163
  239. package/tableview/api/tableview/helpers/tableview-create.d.ts +18 -5
  240. package/tableview/api/tableview/helpers/tableview-data-provider-descriptor-convert.d.ts +2 -2
  241. package/tableview/api/tableview/helpers/tableview-default-actions.d.ts +73 -20
  242. package/tableview/api/tableview/helpers/tableview-input-builder.d.ts +87 -9
  243. package/tableview/api/tableview/models/tableview-descriptor-fields-manage-helper.type.d.ts +9 -0
  244. package/tableview/api/tableview/models/tableview-descriptor-helper.type.d.ts +2 -0
  245. package/tableview/api/tableview/models/tableview-input.model.d.ts +1 -1
  246. package/tableview/api/tableview/models/tableview-route.model.d.ts +1 -1
  247. package/tableview/editor/helpers/field-create.d.ts +9 -0
  248. package/tableview/index.d.ts +2 -1
  249. package/tableview/tableview/components/route/tableview-route.component.d.ts +1 -1
  250. package/tableview/tableview/components/tableview/tableview.component.d.ts +6 -6
  251. package/version-info.json +6 -6
  252. package/core/components/pages/error/error.page.component.d.ts +0 -11
  253. package/core/components/pages/not-found/not-found.page.component.d.ts +0 -11
  254. package/core/data-providers/base-data-provider.factory.d.ts +0 -13
  255. package/esm2022/core/components/pages/error/error.page.component.mjs +0 -24
  256. package/esm2022/core/components/pages/not-found/not-found.page.component.mjs +0 -24
  257. package/esm2022/core/data-providers/base-data-provider.factory.mjs +0 -28
  258. package/esm2022/model/helpers/model.mjs +0 -71
  259. package/esm2022/table/api/helpers/class-attribute-converter.mjs +0 -104
  260. package/esm2022/table/api/helpers/table-descriptor-helpers.mjs +0 -98
  261. package/esm2022/table/api/models/class-table-attribute.model.mjs +0 -2
  262. package/esm2022/tableview/api/editor/helpers/class-attribute-converter.mjs +0 -85
  263. package/esm2022/tableview/api/editor/helpers/editor-descriptor-helpers.mjs +0 -95
  264. package/esm2022/tableview/api/editor/models/class-tableview-attribute.model.mjs +0 -2
  265. package/esm2022/tableview/api/tableview/helpers/class-attribute-converter.mjs +0 -34
  266. package/esm2022/tableview/api/tableview/helpers/tableview-descriptor-helpers.mjs +0 -110
  267. package/esm2022/tableview/api/tableview/models/class-tableview-attribute.model.mjs +0 -2
@@ -1,33 +1,34 @@
1
1
  import { Injector } from '@angular/core';
2
2
  import { Observable } from 'rxjs';
3
3
  import { DataListResult, IDataProvider, Nullable } from '@mediusinc/mng-commons/core';
4
+ import { RunFetchFromDataProviderReasonType } from '../helpers/data-provider-executors';
4
5
  import { IActionContext } from '../models/execution/action-context.model';
5
6
  export declare abstract class DataProviderExecutor {
6
- runGetAllOrFail<Item, Service>(ctx: IActionContext<Item, Service>): Observable<DataListResult<Item>>;
7
- abstract runGetAll<Item, Service>(ctx: IActionContext<Item, Service>): Observable<DataListResult<Item>> | null;
8
- abstract runGetAll<Item, Service>(ctx: IActionContext<Item, Service>, fallback: Observable<DataListResult<Item>>): Observable<DataListResult<Item>>;
9
- abstract runGetAll<Item, Service>(ctx: IActionContext<Item, Service>, fallback: undefined): Observable<DataListResult<Item>> | null;
10
- abstract runGetAll<Item, Service>(ctx: IActionContext<Item, Service>, fallback?: Observable<DataListResult<Item>>): Observable<DataListResult<Item>> | null;
11
- runFetchOrFail<Item, Service>(ctx: IActionContext<Item, Service>): Observable<Item>;
12
- abstract runFetch<Item, Service>(ctx: IActionContext<Item, Service>): Observable<Item> | null;
13
- abstract runFetch<Item, Service>(ctx: IActionContext<Item, Service>, fallback: Observable<Nullable<Item>>): Observable<Nullable<Item>>;
14
- abstract runFetch<Item, Service>(ctx: IActionContext<Item, Service>, fallback: undefined): Observable<Nullable<Item>> | null;
15
- abstract runFetch<Item, Service>(ctx: IActionContext<Item, Service>, fallback?: Observable<Nullable<Item>>): Observable<Nullable<Item>> | null;
16
- runCreateOrFail<Item, Service>(ctx: IActionContext<Item, Service>): Observable<Item>;
17
- abstract runCreate<Item, Service>(ctx: IActionContext<Item, Service>): Observable<Item> | null;
18
- abstract runCreate<Item, Service>(ctx: IActionContext<Item, Service>, fallback: Observable<Nullable<Item>>): Observable<Nullable<Item>>;
19
- abstract runCreate<Item, Service>(ctx: IActionContext<Item, Service>, fallback: undefined): Observable<Nullable<Item>> | null;
20
- abstract runCreate<Item, Service>(ctx: IActionContext<Item, Service>, fallback?: Observable<Nullable<Item>>): Observable<Nullable<Item>> | null;
21
- runUpdateOrFail<Item, Service>(ctx: IActionContext<Item, Service>): Observable<Item>;
22
- abstract runUpdate<Item, Service>(ctx: IActionContext<Item, Service>): Observable<Item> | null;
23
- abstract runUpdate<Item, Service>(ctx: IActionContext<Item, Service>, fallback: Observable<Nullable<Item>>): Observable<Nullable<Item>>;
24
- abstract runUpdate<Item, Service>(ctx: IActionContext<Item, Service>, fallback: undefined): Observable<Nullable<Item>> | null;
25
- abstract runUpdate<Item, Service>(ctx: IActionContext<Item, Service>, fallback?: Observable<Nullable<Item>>): Observable<Nullable<Item>> | null;
26
- runDeleteOrFail<Item, Service>(ctx: IActionContext<Item, Service>): Observable<Item | null>;
27
- abstract runDelete<Item, Service>(ctx: IActionContext<Item, Service>): Observable<Nullable<Item>> | null;
28
- abstract runDelete<Item, Service>(ctx: IActionContext<Item, Service>, fallback: Observable<Nullable<Item>>): Observable<Nullable<Item>>;
29
- abstract runDelete<Item, Service>(ctx: IActionContext<Item, Service>, fallback: undefined): Observable<Nullable<Item>> | null;
30
- abstract runDelete<Item, Service>(ctx: IActionContext<Item, Service>, fallback?: Observable<Nullable<Item>>): Observable<Nullable<Item>> | null;
7
+ runGetAllOrFail<Item, ParametersItem, Service>(ctx: IActionContext<Item, ParametersItem, Service>): Observable<DataListResult<Item>>;
8
+ abstract runGetAll<Item, ParametersItem, Service>(ctx: IActionContext<Item, ParametersItem, Service>): Observable<DataListResult<Item>> | null;
9
+ abstract runGetAll<Item, ParametersItem, Service>(ctx: IActionContext<Item, ParametersItem, Service>, fallback: Observable<DataListResult<Item>>): Observable<DataListResult<Item>>;
10
+ abstract runGetAll<Item, ParametersItem, Service>(ctx: IActionContext<Item, ParametersItem, Service>, fallback: undefined): Observable<DataListResult<Item>> | null;
11
+ abstract runGetAll<Item, ParametersItem, Service>(ctx: IActionContext<Item, ParametersItem, Service>, fallback?: Observable<DataListResult<Item>>): Observable<DataListResult<Item>> | null;
12
+ runFetchOrFail<Item, ParametersItem, Service>(ctx: IActionContext<Item, ParametersItem, Service>, fetchReason?: RunFetchFromDataProviderReasonType): Observable<Item>;
13
+ abstract runFetch<Item, ParametersItem, Service>(ctx: IActionContext<Item, ParametersItem, Service>, fetchReason?: RunFetchFromDataProviderReasonType): Observable<Item> | null;
14
+ abstract runFetch<Item, ParametersItem, Service>(ctx: IActionContext<Item, ParametersItem, Service>, fetchReason: RunFetchFromDataProviderReasonType | undefined, fallback: Observable<Nullable<Item>>): Observable<Nullable<Item>>;
15
+ abstract runFetch<Item, ParametersItem, Service>(ctx: IActionContext<Item, ParametersItem, Service>, fetchReason: RunFetchFromDataProviderReasonType | undefined, fallback: undefined): Observable<Nullable<Item>> | null;
16
+ abstract runFetch<Item, ParametersItem, Service>(ctx: IActionContext<Item, ParametersItem, Service>, fetchReason: RunFetchFromDataProviderReasonType | undefined, fallback?: Observable<Nullable<Item>>): Observable<Nullable<Item>> | null;
17
+ runCreateOrFail<Item, ParametersItem, Service>(ctx: IActionContext<Item, ParametersItem, Service>): Observable<Item>;
18
+ abstract runCreate<Item, ParametersItem, Service>(ctx: IActionContext<Item, ParametersItem, Service>): Observable<Item> | null;
19
+ abstract runCreate<Item, ParametersItem, Service>(ctx: IActionContext<Item, ParametersItem, Service>, fallback: Observable<Nullable<Item>>): Observable<Nullable<Item>>;
20
+ abstract runCreate<Item, ParametersItem, Service>(ctx: IActionContext<Item, ParametersItem, Service>, fallback: undefined): Observable<Nullable<Item>> | null;
21
+ abstract runCreate<Item, ParametersItem, Service>(ctx: IActionContext<Item, ParametersItem, Service>, fallback?: Observable<Nullable<Item>>): Observable<Nullable<Item>> | null;
22
+ runUpdateOrFail<Item, ParametersItem, Service>(ctx: IActionContext<Item, ParametersItem, Service>): Observable<Item>;
23
+ abstract runUpdate<Item, ParametersItem, Service>(ctx: IActionContext<Item, ParametersItem, Service>): Observable<Item> | null;
24
+ abstract runUpdate<Item, ParametersItem, Service>(ctx: IActionContext<Item, ParametersItem, Service>, fallback: Observable<Nullable<Item>>): Observable<Nullable<Item>>;
25
+ abstract runUpdate<Item, ParametersItem, Service>(ctx: IActionContext<Item, ParametersItem, Service>, fallback: undefined): Observable<Nullable<Item>> | null;
26
+ abstract runUpdate<Item, ParametersItem, Service>(ctx: IActionContext<Item, ParametersItem, Service>, fallback?: Observable<Nullable<Item>>): Observable<Nullable<Item>> | null;
27
+ runDeleteOrFail<Item, ParametersItem, Service>(ctx: IActionContext<Item, ParametersItem, Service>): Observable<Item | null>;
28
+ abstract runDelete<Item, ParametersItem, Service>(ctx: IActionContext<Item, ParametersItem, Service>): Observable<Nullable<Item>> | null;
29
+ abstract runDelete<Item, ParametersItem, Service>(ctx: IActionContext<Item, ParametersItem, Service>, fallback: Observable<Nullable<Item>>): Observable<Nullable<Item>>;
30
+ abstract runDelete<Item, ParametersItem, Service>(ctx: IActionContext<Item, ParametersItem, Service>, fallback: undefined): Observable<Nullable<Item>> | null;
31
+ abstract runDelete<Item, ParametersItem, Service>(ctx: IActionContext<Item, ParametersItem, Service>, fallback?: Observable<Nullable<Item>>): Observable<Nullable<Item>> | null;
31
32
  /**
32
33
  * Gets service instance of data provider.
33
34
  *
@@ -0,0 +1,13 @@
1
+ # @mediusinc/mng-commons/tableview/api
2
+
3
+ Secondary entry point of `@mediusinc/mng-commons`. It can be used by importing from `@mediusinc/mng-commons/tableview/api/class`.
4
+
5
+ ## Dependencies within commons
6
+
7
+ - `@mediusinc/mng-commons/core`
8
+ - `@mediusinc/mng-commons/model`
9
+ - `@mediusinc/mng-commons/model/class`
10
+ - `@mediusinc/mng-commons/filter`
11
+ - `@mediusinc/mng-commons/form/api`
12
+ - `@mediusinc/mng-commons/table/api`
13
+ - `@mediusinc/mng-commons/tableview/api`
@@ -1,7 +1,7 @@
1
1
  import { ClassAttributeDef, ClassType } from '@mediusinc/mng-commons/core';
2
2
  import { ColumnDisplayTypeEnum, ColumnTypeEnum } from '@mediusinc/mng-commons/table/api';
3
- import { EditorClassAttributeDef } from '../models/class-tableview-attribute.model';
4
- import { FieldInputTypeEnum } from '../models/field.model';
3
+ import { FieldInputTypeEnum } from '@mediusinc/mng-commons/tableview/api';
4
+ import { EditorClassAttributeDef } from './class-editor-attribute.model';
5
5
  /**
6
6
  * converts string type to type enum, default is text
7
7
  * @param attributeType
@@ -1,5 +1,5 @@
1
1
  import { ClassAttributeDef, ClassType, EnumType } from '@mediusinc/mng-commons/core';
2
- import { FieldInputTypeEnum } from '../../editor/models/field.model';
2
+ import { FieldInputTypeEnum } from '@mediusinc/mng-commons/tableview/api';
3
3
  export interface EditorClassAttributeDef extends ClassAttributeDef {
4
4
  classType?: ClassType<any>;
5
5
  fieldType?: FieldInputTypeEnum;
@@ -0,0 +1,4 @@
1
+ import { ClassType, ServiceClassType } from '@mediusinc/mng-commons/core';
2
+ import { EditorDataProviderInst } from '@mediusinc/mng-commons/tableview/api';
3
+ export declare function editorDataProviderFromClass<Model>(type: ClassType<Model>): EditorDataProviderInst<Model, undefined, undefined>;
4
+ export declare function editorDataProviderFromClass<Model, Service = any>(type: ClassType<Model>, serviceType: ServiceClassType<Service>): EditorDataProviderInst<Model, Service, ServiceClassType<Service>>;
@@ -1,10 +1,7 @@
1
1
  import { ILookupDataProvider } from '@mediusinc/mng-commons/core';
2
2
  import { EnumDescriptor } from '@mediusinc/mng-commons/model';
3
- import { EditorDescriptorInst } from '../descriptors/editor.descriptor';
4
- import { AFieldDescriptor } from '../descriptors/field-base.descriptor';
5
- import { FieldLookupDescriptor } from '../descriptors/field-lookup.descriptor';
6
- import { EditorClassAttributeDef } from '../models/class-tableview-attribute.model';
7
- import { FieldInputTypeEnum } from '../models/field.model';
3
+ import { AFieldDescriptor, EditorDescriptorInst, FieldInputTypeEnum, FieldLookupDescriptor } from '@mediusinc/mng-commons/tableview/api';
4
+ import { EditorClassAttributeDef } from './class-editor-attribute.model';
8
5
  /**
9
6
  * Generates field based on attribute definition, used for auto model
10
7
  * @param descriptor Editor descriptor instance.
@@ -0,0 +1,11 @@
1
+ import { ClassType } from '@mediusinc/mng-commons/core';
2
+ import { EditorDescriptorCreateOptsType, EditorDescriptorInst } from '@mediusinc/mng-commons/tableview/api';
3
+ import { EditorClassAttributeDef } from './class-editor-attribute.model';
4
+ export declare function editorDescriptorFromClass<EditorModel, ParentEditorModel = undefined>(type: ClassType<EditorModel>, opts?: EditorDescriptorCreateOptsType<EditorModel, ParentEditorModel>): EditorDescriptorInst<EditorModel, ParentEditorModel>;
5
+ /**
6
+ * Generates descriptor based on type attribute definition
7
+ * @param type class type
8
+ * @param attributes
9
+ * @param opts
10
+ */
11
+ export declare function editorDescriptorFromClassAttrsDef<EditorModel, ParentEditorModel = undefined>(type: ClassType<EditorModel>, attributes?: EditorClassAttributeDef[], opts?: EditorDescriptorCreateOptsType<EditorModel, ParentEditorModel>): EditorDescriptorInst<EditorModel, ParentEditorModel>;
@@ -0,0 +1,10 @@
1
+ export * from './editor/class-editor-attribute.model';
2
+ export * from './editor/class-editor-attribute-converter';
3
+ export * from './editor/class-editor-data-provider.factory';
4
+ export * from './editor/class-editor-descriptor.factory';
5
+ export * from './editor/class-editor-descriptor-helpers';
6
+ export * from './tableview/class-tableview-attribute.model';
7
+ export * from './tableview/class-tableview-attribute-converter';
8
+ export * from './tableview/class-tableview-descriptor.factory';
9
+ export * from './tableview/class-tableview-descriptor-helpers';
10
+ export * from './tableview/class-tableview-data-provider.factory';
@@ -1,5 +1,5 @@
1
1
  import { ClassAttributeDef, ClassType } from '@mediusinc/mng-commons/core';
2
- import { TableviewClassAttributeDef } from '../models/class-tableview-attribute.model';
2
+ import { TableviewClassAttributeDef } from './class-tableview-attribute.model';
3
3
  export declare function expandClassAttributeDefWithTableviewDef(attributes?: Array<ClassAttributeDef> | null): TableviewClassAttributeDef[];
4
4
  /**
5
5
  * returns attributes from class type and extends to typed def with column and field enum type
@@ -1,3 +1,3 @@
1
- import { TableClassAttributeDef } from '@mediusinc/mng-commons/table/api';
2
- import { EditorClassAttributeDef } from '../../editor/models/class-tableview-attribute.model';
1
+ import { TableClassAttributeDef } from '@mediusinc/mng-commons/table/api/class';
2
+ import { EditorClassAttributeDef } from '../editor/class-editor-attribute.model';
3
3
  export type TableviewClassAttributeDef = EditorClassAttributeDef & TableClassAttributeDef;
@@ -0,0 +1,4 @@
1
+ import { ClassType, ServiceClassType } from '@mediusinc/mng-commons/core';
2
+ import { TableviewDataProviderInst } from '@mediusinc/mng-commons/tableview/api';
3
+ export declare function tableviewDataProviderFromClass<Model, Sorts = keyof Model, Filters extends keyof any = keyof Model>(type: ClassType<Model>): TableviewDataProviderInst<Model, undefined, Sorts, Filters, undefined>;
4
+ export declare function tableviewDataProviderFromClass<Model, Service = any, Sorts = keyof Model, Filters extends keyof any = keyof Model>(type: ClassType<Model>, serviceType: ServiceClassType<Service>): TableviewDataProviderInst<Model, Service, Sorts, Filters, ServiceClassType<Service>>;
@@ -1,8 +1,7 @@
1
1
  import { ClassType, ILookupDataProvider } from '@mediusinc/mng-commons/core';
2
2
  import { EnumDescriptor } from '@mediusinc/mng-commons/model';
3
3
  import { ColumnDisplayTypeEnum, ColumnTypeEnum } from '@mediusinc/mng-commons/table/api';
4
- import { FieldInputTypeEnum } from '../../editor/models/field.model';
5
- import { TableviewDescriptorInst } from '../descriptors/tableview.descriptor';
4
+ import { FieldInputTypeEnum, TableviewDescriptorInst } from '@mediusinc/mng-commons/tableview/api';
6
5
  /**
7
6
  * creates column and field with custom type, for example currency
8
7
  * if field exists, it is replaced
@@ -0,0 +1,12 @@
1
+ import { ClassType } from '@mediusinc/mng-commons/core';
2
+ import { TableviewDescriptorCreateMultiModelWithModelDescriptorOptsType, TableviewDescriptorInst } from '@mediusinc/mng-commons/tableview/api';
3
+ import { TableviewClassAttributeDef } from './class-tableview-attribute.model';
4
+ export declare function tableviewDescriptorFromClass<TableviewModel, Sorts = keyof TableviewModel, Filters = keyof TableviewModel, ParentEditorModel = undefined>(type: ClassType<TableviewModel>, opts?: TableviewDescriptorCreateMultiModelWithModelDescriptorOptsType<TableviewModel>): TableviewDescriptorInst<TableviewModel, Sorts, Filters, ParentEditorModel>;
5
+ /**
6
+ * generates descriptor based on type attribute definition
7
+ * @param type class type
8
+ * @param columnAttributes
9
+ * @param fieldAttributes
10
+ * @param opts
11
+ */
12
+ export declare function tableviewDescriptorFromClassAttrsDef<TableviewModel, Sorts = keyof TableviewModel, Filters = keyof TableviewModel>(type: ClassType<TableviewModel>, columnAttributes?: TableviewClassAttributeDef[], fieldAttributes?: TableviewClassAttributeDef[] | null, opts?: TableviewDescriptorCreateMultiModelWithModelDescriptorOptsType<TableviewModel>): TableviewDescriptorInst<TableviewModel, Sorts, Filters>;
@@ -1,18 +1,19 @@
1
- import { ClassType, ServiceClassType } from '@mediusinc/mng-commons/core';
1
+ import { ServiceClassType } from '@mediusinc/mng-commons/core';
2
2
  import { ModelDescriptor, TypeDescriptor } from '@mediusinc/mng-commons/model';
3
3
  import { EditorDataProviderInst } from './editor.data-provider';
4
- export declare class EditorDataProvider extends EditorDataProviderInst<any> {
5
- protected constructor();
6
- static create<Model>(): EditorDataProviderInst<Model, undefined, undefined, undefined>;
7
- static fromClass<Model>(type: ClassType<Model>): EditorDataProviderInst<Model, undefined, ClassType<Model>, undefined>;
8
- static fromClassWithService<Model, Service>(type: ClassType<Model>, serviceType: ServiceClassType<Service>): EditorDataProviderInst<Model, Service, ClassType<Model>, ServiceClassType<Service>>;
9
- static fromService<Service, Model>(serviceType: ServiceClassType<Service>): EditorDataProviderInst<Model, Service, undefined, ServiceClassType<Service>>;
10
- }
11
- export declare function editorDataProvider<Model>(): EditorDataProviderInst<Model, undefined, undefined, undefined>;
12
- export declare function editorDataProvider<Model>(type: TypeDescriptor<Model>): EditorDataProviderInst<Model, undefined, undefined, undefined>;
13
- export declare function editorDataProvider<Model, Service = any>(type: TypeDescriptor<Model>, serviceType: ServiceClassType<Service>): EditorDataProviderInst<Model, Service, undefined, ServiceClassType<Service>>;
14
- export declare function editorDataProviderWithService<Service, Model>(serviceType: ServiceClassType<Service>): EditorDataProviderInst<Model, Service, undefined, ServiceClassType<Service>>;
15
- export declare function editorDataProviderFromClass<Model>(type: ClassType<Model>): EditorDataProviderInst<Model, undefined, ClassType<Model>, undefined>;
16
- export declare function editorDataProviderFromClass<Model, Service = any>(type: ClassType<Model>, serviceType: ServiceClassType<Service>): EditorDataProviderInst<Model, Service, ClassType<Model>, ServiceClassType<Service>>;
17
- export declare function editorDataProviderFromModel<Model, ModelClass = ClassType<Model>>(model: ModelDescriptor<Model, ModelClass>): EditorDataProviderInst<Model, undefined, ModelClass, undefined>;
18
- export declare function editorDataProviderFromModel<Model, Service = any, ModelClass = ClassType<Model>>(model: ModelDescriptor<Model, ModelClass>, ServiceClass: ServiceClassType<Service>): EditorDataProviderInst<Model, Service, ModelClass, ServiceClassType<Service>>;
4
+ /**
5
+ * Creates and returns an instance of `EditorDataProviderInst` with the specified options for managing editor data.
6
+ *
7
+ * @param {Object} [opts] - The options object to configure the data provider.
8
+ * @param {TypeDescriptor<Model> | ModelDescriptor<Model>} [opts.type] - The descriptor defining the type of model.
9
+ * @param {ServiceClassType<Service>} [opts.service] - The service class type associated with the data provider.
10
+ * @param {TypeDescriptor<CreateModel> | ModelDescriptor<CreateModel>} [opts.createType] - The descriptor defining the create type.
11
+ * @param {TypeDescriptor<UpdateModel> | ModelDescriptor<UpdateModel>} [opts.updateType] - The descriptor defining the update type.
12
+ * @return {EditorDataProviderInst<Model, Service, ServiceClass, CreateModel, UpdateModel>} An instance of `EditorDataProviderInst` configured according to the provided options.
13
+ */
14
+ export declare function editorDataProvider<Model, Service = undefined, CreateModel = Model, UpdateModel = Model, ServiceClass = Service extends undefined ? undefined : ServiceClassType<Service>>(opts?: {
15
+ type?: TypeDescriptor<Model> | ModelDescriptor<Model>;
16
+ service?: ServiceClassType<Service>;
17
+ createType?: TypeDescriptor<CreateModel> | ModelDescriptor<Model>;
18
+ updateType?: TypeDescriptor<UpdateModel> | ModelDescriptor<Model>;
19
+ }): EditorDataProviderInst<Model, Service, ServiceClass, CreateModel, UpdateModel>;
@@ -1,43 +1,56 @@
1
1
  import { Observable, Subject } from 'rxjs';
2
- import { ClassOptType, DataProviderInst, IDataProvider, IdType, ItemOrObservable, ServiceClassOptType } from '@mediusinc/mng-commons/core';
2
+ import { DataProviderInst, IDataProvider, IdType, ItemOrObservable, ServiceClassOptType, Undefined } from '@mediusinc/mng-commons/core';
3
3
  import { EditorResetEvent } from '../models/form-editor.event';
4
4
  export type EditorDataProviderFetchFnType<Model = any, Service = undefined, Id = IdType, Return = ItemOrObservable<Model>> = (id: Id, service: Service, locale: string | undefined) => Return;
5
- export type EditorDataProviderCreateFnType<Model = any, Service = undefined, Item = Model | undefined, Return = ItemOrObservable<Model>> = (item: Item, service: Service) => Return;
6
- export type EditorDataProviderUpdateFnType<Model = any, Service = undefined, Id = IdType, Item = Model | undefined, Return = ItemOrObservable<Model>> = (id: Id, item: Item, service: Service) => Return;
7
- export type EditorDataProviderDeleteFnType<Model = any, Service = undefined, Id = IdType, Item = Model | undefined, Return = ItemOrObservable<Model | null>> = (id: Id, item: Item, service: Service) => Return;
5
+ export type EditorDataProviderCreateFnType<CreateModel = any, Model = any, Service = undefined, Item = Undefined<CreateModel>, Return = ItemOrObservable<Undefined<Model>>> = (item: Item, service: Service) => Return;
6
+ export type EditorDataProviderUpdateFnType<UpdateModel = any, Model = any, Service = undefined, Id = IdType, Item = Undefined<UpdateModel>, Return = ItemOrObservable<Undefined<Model>>> = (id: Id, item: Item, service: Service) => Return;
7
+ export type EditorDataProviderDeleteFnType<Model = any, Service = undefined, Item = undefined, Id = IdType, Return = ItemOrObservable<Undefined<Model>>> = (id: Id, service: Service, item: Item) => Return;
8
+ export type EditorDataProviderFetchMapToFnType<FromModel, ToModel> = (item: FromModel) => ToModel;
8
9
  export interface IEditorDataProviderFetch<Model, Service> {
9
- fetch: EditorDataProviderFetchFnType<Model, Service>;
10
+ fetch?: EditorDataProviderFetchFnType<Model, Service>;
10
11
  withFetch(fn: EditorDataProviderFetchFnType<Model, Service>): this;
11
12
  }
12
- export interface IEditorDataProviderCreate<Model, Service> {
13
- create?: EditorDataProviderCreateFnType<Model, Service>;
14
- withCreate(fn?: EditorDataProviderCreateFnType<Model, Service>): this;
13
+ export interface IEditorDataProviderCreate<CreateModel, Model, Service> {
14
+ create?: EditorDataProviderCreateFnType<CreateModel, Model, Service>;
15
+ withCreate(fn?: EditorDataProviderCreateFnType<CreateModel, Model, Service>): this;
15
16
  }
16
- export interface IEditorDataProviderUpdate<Model, Service> {
17
- update?: EditorDataProviderUpdateFnType<Model, Service>;
18
- withUpdate(fn?: EditorDataProviderUpdateFnType<Model, Service>): this;
17
+ export interface IEditorDataProviderUpdate<UpdateModel, Model, Service> {
18
+ update?: EditorDataProviderUpdateFnType<UpdateModel, Model, Service>;
19
+ withUpdate(fn?: EditorDataProviderUpdateFnType<UpdateModel, Model, Service>): this;
19
20
  }
20
21
  export interface IEditorDataProviderDelete<Model, Service> {
21
- delete?: EditorDataProviderDeleteFnType<Model, Service>;
22
- withDelete(fn?: EditorDataProviderDeleteFnType<Model, Service>): this;
22
+ delete?: EditorDataProviderDeleteFnType<Model, Service, any>;
23
+ withDelete<Item = undefined>(fn?: EditorDataProviderDeleteFnType<Model, Service, Item>): this;
23
24
  }
24
- export type IEditorDataProviderFnsType<Model, Service> = IEditorDataProviderFetch<Model, Service> & IEditorDataProviderCreate<Model, Service> & IEditorDataProviderUpdate<Model, Service> & IEditorDataProviderDelete<Model, Service>;
25
+ export interface IEditorDataProviderFetchMapToCreate<Model, CreateModel> {
26
+ mapFetchItemToCreateItem?: EditorDataProviderFetchMapToFnType<Model, CreateModel>;
27
+ withMapFetchItemToCreateItem(fn?: EditorDataProviderFetchMapToFnType<Model, CreateModel>): this;
28
+ }
29
+ export interface IEditorDataProviderFetchMapToUpdate<Model, UpdateModel> {
30
+ mapFetchItemToUpdateItem?: EditorDataProviderFetchMapToFnType<Model, UpdateModel>;
31
+ withMapFetchItemToUpdateItem(fn?: EditorDataProviderFetchMapToFnType<Model, UpdateModel>): this;
32
+ }
33
+ export type IEditorDataProviderFnsType<Model, Service, CreateModel = Model, UpdateModel = Model, DeleteModel = Model> = IEditorDataProviderFetch<Model, Service> & IEditorDataProviderCreate<CreateModel, Model, Service> & IEditorDataProviderUpdate<UpdateModel, Model, Service> & IEditorDataProviderDelete<DeleteModel, Service> & IEditorDataProviderFetchMapToCreate<Model, CreateModel> & IEditorDataProviderFetchMapToUpdate<Model, UpdateModel>;
25
34
  export interface IEditorDataProviderSupport<Model> {
26
35
  get editorReset$(): Observable<EditorResetEvent<Model>>;
27
36
  resetEditor(event?: EditorResetEvent<Model>): void;
28
37
  }
29
- export type IEditorDataProvider<Model = any, Service = any, ModelClass = ClassOptType<Model>, ServiceClass = ServiceClassOptType<Service>> = IDataProvider<Model, Service, ModelClass, ServiceClass> & IEditorDataProviderFnsType<Model, Service> & IEditorDataProviderSupport<Model>;
30
- export declare class EditorDataProviderInst<Model, Service = any, ModelClass = ClassOptType<Model>, ServiceClass = ServiceClassOptType<Service>> extends DataProviderInst<Model, Service, ModelClass, ServiceClass> implements IEditorDataProvider<Model, Service, ModelClass, ServiceClass> {
38
+ export type IEditorDataProvider<Model = any, Service = any, ServiceClass = ServiceClassOptType<Service>, CreateModel = Model, UpdateModel = Model> = IDataProvider<Model, Service, ServiceClass> & IEditorDataProviderFnsType<Model, Service, CreateModel, UpdateModel> & IEditorDataProviderSupport<Model>;
39
+ export declare class EditorDataProviderInst<Model, Service = any, ServiceClass = ServiceClassOptType<Service>, CreateModel = Model, UpdateModel = Model> extends DataProviderInst<Model, Service, ServiceClass> implements IEditorDataProvider<Model, Service, ServiceClass, CreateModel, UpdateModel> {
31
40
  protected readonly _editorResetSubject: Subject<EditorResetEvent<Model>>;
32
- protected _fetch: EditorDataProviderFetchFnType<Model, Service>;
33
- protected _create?: EditorDataProviderCreateFnType<Model, Service>;
34
- protected _update?: EditorDataProviderUpdateFnType<Model, Service>;
35
- protected _delete?: EditorDataProviderDeleteFnType<Model, Service>;
36
- constructor(type: ModelClass, serviceType: ServiceClass);
37
- get fetch(): EditorDataProviderFetchFnType<Model, Service, IdType, ItemOrObservable<Model>>;
38
- get create(): EditorDataProviderCreateFnType<Model, Service, Model | undefined, ItemOrObservable<Model>> | undefined;
39
- get update(): EditorDataProviderUpdateFnType<Model, Service, IdType, Model | undefined, ItemOrObservable<Model>> | undefined;
40
- get delete(): EditorDataProviderDeleteFnType<Model, Service, IdType, Model | undefined, ItemOrObservable<Model | null>> | undefined;
41
+ protected _fetch?: EditorDataProviderFetchFnType<Model, Service>;
42
+ protected _create?: EditorDataProviderCreateFnType<CreateModel, Model, Service>;
43
+ protected _update?: EditorDataProviderUpdateFnType<UpdateModel, Model, Service>;
44
+ protected _delete?: EditorDataProviderDeleteFnType<Model, Service, any>;
45
+ protected _mapFetchItemToCreateItem?: EditorDataProviderFetchMapToFnType<Model, CreateModel>;
46
+ protected _mapFetchItemToUpdateItem?: EditorDataProviderFetchMapToFnType<Model, UpdateModel>;
47
+ constructor(serviceType: ServiceClass);
48
+ get fetch(): EditorDataProviderFetchFnType<Model, Service, IdType, ItemOrObservable<Model>> | undefined;
49
+ get create(): EditorDataProviderCreateFnType<CreateModel, Model, Service, Undefined<CreateModel>, ItemOrObservable<Undefined<Model>>> | undefined;
50
+ get update(): EditorDataProviderUpdateFnType<UpdateModel, Model, Service, IdType, Undefined<UpdateModel>, ItemOrObservable<Undefined<Model>>> | undefined;
51
+ get delete(): EditorDataProviderDeleteFnType<Model, Service, any, IdType, ItemOrObservable<Undefined<Model>>> | undefined;
52
+ get mapFetchItemToCreateItem(): EditorDataProviderFetchMapToFnType<Model, CreateModel> | undefined;
53
+ get mapFetchItemToUpdateItem(): EditorDataProviderFetchMapToFnType<Model, UpdateModel> | undefined;
41
54
  get editorReset$(): Observable<EditorResetEvent<Model>>;
42
55
  /**
43
56
  * Sets the fetch function for the EditorDataProvider instance.
@@ -52,13 +65,13 @@ export declare class EditorDataProviderInst<Model, Service = any, ModelClass = C
52
65
  /**
53
66
  * Sets the create function for the EditorDataProvider.
54
67
  *
55
- * @param {EditorDataProviderCreateFnType<Model, Service>} fn - The function used for creating new items.
68
+ * @param {EditorDataProviderCreateFnType<CreateModel, Model, Service>} fn - The function used for creating new items.
56
69
  * @returns {this} - Returns the instance of the class.
57
70
  *
58
71
  * @typeparam Model The type of data this DataProvider will handle.
59
72
  * @typeparam Service The type of service used by this DataProvider.
60
73
  */
61
- withCreate(fn?: EditorDataProviderCreateFnType<Model, Service>): this;
74
+ withCreate(fn?: EditorDataProviderCreateFnType<CreateModel, Model, Service>): this;
62
75
  /**
63
76
  * Sets the update function for the EditorDataProvider.
64
77
  *
@@ -68,7 +81,7 @@ export declare class EditorDataProviderInst<Model, Service = any, ModelClass = C
68
81
  * @typeparam Model The type of data this DataProvider will handle.
69
82
  * @typeparam Service The type of service used by this DataProvider.
70
83
  */
71
- withUpdate(fn?: EditorDataProviderUpdateFnType<Model, Service>): this;
84
+ withUpdate(fn?: EditorDataProviderUpdateFnType<UpdateModel, Model, Service>): this;
72
85
  /**
73
86
  * Sets the delete function for the editor data provider.
74
87
  *
@@ -79,6 +92,28 @@ export declare class EditorDataProviderInst<Model, Service = any, ModelClass = C
79
92
  * @typeparam Model The type of data this DataProvider will handle.
80
93
  * @typeparam Service The type of service used by this DataProvider.
81
94
  */
82
- withDelete(fn?: EditorDataProviderDeleteFnType<Model, Service>): this;
95
+ withDelete<Item = undefined>(fn?: EditorDataProviderDeleteFnType<Model, Service, Item>): this;
96
+ /**
97
+ * Sets the function to map data from fetch function to create model.
98
+ *
99
+ * @param {EditorDataProviderFetchMapToFnType<Model, CreateModel>} fn - The map function to be set.
100
+ *
101
+ * @returns {this} - Returns the instance of the current class.
102
+ *
103
+ * @typeparam Model The type of data from fetch function to map from.
104
+ * @typeparam CreateModel The type of data to map to.
105
+ */
106
+ withMapFetchItemToCreateItem(fn?: EditorDataProviderFetchMapToFnType<Model, CreateModel>): this;
107
+ /**
108
+ * Sets the function to map data from fetch function to update model.
109
+ *
110
+ * @param {EditorDataProviderFetchMapToFnType<Model, UpdateModel>} fn - The map function to be set.
111
+ *
112
+ * @returns {this} - Returns the instance of the current class.
113
+ *
114
+ * @typeparam Model The type of data from fetch function to map from.
115
+ * @typeparam UpdateModel The type of data to map to.
116
+ */
117
+ withMapFetchItemToUpdateItem(fn?: EditorDataProviderFetchMapToFnType<Model, UpdateModel>): this;
83
118
  resetEditor(event?: EditorResetEvent<Model>): void;
84
119
  }
@@ -1,44 +1,11 @@
1
- import { ClassType } from '@mediusinc/mng-commons/core';
2
1
  import { ModelDescriptor, ModelDescriptorCreateOpts, TypeDescriptor } from '@mediusinc/mng-commons/model';
3
- import { EditorClassAttributeDef } from '../models/class-tableview-attribute.model';
4
2
  import { TableviewEditorTypeEnum } from '../models/editor.model';
5
3
  import { EditorDescriptorInst } from './editor.descriptor';
6
- export declare class EditorDescriptor extends EditorDescriptorInst<any> {
7
- protected constructor();
8
- static create<EditorModel, ParentEditorModel = undefined>(idProperty?: keyof EditorModel, titleProperty?: keyof EditorModel, i18nBaseKey?: string | ClassType<unknown>, tableviewEditorType?: TableviewEditorTypeEnum): EditorDescriptorInst<EditorModel, ParentEditorModel>;
9
- static fromClass<EditorModel, ParentEditorModel = undefined>(type: ClassType<EditorModel>, idProperty?: keyof EditorModel, titleProperty?: keyof EditorModel, i18nBaseKey?: ClassType<unknown> | string, tableviewEditorType?: TableviewEditorTypeEnum): EditorDescriptorInst<EditorModel, ParentEditorModel>;
10
- static fromModel<EditorModel, ParentEditorModel = undefined>(model: ModelDescriptor<EditorModel>, tableviewEditorType?: TableviewEditorTypeEnum): EditorDescriptorInst<EditorModel, ParentEditorModel>;
11
- /**
12
- * Creates editor descriptor automatically based on openapi model's attributes definition which is automatically extracted. All fields will be included.
13
- * @param type Model's class.
14
- * @param idProperty Id property representing model (optional).
15
- * @param titleProperty Title property representing model (optional). If not provided, it will be automatically chosen.
16
- * @param tableEditorType Type of editor in tableview (add, edit, view or none).
17
- */
18
- static fromClassWithAutoAttrsDef<EditorModel, ParentEditorModel = undefined>(type: ClassType<EditorModel>, idProperty?: keyof EditorModel, titleProperty?: keyof EditorModel, tableEditorType?: TableviewEditorTypeEnum): EditorDescriptorInst<EditorModel, ParentEditorModel>;
19
- /**
20
- * Creates editor descriptor automatically based on openapi model's attributes definition provided in parameters. Only fields for provided attributes will be included.
21
- * @param type Model's class.
22
- * @param attributes List of attribute definitions from which fields should be created.
23
- * @param idProperty Id property representing model (optional).
24
- * @param titleProperty Title property representing model (optional). If not provided, it will be automatically chosen.
25
- * @param tableviewEditorType Type of editor in tableview (add, edit, view or none).
26
- */
27
- static fromClassWithCustomAttrsDef<EditorModel, ParentEditorModel = undefined>(type: ClassType<EditorModel>, attributes: EditorClassAttributeDef[], idProperty?: keyof EditorModel, titleProperty?: keyof EditorModel, tableviewEditorType?: TableviewEditorTypeEnum): EditorDescriptorInst<EditorModel, ParentEditorModel>;
28
- }
29
- export type EditorDescriptorCreateBaseOptsType = {
4
+ export type EditorDescriptorCreateBaseOptsType<ParentEditorModel> = {
30
5
  tableviewEditorType?: TableviewEditorTypeEnum;
6
+ parentEditorType?: TypeDescriptor<ParentEditorModel> | ModelDescriptor<ParentEditorModel> | EditorDescriptorInst<ParentEditorModel, any>;
31
7
  };
32
- export type EditorDescriptorCreateOptsType<EditorModel> = ModelDescriptorCreateOpts<EditorModel> & EditorDescriptorCreateBaseOptsType;
8
+ export type EditorDescriptorCreateOptsType<EditorModel, ParentEditorModel> = ModelDescriptorCreateOpts<EditorModel> & EditorDescriptorCreateBaseOptsType<ParentEditorModel>;
33
9
  export declare function editorDescriptor<EditorModel, ParentEditorModel = undefined>(): EditorDescriptorInst<EditorModel, ParentEditorModel>;
34
- export declare function editorDescriptor<EditorModel, ParentEditorModel = undefined>(opts: EditorDescriptorCreateOptsType<EditorModel>): EditorDescriptorInst<EditorModel, ParentEditorModel>;
35
- export declare function editorDescriptor<EditorModel, ParentEditorModel = undefined>(model: ModelDescriptor<EditorModel>, opts?: EditorDescriptorCreateBaseOptsType): EditorDescriptorInst<EditorModel, ParentEditorModel>;
36
- export declare function editorDescriptor<EditorModel, ParentEditorModel = undefined>(type: TypeDescriptor<EditorModel>, opts?: EditorDescriptorCreateOptsType<EditorModel>): EditorDescriptorInst<EditorModel, ParentEditorModel>;
37
- export declare function editorDescriptorFromClass<EditorModel, ParentEditorModel = undefined>(type: ClassType<EditorModel>, opts?: EditorDescriptorCreateOptsType<EditorModel>): EditorDescriptorInst<EditorModel, ParentEditorModel>;
38
- /**
39
- * Generates descriptor based on type attribute definition
40
- * @param type class type
41
- * @param attributes
42
- * @param opts
43
- */
44
- export declare function editorDescriptorFromClassAttrsDef<EditorModel, ParentEditorModel = undefined>(type: ClassType<EditorModel>, attributes?: EditorClassAttributeDef[], opts?: EditorDescriptorCreateOptsType<EditorModel>): EditorDescriptorInst<EditorModel, ParentEditorModel>;
10
+ export declare function editorDescriptor<EditorModel, ParentEditorModel = undefined>(opts: EditorDescriptorCreateOptsType<EditorModel, ParentEditorModel>): EditorDescriptorInst<EditorModel, ParentEditorModel>;
11
+ export declare function editorDescriptor<EditorModel, ParentEditorModel = undefined>(model: ModelDescriptor<EditorModel>, opts?: EditorDescriptorCreateBaseOptsType<ParentEditorModel>): EditorDescriptorInst<EditorModel, ParentEditorModel>;