@mediusinc/mng-commons-data-api 5.5.0 → 6.0.0-rc.2
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.
- package/esm2022/index.mjs +2 -2
- package/esm2022/lib/types/extract-get-all-types.type.mjs +2 -0
- package/esm2022/tableview/filter/generic-filters.mjs +6 -6
- package/esm2022/tableview/helpers/lookup-get-all-create.mjs +60 -0
- package/esm2022/tableview/helpers/tableview-get-all-params-create.mjs +67 -0
- package/esm2022/tableview/index.mjs +4 -2
- package/esm2022/tableview/schema/columns-from-schema.mjs +1 -1
- package/esm2022/tableview/schema/fields-from-schema.mjs +12 -117
- package/fesm2022/mediusinc-mng-commons-data-api-tableview.mjs +144 -158
- package/fesm2022/mediusinc-mng-commons-data-api-tableview.mjs.map +1 -1
- package/fesm2022/mediusinc-mng-commons-data-api.mjs.map +1 -1
- package/index.d.ts +1 -1
- package/lib/types/{extract-get-all-params.type.d.ts → extract-get-all-types.type.d.ts} +14 -4
- package/package.json +2 -2
- package/tableview/filter/generic-filters.d.ts +1 -1
- package/tableview/helpers/lookup-get-all-create.d.ts +29 -0
- package/tableview/helpers/tableview-get-all-params-create.d.ts +54 -0
- package/tableview/index.d.ts +2 -1
- package/tableview/schema/columns-from-schema.d.ts +2 -2
- package/tableview/schema/fields-from-schema.d.ts +25 -104
- package/version-info.json +6 -6
- package/esm2022/lib/types/extract-get-all-params.type.mjs +0 -2
- package/esm2022/tableview/tableview-get-all-params-create.mjs +0 -35
- package/tableview/tableview-get-all-params-create.d.ts +0 -30
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
import { Observable } from 'rxjs';
|
|
2
|
+
import { ApiServiceGetAllFilterType, ExtractGetAllParamsFilterType, ExtractGetAllParamsSortType, ExtractServiceGetAllDataType, GetAllHttpResponseType, GetAllParamsDefaultWoFiltersType } from '@mediusinc/mng-commons-data-api';
|
|
3
|
+
import { ClassFunctionKeysWithAnyArgsAndReturnType, ServiceClassType } from '@mediusinc/mng-commons/core';
|
|
4
|
+
import { ModelDescriptor, TypeDescriptor } from '@mediusinc/mng-commons/model';
|
|
5
|
+
import { TableviewDataProviderInst, TableviewDescriptorFieldsManageMultiType, TableviewDescriptorInst, TableviewDescriptorInstConstructorOpts, TableviewInputBuilder } from '@mediusinc/mng-commons/tableview/api';
|
|
6
|
+
type TableviewWithGetAllParamsOpts<RequestParam, TableModel, AddModel, EditModel> = {
|
|
7
|
+
requestParamsType: TypeDescriptor<RequestParam>;
|
|
8
|
+
} & TableviewDescriptorInstConstructorOpts<TableModel, AddModel, EditModel>;
|
|
9
|
+
/**
|
|
10
|
+
* Creates a tableview with a given model, service and sorts/filters extracted from Data API Get All request params, service, and optional build function.
|
|
11
|
+
*
|
|
12
|
+
* @param {ModelDescriptor<Model>} model - The model descriptor.
|
|
13
|
+
* @param {ServiceClassType<Service>} service - The class type of the service.
|
|
14
|
+
* @param {TypeDescriptor<RequestParam> | TableviewWithGetAllParamsOpts<RequestParam, TableModel>} paramsOrOpts - The request param of get all request. Filters and sorts will be taken from here.
|
|
15
|
+
* @param {(builder: TableviewBuilder) => void} [buildFn] - The optional callback function to customize the tableview using the prepared builder.
|
|
16
|
+
*
|
|
17
|
+
* @returns A tableview instance with descriptor, data provider and actions.
|
|
18
|
+
*/
|
|
19
|
+
export declare function tableviewWithGetAllParams<Model, Service, RequestParam extends GetAllParamsDefaultWoFiltersType, Sorts = ExtractGetAllParamsSortType<RequestParam>, Filters extends keyof any = ExtractGetAllParamsFilterType<RequestParam>>(model: ModelDescriptor<Model>, service: ServiceClassType<Service>, params: TypeDescriptor<RequestParam>, buildFn?: (builder: TableviewInputBuilder<Model, Service, TableviewDescriptorInst<Model, Sorts, Filters, undefined, Model, Model, Model, Model>, TableviewDataProviderInst<Model, Service, Sorts, Filters>, Sorts, Filters, Model, Model, Model, Model>) => void): import("@mediusinc/mng-commons/tableview/api").TableviewInput<Model, Service, Sorts, Filters, Model, Model, Model, TableviewDescriptorInst<Model, Sorts, Filters, undefined, Model, Model, Model, Model>, TableviewDataProviderInst<Model, Service, Sorts, Filters, import("@mediusinc/mng-commons/core").ServiceClassOptType<Service>, Model, Model, Model>>;
|
|
20
|
+
/**
|
|
21
|
+
* Creates a tableview with a mulit-model (separate for add, edit and details), service and sorts/filters from API service's provided getAll function.
|
|
22
|
+
*
|
|
23
|
+
* @param {ModelDescriptor<Model>} model - The model descriptor.
|
|
24
|
+
* @param {ServiceClassType<Service>} service - The class type of the service.
|
|
25
|
+
* @param {TableviewWithGetAllParamsOpts} opts - Options providing get all request parameters and models for table, add and edit.
|
|
26
|
+
* @param {(builder: TableviewBuilder) => void} [buildFn] - The optional callback function to customize the tableview using the prepared builder.
|
|
27
|
+
*
|
|
28
|
+
* @returns A tableview instance with descriptor, data provider and actions.
|
|
29
|
+
*/
|
|
30
|
+
export declare function tableviewMultiModelWithGetAllParams<Model, Service, RequestParam extends GetAllParamsDefaultWoFiltersType, Sorts = ExtractGetAllParamsSortType<RequestParam>, Filters extends keyof any = ExtractGetAllParamsFilterType<RequestParam>, TableModel = Model, AddModel = Model, EditModel = Model, FieldsModel = TableviewDescriptorFieldsManageMultiType<Model, AddModel, EditModel>>(model: ModelDescriptor<Model>, service: ServiceClassType<Service>, opts: Required<TableviewWithGetAllParamsOpts<RequestParam, TableModel, AddModel, EditModel>>, buildFn?: (builder: TableviewInputBuilder<Model, Service, TableviewDescriptorInst<Model, Sorts, Filters, undefined, TableModel, AddModel, EditModel, FieldsModel>, TableviewDataProviderInst<Model, Service, Sorts, Filters, ServiceClassType<Service>, TableModel, AddModel, EditModel>, Sorts, Filters, TableModel, AddModel, EditModel, FieldsModel>) => void): import("@mediusinc/mng-commons/tableview/api").TableviewInput<Model, Service, Sorts, Filters, TableModel, AddModel, EditModel, TableviewDescriptorInst<Model, Sorts, Filters, undefined, TableModel, AddModel, EditModel, FieldsModel>, TableviewDataProviderInst<Model, Service, Sorts, Filters, ServiceClassType<Service>, TableModel, AddModel, EditModel>>;
|
|
31
|
+
/**
|
|
32
|
+
* Creates a tableview with a given model, service and sorts/filters from API service's provided getAll function.
|
|
33
|
+
*
|
|
34
|
+
* @param {ModelDescriptor<Model>} model - The model descriptor.
|
|
35
|
+
* @param {ServiceClassType<Service>} service - The class type of the service.
|
|
36
|
+
* @param {GetAllFn} getAllFn - The function from service for executing getAll requests. Filters and sorts will be taken from here.
|
|
37
|
+
* @param {(builder: TableviewBuilder) => void} [buildFn] - The optional callback function to customize the tableview using the prepared builder.
|
|
38
|
+
*
|
|
39
|
+
* @returns A tableview instance with descriptor, data provider and actions.
|
|
40
|
+
*/
|
|
41
|
+
export declare function tableviewWithApiServiceGetAll<Model, Service, GetAllFn extends ClassFunctionKeysWithAnyArgsAndReturnType<Service, Observable<GetAllHttpResponseType<TableModel>>>, TableModel = ExtractServiceGetAllDataType<Service, GetAllFn>, RequestParams extends GetAllParamsDefaultWoFiltersType = ApiServiceGetAllFilterType<Service, TableModel, GetAllFn>, Sorts = ExtractGetAllParamsSortType<RequestParams>, Filters extends keyof any = ExtractGetAllParamsFilterType<RequestParams>>(model: ModelDescriptor<Model>, service: ServiceClassType<Service>, getAllFn: GetAllFn, buildFn?: (builder: TableviewInputBuilder<Model, Service, TableviewDescriptorInst<Model, Sorts, Filters, undefined, TableModel, Model, Model, Model>, TableviewDataProviderInst<Model, Service, Sorts, Filters, ServiceClassType<Service>, TableModel>, Sorts, Filters, TableModel, Model, Model, Model>) => void): import("@mediusinc/mng-commons/tableview/api").TableviewInput<Model, Service, Sorts, Filters, TableModel, Model, Model, TableviewDescriptorInst<Model, Sorts, Filters, undefined, TableModel, Model, Model, Model>, TableviewDataProviderInst<Model, Service, Sorts, Filters, ServiceClassType<Service>, TableModel, Model, Model>>;
|
|
42
|
+
/**
|
|
43
|
+
* Creates a tableview with a given model, service and sorts/filters from API service's provided getAll function.
|
|
44
|
+
*
|
|
45
|
+
* @param {ModelDescriptor<Model>} model - The model descriptor.
|
|
46
|
+
* @param {ServiceClassType<Service>} service - The class type of the service.
|
|
47
|
+
* @param {GetAllFn} serviceGetAllFn - The function from service for executing getAll requests. Filters and sorts will be taken from here.
|
|
48
|
+
* @param {Required<TableviewDescriptorInstConstructorOpts<TableModel, AddModel, EditModel>>} - Required options: all remaining models for multi-tableview must be defined here.
|
|
49
|
+
* @param {(builder: TableviewBuilder) => void} [buildFn] - The optional callback function to customize the tableview using the prepared builder.
|
|
50
|
+
*
|
|
51
|
+
* @returns A tableview instance with descriptor, data provider and actions.
|
|
52
|
+
*/
|
|
53
|
+
export declare function tableviewMultiModelWithApiServiceGetAll<Model, Service, ServiceGetAllFn extends ClassFunctionKeysWithAnyArgsAndReturnType<Service, Observable<GetAllHttpResponseType<TableModel>>>, TableModel, AddModel, EditModel, ServiceGetAllRequestParams extends GetAllParamsDefaultWoFiltersType = ApiServiceGetAllFilterType<Service, TableModel, ServiceGetAllFn>, Sorts = ExtractGetAllParamsSortType<ServiceGetAllRequestParams>, Filters extends keyof any = ExtractGetAllParamsFilterType<ServiceGetAllRequestParams>, FieldsModel = TableviewDescriptorFieldsManageMultiType<Model, AddModel, EditModel>>(model: ModelDescriptor<Model>, service: ServiceClassType<Service>, serviceGetAllFn: ServiceGetAllFn, opts: Required<TableviewDescriptorInstConstructorOpts<TableModel, AddModel, EditModel>>, buildFn?: (builder: TableviewInputBuilder<Model, Service, TableviewDescriptorInst<Model, Sorts, Filters, undefined, TableModel, AddModel, EditModel, FieldsModel>, TableviewDataProviderInst<Model, Service, Sorts, Filters, ServiceClassType<Service>, TableModel, AddModel, EditModel>, Sorts, Filters, TableModel, AddModel, EditModel, FieldsModel>) => void): import("@mediusinc/mng-commons/tableview/api").TableviewInput<Model, Service, Sorts, Filters, TableModel, AddModel, EditModel, TableviewDescriptorInst<Model, Sorts, Filters, undefined, TableModel, AddModel, EditModel, FieldsModel>, TableviewDataProviderInst<Model, Service, Sorts, Filters, ServiceClassType<Service>, TableModel, AddModel, EditModel>>;
|
|
54
|
+
export {};
|
package/tableview/index.d.ts
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
|
-
export * from './tableview-get-all-params-create';
|
|
2
1
|
export * from './schema/columns-from-schema';
|
|
3
2
|
export * from './schema/enum-from-schema';
|
|
4
3
|
export * from './schema/fields-from-schema';
|
|
4
|
+
export * from './helpers/lookup-get-all-create';
|
|
5
|
+
export * from './helpers/tableview-get-all-params-create';
|
|
5
6
|
export * from './filter/generic-filters';
|
|
@@ -107,7 +107,7 @@ export declare class SchemaColumnsBuilder<Model, SchModel = Model> {
|
|
|
107
107
|
*
|
|
108
108
|
* @return {SchemaColumnsBuilder<Model, SchModel>} - The column schema builder instance.
|
|
109
109
|
*/
|
|
110
|
-
export declare function columnsFromSchema<Model, SchModel = Model>(descriptor: TableviewDescriptorInst<Model, any, any, any> | TableDescriptorInst<Model, any, any>, schema: SchemaModel<SchModel>, opts?: ColumnsFromSchemaOptsType<SchModel>): SchemaColumnsBuilder<Model, SchModel>;
|
|
110
|
+
export declare function columnsFromSchema<Model, SchModel = Model>(descriptor: TableviewDescriptorInst<any, any, any, any, Model, any, any, any> | TableDescriptorInst<Model, any, any>, schema: SchemaModel<SchModel>, opts?: ColumnsFromSchemaOptsType<SchModel>): SchemaColumnsBuilder<Model, SchModel>;
|
|
111
111
|
/**
|
|
112
112
|
* <em>Experimental:</em> Adds a column to table descriptor based on the given schema property and options.
|
|
113
113
|
*
|
|
@@ -118,5 +118,5 @@ export declare function columnsFromSchema<Model, SchModel = Model>(descriptor: T
|
|
|
118
118
|
*
|
|
119
119
|
* @return {ColumnDescriptor<NonNullable<Model[Property]>, Model, Model[Property]>} - The added column descriptor.
|
|
120
120
|
*/
|
|
121
|
-
export declare function addColumnFromSchema<Property extends keyof Model, Model>(descriptor: TableviewDescriptorInst<Model, any, any, any> | TableDescriptorInst<
|
|
121
|
+
export declare function addColumnFromSchema<Property extends keyof TableModel, Model, TableModel = Model>(descriptor: TableviewDescriptorInst<Model, any, any, any, TableModel, any, any, any> | TableDescriptorInst<TableModel, any, any>, property: Property, propertySchema: SchemaProperty, opts?: ColumnFromSchemaOptsType<TableModel[Property], TableModel, any>): ColumnDescriptor<NonNullable<TableModel[Property]>, TableModel, TableModel[Property]>;
|
|
122
122
|
export {};
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { SchemaEnum, SchemaModel, SchemaProperty } from '@mediusinc/mng-commons-data-api';
|
|
2
|
-
import { ArrayItemType
|
|
3
|
-
import { EnumDescriptor
|
|
2
|
+
import { ArrayItemType } from '@mediusinc/mng-commons/core';
|
|
3
|
+
import { EnumDescriptor } from '@mediusinc/mng-commons/model';
|
|
4
4
|
import { ITableDataProvider, TableDescriptorInst } from '@mediusinc/mng-commons/table/api';
|
|
5
|
-
import { AFieldDescriptor, EditorDescriptorInst, FieldInputDescriptor,
|
|
5
|
+
import { AFieldDescriptor, EditorDescriptorInst, FieldInputDescriptor, FieldLookupEnumDescriptor, FieldLookupProviderType, FieldManyEditorDescriptor, FieldManyToManyEditorDescriptor, TableviewDescriptorFieldsManageMultiType, TableviewDescriptorInst } from '@mediusinc/mng-commons/tableview/api';
|
|
6
6
|
type FieldInputType = 'number' | 'currency' | 'boolean' | 'string' | 'text' | 'textarea' | 'date' | 'date-time' | 'enum' | 'hidden';
|
|
7
7
|
type FromSchemaCommonOptsType<Model> = {
|
|
8
8
|
dateFormat?: string;
|
|
@@ -31,11 +31,11 @@ type FieldInputFromSchemaOptsType<Model = any, Enum = any> = FromSchemaCommonOpt
|
|
|
31
31
|
*
|
|
32
32
|
* @experimental
|
|
33
33
|
*/
|
|
34
|
-
export declare class SchemaFieldsBuilder<Model, Parent = unknown, SchModel = Model> {
|
|
34
|
+
export declare class SchemaFieldsBuilder<Model, Parent = unknown, AddModel = Model, EditModel = Model, FieldsModel = TableviewDescriptorFieldsManageMultiType<Model, AddModel, EditModel>, SchModel = Model> {
|
|
35
35
|
private readonly descriptor;
|
|
36
36
|
private readonly schema;
|
|
37
37
|
private opts?;
|
|
38
|
-
constructor(descriptor: TableviewDescriptorInst<Model, any, any, Parent> | EditorDescriptorInst<
|
|
38
|
+
constructor(descriptor: TableviewDescriptorInst<Model, any, any, Parent, any, AddModel, EditModel, FieldsModel> | EditorDescriptorInst<FieldsModel, Parent>, schema: SchemaModel<SchModel>, opts?: FieldsFromSchemaOptsType<SchModel> | undefined);
|
|
39
39
|
private mergeFieldsInputOpts;
|
|
40
40
|
private mergeFieldInputOpts;
|
|
41
41
|
/**
|
|
@@ -48,7 +48,7 @@ export declare class SchemaFieldsBuilder<Model, Parent = unknown, SchModel = Mod
|
|
|
48
48
|
*
|
|
49
49
|
* @return {FieldInputDescriptor<Model, NonNullable<Model[Property]>, Model[Property], Parent>} The added field descriptor.
|
|
50
50
|
*/
|
|
51
|
-
add<Property extends Extract<keyof
|
|
51
|
+
add<Property extends Extract<keyof FieldsModel, keyof SchModel>>(property: Property, opts?: FieldInputFromSchemaOptsType<SchModel>): FieldInputDescriptor<FieldsModel, NonNullable<FieldsModel[Property]>, FieldsModel[Property], Parent>;
|
|
52
52
|
/**
|
|
53
53
|
* <em>Experimental:</em> Adds all input fields for the non-array properties via {addFieldInputFromSchema}.
|
|
54
54
|
*
|
|
@@ -79,7 +79,7 @@ export declare class SchemaFieldsBuilder<Model, Parent = unknown, SchModel = Mod
|
|
|
79
79
|
*
|
|
80
80
|
* @return {this} - The current instance of the builder.
|
|
81
81
|
*/
|
|
82
|
-
withAdd<
|
|
82
|
+
withAdd<Property extends Extract<keyof FieldsModel, keyof SchModel>>(...properties: Property[]): this;
|
|
83
83
|
private addFields;
|
|
84
84
|
/**
|
|
85
85
|
* <em>Experimental:</em> Adds a single input field via {addFieldInputFromSchema} where property schema is manually provided.
|
|
@@ -92,7 +92,7 @@ export declare class SchemaFieldsBuilder<Model, Parent = unknown, SchModel = Mod
|
|
|
92
92
|
*
|
|
93
93
|
* @return {FieldInputDescriptor<Model, NonNullable<Model[Property]>, Model[Property], Parent>} The added field descriptor.
|
|
94
94
|
*/
|
|
95
|
-
addFromSchema<Property extends keyof
|
|
95
|
+
addFromSchema<Property extends keyof FieldsModel>(property: Property, schemaProperty: SchemaProperty, opts?: FieldInputFromSchemaOptsType<FieldsModel>): FieldInputDescriptor<FieldsModel, NonNullable<FieldsModel[Property]>, FieldsModel[Property], Parent>;
|
|
96
96
|
/**
|
|
97
97
|
* <em>Experimental:</em> Adds an enum lookup field via {addFieldEnumLookupFromSchema}.
|
|
98
98
|
*
|
|
@@ -105,7 +105,7 @@ export declare class SchemaFieldsBuilder<Model, Parent = unknown, SchModel = Mod
|
|
|
105
105
|
*
|
|
106
106
|
* @throws {CommonsInternalError} - If no enum metadata is found for the property either from parameter or from builder's opts.
|
|
107
107
|
*/
|
|
108
|
-
addEnum<Property extends Extract<keyof
|
|
108
|
+
addEnum<Property extends Extract<keyof FieldsModel, keyof SchModel>, Enum>(property: Property, enumOpt?: SchemaEnum<Enum> | EnumDescriptor<Enum>): FieldLookupEnumDescriptor<Enum, FieldsModel, Parent>;
|
|
109
109
|
/**
|
|
110
110
|
* <em>Experimental:</em> Adds an enum lookup field via {addFieldEnumLookupFromSchema} where property schema is manually provided.
|
|
111
111
|
*
|
|
@@ -119,7 +119,7 @@ export declare class SchemaFieldsBuilder<Model, Parent = unknown, SchModel = Mod
|
|
|
119
119
|
*
|
|
120
120
|
* @throws {CommonsInternalError} - If no enum metadata is found for the property either from parameter or from builder's opts.
|
|
121
121
|
*/
|
|
122
|
-
addEnumFromSchema<Property extends keyof
|
|
122
|
+
addEnumFromSchema<Property extends keyof FieldsModel, Enum>(property: Property, enumOpt: SchemaEnum<Enum> | EnumDescriptor<Enum> | undefined, schemaProperty: SchemaProperty): FieldLookupEnumDescriptor<Enum, FieldsModel, Parent>;
|
|
123
123
|
/**
|
|
124
124
|
* <em>Experimental:</em> Adds a lookup field.
|
|
125
125
|
* {EditorDescriptorInt.addFieldLookup} is used to create field and ${setFieldBasicOptionsFromSchema} to add basic field's options from schema.
|
|
@@ -127,10 +127,11 @@ export declare class SchemaFieldsBuilder<Model, Parent = unknown, SchModel = Mod
|
|
|
127
127
|
* @experimental
|
|
128
128
|
*
|
|
129
129
|
* @param {Property} property - The property to create the lookup field for.
|
|
130
|
+
* @param {FieldLookupProviderType<LookupModel, Service>} provider - Data provider for the lookup field.
|
|
130
131
|
*
|
|
131
132
|
* @return The created lookup field.
|
|
132
133
|
*/
|
|
133
|
-
addLookup<Property extends Extract<keyof
|
|
134
|
+
addLookup<Property extends Extract<keyof FieldsModel, keyof SchModel>, Service = undefined, LookupModel extends NonNullable<FieldsModel[Property]> = NonNullable<FieldsModel[Property]>>(property: Property, provider?: FieldLookupProviderType<LookupModel, Service>): import("@mediusinc/mng-commons/tableview/api").FieldLookupDescriptor<LookupModel, FieldsModel, Service, FieldsModel[Property], Parent, keyof LookupModel, keyof LookupModel>;
|
|
134
135
|
/**
|
|
135
136
|
* <em>Experimental:</em> Adds a lookup field where property schema is manually provided.
|
|
136
137
|
* {EditorDescriptorInt.addFieldLookup} is used to create field and ${setFieldBasicOptionsFromSchema} to add basic field's options from schema.
|
|
@@ -138,92 +139,12 @@ export declare class SchemaFieldsBuilder<Model, Parent = unknown, SchModel = Mod
|
|
|
138
139
|
* @experimental
|
|
139
140
|
*
|
|
140
141
|
* @param {Property} property - The property to create the lookup field for.
|
|
142
|
+
* @param {FieldLookupProviderType<LookupModel, Service> | undefined} provider - Data provider for the lookup field.
|
|
141
143
|
* @param {SchemaProperty} schemaProperty - Manually provided schema property.
|
|
142
144
|
*
|
|
143
145
|
* @return The created lookup field.
|
|
144
146
|
*/
|
|
145
|
-
addLookupFromSchema<Property extends keyof
|
|
146
|
-
/**
|
|
147
|
-
* <em>Experimental:</em> Adds a lookup field.
|
|
148
|
-
* {EditorDescriptorInt.addFieldLookupWithOptionsValueProperty} is used to create field and ${setFieldBasicOptionsFromSchema} to add basic field's options from schema.
|
|
149
|
-
*
|
|
150
|
-
* @experimental
|
|
151
|
-
*
|
|
152
|
-
* @param {Property} property - The property to create the lookup field for.
|
|
153
|
-
* @param {TypeDescriptor<LookupModel>} type - Type of lookup model.
|
|
154
|
-
* @param {LookupValueProperty} lookupOptionsValueProperty - Value property from lookup model.
|
|
155
|
-
*
|
|
156
|
-
* @return The created lookup field.
|
|
157
|
-
*/
|
|
158
|
-
addLookupWithOptionsValueProperty<Property extends Extract<keyof Model, keyof SchModel>, LookupModel, LookupValueProperty extends KeyofAndOfType<LookupModel, Model[Property]>>(property: Property, type: TypeDescriptor<LookupModel>, lookupOptionsValueProperty: LookupValueProperty): FieldLookupDescriptor<LookupModel, Model, undefined, Model[Property], Parent, keyof LookupModel, keyof LookupModel>;
|
|
159
|
-
/**
|
|
160
|
-
* <em>Experimental:</em> Adds a lookup field where property schema is manually provided.
|
|
161
|
-
* {EditorDescriptorInt.addFieldLookupWithOptionsValueProperty} is used to create field and ${setFieldBasicOptionsFromSchema} to add basic field's options from schema.
|
|
162
|
-
*
|
|
163
|
-
* @experimental
|
|
164
|
-
*
|
|
165
|
-
* @param {Property} property - The property to create the lookup field for.
|
|
166
|
-
* @param {TypeDescriptor<LookupModel>} type - Type of lookup model.
|
|
167
|
-
* @param {LookupValueProperty} lookupOptionsValueProperty - Value property from lookup model.
|
|
168
|
-
* @param {SchemaProperty} schemaProperty - Manually provided schema property.
|
|
169
|
-
*
|
|
170
|
-
* @return The created lookup field.
|
|
171
|
-
*/
|
|
172
|
-
addLookupWithOptionsValuePropertyFromSchema<Property extends keyof Model, LookupModel, LookupValueProperty extends KeyofAndOfType<LookupModel, Model[Property]>>(property: Property, type: TypeDescriptor<LookupModel>, lookupOptionsValueProperty: LookupValueProperty, schemaProperty: SchemaProperty): FieldLookupDescriptor<LookupModel, Model, undefined, Model[Property], Parent, keyof LookupModel, keyof LookupModel>;
|
|
173
|
-
/**
|
|
174
|
-
* <em>Experimental:</em> Adds a lookup field.
|
|
175
|
-
* {EditorDescriptorInt.addFieldLookupWithProvider} is used to create field and ${setFieldBasicOptionsFromSchema} to add basic field's options from schema.
|
|
176
|
-
*
|
|
177
|
-
* @experimental
|
|
178
|
-
*
|
|
179
|
-
* @param {Property} property - The property to create the lookup field for.
|
|
180
|
-
* @param {FieldLookupProviderType<LookupModel, Service>} provider - Lookup provider.
|
|
181
|
-
*
|
|
182
|
-
* @return The created lookup field.
|
|
183
|
-
*/
|
|
184
|
-
addLookupWithProvider<Property extends Extract<keyof Model, keyof SchModel>, Service, LookupModel = NonNullable<Model[Property]>>(property: Property, provider: FieldLookupProviderType<LookupModel, Service>): FieldLookupDescriptor<LookupModel, Model, Service, Model[Property], Parent, keyof LookupModel, keyof LookupModel>;
|
|
185
|
-
/**
|
|
186
|
-
* <em>Experimental:</em> Adds a lookup field where property schema is manually provided.
|
|
187
|
-
* {EditorDescriptorInt.addFieldLookupWithProvider} is used to create field and ${setFieldBasicOptionsFromSchema} to add basic field's options from schema.
|
|
188
|
-
*
|
|
189
|
-
* @experimental
|
|
190
|
-
*
|
|
191
|
-
* @param {Property} property - The property to create the lookup field for.
|
|
192
|
-
* @param {FieldLookupProviderType<LookupModel, Service>} provider - Lookup provider.
|
|
193
|
-
* @param {SchemaProperty} schemaProperty - Manually provided schema property.
|
|
194
|
-
*
|
|
195
|
-
* @return The created lookup field.
|
|
196
|
-
*/
|
|
197
|
-
addLookupWithProviderFromSchema<Property extends keyof Model, Service, LookupModel = NonNullable<Model[Property]>>(property: Property, provider: FieldLookupProviderType<LookupModel, Service>, schemaProperty: SchemaProperty): FieldLookupDescriptor<LookupModel, Model, Service, Model[Property], Parent, keyof LookupModel, keyof LookupModel>;
|
|
198
|
-
/**
|
|
199
|
-
* <em>Experimental:</em> Adds a lookup field.
|
|
200
|
-
* {EditorDescriptorInt.addFieldLookupWithProviderAndOptionsValueProperty} is used to create field and ${setFieldBasicOptionsFromSchema} to add basic field's options from schema.
|
|
201
|
-
*
|
|
202
|
-
* @experimental
|
|
203
|
-
*
|
|
204
|
-
* @param {Property} property - The property to create the lookup field for.
|
|
205
|
-
* @param {FieldLookupProviderType<LookupModel, Service>} provider - Lookup provider.
|
|
206
|
-
* @param {TypeDescriptor<LookupModel>} type - Type of lookup model.
|
|
207
|
-
* @param {LookupValueProperty} lookupOptionsValueProperty - Value property from lookup model.
|
|
208
|
-
*
|
|
209
|
-
* @return The created lookup field.
|
|
210
|
-
*/
|
|
211
|
-
addLookupWithProviderAndOptionsValueProperty<Property extends Extract<keyof Model, keyof SchModel>, Service, LookupModel, LookupValueProperty extends KeyofAndOfType<LookupModel, Model[Property]>, FieldValue = Model[Property]>(property: Property, provider: FieldLookupProviderType<LookupModel, Service>, type: TypeDescriptor<LookupModel>, lookupOptionsValueProperty: LookupValueProperty): FieldLookupDescriptor<LookupModel, Model, Service, FieldValue, Parent>;
|
|
212
|
-
/**
|
|
213
|
-
* <em>Experimental:</em> Adds a lookup field where property schema is manually provided.
|
|
214
|
-
* {EditorDescriptorInt.addFieldLookupWithProviderAndOptionsValueProperty} is used to create field and ${setFieldBasicOptionsFromSchema} to add basic field's options from schema.
|
|
215
|
-
*
|
|
216
|
-
* @experimental
|
|
217
|
-
*
|
|
218
|
-
* @param {Property} property - The property to create the lookup field for.
|
|
219
|
-
* @param {FieldLookupProviderType<LookupModel, Service>} provider - Lookup provider.
|
|
220
|
-
* @param {TypeDescriptor<LookupModel>} type - Type of lookup model.
|
|
221
|
-
* @param {LookupValueProperty} lookupOptionsValueProperty - Value property from lookup model.
|
|
222
|
-
* @param {SchemaProperty} schemaProperty - Manually provided schema property.
|
|
223
|
-
*
|
|
224
|
-
* @return The created lookup field.
|
|
225
|
-
*/
|
|
226
|
-
addLookupWithProviderAndOptionsValuePropertyFromSchema<Property extends keyof Model, Service, LookupModel, LookupValueProperty extends KeyofAndOfType<LookupModel, Model[Property]>, FieldValue = Model[Property]>(property: Property, provider: FieldLookupProviderType<LookupModel, Service>, type: TypeDescriptor<LookupModel>, lookupOptionsValueProperty: LookupValueProperty, schemaProperty: SchemaProperty): FieldLookupDescriptor<LookupModel, Model, Service, FieldValue, Parent>;
|
|
147
|
+
addLookupFromSchema<Property extends keyof FieldsModel, Service = undefined, LookupModel extends NonNullable<FieldsModel[Property]> = NonNullable<FieldsModel[Property]>>(property: Property, provider: FieldLookupProviderType<LookupModel, Service> | undefined, schemaProperty: SchemaProperty): import("@mediusinc/mng-commons/tableview/api").FieldLookupDescriptor<LookupModel, FieldsModel, Service, FieldsModel[Property], Parent, keyof LookupModel, keyof LookupModel>;
|
|
227
148
|
/**
|
|
228
149
|
* <em>Experimental:</em> Adds a one-to-many editor field.
|
|
229
150
|
* {EditorDescriptorInt.addFieldManyEditor} is used to create field and ${setFieldBasicOptionsFromSchema} to add basic field's options from schema.
|
|
@@ -231,11 +152,11 @@ export declare class SchemaFieldsBuilder<Model, Parent = unknown, SchModel = Mod
|
|
|
231
152
|
* @experimental
|
|
232
153
|
*
|
|
233
154
|
* @param {Property} property - The property to create the many editor field for.
|
|
234
|
-
* @param {TableviewDescriptorInst<FieldModel, any, any,
|
|
155
|
+
* @param {TableviewDescriptorInst<FieldModel, any, any, FieldsModel>} tableviewDescriptor - Tableview descriptor.
|
|
235
156
|
*
|
|
236
157
|
* @return The created one-to-many editor field.
|
|
237
158
|
*/
|
|
238
|
-
addManyEditor<Property extends Extract<keyof
|
|
159
|
+
addManyEditor<Property extends Extract<keyof FieldsModel, keyof SchModel>, FieldModel = ArrayItemType<FieldsModel[Property]>, FieldValue = FieldsModel[Property]>(property: Property, tableviewDescriptor: TableviewDescriptorInst<FieldModel, any, any, FieldsModel, FieldModel, FieldModel, FieldModel, FieldModel>): FieldManyEditorDescriptor<FieldModel, FieldsModel, FieldValue, Parent>;
|
|
239
160
|
/**
|
|
240
161
|
* <em>Experimental:</em> Adds an one-to-many editor field where property schema is manually provided.
|
|
241
162
|
* {EditorDescriptorInt.addFieldManyEditor} is used to create field and ${setFieldBasicOptionsFromSchema} to add basic field's options from schema.
|
|
@@ -243,12 +164,12 @@ export declare class SchemaFieldsBuilder<Model, Parent = unknown, SchModel = Mod
|
|
|
243
164
|
* @experimental
|
|
244
165
|
*
|
|
245
166
|
* @param {Property} property - The property to create the many editor field for.
|
|
246
|
-
* @param {
|
|
167
|
+
* @param {TableviewDescriptorType<FieldModel, any, any, FieldsModel>} tableviewDescriptor - Tableview descriptor.
|
|
247
168
|
* @param {SchemaProperty} schemaProperty - Manually provided schema property.
|
|
248
169
|
*
|
|
249
170
|
* @return The created one-to-many editor field.
|
|
250
171
|
*/
|
|
251
|
-
addManyEditorFromSchema<Property extends keyof
|
|
172
|
+
addManyEditorFromSchema<Property extends keyof FieldsModel, FieldModel = ArrayItemType<FieldsModel[Property]>, FieldValue = FieldsModel[Property]>(property: Property, tableviewDescriptor: TableviewDescriptorInst<FieldModel, any, any, FieldsModel, FieldModel, FieldModel, FieldModel, FieldModel>, schemaProperty: SchemaProperty): FieldManyEditorDescriptor<FieldModel, FieldsModel, FieldValue, Parent>;
|
|
252
173
|
/**
|
|
253
174
|
* <em>Experimental:</em> Adds a many-to-many editor field.
|
|
254
175
|
* {EditorDescriptorInt.addFieldManyToManyEditor} is used to create field and ${setFieldBasicOptionsFromSchema} to add basic field's options from schema.
|
|
@@ -262,7 +183,7 @@ export declare class SchemaFieldsBuilder<Model, Parent = unknown, SchModel = Mod
|
|
|
262
183
|
*
|
|
263
184
|
* @return The created many-to-many editor field.
|
|
264
185
|
*/
|
|
265
|
-
addManyToManyEditor<Property extends Extract<keyof
|
|
186
|
+
addManyToManyEditor<Property extends Extract<keyof FieldsModel, keyof SchModel>, ServiceType, FieldModel = ArrayItemType<FieldsModel[Property]>, FieldValue = FieldsModel[Property]>(property: Property, mainTableDescriptor: TableDescriptorInst<FieldModel>, lookupTableDescriptor: TableDescriptorInst<FieldModel>, lookupDataProvider: ITableDataProvider<FieldModel, ServiceType>): FieldManyToManyEditorDescriptor<FieldModel, FieldsModel, ServiceType, FieldValue, Parent>;
|
|
266
187
|
/**
|
|
267
188
|
* <em>Experimental:</em> Adds a many-to-many editor field where property schema is manually provided.
|
|
268
189
|
* {EditorDescriptorInt.addFieldManyToManyEditor} is used to create field and ${setFieldBasicOptionsFromSchema} to add basic field's options from schema.
|
|
@@ -277,20 +198,20 @@ export declare class SchemaFieldsBuilder<Model, Parent = unknown, SchModel = Mod
|
|
|
277
198
|
*
|
|
278
199
|
* @return The created many-to-many editor field.
|
|
279
200
|
*/
|
|
280
|
-
addManyToManyEditorFromSchema<Property extends keyof
|
|
201
|
+
addManyToManyEditorFromSchema<Property extends keyof FieldsModel, ServiceType, FieldModel = ArrayItemType<FieldsModel[Property]>, FieldValue = FieldsModel[Property]>(property: Property, mainTableDescriptor: TableDescriptorInst<FieldModel>, lookupTableDescriptor: TableDescriptorInst<FieldModel>, lookupDataProvider: ITableDataProvider<FieldModel, ServiceType>, schemaProperty: SchemaProperty): FieldManyToManyEditorDescriptor<FieldModel, FieldsModel, ServiceType, FieldValue, Parent>;
|
|
281
202
|
}
|
|
282
203
|
/**
|
|
283
204
|
* <em>Experimental:</em> Creates builder for adding fields to descriptor based on provided model schema.
|
|
284
205
|
*
|
|
285
206
|
* @experimental
|
|
286
207
|
*
|
|
287
|
-
* @param {TableviewDescriptorInst<Model, any, any, Parent> | EditorDescriptorInst<Model, Parent>} descriptor - Descriptor to add fields to.
|
|
208
|
+
* @param {TableviewDescriptorInst<Model, any, any, Parent, any, AddModel, EditModel, FieldsModel> | EditorDescriptorInst<Model, Parent>} descriptor - Descriptor to add fields to.
|
|
288
209
|
* @param {SchemaModel<SchModel>} schema - The schema with metadata about properties for fields.
|
|
289
210
|
* @param {FieldsFromSchemaOptsType<SchModel>} [opts] - Additional options.
|
|
290
211
|
*
|
|
291
|
-
* @return {SchemaFieldsBuilder<Model, Parent, SchModel>} - The SchemaFieldsBuilder object containing the extracted fields.
|
|
212
|
+
* @return {SchemaFieldsBuilder<Model, Parent, AddModel, EditModel , FieldsModel, SchModel>} - The SchemaFieldsBuilder object containing the extracted fields.
|
|
292
213
|
*/
|
|
293
|
-
export declare function fieldsFromSchema<Model, Parent =
|
|
214
|
+
export declare function fieldsFromSchema<Model, Parent = undefined, AddModel = Model, EditModel = Model, FieldsModel = TableviewDescriptorFieldsManageMultiType<Model, AddModel, EditModel>, SchModel = Model>(descriptor: TableviewDescriptorInst<Model, any, any, Parent, any, AddModel, EditModel, FieldsModel> | EditorDescriptorInst<FieldsModel, Parent>, schema: SchemaModel<SchModel>, opts?: FieldsFromSchemaOptsType<SchModel>): SchemaFieldsBuilder<Model, Parent, AddModel, EditModel, FieldsModel, SchModel>;
|
|
294
215
|
/**
|
|
295
216
|
* <em>Experimental:</em> Adds a field input to editor descriptor based on the given schema property and options.
|
|
296
217
|
*
|
|
@@ -303,7 +224,7 @@ export declare function fieldsFromSchema<Model, Parent = unknown, SchModel = Mod
|
|
|
303
224
|
*
|
|
304
225
|
* @return {FieldInputDescriptor<Model, NonNullable<Model[Property]>, Model[Property], Parent>} - The generated field input descriptor.
|
|
305
226
|
*/
|
|
306
|
-
export declare function addFieldInputFromSchema<Property extends keyof
|
|
227
|
+
export declare function addFieldInputFromSchema<Property extends keyof FieldsModel, Model, Parent = unknown, AddModel = Model, EditModel = Model, FieldsModel = TableviewDescriptorFieldsManageMultiType<Model, AddModel, EditModel>>(descriptor: TableviewDescriptorInst<Model, any, any, Parent, any, AddModel, EditModel, FieldsModel> | EditorDescriptorInst<FieldsModel, Parent>, property: Property, propertySchema: SchemaProperty, opts?: FieldInputFromSchemaOptsType<FieldsModel>): FieldInputDescriptor<FieldsModel, NonNullable<FieldsModel[Property]>, FieldsModel[Property], Parent>;
|
|
307
228
|
/**
|
|
308
229
|
* <em>Experimental:</em> Adds a field enum lookup to editor descriptor based on the given schema property and options.
|
|
309
230
|
*
|
|
@@ -316,7 +237,7 @@ export declare function addFieldInputFromSchema<Property extends keyof Model, Mo
|
|
|
316
237
|
*
|
|
317
238
|
* @returns {FieldLookupEnum<Enum>} - The field with enumeration values.
|
|
318
239
|
*/
|
|
319
|
-
export declare function addFieldEnumLookupFromSchema<Model, Parent = unknown, Enum = any>(descriptor: TableviewDescriptorInst<Model, any, any, Parent> | EditorDescriptorInst<
|
|
240
|
+
export declare function addFieldEnumLookupFromSchema<Model, Parent = unknown, AddModel = Model, EditModel = Model, FieldsModel = TableviewDescriptorFieldsManageMultiType<Model, AddModel, EditModel>, Enum = any>(descriptor: TableviewDescriptorInst<Model, any, any, Parent, any, AddModel, EditModel, FieldsModel> | EditorDescriptorInst<FieldsModel, Parent>, property: keyof FieldsModel, enumOpt: SchemaEnum<Enum> | EnumDescriptor<Enum>, propertySchema: SchemaProperty): FieldLookupEnumDescriptor<Enum, FieldsModel, Parent>;
|
|
320
241
|
/**
|
|
321
242
|
* <em>Experimental:</em> Sets basic options for a field based on a given property schema.
|
|
322
243
|
*
|
package/version-info.json
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@mediusinc/mng-commons-data-api",
|
|
3
|
-
"version": "
|
|
4
|
-
"tag": "v5.5.0",
|
|
5
|
-
"distance":
|
|
6
|
-
"hash": "
|
|
3
|
+
"version": "6.0.0-rc.2",
|
|
4
|
+
"tag": "v5.5.0-rc.4",
|
|
5
|
+
"distance": 29,
|
|
6
|
+
"hash": "312e699d",
|
|
7
7
|
"dirty": true,
|
|
8
|
-
"semver": "5.5.0+
|
|
8
|
+
"semver": "5.5.0-rc.4+29.g312e699d.dirty",
|
|
9
9
|
"buildTimestamp": null,
|
|
10
|
-
"raw": "v5.5.0-
|
|
10
|
+
"raw": "v5.5.0-rc.4-29-312e699d-dirty"
|
|
11
11
|
}
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
export {};
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXh0cmFjdC1nZXQtYWxsLXBhcmFtcy50eXBlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2xpYi90eXBlcy9leHRyYWN0LWdldC1hbGwtcGFyYW1zLnR5cGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7T2JzZXJ2YWJsZX0gZnJvbSAncnhqcyc7XG5cbmltcG9ydCB7Q2xhc3NGdW5jdGlvbktleXNXaXRoQW55QXJnc0FuZFJldHVyblR5cGV9IGZyb20gJ0BtZWRpdXNpbmMvbW5nLWNvbW1vbnMvY29yZSc7XG5cbmltcG9ydCB7R2V0QWxsUGFyYW1zRGVmYXVsdFdvRmlsdGVyc1R5cGUsIEdldEFsbFBhcmFtc1NvcnRUeXBlfSBmcm9tICcuLi9tb2RlbHMvcmVxdWVzdC1wYXJhbXMubW9kZWwnO1xuXG4vKipcbiAqIFJlcHJlc2VudHMgdGhlIHR5cGUgZGVmaW5pdGlvbiBmb3IgdGhlIGBHZXRBbGxQYXJhbXNEZWZhdWx0V29GaWx0ZXJzVHlwZWAgY2xhc3MgLSBleGNsdWRlcyBvZmZzZXQsIGxpbWl0LCBzZWFyY2ggYW5kIHNvcnQgcHJvcGVydGllcy5cbiAqIEFsbCBvdGhlciBwcm9wZXJ0aWVzIGFyZSBleHBlY3RlZCB0byBiZSBmaWx0ZXJzLlxuICpcbiAqIEB0eXBlcGFyYW0gUmVxdWVzdCAtIFRoZSB0eXBlIHBhcmFtZXRlciByZXByZXNlbnRpbmcgdGhlIGV4dGVuZGVkIEdldEFsbFBhcmFtc0RlZmF1bHRXb0ZpbHRlcnNUeXBlIG9iamVjdC5cbiAqL1xuZXhwb3J0IHR5cGUgRXh0cmFjdEdldEFsbFBhcmFtc0ZpbHRlclR5cGU8UmVxdWVzdCBleHRlbmRzIEdldEFsbFBhcmFtc0RlZmF1bHRXb0ZpbHRlcnNUeXBlPiA9IGtleW9mIE9taXQ8UmVxdWVzdCwgJ29mZnNldCcgfCAnbGltaXQnIHwgJ2dsb2JhbEZpbHRlcicgfCAnc29ydCc+O1xuXG4vKipcbiAqIFJlcHJlc2VudHMgdGhlIHR5cGUgZGVmaW5pdGlvbiBmb3IgdGhlIGBHZXRBbGxQYXJhbXNEZWZhdWx0V29GaWx0ZXJzVHlwZWAgY2xhc3MgLSBleHRyYWN0cyBhbGxvd2VkIHNvcnQgcHJvcGVydGllcyAodXN1YWxseSBhbiBlbnVtKSBvbiBwcm9wZXJ0eSBrZXkgd2l0aGluIGFycmF5IHR5cGUuXG4gKlxuICogQHR5cGVwYXJhbSBSZXF1ZXN0IC0gVGhlIHR5cGUgcGFyYW1ldGVyIHJlcHJlc2VudGluZyB0aGUgZXh0ZW5kZWQgR2V0QWxsUGFyYW1zRGVmYXVsdFdvRmlsdGVyc1R5cGUgb2JqZWN0LlxuICovXG5leHBvcnQgdHlwZSBFeHRyYWN0R2V0QWxsUGFyYW1zU29ydFR5cGU8UmVxdWVzdCBleHRlbmRzIEdldEFsbFBhcmFtc0RlZmF1bHRXb0ZpbHRlcnNUeXBlPEdldEFsbFBhcmFtc1NvcnRUeXBlPGFueSwgYW55PltdIHwgc3RyaW5nLCBhbnk+PiA9XG4gICAgTm9uTnVsbGFibGU8UmVxdWVzdFsnc29ydCddPiBleHRlbmRzIEFycmF5PGluZmVyIFU+IHwgc3RyaW5nID8gKCdwcm9wZXJ0eScgZXh0ZW5kcyBrZXlvZiBVID8gTm9uTnVsbGFibGU8VVsncHJvcGVydHknXT4gOiBuZXZlcikgOiBuZXZlcjtcblxuZXhwb3J0IHR5cGUgQXBpU2VydmljZUdldEFsbEZpbHRlclR5cGU8XG4gICAgU2VydmljZSxcbiAgICBGbiBleHRlbmRzIENsYXNzRnVuY3Rpb25LZXlzV2l0aEFueUFyZ3NBbmRSZXR1cm5UeXBlPFNlcnZpY2UsIE9ic2VydmFibGU8e2RhdGE/OiBhbnlbXTsgdG90YWxDb3VudD86IG51bWJlcn0+PlxuPiA9IFNlcnZpY2VbRm5dIGV4dGVuZHMgKC4uLmFyZ3M6IGFueVtdKSA9PiBhbnkgPyBOb25OdWxsYWJsZTxQYXJhbWV0ZXJzPFNlcnZpY2VbRm5dPlswXT4gOiBuZXZlcjtcbiJdfQ==
|
|
@@ -1,35 +0,0 @@
|
|
|
1
|
-
import { Injector, inject } from '@angular/core';
|
|
2
|
-
import { apiServiceGetAll } from '@mediusinc/mng-commons-data-api';
|
|
3
|
-
import { TableviewDataProviderInst, TableviewDescriptorInst, TableviewInputBuilder } from '@mediusinc/mng-commons/tableview/api';
|
|
4
|
-
/**
|
|
5
|
-
* Creates a tableview with a given model, service and sorts/filters extracted from Data API Get All request params, service, and optional build function.
|
|
6
|
-
*
|
|
7
|
-
* @param {ModelDescriptor<Model>} model - The model descriptor.
|
|
8
|
-
* @param {ServiceClassType<Service>} service - The class type of the service.
|
|
9
|
-
* @param {TypeDescriptor<RequestParam>} params - The request param of get all request. Filters and sorts will be taken from here.
|
|
10
|
-
* @param {(builder: TableviewBuilder) => void} [buildFn] - The optional callback function to customize the tableview using the prepared builder.
|
|
11
|
-
*
|
|
12
|
-
* @returns A tableview instance with descriptor, data provider and actions.
|
|
13
|
-
*/
|
|
14
|
-
export function tableviewWithGetAllParams(model, service, params, buildFn) {
|
|
15
|
-
const builder = new TableviewInputBuilder(new TableviewDescriptorInst(model), new TableviewDataProviderInst(undefined, service), inject(Injector));
|
|
16
|
-
buildFn?.(builder);
|
|
17
|
-
return builder.build();
|
|
18
|
-
}
|
|
19
|
-
/**
|
|
20
|
-
* Creates a tableview with a given model, service and sorts/filters from API service's provided getAll function.
|
|
21
|
-
*
|
|
22
|
-
* @param {ModelDescriptor<Model>} model - The model descriptor.
|
|
23
|
-
* @param {ServiceClassType<Service>} service - The class type of the service.
|
|
24
|
-
* @param {GetAllFn} getAllFn - The function from service for executing getAll requests. Filters and sorts will be taken from here.
|
|
25
|
-
* @param {(builder: TableviewBuilder) => void} [buildFn] - The optional callback function to customize the tableview using the prepared builder.
|
|
26
|
-
*
|
|
27
|
-
* @returns A tableview instance with descriptor, data provider and actions.
|
|
28
|
-
*/
|
|
29
|
-
export function tableviewWithApiServiceGetAll(model, service, getAllFn, buildFn) {
|
|
30
|
-
const builder = new TableviewInputBuilder(new TableviewDescriptorInst(model), new TableviewDataProviderInst(undefined, service), inject(Injector));
|
|
31
|
-
builder.withAdjustDataProvider(dataProvider => dataProvider.withGetAll((params, service) => apiServiceGetAll(service, getAllFn, params)));
|
|
32
|
-
buildFn?.(builder);
|
|
33
|
-
return builder.build();
|
|
34
|
-
}
|
|
35
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGV2aWV3LWdldC1hbGwtcGFyYW1zLWNyZWF0ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3RhYmxldmlldy9zcmMvdGFibGV2aWV3LWdldC1hbGwtcGFyYW1zLWNyZWF0ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsUUFBUSxFQUFFLE1BQU0sRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUkvQyxPQUFPLEVBS0gsZ0JBQWdCLEVBQ25CLE1BQU0saUNBQWlDLENBQUM7QUFHekMsT0FBTyxFQUFDLHlCQUF5QixFQUFFLHVCQUF1QixFQUFFLHFCQUFxQixFQUFDLE1BQU0sc0NBQXNDLENBQUM7QUFFL0g7Ozs7Ozs7OztHQVNHO0FBQ0gsTUFBTSxVQUFVLHlCQUF5QixDQU9yQyxLQUE2QixFQUM3QixPQUFrQyxFQUNsQyxNQUFvQyxFQUNwQyxPQUVTO0lBRVQsTUFBTSxPQUFPLEdBQUcsSUFBSSxxQkFBcUIsQ0FPdkMsSUFBSSx1QkFBdUIsQ0FBd0IsS0FBSyxDQUFDLEVBQUUsSUFBSSx5QkFBeUIsQ0FBaUMsU0FBUyxFQUFFLE9BQU8sQ0FBQyxFQUFFLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDO0lBQ2xLLE9BQU8sRUFBRSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQ25CLE9BQU8sT0FBTyxDQUFDLEtBQUssRUFBRSxDQUFDO0FBQzNCLENBQUM7QUFFRDs7Ozs7Ozs7O0dBU0c7QUFDSCxNQUFNLFVBQVUsNkJBQTZCLENBUXpDLEtBQTZCLEVBQzdCLE9BQWtDLEVBQ2xDLFFBQWtCLEVBQ2xCLE9BRVM7SUFFVCxNQUFNLE9BQU8sR0FBRyxJQUFJLHFCQUFxQixDQU92QyxJQUFJLHVCQUF1QixDQUF3QixLQUFLLENBQUMsRUFBRSxJQUFJLHlCQUF5QixDQUFpQyxTQUFTLEVBQUUsT0FBTyxDQUFDLEVBQUUsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUM7SUFDbEssT0FBTyxDQUFDLHNCQUFzQixDQUFDLFlBQVksQ0FBQyxFQUFFLENBQUMsWUFBWSxDQUFDLFVBQVUsQ0FBQyxDQUFDLE1BQU0sRUFBRSxPQUFPLEVBQUUsRUFBRSxDQUFDLGdCQUFnQixDQUFDLE9BQU8sRUFBRSxRQUFlLEVBQUUsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ2pKLE9BQU8sRUFBRSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQ25CLE9BQU8sT0FBTyxDQUFDLEtBQUssRUFBRSxDQUFDO0FBQzNCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0luamVjdG9yLCBpbmplY3R9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQge09ic2VydmFibGV9IGZyb20gJ3J4anMnO1xuXG5pbXBvcnQge1xuICAgIEFwaVNlcnZpY2VHZXRBbGxGaWx0ZXJUeXBlLFxuICAgIEV4dHJhY3RHZXRBbGxQYXJhbXNGaWx0ZXJUeXBlLFxuICAgIEV4dHJhY3RHZXRBbGxQYXJhbXNTb3J0VHlwZSxcbiAgICBHZXRBbGxQYXJhbXNEZWZhdWx0V29GaWx0ZXJzVHlwZSxcbiAgICBhcGlTZXJ2aWNlR2V0QWxsXG59IGZyb20gJ0BtZWRpdXNpbmMvbW5nLWNvbW1vbnMtZGF0YS1hcGknO1xuaW1wb3J0IHtDbGFzc0Z1bmN0aW9uS2V5c1dpdGhBbnlBcmdzQW5kUmV0dXJuVHlwZSwgU2VydmljZUNsYXNzVHlwZX0gZnJvbSAnQG1lZGl1c2luYy9tbmctY29tbW9ucy9jb3JlJztcbmltcG9ydCB7TW9kZWxEZXNjcmlwdG9yLCBUeXBlRGVzY3JpcHRvcn0gZnJvbSAnQG1lZGl1c2luYy9tbmctY29tbW9ucy9tb2RlbCc7XG5pbXBvcnQge1RhYmxldmlld0RhdGFQcm92aWRlckluc3QsIFRhYmxldmlld0Rlc2NyaXB0b3JJbnN0LCBUYWJsZXZpZXdJbnB1dEJ1aWxkZXJ9IGZyb20gJ0BtZWRpdXNpbmMvbW5nLWNvbW1vbnMvdGFibGV2aWV3L2FwaSc7XG5cbi8qKlxuICogQ3JlYXRlcyBhIHRhYmxldmlldyB3aXRoIGEgZ2l2ZW4gbW9kZWwsIHNlcnZpY2UgYW5kIHNvcnRzL2ZpbHRlcnMgZXh0cmFjdGVkIGZyb20gRGF0YSBBUEkgR2V0IEFsbCByZXF1ZXN0IHBhcmFtcywgc2VydmljZSwgYW5kIG9wdGlvbmFsIGJ1aWxkIGZ1bmN0aW9uLlxuICpcbiAqIEBwYXJhbSB7TW9kZWxEZXNjcmlwdG9yPE1vZGVsPn0gbW9kZWwgLSBUaGUgbW9kZWwgZGVzY3JpcHRvci5cbiAqIEBwYXJhbSB7U2VydmljZUNsYXNzVHlwZTxTZXJ2aWNlPn0gc2VydmljZSAtIFRoZSBjbGFzcyB0eXBlIG9mIHRoZSBzZXJ2aWNlLlxuICogQHBhcmFtIHtUeXBlRGVzY3JpcHRvcjxSZXF1ZXN0UGFyYW0+fSBwYXJhbXMgLSBUaGUgcmVxdWVzdCBwYXJhbSBvZiBnZXQgYWxsIHJlcXVlc3QuIEZpbHRlcnMgYW5kIHNvcnRzIHdpbGwgYmUgdGFrZW4gZnJvbSBoZXJlLlxuICogQHBhcmFtIHsoYnVpbGRlcjogVGFibGV2aWV3QnVpbGRlcikgPT4gdm9pZH0gW2J1aWxkRm5dIC0gVGhlIG9wdGlvbmFsIGNhbGxiYWNrIGZ1bmN0aW9uIHRvIGN1c3RvbWl6ZSB0aGUgdGFibGV2aWV3IHVzaW5nIHRoZSBwcmVwYXJlZCBidWlsZGVyLlxuICpcbiAqIEByZXR1cm5zIEEgdGFibGV2aWV3IGluc3RhbmNlIHdpdGggZGVzY3JpcHRvciwgZGF0YSBwcm92aWRlciBhbmQgYWN0aW9ucy5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHRhYmxldmlld1dpdGhHZXRBbGxQYXJhbXM8XG4gICAgTW9kZWwsXG4gICAgU2VydmljZSxcbiAgICBSZXF1ZXN0UGFyYW0gZXh0ZW5kcyBHZXRBbGxQYXJhbXNEZWZhdWx0V29GaWx0ZXJzVHlwZSxcbiAgICBTb3J0cyA9IEV4dHJhY3RHZXRBbGxQYXJhbXNTb3J0VHlwZTxSZXF1ZXN0UGFyYW0+LFxuICAgIEZpbHRlcnMgZXh0ZW5kcyBrZXlvZiBhbnkgPSBFeHRyYWN0R2V0QWxsUGFyYW1zRmlsdGVyVHlwZTxSZXF1ZXN0UGFyYW0+XG4+KFxuICAgIG1vZGVsOiBNb2RlbERlc2NyaXB0b3I8TW9kZWw+LFxuICAgIHNlcnZpY2U6IFNlcnZpY2VDbGFzc1R5cGU8U2VydmljZT4sXG4gICAgcGFyYW1zOiBUeXBlRGVzY3JpcHRvcjxSZXF1ZXN0UGFyYW0+LFxuICAgIGJ1aWxkRm4/OiAoXG4gICAgICAgIGJ1aWxkZXI6IFRhYmxldmlld0lucHV0QnVpbGRlcjxNb2RlbCwgU2VydmljZSwgVGFibGV2aWV3RGVzY3JpcHRvckluc3Q8TW9kZWwsIFNvcnRzLCBGaWx0ZXJzPiwgVGFibGV2aWV3RGF0YVByb3ZpZGVySW5zdDxNb2RlbCwgU2VydmljZSwgU29ydHMsIEZpbHRlcnM+LCBTb3J0cywgRmlsdGVycz5cbiAgICApID0+IHZvaWRcbikge1xuICAgIGNvbnN0IGJ1aWxkZXIgPSBuZXcgVGFibGV2aWV3SW5wdXRCdWlsZGVyPFxuICAgICAgICBNb2RlbCxcbiAgICAgICAgU2VydmljZSxcbiAgICAgICAgVGFibGV2aWV3RGVzY3JpcHRvckluc3Q8TW9kZWwsIFNvcnRzLCBGaWx0ZXJzPixcbiAgICAgICAgVGFibGV2aWV3RGF0YVByb3ZpZGVySW5zdDxNb2RlbCwgU2VydmljZSwgU29ydHMsIEZpbHRlcnM+LFxuICAgICAgICBTb3J0cyxcbiAgICAgICAgRmlsdGVyc1xuICAgID4obmV3IFRhYmxldmlld0Rlc2NyaXB0b3JJbnN0PE1vZGVsLCBTb3J0cywgRmlsdGVycz4obW9kZWwpLCBuZXcgVGFibGV2aWV3RGF0YVByb3ZpZGVySW5zdDxNb2RlbCwgU2VydmljZSwgU29ydHMsIEZpbHRlcnM+KHVuZGVmaW5lZCwgc2VydmljZSksIGluamVjdChJbmplY3RvcikpO1xuICAgIGJ1aWxkRm4/LihidWlsZGVyKTtcbiAgICByZXR1cm4gYnVpbGRlci5idWlsZCgpO1xufVxuXG4vKipcbiAqIENyZWF0ZXMgYSB0YWJsZXZpZXcgd2l0aCBhIGdpdmVuIG1vZGVsLCBzZXJ2aWNlIGFuZCBzb3J0cy9maWx0ZXJzIGZyb20gQVBJIHNlcnZpY2UncyBwcm92aWRlZCBnZXRBbGwgZnVuY3Rpb24uXG4gKlxuICogQHBhcmFtIHtNb2RlbERlc2NyaXB0b3I8TW9kZWw+fSBtb2RlbCAtIFRoZSBtb2RlbCBkZXNjcmlwdG9yLlxuICogQHBhcmFtIHtTZXJ2aWNlQ2xhc3NUeXBlPFNlcnZpY2U+fSBzZXJ2aWNlIC0gVGhlIGNsYXNzIHR5cGUgb2YgdGhlIHNlcnZpY2UuXG4gKiBAcGFyYW0ge0dldEFsbEZufSBnZXRBbGxGbiAtIFRoZSBmdW5jdGlvbiBmcm9tIHNlcnZpY2UgZm9yIGV4ZWN1dGluZyBnZXRBbGwgcmVxdWVzdHMuIEZpbHRlcnMgYW5kIHNvcnRzIHdpbGwgYmUgdGFrZW4gZnJvbSBoZXJlLlxuICogQHBhcmFtIHsoYnVpbGRlcjogVGFibGV2aWV3QnVpbGRlcikgPT4gdm9pZH0gW2J1aWxkRm5dIC0gVGhlIG9wdGlvbmFsIGNhbGxiYWNrIGZ1bmN0aW9uIHRvIGN1c3RvbWl6ZSB0aGUgdGFibGV2aWV3IHVzaW5nIHRoZSBwcmVwYXJlZCBidWlsZGVyLlxuICpcbiAqIEByZXR1cm5zIEEgdGFibGV2aWV3IGluc3RhbmNlIHdpdGggZGVzY3JpcHRvciwgZGF0YSBwcm92aWRlciBhbmQgYWN0aW9ucy5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHRhYmxldmlld1dpdGhBcGlTZXJ2aWNlR2V0QWxsPFxuICAgIE1vZGVsLFxuICAgIFNlcnZpY2UsXG4gICAgR2V0QWxsRm4gZXh0ZW5kcyBDbGFzc0Z1bmN0aW9uS2V5c1dpdGhBbnlBcmdzQW5kUmV0dXJuVHlwZTxTZXJ2aWNlLCBPYnNlcnZhYmxlPHtkYXRhPzogYW55W107IHRvdGFsQ291bnQ/OiBudW1iZXJ9Pj4sXG4gICAgUmVxdWVzdFBhcmFtcyBleHRlbmRzIEdldEFsbFBhcmFtc0RlZmF1bHRXb0ZpbHRlcnNUeXBlID0gQXBpU2VydmljZUdldEFsbEZpbHRlclR5cGU8U2VydmljZSwgR2V0QWxsRm4+LFxuICAgIFNvcnRzID0gRXh0cmFjdEdldEFsbFBhcmFtc1NvcnRUeXBlPFJlcXVlc3RQYXJhbXM+LFxuICAgIEZpbHRlcnMgZXh0ZW5kcyBrZXlvZiBhbnkgPSBFeHRyYWN0R2V0QWxsUGFyYW1zRmlsdGVyVHlwZTxSZXF1ZXN0UGFyYW1zPlxuPihcbiAgICBtb2RlbDogTW9kZWxEZXNjcmlwdG9yPE1vZGVsPixcbiAgICBzZXJ2aWNlOiBTZXJ2aWNlQ2xhc3NUeXBlPFNlcnZpY2U+LFxuICAgIGdldEFsbEZuOiBHZXRBbGxGbixcbiAgICBidWlsZEZuPzogKFxuICAgICAgICBidWlsZGVyOiBUYWJsZXZpZXdJbnB1dEJ1aWxkZXI8TW9kZWwsIFNlcnZpY2UsIFRhYmxldmlld0Rlc2NyaXB0b3JJbnN0PE1vZGVsLCBTb3J0cywgRmlsdGVycz4sIFRhYmxldmlld0RhdGFQcm92aWRlckluc3Q8TW9kZWwsIFNlcnZpY2UsIFNvcnRzLCBGaWx0ZXJzPiwgU29ydHMsIEZpbHRlcnM+XG4gICAgKSA9PiB2b2lkXG4pIHtcbiAgICBjb25zdCBidWlsZGVyID0gbmV3IFRhYmxldmlld0lucHV0QnVpbGRlcjxcbiAgICAgICAgTW9kZWwsXG4gICAgICAgIFNlcnZpY2UsXG4gICAgICAgIFRhYmxldmlld0Rlc2NyaXB0b3JJbnN0PE1vZGVsLCBTb3J0cywgRmlsdGVycz4sXG4gICAgICAgIFRhYmxldmlld0RhdGFQcm92aWRlckluc3Q8TW9kZWwsIFNlcnZpY2UsIFNvcnRzLCBGaWx0ZXJzPixcbiAgICAgICAgU29ydHMsXG4gICAgICAgIEZpbHRlcnNcbiAgICA+KG5ldyBUYWJsZXZpZXdEZXNjcmlwdG9ySW5zdDxNb2RlbCwgU29ydHMsIEZpbHRlcnM+KG1vZGVsKSwgbmV3IFRhYmxldmlld0RhdGFQcm92aWRlckluc3Q8TW9kZWwsIFNlcnZpY2UsIFNvcnRzLCBGaWx0ZXJzPih1bmRlZmluZWQsIHNlcnZpY2UpLCBpbmplY3QoSW5qZWN0b3IpKTtcbiAgICBidWlsZGVyLndpdGhBZGp1c3REYXRhUHJvdmlkZXIoZGF0YVByb3ZpZGVyID0+IGRhdGFQcm92aWRlci53aXRoR2V0QWxsKChwYXJhbXMsIHNlcnZpY2UpID0+IGFwaVNlcnZpY2VHZXRBbGwoc2VydmljZSwgZ2V0QWxsRm4gYXMgYW55LCBwYXJhbXMpKSk7XG4gICAgYnVpbGRGbj8uKGJ1aWxkZXIpO1xuICAgIHJldHVybiBidWlsZGVyLmJ1aWxkKCk7XG59XG4iXX0=
|
|
@@ -1,30 +0,0 @@
|
|
|
1
|
-
import { Observable } from 'rxjs';
|
|
2
|
-
import { ApiServiceGetAllFilterType, ExtractGetAllParamsFilterType, ExtractGetAllParamsSortType, GetAllParamsDefaultWoFiltersType } from '@mediusinc/mng-commons-data-api';
|
|
3
|
-
import { ClassFunctionKeysWithAnyArgsAndReturnType, ServiceClassType } from '@mediusinc/mng-commons/core';
|
|
4
|
-
import { ModelDescriptor, TypeDescriptor } from '@mediusinc/mng-commons/model';
|
|
5
|
-
import { TableviewDataProviderInst, TableviewDescriptorInst, TableviewInputBuilder } from '@mediusinc/mng-commons/tableview/api';
|
|
6
|
-
/**
|
|
7
|
-
* Creates a tableview with a given model, service and sorts/filters extracted from Data API Get All request params, service, and optional build function.
|
|
8
|
-
*
|
|
9
|
-
* @param {ModelDescriptor<Model>} model - The model descriptor.
|
|
10
|
-
* @param {ServiceClassType<Service>} service - The class type of the service.
|
|
11
|
-
* @param {TypeDescriptor<RequestParam>} params - The request param of get all request. Filters and sorts will be taken from here.
|
|
12
|
-
* @param {(builder: TableviewBuilder) => void} [buildFn] - The optional callback function to customize the tableview using the prepared builder.
|
|
13
|
-
*
|
|
14
|
-
* @returns A tableview instance with descriptor, data provider and actions.
|
|
15
|
-
*/
|
|
16
|
-
export declare function tableviewWithGetAllParams<Model, Service, RequestParam extends GetAllParamsDefaultWoFiltersType, Sorts = ExtractGetAllParamsSortType<RequestParam>, Filters extends keyof any = ExtractGetAllParamsFilterType<RequestParam>>(model: ModelDescriptor<Model>, service: ServiceClassType<Service>, params: TypeDescriptor<RequestParam>, buildFn?: (builder: TableviewInputBuilder<Model, Service, TableviewDescriptorInst<Model, Sorts, Filters>, TableviewDataProviderInst<Model, Service, Sorts, Filters>, Sorts, Filters>) => void): import("@mediusinc/mng-commons/tableview/api").TableviewInput<Model, Service, Sorts, Filters, TableviewDescriptorInst<Model, Sorts, Filters, undefined>, TableviewDataProviderInst<Model, Service, Sorts, Filters, import("@mediusinc/mng-commons/core").ClassOptType<Model>, import("@mediusinc/mng-commons/core").ServiceClassOptType<Service>>>;
|
|
17
|
-
/**
|
|
18
|
-
* Creates a tableview with a given model, service and sorts/filters from API service's provided getAll function.
|
|
19
|
-
*
|
|
20
|
-
* @param {ModelDescriptor<Model>} model - The model descriptor.
|
|
21
|
-
* @param {ServiceClassType<Service>} service - The class type of the service.
|
|
22
|
-
* @param {GetAllFn} getAllFn - The function from service for executing getAll requests. Filters and sorts will be taken from here.
|
|
23
|
-
* @param {(builder: TableviewBuilder) => void} [buildFn] - The optional callback function to customize the tableview using the prepared builder.
|
|
24
|
-
*
|
|
25
|
-
* @returns A tableview instance with descriptor, data provider and actions.
|
|
26
|
-
*/
|
|
27
|
-
export declare function tableviewWithApiServiceGetAll<Model, Service, GetAllFn extends ClassFunctionKeysWithAnyArgsAndReturnType<Service, Observable<{
|
|
28
|
-
data?: any[];
|
|
29
|
-
totalCount?: number;
|
|
30
|
-
}>>, RequestParams extends GetAllParamsDefaultWoFiltersType = ApiServiceGetAllFilterType<Service, GetAllFn>, Sorts = ExtractGetAllParamsSortType<RequestParams>, Filters extends keyof any = ExtractGetAllParamsFilterType<RequestParams>>(model: ModelDescriptor<Model>, service: ServiceClassType<Service>, getAllFn: GetAllFn, buildFn?: (builder: TableviewInputBuilder<Model, Service, TableviewDescriptorInst<Model, Sorts, Filters>, TableviewDataProviderInst<Model, Service, Sorts, Filters>, Sorts, Filters>) => void): import("@mediusinc/mng-commons/tableview/api").TableviewInput<Model, Service, Sorts, Filters, TableviewDescriptorInst<Model, Sorts, Filters, undefined>, TableviewDataProviderInst<Model, Service, Sorts, Filters, import("@mediusinc/mng-commons/core").ClassOptType<Model>, import("@mediusinc/mng-commons/core").ServiceClassOptType<Service>>>;
|