@alfresco/aca-playwright-shared 7.3.0-22228387639 → 7.3.0-22343874694

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.
@@ -2249,7 +2249,7 @@ class ManageRules extends BaseComponent {
2249
2249
  ruleDetailsEditButton = this.getChild('#edit-rule-btn');
2250
2250
  ruleDetailsWhenText = this.getChild('[data-automation-id="rule-details-triggers-component"]');
2251
2251
  ruleDetailsPerformActionsDiv = this.getChild('adf-card-view-selectitem [data-automation-id="select-box"]');
2252
- rulesEmptyListTitle = this.getChild('.adf-empty-content__title');
2252
+ rulesEmptyList = this.getChild('adf-empty-content');
2253
2253
  ruleActions = this.getChild('aca-rule-action');
2254
2254
  ruleConditionsInGroup = this.getChild('aca-rule-composite-condition aca-rule-simple-condition');
2255
2255
  ruleDescription = this.getChild('.aca-manage-rules__container__rule-details__header__title__description');
@@ -2263,7 +2263,7 @@ class ManageRules extends BaseComponent {
2263
2263
  }
2264
2264
  }
2265
2265
  async checkIfRuleListEmpty() {
2266
- return this.rulesEmptyListTitle.isVisible();
2266
+ return this.rulesEmptyList.isVisible();
2267
2267
  }
