@zappie/verify 0.3.1 → 0.3.3

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.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,23 @@
1
1
  # @zappie/verify
2
2
 
3
+ ## 0.3.3
4
+
5
+ ### Patch Changes
6
+
7
+ - 86706e6: The `hydration-delay` test fault holds every script until 3200 ms after the page's request, instead of 3500 ms after each script's request. Pages under the fault are still never tappable before the 3000 ms default, and a slow machine no longer pushes them past the 5000 ms ceiling. Real runs are unchanged.
8
+ - Updated dependencies [a151b0b]
9
+ - Updated dependencies [195a5b8]
10
+ - @zappie/sdk@0.1.17
11
+
12
+ ## 0.3.2
13
+
14
+ ### Patch Changes
15
+
16
+ - b0b2a59: Let a site raise V15's first-card tappable limit to 5000 ms with an explained site budget, and record the applied limit in the verify report. A site that adds `budgets.tappableMs` must upgrade `@zappie/check` and `@zappie/sdk` in the same change.
17
+ - 4f1ef9e: Make V03 count an item marker only when shoppers can see its item name and expected price.
18
+ - Updated dependencies [b0b2a59]
19
+ - @zappie/sdk@0.1.15
20
+
3
21
  ## 0.3.1
4
22
 
5
23
  ### Patch Changes
