@umbraco/playwright-testhelpers 2.0.0-beta.20 → 2.0.0-beta.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.
@@ -19,7 +19,7 @@ export declare class DataTypeApiHelper {
19
19
  copyToFolder(dataTypeId: string, folderId: string): Promise<string | undefined>;
20
20
  getFolder(id: string): Promise<any>;
21
21
  createFolder(name: string, id?: string, parentId?: string): Promise<string | undefined>;
22
- updateFolder(id: string, dataTypeFolder: any): Promise<import("playwright-core").APIResponse>;
22
+ renameFolder(id: string, name: string): Promise<import("playwright-core").APIResponse>;
23
23
  deleteFolder(id: string): Promise<import("playwright-core").APIResponse>;
24
24
  doesFolderExist(id: string): Promise<boolean>;
25
25
  getChildren(id: string): Promise<any>;
@@ -18,11 +18,11 @@ class DataTypeApiHelper {
18
18
  "editorUiAlias": editorUiAlias,
19
19
  "values": values,
20
20
  "id": id,
21
- "parentId": parentId
21
+ "parent": parentId ? { "id": parentId } : null
22
22
  };
23
23
  const response = await this.api.post(this.api.baseUrl + '/umbraco/management/api/v1/data-type', dataType);
24
24
  // Returns the id of the created dataType
25
- return response.headers().location.split("/").pop();
25
+ return response.headers().location.split("v1/data-type/").pop();
26
26
  }
