@alfresco/aca-playwright-shared 7.3.0-21514112140 → 7.3.0-21519063154
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/fesm2022/alfresco-aca-playwright-shared.mjs +68 -95
- package/fesm2022/alfresco-aca-playwright-shared.mjs.map +1 -1
- package/package.json +1 -1
- package/page-objects/components/actions-dropdown.component.d.ts +2 -4
- package/page-objects/components/adf-info-drawer.component.d.ts +2 -1
- package/page-objects/components/dataTable/data-table.component.d.ts +0 -16
- package/page-objects/components/datetime-picker/datetime-picker.component.d.ts +0 -2
- package/page-objects/components/dialogs/content-node-selector-dialog.d.ts +3 -3
- package/page-objects/components/dialogs/link-rules.component.d.ts +2 -2
- package/page-objects/components/dialogs/share-dialog.component.d.ts +12 -11
|
@@ -656,7 +656,7 @@ class PlaywrightBase {
|
|
|
656
656
|
class BaseComponent extends PlaywrightBase {
|
|
657
657
|
rootElement;
|
|
658
658
|
overlayElement = this.page.locator('.cdk-overlay-backdrop-showing');
|
|
659
|
-
progressBar = this.page.locator('
|
|
659
|
+
progressBar = this.page.locator('[role="progressbar"]');
|
|
660
660
|
constructor(page, rootElement) {
|
|
661
661
|
super(page);
|
|
662
662
|
this.rootElement = rootElement;
|
|
@@ -680,8 +680,8 @@ class BaseComponent extends PlaywrightBase {
|
|
|
680
680
|
}
|
|
681
681
|
async spinnerWaitForReload() {
|
|
682
682
|
try {
|
|
683
|
-
await this.page.locator('
|
|
684
|
-
await this.page.locator('
|
|
683
|
+
await this.page.locator('[role="progressbar"]').waitFor({ state: 'attached', timeout: timeouts.medium });
|
|
684
|
+
await this.page.locator('[role="progressbar"]').waitFor({ state: 'detached', timeout: timeouts.normal });
|
|
685
685
|
}
|
|
686
686
|
catch (e) {
|
|
687
687
|
this.logger.info('Spinner was not present');
|
|
@@ -773,7 +773,7 @@ class SnackBarComponent extends BaseComponent {
|
|
|
773
773
|
* from Hyland Software. If not, see <http://www.gnu.org/licenses/>.
|
|
774
774
|
*/
|
|
775
775
|
class MatMenuComponent extends BaseComponent {
|
|
776
|
-
static rootElement = '
|
|
776
|
+
static rootElement = '[role="menu"]';
|
|
777
777
|
constructor(page) {
|
|
778
778
|
super(page, MatMenuComponent.rootElement);
|
|
779
779
|
}
|
|
@@ -801,10 +801,10 @@ class MatMenuComponent extends BaseComponent {
|
|
|
801
801
|
return menuElement.isVisible();
|
|
802
802
|
}
|
|
803
803
|
async verifyActualMoreActions(expectedToolbarMore) {
|
|
804
|
-
await this.
|
|
805
|
-
const menus = await this.
|
|
804
|
+
await this.getChild('').waitFor();
|
|
805
|
+
const menus = await this.getChild('[role="menuitem"]').all();
|
|
806
806
|
const actualMoreActions = await Promise.all(menus.map(async (button) => {
|
|
807
|
-
const title = await
|
|
807
|
+
const title = await button.locator('span span').innerText();
|
|
808
808
|
return title || '';
|
|
809
809
|
}));
|
|
810
810
|
for (const action of expectedToolbarMore) {
|
|
@@ -870,8 +870,8 @@ class PaginationComponent extends BaseComponent {
|
|
|
870
870
|
}
|
|
871
871
|
async spinnerWaitForReload() {
|
|
872
872
|
try {
|
|
873
|
-
await this.page.locator('
|
|
874
|
-
await this.page.locator('
|
|
873
|
+
await this.page.locator('[role="progressbar"]').waitFor({ state: 'attached', timeout: 2000 });
|
|
874
|
+
await this.page.locator('[role="progressbar"]').waitFor({ state: 'detached', timeout: 2000 });
|
|
875
875
|
}
|
|
876
876
|
catch (e) {
|
|
877
877
|
this.logger.info('Spinner was not present');
|
|
@@ -1032,8 +1032,6 @@ class DataTableComponent extends BaseComponent {
|
|
|
1032
1032
|
sitesName = this.page.locator('.adf-datatable-body [data-automation-id*="datatable-row"] [aria-label="Name"]');
|
|
1033
1033
|
sitesRole = this.page.locator('.adf-datatable-body [data-automation-id*="datatable-row"] [aria-label="My Role"]');
|
|
1034
1034
|
lockOwner = this.page.locator('.aca-locked-by--name');
|
|
1035
|
-
uncheckedCheckbox = this.page.locator('.mat-mdc-checkbox');
|
|
1036
|
-
checkedCheckbox = this.page.locator('.mat-mdc-checkbox-checked');
|
|
1037
1035
|
highlightedText = '.aca-highlight';
|
|
1038
1036
|
searchFileName = '.search-file-name';
|
|
1039
1037
|
searchFileDescription = '[data-automation-id="search-results-entry-description"]';
|
|
@@ -1074,12 +1072,6 @@ class DataTableComponent extends BaseComponent {
|
|
|
1074
1072
|
* @returns reference to cell element.
|
|
1075
1073
|
*/
|
|
1076
1074
|
getByAriaLabelTitle = (title) => this.getChild(`[aria-label="${title}"]`);
|
|
1077
|
-
/**
|
|
1078
|
-
* Method used in cases where we want to get the button (hamburger menu) for row element
|
|
1079
|
-
*
|
|
1080
|
-
* @returns reference to menu placed in row localized by the name
|
|
1081
|
-
*/
|
|
1082
|
-
getActionsButtonByName = (name) => this.getRowByName(name).locator('mat-icon', { hasText: new RegExp(`^\\s*more_vert\\s*$`, 'g') });
|
|
1083
1075
|
/**
|
|
1084
1076
|
* Method used in cases where we want to get the edit button and there is no hamburger menu
|
|
1085
1077
|
*
|
|
@@ -1103,7 +1095,7 @@ class DataTableComponent extends BaseComponent {
|
|
|
1103
1095
|
*
|
|
1104
1096
|
* @returns reference to checkbox placed in row localized by the name
|
|
1105
1097
|
*/
|
|
1106
|
-
getCheckboxForElement = (item) => this.getRowByName(item).locator('
|
|
1098
|
+
getCheckboxForElement = (item) => this.getRowByName(item).locator('[type="checkbox"]');
|
|
1107
1099
|
getColumnHeaderByTitleLocator = (headerTitle) => this.getChild('[role="columnheader"]', { hasText: headerTitle });
|
|
1108
1100
|
getSearchResultLinkByName = (name) => this.getChild('.aca-search-results-row span[role="link"]', { hasText: name });
|
|
1109
1101
|
getColumnValuesByName = (name) => this.getChild(`div[title="${name}"] span`);
|
|
@@ -1132,20 +1124,6 @@ class DataTableComponent extends BaseComponent {
|
|
|
1132
1124
|
await actionButtonLocator.click();
|
|
1133
1125
|
await this.spinnerWaitForReload();
|
|
1134
1126
|
}
|
|
1135
|
-
/**
|
|
1136
|
-
* Click action from the expandable kebab menu for the element in datatable
|
|
1137
|
-
*
|
|
1138
|
-
* @param name title of the record you would like to proceed
|
|
1139
|
-
* @param action provide button title for the action
|
|
1140
|
-
* @param subAction if the action is in sub menu, then provide it here
|
|
1141
|
-
*/
|
|
1142
|
-
async performActionForElement(name, action, subAction) {
|
|
1143
|
-
await this.getActionsButtonByName(name).click();
|
|
1144
|
-
await this.contextMenuActions.getButtonByText(action).click();
|
|
1145
|
-
if (subAction) {
|
|
1146
|
-
await this.contextMenuActions.getButtonByText(subAction).click();
|
|
1147
|
-
}
|
|
1148
|
-
}
|
|
1149
1127
|
/**
|
|
1150
1128
|
* This method is used when we want to perform double click on the dataTable row to open a file or folder
|
|
1151
1129
|
*
|
|
@@ -1196,14 +1174,16 @@ class DataTableComponent extends BaseComponent {
|
|
|
1196
1174
|
if (!isSelected) {
|
|
1197
1175
|
const row = this.getRowByName(name);
|
|
1198
1176
|
await row.hover();
|
|
1199
|
-
await
|
|
1200
|
-
|
|
1177
|
+
if (!(await this.getCheckboxForElement(name).isChecked())) {
|
|
1178
|
+
await this.getCheckboxForElement(name).click();
|
|
1179
|
+
}
|
|
1201
1180
|
}
|
|
1202
1181
|
}
|
|
1203
1182
|
}
|
|
1204
1183
|
async isRowSelected(itemName) {
|
|
1205
1184
|
const row = this.getRowByName(itemName);
|
|
1206
|
-
|
|
1185
|
+
await row.hover();
|
|
1186
|
+
return this.getCheckboxForElement(itemName).isChecked();
|
|
1207
1187
|
}
|
|
1208
1188
|
async getColumnHeaders() {
|
|
1209
1189
|
const columnNameLocator = this.columnHeaders;
|
|
@@ -1409,7 +1389,7 @@ class ToolbarComponent extends BaseComponent {
|
|
|
1409
1389
|
class AdfFolderDialogComponent extends BaseComponent {
|
|
1410
1390
|
static rootElement = 'adf-folder-dialog';
|
|
1411
1391
|
folderNameInputLocator = this.getChild('[id="adf-folder-name-input"]');
|
|
1412
|
-
folderNameInputHint = this.getChild('
|
|
1392
|
+
folderNameInputHint = this.getChild('[aria-atomic="true"] span');
|
|
1413
1393
|
folderTitleInput = this.getChild('[id="adf-folder-title-input"]');
|
|
1414
1394
|
folderDescriptionInput = this.getChild('[id="adf-folder-description-input"]');
|
|
1415
1395
|
createButton = this.getChild('[id="adf-folder-create-button"]');
|
|
@@ -1418,7 +1398,7 @@ class AdfFolderDialogComponent extends BaseComponent {
|
|
|
1418
1398
|
super(page, AdfFolderDialogComponent.rootElement);
|
|
1419
1399
|
}
|
|
1420
1400
|
getLabelText = (text) => this.getChild('label', { hasText: text });
|
|
1421
|
-
getRequiredMarker = (text) => this.getLabelText(text).locator('
|
|
1401
|
+
getRequiredMarker = (text) => this.getLabelText(text).locator('span');
|
|
1422
1402
|
/**
|
|
1423
1403
|
* This method is used when we want to fill in Create new Folder Dialog and choose Create button
|
|
1424
1404
|
*
|
|
@@ -1469,9 +1449,9 @@ class AdfLibraryDialogComponent extends BaseComponent {
|
|
|
1469
1449
|
super(page, AdfLibraryDialogComponent.rootElement);
|
|
1470
1450
|
}
|
|
1471
1451
|
getLabelText = (text) => this.getChild('label', { hasText: text });
|
|
1472
|
-
getRequiredMarker = (text) => this.getLabelText(text).locator('
|
|
1473
|
-
getDialogTitle = (text) => this.getChild('
|
|
1474
|
-
getErrorByText = (text) => this.
|
|
1452
|
+
getRequiredMarker = (text) => this.getLabelText(text).locator('span');
|
|
1453
|
+
getDialogTitle = (text) => this.getChild('h2', { hasText: text });
|
|
1454
|
+
getErrorByText = (text) => this.getChild('.adf-library-dialog-form-field').getByText(text);
|
|
1475
1455
|
/**
|
|
1476
1456
|
* This method is used when we want to fill in Create Library Dialog and choose Create button
|
|
1477
1457
|
*
|
|
@@ -1645,19 +1625,19 @@ class ViewerOverlayDialogComponent extends BaseComponent {
|
|
|
1645
1625
|
*/
|
|
1646
1626
|
class ContentNodeSelectorDialog extends BaseComponent {
|
|
1647
1627
|
static rootElement = 'adf-content-node-selector';
|
|
1648
|
-
constructor(page) {
|
|
1649
|
-
super(page, ContentNodeSelectorDialog.rootElement);
|
|
1650
|
-
}
|
|
1651
|
-
cancelButton = this.getChild('[data-automation-id="content-node-selector-actions-cancel"]');
|
|
1652
|
-
actionButton = this.getChild('[data-automation-id="content-node-selector-actions-choose"]');
|
|
1653
|
-
locationDropDown = this.getChild('[id="site-dropdown-container"] mat-form-field');
|
|
1654
1628
|
selectedRow = this.getChild('.adf-is-selected');
|
|
1655
|
-
getOptionLocator = (optionName) => this.page.locator('.mat-mdc-select-panel .mdc-list-item__primary-text', { hasText: optionName });
|
|
1656
1629
|
getRowByName = (name) => this.getChild(`adf-datatable-row`, { hasText: name.toString() });
|
|
1630
|
+
cancelButton = this.getChild('[data-automation-id="content-node-selector-actions-cancel"]');
|
|
1631
|
+
actionButton = this.getChild('[data-automation-id="content-node-selector-actions-choose"]');
|
|
1632
|
+
locationDropDown = this.getChild('[id="site-dropdown-container"] .adf-sites-dropdown-form-field');
|
|
1633
|
+
getOptionLocator = (optionName) => this.page.locator('[role=listbox] [role=option]', { hasText: optionName }).first();
|
|
1657
1634
|
getDialogTitle = (text) => this.getChild('[data-automation-id="content-node-selector-title"]', { hasText: text });
|
|
1658
1635
|
getBreadcrumb = (text) => this.getChild('[data-automation-id="current-folder"]', { hasText: text });
|
|
1659
1636
|
getFolderIcon = this.getChild('[data-automation-id="dropdown-breadcrumb-trigger"]');
|
|
1660
1637
|
loadMoreButton = this.getChild('[data-automation-id="adf-infinite-pagination-button"]');
|
|
1638
|
+
constructor(page) {
|
|
1639
|
+
super(page, ContentNodeSelectorDialog.rootElement);
|
|
1640
|
+
}
|
|
1661
1641
|
async loadMoreNodes() {
|
|
1662
1642
|
await this.spinnerWaitForReload();
|
|
1663
1643
|
while (await this.loadMoreButton.isVisible()) {
|
|
@@ -1709,7 +1689,7 @@ class ContentNodeSelectorDialog extends BaseComponent {
|
|
|
1709
1689
|
* from Hyland Software. If not, see <http://www.gnu.org/licenses/>.
|
|
1710
1690
|
*/
|
|
1711
1691
|
class CreateFromTemplateDialogComponent extends BaseComponent {
|
|
1712
|
-
static rootElement = '
|
|
1692
|
+
static rootElement = '.aca-create-from-template-dialog';
|
|
1713
1693
|
constructor(page) {
|
|
1714
1694
|
super(page, CreateFromTemplateDialogComponent.rootElement);
|
|
1715
1695
|
}
|
|
@@ -1795,16 +1775,14 @@ class AdfConfirmDialogComponent extends BaseComponent {
|
|
|
1795
1775
|
* from Hyland Software. If not, see <http://www.gnu.org/licenses/>.
|
|
1796
1776
|
*/
|
|
1797
1777
|
class DateTimePicker extends BaseComponent {
|
|
1798
|
-
static rootElement = '
|
|
1799
|
-
|
|
1800
|
-
|
|
1801
|
-
nextMonthBtn = this.getChild('.mat-calendar-next-button');
|
|
1802
|
-
rootElemLocator = this.page.locator('.mat-datepicker-popup');
|
|
1778
|
+
static rootElement = '[role="dialog"]';
|
|
1779
|
+
dayPicker = this.getChild('[role="grid"]');
|
|
1780
|
+
nextMonthBtn = this.getChild('[aria-label="Next month"]');
|
|
1803
1781
|
constructor(page) {
|
|
1804
1782
|
super(page, DateTimePicker.rootElement);
|
|
1805
1783
|
}
|
|
1806
1784
|
async isCalendarOpen() {
|
|
1807
|
-
const element = this.
|
|
1785
|
+
const element = this.getChild('');
|
|
1808
1786
|
return element.isVisible();
|
|
1809
1787
|
}
|
|
1810
1788
|
async pickDateTime() {
|
|
@@ -1859,10 +1837,11 @@ class ShareDialogComponent extends BaseComponent {
|
|
|
1859
1837
|
urlAction = this.getChild('.adf-input-action');
|
|
1860
1838
|
expireToggle = this.getChild(`[data-automation-id='adf-expire-toggle']`);
|
|
1861
1839
|
expireInput = this.getChild('input[formcontrolname="time"]');
|
|
1862
|
-
datetimePickerButton = this.getChild('
|
|
1840
|
+
datetimePickerButton = this.getChild('[data-automation-id="adf-content-share-expiration-field"] button');
|
|
1841
|
+
dateErrorText = this.getChild('[data-automation-id="adf-share-link-input-warning"]');
|
|
1842
|
+
clockIcon = this.getChild('[adf-icon="timer"]');
|
|
1863
1843
|
dateTimePicker = new DateTimePicker(this.page);
|
|
1864
1844
|
getDialogLabel = () => this.getChild('label').innerText();
|
|
1865
|
-
getErrorByText = (text) => this.page.locator('mat-error', { hasText: text });
|
|
1866
1845
|
async getLabels() {
|
|
1867
1846
|
return this.page.$$eval('.adf-share-link__label', (elements) => elements.map((element) => element.textContent));
|
|
1868
1847
|
}
|
|
@@ -2084,18 +2063,18 @@ class AdfDeleteTrashComponent extends BaseComponent {
|
|
|
2084
2063
|
*/
|
|
2085
2064
|
class LinkRulesDialog extends BaseComponent {
|
|
2086
2065
|
static rootElement = 'aca-rule-set-picker';
|
|
2087
|
-
|
|
2088
|
-
super(page, LinkRulesDialog.rootElement);
|
|
2089
|
-
}
|
|
2066
|
+
getRowByName = (name) => this.getChild(`adf-datatable-row`, { hasText: name.toString() });
|
|
2090
2067
|
cancelButton = this.getChild('[data-automation-id="content-node-selector-actions-cancel"]');
|
|
2091
2068
|
selectFolderButton = this.getChild('button', { hasText: ' Select folder ' });
|
|
2092
2069
|
emptyLinkRules = this.getChild('.adf-empty-content__title');
|
|
2093
|
-
getOptionLocator = (optionName) => this.page.locator('
|
|
2094
|
-
getRowByName = (name) => this.getChild(`adf-datatable-row`, { hasText: name.toString() });
|
|
2070
|
+
getOptionLocator = (optionName) => this.page.locator('[role=listbox] [role=option]', { hasText: optionName }).first();
|
|
2095
2071
|
getDialogTitle = (text) => this.getChild('[data-automation-id="content-node-selector-title"]', { hasText: text });
|
|
2096
2072
|
getBreadcrumb = (text) => this.getChild('[data-automation-id="current-folder"]', { hasText: text });
|
|
2097
2073
|
getFolderIcon = this.getChild('.adf-dropdown-breadcrumb-icon', { hasText: 'folder' });
|
|
2098
2074
|
getLibraryIcon = this.getChild('.adf-empty-content__icon', { hasText: 'library_books' });
|
|
2075
|
+
constructor(page) {
|
|
2076
|
+
super(page, LinkRulesDialog.rootElement);
|
|
2077
|
+
}
|
|
2099
2078
|
async selectDestination(folderName) {
|
|
2100
2079
|
const row = this.getRowByName(folderName);
|
|
2101
2080
|
await expect(row).toBeVisible();
|
|
@@ -2138,14 +2117,14 @@ class LinkRulesDialog extends BaseComponent {
|
|
|
2138
2117
|
* from Hyland Software. If not, see <http://www.gnu.org/licenses/>.
|
|
2139
2118
|
*/
|
|
2140
2119
|
class EditDialog extends BaseComponent {
|
|
2141
|
-
static rootElement = '
|
|
2120
|
+
static rootElement = 'adf-folder-dialog';
|
|
2142
2121
|
editDialog = this.getChild('');
|
|
2143
2122
|
titleInput = this.getChild('[data-automation-id="adf-folder-dialog-title"]');
|
|
2144
2123
|
cancelButton = this.getChild('#adf-folder-cancel-button');
|
|
2145
2124
|
updateButton = this.getChild('#adf-folder-create-button');
|
|
2146
2125
|
descriptionInput = this.getChild('#adf-folder-description-input');
|
|
2147
2126
|
nameInput = this.getChild('#adf-folder-name-input');
|
|
2148
|
-
fieldHint = this.getChild('
|
|
2127
|
+
fieldHint = this.getChild('[aria-atomic="true"] span');
|
|
2149
2128
|
constructor(page) {
|
|
2150
2129
|
super(page, EditDialog.rootElement);
|
|
2151
2130
|
}
|
|
@@ -2307,8 +2286,8 @@ class ManageRulesDialogComponent extends BaseComponent {
|
|
|
2307
2286
|
class ManageRules extends BaseComponent {
|
|
2308
2287
|
static rootElement = '.aca-manage-rules';
|
|
2309
2288
|
getGroupsList = (optionName) => this.getChild('.aca-rule-list-item__header', { hasText: optionName });
|
|
2310
|
-
ruleToggle = this.getChild('.aca-manage-rules__container
|
|
2311
|
-
ruleToggleFalse = this.getChild('aca-rule-list-grouping aca-rule-list-item
|
|
2289
|
+
ruleToggle = this.getChild('.aca-manage-rules__container [role="switch"]').first();
|
|
2290
|
+
ruleToggleFalse = this.getChild('aca-rule-list-grouping aca-rule-list-item [role="switch"][aria-checked="false"]').first();
|
|
2312
2291
|
ruleDetailsTitle = this.getChild('.aca-manage-rules__container__rule-details__header__title__name');
|
|
2313
2292
|
ruleDetailsDeleteButton = this.getChild('#delete-rule-btn');
|
|
2314
2293
|
ruleDetailsEditButton = this.getChild('#edit-rule-btn');
|
|
@@ -2396,7 +2375,7 @@ class ManageRules extends BaseComponent {
|
|
|
2396
2375
|
* from Hyland Software. If not, see <http://www.gnu.org/licenses/>.
|
|
2397
2376
|
*/
|
|
2398
2377
|
class SpinnerComponent extends BaseComponent {
|
|
2399
|
-
static rootElement = '
|
|
2378
|
+
static rootElement = '[role="progressbar"]';
|
|
2400
2379
|
constructor(page, rootElement = SpinnerComponent.rootElement) {
|
|
2401
2380
|
super(page, rootElement);
|
|
2402
2381
|
}
|
|
@@ -2469,20 +2448,19 @@ var MimeType;
|
|
|
2469
2448
|
})(MimeType || (MimeType = {}));
|
|
2470
2449
|
class ActionsDropdownComponent extends BaseComponent {
|
|
2471
2450
|
static rootElement = 'aca-edit-rule-dialog aca-rule-action-list';
|
|
2472
|
-
getOptionLocator = (optionName) => this.page.locator('
|
|
2451
|
+
getOptionLocator = (optionName) => this.page.locator('[role=listbox] [role=option]', { hasText: optionName }).first();
|
|
2473
2452
|
ruleActionLocator = this.getChild('aca-rule-action');
|
|
2474
2453
|
addActionButtonLocator = this.getChild('[data-automation-id="rule-action-list-add-action-button"]');
|
|
2475
2454
|
actionDropdownLocator = this.getChild('[data-automation-id="rule-action-select"]');
|
|
2476
2455
|
actionAspectNameLocator = '[data-automation-id="header-aspect-name"] .adf-property-field';
|
|
2477
2456
|
actionCheckInInputLocator = '[data-automation-id="header-description"] input';
|
|
2478
|
-
actionAutoDeclareLocator = '[data-automation-id="header-version"] mat-select';
|
|
2479
|
-
actionSpecialiseTypeLocator = '[data-automation-id="header-type-name"] mat-select';
|
|
2480
2457
|
actionSimpleWorkflowStepInputLocator = '[data-automation-id="header-approve-step"] input';
|
|
2481
|
-
actionSimpleWorkflowApproveFolderLocator = `[data-automation-id="header-approve-folder"] mat-icon`;
|
|
2482
2458
|
actionSimpleWorkflowActionChoiceLocator = '[data-automation-id="content-node-selector-actions-choose"]';
|
|
2483
2459
|
actionSimpleWorkflowLabelApproveLocator = `[data-automation-id="card-boolean-label-approve-move"]`;
|
|
2484
2460
|
actionSimpleWorkflowSRejectStepLocator = '[data-automation-id="header-reject-step"] input';
|
|
2485
2461
|
actionSimpleWorkflowRejectFolderLocator = `[data-automation-id="header-reject-folder"] input`;
|
|
2462
|
+
actionSimpleWorkflowApproveFolderLocator = `[data-automation-id="header-approve-folder"] [role="img"]`;
|
|
2463
|
+
actionSpecialiseTypeLocator = '[data-automation-id="header-type-name"] [role="combobox"]';
|
|
2486
2464
|
mimeTypeDropdownLocator = this.getChild('[data-automation-id="select-box"][aria-label="Mimetype *"]');
|
|
2487
2465
|
actionTransformAndCopyContentDestinationFolderLocator = '[data-automation-id="card-textitem-value-destination-folder"]';
|
|
2488
2466
|
contentNodeSelectorSearchInput = '[data-automation-id="content-node-selector-search-input"]';
|
|
@@ -2508,9 +2486,6 @@ class ActionsDropdownComponent extends BaseComponent {
|
|
|
2508
2486
|
async insertAddAspectActionValues(AspectValue, index) {
|
|
2509
2487
|
await this.dropdownSelection(AspectValue, this.actionAspectNameLocator, index);
|
|
2510
2488
|
}
|
|
2511
|
-
async insertAutoDeclareOptionsActionValues(autoDeclareOptionsValue, index) {
|
|
2512
|
-
await this.dropdownSelection(autoDeclareOptionsValue, this.actionAutoDeclareLocator, index);
|
|
2513
|
-
}
|
|
2514
2489
|
async insertSpecialiseTypeActionValues(specialiseTypeValue, index) {
|
|
2515
2490
|
await this.dropdownSelection(specialiseTypeValue, this.actionSpecialiseTypeLocator, index);
|
|
2516
2491
|
}
|
|
@@ -2619,7 +2594,7 @@ var Comparator;
|
|
|
2619
2594
|
Comparator["EndsWith"] = "Ends with";
|
|
2620
2595
|
})(Comparator || (Comparator = {}));
|
|
2621
2596
|
class ConditionComponent extends ManageRulesDialogComponent {
|
|
2622
|
-
getOptionLocator = (optionName) => this.page.locator(
|
|
2597
|
+
getOptionLocator = (optionName) => this.page.locator('[role=listbox] [role=option]', { hasText: optionName }).first();
|
|
2623
2598
|
async selectField(fields, index) {
|
|
2624
2599
|
await this.fieldDropDown.nth(index).click();
|
|
2625
2600
|
const option = this.getOptionLocator(fields);
|
|
@@ -2681,7 +2656,7 @@ class AdfInfoDrawerComponent extends BaseComponent {
|
|
|
2681
2656
|
tagsCreator = this.getChild('adf-tags-creator');
|
|
2682
2657
|
getNameField = (labelText) => this.getChild(`[data-automation-id="library-name-properties-wrapper"] input[placeholder='${labelText}']`);
|
|
2683
2658
|
getIdField = (labelText) => this.getChild(`[data-automation-id="library-id-properties-wrapper"] input[placeholder='${labelText}']`);
|
|
2684
|
-
getVisibilityField = (labelText) => this.getChild(`[data-automation-id="library-visibility-properties-wrapper"]
|
|
2659
|
+
getVisibilityField = (labelText) => this.getChild(`[data-automation-id="library-visibility-properties-wrapper"] [role="combobox"][ng-reflect-placeholder='${labelText}']`);
|
|
2685
2660
|
getDescriptionField = this.getChild('[data-automation-id="library-description-properties-wrapper"] textarea');
|
|
2686
2661
|
propertiesTab = this.page.getByRole('tab', { name: 'Properties' });
|
|
2687
2662
|
commentsTab = this.page.getByRole('tab', { name: 'Comments' });
|
|
@@ -2698,10 +2673,11 @@ class AdfInfoDrawerComponent extends BaseComponent {
|
|
|
2698
2673
|
editButton = this.page.getByRole('button', { name: 'Edit' });
|
|
2699
2674
|
cancelButton = this.page.getByRole('button', { name: 'Cancel' });
|
|
2700
2675
|
updateButton = this.page.getByRole('button', { name: 'Update' });
|
|
2701
|
-
hintMessage = this.
|
|
2702
|
-
|
|
2676
|
+
hintMessage = this.getChild('[data-automation-id="app-library-metadata-form-name-hint"]');
|
|
2677
|
+
errorNameMessage = this.getChild('[data-automation-id="library-name-properties-wrapper"] [aria-atomic="true"]');
|
|
2678
|
+
errorDescriptionMessage = this.getChild('[data-automation-id="library-description-properties-wrapper"] [aria-atomic="true"]');
|
|
2703
2679
|
expandDetailsButton = this.getChild(`button[title='Expand panel']`);
|
|
2704
|
-
expandedDetailsTabs = this.page.locator('.aca-details-container
|
|
2680
|
+
expandedDetailsTabs = this.page.locator('.aca-details-container [role="tab"]');
|
|
2705
2681
|
expandedDetailsPermissionsTab = this.expandedDetailsTabs.getByText('Permissions');
|
|
2706
2682
|
nameField = this.page.locator('input[placeholder=Name]');
|
|
2707
2683
|
idField = this.page.locator(`input[placeholder='Library ID']`);
|
|
@@ -2714,7 +2690,7 @@ class AdfInfoDrawerComponent extends BaseComponent {
|
|
|
2714
2690
|
categoriesAccordionPenButton = this.categoriesAccordion.locator('[data-automation-id="meta-data-categories-edit"]');
|
|
2715
2691
|
tagsInput = this.tagsCreator.locator('input');
|
|
2716
2692
|
createTagButton = this.tagsCreator.locator('.adf-create-tag-label');
|
|
2717
|
-
tagsChips = this.tagsCreator.locator('
|
|
2693
|
+
tagsChips = this.tagsCreator.locator('[role="listitem"]');
|
|
2718
2694
|
tagsChipsXButton = this.tagsChips.locator('.adf-dynamic-chip-list-delete-icon');
|
|
2719
2695
|
tagsAccordionCancelButton = this.getChild('[data-automation-id="reset-tags-metadata"]');
|
|
2720
2696
|
tagsAccordionConfirmButton = this.getChild('[data-automation-id="save-tags-metadata"]');
|
|
@@ -3051,16 +3027,13 @@ class SearchOverlayComponent extends BaseComponent {
|
|
|
3051
3027
|
super(page, rootElement);
|
|
3052
3028
|
}
|
|
3053
3029
|
async isFoldersOptionChecked() {
|
|
3054
|
-
|
|
3055
|
-
return optClass.includes('.mat-mdc-checkbox-checked');
|
|
3030
|
+
return this.searchFoldersOption.isChecked();
|
|
3056
3031
|
}
|
|
3057
3032
|
async isFilesOptionChecked() {
|
|
3058
|
-
|
|
3059
|
-
return optClass.includes('.mat-mdc-checkbox-checked');
|
|
3033
|
+
return this.searchFilesOption.isChecked();
|
|
3060
3034
|
}
|
|
3061
3035
|
async isLibrariesOptionChecked() {
|
|
3062
|
-
|
|
3063
|
-
return optClass.includes('.mat-mdc-checkbox-checked');
|
|
3036
|
+
return this.searchLibrariesOption.isChecked();
|
|
3064
3037
|
}
|
|
3065
3038
|
async clearOptions() {
|
|
3066
3039
|
if (await this.isFilesOptionChecked()) {
|
|
@@ -3124,8 +3097,8 @@ class SearchSortingPicker extends BaseComponent {
|
|
|
3124
3097
|
static rootElement = '#aca-button-action-menu';
|
|
3125
3098
|
actionMenu = this.page.locator('[data-automation-id="auto_header_content_id_$thumbnail"]');
|
|
3126
3099
|
sortOrderButton = this.page.locator('#aca-button-sorting-menu');
|
|
3127
|
-
sortByDropdownExpanded = this.page.locator('
|
|
3128
|
-
sortByList = this.page.locator('
|
|
3100
|
+
sortByDropdownExpanded = this.page.locator('[role="menu"]').first();
|
|
3101
|
+
sortByList = this.page.locator('[role="menu"] button');
|
|
3129
3102
|
constructor(page, rootElement = SearchSortingPicker.rootElement) {
|
|
3130
3103
|
super(page, rootElement);
|
|
3131
3104
|
}
|
|
@@ -3207,7 +3180,7 @@ class SearchFilters extends BaseComponent {
|
|
|
3207
3180
|
menuCardClose = this.page.locator('.adf-search-filter-title-action');
|
|
3208
3181
|
menuCardClear = this.page.locator('#cancel-filter-button');
|
|
3209
3182
|
menuCardApply = this.page.locator('#apply-filter-button');
|
|
3210
|
-
dropdownOptions = this.page.locator(`
|
|
3183
|
+
dropdownOptions = this.page.locator(`[role="option"]`);
|
|
3211
3184
|
}
|
|
3212
3185
|
|
|
3213
3186
|
/*!
|
|
@@ -3461,13 +3434,13 @@ class SearchFiltersProperties extends BaseComponent {
|
|
|
3461
3434
|
fileSizeInput = this.getChild(`[placeholder$='Enter file size']`);
|
|
3462
3435
|
unitButton = this.getChild(`[data-automation-id='adf-search-properties-file-size-unit']`);
|
|
3463
3436
|
fileTypeInput = this.getChild(`[placeholder$='File Type']`);
|
|
3464
|
-
atLeastOption = this.page.locator(`
|
|
3465
|
-
atMostOption = this.page.locator(`
|
|
3466
|
-
exactlyOption = this.page.locator(`
|
|
3467
|
-
kbUnit = this.page.locator(`
|
|
3468
|
-
mbUnit = this.page.locator(`
|
|
3469
|
-
gbUnit = this.page.locator(`
|
|
3470
|
-
dropdownOptions = this.page.locator(`
|
|
3437
|
+
atLeastOption = this.page.locator(`[role="option"]`, { hasText: 'At Least' });
|
|
3438
|
+
atMostOption = this.page.locator(`[role="option"]`, { hasText: 'At Most' });
|
|
3439
|
+
exactlyOption = this.page.locator(`[role="option"]`, { hasText: 'Exactly' });
|
|
3440
|
+
kbUnit = this.page.locator(`[role="option"]`, { hasText: 'KB' });
|
|
3441
|
+
mbUnit = this.page.locator(`[role="option"]`, { hasText: 'MB' });
|
|
3442
|
+
gbUnit = this.page.locator(`[role="option"]`, { hasText: 'GB' });
|
|
3443
|
+
dropdownOptions = this.page.locator(`[role="option"]`);
|
|
3471
3444
|
async setPropertiesParameters(page, operator, unit, fileSizeInputText, fileTypeInputText) {
|
|
3472
3445
|
await page.searchFilters.propertiesFilter.click();
|
|
3473
3446
|
if (operator) {
|