@onecx/angular-testing 4.43.1 → 5.0.0
Sign up to get free protection for your applications and to get access to all the features.
- package/esm2022/lib/harnesses/button.harness.mjs +31 -0
- package/esm2022/lib/harnesses/div.harness.mjs +28 -0
- package/esm2022/lib/harnesses/input.harness.mjs +39 -0
- package/esm2022/lib/harnesses/list-item.harness.mjs +17 -0
- package/esm2022/lib/harnesses/menu-item.harness.mjs +17 -0
- package/esm2022/lib/harnesses/p-tableCheckbox.harness.mjs +18 -0
- package/esm2022/lib/harnesses/p.harness.mjs +30 -0
- package/{esm2020 → esm2022}/lib/harnesses/primeng/p-accordion-tab.harness.mjs +2 -2
- package/{esm2020 → esm2022}/lib/harnesses/primeng/p-accordion.harness.mjs +2 -2
- package/esm2022/lib/harnesses/primeng/p-breadcrumb.harness.mjs +13 -0
- package/esm2022/lib/harnesses/primeng/p-button-directive.harness.mjs +23 -0
- package/esm2022/lib/harnesses/primeng/p-button.harness.mjs +27 -0
- package/{esm2020 → esm2022}/lib/harnesses/primeng/p-chart.harness.mjs +2 -2
- package/esm2022/lib/harnesses/primeng/p-checkbox.harness.mjs +27 -0
- package/esm2022/lib/harnesses/primeng/p-dialog.harness.mjs +25 -0
- package/esm2022/lib/harnesses/primeng/p-dropdown.harness.mjs +61 -0
- package/esm2022/lib/harnesses/primeng/p-menu-item.harness.mjs +25 -0
- package/esm2022/lib/harnesses/primeng/p-menu.harness.mjs +30 -0
- package/{esm2020 → esm2022}/lib/harnesses/primeng/p-menubar.harness.mjs +2 -2
- package/esm2022/lib/harnesses/primeng/p-multiSelect.harness.mjs +69 -0
- package/{esm2020 → esm2022}/lib/harnesses/primeng/p-multiSelectListItem.harness.mjs +2 -2
- package/{esm2020 → esm2022}/lib/harnesses/primeng/p-paginator.harness.mjs +2 -2
- package/esm2022/lib/harnesses/primeng/p-panelmenu-item.harness.mjs +26 -0
- package/{esm2020 → esm2022}/lib/harnesses/primeng/p-panelmenu.harness.mjs +2 -2
- package/esm2022/lib/harnesses/primeng/p-password.harness.mjs +34 -0
- package/esm2022/lib/harnesses/primeng/p-picklist.harness.mjs +64 -0
- package/{esm2020 → esm2022}/lib/harnesses/primeng/p-selectButton.harness.mjs +2 -2
- package/esm2022/lib/harnesses/span.harness.mjs +17 -0
- package/{esm2020 → esm2022}/lib/harnesses/table-header-column.harness.mjs +2 -2
- package/esm2022/lib/harnesses/table-row.harness.mjs +19 -0
- package/{fesm2020 → fesm2022}/onecx-angular-testing.mjs +44 -35
- package/fesm2022/onecx-angular-testing.mjs.map +1 -0
- package/package.json +7 -13
- package/esm2020/lib/harnesses/button.harness.mjs +0 -31
- package/esm2020/lib/harnesses/div.harness.mjs +0 -28
- package/esm2020/lib/harnesses/input.harness.mjs +0 -39
- package/esm2020/lib/harnesses/list-item.harness.mjs +0 -17
- package/esm2020/lib/harnesses/menu-item.harness.mjs +0 -17
- package/esm2020/lib/harnesses/p-tableCheckbox.harness.mjs +0 -18
- package/esm2020/lib/harnesses/p.harness.mjs +0 -30
- package/esm2020/lib/harnesses/primeng/p-breadcrumb.harness.mjs +0 -13
- package/esm2020/lib/harnesses/primeng/p-button-directive.harness.mjs +0 -23
- package/esm2020/lib/harnesses/primeng/p-button.harness.mjs +0 -27
- package/esm2020/lib/harnesses/primeng/p-checkbox.harness.mjs +0 -27
- package/esm2020/lib/harnesses/primeng/p-dialog.harness.mjs +0 -25
- package/esm2020/lib/harnesses/primeng/p-dropdown.harness.mjs +0 -61
- package/esm2020/lib/harnesses/primeng/p-menu-item.harness.mjs +0 -25
- package/esm2020/lib/harnesses/primeng/p-menu.harness.mjs +0 -30
- package/esm2020/lib/harnesses/primeng/p-multiSelect.harness.mjs +0 -60
- package/esm2020/lib/harnesses/primeng/p-panelmenu-item.harness.mjs +0 -26
- package/esm2020/lib/harnesses/primeng/p-password.harness.mjs +0 -34
- package/esm2020/lib/harnesses/primeng/p-picklist.harness.mjs +0 -64
- package/esm2020/lib/harnesses/span.harness.mjs +0 -17
- package/esm2020/lib/harnesses/table-row.harness.mjs +0 -19
- package/fesm2015/onecx-angular-testing.mjs +0 -938
- package/fesm2015/onecx-angular-testing.mjs.map +0 -1
- package/fesm2020/onecx-angular-testing.mjs.map +0 -1
- /package/{esm2020 → esm2022}/index.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/harnesses/menu-item-with-icon.harness.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/harnesses/utils/primeicon.utils.mjs +0 -0
- /package/{esm2020 → esm2022}/onecx-angular-testing.mjs +0 -0
@@ -7,21 +7,22 @@ class PAccordionTabHarness extends ComponentHarness {
|
|
7
7
|
super(...arguments);
|
8
8
|
this.getButton = this.locatorFor('a.p-accordion-header-link');
|
9
9
|
}
|
10
|
+
static { this.hostSelector = 'p-accordiontab'; }
|
10
11
|
async expand() {
|
11
12
|
await (await this.getButton()).click();
|
12
13
|
}
|
13
14
|
}
|
14
|
-
PAccordionTabHarness.hostSelector = 'p-accordiontab';
|
15
15
|
|
16
16
|
class PAccordionHarness extends ComponentHarness {
|
17
17
|
constructor() {
|
18
18
|
super(...arguments);
|
19
19
|
this.getAllAccordionTabs = this.locatorForAll(PAccordionTabHarness);
|
20
20
|
}
|
21
|
+
static { this.hostSelector = 'p-accordion'; }
|
21
22
|
}
|
22
|
-
PAccordionHarness.hostSelector = 'p-accordion';
|
23
23
|
|
24
24
|
class ListItemHarness extends ComponentHarness {
|
25
|
+
static { this.hostSelector = 'li'; }
|
25
26
|
static with(options) {
|
26
27
|
return new HarnessPredicate(ListItemHarness, options).addOption('text', options.text, (harness, text) => HarnessPredicate.stringMatches(harness.getText(), text));
|
27
28
|
}
|
@@ -35,20 +36,20 @@ class ListItemHarness extends ComponentHarness {
|
|
35
36
|
await (await this.host()).click();
|
36
37
|
}
|
37
38
|
}
|
38
|
-
ListItemHarness.hostSelector = 'li';
|
39
39
|
|
40
40
|
class PBreadcrumbHarness extends ComponentHarness {
|
41
41
|
constructor() {
|
42
42
|
super(...arguments);
|
43
43
|
this.getBreadcrumbItems = this.locatorForAll(ListItemHarness);
|
44
44
|
}
|
45
|
+
static { this.hostSelector = 'p-breadcrumb'; }
|
45
46
|
async getBreadcrumbItem(itemText) {
|
46
47
|
return await this.locatorForOptional(ListItemHarness.with({ text: itemText }))();
|
47
48
|
}
|
48
49
|
}
|
49
|
-
PBreadcrumbHarness.hostSelector = 'p-breadcrumb';
|
50
50
|
|
51
51
|
class PButtonDirectiveHarness extends ComponentHarness {
|
52
|
+
static { this.hostSelector = 'button[pButton]'; }
|
52
53
|
static with(options) {
|
53
54
|
return new HarnessPredicate(PButtonDirectiveHarness, options).addOption('id', options.id, (harness, id) => HarnessPredicate.stringMatches(harness.getId(), id));
|
54
55
|
}
|
@@ -68,9 +69,9 @@ class PButtonDirectiveHarness extends ComponentHarness {
|
|
68
69
|
return await (await this.host()).getProperty('disabled');
|
69
70
|
}
|
70
71
|
}
|
71
|
-
PButtonDirectiveHarness.hostSelector = 'button[pButton]';
|
72
72
|
|
73
73
|
class PButtonHarness extends ComponentHarness {
|
74
|
+
static { this.hostSelector = 'p-button'; }
|
74
75
|
static with(options) {
|
75
76
|
return new HarnessPredicate(PButtonHarness, options)
|
76
77
|
.addOption('id', options.id, (harness, id) => HarnessPredicate.stringMatches(harness.getId(), id))
|
@@ -94,9 +95,9 @@ class PButtonHarness extends ComponentHarness {
|
|
94
95
|
await (await this.locatorFor('button')()).click();
|
95
96
|
}
|
96
97
|
}
|
97
|
-
PButtonHarness.hostSelector = 'p-button';
|
98
98
|
|
99
99
|
class PChartHarness extends ComponentHarness {
|
100
|
+
static { this.hostSelector = 'p-chart'; }
|
100
101
|
async getType() {
|
101
102
|
return await (await this.host()).getAttribute('ng-reflect-type');
|
102
103
|
}
|
@@ -104,9 +105,9 @@ class PChartHarness extends ComponentHarness {
|
|
104
105
|
return await (await this.host()).getAttribute('ng-reflect-options');
|
105
106
|
}
|
106
107
|
}
|
107
|
-
PChartHarness.hostSelector = 'p-chart';
|
108
108
|
|
109
109
|
class DivHarness extends ComponentHarness {
|
110
|
+
static { this.hostSelector = 'div'; }
|
110
111
|
static with(options) {
|
111
112
|
return new HarnessPredicate(DivHarness, options).addOption('class', options.class, (harness, c) => HarnessPredicate.stringMatches(harness.getByClass(c), c));
|
112
113
|
}
|
@@ -131,9 +132,9 @@ class DivHarness extends ComponentHarness {
|
|
131
132
|
await (await this.host()).click();
|
132
133
|
}
|
133
134
|
}
|
134
|
-
DivHarness.hostSelector = 'div';
|
135
135
|
|
136
136
|
class InputHarness extends ComponentHarness {
|
137
|
+
static { this.hostSelector = 'input'; }
|
137
138
|
static with(options) {
|
138
139
|
return new HarnessPredicate(InputHarness, options).addOption('id', options.id, (harness, id) => HarnessPredicate.stringMatches(harness.getId(), id));
|
139
140
|
}
|
@@ -169,13 +170,13 @@ class InputHarness extends ComponentHarness {
|
|
169
170
|
await (await this.host()).click();
|
170
171
|
}
|
171
172
|
}
|
172
|
-
InputHarness.hostSelector = 'input';
|
173
173
|
|
174
174
|
class PCheckboxHarness extends ComponentHarness {
|
175
175
|
constructor() {
|
176
176
|
super(...arguments);
|
177
177
|
this.getCheckBoxDiv = this.locatorForOptional(DivHarness.with({ class: 'p-checkbox-box' }));
|
178
178
|
}
|
179
|
+
static { this.hostSelector = 'p-checkbox'; }
|
179
180
|
static with(options) {
|
180
181
|
return new HarnessPredicate(PCheckboxHarness, options).addOption('inputid', options.inputid, (harness, inputid) => HarnessPredicate.stringMatches(harness.getId(), inputid));
|
181
182
|
}
|
@@ -193,7 +194,6 @@ class PCheckboxHarness extends ComponentHarness {
|
|
193
194
|
await (await this.getCheckBoxDiv())?.click();
|
194
195
|
}
|
195
196
|
}
|
196
|
-
PCheckboxHarness.hostSelector = 'p-checkbox';
|
197
197
|
|
198
198
|
class PDialogHarness extends ContentContainerComponentHarness {
|
199
199
|
constructor() {
|
@@ -201,6 +201,7 @@ class PDialogHarness extends ContentContainerComponentHarness {
|
|
201
201
|
this.getHeader = this.locatorForOptional(DivHarness.with({ class: 'p-dialog-header' }));
|
202
202
|
this.getFooter = this.locatorForOptional(DivHarness.with({ class: 'p-dialog-footer' }));
|
203
203
|
}
|
204
|
+
static { this.hostSelector = 'p-dialog'; }
|
204
205
|
async getDialogTitle() {
|
205
206
|
return await (await this.getHeader())?.getText();
|
206
207
|
}
|
@@ -216,9 +217,9 @@ class PDialogHarness extends ContentContainerComponentHarness {
|
|
216
217
|
return (await (await this.host()).getAttribute('ng-reflect-visible')) === 'true' ? true : false;
|
217
218
|
}
|
218
219
|
}
|
219
|
-
PDialogHarness.hostSelector = 'p-dialog';
|
220
220
|
|
221
221
|
class PDropdownHarness extends ContentContainerComponentHarness {
|
222
|
+
static { this.hostSelector = 'p-dropdown'; }
|
222
223
|
static with(options) {
|
223
224
|
return new HarnessPredicate(PDropdownHarness, options).addOption('id', options.id, (harness, id) => HarnessPredicate.stringMatches(harness.getId(), id));
|
224
225
|
}
|
@@ -275,9 +276,9 @@ class PDropdownHarness extends ContentContainerComponentHarness {
|
|
275
276
|
}
|
276
277
|
}
|
277
278
|
}
|
278
|
-
PDropdownHarness.hostSelector = 'p-dropdown';
|
279
279
|
|
280
280
|
class SpanHarness extends ComponentHarness {
|
281
|
+
static { this.hostSelector = 'span'; }
|
281
282
|
static with(options) {
|
282
283
|
return new HarnessPredicate(SpanHarness, options).addOption('class', options.class, (harness, c) => HarnessPredicate.stringMatches(harness.getByClass(c), c));
|
283
284
|
}
|
@@ -291,7 +292,6 @@ class SpanHarness extends ComponentHarness {
|
|
291
292
|
return await (await this.host()).text();
|
292
293
|
}
|
293
294
|
}
|
294
|
-
SpanHarness.hostSelector = 'span';
|
295
295
|
|
296
296
|
class PMenuItemHarness extends ComponentHarness {
|
297
297
|
constructor() {
|
@@ -300,6 +300,7 @@ class PMenuItemHarness extends ComponentHarness {
|
|
300
300
|
this.getChildren = this.locatorForAll(PMenuItemHarness);
|
301
301
|
this.getIconSpan = this.locatorForOptional(SpanHarness.with({ class: 'p-menuitem-icon' }));
|
302
302
|
}
|
303
|
+
static { this.hostSelector = 'li.p-menuitem'; }
|
303
304
|
async getText() {
|
304
305
|
return await (await this.getAnchor()).text();
|
305
306
|
}
|
@@ -314,9 +315,9 @@ class PMenuItemHarness extends ComponentHarness {
|
|
314
315
|
return await (await this.getAnchor()).getAttribute('href');
|
315
316
|
}
|
316
317
|
}
|
317
|
-
PMenuItemHarness.hostSelector = 'li.p-menuitem';
|
318
318
|
|
319
319
|
class MenuItemHarness extends ComponentHarness {
|
320
|
+
static { this.hostSelector = 'li>div>a'; }
|
320
321
|
static with(options) {
|
321
322
|
return new HarnessPredicate(MenuItemHarness, options).addOption('text', options.text, (harness, text) => HarnessPredicate.stringMatches(harness.getText(), text));
|
322
323
|
}
|
@@ -330,9 +331,9 @@ class MenuItemHarness extends ComponentHarness {
|
|
330
331
|
return await (await this.host()).getAttribute('href');
|
331
332
|
}
|
332
333
|
}
|
333
|
-
MenuItemHarness.hostSelector = 'li > a';
|
334
334
|
|
335
335
|
class PMenuHarness extends ContentContainerComponentHarness {
|
336
|
+
static { this.hostSelector = 'p-menu'; }
|
336
337
|
async getHarnessLoaderForPMenuOverlay() {
|
337
338
|
return this.documentRootLocatorFactory().harnessLoaderForOptional('.p-menu-overlay');
|
338
339
|
}
|
@@ -358,17 +359,17 @@ class PMenuHarness extends ContentContainerComponentHarness {
|
|
358
359
|
return undefined;
|
359
360
|
}
|
360
361
|
}
|
361
|
-
PMenuHarness.hostSelector = 'p-menu';
|
362
362
|
|
363
363
|
class PMenuBarHarness extends ComponentHarness {
|
364
364
|
constructor() {
|
365
365
|
super(...arguments);
|
366
366
|
this.getAllMenuItems = this.locatorForAll(PMenuItemHarness);
|
367
367
|
}
|
368
|
+
static { this.hostSelector = 'p-menubar'; }
|
368
369
|
}
|
369
|
-
PMenuBarHarness.hostSelector = 'p-menubar';
|
370
370
|
|
371
371
|
class PMultiSelectListItemHarness extends ComponentHarness {
|
372
|
+
static { this.hostSelector = 'li'; }
|
372
373
|
async getTestElement() {
|
373
374
|
return await this.host();
|
374
375
|
}
|
@@ -379,9 +380,9 @@ class PMultiSelectListItemHarness extends ComponentHarness {
|
|
379
380
|
return await (await this.host()).text();
|
380
381
|
}
|
381
382
|
}
|
382
|
-
PMultiSelectListItemHarness.hostSelector = 'li';
|
383
383
|
|
384
384
|
class PMultiSelectHarness extends ComponentHarness {
|
385
|
+
static { this.hostSelector = 'p-multiselect'; }
|
385
386
|
static with(options) {
|
386
387
|
return new HarnessPredicate(PMultiSelectHarness, options)
|
387
388
|
.addOption('id', options.id, (harness, id) => HarnessPredicate.stringMatches(harness.getId(), id))
|
@@ -404,7 +405,14 @@ class PMultiSelectHarness extends ComponentHarness {
|
|
404
405
|
return await (await this.getHarnessLoaderForPMultiSelectPanel()).getAllHarnesses(PMultiSelectListItemHarness);
|
405
406
|
}
|
406
407
|
async isOpen() {
|
407
|
-
|
408
|
+
try {
|
409
|
+
await this.getHarnessLoaderForPMultiSelectPanel();
|
410
|
+
return true;
|
411
|
+
}
|
412
|
+
catch (error) {
|
413
|
+
console.error(error);
|
414
|
+
return false;
|
415
|
+
}
|
408
416
|
}
|
409
417
|
async open() {
|
410
418
|
if (!(await this.isOpen())) {
|
@@ -423,7 +431,9 @@ class PMultiSelectHarness extends ComponentHarness {
|
|
423
431
|
}
|
424
432
|
}
|
425
433
|
async isHighlighted(PMultiSelectListItem) {
|
426
|
-
return await (await PMultiSelectListItem.getTestElement()).
|
434
|
+
return (await (await PMultiSelectListItem.getTestElement()).getAttribute('data-p-highlight')) === 'true'
|
435
|
+
? true
|
436
|
+
: false;
|
427
437
|
}
|
428
438
|
async getSelectedOptions() {
|
429
439
|
const allOptions = await this.getAllOptions();
|
@@ -437,7 +447,6 @@ class PMultiSelectHarness extends ComponentHarness {
|
|
437
447
|
return selectedOptions;
|
438
448
|
}
|
439
449
|
}
|
440
|
-
PMultiSelectHarness.hostSelector = 'p-multiSelect';
|
441
450
|
|
442
451
|
class PanelMenuItemHarness extends ComponentHarness {
|
443
452
|
constructor() {
|
@@ -446,6 +455,7 @@ class PanelMenuItemHarness extends ComponentHarness {
|
|
446
455
|
this.getChildren = this.locatorForAll(PMenuItemHarness);
|
447
456
|
this.getIconSpan = this.locatorForOptional(SpanHarness.with({ class: 'p-menuitem-icon' }));
|
448
457
|
}
|
458
|
+
static { this.hostSelector = 'div.p-panelmenu-panel'; }
|
449
459
|
async getText() {
|
450
460
|
return await (await this.getAnchor()).text();
|
451
461
|
}
|
@@ -460,17 +470,17 @@ class PanelMenuItemHarness extends ComponentHarness {
|
|
460
470
|
return await (await this.getAnchor()).getAttribute('href');
|
461
471
|
}
|
462
472
|
}
|
463
|
-
PanelMenuItemHarness.hostSelector = 'div.p-panelmenu-panel';
|
464
473
|
|
465
474
|
class PPanelMenuHarness extends ComponentHarness {
|
466
475
|
constructor() {
|
467
476
|
super(...arguments);
|
468
477
|
this.getAllPanels = this.locatorForAll(PanelMenuItemHarness);
|
469
478
|
}
|
479
|
+
static { this.hostSelector = 'p-panelmenu'; }
|
470
480
|
}
|
471
|
-
PPanelMenuHarness.hostSelector = 'p-panelmenu';
|
472
481
|
|
473
482
|
class ButtonHarness extends ComponentHarness {
|
483
|
+
static { this.hostSelector = 'button'; }
|
474
484
|
static with(options) {
|
475
485
|
return new HarnessPredicate(ButtonHarness, options)
|
476
486
|
.addOption('id', options.id, (harness, id) => HarnessPredicate.stringMatches(harness.getId(), id))
|
@@ -498,7 +508,6 @@ class ButtonHarness extends ComponentHarness {
|
|
498
508
|
return await (await this.host()).getProperty('disabled');
|
499
509
|
}
|
500
510
|
}
|
501
|
-
ButtonHarness.hostSelector = 'button';
|
502
511
|
|
503
512
|
class PPaginatorHarness extends ContentContainerComponentHarness {
|
504
513
|
constructor() {
|
@@ -507,6 +516,7 @@ class PPaginatorHarness extends ContentContainerComponentHarness {
|
|
507
516
|
this.getRowsPerPageOptions = this.locatorFor(PDropdownHarness);
|
508
517
|
this.getNextPageButton = this.locatorFor(ButtonHarness.with({ class: 'p-paginator-next' }));
|
509
518
|
}
|
519
|
+
static { this.hostSelector = 'p-paginator'; }
|
510
520
|
async getCurrentPageReportText() {
|
511
521
|
return await (await this.getCurrentPageReport()).getText();
|
512
522
|
}
|
@@ -515,13 +525,13 @@ class PPaginatorHarness extends ContentContainerComponentHarness {
|
|
515
525
|
(await this.getNextPageButton()).click();
|
516
526
|
}
|
517
527
|
}
|
518
|
-
PPaginatorHarness.hostSelector = 'p-paginator';
|
519
528
|
|
520
529
|
class PPasswordHarness extends ComponentHarness {
|
521
530
|
constructor() {
|
522
531
|
super(...arguments);
|
523
532
|
this.getInput = this.locatorFor(InputHarness);
|
524
533
|
}
|
534
|
+
static { this.hostSelector = 'p-password'; }
|
525
535
|
static with(options) {
|
526
536
|
return new HarnessPredicate(PPasswordHarness, options).addOption('id', options.id, (harness, id) => HarnessPredicate.stringMatches(harness.getId(), id));
|
527
537
|
}
|
@@ -547,13 +557,13 @@ class PPasswordHarness extends ComponentHarness {
|
|
547
557
|
return await (await this.getInput()).setValue(value);
|
548
558
|
}
|
549
559
|
}
|
550
|
-
PPasswordHarness.hostSelector = 'p-password';
|
551
560
|
|
552
561
|
class PPicklistControlsButtonsHarness extends ContentContainerComponentHarness {
|
553
562
|
constructor() {
|
554
563
|
super(...arguments);
|
555
564
|
this.getButtons = this.locatorForAll(ButtonHarness);
|
556
565
|
}
|
566
|
+
static { this.hostSelector = '.p-picklist-buttons'; }
|
557
567
|
static with(options) {
|
558
568
|
return new HarnessPredicate(PPicklistControlsButtonsHarness, options).addOption('class', options.class, (harness, c) => HarnessPredicate.stringMatches(harness.getByClass(c), c));
|
559
569
|
}
|
@@ -561,13 +571,13 @@ class PPicklistControlsButtonsHarness extends ContentContainerComponentHarness {
|
|
561
571
|
return (await (await this.host()).hasClass(c)) ? c : '';
|
562
572
|
}
|
563
573
|
}
|
564
|
-
PPicklistControlsButtonsHarness.hostSelector = '.p-picklist-buttons';
|
565
574
|
class PPicklistListWrapperHarness extends ContentContainerComponentHarness {
|
566
575
|
constructor() {
|
567
576
|
super(...arguments);
|
568
577
|
this.getHeader = this.locatorFor(DivHarness.with({ class: 'p-picklist-header' }));
|
569
578
|
this.getAllListItems = this.locatorForAll(ListItemHarness);
|
570
579
|
}
|
580
|
+
static { this.hostSelector = '.p-picklist-list-wrapper'; }
|
571
581
|
static with(options) {
|
572
582
|
return new HarnessPredicate(PPicklistListWrapperHarness, options).addOption('class', options.class, (harness, c) => HarnessPredicate.stringMatches(harness.getByClass(c), c));
|
573
583
|
}
|
@@ -575,7 +585,6 @@ class PPicklistListWrapperHarness extends ContentContainerComponentHarness {
|
|
575
585
|
return (await (await this.host()).hasClass(c)) ? c : '';
|
576
586
|
}
|
577
587
|
}
|
578
|
-
PPicklistListWrapperHarness.hostSelector = '.p-picklist-list-wrapper';
|
579
588
|
class PPicklistHarness extends ContentContainerComponentHarness {
|
580
589
|
constructor() {
|
581
590
|
super(...arguments);
|
@@ -585,6 +594,7 @@ class PPicklistHarness extends ContentContainerComponentHarness {
|
|
585
594
|
this.getPicklistSource = this.locatorFor(PPicklistListWrapperHarness.with({ class: 'p-picklist-source-wrapper' }));
|
586
595
|
this.getPicklistTarget = this.locatorFor(PPicklistListWrapperHarness.with({ class: 'p-picklist-target-wrapper' }));
|
587
596
|
}
|
597
|
+
static { this.hostSelector = 'p-picklist'; }
|
588
598
|
async getSourceControlsButtons() {
|
589
599
|
return await (await this.getPicklistSourceControls()).getButtons();
|
590
600
|
}
|
@@ -607,15 +617,14 @@ class PPicklistHarness extends ContentContainerComponentHarness {
|
|
607
617
|
return await (await this.getPicklistTarget()).getAllListItems();
|
608
618
|
}
|
609
619
|
}
|
610
|
-
PPicklistHarness.hostSelector = 'p-picklist';
|
611
620
|
|
612
621
|
class PSelectButtonHarness extends ContentContainerComponentHarness {
|
613
622
|
constructor() {
|
614
623
|
super(...arguments);
|
615
624
|
this.getAllButtons = this.locatorForAll('div > div');
|
616
625
|
}
|
626
|
+
static { this.hostSelector = 'p-selectbutton'; }
|
617
627
|
}
|
618
|
-
PSelectButtonHarness.hostSelector = 'p-selectbutton';
|
619
628
|
|
620
629
|
class MenuItemWithIconHarness extends MenuItemHarness {
|
621
630
|
async hasIcon(icon) {
|
@@ -625,13 +634,14 @@ class MenuItemWithIconHarness extends MenuItemHarness {
|
|
625
634
|
}
|
626
635
|
|
627
636
|
class PTableCheckboxHarness extends ComponentHarness {
|
637
|
+
static { this.hostSelector = 'p-tablecheckbox'; }
|
628
638
|
static with(options = {}) {
|
629
639
|
return new HarnessPredicate(this, options).addOption('isSelected', options.isSelected, async (harness, selected) => {
|
630
640
|
return (await harness.isChecked()) === selected;
|
631
641
|
});
|
632
642
|
}
|
633
643
|
async isChecked() {
|
634
|
-
const allChecked = await this.locatorForAll('
|
644
|
+
const allChecked = await this.locatorForAll('checkicon')();
|
635
645
|
return allChecked.length === 1;
|
636
646
|
}
|
637
647
|
async checkBox() {
|
@@ -639,9 +649,9 @@ class PTableCheckboxHarness extends ComponentHarness {
|
|
639
649
|
return checkBoxElement.click();
|
640
650
|
}
|
641
651
|
}
|
642
|
-
PTableCheckboxHarness.hostSelector = 'p-tableCheckbox';
|
643
652
|
|
644
653
|
class PHarness extends ComponentHarness {
|
654
|
+
static { this.hostSelector = 'p'; }
|
645
655
|
static with(options) {
|
646
656
|
return new HarnessPredicate(PHarness, options)
|
647
657
|
.addOption('class', options.class, (harness, c) => HarnessPredicate.stringMatches(harness.getByClass(c), c))
|
@@ -668,7 +678,6 @@ class PHarness extends ComponentHarness {
|
|
668
678
|
return [];
|
669
679
|
}
|
670
680
|
}
|
671
|
-
PHarness.hostSelector = 'p';
|
672
681
|
|
673
682
|
class TableHeaderColumnHarness extends ContentContainerComponentHarness {
|
674
683
|
constructor() {
|
@@ -680,11 +689,11 @@ class TableHeaderColumnHarness extends ContentContainerComponentHarness {
|
|
680
689
|
class: 'filterMultiSelect',
|
681
690
|
}));
|
682
691
|
}
|
692
|
+
static { this.hostSelector = 'th'; }
|
683
693
|
async getText() {
|
684
694
|
return (await this.host()).text();
|
685
695
|
}
|
686
696
|
}
|
687
|
-
TableHeaderColumnHarness.hostSelector = 'th';
|
688
697
|
|
689
698
|
class TableRowHarness extends ContentContainerComponentHarness {
|
690
699
|
constructor() {
|
@@ -694,6 +703,7 @@ class TableRowHarness extends ContentContainerComponentHarness {
|
|
694
703
|
this.getEditButton = this.locatorForOptional(ButtonHarness.with({ class: 'editTableRowButton' }));
|
695
704
|
this.getDeleteButton = this.locatorForOptional(ButtonHarness.with({ class: 'deleteTableRowButton' }));
|
696
705
|
}
|
706
|
+
static { this.hostSelector = 'tbody > tr'; }
|
697
707
|
async getData() {
|
698
708
|
const tds = await this.locatorForAll('td')();
|
699
709
|
const isActionsTd = await Promise.all(tds.map((t) => t.hasClass('actions')));
|
@@ -701,7 +711,6 @@ class TableRowHarness extends ContentContainerComponentHarness {
|
|
701
711
|
return Promise.all(textTds.map((t) => t.text()));
|
702
712
|
}
|
703
713
|
}
|
704
|
-
TableRowHarness.hostSelector = 'tbody > tr';
|
705
714
|
|
706
715
|
/**
|
707
716
|
* Generated bundle index. Do not edit.
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"onecx-angular-testing.mjs","sources":["../../../../libs/angular-testing/src/lib/harnesses/primeng/p-accordion-tab.harness.ts","../../../../libs/angular-testing/src/lib/harnesses/primeng/p-accordion.harness.ts","../../../../libs/angular-testing/src/lib/harnesses/list-item.harness.ts","../../../../libs/angular-testing/src/lib/harnesses/primeng/p-breadcrumb.harness.ts","../../../../libs/angular-testing/src/lib/harnesses/primeng/p-button-directive.harness.ts","../../../../libs/angular-testing/src/lib/harnesses/primeng/p-button.harness.ts","../../../../libs/angular-testing/src/lib/harnesses/primeng/p-chart.harness.ts","../../../../libs/angular-testing/src/lib/harnesses/div.harness.ts","../../../../libs/angular-testing/src/lib/harnesses/input.harness.ts","../../../../libs/angular-testing/src/lib/harnesses/primeng/p-checkbox.harness.ts","../../../../libs/angular-testing/src/lib/harnesses/primeng/p-dialog.harness.ts","../../../../libs/angular-testing/src/lib/harnesses/primeng/p-dropdown.harness.ts","../../../../libs/angular-testing/src/lib/harnesses/span.harness.ts","../../../../libs/angular-testing/src/lib/harnesses/primeng/p-menu-item.harness.ts","../../../../libs/angular-testing/src/lib/harnesses/menu-item.harness.ts","../../../../libs/angular-testing/src/lib/harnesses/primeng/p-menu.harness.ts","../../../../libs/angular-testing/src/lib/harnesses/primeng/p-menubar.harness.ts","../../../../libs/angular-testing/src/lib/harnesses/primeng/p-multiSelectListItem.harness.ts","../../../../libs/angular-testing/src/lib/harnesses/primeng/p-multiSelect.harness.ts","../../../../libs/angular-testing/src/lib/harnesses/primeng/p-panelmenu-item.harness.ts","../../../../libs/angular-testing/src/lib/harnesses/primeng/p-panelmenu.harness.ts","../../../../libs/angular-testing/src/lib/harnesses/button.harness.ts","../../../../libs/angular-testing/src/lib/harnesses/primeng/p-paginator.harness.ts","../../../../libs/angular-testing/src/lib/harnesses/primeng/p-password.harness.ts","../../../../libs/angular-testing/src/lib/harnesses/primeng/p-picklist.harness.ts","../../../../libs/angular-testing/src/lib/harnesses/primeng/p-selectButton.harness.ts","../../../../libs/angular-testing/src/lib/harnesses/menu-item-with-icon.harness.ts","../../../../libs/angular-testing/src/lib/harnesses/p-tableCheckbox.harness.ts","../../../../libs/angular-testing/src/lib/harnesses/p.harness.ts","../../../../libs/angular-testing/src/lib/harnesses/table-header-column.harness.ts","../../../../libs/angular-testing/src/lib/harnesses/table-row.harness.ts","../../../../libs/angular-testing/src/onecx-angular-testing.ts"],"sourcesContent":["import { ComponentHarness } from '@angular/cdk/testing'\n\nexport class PAccordionTabHarness extends ComponentHarness {\n static hostSelector = 'p-accordiontab'\n\n getButton = this.locatorFor('a.p-accordion-header-link')\n\n async expand() {\n await (await this.getButton()).click()\n }\n}\n","import { ComponentHarness } from '@angular/cdk/testing'\nimport { PAccordionTabHarness } from './p-accordion-tab.harness'\n\nexport class PAccordionHarness extends ComponentHarness {\n static hostSelector = 'p-accordion'\n\n getAllAccordionTabs = this.locatorForAll(PAccordionTabHarness)\n}\n","import { BaseHarnessFilters, ComponentHarness, HarnessPredicate } from '@angular/cdk/testing'\n\nexport interface ListItemHarnessFilters extends BaseHarnessFilters {\n text?: string\n}\n\nexport class ListItemHarness extends ComponentHarness {\n static hostSelector = 'li'\n\n static with(options: ListItemHarnessFilters): HarnessPredicate<ListItemHarness> {\n return new HarnessPredicate(ListItemHarness, options).addOption('text', options.text, (harness, text) =>\n HarnessPredicate.stringMatches(harness.getText(), text)\n )\n }\n\n async getText() {\n return await (await this.host()).text()\n }\n\n async isSelected(): Promise<boolean> {\n return (await (await this.host()).getAttribute('aria-selected')) === 'true' ? true : false\n }\n\n async selectItem() {\n await (await this.host()).click()\n }\n}\n","import { ComponentHarness } from '@angular/cdk/testing'\nimport { ListItemHarness } from '../list-item.harness'\n\nexport class PBreadcrumbHarness extends ComponentHarness {\n static hostSelector = 'p-breadcrumb'\n\n getBreadcrumbItems = this.locatorForAll(ListItemHarness)\n\n async getBreadcrumbItem(itemText: string): Promise<ListItemHarness | null> {\n return await this.locatorForOptional(ListItemHarness.with({ text: itemText }))()\n }\n}\n","import { BaseHarnessFilters, ComponentHarness, HarnessPredicate } from '@angular/cdk/testing'\n\nexport interface PButtonDirectiveHarnessFilters extends BaseHarnessFilters {\n id?: string\n}\n\nexport class PButtonDirectiveHarness extends ComponentHarness {\n static hostSelector = 'button[pButton]'\n\n static with(options: PButtonDirectiveHarnessFilters): HarnessPredicate<PButtonDirectiveHarness> {\n return new HarnessPredicate(PButtonDirectiveHarness, options).addOption('id', options.id, (harness, id) =>\n HarnessPredicate.stringMatches(harness.getId(), id)\n )\n }\n\n async getId(): Promise<string | null> {\n return await (await this.host()).getAttribute('id')\n }\n\n async click() {\n await (await this.host()).click()\n }\n\n async getLabel(): Promise<string | null> {\n return await (await this.host()).text()\n }\n\n async getIcon(): Promise<string | null> {\n return await (await this.host()).getAttribute('ng-reflect-icon')\n }\n\n async getDisabled(): Promise<boolean> {\n return await (await this.host()).getProperty('disabled')\n }\n}\n","import { BaseHarnessFilters, ComponentHarness, HarnessPredicate } from '@angular/cdk/testing'\n\nexport interface PButtonHarnessFilters extends BaseHarnessFilters {\n id?: string\n name?: string\n label?: string\n icon?: string\n}\n\nexport class PButtonHarness extends ComponentHarness {\n static hostSelector = 'p-button'\n\n static with(options: PButtonHarnessFilters): HarnessPredicate<PButtonHarness> {\n return new HarnessPredicate(PButtonHarness, options)\n .addOption('id', options.id, (harness, id) => HarnessPredicate.stringMatches(harness.getId(), id))\n .addOption('name', options.name, (harness, name) => HarnessPredicate.stringMatches(harness.getName(), name))\n .addOption('label', options.label, (harness, label) => HarnessPredicate.stringMatches(harness.getLabel(), label))\n .addOption('icon', options.icon, (harness, icon) => HarnessPredicate.stringMatches(harness.getIcon(), icon))\n }\n async getId(): Promise<string | null> {\n return await (await this.host()).getAttribute('id')\n }\n\n async getName(): Promise<string | null> {\n return await (await this.host()).getAttribute('name')\n }\n\n async getLabel(): Promise<string | null> {\n return await (await this.host()).text()\n }\n\n async getIcon(): Promise<string | null> {\n return await (await this.host()).getAttribute('ng-reflect-icon')\n }\n\n async click() {\n await (await this.locatorFor('button')()).click()\n }\n}\n","import { ComponentHarness } from '@angular/cdk/testing'\n\nexport class PChartHarness extends ComponentHarness {\n static hostSelector = 'p-chart'\n\n async getType(): Promise<string | null> {\n return await (await this.host()).getAttribute('ng-reflect-type')\n }\n async getOptions(): Promise<string | null> {\n return await (await this.host()).getAttribute('ng-reflect-options')\n }\n}\n","import { BaseHarnessFilters, ComponentHarness, HarnessPredicate } from '@angular/cdk/testing'\n\nexport interface DivHarnessFilters extends BaseHarnessFilters {\n class?: string\n}\n\nexport class DivHarness extends ComponentHarness {\n static hostSelector = 'div'\n\n static with(options: DivHarnessFilters): HarnessPredicate<DivHarness> {\n return new HarnessPredicate(DivHarness, options).addOption('class', options.class, (harness, c) =>\n HarnessPredicate.stringMatches(harness.getByClass(c), c)\n )\n }\n\n async getByClass(c: string): Promise<string> {\n return (await (await this.host()).hasClass(c)) ? c : ''\n }\n\n async checkHasClass(value: string) {\n return await (await this.host()).hasClass(value)\n }\n\n async getText(): Promise<string> {\n return await (await this.host()).text()\n }\n\n async getClassList() {\n const host = await this.host()\n const attributeString = await host.getAttribute('class')\n if (attributeString) {\n return attributeString.trim().split(' ')\n }\n return []\n }\n\n async click(): Promise<void> {\n await (await this.host()).click()\n }\n}\n","import { BaseHarnessFilters, ComponentHarness, HarnessPredicate, TestElement } from '@angular/cdk/testing'\n\nexport interface InputHarnessFilters extends BaseHarnessFilters {\n id?: string\n}\n\nexport class InputHarness extends ComponentHarness {\n static hostSelector = 'input'\n\n static with(options: InputHarnessFilters): HarnessPredicate<InputHarness> {\n return new HarnessPredicate(InputHarness, options).addOption('id', options.id, (harness, id) =>\n HarnessPredicate.stringMatches(harness.getId(), id)\n )\n }\n\n async getId(): Promise<string | null> {\n return await (await this.host()).getAttribute('id')\n }\n\n async getValue(): Promise<string | null> {\n return await (await this.host()).getProperty<string>('value')\n }\n async getChecked(): Promise<boolean> {\n return await (await this.host()).getProperty<boolean>('checked')\n }\n\n async setValue(value: string | Date): Promise<void> {\n if (value instanceof Date) {\n await (\n await this.host()\n ).setInputValue(\n `${value.toLocaleDateString([], {\n month: '2-digit',\n day: '2-digit',\n year: 'numeric',\n })} ${value.toLocaleTimeString([], { hour: '2-digit', minute: '2-digit' })}`\n )\n } else {\n await (await this.host()).clear()\n if (value) {\n await (await this.host()).sendKeys(value)\n }\n await (await this.host()).setInputValue(value)\n }\n }\n\n async getTestElement(): Promise<TestElement> {\n return await this.host()\n }\n\n async click() {\n await (await this.host()).click()\n }\n}\n","import { BaseHarnessFilters, ComponentHarness, HarnessPredicate } from '@angular/cdk/testing'\nimport { DivHarness } from '../div.harness'\nimport { InputHarness } from '../input.harness'\n\nexport interface PCheckBoxHarnessFilters extends BaseHarnessFilters {\n inputid?: string\n}\nexport class PCheckboxHarness extends ComponentHarness {\n static hostSelector = 'p-checkbox'\n\n getCheckBoxDiv = this.locatorForOptional(DivHarness.with({ class: 'p-checkbox-box' }))\n\n static with(options: PCheckBoxHarnessFilters): HarnessPredicate<PCheckboxHarness> {\n return new HarnessPredicate(PCheckboxHarness, options).addOption('inputid', options.inputid, (harness, inputid) =>\n HarnessPredicate.stringMatches(harness.getId(), inputid)\n )\n }\n\n async isChecked(): Promise<boolean> {\n return (await this.locatorFor(InputHarness)()).getChecked()\n }\n\n async getId(): Promise<string | null> {\n return await (await this.host()).getAttribute('inputId')\n }\n\n async isHidden(): Promise<boolean> {\n const attr = await (await this.host()).getAttribute('hidden')\n return Boolean(attr)\n }\n\n async click(): Promise<void> {\n await (await this.getCheckBoxDiv())?.click()\n }\n}\n","import { BaseHarnessFilters, ContentContainerComponentHarness, TestKey } from '@angular/cdk/testing'\nimport { DivHarness } from '../div.harness'\n\nexport interface PDialogHarnessFilters extends BaseHarnessFilters {\n id?: string\n}\n\nexport class PDialogHarness extends ContentContainerComponentHarness {\n static hostSelector = 'p-dialog'\n\n getHeader = this.locatorForOptional(DivHarness.with({ class: 'p-dialog-header' }))\n getFooter = this.locatorForOptional(DivHarness.with({ class: 'p-dialog-footer' }))\n\n async getDialogTitle(): Promise<string | undefined> {\n return await (await this.getHeader())?.getText()\n }\n\n async close() {\n if (await this.isVisible()) {\n await (await this.host()).sendKeys(TestKey.ESCAPE)\n } else {\n console.warn('Unable to close CustomGroupColumnSelectionDialog, because it is not open.')\n }\n }\n\n async isVisible(): Promise<boolean> {\n return (await (await this.host()).getAttribute('ng-reflect-visible')) === 'true' ? true : false\n }\n}\n","import { BaseHarnessFilters, ContentContainerComponentHarness, HarnessPredicate } from '@angular/cdk/testing'\nimport { ListItemHarness } from '../list-item.harness'\n\nexport interface PDropdownHarnessFilters extends BaseHarnessFilters {\n id?: string\n}\n\nexport class PDropdownHarness extends ContentContainerComponentHarness {\n static hostSelector = 'p-dropdown'\n\n static with(options: PDropdownHarnessFilters): HarnessPredicate<PDropdownHarness> {\n return new HarnessPredicate(PDropdownHarness, options).addOption('id', options.id, (harness, id) =>\n HarnessPredicate.stringMatches(harness.getId(), id)\n )\n }\n\n async getId(): Promise<string | null> {\n return await (await this.host()).getAttribute('id')\n }\n\n async getDefaultText() {\n return (await this.locatorForOptional('span.p-placeholder')())?.text()\n }\n\n async isOpen(): Promise<boolean> {\n return (await this.locatorFor('div')()).hasClass('p-dropdown-open')\n }\n\n async open() {\n if (!(await this.isOpen())) {\n await (await this.locatorFor('div')()).click()\n } else {\n console.warn('Unable to open dropdown, because it is already open.')\n }\n }\n\n async close() {\n if (await this.isOpen()) {\n await (await this.locatorFor('div')()).click()\n } else {\n console.warn('Unable to close dropdown, because it is not open.')\n }\n }\n\n async getDropdownItems() {\n await this.open()\n const rootLocator = this.documentRootLocatorFactory()\n const items = await rootLocator.harnessLoaderFor('.p-dropdown-items')\n return await items.getAllHarnesses(ListItemHarness)\n }\n\n async getDropdownItem(itemText: string): Promise<ListItemHarness | null> {\n return await this.locatorForOptional(ListItemHarness.with({ text: itemText }))()\n }\n\n async selectedDropdownItem(position: number) {\n const selectedColumnGroup = await Promise.all(\n (await this.getDropdownItems()).filter((listItem) => listItem.isSelected())\n )\n return selectedColumnGroup[position]\n }\n\n async selectedDropdownItemText(position: number) {\n return (await this.selectedDropdownItem(position)).getText()\n }\n\n async hasClearOption() {\n return (await this.locatorFor('div')()).hasClass('p-dropdown-clearable')\n }\n\n async clear() {\n if (await this.hasClearOption()) {\n return await (await this.locatorFor('.p-dropdown-clear-icon')()).click()\n } else {\n console.warn('Unable to clear dropdown, because it has no clear option')\n }\n }\n}\n","import { BaseHarnessFilters, ComponentHarness, HarnessPredicate } from '@angular/cdk/testing'\n\nexport interface SpanHarnessFilters extends BaseHarnessFilters {\n class?: string\n}\n\nexport class SpanHarness extends ComponentHarness {\n static hostSelector = 'span'\n\n static with(options: SpanHarnessFilters): HarnessPredicate<SpanHarness> {\n return new HarnessPredicate(SpanHarness, options).addOption('class', options.class, (harness, c) =>\n HarnessPredicate.stringMatches(harness.getByClass(c), c)\n )\n }\n\n async getByClass(c: string): Promise<string> {\n return (await (await this.host()).hasClass(c)) ? c : ''\n }\n\n async checkHasClass(value: string) {\n return await (await this.host()).hasClass(value)\n }\n\n async getText(): Promise<string> {\n return await (await this.host()).text()\n }\n}","import { ComponentHarness } from '@angular/cdk/testing'\nimport { SpanHarness } from '../span.harness'\n\nexport class PMenuItemHarness extends ComponentHarness {\n static hostSelector = 'li.p-menuitem'\n\n getAnchor = this.locatorFor('a')\n getChildren = this.locatorForAll(PMenuItemHarness)\n getIconSpan = this.locatorForOptional(SpanHarness.with({ class: 'p-menuitem-icon' }))\n\n async getText(): Promise<string> {\n return await (await this.getAnchor()).text()\n }\n\n async hasIcon(icon: string): Promise<boolean | undefined> {\n const classList = await (await (await this.getIconSpan())?.host())?.getAttribute('class')\n return classList?.includes(icon)\n }\n\n async click() {\n return await (await this.getAnchor()).click()\n }\n\n async getLink(): Promise<string | null> {\n return await (await this.getAnchor()).getAttribute('href')\n }\n}\n","import { BaseHarnessFilters, ComponentHarness, HarnessPredicate } from '@angular/cdk/testing'\n\nexport interface MenuItemHarnessFilters extends BaseHarnessFilters {\n text?: string\n}\n\nexport class MenuItemHarness extends ComponentHarness {\n static hostSelector = 'li>div>a'\n\n static with(options: MenuItemHarnessFilters): HarnessPredicate<MenuItemHarness> {\n return new HarnessPredicate(MenuItemHarness, options).addOption('text', options.text, (harness, text) =>\n HarnessPredicate.stringMatches(harness.getText(), text)\n )\n }\n\n async getText(): Promise<string> {\n return await (await this.host()).text()\n }\n\n async selectItem() {\n await (await this.host()).click()\n }\n\n async getLink(): Promise<string | null> {\n return await (await this.host()).getAttribute('href')\n }\n}\n","import { ContentContainerComponentHarness, HarnessLoader } from '@angular/cdk/testing'\nimport { MenuItemHarness } from '../menu-item.harness'\n\nexport class PMenuHarness extends ContentContainerComponentHarness {\n static hostSelector = 'p-menu'\n\n async getHarnessLoaderForPMenuOverlay(): Promise<HarnessLoader | null> {\n return this.documentRootLocatorFactory().harnessLoaderForOptional('.p-menu-overlay')\n }\n\n async isOpen(): Promise<boolean> {\n return !!(await this.getHarnessLoaderForPMenuOverlay())\n }\n\n async getAllMenuItems(): Promise<MenuItemHarness[] | undefined> {\n if (await this.isOpen()) {\n return await (await this.getHarnessLoaderForPMenuOverlay())?.getAllHarnesses(MenuItemHarness)\n } else {\n console.warn('Cannot get menu items because menu is closed.')\n }\n return []\n }\n\n async getMenuItem(itemText: string): Promise<MenuItemHarness | undefined | null> {\n if (await this.isOpen()) {\n return await (\n await this.getHarnessLoaderForPMenuOverlay()\n )?.getHarnessOrNull(MenuItemHarness.with({ text: itemText }))\n } else {\n console.warn('Cannot get menu items because menu is closed.')\n }\n return undefined\n }\n}\n","import { ComponentHarness } from '@angular/cdk/testing'\nimport { PMenuItemHarness } from './p-menu-item.harness'\n\nexport class PMenuBarHarness extends ComponentHarness {\n static hostSelector = 'p-menubar'\n\n getAllMenuItems = this.locatorForAll(PMenuItemHarness)\n}\n","import { ComponentHarness, TestElement } from '@angular/cdk/testing'\n\nexport class PMultiSelectListItemHarness extends ComponentHarness {\n static hostSelector = 'li'\n\n async getTestElement(): Promise<TestElement> {\n return await this.host()\n }\n\n async click(): Promise<void> {\n await (await this.host()).click()\n }\n\n async getText(): Promise<string> {\n return await (await this.host()).text()\n }\n}\n","import { BaseHarnessFilters, ComponentHarness, HarnessLoader, HarnessPredicate } from '@angular/cdk/testing'\nimport { PMultiSelectListItemHarness } from './p-multiSelectListItem.harness'\n\nexport interface PMultiSelectHarnessFilters extends BaseHarnessFilters {\n id?: string\n class?: string\n}\n\nexport class PMultiSelectHarness extends ComponentHarness {\n static hostSelector = 'p-multiselect'\n\n static with(options: PMultiSelectHarnessFilters): HarnessPredicate<PMultiSelectHarness> {\n return new HarnessPredicate(PMultiSelectHarness, options)\n .addOption('id', options.id, (harness, id) => HarnessPredicate.stringMatches(harness.getId(), id))\n .addOption('class', options.class, (harness, c) => HarnessPredicate.stringMatches(harness.getByClass(c), c))\n }\n\n async getId(): Promise<string | null> {\n return await (await this.host()).getAttribute('id')\n }\n\n async getByClass(c: string): Promise<string | null> {\n return (await (await this.host()).hasClass(c)) ? c : ''\n }\n\n async getHarnessLoaderForPMultiSelectPanel(): Promise<HarnessLoader> {\n const rootLocator = this.documentRootLocatorFactory()\n return rootLocator.harnessLoaderFor('.p-multiselect-panel')\n }\n\n async getAllOptions(): Promise<PMultiSelectListItemHarness[]> {\n if (!(await this.isOpen())) {\n await this.open()\n }\n return await (await this.getHarnessLoaderForPMultiSelectPanel()).getAllHarnesses(PMultiSelectListItemHarness)\n }\n\n async isOpen(): Promise<boolean> {\n try {\n await this.getHarnessLoaderForPMultiSelectPanel()\n return true\n } catch (error) {\n console.error(error)\n return false\n }\n }\n\n async open() {\n if (!(await this.isOpen())) {\n await (await this.locatorFor('div')()).click()\n } else {\n console.warn('Unable to open multiSelect, because it is already open.')\n }\n }\n\n async close() {\n if (await this.isOpen()) {\n await (await this.locatorFor('div')()).click()\n } else {\n console.warn('Unable to close multiSelect, because it is not open.')\n }\n }\n\n async isHighlighted(PMultiSelectListItem: PMultiSelectListItemHarness): Promise<boolean> {\n return (await (await PMultiSelectListItem.getTestElement()).getAttribute('data-p-highlight')) === 'true'\n ? true\n : false\n }\n\n async getSelectedOptions(): Promise<string[] | null> {\n const allOptions = await this.getAllOptions()\n const selectedOptions: string[] = []\n for (let index = 0; index < allOptions.length; index++) {\n const option = allOptions[index]\n if (await this.isHighlighted(option)) {\n selectedOptions.push(await option.getText())\n }\n }\n return selectedOptions\n }\n}\n","import { ComponentHarness } from '@angular/cdk/testing'\nimport { SpanHarness } from '../span.harness'\nimport { PMenuItemHarness } from './p-menu-item.harness'\n\nexport class PanelMenuItemHarness extends ComponentHarness {\n static hostSelector = 'div.p-panelmenu-panel'\n\n getAnchor = this.locatorFor('a')\n getChildren = this.locatorForAll(PMenuItemHarness)\n getIconSpan = this.locatorForOptional(SpanHarness.with({ class: 'p-menuitem-icon' }))\n\n async getText(): Promise<string> {\n return await (await this.getAnchor()).text()\n }\n\n async hasIcon(icon: string): Promise<boolean | undefined> {\n const classList = await (await (await this.getIconSpan())?.host())?.getAttribute('class')\n return classList?.includes(icon)\n }\n\n async click() {\n await (await this.getAnchor()).click()\n }\n\n async getLink(): Promise<string | null> {\n return await (await this.getAnchor()).getAttribute('href')\n }\n}\n","import { ComponentHarness } from '@angular/cdk/testing'\nimport { PanelMenuItemHarness } from './p-panelmenu-item.harness'\n\nexport class PPanelMenuHarness extends ComponentHarness {\n static hostSelector = 'p-panelmenu'\n\n getAllPanels = this.locatorForAll(PanelMenuItemHarness)\n}\n","import { BaseHarnessFilters, ComponentHarness, HarnessPredicate } from '@angular/cdk/testing'\n\nexport interface ButtonHarnessFilters extends BaseHarnessFilters {\n id?: string\n icon?: string\n class?: string\n}\n\nexport class ButtonHarness extends ComponentHarness {\n static hostSelector = 'button'\n\n static with(options: ButtonHarnessFilters): HarnessPredicate<ButtonHarness> {\n return new HarnessPredicate(ButtonHarness, options)\n .addOption('id', options.id, (harness, id) => HarnessPredicate.stringMatches(harness.getId(), id))\n .addOption('icon', options.icon, (harness, icon) => HarnessPredicate.stringMatches(harness.getIcon(), icon))\n .addOption('class', options.class, (harness, c) => HarnessPredicate.stringMatches(harness.getByClass(c), c))\n }\n\n async getId(): Promise<string | null> {\n return await (await this.host()).getAttribute('id')\n }\n async getIcon(): Promise<string | null> {\n return await (await this.host()).getAttribute('icon')\n }\n async getByClass(c: string): Promise<string | null> {\n return (await (await this.host()).hasClass(c)) ? c : ''\n }\n\n async click() {\n if (!(await this.isDisabled())) {\n await (await this.host()).click()\n } else {\n console.warn('Button cannot be clicked, because it is disabled!')\n }\n }\n\n async isDisabled(): Promise<boolean> {\n return await (await this.host()).getProperty('disabled')\n }\n}\n","import { ContentContainerComponentHarness } from '@angular/cdk/testing'\nimport { SpanHarness } from '../span.harness'\nimport { PDropdownHarness } from './p-dropdown.harness'\nimport { ButtonHarness } from '../button.harness'\n\nexport class PPaginatorHarness extends ContentContainerComponentHarness {\n static hostSelector = 'p-paginator'\n getCurrentPageReport = this.locatorFor(SpanHarness.with({ class: 'p-paginator-current' }))\n getRowsPerPageOptions = this.locatorFor(PDropdownHarness)\n getNextPageButton = this.locatorFor(ButtonHarness.with({ class: 'p-paginator-next' }))\n\n async getCurrentPageReportText(): Promise<string | undefined> {\n return await (await this.getCurrentPageReport()).getText()\n }\n\n async clickNextPage() {\n ;(await this.getNextPageButton()).click()\n }\n}\n","import { BaseHarnessFilters, ComponentHarness, HarnessPredicate } from '@angular/cdk/testing'\nimport { InputHarness } from '../input.harness'\n\nexport interface PPasswordHarnessFilters extends BaseHarnessFilters {\n id?: string\n}\n\nexport class PPasswordHarness extends ComponentHarness {\n static hostSelector = 'p-password'\n\n getInput = this.locatorFor(InputHarness)\n\n static with(options: PPasswordHarnessFilters): HarnessPredicate<PPasswordHarness> {\n return new HarnessPredicate(PPasswordHarness, options).addOption('id', options.id, (harness, id) =>\n HarnessPredicate.stringMatches(harness.getId(), id)\n )\n }\n async getId(): Promise<string | null> {\n return await (await this.host()).getAttribute('id')\n }\n\n async getPromptLabel(): Promise<string | null> {\n return await (await this.host()).getAttribute('ng-reflect-prompt-label')\n }\n\n async getWeakLabel(): Promise<string | null> {\n return await (await this.host()).getAttribute('ng-reflect-weak-label')\n }\n\n async getMediumLabel(): Promise<string | null> {\n return await (await this.host()).getAttribute('ng-reflect-medium-label')\n }\n\n async getStrongLabel(): Promise<string | null> {\n return await (await this.host()).getAttribute('ng-reflect-strong-label')\n }\n\n async getValue(): Promise<string | null> {\n return await (await this.getInput()).getValue()\n }\n\n async setValue(value: string) {\n return await (await this.getInput()).setValue(value)\n }\n}\n","import { BaseHarnessFilters, ContentContainerComponentHarness, HarnessPredicate } from '@angular/cdk/testing'\nimport { ButtonHarness } from '../button.harness'\nimport { DivHarness } from '../div.harness'\nimport { ListItemHarness } from '../list-item.harness'\n\nexport interface PPicklistControlsButtonsFilters extends BaseHarnessFilters {\n class?: string\n}\n\nexport interface PPicklistListWrapperFilters extends BaseHarnessFilters {\n class?: string\n}\n\nexport class PPicklistControlsButtonsHarness extends ContentContainerComponentHarness {\n static hostSelector = '.p-picklist-buttons'\n\n getButtons = this.locatorForAll(ButtonHarness)\n\n static with(options: PPicklistControlsButtonsFilters): HarnessPredicate<PPicklistControlsButtonsHarness> {\n return new HarnessPredicate(PPicklistControlsButtonsHarness, options).addOption(\n 'class',\n options.class,\n (harness, c) => HarnessPredicate.stringMatches(harness.getByClass(c), c)\n )\n }\n\n async getByClass(c: string) {\n return (await (await this.host()).hasClass(c)) ? c : ''\n }\n}\n\nexport class PPicklistListWrapperHarness extends ContentContainerComponentHarness {\n static hostSelector = '.p-picklist-list-wrapper'\n\n getHeader = this.locatorFor(DivHarness.with({ class: 'p-picklist-header' }))\n getAllListItems = this.locatorForAll(ListItemHarness)\n\n static with(options: PPicklistListWrapperFilters): HarnessPredicate<PPicklistListWrapperHarness> {\n return new HarnessPredicate(PPicklistListWrapperHarness, options).addOption('class', options.class, (harness, c) =>\n HarnessPredicate.stringMatches(harness.getByClass(c), c)\n )\n }\n\n async getByClass(c: string) {\n return (await (await this.host()).hasClass(c)) ? c : ''\n }\n}\n\nexport class PPicklistHarness extends ContentContainerComponentHarness {\n static hostSelector = 'p-picklist'\n\n private getPicklistSourceControls = this.locatorFor(\n PPicklistControlsButtonsHarness.with({ class: 'p-picklist-source-controls' })\n )\n private getPicklistTransferControls = this.locatorFor(\n PPicklistControlsButtonsHarness.with({ class: 'p-picklist-transfer-buttons' })\n )\n private getPicklistTargetControls = this.locatorFor(\n PPicklistControlsButtonsHarness.with({ class: 'p-picklist-target-controls' })\n )\n\n private getPicklistSource = this.locatorFor(PPicklistListWrapperHarness.with({ class: 'p-picklist-source-wrapper' }))\n private getPicklistTarget = this.locatorFor(PPicklistListWrapperHarness.with({ class: 'p-picklist-target-wrapper' }))\n\n async getSourceControlsButtons(): Promise<ButtonHarness[]> {\n return await (await this.getPicklistSourceControls()).getButtons()\n }\n\n async getTransferControlsButtons(): Promise<ButtonHarness[]> {\n return await (await this.getPicklistTransferControls()).getButtons()\n }\n\n async getTargetControlsButtons(): Promise<ButtonHarness[]> {\n return await (await this.getPicklistTargetControls()).getButtons()\n }\n\n async getSourceHeader(): Promise<string> {\n return await (await (await this.getPicklistSource()).getHeader()).getText()\n }\n\n async getTargetHeader(): Promise<string> {\n return await (await (await this.getPicklistTarget()).getHeader()).getText()\n }\n\n async getSourceListItems(): Promise<ListItemHarness[]> {\n return await (await this.getPicklistSource()).getAllListItems()\n }\n\n async getTargetListItems(): Promise<ListItemHarness[]> {\n return await (await this.getPicklistTarget()).getAllListItems()\n }\n}\n","import { ContentContainerComponentHarness } from '@angular/cdk/testing'\n\nexport class PSelectButtonHarness extends ContentContainerComponentHarness {\n static hostSelector = 'p-selectbutton'\n\n getAllButtons = this.locatorForAll('div > div')\n}\n","import { MenuItemHarness } from './menu-item.harness'\n\nexport class MenuItemWithIconHarness extends MenuItemHarness {\n async hasIcon(icon: string): Promise<boolean | undefined> {\n const classList = await (await this.locatorForOptional('i')())?.getAttribute('class')\n return classList?.includes(icon)\n }\n}\n","import { BaseHarnessFilters, ComponentHarness, ComponentHarnessConstructor, HarnessPredicate } from '@angular/cdk/testing'\n\nexport interface PTableCheckboxHarnessFilter extends BaseHarnessFilters {\n isSelected?: boolean\n}\n\nexport class PTableCheckboxHarness extends ComponentHarness {\n static hostSelector = 'p-tablecheckbox'\n\n static with<T extends PTableCheckboxHarness>(this: ComponentHarnessConstructor<T>, options: PTableCheckboxHarnessFilter = {}): HarnessPredicate<T> {\n return new HarnessPredicate(this, options).addOption('isSelected', options.isSelected, async (harness, selected) => {\n return (await harness.isChecked()) === selected\n })\n }\n\n async isChecked(): Promise<boolean> {\n const allChecked = await this.locatorForAll('checkicon')()\n return allChecked.length === 1\n }\n\n async checkBox(): Promise<void> {\n const checkBoxElement = await this.locatorFor('.p-checkbox-box')()\n return checkBoxElement.click()\n }\n}\n","import { BaseHarnessFilters, ComponentHarness, HarnessPredicate } from '@angular/cdk/testing'\n\nexport interface PHarnessFilters extends BaseHarnessFilters {\n class?: string\n id?: string\n}\n\nexport class PHarness extends ComponentHarness {\n static hostSelector = 'p'\n\n static with(options: PHarnessFilters): HarnessPredicate<PHarness> {\n return new HarnessPredicate(PHarness, options)\n .addOption('class', options.class, (harness, c) => HarnessPredicate.stringMatches(harness.getByClass(c), c))\n .addOption('id', options.id, (harness, id) => HarnessPredicate.stringMatches(harness.hasId(id), id))\n }\n\n async getByClass(c: string): Promise<string> {\n return (await (await this.host()).hasClass(c)) ? c : ''\n }\n\n async hasId(id: string): Promise<string> {\n return (await (await this.host()).matchesSelector('#' + id)) ? id : ''\n }\n\n async checkHasClass(value: string) {\n return await (await this.host()).hasClass(value)\n }\n\n async getText(): Promise<string> {\n return await (await this.host()).text()\n }\n\n async getClassList() {\n const host = await this.host()\n const attributeString = await host.getAttribute('class')\n if (attributeString) {\n return attributeString.trim().split(' ')\n }\n return []\n }\n}\n","import { ContentContainerComponentHarness } from '@angular/cdk/testing'\nimport { ButtonHarness } from './button.harness'\nimport { PMultiSelectHarness } from './primeng/p-multiSelect.harness'\n\nexport class TableHeaderColumnHarness extends ContentContainerComponentHarness {\n static hostSelector = 'th'\n\n getSortButton = this.locatorFor(\n ButtonHarness.with({\n class: 'sortButton',\n })\n )\n\n getFilterMultiSelect = this.locatorFor(\n PMultiSelectHarness.with({\n class: 'filterMultiSelect',\n })\n )\n\n async getText(): Promise<string> {\n return (await this.host()).text()\n }\n}\n","import { ContentContainerComponentHarness } from '@angular/cdk/testing'\nimport { ButtonHarness } from './button.harness'\n\nexport class TableRowHarness extends ContentContainerComponentHarness {\n static hostSelector = 'tbody > tr'\n\n getAllActionButtons = this.locatorForAll('button')\n getViewButton = this.locatorForOptional(ButtonHarness.with({ class: 'viewTableRowButton' }))\n getEditButton = this.locatorForOptional(ButtonHarness.with({ class: 'editTableRowButton' }))\n getDeleteButton = this.locatorForOptional(ButtonHarness.with({ class: 'deleteTableRowButton' }))\n\n async getData(): Promise<string[]> {\n const tds = await this.locatorForAll('td')()\n const isActionsTd = await Promise.all(tds.map((t) => t.hasClass('actions')))\n const textTds = tds.filter((_v, index) => !isActionsTd[index])\n return Promise.all(textTds.map((t) => t.text()))\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
@@ -1,9 +1,9 @@
|
|
1
1
|
{
|
2
2
|
"name": "@onecx/angular-testing",
|
3
|
-
"version": "
|
3
|
+
"version": "5.0.0",
|
4
4
|
"peerDependencies": {
|
5
|
-
"@angular/cdk": "^
|
6
|
-
"primeng": "^
|
5
|
+
"@angular/cdk": "^18.0.5",
|
6
|
+
"primeng": "^17.18.2"
|
7
7
|
},
|
8
8
|
"dependencies": {
|
9
9
|
"tslib": "^2.3.0"
|
@@ -11,11 +11,7 @@
|
|
11
11
|
"publishConfig": {
|
12
12
|
"access": "public"
|
13
13
|
},
|
14
|
-
"module": "
|
15
|
-
"es2020": "fesm2020/onecx-angular-testing.mjs",
|
16
|
-
"esm2020": "esm2020/onecx-angular-testing.mjs",
|
17
|
-
"fesm2020": "fesm2020/onecx-angular-testing.mjs",
|
18
|
-
"fesm2015": "fesm2015/onecx-angular-testing.mjs",
|
14
|
+
"module": "fesm2022/onecx-angular-testing.mjs",
|
19
15
|
"typings": "index.d.ts",
|
20
16
|
"exports": {
|
21
17
|
"./package.json": {
|
@@ -23,11 +19,9 @@
|
|
23
19
|
},
|
24
20
|
".": {
|
25
21
|
"types": "./index.d.ts",
|
26
|
-
"
|
27
|
-
"
|
28
|
-
"
|
29
|
-
"node": "./fesm2015/onecx-angular-testing.mjs",
|
30
|
-
"default": "./fesm2020/onecx-angular-testing.mjs"
|
22
|
+
"esm2022": "./esm2022/onecx-angular-testing.mjs",
|
23
|
+
"esm": "./esm2022/onecx-angular-testing.mjs",
|
24
|
+
"default": "./fesm2022/onecx-angular-testing.mjs"
|
31
25
|
}
|
32
26
|
},
|
33
27
|
"sideEffects": false
|
@@ -1,31 +0,0 @@
|
|
1
|
-
import { ComponentHarness, HarnessPredicate } from '@angular/cdk/testing';
|
2
|
-
export class ButtonHarness extends ComponentHarness {
|
3
|
-
static with(options) {
|
4
|
-
return new HarnessPredicate(ButtonHarness, options)
|
5
|
-
.addOption('id', options.id, (harness, id) => HarnessPredicate.stringMatches(harness.getId(), id))
|
6
|
-
.addOption('icon', options.icon, (harness, icon) => HarnessPredicate.stringMatches(harness.getIcon(), icon))
|
7
|
-
.addOption('class', options.class, (harness, c) => HarnessPredicate.stringMatches(harness.getByClass(c), c));
|
8
|
-
}
|
9
|
-
async getId() {
|
10
|
-
return await (await this.host()).getAttribute('id');
|
11
|
-
}
|
12
|
-
async getIcon() {
|
13
|
-
return await (await this.host()).getAttribute('icon');
|
14
|
-
}
|
15
|
-
async getByClass(c) {
|
16
|
-
return (await (await this.host()).hasClass(c)) ? c : '';
|
17
|
-
}
|
18
|
-
async click() {
|
19
|
-
if (!(await this.isDisabled())) {
|
20
|
-
await (await this.host()).click();
|
21
|
-
}
|
22
|
-
else {
|
23
|
-
console.warn('Button cannot be clicked, because it is disabled!');
|
24
|
-
}
|
25
|
-
}
|
26
|
-
async isDisabled() {
|
27
|
-
return await (await this.host()).getProperty('disabled');
|
28
|
-
}
|
29
|
-
}
|
30
|
-
ButtonHarness.hostSelector = 'button';
|
31
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnV0dG9uLmhhcm5lc3MuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXItdGVzdGluZy9zcmMvbGliL2hhcm5lc3Nlcy9idXR0b24uaGFybmVzcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQXNCLGdCQUFnQixFQUFFLGdCQUFnQixFQUFFLE1BQU0sc0JBQXNCLENBQUE7QUFRN0YsTUFBTSxPQUFPLGFBQWMsU0FBUSxnQkFBZ0I7SUFHakQsTUFBTSxDQUFDLElBQUksQ0FBQyxPQUE2QjtRQUN2QyxPQUFPLElBQUksZ0JBQWdCLENBQUMsYUFBYSxFQUFFLE9BQU8sQ0FBQzthQUNoRCxTQUFTLENBQUMsSUFBSSxFQUFFLE9BQU8sQ0FBQyxFQUFFLEVBQUUsQ0FBQyxPQUFPLEVBQUUsRUFBRSxFQUFFLEVBQUUsQ0FBQyxnQkFBZ0IsQ0FBQyxhQUFhLENBQUMsT0FBTyxDQUFDLEtBQUssRUFBRSxFQUFFLEVBQUUsQ0FBQyxDQUFDO2FBQ2pHLFNBQVMsQ0FBQyxNQUFNLEVBQUUsT0FBTyxDQUFDLElBQUksRUFBRSxDQUFDLE9BQU8sRUFBRSxJQUFJLEVBQUUsRUFBRSxDQUFDLGdCQUFnQixDQUFDLGFBQWEsQ0FBQyxPQUFPLENBQUMsT0FBTyxFQUFFLEVBQUUsSUFBSSxDQUFDLENBQUM7YUFDM0csU0FBUyxDQUFDLE9BQU8sRUFBRSxPQUFPLENBQUMsS0FBSyxFQUFFLENBQUMsT0FBTyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsZ0JBQWdCLENBQUMsYUFBYSxDQUFDLE9BQU8sQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQTtJQUNoSCxDQUFDO0lBRUQsS0FBSyxDQUFDLEtBQUs7UUFDVCxPQUFPLE1BQU0sQ0FBQyxNQUFNLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsQ0FBQTtJQUNyRCxDQUFDO0lBQ0QsS0FBSyxDQUFDLE9BQU87UUFDWCxPQUFPLE1BQU0sQ0FBQyxNQUFNLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDLFlBQVksQ0FBQyxNQUFNLENBQUMsQ0FBQTtJQUN2RCxDQUFDO0lBQ0QsS0FBSyxDQUFDLFVBQVUsQ0FBQyxDQUFTO1FBQ3hCLE9BQU8sQ0FBQyxNQUFNLENBQUMsTUFBTSxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUE7SUFDekQsQ0FBQztJQUVELEtBQUssQ0FBQyxLQUFLO1FBQ1QsSUFBSSxDQUFDLENBQUMsTUFBTSxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUMsRUFBRTtZQUM5QixNQUFNLENBQUMsTUFBTSxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQyxLQUFLLEVBQUUsQ0FBQTtTQUNsQzthQUFNO1lBQ0wsT0FBTyxDQUFDLElBQUksQ0FBQyxtREFBbUQsQ0FBQyxDQUFBO1NBQ2xFO0lBQ0gsQ0FBQztJQUVELEtBQUssQ0FBQyxVQUFVO1FBQ2QsT0FBTyxNQUFNLENBQUMsTUFBTSxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQyxXQUFXLENBQUMsVUFBVSxDQUFDLENBQUE7SUFDMUQsQ0FBQzs7QUE3Qk0sMEJBQVksR0FBRyxRQUFRLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBCYXNlSGFybmVzc0ZpbHRlcnMsIENvbXBvbmVudEhhcm5lc3MsIEhhcm5lc3NQcmVkaWNhdGUgfSBmcm9tICdAYW5ndWxhci9jZGsvdGVzdGluZydcblxuZXhwb3J0IGludGVyZmFjZSBCdXR0b25IYXJuZXNzRmlsdGVycyBleHRlbmRzIEJhc2VIYXJuZXNzRmlsdGVycyB7XG4gIGlkPzogc3RyaW5nXG4gIGljb24/OiBzdHJpbmdcbiAgY2xhc3M/OiBzdHJpbmdcbn1cblxuZXhwb3J0IGNsYXNzIEJ1dHRvbkhhcm5lc3MgZXh0ZW5kcyBDb21wb25lbnRIYXJuZXNzIHtcbiAgc3RhdGljIGhvc3RTZWxlY3RvciA9ICdidXR0b24nXG5cbiAgc3RhdGljIHdpdGgob3B0aW9uczogQnV0dG9uSGFybmVzc0ZpbHRlcnMpOiBIYXJuZXNzUHJlZGljYXRlPEJ1dHRvbkhhcm5lc3M+IHtcbiAgICByZXR1cm4gbmV3IEhhcm5lc3NQcmVkaWNhdGUoQnV0dG9uSGFybmVzcywgb3B0aW9ucylcbiAgICAgIC5hZGRPcHRpb24oJ2lkJywgb3B0aW9ucy5pZCwgKGhhcm5lc3MsIGlkKSA9PiBIYXJuZXNzUHJlZGljYXRlLnN0cmluZ01hdGNoZXMoaGFybmVzcy5nZXRJZCgpLCBpZCkpXG4gICAgICAuYWRkT3B0aW9uKCdpY29uJywgb3B0aW9ucy5pY29uLCAoaGFybmVzcywgaWNvbikgPT4gSGFybmVzc1ByZWRpY2F0ZS5zdHJpbmdNYXRjaGVzKGhhcm5lc3MuZ2V0SWNvbigpLCBpY29uKSlcbiAgICAgIC5hZGRPcHRpb24oJ2NsYXNzJywgb3B0aW9ucy5jbGFzcywgKGhhcm5lc3MsIGMpID0+IEhhcm5lc3NQcmVkaWNhdGUuc3RyaW5nTWF0Y2hlcyhoYXJuZXNzLmdldEJ5Q2xhc3MoYyksIGMpKVxuICB9XG5cbiAgYXN5bmMgZ2V0SWQoKTogUHJvbWlzZTxzdHJpbmcgfCBudWxsPiB7XG4gICAgcmV0dXJuIGF3YWl0IChhd2FpdCB0aGlzLmhvc3QoKSkuZ2V0QXR0cmlidXRlKCdpZCcpXG4gIH1cbiAgYXN5bmMgZ2V0SWNvbigpOiBQcm9taXNlPHN0cmluZyB8IG51bGw+IHtcbiAgICByZXR1cm4gYXdhaXQgKGF3YWl0IHRoaXMuaG9zdCgpKS5nZXRBdHRyaWJ1dGUoJ2ljb24nKVxuICB9XG4gIGFzeW5jIGdldEJ5Q2xhc3MoYzogc3RyaW5nKTogUHJvbWlzZTxzdHJpbmcgfCBudWxsPiB7XG4gICAgcmV0dXJuIChhd2FpdCAoYXdhaXQgdGhpcy5ob3N0KCkpLmhhc0NsYXNzKGMpKSA/IGMgOiAnJ1xuICB9XG5cbiAgYXN5bmMgY2xpY2soKSB7XG4gICAgaWYgKCEoYXdhaXQgdGhpcy5pc0Rpc2FibGVkKCkpKSB7XG4gICAgICBhd2FpdCAoYXdhaXQgdGhpcy5ob3N0KCkpLmNsaWNrKClcbiAgICB9IGVsc2Uge1xuICAgICAgY29uc29sZS53YXJuKCdCdXR0b24gY2Fubm90IGJlIGNsaWNrZWQsIGJlY2F1c2UgaXQgaXMgZGlzYWJsZWQhJylcbiAgICB9XG4gIH1cblxuICBhc3luYyBpc0Rpc2FibGVkKCk6IFByb21pc2U8Ym9vbGVhbj4ge1xuICAgIHJldHVybiBhd2FpdCAoYXdhaXQgdGhpcy5ob3N0KCkpLmdldFByb3BlcnR5KCdkaXNhYmxlZCcpXG4gIH1cbn1cbiJdfQ==
|