@mediusinc/mng-commons 0.2.9 → 0.2.11
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/esm2020/lib/components/form/formly/fields/formly-field-input/formly-field-input.component.mjs +9 -8
- package/esm2020/lib/components/layout/menu-item.component.mjs +59 -17
- package/esm2020/lib/config/formly.config.mjs +10 -1
- package/esm2020/lib/descriptors/editor.descriptor.mjs +26 -1
- package/esm2020/lib/models/index.mjs +2 -1
- package/esm2020/lib/models/menu.model.mjs +2 -0
- package/esm2020/lib/router/route-builder.mjs +86 -17
- package/esm2020/lib/services/commons.service.mjs +1 -1
- package/esm2020/lib/utils/editor-formly.util.mjs +7 -1
- package/esm2020/public-api.mjs +2 -1
- package/fesm2015/mediusinc-mng-commons.mjs +192 -39
- package/fesm2015/mediusinc-mng-commons.mjs.map +1 -1
- package/fesm2020/mediusinc-mng-commons.mjs +189 -38
- package/fesm2020/mediusinc-mng-commons.mjs.map +1 -1
- package/lib/components/layout/menu-item.component.d.ts +13 -5
- package/lib/descriptors/editor.descriptor.d.ts +11 -1
- package/lib/models/index.d.ts +1 -0
- package/lib/models/menu.model.d.ts +25 -0
- package/lib/router/route-builder.d.ts +9 -5
- package/lib/services/commons.service.d.ts +6 -6
- package/package.json +1 -1
- package/public-api.d.ts +1 -0
|
@@ -1,29 +1,37 @@
|
|
|
1
|
-
import { OnDestroy, OnInit } from '@angular/core';
|
|
2
|
-
import { Router } from '@angular/router';
|
|
1
|
+
import { Injector, OnDestroy, OnInit } from '@angular/core';
|
|
2
|
+
import { ActivatedRoute, Router } from '@angular/router';
|
|
3
|
+
import { Observable } from 'rxjs';
|
|
4
|
+
import { MngMenuItem } from '../../models';
|
|
3
5
|
import { MngCommonsService } from '../../services';
|
|
4
6
|
import { MngMainLayoutComponentService } from './services';
|
|
5
7
|
import * as i0 from "@angular/core";
|
|
6
8
|
export declare class MngMenuItemComponent implements OnInit, OnDestroy {
|
|
7
|
-
|
|
9
|
+
private injector;
|
|
10
|
+
private router;
|
|
11
|
+
private route;
|
|
8
12
|
mngCommons: MngCommonsService;
|
|
9
13
|
mainLayoutService: MngMainLayoutComponentService;
|
|
10
|
-
item:
|
|
14
|
+
item: MngMenuItem;
|
|
11
15
|
index: number;
|
|
12
16
|
root: boolean;
|
|
13
17
|
parentKey: string | null;
|
|
14
18
|
key: string;
|
|
15
19
|
active: boolean;
|
|
16
20
|
hover: boolean;
|
|
21
|
+
private isAllowedSubject;
|
|
22
|
+
isAllowed$: Observable<boolean>;
|
|
17
23
|
private itemUrl?;
|
|
18
24
|
private menuSourceSubscription?;
|
|
19
25
|
private menuResetSubscription?;
|
|
20
26
|
private routerEventsSubscription?;
|
|
21
|
-
|
|
27
|
+
private guardsSubscription?;
|
|
28
|
+
constructor(injector: Injector, router: Router, route: ActivatedRoute, mngCommons: MngCommonsService, mainLayoutService: MngMainLayoutComponentService);
|
|
22
29
|
ngOnInit(): void;
|
|
23
30
|
updateActiveStateFromRoute(): void;
|
|
24
31
|
itemClick(event: Event): void;
|
|
25
32
|
onMouseEnter(): void;
|
|
26
33
|
ngOnDestroy(): void;
|
|
34
|
+
private checkIfMenuItemIsAllowedFromGuard;
|
|
27
35
|
static ɵfac: i0.ɵɵFactoryDeclaration<MngMenuItemComponent, never>;
|
|
28
36
|
static ɵcmp: i0.ɵɵComponentDeclaration<MngMenuItemComponent, "[mng-menuitem]", never, { "item": "item"; "index": "index"; "root": "root"; "parentKey": "parentKey"; }, {}, never, never>;
|
|
29
37
|
}
|
|
@@ -98,6 +98,9 @@ export declare class FieldInputDescriptor<ET> extends AFieldDescriptor<string |
|
|
|
98
98
|
private _maxLength?;
|
|
99
99
|
private _minLength?;
|
|
100
100
|
private _pattern?;
|
|
101
|
+
private _mask?;
|
|
102
|
+
private _slotChar?;
|
|
103
|
+
private _customComponentName?;
|
|
101
104
|
constructor(editor: EditorDescriptor<ET>, property: string);
|
|
102
105
|
get fieldType(): FieldInputDescriptor.TypeEnum;
|
|
103
106
|
get rows(): number | undefined;
|
|
@@ -114,6 +117,9 @@ export declare class FieldInputDescriptor<ET> extends AFieldDescriptor<string |
|
|
|
114
117
|
get maxLength(): number | undefined;
|
|
115
118
|
get minLength(): number | undefined;
|
|
116
119
|
get pattern(): string | RegExp | undefined;
|
|
120
|
+
get mask(): string | undefined;
|
|
121
|
+
get slotChar(): string | undefined;
|
|
122
|
+
get customComponentName(): string | undefined;
|
|
117
123
|
asText(minLength?: number, maxLength?: number, pattern?: string | RegExp, isEmail?: boolean): this;
|
|
118
124
|
asTextarea(rows?: number, minLength?: number, maxLength?: number, pattern?: string | RegExp): this;
|
|
119
125
|
asNumber(step?: number, min?: number, max?: number, minFractionDigits?: number, maxFractionDigits?: number): this;
|
|
@@ -121,6 +127,8 @@ export declare class FieldInputDescriptor<ET> extends AFieldDescriptor<string |
|
|
|
121
127
|
asRadio(options: Array<string | number>, optionsTitlePath?: string): this;
|
|
122
128
|
asRadioFromEnum(enumType: EnumType, optionsTitlePath?: string | null, values?: Array<EnumConstantType>, nameAsValue?: boolean): this;
|
|
123
129
|
asDatePicker(format?: string, min?: Date, max?: Date, showTime?: boolean): this;
|
|
130
|
+
asMask(mask: string, slotChar: string): this;
|
|
131
|
+
asCustomComponent(customComponentName: string): this;
|
|
124
132
|
copy(): FieldInputDescriptor<ET>;
|
|
125
133
|
}
|
|
126
134
|
export declare namespace FieldInputDescriptor {
|
|
@@ -130,7 +138,9 @@ export declare namespace FieldInputDescriptor {
|
|
|
130
138
|
Number = 2,
|
|
131
139
|
Switch = 3,
|
|
132
140
|
Radio = 4,
|
|
133
|
-
Datepicker = 5
|
|
141
|
+
Datepicker = 5,
|
|
142
|
+
Mask = 6,
|
|
143
|
+
Custom = 7
|
|
134
144
|
}
|
|
135
145
|
}
|
|
136
146
|
export declare class FieldLookupDescriptor<T, ET> extends AFieldDescriptor<T, ET> implements ILookupDescriptor<T> {
|
package/lib/models/index.d.ts
CHANGED
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { QueryParamsHandling } from '@angular/router';
|
|
2
|
+
export interface MngMenuItem {
|
|
3
|
+
title?: string;
|
|
4
|
+
label?: string;
|
|
5
|
+
icon?: string;
|
|
6
|
+
items?: Array<MngMenuItem>;
|
|
7
|
+
guards?: Array<any>;
|
|
8
|
+
separator?: boolean;
|
|
9
|
+
className?: string;
|
|
10
|
+
badge?: string;
|
|
11
|
+
badgeClassName?: string;
|
|
12
|
+
visible?: boolean;
|
|
13
|
+
disabled?: boolean;
|
|
14
|
+
routerLink?: string | Array<string>;
|
|
15
|
+
href?: string;
|
|
16
|
+
target?: string;
|
|
17
|
+
queryParams?: {
|
|
18
|
+
[k: string]: any;
|
|
19
|
+
};
|
|
20
|
+
fragment?: string;
|
|
21
|
+
queryParamsHandling?: QueryParamsHandling;
|
|
22
|
+
preserveFragment?: boolean;
|
|
23
|
+
skipLocationChange?: boolean;
|
|
24
|
+
replaceUrl?: boolean;
|
|
25
|
+
}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { Type } from '@angular/core';
|
|
2
2
|
import { LoadChildren, Route, Routes } from '@angular/router';
|
|
3
|
-
import { MenuItem } from 'primeng/api';
|
|
4
3
|
import { MngMainLayoutComponent } from '../components/layout';
|
|
5
4
|
import { ITableviewDataProvider } from '../data-providers';
|
|
6
5
|
import { ActionDescriptor, TableviewDescriptor } from '../descriptors';
|
|
6
|
+
import { MngMenuItem } from '../models';
|
|
7
7
|
import { BreadcrumbType } from './models';
|
|
8
8
|
export declare class RoutesBuilder {
|
|
9
9
|
private readonly layoutRoute?;
|
|
@@ -14,14 +14,14 @@ export declare class RoutesBuilder {
|
|
|
14
14
|
static createWithLayout(layoutComponent?: typeof MngMainLayoutComponent): RoutesBuilder;
|
|
15
15
|
addAngularRoute(route: Route): this;
|
|
16
16
|
addRouteRedirect(path: string, redirectTo: string, pathMatch?: 'full' | 'prefix'): this;
|
|
17
|
-
addLazyRoute(path: string, loadChildren: LoadChildren): this;
|
|
17
|
+
addLazyRoute(path: string, loadChildren: LoadChildren, canLoad?: Array<any>): this;
|
|
18
18
|
addRoute(path: string, component: Type<any>): this;
|
|
19
19
|
addTableviewRoutes<T, S>(path: string, descriptor: TableviewDescriptor<T>, tableviewDataProvider: ITableviewDataProvider<T, S>, actions?: Array<ActionDescriptor<T>>, hasDetails?: boolean, hasEdit?: boolean, hasAdd?: boolean): this;
|
|
20
20
|
addTableviewRoutesFromComponent(path: string, component: Type<any>, hasDetails?: boolean, hasEdit?: boolean, hasAdd?: boolean): this;
|
|
21
21
|
addRouteBuilder(routeBuilder: RouteBuilder): this;
|
|
22
22
|
toRoute(): RouteBuilder;
|
|
23
23
|
buildRoutes(): Routes;
|
|
24
|
-
buildMenu(): Array<
|
|
24
|
+
buildMenu(): Array<MngMenuItem>;
|
|
25
25
|
}
|
|
26
26
|
export declare class RouteBuilder {
|
|
27
27
|
private readonly route;
|
|
@@ -47,8 +47,11 @@ export declare class RouteBuilder {
|
|
|
47
47
|
withRedirectTo(redirectTo: string): this;
|
|
48
48
|
withPathMatch(pathMatch: 'full' | 'prefix'): this;
|
|
49
49
|
withTitle(title: string): this;
|
|
50
|
+
withCanActivate(diToken: any): this;
|
|
51
|
+
withCanDeactivate(diToken: any): this;
|
|
52
|
+
withResolver(diToken: any, name: string): this;
|
|
50
53
|
withData(data: any): this;
|
|
51
|
-
|
|
54
|
+
withMngMenuItem(menuItem: MngMenuItem): this;
|
|
52
55
|
withMenuItem(icon?: string, label?: string, routerLink?: Array<string>): this;
|
|
53
56
|
withMenuItemChild(label: string, icon?: string, routerLink?: Array<string>): this;
|
|
54
57
|
withMenuItemChildren(routesBuilder: RoutesBuilder): this;
|
|
@@ -60,7 +63,8 @@ export declare class RouteBuilder {
|
|
|
60
63
|
toRoot(): RoutesBuilder;
|
|
61
64
|
finish(): RoutesBuilder;
|
|
62
65
|
buildRoute(): Route;
|
|
63
|
-
buildMenu(): Array<
|
|
66
|
+
buildMenu(): Array<MngMenuItem>;
|
|
64
67
|
private createMenuItem;
|
|
65
68
|
private adjustMenuRouterLinksFromBuilder;
|
|
69
|
+
private findMenuItemGuards;
|
|
66
70
|
}
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import { Title } from '@angular/platform-browser';
|
|
2
2
|
import { Router } from '@angular/router';
|
|
3
3
|
import { TranslateService } from '@ngx-translate/core';
|
|
4
|
-
import {
|
|
4
|
+
import { PrimeNGConfig } from 'primeng/api';
|
|
5
5
|
import { Observable } from 'rxjs';
|
|
6
6
|
import { MngModuleConfig } from '../config/models';
|
|
7
|
-
import { IUser } from '../models';
|
|
7
|
+
import { IUser, MngMenuItem } from '../models';
|
|
8
8
|
import { MngConfigurationService } from './configuration.service';
|
|
9
9
|
import * as i0 from "@angular/core";
|
|
10
10
|
export declare class MngCommonsService {
|
|
@@ -48,11 +48,11 @@ export declare class MngCommonsService {
|
|
|
48
48
|
get menuModeIsSidebar$(): Observable<boolean>;
|
|
49
49
|
get menuActiveKey$(): Observable<string>;
|
|
50
50
|
get menuReset$(): Observable<any>;
|
|
51
|
-
get menuItems():
|
|
52
|
-
set menuItems(menuItems:
|
|
51
|
+
get menuItems(): MngMenuItem[];
|
|
52
|
+
set menuItems(menuItems: MngMenuItem[]);
|
|
53
53
|
get menuPinEnabled(): boolean;
|
|
54
|
-
get breadcrumbHome$(): Observable<
|
|
55
|
-
get breadcrumbs$(): Observable<
|
|
54
|
+
get breadcrumbHome$(): Observable<MngMenuItem | null>;
|
|
55
|
+
get breadcrumbs$(): Observable<MngMenuItem[]>;
|
|
56
56
|
get colorSchemeIsLight(): boolean;
|
|
57
57
|
get colorSchemeIsDark(): boolean;
|
|
58
58
|
get user(): IUser | undefined;
|
package/package.json
CHANGED