UNPKG

@pdf-viewer/react

Version:

A react-pdf-viewer component for React and Next.js. Suitable for react-pdf document.

54 lines (53 loc) 2.38 kB
import { jsxs as p, Fragment as i, jsx as o } from "react/jsx-runtime"; import { useCallback as u } from "react"; import { c as D } from "../clsx-0c6e471a.js"; import { useDropFileZoneContext as g } from "../contexts/DropFileZoneContext.js"; import { LightPdfIcon as h } from "./icons/LightPdfIcon.js"; import { DarkPdfIcon as C } from "./icons/DarkPdfIcon.js"; import { useDarkModeContext as x } from "../contexts/DarkModeContext.js"; import { useToolbarComponentContext as F } from "../contexts/ToolbarComponentContext.js"; import { useLocalizationContext as v } from "../contexts/LocalizationContext.js"; import { useToolComponentContext as z } from "../contexts/ToolComponentContext.js"; import "../contexts/RPDocumentContext.js"; import "../utils/hooks/useLoadPdf.js"; import "pdfjs-dist"; import "../utils/types.js"; import "../th_TH-d627cd51.js"; import "../utils/getThumbnailViewport.js"; import "../contexts/ConfigContext.js"; import "../contexts/DocumentPasswordContext.js"; import "../utils/appConsole.js"; import "../utils/hooks/usePdfProperties.js"; import "../utils/convertPdfDate.js"; import "../utils/formatFileSize.js"; import "../utils/hooks/useDarkMode.js"; import "../utils/hooks/useLocalization.js"; const m = { "rp-drop-zone": "_rp-drop-zone_1sc50_1", "rp-drop-zone-transparent": "_rp-drop-zone-transparent_1sc50_15" }, Z = {}, U = () => { const { dragging: s, handleDragLeave: a, handleDrop: l } = g(), { darkMode: n } = x(), { dropFileZone: r = !0 } = F(), { dropFileZone: e = !0 } = z(), { localeMessages: t } = v(), d = u((f) => { f.preventDefault(); }, []); if (!r || !e || !s) return null; const c = () => typeof r == "function" ? /* @__PURE__ */ o(r, {}) : typeof e == "function" ? /* @__PURE__ */ o(e, {}) : /* @__PURE__ */ p(i, { children: [ /* @__PURE__ */ o("div", { children: n ? /* @__PURE__ */ o(C, {}) : /* @__PURE__ */ o(h, {}) }), /* @__PURE__ */ o("p", { children: t == null ? void 0 : t.dragDropFileMessage }) ] }); return /* @__PURE__ */ p(i, { children: [ /* @__PURE__ */ o("div", { className: D(m["rp-drop-zone"], n ? Z["rp-dark-mode"] : ""), children: /* @__PURE__ */ o(c, {}) }), /* @__PURE__ */ o( "div", { className: m["rp-drop-zone-transparent"], onDragOver: d, onDragLeave: a, onDrop: l } ) ] }); }; export { U as RPDropFileZone };