tin-spa 14.4.2 → 14.10.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 +57 -32
- package/esm2020/lib/classes/LibClasses.mjs +2 -1
- package/esm2020/lib/classes/TinCore.mjs +194 -44
- package/esm2020/lib/components/alert/alert.component.mjs +12 -6
- package/esm2020/lib/components/attach/attach.component.mjs +49 -33
- package/esm2020/lib/components/capsules/capsules.component.mjs +63 -0
- package/esm2020/lib/components/cards/cards.component.mjs +103 -0
- package/esm2020/lib/components/date/date.component.mjs +4 -4
- package/esm2020/lib/components/email/email.component.mjs +19 -17
- package/esm2020/lib/components/form/form.component.mjs +142 -57
- package/esm2020/lib/components/html/html.component.mjs +34 -0
- package/esm2020/lib/components/label/label.component.mjs +6 -3
- package/esm2020/lib/components/list-dialog/list-dialog.component.mjs +3 -3
- package/esm2020/lib/components/money/money.component.mjs +26 -9
- package/esm2020/lib/components/multi-select/multi-select.component.mjs +165 -0
- package/esm2020/lib/components/multi-text/multi-text.component.mjs +208 -0
- package/esm2020/lib/components/nav-menu/nav-menu.component.mjs +31 -27
- package/esm2020/lib/components/notes/notes.component.mjs +62 -0
- package/esm2020/lib/components/number/number.component.mjs +23 -8
- package/esm2020/lib/components/option/option.component.mjs +36 -14
- package/esm2020/lib/components/page/page.component.mjs +101 -0
- package/esm2020/lib/components/search/search.component.mjs +10 -5
- package/esm2020/lib/components/select/select.component.mjs +56 -129
- package/esm2020/lib/components/select-bitwise/select-bitwise.component.mjs +87 -0
- package/esm2020/lib/components/select-common/select-common.component.mjs +189 -0
- package/esm2020/lib/components/select-internal/select-internal.component.mjs +75 -0
- package/esm2020/lib/components/select-lite/select-lite.component.mjs +18 -0
- package/esm2020/lib/components/steps/steps.component.mjs +83 -61
- package/esm2020/lib/components/suffix/suffix.component.mjs +70 -0
- package/esm2020/lib/components/table/detailsDialog.component.mjs +169 -37
- package/esm2020/lib/components/table/table.component.mjs +136 -111
- package/esm2020/lib/components/table-action/table-action.component.mjs +42 -8
- package/esm2020/lib/components/table-header/table-header.component.mjs +12 -8
- package/esm2020/lib/components/table-internal/detailsDialog-internal.component.mjs +169 -35
- package/esm2020/lib/components/table-internal/table-internal.component.mjs +138 -112
- package/esm2020/lib/components/table-lite/detailsDialog-lite.component.mjs +371 -0
- package/esm2020/lib/components/table-lite/table-lite.component.mjs +441 -0
- package/esm2020/lib/components/table-row/table-row.component.mjs +23 -4
- package/esm2020/lib/components/text/text.component.mjs +85 -40
- package/esm2020/lib/components/tiles/tiles.component.mjs +32 -20
- package/esm2020/lib/components/viewer/viewer.component.mjs +7 -3
- package/esm2020/lib/components/viewer/viewerDialog.component.mjs +20 -13
- package/esm2020/lib/modules/admin/admin-routing.module.mjs +11 -1
- package/esm2020/lib/pages/accounts/accountDialog.component.mjs +1 -1
- package/esm2020/lib/pages/app-models/app-models.component.mjs +56 -0
- package/esm2020/lib/pages/approvals/approvals.component.mjs +19 -0
- package/esm2020/lib/pages/approvals-config/approvals-config.component.mjs +165 -0
- 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 +9 -48
- package/esm2020/lib/pages/departments/departments.component.mjs +2 -4
- package/esm2020/lib/pages/employees/employees.component.mjs +3 -4
- 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-table/invitations-table.component.mjs +11 -10
- package/esm2020/lib/pages/login/login.component.mjs +52 -14
- package/esm2020/lib/pages/logs/logs.component.mjs +27 -22
- package/esm2020/lib/pages/membership/membership.component.mjs +15 -19
- package/esm2020/lib/pages/notifications/notifications.component.mjs +82 -6
- package/esm2020/lib/pages/notifications-config/notifications-config.component.mjs +113 -0
- package/esm2020/lib/pages/plans/plans.component.mjs +16 -19
- package/esm2020/lib/pages/positions/positions.component.mjs +4 -4
- package/esm2020/lib/pages/profile/profile.component.mjs +4 -3
- 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 +77 -17
- package/esm2020/lib/pages/settings/settings.component.mjs +2 -11
- package/esm2020/lib/pages/signup/signup.component.mjs +1 -1
- package/esm2020/lib/pages/suppliers/suppliers.component.mjs +3 -31
- package/esm2020/lib/pages/tasks/tasks.component.mjs +9 -9
- package/esm2020/lib/pages/tenant-settings/tenant-settings.component.mjs +145 -72
- 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 +115 -92
- package/esm2020/lib/pages/welcome/welcome.component.mjs +9 -9
- package/esm2020/lib/select-context.directive.mjs +23 -0
- package/esm2020/lib/services/button.service.mjs +90 -30
- package/esm2020/lib/services/csv.service.mjs +1 -1
- package/esm2020/lib/services/datalib.service.mjs +504 -76
- package/esm2020/lib/services/dialog.service.mjs +24 -7
- package/esm2020/lib/services/notifications.service.mjs +33 -0
- package/esm2020/lib/services/table-config.service.mjs +55 -7
- package/esm2020/lib/tin-spa.module.mjs +46 -11
- package/esm2020/public-api.mjs +8 -1
- package/fesm2015/tin-spa.mjs +6158 -2594
- package/fesm2015/tin-spa.mjs.map +1 -1
- package/fesm2020/tin-spa.mjs +6143 -2518
- package/fesm2020/tin-spa.mjs.map +1 -1
- package/lib/classes/Classes.d.ts +231 -127
- package/lib/classes/LibClasses.d.ts +1 -0
- package/lib/classes/TinCore.d.ts +11 -3
- package/lib/components/attach/attach.component.d.ts +13 -6
- package/lib/components/capsules/capsules.component.d.ts +26 -0
- package/lib/components/cards/cards.component.d.ts +39 -0
- package/lib/components/email/email.component.d.ts +4 -3
- package/lib/components/form/form.component.d.ts +20 -11
- package/lib/components/html/html.component.d.ts +16 -0
- package/lib/components/label/label.component.d.ts +2 -1
- package/lib/components/money/money.component.d.ts +8 -1
- package/lib/components/multi-select/multi-select.component.d.ts +47 -0
- package/lib/components/multi-text/multi-text.component.d.ts +56 -0
- package/lib/components/nav-menu/nav-menu.component.d.ts +6 -2
- package/lib/components/notes/notes.component.d.ts +19 -0
- package/lib/components/number/number.component.d.ts +7 -1
- package/lib/components/option/option.component.d.ts +10 -2
- package/lib/components/page/page.component.d.ts +38 -0
- package/lib/components/search/search.component.d.ts +3 -1
- package/lib/components/select/select.component.d.ts +16 -37
- package/lib/components/select-bitwise/select-bitwise.component.d.ts +31 -0
- package/lib/components/select-common/select-common.component.d.ts +50 -0
- package/lib/components/select-internal/select-internal.component.d.ts +23 -0
- package/lib/components/select-lite/select-lite.component.d.ts +8 -0
- package/lib/components/steps/steps.component.d.ts +18 -9
- package/lib/components/suffix/suffix.component.d.ts +23 -0
- package/lib/components/table/detailsDialog.component.d.ts +24 -7
- package/lib/components/table/table.component.d.ts +15 -9
- package/lib/components/table-action/table-action.component.d.ts +4 -1
- package/lib/components/table-header/table-header.component.d.ts +3 -1
- package/lib/components/table-internal/detailsDialog-internal.component.d.ts +24 -7
- package/lib/components/table-internal/table-internal.component.d.ts +15 -9
- package/lib/components/table-lite/detailsDialog-lite.component.d.ts +81 -0
- package/lib/components/table-lite/table-lite.component.d.ts +91 -0
- package/lib/components/table-row/table-row.component.d.ts +4 -1
- package/lib/components/text/text.component.d.ts +16 -7
- package/lib/components/tiles/tiles.component.d.ts +4 -3
- package/lib/components/viewer/viewerDialog.component.d.ts +3 -1
- package/lib/pages/app-models/app-models.component.d.ts +15 -0
- package/lib/pages/approvals/approvals.component.d.ts +10 -0
- package/lib/pages/approvals-config/approvals-config.component.d.ts +24 -0
- package/lib/pages/customers/customers.component.d.ts +2 -8
- package/lib/pages/invitations-table/invitations-table.component.d.ts +1 -1
- package/lib/pages/login/login.component.d.ts +7 -1
- package/lib/pages/logs/logs.component.d.ts +2 -6
- package/lib/pages/membership/membership.component.d.ts +2 -6
- package/lib/pages/notifications/notifications.component.d.ts +9 -1
- package/lib/pages/notifications-config/notifications-config.component.d.ts +17 -0
- package/lib/pages/plans/plans.component.d.ts +2 -6
- package/lib/pages/roles/roles.component.d.ts +14 -2
- package/lib/pages/suppliers/suppliers.component.d.ts +1 -4
- package/lib/pages/tasks/tasks.component.d.ts +1 -1
- package/lib/pages/tenant-settings/tenant-settings.component.d.ts +12 -7
- package/lib/pages/tenants/tenants.component.d.ts +2 -2
- package/lib/pages/users/users.component.d.ts +8 -16
- package/lib/select-context.directive.d.ts +10 -0
- package/lib/services/button.service.d.ts +10 -7
- package/lib/services/datalib.service.d.ts +54 -10
- package/lib/services/dialog.service.d.ts +2 -2
- package/lib/services/notifications.service.d.ts +12 -0
- package/lib/services/table-config.service.d.ts +9 -1
- package/lib/tin-spa.module.d.ts +50 -33
- package/package.json +1 -1
- package/public-api.d.ts +7 -0
- package/esm2020/lib/pages/invitations/invitations.component.mjs +0 -14
- package/esm2020/lib/pages/tenant-settings/inviteDialog.component.mjs +0 -60
- package/lib/pages/invitations/invitations.component.d.ts +0 -8
- package/lib/pages/tenant-settings/inviteDialog.component.d.ts +0 -28
package/lib/classes/Classes.d.ts
CHANGED
|
@@ -1,26 +1,27 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
1
|
+
import { BehaviorSubject } from "rxjs";
|
|
2
|
+
export interface BitwiseOption {
|
|
3
|
+
name?: string;
|
|
4
|
+
value: number;
|
|
5
|
+
selected: boolean;
|
|
6
|
+
icon?: Icon;
|
|
5
7
|
}
|
|
6
|
-
export declare
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
static readonly AUTH_TENANT_NAME = "f";
|
|
13
|
-
}
|
|
14
|
-
export declare class ListDialogConfig {
|
|
15
|
-
name: string;
|
|
16
|
-
title: string;
|
|
17
|
-
listName: string;
|
|
8
|
+
export declare enum RoleAccess {
|
|
9
|
+
None = 0,
|
|
10
|
+
View = 1,
|
|
11
|
+
Edit = 2,
|
|
12
|
+
Create = 3,
|
|
13
|
+
Full = 4
|
|
18
14
|
}
|
|
19
15
|
export declare enum DetailsSource {
|
|
20
16
|
Row = 0,
|
|
21
17
|
Url = 1
|
|
22
18
|
}
|
|
19
|
+
export declare class dialogOptions {
|
|
20
|
+
width?: string;
|
|
21
|
+
height?: string;
|
|
22
|
+
}
|
|
23
23
|
export declare class DetailsDialogConfig {
|
|
24
|
+
stepConfig?: StepConfig;
|
|
24
25
|
formConfig: FormConfig;
|
|
25
26
|
tableConfig?: TableConfig;
|
|
26
27
|
tableConfigs?: TableConfig[];
|
|
@@ -29,13 +30,11 @@ export declare class DetailsDialogConfig {
|
|
|
29
30
|
heroField?: any;
|
|
30
31
|
heroValue?: any;
|
|
31
32
|
mode?: 'create' | 'edit' | 'view';
|
|
32
|
-
width?: string;
|
|
33
33
|
detailsSource?: DetailsSource;
|
|
34
34
|
options?: dialogOptions;
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
height?: string;
|
|
35
|
+
autoRefreshConfig?: AutoRefreshConfig;
|
|
36
|
+
refreshOnClose?: boolean;
|
|
37
|
+
causeTableRefresh?: boolean;
|
|
39
38
|
}
|
|
40
39
|
export declare class Action {
|
|
41
40
|
method?: 'get' | 'post';
|
|
@@ -43,22 +42,102 @@ export declare class Action {
|
|
|
43
42
|
params?: any[];
|
|
44
43
|
successMessage?: string;
|
|
45
44
|
isFormData?: boolean;
|
|
45
|
+
skipCache?: boolean;
|
|
46
|
+
}
|
|
47
|
+
export interface SearchField extends Field {
|
|
48
|
+
show?: boolean;
|
|
46
49
|
}
|
|
47
50
|
export declare class SearchConfig {
|
|
48
51
|
fields: SearchField[];
|
|
49
52
|
searchAction?: Action;
|
|
53
|
+
emailResults?: boolean;
|
|
54
|
+
tileConfig?: TileConfig;
|
|
50
55
|
}
|
|
51
|
-
export
|
|
52
|
-
|
|
56
|
+
export declare class SecurityConfig {
|
|
57
|
+
allow?: CapItem[];
|
|
58
|
+
deny?: CapItem[];
|
|
53
59
|
}
|
|
54
|
-
export
|
|
55
|
-
|
|
56
|
-
|
|
60
|
+
export interface ChildField {
|
|
61
|
+
childField?: string;
|
|
62
|
+
childValueField?: string;
|
|
63
|
+
}
|
|
64
|
+
export interface AutoRefreshConfig {
|
|
65
|
+
interval?: number;
|
|
66
|
+
stopCondition?: (data: any) => boolean;
|
|
67
|
+
defaultOn?: boolean;
|
|
68
|
+
}
|
|
69
|
+
export interface Field {
|
|
70
|
+
securityConfig?: SecurityConfig;
|
|
71
|
+
name: string;
|
|
72
|
+
type: 'text' | 'multi-text' | 'password' | 'date' | 'datetime' | 'datetimesec' | 'checkbox' | 'select' | 'multi-select' | 'money' | 'number' | 'section' | 'blank' | 'chip' | 'file' | 'file-view' | 'icon' | 'spinner' | 'button' | 'label' | 'email' | 'composite' | 'string' | 'html';
|
|
73
|
+
alias?: string;
|
|
74
|
+
options?: any[];
|
|
75
|
+
optionDisplay?: string;
|
|
76
|
+
optionValue?: string;
|
|
77
|
+
masterOptionValue?: string;
|
|
78
|
+
defaultValue?: any;
|
|
79
|
+
defaultFirstValue?: boolean;
|
|
80
|
+
required?: boolean;
|
|
81
|
+
requiredCondition?: (value: any) => boolean;
|
|
82
|
+
min?: any;
|
|
83
|
+
max?: any;
|
|
84
|
+
rows?: number;
|
|
85
|
+
span?: boolean;
|
|
86
|
+
width?: string;
|
|
87
|
+
size?: string;
|
|
88
|
+
readonly?: boolean;
|
|
89
|
+
hidden?: boolean;
|
|
90
|
+
strict?: boolean;
|
|
91
|
+
path?: string;
|
|
92
|
+
keyField?: string;
|
|
93
|
+
hint?: string;
|
|
94
|
+
masterField?: string;
|
|
95
|
+
children?: ChildField[];
|
|
96
|
+
masterOptions?: any[];
|
|
97
|
+
nullable?: boolean;
|
|
98
|
+
copyContent?: boolean;
|
|
99
|
+
clearContent?: boolean;
|
|
100
|
+
format?: 'text' | 'money' | 'date' | 'datetime' | 'number';
|
|
101
|
+
hideOnCreate?: boolean;
|
|
102
|
+
hideOnExists?: boolean;
|
|
103
|
+
hiddenCondition?: (value: any) => boolean;
|
|
104
|
+
readonlyCondition?: (value: any) => boolean;
|
|
105
|
+
detailsConfig?: DetailsDialogConfig;
|
|
106
|
+
loadAction?: Action;
|
|
107
|
+
loadIDField?: string;
|
|
108
|
+
infoMessage?: string;
|
|
109
|
+
suffix?: string;
|
|
110
|
+
subfields?: Field[];
|
|
111
|
+
optionsSubject?: BehaviorSubject<any[]>;
|
|
112
|
+
section?: string;
|
|
113
|
+
fileOptions?: {
|
|
114
|
+
allowedExtensions?: string[];
|
|
115
|
+
maxSizeMB?: number;
|
|
116
|
+
compressImages?: boolean;
|
|
117
|
+
};
|
|
118
|
+
collapsed?: boolean;
|
|
119
|
+
collapsedCondition?: (value: any) => boolean;
|
|
120
|
+
maxHeight?: string;
|
|
121
|
+
valueCalculation?: (value: any) => any;
|
|
57
122
|
}
|
|
58
123
|
export declare class AlertMessage {
|
|
59
124
|
type?: 'success' | 'info' | 'warn' | 'critical';
|
|
60
125
|
content: string;
|
|
61
126
|
hiddenCondition?: (value: any) => boolean;
|
|
127
|
+
showCondition?: (value: any) => boolean;
|
|
128
|
+
}
|
|
129
|
+
export declare class AlertMessages {
|
|
130
|
+
subject?: string;
|
|
131
|
+
messages: AlertMessage[];
|
|
132
|
+
}
|
|
133
|
+
export declare class NotesConfig {
|
|
134
|
+
title?: string;
|
|
135
|
+
loadAction?: Action;
|
|
136
|
+
loadIDField?: string;
|
|
137
|
+
notes?: any[];
|
|
138
|
+
nameField?: string;
|
|
139
|
+
dateField?: string;
|
|
140
|
+
commentField?: string;
|
|
62
141
|
}
|
|
63
142
|
export declare class FormConfig {
|
|
64
143
|
title?: string;
|
|
@@ -69,10 +148,16 @@ export declare class FormConfig {
|
|
|
69
148
|
button?: Button;
|
|
70
149
|
multiColumn?: boolean;
|
|
71
150
|
reset?: boolean;
|
|
72
|
-
fileAction?: Action;
|
|
73
151
|
loadAction?: Action;
|
|
74
152
|
heroField?: any;
|
|
75
153
|
heroValue?: any;
|
|
154
|
+
security?: SecurityConfig;
|
|
155
|
+
includeAudit?: boolean;
|
|
156
|
+
notesConfig?: NotesConfig;
|
|
157
|
+
}
|
|
158
|
+
export interface Confirm {
|
|
159
|
+
message?: string;
|
|
160
|
+
func?: (data: any) => string;
|
|
76
161
|
}
|
|
77
162
|
export interface Button {
|
|
78
163
|
name: string;
|
|
@@ -89,75 +174,110 @@ export interface Button {
|
|
|
89
174
|
inHeader?: boolean;
|
|
90
175
|
detailsConfig?: DetailsDialogConfig;
|
|
91
176
|
setHeroField?: boolean;
|
|
177
|
+
ignorePendingApproval?: boolean;
|
|
178
|
+
keepOpen?: boolean;
|
|
179
|
+
onSuccess?: (response: ApiResponse, details: any) => void;
|
|
180
|
+
onClick?: (details: any) => void;
|
|
181
|
+
editOnSuccess?: boolean;
|
|
182
|
+
onSuccessButton?: Button;
|
|
92
183
|
}
|
|
93
|
-
export interface
|
|
94
|
-
|
|
184
|
+
export interface CapsuleConfig {
|
|
185
|
+
displayField: string;
|
|
186
|
+
leftIcons?: Icon[];
|
|
187
|
+
rightIcons?: Icon[];
|
|
188
|
+
loadAction?: Action;
|
|
95
189
|
}
|
|
96
|
-
export interface
|
|
97
|
-
|
|
190
|
+
export interface CardConfig {
|
|
191
|
+
imageField?: string;
|
|
192
|
+
titleField: string;
|
|
193
|
+
subtitleField?: string;
|
|
194
|
+
contentFields: string[];
|
|
195
|
+
columns?: number;
|
|
196
|
+
elevation?: 'low' | 'medium' | 'high';
|
|
98
197
|
}
|
|
99
|
-
export interface
|
|
198
|
+
export interface Tile {
|
|
100
199
|
name: string;
|
|
101
|
-
type: 'text' | 'date' | 'datetime' | 'checkbox' | 'select' | 'multi-select' | 'money' | 'number' | 'section' | 'blank' | 'chip' | 'file' | 'file-view' | 'icon' | 'spinner' | 'button' | 'label' | 'email' | 'composite' | 'string';
|
|
102
200
|
alias?: string;
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
defaultValue?: any;
|
|
107
|
-
defaultFirstValue?: boolean;
|
|
108
|
-
required?: boolean;
|
|
109
|
-
min?: any;
|
|
110
|
-
max?: any;
|
|
111
|
-
rows?: number;
|
|
112
|
-
span?: boolean;
|
|
113
|
-
width?: string;
|
|
114
|
-
size?: string;
|
|
115
|
-
readonly?: boolean;
|
|
201
|
+
value?: string;
|
|
202
|
+
color?: string;
|
|
203
|
+
selectedTile?: string;
|
|
116
204
|
hidden?: boolean;
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
hint?: string;
|
|
120
|
-
masterField?: string;
|
|
121
|
-
child?: ChildField;
|
|
122
|
-
children?: ChildField[];
|
|
123
|
-
masterOptions?: any[];
|
|
124
|
-
nullable?: boolean;
|
|
125
|
-
copyContent?: boolean;
|
|
126
|
-
hideOnCreate?: boolean;
|
|
127
|
-
hideOnExists?: boolean;
|
|
128
|
-
hiddenCondition?: (value: any) => boolean;
|
|
129
|
-
readonlyCondition?: (value: any) => boolean;
|
|
130
|
-
peekConfig?: PeekDialogConfig;
|
|
131
|
-
infoMessage?: string;
|
|
205
|
+
info?: string;
|
|
206
|
+
prefix?: string;
|
|
132
207
|
suffix?: string;
|
|
133
|
-
|
|
208
|
+
action?: Action;
|
|
209
|
+
hiddenCondition?: (value: any) => boolean;
|
|
134
210
|
}
|
|
135
|
-
export
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
211
|
+
export declare class TileConfig {
|
|
212
|
+
tiles: Tile[];
|
|
213
|
+
loadAction?: Action;
|
|
214
|
+
loadInit?: boolean;
|
|
215
|
+
clickable?: boolean;
|
|
139
216
|
}
|
|
140
|
-
export
|
|
141
|
-
|
|
142
|
-
|
|
217
|
+
export declare class Step {
|
|
218
|
+
name: string;
|
|
219
|
+
value?: any;
|
|
220
|
+
icon?: string;
|
|
221
|
+
hiddenCondition?: (value: any) => boolean;
|
|
222
|
+
}
|
|
223
|
+
export declare class StepConfig {
|
|
224
|
+
steps: Step[];
|
|
225
|
+
valueField?: string;
|
|
226
|
+
loadAction?: Action;
|
|
227
|
+
loadIDField?: string;
|
|
143
228
|
}
|
|
229
|
+
export interface Icon {
|
|
230
|
+
name: string;
|
|
231
|
+
color?: string;
|
|
232
|
+
tip?: string;
|
|
233
|
+
tipField?: string;
|
|
234
|
+
bannerField?: string;
|
|
235
|
+
condition?: (value: any) => boolean;
|
|
236
|
+
}
|
|
237
|
+
export interface Color {
|
|
238
|
+
name: string;
|
|
239
|
+
condition?: (value: any) => boolean;
|
|
240
|
+
}
|
|
241
|
+
export interface Column {
|
|
242
|
+
name: string;
|
|
243
|
+
type?: 'text' | 'date' | 'datetime' | 'datetimesec' | 'checkbox' | 'select' | 'money' | 'number' | 'chip' | 'icon' | 'spinner' | 'button';
|
|
244
|
+
alias?: string;
|
|
245
|
+
maxLength?: number;
|
|
246
|
+
icon?: Icon;
|
|
247
|
+
color?: Color;
|
|
248
|
+
colors?: Color[];
|
|
249
|
+
icons?: Icon[];
|
|
250
|
+
options?: any[];
|
|
251
|
+
optionDisplay?: string;
|
|
252
|
+
optionValue?: string;
|
|
253
|
+
detailsConfig?: DetailsDialogConfig;
|
|
254
|
+
hiddenCondition?: (parentData: any) => boolean;
|
|
255
|
+
}
|
|
256
|
+
export declare type TableViewType = 'table' | 'capsule' | 'card';
|
|
144
257
|
export declare class TableConfig {
|
|
145
|
-
|
|
258
|
+
viewType?: TableViewType;
|
|
259
|
+
capsuleConfig?: CapsuleConfig;
|
|
260
|
+
cardConfig?: CardConfig;
|
|
261
|
+
tabTitle?: string;
|
|
146
262
|
noDataMessage?: string;
|
|
147
263
|
columns?: Column[];
|
|
148
264
|
minColumns?: string[];
|
|
149
265
|
showFilter?: boolean;
|
|
266
|
+
showFilterButton?: boolean;
|
|
150
267
|
holdFilterSpace?: boolean;
|
|
151
268
|
holdHeaderButtonSpace?: boolean;
|
|
152
269
|
elevation?: 'none' | 'low' | 'medium' | 'high';
|
|
153
270
|
formConfig?: FormConfig;
|
|
154
271
|
searchConfig?: SearchConfig;
|
|
155
272
|
tileConfig?: TileConfig;
|
|
273
|
+
stepConfig?: StepConfig;
|
|
156
274
|
buttons?: Button[];
|
|
157
275
|
minButtons?: string[];
|
|
158
276
|
loadAction?: Action;
|
|
159
277
|
loadIDField?: string;
|
|
160
278
|
loadCriteria?: string;
|
|
279
|
+
lazyLoad?: boolean;
|
|
280
|
+
causeFormRefresh?: boolean;
|
|
161
281
|
logResponse?: boolean;
|
|
162
282
|
flatButtons?: boolean;
|
|
163
283
|
greyOut?: (value: any) => boolean;
|
|
@@ -166,6 +286,7 @@ export declare class TableConfig {
|
|
|
166
286
|
collapseButtons?: boolean;
|
|
167
287
|
parentData?: any;
|
|
168
288
|
pageSizes?: number[];
|
|
289
|
+
maxButtonsCount?: number;
|
|
169
290
|
hideTabCondition?: (value: any) => boolean;
|
|
170
291
|
download?: {
|
|
171
292
|
columns: string[];
|
|
@@ -178,57 +299,43 @@ export declare class TableConfig {
|
|
|
178
299
|
hiddenCondition?: (value: any) => boolean;
|
|
179
300
|
};
|
|
180
301
|
}
|
|
181
|
-
export
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
icon?: Icon;
|
|
186
|
-
color?: Color;
|
|
187
|
-
colors?: Color[];
|
|
188
|
-
icons?: Icon[];
|
|
189
|
-
options?: any[];
|
|
190
|
-
optionDisplay?: string;
|
|
191
|
-
optionValue?: string;
|
|
192
|
-
detailsConfig?: DetailsDialogConfig;
|
|
193
|
-
hiddenCondition?: (parentData: any) => boolean;
|
|
194
|
-
}
|
|
195
|
-
export interface Icon {
|
|
196
|
-
name: string;
|
|
197
|
-
color?: string;
|
|
198
|
-
tip?: string;
|
|
199
|
-
tipField?: string;
|
|
200
|
-
bannerField?: string;
|
|
201
|
-
condition?: (value: any) => boolean;
|
|
302
|
+
export declare class PageConfig {
|
|
303
|
+
title?: string;
|
|
304
|
+
tableConfig?: TableConfig;
|
|
305
|
+
searchTableConfig?: TableConfig;
|
|
202
306
|
}
|
|
203
|
-
export
|
|
204
|
-
|
|
205
|
-
|
|
307
|
+
export declare class ApiResponse {
|
|
308
|
+
success: boolean;
|
|
309
|
+
message: string;
|
|
310
|
+
data: any;
|
|
206
311
|
}
|
|
207
|
-
export declare class
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
312
|
+
export declare class Constants {
|
|
313
|
+
static readonly AUTH_USER = "a";
|
|
314
|
+
static readonly AUTH_NAME = "b";
|
|
315
|
+
static readonly AUTH_ROLES = "c";
|
|
316
|
+
static readonly AUTH_TOKEN = "d";
|
|
317
|
+
static readonly AUTH_TOKEN_EXPIRE = "e";
|
|
318
|
+
static readonly AUTH_TENANT_NAME = "f";
|
|
212
319
|
}
|
|
213
|
-
export
|
|
320
|
+
export declare class ListDialogConfig {
|
|
214
321
|
name: string;
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
color?: string;
|
|
218
|
-
selectedTile?: string;
|
|
219
|
-
hidden?: boolean;
|
|
220
|
-
info?: string;
|
|
221
|
-
prefix?: string;
|
|
222
|
-
suffix?: string;
|
|
223
|
-
action?: Action;
|
|
322
|
+
title: string;
|
|
323
|
+
listName: string;
|
|
224
324
|
}
|
|
225
|
-
export declare class
|
|
325
|
+
export declare class CapItem {
|
|
326
|
+
constructor();
|
|
226
327
|
name: string;
|
|
328
|
+
display: string;
|
|
329
|
+
enabled: boolean;
|
|
330
|
+
showMenu: boolean;
|
|
331
|
+
ignoreSubsDisplay: boolean;
|
|
332
|
+
type: string;
|
|
333
|
+
newLine: boolean;
|
|
334
|
+
link: string;
|
|
227
335
|
icon: string;
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
value: any;
|
|
336
|
+
capSubItems: CapItem[];
|
|
337
|
+
color: string;
|
|
338
|
+
isBool: boolean;
|
|
232
339
|
}
|
|
233
340
|
export declare class AppConfig {
|
|
234
341
|
constructor();
|
|
@@ -238,24 +345,21 @@ export declare class AppConfig {
|
|
|
238
345
|
ADAuth: boolean;
|
|
239
346
|
localAuth: boolean;
|
|
240
347
|
googleAuth: boolean;
|
|
348
|
+
microsoftAuth: boolean;
|
|
349
|
+
microsoftAuthMessage: string;
|
|
241
350
|
selfService: boolean;
|
|
242
351
|
capItems: CapItem[];
|
|
243
352
|
multitenant: boolean;
|
|
244
353
|
navigation: 'top' | 'side';
|
|
245
354
|
progressLine: boolean;
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
type: string;
|
|
255
|
-
newLine: boolean;
|
|
256
|
-
link: string;
|
|
257
|
-
icon: string;
|
|
258
|
-
capSubItems: CapItem[];
|
|
355
|
+
docsBaseUrl: string;
|
|
356
|
+
loginStyle: string;
|
|
357
|
+
loginTitle: string;
|
|
358
|
+
loginMessage: string;
|
|
359
|
+
termsUrl: string;
|
|
360
|
+
privacyUrl: string;
|
|
361
|
+
siteUrl: string;
|
|
362
|
+
navWidth: string;
|
|
259
363
|
}
|
|
260
364
|
export declare class Transaction {
|
|
261
365
|
constructor();
|
package/lib/classes/TinCore.d.ts
CHANGED
|
@@ -1,13 +1,20 @@
|
|
|
1
|
-
import { DetailsDialogConfig, Field, FormConfig } from "./Classes";
|
|
1
|
+
import { DetailsDialogConfig, Field, FormConfig, RoleAccess, SecurityConfig } from "./Classes";
|
|
2
2
|
export declare class Core {
|
|
3
3
|
static deepClone(obj: any): any;
|
|
4
|
+
static deepClone2(obj: any): any;
|
|
4
5
|
static camelToWords(value: string): string;
|
|
5
6
|
static generateObject(fields: Field[]): {};
|
|
6
7
|
static resetObject(fields: Field[], data: any): void;
|
|
7
|
-
static
|
|
8
|
+
static checkSecurity(security: SecurityConfig, currentRole: any): boolean;
|
|
9
|
+
static hasFormAccess(formConfig: FormConfig, currentRole: any): boolean;
|
|
10
|
+
static getFormAccess(formConfig: FormConfig, currentRole: any): RoleAccess;
|
|
11
|
+
private static getRoleAccess;
|
|
12
|
+
static testVisible(config: FormConfig, data: any, field: Field, currentRole: any): boolean;
|
|
13
|
+
static testReadOnly(config: FormConfig, data: any, field: Field): boolean;
|
|
8
14
|
static testVisibleHeaderButton(data: any, btn: any): boolean;
|
|
9
|
-
static getVisibleSubfields(config: FormConfig, data: any, field: Field): Field[];
|
|
15
|
+
static getVisibleSubfields(config: FormConfig, data: any, field: Field, currentRole: any): Field[];
|
|
10
16
|
static validateObject(fields: Field[], data: any): string;
|
|
17
|
+
static testRequired(config: FormConfig, data: any, field: Field): boolean;
|
|
11
18
|
static getInitialValue(field: Field): any;
|
|
12
19
|
static getClone(x: any): any;
|
|
13
20
|
static getNumber(value: string): string | 0;
|
|
@@ -30,6 +37,7 @@ export declare class DetailsDialogProcessor {
|
|
|
30
37
|
tableConfig: import("./Classes").TableConfig;
|
|
31
38
|
tableConfigs: import("./Classes").TableConfig[];
|
|
32
39
|
formConfig: FormConfig;
|
|
40
|
+
stepConfig: import("./Classes").StepConfig;
|
|
33
41
|
buttons: import("./Classes").Button[];
|
|
34
42
|
};
|
|
35
43
|
static setHeroValue(detailsConfig: DetailsDialogConfig, details: any): void;
|
|
@@ -1,8 +1,16 @@
|
|
|
1
1
|
import { EventEmitter, OnInit } from '@angular/core';
|
|
2
|
+
import { MessageService } from '../../services/message.service';
|
|
2
3
|
import * as i0 from "@angular/core";
|
|
3
4
|
export declare class AttachComponent implements OnInit {
|
|
4
|
-
|
|
5
|
+
private messageService;
|
|
6
|
+
constructor(messageService: MessageService);
|
|
5
7
|
ngOnInit(): void;
|
|
8
|
+
fileOptions: {
|
|
9
|
+
allowedExtensions?: string[];
|
|
10
|
+
maxSizeMB?: number;
|
|
11
|
+
compressImages?: boolean;
|
|
12
|
+
};
|
|
13
|
+
private readonly imageExtensions;
|
|
6
14
|
message: string;
|
|
7
15
|
files: any[];
|
|
8
16
|
filesChange: EventEmitter<any>;
|
|
@@ -11,13 +19,12 @@ export declare class AttachComponent implements OnInit {
|
|
|
11
19
|
onFileDropped($event: any): void;
|
|
12
20
|
fileBrowseHandler(event: any): void;
|
|
13
21
|
deleteFile(index: number): void;
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
prepareFilesList(files: Array<any>): void;
|
|
22
|
+
prepareFilesList(files: Array<any>): Promise<void>;
|
|
23
|
+
private getFileExtension;
|
|
24
|
+
private isImage;
|
|
18
25
|
formatBytes(bytes: any, decimals: any): string;
|
|
19
26
|
uploaded(): void;
|
|
20
27
|
filesChanged(): void;
|
|
21
28
|
static ɵfac: i0.ɵɵFactoryDeclaration<AttachComponent, never>;
|
|
22
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<AttachComponent, "spa-attach", never, { "message": "message"; "files": "files"; "enableUpload": "enableUpload"; }, { "filesChange": "filesChange"; "upload": "upload"; }, never, never, false>;
|
|
29
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<AttachComponent, "spa-attach", never, { "fileOptions": "fileOptions"; "message": "message"; "files": "files"; "enableUpload": "enableUpload"; }, { "filesChange": "filesChange"; "upload": "upload"; }, never, never, false>;
|
|
23
30
|
}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { EventEmitter } from '@angular/core';
|
|
2
|
+
import { Button, TableConfig } from '../../classes/Classes';
|
|
3
|
+
import { ButtonService } from '../../services/button.service';
|
|
4
|
+
import { ConditionService } from '../../services/condition.service';
|
|
5
|
+
import * as i0 from "@angular/core";
|
|
6
|
+
export declare class CapsulesComponent {
|
|
7
|
+
buttonService: ButtonService;
|
|
8
|
+
private conditionService;
|
|
9
|
+
constructor(buttonService: ButtonService, conditionService: ConditionService);
|
|
10
|
+
config: TableConfig;
|
|
11
|
+
dataSource: any[];
|
|
12
|
+
displayedButtons: Button[];
|
|
13
|
+
actionClick: EventEmitter<{
|
|
14
|
+
name: string;
|
|
15
|
+
row: any;
|
|
16
|
+
}>;
|
|
17
|
+
getDisplayValue(row: any): string;
|
|
18
|
+
testIconCondition(row: any, icon: any): boolean;
|
|
19
|
+
onActionClick(buttonName: string, row: any): void;
|
|
20
|
+
getButtonColor(button: Button, row: any): string;
|
|
21
|
+
getIcon(buttonName: string): string;
|
|
22
|
+
testDisabled(row: any, buttonName: string): boolean;
|
|
23
|
+
private getButton;
|
|
24
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<CapsulesComponent, never>;
|
|
25
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<CapsulesComponent, "spa-capsules", never, { "config": "config"; "dataSource": "dataSource"; "displayedButtons": "displayedButtons"; }, { "actionClick": "actionClick"; }, never, never, false>;
|
|
26
|
+
}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import { EventEmitter } from '@angular/core';
|
|
2
|
+
import { Button, TableConfig } from '../../classes/Classes';
|
|
3
|
+
import { ButtonService } from '../../services/button.service';
|
|
4
|
+
import { ConditionService } from '../../services/condition.service';
|
|
5
|
+
import * as i0 from "@angular/core";
|
|
6
|
+
export declare class CardsComponent {
|
|
7
|
+
buttonService: ButtonService;
|
|
8
|
+
private conditionService;
|
|
9
|
+
constructor(buttonService: ButtonService, conditionService: ConditionService);
|
|
10
|
+
config: TableConfig;
|
|
11
|
+
dataSource: any[];
|
|
12
|
+
displayedButtons: Button[];
|
|
13
|
+
smallScreen: boolean;
|
|
14
|
+
actionClick: EventEmitter<{
|
|
15
|
+
name: string;
|
|
16
|
+
row: any;
|
|
17
|
+
}>;
|
|
18
|
+
columnClick: EventEmitter<{
|
|
19
|
+
column: any;
|
|
20
|
+
row: any;
|
|
21
|
+
}>;
|
|
22
|
+
showBannerEvent: EventEmitter<string>;
|
|
23
|
+
getTitleValue(row: any): string;
|
|
24
|
+
getSubtitleValue(row: any): string;
|
|
25
|
+
getContentValues(row: any): {
|
|
26
|
+
label: string;
|
|
27
|
+
value: any;
|
|
28
|
+
}[];
|
|
29
|
+
onActionClick(buttonName: string, row: any): void;
|
|
30
|
+
getButtonColor(button: Button, row: any): string;
|
|
31
|
+
getIcon(buttonName: string): string;
|
|
32
|
+
testDisabled(row: any, buttonName: string): boolean;
|
|
33
|
+
testVisible(row: any, buttonName: string): boolean;
|
|
34
|
+
getElevationClass(): string;
|
|
35
|
+
getColumnCount(): number;
|
|
36
|
+
private getButton;
|
|
37
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<CardsComponent, never>;
|
|
38
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<CardsComponent, "spa-cards", never, { "config": "config"; "dataSource": "dataSource"; "displayedButtons": "displayedButtons"; "smallScreen": "smallScreen"; }, { "actionClick": "actionClick"; "columnClick": "columnClick"; "showBannerEvent": "showBannerEvent"; }, never, never, false>;
|
|
39
|
+
}
|
|
@@ -16,7 +16,8 @@ export declare class EmailComponent implements OnInit {
|
|
|
16
16
|
hint: string;
|
|
17
17
|
suffix: string;
|
|
18
18
|
infoMessage: string;
|
|
19
|
-
|
|
19
|
+
copyContent: boolean;
|
|
20
|
+
clearContent: boolean;
|
|
20
21
|
options: any[];
|
|
21
22
|
optionValue: string;
|
|
22
23
|
emails: string[];
|
|
@@ -30,10 +31,10 @@ export declare class EmailComponent implements OnInit {
|
|
|
30
31
|
handlePaste(event: ClipboardEvent): void;
|
|
31
32
|
extractEmails(text: string): string[];
|
|
32
33
|
removeEmail(email: string): void;
|
|
34
|
+
clearEmails(): void;
|
|
33
35
|
updateValue(): void;
|
|
34
|
-
onInfoClick(event: MouseEvent): void;
|
|
35
36
|
optionSelected(event: MatAutocompleteSelectedEvent): void;
|
|
36
37
|
copyEmails(): void;
|
|
37
38
|
static ɵfac: i0.ɵɵFactoryDeclaration<EmailComponent, never>;
|
|
38
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<EmailComponent, "spa-email", never, { "display": "display"; "value": "value"; "readonly": "readonly"; "required": "required"; "hint": "hint"; "suffix": "suffix"; "infoMessage": "infoMessage"; "options": "options"; "optionValue": "optionValue"; }, { "valueChange": "valueChange";
|
|
39
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<EmailComponent, "spa-email", never, { "display": "display"; "value": "value"; "readonly": "readonly"; "required": "required"; "hint": "hint"; "suffix": "suffix"; "infoMessage": "infoMessage"; "copyContent": "copyContent"; "clearContent": "clearContent"; "options": "options"; "optionValue": "optionValue"; }, { "valueChange": "valueChange"; }, never, never, false>;
|
|
39
40
|
}
|