@mediusinc/mng-commons 4.1.0 → 5.0.0-rc.0-c31d5206

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 (251) hide show
  1. package/assets/i18n/en.json +13 -66
  2. package/assets/i18n/sl.json +12 -67
  3. package/data-api/README.md +3 -0
  4. package/data-api/class-dto/README.md +3 -0
  5. package/data-api/class-dto/helpers/tableview-crud-create.d.ts +40 -0
  6. package/data-api/class-dto/index.d.ts +7 -0
  7. package/data-api/class-dto/models/query-result.model.d.ts +13 -0
  8. package/data-api/class-dto/obsolete/README.md +3 -0
  9. package/data-api/class-dto/obsolete/helpers/query-param-convert.d.ts +23 -0
  10. package/data-api/class-dto/obsolete/helpers/tableview-crud-create.d.ts +22 -0
  11. package/data-api/class-dto/obsolete/index.d.ts +14 -0
  12. package/data-api/class-dto/obsolete/models/builders/query-param.builder.d.ts +36 -0
  13. package/{lib/api → data-api/class-dto/obsolete}/models/filter-param.model.d.ts +1 -1
  14. package/{lib/api → data-api/class-dto/obsolete}/models/query-param.model.d.ts +1 -1
  15. package/{lib/api → data-api/class-dto/obsolete}/models/query-result.model.d.ts +1 -1
  16. package/data-api/class-dto/obsolete/provide.d.ts +9 -0
  17. package/data-api/class-dto/obsolete/services/api.abstract.service.d.ts +36 -0
  18. package/{lib/api → data-api/class-dto/obsolete}/services/crud-api.abstract.service.d.ts +20 -5
  19. package/data-api/class-dto/obsolete/services/get-all-api.abstract.service.d.ts +30 -0
  20. package/data-api/class-dto/obsolete/tableview/tableview-crud.data-provider.d.ts +28 -0
  21. package/data-api/class-dto/obsolete/utils/query-param-map.util.d.ts +22 -0
  22. package/{lib/api/utils/object-serializer.util.d.ts → data-api/class-dto/serder/object-serializer.d.ts} +1 -1
  23. package/{lib/api → data-api/class-dto}/services/api.abstract.service.d.ts +2 -4
  24. package/data-api/class-dto/services/crud-api.abstract.service.d.ts +25 -0
  25. package/data-api/class-dto/services/get-all-api.abstract.service.d.ts +14 -0
  26. package/data-api/class-dto/tableview/tableview-crud.data-provider.d.ts +17 -0
  27. package/data-api/helpers/get-all-params.d.ts +69 -0
  28. package/data-api/helpers/tableview-get-all-params-create.d.ts +14 -0
  29. package/data-api/index.d.ts +5 -0
  30. package/data-api/models/request-params.model.d.ts +61 -0
  31. package/data-api/rxjs/map-to-data-list.operator.d.ts +9 -0
  32. package/data-api/types/extract-get-all-params.type.d.ts +14 -0
  33. package/esm2022/data-api/class-dto/helpers/tableview-crud-create.mjs +40 -0
  34. package/esm2022/data-api/class-dto/index.mjs +13 -0
  35. package/esm2022/data-api/class-dto/mediusinc-mng-commons-data-api-class-dto.mjs +5 -0
  36. package/esm2022/data-api/class-dto/models/query-result.model.mjs +24 -0
  37. package/esm2022/data-api/class-dto/obsolete/helpers/query-param-convert.mjs +103 -0
  38. package/esm2022/data-api/class-dto/obsolete/helpers/tableview-crud-create.mjs +21 -0
  39. package/esm2022/data-api/class-dto/obsolete/index.mjs +21 -0
  40. package/esm2022/data-api/class-dto/obsolete/mediusinc-mng-commons-data-api-class-dto-obsolete.mjs +5 -0
  41. package/esm2022/data-api/class-dto/obsolete/models/builders/query-param.builder.mjs +83 -0
  42. package/esm2022/data-api/class-dto/obsolete/models/filter-match-type.model.mjs +27 -0
  43. package/esm2022/data-api/class-dto/obsolete/models/filter-param.model.mjs +33 -0
  44. package/esm2022/data-api/class-dto/obsolete/models/query-mode.model.mjs +18 -0
  45. package/esm2022/data-api/class-dto/obsolete/models/query-param.model.mjs +68 -0
  46. package/esm2022/data-api/class-dto/obsolete/models/query-result.model.mjs +24 -0
  47. package/esm2022/data-api/class-dto/obsolete/provide.mjs +40 -0
  48. package/esm2022/data-api/class-dto/obsolete/services/api.abstract.service.mjs +70 -0
  49. package/esm2022/data-api/class-dto/obsolete/services/crud-api.abstract.service.mjs +83 -0
  50. package/esm2022/data-api/class-dto/obsolete/services/get-all-api.abstract.service.mjs +38 -0
  51. package/esm2022/data-api/class-dto/obsolete/tableview/tableview-crud.data-provider.mjs +51 -0
  52. package/esm2022/data-api/class-dto/obsolete/utils/query-param-map.util.mjs +57 -0
  53. package/esm2022/data-api/class-dto/serder/object-serializer.mjs +184 -0
  54. package/esm2022/data-api/class-dto/services/api.abstract.service.mjs +55 -0
  55. package/esm2022/data-api/class-dto/services/crud-api.abstract.service.mjs +82 -0
  56. package/esm2022/data-api/class-dto/services/get-all-api.abstract.service.mjs +49 -0
  57. package/esm2022/data-api/class-dto/tableview/tableview-crud.data-provider.mjs +49 -0
  58. package/esm2022/data-api/helpers/get-all-params.mjs +180 -0
  59. package/esm2022/data-api/helpers/tableview-get-all-params-create.mjs +18 -0
  60. package/esm2022/data-api/index.mjs +10 -0
  61. package/esm2022/data-api/mediusinc-mng-commons-data-api.mjs +5 -0
  62. package/esm2022/data-api/models/request-params.model.mjs +2 -0
  63. package/esm2022/data-api/rxjs/map-to-data-list.operator.mjs +19 -0
  64. package/esm2022/data-api/types/extract-get-all-params.type.mjs +2 -0
  65. package/esm2022/index.mjs +3 -6
  66. package/esm2022/lib/components/action/action.component.mjs +4 -5
  67. package/esm2022/lib/components/action/editor/injector-context/action-editor-injector-context.component.mjs +2 -2
  68. package/esm2022/lib/components/action/models/action-execution.model.mjs +5 -4
  69. package/esm2022/lib/components/action/route/action-route.component.mjs +1 -2
  70. package/esm2022/lib/components/action/table/action-table.component.mjs +4 -6
  71. package/esm2022/lib/components/form/autocomplete/autocomplete.component.mjs +29 -17
  72. package/esm2022/lib/components/form/dropdown/dropdown.component.mjs +3 -7
  73. package/esm2022/lib/components/form/formly/fields/formly-field-lookup-dialog/formly-field-lookup-dialog.component.mjs +20 -18
  74. package/esm2022/lib/components/form/formly/fields/formly-field-table-dialog-form/formly-field-table-dialog-form.component.mjs +2 -2
  75. package/esm2022/lib/components/form/formly/fields/formly-field-table-dialog-multiselect/formly-field-table-dialog-multiselect.component.mjs +23 -12
  76. package/esm2022/lib/components/table/column-filter-full/column-filter-full.component.mjs +162 -33
  77. package/esm2022/lib/components/table/column-value/column-value.component.mjs +3 -3
  78. package/esm2022/lib/components/table/models/table.event.mjs +1 -1
  79. package/esm2022/lib/components/table/models/table.interface.mjs +1 -1
  80. package/esm2022/lib/components/table/table-column-filter-class/table-column-filter-class.pipe.mjs +4 -4
  81. package/esm2022/lib/components/table/table.component.mjs +117 -191
  82. package/esm2022/lib/components/tableview/actions/tableview-default-actions.mjs +215 -0
  83. package/esm2022/lib/components/tableview/builders/tableview-builder.mjs +162 -0
  84. package/esm2022/lib/components/tableview/helpers/tableview-create.mjs +24 -0
  85. package/esm2022/lib/components/tableview/index.mjs +5 -2
  86. package/esm2022/lib/components/tableview/models/tableview.model.mjs +2 -0
  87. package/esm2022/lib/components/tableview/route/tableview-route.component.mjs +7 -39
  88. package/esm2022/lib/components/tableview/tableview.component.mjs +4 -4
  89. package/esm2022/lib/data-providers/editor.data-provider.mjs +13 -13
  90. package/esm2022/lib/data-providers/index.mjs +1 -2
  91. package/esm2022/lib/data-providers/lookup.data-provider.mjs +1 -1
  92. package/esm2022/lib/data-providers/table.data-provider.mjs +4 -5
  93. package/esm2022/lib/data-providers/tableview.data-provider.mjs +1 -1
  94. package/esm2022/lib/descriptors/action/action-confirmation.descriptor.mjs +1 -1
  95. package/esm2022/lib/descriptors/action/action-editor.descriptor.mjs +10 -6
  96. package/esm2022/lib/descriptors/action/action.descriptor.mjs +2 -3
  97. package/esm2022/lib/descriptors/editor/editor.descriptor.mjs +13 -17
  98. package/esm2022/lib/descriptors/editor/field-lookup.descriptor.mjs +12 -17
  99. package/esm2022/lib/descriptors/editor/field.descriptor.mjs +5 -8
  100. package/esm2022/lib/descriptors/editor/internal/editor-fields.model.mjs +1 -1
  101. package/esm2022/lib/descriptors/filter/filter-lookup.descriptor.mjs +28 -52
  102. package/esm2022/lib/descriptors/filter/filter.descriptor.mjs +40 -23
  103. package/esm2022/lib/descriptors/model/enum.descriptor.mjs +31 -0
  104. package/esm2022/lib/descriptors/model/index.mjs +3 -1
  105. package/esm2022/lib/descriptors/model/model.descriptor.mjs +10 -1
  106. package/esm2022/lib/descriptors/model/type.descriptor.mjs +11 -0
  107. package/esm2022/lib/descriptors/table/column.descriptor.mjs +12 -107
  108. package/esm2022/lib/descriptors/table/index.mjs +2 -1
  109. package/esm2022/lib/descriptors/table/internal/table-columns.model.mjs +1 -1
  110. package/esm2022/lib/descriptors/table/internal/table.model.mjs +1 -1
  111. package/esm2022/lib/descriptors/table/sort.descriptor.mjs +45 -0
  112. package/esm2022/lib/descriptors/table/table.descriptor.mjs +208 -57
  113. package/esm2022/lib/descriptors/tableview/internal/tableview.model.mjs +1 -1
  114. package/esm2022/lib/descriptors/tableview/tableview.descriptor.mjs +114 -17
  115. package/esm2022/lib/descriptors/types/filter.type.mjs +1 -19
  116. package/esm2022/lib/descriptors/types/table.type.mjs +1 -5
  117. package/esm2022/lib/error/error.handler.mjs +1 -1
  118. package/esm2022/lib/helpers/data-provider-executors.mjs +80 -0
  119. package/esm2022/lib/models/data-list.model.mjs +2 -0
  120. package/esm2022/lib/models/filter-match.model.mjs +105 -0
  121. package/esm2022/lib/models/index.mjs +3 -1
  122. package/esm2022/lib/models/view-container.model.mjs +1 -1
  123. package/esm2022/lib/pipes/enum.pipe.mjs +6 -6
  124. package/esm2022/lib/provide.mjs +101 -0
  125. package/esm2022/lib/registry/type.registry.mjs +3 -10
  126. package/esm2022/lib/router/models/router.model.mjs +1 -1
  127. package/esm2022/lib/router/tableview-route-builder.mjs +1 -1
  128. package/esm2022/lib/services/action/action-executor.service.mjs +54 -32
  129. package/esm2022/lib/services/commons.service.mjs +1 -37
  130. package/esm2022/lib/services/data-provider-executor.service.mjs +52 -0
  131. package/esm2022/lib/services/index.mjs +2 -1
  132. package/esm2022/lib/services/view/view-container.service.mjs +1 -1
  133. package/esm2022/lib/types/action-descriptor.types.mjs +1 -1
  134. package/esm2022/lib/types/type.model.mjs +1 -1
  135. package/esm2022/lib/utils/data-list-params.util.mjs +416 -0
  136. package/esm2022/lib/utils/date.util.mjs +8 -2
  137. package/esm2022/lib/utils/enum.util.mjs +2 -1
  138. package/esm2022/lib/utils/error.util.mjs +3 -3
  139. package/esm2022/lib/utils/export.util.mjs +1 -1
  140. package/esm2022/lib/utils/index.mjs +2 -2
  141. package/esm2022/lib/utils/route.util.mjs +1 -2
  142. package/fesm2022/mediusinc-mng-commons-data-api-class-dto-obsolete.mjs +698 -0
  143. package/fesm2022/mediusinc-mng-commons-data-api-class-dto-obsolete.mjs.map +1 -0
  144. package/fesm2022/mediusinc-mng-commons-data-api-class-dto.mjs +480 -0
  145. package/fesm2022/mediusinc-mng-commons-data-api-class-dto.mjs.map +1 -0
  146. package/fesm2022/mediusinc-mng-commons-data-api.mjs +224 -0
  147. package/fesm2022/mediusinc-mng-commons-data-api.mjs.map +1 -0
  148. package/fesm2022/mediusinc-mng-commons.mjs +2634 -2549
  149. package/fesm2022/mediusinc-mng-commons.mjs.map +1 -1
  150. package/index.d.ts +2 -4
  151. package/lib/components/action/action.component.d.ts +13 -13
  152. package/lib/components/action/models/action-execution.model.d.ts +47 -46
  153. package/lib/components/action/table/action-table.component.d.ts +15 -16
  154. package/lib/components/form/autocomplete/autocomplete.component.d.ts +1 -1
  155. package/lib/components/form/formly/fields/formly-field-lookup-dialog/formly-field-lookup-dialog.component.d.ts +3 -5
  156. package/lib/components/form/formly/fields/formly-field-table-dialog-multiselect/formly-field-table-dialog-multiselect.component.d.ts +10 -10
  157. package/lib/components/table/column-filter-full/column-filter-full.component.d.ts +25 -9
  158. package/lib/components/table/models/table.event.d.ts +2 -2
  159. package/lib/components/table/models/table.interface.d.ts +4 -1
  160. package/lib/components/table/table-column-filter-class/table-column-filter-class.pipe.d.ts +2 -2
  161. package/lib/components/table/table.component.d.ts +19 -18
  162. package/lib/components/tableview/actions/tableview-default-actions.d.ts +36 -0
  163. package/lib/components/tableview/builders/tableview-builder.d.ts +115 -0
  164. package/lib/components/tableview/helpers/tableview-create.d.ts +16 -0
  165. package/lib/components/tableview/index.d.ts +4 -1
  166. package/lib/components/tableview/models/tableview.model.d.ts +8 -0
  167. package/lib/components/tableview/route/tableview-route.component.d.ts +5 -14
  168. package/lib/components/tableview/tableview.component.d.ts +12 -12
  169. package/lib/data-providers/editor.data-provider.d.ts +12 -12
  170. package/lib/data-providers/index.d.ts +0 -1
  171. package/lib/data-providers/lookup.data-provider.d.ts +2 -2
  172. package/lib/data-providers/table.data-provider.d.ts +25 -25
  173. package/lib/data-providers/tableview.data-provider.d.ts +18 -18
  174. package/lib/descriptors/action/action-confirmation.descriptor.d.ts +1 -1
  175. package/lib/descriptors/action/action-editor.descriptor.d.ts +20 -17
  176. package/lib/descriptors/editor/editor.descriptor.d.ts +8 -12
  177. package/lib/descriptors/editor/field-base.descriptor.d.ts +3 -3
  178. package/lib/descriptors/editor/field-lookup.descriptor.d.ts +11 -11
  179. package/lib/descriptors/editor/field-many.descriptor.d.ts +4 -4
  180. package/lib/descriptors/editor/field.descriptor.d.ts +2 -2
  181. package/lib/descriptors/editor/internal/editor-fields.model.d.ts +6 -5
  182. package/lib/descriptors/filter/filter-lookup.descriptor.d.ts +15 -14
  183. package/lib/descriptors/filter/filter.descriptor.d.ts +17 -18
  184. package/lib/descriptors/model/enum.descriptor.d.ts +14 -0
  185. package/lib/descriptors/model/index.d.ts +2 -0
  186. package/lib/descriptors/model/model.descriptor.d.ts +9 -0
  187. package/lib/descriptors/model/type.descriptor.d.ts +5 -0
  188. package/lib/descriptors/table/column.descriptor.d.ts +10 -24
  189. package/lib/descriptors/table/index.d.ts +1 -0
  190. package/lib/descriptors/table/internal/table-columns.model.d.ts +36 -5
  191. package/lib/descriptors/table/internal/table.model.d.ts +5 -2
  192. package/lib/descriptors/table/sort.descriptor.d.ts +17 -0
  193. package/lib/descriptors/table/table.descriptor.d.ts +57 -33
  194. package/lib/descriptors/tableview/internal/tableview.model.d.ts +3 -3
  195. package/lib/descriptors/tableview/tableview.descriptor.d.ts +49 -19
  196. package/lib/descriptors/types/filter.type.d.ts +0 -17
  197. package/lib/descriptors/types/table.type.d.ts +0 -3
  198. package/lib/error/error.handler.d.ts +1 -1
  199. package/lib/helpers/data-provider-executors.d.ts +19 -0
  200. package/lib/models/data-list.model.d.ts +27 -0
  201. package/lib/models/filter-match.model.d.ts +36 -0
  202. package/lib/models/index.d.ts +2 -0
  203. package/lib/models/view-container.model.d.ts +2 -2
  204. package/lib/pipes/enum.pipe.d.ts +2 -2
  205. package/lib/provide.d.ts +10 -0
  206. package/lib/router/models/router.model.d.ts +1 -1
  207. package/lib/router/tableview-route-builder.d.ts +1 -2
  208. package/lib/services/action/action-executor.service.d.ts +18 -16
  209. package/lib/services/data-provider-executor.service.d.ts +60 -0
  210. package/lib/services/index.d.ts +1 -0
  211. package/lib/services/view/view-container.service.d.ts +11 -11
  212. package/lib/types/action-descriptor.types.d.ts +2 -2
  213. package/lib/types/type.model.d.ts +1 -3
  214. package/lib/utils/data-list-params.util.d.ts +84 -0
  215. package/lib/utils/date.util.d.ts +3 -1
  216. package/lib/utils/enum.util.d.ts +4 -3
  217. package/lib/utils/export.util.d.ts +1 -1
  218. package/lib/utils/index.d.ts +1 -1
  219. package/openapi/angular/modelEnum.mustache +0 -3
  220. package/package.json +20 -2
  221. package/esm2022/lib/api/models/builders/query-param.builder.mjs +0 -59
  222. package/esm2022/lib/api/models/filter-match-type.model.mjs +0 -27
  223. package/esm2022/lib/api/models/filter-param.model.mjs +0 -33
  224. package/esm2022/lib/api/models/index.mjs +0 -7
  225. package/esm2022/lib/api/models/query-mode.model.mjs +0 -18
  226. package/esm2022/lib/api/models/query-param.model.mjs +0 -68
  227. package/esm2022/lib/api/models/query-result.model.mjs +0 -35
  228. package/esm2022/lib/api/services/api.abstract.service.mjs +0 -58
  229. package/esm2022/lib/api/services/crud-api.abstract.service.mjs +0 -75
  230. package/esm2022/lib/api/services/get-all-api.abstract.service.mjs +0 -30
  231. package/esm2022/lib/api/services/index.mjs +0 -4
  232. package/esm2022/lib/api/utils/index.mjs +0 -3
  233. package/esm2022/lib/api/utils/medius-rest.util.mjs +0 -293
  234. package/esm2022/lib/api/utils/object-serializer.util.mjs +0 -185
  235. package/esm2022/lib/components/tableview/route/tableview-route.abstract.component.mjs +0 -158
  236. package/esm2022/lib/data-providers/tableview-crud.data-provider.mjs +0 -32
  237. package/esm2022/lib/provide-commons.mjs +0 -88
  238. package/esm2022/lib/utils/action-data-provider.util.mjs +0 -171
  239. package/lib/api/models/builders/query-param.builder.d.ts +0 -13
  240. package/lib/api/models/index.d.ts +0 -6
  241. package/lib/api/services/get-all-api.abstract.service.d.ts +0 -14
  242. package/lib/api/services/index.d.ts +0 -3
  243. package/lib/api/utils/index.d.ts +0 -2
  244. package/lib/api/utils/medius-rest.util.d.ts +0 -32
  245. package/lib/components/tableview/route/tableview-route.abstract.component.d.ts +0 -35
  246. package/lib/data-providers/tableview-crud.data-provider.d.ts +0 -12
  247. package/lib/provide-commons.d.ts +0 -3
  248. package/lib/utils/action-data-provider.util.d.ts +0 -35
  249. package/templates/tableview-route.component.html +0 -5
  250. /package/{lib/api → data-api/class-dto/obsolete}/models/filter-match-type.model.d.ts +0 -0
  251. /package/{lib/api → data-api/class-dto/obsolete}/models/query-mode.model.d.ts +0 -0
