@mediusinc/mng-commons 5.0.0-rc.2 → 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 (204) 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/security/permission.service.d.ts +1 -0
  8. package/core/services/commons-router.service.d.ts +3 -3
  9. package/core/services/commons.service.d.ts +31 -42
  10. package/core/services/tokens/module-config.token.d.ts +2 -2
  11. package/esm2022/core/components/notification/notification-wrapper.component.mjs +3 -3
  12. package/esm2022/core/components/pages/error/error.page.component.mjs +3 -3
  13. package/esm2022/core/components/pages/not-found/not-found.page.component.mjs +3 -3
  14. package/esm2022/core/data-providers/base-data-provider.factory.mjs +28 -0
  15. package/esm2022/core/data-providers/base.data-provider.mjs +1 -31
  16. package/esm2022/core/descriptors/editor.descriptor.mjs +1 -1
  17. package/esm2022/core/descriptors/tableview.descriptor.mjs +1 -1
  18. package/esm2022/core/directives/component.directive.mjs +10 -7
  19. package/esm2022/core/index.mjs +2 -1
  20. package/esm2022/core/security/permission.service.mjs +4 -2
  21. package/esm2022/core/services/commons-init.service.mjs +2 -2
  22. package/esm2022/core/services/commons-router.service.mjs +16 -15
  23. package/esm2022/core/services/commons.service.mjs +109 -166
  24. package/esm2022/core/services/tokens/module-config.token.mjs +1 -1
  25. package/esm2022/filter/descriptors/filter-lookup.descriptor.mjs +4 -4
  26. package/esm2022/form/api/data-providers/lookup-data-provider.factory.mjs +31 -0
  27. package/esm2022/form/api/data-providers/lookup.data-provider.mjs +1 -31
  28. package/esm2022/form/api/index.mjs +2 -1
  29. package/esm2022/form/components/autocomplete/autocomplete.component.mjs +92 -83
  30. package/esm2022/form/components/dropdown/dropdown.component.mjs +145 -87
  31. package/esm2022/model/data-providers/base-from-type-data-provider.factory.mjs +8 -0
  32. package/esm2022/model/descriptors/enum.descriptor.mjs +3 -6
  33. package/esm2022/model/descriptors/model.descriptor.mjs +22 -9
  34. package/esm2022/model/descriptors/type.descriptor.mjs +3 -9
  35. package/esm2022/model/index.mjs +3 -1
  36. package/esm2022/table/api/data-providers/table-data-provider.factory.mjs +33 -0
  37. package/esm2022/table/api/data-providers/table.data-provider.mjs +1 -31
  38. package/esm2022/table/api/descriptors/sort.descriptor.mjs +2 -2
  39. package/esm2022/table/api/descriptors/table-descriptor.factory.mjs +89 -0
  40. package/esm2022/table/api/descriptors/table.descriptor.mjs +4 -139
  41. package/esm2022/table/api/helpers/table-descriptor-helpers.mjs +97 -0
  42. package/esm2022/table/api/index.mjs +4 -1
  43. package/esm2022/table/components/column-filter-full/column-filter-full.component.mjs +6 -7
  44. package/esm2022/table/components/column-value/column-value.component.mjs +2 -2
  45. package/esm2022/table/components/table/table.component.mjs +5 -5
  46. package/esm2022/table/pipes/locale-default-row-class.pipe.mjs +2 -2
  47. package/esm2022/table/services/data-list.service.mjs +1 -1
  48. package/esm2022/tableview/action/components/action/action.component.mjs +140 -188
  49. package/esm2022/tableview/action/components/editor/action-editor.component.mjs +56 -66
  50. package/esm2022/tableview/action/components/editor/injector-context/action-editor-injector-context.component.mjs +119 -141
  51. package/esm2022/tableview/action/components/localization/data-language-dropdown.component.mjs +21 -39
  52. package/esm2022/tableview/action/components/route/action-route.component.mjs +17 -23
  53. package/esm2022/tableview/action/components/table/action-table.component.mjs +1 -1
  54. package/esm2022/tableview/action/services/action-executor.service.mjs +9 -9
  55. package/esm2022/tableview/action/services/navigation.service.mjs +3 -2
  56. package/esm2022/tableview/action/services/view-container.service.mjs +5 -21
  57. package/esm2022/tableview/api/action/descriptors/action-descriptor.factory.mjs +119 -0
  58. package/esm2022/tableview/api/action/descriptors/action-editor-descriptor.factory.mjs +77 -0
  59. package/esm2022/tableview/api/action/descriptors/action-editor.descriptor.mjs +20 -80
  60. package/esm2022/tableview/api/action/descriptors/action-link-descriptor.factory.mjs +45 -0
  61. package/esm2022/tableview/api/action/descriptors/action-link.descriptor.mjs +1 -32
  62. package/esm2022/tableview/api/action/descriptors/action.descriptor.mjs +3 -69
  63. package/esm2022/tableview/api/action/models/action-component.model.mjs +1 -1
  64. package/esm2022/tableview/api/action/models/execution/view-container.model.mjs +1 -1
  65. package/esm2022/tableview/api/editor/data-providers/editor-data-provider.factory.mjs +33 -0
  66. package/esm2022/tableview/api/editor/data-providers/editor.data-provider.mjs +1 -31
  67. package/esm2022/tableview/api/editor/descriptors/editor-descriptor.factory.mjs +81 -0
  68. package/esm2022/tableview/api/editor/descriptors/editor.descriptor.mjs +7 -133
  69. package/esm2022/tableview/api/editor/descriptors/field-action.descriptor.mjs +1 -1
  70. package/esm2022/tableview/api/editor/descriptors/field-base.descriptor.mjs +13 -5
  71. package/esm2022/tableview/api/editor/descriptors/field-group.descriptor.mjs +1 -1
  72. package/esm2022/tableview/api/editor/descriptors/field-lookup.descriptor.mjs +4 -4
  73. package/esm2022/tableview/api/editor/descriptors/field-many.descriptor.mjs +3 -3
  74. package/esm2022/tableview/api/editor/descriptors/field-validation.descriptor.mjs +1 -1
  75. package/esm2022/tableview/api/editor/descriptors/field.descriptor.mjs +1 -1
  76. package/esm2022/tableview/api/editor/helpers/editor-descriptor-helpers.mjs +95 -0
  77. package/esm2022/tableview/api/editor/helpers/field-validators.mjs +7 -7
  78. package/esm2022/tableview/api/editor/models/editor-fields.model.mjs +1 -1
  79. package/esm2022/tableview/api/editor/models/field-action-context.model.mjs +1 -1
  80. package/esm2022/tableview/api/editor/models/field-validation.model.mjs +2 -0
  81. package/esm2022/tableview/api/editor/models/field.model.mjs +1 -1
  82. package/esm2022/tableview/api/editor/models/form-editor.event.mjs +1 -1
  83. package/esm2022/tableview/api/editor/models/form-editor.interface.mjs +1 -1
  84. package/esm2022/tableview/api/editor/models/formly-field.model.mjs +1 -1
  85. package/esm2022/tableview/api/index.mjs +11 -1
  86. package/esm2022/tableview/api/tableview/data-providers/tableview-data-provider.factory.mjs +47 -0
  87. package/esm2022/tableview/api/tableview/data-providers/tableview.data-provider.mjs +5 -46
  88. package/esm2022/tableview/api/tableview/descriptors/tableview-descriptor.factory.mjs +111 -0
  89. package/esm2022/tableview/api/tableview/descriptors/tableview.descriptor.mjs +15 -168
  90. package/esm2022/tableview/api/tableview/helpers/files-export.mjs +2 -2
  91. package/esm2022/tableview/api/tableview/helpers/tableview-create.mjs +5 -5
  92. package/esm2022/tableview/api/tableview/helpers/tableview-default-actions.mjs +53 -18
  93. package/esm2022/tableview/api/tableview/helpers/tableview-descriptor-helpers.mjs +110 -0
  94. package/esm2022/tableview/api/tableview/helpers/tableview-input-builder.mjs +2 -2
  95. package/esm2022/tableview/editor/components/editor/form-editor.component.mjs +16 -11
  96. package/esm2022/tableview/editor/components/formly/fields/formly-field-action/formly-field-action.component.mjs +6 -2
  97. package/esm2022/tableview/editor/components/formly/fields/formly-field-autocomplete/formly-field-autocomplete.component.mjs +10 -11
  98. package/esm2022/tableview/editor/components/formly/fields/formly-field-custom/formly-field-custom.component.mjs +1 -1
  99. package/esm2022/tableview/editor/components/formly/fields/formly-field-datepicker/formly-field-datepicker.component.mjs +4 -4
  100. package/esm2022/tableview/editor/components/formly/fields/formly-field-dropdown/formly-field-dropdown.component.mjs +9 -11
  101. package/esm2022/tableview/editor/components/formly/fields/formly-field-input/formly-field-input.component.mjs +4 -4
  102. package/esm2022/tableview/editor/components/formly/fields/formly-field-lookup-dialog/formly-field-lookup-dialog.component.mjs +16 -18
  103. package/esm2022/tableview/editor/components/formly/fields/formly-field-table-dialog-form/formly-field-table-dialog-form.component.mjs +20 -22
  104. package/esm2022/tableview/editor/components/formly/fields/formly-field-table-dialog-multiselect/formly-field-table-dialog-multiselect.component.mjs +18 -20
  105. package/esm2022/tableview/editor/helpers/editor-formly.mjs +27 -6
  106. package/esm2022/tableview/editor/services/form-editor.service.mjs +96 -0
  107. package/esm2022/tableview/index.mjs +2 -1
  108. package/esm2022/tableview/tableview/components/tableview/tableview.component.mjs +3 -3
  109. package/fesm2022/mediusinc-mng-commons-core.mjs +155 -210
  110. package/fesm2022/mediusinc-mng-commons-core.mjs.map +1 -1
  111. package/fesm2022/mediusinc-mng-commons-filter.mjs +3 -3
  112. package/fesm2022/mediusinc-mng-commons-filter.mjs.map +1 -1
  113. package/fesm2022/mediusinc-mng-commons-form-api.mjs +18 -18
  114. package/fesm2022/mediusinc-mng-commons-form-api.mjs.map +1 -1
  115. package/fesm2022/mediusinc-mng-commons-form.mjs +236 -169
  116. package/fesm2022/mediusinc-mng-commons-form.mjs.map +1 -1
  117. package/fesm2022/mediusinc-mng-commons-model.mjs +43 -33
  118. package/fesm2022/mediusinc-mng-commons-model.mjs.map +1 -1
  119. package/fesm2022/mediusinc-mng-commons-table-api.mjs +192 -146
  120. package/fesm2022/mediusinc-mng-commons-table-api.mjs.map +1 -1
  121. package/fesm2022/mediusinc-mng-commons-table.mjs +11 -12
  122. package/fesm2022/mediusinc-mng-commons-table.mjs.map +1 -1
  123. package/fesm2022/mediusinc-mng-commons-tableview-api.mjs +822 -590
  124. package/fesm2022/mediusinc-mng-commons-tableview-api.mjs.map +1 -1
  125. package/fesm2022/mediusinc-mng-commons-tableview.mjs +564 -571
  126. package/fesm2022/mediusinc-mng-commons-tableview.mjs.map +1 -1
  127. package/form/api/data-providers/lookup-data-provider.factory.d.ts +18 -0
  128. package/form/api/data-providers/lookup.data-provider.d.ts +2 -14
  129. package/form/api/index.d.ts +1 -0
  130. package/form/components/autocomplete/autocomplete.component.d.ts +31 -23
  131. package/form/components/dropdown/dropdown.component.d.ts +38 -25
  132. package/model/data-providers/base-from-type-data-provider.factory.d.ts +8 -0
  133. package/model/descriptors/enum.descriptor.d.ts +1 -2
  134. package/model/descriptors/model.descriptor.d.ts +11 -4
  135. package/model/descriptors/type.descriptor.d.ts +2 -4
  136. package/model/index.d.ts +1 -0
  137. package/package.json +1 -1
  138. package/table/api/data-providers/table-data-provider.factory.d.ts +18 -0
  139. package/table/api/data-providers/table.data-provider.d.ts +2 -14
  140. package/table/api/descriptors/table-descriptor.factory.d.ts +44 -0
  141. package/table/api/descriptors/table.descriptor.d.ts +4 -65
  142. package/table/api/helpers/table-descriptor-helpers.d.ts +44 -0
  143. package/table/api/index.d.ts +3 -0
  144. package/table/components/column-filter-full/column-filter-full.component.d.ts +5 -4
  145. package/table/components/table/table.component.d.ts +11 -11
  146. package/table/services/data-list.service.d.ts +9 -10
  147. package/tableview/action/components/action/action.component.d.ts +37 -44
  148. package/tableview/action/components/editor/action-editor.component.d.ts +20 -18
  149. package/tableview/action/components/editor/injector-context/action-editor-injector-context.component.d.ts +23 -23
  150. package/tableview/action/components/localization/data-language-dropdown.component.d.ts +11 -14
  151. package/tableview/action/components/route/action-route.component.d.ts +6 -11
  152. package/tableview/action/components/table/action-table.component.d.ts +3 -3
  153. package/tableview/action/services/view-container.service.d.ts +3 -9
  154. package/tableview/api/action/descriptors/action-descriptor.factory.d.ts +36 -0
  155. package/tableview/api/action/descriptors/action-editor-descriptor.factory.d.ts +31 -0
  156. package/tableview/api/action/descriptors/action-editor.descriptor.d.ts +17 -37
  157. package/tableview/api/action/descriptors/action-link-descriptor.factory.d.ts +15 -0
  158. package/tableview/api/action/descriptors/action-link.descriptor.d.ts +1 -9
  159. package/tableview/api/action/descriptors/action.descriptor.d.ts +4 -27
  160. package/tableview/api/action/models/action-component.model.d.ts +8 -8
  161. package/tableview/api/action/models/execution/view-container.model.d.ts +4 -3
  162. package/tableview/api/editor/data-providers/editor-data-provider.factory.d.ts +18 -0
  163. package/tableview/api/editor/data-providers/editor.data-provider.d.ts +2 -14
  164. package/tableview/api/editor/descriptors/editor-descriptor.factory.d.ts +44 -0
  165. package/tableview/api/editor/descriptors/editor.descriptor.d.ts +34 -90
  166. package/tableview/api/editor/descriptors/field-action.descriptor.d.ts +3 -3
  167. package/tableview/api/editor/descriptors/field-base.descriptor.d.ts +15 -13
  168. package/tableview/api/editor/descriptors/field-group.descriptor.d.ts +7 -6
  169. package/tableview/api/editor/descriptors/field-lookup.descriptor.d.ts +2 -2
  170. package/tableview/api/editor/descriptors/field-many.descriptor.d.ts +8 -8
  171. package/tableview/api/editor/descriptors/field-validation.descriptor.d.ts +6 -6
  172. package/tableview/api/editor/descriptors/field.descriptor.d.ts +1 -1
  173. package/tableview/api/editor/helpers/editor-descriptor-helpers.d.ts +43 -0
  174. package/tableview/api/editor/helpers/field-validators.d.ts +1 -1
  175. package/tableview/api/editor/models/editor-fields.model.d.ts +24 -22
  176. package/tableview/api/editor/models/field-action-context.model.d.ts +10 -8
  177. package/tableview/api/editor/models/field-validation.model.d.ts +26 -0
  178. package/tableview/api/editor/models/field.model.d.ts +0 -19
  179. package/tableview/api/editor/models/form-editor.event.d.ts +24 -16
  180. package/tableview/api/editor/models/form-editor.interface.d.ts +2 -1
  181. package/tableview/api/editor/models/formly-custom-field.model.d.ts +1 -1
  182. package/tableview/api/editor/models/formly-field.model.d.ts +4 -4
  183. package/tableview/api/index.d.ts +10 -0
  184. package/tableview/api/tableview/data-providers/tableview-data-provider.factory.d.ts +25 -0
  185. package/tableview/api/tableview/data-providers/tableview.data-provider.d.ts +3 -20
  186. package/tableview/api/tableview/descriptors/tableview-descriptor.factory.d.ts +49 -0
  187. package/tableview/api/tableview/descriptors/tableview.descriptor.d.ts +40 -100
  188. package/tableview/api/tableview/helpers/tableview-create.d.ts +2 -2
  189. package/tableview/api/tableview/helpers/tableview-default-actions.d.ts +4 -2
  190. package/tableview/api/tableview/helpers/tableview-descriptor-helpers.d.ts +42 -0
  191. package/tableview/api/tableview/helpers/tableview-input-builder.d.ts +1 -1
  192. package/tableview/editor/components/editor/form-editor.component.d.ts +6 -4
  193. package/tableview/editor/components/formly/fields/formly-field-action/formly-field-action.component.d.ts +5 -3
  194. package/tableview/editor/components/formly/fields/formly-field-autocomplete/formly-field-autocomplete.component.d.ts +1 -0
  195. package/tableview/editor/components/formly/fields/formly-field-dropdown/formly-field-dropdown.component.d.ts +1 -1
  196. package/tableview/editor/components/formly/fields/formly-field-lookup-dialog/formly-field-lookup-dialog.component.d.ts +1 -1
  197. package/tableview/editor/components/formly/fields/formly-field-table-dialog-form/formly-field-table-dialog-form.component.d.ts +3 -4
  198. package/tableview/editor/components/formly/fields/formly-field-table-dialog-multiselect/formly-field-table-dialog-multiselect.component.d.ts +3 -4
  199. package/tableview/editor/helpers/editor-formly.d.ts +1 -1
  200. package/tableview/editor/services/form-editor.service.d.ts +39 -0
  201. package/tableview/index.d.ts +1 -0
  202. package/tableview/tableview/components/route/tableview-route.component.d.ts +1 -1
  203. package/tableview/tableview/components/tableview/tableview.component.d.ts +1 -1
  204. package/version-info.json +4 -4
