@mediusinc/mng-commons 5.0.0-rc.1 → 5.0.0-rc.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (245) hide show
  1. package/core/data-providers/base-data-provider.factory.d.ts +13 -0
  2. package/core/data-providers/base.data-provider.d.ts +2 -14
  3. package/core/descriptors/editor.descriptor.d.ts +1 -1
  4. package/core/descriptors/tableview.descriptor.d.ts +5 -5
  5. package/core/directives/component.directive.d.ts +2 -2
  6. package/core/index.d.ts +1 -0
  7. package/core/router/route-builder.d.ts +149 -26
  8. package/core/router/routes-builder.d.ts +28 -13
  9. package/core/security/permission.service.d.ts +1 -0
  10. package/core/services/commons-router.service.d.ts +3 -3
  11. package/core/services/commons.service.d.ts +31 -42
  12. package/core/services/tokens/module-config.token.d.ts +2 -2
  13. package/esm2022/core/components/notification/notification-wrapper.component.mjs +5 -5
  14. package/esm2022/core/components/pages/error/error.page.component.mjs +5 -5
  15. package/esm2022/core/components/pages/not-found/not-found.page.component.mjs +5 -5
  16. package/esm2022/core/data-providers/base-data-provider.factory.mjs +28 -0
  17. package/esm2022/core/data-providers/base.data-provider.mjs +1 -31
  18. package/esm2022/core/descriptors/editor.descriptor.mjs +1 -1
  19. package/esm2022/core/descriptors/tableview.descriptor.mjs +1 -1
  20. package/esm2022/core/directives/component.directive.mjs +12 -9
  21. package/esm2022/core/directives/dialog-keydown-handler.directive.mjs +3 -3
  22. package/esm2022/core/directives/template.directive.mjs +3 -3
  23. package/esm2022/core/index.mjs +2 -1
  24. package/esm2022/core/pipes/boolean.pipe.mjs +3 -3
  25. package/esm2022/core/pipes/class-map.pipe.mjs +3 -3
  26. package/esm2022/core/pipes/enum.pipe.mjs +3 -3
  27. package/esm2022/core/pipes/enumerate-async.pipe.mjs +3 -3
  28. package/esm2022/core/pipes/enumerate.pipe.mjs +3 -3
  29. package/esm2022/core/pipes/getter.pipe.mjs +3 -3
  30. package/esm2022/core/pipes/i18n-property.pipe.mjs +3 -3
  31. package/esm2022/core/pipes/json-path.pipe.mjs +3 -3
  32. package/esm2022/core/pipes/parametrize.pipe.mjs +3 -3
  33. package/esm2022/core/pipes/template.pipe.mjs +3 -3
  34. package/esm2022/core/router/route-builder.mjs +211 -84
  35. package/esm2022/core/router/routes-builder.mjs +41 -43
  36. package/esm2022/core/security/permission.service.mjs +7 -5
  37. package/esm2022/core/services/commons-init.service.mjs +5 -5
  38. package/esm2022/core/services/commons-router.service.mjs +18 -17
  39. package/esm2022/core/services/commons.service.mjs +112 -169
  40. package/esm2022/core/services/local-storage-config.service.mjs +3 -3
  41. package/esm2022/core/services/tokens/module-config.token.mjs +1 -1
  42. package/esm2022/filter/descriptors/filter-lookup.descriptor.mjs +4 -4
  43. package/esm2022/form/api/data-providers/lookup-data-provider.factory.mjs +31 -0
  44. package/esm2022/form/api/data-providers/lookup.data-provider.mjs +1 -31
  45. package/esm2022/form/api/index.mjs +2 -1
  46. package/esm2022/form/components/autocomplete/autocomplete.component.mjs +105 -102
  47. package/esm2022/form/components/date-range/date-range.component.mjs +3 -3
  48. package/esm2022/form/components/dropdown/dropdown.component.mjs +148 -90
  49. package/esm2022/form/directives/input-trim.directive.mjs +3 -3
  50. package/esm2022/model/data-providers/base-from-type-data-provider.factory.mjs +8 -0
  51. package/esm2022/model/descriptors/enum.descriptor.mjs +3 -6
  52. package/esm2022/model/descriptors/model.descriptor.mjs +22 -9
  53. package/esm2022/model/descriptors/type.descriptor.mjs +3 -9
  54. package/esm2022/model/index.mjs +3 -1
  55. package/esm2022/table/api/data-providers/table-data-provider.factory.mjs +33 -0
  56. package/esm2022/table/api/data-providers/table.data-provider.mjs +1 -31
  57. package/esm2022/table/api/descriptors/sort.descriptor.mjs +2 -2
  58. package/esm2022/table/api/descriptors/table-descriptor.factory.mjs +89 -0
  59. package/esm2022/table/api/descriptors/table.descriptor.mjs +4 -139
  60. package/esm2022/table/api/helpers/table-descriptor-helpers.mjs +97 -0
  61. package/esm2022/table/api/index.mjs +4 -1
  62. package/esm2022/table/components/column-filter-full/column-filter-full.component.mjs +8 -9
  63. package/esm2022/table/components/column-value/column-value.component.mjs +4 -4
  64. package/esm2022/table/components/table/table.component.mjs +7 -7
  65. package/esm2022/table/pipes/locale-default-row-class.pipe.mjs +5 -5
  66. package/esm2022/table/pipes/table-column-filter-class.pipe.mjs +3 -3
  67. package/esm2022/table/services/data-list.service.mjs +4 -4
  68. package/esm2022/tableview/action/components/action/action.component.mjs +142 -190
  69. package/esm2022/tableview/action/components/editor/action-editor.component.mjs +58 -68
  70. package/esm2022/tableview/action/components/editor/injector-context/action-editor-injector-context.component.mjs +133 -154
  71. package/esm2022/tableview/action/components/localization/data-language-dropdown.component.mjs +22 -40
  72. package/esm2022/tableview/action/components/route/action-route.component.mjs +21 -26
  73. package/esm2022/tableview/action/components/table/action-table.component.mjs +4 -4
  74. package/esm2022/tableview/action/models/execution/action-instance.model.mjs +1 -1
  75. package/esm2022/tableview/action/services/action-executor.service.mjs +10 -10
  76. package/esm2022/tableview/action/services/component-action-executor.service.mjs +3 -3
  77. package/esm2022/tableview/action/services/data-provider-executor.service.mjs +3 -3
  78. package/esm2022/tableview/action/services/navigation.service.mjs +6 -5
  79. package/esm2022/tableview/action/services/root-action-executor.service.mjs +3 -3
  80. package/esm2022/tableview/action/services/view-container.service.mjs +8 -24
  81. package/esm2022/tableview/api/action/descriptors/action-descriptor.factory.mjs +119 -0
  82. package/esm2022/tableview/api/action/descriptors/action-editor-descriptor.factory.mjs +77 -0
  83. package/esm2022/tableview/api/action/descriptors/action-editor.descriptor.mjs +28 -80
  84. package/esm2022/tableview/api/action/descriptors/action-link-descriptor.factory.mjs +45 -0
  85. package/esm2022/tableview/api/action/descriptors/action-link.descriptor.mjs +1 -32
  86. package/esm2022/tableview/api/action/descriptors/action.descriptor.mjs +3 -69
  87. package/esm2022/tableview/api/action/models/action-component.model.mjs +1 -1
  88. package/esm2022/tableview/api/action/models/execution/action-instance.model.mjs +1 -1
  89. package/esm2022/tableview/api/action/models/execution/view-container.model.mjs +1 -1
  90. package/esm2022/tableview/api/editor/data-providers/editor-data-provider.factory.mjs +33 -0
  91. package/esm2022/tableview/api/editor/data-providers/editor.data-provider.mjs +1 -31
  92. package/esm2022/tableview/api/editor/descriptors/editor-descriptor.factory.mjs +81 -0
  93. package/esm2022/tableview/api/editor/descriptors/editor.descriptor.mjs +24 -161
  94. package/esm2022/tableview/api/editor/descriptors/field-action.descriptor.mjs +1 -1
  95. package/esm2022/tableview/api/editor/descriptors/field-base.descriptor.mjs +13 -5
  96. package/esm2022/tableview/api/editor/descriptors/field-group.descriptor.mjs +3 -3
  97. package/esm2022/tableview/api/editor/descriptors/field-lookup.descriptor.mjs +4 -4
  98. package/esm2022/tableview/api/editor/descriptors/field-many.descriptor.mjs +3 -3
  99. package/esm2022/tableview/api/editor/descriptors/field-validation.descriptor.mjs +1 -1
  100. package/esm2022/tableview/api/editor/descriptors/field.descriptor.mjs +36 -7
  101. package/esm2022/tableview/api/editor/helpers/editor-descriptor-helpers.mjs +95 -0
  102. package/esm2022/tableview/api/editor/helpers/field-validators.mjs +17 -27
  103. package/esm2022/tableview/api/editor/models/editor-fields.model.mjs +1 -1
  104. package/esm2022/tableview/api/editor/models/field-action-context.model.mjs +1 -1
  105. package/esm2022/tableview/api/editor/models/field-validation.model.mjs +2 -0
  106. package/esm2022/tableview/api/editor/models/field.model.mjs +1 -1
  107. package/esm2022/tableview/api/editor/models/form-editor.event.mjs +1 -1
  108. package/esm2022/tableview/api/editor/models/form-editor.interface.mjs +1 -1
  109. package/esm2022/tableview/api/editor/models/formly-custom-field.model.mjs +3 -3
  110. package/esm2022/tableview/api/editor/models/formly-field.model.mjs +1 -1
  111. package/esm2022/tableview/api/index.mjs +11 -1
  112. package/esm2022/tableview/api/tableview/data-providers/tableview-data-provider.factory.mjs +47 -0
  113. package/esm2022/tableview/api/tableview/data-providers/tableview.data-provider.mjs +5 -46
  114. package/esm2022/tableview/api/tableview/descriptors/tableview-descriptor.factory.mjs +111 -0
  115. package/esm2022/tableview/api/tableview/descriptors/tableview.descriptor.mjs +26 -186
  116. package/esm2022/tableview/api/tableview/helpers/files-export.mjs +2 -2
  117. package/esm2022/tableview/api/tableview/helpers/tableview-create.mjs +5 -5
  118. package/esm2022/tableview/api/tableview/helpers/tableview-default-actions.mjs +53 -18
  119. package/esm2022/tableview/api/tableview/helpers/tableview-descriptor-helpers.mjs +110 -0
  120. package/esm2022/tableview/api/tableview/helpers/tableview-input-builder.mjs +2 -2
  121. package/esm2022/tableview/editor/components/editor/form-editor.component.mjs +163 -138
  122. package/esm2022/tableview/editor/components/formly/fields/formly-field-action/formly-field-action.component.mjs +9 -5
  123. package/esm2022/tableview/editor/components/formly/fields/formly-field-autocomplete/formly-field-autocomplete.component.mjs +13 -16
  124. package/esm2022/tableview/editor/components/formly/fields/formly-field-custom/formly-field-custom.component.mjs +3 -3
  125. package/esm2022/tableview/editor/components/formly/fields/formly-field-datepicker/formly-field-datepicker.component.mjs +103 -0
  126. package/esm2022/tableview/editor/components/formly/fields/formly-field-dropdown/formly-field-dropdown.component.mjs +12 -16
  127. package/esm2022/tableview/editor/components/formly/fields/formly-field-fieldset/formly-field-fieldset.component.mjs +3 -3
  128. package/esm2022/tableview/editor/components/formly/fields/formly-field-input/formly-field-input.component.mjs +36 -53
  129. package/esm2022/tableview/editor/components/formly/fields/formly-field-label/formly-field-label.component.mjs +3 -3
  130. package/esm2022/tableview/editor/components/formly/fields/formly-field-lookup-dialog/formly-field-lookup-dialog.component.mjs +20 -24
  131. package/esm2022/tableview/editor/components/formly/fields/formly-field-table-dialog-form/formly-field-table-dialog-form.component.mjs +24 -28
  132. package/esm2022/tableview/editor/components/formly/fields/formly-field-table-dialog-multiselect/formly-field-table-dialog-multiselect.component.mjs +30 -31
  133. package/esm2022/tableview/editor/components/formly/fields/formly-field-tabs/formly-field-tabs.component.mjs +3 -3
  134. package/esm2022/tableview/editor/components/formly/wrappers/formly-field-no-label-wrapper/formly-field-no-label-wrapper.component.mjs +3 -3
  135. package/esm2022/tableview/editor/components/formly/wrappers/formly-field-wrapper/formly-field-wrapper.component.mjs +3 -3
  136. package/esm2022/tableview/editor/helpers/editor-formly.mjs +85 -56
  137. package/esm2022/tableview/editor/helpers/formly-config.mjs +5 -3
  138. package/esm2022/tableview/editor/models/formly-config.model.mjs +1 -1
  139. package/esm2022/tableview/editor/services/form-editor.service.mjs +96 -0
  140. package/esm2022/tableview/index.mjs +2 -1
  141. package/esm2022/tableview/tableview/components/route/tableview-route.component.mjs +10 -10
  142. package/esm2022/tableview/tableview/components/tableview/tableview.component.mjs +26 -43
  143. package/esm2022/tableview/tableview/router/tableview-route-builder.mjs +17 -43
  144. package/fesm2022/mediusinc-mng-commons-core.mjs +460 -390
  145. package/fesm2022/mediusinc-mng-commons-core.mjs.map +1 -1
  146. package/fesm2022/mediusinc-mng-commons-filter.mjs +3 -3
  147. package/fesm2022/mediusinc-mng-commons-filter.mjs.map +1 -1
  148. package/fesm2022/mediusinc-mng-commons-form-api.mjs +18 -18
  149. package/fesm2022/mediusinc-mng-commons-form-api.mjs.map +1 -1
  150. package/fesm2022/mediusinc-mng-commons-form.mjs +257 -195
  151. package/fesm2022/mediusinc-mng-commons-form.mjs.map +1 -1
  152. package/fesm2022/mediusinc-mng-commons-model.mjs +43 -33
  153. package/fesm2022/mediusinc-mng-commons-model.mjs.map +1 -1
  154. package/fesm2022/mediusinc-mng-commons-table-api.mjs +192 -146
  155. package/fesm2022/mediusinc-mng-commons-table-api.mjs.map +1 -1
  156. package/fesm2022/mediusinc-mng-commons-table.mjs +26 -27
  157. package/fesm2022/mediusinc-mng-commons-table.mjs.map +1 -1
  158. package/fesm2022/mediusinc-mng-commons-tableview-api.mjs +906 -665
  159. package/fesm2022/mediusinc-mng-commons-tableview-api.mjs.map +1 -1
  160. package/fesm2022/mediusinc-mng-commons-tableview.mjs +1015 -960
  161. package/fesm2022/mediusinc-mng-commons-tableview.mjs.map +1 -1
  162. package/form/api/data-providers/lookup-data-provider.factory.d.ts +18 -0
  163. package/form/api/data-providers/lookup.data-provider.d.ts +2 -14
  164. package/form/api/index.d.ts +1 -0
  165. package/form/components/autocomplete/autocomplete.component.d.ts +33 -24
  166. package/form/components/dropdown/dropdown.component.d.ts +38 -25
  167. package/model/data-providers/base-from-type-data-provider.factory.d.ts +8 -0
  168. package/model/descriptors/enum.descriptor.d.ts +1 -2
  169. package/model/descriptors/model.descriptor.d.ts +11 -4
  170. package/model/descriptors/type.descriptor.d.ts +2 -4
  171. package/model/index.d.ts +1 -0
  172. package/package.json +1 -1
  173. package/table/api/data-providers/table-data-provider.factory.d.ts +18 -0
  174. package/table/api/data-providers/table.data-provider.d.ts +2 -14
  175. package/table/api/descriptors/table-descriptor.factory.d.ts +44 -0
  176. package/table/api/descriptors/table.descriptor.d.ts +4 -65
  177. package/table/api/helpers/table-descriptor-helpers.d.ts +44 -0
  178. package/table/api/index.d.ts +3 -0
  179. package/table/components/column-filter-full/column-filter-full.component.d.ts +5 -4
  180. package/table/components/table/table.component.d.ts +11 -11
  181. package/table/services/data-list.service.d.ts +9 -10
  182. package/tableview/action/components/action/action.component.d.ts +37 -44
  183. package/tableview/action/components/editor/action-editor.component.d.ts +20 -18
  184. package/tableview/action/components/editor/injector-context/action-editor-injector-context.component.d.ts +24 -26
  185. package/tableview/action/components/localization/data-language-dropdown.component.d.ts +11 -14
  186. package/tableview/action/components/route/action-route.component.d.ts +7 -12
  187. package/tableview/action/components/table/action-table.component.d.ts +3 -3
  188. package/tableview/action/models/execution/action-instance.model.d.ts +2 -1
  189. package/tableview/action/services/view-container.service.d.ts +3 -9
  190. package/tableview/api/action/descriptors/action-descriptor.factory.d.ts +36 -0
  191. package/tableview/api/action/descriptors/action-editor-descriptor.factory.d.ts +31 -0
  192. package/tableview/api/action/descriptors/action-editor.descriptor.d.ts +25 -37
  193. package/tableview/api/action/descriptors/action-link-descriptor.factory.d.ts +15 -0
  194. package/tableview/api/action/descriptors/action-link.descriptor.d.ts +1 -9
  195. package/tableview/api/action/descriptors/action.descriptor.d.ts +4 -27
  196. package/tableview/api/action/models/action-component.model.d.ts +8 -8
  197. package/tableview/api/action/models/execution/action-instance.model.d.ts +2 -1
  198. package/tableview/api/action/models/execution/view-container.model.d.ts +4 -3
  199. package/tableview/api/editor/data-providers/editor-data-provider.factory.d.ts +18 -0
  200. package/tableview/api/editor/data-providers/editor.data-provider.d.ts +2 -14
  201. package/tableview/api/editor/descriptors/editor-descriptor.factory.d.ts +44 -0
  202. package/tableview/api/editor/descriptors/editor.descriptor.d.ts +44 -105
  203. package/tableview/api/editor/descriptors/field-action.descriptor.d.ts +3 -3
  204. package/tableview/api/editor/descriptors/field-base.descriptor.d.ts +35 -33
  205. package/tableview/api/editor/descriptors/field-group.descriptor.d.ts +8 -7
  206. package/tableview/api/editor/descriptors/field-lookup.descriptor.d.ts +2 -2
  207. package/tableview/api/editor/descriptors/field-many.descriptor.d.ts +8 -8
  208. package/tableview/api/editor/descriptors/field-validation.descriptor.d.ts +10 -13
  209. package/tableview/api/editor/descriptors/field.descriptor.d.ts +16 -1
  210. package/tableview/api/editor/helpers/editor-descriptor-helpers.d.ts +43 -0
  211. package/tableview/api/editor/helpers/field-validators.d.ts +7 -3
  212. package/tableview/api/editor/models/editor-fields.model.d.ts +25 -21
  213. package/tableview/api/editor/models/field-action-context.model.d.ts +10 -8
  214. package/tableview/api/editor/models/field-validation.model.d.ts +26 -0
  215. package/tableview/api/editor/models/field.model.d.ts +0 -10
  216. package/tableview/api/editor/models/form-editor.event.d.ts +26 -16
  217. package/tableview/api/editor/models/form-editor.interface.d.ts +38 -8
  218. package/tableview/api/editor/models/formly-custom-field.model.d.ts +1 -1
  219. package/tableview/api/editor/models/formly-field.model.d.ts +9 -7
  220. package/tableview/api/index.d.ts +10 -0
  221. package/tableview/api/tableview/data-providers/tableview-data-provider.factory.d.ts +25 -0
  222. package/tableview/api/tableview/data-providers/tableview.data-provider.d.ts +3 -20
  223. package/tableview/api/tableview/descriptors/tableview-descriptor.factory.d.ts +49 -0
  224. package/tableview/api/tableview/descriptors/tableview.descriptor.d.ts +41 -102
  225. package/tableview/api/tableview/helpers/tableview-create.d.ts +2 -2
  226. package/tableview/api/tableview/helpers/tableview-default-actions.d.ts +4 -2
  227. package/tableview/api/tableview/helpers/tableview-descriptor-helpers.d.ts +42 -0
  228. package/tableview/api/tableview/helpers/tableview-input-builder.d.ts +1 -1
  229. package/tableview/editor/components/editor/form-editor.component.d.ts +54 -36
  230. package/tableview/editor/components/formly/fields/formly-field-action/formly-field-action.component.d.ts +5 -3
  231. package/tableview/editor/components/formly/fields/formly-field-autocomplete/formly-field-autocomplete.component.d.ts +1 -0
  232. package/tableview/editor/components/formly/fields/formly-field-datepicker/formly-field-datepicker.component.d.ts +22 -0
  233. package/tableview/editor/components/formly/fields/formly-field-dropdown/formly-field-dropdown.component.d.ts +1 -1
  234. package/tableview/editor/components/formly/fields/formly-field-input/formly-field-input.component.d.ts +5 -7
  235. package/tableview/editor/components/formly/fields/formly-field-lookup-dialog/formly-field-lookup-dialog.component.d.ts +1 -1
  236. package/tableview/editor/components/formly/fields/formly-field-table-dialog-form/formly-field-table-dialog-form.component.d.ts +3 -4
  237. package/tableview/editor/components/formly/fields/formly-field-table-dialog-multiselect/formly-field-table-dialog-multiselect.component.d.ts +3 -5
  238. package/tableview/editor/helpers/editor-formly.d.ts +11 -10
  239. package/tableview/editor/models/formly-config.model.d.ts +1 -1
  240. package/tableview/editor/services/form-editor.service.d.ts +39 -0
  241. package/tableview/index.d.ts +1 -0
  242. package/tableview/tableview/components/route/tableview-route.component.d.ts +2 -2
  243. package/tableview/tableview/components/tableview/tableview.component.d.ts +11 -10
  244. package/tableview/tableview/router/tableview-route-builder.d.ts +7 -13
  245. package/version-info.json +11 -0
