UNPKG

@pdf-viewer/react

Version:

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

158 lines (157 loc) 8 kB
import { jsxs as p, jsx as t } from "react/jsx-runtime"; import { MenuItem as a } from "../../MenuItem.js"; import s from "../../../../ui/RPTooltip.js"; import { u as C, s as G } from "../../../../../ToolbarLayout.module-f843fd79.js"; import { G as L } from "../../../../../index-f563c6f0.js"; import { useMemo as l, 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 "../../../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/DropDown.js"; import { MenuSeparator as v } from "../../MenuSeparator.js"; import "../../../../../utils/dateFormatter.js"; import "../../PropertyItem.js"; import "../../../../../RotateTool.module-67946714.js"; import { GoToDownIcon as d } from "../../../../icons/GoToDownIcon.js"; import "../../../../../clsx-0c6e471a.js"; import "../../../../../index-35c7f4a2.js"; import "react-dom"; import "../../../../../floating-ui.react-dom-6b2fe0df.js"; import "../../../../../utils/withRef.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 "../../../../../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/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/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 "../../../../../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%" }, ti = (f) => { const { icons: P, isToolVisible: h = !0 } = f, { firstPageIcon: e, lastPageIcon: n } = P ?? {}, { goToPage: i, totalPages: r, focusedPage: m } = C(), { localeMessages: o } = N(), T = l(() => m === 1, [m]), g = l(() => m === r, [m, r]), b = c(() => { i(1); }, [i]), x = c(() => { i(r); }, [i, r]); return h ? /* @__PURE__ */ p(L, { children: [ /* @__PURE__ */ t(a, { onClick: b, children: /* @__PURE__ */ t(s, { content: o == null ? void 0 : o.firstPageTooltip, style: u, children: /* @__PURE__ */ p("div", { className: "rp-menu-item", "aria-disabled": T, children: [ /* @__PURE__ */ t("div", { className: "rp-menu-item-left", children: e || /* @__PURE__ */ t(d, { className: G["rp-go-to-Top"] }) }), /* @__PURE__ */ t("span", { children: o == null ? void 0 : o.firstPageLabel }) ] }) }) }), /* @__PURE__ */ t(a, { onClick: x, children: /* @__PURE__ */ t(s, { content: o == null ? void 0 : o.lastPageTooltip, style: u, children: /* @__PURE__ */ p("div", { className: "rp-menu-item", "aria-disabled": g, children: [ /* @__PURE__ */ t("div", { className: "rp-menu-item-left", children: n || /* @__PURE__ */ t(d, {}) }), /* @__PURE__ */ t("span", { children: o == null ? void 0 : o.lastPageLabel }) ] }) }) }), /* @__PURE__ */ t(v, {}) ] }) : null; }; export { ti as MostPageTool };