package/README.md CHANGED
@@ -81,10 +81,12 @@ const report = await verifyProject({
81
81
  console.log(printSummary(report));
82
82
  ```
83
83
 
84
- `verifyProject` also takes `build: false`, `port`, `only`, `startPath`, `cataloguePath`, `runner`, `artifactsDir` and `browserExecutablePath`, the options behind the flags above. It reads `startPath` and `cataloguePath` from `zappie.config.ts` when you don't pass them. To verify a site you serve yourself, call `verify({ url, key, store, suite })` instead, with `startPath` and `cataloguePath` when the site sets them.
84
+ `verifyProject` also takes `build: false`, `port`, `only`, `startPath`, `cataloguePath`, `tappableMs`, `runner`, `artifactsDir` and `browserExecutablePath`, the options behind the flags above. It reads `startPath`, `cataloguePath` and `budgets.tappableMs` from `zappie.config.ts` when you don't pass them. To verify a site you serve yourself, call `verify({ url, key, store, suite })` instead, with the same route and tappable settings when the site sets them.
85
85
 
86
86
  The report's shape is the JSON Schema at `@zappie/verify/schema/verify-report.v1.json`.
87
87
 
88
+ V15 uses a 3000 ms limit for the first product card to become tappable. A site can raise it to at most 5000 ms with `budgets.tappableMs` and must explain the exception in `budgets.override.reason`. A lower value keeps the 3000 ms default. The report records the applied limit as `metrics.productCardTappableLimitMs`.
89
+
88
90
  ## Markers
89
91
 
90
92
  The checks find shopping controls by their `data-zappie-*` markers, the ones the `zappie/verify-markers` lint rule and the template standards ask for, not by their labels, so your copy is yours to write. Where no marker names a control, a check uses its role. Text is read in three places only: V03 counts an item by its name when its card has no marker, V10 picks the address it typed from the suggestions, and V13 closes an item by a button whose name contains "Close".
@@ -93,7 +95,7 @@ They accept either way of building a journey where templates differ:
93
95
 
94
96
  - **Opening an item.** When the element marked `data-zappie-item` is a link or button, as on a card that is the link, the checks tap it. Otherwise they tap the first link inside the marked card, then the first link beside it.
95
97
  - **The cart control.** `data-zappie-cart-trigger`, or on a template that marks only its overlays, the visible `data-zappie-overlay-trigger="bag"` control.
96
- - **Item prices (V03).** A card shows the item's price in `format.money`. When `showsFromPrice` from `@zappie/sdk/pricing` is true, it can show the item's `startingPrice` instead, with or without "From".
98
+ - **Item coverage and prices (V03).** A `data-zappie-item` marker counts when it is rendered, is not hidden by HTML, CSS or `aria-hidden`, has a non-zero box, and contains the item's name and price. Items in a scrollable page or container count when shoppers can reveal them by scrolling. A card shows the item's price in `format.money`. When `showsFromPrice` from `@zappie/sdk/pricing` is true, it can show the item's `startingPrice` instead, with or without "From".
97
99
  - **Required groups (V05).** A required option group is marked `data-zappie-option-group` and `data-zappie-required="true"`, as `OptionGroup` from `@zappie/foundations` marks single and multi-select groups. `aria-required="true"` on a single-select group also counts.
98
100
  - **Required options (V05).** Add can be disabled until every required choice is made. Or it can stay enabled: a tap then adds nothing, keeps the item open and marks the group with `aria-invalid` or `data-invalid` and a visible message, in the group, in its `aria-describedby` or `aria-errormessage` target, or in a `role="alert"` in the dialog.
99
101
  - **The quoted total (V06).** `data-zappie-total` in the bag, or, when the bag hands over to a checkout page through `data-zappie-cart-checkout` or a link to `/checkout`, on that page.
package/dist/index.d.ts CHANGED
@@ -85,6 +85,8 @@ type VerifyReport = {
85
85
  lcpMs?: number;
86
86
  cls?: number;
87
87
  productCardTappableMs?: number;
88
+ /** The site-specific limit V15 used for productCardTappableMs. */
89
+ productCardTappableLimitMs?: number;
88
90
  productCardOpenMs?: number;
89
91
  menuCssKbGz?: number;
90
92
  /** Tap to first paint of each marked overlay, by its `data-zappie-overlay` name: the median of its samples. */
@@ -121,6 +123,8 @@ type VerifyOptions = {
121
123
  * judges every item of the branch on the start page.
122
124
  */
123
125
  cataloguePath?: string;
126
+ /** V15's first-card tappable limit. Values below 3000 use the 3000 ms default. */
127
+ tappableMs?: number;
124
128
  /** Findings about the run to record in the report's `warnings`. */
125
129
  warnings?: {
126
130
  code: string;
package/dist/index.js CHANGED
@@ -280,6 +280,14 @@ function signal(child, value) {
280
280
  }
281
281
  }
282
282
 
283
+ // ../sdk/src/site-config/types.ts
284
+ var DEFAULT_BUDGETS = {
285
+ jsKbGz: 200,
286
+ cssKbGz: 50,
287
+ lcpMs: 2500,
288
+ tappableMs: 3e3
289
+ };
290
+
283
291
  // src/project-config.ts
284
292
  import { readFile as readFile2, stat as stat2 } from "fs/promises";
285
293
  import path2 from "path";
@@ -304,10 +312,15 @@ async function readProjectSettings(cwd, { required }) {
304
312
  }
305
313
  const config = record(value) ? value : {};
306
314
  const verify2 = record(config.verify) ? config.verify : {};
315
+ const budgets = record(config.budgets) ? config.budgets : {};
316
+ const override = record(budgets.override) ? budgets.override : {};
317
+ const tappableMs = budgets.tappableMs;
318
+ const explainedRaisedTappableBudget = typeof override.reason === "string" && override.reason.trim().length > 0;
307
319
  const settings = {
308
320
  ...typeof config.store === "string" ? { store: config.store } : {},
309
321
  ...verify2.startPath !== void 0 ? { startPath: verify2.startPath } : {},
310
- ...verify2.cataloguePath !== void 0 ? { cataloguePath: verify2.cataloguePath } : {}
322
+ ...verify2.cataloguePath !== void 0 ? { cataloguePath: verify2.cataloguePath } : {},
323
+ ...typeof tappableMs === "number" && (tappableMs <= DEFAULT_BUDGETS.tappableMs || explainedRaisedTappableBudget) ? { tappableMs } : {}
311
324
  };
312
325
  if (required && settings.store === void 0) {
313
326
  throw new VerifyError(
@@ -701,6 +714,7 @@ var v02 = {
701
714
 
702
715
  // src/fixtures.ts
703
716
  var preparedPages = /* @__PURE__ */ new WeakMap();
717
+ var HYDRATION_HOLD_MS = 3200;
704
718
  async function installFault(page, fault) {
705
719
  if (!fault) {
706
720
  return;
@@ -825,8 +839,17 @@ async function installFault(page, fault) {
825
839
  });
826
840
  }
827
841
  if (fault === "hydration-delay") {
842
+ let releaseAt = Date.now() + HYDRATION_HOLD_MS;
843
+ page.on("request", (request) => {
844
+ if (request.isNavigationRequest() && request.frame() === page.mainFrame()) {
845
+ releaseAt = Date.now() + HYDRATION_HOLD_MS;
846
+ }
847
+ });
828
848
  await page.route(/\.(?:js|mjs)(?:\?|$)/, async (route) => {
829
- await new Promise((resolve) => setTimeout(resolve, 3500));
849
+ const waitMs = releaseAt - Date.now();
850
+ if (waitMs > 0) {
851
+ await new Promise((resolve) => setTimeout(resolve, waitMs));
852
+ }
830
853
  await route.continue();
831
854
  });
832
855
  }
@@ -1298,14 +1321,237 @@ ${await response.text()}`
1298
1321
  }).observe(document, { childList: true, subtree: true });
1299
1322
  });
1300
1323
  }
1324
+ if (isMarkupFault(fault)) {
1325
+ await page.addInitScript(keepMarkupFault, fault);
1326
+ }
1301
1327
  }
