@react-pdf-kit/viewer 0.0.0-experimental.3 → 0.0.0-experimental.4

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.
Files changed (48) hide show
  1. package/dist/RPLayout.module-7766e0b4.js +14 -0
  2. package/dist/assets/style.css +1 -1
  3. package/dist/assets/style.js +15 -15
  4. package/dist/components/RPController.js +24 -20
  5. package/dist/components/RPPages.js +322 -321
  6. package/dist/components/RPProvider.js +22 -19
  7. package/dist/components/layout/LayoutContainer.js +1 -1
  8. package/dist/components/layout/LayoutWrapper.js +1 -1
  9. package/dist/components/layout/RPDefaultLayout.js +5 -3
  10. package/dist/components/layout/RPLayout.js +5 -3
  11. package/dist/components/layout/toolbar/RPToolbar.js +4 -2
  12. package/dist/components/layout/toolbar/SearchResultNavigator.js +4 -2
  13. package/dist/components/layout/toolbar/SearchTool.js +4 -2
  14. package/dist/components/layout/toolbar/ToolbarDefault.js +4 -2
  15. package/dist/components/layout/toolbar/ToolbarLayout.js +4 -2
  16. package/dist/components/layout/toolbar/tools/DualPageWithCoverTool.js +7 -4
  17. package/dist/components/layout/toolbar/tools/FirstPageTool.js +7 -4
  18. package/dist/components/layout/toolbar/tools/LastPageTool.js +7 -4
  19. package/dist/components/layout/toolbar/tools/defaults/RPHorizontalBar.js +4 -2
  20. package/dist/components/page/AnnotationLayer.js +52 -52
  21. package/dist/components/page/DualPage.js +9 -4
  22. package/dist/components/page/DualPageWithCover.js +9 -4
  23. package/dist/components/page/RPPage.js +9 -4
  24. package/dist/components/page/SinglePage.js +9 -4
  25. package/dist/components/page/TextHighlightLayer.js +84 -177
  26. package/dist/components/page/TextLayer.js +124 -170
  27. package/dist/contexts/HighlightContext.js +8 -6
  28. package/dist/contexts/SearchContext.js +6 -4
  29. package/dist/contexts/TextSelectionContext.js +191 -0
  30. package/dist/main.js +114 -112
  31. package/dist/types/contexts/TextSelectionContext.d.ts +14 -0
  32. package/dist/types/utils/geometryCache.d.ts +15 -0
  33. package/dist/types/utils/glyphHitTest.d.ts +12 -0
  34. package/dist/types/utils/hooks/useTextSelection.d.ts +12 -3
  35. package/dist/types/utils/selectionUtils.d.ts +30 -0
  36. package/dist/utils/geometryCache.js +32 -0
  37. package/dist/utils/glyphHitTest.js +29 -0
  38. package/dist/utils/highlight.js +184 -158
  39. package/dist/utils/hooks/useCopyText.js +60 -22
  40. package/dist/utils/hooks/useHighlight.js +35 -33
  41. package/dist/utils/hooks/useLicense.js +1 -1
  42. package/dist/utils/hooks/useSearch.js +4 -2
  43. package/dist/utils/hooks/useTextSelection.js +2 -73
  44. package/dist/utils/selectionUtils.js +96 -0
  45. package/package.json +2 -2
  46. package/dist/RPLayout.module-b4b23e29.js +0 -14
  47. package/dist/types/utils/hooks/useFlickerSelectText.d.ts +0 -1
  48. package/dist/utils/hooks/useFlickerSelectText.js +0 -25
@@ -1,13 +1,12 @@
1
1
  import { jsx as r } from "react/jsx-runtime";
2
- import { useMemo as v, useEffect as C } from "react";
2
+ import { useMemo as u, useEffect as C } from "react";
3
3
  import { DocumentProvider as g } from "../contexts/RPDocumentContext.js";
4
4
  import { DocumentPasswordProvider as b } from "../contexts/DocumentPasswordContext.js";
