New Research: Supply Chain Attack on Axios Pulls Malicious Dependency from npm.Details → →
Socket
Book a DemoSign in
Socket

pdf-visual-diff

Package Overview
Dependencies
Maintainers
1
Versions
23
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

pdf-visual-diff - npm Package Compare versions

Comparing version
0.11.0
to
0.11.1
+11
jest.config.js
/**
* For a detailed explanation regarding each configuration property, visit:
* https://jestjs.io/docs/configuration
*/
/** @type {import('jest').Config} */
const config = {
setupFilesAfterEnv: ['./lib/toMatchPdfSnapshot'],
}
module.exports = config
import * as Canvas from 'canvas';
export type CanvasContextManager = {
context: Canvas.CanvasRenderingContext2D;
resize: (width: number, height: number) => void;
toPngBuffer: () => Buffer;
toImageData: () => Canvas.ImageData;
dispose: () => void;
};
export declare function createCanvasContext(): CanvasContextManager;
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.createCanvasContext = createCanvasContext;
const Canvas = require("canvas");
const assert = require("node:assert");
function createCanvasContext() {
let canvas = Canvas.createCanvas(1, 1);
let context = canvas.getContext('2d');
return {
context,
resize: (width, height) => {
assert(width > 0 && height > 0, 'Invalid canvas dimensions');
canvas.width = width;
canvas.height = height;
},
toPngBuffer: () => canvas.toBuffer('image/png'),
toImageData: () => context.getImageData(0, 0, canvas.width, canvas.height),
dispose: () => {
canvas.width = 0;
canvas.height = 0;
// Nullify for garbage collection
canvas = null;
context = null;
},
};
}
//# sourceMappingURL=createCanvasContext.js.map
{"version":3,"file":"createCanvasContext.js","sourceRoot":"","sources":["../../src/pdf2png/createCanvasContext.ts"],"names":[],"mappings":";;AAWA,kDAqBC;AAhCD,iCAAgC;AAChC,sCAAqC;AAUrC,SAAgB,mBAAmB;IACjC,IAAI,MAAM,GAAG,MAAM,CAAC,YAAY,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;IACtC,IAAI,OAAO,GAAG,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,CAAA;IAErC,OAAO;QACL,OAAO;QACP,MAAM,EAAE,CAAC,KAAa,EAAE,MAAc,EAAQ,EAAE;YAC9C,MAAM,CAAC,KAAK,GAAG,CAAC,IAAI,MAAM,GAAG,CAAC,EAAE,2BAA2B,CAAC,CAAA;YAC5D,MAAM,CAAC,KAAK,GAAG,KAAK,CAAA;YACpB,MAAM,CAAC,MAAM,GAAG,MAAM,CAAA;QACxB,CAAC;QACD,WAAW,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,WAAW,CAAC;QAC/C,WAAW,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,EAAE,CAAC,EAAE,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC;QAC1E,OAAO,EAAE,GAAG,EAAE;YACZ,MAAM,CAAC,KAAK,GAAG,CAAC,CAAA;YAChB,MAAM,CAAC,MAAM,GAAG,CAAC,CAAA;YACjB,iCAAiC;YACjC,MAAM,GAAG,IAAgC,CAAA;YACzC,OAAO,GAAG,IAAkD,CAAA;QAC9D,CAAC;KACF,CAAA;AACH,CAAC"}

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

