@pdfslick/react 1.0.0 → 1.1.1

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pdfslick/react",
3
- "version": "1.0.0",
3
+ "version": "1.1.1",
4
4
  "source": "./index.tsx",
5
5
  "main": "dist/umd/index.js",
6
6
  "module": "dist/esm/index.js",
@@ -27,7 +27,7 @@
27
27
  "scripts": {
28
28
  "lint": "eslint \"**/*.ts*\"",
29
29
  "dev": "concurrently \"rollup --config node:@pdfslick/rollup-config --watch\" \"wait-on ./dist && cp ../core/dist/pdf_viewer.css ./dist\"",
30
- "build": "rollup --config node:@pdfslick/rollup-config --environment NODE_ENV:production"
30
+ "build": "rollup --config node:@pdfslick/rollup-config --environment NODE_ENV:production && cp ../core/dist/pdf_viewer.css ./dist && cp ../core/dist/pdf_viewer.css ./dist && cp ../../README.md ./dist"
31
31
  },
32
32
  "devDependencies": {
33
33
  "@types/react": "^18.0.22",
@@ -1,20 +0,0 @@
1
- import { ReactNode } from "react";
2
- import type { TUsePDFSlickStore } from "./";
3
- export type PDFSlickThumbProps = {
4
- pageNumber: number;
5
- width: number;
6
- height: number;
7
- scale: number;
8
- rotation: number;
9
- loaded: boolean;
10
- pageLabel: string | null;
11
- src: string | null;
12
- };
13
- export type PDFSlickThumbnailsContainerProps = {
14
- children: ({ pageNumber, src, width, height, scale, rotation, pageLabel, loaded, }: PDFSlickThumbProps) => ReactNode;
15
- thumbsRef: (instance: HTMLElement | null) => void;
16
- usePDFSlickStore: TUsePDFSlickStore;
17
- className?: string;
18
- };
19
- export declare function PDFSlickThumbnails({ children: renderChild, thumbsRef, usePDFSlickStore, className, }: PDFSlickThumbnailsContainerProps): JSX.Element;
20
- //# sourceMappingURL=PDFSlickThumbnails.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"PDFSlickThumbnails.d.ts","sourceRoot":"","sources":["../PDFSlickThumbnails.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAGlC,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,IAAI,CAAC;AAE5C,MAAM,MAAM,kBAAkB,GAAG;IAC/B,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,OAAO,CAAC;IAChB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;CACpB,CAAC;AAEF,MAAM,MAAM,gCAAgC,GAAG;IAC7C,QAAQ,EAAE,CAAC,EACT,UAAU,EACV,GAAG,EACH,KAAK,EACL,MAAM,EACN,KAAK,EACL,QAAQ,EACR,SAAS,EACT,MAAM,GACP,EAAE,kBAAkB,KAAK,SAAS,CAAC;IACpC,SAAS,EAAE,CAAC,QAAQ,EAAE,WAAW,GAAG,IAAI,KAAK,IAAI,CAAC;IAClD,gBAAgB,EAAE,iBAAiB,CAAC;IACpC,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF,wBAAgB,kBAAkB,CAAC,EACjC,QAAQ,EAAE,WAAW,EACrB,SAAS,EACT,gBAAgB,EAChB,SAAS,GACV,EAAE,gCAAgC,eA8ClC"}
@@ -1,10 +0,0 @@
1
- /// <reference types="react" />
2
- /// <reference types="react" />
3
- import type { TUsePDFSlickStore } from "@pdfslick/react";
4
- export type PDFSlickViewerProps = {
5
- viewerRef: (instance: HTMLElement) => void;
6
- usePDFSlickStore: TUsePDFSlickStore;
7
- className?: string;
8
- };
9
- export default function PDFSlickViewer({ usePDFSlickStore, viewerRef, className, }: PDFSlickViewerProps): JSX.Element;
10
- //# sourceMappingURL=PDFSlickViewer.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"PDFSlickViewer.d.ts","sourceRoot":"","sources":["../PDFSlickViewer.tsx"],"names":[],"mappings":";;AACA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AAEzD,MAAM,MAAM,mBAAmB,GAAG;IAChC,SAAS,EAAE,CAAC,QAAQ,EAAE,WAAW,KAAK,IAAI,CAAC;IAC3C,gBAAgB,EAAE,iBAAiB,CAAC;IACpC,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF,MAAM,CAAC,OAAO,UAAU,cAAc,CAAC,EACrC,gBAAgB,EAChB,SAAS,EACT,SAAS,GACV,EAAE,mBAAmB,eAwCrB"}
@@ -1,4 +0,0 @@
1
- export * from "./usePDFSlick";
2
- export * from "./PDFSlickThumbnails";
3
- export * from "@pdfslick/core";
4
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../index.tsx"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAC;AAC9B,cAAc,sBAAsB,CAAA;AACpC,cAAc,gBAAgB,CAAA"}
package/dist/esm/index.js DELETED
@@ -1,116 +0,0 @@
1
- import { useState, useMemo, useCallback, useEffect } from 'react';
2
- import { useStore } from 'zustand';
3
- import { create, PDFSlick } from '@pdfslick/core';
4
- export * from '@pdfslick/core';
5
- import { jsx } from 'react/jsx-runtime';
6
- import { useMeasure, useDebounce } from 'react-use';
7
- import { createPortal } from 'react-dom';
8
-
9
- function PDFSlickViewer({ usePDFSlickStore, viewerRef, className, }) {
10
- const pdfSlick = usePDFSlickStore((s) => s.pdfSlick);
11
- const scaleValue = usePDFSlickStore((s) => s.scaleValue);
12
- const [resizeRef, { width }] = useMeasure();
13
- useDebounce(() => {
14
- if (width) {
15
- if (pdfSlick &&
16
- (scaleValue === "auto" ||
17
- scaleValue === "page-fit" ||
18
- scaleValue === "page-width")) {
19
- pdfSlick.viewer.currentScaleValue = scaleValue;
20
- }
21
- pdfSlick === null || pdfSlick === void 0 ? void 0 : pdfSlick.viewer.update();
22
- }
23
- }, 0, [width]);
24
- return (jsx("div", Object.assign({ ref: (el) => {
25
- viewerRef(el);
26
- resizeRef(el);
27
- }, id: "viewerContainer", className: `pdfSlickContainer ${className !== null && className !== void 0 ? className : ""}`, style: {
28
- position: "absolute",
29
- inset: 0,
30
- } }, { children: jsx("div", { id: "viewer", className: "pdfSlickViewer pdfViewer" }) })));
31
- }
32
-
33
- function PDFSlickThumbnails({ children: renderChild, thumbsRef, usePDFSlickStore, className, }) {
34
- const thumbnailViews = usePDFSlickStore((s) => s.thumbnailViews);
35
- const pdfSlick = usePDFSlickStore((s) => s.pdfSlick);
36
- const [resizeRef, { width }] = useMeasure();
37
- useDebounce(() => {
38
- if (width) {
39
- pdfSlick === null || pdfSlick === void 0 ? void 0 : pdfSlick.forceRendering();
40
- }
41
- }, 0, [width]);
42
- return (jsx("div", Object.assign({ ref: (el) => {
43
- thumbsRef(el);
44
- resizeRef(el);
45
- } }, { className }, { style: {
46
- position: "absolute",
47
- overflow: "auto",
48
- inset: 0
49
- } }, { children: Array.from(thumbnailViews).map(([pageNumber, view]) => {
50
- var _a;
51
- return createPortal(renderChild({
52
- pageNumber,
53
- width: view.canvasWidth,
54
- height: view.canvasHeight,
55
- scale: view.scale,
56
- src: (_a = view === null || view === void 0 ? void 0 : view.src) !== null && _a !== void 0 ? _a : null,
57
- rotation: view.rotation,
58
- pageLabel: view.pageLabel,
59
- loaded: view.loaded,
60
- }), view.div);
61
- }) })));
62
- }
63
-
64
- function createStore(store) {
65
- function usePDFSlickStore(selector, equals) {
66
- return useStore(store, selector, equals);
67
- }
68
- return usePDFSlickStore;
69
- }
70
- /**
71
- *
72
- * @param url PDF Document path
73
- * @param options PDFSlick Options
74
- * @returns
75
- */
76
- const usePDFSlick = (url, options) => {
77
- const [isDocumentLoaded, setIsDocumentLoaded] = useState(false);
78
- const [container, setContainer] = useState(null);
79
- const [thumbs, setThumbs] = useState(null);
80
- const store = useMemo(() => create(), []);
81
- const usePDFSlickStore = useMemo(() => createStore(store), []);
82
- const viewerRef = useCallback((node) => {
83
- if (node !== null) {
84
- setContainer(node);
85
- }
86
- }, []);
87
- const thumbsRef = useCallback((node) => {
88
- if (node !== null) {
89
- setThumbs(node);
90
- }
91
- }, []);
92
- useEffect(() => {
93
- if (url && container) {
94
- const pdfSlick = new PDFSlick({
95
- container,
96
- thumbs: thumbs,
97
- store,
98
- options,
99
- });
100
- pdfSlick.loadDocument(url, options).then(() => setIsDocumentLoaded(true));
101
- store.setState({ pdfSlick });
102
- }
103
- return () => { };
104
- }, [url, container]);
105
- return {
106
- isDocumentLoaded,
107
- viewerRef,
108
- thumbsRef,
109
- usePDFSlickStore,
110
- store,
111
- PDFSlickViewer,
112
- PDFSlickThumbnails,
113
- };
114
- };
115
-
116
- export { PDFSlickThumbnails, createStore, usePDFSlick };
@@ -1,32 +0,0 @@
1
- /// <reference types="node" />
2
- import { RefCallback } from "react";
3
- import { StoreApi } from "zustand";
4
- import type { PDFSlickState, PDFSlickOptions } from "@pdfslick/core";
5
- import PDFSlickViewer from "./PDFSlickViewer";
6
- import { PDFSlickThumbnails } from "./PDFSlickThumbnails";
7
- export type TUsePDFSlickStore = {
8
- (): PDFSlickState;
9
- <T>(selector: (state: PDFSlickState) => T, equals?: ((a: T, b: T) => boolean) | undefined): T;
10
- };
11
- type TUsePDFSlick = (url: string | URL | undefined, options?: PDFSlickOptions) => {
12
- isDocumentLoaded: boolean;
13
- viewerRef: RefCallback<HTMLElement>;
14
- thumbsRef: RefCallback<HTMLElement>;
15
- store: StoreApi<PDFSlickState>;
16
- usePDFSlickStore: TUsePDFSlickStore;
17
- PDFSlickViewer: typeof PDFSlickViewer;
18
- PDFSlickThumbnails: typeof PDFSlickThumbnails;
19
- };
20
- export declare function createStore(store: StoreApi<PDFSlickState>): {
21
- (): PDFSlickState;
22
- <T>(selector: (state: PDFSlickState) => T, equals?: ((a: T, b: T) => boolean) | undefined): T;
23
- };
24
- /**
25
- *
26
- * @param url PDF Document path
27
- * @param options PDFSlick Options
28
- * @returns
29
- */
30
- export declare const usePDFSlick: TUsePDFSlick;
31
- export {};
32
- //# sourceMappingURL=usePDFSlick.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"usePDFSlick.d.ts","sourceRoot":"","sources":["../usePDFSlick.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAoC,WAAW,EAAW,MAAM,OAAO,CAAC;AAC/E,OAAO,EAAE,QAAQ,EAAY,MAAM,SAAS,CAAC;AAE7C,OAAO,KAAK,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AACrE,OAAO,cAAc,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAE1D,MAAM,MAAM,iBAAiB,GAAG;IAC9B,IAAI,aAAa,CAAC;IAClB,CAAC,CAAC,EACA,QAAQ,EAAE,CAAC,KAAK,EAAE,aAAa,KAAK,CAAC,EACrC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,OAAO,CAAC,GAAG,SAAS,GAC7C,CAAC,CAAC;CACN,CAAC;AAEF,KAAK,YAAY,GAAG,CAClB,GAAG,EAAE,MAAM,GAAG,GAAG,GAAG,SAAS,EAE7B,OAAO,CAAC,EAAE,eAAe,KACtB;IACH,gBAAgB,EAAE,OAAO,CAAC;IAC1B,SAAS,EAAE,WAAW,CAAC,WAAW,CAAC,CAAC;IACpC,SAAS,EAAE,WAAW,CAAC,WAAW,CAAC,CAAC;IACpC,KAAK,EAAE,QAAQ,CAAC,aAAa,CAAC,CAAC;IAC/B,gBAAgB,EAAE,iBAAiB,CAAC;IACpC,cAAc,EAAE,OAAO,cAAc,CAAC;IACtC,kBAAkB,EAAE,OAAO,kBAAkB,CAAC;CAC/C,CAAC;AAEF,wBAAgB,WAAW,CAAC,KAAK,EAAE,QAAQ,CAAC,aAAa,CAAC;QAC3B,aAAa;0BAEtB,aAAa,kCACN,OAAO;EAUnC;AAED;;;;;GAKG;AACH,eAAO,MAAM,WAAW,EAAE,YA+CzB,CAAC"}