happo 6.3.0 → 6.3.1

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 (43) hide show
  1. package/dist/browser/main.js +14 -17
  2. package/dist/browser/main.js.map +3 -3
  3. package/dist/browser/takeDOMSnapshot.d.ts.map +1 -1
  4. package/dist/cli/cancelJob-6YMRZKZ6.js +10 -0
  5. package/dist/cli/{chunk-3EXZUW2Z.js → chunk-AQSWKKBJ.js} +2 -2
  6. package/dist/cli/{chunk-2TMK44N3.js → chunk-H4SN6WPV.js} +2 -2
  7. package/dist/cli/{chunk-AR3AP6FT.js → chunk-HAOW7OPC.js} +2 -2
  8. package/dist/cli/{chunk-HELH6UTI.js → chunk-VGC6VLFX.js} +4 -4
  9. package/dist/cli/{chunk-HELH6UTI.js.map → chunk-VGC6VLFX.js.map} +1 -1
  10. package/dist/cli/{chunk-DJLG5MCW.js → chunk-VRKXLPSQ.js} +3 -3
  11. package/dist/cli/{chunk-O7N6QKIL.js → chunk-WFRUGXXQ.js} +2 -2
  12. package/dist/cli/createAsyncComparison-O4TTQSO6.js +10 -0
  13. package/dist/cli/{createAsyncReport-EEY5VHG4.js → createAsyncReport-5E3IWVZX.js} +4 -4
  14. package/dist/cli/{getFlakes-H7UPZETQ.js → getFlakes-ITQLVM5D.js} +4 -4
  15. package/dist/cli/main.js +11 -11
  16. package/dist/cli/package-BZTLWVDW.js +7 -0
  17. package/dist/cli/{prepareSnapRequests-7OHC5YSR.js → prepareSnapRequests-O2FC3E2P.js} +4 -4
  18. package/dist/cli/startJob-5JOX4R4S.js +10 -0
  19. package/dist/cli/{wrapper-YN56WRXE.js → wrapper-ZQOATRO2.js} +7 -7
  20. package/dist/cypress/index.js +15 -17
  21. package/dist/cypress/index.js.map +3 -3
  22. package/dist/cypress/task.js +3 -3
  23. package/dist/cypress/task.js.map +1 -1
  24. package/dist/playwright/index.js +3 -3
  25. package/dist/playwright/index.js.map +1 -1
  26. package/package.json +3 -3
  27. package/dist/cli/cancelJob-LSNOE34P.js +0 -10
  28. package/dist/cli/createAsyncComparison-T7JOBG7A.js +0 -10
  29. package/dist/cli/package-TFI74YPA.js +0 -7
  30. package/dist/cli/startJob-ULCBWJ3I.js +0 -10
  31. /package/dist/cli/{cancelJob-LSNOE34P.js.map → cancelJob-6YMRZKZ6.js.map} +0 -0
  32. /package/dist/cli/{chunk-3EXZUW2Z.js.map → chunk-AQSWKKBJ.js.map} +0 -0
  33. /package/dist/cli/{chunk-2TMK44N3.js.map → chunk-H4SN6WPV.js.map} +0 -0
  34. /package/dist/cli/{chunk-AR3AP6FT.js.map → chunk-HAOW7OPC.js.map} +0 -0
  35. /package/dist/cli/{chunk-DJLG5MCW.js.map → chunk-VRKXLPSQ.js.map} +0 -0
  36. /package/dist/cli/{chunk-O7N6QKIL.js.map → chunk-WFRUGXXQ.js.map} +0 -0
  37. /package/dist/cli/{createAsyncComparison-T7JOBG7A.js.map → createAsyncComparison-O4TTQSO6.js.map} +0 -0
  38. /package/dist/cli/{createAsyncReport-EEY5VHG4.js.map → createAsyncReport-5E3IWVZX.js.map} +0 -0
  39. /package/dist/cli/{getFlakes-H7UPZETQ.js.map → getFlakes-ITQLVM5D.js.map} +0 -0
  40. /package/dist/cli/{package-TFI74YPA.js.map → package-BZTLWVDW.js.map} +0 -0
  41. /package/dist/cli/{prepareSnapRequests-7OHC5YSR.js.map → prepareSnapRequests-O2FC3E2P.js.map} +0 -0
  42. /package/dist/cli/{startJob-ULCBWJ3I.js.map → startJob-5JOX4R4S.js.map} +0 -0
  43. /package/dist/cli/{wrapper-YN56WRXE.js.map → wrapper-ZQOATRO2.js.map} +0 -0
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  fetchWithRetry
3
- } from "./chunk-2TMK44N3.js";
3
+ } from "./chunk-H4SN6WPV.js";
4
4
 
