UNPKG

@pdf-viewer/react

Version:

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

177 lines (176 loc) 8.42 kB
import { jsxs as p, jsx as o } from "react/jsx-runtime"; import { MenuItem as a } from "../../MenuItem.js"; import l from "../../../../ui/RPTooltip.js"; import { u as C, k as G } from "../../../../../ToolbarLayout.module-e31ae637.js"; import { G as L } from "../../../../../index-3bf64864.js"; import { useMemo as d, useCallback as c } from "react"; 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 { useLocalizationContext as N } from "../../../../../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 "../../../../../contexts/ToolbarComponentContext.js"; import "../../../../../RPSplitter-f6acf13b.js"; import "../../../WrapperLayout.js"; import "../../../../RPDropFileZone.js"; import "../../../../../LayoutWrapper-60db8675.js"; import "../../../SkipLink.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 { MenuSeparator as k } from "../../MenuSeparator.js"; import "../../../../../utils/dateFormatter.js"; import "../../PropertyItem.js"; import "../../../../../RotateTool.module-67946714.js"; import { GoToDownIcon as s } from "../../../../icons/GoToDownIcon.js"; import "../../../../../clsx-0c6e471a.js"; import "../../../../../index-c9a2990a.js"; import "react-dom"; import "../../../../../floating-ui.react-dom-d22a10b4.js"; import "../../../../../utils/withRef.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 "../../../../../utils/hooks/useInfiniteScroll.js"; import "../../../../../utils/constants.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 "../../../../../utils/hooks/useLocalization.js"; import "../../DarkModeTool.js"; import "../../../../icons/MoonIcon.js"; import "../../../../icons/SunIcon.js"; import "../../../../../utils/hooks/useDarkMode.js"; import "../../../../icons/ThreeDotIcon.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 "../../../../../utils/hooks/useFullScreen.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/useHighlight.js"; import "../../../../icons/LightPdfIcon.js"; import "../../../../icons/DarkPdfIcon.js"; const u = { width: "100%" }, mi = (P) => { const { icons: f, isToolVisible: h = !0 } = P, { firstPageIcon: n, lastPageIcon: e } = f ?? {}, { goToPage: i, totalPages: r, focusedPage: m } = C(), { localeMessages: t } = N(), T = d(() => m === 1, [m]), b = d(() => m === r, [m, r]), g = c(() => { i(1); }, [i]), x = c(() => { i(r); }, [i, r]); return h ? /* @__PURE__ */ p(L, { children: [ /* @__PURE__ */ o( a, { onClick: g, disabled: T, "aria-label": t == null ? void 0 : t.firstPageTooltip, children: /* @__PURE__ */ o(l, { content: t == null ? void 0 : t.firstPageTooltip, style: u, children: /* @__PURE__ */ p("div", { className: "rp-menu-item", children: [ /* @__PURE__ */ o("div", { className: "rp-menu-item-left", children: n || /* @__PURE__ */ o(s, { className: G["rp-go-to-Top"], "aria-hidden": "true" }) }), /* @__PURE__ */ o("span", { children: t == null ? void 0 : t.firstPageLabel }) ] }) }) } ), /* @__PURE__ */ o( a, { onClick: x, disabled: b, "aria-label": t == null ? void 0 : t.lastPageTooltip, children: /* @__PURE__ */ o(l, { content: t == null ? void 0 : t.lastPageTooltip, style: u, children: /* @__PURE__ */ p("div", { className: "rp-menu-item", children: [ /* @__PURE__ */ o("div", { className: "rp-menu-item-left", children: e || /* @__PURE__ */ o(s, { "aria-hidden": "true" }) }), /* @__PURE__ */ o("span", { children: t == null ? void 0 : t.lastPageLabel }) ] }) }) } ), /* @__PURE__ */ o(k, {}) ] }) : null; }; export { mi as MostPageTool };