1302
- async function applyPageFault(page, fault) {
1303
- if (fault === "quick-add-via-item") {
1304
- await page.locator('[data-zappie-item] [data-zappie-action="add-to-cart"]').evaluateAll((nodes) => {
1305
- for (const node of nodes) {
1306
- node.remove();
1328
+ var markupFaults = [
1329
+ "from-price",
1330
+ "quick-add-via-item",
1331
+ "missing-marker",
1332
+ "hidden-marker-attribute",
1333
+ "hidden-marker-display",
1334
+ "hidden-marker-visibility",
1335
+ "hidden-marker-aria",
1336
+ "zero-size-marker",
1337
+ "tiny-marker",
1338
+ "clipped-marker",
1339
+ "clip-path-marker",
1340
+ "negative-coordinate-marker",
1341
+ "popular-name-only-markers",
1342
+ "marker-without-name",
1343
+ "uppercase-marker-name",
1344
+ "scrollable-markers",
1345
+ "content-visibility-auto-markers",
1346
+ "nfkc-marker-name",
1347
+ "entity-marker-name",
1348
+ "entity-apos-marker-name",
1349
+ "entity-gt-marker-name",
1350
+ "entity-lt-marker-name",
1351
+ "entity-quot-marker-name",
1352
+ "soft-hyphen-marker-name",
1353
+ "zero-width-marker-name",
1354
+ "axe"
1355
+ ];
1356
+ function isMarkupFault(fault) {
1357
+ return markupFaults.includes(fault);
1358
+ }
1359
+ function keepMarkupFault(fault) {
1360
+ const outermost = "[data-zappie-item]:not([data-zappie-item] [data-zappie-item])";
1361
+ const markers = () => document.querySelectorAll("[data-zappie-item]");
1362
+ const setText = (node, text) => {
1363
+ if (node && node.textContent !== text) {
1364
+ node.textContent = text;
1365
+ }
1366
+ };
1367
+ const styles = {
1368
+ "hidden-marker-display": [["display", "none"]],
1369
+ "hidden-marker-visibility": [["visibility", "hidden"]],
1370
+ "zero-size-marker": [
1371
+ ["border", "0"],
1372
+ ["height", "0"],
1373
+ ["margin", "0"],
1374
+ ["min-height", "0"],
1375
+ ["min-width", "0"],
1376
+ ["overflow", "hidden"],
1377
+ ["padding", "0"],
1378
+ ["width", "0"]
1379
+ ],
1380
+ "tiny-marker": [
1381
+ ["border", "0"],
1382
+ ["height", "1px"],
1383
+ ["min-height", "0"],
1384
+ ["min-width", "0"],
1385
+ ["overflow", "hidden"],
1386
+ ["padding", "0"],
1387
+ ["width", "1px"]
1388
+ ],
1389
+ "clipped-marker": [
1390
+ ["clip", "rect(0 0 0 0)"],
1391
+ ["position", "absolute"]
1392
+ ],
1393
+ "clip-path-marker": [["clip-path", "inset(50%)"]],
1394
+ "negative-coordinate-marker": [
1395
+ ["left", "-10000px"],
1396
+ ["position", "absolute"],
1397
+ ["top", "-10000px"]
1398
+ ],
1399
+ "uppercase-marker-name": [["text-transform", "uppercase"]]
1400
+ };
1401
+ const names = {
1402
+ "nfkc-marker-name": "Jollof rice",
1403
+ "entity-marker-name": "Jollof & rice",
1404
+ "entity-apos-marker-name": "Jollof ' rice",
1405
+ "entity-gt-marker-name": "Jollof > rice",
1406
+ "entity-lt-marker-name": "Jollof < rice",
1407
+ "entity-quot-marker-name": 'Jollof " rice',
1408
+ "soft-hyphen-marker-name": "Jollof rice",
1409
+ "zero-width-marker-name": "Jollof rice"
1410
+ };
1411
+ const apply = () => {
1412
+ const style = styles[fault];
1413
+ if (style) {
1414
+ for (const node of markers()) {
1415
+ for (const [property, value] of style) {
1416
+ node.style.setProperty(property, value, "important");
1417
+ }
1307
1418
  }
1308
- });
1419
+ }
1420
+ const name = names[fault];
1421
+ if (name !== void 0) {
1422
+ for (const node of document.querySelectorAll(
1423
+ '[data-zappie-item="item_jollof"]'
1424
+ )) {
1425
+ setText(node.querySelector("h1, h2, h3"), name);
1426
+ }
1427
+ }
1428
+ if (fault === "from-price") {
1429
+ for (const node of document.querySelectorAll(
1430
+ '[data-zappie-item="item_jollof"] .z-kit-money'
1431
+ )) {
1432
+ setText(node, "From \u20A65,000");
1433
+ }
1434
+ }
1435
+ if (fault === "quick-add-via-item") {
1436
+ for (const node of document.querySelectorAll(
1437
+ '[data-zappie-item] [data-zappie-action="add-to-cart"]'
1438
+ )) {
1439
+ if (!node.closest('[data-zappie-overlay="item"], [role="dialog"]')) {
1440
+ node.remove();
1441
+ }
1442
+ }
1443
+ }
1444
+ if (fault === "missing-marker") {
1445
+ for (const node of markers()) {
1446
+ node.removeAttribute("data-zappie-item");
1447
+ }
1448
+ }
1449
+ if (fault === "hidden-marker-attribute") {
1450
+ for (const node of markers()) {
1451
+ if (!node.hasAttribute("hidden")) {
1452
+ node.setAttribute("hidden", "");
1453
+ }
1454
+ }
1455
+ }
1456
+ if (fault === "hidden-marker-aria") {
1457
+ for (const node of markers()) {
1458
+ if (node.getAttribute("aria-hidden") !== "true") {
1459
+ node.setAttribute("aria-hidden", "true");
1460
+ }
1461
+ }
1462
+ }
1463
+ if (fault === "marker-without-name") {
1464
+ for (const heading of document.querySelectorAll(
1465
+ "[data-zappie-item] h1, [data-zappie-item] h2, [data-zappie-item] h3"
1466
+ )) {
1467
+ heading.closest("[data-zappie-item]")?.before(heading);
1468
+ }
1469
+ }
1470
+ if (fault === "popular-name-only-markers") {
1471
+ const main = document.querySelector("main");
1472
+ const cards = [
1473
+ ...document.querySelectorAll("article[data-zappie-item]")
1474
+ ].map((card) => ({
1475
+ id: card.getAttribute("data-zappie-item") ?? "",
1476
+ href: card.querySelector('a[href*="/item/"]')?.href ?? "#",
1477
+ name: card.querySelector("h1, h2, h3")?.textContent ?? "Item"
1478
+ }));
1479
+ const key = JSON.stringify(cards);
1480
+ const current = document.querySelector("[data-verify-popular]");
1481
+ if (main && cards.length > 0 && (current?.getAttribute("data-verify-popular") !== key || main.firstElementChild !== current)) {
1482
+ current?.remove();
1483
+ const popular = document.createElement("section");
1484
+ popular.setAttribute("data-verify-popular", key);
1485
+ const heading = document.createElement("h2");
1486
+ heading.textContent = "Popular";
1487
+ popular.append(heading);
1488
+ for (const card of cards) {
1489
+ const link = document.createElement("a");
1490
+ link.href = card.href;
1491
+ link.setAttribute("data-zappie-item", card.id);
1492
+ link.textContent = card.name;
1493
+ popular.append(link);
1494
+ }
1495
+ main.prepend(popular);
1496
+ }
1497
+ }
1498
+ if (fault === "scrollable-markers") {
1499
+ for (const node of document.querySelectorAll(outermost)) {
1500
+ if (node.parentElement?.hasAttribute("data-verify-scroll-track")) {
1501
+ continue;
1502
+ }
1503
+ const scroller = document.createElement("div");
1504
+ scroller.style.cssText = "height: 1px; overflow: auto; width: 1px";
1505
+ const track = document.createElement("div");
1506
+ track.setAttribute("data-verify-scroll-track", "");
1507
+ track.style.cssText = "padding-left: 1000px; width: 2000px";
1508
+ node.before(scroller);
1509
+ scroller.append(track);
1510
+ track.append(node);
1511
+ }
1512
+ }
1513
+ if (fault === "content-visibility-auto-markers") {
1514
+ const nodes = [...document.querySelectorAll(outermost)].filter(
1515
+ (node) => !node.parentElement?.hasAttribute("data-verify-deferred")
1516
+ );
1517
+ if (nodes.length > 0) {
1518
+ let section = document.querySelector("[data-verify-deferred]");
1519
+ if (!section) {
1520
+ section = document.createElement("section");
1521
+ section.setAttribute("data-verify-deferred", "");
1522
+ section.style.cssText = "content-visibility:auto;contain-intrinsic-size:auto 1000px;margin-top:10000px";
1523
+ nodes[0]?.before(section);
1524
+ }
1525
+ section.append(...nodes);
1526
+ }
1527
+ }
1528
+ if (fault === "axe" && document.body && !document.querySelector("[data-verify-axe]")) {
1529
+ const button = document.createElement("button");
1530
+ button.setAttribute("data-verify-axe", "");
1531
+ button.style.color = "#fff";
1532
+ button.style.background = "#fff";
1533
+ document.body.append(button);
1534
+ }
1535
+ };
1536
+ let started = false;
1537
+ window.__verifyMarkupFault = () => {
1538
+ started = true;
1539
+ apply();
1540
+ };
1541
+ new MutationObserver(() => {
1542
+ if (started) {
1543
+ apply();
1544
+ }
1545
+ }).observe(document, { childList: true, subtree: true });
1546
+ }
1547
+ function pageHydrated() {
1548
+ const hydrated2 = (node) => node !== null && Object.keys(node).some((key) => key.startsWith("__reactProps$"));
1549
+ return hydrated2(document.body) && [...document.querySelectorAll("[data-zappie-item]")].every(hydrated2);
1550
+ }
1551
+ async function applyPageFault(page, fault) {
1552
+ if (fault && isMarkupFault(fault)) {
1553
+ await page.waitForFunction(pageHydrated);
1554
+ await page.evaluate(() => window.__verifyMarkupFault?.());
1309
1555
  }
1310
1556
  if (fault === "card-link") {
1311
1557
  await page.waitForFunction(() => {
@@ -1323,21 +1569,6 @@ async function applyPageFault(page, fault) {
1323
1569
  }
1324
1570
  });
1325
1571
  }
1326
- if (fault === "missing-marker") {
1327
- await page.locator("[data-zappie-item]").evaluateAll((nodes) => {
1328
- for (const node of nodes) {
1329
- node.removeAttribute("data-zappie-item");
1330
- }
1331
- });
1332
- }
1333
- if (fault === "axe") {
1334
- await page.evaluate(() => {
1335
- const button = document.createElement("button");
1336
- button.style.color = "#fff";
1337
- button.style.background = "#fff";
1338
- document.body.append(button);
1339
- });
1340
- }
1341
1572
  }
1342
1573
  function randomScript(name, length) {
1343
1574
  let state = 1;
@@ -1525,24 +1756,46 @@ var v03 = {
1525
1756
  async function judgeCatalogue(page, items, menuName, severalMenus) {
1526
1757
  const available = items.filter((item) => item.isAvailable);
1527
1758
  const shownIds = /* @__PURE__ */ new Set();
1759
+ const markerText = /* @__PURE__ */ new Map();
1528
1760
  for (const item of available) {
1529
1761
  const marker = page.locator(`[data-zappie-item="${item.id}"]`);
1530
- if (await marker.count() > 0 || await page.getByText(item.name, { exact: true }).count() > 0) {
1762
+ const text = await visibleMarkerText(marker);
1763
+ markerText.set(item.id, text);
1764
+ const prices = shownPrices(item);
1765
+ if (text.some(
1766
+ (value) => nameMatches(value, item.name) && prices.some((price) => priceMatches(value, normalizeText(price)))
1767
+ ) || await marker.count() === 0 && await page.getByText(item.name, { exact: true }).filter({ visible: true }).count() > 0) {
1531
1768
  shownIds.add(item.id);
1532
1769
  }
1533
1770
  }
1771
+ for (const item of available) {
1772
+ if (shownIds.has(item.id)) {
1773
+ continue;
1774
+ }
1775
+ const text = markerText.get(item.id)?.find((value) => nameMatches(value, item.name));
1776
+ if (text === void 0) {
1777
+ continue;
1778
+ }
1779
+ const prices = shownPrices(item);
1780
+ assertion(
1781
+ prices.some((price) => priceMatches(text, normalizeText(price))),
1782
+ "price_mismatch",
1783
+ `${item.name} does not show ${prices.join(" or From ")}`,
1784
+ "Render prices with format.money from @zappie/sdk, and a From price with startingPrice from @zappie/sdk/pricing."
1785
+ );
1786
+ }
1534
1787
  const coverage = menuCoverage(items, shownIds);
1535
1788
  assertion(
1536
1789
  coverage.passes || severalMenus,
1537
1790
  "menu_mismatch",
1538
1791
  `The ${menuName} shows ${coverage.shown} of ${coverage.available} available items`,
1539
- "Render at least 95% of available menu items with data-zappie-item markers or visible names."
1792
+ "Render at least 95% of available menu items with visible data-zappie-item markers that contain their name and price, or visible names when no marker exists."
1540
1793
  );
1541
1794
  assertion(
1542
1795
  coverage.passes,
1543
1796
  "menu_mismatch",
1544
1797
  `The ${menuName} shows ${coverage.shown} of ${coverage.available} available items`,
1545
- "Render at least 95% of available menu items with data-zappie-item markers or visible names. If each menu has its own page, set verify.cataloguePath, such as /menu?menu={menu}."
1798
+ "Render at least 95% of available menu items with visible data-zappie-item markers that contain their name and price, or visible names when no marker exists. If each menu has its own page, set verify.cataloguePath, such as /menu?menu={menu}."
1546
1799
  );
1547
1800
  assertion(
1548
1801
  await page.locator("[data-zappie-item]").count(),
@@ -1563,16 +1816,95 @@ async function judgeCatalogue(page, items, menuName, severalMenus) {
1563
1816
  );
1564
1817
  }
1565
1818
  }
1566
- for (const item of available.slice(0, 2)) {
1567
- const text = await page.locator(`[data-zappie-item="${item.id}"]`).first().textContent();
1568
- const prices = shownPrices(item);
1569
- assertion(
1570
- prices.some((price) => priceMatches(text, price)),
1571
- "price_mismatch",
1572
- `${item.name} does not show ${prices.join(" or From ")}`,
1573
- "Render prices with format.money from @zappie/sdk, and a From price with startingPrice from @zappie/sdk/pricing."
1574
- );
1575
- }
1819
+ }
1820
+ function nameMatches(text, name) {
1821
+ return text.includes(normalizeText(decodeBasicEntities(name)));
1822
+ }
1823
+ function normalizeText(value) {
1824
+ return value.normalize("NFKC").replace(/[\u00ad\u200b-\u200d\u2060\ufeff]/g, "").replace(/\s+/g, " ").trim().toLocaleLowerCase();
1825
+ }
1826
+ function decodeBasicEntities(value) {
1827
+ const entities = {
1828
+ amp: "&",
1829
+ apos: "'",
1830
+ gt: ">",
1831
+ lt: "<",
1832
+ quot: '"'
1833
+ };
1834
+ return value.replace(
1835
+ /&(amp|apos|gt|lt|quot);/gi,
1836
+ (entity) => entities[entity.slice(1, -1).toLowerCase()] ?? entity
1837
+ );
1838
+ }
1839
+ async function visibleMarkerText(marker) {
1840
+ const text = await marker.evaluateAll(
1841
+ (nodes) => nodes.flatMap((node) => {
1842
+ for (let current = node; current; current = current.parentElement) {
1843
+ const ariaHidden = current.getAttribute("aria-hidden")?.trim().toLowerCase();
1844
+ const style = getComputedStyle(current);
1845
+ if (current.hasAttribute("hidden") || ariaHidden === "true" || style.display === "none" || style.visibility === "hidden" || style.visibility === "collapse" || style.contentVisibility === "hidden" || fullyClipped(current, style)) {
1846
+ return [];
1847
+ }
1848
+ }
1849
+ const hasBox = [...node.getClientRects()].some((box) => {
1850
+ const documentRight = box.right + window.scrollX;
1851
+ const documentBottom = box.bottom + window.scrollY;
1852
+ return box.width >= 2 && box.height >= 2 && documentRight > 0 && documentBottom > 0;
1853
+ });
1854
+ if (!hasBox) {
1855
+ return [];
1856
+ }
1857
+ const text2 = node.textContent;
1858
+ return text2 === null ? [] : [text2];
1859
+ function fullyClipped(element, style) {
1860
+ const box = element.getBoundingClientRect();
1861
+ const clip = style.clip.match(
1862
+ /^rect\((auto|-?[\d.]+px)[, ]+(auto|-?[\d.]+px)[, ]+(auto|-?[\d.]+px)[, ]+(auto|-?[\d.]+px)\)$/
1863
+ );
1864
+ if (clip) {
1865
+ const top2 = length(clip[1], 0);
1866
+ const right2 = length(clip[2], box.width);
1867
+ const bottom2 = length(clip[3], box.height);
1868
+ const left2 = length(clip[4], 0);
1869
+ if (right2 <= left2 || bottom2 <= top2) {
1870
+ return true;
1871
+ }
1872
+ }
1873
+ const clipPath = style.clipPath;
1874
+ if (/^(circle|ellipse)\(0(?:px|%)?(?:\s|\))/i.test(clipPath)) {
1875
+ return true;
1876
+ }
1877
+ const inset = clipPath.match(/^inset\(([^)]+)\)/i);
1878
+ if (!inset) {
1879
+ return false;
1880
+ }
1881
+ const values = inset[1].split(/\s+/).slice(0, 4).map(
1882
+ (value, index) => insetLength(value, index % 2 ? box.width : box.height)
1883
+ );
1884
+ if (values.some((value) => value === void 0)) {
1885
+ return false;
1886
+ }
1887
+ const top = values[0];
1888
+ const right = values.length === 1 ? top : values[1];
1889
+ const bottom = values.length < 3 ? top : values[2];
1890
+ const left = values.length < 4 ? right : values[3];
1891
+ return top + bottom >= box.height || right + left >= box.width;
1892
+ }
1893
+ function length(value, fallback) {
1894
+ return value === "auto" || value === void 0 ? fallback : Number.parseFloat(value);
1895
+ }
1896
+ function insetLength(value, dimension) {
1897
+ if (value.endsWith("%")) {
1898
+ return Number.parseFloat(value) / 100 * dimension;
1899
+ }
1900
+ if (value.endsWith("px") || value === "0") {
1901
+ return Number.parseFloat(value);
1902
+ }
1903
+ return void 0;
1904
+ }
1905
+ })
1906
+ );
1907
+ return text.map(normalizeText);
1576
1908
  }
1577
1909
 
1578
1910
  // src/checks/v04-add-simple.ts
@@ -3030,13 +3362,20 @@ var v14 = {
3030
3362
  };
3031
3363
 
3032
3364
  // src/checks/v15-tappable-product-cards.ts
3033
- var TAPPABLE_BUDGET_MS = 3e3;
3034
3365
  var OPEN_BUDGET_MS = 300;
3366
+ function tappableBudgetMs(configured) {
3367
+ if (configured === void 0 || !Number.isFinite(configured)) {
3368
+ return DEFAULT_BUDGETS.tappableMs;
3369
+ }
3370
+ return Math.min(5e3, Math.max(DEFAULT_BUDGETS.tappableMs, configured));
3371
+ }
3035
3372
  var v15 = {
3036
3373
  id: "V15",
3037
3374
  title: "Tappable product cards",
3038
3375
  viewports: "mobile",
3039
3376
  async run({ page, options, metrics, cpuThrottlingRate: cpuThrottlingRate2 }, viewport) {
3377
+ const limitMs = tappableBudgetMs(options.tappableMs);
3378
+ metrics.productCardTappableLimitMs = limitMs;
3040
3379
  await page.setViewportSize(viewport);
3041
3380
  const { cdp } = await applyPhoneProfile(page, cpuThrottlingRate2);
3042
3381
  try {
@@ -3081,10 +3420,10 @@ var v15 = {
3081
3420
  const tappableMs = await page.evaluate(() => performance.now());
3082
3421
  metrics.productCardTappableMs = Math.round(tappableMs);
3083
3422
  assertion(
3084
- tappableMs <= TAPPABLE_BUDGET_MS,
3423
+ tappableMs <= limitMs,
3085
3424
  "product_card_tappable_too_late",
3086
- `The first product card became tappable in ${Math.round(tappableMs)} ms`,
3087
- "Reduce critical scripts, fonts and high-priority images until product cards become tappable within 3 seconds."
3425
+ `The first product card became tappable in ${Math.round(tappableMs)} ms; the site limit is ${limitMs} ms`,
3426
+ "Reduce critical scripts, fonts and high-priority images until product cards meet the site's tappable limit."
3088
3427
  );
3089
3428
  assertion(
3090
3429
  await prefetched,
@@ -3641,7 +3980,7 @@ async function reset(options) {
3641
3980
  }
3642
3981
 
3643
3982
  // src/version.ts
3644
- var PACKAGE_VERSION = true ? "0.3.1" : "0.0.0-development";
3983
+ var PACKAGE_VERSION = true ? "0.3.3" : "0.0.0-development";
3645
3984
 
3646
3985
  // src/runner.ts
3647
3986
  var VERSION = PACKAGE_VERSION;
@@ -3870,16 +4209,17 @@ async function runVerify(input, fault) {
3870
4209
 
3871
4210
  // src/project.ts
3872
4211
  async function verifyProject(options) {
3873
- const settings = options.store && options.startPath && options.cataloguePath ? {} : await readProjectSettings(options.cwd, { required: !options.store });
4212
+ const settings = options.store && options.startPath && options.cataloguePath && options.tappableMs !== void 0 ? {} : await readProjectSettings(options.cwd, { required: !options.store });
3874
4213
  const store = options.store ?? settings.store;
3875
4214
  const startPath2 = options.startPath ?? settings.startPath;
3876
4215
  const warnings = "ignored" in settings && settings.ignored ? [
3877
4216
  {
3878
4217
  code: "config_settings_ignored",
3879
- message: `${settings.ignored}, so verify ran without its verify.startPath and verify.cataloguePath. Fix zappie.config.ts, or pass the start path with --start.`
4218
+ message: `${settings.ignored}, so verify ran without its route settings or tappable budget. Fix zappie.config.ts before rerunning verify.`
3880
4219
  }
3881
4220
  ] : [];
3882
4221
  const cataloguePath = options.cataloguePath ?? settings.cataloguePath;
4222
+ const tappableMs = options.tappableMs ?? settings.tappableMs;
3883
4223
  let preview;
3884
4224
  try {
3885
4225
  preview = options.url ? void 0 : await startLocalPreview({
@@ -3900,6 +4240,7 @@ async function verifyProject(options) {
3900
4240
  ...options.only ? { only: options.only } : {},
3901
4241
  ...startPath2 !== void 0 ? { startPath: startPath2 } : {},
3902
4242
  ...cataloguePath !== void 0 ? { cataloguePath } : {},
4243
+ ...tappableMs !== void 0 ? { tappableMs } : {},
3903
4244
  ...warnings.length ? { warnings } : {},
3904
4245
  ...options.viewports ? { viewports: options.viewports } : {},
3905
4246
  ...options.artifactsDir ? { artifactsDir: options.artifactsDir } : {},
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/browser.ts","../src/error.ts","../src/checks/sets.ts","../src/local-preview.ts","../src/project-command.ts","../src/project-config.ts","../src/runner.ts","../src/paths.ts","../src/cpu.ts","../src/checks/common.ts","../src/checks/routes.ts","../src/checks/v01-routes.ts","../src/checks/v02-sdk.ts","../src/fixtures.ts","../src/checks/catalogue.ts","../../sdk/src/pricing/index.ts","../src/checks/menu-match.ts","../src/checks/v03-menu.ts","../src/checks/v04-add-simple.ts","../src/checks/v05-add-options.ts","../src/checks/v06-quote.ts","../src/checks/stale-cart.ts","../src/checks/v07-quote-issues.ts","../src/checks/v09-pickup.ts","../../sdk/src/places/error.ts","../../sdk/src/places/request.ts","../../sdk/src/places/search.ts","../../sdk/src/places/client.ts","../src/checks/v10-delivery.ts","../src/checks/v13-accessibility.ts","../src/checks/semantics.ts","../src/checks/overlays.ts","../src/checks/v14-performance.ts","../src/checks/v15-tappable-product-cards.ts","../src/checks/v16-overlays-open-quickly.ts","../src/checks/v17-overlay-focus.ts","../src/checks/v18-security-headers.ts","../src/checks/index.ts","../src/report.ts","../src/reset.ts","../src/version.ts","../src/project.ts","../src/regression.ts","../src/index.ts"],"mappings":"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","names":["id","label","signal","readFile","stat","path","stat","path","verify","readFile","path","path","path","errors","path","reset","target","event","blocked","lines","path","scope","label","target","message","remaining","cpuThrottlingRate","cpuThrottlingRate","itemPath","path","target","route","cpuThrottlingRate","open","path","target","checks","run","path","startPath"]}
1
+ {"version":3,"sources":["../src/browser.ts","../src/error.ts","../src/checks/sets.ts","../src/local-preview.ts","../src/project-command.ts","../../sdk/src/site-config/types.ts","../src/project-config.ts","../src/runner.ts","../src/paths.ts","../src/cpu.ts","../src/checks/common.ts","../src/checks/routes.ts","../src/checks/v01-routes.ts","../src/checks/v02-sdk.ts","../src/fixtures.ts","../src/checks/catalogue.ts","../../sdk/src/pricing/index.ts","../src/checks/menu-match.ts","../src/checks/v03-menu.ts","../src/checks/v04-add-simple.ts","../src/checks/v05-add-options.ts","../src/checks/v06-quote.ts","../src/checks/stale-cart.ts","../src/checks/v07-quote-issues.ts","../src/checks/v09-pickup.ts","../../sdk/src/places/error.ts","../../sdk/src/places/request.ts","../../sdk/src/places/search.ts","../../sdk/src/places/client.ts","../src/checks/v10-delivery.ts","../src/checks/v13-accessibility.ts","../src/checks/semantics.ts","../src/checks/overlays.ts","../src/checks/v14-performance.ts","../src/checks/v15-tappable-product-cards.ts","../src/checks/v16-overlays-open-quickly.ts","../src/checks/v17-overlay-focus.ts","../src/checks/v18-security-headers.ts","../src/checks/index.ts","../src/report.ts","../src/reset.ts","../src/version.ts","../src/project.ts","../src/regression.ts","../src/index.ts"],"mappings":"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","names":["id","label","signal","readFile","stat","path","stat","path","verify","readFile","path","path","path","errors","path","reset","target","hydrated","text","top","right","bottom","left","event","blocked","lines","path","scope","label","target","message","remaining","cpuThrottlingRate","cpuThrottlingRate","itemPath","path","target","route","cpuThrottlingRate","open","path","target","checks","run","path","startPath"]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@zappie/verify",
3
- "version": "0.3.1",
3
+ "version": "0.3.3",
4
4
  "description": "Deterministic verification for Zappie storefronts.",
5
5
  "license": "MIT",
6
6
  "repository": {
@@ -25,7 +25,7 @@
25
25
  },
26
26
  "dependencies": {
27
27
  "@axe-core/playwright": "4.14.0",
28
- "@zappie/sdk": "^0.1.14"
28
+ "@zappie/sdk": "^0.1.17"
29
29
  },
30
30
  "devDependencies": {
31
31
  "ajv": "^8.20.0",
@@ -88,6 +88,7 @@
88
88
  "lcpMs": { "type": "number" },
89
89
  "cls": { "type": "number" },
90
90
  "productCardTappableMs": { "type": "number" },
91
+ "productCardTappableLimitMs": { "type": "number" },
91
92
  "productCardOpenMs": { "type": "number" },
92
93
  "menuCssKbGz": { "type": "number" },
93
94
  "overlayOpenMs": {