@umbraco/playwright-testhelpers 15.0.6 → 15.0.8

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.
Files changed (38) hide show
  1. package/dist/lib/helpers/ContentUiHelper.d.ts +5 -1
  2. package/dist/lib/helpers/ContentUiHelper.js +45 -8
  3. package/dist/lib/helpers/ContentUiHelper.js.map +1 -1
  4. package/dist/lib/helpers/DataTypeUiHelper.js +22 -6
  5. package/dist/lib/helpers/DataTypeUiHelper.js.map +1 -1
  6. package/dist/lib/helpers/DocumentTypeUiHelper.js +4 -4
  7. package/dist/lib/helpers/DocumentTypeUiHelper.js.map +1 -1
  8. package/dist/lib/helpers/FormsUiHelper.d.ts +123 -0
  9. package/dist/lib/helpers/FormsUiHelper.js +487 -0
  10. package/dist/lib/helpers/FormsUiHelper.js.map +1 -0
  11. package/dist/lib/helpers/LogViewerUiHelper.js +15 -3
  12. package/dist/lib/helpers/LogViewerUiHelper.js.map +1 -1
  13. package/dist/lib/helpers/MediaTypeUiHelper.js.map +1 -1
  14. package/dist/lib/helpers/MediaUiHelper.d.ts +3 -1
  15. package/dist/lib/helpers/MediaUiHelper.js +13 -5
  16. package/dist/lib/helpers/MediaUiHelper.js.map +1 -1
  17. package/dist/lib/helpers/MemberApiHelper.js +3 -3
  18. package/dist/lib/helpers/MemberApiHelper.js.map +1 -1
  19. package/dist/lib/helpers/MemberUiHelper.js +5 -1
  20. package/dist/lib/helpers/MemberUiHelper.js.map +1 -1
  21. package/dist/lib/helpers/PackageUiHelper.js +11 -5
  22. package/dist/lib/helpers/PackageUiHelper.js.map +1 -1
  23. package/dist/lib/helpers/StylesheetUiHelper.js +1 -1
  24. package/dist/lib/helpers/StylesheetUiHelper.js.map +1 -1
  25. package/dist/lib/helpers/TemplateUiHelper.js +2 -2
  26. package/dist/lib/helpers/TemplateUiHelper.js.map +1 -1
  27. package/dist/lib/helpers/UiBaseLocators.d.ts +17 -6
  28. package/dist/lib/helpers/UiBaseLocators.js +75 -18
  29. package/dist/lib/helpers/UiBaseLocators.js.map +1 -1
  30. package/dist/lib/helpers/UiHelpers.d.ts +2 -0
  31. package/dist/lib/helpers/UiHelpers.js +3 -0
  32. package/dist/lib/helpers/UiHelpers.js.map +1 -1
  33. package/dist/lib/helpers/UserGroupUiHelper.js +6 -2
  34. package/dist/lib/helpers/UserGroupUiHelper.js.map +1 -1
  35. package/dist/lib/helpers/UserUiHelper.js +4 -1
  36. package/dist/lib/helpers/UserUiHelper.js.map +1 -1
  37. package/dist/tsconfig.tsbuildinfo +1 -1
  38. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"TemplateUiHelper.js","sourceRoot":"","sources":["../../../lib/helpers/TemplateUiHelper.ts"],"names":[],"mappings":"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","sourcesContent":["import {Page, Locator, expect} from \"@playwright/test\"\nimport {UiBaseLocators} from \"./UiBaseLocators\";\nimport {ConstantHelper} from \"./ConstantHelper\";\n\nexport class TemplateUiHelper extends UiBaseLocators {\n private readonly changeMasterTemplateBtn: Locator;\n private readonly sectionsBtn: Locator;\n private readonly removeMasterTemplateBtn: Locator;\n private readonly sectionNameTxt: Locator;\n private readonly templateTree: Locator;\n\n constructor(page: Page) {\n super(page);\n this.changeMasterTemplateBtn = page.locator('#master-template-button');\n this.sectionsBtn = page.locator('#sections-button', {hasText: 'Sections'});\n this.removeMasterTemplateBtn = page.locator('[name=\"icon-delete\"] svg');\n this.sectionNameTxt = page.getByLabel('Section Name');\n this.templateTree = page.locator('umb-tree[alias=\"Umb.Tree.Template\"]');\n }\n\n async clickActionsMenuForTemplate(name: string) {\n await this.clickActionsMenuForName(name);\n }\n\n async clickActionsMenuAtRoot() {\n await this.clickActionsMenuForTemplate('Templates');\n }\n\n async clickRootFolderCaretButton() {\n await this.clickCaretButtonForName('Templates');\n }\n\n async goToTemplate(templateName: string, childTemplateName: string = '') {\n await this.goToSection(ConstantHelper.sections.settings);\n await this.reloadTemplateTree();\n if (childTemplateName === '') {\n await this.page.getByLabel(templateName).click();\n await expect(this.enterAName).toHaveValue(templateName);\n } else {\n await this.clickCaretButtonForName(templateName);\n await this.page.getByLabel(childTemplateName).click();\n await expect(this.enterAName).toHaveValue(childTemplateName);\n }\n await this.page.waitForTimeout(1000);\n }\n\n async clickSectionsButton() {\n await expect(this.sectionsBtn).toBeVisible();\n await this.sectionsBtn.click();\n }\n\n async clickChangeMasterTemplateButton() {\n await this.changeMasterTemplateBtn.click();\n }\n\n async enterTemplateName(templateName: string) {\n await expect(this.enterAName).toBeVisible();\n await this.enterAName.clear();\n await this.enterAName.fill(templateName);\n }\n\n async enterTemplateContent(templateContent: string) {\n // We need this wait, to be sure that the template content is loaded.\n await this.page.waitForTimeout(200);\n await this.textAreaInputArea.clear();\n await this.textAreaInputArea.fill(templateContent);\n }\n\n async isMasterTemplateNameVisible(templateName: string, isVisible: boolean = true) {\n await expect(this.page.getByLabel('Master template: ' + templateName)).toBeVisible({visible: isVisible});\n }\n\n async clickRemoveMasterTemplateButton() {\n await this.removeMasterTemplateBtn.click();\n }\n\n async insertSection(sectionType: string, sectionName: string = '') {\n await this.clickSectionsButton();\n await expect(this.submitBtn).toBeVisible();\n await this.page.locator('[label=\"' + sectionType + '\"]').click();\n if (sectionName !== '') {\n await expect(this.sectionNameTxt).toBeVisible();\n await this.sectionNameTxt.fill(sectionName);\n }\n await this.clickSubmitButton();\n }\n\n async isTemplateTreeItemVisible(templateName: string, isVisible: boolean = true) {\n return expect(this.templateTree.getByText(templateName, {exact: true})).toBeVisible({visible: isVisible});\n }\n\n async reloadTemplateTree() {\n await this.reloadTree('Templates');\n }\n\n async isTemplateRootTreeItemVisible(templateName: string, isVisible: boolean = true, toReload: boolean = true) {\n if (toReload) {\n await this.reloadTemplateTree();\n }\n return expect(this.templateTree.getByText(templateName, {exact: true})).toBeVisible({visible: isVisible});\n }\n}"]}