5
- import { RPController as T } from "./RPController.js";
6
- import { LoaderProvider as x } from "../contexts/LoaderContext.js";
7
- import { ToolComponentProvider as L } from "../contexts/ToolComponentContext.js";
8
- import { IconToolProvider as j } from "../contexts/IconToolContext.js";
9
- import { OtherToolProvider as k } from "../contexts/OtherToolContext.js";
10
- import { useFlickerSelectText as w } from "../utils/hooks/useFlickerSelectText.js";
5
+ import { RPController as L } from "./RPController.js";
6
+ import { LoaderProvider as T } from "../contexts/LoaderContext.js";
7
+ import { ToolComponentProvider as j } from "../contexts/ToolComponentContext.js";
8
+ import { IconToolProvider as w } from "../contexts/IconToolContext.js";
9
+ import { OtherToolProvider as x } from "../contexts/OtherToolContext.js";
11
10
  import { EventCallbackProvider as y } from "../contexts/EventCallbackContext.js";
12
11
  import { combinedCSS as D } from "../assets/style.js";
13
12
  import { injectGlobalCSS as E } from "../libInjectCss.js";
@@ -59,6 +58,8 @@ import "../contexts/SearchContext.js";
59
58
  import "../utils/hooks/useSearch.js";
60
59
  import "../utils/highlight.js";
61
60
  import "../utils/charators.js";
61
+ import "../utils/selectionUtils.js";
62
+ import "../utils/geometryCache.js";
62
63
  import "../utils/getWordPositionInPage.js";
63
64
  import "../contexts/LocalizationContext.js";
64
65
  import "../utils/hooks/useLocalization.js";
@@ -74,9 +75,11 @@ import "../utils/getElementPositionInPage.js";
74
75
  import "../contexts/RenderQueueProvider.js";
75
76
  import "../utils/Queue.js";
76
77
  import "../utils/renderPage.js";
78
+ import "../contexts/TextSelectionContext.js";
79
+ import "../utils/glyphHitTest.js";
77
80
  import "./icons/LoaderIcon.js";
78
81
  import "../clsx-0c6e471a.js";
