@umbraco/playwright-testhelpers 15.0.20 → 15.0.22

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (38) hide show
  1. package/dist/lib/helpers/ContentUiHelper.d.ts +16 -2
  2. package/dist/lib/helpers/ContentUiHelper.js +76 -29
  3. package/dist/lib/helpers/ContentUiHelper.js.map +1 -1
  4. package/dist/lib/helpers/DataTypeApiHelper.d.ts +8 -0
  5. package/dist/lib/helpers/DataTypeApiHelper.js +49 -1
  6. package/dist/lib/helpers/DataTypeApiHelper.js.map +1 -1
  7. package/dist/lib/helpers/DataTypeUiHelper.d.ts +2 -2
  8. package/dist/lib/helpers/DataTypeUiHelper.js +11 -11
  9. package/dist/lib/helpers/DataTypeUiHelper.js.map +1 -1
  10. package/dist/lib/helpers/DictionaryUiHelper.js +3 -3
  11. package/dist/lib/helpers/DictionaryUiHelper.js.map +1 -1
  12. package/dist/lib/helpers/DocumentApiHelper.d.ts +3 -0
  13. package/dist/lib/helpers/DocumentApiHelper.js +33 -0
  14. package/dist/lib/helpers/DocumentApiHelper.js.map +1 -1
  15. package/dist/lib/helpers/DocumentTypeUiHelper.js +1 -1
  16. package/dist/lib/helpers/DocumentTypeUiHelper.js.map +1 -1
  17. package/dist/lib/helpers/FormsUiHelper.js +4 -4
  18. package/dist/lib/helpers/FormsUiHelper.js.map +1 -1
  19. package/dist/lib/helpers/MediaTypeUiHelper.js +1 -1
  20. package/dist/lib/helpers/MediaTypeUiHelper.js.map +1 -1
  21. package/dist/lib/helpers/MediaUiHelper.js +2 -2
  22. package/dist/lib/helpers/MediaUiHelper.js.map +1 -1
  23. package/dist/lib/helpers/PartialViewUiHelper.d.ts +2 -0
  24. package/dist/lib/helpers/PartialViewUiHelper.js +8 -0
  25. package/dist/lib/helpers/PartialViewUiHelper.js.map +1 -1
  26. package/dist/lib/helpers/ScriptUiHelper.d.ts +2 -0
  27. package/dist/lib/helpers/ScriptUiHelper.js +8 -0
  28. package/dist/lib/helpers/ScriptUiHelper.js.map +1 -1
  29. package/dist/lib/helpers/StylesheetUiHelper.d.ts +2 -0
  30. package/dist/lib/helpers/StylesheetUiHelper.js +8 -0
  31. package/dist/lib/helpers/StylesheetUiHelper.js.map +1 -1
  32. package/dist/lib/helpers/UiBaseLocators.js +10 -8
  33. package/dist/lib/helpers/UiBaseLocators.js.map +1 -1
  34. package/dist/lib/helpers/UserUiHelper.d.ts +1 -1
  35. package/dist/lib/helpers/UserUiHelper.js +4 -3
  36. package/dist/lib/helpers/UserUiHelper.js.map +1 -1
  37. package/dist/tsconfig.tsbuildinfo +1 -1
  38. package/package.json +2 -2
