@umbraco/playwright-testhelpers 17.1.0-beta → 17.1.0-beta.2

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.
@@ -1 +1 @@
1
- {"version":3,"file":"UiBaseLocators.js","sourceRoot":"","sources":["../../../lib/helpers/UiBaseLocators.ts"],"names":[],"mappings":"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","sourcesContent":["import {expect, Locator, Page} from \"@playwright/test\"\nimport {ConstantHelper} from \"./ConstantHelper\";\nimport {BasePage} from \"./BasePage\";\n\nexport class UiBaseLocators extends BasePage {\n // Core Action Buttons\n public readonly saveBtn: Locator;\n public readonly submitBtn: Locator;\n public readonly confirmBtn: Locator;\n public readonly chooseBtn: Locator;\n public readonly chooseModalBtn: Locator;\n public readonly createBtn: Locator;\n public readonly addBtn: Locator;\n public readonly updateBtn: Locator;\n public readonly changeBtn: Locator;\n public readonly deleteBtn: Locator;\n public readonly deleteExactBtn: Locator;\n public readonly removeExactBtn: Locator;\n public readonly insertBtn: Locator;\n public readonly renameBtn: Locator;\n public readonly reloadBtn: Locator;\n public readonly reloadChildrenBtn: Locator;\n public readonly restoreBtn: Locator;\n public readonly disableBtn: Locator;\n public readonly enableBtn: Locator;\n public readonly actionBtn: Locator;\n public readonly nextBtn: Locator;\n\n // Confirmation Buttons\n public readonly confirmToDeleteBtn: Locator;\n public readonly confirmCreateFolderBtn: Locator;\n public readonly confirmToRemoveBtn: Locator;\n public readonly confirmToSubmitBtn: Locator;\n public readonly confirmDisableBtn: Locator;\n public readonly confirmEnableBtn: Locator;\n public readonly confirmRenameBtn: Locator;\n public readonly confirmTrashBtn: Locator;\n\n // Folder Management\n public readonly createFolderBtn: Locator;\n public readonly folderNameTxt: Locator;\n public readonly folderBtn: Locator;\n public readonly newFolderThreeDotsBtn: Locator;\n public readonly renameFolderThreeDotsBtn: Locator;\n public readonly renameFolderBtn: Locator;\n public readonly updateFolderBtn: Locator;\n public readonly deleteFolderThreeDotsBtn: Locator;\n\n // Navigation & Menu\n public readonly breadcrumbBtn: Locator;\n public readonly leftArrowBtn: Locator;\n public readonly caretBtn: Locator;\n public readonly modalCaretBtn: Locator;\n public readonly backOfficeHeader: Locator;\n public readonly backOfficeMain: Locator;\n public readonly sectionLinks: Locator;\n public readonly sectionSidebar: Locator;\n public readonly menuItem: Locator;\n public readonly actionsMenuContainer: Locator;\n public readonly treeItem: Locator;\n\n // Three Dots Menu Buttons\n public readonly createThreeDotsBtn: Locator;\n public readonly renameThreeDotsBtn: Locator;\n public readonly deleteThreeDotsBtn: Locator;\n\n // Modal & Container\n public readonly sidebarModal: Locator;\n public readonly openedModal: Locator;\n public readonly container: Locator;\n public readonly containerChooseBtn: Locator;\n public readonly containerSaveAndPublishBtn: Locator;\n public readonly createModalBtn: Locator;\n\n // Document Type & Property Editor\n public readonly documentTypeNode: Locator;\n public readonly propertyNameTxt: Locator;\n public readonly selectPropertyEditorBtn: Locator;\n public readonly editorSettingsBtn: Locator;\n public readonly enterPropertyEditorDescriptionTxt: Locator;\n public readonly property: Locator;\n public readonly addPropertyBtn: Locator;\n public readonly labelAboveBtn: Locator;\n\n // Group & Tab Management\n public readonly addGroupBtn: Locator;\n public readonly groupLabel: Locator;\n public readonly typeGroups: Locator;\n public readonly addTabBtn: Locator;\n public readonly unnamedTabTxt: Locator;\n public readonly structureTabBtn: Locator;\n\n // Validation & Mandatory\n public readonly mandatoryToggle: Locator;\n public readonly validation: Locator;\n public readonly regexTxt: Locator;\n public readonly regexMessageTxt: Locator;\n public readonly validationMessage: Locator;\n\n // Composition & Structure\n public readonly compositionsBtn: Locator;\n public readonly allowAtRootBtn: Locator;\n public readonly allowedChildNodesModal: Locator;\n public readonly addCollectionBtn: Locator;\n\n // Reorder\n public readonly iAmDoneReorderingBtn: Locator;\n public readonly reorderBtn: Locator;\n\n // Query Builder\n public readonly queryBuilderBtn: Locator;\n public readonly queryBuilderOrderedBy: Locator;\n public readonly queryBuilderCreateDate: Locator;\n public readonly queryBuilderShowCode: Locator;\n public readonly wherePropertyAliasBtn: Locator;\n public readonly whereOperatorBtn: Locator;\n public readonly whereConstrainValueTxt: Locator;\n public readonly orderByPropertyAliasBtn: Locator;\n public readonly ascendingBtn: Locator;\n public readonly chooseRootContentBtn: Locator;\n public readonly returnedItemsCount: Locator;\n public readonly queryResults: Locator;\n\n // Insert & Template\n public readonly insertValueBtn: Locator;\n public readonly insertPartialViewBtn: Locator;\n public readonly insertDictionaryItemBtn: Locator;\n public readonly chooseFieldDropDown: Locator;\n public readonly systemFieldsOption: Locator;\n public readonly chooseFieldValueDropDown: Locator;\n public readonly breadcrumbsTemplateModal: Locator;\n\n // Rename\n public readonly newNameTxt: Locator;\n public readonly renameModalBtn: Locator;\n\n // State & Notification\n public readonly successState: Locator;\n public readonly successStateIcon: Locator;\n public readonly failedStateButton: Locator;\n public readonly successNotification: Locator;\n public readonly errorNotification: Locator;\n\n // Search & Filter\n public readonly typeToFilterSearchTxt: Locator;\n public readonly filterChooseBtn: Locator;\n\n // Text Input\n public readonly textAreaInputArea: Locator;\n public readonly enterAName: Locator;\n public readonly descriptionBtn: Locator;\n public readonly enterDescriptionTxt: Locator;\n public readonly aliasLockBtn: Locator;\n public readonly aliasNameTxt: Locator;\n\n // Icon\n public readonly iconBtn: Locator;\n\n // Create Link\n public readonly createLink: Locator;\n\n // Recycle Bin\n public readonly recycleBinBtn: Locator;\n public readonly recycleBinMenuItem: Locator;\n public readonly recycleBinMenuItemCaretBtn: Locator;\n\n // View Options\n public readonly gridBtn: Locator;\n public readonly listBtn: Locator;\n public readonly viewBundleBtn: Locator;\n\n // Media\n public readonly mediaCardItems: Locator;\n public readonly mediaPickerModalSubmitBtn: Locator;\n public readonly mediaCaptionAltTextModalSubmitBtn: Locator;\n public readonly clickToUploadBtn: Locator;\n public readonly inputDropzone: Locator;\n public readonly imageCropperField: Locator;\n public readonly inputUploadField: Locator;\n public readonly chooseMediaInputBtn: Locator;\n\n // Embedded Media\n public readonly embeddedMediaModal: Locator;\n public readonly embeddedURLTxt: Locator;\n public readonly embeddedRetrieveBtn: Locator;\n public readonly embeddedMediaModalConfirmBtn: Locator;\n public readonly embeddedPreview: Locator;\n\n // Document & Content\n public readonly chooseDocumentInputBtn: Locator;\n public readonly createDocumentBlueprintBtn: Locator;\n public readonly createDocumentBlueprintModal: Locator;\n public readonly createNewDocumentBlueprintBtn: Locator;\n\n // User\n public readonly currentUserAvatarBtn: Locator;\n public readonly newPasswordTxt: Locator;\n public readonly confirmPasswordTxt: Locator;\n public readonly currentPasswordTxt: Locator;\n\n // Collection & Table\n public readonly collectionTreeItemTableRow: Locator;\n public readonly createActionButtonCollection: Locator;\n public readonly createActionBtn: Locator;\n public readonly createOptionActionListModal: Locator;\n\n // Reference & Entity\n public readonly confirmActionModalEntityReferences: Locator;\n public readonly referenceHeadline: Locator;\n public readonly entityItemRef: Locator;\n public readonly entityItem: Locator;\n\n // Workspace & Action\n public readonly workspaceAction: Locator;\n public readonly workspaceActionMenuBtn: Locator;\n public readonly entityAction: Locator;\n public readonly openEntityAction: Locator;\n\n // Pagination\n public readonly firstPaginationBtn: Locator;\n public readonly nextPaginationBtn: Locator;\n\n // Editor\n public readonly monacoEditor: Locator;\n\n // Loader\n public readonly uiLoader: Locator;\n\n constructor(page: Page) {\n super(page);\n\n // Core Action Buttons\n this.saveBtn = page.getByLabel('Save', {exact: true});\n this.submitBtn = page.getByLabel('Submit');\n this.confirmBtn = page.getByLabel('Confirm');\n this.chooseBtn = page.getByLabel('Choose', {exact: true});\n this.chooseModalBtn = page.locator('uui-modal-sidebar').locator('[look=\"primary\"]').getByLabel('Choose');\n this.createBtn = page.getByRole('button', {name: /^Create(…)?$/});\n this.addBtn = page.getByRole('button', {name: 'Add', exact: true});\n this.updateBtn = page.getByLabel('Update');\n this.changeBtn = page.getByLabel('Change');\n this.deleteBtn = page.getByRole('button', {name: /^Delete(…)?$/});\n this.deleteExactBtn = page.getByRole('button', {name: 'Delete', exact: true});\n this.removeExactBtn = page.getByLabel('Remove', {exact: true});\n this.insertBtn = page.locator('uui-box uui-button').filter({hasText: 'Insert'});\n this.renameBtn = page.getByRole('button', {name: /^Rename(…)?$/});\n this.reloadBtn = page.getByRole('button', {name: 'Reload', exact: true});\n this.reloadChildrenBtn = page.getByRole('button', {name: 'Reload children'});\n this.restoreBtn = page.getByLabel('Restore', {exact: true});\n this.disableBtn = page.getByLabel('Disable', {exact: true});\n this.enableBtn = page.getByLabel('Enable');\n this.actionBtn = page.getByTestId('workspace:action-menu-button');\n this.nextBtn = page.getByLabel('Next');\n \n // Confirmation Buttons\n this.confirmToDeleteBtn = page.locator('#confirm').getByLabel('Delete');\n this.confirmCreateFolderBtn = page.locator('#confirm').getByLabel('Create Folder');\n this.confirmToRemoveBtn = page.locator('#confirm').getByLabel('Remove');\n this.confirmToSubmitBtn = page.locator('#confirm').getByLabel('Submit');\n this.confirmDisableBtn = page.locator('#confirm').getByLabel('Disable');\n this.confirmEnableBtn = page.locator('#confirm').getByLabel('Enable');\n this.confirmRenameBtn = page.locator('#confirm').getByLabel('Rename');\n this.confirmTrashBtn = page.locator('#confirm').getByLabel('Trash');\n \n // Folder Management\n this.createFolderBtn = page.getByLabel('Create folder');\n this.folderNameTxt = page.getByLabel('Enter a folder name');\n this.folderBtn = page.locator('umb-entity-create-option-action-list-modal').locator('umb-ref-item', {hasText: 'Folder'});\n this.newFolderThreeDotsBtn = page.getByLabel('New Folder…');\n this.renameFolderThreeDotsBtn = page.getByRole('button', {name: 'Rename folder…'});\n this.renameFolderBtn = page.getByLabel('Rename folder');\n this.updateFolderBtn = page.getByLabel('Update folder');\n this.deleteFolderThreeDotsBtn = page.locator('#action-modal').getByLabel('Delete Folder...');\n \n // Navigation & Menu\n this.breadcrumbBtn = page.getByLabel('Breadcrumb');\n this.leftArrowBtn = page.locator('[name=\"icon-arrow-left\"] svg');\n this.caretBtn = page.locator('#caret-button');\n this.modalCaretBtn = page.locator('uui-modal-sidebar').locator('#caret-button');\n this.backOfficeHeader = page.locator('umb-backoffice-header');\n this.backOfficeMain = page.locator('umb-backoffice-main');\n this.sectionLinks = page.getByTestId('section-links');\n this.sectionSidebar = page.locator('umb-section-sidebar');\n this.menuItem = page.locator('uui-menu-item');\n this.actionsMenuContainer = page.locator('uui-scroll-container');\n this.treeItem = page.locator('umb-tree-item');\n\n // Three Dots Menu Buttons\n this.createThreeDotsBtn = page.getByText('Create…', {exact: true});\n this.renameThreeDotsBtn = page.getByLabel('Rename…', {exact: true});\n this.deleteThreeDotsBtn = page.getByLabel('Delete…');\n \n // Modal & Container\n this.sidebarModal = page.locator('uui-modal-sidebar');\n this.openedModal = page.locator('uui-modal-container[backdrop]');\n this.container = page.locator('#container');\n this.containerChooseBtn = page.locator('#container').getByLabel('Choose');\n this.containerSaveAndPublishBtn = page.locator('#container').getByLabel('Save and Publish');\n this.createModalBtn = page.locator('uui-modal-sidebar').getByLabel('Create', {exact: true});\n \n // Document Type & Property Editor\n this.documentTypeNode = page.locator('uui-ref-node-document-type');\n this.propertyNameTxt = page.getByTestId('input:entity-name').locator('#input').first();\n this.selectPropertyEditorBtn = page.getByLabel('Select Property Editor');\n this.editorSettingsBtn = page.getByLabel('Editor settings');\n this.enterPropertyEditorDescriptionTxt = page.locator('uui-modal-sidebar').getByTestId('input:entity-description').locator('#textarea');\n this.property = page.locator('umb-property');\n this.addPropertyBtn = page.getByLabel('Add property', {exact: true});\n this.labelAboveBtn = page.locator('.appearance-option').filter({hasText: 'Label above'});\n \n // Group & Tab Management\n this.addGroupBtn = page.getByLabel('Add group', {exact: true});\n this.groupLabel = page.getByLabel('Group', {exact: true});\n this.typeGroups = page.locator('umb-content-type-design-editor-group');\n this.addTabBtn = page.getByLabel('Add tab');\n this.unnamedTabTxt = page.getByTestId('tab:').getByTestId('tab:name-input').locator('#input');\n this.structureTabBtn = page.locator('uui-tab').filter({hasText: 'Structure'}).locator('svg');\n \n // Validation & Mandatory\n this.mandatoryToggle = page.locator('#mandatory #toggle');\n this.validation = page.locator('#native');\n this.regexTxt = page.locator('input[name=\"pattern\"]');\n this.regexMessageTxt = page.locator('textarea[name=\"pattern-message\"]');\n this.validationMessage = page.locator('umb-form-validation-message').locator('#messages');\n \n // Composition & Structure\n this.compositionsBtn = page.getByLabel('Compositions');\n this.allowAtRootBtn = page.locator('label').filter({hasText: 'Allow at root'});\n this.allowedChildNodesModal = page.locator('umb-tree-picker-modal');\n this.addCollectionBtn = page.locator('umb-input-content-type-collection-configuration #create-button');\n \n // Reorder\n this.iAmDoneReorderingBtn = page.getByLabel('I am done reordering');\n this.reorderBtn = page.getByLabel('Reorder');\n \n // Query Builder\n this.queryBuilderBtn = page.locator('#query-builder-button');\n this.queryBuilderOrderedBy = page.locator('#property-alias-dropdown').getByLabel('Property alias');\n this.queryBuilderCreateDate = page.locator('#property-alias-dropdown').getByText('CreateDate').locator(\"..\");\n this.queryBuilderShowCode = page.locator('umb-code-block');\n this.wherePropertyAliasBtn = page.locator('#property-alias-dropdown');\n this.whereOperatorBtn = page.locator('#operator-dropdown');\n this.whereConstrainValueTxt = page.getByLabel('constrain value');\n this.orderByPropertyAliasBtn = page.locator('#sort-dropdown');\n this.ascendingBtn = page.locator('[key=\"template_ascending\"]');\n this.chooseRootContentBtn = page.getByLabel('Choose root document');\n this.returnedItemsCount = page.locator('#results-count');\n this.queryResults = page.locator('.query-results');\n \n // Insert & Template\n this.insertValueBtn = page.locator('uui-button').filter({has: page.locator('[key=\"template_insertPageField\"]')});\n this.insertPartialViewBtn = page.locator('uui-button').filter({has: page.locator('[key=\"template_insertPartialView\"]')});\n this.insertDictionaryItemBtn = page.locator('uui-button').filter({has: page.locator('[key=\"template_insertDictionaryItem\"]')});\n this.chooseFieldDropDown = page.locator('#preview #expand-symbol-wrapper');\n this.systemFieldsOption = page.getByText('System fields');\n this.chooseFieldValueDropDown = page.locator('#value #expand-symbol-wrapper');\n this.breadcrumbsTemplateModal = page.locator('uui-modal-sidebar').locator('umb-template-workspace-editor uui-breadcrumbs');\n \n // Rename\n this.newNameTxt = page.getByRole('textbox', {name: 'Enter new name...'});\n this.renameModalBtn = page.locator('umb-rename-modal').getByLabel('Rename');\n \n // State & Notification\n this.successState = page.locator('[state=\"success\"]');\n this.successStateIcon = page.locator('[state=\"success\"]').locator('#state');\n this.failedStateButton = page.locator('uui-button[state=\"failed\"]');\n this.successNotification = page.locator('uui-toast-notification[open][color=\"positive\"]');\n this.errorNotification = page.locator('uui-toast-notification[open][color=\"danger\"]');\n \n // Search & Filter\n this.typeToFilterSearchTxt = page.locator('[type=\"search\"] #input');\n this.filterChooseBtn = page.locator('button').filter({hasText: 'Choose'});\n \n // Text Input\n this.textAreaInputArea = page.locator('textarea.ime-text-area');\n this.enterAName = page.getByLabel('Enter a name...', {exact: true});\n this.descriptionBtn = page.getByLabel('Description');\n this.enterDescriptionTxt = page.getByLabel('Enter a description...');\n this.aliasLockBtn = page.locator('#name').getByLabel('Unlock input');\n this.aliasNameTxt = page.locator('#name').getByLabel('alias');\n \n // Icon\n this.iconBtn = page.getByLabel('icon');\n \n // Create Link\n this.createLink = page.getByRole('link', {name: 'Create', exact: true});\n \n // Recycle Bin\n this.recycleBinBtn = page.getByLabel('Recycle Bin', {exact: true});\n this.recycleBinMenuItem = page.locator('uui-menu-item[label=\"Recycle Bin\"]');\n this.recycleBinMenuItemCaretBtn = page.locator('uui-menu-item[label=\"Recycle Bin\"]').locator('#caret-button');\n \n // View Options\n this.gridBtn = page.getByLabel('Grid');\n this.listBtn = page.getByLabel('List');\n this.viewBundleBtn = page.locator('umb-collection-view-bundle uui-button svg');\n \n // Media\n this.mediaCardItems = page.locator('uui-card-media');\n this.mediaPickerModalSubmitBtn = page.locator('umb-media-picker-modal').getByLabel('Submit');\n this.mediaCaptionAltTextModalSubmitBtn = page.locator('umb-media-caption-alt-text-modal').getByLabel('Submit');\n this.clickToUploadBtn = page.locator('#splitViews').getByRole('button', {name: 'Click to upload'});\n this.inputDropzone = page.locator('umb-input-dropzone');\n this.imageCropperField = page.locator('umb-image-cropper-field');\n this.inputUploadField = page.locator('umb-input-upload-field').locator('#wrapperInner');\n this.chooseMediaInputBtn = page.locator('umb-input-media').getByLabel('Choose');\n \n // Embedded Media\n this.embeddedMediaModal = page.locator('umb-embedded-media-modal');\n this.embeddedURLTxt = page.locator('umb-embedded-media-modal').locator('[label=\"URL\"] #input');\n this.embeddedRetrieveBtn = page.locator('umb-embedded-media-modal').locator('[label=\"Retrieve\"]');\n this.embeddedMediaModalConfirmBtn = page.locator('umb-embedded-media-modal').getByLabel('Confirm');\n this.embeddedPreview = page.locator('umb-embedded-media-modal').locator('[label=\"Preview\"]');\n \n // Document & Content\n this.chooseDocumentInputBtn = page.locator('umb-input-document').getByLabel('Choose');\n this.createDocumentBlueprintBtn = page.getByLabel(/^Create Document Blueprint(…)?$/);\n this.createDocumentBlueprintModal = page.locator('umb-document-blueprint-options-create-modal');\n this.createNewDocumentBlueprintBtn = page.locator('umb-document-blueprint-options-create-modal').locator('umb-ref-item', {hasText: 'Document Blueprint for'});\n \n // User\n this.currentUserAvatarBtn = page.getByTestId('header-app:Umb.HeaderApp.CurrentUser').locator('uui-avatar');\n this.currentPasswordTxt = page.locator('input[name=\"oldPassword\"]');\n this.newPasswordTxt = page.locator('input[name=\"newPassword\"]');\n this.confirmPasswordTxt = page.locator('input[name=\"confirmPassword\"]');\n \n // Collection & Table\n this.collectionTreeItemTableRow = page.locator('umb-collection-workspace-view umb-table uui-table-row');\n this.createActionButtonCollection = page.locator('umb-collection-create-action-button');\n this.createActionBtn = page.locator('umb-collection-create-action-button').locator('[label=\"Create\"]');\n this.createOptionActionListModal = page.locator('umb-entity-create-option-action-list-modal');\n \n // Reference & Entity\n this.confirmActionModalEntityReferences = page.locator('umb-confirm-action-modal-entity-references,umb-confirm-bulk-action-modal-entity-references');\n this.referenceHeadline = page.locator('umb-confirm-action-modal-entity-references,umb-confirm-bulk-action-modal-entity-references').locator('#reference-headline').first();\n this.entityItemRef = page.locator('umb-confirm-action-modal-entity-references,umb-confirm-bulk-action-modal-entity-references').locator('uui-ref-list').first().getByTestId('entity-item-ref');\n this.entityItem = page.locator('umb-entity-item-ref');\n \n // Workspace & Action\n this.workspaceAction = page.locator('umb-workspace-action');\n this.workspaceActionMenuBtn = page.getByTestId('workspace:action-menu-button');\n this.entityAction = page.locator('umb-entity-action-list umb-entity-action');\n this.openEntityAction = page.locator('#action-modal[open]').locator(page.locator('umb-entity-action-list umb-entity-action'));\n \n // Pagination\n this.firstPaginationBtn = page.locator('umb-collection-pagination').getByLabel('First');\n this.nextPaginationBtn = page.locator('umb-collection-pagination').getByLabel('Next');\n \n // Editor\n this.monacoEditor = page.locator('.monaco-editor');\n \n // Loader\n this.uiLoader = page.locator('uui-loader');\n }\n\n // Helper Methods\n getMenuItemByLabel(name: string): Locator {\n return this.page.locator(`uui-menu-item[label=\"${name}\"]`);\n }\n\n // Actions Menu Methods\n async clickActionsMenuForNameInSectionSidebar(name: string) {\n await this.sectionSidebar.locator('[label=\"' + name + '\"]').hover();\n await this.click(this.sectionSidebar.locator('[label=\"' + name + '\"] >> [label=\"Open actions menu\"]').first());\n }\n\n async clickActionsMenuForName(name: string) {\n const menuItem = this.getMenuItemByLabel(name);\n await this.page.waitForTimeout(ConstantHelper.wait.medium);\n await menuItem.locator('#menu-item').first().hover({force: true});\n await this.click(menuItem.locator('#action-modal').first(), {force: true});\n }\n\n async isActionsMenuForNameVisible(name: string, isVisible = true) {\n const menuItem = this.getMenuItemByLabel(name);\n await this.click(menuItem);\n await expect(menuItem.locator('#action-modal').first()).toBeVisible({visible: isVisible});\n }\n\n // Caret Button Methods\n async clickCaretButtonForName(name: string) {\n await this.isCaretButtonWithNameVisible(name);\n await this.click(this.getMenuItemByLabel(name).locator('#caret-button').first());\n }\n\n async isCaretButtonWithNameVisible(name: string, isVisible = true) {\n await expect(this.getMenuItemByLabel(name).locator('#caret-button').first()).toBeVisible({visible: isVisible});\n }\n\n async clickCaretButton() {\n await this.click(this.caretBtn);\n }\n\n async openCaretButtonForName(name: string, isInModal: boolean = false) {\n let menuItem: Locator;\n if (isInModal) {\n menuItem = this.sidebarModal.locator(`uui-menu-item[label=\"${name}\"]`);\n } else {\n menuItem = this.getMenuItemByLabel(name);\n }\n const isCaretButtonOpen = await menuItem.getAttribute('show-children');\n if (isCaretButtonOpen === null) {\n await this.clickCaretButtonForName(name);\n }\n }\n\n // Tree Methods\n async reloadTree(treeName: string) {\n await this.isVisible(this.page.getByLabel(treeName, {exact: true}));\n await this.page.waitForTimeout(ConstantHelper.wait.short);\n await this.clickActionsMenuForName(treeName);\n await this.clickReloadChildrenActionMenuOption();\n await this.openCaretButtonForName(treeName);\n }\n\n async isTreeItemVisible(name: string, isVisible = true) {\n await this.isVisible(this.treeItem.locator('[label=\"' + name + '\"]'), isVisible);\n }\n\n async doesTreeItemHaveTheCorrectIcon(name: string, icon: string) {\n return await this.isVisible(this.treeItem.filter({hasText: name}).locator('umb-icon').locator('[name=\"' + icon + '\"]'));\n }\n\n // Core Button Click Methods\n async clickReloadButton() {\n await this.click(this.reloadBtn);\n }\n\n async clickReloadChildrenButton() {\n await this.click(this.reloadChildrenBtn, {force: true});\n }\n\n async clickSaveButton() {\n await this.click(this.saveBtn);\n await this.page.waitForTimeout(ConstantHelper.wait.short);\n }\n\n async clickChooseButton() {\n await this.click(this.chooseBtn);\n }\n\n async clickChooseContainerButton() {\n await this.click(this.containerChooseBtn);\n }\n\n async clickSubmitButton() {\n await this.click(this.submitBtn);\n }\n\n async clickConfirmButton() {\n await this.click(this.confirmBtn);\n }\n\n async clickCreateButton() {\n await this.click(this.createBtn);\n }\n\n async clickAddButton() {\n await this.click(this.addBtn);\n }\n\n async clickUpdateButton() {\n await this.click(this.updateBtn);\n }\n\n async clickChangeButton() {\n await this.click(this.changeBtn);\n }\n\n async clickDeleteButton() {\n await this.click(this.deleteBtn);\n }\n\n async clickDeleteExactButton() {\n await this.click(this.deleteExactBtn);\n }\n\n async clickRemoveExactButton() {\n await this.click(this.removeExactBtn);\n }\n\n async clickInsertButton() {\n await this.click(this.insertBtn);\n }\n\n async clickRenameButton() {\n await this.click(this.renameBtn);\n }\n\n async clickRestoreButton() {\n await this.click(this.restoreBtn);\n }\n\n async clickDisableButton() {\n await this.click(this.disableBtn);\n }\n\n async clickEnableButton() {\n await this.click(this.enableBtn);\n }\n\n async clickActionButton() {\n await this.click(this.actionBtn);\n }\n\n async clickNextButton() {\n await this.click(this.nextBtn);\n }\n\n async clickBreadcrumbButton() {\n await this.click(this.breadcrumbBtn);\n }\n\n async clickLeftArrowButton() {\n await this.click(this.leftArrowBtn);\n }\n\n // Confirmation Button Methods\n async clickConfirmToDeleteButton() {\n await this.click(this.confirmToDeleteBtn);\n await this.page.waitForTimeout(ConstantHelper.wait.short);\n }\n\n async clickConfirmCreateFolderButton() {\n await this.click(this.confirmCreateFolderBtn);\n await this.page.waitForTimeout(ConstantHelper.wait.short);\n }\n\n async clickConfirmRemoveButton() {\n await this.click(this.confirmToRemoveBtn);\n }\n\n async clickConfirmToSubmitButton() {\n await this.click(this.confirmToSubmitBtn);\n }\n\n async clickConfirmDisableButton() {\n await this.click(this.confirmDisableBtn);\n }\n\n async clickConfirmEnableButton() {\n await this.click(this.confirmEnableBtn);\n }\n\n async clickConfirmRenameButton() {\n await this.click(this.confirmRenameBtn);\n }\n\n async clickConfirmTrashButton() {\n await this.click(this.confirmTrashBtn);\n await this.page.waitForTimeout(ConstantHelper.wait.short);\n }\n\n async clickDeleteAndConfirmButton() {\n await this.clickDeleteActionMenuOption();\n await this.clickConfirmToDeleteButton();\n }\n\n // Folder Methods\n async clickCreateFolderButton() {\n await this.click(this.createFolderBtn);\n await this.page.waitForTimeout(ConstantHelper.wait.short);\n }\n\n async enterFolderName(folderName: string) {\n await this.enterText(this.folderNameTxt, folderName, {verify: true});\n }\n\n async createFolder(folderName: string) {\n await this.clickCreateActionMenuOption();\n await this.clickNewFolderThreeDotsButton();\n await this.enterFolderName(folderName);\n await this.clickConfirmCreateFolderButton();\n }\n\n async deleteFolder() {\n await this.clickDeleteActionMenuOption();\n await this.clickConfirmToDeleteButton();\n }\n\n async clickFolderButton() {\n await this.click(this.folderBtn);\n }\n\n async clickNewFolderThreeDotsButton() {\n await this.click(this.newFolderThreeDotsBtn);\n }\n\n async clickRenameFolderThreeDotsButton() {\n await this.click(this.renameFolderThreeDotsBtn);\n }\n\n async clickRenameFolderButton() {\n await this.clickRenameButton();\n }\n\n async clickUpdateFolderButton() {\n await this.click(this.updateFolderBtn);\n }\n\n // Three Dots Menu Methods\n async clickCreateThreeDotsButton() {\n await this.click(this.createThreeDotsBtn);\n }\n\n async clickFilterChooseButton() {\n await this.click(this.filterChooseBtn);\n }\n\n // Success State Methods\n async isSuccessStateVisibleForSaveButton(isVisible: boolean = true) {\n const regex = new RegExp(`^workspace-action:.*Save$`);\n const saveButtonLocator = this.page.getByTestId(regex);\n const saveBtn = this.workspaceAction.filter({has: saveButtonLocator});\n await expect(saveBtn.locator(this.successState)).toBeVisible({visible: isVisible, timeout: ConstantHelper.timeout.long});\n }\n\n async isSuccessButtonWithTextVisible(text: string) {\n return await this.isVisible(this.successState.filter({hasText: text}));\n }\n\n async isSuccessStateIconVisible() {\n await this.isVisible(this.successStateIcon);\n }\n\n async isFailedStateButtonVisible() {\n await this.isVisible(this.failedStateButton);\n }\n\n // Notification Methods\n async isSuccessNotificationVisible(isVisible: boolean = true) {\n return await expect(this.successNotification.first()).toBeVisible({visible: isVisible, timeout: ConstantHelper.timeout.long});\n }\n\n async doesSuccessNotificationsHaveCount(count: number) {\n await this.hasCount(this.successNotification, count);\n }\n\n async doesSuccessNotificationHaveText(text: string, isVisible: boolean = true, deleteNotification = false, timeout = 5000) {\n const response = await expect(this.successNotification.filter({hasText: text})).toBeVisible({\n visible: isVisible,\n timeout: timeout\n });\n if (deleteNotification) {\n await this.click(this.successNotification.filter({hasText: text}).getByLabel('close'), {force: true});\n }\n return response;\n }\n\n async isErrorNotificationVisible(isVisible: boolean = true) {\n return await expect(this.errorNotification.first()).toBeVisible({visible: isVisible});\n }\n\n async doesErrorNotificationHaveText(text: string, isVisible: boolean = true, deleteNotification: boolean = false) {\n const response = await expect(this.errorNotification.filter({hasText: text})).toBeVisible({visible: isVisible});\n if (deleteNotification) {\n await this.click(this.errorNotification.filter({hasText: text}).locator('svg'));\n }\n return response;\n }\n\n // Modal Methods\n async clickChooseModalButton() {\n await this.click(this.chooseModalBtn);\n }\n\n async clickCreateModalButton() {\n await this.click(this.createModalBtn);\n }\n\n async clickModalMenuItemWithName(name: string) {\n await this.click(this.openedModal.locator(`uui-menu-item[label=\"${name}\"]`));\n }\n\n async isModalMenuItemWithNameDisabled(name: string) {\n await this.hasAttribute(this.sidebarModal.locator(`uui-menu-item[label=\"${name}\"]`), 'disabled', '');\n }\n\n async isModalMenuItemWithNameVisible(name: string, isVisible: boolean = true) {\n await this.isVisible(this.sidebarModal.locator(`uui-menu-item[label=\"${name}\"]`), isVisible);\n }\n\n // Container Methods\n async clickContainerSaveAndPublishButton() {\n await this.click(this.containerSaveAndPublishBtn);\n await this.page.waitForTimeout(ConstantHelper.wait.short);\n }\n\n // Navigation Methods\n async goToSection(sectionName: string, checkSections = true, skipReload = false) {\n if (checkSections) {\n for (let section in ConstantHelper.sections) {\n await expect(this.sectionLinks.getByRole('tab', {name: ConstantHelper.sections[section]})).toBeVisible({timeout: ConstantHelper.timeout.navigation});\n }\n }\n const alreadySelected = await this.sectionLinks.locator('[active]').getByText(sectionName).isVisible();\n if (alreadySelected && !skipReload) {\n await this.page.reload();\n } else {\n await this.click(this.backOfficeHeader.getByRole('tab', {name: sectionName}));\n }\n }\n\n async goToSettingsTreeItem(settingsTreeItemName: string) {\n await this.goToSection(ConstantHelper.sections.settings);\n await this.click(this.page.getByLabel(settingsTreeItemName, {exact: true}));\n }\n\n async isSectionWithNameVisible(sectionName: string, isVisible: boolean = true) {\n await this.isVisible(this.page.getByRole('tab', {name: sectionName}), isVisible);\n }\n\n async isBackOfficeMainVisible(isVisible: boolean = true) {\n await this.page.waitForTimeout(ConstantHelper.wait.medium);\n await this.isVisible(this.backOfficeMain, isVisible);\n }\n\n // Link & Button Click by Name Methods\n async clickExactLinkWithName(name: string, toForce: boolean = false) {\n const exactLinkWithNameLocator = this.page.getByRole('link', {name: name, exact: true});\n await this.click(exactLinkWithNameLocator, {force: toForce});\n }\n\n async clickLinkWithName(name: string, isExact: boolean = false) {\n await this.click(this.page.getByRole('link', {name: name, exact: isExact}));\n }\n\n async clickLabelWithName(name: string, isExact: boolean = true, toForce: boolean = false) {\n await this.click(this.page.getByLabel(name, {exact: isExact}), {force: toForce});\n }\n\n async clickButtonWithName(name: string, isExact: boolean = false) {\n const exactButtonWithNameLocator = this.page.getByRole('button', {name: name, exact: isExact});\n await this.click(exactButtonWithNameLocator, {force: true});\n }\n\n async clickTextButtonWithName(name: string) {\n await this.click(this.page.getByText(name, {exact: true}));\n }\n\n async isButtonWithNameVisible(name: string) {\n await this.isVisible(this.page.getByRole('button', {name: name}));\n }\n\n async getButtonWithName(name: string) {\n await this.waitForVisible(this.page.getByRole('button', {name: name}));\n return this.page.getByRole('button', {name: name});\n }\n\n // Remove Button Methods\n async clickRemoveButtonForName(name: string) {\n const removeButtonWithNameLocator = this.page.locator('[name=\"' + name + '\"] [label=\"Remove\"]');\n await this.click(removeButtonWithNameLocator);\n }\n\n async clickTrashIconButtonForName(name: string) {\n const trashIconButtonWithNameLocator = this.page.locator('[name=\"' + name + '\"] [name=\"icon-trash\"]');\n await this.click(trashIconButtonWithNameLocator);\n }\n\n async clickRemoveWithName(name: string) {\n const removeLabelWithNameLocator = this.page.locator('[label=\"Remove ' + name + '\"]');\n await this.click(removeLabelWithNameLocator);\n }\n\n // Alias & Icon Methods\n async enterAliasName(aliasName: string) {\n await this.page.waitForTimeout(ConstantHelper.wait.short);\n await this.click(this.aliasLockBtn, {force: true});\n await this.enterText(this.aliasNameTxt, aliasName);\n }\n\n async updateIcon(iconName: string) {\n await this.click(this.iconBtn, {force: true});\n await this.searchForTypeToFilterValue(iconName);\n await this.clickLabelWithName(iconName, true, true);\n await this.clickSubmitButton();\n }\n\n // Property Editor Methods\n async clickSelectPropertyEditorButton() {\n await this.click(this.selectPropertyEditorBtn);\n }\n\n async enterAPropertyName(name: string) {\n await this.enterText(this.propertyNameTxt, name, {clearFirst: false});\n }\n\n async clickEditorSettingsButton(index: number = 0) {\n await this.click(this.editorSettingsBtn.nth(index));\n }\n\n async addPropertyEditor(propertyEditorName: string, index: number = 0) {\n await this.click(this.addPropertyBtn.nth(index));\n await this.enterAPropertyName(propertyEditorName);\n await this.hasValue(this.propertyNameTxt, propertyEditorName);\n await this.clickSelectPropertyEditorButton();\n await this.searchForTypeToFilterValue(propertyEditorName);\n await this.click(this.page.getByText(propertyEditorName, {exact: true}));\n await this.clickSubmitButton();\n }\n\n async updatePropertyEditor(propertyEditorName: string) {\n await this.clickEditorSettingsButton();\n await this.clickChangeButton();\n await this.searchForTypeToFilterValue(propertyEditorName);\n await this.click(this.page.getByText(propertyEditorName, {exact: true}));\n await this.enterAPropertyName(propertyEditorName);\n await this.clickSubmitButton();\n }\n\n async deletePropertyEditor(propertyEditorName: string) {\n await this.page.locator('uui-button').filter({hasText: propertyEditorName}).getByLabel('Editor settings').hover();\n await this.click(this.deleteBtn);\n }\n\n async deletePropertyEditorWithName(name: string) {\n const propertyEditor = this.page.locator('umb-content-type-design-editor-property', {hasText: name});\n await this.hoverAndClick(propertyEditor, propertyEditor.getByLabel('Delete'), {force: true});\n await this.clickConfirmToDeleteButton();\n }\n\n async enterPropertyEditorDescription(description: string) {\n await this.enterText(this.enterPropertyEditorDescriptionTxt, description);\n }\n\n async isPropertyEditorUiWithNameReadOnly(name: string) {\n const propertyEditorUiLocator = this.page.locator('umb-property-editor-ui-' + name);\n await this.hasAttribute(propertyEditorUiLocator, 'readonly', '');\n }\n\n async isPropertyEditorUiWithNameVisible(name: string, isVisible: boolean = true) {\n const propertyEditorUiLocator = this.page.locator('umb-property-editor-ui-' + name);\n await this.isVisible(propertyEditorUiLocator, isVisible);\n }\n\n async doesPropertyHaveInvalidBadge(propertyName: string) {\n await this.isVisible(this.page.locator('umb-property-layout').filter({hasText: propertyName}).locator('#invalid-badge uui-badge'));\n }\n\n // Group Methods\n async clickAddGroupButton() {\n await this.click(this.addGroupBtn);\n }\n\n async enterGroupName(groupName: string, index: number = 0) {\n const groupNameTxt = this.groupLabel.nth(index);\n await this.enterText(groupNameTxt, groupName);\n }\n\n async isGroupVisible(groupName: string, isVisible = true) {\n await this.isVisible(this.groupLabel.filter({hasText: groupName}), isVisible);\n }\n\n async doesGroupHaveValue(value: string) {\n await this.waitForVisible(this.groupLabel);\n return await this.hasValue(this.groupLabel, value);\n }\n\n async deleteGroup(groupName: string) {\n await this.page.waitForTimeout(ConstantHelper.wait.medium);\n const groups = this.page.locator('umb-content-type-design-editor-group').all();\n for (const group of await groups) {\n if (await group.getByLabel('Group', {exact: true}).inputValue() === groupName) {\n const headerActionsDeleteLocator = group.locator('[slot=\"header-actions\"]').getByLabel('Delete');\n await this.click(headerActionsDeleteLocator, {force: true});\n return;\n }\n }\n }\n\n async reorderTwoGroups(firstGroupName: string, secondGroupName: string) {\n const firstGroup = this.page.getByTestId('group:' + firstGroupName);\n const secondGroup = this.page.getByTestId('group:' + secondGroupName);\n const firstGroupValue = await firstGroup.getByLabel('Group').inputValue();\n const secondGroupValue = await secondGroup.getByLabel('Group').inputValue();\n const dragToLocator = firstGroup.locator('[slot=\"header\"]').first();\n const dragFromLocator = secondGroup.locator('[slot=\"header\"]').first();\n await this.dragAndDrop(dragFromLocator, dragToLocator, 0, 0, 20);\n return {firstGroupValue, secondGroupValue};\n }\n\n // Tab Methods\n async clickAddTabButton() {\n await this.click(this.addTabBtn);\n }\n\n async enterTabName(tabName: string) {\n await this.waitForVisible(this.unnamedTabTxt);\n await this.page.waitForTimeout(ConstantHelper.wait.debounce);\n await this.enterText(this.unnamedTabTxt, tabName);\n await this.click(this.page.getByRole('tab', {name: 'Design'}));\n await this.click(this.page.getByTestId('tab:' + tabName));\n }\n\n async clickRemoveTabWithName(name: string) {\n const tab = this.page.locator('uui-tab').filter({hasText: name});\n await this.hoverAndClick(tab, tab.locator('[label=\"Remove\"]'));\n }\n\n async clickStructureTab() {\n await this.page.waitForTimeout(ConstantHelper.wait.medium);\n await this.click(this.structureTabBtn);\n }\n\n getTabLocatorWithName(name: string) {\n return this.page.getByRole('tab', {name: name});\n }\n\n // Validation Methods\n async clickMandatoryToggle() {\n await this.click(this.mandatoryToggle);\n }\n\n async selectValidationOption(option: string) {\n await this.selectByValue(this.validation, option);\n }\n\n async enterRegEx(regEx: string) {\n await this.enterText(this.regexTxt, regEx, {clearFirst: false});\n }\n\n async enterRegExMessage(regExMessage: string) {\n await this.enterText(this.regexMessageTxt, regExMessage, {clearFirst: false});\n }\n\n async isValidationMessageVisible(message: string, isVisible: boolean = true) {\n await this.isVisible(this.validationMessage.filter({hasText: message}), isVisible);\n }\n\n // Composition & Structure Methods\n async clickCompositionsButton() {\n await this.click(this.compositionsBtn);\n }\n\n async clickAllowAtRootButton() {\n await this.click(this.allowAtRootBtn);\n }\n\n async clickAllowedChildNodesButton() {\n await this.click(this.allowedChildNodesModal.locator(this.chooseBtn));\n }\n\n async clickAddCollectionButton() {\n await this.click(this.addCollectionBtn);\n }\n\n // Reorder Methods\n async clickIAmDoneReorderingButton() {\n await this.click(this.iAmDoneReorderingBtn);\n }\n\n async clickReorderButton() {\n await this.click(this.reorderBtn);\n }\n\n async clickLabelAboveButton() {\n await this.click(this.labelAboveBtn);\n }\n\n // Query Builder Methods\n async clickQueryBuilderButton() {\n await this.click(this.queryBuilderBtn);\n await this.page.waitForTimeout(ConstantHelper.wait.short);\n }\n\n async addQueryBuilderWithOrderByStatement(propertyAlias: string, isAscending: boolean) {\n await this.click(this.queryBuilderBtn, {timeout: ConstantHelper.timeout.long});\n await this.click(this.orderByPropertyAliasBtn);\n await this.waitAndSelectQueryBuilderDropDownList(propertyAlias);\n await this.click(this.orderByPropertyAliasBtn);\n if (!isAscending) {\n await this.click(this.ascendingBtn);\n }\n }\n\n async addQueryBuilderWithWhereStatement(propertyAlias: string, operator: string, constrainValue: string) {\n await this.click(this.queryBuilderBtn, {timeout: ConstantHelper.timeout.long});\n await this.click(this.wherePropertyAliasBtn);\n await this.waitAndSelectQueryBuilderDropDownList(propertyAlias);\n await this.click(this.whereOperatorBtn);\n await this.waitAndSelectQueryBuilderDropDownList(operator);\n await this.enterText(this.whereConstrainValueTxt, constrainValue);\n await this.pressKey(this.whereConstrainValueTxt, 'Enter');\n }\n\n async waitAndSelectQueryBuilderDropDownList(option: string) {\n const ddlOption = this.page.locator('[open]').locator('uui-combobox-list-option').filter({hasText: option}).first();\n await this.click(ddlOption, {timeout: ConstantHelper.timeout.long});\n }\n\n async chooseRootContentInQueryBuilder(contentName: string) {\n await this.click(this.chooseRootContentBtn);\n await this.clickModalMenuItemWithName(contentName);\n await this.clickChooseButton();\n }\n\n async isQueryBuilderCodeShown(code: string) {\n await this.click(this.queryBuilderShowCode);\n await this.containsText(this.queryBuilderShowCode, code, ConstantHelper.timeout.long);\n }\n\n async doesReturnedItemsHaveCount(itemCount: number) {\n await this.containsText(this.returnedItemsCount, itemCount.toString() + ' published items returned');\n }\n\n async doesQueryResultHaveContentName(contentName: string) {\n await this.containsText(this.queryResults, contentName);\n }\n\n // Insert Methods\n async insertDictionaryItem(dictionaryName: string) {\n await this.clickInsertButton();\n await this.click(this.insertDictionaryItemBtn);\n await this.click(this.page.getByLabel(dictionaryName));\n await this.click(this.chooseBtn);\n }\n\n async insertSystemFieldValue(fieldValue: string) {\n await this.clickInsertButton();\n await this.click(this.insertValueBtn);\n await this.click(this.chooseFieldDropDown);\n await this.click(this.systemFieldsOption);\n await this.click(this.chooseFieldValueDropDown);\n await this.click(this.page.getByText(fieldValue));\n await this.clickSubmitButton();\n }\n\n async insertPartialView(partialViewName: string) {\n await this.clickInsertButton();\n await this.click(this.insertPartialViewBtn);\n await this.click(this.page.getByLabel(partialViewName));\n await this.clickChooseButton();\n }\n\n // Rename Methods\n async rename(newName: string) {\n await this.clickRenameActionMenuOption();\n await this.click(this.newNameTxt);\n await this.enterText(this.newNameTxt, newName);\n await this.click(this.renameModalBtn);\n await this.page.waitForTimeout(ConstantHelper.wait.short);\n }\n\n // Search & Filter Methods\n async searchForTypeToFilterValue(searchValue: string) {\n await this.enterText(this.typeToFilterSearchTxt, searchValue, {clearFirst: false});\n }\n\n // Description Methods\n async enterDescription(description: string) {\n await this.enterText(this.enterDescriptionTxt, description);\n }\n\n async doesDescriptionHaveValue(value: string, index: number = 0) {\n return await this.hasValue(this.descriptionBtn.nth(index), value);\n }\n\n // Drag and Drop Methods\n async dragAndDrop(dragFromSelector: Locator, dragToSelector: Locator, verticalOffset: number = 0, horizontalOffset: number = 0, steps: number = 5) {\n await this.waitForVisible(dragFromSelector);\n await this.waitForVisible(dragToSelector);\n const targetLocation = await dragToSelector.boundingBox();\n const elementCenterX = targetLocation!.x + targetLocation!.width / 2;\n const elementCenterY = targetLocation!.y + targetLocation!.height / 2;\n await this.hover(dragFromSelector);\n await this.page.mouse.move(10, 10);\n await this.hover(dragFromSelector);\n await this.page.mouse.down();\n await this.page.waitForTimeout(ConstantHelper.wait.debounce);\n await this.page.mouse.move(elementCenterX + horizontalOffset, elementCenterY + verticalOffset, {steps: steps});\n await this.page.waitForTimeout(ConstantHelper.wait.debounce);\n await this.page.mouse.up();\n }\n\n // Create Link Methods\n async clickCreateLink() {\n await this.click(this.createLink);\n }\n\n // Recycle Bin Methods\n async clickRecycleBinButton() {\n await this.click(this.recycleBinBtn);\n }\n\n async reloadRecycleBin(containsItems = true) {\n await this.waitForVisible(this.recycleBinMenuItem);\n if (!containsItems) {\n await this.clickReloadChildrenActionMenuOption();\n await this.isVisible(this.recycleBinMenuItemCaretBtn, false);\n return;\n }\n await this.clickActionsMenuForName('Recycle Bin');\n await this.clickReloadChildrenActionMenuOption();\n await this.openCaretButtonForName('Recycle Bin');\n }\n\n async isItemVisibleInRecycleBin(item: string, isVisible: boolean = true, isReload: boolean = true) {\n if (isReload) {\n await this.reloadRecycleBin(isVisible);\n }\n return await this.isVisible(this.page.locator('[label=\"Recycle Bin\"] [label=\"' + item + '\"]'), isVisible);\n }\n\n // View Methods\n async changeToGridView() {\n await this.click(this.viewBundleBtn);\n await this.click(this.gridBtn);\n }\n\n async changeToListView() {\n await this.click(this.viewBundleBtn);\n await this.click(this.listBtn);\n }\n\n async isViewBundleButtonVisible(isVisible: boolean = true) {\n return this.isVisible(this.viewBundleBtn, isVisible);\n }\n\n // Media Methods\n async clickMediaWithName(name: string) {\n await this.click(this.mediaCardItems.filter({hasText: name}));\n }\n\n async selectMediaWithName(mediaName: string, isForce: boolean = false) {\n const mediaLocator = this.mediaCardItems.filter({hasText: mediaName});\n await this.waitForVisible(mediaLocator);\n // Using direct click with position option (not supported by BasePage.click)\n await mediaLocator.click({position: {x: 0.5, y: 0.5}, force: isForce});\n }\n\n async selectMediaWithTestId(mediaKey: string) {\n const locator = this.page.getByTestId('media:' + mediaKey);\n await this.waitForVisible(locator);\n // Using direct click with position option (not supported by BasePage.click)\n await locator.click({position: {x: 0.5, y: 0.5}});\n }\n\n async clickMediaPickerModalSubmitButton() {\n await this.click(this.mediaPickerModalSubmitBtn);\n }\n\n async clickMediaCaptionAltTextModalSubmitButton() {\n await this.click(this.mediaCaptionAltTextModalSubmitBtn);\n }\n\n async clickChooseMediaStartNodeButton() {\n await this.click(this.chooseMediaInputBtn);\n }\n\n async isMediaCardItemWithNameDisabled(itemName: string) {\n await this.hasAttribute(this.mediaCardItems.filter({hasText: itemName}), 'class', 'not-allowed');\n }\n\n async isMediaCardItemWithNameVisible(itemName: string, isVisible: boolean = true) {\n await this.isVisible(this.mediaCardItems.filter({hasText: itemName}), isVisible);\n }\n\n async doesMediaHaveThumbnail(mediaId: string, thumbnailIconName: string, thumbnailImage: string) {\n const mediaThumbnailLocator = this.page.getByTestId('media:' + mediaId);\n if (thumbnailIconName === 'image') {\n const regexImageSrc = new RegExp(`^${thumbnailImage}.*`);\n await this.hasAttribute(mediaThumbnailLocator.locator('umb-imaging-thumbnail img'), 'src', regexImageSrc.toString());\n } else {\n await this.hasAttribute(mediaThumbnailLocator.locator('umb-imaging-thumbnail umb-icon'), 'name', thumbnailIconName);\n }\n }\n\n async isInputDropzoneVisible(isVisible: boolean = true) {\n await this.isVisible(this.inputDropzone, isVisible);\n }\n\n async isImageCropperFieldVisible(isVisible: boolean = true) {\n await this.isVisible(this.imageCropperField, isVisible);\n }\n\n async isInputUploadFieldVisible(isVisible: boolean = true) {\n await this.isVisible(this.inputUploadField, isVisible);\n }\n\n // Upload Methods\n async clickToUploadButton() {\n await this.click(this.clickToUploadBtn);\n }\n\n async uploadFile(filePath: string) {\n const [fileChooser] = await Promise.all([\n this.page.waitForEvent('filechooser'),\n await this.clickToUploadButton(),\n ]);\n await fileChooser.setFiles(filePath);\n }\n\n // Embedded Media Methods\n async enterEmbeddedURL(value: string) {\n await this.enterText(this.embeddedURLTxt, value);\n }\n\n async clickEmbeddedRetrieveButton() {\n await this.click(this.embeddedRetrieveBtn);\n }\n\n async clickEmbeddedMediaModalConfirmButton() {\n await this.click(this.embeddedMediaModalConfirmBtn);\n }\n\n async waitForEmbeddedPreviewVisible() {\n await this.waitForVisible(this.embeddedPreview);\n }\n\n // Document Methods\n async clickChooseContentStartNodeButton() {\n await this.click(this.chooseDocumentInputBtn);\n }\n\n // User Methods\n async clickCurrentUserAvatarButton() {\n await this.click(this.currentUserAvatarBtn, {force: true});\n }\n\n // Collection Methods\n async clickCreateActionButton() {\n await this.click(this.createActionBtn);\n }\n\n async clickCreateActionWithOptionName(optionName: string) {\n await this.clickCreateActionButton();\n const createOptionLocator = this.createActionButtonCollection.locator('[label=\"' + optionName + '\"]');\n await this.click(createOptionLocator);\n }\n\n async doesCollectionTreeItemTableRowHaveName(name: string) {\n await this.waitForVisible(this.collectionTreeItemTableRow.first());\n await this.isVisible(this.collectionTreeItemTableRow.locator('[label=\"' + name + '\"]'));\n }\n\n async doesCollectionTreeItemTableRowHaveIcon(name: string, icon: string) {\n await this.waitForVisible(this.collectionTreeItemTableRow.first());\n await this.isVisible(this.collectionTreeItemTableRow.filter({hasText: name}).locator('umb-icon').locator('[name=\"' + icon + '\"]'));\n }\n\n // Reference Methods\n async clickReferenceNodeLinkWithName(name: string) {\n await this.click(this.page.locator('[name=\"' + name + '\"] a#open-part'));\n }\n\n async doesReferenceHeadlineHaveText(text: string) {\n await this.containsText(this.referenceHeadline, text);\n }\n\n async isReferenceHeadlineVisible(isVisible: boolean) {\n await this.isVisible(this.referenceHeadline, isVisible);\n }\n\n async doesReferenceItemsHaveCount(count: number) {\n await this.hasCount(this.entityItemRef, count);\n }\n\n async isReferenceItemNameVisible(itemName: string) {\n await this.isVisible(this.entityItemRef.locator('uui-ref-node[name=\"' + itemName + '\"]'));\n }\n\n async doesReferencesContainText(text: string) {\n await this.containsText(this.confirmActionModalEntityReferences, text);\n }\n\n // Entity Action Methods\n async clickEntityActionWithName(name: string) {\n const regex = new RegExp(`^entity-action:.*${name}$`);\n await this.click(this.openEntityAction.getByTestId(regex).filter({has: this.page.locator(':visible')}));\n }\n\n async clickCreateActionMenuOption() {\n await this.clickEntityActionWithName('Create');\n }\n\n async clickTrashActionMenuOption() {\n await this.clickEntityActionWithName('Trash');\n }\n\n async clickMoveToActionMenuOption() {\n await this.clickEntityActionWithName('MoveTo');\n }\n\n async clickCreateBlueprintActionMenuOption() {\n await this.clickEntityActionWithName('CreateBlueprint');\n }\n\n async clickDuplicateToActionMenuOption() {\n await this.clickEntityActionWithName('DuplicateTo');\n }\n\n async clickPublishActionMenuOption() {\n await this.clickEntityActionWithName('Publish');\n }\n\n async clickUnpublishActionMenuOption() {\n await this.clickEntityActionWithName('Unpublish');\n }\n\n async clickRollbackActionMenuOption() {\n await this.clickEntityActionWithName('Rollback');\n }\n\n async clickCultureAndHostnamesActionMenuOption() {\n await this.clickEntityActionWithName('CultureAndHostnames');\n }\n\n async clickPublicAccessActionMenuOption() {\n await this.clickEntityActionWithName('PublicAccess');\n }\n\n async clickSortChildrenActionMenuOption() {\n await this.clickEntityActionWithName('SortChildrenOf');\n }\n\n async clickNotificationsActionMenuOption() {\n await this.clickEntityActionWithName('Notifications');\n }\n\n async clickReloadChildrenActionMenuOption() {\n await this.clickEntityActionWithName('ReloadChildrenOf');\n }\n\n async clickDeleteActionMenuOption() {\n await this.clickEntityActionWithName('Delete');\n }\n\n async clickRestoreActionMenuOption() {\n await this.clickEntityActionWithName('Restore');\n }\n\n async clickRenameActionMenuOption() {\n await this.clickEntityActionWithName('Rename');\n }\n\n async clickCreateOptionsActionMenuOption() {\n await this.clickEntityActionWithName('CreateOptions');\n }\n\n async clickExportActionMenuOption() {\n await this.clickEntityActionWithName('Export');\n }\n\n async clickImportActionMenuOption() {\n await this.clickEntityActionWithName('Import');\n }\n\n async clickUpdateActionMenuOption() {\n await this.clickEntityActionWithName('Update');\n }\n\n async clickLockActionMenuOption() {\n await this.clickEntityActionWithName('Lock');\n }\n\n // Entity Item Methods\n async clickEntityItemByName(itemName: string) {\n await this.click(this.page.locator('uui-ref-node,umb-ref-item[name=\"' + itemName + '\"]'));\n }\n\n // Workspace Action Methods\n async clickWorkspaceActionMenuButton() {\n await this.click(this.workspaceActionMenuBtn);\n }\n\n // Pagination Methods\n async clickNextPaginationButton() {\n await this.click(this.nextPaginationBtn);\n }\n\n // Editor Methods\n async enterMonacoEditorValue(value: string) {\n await this.click(this.monacoEditor);\n await this.pressKey(this.monacoEditor, 'Control+A');\n await this.pressKey(this.monacoEditor, 'Backspace');\n await this.page.keyboard.insertText(value);\n }\n\n // Loader Methods\n async waitUntilUiLoaderIsNoLongerVisible() {\n await this.waitForHidden(this.uiLoader, 10000);\n }\n\n // Dashboard Methods\n async isDashboardTabWithNameVisible(name: string, isVisible: boolean = true) {\n await this.isVisible(this.page.locator('uui-tab[label=\"' + name + '\"]'), isVisible);\n }\n\n async isWorkspaceViewTabWithAliasVisible(alias: string, isVisible: boolean = true) {\n await this.isVisible(this.page.getByTestId('workspace:view-link:' + alias), isVisible);\n }\n\n // Submit Button Methods\n async isSubmitButtonDisabled() {\n await this.isVisible(this.submitBtn);\n await this.isDisabled(this.submitBtn);\n }\n\n // Data Element Methods\n async clickDataElement(elementName: string, options: any = null) {\n await this.click(this.page.locator(`[data-element=\"${elementName}\"]`), options);\n }\n\n async getDataElement(elementName: string) {\n return this.page.locator(`[data-element=\"${elementName}\"]`);\n }\n\n getLocatorWithDataMark(dataMark: string) {\n return this.page.getByTestId(dataMark);\n }\n\n // Text Visibility Methods\n async isTextWithExactNameVisible(name: string, isVisible = true) {\n return expect(this.page.getByText(name, {exact: true})).toBeVisible({visible: isVisible});\n }\n\n async isTextWithMessageVisible(message: string, isVisible: boolean = true) {\n return await expect(this.page.getByText(message)).toBeVisible({visible: isVisible});\n }\n\n getTextLocatorWithName(name: string) {\n return this.page.getByText(name, {exact: true});\n }\n}\n"]}
1
+ {"version":3,"file":"UiBaseLocators.js","sourceRoot":"","sources":["../../../lib/helpers/UiBaseLocators.ts"],"names":[],"mappings":"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","sourcesContent":["import {expect, Locator, Page} from \"@playwright/test\"\nimport {ConstantHelper} from \"./ConstantHelper\";\nimport {BasePage} from \"./BasePage\";\n\nexport class UiBaseLocators extends BasePage {\n // Core Action Buttons\n public readonly saveBtn: Locator;\n public readonly submitBtn: Locator;\n public readonly confirmBtn: Locator;\n public readonly chooseBtn: Locator;\n public readonly chooseModalBtn: Locator;\n public readonly createBtn: Locator;\n public readonly addBtn: Locator;\n public readonly updateBtn: Locator;\n public readonly changeBtn: Locator;\n public readonly deleteBtn: Locator;\n public readonly deleteExactBtn: Locator;\n public readonly removeExactBtn: Locator;\n public readonly insertBtn: Locator;\n public readonly renameBtn: Locator;\n public readonly reloadBtn: Locator;\n public readonly reloadChildrenBtn: Locator;\n public readonly restoreBtn: Locator;\n public readonly disableBtn: Locator;\n public readonly enableBtn: Locator;\n public readonly actionBtn: Locator;\n public readonly nextBtn: Locator;\n\n // Confirmation Buttons\n public readonly confirmToDeleteBtn: Locator;\n public readonly confirmCreateFolderBtn: Locator;\n public readonly confirmToRemoveBtn: Locator;\n public readonly confirmToSubmitBtn: Locator;\n public readonly confirmDisableBtn: Locator;\n public readonly confirmEnableBtn: Locator;\n public readonly confirmRenameBtn: Locator;\n public readonly confirmTrashBtn: Locator;\n\n // Folder Management\n public readonly createFolderBtn: Locator;\n public readonly folderNameTxt: Locator;\n public readonly folderBtn: Locator;\n public readonly newFolderThreeDotsBtn: Locator;\n public readonly renameFolderThreeDotsBtn: Locator;\n public readonly renameFolderBtn: Locator;\n public readonly updateFolderBtn: Locator;\n public readonly deleteFolderThreeDotsBtn: Locator;\n\n // Navigation & Menu\n public readonly breadcrumbBtn: Locator;\n public readonly leftArrowBtn: Locator;\n public readonly caretBtn: Locator;\n public readonly modalCaretBtn: Locator;\n public readonly backOfficeHeader: Locator;\n public readonly backOfficeMain: Locator;\n public readonly sectionLinks: Locator;\n public readonly sectionSidebar: Locator;\n public readonly menuItem: Locator;\n public readonly actionsMenuContainer: Locator;\n public readonly treeItem: Locator;\n\n // Three Dots Menu Buttons\n public readonly createThreeDotsBtn: Locator;\n public readonly renameThreeDotsBtn: Locator;\n public readonly deleteThreeDotsBtn: Locator;\n\n // Modal & Container\n public readonly sidebarModal: Locator;\n public readonly openedModal: Locator;\n public readonly container: Locator;\n public readonly containerChooseBtn: Locator;\n public readonly containerSaveAndPublishBtn: Locator;\n public readonly createModalBtn: Locator;\n\n // Document Type & Property Editor\n public readonly documentTypeNode: Locator;\n public readonly propertyNameTxt: Locator;\n public readonly selectPropertyEditorBtn: Locator;\n public readonly editorSettingsBtn: Locator;\n public readonly enterPropertyEditorDescriptionTxt: Locator;\n public readonly property: Locator;\n public readonly addPropertyBtn: Locator;\n public readonly labelAboveBtn: Locator;\n\n // Group & Tab Management\n public readonly addGroupBtn: Locator;\n public readonly groupLabel: Locator;\n public readonly typeGroups: Locator;\n public readonly addTabBtn: Locator;\n public readonly unnamedTabTxt: Locator;\n public readonly structureTabBtn: Locator;\n\n // Validation & Mandatory\n public readonly mandatoryToggle: Locator;\n public readonly validation: Locator;\n public readonly regexTxt: Locator;\n public readonly regexMessageTxt: Locator;\n public readonly validationMessage: Locator;\n\n // Composition & Structure\n public readonly compositionsBtn: Locator;\n public readonly allowAtRootBtn: Locator;\n public readonly allowedChildNodesModal: Locator;\n public readonly addCollectionBtn: Locator;\n\n // Reorder\n public readonly iAmDoneReorderingBtn: Locator;\n public readonly reorderBtn: Locator;\n\n // Query Builder\n public readonly queryBuilderBtn: Locator;\n public readonly queryBuilderOrderedBy: Locator;\n public readonly queryBuilderCreateDate: Locator;\n public readonly queryBuilderShowCode: Locator;\n public readonly wherePropertyAliasBtn: Locator;\n public readonly whereOperatorBtn: Locator;\n public readonly whereConstrainValueTxt: Locator;\n public readonly orderByPropertyAliasBtn: Locator;\n public readonly ascendingBtn: Locator;\n public readonly chooseRootContentBtn: Locator;\n public readonly returnedItemsCount: Locator;\n public readonly queryResults: Locator;\n\n // Insert & Template\n public readonly insertValueBtn: Locator;\n public readonly insertPartialViewBtn: Locator;\n public readonly insertDictionaryItemBtn: Locator;\n public readonly chooseFieldDropDown: Locator;\n public readonly systemFieldsOption: Locator;\n public readonly chooseFieldValueDropDown: Locator;\n public readonly breadcrumbsTemplateModal: Locator;\n\n // Rename\n public readonly newNameTxt: Locator;\n public readonly renameModalBtn: Locator;\n\n // State & Notification\n public readonly successState: Locator;\n public readonly successStateIcon: Locator;\n public readonly failedStateButton: Locator;\n public readonly successNotification: Locator;\n public readonly errorNotification: Locator;\n\n // Search & Filter\n public readonly typeToFilterSearchTxt: Locator;\n public readonly filterChooseBtn: Locator;\n\n // Text Input\n public readonly textAreaInputArea: Locator;\n public readonly enterAName: Locator;\n public readonly descriptionBtn: Locator;\n public readonly enterDescriptionTxt: Locator;\n public readonly aliasLockBtn: Locator;\n public readonly aliasNameTxt: Locator;\n\n // Icon\n public readonly iconBtn: Locator;\n\n // Create Link\n public readonly createLink: Locator;\n\n // Recycle Bin\n public readonly recycleBinBtn: Locator;\n public readonly recycleBinMenuItem: Locator;\n public readonly recycleBinMenuItemCaretBtn: Locator;\n\n // View Options\n public readonly gridBtn: Locator;\n public readonly listBtn: Locator;\n public readonly viewBundleBtn: Locator;\n\n // Media\n public readonly mediaCardItems: Locator;\n public readonly mediaPickerModalSubmitBtn: Locator;\n public readonly mediaCaptionAltTextModalSubmitBtn: Locator;\n public readonly clickToUploadBtn: Locator;\n public readonly inputDropzone: Locator;\n public readonly imageCropperField: Locator;\n public readonly inputUploadField: Locator;\n public readonly chooseMediaInputBtn: Locator;\n\n // Embedded Media\n public readonly embeddedMediaModal: Locator;\n public readonly embeddedURLTxt: Locator;\n public readonly embeddedRetrieveBtn: Locator;\n public readonly embeddedMediaModalConfirmBtn: Locator;\n public readonly embeddedPreview: Locator;\n\n // Document & Content\n public readonly chooseDocumentInputBtn: Locator;\n public readonly createDocumentBlueprintBtn: Locator;\n public readonly createDocumentBlueprintModal: Locator;\n public readonly createNewDocumentBlueprintBtn: Locator;\n\n // User\n public readonly currentUserAvatarBtn: Locator;\n public readonly newPasswordTxt: Locator;\n public readonly confirmPasswordTxt: Locator;\n public readonly currentPasswordTxt: Locator;\n\n // Collection & Table\n public readonly collectionTreeItemTableRow: Locator;\n public readonly createActionButtonCollection: Locator;\n public readonly createActionBtn: Locator;\n public readonly createOptionActionListModal: Locator;\n\n // Reference & Entity\n public readonly confirmActionModalEntityReferences: Locator;\n public readonly referenceHeadline: Locator;\n public readonly entityItemRef: Locator;\n public readonly entityItem: Locator;\n\n // Workspace & Action\n public readonly workspaceAction: Locator;\n public readonly workspaceActionMenuBtn: Locator;\n public readonly entityAction: Locator;\n public readonly openEntityAction: Locator;\n\n // Pagination\n public readonly firstPaginationBtn: Locator;\n public readonly nextPaginationBtn: Locator;\n\n // Editor\n public readonly monacoEditor: Locator;\n\n // Loader\n public readonly uiLoader: Locator;\n\n constructor(page: Page) {\n super(page);\n\n // Core Action Buttons\n this.saveBtn = page.getByLabel('Save', {exact: true});\n this.submitBtn = page.getByLabel('Submit');\n this.confirmBtn = page.getByLabel('Confirm');\n this.chooseBtn = page.getByLabel('Choose', {exact: true});\n this.chooseModalBtn = page.locator('uui-modal-sidebar').locator('[look=\"primary\"]').getByLabel('Choose');\n this.createBtn = page.getByRole('button', {name: /^Create(…)?$/});\n this.addBtn = page.getByRole('button', {name: 'Add', exact: true});\n this.updateBtn = page.getByLabel('Update');\n this.changeBtn = page.getByLabel('Change');\n this.deleteBtn = page.getByRole('button', {name: /^Delete(…)?$/});\n this.deleteExactBtn = page.getByRole('button', {name: 'Delete', exact: true});\n this.removeExactBtn = page.getByLabel('Remove', {exact: true});\n this.insertBtn = page.locator('uui-box uui-button').filter({hasText: 'Insert'});\n this.renameBtn = page.getByRole('button', {name: /^Rename(…)?$/});\n this.reloadBtn = page.getByRole('button', {name: 'Reload', exact: true});\n this.reloadChildrenBtn = page.getByRole('button', {name: 'Reload children'});\n this.restoreBtn = page.getByLabel('Restore', {exact: true});\n this.disableBtn = page.getByLabel('Disable', {exact: true});\n this.enableBtn = page.getByLabel('Enable');\n this.actionBtn = page.getByTestId('workspace:action-menu-button');\n this.nextBtn = page.getByLabel('Next');\n \n // Confirmation Buttons\n this.confirmToDeleteBtn = page.locator('#confirm').getByLabel('Delete');\n this.confirmCreateFolderBtn = page.locator('#confirm').getByLabel('Create Folder');\n this.confirmToRemoveBtn = page.locator('#confirm').getByLabel('Remove');\n this.confirmToSubmitBtn = page.locator('#confirm').getByLabel('Submit');\n this.confirmDisableBtn = page.locator('#confirm').getByLabel('Disable');\n this.confirmEnableBtn = page.locator('#confirm').getByLabel('Enable');\n this.confirmRenameBtn = page.locator('#confirm').getByLabel('Rename');\n this.confirmTrashBtn = page.locator('#confirm').getByLabel('Trash');\n \n // Folder Management\n this.createFolderBtn = page.getByLabel('Create folder');\n this.folderNameTxt = page.getByLabel('Enter a folder name');\n this.folderBtn = page.locator('umb-entity-create-option-action-list-modal').locator('umb-ref-item', {hasText: 'Folder'});\n this.newFolderThreeDotsBtn = page.getByLabel('New Folder…');\n this.renameFolderThreeDotsBtn = page.getByRole('button', {name: 'Rename folder…'});\n this.renameFolderBtn = page.getByLabel('Rename folder');\n this.updateFolderBtn = page.getByLabel('Update folder');\n this.deleteFolderThreeDotsBtn = page.locator('#action-modal').getByLabel('Delete Folder...');\n \n // Navigation & Menu\n this.breadcrumbBtn = page.getByLabel('Breadcrumb');\n this.leftArrowBtn = page.locator('[name=\"icon-arrow-left\"] svg');\n this.caretBtn = page.locator('#caret-button');\n this.modalCaretBtn = page.locator('uui-modal-sidebar').locator('#caret-button');\n this.backOfficeHeader = page.locator('umb-backoffice-header');\n this.backOfficeMain = page.locator('umb-backoffice-main');\n this.sectionLinks = page.getByTestId('section-links');\n this.sectionSidebar = page.locator('umb-section-sidebar');\n this.menuItem = page.locator('uui-menu-item');\n this.actionsMenuContainer = page.locator('uui-scroll-container');\n this.treeItem = page.locator('umb-tree-item');\n\n // Three Dots Menu Buttons\n this.createThreeDotsBtn = page.getByText('Create…', {exact: true});\n this.renameThreeDotsBtn = page.getByLabel('Rename…', {exact: true});\n this.deleteThreeDotsBtn = page.getByLabel('Delete…');\n \n // Modal & Container\n this.sidebarModal = page.locator('uui-modal-sidebar');\n this.openedModal = page.locator('uui-modal-container[backdrop]');\n this.container = page.locator('#container');\n this.containerChooseBtn = page.locator('#container').getByLabel('Choose');\n this.containerSaveAndPublishBtn = page.locator('#container').getByLabel('Save and Publish');\n this.createModalBtn = page.locator('uui-modal-sidebar').getByLabel('Create', {exact: true});\n \n // Document Type & Property Editor\n this.documentTypeNode = page.locator('uui-ref-node-document-type');\n this.propertyNameTxt = page.getByTestId('input:entity-name').locator('#input').first();\n this.selectPropertyEditorBtn = page.getByLabel('Select Property Editor');\n this.editorSettingsBtn = page.getByLabel('Editor settings');\n this.enterPropertyEditorDescriptionTxt = page.locator('uui-modal-sidebar').getByTestId('input:entity-description').locator('#textarea');\n this.property = page.locator('umb-property');\n this.addPropertyBtn = page.getByLabel('Add property', {exact: true});\n this.labelAboveBtn = page.locator('.appearance-option').filter({hasText: 'Label above'});\n \n // Group & Tab Management\n this.addGroupBtn = page.getByLabel('Add group', {exact: true});\n this.groupLabel = page.getByLabel('Group', {exact: true});\n this.typeGroups = page.locator('umb-content-type-design-editor-group');\n this.addTabBtn = page.getByLabel('Add tab');\n this.unnamedTabTxt = page.getByTestId('tab:').getByTestId('tab:name-input').locator('#input');\n this.structureTabBtn = page.locator('uui-tab').filter({hasText: 'Structure'}).locator('svg');\n \n // Validation & Mandatory\n this.mandatoryToggle = page.locator('#mandatory #toggle');\n this.validation = page.locator('#native');\n this.regexTxt = page.locator('input[name=\"pattern\"]');\n this.regexMessageTxt = page.locator('textarea[name=\"pattern-message\"]');\n this.validationMessage = page.locator('umb-form-validation-message').locator('#messages');\n \n // Composition & Structure\n this.compositionsBtn = page.getByLabel('Compositions');\n this.allowAtRootBtn = page.locator('label').filter({hasText: 'Allow at root'});\n this.allowedChildNodesModal = page.locator('umb-tree-picker-modal');\n this.addCollectionBtn = page.locator('umb-input-content-type-collection-configuration #create-button');\n \n // Reorder\n this.iAmDoneReorderingBtn = page.getByLabel('I am done reordering');\n this.reorderBtn = page.getByLabel('Reorder');\n \n // Query Builder\n this.queryBuilderBtn = page.locator('#query-builder-button');\n this.queryBuilderOrderedBy = page.locator('#property-alias-dropdown').getByLabel('Property alias');\n this.queryBuilderCreateDate = page.locator('#property-alias-dropdown').getByText('CreateDate').locator(\"..\");\n this.queryBuilderShowCode = page.locator('umb-code-block');\n this.wherePropertyAliasBtn = page.locator('#property-alias-dropdown');\n this.whereOperatorBtn = page.locator('#operator-dropdown');\n this.whereConstrainValueTxt = page.getByLabel('constrain value');\n this.orderByPropertyAliasBtn = page.locator('#sort-dropdown');\n this.ascendingBtn = page.locator('[key=\"template_ascending\"]');\n this.chooseRootContentBtn = page.getByLabel('Choose root document');\n this.returnedItemsCount = page.locator('#results-count');\n this.queryResults = page.locator('.query-results');\n \n // Insert & Template\n this.insertValueBtn = page.locator('uui-button').filter({has: page.locator('[key=\"template_insertPageField\"]')});\n this.insertPartialViewBtn = page.locator('uui-button').filter({has: page.locator('[key=\"template_insertPartialView\"]')});\n this.insertDictionaryItemBtn = page.locator('uui-button').filter({has: page.locator('[key=\"template_insertDictionaryItem\"]')});\n this.chooseFieldDropDown = page.locator('#preview #expand-symbol-wrapper');\n this.systemFieldsOption = page.getByText('System fields');\n this.chooseFieldValueDropDown = page.locator('#value #expand-symbol-wrapper');\n this.breadcrumbsTemplateModal = page.locator('uui-modal-sidebar').locator('umb-template-workspace-editor uui-breadcrumbs');\n \n // Rename\n this.newNameTxt = page.getByRole('textbox', {name: 'Enter new name...'});\n this.renameModalBtn = page.locator('umb-rename-modal').getByLabel('Rename');\n \n // State & Notification\n this.successState = page.locator('[state=\"success\"]');\n this.successStateIcon = page.locator('[state=\"success\"]').locator('#state');\n this.failedStateButton = page.locator('uui-button[state=\"failed\"]');\n this.successNotification = page.locator('uui-toast-notification[open][color=\"positive\"]');\n this.errorNotification = page.locator('uui-toast-notification[open][color=\"danger\"]');\n \n // Search & Filter\n this.typeToFilterSearchTxt = page.locator('[type=\"search\"] #input');\n this.filterChooseBtn = page.locator('button').filter({hasText: 'Choose'});\n \n // Text Input\n this.textAreaInputArea = page.locator('textarea.ime-text-area');\n this.enterAName = page.getByLabel('Enter a name...', {exact: true});\n this.descriptionBtn = page.getByLabel('Description');\n this.enterDescriptionTxt = page.getByLabel('Enter a description...');\n this.aliasLockBtn = page.locator('#name').getByLabel('Unlock input');\n this.aliasNameTxt = page.locator('#name').getByLabel('alias');\n \n // Icon\n this.iconBtn = page.getByLabel('icon');\n \n // Create Link\n this.createLink = page.getByRole('link', {name: 'Create', exact: true});\n \n // Recycle Bin\n this.recycleBinBtn = page.getByLabel('Recycle Bin', {exact: true});\n this.recycleBinMenuItem = page.locator('uui-menu-item[label=\"Recycle Bin\"]');\n this.recycleBinMenuItemCaretBtn = page.locator('uui-menu-item[label=\"Recycle Bin\"]').locator('#caret-button');\n \n // View Options\n this.gridBtn = page.getByLabel('Grid');\n this.listBtn = page.getByLabel('List');\n this.viewBundleBtn = page.locator('umb-collection-view-bundle uui-button svg');\n \n // Media\n this.mediaCardItems = page.locator('uui-card-media');\n this.mediaPickerModalSubmitBtn = page.locator('umb-media-picker-modal').getByLabel('Submit');\n this.mediaCaptionAltTextModalSubmitBtn = page.locator('umb-media-caption-alt-text-modal').getByLabel('Submit');\n this.clickToUploadBtn = page.locator('#splitViews').getByRole('button', {name: 'Click to upload'});\n this.inputDropzone = page.locator('umb-input-dropzone');\n this.imageCropperField = page.locator('umb-image-cropper-field');\n this.inputUploadField = page.locator('umb-input-upload-field').locator('#wrapperInner');\n this.chooseMediaInputBtn = page.locator('umb-input-media').getByLabel('Choose');\n \n // Embedded Media\n this.embeddedMediaModal = page.locator('umb-embedded-media-modal');\n this.embeddedURLTxt = page.locator('umb-embedded-media-modal').locator('[label=\"URL\"] #input');\n this.embeddedRetrieveBtn = page.locator('umb-embedded-media-modal').locator('[label=\"Retrieve\"]');\n this.embeddedMediaModalConfirmBtn = page.locator('umb-embedded-media-modal').getByLabel('Confirm');\n this.embeddedPreview = page.locator('umb-embedded-media-modal').locator('[label=\"Preview\"]');\n \n // Document & Content\n this.chooseDocumentInputBtn = page.locator('umb-input-document').getByLabel('Choose');\n this.createDocumentBlueprintBtn = page.getByLabel(/^Create Document Blueprint(…)?$/);\n this.createDocumentBlueprintModal = page.locator('umb-document-blueprint-options-create-modal');\n this.createNewDocumentBlueprintBtn = page.locator('umb-document-blueprint-options-create-modal').locator('umb-ref-item', {hasText: 'Document Blueprint for'});\n \n // User\n this.currentUserAvatarBtn = page.getByTestId('header-app:Umb.HeaderApp.CurrentUser').locator('uui-avatar');\n this.currentPasswordTxt = page.locator('input[name=\"oldPassword\"]');\n this.newPasswordTxt = page.locator('input[name=\"newPassword\"]');\n this.confirmPasswordTxt = page.locator('input[name=\"confirmPassword\"]');\n \n // Collection & Table\n this.collectionTreeItemTableRow = page.locator('umb-collection-workspace-view umb-table uui-table-row');\n this.createActionButtonCollection = page.locator('umb-collection-create-action-button');\n this.createActionBtn = page.locator('umb-collection-create-action-button').locator('[label=\"Create\"]');\n this.createOptionActionListModal = page.locator('umb-entity-create-option-action-list-modal');\n \n // Reference & Entity\n this.confirmActionModalEntityReferences = page.locator('umb-confirm-action-modal-entity-references,umb-confirm-bulk-action-modal-entity-references');\n this.referenceHeadline = page.locator('umb-confirm-action-modal-entity-references,umb-confirm-bulk-action-modal-entity-references').locator('#reference-headline').first();\n this.entityItemRef = page.locator('umb-confirm-action-modal-entity-references,umb-confirm-bulk-action-modal-entity-references').locator('uui-ref-list').first().getByTestId('entity-item-ref');\n this.entityItem = page.locator('umb-entity-item-ref');\n \n // Workspace & Action\n this.workspaceAction = page.locator('umb-workspace-action');\n this.workspaceActionMenuBtn = page.getByTestId('workspace:action-menu-button');\n this.entityAction = page.locator('umb-entity-action-list umb-entity-action');\n this.openEntityAction = page.locator('#action-modal[open]').locator(page.locator('umb-entity-action-list umb-entity-action'));\n \n // Pagination\n this.firstPaginationBtn = page.locator('umb-collection-pagination').getByLabel('First');\n this.nextPaginationBtn = page.locator('umb-collection-pagination').getByLabel('Next');\n \n // Editor\n this.monacoEditor = page.locator('.monaco-editor');\n \n // Loader\n this.uiLoader = page.locator('uui-loader');\n }\n\n // Helper Methods\n getMenuItemByLabel(name: string): Locator {\n return this.page.locator(`uui-menu-item[label=\"${name}\"]`);\n }\n\n // Actions Menu Methods\n async clickActionsMenuForNameInSectionSidebar(name: string) {\n await this.sectionSidebar.locator('[label=\"' + name + '\"]').hover();\n await this.click(this.sectionSidebar.locator('[label=\"' + name + '\"] >> [label=\"Open actions menu\"]').first());\n }\n\n async clickActionsMenuForName(name: string) {\n const menuItem = this.getMenuItemByLabel(name);\n await this.page.waitForTimeout(ConstantHelper.wait.medium);\n await menuItem.locator('#menu-item').first().hover({force: true});\n await this.click(menuItem.locator('#action-modal').first(), {force: true});\n }\n\n async isActionsMenuForNameVisible(name: string, isVisible = true) {\n const menuItem = this.getMenuItemByLabel(name);\n await this.click(menuItem);\n await expect(menuItem.locator('#action-modal').first()).toBeVisible({visible: isVisible});\n }\n\n // Caret Button Methods\n async clickCaretButtonForName(name: string) {\n await this.isCaretButtonWithNameVisible(name);\n await this.click(this.getMenuItemByLabel(name).locator('#caret-button').first());\n }\n\n async isCaretButtonWithNameVisible(name: string, isVisible = true) {\n await expect(this.getMenuItemByLabel(name).locator('#caret-button').first()).toBeVisible({visible: isVisible});\n }\n\n async clickCaretButton() {\n await this.click(this.caretBtn);\n }\n\n async openCaretButtonForName(name: string, isInModal: boolean = false) {\n let menuItem: Locator;\n if (isInModal) {\n menuItem = this.sidebarModal.locator(`uui-menu-item[label=\"${name}\"]`);\n } else {\n menuItem = this.getMenuItemByLabel(name);\n }\n const isCaretButtonOpen = await menuItem.getAttribute('show-children');\n if (isCaretButtonOpen === null) {\n await this.clickCaretButtonForName(name);\n }\n }\n\n // Tree Methods\n async reloadTree(treeName: string) {\n await this.isVisible(this.page.getByLabel(treeName, {exact: true}));\n await this.page.waitForTimeout(ConstantHelper.wait.short);\n await this.clickActionsMenuForName(treeName);\n await this.clickReloadChildrenActionMenuOption();\n await this.openCaretButtonForName(treeName);\n }\n\n async isTreeItemVisible(name: string, isVisible = true) {\n await this.isVisible(this.treeItem.locator('[label=\"' + name + '\"]'), isVisible);\n }\n\n async doesTreeItemHaveTheCorrectIcon(name: string, icon: string) {\n return await this.isVisible(this.treeItem.filter({hasText: name}).locator('umb-icon').locator('[name=\"' + icon + '\"]'));\n }\n\n // Core Button Click Methods\n async clickReloadButton() {\n await this.click(this.reloadBtn);\n }\n\n async clickReloadChildrenButton() {\n await this.click(this.reloadChildrenBtn, {force: true});\n }\n\n async clickSaveButton() {\n await this.click(this.saveBtn);\n await this.page.waitForTimeout(ConstantHelper.wait.short);\n }\n\n async clickChooseButton() {\n await this.click(this.chooseBtn);\n }\n\n async clickChooseContainerButton() {\n await this.click(this.containerChooseBtn);\n }\n\n async clickSubmitButton() {\n await this.click(this.submitBtn);\n }\n\n async clickConfirmButton() {\n await this.click(this.confirmBtn);\n }\n\n async clickCreateButton() {\n await this.click(this.createBtn);\n }\n\n async clickAddButton() {\n await this.click(this.addBtn);\n }\n\n async clickUpdateButton() {\n await this.click(this.updateBtn);\n }\n\n async clickChangeButton() {\n await this.click(this.changeBtn);\n }\n\n async clickDeleteButton() {\n await this.click(this.deleteBtn);\n }\n\n async clickDeleteExactButton() {\n await this.click(this.deleteExactBtn);\n }\n\n async clickRemoveExactButton() {\n await this.click(this.removeExactBtn);\n }\n\n async clickInsertButton() {\n await this.click(this.insertBtn);\n }\n\n async clickRenameButton() {\n await this.click(this.renameBtn);\n }\n\n async clickRestoreButton() {\n await this.click(this.restoreBtn);\n }\n\n async clickDisableButton() {\n await this.click(this.disableBtn);\n }\n\n async clickEnableButton() {\n await this.click(this.enableBtn);\n }\n\n async clickActionButton() {\n await this.click(this.actionBtn);\n }\n\n async clickNextButton() {\n await this.click(this.nextBtn);\n }\n\n async clickBreadcrumbButton() {\n await this.click(this.breadcrumbBtn);\n }\n\n async clickLeftArrowButton() {\n await this.click(this.leftArrowBtn);\n }\n\n // Confirmation Button Methods\n async clickConfirmToDeleteButton() {\n await this.click(this.confirmToDeleteBtn);\n await this.page.waitForTimeout(ConstantHelper.wait.short);\n }\n\n async clickConfirmCreateFolderButton() {\n await this.click(this.confirmCreateFolderBtn);\n await this.page.waitForTimeout(ConstantHelper.wait.short);\n }\n\n async clickConfirmRemoveButton() {\n await this.click(this.confirmToRemoveBtn);\n }\n\n async clickConfirmToSubmitButton() {\n await this.click(this.confirmToSubmitBtn);\n }\n\n async clickConfirmDisableButton() {\n await this.click(this.confirmDisableBtn);\n }\n\n async clickConfirmEnableButton() {\n await this.click(this.confirmEnableBtn);\n }\n\n async clickConfirmRenameButton() {\n await this.click(this.confirmRenameBtn);\n }\n\n async clickConfirmTrashButton() {\n await this.click(this.confirmTrashBtn);\n await this.page.waitForTimeout(ConstantHelper.wait.short);\n }\n\n async clickDeleteAndConfirmButton() {\n await this.clickDeleteActionMenuOption();\n await this.clickConfirmToDeleteButton();\n }\n\n // Folder Methods\n async clickCreateFolderButton() {\n await this.click(this.createFolderBtn);\n await this.page.waitForTimeout(ConstantHelper.wait.short);\n }\n\n async enterFolderName(folderName: string) {\n await this.enterText(this.folderNameTxt, folderName, {verify: true});\n }\n\n async createFolder(folderName: string) {\n await this.clickCreateActionMenuOption();\n await this.clickNewFolderThreeDotsButton();\n await this.enterFolderName(folderName);\n await this.clickConfirmCreateFolderButton();\n }\n\n async deleteFolder() {\n await this.clickDeleteActionMenuOption();\n await this.clickConfirmToDeleteButton();\n }\n\n async clickFolderButton() {\n await this.click(this.folderBtn);\n }\n\n async clickNewFolderThreeDotsButton() {\n await this.click(this.newFolderThreeDotsBtn);\n }\n\n async clickRenameFolderThreeDotsButton() {\n await this.click(this.renameFolderThreeDotsBtn);\n }\n\n async clickRenameFolderButton() {\n await this.clickRenameButton();\n }\n\n async clickUpdateFolderButton() {\n await this.click(this.updateFolderBtn);\n }\n\n // Three Dots Menu Methods\n async clickCreateThreeDotsButton() {\n await this.click(this.createThreeDotsBtn);\n }\n\n async clickFilterChooseButton() {\n await this.click(this.filterChooseBtn);\n }\n\n // Success State Methods\n async isSuccessStateVisibleForSaveButton(isVisible: boolean = true) {\n const regex = new RegExp(`^workspace-action:.*Save$`);\n const saveButtonLocator = this.page.getByTestId(regex);\n const saveBtn = this.workspaceAction.filter({has: saveButtonLocator});\n await expect(saveBtn.locator(this.successState)).toBeVisible({visible: isVisible, timeout: ConstantHelper.timeout.long});\n }\n\n async isSuccessButtonWithTextVisible(text: string) {\n return await this.isVisible(this.successState.filter({hasText: text}));\n }\n\n async isSuccessStateIconVisible() {\n await this.isVisible(this.successStateIcon);\n }\n\n async isFailedStateButtonVisible() {\n await this.isVisible(this.failedStateButton);\n }\n\n // Notification Methods\n async isSuccessNotificationVisible(isVisible: boolean = true) {\n return await expect(this.successNotification.first()).toBeVisible({visible: isVisible, timeout: ConstantHelper.timeout.long});\n }\n\n async doesSuccessNotificationsHaveCount(count: number) {\n await this.hasCount(this.successNotification, count);\n }\n\n async doesSuccessNotificationHaveText(text: string, isVisible: boolean = true, deleteNotification = false, timeout = 5000) {\n const response = await expect(this.successNotification.filter({hasText: text})).toBeVisible({\n visible: isVisible,\n timeout: timeout\n });\n if (deleteNotification) {\n await this.click(this.successNotification.filter({hasText: text}).getByLabel('close'), {force: true});\n }\n return response;\n }\n\n async isErrorNotificationVisible(isVisible: boolean = true) {\n return await expect(this.errorNotification.first()).toBeVisible({visible: isVisible});\n }\n\n async doesErrorNotificationHaveText(text: string, isVisible: boolean = true, deleteNotification: boolean = false) {\n const response = await expect(this.errorNotification.filter({hasText: text})).toBeVisible({visible: isVisible});\n if (deleteNotification) {\n await this.click(this.errorNotification.filter({hasText: text}).locator('svg'));\n }\n return response;\n }\n\n // Modal Methods\n async clickChooseModalButton() {\n await this.click(this.chooseModalBtn);\n }\n\n async clickCreateModalButton() {\n await this.click(this.createModalBtn);\n }\n\n async clickModalMenuItemWithName(name: string) {\n await this.click(this.openedModal.locator(`uui-menu-item[label=\"${name}\"]`));\n }\n\n async isModalMenuItemWithNameDisabled(name: string) {\n await this.hasAttribute(this.sidebarModal.locator(`uui-menu-item[label=\"${name}\"]`), 'disabled', '');\n }\n\n async isModalMenuItemWithNameVisible(name: string, isVisible: boolean = true) {\n await this.isVisible(this.sidebarModal.locator(`uui-menu-item[label=\"${name}\"]`), isVisible);\n }\n\n // Container Methods\n async clickContainerSaveAndPublishButton() {\n await this.click(this.containerSaveAndPublishBtn);\n await this.page.waitForTimeout(ConstantHelper.wait.short);\n }\n\n // Navigation Methods\n async goToSection(sectionName: string, checkSections = true, skipReload = false) {\n if (checkSections) {\n for (let section in ConstantHelper.sections) {\n await expect(this.sectionLinks.getByRole('tab', {name: ConstantHelper.sections[section]})).toBeVisible({timeout: ConstantHelper.timeout.navigation});\n }\n }\n const alreadySelected = await this.sectionLinks.locator('[active]').getByText(sectionName).isVisible();\n if (alreadySelected && !skipReload) {\n await this.page.reload();\n } else {\n await this.click(this.backOfficeHeader.getByRole('tab', {name: sectionName}));\n }\n }\n\n async goToSettingsTreeItem(settingsTreeItemName: string) {\n await this.goToSection(ConstantHelper.sections.settings);\n await this.click(this.page.getByLabel(settingsTreeItemName, {exact: true}));\n }\n\n async isSectionWithNameVisible(sectionName: string, isVisible: boolean = true) {\n await this.isVisible(this.page.getByRole('tab', {name: sectionName}), isVisible);\n }\n\n async isBackOfficeMainVisible(isVisible: boolean = true) {\n await this.page.waitForTimeout(ConstantHelper.timeout.medium);\n await this.isVisible(this.backOfficeMain, isVisible);\n }\n\n // Link & Button Click by Name Methods\n async clickExactLinkWithName(name: string, toForce: boolean = false) {\n const exactLinkWithNameLocator = this.page.getByRole('link', {name: name, exact: true});\n await this.click(exactLinkWithNameLocator, {force: toForce});\n }\n\n async clickLinkWithName(name: string, isExact: boolean = false) {\n await this.click(this.page.getByRole('link', {name: name, exact: isExact}));\n }\n\n async clickLabelWithName(name: string, isExact: boolean = true, toForce: boolean = false) {\n await this.click(this.page.getByLabel(name, {exact: isExact}), {force: toForce});\n }\n\n async clickButtonWithName(name: string, isExact: boolean = false) {\n const exactButtonWithNameLocator = this.page.getByRole('button', {name: name, exact: isExact});\n await this.click(exactButtonWithNameLocator, {force: true});\n }\n\n async clickTextButtonWithName(name: string) {\n await this.click(this.page.getByText(name, {exact: true}));\n }\n\n async isButtonWithNameVisible(name: string) {\n await this.isVisible(this.page.getByRole('button', {name: name}));\n }\n\n async getButtonWithName(name: string) {\n await this.waitForVisible(this.page.getByRole('button', {name: name}));\n return this.page.getByRole('button', {name: name});\n }\n\n // Remove Button Methods\n async clickRemoveButtonForName(name: string) {\n const removeButtonWithNameLocator = this.page.locator('[name=\"' + name + '\"] [label=\"Remove\"]');\n await this.click(removeButtonWithNameLocator);\n }\n\n async clickTrashIconButtonForName(name: string) {\n const trashIconButtonWithNameLocator = this.page.locator('[name=\"' + name + '\"] [name=\"icon-trash\"]');\n await this.click(trashIconButtonWithNameLocator);\n }\n\n async clickRemoveWithName(name: string) {\n const removeLabelWithNameLocator = this.page.locator('[label=\"Remove ' + name + '\"]');\n await this.click(removeLabelWithNameLocator);\n }\n\n // Alias & Icon Methods\n async enterAliasName(aliasName: string) {\n await this.page.waitForTimeout(ConstantHelper.wait.short);\n await this.click(this.aliasLockBtn, {force: true});\n await this.enterText(this.aliasNameTxt, aliasName);\n }\n\n async updateIcon(iconName: string) {\n await this.click(this.iconBtn, {force: true});\n await this.searchForTypeToFilterValue(iconName);\n await this.clickLabelWithName(iconName, true, true);\n await this.clickSubmitButton();\n }\n\n // Property Editor Methods\n async clickSelectPropertyEditorButton() {\n await this.click(this.selectPropertyEditorBtn);\n }\n\n async enterAPropertyName(name: string) {\n await this.enterText(this.propertyNameTxt, name, {clearFirst: false});\n }\n\n async clickEditorSettingsButton(index: number = 0) {\n await this.click(this.editorSettingsBtn.nth(index));\n }\n\n async addPropertyEditor(propertyEditorName: string, index: number = 0) {\n await this.click(this.addPropertyBtn.nth(index));\n await this.enterAPropertyName(propertyEditorName);\n await this.hasValue(this.propertyNameTxt, propertyEditorName);\n await this.clickSelectPropertyEditorButton();\n await this.searchForTypeToFilterValue(propertyEditorName);\n await this.click(this.page.getByText(propertyEditorName, {exact: true}));\n await this.clickSubmitButton();\n }\n\n async updatePropertyEditor(propertyEditorName: string) {\n await this.clickEditorSettingsButton();\n await this.clickChangeButton();\n await this.searchForTypeToFilterValue(propertyEditorName);\n await this.click(this.page.getByText(propertyEditorName, {exact: true}));\n await this.enterAPropertyName(propertyEditorName);\n await this.clickSubmitButton();\n }\n\n async deletePropertyEditor(propertyEditorName: string) {\n await this.page.locator('uui-button').filter({hasText: propertyEditorName}).getByLabel('Editor settings').hover();\n await this.click(this.deleteBtn);\n }\n\n async deletePropertyEditorWithName(name: string) {\n const propertyEditor = this.page.locator('umb-content-type-design-editor-property', {hasText: name});\n await this.hoverAndClick(propertyEditor, propertyEditor.getByLabel('Delete'), {force: true});\n await this.clickConfirmToDeleteButton();\n }\n\n async enterPropertyEditorDescription(description: string) {\n await this.enterText(this.enterPropertyEditorDescriptionTxt, description);\n }\n\n async isPropertyEditorUiWithNameReadOnly(name: string) {\n const propertyEditorUiLocator = this.page.locator('umb-property-editor-ui-' + name);\n await this.hasAttribute(propertyEditorUiLocator, 'readonly', '');\n }\n\n async isPropertyEditorUiWithNameVisible(name: string, isVisible: boolean = true) {\n const propertyEditorUiLocator = this.page.locator('umb-property-editor-ui-' + name);\n await this.isVisible(propertyEditorUiLocator, isVisible);\n }\n\n async doesPropertyHaveInvalidBadge(propertyName: string) {\n await this.isVisible(this.page.locator('umb-property-layout').filter({hasText: propertyName}).locator('#invalid-badge uui-badge'));\n }\n\n // Group Methods\n async clickAddGroupButton() {\n await this.click(this.addGroupBtn);\n }\n\n async enterGroupName(groupName: string, index: number = 0) {\n const groupNameTxt = this.groupLabel.nth(index);\n await this.enterText(groupNameTxt, groupName);\n }\n\n async isGroupVisible(groupName: string, isVisible = true) {\n await this.isVisible(this.groupLabel.filter({hasText: groupName}), isVisible);\n }\n\n async doesGroupHaveValue(value: string) {\n await this.waitForVisible(this.groupLabel);\n return await this.hasValue(this.groupLabel, value);\n }\n\n async deleteGroup(groupName: string) {\n await this.page.waitForTimeout(ConstantHelper.wait.medium);\n const groups = this.page.locator('umb-content-type-design-editor-group').all();\n for (const group of await groups) {\n if (await group.getByLabel('Group', {exact: true}).inputValue() === groupName) {\n const headerActionsDeleteLocator = group.locator('[slot=\"header-actions\"]').getByLabel('Delete');\n await this.click(headerActionsDeleteLocator, {force: true});\n return;\n }\n }\n }\n\n async reorderTwoGroups(firstGroupName: string, secondGroupName: string) {\n const firstGroup = this.page.getByTestId('group:' + firstGroupName);\n const secondGroup = this.page.getByTestId('group:' + secondGroupName);\n const firstGroupValue = await firstGroup.getByLabel('Group').inputValue();\n const secondGroupValue = await secondGroup.getByLabel('Group').inputValue();\n const dragToLocator = firstGroup.locator('[slot=\"header\"]').first();\n const dragFromLocator = secondGroup.locator('[slot=\"header\"]').first();\n await this.dragAndDrop(dragFromLocator, dragToLocator, 0, 0, 20);\n return {firstGroupValue, secondGroupValue};\n }\n\n // Tab Methods\n async clickAddTabButton() {\n await this.click(this.addTabBtn);\n }\n\n async enterTabName(tabName: string) {\n await this.waitForVisible(this.unnamedTabTxt);\n await this.page.waitForTimeout(ConstantHelper.wait.debounce);\n await this.enterText(this.unnamedTabTxt, tabName);\n await this.click(this.page.getByRole('tab', {name: 'Design'}));\n await this.click(this.page.getByTestId('tab:' + tabName));\n }\n\n async clickRemoveTabWithName(name: string) {\n const tab = this.page.locator('uui-tab').filter({hasText: name});\n await this.hoverAndClick(tab, tab.locator('[label=\"Remove\"]'));\n }\n\n async clickStructureTab() {\n await this.page.waitForTimeout(ConstantHelper.wait.medium);\n await this.click(this.structureTabBtn);\n }\n\n getTabLocatorWithName(name: string) {\n return this.page.getByRole('tab', {name: name});\n }\n\n // Validation Methods\n async clickMandatoryToggle() {\n await this.click(this.mandatoryToggle);\n }\n\n async selectValidationOption(option: string) {\n await this.selectByValue(this.validation, option);\n }\n\n async enterRegEx(regEx: string) {\n await this.enterText(this.regexTxt, regEx, {clearFirst: false});\n }\n\n async enterRegExMessage(regExMessage: string) {\n await this.enterText(this.regexMessageTxt, regExMessage, {clearFirst: false});\n }\n\n async isValidationMessageVisible(message: string, isVisible: boolean = true) {\n await this.isVisible(this.validationMessage.filter({hasText: message}), isVisible);\n }\n\n // Composition & Structure Methods\n async clickCompositionsButton() {\n await this.click(this.compositionsBtn);\n }\n\n async clickAllowAtRootButton() {\n await this.click(this.allowAtRootBtn);\n }\n\n async clickAllowedChildNodesButton() {\n await this.click(this.allowedChildNodesModal.locator(this.chooseBtn));\n }\n\n async clickAddCollectionButton() {\n await this.click(this.addCollectionBtn);\n }\n\n // Reorder Methods\n async clickIAmDoneReorderingButton() {\n await this.click(this.iAmDoneReorderingBtn);\n }\n\n async clickReorderButton() {\n await this.click(this.reorderBtn);\n }\n\n async clickLabelAboveButton() {\n await this.click(this.labelAboveBtn);\n }\n\n // Query Builder Methods\n async clickQueryBuilderButton() {\n await this.click(this.queryBuilderBtn);\n await this.page.waitForTimeout(ConstantHelper.wait.short);\n }\n\n async addQueryBuilderWithOrderByStatement(propertyAlias: string, isAscending: boolean) {\n await this.click(this.queryBuilderBtn, {timeout: ConstantHelper.timeout.long});\n await this.click(this.orderByPropertyAliasBtn);\n await this.waitAndSelectQueryBuilderDropDownList(propertyAlias);\n await this.click(this.orderByPropertyAliasBtn);\n if (!isAscending) {\n await this.click(this.ascendingBtn);\n }\n }\n\n async addQueryBuilderWithWhereStatement(propertyAlias: string, operator: string, constrainValue: string) {\n await this.click(this.queryBuilderBtn, {timeout: ConstantHelper.timeout.long});\n await this.click(this.wherePropertyAliasBtn);\n await this.waitAndSelectQueryBuilderDropDownList(propertyAlias);\n await this.click(this.whereOperatorBtn);\n await this.waitAndSelectQueryBuilderDropDownList(operator);\n await this.enterText(this.whereConstrainValueTxt, constrainValue);\n await this.pressKey(this.whereConstrainValueTxt, 'Enter');\n }\n\n async waitAndSelectQueryBuilderDropDownList(option: string) {\n const ddlOption = this.page.locator('[open]').locator('uui-combobox-list-option').filter({hasText: option}).first();\n await this.click(ddlOption, {timeout: ConstantHelper.timeout.long});\n }\n\n async chooseRootContentInQueryBuilder(contentName: string) {\n await this.click(this.chooseRootContentBtn);\n await this.clickModalMenuItemWithName(contentName);\n await this.clickChooseButton();\n }\n\n async isQueryBuilderCodeShown(code: string) {\n await this.click(this.queryBuilderShowCode);\n await this.containsText(this.queryBuilderShowCode, code, ConstantHelper.timeout.long);\n }\n\n async doesReturnedItemsHaveCount(itemCount: number) {\n await this.containsText(this.returnedItemsCount, itemCount.toString() + ' published items returned');\n }\n\n async doesQueryResultHaveContentName(contentName: string) {\n await this.containsText(this.queryResults, contentName);\n }\n\n // Insert Methods\n async insertDictionaryItem(dictionaryName: string) {\n await this.clickInsertButton();\n await this.click(this.insertDictionaryItemBtn);\n await this.click(this.page.getByLabel(dictionaryName));\n await this.click(this.chooseBtn);\n }\n\n async insertSystemFieldValue(fieldValue: string) {\n await this.clickInsertButton();\n await this.click(this.insertValueBtn);\n await this.click(this.chooseFieldDropDown);\n await this.click(this.systemFieldsOption);\n await this.click(this.chooseFieldValueDropDown);\n await this.click(this.page.getByText(fieldValue));\n await this.clickSubmitButton();\n }\n\n async insertPartialView(partialViewName: string) {\n await this.clickInsertButton();\n await this.click(this.insertPartialViewBtn);\n await this.click(this.page.getByLabel(partialViewName));\n await this.clickChooseButton();\n }\n\n // Rename Methods\n async rename(newName: string) {\n await this.clickRenameActionMenuOption();\n await this.click(this.newNameTxt);\n await this.enterText(this.newNameTxt, newName);\n await this.click(this.renameModalBtn);\n await this.page.waitForTimeout(ConstantHelper.wait.short);\n }\n\n // Search & Filter Methods\n async searchForTypeToFilterValue(searchValue: string) {\n await this.enterText(this.typeToFilterSearchTxt, searchValue, {clearFirst: false});\n }\n\n // Description Methods\n async enterDescription(description: string) {\n await this.enterText(this.enterDescriptionTxt, description);\n }\n\n async doesDescriptionHaveValue(value: string, index: number = 0) {\n return await this.hasValue(this.descriptionBtn.nth(index), value);\n }\n\n // Drag and Drop Methods\n async dragAndDrop(dragFromSelector: Locator, dragToSelector: Locator, verticalOffset: number = 0, horizontalOffset: number = 0, steps: number = 5) {\n await this.waitForVisible(dragFromSelector);\n await this.waitForVisible(dragToSelector);\n const targetLocation = await dragToSelector.boundingBox();\n const elementCenterX = targetLocation!.x + targetLocation!.width / 2;\n const elementCenterY = targetLocation!.y + targetLocation!.height / 2;\n await this.hover(dragFromSelector);\n await this.page.mouse.move(10, 10);\n await this.hover(dragFromSelector);\n await this.page.mouse.down();\n await this.page.waitForTimeout(ConstantHelper.wait.debounce);\n await this.page.mouse.move(elementCenterX + horizontalOffset, elementCenterY + verticalOffset, {steps: steps});\n await this.page.waitForTimeout(ConstantHelper.wait.debounce);\n await this.page.mouse.up();\n }\n\n // Create Link Methods\n async clickCreateLink() {\n await this.click(this.createLink);\n }\n\n // Recycle Bin Methods\n async clickRecycleBinButton() {\n await this.click(this.recycleBinBtn);\n }\n\n async reloadRecycleBin(containsItems = true) {\n await this.waitForVisible(this.recycleBinMenuItem);\n if (!containsItems) {\n await this.clickReloadChildrenActionMenuOption();\n await this.isVisible(this.recycleBinMenuItemCaretBtn, false);\n return;\n }\n await this.clickActionsMenuForName('Recycle Bin');\n await this.clickReloadChildrenActionMenuOption();\n await this.openCaretButtonForName('Recycle Bin');\n }\n\n async isItemVisibleInRecycleBin(item: string, isVisible: boolean = true, isReload: boolean = true) {\n if (isReload) {\n await this.reloadRecycleBin(isVisible);\n }\n return await this.isVisible(this.page.locator('[label=\"Recycle Bin\"] [label=\"' + item + '\"]'), isVisible);\n }\n\n // View Methods\n async changeToGridView() {\n await this.click(this.viewBundleBtn);\n await this.click(this.gridBtn);\n }\n\n async changeToListView() {\n await this.click(this.viewBundleBtn);\n await this.click(this.listBtn);\n }\n\n async isViewBundleButtonVisible(isVisible: boolean = true) {\n return this.isVisible(this.viewBundleBtn, isVisible);\n }\n\n // Media Methods\n async clickMediaWithName(name: string) {\n await this.click(this.mediaCardItems.filter({hasText: name}));\n }\n\n async selectMediaWithName(mediaName: string, isForce: boolean = false) {\n const mediaLocator = this.mediaCardItems.filter({hasText: mediaName});\n await this.waitForVisible(mediaLocator);\n // Using direct click with position option (not supported by BasePage.click)\n await mediaLocator.click({position: {x: 0.5, y: 0.5}, force: isForce});\n }\n\n async selectMediaWithTestId(mediaKey: string) {\n const locator = this.page.getByTestId('media:' + mediaKey);\n await this.waitForVisible(locator);\n // Using direct click with position option (not supported by BasePage.click)\n await locator.click({position: {x: 0.5, y: 0.5}});\n }\n\n async clickMediaPickerModalSubmitButton() {\n await this.click(this.mediaPickerModalSubmitBtn);\n }\n\n async clickMediaCaptionAltTextModalSubmitButton() {\n await this.click(this.mediaCaptionAltTextModalSubmitBtn);\n }\n\n async clickChooseMediaStartNodeButton() {\n await this.click(this.chooseMediaInputBtn);\n }\n\n async isMediaCardItemWithNameDisabled(itemName: string) {\n await this.hasAttribute(this.mediaCardItems.filter({hasText: itemName}), 'class', 'not-allowed');\n }\n\n async isMediaCardItemWithNameVisible(itemName: string, isVisible: boolean = true) {\n await this.isVisible(this.mediaCardItems.filter({hasText: itemName}), isVisible);\n }\n\n async doesMediaHaveThumbnail(mediaId: string, thumbnailIconName: string, thumbnailImage: string) {\n const mediaThumbnailLocator = this.page.getByTestId('media:' + mediaId);\n if (thumbnailIconName === 'image') {\n const regexImageSrc = new RegExp(`^${thumbnailImage}.*`);\n await this.hasAttribute(mediaThumbnailLocator.locator('umb-imaging-thumbnail img'), 'src', regexImageSrc.toString());\n } else {\n await this.hasAttribute(mediaThumbnailLocator.locator('umb-imaging-thumbnail umb-icon'), 'name', thumbnailIconName);\n }\n }\n\n async isInputDropzoneVisible(isVisible: boolean = true) {\n await this.isVisible(this.inputDropzone, isVisible);\n }\n\n async isImageCropperFieldVisible(isVisible: boolean = true) {\n await this.isVisible(this.imageCropperField, isVisible);\n }\n\n async isInputUploadFieldVisible(isVisible: boolean = true) {\n await this.isVisible(this.inputUploadField, isVisible);\n }\n\n // Upload Methods\n async clickToUploadButton() {\n await this.click(this.clickToUploadBtn);\n }\n\n async uploadFile(filePath: string) {\n const [fileChooser] = await Promise.all([\n this.page.waitForEvent('filechooser'),\n await this.clickToUploadButton(),\n ]);\n await fileChooser.setFiles(filePath);\n }\n\n // Embedded Media Methods\n async enterEmbeddedURL(value: string) {\n await this.enterText(this.embeddedURLTxt, value);\n }\n\n async clickEmbeddedRetrieveButton() {\n await this.click(this.embeddedRetrieveBtn);\n }\n\n async clickEmbeddedMediaModalConfirmButton() {\n await this.click(this.embeddedMediaModalConfirmBtn);\n }\n\n async waitForEmbeddedPreviewVisible() {\n await this.waitForVisible(this.embeddedPreview);\n }\n\n // Document Methods\n async clickChooseContentStartNodeButton() {\n await this.click(this.chooseDocumentInputBtn);\n }\n\n // User Methods\n async clickCurrentUserAvatarButton() {\n await this.click(this.currentUserAvatarBtn, {force: true});\n }\n\n // Collection Methods\n async clickCreateActionButton() {\n await this.click(this.createActionBtn);\n }\n\n async clickCreateActionWithOptionName(optionName: string) {\n await this.clickCreateActionButton();\n const createOptionLocator = this.createActionButtonCollection.locator('[label=\"' + optionName + '\"]');\n await this.click(createOptionLocator);\n }\n\n async doesCollectionTreeItemTableRowHaveName(name: string) {\n await this.waitForVisible(this.collectionTreeItemTableRow.first());\n await this.isVisible(this.collectionTreeItemTableRow.locator('[label=\"' + name + '\"]'));\n }\n\n async doesCollectionTreeItemTableRowHaveIcon(name: string, icon: string) {\n await this.waitForVisible(this.collectionTreeItemTableRow.first());\n await this.isVisible(this.collectionTreeItemTableRow.filter({hasText: name}).locator('umb-icon').locator('[name=\"' + icon + '\"]'));\n }\n\n // Reference Methods\n async clickReferenceNodeLinkWithName(name: string) {\n await this.click(this.page.locator('[name=\"' + name + '\"] a#open-part'));\n }\n\n async doesReferenceHeadlineHaveText(text: string) {\n await this.containsText(this.referenceHeadline, text);\n }\n\n async isReferenceHeadlineVisible(isVisible: boolean) {\n await this.isVisible(this.referenceHeadline, isVisible);\n }\n\n async doesReferenceItemsHaveCount(count: number) {\n await this.hasCount(this.entityItemRef, count);\n }\n\n async isReferenceItemNameVisible(itemName: string) {\n await this.isVisible(this.entityItemRef.locator('uui-ref-node[name=\"' + itemName + '\"]'));\n }\n\n async doesReferencesContainText(text: string) {\n await this.containsText(this.confirmActionModalEntityReferences, text);\n }\n\n // Entity Action Methods\n async clickEntityActionWithName(name: string) {\n const regex = new RegExp(`^entity-action:.*${name}$`);\n await this.click(this.openEntityAction.getByTestId(regex).filter({has: this.page.locator(':visible')}));\n }\n\n async clickCreateActionMenuOption() {\n await this.clickEntityActionWithName('Create');\n }\n\n async clickTrashActionMenuOption() {\n await this.clickEntityActionWithName('Trash');\n }\n\n async clickMoveToActionMenuOption() {\n await this.clickEntityActionWithName('MoveTo');\n }\n\n async clickCreateBlueprintActionMenuOption() {\n await this.clickEntityActionWithName('CreateBlueprint');\n }\n\n async clickDuplicateToActionMenuOption() {\n await this.clickEntityActionWithName('DuplicateTo');\n }\n\n async clickPublishActionMenuOption() {\n await this.clickEntityActionWithName('Publish');\n }\n\n async clickUnpublishActionMenuOption() {\n await this.clickEntityActionWithName('Unpublish');\n }\n\n async clickRollbackActionMenuOption() {\n await this.clickEntityActionWithName('Rollback');\n }\n\n async clickCultureAndHostnamesActionMenuOption() {\n await this.clickEntityActionWithName('CultureAndHostnames');\n }\n\n async clickPublicAccessActionMenuOption() {\n await this.clickEntityActionWithName('PublicAccess');\n }\n\n async clickSortChildrenActionMenuOption() {\n await this.clickEntityActionWithName('SortChildrenOf');\n }\n\n async clickNotificationsActionMenuOption() {\n await this.clickEntityActionWithName('Notifications');\n }\n\n async clickReloadChildrenActionMenuOption() {\n await this.clickEntityActionWithName('ReloadChildrenOf');\n }\n\n async clickDeleteActionMenuOption() {\n await this.clickEntityActionWithName('Delete');\n }\n\n async clickRestoreActionMenuOption() {\n await this.clickEntityActionWithName('Restore');\n }\n\n async clickRenameActionMenuOption() {\n await this.clickEntityActionWithName('Rename');\n }\n\n async clickCreateOptionsActionMenuOption() {\n await this.clickEntityActionWithName('CreateOptions');\n }\n\n async clickExportActionMenuOption() {\n await this.clickEntityActionWithName('Export');\n }\n\n async clickImportActionMenuOption() {\n await this.clickEntityActionWithName('Import');\n }\n\n async clickUpdateActionMenuOption() {\n await this.clickEntityActionWithName('Update');\n }\n\n async clickLockActionMenuOption() {\n await this.clickEntityActionWithName('Lock');\n }\n\n // Entity Item Methods\n async clickEntityItemByName(itemName: string) {\n await this.click(this.page.locator('uui-ref-node,umb-ref-item[name=\"' + itemName + '\"]'));\n }\n\n // Workspace Action Methods\n async clickWorkspaceActionMenuButton() {\n await this.click(this.workspaceActionMenuBtn);\n }\n\n // Pagination Methods\n async clickNextPaginationButton() {\n await this.click(this.nextPaginationBtn);\n }\n\n // Editor Methods\n async enterMonacoEditorValue(value: string) {\n await this.click(this.monacoEditor);\n await this.pressKey(this.monacoEditor, 'Control+A');\n await this.pressKey(this.monacoEditor, 'Backspace');\n await this.page.keyboard.insertText(value);\n }\n\n // Loader Methods\n async waitUntilUiLoaderIsNoLongerVisible() {\n await this.waitForHidden(this.uiLoader, 10000);\n }\n\n // Dashboard Methods\n async isDashboardTabWithNameVisible(name: string, isVisible: boolean = true) {\n await this.isVisible(this.page.locator('uui-tab[label=\"' + name + '\"]'), isVisible);\n }\n\n async isWorkspaceViewTabWithAliasVisible(alias: string, isVisible: boolean = true) {\n await this.isVisible(this.page.getByTestId('workspace:view-link:' + alias), isVisible);\n }\n\n // Submit Button Methods\n async isSubmitButtonDisabled() {\n await this.isVisible(this.submitBtn);\n await this.isDisabled(this.submitBtn);\n }\n\n // Data Element Methods\n async clickDataElement(elementName: string, options: any = null) {\n await this.click(this.page.locator(`[data-element=\"${elementName}\"]`), options);\n }\n\n async getDataElement(elementName: string) {\n return this.page.locator(`[data-element=\"${elementName}\"]`);\n }\n\n getLocatorWithDataMark(dataMark: string) {\n return this.page.getByTestId(dataMark);\n }\n\n // Text Visibility Methods\n async isTextWithExactNameVisible(name: string, isVisible = true) {\n return expect(this.page.getByText(name, {exact: true})).toBeVisible({visible: isVisible});\n }\n\n async isTextWithMessageVisible(message: string, isVisible: boolean = true) {\n return await expect(this.page.getByText(message)).toBeVisible({visible: isVisible});\n }\n\n getTextLocatorWithName(name: string) {\n return this.page.getByText(name, {exact: true});\n }\n}\n"]}
@@ -67,7 +67,7 @@ class UserUiHelper extends UiBaseLocators_1.UiBaseLocators {
67
67
  this.mediaStartNode = page.locator('umb-user-media-start-node');
68
68
  this.usersMenu = page.locator('umb-menu').getByLabel('Users', { exact: true });
69
69
  this.userBtn = page.locator('#collection-action-menu-popover').getByLabel('User', { exact: true });
70
- this.userGrid = page.locator('#user-grid');
70
+ this.userGrid = page.locator('#card-grid');
71
71
  this.apiUserBtn = page.locator('#collection-action-menu-popover').getByLabel('API User', { exact: true });
72
72
  this.goToProfileBtn = page.getByLabel('Go to profile', { exact: true });
73
73
  }