79
- const to = (i) => {
82
+ const mo = (i) => {
80
83
  const {
81
84
  children: m,
82
85
  src: o,
@@ -84,17 +87,17 @@ const to = (i) => {
84
87
  onLoaded: e,
85
88
  onLoadError: n,
86
89
  loaderImage: c,
87
- onLoadProgress: l,
88
- disableAutoFetch: d,
90
+ onLoadProgress: d,
91
+ disableAutoFetch: l,
89
92
  disableStream: a,
90
93
  rangeChunkSize: s,
91
94
  onPageChange: f,
92
95
  onRotate: P,
93
96
  onScroll: h,
94
- onTextSelect: S,
95
- ...u
96
- } = i, t = v(() => typeof o == "string" ? o : `${Date.now()}`, [o]);
97
- return w(), C(() => {
97
+ onTextSelect: v,
98
+ ...S
99
+ } = i, t = u(() => typeof o == "string" ? o : `${Date.now()}`, [o]);
100
+ return C(() => {
98
101
  E(D, "rp-viewer-styles"), R();
99
102
  }, []), /* @__PURE__ */ r(b, { children: /* @__PURE__ */ r(
100
103
  g,
@@ -103,8 +106,8 @@ const to = (i) => {
103
106
  characterMap: p,
104
107
  onLoaded: e,
105
108
  onLoadError: n,
106
- onLoadProgress: l,
107
- disableAutoFetch: d,
109
+ onLoadProgress: d,
110
+ disableAutoFetch: l,
108
111
  disableStream: a,
109
112
  rangeChunkSize: s,
110
113
  children: /* @__PURE__ */ r(
@@ -113,8 +116,8 @@ const to = (i) => {
113
116
  onPageChange: f,
114
117
  onRotate: P,
115
118
  onScroll: h,
116
- onTextSelect: S,
117
- children: /* @__PURE__ */ r(T, { ...u, children: /* @__PURE__ */ r(x, { loaderImage: c, children: /* @__PURE__ */ r(L, { children: /* @__PURE__ */ r(j, { children: /* @__PURE__ */ r(k, { children: m }) }) }) }, t) }, t)
119
+ onTextSelect: v,
120
+ children: /* @__PURE__ */ r(L, { ...S, children: /* @__PURE__ */ r(T, { loaderImage: c, children: /* @__PURE__ */ r(j, { children: /* @__PURE__ */ r(w, { children: /* @__PURE__ */ r(x, { children: m }) }) }) }, t) }, t)
118
121
  }
119
122
  )
120
123
  },
@@ -122,5 +125,5 @@ const to = (i) => {
122
125
  ) });
123
126
  };
124
127
  export {
125
- to as RPProvider
128
+ mo as RPProvider
126
129
  };
@@ -1,6 +1,6 @@
1
1
  import { jsx as l } from "react/jsx-runtime";
2
2
  import { c as d } from "../../clsx-0c6e471a.js";
3
- import { c as t } from "../../RPLayout.module-b4b23e29.js";
3
+ import { c as t } from "../../RPLayout.module-7766e0b4.js";
4
4
  import { useThemeContext as h } from "../../contexts/ThemeContext.js";
5
5
  import { useDarkModeContext as f } from "../../contexts/DarkModeContext.js";
6
6
  import { withRef as u } from "../../utils/withRef.js";
@@ -1,5 +1,5 @@
1
1
  import { jsx as s } from "react/jsx-runtime";
2
- import { c as e } from "../../RPLayout.module-b4b23e29.js";
2
+ import { c as e } from "../../RPLayout.module-7766e0b4.js";
3
3
  import { withRef as a } from "../../utils/withRef.js";
4
4
  import "react";
5
5
  const l = a((r, o) => {
@@ -2,7 +2,7 @@ import { jsx as o, jsxs as t } from "react/jsx-runtime";
2
2
  import { forwardRef as L, useState as P, useEffect as R } from "react";
3
3
  import { RPToolbar as w } from "./toolbar/RPToolbar.js";
4
4
  import { RPSidebar as x } from "./sidebar/RPSidebar.js";
5
- import { c as r } from "../../RPLayout.module-b4b23e29.js";
5
+ import { c as r } from "../../RPLayout.module-7766e0b4.js";
6
6
  import { ToolbarComponentProvider as D } from "../../contexts/ToolbarComponentContext.js";
7
7
  import { useLayoutContainer as N } from "../../contexts/LayoutContainerContext.js";
8
8
  import { Container as S } from "./Container.js";
@@ -128,6 +128,8 @@ import "../../contexts/SearchContext.js";
128
128
  import "../../utils/hooks/useSearch.js";
129
129
  import "../../utils/highlight.js";
130
130
  import "../../utils/charators.js";
131
+ import "../../utils/selectionUtils.js";
132
+ import "../../utils/geometryCache.js";
131
133
  import "../../utils/getWordPositionInPage.js";
132
134
  import "./toolbar/SearchResultNavigator.js";
133
135
  import "./toolbar/SearchCloseButton.js";
@@ -153,7 +155,7 @@ import "../../utils/hooks/usePdfProperties.js";
153
155
  import "../../utils/convertPdfDate.js";
154
156
  import "../../utils/formatFileSize.js";
155
157
  import "../../contexts/ThemeContext.js";
156
- const Ft = L((n, a) => {
158
+ const It = L((n, a) => {
157
159
  const {
158
160
  children: l,
159
161
  slots: s,
@@ -235,5 +237,5 @@ const Ft = L((n, a) => {
235
237
  ] }) }) }) }) });
236
238
  });
237
239
  export {
238
- Ft as RPDefaultLayout
240
+ It as RPDefaultLayout
239
241
  };
@@ -7,7 +7,7 @@ import { ToolbarLayout as g } from "./toolbar/ToolbarLayout.js";
7
7
  import { WrapperLayout as b } from "./WrapperLayout.js";
8
8
  import { useDocumentContext as x } from "../../contexts/RPDocumentContext.js";
9
9
  import { RPDropFileZone as k } from "../RPDropFileZone.js";
10
- import { c as j } from "../../RPLayout.module-b4b23e29.js";
10
+ import { c as j } from "../../RPLayout.module-7766e0b4.js";
11
11
  import { useLoaderContext as v } from "../../contexts/LoaderContext.js";
12
12
  import { LayoutContainer as w } from "./LayoutContainer.js";
13
13
  import { SkipLink as p } from "./SkipLink.js";
@@ -75,6 +75,8 @@ import "../../contexts/SearchContext.js";
75
75
  import "../../utils/hooks/useSearch.js";
76
76
  import "../../utils/highlight.js";
77
77
  import "../../utils/charators.js";