5
5
  // src/network/makeHappoAPIRequest.ts
6
6
  import { SignJWT } from "jose";
@@ -51,4 +51,4 @@ async function makeHappoAPIRequest({ url, path, method = "GET", formData, body }
51
51
  export {
52
52
  makeHappoAPIRequest
53
53
  };
54
- //# sourceMappingURL=chunk-O7N6QKIL.js.map
54
+ //# sourceMappingURL=chunk-WFRUGXXQ.js.map
@@ -0,0 +1,10 @@
1
+ import {
2
+ createAsyncComparison
3
+ } from "./chunk-AQSWKKBJ.js";
4
+ import "./chunk-WFRUGXXQ.js";
5
+ import "./chunk-H4SN6WPV.js";
6
+ import "./chunk-VGC6VLFX.js";
7
+ export {
8
+ createAsyncComparison as default
9
+ };
10
+ //# sourceMappingURL=createAsyncComparison-O4TTQSO6.js.map
@@ -1,8 +1,8 @@
1
1
  import {
2
2
  makeHappoAPIRequest
3
- } from "./chunk-O7N6QKIL.js";
4
- import "./chunk-2TMK44N3.js";
5
- import "./chunk-HELH6UTI.js";
3
+ } from "./chunk-WFRUGXXQ.js";
4
+ import "./chunk-H4SN6WPV.js";
5
+ import "./chunk-VGC6VLFX.js";
6
6
 
7
7
  // src/network/createAsyncReport.ts
