@onecx/angular-accelerator 4.43.0 → 5.0.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/{esm2020 → esm2022}/lib/angular-accelerator-primeng.module.mjs +53 -53
- package/esm2022/lib/angular-accelerator.module.mjs +168 -0
- package/esm2022/lib/components/column-group-selection/column-group-selection.component.mjs +72 -0
- package/esm2022/lib/components/custom-group-column-selector/custom-group-column-selector.component.mjs +109 -0
- package/esm2022/lib/components/data-layout-selection/data-layout-selection.component.mjs +46 -0
- package/esm2022/lib/components/data-list-grid/data-list-grid.component.mjs +399 -0
- package/esm2022/lib/components/data-list-grid-sorting/data-list-grid-sorting.component.mjs +92 -0
- package/esm2022/lib/components/data-sort-base/data-sort-base.mjs +110 -0
- package/esm2022/lib/components/data-table/data-table.component.mjs +401 -0
- package/esm2022/lib/components/data-view/data-view.component.mjs +407 -0
- package/esm2022/lib/components/diagram/diagram.component.mjs +137 -0
- package/esm2022/lib/components/group-by-count-diagram/group-by-count-diagram.component.mjs +109 -0
- package/esm2022/lib/components/interactive-data-view/interactive-data-view.component.mjs +375 -0
- package/esm2022/lib/components/page-header/page-header.component.mjs +232 -0
- package/{esm2020 → esm2022}/lib/components/search-config/search-config.component.mjs +4 -4
- package/esm2022/lib/components/search-header/search-header.component.mjs +136 -0
- package/esm2022/lib/directives/advanced.directive.mjs +36 -0
- package/esm2022/lib/directives/if-breakpoint.directive.mjs +39 -0
- package/esm2022/lib/directives/if-permission.directive.mjs +80 -0
- package/esm2022/lib/directives/src.directive.mjs +59 -0
- package/esm2022/lib/functions/flatten-object.mjs +20 -0
- package/{esm2020 → esm2022}/lib/model/breadcrumb-menu-item.model.mjs +1 -1
- package/esm2022/lib/pipes/dynamic.pipe.mjs +58 -0
- package/esm2022/lib/pipes/ocxtimeago.pipe.mjs +107 -0
- package/esm2022/lib/services/app-config-service.mjs +43 -0
- package/esm2022/lib/services/breadcrumb.service.mjs +113 -0
- package/esm2022/lib/services/translation-cache.service.mjs +41 -0
- package/esm2022/lib/utils/async-translate-loader.utils.mjs +12 -0
- package/esm2022/lib/utils/caching-translate-loader.utils.mjs +15 -0
- package/{esm2020 → esm2022}/lib/utils/colorutils.mjs +1 -1
- package/{esm2020 → esm2022}/lib/utils/dateutils.mjs +6 -6
- package/esm2022/lib/utils/objectutils.mjs +30 -0
- package/{esm2020 → esm2022}/lib/utils/translate.combined.loader.mjs +1 -1
- package/{esm2020 → esm2022}/testing/column-group-selection.harness.mjs +2 -2
- package/esm2022/testing/custom-group-column-selector.harness.mjs +31 -0
- package/esm2022/testing/data-layout-selection.harness.mjs +33 -0
- package/esm2022/testing/data-list-grid.harness.mjs +47 -0
- package/esm2022/testing/data-table.harness.mjs +63 -0
- package/{esm2020 → esm2022}/testing/data-view.harness.mjs +2 -2
- package/esm2022/testing/default-grid-item.harness.mjs +24 -0
- package/esm2022/testing/default-list-item.harness.mjs +24 -0
- package/esm2022/testing/diagram.harness.mjs +22 -0
- package/{esm2020 → esm2022}/testing/group-by-count-diagram.harness.mjs +2 -2
- package/{esm2020 → esm2022}/testing/interactive-data-view.harness.mjs +2 -2
- package/esm2022/testing/more-actions-menu-button.harness.mjs +35 -0
- package/esm2022/testing/page-header.harness.mjs +78 -0
- package/{esm2020 → esm2022}/testing/search-config.harness.mjs +2 -2
- package/{esm2020 → esm2022}/testing/search-header.harness.mjs +2 -2
- package/{fesm2020 → fesm2022}/onecx-angular-accelerator-testing.mjs +34 -28
- package/fesm2022/onecx-angular-accelerator-testing.mjs.map +1 -0
- package/{fesm2020 → fesm2022}/onecx-angular-accelerator.mjs +244 -224
- package/fesm2022/onecx-angular-accelerator.mjs.map +1 -0
- package/lib/components/column-group-selection/column-group-selection.component.d.ts +1 -1
- package/lib/components/custom-group-column-selector/custom-group-column-selector.component.d.ts +1 -1
- package/lib/components/data-layout-selection/data-layout-selection.component.d.ts +1 -1
- package/lib/components/data-list-grid/data-list-grid.component.d.ts +1 -1
- package/lib/components/data-list-grid-sorting/data-list-grid-sorting.component.d.ts +1 -1
- package/lib/components/data-table/data-table.component.d.ts +1 -1
- package/lib/components/data-view/data-view.component.d.ts +2 -2
- package/lib/components/diagram/diagram.component.d.ts +2 -2
- package/lib/components/group-by-count-diagram/group-by-count-diagram.component.d.ts +1 -1
- package/lib/components/interactive-data-view/interactive-data-view.component.d.ts +1 -1
- package/lib/components/page-header/page-header.component.d.ts +1 -1
- package/lib/components/search-config/search-config.component.d.ts +1 -1
- package/lib/components/search-header/search-header.component.d.ts +1 -1
- package/lib/directives/if-breakpoint.directive.d.ts +1 -1
- package/lib/directives/if-permission.directive.d.ts +14 -5
- package/lib/directives/src.directive.d.ts +1 -1
- package/lib/model/breadcrumb-menu-item.model.d.ts +2 -2
- package/package.json +20 -28
- package/testing/data-list-grid.harness.d.ts +1 -1
- package/esm2020/lib/angular-accelerator.module.mjs +0 -160
- package/esm2020/lib/components/column-group-selection/column-group-selection.component.mjs +0 -72
- package/esm2020/lib/components/custom-group-column-selector/custom-group-column-selector.component.mjs +0 -109
- package/esm2020/lib/components/data-layout-selection/data-layout-selection.component.mjs +0 -45
- package/esm2020/lib/components/data-list-grid/data-list-grid.component.mjs +0 -399
- package/esm2020/lib/components/data-list-grid-sorting/data-list-grid-sorting.component.mjs +0 -92
- package/esm2020/lib/components/data-sort-base/data-sort-base.mjs +0 -110
- package/esm2020/lib/components/data-table/data-table.component.mjs +0 -401
- package/esm2020/lib/components/data-view/data-view.component.mjs +0 -407
- package/esm2020/lib/components/diagram/diagram.component.mjs +0 -137
- package/esm2020/lib/components/group-by-count-diagram/group-by-count-diagram.component.mjs +0 -109
- package/esm2020/lib/components/interactive-data-view/interactive-data-view.component.mjs +0 -375
- package/esm2020/lib/components/page-header/page-header.component.mjs +0 -232
- package/esm2020/lib/components/search-header/search-header.component.mjs +0 -136
- package/esm2020/lib/directives/advanced.directive.mjs +0 -36
- package/esm2020/lib/directives/if-breakpoint.directive.mjs +0 -39
- package/esm2020/lib/directives/if-permission.directive.mjs +0 -70
- package/esm2020/lib/directives/src.directive.mjs +0 -59
- package/esm2020/lib/functions/flatten-object.mjs +0 -20
- package/esm2020/lib/pipes/dynamic.pipe.mjs +0 -58
- package/esm2020/lib/pipes/ocxtimeago.pipe.mjs +0 -107
- package/esm2020/lib/services/app-config-service.mjs +0 -43
- package/esm2020/lib/services/breadcrumb.service.mjs +0 -113
- package/esm2020/lib/services/translation-cache.service.mjs +0 -41
- package/esm2020/lib/utils/async-translate-loader.utils.mjs +0 -12
- package/esm2020/lib/utils/caching-translate-loader.utils.mjs +0 -15
- package/esm2020/lib/utils/objectutils.mjs +0 -30
- package/esm2020/testing/custom-group-column-selector.harness.mjs +0 -31
- package/esm2020/testing/data-layout-selection.harness.mjs +0 -33
- package/esm2020/testing/data-list-grid.harness.mjs +0 -47
- package/esm2020/testing/data-table.harness.mjs +0 -57
- package/esm2020/testing/default-grid-item.harness.mjs +0 -24
- package/esm2020/testing/default-list-item.harness.mjs +0 -24
- package/esm2020/testing/diagram.harness.mjs +0 -22
- package/esm2020/testing/more-actions-menu-button.harness.mjs +0 -35
- package/esm2020/testing/page-header.harness.mjs +0 -78
- package/fesm2015/onecx-angular-accelerator-testing.mjs +0 -541
- package/fesm2015/onecx-angular-accelerator-testing.mjs.map +0 -1
- package/fesm2015/onecx-angular-accelerator.mjs +0 -3563
- package/fesm2015/onecx-angular-accelerator.mjs.map +0 -1
- package/fesm2020/onecx-angular-accelerator-testing.mjs.map +0 -1
- package/fesm2020/onecx-angular-accelerator.mjs.map +0 -1
- /package/{esm2020 → esm2022}/index.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/model/column-type.model.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/model/data-action.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/model/data-column-name-id.model.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/model/data-sort-direction.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/model/data-table-column.model.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/model/diagram-column.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/model/diagram-data.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/model/diagram-type.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/model/search-config-info.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/utils/create-remote-component-translate-loader.utils.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/utils/create-translate-loader.utils.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/utils/enum-to-dropdown-options.utils.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/utils/primeicon.utils.mjs +0 -0
- /package/{esm2020 → esm2022}/onecx-angular-accelerator.mjs +0 -0
- /package/{esm2020 → esm2022}/testing/index.mjs +0 -0
- /package/{esm2020 → esm2022}/testing/onecx-angular-accelerator-testing.mjs +0 -0
|
@@ -1,541 +0,0 @@
|
|
|
1
|
-
import { ComponentHarness, ContentContainerComponentHarness, HarnessPredicate } from '@angular/cdk/testing';
|
|
2
|
-
export * from '@angular/cdk/testing';
|
|
3
|
-
import { PDropdownHarness, PButtonHarness, PDialogHarness, PPicklistHarness, PSelectButtonHarness, MenuItemHarness, DivHarness, ButtonHarness, PPaginatorHarness, TableHeaderColumnHarness, TableRowHarness, PTableCheckboxHarness, PChartHarness, PBreadcrumbHarness, PMenuHarness } from '@onecx/angular-testing';
|
|
4
|
-
export * from '@onecx/angular-testing';
|
|
5
|
-
import { __awaiter } from 'tslib';
|
|
6
|
-
import { PrimeIcons } from 'primeng/api';
|
|
7
|
-
export * from '@angular/cdk/testing/testbed';
|
|
8
|
-
|
|
9
|
-
class ColumnGroupSelectionHarness extends ComponentHarness {
|
|
10
|
-
constructor() {
|
|
11
|
-
super(...arguments);
|
|
12
|
-
this.getPDropdown = this.locatorFor(PDropdownHarness);
|
|
13
|
-
}
|
|
14
|
-
}
|
|
15
|
-
ColumnGroupSelectionHarness.hostSelector = 'ocx-column-group-selection';
|
|
16
|
-
|
|
17
|
-
class CustomGroupColumnSelectorHarness extends ContentContainerComponentHarness {
|
|
18
|
-
constructor() {
|
|
19
|
-
super(...arguments);
|
|
20
|
-
this.getCustomGroupColumnSelectorButton = this.locatorFor(PButtonHarness.with({
|
|
21
|
-
id: 'customGroupColumnSelectorButton',
|
|
22
|
-
}));
|
|
23
|
-
this.getDialog = this.locatorFor(PDialogHarness);
|
|
24
|
-
this.getCancelButton = this.locatorFor(PButtonHarness);
|
|
25
|
-
this.getSaveButton = this.locatorFor(PButtonHarness.with({ id: 'saveButton' }));
|
|
26
|
-
this.getPicklist = this.locatorFor(PPicklistHarness);
|
|
27
|
-
this.getSelectButtons = this.locatorForOptional('[name]');
|
|
28
|
-
}
|
|
29
|
-
getFrozenActionColumnSelectButton() {
|
|
30
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
31
|
-
return yield this.locatorForAll(`[name="frozen-action-column-select-button"] .p-button`)();
|
|
32
|
-
});
|
|
33
|
-
}
|
|
34
|
-
getActionColumnPositionSelectButtons() {
|
|
35
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
36
|
-
return yield this.locatorForAll(`[name="action-column-position-select-button"] .p-button`)();
|
|
37
|
-
});
|
|
38
|
-
}
|
|
39
|
-
openCustomGroupColumnSelectorDialog() {
|
|
40
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
41
|
-
if (!(yield (yield this.getDialog()).isVisible())) {
|
|
42
|
-
yield (yield this.getCustomGroupColumnSelectorButton()).click();
|
|
43
|
-
}
|
|
44
|
-
else {
|
|
45
|
-
console.warn('Unable to open CustomGroupColumnSelectionDialog, because it is already open.');
|
|
46
|
-
}
|
|
47
|
-
});
|
|
48
|
-
}
|
|
49
|
-
}
|
|
50
|
-
CustomGroupColumnSelectorHarness.hostSelector = 'ocx-custom-group-column-selector';
|
|
51
|
-
|
|
52
|
-
class DataLayoutSelectionHarness extends ContentContainerComponentHarness {
|
|
53
|
-
getAllSelectionButtons() {
|
|
54
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
55
|
-
return yield (yield this.locatorFor(PSelectButtonHarness)()).getAllButtons();
|
|
56
|
-
});
|
|
57
|
-
}
|
|
58
|
-
getListLayoutSelectionButton() {
|
|
59
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
60
|
-
return yield this.isDesiredButton(yield this.getAllSelectionButtons(), PrimeIcons.LIST);
|
|
61
|
-
});
|
|
62
|
-
}
|
|
63
|
-
getGridLayoutSelectionButton() {
|
|
64
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
65
|
-
return yield this.isDesiredButton(yield this.getAllSelectionButtons(), PrimeIcons.TH_LARGE);
|
|
66
|
-
});
|
|
67
|
-
}
|
|
68
|
-
getTableLayoutSelectionButton() {
|
|
69
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
70
|
-
return yield this.isDesiredButton(yield this.getAllSelectionButtons(), PrimeIcons.TABLE);
|
|
71
|
-
});
|
|
72
|
-
}
|
|
73
|
-
getCurrentLayout() {
|
|
74
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
75
|
-
return yield (yield this.host()).getAttribute('ng-reflect-layout');
|
|
76
|
-
});
|
|
77
|
-
}
|
|
78
|
-
selectListLayout() {
|
|
79
|
-
var _a;
|
|
80
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
81
|
-
yield ((_a = (yield this.getListLayoutSelectionButton())) === null || _a === void 0 ? void 0 : _a.click());
|
|
82
|
-
});
|
|
83
|
-
}
|
|
84
|
-
isDesiredButton(value, icon) {
|
|
85
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
86
|
-
for (let index = 0; index < value.length; index++) {
|
|
87
|
-
if ((yield value[index].getAttribute('aria-labelledby')) === icon) {
|
|
88
|
-
return value[index];
|
|
89
|
-
}
|
|
90
|
-
}
|
|
91
|
-
return null;
|
|
92
|
-
});
|
|
93
|
-
}
|
|
94
|
-
}
|
|
95
|
-
DataLayoutSelectionHarness.hostSelector = 'ocx-data-layout-selection';
|
|
96
|
-
|
|
97
|
-
class MoreActionsMenuButtonHarness extends ContentContainerComponentHarness {
|
|
98
|
-
getHarnessLoaderForPMenuOverlay() {
|
|
99
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
100
|
-
return this.documentRootLocatorFactory().harnessLoaderForOptional('.p-menu-overlay');
|
|
101
|
-
});
|
|
102
|
-
}
|
|
103
|
-
isOpen() {
|
|
104
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
105
|
-
return !!(yield this.getHarnessLoaderForPMenuOverlay());
|
|
106
|
-
});
|
|
107
|
-
}
|
|
108
|
-
open() {
|
|
109
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
110
|
-
if (!(yield this.isOpen())) {
|
|
111
|
-
yield (yield this.host()).click();
|
|
112
|
-
}
|
|
113
|
-
else {
|
|
114
|
-
console.warn('Unable to open multiSelect, because it is already open.');
|
|
115
|
-
}
|
|
116
|
-
});
|
|
117
|
-
}
|
|
118
|
-
close() {
|
|
119
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
120
|
-
if (yield this.isOpen()) {
|
|
121
|
-
yield (yield this.host()).click();
|
|
122
|
-
}
|
|
123
|
-
else {
|
|
124
|
-
console.warn('Unable to open multiSelect, because it is already open.');
|
|
125
|
-
}
|
|
126
|
-
});
|
|
127
|
-
}
|
|
128
|
-
getAllActionsMenuItems() {
|
|
129
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
130
|
-
yield this.open();
|
|
131
|
-
if (yield this.getHarnessLoaderForPMenuOverlay()) {
|
|
132
|
-
return this.documentRootLocatorFactory().locatorForAll(MenuItemHarness)();
|
|
133
|
-
}
|
|
134
|
-
return [];
|
|
135
|
-
});
|
|
136
|
-
}
|
|
137
|
-
}
|
|
138
|
-
MoreActionsMenuButtonHarness.hostSelector = '.more-actions-menu-button';
|
|
139
|
-
|
|
140
|
-
class DefaultGridItemHarness extends ComponentHarness {
|
|
141
|
-
constructor() {
|
|
142
|
-
super(...arguments);
|
|
143
|
-
this.getMoreActionsButton = this.locatorFor(MoreActionsMenuButtonHarness);
|
|
144
|
-
this.getAllDivs = this.locatorForAll(DivHarness);
|
|
145
|
-
this.getGridImg = this.locatorFor('img');
|
|
146
|
-
}
|
|
147
|
-
getData() {
|
|
148
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
149
|
-
const isDataGridItemsDiv = yield Promise.all((yield this.getAllDivs()).map((divHarness) => this.checkDivsHasClasses(divHarness)));
|
|
150
|
-
const divHarnesses = (yield this.getAllDivs()).filter((_v, index) => isDataGridItemsDiv[index]);
|
|
151
|
-
const getDivTexts = yield Promise.all(divHarnesses.map((divHarness) => divHarness.getText()));
|
|
152
|
-
getDivTexts.unshift(yield (yield this.getGridImg()).getAttribute('src'));
|
|
153
|
-
return getDivTexts;
|
|
154
|
-
});
|
|
155
|
-
}
|
|
156
|
-
checkDivsHasClasses(value) {
|
|
157
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
158
|
-
const hasClass = (yield value.checkHasClass('item-name')) || (yield value.checkHasClass('subtitleLine'));
|
|
159
|
-
return hasClass;
|
|
160
|
-
});
|
|
161
|
-
}
|
|
162
|
-
}
|
|
163
|
-
DefaultGridItemHarness.hostSelector = '.data-grid-item';
|
|
164
|
-
|
|
165
|
-
class DefaultListItemHarness extends ComponentHarness {
|
|
166
|
-
constructor() {
|
|
167
|
-
super(...arguments);
|
|
168
|
-
this.getAllActionButtons = this.locatorForAll('button');
|
|
169
|
-
this.getViewButton = this.locatorForOptional(ButtonHarness.with({ class: 'viewListItemButton' }));
|
|
170
|
-
this.getEditButton = this.locatorForOptional(ButtonHarness.with({ class: 'editListItemButton' }));
|
|
171
|
-
this.getDeleteButton = this.locatorForOptional(ButtonHarness.with({ class: 'deleteListItemButton' }));
|
|
172
|
-
this.getAllDivs = this.locatorForAll(DivHarness);
|
|
173
|
-
}
|
|
174
|
-
getData() {
|
|
175
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
176
|
-
const isDataListItemsDiv = yield Promise.all((yield this.getAllDivs()).map((innerDivHarness) => this.checkDivsHasClasses(innerDivHarness)));
|
|
177
|
-
const divHarnesses = (yield this.getAllDivs()).filter((_v, index) => isDataListItemsDiv[index]);
|
|
178
|
-
const getDivTexts = yield Promise.all(divHarnesses.map((divHarness) => divHarness.getText()));
|
|
179
|
-
return getDivTexts;
|
|
180
|
-
});
|
|
181
|
-
}
|
|
182
|
-
checkDivsHasClasses(value) {
|
|
183
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
184
|
-
const hasClass = (yield value.checkHasClass('item-name-row')) || (yield value.checkHasClass('subtitleLine'));
|
|
185
|
-
return hasClass;
|
|
186
|
-
});
|
|
187
|
-
}
|
|
188
|
-
}
|
|
189
|
-
DefaultListItemHarness.hostSelector = '.data-list-items';
|
|
190
|
-
|
|
191
|
-
class DataListGridHarness extends ContentContainerComponentHarness {
|
|
192
|
-
constructor() {
|
|
193
|
-
super(...arguments);
|
|
194
|
-
this.getDefaultGridItems = this.locatorForAll(DefaultGridItemHarness);
|
|
195
|
-
this.getDefaultListItems = this.locatorForAll(DefaultListItemHarness);
|
|
196
|
-
this.getPaginator = this.locatorFor(PPaginatorHarness);
|
|
197
|
-
this.getMenuButton = this.locatorFor(`[name="data-grid-item-menu-button"]`);
|
|
198
|
-
}
|
|
199
|
-
getActionButtons(actionButtonType) {
|
|
200
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
201
|
-
if (actionButtonType === 'list') {
|
|
202
|
-
return yield this.locatorForAll(`[name="data-list-action-button"]`)();
|
|
203
|
-
}
|
|
204
|
-
else if (actionButtonType === 'grid-hidden') {
|
|
205
|
-
return yield this.documentRootLocatorFactory().locatorForAll(`[data-automationid="data-grid-action-button-hidden"]`)();
|
|
206
|
-
}
|
|
207
|
-
else {
|
|
208
|
-
return yield this.documentRootLocatorFactory().locatorForAll(`[data-automationid="data-grid-action-button"]`)();
|
|
209
|
-
}
|
|
210
|
-
});
|
|
211
|
-
}
|
|
212
|
-
actionButtonIsDisabled(actionButton, viewType) {
|
|
213
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
214
|
-
if (viewType === 'list') {
|
|
215
|
-
return yield actionButton.getProperty('disabled');
|
|
216
|
-
}
|
|
217
|
-
else {
|
|
218
|
-
return yield actionButton.hasClass('p-disabled');
|
|
219
|
-
}
|
|
220
|
-
});
|
|
221
|
-
}
|
|
222
|
-
hasAmountOfActionButtons(actionButtonType, amount) {
|
|
223
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
224
|
-
return (yield this.getActionButtons(actionButtonType)).length === amount;
|
|
225
|
-
});
|
|
226
|
-
}
|
|
227
|
-
hasAmountOfDisabledActionButtons(viewType, amount) {
|
|
228
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
229
|
-
let disabledActionButtons = [];
|
|
230
|
-
if (viewType === 'list') {
|
|
231
|
-
disabledActionButtons = yield this.documentRootLocatorFactory().locatorForAll(`[name="data-list-action-button"]:disabled`)();
|
|
232
|
-
}
|
|
233
|
-
else {
|
|
234
|
-
disabledActionButtons = yield this.documentRootLocatorFactory().locatorForAll(`li.p-menuitem>a.p-menuitem-link.p-disabled`)();
|
|
235
|
-
}
|
|
236
|
-
return disabledActionButtons.length === amount;
|
|
237
|
-
});
|
|
238
|
-
}
|
|
239
|
-
}
|
|
240
|
-
DataListGridHarness.hostSelector = 'ocx-data-list-grid';
|
|
241
|
-
|
|
242
|
-
class DataTableHarness extends ContentContainerComponentHarness {
|
|
243
|
-
constructor() {
|
|
244
|
-
super(...arguments);
|
|
245
|
-
this.getHeaderColumns = this.locatorForAll(TableHeaderColumnHarness);
|
|
246
|
-
this.getRows = this.locatorForAll(TableRowHarness);
|
|
247
|
-
this.getPaginator = this.locatorFor(PPaginatorHarness);
|
|
248
|
-
}
|
|
249
|
-
rowSelectionIsEnabled() {
|
|
250
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
251
|
-
const pTableCheckbox = yield this.getHarnessesForCheckboxes('all');
|
|
252
|
-
return pTableCheckbox.length > 0;
|
|
253
|
-
});
|
|
254
|
-
}
|
|
255
|
-
getHarnessesForCheckboxes(type) {
|
|
256
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
257
|
-
let checkBoxHarnesses;
|
|
258
|
-
if (type === 'checked') {
|
|
259
|
-
checkBoxHarnesses = yield this.getAllHarnesses(PTableCheckboxHarness.with({ isSelected: true }));
|
|
260
|
-
return checkBoxHarnesses;
|
|
261
|
-
}
|
|
262
|
-
if (type === 'unchecked') {
|
|
263
|
-
checkBoxHarnesses = yield this.getAllHarnesses(PTableCheckboxHarness.with({ isSelected: false }));
|
|
264
|
-
return checkBoxHarnesses;
|
|
265
|
-
}
|
|
266
|
-
else {
|
|
267
|
-
checkBoxHarnesses = yield this.getAllHarnesses(PTableCheckboxHarness);
|
|
268
|
-
return checkBoxHarnesses;
|
|
269
|
-
}
|
|
270
|
-
});
|
|
271
|
-
}
|
|
272
|
-
getActionColumnHeader(position) {
|
|
273
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
274
|
-
return yield this.locatorForOptional(`[name="action-column-header-${position}"]`)();
|
|
275
|
-
});
|
|
276
|
-
}
|
|
277
|
-
getActionColumn(position) {
|
|
278
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
279
|
-
return yield this.locatorForOptional(`[name="action-column-${position}"]`)();
|
|
280
|
-
});
|
|
281
|
-
}
|
|
282
|
-
getActionButtons() {
|
|
283
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
284
|
-
return yield this.locatorForAll(`[name="data-table-action-button"]`)();
|
|
285
|
-
});
|
|
286
|
-
}
|
|
287
|
-
actionButtonIsDisabled(actionButton) {
|
|
288
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
289
|
-
const isDisabled = yield actionButton.getProperty('disabled');
|
|
290
|
-
return isDisabled;
|
|
291
|
-
});
|
|
292
|
-
}
|
|
293
|
-
hasAmountOfActionButtons(amount) {
|
|
294
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
295
|
-
return (yield this.getActionButtons()).length === amount;
|
|
296
|
-
});
|
|
297
|
-
}
|
|
298
|
-
hasAmountOfDisabledActionButtons(amount) {
|
|
299
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
300
|
-
const disabledActionButtons = yield this.documentRootLocatorFactory().locatorForAll(`[name="data-table-action-button"]:disabled`)();
|
|
301
|
-
return disabledActionButtons.length === amount;
|
|
302
|
-
});
|
|
303
|
-
}
|
|
304
|
-
columnIsFrozen(column) {
|
|
305
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
306
|
-
if (column == null) {
|
|
307
|
-
throw new Error('Given column is null');
|
|
308
|
-
}
|
|
309
|
-
return yield column.hasClass('p-frozen-column');
|
|
310
|
-
});
|
|
311
|
-
}
|
|
312
|
-
}
|
|
313
|
-
DataTableHarness.hostSelector = 'ocx-data-table';
|
|
314
|
-
|
|
315
|
-
class DataViewHarness extends ContentContainerComponentHarness {
|
|
316
|
-
constructor() {
|
|
317
|
-
super(...arguments);
|
|
318
|
-
this.getDataTable = this.locatorFor(DataTableHarness);
|
|
319
|
-
this.getDataListGrid = this.locatorFor(DataListGridHarness);
|
|
320
|
-
}
|
|
321
|
-
}
|
|
322
|
-
DataViewHarness.hostSelector = 'ocx-data-view';
|
|
323
|
-
|
|
324
|
-
class DiagramHarness extends ComponentHarness {
|
|
325
|
-
constructor() {
|
|
326
|
-
super(...arguments);
|
|
327
|
-
this.getChart = this.locatorFor(PChartHarness);
|
|
328
|
-
}
|
|
329
|
-
getTotalNumberOfResults() {
|
|
330
|
-
var _a;
|
|
331
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
332
|
-
return (_a = (yield this.locatorForOptional('.sumKey span[name="amountOfData"]')())) === null || _a === void 0 ? void 0 : _a.text().then((s) => Number(s));
|
|
333
|
-
});
|
|
334
|
-
}
|
|
335
|
-
getSumLabel() {
|
|
336
|
-
var _a;
|
|
337
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
338
|
-
return (_a = (yield this.locatorForOptional('.sumKey span[name="sumLabel"]')())) === null || _a === void 0 ? void 0 : _a.text();
|
|
339
|
-
});
|
|
340
|
-
}
|
|
341
|
-
getDiagramTypeSelectButton() {
|
|
342
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
343
|
-
return yield this.locatorForOptional('p-selectButton[name="diagram-type-select-button"]')();
|
|
344
|
-
});
|
|
345
|
-
}
|
|
346
|
-
getAllSelectionButtons() {
|
|
347
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
348
|
-
return yield (yield this.locatorFor(PSelectButtonHarness)()).getAllButtons();
|
|
349
|
-
});
|
|
350
|
-
}
|
|
351
|
-
}
|
|
352
|
-
DiagramHarness.hostSelector = 'ocx-diagram';
|
|
353
|
-
|
|
354
|
-
class GroupByCountDiagramHarness extends ComponentHarness {
|
|
355
|
-
constructor() {
|
|
356
|
-
super(...arguments);
|
|
357
|
-
this.getDiagram = this.locatorFor(DiagramHarness);
|
|
358
|
-
}
|
|
359
|
-
}
|
|
360
|
-
GroupByCountDiagramHarness.hostSelector = 'ocx-group-by-count-diagram';
|
|
361
|
-
|
|
362
|
-
class InteractiveDataViewHarness extends ContentContainerComponentHarness {
|
|
363
|
-
constructor() {
|
|
364
|
-
super(...arguments);
|
|
365
|
-
this.getDataLayoutSelection = this.locatorFor(DataLayoutSelectionHarness);
|
|
366
|
-
this.getColumnGroupSelectionDropdown = this.locatorForOptional(PDropdownHarness.with({ id: 'columnGroupSelectionDropdown' }));
|
|
367
|
-
this.getCustomGroupColumnSelector = this.locatorFor(CustomGroupColumnSelectorHarness);
|
|
368
|
-
this.getDataListGridSortingDropdown = this.locatorForOptional(PDropdownHarness.with({ id: 'dataListGridSortingDropdown' }));
|
|
369
|
-
this.getDataListGridSortingButton = this.locatorForOptional(PButtonHarness.with({ id: 'dataListGridSortingButton' }));
|
|
370
|
-
this.getDataView = this.locatorFor(DataViewHarness);
|
|
371
|
-
}
|
|
372
|
-
}
|
|
373
|
-
InteractiveDataViewHarness.hostSelector = 'ocx-interactive-data-view';
|
|
374
|
-
|
|
375
|
-
class PageHeaderHarness extends ComponentHarness {
|
|
376
|
-
constructor() {
|
|
377
|
-
super(...arguments);
|
|
378
|
-
this.getPageHeaderWrapperHarness = this.locatorForAll('[name="ocx-page-header-wrapper"]');
|
|
379
|
-
this.getBreadcrumb = this.locatorForOptional(PBreadcrumbHarness);
|
|
380
|
-
this.getMenu = this.locatorForOptional(PMenuHarness);
|
|
381
|
-
}
|
|
382
|
-
getElementByTitle(title) {
|
|
383
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
384
|
-
return yield this.locatorForOptional(`[title="${title}"]`)();
|
|
385
|
-
});
|
|
386
|
-
}
|
|
387
|
-
getObjectInfos() {
|
|
388
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
389
|
-
return yield this.locatorForAll(ObjectDetailItemHarness)();
|
|
390
|
-
});
|
|
391
|
-
}
|
|
392
|
-
getObjectInfoByLabel(objectInfolabel) {
|
|
393
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
394
|
-
return yield this.locatorForOptional(ObjectDetailItemHarness.with({ label: objectInfolabel }))();
|
|
395
|
-
});
|
|
396
|
-
}
|
|
397
|
-
getInlineActionButtons() {
|
|
398
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
399
|
-
const inlineActionButtons = yield this.locatorForAll(PButtonHarness.with({ name: 'ocx-page-header-inline-action-button' }))();
|
|
400
|
-
const inlineActionIconButtons = yield this.locatorForAll(PButtonHarness.with({ name: 'ocx-page-header-inline-action-icon-button' }))();
|
|
401
|
-
return inlineActionButtons.concat(inlineActionIconButtons);
|
|
402
|
-
});
|
|
403
|
-
}
|
|
404
|
-
getInlineActionButtonByLabel(buttonLabel) {
|
|
405
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
406
|
-
return yield this.locatorForOptional(PButtonHarness.with({ label: buttonLabel }))();
|
|
407
|
-
});
|
|
408
|
-
}
|
|
409
|
-
getInlineActionButtonByIcon(buttonIcon) {
|
|
410
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
411
|
-
return yield this.locatorForOptional(PButtonHarness.with({ icon: buttonIcon }))();
|
|
412
|
-
});
|
|
413
|
-
}
|
|
414
|
-
getOverflowActionMenuButton() {
|
|
415
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
416
|
-
return yield this.locatorForOptional('[name="ocx-page-header-overflow-action-button"]')();
|
|
417
|
-
});
|
|
418
|
-
}
|
|
419
|
-
getOverFlowMenuItems() {
|
|
420
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
421
|
-
const menu = yield this.getMenu();
|
|
422
|
-
const menuItems = yield (menu === null || menu === void 0 ? void 0 : menu.getAllMenuItems());
|
|
423
|
-
return menuItems !== null && menuItems !== void 0 ? menuItems : [];
|
|
424
|
-
});
|
|
425
|
-
}
|
|
426
|
-
getOverFlowMenuItem(itemText) {
|
|
427
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
428
|
-
const menu = yield this.getMenu();
|
|
429
|
-
return yield (menu === null || menu === void 0 ? void 0 : menu.getMenuItem(itemText));
|
|
430
|
-
});
|
|
431
|
-
}
|
|
432
|
-
getBreadcrumbItem(itemText) {
|
|
433
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
434
|
-
const breadcrumb = yield this.getBreadcrumb();
|
|
435
|
-
return yield (breadcrumb === null || breadcrumb === void 0 ? void 0 : breadcrumb.getBreadcrumbItem(itemText));
|
|
436
|
-
});
|
|
437
|
-
}
|
|
438
|
-
getHeaderText() {
|
|
439
|
-
var _a;
|
|
440
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
441
|
-
return yield ((_a = (yield this.locatorForOptional('#page-header')())) === null || _a === void 0 ? void 0 : _a.text());
|
|
442
|
-
});
|
|
443
|
-
}
|
|
444
|
-
getSubheaderText() {
|
|
445
|
-
var _a;
|
|
446
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
447
|
-
return yield ((_a = (yield this.locatorForOptional('#page-subheader')())) === null || _a === void 0 ? void 0 : _a.text());
|
|
448
|
-
});
|
|
449
|
-
}
|
|
450
|
-
}
|
|
451
|
-
PageHeaderHarness.hostSelector = 'ocx-page-header';
|
|
452
|
-
class ObjectDetailItemHarness extends ComponentHarness {
|
|
453
|
-
constructor() {
|
|
454
|
-
super(...arguments);
|
|
455
|
-
this.getLabelElement = this.locatorFor('[name="object-detail-label"]');
|
|
456
|
-
this.getValueElement = this.locatorForOptional('[name="object-detail-value"]');
|
|
457
|
-
this.getIconElement = this.locatorForOptional('[name="object-detail-icon"]');
|
|
458
|
-
}
|
|
459
|
-
static with(options) {
|
|
460
|
-
return new HarnessPredicate(ObjectDetailItemHarness, options).addOption('label', options.label, (harness, label) => HarnessPredicate.stringMatches(harness.getLabel(), label));
|
|
461
|
-
}
|
|
462
|
-
getLabel() {
|
|
463
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
464
|
-
return (yield this.getLabelElement()).text();
|
|
465
|
-
});
|
|
466
|
-
}
|
|
467
|
-
getValue() {
|
|
468
|
-
var _a;
|
|
469
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
470
|
-
return (_a = (yield this.getValueElement())) === null || _a === void 0 ? void 0 : _a.text();
|
|
471
|
-
});
|
|
472
|
-
}
|
|
473
|
-
getValueStyles() {
|
|
474
|
-
var _a;
|
|
475
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
476
|
-
return (_a = (yield this.getValueElement())) === null || _a === void 0 ? void 0 : _a.getAttribute('class');
|
|
477
|
-
});
|
|
478
|
-
}
|
|
479
|
-
getIcon() {
|
|
480
|
-
var _a;
|
|
481
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
482
|
-
return (_a = (yield this.getIconElement())) === null || _a === void 0 ? void 0 : _a.getAttribute('class');
|
|
483
|
-
});
|
|
484
|
-
}
|
|
485
|
-
}
|
|
486
|
-
ObjectDetailItemHarness.hostSelector = '.object-info';
|
|
487
|
-
|
|
488
|
-
class SearchConfigHarness extends ContentContainerComponentHarness {
|
|
489
|
-
constructor() {
|
|
490
|
-
super(...arguments);
|
|
491
|
-
this.getSearchConfigDropdown = this.locatorForOptional(PDropdownHarness.with({ id: 'searchConfig' }));
|
|
492
|
-
}
|
|
493
|
-
}
|
|
494
|
-
SearchConfigHarness.hostSelector = 'ocx-search-config';
|
|
495
|
-
|
|
496
|
-
class SearchHeaderHarness extends ComponentHarness {
|
|
497
|
-
constructor() {
|
|
498
|
-
super(...arguments);
|
|
499
|
-
this.getPageHeader = this.locatorFor(PageHeaderHarness);
|
|
500
|
-
this.getSearchConfig = this.locatorFor(SearchConfigHarness);
|
|
501
|
-
this.getSearchButton = this.locatorFor(PButtonHarness.with({
|
|
502
|
-
id: 'searchButton',
|
|
503
|
-
}));
|
|
504
|
-
this.getResetButton = this.locatorFor(PButtonHarness.with({
|
|
505
|
-
id: 'resetButton',
|
|
506
|
-
}));
|
|
507
|
-
this.getSimpleAdvancedButton = this.locatorForOptional(PButtonHarness.with({
|
|
508
|
-
id: 'simpleAdvancedButton',
|
|
509
|
-
}));
|
|
510
|
-
this.getMoreActionsMenuButton = this.locatorForOptional(MoreActionsMenuButtonHarness);
|
|
511
|
-
}
|
|
512
|
-
clickResetButton() {
|
|
513
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
514
|
-
yield (yield this.getResetButton()).click();
|
|
515
|
-
});
|
|
516
|
-
}
|
|
517
|
-
clickSearchButton() {
|
|
518
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
519
|
-
yield (yield this.getSearchButton()).click();
|
|
520
|
-
});
|
|
521
|
-
}
|
|
522
|
-
toggleSimpleAdvanced() {
|
|
523
|
-
var _a;
|
|
524
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
525
|
-
if (yield this.getSimpleAdvancedButton()) {
|
|
526
|
-
yield ((_a = (yield this.getSimpleAdvancedButton())) === null || _a === void 0 ? void 0 : _a.click());
|
|
527
|
-
}
|
|
528
|
-
else {
|
|
529
|
-
console.warn('No SimpleAdvancedButton is being displayed to toggle, because no advanced form field is defined.');
|
|
530
|
-
}
|
|
531
|
-
});
|
|
532
|
-
}
|
|
533
|
-
}
|
|
534
|
-
SearchHeaderHarness.hostSelector = 'ocx-search-header';
|
|
535
|
-
|
|
536
|
-
/**
|
|
537
|
-
* Generated bundle index. Do not edit.
|
|
538
|
-
*/
|
|
539
|
-
|
|
540
|
-
export { ColumnGroupSelectionHarness, CustomGroupColumnSelectorHarness, DataLayoutSelectionHarness, DataListGridHarness, DataTableHarness, DataViewHarness, DefaultGridItemHarness, DefaultListItemHarness, DiagramHarness, GroupByCountDiagramHarness, InteractiveDataViewHarness, MoreActionsMenuButtonHarness, PageHeaderHarness, SearchConfigHarness, SearchHeaderHarness };
|
|
541
|
-
//# sourceMappingURL=onecx-angular-accelerator-testing.mjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"onecx-angular-accelerator-testing.mjs","sources":["../../../../libs/angular-accelerator/testing/column-group-selection.harness.ts","../../../../libs/angular-accelerator/testing/custom-group-column-selector.harness.ts","../../../../libs/angular-accelerator/testing/data-layout-selection.harness.ts","../../../../libs/angular-accelerator/testing/more-actions-menu-button.harness.ts","../../../../libs/angular-accelerator/testing/default-grid-item.harness.ts","../../../../libs/angular-accelerator/testing/default-list-item.harness.ts","../../../../libs/angular-accelerator/testing/data-list-grid.harness.ts","../../../../libs/angular-accelerator/testing/data-table.harness.ts","../../../../libs/angular-accelerator/testing/data-view.harness.ts","../../../../libs/angular-accelerator/testing/diagram.harness.ts","../../../../libs/angular-accelerator/testing/group-by-count-diagram.harness.ts","../../../../libs/angular-accelerator/testing/interactive-data-view.harness.ts","../../../../libs/angular-accelerator/testing/page-header.harness.ts","../../../../libs/angular-accelerator/testing/search-config.harness.ts","../../../../libs/angular-accelerator/testing/search-header.harness.ts","../../../../libs/angular-accelerator/testing/onecx-angular-accelerator-testing.ts"],"sourcesContent":["import { ComponentHarness } from '@angular/cdk/testing'\nimport { PDropdownHarness } from '@onecx/angular-testing'\n\nexport class ColumnGroupSelectionHarness extends ComponentHarness {\n static hostSelector = 'ocx-column-group-selection'\n\n getPDropdown = this.locatorFor(PDropdownHarness)\n}\n","import { ContentContainerComponentHarness } from '@angular/cdk/testing'\nimport { PDialogHarness, PPicklistHarness, PButtonHarness } from '@onecx/angular-testing'\n\nexport class CustomGroupColumnSelectorHarness extends ContentContainerComponentHarness {\n static hostSelector = 'ocx-custom-group-column-selector'\n\n getCustomGroupColumnSelectorButton = this.locatorFor(\n PButtonHarness.with({\n id: 'customGroupColumnSelectorButton',\n })\n )\n\n getDialog = this.locatorFor(PDialogHarness)\n getCancelButton = this.locatorFor(PButtonHarness)\n getSaveButton = this.locatorFor(PButtonHarness.with({ id: 'saveButton' }))\n getPicklist = this.locatorFor(PPicklistHarness)\n getSelectButtons = this.locatorForOptional('[name]')\n\n async getFrozenActionColumnSelectButton() {\n return await this.locatorForAll(`[name=\"frozen-action-column-select-button\"] .p-button`)()\n }\n\n async getActionColumnPositionSelectButtons() {\n return await this.locatorForAll(`[name=\"action-column-position-select-button\"] .p-button`)()\n }\n\n async openCustomGroupColumnSelectorDialog() {\n if (!(await (await this.getDialog()).isVisible())) {\n await (await this.getCustomGroupColumnSelectorButton()).click()\n } else {\n console.warn('Unable to open CustomGroupColumnSelectionDialog, because it is already open.')\n }\n }\n}\n","import { ContentContainerComponentHarness, TestElement } from '@angular/cdk/testing'\nimport { PrimeIcons } from 'primeng/api'\nimport { PSelectButtonHarness, PrimeIcon } from '@onecx/angular-testing'\n\nexport class DataLayoutSelectionHarness extends ContentContainerComponentHarness {\n static hostSelector = 'ocx-data-layout-selection'\n\n async getAllSelectionButtons() {\n return await (await this.locatorFor(PSelectButtonHarness)()).getAllButtons()\n }\n\n async getListLayoutSelectionButton() {\n return await this.isDesiredButton(await this.getAllSelectionButtons(), PrimeIcons.LIST)\n }\n\n async getGridLayoutSelectionButton() {\n return await this.isDesiredButton(await this.getAllSelectionButtons(), PrimeIcons.TH_LARGE)\n }\n\n async getTableLayoutSelectionButton() {\n return await this.isDesiredButton(await this.getAllSelectionButtons(), PrimeIcons.TABLE)\n }\n\n async getCurrentLayout() {\n return await (await this.host()).getAttribute('ng-reflect-layout')\n }\n\n async selectListLayout() {\n await (await this.getListLayoutSelectionButton())?.click()\n }\n\n private async isDesiredButton(value: TestElement[], icon: PrimeIcon) {\n for (let index = 0; index < value.length; index++) {\n if ((await value[index].getAttribute('aria-labelledby')) === icon) {\n return value[index]\n }\n }\n return null\n }\n}\n","import { ContentContainerComponentHarness, HarnessLoader } from '@angular/cdk/testing'\nimport { MenuItemHarness } from '@onecx/angular-testing'\n\nexport class MoreActionsMenuButtonHarness extends ContentContainerComponentHarness {\n static hostSelector = '.more-actions-menu-button'\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 open() {\n if (!(await this.isOpen())) {\n await (await this.host()).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.host()).click()\n } else {\n console.warn('Unable to open multiSelect, because it is already open.')\n }\n }\n\n async getAllActionsMenuItems() {\n await this.open()\n if (await this.getHarnessLoaderForPMenuOverlay()) {\n return this.documentRootLocatorFactory().locatorForAll(MenuItemHarness)()\n }\n return []\n }\n}\n","import { ComponentHarness } from '@angular/cdk/testing'\nimport { DivHarness } from '@onecx/angular-testing'\nimport { MoreActionsMenuButtonHarness } from './more-actions-menu-button.harness'\n\nexport class DefaultGridItemHarness extends ComponentHarness {\n static hostSelector = '.data-grid-item'\n\n getMoreActionsButton = this.locatorFor(MoreActionsMenuButtonHarness)\n private getAllDivs = this.locatorForAll(DivHarness)\n private getGridImg = this.locatorFor('img')\n\n async getData() {\n const isDataGridItemsDiv = await Promise.all(\n (await this.getAllDivs()).map((divHarness) => this.checkDivsHasClasses(divHarness))\n )\n const divHarnesses = (await this.getAllDivs()).filter((_v, index) => isDataGridItemsDiv[index])\n const getDivTexts: (string | null)[] = await Promise.all(divHarnesses.map((divHarness) => divHarness.getText()))\n getDivTexts.unshift(await (await this.getGridImg()).getAttribute('src'))\n return getDivTexts\n }\n\n async checkDivsHasClasses(value: DivHarness) {\n const hasClass = (await value.checkHasClass('item-name')) || (await value.checkHasClass('subtitleLine'))\n return hasClass\n }\n}\n","import { ComponentHarness } from '@angular/cdk/testing'\nimport { ButtonHarness, DivHarness } from '@onecx/angular-testing'\n\nexport class DefaultListItemHarness extends ComponentHarness {\n static hostSelector = '.data-list-items'\n\n getAllActionButtons = this.locatorForAll('button')\n getViewButton = this.locatorForOptional(ButtonHarness.with({ class: 'viewListItemButton' }))\n getEditButton = this.locatorForOptional(ButtonHarness.with({ class: 'editListItemButton' }))\n getDeleteButton = this.locatorForOptional(ButtonHarness.with({ class: 'deleteListItemButton' }))\n\n private getAllDivs = this.locatorForAll(DivHarness)\n\n async getData() {\n const isDataListItemsDiv = await Promise.all(\n (await this.getAllDivs()).map((innerDivHarness) => this.checkDivsHasClasses(innerDivHarness))\n )\n const divHarnesses = (await this.getAllDivs()).filter((_v, index) => isDataListItemsDiv[index])\n const getDivTexts = await Promise.all(divHarnesses.map((divHarness) => divHarness.getText()))\n return getDivTexts\n }\n\n async checkDivsHasClasses(value: DivHarness) {\n const hasClass = (await value.checkHasClass('item-name-row')) || (await value.checkHasClass('subtitleLine'))\n return hasClass\n }\n}\n","import { ContentContainerComponentHarness, TestElement } from '@angular/cdk/testing'\nimport { PPaginatorHarness } from '@onecx/angular-testing'\nimport { DefaultGridItemHarness } from './default-grid-item.harness'\nimport { DefaultListItemHarness } from './default-list-item.harness'\n\nexport class DataListGridHarness extends ContentContainerComponentHarness {\n static hostSelector = 'ocx-data-list-grid'\n\n getDefaultGridItems = this.locatorForAll(DefaultGridItemHarness)\n getDefaultListItems = this.locatorForAll(DefaultListItemHarness)\n getPaginator = this.locatorFor(PPaginatorHarness)\n getMenuButton = this.locatorFor(`[name=\"data-grid-item-menu-button\"]`)\n\n async getActionButtons(actionButtonType: 'list' | 'grid' | 'grid-hidden') {\n if (actionButtonType === 'list') {\n return await this.locatorForAll(`[name=\"data-list-action-button\"]`)()\n } else if (actionButtonType === 'grid-hidden') {\n return await this.documentRootLocatorFactory().locatorForAll(\n `[data-automationid=\"data-grid-action-button-hidden\"]`\n )()\n } else {\n return await this.documentRootLocatorFactory().locatorForAll(`[data-automationid=\"data-grid-action-button\"]`)()\n }\n }\n\n async actionButtonIsDisabled(actionButton: TestElement, viewType: 'list' | 'grid') {\n if (viewType === 'list') {\n return await actionButton.getProperty('disabled')\n } else {\n return await actionButton.hasClass('p-disabled')\n }\n }\n\n async hasAmountOfActionButtons(actionButtonType: 'list' | 'grid' | 'grid-hidden', amount: number) {\n return (await this.getActionButtons(actionButtonType)).length === amount\n }\n\n async hasAmountOfDisabledActionButtons(viewType: 'list' | 'grid', amount: number) {\n let disabledActionButtons = []\n if (viewType === 'list') {\n disabledActionButtons = await this.documentRootLocatorFactory().locatorForAll(\n `[name=\"data-list-action-button\"]:disabled`\n )()\n } else {\n disabledActionButtons = await this.documentRootLocatorFactory().locatorForAll(\n `li.p-menuitem>a.p-menuitem-link.p-disabled`\n )()\n }\n return disabledActionButtons.length === amount\n }\n}\n","import { ContentContainerComponentHarness, TestElement } from '@angular/cdk/testing'\nimport {\n TableHeaderColumnHarness,\n TableRowHarness,\n PPaginatorHarness,\n PTableCheckboxHarness,\n} from '@onecx/angular-testing'\n\nexport class DataTableHarness extends ContentContainerComponentHarness {\n static hostSelector = 'ocx-data-table'\n\n getHeaderColumns = this.locatorForAll(TableHeaderColumnHarness)\n getRows = this.locatorForAll(TableRowHarness)\n getPaginator = this.locatorFor(PPaginatorHarness)\n\n async rowSelectionIsEnabled(): Promise<boolean> {\n const pTableCheckbox = await this.getHarnessesForCheckboxes('all')\n return pTableCheckbox.length > 0\n }\n\n async getHarnessesForCheckboxes(type: 'all' | 'checked' | 'unchecked'): Promise<PTableCheckboxHarness[]> {\n let checkBoxHarnesses: PTableCheckboxHarness[]\n if (type === 'checked') {\n checkBoxHarnesses = await this.getAllHarnesses(PTableCheckboxHarness.with({ isSelected: true }))\n return checkBoxHarnesses\n }\n if (type === 'unchecked') {\n checkBoxHarnesses = await this.getAllHarnesses(PTableCheckboxHarness.with({ isSelected: false }))\n return checkBoxHarnesses\n } else {\n checkBoxHarnesses = await this.getAllHarnesses(PTableCheckboxHarness)\n return checkBoxHarnesses\n }\n }\n\n async getActionColumnHeader(position: 'left' | 'right') {\n return await this.locatorForOptional(`[name=\"action-column-header-${position}\"]`)()\n }\n\n async getActionColumn(position: 'left' | 'right') {\n return await this.locatorForOptional(`[name=\"action-column-${position}\"]`)()\n }\n\n async getActionButtons() {\n return await this.locatorForAll(`[name=\"data-table-action-button\"]`)()\n }\n\n async actionButtonIsDisabled(actionButton: TestElement) {\n const isDisabled = await actionButton.getProperty('disabled')\n return isDisabled\n }\n\n async hasAmountOfActionButtons(amount: number) {\n return (await this.getActionButtons()).length === amount\n }\n\n async hasAmountOfDisabledActionButtons(amount: number) { \n const disabledActionButtons = await this.documentRootLocatorFactory().locatorForAll(\n `[name=\"data-table-action-button\"]:disabled`\n )()\n return disabledActionButtons.length === amount\n }\n\n async columnIsFrozen(column: TestElement | null) {\n if (column == null) {\n throw new Error('Given column is null')\n }\n return await column.hasClass('p-frozen-column')\n }\n}\n","import { ContentContainerComponentHarness } from '@angular/cdk/testing'\nimport { DataListGridHarness } from './data-list-grid.harness'\nimport { DataTableHarness } from './data-table.harness'\n\nexport class DataViewHarness extends ContentContainerComponentHarness {\n static hostSelector = 'ocx-data-view'\n\n getDataTable = this.locatorFor(DataTableHarness)\n getDataListGrid = this.locatorFor(DataListGridHarness)\n}\n","import { ComponentHarness } from '@angular/cdk/testing'\nimport { PChartHarness, PSelectButtonHarness } from '@onecx/angular-testing'\n\nexport class DiagramHarness extends ComponentHarness {\n static hostSelector = 'ocx-diagram'\n\n getChart = this.locatorFor(PChartHarness)\n\n async getTotalNumberOfResults(): Promise<number | undefined> {\n return (await this.locatorForOptional('.sumKey span[name=\"amountOfData\"]')())?.text().then((s) => Number(s))\n }\n\n async getSumLabel(): Promise<string | undefined> {\n return (await this.locatorForOptional('.sumKey span[name=\"sumLabel\"]')())?.text()\n }\n\n async getDiagramTypeSelectButton() {\n return await this.locatorForOptional('p-selectButton[name=\"diagram-type-select-button\"]')()\n }\n\n async getAllSelectionButtons() {\n return await (await this.locatorFor(PSelectButtonHarness)()).getAllButtons()\n }\n}\n","import { ComponentHarness } from '@angular/cdk/testing'\nimport { DiagramHarness } from './diagram.harness'\n\nexport class GroupByCountDiagramHarness extends ComponentHarness {\n static hostSelector = 'ocx-group-by-count-diagram'\n\n getDiagram = this.locatorFor(DiagramHarness)\n}","import { ContentContainerComponentHarness } from '@angular/cdk/testing'\nimport { PButtonHarness } from '@onecx/angular-testing'\nimport { PDropdownHarness } from '@onecx/angular-testing'\nimport { CustomGroupColumnSelectorHarness } from '.'\nimport { DataLayoutSelectionHarness } from './data-layout-selection.harness'\nimport { DataViewHarness } from './data-view.harness'\n\nexport class InteractiveDataViewHarness extends ContentContainerComponentHarness {\n static hostSelector = 'ocx-interactive-data-view'\n\n getDataLayoutSelection = this.locatorFor(DataLayoutSelectionHarness)\n getColumnGroupSelectionDropdown = this.locatorForOptional(\n PDropdownHarness.with({ id: 'columnGroupSelectionDropdown' })\n )\n getCustomGroupColumnSelector = this.locatorFor(CustomGroupColumnSelectorHarness)\n getDataListGridSortingDropdown = this.locatorForOptional(PDropdownHarness.with({ id: 'dataListGridSortingDropdown' }))\n getDataListGridSortingButton = this.locatorForOptional(PButtonHarness.with({ id: 'dataListGridSortingButton' }))\n getDataView = this.locatorFor(DataViewHarness)\n}\n","import { BaseHarnessFilters, ComponentHarness, HarnessPredicate } from '@angular/cdk/testing'\nimport {\n ListItemHarness,\n MenuItemHarness,\n PBreadcrumbHarness,\n PButtonHarness,\n PMenuHarness,\n} from '@onecx/angular-testing'\n\nexport class PageHeaderHarness extends ComponentHarness {\n static hostSelector = 'ocx-page-header'\n\n getPageHeaderWrapperHarness = this.locatorForAll('[name=\"ocx-page-header-wrapper\"]')\n getBreadcrumb = this.locatorForOptional(PBreadcrumbHarness)\n getMenu = this.locatorForOptional(PMenuHarness)\n\n async getElementByTitle(title: string) {\n return await this.locatorForOptional(`[title=\"${title}\"]`)()\n }\n\n async getObjectInfos() {\n return await this.locatorForAll(ObjectDetailItemHarness)()\n }\n\n async getObjectInfoByLabel(objectInfolabel: string) {\n return await this.locatorForOptional(ObjectDetailItemHarness.with({ label: objectInfolabel }))()\n }\n\n async getInlineActionButtons() {\n const inlineActionButtons = await this.locatorForAll(\n PButtonHarness.with({ name: 'ocx-page-header-inline-action-button' })\n )()\n const inlineActionIconButtons = await this.locatorForAll(\n PButtonHarness.with({ name: 'ocx-page-header-inline-action-icon-button' })\n )()\n return inlineActionButtons.concat(inlineActionIconButtons)\n }\n\n async getInlineActionButtonByLabel(buttonLabel: string) {\n return await this.locatorForOptional(PButtonHarness.with({ label: buttonLabel }))()\n }\n\n async getInlineActionButtonByIcon(buttonIcon: string) {\n return await this.locatorForOptional(PButtonHarness.with({ icon: buttonIcon }))()\n }\n\n async getOverflowActionMenuButton() {\n return await this.locatorForOptional('[name=\"ocx-page-header-overflow-action-button\"]')()\n }\n\n async getOverFlowMenuItems() {\n const menu = await this.getMenu()\n const menuItems = await menu?.getAllMenuItems()\n return menuItems ?? []\n }\n\n async getOverFlowMenuItem(itemText: string): Promise<MenuItemHarness | undefined | null> {\n const menu = await this.getMenu()\n return await menu?.getMenuItem(itemText)\n }\n\n async getBreadcrumbItem(itemText: string): Promise<ListItemHarness | undefined | null> {\n const breadcrumb = await this.getBreadcrumb()\n return await breadcrumb?.getBreadcrumbItem(itemText)\n }\n\n async getHeaderText(): Promise<string | undefined> {\n return await (await this.locatorForOptional('#page-header')())?.text()\n }\n\n async getSubheaderText(): Promise<string | undefined> {\n return await (await this.locatorForOptional('#page-subheader')())?.text()\n }\n}\n\ninterface ObjectDetailItemHarnessFilters extends BaseHarnessFilters {\n label?: string\n}\n\nclass ObjectDetailItemHarness extends ComponentHarness {\n static hostSelector = '.object-info'\n\n getLabelElement = this.locatorFor('[name=\"object-detail-label\"]')\n getValueElement = this.locatorForOptional('[name=\"object-detail-value\"]')\n getIconElement = this.locatorForOptional('[name=\"object-detail-icon\"]')\n\n static with(options: ObjectDetailItemHarnessFilters): HarnessPredicate<ObjectDetailItemHarness> {\n return new HarnessPredicate(ObjectDetailItemHarness, options).addOption('label', options.label, (harness, label) =>\n HarnessPredicate.stringMatches(harness.getLabel(), label)\n )\n }\n\n async getLabel() {\n return (await this.getLabelElement()).text()\n }\n\n async getValue() {\n return (await this.getValueElement())?.text()\n }\n\n async getValueStyles() {\n return (await this.getValueElement())?.getAttribute('class')\n }\n\n async getIcon() {\n return (await this.getIconElement())?.getAttribute('class')\n }\n}\n","import { ContentContainerComponentHarness } from '@angular/cdk/testing'\nimport { PDropdownHarness } from '@onecx/angular-testing'\n\nexport class SearchConfigHarness extends ContentContainerComponentHarness {\n static hostSelector = 'ocx-search-config'\n\n getSearchConfigDropdown = this.locatorForOptional(PDropdownHarness.with({ id: 'searchConfig' }))\n}\n","import { ComponentHarness } from '@angular/cdk/testing'\nimport { PButtonHarness } from '@onecx/angular-testing'\nimport { PageHeaderHarness } from './page-header.harness'\nimport { SearchConfigHarness } from './search-config.harness'\nimport { MoreActionsMenuButtonHarness } from './more-actions-menu-button.harness'\n\nexport class SearchHeaderHarness extends ComponentHarness {\n static hostSelector = 'ocx-search-header'\n\n getPageHeader = this.locatorFor(PageHeaderHarness)\n getSearchConfig = this.locatorFor(SearchConfigHarness)\n getSearchButton = this.locatorFor(\n PButtonHarness.with({\n id: 'searchButton',\n })\n )\n\n getResetButton = this.locatorFor(\n PButtonHarness.with({\n id: 'resetButton',\n })\n )\n\n getSimpleAdvancedButton = this.locatorForOptional(\n PButtonHarness.with({\n id: 'simpleAdvancedButton',\n })\n )\n\n getMoreActionsMenuButton = this.locatorForOptional(MoreActionsMenuButtonHarness)\n\n async clickResetButton() {\n await (await this.getResetButton()).click()\n }\n\n async clickSearchButton() {\n await (await this.getSearchButton()).click()\n }\n\n async toggleSimpleAdvanced() {\n if (await this.getSimpleAdvancedButton()) {\n await (await this.getSimpleAdvancedButton())?.click()\n } else {\n console.warn('No SimpleAdvancedButton is being displayed to toggle, because no advanced form field is defined.')\n }\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|