@lidofinance/wallets-testing-wallets 1.12.0 → 1.13.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 (54) hide show
  1. package/dist/src/metamask/metamask.page.d.ts +14 -16
  2. package/dist/src/metamask/metamask.page.d.ts.map +1 -1
  3. package/dist/src/metamask/metamask.page.js +112 -255
  4. package/dist/src/metamask/metamask.page.js.map +1 -1
  5. package/dist/src/metamask/pages/elements/accountMenu.element.d.ts +13 -0
  6. package/dist/src/metamask/pages/elements/accountMenu.element.d.ts.map +1 -0
  7. package/dist/src/metamask/pages/elements/accountMenu.element.js +31 -0
  8. package/dist/src/metamask/pages/elements/accountMenu.element.js.map +1 -0
  9. package/dist/src/metamask/pages/elements/header.element.d.ts +11 -0
  10. package/dist/src/metamask/pages/elements/header.element.d.ts.map +1 -0
  11. package/dist/src/metamask/pages/elements/header.element.js +20 -0
  12. package/dist/src/metamask/pages/elements/header.element.js.map +1 -0
  13. package/dist/src/metamask/pages/elements/index.d.ts +8 -0
  14. package/dist/src/metamask/pages/elements/index.d.ts.map +1 -0
  15. package/dist/src/metamask/pages/elements/index.js +24 -0
  16. package/dist/src/metamask/pages/elements/index.js.map +1 -0
  17. package/dist/src/metamask/pages/elements/networkList.element.d.ts +13 -0
  18. package/dist/src/metamask/pages/elements/networkList.element.d.ts.map +1 -0
  19. package/dist/src/metamask/pages/elements/networkList.element.js +36 -0
  20. package/dist/src/metamask/pages/elements/networkList.element.js.map +1 -0
  21. package/dist/src/metamask/pages/elements/optionsMenu.element.d.ts +9 -0
  22. package/dist/src/metamask/pages/elements/optionsMenu.element.d.ts.map +1 -0
  23. package/dist/src/metamask/pages/elements/optionsMenu.element.js +13 -0
  24. package/dist/src/metamask/pages/elements/optionsMenu.element.js.map +1 -0
  25. package/dist/src/metamask/pages/elements/popover.element.d.ts +15 -0
  26. package/dist/src/metamask/pages/elements/popover.element.d.ts.map +1 -0
  27. package/dist/src/metamask/pages/elements/popover.element.js +46 -0
  28. package/dist/src/metamask/pages/elements/popover.element.js.map +1 -0
  29. package/dist/src/metamask/pages/home.page.d.ts +22 -0
  30. package/dist/src/metamask/pages/home.page.d.ts.map +1 -0
  31. package/dist/src/metamask/pages/home.page.js +62 -0
  32. package/dist/src/metamask/pages/home.page.js.map +1 -0
  33. package/dist/src/metamask/pages/index.d.ts +4 -0
  34. package/dist/src/metamask/pages/index.d.ts.map +1 -0
  35. package/dist/src/metamask/pages/index.js +20 -0
  36. package/dist/src/metamask/pages/index.js.map +1 -0
  37. package/dist/src/metamask/pages/login.page.d.ts +11 -0
  38. package/dist/src/metamask/pages/login.page.d.ts.map +1 -0
  39. package/dist/src/metamask/pages/login.page.js +23 -0
  40. package/dist/src/metamask/pages/login.page.js.map +1 -0
  41. package/dist/src/metamask/pages/onboarding.page.d.ts +24 -0
  42. package/dist/src/metamask/pages/onboarding.page.d.ts.map +1 -0
  43. package/dist/src/metamask/pages/onboarding.page.js +62 -0
  44. package/dist/src/metamask/pages/onboarding.page.js.map +1 -0
  45. package/dist/src/metamask/pages/settings.page.d.ts +25 -0
  46. package/dist/src/metamask/pages/settings.page.d.ts.map +1 -0
  47. package/dist/src/metamask/pages/settings.page.js +71 -0
  48. package/dist/src/metamask/pages/settings.page.js.map +1 -0
  49. package/dist/src/metamask/pages/walletOperations.page.d.ts +26 -0
  50. package/dist/src/metamask/pages/walletOperations.page.d.ts.map +1 -0
  51. package/dist/src/metamask/pages/walletOperations.page.js +79 -0
  52. package/dist/src/metamask/pages/walletOperations.page.js.map +1 -0
  53. package/dist/tsconfig.tsbuildinfo +1 -1
  54. package/package.json +1 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"accountMenu.element.js","sourceRoot":"","sources":["../../../../../src/metamask/pages/elements/accountMenu.element.ts"],"names":[],"mappings":";;;AAAA,2CAAuD;AAEvD,MAAa,WAAW;IAQtB,YAAY,IAAU;QACpB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,sBAAsB,CAAC,CAAC;QAClE,IAAI,CAAC,gCAAgC,GAAG,IAAI,CAAC,gBAAgB,CAAC,WAAW,CACvE,+CAA+C,CAChD,CAAC;QACF,IAAI,CAAC,mBAAmB,GAAG,IAAI,CAAC,IAAI;aACjC,SAAS,CAAC,QAAQ,CAAC;aACnB,SAAS,CAAC,gBAAgB,CAAC,CAAC;QAC/B,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,oBAAoB,CAAC,CAAC;QAC/D,IAAI,CAAC,0BAA0B,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,CACrD,+BAA+B,CAChC,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,cAAc,CAAC,WAAmB;QACtC,MAAM,WAAI,CAAC,IAAI,CAAC,aAAa,WAAW,WAAW,EAAE,KAAK,IAAI,EAAE;YAC9D,MAAM,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC,KAAK,EAAE,CAAC;QAC7D,CAAC,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,iBAAiB,CAAC,GAAW;QACjC,MAAM,WAAI,CAAC,IAAI,CAAC,2BAA2B,EAAE,KAAK,IAAI,EAAE;YACtD,MAAM,IAAI,CAAC,gCAAgC,CAAC,KAAK,EAAE,CAAC;YACpD,MAAM,IAAI,CAAC,mBAAmB,CAAC,KAAK,EAAE,CAAC;YACvC,MAAM,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YACrC,MAAM,IAAI,CAAC,0BAA0B,CAAC,KAAK,EAAE,CAAC;QAChD,CAAC,CAAC,CAAC;IACL,CAAC;CACF;AArCD,kCAqCC"}
