UNPKG

@pdf-viewer/react

Version:

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

38 lines (37 loc) 1.65 kB
import { jsx as e } from "react/jsx-runtime"; import { useMemo as i, useCallback as S } from "react"; import { UIButton as u } from "../../../ui/Button.js"; import a from "../../../ui/RPTooltip.js"; import { useLocalizationContext as s } from "../../../../contexts/LocalizationContext.js"; import { useSelectionModeContext as x } from "../../../../contexts/SelectionModeContext.js"; import { SelectionMode as n } from "../../../../utils/types.js"; import { TextSelectionDefaultIcon as h } from "../../../icons/TextSelectionDefaultIcon.js"; import { HandModeDefaultIcon as M } from "../../../icons/HandModeDefaultIcon.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/appConsole.js"; import "../../../../utils/hooks/useLocalization.js"; import "../../../../de_DE-a553b162.js"; const U = ({ icons: d }) => { const { textSelectionIcon: r, handModeIcon: c } = d ?? {}, { selectionMode: m, setSelectionMode: p } = x(), { localeMessages: o } = s(), t = i(() => m === n.TEXT, [m]), l = i( () => t ? o == null ? void 0 : o.handToolTooltip : o == null ? void 0 : o.textSelectionTooltip, [t, o] ), f = S(() => { p(t ? n.HAND : n.TEXT); }, [t, p]), T = i(() => t ? c ?? /* @__PURE__ */ e(M, {}) : r ?? /* @__PURE__ */ e(h, {}), [t, r, c]); return /* @__PURE__ */ e(a, { content: l, children: /* @__PURE__ */ e( u, { onClick: f, "aria-label": l, "aria-pressed": t, children: T } ) }); }; export { U as SelectionModeSwitcherTool };