@juxtapose/core 0.4.0 → 0.6.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.
- package/dist/agent/handoff.d.ts +8 -1
- package/dist/agent/handoff.js +75 -7
- package/dist/agent/handoff.js.map +1 -1
- package/dist/analysis/affected.d.ts +37 -0
- package/dist/analysis/affected.js +97 -22
- package/dist/analysis/affected.js.map +1 -1
- package/dist/analysis/cause.d.ts +32 -0
- package/dist/analysis/cause.js +187 -0
- package/dist/analysis/cause.js.map +1 -0
- package/dist/baseline/approve.d.ts +24 -0
- package/dist/baseline/approve.js +54 -0
- package/dist/baseline/approve.js.map +1 -0
- package/dist/baseline/git-store.d.ts +4 -0
- package/dist/baseline/git-store.js +22 -0
- package/dist/baseline/git-store.js.map +1 -1
- package/dist/browser/acquire.d.ts +15 -0
- package/dist/browser/acquire.js +26 -0
- package/dist/browser/acquire.js.map +1 -0
- package/dist/browser/browser.d.ts +53 -0
- package/dist/browser/browser.js +122 -0
- package/dist/browser/browser.js.map +1 -0
- package/dist/browser/cdp.d.ts +81 -0
- package/dist/browser/cdp.js +230 -0
- package/dist/browser/cdp.js.map +1 -0
- package/dist/browser/daemon/client.d.ts +145 -0
- package/dist/browser/daemon/client.js +764 -0
- package/dist/browser/daemon/client.js.map +1 -0
- package/dist/browser/daemon/state.d.ts +99 -0
- package/dist/browser/daemon/state.js +297 -0
- package/dist/browser/daemon/state.js.map +1 -0
- package/dist/browser/daemon/supervisor-main.d.ts +1 -0
- package/dist/browser/daemon/supervisor-main.js +54 -0
- package/dist/browser/daemon/supervisor-main.js.map +1 -0
- package/dist/browser/daemon/supervisor.d.ts +37 -0
- package/dist/browser/daemon/supervisor.js +777 -0
- package/dist/browser/daemon/supervisor.js.map +1 -0
- package/dist/{capture/launch.d.ts → browser/flags.d.ts} +19 -1
- package/dist/browser/flags.js +146 -0
- package/dist/browser/flags.js.map +1 -0
- package/dist/browser/index.d.ts +14 -0
- package/dist/browser/index.js +14 -0
- package/dist/browser/index.js.map +1 -0
- package/dist/browser/install.d.ts +33 -0
- package/dist/browser/install.js +167 -0
- package/dist/browser/install.js.map +1 -0
- package/dist/browser/launch.d.ts +37 -0
- package/dist/browser/launch.js +254 -0
- package/dist/browser/launch.js.map +1 -0
- package/dist/browser/page.d.ts +125 -0
- package/dist/browser/page.js +564 -0
- package/dist/browser/page.js.map +1 -0
- package/dist/browser/pins.d.ts +12 -0
- package/dist/browser/pins.js +57 -0
- package/dist/browser/pins.js.map +1 -0
- package/dist/browser/private-dir.d.ts +7 -0
- package/dist/browser/private-dir.js +24 -0
- package/dist/browser/private-dir.js.map +1 -0
- package/dist/browser/resolve.d.ts +31 -0
- package/dist/browser/resolve.js +126 -0
- package/dist/browser/resolve.js.map +1 -0
- package/dist/browser/selectors.d.ts +10 -0
- package/dist/browser/selectors.js +60 -0
- package/dist/browser/selectors.js.map +1 -0
- package/dist/browser/transport.d.ts +51 -0
- package/dist/browser/transport.js +124 -0
- package/dist/browser/transport.js.map +1 -0
- package/dist/browser/types.d.ts +4 -0
- package/dist/browser/types.js +2 -0
- package/dist/browser/types.js.map +1 -0
- package/dist/browser/zip.d.ts +27 -0
- package/dist/browser/zip.js +241 -0
- package/dist/browser/zip.js.map +1 -0
- package/dist/capture/capture.d.ts +7 -1
- package/dist/capture/capture.js +25 -8
- package/dist/capture/capture.js.map +1 -1
- package/dist/capture/env.d.ts +1 -1
- package/dist/capture/pool.d.ts +1 -1
- package/dist/capture/pool.js +41 -8
- package/dist/capture/pool.js.map +1 -1
- package/dist/capture/settle.d.ts +1 -1
- package/dist/capture/settle.js +2 -0
- package/dist/capture/settle.js.map +1 -1
- package/dist/capture/snap.d.ts +43 -0
- package/dist/capture/snap.js +103 -0
- package/dist/capture/snap.js.map +1 -0
- package/dist/capture/structure.d.ts +77 -0
- package/dist/capture/structure.js +498 -0
- package/dist/capture/structure.js.map +1 -0
- package/dist/diff/compare.d.ts +19 -0
- package/dist/diff/compare.js +19 -0
- package/dist/diff/compare.js.map +1 -0
- package/dist/diff/crops.d.ts +26 -0
- package/dist/diff/crops.js +92 -0
- package/dist/diff/crops.js.map +1 -0
- package/dist/diff/structural/classify.d.ts +29 -0
- package/dist/diff/structural/classify.js +113 -0
- package/dist/diff/structural/classify.js.map +1 -0
- package/dist/diff/structural/coverage.d.ts +11 -0
- package/dist/diff/structural/coverage.js +37 -0
- package/dist/diff/structural/coverage.js.map +1 -0
- package/dist/diff/structural/deltas.d.ts +29 -0
- package/dist/diff/structural/deltas.js +218 -0
- package/dist/diff/structural/deltas.js.map +1 -0
- package/dist/diff/structural/disambiguate.d.ts +3 -0
- package/dist/diff/structural/disambiguate.js +89 -0
- package/dist/diff/structural/disambiguate.js.map +1 -0
- package/dist/diff/structural/label.d.ts +15 -0
- package/dist/diff/structural/label.js +64 -0
- package/dist/diff/structural/label.js.map +1 -0
- package/dist/diff/structural/match.d.ts +13 -0
- package/dist/diff/structural/match.js +135 -0
- package/dist/diff/structural/match.js.map +1 -0
- package/dist/diff/structural/shift.d.ts +2 -0
- package/dist/diff/structural/shift.js +144 -0
- package/dist/diff/structural/shift.js.map +1 -0
- package/dist/diff/structural/summary.d.ts +31 -0
- package/dist/diff/structural/summary.js +420 -0
- package/dist/diff/structural/summary.js.map +1 -0
- package/dist/diff/structural.d.ts +40 -0
- package/dist/diff/structural.js +219 -0
- package/dist/diff/structural.js.map +1 -0
- package/dist/index.d.ts +28 -4
- package/dist/index.js +32 -3
- package/dist/index.js.map +1 -1
- package/dist/platform.d.ts +1 -1
- package/dist/platforms/urls.d.ts +3 -0
- package/dist/platforms/urls.js +89 -0
- package/dist/platforms/urls.js.map +1 -0
- package/dist/report/comment.js +9 -3
- package/dist/report/comment.js.map +1 -1
- package/dist/report/format.d.ts +18 -0
- package/dist/report/format.js +20 -0
- package/dist/report/format.js.map +1 -1
- package/dist/report/html.js +2 -2
- package/dist/report/html.js.map +1 -1
- package/dist/run/groups.d.ts +2 -0
- package/dist/run/groups.js +45 -0
- package/dist/run/groups.js.map +1 -0
- package/dist/run/run.d.ts +6 -2
- package/dist/run/run.js +74 -6
- package/dist/run/run.js.map +1 -1
- package/dist/shell-quote.d.ts +2 -0
- package/dist/shell-quote.js +10 -0
- package/dist/shell-quote.js.map +1 -0
- package/dist/types.d.ts +201 -5
- package/dist/types.js +0 -2
- package/dist/types.js.map +1 -1
- package/dist/url-platform.d.ts +2 -2
- package/dist/url-platform.js +2 -2
- package/dist/url-platform.js.map +1 -1
- package/package.json +6 -10
- package/dist/capture/launch.js +0 -56
- package/dist/capture/launch.js.map +0 -1
package/package.json
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@juxtapose/core",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.6.0",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"description": "Platform-agnostic capture, diff, baseline and analysis core for juxtapose.",
|
|
6
6
|
"keywords": [
|
|
7
7
|
"visual-regression",
|
|
8
8
|
"screenshot-testing",
|
|
9
|
-
"
|
|
9
|
+
"cdp",
|
|
10
10
|
"visual-testing",
|
|
11
11
|
"pixelmatch"
|
|
12
12
|
],
|
|
@@ -15,10 +15,14 @@
|
|
|
15
15
|
"access": "public"
|
|
16
16
|
},
|
|
17
17
|
"license": "MIT",
|
|
18
|
+
"engines": {
|
|
19
|
+
"node": ">=22.2.0"
|
|
20
|
+
},
|
|
18
21
|
"main": "./dist/index.js",
|
|
19
22
|
"types": "./dist/index.d.ts",
|
|
20
23
|
"exports": {
|
|
21
24
|
".": "./dist/index.js",
|
|
25
|
+
"./browser": "./dist/browser/index.js",
|
|
22
26
|
"./format": "./dist/report/format.js",
|
|
23
27
|
"./package.json": "./package.json"
|
|
24
28
|
},
|
|
@@ -29,14 +33,6 @@
|
|
|
29
33
|
"pixelmatch": "^6.0.0",
|
|
30
34
|
"sharp": "^0.35.3"
|
|
31
35
|
},
|
|
32
|
-
"peerDependencies": {
|
|
33
|
-
"playwright": "^1.48.0"
|
|
34
|
-
},
|
|
35
|
-
"peerDependenciesMeta": {
|
|
36
|
-
"playwright": {
|
|
37
|
-
"optional": true
|
|
38
|
-
}
|
|
39
|
-
},
|
|
40
36
|
"devDependencies": {
|
|
41
37
|
"@types/pixelmatch": "^5.2.6"
|
|
42
38
|
},
|
package/dist/capture/launch.js
DELETED
|
@@ -1,56 +0,0 @@
|
|
|
1
|
-
// Browser launch flags for reproducible rasterization.
|
|
2
|
-
//
|
|
3
|
-
// These matter more here than in most Playwright setups. Pass/fail is a
|
|
4
|
-
// byte-exact hash, so a single pixel of GPU rasterization jitter on one
|
|
5
|
-
// antialiased corner is a failed build — not a 0.002% mismatch someone can
|
|
6
|
-
// wave through.
|
|
7
|
-
//
|
|
8
|
-
// Measured on a card component with rounded corners: without these flags,
|
|
9
|
-
// repeated captures of an unchanged story differed by ~12 pixels out of
|
|
10
|
-
// 480,000, each off by exactly 1 in one channel. Invisible to a human, fatal
|
|
11
|
-
// to a hash.
|
|
12
|
-
/**
|
|
13
|
-
* Chromium flags that make rasterization reproducible across runs.
|
|
14
|
-
*
|
|
15
|
-
* Each is here for a reason; none are cargo-culted:
|
|
16
|
-
*
|
|
17
|
-
* - `--disable-gpu`, `--disable-gpu-rasterization`, `--disable-skia-runtime-opts`
|
|
18
|
-
* force CPU rasterization down a fixed code path. GPU rasterization is the
|
|
19
|
-
* direct cause of the off-by-one antialiasing jitter above, and Skia's
|
|
20
|
-
* runtime CPU-feature detection can pick different SIMD paths on different
|
|
21
|
-
* machines.
|
|
22
|
-
*
|
|
23
|
-
* - `--force-color-profile=srgb`, `--disable-lcd-text`, `--disable-font-subpixel-positioning`
|
|
24
|
-
* pin colour management and text rendering. Subpixel positioning and LCD
|
|
25
|
-
* antialiasing make glyph edges depend on display configuration, which is
|
|
26
|
-
* exactly the kind of environment coupling that makes a baseline captured on
|
|
27
|
-
* one machine fail on another.
|
|
28
|
-
*
|
|
29
|
-
* - `--hide-scrollbars` keeps a scrollbar's presence from shifting layout by a
|
|
30
|
-
* few pixels depending on content height.
|
|
31
|
-
*
|
|
32
|
-
* - `--disable-background-timer-throttling` and friends stop Chromium from
|
|
33
|
-
* throttling a backgrounded renderer, which otherwise makes settle timing
|
|
34
|
-
* depend on whether the window happens to be focused.
|
|
35
|
-
*/
|
|
36
|
-
export const DETERMINISTIC_CHROMIUM_ARGS = [
|
|
37
|
-
'--disable-gpu',
|
|
38
|
-
'--disable-gpu-rasterization',
|
|
39
|
-
'--disable-skia-runtime-opts',
|
|
40
|
-
'--disable-lcd-text',
|
|
41
|
-
'--disable-font-subpixel-positioning',
|
|
42
|
-
'--force-color-profile=srgb',
|
|
43
|
-
'--hide-scrollbars',
|
|
44
|
-
'--disable-background-timer-throttling',
|
|
45
|
-
'--disable-backgrounding-occluded-windows',
|
|
46
|
-
'--disable-renderer-backgrounding',
|
|
47
|
-
'--force-device-scale-factor=1',
|
|
48
|
-
];
|
|
49
|
-
/** Build the Playwright launch options for a reproducible capture browser. */
|
|
50
|
-
export function deterministicLaunchOptions(opts = {}) {
|
|
51
|
-
return {
|
|
52
|
-
headless: opts.headless ?? true,
|
|
53
|
-
args: [...DETERMINISTIC_CHROMIUM_ARGS, ...(opts.args ?? [])],
|
|
54
|
-
};
|
|
55
|
-
}
|
|
56
|
-
//# sourceMappingURL=launch.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"launch.js","sourceRoot":"","sources":["../../src/capture/launch.ts"],"names":[],"mappings":"AAAA,uDAAuD;AACvD,EAAE;AACF,wEAAwE;AACxE,wEAAwE;AACxE,2EAA2E;AAC3E,gBAAgB;AAChB,EAAE;AACF,0EAA0E;AAC1E,wEAAwE;AACxE,6EAA6E;AAC7E,aAAa;AAEb;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,MAAM,CAAC,MAAM,2BAA2B,GAAsB;IAC5D,eAAe;IACf,6BAA6B;IAC7B,6BAA6B;IAC7B,oBAAoB;IACpB,qCAAqC;IACrC,4BAA4B;IAC5B,mBAAmB;IACnB,uCAAuC;IACvC,0CAA0C;IAC1C,kCAAkC;IAClC,+BAA+B;CAChC,CAAC;AAQF,8EAA8E;AAC9E,MAAM,UAAU,0BAA0B,CAAC,OAAsB,EAAE;IAIjE,OAAO;QACL,QAAQ,EAAE,IAAI,CAAC,QAAQ,IAAI,IAAI;QAC/B,IAAI,EAAE,CAAC,GAAG,2BAA2B,EAAE,GAAG,CAAC,IAAI,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC;KAC7D,CAAC;AACJ,CAAC"}
|