@mediusinc/mng-commons 3.6.0-rc.3 → 3.7.0-rc.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (341) hide show
  1. package/README.md +6 -5
  2. package/esm2022/index.mjs +6 -3
  3. package/esm2022/lib/api/models/filter-param.model.mjs +1 -1
  4. package/esm2022/lib/api/models/index.mjs +1 -3
  5. package/esm2022/lib/api/models/query-param.model.mjs +1 -1
  6. package/esm2022/lib/api/models/query-result.model.mjs +12 -1
  7. package/esm2022/lib/api/services/api.abstract.service.mjs +2 -2
  8. package/esm2022/lib/api/services/get-all-api.abstract.service.mjs +1 -1
  9. package/esm2022/lib/api/utils/index.mjs +2 -2
  10. package/esm2022/lib/api/utils/object-serializer.util.mjs +53 -137
  11. package/esm2022/lib/components/action/action.component.mjs +17 -16
  12. package/esm2022/lib/components/action/editor/action-editor.component.mjs +12 -12
  13. package/esm2022/lib/components/action/localization/data-language-dropdown.component.mjs +7 -7
  14. package/esm2022/lib/components/action/models/action-component.model.mjs +1 -1
  15. package/esm2022/lib/components/action/models/action-confirmation-service.model.mjs +1 -1
  16. package/esm2022/lib/components/action/models/action-execution.model.mjs +5 -5
  17. package/esm2022/lib/components/action/route/action-route.component.mjs +6 -6
  18. package/esm2022/lib/components/form/autocomplete/autocomplete.component.mjs +74 -65
  19. package/esm2022/lib/components/form/date-range/date-range.component.mjs +6 -7
  20. package/esm2022/lib/components/form/dropdown/dropdown.component.mjs +39 -39
  21. package/esm2022/lib/components/form/editor/form-editor.component.mjs +14 -16
  22. package/esm2022/lib/components/form/formly/fields/formly-field-action/formly-field-action.component.mjs +6 -6
  23. package/esm2022/lib/components/form/formly/fields/formly-field-autocomplete/formly-field-autocomplete.component.mjs +5 -5
  24. package/esm2022/lib/components/form/formly/fields/formly-field-custom/formly-custom-field-base.model.mjs +3 -3
  25. package/esm2022/lib/components/form/formly/fields/formly-field-custom/formly-field-custom.component.mjs +3 -3
  26. package/esm2022/lib/components/form/formly/fields/formly-field-dropdown/formly-field-dropdown.component.mjs +5 -5
  27. package/esm2022/lib/components/form/formly/fields/formly-field-fieldset/formly-field-fieldset.component.mjs +5 -6
  28. package/esm2022/lib/components/form/formly/fields/formly-field-input/formly-field-input.component.mjs +10 -13
  29. package/esm2022/lib/components/form/formly/fields/formly-field-label/formly-field-label.component.mjs +3 -3
  30. package/esm2022/lib/components/form/formly/fields/formly-field-lookup-dialog/formly-field-lookup-dialog.component.mjs +13 -13
  31. package/esm2022/lib/components/form/formly/fields/formly-field-table-dialog-form/formly-field-table-dialog-form.component.mjs +26 -15
  32. package/esm2022/lib/components/form/formly/fields/formly-field-table-dialog-multiselect/formly-field-table-dialog-multiselect.component.mjs +14 -14
  33. package/esm2022/lib/components/form/formly/fields/formly-field-tabs/formly-field-tabs.component.mjs +5 -6
  34. package/esm2022/lib/components/form/formly/wrappers/formly-field-no-label-wrapper/formly-field-no-label-wrapper.component.mjs +5 -6
  35. package/esm2022/lib/components/form/formly/wrappers/formly-field-wrapper/formly-field-wrapper.component.mjs +39 -18
  36. package/esm2022/lib/components/layout/breadcrumb.component.mjs +4 -4
  37. package/esm2022/lib/components/layout/footer.component.mjs +4 -4
  38. package/esm2022/lib/components/layout/main-layout.component.mjs +8 -8
  39. package/esm2022/lib/components/layout/menu-item.component.mjs +8 -8
  40. package/esm2022/lib/components/layout/menu.component.mjs +7 -7
  41. package/esm2022/lib/components/layout/services/main-layout.component.service.mjs +4 -4
  42. package/esm2022/lib/components/layout/topbar-user.component.mjs +9 -9
  43. package/esm2022/lib/components/layout/topbar.component.mjs +8 -8
  44. package/esm2022/lib/components/layout/version.component.mjs +11 -11
  45. package/esm2022/lib/components/layoutV2/breadcrumb.component.mjs +6 -6
  46. package/esm2022/lib/components/layoutV2/footer.component.mjs +3 -3
  47. package/esm2022/lib/components/layoutV2/main-layout.component.mjs +14 -11
  48. package/esm2022/lib/components/layoutV2/menu-item.component.mjs +12 -9
  49. package/esm2022/lib/components/layoutV2/menu.component.mjs +5 -6
  50. package/esm2022/lib/components/layoutV2/model/layout-state.model.mjs +1 -1
  51. package/esm2022/lib/components/layoutV2/services/main-layout.component.service.mjs +30 -21
  52. package/esm2022/lib/components/layoutV2/services/menu.service.mjs +3 -3
  53. package/esm2022/lib/components/layoutV2/sidebar.component.mjs +18 -9
  54. package/esm2022/lib/components/layoutV2/topbar-user.component.mjs +6 -6
  55. package/esm2022/lib/components/layoutV2/topbar.component.mjs +6 -7
  56. package/esm2022/lib/components/layoutV2/version.component.mjs +11 -11
  57. package/esm2022/lib/components/pages/error/error.page.component.mjs +4 -4
  58. package/esm2022/lib/components/pages/not-found/not-found.page.component.mjs +4 -4
  59. package/esm2022/lib/components/tableview/index.mjs +1 -2
  60. package/esm2022/lib/components/tableview/models/table.event.mjs +1 -1
  61. package/esm2022/lib/components/tableview/route/tableview-route.abstract.component.mjs +18 -18
  62. package/esm2022/lib/components/tableview/route/tableview-route.component.mjs +5 -5
  63. package/esm2022/lib/components/tableview/table/column-filter-full/column-filter-full.component.mjs +8 -12
  64. package/esm2022/lib/components/tableview/table/column-value/column-value.component.mjs +9 -32
  65. package/esm2022/lib/components/tableview/table/table.component.mjs +20 -25
  66. package/esm2022/lib/components/tableview/tableview.component.mjs +8 -10
  67. package/esm2022/lib/data-providers/base.data-provider.mjs +43 -12
  68. package/esm2022/lib/data-providers/editor.data-provider.mjs +82 -14
  69. package/esm2022/lib/data-providers/lookup.data-provider.mjs +38 -9
  70. package/esm2022/lib/data-providers/table.data-provider.mjs +41 -14
  71. package/esm2022/lib/data-providers/tableview-crud.data-provider.mjs +14 -6
  72. package/esm2022/lib/data-providers/tableview.data-provider.mjs +89 -29
  73. package/esm2022/lib/descriptors/action/action-confirmation.descriptor.mjs +2 -2
  74. package/esm2022/lib/descriptors/action/action-editor.descriptor.mjs +262 -0
  75. package/esm2022/lib/descriptors/action/action-link.descriptor.mjs +90 -0
  76. package/esm2022/lib/descriptors/action/action.descriptor.mjs +91 -352
  77. package/esm2022/lib/descriptors/action/index.mjs +3 -1
  78. package/esm2022/lib/descriptors/editor/editor.descriptor.mjs +215 -102
  79. package/esm2022/lib/descriptors/editor/field-action.descriptor.mjs +50 -0
  80. package/esm2022/lib/descriptors/editor/field-base.descriptor.mjs +293 -0
  81. package/esm2022/lib/descriptors/editor/field-group.descriptor.mjs +97 -0
  82. package/esm2022/lib/descriptors/editor/field-lookup.descriptor.mjs +211 -0
  83. package/esm2022/lib/descriptors/editor/field-many.descriptor.mjs +153 -0
  84. package/esm2022/lib/descriptors/editor/field.descriptor.mjs +81 -852
  85. package/esm2022/lib/descriptors/editor/index.mjs +6 -1
  86. package/esm2022/lib/descriptors/editor/internal/editor-fields.model.mjs +2 -0
  87. package/esm2022/lib/descriptors/editor/internal/editor.model.mjs +2 -0
  88. package/esm2022/lib/descriptors/filter/filter-lookup.descriptor.mjs +210 -0
  89. package/esm2022/lib/descriptors/filter/filter.descriptor.mjs +2 -208
  90. package/esm2022/lib/descriptors/filter/index.mjs +2 -1
  91. package/esm2022/lib/descriptors/interfaces/lookup-descriptor.interface.mjs +1 -1
  92. package/esm2022/lib/descriptors/model/index.mjs +2 -0
  93. package/esm2022/lib/descriptors/model/model.descriptor.mjs +70 -0
  94. package/esm2022/lib/descriptors/table/column.descriptor.mjs +38 -49
  95. package/esm2022/lib/descriptors/table/internal/table-columns.model.mjs +2 -0
  96. package/esm2022/lib/descriptors/table/internal/table.model.mjs +2 -0
  97. package/esm2022/lib/descriptors/table/table.descriptor.mjs +143 -124
  98. package/esm2022/lib/descriptors/tableview/internal/tableview.model.mjs +2 -0
  99. package/esm2022/lib/descriptors/tableview/tableview.descriptor.mjs +240 -131
  100. package/esm2022/lib/directives/component.directive.mjs +11 -11
  101. package/esm2022/lib/directives/dialog-keydown-handler.directive.mjs +3 -3
  102. package/esm2022/lib/directives/template.directive.mjs +9 -9
  103. package/esm2022/lib/helpers/coercion.mjs +45 -0
  104. package/esm2022/lib/models/class.model.mjs +2 -0
  105. package/esm2022/lib/models/enum.model.mjs +1 -1
  106. package/esm2022/lib/models/index.mjs +4 -1
  107. package/esm2022/lib/models/radio.model.mjs +2 -0
  108. package/esm2022/lib/models/tableview-attr.model.mjs +1 -1
  109. package/esm2022/lib/models/type-registry.model.mjs +2 -0
  110. package/esm2022/lib/models/view-container.model.mjs +1 -1
  111. package/esm2022/lib/pipes/boolean.pipe.mjs +3 -3
  112. package/esm2022/lib/pipes/class-map.pipe.mjs +3 -3
  113. package/esm2022/lib/pipes/enum.pipe.mjs +6 -6
  114. package/esm2022/lib/pipes/enumerate-async.pipe.mjs +5 -5
  115. package/esm2022/lib/pipes/enumerate.pipe.mjs +5 -5
  116. package/esm2022/lib/pipes/getter.pipe.mjs +5 -5
  117. package/esm2022/lib/pipes/i18n-property.pipe.mjs +4 -4
  118. package/esm2022/lib/pipes/json-path.pipe.mjs +3 -3
  119. package/esm2022/lib/pipes/locale-default-row-class.pipe.mjs +5 -5
  120. package/esm2022/lib/pipes/parametrize.pipe.mjs +3 -3
  121. package/esm2022/lib/pipes/template.pipe.mjs +4 -4
  122. package/esm2022/lib/provide-commons.mjs +4 -4
  123. package/esm2022/lib/registry/type.registry.mjs +114 -0
  124. package/esm2022/lib/router/models/router.model.mjs +1 -1
  125. package/esm2022/lib/router/tableview-route-builder.mjs +5 -5
  126. package/esm2022/lib/security/authorization.service.mjs +9 -11
  127. package/esm2022/lib/services/action-executor.service.mjs +14 -12
  128. package/esm2022/lib/services/commons-init.service.mjs +3 -3
  129. package/esm2022/lib/services/commons.service.mjs +6 -5
  130. package/esm2022/lib/services/mng-localstorage-config.service.mjs +4 -4
  131. package/esm2022/lib/services/navigation.service.mjs +5 -5
  132. package/esm2022/lib/services/router.service.mjs +4 -4
  133. package/esm2022/lib/services/version.service.mjs +5 -5
  134. package/esm2022/lib/services/view-container.component.service.mjs +5 -5
  135. package/esm2022/lib/styles/styles.util.mjs +1 -1
  136. package/esm2022/lib/types/action-descriptor.types.mjs +2 -0
  137. package/esm2022/lib/types/data-provider.types.mjs +2 -0
  138. package/esm2022/lib/types/getter.type.mjs +2 -0
  139. package/esm2022/lib/types/index.mjs +5 -2
  140. package/esm2022/lib/types/localstorage-config-value.type.mjs +2 -0
  141. package/esm2022/lib/types/type.decorator.mjs +4 -14
  142. package/esm2022/lib/types/type.model.mjs +1 -1
  143. package/esm2022/lib/utils/action-data-provider.util.mjs +14 -8
  144. package/esm2022/lib/utils/decorator-metadata.util.mjs +61 -0
  145. package/esm2022/lib/utils/editor-formly.util.mjs +6 -5
  146. package/esm2022/lib/utils/enum.util.mjs +1 -1
  147. package/esm2022/lib/utils/export.util.mjs +5 -4
  148. package/esm2022/lib/utils/i18n.util.mjs +22 -22
  149. package/esm2022/lib/utils/index.mjs +2 -3
  150. package/esm2022/lib/utils/model.util.mjs +40 -36
  151. package/esm2022/lib/utils/notification.util.mjs +1 -1
  152. package/esm2022/lib/utils/tableview.util.mjs +17 -17
  153. package/fesm2022/mediusinc-mng-commons.mjs +11491 -11384
  154. package/fesm2022/mediusinc-mng-commons.mjs.map +1 -1
  155. package/index.d.ts +3 -2
  156. package/lib/api/models/filter-param.model.d.ts +3 -3
  157. package/lib/api/models/index.d.ts +0 -2
  158. package/lib/api/models/query-param.model.d.ts +3 -3
  159. package/lib/api/models/query-result.model.d.ts +3 -3
  160. package/lib/api/services/api.abstract.service.d.ts +1 -1
  161. package/lib/api/utils/index.d.ts +1 -1
  162. package/lib/api/utils/object-serializer.util.d.ts +3 -19
  163. package/lib/components/action/action.component.d.ts +5 -5
  164. package/lib/components/action/editor/action-editor.component.d.ts +7 -7
  165. package/lib/components/action/localization/data-language-dropdown.component.d.ts +6 -6
  166. package/lib/components/action/models/action-component.model.d.ts +4 -4
  167. package/lib/components/action/models/action-confirmation-service.model.d.ts +2 -2
  168. package/lib/components/action/models/action-execution.model.d.ts +14 -14
  169. package/lib/components/action/route/action-route.component.d.ts +2 -2
  170. package/lib/components/form/autocomplete/autocomplete.component.d.ts +15 -18
  171. package/lib/components/form/dropdown/dropdown.component.d.ts +9 -9
  172. package/lib/components/form/editor/form-editor.component.d.ts +8 -11
  173. package/lib/components/form/formly/fields/formly-field-input/formly-field-input.component.d.ts +4 -0
  174. package/lib/components/form/formly/fields/formly-field-table-dialog-form/formly-field-table-dialog-form.component.d.ts +4 -4
  175. package/lib/components/form/formly/wrappers/formly-field-wrapper/formly-field-wrapper.component.d.ts +3 -2
  176. package/lib/components/layout/topbar-user.component.d.ts +2 -2
  177. package/lib/components/layout/version.component.d.ts +2 -2
  178. package/lib/components/layoutV2/model/layout-state.model.d.ts +8 -9
  179. package/lib/components/layoutV2/services/main-layout.component.service.d.ts +1 -1
  180. package/lib/components/layoutV2/version.component.d.ts +2 -2
  181. package/lib/components/tableview/index.d.ts +0 -1
  182. package/lib/components/tableview/route/tableview-route.abstract.component.d.ts +20 -20
  183. package/lib/components/tableview/route/tableview-route.component.d.ts +7 -7
  184. package/lib/components/tableview/table/table.component.d.ts +9 -9
  185. package/lib/components/tableview/tableview.component.d.ts +8 -8
  186. package/lib/data-providers/base.data-provider.d.ts +30 -12
  187. package/lib/data-providers/editor.data-provider.d.ts +86 -23
  188. package/lib/data-providers/lookup.data-provider.d.ts +24 -11
  189. package/lib/data-providers/table.data-provider.d.ts +30 -17
  190. package/lib/data-providers/tableview-crud.data-provider.d.ts +8 -4
  191. package/lib/data-providers/tableview.data-provider.d.ts +41 -29
  192. package/lib/descriptors/action/action-confirmation.descriptor.d.ts +3 -3
  193. package/lib/descriptors/action/action-editor.descriptor.d.ts +115 -0
  194. package/lib/descriptors/action/action-link.descriptor.d.ts +34 -0
  195. package/lib/descriptors/action/action.descriptor.d.ts +74 -160
  196. package/lib/descriptors/action/index.d.ts +2 -0
  197. package/lib/descriptors/editor/editor.descriptor.d.ts +131 -79
  198. package/lib/descriptors/editor/field-action.descriptor.d.ts +23 -0
  199. package/lib/descriptors/editor/field-base.descriptor.d.ts +126 -0
  200. package/lib/descriptors/editor/field-group.descriptor.d.ts +42 -0
  201. package/lib/descriptors/editor/field-lookup.descriptor.d.ts +80 -0
  202. package/lib/descriptors/editor/field-many.descriptor.d.ts +63 -0
  203. package/lib/descriptors/editor/field.descriptor.d.ts +100 -326
  204. package/lib/descriptors/editor/index.d.ts +5 -0
  205. package/lib/descriptors/editor/internal/editor-fields.model.d.ts +32 -0
  206. package/lib/descriptors/editor/internal/editor.model.d.ts +15 -0
  207. package/lib/descriptors/filter/filter-lookup.descriptor.d.ts +69 -0
  208. package/lib/descriptors/filter/filter.descriptor.d.ts +9 -67
  209. package/lib/descriptors/filter/index.d.ts +1 -0
  210. package/lib/descriptors/interfaces/lookup-descriptor.interface.d.ts +11 -16
  211. package/lib/descriptors/model/model.descriptor.d.ts +22 -0
  212. package/lib/descriptors/table/column.descriptor.d.ts +45 -33
  213. package/lib/descriptors/table/internal/table-columns.model.d.ts +11 -0
  214. package/lib/descriptors/table/internal/table.model.d.ts +9 -0
  215. package/lib/descriptors/table/table.descriptor.d.ts +82 -71
  216. package/lib/descriptors/tableview/internal/tableview.model.d.ts +11 -0
  217. package/lib/descriptors/tableview/tableview.descriptor.d.ts +106 -74
  218. package/lib/directives/component.directive.d.ts +5 -6
  219. package/lib/directives/template.directive.d.ts +2 -3
  220. package/lib/helpers/coercion.d.ts +9 -0
  221. package/lib/models/class.model.d.ts +6 -0
  222. package/lib/models/enum.model.d.ts +3 -2
  223. package/lib/models/index.d.ts +3 -0
  224. package/lib/models/radio.model.d.ts +6 -0
  225. package/lib/models/tableview-attr.model.d.ts +2 -2
  226. package/lib/models/type-registry.model.d.ts +7 -0
  227. package/lib/models/view-container.model.d.ts +6 -6
  228. package/lib/pipes/getter.pipe.d.ts +2 -1
  229. package/lib/pipes/i18n-property.pipe.d.ts +1 -1
  230. package/lib/pipes/locale-default-row-class.pipe.d.ts +2 -2
  231. package/lib/registry/type.registry.d.ts +25 -0
  232. package/lib/router/models/router.model.d.ts +5 -5
  233. package/lib/router/tableview-route-builder.d.ts +6 -6
  234. package/lib/security/authorization.service.d.ts +4 -7
  235. package/lib/services/action-executor.service.d.ts +7 -7
  236. package/lib/services/mng-localstorage-config.service.d.ts +3 -3
  237. package/lib/services/view-container.component.service.d.ts +3 -3
  238. package/lib/styles/styles.util.d.ts +5 -5
  239. package/lib/types/action-descriptor.types.d.ts +4 -0
  240. package/lib/types/data-provider.types.d.ts +3 -0
  241. package/lib/types/getter.type.d.ts +2 -0
  242. package/lib/types/index.d.ts +4 -1
  243. package/lib/types/localstorage-config-value.type.d.ts +1 -0
  244. package/lib/types/type.decorator.d.ts +0 -2
  245. package/lib/types/type.model.d.ts +12 -2
  246. package/lib/utils/action-data-provider.util.d.ts +6 -5
  247. package/lib/utils/{type.util.d.ts → decorator-metadata.util.d.ts} +2 -26
  248. package/lib/utils/editor-formly.util.d.ts +2 -2
  249. package/lib/utils/enum.util.d.ts +2 -2
  250. package/lib/utils/export.util.d.ts +2 -2
  251. package/lib/utils/i18n.util.d.ts +10 -11
  252. package/lib/utils/index.d.ts +1 -2
  253. package/lib/utils/model.util.d.ts +5 -3
  254. package/lib/utils/notification.util.d.ts +4 -4
  255. package/lib/utils/tableview.util.d.ts +6 -6
  256. package/openapi/templates/model.mustache +15 -2
  257. package/openapi/templates/models.mustache +0 -44
  258. package/package.json +10 -10
  259. package/scss/mng-commons-dark-v2.scss +2 -2
  260. package/scss/mng-commons-light-v2.scss +1 -1
  261. package/scss/v2/theme/{theme-base/components/data → extensions}/_fullcalendar.scss +14 -15
  262. package/scss/v2/theme/theme-base/_colors.scss +11 -12
  263. package/scss/v2/theme/theme-base/_common.scss +8 -5
  264. package/scss/v2/theme/theme-base/_components.scss +93 -89
  265. package/scss/v2/theme/theme-base/_mixins.scss +205 -71
  266. package/scss/v2/theme/theme-base/components/button/_button.scss +80 -68
  267. package/scss/v2/theme/theme-base/components/button/_speeddial.scss +11 -1
  268. package/scss/v2/theme/theme-base/components/button/_splitbutton.scss +128 -161
  269. package/scss/v2/theme/theme-base/components/data/_carousel.scss +1 -1
  270. package/scss/v2/theme/theme-base/components/data/_datatable.scss +3 -3
  271. package/scss/v2/theme/theme-base/components/data/_dataview.scss +0 -9
  272. package/scss/v2/theme/theme-base/components/data/_filter.scss +5 -6
  273. package/scss/v2/theme/theme-base/components/data/_orderlist.scss +15 -4
  274. package/scss/v2/theme/theme-base/components/data/_organizationchart.scss +1 -1
  275. package/scss/v2/theme/theme-base/components/data/_picklist.scss +14 -3
  276. package/scss/v2/theme/theme-base/components/data/_timeline.scss +3 -6
  277. package/scss/v2/theme/theme-base/components/data/_tree.scss +7 -6
  278. package/scss/v2/theme/theme-base/components/data/_treetable.scss +3 -4
  279. package/scss/v2/theme/theme-base/components/file/_fileupload.scss +6 -0
  280. package/scss/v2/theme/theme-base/components/input/_autocomplete.scss +43 -24
  281. package/scss/v2/theme/theme-base/components/input/_calendar.scss +9 -5
  282. package/scss/v2/theme/theme-base/components/input/_cascadeselect.scss +25 -20
  283. package/scss/v2/theme/theme-base/components/input/_checkbox.scss +9 -5
  284. package/scss/v2/theme/theme-base/components/input/_chips.scss +24 -13
  285. package/scss/v2/theme/theme-base/components/input/_dropdown.scss +29 -13
  286. package/scss/v2/theme/theme-base/components/input/_editor.scss +7 -7
  287. package/scss/v2/theme/theme-base/components/input/_inputgroup.scss +1 -2
  288. package/scss/v2/theme/theme-base/components/input/_inputmask.scss +2 -2
  289. package/scss/v2/theme/theme-base/components/input/_inputnumber.scss +7 -7
  290. package/scss/v2/theme/theme-base/components/input/_inputswitch.scss +3 -3
  291. package/scss/v2/theme/theme-base/components/input/_inputtext.scss +4 -3
  292. package/scss/v2/theme/theme-base/components/input/_listbox.scss +23 -8
  293. package/scss/v2/theme/theme-base/components/input/_multiselect.scss +31 -27
  294. package/scss/v2/theme/theme-base/components/input/_radiobutton.scss +2 -2
  295. package/scss/v2/theme/theme-base/components/input/_rating.scss +33 -28
  296. package/scss/v2/theme/theme-base/components/input/_treeselect.scss +6 -6
  297. package/scss/v2/theme/theme-base/components/menu/_breadcrumb.scss +3 -3
  298. package/scss/v2/theme/theme-base/components/menu/_contextmenu.scss +8 -30
  299. package/scss/v2/theme/theme-base/components/menu/_dock.scss +11 -2
  300. package/scss/v2/theme/theme-base/components/menu/_megamenu.scss +14 -65
  301. package/scss/v2/theme/theme-base/components/menu/_menu.scss +5 -13
  302. package/scss/v2/theme/theme-base/components/menu/_menubar.scss +32 -80
  303. package/scss/v2/theme/theme-base/components/menu/_panelmenu.scss +52 -39
  304. package/scss/v2/theme/theme-base/components/menu/_slidemenu.scss +15 -20
  305. package/scss/v2/theme/theme-base/components/menu/_steps.scss +2 -2
  306. package/scss/v2/theme/theme-base/components/menu/_tabmenu.scss +1 -2
  307. package/scss/v2/theme/theme-base/components/menu/_tieredmenu.scss +10 -32
  308. package/scss/v2/theme/theme-base/components/messages/_message.scss +2 -2
  309. package/scss/v2/theme/theme-base/components/messages/_toast.scss +2 -3
  310. package/scss/v2/theme/theme-base/components/misc/_chip.scss +7 -3
  311. package/scss/v2/theme/theme-base/components/misc/_inplace.scss +0 -1
  312. package/scss/v2/theme/theme-base/components/misc/_terminal.scss +9 -8
  313. package/scss/v2/theme/theme-base/components/multimedia/_galleria.scss +6 -0
  314. package/scss/v2/theme/theme-base/components/overlay/_confirmpopup.scss +3 -5
  315. package/scss/v2/theme/theme-base/components/panel/_accordion.scss +4 -4
  316. package/scss/v2/theme/theme-base/components/panel/_fieldset.scss +1 -1
  317. package/scss/v2/theme/theme-base/components/panel/_panel.scss +10 -5
  318. package/scss/v2/theme/theme-base/components/panel/_tabview.scss +6 -2
  319. package/scss/v2/theme/theme-dark/_variables.scss +756 -765
  320. package/scss/v2/theme/theme-dark/blue/theme.scss +1 -0
  321. package/scss/v2/theme/theme-light/_variables.scss +81 -94
  322. package/scss/v2/theme/theme-light/blue/theme.scss +1 -0
  323. package/esm2022/lib/api/models/mappers.mjs +0 -13
  324. package/esm2022/lib/api/models/serialization.model.mjs +0 -2
  325. package/esm2022/lib/components/tableview/table/column-filter/column-filter.component.mjs +0 -121
  326. package/esm2022/lib/descriptors/index.mjs +0 -2
  327. package/esm2022/lib/descriptors/model.descriptor.mjs +0 -45
  328. package/esm2022/lib/mng-commons.module.mjs +0 -472
  329. package/esm2022/lib/types/mng-localstorage-config-value.type.mjs +0 -2
  330. package/esm2022/lib/utils/coercion.util.mjs +0 -6
  331. package/esm2022/lib/utils/type.util.mjs +0 -94
  332. package/lib/api/models/mappers.d.ts +0 -6
  333. package/lib/api/models/serialization.model.d.ts +0 -9
  334. package/lib/components/tableview/table/column-filter/column-filter.component.d.ts +0 -37
  335. package/lib/descriptors/model.descriptor.d.ts +0 -18
  336. package/lib/mng-commons.module.d.ts +0 -105
  337. package/lib/types/mng-localstorage-config-value.type.d.ts +0 -1
  338. package/lib/utils/coercion.util.d.ts +0 -2
  339. package/openapi/templates/serializer-registration/model.mustache +0 -97
  340. package/openapi/templates/serializer-registration/models.mustache +0 -6
  341. /package/lib/descriptors/{index.d.ts → model/index.d.ts} +0 -0
