@pdf-viewer/react
Version:
A react-pdf-viewer component for React and Next.js. Suitable for react-pdf document.
57 lines (56 loc) • 2.45 kB
JavaScript
import { jsx as r, Fragment as u } from "react/jsx-runtime";
import { useMemo as d, useCallback as l } from "react";
import { useZoomContext as a } from "../../../../contexts/ZoomContext.js";
import { UIButton as c } from "../../../ui/Button.js";
import f from "../../../ui/RPTooltip.js";
import { useLocalizationContext as O } from "../../../../contexts/LocalizationContext.js";
import { ZoomOutIcon as Z } from "../../../icons/ZoomOutIcon.js";
import { MAX_ZOOM_SCALE as h } from "../../../../utils/constants.js";
import { isZoomOutDisabled as s } from "../../../../utils/zoom.js";
import "../../../../utils/types.js";
import "../../../../de_DE-a553b162.js";
import "../../../../utils/appConsole.js";
import "../../../../contexts/InitialStateContext.js";
import "../../../../contexts/RPDocumentContext.js";
import "../../../../utils/hooks/useLoadPdf.js";
import "pdfjs-dist";
import "../../../../utils/getThumbnailViewport.js";
import "../../../../contexts/ConfigContext.js";
import "../../../../contexts/DocumentPasswordContext.js";
import "../../../../utils/hooks/usePdfProperties.js";
import "../../../../utils/convertPdfDate.js";
import "../../../../utils/formatFileSize.js";
import "../../../../utils/getZoomLevel.js";
import "../../../../contexts/LayoutContainerContext.js";
import "../../../../contexts/ViewModeContext.js";
import "../../../../contexts/RotationContext.js";
import "../../../../contexts/GlobalCurrentPage.js";
import "../../../../contexts/EventCallbackContext.js";
import "../../../../utils/hooks/useDebounce.js";
import "../../../../clsx-0c6e471a.js";
import "../../../../utils/withRef.js";
import "../../../../index-c9a2990a.js";
import "react-dom";
import "../../../../floating-ui.react-dom-d22a10b4.js";
import "../../../../utils/hooks/useLocalization.js";
const g = ({ icon: m }) => {
const { currentZoom: t, setZoomLevel: i } = a(), { localeMessages: o } = O(), p = d(() => s(t), [t]), n = l(() => {
i(() => {
const e = Math.ceil(t * 100 / 25) * 25;
return Math.min(e - 25, h);
});
}, [i, t]);
return /* @__PURE__ */ r(u, { children: /* @__PURE__ */ r(f, { content: o == null ? void 0 : o.zoomOutTooltip, children: /* @__PURE__ */ r(
c,
{
disabled: p,
onClick: n,
"aria-label": o == null ? void 0 : o.zoomOutTooltip,
"aria-disabled": p,
children: m || /* @__PURE__ */ r(Z, { "aria-hidden": "true" })
}
) }) });
};
export {
g as ZoomOutTool
};