Skip to content

Commit 3e1941a

Browse files
committed
[breaking] Update pdfjs-dist to 4.0.379
1 parent 0cbb75a commit 3e1941a

29 files changed

+228
-386
lines changed

packages/react-pdf/README.md

+15-15
Large diffs are not rendered by default.

packages/react-pdf/package.json

+1-1
Original file line numberDiff line numberDiff line change
@@ -59,7 +59,7 @@
5959
"make-cancellable-promise": "^1.3.1",
6060
"make-event-props": "^1.6.0",
6161
"merge-refs": "^1.2.1",
62-
"pdfjs-dist": "3.11.174",
62+
"pdfjs-dist": "4.0.379",
6363
"prop-types": "^15.6.2",
6464
"tiny-invariant": "^1.0.0",
6565
"warning": "^4.0.0"

packages/react-pdf/src/Document.tsx

+1-3
Original file line numberDiff line numberDiff line change
@@ -199,9 +199,7 @@ export type DocumentProps = {
199199
*/
200200
options?: Options;
201201
/**
202-
* Rendering mode of the document. Can be `"canvas"`, `"custom"`, `"none"` or `"svg"`. If set to `"custom"`, `customRenderer` must also be provided.
203-
*
204-
* **Warning**: SVG render mode is deprecated and will be removed in the future.
202+
* Rendering mode of the document. Can be `"canvas"`, `"custom"` or `"none"``. If set to `"custom"`, `customRenderer` must also be provided.
205203
*
206204
* @default 'canvas'
207205
* @example 'custom'

packages/react-pdf/src/Page.spec.tsx

+2-44
Original file line numberDiff line numberDiff line change
@@ -274,7 +274,7 @@ describe('Page', () => {
274274
expect(inputRef.current).toBeInstanceOf(HTMLDivElement);
275275
});
276276

277-
it('passes canvas element to PageCanvas properly', async () => {
277+
it('passes canvas element to Canvas properly', async () => {
278278
const { func: onLoadSuccess, promise: onLoadSuccessPromise } = makeAsyncCallback();
279279

280280
const canvasRef = createRef<HTMLCanvasElement>();
@@ -475,15 +475,13 @@ describe('Page', () => {
475475
},
476476
);
477477

478-
expect.assertions(2);
478+
expect.assertions(1);
479479

480480
await onLoadSuccessPromise;
481481

482482
const pageCanvas = container.querySelector('.react-pdf__Page__canvas');
483-
const pageSVG = container.querySelector('.react-pdf__Page__svg');
484483

485484
expect(pageCanvas).not.toBeInTheDocument();
486-
expect(pageSVG).not.toBeInTheDocument();
487485
});
488486

489487
it('requests page to be rendered in canvas mode when given renderMode = "canvas"', async () => {
@@ -535,26 +533,6 @@ describe('Page', () => {
535533
expect(customRenderer).toBeInTheDocument();
536534
});
537535

538-
it('requests page to be rendered in SVG mode when given renderMode = "svg"', async () => {
539-
const { func: onLoadSuccess, promise: onLoadSuccessPromise } = makeAsyncCallback();
540-
541-
const { container } = renderWithContext(
542-
<Page onLoadSuccess={onLoadSuccess} pageIndex={0} renderMode="svg" />,
543-
{
544-
linkService,
545-
pdf,
546-
},
547-
);
548-
549-
expect.assertions(1);
550-
551-
await onLoadSuccessPromise;
552-
553-
const pageSVG = container.querySelector('.react-pdf__Page__svg');
554-
555-
expect(pageSVG).toBeInTheDocument();
556-
});
557-
558536
it('requests text content to be rendered by default', async () => {
559537
const { func: onLoadSuccess, promise: onLoadSuccessPromise } = makeAsyncCallback();
560538

@@ -665,26 +643,6 @@ describe('Page', () => {
665643
expect(textLayer).toBeInTheDocument();
666644
});
667645

668-
it('renders TextLayer when given renderMode = "svg"', async () => {
669-
const { func: onLoadSuccess, promise: onLoadSuccessPromise } = makeAsyncCallback();
670-
671-
const { container } = renderWithContext(
672-
<Page onLoadSuccess={onLoadSuccess} pageIndex={0} renderMode="svg" renderTextLayer />,
673-
{
674-
linkService,
675-
pdf,
676-
},
677-
);
678-
679-
expect.assertions(1);
680-
681-
await onLoadSuccessPromise;
682-
683-
const textLayer = container.querySelector('.react-pdf__Page__textContent');
684-
685-
expect(textLayer).toBeInTheDocument();
686-
});
687-
688646
it('requests annotations to be rendered by default', async () => {
689647
const { func: onLoadSuccess, promise: onLoadSuccessPromise } = makeAsyncCallback();
690648

packages/react-pdf/src/Page.tsx

+5-12
Original file line numberDiff line numberDiff line change
@@ -12,8 +12,7 @@ import warning from 'warning';
1212
import PageContext from './PageContext.js';
1313

1414
import Message from './Message.js';
15-
import PageCanvas from './Page/PageCanvas.js';
16-
import PageSVG from './Page/PageSVG.js';
15+
import Canvas from './Page/Canvas.js';
1716
import TextLayer from './Page/TextLayer.js';
1817
import AnnotationLayer from './Page/AnnotationLayer.js';
1918

@@ -63,13 +62,13 @@ export type PageProps = {
6362
_className?: string;
6463
_enableRegisterUnregisterPage?: boolean;
6564
/**
66-
* Canvas background color. Any valid `canvas.fillStyle` can be used. If you set `renderMode` to `"svg"` this prop will be ignored.
65+
* Canvas background color. Any valid `canvas.fillStyle` can be used.
6766
*
6867
* @example 'transparent'
6968
*/
7069
canvasBackground?: string;
7170
/**
72-
* A prop that behaves like [ref](https://reactjs.org/docs/refs-and-the-dom.html), but it's passed to `<canvas>` rendered by `<PageCanvas>` component. If you set `renderMode` to `"svg"` this prop will be ignored.
71+
* A prop that behaves like [ref](https://reactjs.org/docs/refs-and-the-dom.html), but it's passed to `<canvas>` rendered by `<PageCanvas>` component.
7372
*
7473
* @example (ref) => { this.myCanvas = ref; }
7574
* @example this.ref
@@ -271,9 +270,7 @@ export type PageProps = {
271270
*/
272271
renderForms?: boolean;
273272
/**
274-
* Rendering mode of the document. Can be `"canvas"`, `"custom"`, `"none"` or `"svg"`. If set to `"custom"`, `customRenderer` must also be provided.
275-
*
276-
* **Warning**: SVG render mode is deprecated and will be removed in the future.
273+
* Rendering mode of the document. Can be `"canvas"`, `"custom"` or `"none"`. If set to `"custom"`, `customRenderer` must also be provided.
277274
*
278275
* @default 'canvas'
279276
* @example 'custom'
@@ -569,8 +566,6 @@ const Page: React.FC<PageProps> = function Page(props) {
569566

570567
const pageKey = `${pageIndex}@${scale}/${rotate}`;
571568

572-
const pageKeyNoScale = `${pageIndex}/${rotate}`;
573-
574569
function renderMainLayer() {
575570
switch (renderMode) {
576571
case 'custom': {
@@ -583,11 +578,9 @@ const Page: React.FC<PageProps> = function Page(props) {
583578
}
584579
case 'none':
585580
return null;
586-
case 'svg':
587-
return <PageSVG key={`${pageKeyNoScale}_svg`} />;
588581
case 'canvas':
589582
default:
590-
return <PageCanvas key={`${pageKey}_canvas`} canvasRef={canvasRef} />;
583+
return <Canvas key={`${pageKey}_canvas`} canvasRef={canvasRef} />;
591584
}
592585
}
593586

packages/react-pdf/src/Page/PageCanvas.spec.tsx renamed to packages/react-pdf/src/Page/Canvas.spec.tsx

+7-7
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ import { render } from '@testing-library/react';
44

55
import { pdfjs } from '../index.test.js';
66

7-
import PageCanvas from './PageCanvas.js';
7+
import Canvas from './Canvas.js';
88

99
import failingPage from '../../../../__mocks__/_failing_page.js';
1010

@@ -33,7 +33,7 @@ function renderWithContext(children: React.ReactNode, context: Partial<PageConte
3333
};
3434
}
3535

36-
describe('PageCanvas', () => {
36+
describe('Canvas', () => {
3737
// Loaded page
3838
let page: PDFPageProxy;
3939
let pageWithRendererMocked: PDFPageProxy;
@@ -59,7 +59,7 @@ describe('PageCanvas', () => {
5959

6060
muteConsole();
6161

62-
renderWithContext(<PageCanvas />, {
62+
renderWithContext(<Canvas />, {
6363
onRenderSuccess,
6464
page: pageWithRendererMocked,
6565
scale: 1,
@@ -77,7 +77,7 @@ describe('PageCanvas', () => {
7777

7878
muteConsole();
7979

80-
renderWithContext(<PageCanvas />, {
80+
renderWithContext(<Canvas />, {
8181
onRenderError,
8282
page: failingPage,
8383
scale: 1,
@@ -95,7 +95,7 @@ describe('PageCanvas', () => {
9595
it('passes canvas element to canvasRef properly', () => {
9696
const canvasRef = vi.fn();
9797

98-
renderWithContext(<PageCanvas canvasRef={canvasRef} />, {
98+
renderWithContext(<Canvas canvasRef={canvasRef} />, {
9999
page: pageWithRendererMocked,
100100
scale: 1,
101101
});
@@ -107,7 +107,7 @@ describe('PageCanvas', () => {
107107
it('does not request structure tree to be rendered when renderTextLayer = false', async () => {
108108
const { func: onRenderSuccess, promise: onRenderSuccessPromise } = makeAsyncCallback();
109109

110-
const { container } = renderWithContext(<PageCanvas />, {
110+
const { container } = renderWithContext(<Canvas />, {
111111
onRenderSuccess,
112112
page: pageWithRendererMocked,
113113
renderTextLayer: false,
@@ -124,7 +124,7 @@ describe('PageCanvas', () => {
124124
const { func: onGetStructTreeSuccess, promise: onGetStructTreeSuccessPromise } =
125125
makeAsyncCallback();
126126

127-
const { container } = renderWithContext(<PageCanvas />, {
127+
const { container } = renderWithContext(<Canvas />, {
128128
onGetStructTreeSuccess,
129129
page: pageWithRendererMocked,
130130
renderTextLayer: true,

packages/react-pdf/src/Page/PageCanvas.tsx renamed to packages/react-pdf/src/Page/Canvas.tsx

+2-2
Original file line numberDiff line numberDiff line change
@@ -20,11 +20,11 @@ import type { RenderParameters } from 'pdfjs-dist/types/src/display/api.js';
2020

2121
const ANNOTATION_MODE = pdfjs.AnnotationMode;
2222

23-
type PageCanvasProps = {
23+
type CanvasProps = {
2424
canvasRef?: React.Ref<HTMLCanvasElement>;
2525
};
2626

27-
export default function PageCanvas(props: PageCanvasProps) {
27+
export default function Canvas(props: CanvasProps) {
2828
const pageContext = usePageContext();
2929

3030
invariant(pageContext, 'Unable to find Page context.');

packages/react-pdf/src/Page/PageSVG.spec.tsx

-89
This file was deleted.

0 commit comments

Comments
 (0)