@@ -0,0 +1,18 @@
1
+ import { ClassType, ServiceClassType } from '@mediusinc/mng-commons/core';
2
+ import { ModelDescriptor, TypeDescriptor } from '@mediusinc/mng-commons/model';
3
+ import { LookupDataProviderInst } from './lookup.data-provider';
4
+ export declare class LookupDataProvider extends LookupDataProviderInst<any> {
5
+ protected constructor();
6
+ static create<Model>(): LookupDataProviderInst<Model, undefined, undefined, undefined>;
7
+ static fromClass<Model>(type: ClassType<Model>): LookupDataProviderInst<Model, undefined, ClassType<Model>, undefined>;
8
+ static fromClassWithService<Model, Service>(type: ClassType<Model>, serviceType: ServiceClassType<Service>): LookupDataProviderInst<Model, Service, ClassType<Model>, ServiceClassType<Service>>;
9
+ static fromService<ServiceType, ModelType>(serviceType: ServiceClassType<ServiceType>): LookupDataProviderInst<ModelType, ServiceType, undefined, ServiceClassType<ServiceType>>;
10
+ }
11
+ export declare function lookupDataProvider<Model>(): LookupDataProviderInst<Model, undefined, undefined, undefined>;
12
+ export declare function lookupDataProvider<Model>(type: TypeDescriptor<Model>): LookupDataProviderInst<Model, undefined, undefined, undefined>;
13
+ export declare function lookupDataProvider<Model, Service = any>(type: TypeDescriptor<Model>, serviceType: ServiceClassType<Service>): LookupDataProviderInst<Model, Service, undefined, ServiceClassType<Service>>;
14
+ export declare function lookupDataProviderWithService<Service, Model>(serviceType: ServiceClassType<Service>): LookupDataProviderInst<Model, Service, undefined, ServiceClassType<Service>>;
15
+ export declare function lookupDataProviderFromClass<Model>(type: ClassType<Model>): LookupDataProviderInst<Model, undefined, ClassType<Model>, undefined>;
16
+ export declare function lookupDataProviderFromClass<Model, Service = any>(type: ClassType<Model>, serviceType: ServiceClassType<Service>): LookupDataProviderInst<Model, Service, ClassType<Model>, ServiceClassType<Service>>;
17
+ export declare function lookupDataProviderFromModel<Model, ModelClass = ClassType<Model>>(model: ModelDescriptor<Model, ModelClass>): LookupDataProviderInst<Model, undefined, ModelClass, undefined>;
18
+ export declare function lookupDataProviderFromModel<Model, Service = any, ModelClass = ClassType<Model>>(model: ModelDescriptor<Model, ModelClass>, ServiceClass: ServiceClassType<Service>): LookupDataProviderInst<Model, Service, ModelClass, ServiceClassType<Service>>;
@@ -1,19 +1,7 @@
1
- import { ClassOptType, ClassType, DataProviderInst, ILookupDataProvider, LookupDataProviderLookupFnType, ServiceClassOptType, ServiceClassType } from '@mediusinc/mng-commons/core';
1
+ import { ClassOptType, DataProviderInst, ILookupDataProvider, LookupDataProviderLookupFnType, ServiceClassOptType } from '@mediusinc/mng-commons/core';
2
2
  export declare class LookupDataProviderInst<ModelType, ServiceType = any, CT = ClassOptType<ModelType>, ST = ServiceClassOptType<ServiceType>> extends DataProviderInst<ModelType, ServiceType, CT, ST> implements ILookupDataProvider<ModelType, ServiceType, CT, ST> {
3
3
  protected _lookup: LookupDataProviderLookupFnType<ModelType, ServiceType>;
4
- protected constructor(type: CT, serviceType: ST);
4
+ constructor(type: CT, serviceType: ST);
5
5
  get lookup(): LookupDataProviderLookupFnType<ModelType, ServiceType>;
6
6
  withLookup(fn: LookupDataProviderLookupFnType<ModelType, ServiceType>): this;
7
7
  }
