@mediusinc/mng-commons 0.21.1 → 1.0.0-rc.1
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/assets/i18n/en.json +20 -2
- package/assets/i18n/sl.json +18 -1
- package/esm2020/lib/api/services/crud-api.abstract.service.mjs +9 -2
- package/esm2020/lib/api/services/get-all-api.abstract.service.mjs +9 -2
- package/esm2020/lib/components/action/action.component.mjs +12 -8
- package/esm2020/lib/components/action/editor/action-editor.component.mjs +22 -3
- package/esm2020/lib/components/action/index.mjs +2 -1
- package/esm2020/lib/components/action/localization/data-language-dropdown.component.mjs +45 -0
- package/esm2020/lib/components/action/models/action-component.model.mjs +2 -0
- package/esm2020/lib/components/action/models/action-execution.model.mjs +5 -1
- package/esm2020/lib/components/action/models/index.mjs +2 -1
- package/esm2020/lib/components/form/editor/form-editor.component.mjs +35 -11
- package/esm2020/lib/components/form/formly/fields/formly-field-table-dialog-form/formly-field-table-dialog-form.component.mjs +17 -7
- package/esm2020/lib/components/form/formly/wrappers/formly-field-wrapper/formly-field-wrapper.component.mjs +72 -4
- package/esm2020/lib/components/tableview/route/tableview-route.abstract.component.mjs +8 -1
- package/esm2020/lib/components/tableview/table/column-value/column-value.component.mjs +9 -8
- package/esm2020/lib/components/tableview/table/table.component.mjs +11 -7
- package/esm2020/lib/data-providers/editor.data-provider.mjs +1 -1
- package/esm2020/lib/data-providers/table.data-provider.mjs +2 -2
- package/esm2020/lib/data-providers/tableview-crud.data-provider.mjs +3 -3
- package/esm2020/lib/data-providers/tableview.data-provider.mjs +2 -16
- package/esm2020/lib/descriptors/action.descriptor.mjs +15 -3
- package/esm2020/lib/descriptors/column.descriptor.mjs +20 -1
- package/esm2020/lib/descriptors/editor.descriptor.mjs +41 -2
- package/esm2020/lib/descriptors/field.descriptor.mjs +44 -2
- package/esm2020/lib/descriptors/table.descriptor.mjs +19 -1
- package/esm2020/lib/descriptors/tableview.descriptor.mjs +24 -4
- package/esm2020/lib/directives/component.directive.mjs +2 -2
- package/esm2020/lib/mng-commons.module.mjs +11 -7
- package/esm2020/lib/models/config.model.mjs +1 -1
- package/esm2020/lib/pipes/index.mjs +2 -1
- package/esm2020/lib/pipes/mngLocaleDefaultRowClass.pipe.mjs +26 -0
- package/esm2020/lib/services/action-executor.service.mjs +1 -1
- package/esm2020/lib/services/commons.service.mjs +27 -1
- package/esm2020/lib/utils/action-data-provider.util.mjs +2 -2
- package/esm2020/lib/utils/editor-formly.util.mjs +10 -1
- package/esm2020/lib/utils/i18n.util.mjs +2 -2
- package/esm2020/lib/utils/notification.util.mjs +6 -1
- package/fesm2015/mediusinc-mng-commons.mjs +4688 -4303
- package/fesm2015/mediusinc-mng-commons.mjs.map +1 -1
- package/fesm2020/mediusinc-mng-commons.mjs +4637 -4258
- package/fesm2020/mediusinc-mng-commons.mjs.map +1 -1
- package/lib/api/services/crud-api.abstract.service.d.ts +2 -2
- package/lib/api/services/get-all-api.abstract.service.d.ts +2 -2
- package/lib/components/action/action.component.d.ts +5 -3
- package/lib/components/action/index.d.ts +1 -0
- package/lib/components/action/localization/data-language-dropdown.component.d.ts +25 -0
- package/lib/components/action/models/action-component.model.d.ts +15 -0
- package/lib/components/action/models/action-execution.model.d.ts +4 -2
- package/lib/components/action/models/index.d.ts +1 -0
- package/lib/components/form/editor/form-editor.component.d.ts +8 -1
- package/lib/components/form/formly/fields/formly-field-table-dialog-form/formly-field-table-dialog-form.component.d.ts +4 -1
- package/lib/components/form/formly/wrappers/formly-field-wrapper/formly-field-wrapper.component.d.ts +6 -1
- package/lib/components/tableview/route/tableview-route.abstract.component.d.ts +1 -0
- package/lib/components/tableview/table/table.component.d.ts +4 -3
- package/lib/data-providers/editor.data-provider.d.ts +4 -4
- package/lib/data-providers/table.data-provider.d.ts +5 -5
- package/lib/data-providers/tableview.data-provider.d.ts +7 -11
- package/lib/descriptors/action.descriptor.d.ts +11 -6
- package/lib/descriptors/column.descriptor.d.ts +5 -0
- package/lib/descriptors/editor.descriptor.d.ts +21 -0
- package/lib/descriptors/field.descriptor.d.ts +10 -0
- package/lib/descriptors/table.descriptor.d.ts +6 -0
- package/lib/descriptors/tableview.descriptor.d.ts +7 -0
- package/lib/mng-commons.module.d.ts +44 -42
- package/lib/models/config.model.d.ts +1 -0
- package/lib/pipes/index.d.ts +1 -0
- package/lib/pipes/mngLocaleDefaultRowClass.pipe.d.ts +10 -0
- package/lib/services/commons.service.d.ts +5 -0
- package/lib/utils/notification.util.d.ts +1 -0
- package/{mediusinc-mng-commons-0.21.1.tgz → mediusinc-mng-commons-1.0.0-rc.1.tgz} +0 -0
- package/package.json +1 -1
- package/scss/mng-overrides/_theme_datatable.scss +6 -0
- package/scss/mng-overrides/_theme_forms.scss +8 -0
- package/version-info.json +5 -5
|
@@ -5,14 +5,14 @@ import { MediusQueryResult } from '../models';
|
|
|
5
5
|
import { AMngGetAllApiService } from './get-all-api.abstract.service';
|
|
6
6
|
export interface IMngCrudApiService<T> {
|
|
7
7
|
createPost?(item: T, params?: HttpParams): Observable<T>;
|
|
8
|
-
getByIdGet?(id: IdType, params?: HttpParams): Observable<T>;
|
|
8
|
+
getByIdGet?(id: IdType, params?: HttpParams, locale?: string): Observable<T>;
|
|
9
9
|
updatePut?(id: IdType, item: T, params?: HttpParams): Observable<T>;
|
|
10
10
|
removeDelete?(id: IdType, item?: T, params?: HttpParams): Observable<T | null>;
|
|
11
11
|
}
|
|
12
12
|
export declare abstract class AMngCrudApiService<T, QRT extends MediusQueryResult<any>> extends AMngGetAllApiService<T, QRT> implements IMngCrudApiService<T> {
|
|
13
13
|
protected constructor(type: ClassType<T>, queryResultType: ClassType<QRT>);
|
|
14
14
|
createPost(item: T, params?: HttpParams): Observable<T>;
|
|
15
|
-
getByIdGet(id: IdType, params?: HttpParams): Observable<T>;
|
|
15
|
+
getByIdGet(id: IdType, params?: HttpParams, locale?: string): Observable<T>;
|
|
16
16
|
updatePut(id: IdType, item: T, params?: HttpParams): Observable<T>;
|
|
17
17
|
removeDelete(id: IdType, item?: T, params?: HttpParams): Observable<T | null>;
|
|
18
18
|
protected getCreatePostPath(item: T): string;
|
|
@@ -4,11 +4,11 @@ import { ClassType } from '../../types';
|
|
|
4
4
|
import { MediusQueryParam, MediusQueryResult } from '../models';
|
|
5
5
|
import { AMngApiService } from './api.abstract.service';
|
|
6
6
|
export interface IMngGetAllApiService<QRT extends MediusQueryResult<any>> {
|
|
7
|
-
getAllPost(queryParamBody?: MediusQueryParam, params?: HttpParams): Observable<QRT>;
|
|
7
|
+
getAllPost(queryParamBody?: MediusQueryParam, params?: HttpParams, locale?: string): Observable<QRT>;
|
|
8
8
|
}
|
|
9
9
|
export declare abstract class AMngGetAllApiService<T, QRT extends MediusQueryResult<any>> extends AMngApiService<T> implements IMngGetAllApiService<QRT> {
|
|
10
10
|
protected queryResultType: ClassType<QRT>;
|
|
11
11
|
protected constructor(type: ClassType<T>, queryResultType: ClassType<QRT>);
|
|
12
|
-
getAllPost(queryParamBody?: MediusQueryParam, params?: HttpParams): Observable<QRT>;
|
|
12
|
+
getAllPost(queryParamBody?: MediusQueryParam, params?: HttpParams, locale?: string): Observable<QRT>;
|
|
13
13
|
protected getGetAllPostPath(): string;
|
|
14
14
|
}
|
|
@@ -10,7 +10,8 @@ import { IViewContainer } from '../../models';
|
|
|
10
10
|
import { MngAuthorizationService } from '../../security';
|
|
11
11
|
import { MngActionExecutorService, MngViewContainerComponentService } from '../../services';
|
|
12
12
|
import { IdType } from '../../types';
|
|
13
|
-
import { ActionData, ActionInstance, IActionConfirmationService } from './models';
|
|
13
|
+
import { ActionData, ActionInstance, ActionParameters, IActionConfirmationService } from './models';
|
|
14
|
+
import { IActionComponent } from './models/action-component.model';
|
|
14
15
|
import * as i0 from "@angular/core";
|
|
15
16
|
export declare class MngActionComponent<T, S> implements OnInit, OnChanges, OnDestroy, IActionConfirmationService {
|
|
16
17
|
private routeService;
|
|
@@ -52,7 +53,7 @@ export declare class MngActionComponent<T, S> implements OnInit, OnChanges, OnDe
|
|
|
52
53
|
private tooltipSubject;
|
|
53
54
|
private tooltipSubscription?;
|
|
54
55
|
$tooltip: Observable<string | null>;
|
|
55
|
-
|
|
56
|
+
viewContainer?: IViewContainer<T, S>;
|
|
56
57
|
actionLink?: ActionLinkDescriptor<T>;
|
|
57
58
|
hasNoTitle: boolean;
|
|
58
59
|
private subscriptions;
|
|
@@ -63,10 +64,11 @@ export declare class MngActionComponent<T, S> implements OnInit, OnChanges, OnDe
|
|
|
63
64
|
ngOnInit(): void;
|
|
64
65
|
ngOnChanges(changes: SimpleChanges): void;
|
|
65
66
|
ngOnDestroy(): void;
|
|
66
|
-
triggerAction(
|
|
67
|
+
triggerAction(parameters?: ActionParameters<T>): void;
|
|
67
68
|
getConfirmationService(): ConfirmationService;
|
|
68
69
|
getConfirmationServiceInstanceKey(action: ActionDescriptor<any>): string;
|
|
69
70
|
private processSubscriptions;
|
|
71
|
+
onCustomActionCmpInst(instance: IActionComponent<T>): void;
|
|
70
72
|
static ɵfac: i0.ɵɵFactoryDeclaration<MngActionComponent<any, any>, [null, null, null, null, null, { optional: true; }]>;
|
|
71
73
|
static ɵcmp: i0.ɵɵComponentDeclaration<MngActionComponent<any, any>, "mng-action", never, { "action": "action"; "item": "item"; "itemId": "itemId"; "actionData": "actionData"; "queryParam": "queryParam"; "dataProvider": "dataProvider"; "hostComponent": "hostComponent"; "routeInit": "route"; "inputDisabled": "disabled"; "inputLoading": "loading"; "viewContainerInit": "viewContainer"; "selectedItems": "selectedItems"; }, { "finishEventEmitter": "finish"; }, never, never, false>;
|
|
72
74
|
}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { EventEmitter } from '@angular/core';
|
|
2
|
+
import { LookupDataProvider } from '../../../data-providers';
|
|
3
|
+
import { ActionDescriptor } from '../../../descriptors';
|
|
4
|
+
import { IViewContainer } from '../../../models';
|
|
5
|
+
import { MngCommonsService } from '../../../services';
|
|
6
|
+
import { IdType } from '../../../types';
|
|
7
|
+
import { ActionData, ActionParameters, IActionComponent } from '../models';
|
|
8
|
+
import * as i0 from "@angular/core";
|
|
9
|
+
export declare class MngDataLanguageDropdownComponent<T> implements IActionComponent<T> {
|
|
10
|
+
mngCommons: MngCommonsService;
|
|
11
|
+
action: ActionDescriptor<T>;
|
|
12
|
+
actionData: ActionData;
|
|
13
|
+
item: T;
|
|
14
|
+
itemId: IdType;
|
|
15
|
+
enabled: boolean;
|
|
16
|
+
loading: boolean;
|
|
17
|
+
viewContainer: IViewContainer<T, unknown>;
|
|
18
|
+
triggerActionEventEmitter: EventEmitter<ActionParameters<T>>;
|
|
19
|
+
private dropdown?;
|
|
20
|
+
selectionItemsDataProvider: LookupDataProvider<any, any>;
|
|
21
|
+
constructor(mngCommons: MngCommonsService);
|
|
22
|
+
updateDataLanguage(dataLang: string): void;
|
|
23
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<MngDataLanguageDropdownComponent<any>, never>;
|
|
24
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<MngDataLanguageDropdownComponent<any>, "mng-data-language-dropdown", never, { "action": "action"; "actionData": "actionData"; "item": "item"; "itemId": "itemId"; "enabled": "enabled"; "loading": "loading"; "viewContainer": "viewContainer"; }, { "triggerActionEventEmitter": "triggerActionEventEmitter"; }, never, never, false>;
|
|
25
|
+
}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { EventEmitter } from '@angular/core';
|
|
2
|
+
import { ActionDescriptor } from '../../../descriptors';
|
|
3
|
+
import { IViewContainer } from '../../../models';
|
|
4
|
+
import { IdType } from '../../../types';
|
|
5
|
+
import { ActionData, ActionParameters } from './action-execution.model';
|
|
6
|
+
export interface IActionComponent<T> {
|
|
7
|
+
action: ActionDescriptor<T>;
|
|
8
|
+
item: T;
|
|
9
|
+
itemId: IdType;
|
|
10
|
+
actionData: ActionData;
|
|
11
|
+
enabled: boolean;
|
|
12
|
+
loading: boolean;
|
|
13
|
+
viewContainer: IViewContainer<T, unknown>;
|
|
14
|
+
triggerActionEventEmitter: EventEmitter<ActionParameters<T>>;
|
|
15
|
+
}
|
|
@@ -36,7 +36,7 @@ export declare class ActionInstance<T, S> {
|
|
|
36
36
|
triggerRouteNavigation?: Observable<boolean>;
|
|
37
37
|
activationDialogRef?: DynamicDialogRef;
|
|
38
38
|
nextActionInstance?: ActionInstance<unknown, unknown>;
|
|
39
|
-
errorActionInstance?: ActionInstance<
|
|
39
|
+
errorActionInstance?: ActionInstance<T, S>;
|
|
40
40
|
constructor(action: ActionDescriptor<T>, state?: ActionInstanceStateEnum, debug?: boolean);
|
|
41
41
|
get isRunLoading$(): Observable<boolean>;
|
|
42
42
|
get context(): ActionContext<T, S> | undefined;
|
|
@@ -99,14 +99,16 @@ export declare class ActionParameters<T> {
|
|
|
99
99
|
hostComponent?: unknown;
|
|
100
100
|
route?: ActivatedRoute;
|
|
101
101
|
selectedItems: T[];
|
|
102
|
+
locale?: string;
|
|
102
103
|
constructor(itemId?: IdType | undefined, item?: T | undefined);
|
|
103
104
|
withActionData(actionData?: ActionData): this;
|
|
104
105
|
withQueryParam(queryParam?: MediusQueryParam): this;
|
|
105
|
-
withViewContainer
|
|
106
|
+
withViewContainer(viewContainer?: IViewContainer<T, unknown>): this;
|
|
106
107
|
withSourceComponent(sourceComponent?: any): this;
|
|
107
108
|
withHostComponent(hostComponent?: unknown): this;
|
|
108
109
|
withRoute(route?: ActivatedRoute): this;
|
|
109
110
|
withSelectedItems(selectedItems: T[]): this;
|
|
111
|
+
withLocale(locale: string): this;
|
|
110
112
|
}
|
|
111
113
|
export declare enum ActionInstanceStateEnum {
|
|
112
114
|
TriggerStart = 0,
|
|
@@ -6,9 +6,11 @@ import { Message } from 'primeng/api';
|
|
|
6
6
|
import { Observable } from 'rxjs';
|
|
7
7
|
import { EditorDescriptor } from '../../../descriptors';
|
|
8
8
|
import { MngTemplateDirective } from '../../../directives';
|
|
9
|
+
import { MngCommonsService } from '../../../services';
|
|
9
10
|
import { IFormEditorComponent, MngFormEditorSubmitEvent } from '../models';
|
|
10
11
|
import * as i0 from "@angular/core";
|
|
11
12
|
export declare class MngFormEditorComponent<T> implements IFormEditorComponent<T>, OnInit, OnDestroy {
|
|
13
|
+
private mngCommonsService;
|
|
12
14
|
private translateService;
|
|
13
15
|
descriptor: EditorDescriptor<T>;
|
|
14
16
|
submitLoading: Observable<boolean> | boolean;
|
|
@@ -26,7 +28,7 @@ export declare class MngFormEditorComponent<T> implements IFormEditorComponent<T
|
|
|
26
28
|
formMessages: Message[];
|
|
27
29
|
submitLoading$: Observable<boolean>;
|
|
28
30
|
private subscriptions;
|
|
29
|
-
constructor(translateService: TranslateService);
|
|
31
|
+
constructor(mngCommonsService: MngCommonsService, translateService: TranslateService);
|
|
30
32
|
ngOnInit(): void;
|
|
31
33
|
ngOnDestroy(): void;
|
|
32
34
|
submit(): void;
|
|
@@ -40,6 +42,11 @@ export declare class MngFormEditorComponent<T> implements IFormEditorComponent<T
|
|
|
40
42
|
private findFormField;
|
|
41
43
|
private isAnyFieldInvalid;
|
|
42
44
|
private updateFormState;
|
|
45
|
+
/**
|
|
46
|
+
* @private Sets form state based on editor descriptor type.
|
|
47
|
+
* Possible options are: disabled, add or edit.
|
|
48
|
+
*/
|
|
49
|
+
private setInitialFormState;
|
|
43
50
|
static ɵfac: i0.ɵɵFactoryDeclaration<MngFormEditorComponent<any>, never>;
|
|
44
51
|
static ɵcmp: i0.ɵɵComponentDeclaration<MngFormEditorComponent<any>, "mng-form-editor", never, { "descriptor": "descriptor"; "submitLoading": "submitLoading"; "item": "item"; "isSubmitButtonVisible": "isSubmitButtonVisible"; "isFormDisabled": "isFormDisabled"; }, { "formSubmitEventEmitter": "formSubmit"; }, ["templates"], never, false>;
|
|
45
52
|
}
|
|
@@ -1,10 +1,11 @@
|
|
|
1
|
-
import { AfterViewInit, OnDestroy, OnInit } from '@angular/core';
|
|
1
|
+
import { AfterViewInit, Injector, OnDestroy, OnInit } from '@angular/core';
|
|
2
2
|
import { FieldType } from '@ngx-formly/core';
|
|
3
3
|
import { Observable, Subject } from 'rxjs';
|
|
4
4
|
import { ActionDescriptor, FieldManyEditorDescriptor } from '../../../../../descriptors';
|
|
5
5
|
import { MngFormlyFieldConfig } from '../../models';
|
|
6
6
|
import * as i0 from "@angular/core";
|
|
7
7
|
export declare class MngFormlyFieldTableDialogFormComponent<T, ET> extends FieldType<MngFormlyFieldConfig> implements OnInit, AfterViewInit, OnDestroy {
|
|
8
|
+
private injector;
|
|
8
9
|
descriptor: FieldManyEditorDescriptor<T, ET>;
|
|
9
10
|
itemsSubject: Subject<Array<T>>;
|
|
10
11
|
items$: Observable<Array<T>>;
|
|
@@ -13,9 +14,11 @@ export declare class MngFormlyFieldTableDialogFormComponent<T, ET> extends Field
|
|
|
13
14
|
private subscriptions;
|
|
14
15
|
private isDisabledSubject;
|
|
15
16
|
private isEnabled$;
|
|
17
|
+
constructor(injector: Injector);
|
|
16
18
|
ngOnInit(): void;
|
|
17
19
|
ngAfterViewInit(): void;
|
|
18
20
|
ngOnDestroy(): void;
|
|
21
|
+
private hideActionsForRowWithDefaultLocalization;
|
|
19
22
|
static ɵfac: i0.ɵɵFactoryDeclaration<MngFormlyFieldTableDialogFormComponent<any, any>, never>;
|
|
20
23
|
static ɵcmp: i0.ɵɵComponentDeclaration<MngFormlyFieldTableDialogFormComponent<any, any>, "mng-formly-table-dialog-form-field", never, {}, {}, never, never, false>;
|
|
21
24
|
}
|
package/lib/components/form/formly/wrappers/formly-field-wrapper/formly-field-wrapper.component.d.ts
CHANGED
|
@@ -1,6 +1,11 @@
|
|
|
1
|
+
import { OnInit } from '@angular/core';
|
|
1
2
|
import { FieldWrapper } from '@ngx-formly/core';
|
|
3
|
+
import { ActionDescriptor } from '../../../../../descriptors';
|
|
2
4
|
import * as i0 from "@angular/core";
|
|
3
|
-
export declare class MngFormlyFieldWrapperComponent extends FieldWrapper {
|
|
5
|
+
export declare class MngFormlyFieldWrapperComponent extends FieldWrapper implements OnInit {
|
|
6
|
+
localizationAction: ActionDescriptor<unknown>;
|
|
7
|
+
ngOnInit(): void;
|
|
8
|
+
private addMissingTranslationHelperText;
|
|
4
9
|
static ɵfac: i0.ɵɵFactoryDeclaration<MngFormlyFieldWrapperComponent, never>;
|
|
5
10
|
static ɵcmp: i0.ɵɵComponentDeclaration<MngFormlyFieldWrapperComponent, "mng-formly-field-wrapper", never, {}, {}, never, never, false>;
|
|
6
11
|
}
|
|
@@ -23,6 +23,7 @@ export declare abstract class AMngTableviewRouteComponent<T, S> implements OnIni
|
|
|
23
23
|
protected createActionDescriptorForDelete(descriptor?: ModelDescriptor<T>): ActionDeleteDescriptor<T> | null;
|
|
24
24
|
protected createActionDescriptorForExport(descriptor?: ModelDescriptor<T>): ActionDescriptor<T> | null;
|
|
25
25
|
protected createActionDescriptorForRefresh(descriptor?: ModelDescriptor<T>): ActionDescriptor<T> | null;
|
|
26
|
+
protected createActionDescriptorForDataTranslate(descriptor?: ModelDescriptor<T>): ActionDescriptor<T> | null;
|
|
26
27
|
static ɵfac: i0.ɵɵFactoryDeclaration<AMngTableviewRouteComponent<any, any>, never>;
|
|
27
28
|
static ɵdir: i0.ɵɵDirectiveDeclaration<AMngTableviewRouteComponent<any, any>, never, never, {}, {}, never, never, false>;
|
|
28
29
|
}
|
|
@@ -10,7 +10,7 @@ import { ActionDescriptor, ColumnDescriptor, TableDescriptor } from '../../../de
|
|
|
10
10
|
import { TableFilterDisplayEnum } from '../../../descriptors/types';
|
|
11
11
|
import { MngComponentDirective, MngTemplateDirective } from '../../../directives';
|
|
12
12
|
import { IViewContainer } from '../../../models';
|
|
13
|
-
import { MngActionExecutorService, MngViewContainerComponentService } from '../../../services';
|
|
13
|
+
import { MngActionExecutorService, MngCommonsService, MngViewContainerComponentService } from '../../../services';
|
|
14
14
|
import { ActionInstance } from '../../action/models';
|
|
15
15
|
import { MngTableCellClickEvent, MngTableLoadEvent } from '../models';
|
|
16
16
|
import * as i0 from "@angular/core";
|
|
@@ -19,6 +19,7 @@ export declare class MngTableComponent<T, S> implements OnInit, OnChanges, After
|
|
|
19
19
|
private router;
|
|
20
20
|
private route;
|
|
21
21
|
private translate;
|
|
22
|
+
private mngCommonsService;
|
|
22
23
|
private actionExecutor;
|
|
23
24
|
private viewContainerService;
|
|
24
25
|
readonly filterDisplayRow: TableFilterDisplayEnum;
|
|
@@ -89,7 +90,7 @@ export declare class MngTableComponent<T, S> implements OnInit, OnChanges, After
|
|
|
89
90
|
private routerIsNavigationOutsideInProgress;
|
|
90
91
|
private viewContainer?;
|
|
91
92
|
private subscriptions;
|
|
92
|
-
constructor(injector: Injector, router: Router, route: ActivatedRoute, translate: TranslateService, actionExecutor: MngActionExecutorService, viewContainerService: MngViewContainerComponentService<T, S> | null);
|
|
93
|
+
constructor(injector: Injector, router: Router, route: ActivatedRoute, translate: TranslateService, mngCommonsService: MngCommonsService, actionExecutor: MngActionExecutorService, viewContainerService: MngViewContainerComponentService<T, S> | null);
|
|
93
94
|
ngOnInit(): void;
|
|
94
95
|
ngAfterContentInit(): void;
|
|
95
96
|
ngOnChanges(changes: SimpleChanges): void;
|
|
@@ -109,6 +110,6 @@ export declare class MngTableComponent<T, S> implements OnInit, OnChanges, After
|
|
|
109
110
|
private createFilterMeta;
|
|
110
111
|
private createSortMeta;
|
|
111
112
|
private initializeDataLoadingTriggers;
|
|
112
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<MngTableComponent<any, any>, [null, null, null, null, null, { optional: true; }]>;
|
|
113
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<MngTableComponent<any, any>, [null, null, null, null, null, null, { optional: true; }]>;
|
|
113
114
|
static ɵcmp: i0.ɵɵComponentDeclaration<MngTableComponent<any, any>, "mng-table", never, { "initialDescriptor": "descriptor"; "items": "items"; "queryResult": "queryResult"; "loading": "loading"; "dataProvider": "dataProvider"; "useQueryParams": "useQueryParams"; "selectionMode": "selectionMode"; "selectionEnabled": "selectionEnabled"; "actions": "actions"; "isColumnClickable": "isColumnClickable"; "viewContainerInit": "viewContainer"; "captionComponent": "captionComponent"; "columnActionComponent": "columnActionComponent"; "columnActionMinWidth": "columnActionMinWidth"; }, { "loadEventEmitter": "tableLoad"; "cellClickEventEmitter": "cellClick"; "selectionChangeEventEmitter": "selectionChange"; "captionCmpInstEventEmitter": "captionComponentInstance"; "columnActionCmpInstEventEmitter": "columnActionComponentInstance"; }, ["templates"], never, false>;
|
|
114
115
|
}
|
|
@@ -3,22 +3,22 @@ import { Observable } from 'rxjs';
|
|
|
3
3
|
import { ClassType, IdType } from '../types';
|
|
4
4
|
import { DataProvider, IDataProvider } from './base.data-provider';
|
|
5
5
|
export interface IEditorDataProvider<T, S> extends IDataProvider<T, S> {
|
|
6
|
-
fetch: (id: IdType, service?: S) => Observable<T>;
|
|
6
|
+
fetch: (id: IdType, service?: S, locale?: string) => Observable<T>;
|
|
7
7
|
create?: (item?: T, service?: S) => Observable<T>;
|
|
8
8
|
update?: (id: IdType, item?: T, service?: S) => Observable<T>;
|
|
9
9
|
delete?: (id: IdType, item?: T, service?: S) => Observable<T | null>;
|
|
10
10
|
}
|
|
11
11
|
export declare class EditorDataProvider<T, S> extends DataProvider<T, S> implements IEditorDataProvider<T, S> {
|
|
12
|
-
protected _fetch: (id: IdType, service?: S) => Observable<T>;
|
|
12
|
+
protected _fetch: (id: IdType, service?: S, locale?: string) => Observable<T>;
|
|
13
13
|
protected _create?: (item?: T, service?: S) => Observable<T>;
|
|
14
14
|
protected _update?: (id: IdType, item?: T, service?: S) => Observable<T>;
|
|
15
15
|
protected _delete?: (id: IdType, item?: T, service?: S) => Observable<T | null>;
|
|
16
16
|
constructor(modelType: ClassType<T>, serviceType?: Type<S>);
|
|
17
|
-
get fetch(): (id: IdType, service?: S | undefined) => Observable<T>;
|
|
17
|
+
get fetch(): (id: IdType, service?: S | undefined, locale?: string | undefined) => Observable<T>;
|
|
18
18
|
get create(): ((item?: T | undefined, service?: S | undefined) => Observable<T>) | undefined;
|
|
19
19
|
get update(): ((id: IdType, item?: T | undefined, service?: S | undefined) => Observable<T>) | undefined;
|
|
20
20
|
get delete(): ((id: IdType, item?: T | undefined, service?: S | undefined) => Observable<T | null>) | undefined;
|
|
21
|
-
withFetch(fetch: (id: IdType, service?: S) => Observable<T>): this;
|
|
21
|
+
withFetch(fetch: (id: IdType, service?: S, locale?: string) => Observable<T>): this;
|
|
22
22
|
withCreate(create: (item?: T, service?: S) => Observable<T>): this;
|
|
23
23
|
withUpdate(update: (id: IdType, item?: T, service?: S) => Observable<T>): this;
|
|
24
24
|
withDelete(deleteFn: (id: IdType, item?: T, service?: S) => Observable<T | null>): this;
|
|
@@ -5,23 +5,23 @@ import { ClassType } from '../types';
|
|
|
5
5
|
import { DataProvider, IDataProvider } from './base.data-provider';
|
|
6
6
|
export interface ITableDataProvider<T, S> extends IDataProvider<T, S> {
|
|
7
7
|
get isLazy(): boolean;
|
|
8
|
-
getAll: (queryParam: MediusQueryParam, service?: S) => Observable<MediusQueryResult<T>>;
|
|
8
|
+
getAll: (queryParam: MediusQueryParam, service?: S, locale?: string) => Observable<MediusQueryResult<T>>;
|
|
9
9
|
getAllReload(queryParam?: MediusQueryParam): void;
|
|
10
10
|
getAllReload$: Observable<MediusQueryParam | undefined>;
|
|
11
11
|
}
|
|
12
12
|
export declare class TableDataProvider<T, S> extends DataProvider<T, S> implements ITableDataProvider<T, S> {
|
|
13
13
|
protected _isLazy: boolean;
|
|
14
|
-
protected _getAll: (queryParam: MediusQueryParam, service?: S) => Observable<MediusQueryResult<T>>;
|
|
14
|
+
protected _getAll: (queryParam: MediusQueryParam, service?: S, locale?: string) => Observable<MediusQueryResult<T>>;
|
|
15
15
|
protected _getAllReloadSubject: Subject<MediusQueryParam | undefined>;
|
|
16
16
|
constructor(modelType: ClassType<T>, serviceType?: Type<S>);
|
|
17
17
|
get isLazy(): boolean;
|
|
18
|
-
get getAll(): (queryParam: MediusQueryParam, service?: S | undefined) => Observable<MediusQueryResult<T>>;
|
|
18
|
+
get getAll(): (queryParam: MediusQueryParam, service?: S | undefined, locale?: string | undefined) => Observable<MediusQueryResult<T>>;
|
|
19
19
|
get getAllReload$(): Observable<MediusQueryParam | undefined>;
|
|
20
|
-
withGetAll(getAll: (queryParam: MediusQueryParam, service?: S) => Observable<MediusQueryResult<T>>): this;
|
|
20
|
+
withGetAll(getAll: (queryParam: MediusQueryParam, service?: S, locale?: string) => Observable<MediusQueryResult<T>>): this;
|
|
21
21
|
/**
|
|
22
22
|
* Use this method to use inline load without lazy loading features on table and use inline pagination, filtering and sorting.
|
|
23
23
|
* @param getAll
|
|
24
24
|
*/
|
|
25
|
-
withGetAllEagerly(getAll: (service?: S) => Observable<Array<T>>): this;
|
|
25
|
+
withGetAllEagerly(getAll: (service?: S, locale?: string) => Observable<Array<T>>): this;
|
|
26
26
|
getAllReload(queryParam?: MediusQueryParam): void;
|
|
27
27
|
}
|
|
@@ -6,32 +6,28 @@ import { EditorDataProvider, IEditorDataProvider } from './editor.data-provider'
|
|
|
6
6
|
import { ITableDataProvider } from './table.data-provider';
|
|
7
7
|
export interface ITableviewDataProvider<T, S> extends IEditorDataProvider<T, S> {
|
|
8
8
|
get isLazy(): boolean;
|
|
9
|
-
getAll: (queryParam: MediusQueryParam, service?: S) => Observable<MediusQueryResult<T>>;
|
|
9
|
+
getAll: (queryParam: MediusQueryParam, service?: S, locale?: string) => Observable<MediusQueryResult<T>>;
|
|
10
10
|
getAllReload(queryParam?: MediusQueryParam): void;
|
|
11
11
|
getAllReload$: Observable<MediusQueryParam | undefined>;
|
|
12
12
|
}
|
|
13
13
|
export declare class TableviewDataProvider<T, S> extends EditorDataProvider<T, S> implements ITableviewDataProvider<T, S>, ITableDataProvider<T, S>, IEditorDataProvider<T, S> {
|
|
14
14
|
protected _isLazy: boolean;
|
|
15
|
-
protected _getAll: (queryParam: MediusQueryParam, service?: S) => Observable<MediusQueryResult<T>>;
|
|
15
|
+
protected _getAll: (queryParam: MediusQueryParam, service?: S, locale?: string) => Observable<MediusQueryResult<T>>;
|
|
16
16
|
protected _getAllReloadSubject: Subject<MediusQueryParam | undefined>;
|
|
17
17
|
constructor(modelType: ClassType<T>, serviceType?: Type<S>);
|
|
18
18
|
get isLazy(): boolean;
|
|
19
|
-
get getAll(): (queryParam: MediusQueryParam, service?: S | undefined) => Observable<MediusQueryResult<T>>;
|
|
19
|
+
get getAll(): (queryParam: MediusQueryParam, service?: S | undefined, locale?: string | undefined) => Observable<MediusQueryResult<T>>;
|
|
20
20
|
get getAllReload$(): Observable<MediusQueryParam | undefined>;
|
|
21
|
-
withGetAll(getAll: (queryParam: MediusQueryParam, service?: S) => Observable<MediusQueryResult<T>>): this;
|
|
21
|
+
withGetAll(getAll: (queryParam: MediusQueryParam, service?: S, locale?: string) => Observable<MediusQueryResult<T>>): this;
|
|
22
22
|
/**
|
|
23
23
|
* Use this method to use inline load without lazy loading features on table and use inline pagination, filtering and sorting.
|
|
24
24
|
* @param getAll
|
|
25
25
|
*/
|
|
26
|
-
withGetAllEagerly(getAll: (service?: S) => Observable<Array<T>>): this;
|
|
26
|
+
withGetAllEagerly(getAll: (service?: S, locale?: string) => Observable<Array<T>>): this;
|
|
27
27
|
getAllReload(queryParam?: MediusQueryParam): void;
|
|
28
28
|
}
|
|
29
29
|
export declare class DynamicTableviewDataProvider extends TableviewDataProvider<any, any> implements ITableviewDataProvider<any, any>, ITableDataProvider<any, any> {
|
|
30
|
-
protected _getAll: (queryParam: MediusQueryParam) => Observable<MediusQueryResult<any>>;
|
|
31
|
-
protected _fetch: (id: IdType) => Observable<any>;
|
|
30
|
+
protected _getAll: (queryParam: MediusQueryParam, locale?: string) => Observable<MediusQueryResult<any>>;
|
|
31
|
+
protected _fetch: (id: IdType, locale?: string) => Observable<any>;
|
|
32
32
|
constructor();
|
|
33
|
-
withGetAll(getAll: (queryParam: MediusQueryParam) => Observable<MediusQueryResult<any>>): this;
|
|
34
|
-
withFetch(fetch: (id: IdType) => Observable<any>): this;
|
|
35
|
-
get getAll(): (queryParam: MediusQueryParam) => Observable<MediusQueryResult<any>>;
|
|
36
|
-
get fetch(): (id: IdType) => Observable<any>;
|
|
37
33
|
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { Type } from '@angular/core';
|
|
2
2
|
import { Params, QueryParamsHandling } from '@angular/router';
|
|
3
3
|
import { Observable } from 'rxjs';
|
|
4
|
-
import { ActionContext, ActionContextValidation } from '../components/action/models';
|
|
4
|
+
import { ActionContext, ActionContextValidation, IActionComponent } from '../components/action/models';
|
|
5
5
|
import { IDataProvider, IEditorDataProvider } from '../data-providers';
|
|
6
6
|
import { APermissions } from '../security/model';
|
|
7
7
|
import { StyleLevelEnum, StyleSizeEnum } from '../styles/models';
|
|
@@ -36,10 +36,11 @@ export declare class ActionDescriptor<T> {
|
|
|
36
36
|
protected _runNotificationErrorTitle?: string;
|
|
37
37
|
protected _runNotificationErrorMessage?: string;
|
|
38
38
|
protected _afterRunAction?: ActionDescriptor<unknown>;
|
|
39
|
-
protected _onRunErrorAction?: ActionDescriptor<
|
|
39
|
+
protected _onRunErrorAction?: ActionDescriptor<T>;
|
|
40
40
|
protected _permissions?: APermissions;
|
|
41
41
|
protected _button: ActionButtonDescriptor;
|
|
42
42
|
protected _hasItemsSelection: boolean;
|
|
43
|
+
protected _component?: Type<IActionComponent<T>>;
|
|
43
44
|
constructor(model: ModelDescriptor<T> | null, actionName: string, parentType?: ClassType<unknown>, parentProperty?: string);
|
|
44
45
|
get model(): ModelDescriptor<T> | null;
|
|
45
46
|
get parentTypeName(): string | undefined;
|
|
@@ -67,11 +68,12 @@ export declare class ActionDescriptor<T> {
|
|
|
67
68
|
get runNotificationErrorTitle(): string | undefined;
|
|
68
69
|
get runNotificationErrorMessage(): string | undefined;
|
|
69
70
|
get afterRunAction(): ActionDescriptor<unknown> | undefined;
|
|
70
|
-
get onRunErrorAction(): ActionDescriptor<
|
|
71
|
+
get onRunErrorAction(): ActionDescriptor<T> | undefined;
|
|
71
72
|
get permissions(): APermissions | undefined;
|
|
72
73
|
get tableviewCategory(): string | undefined;
|
|
73
74
|
get hasItemsSelection(): boolean;
|
|
74
75
|
get button(): ActionButtonDescriptor;
|
|
76
|
+
get component(): Type<IActionComponent<T>> | undefined;
|
|
75
77
|
get positionTableviewCategories(): string[] | undefined;
|
|
76
78
|
protected setI18nModelActionBaseKey(base?: string): void;
|
|
77
79
|
withDataProvider(dataProvider: IDataProvider<T, any>): this;
|
|
@@ -87,18 +89,19 @@ export declare class ActionDescriptor<T> {
|
|
|
87
89
|
withRunConfirmation(): ActionConfirmationDialogDescriptor<T>;
|
|
88
90
|
/**
|
|
89
91
|
* Add a configuration dialogue to action using ActionConfigurationDescriptor
|
|
90
|
-
* @param
|
|
92
|
+
* @param runConfirmationDialogDescriptor descriptor with customizable information for dialog
|
|
91
93
|
*/
|
|
92
94
|
withRunConfirmationDescriptor(runConfirmationDialogDescriptor: ActionConfirmationDialogDescriptor<T>): this;
|
|
93
95
|
withRunNotificationSuccess(title?: string, message?: string, hasNotification?: boolean): this;
|
|
94
96
|
withRunNotificationError(title?: string, message?: string, hasNotification?: boolean): this;
|
|
95
97
|
withAfterRunAction<RT>(action: ActionDescriptor<RT>): this;
|
|
96
|
-
withOnRunErrorAction
|
|
98
|
+
withOnRunErrorAction(action: ActionDescriptor<T>): this;
|
|
97
99
|
withPermissions(permissions: APermissions): this;
|
|
98
100
|
withTableviewCategory(permissionsRouteType: string): this;
|
|
99
101
|
withButtonDescriptor(button: ActionButtonDescriptor): this;
|
|
100
102
|
withButton(label?: string | null, icon?: string | null, styleLevel?: StyleLevelEnum, styleText?: boolean): this;
|
|
101
103
|
withItemsSelection(hasSelection?: boolean): this;
|
|
104
|
+
withComponent(component: Type<IActionComponent<T>>): this;
|
|
102
105
|
withPositionTableviewCategories(positionTableviewCategories: string[]): this;
|
|
103
106
|
withI18nBase(base: ClassType<unknown> | string): this;
|
|
104
107
|
}
|
|
@@ -109,6 +112,7 @@ export declare class ActionEditorDescriptor<T> extends ActionDescriptor<T> {
|
|
|
109
112
|
private readonly _editorDescriptor;
|
|
110
113
|
protected _editorActions: ActionDescriptor<T>[];
|
|
111
114
|
protected _editorTitle?: string | null;
|
|
115
|
+
protected _editorTitleParams?: any;
|
|
112
116
|
protected _hasFetchNotificationSuccess: boolean;
|
|
113
117
|
protected _fetchNotificationSuccessTitle?: string;
|
|
114
118
|
protected _fetchNotificationSuccessMessage?: string;
|
|
@@ -120,6 +124,7 @@ export declare class ActionEditorDescriptor<T> extends ActionDescriptor<T> {
|
|
|
120
124
|
protected _editorComponent?: Type<any>;
|
|
121
125
|
constructor(editorDescriptor: EditorDescriptor<T>, actionName: string, parentType?: ClassType<unknown>, parentProperty?: string);
|
|
122
126
|
get editorTitle(): string | null | undefined;
|
|
127
|
+
get editorTitleParams(): any;
|
|
123
128
|
get editorDescriptor(): EditorDescriptor<T>;
|
|
124
129
|
get dialogSize(): StyleSizeEnum;
|
|
125
130
|
get dialogClassName(): string | undefined;
|
|
@@ -132,7 +137,7 @@ export declare class ActionEditorDescriptor<T> extends ActionDescriptor<T> {
|
|
|
132
137
|
get submitFunction(): ((ctx: ActionContext<T, any>) => Observable<T>) | undefined;
|
|
133
138
|
get editorActions(): ActionDescriptor<T>[];
|
|
134
139
|
get editorComponent(): Type<any> | undefined;
|
|
135
|
-
withEditorTitle(title: string | null): this;
|
|
140
|
+
withEditorTitle(title: string | null, params?: any): this;
|
|
136
141
|
withDataProvider(dataProvider: IEditorDataProvider<T, any>): this;
|
|
137
142
|
withServiceType<S>(serviceType: Type<S>): this;
|
|
138
143
|
withDialogSize(size?: StyleSizeEnum): this;
|
|
@@ -35,6 +35,8 @@ export declare class ColumnDescriptor<T, TT> {
|
|
|
35
35
|
private _currencyDisplay?;
|
|
36
36
|
private _customComponentType?;
|
|
37
37
|
private _hasCopyToClipboard;
|
|
38
|
+
private _isLocalized;
|
|
39
|
+
private _localizationExistsProperty?;
|
|
38
40
|
constructor(table: TableDescriptor<TT>, property: string);
|
|
39
41
|
get columnType(): ColumnTypeEnum;
|
|
40
42
|
get columnDisplayType(): ColumnDisplayTypeEnum;
|
|
@@ -66,6 +68,8 @@ export declare class ColumnDescriptor<T, TT> {
|
|
|
66
68
|
get hasCopyToClipboard(): boolean;
|
|
67
69
|
get template(): string | undefined;
|
|
68
70
|
get getter(): ((item: TT, value?: T | null | undefined) => unknown) | undefined;
|
|
71
|
+
get isLocalized(): boolean;
|
|
72
|
+
get localizationExistsProperty(): string | undefined;
|
|
69
73
|
/**
|
|
70
74
|
* converts column to given type with additional arguments
|
|
71
75
|
* @param type column type enum
|
|
@@ -92,6 +96,7 @@ export declare class ColumnDescriptor<T, TT> {
|
|
|
92
96
|
withCopyToClipboard(hasCopyToCliboard?: boolean): this;
|
|
93
97
|
withTemplate(template: string): this;
|
|
94
98
|
withGetter(getter?: (item: TT, value?: T | null) => unknown): this;
|
|
99
|
+
localized(existsProperty?: string): this;
|
|
95
100
|
copy(): ColumnDescriptor<T, TT>;
|
|
96
101
|
protected copyFieldsTo(obj: ColumnDescriptor<T, TT>): void;
|
|
97
102
|
}
|
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
import { Observable } from 'rxjs';
|
|
2
|
+
import { MediusQueryParam } from '../api/models';
|
|
1
3
|
import { ILookupDataProvider } from '../data-providers';
|
|
2
4
|
import { TableviewAttributeDef } from '../models/tableview-attr.model';
|
|
3
5
|
import { ClassType, EnumConstantType, EnumType, MngFieldValidationMessage, MngFieldValidator } from '../types';
|
|
@@ -14,6 +16,11 @@ export declare class EditorDescriptor<T> {
|
|
|
14
16
|
protected _currentTabGroup?: FieldTabGroupDescriptor<T>;
|
|
15
17
|
protected _currentGroup?: FieldGroupDescriptor<T>;
|
|
16
18
|
protected _disabled: boolean;
|
|
19
|
+
protected _isLocalized: boolean;
|
|
20
|
+
protected _localizationLocaleProperty?: string;
|
|
21
|
+
protected _localizationLocalizationProperty?: string;
|
|
22
|
+
protected _localizationModelType?: ClassType<any>;
|
|
23
|
+
protected _localeLookup?: (queryParam?: MediusQueryParam, service?: any, search?: string) => Observable<Array<string>>;
|
|
17
24
|
constructor(modelType: ClassType<T>, idProperty?: string, titleProperty?: string, tableviewEditorType?: TableviewEditorTypeEnum, i18nBaseKey?: string | ClassType<unknown>);
|
|
18
25
|
/**
|
|
19
26
|
* auto generated editor descriptor based on openapi definition
|
|
@@ -37,7 +44,13 @@ export declare class EditorDescriptor<T> {
|
|
|
37
44
|
get model(): ModelDescriptor<T>;
|
|
38
45
|
get tabs(): FieldTabGroupDescriptor<T>[];
|
|
39
46
|
get fields(): AFieldDescriptor<any, T>[];
|
|
47
|
+
get tableviewEditorType(): TableviewEditorTypeEnum;
|
|
40
48
|
get disabled(): boolean;
|
|
49
|
+
get isLocalized(): boolean;
|
|
50
|
+
get localizationLocaleProperty(): string | undefined;
|
|
51
|
+
get localizationLocalizationProperty(): string | undefined;
|
|
52
|
+
get localizationBeanType(): ClassType<any> | undefined;
|
|
53
|
+
get localeLookup(): ((queryParam?: MediusQueryParam | undefined, service?: any, search?: string | undefined) => Observable<string[]>) | undefined;
|
|
41
54
|
createTabGroup(name: string, title?: string): FieldTabGroupDescriptor<T>;
|
|
42
55
|
createFieldGroup(name: string, title?: string | null): FieldGroupDescriptor<T>;
|
|
43
56
|
addFieldDescriptor<FT>(field: AFieldDescriptor<FT, T>): this;
|
|
@@ -92,4 +105,12 @@ export declare class EditorDescriptor<T> {
|
|
|
92
105
|
* @param args additional arguments
|
|
93
106
|
*/
|
|
94
107
|
private upsertFieldFromAttributeDef;
|
|
108
|
+
/**
|
|
109
|
+
* This method takes care of displaying correct/localized data in the editor
|
|
110
|
+
* @param localizationsProperty property that tells us where on the model are localizations accessible
|
|
111
|
+
* @param localeProperty property by which we find the locale
|
|
112
|
+
* @param localizationModelType model type for localizations if it is different from the whole model
|
|
113
|
+
* @param localeLookup lookup provider for locales supported by the application.
|
|
114
|
+
*/
|
|
115
|
+
localized<S>(localizationsProperty?: string, localeProperty?: string, localizationModelType?: ClassType<any>, localeLookup?: (queryParam?: MediusQueryParam, service?: S, search?: string) => Observable<Array<string>>): this;
|
|
95
116
|
}
|
|
@@ -41,6 +41,8 @@ export declare abstract class AFieldDescriptor<T, ET> extends AGenericFieldDescr
|
|
|
41
41
|
protected _labelClassName: string;
|
|
42
42
|
protected _inputClassName: string;
|
|
43
43
|
protected _size: FieldSizeEnum;
|
|
44
|
+
protected _isLocalized: boolean;
|
|
45
|
+
protected _localizationTableview?: TableviewDescriptor<any>;
|
|
44
46
|
protected readonly _eventsSubject: Subject<MngFormFieldEvent<T, ET>>;
|
|
45
47
|
protected constructor(editor: EditorDescriptor<ET>, property: string);
|
|
46
48
|
get property(): string;
|
|
@@ -69,8 +71,10 @@ export declare abstract class AFieldDescriptor<T, ET> extends AGenericFieldDescr
|
|
|
69
71
|
get labelClassName(): string;
|
|
70
72
|
get inputClassName(): string;
|
|
71
73
|
get size(): FieldSizeEnum;
|
|
74
|
+
get localizationTableview(): TableviewDescriptor<any> | undefined;
|
|
72
75
|
get isSizeSmall(): boolean;
|
|
73
76
|
get isSizeLarge(): boolean;
|
|
77
|
+
get isLocalized(): boolean;
|
|
74
78
|
abstract copy(): AFieldDescriptor<T, ET>;
|
|
75
79
|
withLabel(label: string | null): this;
|
|
76
80
|
withPlaceholder(placeholder: string): this;
|
|
@@ -85,6 +89,12 @@ export declare abstract class AFieldDescriptor<T, ET> extends AGenericFieldDescr
|
|
|
85
89
|
withAsyncValidation(name: string, asyncValidator?: MngFieldAsyncValidator, message?: MngFieldValidationMessage): this;
|
|
86
90
|
withClassName(className: string, labelClassName?: string, inputClassName?: string, fieldClassName?: string): this;
|
|
87
91
|
withSize(size?: FieldSizeEnum): this;
|
|
92
|
+
/**
|
|
93
|
+
* This method adds an icon with text Show all translations above the field and after clicking on it, it displays a new dialog with tableview.
|
|
94
|
+
* This new table view shows all available translations for specific property and allows editing it.
|
|
95
|
+
* @param tableview with lookup provider for locales
|
|
96
|
+
*/
|
|
97
|
+
localized(tableview?: TableviewDescriptor<T>): this;
|
|
88
98
|
nextEvent(type: MngFormFieldEventTypeEnum, cmpType: Type<any>, cmpInstance: any, data?: MngFormFieldEventData<T, ET>): void;
|
|
89
99
|
get events$(): Observable<MngFormFieldEvent<T, ET>>;
|
|
90
100
|
protected copyFieldsTo(obj: AFieldDescriptor<T, ET>): void;
|
|
@@ -31,6 +31,8 @@ export declare class TableDescriptor<T> {
|
|
|
31
31
|
private _rowClassName?;
|
|
32
32
|
private _rowClassNameMapFn?;
|
|
33
33
|
private _autoGenerated;
|
|
34
|
+
private _isLocalized;
|
|
35
|
+
private _localizationLocaleProperty?;
|
|
34
36
|
constructor(modelType: ClassType<T>, idProperty?: string, titleProperty?: string, i18nBaseKey?: string | ClassType<unknown>);
|
|
35
37
|
/**
|
|
36
38
|
* generates descriptor based on modelType attribute definition
|
|
@@ -68,6 +70,8 @@ export declare class TableDescriptor<T> {
|
|
|
68
70
|
get rowClassName(): string | undefined;
|
|
69
71
|
get rowClassNameMapFn(): ((className?: string | undefined, item?: T | undefined) => string) | undefined;
|
|
70
72
|
get headerClassName(): string | undefined;
|
|
73
|
+
get isLocalized(): boolean;
|
|
74
|
+
get localizationLocaleProperty(): string | undefined;
|
|
71
75
|
getColumn(property: string): ColumnDescriptor<string, T> | undefined;
|
|
72
76
|
addColumnDescriptor<CT>(column: ColumnDescriptor<CT, T>): TableDescriptor<T>;
|
|
73
77
|
addColumn(property: string): ColumnDescriptor<string, T>;
|
|
@@ -92,6 +96,8 @@ export declare class TableDescriptor<T> {
|
|
|
92
96
|
withGridlines(gridlines: boolean): this;
|
|
93
97
|
withRowClassName(rowClassName?: string, classNameMapFn?: (className?: string, item?: T) => string): this;
|
|
94
98
|
withHeaderClassName(headerClassName: string): this;
|
|
99
|
+
withLocalized(): this;
|
|
100
|
+
withLocalizationLocaleProperty(localizationLocaleProperty: string): this;
|
|
95
101
|
protected copyFieldsTo(obj: TableDescriptor<T>): void;
|
|
96
102
|
copy(): TableDescriptor<T>;
|
|
97
103
|
/**
|
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
import { Type } from '@angular/core';
|
|
2
2
|
import { FieldValidatorFn } from '@ngx-formly/core/lib/models/config';
|
|
3
|
+
import { Observable } from 'rxjs';
|
|
4
|
+
import { MediusQueryParam } from '../api/models';
|
|
3
5
|
import { ILookupDataProvider } from '../data-providers';
|
|
4
6
|
import { IColumnValueComponent } from '../models';
|
|
5
7
|
import { TableviewAttributeDef } from '../models/tableview-attr.model';
|
|
@@ -14,6 +16,9 @@ export declare class TableviewDescriptor<T> {
|
|
|
14
16
|
protected _addEditor: EditorDescriptor<T>;
|
|
15
17
|
protected _editEditor: EditorDescriptor<T>;
|
|
16
18
|
protected _tableTitle?: string;
|
|
19
|
+
protected _isLocalized: boolean;
|
|
20
|
+
protected _localizationLocaleProperty?: string;
|
|
21
|
+
protected _localizationLocalizationProperty?: string;
|
|
17
22
|
constructor(modelType: ClassType<T>, idProperty?: string, titleProperty?: string, i18nBaseKey?: string | ClassType<unknown>);
|
|
18
23
|
/**
|
|
19
24
|
* generates descriptor from attribute definition of openaapi model
|
|
@@ -37,6 +42,7 @@ export declare class TableviewDescriptor<T> {
|
|
|
37
42
|
get editEditor(): EditorDescriptor<T>;
|
|
38
43
|
get tableTitle(): string | undefined;
|
|
39
44
|
get model(): ModelDescriptor<T>;
|
|
45
|
+
isLocalized(): boolean;
|
|
40
46
|
withTableDescriptor(descriptor: TableDescriptor<T>): this;
|
|
41
47
|
withEditorDescriptors(descriptor: EditorDescriptor<T>): this;
|
|
42
48
|
withDetailsDescriptor(descriptor: EditorDescriptor<T>): this;
|
|
@@ -99,6 +105,7 @@ export declare class TableviewDescriptor<T> {
|
|
|
99
105
|
* @param filterProperty
|
|
100
106
|
*/
|
|
101
107
|
withModifiedLookup<MT>(property: string, modelType?: ClassType<MT>, lookupProvider?: ILookupDataProvider<MT, any>, titleProperty?: string, itemsLabelProperty?: string, filterProperty?: string): this;
|
|
108
|
+
localized<S>(localizationProperty?: string, localeProperty?: string, localizationBeanType?: ClassType<any>, localeLookup?: (queryParam?: MediusQueryParam, service?: S, search?: string) => Observable<Array<string>>): this;
|
|
102
109
|
}
|
|
103
110
|
export declare class TableviewDynamicDescriptor extends TableviewDescriptor<any> {
|
|
104
111
|
protected _table: TableDynamicDescriptor;
|