78
+ import "../../utils/selectionUtils.js";
79
+ import "../../utils/geometryCache.js";
78
80
  import "../../utils/getWordPositionInPage.js";
79
81
  import "../../contexts/IconContext.js";
80
82
  import "../icons/InfoIcon.js";
@@ -158,7 +160,7 @@ import "../../utils/formatFileSize.js";
158
160
  import "../icons/LightPdfIcon.js";
159
161
  import "../icons/DarkPdfIcon.js";
160
162
  import "../../contexts/ThemeContext.js";
161
- const wr = (e) => {
163
+ const Rr = (e) => {
162
164
  const {
163
165
  children: n,
164
166
  style: a,
@@ -210,5 +212,5 @@ const wr = (e) => {
210
212
  ] }) }) });
211
213
  };
212
214
  export {
213
- wr as RPLayout
215
+ Rr as RPLayout
214
216
  };
@@ -126,11 +126,13 @@ import "../../../contexts/SearchContext.js";
126
126
  import "../../../utils/hooks/useSearch.js";
127
127
  import "../../../utils/highlight.js";
128
128
  import "../../../utils/charators.js";
129
+ import "../../../utils/selectionUtils.js";
130
+ import "../../../utils/geometryCache.js";
129
131
  import "../../../utils/getWordPositionInPage.js";
130
132
  import "./SearchResultNavigator.js";
131
133
  import "./SearchCloseButton.js";
132
134
  import "../../../utils/hooks/usePrint.js";
