UNPKG

@pdf-viewer/react

Version:

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

107 lines (106 loc) 3.92 kB
import { jsx as o, jsxs as m } from "react/jsx-runtime"; import { useEffect as h } from "react"; import { useLayoutContainer as u } from "../../contexts/LayoutContainerContext.js"; import { Container as y } from "./Container.js"; import { ViewportProvider as L } from "../../contexts/ViewportContext.js"; import { ToolbarLayout as C } from "./toolbar/ToolbarLayout.js"; import { WrapperLayout as g } from "./WrapperLayout.js"; import { useDocumentContext as x } from "../../contexts/RPDocumentContext.js"; import "../../contexts/DocumentPasswordContext.js"; import { L as b, e as j } from "../../ToolbarLayout.module-cbc8e216.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/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 { useLoaderContext as v } from "../../contexts/LoaderContext.js"; import "../../contexts/ToolComponentContext.js"; import "../../contexts/IconToolContext.js"; import "../../contexts/OtherToolContext.js"; import "../RPConfig.js"; import "../../contexts/ThemeContext.js"; import { RPDropFileZone as w } from "../RPDropFileZone.js"; import "../ui/Button.js"; import "../../SearchCloseButton-cbf182aa.js"; import "../ui/Input.js"; import "../ui/Checkbox.js"; import "../icons/LoaderIcon.js"; import "../../contexts/IconContext.js"; import "../ui/RPTooltip.js"; import "../../contexts/ToolbarComponentContext.js"; import "../ui/DropDown.js"; import "../../ZoomTool.module-6c5eabbb.js"; import "./toolbar/MenuItem.js"; import "./toolbar/MenuSeparator.js"; import "../../utils/dateFormatter.js"; import "./toolbar/PropertyItem.js"; import "./toolbar/RotateTool.js"; const Ro = (p) => { const { children: e, style: n, className: a, mobileWidth: s, onLoaded: t, cleanupOnLoaded: r, onLayoutWidthChange: l, toolbar: d } = p, { setContainer: c } = u(), { loading: f } = x(), { LoaderImageComponent: i } = v(); return h(() => (t && t(), () => { r && r(); }), [t, r]), // TODO: deprecated in v2.0.0, remove later ("LayoutContainer") ~ /* @__PURE__ */ o(b, { children: /* @__PURE__ */ o(L, { mobileWidth: s, onLayoutWidthChange: l, children: /* @__PURE__ */ m(y, { getContainerRef: c, style: n, className: a, children: [ /* @__PURE__ */ m(g, { children: [ /* @__PURE__ */ o(C, { toolbar: d, children: e }), /* @__PURE__ */ o(w, {}) ] }), f ? /* @__PURE__ */ o( "div", { className: j["rp-loader"], style: { position: "absolute", top: 0, left: 0, right: 0, bottom: 0, width: "100%", height: "100%" }, children: /* @__PURE__ */ o( "div", { style: { display: "flex", justifyContent: "center", alignItems: "center", height: "100%", width: "100%" }, children: i && /* @__PURE__ */ o(i, {}) } ) } ) : null ] }) }) }); }; export { Ro as RPLayout };