waygraph 0.12.25 → 0.12.26

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.
@@ -45,23 +45,30 @@ export const SubmitLoginActionBlock = defineMethodBlock<LoginPage, LoginSubmitOu
45
45
  out.__state === "LoggedIn"
46
46
  ? [Trait.url({ pathname: "/inventory.html" })]
47
47
  : [Trait.visible('[data-test="error"]')],
48
- // Open lifecycle: set fixtures + rings inside the fn (not a closed slot object).
48
+ // Open lifecycle: todos + zoom; stubAfter rings a lower inventory item
49
+ // so smooth auto-scroll is visible after login.
49
50
  stubBefore: (ctx) => {
50
51
  ctx.todos(["Enter username", "Enter password", "Click Login"]);
51
52
  ctx.todoIndex(0);
53
+ ctx.zoom(1.25);
52
54
  ctx.highlights({
53
- username: { selector: "#user-name", label: "Username" },
54
- password: { selector: "#password", label: "Password" },
55
- submit: { selector: "#login-button", label: "Login" },
55
+ username: { selector: "#user-name", label: "Username", zoom: 1.3 },
56
+ password: { selector: "#password", label: "Password", zoom: 1.3 },
57
+ submit: { selector: "#login-button", label: "Login", zoom: 1.45 },
56
58
  });
57
59
  },
58
60
  stubAfter: (ctx) => {
59
- // Sequential plan: bump index after a successful submit beat.
60
61
  ctx.todos(["Enter username", "Enter password", "Click Login"]);
61
62
  ctx.todoIndex(2);
63
+ // Inventory is tall - fleece sits lower; demo smooth-scrolls + zooms it.
64
+ ctx.ring("fleece", {
65
+ selector: '[data-test="add-to-cart-sauce-labs-fleece-jacket"]',
66
+ label: "Fleece jacket",
67
+ detail: "Smooth scroll + zoom",
68
+ zoom: 1.4,
69
+ duration: true,
70
+ });
62
71
  },
63
- // Fail-path rings (demo step throw only) - locked-out / wrong-password
64
- // bug-repro narration; success never shows these.
65
72
  stubOnError: (ctx) => {
66
73
  ctx.ring("error", {
67
74
  selector: '[data-test="error"]',
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "waygraph",
3
- "version": "0.12.25",
3
+ "version": "0.12.26",
4
4
  "type": "module",
5
5
  "description": "A typed graph of reusable Blocks for driving a browser through E2E flows.",
6
6
  "license": "MIT",
@@ -48,15 +48,23 @@ export const SubmitLoginActionBlock = defineMethodBlock<LoginPage, LoginSubmitOu
48
48
  stubBefore: (ctx) => {
49
49
  ctx.todos(["Enter username", "Enter password", "Click Login"]);
50
50
  ctx.todoIndex(0);
51
+ ctx.zoom(1.25);
51
52
  ctx.highlights({
52
- username: { selector: "#user-name", label: "Username" },
53
- password: { selector: "#password", label: "Password" },
54
- submit: { selector: "#login-button", label: "Login" },
53
+ username: { selector: "#user-name", label: "Username", zoom: 1.3 },
54
+ password: { selector: "#password", label: "Password", zoom: 1.3 },
55
+ submit: { selector: "#login-button", label: "Login", zoom: 1.45 },
55
56
  });
56
57
  },
57
58
  stubAfter: (ctx) => {
58
59
  ctx.todos(["Enter username", "Enter password", "Click Login"]);
59
60
  ctx.todoIndex(2);
61
+ ctx.ring("fleece", {
62
+ selector: '[data-test="add-to-cart-sauce-labs-fleece-jacket"]',
63
+ label: "Fleece jacket",
64
+ detail: "Smooth scroll + zoom",
65
+ zoom: 1.4,
66
+ duration: true,
67
+ });
60
68
  },
61
69
  stubOnError: (ctx) => {
62
70
  ctx.ring("error", {