UNPKG

@pdf-viewer/react

Version:

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

195 lines (194 loc) 8.12 kB
import { jsxs as i, Fragment as e, jsx as r } from "react/jsx-runtime"; import { useRef as d, useState as N } from "react"; import { e as T, c as x, p as t, q as C, r as R } from "../../../ToolbarLayout.module-e31ae637.js"; import { useToolbarComponentContext as D } 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 { R as I } from "../../../RPSplitter-f6acf13b.js"; import { THUMBNAIL_MIN_WIDTH as W } from "../../../utils/constants.js"; import "../WrapperLayout.js"; import "../../RPDropFileZone.js"; import "../../../LayoutWrapper-60db8675.js"; import "../SkipLink.js"; import "../../ui/RPTooltip.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/DropDown.js"; import "./MenuItem.js"; import "./MenuSeparator.js"; import "../../../utils/dateFormatter.js"; import "./PropertyItem.js"; import "../../../RotateTool.module-67946714.js"; import "../../icons/ChevronUpIcon.js"; import "../../../utils/types.js"; import "../../../de_DE-a553b162.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/hooks/useTextSelection.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-c9a2990a.js"; import "react-dom"; import "../../../floating-ui.react-dom-d22a10b4.js"; import "../../../index-3bf64864.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/DualPageIcon.js"; import "../../icons/DualPageWithCoverIcon.js"; import "../../icons/SinglePageIcon.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"; const eo = (h) => { const { children: u, toolbar: b } = h, a = d(null), { active: n } = T(), { showPrintProgress: f } = D(), { progress: g, showDefaultProgress: w } = x(), { percentage: s } = g || {}, o = b, m = o == null ? void 0 : o.topbar, p = o == null ? void 0 : o.leftSidebar, l = d(null), [c, P] = N(W), v = w ?? f; return /* @__PURE__ */ i(e, { children: [ /* @__PURE__ */ i("div", { className: t["rp-toolbar-layout"], children: [ m && /* @__PURE__ */ r("nav", { id: "rp-menu", role: "menu", "aria-label": "PDF viewer toolbar", children: /* @__PURE__ */ r("div", { "data-rp": "topbar", className: t["rp-topbar-content"], children: m == null ? void 0 : m.component }) }), /* @__PURE__ */ i("div", { className: t["rp-content"], children: [ /* @__PURE__ */ i(e, { children: [ p && /* @__PURE__ */ r(e, { children: /* @__PURE__ */ r( "div", { "data-rp": "sidebar", ref: l, className: t["rp-sidebar-content"], children: p == null ? void 0 : p.component } ) }), /* @__PURE__ */ i( "div", { "data-rp": "thumbnailSidebar", className: `${t["rp-thumbnails-wrapper"]} ${n ? "" : t["rp-thumbnails-wrapper-hidden"]}`, style: { "--rp-thumbnail-width": `${c}px` }, children: [ /* @__PURE__ */ r(C, { show: n, ref: a, width: c }), /* @__PURE__ */ r( I, { onWidthChange: P, thumbnailRef: a, leftSidebarRef: l, isRPLayout: !0 } ) ] } ) ] }), /* @__PURE__ */ r( "main", { id: "rp-main-content", role: "main", "aria-label": "PDF document pages", className: t["rp-pages"], children: u } ) ] }) ] }), v && s ? /* @__PURE__ */ r(R, { percentage: s }) : null ] }); }; export { eo as ToolbarCustom };