UNPKG

@pdf-viewer/react

Version:

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

179 lines (178 loc) 7.64 kB
import { jsxs as t, Fragment as m, jsx as r } from "react/jsx-runtime"; import { useRef as a, useState as P } from "react"; import { h as g, c as v, o, p as x, q as N } from "../../../ToolbarLayout.module-f843fd79.js"; import { useToolbarComponentContext as R } from "../../../contexts/ToolbarComponentContext.js"; import "../../../contexts/RPDocumentContext.js"; import "../../../contexts/DocumentPasswordContext.js"; import "../../../contexts/DarkModeContext.js"; import "../../../contexts/RotationContext.js"; import "../../../contexts/LayerContext.js"; import "../../../contexts/ZoomContext.js"; import "../../../contexts/ViewModeContext.js"; import "../../../contexts/ScrollModeContext.js"; import "../../../contexts/VirtualScrollContext.js"; import "../../../contexts/VirtualGridContext.js"; import "../../../contexts/SelectionModeContext.js"; import "../../../contexts/InitialStateContext.js"; import "../../../contexts/FullScreenContext.js"; import "../../../contexts/FileInputContext.js"; import "../../../contexts/DropFileZoneContext.js"; import "../../../contexts/LayoutContainerContext.js"; import "../../../contexts/DimensionPagesContext.js"; import "../../../contexts/LocalizationContext.js"; import "../../../contexts/HighlightContext.js"; import "../../../contexts/LicenseContext.js"; import "../../../contexts/DownloadContext.js"; import "../../../contexts/SmoothScrollContext.js"; import "../../../contexts/ElementPageContext.js"; import "../../../contexts/PagesRotateContext.js"; import "../../../contexts/GlobalCurrentPage.js"; import "../../../contexts/LoaderContext.js"; import "../../../contexts/ToolComponentContext.js"; import "../../../contexts/IconToolContext.js"; import "../../../contexts/OtherToolContext.js"; import "../../../contexts/EventCallbackContext.js"; import "../../../contexts/ThemeContext.js"; import "../../../contexts/ConfigContext.js"; import "pdfjs-dist"; import "../Container.js"; import "../../../contexts/ViewportContext.js"; import { THUMBNAIL_MIN_WIDTH as T } from "../../../utils/constants.js"; import { RPSplitter as w } from "../sidebar/RPSplitter.js"; import "../WrapperLayout.js"; import "../../../LayoutWrapper-6224491f.js"; import "../../RPDropFileZone.js"; import "../../ui/Button.js"; import "../../../SearchCloseButton-08d57275.js"; import "../../ui/Input.js"; import "../../ui/Checkbox.js"; import "../../icons/LoaderIcon.js"; import "../../../contexts/IconContext.js"; import "../../ui/RPTooltip.js"; import "../../ui/DropDown.js"; import "./MenuItem.js"; import "./MenuSeparator.js"; import "../../../utils/dateFormatter.js"; import "./PropertyItem.js"; import "../../../RotateTool.module-67946714.js"; import { RPHorizontalBar as C } from "./tools/defaults/RPHorizontalBar.js"; import { RPVerticalBar as S } from "./tools/defaults/RPVerticalBar.js"; import "../../icons/ChevronUpIcon.js"; import "../../../utils/types.js"; import "../../../th_TH-d627cd51.js"; import "../../../utils/highlight.js"; import "../../../utils/charators.js"; import "../../../utils/Queue.js"; import "../../../utils/renderPage.js"; import "../../icons/Thumbnail.js"; import "../../../clsx-0c6e471a.js"; import "../../../utils/withRef.js"; import "../../../utils/hooks/useInfiniteScroll.js"; import "../../../utils/link_service.js"; import "../../../utils/annotations.js"; import "../../../utils/sanitizeExternalUrl.js"; import "../../page/searchHighlight.js"; import "../../../utils/const.js"; import "../../page/CustomElement.js"; import "../../../utils/appConsole.js"; import "../../../utils/hooks/useLoadPdf.js"; import "../../../utils/getThumbnailViewport.js"; import "../../../utils/hooks/usePdfProperties.js"; import "../../../utils/convertPdfDate.js"; import "../../../utils/formatFileSize.js"; import "../../../utils/getZoomLevel.js"; import "../../../utils/hooks/useDebounce.js"; import "../../../utils/hooks/useLicense.js"; import "../../../utils/getScrollDistance.js"; import "../../../utils/getElementPositionInPage.js"; import "../../../utils/calculatePage.js"; import "../../../utils/hooks/useMousePressed.js"; import "../../../utils/hooks/useGrabScroll.js"; import "../../../utils/hooks/usePinch.js"; import "../../ui/PasswordModal.js"; import "../../../utils/hooks/useCopyText.js"; import "../../../utils/getWordPositionInPage.js"; import "../../../utils/smoothScrollTo.js"; import "./FileUploadTool.js"; import "../../icons/FileUploadDefaultIcon.js"; import "./DarkModeTool.js"; import "../../icons/MoonIcon.js"; import "../../icons/SunIcon.js"; import "../../icons/ThreeDotIcon.js"; import "../../../index-35c7f4a2.js"; import "react-dom"; import "../../../floating-ui.react-dom-6b2fe0df.js"; import "../../../index-f563c6f0.js"; import "../../icons/CloseIcon.js"; import "./DocumentProperties.js"; import "../../icons/InfoIcon.js"; import "./RotateTool.js"; import "../../icons/ClockwiseIcon.js"; import "../../../utils/hooks/useRotate.js"; import "./ViewModeTool.js"; import "../../icons/SinglePageIcon.js"; import "../../icons/DualPageIcon.js"; import "../../icons/CheckIcon.js"; import "./ScrollModeTool.js"; import "../../icons/PageScrollingIcon.js"; import "../../icons/VerticalScrollingIcon.js"; import "../../icons/HorizontalScrollingIcon.js"; import "../../icons/FileDownloadDefaultIcon.js"; import "../../icons/PrintDefaultIcon.js"; import "./FullScreenTool.js"; import "../../icons/FullScreenIcon.js"; import "../../icons/GoToDownIcon.js"; import "./SelectionModeTool.js"; import "../../icons/TextSelectionDefaultIcon.js"; import "../../icons/HandModeDefaultIcon.js"; import "../../icons/ZoomInIcon.js"; import "../../icons/ZoomOutIcon.js"; import "../../../utils/zoom.js"; import "../../icons/SearchIcon.js"; import "../../icons/ClearIcon.js"; import "../../../utils/hooks/useDarkMode.js"; import "../../../utils/hooks/useFullScreen.js"; import "../../../utils/hooks/useLocalization.js"; import "../../../utils/hooks/useHighlight.js"; import "../../icons/LightPdfIcon.js"; import "../../icons/DarkPdfIcon.js"; import "./ThumbnailTool.js"; const mo = (n) => { const { children: l } = n, p = a(null), { active: i } = g(), { showPrintProgress: c } = R(), { progress: d, showDefaultProgress: h } = v(), { percentage: e } = d || {}, s = a(null), [u, f] = P(T), b = h ?? c; return /* @__PURE__ */ t(m, { children: [ /* @__PURE__ */ t("div", { className: o["rp-toolbar-layout"], children: [ /* @__PURE__ */ r("div", { "data-rp": "topbar", className: o["rp-topbar-content"], children: /* @__PURE__ */ r(C, {}) }), /* @__PURE__ */ t("div", { className: o["rp-content"], children: [ /* @__PURE__ */ t(m, { children: [ /* @__PURE__ */ r("div", { "data-rp": "sidebar", ref: s, className: o["rp-sidebar-content"], children: /* @__PURE__ */ r(S, {}) }), /* @__PURE__ */ t( "div", { "data-rp": "thumbnailSidebar", hidden: !i, className: o["rp-thumbnails-wrapper"], style: { ...i && { position: "relative", display: "flex" } }, children: [ /* @__PURE__ */ r(x, { show: i, ref: p, width: u }), /* @__PURE__ */ r("div", { children: /* @__PURE__ */ r( w, { onWidthChange: f, thumbnailRef: p, leftSidebarRef: s, isRPLayout: !0 } ) }) ] } ) ] }), /* @__PURE__ */ r(m, { children: l }) ] }) ] }), b && e ? /* @__PURE__ */ r(N, { percentage: e }) : null ] }); }; export { mo as ToolbarDefault };