tin-spa 14.0.1 → 14.4.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/README.md +24 -24
- package/esm2020/lib/classes/Classes.mjs +32 -57
- package/esm2020/lib/classes/LibClasses.mjs +1 -2
- package/esm2020/lib/classes/TinCore.mjs +48 -206
- package/esm2020/lib/components/alert/alert.component.mjs +7 -21
- package/esm2020/lib/components/attach/attach.component.mjs +33 -49
- package/esm2020/lib/components/date/date.component.mjs +6 -8
- package/esm2020/lib/components/email/email.component.mjs +17 -19
- package/esm2020/lib/components/form/form.component.mjs +56 -144
- package/esm2020/lib/components/label/label.component.mjs +3 -9
- package/esm2020/lib/components/list-dialog/list-dialog.component.mjs +3 -3
- package/esm2020/lib/components/money/money.component.mjs +9 -26
- package/esm2020/lib/components/nav-menu/nav-menu.component.mjs +27 -31
- package/esm2020/lib/components/number/number.component.mjs +8 -23
- package/esm2020/lib/components/option/option.component.mjs +14 -36
- package/esm2020/lib/components/search/search.component.mjs +5 -10
- package/esm2020/lib/components/select/select.component.mjs +129 -56
- package/esm2020/lib/components/steps/steps.component.mjs +61 -83
- package/esm2020/lib/components/table/detailsDialog.component.mjs +41 -205
- package/esm2020/lib/components/table/table.component.mjs +111 -136
- package/esm2020/lib/components/table-action/table-action.component.mjs +8 -42
- package/esm2020/lib/components/table-header/table-header.component.mjs +10 -14
- package/esm2020/lib/components/table-internal/detailsDialog-internal.component.mjs +39 -205
- package/esm2020/lib/components/table-internal/table-internal.component.mjs +112 -138
- package/esm2020/lib/components/table-row/table-row.component.mjs +4 -23
- package/esm2020/lib/components/text/text.component.mjs +46 -110
- package/esm2020/lib/components/tiles/tiles.component.mjs +20 -32
- package/esm2020/lib/components/viewer/viewer.component.mjs +3 -7
- package/esm2020/lib/components/viewer/viewerDialog.component.mjs +13 -20
- package/esm2020/lib/modules/admin/admin-routing.module.mjs +1 -11
- package/esm2020/lib/pages/accounts/accountDialog.component.mjs +1 -1
- package/esm2020/lib/pages/bug/bug.component.mjs +3 -3
- package/esm2020/lib/pages/change-password/change-password.component.mjs +1 -1
- package/esm2020/lib/pages/create-account/create-account.component.mjs +1 -1
- package/esm2020/lib/pages/customers/customers.component.mjs +48 -9
- package/esm2020/lib/pages/departments/departments.component.mjs +4 -2
- package/esm2020/lib/pages/employees/employees.component.mjs +4 -3
- package/esm2020/lib/pages/grades/grades.component.mjs +3 -3
- package/esm2020/lib/pages/inventory/inventory.component.mjs +3 -3
- package/esm2020/lib/pages/inventory/quantityDialog.component.mjs +1 -1
- package/esm2020/lib/pages/invitations/invitations.component.mjs +14 -0
- package/esm2020/lib/pages/invitations-table/invitations-table.component.mjs +10 -11
- package/esm2020/lib/pages/login/login.component.mjs +14 -52
- package/esm2020/lib/pages/logs/logs.component.mjs +22 -27
- package/esm2020/lib/pages/membership/membership.component.mjs +19 -15
- package/esm2020/lib/pages/notifications/notifications.component.mjs +6 -82
- package/esm2020/lib/pages/plans/plans.component.mjs +19 -16
- package/esm2020/lib/pages/positions/positions.component.mjs +4 -4
- package/esm2020/lib/pages/profile/profile.component.mjs +3 -4
- package/esm2020/lib/pages/recover-account/recover-account.component.mjs +1 -1
- package/esm2020/lib/pages/roles/addRoleDialog.component.mjs +2 -2
- package/esm2020/lib/pages/roles/roles.component.mjs +17 -77
- package/esm2020/lib/pages/settings/settings.component.mjs +13 -5
- package/esm2020/lib/pages/signup/signup.component.mjs +1 -1
- package/esm2020/lib/pages/suppliers/suppliers.component.mjs +31 -3
- package/esm2020/lib/pages/tasks/tasks.component.mjs +9 -9
- package/esm2020/lib/pages/tenant-settings/inviteDialog.component.mjs +60 -0
- package/esm2020/lib/pages/tenant-settings/tenant-settings.component.mjs +72 -145
- package/esm2020/lib/pages/tenants/tenants.component.mjs +10 -10
- package/esm2020/lib/pages/transactions/transactDialog.component.mjs +1 -1
- package/esm2020/lib/pages/transactions/transactions.component.mjs +3 -3
- package/esm2020/lib/pages/users/users.component.mjs +92 -141
- package/esm2020/lib/pages/welcome/welcome.component.mjs +9 -9
- package/esm2020/lib/services/button.service.mjs +32 -92
- package/esm2020/lib/services/csv.service.mjs +1 -1
- package/esm2020/lib/services/datalib.service.mjs +78 -551
- package/esm2020/lib/services/dialog.service.mjs +7 -51
- package/esm2020/lib/services/table-config.service.mjs +7 -55
- package/esm2020/lib/tin-spa.module.mjs +11 -48
- package/esm2020/public-api.mjs +1 -10
- package/fesm2015/tin-spa.mjs +2605 -6538
- package/fesm2015/tin-spa.mjs.map +1 -1
- package/fesm2020/tin-spa.mjs +2501 -6482
- package/fesm2020/tin-spa.mjs.map +1 -1
- package/lib/classes/Classes.d.ts +129 -267
- package/lib/classes/LibClasses.d.ts +0 -1
- package/lib/classes/TinCore.d.ts +4 -13
- package/lib/components/alert/alert.component.d.ts +3 -4
- package/lib/components/attach/attach.component.d.ts +6 -13
- package/lib/components/date/date.component.d.ts +1 -1
- package/lib/components/email/email.component.d.ts +3 -4
- package/lib/components/form/form.component.d.ts +11 -20
- package/lib/components/label/label.component.d.ts +1 -3
- package/lib/components/money/money.component.d.ts +1 -8
- package/lib/components/nav-menu/nav-menu.component.d.ts +2 -6
- package/lib/components/number/number.component.d.ts +1 -7
- package/lib/components/option/option.component.d.ts +2 -10
- package/lib/components/search/search.component.d.ts +1 -3
- package/lib/components/select/select.component.d.ts +37 -16
- package/lib/components/steps/steps.component.d.ts +9 -18
- package/lib/components/table/detailsDialog.component.d.ts +7 -29
- package/lib/components/table/table.component.d.ts +9 -15
- package/lib/components/table-action/table-action.component.d.ts +1 -4
- package/lib/components/table-header/table-header.component.d.ts +1 -3
- package/lib/components/table-internal/detailsDialog-internal.component.d.ts +7 -29
- package/lib/components/table-internal/table-internal.component.d.ts +9 -15
- package/lib/components/table-row/table-row.component.d.ts +1 -4
- package/lib/components/text/text.component.d.ts +8 -21
- package/lib/components/tiles/tiles.component.d.ts +3 -4
- package/lib/components/viewer/viewerDialog.component.d.ts +1 -3
- package/lib/pages/customers/customers.component.d.ts +8 -2
- package/lib/pages/invitations/invitations.component.d.ts +8 -0
- package/lib/pages/invitations-table/invitations-table.component.d.ts +1 -1
- package/lib/pages/login/login.component.d.ts +1 -7
- package/lib/pages/logs/logs.component.d.ts +6 -2
- package/lib/pages/membership/membership.component.d.ts +6 -2
- package/lib/pages/notifications/notifications.component.d.ts +1 -9
- package/lib/pages/plans/plans.component.d.ts +6 -2
- package/lib/pages/roles/roles.component.d.ts +2 -14
- package/lib/pages/suppliers/suppliers.component.d.ts +4 -1
- package/lib/pages/tasks/tasks.component.d.ts +1 -1
- package/lib/pages/tenant-settings/inviteDialog.component.d.ts +28 -0
- package/lib/pages/tenant-settings/tenant-settings.component.d.ts +7 -12
- package/lib/pages/tenants/tenants.component.d.ts +2 -2
- package/lib/pages/users/users.component.d.ts +16 -8
- package/lib/services/button.service.d.ts +8 -11
- package/lib/services/datalib.service.d.ts +10 -57
- package/lib/services/dialog.service.d.ts +2 -3
- package/lib/services/table-config.service.d.ts +1 -9
- package/lib/tin-spa.module.d.ts +33 -52
- package/package.json +1 -1
- package/public-api.d.ts +0 -9
- package/esm2020/lib/components/capsules/capsules.component.mjs +0 -63
- package/esm2020/lib/components/cards/cards.component.mjs +0 -103
- package/esm2020/lib/components/html/html.component.mjs +0 -34
- package/esm2020/lib/components/multi-select/multi-select.component.mjs +0 -165
- package/esm2020/lib/components/multi-text/multi-text.component.mjs +0 -208
- package/esm2020/lib/components/notes/notes.component.mjs +0 -62
- package/esm2020/lib/components/page/page.component.mjs +0 -101
- package/esm2020/lib/components/select-bitwise/select-bitwise.component.mjs +0 -87
- package/esm2020/lib/components/select-common/select-common.component.mjs +0 -206
- package/esm2020/lib/components/select-internal/select-internal.component.mjs +0 -75
- package/esm2020/lib/components/select-lite/select-lite.component.mjs +0 -18
- package/esm2020/lib/components/statuses/statuses.component.mjs +0 -44
- package/esm2020/lib/components/suffix/suffix.component.mjs +0 -70
- package/esm2020/lib/components/table-lite/detailsDialog-lite.component.mjs +0 -404
- package/esm2020/lib/components/table-lite/table-lite.component.mjs +0 -441
- package/esm2020/lib/components/tabs/tabs.component.mjs +0 -74
- package/esm2020/lib/pages/app-models/app-models.component.mjs +0 -56
- package/esm2020/lib/pages/approvals/approvals.component.mjs +0 -19
- package/esm2020/lib/pages/approvals-config/approvals-config.component.mjs +0 -165
- package/esm2020/lib/pages/notifications-config/notifications-config.component.mjs +0 -113
- package/esm2020/lib/select-context.directive.mjs +0 -23
- package/esm2020/lib/services/notifications.service.mjs +0 -33
- package/lib/components/capsules/capsules.component.d.ts +0 -26
- package/lib/components/cards/cards.component.d.ts +0 -39
- package/lib/components/html/html.component.d.ts +0 -16
- package/lib/components/multi-select/multi-select.component.d.ts +0 -47
- package/lib/components/multi-text/multi-text.component.d.ts +0 -56
- package/lib/components/notes/notes.component.d.ts +0 -19
- package/lib/components/page/page.component.d.ts +0 -38
- package/lib/components/select-bitwise/select-bitwise.component.d.ts +0 -31
- package/lib/components/select-common/select-common.component.d.ts +0 -53
- package/lib/components/select-internal/select-internal.component.d.ts +0 -23
- package/lib/components/select-lite/select-lite.component.d.ts +0 -8
- package/lib/components/statuses/statuses.component.d.ts +0 -12
- package/lib/components/suffix/suffix.component.d.ts +0 -23
- package/lib/components/table-lite/detailsDialog-lite.component.d.ts +0 -86
- package/lib/components/table-lite/table-lite.component.d.ts +0 -91
- package/lib/components/tabs/tabs.component.d.ts +0 -32
- package/lib/pages/app-models/app-models.component.d.ts +0 -15
- package/lib/pages/approvals/approvals.component.d.ts +0 -10
- package/lib/pages/approvals-config/approvals-config.component.d.ts +0 -24
- package/lib/pages/notifications-config/notifications-config.component.d.ts +0 -17
- package/lib/select-context.directive.d.ts +0 -10
- package/lib/services/notifications.service.d.ts +0 -12
|
@@ -1,21 +1,18 @@
|
|
|
1
|
-
import { Action, AppConfig, Button, CapItem,
|
|
1
|
+
import { Action, AppConfig, Button, CapItem, FormConfig, TableConfig } from '../classes/Classes';
|
|
2
2
|
import { Observable } from 'rxjs';
|
|
3
3
|
import { HttpService } from './http.service';
|
|
4
4
|
import { ActivatedRoute, Router } from '@angular/router';
|
|
5
5
|
import { User } from '../classes/LibClasses';
|
|
6
|
-
import { AuthService } from './auth.service';
|
|
7
6
|
import * as i0 from "@angular/core";
|
|
8
7
|
export declare class DataServiceLib {
|
|
9
8
|
private httpService;
|
|
10
9
|
router: Router;
|
|
11
10
|
private route;
|
|
12
|
-
|
|
13
|
-
constructor(httpService: HttpService, router: Router, route: ActivatedRoute, authService: AuthService);
|
|
11
|
+
constructor(httpService: HttpService, router: Router, route: ActivatedRoute);
|
|
14
12
|
appConfig: AppConfig;
|
|
15
13
|
private appConfigSource;
|
|
16
14
|
appConfigObserv: Observable<AppConfig>;
|
|
17
15
|
UpdateAppConfig(config: AppConfig): void;
|
|
18
|
-
myRole: any;
|
|
19
16
|
capHome: CapItem;
|
|
20
17
|
capAdmin: CapItem;
|
|
21
18
|
capUsers: CapItem;
|
|
@@ -37,67 +34,23 @@ export declare class DataServiceLib {
|
|
|
37
34
|
capDepartments: CapItem;
|
|
38
35
|
capPositions: CapItem;
|
|
39
36
|
capGrades: CapItem;
|
|
40
|
-
capApprovals: CapItem;
|
|
41
|
-
capApprovalsConfig: CapItem;
|
|
42
|
-
capNotifications: CapItem;
|
|
43
|
-
capSelfApproval: CapItem;
|
|
44
|
-
capAppModels: CapItem;
|
|
45
|
-
capNotificationsConfig: CapItem;
|
|
46
37
|
tmpProfileuserName: string;
|
|
47
38
|
isProcessing: boolean;
|
|
48
|
-
|
|
49
|
-
editDepartmentButton: Button;
|
|
50
|
-
departmentDetailsConfig: DetailsDialogConfig;
|
|
51
|
-
positionFormConfig: FormConfig;
|
|
52
|
-
editPositionButton: Button;
|
|
53
|
-
positionDetailsConfig: DetailsDialogConfig;
|
|
39
|
+
loadEmployeesMeta(): void;
|
|
54
40
|
genders: {
|
|
55
41
|
name: string;
|
|
56
42
|
value: number;
|
|
57
43
|
}[];
|
|
58
44
|
employeeFormConfig: FormConfig;
|
|
59
|
-
|
|
60
|
-
|
|
45
|
+
employeeTableConfig: TableConfig;
|
|
46
|
+
loadPositionMeta(): void;
|
|
47
|
+
positionFormConfig: FormConfig;
|
|
48
|
+
editPositionButton: Button;
|
|
49
|
+
positionTableConfig: TableConfig;
|
|
50
|
+
departmentFormConfig: FormConfig;
|
|
51
|
+
editDepartmentButton: Button;
|
|
61
52
|
departmentTableConfig: TableConfig;
|
|
62
|
-
contactPersonFormConfig: FormConfig;
|
|
63
|
-
contactPersonTableConfig: TableConfig;
|
|
64
|
-
customerFormConfig: FormConfig;
|
|
65
|
-
customerCreateButton: Button;
|
|
66
|
-
customerEditButton: Button;
|
|
67
|
-
customerDetailsConfig: DetailsDialogConfig;
|
|
68
|
-
customersTableConfig: TableConfig;
|
|
69
|
-
supplierFormConfig: FormConfig;
|
|
70
|
-
supplierCreateButton: Button;
|
|
71
|
-
supplierEditButton: Button;
|
|
72
|
-
supplierDetailsConfig: DetailsDialogConfig;
|
|
73
|
-
suppliersTableConfig: TableConfig;
|
|
74
|
-
notificationOptions: {
|
|
75
|
-
name: string;
|
|
76
|
-
value: number;
|
|
77
|
-
}[];
|
|
78
|
-
approvalHistoryFormConfig: FormConfig;
|
|
79
|
-
approvalHistoryTableConfig: TableConfig;
|
|
80
|
-
approvalFormConfig: FormConfig;
|
|
81
|
-
approvalActionFormConfig: FormConfig;
|
|
82
|
-
approveActionDetailsConfig: DetailsDialogConfig;
|
|
83
|
-
declineActionDetailsConfig: DetailsDialogConfig;
|
|
84
|
-
approveButton: Button;
|
|
85
|
-
declineButton: Button;
|
|
86
|
-
cancelButton: Button;
|
|
87
|
-
approvalDetailsConfig: DetailsDialogConfig;
|
|
88
|
-
viewApprovalButton: Button;
|
|
89
|
-
receivedApprovalsTableConfig: TableConfig;
|
|
90
|
-
sentApprovalsTableConfig: TableConfig;
|
|
91
|
-
private listCache;
|
|
92
|
-
private cacheTimestamps;
|
|
93
|
-
private ongoingRequests;
|
|
94
53
|
CallApi(action: Action, data?: any): Observable<any>;
|
|
95
|
-
private handleCachedCall;
|
|
96
|
-
private generateCacheKey;
|
|
97
|
-
private isCacheValid;
|
|
98
|
-
private getCacheDuration;
|
|
99
|
-
ClearCache(): void;
|
|
100
|
-
invalidateListCache(entityUrl: string): void;
|
|
101
54
|
CheckWelcomed(path?: string): void;
|
|
102
55
|
Navigate(path: string): void;
|
|
103
56
|
NavigateWithValue(path: string, value: string): void;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { MatDialog, MatDialogRef } from '@angular/material/dialog';
|
|
2
2
|
import { Observable } from 'rxjs';
|
|
3
|
-
import {
|
|
3
|
+
import { Column, DetailsDialogConfig, TableConfig } from '../classes/Classes';
|
|
4
4
|
import { BreakpointObserver } from '@angular/cdk/layout';
|
|
5
5
|
import * as i0 from "@angular/core";
|
|
6
6
|
export declare class DialogService {
|
|
@@ -13,8 +13,7 @@ export declare class DialogService {
|
|
|
13
13
|
inputChange: Observable<any>;
|
|
14
14
|
dialogRef: MatDialogRef<T>;
|
|
15
15
|
};
|
|
16
|
-
openConfiguredDetailsDialog<T>(
|
|
17
|
-
openPrintDialog(htmlContent: any): void;
|
|
16
|
+
openConfiguredDetailsDialog<T>(buttonName: string, row: any, config: TableConfig | DetailsDialogConfig, dialogComponent: new (...args: any[]) => T, column?: Column): Observable<any>;
|
|
18
17
|
static ɵfac: i0.ɵɵFactoryDeclaration<DialogService, never>;
|
|
19
18
|
static ɵprov: i0.ɵɵInjectableDeclaration<DialogService>;
|
|
20
19
|
}
|
|
@@ -1,17 +1,9 @@
|
|
|
1
1
|
import { Button, Column, TableConfig } from '../classes/Classes';
|
|
2
|
-
import { DataServiceLib } from './datalib.service';
|
|
3
|
-
import { AuthService } from './auth.service';
|
|
4
2
|
import * as i0 from "@angular/core";
|
|
5
3
|
export declare class TableConfigService {
|
|
6
|
-
private dataService;
|
|
7
|
-
private authService;
|
|
8
|
-
constructor(dataService: DataServiceLib, authService: AuthService);
|
|
9
4
|
setColumns(config: TableConfig, smallScreen: boolean): string[];
|
|
10
5
|
getVisibleColumns(config: TableConfig): Column[];
|
|
11
|
-
getActionsWidth(buttons: Button[]
|
|
12
|
-
getDisplayedButtons(buttons: Button[], isSmallScreen: boolean, config: TableConfig): Button[];
|
|
13
|
-
hasTableAccess(config: TableConfig): boolean;
|
|
14
|
-
getVisibleTableConfigs(tableConfigs: TableConfig[]): TableConfig[];
|
|
6
|
+
getActionsWidth(buttons: Button[]): string;
|
|
15
7
|
static ɵfac: i0.ɵɵFactoryDeclaration<TableConfigService, never>;
|
|
16
8
|
static ɵprov: i0.ɵɵInjectableDeclaration<TableConfigService>;
|
|
17
9
|
}
|
package/lib/tin-spa.module.d.ts
CHANGED
|
@@ -28,59 +28,40 @@ import * as i26 from "./components/search/search.component";
|
|
|
28
28
|
import * as i27 from "./components/viewer/viewer.component";
|
|
29
29
|
import * as i28 from "./components/viewer/viewerDialog.component";
|
|
30
30
|
import * as i29 from "./pages/tenant-settings/tenant-settings.component";
|
|
31
|
-
import * as i30 from "./pages/
|
|
32
|
-
import * as i31 from "./pages/
|
|
33
|
-
import * as i32 from "./pages/
|
|
34
|
-
import * as i33 from "./pages/
|
|
35
|
-
import * as i34 from "./pages/
|
|
36
|
-
import * as i35 from "./pages/
|
|
37
|
-
import * as i36 from "./pages/inventory/
|
|
38
|
-
import * as i37 from "./pages/
|
|
39
|
-
import * as i38 from "./pages/accounts/
|
|
40
|
-
import * as i39 from "./pages/
|
|
41
|
-
import * as i40 from "./pages/
|
|
42
|
-
import * as i41 from "./pages/transactions/
|
|
43
|
-
import * as i42 from "./
|
|
44
|
-
import * as i43 from "./
|
|
45
|
-
import * as i44 from "./pages/
|
|
46
|
-
import * as i45 from "./pages/
|
|
47
|
-
import * as i46 from "./pages/
|
|
48
|
-
import * as i47 from "./pages/
|
|
49
|
-
import * as i48 from "./pages/
|
|
50
|
-
import * as i49 from "./pages/
|
|
51
|
-
import * as i50 from "./pages/invitations
|
|
52
|
-
import * as i51 from "./
|
|
53
|
-
import * as i52 from "./
|
|
54
|
-
import * as i53 from "./components/table-
|
|
55
|
-
import * as i54 from "./components/
|
|
56
|
-
import * as i55 from "./components/
|
|
57
|
-
import * as i56 from "./components/
|
|
58
|
-
import * as i57 from "./components/
|
|
59
|
-
import * as i58 from "./
|
|
60
|
-
import * as i59 from "
|
|
61
|
-
import * as i60 from "./
|
|
62
|
-
import * as i61 from "
|
|
63
|
-
import * as i62 from "./components/table-lite/table-lite.component";
|
|
64
|
-
import * as i63 from "./components/table-lite/detailsDialog-lite.component";
|
|
65
|
-
import * as i64 from "./pages/approvals/approvals.component";
|
|
66
|
-
import * as i65 from "./pages/approvals-config/approvals-config.component";
|
|
67
|
-
import * as i66 from "./components/multi-text/multi-text.component";
|
|
68
|
-
import * as i67 from "./components/multi-select/multi-select.component";
|
|
69
|
-
import * as i68 from "./components/select-bitwise/select-bitwise.component";
|
|
70
|
-
import * as i69 from "./pages/app-models/app-models.component";
|
|
71
|
-
import * as i70 from "./pages/notifications-config/notifications-config.component";
|
|
72
|
-
import * as i71 from "./components/html/html.component";
|
|
73
|
-
import * as i72 from "./components/notes/notes.component";
|
|
74
|
-
import * as i73 from "./components/capsules/capsules.component";
|
|
75
|
-
import * as i74 from "./components/cards/cards.component";
|
|
76
|
-
import * as i75 from "./components/tabs/tabs.component";
|
|
77
|
-
import * as i76 from "./components/statuses/statuses.component";
|
|
78
|
-
import * as i77 from "./modules/spa-mat.module";
|
|
79
|
-
import * as i78 from "@angular/common/http";
|
|
80
|
-
import * as i79 from "./components/money/currency-input-mask.module";
|
|
81
|
-
import * as i80 from "ngx-doc-viewer";
|
|
31
|
+
import * as i30 from "./pages/tenant-settings/inviteDialog.component";
|
|
32
|
+
import * as i31 from "./pages/tenants/tenants.component";
|
|
33
|
+
import * as i32 from "./pages/bug/bug.component";
|
|
34
|
+
import * as i33 from "./pages/membership/membership.component";
|
|
35
|
+
import * as i34 from "./pages/plans/plans.component";
|
|
36
|
+
import * as i35 from "./pages/customers/customers.component";
|
|
37
|
+
import * as i36 from "./pages/inventory/inventory.component";
|
|
38
|
+
import * as i37 from "./pages/inventory/quantityDialog.component";
|
|
39
|
+
import * as i38 from "./pages/accounts/accounts.component";
|
|
40
|
+
import * as i39 from "./pages/accounts/accountDialog.component";
|
|
41
|
+
import * as i40 from "./pages/suppliers/suppliers.component";
|
|
42
|
+
import * as i41 from "./pages/transactions/transactions.component";
|
|
43
|
+
import * as i42 from "./pages/transactions/transactDialog.component";
|
|
44
|
+
import * as i43 from "./components/list-dialog/list-dialog.component";
|
|
45
|
+
import * as i44 from "./pages/tasks/tasks.component";
|
|
46
|
+
import * as i45 from "./pages/departments/departments.component";
|
|
47
|
+
import * as i46 from "./pages/employees/employees.component";
|
|
48
|
+
import * as i47 from "./pages/positions/positions.component";
|
|
49
|
+
import * as i48 from "./pages/grades/grades.component";
|
|
50
|
+
import * as i49 from "./pages/welcome/welcome.component";
|
|
51
|
+
import * as i50 from "./pages/invitations/invitations.component";
|
|
52
|
+
import * as i51 from "./pages/notifications/notifications.component";
|
|
53
|
+
import * as i52 from "./pages/invitations-table/invitations-table.component";
|
|
54
|
+
import * as i53 from "./components/table-header/table-header.component";
|
|
55
|
+
import * as i54 from "./components/table-row/table-row.component";
|
|
56
|
+
import * as i55 from "./components/table-action/table-action.component";
|
|
57
|
+
import * as i56 from "./components/alert/alert.component";
|
|
58
|
+
import * as i57 from "./components/email/email.component";
|
|
59
|
+
import * as i58 from "./modules/spa-mat.module";
|
|
60
|
+
import * as i59 from "@angular/common/http";
|
|
61
|
+
import * as i60 from "./components/money/currency-input-mask.module";
|
|
62
|
+
import * as i61 from "ngx-doc-viewer";
|
|
82
63
|
export declare class TinSpaModule {
|
|
83
64
|
static ɵfac: i0.ɵɵFactoryDeclaration<TinSpaModule, never>;
|
|
84
|
-
static ɵmod: i0.ɵɵNgModuleDeclaration<TinSpaModule, [typeof i1.TinSpaComponent, typeof i2.TextComponent, typeof i3.CheckComponent, typeof i4.DateComponent, typeof i5.DatetimeComponent, typeof i6.LabelComponent, typeof i7.SelectComponent, typeof i8.ActivityComponent, typeof i9.FilterComponent, typeof i10.messageDialog, typeof i11.MoneyComponent, typeof i12.OptionComponent, typeof i13.TilesComponent, typeof i14.StepsComponent, typeof i15.AttachComponent, typeof i16.ChipsComponent, typeof i17.LoaderComponent, typeof i18.NavMenuComponent, typeof i19.TableComponent, typeof i20.TableInternalComponent, typeof i21.DetailsDialog, typeof i22.DetailsDialogInternal, typeof i23.FormComponent, typeof i24.CamelToWordsPipe, typeof i25.NumberComponent, typeof i26.SearchComponent, typeof i27.ViewerComponent, typeof i28.viewerDialog, typeof i29.TenantSettingsComponent, typeof i30.
|
|
65
|
+
static ɵmod: i0.ɵɵNgModuleDeclaration<TinSpaModule, [typeof i1.TinSpaComponent, typeof i2.TextComponent, typeof i3.CheckComponent, typeof i4.DateComponent, typeof i5.DatetimeComponent, typeof i6.LabelComponent, typeof i7.SelectComponent, typeof i8.ActivityComponent, typeof i9.FilterComponent, typeof i10.messageDialog, typeof i11.MoneyComponent, typeof i12.OptionComponent, typeof i13.TilesComponent, typeof i14.StepsComponent, typeof i15.AttachComponent, typeof i16.ChipsComponent, typeof i17.LoaderComponent, typeof i18.NavMenuComponent, typeof i19.TableComponent, typeof i20.TableInternalComponent, typeof i21.DetailsDialog, typeof i22.DetailsDialogInternal, typeof i23.FormComponent, typeof i24.CamelToWordsPipe, typeof i25.NumberComponent, typeof i26.SearchComponent, typeof i27.ViewerComponent, typeof i28.viewerDialog, typeof i29.TenantSettingsComponent, typeof i30.inviteDialog, typeof i31.TenantsComponent, typeof i32.BugComponent, typeof i33.MembershipComponent, typeof i34.PlansComponent, typeof i35.CustomersComponent, typeof i36.InventoryComponent, typeof i37.quantityDialog, typeof i38.AccountsComponent, typeof i39.accountDialog, typeof i40.SuppliersComponent, typeof i41.TransactionsComponent, typeof i42.transactDialog, typeof i43.ListDialogComponent, typeof i44.TasksComponent, typeof i45.DepartmentsComponent, typeof i46.EmployeesComponent, typeof i47.PositionsComponent, typeof i48.GradesComponent, typeof i49.WelcomeComponent, typeof i50.InvitationsComponent, typeof i51.NotificationsComponent, typeof i52.InvitationsTableComponent, typeof i53.TableHeaderComponent, typeof i54.TableRowComponent, typeof i55.TableActionComponent, typeof i56.AlertComponent, typeof i57.EmailComponent], [typeof i58.SpaMatModule, typeof i59.HttpClientModule, typeof i60.CurrencyInputModule, typeof i61.NgxDocViewerModule], [typeof i1.TinSpaComponent, typeof i58.SpaMatModule, typeof i56.AlertComponent, typeof i2.TextComponent, typeof i10.messageDialog, typeof i18.NavMenuComponent, typeof i17.LoaderComponent, typeof i13.TilesComponent, typeof i4.DateComponent, typeof i7.SelectComponent, typeof i5.DatetimeComponent, typeof i3.CheckComponent, typeof i15.AttachComponent, typeof i11.MoneyComponent, typeof i16.ChipsComponent, typeof i8.ActivityComponent, typeof i12.OptionComponent, typeof i6.LabelComponent, typeof i14.StepsComponent, typeof i9.FilterComponent, typeof i19.TableComponent, typeof i21.DetailsDialog, typeof i23.FormComponent, typeof i25.NumberComponent, typeof i26.SearchComponent, typeof i27.ViewerComponent, typeof i28.viewerDialog, typeof i43.ListDialogComponent, typeof i35.CustomersComponent, typeof i38.AccountsComponent, typeof i36.InventoryComponent, typeof i40.SuppliersComponent, typeof i41.TransactionsComponent, typeof i43.ListDialogComponent, typeof i44.TasksComponent, typeof i45.DepartmentsComponent, typeof i46.EmployeesComponent, typeof i47.PositionsComponent, typeof i48.GradesComponent, typeof i49.WelcomeComponent, typeof i57.EmailComponent]>;
|
|
85
66
|
static ɵinj: i0.ɵɵInjectorDeclaration<TinSpaModule>;
|
|
86
67
|
}
|
package/package.json
CHANGED
package/public-api.d.ts
CHANGED
|
@@ -23,12 +23,9 @@ export * from './lib/components/tiles/tiles.component';
|
|
|
23
23
|
export * from './lib/components/alert/alert.component';
|
|
24
24
|
export * from './lib/components/date/date.component';
|
|
25
25
|
export * from './lib/components/text/text.component';
|
|
26
|
-
export * from './lib/components/multi-text/multi-text.component';
|
|
27
26
|
export * from './lib/components/label/label.component';
|
|
28
27
|
export * from './lib/components/datetime/datetime.component';
|
|
29
28
|
export * from './lib/components/select/select.component';
|
|
30
|
-
export * from './lib/components/multi-select/multi-select.component';
|
|
31
|
-
export * from './lib/components/select-bitwise/select-bitwise.component';
|
|
32
29
|
export * from './lib/components/attach/attach.component';
|
|
33
30
|
export * from './lib/components/check/check.component';
|
|
34
31
|
export * from './lib/components/money/money.component';
|
|
@@ -49,12 +46,6 @@ export * from './lib/components/viewer/viewerDialog.component';
|
|
|
49
46
|
export * from './lib/components/nav-menu/nav-menu.component';
|
|
50
47
|
export * from './lib/components/list-dialog/list-dialog.component';
|
|
51
48
|
export * from './lib/components/email/email.component';
|
|
52
|
-
export * from './lib/components/page/page.component';
|
|
53
|
-
export * from './lib/components/html/html.component';
|
|
54
|
-
export * from './lib/components/notes/notes.component';
|
|
55
|
-
export * from './lib/components/capsules/capsules.component';
|
|
56
|
-
export * from './lib/components/tabs/tabs.component';
|
|
57
|
-
export * from './lib/components/statuses/statuses.component';
|
|
58
49
|
export * from './lib/pages/transactions/transactions.component';
|
|
59
50
|
export * from './lib/pages/tasks/tasks.component';
|
|
60
51
|
export * from './lib/pages/departments/departments.component';
|
|
@@ -1,63 +0,0 @@
|
|
|
1
|
-
import { Component, EventEmitter, Input, Output } from '@angular/core';
|
|
2
|
-
import * as i0 from "@angular/core";
|
|
3
|
-
import * as i1 from "../../services/button.service";
|
|
4
|
-
import * as i2 from "../../services/condition.service";
|
|
5
|
-
import * as i3 from "@angular/common";
|
|
6
|
-
import * as i4 from "@angular/material/menu";
|
|
7
|
-
import * as i5 from "@angular/material/icon";
|
|
8
|
-
import * as i6 from "@angular/material/chips";
|
|
9
|
-
export class CapsulesComponent {
|
|
10
|
-
constructor(buttonService, conditionService) {
|
|
11
|
-
this.buttonService = buttonService;
|
|
12
|
-
this.conditionService = conditionService;
|
|
13
|
-
this.displayedButtons = [];
|
|
14
|
-
this.actionClick = new EventEmitter();
|
|
15
|
-
}
|
|
16
|
-
// Extract display value based on config
|
|
17
|
-
getDisplayValue(row) {
|
|
18
|
-
if (!this.config?.capsuleConfig?.displayField) {
|
|
19
|
-
return '';
|
|
20
|
-
}
|
|
21
|
-
return row[this.config.capsuleConfig.displayField];
|
|
22
|
-
}
|
|
23
|
-
// Check icon visibility condition
|
|
24
|
-
testIconCondition(row, icon) {
|
|
25
|
-
return this.conditionService.testIconCondition(icon, row);
|
|
26
|
-
}
|
|
27
|
-
// Handle button click from menu
|
|
28
|
-
onActionClick(buttonName, row) {
|
|
29
|
-
this.actionClick.emit({ name: buttonName, row });
|
|
30
|
-
}
|
|
31
|
-
// Get button color using service
|
|
32
|
-
getButtonColor(button, row) {
|
|
33
|
-
return this.buttonService.getButtonColor(button, row);
|
|
34
|
-
}
|
|
35
|
-
// Get icon for button using service
|
|
36
|
-
getIcon(buttonName) {
|
|
37
|
-
return this.buttonService.getIcon(this.getButton(buttonName), this.config);
|
|
38
|
-
}
|
|
39
|
-
// Test if button should be disabled
|
|
40
|
-
testDisabled(row, buttonName) {
|
|
41
|
-
const button = this.getButton(buttonName);
|
|
42
|
-
return this.buttonService.testDisabled(button, row, this.config);
|
|
43
|
-
}
|
|
44
|
-
// Get button by name
|
|
45
|
-
getButton(name) {
|
|
46
|
-
return this.displayedButtons?.find(x => x.name === name) || null;
|
|
47
|
-
}
|
|
48
|
-
}
|
|
49
|
-
CapsulesComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: CapsulesComponent, deps: [{ token: i1.ButtonService }, { token: i2.ConditionService }], target: i0.ɵɵFactoryTarget.Component });
|
|
50
|
-
CapsulesComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: CapsulesComponent, selector: "spa-capsules", inputs: { config: "config", dataSource: "dataSource", displayedButtons: "displayedButtons" }, outputs: { actionClick: "actionClick" }, ngImport: i0, template: "<mat-chip-list>\r\n <mat-chip *ngFor=\"let row of dataSource\" [matMenuTriggerFor]=\"itemMenu\" [matMenuTriggerData]=\"{item: row}\">\r\n <!-- Left icons -->\r\n <ng-container *ngFor=\"let icon of config.capsuleConfig?.leftIcons\">\r\n <mat-icon *ngIf=\"testIconCondition(row, icon)\" \r\n [ngStyle]=\"{'color': icon?.color}\" \r\n style=\"font-size: 18px; padding-top: 3px; margin-right: 5px;\">\r\n {{icon.name}}\r\n </mat-icon>\r\n </ng-container>\r\n \r\n <!-- Display text -->\r\n <label style=\"margin-right: 5px;\">{{getDisplayValue(row)}}</label>\r\n \r\n <!-- Right icons -->\r\n <ng-container *ngFor=\"let icon of config.capsuleConfig?.rightIcons\">\r\n <mat-icon *ngIf=\"testIconCondition(row, icon)\" \r\n [ngStyle]=\"{'color': icon?.color}\" \r\n style=\"font-size: 18px; padding-top: 3px; margin-left: 5px;\">\r\n {{icon.name}}\r\n </mat-icon>\r\n </ng-container>\r\n </mat-chip>\r\n</mat-chip-list>\r\n \r\n <!-- Context menu -->\r\n<mat-menu #itemMenu=\"matMenu\">\r\n <ng-template matMenuContent let-item=\"item\">\r\n <button mat-menu-item *ngFor=\"let button of buttonService.getVisibleButtons(displayedButtons, item, config)\" \r\n [disabled]=\"testDisabled(item, button.name)\"\r\n (click)=\"onActionClick(button.name, item)\">\r\n <mat-icon [ngStyle]=\"{'color': getButtonColor(button, item)}\">\r\n {{getIcon(button.name)}}\r\n </mat-icon>\r\n <span>{{button.display || (button.name | titlecase)}}</span>\r\n </button>\r\n </ng-template>\r\n</mat-menu>", styles: ["mat-chip{cursor:pointer;margin:4px}mat-chip:hover{opacity:.8}mat-icon{vertical-align:middle}label{vertical-align:middle;margin:0}\n"], dependencies: [{ kind: "directive", type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "component", type: i4.MatMenu, selector: "mat-menu", exportAs: ["matMenu"] }, { kind: "component", type: i4.MatMenuItem, selector: "[mat-menu-item]", inputs: ["disabled", "disableRipple", "role"], exportAs: ["matMenuItem"] }, { kind: "directive", type: i4.MatMenuTrigger, selector: "[mat-menu-trigger-for], [matMenuTriggerFor]", exportAs: ["matMenuTrigger"] }, { kind: "directive", type: i4.MatMenuContent, selector: "ng-template[matMenuContent]" }, { kind: "component", type: i5.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i6.MatChipList, selector: "mat-chip-list", inputs: ["role", "aria-describedby", "errorStateMatcher", "multiple", "compareWith", "value", "required", "placeholder", "disabled", "aria-orientation", "selectable", "tabIndex"], outputs: ["change", "valueChange"], exportAs: ["matChipList"] }, { kind: "directive", type: i6.MatChip, selector: "mat-basic-chip, [mat-basic-chip], mat-chip, [mat-chip]", inputs: ["color", "disableRipple", "tabIndex", "role", "selected", "value", "selectable", "disabled", "removable"], outputs: ["selectionChange", "destroyed", "removed"], exportAs: ["matChip"] }, { kind: "pipe", type: i3.TitleCasePipe, name: "titlecase" }] });
|
|
51
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: CapsulesComponent, decorators: [{
|
|
52
|
-
type: Component,
|
|
53
|
-
args: [{ selector: 'spa-capsules', template: "<mat-chip-list>\r\n <mat-chip *ngFor=\"let row of dataSource\" [matMenuTriggerFor]=\"itemMenu\" [matMenuTriggerData]=\"{item: row}\">\r\n <!-- Left icons -->\r\n <ng-container *ngFor=\"let icon of config.capsuleConfig?.leftIcons\">\r\n <mat-icon *ngIf=\"testIconCondition(row, icon)\" \r\n [ngStyle]=\"{'color': icon?.color}\" \r\n style=\"font-size: 18px; padding-top: 3px; margin-right: 5px;\">\r\n {{icon.name}}\r\n </mat-icon>\r\n </ng-container>\r\n \r\n <!-- Display text -->\r\n <label style=\"margin-right: 5px;\">{{getDisplayValue(row)}}</label>\r\n \r\n <!-- Right icons -->\r\n <ng-container *ngFor=\"let icon of config.capsuleConfig?.rightIcons\">\r\n <mat-icon *ngIf=\"testIconCondition(row, icon)\" \r\n [ngStyle]=\"{'color': icon?.color}\" \r\n style=\"font-size: 18px; padding-top: 3px; margin-left: 5px;\">\r\n {{icon.name}}\r\n </mat-icon>\r\n </ng-container>\r\n </mat-chip>\r\n</mat-chip-list>\r\n \r\n <!-- Context menu -->\r\n<mat-menu #itemMenu=\"matMenu\">\r\n <ng-template matMenuContent let-item=\"item\">\r\n <button mat-menu-item *ngFor=\"let button of buttonService.getVisibleButtons(displayedButtons, item, config)\" \r\n [disabled]=\"testDisabled(item, button.name)\"\r\n (click)=\"onActionClick(button.name, item)\">\r\n <mat-icon [ngStyle]=\"{'color': getButtonColor(button, item)}\">\r\n {{getIcon(button.name)}}\r\n </mat-icon>\r\n <span>{{button.display || (button.name | titlecase)}}</span>\r\n </button>\r\n </ng-template>\r\n</mat-menu>", styles: ["mat-chip{cursor:pointer;margin:4px}mat-chip:hover{opacity:.8}mat-icon{vertical-align:middle}label{vertical-align:middle;margin:0}\n"] }]
|
|
54
|
-
}], ctorParameters: function () { return [{ type: i1.ButtonService }, { type: i2.ConditionService }]; }, propDecorators: { config: [{
|
|
55
|
-
type: Input
|
|
56
|
-
}], dataSource: [{
|
|
57
|
-
type: Input
|
|
58
|
-
}], displayedButtons: [{
|
|
59
|
-
type: Input
|
|
60
|
-
}], actionClick: [{
|
|
61
|
-
type: Output
|
|
62
|
-
}] } });
|
|
63
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2Fwc3VsZXMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdGluLXNwYS9zcmMvbGliL2NvbXBvbmVudHMvY2Fwc3VsZXMvY2Fwc3VsZXMuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdGluLXNwYS9zcmMvbGliL2NvbXBvbmVudHMvY2Fwc3VsZXMvY2Fwc3VsZXMuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQzs7Ozs7Ozs7QUFVdkUsTUFBTSxPQUFPLGlCQUFpQjtJQUM1QixZQUNTLGFBQTRCLEVBQzNCLGdCQUFrQztRQURuQyxrQkFBYSxHQUFiLGFBQWEsQ0FBZTtRQUMzQixxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQWtCO1FBS25DLHFCQUFnQixHQUFhLEVBQUUsQ0FBQztRQUUvQixnQkFBVyxHQUFHLElBQUksWUFBWSxFQUE0QixDQUFDO0lBTmxFLENBQUM7SUFRSix3Q0FBd0M7SUFDeEMsZUFBZSxDQUFDLEdBQVE7UUFDdEIsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsYUFBYSxFQUFFLFlBQVksRUFBRTtZQUM3QyxPQUFPLEVBQUUsQ0FBQztTQUNYO1FBQ0QsT0FBTyxHQUFHLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxhQUFhLENBQUMsWUFBWSxDQUFDLENBQUM7SUFDckQsQ0FBQztJQUVELGtDQUFrQztJQUNsQyxpQkFBaUIsQ0FBQyxHQUFRLEVBQUUsSUFBUztRQUNuQyxPQUFPLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLEVBQUUsR0FBRyxDQUFDLENBQUM7SUFDNUQsQ0FBQztJQUVELGdDQUFnQztJQUNoQyxhQUFhLENBQUMsVUFBa0IsRUFBRSxHQUFRO1FBQ3hDLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLEVBQUUsSUFBSSxFQUFFLFVBQVUsRUFBRSxHQUFHLEVBQUUsQ0FBQyxDQUFDO0lBQ25ELENBQUM7SUFFRCxpQ0FBaUM7SUFDakMsY0FBYyxDQUFDLE1BQWMsRUFBRSxHQUFRO1FBQ3JDLE9BQU8sSUFBSSxDQUFDLGFBQWEsQ0FBQyxjQUFjLENBQUMsTUFBTSxFQUFFLEdBQUcsQ0FBQyxDQUFDO0lBQ3hELENBQUM7SUFFRCxvQ0FBb0M7SUFDcEMsT0FBTyxDQUFDLFVBQWtCO1FBQ3hCLE9BQU8sSUFBSSxDQUFDLGFBQWEsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxVQUFVLENBQUMsRUFBRSxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDN0UsQ0FBQztJQUVELG9DQUFvQztJQUNwQyxZQUFZLENBQUMsR0FBUSxFQUFFLFVBQWtCO1FBQ3ZDLE1BQU0sTUFBTSxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsVUFBVSxDQUFDLENBQUM7UUFDMUMsT0FBTyxJQUFJLENBQUMsYUFBYSxDQUFDLFlBQVksQ0FBQyxNQUFNLEVBQUUsR0FBRyxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUNuRSxDQUFDO0lBRUQscUJBQXFCO0lBQ2IsU0FBUyxDQUFDLElBQVk7UUFDNUIsT0FBTyxJQUFJLENBQUMsZ0JBQWdCLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksS0FBSyxJQUFJLENBQUMsSUFBSSxJQUFJLENBQUM7SUFDbkUsQ0FBQzs7OEdBakRVLGlCQUFpQjtrR0FBakIsaUJBQWlCLDJMQ1Y5QixpckRBcUNXOzJGRDNCRSxpQkFBaUI7a0JBTDdCLFNBQVM7K0JBQ0UsY0FBYzttSUFVZixNQUFNO3NCQUFkLEtBQUs7Z0JBQ0csVUFBVTtzQkFBbEIsS0FBSztnQkFDRyxnQkFBZ0I7c0JBQXhCLEtBQUs7Z0JBRUksV0FBVztzQkFBcEIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEJ1dHRvbiwgVGFibGVDb25maWcgfSBmcm9tICcuLi8uLi9jbGFzc2VzL0NsYXNzZXMnO1xyXG5pbXBvcnQgeyBCdXR0b25TZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvYnV0dG9uLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBDb25kaXRpb25TZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvY29uZGl0aW9uLnNlcnZpY2UnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdzcGEtY2Fwc3VsZXMnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9jYXBzdWxlcy5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vY2Fwc3VsZXMuY29tcG9uZW50LmNzcyddXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBDYXBzdWxlc0NvbXBvbmVudCB7XHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwdWJsaWMgYnV0dG9uU2VydmljZTogQnV0dG9uU2VydmljZSxcclxuICAgIHByaXZhdGUgY29uZGl0aW9uU2VydmljZTogQ29uZGl0aW9uU2VydmljZVxyXG4gICkge31cclxuXHJcbiAgQElucHV0KCkgY29uZmlnOiBUYWJsZUNvbmZpZztcclxuICBASW5wdXQoKSBkYXRhU291cmNlOiBhbnlbXTtcclxuICBASW5wdXQoKSBkaXNwbGF5ZWRCdXR0b25zOiBCdXR0b25bXSA9IFtdO1xyXG5cclxuICBAT3V0cHV0KCkgYWN0aW9uQ2xpY2sgPSBuZXcgRXZlbnRFbWl0dGVyPHtuYW1lOiBzdHJpbmcsIHJvdzogYW55fT4oKTtcclxuXHJcbiAgLy8gRXh0cmFjdCBkaXNwbGF5IHZhbHVlIGJhc2VkIG9uIGNvbmZpZ1xyXG4gIGdldERpc3BsYXlWYWx1ZShyb3c6IGFueSk6IHN0cmluZyB7XHJcbiAgICBpZiAoIXRoaXMuY29uZmlnPy5jYXBzdWxlQ29uZmlnPy5kaXNwbGF5RmllbGQpIHtcclxuICAgICAgcmV0dXJuICcnO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIHJvd1t0aGlzLmNvbmZpZy5jYXBzdWxlQ29uZmlnLmRpc3BsYXlGaWVsZF07XHJcbiAgfVxyXG5cclxuICAvLyBDaGVjayBpY29uIHZpc2liaWxpdHkgY29uZGl0aW9uXHJcbiAgdGVzdEljb25Db25kaXRpb24ocm93OiBhbnksIGljb246IGFueSk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIHRoaXMuY29uZGl0aW9uU2VydmljZS50ZXN0SWNvbkNvbmRpdGlvbihpY29uLCByb3cpO1xyXG4gIH1cclxuXHJcbiAgLy8gSGFuZGxlIGJ1dHRvbiBjbGljayBmcm9tIG1lbnVcclxuICBvbkFjdGlvbkNsaWNrKGJ1dHRvbk5hbWU6IHN0cmluZywgcm93OiBhbnkpOiB2b2lkIHtcclxuICAgIHRoaXMuYWN0aW9uQ2xpY2suZW1pdCh7IG5hbWU6IGJ1dHRvbk5hbWUsIHJvdyB9KTtcclxuICB9XHJcblxyXG4gIC8vIEdldCBidXR0b24gY29sb3IgdXNpbmcgc2VydmljZVxyXG4gIGdldEJ1dHRvbkNvbG9yKGJ1dHRvbjogQnV0dG9uLCByb3c6IGFueSk6IHN0cmluZyB7XHJcbiAgICByZXR1cm4gdGhpcy5idXR0b25TZXJ2aWNlLmdldEJ1dHRvbkNvbG9yKGJ1dHRvbiwgcm93KTtcclxuICB9XHJcblxyXG4gIC8vIEdldCBpY29uIGZvciBidXR0b24gdXNpbmcgc2VydmljZVxyXG4gIGdldEljb24oYnV0dG9uTmFtZTogc3RyaW5nKTogc3RyaW5nIHtcclxuICAgIHJldHVybiB0aGlzLmJ1dHRvblNlcnZpY2UuZ2V0SWNvbih0aGlzLmdldEJ1dHRvbihidXR0b25OYW1lKSwgdGhpcy5jb25maWcpO1xyXG4gIH1cclxuXHJcbiAgLy8gVGVzdCBpZiBidXR0b24gc2hvdWxkIGJlIGRpc2FibGVkXHJcbiAgdGVzdERpc2FibGVkKHJvdzogYW55LCBidXR0b25OYW1lOiBzdHJpbmcpOiBib29sZWFuIHtcclxuICAgIGNvbnN0IGJ1dHRvbiA9IHRoaXMuZ2V0QnV0dG9uKGJ1dHRvbk5hbWUpO1xyXG4gICAgcmV0dXJuIHRoaXMuYnV0dG9uU2VydmljZS50ZXN0RGlzYWJsZWQoYnV0dG9uLCByb3csIHRoaXMuY29uZmlnKTtcclxuICB9XHJcblxyXG4gIC8vIEdldCBidXR0b24gYnkgbmFtZVxyXG4gIHByaXZhdGUgZ2V0QnV0dG9uKG5hbWU6IHN0cmluZyk6IEJ1dHRvbiB8IG51bGwge1xyXG4gICAgcmV0dXJuIHRoaXMuZGlzcGxheWVkQnV0dG9ucz8uZmluZCh4ID0+IHgubmFtZSA9PT0gbmFtZSkgfHwgbnVsbDtcclxuICB9XHJcbn0iLCI8bWF0LWNoaXAtbGlzdD5cclxuICAgIDxtYXQtY2hpcCAqbmdGb3I9XCJsZXQgcm93IG9mIGRhdGFTb3VyY2VcIiBbbWF0TWVudVRyaWdnZXJGb3JdPVwiaXRlbU1lbnVcIiBbbWF0TWVudVRyaWdnZXJEYXRhXT1cIntpdGVtOiByb3d9XCI+XHJcbiAgICAgIDwhLS0gTGVmdCBpY29ucyAtLT5cclxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgaWNvbiBvZiBjb25maWcuY2Fwc3VsZUNvbmZpZz8ubGVmdEljb25zXCI+XHJcbiAgICAgICAgPG1hdC1pY29uICpuZ0lmPVwidGVzdEljb25Db25kaXRpb24ocm93LCBpY29uKVwiIFxyXG4gICAgICAgICAgICAgICAgICBbbmdTdHlsZV09XCJ7J2NvbG9yJzogaWNvbj8uY29sb3J9XCIgXHJcbiAgICAgICAgICAgICAgICAgIHN0eWxlPVwiZm9udC1zaXplOiAxOHB4OyBwYWRkaW5nLXRvcDogM3B4OyBtYXJnaW4tcmlnaHQ6IDVweDtcIj5cclxuICAgICAgICAgIHt7aWNvbi5uYW1lfX1cclxuICAgICAgICA8L21hdC1pY29uPlxyXG4gICAgICA8L25nLWNvbnRhaW5lcj5cclxuICBcclxuICAgICAgPCEtLSBEaXNwbGF5IHRleHQgLS0+XHJcbiAgICAgIDxsYWJlbCBzdHlsZT1cIm1hcmdpbi1yaWdodDogNXB4O1wiPnt7Z2V0RGlzcGxheVZhbHVlKHJvdyl9fTwvbGFiZWw+XHJcbiAgXHJcbiAgICAgIDwhLS0gUmlnaHQgaWNvbnMgLS0+XHJcbiAgICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IGljb24gb2YgY29uZmlnLmNhcHN1bGVDb25maWc/LnJpZ2h0SWNvbnNcIj5cclxuICAgICAgICA8bWF0LWljb24gKm5nSWY9XCJ0ZXN0SWNvbkNvbmRpdGlvbihyb3csIGljb24pXCIgXHJcbiAgICAgICAgICAgICAgICAgIFtuZ1N0eWxlXT1cInsnY29sb3InOiBpY29uPy5jb2xvcn1cIiBcclxuICAgICAgICAgICAgICAgICAgc3R5bGU9XCJmb250LXNpemU6IDE4cHg7IHBhZGRpbmctdG9wOiAzcHg7IG1hcmdpbi1sZWZ0OiA1cHg7XCI+XHJcbiAgICAgICAgICB7e2ljb24ubmFtZX19XHJcbiAgICAgICAgPC9tYXQtaWNvbj5cclxuICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICA8L21hdC1jaGlwPlxyXG48L21hdC1jaGlwLWxpc3Q+XHJcbiAgXHJcbiAgPCEtLSBDb250ZXh0IG1lbnUgLS0+XHJcbjxtYXQtbWVudSAjaXRlbU1lbnU9XCJtYXRNZW51XCI+XHJcbiAgICA8bmctdGVtcGxhdGUgbWF0TWVudUNvbnRlbnQgbGV0LWl0ZW09XCJpdGVtXCI+XHJcbiAgICAgIDxidXR0b24gbWF0LW1lbnUtaXRlbSAqbmdGb3I9XCJsZXQgYnV0dG9uIG9mIGJ1dHRvblNlcnZpY2UuZ2V0VmlzaWJsZUJ1dHRvbnMoZGlzcGxheWVkQnV0dG9ucywgaXRlbSwgY29uZmlnKVwiIFxyXG4gICAgICAgICAgICAgIFtkaXNhYmxlZF09XCJ0ZXN0RGlzYWJsZWQoaXRlbSwgYnV0dG9uLm5hbWUpXCJcclxuICAgICAgICAgICAgICAoY2xpY2spPVwib25BY3Rpb25DbGljayhidXR0b24ubmFtZSwgaXRlbSlcIj5cclxuICAgICAgICA8bWF0LWljb24gW25nU3R5bGVdPVwieydjb2xvcic6IGdldEJ1dHRvbkNvbG9yKGJ1dHRvbiwgaXRlbSl9XCI+XHJcbiAgICAgICAgICB7e2dldEljb24oYnV0dG9uLm5hbWUpfX1cclxuICAgICAgICA8L21hdC1pY29uPlxyXG4gICAgICAgIDxzcGFuPnt7YnV0dG9uLmRpc3BsYXkgfHwgKGJ1dHRvbi5uYW1lIHwgdGl0bGVjYXNlKX19PC9zcGFuPlxyXG4gICAgICA8L2J1dHRvbj5cclxuICAgIDwvbmctdGVtcGxhdGU+XHJcbjwvbWF0LW1lbnU+Il19
|
|
@@ -1,103 +0,0 @@
|
|
|
1
|
-
import { Component, EventEmitter, Input, Output } from '@angular/core';
|
|
2
|
-
import * as i0 from "@angular/core";
|
|
3
|
-
import * as i1 from "../../services/button.service";
|
|
4
|
-
import * as i2 from "../../services/condition.service";
|
|
5
|
-
import * as i3 from "@angular/common";
|
|
6
|
-
import * as i4 from "@angular/material/button";
|
|
7
|
-
import * as i5 from "@angular/material/icon";
|
|
8
|
-
import * as i6 from "@angular/material/card";
|
|
9
|
-
import * as i7 from "@angular/material/tooltip";
|
|
10
|
-
export class CardsComponent {
|
|
11
|
-
constructor(buttonService, conditionService) {
|
|
12
|
-
this.buttonService = buttonService;
|
|
13
|
-
this.conditionService = conditionService;
|
|
14
|
-
this.displayedButtons = [];
|
|
15
|
-
this.smallScreen = false;
|
|
16
|
-
this.actionClick = new EventEmitter();
|
|
17
|
-
this.columnClick = new EventEmitter();
|
|
18
|
-
this.showBannerEvent = new EventEmitter();
|
|
19
|
-
}
|
|
20
|
-
// Get title value for a card
|
|
21
|
-
getTitleValue(row) {
|
|
22
|
-
const titleField = this.config?.cardConfig?.titleField;
|
|
23
|
-
return titleField ? row[titleField] : '';
|
|
24
|
-
}
|
|
25
|
-
// Get subtitle value for a card
|
|
26
|
-
getSubtitleValue(row) {
|
|
27
|
-
const subtitleField = this.config?.cardConfig?.subtitleField;
|
|
28
|
-
return subtitleField ? row[subtitleField] : '';
|
|
29
|
-
}
|
|
30
|
-
// Get content values for a card
|
|
31
|
-
getContentValues(row) {
|
|
32
|
-
const contentFields = this.config?.cardConfig?.contentFields || [];
|
|
33
|
-
return contentFields.map(field => {
|
|
34
|
-
const column = this.config.columns.find(col => col.name === field);
|
|
35
|
-
return {
|
|
36
|
-
label: column?.alias || field,
|
|
37
|
-
value: row[field]
|
|
38
|
-
};
|
|
39
|
-
});
|
|
40
|
-
}
|
|
41
|
-
// Handle button click from menu
|
|
42
|
-
onActionClick(buttonName, row) {
|
|
43
|
-
this.actionClick.emit({ name: buttonName, row });
|
|
44
|
-
}
|
|
45
|
-
// Get color for button
|
|
46
|
-
getButtonColor(button, row) {
|
|
47
|
-
return this.buttonService.getButtonColor(button, row);
|
|
48
|
-
}
|
|
49
|
-
// Get icon for button
|
|
50
|
-
getIcon(buttonName) {
|
|
51
|
-
return this.buttonService.getIcon(this.getButton(buttonName), this.config);
|
|
52
|
-
}
|
|
53
|
-
// Test if button should be disabled
|
|
54
|
-
testDisabled(row, buttonName) {
|
|
55
|
-
const button = this.getButton(buttonName);
|
|
56
|
-
return this.buttonService.testDisabled(button, row, this.config);
|
|
57
|
-
}
|
|
58
|
-
// Test if button should be visible
|
|
59
|
-
testVisible(row, buttonName) {
|
|
60
|
-
const button = this.getButton(buttonName);
|
|
61
|
-
return this.buttonService.testVisible(button, row, this.config);
|
|
62
|
-
}
|
|
63
|
-
// Get elevation class based on config
|
|
64
|
-
getElevationClass() {
|
|
65
|
-
const elevation = this.config?.cardConfig?.elevation || 'medium';
|
|
66
|
-
switch (elevation) {
|
|
67
|
-
case 'low': return 'mat-elevation-z1';
|
|
68
|
-
case 'high': return 'mat-elevation-z8';
|
|
69
|
-
default: return 'mat-elevation-z4';
|
|
70
|
-
}
|
|
71
|
-
}
|
|
72
|
-
// Get number of columns for grid
|
|
73
|
-
getColumnCount() {
|
|
74
|
-
if (this.smallScreen)
|
|
75
|
-
return 1;
|
|
76
|
-
return this.config?.cardConfig?.columns || 3;
|
|
77
|
-
}
|
|
78
|
-
// Get button by name
|
|
79
|
-
getButton(name) {
|
|
80
|
-
return this.displayedButtons?.find(x => x.name === name) || null;
|
|
81
|
-
}
|
|
82
|
-
}
|
|
83
|
-
CardsComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: CardsComponent, deps: [{ token: i1.ButtonService }, { token: i2.ConditionService }], target: i0.ɵɵFactoryTarget.Component });
|
|
84
|
-
CardsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: CardsComponent, selector: "spa-cards", inputs: { config: "config", dataSource: "dataSource", displayedButtons: "displayedButtons", smallScreen: "smallScreen" }, outputs: { actionClick: "actionClick", columnClick: "columnClick", showBannerEvent: "showBannerEvent" }, ngImport: i0, template: "<div class=\"cards-container\" [style.grid-template-columns]=\"'repeat(' + getColumnCount() + ', 1fr)'\">\r\n <mat-card *ngFor=\"let row of dataSource\" [class]=\"getElevationClass()\" class=\"card-item\">\r\n <mat-card-header>\r\n <mat-card-title>{{getTitleValue(row)}}</mat-card-title>\r\n <mat-card-subtitle *ngIf=\"getSubtitleValue(row)\">{{getSubtitleValue(row)}}</mat-card-subtitle>\r\n </mat-card-header>\r\n \r\n <mat-card-content>\r\n <div class=\"content-item\" *ngFor=\"let content of getContentValues(row)\">\r\n <span class=\"label\">{{content.label}}:</span>\r\n <span class=\"value\">{{content.value}}</span>\r\n </div>\r\n </mat-card-content>\r\n \r\n <mat-card-actions align=\"end\">\r\n <ng-container *ngFor=\"let button of displayedButtons\">\r\n <button *ngIf=\"!config.flatButtons && testVisible(row, button.name)\" \r\n mat-mini-fab\r\n [matTooltip]=\"button.tip ?? button.name | titlecase\"\r\n matTooltipPosition=\"above\"\r\n [ngStyle]=\"{'background-color': getButtonColor(button, row)}\"\r\n [disabled]=\"testDisabled(row, button.name)\"\r\n (click)=\"onActionClick(button.name, row)\">\r\n <mat-icon>{{getIcon(button.name)}}</mat-icon>\r\n </button>\r\n \r\n <button *ngIf=\"config.flatButtons && testVisible(row, button.name)\"\r\n mat-icon-button \r\n [matTooltip]=\"button.tip ?? button.name | titlecase\"\r\n matTooltipPosition=\"above\"\r\n [disabled]=\"testDisabled(row, button.name)\"\r\n (click)=\"onActionClick(button.name, row)\">\r\n <mat-icon [ngStyle]=\"{'color': getButtonColor(button, row)}\">{{getIcon(button.name)}}</mat-icon>\r\n </button>\r\n </ng-container>\r\n </mat-card-actions>\r\n </mat-card>\r\n </div>", styles: [".cards-container{display:grid;gap:20px;padding:20px}.card-item{height:100%;transition:transform .2s}.card-item:hover{transform:translateY(-5px)}.content-item{margin:8px 0;display:grid;grid-template-columns:minmax(33%,1fr) minmax(67%,2fr);gap:8px;align-items:baseline}.label{font-weight:500;color:#000000b3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.value{text-align:left;word-break:break-word}mat-card-actions{padding:16px;display:flex;gap:8px}.mat-mini-fab{width:32px;height:32px}.mat-mini-fab mat-icon{font-size:16px;margin-top:-3px}.mat-icon-button{width:32px;height:32px}.mat-icon-button mat-icon{font-size:20px;margin-top:-7px}\n"], dependencies: [{ kind: "directive", type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "component", type: i4.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i5.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i6.MatCard, selector: "mat-card", exportAs: ["matCard"] }, { kind: "component", type: i6.MatCardHeader, selector: "mat-card-header" }, { kind: "directive", type: i6.MatCardContent, selector: "mat-card-content, [mat-card-content], [matCardContent]" }, { kind: "directive", type: i6.MatCardTitle, selector: "mat-card-title, [mat-card-title], [matCardTitle]" }, { kind: "directive", type: i6.MatCardSubtitle, selector: "mat-card-subtitle, [mat-card-subtitle], [matCardSubtitle]" }, { kind: "directive", type: i6.MatCardActions, selector: "mat-card-actions", inputs: ["align"], exportAs: ["matCardActions"] }, { kind: "directive", type: i7.MatTooltip, selector: "[matTooltip]", exportAs: ["matTooltip"] }, { kind: "pipe", type: i3.TitleCasePipe, name: "titlecase" }] });
|
|
85
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: CardsComponent, decorators: [{
|
|
86
|
-
type: Component,
|
|
87
|
-
args: [{ selector: 'spa-cards', template: "<div class=\"cards-container\" [style.grid-template-columns]=\"'repeat(' + getColumnCount() + ', 1fr)'\">\r\n <mat-card *ngFor=\"let row of dataSource\" [class]=\"getElevationClass()\" class=\"card-item\">\r\n <mat-card-header>\r\n <mat-card-title>{{getTitleValue(row)}}</mat-card-title>\r\n <mat-card-subtitle *ngIf=\"getSubtitleValue(row)\">{{getSubtitleValue(row)}}</mat-card-subtitle>\r\n </mat-card-header>\r\n \r\n <mat-card-content>\r\n <div class=\"content-item\" *ngFor=\"let content of getContentValues(row)\">\r\n <span class=\"label\">{{content.label}}:</span>\r\n <span class=\"value\">{{content.value}}</span>\r\n </div>\r\n </mat-card-content>\r\n \r\n <mat-card-actions align=\"end\">\r\n <ng-container *ngFor=\"let button of displayedButtons\">\r\n <button *ngIf=\"!config.flatButtons && testVisible(row, button.name)\" \r\n mat-mini-fab\r\n [matTooltip]=\"button.tip ?? button.name | titlecase\"\r\n matTooltipPosition=\"above\"\r\n [ngStyle]=\"{'background-color': getButtonColor(button, row)}\"\r\n [disabled]=\"testDisabled(row, button.name)\"\r\n (click)=\"onActionClick(button.name, row)\">\r\n <mat-icon>{{getIcon(button.name)}}</mat-icon>\r\n </button>\r\n \r\n <button *ngIf=\"config.flatButtons && testVisible(row, button.name)\"\r\n mat-icon-button \r\n [matTooltip]=\"button.tip ?? button.name | titlecase\"\r\n matTooltipPosition=\"above\"\r\n [disabled]=\"testDisabled(row, button.name)\"\r\n (click)=\"onActionClick(button.name, row)\">\r\n <mat-icon [ngStyle]=\"{'color': getButtonColor(button, row)}\">{{getIcon(button.name)}}</mat-icon>\r\n </button>\r\n </ng-container>\r\n </mat-card-actions>\r\n </mat-card>\r\n </div>", styles: [".cards-container{display:grid;gap:20px;padding:20px}.card-item{height:100%;transition:transform .2s}.card-item:hover{transform:translateY(-5px)}.content-item{margin:8px 0;display:grid;grid-template-columns:minmax(33%,1fr) minmax(67%,2fr);gap:8px;align-items:baseline}.label{font-weight:500;color:#000000b3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.value{text-align:left;word-break:break-word}mat-card-actions{padding:16px;display:flex;gap:8px}.mat-mini-fab{width:32px;height:32px}.mat-mini-fab mat-icon{font-size:16px;margin-top:-3px}.mat-icon-button{width:32px;height:32px}.mat-icon-button mat-icon{font-size:20px;margin-top:-7px}\n"] }]
|
|
88
|
-
}], ctorParameters: function () { return [{ type: i1.ButtonService }, { type: i2.ConditionService }]; }, propDecorators: { config: [{
|
|
89
|
-
type: Input
|
|
90
|
-
}], dataSource: [{
|
|
91
|
-
type: Input
|
|
92
|
-
}], displayedButtons: [{
|
|
93
|
-
type: Input
|
|
94
|
-
}], smallScreen: [{
|
|
95
|
-
type: Input
|
|
96
|
-
}], actionClick: [{
|
|
97
|
-
type: Output
|
|
98
|
-
}], columnClick: [{
|
|
99
|
-
type: Output
|
|
100
|
-
}], showBannerEvent: [{
|
|
101
|
-
type: Output
|
|
102
|
-
}] } });
|
|
103
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FyZHMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdGluLXNwYS9zcmMvbGliL2NvbXBvbmVudHMvY2FyZHMvY2FyZHMuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdGluLXNwYS9zcmMvbGliL2NvbXBvbmVudHMvY2FyZHMvY2FyZHMuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQzs7Ozs7Ozs7O0FBVXZFLE1BQU0sT0FBTyxjQUFjO0lBQ3pCLFlBQ1MsYUFBNEIsRUFDM0IsZ0JBQWtDO1FBRG5DLGtCQUFhLEdBQWIsYUFBYSxDQUFlO1FBQzNCLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBa0I7UUFLbkMscUJBQWdCLEdBQWEsRUFBRSxDQUFDO1FBQ2hDLGdCQUFXLEdBQUcsS0FBSyxDQUFDO1FBRW5CLGdCQUFXLEdBQUcsSUFBSSxZQUFZLEVBQTRCLENBQUM7UUFDM0QsZ0JBQVcsR0FBRyxJQUFJLFlBQVksRUFBMkIsQ0FBQztRQUMxRCxvQkFBZSxHQUFHLElBQUksWUFBWSxFQUFVLENBQUM7SUFUcEQsQ0FBQztJQVdKLDZCQUE2QjtJQUM3QixhQUFhLENBQUMsR0FBUTtRQUNwQixNQUFNLFVBQVUsR0FBRyxJQUFJLENBQUMsTUFBTSxFQUFFLFVBQVUsRUFBRSxVQUFVLENBQUM7UUFDdkQsT0FBTyxVQUFVLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO0lBQzNDLENBQUM7SUFFRCxnQ0FBZ0M7SUFDaEMsZ0JBQWdCLENBQUMsR0FBUTtRQUN2QixNQUFNLGFBQWEsR0FBRyxJQUFJLENBQUMsTUFBTSxFQUFFLFVBQVUsRUFBRSxhQUFhLENBQUM7UUFDN0QsT0FBTyxhQUFhLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxhQUFhLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO0lBQ2pELENBQUM7SUFFRCxnQ0FBZ0M7SUFDaEMsZ0JBQWdCLENBQUMsR0FBUTtRQUN2QixNQUFNLGFBQWEsR0FBRyxJQUFJLENBQUMsTUFBTSxFQUFFLFVBQVUsRUFBRSxhQUFhLElBQUksRUFBRSxDQUFDO1FBQ25FLE9BQU8sYUFBYSxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsRUFBRTtZQUMvQixNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLENBQUMsSUFBSSxLQUFLLEtBQUssQ0FBQyxDQUFDO1lBQ25FLE9BQU87Z0JBQ0wsS0FBSyxFQUFFLE1BQU0sRUFBRSxLQUFLLElBQUksS0FBSztnQkFDN0IsS0FBSyxFQUFFLEdBQUcsQ0FBQyxLQUFLLENBQUM7YUFDbEIsQ0FBQztRQUNKLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELGdDQUFnQztJQUNoQyxhQUFhLENBQUMsVUFBa0IsRUFBRSxHQUFRO1FBQ3hDLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLEVBQUUsSUFBSSxFQUFFLFVBQVUsRUFBRSxHQUFHLEVBQUUsQ0FBQyxDQUFDO0lBQ25ELENBQUM7SUFFRCx1QkFBdUI7SUFDdkIsY0FBYyxDQUFDLE1BQWMsRUFBRSxHQUFRO1FBQ3JDLE9BQU8sSUFBSSxDQUFDLGFBQWEsQ0FBQyxjQUFjLENBQUMsTUFBTSxFQUFFLEdBQUcsQ0FBQyxDQUFDO0lBQ3hELENBQUM7SUFFRCxzQkFBc0I7SUFDdEIsT0FBTyxDQUFDLFVBQWtCO1FBQ3hCLE9BQU8sSUFBSSxDQUFDLGFBQWEsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxVQUFVLENBQUMsRUFBRSxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDN0UsQ0FBQztJQUVELG9DQUFvQztJQUNwQyxZQUFZLENBQUMsR0FBUSxFQUFFLFVBQWtCO1FBQ3ZDLE1BQU0sTUFBTSxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsVUFBVSxDQUFDLENBQUM7UUFDMUMsT0FBTyxJQUFJLENBQUMsYUFBYSxDQUFDLFlBQVksQ0FBQyxNQUFNLEVBQUUsR0FBRyxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUNuRSxDQUFDO0lBRUQsbUNBQW1DO0lBQ25DLFdBQVcsQ0FBQyxHQUFRLEVBQUUsVUFBa0I7UUFDdEMsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUMxQyxPQUFPLElBQUksQ0FBQyxhQUFhLENBQUMsV0FBVyxDQUFDLE1BQU0sRUFBRSxHQUFHLEVBQUUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQ2xFLENBQUM7SUFFRCxzQ0FBc0M7SUFDdEMsaUJBQWlCO1FBQ2YsTUFBTSxTQUFTLEdBQUcsSUFBSSxDQUFDLE1BQU0sRUFBRSxVQUFVLEVBQUUsU0FBUyxJQUFJLFFBQVEsQ0FBQztRQUNqRSxRQUFPLFNBQVMsRUFBRTtZQUNoQixLQUFLLEtBQUssQ0FBQyxDQUFDLE9BQU8sa0JBQWtCLENBQUM7WUFDdEMsS0FBSyxNQUFNLENBQUMsQ0FBQyxPQUFPLGtCQUFrQixDQUFDO1lBQ3ZDLE9BQU8sQ0FBQyxDQUFDLE9BQU8sa0JBQWtCLENBQUM7U0FDcEM7SUFDSCxDQUFDO0lBRUQsaUNBQWlDO0lBQ2pDLGNBQWM7UUFDWixJQUFJLElBQUksQ0FBQyxXQUFXO1lBQUUsT0FBTyxDQUFDLENBQUM7UUFDL0IsT0FBTyxJQUFJLENBQUMsTUFBTSxFQUFFLFVBQVUsRUFBRSxPQUFPLElBQUksQ0FBQyxDQUFDO0lBQy9DLENBQUM7SUFFRCxxQkFBcUI7SUFDYixTQUFTLENBQUMsSUFBWTtRQUM1QixPQUFPLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxLQUFLLElBQUksQ0FBQyxJQUFJLElBQUksQ0FBQztJQUNuRSxDQUFDOzsyR0FyRlUsY0FBYzsrRkFBZCxjQUFjLG9SQ1YzQixtOURBcUNROzJGRDNCSyxjQUFjO2tCQUwxQixTQUFTOytCQUNFLFdBQVc7bUlBVVosTUFBTTtzQkFBZCxLQUFLO2dCQUNHLFVBQVU7c0JBQWxCLEtBQUs7Z0JBQ0csZ0JBQWdCO3NCQUF4QixLQUFLO2dCQUNHLFdBQVc7c0JBQW5CLEtBQUs7Z0JBRUksV0FBVztzQkFBcEIsTUFBTTtnQkFDRyxXQUFXO3NCQUFwQixNQUFNO2dCQUNHLGVBQWU7c0JBQXhCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBCdXR0b24sIFRhYmxlQ29uZmlnIH0gZnJvbSAnLi4vLi4vY2xhc3Nlcy9DbGFzc2VzJztcclxuaW1wb3J0IHsgQnV0dG9uU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL2J1dHRvbi5zZXJ2aWNlJztcclxuaW1wb3J0IHsgQ29uZGl0aW9uU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL2NvbmRpdGlvbi5zZXJ2aWNlJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnc3BhLWNhcmRzJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vY2FyZHMuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL2NhcmRzLmNvbXBvbmVudC5jc3MnXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgQ2FyZHNDb21wb25lbnQge1xyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHVibGljIGJ1dHRvblNlcnZpY2U6IEJ1dHRvblNlcnZpY2UsXHJcbiAgICBwcml2YXRlIGNvbmRpdGlvblNlcnZpY2U6IENvbmRpdGlvblNlcnZpY2VcclxuICApIHt9XHJcblxyXG4gIEBJbnB1dCgpIGNvbmZpZzogVGFibGVDb25maWc7XHJcbiAgQElucHV0KCkgZGF0YVNvdXJjZTogYW55W107XHJcbiAgQElucHV0KCkgZGlzcGxheWVkQnV0dG9uczogQnV0dG9uW10gPSBbXTtcclxuICBASW5wdXQoKSBzbWFsbFNjcmVlbiA9IGZhbHNlO1xyXG5cclxuICBAT3V0cHV0KCkgYWN0aW9uQ2xpY2sgPSBuZXcgRXZlbnRFbWl0dGVyPHtuYW1lOiBzdHJpbmcsIHJvdzogYW55fT4oKTtcclxuICBAT3V0cHV0KCkgY29sdW1uQ2xpY2sgPSBuZXcgRXZlbnRFbWl0dGVyPHtjb2x1bW46IGFueSwgcm93OiBhbnl9PigpO1xyXG4gIEBPdXRwdXQoKSBzaG93QmFubmVyRXZlbnQgPSBuZXcgRXZlbnRFbWl0dGVyPHN0cmluZz4oKTtcclxuXHJcbiAgLy8gR2V0IHRpdGxlIHZhbHVlIGZvciBhIGNhcmRcclxuICBnZXRUaXRsZVZhbHVlKHJvdzogYW55KTogc3RyaW5nIHtcclxuICAgIGNvbnN0IHRpdGxlRmllbGQgPSB0aGlzLmNvbmZpZz8uY2FyZENvbmZpZz8udGl0bGVGaWVsZDtcclxuICAgIHJldHVybiB0aXRsZUZpZWxkID8gcm93W3RpdGxlRmllbGRdIDogJyc7XHJcbiAgfVxyXG5cclxuICAvLyBHZXQgc3VidGl0bGUgdmFsdWUgZm9yIGEgY2FyZFxyXG4gIGdldFN1YnRpdGxlVmFsdWUocm93OiBhbnkpOiBzdHJpbmcge1xyXG4gICAgY29uc3Qgc3VidGl0bGVGaWVsZCA9IHRoaXMuY29uZmlnPy5jYXJkQ29uZmlnPy5zdWJ0aXRsZUZpZWxkO1xyXG4gICAgcmV0dXJuIHN1YnRpdGxlRmllbGQgPyByb3dbc3VidGl0bGVGaWVsZF0gOiAnJztcclxuICB9XHJcblxyXG4gIC8vIEdldCBjb250ZW50IHZhbHVlcyBmb3IgYSBjYXJkXHJcbiAgZ2V0Q29udGVudFZhbHVlcyhyb3c6IGFueSk6IHtsYWJlbDogc3RyaW5nLCB2YWx1ZTogYW55fVtdIHtcclxuICAgIGNvbnN0IGNvbnRlbnRGaWVsZHMgPSB0aGlzLmNvbmZpZz8uY2FyZENvbmZpZz8uY29udGVudEZpZWxkcyB8fCBbXTtcclxuICAgIHJldHVybiBjb250ZW50RmllbGRzLm1hcChmaWVsZCA9PiB7XHJcbiAgICAgIGNvbnN0IGNvbHVtbiA9IHRoaXMuY29uZmlnLmNvbHVtbnMuZmluZChjb2wgPT4gY29sLm5hbWUgPT09IGZpZWxkKTtcclxuICAgICAgcmV0dXJuIHtcclxuICAgICAgICBsYWJlbDogY29sdW1uPy5hbGlhcyB8fCBmaWVsZCxcclxuICAgICAgICB2YWx1ZTogcm93W2ZpZWxkXVxyXG4gICAgICB9O1xyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICAvLyBIYW5kbGUgYnV0dG9uIGNsaWNrIGZyb20gbWVudVxyXG4gIG9uQWN0aW9uQ2xpY2soYnV0dG9uTmFtZTogc3RyaW5nLCByb3c6IGFueSk6IHZvaWQge1xyXG4gICAgdGhpcy5hY3Rpb25DbGljay5lbWl0KHsgbmFtZTogYnV0dG9uTmFtZSwgcm93IH0pO1xyXG4gIH1cclxuXHJcbiAgLy8gR2V0IGNvbG9yIGZvciBidXR0b25cclxuICBnZXRCdXR0b25Db2xvcihidXR0b246IEJ1dHRvbiwgcm93OiBhbnkpOiBzdHJpbmcge1xyXG4gICAgcmV0dXJuIHRoaXMuYnV0dG9uU2VydmljZS5nZXRCdXR0b25Db2xvcihidXR0b24sIHJvdyk7XHJcbiAgfVxyXG5cclxuICAvLyBHZXQgaWNvbiBmb3IgYnV0dG9uXHJcbiAgZ2V0SWNvbihidXR0b25OYW1lOiBzdHJpbmcpOiBzdHJpbmcge1xyXG4gICAgcmV0dXJuIHRoaXMuYnV0dG9uU2VydmljZS5nZXRJY29uKHRoaXMuZ2V0QnV0dG9uKGJ1dHRvbk5hbWUpLCB0aGlzLmNvbmZpZyk7XHJcbiAgfVxyXG5cclxuICAvLyBUZXN0IGlmIGJ1dHRvbiBzaG91bGQgYmUgZGlzYWJsZWRcclxuICB0ZXN0RGlzYWJsZWQocm93OiBhbnksIGJ1dHRvbk5hbWU6IHN0cmluZyk6IGJvb2xlYW4ge1xyXG4gICAgY29uc3QgYnV0dG9uID0gdGhpcy5nZXRCdXR0b24oYnV0dG9uTmFtZSk7XHJcbiAgICByZXR1cm4gdGhpcy5idXR0b25TZXJ2aWNlLnRlc3REaXNhYmxlZChidXR0b24sIHJvdywgdGhpcy5jb25maWcpO1xyXG4gIH1cclxuXHJcbiAgLy8gVGVzdCBpZiBidXR0b24gc2hvdWxkIGJlIHZpc2libGVcclxuICB0ZXN0VmlzaWJsZShyb3c6IGFueSwgYnV0dG9uTmFtZTogc3RyaW5nKTogYm9vbGVhbiB7XHJcbiAgICBjb25zdCBidXR0b24gPSB0aGlzLmdldEJ1dHRvbihidXR0b25OYW1lKTtcclxuICAgIHJldHVybiB0aGlzLmJ1dHRvblNlcnZpY2UudGVzdFZpc2libGUoYnV0dG9uLCByb3csIHRoaXMuY29uZmlnKTtcclxuICB9XHJcblxyXG4gIC8vIEdldCBlbGV2YXRpb24gY2xhc3MgYmFzZWQgb24gY29uZmlnXHJcbiAgZ2V0RWxldmF0aW9uQ2xhc3MoKTogc3RyaW5nIHtcclxuICAgIGNvbnN0IGVsZXZhdGlvbiA9IHRoaXMuY29uZmlnPy5jYXJkQ29uZmlnPy5lbGV2YXRpb24gfHwgJ21lZGl1bSc7XHJcbiAgICBzd2l0Y2goZWxldmF0aW9uKSB7XHJcbiAgICAgIGNhc2UgJ2xvdyc6IHJldHVybiAnbWF0LWVsZXZhdGlvbi16MSc7XHJcbiAgICAgIGNhc2UgJ2hpZ2gnOiByZXR1cm4gJ21hdC1lbGV2YXRpb24tejgnO1xyXG4gICAgICBkZWZhdWx0OiByZXR1cm4gJ21hdC1lbGV2YXRpb24tejQnO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLy8gR2V0IG51bWJlciBvZiBjb2x1bW5zIGZvciBncmlkXHJcbiAgZ2V0Q29sdW1uQ291bnQoKTogbnVtYmVyIHtcclxuICAgIGlmICh0aGlzLnNtYWxsU2NyZWVuKSByZXR1cm4gMTtcclxuICAgIHJldHVybiB0aGlzLmNvbmZpZz8uY2FyZENvbmZpZz8uY29sdW1ucyB8fCAzO1xyXG4gIH1cclxuXHJcbiAgLy8gR2V0IGJ1dHRvbiBieSBuYW1lXHJcbiAgcHJpdmF0ZSBnZXRCdXR0b24obmFtZTogc3RyaW5nKTogQnV0dG9uIHwgbnVsbCB7XHJcbiAgICByZXR1cm4gdGhpcy5kaXNwbGF5ZWRCdXR0b25zPy5maW5kKHggPT4geC5uYW1lID09PSBuYW1lKSB8fCBudWxsO1xyXG4gIH1cclxufSIsIjxkaXYgY2xhc3M9XCJjYXJkcy1jb250YWluZXJcIiBbc3R5bGUuZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zXT1cIidyZXBlYXQoJyArIGdldENvbHVtbkNvdW50KCkgKyAnLCAxZnIpJ1wiPlxyXG4gICAgPG1hdC1jYXJkICpuZ0Zvcj1cImxldCByb3cgb2YgZGF0YVNvdXJjZVwiIFtjbGFzc109XCJnZXRFbGV2YXRpb25DbGFzcygpXCIgY2xhc3M9XCJjYXJkLWl0ZW1cIj5cclxuICAgICAgPG1hdC1jYXJkLWhlYWRlcj5cclxuICAgICAgICA8bWF0LWNhcmQtdGl0bGU+e3tnZXRUaXRsZVZhbHVlKHJvdyl9fTwvbWF0LWNhcmQtdGl0bGU+XHJcbiAgICAgICAgPG1hdC1jYXJkLXN1YnRpdGxlICpuZ0lmPVwiZ2V0U3VidGl0bGVWYWx1ZShyb3cpXCI+e3tnZXRTdWJ0aXRsZVZhbHVlKHJvdyl9fTwvbWF0LWNhcmQtc3VidGl0bGU+XHJcbiAgICAgIDwvbWF0LWNhcmQtaGVhZGVyPlxyXG4gIFxyXG4gICAgICA8bWF0LWNhcmQtY29udGVudD5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiY29udGVudC1pdGVtXCIgKm5nRm9yPVwibGV0IGNvbnRlbnQgb2YgZ2V0Q29udGVudFZhbHVlcyhyb3cpXCI+XHJcbiAgICAgICAgICA8c3BhbiBjbGFzcz1cImxhYmVsXCI+e3tjb250ZW50LmxhYmVsfX06PC9zcGFuPlxyXG4gICAgICAgICAgPHNwYW4gY2xhc3M9XCJ2YWx1ZVwiPnt7Y29udGVudC52YWx1ZX19PC9zcGFuPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICA8L21hdC1jYXJkLWNvbnRlbnQ+XHJcbiAgXHJcbiAgICAgIDxtYXQtY2FyZC1hY3Rpb25zIGFsaWduPVwiZW5kXCI+XHJcbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgYnV0dG9uIG9mIGRpc3BsYXllZEJ1dHRvbnNcIj5cclxuICAgICAgICAgIDxidXR0b24gKm5nSWY9XCIhY29uZmlnLmZsYXRCdXR0b25zICYmIHRlc3RWaXNpYmxlKHJvdywgYnV0dG9uLm5hbWUpXCIgXHJcbiAgICAgICAgICAgICAgICAgIG1hdC1taW5pLWZhYlxyXG4gICAgICAgICAgICAgICAgICBbbWF0VG9vbHRpcF09XCJidXR0b24udGlwID8/IGJ1dHRvbi5uYW1lIHwgdGl0bGVjYXNlXCJcclxuICAgICAgICAgICAgICAgICAgbWF0VG9vbHRpcFBvc2l0aW9uPVwiYWJvdmVcIlxyXG4gICAgICAgICAgICAgICAgICBbbmdTdHlsZV09XCJ7J2JhY2tncm91bmQtY29sb3InOiBnZXRCdXR0b25Db2xvcihidXR0b24sIHJvdyl9XCJcclxuICAgICAgICAgICAgICAgICAgW2Rpc2FibGVkXT1cInRlc3REaXNhYmxlZChyb3csIGJ1dHRvbi5uYW1lKVwiXHJcbiAgICAgICAgICAgICAgICAgIChjbGljayk9XCJvbkFjdGlvbkNsaWNrKGJ1dHRvbi5uYW1lLCByb3cpXCI+XHJcbiAgICAgICAgICAgIDxtYXQtaWNvbj57e2dldEljb24oYnV0dG9uLm5hbWUpfX08L21hdC1pY29uPlxyXG4gICAgICAgICAgPC9idXR0b24+XHJcbiAgXHJcbiAgICAgICAgICA8YnV0dG9uICpuZ0lmPVwiY29uZmlnLmZsYXRCdXR0b25zICYmIHRlc3RWaXNpYmxlKHJvdywgYnV0dG9uLm5hbWUpXCJcclxuICAgICAgICAgICAgICAgICAgbWF0LWljb24tYnV0dG9uIFxyXG4gICAgICAgICAgICAgICAgICBbbWF0VG9vbHRpcF09XCJidXR0b24udGlwID8/IGJ1dHRvbi5uYW1lIHwgdGl0bGVjYXNlXCJcclxuICAgICAgICAgICAgICAgICAgbWF0VG9vbHRpcFBvc2l0aW9uPVwiYWJvdmVcIlxyXG4gICAgICAgICAgICAgICAgICBbZGlzYWJsZWRdPVwidGVzdERpc2FibGVkKHJvdywgYnV0dG9uLm5hbWUpXCJcclxuICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cIm9uQWN0aW9uQ2xpY2soYnV0dG9uLm5hbWUsIHJvdylcIj5cclxuICAgICAgICAgICAgPG1hdC1pY29uIFtuZ1N0eWxlXT1cInsnY29sb3InOiBnZXRCdXR0b25Db2xvcihidXR0b24sIHJvdyl9XCI+e3tnZXRJY29uKGJ1dHRvbi5uYW1lKX19PC9tYXQtaWNvbj5cclxuICAgICAgICAgIDwvYnV0dG9uPlxyXG4gICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICA8L21hdC1jYXJkLWFjdGlvbnM+XHJcbiAgICA8L21hdC1jYXJkPlxyXG4gIDwvZGl2PiJdfQ==
|
|
@@ -1,34 +0,0 @@
|
|
|
1
|
-
import { Component, Input } from '@angular/core';
|
|
2
|
-
import * as i0 from "@angular/core";
|
|
3
|
-
import * as i1 from "@angular/platform-browser";
|
|
4
|
-
import * as i2 from "@angular/common";
|
|
5
|
-
export class HtmlComponent {
|
|
6
|
-
constructor(sanitizer) {
|
|
7
|
-
this.sanitizer = sanitizer;
|
|
8
|
-
this.value = '';
|
|
9
|
-
this.maxHeight = '500px'; // Default maximum height
|
|
10
|
-
this.display = ''; // For consistency with other components
|
|
11
|
-
}
|
|
12
|
-
ngOnInit() {
|
|
13
|
-
this.sanitizeHtml();
|
|
14
|
-
}
|
|
15
|
-
ngOnChanges() {
|
|
16
|
-
this.sanitizeHtml();
|
|
17
|
-
}
|
|
18
|
-
sanitizeHtml() {
|
|
19
|
-
this.sanitizedHtml = this.sanitizer.bypassSecurityTrustHtml(this.value);
|
|
20
|
-
}
|
|
21
|
-
}
|
|
22
|
-
HtmlComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: HtmlComponent, deps: [{ token: i1.DomSanitizer }], target: i0.ɵɵFactoryTarget.Component });
|
|
23
|
-
HtmlComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: HtmlComponent, selector: "spa-html", inputs: { value: "value", maxHeight: "maxHeight", display: "display" }, usesOnChanges: true, ngImport: i0, template: "<div *ngIf=\"display\" class=\"html-label\">{{display}}</div>\r\n<div class=\"html-container\" [ngStyle]=\"{'max-height': maxHeight}\">\r\n <div class=\"html-content\" [innerHTML]=\"sanitizedHtml\"></div>\r\n</div>", styles: [".html-container{width:100%;overflow-y:auto;border:1px solid #e0e0e0;border-radius:4px;padding:8px;background-color:#fafafa}.html-content{width:100%}.html-label{font-weight:500;margin-bottom:5px}\n"], dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }] });
|
|
24
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: HtmlComponent, decorators: [{
|
|
25
|
-
type: Component,
|
|
26
|
-
args: [{ selector: 'spa-html', template: "<div *ngIf=\"display\" class=\"html-label\">{{display}}</div>\r\n<div class=\"html-container\" [ngStyle]=\"{'max-height': maxHeight}\">\r\n <div class=\"html-content\" [innerHTML]=\"sanitizedHtml\"></div>\r\n</div>", styles: [".html-container{width:100%;overflow-y:auto;border:1px solid #e0e0e0;border-radius:4px;padding:8px;background-color:#fafafa}.html-content{width:100%}.html-label{font-weight:500;margin-bottom:5px}\n"] }]
|
|
27
|
-
}], ctorParameters: function () { return [{ type: i1.DomSanitizer }]; }, propDecorators: { value: [{
|
|
28
|
-
type: Input
|
|
29
|
-
}], maxHeight: [{
|
|
30
|
-
type: Input
|
|
31
|
-
}], display: [{
|
|
32
|
-
type: Input
|
|
33
|
-
}] } });
|
|
34
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaHRtbC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90aW4tc3BhL3NyYy9saWIvY29tcG9uZW50cy9odG1sL2h0bWwuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdGluLXNwYS9zcmMvbGliL2NvbXBvbmVudHMvaHRtbC9odG1sLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFVLE1BQU0sZUFBZSxDQUFDOzs7O0FBUXpELE1BQU0sT0FBTyxhQUFhO0lBQ3hCLFlBQW9CLFNBQXVCO1FBQXZCLGNBQVMsR0FBVCxTQUFTLENBQWM7UUFVbEMsVUFBSyxHQUFHLEVBQUUsQ0FBQztRQUNYLGNBQVMsR0FBRyxPQUFPLENBQUMsQ0FBQyx5QkFBeUI7UUFDOUMsWUFBTyxHQUFHLEVBQUUsQ0FBQyxDQUFDLHdDQUF3QztJQVpoQixDQUFDO0lBRWhELFFBQVE7UUFDTixJQUFJLENBQUMsWUFBWSxFQUFFLENBQUM7SUFDdEIsQ0FBQztJQUVELFdBQVc7UUFDVCxJQUFJLENBQUMsWUFBWSxFQUFFLENBQUM7SUFDdEIsQ0FBQztJQVFPLFlBQVk7UUFDbEIsSUFBSSxDQUFDLGFBQWEsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLHVCQUF1QixDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUMxRSxDQUFDOzswR0FuQlUsYUFBYTs4RkFBYixhQUFhLDZJQ1IxQix5TkFHTTsyRkRLTyxhQUFhO2tCQUx6QixTQUFTOytCQUNFLFVBQVU7bUdBZVgsS0FBSztzQkFBYixLQUFLO2dCQUNHLFNBQVM7c0JBQWpCLEtBQUs7Z0JBQ0csT0FBTztzQkFBZixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IERvbVNhbml0aXplciwgU2FmZUh0bWwgfSBmcm9tICdAYW5ndWxhci9wbGF0Zm9ybS1icm93c2VyJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnc3BhLWh0bWwnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9odG1sLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9odG1sLmNvbXBvbmVudC5jc3MnXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgSHRtbENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSBzYW5pdGl6ZXI6IERvbVNhbml0aXplcikgeyB9XHJcblxyXG4gIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgdGhpcy5zYW5pdGl6ZUh0bWwoKTtcclxuICB9XHJcblxyXG4gIG5nT25DaGFuZ2VzKCk6IHZvaWQge1xyXG4gICAgdGhpcy5zYW5pdGl6ZUh0bWwoKTtcclxuICB9XHJcblxyXG4gIEBJbnB1dCgpIHZhbHVlID0gJyc7XHJcbiAgQElucHV0KCkgbWF4SGVpZ2h0ID0gJzUwMHB4JzsgLy8gRGVmYXVsdCBtYXhpbXVtIGhlaWdodFxyXG4gIEBJbnB1dCgpIGRpc3BsYXkgPSAnJzsgLy8gRm9yIGNvbnNpc3RlbmN5IHdpdGggb3RoZXIgY29tcG9uZW50c1xyXG5cclxuICBzYW5pdGl6ZWRIdG1sOiBTYWZlSHRtbDtcclxuXHJcbiAgcHJpdmF0ZSBzYW5pdGl6ZUh0bWwoKTogdm9pZCB7XHJcbiAgICB0aGlzLnNhbml0aXplZEh0bWwgPSB0aGlzLnNhbml0aXplci5ieXBhc3NTZWN1cml0eVRydXN0SHRtbCh0aGlzLnZhbHVlKTtcclxuICB9XHJcbn0iLCI8ZGl2ICpuZ0lmPVwiZGlzcGxheVwiIGNsYXNzPVwiaHRtbC1sYWJlbFwiPnt7ZGlzcGxheX19PC9kaXY+XHJcbjxkaXYgY2xhc3M9XCJodG1sLWNvbnRhaW5lclwiIFtuZ1N0eWxlXT1cInsnbWF4LWhlaWdodCc6IG1heEhlaWdodH1cIj5cclxuICA8ZGl2IGNsYXNzPVwiaHRtbC1jb250ZW50XCIgW2lubmVySFRNTF09XCJzYW5pdGl6ZWRIdG1sXCI+PC9kaXY+XHJcbjwvZGl2PiJdfQ==
|