@@ -17,10 +17,10 @@ export type ActionEditorDescriptorCreateOptsProviderType<Model, Service> = {
17
17
  };
18
18
  export type ActionEditorProviderType<Model, Service> = ServiceClassType<Service> | IEditorDataProvider<Model, Service>;
19
19
  export declare const actionEditorGetProviderCfgObj: <Model, Service>(serviceOrDataProvider?: ActionEditorProviderType<Model, Service> | undefined) => ActionEditorDescriptorCreateOptsProviderType<Model, Service>;
20
- export declare class ActionEditorDescriptorInst<Model, Service = any> extends ActionDescriptorInst<Model, Service> {
20
+ export declare class ActionEditorDescriptorInst<Item, Service = any> extends ActionDescriptorInst<Item, Service> {
21
21
  private readonly _editorDescriptor;
22
- protected readonly _dataProvider?: IEditorDataProvider<Model, any>;
23
- protected _editorActions: ActionDescriptorInst<Model>[];
22
+ protected readonly _dataProvider?: IEditorDataProvider<Item, any>;
23
+ protected _editorActions: ActionDescriptorInst<Item>[];
24
24
  protected _editorTitle?: string | null;
25
25
  protected _editorTitleParams?: any;
26
26
  protected _hasFetchNotificationSuccess: boolean;
@@ -28,26 +28,29 @@ export declare class ActionEditorDescriptorInst<Model, Service = any> extends Ac
28
28
  protected _fetchNotificationSuccessMessage?: string;
29
29
  protected _dialogSize: StyleSizeEnum;
30
30
  protected _dialogClassName?: string;
31
- protected _fetchFunction?: (ctx: ActionContext<Model, any>) => Observable<Model>;
32
- protected _submitFunction?: (ctx: ActionContext<Model, any>) => Observable<Model>;
31
+ protected _fetchFunction?: (ctx: ActionContext<Item, Service>) => Observable<Item>;
32
+ protected _submitFunction?: (ctx: ActionContext<Item, Service>) => Observable<Item>;
33
33
  protected _editorComponent?: Type<any>;
34
34
  protected _resubmitEnabled?: boolean;
35
35
  protected _resubmitRefetch: boolean;
36
36
  protected _unsavedChangesConfirmation: boolean;
37
- constructor(editorDescriptor: EditorDescriptorInst<Model>, actionName: string, cfg?: ActionEditorDescriptorConstructorOptsType<Model, Service>);
37
+ constructor(editorDescriptor: EditorDescriptorInst<Item>, actionName: string, cfg?: ActionEditorDescriptorConstructorOptsType<Item, Service>);
38
38
  get editorTitle(): string | null | undefined;
39
39
  get editorTitleParams(): any;
40
- get editorDescriptor(): EditorDescriptorInst<Model>;
40
+ get editorDescriptor(): EditorDescriptorInst<Item>;
41
41
  get dialogSize(): StyleSizeEnum;
42
42
  get dialogClassName(): string | undefined;
43
43
  get hasFetchNotificationSuccess(): boolean;
44
44
  get fetchNotificationSuccessTitle(): string | undefined;
45
45
  get fetchNotificationSuccessMessage(): string | undefined;
46
- get dataProvider(): IEditorDataProvider<Model, any> | undefined;
47
- get runFunction(): (ctx: ActionContext<Model, unknown>) => Observable<Model>;
48
- get fetchFunction(): ((ctx: ActionContext<Model, any>) => Observable<Model>) | undefined;
49
- get submitFunction(): ((ctx: ActionContext<Model, any>) => Observable<Model>) | undefined;
50
- get editorActions(): ActionDescriptorInst<Model, any>[];
46
+ get dataProvider(): IEditorDataProvider<Item, any> | undefined;
47
+ get hasRunFunction(): boolean;
48
+ get runFunction(): (ctx: ActionContext<Item, unknown>) => Observable<Item>;
49
+ get hasFetchFunction(): boolean;
50
+ get fetchFunction(): ((ctx: ActionContext<Item, Service>) => Observable<Item>) | undefined;
51
+ get hasSubmitFunction(): boolean;
52
+ get submitFunction(): ((ctx: ActionContext<Item, Service>) => Observable<Item>) | undefined;
53
+ get editorActions(): ActionDescriptorInst<Item, any>[];
51
54
  get editorComponent(): Type<any> | undefined;
52
55
  get resubmitEnabled(): boolean | undefined;
53
56
  get resubmitRefetch(): boolean;
@@ -55,12 +58,12 @@ export declare class ActionEditorDescriptorInst<Model, Service = any> extends Ac
55
58
  withEditorTitle(title: string | null, params?: any): this;
56
59
  withDialogSize(size?: StyleSizeEnum): this;
57
60
  withDialogClassName(className: string): this;
58
- withRunFunction(fn: (ctx: ActionContext<Model, Service>) => Observable<Model>): this;
59
- withFetchFunction(fn: (ctx: ActionContext<Model, Service>) => Observable<Model>): this;
60
- withSubmitFunction(fn: (ctx: ActionContext<Model, Service>) => Observable<Model>): this;
61
+ withRunFunction(fn: (ctx: ActionContext<Item, Service>) => Observable<Item>): this;
62
+ withFetchFunction(fn: (ctx: ActionContext<Item, Service>) => Observable<Item>): this;
63
+ withSubmitFunction(fn: (ctx: ActionContext<Item, Service>) => Observable<Item>): this;
61
64
  withFetchNotificationError(title?: string, message?: string, hasNotification?: boolean): this;
62
- withEditorAction(action: ActionDescriptorInst<Model>): this;
63
- withEditorActions(actions: ActionDescriptorInst<Model>[]): this;
65
+ withEditorAction(action: ActionDescriptorInst<Item>): this;
66
+ withEditorActions(actions: ActionDescriptorInst<Item>[]): this;
64
67
  withEditorComponent(editorComponent: Type<any>): this;
65
68
  withResubmit(enabled?: boolean, refetch?: boolean): this;
66
69
  withUnsavedChangesConfirmation(unsavedChangesConfirmation?: boolean): this;
@@ -3,8 +3,8 @@ import { Subject } from 'rxjs';
3
3
  import { MngFieldEventData, MngFormEvent, MngFormEventTypeEnum } from '../../components/form/models';
4
4
  import { ILookupDataProvider, ITableDataProvider } from '../../data-providers';
5
5
  import { TableviewAttributeDef } from '../../models';
6
- import { ArrayItemType, ClassType, EnumConstantType, EnumType, IdType, MngFieldValidationMessage, MngFieldValidator, Nullable } from '../../types';
7
- import { ModelDescriptor } from '../model';
6
+ import { ArrayItemType, ClassType, EnumConstantType, IdType, MngFieldValidationMessage, MngFieldValidator, Nullable } from '../../types';
7
+ import { EnumDescriptor, ModelDescriptor } from '../model';
8
8
  import { TableDescriptorInst } from '../table';
9
9
  import { TableviewDescriptorInst } from '../tableview';
10
10
  import { FieldInputTypeEnum, TableviewEditorTypeEnum } from '../types';
@@ -126,16 +126,14 @@ export declare class EditorDescriptorInst<EditorModel> implements IEditorDescrip
126
126
  addFieldLookupWithPropertyAsValueUnsafe<FieldModel, FieldValue = Nullable<IdType>>(property: string, optionsValueProperty: string): FieldLookupDescriptor<FieldModel, EditorModel, undefined, FieldValue, string>;
127
127
  addFieldLookupWithProvider<Service, Property extends keyof EditorModel, FieldModel = NonNullable<EditorModel[Property]>, FieldValue = EditorModel[Property]>(property: Property, provider: FieldLookupProviderType<FieldModel, Service>, type?: ClassType<FieldModel>): FieldLookupDescriptor<FieldModel, EditorModel, Service, FieldValue, string>;
128
128
  addFieldLookupWithProviderUnsafe<Service, FieldModel, FieldValue = FieldModel>(property: string, provider: FieldLookupProviderType<FieldModel, Service>, type?: ClassType<FieldModel>): FieldLookupDescriptor<FieldModel, EditorModel, Service, FieldValue, string>;
129
- addFieldLookupEnum(property: keyof EditorModel, enumType: EnumType, options?: Array<EnumConstantType>, nameAsValue?: boolean, optionsTitlePath?: string | null): FieldLookupEnumDescriptor<EditorModel>;
129
+ addFieldLookupEnum<Property extends keyof EditorModel, Enum extends NonNullable<EditorModel[Property]>>(property: keyof EditorModel, enumDesc: EnumDescriptor<Enum>, options?: Array<Enum>): FieldLookupEnumDescriptor<Enum, EditorModel>;
130
130
  /**
131
131
  * Adds enum lookup field.
132
132
  * @param property Model's property name.
133
- * @param enumType Type of enum.
133
+ * @param enumDesc Type of enum or enum descriptor.
134
134
  * @param options Provides subset of enum's available constants.
135
- * @param nameAsValue If constant's name should be used as final value of the enum. Primarily, constant's value will be used.
136
- * @param optionsTitlePath Title key path from where translations are provided. If null, the enum's values won't be translated.
137
135
  */
138
- addFieldLookupEnumUnsafe(property: string, enumType: EnumType, options?: Array<EnumConstantType>, nameAsValue?: boolean, optionsTitlePath?: string | null): FieldLookupEnumDescriptor<EditorModel>;
136
+ addFieldLookupEnumUnsafe<Enum = EnumConstantType>(property: string, enumDesc: EnumDescriptor<Enum>, options?: Array<Enum>): FieldLookupEnumDescriptor<Enum, EditorModel>;
139
137
  /**
140
138
  * Adds table/details/add/edit field for one-to-many (1:n) relations.
141
139
  * @param property Model's property name.
@@ -213,13 +211,11 @@ export declare class EditorDescriptorInst<EditorModel> implements IEditorDescrip
213
211
  /**
214
212
  * Modifies selected field with enum type.
215
213
  * @param property Model's property name.
216
- * @param enumType type of enum for new field
217
- * @param optionsTitlePath
214
+ * @param enumModel Enum descriptor.
218
215
  * @param values
219
- * @param nameAsValue
220
216
  */
221
- withFieldModifiedEnum(property: keyof EditorModel, enumType?: EnumType, optionsTitlePath?: string | null, values?: Array<EnumConstantType>, nameAsValue?: boolean): this;
222
- withFieldModifiedEnumUnsafe(property: string, enumType?: EnumType, optionsTitlePath?: string | null, values?: Array<EnumConstantType>, nameAsValue?: boolean): this;
217
+ withFieldModifiedEnum<Property extends keyof EditorModel, Enum extends NonNullable<EditorModel[Property]>>(property: Property, enumModel?: EnumDescriptor<Enum>, values?: Array<Enum>): this;
218
+ withFieldModifiedEnumUnsafe<Enum = any>(property: string, enumDesc?: EnumDescriptor<Enum>, values?: Array<Enum>): this;
223
219
  /**
224
220
  * Modifies selected field with lookup field.
225
221
  * @param property Model's property name.
@@ -64,16 +64,16 @@ export declare abstract class AFieldDescriptor<FieldModel, EditorModel, FieldVal
64
64
  get setter(): ((item: EditorModel, value: FieldValue) => void) | undefined;
65
65
  get validations(): FieldValidationDescriptor[];
66
66
  get asyncValidations(): FieldValidationDescriptor[];
67
- get requiredExpression(): string | Observable<boolean> | ((field?: FormlyFieldConfig<import("@ngx-formly/core").FormlyFieldProps & {
67
+ get requiredExpression(): string | ((field?: FormlyFieldConfig<import("@ngx-formly/core").FormlyFieldProps & {
68
68
  [additionalProperties: string]: any;
69
- }> | undefined) => boolean) | undefined;
69
+ }> | undefined) => boolean) | Observable<boolean> | undefined;
70
70
  get disabledExpression(): string | Observable<boolean> | ((field?: FormlyFieldConfig<import("@ngx-formly/core").FormlyFieldProps & {
71
71
  [additionalProperties: string]: any;
72
72
  }> | undefined) => boolean) | undefined;
73
73
  get hiddenExpression(): string | Observable<boolean> | ((field?: FormlyFieldConfig<import("@ngx-formly/core").FormlyFieldProps & {
74
74
  [additionalProperties: string]: any;
75
75
  }> | undefined) => boolean) | undefined;
76
- get updateOn(): "submit" | "change" | "blur";
76
+ get updateOn(): "change" | "blur" | "submit";
77
77
  get onInit(): MngFormlyHookFn | undefined;
78
78
  get onChanges(): MngFormlyHookFn | undefined;
79
79
  get afterContentInit(): MngFormlyHookFn | undefined;
@@ -1,7 +1,8 @@
1
1
  import { ILookupDataProvider, ITableDataProvider, LookupDataProviderLookupFnType } from '../../data-providers';
2
2
  import { EnumValue } from '../../models';
3
- import { ClassType, EnumConstantType, EnumType, ServiceClassType } from '../../types';
3
+ import { ClassType, EnumConstantType, ServiceClassType } from '../../types';
4
4
  import { FieldLookupConfig, ILookupDescriptor } from '../interfaces';
5
+ import { EnumDescriptor } from '../model';
5
6
  import { TableDescriptorInst } from '../table';
6
7
  import { FieldLookupTypeEnum, InputTrimType } from '../types';
7
8
  import { AFieldDescriptor } from './field-base.descriptor';
@@ -37,7 +38,7 @@ export declare class FieldLookupDescriptor<FieldModel, EditorModel, Service = an
37
38
  protected _autocompleteSelectFirst?: boolean;
38
39
  protected _autocompleteInputTrim?: InputTrimType;
39
40
  protected _dialogTableDescriptor?: TableDescriptorInst<FieldModel>;
40
- protected _dialogTableDataProvider?: ITableDataProvider<FieldModel, any>;
41
+ protected _dialogTableDataProvider?: ITableDataProvider<FieldModel, any, any, any>;
41
42
  protected _customComponentName?: string;
42
43
  constructor(editor: IEditorDescriptorInternal<EditorModel>, property: Property, cfg?: FieldLookupDescriptorConstructorOptsType<FieldModel, Service>);
43
44
  get lookupType(): FieldLookupTypeEnum;
@@ -52,8 +53,8 @@ export declare class FieldLookupDescriptor<FieldModel, EditorModel, Service = an
52
53
  get autocompleteAutoClear(): boolean | undefined;
53
54
  get autocompleteSelectFirst(): boolean | undefined;
54
55
  get dropdownClassName(): string;
55
- get dialogTableDescriptor(): TableDescriptorInst<FieldModel> | undefined;
56
- get dialogTableDataProvider(): ITableDataProvider<FieldModel, any> | undefined;
56
+ get dialogTableDescriptor(): TableDescriptorInst<FieldModel, keyof FieldModel, keyof FieldModel> | undefined;
57
+ get dialogTableDataProvider(): ITableDataProvider<FieldModel, any, any, any> | undefined;
57
58
  get customComponentName(): string | undefined;
58
59
  get trimOption(): InputTrimType | undefined;
59
60
  withOptionsLabelProperty(property: keyof FieldModel, translate?: boolean): this;
@@ -66,18 +67,17 @@ export declare class FieldLookupDescriptor<FieldModel, EditorModel, Service = an
66
67
  withInputTrim(trimOption?: InputTrimType): this;
67
68
  withConfig(config: FieldLookupConfig): this;
68
69
  asAutocomplete(opts?: FieldLookupAutocompleteOptsType): this;
69
- asDialog(lookupTableDescriptor: TableDescriptorInst<FieldModel>, tableDataProvider?: ITableDataProvider<FieldModel, any>): this;
70
+ asDialog(lookupTableDescriptor: TableDescriptorInst<FieldModel>, tableDataProvider?: ITableDataProvider<FieldModel, any, any, any>): this;
70
71
  asCustomComponent(customComponentName: string): this;
71
72
  copy(): FieldLookupDescriptor<FieldModel, EditorModel, Service, FieldValue>;
72
73
  }
73
- export declare class FieldLookupEnumDescriptor<EditorModel> extends FieldLookupDescriptor<EnumValue, EditorModel, undefined, EnumConstantType> {
74
- private readonly _enumType;
74
+ export declare class FieldLookupEnumDescriptor<Enum, EditorModel> extends FieldLookupDescriptor<EnumValue, EditorModel, undefined, EnumConstantType> {
75
+ private readonly _enumModel;
75
76
  private readonly _optionEnumValues;
76
- private readonly _nameAsValue;
77
- constructor(editor: IEditorDescriptorInternal<EditorModel>, property: string, enumType: EnumType, options?: Array<EnumConstantType>, nameAsValue?: boolean, optionsTitlePath?: string | null);
78
- get enumType(): EnumType<EnumConstantType>;
77
+ constructor(editor: IEditorDescriptorInternal<EditorModel>, property: string, enumModel: EnumDescriptor<Enum>, options?: Array<Enum>);
78
+ get enumModel(): EnumDescriptor<Enum>;
79
79
  withDisabledOptions(...disabledOptions: Array<EnumConstantType>): this;
80
80
  withDefaultValueEnum(defaultValue: EnumConstantType): this;
81
81
  asAutocomplete(opts?: FieldLookupAutocompleteOptsType): this;
82
- copy(): FieldLookupEnumDescriptor<EditorModel>;
82
+ copy(): FieldLookupEnumDescriptor<Enum, EditorModel>;
83
83
  }
@@ -30,8 +30,8 @@ export declare class FieldManyToManyEditorDescriptor<FieldModel, EditorModel, Se
30
30
  get hasLookupExcludeValues(): boolean;
31
31
  get excludeFilterProperty(): string;
32
32
  get excludeValueProperty(): string;
33
- get mainTableDescriptor(): TableDescriptorInst<FieldModel>;
34
- get lookupTableDescriptor(): TableDescriptorInst<FieldModel>;
33
+ get mainTableDescriptor(): TableDescriptorInst<FieldModel, keyof FieldModel, keyof FieldModel>;
34
+ get lookupTableDescriptor(): TableDescriptorInst<FieldModel, keyof FieldModel, keyof FieldModel>;
35
35
  get lookupTableDataProvider(): ITableDataProvider<FieldModel, Service>;
36
36
  get searchEnabled(): boolean;
37
37
  get searchFields(): string[] | undefined;
@@ -51,8 +51,8 @@ export declare class FieldManyEditorDescriptor<FieldModel, EditorModel, FieldVal
51
51
  get fieldType(): FieldManyEditorTypeEnum;
52
52
  get fieldActions(): FieldManyEditorActionEnum[];
53
53
  get actions(): ActionDescriptorInst<FieldModel, any>[];
54
- get tableviewDescriptor(): TableviewDescriptorInst<FieldModel>;
55
- get tableDescriptor(): TableDescriptorInst<FieldModel>;
54
+ get tableviewDescriptor(): TableviewDescriptorInst<FieldModel, keyof FieldModel, keyof FieldModel>;
55
+ get tableDescriptor(): TableDescriptorInst<FieldModel, keyof FieldModel, keyof FieldModel>;
56
56
  get editorForCreate(): import("@mediusinc/mng-commons").EditorDescriptorInst<FieldModel>;
57
57
  get editorForRead(): import("@mediusinc/mng-commons").EditorDescriptorInst<FieldModel>;
58
58
  get editorForUpdate(): import("@mediusinc/mng-commons").EditorDescriptorInst<FieldModel>;
@@ -2,7 +2,7 @@ import { Type } from '@angular/core';
2
2
  import { AbstractControl } from '@angular/forms';
3
3
  import { AMngFormlyCustomFieldComponent } from '../../components/form/formly/fields/';
4
4
  import { RadioValue } from '../../models';
5
- import { EnumConstantType, EnumType } from '../../types';
5
+ import { EnumDescriptor } from '../model';
6
6
  import { FieldInputTypeEnum, InputTrimType } from '../types';
7
7
  import { AFieldDescriptor } from './field-base.descriptor';
8
8
  import { IEditorDescriptorInternal } from './internal/editor.model';
@@ -148,7 +148,7 @@ export declare class FieldInputDescriptor<EditorModel, FieldModel = FieldInputDe
148
148
  asCurrencyUnsafe(opts?: FieldInputCurrencyOptsType): this;
149
149
  asSwitch(): this;
150
150
  asRadio(options: Array<string | number | boolean>, optionsTitlePath?: string): this;
151
- asRadioFromEnum(enumType: EnumType, optionsTitlePath?: string | null, values?: Array<EnumConstantType>, nameAsValue?: boolean): this;
151
+ asRadioFromEnum<Enum>(enumModel: EnumDescriptor<Enum>, values?: Array<Enum>): this;
152
152
  asDatePicker(opts?: FieldInputDatePickerOptsType): this;
153
153
  asMask(mask: string, slotChar: string): this;
154
154
  asFile(opts?: FieldInputFileOpts): this;
@@ -1,5 +1,6 @@
1
1
  import { ITableDataProvider } from '../../../data-providers';
2
- import { ArrayItemType, ClassType, EnumConstantType, EnumType, IdType, Nullable } from '../../../types';
2
+ import { ArrayItemType, ClassType, EnumConstantType, IdType, Nullable } from '../../../types';
3
+ import { EnumDescriptor } from '../../model';
3
4
  import { ITableDescriptorInternal } from '../../table/internal/table.model';
4
5
  import { ITableviewDescriptorInternal } from '../../tableview/internal/tableview.model';
5
6
  import { TableviewEditorTypeEnum } from '../../types';
@@ -21,10 +22,10 @@ export interface IFieldsManageInterface<EditorModel> {
21
22
  addFieldLookupWithPropertyAsValueUnsafe<FieldModel, FieldValue = Nullable<IdType>>(property: string, optionsValueProperty: string): FieldLookupDescriptor<FieldModel, EditorModel, undefined, FieldValue>;
22
23
  addFieldLookupWithProvider<Service, Property extends keyof EditorModel, FieldModel = NonNullable<EditorModel[Property]>, FieldValue = EditorModel[Property]>(property: Property, provider: FieldLookupProviderType<FieldModel, Service>, type?: ClassType<FieldModel>): FieldLookupDescriptor<FieldModel, EditorModel, Service, FieldValue>;
23
24
  addFieldLookupWithProviderUnsafe<Service, FieldModel, FieldValue = FieldModel>(property: string, provider: FieldLookupProviderType<FieldModel, Service>, type?: ClassType<FieldModel>): FieldLookupDescriptor<FieldModel, EditorModel, Service, FieldValue>;
24
- addFieldLookupEnum(property: keyof EditorModel, enumType: EnumType, options?: Array<EnumConstantType>, nameAsValue?: boolean, optionsTitlePath?: string | null): FieldLookupEnumDescriptor<EditorModel>;
25
- addFieldLookupEnumUnsafe(property: string, enumType: EnumType, options?: Array<EnumConstantType>, nameAsValue?: boolean, optionsTitlePath?: string | null): FieldLookupEnumDescriptor<EditorModel>;
26
- addFieldManyEditor<Property extends keyof EditorModel, FieldModel = ArrayItemType<EditorModel[Property]>, FieldValue = EditorModel[Property]>(property: Property, tableviewDescriptor: ITableviewDescriptorInternal<FieldModel>): FieldManyEditorDescriptor<FieldModel, EditorModel, FieldValue>;
27
- addFieldManyEditorUnsafe<FieldModel, FieldValue = FieldModel[]>(property: string, tableviewDescriptor: ITableviewDescriptorInternal<FieldModel>): FieldManyEditorDescriptor<FieldModel, EditorModel, FieldValue>;
25
+ addFieldLookupEnum<Property extends keyof EditorModel, Enum extends NonNullable<EditorModel[Property]>>(property: keyof EditorModel, enumModel: EnumDescriptor<Enum>, options?: Array<Enum>): FieldLookupEnumDescriptor<Enum, EditorModel>;
26
+ addFieldLookupEnumUnsafe<Enum = EnumConstantType>(property: string, enumModel: EnumDescriptor<Enum>, options?: Array<Enum>): FieldLookupEnumDescriptor<Enum, EditorModel>;
27
+ addFieldManyEditor<Property extends keyof EditorModel, FieldModel = ArrayItemType<EditorModel[Property]>, FieldValue = EditorModel[Property]>(property: Property, tableviewDescriptor: ITableviewDescriptorInternal<FieldModel, any, any>): FieldManyEditorDescriptor<FieldModel, EditorModel, FieldValue>;
28
+ addFieldManyEditorUnsafe<FieldModel, FieldValue = FieldModel[]>(property: string, tableviewDescriptor: ITableviewDescriptorInternal<FieldModel, any, any>): FieldManyEditorDescriptor<FieldModel, EditorModel, FieldValue>;
28
29
  addFieldManyToManyEditor<Property extends keyof EditorModel, FieldModel = ArrayItemType<EditorModel[Property]>, FieldValue = EditorModel[Property]>(property: Property, mainTableDescriptor: ITableDescriptorInternal<FieldModel>, lookupTableDescriptor: ITableDescriptorInternal<FieldModel>): FieldManyToManyEditorDescriptor<FieldModel, EditorModel, undefined, FieldValue>;
29
30
  addFieldManyToManyEditorUnsafe<FieldModel, FieldValue = FieldModel[]>(property: string, mainTableDescriptor: ITableDescriptorInternal<FieldModel>, lookupTableDescriptor: ITableDescriptorInternal<FieldModel>): FieldManyToManyEditorDescriptor<FieldModel, EditorModel, undefined, FieldValue>;
30
31
  addFieldManyToManyEditorWithProvider<Property extends keyof EditorModel, Service, FieldModel = ArrayItemType<EditorModel[Property]>, FieldValue = EditorModel[Property]>(property: Property, mainTableDescriptor: ITableDescriptorInternal<FieldModel>, lookupTableDescriptor: ITableDescriptorInternal<FieldModel>, lookupDataProvider: ITableDataProvider<FieldModel, Service>): FieldManyToManyEditorDescriptor<FieldModel, EditorModel, Service, FieldValue>;
@@ -1,8 +1,9 @@
1
1
  import { ILookupDataProvider, LookupDataProviderLookupFnType } from '../../data-providers';
2
- import { EnumValue } from '../../models';
3
- import { ClassType, EnumConstantType, EnumType, ServiceClassType } from '../../types';
2
+ import { EnumValue, FilterMatchModeExtendedType } from '../../models';
3
+ import { ClassType, EnumConstantType, ServiceClassType } from '../../types';
4
4
  import { ILookupDescriptor } from '../interfaces';
5
- import { FilterLookupTypeEnum, FilterMatchModeEnum } from '../types';
5
+ import { EnumDescriptor } from '../model';
6
+ import { FilterLookupTypeEnum } from '../types';
6
7
  import { FilterDescriptor } from './filter.descriptor';
7
8
  export type FilterLookupDescriptorConstructorOptsType<FilterModel, Service> = FilterLookupDescriptorCreateOptsProviderType<FilterModel, Service> & {
8
9
  type?: ClassType<FilterModel>;
@@ -17,7 +18,7 @@ export type FilterLookupAutocompleteOptsType = {
17
18
  inlineSearch?: boolean;
18
19
  autoClear?: boolean;
19
20
  };
20
- export declare class FilterLookupDescriptor<FilterModel, Service = any> extends FilterDescriptor<FilterModel> implements ILookupDescriptor<FilterModel> {
21
+ export declare class FilterLookupDescriptor<FilterModel, TableModel, Service = any> extends FilterDescriptor<FilterModel, TableModel> implements ILookupDescriptor<FilterModel> {
21
22
  protected readonly _dataProvider: ILookupDataProvider<FilterModel, Service>;
22
23
  protected readonly _optionsValueProperty?: string | null;
23
24
  protected _lookupType?: FilterLookupTypeEnum;
@@ -50,20 +51,20 @@ export declare class FilterLookupDescriptor<FilterModel, Service = any> extends
50
51
  withLookup(lookup?: LookupDataProviderLookupFnType<FilterModel, Service>): this;
51
52
  withMultiselect(multiselect?: boolean): this;
52
53
  withDropdownClassName(dropdownClassName: string): this;
53
- withDefaultFilter(filterValue: FilterModel | FilterModel[], filterValueTo?: FilterModel, filterMatchMode?: FilterMatchModeEnum): this;
54
+ withDefaultFilter(value: FilterModel | FilterModel[] | undefined, matchMode: FilterMatchModeExtendedType): this;
54
55
  asAutocomplete(opts?: FilterLookupAutocompleteOptsType): this;
55
- copy(): FilterLookupDescriptor<FilterModel>;
56
- protected copyFieldsTo(filter: FilterLookupDescriptor<FilterModel>): void;
56
+ copy(): FilterLookupDescriptor<FilterModel, TableModel, Service>;
57
+ protected copyFieldsTo(filter: FilterLookupDescriptor<FilterModel, TableModel, Service>): void;
57
58
  }
58
- export declare class FilterLookupEnumDescriptor extends FilterLookupDescriptor<EnumValue> {
59
- private readonly _enumType;
59
+ export declare class FilterLookupEnumDescriptor<Enum, TableModel> extends FilterLookupDescriptor<EnumValue, TableModel> {
60
+ private readonly _enum;
60
61
  private readonly _optionEnumValues;
61
62
  private readonly _nameAsValue;
62
- constructor(property: string, enumType: EnumType, options?: Array<EnumConstantType>, nameAsValue?: boolean, optionsTitlePath?: string | null);
63
- get enumType(): EnumType<EnumConstantType>;
63
+ constructor(property: string, enumDesc: EnumDescriptor<Enum>, options?: Array<Enum>);
64
+ get enum(): EnumDescriptor<Enum>;
64
65
  asAutocomplete(opts?: FilterLookupAutocompleteOptsType): this;
65
- withMultiselectEnum(multiselect?: boolean): FilterLookupEnumDescriptor;
66
+ withMultiselectEnum(multiselect?: boolean): FilterLookupEnumDescriptor<Enum, TableModel>;
66
67
  withDefaultFilter(): this;
67
- withDefaultFilterEnum(filterValue: EnumConstantType | EnumConstantType[], filterValueTo?: EnumConstantType, filterMatchMode?: FilterMatchModeEnum): this;
68
- copy(): FilterLookupEnumDescriptor;
68
+ withDefaultFilterEnum(value: EnumConstantType | EnumConstantType[] | undefined, matchMode: FilterMatchModeExtendedType): this;
69
+ copy(): FilterLookupEnumDescriptor<Enum, TableModel>;
69
70
  }
@@ -1,18 +1,19 @@
1
- import { FilterMatchModeEnum, FilterTypeEnum, InputTrimType } from '../types';
2
- export declare class FilterDescriptor<FilterModel> {
1
+ import { FilterMatchModeExtendedType } from '../../models';
2
+ import { FilterTypeEnum, InputTrimType } from '../types';
3
+ export declare class FilterDescriptor<FilterModel, TableModel> {
3
4
  protected readonly _property: string;
5
+ protected _showOnColumn: string;
4
6
  protected _filterType: FilterTypeEnum;
5
- protected _filterProperty?: string;
6
7
  protected _hasDefaultValue: boolean;
7
- protected _defaultFilterMatchMode?: FilterMatchModeEnum;
8
+ protected _defaultMatchMode?: FilterMatchModeExtendedType;
8
9
  protected _defaultValue?: FilterModel | FilterModel[];
9
- protected _defaultValueTo?: FilterModel;
10
10
  protected _matchModes: string[] | null;
11
11
  protected _numberMinFractionDigits?: number;
12
12
  protected _numberMaxFractionDigits?: number;
13
13
  protected _numberUseGrouping: boolean;
14
14
  protected _datePickerFormat?: string;
15
15
  protected _datePickerShowTime: boolean;
16
+ protected _datePickerShowSeconds: boolean;
16
17
  protected _datePickerValueNoTime?: boolean;
17
18
  protected _datePickerValueNoTimezone?: boolean;
18
19
  protected _datePickerValueUtc?: boolean;
@@ -24,17 +25,17 @@ export declare class FilterDescriptor<FilterModel> {
24
25
  protected _inputTrim?: InputTrimType;
25
26
  constructor(property: string);
26
27
  get filterType(): FilterTypeEnum;
28
+ get showOnColumn(): string;
27
29
  get hasDefaultValue(): boolean;
28
30
  get defaultValue(): FilterModel | FilterModel[] | undefined;
29
- get defaultValueTo(): FilterModel | undefined;
30
- get defaultFilterMatchMode(): FilterMatchModeEnum | undefined;
31
- get filterProperty(): string | undefined;
31
+ get defaultMatchMode(): string | undefined;
32
32
  get matchModes(): string[] | null;
33
33
  get numberMinFractionDigits(): number | undefined;
34
34
  get numberMaxFractionDigits(): number | undefined;
35
35
  get numberUseGrouping(): boolean;
36
36
  get datePickerFormat(): string | undefined;
37
37
  get datePickerShowTime(): boolean;
38
+ get datePickerShowSeconds(): boolean;
38
39
  get datePickerValueUtc(): boolean | undefined;
39
40
  get datePickerValueNoTimezone(): boolean | undefined;
40
41
  get datePickerValueNoTime(): boolean | undefined;
@@ -46,22 +47,20 @@ export declare class FilterDescriptor<FilterModel> {
46
47
  get trimOption(): InputTrimType | undefined;
47
48
  get property(): string;
48
49
  asFilterType(filterType: FilterTypeEnum): this;
49
- /**
50
- * Sets different filter property name instead of default property. Use this if API requires different property provided to perform correct filter.
51
- * @param filterProperty
52
- */
53
- withFilterProperty(filterProperty: string): this;
54
- withDefaultFilter(filterValue: FilterModel, filterValueTo?: FilterModel, filterMatchMode?: FilterMatchModeEnum): this;
50
+ withShowOnColumn(property: keyof TableModel): this;
51
+ withShowOnColumnUnsafe(property: string): this;
52
+ withDefaultFilter(value: FilterModel | FilterModel[] | undefined, matchMode: FilterMatchModeExtendedType): this;
53
+ protected validateDefaultFilter(value: FilterModel | FilterModel[] | undefined, matchMode: FilterMatchModeExtendedType): void;
55
54
  withNumberFractions(min?: number, max?: number): this;
56
55
  withNumberGrouping(useGrouping?: boolean): this;
57
- withDateFormat(format?: string, showTime?: boolean): this;
56
+ withDateFormat(format?: string, showTime?: boolean, showSeconds?: boolean): this;
58
57
  withDateValue(utc?: boolean, noTimezone?: boolean, noTime?: boolean): this;
59
58
  withPlaceholder(placeholder: string): this;
60
59
  withClassName(className: string): this;
61
60
  withColumnClassName(className: string): this;
62
61
  withColumnWidth(width?: number, minWidth?: number): this;
63
62
  withInputTrimming(trimOption?: InputTrimType): this;
64
- withMatchModes(matchModes: Array<FilterMatchModeEnum>): this;
65
- copy(): FilterDescriptor<FilterModel>;
66
- protected copyFieldsTo(descriptor: FilterDescriptor<FilterModel>): void;
63
+ withMatchModes(matchModes: Array<FilterMatchModeExtendedType>): this;
64
+ copy(): FilterDescriptor<FilterModel, TableModel>;
65
+ protected copyFieldsTo(descriptor: FilterDescriptor<FilterModel, TableModel>): void;
67
66
  }
@@ -0,0 +1,14 @@
1
+ import { EnumType } from '../../types';
2
+ export declare class EnumDescriptor<Enum> {
3
+ private readonly _value;
4
+ private readonly _type;
5
+ private readonly _nameAsValue;
6
+ private readonly _i18nBaseKey?;
7
+ protected constructor(value: Enum, type: EnumType, i18nBaseKey?: string | null, nameAsValue?: boolean);
8
+ get type(): EnumType<import("../../types").EnumConstantType>;
9
+ get i18nBaseKey(): string | null | undefined;
10
+ get nameAsValue(): boolean;
11
+ static create<Enum>(value: Enum, type: EnumType, i18nBaseKey?: string | null, nameAsValue?: boolean): EnumDescriptor<Enum>;
12
+ }
13
+ export declare function enumModel<Enum>(value: Enum, type: EnumType, i18nBaseKey?: string | null, nameAsValue?: boolean): EnumDescriptor<Enum>;
14
+ export declare function enumModelGeneric(type: EnumType, i18nBaseKey?: string | null, nameAsValue?: boolean): EnumDescriptor<any>;
@@ -1 +1,3 @@
1
+ export * from './enum.descriptor';
1
2
  export * from './model.descriptor';
3
+ export * from './type.descriptor';
@@ -1,4 +1,5 @@
1
1
  import { ClassOptType, ClassType } from '../../types';
2
+ import { TypeDescriptor } from './type.descriptor';
2
3
  export declare class ModelDescriptor<Model, ModelClass = ClassOptType<Model>> {
3
4
  private readonly _type;
4
5
  private readonly _typeName?;
@@ -20,3 +21,11 @@ export declare class ModelDescriptor<Model, ModelClass = ClassOptType<Model>> {
20
21
  withI18nBase(base: ClassType<any> | string): this;
21
22
  copy(): ModelDescriptor<Model, ModelClass>;
22
23
  }
24
+ export type ModelDescriptorCreateOpts<Model> = {
25
+ id?: keyof Model;
26
+ title?: keyof Model;
27
+ i18nBase?: string | ClassType<any>;
28
+ };
29
+ export declare function modelFromClass<Model>(type: ClassType<Model>, opts?: ModelDescriptorCreateOpts<Model>): ModelDescriptor<Model, ClassType<Model>>;
30
+ export declare function modelFromType<Model>(type: TypeDescriptor<Model>, opts?: ModelDescriptorCreateOpts<Model>): ModelDescriptor<Model, undefined>;
31
+ export declare function model<Model>(opts?: ModelDescriptorCreateOpts<Model>): ModelDescriptor<Model, undefined>;
@@ -0,0 +1,5 @@
1
+ export declare class TypeDescriptor<Type> {
2
+ protected constructor();
3
+ static create<Type>(): TypeDescriptor<Type>;
4
+ }
5
+ export declare function type<Type>(): TypeDescriptor<Type>;
@@ -1,8 +1,8 @@
1
1
  import { Type } from '@angular/core';
2
- import { ILookupDataProvider } from '../../data-providers';
3
2
  import { IColumnValueComponent } from '../../models';
4
- import { EnumConstantType, EnumType, GetterFn } from '../../types';
5
- import { FilterDescriptor, FilterLookupDescriptor, FilterLookupEnumDescriptor } from '../filter';
3
+ import { GetterFn } from '../../types';
4
+ import { FilterDescriptor } from '../filter';
5
+ import { EnumDescriptor } from '../model';
6
6
  import { ColumnDisplayTypeEnum, ColumnTypeEnum } from '../types';
7
7
  import { ITableDescriptorInternal } from './internal/table.model';
8
8
  export type ColumnCurrencyOptsType<Property = string> = {
@@ -22,15 +22,12 @@ export type ColumnNumberFractionOptsType = {
22
22
  export type ColumnLocaleOptsType = {
23
23
  locale?: string;
24
24
  };
25
- export declare class ColumnDescriptor<ColumnModel, TableModel, ColumnValue = ColumnModel, Property = string> {
25
+ export declare class ColumnDescriptor<ColumnModel, TableModel, ColumnValue = ColumnModel> {
26
26
  protected readonly _table: ITableDescriptorInternal<TableModel>;
27
27
  protected readonly _property: string;
28
28
  private _columnType;
29
29
  private _columnDisplayType;
30
30
  protected _title?: string;
31
- private _isSortEnabled;
32
- private _sortProperty?;
33
- private _filterDescriptor?;
34
31
  private _displayFormat?;
35
32
  private _locale?;
36
33
  private _template?;
@@ -46,9 +43,7 @@ export declare class ColumnDescriptor<ColumnModel, TableModel, ColumnValue = Col
46
43
  private _width;
47
44
  private _minWidth;
48
45
  private _maxWidth;
49
- private _enumType?;
50
- private _enumTitlePath?;
51
- private _enumNameAsValue;
46
+ private _enum?;
52
47
  private _booleanAsIcon;
53
48
  private _booleanYes?;
54
49
  private _booleanNo?;
@@ -60,13 +55,10 @@ export declare class ColumnDescriptor<ColumnModel, TableModel, ColumnValue = Col
60
55
  private _clipboardValueGetter?;
61
56
  private _isLocalized;
62
57
  private _localizationExistsProperty?;
63
- constructor(table: ITableDescriptorInternal<TableModel>, property: Property);
58
+ constructor(table: ITableDescriptorInternal<TableModel>, property: string);
64
59
  get columnType(): ColumnTypeEnum;
65
60
  get columnDisplayType(): ColumnDisplayTypeEnum;
66
61
  get title(): string | undefined;
67
- get isSortEnabled(): boolean;
68
- get sortProperty(): string | undefined;
69
- get filterDescriptor(): FilterDescriptor<any> | undefined;
70
62
  get displayFormat(): string | undefined;
71
63
  get table(): ITableDescriptorInternal<TableModel>;
72
64
  get property(): string;
@@ -76,9 +68,7 @@ export declare class ColumnDescriptor<ColumnModel, TableModel, ColumnValue = Col
76
68
  get width(): number | null;
77
69
  get minWidth(): number | null;
78
70
  get maxWidth(): number | null;
79
- get enumType(): EnumType<EnumConstantType> | undefined;
80
- get enumTitlePath(): string | null | undefined;
81
- get enumNameAsValue(): boolean;
71
+ get enum(): EnumDescriptor<any> | undefined;
82
72
  get booleanAsIcon(): boolean;
83
73
  get booleanYes(): string | undefined;
84
74
  get booleanNo(): string | undefined;
@@ -110,18 +100,14 @@ export declare class ColumnDescriptor<ColumnModel, TableModel, ColumnValue = Col
110
100
  asCurrencyUnsafe(opts?: ColumnCurrencyOptsType): this;
111
101
  asDate(displayFormat?: string): this;
112
102
  asBoolean(yes?: string, no?: string, asIcon?: boolean): this;
113
- asEnum(enumType: EnumType, nameAsValue?: boolean, titlePath?: string | null): this;
103
+ asEnumUnsafe(enumDesc: EnumDescriptor<any>): this;
114
104
  asCustomComponent(customComponentType: Type<IColumnValueComponent<TableModel>>): this;
115
105
  asHtml(): this;
116
106
  withClassName(className?: string, headerClassName?: string, classNameMapFn?: (className?: string, item?: TableModel) => string): this;
117
107
  withWidth(width?: number, minWidth?: number, maxWidth?: number): this;
118
108
  withTitle(title: string): this;
119
- withFilter(forceSimple?: boolean): FilterDescriptor<any>;
120
- withFilterLookup<FLT = ColumnModel, S = undefined>(provider?: ILookupDataProvider<FLT, S>, optionsValueProperty?: keyof FLT | null): FilterLookupDescriptor<FLT, S>;
121
- withFilterLookupUnsafe<FLT = ColumnModel, S = undefined>(provider?: ILookupDataProvider<FLT, S>, optionsValueProperty?: string | null): FilterLookupDescriptor<FLT, S>;
122
- withFilterLookupEnum(options?: Array<EnumConstantType>): FilterLookupEnumDescriptor;
123
- withSort(isEnabled?: boolean, sortProperty?: string): this;
124
- withDefaultSort(asc?: boolean): this;
109
+ withFilterUnsafe(forceSimple?: boolean): FilterDescriptor<any, TableModel>;
110
+ withSortUnsafe(isDefault?: boolean, ascending?: boolean): this;
125
111
  withCopyToClipboard(hasCopyToClipboard?: boolean, clipboardValueGetter?: GetterFn<ColumnValue, TableModel>): this;
126
112
  withTemplate(template: string): this;
127
113
  withGetter(getter?: GetterFn<ColumnValue, TableModel>): this;
@@ -1,2 +1,3 @@
1
1
  export * from './column.descriptor';
2
+ export * from './sort.descriptor';
2
3
  export * from './table.descriptor';
@@ -1,11 +1,42 @@
1
- import { ColumnDescriptor } from '../../table';
2
- export interface IColumnsManageInterface<TableModel> {
1
+ import { ILookupDataProvider } from '../../../data-providers';
2
+ import { EnumConstantType } from '../../../types';
3
+ import { FilterDescriptor, FilterLookupDescriptor, FilterLookupEnumDescriptor } from '../../filter';
4
+ import { EnumDescriptor } from '../../model';
5
+ import { ColumnDescriptor, SortDescriptor } from '../../table';
6
+ export interface IColumnsManageInterface<TableModel, Sorts, Filters> {
3
7
  getColumn(property: keyof TableModel): ColumnDescriptor<any, TableModel> | null;
4
8
  getColumnUnsafe(property: string): ColumnDescriptor<any, TableModel> | null;
5
9
  removeColumn(property: keyof TableModel): void;
6
10
  removeColumnUnsafe(property: string): void;
7
- addColumnDescriptor<ColumnModel>(column: ColumnDescriptor<ColumnModel, TableModel>): this;
8
- addColumn<PropertyKey extends keyof TableModel>(property: PropertyKey): ColumnDescriptor<TableModel[PropertyKey], TableModel>;
11
+ withColumn<ColumnModel, ColumnValue = ColumnModel>(column: ColumnDescriptor<ColumnModel, TableModel, ColumnValue>): this;
12
+ addColumn<PropertyKey extends keyof TableModel>(property: PropertyKey): ColumnDescriptor<NonNullable<TableModel[PropertyKey]>, TableModel, TableModel[PropertyKey]>;
13
+ addColumnEnum<PropertyKey extends keyof TableModel, Enum extends NonNullable<TableModel[PropertyKey]>>(property: PropertyKey, enumDesc: EnumDescriptor<Enum>): ColumnDescriptor<Enum, TableModel, TableModel[PropertyKey]>;
9
14
  addColumnUnsafe<ColumnModel = any>(property: string): ColumnDescriptor<ColumnModel, TableModel>;
10
- addColumns(...properties: (keyof TableModel)[]): this;
15
+ withColumns(...properties: (keyof TableModel)[]): this;
16
+ getSort(property: Sorts): SortDescriptor<TableModel> | null;
17
+ getSortUnsafe(property: string): SortDescriptor<TableModel> | null;
18
+ removeSort(property: Sorts): void;
19
+ removeSortUnsafe(property: string): void;
20
+ addSort(property: Sorts, isDefault: boolean, ascending?: boolean): SortDescriptor<TableModel>;
21
+ addSortUnsafe(property: string, isDefault: boolean, ascending?: boolean): SortDescriptor<TableModel>;
22
+ withSort(property: Sorts, isDefault: boolean, ascending?: boolean): this;
23
+ withSortUnsafe(property: string, isDefault: boolean, ascending?: boolean): this;
24
+ withSorts(...properties: Sorts[]): this;
25
+ withSortsUnsafe(...properties: string[]): this;
26
+ getFilter(property: Filters): FilterDescriptor<any, TableModel> | null;
27
+ getFilterUnsafe(property: string): FilterDescriptor<any, TableModel> | null;
28
+ removeFilter(property: Filters): void;
29
+ removeFilterUnsafe(property: string): void;
30
+ addFilter<FilterModel = Filters extends keyof TableModel ? TableModel[Filters] : never>(property: Filters): FilterDescriptor<FilterModel, TableModel>;
31
+ addFilterUnsafe<FilterModel>(property: string): FilterDescriptor<FilterModel, TableModel>;
32
+ addFilterLookup<FilterModel = Filters extends keyof TableModel ? NonNullable<TableModel[Filters]> : never, Service = undefined>(property: Filters, provider?: ILookupDataProvider<FilterModel, Service>, optionsValueProperty?: keyof FilterModel): FilterLookupDescriptor<FilterModel, TableModel, Service>;
33
+ addFilterLookupUnsafe<FilterModel, Service = undefined>(property: string, provider?: ILookupDataProvider<FilterModel, Service>, optionsValueProperty?: string): FilterLookupDescriptor<FilterModel, TableModel, Service>;
34
+ addFilterLookupEnum<Enum>(property: Filters, enumDesc: EnumDescriptor<any>, options?: Array<Enum>): FilterLookupEnumDescriptor<Enum, TableModel>;
35
+ addFilterLookupEnumUnsafe<Enum = EnumConstantType>(property: string, enumDesc: EnumDescriptor<Enum>, options?: Array<Enum>): FilterLookupEnumDescriptor<Enum, TableModel>;
36
+ addFilterFromColumn(property: Extract<Filters, keyof TableModel>, forceSimple: boolean): FilterDescriptor<any, TableModel>;
37
+ addFilterFromColumnUnsafe(property: string, forceSimple: boolean): FilterDescriptor<any, TableModel>;
38
+ withFiltersFromColumns(...properties: Extract<Filters, keyof TableModel>[]): this;
39
+ withFiltersFromColumnsUnsafe(...properties: string[]): this;
40
+ withFilter<FilterModel>(property: Filters, filter: FilterDescriptor<FilterModel, TableModel>): this;
41
+ withFilterUnsafe<FilterModel>(filter: FilterDescriptor<FilterModel, TableModel>): this;
11
42
  }
@@ -1,9 +1,12 @@
1
+ import { FilterDescriptor } from '../../filter';
1
2
  import { ModelDescriptor } from '../../model';
3
+ import { ColumnDescriptor } from '../column.descriptor';
2
4
  /**
3
5
  * This one is internal only to prevent circular dependencies between editor and fields.
4
6
  */
5
7
  export interface ITableDescriptorInternal<TableModel> {
6
8
  model: ModelDescriptor<TableModel>;
7
- withDefaultSort(property: keyof TableModel, asc?: boolean): this;
8
- withDefaultSortUnsafe(property: string, asc: boolean): this;
9
+ withDefaultSortUnsafe(property: string, ascending?: boolean, order?: number, enabled?: boolean): this;
10
+ withSortUnsafe(property: string, isDefault: boolean, ascending?: boolean): this;
11
+ addFilterFromColumnDescriptorUnsafe<ColumnModel, ColumnValue>(column: ColumnDescriptor<ColumnModel, TableModel, ColumnValue>, forceSimple: boolean): FilterDescriptor<any, TableModel>;
9
12
  }