const { join } = require('node:path')
const { comparePdfToSnapshot } = require('../lib')
const twoPagePdfPath = join(__dirname, '../src/test-data/pdfs/', 'two-page.pdf')
const snapshotDir = join(__dirname)
/** @type {import('../lib').CompareOptions} */
const opts = {
pdf2PngOptions: { dpi: 72 },
}
describe('jest smoke tests', () => {
test(
'plain fn',
() =>
comparePdfToSnapshot(twoPagePdfPath, snapshotDir, 'jest_smoke_tests_plain_fn', opts).then(
(isEqual) => {
expect(isEqual).toEqual(true)
},
),
10_000,
)
test('custom matcher', () => expect(twoPagePdfPath).toMatchPdfSnapshot(opts), 10_000)
})
+9
-0
# Changelog
## 0.11.0 / 2024-09-11
- [PR#67](https://github.com/moshensky/pdf-visual-diff/pull/67): Dependencies update. **BREAKING CHANGE**: Minimum supported **Node.js v18**.
Notably, the update of `pdfjs-dist` to **v4** (`^4.6.82`) from v3 introduces significant changes. As a result, this release is a **BREAKING CHANGE**:
- Due to the update in `pdfjs-dist`, the minimum supported Node.js version is now 18.
- If you were using a version of `pdfjs-dist` lower than [v3.7.107](https://github.com/mozilla/pdf.js/releases/tag/v3.7.107), your snapshots might start to fail due to changes in how fonts are loaded and used in certain circumstances.
For the time being, this release has 0 vulnerabilities according to `npm audit`.
## 0.10.0 / 2024-09-06

@@ -4,0 +13,0 @@

+38
-23
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.pdf2png = pdf2png;
const fs = require("fs/promises");
const path = require("path");
const fs = require("node:fs/promises");
const path = require("node:path");
const jimp_1 = require("jimp");
const types_1 = require("../types");
const conversions_1 = require("../conversions");
const nodeCanvasFactory_1 = require("./nodeCanvasFactory");
const createCanvasContext_1 = require("./createCanvasContext");
// pdfjs location

@@ -37,2 +37,24 @@ const PDFJS_DIR = path.join(path.dirname(require.resolve('pdfjs-dist')), '..');

}
function mkPdfPagesRenderer(pdfDocument, dpi) {
return async function (toImage, toJimpInstances) {
const images = [];
const canvas = (0, createCanvasContext_1.createCanvasContext)();
const totalPages = pdfDocument.numPages;
for (let idx = 1; idx <= totalPages; idx += 1) {
const page = await pdfDocument.getPage(idx);
const viewport = getPageViewPort(page, dpi);
canvas.resize(viewport.width, viewport.height);
const renderParameters = {
// @ts-expect-error type mismatch between web and node.js canvas
canvasContext: canvas.context,
viewport,
};
await page.render(renderParameters).promise;
page.cleanup();
images.push(toImage(canvas));
}
canvas.dispose();
return toJimpInstances(images);
};
}
async function pdf2png(pdf, options = {}) {

@@ -42,26 +64,19 @@ const { getDocument } = await import('pdfjs-dist/legacy/build/pdf.mjs');

// Load PDF
const pdfBuffer = await (Buffer.isBuffer(pdf) ? Promise.resolve(pdf) : fs.readFile(pdf));
const pdfBuffer = Buffer.isBuffer(pdf) ? pdf : await fs.readFile(pdf);
const loadingTask = getDocument(Object.assign(Object.assign({}, DOCUMENT_INIT_PARAMS_DEFAULTS), { data: new Uint8Array(pdfBuffer) }));
const pdfDocument = await loadingTask.promise;
const numPages = pdfDocument.numPages;
const canvas = (0, nodeCanvasFactory_1.mkCanvas)();
// Generate images
const images = [];
for (let idx = 1; idx <= numPages; idx += 1) {
const page = await pdfDocument.getPage(idx);
const viewport = getPageViewPort(page, opts.dpi);
canvas.set(viewport.width, viewport.height);
const renderParameters = {
// @ts-expect-error type mismatch between web and node.js canvas
canvasContext: canvas.context,
viewport,
};
await page.render(renderParameters).promise;
page.cleanup();
const imgData = canvas.context.getImageData(0, 0, viewport.width, viewport.height);
images.push(jimp_1.Jimp.fromBitmap(imgData));
const renderPdfPages = mkPdfPagesRenderer(pdfDocument, opts.dpi);
/**
* For faster processing, we want to use `Jimp.fromBitmap`. However, it
* internally uses `instanceof`, which doesn't work well with Jest due to
* [Jest globals differing from Node globals](https://github.com/jestjs/jest/issues/2549).
*/
// @ts-expect-error we have to assert if running in jest env
if (typeof jest !== 'undefined') {
return renderPdfPages((canvas) => canvas.toPngBuffer(), (images) => Promise.all(images.map((x) => jimp_1.Jimp.read(x).then((x) => x))));
}
canvas.destroy();
return images;
else {
return renderPdfPages((canvas) => jimp_1.Jimp.fromBitmap(canvas.toImageData()), (images) => Promise.resolve(images));
}
}
//# sourceMappingURL=pdf2png.js.map

@@ -1,1 +0,1 @@

{"version":3,"file":"pdf2png.js","sourceRoot":"","sources":["../../src/pdf2png/pdf2png.ts"],"names":[],"mappings":"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"}
{"version":3,"file":"pdf2png.js","sourceRoot":"","sources":["../../src/pdf2png/pdf2png.ts"],"names":[],"mappings":"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"}
{
"name": "pdf-visual-diff",
"version": "0.11.0",
"version": "0.11.1",
"description": "Visual Regression Testing for PDFs in JavaScript",

@@ -21,2 +21,3 @@ "bin": "./lib/cli/index.js",

"test:watch": "node --require ts-node/register --test --watch src/**/*.test.ts src/*.test.ts",
"test:jest": "npm run tsc -- --noEmit false && NODE_OPTIONS=--experimental-vm-modules jest test/jest.test.js",
"license-checker": "npx license-checker --production --onlyAllow 'MIT; MIT OR X11; BSD; ISC; Apache-2.0; Unlicense' --excludePackages 'pdf-visual-diff'",

@@ -60,2 +61,3 @@ "update-deps": "npx npm-check-updates --configFileName .ncurc.js"

"eslint-plugin-tsdoc": "^0.3.0",
"jest": "^29.7.0",
"prettier": "^3.3.3",

@@ -62,0 +64,0 @@ "ts-node": "^10.9.2",

/**
* Configure which packages to ignore version upgrades.
*/
const ignoredPackages = [];
/**
* Configure which packages to ignore for major version upgrades.
* Type: { [packageName]: reason }, i.e. { '@storybook/react': 'some reason' }
*/
const ignoreMajorVersions = {
};
module.exports = {
upgrade: true,
reject: ignoredPackages,
packageManager: 'npm',
/** Custom target that performs minor upgrades for selected packages.
@param dependencyName The name of the dependency.
@param parsedVersion A parsed Semver object from semver-utils.
(See https://git.coolaj86.com/coolaj86/semver-utils.js#semverutils-parse-semverstring)
@returns 'latest' | 'newest' | 'greatest' | 'minor' | 'patch'
*/
target: (dependencyName, parsedVersion) => {
const ignored = ignoreMajorVersions[dependencyName]
if (ignored !== undefined) {
const res = 'minor';
console.log(`\nšŸ‘€ ļø${dependencyName} is pinned to ${res}. Reason: ${ignored}`);
return res;
}
return 'latest';
},
};
// @ts-check
import eslint from '@eslint/js'
import tseslint from 'typescript-eslint'
import tsdoceslint from 'eslint-plugin-tsdoc'
export default tseslint.config({
files: ['**/*.ts'],
extends: [eslint.configs.recommended, ...tseslint.configs.strict, ...tseslint.configs.stylistic],
plugins: {
tsdoc: tsdoceslint,
},
rules: {
'tsdoc/syntax': 'error',
'@typescript-eslint/array-type': 'off',
'@typescript-eslint/consistent-type-definitions': 'off',
},
})
import * as Canvas from 'canvas';
export type CanvasAndContext = {
context: Canvas.CanvasRenderingContext2D;
set: (width: number, height: number) => void;
destroy: () => void;
};
export declare function mkCanvas(): CanvasAndContext;
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.mkCanvas = mkCanvas;
const Canvas = require("canvas");
const assert = require("assert");
function mkCanvas() {
let canvas = Canvas.createCanvas(1, 1);
let context = canvas.getContext('2d');
return {
context,
set: (width, height) => {
assert.ok(width > 0 && height > 0, 'Invalid canvas size');
canvas.width = width;
canvas.height = height;
},
destroy: () => {
canvas.width = 0;
canvas.height = 0;
// eslint-disable-next-line @typescript-eslint/ban-ts-comment
// @ts-ignore
canvas = null;
// eslint-disable-next-line @typescript-eslint/ban-ts-comment
// @ts-ignore
context = null;
},
};
}
//# sourceMappingURL=nodeCanvasFactory.js.map
{"version":3,"file":"nodeCanvasFactory.js","sourceRoot":"","sources":["../../src/pdf2png/nodeCanvasFactory.ts"],"names":[],"mappings":";;AASA,4BAqBC;AA9BD,iCAAgC;AAChC,iCAAgC;AAQhC,SAAgB,QAAQ;IACtB,IAAI,MAAM,GAAG,MAAM,CAAC,YAAY,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;IACtC,IAAI,OAAO,GAAG,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,CAAA;IACrC,OAAO;QACL,OAAO;QACP,GAAG,EAAE,CAAC,KAAa,EAAE,MAAc,EAAQ,EAAE;YAC3C,MAAM,CAAC,EAAE,CAAC,KAAK,GAAG,CAAC,IAAI,MAAM,GAAG,CAAC,EAAE,qBAAqB,CAAC,CAAA;YACzD,MAAM,CAAC,KAAK,GAAG,KAAK,CAAA;YACpB,MAAM,CAAC,MAAM,GAAG,MAAM,CAAA;QACxB,CAAC;QACD,OAAO,EAAE,GAAG,EAAE;YACZ,MAAM,CAAC,KAAK,GAAG,CAAC,CAAA;YAChB,MAAM,CAAC,MAAM,GAAG,CAAC,CAAA;YACjB,6DAA6D;YAC7D,aAAa;YACb,MAAM,GAAG,IAAI,CAAA;YACb,6DAA6D;YAC7D,aAAa;YACb,OAAO,GAAG,IAAI,CAAA;QAChB,CAAC;KACF,CAAA;AACH,CAAC"}