@shopware-ag/acceptance-test-suite 11.29.0 → 11.30.0

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 (4) hide show
  1. package/dist/index.d.mts +1648 -1632
  2. package/dist/index.d.ts +1648 -1632
  3. package/dist/index.mjs +1264 -1653
  4. package/package.json +16 -14
package/dist/index.d.mts CHANGED
@@ -1,15 +1,13 @@
1
1
  import * as axe_core from 'axe-core';
2
- import * as playwright_core from 'playwright-core';
3
- import { APIRequestContext, APIResponse, Page, BrowserContext, Locator } from 'playwright-core';
4
- export { APIRequestContext, APIResponse, BrowserContext, Locator, Page, Request } from 'playwright-core';
5
- import * as _playwright_test from '@playwright/test';
2
+ import * as playwright_test from 'playwright/test';
6
3
  import { Page as Page$1, Locator as Locator$1 } from '@playwright/test';
7
4
  export { expect, mergeTests } from '@playwright/test';
5
+ import * as playwright_core from 'playwright-core';
6
+ import { APIRequestContext, APIResponse, Page, Locator, BrowserContext } from 'playwright-core';
7
+ export { APIRequestContext, APIResponse, BrowserContext, Locator, Page, Request } from 'playwright-core';
8
8
  import { components } from '@shopware/api-client/admin-api-types';
9
9
  import { Image } from 'image-js';
10
10
 
11
- type Task = (...args: any[]) => () => Promise<void>;
12
-
13
11
  interface RequestOptions$1<PAYLOAD> {
14
12
  [key: string]: unknown;
15
13
  data?: PAYLOAD;
@@ -43,136 +41,6 @@ declare class AdminApiContext {
43
41
  private handleRequest;
44
42
  }
45
43
 
46
- interface RequestOptions<PAYLOAD> {
47
- [key: string]: unknown;
48
- data?: PAYLOAD;
49
- }
50
- interface StoreUser {
51
- email: string;
52
- password: string;
53
- }
54
- interface StoreApiContextOptions {
55
- 'app_url'?: string;
56
- 'sw-access-key'?: string;
57
- 'sw-context-token'?: string;
58
- ignoreHTTPSErrors?: boolean;
59
- }
60
- declare class StoreApiContext {
61
- private context;
62
- private readonly options;
63
- private static readonly defaultOptions;
64
- constructor(context: APIRequestContext, options: StoreApiContextOptions);
65
- static create(options?: StoreApiContextOptions): Promise<StoreApiContext>;
66
- private static createContext;
67
- login(user: StoreUser): Promise<{
68
- [key: string]: string;
69
- }>;
70
- get<PAYLOAD>(url: string, options?: RequestOptions<PAYLOAD>): Promise<APIResponse>;
71
- post<PAYLOAD>(url: string, options?: RequestOptions<PAYLOAD>): Promise<APIResponse>;
72
- patch<PAYLOAD>(url: string, options?: RequestOptions<PAYLOAD>): Promise<APIResponse>;
73
- delete<PAYLOAD>(url: string, options?: RequestOptions<PAYLOAD>): Promise<APIResponse>;
74
- fetch<PAYLOAD>(url: string, options?: RequestOptions<PAYLOAD>): Promise<APIResponse>;
75
- head<PAYLOAD>(url: string, options?: RequestOptions<PAYLOAD>): Promise<APIResponse>;
76
- }
77
-
78
- interface Email {
79
- fromName: string;
80
- fromAddress: string;
81
- toName: string;
82
- toAddress: string;
83
- subject: string;
84
- emailId: string;
85
- }
86
- declare class MailpitApiContext {
87
- context: APIRequestContext;
88
- constructor(context: APIRequestContext);
89
- /**
90
- * Fetches email headers based on the recipient's email address.
91
- * @param email - The email address of the recipient.
92
- * @returns An Email object containing the email headers.
93
- */
94
- getEmailHeaders(email: string): Promise<Email>;
95
- /**
96
- * Retrieves the body content of the email as an HTML string.
97
- * @param email - The email address of the recipient.
98
- * @returns A promise that resolves to the HTML content of the email.
99
- */
100
- getEmailBody(email: string): Promise<string>;
101
- /**
102
- * Generates the full email content, combining headers and body.
103
- * @param email - The email address to fetch headers for.
104
- * @returns A promise that resolves to the full email content as a string.
105
- */
106
- generateEmailContent(email: string): Promise<string>;
107
- /**
108
- * Retrieves the plain text content of the email.
109
- * @param email - The email address of the recipient.
110
- * @returns A promise that resolves to the plain text content of the email.
111
- */
112
- getRenderMessageTxt(email: string): Promise<string>;
113
- /**
114
- * Extracts the first URL found in the plain text content of the latest email.
115
- * @param email - The email address of the recipient.
116
- * @returns A promise that resolves to the first URL found in the email content.
117
- * @throws An error if no URL is found in the email content.
118
- */
119
- getLinkFromMail(email: string): Promise<string>;
120
- /**
121
- * Deletes a specific email by ID if provided, or deletes all emails if no ID is provided.
122
- * @param emailId - The ID of the email to delete (optional).
123
- */
124
- deleteMail(emailId?: string): Promise<void>;
125
- /**
126
- * Creates a new MailpitApiContext instance with the appropriate configuration.
127
- * @param baseURL - The base URL for the API.
128
- * @returns A promise that resolves to a MailpitApiContext instance.
129
- */
130
- static create(baseURL: string): Promise<MailpitApiContext>;
131
- }
132
-
133
- interface ApiContextTypes {
134
- AdminApiContext: AdminApiContext;
135
- StoreApiContext: StoreApiContext;
136
- MailpitApiContext: MailpitApiContext;
137
- }
138
-
139
- interface PageContextTypes {
140
- AdminPage: Page;
141
- StorefrontPage: Page;
142
- InstallPage: Page;
143
- page: Page;
144
- context: BrowserContext;
145
- }
146
-
147
- declare class Actor {
148
- page: Page;
149
- readonly name: string;
150
- baseURL: string | undefined;
151
- constructor(name: string, page: Page, baseURL?: string);
152
- expects: _playwright_test.Expect<{}>;
153
- attemptsTo(task: () => Promise<void>): Promise<void>;
154
- goesTo(url: string, forceReload?: boolean): Promise<void>;
155
- private camelCaseToLowerCase;
156
- }
157
-
158
- interface ActorFixtureTypes {
159
- ShopCustomer: Actor;
160
- ShopAdmin: Actor;
161
- }
162
-
163
- interface IdPair {
164
- id: string;
165
- uuid: string;
166
- }
167
- declare class IdProvider {
168
- private readonly workerIndex;
169
- private readonly seed;
170
- constructor(workerIndex: number, seed: string);
171
- getIdPair(): IdPair;
172
- getUniqueName(): string;
173
- getWorkerDerivedStableId(key: string): IdPair;
174
- }
175
-
176
44
  type SalesChannel = components['schemas']['SalesChannel'] & {
177
45
  id: string;
178
46
  };
@@ -498,6 +366,69 @@ interface Flow {
498
366
  ];
499
367
  }
500
368
 