@@ -134,6 +134,12 @@ export declare class ContentUiHelper extends UiBaseLocators {
134
134
  private readonly insertBlockBtn;
135
135
  private readonly validationMessage;
136
136
  private readonly blockWorkspace;
137
+ private readonly saveContentBtn;
138
+ private readonly splitView;
139
+ private readonly tiptapInput;
140
+ private readonly rteBlockInline;
141
+ private readonly backofficeModalContainer;
142
+ private readonly rteBlock;
137
143
  constructor(page: Page);
138
144
  enterContentName(name: string): Promise<void>;
139
145
  clickSaveAndPublishButton(): Promise<void>;
@@ -147,6 +153,7 @@ export declare class ContentUiHelper extends UiBaseLocators {
147
153
  clickCaretButtonForContentName(name: string): Promise<void>;
148
154
  waitForModalVisible(): Promise<void>;
149
155
  waitForModalHidden(): Promise<void>;
156
+ clickSaveButtonForContent(): Promise<void>;
150
157
  enterTextstring(text: string): Promise<void>;
151
158
  doesContentTreeHaveName(contentName: string): Promise<void>;
152
159
  enterRichTextArea(value: string): Promise<void>;
@@ -154,7 +161,7 @@ export declare class ContentUiHelper extends UiBaseLocators {
154
161
  clickConfirmToUnpublishButton(): Promise<void>;
155
162
  clickCreateDocumentBlueprintButton(): Promise<void>;
156
163
  clickInfoTab(): Promise<void>;
157
- doesLinkHaveText(text: string): Promise<void>;
164
+ doesDocumentHaveLink(link: string): Promise<void>;
158
165
  doesHistoryHaveText(text: string): Promise<void>;
159
166
  doesPublicationStatusHaveText(text: string): Promise<void>;
160
167
  doesCreatedDateHaveText(text: string): Promise<void>;
@@ -256,6 +263,7 @@ export declare class ContentUiHelper extends UiBaseLocators {
256
263
  clickConfirmEmptyRecycleBinButton(): Promise<void>;
257
264
  isDocumentPropertyEditable(propertyName: string, isEditable?: boolean): Promise<void>;
258
265
  doesDocumentPropertyHaveValue(propertyName: string, value: string): Promise<void>;
266
+ clickContentTab(): Promise<void>;
259
267
  isDocumentTreeEmpty(): Promise<void>;
260
268
  doesDocumentWorkspaceContainName(name: string): Promise<void>;
261
269
  doesDocumentWorkspaceHaveText(text: string): Promise<void>;
@@ -283,7 +291,7 @@ export declare class ContentUiHelper extends UiBaseLocators {
283
291
  clickManualLinkButton(): Promise<void>;
284
292
  clickAddBlockElementButton(): Promise<void>;
285
293
  isAddBlockElementButtonVisible(isVisible?: boolean): Promise<void>;
286
- isAddBlockElementButtonWithLabelVisible(label: string, isVisible?: boolean): Promise<void>;
294
+ isAddBlockElementButtonWithLabelVisible(blockName: string, label: string, isVisible?: boolean): Promise<void>;
287
295
  doesFormValidationMessageContainText(text: string): Promise<void>;
288
296
  doesBlockElementHaveName(name: string): Promise<void>;
289
297
  clickAddBlockSettingsTabButton(): Promise<void>;
@@ -323,4 +331,10 @@ export declare class ContentUiHelper extends UiBaseLocators {
323
331
  enterRTETipTapEditor(value: string): Promise<void>;
324
332
  clickTipTapToolbarIconWithTitle(iconTitle: string): Promise<void>;
325
333
  doesUploadedSvgThumbnailHaveSrc(imageSrc: string): Promise<void>;
334
+ doesRichTextEditorBlockContainLabel(richTextEditorAlias: string, label: string): Promise<void>;
335
+ doesBlockEditorModalContainEditorSize(editorSize: string, elementName: string): Promise<void>;
336
+ doesBlockEditorModalContainInline(richTextEditorAlias: string, elementName: string): Promise<void>;
337
+ doesBlockHaveBackgroundColor(elementName: string, backgroundColor: string): Promise<void>;
338
+ doesBlockHaveIconColor(elementName: string, backgroundColor: string): Promise<void>;
339
+ addDocumentDomain(domainName: string, languageName: string): Promise<void>;
326
340
  }
@@ -138,18 +138,25 @@ class ContentUiHelper extends UiBaseLocators_1.UiBaseLocators {
138
138
  insertBlockBtn;
139
139
  validationMessage;
140
140
  blockWorkspace;
141
+ saveContentBtn;
142
+ splitView;
143
+ tiptapInput;
144
+ rteBlockInline;
145
+ backofficeModalContainer;
146
+ rteBlock;
141
147
  constructor(page) {
142
148
  super(page);
149
+ this.saveContentBtn = page.locator('[data-mark="workspace-action:Umb.WorkspaceAction.Document.Save"]');
143
150
  this.closeBtn = page.getByRole('button', { name: 'Close', exact: true });
144
151
  this.linkPickerModal = page.locator('umb-link-picker-modal');
145
152
  this.contentNameTxt = page.locator('#name-input input');
146
153
  this.saveAndPublishBtn = page.getByLabel('Save And Publish');
147
- this.publishBtn = page.getByLabel(/^Publish(\.\.\.)?$/);
148
- this.unpublishBtn = page.getByLabel(/^Unpublish(\.\.\.)?$/);
154
+ this.publishBtn = page.getByLabel(/^Publish()?$/);
155
+ this.unpublishBtn = page.getByLabel(/^Unpublish()?$/);
149
156
  this.actionMenuForContentBtn = page.locator('#header [label="Open actions menu"]');
150
157
  this.openedModal = page.locator('uui-modal-container[backdrop]');
151
158
  this.textstringTxt = page.locator('umb-property-editor-ui-text-box #input');
152
- this.reloadChildrenThreeDotsBtn = page.getByRole('button', { name: 'Reload children...' });
159
+ this.reloadChildrenThreeDotsBtn = page.getByRole('button', { name: 'Reload children' });
153
160
  this.contentTree = page.locator('umb-tree[alias="Umb.Tree.Document"]');
154
161
  this.richTextAreaTxt = page.frameLocator('iframe[title="Rich Text Area"]').locator('#tinymce');
155
162
  this.textAreaTxt = page.locator('umb-property-editor-ui-textarea textarea');
@@ -158,12 +165,13 @@ class ContentUiHelper extends UiBaseLocators_1.UiBaseLocators {
158
165
  this.menuItemTree = page.locator('umb-menu-item-tree-default');
159
166
  this.confirmToUnpublishBtn = page.locator('umb-document-unpublish-modal').getByLabel('Unpublish');
160
167
  this.dropdown = page.locator('select#native');
161
- this.setADateTxt = page.getByLabel('Set a date...');
168
+ this.splitView = page.locator('#splitViews');
169
+ this.setADateTxt = page.getByLabel('Set a date…');
162
170
  this.chooseMediaPickerBtn = page.locator('umb-property-editor-ui-media-picker #btn-add');
163
171
  this.chooseMemberPickerBtn = page.locator('umb-property-editor-ui-member-picker #btn-add');
164
172
  this.numericTxt = page.locator('umb-property-editor-ui-number input');
165
173
  this.addMultiURLPickerBtn = page.locator('umb-property-editor-ui-multi-url-picker #btn-add');
166
- this.linkTxt = page.getByLabel('Enter a URL...', { exact: true });
174
+ this.linkTxt = page.getByLabel('Enter a URL', { exact: true });
167
175
  this.anchorQuerystringTxt = page.getByLabel('#value or ?key=value');
168
176
  this.linkTitleTxt = this.linkPickerModal.getByLabel('Title');
169
177
  this.tagItems = page.locator('uui-tag');
@@ -187,8 +195,8 @@ class ContentUiHelper extends UiBaseLocators_1.UiBaseLocators {
187
195
  this.documentLanguageSelectPopover = page.locator('umb-popover-layout');
188
196
  this.documentReadOnly = this.documentWorkspace.locator('#name-input').getByText('Read-only');
189
197
  // Info tab
190
- this.infoTab = page.getByRole('tab', { name: 'Info' });
191
- this.linkContent = page.locator('.link-item');
198
+ this.infoTab = page.locator('uui-tab[data-mark="workspace:view-link:Umb.WorkspaceView.Document.Info"]');
199
+ this.linkContent = page.locator('umb-document-links-workspace-info-app');
192
200
  this.historyItems = page.locator('umb-history-item');
193
201
  this.generalItem = page.locator('.general-item');
194
202
  this.publicationStatus = this.generalItem.filter({ hasText: 'Publication Status' }).locator('uui-tag');
@@ -197,7 +205,7 @@ class ContentUiHelper extends UiBaseLocators_1.UiBaseLocators {
197
205
  this.addTemplateBtn = this.generalItem.filter({ hasText: 'Template' }).locator('#button');
198
206
  this.id = this.generalItem.filter({ hasText: 'Id' }).locator('span');
199
207
  // Culture and Hostname
200
- this.cultureAndHostnamesBtn = page.getByLabel(/^Culture and Hostnames(\.\.\.)?$/);
208
+ this.cultureAndHostnamesBtn = page.getByLabel(/^Culture and Hostnames()?$/);
201
209
  this.cultureLanguageDropdownBox = page.locator('[headline="Culture"]').getByLabel('combobox-input');
202
210
  this.addNewDomainBtn = page.getByLabel('Add new domain');
203
211
  this.domainTxt = page.getByLabel('Domain', { exact: true });
@@ -205,19 +213,19 @@ class ContentUiHelper extends UiBaseLocators_1.UiBaseLocators {
205
213
  this.deleteDomainBtn = page.locator('[headline="Domains"] [name="icon-trash"] svg');
206
214
  this.domainComboBox = page.locator('#domains uui-combobox');
207
215
  this.saveModalBtn = this.sidebarModal.getByLabel('Save', { exact: true });
208
- this.resetFocalPointBtn = this.page.getByLabel('Reset focal point');
216
+ this.resetFocalPointBtn = page.getByLabel('Reset focal point');
209
217
  // List View
210
- this.enterNameInContainerTxt = this.container.getByLabel('Enter a name...');
218
+ this.enterNameInContainerTxt = this.container.getByLabel('Enter a name');
211
219
  this.listView = page.locator('umb-document-table-collection-view');
212
220
  this.nameBtn = page.getByRole('button', { name: 'Name' });
213
221
  this.listViewTableRow = this.listView.locator('uui-table-row');
214
- this.publishSelectedListItems = page.getByRole('button', { name: /^Publish(\.\.\.)?$/ });
215
- this.unpublishSelectedListItems = page.getByRole('button', { name: /^Unpublish(\.\.\.)?$/ });
216
- this.duplicateToSelectedListItems = page.getByRole('button', { name: /^Duplicate to(\.\.\.)?$/ });
217
- this.moveToSelectedListItems = page.getByRole('button', { name: /^Move to(\.\.\.)?$/ });
218
- this.trashSelectedListItems = page.getByRole('button', { name: /^Trash(\.\.\.)?$/ });
222
+ this.publishSelectedListItems = page.getByRole('button', { name: /^Publish()?$/ });
223
+ this.unpublishSelectedListItems = page.getByRole('button', { name: /^Unpublish()?$/ });
224
+ this.duplicateToSelectedListItems = page.getByRole('button', { name: /^Duplicate to()?$/ });
225
+ this.moveToSelectedListItems = page.getByRole('button', { name: /^Move to()?$/ });
226
+ this.trashSelectedListItems = page.getByRole('button', { name: /^Trash()?$/ });
219
227
  this.modalContent = page.locator('umb-tree-picker-modal');
220
- this.trashBtn = page.getByLabel(/^Trash(\.\.\.)?$/);
228
+ this.trashBtn = page.getByLabel(/^Trash()?$/);
221
229
  this.exactTrashBtn = page.getByRole('button', { name: 'Trash', exact: true });
222
230
  this.documentListView = page.locator('umb-document-table-collection-view');
223
231
  this.documentGridView = page.locator('umb-document-grid-collection-view');
@@ -226,13 +234,13 @@ class ContentUiHelper extends UiBaseLocators_1.UiBaseLocators {
226
234
  this.documentBlueprintModalEnterNameTxt = this.documentBlueprintModal.locator('input');
227
235
  this.documentBlueprintSaveBtn = this.documentBlueprintModal.getByLabel('Save');
228
236
  this.emptyRecycleBinBtn = page.getByLabel('Empty Recycle Bin');
229
- this.confirmEmptyRecycleBinBtn = this.page.locator('#confirm').getByLabel('Empty Recycle Bin', { exact: true });
237
+ this.confirmEmptyRecycleBinBtn = page.locator('#confirm').getByLabel('Empty Recycle Bin', { exact: true });
230
238
  this.duplicateToBtn = page.getByRole('button', { name: 'Duplicate to' });
231
239
  this.moveToBtn = page.getByRole('button', { name: 'Move to' });
232
240
  this.duplicateBtn = page.getByLabel('Duplicate', { exact: true });
233
241
  this.contentTreeRefreshBtn = page.locator('#header').getByLabel('#actions_refreshNode');
234
242
  this.sortChildrenBtn = page.getByRole('button', { name: 'Sort children' });
235
- this.rollbackBtn = page.getByRole('button', { name: 'Rollback' });
243
+ this.rollbackBtn = page.getByRole('button', { name: 'Rollback', exact: true });
236
244
  this.rollbackContainerBtn = this.container.getByLabel('Rollback');
237
245
  this.publicAccessBtn = page.getByRole('button', { name: 'Public Access' });
238
246
  this.uuiCheckbox = page.locator('uui-checkbox');
@@ -253,7 +261,7 @@ class ContentUiHelper extends UiBaseLocators_1.UiBaseLocators {
253
261
  this.umbDocumentCollection = page.locator('umb-document-collection');
254
262
  this.documentTableColumnName = this.listView.locator('umb-document-table-column-name');
255
263
  //Block Grid - Block List
256
- this.addBlockElementBtn = page.locator('uui-button-group uui-button').first().locator('a#button');
264
+ this.addBlockElementBtn = page.locator('uui-button-group uui-button').first().filter({ has: page.locator('a#button') });
257
265
  this.formValidationMessage = page.locator('#splitViews umb-form-validation-message #messages');
258
266
  this.blockName = page.locator('#editor [slot="name"]');
259
267
  this.addBlockSettingsTabBtn = page.locator('umb-body-layout').getByRole('tab', { name: 'Settings' });
@@ -274,15 +282,20 @@ class ContentUiHelper extends UiBaseLocators_1.UiBaseLocators {
274
282
  // TipTap
275
283
  this.tipTapPropertyEditor = page.locator('umb-property-editor-ui-tiptap');
276
284
  this.tipTapEditor = this.tipTapPropertyEditor.locator('#editor .tiptap');
277
- this.uploadedSvgThumbnail = this.page.locator('umb-input-upload-field-svg img');
278
- this.insertBlockBtn = this.page.locator('[title="Insert Block"]');
279
- this.validationMessage = this.page.locator('umb-form-validation-message').locator('#messages');
285
+ this.uploadedSvgThumbnail = page.locator('umb-input-upload-field-svg img');
286
+ this.insertBlockBtn = page.locator('[title="Insert Block"]');
287
+ this.validationMessage = page.locator('umb-form-validation-message').locator('#messages');
280
288
  this.blockWorkspace = page.locator('umb-block-workspace-editor');
289
+ this.tiptapInput = page.locator('umb-input-tiptap');
290
+ this.rteBlockInline = page.locator('umb-rte-block-inline');
291
+ this.backofficeModalContainer = page.locator('umb-backoffice-modal-container');
292
+ this.rteBlock = page.locator('umb-rte-block');
281
293
  }
282
294
  async enterContentName(name) {
283
295
  await (0, test_1.expect)(this.contentNameTxt).toBeVisible();
284
296
  await this.contentNameTxt.clear();
285
297
  await this.contentNameTxt.fill(name);
298
+ await (0, test_1.expect)(this.contentNameTxt).toHaveValue(name);
286
299
  }
287
300
  async clickSaveAndPublishButton() {
288
301
  await (0, test_1.expect)(this.saveAndPublishBtn).toBeVisible();
@@ -321,6 +334,10 @@ class ContentUiHelper extends UiBaseLocators_1.UiBaseLocators {
321
334
  async waitForModalHidden() {
322
335
  await this.openedModal.waitFor({ state: 'hidden' });
323
336
  }
337
+ async clickSaveButtonForContent() {
338
+ await (0, test_1.expect)(this.saveContentBtn).toBeVisible();
339
+ await this.saveContentBtn.click();
340
+ }
324
341
  async enterTextstring(text) {
325
342
  await (0, test_1.expect)(this.textstringTxt).toBeVisible();
326
343
  await this.textstringTxt.clear();
@@ -350,8 +367,8 @@ class ContentUiHelper extends UiBaseLocators_1.UiBaseLocators {
350
367
  await (0, test_1.expect)(this.infoTab).toBeVisible();
351
368
  await this.infoTab.click();
352
369
  }
353
- async doesLinkHaveText(text) {
354
- await (0, test_1.expect)(this.linkContent).toHaveText(text);
370
+ async doesDocumentHaveLink(link) {
371
+ await (0, test_1.expect)(this.linkContent).toContainText(link);
355
372
  }
356
373
  async doesHistoryHaveText(text) {
357
374
  await (0, test_1.expect)(this.historyItems).toHaveText(text);
@@ -461,7 +478,7 @@ class ContentUiHelper extends UiBaseLocators_1.UiBaseLocators {
461
478
  await (0, test_1.expect)(this.documentTreeItem.locator('[label="' + parentName + '"]').getByLabel(childName)).toBeVisible({ visible: isVisible });
462
479
  }
463
480
  async removeContentPicker(contentPickerName) {
464
- const contentPickerLocator = this.page.locator('[name="' + contentPickerName + '"]');
481
+ const contentPickerLocator = this.page.locator('umb-entity-item-ref').filter({ has: this.page.locator('[name="' + contentPickerName + '"]') });
465
482
  await contentPickerLocator.hover();
466
483
  await contentPickerLocator.getByLabel('Remove').click();
467
484
  await this.clickConfirmRemoveButton();
@@ -519,7 +536,9 @@ class ContentUiHelper extends UiBaseLocators_1.UiBaseLocators {
519
536
  await this.sidebarModal.getByText(memberName, { exact: true }).click();
520
537
  }
521
538
  async removeMemberPickerByName(memberName) {
522
- await this.page.locator('[name="' + memberName + '"]').getByLabel('Remove').click();
539
+ const mediaPickerLocator = this.page.locator('umb-entity-item-ref').filter({ has: this.page.locator('[name="' + memberName + '"]') });
540
+ await mediaPickerLocator.hover();
541
+ await mediaPickerLocator.getByLabel('Remove').click();
523
542
  await this.clickConfirmRemoveButton();
524
543
  }
525
544
  // Numeric
@@ -540,6 +559,7 @@ class ContentUiHelper extends UiBaseLocators_1.UiBaseLocators {
540
559
  await this.enterTagTxt.press('Enter');
541
560
  }
542
561
  async removeTagByName(tagName) {
562
+ await (0, test_1.expect)(this.tagItems.filter({ hasText: tagName }).locator('svg')).toBeVisible();
543
563
  await this.tagItems.filter({ hasText: tagName }).locator('svg').click();
544
564
  }
545
565
  // Multi URL Picker
@@ -585,11 +605,13 @@ class ContentUiHelper extends UiBaseLocators_1.UiBaseLocators {
585
605
  }
586
606
  // Upload
587
607
  async clickRemoveFilesButton() {
608
+ await (0, test_1.expect)(this.removeFilesBtn).toBeVisible();
588
609
  await this.removeFilesBtn.click();
589
610
  }
590
611
  // True/false
591
612
  async clickToggleButton() {
592
- await this.toggleBtn.click();
613
+ await (0, test_1.expect)(this.toggleBtn).toBeVisible();
614
+ await this.toggleBtn.click({ force: true });
593
615
  }
594
616
  async doesToggleHaveLabel(label) {
595
617
  return await (0, test_1.expect)(this.toggleInput).toHaveAttribute('aria-label', label);
@@ -768,6 +790,9 @@ class ContentUiHelper extends UiBaseLocators_1.UiBaseLocators {
768
790
  const propertyLocator = this.documentWorkspace.locator(this.property).filter({ hasText: propertyName }).locator('#input');
769
791
  await (0, test_1.expect)(propertyLocator).toHaveValue(value);
770
792
  }
793
+ async clickContentTab() {
794
+ await this.splitView.getByRole('tab', { name: 'Content' }).click();
795
+ }
771
796
  async isDocumentTreeEmpty() {
772
797
  await (0, test_1.expect)(this.documentTreeItem).toHaveCount(0);
773
798
  }
@@ -898,8 +923,8 @@ class ContentUiHelper extends UiBaseLocators_1.UiBaseLocators {
898
923
  async isAddBlockElementButtonVisible(isVisible = true) {
899
924
  await (0, test_1.expect)(this.addBlockElementBtn).toBeVisible({ visible: isVisible });
900
925
  }
901
- async isAddBlockElementButtonWithLabelVisible(label, isVisible = true) {
902
- await (0, test_1.expect)(this.addBlockElementBtn.getByLabel(label)).toBeVisible({ visible: isVisible });
926
+ async isAddBlockElementButtonWithLabelVisible(blockName, label, isVisible = true) {
927
+ await (0, test_1.expect)(this.property.filter({ hasText: blockName }).locator(this.addBlockElementBtn).filter({ hasText: label })).toBeVisible({ visible: isVisible });
903
928
  }
904
929
  async doesFormValidationMessageContainText(text) {
905
930
  await (0, test_1.expect)(this.formValidationMessage).toContainText(text);
@@ -1072,6 +1097,28 @@ class ContentUiHelper extends UiBaseLocators_1.UiBaseLocators {
1072
1097
  await (0, test_1.expect)(this.uploadedSvgThumbnail).toBeVisible();
1073
1098
  await (0, test_1.expect)(this.uploadedSvgThumbnail).toHaveAttribute('src', imageSrc);
1074
1099
  }
1100
+ async doesRichTextEditorBlockContainLabel(richTextEditorAlias, label) {
1101
+ await (0, test_1.expect)(this.page.locator('[data-mark="property:' + richTextEditorAlias + '"]').locator(this.rteBlock)).toContainText(label);
1102
+ }
1103
+ async doesBlockEditorModalContainEditorSize(editorSize, elementName) {
1104
+ await (0, test_1.expect)(this.backofficeModalContainer.locator('[size="' + editorSize + '"]').locator('[headline="Add ' + elementName + '"]')).toBeVisible();
1105
+ }
1106
+ async doesBlockEditorModalContainInline(richTextEditorAlias, elementName) {
1107
+ await (0, test_1.expect)(this.page.locator('[data-mark="property:' + richTextEditorAlias + '"]').locator(this.tiptapInput).locator(this.rteBlockInline)).toContainText(elementName);
1108
+ }
1109
+ async doesBlockHaveBackgroundColor(elementName, backgroundColor) {
1110
+ await (0, test_1.expect)(this.page.locator('umb-block-type-card', { hasText: elementName }).locator('[style="background-color:' + backgroundColor + ';"]')).toBeVisible();
1111
+ }
1112
+ async doesBlockHaveIconColor(elementName, backgroundColor) {
1113
+ await (0, test_1.expect)(this.page.locator('umb-block-type-card', { hasText: elementName }).locator('[color="' + backgroundColor + '"]')).toBeVisible();
1114
+ }
1115
+ async addDocumentDomain(domainName, languageName) {
1116
+ await this.clickCultureAndHostnamesButton();
1117
+ await this.clickAddNewDomainButton();
1118
+ await this.enterDomain(domainName);
1119
+ await this.selectDomainLanguageOption(languageName);
1120
+ await this.clickSaveModalButton();
1121
+ }
1075
1122
  }
1076
1123
  exports.ContentUiHelper = ContentUiHelper;
1077
1124
  //# sourceMappingURL=ContentUiHelper.js.map