Skip to content

Commit 26e2e64

Browse files
authored
Merge pull request #52 from andriivitiv/76303-Move-responsibility-for-configuring-PDF-worker-to-the-consumer
Move responsibility for configuring PDF worker to the consumer
2 parents 0388690 + 7946880 commit 26e2e64

File tree

8 files changed

+13
-8
lines changed

8 files changed

+13
-8
lines changed

example/package-lock.json

Lines changed: 3 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

example/package.json

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,9 @@
3535
"react-dom": "^18.2.0",
3636
"react-fast-pdf": "^1.0.23"
3737
},
38+
"peerDependencies": {
39+
"pdfjs-dist": "^4.x || ^5.x"
40+
},
3841
"devDependencies": {
3942
"@babel/cli": "^7.22.9",
4043
"@babel/core": "^7.22.9",

example/src/App.tsx

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,11 @@
11
import React, {useState} from 'react';
2+
import pdfWorkerSource from 'pdfjs-dist/build/pdf.worker.min.mjs';
3+
import * as pdfjs from 'pdfjs-dist';
24
import ReactFastPDF, {PDFPreviewer} from 'react-fast-pdf';
35
import './index.css';
46

7+
pdfjs.GlobalWorkerOptions.workerSrc = URL.createObjectURL(new Blob([pdfWorkerSource], {type: 'text/javascript'}));
8+
59
function App() {
610
const [file, setFile] = useState<string | null>(null);
711

package-lock.json

Lines changed: 0 additions & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,6 @@
3535
},
3636
"peerDependencies": {
3737
"lodash": "4.x",
38-
"pdfjs-dist": "5.4.296",
3938
"react": "18.x",
4039
"react-dom": "18.x"
4140
},

src/PDFPreviewer.tsx

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,8 @@
1-
import pdfWorkerSource from 'pdfjs-dist/build/pdf.worker.min.mjs';
21
import React, {memo, useCallback, useLayoutEffect, useRef, useState} from 'react';
32
import type {CSSProperties, ReactNode} from 'react';
43
import times from 'lodash/times.js';
54
import {VariableSizeList as List} from 'react-window';
6-
import {Document, pdfjs} from 'react-pdf';
5+
import {Document} from 'react-pdf';
76
import 'react-pdf/dist/Page/AnnotationLayer.css';
87
import 'react-pdf/dist/Page/TextLayer.css';
98

@@ -32,8 +31,6 @@ type Props = {
3231

3332
type OnPasswordCallback = (password: string | null) => void;
3433

35-
pdfjs.GlobalWorkerOptions.workerSrc = URL.createObjectURL(new Blob([pdfWorkerSource], {type: 'text/javascript'}));
36-
3734
const DefaultLoadingComponent = <p>Loading...</p>;
3835
const DefaultErrorComponent = <p>Failed to load the PDF file :(</p>;
3936

src/index.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,9 @@
1+
import {pdfjs} from 'react-pdf';
12
import PDFPreviewer from './PDFPreviewer.js';
23

34
const PACKAGE_NAME = 'react-fast-pdf';
45

5-
export {PDFPreviewer};
6+
export {PDFPreviewer, pdfjs};
67

78
export default {
89
PackageName: PACKAGE_NAME,

src/pdf.worker.d.ts

Lines changed: 0 additions & 1 deletion
This file was deleted.

0 commit comments

Comments
 (0)