cbrowser 20.0.2 → 20.0.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/dist/analysis/accessibility-empathy.d.ts.map +1 -1
- package/dist/analysis/accessibility-empathy.js +15 -16
- package/dist/analysis/accessibility-empathy.js.map +1 -1
- package/dist/help-format.d.ts.map +1 -1
- package/dist/help-format.js +4 -0
- package/dist/help-format.js.map +1 -1
- package/dist/mcp-tools/base/audit-tools.d.ts.map +1 -1
- package/dist/mcp-tools/base/audit-tools.js +7 -8
- package/dist/mcp-tools/base/audit-tools.js.map +1 -1
- package/dist/mcp-tools/base/gif-tools.d.ts.map +1 -1
- package/dist/mcp-tools/base/gif-tools.js +11 -17
- package/dist/mcp-tools/base/gif-tools.js.map +1 -1
- package/dist/mcp-tools/base/persona-comparison-tools.d.ts.map +1 -1
- package/dist/mcp-tools/base/persona-comparison-tools.js +18 -16
- package/dist/mcp-tools/base/persona-comparison-tools.js.map +1 -1
- package/dist/mcp-tools/base/visual-testing-tools.d.ts +8 -0
- package/dist/mcp-tools/base/visual-testing-tools.d.ts.map +1 -1
- package/dist/mcp-tools/base/visual-testing-tools.js +26 -17
- package/dist/mcp-tools/base/visual-testing-tools.js.map +1 -1
- package/dist/temp-files.d.ts +45 -0
- package/dist/temp-files.d.ts.map +1 -0
- package/dist/temp-files.js +70 -0
- package/dist/temp-files.js.map +1 -0
- package/dist/visual/cross-browser.d.ts.map +1 -1
- package/dist/visual/cross-browser.js +12 -3
- package/dist/visual/cross-browser.js.map +1 -1
- package/dist/visual/perceptual-transport.d.ts.map +1 -1
- package/dist/visual/perceptual-transport.js +19 -23
- package/dist/visual/perceptual-transport.js.map +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"accessibility-empathy.d.ts","sourceRoot":"","sources":["../../src/analysis/accessibility-empathy.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAoCH,OAAO,KAAK,EACV,kBAAkB,EAClB,mBAAmB,EAEnB,oBAAoB,EAEpB,4BAA4B,EAK7B,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"accessibility-empathy.d.ts","sourceRoot":"","sources":["../../src/analysis/accessibility-empathy.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAoCH,OAAO,KAAK,EACV,kBAAkB,EAClB,mBAAmB,EAEnB,oBAAoB,EAEpB,4BAA4B,EAK7B,MAAM,aAAa,CAAC;AA+OrB;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAgB,oBAAoB,CAAC,CAAC,SAAS;IAAE,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;IAAC,QAAQ,EAAE,4BAA4B,CAAA;CAAE,EAChH,QAAQ,EAAE,CAAC,EAAE,EACb,UAAU,EAAE,GAAG,GAAG,IAAI,GAAG,KAAK,GAC7B;IAAE,MAAM,EAAE,CAAC,EAAE,CAAC;IAAC,UAAU,EAAE,KAAK,CAAC,CAAC,GAAG;QAAE,eAAe,EAAE,IAAI,CAAC;QAAC,kBAAkB,EAAE,GAAG,GAAG,IAAI,GAAG,KAAK,CAAA;KAAE,CAAC,CAAA;CAAE,CAmB3G;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,wBAAgB,wBAAwB,CAAC,CAAC,SAAS;IAAE,IAAI,CAAC,EAAE;QAAE,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAA;CAAE,EACnH,QAAQ,EAAE,CAAC,EAAE,EACb,QAAQ,EAAE;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,GAC1C;IAAE,IAAI,EAAE,CAAC,EAAE,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAWhC;AA4iFD,wBAAgB,wBAAwB,CAAC,MAAM,EAAE,kBAAkB,GAAG,MAAM,CAuG3E;AAED,wBAAgB,8BAA8B,CAAC,MAAM,EAAE,kBAAkB,GAAG,MAAM,CA2UjF;AAsBD,0EAA0E;AAC1E,wBAAgB,mBAAmB,CAAC,CAAC,EAAE;IAAE,oBAAoB,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,MAAM,CAGhF;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,qBAAqB,CAAC,QAAQ,EAAE,oBAAoB,EAAE,GAAG,MAAM,CAE9E;AAmKD;;;;GAIG;AACH,eAAO,MAAM,uBAAuB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAmB,CAAC;AAE/E;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAgB,oBAAoB,CAClC,QAAQ,EAAE,KAAK,CAAC;IAAE,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;IAAC,oBAAoB,CAAC,EAAE,MAAM,EAAE,CAAA;CAAE,CAAC,EAC7E,mBAAmB,EAAE,GAAG,CAAC,MAAM,CAAC,EAChC,sBAAsB,EAAE,GAAG,CAAC,MAAM,CAAC,EACnC,SAAS,EAAE,GAAG,GAAG,IAAI,GAAG,KAAK,GAC5B,MAAM,EAAE,CAkBV;AAED,wBAAsB,eAAe,CACnC,GAAG,EAAE,MAAM,EACX,OAAO,EAAE,mBAAmB,GAC3B,OAAO,CAAC,kBAAkB,CAAC,CAqY7B"}
|
|
@@ -14,6 +14,7 @@ import { buildOTCognitiveProfile, estimateCognitiveLoad, extractPageMetrics, } f
|
|
|
14
14
|
import { bridgeCapacityTraits } from "../visual/cognitive-models.js";
|
|
15
15
|
import { analyzeAttention, } from "../visual/attention-transport.js";
|
|
16
16
|
import { getEmotionVisualizationStyles, generateEmotionVisualizationSection, } from "../utils.js";
|
|
17
|
+
import { makeTempDir } from "../temp-files.js";
|
|
17
18
|
// ============================================================================
|
|
18
19
|
// WCAG Mapping
|
|
19
20
|
// ============================================================================
|
|
@@ -3379,11 +3380,12 @@ export async function runEmpathyAudit(url, options) {
|
|
|
3379
3380
|
const result = await simulateAccessibilityJourney(page, url, goal, resolvedPersona, auditScope, maxSteps, maxTime, wcagLevel);
|
|
3380
3381
|
// v18.28.0: Run attention analysis FIRST so we can pass page-specific data to perceptual transport
|
|
3381
3382
|
let attentionData;
|
|
3383
|
+
// This call's own temp dir, not a clock-named file in the shared one:
|
|
3384
|
+
// concurrent audits read each other's screenshots (src/temp-files.ts).
|
|
3385
|
+
let attnTemp;
|
|
3382
3386
|
try {
|
|
3383
|
-
|
|
3384
|
-
const
|
|
3385
|
-
const { unlinkSync: ulAttn } = await import("fs");
|
|
3386
|
-
const attnScreenshot = joinAttn(tmpdirAttn(), `empathy-attn-${Date.now()}.png`);
|
|
3387
|
+
attnTemp = await makeTempDir("empathy-attn");
|
|
3388
|
+
const attnScreenshot = attnTemp.file("page.png");
|
|
3387
3389
|
await page.screenshot({ path: attnScreenshot, fullPage: false });
|
|
3388
3390
|
const attnAnalysis = await analyzeAttention(attnScreenshot, personaName, 16);
|
|
3389
3391
|
attentionData = {
|
|
@@ -3410,21 +3412,19 @@ export async function runEmpathyAudit(url, options) {
|
|
|
3410
3412
|
computeTimeMs: Math.round(attnAnalysis.computeTimeMs),
|
|
3411
3413
|
gridCellPx: 16,
|
|
3412
3414
|
};
|
|
3413
|
-
try {
|
|
3414
|
-
ulAttn(attnScreenshot);
|
|
3415
|
-
}
|
|
3416
|
-
catch { }
|
|
3417
3415
|
}
|
|
3418
3416
|
catch (e) {
|
|
3419
3417
|
console.debug(`[empathy_audit] Attention analysis failed: ${e.message}`);
|
|
3420
3418
|
}
|
|
3419
|
+
finally {
|
|
3420
|
+
await attnTemp?.remove();
|
|
3421
|
+
}
|
|
3421
3422
|
// v18.26.0: Screenshot-based perceptual transport analysis
|
|
3422
3423
|
// Now receives attention data for page-specific differentiation
|
|
3424
|
+
let shotTemp;
|
|
3423
3425
|
try {
|
|
3424
|
-
|
|
3425
|
-
const
|
|
3426
|
-
const { unlinkSync } = await import("fs");
|
|
3427
|
-
const screenshotPath = join(tmpdir(), `empathy-screenshot-${Date.now()}.png`);
|
|
3426
|
+
shotTemp = await makeTempDir("empathy-screenshot");
|
|
3427
|
+
const screenshotPath = shotTemp.file("page.png");
|
|
3428
3428
|
await page.screenshot({ path: screenshotPath, fullPage: false });
|
|
3429
3429
|
const perceptualAnalysis = await analyzePerceptualTransport(screenshotPath, personaName, attentionData, resolvedPersona.accessibilityTraits);
|
|
3430
3430
|
// Attach perceptual metrics to the result
|
|
@@ -3464,15 +3464,14 @@ export async function runEmpathyAudit(url, options) {
|
|
|
3464
3464
|
`perceptual ${perceptualAnalysis.perceptualScore} x 0.3. ` +
|
|
3465
3465
|
`The deductions above explain the barrier-only score, not the headline.`;
|
|
3466
3466
|
}
|
|
3467
|
-
try {
|
|
3468
|
-
unlinkSync(screenshotPath);
|
|
3469
|
-
}
|
|
3470
|
-
catch { }
|
|
3471
3467
|
}
|
|
3472
3468
|
catch (e) {
|
|
3473
3469
|
// Perceptual analysis is optional — don't fail the audit if it errors
|
|
3474
3470
|
console.debug(`[empathy_audit] Perceptual transport analysis failed: ${e.message}`);
|
|
3475
3471
|
}
|
|
3472
|
+
finally {
|
|
3473
|
+
await shotTemp?.remove();
|
|
3474
|
+
}
|
|
3476
3475
|
// v18.27.0: Cognitive load estimation via optimal transport
|
|
3477
3476
|
try {
|
|
3478
3477
|
const pageMetrics = await extractPageMetrics(page);
|