2268
2268
  async checkIfRuleIsOnTheList(ruleName) {
2269
2269
  await expect(this.getGroupsList(ruleName)).toBeVisible({ timeout: 5000 });
@@ -3327,10 +3327,11 @@ class SearchFilters extends BaseComponent {
3327
3327
  * from Hyland Software. If not, see <http://www.gnu.org/licenses/>.
3328
3328
  */
3329
3329
  class SearchInputComponent extends BaseComponent {
3330
- static rootElement = 'aca-page-layout';
3331
- searchInput = this.page.locator('#app-control-input');
3332
- searchButton = this.page.locator('.aca-search-input--search-button');
3333
- searchCloseButton = this.page.locator('.aca-search-input--close-button');
3330
+ static rootElement = '.aca-content-header';
3331
+ searchInput = this.getChild('aca-search-input input');
3332
+ searchButton = this.getChild('button[title="Search"]');
3333
+ searchCloseButton = this.getChild('.aca-search-input--close-button');
3334
+ searchInButton = this.getChild('aca-search-in-menu button');
3334
3335
  /**
3335
3336
  * Method used in cases where user have possibility to navigate "inside" the element (it's clickable and has link attribute).
3336
3337
  * Perform action .click() to navigate inside it
@@ -3341,10 +3342,9 @@ class SearchInputComponent extends BaseComponent {
3341
3342
  constructor(page, rootElement = SearchInputComponent.rootElement) {
3342
3343
  super(page, rootElement);
3343
3344
  }
3344
- async performDoubleClickFolderOrFileToOpen(name) {
3345
- await this.getCellLinkByName(name).waitFor({ state: 'visible', timeout: timeouts.medium });
3346
- await this.getCellLinkByName(name).dblclick();
3347
- await this.spinnerWaitForReload();
3345
+ async searchFor(searchText) {
3346
+ await this.searchInput.fill(searchText);
3347
+ await this.searchButton.click();
3348
3348
  }
3349
3349
  }
3350
3350
 
@@ -3384,85 +3384,6 @@ class SearchMenuCard extends BaseComponent {
3384
3384
  }
3385
3385
  }
3386
3386
 
3387
- /*!
3388
- * Copyright © 2005-2025 Hyland Software, Inc. and its affiliates. All rights reserved.
3389
- *
3390
- * Alfresco Example Content Application
3391
- *
3392
- * This file is part of the Alfresco Example Content Application.
3393
- * If the software was purchased under a paid Alfresco license, the terms of
3394
- * the paid license agreement will prevail. Otherwise, the software is
3395
- * provided under the following open source license terms:
3396
- *
3397
- * The Alfresco Example Content Application is free software: you can redistribute it and/or modify
3398
- * it under the terms of the GNU Lesser General Public License as published by
3399
- * the Free Software Foundation, either version 3 of the License, or
3400
- * (at your option) any later version.
3401
- *
3402
- * The Alfresco Example Content Application is distributed in the hope that it will be useful,
3403
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
3404
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
3405
- * GNU Lesser General Public License for more details.
3406
- *
3407
- * You should have received a copy of the GNU Lesser General Public License
3408
- * from Hyland Software. If not, see <http://www.gnu.org/licenses/>.
3409
- */
3410
- class SearchOverlayComponent extends BaseComponent {
3411
- static rootElement = '.cdk-overlay-pane';
3412
- searchFilesOption = this.getChild('input#content-input');
3413
- searchFoldersOption = this.getChild('input#folder-input');
3414
- searchLibrariesOption = this.getChild('input#libraries-input');
3415
- searchInput = this.page.locator('#app-control-input');
3416
- searchButton = this.page.locator('app-search-input-control button[title="Search"]');
3417
- searchInputControl = this.page.locator('.app-search-control');
3418
- searchOptions = this.page.locator('.app-search-options');
3419
- constructor(page, rootElement = SearchOverlayComponent.rootElement) {
3420
- super(page, rootElement);
3421
- }
3422
- async isFoldersOptionChecked() {
3423
- return this.searchFoldersOption.isChecked();
3424
- }
3425
- async isFilesOptionChecked() {
3426
- return this.searchFilesOption.isChecked();
3427
- }
3428
- async isLibrariesOptionChecked() {
3429
- return this.searchLibrariesOption.isChecked();
3430
- }
3431
- async clearOptions() {
3432
- if (await this.isFilesOptionChecked()) {
3433
- await this.searchFilesOption.click();
3434
- }
3435
- if (await this.isFoldersOptionChecked()) {
3436
- await this.searchFoldersOption.click();
3437
- }
3438
- if (await this.isLibrariesOptionChecked()) {
3439
- await this.searchLibrariesOption.click();
3440
- }
3441
- }
3442
- async checkOnlyFolders() {
3443
- await this.clearOptions();
3444
- await this.searchFoldersOption.click();
3445
- }
3446
- async checkOnlyFiles() {
3447
- await this.clearOptions();
3448
- await this.searchFilesOption.click();
3449
- }
3450
- async checkLibraries() {
3451
- await this.clearOptions();
3452
- await this.searchLibrariesOption.click();
3453
- }
3454
- async checkFilesAndFolders() {
3455
- await this.clearOptions();
3456
- await this.searchFilesOption.click();
3457
- await this.searchFoldersOption.click();
3458
- }
3459
- async searchFor(input) {
3460
- await this.searchInput.clear();
3461
- await this.searchInput.fill(input);
3462
- await this.searchButton.click({ force: true });
3463
- }
3464
- }
3465
-
3466
3387
  /*!
3467
3388
  * Copyright © 2005-2025 Hyland Software, Inc. and its affiliates. All rights reserved.
3468
3389
  *
@@ -4138,6 +4059,82 @@ class SharedPage extends BasePage {
4138
4059
  manageVersionsDialog = new ManageVersionsDialog(this.page);
4139
4060
  }
4140
4061
 
4062
+ /*!
4063
+ * Copyright © 2005-2025 Hyland Software, Inc. and its affiliates. All rights reserved.
4064
+ *
4065
+ * Alfresco Example Content Application
4066
+ *
4067
+ * This file is part of the Alfresco Example Content Application.
4068
+ * If the software was purchased under a paid Alfresco license, the terms of
4069
+ * the paid license agreement will prevail. Otherwise, the software is
4070
+ * provided under the following open source license terms:
4071
+ *
4072
+ * The Alfresco Example Content Application is free software: you can redistribute it and/or modify
4073
+ * it under the terms of the GNU Lesser General Public License as published by
4074
+ * the Free Software Foundation, either version 3 of the License, or
4075
+ * (at your option) any later version.
4076
+ *
4077
+ * The Alfresco Example Content Application is distributed in the hope that it will be useful,
4078
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
4079
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
4080
+ * GNU Lesser General Public License for more details.
4081
+ *
4082
+ * You should have received a copy of the GNU Lesser General Public License
4083
+ * from Hyland Software. If not, see <http://www.gnu.org/licenses/>.
4084
+ */
4085
+ class SearchInDialogComponent extends BaseComponent {
4086
+ static rootElement = '.aca-search-in-panel';
4087
+ filesAndFoldersRadioButton = this.getChild('.aca-search-in-panel__radio label').getByText('Files and folders');
4088
+ librariesRadioButton = this.getChild('.aca-search-in-panel__radio label').getByText('Libraries');
4089
+ filesCheckbox = this.getChild('.aca-search-in-panel__checkboxes').getByLabel('Files');
4090
+ foldersCheckbox = this.getChild('.aca-search-in-panel__checkboxes').getByLabel('Folders');
4091
+ applyButton = this.getChild('button', { hasText: 'Apply' });
4092
+ resetButton = this.getChild('button', { hasText: 'Reset' });
4093
+ constructor(page, rootElement = SearchInDialogComponent.rootElement) {
4094
+ super(page, rootElement);
4095
+ }
4096
+ async isFoldersOptionChecked() {
4097
+ return this.foldersCheckbox.isChecked();
4098
+ }
4099
+ async isFilesOptionChecked() {
4100
+ return this.filesCheckbox.isChecked();
4101
+ }
4102
+ async resetOptions() {
4103
+ await this.resetButton.click();
4104
+ }
4105
+ async checkOnlyFolders() {
4106
+ await this.resetOptions();
4107
+ if (await this.isFilesOptionChecked()) {
4108
+ await this.filesCheckbox.click();
4109
+ }
4110
+ if (!(await this.isFoldersOptionChecked())) {
4111
+ await this.foldersCheckbox.click();
4112
+ }
4113
+ }
4114
+ async checkOnlyFiles() {
4115
+ await this.resetOptions();
4116
+ if (await this.isFoldersOptionChecked()) {
4117
+ await this.foldersCheckbox.click();
4118
+ }
4119
+ if (!(await this.isFilesOptionChecked())) {
4120
+ await this.filesCheckbox.click();
4121
+ }
4122
+ }
4123
+ async checkLibraries() {
4124
+ await this.resetOptions();
4125
+ await this.librariesRadioButton.click();
4126
+ }
4127
+ async checkFilesAndFolders() {
4128
+ await this.resetOptions();
4129
+ if (!(await this.isFilesOptionChecked())) {
4130
+ await this.filesCheckbox.click();
4131
+ }
4132
+ if (!(await this.isFoldersOptionChecked())) {
4133
+ await this.foldersCheckbox.click();
4134
+ }
4135
+ }
4136
+ }
4137
+
4141
4138
  /*!
4142
4139
  * Copyright © 2005-2025 Hyland Software, Inc. and its affiliates. All rights reserved.
4143
4140
  *
@@ -4171,8 +4168,8 @@ class SearchPage extends BasePage {
4171
4168
  folderDialog = new AdfFolderDialogComponent(this.page);
4172
4169
  dataTable = new DataTableComponent(this.page);
4173
4170
  viewer = new ViewerComponent(this.page);
4174
- searchInput = new SearchInputComponent(this.page);
4175
- searchOverlay = new SearchOverlayComponent(this.page);
4171
+ searchInputComponent = new SearchInputComponent(this.page);
4172
+ searchInDialog = new SearchInDialogComponent(this.page);
4176
4173
  searchSortingPicker = new SearchSortingPicker(this.page);
4177
4174
  searchFilters = new SearchFilters(this.page);
4178
4175
  searchFiltersTags = new SearchFiltersTags(this.page);
@@ -4188,29 +4185,33 @@ class SearchPage extends BasePage {
4188
4185
  folderInformationDialog = new FolderInformationDialogComponent(this.page);
4189
4186
  searchMenuCard = new SearchMenuCard(this.page);
4190
4187
  async searchWithin(searchText, searchType) {
4191
- await this.acaHeader.searchButton.click();
4192
- await this.clickSearchButton();
4188
+ if (!(await this.searchInputComponent.searchInput.isVisible())) {
4189
+ await this.acaHeader.searchButton.click();
4190
+ }
4191
+ await this.searchInputComponent.searchInButton.click();
4193
4192
  switch (searchType) {
4194
4193
  case 'files':
4195
- await this.searchOverlay.checkOnlyFiles();
4194
+ await this.searchInDialog.checkOnlyFiles();
4196
4195
  break;
4197
4196
  case 'folders':
4198
- await this.searchOverlay.checkOnlyFolders();
4197
+ await this.searchInDialog.checkOnlyFolders();
4199
4198
  break;
4200
4199
  case 'filesAndFolders':
4201
- await this.searchOverlay.checkFilesAndFolders();
4200
+ await this.searchInDialog.checkFilesAndFolders();
4202
4201
  break;
4203
4202
  case 'libraries':
4204
- await this.searchOverlay.checkLibraries();
4203
+ await this.searchInDialog.checkLibraries();
4205
4204
  break;
4206
4205
  default:
4207
4206
  break;
4208
4207
  }
4209
- await this.searchOverlay.searchFor(searchText);
4208
+ await this.searchInDialog.applyButton.click();
4209
+ await this.clickSearchButton();
4210
+ await this.searchInputComponent.searchFor(searchText);
4210
4211
  await this.dataTable.progressBarWaitForReload();
4211
4212
  }
4212
4213
  async clickSearchButton() {
4213
- await this.searchInput.searchButton.click({ force: true });
4214
+ await this.searchInputComponent.searchButton.click({ force: true });
4214
4215
  }
4215
4216
  }
4216
4217
 
@@ -4675,7 +4676,7 @@ const getGlobalConfig = {
4675
4676
  testMatch: ['**/*.e2e.ts'],
4676
4677
  use: {
4677
4678
  /* Maximum time each action such as `click()` can take. Defaults to 0 (no limit). */
4678
- actionTimeout: 0,
4679
+ actionTimeout: 40 * 1000,
4679
4680
  /* Base URL to use in actions like `await page.goto('/')`. */
4680
4681
  baseURL: env.PLAYWRIGHT_E2E_HOST,
4681
4682
  headless: env.PLAYWRIGHT_HEADLESS === 'true' || !!env.CI,
@@ -7441,5 +7442,5 @@ const TEST_FILES = {
7441
7442
  * Generated bundle index. Do not edit.
7442
7443
  */
7443
7444
 
7444
- export { APP_ROUTES, AcaHeader, ActionType, ActionTypes, ActionsDropdownComponent, AdfConfirmDialogComponent, AdfDeleteTrashComponent, AdfFolderDialogComponent, AdfInfoDrawerComponent, AdfLibraryDialogComponent, ApiClientFactory, BaseComponent, BasePage, Breadcrumb, CategoriesApi, Comparator, ConditionComponent, ConditionsTypes, ContentNodeSelectorDialog, CreateFromTemplateDialogComponent, DataTableComponent, DateTimePicker, EditDialog, ErrorComponent, FavoritesLibrariesPage, FavoritesPage, FavoritesPageApi, Field, FileActionsApi, FolderInformationDialogComponent, GenericLogger, LinkRulesDialog, LogLevelsEnum, LoginPage, ManageRules, ManageRulesDialogComponent, ManageVersionsDialog, MatMenuComponent, MimeType, MyLibrariesPage, NodesApi, NodesPage, PaginationActionsType, PaginationComponent, PasswordOverlayDialogComponent, Person, PersonalFilesPage, QueriesApi, RecentFilesPage, RulesApi, RulesToolbarComponent, SIDEBAR_LABELS, SITE_ROLES, SITE_VISIBILITY, SearchFilters, SearchFiltersCategories, SearchFiltersDate, SearchFiltersLocation, SearchFiltersLogic, SearchFiltersProperties, SearchFiltersTags, SearchInputComponent, SearchMenuCard, SearchOverlayComponent, SearchPage, SearchPageApi, SearchSortingPicker, ShareDialogComponent, SharedLinksApi, SharedPage, SidenavComponent, SitesApi, SnackBarComponent, SpinnerComponent, TEST_FILES, TagsApi, TrashPage, TrashcanApi, UploadDialog, UploadNewVersionDialog, UserModel, Utils, ViewerComponent, ViewerOverlayDialogComponent, collaboratorDocToolbarMore, collaboratorEditRowToolbarMore, collaboratorLockCurrentUserToolbarMore, collaboratorLockOtherUserSearchToolbarMore, collaboratorLockOtherUserToolbarMore, collaboratorSharedToolbarPrimary, collaboratorToolbarPrimary, createSuiteProjects, errorColor, errorStrings, favoritesCollaboratorToolbarMore, file, fileDocx, fileDocxFav, fileDocxShared, fileDocxSharedFav, fileFav, fileFavLocked, fileGranularPermission, fileLocked, fileLockedByUser, fileShared, fileSharedFav, fileSharedFavLocked, fileSharedLocked, flattenNodeContentTree, folder, folderFav, folderFav2, folderFavFile, folderFile, getBrowserProjects, getExcludedTestsRegExpArray, getGlobalConfig, getUserState, infoColor, libraryErrors, logColor, logLevels, multipleSel, multipleSelAllFav, multipleSelFile, paths, random$1 as random, test, testEmailDomain, timeouts, users, waitForApi, warnColor };
7445
+ export { APP_ROUTES, AcaHeader, ActionType, ActionTypes, ActionsDropdownComponent, AdfConfirmDialogComponent, AdfDeleteTrashComponent, AdfFolderDialogComponent, AdfInfoDrawerComponent, AdfLibraryDialogComponent, ApiClientFactory, BaseComponent, BasePage, Breadcrumb, CategoriesApi, Comparator, ConditionComponent, ConditionsTypes, ContentNodeSelectorDialog, CreateFromTemplateDialogComponent, DataTableComponent, DateTimePicker, EditDialog, ErrorComponent, FavoritesLibrariesPage, FavoritesPage, FavoritesPageApi, Field, FileActionsApi, FolderInformationDialogComponent, GenericLogger, LinkRulesDialog, LogLevelsEnum, LoginPage, ManageRules, ManageRulesDialogComponent, ManageVersionsDialog, MatMenuComponent, MimeType, MyLibrariesPage, NodesApi, NodesPage, PaginationActionsType, PaginationComponent, PasswordOverlayDialogComponent, Person, PersonalFilesPage, QueriesApi, RecentFilesPage, RulesApi, RulesToolbarComponent, SIDEBAR_LABELS, SITE_ROLES, SITE_VISIBILITY, SearchFilters, SearchFiltersCategories, SearchFiltersDate, SearchFiltersLocation, SearchFiltersLogic, SearchFiltersProperties, SearchFiltersTags, SearchInputComponent, SearchMenuCard, SearchPage, SearchPageApi, SearchSortingPicker, ShareDialogComponent, SharedLinksApi, SharedPage, SidenavComponent, SitesApi, SnackBarComponent, SpinnerComponent, TEST_FILES, TagsApi, TrashPage, TrashcanApi, UploadDialog, UploadNewVersionDialog, UserModel, Utils, ViewerComponent, ViewerOverlayDialogComponent, collaboratorDocToolbarMore, collaboratorEditRowToolbarMore, collaboratorLockCurrentUserToolbarMore, collaboratorLockOtherUserSearchToolbarMore, collaboratorLockOtherUserToolbarMore, collaboratorSharedToolbarPrimary, collaboratorToolbarPrimary, createSuiteProjects, errorColor, errorStrings, favoritesCollaboratorToolbarMore, file, fileDocx, fileDocxFav, fileDocxShared, fileDocxSharedFav, fileFav, fileFavLocked, fileGranularPermission, fileLocked, fileLockedByUser, fileShared, fileSharedFav, fileSharedFavLocked, fileSharedLocked, flattenNodeContentTree, folder, folderFav, folderFav2, folderFavFile, folderFile, getBrowserProjects, getExcludedTestsRegExpArray, getGlobalConfig, getUserState, infoColor, libraryErrors, logColor, logLevels, multipleSel, multipleSelAllFav, multipleSelFile, paths, random$1 as random, test, testEmailDomain, timeouts, users, waitForApi, warnColor };
7445
7446
  //# sourceMappingURL=alfresco-aca-playwright-shared.mjs.map