8
- export declare class LookupDataProvider extends LookupDataProviderInst<any> {
9
- protected constructor();
10
- static create<Model>(): LookupDataProviderInst<Model, undefined, undefined, undefined>;
11
- static fromClass<Model>(type: ClassType<Model>): LookupDataProviderInst<Model, undefined, ClassType<Model>, undefined>;
12
- static fromClassWithService<Model, Service>(type: ClassType<Model>, serviceType: ServiceClassType<Service>): LookupDataProviderInst<Model, Service, ClassType<Model>, ServiceClassType<Service>>;
13
- static fromService<ServiceType, ModelType>(serviceType: ServiceClassType<ServiceType>): LookupDataProviderInst<ModelType, ServiceType, undefined, ServiceClassType<ServiceType>>;
14
- static fromAnyParam<Model>(): LookupDataProviderInst<Model, undefined, undefined, undefined>;
15
- static fromAnyParam<Model>(type: ClassType<Model>): LookupDataProviderInst<Model, undefined, ClassType<Model>, undefined>;
16
- static fromAnyParam<Model, Service = any>(type: undefined, serviceType: ServiceClassType<Service>): LookupDataProviderInst<Model, Service, undefined, ServiceClassType<Service>>;
17
- static fromAnyParam<Model, Service = any>(type: ClassType<Model>, serviceType: ServiceClassType<Service>): LookupDataProviderInst<Model, Service, ClassType<Model>, ServiceClassType<Service>>;
18
- static fromAnyParam<Model, Service, ModelClass = ClassType<Model>, ServiceClass = ServiceClassType<Service>>(type?: ModelClass, serviceType?: ServiceClass): LookupDataProviderInst<Model, Service, ModelClass, ServiceClass>;
19
- }
@@ -1,4 +1,5 @@
1
1
  export * from './data-providers/lookup.data-provider';
2
+ export * from './data-providers/lookup-data-provider.factory';
2
3
  export * from './descriptors/action-button.descriptor';
3
4
  export * from './descriptors/button-style.builder';
4
5
  export * from './models/trim.model';
@@ -1,73 +1,71 @@
1
- import { ExistingProvider, OnDestroy, OnInit } from '@angular/core';
1
+ import { ExistingProvider, OnInit } from '@angular/core';
2
2
  import { ControlValueAccessor } from '@angular/forms';
3
3
  import { AutoComplete, AutoCompleteSelectEvent } from 'primeng/autocomplete';
4
4
  import { AutoCompleteCompleteEvent } from 'primeng/autocomplete/autocomplete.interface';
5
- import { ReplaySubject } from 'rxjs';
6
5
  import { ILookupDataProvider } from '@mediusinc/mng-commons/core';
7
6
  import { InputTrimType } from '@mediusinc/mng-commons/form/api';
8
7
  import * as i0 from "@angular/core";
9
8
  export declare const AUTOCOMPLETE_VALUE_ACCESSOR: ExistingProvider;
