@pdf-viewer/react 1.8.0-rc.2 → 1.9.0-beta.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/{Popover-1faa77f6.js → Popover-48c8394c.js} +2 -2
- package/dist/RPLayout-3042ec91.js +3349 -0
- package/dist/assets/{RPDefaultLayout.css → RPLayout.css} +1 -1
- package/dist/{component-1da194e8.js → component-2aa6e53b.js} +1 -1
- package/dist/components/RPConfig.js +691 -673
- package/dist/components/RPController.js +9 -9
- package/dist/components/RPPages.js +14 -2
- package/dist/components/icons/ChevronDownIcon.js +23 -0
- package/dist/components/layout/LayoutContainer.js +14 -2
- package/dist/components/layout/RPDefaultLayout.js +3 -2
- package/dist/components/layout/RPLayout.js +50 -0
- package/dist/components/layout/sidebar/RPSidebar.js +1 -1
- package/dist/components/layout/sidebar/Thumbnail.js +1 -1
- package/dist/components/layout/sidebar/Thumbnails.js +1 -1
- package/dist/components/layout/toolbar/DarkModeTool.js +16 -19
- package/dist/components/layout/toolbar/DocumentDialog.js +14 -2
- package/dist/components/layout/toolbar/FileDownloadTool.js +1 -1
- package/dist/components/layout/toolbar/MenuItem.js +1 -1
- package/dist/components/layout/toolbar/MenuSeparator.js +1 -1
- package/dist/components/layout/toolbar/MostPageTool.js +13 -5
- package/dist/components/layout/toolbar/OtherTool.js +3 -4
- package/dist/components/layout/toolbar/Paginate.js +1 -1
- package/dist/components/layout/toolbar/PrintTool.js +1 -1
- package/dist/components/layout/toolbar/RPToolbar.js +1 -1
- package/dist/components/layout/toolbar/RPToolbarEnd.js +1 -1
- package/dist/components/layout/toolbar/RotateTool.js +1 -1
- package/dist/components/layout/toolbar/ScrollModeTool.js +1 -1
- package/dist/components/layout/toolbar/SearchResultNavigator.js +1 -1
- package/dist/components/layout/toolbar/SearchTool.js +6 -3
- package/dist/components/layout/toolbar/SelectionModeTool.js +1 -1
- package/dist/components/layout/toolbar/ToolbarCustom.js +47 -0
- package/dist/components/layout/toolbar/ViewModeTool.js +1 -1
- package/dist/components/layout/toolbar/ZoomTool.js +2 -2
- package/dist/components/layout/toolbar/tools/FileDownloadTool.js +17 -0
- package/dist/components/layout/toolbar/tools/FileUploadTool.js +17 -0
- package/dist/components/layout/toolbar/tools/FullScreenTool.js +25 -0
- package/dist/components/layout/toolbar/tools/InputPageTool.js +45 -0
- package/dist/components/layout/toolbar/tools/NextPageTool.js +61 -0
- package/dist/components/layout/toolbar/tools/PreviousPageTool.js +21 -0
- package/dist/components/layout/toolbar/tools/PrintTool.js +17 -0
- package/dist/components/layout/toolbar/tools/ThemeSwitcherTool.js +17 -0
- package/dist/components/layout/toolbar/tools/ThumbnailTool.js +23 -0
- package/dist/components/layout/toolbar/tools/ZoomInTool.js +28 -0
- package/dist/components/layout/toolbar/tools/ZoomLevelTool.js +92 -0
- package/dist/components/layout/toolbar/tools/ZoomOutTool.js +28 -0
- package/dist/components/page/AnnotationLayer.js +14 -2
- package/dist/components/page/CanvasLayer.js +14 -2
- package/dist/components/page/DualPage.js +1 -1
- package/dist/components/page/RPPage.js +13 -2
- package/dist/components/page/SinglePage.js +2 -2
- package/dist/components/page/TextHighlightLayer.js +14 -2
- package/dist/components/page/TextLayer.js +14 -2
- package/dist/components/ui/Checkbox.js +228 -116
- package/dist/components/ui/DropDown.js +1 -1
- package/dist/components/ui/LoadingIndicator.js +1 -1
- package/dist/components/ui/Popover.js +1 -1
- package/dist/components/ui/RPTooltip.js +207 -207
- package/dist/contexts/ElementPageContext.js +46 -57
- package/dist/contexts/PaginationContext.js +3 -3
- package/dist/contexts/PrintContext.js +2 -2
- package/dist/contexts/SearchContext.js +2 -2
- package/dist/contexts/ThumbnailsContext.js +2 -2
- package/dist/{floating-ui.react-dom-15b9b819.js → floating-ui.react-dom-4b1e2e46.js} +394 -380
- package/dist/index-6e0e48fa.js +332 -0
- package/dist/{index-7279fb4e.js → index-951f0f1f.js} +464 -456
- package/dist/index-e3a67935.js +150 -0
- package/dist/main.js +70 -44
- package/dist/types/components/icons/ChevronDownIcon.d.ts +2 -0
- package/dist/types/components/layout/RPDefaultLayout.d.ts +2 -2
- package/dist/types/components/layout/RPLayout.d.ts +2 -0
- package/dist/types/components/layout/toolbar/SearchTool.d.ts +2 -1
- package/dist/types/components/layout/toolbar/ToolbarCustom.d.ts +3 -0
- package/dist/types/components/layout/toolbar/tools/FileDownloadTool.d.ts +3 -0
- package/dist/types/components/layout/toolbar/tools/FileUploadTool.d.ts +3 -0
- package/dist/types/components/layout/toolbar/tools/FullScreenTool.d.ts +3 -0
- package/dist/types/components/layout/toolbar/tools/InputPageTool.d.ts +2 -0
- package/dist/types/components/layout/toolbar/tools/NextPageTool.d.ts +3 -0
- package/dist/types/components/layout/toolbar/tools/PreviousPageTool.d.ts +3 -0
- package/dist/types/components/layout/toolbar/tools/PrintTool.d.ts +3 -0
- package/dist/types/components/layout/toolbar/tools/ThemeSwitcherTool.d.ts +3 -0
- package/dist/types/components/layout/toolbar/tools/ThumbnailTool.d.ts +3 -0
- package/dist/types/components/layout/toolbar/tools/ZoomInTool.d.ts +3 -0
- package/dist/types/components/layout/toolbar/tools/ZoomLevelTool.d.ts +3 -0
- package/dist/types/components/layout/toolbar/tools/ZoomOutTool.d.ts +3 -0
- package/dist/types/main.d.ts +15 -1
- package/dist/types/utils/constants.d.ts +2 -0
- package/dist/types/utils/types.d.ts +28 -2
- package/dist/utils/constants.js +5 -3
- package/dist/utils/hooks/useFileDownload.js +14 -2
- package/dist/utils/hooks/useLicense.js +24 -26
- package/dist/utils/hooks/usePageRotateContext.js +14 -17
- package/dist/utils/hooks/usePaginate.js +14 -2
- package/dist/utils/hooks/usePresentPage.js +14 -2
- package/dist/utils/hooks/usePrint.js +14 -2
- package/dist/utils/hooks/useScrollToPage.js +14 -2
- package/dist/utils/hooks/useSearch.js +14 -2
- package/dist/utils/hooks/useThumbnail.js +14 -2
- package/dist/utils/hooks/useVirtualReactWindow.js +14 -2
- package/package.json +1 -1
- package/dist/RPDefaultLayout-2cca5d34.js +0 -3263
- package/dist/index-1cb41342.js +0 -307
- package/dist/index-aa2d3884.js +0 -140
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { jsx as t } from "react/jsx-runtime";
|
|
2
|
+
import { useFullScreenContext as c } from "../../../../contexts/FullScreenContext.js";
|
|
3
|
+
import { UIButton as i } from "../../../ui/Button.js";
|
|
4
|
+
import { FullScreenIcon as u } from "../../../icons/FullScreenIcon.js";
|
|
5
|
+
import { useIconContext as m } from "../../../../contexts/IconContext.js";
|
|
6
|
+
import p from "../../../ui/RPTooltip.js";
|
|
7
|
+
import { useLocalizationContext as f } from "../../../../contexts/LocalizationContext.js";
|
|
8
|
+
const S = () => {
|
|
9
|
+
const { fullScreenIcon: o } = m();
|
|
10
|
+
return o || /* @__PURE__ */ t(u, {});
|
|
11
|
+
}, F = ({ children: o, className: n, localeMessages: r }) => /* @__PURE__ */ t(p, { className: n, content: r == null ? void 0 : r.fullScreenTooltip, children: o }), h = ({ icon: o }) => {
|
|
12
|
+
const { isFullScreen: n, toggleFullScreen: r, isSupported: e } = c(), { localeMessages: l } = f();
|
|
13
|
+
return /* @__PURE__ */ t(F, { localeMessages: l, children: /* @__PURE__ */ t(
|
|
14
|
+
i,
|
|
15
|
+
{
|
|
16
|
+
disabled: !e,
|
|
17
|
+
onClick: r,
|
|
18
|
+
"aria-label": n ? "Exit full screen" : "Enter full screen",
|
|
19
|
+
children: o || /* @__PURE__ */ t(S, {})
|
|
20
|
+
}
|
|
21
|
+
) });
|
|
22
|
+
};
|
|
23
|
+
export {
|
|
24
|
+
h as FullScreenTool
|
|
25
|
+
};
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import { jsxs as u, Fragment as h, jsx as g } from "react/jsx-runtime";
|
|
2
|
+
import { useState as d, useEffect as S, useCallback as o } from "react";
|
|
3
|
+
import { u as x, i as p } from "../../../../RPLayout-3042ec91.js";
|
|
4
|
+
import { useLocalizationContext as C } from "../../../../contexts/LocalizationContext.js";
|
|
5
|
+
import y from "../../../ui/RPTooltip.js";
|
|
6
|
+
import { UIInput as E } from "../../../ui/Input.js";
|
|
7
|
+
const k = () => {
|
|
8
|
+
const { focusedPage: n, totalPages: s, goToPage: i } = x(), { localeMessages: a } = C(), [r, e] = d(n.toString());
|
|
9
|
+
S(() => {
|
|
10
|
+
e(n.toString());
|
|
11
|
+
}, [n]);
|
|
12
|
+
const m = o((t) => {
|
|
13
|
+
const l = t.target.value;
|
|
14
|
+
e(l);
|
|
15
|
+
}, []), c = o(async () => {
|
|
16
|
+
const t = i(r);
|
|
17
|
+
t.success || e(t.currentPage.toString());
|
|
18
|
+
}, [i, r, s]), f = o(() => {
|
|
19
|
+
e(n.toString());
|
|
20
|
+
}, [n]), P = o(
|
|
21
|
+
(t) => {
|
|
22
|
+
t.key === "Enter" && c();
|
|
23
|
+
},
|
|
24
|
+
[c]
|
|
25
|
+
);
|
|
26
|
+
return /* @__PURE__ */ u(h, { children: [
|
|
27
|
+
/* @__PURE__ */ g(y, { content: a == null ? void 0 : a.currentPageTooltip, children: /* @__PURE__ */ g(
|
|
28
|
+
E,
|
|
29
|
+
{
|
|
30
|
+
onKeyDown: P,
|
|
31
|
+
onBlur: f,
|
|
32
|
+
onChange: m,
|
|
33
|
+
value: r,
|
|
34
|
+
className: p["rp-page-input"]
|
|
35
|
+
}
|
|
36
|
+
) }),
|
|
37
|
+
/* @__PURE__ */ u("span", { className: p["rp-total-page"], children: [
|
|
38
|
+
"/",
|
|
39
|
+
s
|
|
40
|
+
] })
|
|
41
|
+
] });
|
|
42
|
+
};
|
|
43
|
+
export {
|
|
44
|
+
k as InputPageTool
|
|
45
|
+
};
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
import { jsx as i, Fragment as l } from "react/jsx-runtime";
|
|
2
|
+
import { useMemo as d } from "react";
|
|
3
|
+
import { ChevronUpIcon as c } from "../../../icons/ChevronUpIcon.js";
|
|
4
|
+
import { UIButton as f } from "../../../ui/Button.js";
|
|
5
|
+
import { u as s } from "../../../../RPLayout-3042ec91.js";
|
|
6
|
+
import { useLocalizationContext as u } from "../../../../contexts/LocalizationContext.js";
|
|
7
|
+
import { ViewMode as x, ScrollMode as P } from "../../../../utils/types.js";
|
|
8
|
+
import "../../../../contexts/RPDocumentContext.js";
|
|
9
|
+
import "../../../../contexts/DocumentPasswordContext.js";
|
|
10
|
+
import "../../../../contexts/DarkModeContext.js";
|
|
11
|
+
import "../../../../contexts/RotationContext.js";
|
|
12
|
+
import "../../../../contexts/LayerContext.js";
|
|
13
|
+
import "../../../../contexts/ZoomContext.js";
|
|
14
|
+
import { useViewModeContext as g } from "../../../../contexts/ViewModeContext.js";
|
|
15
|
+
import { useScrollModeContext as C } from "../../../../contexts/ScrollModeContext.js";
|
|
16
|
+
import "../../../../contexts/VirtualScrollContext.js";
|
|
17
|
+
import "../../../../contexts/VirtualGridContext.js";
|
|
18
|
+
import "../../../../contexts/SelectionModeContext.js";
|
|
19
|
+
import "../../../../contexts/InitialStateContext.js";
|
|
20
|
+
import "../../../../contexts/FullScreenContext.js";
|
|
21
|
+
import "../../../../contexts/FileInputContext.js";
|
|
22
|
+
import "../../../../contexts/DropFileZoneContext.js";
|
|
23
|
+
import "../../../../contexts/LayoutContainerContext.js";
|
|
24
|
+
import "../../../../contexts/DimensionPagesContext.js";
|
|
25
|
+
import "../../../../contexts/HighlightContext.js";
|
|
26
|
+
import "../../../../contexts/LicenseContext.js";
|
|
27
|
+
import "../../../../contexts/DownloadContext.js";
|
|
28
|
+
import "../../../../contexts/SmoothScrollContext.js";
|
|
29
|
+
import "../../../../contexts/ElementPageContext.js";
|
|
30
|
+
import "../../../../contexts/PagesRotateContext.js";
|
|
31
|
+
import "../../../../contexts/LoaderContext.js";
|
|
32
|
+
import "../../../RPConfig.js";
|
|
33
|
+
import "../../../../contexts/ThemeContext.js";
|
|
34
|
+
import "../../../RPDropFileZone.js";
|
|
35
|
+
import "../../../../contexts/ToolbarComponentContext.js";
|
|
36
|
+
import "../../../../SearchCloseButton-ddb9877e.js";
|
|
37
|
+
import "../../../ui/Input.js";
|
|
38
|
+
import "../../../ui/Checkbox.js";
|
|
39
|
+
import "../../../icons/LoaderIcon.js";
|
|
40
|
+
import "../../../../contexts/IconContext.js";
|
|
41
|
+
import h from "../../../ui/RPTooltip.js";
|
|
42
|
+
import "../../../../Popover-48c8394c.js";
|
|
43
|
+
import "../../../../contexts/ViewportContext.js";
|
|
44
|
+
import "../../../ui/DropDown.js";
|
|
45
|
+
import "../MenuItem.js";
|
|
46
|
+
import "../MenuSeparator.js";
|
|
47
|
+
const so = ({ icon: m }) => {
|
|
48
|
+
const { focusedPage: t, nextPage: n, totalPages: r } = s(), { localeMessages: o } = u(), { viewMode: p } = g(), { scrollMode: e } = C(), a = d(() => p === x.DUAL_PAGE && e === P.PAGE_SCROLLING && t === r - 1 || t === r, [t, r, p, e]);
|
|
49
|
+
return /* @__PURE__ */ i(l, { children: /* @__PURE__ */ i(h, { content: o == null ? void 0 : o.nextPageTooltip, children: /* @__PURE__ */ i(
|
|
50
|
+
f,
|
|
51
|
+
{
|
|
52
|
+
onClick: n,
|
|
53
|
+
"aria-label": o == null ? void 0 : o.nextPageTooltip,
|
|
54
|
+
"aria-disabled": a,
|
|
55
|
+
children: m || /* @__PURE__ */ i(c, { style: { transform: "rotate(180deg" } })
|
|
56
|
+
}
|
|
57
|
+
) }) });
|
|
58
|
+
};
|
|
59
|
+
export {
|
|
60
|
+
so as NextPageTool
|
|
61
|
+
};
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { jsx as r, Fragment as e } from "react/jsx-runtime";
|
|
2
|
+
import { ChevronUpIcon as p } from "../../../icons/ChevronUpIcon.js";
|
|
3
|
+
import { UIButton as m } from "../../../ui/Button.js";
|
|
4
|
+
import { u as a } from "../../../../RPLayout-3042ec91.js";
|
|
5
|
+
import { useLocalizationContext as u } from "../../../../contexts/LocalizationContext.js";
|
|
6
|
+
import P from "../../../ui/RPTooltip.js";
|
|
7
|
+
const h = ({ icon: t }) => {
|
|
8
|
+
const { focusedPage: i, prevPage: n } = a(), { localeMessages: o } = u();
|
|
9
|
+
return /* @__PURE__ */ r(e, { children: /* @__PURE__ */ r(P, { content: o == null ? void 0 : o.previousPageTooltip, children: /* @__PURE__ */ r(
|
|
10
|
+
m,
|
|
11
|
+
{
|
|
12
|
+
onClick: n,
|
|
13
|
+
"aria-label": o == null ? void 0 : o.previousPageTooltip,
|
|
14
|
+
"aria-disabled": i === 1,
|
|
15
|
+
children: t || /* @__PURE__ */ r(p, {})
|
|
16
|
+
}
|
|
17
|
+
) }) });
|
|
18
|
+
};
|
|
19
|
+
export {
|
|
20
|
+
h as PreviousPageTool
|
|
21
|
+
};
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { jsx as r } from "react/jsx-runtime";
|
|
2
|
+
import { PrintDefaultTool as i } from "../../../icons/PrintDefaultIcon.js";
|
|
3
|
+
import { useIconContext as p } from "../../../../contexts/IconContext.js";
|
|
4
|
+
import { UIButton as m } from "../../../ui/Button.js";
|
|
5
|
+
import { d as c } from "../../../../RPLayout-3042ec91.js";
|
|
6
|
+
import { useLocalizationContext as f } from "../../../../contexts/LocalizationContext.js";
|
|
7
|
+
import u from "../../../ui/RPTooltip.js";
|
|
8
|
+
const P = () => {
|
|
9
|
+
const { printIcon: o } = p();
|
|
10
|
+
return o || /* @__PURE__ */ r(i, {});
|
|
11
|
+
}, T = ({ children: o, className: n, localeMessages: t }) => /* @__PURE__ */ r(u, { className: n, content: t == null ? void 0 : t.printTooltip, children: o }), j = ({ icon: o }) => {
|
|
12
|
+
const { print: n } = c(), { localeMessages: t } = f();
|
|
13
|
+
return /* @__PURE__ */ r(T, { localeMessages: t, children: /* @__PURE__ */ r(m, { onClick: n, "aria-label": t == null ? void 0 : t.printTooltip, children: o || /* @__PURE__ */ r(P, {}) }) });
|
|
14
|
+
};
|
|
15
|
+
export {
|
|
16
|
+
j as PrintTool
|
|
17
|
+
};
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { jsx as r } from "react/jsx-runtime";
|
|
2
|
+
import { useCallback as a } from "react";
|
|
3
|
+
import { MoonIcon as h } from "../../../icons/MoonIcon.js";
|
|
4
|
+
import { SunIcon as c } from "../../../icons/SunIcon.js";
|
|
5
|
+
import { UIButton as k } from "../../../ui/Button.js";
|
|
6
|
+
import { useDarkModeContext as f } from "../../../../contexts/DarkModeContext.js";
|
|
7
|
+
import { useLocalizationContext as I } from "../../../../contexts/LocalizationContext.js";
|
|
8
|
+
import u from "../../../ui/RPTooltip.js";
|
|
9
|
+
const S = ({ icons: o }) => {
|
|
10
|
+
const { darkMode: e, setDarkMode: n } = f(), { localeMessages: t } = I(), i = o == null ? void 0 : o.lightModeIcon, d = o == null ? void 0 : o.darkModeIcon, m = e ? t == null ? void 0 : t.themeEnableLightTooltip : t == null ? void 0 : t.themeEnableDarkTooltip, l = a(() => {
|
|
11
|
+
n((p) => !p);
|
|
12
|
+
}, [n]);
|
|
13
|
+
return /* @__PURE__ */ r(u, { content: m, children: /* @__PURE__ */ r(k, { onClick: l, "aria-label": m, children: e ? d ?? /* @__PURE__ */ r(c, {}) : i ?? /* @__PURE__ */ r(h, {}) }) });
|
|
14
|
+
};
|
|
15
|
+
export {
|
|
16
|
+
S as ThemeSwitcherTool
|
|
17
|
+
};
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { jsx as o, Fragment as l } from "react/jsx-runtime";
|
|
2
|
+
import { h } from "../../../../RPLayout-3042ec91.js";
|
|
3
|
+
import { ThumbnailIcon as p } from "../../../icons/Thumbnail.js";
|
|
4
|
+
import { UIButton as u } from "../../../ui/Button.js";
|
|
5
|
+
import a from "../../../ui/RPTooltip.js";
|
|
6
|
+
import { useLocalizationContext as c } from "../../../../contexts/LocalizationContext.js";
|
|
7
|
+
const C = ({ icon: i }) => {
|
|
8
|
+
const { active: n, setActive: r } = h(), { localeMessages: t } = c(), m = () => {
|
|
9
|
+
r(!n);
|
|
10
|
+
};
|
|
11
|
+
return /* @__PURE__ */ o(l, { children: /* @__PURE__ */ o(a, { content: t == null ? void 0 : t.thumbnailTooltip, children: /* @__PURE__ */ o(
|
|
12
|
+
u,
|
|
13
|
+
{
|
|
14
|
+
onClick: m,
|
|
15
|
+
active: n,
|
|
16
|
+
"aria-label": t == null ? void 0 : t.thumbnailTooltip,
|
|
17
|
+
children: i || /* @__PURE__ */ o(p, {})
|
|
18
|
+
}
|
|
19
|
+
) }) });
|
|
20
|
+
};
|
|
21
|
+
export {
|
|
22
|
+
C as ThumbnailTool
|
|
23
|
+
};
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { jsx as t, Fragment as f } from "react/jsx-runtime";
|
|
2
|
+
import { useCallback as d, useMemo as u } from "react";
|
|
3
|
+
import { useZoomContext as I } from "../../../../contexts/ZoomContext.js";
|
|
4
|
+
import { ZoomInIcon as a } from "../../../icons/ZoomInIcon.js";
|
|
5
|
+
import { UIButton as Z } from "../../../ui/Button.js";
|
|
6
|
+
import h from "../../../ui/RPTooltip.js";
|
|
7
|
+
import { useLocalizationContext as s } from "../../../../contexts/LocalizationContext.js";
|
|
8
|
+
import { MAX_ZOOM_SCALE as i } from "../../../../utils/constants.js";
|
|
9
|
+
const A = ({ icon: n }) => {
|
|
10
|
+
const { zoomLevel: r, setZoomLevel: m } = I(), { localeMessages: o } = s(), e = d(() => {
|
|
11
|
+
m((p) => {
|
|
12
|
+
const c = Math.floor(p / 25) * 25;
|
|
13
|
+
return Math.min(c + 25, i);
|
|
14
|
+
});
|
|
15
|
+
}, [m]), l = u(() => r >= i, [r]);
|
|
16
|
+
return /* @__PURE__ */ t(f, { children: /* @__PURE__ */ t(h, { content: o == null ? void 0 : o.zoomInTooltip, children: /* @__PURE__ */ t(
|
|
17
|
+
Z,
|
|
18
|
+
{
|
|
19
|
+
disabled: l,
|
|
20
|
+
onClick: e,
|
|
21
|
+
"aria-label": o == null ? void 0 : o.zoomInTooltip,
|
|
22
|
+
children: n || /* @__PURE__ */ t(a, {})
|
|
23
|
+
}
|
|
24
|
+
) }) });
|
|
25
|
+
};
|
|
26
|
+
export {
|
|
27
|
+
A as ZoomInTool
|
|
28
|
+
};
|
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
import { jsx as e, Fragment as G, jsxs as l } from "react/jsx-runtime";
|
|
2
|
+
import { useState as N, useRef as S, useMemo as W, useCallback as g, useEffect as k } from "react";
|
|
3
|
+
import { useZoomContext as y } from "../../../../contexts/ZoomContext.js";
|
|
4
|
+
import { UIButton as E } from "../../../ui/Button.js";
|
|
5
|
+
import { u as F, j as m } from "../../../../RPLayout-3042ec91.js";
|
|
6
|
+
import { UIDropDown as j } from "../../../ui/DropDown.js";
|
|
7
|
+
import { useLayoutContainer as R } from "../../../../contexts/LayoutContainerContext.js";
|
|
8
|
+
import { G as v } from "../../../../index-951f0f1f.js";
|
|
9
|
+
import { MenuItem as p } from "../MenuItem.js";
|
|
10
|
+
import { MenuSeparator as U } from "../MenuSeparator.js";
|
|
11
|
+
import { useToolbarComponentContext as _ } from "../../../../contexts/ToolbarComponentContext.js";
|
|
12
|
+
import { PAGE_PADDING as L } from "../../../../utils/constants.js";
|
|
13
|
+
import O from "../../../ui/RPTooltip.js";
|
|
14
|
+
import { ZoomLevel as u } from "../../../../utils/types.js";
|
|
15
|
+
import { getZoomLevel as V } from "../../../../utils/getZoomLevel.js";
|
|
16
|
+
import { useLocalizationContext as B } from "../../../../contexts/LocalizationContext.js";
|
|
17
|
+
import { useDocumentContext as $ } from "../../../../contexts/RPDocumentContext.js";
|
|
18
|
+
import { useViewModeContext as q } from "../../../../contexts/ViewModeContext.js";
|
|
19
|
+
import { useRotationContext as J } from "../../../../contexts/RotationContext.js";
|
|
20
|
+
import { ChevronDownIcon as K } from "../../../icons/ChevronDownIcon.js";
|
|
21
|
+
const Q = [50, 75, 100, 125, 150, 200, 300, 400], Co = ({ icon: a }) => {
|
|
22
|
+
const { zoomLevel: h, setZoomLevel: i } = y(), { container: T, pagesRef: r } = R(), { zoomTool: s = !0 } = _(), { focusedPage: d } = F(), { rotate: f } = J(), { pages: x } = $(), { localeMessages: o } = B(), { viewMode: b } = q(), [P, Z] = N(0), z = S(
|
|
23
|
+
new ResizeObserver((t) => {
|
|
24
|
+
Z(t[0].contentRect.height);
|
|
25
|
+
})
|
|
26
|
+
), n = W(() => {
|
|
27
|
+
const t = x.get(d);
|
|
28
|
+
return t ? t.page.getViewport({ scale: 1, rotation: f + t.defaultRotation }) : null;
|
|
29
|
+
}, [x, d, f]), C = g(
|
|
30
|
+
(t) => {
|
|
31
|
+
const w = ((n == null ? void 0 : n.width) || 0) + 2 * L, A = ((n == null ? void 0 : n.height) || 0) + 2 * L, D = (r == null ? void 0 : r.clientWidth) || 0, H = (r == null ? void 0 : r.clientHeight) || 0, I = V(
|
|
32
|
+
t,
|
|
33
|
+
D,
|
|
34
|
+
H,
|
|
35
|
+
w,
|
|
36
|
+
A,
|
|
37
|
+
b
|
|
38
|
+
);
|
|
39
|
+
i(I);
|
|
40
|
+
},
|
|
41
|
+
[i, n, r]
|
|
42
|
+
), c = g(
|
|
43
|
+
(t) => {
|
|
44
|
+
typeof t == "number" ? i(t) : C(t);
|
|
45
|
+
},
|
|
46
|
+
[i, C]
|
|
47
|
+
);
|
|
48
|
+
return k(() => (r && z.current.observe(r), () => {
|
|
49
|
+
z.current.disconnect();
|
|
50
|
+
}), [r]), typeof s != "boolean" ? /* @__PURE__ */ e(s, { zoomLevel: h, setZoomLevel: i }) : s ? /* @__PURE__ */ e(G, { children: /* @__PURE__ */ e(
|
|
51
|
+
j,
|
|
52
|
+
{
|
|
53
|
+
container: T,
|
|
54
|
+
triggerComponent: /* @__PURE__ */ e("div", { role: "button", children: /* @__PURE__ */ e(O, { content: o == null ? void 0 : o.zoomSelectTooltip, children: /* @__PURE__ */ l(
|
|
55
|
+
E,
|
|
56
|
+
{
|
|
57
|
+
className: m["rp-current-zoom-wrapper"],
|
|
58
|
+
"aria-label": o == null ? void 0 : o.zoomSelectTooltip,
|
|
59
|
+
children: [
|
|
60
|
+
/* @__PURE__ */ e("span", { className: m["rp-current-zoom-text"], children: h }),
|
|
61
|
+
/* @__PURE__ */ e("span", { className: m["rp-current-zoom-text"], children: "%" }),
|
|
62
|
+
/* @__PURE__ */ e("div", { className: m["rp-zoom-level-icon"], children: a || /* @__PURE__ */ e(K, {}) })
|
|
63
|
+
]
|
|
64
|
+
}
|
|
65
|
+
) }) }),
|
|
66
|
+
style: { minWidth: "200px" },
|
|
67
|
+
align: "center",
|
|
68
|
+
children: /* @__PURE__ */ l(
|
|
69
|
+
"div",
|
|
70
|
+
{
|
|
71
|
+
style: { maxHeight: `${P}px`, overflow: "auto" },
|
|
72
|
+
className: m["rp-zoom-dropdown-content"],
|
|
73
|
+
children: [
|
|
74
|
+
/* @__PURE__ */ l(v, { children: [
|
|
75
|
+
/* @__PURE__ */ e(p, { onClick: () => c(u.ACTUAL), children: o == null ? void 0 : o.zoomActualSize }),
|
|
76
|
+
/* @__PURE__ */ e(p, { onClick: () => c(u.PAGE_FIT), children: o == null ? void 0 : o.zoomPageFit }),
|
|
77
|
+
/* @__PURE__ */ e(p, { onClick: () => c(u.PAGE_WIDTH), children: o == null ? void 0 : o.zoomPageWidth })
|
|
78
|
+
] }),
|
|
79
|
+
/* @__PURE__ */ e(U, {}),
|
|
80
|
+
/* @__PURE__ */ e(v, { children: Q.map((t) => /* @__PURE__ */ l(p, { onClick: () => c(t), children: [
|
|
81
|
+
t,
|
|
82
|
+
" %"
|
|
83
|
+
] }, t)) })
|
|
84
|
+
]
|
|
85
|
+
}
|
|
86
|
+
)
|
|
87
|
+
}
|
|
88
|
+
) }) : null;
|
|
89
|
+
};
|
|
90
|
+
export {
|
|
91
|
+
Co as ZoomLevelTool
|
|
92
|
+
};
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { jsx as t, Fragment as p } from "react/jsx-runtime";
|
|
2
|
+
import { useMemo as c, useCallback as O } from "react";
|
|
3
|
+
import { useZoomContext as d } from "../../../../contexts/ZoomContext.js";
|
|
4
|
+
import { UIButton as f } from "../../../ui/Button.js";
|
|
5
|
+
import Z from "../../../ui/RPTooltip.js";
|
|
6
|
+
import { useLocalizationContext as a } from "../../../../contexts/LocalizationContext.js";
|
|
7
|
+
import { ZoomOutIcon as h } from "../../../icons/ZoomOutIcon.js";
|
|
8
|
+
import { MIN_ZOOM_SCALE as C, MAX_ZOOM_SCALE as s } from "../../../../utils/constants.js";
|
|
9
|
+
const I = ({ icon: r }) => {
|
|
10
|
+
const { zoomLevel: m, setZoomLevel: i } = d(), { localeMessages: o } = a(), n = c(() => m <= C, [m]), e = O(() => {
|
|
11
|
+
i((u) => {
|
|
12
|
+
const l = Math.ceil(u / 25) * 25;
|
|
13
|
+
return Math.min(l - 25, s);
|
|
14
|
+
});
|
|
15
|
+
}, [i]);
|
|
16
|
+
return /* @__PURE__ */ t(p, { children: /* @__PURE__ */ t(Z, { content: o == null ? void 0 : o.zoomOutTooltip, children: /* @__PURE__ */ t(
|
|
17
|
+
f,
|
|
18
|
+
{
|
|
19
|
+
disabled: n,
|
|
20
|
+
onClick: e,
|
|
21
|
+
"aria-label": o == null ? void 0 : o.zoomOutTooltip,
|
|
22
|
+
children: r || /* @__PURE__ */ t(h, {})
|
|
23
|
+
}
|
|
24
|
+
) }) });
|
|
25
|
+
};
|
|
26
|
+
export {
|
|
27
|
+
I as ZoomOutTool
|
|
28
|
+
};
|
|
@@ -2,7 +2,7 @@ import "react/jsx-runtime";
|
|
|
2
2
|
import "react";
|
|
3
3
|
import "../../contexts/RPDocumentContext.js";
|
|
4
4
|
import "../../contexts/DocumentPasswordContext.js";
|
|
5
|
-
import { A as
|
|
5
|
+
import { A as X } from "../../RPLayout-3042ec91.js";
|
|
6
6
|
import "../../contexts/DarkModeContext.js";
|
|
7
7
|
import "../../utils/types.js";
|
|
8
8
|
import "../../contexts/RotationContext.js";
|
|
@@ -31,9 +31,21 @@ import "../RPConfig.js";
|
|
|
31
31
|
import "../../contexts/ThemeContext.js";
|
|
32
32
|
import "../RPDropFileZone.js";
|
|
33
33
|
import "../../contexts/ToolbarComponentContext.js";
|
|
34
|
+
import "../ui/Button.js";
|
|
35
|
+
import "../../SearchCloseButton-ddb9877e.js";
|
|
36
|
+
import "../ui/Input.js";
|
|
37
|
+
import "../ui/Checkbox.js";
|
|
38
|
+
import "../icons/LoaderIcon.js";
|
|
39
|
+
import "../../contexts/IconContext.js";
|
|
40
|
+
import "../ui/RPTooltip.js";
|
|
41
|
+
import "../../Popover-48c8394c.js";
|
|
42
|
+
import "../../contexts/ViewportContext.js";
|
|
43
|
+
import "../ui/DropDown.js";
|
|
44
|
+
import "../layout/toolbar/MenuItem.js";
|
|
45
|
+
import "../layout/toolbar/MenuSeparator.js";
|
|
34
46
|
import "pdfjs-dist";
|
|
35
47
|
import "../../utils/link_service.js";
|
|
36
48
|
import "../../utils/annotations.js";
|
|
37
49
|
export {
|
|
38
|
-
|
|
50
|
+
X as AnnotationLayer
|
|
39
51
|
};
|
|
@@ -2,7 +2,7 @@ import "react/jsx-runtime";
|
|
|
2
2
|
import "react";
|
|
3
3
|
import "../../contexts/RPDocumentContext.js";
|
|
4
4
|
import "../../contexts/DocumentPasswordContext.js";
|
|
5
|
-
import { C as
|
|
5
|
+
import { C as U } from "../../RPLayout-3042ec91.js";
|
|
6
6
|
import "../../contexts/DarkModeContext.js";
|
|
7
7
|
import "../../contexts/RotationContext.js";
|
|
8
8
|
import "../../contexts/LayerContext.js";
|
|
@@ -30,7 +30,19 @@ import "../RPConfig.js";
|
|
|
30
30
|
import "../../contexts/ThemeContext.js";
|
|
31
31
|
import "../RPDropFileZone.js";
|
|
32
32
|
import "../../contexts/ToolbarComponentContext.js";
|
|
33
|
+
import "../ui/Button.js";
|
|
34
|
+
import "../../SearchCloseButton-ddb9877e.js";
|
|
35
|
+
import "../ui/Input.js";
|
|
36
|
+
import "../ui/Checkbox.js";
|
|
37
|
+
import "../icons/LoaderIcon.js";
|
|
38
|
+
import "../../contexts/IconContext.js";
|
|
39
|
+
import "../ui/RPTooltip.js";
|
|
40
|
+
import "../../Popover-48c8394c.js";
|
|
41
|
+
import "../../contexts/ViewportContext.js";
|
|
42
|
+
import "../ui/DropDown.js";
|
|
43
|
+
import "../layout/toolbar/MenuItem.js";
|
|
44
|
+
import "../layout/toolbar/MenuSeparator.js";
|
|
33
45
|
import "../../utils/renderPage.js";
|
|
34
46
|
export {
|
|
35
|
-
|
|
47
|
+
U as CanvasLayer
|
|
36
48
|
};
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import "react/jsx-runtime";
|
|
2
2
|
import "react";
|
|
3
|
-
import {
|
|
3
|
+
import { w as U } from "../../RPLayout-3042ec91.js";
|
|
4
4
|
import "../../contexts/RPDocumentContext.js";
|
|
5
5
|
import "../../contexts/DocumentPasswordContext.js";
|
|
6
6
|
import "../../contexts/DarkModeContext.js";
|
|
@@ -30,8 +30,19 @@ import "../RPConfig.js";
|
|
|
30
30
|
import "../../contexts/ThemeContext.js";
|
|
31
31
|
import "../RPDropFileZone.js";
|
|
32
32
|
import "../../contexts/ToolbarComponentContext.js";
|
|
33
|
+
import "../ui/Button.js";
|
|
34
|
+
import "../../SearchCloseButton-ddb9877e.js";
|
|
35
|
+
import "../ui/Input.js";
|
|
36
|
+
import "../ui/Checkbox.js";
|
|
33
37
|
import "../icons/LoaderIcon.js";
|
|
38
|
+
import "../../contexts/IconContext.js";
|
|
39
|
+
import "../ui/RPTooltip.js";
|
|
40
|
+
import "../../Popover-48c8394c.js";
|
|
41
|
+
import "../../contexts/ViewportContext.js";
|
|
42
|
+
import "../ui/DropDown.js";
|
|
43
|
+
import "../layout/toolbar/MenuItem.js";
|
|
44
|
+
import "../layout/toolbar/MenuSeparator.js";
|
|
34
45
|
import "./CustomElement.js";
|
|
35
46
|
export {
|
|
36
|
-
|
|
47
|
+
U as RPPage
|
|
37
48
|
};
|
|
@@ -2,7 +2,7 @@ import "react/jsx-runtime";
|
|
|
2
2
|
import "react";
|
|
3
3
|
import "../../contexts/RPDocumentContext.js";
|
|
4
4
|
import "../../contexts/DocumentPasswordContext.js";
|
|
5
|
-
import {
|
|
5
|
+
import { v as V } from "../../RPLayout-3042ec91.js";
|
|
6
6
|
import "../../contexts/DarkModeContext.js";
|
|
7
7
|
import "../../contexts/RotationContext.js";
|
|
8
8
|
import "../../contexts/LayerContext.js";
|
|
@@ -30,8 +30,20 @@ import "../RPConfig.js";
|
|
|
30
30
|
import "../../contexts/ThemeContext.js";
|
|
31
31
|
import "../RPDropFileZone.js";
|
|
32
32
|
import "../../contexts/ToolbarComponentContext.js";
|
|
33
|
+
import "../ui/Button.js";
|
|
34
|
+
import "../../SearchCloseButton-ddb9877e.js";
|
|
35
|
+
import "../ui/Input.js";
|
|
36
|
+
import "../ui/Checkbox.js";
|
|
37
|
+
import "../icons/LoaderIcon.js";
|
|
38
|
+
import "../../contexts/IconContext.js";
|
|
39
|
+
import "../ui/RPTooltip.js";
|
|
40
|
+
import "../../Popover-48c8394c.js";
|
|
41
|
+
import "../../contexts/ViewportContext.js";
|
|
42
|
+
import "../ui/DropDown.js";
|
|
43
|
+
import "../layout/toolbar/MenuItem.js";
|
|
44
|
+
import "../layout/toolbar/MenuSeparator.js";
|
|
33
45
|
import "./searchHighlight.js";
|
|
34
46
|
import "../../utils/highlight.js";
|
|
35
47
|
export {
|
|
36
|
-
|
|
48
|
+
V as TextHighlightLayer
|
|
37
49
|
};
|
|
@@ -2,7 +2,7 @@ import "react/jsx-runtime";
|
|
|
2
2
|
import "react";
|
|
3
3
|
import "../../contexts/RPDocumentContext.js";
|
|
4
4
|
import "../../contexts/DocumentPasswordContext.js";
|
|
5
|
-
import {
|
|
5
|
+
import { t as V } from "../../RPLayout-3042ec91.js";
|
|
6
6
|
import "../../contexts/DarkModeContext.js";
|
|
7
7
|
import "../../contexts/RotationContext.js";
|
|
8
8
|
import "../../contexts/LayerContext.js";
|
|
@@ -30,8 +30,20 @@ import "../RPConfig.js";
|
|
|
30
30
|
import "../../contexts/ThemeContext.js";
|
|
31
31
|
import "../RPDropFileZone.js";
|
|
32
32
|
import "../../contexts/ToolbarComponentContext.js";
|
|
33
|
+
import "../ui/Button.js";
|
|
34
|
+
import "../../SearchCloseButton-ddb9877e.js";
|
|
35
|
+
import "../ui/Input.js";
|
|
36
|
+
import "../ui/Checkbox.js";
|
|
37
|
+
import "../icons/LoaderIcon.js";
|
|
38
|
+
import "../../contexts/IconContext.js";
|
|
39
|
+
import "../ui/RPTooltip.js";
|
|
40
|
+
import "../../Popover-48c8394c.js";
|
|
41
|
+
import "../../contexts/ViewportContext.js";
|
|
42
|
+
import "../ui/DropDown.js";
|
|
43
|
+
import "../layout/toolbar/MenuItem.js";
|
|
44
|
+
import "../layout/toolbar/MenuSeparator.js";
|
|
33
45
|
import "pdfjs-dist";
|
|
34
46
|
import "../../utils/highlight.js";
|
|
35
47
|
export {
|
|
36
|
-
|
|
48
|
+
V as TextLayer
|
|
37
49
|
};
|