@@ -47,6 +47,12 @@ export type FieldInputDatePickerOptsType = {
47
47
  max?: Date;
48
48
  showTime?: boolean;
49
49
  showSeconds?: boolean;
50
+ } & DateOptsType;
51
+ export type DateOptsType = {
52
+ asDateObj?: boolean;
53
+ utc?: boolean;
54
+ noTime?: boolean;
55
+ noTimeZone?: boolean;
50
56
  };
51
57
  export type FieldInputFileOpts = {
52
58
  multiple?: boolean;
@@ -64,7 +70,7 @@ export type FieldInputComponentOpts = {
64
70
  inputs?: Record<string, any>;
65
71
  };
66
72
  export type FieldInputFileOnSelectHandlerFnType = (file: File[] | null, control: AbstractControl) => void;
67
- export declare class FieldInputDescriptor<EditorModel, FieldModel = FieldInputDescriptorType, FieldValue = FieldModel> extends AFieldDescriptor<FieldModel, EditorModel, FieldValue> {
73
+ export declare class FieldInputDescriptor<EditorModel, FieldModel = FieldInputDescriptorType, FieldValue = FieldModel, ParentEditorModel = undefined> extends AFieldDescriptor<FieldModel, EditorModel, FieldValue, ParentEditorModel> {
68
74
  private _fieldType;
69
75
  private _rows?;
70
76
  private _numberMin?;
@@ -84,6 +90,10 @@ export declare class FieldInputDescriptor<EditorModel, FieldModel = FieldInputDe
84
90
  private _datePickerMax?;
85
91
  private _datePickerShowTime?;
86
92
  private _datePickerShowSeconds?;
93
+ private _datePickerValueUtc?;
94
+ private _datePickerValueNoTimezone?;
95
+ private _datePickerValueNoTime?;
96
+ private _datePickerValueAsDateObj?;
87
97
  private _maxLength?;
88
98
  private _minLength?;
89
99
  private _pattern?;
@@ -121,6 +131,10 @@ export declare class FieldInputDescriptor<EditorModel, FieldModel = FieldInputDe
121
131
  get datePickerMax(): Date | undefined;
122
132
  get datePickerShowTime(): boolean | undefined;
123
133
  get datePickerShowSeconds(): boolean | undefined;
134
+ get datePickerValueUtc(): boolean | undefined;
135
+ get datePickerValueNoTimezone(): boolean | undefined;
136
+ get datePickerValueNoTime(): boolean | undefined;
137
+ get datePickerValueAsDateObj(): boolean | undefined;
124
138
  get maxLength(): number | undefined;
125
139
  get minLength(): number | undefined;
126
140
  get pattern(): string | RegExp | undefined;
@@ -162,6 +176,7 @@ export declare class FieldInputDescriptor<EditorModel, FieldModel = FieldInputDe
162
176
  withNumberGrouping(useGrouping?: boolean): this;
163
177
  withTextValidation(opts?: FieldInputTextValidationOptsType): this;
164
178
  withInputTrim(trimOption?: InputTrimType): this;
179
+ withDateValue(opts?: DateOptsType): this;
165
180
  withTextValidationEmail(email?: boolean): this;
166
181
  withFileOnSelectHandler(fn?: FieldInputFileOnSelectHandlerFnType): this;
167
182
  copy(): FieldInputDescriptor<EditorModel, FieldModel, FieldValue>;
@@ -0,0 +1,43 @@
1
+ import { ILookupDataProvider } from '@mediusinc/mng-commons/core';
2
+ import { EnumDescriptor } from '@mediusinc/mng-commons/model';
3
+ import { EditorDescriptorInst } from '../descriptors/editor.descriptor';
4
+ import { AFieldDescriptor } from '../descriptors/field-base.descriptor';
5
+ import { FieldLookupDescriptor } from '../descriptors/field-lookup.descriptor';
6
+ import { EditorClassAttributeDef } from '../models/class-tableview-attribute.model';
7
+ import { FieldInputTypeEnum } from '../models/field.model';
8
+ /**
9
+ * Generates field based on attribute definition, used for auto model
10
+ * @param descriptor Editor descriptor instance.
11
+ * @param attribute Attribute definition.
12
+ * @param field Optional, if defined will be replaced, otherwise new will be generated.
13
+ * @param args Optional additional arguments mapped to filed type. Arguments depend on possible arguments on fields.
14
+ * @internal
15
+ */
16
+ export declare function upsertEditorFieldFromAttributeDef<T>(descriptor: EditorDescriptorInst<T, any>, attribute: EditorClassAttributeDef, field?: AFieldDescriptor<any, T>, ...args: any[]): AFieldDescriptor<any, T>;
17
+ /**
18
+ * Modifies selected field by field property. For enums use {withFieldModifiedEnum} instead.
19
+ * @param descriptor Editor descriptor.
20
+ * @param property Model's property name.
21
+ * @param fieldType new field type for selected field
22
+ * @param args additional parameters for field
23
+ */
24
+ export declare function modifyEditorClassAttributeFieldType<EditorModel, Property extends keyof EditorModel, FieldModel = NonNullable<EditorModel[Property]>, FieldValue = EditorModel[Property]>(descriptor: EditorDescriptorInst<EditorModel, any>, property: Property, fieldType: FieldInputTypeEnum, ...args: any[]): AFieldDescriptor<FieldModel, EditorModel, FieldValue> | null;
25
+ export declare function modifyEditorClassAttributeFieldTypeUnsafe<EditorModel, FieldModel = any, FieldValue = FieldModel>(descriptor: EditorDescriptorInst<EditorModel, any>, property: string, fieldType: FieldInputTypeEnum, ...args: any[]): AFieldDescriptor<FieldModel, EditorModel, FieldValue> | null;
26
+ /**
27
+ * Modifies selected field with enum type.
28
+ * @param descriptor Editor descriptor.
29
+ * @param property Model's property name.
30
+ * @param enumModel Enum descriptor.
31
+ * @param values
32
+ */
33
+ export declare function modifyEditorClassAttributeFieldEnum<EditorModel, Property extends keyof EditorModel, Enum extends NonNullable<EditorModel[Property]>, FieldModel = NonNullable<EditorModel[Property]>, FieldValue = EditorModel[Property]>(descriptor: EditorDescriptorInst<EditorModel, any>, property: Property, enumModel?: EnumDescriptor<Enum>, values?: Array<Enum>): AFieldDescriptor<FieldModel, EditorModel, FieldValue> | null;
34
+ export declare function modifyEditorClassAttributeFieldEnumUnsafe<EditorModel, Enum = any, FieldModel = any, FieldValue = FieldModel>(descriptor: EditorDescriptorInst<EditorModel, any>, property: string, enumDesc?: EnumDescriptor<Enum>, values?: Array<Enum>): AFieldDescriptor<FieldModel, EditorModel, FieldValue> | null;
35
+ /**
36
+ * Modifies selected field with lookup field.
37
+ * @param descriptor Editor descriptor.
38
+ * @param property Model's property name.
39
+ * @param lookupProvider provider to be added to field
40
+ * @param titleProperty
41
+ */
42
+ export declare function modifyEditorFieldLookup<EditorModel, Property extends keyof EditorModel, Service, FieldModel = NonNullable<EditorModel[Property]>, FieldValue = EditorModel[Property]>(descriptor: EditorDescriptorInst<EditorModel, any>, property: Property, lookupProvider: ILookupDataProvider<FieldModel, Service>, titleProperty?: keyof FieldModel): FieldLookupDescriptor<FieldModel, EditorModel, Service, FieldValue>;
43
+ export declare function modifyEditorFieldLookupUnsafe<EditorModel, Service, FieldModel = any, FieldValue = FieldModel>(descriptor: EditorDescriptorInst<EditorModel, any>, property: string, lookupProvider: ILookupDataProvider<FieldModel, Service>, titleProperty?: string): FieldLookupDescriptor<FieldModel, EditorModel, Service, FieldValue>;
@@ -1,3 +1,7 @@
1
- import { FieldValidator } from '../models/field.model';
2
- export declare const minDateValidator: (min: Date) => FieldValidator;
3
- export declare const maxDateValidator: (max: Date) => FieldValidator;
1
+ import { FieldValidator } from '../models/field-validation.model';
2
+ export declare const minDateValidationName = "minDate";
3
+ export declare const minDateValidator: (min: Date) => FieldValidator<Date | string | number | undefined | null, any>;
4
+ export declare const maxDateValidationName = "maxDate";
5
+ export declare const maxDateValidator: (max: Date | string | number) => FieldValidator<Date | string | number | undefined | null, any>;
6
+ export declare const emailValidationName = "email";
7
+ export declare const emailValidator: () => FieldValidator<string | undefined | null, any>;
@@ -1,34 +1,38 @@
1
1
  import { ArrayItemType, EnumConstantType, ITableviewDescriptor, IdType, Nullable } from '@mediusinc/mng-commons/core';
2
2
  import { EnumDescriptor, TypeDescriptor } from '@mediusinc/mng-commons/model';
3
3
  import { ITableDataProvider, ITableDescriptorInternal } from '@mediusinc/mng-commons/table/api';
4
+ import { FieldActionDescriptor } from '../descriptors/field-action.descriptor';
4
5
  import { AFieldDescriptor } from '../descriptors/field-base.descriptor';
5
6
  import { FieldLookupDescriptor, FieldLookupEnumDescriptor, FieldLookupProviderType } from '../descriptors/field-lookup.descriptor';
6
7
  import { FieldManyEditorDescriptor, FieldManyToManyEditorDescriptor } from '../descriptors/field-many.descriptor';
8
+ import { FieldValidationDescriptorOptsType } from '../descriptors/field-validation.descriptor';
7
9
  import { FieldInputDescriptor, FieldInputDescriptorType } from '../descriptors/field.descriptor';
8
10
  import { TableviewEditorTypeEnum } from './editor.model';
9
- export interface IFieldsManageInterface<EditorModel> {
10
- getField(property: keyof EditorModel, editorType: TableviewEditorTypeEnum): AFieldDescriptor<any, EditorModel> | null;
11
+ import { FormValidationMessage, FormValidator } from './field-validation.model';
12
+ export interface IFieldsManageInterface<EditorModel, ParentEditorModel> {
13
+ getField(property: keyof EditorModel, editorType: TableviewEditorTypeEnum): AFieldDescriptor<any, EditorModel, ParentEditorModel> | null;
11
14
  getFieldUnsafe(property: string, editorType: TableviewEditorTypeEnum): AFieldDescriptor<any, EditorModel> | null;
12
15
  removeField(property: keyof EditorModel): void;
13
16
  removeFieldUnsafe(property: string): void;
14
- addFieldDescriptor<FieldModel>(field: AFieldDescriptor<FieldModel, EditorModel>): this;
15
- addField<Property extends keyof EditorModel, FieldModel = NonNullable<EditorModel[Property]>, FieldValue = EditorModel[Property]>(property: Property): FieldInputDescriptor<EditorModel, FieldModel, FieldValue>;
16
- addFieldUnsafe<FieldModel = FieldInputDescriptorType, FieldValue = FieldModel>(property: string): FieldInputDescriptor<EditorModel, FieldModel, FieldValue>;
17
+ addFieldDescriptor<FieldModel, FieldValue = FieldModel>(field: AFieldDescriptor<FieldModel, EditorModel, FieldValue, ParentEditorModel>): this;
18
+ addField<Property extends keyof EditorModel, FieldModel = NonNullable<EditorModel[Property]>, FieldValue = EditorModel[Property]>(property: Property): FieldInputDescriptor<EditorModel, FieldModel, FieldValue, ParentEditorModel>;
19
+ addFieldUnsafe<FieldModel = FieldInputDescriptorType, FieldValue = FieldModel>(property: string): FieldInputDescriptor<EditorModel, FieldModel, FieldValue, ParentEditorModel>;
17
20
  addFields(...properties: (keyof EditorModel)[]): this;
18
- addFieldLookup<Property extends keyof EditorModel, FieldModel = NonNullable<EditorModel[Property]>, FieldValue = EditorModel[Property]>(property: Property, type?: TypeDescriptor<FieldModel>): FieldLookupDescriptor<FieldModel, EditorModel, undefined, FieldValue>;
19
- addFieldLookupUnsafe<FieldModel, FieldValue = FieldModel>(property: string, type?: TypeDescriptor<FieldModel>): FieldLookupDescriptor<FieldModel, EditorModel, undefined, FieldValue>;
20
- addFieldLookupWithOptionsValueProperty<Property extends keyof EditorModel, FieldModel, FieldValue = EditorModel[Property]>(property: Property, type: TypeDescriptor<FieldModel>, lookupOptionsValueProperty: any): FieldLookupDescriptor<FieldModel, EditorModel, undefined, FieldValue>;
21
- addFieldLookupWithOptionsValuePropertyUnsafe<FieldModel, FieldValue = Nullable<IdType>>(property: string, type: TypeDescriptor<FieldModel>, lookupOptionsValueProperty: string): FieldLookupDescriptor<FieldModel, EditorModel, undefined, FieldValue>;
22
- addFieldLookupWithProvider<Property extends keyof EditorModel, Service, FieldModel = NonNullable<EditorModel[Property]>, FieldValue = EditorModel[Property]>(property: Property, provider: FieldLookupProviderType<FieldModel, Service>, type?: TypeDescriptor<FieldModel>): FieldLookupDescriptor<FieldModel, EditorModel, Service, FieldValue>;
23
- addFieldLookupWithProviderUnsafe<FieldModel, Service, FieldValue = FieldModel>(property: string, provider: FieldLookupProviderType<FieldModel, Service>, type?: TypeDescriptor<FieldModel>): FieldLookupDescriptor<FieldModel, EditorModel, Service, FieldValue>;
24
- addFieldLookupWithProviderAndOptionsValueProperty<Property extends keyof EditorModel, Service, FieldModel, FieldValue = EditorModel[Property]>(property: Property, provider: FieldLookupProviderType<FieldModel, Service>, type: TypeDescriptor<FieldModel>, lookupOptionsValueProperty: any): FieldLookupDescriptor<FieldModel, EditorModel, Service, FieldValue>;
25
- addFieldLookupWithProviderAndOptionsValuePropertyUnsafe<Service, FieldModel, FieldValue = FieldModel>(property: string, provider: FieldLookupProviderType<FieldModel, Service>, type: TypeDescriptor<FieldModel>, lookupOptionsValueProperty: string): FieldLookupDescriptor<FieldModel, EditorModel, Service, FieldValue>;
26
- addFieldLookupEnum<Property extends keyof EditorModel, Enum extends NonNullable<EditorModel[Property]>>(property: keyof EditorModel, enumModel: EnumDescriptor<Enum>, options?: Array<Enum>): FieldLookupEnumDescriptor<Enum, EditorModel>;
27
- addFieldLookupEnumUnsafe<Enum = EnumConstantType>(property: string, enumModel: EnumDescriptor<Enum>, options?: Array<Enum>): FieldLookupEnumDescriptor<Enum, EditorModel>;
28
- addFieldManyEditor<Property extends keyof EditorModel, FieldModel = ArrayItemType<EditorModel[Property]>, FieldValue = EditorModel[Property]>(property: Property, tableviewDescriptor: ITableviewDescriptor<FieldModel, any, any>): FieldManyEditorDescriptor<FieldModel, EditorModel, FieldValue>;
29
- addFieldManyEditorUnsafe<FieldModel, FieldValue = FieldModel[]>(property: string, tableviewDescriptor: ITableviewDescriptor<FieldModel, any, any>): FieldManyEditorDescriptor<FieldModel, EditorModel, FieldValue>;
30
- 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>;
31
- addFieldManyToManyEditorUnsafe<FieldModel, FieldValue = FieldModel[]>(property: string, mainTableDescriptor: ITableDescriptorInternal<FieldModel>, lookupTableDescriptor: ITableDescriptorInternal<FieldModel>): FieldManyToManyEditorDescriptor<FieldModel, EditorModel, undefined, FieldValue>;
32
- 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>;
33
- addFieldManyToManyEditorWithProviderUnsafe<FieldModel, Service, FieldValue = FieldModel[]>(property: string, mainTableDescriptor: ITableDescriptorInternal<FieldModel>, lookupTableDescriptor: ITableDescriptorInternal<FieldModel>, lookupDataProvider: ITableDataProvider<FieldModel, Service>): FieldManyToManyEditorDescriptor<FieldModel, EditorModel, Service, FieldValue>;
21
+ addFieldAction(actionName: string): FieldActionDescriptor<EditorModel, ParentEditorModel>;
22
+ addFieldLookup<Property extends keyof EditorModel, FieldModel = NonNullable<EditorModel[Property]>, FieldValue = EditorModel[Property]>(property: Property, type?: TypeDescriptor<FieldModel>): FieldLookupDescriptor<FieldModel, EditorModel, undefined, FieldValue, ParentEditorModel>;
23
+ addFieldLookupUnsafe<FieldModel, FieldValue = FieldModel>(property: string, type?: TypeDescriptor<FieldModel>): FieldLookupDescriptor<FieldModel, EditorModel, undefined, FieldValue, ParentEditorModel>;
24
+ addFieldLookupWithOptionsValueProperty<Property extends keyof EditorModel, FieldModel, FieldValue = EditorModel[Property]>(property: Property, type: TypeDescriptor<FieldModel>, lookupOptionsValueProperty: any): FieldLookupDescriptor<FieldModel, EditorModel, undefined, FieldValue, ParentEditorModel>;
25
+ addFieldLookupWithOptionsValuePropertyUnsafe<FieldModel, FieldValue = Nullable<IdType>>(property: string, type: TypeDescriptor<FieldModel>, lookupOptionsValueProperty: string): FieldLookupDescriptor<FieldModel, EditorModel, undefined, FieldValue, ParentEditorModel>;
26
+ addFieldLookupWithProvider<Property extends keyof EditorModel, Service, FieldModel = NonNullable<EditorModel[Property]>, FieldValue = EditorModel[Property]>(property: Property, provider: FieldLookupProviderType<FieldModel, Service>, type?: TypeDescriptor<FieldModel>): FieldLookupDescriptor<FieldModel, EditorModel, Service, FieldValue, ParentEditorModel>;
27
+ addFieldLookupWithProviderUnsafe<FieldModel, Service, FieldValue = FieldModel>(property: string, provider: FieldLookupProviderType<FieldModel, Service>, type?: TypeDescriptor<FieldModel>): FieldLookupDescriptor<FieldModel, EditorModel, Service, FieldValue, ParentEditorModel>;
28
+ addFieldLookupWithProviderAndOptionsValueProperty<Property extends keyof EditorModel, Service, FieldModel, FieldValue = EditorModel[Property]>(property: Property, provider: FieldLookupProviderType<FieldModel, Service>, type: TypeDescriptor<FieldModel>, lookupOptionsValueProperty: any): FieldLookupDescriptor<FieldModel, EditorModel, Service, FieldValue, ParentEditorModel>;
29
+ addFieldLookupWithProviderAndOptionsValuePropertyUnsafe<Service, FieldModel, FieldValue = FieldModel>(property: string, provider: FieldLookupProviderType<FieldModel, Service>, type: TypeDescriptor<FieldModel>, lookupOptionsValueProperty: string): FieldLookupDescriptor<FieldModel, EditorModel, Service, FieldValue, ParentEditorModel>;
30
+ addFieldLookupEnum<Property extends keyof EditorModel, Enum extends NonNullable<EditorModel[Property]>>(property: keyof EditorModel, enumModel: EnumDescriptor<Enum>, options?: Array<Enum>): FieldLookupEnumDescriptor<Enum, EditorModel, ParentEditorModel>;
31
+ addFieldLookupEnumUnsafe<Enum = EnumConstantType>(property: string, enumModel: EnumDescriptor<Enum>, options?: Array<Enum>): FieldLookupEnumDescriptor<Enum, EditorModel, ParentEditorModel>;
32
+ addFieldManyEditor<Property extends keyof EditorModel, FieldModel = ArrayItemType<EditorModel[Property]>, FieldValue = EditorModel[Property]>(property: Property, tableviewDescriptor: ITableviewDescriptor<FieldModel, any, any, EditorModel>): FieldManyEditorDescriptor<FieldModel, EditorModel, FieldValue, ParentEditorModel>;
33
+ addFieldManyEditorUnsafe<FieldModel, FieldValue = FieldModel[]>(property: string, tableviewDescriptor: ITableviewDescriptor<FieldModel, any, any, EditorModel>): FieldManyEditorDescriptor<FieldModel, EditorModel, FieldValue, ParentEditorModel>;
34
+ addFieldManyToManyEditor<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, ParentEditorModel>;
35
+ addFieldManyToManyEditorUnsafe<FieldModel, Service, FieldValue = FieldModel[]>(property: string, mainTableDescriptor: ITableDescriptorInternal<FieldModel>, lookupTableDescriptor: ITableDescriptorInternal<FieldModel>, lookupDataProvider: ITableDataProvider<FieldModel, Service>): FieldManyToManyEditorDescriptor<FieldModel, EditorModel, Service, FieldValue, ParentEditorModel>;
36
+ withValidation<Value = EditorModel>(name: string, validator?: FormValidator<Value, ParentEditorModel>, message?: FormValidationMessage<Value, ParentEditorModel>, opts?: FieldValidationDescriptorOptsType<keyof EditorModel>): this;
37
+ withValidationUnsafe<Value = EditorModel>(name: string, validator?: FormValidator<Value, ParentEditorModel>, message?: FormValidationMessage<Value, ParentEditorModel>, opts?: FieldValidationDescriptorOptsType): this;
34
38
  }
@@ -1,17 +1,19 @@
1
- import { AbstractControl, FormArray, FormGroup } from '@angular/forms';
1
+ import { AbstractControl, FormControl, FormGroup } from '@angular/forms';
2
2
  import { FormlyFormOptions } from '@ngx-formly/core';
3
3
  import { FieldActionDescriptor } from '../descriptors/field-action.descriptor';
4
4
  import { IFormEditorComponent } from './form-editor.interface';
5
5
  import { CommonsFormlyFieldProps } from './formly-field.model';
6
- export interface FieldActionContext<ET> {
7
- descriptor: FieldActionDescriptor<ET>;
8
- formEditorComponent: IFormEditorComponent<ET>;
6
+ export interface FieldActionContext<EditorModel, ParentEditorModel = undefined> {
7
+ descriptor: FieldActionDescriptor<EditorModel>;
8
+ formEditorComponent: IFormEditorComponent<EditorModel, ParentEditorModel>;
9
9
  formly: {
10
- model: ET;
11
- formControl: AbstractControl;
12
- form: FormGroup | FormArray;
10
+ model: EditorModel;
11
+ formControl: FormControl<void>;
12
+ form: FormGroup<{
13
+ [K in keyof EditorModel]: AbstractControl<EditorModel[K]>;
14
+ }>;
13
15
  options: FormlyFormOptions;
14
- props: CommonsFormlyFieldProps;
16
+ props: CommonsFormlyFieldProps<void, EditorModel, ParentEditorModel>;
15
17
  formState: any;
16
18
  };
17
19
  }
@@ -0,0 +1,26 @@
1
+ import { AbstractControl, FormControl, FormGroup } from '@angular/forms';
2
+ import { FieldType } from '@ngx-formly/core';
3
+ import { Observable } from 'rxjs';
4
+ import { IFormEditorComponent } from './form-editor.interface';
5
+ import { CommonsFormlyFieldConfig } from './formly-field.model';
6
+ export type FieldValidationParamsType<Value, FormValue, ParentFormValue = undefined, Control extends AbstractControl = AbstractControl> = {
7
+ fieldFormControl: Value extends never ? undefined : Control;
8
+ form: FormGroup<{
9
+ [K in keyof FormValue]: AbstractControl<FormValue[K]>;
10
+ }>;
11
+ fieldComponent?: Value extends never ? undefined : FieldType<CommonsFormlyFieldConfig<Value, FormValue>>;
12
+ formComponent?: IFormEditorComponent<FormValue, ParentFormValue>;
13
+ fieldFormlyConfig: Value extends never ? undefined : CommonsFormlyFieldConfig<Value, FormValue, ParentFormValue>;
14
+ };
15
+ export type FieldBaseValidator<Value, FormValue, ParentFormValue = undefined, Control extends AbstractControl = AbstractControl> = (params: FieldValidationParamsType<Value, FormValue, ParentFormValue, Control>) => boolean;
16
+ export type FieldValidator<Value, FormValue, ParentFormValue = undefined, Control extends AbstractControl = FormControl<Value>> = FieldBaseValidator<Value, FormValue, ParentFormValue, Control>;
17
+ export type FormValidator<Value, ParentValue = undefined, Control extends AbstractControl = FormGroup<{
18
+ [K in keyof Value]: AbstractControl<Value[K]>;
19
+ }>> = FieldBaseValidator<never, Value, ParentValue, Control>;
20
+ export type FieldAsyncBaseValidator<Value, FormValue, ParentFormValue = undefined, Control extends AbstractControl = AbstractControl> = (params: FieldValidationParamsType<Value, FormValue, ParentFormValue, Control>) => Observable<boolean>;
21
+ export type FieldAsyncValidator<Value, FormValue, ParentFormValue = undefined, Control extends AbstractControl = FormControl<Value>> = FieldAsyncBaseValidator<Value, FormValue, ParentFormValue, Control>;
22
+ export type FormAsyncValidator<Value, ParentFormValue = undefined, Control extends AbstractControl = FormGroup<{
23
+ [K in keyof Value]: AbstractControl;
24
+ }>> = FieldAsyncBaseValidator<never, Value, ParentFormValue, Control>;
25
+ export type FieldValidationMessage<Value, FormValue, ParentFormValue = undefined> = string | ((error: any, field: CommonsFormlyFieldConfig<Value, FormValue, ParentFormValue>) => string | Observable<string>);
26
+ export type FormValidationMessage<Value, ParentFormValue = undefined> = FieldValidationMessage<Value, Value, ParentFormValue>;
@@ -1,7 +1,4 @@
1
1
  import { Type } from '@angular/core';
2
- import { AbstractControl, ValidationErrors } from '@angular/forms';
3
- import { FormlyFieldConfig } from '@ngx-formly/core';
4
- import { Observable } from 'rxjs';
5
2
  export declare enum FieldSizeEnum {
6
3
  Small = 0,
7
4
  Normal = 1,
@@ -49,13 +46,6 @@ export declare enum FieldGroupTypeEnum {
49
46
  Fieldset = 0,
50
47
  Logical = 1
51
48
  }
52
- export type FieldValidator = (control: AbstractControl, field: FormlyFieldConfig, options?: {
53
- [id: string]: any;
54
- }) => ValidationErrors | boolean | null;
55
- export type FieldAsyncValidator = (control: AbstractControl, field: FormlyFieldConfig, options?: {
56
- [id: string]: any;
57
- }) => Observable<ValidationErrors | boolean | null>;
58
- export type FieldValidationMessage = string | ((error: any, field: FormlyFieldConfig) => string | Observable<string>);
59
49
  export interface FieldConfig {
60
50
  }
61
51
  export interface FieldLookupConfig extends FieldConfig {
@@ -1,4 +1,7 @@
1
- import { Type } from '@angular/core';
1
+ import { AbstractControl, FormControl, FormGroup } from '@angular/forms';
2
+ import { FieldType } from '@ngx-formly/core';
3
+ import { IFormEditorComponent } from './form-editor.interface';
4
+ import { CommonsFormlyFieldConfig } from './formly-field.model';
2
5
  export interface FormEditorSubmitEvent<Item> {
3
6
  formItem: Item;
4
7
  success: boolean;
@@ -27,29 +30,36 @@ export declare class FormFieldEventDialogSubtype {
27
30
  static readonly TABLE_CAPTION_COMPONENT_INSTANCE = "Dialog.MngTable.CaptionComponentInstance";
28
31
  static readonly TABLE_COLUMN_ACTIONS_COMPONENT_INSTANCE = "Dialog.MngTable.ColumnActionsComponentInstance";
29
32
  }
30
- export interface FormFieldEventData<T, ET> {
33
+ export interface FormFieldEventData<FieldModel, EditorModel> {
31
34
  eventSubtype?: string;
32
- value?: T;
33
- formValue?: ET;
35
+ value?: FieldModel;
36
+ formValue?: EditorModel;
34
37
  [key: string]: any;
35
38
  }
36
- export interface FieldEventData<ET> {
39
+ export interface FormEventData<EditorModel> {
37
40
  eventSubtype?: string;
38
- value?: any;
39
- formValue?: () => ET;
41
+ value?: EditorModel;
42
+ formValue?: () => EditorModel;
40
43
  submitValid?: boolean;
41
- submitValue?: ET;
44
+ submitValue?: EditorModel;
42
45
  [key: string]: any;
43
46
  }
44
- export interface FormFieldEvent<T, ET> {
47
+ export interface FormFieldEvent<FieldValue, FormValue, ParentFormValue = undefined> {
45
48
  type: FormFieldEventTypeEnum;
46
- componentType: Type<any>;
47
- componentInstance: any;
48
- data?: FormFieldEventData<T, ET>;
49
+ fieldComponent?: FieldType<CommonsFormlyFieldConfig<FieldValue, FormValue, ParentFormValue>>;
50
+ formComponent?: IFormEditorComponent<FormValue, ParentFormValue>;
51
+ fieldFormControl: FormControl<FieldValue>;
52
+ form: FormGroup<{
53
+ [K in keyof FormValue]: AbstractControl<FormValue[K]>;
54
+ }>;
55
+ fieldFormlyConfig: CommonsFormlyFieldConfig<FieldValue, FormValue, ParentFormValue>;
56
+ data?: FormFieldEventData<FieldValue, FormValue>;
49
57
  }
50
- export interface FormEvent<ET> {
58
+ export interface FormEvent<FormValue, ParentFormValue = undefined> {
51
59
  type: FormEventTypeEnum;
52
- componentType: Type<any>;
53
- componentInstance: any;
54
- data?: FieldEventData<ET>;
60
+ formComponent?: IFormEditorComponent<FormValue, ParentFormValue>;
61
+ form: FormGroup<{
62
+ [K in keyof FormValue]: AbstractControl<FormValue[K]>;
63
+ }>;
64
+ data?: FormEventData<FormValue>;
55
65
  }
@@ -1,10 +1,40 @@
1
- import { AbstractControl } from '@angular/forms';
2
- export interface IFormEditorComponent<T> {
1
+ import { InputSignal, WritableSignal } from '@angular/core';
2
+ import { AbstractControl, FormGroup, UntypedFormGroup } from '@angular/forms';
3
+ import { FormlyFieldConfig, FormlyFormOptions } from '@ngx-formly/core';
4
+ import { Message } from 'primeng/api';
5
+ import { EditorDescriptorInst } from '../descriptors/editor.descriptor';
6
+ export interface CommonsFormlyFormOptions<Item> {
7
+ formState?: {
8
+ descriptor?: EditorDescriptorInst<Item>;
9
+ add: boolean;
10
+ edit: boolean;
11
+ disabled: boolean;
12
+ };
13
+ }
14
+ export type FormEditorResetFormModelOpts = {
15
+ markAsPristine?: boolean;
16
+ };
17
+ export interface IFormEditorComponent<Item, ParentItem = any> {
18
+ descriptor: InputSignal<EditorDescriptorInst<Item>>;
19
+ isFormDisabled: InputSignal<boolean>;
20
+ formMessages: WritableSignal<Message[]>;
21
+ get form(): FormGroup<{
22
+ [K in keyof Item]: AbstractControl<Item[K]>;
23
+ }>;
24
+ get formUnsafe(): UntypedFormGroup;
25
+ get formlyOptions(): FormlyFormOptions & CommonsFormlyFormOptions<Item>;
26
+ get formlyFields(): FormlyFieldConfig[];
27
+ get formlyInitialItem(): any;
28
+ get parent(): IFormEditorComponent<ParentItem> | undefined;
3
29
  submit(): void;
4
- getFormValue(): T;
5
- resetFormModel(item?: T): void;
6
- getFormField(key: string): AbstractControl | null;
7
- setFormFieldValue(key: string, value: any): boolean;
8
- patchFormFieldValue(key: string, value: any): boolean;
9
- resetFormFieldValue(key: string, value?: any): boolean;
30
+ getFormValue(): Item;
31
+ resetFormModel(item?: Item, opts?: FormEditorResetFormModelOpts): void;
32
+ getField(key: keyof Item): AbstractControl | null;
33
+ getFieldUnsafe(key: string): AbstractControl | null;
34
+ setFieldValue<Property extends keyof Item>(key: Property, value: Item[Property]): boolean;
35
+ setFieldValueUnsafe(key: string, value: any): boolean;
36
+ patchFieldValue<Property extends keyof Item>(key: Property, value: Item[Property]): boolean;
37
+ patchFieldValueUnsafe(key: string, value: any): boolean;
38
+ resetFieldValue<Property extends keyof Item>(key: Property, value?: Item[Property]): boolean;
39
+ resetFieldValueUnsafe(key: string, value?: any): boolean;
10
40
  }
@@ -18,7 +18,7 @@ export declare abstract class AFormlyCustomFieldComponent extends FieldType<Comm
18
18
  get options(): FormlyFormOptions;
19
19
  get key(): string | number | (string | number)[];
20
20
  get formControl(): AbstractControl<any, any>;
21
- get props(): import("./formly-field.model").CommonsFormlyFieldProps;
21
+ get props(): import("./formly-field.model").CommonsFormlyFieldProps<any, any, any>;
22
22
  get showError(): boolean;
23
23
  get id(): string;
24
24
  get formState(): any;
@@ -2,17 +2,19 @@ import { FieldType, FormlyFieldConfig, FormlyFieldProps } from '@ngx-formly/core
2
2
  import { AFieldDescriptor } from '../descriptors/field-base.descriptor';
3
3
  import { AFieldGroupDescriptor } from '../descriptors/field-group.descriptor';
4
4
  import { IFormEditorComponent } from './form-editor.interface';
5
- export type CommonsFormlyFieldProps = FormlyFieldProps & CommonsFormlyFieldAdditionalProps<unknown, unknown>;
6
- export interface CommonsFormlyFieldConfig<Props = CommonsFormlyFieldProps> extends FormlyFieldConfig<Props> {
5
+ export type CommonsFormlyFieldProps<Value = any, FormValue = any, ParentFormValue = any> = FormlyFieldProps & CommonsFormlyFieldAdditionalProps<Value, FormValue, ParentFormValue>;
6
+ export type CommonsFormlyValidation = FormlyFieldConfig['validators'];
7
+ export interface CommonsFormlyFieldConfig<Value = any, FormValue = any, ParentFormValue = any, Props = CommonsFormlyFieldProps<Value, FormValue, ParentFormValue>> extends FormlyFieldConfig<Props> {
7
8
  props: Props;
8
9
  }
9
- export type CommonsFormlyHookFn = (field: CommonsFormlyFieldConfig) => void;
10
- export interface CommonsFormlyFieldAdditionalProps<T, ET> {
11
- descriptor?: AFieldDescriptor<T, ET> | AFieldGroupDescriptor<ET>;
12
- formEditorComponent?: IFormEditorComponent<ET>;
13
- fieldComponent?: FieldType<CommonsFormlyFieldConfig>;
10
+ export type CommonsFormlyHookFn<T, ET> = (field: CommonsFormlyFieldConfig<T, ET>) => void;
11
+ export interface CommonsFormlyFieldAdditionalProps<Value, FormValue, ParentFormValue = any> {
12
+ descriptor?: AFieldDescriptor<Value, FormValue> | AFieldGroupDescriptor<FormValue>;
13
+ formEditorComponent?: IFormEditorComponent<FormValue, ParentFormValue>;
14
+ fieldComponent?: FieldType<CommonsFormlyFieldConfig<Value, FormValue>>;
14
15
  required?: boolean;
15
16
  hide?: boolean;
16
17
  disabled?: boolean;
18
+ onValueChange?: (field: CommonsFormlyFieldConfig<Value, FormValue>, value: Value) => void;
17
19
  [additionalProperties: string]: any;
18
20
  }
@@ -1,7 +1,10 @@
1
1
  export * from './action/descriptors/action.descriptor';
2
2
  export * from './action/descriptors/action-confirmation.descriptor';
3
+ export * from './action/descriptors/action-descriptor.factory';
3
4
  export * from './action/descriptors/action-editor.descriptor';
5
+ export * from './action/descriptors/action-editor-descriptor.factory';
4
6
  export * from './action/descriptors/action-link.descriptor';
7
+ export * from './action/descriptors/action-link-descriptor.factory';
5
8
  export * from './action/helpers/data-provider-executors';
6
9
  export * from './action/models/execution/action-context.model';
7
10
  export * from './action/models/execution/action-context-validation.model';
@@ -18,7 +21,9 @@ export * from './action/models/tableview-action-default-categories.model';
18
21
  export * from './action/services/tokens/data-language-dropdown.token';
19
22
  export * from './action/services/data-provider-executor.service';
20
23
  export * from './editor/data-providers/editor.data-provider';
24
+ export * from './editor/data-providers/editor-data-provider.factory';
21
25
  export * from './editor/descriptors/editor.descriptor';
26
+ export * from './editor/descriptors/editor-descriptor.factory';
22
27
  export * from './editor/descriptors/field.descriptor';
23
28
  export * from './editor/descriptors/field-action.descriptor';
24
29
  export * from './editor/descriptors/field-base.descriptor';
@@ -27,23 +32,28 @@ export * from './editor/descriptors/field-lookup.descriptor';
27
32
  export * from './editor/descriptors/field-many.descriptor';
28
33
  export * from './editor/descriptors/field-validation.descriptor';
29
34
  export * from './editor/helpers/class-attribute-converter';
35
+ export * from './editor/helpers/editor-descriptor-helpers';
30
36
  export * from './editor/helpers/field-validators';
31
37
  export * from './editor/models/class-tableview-attribute.model';
32
38
  export * from './editor/models/editor.model';
33
39
  export * from './editor/models/editor-fields.model';
34
40
  export * from './editor/models/field.model';
35
41
  export * from './editor/models/field-action-context.model';
42
+ export * from './editor/models/field-validation.model';
36
43
  export * from './editor/models/form-editor.event';
37
44
  export * from './editor/models/form-editor.interface';
38
45
  export * from './editor/models/formly-custom-field.model';
39
46
  export * from './editor/models/formly-field.model';
40
47
  export * from './editor/models/radio.model';
41
48
  export * from './tableview/data-providers/tableview.data-provider';
49
+ export * from './tableview/data-providers/tableview-data-provider.factory';
42
50
  export * from './tableview/descriptors/tableview.descriptor';
51
+ export * from './tableview/descriptors/tableview-descriptor.factory';
43
52
  export * from './tableview/helpers/class-attribute-converter';
44
53
  export * from './tableview/helpers/files-export';
45
54
  export * from './tableview/helpers/tableview-create';
46
55
  export * from './tableview/helpers/tableview-default-actions';
56
+ export * from './tableview/helpers/tableview-descriptor-helpers';
47
57
  export * from './tableview/helpers/tableview-input-builder';
48
58
  export * from './tableview/models/class-tableview-attribute.model';
49
59
  export * from './tableview/models/tableview-input.model';
@@ -0,0 +1,25 @@
1
+ import { ClassType, ServiceClassType } from '@mediusinc/mng-commons/core';
2
+ import { ModelDescriptor, TypeDescriptor } from '@mediusinc/mng-commons/model';
3
+ import { DynamicTableviewDataProviderInst, TableviewDataProviderInst } from './tableview.data-provider';
4
+ export declare class TableviewDataProvider extends TableviewDataProviderInst<any> {
5
+ protected constructor();
6
+ static create<Model, Sorts = keyof Model, Filters extends keyof any = keyof Model>(): TableviewDataProviderInst<Model, undefined, Sorts, Filters, undefined, undefined>;
7
+ static fromClass<Model, Sorts = keyof Model, Filters extends keyof any = keyof Model>(type: ClassType<Model>): TableviewDataProviderInst<Model, undefined, Sorts, Filters, ClassType<Model>, undefined>;
8
+ static fromClassWithService<Model, Service, Sorts = keyof Model, Filters extends keyof any = keyof Model>(type: ClassType<Model>, serviceType: ServiceClassType<Service>): TableviewDataProviderInst<Model, Service, Sorts, Filters, ClassType<Model>, ServiceClassType<Service>>;
9
+ static fromService<Service, Model, Sorts = keyof Model, Filters extends keyof any = keyof Model>(serviceType: ServiceClassType<Service>): TableviewDataProviderInst<Model, Service, Sorts, Filters, undefined, ServiceClassType<Service>>;
10
+ }
11
+ export declare function tableviewDataProvider<Model, Sorts = keyof Model, Filters extends keyof any = keyof Model>(): TableviewDataProviderInst<Model, undefined, Sorts, Filters, undefined, undefined>;
12
+ export declare function tableviewDataProvider<Model, Sorts = keyof Model, Filters extends keyof any = keyof Model>(type: TypeDescriptor<Model>): TableviewDataProviderInst<Model, undefined, Sorts, Filters, undefined, undefined>;
13
+ export declare function tableviewDataProvider<Model, Service = any, Sorts = keyof Model, Filters extends keyof any = keyof Model>(type: TypeDescriptor<Model>, serviceType: ServiceClassType<Service>): TableviewDataProviderInst<Model, Service, Sorts, Filters, undefined, ServiceClassType<Service>>;
14
+ export declare function tableviewDataProviderWithService<Service, Model, Sorts = keyof Model, Filters extends keyof any = keyof Model>(serviceType: ServiceClassType<Service>): TableviewDataProviderInst<Model, Service, Sorts, Filters, undefined, ServiceClassType<Service>>;
15
+ export declare function tableviewDataProviderFromClass<Model, Sorts = keyof Model, Filters extends keyof any = keyof Model>(type: ClassType<Model>): TableviewDataProviderInst<Model, undefined, Sorts, Filters, ClassType<Model>, undefined>;
16
+ export declare function tableviewDataProviderFromClass<Model, Service = any, Sorts = keyof Model, Filters extends keyof any = keyof Model>(type: ClassType<Model>, serviceType: ServiceClassType<Service>): TableviewDataProviderInst<Model, Service, Sorts, Filters, ClassType<Model>, ServiceClassType<Service>>;
17
+ export declare function tableviewDataProviderFromModel<Model, Sorts = keyof Model, Filters extends keyof any = keyof Model, ModelClass = ClassType<Model>>(model: ModelDescriptor<Model, ModelClass>): TableviewDataProviderInst<Model, undefined, Sorts, Filters, ModelClass, undefined>;
18
+ export declare function tableviewDataProviderFromModel<Model, Service = any, Sorts = keyof Model, Filters extends keyof any = keyof Model, ModelClass = ClassType<Model>>(model: ModelDescriptor<Model, ModelClass>, ServiceClass: ServiceClassType<Service>): TableviewDataProviderInst<Model, Service, Sorts, Filters, ModelClass, ServiceClassType<Service>>;
19
+ export declare class DynamicTableviewDataProvider extends DynamicTableviewDataProviderInst {
20
+ protected constructor();
21
+ static create(): DynamicTableviewDataProviderInst<undefined, undefined>;
22
+ static fromService<Service>(serviceType: ServiceClassType<Service>): DynamicTableviewDataProviderInst<Service, ServiceClassType<Service>>;
23
+ }
24
+ export declare function tableviewDynamicDataProvider(): DynamicTableviewDataProviderInst<undefined, undefined>;
25
+ export declare function tableviewDynamicDataProvider<Service>(serviceType: ServiceClassType<Service>): DynamicTableviewDataProviderInst<Service, ServiceClassType<Service>>;
@@ -1,11 +1,11 @@
1
- import { ClassOptType, ClassType, DataListParams, DataProviderInst, ServiceClassOptType, ServiceClassType } from '@mediusinc/mng-commons/core';
1
+ import { ClassOptType, DataListParams, DataProviderInst, ServiceClassOptType } from '@mediusinc/mng-commons/core';
2
2
  import { ITableDataProvider, TableDataProviderGetAllEagerFnType, TableDataProviderGetAllFnType, TableDataProviderInst } from '@mediusinc/mng-commons/table/api';
3
3
  import { EditorDataProviderCreateFnType, EditorDataProviderDeleteFnType, EditorDataProviderFetchFnType, EditorDataProviderInst, EditorDataProviderUpdateFnType, IEditorDataProvider } from '../../editor/data-providers/editor.data-provider';
4
4
  export type ITableviewDataProvider<Model = any, Service = any, Sorts = keyof Model, Filters extends keyof any = keyof Model, ModelClass = ClassOptType<Model>, ServiceClass = ServiceClassOptType<Service>> = IEditorDataProvider<Model, Service, ModelClass, ServiceClass> & ITableDataProvider<Model, Service, Sorts, Filters, ModelClass, ServiceClass>;
5
5
  export declare class TableviewDataProviderInst<Model, Service = any, Sorts = keyof Model, Filters extends keyof any = keyof Model, ModelClass = ClassOptType<Model>, ServiceClass = ServiceClassOptType<Service>> extends DataProviderInst<Model, Service, ModelClass, ServiceClass> implements ITableviewDataProvider<Model, Service, Sorts, Filters, ModelClass, ServiceClass> {
6
6
  protected readonly editorDataProvider: EditorDataProviderInst<Model, Service, ModelClass, ServiceClass>;
7
7
  protected readonly tableDataProvider: TableDataProviderInst<Model, Service, Sorts, Filters, ModelClass, ServiceClass>;
8
- protected constructor(type: ModelClass, serviceType: ServiceClass);
8
+ constructor(type: ModelClass, serviceType: ServiceClass);
9
9
  get isLazy(): boolean;
10
10
  get getAllReload$(): import("rxjs").Observable<DataListParams<Sorts, Filters> | undefined>;
11
11
  get getAll(): TableDataProviderGetAllFnType<Model, Service, Sorts, Filters, import("@mediusinc/mng-commons/core").ItemOrObservable<import("@mediusinc/mng-commons/core").DataListResult<Model>>>;
@@ -21,23 +21,6 @@ export declare class TableviewDataProviderInst<Model, Service = any, Sorts = key
21
21
  withUpdate(fn?: EditorDataProviderUpdateFnType<Model, Service>): this;
22
22
  withDelete(fn?: EditorDataProviderDeleteFnType<Model, Service>): this;
23
23
  }
24
- export declare class TableviewDataProvider extends TableviewDataProviderInst<any> {
25
- protected constructor();
26
- static create<Model, Sorts = keyof Model, Filters extends keyof any = keyof Model>(): TableviewDataProviderInst<Model, undefined, Sorts, Filters, undefined, undefined>;
27
- static fromClass<Model, Sorts = keyof Model, Filters extends keyof any = keyof Model>(type: ClassType<Model>): TableviewDataProviderInst<Model, undefined, Sorts, Filters, ClassType<Model>, undefined>;
28
- static fromClassWithService<Model, Service, Sorts = keyof Model, Filters extends keyof any = keyof Model>(type: ClassType<Model>, serviceType: ServiceClassType<Service>): TableviewDataProviderInst<Model, Service, Sorts, Filters, ClassType<Model>, ServiceClassType<Service>>;
29
- static fromService<Service, Model, Sorts = keyof Model, Filters extends keyof any = keyof Model>(serviceType: ServiceClassType<Service>): TableviewDataProviderInst<Model, Service, Sorts, Filters, undefined, ServiceClassType<Service>>;
30
- static fromAnyParam<Model, Sorts = keyof Model, Filters extends keyof any = keyof Model>(): TableviewDataProviderInst<Model, undefined, Sorts, Filters, undefined, undefined>;
31
- static fromAnyParam<Model, Sorts = keyof Model, Filters extends keyof any = keyof Model>(type: ClassType<Model>): TableviewDataProviderInst<Model, undefined, Sorts, Filters, ClassType<Model>, undefined>;
32
- static fromAnyParam<Model, Service = any, Sorts = keyof Model, Filters extends keyof any = keyof Model>(type: undefined, serviceType: ServiceClassType<Service>): TableviewDataProviderInst<Model, Service, Sorts, Filters, undefined, ServiceClassType<Service>>;
33
- static fromAnyParam<Model, Service = any, Sorts = keyof Model, Filters extends keyof any = keyof Model>(type: ClassType<Model>, serviceType: ServiceClassType<Service>): TableviewDataProviderInst<Model, Service, Sorts, Filters, ClassType<Model>, ServiceClassType<Service>>;
34
- static fromAnyParam<Model, Service, Sorts = keyof Model, Filters extends keyof any = keyof Model, ModelClass = ClassType<Model>, ServiceClass = ServiceClassType<Service>>(type?: ModelClass, serviceType?: ServiceClass): TableviewDataProviderInst<Model, Service, Sorts, Filters, ModelClass, ServiceClass>;
35
- }
36
24
  export declare class DynamicTableviewDataProviderInst<Service = any, ServiceClass = ServiceClassOptType<Service>> extends TableviewDataProviderInst<any, Service, any, any, undefined, ServiceClass> {
37
- protected constructor(serviceType: ServiceClass);
38
- }
39
- export declare class DynamicTableviewDataProvider extends DynamicTableviewDataProviderInst {
40
- protected constructor();
41
- static create(): DynamicTableviewDataProviderInst<undefined>;
42
- static fromService<Service>(serviceType: ServiceClassType<Service>): DynamicTableviewDataProviderInst<Service, ServiceClassType<Service>>;
25
+ constructor(serviceType: ServiceClass);
43
26
  }
@@ -0,0 +1,49 @@
1
+ import { ClassType } from '@mediusinc/mng-commons/core';
2
+ import { ModelDescriptor, ModelDescriptorCreateOpts, TypeDescriptor } from '@mediusinc/mng-commons/model';
3
+ import { EditorDescriptorInst } from '../../editor/descriptors/editor.descriptor';
4
+ import { TableviewClassAttributeDef } from '../models/class-tableview-attribute.model';
5
+ import { TableviewDescriptorInst, TableviewDynamicDescriptorInt } from './tableview.descriptor';
6
+ export declare class TableviewDescriptor extends TableviewDescriptorInst<any> {
7
+ protected constructor();
8
+ static create<TableviewModel, SortProperty = keyof TableviewModel, FilterProperty = keyof TableviewModel, ParentEditorModel = undefined>(idProperty?: keyof TableviewModel, titleProperty?: keyof TableviewModel, i18nBaseKey?: string | ClassType<unknown>): TableviewDescriptorInst<TableviewModel, SortProperty, FilterProperty, ParentEditorModel>;
9
+ static fromClass<TableviewModel, SortProperty = keyof TableviewModel, FilterProperty = keyof TableviewModel, ParentEditorModel = undefined>(type: ClassType<TableviewModel>, idProperty?: keyof TableviewModel, titleProperty?: keyof TableviewModel, i18nBaseKey?: ClassType<unknown> | string): TableviewDescriptorInst<TableviewModel, SortProperty, FilterProperty, ParentEditorModel>;
10
+ static fromModel<TableviewModel, SortProperty = keyof TableviewModel, FilterProperty = keyof TableviewModel, ParentEditorModel = undefined>(model: ModelDescriptor<TableviewModel>): TableviewDescriptorInst<TableviewModel, SortProperty, FilterProperty, ParentEditorModel>;
11
+ /**
12
+ * generates descriptor from attribute definition of openapi model
13
+ * @param type class type
14
+ * @param idProperty
15
+ * @param titleProperty
16
+ */
17
+ static fromClassWithAutoAttrsDef<TableviewModel>(type: ClassType<TableviewModel>, idProperty?: keyof TableviewModel, titleProperty?: keyof TableviewModel): TableviewDescriptorInst<TableviewModel>;
18
+ /**
19
+ * generates descriptor from given attribute definition
20
+ * @param type class type
21
+ * @param columnAttributes attribute definition to generate columns
22
+ * @param fieldAttributes attribute definition to generate fields, if undefined columnDefinition is used, if null editors are not generated
23
+ * @param idProperty
24
+ * @param titleProperty
25
+ */
26
+ static fromClassWithCustomAttrsDef<TableviewModel>(type: ClassType<TableviewModel>, columnAttributes: TableviewClassAttributeDef[], fieldAttributes?: TableviewClassAttributeDef[] | null, idProperty?: keyof TableviewModel, titleProperty?: keyof TableviewModel): TableviewDescriptorInst<TableviewModel>;
27
+ }
28
+ export type TableviewDescriptorCreateOptsType<TableModel> = ModelDescriptorCreateOpts<TableModel>;
29
+ export declare function tableviewDescriptor<TableModel, Sorts = keyof TableModel, Filters = keyof TableModel>(): TableviewDescriptorInst<TableModel, Sorts, Filters>;
30
+ export declare function tableviewDescriptor<TableModel, Sorts = keyof TableModel, Filters = keyof TableModel>(opts: TableviewDescriptorCreateOptsType<TableModel>): TableviewDescriptorInst<TableModel, Sorts, Filters>;
31
+ export declare function tableviewDescriptor<TableModel, Sorts = keyof TableModel, Filters = keyof TableModel>(model: ModelDescriptor<TableModel>): TableviewDescriptorInst<TableModel, Sorts, Filters>;
32
+ export declare function tableviewDescriptor<TableModel, Sorts = keyof TableModel, Filters = keyof TableModel>(type: TypeDescriptor<TableModel>, opts?: TableviewDescriptorCreateOptsType<TableModel>): TableviewDescriptorInst<TableModel, Sorts, Filters>;
33
+ export declare function tableviewDescriptorFromClass<TableModel, Sorts = keyof TableModel, Filters = keyof TableModel>(type: ClassType<TableModel>, opts?: TableviewDescriptorCreateOptsType<TableModel>): TableviewDescriptorInst<TableModel, Sorts, Filters>;
34
+ /**
35
+ * generates descriptor based on type attribute definition
36
+ * @param type class type
37
+ * @param columnAttributes
38
+ * @param fieldAttributes
39
+ * @param opts
40
+ */
41
+ export declare function tableviewDescriptorFromClassAttrsDef<TableviewModel, Sorts = keyof TableviewModel, Filters = keyof TableviewModel>(type: ClassType<TableviewModel>, columnAttributes?: TableviewClassAttributeDef[], fieldAttributes?: TableviewClassAttributeDef[] | null, opts?: TableviewDescriptorCreateOptsType<TableviewModel>): TableviewDescriptorInst<TableviewModel, Sorts, Filters>;
42
+ export declare function tableviewDescriptorFromParent<TableviewModel, ChildModel>(descriptor: TableviewDescriptorInst<TableviewModel, any, any, any> | EditorDescriptorInst<TableviewModel> | ModelDescriptor<TableviewModel>, model: ModelDescriptor<ChildModel>): TableviewDescriptorInst<ChildModel, keyof ChildModel, keyof ChildModel, TableviewModel>;
43
+ export declare function tableviewDescriptorFromParent<TableviewModel, ChildModel>(descriptor: TableviewDescriptorInst<TableviewModel, any, any, any> | EditorDescriptorInst<TableviewModel> | ModelDescriptor<TableviewModel>, type: ClassType<ChildModel>, idProperty?: keyof ChildModel, titleProperty?: keyof ChildModel, i18nBaseKey?: ClassType<unknown> | string): TableviewDescriptorInst<ChildModel, keyof ChildModel, keyof ChildModel, TableviewModel>;
44
+ export declare class TableviewDynamicDescriptor extends TableviewDynamicDescriptorInt {
45
+ protected constructor();
46
+ static create(idProperty?: string, titleProperty?: string, i18nBaseKey?: string | ClassType<any>): TableviewDynamicDescriptorInt;
47
+ static fromModel(model: ModelDescriptor<any>): TableviewDynamicDescriptorInt;
48
+ }
49
+ export declare function tableviewDynamicDescriptor(modelOrOpts?: ModelDescriptor<any> | TableviewDescriptorCreateOptsType<any>): TableviewDynamicDescriptorInt;