10
- export declare class AutocompleteComponent implements OnInit, OnDestroy, ControlValueAccessor {
9
+ export declare class AutocompleteComponent implements ControlValueAccessor, OnInit {
11
10
  private readonly injector;
11
+ private readonly destroyRef;
12
12
  private readonly translate;
13
13
  private readonly logger;
14
- private readonly destroyRef;
15
14
  dataProvider: import("@angular/core").InputSignal<ILookupDataProvider<any, any>>;
16
15
  optionsTrackProperty: import("@angular/core").InputSignal<string | undefined>;
17
16
  optionsValuePropertyInit: import("@angular/core").InputSignal<string | undefined>;
18
17
  optionsLabelPropertyInit: import("@angular/core").InputSignal<string | undefined>;
19
- optionsLabelTranslate: import("@angular/core").InputSignal<boolean>;
20
- inlineSearch: import("@angular/core").InputSignal<boolean>;
21
- openOnFocus: import("@angular/core").InputSignal<boolean>;
22
- multiselect: import("@angular/core").InputSignal<boolean>;
18
+ optionsLabelTranslate: import("@angular/core").InputSignalWithTransform<boolean, unknown>;
19
+ inlineSearch: import("@angular/core").InputSignalWithTransform<boolean, unknown>;
20
+ openOnFocus: import("@angular/core").InputSignalWithTransform<boolean, unknown>;
21
+ multiselect: import("@angular/core").InputSignalWithTransform<boolean, unknown>;
23
22
  placeholder: import("@angular/core").InputSignal<string | undefined>;
24
23
  className: import("@angular/core").InputSignal<string | undefined>;
25
24
  dropdownClassName: import("@angular/core").InputSignal<string | undefined>;
26
- showClear: import("@angular/core").InputSignal<boolean>;
27
- autoClear: import("@angular/core").InputSignal<boolean>;
28
- selectFirst: import("@angular/core").InputSignal<boolean>;
25
+ showClear: import("@angular/core").InputSignalWithTransform<boolean, unknown>;
26
+ autoClear: import("@angular/core").InputSignalWithTransform<boolean, unknown>;
27
+ selectFirst: import("@angular/core").InputSignalWithTransform<boolean, unknown>;
29
28
  searchTrim: import("@angular/core").InputSignal<InputTrimType | undefined>;
29
+ disabledInput: import("@angular/core").InputSignalWithTransform<boolean, unknown>;
30
30
  valueChange: import("@angular/core").OutputEmitterRef<any>;
31
+ blur: import("@angular/core").OutputEmitterRef<Event>;
31
32
  primeAutocomplete: import("@angular/core").Signal<AutoComplete | undefined>;
32
33
  private isInited;
33
34
  private searchSubscription;
34
35
  private dataProviderService;
35
36
  private onChangeFn;
36
37
  private onTouchedFn;
37
- value: import("@angular/core").WritableSignal<any>;
38
- isDisabled: import("@angular/core").WritableSignal<boolean>;
38
+ private _value?;
39
+ ngModelValue: import("@angular/core").WritableSignal<any>;
40
+ private _disabled;
41
+ disabled: import("@angular/core").Signal<boolean>;
39
42
  suggestions: import("@angular/core").WritableSignal<any[]>;
40
43
  private isPanelShown;
41
44
  private isFocused;
42
45
  private userSelectedItem?;
43
- queryResultCacheSubject?: ReplaySubject<any>;
46
+ private queryResultCacheSubject?;
44
47
  optionsLabelProperty: import("@angular/core").Signal<string | undefined>;
45
48
  optionsValueProperty: import("@angular/core").Signal<string | undefined>;
49
+ get value(): any;
50
+ constructor();
46
51
  ngOnInit(): void;
47
- ngOnDestroy(): void;
48
52
  onSearch(event?: AutoCompleteCompleteEvent, isInit?: boolean): void;
49
53
  private selectFirstItem;
50
54
  /**
51
55
  * Triggered by user when selecting an item from an autocomplete suggestion list.
52
56
  */
53
57
  onSelect(event: AutoCompleteSelectEvent): void;
54
- /**
55
- * Selects and sets new value
56
- */
57
- private setValue;
58
- private trimValue;
59
58
  onFocus(event: Event): void;
60
59
  /**
61
60
  * calls the selectFirst item anytime the input field goes out of focus and if the suggestions panel is not displayed.
62
61
  */
63
- onBlur(): void;
62
+ onBlur(event: Event): void;
64
63
  onShow(): void;
65
64
  /**
66
65
  * calls the selectFirst item anytime the suggestions panel is closed and input field isn't focused.
67
66
  */
68
67
  onHide(): void;
69
68
  onClear(): void;
70
- private propagateValueChange;
71
69
  registerOnChange(fn: any): void;
72
70
  registerOnTouched(fn: any): void;
73
71
  setDisabledState(isDisabled: boolean): void;
@@ -78,6 +76,16 @@ export declare class AutocompleteComponent implements OnInit, OnDestroy, Control
78
76
  private i18nGetItemsKeys;
79
77
  private i18nPopulateItems;
80
78
  private setSuggestionsFromItems;
79
+ /**
80
+ * Selects and sets new value.
81
+ *
82
+ * @param value Represents the object value.
83
+ * @param fromUser If set value is triggered from user.
84
+ */
85
+ private setValue;
86
+ private trimValue;
87
+ private propagateValueChange;
88
+ private convertValueWithOptionsValuePropSetting;
81
89
  static ɵfac: i0.ɵɵFactoryDeclaration<AutocompleteComponent, never>;
82
- static ɵcmp: i0.ɵɵComponentDeclaration<AutocompleteComponent, "mng-autocomplete", never, { "dataProvider": { "alias": "dataProvider"; "required": true; "isSignal": true; }; "optionsTrackProperty": { "alias": "optionsTrackProperty"; "required": false; "isSignal": true; }; "optionsValuePropertyInit": { "alias": "optionsValueProperty"; "required": false; "isSignal": true; }; "optionsLabelPropertyInit": { "alias": "optionsLabelProperty"; "required": false; "isSignal": true; }; "optionsLabelTranslate": { "alias": "optionsLabelTranslate"; "required": false; "isSignal": true; }; "inlineSearch": { "alias": "inlineSearch"; "required": false; "isSignal": true; }; "openOnFocus": { "alias": "openOnFocus"; "required": false; "isSignal": true; }; "multiselect": { "alias": "multiselect"; "required": false; "isSignal": true; }; "placeholder": { "alias": "placeholder"; "required": false; "isSignal": true; }; "className": { "alias": "className"; "required": false; "isSignal": true; }; "dropdownClassName": { "alias": "dropdownClassName"; "required": false; "isSignal": true; }; "showClear": { "alias": "showClear"; "required": false; "isSignal": true; }; "autoClear": { "alias": "autoClear"; "required": false; "isSignal": true; }; "selectFirst": { "alias": "selectFirst"; "required": false; "isSignal": true; }; "searchTrim": { "alias": "searchTrim"; "required": false; "isSignal": true; }; }, { "valueChange": "valueChange"; }, never, never, true, never>;
90
+ static ɵcmp: i0.ɵɵComponentDeclaration<AutocompleteComponent, "mng-autocomplete", never, { "dataProvider": { "alias": "dataProvider"; "required": true; "isSignal": true; }; "optionsTrackProperty": { "alias": "optionsTrackProperty"; "required": false; "isSignal": true; }; "optionsValuePropertyInit": { "alias": "optionsValueProperty"; "required": false; "isSignal": true; }; "optionsLabelPropertyInit": { "alias": "optionsLabelProperty"; "required": false; "isSignal": true; }; "optionsLabelTranslate": { "alias": "optionsLabelTranslate"; "required": false; "isSignal": true; }; "inlineSearch": { "alias": "inlineSearch"; "required": false; "isSignal": true; }; "openOnFocus": { "alias": "openOnFocus"; "required": false; "isSignal": true; }; "multiselect": { "alias": "multiselect"; "required": false; "isSignal": true; }; "placeholder": { "alias": "placeholder"; "required": false; "isSignal": true; }; "className": { "alias": "className"; "required": false; "isSignal": true; }; "dropdownClassName": { "alias": "dropdownClassName"; "required": false; "isSignal": true; }; "showClear": { "alias": "showClear"; "required": false; "isSignal": true; }; "autoClear": { "alias": "autoClear"; "required": false; "isSignal": true; }; "selectFirst": { "alias": "selectFirst"; "required": false; "isSignal": true; }; "searchTrim": { "alias": "searchTrim"; "required": false; "isSignal": true; }; "disabledInput": { "alias": "disabled"; "required": false; "isSignal": true; }; }, { "valueChange": "valueChange"; "blur": "blur"; }, never, never, true, never>;
83
91
  }
@@ -1,55 +1,68 @@
1
- import { EventEmitter, ExistingProvider, OnInit } from '@angular/core';
2
- import { ControlValueAccessor, FormControl } from '@angular/forms';
3
- import { Dropdown } from 'primeng/dropdown';
1
+ import { ExistingProvider, OnInit } from '@angular/core';
2
+ import { ControlValueAccessor } from '@angular/forms';
3
+ import { Dropdown, DropdownChangeEvent } from 'primeng/dropdown';
4
+ import { MultiSelect, MultiSelectBlurEvent, MultiSelectChangeEvent } from 'primeng/multiselect';
4
5
  import { Observable } from 'rxjs';
5
6
  import { ILookupDataProvider } from '@mediusinc/mng-commons/core';
6
7
  import * as i0 from "@angular/core";
7
8
  export declare const DROPDOWN_VALUE_ACCESSOR: ExistingProvider;
8
- export declare class DropdownComponent implements OnInit, ControlValueAccessor {
9
+ export declare class DropdownComponent implements ControlValueAccessor, OnInit {
9
10
  private readonly logger;
10
11
  private readonly injector;
11
12
  private readonly destroyRef;
12
13
  private readonly translate;
13
- readonly dropdownFormControl: FormControl;
14
14
  dataProvider: import("@angular/core").InputSignal<ILookupDataProvider<any, any> | undefined>;
15
15
  options: import("@angular/core").InputSignal<any[] | Observable<any[]>>;
16
16
  optionsTrackProperty: import("@angular/core").InputSignal<string | undefined>;
17
17
  optionsLabelPropertyInit: import("@angular/core").InputSignal<string | undefined>;
18
- optionsLabelTranslate: import("@angular/core").InputSignal<boolean>;
19
- optionsValuePropertyInit: import("@angular/core").InputSignal<string | undefined>;
18
+ optionsLabelTranslate: import("@angular/core").InputSignalWithTransform<boolean, unknown>;
19
+ optionsValuePropertyInput: import("@angular/core").InputSignal<string | undefined>;
20
20
  optionsDisabledProperty: import("@angular/core").InputSignal<string | undefined>;
21
- multiselect: import("@angular/core").InputSignal<boolean>;
21
+ multiselect: import("@angular/core").InputSignalWithTransform<boolean, unknown>;
22
22
  placeholder: import("@angular/core").InputSignal<string | undefined>;
23
- showClear: import("@angular/core").InputSignal<boolean>;
24
- selectFirstItem: import("@angular/core").InputSignal<boolean>;
23
+ showClear: import("@angular/core").InputSignalWithTransform<boolean, unknown>;
24
+ selectFirstItemInput: import("@angular/core").InputSignalWithTransform<boolean, unknown>;
25
25
  className: import("@angular/core").InputSignal<string | undefined>;
26
26
  dropdownClassName: import("@angular/core").InputSignal<string | undefined>;
27
- changeValueOnBlur: import("@angular/core").InputSignal<boolean>;
28
- loading: import("@angular/core").WritableSignal<boolean>;
29
- valueChangeEventEmitter: EventEmitter<any>;
27
+ changeValueOnBlur: import("@angular/core").InputSignalWithTransform<boolean, unknown>;
28
+ loadingInput: import("@angular/core").InputSignalWithTransform<boolean, unknown>;
29
+ disabledInput: import("@angular/core").InputSignalWithTransform<boolean, unknown>;
30
+ valueChange: import("@angular/core").OutputEmitterRef<any>;
31
+ blur: import("@angular/core").OutputEmitterRef<Event>;
30
32
  primeDropdown: import("@angular/core").Signal<Dropdown | undefined>;
31
- private dataProviderService;
33
+ primeMultiselect: import("@angular/core").Signal<MultiSelect | undefined>;
34
+ private _value?;
35
+ ngModelValue: import("@angular/core").WritableSignal<any>;
36
+ private _loading;
37
+ private _disabled;
38
+ loading: import("@angular/core").Signal<boolean>;
39
+ disabled: import("@angular/core").Signal<boolean>;
32
40
  private onChangeFn;
33
41
  private onTouchedFn;
42
+ private dataProviderService;
34
43
  items: import("@angular/core").WritableSignal<any[]>;
35
44
  private firstTimeSettingItems;
45
+ private isDropdownPanelShown;
36
46
  optionsLabelProperty: import("@angular/core").Signal<string | undefined>;
37
47
  optionsValueProperty: import("@angular/core").Signal<string | undefined>;
48
+ get value(): any;
49
+ constructor();
38
50
  ngOnInit(): void;
39
51
  registerOnChange(fn: any): void;
40
52
  registerOnTouched(fn: any): void;
41
53
  setDisabledState(isDisabled: boolean): void;
42
- writeValue(obj: any): void;
43
- onDropdownBlur(event: any): void;
44
- onPanelHide(event: any): void;
54
+ writeValue(value: any): void;
55
+ onDropdownBlur(event: Event): void;
56
+ onDropdownChange(event: DropdownChangeEvent): void;
57
+ onDropdownPanelShow(): void;
58
+ onDropdownPanelHide(): void;
59
+ onMultiselectChange(event: MultiSelectChangeEvent): void;
60
+ onMultiselectBlur(event: MultiSelectBlurEvent): void;
61
+ onMultiselectPanelHide(): void;
62
+ private setDataProviderAndOptions;
63
+ private selectFirstItem;
64
+ private adjustValueOnItemsValuePropertyTypeMismatch;
45
65
  private propagateValueChange;
46
- /**
47
- * Prevents executions for writing and outputting value which is sometimes committed as null in cmp initialization stage.
48
- * In dropdown (from ang. 15 and switch to standalone cmp) null value was always committed to dropdown even if default value was set (using ngModel or formControl) which is incorrect.
49
- * Github issue: https://github.com/angular/angular/issues/14988
50
- * @private
51
- */
52
- private isValueAccessorInitialized;
53
66
  static ɵfac: i0.ɵɵFactoryDeclaration<DropdownComponent, never>;
54
- static ɵcmp: i0.ɵɵComponentDeclaration<DropdownComponent, "mng-dropdown", never, { "dataProvider": { "alias": "dataProvider"; "required": false; "isSignal": true; }; "options": { "alias": "options"; "required": false; "isSignal": true; }; "optionsTrackProperty": { "alias": "optionsTrackProperty"; "required": false; "isSignal": true; }; "optionsLabelPropertyInit": { "alias": "optionsLabelProperty"; "required": false; "isSignal": true; }; "optionsLabelTranslate": { "alias": "optionsLabelTranslate"; "required": false; "isSignal": true; }; "optionsValuePropertyInit": { "alias": "optionsValueProperty"; "required": false; "isSignal": true; }; "optionsDisabledProperty": { "alias": "optionsDisabledProperty"; "required": false; "isSignal": true; }; "multiselect": { "alias": "multiselect"; "required": false; "isSignal": true; }; "placeholder": { "alias": "placeholder"; "required": false; "isSignal": true; }; "showClear": { "alias": "showClear"; "required": false; "isSignal": true; }; "selectFirstItem": { "alias": "selectFirstItem"; "required": false; "isSignal": true; }; "className": { "alias": "className"; "required": false; "isSignal": true; }; "dropdownClassName": { "alias": "dropdownClassName"; "required": false; "isSignal": true; }; "changeValueOnBlur": { "alias": "changeValueOnBlur"; "required": false; "isSignal": true; }; }, { "valueChangeEventEmitter": "valueChange"; }, never, never, true, never>;
67
+ static ɵcmp: i0.ɵɵComponentDeclaration<DropdownComponent, "mng-dropdown", never, { "dataProvider": { "alias": "dataProvider"; "required": false; "isSignal": true; }; "options": { "alias": "options"; "required": false; "isSignal": true; }; "optionsTrackProperty": { "alias": "optionsTrackProperty"; "required": false; "isSignal": true; }; "optionsLabelPropertyInit": { "alias": "optionsLabelProperty"; "required": false; "isSignal": true; }; "optionsLabelTranslate": { "alias": "optionsLabelTranslate"; "required": false; "isSignal": true; }; "optionsValuePropertyInput": { "alias": "optionsValueProperty"; "required": false; "isSignal": true; }; "optionsDisabledProperty": { "alias": "optionsDisabledProperty"; "required": false; "isSignal": true; }; "multiselect": { "alias": "multiselect"; "required": false; "isSignal": true; }; "placeholder": { "alias": "placeholder"; "required": false; "isSignal": true; }; "showClear": { "alias": "showClear"; "required": false; "isSignal": true; }; "selectFirstItemInput": { "alias": "selectFirstItem"; "required": false; "isSignal": true; }; "className": { "alias": "className"; "required": false; "isSignal": true; }; "dropdownClassName": { "alias": "dropdownClassName"; "required": false; "isSignal": true; }; "changeValueOnBlur": { "alias": "changeValueOnBlur"; "required": false; "isSignal": true; }; "loadingInput": { "alias": "loading"; "required": false; "isSignal": true; }; "disabledInput": { "alias": "disabled"; "required": false; "isSignal": true; }; }, { "valueChange": "valueChange"; "blur": "blur"; }, never, never, true, never>;
55
68
  }
@@ -0,0 +1,8 @@
1
+ import { ClassType, DataProviderInst, ServiceClassType } from '@mediusinc/mng-commons/core';
2
+ import { ModelDescriptor } from '../descriptors/model.descriptor';
3
+ import { TypeDescriptor } from '../descriptors/type.descriptor';
4
+ export declare function dataProvider<Model>(): DataProviderInst<Model, undefined, undefined, undefined>;
5
+ export declare function dataProvider<Model>(type: TypeDescriptor<Model>): DataProviderInst<Model, undefined, undefined, undefined>;
6
+ export declare function dataProvider<Model, Service = any>(type: TypeDescriptor<Model>, serviceType: ServiceClassType<Service>): DataProviderInst<Model, Service, undefined, ServiceClassType<Service>>;
7
+ export declare function dataProviderFromModel<Model, ModelClass = ClassType<Model>>(model: ModelDescriptor<Model, ModelClass>): DataProviderInst<Model, undefined, ModelClass, undefined>;
8
+ export declare function dataProviderFromModel<Model, Service = any, ModelClass = ClassType<Model>>(model: ModelDescriptor<Model, ModelClass>, ServiceClass: ServiceClassType<Service>): DataProviderInst<Model, Service, ModelClass, ServiceClassType<Service>>;
@@ -4,11 +4,10 @@ export declare class EnumDescriptor<Enum> {
4
4
  private readonly _type;
5
5
  private readonly _nameAsValue;
6
6
  private readonly _i18nBaseKey;
7
- protected constructor(value: Enum, type: EnumType, i18nBaseKey?: string | null, nameAsValue?: boolean);
7
+ constructor(value: Enum, type: EnumType, i18nBaseKey?: string | null, nameAsValue?: boolean);
8
8
  get type(): EnumType<import("@mediusinc/mng-commons/core").EnumConstantType>;
9
9
  get i18nBaseKey(): string | null;
10
10
  get nameAsValue(): boolean;
11
- static create<Enum>(value: Enum, type: EnumType, i18nBaseKey?: string | undefined | null, nameAsValue?: boolean): EnumDescriptor<Enum>;
12
11
  }
13
12
  export declare function enumModel<Enum>(value: Enum, type: EnumType, i18nBaseKey?: string | undefined | null, nameAsValue?: boolean): EnumDescriptor<Enum>;
14
13
  export declare function enumModelGeneric(type: EnumType, i18nBaseKey?: string | undefined | null, nameAsValue?: boolean): EnumDescriptor<any>;
@@ -6,8 +6,14 @@ export declare class ModelDescriptor<Model, ModelClass = ClassOptType<Model>> im
6
6
  private _i18nBaseKey;
7
7
  private _idProperty?;
8
8
  private _titleProperty?;
9
- protected constructor(type: ModelClass, idProperty?: string, titleProperty?: string, i18nBaseKey?: string | ClassType<any>);
9
+ constructor(type: ModelClass, idProperty?: string, titleProperty?: string, i18nBaseKey?: string | ClassType<any>);
10
+ /**
11
+ * @deprecated Use standalone {model()} instead.
12
+ */
10
13
  static create<Model>(idProperty?: keyof Model, titleProperty?: keyof Model, i18nBaseKey?: string | ClassType<unknown>): ModelDescriptor<Model, undefined>;
14
+ /**
15
+ * @deprecated Use standalone {model()} instead.
16
+ */
11
17
  static fromClass<Model>(type: ClassType<Model>, idProperty?: keyof Model, titleProperty?: keyof Model, i18nBaseKey?: string | ClassType<unknown>): ModelDescriptor<Model, ClassType<Model>>;
12
18
  get type(): ModelClass;
13
19
  get typeName(): string | undefined;
@@ -26,6 +32,7 @@ export type ModelDescriptorCreateOpts<Model> = {
26
32
  title?: keyof Model;
27
33
  i18nBase?: string | ClassType<any>;
28
34
  };
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>;
35
+ export declare function model<Model>(): ModelDescriptor<Model, undefined>;
36
+ export declare function model<Model>(opts: ModelDescriptorCreateOpts<Model>): ModelDescriptor<Model, undefined>;
37
+ export declare function model<Model>(type: TypeDescriptor<Model>, opts?: ModelDescriptorCreateOpts<Model>): ModelDescriptor<Model, undefined>;
38
+ export declare function model<Model>(clazz: ClassType<Model>, opts?: ModelDescriptorCreateOpts<Model>): ModelDescriptor<Model, ClassType<Model>>;
@@ -1,10 +1,8 @@
1
1
  import { ClassType } from '@mediusinc/mng-commons/core';
2
2
  export declare class TypeDescriptor<Type> {
3
3
  private readonly _classType?;
4
- protected constructor(classType?: ClassType<Type>);
5
- static create<Type>(): TypeDescriptor<Type>;
6
- static fromClass<Type>(type: ClassType<Type>): TypeDescriptor<Type>;
4
+ constructor(classType?: ClassType<Type>);
7
5
  get classType(): ClassType<Type> | undefined;
8
6
  }
9
7
  export declare function type<Type>(): TypeDescriptor<Type>;
10
- export declare function typeClass<TypeClass>(type: ClassType<TypeClass>): TypeDescriptor<TypeClass>;
8
+ export declare function typeClass<Type>(type: ClassType<Type>): TypeDescriptor<Type>;
package/model/index.d.ts CHANGED
@@ -1,3 +1,4 @@
1
+ export * from './data-providers/base-from-type-data-provider.factory';
1
2
  export * from './descriptors/enum.descriptor';
2
3
  export * from './descriptors/model.descriptor';
3
4
  export * from './descriptors/type.descriptor';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mediusinc/mng-commons",
3
- "version": "5.0.0-rc.2",
3
+ "version": "5.0.0-rc.3",
4
4
  "peerDependencies": {
5
5
  "@angular/animations": "^17.3.0",
6
6
  "@angular/common": "^17.3.0",
@@ -0,0 +1,18 @@
1
+ import { ClassType, ServiceClassType } from '@mediusinc/mng-commons/core';
2
+ import { ModelDescriptor, TypeDescriptor } from '@mediusinc/mng-commons/model';
3
+ import { TableDataProviderInst } from './table.data-provider';
4
+ export declare class TableDataProvider extends TableDataProviderInst<any> {
5
+ protected constructor();
6
+ static create<Model, Sorts = keyof Model, Filters extends keyof any = keyof Model>(): TableDataProviderInst<Model, undefined, Sorts, Filters, undefined, undefined>;
7
+ static fromClass<Model, Sorts = keyof Model, Filters extends keyof any = keyof Model>(type: ClassType<Model>): TableDataProviderInst<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>): TableDataProviderInst<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>): TableDataProviderInst<Model, Service, Sorts, Filters, undefined, ServiceClassType<Service>>;
10
+ }
11
+ export declare function tableDataProvider<Model, Sorts = keyof Model, Filters extends keyof any = keyof Model>(): TableDataProviderInst<Model, undefined, Sorts, Filters, undefined, undefined>;
12
+ export declare function tableDataProvider<Model, Sorts = keyof Model, Filters extends keyof any = keyof Model>(type: TypeDescriptor<Model>): TableDataProviderInst<Model, undefined, Sorts, Filters, undefined, undefined>;
13
+ export declare function tableDataProvider<Model, Service = any, Sorts = keyof Model, Filters extends keyof any = keyof Model>(type: TypeDescriptor<Model>, serviceType: ServiceClassType<Service>): TableDataProviderInst<Model, Service, Sorts, Filters, undefined, ServiceClassType<Service>>;
14
+ export declare function tableDataProviderWithService<Service, Model, Sorts = keyof Model, Filters extends keyof any = keyof Model>(serviceType: ServiceClassType<Service>): TableDataProviderInst<Model, Service, Sorts, Filters, undefined, ServiceClassType<Service>>;
15
+ export declare function tableDataProviderFromClass<Model, Sorts = keyof Model, Filters extends keyof any = keyof Model>(type: ClassType<Model>): TableDataProviderInst<Model, undefined, Sorts, Filters, ClassType<Model>, undefined>;
16
+ export declare function tableDataProviderFromClass<Model, Service = any, Sorts = keyof Model, Filters extends keyof any = keyof Model>(type: ClassType<Model>, serviceType: ServiceClassType<Service>): TableDataProviderInst<Model, Service, Sorts, Filters, ClassType<Model>, ServiceClassType<Service>>;
17
+ export declare function tableDataProviderFromModel<Model, Sorts = keyof Model, Filters extends keyof any = keyof Model, ModelClass = ClassType<Model>>(model: ModelDescriptor<Model, ModelClass>): TableDataProviderInst<Model, undefined, Sorts, Filters, ModelClass, undefined>;
18
+ export declare function tableDataProviderFromModel<Model, Service = any, Sorts = keyof Model, Filters extends keyof any = keyof Model, ModelClass = ClassType<Model>>(model: ModelDescriptor<Model, ModelClass>, ServiceClass: ServiceClassType<Service>): TableDataProviderInst<Model, Service, Sorts, Filters, ModelClass, ServiceClassType<Service>>;
@@ -1,5 +1,5 @@
1
1
  import { Observable, Subject } from 'rxjs';
2
- import { ClassOptType, ClassType, DataListParams, DataListResult, DataProviderInst, IDataProvider, ItemOrObservable, ServiceClassOptType, ServiceClassType } from '@mediusinc/mng-commons/core';
2
+ import { ClassOptType, DataListParams, DataListResult, DataProviderInst, IDataProvider, ItemOrObservable, ServiceClassOptType } from '@mediusinc/mng-commons/core';
3
3
  export type TableDataProviderGetAllFnType<Model = any, Service = undefined, Sorts = keyof Model, Filters extends keyof any = keyof Model, Return = ItemOrObservable<DataListResult<Model>>> = (params: DataListParams<Sorts, Filters>, service: Service, locale?: string) => Return;
4
4
  export type TableDataProviderGetAllEagerFnType<Model = any, Service = undefined, Return = ItemOrObservable<Model[]>> = (service: Service, locale?: string) => Return;
5
5
  export interface ITableDataProviderGetAll<Model, Service, Sorts = keyof Model, Filters extends keyof any = keyof Model> {
@@ -15,7 +15,7 @@ export type ITableDataProvider<Model = any, Service = any, Sorts = keyof Model,
15
15
  export declare class TableDataProviderInst<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 ITableDataProvider<Model, Service, Sorts, Filters, ModelClass, ServiceClass> {
16
16
  protected readonly _getAllReloadSubject: Subject<DataListParams<Sorts, Filters> | undefined>;
17
17
  protected _isLazy: boolean;
18
- protected constructor(type: ModelClass, serviceType: ServiceClass);
18
+ constructor(type: ModelClass, serviceType: ServiceClass);
19
19
  protected _getAll: TableDataProviderGetAllFnType<Model, Service, Sorts, Filters>;
20
20
  get isLazy(): boolean;
21
21
  get getAll(): TableDataProviderGetAllFnType<Model, Service, Sorts, Filters, ItemOrObservable<DataListResult<Model>>>;
@@ -24,15 +24,3 @@ export declare class TableDataProviderInst<Model, Service = any, Sorts = keyof M
24
24
  withGetAllEagerly(fn: TableDataProviderGetAllEagerFnType<Model, Service>): this;
25
25
  getAllReload(queryParam?: DataListParams<Sorts, Filters>): void;
26
26
  }
27
- export declare class TableDataProvider extends TableDataProviderInst<any> {
28
- protected constructor();
29
- static create<Model, Sorts = keyof Model, Filters extends keyof any = keyof Model>(): TableDataProviderInst<Model, undefined, Sorts, Filters, undefined, undefined>;
30
- static fromClass<Model, Sorts = keyof Model, Filters extends keyof any = keyof Model>(type: ClassType<Model>): TableDataProviderInst<Model, undefined, Sorts, Filters, ClassType<Model>, undefined>;
31
- static fromClassWithService<Model, Service, Sorts = keyof Model, Filters extends keyof any = keyof Model>(type: ClassType<Model>, serviceType: ServiceClassType<Service>): TableDataProviderInst<Model, Service, Sorts, Filters, ClassType<Model>, ServiceClassType<Service>>;
32
- static fromService<Service, Model, Sorts = keyof Model, Filters extends keyof any = keyof Model>(serviceType: ServiceClassType<Service>): TableDataProviderInst<Model, Service, Sorts, Filters, undefined, ServiceClassType<Service>>;
33
- static fromAnyParam<Model, Sorts = keyof Model, Filters extends keyof any = keyof Model>(): TableDataProviderInst<Model, undefined, Sorts, Filters, undefined, undefined>;
34
- static fromAnyParam<Model, Sorts = keyof Model, Filters extends keyof any = keyof Model>(type: ClassType<Model>): TableDataProviderInst<Model, undefined, Sorts, Filters, ClassType<Model>, undefined>;
35
- static fromAnyParam<Model, Service = any, Sorts = keyof Model, Filters extends keyof any = keyof Model>(type: undefined, serviceType: ServiceClassType<Service>): TableDataProviderInst<Model, Service, Sorts, Filters, undefined, ServiceClassType<Service>>;
36
- static fromAnyParam<Model, Service = any, Sorts = keyof Model, Filters extends keyof any = keyof Model>(type: ClassType<Model>, serviceType: ServiceClassType<Service>): TableDataProviderInst<Model, Service, Sorts, Filters, ClassType<Model>, ServiceClassType<Service>>;
37
- static fromAnyParam<Model, Service, Sorts = keyof Model, Filters extends keyof any = keyof Model, ModelClass = ClassType<Model>, ServiceClass = ServiceClassType<Service>>(type?: ModelClass, serviceType?: ServiceClass): TableDataProviderInst<Model, Service, Sorts, Filters, ModelClass, ServiceClass>;
38
- }
@@ -0,0 +1,44 @@
1
+ import { ClassType } from '@mediusinc/mng-commons/core';
2
+ import { ModelDescriptor, ModelDescriptorCreateOpts, TypeDescriptor } from '@mediusinc/mng-commons/model';
3
+ import { TableClassAttributeDef } from '../models/class-table-attribute.model';
4
+ import { TableDescriptorInst, TableDynamicDescriptorInst } from './table.descriptor';
5
+ export declare class TableDescriptor extends TableDescriptorInst<any> {
6
+ protected constructor();
7
+ static create<TableModel, Sorts = keyof TableModel, Filters = keyof TableModel>(idProperty?: keyof TableModel, titleProperty?: keyof TableModel, i18nBaseKey?: string | ClassType<unknown>): TableDescriptorInst<TableModel, Sorts, Filters>;
8
+ static fromClass<TableModel, Sorts = keyof TableModel, Filters = keyof TableModel>(type: ClassType<TableModel>, idProperty?: keyof TableModel, titleProperty?: keyof TableModel, i18nBaseKey?: ClassType<unknown> | string): TableDescriptorInst<TableModel, Sorts, Filters>;
9
+ static fromModel<TableModel, Sorts = keyof TableModel, Filters = keyof TableModel>(model: ModelDescriptor<TableModel>): TableDescriptorInst<TableModel, Sorts, Filters>;
10
+ /**
11
+ * generates descriptor based on type attribute definition
12
+ * @param type class type
13
+ * @param idProperty
14
+ * @param titleProperty
15
+ */
16
+ static fromClassWithAutoAttrsDef<TableModel>(type: ClassType<TableModel>, idProperty?: keyof TableModel, titleProperty?: keyof TableModel): TableDescriptorInst<TableModel>;
17
+ /**
18
+ * generates descriptor base on given attribute definition
19
+ * @param type class type
20
+ * @param attributes attributes from which descriptor is generated
21
+ * @param idProperty
22
+ * @param titleProperty
23
+ */
24
+ static fromClassWithCustomAttrsDef<TableModel>(type: ClassType<TableModel>, attributes: TableClassAttributeDef[], idProperty?: keyof TableModel, titleProperty?: keyof TableModel): TableDescriptorInst<TableModel>;
25
+ }
26
+ export type TableDescriptorCreateOptsType<TableModel> = ModelDescriptorCreateOpts<TableModel>;
27
+ export declare function tableDescriptor<TableModel, Sorts = keyof TableModel, Filters = keyof TableModel>(): TableDescriptorInst<TableModel, Sorts, Filters>;
28
+ export declare function tableDescriptor<TableModel, Sorts = keyof TableModel, Filters = keyof TableModel>(opts: TableDescriptorCreateOptsType<TableModel>): TableDescriptorInst<TableModel, Sorts, Filters>;
29
+ export declare function tableDescriptor<TableModel, Sorts = keyof TableModel, Filters = keyof TableModel>(model: ModelDescriptor<TableModel>): TableDescriptorInst<TableModel, Sorts, Filters>;
30
+ export declare function tableDescriptor<TableModel, Sorts = keyof TableModel, Filters = keyof TableModel>(type: TypeDescriptor<TableModel>, opts?: TableDescriptorCreateOptsType<TableModel>): TableDescriptorInst<TableModel, Sorts, Filters>;
31
+ export declare function tableDescriptorFromClass<TableModel, Sorts = keyof TableModel, Filters = keyof TableModel>(type: ClassType<TableModel>, opts?: TableDescriptorCreateOptsType<TableModel>): TableDescriptorInst<TableModel, Sorts, Filters>;
32
+ /**
33
+ * generates descriptor based on type attribute definition
34
+ * @param type class type
35
+ * @param attributes
36
+ * @param opts
37
+ */
38
+ export declare function tableDescriptorFromClassAttrsDef<TableModel, Sorts = keyof TableModel, Filters = keyof TableModel>(type: ClassType<TableModel>, attributes?: TableClassAttributeDef[], opts?: TableDescriptorCreateOptsType<TableModel>): TableDescriptorInst<TableModel, Sorts, Filters>;
39
+ export declare class TableDynamicDescriptor extends TableDynamicDescriptorInst {
40
+ protected constructor();
41
+ static create(idProperty?: string, titleProperty?: string, i18nBaseKey?: string | ClassType<any>): TableDynamicDescriptorInst;
42
+ static fromModel(model: ModelDescriptor<any>): TableDynamicDescriptorInst;
43
+ }
44
+ export declare function tableDynamicDescriptor(modelOrOpts?: ModelDescriptor<any> | TableDescriptorCreateOptsType<any>): TableDynamicDescriptorInst;
@@ -1,7 +1,6 @@
1
- import { ClassType, DataListResult, EnumConstantType, ILookupDataProvider } from '@mediusinc/mng-commons/core';
1
+ import { DataListResult, EnumConstantType, ILookupDataProvider } from '@mediusinc/mng-commons/core';
2
2
  import { FilterDescriptor, FilterLookupDescriptor, FilterLookupEnumDescriptor } from '@mediusinc/mng-commons/filter';
3
3
  import { EnumDescriptor, ModelDescriptor } from '@mediusinc/mng-commons/model';
4
- import { TableClassAttributeDef } from '../models/class-table-attribute.model';
5
4
  import { ColumnDisplayTypeEnum, ColumnTypeEnum } from '../models/column.model';
6
5
  import { IColumnsManageInterface } from '../models/table-columns.model';
7
6
  import { ITableDescriptorInternal, TableDynamicColumnsModeEnum, TablePaginationModeEnum, TableSizeEnum } from '../models/table.model';
@@ -40,7 +39,7 @@ export declare class TableDescriptorInst<TableModel, Sorts = keyof TableModel, F
40
39
  private _rowExpandable;
41
40
  private _rowExpandableColSpan;
42
41
  private _rowExpandableProperty?;
43
- protected constructor(model: ModelDescriptor<TableModel>, autoGenerated?: boolean);
42
+ constructor(model: ModelDescriptor<TableModel>, autoGenerated?: boolean);
44
43
  get identifier(): string | undefined;
45
44
  get trackProperty(): string | undefined;
46
45
  get paginationMode(): TablePaginationModeEnum | undefined;
@@ -161,61 +160,6 @@ export declare class TableDescriptorInst<TableModel, Sorts = keyof TableModel, F
161
160
  withRowExpandable(property?: keyof TableModel, colSpan?: number): this;
162
161
  protected copyFieldsTo(obj: TableDescriptorInst<any, any, any>): void;
163
162
  copy(): TableDescriptorInst<TableModel, Sorts, Filters>;
164
- /**
165
- * defines modified type of column
166
- * DO NOT USE with enum (use withCustomEnumType)
167
- * @param property column name
168
- * @param columnType modified type
169
- * @param args additional attributes
170
- * @param columnDisplayType
171
- */
172
- withColumnModifiedType(property: keyof TableModel, columnType?: ColumnTypeEnum, columnDisplayType?: ColumnDisplayTypeEnum, ...args: any[]): this;
173
- withColumnModifiedTypeUnsafe(property: string, columnType?: ColumnTypeEnum, columnDisplayType?: ColumnDisplayTypeEnum, ...args: any[]): this;
174
- /**
175
- * defines custom enum type for column
176
- * @param property column name
177
- * @param enumDesc Enum descriptor.
178
- */
179
- withColumnModifiedEnum<Property extends keyof TableModel, Enum extends NonNullable<TableModel[Property]>>(property: keyof TableModel, enumDesc?: EnumDescriptor<Enum>): this;
180
- withColumnModifiedEnumUnsafe<Enum = any>(property: string, enumDesc?: EnumDescriptor<Enum>): this;
181
- /**
182
- * modifies column with class and lookup provider
183
- * @param property column name
184
- * @param lookupProvider lookupProvider for class
185
- * @param optionsLabelProperty
186
- * @param filterProperty
187
- */
188
- withModifiedLookup<ColumnLookupModel>(property: keyof TableModel, lookupProvider?: ILookupDataProvider<ColumnLookupModel>, optionsLabelProperty?: string, filterProperty?: string): this;
189
- withColumnModifiedLookupUnsafe<ColumnLookupModel>(property: string, lookupProvider?: ILookupDataProvider<ColumnLookupModel>, optionsLabelProperty?: string, filterProperty?: string): this;
190
- /**
191
- * generates column based on attributes
192
- * @param desc Table descriptor
193
- * @param attribute attribute map
194
- * @param column if provided, replaced by new, otherwise new is created
195
- * @param args additional parameters
196
- */
197
- protected static upsertColumnFromAttributeDef<ColumnModel, TableModel>(desc: TableDescriptorInst<TableModel, any, any>, attribute: TableClassAttributeDef, column?: ColumnDescriptor<ColumnModel, TableModel>, ...args: any[]): ColumnDescriptor<ColumnModel, TableModel>;
198
- }
199
- export declare class TableDescriptor extends TableDescriptorInst<any> {
200
- protected constructor();
201
- static create<TableModel, Sorts = keyof TableModel, Filters = keyof TableModel>(idProperty?: keyof TableModel, titleProperty?: keyof TableModel, i18nBaseKey?: string | ClassType<unknown>): TableDescriptorInst<TableModel, Sorts, Filters>;
202
- static fromClass<TableModel, Sorts = keyof TableModel, Filters = keyof TableModel>(type: ClassType<TableModel>, idProperty?: keyof TableModel, titleProperty?: keyof TableModel, i18nBaseKey?: ClassType<unknown> | string, isAutoGenerated?: boolean): TableDescriptorInst<TableModel, Sorts, Filters>;
203
- static fromModel<TableModel, Sorts = keyof TableModel, Filters = keyof TableModel>(model: ModelDescriptor<TableModel>): TableDescriptorInst<TableModel, Sorts, Filters>;
204
- /**
205
- * generates descriptor based on type attribute definition
206
- * @param type class type
207
- * @param idProperty
208
- * @param titleProperty
209
- */
210
- static fromClassWithAutoAttrsDef<TableModel>(type: ClassType<TableModel>, idProperty?: keyof TableModel, titleProperty?: keyof TableModel): TableDescriptorInst<TableModel>;
211
- /**
212
- * generates descriptor base on given attribute definition
213
- * @param type class type
214
- * @param attributes attributes from which descriptor is generated
215
- * @param idProperty
216
- * @param titleProperty
217
- */
218
- static fromClassWithCustomAttrsDef<TableModel>(type: ClassType<TableModel>, attributes: TableClassAttributeDef[], idProperty?: keyof TableModel, titleProperty?: keyof TableModel): TableDescriptorInst<TableModel>;
219
163
  }
220
164
  export declare class TableDynamicDescriptorInst extends TableDescriptorInst<any> {
221
165
  private _excludedColumns;
@@ -224,7 +168,7 @@ export declare class TableDynamicDescriptorInst extends TableDescriptorInst<any>
224
168
  private _sortColumnMode;
225
169
  private _filterColumnMode;
226
170
  protected _columns: ColumnDynamicDescriptor[];
227
- protected constructor(model: ModelDescriptor<any>);
171
+ constructor(model: ModelDescriptor<any>);
228
172
  get columns(): ColumnDynamicDescriptor[];
229
173
  /**
230
174
  * defines excluded columns when generating descriptor
@@ -250,7 +194,7 @@ export declare class TableDynamicDescriptorInst extends TableDescriptorInst<any>
250
194
  * @param displayType custom column value display type
251
195
  * @param args addition arguments for column
252
196
  */
253
- withColumnModifiedType(property: string, type: ColumnTypeEnum, displayType?: ColumnDisplayTypeEnum, ...args: any[]): this;
197
+ withColumnPresetType(property: string, type: ColumnTypeEnum, displayType?: ColumnDisplayTypeEnum, ...args: any[]): this;
254
198
  /**
255
199
  * sets title to column with given property and returns this table
256
200
  * @param property column's property
@@ -274,8 +218,3 @@ export declare class TableDynamicDescriptorInst extends TableDescriptorInst<any>
274
218
  copy(): TableDynamicDescriptorInst;
275
219
  toTableDescriptor(): TableDescriptorInst<any>;
276
220
  }
277
- export declare class TableDynamicDescriptor extends TableDynamicDescriptorInst {
278
- protected constructor();
279
- static create(idProperty?: string, titleProperty?: string, i18nBaseKey?: string | ClassType<any>): TableDynamicDescriptorInst;
280
- static fromModel(model: ModelDescriptor<any>): TableDynamicDescriptorInst;
281
- }