@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
@@ -0,0 +1,69 @@
1
+ import { ILookupDataProvider, LookupDataProviderLookupFnType } from '../../data-providers';
2
+ import { EnumValue } from '../../models';
3
+ import { ClassType, EnumConstantType, EnumType, ServiceClassType } from '../../types';
4
+ import { ILookupDescriptor } from '../interfaces';
5
+ import { FilterLookupTypeEnum, FilterMatchModeEnum } from '../types';
6
+ import { FilterDescriptor } from './filter.descriptor';
7
+ export type FilterLookupDescriptorConstructorOptsType<FilterModel, Service> = FilterLookupDescriptorCreateOptsProviderType<FilterModel, Service> & {
8
+ type?: ClassType<FilterModel>;
9
+ optionsValueProperty?: string | null;
10
+ };
11
+ export type FilterLookupDescriptorCreateOptsProviderType<FilterModel, Service> = {
12
+ serviceType?: ServiceClassType<Service>;
13
+ dataProvider?: ILookupDataProvider<FilterModel, Service>;
14
+ };
15
+ export type FilterLookupAutocompleteOptsType = {
16
+ openOnFocus?: boolean;
17
+ inlineSearch?: boolean;
18
+ autoClear?: boolean;
19
+ };
20
+ export declare class FilterLookupDescriptor<FilterModel, Service = any> extends FilterDescriptor<FilterModel> implements ILookupDescriptor<FilterModel> {
21
+ protected readonly _dataProvider: ILookupDataProvider<FilterModel, Service>;
22
+ protected readonly _optionsValueProperty?: string | null;
23
+ protected _lookupType?: FilterLookupTypeEnum;
24
+ protected _optionsLabelProperty?: string;
25
+ protected _optionsLabelTranslate: boolean;
26
+ protected _multiselect: boolean;
27
+ protected _dropdownClassName: string;
28
+ protected _autocompleteOpenOnFocus?: boolean;
29
+ protected _autocompleteInlineSearch?: boolean;
30
+ protected _autocompleteAutoClear?: boolean;
31
+ constructor(property: string, cfg?: FilterLookupDescriptorConstructorOptsType<FilterModel, Service>);
32
+ get lookupType(): FilterLookupTypeEnum | undefined;
33
+ get dataProvider(): ILookupDataProvider<FilterModel, Service>;
34
+ get optionsLabelProperty(): string | undefined;
35
+ get optionsLabelTranslate(): boolean;
36
+ get optionsValueProperty(): string | undefined;
37
+ get multiselect(): boolean;
38
+ get autocompleteOpenOnFocus(): boolean | undefined;
39
+ get autocompleteAutoClear(): boolean | undefined;
40
+ get autocompleteInlineSearch(): boolean | undefined;
41
+ get dropdownClassName(): string;
42
+ withOptionsLabelProperty(property: keyof FilterModel, translate?: boolean): this;
43
+ withOptionsLabelPropertyUnsafe(property: string, translate?: boolean): this;
44
+ /**
45
+ * Method will set `optionsValueProperty`, because track properties are not supported here as filters need final value to work correctly.
46
+ * Use `optionsValueProperty` instead.
47
+ */
48
+ withOptionsTrackProperty(): this;
49
+ withOptionsTrackPropertyUnsafe(): this;
50
+ withLookup(lookup?: LookupDataProviderLookupFnType<FilterModel, Service>): this;
51
+ withMultiselect(multiselect?: boolean): this;
52
+ withDropdownClassName(dropdownClassName: string): this;
53
+ withDefaultFilter(filterValue: FilterModel | FilterModel[], filterValueTo?: FilterModel, filterMatchMode?: FilterMatchModeEnum): this;
54
+ asAutocomplete(opts?: FilterLookupAutocompleteOptsType): this;
55
+ copy(): FilterLookupDescriptor<FilterModel>;
56
+ protected copyFieldsTo(filter: FilterLookupDescriptor<FilterModel>): void;
57
+ }
58
+ export declare class FilterLookupEnumDescriptor extends FilterLookupDescriptor<EnumValue> {
59
+ private readonly _enumType;
60
+ private readonly _optionEnumValues;
61
+ private readonly _nameAsValue;
62
+ constructor(property: string, enumType: EnumType, options?: Array<EnumConstantType>, nameAsValue?: boolean, optionsTitlePath?: string | null);
63
+ get enumType(): EnumType<EnumConstantType>;
64
+ asAutocomplete(opts?: FilterLookupAutocompleteOptsType): this;
65
+ withMultiselectEnum(multiselect?: boolean): FilterLookupEnumDescriptor;
66
+ withDefaultFilter(): this;
67
+ withDefaultFilterEnum(filterValue: EnumConstantType | EnumConstantType[], filterValueTo?: EnumConstantType, filterMatchMode?: FilterMatchModeEnum): this;
68
+ copy(): FilterLookupEnumDescriptor;
69
+ }
@@ -1,19 +1,12 @@
1
- import { Type } from '@angular/core';
2
- import { Observable } from 'rxjs';
3
- import { MediusQueryParam } from '../../api/models';
4
- import { ILookupDataProvider } from '../../data-providers';
5
- import { EnumValue } from '../../models';
6
- import { ClassType, EnumConstantType, EnumType } from '../../types';
7
- import { ILookupDescriptor } from '../interfaces';
8
- import { FilterLookupTypeEnum, FilterMatchModeEnum, FilterTypeEnum } from '../types';
9
- export declare class FilterDescriptor<T> {
1
+ import { FilterMatchModeEnum, FilterTypeEnum } from '../types';
2
+ export declare class FilterDescriptor<FilterModel> {
10
3
  protected readonly _property: string;
11
4
  protected _filterType: FilterTypeEnum;
12
5
  protected _filterProperty?: string;
13
6
  protected _hasDefaultValue: boolean;
14
7
  protected _defaultFilterMatchMode?: FilterMatchModeEnum;
15
- protected _defaultValue?: T | T[];
16
- protected _defaultValueTo?: T;
8
+ protected _defaultValue?: FilterModel | FilterModel[];
9
+ protected _defaultValueTo?: FilterModel;
17
10
  protected _matchModes: string[] | null;
18
11
  protected _numberMinFractionDigits?: number;
19
12
  protected _numberMaxFractionDigits?: number;
@@ -31,8 +24,8 @@ export declare class FilterDescriptor<T> {
31
24
  constructor(property: string);
32
25
  get filterType(): FilterTypeEnum;
33
26
  get hasDefaultValue(): boolean;
34
- get defaultValue(): T | T[] | undefined;
35
- get defaultValueTo(): T | undefined;
27
+ get defaultValue(): FilterModel | FilterModel[] | undefined;
28
+ get defaultValueTo(): FilterModel | undefined;
36
29
  get defaultFilterMatchMode(): FilterMatchModeEnum | undefined;
37
30
  get filterProperty(): string | undefined;
38
31
  get matchModes(): string[] | null;
@@ -56,7 +49,7 @@ export declare class FilterDescriptor<T> {
56
49
  * @param filterProperty
57
50
  */
58
51
  withFilterProperty(filterProperty: string): this;
59
- withDefaultFilter(filterValue: T, filterValueTo?: T, filterMatchMode?: FilterMatchModeEnum): this;
52
+ withDefaultFilter(filterValue: FilterModel, filterValueTo?: FilterModel, filterMatchMode?: FilterMatchModeEnum): this;
60
53
  withNumberFractions(min?: number, max?: number): this;
61
54
  withNumberGrouping(useGrouping?: boolean): this;
62
55
  withDateFormat(format?: string, showTime?: boolean): this;
@@ -66,57 +59,6 @@ export declare class FilterDescriptor<T> {
66
59
  withColumnClassName(className: string): this;
67
60
  withColumnWidth(width?: number, minWidth?: number): this;
68
61
  withMatchModes(matchModes: Array<FilterMatchModeEnum>): this;
69
- copy(): FilterDescriptor<T>;
70
- protected copyFieldsTo(descriptor: FilterDescriptor<T>): void;
71
- }
72
- export declare class FilterLookupDescriptor<T> extends FilterDescriptor<T> implements ILookupDescriptor<T> {
73
- protected readonly _modelType: ClassType<T> | null;
74
- protected _lookupType?: FilterLookupTypeEnum;
75
- protected _dataProvider?: ILookupDataProvider<T, any>;
76
- protected _itemsLabelProperty?: string;
77
- protected _itemsLabelTranslate: boolean;
78
- protected _itemsValueProperty?: string;
79
- protected _multiselect: boolean;
80
- protected _dropdownClassName: string;
81
- protected _autocompleteOpenOnFocus: boolean;
82
- protected _autocompleteInlineSearch: boolean;
83
- constructor(property: string, modelType: ClassType<T> | null);
84
- get lookupType(): FilterLookupTypeEnum | undefined;
85
- get dataProvider(): ILookupDataProvider<T, any> | undefined;
86
- get itemsLabelProperty(): string | undefined;
87
- get itemsLabelTranslate(): boolean;
88
- get itemsValueProperty(): string | undefined;
89
- get multiselect(): boolean;
90
- get autocompleteOpenOnFocus(): boolean;
91
- get autocompleteInlineSearch(): boolean;
92
- get dropdownClassName(): string;
93
- get modelType(): ClassType<T> | null;
94
- withItemsLabelProperty(itemsLabelProperty: string, translate?: boolean): this;
95
- withItemsValueProperty(itemsValueProperty: string): this;
96
- /**
97
- * Method will set `itemsValueProperty`, because dataKeys are not supported here as filters need final value to work correctly.
98
- * Use `withItemsValueProperty` instead.
99
- * @param itemsValueProperty Item's value property.
100
- */
101
- withDataKeyProperty(itemsValueProperty: string): this;
102
- withLookup<S>(lookup: (queryParam?: MediusQueryParam, service?: S, search?: string) => Observable<Array<T>>, serviceType?: Type<S>): this;
103
- withLookupDataProvider(dataProvider: ILookupDataProvider<T, any>): this;
104
- withMultiselect(multiselect?: boolean): this;
105
- withDropdownClassName(dropdownClassName: string): this;
106
- withDefaultFilter(filterValue: T | T[], filterValueTo?: T, filterMatchMode?: FilterMatchModeEnum): this;
107
- asAutocomplete(openOnFocus?: boolean, inlineSearch?: boolean): this;
108
- copy(): FilterLookupDescriptor<T>;
109
- protected copyFieldsTo(filter: FilterLookupDescriptor<T>): void;
110
- }
111
- export declare class FilterLookupEnumDescriptor extends FilterLookupDescriptor<EnumValue<string | number>> {
112
- private readonly _enumType;
113
- private readonly _optionEnumValues;
114
- private readonly _nameAsValue;
115
- constructor(property: string, enumType: EnumType, options?: Array<EnumConstantType>, nameAsValue?: boolean, optionsTitlePath?: string | null);
116
- get enumType(): EnumType;
117
- asAutocomplete(openOnFocus?: boolean): this;
118
- withMultiselectEnum(multiselect?: boolean): FilterLookupEnumDescriptor;
119
- withDefaultFilter(): this;
120
- withDefaultFilterEnum(filterValue: EnumConstantType | EnumConstantType[], filterValueTo?: EnumConstantType, filterMatchMode?: FilterMatchModeEnum): this;
121
- copy(): FilterLookupEnumDescriptor;
62
+ copy(): FilterDescriptor<FilterModel>;
63
+ protected copyFieldsTo(descriptor: FilterDescriptor<FilterModel>): void;
122
64
  }
@@ -1 +1,2 @@
1
1
  export * from './filter.descriptor';
2
+ export * from './filter-lookup.descriptor';
@@ -1,17 +1,12 @@
1
- import { Type } from '@angular/core';
2
- import { Observable } from 'rxjs';
3
- import { MediusQueryParam } from '../../api/models';
4
- import { ILookupDataProvider } from '../../data-providers';
5
- import { ClassType } from '../../types';
6
- export interface ILookupDescriptor<T> {
7
- modelType: ClassType<T> | null;
8
- itemsLabelProperty?: string;
9
- itemsValueProperty?: string;
10
- dataKeyProperty?: string;
11
- dataProvider?: ILookupDataProvider<T, any>;
12
- withItemsLabelProperty(itemsLabelProperty: string): this;
13
- withItemsValueProperty(itemsLabelProperty: string): this;
14
- withDataKeyProperty(dataKeyProperty: string): this;
15
- withLookup<S>(lookup: (queryParam?: MediusQueryParam, service?: S, search?: string) => Observable<Array<T>>, serviceType?: Type<S>): this;
16
- withLookupDataProvider(dataProvider: ILookupDataProvider<T, any>): this;
1
+ import { ILookupDataProvider, LookupDataProviderLookupFnType } from '../../data-providers';
2
+ export interface ILookupDescriptor<Model, Service = any> {
3
+ optionsLabelProperty?: string;
4
+ optionsValueProperty?: string;
5
+ optionsTrackProperty?: string;
6
+ dataProvider: ILookupDataProvider<Model, Service>;
7
+ withOptionsLabelProperty(property: keyof Model): this;
8
+ withOptionsLabelPropertyUnsafe(property: string): this;
9
+ withOptionsTrackProperty(property: keyof Model): this;
10
+ withOptionsTrackPropertyUnsafe(property: string): this;
11
+ withLookup(lookup: LookupDataProviderLookupFnType<Model, Service>): this;
17
12
  }
@@ -0,0 +1,22 @@
1
+ import { ClassOptType, ClassType } from '../../types';
2
+ export declare class ModelDescriptor<Model, ModelClass = ClassOptType<Model>> {
3
+ private readonly _type;
4
+ private readonly _typeName?;
5
+ private _i18nBaseKey;
6
+ private _idProperty?;
7
+ private _titleProperty?;
8
+ protected constructor(type: ModelClass, idProperty?: string, titleProperty?: string, i18nBaseKey?: string | ClassType<any>);
9
+ static create<Model>(idProperty?: keyof Model, titleProperty?: keyof Model, i18nBaseKey?: string | ClassType<unknown>): ModelDescriptor<Model, undefined>;
10
+ static fromClass<Model>(type: ClassType<Model>, idProperty?: keyof Model, titleProperty?: keyof Model, i18nBaseKey?: string | ClassType<unknown>): ModelDescriptor<Model, ClassType<Model>>;
11
+ get type(): ModelClass;
12
+ get typeName(): string | undefined;
13
+ get i18nBaseKey(): string;
14
+ get idProperty(): string | undefined;
15
+ get titleProperty(): string | undefined;
16
+ withIdProperty(property: keyof Model): this;
17
+ withIdPropertyUnsafe(property: string): this;
18
+ withTitleProperty(property: keyof Model): this;
19
+ withTitlePropertyUnsafe(property: string): this;
20
+ withI18nBase(base: ClassType<any> | string): this;
21
+ copy(): ModelDescriptor<Model, ModelClass>;
22
+ }
@@ -1,16 +1,33 @@
1
1
  import { Type } from '@angular/core';
2
+ import { ILookupDataProvider } from '../../data-providers';
2
3
  import { IColumnValueComponent } from '../../models';
3
- import { ClassType, EnumConstantType, EnumType } from '../../types';
4
+ import { EnumConstantType, EnumType, GetterFn } from '../../types';
4
5
  import { FilterDescriptor, FilterLookupDescriptor, FilterLookupEnumDescriptor } from '../filter';
5
6
  import { ColumnDisplayTypeEnum, ColumnTypeEnum } from '../types';
6
- import { TableDescriptor, TableDynamicDescriptor } from './table.descriptor';
7
- export declare class ColumnDescriptor<T, TT> {
8
- protected readonly _table: TableDescriptor<TT>;
7
+ import { ITableDescriptorInternal } from './internal/table.model';
8
+ export type ColumnCurrencyOptsType<Property = string> = {
9
+ currencyProperty?: Property;
10
+ currency?: string;
11
+ currencyDisplay?: 'symbol' | 'code' | 'name';
12
+ } & ColumnNumberGroupingOptsType & ColumnNumberFractionOptsType & ColumnLocaleOptsType;
13
+ export type ColumnNumberOptsType = ColumnNumberGroupingOptsType & ColumnNumberFractionOptsType & ColumnLocaleOptsType;
14
+ export type ColumnNumberGroupingOptsType = {
15
+ groupSeparator?: boolean;
16
+ };
17
+ export type ColumnNumberFractionOptsType = {
18
+ minIntegerDigits?: number;
19
+ minFractionDigits?: number;
20
+ maxFractionDigits?: number;
21
+ };
22
+ export type ColumnLocaleOptsType = {
23
+ locale?: string;
24
+ };
25
+ export declare class ColumnDescriptor<ColumnModel, TableModel, ColumnValue = ColumnModel, Property = string> {
26
+ protected readonly _table: ITableDescriptorInternal<TableModel>;
9
27
  protected readonly _property: string;
10
28
  private _columnType;
11
29
  private _columnDisplayType;
12
30
  protected _title?: string;
13
- private _jsonPath?;
14
31
  private _isSortEnabled;
15
32
  private _sortProperty?;
16
33
  private _filterDescriptor?;
@@ -35,48 +52,43 @@ export declare class ColumnDescriptor<T, TT> {
35
52
  private _booleanAsIcon;
36
53
  private _booleanYes?;
37
54
  private _booleanNo?;
38
- private _objectModelType?;
39
- private _objectTitleProperty?;
40
55
  private _currencyCode?;
41
- private _currencyFromProperty?;
56
+ private _currencyProperty?;
42
57
  private _currencyDisplay?;
43
58
  private _customComponentType?;
44
59
  private _hasCopyToClipboard;
45
60
  private _isLocalized;
46
61
  private _localizationExistsProperty?;
47
- constructor(table: TableDescriptor<TT>, property: string);
62
+ constructor(table: ITableDescriptorInternal<TableModel>, property: Property);
48
63
  get columnType(): ColumnTypeEnum;
49
64
  get columnDisplayType(): ColumnDisplayTypeEnum;
50
65
  get title(): string | undefined;
51
- get jsonPath(): string | undefined;
52
66
  get isSortEnabled(): boolean;
53
67
  get sortProperty(): string | undefined;
54
- get filterDescriptor(): FilterDescriptor<unknown> | undefined;
68
+ get filterDescriptor(): FilterDescriptor<any> | undefined;
55
69
  get displayFormat(): string | undefined;
56
- get table(): TableDescriptor<TT>;
70
+ get table(): ITableDescriptorInternal<TableModel>;
57
71
  get property(): string;
58
72
  get headerClassName(): string;
59
73
  get className(): string;
60
- get classNameMapFn(): ((className?: string | undefined, item?: TT | undefined) => string) | undefined;
74
+ get classNameMapFn(): ((className?: string | undefined, item?: TableModel | undefined) => string) | undefined;
61
75
  get width(): number | null;
62
76
  get minWidth(): number | null;
63
77
  get maxWidth(): number | null;
64
- get enumType(): EnumType | undefined;
78
+ get enumType(): EnumType<EnumConstantType> | undefined;
65
79
  get enumTitlePath(): string | null | undefined;
66
80
  get enumNameAsValue(): boolean;
67
81
  get booleanAsIcon(): boolean;
68
82
  get booleanYes(): string | undefined;
69
83
  get booleanNo(): string | undefined;
70
- get objectModelType(): ClassType<unknown> | undefined;
71
- get objectTitleProperty(): string | undefined;
72
- get customComponentType(): Type<IColumnValueComponent<TT>> | undefined;
84
+ get customComponentType(): Type<IColumnValueComponent<TableModel>> | undefined;
73
85
  get locale(): string | undefined;
74
86
  get currencyCode(): string | undefined;
75
87
  get currencyDisplay(): "symbol" | "name" | "code" | undefined;
76
- get currencyFromProperty(): string | undefined;
88
+ get currencyProperty(): string | undefined;
77
89
  get hasCopyToClipboard(): boolean;
78
90
  get template(): string | undefined;
79
- get getter(): ((item: TT, value?: T | null | undefined) => unknown) | undefined;
91
+ get getter(): GetterFn<ColumnValue, TableModel> | undefined;
80
92
  get isMultiline(): boolean;
81
93
  get hasValueAsTooltip(): boolean;
82
94
  get isReorderable(): boolean;
@@ -85,44 +97,44 @@ export declare class ColumnDescriptor<T, TT> {
85
97
  get isLocalized(): boolean;
86
98
  get localizationExistsProperty(): string | undefined;
87
99
  /**
88
- * converts column to given type with additional arguments
100
+ * Converts column to given type with additional arguments
89
101
  * @param type column type enum
102
+ * @param displayType column display type
90
103
  * @param args any additional arguments for column (optional)
91
104
  */
92
105
  asType(type: ColumnTypeEnum, displayType?: ColumnDisplayTypeEnum, ...args: any[]): this;
93
- asNumber(displayFormat?: string, locale?: string): this;
94
- asCurrency(currencyCode?: string, currencyFromProperty?: string, currencyDisplay?: 'symbol' | 'code' | 'name', displayFormat?: string, locale?: string): this;
106
+ asNumber(opts?: ColumnNumberOptsType): this;
107
+ asCurrency(opts?: ColumnCurrencyOptsType<keyof ColumnModel>): this;
108
+ asCurrencyUnsafe(opts?: ColumnCurrencyOptsType): this;
95
109
  asDate(displayFormat?: string): this;
96
110
  asBoolean(yes?: string, no?: string, asIcon?: boolean): this;
97
111
  asEnum(enumType: EnumType, nameAsValue?: boolean, titlePath?: string | null): this;
98
- asCustomComponent(customComponentType: Type<IColumnValueComponent<TT>>): this;
112
+ asCustomComponent(customComponentType: Type<IColumnValueComponent<TableModel>>): this;
99
113
  asHtml(): this;
100
- withClassName(className?: string, headerClassName?: string, classNameMapFn?: (className?: string, item?: TT) => string): this;
114
+ withClassName(className?: string, headerClassName?: string, classNameMapFn?: (className?: string, item?: TableModel) => string): this;
101
115
  withWidth(width?: number, minWidth?: number, maxWidth?: number): this;
102
- withObjectProperty<MT>(modelType: ClassType<MT>, titleProperty?: string): this;
103
116
  withTitle(title: string): this;
104
- withJsonPath(path: string): this;
105
117
  withFilter(forceSimple?: boolean): FilterDescriptor<any>;
106
- withFilterLookup(): FilterLookupDescriptor<unknown>;
118
+ withFilterLookup<FLT = ColumnModel, S = undefined>(provider?: ILookupDataProvider<FLT, S>, optionsValueProperty?: keyof FLT | null): FilterLookupDescriptor<FLT, S>;
119
+ withFilterLookupUnsafe<FLT = ColumnModel, S = undefined>(provider?: ILookupDataProvider<FLT, S>, optionsValueProperty?: string | null): FilterLookupDescriptor<FLT, S>;
107
120
  withFilterLookupEnum(options?: Array<EnumConstantType>): FilterLookupEnumDescriptor;
108
121
  withSort(isEnabled?: boolean, sortProperty?: string): this;
109
122
  withDefaultSort(asc?: boolean): this;
110
123
  withCopyToClipboard(hasCopyToCliboard?: boolean): this;
111
124
  withTemplate(template: string): this;
112
- withGetter(getter?: (item: TT, value?: T | null) => unknown): this;
125
+ withGetter(getter?: GetterFn<ColumnValue, TableModel>): this;
113
126
  withMultiline(isMultiline?: boolean): this;
114
127
  withValueAsTooltip(valueAsTooltip?: boolean): this;
115
128
  withReorderable(isReorderable?: boolean): this;
116
129
  withToggleable(isToggleable?: boolean, isVisible?: boolean): this;
117
130
  localized(existsProperty?: string): this;
118
- copy(): ColumnDescriptor<T, TT>;
119
- protected copyFieldsTo(obj: ColumnDescriptor<T, TT>): void;
131
+ copy(): ColumnDescriptor<ColumnModel, TableModel, ColumnValue>;
132
+ protected copyFieldsTo(obj: ColumnDescriptor<ColumnModel, TableModel, ColumnValue>): void;
120
133
  }
121
134
  export declare class ColumnDynamicDescriptor extends ColumnDescriptor<any, any> {
122
- protected _table: TableDynamicDescriptor;
123
135
  protected _title: string | undefined;
124
136
  private _visibility;
125
- constructor(table: TableDynamicDescriptor, property: string);
137
+ constructor(table: ITableDescriptorInternal<any>, property: string);
126
138
  get visibility(): boolean;
127
139
  /**
128
140
  * sets column's title and returns this column
@@ -144,5 +156,5 @@ export declare class ColumnDynamicDescriptor extends ColumnDescriptor<any, any>
144
156
  * creates deep copy of column dynamic descriptor
145
157
  */
146
158
  copy(): ColumnDynamicDescriptor;
147
- toColumnDescriptor(tableDescriptor: TableDescriptor<any>): ColumnDescriptor<any, any>;
159
+ toColumnDescriptor(tableDescriptor: ITableDescriptorInternal<any>): ColumnDescriptor<any, any>;
148
160
  }
@@ -0,0 +1,11 @@
1
+ import { ColumnDescriptor } from '../../table';
2
+ export interface IColumnsManageInterface<TableModel> {
3
+ getColumn(property: keyof TableModel): ColumnDescriptor<any, TableModel> | null;
4
+ getColumnUnsafe(property: string): ColumnDescriptor<any, TableModel> | null;
5
+ removeColumn(property: keyof TableModel): void;
6
+ removeColumnUnsafe(property: string): void;
7
+ addColumnDescriptor<ColumnModel>(column: ColumnDescriptor<ColumnModel, TableModel>): this;
8
+ addColumn<PropertyKey extends keyof TableModel>(property: PropertyKey): ColumnDescriptor<TableModel[PropertyKey], TableModel>;
9
+ addColumnUnsafe<ColumnModel = any>(property: string): ColumnDescriptor<ColumnModel, TableModel>;
10
+ addColumns(...properties: (keyof TableModel)[]): this;
11
+ }
@@ -0,0 +1,9 @@
1
+ import { ModelDescriptor } from '../../model';
2
+ /**
3
+ * This one is internal only to prevent circular dependencies between editor and fields.
4
+ */
5
+ export interface ITableDescriptorInternal<TableModel> {
6
+ model: ModelDescriptor<TableModel>;
7
+ withDefaultSort(property: keyof TableModel, asc?: boolean): this;
8
+ withDefaultSortUnsafe(property: string, asc: boolean): this;
9
+ }