@@ -1,11 +1,12 @@
1
1
  import { OnInit } from '@angular/core';
2
2
  import { FieldWrapper } from '@ngx-formly/core';
3
- import { ActionDescriptor } from '../../../../../descriptors/action';
3
+ import { ActionDescriptorInst } from '../../../../../descriptors/action';
4
4
  import * as i0 from "@angular/core";
5
5
  export declare class MngFormlyFieldWrapperComponent extends FieldWrapper implements OnInit {
6
- localizationAction: ActionDescriptor<unknown>;
6
+ localizationAction: ActionDescriptorInst<any>;
7
7
  ngOnInit(): void;
8
8
  private addMissingTranslationHelperText;
9
+ private createLocalizationTableview;
9
10
  static ɵfac: i0.ɵɵFactoryDeclaration<MngFormlyFieldWrapperComponent, never>;
10
11
  static ɵcmp: i0.ɵɵComponentDeclaration<MngFormlyFieldWrapperComponent, "mng-formly-field-wrapper", never, {}, {}, never, never, true, never>;
11
12
  }
@@ -5,14 +5,14 @@ import { MngCommonsService } from '../../services';
5
5
  import { MngMainLayoutComponentService } from './services';
6
6
  import * as i0 from "@angular/core";
7
7
  export declare class MngTopbarUserComponent implements OnInit, OnDestroy {
8
+ elementRef: ElementRef;
8
9
  mngCommons: MngCommonsService;
9
10
  mainLayoutService: MngMainLayoutComponentService;
10
- elementRef: ElementRef;
11
11
  user?: IUser;
12
12
  userRoles$: Observable<string[]>;
13
13
  hrefJsVoid: import("@angular/platform-browser").SafeUrl;
14
14
  private subscriptions;
15
- constructor(mngCommons: MngCommonsService, mainLayoutService: MngMainLayoutComponentService, elementRef: ElementRef);
15
+ constructor(elementRef: ElementRef, mngCommons: MngCommonsService, mainLayoutService: MngMainLayoutComponentService);
16
16
  ngOnInit(): void;
17
17
  ngOnDestroy(): void;
18
18
  logout(user: IUser | undefined, event: Event): void;
@@ -4,15 +4,15 @@ import { JsonPathPipe } from '../../pipes';
4
4
  import { MngVersionService } from '../../services';
5
5
  import * as i0 from "@angular/core";
6
6
  export declare class MngVersionComponent implements OnInit {
7
- private versionService;
8
7
  private jsonPathPipe;
8
+ private versionService;
9
9
  initVersion?: VersionConfigType;
10
10
  displayName?: string;
11
11
  displayVersion?: string;
12
12
  versions?: Array<VersionConfig>;
13
13
  private loadingSubject;
14
14
  loading$: import("rxjs").Observable<boolean>;
15
- constructor(versionService: MngVersionService, jsonPathPipe: JsonPathPipe);
15
+ constructor(jsonPathPipe: JsonPathPipe, versionService: MngVersionService);
16
16
  ngOnInit(): void;
17
17
  static ɵfac: i0.ɵɵFactoryDeclaration<MngVersionComponent, never>;
18
18
  static ɵcmp: i0.ɵɵComponentDeclaration<MngVersionComponent, "mng-version", never, { "initVersion": { "alias": "version"; "required": false; }; }, {}, never, never, true, never>;
@@ -1,11 +1,10 @@
1
- import { BehaviorSubject } from 'rxjs';
2
1
  export interface LayoutState {
3
- staticMenuDesktopInactive$: BehaviorSubject<boolean>;
4
- overlayMenuActive$: BehaviorSubject<boolean>;
5
- rightMenuActive$: BehaviorSubject<boolean>;
6
- configSidebarVisible$: BehaviorSubject<boolean>;
7
- staticMenuMobileActive$: BehaviorSubject<boolean>;
8
- menuHoverActive$: BehaviorSubject<boolean>;
9
- sidebarActive$: BehaviorSubject<boolean>;
10
- anchored$: BehaviorSubject<boolean>;
2
+ staticMenuDesktopInactive: boolean;
3
+ overlayMenuActive: boolean;
4
+ rightMenuActive: boolean;
5
+ configSidebarVisible: boolean;
6
+ staticMenuMobileActive: boolean;
7
+ menuHoverActive: boolean;
8
+ sidebarActive: boolean;
9
+ anchored: boolean;
11
10
  }
@@ -2,7 +2,7 @@ import { LayoutState } from '../model';
2
2
  import * as i0 from "@angular/core";
3
3
  export declare class MngMainLayoutComponentV2Service {
4
4
  private config;
5
- state: LayoutState;
5
+ state: import("@angular/core").WritableSignal<LayoutState>;
6
6
  private overlayOpen;
7
7
  overlayOpen$: import("rxjs").Observable<any>;
8
8
  onMenuToggle(): void;
@@ -4,15 +4,15 @@ import { JsonPathPipe } from '../../pipes';
4
4
  import { MngVersionService } from '../../services';
5
5
  import * as i0 from "@angular/core";
6
6
  export declare class MngVersionV2Component implements OnInit {
7
- private versionService;
8
7
  private jsonPathPipe;
8
+ private versionService;
9
9
  initVersion?: VersionConfigType;
10
10
  displayName?: string;
11
11
  displayVersion?: string;
12
12
  versions?: Array<VersionConfig>;
13
13
  private loadingSubject;
14
14
  loading$: import("rxjs").Observable<boolean>;
15
- constructor(versionService: MngVersionService, jsonPathPipe: JsonPathPipe);
15
+ constructor(jsonPathPipe: JsonPathPipe, versionService: MngVersionService);
16
16
  ngOnInit(): void;
17
17
  static ɵfac: i0.ɵɵFactoryDeclaration<MngVersionV2Component, never>;
18
18
  static ɵcmp: i0.ɵɵComponentDeclaration<MngVersionV2Component, "mng-version-v2", never, { "initVersion": { "alias": "version"; "required": false; }; }, {}, never, never, true, never>;
@@ -2,6 +2,5 @@ export * from './tableview.component';
2
2
  export * from './route/tableview-route.abstract.component';
3
3
  export * from './route/tableview-route.component';
4
4
  export * from './table/table.component';
5
- export * from './table/column-filter/column-filter.component';
6
5
  export * from './table/column-filter-full/column-filter-full.component';
7
6
  export * from './table/column-value/column-value.component';
@@ -2,35 +2,35 @@ import { OnInit } from '@angular/core';
2
2
  import { ActivatedRoute } from '@angular/router';
3
3
  import { TranslateService } from '@ngx-translate/core';
4
4
  import { ITableviewDataProvider } from '../../../data-providers';
5
- import { ModelDescriptor } from '../../../descriptors';
6
- import { ActionDeleteDescriptor, ActionDescriptor, ActionEditorAddDescriptor, ActionEditorDetailsDescriptor, ActionEditorEditDescriptor, ActionLinkDescriptor } from '../../../descriptors/action';
7
- import { EditorDescriptor } from '../../../descriptors/editor';
8
- import { TableviewDescriptor } from '../../../descriptors/tableview';
5
+ import { ActionDeleteDescriptorInst, ActionDescriptorInst, ActionEditorAddDescriptorInst, ActionEditorDetailsDescriptorInst, ActionEditorEditDescriptorInst, ActionLinkDescriptorInst } from '../../../descriptors/action';
6
+ import { EditorDescriptorInst } from '../../../descriptors/editor';
7
+ import { ModelDescriptor } from '../../../descriptors/model';
8
+ import { TableviewDescriptorInst } from '../../../descriptors/tableview';
9
9
  import { MngRouterData } from '../../../router/models';
10
10
  import * as i0 from "@angular/core";
11
- export declare abstract class AMngTableviewRouteComponent<T, S> implements OnInit {
12
- descriptor: TableviewDescriptor<T>;
11
+ export declare abstract class AMngTableviewRouteComponent<T = any, S = undefined> implements OnInit {
12
+ descriptor: TableviewDescriptorInst<T>;
13
13
  dataProvider: ITableviewDataProvider<T, S>;
14
- actions: Array<ActionDescriptor<T>>;
14
+ actions: Array<ActionDescriptorInst<any>>;
15
15
  protected route: ActivatedRoute;
16
16
  protected translateService: TranslateService;
17
17
  constructor();
18
18
  protected get routeData(): MngRouterData;
19
19
  ngOnInit(): void;
20
- protected abstract createTableviewDescriptor(): TableviewDescriptor<T>;
20
+ protected abstract createTableviewDescriptor(): TableviewDescriptorInst<T>;
21
21
  protected abstract createTableviewDataProvider(): ITableviewDataProvider<T, S>;
22
- protected createActionDescriptors(): Array<ActionDescriptor<T>>;
23
- protected createActionDescriptorForDetails(descriptor?: EditorDescriptor<T>): ActionEditorDetailsDescriptor<T> | null;
24
- protected createActionDescriptorForAdd(descriptor?: EditorDescriptor<T>): ActionEditorAddDescriptor<T> | null;
25
- protected createActionDescriptorForEdit(descriptor?: EditorDescriptor<T>): ActionEditorEditDescriptor<T> | null;
26
- protected createActionDescriptorForDetailsEditLink(descriptor: ModelDescriptor<T> | undefined, editDescriptor: ActionEditorEditDescriptor<T> | null): ActionLinkDescriptor<T> | null;
27
- protected createActionDescriptorForDetailsDelete(): ActionDescriptor<T> | null;
28
- protected createActionDescriptorForDelete(descriptor?: ModelDescriptor<T>): ActionDeleteDescriptor<T> | null;
29
- protected createActionDescriptorForExport(descriptor?: ModelDescriptor<T>): ActionDescriptor<T> | null;
30
- protected createActionDescriptorForExportJson(descriptor?: ModelDescriptor<T>): ActionDescriptor<T>;
31
- protected createActionDescriptorForExportCsv(descriptor?: ModelDescriptor<T>): ActionDescriptor<T>;
32
- protected createActionDescriptorForRefresh(descriptor?: ModelDescriptor<T>): ActionDescriptor<T> | null;
33
- protected createActionDescriptorForDataTranslate(descriptor?: ModelDescriptor<T>): ActionDescriptor<T> | null;
22
+ protected createActionDescriptors(): Array<ActionDescriptorInst<any>>;
23
+ protected createActionDescriptorForDetails(descriptor?: EditorDescriptorInst<T>): ActionEditorDetailsDescriptorInst<T> | null;
24
+ protected createActionDescriptorForAdd(descriptor?: EditorDescriptorInst<T>): ActionEditorAddDescriptorInst<T> | null;
25
+ protected createActionDescriptorForEdit(descriptor?: EditorDescriptorInst<T>): ActionEditorEditDescriptorInst<T> | null;
26
+ protected createActionDescriptorForDetailsEditLink(descriptor: ModelDescriptor<T, import("@mediusinc/mng-commons").ClassOptType<T>> | undefined, editDescriptor: ActionEditorEditDescriptorInst<T> | null): ActionLinkDescriptorInst<T> | null;
27
+ protected createActionDescriptorForDetailsDelete(): ActionDescriptorInst<T> | null;
28
+ protected createActionDescriptorForDelete(descriptor?: ModelDescriptor<T>): ActionDeleteDescriptorInst<T> | null;
29
+ protected createActionDescriptorForExport(descriptor?: ModelDescriptor<T>): ActionDescriptorInst<T> | null;
30
+ protected createActionDescriptorForExportJson(descriptor?: ModelDescriptor<T>): ActionDescriptorInst<T>;
31
+ protected createActionDescriptorForExportCsv(descriptor?: ModelDescriptor<T>): ActionDescriptorInst<T>;
32
+ protected createActionDescriptorForRefresh(descriptor?: ModelDescriptor<T>): ActionDescriptorInst<T> | null;
33
+ protected createActionDescriptorForDataTranslate(descriptor?: ModelDescriptor<T>): ActionDescriptorInst<T> | null;
34
34
  static ɵfac: i0.ɵɵFactoryDeclaration<AMngTableviewRouteComponent<any, any>, never>;
35
35
  static ɵdir: i0.ɵɵDirectiveDeclaration<AMngTableviewRouteComponent<any, any>, never, never, {}, {}, never, never, true, never>;
36
36
  }
@@ -1,18 +1,18 @@
1
1
  import { OnInit } from '@angular/core';
2
2
  import { ITableviewDataProvider } from '../../../data-providers';
3
- import { ActionDescriptor } from '../../../descriptors/action';
4
- import { TableviewDescriptor } from '../../../descriptors/tableview';
3
+ import { ActionDescriptorInst } from '../../../descriptors/action';
4
+ import { TableviewDescriptorInst } from '../../../descriptors/tableview';
5
5
  import { MngTableviewComponent } from '../tableview.component';
6
6
  import { AMngTableviewRouteComponent } from './tableview-route.abstract.component';
7
7
  import * as i0 from "@angular/core";
8
- export declare class MngTableviewRouteComponent<T, S> extends AMngTableviewRouteComponent<T, S> implements OnInit {
9
- descriptorInit?: TableviewDescriptor<T>;
8
+ export declare class MngTableviewRouteComponent<T, S = undefined> extends AMngTableviewRouteComponent<T, S> implements OnInit {
9
+ descriptorInit?: TableviewDescriptorInst<T>;
10
10
  dataProviderInit?: ITableviewDataProvider<T, S>;
11
- actionsInit?: Array<ActionDescriptor<T>>;
11
+ actionsInit?: Array<ActionDescriptorInst<T>>;
12
12
  tableviewComponent?: MngTableviewComponent<T, S>;
13
- protected createTableviewDescriptor(): TableviewDescriptor<T>;
13
+ protected createTableviewDescriptor(): TableviewDescriptorInst<T>;
14
14
  protected createTableviewDataProvider(): ITableviewDataProvider<T, S>;
15
- protected createActionDescriptors(): Array<ActionDescriptor<T>>;
15
+ protected createActionDescriptors(): Array<ActionDescriptorInst<T>>;
16
16
  reloadTable(): void;
17
17
  static ɵfac: i0.ɵɵFactoryDeclaration<MngTableviewRouteComponent<any, any>, never>;
18
18
  static ɵcmp: i0.ɵɵComponentDeclaration<MngTableviewRouteComponent<any, any>, "mng-tableview-route", never, { "descriptorInit": { "alias": "descriptor"; "required": false; }; "dataProviderInit": { "alias": "dataProvider"; "required": false; }; "actionsInit": { "alias": "actions"; "required": false; }; }, {}, never, never, true, never>;
@@ -6,8 +6,8 @@ import { Table, TableLazyLoadEvent } from 'primeng/table';
6
6
  import { Observable } from 'rxjs';
7
7
  import { MediusQueryResult } from '../../../api/models';
8
8
  import { ITableDataProvider } from '../../../data-providers';
9
- import { ActionDescriptor } from '../../../descriptors/action';
10
- import { ColumnDescriptor, TableDescriptor } from '../../../descriptors/table';
9
+ import { ActionDescriptorInst } from '../../../descriptors/action';
10
+ import { ColumnDescriptor, TableDescriptorInst } from '../../../descriptors/table';
11
11
  import { MngComponentDirective, MngTemplateDirective } from '../../../directives';
12
12
  import { IViewContainer } from '../../../models';
13
13
  import { MngActionExecutorService, MngCommonsService, MngLocalStorageService, MngViewContainerComponentService } from '../../../services';
@@ -15,7 +15,7 @@ import { ActionInstance } from '../../action/models';
15
15
  import { MngTableCellClickEvent, MngTableLoadEvent } from '../models';
16
16
  import { ColumnWithPreferences } from './models';
17
17
  import * as i0 from "@angular/core";
18
- export declare class MngTableComponent<T, S> implements OnInit, OnChanges, AfterContentInit, OnDestroy {
18
+ export declare class MngTableComponent<T = any, S = any> implements OnInit, OnChanges, AfterContentInit, OnDestroy {
19
19
  private injector;
20
20
  private router;
21
21
  private route;
@@ -26,16 +26,16 @@ export declare class MngTableComponent<T, S> implements OnInit, OnChanges, After
26
26
  private localStorageService;
27
27
  readonly cmpTypeName = "MngTableComponent";
28
28
  private readonly logger;
29
- initialDescriptor: TableDescriptor<T>;
30
- descriptor?: TableDescriptor<T>;
29
+ initialDescriptor: TableDescriptorInst<T>;
30
+ descriptor?: TableDescriptorInst<T>;
31
31
  items?: Observable<Array<T>> | Array<T>;
32
32
  queryResult?: Observable<MediusQueryResult<T>> | MediusQueryResult<T>;
33
33
  loading?: Observable<boolean> | boolean;
34
- dataProvider?: ITableDataProvider<T, any>;
34
+ dataProvider?: ITableDataProvider;
35
35
  useQueryParams: boolean;
36
36
  selectionMode: 'single' | 'multiple';
37
37
  selectionEnabled: boolean;
38
- actions: Array<ActionDescriptor<T>>;
38
+ actions: Array<ActionDescriptorInst<any>>;
39
39
  isColumnClickable?: boolean;
40
40
  viewContainerInit?: IViewContainer<T, S>;
41
41
  captionComponent?: Type<any>;
@@ -93,8 +93,8 @@ export declare class MngTableComponent<T, S> implements OnInit, OnChanges, After
93
93
  private isSortChanged;
94
94
  private filterDescriptors;
95
95
  showInlineActionsColumn: boolean;
96
- rowClickActions: ActionDescriptor<T>[];
97
- rowInlineActions: ActionDescriptor<T>[];
96
+ rowClickActions: ActionDescriptorInst<T>[];
97
+ rowInlineActions: ActionDescriptorInst<T>[];
98
98
  private routerIsNavigationOutsideInProgress;
99
99
  viewContainer?: IViewContainer<T, S>;
100
100
  private subscriptions;
@@ -2,8 +2,8 @@ import { AfterContentInit, OnDestroy, OnInit, QueryList, TemplateRef } from '@an
2
2
  import { Message, MessageService } from 'primeng/api';
3
3
  import { MediusQueryParam } from '../../api/models';
4
4
  import { IDataProvider, ITableviewDataProvider } from '../../data-providers';
5
- import { ActionDescriptor } from '../../descriptors/action';
6
- import { TableviewDescriptor } from '../../descriptors/tableview';
5
+ import { ActionDescriptorInst } from '../../descriptors/action';
6
+ import { TableviewDescriptorInst } from '../../descriptors/tableview';
7
7
  import { MngTemplateDirective } from '../../directives';
8
8
  import { IViewContainer } from '../../models';
9
9
  import { MngViewContainerComponentService } from '../../services';
@@ -13,13 +13,13 @@ import * as i0 from "@angular/core";
13
13
  export declare class MngTableviewComponent<T, S> implements OnInit, OnDestroy, AfterContentInit, IViewContainer<T, S> {
14
14
  private messageService;
15
15
  private viewContainerService;
16
- descriptor: TableviewDescriptor<T>;
16
+ descriptor: TableviewDescriptorInst<T>;
17
17
  dataProvider?: ITableviewDataProvider<T, S>;
18
- actions: Array<ActionDescriptor<T>>;
18
+ actions: Array<ActionDescriptorInst<any>>;
19
19
  tableComponent?: MngTableComponent<T, S>;
20
- tableActions: ActionDescriptor<T>[];
21
- toolbarLeftActions: ActionDescriptor<T>[];
22
- toolbarRightActions: ActionDescriptor<T>[];
20
+ tableActions: ActionDescriptorInst<T>[];
21
+ toolbarLeftActions: ActionDescriptorInst<T>[];
22
+ toolbarRightActions: ActionDescriptorInst<T>[];
23
23
  tableQueryParam?: MediusQueryParam;
24
24
  private subscriptions;
25
25
  hasItemSelectionAction: boolean;
@@ -35,7 +35,7 @@ export declare class MngTableviewComponent<T, S> implements OnInit, OnDestroy, A
35
35
  ngOnDestroy(): void;
36
36
  getMessageService(): MessageService;
37
37
  getDataProvider(): IDataProvider<T, S> | undefined;
38
- getActions(): ActionDescriptor<T>[];
38
+ getActions(): ActionDescriptorInst<any, any>[];
39
39
  reloadTable(): void;
40
40
  onTableLoad(event: MngTableLoadEvent): void;
41
41
  selectionChange(selectedItems: Array<T>): void;
@@ -1,14 +1,32 @@
1
- import { Type } from '@angular/core';
2
- import { ClassType } from '../types';
3
- export interface IDataProvider<T, S> {
4
- modelType: ClassType<T> | null;
5
- serviceType?: Type<S>;
1
+ import { ClassOptType, ClassType, ServiceClassOptType, ServiceClassType } from '../types';
2
+ export type IDataProvider<ModelType = any, ServiceType = any, CT = ClassOptType<ModelType>, ST = ServiceClassOptType<ServiceType>> = {
3
+ classType: CT;
4
+ serviceType: ST;
5
+ isDataProvider: boolean;
6
+ };
7
+ /**
8
+ * A base data provider class used for handling data operations.
9
+ *
10
+ * @tparam Model - The type of data this data provider will handle.
11
+ * @tparam Service - The type of service used by this data provider (optional).
12
+ * @tparam ModelClass - The model type for the data provider (optional).
13
+ * @tparam ServiceClass - The service type for the data provider (optional).
14
+ */
15
+ export declare class DataProviderInst<Model, Service = any, ModelClass = ClassOptType<Model>, ServiceClass = ServiceClassOptType<Service>> implements IDataProvider<Model, Service, ModelClass, ServiceClass> {
16
+ readonly classType: ModelClass;
17
+ readonly serviceType: ServiceClass;
18
+ protected constructor(classType: ModelClass, serviceType: ServiceClass);
19
+ get isDataProvider(): boolean;
6
20
  }
7
- export declare class DataProvider<T, S> {
8
- protected _modelType: ClassType<T> | null;
9
- protected _serviceType?: Type<S>;
10
- constructor(modelType: ClassType<T> | null, serviceType?: Type<S>);
11
- get serviceType(): Type<S> | undefined;
12
- get modelType(): ClassType<T> | null;
13
- withServiceType(type: Type<S>): this;
21
+ export declare class DataProvider extends DataProviderInst<any> {
22
+ protected constructor();
23
+ static create<Model>(): DataProviderInst<Model, undefined, undefined, undefined>;
24
+ static fromClass<Model>(type: ClassType<Model>): DataProviderInst<Model, undefined, ClassType<Model>, undefined>;
25
+ static fromClassWithService<Model, Service>(type: ClassType<Model>, serviceType: ServiceClassType<Service>): DataProviderInst<Model, Service, ClassType<Model>, ServiceClassType<Service>>;
26
+ static fromService<Service, Model>(serviceType: ServiceClassType<Service>): DataProviderInst<Model, Service, undefined, ServiceClassType<Service>>;
27
+ static fromAnyParam<Model>(): DataProviderInst<Model, undefined, undefined, undefined>;
28
+ static fromAnyParam<Model>(type: ClassType<Model>): DataProviderInst<Model, undefined, ClassType<Model>, undefined>;
29
+ static fromAnyParam<Model, Service = any>(type: undefined, serviceType: ServiceClassType<Service>): DataProviderInst<Model, Service, undefined, ServiceClassType<Service>>;
30
+ static fromAnyParam<Model, Service = any>(type: ClassType<Model>, serviceType: ServiceClassType<Service>): DataProviderInst<Model, Service, ClassType<Model>, ServiceClassType<Service>>;
31
+ static fromAnyParam<Model, Service, ModelClass = ClassType<Model>, ServiceClass = ServiceClassType<Service>>(type?: ModelClass, serviceType?: ServiceClass): DataProviderInst<Model, Service, ModelClass, ServiceClass>;
14
32
  }
@@ -1,25 +1,88 @@
1
- import { Type } from '@angular/core';
2
- import { Observable } from 'rxjs';
3
- import { ClassType, IdType } from '../types';
4
- import { DataProvider, IDataProvider } from './base.data-provider';
5
- export interface IEditorDataProvider<T, S> extends IDataProvider<T, S> {
6
- fetch: (id: IdType, service?: S, locale?: string) => Observable<T>;
7
- create?: (item?: T, service?: S) => Observable<T>;
8
- update?: (id: IdType, item?: T, service?: S) => Observable<T>;
9
- delete?: (id: IdType, item?: T, service?: S) => Observable<T | null>;
1
+ import { ClassOptType, ClassType, IdType, ItemOrObservable, ServiceClassOptType, ServiceClassType } from '../types';
2
+ import { DataProviderInst, IDataProvider } from './base.data-provider';
3
+ export type EditorDataProviderFetchFnType<Model = any, Service = undefined, Id = IdType, Return = ItemOrObservable<Model>> = (id: Id, service: Service, locale: string | undefined) => Return;
4
+ export type EditorDataProviderCreateFnType<Model = any, Service = undefined, Item = Model | undefined, Return = ItemOrObservable<Model>> = (item: Item, service: Service) => Return;
5
+ export type EditorDataProviderUpdateFnType<Model = any, Service = undefined, Id = IdType, Item = Model | undefined, Return = ItemOrObservable<Model>> = (id: Id, item: Item, service: Service) => Return;
6
+ export type EditorDataProviderDeleteFnType<Model = any, Service = undefined, Id = IdType, Item = Model | undefined, Return = ItemOrObservable<Model | null>> = (id: Id, item: Item, service: Service) => Return;
7
+ export interface IEditorDataProviderFetch<Model, Service> {
8
+ fetch: EditorDataProviderFetchFnType<Model, Service>;
9
+ withFetch(fn: EditorDataProviderFetchFnType<Model, Service>): this;
10
10
  }
11
- export declare class EditorDataProvider<T, S> extends DataProvider<T, S> implements IEditorDataProvider<T, S> {
12
- protected _fetch: (id: IdType, service?: S, locale?: string) => Observable<T>;
13
- protected _create?: (item?: T, service?: S) => Observable<T>;
14
- protected _update?: (id: IdType, item?: T, service?: S) => Observable<T>;
15
- protected _delete?: (id: IdType, item?: T, service?: S) => Observable<T | null>;
16
- constructor(modelType: ClassType<T>, serviceType?: Type<S>);
17
- get fetch(): (id: IdType, service?: S | undefined, locale?: string | undefined) => Observable<T>;
18
- get create(): ((item?: T | undefined, service?: S | undefined) => Observable<T>) | undefined;
19
- get update(): ((id: IdType, item?: T | undefined, service?: S | undefined) => Observable<T>) | undefined;
20
- get delete(): ((id: IdType, item?: T | undefined, service?: S | undefined) => Observable<T | null>) | undefined;
21
- withFetch(fetch: (id: IdType, service?: S, locale?: string) => Observable<T>): this;
22
- withCreate(create: (item?: T, service?: S) => Observable<T>): this;
23
- withUpdate(update: (id: IdType, item?: T, service?: S) => Observable<T>): this;
24
- withDelete(deleteFn: (id: IdType, item?: T, service?: S) => Observable<T | null>): this;
11
+ export interface IEditorDataProviderCreate<Model, Service> {
12
+ create?: EditorDataProviderCreateFnType<Model, Service>;
13
+ withCreate(fn?: EditorDataProviderCreateFnType<Model, Service>): this;
14
+ }
15
+ export interface IEditorDataProviderUpdate<Model, Service> {
16
+ update?: EditorDataProviderUpdateFnType<Model, Service>;
17
+ withUpdate(fn?: EditorDataProviderUpdateFnType<Model, Service>): this;
18
+ }
19
+ export interface IEditorDataProviderDelete<Model, Service> {
20
+ delete?: EditorDataProviderDeleteFnType<Model, Service>;
21
+ withDelete(fn?: EditorDataProviderDeleteFnType<Model, Service>): this;
22
+ }
23
+ export type IEditorDataProviderFnsType<Model, Service> = IEditorDataProviderFetch<Model, Service> & IEditorDataProviderCreate<Model, Service> & IEditorDataProviderUpdate<Model, Service> & IEditorDataProviderDelete<Model, Service>;
24
+ export type IEditorDataProvider<Model = any, Service = any, ModelClass = ClassOptType<Model>, ServiceClass = ServiceClassOptType<Service>> = IDataProvider<Model, Service, ModelClass, ServiceClass> & IEditorDataProviderFnsType<Model, Service>;
25
+ 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> {
26
+ protected _fetch: EditorDataProviderFetchFnType<Model, Service>;
27
+ protected _create?: EditorDataProviderCreateFnType<Model, Service>;
28
+ protected _update?: EditorDataProviderUpdateFnType<Model, Service>;
29
+ protected _delete?: EditorDataProviderDeleteFnType<Model, Service>;
30
+ protected constructor(type: ModelClass, serviceType: ServiceClass);
31
+ get fetch(): EditorDataProviderFetchFnType<Model, Service, IdType, ItemOrObservable<Model>>;
32
+ get create(): EditorDataProviderCreateFnType<Model, Service, Model | undefined, ItemOrObservable<Model>> | undefined;
33
+ get update(): EditorDataProviderUpdateFnType<Model, Service, IdType, Model | undefined, ItemOrObservable<Model>> | undefined;
34
+ get delete(): EditorDataProviderDeleteFnType<Model, Service, IdType, Model | undefined, ItemOrObservable<Model | null>> | undefined;
35
+ /**
36
+ * Sets the fetch function for the EditorDataProvider instance.
37
+ *
38
+ * @param {EditorDataProviderFetchFnType<Model, Service>} fn - The fetch function to be set.
39
+ * @return {this} - The instance of the EditorDataProvider with the fetch function set.
40
+ *
41
+ * @template Model The type of data this DataProvider will handle.
42
+ * @template Service The type of service used by this DataProvider.
43
+ */
44
+ withFetch(fn: EditorDataProviderFetchFnType<Model, Service>): this;
45
+ /**
46
+ * Sets the create function for the EditorDataProvider.
47
+ *
48
+ * @param {EditorDataProviderCreateFnType<Model, Service>} fn - The function used for creating new items.
49
+ * @return {this} - Returns the instance of the class.
50
+ *
51
+ * @template Model The type of data this DataProvider will handle.
52
+ * @template Service The type of service used by this DataProvider.
53
+ */
54
+ withCreate(fn?: EditorDataProviderCreateFnType<Model, Service>): this;
55
+ /**
56
+ * Sets the update function for the EditorDataProvider.
57
+ *
58
+ * @param {EditorDataProviderUpdateFnType<Model, Service>} fn - The update function to be set.
59
+ * @return {this} - Returns the instance of the object calling this method.
60
+ *
61
+ * @template Model The type of data this DataProvider will handle.
62
+ * @template Service The type of service used by this DataProvider.
63
+ */
64
+ withUpdate(fn?: EditorDataProviderUpdateFnType<Model, Service>): this;
65
+ /**
66
+ * Sets the delete function for the editor data provider.
67
+ *
68
+ * @param {EditorDataProviderDeleteFnType<Model, Service>} fn - The delete function to be set.
69
+ *
70
+ * @return {this} - Returns the instance of the current class.
71
+ *
72
+ * @template Model The type of data this DataProvider will handle.
73
+ * @template Service The type of service used by this DataProvider.
74
+ */
75
+ withDelete(fn?: EditorDataProviderDeleteFnType<Model, Service>): this;
76
+ }
77
+ export declare class EditorDataProvider extends EditorDataProviderInst<any> {
78
+ protected constructor();
79
+ static create<Model>(): EditorDataProviderInst<Model, undefined, undefined, undefined>;
80
+ static fromClass<Model>(type: ClassType<Model>): EditorDataProviderInst<Model, undefined, ClassType<Model>, undefined>;
81
+ static fromClassWithService<Model, Service>(type: ClassType<Model>, serviceType: ServiceClassType<Service>): EditorDataProviderInst<Model, Service, ClassType<Model>, ServiceClassType<Service>>;
82
+ static fromService<Service, Model>(serviceType: ServiceClassType<Service>): EditorDataProviderInst<Model, Service, undefined, ServiceClassType<Service>>;
83
+ static fromAnyParam<Model>(): EditorDataProviderInst<Model, undefined, undefined, undefined>;
84
+ static fromAnyParam<Model>(type: ClassType<Model>): EditorDataProviderInst<Model, undefined, ClassType<Model>, undefined>;
85
+ static fromAnyParam<Model, Service = any>(type: undefined, serviceType: ServiceClassType<Service>): EditorDataProviderInst<Model, Service, undefined, ServiceClassType<Service>>;
86
+ static fromAnyParam<Model, Service = any>(type: ClassType<Model>, serviceType: ServiceClassType<Service>): EditorDataProviderInst<Model, Service, ClassType<Model>, ServiceClassType<Service>>;
87
+ static fromAnyParam<Model, Service, ModelClass = ClassType<Model>, ServiceClass = ServiceClassType<Service>>(type?: ModelClass, serviceType?: ServiceClass): EditorDataProviderInst<Model, Service, ModelClass, ServiceClass>;
25
88
  }
@@ -1,14 +1,27 @@
1
- import { Type } from '@angular/core';
2
- import { Observable } from 'rxjs';
3
1
  import { MediusQueryParam } from '../api/models';
4
- import { ClassType } from '../types';
5
- import { DataProvider, IDataProvider } from './base.data-provider';
6
- export interface ILookupDataProvider<T, S> extends IDataProvider<T, S> {
7
- lookup: (queryParam?: MediusQueryParam, service?: S, search?: string) => Observable<Array<T>>;
2
+ import { ClassOptType, ClassType, ItemOrObservable, ServiceClassOptType, ServiceClassType } from '../types';
3
+ import { DataProviderInst, IDataProvider } from './base.data-provider';
4
+ export type LookupDataProviderLookupFnType<ModelType = any, ServiceType = undefined, ReturnType = ItemOrObservable<Array<ModelType>>> = (queryParam: MediusQueryParam | undefined, service: ServiceType, search?: string) => ReturnType;
5
+ export interface ILookupDataProviderLookup<ModelType, ServiceType> {
6
+ lookup: LookupDataProviderLookupFnType<ModelType, ServiceType>;
7
+ withLookup(fn?: LookupDataProviderLookupFnType<ModelType, ServiceType>): this;
8
8
  }
9
- export declare class LookupDataProvider<T, S> extends DataProvider<T, S> implements ILookupDataProvider<T, S> {
10
- protected _lookup: (queryParam?: MediusQueryParam, service?: S, search?: string) => Observable<Array<T>>;
11
- constructor(modelType: ClassType<T> | null, serviceType?: Type<S>);
12
- get lookup(): (queryParam?: MediusQueryParam | undefined, service?: S | undefined, search?: string | undefined) => Observable<T[]>;
13
- withLookup(lookup: (queryParam?: MediusQueryParam, service?: S, search?: string) => Observable<Array<T>>): this;
9
+ export type ILookupDataProvider<ModelType = any, ServiceType = any, CT = ClassOptType<ModelType>, ST = ServiceClassOptType<ServiceType>> = IDataProvider<ModelType, ServiceType, CT, ST> & ILookupDataProviderLookup<ModelType, ServiceType>;
10
+ export declare class LookupDataProviderInst<ModelType, ServiceType = any, CT = ClassOptType<ModelType>, ST = ServiceClassOptType<ServiceType>> extends DataProviderInst<ModelType, ServiceType, CT, ST> implements ILookupDataProvider<ModelType, ServiceType, CT, ST> {
11
+ protected _lookup: LookupDataProviderLookupFnType<ModelType, ServiceType>;
12
+ protected constructor(type: CT, serviceType: ST);
13
+ get lookup(): LookupDataProviderLookupFnType<ModelType, ServiceType, ItemOrObservable<ModelType[]>>;
14
+ withLookup(fn: LookupDataProviderLookupFnType<ModelType, ServiceType>): this;
15
+ }
16
+ export declare class LookupDataProvider extends LookupDataProviderInst<any> {
17
+ protected constructor();
18
+ static create<Model>(): LookupDataProviderInst<Model, undefined, undefined, undefined>;
19
+ static fromClass<Model>(type: ClassType<Model>): LookupDataProviderInst<Model, undefined, ClassType<Model>, undefined>;
20
+ static fromClassWithService<Model, Service>(type: ClassType<Model>, serviceType: ServiceClassType<Service>): LookupDataProviderInst<Model, Service, ClassType<Model>, ServiceClassType<Service>>;
21
+ static fromService<ServiceType, ModelType>(serviceType: ServiceClassType<ServiceType>): LookupDataProviderInst<ModelType, ServiceType, undefined, ServiceClassType<ServiceType>>;
22
+ static fromAnyParam<Model>(): LookupDataProviderInst<Model, undefined, undefined, undefined>;
23
+ static fromAnyParam<Model>(type: ClassType<Model>): LookupDataProviderInst<Model, undefined, ClassType<Model>, undefined>;
24
+ static fromAnyParam<Model, Service = any>(type: undefined, serviceType: ServiceClassType<Service>): LookupDataProviderInst<Model, Service, undefined, ServiceClassType<Service>>;
25
+ static fromAnyParam<Model, Service = any>(type: ClassType<Model>, serviceType: ServiceClassType<Service>): LookupDataProviderInst<Model, Service, ClassType<Model>, ServiceClassType<Service>>;
26
+ static fromAnyParam<Model, Service, ModelClass = ClassType<Model>, ServiceClass = ServiceClassType<Service>>(type?: ModelClass, serviceType?: ServiceClass): LookupDataProviderInst<Model, Service, ModelClass, ServiceClass>;
14
27
  }
@@ -1,27 +1,40 @@
1
- import { Type } from '@angular/core';
2
1
  import { Observable, Subject } from 'rxjs';
3
2
  import { MediusQueryParam, MediusQueryResult } from '../api/models';
4
- import { ClassType } from '../types';
5
- import { DataProvider, IDataProvider } from './base.data-provider';
6
- export interface ITableDataProvider<T, S> extends IDataProvider<T, S> {
3
+ import { ClassOptType, ClassType, ItemOrObservable, ServiceClassOptType, ServiceClassType } from '../types';
4
+ import { DataProviderInst, IDataProvider } from './base.data-provider';
5
+ export type TableDataProviderGetAllFnType<Model = any, Service = undefined, Return = ItemOrObservable<MediusQueryResult<Model>>> = (queryParam: MediusQueryParam, service: Service, locale?: string) => Return;
6
+ export type TableDataProviderGetAllEagerFnType<Model = any, Service = undefined, Return = ItemOrObservable<Model[]>> = (service: Service, locale?: string) => Return;
7
+ export interface ITableDataProviderGetAll<Model, Service> {
8
+ getAll: TableDataProviderGetAllFnType<Model, Service>;
9
+ withGetAll(fn: TableDataProviderGetAllFnType<Model, Service>): this;
10
+ }
11
+ export interface ITableDataProviderSupport {
7
12
  get isLazy(): boolean;
8
- getAll: (queryParam: MediusQueryParam, service?: S, locale?: string) => Observable<MediusQueryResult<T>>;
13
+ get getAllReload$(): Observable<MediusQueryParam | undefined>;
9
14
  getAllReload(queryParam?: MediusQueryParam): void;
10
- getAllReload$: Observable<MediusQueryParam | undefined>;
11
15
  }
12
- export declare class TableDataProvider<T, S> extends DataProvider<T, S> implements ITableDataProvider<T, S> {
16
+ export type ITableDataProvider<Model = any, Service = any, ModelClass = ClassOptType<Model>, ServiceClass = ServiceClassOptType<Service>> = IDataProvider<Model, Service, ModelClass, ServiceClass> & ITableDataProviderSupport & ITableDataProviderGetAll<Model, Service>;
17
+ export declare class TableDataProviderInst<Model, Service = any, ModelClass = ClassOptType<Model>, ServiceClass = ServiceClassOptType<Service>> extends DataProviderInst<Model, Service, ModelClass, ServiceClass> implements ITableDataProvider<Model, Service, ModelClass, ServiceClass> {
18
+ protected readonly _getAllReloadSubject: Subject<MediusQueryParam | undefined>;
13
19
  protected _isLazy: boolean;
14
- protected _getAll: (queryParam: MediusQueryParam, service?: S, locale?: string) => Observable<MediusQueryResult<T>>;
15
- protected _getAllReloadSubject: Subject<MediusQueryParam | undefined>;
16
- constructor(modelType: ClassType<T>, serviceType?: Type<S>);
20
+ protected constructor(type: ModelClass, serviceType: ServiceClass);
21
+ protected _getAll: TableDataProviderGetAllFnType<Model, Service>;
17
22
  get isLazy(): boolean;
18
- get getAll(): (queryParam: MediusQueryParam, service?: S | undefined, locale?: string | undefined) => Observable<MediusQueryResult<T>>;
23
+ get getAll(): TableDataProviderGetAllFnType<Model, Service, ItemOrObservable<MediusQueryResult<Model>>>;
19
24
  get getAllReload$(): Observable<MediusQueryParam | undefined>;
20
- withGetAll(getAll: (queryParam: MediusQueryParam, service?: S, locale?: string) => Observable<MediusQueryResult<T>>): this;
21
- /**
22
- * Use this method to use inline load without lazy loading features on table and use inline pagination, filtering and sorting.
23
- * @param getAll
24
- */
25
- withGetAllEagerly(getAll: (service?: S, locale?: string) => Observable<Array<T>>): this;
25
+ withGetAll(fn: TableDataProviderGetAllFnType<Model, Service>): this;
26
+ withGetAllEagerly(fn: TableDataProviderGetAllEagerFnType<Model, Service>): this;
26
27
  getAllReload(queryParam?: MediusQueryParam): void;
27
28
  }
29
+ export declare class TableDataProvider extends TableDataProviderInst<any> {
30
+ protected constructor();
31
+ static create<Model>(): TableDataProviderInst<Model, undefined, undefined, undefined>;
32
+ static fromClass<Model>(type: ClassType<Model>): TableDataProviderInst<Model, undefined, ClassType<Model>, undefined>;
33
+ static fromClassWithService<Model, Service>(type: ClassType<Model>, serviceType: ServiceClassType<Service>): TableDataProviderInst<Model, Service, ClassType<Model>, ServiceClassType<Service>>;
34
+ static fromService<Service, Model>(serviceType: ServiceClassType<Service>): TableDataProviderInst<Model, Service, undefined, ServiceClassType<Service>>;
35
+ static fromAnyParam<Model>(): TableDataProviderInst<Model, undefined, undefined, undefined>;
36
+ static fromAnyParam<Model>(type: ClassType<Model>): TableDataProviderInst<Model, undefined, ClassType<Model>, undefined>;
37
+ static fromAnyParam<Model, Service = any>(type: undefined, serviceType: ServiceClassType<Service>): TableDataProviderInst<Model, Service, undefined, ServiceClassType<Service>>;
38
+ static fromAnyParam<Model, Service = any>(type: ClassType<Model>, serviceType: ServiceClassType<Service>): TableDataProviderInst<Model, Service, ClassType<Model>, ServiceClassType<Service>>;
39
+ static fromAnyParam<Model, Service, ModelClass = ClassType<Model>, ServiceClass = ServiceClassType<Service>>(type?: ModelClass, serviceType?: ServiceClass): TableDataProviderInst<Model, Service, ModelClass, ServiceClass>;
40
+ }
@@ -1,8 +1,12 @@
1
1
  import { Type } from '@angular/core';
2
2
  import { MediusQueryResult } from '../api/models';
3
3
  import { IMngCrudApiService, IMngGetAllApiService } from '../api/services';
4
- import { ClassType } from '../types';
5
- import { TableviewDataProvider } from './tableview.data-provider';
6
- export declare class TableviewCrudDataProvider<T, S extends IMngCrudApiService<T> & IMngGetAllApiService<MediusQueryResult<T>>> extends TableviewDataProvider<T, S> {
7
- constructor(modelType: ClassType<T>, serviceType?: Type<S>, idPropertyName?: string, useGetAllForFetch?: boolean);
4
+ import { ClassType, ServiceClassType } from '../types';
5
+ import { TableviewDataProviderInst } from './tableview.data-provider';
6
+ export declare class TableviewCrudDataProviderInst<Model, Service extends IMngCrudApiService<Model> & IMngGetAllApiService<MediusQueryResult<Model>>> extends TableviewDataProviderInst<Model, Service, ClassType<Model>, ServiceClassType<Service>> {
7
+ protected constructor(type: ClassType<Model>, serviceType: Type<Service>, idPropertyName?: string, useGetAllForFetch?: boolean);
8
+ }
9
+ export declare class TableviewCrudDataProvider extends TableviewCrudDataProviderInst<any, any> {
10
+ static create<Model, Service extends IMngCrudApiService<Model> & IMngGetAllApiService<MediusQueryResult<Model>>>(type: ClassType<Model>, serviceType: Type<Service>, idProperty?: keyof Model, useGetAllForFetch?: boolean): TableviewCrudDataProviderInst<Model, Service>;
11
+ static createUnsafe<Model, Service extends IMngCrudApiService<Model> & IMngGetAllApiService<MediusQueryResult<Model>>>(type: ClassType<Model>, serviceType: Type<Service>, idProperty?: string, useGetAllForFetch?: boolean): TableviewCrudDataProviderInst<Model, Service>;
8
12
  }