133
- const Ur = v((x, m) => {
135
+ const Xr = v((x, m) => {
134
136
  const { showPrintProgress: p = !0 } = w(), { showPrintProgress: e = !0 } = b(), { progress: s, showDefaultProgress: n } = u(), { isSmallScreen: a } = C(), { percentage: i } = s || {}, l = () => a ? { gridTemplateColumns: "25% 60% 15%" } : void 0, d = () => {
135
137
  if (!(!(n ?? (p && e)) || !i))
136
138
  return /* @__PURE__ */ o(g, { percentage: i });
@@ -148,5 +150,5 @@ const Ur = v((x, m) => {
148
150
  ] });
149
151
  });
150
152
  export {
151
- Ur as RPToolbar
153
+ Xr as RPToolbar
152
154
  };
@@ -20,6 +20,8 @@ import "../../../utils/hooks/useSearch.js";
20
20
  import "../../../utils/types.js";
21
21
  import "../../../utils/highlight.js";
22
22
  import "../../../utils/charators.js";
23
+ import "../../../utils/selectionUtils.js";
24
+ import "../../../utils/geometryCache.js";
23
25
  import "../../../contexts/VirtualScrollContext.js";
24
26
  import "../../../contexts/ScrollModeContext.js";
25
27
  import "../../../contexts/InitialStateContext.js";
@@ -51,7 +53,7 @@ import "../../../contexts/SmoothScrollContext.js";
51
53
  import "../../../utils/getScrollDistance.js";
52
54
  import "../../../utils/calculatePage.js";
53
55
  import "../../../utils/getWordPositionInPage.js";
54
- const dt = () => {
56
+ const xt = () => {
55
57
  const { totalMatches: i, nextMatch: e, prevMatch: c } = d(), { localeMessages: t } = s(), p = !i || i === 0;
56
58
  return /* @__PURE__ */ h(l, { children: [
57
59
  /* @__PURE__ */ r(
@@ -98,5 +100,5 @@ const dt = () => {
98
100
  ] });
99
101
  };
100
102
  export {
101
- dt as SearchResultNavigator
103
+ xt as SearchResultNavigator
102
104
  };
@@ -32,6 +32,8 @@ import "../../../utils/types.js";
32
32
  import "../../../de_DE-a553b162.js";
33
33
  import "../../../utils/highlight.js";
34
34
  import "../../../utils/charators.js";
35
+ import "../../../utils/selectionUtils.js";
36
+ import "../../../utils/geometryCache.js";
35
37
  import "../../../contexts/VirtualScrollContext.js";
36
38
  import "../../../contexts/ScrollModeContext.js";
37
39
  import "../../../utils/appConsole.js";
@@ -75,7 +77,7 @@ const yt = () => {
75
77
  }, Tt = () => {
76
78
  const { searchClearIcon: s } = F(), { searchClearIcon: d } = H();
77
79
  return s ?? d ?? /* @__PURE__ */ o(ht, {});
78
- }, zo = ({ icon: s }) => {
80
+ }, Fo = ({ icon: s }) => {
79
81
  const { container: d } = st(), [u, L] = S(!1), { pdf: y } = ft(), [k, G] = S(null), {
80
82
  searchOptions: D,
81
83
  setSearchOptions: T,
@@ -264,5 +266,5 @@ const yt = () => {
264
266
  ) });
265
267
  };
266
268
  export {
267
- zo as SearchTool
269
+ Fo as SearchTool
268
270
  };
@@ -75,6 +75,8 @@ import "../../../contexts/SearchContext.js";
75
75
  import "../../../utils/hooks/useSearch.js";
76
76
  import "../../../utils/highlight.js";
77
77
  import "../../../utils/charators.js";
78
+ import "../../../utils/selectionUtils.js";
79
+ import "../../../utils/geometryCache.js";
78
80
  import "../../../utils/getWordPositionInPage.js";
79
81
  import "../../../contexts/IconContext.js";
80
82
  import "../../icons/InfoIcon.js";
@@ -144,7 +146,7 @@ import "../../icons/HandModeDefaultIcon.js";
144
146
  import "../../../contexts/SelectionModeContext.js";
145
147
  import "../../../utils/hooks/usePrint.js";
146
148
  import "../../../RPToolbar.module-27d7fe77.js";
147
- const co = (l) => {
149
+ const uo = (l) => {
148
150
  const { children: c } = l, i = s(null), { active: m } = w(), { showPrintProgress: d } = v(), { progress: h, showDefaultProgress: u } = x(), { percentage: p } = h || {}, e = s(null), [a, b] = P(D), f = u ?? d;
149
151
  return /* @__PURE__ */ o(n, { children: [
150
152
  /* @__PURE__ */ o("div", { className: t["rp-toolbar-layout"], children: [
@@ -189,5 +191,5 @@ const co = (l) => {
189
191
  ] });
190
192
  };
191
193
  export {
192
- co as ToolbarDefault
194
+ uo as ToolbarDefault
193
195
  };
@@ -74,6 +74,8 @@ import "../../../contexts/SearchContext.js";
74
74
  import "../../../utils/hooks/useSearch.js";
75
75
  import "../../../utils/highlight.js";
76
76
  import "../../../utils/charators.js";
77
+ import "../../../utils/selectionUtils.js";
78
+ import "../../../utils/geometryCache.js";
77
79
  import "../../../utils/getWordPositionInPage.js";
78
80
  import "../../../contexts/IconContext.js";
79
81
  import "../../icons/InfoIcon.js";
@@ -146,10 +148,10 @@ import "../../../contexts/SelectionModeContext.js";
146
148
  import "../../../RPToolbar.module-27d7fe77.js";
147
149
  import "../../ui/LoadingIndicator.js";
148
150
  import "../../../RPSplitter-f6acf13b.js";
149
- const Vr = (m) => {
151
+ const Xr = (m) => {
150
152
  const { children: r, toolbar: o } = m;
151
153
  return o && typeof o == "boolean" ? /* @__PURE__ */ t(i, { children: r }) : /* @__PURE__ */ t(p, { toolbar: o, children: r });
152
154
  };
153
155
  export {
154
- Vr as ToolbarLayout
156
+ Xr as ToolbarLayout
155
157
  };
@@ -33,6 +33,7 @@ import "../../../../contexts/ElementPageContext.js";
33
33
  import "../../../../contexts/PagesRotateContext.js";
34
34
  import "../../../../contexts/RenderQueueProvider.js";
35
35
  import "../../../../contexts/GlobalCurrentPage.js";
36
+ import "../../../../contexts/TextSelectionContext.js";
36
37
  import "../../../../contexts/LoaderContext.js";
37
38
  import "../../../../contexts/ToolComponentContext.js";
38
39
  import "../../../../contexts/IconToolContext.js";
@@ -68,7 +69,7 @@ import "../../../ui/LoadingIndicator.js";
68
69
  import "../../../../RPSplitter-f6acf13b.js";
69
70
  import "../../WrapperLayout.js";
70
71
  import "../../../RPDropFileZone.js";
71
- import "../../../../RPLayout.module-b4b23e29.js";
72
+ import "../../../../RPLayout.module-7766e0b4.js";
72
73
  import "../../LayoutContainer.js";
73
74
  import "../../SkipLink.js";
74
75
  import "../../../../index-113053cf.js";
@@ -101,6 +102,8 @@ import "../../../../utils/hooks/useThumbnail.js";
101
102
  import "../../../../utils/hooks/useSearch.js";
102
103
  import "../../../../utils/highlight.js";
103
104
  import "../../../../utils/charators.js";
105
+ import "../../../../utils/selectionUtils.js";
106
+ import "../../../../utils/geometryCache.js";
104
107
  import "../../../../utils/getWordPositionInPage.js";
105
108
  import "../../../../utils/hooks/useLocalization.js";
106
109
  import "../../../../utils/hooks/useHighlight.js";
@@ -109,6 +112,7 @@ import "../../../../utils/const.js";
109
112
  import "../../../../utils/getElementPositionInPage.js";
110
113
  import "../../../../utils/Queue.js";
111
114
  import "../../../../utils/renderPage.js";
115
+ import "../../../../utils/glyphHitTest.js";
112
116
  import "../../../page/RPPage.js";
113
117
  import "../../../page/CanvasLayer.js";
114
118
  import "../../../page/TextLayer.js";
@@ -131,7 +135,6 @@ import "../../../ui/PasswordModal.js";
131
135
  import "../../../../utils/hooks/usePresentPage.js";
132
136
  import "../../LayoutWrapper.js";
133
137
  import "../../../../utils/hooks/useCopyText.js";
134
- import "../../../../utils/hooks/useTextSelection.js";
135
138
  import "../../../../utils/approximateFragtion.js";
136
139
  import "../RPToolbar.js";
137
140
  import "../Paginate.js";
@@ -187,7 +190,7 @@ import "../../sidebar/Thumbnail.js";
187
190
  import "../../../../utils/hooks/useInfiniteScroll.js";
188
191
  import "../../../icons/LightPdfIcon.js";
189
192
  import "../../../icons/DarkPdfIcon.js";
190
- const C = ({ children: t, className: i, localeMessages: o }) => /* @__PURE__ */ r(m, { className: i, content: o == null ? void 0 : o.dualPageWithCoverTooltip, children: t }), Fr = ({ icon: t }) => {
193
+ const C = ({ children: t, className: i, localeMessages: o }) => /* @__PURE__ */ r(m, { className: i, content: o == null ? void 0 : o.dualPageWithCoverTooltip, children: t }), Jr = ({ icon: t }) => {
191
194
  const { setDualPageWithCover: i } = e(), { localeMessages: o } = u();
192
195
  return /* @__PURE__ */ r(C, { localeMessages: o, children: /* @__PURE__ */ r(
193
196
  p,
@@ -199,5 +202,5 @@ const C = ({ children: t, className: i, localeMessages: o }) => /* @__PURE__ */
199
202
  ) });
200
203
  };
201
204
  export {
202
- Fr as DualPageWithCoverTool
205
+ Jr as DualPageWithCoverTool
203
206
  };
@@ -32,6 +32,7 @@ import "../../../../contexts/ElementPageContext.js";
32
32
  import "../../../../contexts/PagesRotateContext.js";
33
33
  import "../../../../contexts/RenderQueueProvider.js";
34
34
  import "../../../../contexts/GlobalCurrentPage.js";
35
+ import "../../../../contexts/TextSelectionContext.js";
35
36
  import "../../../../contexts/LoaderContext.js";
36
37
  import "../../../../contexts/ToolComponentContext.js";
37
38
  import "../../../../contexts/IconToolContext.js";
@@ -68,7 +69,7 @@ import "../../../ui/LoadingIndicator.js";
68
69
  import "../../../../RPSplitter-f6acf13b.js";
69
70
  import "../../WrapperLayout.js";
70
71
  import "../../../RPDropFileZone.js";
71
- import "../../../../RPLayout.module-b4b23e29.js";
72
+ import "../../../../RPLayout.module-7766e0b4.js";
72
73
  import "../../LayoutContainer.js";
73
74
  import "../../SkipLink.js";
74
75
  import "../../../../index-113053cf.js";
@@ -101,6 +102,8 @@ import "../../../../utils/hooks/useThumbnail.js";
101
102
  import "../../../../utils/hooks/useSearch.js";
102
103
  import "../../../../utils/highlight.js";
103
104
  import "../../../../utils/charators.js";
105
+ import "../../../../utils/selectionUtils.js";
106
+ import "../../../../utils/geometryCache.js";
104
107
  import "../../../../utils/getWordPositionInPage.js";
105
108
  import "../../../../utils/hooks/useLocalization.js";
106
109
  import "../../../../utils/hooks/useHighlight.js";
@@ -109,6 +112,7 @@ import "../../../../utils/const.js";
109
112
  import "../../../../utils/getElementPositionInPage.js";
110
113
  import "../../../../utils/Queue.js";
111
114
  import "../../../../utils/renderPage.js";
115
+ import "../../../../utils/glyphHitTest.js";
112
116
  import "../../../page/RPPage.js";
113
117
  import "../../../page/CanvasLayer.js";
114
118
  import "../../../page/TextLayer.js";
@@ -131,7 +135,6 @@ import "../../../ui/PasswordModal.js";
131
135
  import "../../../../utils/hooks/usePresentPage.js";
132
136
  import "../../LayoutWrapper.js";
133
137
  import "../../../../utils/hooks/useCopyText.js";
134
- import "../../../../utils/hooks/useTextSelection.js";
135
138
  import "../../../../utils/approximateFragtion.js";
136
139
  import "../RPToolbar.js";
137
140
  import "../Paginate.js";
@@ -187,12 +190,12 @@ import "../../sidebar/Thumbnail.js";
187
190
  import "../../../../utils/hooks/useInfiniteScroll.js";
188
191
  import "../../../icons/LightPdfIcon.js";
189
192
  import "../../../icons/DarkPdfIcon.js";
190
- const l = ({ children: t, className: r, localeMessages: o }) => /* @__PURE__ */ i(n, { className: r, content: o == null ? void 0 : o.firstPageTooltip, children: t }), Jr = ({ icon: t }) => {
193
+ const l = ({ children: t, className: r, localeMessages: o }) => /* @__PURE__ */ i(n, { className: r, content: o == null ? void 0 : o.firstPageTooltip, children: t }), Qr = ({ icon: t }) => {
191
194
  const { goToPage: r } = f(), { localeMessages: o } = c(), m = p(() => {
192
195
  r(1);
193
196
  }, [r]);
194
197
  return /* @__PURE__ */ i(l, { localeMessages: o, children: /* @__PURE__ */ i(a, { onClick: m, "aria-label": o == null ? void 0 : o.firstPageTooltip, children: t || /* @__PURE__ */ i(T, { className: P["rp-go-to-Top"] }) }) });
195
198
  };
196
199
  export {
197
- Jr as FirstPageTool
200
+ Qr as FirstPageTool
198
201
  };
@@ -32,6 +32,7 @@ import "../../../../contexts/ElementPageContext.js";
32
32
  import "../../../../contexts/PagesRotateContext.js";
33
33
  import "../../../../contexts/RenderQueueProvider.js";
34
34
  import "../../../../contexts/GlobalCurrentPage.js";
35
+ import "../../../../contexts/TextSelectionContext.js";
35
36
  import "../../../../contexts/LoaderContext.js";
36
37
  import "../../../../contexts/ToolComponentContext.js";
37
38
  import "../../../../contexts/IconToolContext.js";
@@ -68,7 +69,7 @@ import "../../../ui/LoadingIndicator.js";
68
69
  import "../../../../RPSplitter-f6acf13b.js";
69
70
  import "../../WrapperLayout.js";
70
71
  import "../../../RPDropFileZone.js";
71
- import "../../../../RPLayout.module-b4b23e29.js";
72
+ import "../../../../RPLayout.module-7766e0b4.js";
72
73
  import "../../LayoutContainer.js";
73
74
  import "../../SkipLink.js";
74
75
  import "../../../../index-113053cf.js";
@@ -101,6 +102,8 @@ import "../../../../utils/hooks/useThumbnail.js";
101
102
  import "../../../../utils/hooks/useSearch.js";
102
103
  import "../../../../utils/highlight.js";
103
104
  import "../../../../utils/charators.js";
105
+ import "../../../../utils/selectionUtils.js";
106
+ import "../../../../utils/geometryCache.js";
104
107
  import "../../../../utils/getWordPositionInPage.js";
105
108
  import "../../../../utils/hooks/useLocalization.js";
106
109
  import "../../../../utils/hooks/useHighlight.js";
@@ -109,6 +112,7 @@ import "../../../../utils/const.js";
109
112
  import "../../../../utils/getElementPositionInPage.js";
110
113
  import "../../../../utils/Queue.js";
111
114
  import "../../../../utils/renderPage.js";
115
+ import "../../../../utils/glyphHitTest.js";
112
116
  import "../../../page/RPPage.js";
113
117
  import "../../../page/CanvasLayer.js";
114
118
  import "../../../page/TextLayer.js";
@@ -131,7 +135,6 @@ import "../../../ui/PasswordModal.js";
131
135
  import "../../../../utils/hooks/usePresentPage.js";
132
136
  import "../../LayoutWrapper.js";
133
137
  import "../../../../utils/hooks/useCopyText.js";
134
- import "../../../../utils/hooks/useTextSelection.js";
135
138
  import "../../../../utils/approximateFragtion.js";
136
139
  import "../RPToolbar.js";
137
140
  import "../Paginate.js";
@@ -187,12 +190,12 @@ import "../../sidebar/Thumbnail.js";
187
190
  import "../../../../utils/hooks/useInfiniteScroll.js";
188
191
  import "../../../icons/LightPdfIcon.js";
189
192
  import "../../../icons/DarkPdfIcon.js";
190
- const c = ({ children: t, className: r, localeMessages: o }) => /* @__PURE__ */ m(a, { className: r, content: o == null ? void 0 : o.lastPageTooltip, children: t }), Kr = ({ icon: t }) => {
193
+ const c = ({ children: t, className: r, localeMessages: o }) => /* @__PURE__ */ m(a, { className: r, content: o == null ? void 0 : o.lastPageTooltip, children: t }), Qr = ({ icon: t }) => {
191
194
  const { goToPage: r, totalPages: o } = T(), { localeMessages: i } = f(), p = n(() => {
192
195
  r(o);
193
196
  }, [r, o]);
194
197
  return /* @__PURE__ */ m(c, { localeMessages: i, children: /* @__PURE__ */ m(P, { onClick: p, "aria-label": i == null ? void 0 : i.lastPageTooltip, children: t || /* @__PURE__ */ m(l, {}) }) });
195
198
  };
196
199
  export {
197
- Kr as LastPageTool
200
+ Qr as LastPageTool
198
201
  };
@@ -28,6 +28,8 @@ import "../../../../../utils/types.js";
28
28
  import "../../../../../de_DE-a553b162.js";
29
29
  import "../../../../../utils/highlight.js";
30
30
  import "../../../../../utils/charators.js";
31
+ import "../../../../../utils/selectionUtils.js";
32
+ import "../../../../../utils/geometryCache.js";
31
33
  import "../../../../../contexts/VirtualScrollContext.js";
32
34
  import "../../../../../contexts/ScrollModeContext.js";
33
35
  import "../../../../../utils/appConsole.js";
@@ -129,7 +131,7 @@ import "../../SelectionModeTool.js";
129
131
  import "../../../../icons/TextSelectionDefaultIcon.js";
130
132
  import "../../../../icons/HandModeDefaultIcon.js";
131
133
  import "../../../../../contexts/SelectionModeContext.js";
132
- const Ut = (u) => {
134
+ const Xt = (u) => {
133
135
  const { icons: i, slots: m } = u, { setIcons: p } = I(), { setSlots: e } = T(), [s, a] = d(!1), [l, n] = d(!1), { isSmallScreen: h } = x(), S = () => h ? { gridTemplateColumns: "25% 60% 15%" } : void 0;
134
136
  return f(() => {
135
137
  p((r) => ({ ...r, ...i })), a(!0);
@@ -145,5 +147,5 @@ const Ut = (u) => {
145
147
  ] }) });
146
148
  };
147
149
  export {
148
- Ut as RPHorizontalBar
150
+ Xt as RPHorizontalBar
149
151
  };