@alfresco/aca-playwright-shared 7.3.0-22350700167 → 7.3.0-22399383432

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.
@@ -655,7 +655,6 @@ class PlaywrightBase {
655
655
  */
656
656
  class BaseComponent extends PlaywrightBase {
657
657
  rootElement;
658
- overlayElement = this.page.locator('.cdk-overlay-backdrop-showing');
659
658
  progressBar = this.page.locator('[role="progressbar"]');
660
659
  constructor(page, rootElement) {
661
660
  super(page);
@@ -672,12 +671,6 @@ class BaseComponent extends PlaywrightBase {
672
671
  getChild(cssLocator, options) {
673
672
  return this.page.locator(`${this.rootElement} ${cssLocator}`, options);
674
673
  }
675
- async closeAdditionalOverlayElementIfVisible() {
676
- if (await this.overlayElement.isVisible()) {
677
- await this.page.keyboard.press('Escape');
678
- await this.overlayElement.waitFor({ state: 'detached', timeout: timeouts.medium });
679
- }
680
- }
681
674
  async spinnerWaitForReload() {
682
675
  try {
683
676
  await this.page.locator('[role="progressbar"]').waitFor({ state: 'attached', timeout: timeouts.medium });
@@ -777,8 +770,6 @@ class MatMenuComponent extends BaseComponent {
777
770
  constructor(page) {
778
771
  super(page, MatMenuComponent.rootElement);
779
772
  }
780
- getMenuItemsLocator = this.getChild('button');
781
- getMenuItemTextLocator = this.getChild('[data-automation-id="menu-item-title"]');
782
773
  createFolder = this.getChild('[id="app.create.folder"]');
783
774
  createFolderFromTemplate = this.getChild('[id="app.create.folderFromTemplate"]');
784
775
  createFileFromTemplate = this.getChild('[id="app.create.fileFromTemplate"]');
@@ -854,29 +845,9 @@ class PaginationComponent extends BaseComponent {
854
845
  previousButton = this.getChild('.adf-pagination__previous-button');
855
846
  nextButton = this.getChild('.adf-pagination__next-button');
856
847
  maxItemsButton = this.getChild('.adf-pagination__max-items + button[mat-icon-button]');
857
- itemsPerPageMenu = new MatMenuComponent(this.page);
858
848
  currentPageLocator = this.getChild('.adf-pagination__current-page');
859
849
  totalPageLocator = this.getChild('.adf-pagination__total-pages');
860
850
  getArrowLocatorFor = (action) => this.getChild(`[aria-label="${action}"]`);
861
- async setItemsPerPage(amount) {
862
- await this.getArrowLocatorFor(PaginationActionsType.PageSizeSelector).click();
863
- await this.itemsPerPageMenu.getButtonByText(amount.toString()).click();
864
- await this.spinnerWaitForReload();
865
- }
866
- async navigateToPage(pageNumber) {
867
- await this.getArrowLocatorFor(PaginationActionsType.CurrentPageSelector).click();
868
- await this.itemsPerPageMenu.getButtonByText(pageNumber.toString()).click();
869
- await this.spinnerWaitForReload();
870
- }
871
- async spinnerWaitForReload() {
872
- try {
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
- }
876
- catch (e) {
877
- this.logger.info('Spinner was not present');
878
- }
879
- }
880
851
  async getRange() {
881
852
  return this.range.innerText();
882
853
  }
@@ -1013,10 +984,7 @@ class DataTableComponent extends BaseComponent {
1013
984
  super(page, rootElement);
1014
985
  }
1015
986
  pagination = new PaginationComponent(this.page);
1016
- body = this.getChild('.adf-datatable-body');
1017
987
  getEmptyFolderLocator = this.getChild('.adf-empty-folder');
1018
- getEmptyContentTitleLocator = this.getChild('adf-empty-content .adf-empty-content__title');
1019
- getEmptyContentSubTitleLocator = this.getChild('adf-empty-content .adf-empty-content__subtitle');
1020
988
  getSelectedRow = this.getChild('.adf-datatable-row.adf-is-selected');
1021
989
  sortedColumnHeader = this.getChild(`.adf-datatable__header--sorted-asc .adf-datatable-cell-header-content .adf-datatable-cell-value,
1022
990
  .adf-datatable__header--sorted-desc .adf-datatable-cell-header-content .adf-datatable-cell-value`);
@@ -1044,13 +1012,6 @@ class DataTableComponent extends BaseComponent {
1044
1012
  * @returns reference to cell element which contains text.
1045
1013
  */
1046
1014
  getRowByName = (name) => this.getChild(`adf-datatable-row`, { hasText: name.toString() });
1047
- /**
1048
- * Method used in cases where we want to check that some record is visible in the datatable.
1049
- * But we want to check it by column header title and value of this column.
1050
- *
1051
- * @returns reference to cell element which contains text.
1052
- */
1053
- getRowByColumnTitleAndItsCellValue = (columnTitle, cellValue) => this.page.locator(`//div[contains(@title, '${columnTitle}')]//span[contains(text(), '${cellValue}')]/ancestor::adf-datatable-row`);
1054
1015
  /**
1055
1016
  * Method used in cases where we want to retrieve a row from the datatable based on its numerical order within the array.
1056
1017
  *
@@ -1064,24 +1025,6 @@ class DataTableComponent extends BaseComponent {
1064
1025
  * @returns reference to cell element which contains link.
1065
1026
  */
1066
1027
  getCellLinkByName = (name) => this.getChild('.adf-cell-value span[role="link"]', { hasText: name });
1067
- /**
1068
- * Method used in cases where we want to localize the element by [aria-label]
1069
- *
1070
- * @returns reference to cell element.
1071
- */
1072
- getByAriaLabelTitle = (title) => this.getChild(`[aria-label="${title}"]`);
1073
- /**
1074
- * Method used in cases where we want to get the edit button and there is no hamburger menu
1075
- *
1076
- * @returns reference to edit button placed in row localized by the name
1077
- */
1078
- getEditButtonByName = (name) => this.getRowByName(name).locator('button#editButton');
1079
- /**
1080
- * Method used in cases where we want to get the button and there is no hamburger menu
1081
- *
1082
- * @returns reference to button placed in row localized by the name
1083
- */
1084
- getButtonByNameForSpecificRow = (elementTitleInRow, buttonTitle) => this.getRowByName(elementTitleInRow).locator('button', { hasText: buttonTitle });
1085
1028
  /**
1086
1029
  * Method used in cases where you want to get some specific cell (by column name) for row which contains some name/title/etc.
1087
1030
  *
@@ -1094,8 +1037,6 @@ class DataTableComponent extends BaseComponent {
1094
1037
  * @returns reference to checkbox placed in row localized by the name
1095
1038
  */
1096
1039
  getCheckboxForElement = (item) => this.getRowByName(item).locator('[type="checkbox"]');
1097
- getColumnHeaderByTitleLocator = (headerTitle) => this.getChild('[role="columnheader"]', { hasText: headerTitle });
1098
- getSearchResultLinkByName = (name) => this.getChild('.aca-search-results-row span[role="link"]', { hasText: name });
1099
1040
  getColumnValuesByName = (name) => this.getChild(`div[title="${name}"] span`);
1100
1041
  getColumnHeaderByName = (headerTitle) => this.getChild('.adf-datatable-row .adf-datatable-cell-header .adf-datatable-cell-value', { hasText: headerTitle });
1101
1042
  async sortBy(label, order) {
@@ -1139,10 +1080,6 @@ class DataTableComponent extends BaseComponent {
1139
1080
  await this.getRowByName(name).click({ button: 'right' });
1140
1081
  return this.contextMenuActions.getButtonByText(action);
1141
1082
  }
1142
- async performActionInExpandableMenu(name, action) {
1143
- await this.getRowByName(name).click({ button: 'right' });
1144
- await this.contextMenuActions.getButtonByText(action).click();
1145
- }
1146
1083
  async goThroughPagesLookingForRowWithName(name) {
1147
1084
  await this.spinnerWaitForReload();
1148
1085
  if (await this.getRowByName(name).isVisible()) {
@@ -1275,10 +1212,6 @@ class DataTableComponent extends BaseComponent {
1275
1212
  }
1276
1213
  return sitesInfo;
1277
1214
  }
1278
- async hasLockIcon(itemName) {
1279
- const row = this.getRowByName(itemName);
1280
- return row.locator('img[src*="lock"]').isVisible();
1281
- }
1282
1215
  async getLockOwner(itemName) {
1283
1216
  const row = this.getRowByName(itemName);
1284
1217
  return row.locator(this.lockOwner).innerText();
@@ -1482,9 +1415,6 @@ class PasswordOverlayDialogComponent extends BaseComponent {
1482
1415
  async isCloseVisible() {
1483
1416
  return this.closeButton.isVisible();
1484
1417
  }
1485
- async isSubmitHidden() {
1486
- return this.submitButton.isHidden();
1487
- }
1488
1418
  async isPasswordInputDisplayed() {
1489
1419
  return this.passwordInput.isVisible();
1490
1420
  }
@@ -1528,10 +1458,6 @@ class PasswordOverlayDialogComponent extends BaseComponent {
1528
1458
  */
1529
1459
  class ViewerOverlayDialogComponent extends BaseComponent {
1530
1460
  static rootElement = '.cdk-overlay-pane';
1531
- closeButton = this.getChild('[data-automation-id="adf-password-dialog-close"]');
1532
- submitButton = this.getChild('[data-automation-id="adf-password-dialog-submit"]');
1533
- passwordInput = this.getChild('[data-automation-id="adf-password-dialog-input"]');
1534
- errorMessage = this.getChild('[data-automation-id="adf-password-dialog-error"]');
1535
1461
  copyDialog = this.getChild('[data-automation-id="content-node-selector-title"]');
1536
1462
  copyMenuButton = this.getChild('[id="app.viewer.copy"]');
1537
1463
  deleteMenuButton = this.getChild('[id="app.viewer.delete"]');
@@ -1787,7 +1713,6 @@ class ShareDialogComponent extends BaseComponent {
1787
1713
  closeButton = this.getChild('[data-automation-id="adf-share-dialog-close"]');
1788
1714
  dialogTitle = this.getChild('[data-automation-id="adf-share-dialog-title"]');
1789
1715
  infoText = this.getChild('.adf-share-link__info').first();
1790
- labels = '.adf-share-link__label';
1791
1716
  shareToggle = this.getChild(`[data-automation-id='adf-share-toggle']`);
1792
1717
  url = this.getChild(`[data-automation-id='adf-share-link']`);
1793
1718
  urlAction = this.getChild('.adf-input-action');
@@ -1797,7 +1722,6 @@ class ShareDialogComponent extends BaseComponent {
1797
1722
  dateErrorText = this.getChild('[data-automation-id="adf-share-link-input-warning"]');
1798
1723
  clockIcon = this.getChild('[adf-icon="timer"]');
1799
1724
  dateTimePicker = new DateTimePicker(this.page);
1800
- getDialogLabel = () => this.getChild('label').innerText();
1801
1725
  async getLabels() {
1802
1726
  return this.page.$$eval('.adf-share-link__label', (elements) => elements.map((element) => element.textContent));
1803
1727
  }
@@ -1866,7 +1790,6 @@ class UploadNewVersionDialog extends BaseComponent {
1866
1790
  cancelButton = this.getChild('#adf-new-version-cancel');
1867
1791
  uploadButton = this.getChild('[data-automation-id="adf-new-version-file-upload"]');
1868
1792
  majorOption = this.getChild('#adf-new-version-major');
1869
- minorOption = this.getChild('#adf-new-version-minor');
1870
1793
  description = this.getChild('#adf-new-version-text-area');
1871
1794
  title = this.getChild(' [data-automation-id="new-version-uploader-dialog-title"]');
1872
1795
  constructor(page) {
@@ -2020,12 +1943,8 @@ class AdfDeleteTrashComponent extends BaseComponent {
2020
1943
  class LinkRulesDialog extends BaseComponent {
2021
1944
  static rootElement = 'aca-rule-set-picker';
2022
1945
  getRowByName = (name) => this.getChild(`adf-datatable-row`, { hasText: name.toString() });
2023
- cancelButton = this.getChild('[data-automation-id="content-node-selector-actions-cancel"]');
2024
1946
  selectFolderButton = this.getChild('button', { hasText: ' Select folder ' });
2025
- emptyLinkRules = this.getChild('.adf-empty-content__title');
2026
1947
  getOptionLocator = (optionName) => this.page.locator('[role=listbox] [role=option]', { hasText: optionName }).first();
2027
- getDialogTitle = (text) => this.getChild('[data-automation-id="content-node-selector-title"]', { hasText: text });
2028
- getBreadcrumb = (text) => this.getChild('[data-automation-id="current-folder"]', { hasText: text });
2029
1948
  getFolderIcon = this.getChild('.adf-dropdown-breadcrumb-icon', { hasText: 'folder' });
2030
1949
  getLibraryIcon = this.getChild('.adf-empty-content__icon', { hasText: 'library_books' });
2031
1950
  constructor(page) {
@@ -2189,10 +2108,8 @@ class ManageRulesDialogComponent extends BaseComponent {
2189
2108
  comparatorDropDown = this.getChild('[data-automation-id="comparator-select"]');
2190
2109
  valueField = this.getChild('[data-automation-id="value-input"]');
2191
2110
  whenCreatedCheckbox = this.getChild('[data-automation-id="rule-trigger-checkbox-inbound"]');
2192
- whenUpdatedCheckbox = this.getChild('[data-automation-id="rule-trigger-checkbox-update"]');
2193
2111
  whenDeletedCheckbox = this.getChild('[data-automation-id="rule-trigger-checkbox-outbound"]');
2194
2112
  destinationFolderButton = this.getChild('[data-automation-id="card-textitem-clickable-icon-destination-folder"]');
2195
- ruleInBackgroundCheckbox = this.getChild('[data-automation-id="rule-option-checkbox-asynchronous"]');
2196
2113
  ruleSubfoldersCheckbox = this.getChild('[data-automation-id="rule-option-checkbox-inheritable"]');
2197
2114
  ruleDisableCheckbox = this.getChild('[data-automation-id="rule-option-checkbox-disabled"] input');
2198
2115
  actionsEllipsisButtons = this.getChild('[data-automation-id="rule-action-list-action-menu"]');
@@ -2244,10 +2161,8 @@ class ManageRules extends BaseComponent {
2244
2161
  getGroupsList = (optionName) => this.getChild('.aca-rule-list-item__header', { hasText: optionName });
2245
2162
  ruleToggle = this.getChild('.aca-manage-rules__container [role="switch"]').first();
2246
2163
  ruleToggleFalse = this.getChild('aca-rule-list-grouping aca-rule-list-item [role="switch"][aria-checked="false"]').first();
2247
- ruleDetailsTitle = this.getChild('.aca-manage-rules__container__rule-details__header__title__name');
2248
2164
  ruleDetailsDeleteButton = this.getChild('#delete-rule-btn');
2249
2165
  ruleDetailsEditButton = this.getChild('#edit-rule-btn');
2250
- ruleDetailsWhenText = this.getChild('[data-automation-id="rule-details-triggers-component"]');
2251
2166
  ruleDetailsPerformActionsDiv = this.getChild('adf-card-view-selectitem [data-automation-id="select-box"]');
2252
2167
  rulesEmptyListTitle = this.getChild('.adf-empty-content__title');
2253
2168
  ruleActions = this.getChild('aca-rule-action');
@@ -2772,7 +2687,6 @@ class AcaHeader extends BaseComponent {
2772
2687
  sharedDownloadButton = this.getChild('button[id="app.viewer.shared.download"]');
2773
2688
  uploadButton = this.getChild('button[id="app.toolbar.upload"]');
2774
2689
  uploadFileButton = this.page.locator('button[id="app.create.uploadFile"]');
2775
- uploadInput = this.page.locator('input[id="app-upload-files"]');
2776
2690
  uploadNewVersionButton = this.page.locator('#app-upload-file-version');
2777
2691
  permanentlyDeleteButton = this.getChild('button[id="app.toolbar.purgeDeletedNodes"]');
2778
2692
  restoreButton = this.getChild('button[id="app.toolbar.restoreDeletedNodes"]');
@@ -2839,7 +2753,6 @@ class ViewerComponent extends BaseComponent {
2839
2753
  pdfViewerContentPages = this.getChild('.adf-pdf-viewer__content .page');
2840
2754
  shareButton = this.getChild('button[id="share-action-button"]');
2841
2755
  downloadButton = this.getChild('button[id="app.viewer.download"]');
2842
- allButtons = this.getChild('button');
2843
2756
  unknownFormat = this.getChild(`adf-viewer-unknown-format .adf-viewer__unknown-format-view`);
2844
2757
  viewerImage = this.viewerLocator.locator('.cropper-canvas img');
2845
2758
  viewerDocument = this.viewerLocator.locator('.adf-pdf-viewer__content [role="document"]');
@@ -3001,17 +2914,10 @@ class SearchFiltersDate extends BaseComponent {
3001
2914
  }
3002
2915
  createdTab = this.getChild(`[role='tab']`, { hasText: 'Created' });
3003
2916
  modifiedTab = this.getChild(`[role='tab']`, { hasText: 'Modified' });
3004
- createdTabTitle = this.createdTab.locator(`div`);
3005
- modifiedTabTitle = this.modifiedTab.locator(`div`);
3006
2917
  anytimeButton = this.getChild(`[data-automation-id$='date-range-anytime']`);
3007
2918
  anytimeRadioButton = this.anytimeButton.locator(`input`);
3008
- inTheLastButton = this.getChild(`[data-automation-id$='date-range-in-last']`);
3009
- inTheLastInput = this.getChild(`[data-automation-id$='date-range-in-last-input']`);
3010
- inTheLastDropdown = this.getChild(`[data-automation-id$='date-range-in-last-dropdown']`);
3011
2919
  betweenButton = this.getChild(`[data-automation-id$='date-range-between']`);
3012
2920
  betweenRadioButton = this.betweenButton.locator(`input`);
3013
- betweenStartDate = this.getChild(`[data-automation-id$='date-range-between-start-input']`);
3014
- betweenEndDate = this.getChild(`[data-automation-id$='date-range-between-end-input']`);
3015
2921
  async openCreatedModifiedTab(page, tab) {
3016
2922
  switch (tab) {
3017
2923
  case 'Created':
@@ -3288,7 +3194,6 @@ class SearchFilters extends BaseComponent {
3288
3194
  constructor(page) {
3289
3195
  super(page, SearchFilters.rootElement);
3290
3196
  }
3291
- filtersButtons = this.getChild('adf-search-widget-chip');
3292
3197
  logicFilter = this.getChild('adf-search-widget-chip', { hasText: 'Logic' });
3293
3198
  propertiesFilter = this.getChild('adf-search-widget-chip', { hasText: 'Properties' });
3294
3199
  dateFilter = this.getChild('adf-search-widget-chip', { hasText: 'Date' });
@@ -3296,10 +3201,6 @@ class SearchFilters extends BaseComponent {
3296
3201
  tagsFilter = this.getChild('adf-search-widget-chip', { hasText: 'Tags' });
3297
3202
  categoriesFilter = this.getChild('adf-search-widget-chip', { hasText: 'Categories' });
3298
3203
  resetButton = this.getChild('button', { hasText: 'Reset' });
3299
- menuCardTitle = this.getChild('.adf-search-filter-title');
3300
- menuCardClose = this.getChild('.adf-search-filter-title-action');
3301
- menuCardClear = this.getChild('#cancel-filter-button');
3302
- menuCardApply = this.getChild('#apply-filter-button');
3303
3204
  dropdownOptions = this.page.locator(`[role="option"]`);
3304
3205
  }
3305
3206
 
@@ -3328,7 +3229,6 @@ class SearchFilters extends BaseComponent {
3328
3229
  */
3329
3230
  class SearchInputComponent extends BaseComponent {
3330
3231
  static rootElement = 'aca-page-layout';
3331
- searchInput = this.page.locator('#app-control-input');
3332
3232
  searchButton = this.page.locator('.aca-search-input--search-button');
3333
3233
  searchCloseButton = this.page.locator('.aca-search-input--close-button');
3334
3234
  /**
@@ -3373,12 +3273,10 @@ class SearchInputComponent extends BaseComponent {
3373
3273
  */
3374
3274
  class SearchMenuCard extends BaseComponent {
3375
3275
  static rootElement = '.adf-search-filter-menu-card';
3376
- resetButton = this.getChild('button', { hasText: 'Reset' });
3377
3276
  menuCardTitle = this.getChild('.adf-search-filter-title');
3378
3277
  menuCardClose = this.getChild('.adf-search-filter-title-action');
3379
3278
  menuCardClear = this.getChild('#cancel-filter-button');
3380
3279
  menuCardApply = this.getChild('#apply-filter-button');
3381
- dropdownOptions = this.page.locator(`[role="option"]`);
3382
3280
  constructor(page) {
3383
3281
  super(page, SearchMenuCard.rootElement);
3384
3282
  }