27
27
  async update(id, dataType) {
28
28
  const updateDataType = {
@@ -89,17 +89,17 @@ class DataTypeApiHelper {
89
89
  }
90
90
  async moveToFolder(dataTypeId, folderId) {
91
91
  const folderIdBody = {
92
- "targetId": folderId
92
+ "target": { id: folderId }
93
93
  };
94
94
  return await this.api.put(this.api.baseUrl + '/umbraco/management/api/v1/data-type/' + dataTypeId + '/move', folderIdBody);
95
95
  }
96
96
  async copyToFolder(dataTypeId, folderId) {
97
97
  const folderIdBody = {
98
- "targetId": folderId
98
+ "target": { id: folderId }
99
99
  };
100
100
  const response = await this.api.post(this.api.baseUrl + '/umbraco/management/api/v1/data-type/' + dataTypeId + '/copy', folderIdBody);
101
101
  // Returns the id of the copied dataType
102
- return response.headers().location.split("/").pop();
102
+ return response.headers().location.split("v1/data-type/").pop();
103
103
  }
104
104
  // FOLDER
105
105
  async getFolder(id) {
@@ -110,14 +110,17 @@ class DataTypeApiHelper {
110
110
  const folderData = {
111
111
  "name": name,
112
112
  "id": id,
113
- "parentId": parentId
113
+ "parent": parentId ? { "id": parentId } : null
114
114
  };
115
115
  const response = await this.api.post(this.api.baseUrl + '/umbraco/management/api/v1/data-type/folder', folderData);
116
116
  // Returns the id of the created dataTypeFolder
117
- return response.headers().location.split("/").pop();
117
+ return response.headers().location.split("v1/data-type/folder/").pop();
118
118
  }
119
- async updateFolder(id, dataTypeFolder) {
120
- return await this.api.put(this.api.baseUrl + '/umbraco/management/api/v1/data-type/folder/' + id, dataTypeFolder);
119
+ async renameFolder(id, name) {
120
+ const folderData = {
121
+ "name": name,
122
+ };
123
+ return await this.api.put(this.api.baseUrl + '/umbraco/management/api/v1/data-type/folder/' + id, folderData);
121
124
  }
122
125
  async deleteFolder(id) {
123
126
  return await this.api.delete(this.api.baseUrl + '/umbraco/management/api/v1/data-type/folder/' + id);
@@ -172,7 +175,7 @@ class DataTypeApiHelper {
172
175
  }
173
176
  async save(dataType) {
174
177
  const response = await this.api.post(this.api.baseUrl + '/umbraco/management/api/v1/data-type', dataType);
175
- return response.headers().location.split("/").pop();
178
+ return response.headers().location.split("v1/data-type/").pop();
176
179
  }
177
180
  async createDateTypeDataType(name) {
178
181
  await this.ensureNameNotExists(name);
@@ -1 +1 @@
1
- {"version":3,"file":"DataTypeApiHelper.js","sourceRoot":"","sources":["../../../lib/helpers/DataTypeApiHelper.ts"],"names":[],"mappings":"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","sourcesContent":["import {ApiHelpers} from \"./ApiHelpers\";\nimport {DatePickerDataTypeBuilder} from \"@umbraco/json-models-builders\";\n\nexport class DataTypeApiHelper {\n api: ApiHelpers\n\n constructor(api: ApiHelpers) {\n this.api = api;\n }\n\n async get(id: string) {\n const response = await this.api.get(this.api.baseUrl + '/umbraco/management/api/v1/data-type/' + id);\n return await response.json();\n }\n\n async create(name: string, editorAlias: string, values: { alias: string; value: string; }[], parentId?: string, editorUiAlias?: string, id?: string) {\n const dataType = {\n \"name\": name,\n \"editorAlias\": editorAlias,\n \"editorUiAlias\": editorUiAlias,\n \"values\": values,\n \"id\": id,\n \"parentId\": parentId\n };\n const response = await this.api.post(this.api.baseUrl + '/umbraco/management/api/v1/data-type', dataType);\n // Returns the id of the created dataType\n return response.headers().location.split(\"/\").pop();\n }\n\n async update(id: string, dataType) {\n const updateDataType = {\n \"name\": dataType.name,\n \"editorAlias\": dataType.editorAlias,\n \"editorUiAlias\": dataType.editorUiAlias,\n \"values\": dataType.values,\n };\n return await this.api.put(this.api.baseUrl + '/umbraco/management/api/v1/data-type/' + id, updateDataType);\n }\n\n async delete(id: string) {\n return await this.api.delete(this.api.baseUrl + '/umbraco/management/api/v1/data-type/' + id);\n }\n\n async getAllAtRoot() {\n return await this.api.get(this.api.baseUrl + '/umbraco/management/api/v1/tree/data-type/root?skip=0&take=10000&foldersOnly=false');\n }\n\n async doesExist(id: string) {\n const response = await this.api.get(this.api.baseUrl + '/umbraco/management/api/v1/data-type/' + id);\n return response.status() === 200;\n }\n\n async getItems(ids: string[]) {\n let idArray = 'id=' + ids[0];\n let i: number;\n\n for (i = 1; i < ids.length; ++i) {\n idArray += '&id=' + ids[i];\n }\n\n const response = await this.api.get(this.api.baseUrl + '/umbraco/management/api/v1/tree/data-type/item?' + idArray);\n return await response.json();\n }\n\n async getByName(name: string) {\n const rootDataTypes = await this.getAllAtRoot();\n const jsonDataTypes = await rootDataTypes.json();\n\n for (const dataType of jsonDataTypes.items) {\n if (dataType.name === name) {\n return this.get(dataType.id);\n } else if (dataType.isContainer || dataType.hasChildren) {\n const result = await this.recurseChildren(name, dataType.id, false);\n if (result) {\n return result;\n }\n }\n }\n return false;\n }\n\n async ensureNameNotExists(name: string) {\n const rootDataTypes = await this.getAllAtRoot();\n const jsonDataTypes = await rootDataTypes.json();\n\n for (const dataType of jsonDataTypes.items) {\n if (dataType.name === name) {\n if (dataType.isFolder) {\n return await this.recurseDeleteChildren(dataType);\n }\n return await this.delete(dataType.id);\n } else if (dataType.hasChildren) {\n await this.recurseChildren(name, dataType.id, true);\n\n }\n }\n return null;\n }\n\n async doesNameExist(name: string) {\n return await this.getByName(name);\n }\n\n async moveToFolder(dataTypeId: string, folderId: string) {\n const folderIdBody = {\n \"targetId\": folderId\n };\n return await this.api.put(this.api.baseUrl + '/umbraco/management/api/v1/data-type/' + dataTypeId + '/move', folderIdBody);\n }\n\n async copyToFolder(dataTypeId: string, folderId: string) {\n const folderIdBody = {\n \"targetId\": folderId\n };\n const response = await this.api.post(this.api.baseUrl + '/umbraco/management/api/v1/data-type/' + dataTypeId + '/copy', folderIdBody);\n // Returns the id of the copied dataType\n return response.headers().location.split(\"/\").pop();\n }\n\n // FOLDER\n async getFolder(id: string) {\n const response = await this.api.get(this.api.baseUrl + '/umbraco/management/api/v1/data-type/folder/' + id);\n return await response.json();\n }\n\n async createFolder(name: string, id?: string, parentId?: string) {\n const folderData = {\n \"name\": name,\n \"id\": id,\n \"parentId\": parentId\n };\n\n const response = await this.api.post(this.api.baseUrl + '/umbraco/management/api/v1/data-type/folder', folderData);\n // Returns the id of the created dataTypeFolder\n return response.headers().location.split(\"/\").pop();\n }\n\n async updateFolder(id: string, dataTypeFolder) {\n return await this.api.put(this.api.baseUrl + '/umbraco/management/api/v1/data-type/folder/' + id, dataTypeFolder);\n }\n\n async deleteFolder(id: string) {\n return await this.api.delete(this.api.baseUrl + '/umbraco/management/api/v1/data-type/folder/' + id);\n }\n\n async doesFolderExist(id: string) {\n const response = await this.api.get(this.api.baseUrl + '/umbraco/management/api/v1/data-type/folder/' + id);\n return response.status() === 200;\n }\n\n async getChildren(id: string) {\n const response = await this.api.get(this.api.baseUrl + '/umbraco/management/api/v1/tree/data-type/children?parentId=' + id + '&skip=0&take=100&foldersOnly=false');\n const items = await response.json();\n return items.items;\n }\n\n private async recurseDeleteChildren(dataFolder) {\n if (!dataFolder.hasChildren) {\n return await this.deleteFolder(dataFolder.id);\n }\n const items = await this.getChildren(dataFolder.id);\n\n for (const child of items) {\n if (child.hasChildren) {\n await this.recurseDeleteChildren(child);\n } else if (child.isFolder) {\n await this.deleteFolder(child.id);\n } else {\n await this.delete(child.id);\n }\n }\n return await this.deleteFolder(dataFolder.id);\n }\n\n private async recurseChildren(name: string, id: string, toDelete: boolean) {\n const items = await this.getChildren(id);\n\n for (const child of items) {\n if (child.name === name) {\n if (!toDelete) {\n if (child.isFolder) {\n return await this.getFolder(child.id);\n }\n return await this.get(child.id);\n }\n if (child.isFolder) {\n return await this.recurseDeleteChildren(child);\n }\n return await this.delete(child.id);\n } else if (child.hasChildren) {\n return await this.recurseChildren(name, child.id, toDelete);\n }\n }\n return false;\n }\n\n async save(dataType) {\n const response = await this.api.post(this.api.baseUrl + '/umbraco/management/api/v1/data-type', dataType)\n return response.headers().location.split(\"/\").pop();\n }\n\n async createDateTypeDataType(name: string) {\n await this.ensureNameNotExists(name);\n\n const dataType = new DatePickerDataTypeBuilder()\n .withName(name)\n .build();\n return await this.save(dataType);\n }\n}"]}
1
+ {"version":3,"file":"DataTypeApiHelper.js","sourceRoot":"","sources":["../../../lib/helpers/DataTypeApiHelper.ts"],"names":[],"mappings":"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","sourcesContent":["import {ApiHelpers} from \"./ApiHelpers\";\nimport {DatePickerDataTypeBuilder} from \"@umbraco/json-models-builders\";\n\nexport class DataTypeApiHelper {\n api: ApiHelpers\n\n constructor(api: ApiHelpers) {\n this.api = api;\n }\n\n async get(id: string) {\n const response = await this.api.get(this.api.baseUrl + '/umbraco/management/api/v1/data-type/' + id);\n return await response.json();\n }\n\n async create(name: string, editorAlias: string, values: { alias: string; value: string; }[], parentId?: string, editorUiAlias?: string, id?: string) {\n const dataType = {\n \"name\": name,\n \"editorAlias\": editorAlias,\n \"editorUiAlias\": editorUiAlias,\n \"values\": values,\n \"id\": id,\n \"parent\": parentId ? {\"id\" : parentId} : null\n };\n const response = await this.api.post(this.api.baseUrl + '/umbraco/management/api/v1/data-type', dataType);\n // Returns the id of the created dataType\n return response.headers().location.split(\"v1/data-type/\").pop();\n }\n\n async update(id: string, dataType) {\n const updateDataType = {\n \"name\": dataType.name,\n \"editorAlias\": dataType.editorAlias,\n \"editorUiAlias\": dataType.editorUiAlias,\n \"values\": dataType.values,\n };\n return await this.api.put(this.api.baseUrl + '/umbraco/management/api/v1/data-type/' + id, updateDataType);\n }\n\n async delete(id: string) {\n return await this.api.delete(this.api.baseUrl + '/umbraco/management/api/v1/data-type/' + id);\n }\n\n async getAllAtRoot() {\n return await this.api.get(this.api.baseUrl + '/umbraco/management/api/v1/tree/data-type/root?skip=0&take=10000&foldersOnly=false');\n }\n\n async doesExist(id: string) {\n const response = await this.api.get(this.api.baseUrl + '/umbraco/management/api/v1/data-type/' + id);\n return response.status() === 200;\n }\n\n async getItems(ids: string[]) {\n let idArray = 'id=' + ids[0];\n let i: number;\n\n for (i = 1; i < ids.length; ++i) {\n idArray += '&id=' + ids[i];\n }\n\n const response = await this.api.get(this.api.baseUrl + '/umbraco/management/api/v1/tree/data-type/item?' + idArray);\n return await response.json();\n }\n\n async getByName(name: string) {\n const rootDataTypes = await this.getAllAtRoot();\n const jsonDataTypes = await rootDataTypes.json();\n\n for (const dataType of jsonDataTypes.items) {\n if (dataType.name === name) {\n return this.get(dataType.id);\n } else if (dataType.isContainer || dataType.hasChildren) {\n const result = await this.recurseChildren(name, dataType.id, false);\n if (result) {\n return result;\n }\n }\n }\n return false;\n }\n\n async ensureNameNotExists(name: string) {\n const rootDataTypes = await this.getAllAtRoot();\n const jsonDataTypes = await rootDataTypes.json();\n\n for (const dataType of jsonDataTypes.items) {\n if (dataType.name === name) {\n if (dataType.isFolder) {\n return await this.recurseDeleteChildren(dataType);\n }\n return await this.delete(dataType.id);\n } else if (dataType.hasChildren) {\n await this.recurseChildren(name, dataType.id, true);\n\n }\n }\n return null;\n }\n\n async doesNameExist(name: string) {\n return await this.getByName(name);\n }\n\n async moveToFolder(dataTypeId: string, folderId: string) {\n const folderIdBody = {\n \"target\": { id: folderId }\n };\n return await this.api.put(this.api.baseUrl + '/umbraco/management/api/v1/data-type/' + dataTypeId + '/move', folderIdBody);\n }\n\n async copyToFolder(dataTypeId: string, folderId: string) {\n const folderIdBody = {\n \"target\": { id: folderId }\n };\n const response = await this.api.post(this.api.baseUrl + '/umbraco/management/api/v1/data-type/' + dataTypeId + '/copy', folderIdBody);\n // Returns the id of the copied dataType\n return response.headers().location.split(\"v1/data-type/\").pop();\n }\n\n // FOLDER\n async getFolder(id: string) {\n const response = await this.api.get(this.api.baseUrl + '/umbraco/management/api/v1/data-type/folder/' + id);\n return await response.json();\n }\n\n async createFolder(name: string, id?: string, parentId?: string) {\n const folderData = {\n \"name\": name,\n \"id\": id,\n \"parent\": parentId ? {\"id\" : parentId} : null\n };\n\n const response = await this.api.post(this.api.baseUrl + '/umbraco/management/api/v1/data-type/folder', folderData);\n // Returns the id of the created dataTypeFolder\n return response.headers().location.split(\"v1/data-type/folder/\").pop();\n }\n\n async renameFolder(id: string, name: string) {\n const folderData = {\n \"name\": name,\n };\n return await this.api.put(this.api.baseUrl + '/umbraco/management/api/v1/data-type/folder/' + id, folderData);\n }\n\n async deleteFolder(id: string) {\n return await this.api.delete(this.api.baseUrl + '/umbraco/management/api/v1/data-type/folder/' + id);\n }\n\n async doesFolderExist(id: string) {\n const response = await this.api.get(this.api.baseUrl + '/umbraco/management/api/v1/data-type/folder/' + id);\n return response.status() === 200;\n }\n\n async getChildren(id: string) {\n const response = await this.api.get(this.api.baseUrl + '/umbraco/management/api/v1/tree/data-type/children?parentId=' + id + '&skip=0&take=100&foldersOnly=false');\n const items = await response.json();\n return items.items;\n }\n\n private async recurseDeleteChildren(dataFolder) {\n if (!dataFolder.hasChildren) {\n return await this.deleteFolder(dataFolder.id);\n }\n const items = await this.getChildren(dataFolder.id);\n\n for (const child of items) {\n if (child.hasChildren) {\n await this.recurseDeleteChildren(child);\n } else if (child.isFolder) {\n await this.deleteFolder(child.id);\n } else {\n await this.delete(child.id);\n }\n }\n return await this.deleteFolder(dataFolder.id);\n }\n\n private async recurseChildren(name: string, id: string, toDelete: boolean) {\n const items = await this.getChildren(id);\n\n for (const child of items) {\n if (child.name === name) {\n if (!toDelete) {\n if (child.isFolder) {\n return await this.getFolder(child.id);\n }\n return await this.get(child.id);\n }\n if (child.isFolder) {\n return await this.recurseDeleteChildren(child);\n }\n return await this.delete(child.id);\n } else if (child.hasChildren) {\n return await this.recurseChildren(name, child.id, toDelete);\n }\n }\n return false;\n }\n\n async save(dataType) {\n const response = await this.api.post(this.api.baseUrl + '/umbraco/management/api/v1/data-type', dataType)\n return response.headers().location.split(\"v1/data-type/\").pop();\n }\n\n async createDateTypeDataType(name: string) {\n await this.ensureNameNotExists(name);\n\n const dataType = new DatePickerDataTypeBuilder()\n .withName(name)\n .build();\n return await this.save(dataType);\n }\n}"]}
@@ -2,17 +2,14 @@ import { Page } from "@playwright/test";
2
2
  import { UiBaseLocators } from "./UiBaseLocators";
3
3
  export declare class DataTypeUiHelper extends UiBaseLocators {
4
4
  private readonly deleteFolderThreeDotsBtn;
5
- private readonly renameFolderThreeDotsBtn;
6
5
  private readonly deleteThreeDotsBtn;
7
6
  private readonly moveToThreeDotsBtn;
8
7
  private readonly copyToThreeDotsBtn;
9
8
  private readonly newDataTypeThreeDotsBtn;
10
9
  private readonly dataTypeNameTxt;
11
- private readonly selectPropertyEditorBtn;
12
10
  private readonly selectBtn;
13
11
  private readonly createDataTypeFolderBtn;
14
12
  private readonly updateDataTypeFolderBtn;
15
- private readonly changeBtn;
16
13
  private readonly includeLabelsSlider;
17
14
  private readonly addColorBtn;
18
15
  private readonly colorValueTxt;
@@ -45,6 +42,31 @@ export declare class DataTypeUiHelper extends UiBaseLocators {
45
42
  private readonly maxHeightTxt;
46
43
  private readonly acceptedFileExtensionsTxt;
47
44
  private readonly addAcceptedFileExtensionsBtn;
45
+ private readonly minimumNumberOfItemsTxt;
46
+ private readonly maximumNumberOfItemsTxt;
47
+ private readonly ignoreUserStartNodesSlider;
48
+ private readonly overlaySizeDropDownBox;
49
+ private readonly hideAnchorQueryStringInputSlider;
50
+ private readonly pickMultipleItemsSlider;
51
+ private readonly enableFocalPointSlider;
52
+ private readonly amountLowValueTxt;
53
+ private readonly amountHighValueTxt;
54
+ private readonly ignoreUserStartNodesCamelSlider;
55
+ private readonly toolbarCheckboxes;
56
+ private readonly addStylesheetBtn;
57
+ private readonly dimensionsWidthTxt;
58
+ private readonly dimensionsHeightTxt;
59
+ private readonly maxImageSizeTxt;
60
+ private readonly hideLabelSlider;
61
+ private readonly defineTagGroupTxt;
62
+ private readonly showOpenButtonSlider;
63
+ private readonly enableMultipleChoiceSlider;
64
+ private readonly addOptionsBtn;
65
+ private readonly initialStateSlider;
66
+ private readonly showToggleLabelsSlider;
67
+ private readonly labelOnTxt;
68
+ private readonly labelOffTxt;
69
+ private readonly labelTxt;
48
70
  constructor(page: Page);
49
71
  clickActionsMenuForDataType(name: string): Promise<void>;
50
72
  clickActionsMenuAtRoot(): Promise<void>;
@@ -53,17 +75,13 @@ export declare class DataTypeUiHelper extends UiBaseLocators {
53
75
  clickDeleteThreeDotsButton(): Promise<void>;
54
76
  clickMoveToThreeDotsButton(): Promise<void>;
55
77
  clickCopyToThreeDotsButton(): Promise<void>;
56
- clickRenameFolderThreeDotsButton(): Promise<void>;
57
78
  clickNewDataTypeThreeDotsButton(): Promise<void>;
58
79
  clickNewDataTypeFolderButton(): Promise<void>;
59
80
  enterDataTypeName(name: string): Promise<void>;
60
- enterFolderName(name: string): Promise<void>;
61
81
  clickCreateFolderButton(): Promise<void>;
62
82
  clickUpdateFolderButton(): Promise<void>;
63
- clickSelectPropertyEditorButton(): Promise<void>;
64
83
  selectPropertyEditorUIByName(name: string): Promise<void>;
65
84
  deleteDataType(name: string): Promise<void>;
66
- clickChangeButton(): Promise<void>;
67
85
  deleteDataTypeFolder(folderName: string): Promise<void>;
68
86
  clickIncludeLabelsSlider(): Promise<void>;
69
87
  removeColorByValue(value: string): Promise<void>;
@@ -82,7 +100,7 @@ export declare class DataTypeUiHelper extends UiBaseLocators {
82
100
  clickBulkActionPermissionsSliderByValue(value: string): Promise<void>;
83
101
  clickContentAppIconButton(): Promise<void>;
84
102
  chooseContentAppIconByValue(value: string): Promise<void>;
85
- enterCropValues(alias: string, width: string, height: string): Promise<void>;
103
+ enterCropValues(label: string, alias: string, width: string, height: string): Promise<void>;
86
104
  clickAddCropButton(): Promise<void>;
87
105
  clickSaveCropButton(): Promise<void>;
88
106
  editCropByAlias(alias: string): Promise<void>;
@@ -100,4 +118,26 @@ export declare class DataTypeUiHelper extends UiBaseLocators {
100
118
  enterAcceptedFileExtensions(value: string): Promise<void>;
101
119
  removeAcceptedFileExtensionsByValue(value: string): Promise<void>;
102
120
  clickAddAcceptedFileExtensionsButton(): Promise<void>;
121
+ enterMinimumNumberOfItemsValue(value: string): Promise<void>;
122
+ enterMaximumNumberOfItemsValue(value: string): Promise<void>;
123
+ clickIgnoreUserStartNodesSlider(): Promise<void>;
124
+ chooseOverlaySizeByValue(value: string): Promise<void>;
125
+ clickHideAnchorQueryStringInputSlider(): Promise<void>;
126
+ clickPickMultipleItemsSlider(): Promise<void>;
127
+ clickEnableFocalPointSlider(): Promise<void>;
128
+ enterAmountValue(lowValue: string, highValue: string): Promise<void>;
129
+ clickIgnoreUserStartNodesCamelSlider(): Promise<void>;
130
+ pickTheToolbarOptionByValue(values: any): Promise<void>;
131
+ addStylesheet(stylesheetName: string): Promise<void>;
132
+ enterDimensionsValue(width: string, height: string): Promise<void>;
133
+ enterMaximumSizeForImages(value: string): Promise<void>;
134
+ clickHideLabelSlider(): Promise<void>;
135
+ enterDefineTagGroupValue(value: string): Promise<void>;
136
+ clickShowOpenButtonSlider(): Promise<void>;
137
+ clickEnableMultipleChoiceSlider(): Promise<void>;
138
+ clickAddOptionsButton(): Promise<void>;
139
+ clickInitialStateSlider(): Promise<void>;
140
+ clickShowToggleLabelsSlider(): Promise<void>;
141
+ enterLabelOnValue(value: string): Promise<void>;
142
+ enterLabelOffValue(value: string): Promise<void>;
103
143
  }
@@ -4,17 +4,14 @@ exports.DataTypeUiHelper = void 0;
4
4
  const UiBaseLocators_1 = require("./UiBaseLocators");
5
5
  class DataTypeUiHelper extends UiBaseLocators_1.UiBaseLocators {
6
6
  deleteFolderThreeDotsBtn;
7
- renameFolderThreeDotsBtn;
8
7
  deleteThreeDotsBtn;
9
8
  moveToThreeDotsBtn;
10
9
  copyToThreeDotsBtn;
11
10
  newDataTypeThreeDotsBtn;
12
11
  dataTypeNameTxt;
13
- selectPropertyEditorBtn;
14
12
  selectBtn;
15
13
  createDataTypeFolderBtn;
16
14
  updateDataTypeFolderBtn;
17
- changeBtn;
18
15
  includeLabelsSlider;
19
16
  addColorBtn;
20
17
  colorValueTxt;
@@ -47,60 +44,114 @@ class DataTypeUiHelper extends UiBaseLocators_1.UiBaseLocators {
47
44
  maxHeightTxt;
48
45
  acceptedFileExtensionsTxt;
49
46
  addAcceptedFileExtensionsBtn;
47
+ minimumNumberOfItemsTxt;
48
+ maximumNumberOfItemsTxt;
49
+ ignoreUserStartNodesSlider;
50
+ overlaySizeDropDownBox;
51
+ hideAnchorQueryStringInputSlider;
52
+ pickMultipleItemsSlider;
53
+ enableFocalPointSlider;
54
+ amountLowValueTxt;
55
+ amountHighValueTxt;
56
+ ignoreUserStartNodesCamelSlider;
57
+ toolbarCheckboxes;
58
+ addStylesheetBtn;
59
+ dimensionsWidthTxt;
60
+ dimensionsHeightTxt;
61
+ maxImageSizeTxt;
62
+ hideLabelSlider;
63
+ defineTagGroupTxt;
64
+ showOpenButtonSlider;
65
+ enableMultipleChoiceSlider;
66
+ addOptionsBtn;
67
+ initialStateSlider;
68
+ showToggleLabelsSlider;
69
+ labelOnTxt;
70
+ labelOffTxt;
71
+ labelTxt;
50
72
  constructor(page) {
51
73
  super(page);
52
74
  this.deleteFolderThreeDotsBtn = page.locator('umb-entity-action').getByLabel('Delete Folder...');
53
- this.renameFolderThreeDotsBtn = page.locator('umb-entity-action').getByLabel('Rename Folder...');
54
75
  this.deleteThreeDotsBtn = page.locator('umb-entity-action').getByLabel('Delete...');
55
76
  this.moveToThreeDotsBtn = page.locator('umb-entity-action').getByLabel('Move to...');
56
77
  this.copyToThreeDotsBtn = page.locator('umb-entity-action').getByLabel('Copy to...');
57
78
  this.newDataTypeThreeDotsBtn = page.locator('umb-data-type-create-options-modal').getByLabel('New Data Type...');
58
79
  this.dataTypeNameTxt = page.locator('umb-data-type-workspace-editor #nameInput #input');
59
- this.selectPropertyEditorBtn = page.getByLabel('Select Property Editor');
60
80
  this.selectBtn = page.locator('umb-property-editor-ui-picker-modal').getByLabel('Select');
61
81
  this.createDataTypeFolderBtn = page.getByLabel('Create Folder');
62
82
  this.updateDataTypeFolderBtn = page.getByLabel('Update Folder');
63
- this.changeBtn = page.getByLabel('Change');
64
83
  // Approved Color
65
84
  this.includeLabelsSlider = page.locator('#slider');
66
85
  this.addColorBtn = page.getByLabel('Add');
67
86
  this.colorValueTxt = page.getByPlaceholder('Value').getByRole('textbox');
68
87
  this.colorLabelTxt = page.getByPlaceholder('Label...').getByRole('textbox');
69
88
  // Date Picker
70
- this.offsetTimeSlider = page.locator("umb-property-layout[label='Offset time'] #slider");
71
- this.dateFormatTxt = page.locator("umb-property-layout[label='Date format'] #input");
89
+ this.offsetTimeSlider = page.locator('umb-property-layout[label="Offset time"] #slider');
90
+ this.dateFormatTxt = page.locator('umb-property-layout[label="Date format"] #input');
72
91
  // List View
73
- this.pageSizeTxt = page.locator("umb-property-layout[label='Page Size'] #input");
74
- this.ascendingRadioBtn = page.locator("uui-radio[label='Ascending [a-z]'] #button");
75
- this.descendingRadioBtn = page.locator("uui-radio[label='Descending [z-a]'] #button");
76
- this.addColumnsDisplayedBtn = page.locator("umb-property-layout[label='Columns Displayed']").getByLabel('Add');
77
- this.contentAppNameTxt = page.locator("umb-property-layout[label='Content app name'] #input");
78
- this.showContentAppFirstSlider = page.locator("umb-property-layout[label='Show Content App First'] #slider");
79
- this.editInInfiniteEditorSlider = page.locator("umb-property-layout[label='Edit in Infinite Editor'] #slider");
80
- this.contentAppIconBtn = page.locator("umb-property-layout[label='Content app icon'] uui-icon");
81
- this.columnsDisplayedDropDownBox = page.locator("umb-property-layout[label='Columns Displayed'] select");
82
- this.orderByDropDownBox = page.locator("umb-property-layout[label='Order By'] select");
92
+ this.pageSizeTxt = page.locator('umb-property-layout[label="Page Size"] #input');
93
+ this.ascendingRadioBtn = page.locator('uui-radio[label="Ascending [a-z]"] #button');
94
+ this.descendingRadioBtn = page.locator('uui-radio[label="Descending [z-a]"] #button');
95
+ this.addColumnsDisplayedBtn = page.locator('umb-property-layout[label="Columns Displayed"]').getByLabel('Add');
96
+ this.contentAppNameTxt = page.locator('umb-property-layout[label="Content app name"] #input');
97
+ this.showContentAppFirstSlider = page.locator('umb-property-layout[label="Show Content App First"] #slider');
98
+ this.editInInfiniteEditorSlider = page.locator('umb-property-layout[label="Edit in Infinite Editor"] #slider');
99
+ this.contentAppIconBtn = page.locator('umb-property-layout[label="Content app icon"] uui-icon');
100
+ this.columnsDisplayedDropDownBox = page.locator('umb-property-layout[label="Columns Displayed"] select');
101
+ this.orderByDropDownBox = page.locator('umb-property-layout[label="Order By"] select');
83
102
  // Image Cropper
103
+ this.labelTxt = page.getByLabel('Label', { exact: true });
84
104
  this.aliasTxt = page.getByLabel('Alias', { exact: true });
85
105
  this.widthTxt = page.getByLabel('Width', { exact: true });
86
106
  this.heightTxt = page.getByLabel('Height', { exact: true });
87
107
  this.addCropBtn = page.getByLabel('Add', { exact: true });
88
108
  this.saveCropBtn = page.locator('umb-property-editor-ui-image-crops-configuration').getByLabel('Save', { exact: true });
89
109
  // Numeric
90
- this.minimumTxt = page.locator("umb-property-layout[label='Minimum'] #input");
91
- this.maximumTxt = page.locator("umb-property-layout[label='Maximum'] #input");
92
- this.stepSizeTxt = page.locator("umb-property-layout[label='Step size'] #input");
110
+ this.minimumTxt = page.locator('umb-property-layout[label="Minimum"] #input');
111
+ this.maximumTxt = page.locator('umb-property-layout[label="Maximum"] #input');
112
+ this.stepSizeTxt = page.locator('umb-property-layout[label="Step size"] #input');
93
113
  // Radiobox
94
- this.optionTxt = page.locator("umb-property-layout[label='Add option'] #input");
95
- this.addOptionBtn = page.locator("umb-property-layout[label='Add option']").getByLabel('Add', { exact: true });
114
+ this.optionTxt = page.locator('umb-property-layout[label="Add option"] #input, umb-property-layout[label="Add options"] #input');
115
+ this.addOptionBtn = page.locator('umb-property-layout[label="Add option"], umb-property-layout[label="Add options"]').getByLabel('Add', { exact: true });
96
116
  // Textarea - Textstring
97
- this.maximumAllowedCharsTxt = page.locator("umb-property-layout[label='Maximum allowed characters'] #input");
98
- this.numberOfRowsTxt = page.locator("umb-property-layout[label='Number of rows'] #input");
99
- this.minHeightTxt = page.locator("umb-property-layout[label='Min height (pixels)'] #input");
100
- this.maxHeightTxt = page.locator("umb-property-layout[label='Max height (pixels)'] #input");
117
+ this.maximumAllowedCharsTxt = page.locator('umb-property-layout[label="Maximum allowed characters"] #input');
118
+ this.numberOfRowsTxt = page.locator('umb-property-layout[label="Number of rows"] #input');
119
+ this.minHeightTxt = page.locator('umb-property-layout[label="Min height (pixels)"] #input');
120
+ this.maxHeightTxt = page.locator('umb-property-layout[label="Max height (pixels)"] #input');
101
121
  // Upload
102
- this.acceptedFileExtensionsTxt = page.locator("umb-property-layout[label='Accepted file extensions'] #input");
103
- this.addAcceptedFileExtensionsBtn = page.locator("umb-property-layout[label='Accepted file extensions']").getByLabel('Add', { exact: true });
122
+ this.acceptedFileExtensionsTxt = page.locator('umb-property-layout[label="Accepted file extensions"] #input');
123
+ this.addAcceptedFileExtensionsBtn = page.locator('umb-property-layout[label="Accepted file extensions"]').getByLabel('Add', { exact: true });
124
+ // Multi URL Picker
125
+ this.minimumNumberOfItemsTxt = page.locator('umb-property-layout[label="Minimum number of items"] #input');
126
+ this.maximumNumberOfItemsTxt = page.locator('umb-property-layout[label="Maximum number of items"] #input');
127
+ this.ignoreUserStartNodesSlider = page.locator('umb-property-layout[label="Ignore user start nodes"] #slider');
128
+ this.overlaySizeDropDownBox = page.locator('umb-property-layout[label="Overlay Size"] select');
129
+ this.hideAnchorQueryStringInputSlider = page.locator('umb-property-layout[label="Hide anchor/query string input"] #slider');
130
+ // Multiple Media Picker
131
+ this.pickMultipleItemsSlider = page.locator('umb-property-layout[label="Pick multiple items"] #slider');
132
+ this.enableFocalPointSlider = page.locator('umb-property-layout[label="Enable Focal Point"] #slider');
133
+ this.amountLowValueTxt = page.locator('umb-property-layout[label="Amount"]').getByLabel('Low value');
134
+ this.amountHighValueTxt = page.locator('umb-property-layout[label="Amount"]').getByLabel('High value');
135
+ this.ignoreUserStartNodesCamelSlider = page.locator("umb-property-layout[label='Ignore User Start Nodes'] #slider");
136
+ // Rich Editor
137
+ this.toolbarCheckboxes = page.locator('umb-property-layout[label="Toolbar"] uui-checkbox');
138
+ this.addStylesheetBtn = page.locator('umb-property-layout[label="Stylesheets"] #add-button');
139
+ this.dimensionsWidthTxt = page.locator('umb-property-layout[label="Dimensions"]').getByLabel('Width');
140
+ this.dimensionsHeightTxt = page.locator('umb-property-layout[label="Dimensions"]').getByLabel('Height');
141
+ this.maxImageSizeTxt = page.locator('umb-property-layout[label="Maximum size for inserted images"] #input');
142
+ this.hideLabelSlider = page.locator('umb-property-layout[label="Hide Label"] #slider');
143
+ // Tags
144
+ this.defineTagGroupTxt = page.locator('umb-property-layout[label="Define a tag group"] #input');
145
+ // Content Picker
146
+ this.showOpenButtonSlider = page.locator('umb-property-layout[label="Show open button"] #slider');
147
+ // Dropdown
148
+ this.enableMultipleChoiceSlider = page.locator('umb-property-layout[label="Enable multiple choice"] #slider');
149
+ this.addOptionsBtn = page.locator('umb-property-layout[label="Add options"]').getByLabel('Add', { exact: true });
150
+ // True/false
151
+ this.initialStateSlider = page.locator('umb-property-layout[label="Initial State"] #slider');
152
+ this.showToggleLabelsSlider = page.locator('umb-property-layout[label="Show toggle labels"] #slider');
153
+ this.labelOnTxt = page.locator('umb-property-layout[label="Label On"] #input');
154
+ this.labelOffTxt = page.locator('umb-property-layout[label="Label Off"] #input');
104
155
  }
105
156
  async clickActionsMenuForDataType(name) {
106
157
  await this.clickActionsMenuForName(name);
@@ -124,9 +175,6 @@ class DataTypeUiHelper extends UiBaseLocators_1.UiBaseLocators {
124
175
  async clickCopyToThreeDotsButton() {
125
176
  await this.copyToThreeDotsBtn.click();
126
177
  }
127
- async clickRenameFolderThreeDotsButton() {
128
- await this.renameFolderThreeDotsBtn.click();
129
- }
130
178
  async clickNewDataTypeThreeDotsButton() {
131
179
  await this.newDataTypeThreeDotsBtn.click();
132
180
  }
@@ -138,19 +186,12 @@ class DataTypeUiHelper extends UiBaseLocators_1.UiBaseLocators {
138
186
  await this.dataTypeNameTxt.clear();
139
187
  await this.dataTypeNameTxt.fill(name);
140
188
  }
141
- async enterFolderName(name) {
142
- await this.folderNameTxt.clear();
143
- await this.folderNameTxt.fill(name);
144
- }
145
189
  async clickCreateFolderButton() {
146
190
  await this.createDataTypeFolderBtn.click();
147
191
  }
148
192
  async clickUpdateFolderButton() {
149
193
  await this.updateDataTypeFolderBtn.click();
150
194
  }
151
- async clickSelectPropertyEditorButton() {
152
- await this.selectPropertyEditorBtn.click();
153
- }
154
195
  async selectPropertyEditorUIByName(name) {
155
196
  await this.page.locator('umb-property-editor-ui-picker-modal').getByText(name).click();
156
197
  await this.selectBtn.click();
@@ -160,9 +201,6 @@ class DataTypeUiHelper extends UiBaseLocators_1.UiBaseLocators {
160
201
  await this.deleteBtn.click();
161
202
  await this.confirmToDeleteBtn.click();
162
203
  }
163
- async clickChangeButton() {
164
- await this.changeBtn.click();
165
- }
166
204
  async deleteDataTypeFolder(folderName) {
167
205
  await this.clickActionsMenuForDataType(folderName);
168
206
  await this.deleteFolderThreeDotsBtn.click();
@@ -239,7 +277,9 @@ class DataTypeUiHelper extends UiBaseLocators_1.UiBaseLocators {
239
277
  await this.submitBtn.click();
240
278
  }
241
279
  // Image Cropper
242
- async enterCropValues(alias, width, height) {
280
+ async enterCropValues(label, alias, width, height) {
281
+ await this.labelTxt.clear();
282
+ await this.labelTxt.fill(label);
243
283
  await this.aliasTxt.clear();
244
284
  await this.aliasTxt.fill(alias);
245
285
  await this.widthTxt.clear();
@@ -313,6 +353,95 @@ class DataTypeUiHelper extends UiBaseLocators_1.UiBaseLocators {
313
353
  async clickAddAcceptedFileExtensionsButton() {
314
354
  await this.addAcceptedFileExtensionsBtn.click();
315
355
  }
356
+ // Multi URL Picker
357
+ async enterMinimumNumberOfItemsValue(value) {
358
+ await this.minimumNumberOfItemsTxt.clear();
359
+ await this.minimumNumberOfItemsTxt.fill(value);
360
+ }
361
+ async enterMaximumNumberOfItemsValue(value) {
362
+ await this.maximumNumberOfItemsTxt.clear();
363
+ await this.maximumNumberOfItemsTxt.fill(value);
364
+ }
365
+ async clickIgnoreUserStartNodesSlider() {
366
+ await this.ignoreUserStartNodesSlider.click();
367
+ }
368
+ async chooseOverlaySizeByValue(value) {
369
+ await this.overlaySizeDropDownBox.selectOption({ value: value });
370
+ }
371
+ async clickHideAnchorQueryStringInputSlider() {
372
+ await this.hideAnchorQueryStringInputSlider.click();
373
+ }
374
+ // Multiple Media Picker
375
+ async clickPickMultipleItemsSlider() {
376
+ await this.pickMultipleItemsSlider.click();
377
+ }
378
+ async clickEnableFocalPointSlider() {
379
+ await this.enableFocalPointSlider.click();
380
+ }
381
+ async enterAmountValue(lowValue, highValue) {
382
+ await this.amountLowValueTxt.clear();
383
+ await this.amountLowValueTxt.fill(lowValue);
384
+ await this.amountHighValueTxt.clear();
385
+ await this.amountHighValueTxt.fill(highValue);
386
+ }
387
+ async clickIgnoreUserStartNodesCamelSlider() {
388
+ await this.ignoreUserStartNodesCamelSlider.click();
389
+ }
390
+ // Richtext Editor
391
+ async pickTheToolbarOptionByValue(values) {
392
+ for (var index in values) {
393
+ await this.toolbarCheckboxes.filter({ has: this.page.getByLabel(values[index]) }).locator('#ticker svg').click();
394
+ }
395
+ }
396
+ async addStylesheet(stylesheetName) {
397
+ await this.addStylesheetBtn.click();
398
+ await this.page.getByLabel(stylesheetName).click();
399
+ await this.chooseModalBtn.click();
400
+ }
401
+ async enterDimensionsValue(width, height) {
402
+ await this.dimensionsWidthTxt.clear();
403
+ await this.dimensionsWidthTxt.fill(width);
404
+ await this.dimensionsHeightTxt.clear();
405
+ await this.dimensionsHeightTxt.fill(height);
406
+ }
407
+ async enterMaximumSizeForImages(value) {
408
+ await this.maxImageSizeTxt.clear();
409
+ await this.maxImageSizeTxt.fill(value);
410
+ }
411
+ async clickHideLabelSlider() {
412
+ await this.hideLabelSlider.click();
413
+ }
414
+ // Tags
415
+ async enterDefineTagGroupValue(value) {
416
+ await this.defineTagGroupTxt.clear();
417
+ await this.defineTagGroupTxt.fill(value);
418
+ }
419
+ // Content Picker
420
+ async clickShowOpenButtonSlider() {
421
+ await this.showOpenButtonSlider.click();
422
+ }
423
+ // Dropdown
424
+ async clickEnableMultipleChoiceSlider() {
425
+ await this.enableMultipleChoiceSlider.click();
426
+ }
427
+ async clickAddOptionsButton() {
428
+ await this.addOptionsBtn.click();
429
+ }
430
+ // True/false
431
+ async clickInitialStateSlider() {
432
+ await this.initialStateSlider.click();
433
+ }
434
+ async clickShowToggleLabelsSlider() {
435
+ await this.showToggleLabelsSlider.click();
436
+ }
437
+ async enterLabelOnValue(value) {
438
+ await this.labelOnTxt.clear();
439
+ await this.labelOnTxt.fill(value);
440
+ }
441
+ async enterLabelOffValue(value) {
442
+ await this.labelOffTxt.clear();
443
+ await this.labelOffTxt.fill(value);
444
+ }
316
445
  }
317
446
  exports.DataTypeUiHelper = DataTypeUiHelper;
318
447
  //# sourceMappingURL=DataTypeUiHelper.js.map