8
8
  function assertResultIsCreateAsyncReportResult(result) {
@@ -38,4 +38,4 @@ async function createAsyncReport(snapRequestIds, config, { afterSha, link, messa
38
38
  export {
39
39
  createAsyncReport as default
40
40
  };
41
- //# sourceMappingURL=createAsyncReport-EEY5VHG4.js.map
41
+ //# sourceMappingURL=createAsyncReport-5E3IWVZX.js.map
@@ -1,8 +1,8 @@
1
1
  import {
2
2
  makeHappoAPIRequest
3
- } from "./chunk-O7N6QKIL.js";
4
- import "./chunk-2TMK44N3.js";
5
- import "./chunk-HELH6UTI.js";
3
+ } from "./chunk-WFRUGXXQ.js";
4
+ import "./chunk-H4SN6WPV.js";
5
+ import "./chunk-VGC6VLFX.js";
6
6
 
7
7
  // src/network/getFlakes.ts
8
8
  function formatFlakeOutput(flakes) {
@@ -70,4 +70,4 @@ export {
70
70
  getFlakes as default,
71
71
  formatFlakeOutput
72
72
  };
73
- //# sourceMappingURL=getFlakes-H7UPZETQ.js.map
73
+ //# sourceMappingURL=getFlakes-ITQLVM5D.js.map
package/dist/cli/main.js CHANGED
@@ -4,10 +4,10 @@ import {
4
4
  } from "./chunk-JTRP4JVC.js";
5
5
  import {
6
6
  fetchWithRetry
7
- } from "./chunk-2TMK44N3.js";
7
+ } from "./chunk-H4SN6WPV.js";
8
8
  import {
9
9
  package_default
10
- } from "./chunk-HELH6UTI.js";
10
+ } from "./chunk-VGC6VLFX.js";
11
11
 
12
12
  // src/cli/index.ts
13
13
  import path3 from "node:path";
@@ -1053,7 +1053,7 @@ function createReporter(opts = {}) {
1053
1053
 
1054
1054
  // src/cli/index.ts
1055
1055
  async function getVersion() {
1056
- const packageJson = await import("./package-TFI74YPA.js");
1056
+ const packageJson = await import("./package-BZTLWVDW.js");
1057
1057
  return packageJson.default.version;
1058
1058
  }
1059
1059
  function parseDashdashCommandParts(rawArgs) {
@@ -1324,10 +1324,10 @@ async function main(rawArgs = process.argv, logger = console) {
1324
1324
  async function handleDefaultCommand(config, environment, logger) {
1325
1325
  logger.log("Running happo tests...");
1326
1326
  const [startJob, createAsyncComparison, createAsyncReport, prepareSnapRequests] = await Promise.all([
1327
- (await import("./startJob-ULCBWJ3I.js")).default,
1328
- (await import("./createAsyncComparison-T7JOBG7A.js")).default,
1329
- (await import("./createAsyncReport-EEY5VHG4.js")).default,
1330
- (await import("./prepareSnapRequests-7OHC5YSR.js")).default
1327
+ (await import("./startJob-5JOX4R4S.js")).default,
1328
+ (await import("./createAsyncComparison-O4TTQSO6.js")).default,
1329
+ (await import("./createAsyncReport-5E3IWVZX.js")).default,
1330
+ (await import("./prepareSnapRequests-O2FC3E2P.js")).default
1331
1331
  ]);
1332
1332
  await startJob(config, environment, logger);
1333
1333
  try {
@@ -1360,7 +1360,7 @@ async function handleDefaultCommand(config, environment, logger) {
1360
1360
  } catch (e) {
1361
1361
  const message = e instanceof Error ? e.message : String(e);
1362
1362
  logger.error(`${config.integration.type} run failed: ${message}`, e);
1363
- const cancelJob = (await import("./cancelJob-LSNOE34P.js")).default;
1363
+ const cancelJob = (await import("./cancelJob-6YMRZKZ6.js")).default;
1364
1364
  await cancelJob("failure", message, config, environment, logger);
1365
1365
  process.exitCode = 1;
1366
1366
  return;
@@ -1371,7 +1371,7 @@ async function handleFinalizeCommand(config, environment, logger) {
1371
1371
  logger.log("Config:", config);
1372
1372
  logger.log("Environment:", environment);
1373
1373
  try {
1374
- const finalizeAll = (await import("./wrapper-YN56WRXE.js")).finalizeAll;
1374
+ const finalizeAll = (await import("./wrapper-ZQOATRO2.js")).finalizeAll;
1375
1375
  await finalizeAll({ happoConfig: config, environment, logger });
1376
1376
  } catch (e) {
1377
1377
  logger.error(e instanceof Error ? e.message : String(e), e);
@@ -1399,7 +1399,7 @@ async function handleFlakeCommand(config, {
1399
1399
  process.exitCode = 1;
1400
1400
  return;
1401
1401
  }
1402
- const { default: getFlakes, formatFlakeOutput } = await import("./getFlakes-H7UPZETQ.js");
1402
+ const { default: getFlakes, formatFlakeOutput } = await import("./getFlakes-ITQLVM5D.js");
1403
1403
  const project = allProjects ? void 0 : projectOverride ?? config.project;
1404
1404
  const flakes = await getFlakes(
1405
1405
  {
@@ -1441,7 +1441,7 @@ async function handleE2ECommand(config, environment, dashdashCommandParts, confi
1441
1441
  logger.log("Config:", config);
1442
1442
  logger.log("Environment:", environment);
1443
1443
  logger.log("Dashdash command parts:", dashdashCommandParts);
1444
- const runWithWrapper = (await import("./wrapper-YN56WRXE.js")).default;
1444
+ const runWithWrapper = (await import("./wrapper-ZQOATRO2.js")).default;
1445
1445
  const exitCode = await runWithWrapper(
1446
1446
  dashdashCommandParts,
1447
1447
  config,
@@ -0,0 +1,7 @@
1
+ import {
2
+ package_default
3
+ } from "./chunk-VGC6VLFX.js";
4
+ export {
5
+ package_default as default
6
+ };
7
+ //# sourceMappingURL=package-BZTLWVDW.js.map
@@ -1,8 +1,8 @@
1
1
  import {
2
2
  makeHappoAPIRequest
3
- } from "./chunk-O7N6QKIL.js";
4
- import "./chunk-2TMK44N3.js";
5
- import "./chunk-HELH6UTI.js";
3
+ } from "./chunk-WFRUGXXQ.js";
4
+ import "./chunk-H4SN6WPV.js";
5
+ import "./chunk-VGC6VLFX.js";
6
6
 
7
7
  // src/network/prepareSnapRequests.ts
8
8
  import fs5 from "node:fs";
@@ -732,4 +732,4 @@ async function prepareSnapRequests(config) {
732
732
  export {
733
733
  prepareSnapRequests as default
734
734
  };
735
- //# sourceMappingURL=prepareSnapRequests-7OHC5YSR.js.map
735
+ //# sourceMappingURL=prepareSnapRequests-O2FC3E2P.js.map
@@ -0,0 +1,10 @@
1
+ import {
2
+ startJob
3
+ } from "./chunk-HAOW7OPC.js";
4
+ import "./chunk-WFRUGXXQ.js";
5
+ import "./chunk-H4SN6WPV.js";
6
+ import "./chunk-VGC6VLFX.js";
7
+ export {
8
+ startJob as default
9
+ };
10
+ //# sourceMappingURL=startJob-5JOX4R4S.js.map
@@ -3,21 +3,21 @@ import {
3
3
  } from "./chunk-JTRP4JVC.js";
4
4
  import {
5
5
  startJob
6
- } from "./chunk-AR3AP6FT.js";
6
+ } from "./chunk-HAOW7OPC.js";
7
7
  import {
8
8
  createAsyncComparison
9
- } from "./chunk-3EXZUW2Z.js";
9
+ } from "./chunk-AQSWKKBJ.js";
10
10
  import {
11
11
  postGitHubComment
12
12
  } from "./chunk-X4TE2VNY.js";
13
13
  import {
14
14
  cancelJob
15
- } from "./chunk-DJLG5MCW.js";
15
+ } from "./chunk-VRKXLPSQ.js";
16
16
  import {
17
17
  makeHappoAPIRequest
18
- } from "./chunk-O7N6QKIL.js";
19
- import "./chunk-2TMK44N3.js";
20
- import "./chunk-HELH6UTI.js";
18
+ } from "./chunk-WFRUGXXQ.js";
19
+ import "./chunk-H4SN6WPV.js";
20
+ import "./chunk-VGC6VLFX.js";
21
21
 
22
22
  // src/e2e/wrapper.ts
23
23
  import { spawn } from "node:child_process";
@@ -219,4 +219,4 @@ export {
219
219
  runWithWrapper as default,
220
220
  finalizeAll
221
221
  };
222
- //# sourceMappingURL=wrapper-YN56WRXE.js.map
222
+ //# sourceMappingURL=wrapper-ZQOATRO2.js.map
@@ -3,9 +3,9 @@ import {
3
3
  } from "./chunk-RKK2MPML.js";
4
4
 
5
5
  // src/browser/applyConstructedStylesPatch.ts
6
- var recordedCSSSymbol = Symbol("recordedCssRules");
7
- var hasBrokenIndexesSymbol = Symbol("hasBrokenIndexes");
8
- var isInstalledSymbol = Symbol("isInstalled");
6
+ var recordedCSSSymbol = /* @__PURE__ */ Symbol("recordedCssRules");
7
+ var hasBrokenIndexesSymbol = /* @__PURE__ */ Symbol("hasBrokenIndexes");
8
+ var isInstalledSymbol = /* @__PURE__ */ Symbol("isInstalled");
9
9
  function isExtendedWindow(w) {
10
10
  return "CSSStyleSheet" in w && typeof w.CSSStyleSheet === "function";
11
11
  }
@@ -642,7 +642,6 @@ function getElementAssetUrls(element, {
642
642
  continue;
643
643
  }
644
644
  const srcset = element2.getAttribute("srcset");
645
- const src = element2.getAttribute("src");
646
645
  const imageHref = element2.tagName.toLowerCase() === "image" && element2.getAttribute("href");
647
646
  const linkHref = element2.tagName.toLowerCase() === "link" && element2.getAttribute("rel") === "stylesheet" && element2.getAttribute("href");
648
647
  const style = element2.getAttribute("style");
@@ -650,6 +649,7 @@ function getElementAssetUrls(element, {
650
649
  if (base64Url && element2.tagName === "IMG") {
651
650
  handleBase64Image({ base64Url, element: element2 });
652
651
  }
652
+ const src = element2.getAttribute("src");
653
653
  if (src) {
654
654
  allUrls.push({ url: src, baseUrl: element2.baseURI });
655
655
  }
@@ -708,24 +708,21 @@ function inlineCanvases(element, {
708
708
  }
709
709
  const image = doc.createElement("img");
710
710
  const url = `/.happo-tmp/_inlined/${MD5.hashStr(canvasImageBase64)}.png`;
711
- image.src = url;
712
711
  image._base64Url = canvasImageBase64;
713
- const style = canvas.getAttribute("style");
714
- if (style) {
715
- image.setAttribute("style", style);
716
- }
717
- const className = canvas.getAttribute("class");
718
- if (className) {
719
- image.setAttribute("class", className);
712
+ for (const attributeName of canvas.getAttributeNames()) {
713
+ if (attributeName.startsWith("on")) {
714
+ continue;
715
+ }
716
+ const value = canvas.getAttribute(attributeName);
717
+ if (value) {
718
+ image.setAttribute(attributeName, value);
719
+ }
720
720
  }
721
+ image.src = url;
721
722
  if (responsiveInlinedCanvases) {
722
723
  image.style.width = "100%";
723
724
  image.style.height = "auto";
724
725
  } else {
725
- const width = canvas.getAttribute("width");
726
- const height = canvas.getAttribute("height");
727
- if (width) image.setAttribute("width", width);
728
- if (height) image.setAttribute("height", height);
729
726
  copyStyles(canvas, image);
730
727
  }
731
728
  canvas.replaceWith(image);
@@ -1010,7 +1007,7 @@ Cypress.Commands.add(
1010
1007
  element,
1011
1008
  responsiveInlinedCanvases: resInCan,
1012
1009
  strategy: snapshotStrategy,
1013
- handleBase64Image: ({ base64Url }) => {
1010
+ handleBase64Image: ({ base64Url, element: element2 }) => {
1014
1011
  const rawBase64 = base64Url.replace(/^data:image\/png;base64,/, "");
1015
1012
  const chunks = chunked(rawBase64, config.canvasChunkSize);
1016
1013
  for (let i = 0; i < chunks.length; i++) {
@@ -1021,6 +1018,7 @@ Cypress.Commands.add(
1021
1018
  "happoRegisterBase64Image",
1022
1019
  {
1023
1020
  base64Chunk,
1021
+ src: element2.getAttribute("src"),
1024
1022
  isFirst,
1025
1023
  isLast
1026
1024
  },