@pdfslick/react 3.1.0 → 4.0.0
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/esm/PDFSlickThumbnails.d.ts +1 -1
- package/dist/esm/PDFSlickThumbnails.d.ts.map +1 -1
- package/dist/esm/PDFSlickViewer.d.ts +1 -1
- package/dist/esm/PDFSlickViewer.d.ts.map +1 -1
- package/dist/esm/hooks.d.ts +23 -0
- package/dist/esm/hooks.d.ts.map +1 -0
- package/dist/esm/index.js +42 -2
- package/dist/pdf_viewer.css +2343 -1707
- package/dist/umd/PDFSlickThumbnails.d.ts +1 -1
- package/dist/umd/PDFSlickThumbnails.d.ts.map +1 -1
- package/dist/umd/PDFSlickViewer.d.ts +1 -1
- package/dist/umd/PDFSlickViewer.d.ts.map +1 -1
- package/dist/umd/hooks.d.ts +23 -0
- package/dist/umd/hooks.d.ts.map +1 -0
- package/dist/umd/index.js +4 -4
- package/package.json +3 -5
|
@@ -16,5 +16,5 @@ export type PDFSlickThumbnailsContainerProps = {
|
|
|
16
16
|
usePDFSlickStore: TUsePDFSlickStore;
|
|
17
17
|
className?: string;
|
|
18
18
|
};
|
|
19
|
-
export declare function PDFSlickThumbnails({ children: renderChild, thumbsRef, usePDFSlickStore, className, }: PDFSlickThumbnailsContainerProps): import("react
|
|
19
|
+
export declare function PDFSlickThumbnails({ children: renderChild, thumbsRef, usePDFSlickStore, className, }: PDFSlickThumbnailsContainerProps): import("react").JSX.Element;
|
|
20
20
|
//# sourceMappingURL=PDFSlickThumbnails.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
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
|
|
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,+BA8ClC"}
|
|
@@ -4,5 +4,5 @@ export type PDFSlickViewerProps = {
|
|
|
4
4
|
usePDFSlickStore: TUsePDFSlickStore;
|
|
5
5
|
className?: string;
|
|
6
6
|
};
|
|
7
|
-
export default function PDFSlickViewer({ usePDFSlickStore, viewerRef, className, }: PDFSlickViewerProps): import("react
|
|
7
|
+
export default function PDFSlickViewer({ usePDFSlickStore, viewerRef, className, }: PDFSlickViewerProps): import("react").JSX.Element;
|
|
8
8
|
//# sourceMappingURL=PDFSlickViewer.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
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
|
|
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,+BAyCrB"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { type DependencyList } from "react";
|
|
2
|
+
type Rect = {
|
|
3
|
+
width: number;
|
|
4
|
+
height: number;
|
|
5
|
+
};
|
|
6
|
+
/**
|
|
7
|
+
* Minimal `ResizeObserver`-based measure hook. Returns a stable callback ref to
|
|
8
|
+
* attach to an element plus the element's content-box size. Replaces
|
|
9
|
+
* `react-use`'s `useMeasure` (we only consume `width`), so `@pdfslick/react`
|
|
10
|
+
* carries no `react-use`/`js-cookie` transitive dependency.
|
|
11
|
+
*/
|
|
12
|
+
export declare function useMeasure<T extends HTMLElement = HTMLElement>(): [
|
|
13
|
+
(el: T | null) => void,
|
|
14
|
+
Rect
|
|
15
|
+
];
|
|
16
|
+
/**
|
|
17
|
+
* Minimal debounce hook mirroring `react-use`'s `useDebounce(fn, ms, deps)`:
|
|
18
|
+
* runs `fn` once `deps` have been stable for `ms`. The `[isReady, cancel]`
|
|
19
|
+
* tuple `react-use` returns is unused here, so this resolves to `void`.
|
|
20
|
+
*/
|
|
21
|
+
export declare function useDebounce(fn: () => void, ms: number, deps: DependencyList): void;
|
|
22
|
+
export {};
|
|
23
|
+
//# sourceMappingURL=hooks.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"hooks.d.ts","sourceRoot":"","sources":["../hooks.ts"],"names":[],"mappings":"AACA,OAAO,EAA4C,KAAK,cAAc,EAAE,MAAM,OAAO,CAAC;AAEtF,KAAK,IAAI,GAAG;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC;AAE9C;;;;;GAKG;AACH,wBAAgB,UAAU,CAAC,CAAC,SAAS,WAAW,GAAG,WAAW,KAAK;IACjE,CAAC,EAAE,EAAE,CAAC,GAAG,IAAI,KAAK,IAAI;IACtB,IAAI;CACL,CAuBA;AAED;;;;GAIG;AACH,wBAAgB,WAAW,CACzB,EAAE,EAAE,MAAM,IAAI,EACd,EAAE,EAAE,MAAM,EACV,IAAI,EAAE,cAAc,GACnB,IAAI,CAMN"}
|
package/dist/esm/index.js
CHANGED
|
@@ -1,9 +1,8 @@
|
|
|
1
|
-
import React, { useState,
|
|
1
|
+
import React, { useState, useRef, useCallback, useEffect, useMemo } from 'react';
|
|
2
2
|
import useSyncExternalStoreExports from 'use-sync-external-store/shim/with-selector.js';
|
|
3
3
|
import { create, PDFSlick } from '@pdfslick/core';
|
|
4
4
|
export * from '@pdfslick/core';
|
|
5
5
|
import { jsx } from 'react/jsx-runtime';
|
|
6
|
-
import { useMeasure, useDebounce } from 'react-use';
|
|
7
6
|
import { createPortal } from 'react-dom';
|
|
8
7
|
|
|
9
8
|
const { useSyncExternalStoreWithSelector } = useSyncExternalStoreExports;
|
|
@@ -20,6 +19,47 @@ function useStoreWithEqualityFn(api, selector = identity, equalityFn) {
|
|
|
20
19
|
return slice;
|
|
21
20
|
}
|
|
22
21
|
|
|
22
|
+
/// <reference lib="dom" />
|
|
23
|
+
/**
|
|
24
|
+
* Minimal `ResizeObserver`-based measure hook. Returns a stable callback ref to
|
|
25
|
+
* attach to an element plus the element's content-box size. Replaces
|
|
26
|
+
* `react-use`'s `useMeasure` (we only consume `width`), so `@pdfslick/react`
|
|
27
|
+
* carries no `react-use`/`js-cookie` transitive dependency.
|
|
28
|
+
*/
|
|
29
|
+
function useMeasure() {
|
|
30
|
+
const [rect, setRect] = useState({ width: 0, height: 0 });
|
|
31
|
+
const observerRef = useRef(null);
|
|
32
|
+
const ref = useCallback((el) => {
|
|
33
|
+
var _a;
|
|
34
|
+
(_a = observerRef.current) === null || _a === void 0 ? void 0 : _a.disconnect();
|
|
35
|
+
observerRef.current = null;
|
|
36
|
+
if (el && typeof ResizeObserver !== "undefined") {
|
|
37
|
+
observerRef.current = new ResizeObserver((entries) => {
|
|
38
|
+
const entry = entries[0];
|
|
39
|
+
if (entry) {
|
|
40
|
+
const { width, height } = entry.contentRect;
|
|
41
|
+
setRect({ width, height });
|
|
42
|
+
}
|
|
43
|
+
});
|
|
44
|
+
observerRef.current.observe(el);
|
|
45
|
+
}
|
|
46
|
+
}, []);
|
|
47
|
+
useEffect(() => () => { var _a; return (_a = observerRef.current) === null || _a === void 0 ? void 0 : _a.disconnect(); }, []);
|
|
48
|
+
return [ref, rect];
|
|
49
|
+
}
|
|
50
|
+
/**
|
|
51
|
+
* Minimal debounce hook mirroring `react-use`'s `useDebounce(fn, ms, deps)`:
|
|
52
|
+
* runs `fn` once `deps` have been stable for `ms`. The `[isReady, cancel]`
|
|
53
|
+
* tuple `react-use` returns is unused here, so this resolves to `void`.
|
|
54
|
+
*/
|
|
55
|
+
function useDebounce(fn, ms, deps) {
|
|
56
|
+
useEffect(() => {
|
|
57
|
+
const timeout = setTimeout(fn, ms);
|
|
58
|
+
return () => clearTimeout(timeout);
|
|
59
|
+
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
60
|
+
}, deps);
|
|
61
|
+
}
|
|
62
|
+
|
|
23
63
|
function PDFSlickViewer({ usePDFSlickStore, viewerRef, className, }) {
|
|
24
64
|
const pdfSlick = usePDFSlickStore((s) => s.pdfSlick);
|
|
25
65
|
const scaleValue = usePDFSlickStore((s) => s.scaleValue);
|