369
+ type Language$1 = components['schemas']['Language'] & {
370
+ id: string;
371
+ translationCode: components['schemas']['Locale'] & {
372
+ id: string;
373
+ };
374
+ };
375
+ declare const getLanguageData: (languageCode: string, adminApiContext: AdminApiContext) => Promise<Language$1>;
376
+ declare const getSnippetSetId: (languageCode: string, adminApiContext: AdminApiContext) => Promise<string>;
377
+ type Currency$1 = components['schemas']['Currency'] & {
378
+ id: string;
379
+ };
380
+ declare const getCurrency: (isoCode: string, adminApiContext: AdminApiContext) => Promise<Currency$1>;
381
+ declare const getTaxId: (adminApiContext: AdminApiContext) => Promise<string>;
382
+ declare const getPaymentMethodId: (adminApiContext: AdminApiContext, handlerId?: string) => Promise<string>;
383
+ /**
384
+ * Gives the default shipping method back called Standard
385
+ * @param adminApiContext - An AdminApiContext entity
386
+ *
387
+ * @deprecated - Use getShippingMethodId instead
388
+ */
389
+ declare const getDefaultShippingMethodId: (adminApiContext: AdminApiContext) => Promise<string>;
390
+ declare const getShippingMethodId: (name: string, adminApiContext: AdminApiContext) => Promise<string>;
391
+ declare const getCountryId: (iso2: string, adminApiContext: AdminApiContext) => Promise<string>;
392
+ declare const getThemeId: (technicalName: string, adminApiContext: AdminApiContext) => Promise<string>;
393
+ declare const getSalutationId: (salutationKey: string, adminApiContext: AdminApiContext) => Promise<string>;
394
+ declare const getStateMachineId: (technicalName: string, adminApiContext: AdminApiContext) => Promise<string>;
395
+ declare const getStateMachineStateId: (stateMachineId: string, adminApiContext: AdminApiContext) => Promise<string>;
396
+ declare const getFlowId: (flowName: string, adminApiContext: AdminApiContext) => Promise<string>;
397
+ declare const getOrderTransactionId: (orderId: string, adminApiContext: AdminApiContext) => Promise<{
398
+ id: string;
399
+ }>;
400
+ declare const getMediaId: (fileName: string, adminApiContext: AdminApiContext) => Promise<string>;
401
+ declare const getFlowTemplate: (flowTemplateId: string, adminApiContext: AdminApiContext) => Promise<FlowTemplate>;
402
+ declare const getFlow: (flowId: string, adminApiContext: AdminApiContext) => Promise<Flow>;
403
+ declare const compareFlowTemplateWithFlow: (flowId: string, flowTemplateId: string, adminApiContext: AdminApiContext) => Promise<boolean>;
404
+ declare function extractIdFromUrl(url: string): string | null;
405
+ type OrderStatus = 'cancel' | 'complete' | 'reopen' | 'process';
406
+ declare const setOrderStatus: (orderId: string, orderStatus: OrderStatus, adminApiContext: AdminApiContext) => Promise<APIResponse>;
407
+ /**
408
+ * Return a single promotion entity with a fetched single discount entity
409
+ */
410
+ declare const getPromotionWithDiscount: (promotionId: string, adminApiContext: AdminApiContext) => Promise<Promotion>;
411
+ declare const updateAdminUser: (adminUserId: string, adminApiContext: AdminApiContext, data: Record<string, string | boolean>) => Promise<void>;
412
+
413
+ declare const isSaaSInstance: (adminApiContext: AdminApiContext) => Promise<boolean>;
414
+ declare const isThemeCompiled: (context: AdminApiContext, storefrontUrl: string) => Promise<boolean>;
415
+
416
+ declare function createRandomImage(width?: number, height?: number): Image;
417
+ declare function encodeImage(image: Image): Buffer<ArrayBuffer>;
418
+
419
+ interface IdPair {
420
+ id: string;
421
+ uuid: string;
422
+ }
423
+ declare class IdProvider {
424
+ private readonly workerIndex;
425
+ private readonly seed;
426
+ constructor(workerIndex: number, seed: string);
427
+ getIdPair(): IdPair;
428
+ getUniqueName(): string;
429
+ getWorkerDerivedStableId(key: string): IdPair;
430
+ }
431
+
501
432
  interface SalesChannelRecord {
502
433
  salesChannelId: string;
503
434
  field: string;
@@ -847,14 +778,14 @@ declare class TestDataService {
847
778
  * @param productId - The uuid of the product.
848
779
  * @param categoryId - The uuid of the category.
849
780
  */
850
- assignProductCategory(productId: string, categoryId: string): Promise<_playwright_test.APIResponse>;
781
+ assignProductCategory(productId: string, categoryId: string): Promise<playwright_core.APIResponse>;
851
782
  /**
852
783
  * Assigns a tag to a product.
853
784
  *
854
785
  * @param productId - The uuid of the product.
855
786
  * @param tagId - The uuid of the tag.
856
787
  */
857
- assignProductTag(productId: string, tagId: string): Promise<_playwright_test.APIResponse>;
788
+ assignProductTag(productId: string, tagId: string): Promise<playwright_core.APIResponse>;
858
789
  /**
859
790
  * Assigns a media resource to a manufacturer as a logo.
860
791
  *
@@ -1065,7 +996,7 @@ declare class TestDataService {
1065
996
  /**
1066
997
  * Will delete all entities created by the data service via sync API.
1067
998
  */
1068
- cleanUp(): Promise<_playwright_test.APIResponse | null>;
999
+ cleanUp(): Promise<playwright_core.APIResponse | null>;
1069
1000
  isProduct(item: Product | Promotion): item is Product;
1070
1001
  isPromotion(item: Product | Promotion): item is Promotion;
1071
1002
  /**
@@ -1210,58 +1141,246 @@ declare class TestDataService {
1210
1141
  getBasicProductReviewStruct(productId: string, overrides?: Partial<ProductReview>): Partial<ProductReview>;
1211
1142
  }
1212
1143
 
1213
- interface TestDataFixtureTypes {
1214
- TestDataService: TestDataService;
1215
- }
1216
-
1217
- type FeaturesType = Record<string, boolean>;
1218
- interface HelperFixtureTypes {
1219
- IdProvider: IdProvider;
1220
- SaaSInstanceSetup: () => Promise<void>;
1221
- InstanceMeta: {
1222
- version: string;
1223
- isSaaS: boolean;
1224
- features: FeaturesType;
1225
- };
1226
- }
1227
-
1228
- interface StoreBaseConfig {
1229
- storefrontTypeId: string;
1230
- enGBLocaleId: string;
1231
- enGBLanguageId: string;
1232
- eurCurrencyId: string;
1233
- defaultCurrencyId: string;
1234
- defaultLanguageId: string;
1235
- invoicePaymentMethodId: string;
1236
- defaultShippingMethod: string;
1237
- taxId: string;
1238
- deCountryId: string;
1239
- enGBSnippetSetId: string;
1240
- defaultThemeId: string;
1241
- appUrl: string | undefined;
1242
- adminUrl: string;
1243
- }
1244
- interface DefaultSalesChannelTypes {
1245
- SalesChannelBaseConfig: StoreBaseConfig;
1246
- DefaultSalesChannel: {
1247
- salesChannel: SalesChannel;
1248
- customer: Customer;
1249
- url: string;
1250
- };
1251
- DefaultStorefront: {
1252
- salesChannel: SalesChannel;
1253
- customer: Customer;
1254
- url: string;
1255
- };
1256
- }
1257
-
1258
- interface Country {
1259
- id: string;
1260
- }
1261
- interface Currency$1 {
1262
- id: string;
1144
+ /**
1145
+ * Hides elements (via `visibility: hidden`).
1146
+ */
1147
+ declare function hideElements(page: Page, selectors: (string | Locator)[]): Promise<void>;
1148
+ /**
1149
+ * Replaces text content or input values of elements with a given replacement string (default: "***").
1150
+ * - Works for inputs, textareas, contenteditables and generic elements.
1151
+ * - Ensures frameworks see the change (dispatches input/change).
1152
+ * - Also masks placeholder so empty fields show replacement text in screenshots.
1153
+ */
1154
+ declare function replaceElements(page: Page, selectors: (string | Locator)[], replaceWith?: string): Promise<void>;
1155
+ interface ReplaceTarget {
1156
+ selector: string | Locator;
1157
+ replaceWith?: string;
1263
1158
  }
1264
- interface Language$1 {
1159
+ /**
1160
+ * Replaces elements individually based on an array of targets.
1161
+ *
1162
+ *@param page - Playwright page
1163
+ *@param targets - Array of objects containing selectors and optional replacement strings.
1164
+ */
1165
+ declare function replaceElementsIndividually(page: Page, targets: ReplaceTarget[]): Promise<void>;
1166
+ /**
1167
+ * Calculates the ideal viewport dimensions for a Playwright test based on scrollable content,
1168
+ * header visibility, and optional configuration. Useful for dynamic screenshot sizing or
1169
+ * testing long-scrolling pages.
1170
+ *
1171
+ * This function:
1172
+ * - Optionally waits for a network request (`requestURL`) before continuing.
1173
+ * - Optionally waits for a specific locator (`waitForLocator`) to become visible.
1174
+ * - Measures scrollable content height (`scrollableElementVertical`) and header height.
1175
+ * - Measures scrollable content width (`scrollableElementHorizontal`).
1176
+ * - Falls back to defaults if elements are not found or inaccessible.
1177
+ *
1178
+ * @param {Page} page - The Playwright `Page` object representing the current browser tab.
1179
+ * @param {Options} [options] - Optional configuration to override default behavior.
1180
+ * @param {string} [options.requestURL] - A URL substring to wait for via `waitForResponse`.
1181
+ * @param {number} [options.width] - Base viewport width to use (default: 1440).
1182
+ * @param {string | Locator} [options.scrollableElementVertical] - Selector or Locator for vertical scroll container.
1183
+ * @param {string | Locator} [options.scrollableElementHorizontal] - Selector or Locator for horizontal scroll container.
1184
+ * @param {number} [options.additionalHeight] - Extra height to add (e.g., to avoid cut-off).
1185
+ * @param {string | Locator} [options.waitForSelector] - A selector or Locator to wait for visibility before measuring.
1186
+ * @param {number} [options.contentHeight] - Default vertical height fallback if measurement fails.
1187
+ * @param {number} [options.headerHeight] - Default header height fallback.
1188
+ * @param {string} [options.headerElement] - Selector for a header element whose height should be added if outside scrollable container.
1189
+ *
1190
+ * @returns {Promise<{ contentWidth: number; totalHeight: number }>} - A Promise resolving to the measured dimensions:
1191
+ * - `contentWidth`: the horizontal scroll width or fallback.
1192
+ * - `totalHeight`: sum of content height, header height, and any additional height.
1193
+ */
1194
+ interface Options {
1195
+ requestURL?: string;
1196
+ width?: number;
1197
+ scrollableElementVertical?: string | Locator;
1198
+ scrollableElementHorizontal?: string | Locator;
1199
+ additionalHeight?: number;
1200
+ waitForSelector?: string | Locator;
1201
+ contentHeight?: number;
1202
+ headerHeight?: number;
1203
+ headerElement?: string;
1204
+ }
1205
+ declare function setViewport(page: Page, options?: Options): Promise<void>;
1206
+ /**
1207
+ * Takes a screenshot of the desktop content of the page or the provided locator and compares it to existing ones.
1208
+ *
1209
+ * @param page - Playwright page object
1210
+ * @param filename - Filename of the screenshot
1211
+ * @param locator - Optional Playwright locator to take a screenshot of instead of the desktop content
1212
+ */
1213
+ declare function assertScreenshot(page: Page, filename: string, locator?: Locator): Promise<void>;
1214
+
1215
+ interface RequestOptions<PAYLOAD> {
1216
+ [key: string]: unknown;
1217
+ data?: PAYLOAD;
1218
+ }
1219
+ interface StoreUser {
1220
+ email: string;
1221
+ password: string;
1222
+ }
1223
+ interface StoreApiContextOptions {
1224
+ 'app_url'?: string;
1225
+ 'sw-access-key'?: string;
1226
+ 'sw-context-token'?: string;
1227
+ ignoreHTTPSErrors?: boolean;
1228
+ }
1229
+ declare class StoreApiContext {
1230
+ private context;
1231
+ private readonly options;
1232
+ private static readonly defaultOptions;
1233
+ constructor(context: APIRequestContext, options: StoreApiContextOptions);
1234
+ static create(options?: StoreApiContextOptions): Promise<StoreApiContext>;
1235
+ private static createContext;
1236
+ login(user: StoreUser): Promise<{
1237
+ [key: string]: string;
1238
+ }>;
1239
+ get<PAYLOAD>(url: string, options?: RequestOptions<PAYLOAD>): Promise<APIResponse>;
1240
+ post<PAYLOAD>(url: string, options?: RequestOptions<PAYLOAD>): Promise<APIResponse>;
1241
+ patch<PAYLOAD>(url: string, options?: RequestOptions<PAYLOAD>): Promise<APIResponse>;
1242
+ delete<PAYLOAD>(url: string, options?: RequestOptions<PAYLOAD>): Promise<APIResponse>;
1243
+ fetch<PAYLOAD>(url: string, options?: RequestOptions<PAYLOAD>): Promise<APIResponse>;
1244
+ head<PAYLOAD>(url: string, options?: RequestOptions<PAYLOAD>): Promise<APIResponse>;
1245
+ }
1246
+
1247
+ interface Email {
1248
+ fromName: string;
1249
+ fromAddress: string;
1250
+ toName: string;
1251
+ toAddress: string;
1252
+ subject: string;
1253
+ emailId: string;
1254
+ }
1255
+ declare class MailpitApiContext {
1256
+ context: APIRequestContext;
1257
+ constructor(context: APIRequestContext);
1258
+ /**
1259
+ * Fetches email headers based on the recipient's email address.
1260
+ * @param email - The email address of the recipient.
1261
+ * @returns An Email object containing the email headers.
1262
+ */
1263
+ getEmailHeaders(email: string): Promise<Email>;
1264
+ /**
1265
+ * Retrieves the body content of the email as an HTML string.
1266
+ * @param email - The email address of the recipient.
1267
+ * @returns A promise that resolves to the HTML content of the email.
1268
+ */
1269
+ getEmailBody(email: string): Promise<string>;
1270
+ /**
1271
+ * Generates the full email content, combining headers and body.
1272
+ * @param email - The email address to fetch headers for.
1273
+ * @returns A promise that resolves to the full email content as a string.
1274
+ */
1275
+ generateEmailContent(email: string): Promise<string>;
1276
+ /**
1277
+ * Retrieves the plain text content of the email.
1278
+ * @param email - The email address of the recipient.
1279
+ * @returns A promise that resolves to the plain text content of the email.
1280
+ */
1281
+ getRenderMessageTxt(email: string): Promise<string>;
1282
+ /**
1283
+ * Extracts the first URL found in the plain text content of the latest email.
1284
+ * @param email - The email address of the recipient.
1285
+ * @returns A promise that resolves to the first URL found in the email content.
1286
+ * @throws An error if no URL is found in the email content.
1287
+ */
1288
+ getLinkFromMail(email: string): Promise<string>;
1289
+ /**
1290
+ * Deletes a specific email by ID if provided, or deletes all emails if no ID is provided.
1291
+ * @param emailId - The ID of the email to delete (optional).
1292
+ */
1293
+ deleteMail(emailId?: string): Promise<void>;
1294
+ /**
1295
+ * Creates a new MailpitApiContext instance with the appropriate configuration.
1296
+ * @param baseURL - The base URL for the API.
1297
+ * @returns A promise that resolves to a MailpitApiContext instance.
1298
+ */
1299
+ static create(baseURL: string): Promise<MailpitApiContext>;
1300
+ }
1301
+
1302
+ interface ApiContextTypes {
1303
+ AdminApiContext: AdminApiContext;
1304
+ StoreApiContext: StoreApiContext;
1305
+ MailpitApiContext: MailpitApiContext;
1306
+ }
1307
+
1308
+ interface PageContextTypes {
1309
+ AdminPage: Page;
1310
+ StorefrontPage: Page;
1311
+ InstallPage: Page;
1312
+ page: Page;
1313
+ context: BrowserContext;
1314
+ }
1315
+
1316
+ declare class Actor {
1317
+ page: Page;
1318
+ readonly name: string;
1319
+ baseURL: string | undefined;
1320
+ constructor(name: string, page: Page, baseURL?: string);
1321
+ expects: playwright_test.Expect<{}>;
1322
+ attemptsTo(task: () => Promise<void>): Promise<void>;
1323
+ goesTo(url: string, forceReload?: boolean): Promise<void>;
1324
+ private camelCaseToLowerCase;
1325
+ }
1326
+
1327
+ interface ActorFixtureTypes {
1328
+ ShopCustomer: Actor;
1329
+ ShopAdmin: Actor;
1330
+ }
1331
+
1332
+ interface TestDataFixtureTypes {
1333
+ TestDataService: TestDataService;
1334
+ }
1335
+
1336
+ type FeaturesType = Record<string, boolean>;
1337
+ interface HelperFixtureTypes {
1338
+ IdProvider: IdProvider;
1339
+ SaaSInstanceSetup: () => Promise<void>;
1340
+ InstanceMeta: {
1341
+ version: string;
1342
+ isSaaS: boolean;
1343
+ features: FeaturesType;
1344
+ };
1345
+ }
1346
+
1347
+ interface StoreBaseConfig {
1348
+ storefrontTypeId: string;
1349
+ enGBLocaleId: string;
1350
+ enGBLanguageId: string;
1351
+ eurCurrencyId: string;
1352
+ defaultCurrencyId: string;
1353
+ defaultLanguageId: string;
1354
+ invoicePaymentMethodId: string;
1355
+ defaultShippingMethod: string;
1356
+ taxId: string;
1357
+ deCountryId: string;
1358
+ enGBSnippetSetId: string;
1359
+ defaultThemeId: string;
1360
+ appUrl: string | undefined;
1361
+ adminUrl: string;
1362
+ }
1363
+ interface DefaultSalesChannelTypes {
1364
+ SalesChannelBaseConfig: StoreBaseConfig;
1365
+ DefaultSalesChannel: {
1366
+ salesChannel: SalesChannel;
1367
+ customer: Customer;
1368
+ url: string;
1369
+ };
1370
+ DefaultStorefront: {
1371
+ salesChannel: SalesChannel;
1372
+ customer: Customer;
1373
+ url: string;
1374
+ };
1375
+ }
1376
+
1377
+ interface Country {
1378
+ id: string;
1379
+ }
1380
+ interface Currency {
1381
+ id: string;
1382
+ }
1383
+ interface Language {
1265
1384
  id: string;
1266
1385
  translationCode: {
1267
1386
  id: string;
@@ -1284,8 +1403,8 @@ interface Theme {
1284
1403
  }
1285
1404
  interface ShopwareDataFixtureTypes {
1286
1405
  Country: Country;
1287
- Currency: Currency$1;
1288
- Language: Language$1;
1406
+ Currency: Currency;
1407
+ Language: Language;
1289
1408
  PaymentMethod: PaymentMethod;
1290
1409
  ShippingMethod: ShippingMethod;
1291
1410
  SnippetSet: SnippetSet;
@@ -1298,683 +1417,627 @@ interface PageObject {
1298
1417
  url(...args: unknown[]): string;
1299
1418
  }
1300
1419
 
1301
- declare class Home implements PageObject {
1302
- readonly categoryTitle: Locator;
1303
- readonly accountMenuButton: Locator;
1304
- readonly closeGuestSessionButton: Locator;
1305
- readonly productImages: Locator;
1306
- readonly productListItems: Locator;
1307
- readonly loader: Locator;
1308
- readonly productVariantCharacteristicsOptions: Locator;
1420
+ declare class ProductDetail$1 implements PageObject {
1421
+ readonly contentView: Locator;
1422
+ readonly productHeadline: Locator;
1309
1423
  /**
1310
- * @deprecated Use 'Header/languagesDropdown' instead
1424
+ * Save interactions
1311
1425
  */
1312
- readonly languagesDropdown: Locator;
1426
+ readonly savePhysicalProductButton: Locator;
1427
+ readonly saveButtonLoadingSpinner: Locator;
1428
+ readonly saveButtonCheckMark: Locator;
1313
1429
  /**
1314
- * @deprecated Use 'Header/languagesMenuOptions' instead
1430
+ * General Info
1315
1431
  */
1316
- readonly languagesMenuOptions: Locator;
1432
+ readonly manufacturerDropdownText: Locator;
1317
1433
  /**
1318
- * @deprecated Use 'Header/currenciesDropdown' instead
1434
+ * Prices
1319
1435
  */
1320
- readonly currenciesDropdown: Locator;
1436
+ readonly priceGrossInput: Locator;
1321
1437
  /**
1322
- * @deprecated Use 'Header/currenciesMenuOptions' instead
1438
+ * Deliverability
1323
1439
  */
1324
- readonly currenciesMenuOptions: Locator;
1325
- readonly consentOnlyTechnicallyRequiredButton: Locator;
1326
- readonly consentConfigureButton: Locator;
1327
- readonly consentAcceptAllCookiesButton: Locator;
1328
- readonly consentCookiePreferences: Locator;
1329
- readonly consentCookiePermissionContent: Locator;
1330
- readonly consentDialog: Locator;
1331
- readonly consentDialogTechnicallyRequiredCheckbox: Locator;
1332
- readonly consentDialogStatisticsCheckbox: Locator;
1440
+ readonly stockInput: Locator;
1441
+ readonly restockTimeInput: Locator;
1333
1442
  /**
1334
- * @deprecated Use 'consentDialogMarketingCheckbox' instead
1443
+ * Visibility
1335
1444
  */
1336
- readonly consentDialogMarketingdCheckbox: Locator;
1337
- readonly consentDialogMarketingCheckbox: Locator;
1338
- readonly consentDialogAcceptAllCookiesButton: Locator;
1339
- readonly consentDialogSaveButton: Locator;
1340
- readonly consentCookieBannerContainer: Locator;
1341
- readonly offcanvasBackdrop: Locator;
1445
+ readonly activeForAllSalesChannelsToggle: Locator;
1446
+ readonly tagsInput: Locator;
1447
+ readonly saleChannelsInput: Locator;
1342
1448
  /**
1343
- * @deprecated Use 'Header/mainNavigationLink' instead
1449
+ * Labelling
1344
1450
  */
1345
- readonly mainNavigationLink: Locator;
1451
+ readonly releaseDateInput: Locator;
1346
1452
  /**
1347
- * @deprecated Use 'Footer/contactFormLink' instead
1453
+ * Media Upload interactions
1348
1454
  */
1349
- readonly contactFormLink: Locator;
1455
+ readonly uploadMediaButton: Locator;
1456
+ readonly coverImage: Locator;
1457
+ readonly productImage: Locator;
1350
1458
  /**
1351
- * @deprecated Use 'Header/wishlistIcon' instead
1459
+ * Tabs
1352
1460
  */
1353
- readonly wishlistIcon: Locator;
1461
+ readonly variantsTabLink: Locator;
1462
+ readonly specificationsTabLink: Locator;
1463
+ readonly advancedPricingTabLink: Locator;
1464
+ readonly layoutTabLink: Locator;
1465
+ readonly crossSellingTabLink: Locator;
1466
+ readonly SEOTabLink: Locator;
1467
+ readonly reviewsTabLink: Locator;
1354
1468
  /**
1355
- * @deprecated Use 'Header/wishlistBasket' instead
1469
+ * Variants Generation
1356
1470
  */
1357
- readonly wishlistBasket: Locator;
1358
- readonly filterMultiSelect: Locator;
1359
- readonly manufacturerFilter: Locator;
1360
- readonly propertyFilters: Locator;
1361
- readonly priceFilterButton: Locator;
1362
- readonly resetAllButton: Locator;
1363
- readonly freeShippingFilter: Locator;
1364
- readonly productList: Locator;
1365
- readonly productItemNames: Locator;
1366
- readonly productRatingButton: Locator;
1367
- readonly productRatingList: Locator;
1368
- readonly page: Page;
1369
- constructor(page: Page);
1370
- getRatingItemLocatorByRating(rating: number): Promise<Locator>;
1371
- getFilterItemByFilterName(filterName: string): Promise<Locator>;
1372
- getFilterButtonByFilterName(filterName: string): Promise<Locator>;
1373
- getMenuItemByCategoryName(categoryName: string): Promise<Record<string, Locator>>;
1471
+ readonly generateVariantsButton: Locator;
1472
+ readonly variantsModal: Locator;
1473
+ readonly variantsModalHeadline: Locator;
1474
+ readonly variantsNextButton: Locator;
1475
+ readonly variantsSaveButton: Locator;
1374
1476
  /**
1375
- * @deprecated - use getListingItemByProductName instead
1477
+ * Property Selection
1376
1478
  */
1377
- getListingItemByProductId(productId: string): Promise<Record<string, Locator>>;
1378
- getListingItemByProductName(productListingName: string): Promise<Record<string, Locator>>;
1379
- url(): string;
1380
- }
1381
-
1382
- declare class ProductDetail$1 implements PageObject {
1383
- readonly addToCartButton: Locator;
1384
- readonly quantitySelect: Locator;
1385
- readonly productSingleImage: Locator;
1386
- readonly productSinglePrice: Locator;
1387
- readonly productPriceRangesRow: Locator;
1388
- readonly productListingPriceBadge: Locator;
1389
- readonly productListingPrice: Locator;
1390
- readonly productListingPricePercentage: Locator;
1391
- readonly offCanvasCartTitle: Locator;
1392
- readonly offCanvasCart: Locator;
1393
- readonly offCanvasCartGoToCheckoutButton: Locator;
1394
- readonly offCanvasLineItemImages: Locator;
1395
- readonly offCanvasSummaryTotalPrice: Locator;
1396
- readonly offCanvas: Locator;
1397
- readonly wishlistAddedButton: Locator;
1398
- readonly wishlistNotAddedButton: Locator;
1399
- readonly productDetailConfigurator: Locator;
1400
- readonly productDetailConfiguratorGroupTitle: Locator;
1401
- readonly productDetailConfiguratorOptionInputs: Locator;
1402
- readonly productName: Locator;
1403
- readonly reviewsTab: Locator;
1404
- readonly reviewTeaserButton: Locator;
1405
- readonly reviewTeaserText: Locator;
1406
- readonly reviewListingItems: Locator;
1407
- readonly reviewEmptyListingText: Locator;
1408
- readonly reviewLoginForm: Locator;
1409
- readonly forgottenPasswordLink: Locator;
1410
- readonly reviewForm: Locator;
1411
- readonly reviewRatingPoints: Locator;
1412
- readonly reviewRatingText: Locator;
1413
- readonly reviewSubmitMessage: Locator;
1414
- readonly reviewCounter: Locator;
1415
- readonly reviewItemRatingPoints: Locator;
1416
- readonly reviewItemTitle: Locator;
1417
- readonly reviewReviewTextInput: Locator;
1418
- readonly reviewItemContent: Locator;
1419
- readonly reviewLoginButton: Locator;
1420
- readonly reviewEmailInput: Locator;
1421
- readonly reviewPasswordInput: Locator;
1422
- readonly reviewTitleInput: Locator;
1423
- readonly reviewSubmitButton: Locator;
1424
- readonly productReviewsLink: Locator;
1425
- readonly productReviewRating: Locator;
1479
+ readonly propertyName: (propertyName: string) => Locator;
1480
+ readonly propertyValueCheckbox: (propertyValueName: string) => Locator;
1481
+ /** @deprecated - Use 'propertyName' instead. */
1482
+ readonly propertyGroupColor: Locator;
1483
+ /** @deprecated - Use 'propertyName' instead. */
1484
+ readonly propertyGroupSize: Locator;
1485
+ /** @deprecated - Use 'propertyValueCheckbox' instead. */
1486
+ readonly propertyOptionGrid: Locator;
1487
+ /** @deprecated - Use 'propertyValueCheckbox' instead. */
1488
+ readonly propertyOptionColorBlue: Locator;
1489
+ /** @deprecated - Use 'propertyValueCheckbox' instead. */
1490
+ readonly propertyOptionColorRed: Locator;
1491
+ /** @deprecated - Use 'propertyValueCheckbox' instead. */
1492
+ readonly propertyOptionColorGreen: Locator;
1493
+ /** @deprecated - Use 'propertyValueCheckbox' instead. */
1494
+ readonly propertyOptionSizeSmall: Locator;
1495
+ /** @deprecated - Use 'propertyValueCheckbox' instead. */
1496
+ readonly propertyOptionSizeMedium: Locator;
1497
+ /** @deprecated - Use 'propertyValueCheckbox' instead. */
1498
+ readonly propertyOptionSizeLarge: Locator;
1499
+ /**
1500
+ * Cards
1501
+ */
1502
+ readonly customFieldCard: Locator;
1426
1503
  readonly page: Page;
1427
- constructor(page: Page);
1428
- getReviewFilterRowOptionsByName(filterOptionName: string): Promise<{
1429
- reviewFilterOptionCheckbox: Locator;
1430
- reviewFilterOptionText: Locator;
1431
- reviewFilterOptionPercentage: Locator;
1504
+ readonly instanceMeta: HelperFixtureTypes['InstanceMeta'];
1505
+ constructor(page: Page, instanceMeta: HelperFixtureTypes['InstanceMeta']);
1506
+ getCustomFieldSetCardContentByName(customFieldSetName: string): Promise<Record<string, Locator>>;
1507
+ url(productId: string): string;
1508
+ getCustomFieldCardLocators(customFieldSetName: string, customFieldTextName: string): Promise<{
1509
+ customFieldCard: Locator;
1510
+ customFieldSetTab: Locator;
1511
+ customFieldLabel: Locator;
1512
+ customFieldSelect: Locator;
1432
1513
  }>;
1433
- url(productData: Product): string;
1434
1514
  }
1435
1515
 
1436
- declare class Category implements PageObject {
1437
- readonly sortingSelect: Locator;
1438
- readonly firstProductBuyButton: Locator;
1439
- readonly noProductsFoundAlert: Locator;
1516
+ declare class OrderDetail implements PageObject {
1517
+ readonly saveButton: Locator;
1518
+ readonly dataGridContextButton: Locator;
1519
+ readonly orderTag: Locator;
1520
+ readonly lineItem: Locator;
1521
+ readonly lineItemsTable: Locator;
1522
+ readonly documentType: Locator;
1523
+ readonly contextMenuButton: Locator;
1524
+ readonly contextMenu: Locator;
1525
+ readonly contextMenuSendDocument: Locator;
1526
+ readonly sendDocumentModal: Locator;
1527
+ readonly sendDocumentButton: Locator;
1528
+ readonly itemsCardHeader: Locator;
1529
+ readonly sentCheckmark: Locator;
1530
+ /**
1531
+ * Tabs
1532
+ */
1533
+ readonly generalTabLink: Locator;
1534
+ readonly detailsTabLink: Locator;
1535
+ readonly documentsTabLink: Locator;
1440
1536
  readonly page: Page;
1441
- constructor(page: Page);
1442
- url(categoryName: string): string;
1537
+ readonly instanceMeta: HelperFixtureTypes['InstanceMeta'];
1538
+ constructor(page: Page, instanceMeta: HelperFixtureTypes['InstanceMeta']);
1539
+ url(orderId: string, tabName?: string): string;
1540
+ getCustomFieldCardLocators(customFieldSetName: string, customFieldTextName: string): Promise<{
1541
+ customFieldCard: Locator;
1542
+ customFieldSetTab: Locator;
1543
+ customFieldLabel: Locator;
1544
+ customFieldSelect: Locator;
1545
+ }>;
1443
1546
  }
1444
1547
 
1445
- declare class CheckoutCart implements PageObject {
1548
+ declare class CustomerListing implements PageObject {
1446
1549
  readonly headline: Locator;
1447
- readonly goToCheckoutButton: Locator;
1448
- readonly enterPromoInput: Locator;
1449
- readonly grandTotalPrice: Locator;
1450
- readonly emptyCartAlert: Locator;
1451
- readonly stockReachedAlert: Locator;
1452
- readonly cartLineItemImages: Locator;
1453
- readonly unitPriceInfo: Locator;
1454
- readonly cartQuantityNumber: Locator;
1550
+ readonly addCustomerButton: Locator;
1551
+ readonly bulkEditButton: Locator;
1552
+ readonly deleteButton: Locator;
1553
+ readonly bulkEditModal: Locator;
1554
+ readonly startBulkEditButton: Locator;
1555
+ readonly cancelButton: Locator;
1556
+ readonly modalHeaderCheckbox: Locator;
1455
1557
  readonly page: Page;
1456
1558
  constructor(page: Page);
1559
+ getCustomerByEmail(customerEmail: string): Promise<Record<string, Locator>>;
1560
+ getCustomerBulkEditModalTitle(customerCount: number): Promise<Locator>;
1561
+ getBulkEditModalLineItemByCustomerEmail(customerEmail: string): Promise<Record<string, Locator>>;
1457
1562
  url(): string;
1458
- getLineItemByProductNumber(productNumber: string): Promise<Record<string, Locator>>;
1459
1563
  }
1460
1564
 
1461
- declare class OffCanvasCart implements PageObject {
1565
+ declare class CustomerDetail implements PageObject {
1566
+ readonly editButton: Locator;
1567
+ readonly generalTab: Locator;
1568
+ readonly addressesTab: Locator;
1569
+ readonly ordersTab: Locator;
1570
+ readonly accountCard: Locator;
1571
+ readonly customFieldCard: Locator;
1572
+ readonly customFieldSetTabs: Locator;
1573
+ readonly customFieldSetTabCustomContent: Locator;
1574
+ readonly customerGroupRequestMessage: Locator;
1575
+ readonly customerGroupAcceptButton: Locator;
1576
+ readonly customerGroupDeclineButton: Locator;
1577
+ readonly tagList: Locator;
1578
+ readonly tagItems: Locator;
1579
+ readonly page: Page;
1580
+ readonly instanceMeta: HelperFixtureTypes['InstanceMeta'];
1581
+ constructor(page: Page, instanceMeta: HelperFixtureTypes['InstanceMeta']);
1582
+ getCustomFieldSetCardContentByName(customFieldSetName: string): Promise<Record<string, Locator>>;
1583
+ getCustomerGroupAlert(customerGroup: string): Promise<Locator>;
1584
+ getCustomerGroup(): Promise<Locator>;
1585
+ getAccountStatus(): Promise<Locator>;
1586
+ getLanguage(): Promise<Locator>;
1587
+ url(customerId: string): string;
1588
+ }
1589
+
1590
+ declare class CustomerGroupListing implements PageObject {
1462
1591
  readonly headline: Locator;
1463
- readonly itemCount: Locator;
1464
- readonly goToCheckoutButton: Locator;
1465
- readonly goToCartButton: Locator;
1466
- readonly continueShoppingButton: Locator;
1467
- readonly enterPromoInput: Locator;
1468
- readonly submitDiscountButton: Locator;
1469
- readonly subTotalPrice: Locator;
1470
- readonly shippingCosts: Locator;
1471
- readonly cartQuantityNumber: Locator;
1592
+ readonly addCustomerGroupButton: Locator;
1472
1593
  readonly page: Page;
1473
1594
  constructor(page: Page);
1595
+ getCustomerGroupByName(customerGroup: string): Promise<Record<string, Locator>>;
1474
1596
  url(): string;
1475
- getLineItemByProductNumber(productNumber: string): Promise<Record<string, Locator>>;
1476
1597
  }
1477
1598
 
1478
- declare class CheckoutConfirm implements PageObject {
1599
+ declare class CustomerGroupCreate implements PageObject {
1479
1600
  readonly headline: Locator;
1480
- readonly termsAndConditionsCheckbox: Locator;
1481
- readonly immediateAccessToDigitalProductCheckbox: Locator;
1482
- readonly grandTotalPrice: Locator;
1483
- readonly taxPrice: Locator;
1484
- readonly submitOrderButton: Locator;
1485
- /**
1486
- * Payment options
1487
- */
1488
- readonly paymentCashOnDelivery: Locator;
1489
- readonly paymentPaidInAdvance: Locator;
1490
- readonly paymentInvoice: Locator;
1491
- /**
1492
- * Shipping options
1493
- */
1494
- readonly shippingStandard: Locator;
1495
- readonly shippingExpress: Locator;
1496
- /**
1497
- * Product details
1498
- */
1499
- readonly cartLineItemImages: Locator;
1601
+ readonly saveButton: Locator;
1602
+ readonly cancelButton: Locator;
1603
+ readonly cardTitle: Locator;
1604
+ readonly customerGroupNameField: Locator;
1605
+ readonly customerGroupGrossTaxDisplay: Locator;
1606
+ readonly customerGroupNetTaxDisplay: Locator;
1607
+ readonly customSignupFormToggle: Locator;
1608
+ readonly signupFormTitle: Locator;
1609
+ readonly signupFormIntroduction: Locator;
1610
+ readonly signupFormSeoDescription: Locator;
1611
+ readonly signupFormCompanySignupToggle: Locator;
1612
+ readonly customerGroupSaleschannelSelection: Locator;
1613
+ readonly customerGroupSaleschannelResultList: Locator;
1500
1614
  readonly page: Page;
1501
- constructor(page: Page);
1615
+ readonly instanceMeta: HelperFixtureTypes['InstanceMeta'];
1616
+ constructor(page: Page, instanceMeta: HelperFixtureTypes['InstanceMeta']);
1502
1617
  url(): string;
1503
1618
  }
1504
1619
 
1505
- declare class CheckoutFinish implements PageObject {
1620
+ declare class CustomerGroupDetail extends CustomerGroupCreate implements PageObject {
1506
1621
  readonly headline: Locator;
1507
- readonly orderNumberText: Locator;
1508
- readonly grandTotalPrice: Locator;
1509
- readonly taxPrice: Locator;
1510
- readonly cartLineItemImages: Locator;
1511
- readonly page: Page;
1512
- private readonly orderNumberRegex;
1513
- constructor(page: Page);
1514
- url(): string;
1515
- getOrderNumber(): Promise<string | null>;
1516
- getOrderId(): string | null;
1622
+ readonly selectedSalesChannel: Locator;
1623
+ readonly technicalUrl: Locator;
1624
+ readonly saleschannelUrl: Locator;
1625
+ constructor(page: Page, instanceMeta: HelperFixtureTypes['InstanceMeta']);
1626
+ url(customerGroupId?: string): string;
1517
1627
  }
1518
1628
 
1519
- declare class CheckoutRegister implements PageObject {
1520
- readonly cartLineItemImages: Locator;
1629
+ declare class FirstRunWizard implements PageObject {
1630
+ readonly nextButton: Locator;
1631
+ readonly configureLaterButton: Locator;
1632
+ readonly skipButton: Locator;
1633
+ readonly finishButton: Locator;
1634
+ readonly backButton: Locator;
1635
+ readonly smtpServerButton: Locator;
1636
+ readonly dataImportHeader: Locator;
1637
+ readonly installLanguagePackButton: Locator;
1638
+ readonly installDemoDataButton: Locator;
1639
+ readonly installMigrationAssistantButton: Locator;
1640
+ readonly defaultValuesHeader: Locator;
1641
+ readonly mailerConfigurationHeader: Locator;
1642
+ readonly payPalSetupHeader: Locator;
1643
+ readonly extensionsHeader: Locator;
1644
+ readonly shopwareAccountHeader: Locator;
1645
+ readonly shopwareStoreHeader: Locator;
1646
+ readonly doneHeader: Locator;
1647
+ readonly frwSuccessText: Locator;
1648
+ readonly welcomeText: Locator;
1649
+ readonly pluginCardInfo: Locator;
1650
+ readonly dataImportCard: Locator;
1651
+ readonly salesChannelSelectionList: Locator;
1652
+ readonly salesChannelSelectionMultiSelect: Locator;
1653
+ readonly smtpServerTitle: Locator;
1654
+ /**
1655
+ * @deprecated - Use `smtpServerFieldInputs` instead.
1656
+ */
1657
+ readonly smtpServerFields: Locator;
1658
+ readonly smtpServerFieldInputs: Locator;
1659
+ readonly smtpServerHostInput: Locator;
1660
+ readonly smtpServerPortInput: Locator;
1661
+ readonly smtpServerUsernameInput: Locator;
1662
+ readonly smtpServerPasswordInput: Locator;
1663
+ readonly smtpServerEncryptionInput: Locator;
1664
+ readonly smtpServerSenderAddressInput: Locator;
1665
+ readonly smtpServerDeliveryAddressInput: Locator;
1666
+ readonly smtpServerDisableEmailDeliveryCheckbox: Locator;
1667
+ readonly payPalPaymethods: Locator;
1668
+ readonly payPalInfoCard: Locator;
1669
+ readonly emailAddressInputField: Locator;
1670
+ readonly passwordInputField: Locator;
1671
+ readonly forgotPasswordLink: Locator;
1672
+ readonly extensionStoreHeading: Locator;
1673
+ readonly documentationLink: Locator;
1674
+ readonly forumLink: Locator;
1675
+ readonly roadmapLink: Locator;
1676
+ readonly germanRegionSelector: Locator;
1677
+ readonly toolsSelector: Locator;
1678
+ readonly recommendationHeader: Locator;
1679
+ readonly toolsRecommendedPlugin: Locator;
1521
1680
  readonly page: Page;
1522
- constructor(page: Page);
1681
+ readonly instanceMeta: HelperFixtureTypes['InstanceMeta'];
1682
+ constructor(page: Page, instanceMeta: HelperFixtureTypes['InstanceMeta']);
1523
1683
  url(): string;
1524
1684
  }
1525
1685
 
1526
- declare class Account implements PageObject {
1527
- readonly headline: Locator;
1528
- readonly personalDataCardTitle: Locator;
1529
- readonly paymentMethodCardTitle: Locator;
1530
- readonly billingAddressCardTitle: Locator;
1531
- readonly shippingAddressCardTitle: Locator;
1532
- readonly newsletterCheckbox: Locator;
1533
- readonly newsletterRegistrationSuccessMessage: Locator;
1534
- readonly customerGroupRequestMessage: Locator;
1535
- readonly cannotDeliverToCountryAlert: Locator;
1536
- readonly shippingToAddressNotPossibleAlert: Locator;
1686
+ declare class FlowBuilderCreate implements PageObject {
1687
+ readonly contentView: Locator;
1688
+ readonly saveButton: Locator;
1689
+ readonly header: Locator;
1690
+ readonly smartBarHeader: Locator;
1691
+ readonly generalTab: Locator;
1692
+ readonly flowTab: Locator;
1693
+ readonly nameField: Locator;
1694
+ readonly descriptionField: Locator;
1695
+ readonly priorityField: Locator;
1696
+ readonly activeSwitch: Locator;
1697
+ readonly triggerSelectField: Locator;
1698
+ readonly modalAddButton: Locator;
1699
+ readonly sequenceSelectorConditionButton: Locator;
1700
+ readonly conditionSelectField: Locator;
1701
+ readonly sequenceSelectorActionButton: Locator;
1702
+ readonly actionSelectField: Locator;
1703
+ readonly selectFieldResultList: Locator;
1704
+ readonly trueBlock: Locator;
1705
+ readonly trueBlockAddConditionButton: Locator;
1706
+ readonly trueBlockAddActionButton: Locator;
1707
+ readonly trueBlockActionSelectField: Locator;
1708
+ readonly trueBlockActionDescription: Locator;
1709
+ readonly mailSendModal: Locator;
1710
+ readonly mailSendModalTemplateSelectField: Locator;
1711
+ readonly falseBlock: Locator;
1712
+ readonly falseBlockAddConditionButton: Locator;
1713
+ readonly falseBlockAddActionButton: Locator;
1714
+ readonly falseBlockActionSelectField: Locator;
1715
+ readonly falseBlockActionDescription: Locator;
1716
+ readonly tagModal: Locator;
1717
+ readonly tagModalTagsSelectField: Locator;
1718
+ readonly delayCard: Locator;
1719
+ readonly conditionRule: Locator;
1720
+ readonly sequenceSeparator: Locator;
1721
+ readonly addActionField: Locator;
1722
+ readonly newFlowHeader: Locator;
1723
+ readonly resultListItem: Locator;
1724
+ readonly resultList: Locator;
1537
1725
  readonly page: Page;
1538
1726
  readonly instanceMeta: HelperFixtureTypes['InstanceMeta'];
1539
1727
  constructor(page: Page, instanceMeta: HelperFixtureTypes['InstanceMeta']);
1540
- getCustomerGroupAlert(customerGroup: string): Promise<Locator>;
1541
- url(): string;
1728
+ url(flowId?: string, tabName?: string): string;
1729
+ getSelectFieldListitem(selectField: Locator, listItem: string): Promise<Locator>;
1542
1730
  }
1543
1731
 
1544
- declare class AccountLogin implements PageObject {
1545
- readonly emailInput: Locator;
1546
- readonly passwordInput: Locator;
1547
- readonly forgotPasswordLink: Locator;
1548
- readonly loginButton: Locator;
1549
- readonly logoutLink: Locator;
1550
- readonly successAlert: Locator;
1551
- readonly invalidCredentialsAlert: Locator;
1552
- readonly passwordUpdatedAlert: Locator;
1553
- readonly personalFormArea: Locator;
1554
- readonly billingAddressFormArea: Locator;
1555
- readonly accountTypeSelect: Locator;
1556
- readonly salutationSelect: Locator;
1557
- readonly firstNameInput: Locator;
1558
- readonly lastNameInput: Locator;
1559
- readonly companyInput: Locator;
1560
- readonly departmentInput: Locator;
1561
- readonly vatRegNoInput: Locator;
1562
- readonly registerEmailInput: Locator;
1563
- readonly registerPasswordInput: Locator;
1564
- readonly streetAddressInput: Locator;
1565
- readonly cityInput: Locator;
1566
- readonly countryInput: Locator;
1567
- readonly postalCodeInput: Locator;
1568
- readonly registerButton: Locator;
1569
- readonly greCaptchaV2Container: Locator;
1570
- readonly greCaptchaV2Input: Locator;
1571
- readonly greCaptchaV3Input: Locator;
1572
- readonly greCaptchaProtectionInformation: Locator;
1573
- readonly greCaptchaBadge: Locator;
1574
- readonly differentShippingAddressCheckbox: Locator;
1575
- readonly registerShippingAddressFormArea: Locator;
1576
- readonly shippingAddressSalutationSelect: Locator;
1577
- readonly shippingAddressFirstNameInput: Locator;
1578
- readonly shippingAddressLastNameInput: Locator;
1579
- readonly shippingAddressStreetAddressInput: Locator;
1580
- readonly shippingAddressCityInput: Locator;
1581
- readonly shippingAddressCountryInput: Locator;
1582
- readonly shippingAddressPostalCodeInput: Locator;
1583
- readonly shippingAddressStateInput: Locator;
1732
+ declare class FlowBuilderListing implements PageObject {
1584
1733
  readonly page: Page;
1734
+ readonly contentView: Locator;
1735
+ readonly createFlowButton: Locator;
1736
+ readonly firstFlowName: Locator;
1737
+ readonly firstFlowContextButton: Locator;
1738
+ readonly flowContextMenu: Locator;
1739
+ readonly contextMenuDownload: Locator;
1740
+ readonly contextMenuDuplicate: Locator;
1741
+ readonly contextMenuEdit: Locator;
1742
+ readonly contextMenuDelete: Locator;
1743
+ readonly flowDownloadModal: Locator;
1744
+ readonly downloadFlowButton: Locator;
1745
+ readonly flowDeleteButton: Locator;
1746
+ readonly successAlert: Locator;
1747
+ readonly successAlertMessage: Locator;
1748
+ readonly searchBar: Locator;
1749
+ readonly pagination: Locator;
1750
+ readonly testFlowNameCells: Locator;
1751
+ readonly flowTemplatesTab: Locator;
1585
1752
  constructor(page: Page);
1586
- getShippingCountryLocatorByName(countryName: string): Promise<Locator>;
1587
- url(): string;
1753
+ url(tabName?: string): string;
1754
+ getLineItemByFlowName(flowName: string): Promise<Record<string, Locator>>;
1588
1755
  }
1589
1756
 
1590
- declare class AccountRecover implements PageObject {
1591
- readonly passwordRecoveryForm: Locator;
1592
- readonly title: Locator;
1593
- readonly subtitle: Locator;
1594
- readonly emailInput: Locator;
1595
- readonly requestEmailButton: Locator;
1596
- readonly backButton: Locator;
1597
- readonly passwordResetEmailSentMessage: Locator;
1598
- readonly newPasswordInput: Locator;
1599
- readonly newPasswordConfirmInput: Locator;
1600
- readonly changePasswordButton: Locator;
1601
- readonly invalidLinkMessage: Locator;
1602
- readonly page: Page;
1757
+ declare class FlowBuilderTemplates extends FlowBuilderListing implements PageObject {
1603
1758
  constructor(page: Page);
1604
- url(recoverLink?: string): string;
1759
+ url(): string;
1760
+ getLineItemByFlowName(flowName: string): Promise<{
1761
+ createFlowLink: playwright_core.Locator;
1762
+ lineItem: playwright_core.Locator;
1763
+ templateDetailLink: playwright_core.Locator;
1764
+ }>;
1605
1765
  }
1606
1766
 
1607
- declare class AccountProfile implements PageObject {
1608
- readonly page: Page;
1609
- readonly instanceMeta: HelperFixtureTypes['InstanceMeta'];
1610
- readonly salutationSelect: Locator;
1611
- readonly firstNameInput: Locator;
1612
- readonly lastNameInput: Locator;
1613
- readonly saveProfileButton: Locator;
1614
- readonly changeEmailButton: Locator;
1615
- readonly emailAddressInput: Locator;
1616
- readonly emailAddressConfirmInput: Locator;
1617
- readonly emailConfirmPasswordInput: Locator;
1618
- readonly saveEmailAddressButton: Locator;
1619
- readonly changePasswordButton: Locator;
1620
- readonly newPasswordInput: Locator;
1621
- readonly newPasswordConfirmInput: Locator;
1622
- readonly currentPasswordInput: Locator;
1623
- readonly saveNewPasswordButton: Locator;
1624
- readonly loginDataEmailAddress: Locator;
1625
- readonly emailUpdateMessage: Locator;
1626
- readonly passwordUpdateMessage: Locator;
1627
- readonly emailValidationAlert: Locator;
1628
- readonly emailUpdateFailureAlert: Locator;
1629
- readonly passwordUpdateFailureAlert: Locator;
1767
+ declare class FlowBuilderDetail extends FlowBuilderCreate implements PageObject {
1768
+ readonly saveButtonLoader: Locator;
1769
+ readonly saveButton: Locator;
1770
+ readonly generalTab: Locator;
1771
+ readonly flowTab: Locator;
1772
+ readonly alertWarning: Locator;
1773
+ readonly templateName: Locator;
1774
+ readonly alertMessage: Locator;
1775
+ readonly successMessage: Locator;
1776
+ readonly actionContentTag: Locator;
1777
+ readonly skeletonLoader: Locator;
1778
+ readonly messageClose: Locator;
1630
1779
  constructor(page: Page, instanceMeta: HelperFixtureTypes['InstanceMeta']);
1631
- url(): string;
1632
- }
1633
-
1634
- declare class AccountOrder implements PageObject {
1635
- readonly cartLineItemImages: Locator;
1636
- readonly orderExpandButton: Locator;
1637
- readonly digitalProductDownloadButton: Locator;
1638
- readonly dialogOrderCancel: Locator;
1639
- readonly dialogOrderCancelButton: Locator;
1640
- readonly dialogBackButton: Locator;
1641
- readonly orderDetails: Locator;
1642
- readonly invoiceHTML: Locator;
1643
- readonly creditItem: Locator;
1644
- readonly page: Page;
1645
- constructor(page: Page);
1646
- getOrderByOrderNumber(orderNumber: string): Promise<Record<string, Locator>>;
1647
- url(): string;
1780
+ url(flowId: string, tabName?: string): string;
1781
+ getTooltipText(toolTipArea: Locator): Promise<string>;
1648
1782
  }
1649
1783
 
1650
- declare class AccountAddresses implements PageObject {
1651
- readonly addNewAddressButton: Locator;
1652
- readonly editBillingAddressButton: Locator;
1653
- readonly editShippingAddressButton: Locator;
1654
- readonly useDefaultBillingAddressButton: Locator;
1655
- readonly useDefaultShippingAddressButton: Locator;
1656
- readonly deliveryNotPossibleAlert: Locator | undefined;
1657
- readonly availableAddresses: Locator | undefined;
1658
- readonly addressDropdownButton: Locator | undefined;
1659
- readonly addressDropdownButtons: Locator | undefined;
1660
- readonly availableAddressesUseAsBillingAddress: Locator | undefined;
1661
- readonly availableAddressesUseAsShippingAddress: Locator | undefined;
1784
+ declare class DataSharing implements PageObject {
1785
+ readonly dataConsentHeadline: Locator;
1786
+ readonly dataSharingSuccessMessageLabel: Locator;
1787
+ readonly dataSharingAgreeButton: Locator;
1788
+ readonly dataSharingDisableButton: Locator;
1789
+ readonly dataSharingTermsAgreementLabel: Locator;
1662
1790
  readonly page: Page;
1663
1791
  readonly instanceMeta: HelperFixtureTypes['InstanceMeta'];
1664
1792
  constructor(page: Page, instanceMeta: HelperFixtureTypes['InstanceMeta']);
1665
- url(): string;
1793
+ url(): "#/sw/settings/usage/data/index" | "#/sw/settings/usage/data/index/general";
1666
1794
  }
1667
1795
 
1668
- declare class AccountPayment implements PageObject {
1669
- readonly cashOnDeliveryOption: Locator;
1670
- readonly paidInAdvanceOption: Locator;
1671
- readonly invoiceOption: Locator;
1672
- readonly changeDefaultPaymentButton: Locator;
1796
+ declare class Dashboard implements PageObject {
1797
+ readonly contentView: Locator;
1798
+ readonly adminMenuView: Locator;
1799
+ readonly adminMenuCatalog: Locator;
1800
+ readonly adminMenuOrder: Locator;
1801
+ readonly adminMenuCustomer: Locator;
1802
+ readonly adminMenuContent: Locator;
1803
+ readonly adminMenuMarketing: Locator;
1804
+ readonly adminMenuExtension: Locator;
1805
+ readonly adminMenuUserChevron: Locator;
1806
+ readonly adminMenuUserIcon: Locator;
1807
+ readonly adminMenuUserName: Locator;
1808
+ readonly welcomeHeadline: Locator;
1809
+ readonly welcomeMessage: Locator;
1810
+ readonly dataSharingConsentBanner: Locator;
1811
+ readonly dataSharingAgreeButton: Locator;
1812
+ readonly dataSharingNotAtTheMomentButton: Locator;
1813
+ readonly dataSharingTermsAgreementLabel: Locator;
1814
+ readonly dataSharingSettingsLink: Locator;
1815
+ readonly dataSharingAcceptMessageText: Locator;
1816
+ readonly dataSharingNotAtTheMomentMessageText: Locator;
1817
+ readonly statisticsDateRange: Locator;
1818
+ readonly statisticsChart: Locator;
1673
1819
  readonly page: Page;
1820
+ readonly shopwareServicesAdvertisementBanner: Locator;
1821
+ readonly shopwareServicesAdvertisementBannerCloseButton: Locator;
1822
+ readonly shopwareServicesExploreNowButton: Locator;
1823
+ readonly adminMenuUserActions: Locator;
1824
+ readonly adminMenuLogoutButton: Locator;
1674
1825
  constructor(page: Page);
1675
1826
  url(): string;
1676
1827
  }
1677
1828
 
1678
- declare class Search implements PageObject {
1679
- readonly headline: Locator;
1680
- readonly productImages: Locator;
1829
+ declare class ShippingListing implements PageObject {
1830
+ readonly header: Locator;
1831
+ readonly addShippingMethod: Locator;
1832
+ readonly contextMenu: Locator;
1833
+ readonly editButton: Locator;
1834
+ readonly deleteButton: Locator;
1835
+ readonly modal: Locator;
1836
+ readonly modalHeader: Locator;
1837
+ readonly modalCancelButton: Locator;
1838
+ readonly modalDeleteButton: Locator;
1681
1839
  readonly page: Page;
1682
1840
  constructor(page: Page);
1683
- url(searchTerm: string): string;
1841
+ url(): string;
1684
1842
  }
1685
1843
 
1686
- declare class SearchSuggest extends Home implements PageObject {
1687
- readonly searchSuggestLineItemImages: Locator;
1688
- readonly searchInput: Locator;
1689
- readonly searchIcon: Locator;
1690
- readonly searchSuggestNoResult: Locator;
1691
- readonly searchSuggestLineItemName: Locator;
1692
- readonly searchSuggestLineItemPrice: Locator;
1693
- readonly searchSuggestTotalLink: Locator;
1694
- readonly searchResultTotal: Locator;
1695
- readonly searchHeadline: Locator;
1844
+ declare class ShippingDetail implements PageObject {
1845
+ readonly header: Locator;
1846
+ readonly nameField: Locator;
1847
+ readonly availabilityRuleField: Locator;
1848
+ readonly availabilityRuleListItem: Locator;
1696
1849
  readonly page: Page;
1697
1850
  constructor(page: Page);
1698
- getTotalSearchResultCount(): Promise<number>;
1699
- url(searchTerm?: string): string;
1851
+ url(shippingId: string): string;
1852
+ getRuleSelectionCheckmark(ruleName: string): Locator;
1700
1853
  }
1701
1854
 
1702
- declare class CustomRegister extends AccountLogin implements PageObject {
1855
+ declare class PaymentDetail implements PageObject {
1856
+ readonly header: Locator;
1857
+ readonly nameField: Locator;
1858
+ readonly availabilityRuleField: Locator;
1859
+ readonly availabilityRuleListItem: Locator;
1703
1860
  readonly page: Page;
1704
1861
  constructor(page: Page);
1705
- url(customCustomerGroupName?: string): string;
1862
+ url(paymentId: string): string;
1863
+ getRuleSelectionCheckmark(ruleName: string): Locator;
1706
1864
  }
1707
1865
 
1708
- declare class CheckoutOrderEdit implements PageObject {
1709
- readonly completePaymentButton: Locator;
1710
- readonly orderCancelButton: Locator;
1711
- readonly dialogOrderCancel: Locator;
1712
- readonly dialogOrderCancelButton: Locator;
1713
- readonly dialogBackButton: Locator;
1714
- /**
1715
- * Payment options
1716
- */
1717
- readonly paymentCashOnDelivery: Locator;
1718
- readonly paymentPaidInAdvance: Locator;
1719
- readonly paymentInvoice: Locator;
1866
+ declare class LandingPageCreate implements PageObject {
1720
1867
  /**
1721
- * Shipping options
1868
+ * General
1722
1869
  */
1723
- readonly shippingStandard: Locator;
1724
- readonly shippingExpress: Locator;
1725
- readonly page: Page;
1726
- constructor(page: Page);
1727
- url(orderUuid: string): string;
1870
+ readonly nameInput: Locator;
1871
+ readonly landingPageStatus: Locator;
1872
+ readonly salesChannelSelectionList: Locator;
1873
+ readonly filtersResultPopoverItemList: Locator;
1874
+ readonly saveLandingPageButton: Locator;
1875
+ readonly loadingSpinner: Locator;
1876
+ readonly seoUrlInput: Locator;
1728
1877
  /**
1729
- * Returns the radio button element for a specified payment method.
1730
- *
1731
- * @param paymentMethodName - Name of the payment method on the page.
1878
+ * Layout
1732
1879
  */
1733
- getPaymentMethodButton(paymentMethodName: string): Locator;
1734
- }
1735
-
1736
- declare class AccountAddressCreate implements PageObject {
1737
- readonly salutationDropdown: Locator;
1738
- readonly firstNameInput: Locator;
1739
- readonly lastNameInput: Locator;
1740
- readonly companyInput: Locator;
1741
- readonly departmentInput: Locator;
1742
- readonly streetInput: Locator;
1743
- readonly zipcodeInput: Locator;
1744
- readonly cityInput: Locator;
1745
- readonly countryDropdown: Locator;
1746
- readonly saveAddressButton: Locator;
1747
- readonly stateDropdown: Locator;
1880
+ readonly layoutTab: Locator;
1881
+ readonly assignLayoutButton: Locator;
1882
+ readonly searchLayoutInput: Locator;
1883
+ readonly layoutItems: Locator;
1884
+ readonly layoutSaveButton: Locator;
1885
+ readonly layoutEmptyState: Locator;
1886
+ readonly createNewLayoutButton: Locator;
1887
+ readonly layoutCheckboxes: Locator;
1748
1888
  readonly page: Page;
1749
1889
  constructor(page: Page);
1750
1890
  url(): string;
1751
1891
  }
1752
1892
 
1753
- declare class PageNotFound implements PageObject {
1754
- readonly pageNotFoundImage: Locator;
1755
- readonly headline: Locator;
1756
- readonly pageNotFoundMessage: Locator;
1757
- readonly backToShopButton: Locator;
1893
+ declare class LandingPageDetail implements PageObject {
1894
+ /**
1895
+ * General
1896
+ */
1897
+ readonly nameInput: Locator;
1898
+ readonly landingPageStatus: Locator;
1899
+ readonly salesChannelSelectionList: Locator;
1900
+ readonly filtersResultPopoverItemList: Locator;
1901
+ readonly saveLandingPageButton: Locator;
1902
+ readonly loadingSpinner: Locator;
1903
+ readonly seoUrlInput: Locator;
1904
+ /**
1905
+ * Layout
1906
+ */
1907
+ readonly layoutTab: Locator;
1908
+ readonly layoutAssignmentCardTitle: Locator;
1909
+ readonly layoutAssignmentCardHeadline: Locator;
1910
+ readonly changeLayoutButton: Locator;
1911
+ readonly editInDesignerButton: Locator;
1912
+ readonly layoutResetButton: Locator;
1913
+ readonly layoutAssignmentStatus: Locator;
1914
+ readonly layoutAssignmentContentSection: Locator;
1758
1915
  readonly page: Page;
1759
1916
  constructor(page: Page);
1760
- url(): string;
1917
+ url(landingPageUuid: string): string;
1761
1918
  }
1762
1919
 
1763
- declare class ContactForm extends Home implements PageObject {
1920
+ declare class Categories implements PageObject {
1764
1921
  /**
1765
- * @deprecated Compatible until shopware v6.6.x, will be removed in 6.8.0.0, use 'contactWrapper' instead
1922
+ * Visual tests
1766
1923
  */
1767
- readonly contactModal: Locator | undefined;
1924
+ readonly contentView: Locator;
1768
1925
  /**
1769
- * @deprecated Compatible until shopware v6.6.x, will be removed in 6.8.0.0, use 'contactSuccessMessage' instead
1926
+ * Landing pages
1770
1927
  */
1771
- readonly contactSuccessModal: Locator | undefined;
1772
- readonly contactWrapper: Locator;
1773
- readonly salutationSelect: Locator;
1774
- readonly firstNameInput: Locator;
1775
- readonly lastNameInput: Locator;
1776
- readonly emailInput: Locator;
1777
- readonly phoneInput: Locator;
1778
- readonly subjectInput: Locator;
1779
- readonly commentInput: Locator;
1780
- readonly privacyPolicyCheckbox: Locator;
1781
- readonly submitButton: Locator;
1782
- readonly contactSuccessMessage: Locator;
1783
- readonly cardTitle: Locator;
1784
- readonly formFieldFeedback: Locator | undefined;
1785
- readonly formAlert: Locator | undefined;
1928
+ readonly landingPageArea: Locator;
1929
+ readonly landingPageHeadline: Locator;
1930
+ readonly addLandingPageButton: Locator;
1931
+ readonly landingPageItems: Locator;
1786
1932
  /**
1787
- * Captcha locators
1933
+ * Category tree
1788
1934
  */
1789
- readonly basicCaptcha: Locator;
1790
- readonly basicCaptchaImage: Locator;
1791
- readonly basicCaptchaRefreshButton: Locator;
1792
- readonly basicCaptchaInput: Locator;
1793
- readonly greCaptchaV2Container: Locator;
1794
- readonly greCaptchaV2Input: Locator;
1795
- readonly greCaptchaProtectionInformation: Locator;
1796
- readonly instanceMeta: HelperFixtureTypes['InstanceMeta'];
1797
- constructor(page: Page, instanceMeta: HelperFixtureTypes['InstanceMeta']);
1798
- url(): string;
1799
- }
1800
-
1801
- declare class Wishlist extends Home implements PageObject {
1802
- readonly wishListHeader: Locator;
1803
- readonly removeAlert: Locator;
1804
- readonly emptyListing: Locator;
1935
+ readonly categoryTree: Locator;
1936
+ readonly categoryMenuItemList: Locator;
1937
+ readonly createCategoryInput: Locator;
1938
+ readonly confirmCategoryCreationButton: Locator;
1939
+ readonly confirmCategoryCancelButton: Locator;
1940
+ readonly categoryItems: Locator;
1941
+ /**
1942
+ * Tabs
1943
+ */
1944
+ readonly generalTab: Locator;
1945
+ readonly productsTab: Locator;
1946
+ readonly layoutTab: Locator;
1947
+ readonly seoTab: Locator;
1948
+ /**
1949
+ * General
1950
+ */
1951
+ readonly nameInput: Locator;
1952
+ readonly activeCheckbox: Locator;
1953
+ readonly categoryTypeSelectionList: Locator;
1954
+ readonly filtersResultPopoverItemList: Locator;
1955
+ readonly saveButton: Locator;
1956
+ readonly loadingSpinner: Locator;
1957
+ readonly fadingBar: Locator;
1958
+ readonly configureHomePageButton: Locator;
1959
+ readonly configureModalCancelButton: Locator;
1960
+ /**
1961
+ * Customisable link
1962
+ */
1963
+ readonly entitySelectionList: Locator;
1964
+ readonly linkTypeSelectionList: Locator;
1965
+ readonly categorySelectionList: Locator;
1966
+ readonly productSelectionList: Locator;
1967
+ readonly landingPageSelectionList: Locator;
1968
+ readonly filterResultPopoverTreeCheckboxItemList: Locator;
1969
+ readonly openInNewTabCheckbox: Locator;
1970
+ readonly popoverCategoryTree: Locator;
1971
+ readonly categorySelectionListWrapper: Locator;
1972
+ readonly productSelectionInput: Locator;
1805
1973
  readonly page: Page;
1806
- constructor(page: Page);
1807
- getListingItemByProductName(productListingName: string): Promise<Record<string, Locator>>;
1974
+ readonly instanceMeta: HelperFixtureTypes['InstanceMeta'];
1975
+ constructor(page: Page, instanceMeta: HelperFixtureTypes['InstanceMeta']);
1976
+ getLandingPageByName(landingPageName: string): Promise<Locator>;
1977
+ getPopOverCategoryByName(categoryName: string): Promise<Locator>;
1978
+ getTreeItemContextButton(name: string): Locator;
1808
1979
  url(): string;
1809
1980
  }
1810
1981
 
1811
- declare class Footer implements PageObject {
1812
- readonly footerHeadline: Locator;
1813
- readonly footerContent: Locator;
1814
- readonly footerHotline: Locator;
1815
- readonly footerContactForm: Locator;
1816
- readonly footerContactFormLink: Locator;
1982
+ declare class CustomFieldListing implements PageObject {
1983
+ readonly addNewSetButton: Locator;
1984
+ readonly customFieldRows: Locator;
1817
1985
  readonly page: Page;
1818
1986
  constructor(page: Page);
1987
+ getLineItemByCustomFieldSetName(customFieldSetName: string): Promise<Record<string, Locator>>;
1819
1988
  url(): string;
1820
1989
  }
1821
1990
 
1822
- declare class Header implements PageObject {
1823
- readonly mainNavigationLink: Locator;
1824
- readonly languagesDropdown: Locator;
1825
- readonly languagesMenuOptions: Locator;
1826
- readonly currenciesDropdown: Locator;
1827
- readonly currenciesMenuOptions: Locator;
1828
- readonly wishlistIcon: Locator;
1829
- readonly wishlistBasket: Locator;
1991
+ declare class CustomFieldCreate implements PageObject {
1992
+ readonly saveButton: Locator;
1993
+ readonly cancelButton: Locator;
1994
+ readonly technicalNameInput: Locator;
1995
+ readonly positionInput: Locator;
1996
+ readonly labelEnglishGBInput: Locator;
1997
+ readonly assignToSelectionList: Locator;
1998
+ readonly resultAssignToPopoverItemList: Locator;
1830
1999
  readonly page: Page;
1831
2000
  constructor(page: Page);
1832
2001
  url(): string;
1833
2002
  }
1834
2003
 
1835
- interface StorefrontPageTypes {
1836
- StorefrontHome: Home;
1837
- StorefrontProductDetail: ProductDetail$1;
1838
- StorefrontCategory: Category;
1839
- StorefrontCheckoutCart: CheckoutCart;
1840
- StorefrontOffCanvasCart: OffCanvasCart;
1841
- StorefrontCheckoutConfirm: CheckoutConfirm;
1842
- StorefrontCheckoutFinish: CheckoutFinish;
1843
- StorefrontCheckoutRegister: CheckoutRegister;
1844
- StorefrontAccount: Account;
1845
- StorefrontAccountLogin: AccountLogin;
1846
- StorefrontAccountRecover: AccountRecover;
1847
- StorefrontAccountProfile: AccountProfile;
1848
- StorefrontAccountOrder: AccountOrder;
1849
- StorefrontAccountAddresses: AccountAddresses;
1850
- StorefrontAccountAddressCreate: AccountAddressCreate;
1851
- StorefrontAccountPayment: AccountPayment;
1852
- StorefrontSearch: Search;
1853
- StorefrontSearchSuggest: SearchSuggest;
1854
- StorefrontCustomRegister: CustomRegister;
1855
- StorefrontCheckoutOrderEdit: CheckoutOrderEdit;
1856
- StorefrontPageNotFound: PageNotFound;
1857
- StorefrontContactForm: ContactForm;
1858
- StorefrontWishlist: Wishlist;
1859
- StorefrontFooter: Footer;
1860
- StorefrontHeader: Header;
2004
+ declare class CustomFieldDetail extends CustomFieldCreate {
2005
+ readonly newCustomFieldButton: Locator;
2006
+ readonly customFieldEditDialog: Locator;
2007
+ readonly newCustomFieldDialog: Locator;
2008
+ readonly customFieldTechnicalNameInput: Locator;
2009
+ readonly customFieldPositionInput: Locator;
2010
+ readonly customFieldTypeSelectionList: Locator;
2011
+ readonly customFieldModifyByStoreApiCheckbox: Locator;
2012
+ readonly customFieldCancelButton: Locator;
2013
+ readonly customFieldAddButton: Locator;
2014
+ readonly customFieldEditApplyButton: Locator;
2015
+ readonly customFieldLabelEnglishGBInput: Locator;
2016
+ readonly customFieldPlaceholderEnglishGBInput: Locator;
2017
+ readonly customFieldHelpTextEnglishGBInput: Locator;
2018
+ readonly customFieldDeleteListButton: Locator;
2019
+ readonly customFieldDeleteDialog: Locator;
2020
+ readonly customFieldDeleteCancelButton: Locator;
2021
+ readonly customFieldDeleteButton: Locator;
2022
+ readonly customFieldEditAvailableInShoppingCartCheckbox: Locator;
2023
+ readonly instanceMeta: HelperFixtureTypes['InstanceMeta'];
2024
+ constructor(page: Page, instanceMeta: HelperFixtureTypes['InstanceMeta']);
2025
+ getLineItemByCustomFieldName(customFieldName: string): Promise<Record<string, Locator>>;
2026
+ url(customFieldUuid?: string): string;
2027
+ getSelectFieldListitem(selectField: Locator, listItem: string): Promise<Locator>;
1861
2028
  }
1862
- declare const StorefrontPageObjects: {
1863
- Home: typeof Home;
1864
- ProductDetail: typeof ProductDetail$1;
1865
- Category: typeof Category;
1866
- CheckoutCart: typeof CheckoutCart;
1867
- OffCanvasCart: typeof OffCanvasCart;
1868
- CheckoutConfirm: typeof CheckoutConfirm;
1869
- CheckoutFinish: typeof CheckoutFinish;
1870
- CheckoutRegister: typeof CheckoutRegister;
1871
- Account: typeof Account;
1872
- AccountLogin: typeof AccountLogin;
1873
- AccountRecover: typeof AccountRecover;
1874
- AccountProfile: typeof AccountProfile;
1875
- AccountOrder: typeof AccountOrder;
1876
- AccountAddresses: typeof AccountAddresses;
1877
- AccountAddressCreate: typeof AccountAddressCreate;
1878
- AccountPayment: typeof AccountPayment;
1879
- Search: typeof Search;
1880
- SearchSuggest: typeof SearchSuggest;
1881
- CustomRegister: typeof CustomRegister;
1882
- CheckoutOrderEdit: typeof CheckoutOrderEdit;
1883
- PageNotFound: typeof PageNotFound;
1884
- ContactForm: typeof ContactForm;
1885
- Wishlist: typeof Wishlist;
1886
- Footer: typeof Footer;
1887
- Header: typeof Header;
1888
- };
1889
2029
 
1890
- declare class ProductDetail implements PageObject {
1891
- readonly contentView: Locator;
1892
- readonly productHeadline: Locator;
1893
- /**
1894
- * Save interactions
1895
- */
1896
- readonly savePhysicalProductButton: Locator;
1897
- readonly saveButtonLoadingSpinner: Locator;
1898
- readonly saveButtonCheckMark: Locator;
1899
- /**
1900
- * General Info
1901
- */
1902
- readonly manufacturerDropdownText: Locator;
1903
- /**
1904
- * Prices
1905
- */
1906
- readonly priceGrossInput: Locator;
1907
- /**
1908
- * Deliverability
1909
- */
1910
- readonly stockInput: Locator;
1911
- readonly restockTimeInput: Locator;
1912
- /**
1913
- * Visibility
1914
- */
1915
- readonly activeForAllSalesChannelsToggle: Locator;
1916
- readonly tagsInput: Locator;
1917
- readonly saleChannelsInput: Locator;
1918
- /**
1919
- * Labelling
1920
- */
1921
- readonly releaseDateInput: Locator;
1922
- /**
1923
- * Media Upload interactions
1924
- */
1925
- readonly uploadMediaButton: Locator;
1926
- readonly coverImage: Locator;
1927
- readonly productImage: Locator;
1928
- /**
1929
- * Tabs
1930
- */
1931
- readonly variantsTabLink: Locator;
1932
- readonly specificationsTabLink: Locator;
1933
- readonly advancedPricingTabLink: Locator;
1934
- readonly layoutTabLink: Locator;
1935
- readonly crossSellingTabLink: Locator;
1936
- readonly SEOTabLink: Locator;
1937
- readonly reviewsTabLink: Locator;
1938
- /**
1939
- * Variants Generation
1940
- */
1941
- readonly generateVariantsButton: Locator;
1942
- readonly variantsModal: Locator;
1943
- readonly variantsModalHeadline: Locator;
1944
- readonly variantsNextButton: Locator;
1945
- readonly variantsSaveButton: Locator;
1946
- /**
1947
- * Property Selection
1948
- */
1949
- readonly propertyName: (propertyName: string) => Locator;
1950
- readonly propertyValueCheckbox: (propertyValueName: string) => Locator;
1951
- /** @deprecated - Use 'propertyName' instead. */
1952
- readonly propertyGroupColor: Locator;
1953
- /** @deprecated - Use 'propertyName' instead. */
1954
- readonly propertyGroupSize: Locator;
1955
- /** @deprecated - Use 'propertyValueCheckbox' instead. */
1956
- readonly propertyOptionGrid: Locator;
1957
- /** @deprecated - Use 'propertyValueCheckbox' instead. */
1958
- readonly propertyOptionColorBlue: Locator;
1959
- /** @deprecated - Use 'propertyValueCheckbox' instead. */
1960
- readonly propertyOptionColorRed: Locator;
1961
- /** @deprecated - Use 'propertyValueCheckbox' instead. */
1962
- readonly propertyOptionColorGreen: Locator;
1963
- /** @deprecated - Use 'propertyValueCheckbox' instead. */
1964
- readonly propertyOptionSizeSmall: Locator;
1965
- /** @deprecated - Use 'propertyValueCheckbox' instead. */
1966
- readonly propertyOptionSizeMedium: Locator;
1967
- /** @deprecated - Use 'propertyValueCheckbox' instead. */
1968
- readonly propertyOptionSizeLarge: Locator;
1969
- /**
1970
- * Cards
1971
- */
2030
+ declare class CategoryDetail implements PageObject {
2031
+ readonly saveButton: Locator;
2032
+ readonly cancelButton: Locator;
1972
2033
  readonly customFieldCard: Locator;
2034
+ readonly customFieldSetTabs: Locator;
2035
+ readonly customFieldSetTabCustomContent: Locator;
1973
2036
  readonly page: Page;
1974
2037
  readonly instanceMeta: HelperFixtureTypes['InstanceMeta'];
1975
2038
  constructor(page: Page, instanceMeta: HelperFixtureTypes['InstanceMeta']);
1976
2039
  getCustomFieldSetCardContentByName(customFieldSetName: string): Promise<Record<string, Locator>>;
1977
- url(productId: string): string;
2040
+ url(categoryUuid: string): string;
1978
2041
  getCustomFieldCardLocators(customFieldSetName: string, customFieldTextName: string): Promise<{
1979
2042
  customFieldCard: Locator;
1980
2043
  customFieldSetTab: Locator;
@@ -1983,873 +2046,352 @@ declare class ProductDetail implements PageObject {
1983
2046
  }>;
1984
2047
  }
1985
2048
 
1986
- declare class OrderDetail implements PageObject {
2049
+ declare class RuleCreate implements PageObject {
2050
+ readonly header: Locator;
2051
+ readonly nameInput: Locator;
2052
+ readonly priorityInput: Locator;
2053
+ readonly conditionTypeSelectionInput: Locator;
2054
+ readonly conditionValueSelectionInput: Locator;
2055
+ readonly filtersResultPopoverSelectionList: Locator;
1987
2056
  readonly saveButton: Locator;
1988
- readonly dataGridContextButton: Locator;
1989
- readonly orderTag: Locator;
1990
- readonly lineItem: Locator;
1991
- readonly lineItemsTable: Locator;
1992
- readonly documentType: Locator;
1993
- readonly contextMenuButton: Locator;
1994
- readonly contextMenu: Locator;
1995
- readonly contextMenuSendDocument: Locator;
1996
- readonly sendDocumentModal: Locator;
1997
- readonly sendDocumentButton: Locator;
1998
- readonly itemsCardHeader: Locator;
1999
- readonly sentCheckmark: Locator;
2000
- /**
2001
- * Tabs
2002
- */
2003
- readonly generalTabLink: Locator;
2004
- readonly detailsTabLink: Locator;
2005
- readonly documentsTabLink: Locator;
2057
+ readonly cancelButton: Locator;
2058
+ readonly valueNotAvailableTooltip: Locator;
2006
2059
  readonly page: Page;
2007
2060
  readonly instanceMeta: HelperFixtureTypes['InstanceMeta'];
2008
2061
  constructor(page: Page, instanceMeta: HelperFixtureTypes['InstanceMeta']);
2009
- url(orderId: string, tabName?: string): string;
2010
- getCustomFieldCardLocators(customFieldSetName: string, customFieldTextName: string): Promise<{
2011
- customFieldCard: Locator;
2012
- customFieldSetTab: Locator;
2013
- customFieldLabel: Locator;
2014
- customFieldSelect: Locator;
2015
- }>;
2016
- }
2017
-
2018
- declare class CustomerListing implements PageObject {
2019
- readonly headline: Locator;
2020
- readonly addCustomerButton: Locator;
2021
- readonly bulkEditButton: Locator;
2022
- readonly deleteButton: Locator;
2023
- readonly bulkEditModal: Locator;
2024
- readonly startBulkEditButton: Locator;
2025
- readonly cancelButton: Locator;
2026
- readonly modalHeaderCheckbox: Locator;
2027
- readonly page: Page;
2028
- constructor(page: Page);
2029
- getCustomerByEmail(customerEmail: string): Promise<Record<string, Locator>>;
2030
- getCustomerBulkEditModalTitle(customerCount: number): Promise<Locator>;
2031
- getBulkEditModalLineItemByCustomerEmail(customerEmail: string): Promise<Record<string, Locator>>;
2032
2062
  url(): string;
2063
+ getSelectFieldListitem(selectField: Locator, listItem: string): Promise<Locator>;
2033
2064
  }
2034
2065
 
2035
- declare class CustomerDetail implements PageObject {
2036
- readonly editButton: Locator;
2037
- readonly generalTab: Locator;
2038
- readonly accountCard: Locator;
2039
- readonly customFieldCard: Locator;
2040
- readonly customFieldSetTabs: Locator;
2041
- readonly customFieldSetTabCustomContent: Locator;
2042
- readonly customerGroupRequestMessage: Locator;
2043
- readonly customerGroupAcceptButton: Locator;
2044
- readonly customerGroupDeclineButton: Locator;
2045
- readonly tagList: Locator;
2046
- readonly tagItems: Locator;
2047
- readonly page: Page;
2048
- readonly instanceMeta: HelperFixtureTypes['InstanceMeta'];
2066
+ declare class RuleDetail extends RuleCreate implements PageObject {
2067
+ readonly contentView: Locator;
2068
+ readonly shippingMethodAvailabilityRulesCard: Locator;
2069
+ readonly shippingMethodAvailabilityRulesCardLink: Locator;
2070
+ readonly shippingMethodAvailabilityRulesCardTable: Locator;
2071
+ readonly shippingMethodAvailabilityRulesCardEmptyState: Locator;
2072
+ readonly shippingMethodAvailabilityRulesCardSearchField: Locator;
2073
+ readonly taxProviderRulesCard: Locator;
2074
+ readonly taxProviderRulesCardEmptyState: Locator;
2075
+ readonly paymentMethodsAvailabilityRulesCard: Locator;
2076
+ readonly paymentMethodsAvailabilityRulesCardEmptyState: Locator;
2077
+ readonly paymentMethodsAvailabilityRulesCardLink: Locator;
2078
+ readonly promotionOrderRulesCard: Locator;
2079
+ readonly promotionOrderRulesCardEmptyState: Locator;
2080
+ readonly promotionCustomerRulesCard: Locator;
2081
+ readonly promotionCustomerRulesCardEmptyState: Locator;
2082
+ readonly promotionCartRulesCard: Locator;
2083
+ readonly promotionCartRulesCardEmptyState: Locator;
2084
+ readonly assignmentModal: Locator;
2085
+ readonly assignmentModalAddButton: Locator;
2086
+ readonly assignmentModalSearchField: Locator;
2087
+ readonly conditionORContainer: Locator;
2088
+ readonly adminMenuAvatar: Locator;
2049
2089
  constructor(page: Page, instanceMeta: HelperFixtureTypes['InstanceMeta']);
2050
- getCustomFieldSetCardContentByName(customFieldSetName: string): Promise<Record<string, Locator>>;
2051
- getCustomerGroupAlert(customerGroup: string): Promise<Locator>;
2052
- getCustomerGroup(): Promise<Locator>;
2053
- getAccountStatus(): Promise<Locator>;
2054
- getLanguage(): Promise<Locator>;
2055
- url(customerId: string): string;
2090
+ getEntityCard(cardLocator: Locator): Promise<Record<string, Locator>>;
2091
+ url(ruleId?: string, tabName?: string): string;
2056
2092
  }
2057
2093
 
2058
- declare class CustomerGroupListing implements PageObject {
2059
- readonly headline: Locator;
2060
- readonly addCustomerGroupButton: Locator;
2094
+ declare class RuleListing implements PageObject {
2095
+ readonly createRuleButton: Locator;
2096
+ readonly header: Locator;
2097
+ readonly grid: Locator;
2061
2098
  readonly page: Page;
2062
2099
  constructor(page: Page);
2063
- getCustomerGroupByName(customerGroup: string): Promise<Record<string, Locator>>;
2064
2100
  url(): string;
2065
2101
  }
2066
2102
 
2067
- declare class CustomerGroupCreate implements PageObject {
2068
- readonly headline: Locator;
2103
+ declare class ManufacturerCreate implements PageObject {
2069
2104
  readonly saveButton: Locator;
2070
2105
  readonly cancelButton: Locator;
2071
- readonly cardTitle: Locator;
2072
- readonly customerGroupNameField: Locator;
2073
- readonly customerGroupGrossTaxDisplay: Locator;
2074
- readonly customerGroupNetTaxDisplay: Locator;
2075
- readonly customSignupFormToggle: Locator;
2076
- readonly signupFormTitle: Locator;
2077
- readonly signupFormIntroduction: Locator;
2078
- readonly signupFormSeoDescription: Locator;
2079
- readonly signupFormCompanySignupToggle: Locator;
2080
- readonly customerGroupSaleschannelSelection: Locator;
2081
- readonly customerGroupSaleschannelResultList: Locator;
2106
+ readonly nameInput: Locator;
2107
+ readonly websiteInput: Locator;
2108
+ readonly descriptionInput: Locator;
2082
2109
  readonly page: Page;
2083
2110
  readonly instanceMeta: HelperFixtureTypes['InstanceMeta'];
2084
2111
  constructor(page: Page, instanceMeta: HelperFixtureTypes['InstanceMeta']);
2085
2112
  url(): string;
2086
2113
  }
2087
2114
 
2088
- declare class CustomerGroupDetail extends CustomerGroupCreate implements PageObject {
2089
- readonly headline: Locator;
2090
- readonly selectedSalesChannel: Locator;
2091
- readonly technicalUrl: Locator;
2092
- readonly saleschannelUrl: Locator;
2093
- constructor(page: Page, instanceMeta: HelperFixtureTypes['InstanceMeta']);
2094
- url(customerGroupId?: string): string;
2095
- }
2096
-
2097
- declare class FirstRunWizard implements PageObject {
2098
- readonly nextButton: Locator;
2099
- readonly configureLaterButton: Locator;
2100
- readonly skipButton: Locator;
2101
- readonly finishButton: Locator;
2102
- readonly backButton: Locator;
2103
- readonly smtpServerButton: Locator;
2104
- readonly dataImportHeader: Locator;
2105
- readonly installLanguagePackButton: Locator;
2106
- readonly installDemoDataButton: Locator;
2107
- readonly installMigrationAssistantButton: Locator;
2108
- readonly defaultValuesHeader: Locator;
2109
- readonly mailerConfigurationHeader: Locator;
2110
- readonly payPalSetupHeader: Locator;
2111
- readonly extensionsHeader: Locator;
2112
- readonly shopwareAccountHeader: Locator;
2113
- readonly shopwareStoreHeader: Locator;
2114
- readonly doneHeader: Locator;
2115
- readonly frwSuccessText: Locator;
2116
- readonly welcomeText: Locator;
2117
- readonly pluginCardInfo: Locator;
2118
- readonly dataImportCard: Locator;
2119
- readonly salesChannelSelectionList: Locator;
2120
- readonly salesChannelSelectionMultiSelect: Locator;
2121
- readonly smtpServerTitle: Locator;
2122
- /**
2123
- * @deprecated - Use `smtpServerFieldInputs` instead.
2124
- */
2125
- readonly smtpServerFields: Locator;
2126
- readonly smtpServerFieldInputs: Locator;
2127
- readonly smtpServerHostInput: Locator;
2128
- readonly smtpServerPortInput: Locator;
2129
- readonly smtpServerUsernameInput: Locator;
2130
- readonly smtpServerPasswordInput: Locator;
2131
- readonly smtpServerEncryptionInput: Locator;
2132
- readonly smtpServerSenderAddressInput: Locator;
2133
- readonly smtpServerDeliveryAddressInput: Locator;
2134
- readonly smtpServerDisableEmailDeliveryCheckbox: Locator;
2135
- readonly payPalPaymethods: Locator;
2136
- readonly payPalInfoCard: Locator;
2137
- readonly emailAddressInputField: Locator;
2138
- readonly passwordInputField: Locator;
2139
- readonly forgotPasswordLink: Locator;
2140
- readonly extensionStoreHeading: Locator;
2141
- readonly documentationLink: Locator;
2142
- readonly forumLink: Locator;
2143
- readonly roadmapLink: Locator;
2144
- readonly germanRegionSelector: Locator;
2145
- readonly toolsSelector: Locator;
2146
- readonly recommendationHeader: Locator;
2147
- readonly toolsRecommendedPlugin: Locator;
2115
+ declare class ManufacturerListing implements PageObject {
2116
+ readonly addManufacturerButton: Locator;
2117
+ readonly manufacturerRows: Locator;
2148
2118
  readonly page: Page;
2149
- readonly instanceMeta: HelperFixtureTypes['InstanceMeta'];
2150
- constructor(page: Page, instanceMeta: HelperFixtureTypes['InstanceMeta']);
2119
+ constructor(page: Page);
2120
+ getLineItemByManufacturerName(manufacturerName: string): Promise<Record<string, Locator>>;
2151
2121
  url(): string;
2152
2122
  }
2153
2123
 
2154
- declare class FlowBuilderCreate implements PageObject {
2155
- readonly contentView: Locator;
2156
- readonly saveButton: Locator;
2157
- readonly header: Locator;
2158
- readonly smartBarHeader: Locator;
2159
- readonly generalTab: Locator;
2160
- readonly flowTab: Locator;
2161
- readonly nameField: Locator;
2162
- readonly descriptionField: Locator;
2163
- readonly priorityField: Locator;
2164
- readonly activeSwitch: Locator;
2165
- readonly triggerSelectField: Locator;
2166
- readonly modalAddButton: Locator;
2167
- readonly sequenceSelectorConditionButton: Locator;
2168
- readonly conditionSelectField: Locator;
2169
- readonly sequenceSelectorActionButton: Locator;
2170
- readonly actionSelectField: Locator;
2171
- readonly selectFieldResultList: Locator;
2172
- readonly trueBlock: Locator;
2173
- readonly trueBlockAddConditionButton: Locator;
2174
- readonly trueBlockAddActionButton: Locator;
2175
- readonly trueBlockActionSelectField: Locator;
2176
- readonly trueBlockActionDescription: Locator;
2177
- readonly mailSendModal: Locator;
2178
- readonly mailSendModalTemplateSelectField: Locator;
2179
- readonly falseBlock: Locator;
2180
- readonly falseBlockAddConditionButton: Locator;
2181
- readonly falseBlockAddActionButton: Locator;
2182
- readonly falseBlockActionSelectField: Locator;
2183
- readonly falseBlockActionDescription: Locator;
2184
- readonly tagModal: Locator;
2185
- readonly tagModalTagsSelectField: Locator;
2186
- readonly delayCard: Locator;
2187
- readonly conditionRule: Locator;
2188
- readonly sequenceSeparator: Locator;
2189
- readonly addActionField: Locator;
2190
- readonly newFlowHeader: Locator;
2191
- readonly resultListItem: Locator;
2192
- readonly resultList: Locator;
2193
- readonly page: Page;
2194
- readonly instanceMeta: HelperFixtureTypes['InstanceMeta'];
2124
+ declare class ManufacturerDetail extends ManufacturerCreate {
2125
+ readonly customFieldCard: Locator;
2126
+ readonly customFieldSetTabs: Locator;
2127
+ readonly customFieldSetTabCustomContent: Locator;
2195
2128
  constructor(page: Page, instanceMeta: HelperFixtureTypes['InstanceMeta']);
2196
- url(flowId?: string, tabName?: string): string;
2197
- getSelectFieldListitem(selectField: Locator, listItem: string): Promise<Locator>;
2129
+ getCustomFieldSetCardContentByName(customFieldSetName: string): Promise<Record<string, Locator>>;
2130
+ url(manufacturerUuid?: string): string;
2198
2131
  }
2199
2132
 
2200
- declare class FlowBuilderListing implements PageObject {
2133
+ declare class ProductListing implements PageObject {
2134
+ /**
2135
+ * Multi selection
2136
+ */
2137
+ readonly productsTable: Locator;
2138
+ readonly bulkEditButton: Locator;
2201
2139
  readonly page: Page;
2202
- readonly contentView: Locator;
2203
- readonly createFlowButton: Locator;
2204
- readonly firstFlowName: Locator;
2205
- readonly firstFlowContextButton: Locator;
2206
- readonly flowContextMenu: Locator;
2207
- readonly contextMenuDownload: Locator;
2208
- readonly contextMenuDuplicate: Locator;
2209
- readonly contextMenuEdit: Locator;
2210
- readonly contextMenuDelete: Locator;
2211
- readonly flowDownloadModal: Locator;
2212
- readonly downloadFlowButton: Locator;
2213
- readonly flowDeleteButton: Locator;
2214
- readonly successAlert: Locator;
2215
- readonly successAlertMessage: Locator;
2216
- readonly searchBar: Locator;
2217
- readonly pagination: Locator;
2218
- readonly testFlowNameCells: Locator;
2219
- readonly flowTemplatesTab: Locator;
2220
- constructor(page: Page);
2221
- url(tabName?: string): string;
2222
- getLineItemByFlowName(flowName: string): Promise<Record<string, Locator>>;
2223
- }
2224
-
2225
- declare class FlowBuilderTemplates extends FlowBuilderListing implements PageObject {
2140
+ /**
2141
+ * Bulk edit modal
2142
+ */
2143
+ readonly bulkEditModal: Locator;
2144
+ readonly startBulkEditButton: Locator;
2226
2145
  constructor(page: Page);
2227
- url(): string;
2228
- getLineItemByFlowName(flowName: string): Promise<{
2229
- createFlowLink: playwright_core.Locator;
2230
- lineItem: playwright_core.Locator;
2231
- templateDetailLink: playwright_core.Locator;
2232
- }>;
2233
- }
2234
-
2235
- declare class FlowBuilderDetail extends FlowBuilderCreate implements PageObject {
2236
- readonly saveButtonLoader: Locator;
2237
- readonly saveButton: Locator;
2238
- readonly generalTab: Locator;
2239
- readonly flowTab: Locator;
2240
- readonly alertWarning: Locator;
2241
- readonly templateName: Locator;
2242
- readonly alertMessage: Locator;
2243
- readonly successMessage: Locator;
2244
- readonly actionContentTag: Locator;
2245
- readonly skeletonLoader: Locator;
2246
- readonly messageClose: Locator;
2247
- constructor(page: Page, instanceMeta: HelperFixtureTypes['InstanceMeta']);
2248
- url(flowId: string, tabName?: string): string;
2249
- getTooltipText(toolTipArea: Locator): Promise<string>;
2146
+ /**
2147
+ * Returns the url to the listing page.
2148
+ *
2149
+ * @param searchTerms - Includes search terms for filtering of the product list.
2150
+ */
2151
+ url(searchTerms?: string[]): string;
2152
+ /**
2153
+ * Returns the table row containing the product with the given product number.
2154
+ *
2155
+ * @param productNumber - Product number you are looking for.
2156
+ */
2157
+ getProductRow(productNumber: string): Promise<Record<string, Locator>>;
2250
2158
  }
2251
2159
 
2252
- declare class DataSharing implements PageObject {
2253
- readonly dataConsentHeadline: Locator;
2254
- readonly dataSharingSuccessMessageLabel: Locator;
2255
- readonly dataSharingAgreeButton: Locator;
2256
- readonly dataSharingDisableButton: Locator;
2257
- readonly dataSharingTermsAgreementLabel: Locator;
2160
+ declare class ProductBulkEdit implements PageObject {
2161
+ /**
2162
+ * Bulk edit values
2163
+ */
2164
+ readonly changeManufacturerRow: Locator;
2165
+ readonly changeManufacturerCheckbox: Locator;
2166
+ readonly manufacturerDropdown: Locator;
2167
+ readonly manufacturerDropdownInput: Locator;
2168
+ readonly manufacturerListResult: Locator;
2169
+ readonly changeActiveRow: Locator;
2170
+ readonly changeActiveCheckbox: Locator;
2171
+ readonly activeToggle: Locator;
2172
+ readonly changePriceRow: Locator;
2173
+ readonly changePriceCheckbox: Locator;
2174
+ readonly grossPriceInput: Locator;
2175
+ readonly changeReleaseDateRow: Locator;
2176
+ readonly changeReleaseDateCheckbox: Locator;
2177
+ readonly releaseDateInput: Locator;
2178
+ readonly changeStockRow: Locator;
2179
+ readonly changeStockCheckbox: Locator;
2180
+ readonly stockChangeMethodDropdown: Locator;
2181
+ readonly stockChangeMethodInput: Locator;
2182
+ readonly stockInput: Locator;
2183
+ readonly changeRestockTimeRow: Locator;
2184
+ readonly changeRestockTimeCheckbox: Locator;
2185
+ readonly restockTimeChangeMethodDropdown: Locator;
2186
+ readonly restockTimeChangeMethodInput: Locator;
2187
+ readonly restockTimeInput: Locator;
2188
+ readonly changeTagsRow: Locator;
2189
+ readonly changeTagsCheckbox: Locator;
2190
+ readonly tagsChangeMethodDropdown: Locator;
2191
+ readonly tagsChangeMethodInput: Locator;
2192
+ readonly tagsInput: Locator;
2193
+ readonly changeSalesChannelRow: Locator;
2194
+ readonly changeSalesChannelCheckbox: Locator;
2195
+ readonly salesChannelChangeMethodDropdown: Locator;
2196
+ readonly salesChannelChangeMethodInput: Locator;
2197
+ readonly salesChannelInput: Locator;
2198
+ readonly applyChangesButton: Locator;
2199
+ /**
2200
+ * Confirmation modal
2201
+ */
2202
+ readonly confirmModal: Locator;
2203
+ readonly confirmModalApplyChangesButton: Locator;
2204
+ readonly confirmModalLoadingSpinner: Locator;
2205
+ readonly confirmModalSuccessHeader: Locator;
2206
+ readonly confirmModalSuccessCloseButton: Locator;
2258
2207
  readonly page: Page;
2259
- readonly instanceMeta: HelperFixtureTypes['InstanceMeta'];
2260
- constructor(page: Page, instanceMeta: HelperFixtureTypes['InstanceMeta']);
2261
- url(): "#/sw/settings/usage/data/index" | "#/sw/settings/usage/data/index/general";
2208
+ constructor(page: Page);
2209
+ url(): string;
2210
+ getDropdownEntry(entry: string): Promise<Locator>;
2262
2211
  }
2263
2212
 
2264
- declare class Dashboard implements PageObject {
2265
- readonly contentView: Locator;
2266
- readonly adminMenuView: Locator;
2267
- readonly adminMenuCatalog: Locator;
2268
- readonly adminMenuOrder: Locator;
2269
- readonly adminMenuCustomer: Locator;
2270
- readonly adminMenuContent: Locator;
2271
- readonly adminMenuMarketing: Locator;
2272
- readonly adminMenuExtension: Locator;
2273
- readonly adminMenuUserChevron: Locator;
2274
- readonly adminMenuUserIcon: Locator;
2275
- readonly adminMenuUserName: Locator;
2276
- readonly welcomeHeadline: Locator;
2277
- readonly welcomeMessage: Locator;
2278
- readonly dataSharingConsentBanner: Locator;
2279
- readonly dataSharingAgreeButton: Locator;
2280
- readonly dataSharingNotAtTheMomentButton: Locator;
2281
- readonly dataSharingTermsAgreementLabel: Locator;
2282
- readonly dataSharingSettingsLink: Locator;
2283
- readonly dataSharingAcceptMessageText: Locator;
2284
- readonly dataSharingNotAtTheMomentMessageText: Locator;
2285
- readonly statisticsDateRange: Locator;
2286
- readonly statisticsChart: Locator;
2213
+ declare class CustomerBulkEdit implements PageObject {
2214
+ readonly applyChangesButton: Locator;
2215
+ readonly filtersResultPopoverItemList: Locator;
2216
+ readonly changeCustomerGroupCheckbox: Locator;
2217
+ readonly customerGroupInput: Locator;
2218
+ readonly changeAccountStatusCheckbox: Locator;
2219
+ readonly accountStatusInput: Locator;
2220
+ readonly changeLanguageCheckbox: Locator;
2221
+ readonly changeLanguageInput: Locator;
2222
+ readonly replyToCustomerGroupRequest: Locator;
2223
+ readonly replyToCustomerGroupRequestInput: Locator;
2224
+ readonly changeTagsCheckbox: Locator;
2225
+ readonly changeTypeSelect: Locator;
2226
+ readonly enterTagsSelect: Locator;
2227
+ readonly customFieldCheckbox: Locator;
2228
+ readonly customFieldInput: Locator;
2229
+ readonly customFieldArrowRightButton: Locator;
2230
+ /**
2231
+ * Confirmation modal
2232
+ */
2233
+ readonly confirmModal: Locator;
2234
+ readonly confirmModalApplyChangesButton: Locator;
2235
+ readonly confirmModalSuccessHeader: Locator;
2236
+ readonly confirmModalSuccessCloseButton: Locator;
2287
2237
  readonly page: Page;
2288
- readonly shopwareServicesAdvertisementBanner: Locator;
2289
- readonly shopwareServicesAdvertisementBannerCloseButton: Locator;
2290
- readonly shopwareServicesExploreNowButton: Locator;
2291
- readonly adminMenuUserActions: Locator;
2292
- readonly adminMenuLogoutButton: Locator;
2293
2238
  constructor(page: Page);
2239
+ getPageHeadline(customerCount: number): Promise<Locator>;
2240
+ getCustomFieldInputByName(customFieldName: string): Promise<Locator>;
2241
+ getCustomFieldLinkByName(customFieldSetName: string): Promise<Locator>;
2294
2242
  url(): string;
2295
2243
  }
2296
2244
 
2297
- declare class ShippingListing implements PageObject {
2245
+ declare class SettingsListing implements PageObject {
2246
+ readonly contentView: Locator;
2298
2247
  readonly header: Locator;
2299
- readonly addShippingMethod: Locator;
2300
- readonly contextMenu: Locator;
2301
- readonly editButton: Locator;
2302
- readonly deleteButton: Locator;
2303
- readonly modal: Locator;
2304
- readonly modalHeader: Locator;
2305
- readonly modalCancelButton: Locator;
2306
- readonly modalDeleteButton: Locator;
2248
+ readonly shopwareServicesLink: Locator;
2307
2249
  readonly page: Page;
2308
2250
  constructor(page: Page);
2309
2251
  url(): string;
2310
2252
  }
2311
2253
 
2312
- declare class ShippingDetail implements PageObject {
2313
- readonly header: Locator;
2314
- readonly nameField: Locator;
2315
- readonly availabilityRuleField: Locator;
2316
- readonly availabilityRuleListItem: Locator;
2254
+ declare class DocumentListing implements PageObject {
2255
+ readonly addDocumentButton: Locator;
2256
+ readonly invoiceLink: Locator;
2317
2257
  readonly page: Page;
2318
2258
  constructor(page: Page);
2319
- url(shippingId: string): string;
2320
- getRuleSelectionCheckmark(ruleName: string): Locator;
2259
+ url(): string;
2321
2260
  }
2322
2261
 
2323
- declare class PaymentDetail implements PageObject {
2324
- readonly header: Locator;
2325
- readonly nameField: Locator;
2326
- readonly availabilityRuleField: Locator;
2327
- readonly availabilityRuleListItem: Locator;
2262
+ declare class DocumentDetail implements PageObject {
2263
+ readonly showInAccountSwitch: Locator;
2264
+ readonly saveButton: Locator;
2265
+ readonly documentTypeSelect: Locator;
2328
2266
  readonly page: Page;
2329
2267
  constructor(page: Page);
2330
- url(paymentId: string): string;
2331
- getRuleSelectionCheckmark(ruleName: string): Locator;
2268
+ url(documentId: string): string;
2332
2269
  }
2333
2270
 
2334
- declare class LandingPageCreate implements PageObject {
2335
- /**
2336
- * General
2337
- */
2338
- readonly nameInput: Locator;
2339
- readonly landingPageStatus: Locator;
2340
- readonly salesChannelSelectionList: Locator;
2341
- readonly filtersResultPopoverItemList: Locator;
2342
- readonly saveLandingPageButton: Locator;
2343
- readonly loadingSpinner: Locator;
2344
- readonly seoUrlInput: Locator;
2345
- /**
2346
- * Layout
2347
- */
2348
- readonly layoutTab: Locator;
2349
- readonly assignLayoutButton: Locator;
2350
- readonly searchLayoutInput: Locator;
2351
- readonly layoutItems: Locator;
2352
- readonly layoutSaveButton: Locator;
2353
- readonly layoutEmptyState: Locator;
2354
- readonly createNewLayoutButton: Locator;
2355
- readonly layoutCheckboxes: Locator;
2271
+ declare class ShopwareServices implements PageObject {
2272
+ readonly header: Locator;
2273
+ readonly deactivatedBanner: Locator;
2274
+ readonly activateServicesButton: Locator;
2275
+ readonly permissionBanner: Locator;
2276
+ readonly permissionGrantButton: Locator;
2277
+ readonly serviceCards: Locator;
2278
+ readonly deactivateServicesConfirmButton: Locator;
2279
+ readonly deactivateServicesButton: Locator;
2280
+ readonly deactivateServicesModal: Locator;
2356
2281
  readonly page: Page;
2357
2282
  constructor(page: Page);
2358
2283
  url(): string;
2359
2284
  }
2360
2285
 
2361
- declare class LandingPageDetail implements PageObject {
2286
+ declare class PromotionsListing implements PageObject {
2287
+ private readonly instanceMeta;
2288
+ readonly page: Page;
2289
+ readonly smartBar: Locator;
2290
+ readonly smartBarHeader: Locator;
2291
+ readonly languageSelect: Locator;
2292
+ readonly smartBarAddPromotionButton: Locator;
2293
+ readonly emptyState: Locator;
2294
+ readonly emptyStateAddPromotionButton: Locator;
2295
+ readonly promotionsTable: Locator;
2296
+ readonly sidebarRefreshButton: Locator;
2297
+ constructor(page: Page, instanceMeta: HelperFixtureTypes['InstanceMeta']);
2362
2298
  /**
2363
- * General
2299
+ * Returns the url to the listing page.
2300
+ *
2301
+ * @param searchTerms - Includes search terms for filtering of the promotions list.
2364
2302
  */
2365
- readonly nameInput: Locator;
2366
- readonly landingPageStatus: Locator;
2367
- readonly salesChannelSelectionList: Locator;
2368
- readonly filtersResultPopoverItemList: Locator;
2369
- readonly saveLandingPageButton: Locator;
2370
- readonly loadingSpinner: Locator;
2371
- readonly seoUrlInput: Locator;
2303
+ url(searchTerms?: string[]): string;
2372
2304
  /**
2373
- * Layout
2305
+ * Returns the table row containing the promotion with the given promotion name.
2306
+ *
2307
+ * @param promotionName - Promotion name you are looking for.
2374
2308
  */
2375
- readonly layoutTab: Locator;
2376
- readonly layoutAssignmentCardTitle: Locator;
2377
- readonly layoutAssignmentCardHeadline: Locator;
2378
- readonly changeLayoutButton: Locator;
2379
- readonly editInDesignerButton: Locator;
2380
- readonly layoutResetButton: Locator;
2381
- readonly layoutAssignmentStatus: Locator;
2382
- readonly layoutAssignmentContentSection: Locator;
2383
- readonly page: Page;
2384
- constructor(page: Page);
2385
- url(landingPageUuid: string): string;
2309
+ getPromotionRow(promotionName: string): Promise<Record<string, Locator>>;
2386
2310
  }
2387
2311
 
2388
- declare class Categories implements PageObject {
2389
- /**
2390
- * Visual tests
2391
- */
2392
- readonly contentView: Locator;
2393
- /**
2394
- * Landing pages
2395
- */
2396
- readonly landingPageArea: Locator;
2397
- readonly landingPageHeadline: Locator;
2398
- readonly addLandingPageButton: Locator;
2399
- readonly landingPageItems: Locator;
2400
- /**
2401
- * Category tree
2402
- */
2403
- readonly categoryTree: Locator;
2404
- readonly categoryMenuItemList: Locator;
2405
- readonly createCategoryInput: Locator;
2406
- readonly confirmCategoryCreationButton: Locator;
2407
- readonly confirmCategoryCancelButton: Locator;
2408
- readonly categoryItems: Locator;
2409
- /**
2410
- * Tabs
2411
- */
2412
- readonly generalTab: Locator;
2413
- readonly productsTab: Locator;
2414
- readonly layoutTab: Locator;
2415
- readonly seoTab: Locator;
2416
- /**
2417
- * General
2418
- */
2419
- readonly nameInput: Locator;
2420
- readonly activeCheckbox: Locator;
2421
- readonly categoryTypeSelectionList: Locator;
2422
- readonly filtersResultPopoverItemList: Locator;
2423
- readonly saveButton: Locator;
2424
- readonly loadingSpinner: Locator;
2425
- readonly fadingBar: Locator;
2426
- readonly configureHomePageButton: Locator;
2427
- readonly configureModalCancelButton: Locator;
2312
+ declare class PromotionCreate implements PageObject {
2313
+ readonly page: Page$1;
2314
+ readonly instanceMeta: HelperFixtureTypes['InstanceMeta'];
2315
+ readonly smartBar: Locator$1;
2316
+ readonly smartBarHeader: Locator$1;
2317
+ readonly languageSelect: Locator$1;
2318
+ readonly saveButton: Locator$1;
2319
+ readonly cancelButton: Locator$1;
2320
+ readonly generalCard: Locator$1;
2321
+ readonly nameInput: Locator$1;
2322
+ readonly priorityInput: Locator$1;
2323
+ constructor(page: Page$1, instanceMeta: HelperFixtureTypes['InstanceMeta']);
2428
2324
  /**
2429
- * Customisable link
2325
+ * Returns the url to the creation page.
2430
2326
  */
2431
- readonly entitySelectionList: Locator;
2432
- readonly linkTypeSelectionList: Locator;
2433
- readonly categorySelectionList: Locator;
2434
- readonly productSelectionList: Locator;
2435
- readonly landingPageSelectionList: Locator;
2436
- readonly filterResultPopoverTreeCheckboxItemList: Locator;
2437
- readonly openInNewTabCheckbox: Locator;
2438
- readonly popoverCategoryTree: Locator;
2439
- readonly categorySelectionListWrapper: Locator;
2440
- readonly productSelectionInput: Locator;
2441
- readonly page: Page;
2442
- readonly instanceMeta: HelperFixtureTypes['InstanceMeta'];
2443
- constructor(page: Page, instanceMeta: HelperFixtureTypes['InstanceMeta']);
2444
- getLandingPageByName(landingPageName: string): Promise<Locator>;
2445
- getPopOverCategoryByName(categoryName: string): Promise<Locator>;
2446
- getTreeItemContextButton(name: string): Locator;
2447
- url(): string;
2448
- }
2449
-
2450
- declare class CustomFieldListing implements PageObject {
2451
- readonly addNewSetButton: Locator;
2452
- readonly customFieldRows: Locator;
2453
- readonly page: Page;
2454
- constructor(page: Page);
2455
- getLineItemByCustomFieldSetName(customFieldSetName: string): Promise<Record<string, Locator>>;
2456
- url(): string;
2457
- }
2458
-
2459
- declare class CustomFieldCreate implements PageObject {
2460
- readonly saveButton: Locator;
2461
- readonly cancelButton: Locator;
2462
- readonly technicalNameInput: Locator;
2463
- readonly positionInput: Locator;
2464
- readonly labelEnglishGBInput: Locator;
2465
- readonly assignToSelectionList: Locator;
2466
- readonly resultAssignToPopoverItemList: Locator;
2467
- readonly page: Page;
2468
- constructor(page: Page);
2469
2327
  url(): string;
2470
2328
  }
2471
2329
 
2472
- declare class CustomFieldDetail extends CustomFieldCreate {
2473
- readonly newCustomFieldButton: Locator;
2474
- readonly customFieldEditDialog: Locator;
2475
- readonly newCustomFieldDialog: Locator;
2476
- readonly customFieldTechnicalNameInput: Locator;
2477
- readonly customFieldPositionInput: Locator;
2478
- readonly customFieldTypeSelectionList: Locator;
2479
- readonly customFieldModifyByStoreApiCheckbox: Locator;
2480
- readonly customFieldCancelButton: Locator;
2481
- readonly customFieldAddButton: Locator;
2482
- readonly customFieldEditApplyButton: Locator;
2483
- readonly customFieldLabelEnglishGBInput: Locator;
2484
- readonly customFieldPlaceholderEnglishGBInput: Locator;
2485
- readonly customFieldHelpTextEnglishGBInput: Locator;
2486
- readonly customFieldDeleteListButton: Locator;
2487
- readonly customFieldDeleteDialog: Locator;
2488
- readonly customFieldDeleteCancelButton: Locator;
2489
- readonly customFieldDeleteButton: Locator;
2490
- readonly customFieldEditAvailableInShoppingCartCheckbox: Locator;
2491
- readonly instanceMeta: HelperFixtureTypes['InstanceMeta'];
2492
- constructor(page: Page, instanceMeta: HelperFixtureTypes['InstanceMeta']);
2493
- getLineItemByCustomFieldName(customFieldName: string): Promise<Record<string, Locator>>;
2494
- url(customFieldUuid?: string): string;
2495
- getSelectFieldListitem(selectField: Locator, listItem: string): Promise<Locator>;
2496
- }
2497
-
2498
- declare class CategoryDetail implements PageObject {
2499
- readonly saveButton: Locator;
2500
- readonly cancelButton: Locator;
2501
- readonly customFieldCard: Locator;
2502
- readonly customFieldSetTabs: Locator;
2503
- readonly customFieldSetTabCustomContent: Locator;
2504
- readonly page: Page;
2330
+ declare class PromotionDetail extends PromotionCreate {
2331
+ readonly page: Page$1;
2505
2332
  readonly instanceMeta: HelperFixtureTypes['InstanceMeta'];
2506
- constructor(page: Page, instanceMeta: HelperFixtureTypes['InstanceMeta']);
2507
- getCustomFieldSetCardContentByName(customFieldSetName: string): Promise<Record<string, Locator>>;
2508
- url(categoryUuid: string): string;
2509
- getCustomFieldCardLocators(customFieldSetName: string, customFieldTextName: string): Promise<{
2510
- customFieldCard: Locator;
2511
- customFieldSetTab: Locator;
2512
- customFieldLabel: Locator;
2513
- customFieldSelect: Locator;
2514
- }>;
2333
+ readonly tabGeneralLink: Locator$1;
2334
+ readonly tabConditionsLink: Locator$1;
2335
+ readonly tabDiscountsLink: Locator$1;
2336
+ readonly promotionCodesCard: Locator$1;
2337
+ readonly promotionCodesHeading: Locator$1;
2338
+ readonly promotionCodesSelection: Locator$1;
2339
+ readonly preConditionsCard: Locator$1;
2340
+ readonly addDiscountButton: Locator$1;
2341
+ readonly discountCards: Locator$1;
2342
+ constructor(page: Page$1, instanceMeta: HelperFixtureTypes['InstanceMeta']);
2343
+ /**
2344
+ * Returns the url to the detail page.
2345
+ *
2346
+ * @param promotionId - Id of the promotion to show the details of.
2347
+ * @param tab - The tab to open. Defaults to 'general'. Other options are 'conditions' and 'discounts'.
2348
+ */
2349
+ url(promotionId?: string, tab?: 'general' | 'conditions' | 'discounts'): string;
2515
2350
  }
2516
2351
 
2517
- declare class RuleCreate implements PageObject {
2518
- readonly header: Locator;
2519
- readonly nameInput: Locator;
2520
- readonly priorityInput: Locator;
2521
- readonly conditionTypeSelectionInput: Locator;
2522
- readonly conditionValueSelectionInput: Locator;
2523
- readonly filtersResultPopoverSelectionList: Locator;
2524
- readonly saveButton: Locator;
2525
- readonly cancelButton: Locator;
2526
- readonly valueNotAvailableTooltip: Locator;
2352
+ declare class YourProfile implements PageObject {
2353
+ readonly contentView: Locator;
2527
2354
  readonly page: Page;
2528
- readonly instanceMeta: HelperFixtureTypes['InstanceMeta'];
2529
- constructor(page: Page, instanceMeta: HelperFixtureTypes['InstanceMeta']);
2355
+ readonly searchPreferencesTab: Locator;
2356
+ readonly firstNameField: Locator;
2357
+ readonly lastNameField: Locator;
2358
+ readonly userNameField: Locator;
2359
+ readonly emailField: Locator;
2360
+ readonly deselectAllButton: Locator;
2361
+ constructor(page: Page);
2530
2362
  url(): string;
2531
- getSelectFieldListitem(selectField: Locator, listItem: string): Promise<Locator>;
2532
2363
  }
2533
2364
 
2534
- declare class RuleDetail extends RuleCreate implements PageObject {
2365
+ declare class ThemesListing implements PageObject {
2535
2366
  readonly contentView: Locator;
2536
- readonly shippingMethodAvailabilityRulesCard: Locator;
2537
- readonly shippingMethodAvailabilityRulesCardLink: Locator;
2538
- readonly shippingMethodAvailabilityRulesCardTable: Locator;
2539
- readonly shippingMethodAvailabilityRulesCardEmptyState: Locator;
2540
- readonly shippingMethodAvailabilityRulesCardSearchField: Locator;
2541
- readonly taxProviderRulesCard: Locator;
2542
- readonly taxProviderRulesCardEmptyState: Locator;
2543
- readonly paymentMethodsAvailabilityRulesCard: Locator;
2544
- readonly paymentMethodsAvailabilityRulesCardEmptyState: Locator;
2545
- readonly paymentMethodsAvailabilityRulesCardLink: Locator;
2546
- readonly promotionOrderRulesCard: Locator;
2547
- readonly promotionOrderRulesCardEmptyState: Locator;
2548
- readonly promotionCustomerRulesCard: Locator;
2549
- readonly promotionCustomerRulesCardEmptyState: Locator;
2550
- readonly promotionCartRulesCard: Locator;
2551
- readonly promotionCartRulesCardEmptyState: Locator;
2552
- readonly assignmentModal: Locator;
2553
- readonly assignmentModalAddButton: Locator;
2554
- readonly assignmentModalSearchField: Locator;
2555
- readonly conditionORContainer: Locator;
2556
- readonly adminMenuAvatar: Locator;
2557
- constructor(page: Page, instanceMeta: HelperFixtureTypes['InstanceMeta']);
2558
- getEntityCard(cardLocator: Locator): Promise<Record<string, Locator>>;
2559
- url(ruleId?: string, tabName?: string): string;
2560
- }
2561
-
2562
- declare class RuleListing implements PageObject {
2563
- readonly createRuleButton: Locator;
2564
- readonly header: Locator;
2565
- readonly grid: Locator;
2566
2367
  readonly page: Page;
2368
+ readonly installedTheme: (title: string) => Locator;
2567
2369
  constructor(page: Page);
2568
2370
  url(): string;
2569
2371
  }
2570
2372
 
2571
- declare class ManufacturerCreate implements PageObject {
2572
- readonly saveButton: Locator;
2573
- readonly cancelButton: Locator;
2574
- readonly nameInput: Locator;
2575
- readonly websiteInput: Locator;
2576
- readonly descriptionInput: Locator;
2373
+ declare class ThemesDetail implements PageObject {
2374
+ readonly contentView: Locator;
2577
2375
  readonly page: Page;
2578
- readonly instanceMeta: HelperFixtureTypes['InstanceMeta'];
2579
- constructor(page: Page, instanceMeta: HelperFixtureTypes['InstanceMeta']);
2376
+ readonly scrollableElement: Locator;
2377
+ readonly themeCard: (headline: string) => Locator;
2378
+ readonly sidebarButton: Locator;
2379
+ constructor(page: Page);
2580
2380
  url(): string;
2581
2381
  }
2582
2382
 
2583
- declare class ManufacturerListing implements PageObject {
2584
- readonly addManufacturerButton: Locator;
2585
- readonly manufacturerRows: Locator;
2383
+ declare class MediaListing implements PageObject {
2586
2384
  readonly page: Page;
2587
- constructor(page: Page);
2588
- getLineItemByManufacturerName(manufacturerName: string): Promise<Record<string, Locator>>;
2589
- url(): string;
2590
- }
2591
-
2592
- declare class ManufacturerDetail extends ManufacturerCreate {
2593
- readonly customFieldCard: Locator;
2594
- readonly customFieldSetTabs: Locator;
2595
- readonly customFieldSetTabCustomContent: Locator;
2596
- constructor(page: Page, instanceMeta: HelperFixtureTypes['InstanceMeta']);
2597
- getCustomFieldSetCardContentByName(customFieldSetName: string): Promise<Record<string, Locator>>;
2598
- url(manufacturerUuid?: string): string;
2599
- }
2600
-
2601
- declare class ProductListing implements PageObject {
2602
- /**
2603
- * Multi selection
2604
- */
2605
- readonly productsTable: Locator;
2606
- readonly bulkEditButton: Locator;
2607
- readonly page: Page;
2608
- /**
2609
- * Bulk edit modal
2610
- */
2611
- readonly bulkEditModal: Locator;
2612
- readonly startBulkEditButton: Locator;
2613
- constructor(page: Page);
2614
- /**
2615
- * Returns the url to the listing page.
2616
- *
2617
- * @param searchTerms - Includes search terms for filtering of the product list.
2618
- */
2619
- url(searchTerms?: string[]): string;
2620
- /**
2621
- * Returns the table row containing the product with the given product number.
2622
- *
2623
- * @param productNumber - Product number you are looking for.
2624
- */
2625
- getProductRow(productNumber: string): Promise<Record<string, Locator>>;
2626
- }
2627
-
2628
- declare class ProductBulkEdit implements PageObject {
2629
- /**
2630
- * Bulk edit values
2631
- */
2632
- readonly changeManufacturerRow: Locator;
2633
- readonly changeManufacturerCheckbox: Locator;
2634
- readonly manufacturerDropdown: Locator;
2635
- readonly manufacturerDropdownInput: Locator;
2636
- readonly manufacturerListResult: Locator;
2637
- readonly changeActiveRow: Locator;
2638
- readonly changeActiveCheckbox: Locator;
2639
- readonly activeToggle: Locator;
2640
- readonly changePriceRow: Locator;
2641
- readonly changePriceCheckbox: Locator;
2642
- readonly grossPriceInput: Locator;
2643
- readonly changeReleaseDateRow: Locator;
2644
- readonly changeReleaseDateCheckbox: Locator;
2645
- readonly releaseDateInput: Locator;
2646
- readonly changeStockRow: Locator;
2647
- readonly changeStockCheckbox: Locator;
2648
- readonly stockChangeMethodDropdown: Locator;
2649
- readonly stockChangeMethodInput: Locator;
2650
- readonly stockInput: Locator;
2651
- readonly changeRestockTimeRow: Locator;
2652
- readonly changeRestockTimeCheckbox: Locator;
2653
- readonly restockTimeChangeMethodDropdown: Locator;
2654
- readonly restockTimeChangeMethodInput: Locator;
2655
- readonly restockTimeInput: Locator;
2656
- readonly changeTagsRow: Locator;
2657
- readonly changeTagsCheckbox: Locator;
2658
- readonly tagsChangeMethodDropdown: Locator;
2659
- readonly tagsChangeMethodInput: Locator;
2660
- readonly tagsInput: Locator;
2661
- readonly changeSalesChannelRow: Locator;
2662
- readonly changeSalesChannelCheckbox: Locator;
2663
- readonly salesChannelChangeMethodDropdown: Locator;
2664
- readonly salesChannelChangeMethodInput: Locator;
2665
- readonly salesChannelInput: Locator;
2666
- readonly applyChangesButton: Locator;
2667
- /**
2668
- * Confirmation modal
2669
- */
2670
- readonly confirmModal: Locator;
2671
- readonly confirmModalApplyChangesButton: Locator;
2672
- readonly confirmModalLoadingSpinner: Locator;
2673
- readonly confirmModalSuccessHeader: Locator;
2674
- readonly confirmModalSuccessCloseButton: Locator;
2675
- readonly page: Page;
2676
- constructor(page: Page);
2677
- url(): string;
2678
- getDropdownEntry(entry: string): Promise<Locator>;
2679
- }
2680
-
2681
- declare class CustomerBulkEdit implements PageObject {
2682
- readonly applyChangesButton: Locator;
2683
- readonly filtersResultPopoverItemList: Locator;
2684
- readonly changeCustomerGroupCheckbox: Locator;
2685
- readonly customerGroupInput: Locator;
2686
- readonly changeAccountStatusCheckbox: Locator;
2687
- readonly accountStatusInput: Locator;
2688
- readonly changeLanguageCheckbox: Locator;
2689
- readonly changeLanguageInput: Locator;
2690
- readonly replyToCustomerGroupRequest: Locator;
2691
- readonly replyToCustomerGroupRequestInput: Locator;
2692
- readonly changeTagsCheckbox: Locator;
2693
- readonly changeTypeSelect: Locator;
2694
- readonly enterTagsSelect: Locator;
2695
- readonly customFieldCheckbox: Locator;
2696
- readonly customFieldInput: Locator;
2697
- readonly customFieldArrowRightButton: Locator;
2698
- /**
2699
- * Confirmation modal
2700
- */
2701
- readonly confirmModal: Locator;
2702
- readonly confirmModalApplyChangesButton: Locator;
2703
- readonly confirmModalSuccessHeader: Locator;
2704
- readonly confirmModalSuccessCloseButton: Locator;
2705
- readonly page: Page;
2706
- constructor(page: Page);
2707
- getPageHeadline(customerCount: number): Promise<Locator>;
2708
- getCustomFieldInputByName(customFieldName: string): Promise<Locator>;
2709
- getCustomFieldLinkByName(customFieldSetName: string): Promise<Locator>;
2710
- url(): string;
2711
- }
2712
-
2713
- declare class SettingsListing implements PageObject {
2714
- readonly contentView: Locator;
2715
- readonly header: Locator;
2716
- readonly shopwareServicesLink: Locator;
2717
- readonly page: Page;
2718
- constructor(page: Page);
2719
- url(): string;
2720
- }
2721
-
2722
- declare class DocumentListing implements PageObject {
2723
- readonly addDocumentButton: Locator;
2724
- readonly invoiceLink: Locator;
2725
- readonly page: Page;
2726
- constructor(page: Page);
2727
- url(): string;
2728
- }
2729
-
2730
- declare class DocumentDetail implements PageObject {
2731
- readonly showInAccountSwitch: Locator;
2732
- readonly saveButton: Locator;
2733
- readonly documentTypeSelect: Locator;
2734
- readonly page: Page;
2735
- constructor(page: Page);
2736
- url(documentId: string): string;
2737
- }
2738
-
2739
- declare class ShopwareServices implements PageObject {
2740
- readonly header: Locator;
2741
- readonly deactivatedBanner: Locator;
2742
- readonly activateServicesButton: Locator;
2743
- readonly permissionBanner: Locator;
2744
- readonly permissionGrantButton: Locator;
2745
- readonly serviceCards: Locator;
2746
- readonly deactivateServicesConfirmButton: Locator;
2747
- readonly deactivateServicesButton: Locator;
2748
- readonly deactivateServicesModal: Locator;
2749
- readonly page: Page;
2750
- constructor(page: Page);
2751
- url(): string;
2752
- }
2753
-
2754
- declare class PromotionsListing implements PageObject {
2755
- private readonly instanceMeta;
2756
- readonly page: Page;
2757
- readonly smartBar: Locator;
2758
- readonly smartBarHeader: Locator;
2759
- readonly languageSelect: Locator;
2760
- readonly smartBarAddPromotionButton: Locator;
2761
- readonly emptyState: Locator;
2762
- readonly emptyStateAddPromotionButton: Locator;
2763
- readonly promotionsTable: Locator;
2764
- readonly sidebarRefreshButton: Locator;
2765
- constructor(page: Page, instanceMeta: HelperFixtureTypes['InstanceMeta']);
2766
- /**
2767
- * Returns the url to the listing page.
2768
- *
2769
- * @param searchTerms - Includes search terms for filtering of the promotions list.
2770
- */
2771
- url(searchTerms?: string[]): string;
2772
- /**
2773
- * Returns the table row containing the promotion with the given promotion name.
2774
- *
2775
- * @param promotionName - Promotion name you are looking for.
2776
- */
2777
- getPromotionRow(promotionName: string): Promise<Record<string, Locator>>;
2778
- }
2779
-
2780
- declare class PromotionCreate implements PageObject {
2781
- readonly page: Page$1;
2782
- readonly instanceMeta: HelperFixtureTypes['InstanceMeta'];
2783
- readonly smartBar: Locator$1;
2784
- readonly smartBarHeader: Locator$1;
2785
- readonly languageSelect: Locator$1;
2786
- readonly saveButton: Locator$1;
2787
- readonly cancelButton: Locator$1;
2788
- readonly generalCard: Locator$1;
2789
- readonly nameInput: Locator$1;
2790
- readonly priorityInput: Locator$1;
2791
- constructor(page: Page$1, instanceMeta: HelperFixtureTypes['InstanceMeta']);
2792
- /**
2793
- * Returns the url to the creation page.
2794
- */
2795
- url(): string;
2796
- }
2797
-
2798
- declare class PromotionDetail extends PromotionCreate {
2799
- readonly page: Page$1;
2800
- readonly instanceMeta: HelperFixtureTypes['InstanceMeta'];
2801
- readonly tabGeneralLink: Locator$1;
2802
- readonly tabConditionsLink: Locator$1;
2803
- readonly tabDiscountsLink: Locator$1;
2804
- readonly promotionCodesCard: Locator$1;
2805
- readonly promotionCodesHeading: Locator$1;
2806
- readonly promotionCodesSelection: Locator$1;
2807
- readonly preConditionsCard: Locator$1;
2808
- readonly addDiscountButton: Locator$1;
2809
- readonly discountCards: Locator$1;
2810
- constructor(page: Page$1, instanceMeta: HelperFixtureTypes['InstanceMeta']);
2811
- /**
2812
- * Returns the url to the detail page.
2813
- *
2814
- * @param promotionId - Id of the promotion to show the details of.
2815
- * @param tab - The tab to open. Defaults to 'general'. Other options are 'conditions' and 'discounts'.
2816
- */
2817
- url(promotionId?: string, tab?: 'general' | 'conditions' | 'discounts'): string;
2818
- }
2819
-
2820
- declare class YourProfile implements PageObject {
2821
- readonly contentView: Locator;
2822
- readonly page: Page;
2823
- readonly searchPreferencesTab: Locator;
2824
- readonly firstNameField: Locator;
2825
- readonly lastNameField: Locator;
2826
- readonly userNameField: Locator;
2827
- readonly emailField: Locator;
2828
- readonly deselectAllButton: Locator;
2829
- constructor(page: Page);
2830
- url(): string;
2831
- }
2832
-
2833
- declare class ThemesListing implements PageObject {
2834
- readonly contentView: Locator;
2835
- readonly page: Page;
2836
- readonly installedTheme: (title: string) => Locator;
2837
- constructor(page: Page);
2838
- url(): string;
2839
- }
2840
-
2841
- declare class ThemesDetail implements PageObject {
2842
- readonly contentView: Locator;
2843
- readonly page: Page;
2844
- readonly scrollableElement: Locator;
2845
- readonly themeCard: (headline: string) => Locator;
2846
- readonly sidebarButton: Locator;
2385
+ readonly scrollableElementVertical: Locator;
2386
+ readonly mediaFolder: (title: string) => Locator;
2387
+ readonly emptyState: Locator;
2388
+ readonly updatedAtDate: Locator;
2847
2389
  constructor(page: Page);
2848
2390
  url(): string;
2849
2391
  }
2850
2392
 
2851
2393
  interface AdministrationPageTypes {
2852
- AdminProductDetail: ProductDetail;
2394
+ AdminProductDetail: ProductDetail$1;
2853
2395
  AdminOrderDetail: OrderDetail;
2854
2396
  AdminCustomerListing: CustomerListing;
2855
2397
  AdminCustomerDetail: CustomerDetail;
@@ -2892,9 +2434,10 @@ interface AdministrationPageTypes {
2892
2434
  AdminYourProfile: YourProfile;
2893
2435
  AdminThemesListing: ThemesListing;
2894
2436
  AdminThemesDetail: ThemesDetail;
2437
+ AdminMediaListing: MediaListing;
2895
2438
  }
2896
2439
  declare const AdminPageObjects: {
2897
- ProductDetail: typeof ProductDetail;
2440
+ ProductDetail: typeof ProductDetail$1;
2898
2441
  OrderDetail: typeof OrderDetail;
2899
2442
  CustomerListing: typeof CustomerListing;
2900
2443
  CustomerDetail: typeof CustomerDetail;
@@ -2937,6 +2480,7 @@ declare const AdminPageObjects: {
2937
2480
  YourProfile: typeof YourProfile;
2938
2481
  ThemesListing: typeof ThemesListing;
2939
2482
  ThemesDetail: typeof ThemesDetail;
2483
+ MediaListing: typeof MediaListing;
2940
2484
  };
2941
2485
 
2942
2486
  interface DataFixtureTypes {
@@ -2979,127 +2523,598 @@ interface FeatureFixtureTypes {
2979
2523
  interface FixtureTypes extends ApiContextTypes, PageContextTypes, ActorFixtureTypes, TestDataFixtureTypes, HelperFixtureTypes, FeatureFixtureTypes, DefaultSalesChannelTypes, ShopwareDataFixtureTypes, StorefrontPageTypes, AdministrationPageTypes, DataFixtureTypes {
2980
2524
  }
2981
2525
 
2982
- type Language = components['schemas']['Language'] & {
2983
- id: string;
2984
- translationCode: components['schemas']['Locale'] & {
2985
- id: string;
2986
- };
2987
- };
2988
- declare const getLanguageData: (languageCode: string, adminApiContext: AdminApiContext) => Promise<Language>;
2989
- declare const getSnippetSetId: (languageCode: string, adminApiContext: AdminApiContext) => Promise<string>;
2990
- type Currency = components['schemas']['Currency'] & {
2991
- id: string;
2992
- };
2993
- declare const getCurrency: (isoCode: string, adminApiContext: AdminApiContext) => Promise<Currency>;
2994
- declare const getTaxId: (adminApiContext: AdminApiContext) => Promise<string>;
2995
- declare const getPaymentMethodId: (adminApiContext: AdminApiContext, handlerId?: string) => Promise<string>;
2996
- /**
2997
- * Gives the default shipping method back called Standard
2998
- * @param adminApiContext - An AdminApiContext entity
2999
- *
3000
- * @deprecated - Use getShippingMethodId instead
3001
- */
3002
- declare const getDefaultShippingMethodId: (adminApiContext: AdminApiContext) => Promise<string>;
3003
- declare const getShippingMethodId: (name: string, adminApiContext: AdminApiContext) => Promise<string>;
3004
- declare const getCountryId: (iso2: string, adminApiContext: AdminApiContext) => Promise<string>;
3005
- declare const getThemeId: (technicalName: string, adminApiContext: AdminApiContext) => Promise<string>;
3006
- declare const getSalutationId: (salutationKey: string, adminApiContext: AdminApiContext) => Promise<string>;
3007
- declare const getStateMachineId: (technicalName: string, adminApiContext: AdminApiContext) => Promise<string>;
3008
- declare const getStateMachineStateId: (stateMachineId: string, adminApiContext: AdminApiContext) => Promise<string>;
3009
- declare const getFlowId: (flowName: string, adminApiContext: AdminApiContext) => Promise<string>;
3010
- declare const getOrderTransactionId: (orderId: string, adminApiContext: AdminApiContext) => Promise<{
3011
- id: string;
3012
- }>;
3013
- declare const getMediaId: (fileName: string, adminApiContext: AdminApiContext) => Promise<string>;
3014
- declare const getFlowTemplate: (flowTemplateId: string, adminApiContext: AdminApiContext) => Promise<FlowTemplate>;
3015
- declare const getFlow: (flowId: string, adminApiContext: AdminApiContext) => Promise<Flow>;
3016
- declare const compareFlowTemplateWithFlow: (flowId: string, flowTemplateId: string, adminApiContext: AdminApiContext) => Promise<boolean>;
3017
- declare function extractIdFromUrl(url: string): string | null;
3018
- type OrderStatus = 'cancel' | 'complete' | 'reopen' | 'process';
3019
- declare const setOrderStatus: (orderId: string, orderStatus: OrderStatus, adminApiContext: AdminApiContext) => Promise<APIResponse>;
3020
- /**
3021
- * Return a single promotion entity with a fetched single discount entity
3022
- */
3023
- declare const getPromotionWithDiscount: (promotionId: string, adminApiContext: AdminApiContext) => Promise<Promotion>;
3024
- declare const updateAdminUser: (adminUserId: string, adminApiContext: AdminApiContext, data: Record<string, string | boolean>) => Promise<void>;
2526
+ declare class Home implements PageObject {
2527
+ readonly categoryTitle: Locator;
2528
+ readonly accountMenuButton: Locator;
2529
+ readonly closeGuestSessionButton: Locator;
2530
+ readonly productImages: Locator;
2531
+ readonly productListItems: Locator;
2532
+ readonly loader: Locator;
2533
+ readonly productVariantCharacteristicsOptions: Locator;
2534
+ /**
2535
+ * @deprecated Use 'Header/languagesDropdown' instead
2536
+ */
2537
+ readonly languagesDropdown: Locator;
2538
+ /**
2539
+ * @deprecated Use 'Header/languagesMenuOptions' instead
2540
+ */
2541
+ readonly languagesMenuOptions: Locator;
2542
+ /**
2543
+ * @deprecated Use 'Header/currenciesDropdown' instead
2544
+ */
2545
+ readonly currenciesDropdown: Locator;
2546
+ /**
2547
+ * @deprecated Use 'Header/currenciesMenuOptions' instead
2548
+ */
2549
+ readonly currenciesMenuOptions: Locator;
2550
+ readonly consentOnlyTechnicallyRequiredButton: Locator;
2551
+ readonly consentConfigureButton: Locator;
2552
+ readonly consentAcceptAllCookiesButton: Locator;
2553
+ readonly consentCookiePreferences: Locator;
2554
+ readonly consentCookiePermissionContent: Locator;
2555
+ readonly consentDialog: Locator;
2556
+ readonly consentDialogTechnicallyRequiredCheckbox: Locator;
2557
+ readonly consentDialogStatisticsCheckbox: Locator;
2558
+ /**
2559
+ * @deprecated Use 'consentDialogMarketingCheckbox' instead
2560
+ */
2561
+ readonly consentDialogMarketingdCheckbox: Locator;
2562
+ readonly consentDialogMarketingCheckbox: Locator;
2563
+ readonly consentDialogAcceptAllCookiesButton: Locator;
2564
+ readonly consentDialogSaveButton: Locator;
2565
+ readonly consentCookieBannerContainer: Locator;
2566
+ readonly offcanvasBackdrop: Locator;
2567
+ /**
2568
+ * @deprecated Use 'Header/mainNavigationLink' instead
2569
+ */
2570
+ readonly mainNavigationLink: Locator;
2571
+ /**
2572
+ * @deprecated Use 'Footer/contactFormLink' instead
2573
+ */
2574
+ readonly contactFormLink: Locator;
2575
+ /**
2576
+ * @deprecated Use 'Header/wishlistIcon' instead
2577
+ */
2578
+ readonly wishlistIcon: Locator;
2579
+ /**
2580
+ * @deprecated Use 'Header/wishlistBasket' instead
2581
+ */
2582
+ readonly wishlistBasket: Locator;
2583
+ readonly filterMultiSelect: Locator;
2584
+ readonly manufacturerFilter: Locator;
2585
+ readonly propertyFilters: Locator;
2586
+ readonly priceFilterButton: Locator;
2587
+ readonly resetAllButton: Locator;
2588
+ readonly freeShippingFilter: Locator;
2589
+ readonly productList: Locator;
2590
+ readonly productItemNames: Locator;
2591
+ readonly productRatingButton: Locator;
2592
+ readonly productRatingList: Locator;
2593
+ readonly page: Page;
2594
+ constructor(page: Page);
2595
+ getRatingItemLocatorByRating(rating: number): Promise<Locator>;
2596
+ getFilterItemByFilterName(filterName: string): Promise<Locator>;
2597
+ getFilterButtonByFilterName(filterName: string): Promise<Locator>;
2598
+ getMenuItemByCategoryName(categoryName: string): Promise<Record<string, Locator>>;
2599
+ /**
2600
+ * @deprecated - use getListingItemByProductName instead
2601
+ */
2602
+ getListingItemByProductId(productId: string): Promise<Record<string, Locator>>;
2603
+ getListingItemByProductName(productListingName: string): Promise<Record<string, Locator>>;
2604
+ url(): string;
2605
+ }
2606
+
2607
+ declare class ProductDetail implements PageObject {
2608
+ readonly addToCartButton: Locator;
2609
+ readonly quantitySelect: Locator;
2610
+ readonly productSingleImage: Locator;
2611
+ readonly productSinglePrice: Locator;
2612
+ readonly productPriceRangesRow: Locator;
2613
+ readonly productListingPriceBadge: Locator;
2614
+ readonly productListingPrice: Locator;
2615
+ readonly productListingPricePercentage: Locator;
2616
+ readonly offCanvasCartTitle: Locator;
2617
+ readonly offCanvasCart: Locator;
2618
+ readonly offCanvasCartGoToCheckoutButton: Locator;
2619
+ readonly offCanvasLineItemImages: Locator;
2620
+ readonly offCanvasSummaryTotalPrice: Locator;
2621
+ readonly offCanvas: Locator;
2622
+ readonly wishlistAddedButton: Locator;
2623
+ readonly wishlistNotAddedButton: Locator;
2624
+ readonly productDetailConfigurator: Locator;
2625
+ readonly productDetailConfiguratorGroupTitle: Locator;
2626
+ readonly productDetailConfiguratorOptionInputs: Locator;
2627
+ readonly productName: Locator;
2628
+ readonly reviewsTab: Locator;
2629
+ readonly reviewTeaserButton: Locator;
2630
+ readonly reviewTeaserText: Locator;
2631
+ readonly reviewListingItems: Locator;
2632
+ readonly reviewEmptyListingText: Locator;
2633
+ readonly reviewLoginForm: Locator;
2634
+ readonly forgottenPasswordLink: Locator;
2635
+ readonly reviewForm: Locator;
2636
+ readonly reviewRatingPoints: Locator;
2637
+ readonly reviewRatingText: Locator;
2638
+ readonly reviewSubmitMessage: Locator;
2639
+ readonly reviewCounter: Locator;
2640
+ readonly reviewItemRatingPoints: Locator;
2641
+ readonly reviewItemTitle: Locator;
2642
+ readonly reviewReviewTextInput: Locator;
2643
+ readonly reviewItemContent: Locator;
2644
+ readonly reviewLoginButton: Locator;
2645
+ readonly reviewEmailInput: Locator;
2646
+ readonly reviewPasswordInput: Locator;
2647
+ readonly reviewTitleInput: Locator;
2648
+ readonly reviewSubmitButton: Locator;
2649
+ readonly productReviewsLink: Locator;
2650
+ readonly productReviewRating: Locator;
2651
+ readonly page: Page;
2652
+ constructor(page: Page);
2653
+ getReviewFilterRowOptionsByName(filterOptionName: string): Promise<{
2654
+ reviewFilterOptionCheckbox: Locator;
2655
+ reviewFilterOptionText: Locator;
2656
+ reviewFilterOptionPercentage: Locator;
2657
+ }>;
2658
+ url(productData: Product): string;
2659
+ }
2660
+
2661
+ declare class Category implements PageObject {
2662
+ readonly sortingSelect: Locator;
2663
+ readonly firstProductBuyButton: Locator;
2664
+ readonly noProductsFoundAlert: Locator;
2665
+ readonly page: Page;
2666
+ constructor(page: Page);
2667
+ url(categoryName: string): string;
2668
+ }
2669
+
2670
+ declare class CheckoutCart implements PageObject {
2671
+ readonly headline: Locator;
2672
+ readonly goToCheckoutButton: Locator;
2673
+ readonly enterPromoInput: Locator;
2674
+ readonly grandTotalPrice: Locator;
2675
+ readonly emptyCartAlert: Locator;
2676
+ readonly stockReachedAlert: Locator;
2677
+ readonly cartLineItemImages: Locator;
2678
+ readonly unitPriceInfo: Locator;
2679
+ readonly cartQuantityNumber: Locator;
2680
+ readonly page: Page;
2681
+ constructor(page: Page);
2682
+ url(): string;
2683
+ getLineItemByProductNumber(productNumber: string): Promise<Record<string, Locator>>;
2684
+ }
2685
+
2686
+ declare class OffCanvasCart implements PageObject {
2687
+ readonly headline: Locator;
2688
+ readonly itemCount: Locator;
2689
+ readonly goToCheckoutButton: Locator;
2690
+ readonly goToCartButton: Locator;
2691
+ readonly continueShoppingButton: Locator;
2692
+ readonly enterPromoInput: Locator;
2693
+ readonly submitDiscountButton: Locator;
2694
+ readonly subTotalPrice: Locator;
2695
+ readonly shippingCosts: Locator;
2696
+ readonly cartQuantityNumber: Locator;
2697
+ readonly page: Page;
2698
+ constructor(page: Page);
2699
+ url(): string;
2700
+ getLineItemByProductNumber(productNumber: string): Promise<Record<string, Locator>>;
2701
+ }
2702
+
2703
+ declare class CheckoutConfirm implements PageObject {
2704
+ readonly headline: Locator;
2705
+ readonly termsAndConditionsCheckbox: Locator;
2706
+ readonly immediateAccessToDigitalProductCheckbox: Locator;
2707
+ readonly grandTotalPrice: Locator;
2708
+ readonly taxPrice: Locator;
2709
+ readonly submitOrderButton: Locator;
2710
+ /**
2711
+ * Payment options
2712
+ */
2713
+ readonly paymentCashOnDelivery: Locator;
2714
+ readonly paymentPaidInAdvance: Locator;
2715
+ readonly paymentInvoice: Locator;
2716
+ /**
2717
+ * Shipping options
2718
+ */
2719
+ readonly shippingStandard: Locator;
2720
+ readonly shippingExpress: Locator;
2721
+ /**
2722
+ * Product details
2723
+ */
2724
+ readonly cartLineItemImages: Locator;
2725
+ readonly page: Page;
2726
+ constructor(page: Page);
2727
+ url(): string;
2728
+ }
2729
+
2730
+ declare class CheckoutFinish implements PageObject {
2731
+ readonly headline: Locator;
2732
+ readonly orderNumberText: Locator;
2733
+ readonly grandTotalPrice: Locator;
2734
+ readonly taxPrice: Locator;
2735
+ readonly cartLineItemImages: Locator;
2736
+ readonly page: Page;
2737
+ private readonly orderNumberRegex;
2738
+ constructor(page: Page);
2739
+ url(): string;
2740
+ getOrderNumber(): Promise<string | null>;
2741
+ getOrderId(): string | null;
2742
+ }
2743
+
2744
+ declare class CheckoutRegister implements PageObject {
2745
+ readonly cartLineItemImages: Locator;
2746
+ readonly page: Page;
2747
+ constructor(page: Page);
2748
+ url(): string;
2749
+ }
2750
+
2751
+ declare class Account implements PageObject {
2752
+ readonly headline: Locator;
2753
+ readonly personalDataCardTitle: Locator;
2754
+ readonly paymentMethodCardTitle: Locator;
2755
+ readonly billingAddressCardTitle: Locator;
2756
+ readonly shippingAddressCardTitle: Locator;
2757
+ readonly newsletterCheckbox: Locator;
2758
+ readonly newsletterRegistrationSuccessMessage: Locator;
2759
+ readonly customerGroupRequestMessage: Locator;
2760
+ readonly cannotDeliverToCountryAlert: Locator;
2761
+ readonly shippingToAddressNotPossibleAlert: Locator;
2762
+ readonly page: Page;
2763
+ readonly instanceMeta: HelperFixtureTypes['InstanceMeta'];
2764
+ constructor(page: Page, instanceMeta: HelperFixtureTypes['InstanceMeta']);
2765
+ getCustomerGroupAlert(customerGroup: string): Promise<Locator>;
2766
+ url(): string;
2767
+ }
2768
+
2769
+ declare class AccountLogin implements PageObject {
2770
+ readonly emailInput: Locator;
2771
+ readonly passwordInput: Locator;
2772
+ readonly forgotPasswordLink: Locator;
2773
+ readonly loginButton: Locator;
2774
+ readonly logoutLink: Locator;
2775
+ readonly successAlert: Locator;
2776
+ readonly invalidCredentialsAlert: Locator;
2777
+ readonly passwordUpdatedAlert: Locator;
2778
+ readonly personalFormArea: Locator;
2779
+ readonly billingAddressFormArea: Locator;
2780
+ readonly accountTypeSelect: Locator;
2781
+ readonly salutationSelect: Locator;
2782
+ readonly firstNameInput: Locator;
2783
+ readonly lastNameInput: Locator;
2784
+ readonly companyInput: Locator;
2785
+ readonly departmentInput: Locator;
2786
+ readonly vatRegNoInput: Locator;
2787
+ readonly registerEmailInput: Locator;
2788
+ readonly registerPasswordInput: Locator;
2789
+ readonly streetAddressInput: Locator;
2790
+ readonly cityInput: Locator;
2791
+ readonly countryInput: Locator;
2792
+ readonly postalCodeInput: Locator;
2793
+ readonly registerButton: Locator;
2794
+ readonly greCaptchaV2Container: Locator;
2795
+ readonly greCaptchaV2Input: Locator;
2796
+ readonly greCaptchaV3Input: Locator;
2797
+ readonly greCaptchaProtectionInformation: Locator;
2798
+ readonly greCaptchaBadge: Locator;
2799
+ readonly differentShippingAddressCheckbox: Locator;
2800
+ readonly registerShippingAddressFormArea: Locator;
2801
+ readonly shippingAddressSalutationSelect: Locator;
2802
+ readonly shippingAddressFirstNameInput: Locator;
2803
+ readonly shippingAddressLastNameInput: Locator;
2804
+ readonly shippingAddressStreetAddressInput: Locator;
2805
+ readonly shippingAddressCityInput: Locator;
2806
+ readonly shippingAddressCountryInput: Locator;
2807
+ readonly shippingAddressPostalCodeInput: Locator;
2808
+ readonly shippingAddressStateInput: Locator;
2809
+ readonly page: Page;
2810
+ constructor(page: Page);
2811
+ getShippingCountryLocatorByName(countryName: string): Promise<Locator>;
2812
+ url(): string;
2813
+ }
2814
+
2815
+ declare class AccountRecover implements PageObject {
2816
+ readonly passwordRecoveryForm: Locator;
2817
+ readonly title: Locator;
2818
+ readonly subtitle: Locator;
2819
+ readonly emailInput: Locator;
2820
+ readonly requestEmailButton: Locator;
2821
+ readonly backButton: Locator;
2822
+ readonly passwordResetEmailSentMessage: Locator;
2823
+ readonly newPasswordInput: Locator;
2824
+ readonly newPasswordConfirmInput: Locator;
2825
+ readonly changePasswordButton: Locator;
2826
+ readonly invalidLinkMessage: Locator;
2827
+ readonly page: Page;
2828
+ constructor(page: Page);
2829
+ url(recoverLink?: string): string;
2830
+ }
2831
+
2832
+ declare class AccountProfile implements PageObject {
2833
+ readonly page: Page;
2834
+ readonly instanceMeta: HelperFixtureTypes['InstanceMeta'];
2835
+ readonly salutationSelect: Locator;
2836
+ readonly firstNameInput: Locator;
2837
+ readonly lastNameInput: Locator;
2838
+ readonly saveProfileButton: Locator;
2839
+ readonly changeEmailButton: Locator;
2840
+ readonly emailAddressInput: Locator;
2841
+ readonly emailAddressConfirmInput: Locator;
2842
+ readonly emailConfirmPasswordInput: Locator;
2843
+ readonly saveEmailAddressButton: Locator;
2844
+ readonly changePasswordButton: Locator;
2845
+ readonly newPasswordInput: Locator;
2846
+ readonly newPasswordConfirmInput: Locator;
2847
+ readonly currentPasswordInput: Locator;
2848
+ readonly saveNewPasswordButton: Locator;
2849
+ readonly loginDataEmailAddress: Locator;
2850
+ readonly emailUpdateMessage: Locator;
2851
+ readonly passwordUpdateMessage: Locator;
2852
+ readonly emailValidationAlert: Locator;
2853
+ readonly emailUpdateFailureAlert: Locator;
2854
+ readonly passwordUpdateFailureAlert: Locator;
2855
+ constructor(page: Page, instanceMeta: HelperFixtureTypes['InstanceMeta']);
2856
+ url(): string;
2857
+ }
2858
+
2859
+ declare class AccountOrder implements PageObject {
2860
+ readonly cartLineItemImages: Locator;
2861
+ readonly orderExpandButton: Locator;
2862
+ readonly digitalProductDownloadButton: Locator;
2863
+ readonly dialogOrderCancel: Locator;
2864
+ readonly dialogOrderCancelButton: Locator;
2865
+ readonly dialogBackButton: Locator;
2866
+ readonly orderDetails: Locator;
2867
+ readonly invoiceHTML: Locator;
2868
+ readonly creditItem: Locator;
2869
+ readonly page: Page;
2870
+ constructor(page: Page);
2871
+ getOrderByOrderNumber(orderNumber: string): Promise<Record<string, Locator>>;
2872
+ url(): string;
2873
+ }
2874
+
2875
+ declare class AccountAddresses implements PageObject {
2876
+ readonly addNewAddressButton: Locator;
2877
+ readonly editBillingAddressButton: Locator;
2878
+ readonly editShippingAddressButton: Locator;
2879
+ readonly useDefaultBillingAddressButton: Locator;
2880
+ readonly useDefaultShippingAddressButton: Locator;
2881
+ readonly deliveryNotPossibleAlert: Locator | undefined;
2882
+ readonly availableAddresses: Locator | undefined;
2883
+ readonly addressDropdownButton: Locator | undefined;
2884
+ readonly addressDropdownButtons: Locator | undefined;
2885
+ readonly availableAddressesUseAsBillingAddress: Locator | undefined;
2886
+ readonly availableAddressesUseAsShippingAddress: Locator | undefined;
2887
+ readonly page: Page;
2888
+ readonly instanceMeta: HelperFixtureTypes['InstanceMeta'];
2889
+ constructor(page: Page, instanceMeta: HelperFixtureTypes['InstanceMeta']);
2890
+ url(): string;
2891
+ }
2892
+
2893
+ declare class AccountPayment implements PageObject {
2894
+ readonly cashOnDeliveryOption: Locator;
2895
+ readonly paidInAdvanceOption: Locator;
2896
+ readonly invoiceOption: Locator;
2897
+ readonly changeDefaultPaymentButton: Locator;
2898
+ readonly page: Page;
2899
+ constructor(page: Page);
2900
+ url(): string;
2901
+ }
2902
+
2903
+ declare class Search implements PageObject {
2904
+ readonly headline: Locator;
2905
+ readonly productImages: Locator;
2906
+ readonly page: Page;
2907
+ constructor(page: Page);
2908
+ url(searchTerm: string): string;
2909
+ }
2910
+
2911
+ declare class SearchSuggest extends Home implements PageObject {
2912
+ readonly searchSuggestLineItemImages: Locator;
2913
+ readonly searchInput: Locator;
2914
+ readonly searchIcon: Locator;
2915
+ readonly searchSuggestNoResult: Locator;
2916
+ readonly searchSuggestLineItemName: Locator;
2917
+ readonly searchSuggestLineItemPrice: Locator;
2918
+ readonly searchSuggestTotalLink: Locator;
2919
+ readonly searchResultTotal: Locator;
2920
+ readonly searchHeadline: Locator;
2921
+ readonly page: Page;
2922
+ constructor(page: Page);
2923
+ getTotalSearchResultCount(): Promise<number>;
2924
+ url(searchTerm?: string): string;
2925
+ }
3025
2926
 
3026
- declare const isSaaSInstance: (adminApiContext: AdminApiContext) => Promise<boolean>;
3027
- declare const isThemeCompiled: (context: AdminApiContext, storefrontUrl: string) => Promise<boolean>;
2927
+ declare class CustomRegister extends AccountLogin implements PageObject {
2928
+ readonly page: Page;
2929
+ constructor(page: Page);
2930
+ url(customCustomerGroupName?: string): string;
2931
+ }
3028
2932
 
3029
- declare function createRandomImage(width?: number, height?: number): Image;
2933
+ declare class CheckoutOrderEdit implements PageObject {
2934
+ readonly completePaymentButton: Locator;
2935
+ readonly orderCancelButton: Locator;
2936
+ readonly dialogOrderCancel: Locator;
2937
+ readonly dialogOrderCancelButton: Locator;
2938
+ readonly dialogBackButton: Locator;
2939
+ /**
2940
+ * Payment options
2941
+ */
2942
+ readonly paymentCashOnDelivery: Locator;
2943
+ readonly paymentPaidInAdvance: Locator;
2944
+ readonly paymentInvoice: Locator;
2945
+ /**
2946
+ * Shipping options
2947
+ */
2948
+ readonly shippingStandard: Locator;
2949
+ readonly shippingExpress: Locator;
2950
+ readonly page: Page;
2951
+ constructor(page: Page);
2952
+ url(orderUuid: string): string;
2953
+ /**
2954
+ * Returns the radio button element for a specified payment method.
2955
+ *
2956
+ * @param paymentMethodName - Name of the payment method on the page.
2957
+ */
2958
+ getPaymentMethodButton(paymentMethodName: string): Locator;
2959
+ }
3030
2960
 
3031
- /**
3032
- * Hides elements (via `visibility: hidden`).
3033
- */
3034
- declare function hideElements(page: Page, selectors: (string | Locator)[]): Promise<void>;
3035
- /**
3036
- * Replaces text content or input values of elements with a given replacement string (default: "***").
3037
- * - Works for inputs, textareas, contenteditables and generic elements.
3038
- * - Ensures frameworks see the change (dispatches input/change).
3039
- * - Also masks placeholder so empty fields show replacement text in screenshots.
3040
- */
3041
- declare function replaceElements(page: Page, selectors: (string | Locator)[], replaceWith?: string): Promise<void>;
3042
- interface ReplaceTarget {
3043
- selector: string | Locator;
3044
- replaceWith?: string;
2961
+ declare class AccountAddressCreate implements PageObject {
2962
+ readonly salutationDropdown: Locator;
2963
+ readonly firstNameInput: Locator;
2964
+ readonly lastNameInput: Locator;
2965
+ readonly companyInput: Locator;
2966
+ readonly departmentInput: Locator;
2967
+ readonly streetInput: Locator;
2968
+ readonly zipcodeInput: Locator;
2969
+ readonly cityInput: Locator;
2970
+ readonly countryDropdown: Locator;
2971
+ readonly saveAddressButton: Locator;
2972
+ readonly stateDropdown: Locator;
2973
+ readonly page: Page;
2974
+ constructor(page: Page);
2975
+ url(): string;
3045
2976
  }
3046
- /**
3047
- * Replaces elements individually based on an array of targets.
3048
- *
3049
- *@param page - Playwright page
3050
- *@param targets - Array of objects containing selectors and optional replacement strings.
3051
- */
3052
- declare function replaceElementsIndividually(page: Page, targets: ReplaceTarget[]): Promise<void>;
3053
- /**
3054
- * Calculates the ideal viewport dimensions for a Playwright test based on scrollable content,
3055
- * header visibility, and optional configuration. Useful for dynamic screenshot sizing or
3056
- * testing long-scrolling pages.
3057
- *
3058
- * This function:
3059
- * - Optionally waits for a network request (`requestURL`) before continuing.
3060
- * - Optionally waits for a specific locator (`waitForLocator`) to become visible.
3061
- * - Measures scrollable content height (`scrollableElementVertical`) and header height.
3062
- * - Measures scrollable content width (`scrollableElementHorizontal`).
3063
- * - Falls back to defaults if elements are not found or inaccessible.
3064
- *
3065
- * @param {Page} page - The Playwright `Page` object representing the current browser tab.
3066
- * @param {Options} [options] - Optional configuration to override default behavior.
3067
- * @param {string} [options.requestURL] - A URL substring to wait for via `waitForResponse`.
3068
- * @param {number} [options.width] - Base viewport width to use (default: 1440).
3069
- * @param {string | Locator} [options.scrollableElementVertical] - Selector or Locator for vertical scroll container.
3070
- * @param {string | Locator} [options.scrollableElementHorizontal] - Selector or Locator for horizontal scroll container.
3071
- * @param {number} [options.additionalHeight] - Extra height to add (e.g., to avoid cut-off).
3072
- * @param {string | Locator} [options.waitForSelector] - A selector or Locator to wait for visibility before measuring.
3073
- * @param {number} [options.contentHeight] - Default vertical height fallback if measurement fails.
3074
- * @param {number} [options.headerHeight] - Default header height fallback.
3075
- * @param {string} [options.headerElement] - Selector for a header element whose height should be added if outside scrollable container.
3076
- *
3077
- * @returns {Promise<{ contentWidth: number; totalHeight: number }>} - A Promise resolving to the measured dimensions:
3078
- * - `contentWidth`: the horizontal scroll width or fallback.
3079
- * - `totalHeight`: sum of content height, header height, and any additional height.
3080
- */
3081
- interface Options {
3082
- requestURL?: string;
3083
- width?: number;
3084
- scrollableElementVertical?: string | Locator;
3085
- scrollableElementHorizontal?: string | Locator;
3086
- additionalHeight?: number;
3087
- waitForSelector?: string | Locator;
3088
- contentHeight?: number;
3089
- headerHeight?: number;
3090
- headerElement?: string;
2977
+
2978
+ declare class PageNotFound implements PageObject {
2979
+ readonly pageNotFoundImage: Locator;
2980
+ readonly headline: Locator;
2981
+ readonly pageNotFoundMessage: Locator;
2982
+ readonly backToShopButton: Locator;
2983
+ readonly page: Page;
2984
+ constructor(page: Page);
2985
+ url(): string;
3091
2986
  }
3092
- declare function setViewport(page: Page, options?: Options): Promise<void>;
3093
- /**
3094
- * Takes a screenshot of the desktop content of the page or the provided locator and compares it to existing ones.
3095
- *
3096
- * @param page - Playwright page object
3097
- * @param filename - Filename of the screenshot
3098
- * @param locator - Optional Playwright locator to take a screenshot of instead of the desktop content
3099
- */
3100
- declare function assertScreenshot(page: Page, filename: string, locator?: Locator): Promise<void>;
3101
2987
 
3102
- declare const test: _playwright_test.TestType<_playwright_test.PlaywrightTestArgs & _playwright_test.PlaywrightTestOptions & FixtureTypes & {
2988
+ declare class ContactForm extends Home implements PageObject {
2989
+ /**
2990
+ * @deprecated Compatible until shopware v6.6.x, will be removed in 6.8.0.0, use 'contactWrapper' instead
2991
+ */
2992
+ readonly contactModal: Locator | undefined;
2993
+ /**
2994
+ * @deprecated Compatible until shopware v6.6.x, will be removed in 6.8.0.0, use 'contactSuccessMessage' instead
2995
+ */
2996
+ readonly contactSuccessModal: Locator | undefined;
2997
+ readonly contactWrapper: Locator;
2998
+ readonly salutationSelect: Locator;
2999
+ readonly firstNameInput: Locator;
3000
+ readonly lastNameInput: Locator;
3001
+ readonly emailInput: Locator;
3002
+ readonly phoneInput: Locator;
3003
+ readonly subjectInput: Locator;
3004
+ readonly commentInput: Locator;
3005
+ readonly privacyPolicyCheckbox: Locator;
3006
+ readonly submitButton: Locator;
3007
+ readonly contactSuccessMessage: Locator;
3008
+ readonly cardTitle: Locator;
3009
+ readonly formFieldFeedback: Locator | undefined;
3010
+ readonly formAlert: Locator | undefined;
3011
+ /**
3012
+ * Captcha locators
3013
+ */
3014
+ readonly basicCaptcha: Locator;
3015
+ readonly basicCaptchaImage: Locator;
3016
+ readonly basicCaptchaRefreshButton: Locator;
3017
+ readonly basicCaptchaInput: Locator;
3018
+ readonly greCaptchaV2Container: Locator;
3019
+ readonly greCaptchaV2Input: Locator;
3020
+ readonly greCaptchaProtectionInformation: Locator;
3021
+ readonly instanceMeta: HelperFixtureTypes['InstanceMeta'];
3022
+ constructor(page: Page, instanceMeta: HelperFixtureTypes['InstanceMeta']);
3023
+ url(): string;
3024
+ }
3025
+
3026
+ declare class Wishlist extends Home implements PageObject {
3027
+ readonly wishListHeader: Locator;
3028
+ readonly removeAlert: Locator;
3029
+ readonly emptyListing: Locator;
3030
+ readonly page: Page;
3031
+ constructor(page: Page);
3032
+ getListingItemByProductName(productListingName: string): Promise<Record<string, Locator>>;
3033
+ url(): string;
3034
+ }
3035
+
3036
+ declare class Footer implements PageObject {
3037
+ readonly footerHeadline: Locator;
3038
+ readonly footerContent: Locator;
3039
+ readonly footerHotline: Locator;
3040
+ readonly footerContactForm: Locator;
3041
+ readonly footerContactFormLink: Locator;
3042
+ readonly page: Page;
3043
+ constructor(page: Page);
3044
+ url(): string;
3045
+ }
3046
+
3047
+ declare class Header implements PageObject {
3048
+ readonly mainNavigationLink: Locator;
3049
+ readonly languagesDropdown: Locator;
3050
+ readonly languagesMenuOptions: Locator;
3051
+ readonly currenciesDropdown: Locator;
3052
+ readonly currenciesMenuOptions: Locator;
3053
+ readonly wishlistIcon: Locator;
3054
+ readonly wishlistBasket: Locator;
3055
+ readonly page: Page;
3056
+ constructor(page: Page);
3057
+ url(): string;
3058
+ }
3059
+
3060
+ interface StorefrontPageTypes {
3061
+ StorefrontHome: Home;
3062
+ StorefrontProductDetail: ProductDetail;
3063
+ StorefrontCategory: Category;
3064
+ StorefrontCheckoutCart: CheckoutCart;
3065
+ StorefrontOffCanvasCart: OffCanvasCart;
3066
+ StorefrontCheckoutConfirm: CheckoutConfirm;
3067
+ StorefrontCheckoutFinish: CheckoutFinish;
3068
+ StorefrontCheckoutRegister: CheckoutRegister;
3069
+ StorefrontAccount: Account;
3070
+ StorefrontAccountLogin: AccountLogin;
3071
+ StorefrontAccountRecover: AccountRecover;
3072
+ StorefrontAccountProfile: AccountProfile;
3073
+ StorefrontAccountOrder: AccountOrder;
3074
+ StorefrontAccountAddresses: AccountAddresses;
3075
+ StorefrontAccountAddressCreate: AccountAddressCreate;
3076
+ StorefrontAccountPayment: AccountPayment;
3077
+ StorefrontSearch: Search;
3078
+ StorefrontSearchSuggest: SearchSuggest;
3079
+ StorefrontCustomRegister: CustomRegister;
3080
+ StorefrontCheckoutOrderEdit: CheckoutOrderEdit;
3081
+ StorefrontPageNotFound: PageNotFound;
3082
+ StorefrontContactForm: ContactForm;
3083
+ StorefrontWishlist: Wishlist;
3084
+ StorefrontFooter: Footer;
3085
+ StorefrontHeader: Header;
3086
+ }
3087
+ declare const StorefrontPageObjects: {
3088
+ Home: typeof Home;
3089
+ ProductDetail: typeof ProductDetail;
3090
+ Category: typeof Category;
3091
+ CheckoutCart: typeof CheckoutCart;
3092
+ OffCanvasCart: typeof OffCanvasCart;
3093
+ CheckoutConfirm: typeof CheckoutConfirm;
3094
+ CheckoutFinish: typeof CheckoutFinish;
3095
+ CheckoutRegister: typeof CheckoutRegister;
3096
+ Account: typeof Account;
3097
+ AccountLogin: typeof AccountLogin;
3098
+ AccountRecover: typeof AccountRecover;
3099
+ AccountProfile: typeof AccountProfile;
3100
+ AccountOrder: typeof AccountOrder;
3101
+ AccountAddresses: typeof AccountAddresses;
3102
+ AccountAddressCreate: typeof AccountAddressCreate;
3103
+ AccountPayment: typeof AccountPayment;
3104
+ Search: typeof Search;
3105
+ SearchSuggest: typeof SearchSuggest;
3106
+ CustomRegister: typeof CustomRegister;
3107
+ CheckoutOrderEdit: typeof CheckoutOrderEdit;
3108
+ PageNotFound: typeof PageNotFound;
3109
+ ContactForm: typeof ContactForm;
3110
+ Wishlist: typeof Wishlist;
3111
+ Footer: typeof Footer;
3112
+ Header: typeof Header;
3113
+ };
3114
+
3115
+ type Task = (...args: any[]) => () => Promise<void>;
3116
+
3117
+ declare const test: playwright_test.TestType<playwright_test.PlaywrightTestArgs & playwright_test.PlaywrightTestOptions & FixtureTypes & {
3103
3118
  SaveProduct: Task;
3104
3119
  } & {
3105
3120
  ExpectNotification: Task;
@@ -3162,7 +3177,7 @@ declare const test: _playwright_test.TestType<_playwright_test.PlaywrightTestArg
3162
3177
  } & {
3163
3178
  SearchForTerm: Task;
3164
3179
  } & {
3165
- ValidateAccessibility: (pageName: string, assertViolations?: number | boolean | undefined, createReport?: boolean | undefined, ruleTags?: string[] | undefined, outputDir?: string | undefined) => () => Promise<axe_core.Result[]>;
3180
+ ValidateAccessibility: (pageName: string, assertViolations?: boolean | number, createReport?: boolean, ruleTags?: string[], outputDir?: string) => () => Promise<axe_core.Result[]>;
3166
3181
  } & {
3167
3182
  RemoveProductFromWishlist: Task;
3168
3183
  } & {
@@ -3171,6 +3186,7 @@ declare const test: _playwright_test.TestType<_playwright_test.PlaywrightTestArg
3171
3186
  AddProductToWishlist: Task;
3172
3187
  } & {
3173
3188
  SelectProductFilterOption: Task;
3174
- }, _playwright_test.PlaywrightWorkerArgs & _playwright_test.PlaywrightWorkerOptions & FixtureTypes>;
3189
+ }, playwright_test.PlaywrightWorkerArgs & playwright_test.PlaywrightWorkerOptions & FixtureTypes>;
3175
3190
 
3176
- export { type AccountData, type AclRole, type Address, AdminPageObjects, type CalculatedTaxes, type Category$1 as Category, type CategoryCustomizableLinkData, type CategoryData, type CmsPage, type Country$1 as Country, type CreatedRecord, type Currency$2 as Currency, type CustomField, type CustomFieldData, type CustomFieldSet, type Customer, type CustomerAddress, type CustomerGroup, type DataServiceOptions, type DeliveryTime, type FixtureTypes, type Flow, type FlowConfig, type FlowTemplate, type Language$2 as Language, type Manufacturer, type Media, type Options, type Order, type OrderDelivery, type OrderLineItem, type OrderStatus, type PageObject, type PaymentMethod$1 as PaymentMethod, type Price, type Product, type ProductCrossSelling, type ProductPrice, type ProductReview, type Promotion, type PromotionDiscount, type PropertyGroup, type PropertyGroupOption, type RegistrationData, type ReplaceTarget, type Rule, type RuleAssignmentEntity, RuleType, type SalesChannel, type SalesChannelAnalytics, type SalesChannelDomain, type SalesChannelRecord, type Salutation, type ShippingMethod$1 as ShippingMethod, type SimpleLineItem, type StateMachine, type StateMachineState, StorefrontPageObjects, type SyncApiOperation, type SystemConfig, type Tag, type TagData, type Task, type Tax$1 as Tax, type TaxRules, TestDataService, type User, type VariantListingConfig, assertScreenshot, compareFlowTemplateWithFlow, createRandomImage, extractIdFromUrl, getCountryId, getCurrency, getDefaultShippingMethodId, getFlow, getFlowId, getFlowTemplate, getLanguageData, getMediaId, getOrderTransactionId, getPaymentMethodId, getPromotionWithDiscount, getSalutationId, getShippingMethodId, getSnippetSetId, getStateMachineId, getStateMachineStateId, getTaxId, getThemeId, hideElements, isSaaSInstance, isThemeCompiled, replaceElements, replaceElementsIndividually, setOrderStatus, setViewport, test, updateAdminUser };
3191
+ export { AdminPageObjects, RuleType, StorefrontPageObjects, TestDataService, assertScreenshot, compareFlowTemplateWithFlow, createRandomImage, encodeImage, extractIdFromUrl, getCountryId, getCurrency, getDefaultShippingMethodId, getFlow, getFlowId, getFlowTemplate, getLanguageData, getMediaId, getOrderTransactionId, getPaymentMethodId, getPromotionWithDiscount, getSalutationId, getShippingMethodId, getSnippetSetId, getStateMachineId, getStateMachineStateId, getTaxId, getThemeId, hideElements, isSaaSInstance, isThemeCompiled, replaceElements, replaceElementsIndividually, setOrderStatus, setViewport, test, updateAdminUser };
3192
+ export type { AccountData, AclRole, Address, CalculatedTaxes, Category$1 as Category, CategoryCustomizableLinkData, CategoryData, CmsPage, Country$1 as Country, CreatedRecord, Currency$2 as Currency, CustomField, CustomFieldData, CustomFieldSet, Customer, CustomerAddress, CustomerGroup, DataServiceOptions, DeliveryTime, FixtureTypes, Flow, FlowConfig, FlowTemplate, Language$2 as Language, Manufacturer, Media, Options, Order, OrderDelivery, OrderLineItem, OrderStatus, PageObject, PaymentMethod$1 as PaymentMethod, Price, Product, ProductCrossSelling, ProductPrice, ProductReview, Promotion, PromotionDiscount, PropertyGroup, PropertyGroupOption, RegistrationData, ReplaceTarget, Rule, RuleAssignmentEntity, SalesChannel, SalesChannelAnalytics, SalesChannelDomain, SalesChannelRecord, Salutation, ShippingMethod$1 as ShippingMethod, SimpleLineItem, StateMachine, StateMachineState, SyncApiOperation, SystemConfig, Tag, TagData, Task, Tax$1 as Tax, TaxRules, User, VariantListingConfig };