@umbraco/playwright-testhelpers 15.0.11 → 15.0.13
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/dist/lib/helpers/ContentUiHelper.d.ts +5 -2
- package/dist/lib/helpers/ContentUiHelper.js +46 -7
- package/dist/lib/helpers/ContentUiHelper.js.map +1 -1
- package/dist/lib/helpers/DataTypeUiHelper.d.ts +4 -2
- package/dist/lib/helpers/DataTypeUiHelper.js +111 -18
- package/dist/lib/helpers/DataTypeUiHelper.js.map +1 -1
- package/dist/lib/helpers/DictionaryUiHelper.js +3 -1
- package/dist/lib/helpers/DictionaryUiHelper.js.map +1 -1
- package/dist/lib/helpers/DocumentTypeUiHelper.js +13 -6
- package/dist/lib/helpers/DocumentTypeUiHelper.js.map +1 -1
- package/dist/lib/helpers/LanguageUiHelper.js +2 -2
- package/dist/lib/helpers/LanguageUiHelper.js.map +1 -1
- package/dist/lib/helpers/LogViewerUiHelper.js +1 -0
- package/dist/lib/helpers/LogViewerUiHelper.js.map +1 -1
- package/dist/lib/helpers/MediaUiHelper.js +4 -2
- package/dist/lib/helpers/MediaUiHelper.js.map +1 -1
- package/dist/lib/helpers/MemberUiHelper.js +1 -1
- package/dist/lib/helpers/MemberUiHelper.js.map +1 -1
- package/dist/lib/helpers/PartialViewUiHelper.js +8 -0
- package/dist/lib/helpers/PartialViewUiHelper.js.map +1 -1
- package/dist/lib/helpers/RedirectManagementUiHelper.js +2 -0
- package/dist/lib/helpers/RedirectManagementUiHelper.js.map +1 -1
- package/dist/lib/helpers/StylesheetUiHelper.js +1 -1
- package/dist/lib/helpers/StylesheetUiHelper.js.map +1 -1
- package/dist/lib/helpers/TemplateUiHelper.js +2 -0
- package/dist/lib/helpers/TemplateUiHelper.js.map +1 -1
- package/dist/lib/helpers/UiBaseLocators.d.ts +6 -0
- package/dist/lib/helpers/UiBaseLocators.js +54 -6
- package/dist/lib/helpers/UiBaseLocators.js.map +1 -1
- package/dist/lib/helpers/UserGroupUiHelper.js +17 -3
- package/dist/lib/helpers/UserGroupUiHelper.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +1 -1
|
@@ -105,6 +105,7 @@ export declare class ContentUiHelper extends UiBaseLocators {
|
|
|
105
105
|
private readonly actionsMenu;
|
|
106
106
|
private readonly linkToDocumentBtn;
|
|
107
107
|
private readonly linkToMediaBtn;
|
|
108
|
+
private readonly linkToManualBtn;
|
|
108
109
|
private readonly umbDocumentCollection;
|
|
109
110
|
private readonly documentTableColumnName;
|
|
110
111
|
private readonly addBlockElementBtn;
|
|
@@ -118,6 +119,7 @@ export declare class ContentUiHelper extends UiBaseLocators {
|
|
|
118
119
|
private readonly tipTapPropertyEditor;
|
|
119
120
|
private readonly tipTapEditor;
|
|
120
121
|
private readonly uploadedSvgThumbnail;
|
|
122
|
+
private readonly linkPickerModal;
|
|
121
123
|
constructor(page: Page);
|
|
122
124
|
enterContentName(name: string): Promise<void>;
|
|
123
125
|
clickSaveAndPublishButton(): Promise<void>;
|
|
@@ -262,8 +264,9 @@ export declare class ContentUiHelper extends UiBaseLocators {
|
|
|
262
264
|
doesIndexDocumentInTreeContainName(parentName: string, childName: string, index: number): Promise<void>;
|
|
263
265
|
selectMemberGroup(memberGroupName: string): Promise<void>;
|
|
264
266
|
isPermissionInActionsMenuVisible(permissionName: string, isVisible?: boolean): Promise<void>;
|
|
265
|
-
|
|
266
|
-
|
|
267
|
+
clickDocumentLinkButton(): Promise<void>;
|
|
268
|
+
clickMediaLinkButton(): Promise<void>;
|
|
269
|
+
clickManualLinkButton(): Promise<void>;
|
|
267
270
|
clickAddBlockElementButton(): Promise<void>;
|
|
268
271
|
isAddBlockElementButtonVisible(isVisible?: boolean): Promise<void>;
|
|
269
272
|
isAddBlockElementButtonWithLabelVisible(label: string, isVisible?: boolean): Promise<void>;
|
|
@@ -108,6 +108,7 @@ class ContentUiHelper extends UiBaseLocators_1.UiBaseLocators {
|
|
|
108
108
|
actionsMenu;
|
|
109
109
|
linkToDocumentBtn;
|
|
110
110
|
linkToMediaBtn;
|
|
111
|
+
linkToManualBtn;
|
|
111
112
|
umbDocumentCollection;
|
|
112
113
|
documentTableColumnName;
|
|
113
114
|
addBlockElementBtn;
|
|
@@ -121,8 +122,10 @@ class ContentUiHelper extends UiBaseLocators_1.UiBaseLocators {
|
|
|
121
122
|
tipTapPropertyEditor;
|
|
122
123
|
tipTapEditor;
|
|
123
124
|
uploadedSvgThumbnail;
|
|
125
|
+
linkPickerModal;
|
|
124
126
|
constructor(page) {
|
|
125
127
|
super(page);
|
|
128
|
+
this.linkPickerModal = page.locator('umb-link-picker-modal');
|
|
126
129
|
this.contentNameTxt = page.locator('#name-input input');
|
|
127
130
|
this.saveAndPublishBtn = page.getByLabel('Save And Publish');
|
|
128
131
|
this.publishBtn = page.getByLabel(/^Publish(\.\.\.)?$/);
|
|
@@ -144,9 +147,9 @@ class ContentUiHelper extends UiBaseLocators_1.UiBaseLocators {
|
|
|
144
147
|
this.chooseMemberPickerBtn = page.locator('umb-property-editor-ui-member-picker #btn-add');
|
|
145
148
|
this.numericTxt = page.locator('umb-property-editor-ui-number input');
|
|
146
149
|
this.addMultiURLPickerBtn = page.locator('umb-property-editor-ui-multi-url-picker #btn-add');
|
|
147
|
-
this.linkTxt = page.getByLabel('URL', { exact: true });
|
|
150
|
+
this.linkTxt = page.getByLabel('Enter a URL...', { exact: true });
|
|
148
151
|
this.anchorQuerystringTxt = page.getByLabel('#value or ?key=value');
|
|
149
|
-
this.linkTitleTxt =
|
|
152
|
+
this.linkTitleTxt = this.linkPickerModal.getByLabel('Title');
|
|
150
153
|
this.tagItems = page.locator('uui-tag');
|
|
151
154
|
this.removeFilesBtn = page.locator('umb-input-upload-field [label="Remove file(s)"]');
|
|
152
155
|
this.toggleBtn = page.locator('umb-property-editor-ui-toggle #slider');
|
|
@@ -228,8 +231,9 @@ class ContentUiHelper extends UiBaseLocators_1.UiBaseLocators {
|
|
|
228
231
|
this.rollbackItem = page.locator('.rollback-item');
|
|
229
232
|
this.expandChildItemsForContent = page.getByLabel('Expand child items for Content');
|
|
230
233
|
this.actionsMenu = page.locator('uui-scroll-container');
|
|
231
|
-
this.linkToDocumentBtn =
|
|
232
|
-
this.linkToMediaBtn =
|
|
234
|
+
this.linkToDocumentBtn = this.linkPickerModal.getByLabel('Document', { exact: true });
|
|
235
|
+
this.linkToMediaBtn = this.linkPickerModal.getByLabel('Media', { exact: true });
|
|
236
|
+
this.linkToManualBtn = this.linkPickerModal.getByLabel('Manual', { exact: true });
|
|
233
237
|
this.umbDocumentCollection = page.locator('umb-document-collection');
|
|
234
238
|
this.documentTableColumnName = this.listView.locator('umb-document-table-column-name');
|
|
235
239
|
//Block Grid - Block List
|
|
@@ -279,6 +283,7 @@ class ContentUiHelper extends UiBaseLocators_1.UiBaseLocators {
|
|
|
279
283
|
await this.clickActionsMenuForName(name);
|
|
280
284
|
}
|
|
281
285
|
async clickCaretButtonForContentName(name) {
|
|
286
|
+
await (0, test_1.expect)(this.menuItemTree.filter({ hasText: name }).last().locator('#caret-button').last()).toBeVisible();
|
|
282
287
|
await this.menuItemTree.filter({ hasText: name }).last().locator('#caret-button').last().click();
|
|
283
288
|
}
|
|
284
289
|
async waitForModalVisible() {
|
|
@@ -358,6 +363,7 @@ class ContentUiHelper extends UiBaseLocators_1.UiBaseLocators {
|
|
|
358
363
|
await this.clickChooseModalButton();
|
|
359
364
|
}
|
|
360
365
|
async isTemplateNameDisabled(templateName) {
|
|
366
|
+
await (0, test_1.expect)(this.sidebarModal.getByLabel(templateName)).toBeVisible();
|
|
361
367
|
await (0, test_1.expect)(this.sidebarModal.getByLabel(templateName)).toBeDisabled();
|
|
362
368
|
}
|
|
363
369
|
// Culture and Hostnames
|
|
@@ -365,19 +371,24 @@ class ContentUiHelper extends UiBaseLocators_1.UiBaseLocators {
|
|
|
365
371
|
await this.cultureAndHostnamesBtn.click();
|
|
366
372
|
}
|
|
367
373
|
async selectCultureLanguageOption(option) {
|
|
374
|
+
await (0, test_1.expect)(this.cultureLanguageDropdownBox).toBeVisible();
|
|
368
375
|
await this.cultureLanguageDropdownBox.click();
|
|
369
|
-
await this.page.getByText(option).
|
|
376
|
+
await (0, test_1.expect)(this.page.getByText(option, { exact: true })).toBeVisible();
|
|
377
|
+
await this.page.getByText(option, { exact: true }).click();
|
|
370
378
|
}
|
|
371
379
|
async selectDomainLanguageOption(option, index = 0) {
|
|
372
380
|
await this.domainLanguageDropdownBox.nth(index).click();
|
|
373
381
|
await this.domainComboBox.nth(index).getByText(option).click();
|
|
374
382
|
}
|
|
375
383
|
async clickAddNewDomainButton() {
|
|
384
|
+
await (0, test_1.expect)(this.addNewDomainBtn).toBeVisible();
|
|
376
385
|
await this.addNewDomainBtn.click();
|
|
377
386
|
}
|
|
378
387
|
async enterDomain(value, index = 0) {
|
|
388
|
+
await (0, test_1.expect)(this.domainTxt.nth(index)).toBeVisible();
|
|
379
389
|
await this.domainTxt.nth(index).clear();
|
|
380
390
|
await this.domainTxt.nth(index).fill(value);
|
|
391
|
+
await (0, test_1.expect)(this.domainTxt.nth(index)).toHaveValue(value);
|
|
381
392
|
}
|
|
382
393
|
async clickDeleteDomainButton() {
|
|
383
394
|
await this.deleteDomainBtn.first().click();
|
|
@@ -594,6 +605,7 @@ class ContentUiHelper extends UiBaseLocators_1.UiBaseLocators {
|
|
|
594
605
|
return (0, test_1.expect)(this.enterAName).toHaveValue(name);
|
|
595
606
|
}
|
|
596
607
|
async doesDocumentTableColumnNameValuesMatch(expectedValues) {
|
|
608
|
+
await (0, test_1.expect)(this.documentListView).toBeVisible();
|
|
597
609
|
return expectedValues.forEach((text, index) => {
|
|
598
610
|
(0, test_1.expect)(this.documentTableColumnName.nth(index)).toHaveText(text);
|
|
599
611
|
});
|
|
@@ -769,21 +781,27 @@ class ContentUiHelper extends UiBaseLocators_1.UiBaseLocators {
|
|
|
769
781
|
await this.contentTreeRefreshBtn.click({ force: true });
|
|
770
782
|
}
|
|
771
783
|
async clickSortChildrenButton() {
|
|
784
|
+
await (0, test_1.expect)(this.sortChildrenBtn).toBeVisible();
|
|
772
785
|
await this.sortChildrenBtn.click();
|
|
773
786
|
}
|
|
774
787
|
async clickRollbackButton() {
|
|
788
|
+
await (0, test_1.expect)(this.rollbackBtn).toBeVisible();
|
|
775
789
|
await this.rollbackBtn.click();
|
|
776
790
|
}
|
|
777
791
|
async clickRollbackContainerButton() {
|
|
792
|
+
await (0, test_1.expect)(this.rollbackContainerBtn).toBeVisible();
|
|
778
793
|
await this.rollbackContainerBtn.click();
|
|
779
794
|
}
|
|
780
795
|
async clickLatestRollBackItem() {
|
|
796
|
+
await (0, test_1.expect)(this.rollbackItem.last()).toBeVisible();
|
|
781
797
|
await this.rollbackItem.last().click();
|
|
782
798
|
}
|
|
783
799
|
async clickPublicAccessButton() {
|
|
800
|
+
await (0, test_1.expect)(this.publicAccessBtn).toBeVisible();
|
|
784
801
|
await this.publicAccessBtn.click();
|
|
785
802
|
}
|
|
786
803
|
async addGroupBasedPublicAccess(memberGroupName, documentName) {
|
|
804
|
+
await (0, test_1.expect)(this.groupBasedProtectionBtn).toBeVisible();
|
|
787
805
|
await this.groupBasedProtectionBtn.click();
|
|
788
806
|
await this.nextBtn.click();
|
|
789
807
|
await this.chooseMemberGroupBtn.click();
|
|
@@ -815,12 +833,14 @@ class ContentUiHelper extends UiBaseLocators_1.UiBaseLocators {
|
|
|
815
833
|
await this.page.mouse.up();
|
|
816
834
|
}
|
|
817
835
|
async clickSortButton() {
|
|
836
|
+
await (0, test_1.expect)(this.sortBtn).toBeVisible();
|
|
818
837
|
await this.sortBtn.click();
|
|
819
838
|
}
|
|
820
839
|
async doesIndexDocumentInTreeContainName(parentName, childName, index) {
|
|
821
840
|
await (0, test_1.expect)(this.documentTreeItem.locator('[label="' + parentName + '"]').locator('umb-tree-item').nth(index).locator('#label')).toHaveText(childName);
|
|
822
841
|
}
|
|
823
842
|
async selectMemberGroup(memberGroupName) {
|
|
843
|
+
await (0, test_1.expect)(this.uuiCheckbox.getByLabel(memberGroupName)).toBeVisible();
|
|
824
844
|
await this.uuiCheckbox.getByLabel(memberGroupName).click();
|
|
825
845
|
}
|
|
826
846
|
async isPermissionInActionsMenuVisible(permissionName, isVisible = true) {
|
|
@@ -829,14 +849,21 @@ class ContentUiHelper extends UiBaseLocators_1.UiBaseLocators {
|
|
|
829
849
|
exact: true
|
|
830
850
|
})).toBeVisible({ visible: isVisible });
|
|
831
851
|
}
|
|
832
|
-
async
|
|
852
|
+
async clickDocumentLinkButton() {
|
|
853
|
+
await (0, test_1.expect)(this.linkToDocumentBtn).toBeVisible();
|
|
833
854
|
await this.linkToDocumentBtn.click();
|
|
834
855
|
}
|
|
835
|
-
async
|
|
856
|
+
async clickMediaLinkButton() {
|
|
857
|
+
await (0, test_1.expect)(this.linkToMediaBtn).toBeVisible();
|
|
836
858
|
await this.linkToMediaBtn.click();
|
|
837
859
|
}
|
|
860
|
+
async clickManualLinkButton() {
|
|
861
|
+
await (0, test_1.expect)(this.linkToManualBtn).toBeVisible();
|
|
862
|
+
await this.linkToManualBtn.click();
|
|
863
|
+
}
|
|
838
864
|
// Block Grid - Block List
|
|
839
865
|
async clickAddBlockElementButton() {
|
|
866
|
+
await (0, test_1.expect)(this.addBlockElementBtn).toBeVisible();
|
|
840
867
|
await this.addBlockElementBtn.click();
|
|
841
868
|
}
|
|
842
869
|
async isAddBlockElementButtonVisible(isVisible = true) {
|
|
@@ -852,33 +879,45 @@ class ContentUiHelper extends UiBaseLocators_1.UiBaseLocators {
|
|
|
852
879
|
await (0, test_1.expect)(this.blockName).toContainText(name);
|
|
853
880
|
}
|
|
854
881
|
async clickAddBlockSettingsTabButton() {
|
|
882
|
+
await (0, test_1.expect)(this.addBlockSettingsTabBtn).toBeVisible();
|
|
855
883
|
await this.addBlockSettingsTabBtn.click();
|
|
856
884
|
}
|
|
857
885
|
async clickEditBlockGridBlockButton() {
|
|
886
|
+
await (0, test_1.expect)(this.blockGridEntry).toBeVisible();
|
|
858
887
|
await this.blockGridEntry.hover();
|
|
888
|
+
await (0, test_1.expect)(this.editBlockEntryBtn).toBeVisible();
|
|
859
889
|
await this.editBlockEntryBtn.click();
|
|
860
890
|
}
|
|
861
891
|
async clickDeleteBlockGridBlockButton() {
|
|
892
|
+
await (0, test_1.expect)(this.blockGridEntry).toBeVisible();
|
|
862
893
|
await this.blockGridEntry.hover();
|
|
894
|
+
await (0, test_1.expect)(this.deleteBlockEntryBtn).toBeVisible();
|
|
863
895
|
await this.deleteBlockEntryBtn.click();
|
|
864
896
|
}
|
|
865
897
|
async clickEditBlockListBlockButton() {
|
|
898
|
+
await (0, test_1.expect)(this.blockListEntry).toBeVisible();
|
|
866
899
|
await this.blockListEntry.hover();
|
|
900
|
+
await (0, test_1.expect)(this.editBlockEntryBtn).toBeVisible();
|
|
867
901
|
await this.editBlockEntryBtn.click();
|
|
868
902
|
}
|
|
869
903
|
async clickDeleteBlockListBlockButton() {
|
|
904
|
+
await (0, test_1.expect)(this.blockListEntry).toBeVisible();
|
|
870
905
|
await this.blockListEntry.hover();
|
|
906
|
+
await (0, test_1.expect)(this.deleteBlockEntryBtn).toBeVisible();
|
|
871
907
|
await this.deleteBlockEntryBtn.click();
|
|
872
908
|
}
|
|
873
909
|
// TipTap
|
|
874
910
|
async enterRTETipTapEditor(value) {
|
|
911
|
+
await (0, test_1.expect)(this.tipTapEditor).toBeVisible();
|
|
875
912
|
await this.tipTapEditor.clear();
|
|
876
913
|
await this.tipTapEditor.fill(value);
|
|
877
914
|
}
|
|
878
915
|
async clickTipTapToolbarIconWithTitle(iconTitle) {
|
|
916
|
+
await (0, test_1.expect)(this.tipTapPropertyEditor.getByTitle(iconTitle, { exact: true }).locator('svg')).toBeVisible();
|
|
879
917
|
await this.tipTapPropertyEditor.getByTitle(iconTitle, { exact: true }).locator('svg').click();
|
|
880
918
|
}
|
|
881
919
|
async doesUploadedSvgThumbnailHaveSrc(imageSrc) {
|
|
920
|
+
await (0, test_1.expect)(this.uploadedSvgThumbnail).toBeVisible();
|
|
882
921
|
await (0, test_1.expect)(this.uploadedSvgThumbnail).toHaveAttribute('src', imageSrc);
|
|
883
922
|
}
|
|
884
923
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ContentUiHelper.js","sourceRoot":"","sources":["../../../lib/helpers/ContentUiHelper.ts"],"names":[],"mappings":"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","sourcesContent":["import {Page, Locator, expect} from \"@playwright/test\";\nimport {UiBaseLocators} from \"./UiBaseLocators\";\n\nexport class ContentUiHelper extends UiBaseLocators {\n private readonly contentNameTxt: Locator;\n private readonly saveAndPublishBtn: Locator;\n private readonly publishBtn: Locator;\n private readonly unpublishBtn: Locator;\n private readonly actionMenuForContentBtn: Locator;\n private readonly openedModal: Locator;\n private readonly textstringTxt: Locator;\n private readonly infoTab: Locator;\n private readonly linkContent: Locator;\n private readonly historyItems: Locator;\n private readonly generalItem: Locator;\n private readonly publicationStatus: Locator;\n private readonly createdDate: Locator;\n private readonly editDocumentTypeBtn: Locator;\n private readonly addTemplateBtn: Locator;\n private readonly id: Locator;\n private readonly cultureAndHostnamesBtn: Locator;\n private readonly cultureLanguageDropdownBox: Locator;\n private readonly addNewDomainBtn: Locator;\n private readonly domainTxt: Locator;\n private readonly domainLanguageDropdownBox: Locator;\n private readonly deleteDomainBtn: Locator;\n private readonly reloadChildrenThreeDotsBtn: Locator;\n private readonly contentTree: Locator;\n private readonly richTextAreaTxt: Locator;\n private readonly textAreaTxt: Locator;\n private readonly plusIconBtn: Locator;\n private readonly enterTagTxt: Locator;\n private readonly menuItemTree: Locator;\n private readonly domainComboBox: Locator;\n private readonly confirmToUnpublishBtn: Locator;\n private readonly saveModalBtn: Locator;\n private readonly dropdown: Locator;\n private readonly setADateTxt: Locator;\n private readonly chooseMediaPickerBtn: Locator;\n private readonly chooseMemberPickerBtn: Locator;\n private readonly numericTxt: Locator;\n private readonly resetFocalPointBtn: Locator;\n private readonly addMultiURLPickerBtn: Locator;\n private readonly linkTxt: Locator;\n private readonly anchorQuerystringTxt: Locator;\n private readonly linkTitleTxt: Locator;\n private readonly tagItems: Locator;\n private readonly removeFilesBtn: Locator;\n private readonly toggleBtn: Locator;\n private readonly toggleInput: Locator;\n private readonly documentTypeWorkspace: Locator;\n private readonly addMultipleTextStringBtn: Locator;\n private readonly multipleTextStringValueTxt: Locator;\n private readonly markdownTxt: Locator;\n private readonly codeEditorTxt: Locator;\n private readonly sliderInput: Locator;\n private readonly tabItems: Locator;\n private readonly documentWorkspace: Locator;\n private readonly searchTxt: Locator;\n private readonly variantSelectorBtn: Locator;\n private readonly variantAddModeBtn: Locator;\n private readonly saveAndCloseBtn: Locator;\n private readonly enterNameInContainerTxt: Locator;\n private readonly listView: Locator;\n private readonly nameBtn: Locator;\n private readonly listViewTableRow: Locator;\n private readonly publishSelectedListItems: Locator;\n private readonly unpublishSelectedListItems: Locator;\n private readonly duplicateToSelectedListItems: Locator;\n private readonly moveToSelectedListItems: Locator;\n private readonly trashSelectedListItems: Locator;\n private readonly modalContent: Locator;\n private readonly trashBtn: Locator;\n private readonly documentListView: Locator;\n private readonly documentGridView: Locator;\n private readonly documentTreeItem: Locator;\n private readonly documentLanguageSelect: Locator;\n private readonly documentLanguageSelectPopover: Locator;\n private readonly documentReadOnly: Locator;\n private readonly documentWorkspaceEditor: Locator;\n private readonly documentBlueprintModal: Locator;\n private readonly documentBlueprintModalEnterNameTxt: Locator;\n private readonly documentBlueprintSaveBtn: Locator;\n private readonly exactTrashBtn: Locator;\n private readonly emptyRecycleBinBtn: Locator;\n private readonly confirmEmptyRecycleBinBtn: Locator;\n private readonly duplicateToBtn: Locator;\n private readonly moveToBtn: Locator;\n private readonly duplicateBtn: Locator;\n private readonly contentTreeRefreshBtn: Locator;\n private readonly sortChildrenBtn: Locator;\n private readonly rollbackBtn: Locator;\n private readonly rollbackContainerBtn: Locator;\n private readonly publicAccessBtn: Locator;\n private readonly uuiCheckbox: Locator;\n private readonly sortBtn: Locator;\n private readonly modalChooseBtn: Locator;\n private readonly containerSaveBtn: Locator\n private readonly groupBasedProtectionBtn: Locator;\n private readonly nextBtn: Locator;\n private readonly chooseMemberGroupBtn: Locator;\n private readonly selectLoginPageDocument: Locator;\n private readonly selectErrorPageDocument: Locator;\n private readonly rollbackItem: Locator;\n private readonly expandChildItemsForContent: Locator;\n private readonly actionsMenu: Locator;\n private readonly linkToDocumentBtn: Locator;\n private readonly linkToMediaBtn: Locator;\n private readonly umbDocumentCollection: Locator;\n private readonly documentTableColumnName: Locator;\n private readonly addBlockElementBtn: Locator;\n private readonly formValidationMessage: Locator;\n private readonly blockName: Locator;\n private readonly addBlockSettingsTabBtn: Locator;\n private readonly editBlockEntryBtn: Locator;\n private readonly deleteBlockEntryBtn: Locator;\n private readonly blockGridEntry: Locator;\n private readonly blockListEntry: Locator;\n private readonly tipTapPropertyEditor: Locator;\n private readonly tipTapEditor: Locator;\n private readonly uploadedSvgThumbnail: Locator;\n\n constructor(page: Page) {\n super(page);\n this.contentNameTxt = page.locator('#name-input input');\n this.saveAndPublishBtn = page.getByLabel('Save And Publish');\n this.publishBtn = page.getByLabel(/^Publish(\\.\\.\\.)?$/);\n this.unpublishBtn = page.getByLabel(/^Unpublish(\\.\\.\\.)?$/);\n this.actionMenuForContentBtn = page.locator('#header [label=\"Open actions menu\"]');\n this.openedModal = page.locator('uui-modal-container[backdrop]');\n this.textstringTxt = page.locator('umb-property-editor-ui-text-box #input');\n this.reloadChildrenThreeDotsBtn = page.getByRole('button', {name: 'Reload children...'});\n this.contentTree = page.locator('umb-tree[alias=\"Umb.Tree.Document\"]');\n this.richTextAreaTxt = page.frameLocator('iframe[title=\"Rich Text Area\"]').locator('#tinymce');\n this.textAreaTxt = page.locator('umb-property-editor-ui-textarea textarea');\n this.plusIconBtn = page.locator('#icon-add svg');\n this.enterTagTxt = page.getByPlaceholder('Enter tag');\n this.menuItemTree = page.locator('umb-menu-item-tree-default');\n this.confirmToUnpublishBtn = page.locator('umb-document-unpublish-modal').getByLabel('Unpublish');\n this.dropdown = page.locator('select#native');\n this.setADateTxt = page.getByLabel('Set a date...');\n this.chooseMediaPickerBtn = page.locator('umb-property-editor-ui-media-picker #btn-add');\n this.chooseMemberPickerBtn = page.locator('umb-property-editor-ui-member-picker #btn-add');\n this.numericTxt = page.locator('umb-property-editor-ui-number input');\n this.addMultiURLPickerBtn = page.locator('umb-property-editor-ui-multi-url-picker #btn-add');\n this.linkTxt = page.getByLabel('URL', {exact: true});\n this.anchorQuerystringTxt = page.getByLabel('#value or ?key=value');\n this.linkTitleTxt = page.getByLabel('Link title');\n this.tagItems = page.locator('uui-tag');\n this.removeFilesBtn = page.locator('umb-input-upload-field [label=\"Remove file(s)\"]');\n this.toggleBtn = page.locator('umb-property-editor-ui-toggle #slider');\n this.toggleInput = page.locator('umb-property-editor-ui-toggle #input');\n this.documentTypeWorkspace = this.sidebarModal.locator('umb-document-type-workspace-editor');\n this.addMultipleTextStringBtn = page.locator('umb-input-multiple-text-string').getByLabel('Add');\n this.multipleTextStringValueTxt = page.locator('umb-input-multiple-text-string').getByLabel('Value');\n this.markdownTxt = page.locator('umb-input-markdown textarea');\n this.codeEditorTxt = page.locator('umb-code-editor textarea');\n this.sliderInput = page.locator('umb-property-editor-ui-slider #input');\n this.tabItems = page.locator('uui-tab');\n this.documentWorkspace = page.locator('umb-document-workspace-editor');\n this.searchTxt = this.documentWorkspace.getByLabel('Search', {exact: true});\n this.variantSelectorBtn = page.locator('#variant-selector-toggle');\n this.variantAddModeBtn = page.locator('.variant-selector-switch-button.add-mode');\n this.saveAndCloseBtn = page.getByLabel('Save and close');\n this.documentTreeItem = page.locator('umb-document-tree-item');\n this.documentLanguageSelect = page.locator('umb-app-language-select');\n this.documentLanguageSelectPopover = page.locator('umb-popover-layout');\n this.documentReadOnly = this.documentWorkspace.locator('#name-input').getByText('Read-only');\n // Info tab\n this.infoTab = page.getByRole('tab', {name: 'Info'});\n this.linkContent = page.locator('.link-item');\n this.historyItems = page.locator('umb-history-item');\n this.generalItem = page.locator('.general-item');\n this.publicationStatus = this.generalItem.filter({hasText: 'Publication Status'}).locator('uui-tag');\n this.createdDate = this.generalItem.filter({hasText: 'Created'}).locator('umb-localize-date');\n this.editDocumentTypeBtn = this.generalItem.filter({hasText: 'Document Type'}).locator('#button');\n this.addTemplateBtn = this.generalItem.filter({hasText: 'Template'}).locator('#button');\n this.id = this.generalItem.filter({hasText: 'Id'}).locator('span');\n // Culture and Hostname\n this.cultureAndHostnamesBtn = page.getByLabel(/^Culture and Hostnames(\\.\\.\\.)?$/);\n this.cultureLanguageDropdownBox = page.locator('[headline=\"Culture\"]').getByLabel('combobox-input');\n this.addNewDomainBtn = page.getByLabel('Add new domain');\n this.domainTxt = page.getByLabel('Domain', {exact: true});\n this.domainLanguageDropdownBox = page.locator('[headline=\"Domains\"]').getByLabel('combobox-input');\n this.deleteDomainBtn = page.locator('[headline=\"Domains\"] [name=\"icon-trash\"] svg');\n this.domainComboBox = page.locator('#domains uui-combobox');\n this.saveModalBtn = this.sidebarModal.getByLabel('Save', {exact: true});\n this.resetFocalPointBtn = this.page.getByLabel('Reset focal point');\n // List View\n this.enterNameInContainerTxt = this.container.getByLabel('Enter a name...');\n this.listView = page.locator('umb-document-table-collection-view');\n this.nameBtn = page.getByRole('button', {name: 'Name'});\n this.listViewTableRow = this.listView.locator('uui-table-row');\n this.publishSelectedListItems = page.getByRole('button', {name: /^Publish(\\.\\.\\.)?$/});\n this.unpublishSelectedListItems = page.getByRole('button', {name: /^Unpublish(\\.\\.\\.)?$/});\n this.duplicateToSelectedListItems = page.getByRole('button', {name: /^Duplicate to(\\.\\.\\.)?$/});\n this.moveToSelectedListItems = page.getByRole('button', {name: /^Move to(\\.\\.\\.)?$/});\n this.trashSelectedListItems = page.getByRole('button', {name: /^Trash(\\.\\.\\.)?$/});\n this.modalContent = page.locator('umb-tree-picker-modal');\n this.trashBtn = page.getByLabel(/^Trash(\\.\\.\\.)?$/);\n this.exactTrashBtn = page.getByRole('button', {name: 'Trash', exact: true});\n this.documentListView = page.locator('umb-document-table-collection-view');\n this.documentGridView = page.locator('umb-document-grid-collection-view');\n this.documentWorkspaceEditor = page.locator('umb-workspace-editor');\n this.documentBlueprintModal = page.locator('umb-create-blueprint-modal');\n this.documentBlueprintModalEnterNameTxt = this.documentBlueprintModal.locator('input');\n this.documentBlueprintSaveBtn = this.documentBlueprintModal.getByLabel('Save');\n this.emptyRecycleBinBtn = page.getByLabel('Empty Recycle Bin');\n this.confirmEmptyRecycleBinBtn = this.page.locator('#confirm').getByLabel('Empty Recycle Bin', {exact: true});\n this.duplicateToBtn = page.getByRole('button', {name: 'Duplicate to'});\n this.moveToBtn = page.getByRole('button', {name: 'Move to'});\n this.duplicateBtn = page.getByLabel('Duplicate', {exact: true});\n this.contentTreeRefreshBtn = page.locator('#header').getByLabel('#actions_refreshNode');\n this.sortChildrenBtn = page.getByRole('button', {name: 'Sort children'});\n this.rollbackBtn = page.getByRole('button', {name: 'Rollback'});\n this.rollbackContainerBtn = this.container.getByLabel('Rollback');\n this.publicAccessBtn = page.getByRole('button', {name: 'Public Access'});\n this.uuiCheckbox = page.locator('uui-checkbox');\n this.sortBtn = page.getByLabel('Sort', {exact: true});\n this.modalChooseBtn = page.locator('umb-tree-picker-modal').getByLabel('Choose');\n this.containerSaveBtn = this.container.getByLabel('Save');\n this.groupBasedProtectionBtn = page.locator('span').filter({hasText: 'Group based protection'});\n this.nextBtn = page.getByLabel('Next');\n this.chooseMemberGroupBtn = page.locator('umb-input-member-group').getByLabel('Choose');\n this.selectLoginPageDocument = page.locator('.select-item').filter({hasText: 'Login Page'}).locator('umb-input-document');\n this.selectErrorPageDocument = page.locator('.select-item').filter({hasText: 'Error Page'}).locator('umb-input-document');\n this.rollbackItem = page.locator('.rollback-item');\n this.expandChildItemsForContent = page.getByLabel('Expand child items for Content');\n this.actionsMenu = page.locator('uui-scroll-container');\n this.linkToDocumentBtn = page.getByLabel('Link to document');\n this.linkToMediaBtn = page.getByLabel('Link to media');\n this.umbDocumentCollection = page.locator('umb-document-collection');\n this.documentTableColumnName = this.listView.locator('umb-document-table-column-name');\n //Block Grid - Block List\n this.addBlockElementBtn = page.locator('uui-button-group uui-button').first();\n this.formValidationMessage = page.locator('#splitViews umb-form-validation-message #messages');\n this.blockName = page.locator('#editor [slot=\"name\"]');\n this.addBlockSettingsTabBtn = page.locator('umb-body-layout').getByRole('tab', {name: 'Settings'});\n this.editBlockEntryBtn = page.locator('[label=\"edit\"] svg');\n this.deleteBlockEntryBtn = page.locator('[label=\"delete\"] svg');\n this.blockGridEntry = page.locator('umb-block-grid-entry');\n this.blockListEntry = page.locator('umb-block-list-entry');\n // TipTap\n this.tipTapPropertyEditor = page.locator('umb-property-editor-ui-tiptap');\n this.tipTapEditor = this.tipTapPropertyEditor.locator('#editor .tiptap');\n this.uploadedSvgThumbnail = this.page.locator('umb-input-upload-field-svg img');\n }\n\n async enterContentName(name: string) {\n await expect(this.contentNameTxt).toBeVisible();\n await this.contentNameTxt.clear();\n await this.contentNameTxt.fill(name);\n }\n\n async clickSaveAndPublishButton() {\n await expect(this.saveAndPublishBtn).toBeVisible();\n await this.saveAndPublishBtn.click();\n }\n\n async clickActionsButton() {\n await this.actionsBtn.click();\n }\n\n async clickPublishButton() {\n await this.publishBtn.click();\n }\n\n async clickUnpublishButton() {\n await this.unpublishBtn.click();\n }\n\n async clickReloadChildrenThreeDotsButton() {\n await this.reloadChildrenThreeDotsBtn.click();\n }\n\n async clickActionsMenuAtRoot() {\n await this.actionMenuForContentBtn.click();\n }\n\n async goToContentWithName(contentName: string) {\n const contentWithNameLocator = this.menuItemTree.getByText(contentName, {exact: true});\n await expect(contentWithNameLocator).toBeVisible();\n await contentWithNameLocator.click();\n }\n\n async clickActionsMenuForContent(name: string) {\n await this.clickActionsMenuForName(name);\n }\n\n async clickCaretButtonForContentName(name: string) {\n await this.menuItemTree.filter({hasText: name}).last().locator('#caret-button').last().click();\n }\n\n async waitForModalVisible() {\n await this.openedModal.waitFor({state: 'attached'});\n }\n\n async waitForModalHidden() {\n await this.openedModal.waitFor({state: 'hidden'});\n }\n\n async enterTextstring(text: string) {\n await expect(this.textstringTxt).toBeVisible();\n await this.textstringTxt.clear();\n await this.textstringTxt.fill(text);\n }\n\n async doesContentTreeHaveName(contentName: string) {\n await expect(this.contentTree).toContainText(contentName);\n }\n\n async enterRichTextArea(value: string) {\n await expect(this.richTextAreaTxt).toBeVisible();\n await this.richTextAreaTxt.fill(value);\n }\n\n async enterTextArea(value: string) {\n await expect(this.textAreaTxt).toBeVisible();\n await this.page.waitForTimeout(200);\n await this.textAreaTxt.clear();\n await this.textAreaTxt.fill(value);\n }\n\n async clickConfirmToUnpublishButton() {\n await this.confirmToUnpublishBtn.click();\n }\n\n async clickCreateDocumentBlueprintButton() {\n await this.createDocumentBlueprintBtn.click();\n }\n\n // Info Tab\n async clickInfoTab() {\n await expect(this.infoTab).toBeVisible();\n await this.infoTab.click();\n }\n\n async doesLinkHaveText(text: string) {\n await expect(this.linkContent).toHaveText(text);\n }\n\n async doesHistoryHaveText(text: string) {\n await expect(this.historyItems).toHaveText(text);\n }\n\n async doesPublicationStatusHaveText(text: string) {\n await expect(this.publicationStatus).toHaveText(text);\n }\n\n async doesCreatedDateHaveText(text: string) {\n await expect(this.createdDate).toHaveText(text);\n }\n\n async doesIdHaveText(text: string) {\n await expect(this.id).toHaveText(text);\n }\n\n async clickEditDocumentTypeButton() {\n await this.editDocumentTypeBtn.click();\n }\n\n async clickAddTemplateButton() {\n await this.addTemplateBtn.click();\n }\n\n async clickDocumentTypeByName(documentTypeName: string) {\n await this.page.locator('uui-ref-node-document-type[name=\"' + documentTypeName + '\"]').click();\n }\n\n async clickTemplateByName(templateName: string) {\n await this.page.locator('uui-ref-node[name=\"' + templateName + '\"]').click();\n }\n\n async isDocumentTypeModalVisible(documentTypeName: string) {\n await expect(this.documentTypeWorkspace.filter({hasText: documentTypeName})).toBeVisible();\n }\n\n async isTemplateModalVisible(templateName: string) {\n await expect(this.breadcrumbsTemplateModal.getByText(templateName)).toBeVisible();\n }\n\n async clickEditTemplateByName(templateName: string) {\n await this.page.locator('uui-ref-node[name=\"' + templateName + '\"]').getByLabel('Choose').click();\n }\n\n async changeTemplate(oldTemplate: string, newTemplate: string) {\n await this.clickEditTemplateByName(oldTemplate);\n await this.sidebarModal.getByLabel(newTemplate).click();\n await this.clickChooseModalButton();\n }\n\n async isTemplateNameDisabled(templateName: string) {\n await expect(this.sidebarModal.getByLabel(templateName)).toBeDisabled();\n }\n\n // Culture and Hostnames\n async clickCultureAndHostnamesButton() {\n await this.cultureAndHostnamesBtn.click();\n }\n\n async selectCultureLanguageOption(option: string) {\n await this.cultureLanguageDropdownBox.click();\n await this.page.getByText(option).click();\n }\n\n async selectDomainLanguageOption(option: string, index: number = 0) {\n await this.domainLanguageDropdownBox.nth(index).click();\n await this.domainComboBox.nth(index).getByText(option).click();\n }\n\n async clickAddNewDomainButton() {\n await this.addNewDomainBtn.click();\n }\n\n async enterDomain(value: string, index: number = 0) {\n await this.domainTxt.nth(index).clear();\n await this.domainTxt.nth(index).fill(value);\n }\n\n async clickDeleteDomainButton() {\n await this.deleteDomainBtn.first().click();\n }\n\n async clickSaveModalButton() {\n await this.saveModalBtn.click();\n }\n\n async chooseDocumentType(documentTypeName: string) {\n await this.documentTypeNode.filter({hasText: documentTypeName}).click();\n }\n\n // Approved Color\n async clickApprovedColorByValue(value: string) {\n await this.page.locator('uui-color-swatch[value=\"#' + value + '\"] #swatch').click();\n }\n\n // Checkbox list\n async chooseCheckboxListOption(optionValue: string) {\n await this.page.locator('uui-checkbox[value=\"' + optionValue + '\"] svg').click();\n }\n\n // Content Picker\n async addContentPicker(contentName: string) {\n await this.clickChooseButton();\n await this.sidebarModal.getByText(contentName).click();\n await this.chooseModalBtn.click();\n }\n\n async isOpenButtonVisibleInContentPicker(contentPickerName: string, isVisible: boolean = true) {\n return expect(this.page.getByLabel('Open ' + contentPickerName)).toBeVisible({visible: isVisible});\n }\n\n async clickContentPickerOpenButton(contentPickerName: string) {\n await this.page.getByLabel('Open ' + contentPickerName).click();\n }\n\n async isNodeOpenForContentPicker(contentPickerName: string) {\n return expect(this.openedModal.getByText(contentPickerName)).toBeVisible();\n }\n\n async isContentNameVisible(contentName: string, isVisible: boolean = true) {\n return expect(this.sidebarModal.getByText(contentName)).toBeVisible({visible: isVisible});\n }\n\n async isContentInTreeVisible(name: string, isVisible: boolean = true) {\n await expect(this.documentTreeItem.getByLabel(name, {exact: true})).toBeVisible({visible: isVisible});\n }\n\n async isChildContentInTreeVisible(parentName: string, childName: string, isVisible: boolean = true) {\n await expect(this.documentTreeItem.locator('[label=\"' + parentName + '\"]').getByLabel(childName)).toBeVisible({visible: isVisible});\n }\n\n async removeContentPicker(contentPickerName: string) {\n const contentPickerLocator = this.page.locator('[name=\"' + contentPickerName + '\"]');\n await contentPickerLocator.hover();\n await contentPickerLocator.getByLabel('Remove').click();\n await this.clickConfirmRemoveButton();\n }\n\n // Dropdown\n async chooseDropdownOption(optionValues: string[]) {\n await this.dropdown.selectOption(optionValues);\n }\n\n // Date Picker\n async enterADate(date: string) {\n await this.setADateTxt.fill(date);\n }\n\n // Media Picker\n async clickChooseMediaPickerButton() {\n await this.chooseMediaPickerBtn.click();\n }\n\n async clickChooseButtonAndSelectMediaWithName(mediaName: string) {\n await this.clickChooseMediaPickerButton();\n await this.selectMediaWithName(mediaName);\n }\n\n async removeMediaPickerByName(mediaPickerName: string) {\n await this.page.locator('[name=\"' + mediaPickerName + '\"] [label=\"Remove\"] svg').click();\n await this.clickConfirmRemoveButton();\n }\n\n async isMediaNameVisible(mediaName: string, isVisible: boolean = true) {\n return expect(this.mediaCardItems.filter({hasText: mediaName})).toBeVisible({visible: isVisible});\n }\n\n async clickResetFocalPointButton() {\n await this.resetFocalPointBtn.click();\n }\n\n async setFocalPoint(widthPercentage: number = 50, heightPercentage: number = 50) {\n await this.page.waitForTimeout(1000);\n const element = await this.page.locator('#image').boundingBox();\n if (!element) {\n throw new Error('Element not found');\n }\n\n const centerX = element.x + element.width / 2;\n const centerY = element.y + element.height / 2;\n\n const x = element.x + (element.width * widthPercentage) / 100;\n const y = element.y + (element.height * heightPercentage) / 100;\n\n await this.page.waitForTimeout(200);\n await this.page.mouse.move(centerX, centerY, {steps: 5});\n await this.page.waitForTimeout(200);\n await this.page.mouse.down();\n await this.page.waitForTimeout(200);\n await this.page.mouse.move(x, y);\n await this.page.waitForTimeout(200);\n await this.page.mouse.up();\n }\n\n // Member Picker\n async clickChooseMemberPickerButton() {\n await this.chooseMemberPickerBtn.click();\n }\n\n async selectMemberByName(memberName: string) {\n await this.sidebarModal.getByText(memberName, {exact: true}).click();\n }\n\n async removeMemberPickerByName(memberName: string) {\n await this.page.locator('[name=\"' + memberName + '\"]').getByLabel('Remove').click();\n await this.clickConfirmRemoveButton();\n }\n\n // Numeric\n async enterNumeric(number: number) {\n await this.numericTxt.clear();\n await this.numericTxt.fill(number.toString());\n }\n\n // Radiobox\n async chooseRadioboxOption(optionValue: string) {\n await this.page.locator('uui-radio[value=\"' + optionValue + '\"] #button').click();\n }\n\n // Tags\n async clickPlusIconButton() {\n await this.plusIconBtn.click();\n }\n\n async enterTag(tagName: string) {\n await this.enterTagTxt.fill(tagName);\n await this.enterTagTxt.press('Enter');\n }\n\n async removeTagByName(tagName: string) {\n await this.tagItems.filter({hasText: tagName}).locator('svg').click();\n }\n\n // Multi URL Picker\n async clickAddMultiURLPickerButton() {\n await this.addMultiURLPickerBtn.click();\n }\n\n async selectLinkByName(linkName: string) {\n await this.sidebarModal.getByText(linkName, {exact: true}).click();\n }\n\n async enterLink(value: string, toPress: boolean = false) {\n await this.linkTxt.clear();\n if (toPress) {\n await this.linkTxt.press(value);\n } else {\n await this.linkTxt.fill(value);\n } \n }\n\n async enterAnchorOrQuerystring(value: string, toPress: boolean = false) {\n await this.anchorQuerystringTxt.clear();\n if (toPress) {\n await this.anchorQuerystringTxt.press(value);\n } else {\n await this.anchorQuerystringTxt.fill(value);\n } \n }\n\n async enterLinkTitle(value: string, toPress: boolean = false) {\n await this.linkTitleTxt.clear();\n if (toPress) {\n await this.linkTitleTxt.press(value);\n } else {\n await this.linkTitleTxt.fill(value);\n } \n }\n\n async removeUrlPickerByName(linkName: string) {\n await this.page.locator('[name=\"' + linkName + '\"]').getByLabel('Remove').click();\n await this.clickConfirmRemoveButton();\n }\n\n async clickEditUrlPickerButtonByName(linkName: string) {\n await this.page.locator('[name=\"' + linkName + '\"]').getByLabel('Edit').click();\n }\n\n // Upload\n async clickRemoveFilesButton() {\n await this.removeFilesBtn.click();\n }\n\n // True/false\n async clickToggleButton() {\n await this.toggleBtn.click();\n }\n\n async doesToggleHaveLabel(label: string) {\n return await expect(this.toggleInput).toHaveAttribute('aria-label', label);\n }\n\n // Multiple Text String\n async clickAddMultipleTextStringButton() {\n await this.addMultipleTextStringBtn.click();\n }\n\n async enterMultipleTextStringValue(value: string) {\n await this.multipleTextStringValueTxt.clear();\n await this.multipleTextStringValueTxt.fill(value);\n }\n\n async addMultipleTextStringItem(value: string) {\n await this.clickAddMultipleTextStringButton();\n await this.enterMultipleTextStringValue(value);\n }\n\n // Code Editor\n async enterCodeEditorValue(value: string) {\n await this.codeEditorTxt.clear();\n await this.codeEditorTxt.fill(value);\n }\n\n // Markdown Editor\n async enterMarkdownEditorValue(value: string) {\n await this.markdownTxt.clear();\n await this.markdownTxt.fill(value);\n }\n\n // Slider\n async changeSliderValue(value: string) {\n await this.sliderInput.fill(value);\n }\n\n async isDocumentTypeNameVisible(contentName: string, isVisible: boolean = true) {\n return expect(this.sidebarModal.getByText(contentName)).toBeVisible({visible: isVisible});\n }\n\n async doesModalHaveText(text: string) {\n return expect(this.sidebarModal).toContainText(text);\n }\n\n // Collection tab\n async isTabNameVisible(tabName: string) {\n return expect(this.tabItems.filter({hasText: tabName})).toBeVisible();\n }\n\n async doesDocumentHaveName(name: string) {\n return expect(this.enterAName).toHaveValue(name);\n }\n\n async doesDocumentTableColumnNameValuesMatch(expectedValues: string[]) {\n return expectedValues.forEach((text, index) => {\n expect(this.documentTableColumnName.nth(index)).toHaveText(text);\n });\n }\n\n async searchByKeywordInCollection(keyword: string) {\n await this.searchTxt.clear();\n await this.searchTxt.fill(keyword);\n await this.searchTxt.press('Enter');\n await this.page.waitForTimeout(500);\n }\n\n async clickVariantSelectorButton() {\n await this.variantSelectorBtn.click();\n }\n\n async clickVariantAddModeButton() {\n await this.variantAddModeBtn.first().click();\n await this.page.waitForTimeout(500);\n }\n\n async clickSaveAndCloseButton() {\n await this.saveAndCloseBtn.click();\n }\n\n // List View\n async clickCreateContentWithName(name: string) {\n await expect(this.page.getByLabel('Create ' + name)).toBeVisible();\n await this.page.getByLabel('Create ' + name).click();\n }\n\n async enterNameInContainer(name: string) {\n await expect(this.enterNameInContainerTxt).toBeVisible();\n await this.enterNameInContainerTxt.clear();\n await this.enterNameInContainerTxt.fill(name);\n }\n\n async goToContentInListViewWithName(contentName: string) {\n await this.listView.getByLabel(contentName).click();\n }\n\n async doesListViewHaveNoItemsInList() {\n await expect(this.listView.filter({hasText: 'There are no items to show in the list.'})).toBeVisible();\n }\n\n async doesContentListHaveNoItemsInList() {\n await expect(this.umbDocumentCollection.filter({hasText: 'No items'})).toBeVisible();\n }\n\n async clickNameButtonInListView() {\n await this.nameBtn.click();\n }\n\n async doesFirstItemInListViewHaveName(name: string) {\n await expect(this.listViewTableRow.first()).toContainText(name);\n }\n\n async doesListViewContainCount(count: number) {\n await expect(this.listViewTableRow).toHaveCount(count);\n }\n\n async selectContentWithNameInListView(name: string) {\n const contentInListViewLocator = this.listViewTableRow.filter({hasText: name});\n await expect(contentInListViewLocator).toBeVisible();\n await contentInListViewLocator.click();\n }\n\n async clickPublishSelectedListItems() {\n await this.publishSelectedListItems.click();\n }\n\n async clickUnpublishSelectedListItems() {\n await this.unpublishSelectedListItems.click();\n }\n\n async clickDuplicateToSelectedListItems() {\n await expect(this.duplicateToSelectedListItems).toBeVisible();\n // This force click is needed \n await this.duplicateToSelectedListItems.click({force: true});\n }\n\n async clickMoveToSelectedListItems() {\n await expect(this.moveToSelectedListItems).toBeVisible();\n // This force click is needed\n await this.moveToSelectedListItems.click({force: true});\n }\n\n async clickTrashSelectedListItems() {\n await this.trashSelectedListItems.click();\n }\n\n async selectDocumentWithNameAtRoot(name: string) {\n await this.clickCaretButtonForName('Content');\n const documentWithNameLocator = this.modalContent.getByLabel(name);\n await expect(documentWithNameLocator).toBeVisible();\n await documentWithNameLocator.click();\n await this.clickChooseButton();\n }\n\n async clickTrashButton() {\n await expect(this.trashBtn).toBeVisible();\n await this.trashBtn.click();\n }\n\n async clickExactTrashButton() {\n await this.exactTrashBtn.click();\n }\n\n async isDocumentListViewVisible(isVisible: boolean = true) {\n await expect(this.documentListView).toBeVisible({visible: isVisible});\n }\n\n async isDocumentGridViewVisible(isVisible: boolean = true) {\n await expect(this.documentGridView).toBeVisible({visible: isVisible});\n }\n\n async changeDocumentSectionLanguage(newLanguageName: string) {\n await this.documentLanguageSelect.click();\n const documentSectionLanguageLocator = this.documentLanguageSelectPopover.getByLabel(newLanguageName);\n await expect(documentSectionLanguageLocator).toBeVisible();\n // Force click is needed\n await documentSectionLanguageLocator.click({force: true});\n }\n\n async doesDocumentSectionHaveLanguageSelected(languageName: string) {\n await expect(this.documentLanguageSelect).toHaveText(languageName);\n }\n\n async isDocumentReadOnly(isVisible: boolean = true) {\n await expect(this.documentReadOnly).toBeVisible({visible: isVisible});\n }\n\n async isDocumentNameInputEditable(isEditable: boolean = true) {\n await expect(this.contentNameTxt).toBeVisible();\n await expect(this.contentNameTxt).toBeEditable({editable: isEditable});\n }\n\n async isActionsMenuForRecycleBinVisible(isVisible: boolean = true) {\n await this.isActionsMenuForNameVisible('Recycle Bin', isVisible);\n }\n\n async isActionsMenuForRootVisible(isVisible: boolean = true) {\n await this.isActionsMenuForNameVisible('Content', isVisible);\n }\n\n async clickEmptyRecycleBinButton() {\n await this.recycleBinMenuItem.hover();\n await expect(this.emptyRecycleBinBtn).toBeVisible();\n // Force click is needed\n await this.emptyRecycleBinBtn.click({force: true});\n }\n\n async clickConfirmEmptyRecycleBinButton() {\n await this.confirmEmptyRecycleBinBtn.click();\n }\n\n async isDocumentPropertyEditable(propertyName: string, isEditable: boolean = true) {\n const propertyLocator = this.documentWorkspace.locator('umb-property').filter({hasText: propertyName}).locator('#input');\n await expect(propertyLocator).toBeVisible();\n await expect(propertyLocator).toBeEditable({editable: isEditable});\n }\n\n async doesDocumentPropertyHaveValue(propertyName: string, value: string) {\n const propertyLocator = this.documentWorkspace.locator('umb-property').filter({hasText: propertyName}).locator('#input');\n await expect(propertyLocator).toHaveValue(value);\n }\n\n async isDocumentTreeEmpty() {\n await expect(this.documentTreeItem).toHaveCount(0);\n }\n\n async doesDocumentWorkspaceContainName(name: string) {\n await expect(this.documentWorkspaceEditor.locator('#input')).toHaveValue(name);\n }\n\n async doesDocumentWorkspaceHaveText(text: string) {\n return expect(this.documentWorkspace).toContainText(text);\n }\n\n async enterDocumentBlueprintName(name: string) {\n await this.documentBlueprintModalEnterNameTxt.clear();\n await this.documentBlueprintModalEnterNameTxt.fill(name);\n }\n\n async clickSaveDocumentBlueprintButton() {\n await this.documentBlueprintSaveBtn.click();\n }\n\n async clickDuplicateToButton() {\n await this.duplicateToBtn.click();\n }\n\n async clickDuplicateButton() {\n await this.duplicateBtn.click();\n }\n\n async clickMoveToButton() {\n await this.moveToBtn.click();\n }\n\n async moveToContentWithName(parentNames: string[], moveTo: string) {\n await this.expandChildItemsForContent.click();\n for (const contentName of parentNames) {\n await this.container.getByLabel('Expand child items for ' + contentName).click();\n }\n await this.container.getByLabel(moveTo).click();\n await this.clickChooseContainerButton();\n }\n\n async isCaretButtonVisibleForContentName(contentName: string, isVisible: boolean = true) {\n await expect(this.page.locator('[label=\"' + contentName + '\"]').getByLabel('Expand child items for ')).toBeVisible({visible: isVisible});\n }\n\n async reloadContentTree() {\n await expect(this.contentTreeRefreshBtn).toBeVisible();\n // Force click is needed\n await this.contentTreeRefreshBtn.click({force: true});\n }\n\n async clickSortChildrenButton() {\n await this.sortChildrenBtn.click();\n }\n\n async clickRollbackButton() {\n await this.rollbackBtn.click();\n }\n\n async clickRollbackContainerButton() {\n await this.rollbackContainerBtn.click();\n }\n\n async clickLatestRollBackItem() {\n await this.rollbackItem.last().click();\n }\n\n async clickPublicAccessButton() {\n await this.publicAccessBtn.click();\n }\n\n async addGroupBasedPublicAccess(memberGroupName: string, documentName: string) {\n await this.groupBasedProtectionBtn.click();\n await this.nextBtn.click();\n await this.chooseMemberGroupBtn.click();\n await this.page.getByLabel(memberGroupName).click();\n await this.clickSubmitButton();\n await this.selectLoginPageDocument.click();\n await this.container.getByLabel(documentName, {exact: true}).click();\n await this.modalChooseBtn.click();\n await this.selectErrorPageDocument.click();\n await this.container.getByLabel(documentName, {exact: true}).click();\n await this.modalChooseBtn.click();\n await this.containerSaveBtn.click();\n }\n\n async sortChildrenDragAndDrop(dragFromSelector: Locator, dragToSelector: Locator, verticalOffset: number = 0, horizontalOffset: number = 0, steps: number = 5) {\n await expect(dragFromSelector).toBeVisible();\n await expect(dragToSelector).toBeVisible();\n const targetLocation = await dragToSelector.boundingBox();\n const elementCenterX = targetLocation!.x + targetLocation!.width / 2;\n const elementCenterY = targetLocation!.y + targetLocation!.height / 2;\n await dragFromSelector.hover();\n await this.page.mouse.move(10, 10);\n await dragFromSelector.hover();\n await this.page.mouse.down();\n await this.page.waitForTimeout(400);\n await this.page.mouse.move(elementCenterX + horizontalOffset, elementCenterY + verticalOffset, {steps: steps});\n await this.page.waitForTimeout(400);\n // If we do not have this, the drag and drop will not work\n await dragToSelector.hover();\n await this.page.mouse.up();\n }\n\n async clickSortButton() {\n await this.sortBtn.click();\n }\n\n async doesIndexDocumentInTreeContainName(parentName: string, childName: string, index: number) {\n await expect(this.documentTreeItem.locator('[label=\"' + parentName + '\"]').locator('umb-tree-item').nth(index).locator('#label')).toHaveText(childName);\n }\n\n async selectMemberGroup(memberGroupName: string) {\n await this.uuiCheckbox.getByLabel(memberGroupName).click();\n }\n\n async isPermissionInActionsMenuVisible(permissionName: string, isVisible: boolean = true) {\n await expect(this.actionsMenu.getByRole('button', {\n name: permissionName,\n exact: true\n })).toBeVisible({visible: isVisible});\n }\n\n async clickLinkToDocumentButton() {\n await this.linkToDocumentBtn.click();\n }\n\n async clickLinkToMediaButton() {\n await this.linkToMediaBtn.click();\n }\n \n // Block Grid - Block List\n async clickAddBlockElementButton() {\n await this.addBlockElementBtn.click();\n }\n\n async isAddBlockElementButtonVisible(isVisible: boolean = true) {\n await expect(this.addBlockElementBtn).toBeVisible({visible: isVisible});\n }\n\n async isAddBlockElementButtonWithLabelVisible(label: string, isVisible: boolean = true) {\n await expect(this.addBlockElementBtn.getByLabel(label)).toBeVisible({visible: isVisible});\n }\n\n async doesFormValidationMessageContainText(text: string) {\n await expect(this.formValidationMessage).toContainText(text);\n }\n\n async doesBlockElementHaveName(name: string) {\n await expect(this.blockName).toContainText(name);\n }\n\n async clickAddBlockSettingsTabButton() {\n await this.addBlockSettingsTabBtn.click();\n }\n\n async clickEditBlockGridBlockButton() {\n await this.blockGridEntry.hover();\n await this.editBlockEntryBtn.click();\n }\n\n async clickDeleteBlockGridBlockButton() {\n await this.blockGridEntry.hover();\n await this.deleteBlockEntryBtn.click();\n }\n\n async clickEditBlockListBlockButton() {\n await this.blockListEntry.hover();\n await this.editBlockEntryBtn.click();\n }\n\n async clickDeleteBlockListBlockButton() {\n await this.blockListEntry.hover();\n await this.deleteBlockEntryBtn.click();\n }\n\n // TipTap\n async enterRTETipTapEditor(value: string) {\n await this.tipTapEditor.clear();\n await this.tipTapEditor.fill(value);\n }\n\n async clickTipTapToolbarIconWithTitle(iconTitle: string) {\n await this.tipTapPropertyEditor.getByTitle(iconTitle, {exact: true}).locator('svg').click();\n }\n\n async doesUploadedSvgThumbnailHaveSrc(imageSrc: string) {\n await expect(this.uploadedSvgThumbnail).toHaveAttribute('src', imageSrc);\n }\n}"]}
|
|
1
|
+
{"version":3,"file":"ContentUiHelper.js","sourceRoot":"","sources":["../../../lib/helpers/ContentUiHelper.ts"],"names":[],"mappings":"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","sourcesContent":["import {Page, Locator, expect} from \"@playwright/test\";\nimport {UiBaseLocators} from \"./UiBaseLocators\";\n\nexport class ContentUiHelper extends UiBaseLocators {\n private readonly contentNameTxt: Locator;\n private readonly saveAndPublishBtn: Locator;\n private readonly publishBtn: Locator;\n private readonly unpublishBtn: Locator;\n private readonly actionMenuForContentBtn: Locator;\n private readonly openedModal: Locator;\n private readonly textstringTxt: Locator;\n private readonly infoTab: Locator;\n private readonly linkContent: Locator;\n private readonly historyItems: Locator;\n private readonly generalItem: Locator;\n private readonly publicationStatus: Locator;\n private readonly createdDate: Locator;\n private readonly editDocumentTypeBtn: Locator;\n private readonly addTemplateBtn: Locator;\n private readonly id: Locator;\n private readonly cultureAndHostnamesBtn: Locator;\n private readonly cultureLanguageDropdownBox: Locator;\n private readonly addNewDomainBtn: Locator;\n private readonly domainTxt: Locator;\n private readonly domainLanguageDropdownBox: Locator;\n private readonly deleteDomainBtn: Locator;\n private readonly reloadChildrenThreeDotsBtn: Locator;\n private readonly contentTree: Locator;\n private readonly richTextAreaTxt: Locator;\n private readonly textAreaTxt: Locator;\n private readonly plusIconBtn: Locator;\n private readonly enterTagTxt: Locator;\n private readonly menuItemTree: Locator;\n private readonly domainComboBox: Locator;\n private readonly confirmToUnpublishBtn: Locator;\n private readonly saveModalBtn: Locator;\n private readonly dropdown: Locator;\n private readonly setADateTxt: Locator;\n private readonly chooseMediaPickerBtn: Locator;\n private readonly chooseMemberPickerBtn: Locator;\n private readonly numericTxt: Locator;\n private readonly resetFocalPointBtn: Locator;\n private readonly addMultiURLPickerBtn: Locator;\n private readonly linkTxt: Locator;\n private readonly anchorQuerystringTxt: Locator;\n private readonly linkTitleTxt: Locator;\n private readonly tagItems: Locator;\n private readonly removeFilesBtn: Locator;\n private readonly toggleBtn: Locator;\n private readonly toggleInput: Locator;\n private readonly documentTypeWorkspace: Locator;\n private readonly addMultipleTextStringBtn: Locator;\n private readonly multipleTextStringValueTxt: Locator;\n private readonly markdownTxt: Locator;\n private readonly codeEditorTxt: Locator;\n private readonly sliderInput: Locator;\n private readonly tabItems: Locator;\n private readonly documentWorkspace: Locator;\n private readonly searchTxt: Locator;\n private readonly variantSelectorBtn: Locator;\n private readonly variantAddModeBtn: Locator;\n private readonly saveAndCloseBtn: Locator;\n private readonly enterNameInContainerTxt: Locator;\n private readonly listView: Locator;\n private readonly nameBtn: Locator;\n private readonly listViewTableRow: Locator;\n private readonly publishSelectedListItems: Locator;\n private readonly unpublishSelectedListItems: Locator;\n private readonly duplicateToSelectedListItems: Locator;\n private readonly moveToSelectedListItems: Locator;\n private readonly trashSelectedListItems: Locator;\n private readonly modalContent: Locator;\n private readonly trashBtn: Locator;\n private readonly documentListView: Locator;\n private readonly documentGridView: Locator;\n private readonly documentTreeItem: Locator;\n private readonly documentLanguageSelect: Locator;\n private readonly documentLanguageSelectPopover: Locator;\n private readonly documentReadOnly: Locator;\n private readonly documentWorkspaceEditor: Locator;\n private readonly documentBlueprintModal: Locator;\n private readonly documentBlueprintModalEnterNameTxt: Locator;\n private readonly documentBlueprintSaveBtn: Locator;\n private readonly exactTrashBtn: Locator;\n private readonly emptyRecycleBinBtn: Locator;\n private readonly confirmEmptyRecycleBinBtn: Locator;\n private readonly duplicateToBtn: Locator;\n private readonly moveToBtn: Locator;\n private readonly duplicateBtn: Locator;\n private readonly contentTreeRefreshBtn: Locator;\n private readonly sortChildrenBtn: Locator;\n private readonly rollbackBtn: Locator;\n private readonly rollbackContainerBtn: Locator;\n private readonly publicAccessBtn: Locator;\n private readonly uuiCheckbox: Locator;\n private readonly sortBtn: Locator;\n private readonly modalChooseBtn: Locator;\n private readonly containerSaveBtn: Locator\n private readonly groupBasedProtectionBtn: Locator;\n private readonly nextBtn: Locator;\n private readonly chooseMemberGroupBtn: Locator;\n private readonly selectLoginPageDocument: Locator;\n private readonly selectErrorPageDocument: Locator;\n private readonly rollbackItem: Locator;\n private readonly expandChildItemsForContent: Locator;\n private readonly actionsMenu: Locator;\n private readonly linkToDocumentBtn: Locator;\n private readonly linkToMediaBtn: Locator;\n private readonly linkToManualBtn: Locator;\n private readonly umbDocumentCollection: Locator;\n private readonly documentTableColumnName: Locator;\n private readonly addBlockElementBtn: Locator;\n private readonly formValidationMessage: Locator;\n private readonly blockName: Locator;\n private readonly addBlockSettingsTabBtn: Locator;\n private readonly editBlockEntryBtn: Locator;\n private readonly deleteBlockEntryBtn: Locator;\n private readonly blockGridEntry: Locator;\n private readonly blockListEntry: Locator;\n private readonly tipTapPropertyEditor: Locator;\n private readonly tipTapEditor: Locator;\n private readonly uploadedSvgThumbnail: Locator;\n private readonly linkPickerModal: Locator;\n\n constructor(page: Page) {\n super(page);\n this.linkPickerModal = page.locator('umb-link-picker-modal');\n this.contentNameTxt = page.locator('#name-input input');\n this.saveAndPublishBtn = page.getByLabel('Save And Publish');\n this.publishBtn = page.getByLabel(/^Publish(\\.\\.\\.)?$/);\n this.unpublishBtn = page.getByLabel(/^Unpublish(\\.\\.\\.)?$/);\n this.actionMenuForContentBtn = page.locator('#header [label=\"Open actions menu\"]');\n this.openedModal = page.locator('uui-modal-container[backdrop]');\n this.textstringTxt = page.locator('umb-property-editor-ui-text-box #input');\n this.reloadChildrenThreeDotsBtn = page.getByRole('button', {name: 'Reload children...'});\n this.contentTree = page.locator('umb-tree[alias=\"Umb.Tree.Document\"]');\n this.richTextAreaTxt = page.frameLocator('iframe[title=\"Rich Text Area\"]').locator('#tinymce');\n this.textAreaTxt = page.locator('umb-property-editor-ui-textarea textarea');\n this.plusIconBtn = page.locator('#icon-add svg');\n this.enterTagTxt = page.getByPlaceholder('Enter tag');\n this.menuItemTree = page.locator('umb-menu-item-tree-default');\n this.confirmToUnpublishBtn = page.locator('umb-document-unpublish-modal').getByLabel('Unpublish');\n this.dropdown = page.locator('select#native');\n this.setADateTxt = page.getByLabel('Set a date...');\n this.chooseMediaPickerBtn = page.locator('umb-property-editor-ui-media-picker #btn-add');\n this.chooseMemberPickerBtn = page.locator('umb-property-editor-ui-member-picker #btn-add');\n this.numericTxt = page.locator('umb-property-editor-ui-number input');\n this.addMultiURLPickerBtn = page.locator('umb-property-editor-ui-multi-url-picker #btn-add');\n this.linkTxt = page.getByLabel('Enter a URL...', {exact: true});\n this.anchorQuerystringTxt = page.getByLabel('#value or ?key=value');\n this.linkTitleTxt = this.linkPickerModal.getByLabel('Title');\n this.tagItems = page.locator('uui-tag');\n this.removeFilesBtn = page.locator('umb-input-upload-field [label=\"Remove file(s)\"]');\n this.toggleBtn = page.locator('umb-property-editor-ui-toggle #slider');\n this.toggleInput = page.locator('umb-property-editor-ui-toggle #input');\n this.documentTypeWorkspace = this.sidebarModal.locator('umb-document-type-workspace-editor');\n this.addMultipleTextStringBtn = page.locator('umb-input-multiple-text-string').getByLabel('Add');\n this.multipleTextStringValueTxt = page.locator('umb-input-multiple-text-string').getByLabel('Value');\n this.markdownTxt = page.locator('umb-input-markdown textarea');\n this.codeEditorTxt = page.locator('umb-code-editor textarea');\n this.sliderInput = page.locator('umb-property-editor-ui-slider #input');\n this.tabItems = page.locator('uui-tab');\n this.documentWorkspace = page.locator('umb-document-workspace-editor');\n this.searchTxt = this.documentWorkspace.getByLabel('Search', {exact: true});\n this.variantSelectorBtn = page.locator('#variant-selector-toggle');\n this.variantAddModeBtn = page.locator('.variant-selector-switch-button.add-mode');\n this.saveAndCloseBtn = page.getByLabel('Save and close');\n this.documentTreeItem = page.locator('umb-document-tree-item');\n this.documentLanguageSelect = page.locator('umb-app-language-select');\n this.documentLanguageSelectPopover = page.locator('umb-popover-layout');\n this.documentReadOnly = this.documentWorkspace.locator('#name-input').getByText('Read-only');\n // Info tab\n this.infoTab = page.getByRole('tab', {name: 'Info'});\n this.linkContent = page.locator('.link-item');\n this.historyItems = page.locator('umb-history-item');\n this.generalItem = page.locator('.general-item');\n this.publicationStatus = this.generalItem.filter({hasText: 'Publication Status'}).locator('uui-tag');\n this.createdDate = this.generalItem.filter({hasText: 'Created'}).locator('umb-localize-date');\n this.editDocumentTypeBtn = this.generalItem.filter({hasText: 'Document Type'}).locator('#button');\n this.addTemplateBtn = this.generalItem.filter({hasText: 'Template'}).locator('#button');\n this.id = this.generalItem.filter({hasText: 'Id'}).locator('span');\n // Culture and Hostname\n this.cultureAndHostnamesBtn = page.getByLabel(/^Culture and Hostnames(\\.\\.\\.)?$/);\n this.cultureLanguageDropdownBox = page.locator('[headline=\"Culture\"]').getByLabel('combobox-input');\n this.addNewDomainBtn = page.getByLabel('Add new domain');\n this.domainTxt = page.getByLabel('Domain', {exact: true});\n this.domainLanguageDropdownBox = page.locator('[headline=\"Domains\"]').getByLabel('combobox-input');\n this.deleteDomainBtn = page.locator('[headline=\"Domains\"] [name=\"icon-trash\"] svg');\n this.domainComboBox = page.locator('#domains uui-combobox');\n this.saveModalBtn = this.sidebarModal.getByLabel('Save', {exact: true});\n this.resetFocalPointBtn = this.page.getByLabel('Reset focal point');\n // List View\n this.enterNameInContainerTxt = this.container.getByLabel('Enter a name...');\n this.listView = page.locator('umb-document-table-collection-view');\n this.nameBtn = page.getByRole('button', {name: 'Name'});\n this.listViewTableRow = this.listView.locator('uui-table-row');\n this.publishSelectedListItems = page.getByRole('button', {name: /^Publish(\\.\\.\\.)?$/});\n this.unpublishSelectedListItems = page.getByRole('button', {name: /^Unpublish(\\.\\.\\.)?$/});\n this.duplicateToSelectedListItems = page.getByRole('button', {name: /^Duplicate to(\\.\\.\\.)?$/});\n this.moveToSelectedListItems = page.getByRole('button', {name: /^Move to(\\.\\.\\.)?$/});\n this.trashSelectedListItems = page.getByRole('button', {name: /^Trash(\\.\\.\\.)?$/});\n this.modalContent = page.locator('umb-tree-picker-modal');\n this.trashBtn = page.getByLabel(/^Trash(\\.\\.\\.)?$/);\n this.exactTrashBtn = page.getByRole('button', {name: 'Trash', exact: true});\n this.documentListView = page.locator('umb-document-table-collection-view');\n this.documentGridView = page.locator('umb-document-grid-collection-view');\n this.documentWorkspaceEditor = page.locator('umb-workspace-editor');\n this.documentBlueprintModal = page.locator('umb-create-blueprint-modal');\n this.documentBlueprintModalEnterNameTxt = this.documentBlueprintModal.locator('input');\n this.documentBlueprintSaveBtn = this.documentBlueprintModal.getByLabel('Save');\n this.emptyRecycleBinBtn = page.getByLabel('Empty Recycle Bin');\n this.confirmEmptyRecycleBinBtn = this.page.locator('#confirm').getByLabel('Empty Recycle Bin', {exact: true});\n this.duplicateToBtn = page.getByRole('button', {name: 'Duplicate to'});\n this.moveToBtn = page.getByRole('button', {name: 'Move to'});\n this.duplicateBtn = page.getByLabel('Duplicate', {exact: true});\n this.contentTreeRefreshBtn = page.locator('#header').getByLabel('#actions_refreshNode');\n this.sortChildrenBtn = page.getByRole('button', {name: 'Sort children'});\n this.rollbackBtn = page.getByRole('button', {name: 'Rollback'});\n this.rollbackContainerBtn = this.container.getByLabel('Rollback');\n this.publicAccessBtn = page.getByRole('button', {name: 'Public Access'});\n this.uuiCheckbox = page.locator('uui-checkbox');\n this.sortBtn = page.getByLabel('Sort', {exact: true});\n this.modalChooseBtn = page.locator('umb-tree-picker-modal').getByLabel('Choose');\n this.containerSaveBtn = this.container.getByLabel('Save');\n this.groupBasedProtectionBtn = page.locator('span').filter({hasText: 'Group based protection'});\n this.nextBtn = page.getByLabel('Next');\n this.chooseMemberGroupBtn = page.locator('umb-input-member-group').getByLabel('Choose');\n this.selectLoginPageDocument = page.locator('.select-item').filter({hasText: 'Login Page'}).locator('umb-input-document');\n this.selectErrorPageDocument = page.locator('.select-item').filter({hasText: 'Error Page'}).locator('umb-input-document');\n this.rollbackItem = page.locator('.rollback-item');\n this.expandChildItemsForContent = page.getByLabel('Expand child items for Content');\n this.actionsMenu = page.locator('uui-scroll-container');\n this.linkToDocumentBtn = this.linkPickerModal.getByLabel('Document', {exact: true});\n this.linkToMediaBtn = this.linkPickerModal.getByLabel('Media', {exact: true});\n this.linkToManualBtn = this.linkPickerModal.getByLabel('Manual', {exact: true});\n this.umbDocumentCollection = page.locator('umb-document-collection');\n this.documentTableColumnName = this.listView.locator('umb-document-table-column-name');\n //Block Grid - Block List\n this.addBlockElementBtn = page.locator('uui-button-group uui-button').first();\n this.formValidationMessage = page.locator('#splitViews umb-form-validation-message #messages');\n this.blockName = page.locator('#editor [slot=\"name\"]');\n this.addBlockSettingsTabBtn = page.locator('umb-body-layout').getByRole('tab', {name: 'Settings'});\n this.editBlockEntryBtn = page.locator('[label=\"edit\"] svg');\n this.deleteBlockEntryBtn = page.locator('[label=\"delete\"] svg');\n this.blockGridEntry = page.locator('umb-block-grid-entry');\n this.blockListEntry = page.locator('umb-block-list-entry');\n // TipTap\n this.tipTapPropertyEditor = page.locator('umb-property-editor-ui-tiptap');\n this.tipTapEditor = this.tipTapPropertyEditor.locator('#editor .tiptap');\n this.uploadedSvgThumbnail = this.page.locator('umb-input-upload-field-svg img');\n }\n\n async enterContentName(name: string) {\n await expect(this.contentNameTxt).toBeVisible();\n await this.contentNameTxt.clear();\n await this.contentNameTxt.fill(name);\n }\n\n async clickSaveAndPublishButton() {\n await expect(this.saveAndPublishBtn).toBeVisible();\n await this.saveAndPublishBtn.click();\n }\n\n async clickActionsButton() {\n await this.actionsBtn.click();\n }\n\n async clickPublishButton() {\n await this.publishBtn.click();\n }\n\n async clickUnpublishButton() {\n await this.unpublishBtn.click();\n }\n\n async clickReloadChildrenThreeDotsButton() {\n await this.reloadChildrenThreeDotsBtn.click();\n }\n\n async clickActionsMenuAtRoot() {\n await this.actionMenuForContentBtn.click();\n }\n\n async goToContentWithName(contentName: string) {\n const contentWithNameLocator = this.menuItemTree.getByText(contentName, {exact: true});\n await expect(contentWithNameLocator).toBeVisible();\n await contentWithNameLocator.click();\n }\n\n async clickActionsMenuForContent(name: string) {\n await this.clickActionsMenuForName(name);\n }\n\n async clickCaretButtonForContentName(name: string) {\n await expect(this.menuItemTree.filter({hasText: name}).last().locator('#caret-button').last()).toBeVisible();\n await this.menuItemTree.filter({hasText: name}).last().locator('#caret-button').last().click();\n }\n\n async waitForModalVisible() {\n await this.openedModal.waitFor({state: 'attached'});\n }\n\n async waitForModalHidden() {\n await this.openedModal.waitFor({state: 'hidden'});\n }\n\n async enterTextstring(text: string) {\n await expect(this.textstringTxt).toBeVisible();\n await this.textstringTxt.clear();\n await this.textstringTxt.fill(text);\n }\n\n async doesContentTreeHaveName(contentName: string) {\n await expect(this.contentTree).toContainText(contentName);\n }\n\n async enterRichTextArea(value: string) {\n await expect(this.richTextAreaTxt).toBeVisible();\n await this.richTextAreaTxt.fill(value);\n }\n\n async enterTextArea(value: string) {\n await expect(this.textAreaTxt).toBeVisible();\n await this.page.waitForTimeout(200);\n await this.textAreaTxt.clear();\n await this.textAreaTxt.fill(value);\n }\n\n async clickConfirmToUnpublishButton() {\n await this.confirmToUnpublishBtn.click();\n }\n\n async clickCreateDocumentBlueprintButton() {\n await this.createDocumentBlueprintBtn.click();\n }\n\n // Info Tab\n async clickInfoTab() {\n await expect(this.infoTab).toBeVisible();\n await this.infoTab.click();\n }\n\n async doesLinkHaveText(text: string) {\n await expect(this.linkContent).toHaveText(text);\n }\n\n async doesHistoryHaveText(text: string) {\n await expect(this.historyItems).toHaveText(text);\n }\n\n async doesPublicationStatusHaveText(text: string) {\n await expect(this.publicationStatus).toHaveText(text);\n }\n\n async doesCreatedDateHaveText(text: string) {\n await expect(this.createdDate).toHaveText(text);\n }\n\n async doesIdHaveText(text: string) {\n await expect(this.id).toHaveText(text);\n }\n\n async clickEditDocumentTypeButton() {\n await this.editDocumentTypeBtn.click();\n }\n\n async clickAddTemplateButton() {\n await this.addTemplateBtn.click();\n }\n\n async clickDocumentTypeByName(documentTypeName: string) {\n await this.page.locator('uui-ref-node-document-type[name=\"' + documentTypeName + '\"]').click();\n }\n\n async clickTemplateByName(templateName: string) {\n await this.page.locator('uui-ref-node[name=\"' + templateName + '\"]').click();\n }\n\n async isDocumentTypeModalVisible(documentTypeName: string) {\n await expect(this.documentTypeWorkspace.filter({hasText: documentTypeName})).toBeVisible();\n }\n\n async isTemplateModalVisible(templateName: string) {\n await expect(this.breadcrumbsTemplateModal.getByText(templateName)).toBeVisible();\n }\n\n async clickEditTemplateByName(templateName: string) {\n await this.page.locator('uui-ref-node[name=\"' + templateName + '\"]').getByLabel('Choose').click();\n }\n\n async changeTemplate(oldTemplate: string, newTemplate: string) {\n await this.clickEditTemplateByName(oldTemplate);\n await this.sidebarModal.getByLabel(newTemplate).click();\n await this.clickChooseModalButton();\n }\n\n async isTemplateNameDisabled(templateName: string) {\n await expect(this.sidebarModal.getByLabel(templateName)).toBeVisible();\n await expect(this.sidebarModal.getByLabel(templateName)).toBeDisabled();\n }\n\n // Culture and Hostnames\n async clickCultureAndHostnamesButton() {\n await this.cultureAndHostnamesBtn.click();\n }\n\n async selectCultureLanguageOption(option: string) {\n await expect(this.cultureLanguageDropdownBox).toBeVisible();\n await this.cultureLanguageDropdownBox.click();\n await expect(this.page.getByText(option, {exact: true})).toBeVisible();\n await this.page.getByText(option, {exact: true}).click();\n }\n\n async selectDomainLanguageOption(option: string, index: number = 0) {\n await this.domainLanguageDropdownBox.nth(index).click();\n await this.domainComboBox.nth(index).getByText(option).click();\n }\n\n async clickAddNewDomainButton() {\n await expect(this.addNewDomainBtn).toBeVisible();\n await this.addNewDomainBtn.click();\n }\n\n async enterDomain(value: string, index: number = 0) {\n await expect(this.domainTxt.nth(index)).toBeVisible();\n await this.domainTxt.nth(index).clear();\n await this.domainTxt.nth(index).fill(value);\n await expect(this.domainTxt.nth(index)).toHaveValue(value);\n }\n\n async clickDeleteDomainButton() {\n await this.deleteDomainBtn.first().click();\n }\n\n async clickSaveModalButton() {\n await this.saveModalBtn.click();\n }\n\n async chooseDocumentType(documentTypeName: string) {\n await this.documentTypeNode.filter({hasText: documentTypeName}).click();\n }\n\n // Approved Color\n async clickApprovedColorByValue(value: string) {\n await this.page.locator('uui-color-swatch[value=\"#' + value + '\"] #swatch').click();\n }\n\n // Checkbox list\n async chooseCheckboxListOption(optionValue: string) {\n await this.page.locator('uui-checkbox[value=\"' + optionValue + '\"] svg').click();\n }\n\n // Content Picker\n async addContentPicker(contentName: string) {\n await this.clickChooseButton();\n await this.sidebarModal.getByText(contentName).click();\n await this.chooseModalBtn.click();\n }\n\n async isOpenButtonVisibleInContentPicker(contentPickerName: string, isVisible: boolean = true) {\n return expect(this.page.getByLabel('Open ' + contentPickerName)).toBeVisible({visible: isVisible});\n }\n\n async clickContentPickerOpenButton(contentPickerName: string) {\n await this.page.getByLabel('Open ' + contentPickerName).click();\n }\n\n async isNodeOpenForContentPicker(contentPickerName: string) {\n return expect(this.openedModal.getByText(contentPickerName)).toBeVisible();\n }\n\n async isContentNameVisible(contentName: string, isVisible: boolean = true) {\n return expect(this.sidebarModal.getByText(contentName)).toBeVisible({visible: isVisible});\n }\n\n async isContentInTreeVisible(name: string, isVisible: boolean = true) {\n await expect(this.documentTreeItem.getByLabel(name, {exact: true})).toBeVisible({visible: isVisible});\n }\n\n async isChildContentInTreeVisible(parentName: string, childName: string, isVisible: boolean = true) {\n await expect(this.documentTreeItem.locator('[label=\"' + parentName + '\"]').getByLabel(childName)).toBeVisible({visible: isVisible});\n }\n\n async removeContentPicker(contentPickerName: string) {\n const contentPickerLocator = this.page.locator('[name=\"' + contentPickerName + '\"]');\n await contentPickerLocator.hover();\n await contentPickerLocator.getByLabel('Remove').click();\n await this.clickConfirmRemoveButton();\n }\n\n // Dropdown\n async chooseDropdownOption(optionValues: string[]) {\n await this.dropdown.selectOption(optionValues);\n }\n\n // Date Picker\n async enterADate(date: string) {\n await this.setADateTxt.fill(date);\n }\n\n // Media Picker\n async clickChooseMediaPickerButton() {\n await this.chooseMediaPickerBtn.click();\n }\n\n async clickChooseButtonAndSelectMediaWithName(mediaName: string) {\n await this.clickChooseMediaPickerButton();\n await this.selectMediaWithName(mediaName);\n }\n\n async removeMediaPickerByName(mediaPickerName: string) {\n await this.page.locator('[name=\"' + mediaPickerName + '\"] [label=\"Remove\"] svg').click();\n await this.clickConfirmRemoveButton();\n }\n\n async isMediaNameVisible(mediaName: string, isVisible: boolean = true) {\n return expect(this.mediaCardItems.filter({hasText: mediaName})).toBeVisible({visible: isVisible});\n }\n\n async clickResetFocalPointButton() {\n await this.resetFocalPointBtn.click();\n }\n\n async setFocalPoint(widthPercentage: number = 50, heightPercentage: number = 50) {\n await this.page.waitForTimeout(1000);\n const element = await this.page.locator('#image').boundingBox();\n if (!element) {\n throw new Error('Element not found');\n }\n\n const centerX = element.x + element.width / 2;\n const centerY = element.y + element.height / 2;\n\n const x = element.x + (element.width * widthPercentage) / 100;\n const y = element.y + (element.height * heightPercentage) / 100;\n\n await this.page.waitForTimeout(200);\n await this.page.mouse.move(centerX, centerY, {steps: 5});\n await this.page.waitForTimeout(200);\n await this.page.mouse.down();\n await this.page.waitForTimeout(200);\n await this.page.mouse.move(x, y);\n await this.page.waitForTimeout(200);\n await this.page.mouse.up();\n }\n\n // Member Picker\n async clickChooseMemberPickerButton() {\n await this.chooseMemberPickerBtn.click();\n }\n\n async selectMemberByName(memberName: string) {\n await this.sidebarModal.getByText(memberName, {exact: true}).click();\n }\n\n async removeMemberPickerByName(memberName: string) {\n await this.page.locator('[name=\"' + memberName + '\"]').getByLabel('Remove').click();\n await this.clickConfirmRemoveButton();\n }\n\n // Numeric\n async enterNumeric(number: number) {\n await this.numericTxt.clear();\n await this.numericTxt.fill(number.toString());\n }\n\n // Radiobox\n async chooseRadioboxOption(optionValue: string) {\n await this.page.locator('uui-radio[value=\"' + optionValue + '\"] #button').click();\n }\n\n // Tags\n async clickPlusIconButton() {\n await this.plusIconBtn.click();\n }\n\n async enterTag(tagName: string) {\n await this.enterTagTxt.fill(tagName);\n await this.enterTagTxt.press('Enter');\n }\n\n async removeTagByName(tagName: string) {\n await this.tagItems.filter({hasText: tagName}).locator('svg').click();\n }\n\n // Multi URL Picker\n async clickAddMultiURLPickerButton() {\n await this.addMultiURLPickerBtn.click();\n }\n\n async selectLinkByName(linkName: string) {\n await this.sidebarModal.getByText(linkName, {exact: true}).click();\n }\n\n async enterLink(value: string, toPress: boolean = false) {\n await this.linkTxt.clear();\n if (toPress) {\n await this.linkTxt.press(value);\n } else {\n await this.linkTxt.fill(value);\n }\n }\n\n async enterAnchorOrQuerystring(value: string, toPress: boolean = false) {\n await this.anchorQuerystringTxt.clear();\n if (toPress) {\n await this.anchorQuerystringTxt.press(value);\n } else {\n await this.anchorQuerystringTxt.fill(value);\n }\n }\n\n async enterLinkTitle(value: string, toPress: boolean = false) {\n await this.linkTitleTxt.clear();\n if (toPress) {\n await this.linkTitleTxt.press(value);\n } else {\n await this.linkTitleTxt.fill(value);\n }\n }\n\n async removeUrlPickerByName(linkName: string) {\n await this.page.locator('[name=\"' + linkName + '\"]').getByLabel('Remove').click();\n await this.clickConfirmRemoveButton();\n }\n\n async clickEditUrlPickerButtonByName(linkName: string) {\n await this.page.locator('[name=\"' + linkName + '\"]').getByLabel('Edit').click();\n }\n\n // Upload\n async clickRemoveFilesButton() {\n await this.removeFilesBtn.click();\n }\n\n // True/false\n async clickToggleButton() {\n await this.toggleBtn.click();\n }\n\n async doesToggleHaveLabel(label: string) {\n return await expect(this.toggleInput).toHaveAttribute('aria-label', label);\n }\n\n // Multiple Text String\n async clickAddMultipleTextStringButton() {\n await this.addMultipleTextStringBtn.click();\n }\n\n async enterMultipleTextStringValue(value: string) {\n await this.multipleTextStringValueTxt.clear();\n await this.multipleTextStringValueTxt.fill(value);\n }\n\n async addMultipleTextStringItem(value: string) {\n await this.clickAddMultipleTextStringButton();\n await this.enterMultipleTextStringValue(value);\n }\n\n // Code Editor\n async enterCodeEditorValue(value: string) {\n await this.codeEditorTxt.clear();\n await this.codeEditorTxt.fill(value);\n }\n\n // Markdown Editor\n async enterMarkdownEditorValue(value: string) {\n await this.markdownTxt.clear();\n await this.markdownTxt.fill(value);\n }\n\n // Slider\n async changeSliderValue(value: string) {\n await this.sliderInput.fill(value);\n }\n\n async isDocumentTypeNameVisible(contentName: string, isVisible: boolean = true) {\n return expect(this.sidebarModal.getByText(contentName)).toBeVisible({visible: isVisible});\n }\n\n async doesModalHaveText(text: string) {\n return expect(this.sidebarModal).toContainText(text);\n }\n\n // Collection tab\n async isTabNameVisible(tabName: string) {\n return expect(this.tabItems.filter({hasText: tabName})).toBeVisible();\n }\n\n async doesDocumentHaveName(name: string) {\n return expect(this.enterAName).toHaveValue(name);\n }\n\n async doesDocumentTableColumnNameValuesMatch(expectedValues: string[]) {\n await expect(this.documentListView).toBeVisible();\n return expectedValues.forEach((text, index) => {\n expect(this.documentTableColumnName.nth(index)).toHaveText(text);\n });\n }\n\n async searchByKeywordInCollection(keyword: string) {\n await this.searchTxt.clear();\n await this.searchTxt.fill(keyword);\n await this.searchTxt.press('Enter');\n await this.page.waitForTimeout(500);\n }\n\n async clickVariantSelectorButton() {\n await this.variantSelectorBtn.click();\n }\n\n async clickVariantAddModeButton() {\n await this.variantAddModeBtn.first().click();\n await this.page.waitForTimeout(500);\n }\n\n async clickSaveAndCloseButton() {\n await this.saveAndCloseBtn.click();\n }\n\n // List View\n async clickCreateContentWithName(name: string) {\n await expect(this.page.getByLabel('Create ' + name)).toBeVisible();\n await this.page.getByLabel('Create ' + name).click();\n }\n\n async enterNameInContainer(name: string) {\n await expect(this.enterNameInContainerTxt).toBeVisible();\n await this.enterNameInContainerTxt.clear();\n await this.enterNameInContainerTxt.fill(name);\n }\n\n async goToContentInListViewWithName(contentName: string) {\n await this.listView.getByLabel(contentName).click();\n }\n\n async doesListViewHaveNoItemsInList() {\n await expect(this.listView.filter({hasText: 'There are no items to show in the list.'})).toBeVisible();\n }\n\n async doesContentListHaveNoItemsInList() {\n await expect(this.umbDocumentCollection.filter({hasText: 'No items'})).toBeVisible();\n }\n\n async clickNameButtonInListView() {\n await this.nameBtn.click();\n }\n\n async doesFirstItemInListViewHaveName(name: string) {\n await expect(this.listViewTableRow.first()).toContainText(name);\n }\n\n async doesListViewContainCount(count: number) {\n await expect(this.listViewTableRow).toHaveCount(count);\n }\n\n async selectContentWithNameInListView(name: string) {\n const contentInListViewLocator = this.listViewTableRow.filter({hasText: name});\n await expect(contentInListViewLocator).toBeVisible();\n await contentInListViewLocator.click();\n }\n\n async clickPublishSelectedListItems() {\n await this.publishSelectedListItems.click();\n }\n\n async clickUnpublishSelectedListItems() {\n await this.unpublishSelectedListItems.click();\n }\n\n async clickDuplicateToSelectedListItems() {\n await expect(this.duplicateToSelectedListItems).toBeVisible();\n // This force click is needed \n await this.duplicateToSelectedListItems.click({force: true});\n }\n\n async clickMoveToSelectedListItems() {\n await expect(this.moveToSelectedListItems).toBeVisible();\n // This force click is needed\n await this.moveToSelectedListItems.click({force: true});\n }\n\n async clickTrashSelectedListItems() {\n await this.trashSelectedListItems.click();\n }\n\n async selectDocumentWithNameAtRoot(name: string) {\n await this.clickCaretButtonForName('Content');\n const documentWithNameLocator = this.modalContent.getByLabel(name);\n await expect(documentWithNameLocator).toBeVisible();\n await documentWithNameLocator.click();\n await this.clickChooseButton();\n }\n\n async clickTrashButton() {\n await expect(this.trashBtn).toBeVisible();\n await this.trashBtn.click();\n }\n\n async clickExactTrashButton() {\n await this.exactTrashBtn.click();\n }\n\n async isDocumentListViewVisible(isVisible: boolean = true) {\n await expect(this.documentListView).toBeVisible({visible: isVisible});\n }\n\n async isDocumentGridViewVisible(isVisible: boolean = true) {\n await expect(this.documentGridView).toBeVisible({visible: isVisible});\n }\n\n async changeDocumentSectionLanguage(newLanguageName: string) {\n await this.documentLanguageSelect.click();\n const documentSectionLanguageLocator = this.documentLanguageSelectPopover.getByLabel(newLanguageName);\n await expect(documentSectionLanguageLocator).toBeVisible();\n // Force click is needed\n await documentSectionLanguageLocator.click({force: true});\n }\n\n async doesDocumentSectionHaveLanguageSelected(languageName: string) {\n await expect(this.documentLanguageSelect).toHaveText(languageName);\n }\n\n async isDocumentReadOnly(isVisible: boolean = true) {\n await expect(this.documentReadOnly).toBeVisible({visible: isVisible});\n }\n\n async isDocumentNameInputEditable(isEditable: boolean = true) {\n await expect(this.contentNameTxt).toBeVisible();\n await expect(this.contentNameTxt).toBeEditable({editable: isEditable});\n }\n\n async isActionsMenuForRecycleBinVisible(isVisible: boolean = true) {\n await this.isActionsMenuForNameVisible('Recycle Bin', isVisible);\n }\n\n async isActionsMenuForRootVisible(isVisible: boolean = true) {\n await this.isActionsMenuForNameVisible('Content', isVisible);\n }\n\n async clickEmptyRecycleBinButton() {\n await this.recycleBinMenuItem.hover();\n await expect(this.emptyRecycleBinBtn).toBeVisible();\n // Force click is needed\n await this.emptyRecycleBinBtn.click({force: true});\n }\n\n async clickConfirmEmptyRecycleBinButton() {\n await this.confirmEmptyRecycleBinBtn.click();\n }\n\n async isDocumentPropertyEditable(propertyName: string, isEditable: boolean = true) {\n const propertyLocator = this.documentWorkspace.locator('umb-property').filter({hasText: propertyName}).locator('#input');\n await expect(propertyLocator).toBeVisible();\n await expect(propertyLocator).toBeEditable({editable: isEditable});\n }\n\n async doesDocumentPropertyHaveValue(propertyName: string, value: string) {\n const propertyLocator = this.documentWorkspace.locator('umb-property').filter({hasText: propertyName}).locator('#input');\n await expect(propertyLocator).toHaveValue(value);\n }\n\n async isDocumentTreeEmpty() {\n await expect(this.documentTreeItem).toHaveCount(0);\n }\n\n async doesDocumentWorkspaceContainName(name: string) {\n await expect(this.documentWorkspaceEditor.locator('#input')).toHaveValue(name);\n }\n\n async doesDocumentWorkspaceHaveText(text: string) {\n return expect(this.documentWorkspace).toContainText(text);\n }\n\n async enterDocumentBlueprintName(name: string) {\n await this.documentBlueprintModalEnterNameTxt.clear();\n await this.documentBlueprintModalEnterNameTxt.fill(name);\n }\n\n async clickSaveDocumentBlueprintButton() {\n await this.documentBlueprintSaveBtn.click();\n }\n\n async clickDuplicateToButton() {\n await this.duplicateToBtn.click();\n }\n\n async clickDuplicateButton() {\n await this.duplicateBtn.click();\n }\n\n async clickMoveToButton() {\n await this.moveToBtn.click();\n }\n\n async moveToContentWithName(parentNames: string[], moveTo: string) {\n await this.expandChildItemsForContent.click();\n for (const contentName of parentNames) {\n await this.container.getByLabel('Expand child items for ' + contentName).click();\n }\n await this.container.getByLabel(moveTo).click();\n await this.clickChooseContainerButton();\n }\n\n async isCaretButtonVisibleForContentName(contentName: string, isVisible: boolean = true) {\n await expect(this.page.locator('[label=\"' + contentName + '\"]').getByLabel('Expand child items for ')).toBeVisible({visible: isVisible});\n }\n\n async reloadContentTree() {\n await expect(this.contentTreeRefreshBtn).toBeVisible();\n // Force click is needed\n await this.contentTreeRefreshBtn.click({force: true});\n }\n\n async clickSortChildrenButton() {\n await expect(this.sortChildrenBtn).toBeVisible();\n await this.sortChildrenBtn.click();\n }\n\n async clickRollbackButton() {\n await expect(this.rollbackBtn).toBeVisible();\n await this.rollbackBtn.click();\n }\n\n async clickRollbackContainerButton() {\n await expect(this.rollbackContainerBtn).toBeVisible();\n await this.rollbackContainerBtn.click();\n }\n\n async clickLatestRollBackItem() {\n await expect(this.rollbackItem.last()).toBeVisible();\n await this.rollbackItem.last().click();\n }\n\n async clickPublicAccessButton() {\n await expect(this.publicAccessBtn).toBeVisible();\n await this.publicAccessBtn.click();\n }\n\n async addGroupBasedPublicAccess(memberGroupName: string, documentName: string) {\n await expect(this.groupBasedProtectionBtn).toBeVisible();\n await this.groupBasedProtectionBtn.click();\n await this.nextBtn.click();\n await this.chooseMemberGroupBtn.click();\n await this.page.getByLabel(memberGroupName).click();\n await this.clickSubmitButton();\n await this.selectLoginPageDocument.click();\n await this.container.getByLabel(documentName, {exact: true}).click();\n await this.modalChooseBtn.click();\n await this.selectErrorPageDocument.click();\n await this.container.getByLabel(documentName, {exact: true}).click();\n await this.modalChooseBtn.click();\n await this.containerSaveBtn.click();\n }\n\n async sortChildrenDragAndDrop(dragFromSelector: Locator, dragToSelector: Locator, verticalOffset: number = 0, horizontalOffset: number = 0, steps: number = 5) {\n await expect(dragFromSelector).toBeVisible();\n await expect(dragToSelector).toBeVisible();\n const targetLocation = await dragToSelector.boundingBox();\n const elementCenterX = targetLocation!.x + targetLocation!.width / 2;\n const elementCenterY = targetLocation!.y + targetLocation!.height / 2;\n await dragFromSelector.hover();\n await this.page.mouse.move(10, 10);\n await dragFromSelector.hover();\n await this.page.mouse.down();\n await this.page.waitForTimeout(400);\n await this.page.mouse.move(elementCenterX + horizontalOffset, elementCenterY + verticalOffset, {steps: steps});\n await this.page.waitForTimeout(400);\n // If we do not have this, the drag and drop will not work\n await dragToSelector.hover();\n await this.page.mouse.up();\n }\n\n async clickSortButton() {\n await expect(this.sortBtn).toBeVisible();\n await this.sortBtn.click();\n }\n\n async doesIndexDocumentInTreeContainName(parentName: string, childName: string, index: number) {\n await expect(this.documentTreeItem.locator('[label=\"' + parentName + '\"]').locator('umb-tree-item').nth(index).locator('#label')).toHaveText(childName);\n }\n\n async selectMemberGroup(memberGroupName: string) {\n await expect(this.uuiCheckbox.getByLabel(memberGroupName)).toBeVisible();\n await this.uuiCheckbox.getByLabel(memberGroupName).click();\n }\n\n async isPermissionInActionsMenuVisible(permissionName: string, isVisible: boolean = true) {\n await expect(this.actionsMenu.getByRole('button', {\n name: permissionName,\n exact: true\n })).toBeVisible({visible: isVisible});\n }\n\n async clickDocumentLinkButton() {\n await expect(this.linkToDocumentBtn).toBeVisible();\n await this.linkToDocumentBtn.click();\n }\n\n async clickMediaLinkButton() {\n await expect(this.linkToMediaBtn).toBeVisible();\n await this.linkToMediaBtn.click();\n }\n\n async clickManualLinkButton() {\n await expect(this.linkToManualBtn).toBeVisible();\n await this.linkToManualBtn.click();\n }\n\n // Block Grid - Block List\n async clickAddBlockElementButton() {\n await expect(this.addBlockElementBtn).toBeVisible();\n await this.addBlockElementBtn.click();\n }\n\n async isAddBlockElementButtonVisible(isVisible: boolean = true) {\n await expect(this.addBlockElementBtn).toBeVisible({visible: isVisible});\n }\n\n async isAddBlockElementButtonWithLabelVisible(label: string, isVisible: boolean = true) {\n await expect(this.addBlockElementBtn.getByLabel(label)).toBeVisible({visible: isVisible});\n }\n\n async doesFormValidationMessageContainText(text: string) {\n await expect(this.formValidationMessage).toContainText(text);\n }\n\n async doesBlockElementHaveName(name: string) {\n await expect(this.blockName).toContainText(name);\n }\n\n async clickAddBlockSettingsTabButton() {\n await expect(this.addBlockSettingsTabBtn).toBeVisible();\n await this.addBlockSettingsTabBtn.click();\n }\n\n async clickEditBlockGridBlockButton() {\n await expect(this.blockGridEntry).toBeVisible();\n await this.blockGridEntry.hover();\n await expect(this.editBlockEntryBtn).toBeVisible();\n await this.editBlockEntryBtn.click();\n }\n\n async clickDeleteBlockGridBlockButton() {\n await expect(this.blockGridEntry).toBeVisible();\n await this.blockGridEntry.hover();\n await expect(this.deleteBlockEntryBtn).toBeVisible();\n await this.deleteBlockEntryBtn.click();\n }\n\n async clickEditBlockListBlockButton() {\n await expect(this.blockListEntry).toBeVisible();\n await this.blockListEntry.hover();\n await expect(this.editBlockEntryBtn).toBeVisible();\n await this.editBlockEntryBtn.click();\n }\n\n async clickDeleteBlockListBlockButton() {\n await expect(this.blockListEntry).toBeVisible();\n await this.blockListEntry.hover();\n await expect(this.deleteBlockEntryBtn).toBeVisible();\n await this.deleteBlockEntryBtn.click();\n }\n\n // TipTap\n async enterRTETipTapEditor(value: string) {\n await expect(this.tipTapEditor).toBeVisible();\n await this.tipTapEditor.clear();\n await this.tipTapEditor.fill(value);\n }\n\n async clickTipTapToolbarIconWithTitle(iconTitle: string) {\n await expect(this.tipTapPropertyEditor.getByTitle(iconTitle, {exact: true}).locator('svg')).toBeVisible();\n await this.tipTapPropertyEditor.getByTitle(iconTitle, {exact: true}).locator('svg').click();\n }\n\n async doesUploadedSvgThumbnailHaveSrc(imageSrc: string) {\n await expect(this.uploadedSvgThumbnail).toBeVisible();\n await expect(this.uploadedSvgThumbnail).toHaveAttribute('src', imageSrc);\n }\n}"]}
|