@@ -0,0 +1,11 @@
1
+ import { Locator, Page } from '@playwright/test';
2
+ export declare class Header {
3
+ page: Page;
4
+ accountMenuButton: Locator;
5
+ networkListButton: Locator;
6
+ optionsMenuButton: Locator;
7
+ appHeaderLogo: Locator;
8
+ constructor(page: Page);
9
+ getCurrentNetworkName(): Promise<string>;
10
+ }
11
+ //# sourceMappingURL=header.element.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"header.element.d.ts","sourceRoot":"","sources":["../../../../../src/metamask/pages/elements/header.element.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,IAAI,EAAQ,MAAM,kBAAkB,CAAC;AAEvD,qBAAa,MAAM;IACjB,IAAI,EAAE,IAAI,CAAC;IACX,iBAAiB,EAAE,OAAO,CAAC;IAC3B,iBAAiB,EAAE,OAAO,CAAC;IAC3B,iBAAiB,EAAE,OAAO,CAAC;IAC3B,aAAa,EAAE,OAAO,CAAC;gBAEX,IAAI,EAAE,IAAI;IAYhB,qBAAqB;CAK5B"}
@@ -0,0 +1,20 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Header = void 0;
4
+ const test_1 = require("@playwright/test");
5
+ class Header {
6
+ constructor(page) {
7
+ this.page = page;
8
+ this.accountMenuButton = this.page.getByTestId('account-menu-icon');
9
+ this.networkListButton = this.page.getByTestId('network-display');
10
+ this.optionsMenuButton = this.page.getByTestId('account-options-menu-button');
11
+ this.appHeaderLogo = this.page.locator('button[data-testid="app-header-logo"]');
12
+ }
13
+ async getCurrentNetworkName() {
14
+ return await test_1.test.step('Get current network', async () => {
15
+ return await this.networkListButton.textContent();
16
+ });
17
+ }
18
+ }
19
+ exports.Header = Header;
20
+ //# sourceMappingURL=header.element.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"header.element.js","sourceRoot":"","sources":["../../../../../src/metamask/pages/elements/header.element.ts"],"names":[],"mappings":";;;AAAA,2CAAuD;AAEvD,MAAa,MAAM;IAOjB,YAAY,IAAU;QACpB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,mBAAmB,CAAC,CAAC;QACpE,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,iBAAiB,CAAC,CAAC;QAClE,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,CAC5C,6BAA6B,CAC9B,CAAC;QACF,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CACpC,uCAAuC,CACxC,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,qBAAqB;QACzB,OAAO,MAAM,WAAI,CAAC,IAAI,CAAC,qBAAqB,EAAE,KAAK,IAAI,EAAE;YACvD,OAAO,MAAM,IAAI,CAAC,iBAAiB,CAAC,WAAW,EAAE,CAAC;QACpD,CAAC,CAAC,CAAC;IACL,CAAC;CACF;AAxBD,wBAwBC"}
@@ -0,0 +1,8 @@
1
+ export * from '../onboarding.page';
2
+ export * from '../walletOperations.page';
3
+ export * from './header.element';
4
+ export * from './networkList.element';
5
+ export * from './optionsMenu.element';
6
+ export * from './popover.element';
7
+ export * from './accountMenu.element';
8
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/metamask/pages/elements/index.ts"],"names":[],"mappings":"AAAA,cAAc,oBAAoB,CAAC;AACnC,cAAc,0BAA0B,CAAC;AACzC,cAAc,kBAAkB,CAAC;AACjC,cAAc,uBAAuB,CAAC;AACtC,cAAc,uBAAuB,CAAC;AACtC,cAAc,mBAAmB,CAAC;AAClC,cAAc,uBAAuB,CAAC"}
@@ -0,0 +1,24 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("../onboarding.page"), exports);
18
+ __exportStar(require("../walletOperations.page"), exports);
19
+ __exportStar(require("./header.element"), exports);
20
+ __exportStar(require("./networkList.element"), exports);
21
+ __exportStar(require("./optionsMenu.element"), exports);
22
+ __exportStar(require("./popover.element"), exports);
23
+ __exportStar(require("./accountMenu.element"), exports);
24
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/metamask/pages/elements/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,qDAAmC;AACnC,2DAAyC;AACzC,mDAAiC;AACjC,wDAAsC;AACtC,wDAAsC;AACtC,oDAAkC;AAClC,wDAAsC"}
@@ -0,0 +1,13 @@
1
+ import { Locator, Page } from '@playwright/test';
2
+ export declare class NetworkList {
3
+ page: Page;
4
+ networkDisplayDialog: Locator;
5
+ networkDisplayCloseBtn: Locator;
6
+ networkItemBtn: Locator;
7
+ networkItemText: Locator;
8
+ constructor(page: Page);
9
+ clickToNetwork(networkName: string): Promise<void>;
10
+ getNetworkListText(): Promise<string[]>;
11
+ clickToNetworkItemButton(chainName: string): Promise<void>;
12
+ }
13
+ //# sourceMappingURL=networkList.element.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"networkList.element.d.ts","sourceRoot":"","sources":["../../../../../src/metamask/pages/elements/networkList.element.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,IAAI,EAAQ,MAAM,kBAAkB,CAAC;AAEvD,qBAAa,WAAW;IACtB,IAAI,EAAE,IAAI,CAAC;IACX,oBAAoB,EAAE,OAAO,CAAC;IAC9B,sBAAsB,EAAE,OAAO,CAAC;IAChC,cAAc,EAAE,OAAO,CAAC;IACxB,eAAe,EAAE,OAAO,CAAC;gBAEb,IAAI,EAAE,IAAI;IAWhB,cAAc,CAAC,WAAW,EAAE,MAAM;IAMlC,kBAAkB;IAWlB,wBAAwB,CAAC,SAAS,EAAE,MAAM;CAKjD"}
@@ -0,0 +1,36 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.NetworkList = void 0;
4
+ const test_1 = require("@playwright/test");
5
+ class NetworkList {
6
+ constructor(page) {
7
+ this.page = page;
8
+ this.networkDisplayDialog = this.page.getByRole('dialog');
9
+ this.networkDisplayCloseBtn = this.networkDisplayDialog
10
+ .locator('[aria-label="Close"]')
11
+ .first();
12
+ this.networkItemBtn =
13
+ this.networkDisplayDialog.locator('div[role="button"]');
14
+ this.networkItemText = this.networkItemBtn.locator('p');
15
+ }
16
+ async clickToNetwork(networkName) {
17
+ await test_1.test.step(`Click to "${networkName}" network`, async () => {
18
+ await this.networkDisplayDialog.getByText(networkName).click();
19
+ });
20
+ }
21
+ async getNetworkListText() {
22
+ return await test_1.test.step('Get network list', async () => {
23
+ const networkList = await this.networkItemText.all();
24
+ return Promise.all(networkList.map(async (networkType) => {
25
+ return await networkType.textContent();
26
+ }));
27
+ });
28
+ }
29
+ async clickToNetworkItemButton(chainName) {
30
+ await test_1.test.step(`Click to "${chainName}" network item button`, async () => {
31
+ await this.networkItemBtn.getByText(chainName).click();
32
+ });
33
+ }
34
+ }
35
+ exports.NetworkList = NetworkList;
36
+ //# sourceMappingURL=networkList.element.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"networkList.element.js","sourceRoot":"","sources":["../../../../../src/metamask/pages/elements/networkList.element.ts"],"names":[],"mappings":";;;AAAA,2CAAuD;AAEvD,MAAa,WAAW;IAOtB,YAAY,IAAU;QACpB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,oBAAoB,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;QAC1D,IAAI,CAAC,sBAAsB,GAAG,IAAI,CAAC,oBAAoB;aACpD,OAAO,CAAC,sBAAsB,CAAC;aAC/B,KAAK,EAAE,CAAC;QACX,IAAI,CAAC,cAAc;YACjB,IAAI,CAAC,oBAAoB,CAAC,OAAO,CAAC,oBAAoB,CAAC,CAAC;QAC1D,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IAC1D,CAAC;IAED,KAAK,CAAC,cAAc,CAAC,WAAmB;QACtC,MAAM,WAAI,CAAC,IAAI,CAAC,aAAa,WAAW,WAAW,EAAE,KAAK,IAAI,EAAE;YAC9D,MAAM,IAAI,CAAC,oBAAoB,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC,KAAK,EAAE,CAAC;QACjE,CAAC,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,kBAAkB;QACtB,OAAO,MAAM,WAAI,CAAC,IAAI,CAAC,kBAAkB,EAAE,KAAK,IAAI,EAAE;YACpD,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,GAAG,EAAE,CAAC;YACrD,OAAO,OAAO,CAAC,GAAG,CAChB,WAAW,CAAC,GAAG,CAAC,KAAK,EAAE,WAAW,EAAE,EAAE;gBACpC,OAAO,MAAM,WAAW,CAAC,WAAW,EAAE,CAAC;YACzC,CAAC,CAAC,CACH,CAAC;QACJ,CAAC,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,wBAAwB,CAAC,SAAiB;QAC9C,MAAM,WAAI,CAAC,IAAI,CAAC,aAAa,SAAS,uBAAuB,EAAE,KAAK,IAAI,EAAE;YACxE,MAAM,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,KAAK,EAAE,CAAC;QACzD,CAAC,CAAC,CAAC;IACL,CAAC;CACF;AAxCD,kCAwCC"}
@@ -0,0 +1,9 @@
1
+ import { Locator, Page } from '@playwright/test';
2
+ export declare class OptionsMenu {
3
+ page: Page;
4
+ menuTooltip: Locator;
5
+ menuSettingButton: Locator;
6
+ menuAccountDetailsButton: Locator;
7
+ constructor(page: Page);
8
+ }
9
+ //# sourceMappingURL=optionsMenu.element.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"optionsMenu.element.d.ts","sourceRoot":"","sources":["../../../../../src/metamask/pages/elements/optionsMenu.element.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAC;AAEjD,qBAAa,WAAW;IACtB,IAAI,EAAE,IAAI,CAAC;IACX,WAAW,EAAE,OAAO,CAAC;IACrB,iBAAiB,EAAE,OAAO,CAAC;IAC3B,wBAAwB,EAAE,OAAO,CAAC;gBAEtB,IAAI,EAAE,IAAI;CAQvB"}
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.OptionsMenu = void 0;
4
+ class OptionsMenu {
5
+ constructor(page) {
6
+ this.page = page;
7
+ this.menuTooltip = this.page.getByRole('tooltip');
8
+ this.menuSettingButton = this.menuTooltip.getByText('Settings');
9
+ this.menuAccountDetailsButton = this.menuTooltip.getByTestId('account-list-menu-details');
10
+ }
11
+ }
12
+ exports.OptionsMenu = OptionsMenu;
13
+ //# sourceMappingURL=optionsMenu.element.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"optionsMenu.element.js","sourceRoot":"","sources":["../../../../../src/metamask/pages/elements/optionsMenu.element.ts"],"names":[],"mappings":";;;AAEA,MAAa,WAAW;IAMtB,YAAY,IAAU;QACpB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;QAClD,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;QAChE,IAAI,CAAC,wBAAwB,GAAG,IAAI,CAAC,WAAW,CAAC,WAAW,CAC1D,2BAA2B,CAC5B,CAAC;IACJ,CAAC;CACF;AAdD,kCAcC"}
@@ -0,0 +1,15 @@
1
+ import { Locator, Page } from '@playwright/test';
2
+ export declare class PopoverElements {
3
+ page: Page;
4
+ popoverCloseButton: Locator;
5
+ manageInSettingButton: Locator;
6
+ notRightNowButton: Locator;
7
+ gotItButton: Locator;
8
+ noThanksButton: Locator;
9
+ switchToButton: Locator;
10
+ accountDetailCopyAddressButton: Locator;
11
+ constructor(page: Page);
12
+ closePopover(): Promise<void>;
13
+ isPopoverVisible(): Promise<boolean>;
14
+ }
15
+ //# sourceMappingURL=popover.element.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"popover.element.d.ts","sourceRoot":"","sources":["../../../../../src/metamask/pages/elements/popover.element.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,IAAI,EAAQ,MAAM,kBAAkB,CAAC;AAEvD,qBAAa,eAAe;IAC1B,IAAI,EAAE,IAAI,CAAC;IACX,kBAAkB,EAAE,OAAO,CAAC;IAC5B,qBAAqB,EAAE,OAAO,CAAC;IAC/B,iBAAiB,EAAE,OAAO,CAAC;IAC3B,WAAW,EAAE,OAAO,CAAC;IACrB,cAAc,EAAE,OAAO,CAAC;IACxB,cAAc,EAAE,OAAO,CAAC;IACxB,8BAA8B,EAAE,OAAO,CAAC;gBAE5B,IAAI,EAAE,IAAI;IAehB,YAAY;IAoBZ,gBAAgB;CAWvB"}
@@ -0,0 +1,46 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.PopoverElements = void 0;
4
+ const test_1 = require("@playwright/test");
5
+ class PopoverElements {
6
+ constructor(page) {
7
+ this.page = page;
8
+ this.popoverCloseButton = this.page.getByTestId('popover-close');
9
+ this.manageInSettingButton = this.page.locator('button:has-text("Manage in settings")');
10
+ this.notRightNowButton = this.page.getByText('Not right now');
11
+ this.noThanksButton = this.page.getByText('No thanks');
12
+ this.gotItButton = this.page.getByText('Got it');
13
+ this.switchToButton = this.page.getByText('Switch to ');
14
+ this.accountDetailCopyAddressButton = this.page.getByTestId('address-copy-button-text');
15
+ }
16
+ async closePopover() {
17
+ await test_1.test.step('Close popover if it exists', async () => {
18
+ if (!this.page)
19
+ throw "Page isn't ready";
20
+ if (await this.isPopoverVisible())
21
+ await this.popoverCloseButton.click();
22
+ if (await this.manageInSettingButton.isVisible())
23
+ await this.manageInSettingButton.click();
24
+ if (await this.notRightNowButton.isVisible())
25
+ await this.notRightNowButton.click();
26
+ if (await this.gotItButton.first().isVisible())
27
+ await this.gotItButton.first().click();
28
+ if (await this.noThanksButton.isVisible())
29
+ await this.noThanksButton.click();
30
+ });
31
+ }
32
+ async isPopoverVisible() {
33
+ try {
34
+ await this.popoverCloseButton.waitFor({
35
+ state: 'visible',
36
+ timeout: 1000,
37
+ });
38
+ return true;
39
+ }
40
+ catch (error) {
41
+ return false;
42
+ }
43
+ }
44
+ }
45
+ exports.PopoverElements = PopoverElements;
46
+ //# sourceMappingURL=popover.element.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"popover.element.js","sourceRoot":"","sources":["../../../../../src/metamask/pages/elements/popover.element.ts"],"names":[],"mappings":";;;AAAA,2CAAuD;AAEvD,MAAa,eAAe;IAU1B,YAAY,IAAU;QACpB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,eAAe,CAAC,CAAC;QACjE,IAAI,CAAC,qBAAqB,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAC5C,uCAAuC,CACxC,CAAC;QACF,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,eAAe,CAAC,CAAC;QAC9D,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;QACvD,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;QACjD,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC;QACxD,IAAI,CAAC,8BAA8B,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,CACzD,0BAA0B,CAC3B,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,YAAY;QAChB,MAAM,WAAI,CAAC,IAAI,CAAC,4BAA4B,EAAE,KAAK,IAAI,EAAE;YACvD,IAAI,CAAC,IAAI,CAAC,IAAI;gBAAE,MAAM,kBAAkB,CAAC;YAEzC,IAAI,MAAM,IAAI,CAAC,gBAAgB,EAAE;gBAAE,MAAM,IAAI,CAAC,kBAAkB,CAAC,KAAK,EAAE,CAAC;YAEzE,IAAI,MAAM,IAAI,CAAC,qBAAqB,CAAC,SAAS,EAAE;gBAC9C,MAAM,IAAI,CAAC,qBAAqB,CAAC,KAAK,EAAE,CAAC;YAE3C,IAAI,MAAM,IAAI,CAAC,iBAAiB,CAAC,SAAS,EAAE;gBAC1C,MAAM,IAAI,CAAC,iBAAiB,CAAC,KAAK,EAAE,CAAC;YAEvC,IAAI,MAAM,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE,CAAC,SAAS,EAAE;gBAC5C,MAAM,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE,CAAC,KAAK,EAAE,CAAC;YAEzC,IAAI,MAAM,IAAI,CAAC,cAAc,CAAC,SAAS,EAAE;gBACvC,MAAM,IAAI,CAAC,cAAc,CAAC,KAAK,EAAE,CAAC;QACtC,CAAC,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,gBAAgB;QACpB,IAAI;YACF,MAAM,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAAC;gBACpC,KAAK,EAAE,SAAS;gBAChB,OAAO,EAAE,IAAI;aACd,CAAC,CAAC;YACH,OAAO,IAAI,CAAC;SACb;QAAC,OAAO,KAAK,EAAE;YACd,OAAO,KAAK,CAAC;SACd;IACH,CAAC;CACF;AAxDD,0CAwDC"}
@@ -0,0 +1,22 @@
1
+ import { Locator, Page } from '@playwright/test';
2
+ import { WalletConfig } from '../../wallets.constants';
3
+ export declare class HomePage {
4
+ private extensionUrl;
5
+ config: WalletConfig;
6
+ page: Page;
7
+ activityTabButton: Locator;
8
+ nftTabButton: Locator;
9
+ tokensTabButton: Locator;
10
+ activityList: Locator;
11
+ transactionExplorerButton: Locator;
12
+ tokensListItemValues: Locator;
13
+ importTokenButton: Locator;
14
+ constructor(page: Page, extensionUrl: string, config: WalletConfig);
15
+ openWidgetPage(): Promise<void>;
16
+ openActivityTab(): Promise<void>;
17
+ openNftTab(): Promise<void>;
18
+ openTokensTab(): Promise<void>;
19
+ openTxInfo(txIndex: number): Promise<void>;
20
+ openTransactionEthplorerPage(): Promise<Page>;
21
+ }
22
+ //# sourceMappingURL=home.page.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"home.page.d.ts","sourceRoot":"","sources":["../../../../src/metamask/pages/home.page.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,IAAI,EAAQ,MAAM,kBAAkB,CAAC;AACvD,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAEvD,qBAAa,QAAQ;IAYjB,OAAO,CAAC,YAAY;IACb,MAAM,EAAE,YAAY;IAZ7B,IAAI,EAAE,IAAI,CAAC;IACX,iBAAiB,EAAE,OAAO,CAAC;IAC3B,YAAY,EAAE,OAAO,CAAC;IACtB,eAAe,EAAE,OAAO,CAAC;IACzB,YAAY,EAAE,OAAO,CAAC;IACtB,yBAAyB,EAAE,OAAO,CAAC;IACnC,oBAAoB,EAAE,OAAO,CAAC;IAC9B,iBAAiB,EAAE,OAAO,CAAC;gBAGzB,IAAI,EAAE,IAAI,EACF,YAAY,EAAE,MAAM,EACrB,MAAM,EAAE,YAAY;IA8BvB,cAAc;IAMd,eAAe;IAMf,UAAU;IAMV,aAAa;IAMb,UAAU,CAAC,OAAO,EAAE,MAAM;IAM1B,4BAA4B;CASnC"}
@@ -0,0 +1,62 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.HomePage = void 0;
4
+ const test_1 = require("@playwright/test");
5
+ class HomePage {
6
+ constructor(page, extensionUrl, config) {
7
+ this.extensionUrl = extensionUrl;
8
+ this.config = config;
9
+ this.page = page;
10
+ // Activity tab locators
11
+ this.activityTabButton = this.page
12
+ .getByTestId('account-overview__activity-tab')
13
+ .getByRole('button');
14
+ this.activityList = this.page.getByTestId('activity-list-item');
15
+ // Explorer button of the opened tx
16
+ this.transactionExplorerButton = this.page.getByText('View on block explorer');
17
+ // NFT tab locators
18
+ this.nftTabButton = this.page
19
+ .getByTestId('account-overview__nfts-tab')
20
+ .getByRole('button');
21
+ // Tokens tab locators
22
+ this.tokensTabButton = this.page
23
+ .getByTestId('account-overview__asset-tab')
24
+ .getByRole('button');
25
+ this.tokensListItemValues = this.page.getByTestId('multichain-token-list-item-value');
26
+ this.importTokenButton = this.page.getByText('import tokens');
27
+ }
28
+ async openWidgetPage() {
29
+ await this.page.goto(this.extensionUrl + this.config.COMMON.EXTENSION_START_PATH);
30
+ }
31
+ async openActivityTab() {
32
+ await test_1.test.step('Open wallet Activity tab', async () => {
33
+ await this.activityTabButton.click();
34
+ });
35
+ }
36
+ async openNftTab() {
37
+ await test_1.test.step('Open wallet NFT tab', async () => {
38
+ await this.nftTabButton.click();
39
+ });
40
+ }
41
+ async openTokensTab() {
42
+ await test_1.test.step('Open wallet Tokens tab', async () => {
43
+ await this.tokensTabButton.click();
44
+ });
45
+ }
46
+ async openTxInfo(txIndex) {
47
+ await test_1.test.step('Open transaction info modal', async () => {
48
+ await this.activityList.nth(txIndex).click();
49
+ });
50
+ }
51
+ async openTransactionEthplorerPage() {
52
+ return await test_1.test.step('Open transaction ethplorer page', async () => {
53
+ const [etherscanPage] = await Promise.all([
54
+ this.page.context().waitForEvent('page', { timeout: 10000 }),
55
+ this.transactionExplorerButton.click(),
56
+ ]);
57
+ return etherscanPage;
58
+ });
59
+ }
60
+ }
61
+ exports.HomePage = HomePage;
62
+ //# sourceMappingURL=home.page.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"home.page.js","sourceRoot":"","sources":["../../../../src/metamask/pages/home.page.ts"],"names":[],"mappings":";;;AAAA,2CAAuD;AAGvD,MAAa,QAAQ;IAUnB,YACE,IAAU,EACF,YAAoB,EACrB,MAAoB;QADnB,iBAAY,GAAZ,YAAY,CAAQ;QACrB,WAAM,GAAN,MAAM,CAAc;QAE3B,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QAEjB,wBAAwB;QACxB,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,IAAI;aAC/B,WAAW,CAAC,gCAAgC,CAAC;aAC7C,SAAS,CAAC,QAAQ,CAAC,CAAC;QACvB,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,oBAAoB,CAAC,CAAC;QAEhE,mCAAmC;QACnC,IAAI,CAAC,yBAAyB,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,CAClD,wBAAwB,CACzB,CAAC;QAEF,mBAAmB;QACnB,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,IAAI;aAC1B,WAAW,CAAC,4BAA4B,CAAC;aACzC,SAAS,CAAC,QAAQ,CAAC,CAAC;QAEvB,sBAAsB;QACtB,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,IAAI;aAC7B,WAAW,CAAC,6BAA6B,CAAC;aAC1C,SAAS,CAAC,QAAQ,CAAC,CAAC;QACvB,IAAI,CAAC,oBAAoB,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,CAC/C,kCAAkC,CACnC,CAAC;QACF,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,eAAe,CAAC,CAAC;IAChE,CAAC;IAED,KAAK,CAAC,cAAc;QAClB,MAAM,IAAI,CAAC,IAAI,CAAC,IAAI,CAClB,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,oBAAoB,CAC5D,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,eAAe;QACnB,MAAM,WAAI,CAAC,IAAI,CAAC,0BAA0B,EAAE,KAAK,IAAI,EAAE;YACrD,MAAM,IAAI,CAAC,iBAAiB,CAAC,KAAK,EAAE,CAAC;QACvC,CAAC,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,UAAU;QACd,MAAM,WAAI,CAAC,IAAI,CAAC,qBAAqB,EAAE,KAAK,IAAI,EAAE;YAChD,MAAM,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,CAAC;QAClC,CAAC,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,aAAa;QACjB,MAAM,WAAI,CAAC,IAAI,CAAC,wBAAwB,EAAE,KAAK,IAAI,EAAE;YACnD,MAAM,IAAI,CAAC,eAAe,CAAC,KAAK,EAAE,CAAC;QACrC,CAAC,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,OAAe;QAC9B,MAAM,WAAI,CAAC,IAAI,CAAC,6BAA6B,EAAE,KAAK,IAAI,EAAE;YACxD,MAAM,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,CAAC;QAC/C,CAAC,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,4BAA4B;QAChC,OAAO,MAAM,WAAI,CAAC,IAAI,CAAC,iCAAiC,EAAE,KAAK,IAAI,EAAE;YACnE,MAAM,CAAC,aAAa,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;gBACxC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,YAAY,CAAC,MAAM,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;gBAC5D,IAAI,CAAC,yBAAyB,CAAC,KAAK,EAAE;aACvC,CAAC,CAAC;YACH,OAAO,aAAa,CAAC;QACvB,CAAC,CAAC,CAAC;IACL,CAAC;CACF;AAlFD,4BAkFC"}
@@ -0,0 +1,4 @@
1
+ export * from './home.page';
2
+ export * from './settings.page';
3
+ export * from './login.page';
4
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/metamask/pages/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAC;AAC5B,cAAc,iBAAiB,CAAC;AAChC,cAAc,cAAc,CAAC"}
@@ -0,0 +1,20 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./home.page"), exports);
18
+ __exportStar(require("./settings.page"), exports);
19
+ __exportStar(require("./login.page"), exports);
20
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/metamask/pages/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,8CAA4B;AAC5B,kDAAgC;AAChC,+CAA6B"}
@@ -0,0 +1,11 @@
1
+ import { Locator, Page } from '@playwright/test';
2
+ import { WalletConfig } from '../../wallets.constants';
3
+ export declare class LoginPage {
4
+ config: WalletConfig;
5
+ page: Page;
6
+ passwordInput: Locator;
7
+ unlockButton: Locator;
8
+ constructor(page: Page, config: WalletConfig);
9
+ unlock(): Promise<void>;
10
+ }
11
+ //# sourceMappingURL=login.page.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"login.page.d.ts","sourceRoot":"","sources":["../../../../src/metamask/pages/login.page.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,IAAI,EAAQ,MAAM,kBAAkB,CAAC;AACvD,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAEvD,qBAAa,SAAS;IAKW,MAAM,EAAE,YAAY;IAJnD,IAAI,EAAE,IAAI,CAAC;IACX,aAAa,EAAE,OAAO,CAAC;IACvB,YAAY,EAAE,OAAO,CAAC;gBAEV,IAAI,EAAE,IAAI,EAAS,MAAM,EAAE,YAAY;IAM7C,MAAM;CASb"}
@@ -0,0 +1,23 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.LoginPage = void 0;
4
+ const test_1 = require("@playwright/test");
5
+ class LoginPage {
6
+ constructor(page, config) {
7
+ this.config = config;
8
+ this.page = page;
9
+ this.passwordInput = this.page.locator('id=password');
10
+ this.unlockButton = this.page.getByText('Unlock');
11
+ }
12
+ async unlock() {
13
+ await test_1.test.step('Unlock wallet', async () => {
14
+ if (await this.passwordInput.isVisible()) {
15
+ await this.passwordInput.fill(this.config.PASSWORD);
16
+ await this.unlockButton.click();
17
+ await this.page.waitForURL('**/home.html#');
18
+ }
19
+ });
20
+ }
21
+ }
22
+ exports.LoginPage = LoginPage;
23
+ //# sourceMappingURL=login.page.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"login.page.js","sourceRoot":"","sources":["../../../../src/metamask/pages/login.page.ts"],"names":[],"mappings":";;;AAAA,2CAAuD;AAGvD,MAAa,SAAS;IAKpB,YAAY,IAAU,EAAS,MAAoB;QAApB,WAAM,GAAN,MAAM,CAAc;QACjD,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;QACtD,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;IACpD,CAAC;IAED,KAAK,CAAC,MAAM;QACV,MAAM,WAAI,CAAC,IAAI,CAAC,eAAe,EAAE,KAAK,IAAI,EAAE;YAC1C,IAAI,MAAM,IAAI,CAAC,aAAa,CAAC,SAAS,EAAE,EAAE;gBACxC,MAAM,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;gBACpD,MAAM,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,CAAC;gBAChC,MAAM,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,eAAe,CAAC,CAAC;aAC7C;QACH,CAAC,CAAC,CAAC;IACL,CAAC;CACF;AApBD,8BAoBC"}
@@ -0,0 +1,24 @@
1
+ import { Locator, Page } from '@playwright/test';
2
+ import { WalletConfig } from '../../wallets.constants';
3
+ export declare class OnboardingPage {
4
+ config: WalletConfig;
5
+ page: Page;
6
+ termsCheckboxButton: Locator;
7
+ importWalletButton: Locator;
8
+ metricAgreeButton: Locator;
9
+ secretPhraseInputs: Locator;
10
+ secretPhraseImportButton: Locator;
11
+ createPasswordInput: Locator;
12
+ confirmPasswordInput: Locator;
13
+ createPasswordTerms: Locator;
14
+ createPasswordImport: Locator;
15
+ completeButton: Locator;
16
+ pinExtensionNextButton: Locator;
17
+ pinExtensionDoneButton: Locator;
18
+ constructor(page: Page, config: WalletConfig);
19
+ firstTimeSetup(): Promise<void>;
20
+ confirmTermsOfOnboarding(): Promise<void>;
21
+ fillSecretPhrase(secretPhrase: string): Promise<void>;
22
+ createPassword(password: string): Promise<void>;
23
+ }
24
+ //# sourceMappingURL=onboarding.page.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"onboarding.page.d.ts","sourceRoot":"","sources":["../../../../src/metamask/pages/onboarding.page.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,IAAI,EAAQ,MAAM,kBAAkB,CAAC;AACvD,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAEvD,qBAAa,cAAc;IAeM,MAAM,EAAE,YAAY;IAdnD,IAAI,EAAE,IAAI,CAAC;IACX,mBAAmB,EAAE,OAAO,CAAC;IAC7B,kBAAkB,EAAE,OAAO,CAAC;IAC5B,iBAAiB,EAAE,OAAO,CAAC;IAC3B,kBAAkB,EAAE,OAAO,CAAC;IAC5B,wBAAwB,EAAE,OAAO,CAAC;IAClC,mBAAmB,EAAE,OAAO,CAAC;IAC7B,oBAAoB,EAAE,OAAO,CAAC;IAC9B,mBAAmB,EAAE,OAAO,CAAC;IAC7B,oBAAoB,EAAE,OAAO,CAAC;IAC9B,cAAc,EAAE,OAAO,CAAC;IACxB,sBAAsB,EAAE,OAAO,CAAC;IAChC,sBAAsB,EAAE,OAAO,CAAC;gBAEpB,IAAI,EAAE,IAAI,EAAS,MAAM,EAAE,YAAY;IAsB7C,cAAc;IAed,wBAAwB;IAWxB,gBAAgB,CAAC,YAAY,EAAE,MAAM;IASrC,cAAc,CAAC,QAAQ,EAAE,MAAM;CAQtC"}
@@ -0,0 +1,62 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.OnboardingPage = void 0;
4
+ const test_1 = require("@playwright/test");
5
+ class OnboardingPage {
6
+ constructor(page, config) {
7
+ this.config = config;
8
+ this.page = page;
9
+ this.termsCheckboxButton = this.page.getByTestId('onboarding-terms-checkbox');
10
+ this.importWalletButton = this.page.getByTestId('onboarding-import-wallet');
11
+ this.metricAgreeButton = this.page.getByTestId('metametrics-i-agree');
12
+ this.secretPhraseInputs = this.page.locator('.import-srp__srp-word >> input[type=password]');
13
+ this.secretPhraseImportButton = this.page.getByTestId('import-srp-confirm');
14
+ this.createPasswordInput = this.page.getByTestId('create-password-new');
15
+ this.confirmPasswordInput = this.page.getByTestId('create-password-confirm');
16
+ this.createPasswordTerms = this.page.getByTestId('create-password-terms');
17
+ this.createPasswordImport = this.page.getByTestId('create-password-import');
18
+ this.completeButton = this.page.getByTestId('onboarding-complete-done');
19
+ this.pinExtensionNextButton = this.page.getByTestId('pin-extension-next');
20
+ this.pinExtensionDoneButton = this.page.getByTestId('pin-extension-done');
21
+ }
22
+ async firstTimeSetup() {
23
+ await test_1.test.step('First time wallet setup', async () => {
24
+ await this.confirmTermsOfOnboarding();
25
+ await this.importWalletButton.click();
26
+ await this.metricAgreeButton.click();
27
+ await this.fillSecretPhrase(this.config.SECRET_PHRASE);
28
+ await this.secretPhraseImportButton.click();
29
+ await this.createPassword(this.config.PASSWORD);
30
+ await this.completeButton.click();
31
+ await this.pinExtensionNextButton.click();
32
+ await this.pinExtensionDoneButton.click();
33
+ await this.page.waitForURL('**/home.html#');
34
+ });
35
+ }
36
+ async confirmTermsOfOnboarding() {
37
+ await test_1.test.step('Confirm terms before onboarding', async () => {
38
+ while (!(await this.page.locator('.check-box__checked').isVisible())) {
39
+ console.error(`confirmTermsOfOnboarding function: Checkbox is not checked (checkbox enable state = ${await this.termsCheckboxButton.isEnabled()})`);
40
+ await this.termsCheckboxButton.click();
41
+ }
42
+ });
43
+ }
44
+ async fillSecretPhrase(secretPhrase) {
45
+ await test_1.test.step('Fill onboarding secret phrase field', async () => {
46
+ const seedWords = secretPhrase.split(' ');
47
+ for (let i = 0; i < seedWords.length; i++) {
48
+ await this.secretPhraseInputs.nth(i).fill(seedWords[i]);
49
+ }
50
+ });
51
+ }
52
+ async createPassword(password) {
53
+ await test_1.test.step('Fill onboarding password fields', async () => {
54
+ await this.createPasswordInput.fill(password);
55
+ await this.confirmPasswordInput.fill(password);
56
+ await this.createPasswordTerms.click();
57
+ await this.createPasswordImport.click();
58
+ });
59
+ }
60
+ }
61
+ exports.OnboardingPage = OnboardingPage;
62
+ //# sourceMappingURL=onboarding.page.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"onboarding.page.js","sourceRoot":"","sources":["../../../../src/metamask/pages/onboarding.page.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,25 @@
1
+ import { Locator, Page } from '@playwright/test';
2
+ import { WalletConfig } from '../../wallets.constants';
3
+ export declare class SettingsPage {
4
+ private extensionUrl;
5
+ config: WalletConfig;
6
+ page: Page;
7
+ tabBarMenu: Locator;
8
+ networksTabButton: Locator;
9
+ experimentalTabButton: Locator;
10
+ addNetworkButton: Locator;
11
+ addNetworkManuallyButton: Locator;
12
+ networkNameInput: Locator;
13
+ networkRpcUrlInput: Locator;
14
+ networkChainIdInput: Locator;
15
+ networkTickerInput: Locator;
16
+ networkExplorerUrlInput: Locator;
17
+ saveNewTokenButton: Locator;
18
+ selectNetworksForEachSiteToggleState: Locator;
19
+ selectNetworksForEachSiteToggle: Locator;
20
+ constructor(page: Page, extensionUrl: string, config: WalletConfig);
21
+ openSettings(): Promise<void>;
22
+ setupNetworkChangingSetting(): Promise<void>;
23
+ addNetworkManually(networkName: string, networkUrl: string, chainId: number, tokenSymbol: string, blockExplorer?: string): Promise<void>;
24
+ }
25
+ //# sourceMappingURL=settings.page.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"settings.page.d.ts","sourceRoot":"","sources":["../../../../src/metamask/pages/settings.page.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,IAAI,EAAQ,MAAM,kBAAkB,CAAC;AACvD,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAEvD,qBAAa,YAAY;IAkBrB,OAAO,CAAC,YAAY;IACb,MAAM,EAAE,YAAY;IAlB7B,IAAI,EAAE,IAAI,CAAC;IACX,UAAU,EAAE,OAAO,CAAC;IACpB,iBAAiB,EAAE,OAAO,CAAC;IAC3B,qBAAqB,EAAE,OAAO,CAAC;IAC/B,gBAAgB,EAAE,OAAO,CAAC;IAC1B,wBAAwB,EAAE,OAAO,CAAC;IAClC,gBAAgB,EAAE,OAAO,CAAC;IAC1B,kBAAkB,EAAE,OAAO,CAAC;IAC5B,mBAAmB,EAAE,OAAO,CAAC;IAC7B,kBAAkB,EAAE,OAAO,CAAC;IAC5B,uBAAuB,EAAE,OAAO,CAAC;IACjC,kBAAkB,EAAE,OAAO,CAAC;IAC5B,oCAAoC,EAAE,OAAO,CAAC;IAC9C,+BAA+B,EAAE,OAAO,CAAC;gBAGvC,IAAI,EAAE,IAAI,EACF,YAAY,EAAE,MAAM,EACrB,MAAM,EAAE,YAAY;IAwCvB,YAAY;IAUZ,2BAA2B;IAQ3B,kBAAkB,CACtB,WAAW,EAAE,MAAM,EACnB,UAAU,EAAE,MAAM,EAClB,OAAO,EAAE,MAAM,EACf,WAAW,EAAE,MAAM,EACnB,aAAa,SAAK;CAkBrB"}