@zeedhi/teknisa-components-common 1.45.0 → 1.48.0
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/coverage/clover.xml +547 -576
- package/coverage/coverage-final.json +9 -9
- package/coverage/lcov-report/index.html +15 -15
- package/coverage/lcov.info +1078 -1143
- package/dist/tek-components-common.esm.js +497 -187
- package/dist/tek-components-common.umd.js +499 -188
- package/package.json +3 -2
- package/tests/__helpers__/mock-created-helper.ts +10 -0
- package/tests/unit/components/tek-datasource/memory-datasource.spec.ts +24 -0
- package/tests/unit/components/tek-datasource/rest-datasource.spec.ts +28 -1
- package/tests/unit/components/tek-grid/filter-helper.spec.ts +5 -2
- package/tests/unit/components/tek-grid/grid.spec.ts +37 -130
- package/tests/unit/components/tek-user-info/TekUserInfoContoller.spec.ts +234 -0
- package/tests/unit/components/tek-user-info/tek-user-info-list.spec.ts +85 -0
- package/tests/unit/components/tek-user-info/tek-user-info.spec.ts +395 -0
- package/types/components/index.d.ts +3 -0
- package/types/components/tek-grid/filter-helper.d.ts +0 -2
- package/types/components/tek-grid/interfaces.d.ts +3 -6
- package/types/components/tek-user-info/TekUserInfoController.d.ts +20 -0
- package/types/components/tek-user-info/interfaces.d.ts +27 -0
- package/types/components/tek-user-info/tek-user-info-list.d.ts +29 -0
- package/types/components/tek-user-info/tek-user-info.d.ts +37 -0
- package/types/utils/grid-base/grid-base.d.ts +1 -6
|
@@ -0,0 +1,395 @@
|
|
|
1
|
+
import {
|
|
2
|
+
Button, Modal, ModalService,
|
|
3
|
+
} from '@zeedhi/common';
|
|
4
|
+
import { Metadata, Http } from '@zeedhi/core';
|
|
5
|
+
import { ITekUserInfo, TekUserInfo } from '../../../../src';
|
|
6
|
+
import { mockCreated } from '../../../__helpers__/mock-created-helper';
|
|
7
|
+
|
|
8
|
+
function instantiateAndCreate(props: ITekUserInfo) {
|
|
9
|
+
const instance = new TekUserInfo(props);
|
|
10
|
+
mockCreated(instance);
|
|
11
|
+
instance.onCreated();
|
|
12
|
+
return instance;
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
describe('TekUserInfo', () => {
|
|
16
|
+
afterEach(() => jest.clearAllMocks());
|
|
17
|
+
|
|
18
|
+
describe('constructor()', () => {
|
|
19
|
+
it('when called, should assign the default values', () => {
|
|
20
|
+
const instance = new TekUserInfo({
|
|
21
|
+
name: 'TekUserInfo',
|
|
22
|
+
component: 'TekUserInfo',
|
|
23
|
+
});
|
|
24
|
+
expect(instance.bottomSlot).toMatchObject([]);
|
|
25
|
+
expect(instance.aboutImage).toBe('');
|
|
26
|
+
expect(instance.defaultEmail).toBe('');
|
|
27
|
+
expect(instance.versionInfo).toBeNull();
|
|
28
|
+
expect(instance.versionUrl).toBe('');
|
|
29
|
+
});
|
|
30
|
+
|
|
31
|
+
it('when called with props, should assign the defined values', () => {
|
|
32
|
+
const instance = instantiateAndCreate({
|
|
33
|
+
name: 'TekUserInfo',
|
|
34
|
+
component: 'TekUserInfo',
|
|
35
|
+
bottomSlot: [
|
|
36
|
+
{ name: 'test', component: 'ZdText' },
|
|
37
|
+
],
|
|
38
|
+
aboutImage: 'path',
|
|
39
|
+
defaultEmail: 'zeedhi@zd.com',
|
|
40
|
+
versionInfo: {
|
|
41
|
+
name: 'Zeedhi',
|
|
42
|
+
version: '1.0.0',
|
|
43
|
+
frontend: [{ name: 'package 1', version: '1.0.0' }],
|
|
44
|
+
backend: [{ name: 'package 2', version: '2.0.0' }],
|
|
45
|
+
modules: [{ name: 'package 3', version: '3.0.0' }],
|
|
46
|
+
},
|
|
47
|
+
versionUrl: '/version',
|
|
48
|
+
});
|
|
49
|
+
|
|
50
|
+
expect(instance.bottomSlot).toEqual([
|
|
51
|
+
{ name: 'test', component: 'ZdText' },
|
|
52
|
+
]);
|
|
53
|
+
expect(instance.aboutImage).toBe('path');
|
|
54
|
+
expect(instance.defaultEmail).toBe('zeedhi@zd.com');
|
|
55
|
+
expect(instance.versionInfo).toEqual({
|
|
56
|
+
name: 'Zeedhi',
|
|
57
|
+
version: '1.0.0',
|
|
58
|
+
frontend: [{ name: 'package 1', version: '1.0.0' }],
|
|
59
|
+
backend: [{ name: 'package 2', version: '2.0.0' }],
|
|
60
|
+
modules: [{ name: 'package 3', version: '3.0.0' }],
|
|
61
|
+
});
|
|
62
|
+
expect(instance.versionUrl).toBe('/version');
|
|
63
|
+
});
|
|
64
|
+
});
|
|
65
|
+
|
|
66
|
+
describe('About Modal', () => {
|
|
67
|
+
it('when about item is clicked, should open about modal', () => {
|
|
68
|
+
const instance = instantiateAndCreate({
|
|
69
|
+
name: 'TekUserInfo',
|
|
70
|
+
component: 'TekUserInfo',
|
|
71
|
+
aboutImage: 'path',
|
|
72
|
+
versionInfo: {
|
|
73
|
+
name: 'Zeedhi',
|
|
74
|
+
version: '1.0.0',
|
|
75
|
+
frontend: [{ name: 'package 1', version: '1.0.0' }],
|
|
76
|
+
backend: [{ name: 'package 2', version: '2.0.0' }],
|
|
77
|
+
modules: [{ name: 'package 3', version: '3.0.0' }],
|
|
78
|
+
},
|
|
79
|
+
});
|
|
80
|
+
instance.onAboutClick();
|
|
81
|
+
|
|
82
|
+
expect(instance.aboutModal).toMatchObject({
|
|
83
|
+
children: [
|
|
84
|
+
{
|
|
85
|
+
component: 'ZdHeader',
|
|
86
|
+
rightSlot: [{ component: 'ZdModalCloseButton' }],
|
|
87
|
+
},
|
|
88
|
+
{
|
|
89
|
+
component: 'ZdTag',
|
|
90
|
+
children: [{ component: 'ZdImage', src: 'path' }],
|
|
91
|
+
},
|
|
92
|
+
{
|
|
93
|
+
component: 'ZdTabs',
|
|
94
|
+
tabs: [
|
|
95
|
+
{
|
|
96
|
+
tabTitle: 'Frontend',
|
|
97
|
+
children: [
|
|
98
|
+
{ component: 'ZdText', text: '{{TekUserInfoController_1.mainVersion}}' },
|
|
99
|
+
{ component: 'ZdText', text: '{{TekUserInfoController_1.frontendItems}}' },
|
|
100
|
+
],
|
|
101
|
+
},
|
|
102
|
+
{
|
|
103
|
+
tabTitle: 'Backend',
|
|
104
|
+
children: [
|
|
105
|
+
{ component: 'ZdText', text: '{{TekUserInfoController_1.mainVersion}}' },
|
|
106
|
+
{ component: 'ZdText', text: '{{TekUserInfoController_1.backendItems}}' },
|
|
107
|
+
],
|
|
108
|
+
},
|
|
109
|
+
{
|
|
110
|
+
tabTitle: 'Modules',
|
|
111
|
+
children: [
|
|
112
|
+
{ component: 'ZdText', text: '{{TekUserInfoController_1.mainVersion}}' },
|
|
113
|
+
{ component: 'ZdText', text: '{{TekUserInfoController_1.modulesItems}}' },
|
|
114
|
+
],
|
|
115
|
+
},
|
|
116
|
+
],
|
|
117
|
+
},
|
|
118
|
+
],
|
|
119
|
+
});
|
|
120
|
+
});
|
|
121
|
+
|
|
122
|
+
it('when about item is clicked twice, should create the modal only once', () => {
|
|
123
|
+
const spy = jest.spyOn(ModalService, 'create');
|
|
124
|
+
const instance = instantiateAndCreate({
|
|
125
|
+
name: 'TekUserInfo',
|
|
126
|
+
component: 'TekUserInfo',
|
|
127
|
+
versionInfo: {
|
|
128
|
+
name: 'Zeedhi',
|
|
129
|
+
version: '1.0.0',
|
|
130
|
+
frontend: [{ name: 'package 1', version: '1.0.0' }],
|
|
131
|
+
backend: [{ name: 'package 2', version: '2.0.0' }],
|
|
132
|
+
modules: [{ name: 'package 3', version: '3.0.0' }],
|
|
133
|
+
},
|
|
134
|
+
});
|
|
135
|
+
instance.onAboutClick();
|
|
136
|
+
instance.onAboutClick();
|
|
137
|
+
|
|
138
|
+
expect(spy).toHaveBeenCalledTimes(1);
|
|
139
|
+
});
|
|
140
|
+
|
|
141
|
+
it('when versionInfo is undefined, should create empty tabs inside the modal', () => {
|
|
142
|
+
const instance = instantiateAndCreate({
|
|
143
|
+
name: 'TekUserInfo',
|
|
144
|
+
component: 'TekUserInfo',
|
|
145
|
+
});
|
|
146
|
+
instance.onAboutClick();
|
|
147
|
+
|
|
148
|
+
expect(instance.aboutModal).toMatchObject({
|
|
149
|
+
children: [
|
|
150
|
+
{
|
|
151
|
+
component: 'ZdHeader',
|
|
152
|
+
rightSlot: [{ component: 'ZdModalCloseButton' }],
|
|
153
|
+
},
|
|
154
|
+
{
|
|
155
|
+
component: 'ZdTag',
|
|
156
|
+
children: [{ component: 'ZdImage', src: '' }],
|
|
157
|
+
},
|
|
158
|
+
{
|
|
159
|
+
component: 'ZdTabs',
|
|
160
|
+
tabs: [
|
|
161
|
+
{ tabTitle: 'Frontend', children: [] },
|
|
162
|
+
{ tabTitle: 'Backend', children: [] },
|
|
163
|
+
{ tabTitle: 'Modules', children: [] },
|
|
164
|
+
],
|
|
165
|
+
},
|
|
166
|
+
],
|
|
167
|
+
});
|
|
168
|
+
});
|
|
169
|
+
});
|
|
170
|
+
|
|
171
|
+
describe('Report Modal', () => {
|
|
172
|
+
it('when onReportClick is called, should open report modal', () => {
|
|
173
|
+
const instance = instantiateAndCreate({
|
|
174
|
+
name: 'TekUserInfo',
|
|
175
|
+
component: 'TekUserInfo',
|
|
176
|
+
defaultEmail: 'zeedhi@zd.com',
|
|
177
|
+
});
|
|
178
|
+
instance.onReportClick();
|
|
179
|
+
|
|
180
|
+
expect(instance.reportModal).toMatchObject({
|
|
181
|
+
children: [
|
|
182
|
+
{
|
|
183
|
+
component: 'ZdHeader',
|
|
184
|
+
leftSlot: [{ component: 'ZdText', text: 'TEKUSERINFO_REPORT_ERROR' }],
|
|
185
|
+
rightSlot: [{ component: 'ZdModalCloseButton' }],
|
|
186
|
+
},
|
|
187
|
+
{
|
|
188
|
+
component: 'ZdForm',
|
|
189
|
+
children: [
|
|
190
|
+
{
|
|
191
|
+
name: 'report_email',
|
|
192
|
+
component: 'ZdTextInput',
|
|
193
|
+
label: 'E-mail',
|
|
194
|
+
value: '{{TekUserInfoController_1.defaultEmail}}',
|
|
195
|
+
},
|
|
196
|
+
{
|
|
197
|
+
name: 'report_cc',
|
|
198
|
+
component: 'ZdTextInput',
|
|
199
|
+
label: 'CC',
|
|
200
|
+
placeholder: 'TEKUSERINFO_EMAIL_PLACEHOLDER',
|
|
201
|
+
},
|
|
202
|
+
{
|
|
203
|
+
name: 'report_type',
|
|
204
|
+
component: 'ZdSelect',
|
|
205
|
+
label: 'TEKUSERINFO_TYPE',
|
|
206
|
+
datasource: {
|
|
207
|
+
uniqueKey: 'value',
|
|
208
|
+
translate: true,
|
|
209
|
+
data: [
|
|
210
|
+
{ value: '0', text: 'TEKUSERINFO_ERROR' },
|
|
211
|
+
{ value: '1', text: 'TEKUSERINFO_IMPROVEMENT' },
|
|
212
|
+
],
|
|
213
|
+
},
|
|
214
|
+
},
|
|
215
|
+
{
|
|
216
|
+
name: 'report_description',
|
|
217
|
+
component: 'ZdTextarea',
|
|
218
|
+
label: 'TEKUSERINFO_DESCRIPTION',
|
|
219
|
+
},
|
|
220
|
+
],
|
|
221
|
+
},
|
|
222
|
+
{
|
|
223
|
+
component: 'ZdFooter',
|
|
224
|
+
rightSlot: [
|
|
225
|
+
{ component: 'ZdButton', label: 'TEKUSERINFO_CANCEL' },
|
|
226
|
+
{ component: 'ZdButton', label: 'TEKUSERINFO_SEND' },
|
|
227
|
+
],
|
|
228
|
+
},
|
|
229
|
+
],
|
|
230
|
+
});
|
|
231
|
+
});
|
|
232
|
+
|
|
233
|
+
it('when onReportClick is called twice, should create the modal only once', () => {
|
|
234
|
+
const spy = jest.spyOn(ModalService, 'create');
|
|
235
|
+
const instance = instantiateAndCreate({
|
|
236
|
+
name: 'TekUserInfo',
|
|
237
|
+
component: 'TekUserInfo',
|
|
238
|
+
defaultEmail: 'zeedhi@zd.com',
|
|
239
|
+
});
|
|
240
|
+
|
|
241
|
+
instance.onReportClick();
|
|
242
|
+
instance.onReportClick();
|
|
243
|
+
|
|
244
|
+
expect(spy).toHaveBeenCalledTimes(1);
|
|
245
|
+
|
|
246
|
+
spy.mockClear();
|
|
247
|
+
});
|
|
248
|
+
|
|
249
|
+
it('when send button is clicked, should call onSendReport event', () => {
|
|
250
|
+
const onSendReport = jest.fn();
|
|
251
|
+
const spy = jest.spyOn(Metadata, 'getInstance').mockImplementation(() => ({
|
|
252
|
+
validate: () => true,
|
|
253
|
+
}));
|
|
254
|
+
const instance = instantiateAndCreate({
|
|
255
|
+
name: 'TekUserInfo',
|
|
256
|
+
component: 'TekUserInfo',
|
|
257
|
+
events: {
|
|
258
|
+
onSendReport,
|
|
259
|
+
},
|
|
260
|
+
});
|
|
261
|
+
instance.onReportClick();
|
|
262
|
+
const button = instance.reportModal?.children[2].rightSlot[1];
|
|
263
|
+
const buttonInstance = new Button(button);
|
|
264
|
+
|
|
265
|
+
buttonInstance.click();
|
|
266
|
+
|
|
267
|
+
expect(onSendReport).toHaveBeenCalled();
|
|
268
|
+
spy.mockClear();
|
|
269
|
+
});
|
|
270
|
+
|
|
271
|
+
it('when send button is clicked and form is invalid, should not call onSendReport event', () => {
|
|
272
|
+
const onSendReport = jest.fn();
|
|
273
|
+
const spy = jest.spyOn(Metadata, 'getInstance').mockImplementation(() => ({
|
|
274
|
+
validate: () => false,
|
|
275
|
+
}));
|
|
276
|
+
const instance = instantiateAndCreate({
|
|
277
|
+
name: 'TekUserInfo',
|
|
278
|
+
component: 'TekUserInfo',
|
|
279
|
+
events: {
|
|
280
|
+
onSendReport,
|
|
281
|
+
},
|
|
282
|
+
});
|
|
283
|
+
instance.onReportClick();
|
|
284
|
+
const button = instance.reportModal?.children[2].rightSlot[1];
|
|
285
|
+
const buttonInstance = new Button(button);
|
|
286
|
+
|
|
287
|
+
buttonInstance.click();
|
|
288
|
+
|
|
289
|
+
expect(onSendReport).not.toHaveBeenCalled();
|
|
290
|
+
spy.mockClear();
|
|
291
|
+
});
|
|
292
|
+
|
|
293
|
+
it('when reportModal is undefined, should not call onSendReport event', () => {
|
|
294
|
+
const onSendReport = jest.fn();
|
|
295
|
+
const spy = jest.spyOn(Metadata, 'getInstance').mockImplementation(() => ({
|
|
296
|
+
validate: () => false,
|
|
297
|
+
}));
|
|
298
|
+
const instance = instantiateAndCreate({
|
|
299
|
+
name: 'TekUserInfo',
|
|
300
|
+
component: 'TekUserInfo',
|
|
301
|
+
events: {
|
|
302
|
+
onSendReport,
|
|
303
|
+
},
|
|
304
|
+
});
|
|
305
|
+
instance.onReportClick();
|
|
306
|
+
const button = instance.reportModal?.children[2].rightSlot[1];
|
|
307
|
+
const buttonInstance = new Button(button);
|
|
308
|
+
|
|
309
|
+
instance.reportModal = undefined;
|
|
310
|
+
buttonInstance.click();
|
|
311
|
+
|
|
312
|
+
expect(onSendReport).not.toHaveBeenCalled();
|
|
313
|
+
spy.mockClear();
|
|
314
|
+
});
|
|
315
|
+
|
|
316
|
+
it('when cancel button is clicked, should close the modal', () => {
|
|
317
|
+
const instance = instantiateAndCreate({
|
|
318
|
+
name: 'TekUserInfo',
|
|
319
|
+
component: 'TekUserInfo',
|
|
320
|
+
});
|
|
321
|
+
instance.onReportClick();
|
|
322
|
+
const spy = jest.spyOn(instance.reportModal as Modal, 'hide');
|
|
323
|
+
const button = instance.reportModal?.children[2].rightSlot[0];
|
|
324
|
+
const buttonInstance = new Button(button);
|
|
325
|
+
|
|
326
|
+
buttonInstance.click();
|
|
327
|
+
|
|
328
|
+
expect(spy).toHaveBeenCalled();
|
|
329
|
+
spy.mockClear();
|
|
330
|
+
});
|
|
331
|
+
|
|
332
|
+
it('when cancel button is clicked, should not throw if reportModal is undefined', () => {
|
|
333
|
+
const instance = instantiateAndCreate({
|
|
334
|
+
name: 'TekUserInfo',
|
|
335
|
+
component: 'TekUserInfo',
|
|
336
|
+
});
|
|
337
|
+
instance.onReportClick();
|
|
338
|
+
const button = instance.reportModal?.children[2].rightSlot[0];
|
|
339
|
+
const buttonInstance = new Button(button);
|
|
340
|
+
|
|
341
|
+
instance.reportModal = undefined;
|
|
342
|
+
|
|
343
|
+
expect(() => buttonInstance.click()).not.toThrow();
|
|
344
|
+
});
|
|
345
|
+
});
|
|
346
|
+
|
|
347
|
+
describe('onMounted', () => {
|
|
348
|
+
it('when onMounted is called and versionUrl is defined, should make a GET request to versionUrl', async () => {
|
|
349
|
+
const spy = jest.spyOn(Http, 'get').mockImplementation(() => Promise.resolve({
|
|
350
|
+
data: {
|
|
351
|
+
versionInfo: {
|
|
352
|
+
name: 'Zeedhi',
|
|
353
|
+
version: '1.0.0',
|
|
354
|
+
frontend: [{ name: 'package 1', version: '1.0.0' }],
|
|
355
|
+
backend: [{ name: 'package 2', version: '2.0.0' }],
|
|
356
|
+
modules: [{ name: 'package 3', version: '3.0.0' }],
|
|
357
|
+
},
|
|
358
|
+
},
|
|
359
|
+
}));
|
|
360
|
+
const instance = new TekUserInfo({
|
|
361
|
+
name: 'TekUserInfo',
|
|
362
|
+
component: 'TekUserInfo',
|
|
363
|
+
versionUrl: '/version',
|
|
364
|
+
});
|
|
365
|
+
|
|
366
|
+
await instance.onMounted({});
|
|
367
|
+
|
|
368
|
+
expect(instance.versionInfo).toEqual({
|
|
369
|
+
name: 'Zeedhi',
|
|
370
|
+
version: '1.0.0',
|
|
371
|
+
frontend: [{ name: 'package 1', version: '1.0.0' }],
|
|
372
|
+
backend: [{ name: 'package 2', version: '2.0.0' }],
|
|
373
|
+
modules: [{ name: 'package 3', version: '3.0.0' }],
|
|
374
|
+
});
|
|
375
|
+
spy.mockClear();
|
|
376
|
+
});
|
|
377
|
+
});
|
|
378
|
+
|
|
379
|
+
describe('onCreated', () => {
|
|
380
|
+
it('when onCreated is called and bottomSlot is empty, should assign default value to the latter', () => {
|
|
381
|
+
const instance = instantiateAndCreate({
|
|
382
|
+
name: 'TekUserInfo',
|
|
383
|
+
component: 'TekUserInfo',
|
|
384
|
+
});
|
|
385
|
+
|
|
386
|
+
expect(instance.bottomSlot).toMatchObject([
|
|
387
|
+
{
|
|
388
|
+
name: 'TekUserInfo_bottom_list',
|
|
389
|
+
component: 'TekUserInfoList',
|
|
390
|
+
parentName: 'TekUserInfo',
|
|
391
|
+
},
|
|
392
|
+
]);
|
|
393
|
+
});
|
|
394
|
+
});
|
|
395
|
+
});
|
|
@@ -32,3 +32,6 @@ export * from './tek-datasource/rest-datasource';
|
|
|
32
32
|
export * from './tek-datasource/memory-datasource';
|
|
33
33
|
export * from './tek-tree-grid/interfaces';
|
|
34
34
|
export * from './tek-tree-grid/tree-grid';
|
|
35
|
+
export * from './tek-user-info/interfaces';
|
|
36
|
+
export * from './tek-user-info/tek-user-info';
|
|
37
|
+
export * from './tek-user-info/tek-user-info-list';
|
|
@@ -1,7 +1,5 @@
|
|
|
1
1
|
import { TekGridColumn } from '..';
|
|
2
2
|
export declare class TekFilterHelper {
|
|
3
|
-
private static values;
|
|
4
|
-
private static formatDate;
|
|
5
3
|
static getLabel(name: string): string;
|
|
6
4
|
static getValue(name: string, column: TekGridColumn): string | string[];
|
|
7
5
|
static register(name: string, label: string, fn: () => Date | [Date, Date]): void;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { IComponent, IComponentEvents, IComponentRender, IGridColumnEditable, IGridEditable, IIterableColumnsButton } from '@zeedhi/common';
|
|
2
|
-
import { IDictionary, IEvent, IEventParam } from '@zeedhi/core';
|
|
2
|
+
import { IDictionary, IEvent, IEventParam, IDateHelperValue, IDateHelperValues } from '@zeedhi/core';
|
|
3
3
|
import { IDynamicFilterItem, TekGridLayoutOptions } from '..';
|
|
4
4
|
export interface ITekGridLayoutEventParams extends IEventParam<ITekGrid> {
|
|
5
5
|
layouts: ITekGridLayoutInfo;
|
|
@@ -138,10 +138,7 @@ export interface ITekGridSummary {
|
|
|
138
138
|
min: any;
|
|
139
139
|
max: any;
|
|
140
140
|
}
|
|
141
|
-
export interface ITekFilterHelperValue {
|
|
142
|
-
label: string;
|
|
143
|
-
fn: () => Date | [Date, Date];
|
|
141
|
+
export interface ITekFilterHelperValue extends IDateHelperValue {
|
|
144
142
|
}
|
|
145
|
-
export interface ITekFilterHelperValues {
|
|
146
|
-
[key: string]: ITekFilterHelperValue;
|
|
143
|
+
export interface ITekFilterHelperValues extends IDateHelperValues {
|
|
147
144
|
}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { TekUserInfo } from './tek-user-info';
|
|
2
|
+
export declare class TekUserInfoController {
|
|
3
|
+
component: TekUserInfo;
|
|
4
|
+
get versionInfo(): import("./interfaces").IVersionInfo | null;
|
|
5
|
+
constructor(component: TekUserInfo);
|
|
6
|
+
get name(): string;
|
|
7
|
+
set name(value: string);
|
|
8
|
+
get version(): string;
|
|
9
|
+
set version(value: string);
|
|
10
|
+
get defaultEmail(): string;
|
|
11
|
+
set defaultEmail(value: string);
|
|
12
|
+
get hasDefaultEmail(): boolean;
|
|
13
|
+
get hasAboutImage(): boolean;
|
|
14
|
+
mergeText(name: string, version: string): string;
|
|
15
|
+
get mainVersion(): string;
|
|
16
|
+
protected getItems(tab: 'frontend' | 'backend' | 'modules'): string[];
|
|
17
|
+
get frontendItems(): string[];
|
|
18
|
+
get backendItems(): string[];
|
|
19
|
+
get modulesItems(): string[];
|
|
20
|
+
}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { IList } from '@zeedhi/common';
|
|
2
|
+
import { IUserInfo } from '@zeedhi/zd-user-info-common';
|
|
3
|
+
export interface IVersionInfo {
|
|
4
|
+
name: string;
|
|
5
|
+
version: string;
|
|
6
|
+
frontend: {
|
|
7
|
+
name: string;
|
|
8
|
+
version: string;
|
|
9
|
+
}[];
|
|
10
|
+
backend: {
|
|
11
|
+
name: string;
|
|
12
|
+
version: string;
|
|
13
|
+
}[];
|
|
14
|
+
modules: {
|
|
15
|
+
name: string;
|
|
16
|
+
version: string;
|
|
17
|
+
}[];
|
|
18
|
+
}
|
|
19
|
+
export interface ITekUserInfo extends IUserInfo {
|
|
20
|
+
aboutImage?: string;
|
|
21
|
+
defaultEmail?: string;
|
|
22
|
+
versionInfo?: IVersionInfo | null;
|
|
23
|
+
versionUrl?: string;
|
|
24
|
+
}
|
|
25
|
+
export interface ITekUserInfoList extends IList {
|
|
26
|
+
parentName?: string;
|
|
27
|
+
}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { List } from '@zeedhi/common';
|
|
2
|
+
import { ITekUserInfo, ITekUserInfoList } from './interfaces';
|
|
3
|
+
export declare class TekUserInfoList extends List implements ITekUserInfoList {
|
|
4
|
+
/**
|
|
5
|
+
* Name of the user info component
|
|
6
|
+
*/
|
|
7
|
+
parentName: string;
|
|
8
|
+
dense: boolean;
|
|
9
|
+
constructor(props: ITekUserInfo);
|
|
10
|
+
protected getItems(): ({
|
|
11
|
+
name: string;
|
|
12
|
+
component: string;
|
|
13
|
+
title: string;
|
|
14
|
+
subtitle: string;
|
|
15
|
+
cssClass: string;
|
|
16
|
+
prependIcon?: undefined;
|
|
17
|
+
events?: undefined;
|
|
18
|
+
} | {
|
|
19
|
+
name: string;
|
|
20
|
+
component: string;
|
|
21
|
+
title: string;
|
|
22
|
+
prependIcon: string;
|
|
23
|
+
cssClass: string;
|
|
24
|
+
events: {
|
|
25
|
+
click: () => void;
|
|
26
|
+
};
|
|
27
|
+
subtitle?: undefined;
|
|
28
|
+
})[];
|
|
29
|
+
}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import { Button, IComponentRender, Modal } from '@zeedhi/common';
|
|
2
|
+
import { IEventParam } from '@zeedhi/core';
|
|
3
|
+
import { UserInfo } from '@zeedhi/zd-user-info-common';
|
|
4
|
+
import { ITekUserInfo, IVersionInfo } from './interfaces';
|
|
5
|
+
export declare class TekUserInfo extends UserInfo implements ITekUserInfo {
|
|
6
|
+
aboutModal?: Modal;
|
|
7
|
+
reportModal?: Modal;
|
|
8
|
+
/**
|
|
9
|
+
* Data about the application version
|
|
10
|
+
*/
|
|
11
|
+
versionInfo: IVersionInfo | null;
|
|
12
|
+
/**
|
|
13
|
+
* Default email address to be defined in the Report Bug form
|
|
14
|
+
*/
|
|
15
|
+
defaultEmail: string;
|
|
16
|
+
/**
|
|
17
|
+
* Url from which the version info will be retrieved
|
|
18
|
+
*/
|
|
19
|
+
versionUrl: string;
|
|
20
|
+
/**
|
|
21
|
+
* Path to the image to be shown on about modal
|
|
22
|
+
*/
|
|
23
|
+
aboutImage: string;
|
|
24
|
+
protected propBottomSlot?: IComponentRender[];
|
|
25
|
+
constructor(props: ITekUserInfo);
|
|
26
|
+
protected getBottomSlot(): IComponentRender[];
|
|
27
|
+
onAboutClick(): void;
|
|
28
|
+
protected getVersionTree(tab: 'frontend' | 'backend' | 'modules'): {
|
|
29
|
+
name: string;
|
|
30
|
+
component: string;
|
|
31
|
+
text: string;
|
|
32
|
+
}[];
|
|
33
|
+
onReportClick(): void;
|
|
34
|
+
onSendReport({ event, element }: IEventParam<Button>): void;
|
|
35
|
+
onCreated(): void;
|
|
36
|
+
onMounted(element: any): Promise<void>;
|
|
37
|
+
}
|
|
@@ -252,12 +252,7 @@ export declare class GridBase {
|
|
|
252
252
|
hideFilterModal(): void;
|
|
253
253
|
private sortFilterIndex;
|
|
254
254
|
private getFilterModalComponents;
|
|
255
|
-
private
|
|
256
|
-
private createHelperValueOptions;
|
|
257
|
-
private helperValuesOptionClick;
|
|
258
|
-
private setFilterPropsHelperValue;
|
|
259
|
-
private registerFilterComponentToForm;
|
|
260
|
-
private clearFilterHelperValue;
|
|
255
|
+
private changeHelperEvent;
|
|
261
256
|
private loadFilterValues;
|
|
262
257
|
private applyFilter;
|
|
263
258
|
private clearFilter;
|