1
+ {"version":3,"file":"TemplateUiHelper.js","sourceRoot":"","sources":["../../../lib/helpers/TemplateUiHelper.ts"],"names":[],"mappings":"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","sourcesContent":["import {Page, Locator, expect} from \"@playwright/test\"\nimport {UiBaseLocators} from \"./UiBaseLocators\";\nimport {ConstantHelper} from \"./ConstantHelper\";\n\nexport class TemplateUiHelper extends UiBaseLocators {\n private readonly changeMasterTemplateBtn: Locator;\n private readonly sectionsBtn: Locator;\n private readonly removeMasterTemplateBtn: Locator;\n private readonly sectionNameTxt: Locator;\n private readonly templateTree: Locator;\n\n constructor(page: Page) {\n super(page);\n this.changeMasterTemplateBtn = page.locator('#master-template-button');\n this.sectionsBtn = page.locator('#sections-button', {hasText: 'Sections'});\n this.removeMasterTemplateBtn = page.locator('[name=\"icon-delete\"] svg');\n this.sectionNameTxt = page.getByLabel('Section Name');\n this.templateTree = page.locator('umb-tree[alias=\"Umb.Tree.Template\"]');\n }\n\n async clickActionsMenuForTemplate(name: string) {\n await this.clickActionsMenuForName(name);\n }\n\n async clickActionsMenuAtRoot() {\n await this.clickActionsMenuForTemplate('Templates');\n }\n\n async clickRootFolderCaretButton() {\n await this.clickCaretButtonForName('Templates');\n }\n\n async goToTemplate(templateName: string, childTemplateName: string = '') {\n await this.goToSection(ConstantHelper.sections.settings);\n await this.reloadTemplateTree();\n if (childTemplateName === '') {\n await this.page.getByLabel(templateName, {exact: true}).click();\n await expect(this.enterAName).toHaveValue(templateName);\n } else {\n await this.clickCaretButtonForName(templateName);\n await this.page.getByLabel(childTemplateName , {exact: true}).click();\n await expect(this.enterAName).toHaveValue(childTemplateName);\n }\n await this.page.waitForTimeout(1000);\n }\n\n async clickSectionsButton() {\n await expect(this.sectionsBtn).toBeVisible();\n await this.sectionsBtn.click();\n }\n\n async clickChangeMasterTemplateButton() {\n await this.changeMasterTemplateBtn.click();\n }\n\n async enterTemplateName(templateName: string) {\n await expect(this.enterAName).toBeVisible();\n await this.enterAName.clear();\n await this.enterAName.fill(templateName);\n }\n\n async enterTemplateContent(templateContent: string) {\n // We need this wait, to be sure that the template content is loaded.\n await this.page.waitForTimeout(200);\n await this.textAreaInputArea.clear();\n await this.textAreaInputArea.fill(templateContent);\n }\n\n async isMasterTemplateNameVisible(templateName: string, isVisible: boolean = true) {\n await expect(this.page.getByLabel('Master template: ' + templateName)).toBeVisible({visible: isVisible});\n }\n\n async clickRemoveMasterTemplateButton() {\n await this.removeMasterTemplateBtn.click();\n }\n\n async insertSection(sectionType: string, sectionName: string = '') {\n await this.clickSectionsButton();\n await expect(this.submitBtn).toBeVisible();\n await this.page.locator('[label=\"' + sectionType + '\"]').click();\n if (sectionName !== '') {\n await expect(this.sectionNameTxt).toBeVisible();\n await this.sectionNameTxt.fill(sectionName);\n }\n await this.clickSubmitButton();\n }\n\n async isTemplateTreeItemVisible(templateName: string, isVisible: boolean = true) {\n return expect(this.templateTree.getByText(templateName, {exact: true})).toBeVisible({visible: isVisible});\n }\n\n async reloadTemplateTree() {\n await this.reloadTree('Templates');\n }\n\n async isTemplateRootTreeItemVisible(templateName: string, isVisible: boolean = true, toReload: boolean = true) {\n if (toReload) {\n await this.reloadTemplateTree();\n }\n return expect(this.templateTree.getByText(templateName, {exact: true})).toBeVisible({visible: isVisible});\n }\n}"]}
@@ -109,20 +109,26 @@ export declare class UiBaseLocators {
109
109
  readonly gridBtn: Locator;
110
110
  readonly listBtn: Locator;
111
111
  readonly viewBundleBtn: Locator;
112
- private readonly chooseDocumentInputBtn;
113
- private readonly chooseMediaInputBtn;
112
+ readonly chooseDocumentInputBtn: Locator;
113
+ readonly chooseMediaInputBtn: Locator;
114
114
  readonly container: Locator;
115
115
  readonly createDocumentBlueprintBtn: Locator;
116
116
  readonly actionsBtn: Locator;
117
117
  readonly mediaPickerModalSubmitBtn: Locator;
118
118
  readonly deleteBtn: Locator;
119
+ readonly mediaCaptionAltTextModalSubmitBtn: Locator;
120
+ readonly embeddedMediaModal: Locator;
121
+ readonly embeddedURLTxt: Locator;
122
+ readonly embeddedRetrieveBtn: Locator;
123
+ readonly embeddedMediaModalConfirmBtn: Locator;
124
+ readonly embeddedPreview: Locator;
119
125
  constructor(page: Page);
120
126
  clickActionsMenuForName(name: string): Promise<void>;
121
127
  isActionsMenuForNameVisible(name: string, isVisible?: boolean): Promise<void>;
122
128
  clickCaretButtonForName(name: string): Promise<void>;
123
129
  clickCaretButton(): Promise<void>;
124
130
  reloadTree(treeName: string): Promise<void>;
125
- clickReloadButton(toForce?: boolean): Promise<void>;
131
+ clickReloadButton(): Promise<void>;
126
132
  clickSaveButton(): Promise<void>;
127
133
  clickChooseButton(): Promise<void>;
128
134
  clickChooseContainerButton(): Promise<void>;
@@ -151,7 +157,7 @@ export declare class UiBaseLocators {
151
157
  clickRemoveExactButton(): Promise<void>;
152
158
  clickRemoveButtonForName(name: string): Promise<void>;
153
159
  clickTrashIconButtonForName(name: string): Promise<void>;
154
- clickRemoveWithName(name: string, toForce?: boolean): Promise<void>;
160
+ clickRemoveWithName(name: string): Promise<void>;
155
161
  clickDisableButton(): Promise<void>;
156
162
  clickConfirmDisableButton(): Promise<void>;
157
163
  clickConfirmRemoveButton(): Promise<void>;
@@ -182,7 +188,7 @@ export declare class UiBaseLocators {
182
188
  isErrorNotificationVisible(isVisible?: boolean): Promise<void>;
183
189
  isTextWithMessageVisible(message: string, isVisible?: boolean): Promise<void>;
184
190
  clickCreateThreeDotsButton(): Promise<void>;
185
- clickCreateButton(toForceClick?: boolean): Promise<void>;
191
+ clickCreateButton(): Promise<void>;
186
192
  clickAddButton(): Promise<void>;
187
193
  clickNewFolderThreeDotsButton(): Promise<void>;
188
194
  clickEditorSettingsButton(index?: number): Promise<void>;
@@ -230,7 +236,7 @@ export declare class UiBaseLocators {
230
236
  clickConfigureAsACollectionButton(): Promise<void>;
231
237
  doesReturnedItemsHaveCount(itemCount: number): Promise<void>;
232
238
  doesQueryResultHaveContentName(contentName: string): Promise<void>;
233
- deleteGroup(groupName: string, toForceClick?: boolean): Promise<void>;
239
+ deleteGroup(groupName: string): Promise<void>;
234
240
  clickRemoveTabWithName(name: string): Promise<void>;
235
241
  clickLeftArrowButton(): Promise<void>;
236
242
  clickToUploadButton(): Promise<void>;
@@ -257,4 +263,9 @@ export declare class UiBaseLocators {
257
263
  clickLinkWithName(name: string): Promise<void>;
258
264
  clickMediaPickerModalSubmitButton(): Promise<void>;
259
265
  selectMediaWithName(mediaName: string): Promise<void>;
266
+ clickMediaCaptionAltTextModalSubmitButton(): Promise<void>;
267
+ enterEmbeddedURL(value: string): Promise<void>;
268
+ clickEmbeddedRetrieveButton(): Promise<void>;
269
+ clickEmbeddedMediaModalConfirmButton(): Promise<void>;
270
+ waitForEmbeddedPreviewVisible(): Promise<void>;
260
271
  }
@@ -120,6 +120,12 @@ class UiBaseLocators {
120
120
  actionsBtn;
121
121
  mediaPickerModalSubmitBtn;
122
122
  deleteBtn;
123
+ mediaCaptionAltTextModalSubmitBtn;
124
+ embeddedMediaModal;
125
+ embeddedURLTxt;
126
+ embeddedRetrieveBtn;
127
+ embeddedMediaModalConfirmBtn;
128
+ embeddedPreview;
123
129
  constructor(page) {
124
130
  this.page = page;
125
131
  this.saveBtn = page.getByLabel('Save', { exact: true });
@@ -237,6 +243,12 @@ class UiBaseLocators {
237
243
  this.actionsBtn = page.getByLabel('Actions', { exact: true });
238
244
  this.mediaPickerModalSubmitBtn = page.locator('umb-media-picker-modal').getByLabel('Submit');
239
245
  this.deleteBtn = page.getByRole('button', { name: /^Delete(\.\.\.)?$/ });
246
+ this.mediaCaptionAltTextModalSubmitBtn = page.locator('umb-media-caption-alt-text-modal').getByLabel('Submit');
247
+ this.embeddedMediaModal = page.locator('umb-embedded-media-modal');
248
+ this.embeddedURLTxt = this.embeddedMediaModal.locator('[label="URL"] #input');
249
+ this.embeddedRetrieveBtn = this.embeddedMediaModal.locator('[label="Retrieve"]');
250
+ this.embeddedMediaModalConfirmBtn = this.embeddedMediaModal.getByLabel('Confirm');
251
+ this.embeddedPreview = this.embeddedMediaModal.locator('[label="Preview"]');
240
252
  }
241
253
  async clickActionsMenuForName(name) {
242
254
  await this.page.locator('[label="' + name + '"]').hover();
@@ -266,8 +278,9 @@ class UiBaseLocators {
266
278
  await this.clickCaretButtonForName(treeName);
267
279
  }
268
280
  }
269
- async clickReloadButton(toForce = false) {
270
- await this.reloadBtn.click({ force: toForce });
281
+ async clickReloadButton() {
282
+ await (0, test_1.expect)(this.reloadBtn).toBeVisible();
283
+ await this.reloadBtn.click();
271
284
  }
272
285
  async clickSaveButton() {
273
286
  // This wait is necessary to avoid the save button is ignored
@@ -276,6 +289,7 @@ class UiBaseLocators {
276
289
  await this.saveBtn.click();
277
290
  }
278
291
  async clickChooseButton() {
292
+ await (0, test_1.expect)(this.chooseBtn).toBeVisible();
279
293
  await this.chooseBtn.click();
280
294
  }
281
295
  async clickChooseContainerButton() {
@@ -310,7 +324,9 @@ class UiBaseLocators {
310
324
  await this.changeBtn.click();
311
325
  }
312
326
  async clickExactLinkWithName(name) {
313
- await this.page.getByRole('link', { name: name, exact: true }).click();
327
+ const exactLinkWithNameLocator = this.page.getByRole('link', { name: name, exact: true });
328
+ await (0, test_1.expect)(exactLinkWithNameLocator).toBeVisible();
329
+ await exactLinkWithNameLocator.click();
314
330
  }
315
331
  async enterAliasName(aliasName) {
316
332
  // Unlocks alias
@@ -319,6 +335,8 @@ class UiBaseLocators {
319
335
  await this.aliasNameTxt.fill(aliasName);
320
336
  }
321
337
  async updateIcon(iconName) {
338
+ await (0, test_1.expect)(this.iconBtn).toBeVisible();
339
+ // Force click is needed
322
340
  await this.iconBtn.click({ force: true });
323
341
  await this.searchForTypeToFilterValue(iconName);
324
342
  await this.clickLabelWithName(iconName, true, true);
@@ -367,8 +385,10 @@ class UiBaseLocators {
367
385
  async clickTrashIconButtonForName(name) {
368
386
  await this.page.locator('[name="' + name + '"] [name="icon-trash"]').click();
369
387
  }
370
- async clickRemoveWithName(name, toForce = false) {
371
- await this.page.getByLabel('Remove ' + name).click({ force: toForce });
388
+ async clickRemoveWithName(name) {
389
+ const removeLabelWithNameLocator = this.page.getByLabel('Remove ' + name);
390
+ await (0, test_1.expect)(removeLabelWithNameLocator).toBeVisible();
391
+ await removeLabelWithNameLocator.click();
372
392
  }
373
393
  async clickDisableButton() {
374
394
  await this.disableBtn.click();
@@ -400,7 +420,9 @@ class UiBaseLocators {
400
420
  await this.orderByPropertyAliasBtn.click();
401
421
  // Wait and choose property alias option
402
422
  await this.waitAndSelectQueryBuilderDropDownList(propertyAlias);
403
- // Click to acending button if isAcsending is false
423
+ await (0, test_1.expect)(this.orderByPropertyAliasBtn).toBeVisible();
424
+ await this.orderByPropertyAliasBtn.click();
425
+ // Click to ascending button if isAscending is false
404
426
  if (!isAscending) {
405
427
  await this.ascendingBtn.click();
406
428
  }
@@ -489,10 +511,13 @@ class UiBaseLocators {
489
511
  await this.page.getByLabel(name, { exact: isExact }).click({ force: toForce });
490
512
  }
491
513
  async clickButtonWithName(name, isExact = false) {
492
- await this.page.getByRole('button', { name: name, exact: isExact }).click();
514
+ const exactButtonWithNameLocator = this.page.getByRole('button', { name: name, exact: isExact });
515
+ await (0, test_1.expect)(exactButtonWithNameLocator).toBeVisible();
516
+ // Force click is needed
517
+ await exactButtonWithNameLocator.click({ force: true });
493
518
  }
494
519
  async isSuccessNotificationVisible(isVisible = true) {
495
- return await (0, test_1.expect)(this.successNotification.first()).toBeVisible({ visible: isVisible });
520
+ return await (0, test_1.expect)(this.successNotification.first()).toBeVisible({ visible: isVisible, timeout: 10000 });
496
521
  }
497
522
  async doesSuccessNotificationsHaveCount(count) {
498
523
  return await (0, test_1.expect)(this.successNotification).toHaveCount(count);
@@ -506,9 +531,9 @@ class UiBaseLocators {
506
531
  async clickCreateThreeDotsButton() {
507
532
  await this.createThreeDotsBtn.click();
508
533
  }
509
- async clickCreateButton(toForceClick = false) {
534
+ async clickCreateButton() {
510
535
  await (0, test_1.expect)(this.createBtn).toBeVisible();
511
- await this.createBtn.click({ force: toForceClick });
536
+ await this.createBtn.click();
512
537
  }
513
538
  async clickAddButton() {
514
539
  await this.addBtn.click();
@@ -538,6 +563,7 @@ class UiBaseLocators {
538
563
  await this.iAmDoneReorderingBtn.click();
539
564
  }
540
565
  async clickReorderButton() {
566
+ await (0, test_1.expect)(this.reorderBtn).toBeVisible();
541
567
  await this.reorderBtn.click();
542
568
  }
543
569
  async clickLabelAboveButton() {
@@ -556,9 +582,11 @@ class UiBaseLocators {
556
582
  await this.regexMessageTxt.fill(regExMessage);
557
583
  }
558
584
  async clickCompositionsButton() {
585
+ await (0, test_1.expect)(this.compositionsBtn).toBeVisible();
559
586
  await this.compositionsBtn.click();
560
587
  }
561
588
  async clickAddTabButton() {
589
+ await (0, test_1.expect)(this.addTabBtn).toBeVisible();
562
590
  await this.addTabBtn.click();
563
591
  }
564
592
  async enterTabName(tabName) {
@@ -596,6 +624,7 @@ class UiBaseLocators {
596
624
  await this.addGroupBtn.click();
597
625
  }
598
626
  async clickChooseModalButton() {
627
+ await (0, test_1.expect)(this.chooseModalBtn).toBeVisible();
599
628
  await this.chooseModalBtn.click();
600
629
  }
601
630
  async enterGroupName(groupName, index = 0) {
@@ -667,6 +696,8 @@ class UiBaseLocators {
667
696
  // We need to hover over the Property Editor to make the delete button visible
668
697
  const propertyEditor = this.page.locator('umb-content-type-design-editor-property', { hasText: name });
669
698
  await propertyEditor.hover();
699
+ await (0, test_1.expect)(propertyEditor.getByLabel('Delete')).toBeVisible();
700
+ // Force click is needed
670
701
  await propertyEditor.getByLabel('Delete').click({ force: true });
671
702
  await this.clickConfirmToDeleteButton();
672
703
  }
@@ -712,19 +743,24 @@ class UiBaseLocators {
712
743
  async doesQueryResultHaveContentName(contentName) {
713
744
  await (0, test_1.expect)(this.queryBuilderShowCode).toContainText(contentName);
714
745
  }
715
- async deleteGroup(groupName, toForceClick = false) {
746
+ async deleteGroup(groupName) {
716
747
  await this.page.waitForTimeout(1000);
717
748
  const groups = this.page.locator('umb-content-type-design-editor-group').all();
718
749
  for (const group of await groups) {
719
750
  if (await group.getByLabel('Group', { exact: true }).inputValue() === groupName) {
720
- await group.locator('[slot="header-actions"]').getByLabel('Delete').click({ force: toForceClick });
751
+ const headerActionsDeleteLocator = group.locator('[slot="header-actions"]').getByLabel('Delete');
752
+ await (0, test_1.expect)(headerActionsDeleteLocator).toBeVisible();
753
+ // Force click is needed
754
+ await headerActionsDeleteLocator.click({ force: true });
721
755
  return;
722
756
  }
723
757
  }
724
758
  }
725
759
  async clickRemoveTabWithName(name) {
726
- await this.page.locator('[label="' + name + '"]').hover();
727
- await this.page.locator('[label="' + name + '"] [label="Remove"]').click();
760
+ await this.page.locator('uui-tab').filter({ hasText: name }).hover();
761
+ const removeTabWithNameLocator = this.page.locator('uui-tab').filter({ hasText: name }).locator('[label="Remove"]');
762
+ await (0, test_1.expect)(removeTabWithNameLocator).toBeVisible();
763
+ await removeTabWithNameLocator.click();
728
764
  }
729
765
  async clickLeftArrowButton() {
730
766
  await this.leftArrowBtn.click();
@@ -772,20 +808,23 @@ class UiBaseLocators {
772
808
  }
773
809
  }
774
810
  async clickRecycleBinButton() {
811
+ await (0, test_1.expect)(this.recycleBinBtn).toBeVisible();
775
812
  await this.recycleBinBtn.click();
776
813
  }
777
814
  async isItemVisibleInRecycleBin(item, isVisible = true, isReload = true) {
778
815
  if (isReload) {
779
816
  await this.reloadRecycleBin(isVisible);
780
817
  }
781
- return (0, test_1.expect)(this.page.locator('[label="Recycle Bin"] [label="' + item + '"]')).toBeVisible({ visible: isVisible });
818
+ return await (0, test_1.expect)(this.page.locator('[label="Recycle Bin"] [label="' + item + '"]')).toBeVisible({ visible: isVisible });
782
819
  }
783
820
  async changeToGridView() {
784
- await this.viewBundleBtn.click({ force: true });
821
+ await (0, test_1.expect)(this.viewBundleBtn).toBeVisible();
822
+ await this.viewBundleBtn.click();
785
823
  await this.gridBtn.click();
786
824
  }
787
825
  async changeToListView() {
788
- await this.viewBundleBtn.click({ force: true });
826
+ await (0, test_1.expect)(this.viewBundleBtn).toBeVisible();
827
+ await this.viewBundleBtn.click();
789
828
  await this.listBtn.click();
790
829
  }
791
830
  async isViewBundleButtonVisible(isVisible = true) {
@@ -807,7 +846,8 @@ class UiBaseLocators {
807
846
  await this.chooseDocumentInputBtn.click();
808
847
  }
809
848
  async clickChooseMediaStartNodeButton() {
810
- await this.chooseMediaInputBtn.click({ force: true });
849
+ await (0, test_1.expect)(this.chooseMediaInputBtn).toBeVisible();
850
+ await this.chooseMediaInputBtn.click();
811
851
  }
812
852
  async clickActionsButton() {
813
853
  await this.actionsBtn.click();
@@ -824,6 +864,23 @@ class UiBaseLocators {
824
864
  async selectMediaWithName(mediaName) {
825
865
  await this.mediaCardItems.filter({ hasText: mediaName }).click({ position: { x: 0.5, y: 0.5 } });
826
866
  }
867
+ async clickMediaCaptionAltTextModalSubmitButton() {
868
+ await this.mediaCaptionAltTextModalSubmitBtn.click();
869
+ }
870
+ // Embed Modal
871
+ async enterEmbeddedURL(value) {
872
+ await this.embeddedURLTxt.clear();
873
+ await this.embeddedURLTxt.fill(value);
874
+ }
875
+ async clickEmbeddedRetrieveButton() {
876
+ await this.embeddedRetrieveBtn.click();
877
+ }
878
+ async clickEmbeddedMediaModalConfirmButton() {
879
+ await this.embeddedMediaModalConfirmBtn.click();
880
+ }
881
+ async waitForEmbeddedPreviewVisible() {
882
+ await (0, test_1.expect)(this.embeddedPreview).toBeVisible();
883
+ }
827
884
  }
828
885
  exports.UiBaseLocators = UiBaseLocators;
829
886
  //# sourceMappingURL=UiBaseLocators.js.map