@pdf-viewer/react 1.17.0-rc.1 → 1.18.0-beta.0

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 (120) hide show
  1. package/dist/LayoutWrapper-60db8675.js +20 -0
  2. package/dist/{ToolbarLayout.module-df04508a.js → ToolbarLayout.module-3f4e0f88.js} +544 -536
  3. package/dist/assets/style.css +1 -1
  4. package/dist/assets/style.js +5 -5
  5. package/dist/components/RPController.js +19 -18
  6. package/dist/components/RPPages.js +7 -6
  7. package/dist/components/RPProvider.js +37 -26
  8. package/dist/components/layout/LayoutContainer.js +7 -6
  9. package/dist/components/layout/LayoutWrapper.js +1 -1
  10. package/dist/components/layout/RPDefaultLayout.js +7 -6
  11. package/dist/components/layout/RPLayout.js +21 -20
  12. package/dist/components/layout/SkipLink.js +6 -6
  13. package/dist/components/layout/sidebar/RPSidebar.js +7 -6
  14. package/dist/components/layout/sidebar/Thumbnail.js +7 -6
  15. package/dist/components/layout/sidebar/Thumbnails.js +7 -6
  16. package/dist/components/layout/toolbar/DarkModeTool.js +2 -2
  17. package/dist/components/layout/toolbar/DocumentDialog.js +7 -6
  18. package/dist/components/layout/toolbar/DocumentProperties.js +3 -3
  19. package/dist/components/layout/toolbar/FileDownloadTool.js +7 -6
  20. package/dist/components/layout/toolbar/FileUploadTool.js +3 -3
  21. package/dist/components/layout/toolbar/FullScreenTool.js +3 -3
  22. package/dist/components/layout/toolbar/MenuItem.js +3 -3
  23. package/dist/components/layout/toolbar/MenuSeparator.js +3 -3
  24. package/dist/components/layout/toolbar/MostPageTool.js +7 -6
  25. package/dist/components/layout/toolbar/OtherTool.js +7 -6
  26. package/dist/components/layout/toolbar/Paginate.js +7 -6
  27. package/dist/components/layout/toolbar/PrintTool.js +7 -6
  28. package/dist/components/layout/toolbar/RPMenuItem.js +3 -3
  29. package/dist/components/layout/toolbar/RPMoreOptions.js +11 -10
  30. package/dist/components/layout/toolbar/RPToolbar.js +7 -6
  31. package/dist/components/layout/toolbar/RPToolbarEnd.js +7 -6
  32. package/dist/components/layout/toolbar/RotateTool.js +3 -3
  33. package/dist/components/layout/toolbar/ScrollModeTool.js +3 -3
  34. package/dist/components/layout/toolbar/SearchCloseButton.js +2 -2
  35. package/dist/components/layout/toolbar/SearchResultNavigator.js +7 -6
  36. package/dist/components/layout/toolbar/SearchTool.js +7 -6
  37. package/dist/components/layout/toolbar/SelectionModeTool.js +3 -3
  38. package/dist/components/layout/toolbar/ThumbnailTool.js +8 -7
  39. package/dist/components/layout/toolbar/ToolbarCustom.js +17 -16
  40. package/dist/components/layout/toolbar/ToolbarDefault.js +13 -12
  41. package/dist/components/layout/toolbar/ToolbarLayout.js +8 -7
  42. package/dist/components/layout/toolbar/ViewModeTool.js +3 -3
  43. package/dist/components/layout/toolbar/ZoomTool.js +7 -6
  44. package/dist/components/layout/toolbar/tools/DocumentPropertiesTool.js +8 -7
  45. package/dist/components/layout/toolbar/tools/DualPageTool.js +8 -7
  46. package/dist/components/layout/toolbar/tools/DualPageWithCoverTool.js +8 -7
  47. package/dist/components/layout/toolbar/tools/FileDownloadTool.js +8 -7
  48. package/dist/components/layout/toolbar/tools/FileUploadTool.js +2 -2
  49. package/dist/components/layout/toolbar/tools/FirstPageTool.js +148 -0
  50. package/dist/components/layout/toolbar/tools/FullScreenTool.js +2 -2
  51. package/dist/components/layout/toolbar/tools/HorizontalScrollingTool.js +2 -2
  52. package/dist/components/layout/toolbar/tools/InputPageTool.js +8 -7
  53. package/dist/components/layout/toolbar/tools/LastPageTool.js +148 -0
  54. package/dist/components/layout/toolbar/tools/NextPageTool.js +8 -7
  55. package/dist/components/layout/toolbar/tools/PageScrollingTool.js +2 -2
  56. package/dist/components/layout/toolbar/tools/PreviousPageTool.js +8 -7
  57. package/dist/components/layout/toolbar/tools/PrintTool.js +8 -7
  58. package/dist/components/layout/toolbar/tools/RotateClockwiseTool.js +2 -2
  59. package/dist/components/layout/toolbar/tools/RotateCounterclockwiseTool.js +2 -2
  60. package/dist/components/layout/toolbar/tools/SelectionModeSwitcherTool.js +2 -2
  61. package/dist/components/layout/toolbar/tools/SinglePageTool.js +8 -7
  62. package/dist/components/layout/toolbar/tools/ThemeSwitcherTool.js +2 -2
  63. package/dist/components/layout/toolbar/tools/ThumbnailTool.js +8 -7
  64. package/dist/components/layout/toolbar/tools/VerticalScrollingTool.js +2 -2
  65. package/dist/components/layout/toolbar/tools/ZoomInTool.js +2 -2
  66. package/dist/components/layout/toolbar/tools/ZoomLevelDisplay.js +7 -6
  67. package/dist/components/layout/toolbar/tools/ZoomLevelTool.js +8 -7
  68. package/dist/components/layout/toolbar/tools/ZoomOutTool.js +2 -2
  69. package/dist/components/layout/toolbar/tools/defaults/RPHorizontalBar.js +8 -7
  70. package/dist/components/layout/toolbar/tools/defaults/RPVerticalBar.js +8 -7
  71. package/dist/components/layout/toolbar/tools/more-options/DocumentProperties.js +3 -3
  72. package/dist/components/layout/toolbar/tools/more-options/FileDownloadTool.js +8 -7
  73. package/dist/components/layout/toolbar/tools/more-options/FileUploadTool.js +8 -7
  74. package/dist/components/layout/toolbar/tools/more-options/FullScreenTool.js +3 -3
  75. package/dist/components/layout/toolbar/tools/more-options/MostPageTool.js +16 -15
  76. package/dist/components/layout/toolbar/tools/more-options/PrintTool.js +8 -7
  77. package/dist/components/layout/toolbar/tools/more-options/RotateTool.js +3 -3
  78. package/dist/components/layout/toolbar/tools/more-options/ScrollModeTool.js +3 -3
  79. package/dist/components/layout/toolbar/tools/more-options/SelectionModeTool.js +3 -3
  80. package/dist/components/layout/toolbar/tools/more-options/ViewModeTool.js +3 -3
  81. package/dist/components/page/AnnotationLayer.js +7 -6
  82. package/dist/components/page/CanvasLayer.js +7 -6
  83. package/dist/components/page/DualPage.js +7 -6
  84. package/dist/components/page/DualPageWithCover.js +7 -6
  85. package/dist/components/page/RPPage.js +7 -6
  86. package/dist/components/page/SinglePage.js +7 -6
  87. package/dist/components/page/TextHighlightLayer.js +7 -6
  88. package/dist/components/page/TextLayer.js +7 -6
  89. package/dist/components/ui/Checkbox.js +1 -1
  90. package/dist/components/ui/DropDown.js +3 -3
  91. package/dist/components/ui/LoadingIndicator.js +7 -6
  92. package/dist/components/ui/RPTooltip.js +118 -102
  93. package/dist/contexts/EventCallbackContext.js +12 -8
  94. package/dist/contexts/PaginationContext.js +9 -8
  95. package/dist/contexts/PrintContext.js +9 -8
  96. package/dist/contexts/RenderQueueProvider.js +9 -8
  97. package/dist/contexts/SearchContext.js +9 -8
  98. package/dist/contexts/ThumbnailsContext.js +9 -8
  99. package/dist/{floating-ui.react-dom-6b2fe0df.js → floating-ui.react-dom-d22a10b4.js} +3 -3
  100. package/dist/{index-f563c6f0.js → index-3bf64864.js} +97 -100
  101. package/dist/{index-35c7f4a2.js → index-c9a2990a.js} +3 -3
  102. package/dist/main.js +100 -95
  103. package/dist/types/components/layout/toolbar/tools/FirstPageTool.d.ts +3 -0
  104. package/dist/types/components/layout/toolbar/tools/LastPageTool.d.ts +3 -0
  105. package/dist/types/main.d.ts +3 -1
  106. package/dist/types/utils/hooks/useTextSelection.d.ts +7 -0
  107. package/dist/types/utils/types.d.ts +25 -2
  108. package/dist/utils/hooks/useFileDownload.js +7 -6
  109. package/dist/utils/hooks/useLicense.js +1 -1
  110. package/dist/utils/hooks/usePaginate.js +7 -6
  111. package/dist/utils/hooks/usePresentPage.js +7 -6
  112. package/dist/utils/hooks/usePrint.js +7 -6
  113. package/dist/utils/hooks/useScrollToPage.js +7 -6
  114. package/dist/utils/hooks/useSearch.js +7 -6
  115. package/dist/utils/hooks/useTextSelection.js +76 -0
  116. package/dist/utils/hooks/useThumbnail.js +7 -6
  117. package/dist/utils/hooks/useVirtualReactWindow.js +7 -6
  118. package/dist/utils/types.js +5 -5
  119. package/package.json +1 -1
  120. package/dist/LayoutWrapper-0470458a.js +0 -20
package/dist/main.js CHANGED
@@ -1,44 +1,46 @@
1
- import { RPProvider as Hr } from "./components/RPProvider.js";
2
- import { a as zr, R as Br, S as Ir, b as Or, u as Er, c as Nr, d as Ur } from "./ToolbarLayout.module-df04508a.js";
3
- import { RPConfig as jr } from "./components/RPConfig.js";
4
- import { RPLayout as Ar } from "./components/layout/RPLayout.js";
5
- import { RPTheme as Jr } from "./components/RPTheme.js";
6
- import { useDarkModeContext as Qr } from "./contexts/DarkModeContext.js";
7
- import { useDocumentContext as Yr } from "./contexts/RPDocumentContext.js";
8
- import { useRotationContext as $r } from "./contexts/RotationContext.js";
9
- import { useViewModeContext as rt } from "./contexts/ViewModeContext.js";
10
- import { useDropFileZoneContext as mt } from "./contexts/DropFileZoneContext.js";
11
- import { useOpenFileContext as it } from "./contexts/FileInputContext.js";
12
- import { useZoomContext as lt } from "./contexts/ZoomContext.js";
13
- import { useHighlightContext as at } from "./contexts/HighlightContext.js";
14
- import { useFullScreenContext as nt } from "./contexts/FullScreenContext.js";
15
- import { usePageRotateContext as st } from "./utils/hooks/usePageRotateContext.js";
16
- import { useElementPageContext as Pt } from "./contexts/ElementPageContext.js";
17
- import { ThemeSwitcherTool as gt } from "./components/layout/toolbar/tools/ThemeSwitcherTool.js";
18
- import { ThumbnailTool as St } from "./components/layout/toolbar/tools/ThumbnailTool.js";
19
- import { FileUploadTool as dt } from "./components/layout/toolbar/tools/FileUploadTool.js";
20
- import { FileDownloadTool as Dt } from "./components/layout/toolbar/tools/FileDownloadTool.js";
21
- import { PrintTool as Ft } from "./components/layout/toolbar/tools/PrintTool.js";
1
+ import { RPProvider as yr } from "./components/RPProvider.js";
2
+ import { a as Br, R as Ir, S as Or, b as Er, u as Nr, c as Ur, d as Wr } from "./ToolbarLayout.module-3f4e0f88.js";
3
+ import { RPConfig as qr } from "./components/RPConfig.js";
4
+ import { RPLayout as Gr } from "./components/layout/RPLayout.js";
5
+ import { RPTheme as Kr } from "./components/RPTheme.js";
6
+ import { useDarkModeContext as Xr } from "./contexts/DarkModeContext.js";
7
+ import { useDocumentContext as _r } from "./contexts/RPDocumentContext.js";
8
+ import { useRotationContext as ot } from "./contexts/RotationContext.js";
9
+ import { useViewModeContext as tt } from "./contexts/ViewModeContext.js";
10
+ import { useDropFileZoneContext as pt } from "./contexts/DropFileZoneContext.js";
11
+ import { useOpenFileContext as et } from "./contexts/FileInputContext.js";
12
+ import { useZoomContext as xt } from "./contexts/ZoomContext.js";
13
+ import { useHighlightContext as ft } from "./contexts/HighlightContext.js";
14
+ import { useFullScreenContext as st } from "./contexts/FullScreenContext.js";
15
+ import { usePageRotateContext as Tt } from "./utils/hooks/usePageRotateContext.js";
16
+ import { useElementPageContext as ct } from "./contexts/ElementPageContext.js";
17
+ import { ThemeSwitcherTool as Ct } from "./components/layout/toolbar/tools/ThemeSwitcherTool.js";
18
+ import { ThumbnailTool as Rt } from "./components/layout/toolbar/tools/ThumbnailTool.js";
19
+ import { FileUploadTool as ht } from "./components/layout/toolbar/tools/FileUploadTool.js";
20
+ import { FileDownloadTool as wt } from "./components/layout/toolbar/tools/FileDownloadTool.js";
21
+ import { PrintTool as Lt } from "./components/layout/toolbar/tools/PrintTool.js";
22
22
  import { FullScreenTool as Zt } from "./components/layout/toolbar/tools/FullScreenTool.js";
23
- import { PreviousPageTool as Lt } from "./components/layout/toolbar/tools/PreviousPageTool.js";
24
- import { NextPageTool as bt } from "./components/layout/toolbar/tools/NextPageTool.js";
25
- import { InputPageTool as Ht } from "./components/layout/toolbar/tools/InputPageTool.js";
26
- import { ZoomInTool as zt } from "./components/layout/toolbar/tools/ZoomInTool.js";
27
- import { ZoomOutTool as It } from "./components/layout/toolbar/tools/ZoomOutTool.js";
28
- import { ZoomLevelTool as Et } from "./components/layout/toolbar/tools/ZoomLevelTool.js";
29
- import { DocumentPropertiesTool as Ut } from "./components/layout/toolbar/tools/DocumentPropertiesTool.js";
30
- import { RotateClockwiseTool as jt } from "./components/layout/toolbar/tools/RotateClockwiseTool.js";
31
- import { RotateCounterclockwiseTool as At } from "./components/layout/toolbar/tools/RotateCounterclockwiseTool.js";
32
- import { RPHorizontalBar as Jt } from "./components/layout/toolbar/tools/defaults/RPHorizontalBar.js";
33
- import { RPVerticalBar as Qt } from "./components/layout/toolbar/tools/defaults/RPVerticalBar.js";
34
- import { SelectionModeSwitcherTool as Yt } from "./components/layout/toolbar/tools/SelectionModeSwitcherTool.js";
35
- import { SinglePageTool as $t } from "./components/layout/toolbar/tools/SinglePageTool.js";
36
- import { DualPageTool as rm } from "./components/layout/toolbar/tools/DualPageTool.js";
37
- import { DualPageWithCoverTool as mm } from "./components/layout/toolbar/tools/DualPageWithCoverTool.js";
38
- import { PageScrollingTool as im } from "./components/layout/toolbar/tools/PageScrollingTool.js";
39
- import { VerticalScrollingTool as lm } from "./components/layout/toolbar/tools/VerticalScrollingTool.js";
40
- import { HorizontalScrollingTool as am } from "./components/layout/toolbar/tools/HorizontalScrollingTool.js";
41
- import { Locales as nm, ScrollMode as um, SelectionMode as sm, ThemeVariables as Tm, ViewMode as Pm, ZoomLevel as cm } from "./utils/types.js";
23
+ import { PreviousPageTool as Vt } from "./components/layout/toolbar/tools/PreviousPageTool.js";
24
+ import { NextPageTool as kt } from "./components/layout/toolbar/tools/NextPageTool.js";
25
+ import { InputPageTool as yt } from "./components/layout/toolbar/tools/InputPageTool.js";
26
+ import { ZoomInTool as Bt } from "./components/layout/toolbar/tools/ZoomInTool.js";
27
+ import { ZoomOutTool as Ot } from "./components/layout/toolbar/tools/ZoomOutTool.js";
28
+ import { ZoomLevelTool as Nt } from "./components/layout/toolbar/tools/ZoomLevelTool.js";
29
+ import { DocumentPropertiesTool as Wt } from "./components/layout/toolbar/tools/DocumentPropertiesTool.js";
30
+ import { RotateClockwiseTool as qt } from "./components/layout/toolbar/tools/RotateClockwiseTool.js";
31
+ import { RotateCounterclockwiseTool as Gt } from "./components/layout/toolbar/tools/RotateCounterclockwiseTool.js";
32
+ import { RPHorizontalBar as Kt } from "./components/layout/toolbar/tools/defaults/RPHorizontalBar.js";
33
+ import { RPVerticalBar as Xt } from "./components/layout/toolbar/tools/defaults/RPVerticalBar.js";
34
+ import { SelectionModeSwitcherTool as _t } from "./components/layout/toolbar/tools/SelectionModeSwitcherTool.js";
35
+ import { SinglePageTool as om } from "./components/layout/toolbar/tools/SinglePageTool.js";
36
+ import { DualPageTool as tm } from "./components/layout/toolbar/tools/DualPageTool.js";
37
+ import { DualPageWithCoverTool as pm } from "./components/layout/toolbar/tools/DualPageWithCoverTool.js";
38
+ import { PageScrollingTool as em } from "./components/layout/toolbar/tools/PageScrollingTool.js";
39
+ import { VerticalScrollingTool as xm } from "./components/layout/toolbar/tools/VerticalScrollingTool.js";
40
+ import { HorizontalScrollingTool as fm } from "./components/layout/toolbar/tools/HorizontalScrollingTool.js";
41
+ import { FirstPageTool as sm } from "./components/layout/toolbar/tools/FirstPageTool.js";
42
+ import { LastPageTool as Tm } from "./components/layout/toolbar/tools/LastPageTool.js";
43
+ import { Locales as cm, ScrollMode as gm, SelectionMode as Cm, ThemeVariables as Sm, ViewMode as Rm, ZoomLevel as dm } from "./utils/types.js";
42
44
  import "react/jsx-runtime";
43
45
  import "react";
44
46
  import "./contexts/DocumentPasswordContext.js";
@@ -94,19 +96,19 @@ import "./components/layout/WrapperLayout.js";
94
96
  import "./components/RPDropFileZone.js";
95
97
  import "./components/icons/LightPdfIcon.js";
96
98
  import "./components/icons/DarkPdfIcon.js";
97
- import "./LayoutWrapper-0470458a.js";
99
+ import "./LayoutWrapper-60db8675.js";
98
100
  import "./components/layout/SkipLink.js";
99
101
  import "./SearchCloseButton-08d57275.js";
100
102
  import "./components/ui/RPTooltip.js";
101
- import "./index-35c7f4a2.js";
103
+ import "./index-c9a2990a.js";
102
104
  import "react-dom";
103
- import "./floating-ui.react-dom-6b2fe0df.js";
105
+ import "./floating-ui.react-dom-d22a10b4.js";
104
106
  import "./components/icons/CloseIcon.js";
105
107
  import "./components/ui/Checkbox.js";
106
108
  import "./components/icons/CheckIcon.js";
107
109
  import "./contexts/IconContext.js";
108
110
  import "./components/ui/DropDown.js";
109
- import "./index-f563c6f0.js";
111
+ import "./index-3bf64864.js";
110
112
  import "./components/layout/toolbar/MenuItem.js";
111
113
  import "./components/layout/toolbar/MenuSeparator.js";
112
114
  import "./utils/dateFormatter.js";
@@ -126,6 +128,7 @@ import "./utils/hooks/usePinch.js";
126
128
  import "./utils/hooks/useDebounce.js";
127
129
  import "./components/ui/PasswordModal.js";
128
130
  import "./utils/hooks/useCopyText.js";
131
+ import "./utils/hooks/useTextSelection.js";
129
132
  import "./utils/getScrollDistance.js";
130
133
  import "./utils/getWordPositionInPage.js";
131
134
  import "./utils/getThumbnailViewport.js";
@@ -178,56 +181,58 @@ import "./utils/getElementPositionInPage.js";
178
181
  import "./components/icons/ChevronDownIcon.js";
179
182
  import "./components/layout/toolbar/ThumbnailTool.js";
180
183
  export {
181
- Ut as DocumentPropertiesTool,
182
- rm as DualPageTool,
183
- mm as DualPageWithCoverTool,
184
- Dt as FileDownloadTool,
185
- dt as FileUploadTool,
184
+ Wt as DocumentPropertiesTool,
185
+ tm as DualPageTool,
186
+ pm as DualPageWithCoverTool,
187
+ wt as FileDownloadTool,
188
+ ht as FileUploadTool,
189
+ sm as FirstPageTool,
186
190
  Zt as FullScreenTool,
187
- am as HorizontalScrollingTool,
188
- Ht as InputPageTool,
189
- nm as Locales,
190
- bt as NextPageTool,
191
- im as PageScrollingTool,
192
- Lt as PreviousPageTool,
193
- Ft as PrintTool,
194
- jr as RPConfig,
195
- zr as RPDefaultLayout,
196
- Jt as RPHorizontalBar,
197
- Ar as RPLayout,
198
- Br as RPPages,
199
- Hr as RPProvider,
200
- Jr as RPTheme,
201
- Qt as RPVerticalBar,
202
- jt as RotateClockwiseTool,
203
- At as RotateCounterclockwiseTool,
204
- um as ScrollMode,
205
- Ir as SearchTool,
206
- sm as SelectionMode,
207
- Yt as SelectionModeSwitcherTool,
208
- $t as SinglePageTool,
209
- gt as ThemeSwitcherTool,
210
- Tm as ThemeVariables,
211
- St as ThumbnailTool,
212
- lm as VerticalScrollingTool,
213
- Pm as ViewMode,
214
- zt as ZoomInTool,
215
- cm as ZoomLevel,
216
- Et as ZoomLevelTool,
217
- It as ZoomOutTool,
218
- Qr as useDarkModeContext,
219
- Yr as useDocumentContext,
220
- mt as useDropFileZoneContext,
221
- Pt as useElementPageContext,
222
- Or as useFileDownload,
223
- nt as useFullScreenContext,
224
- at as useHighlightContext,
225
- it as useOpenFileContext,
226
- st as usePageRotateContext,
227
- Er as usePaginationContext,
228
- Nr as usePrintContext,
229
- $r as useRotationContext,
230
- Ur as useSearchContext,
231
- rt as useViewModeContext,
232
- lt as useZoomContext
191
+ fm as HorizontalScrollingTool,
192
+ yt as InputPageTool,
193
+ Tm as LastPageTool,
194
+ cm as Locales,
195
+ kt as NextPageTool,
196
+ em as PageScrollingTool,
197
+ Vt as PreviousPageTool,
198
+ Lt as PrintTool,
199
+ qr as RPConfig,
200
+ Br as RPDefaultLayout,
201
+ Kt as RPHorizontalBar,
202
+ Gr as RPLayout,
203
+ Ir as RPPages,
204
+ yr as RPProvider,
205
+ Kr as RPTheme,
206
+ Xt as RPVerticalBar,
207
+ qt as RotateClockwiseTool,
208
+ Gt as RotateCounterclockwiseTool,
209
+ gm as ScrollMode,
210
+ Or as SearchTool,
211
+ Cm as SelectionMode,
212
+ _t as SelectionModeSwitcherTool,
213
+ om as SinglePageTool,
214
+ Ct as ThemeSwitcherTool,
215
+ Sm as ThemeVariables,
216
+ Rt as ThumbnailTool,
217
+ xm as VerticalScrollingTool,
218
+ Rm as ViewMode,
219
+ Bt as ZoomInTool,
220
+ dm as ZoomLevel,
221
+ Nt as ZoomLevelTool,
222
+ Ot as ZoomOutTool,
223
+ Xr as useDarkModeContext,
224
+ _r as useDocumentContext,
225
+ pt as useDropFileZoneContext,
226
+ ct as useElementPageContext,
227
+ Er as useFileDownload,
228
+ st as useFullScreenContext,
229
+ ft as useHighlightContext,
230
+ et as useOpenFileContext,
231
+ Tt as usePageRotateContext,
232
+ Nr as usePaginationContext,
233
+ Ur as usePrintContext,
234
+ ot as useRotationContext,
235
+ Wr as useSearchContext,
236
+ tt as useViewModeContext,
237
+ xt as useZoomContext
233
238
  };
@@ -0,0 +1,3 @@
1
+ import { FC } from 'react';
2
+ import { ToolProps } from '../../../../utils/types';
3
+ export declare const FirstPageTool: FC<ToolProps>;
@@ -0,0 +1,3 @@
1
+ import { FC } from 'react';
2
+ import { ToolProps } from '../../../../utils/types';
3
+ export declare const LastPageTool: FC<ToolProps>;
@@ -45,5 +45,7 @@ export { DualPageWithCoverTool } from './components/layout/toolbar/tools/DualPag
45
45
  export { PageScrollingTool } from './components/layout/toolbar/tools/PageScrollingTool';
46
46
  export { VerticalScrollingTool } from './components/layout/toolbar/tools/VerticalScrollingTool';
47
47
  export { HorizontalScrollingTool } from './components/layout/toolbar/tools/HorizontalScrollingTool';
48
- export type { CharacterMap, DarkModeProps, DownloadToolProps, FullScreenToolProps, Localization, MatchValue, OpenFileToolProps, PageNavigationToolProps, PdfPage, PdfProperties, PreparePrintProgress, PrintOptions, PrintToolProps, RPConfigProps, RPThemeProps, RPProviderProps, RPDefaultLayoutProps, RPLayoutProps, RPIcons, RPSlots, SearchOptions, SetPageResult, ScrollModeInitialProps, ThumbnailToolProps, ViewModeInitialProps, ZoomProps, RPHorizontalBarProps, RPHorizontalBarSlots, RPHorizontalBarIcons, RPVerticalBarProps, RPVerticalBarSlots, RPVerticalBarIcons, TextHighlight, MatchHighlight, RectPosition, ThemeSwitcherIcons, ThemeSwitcherToolProps, ToolProps, ToolbarSection, ToolbarProps, SelectionModeSwitcherToolProps, SelectionModeSwitcherIcons } from './utils/types';
48
+ export { FirstPageTool } from './components/layout/toolbar/tools/FirstPageTool';
49
+ export { LastPageTool } from './components/layout/toolbar/tools/LastPageTool';
50
+ export type { CharacterMap, DarkModeProps, DownloadToolProps, FullScreenToolProps, Localization, MatchValue, OpenFileToolProps, PageNavigationToolProps, PageSelectionRect, PdfPage, PdfProperties, PreparePrintProgress, PrintOptions, PrintToolProps, RPConfigProps, RPThemeProps, RPProviderProps, RPDefaultLayoutProps, RPLayoutProps, RPIcons, RPSlots, SearchOptions, SetPageResult, ScrollModeInitialProps, TextHighlight, TextSelectionData, ThumbnailToolProps, ViewModeInitialProps, ZoomProps, RPHorizontalBarProps, RPHorizontalBarSlots, RPHorizontalBarIcons, RPVerticalBarProps, RPVerticalBarSlots, RPVerticalBarIcons, MatchHighlight, RectPosition, ThemeSwitcherIcons, ThemeSwitcherToolProps, ToolProps, ToolbarSection, ToolbarProps, SelectionModeSwitcherToolProps, SelectionModeSwitcherIcons } from './utils/types';
49
51
  export { ViewMode, ScrollMode, ZoomLevel, Locales, ThemeVariables, SelectionMode } from './utils/types';
@@ -0,0 +1,7 @@
1
+ import { TextSelectionData } from '../types';
2
+ interface UseTextSelectionOptions {
3
+ onTextSelect?: (selection: TextSelectionData | null) => void;
4
+ pagesRef: HTMLElement | null;
5
+ }
6
+ export declare const useTextSelection: ({ onTextSelect, pagesRef }: UseTextSelectionOptions) => void;
7
+ export {};
@@ -64,7 +64,7 @@ export interface OutlineDestinationName {
64
64
  name: string;
65
65
  }
66
66
  export type OutlineDestination = [
67
- OutlineRef | number,
67
+ (OutlineRef | number),
68
68
  OutlineDestinationName,
69
69
  ...any[]
70
70
  ];
@@ -450,7 +450,11 @@ export declare enum ThemeVariables {
450
450
  CONTAINER_FOCUS_OUTLINE_WIDTH = "--rp-container-focus-outline-width",
451
451
  CONTAINER_FOCUS_OUTLINE_COLOR = "--rp-container-focus-outline-color",
452
452
  CONTAINER_FOCUS_OUTLINE_OFFSET = "--rp-container-focus-outline-offset",
453
- BUTTON_BORDER_RADIUS = "--rp-button-border-radius"
453
+ BUTTON_BORDER_RADIUS = "--rp-button-border-radius",
454
+ SKIP_LINK_FONT_SIZE = "--rp-skip-link-font-size",
455
+ SKIP_LINK_COLOR = "--rp-skip-link-color",
456
+ SKIP_LINK_BACKGROUND_COLOR = "--rp-skip-link-background-color",
457
+ SKIP_LINK_BORDER_COLOR = "--rp-skip-link-border-color"
454
458
  }
455
459
  export interface DarkModeProviderProps extends PropsWithChildren, Partial<Omit<DarkMode, 'setDarkMode'>> {
456
460
  }
@@ -465,10 +469,29 @@ export interface CharacterMap {
465
469
  url: string;
466
470
  isCompressed: boolean;
467
471
  }
472
+ interface Dimension {
473
+ width: number;
474
+ height: number;
475
+ }
476
+ interface Point {
477
+ x: number;
478
+ y: number;
479
+ }
480
+ export interface PageSelectionRect {
481
+ pageNumber: number;
482
+ pageBasedBoundingRects: Array<Dimension & RectPosition>;
483
+ pageDimension: Dimension;
484
+ pagePositionInWindow: Point;
485
+ }
486
+ export interface TextSelectionData {
487
+ text: string;
488
+ pageSelections: PageSelectionRect[];
489
+ }
468
490
  export interface EventCallbackContextType {
469
491
  onPageChange?: (page: number) => void;
470
492
  onRotate?: (rotation: Record<number, number>) => void;
471
493
  onScroll?: (scroll: Event) => void;
494
+ onTextSelect?: (selection: TextSelectionData | null) => void;
472
495
  }
473
496
  export interface RPProviderProps extends PropsWithChildren, LoadPDFOptions, RPControllerProps, EventCallbackContextType {
474
497
  src: RPSrc;
@@ -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 { b as Gr } from "../../ToolbarLayout.module-df04508a.js";
5
+ import { b as Hr } from "../../ToolbarLayout.module-3f4e0f88.js";
6
6
  import "../../contexts/DarkModeContext.js";
7
7
  import "../../contexts/RotationContext.js";
8
8
  import "../../contexts/LayerContext.js";
@@ -40,7 +40,7 @@ import "../../contexts/ToolbarComponentContext.js";
40
40
  import "../../RPSplitter-f6acf13b.js";
41
41
  import "../../components/layout/WrapperLayout.js";
42
42
  import "../../components/RPDropFileZone.js";
43
- import "../../LayoutWrapper-0470458a.js";
43
+ import "../../LayoutWrapper-60db8675.js";
44
44
  import "../../components/layout/SkipLink.js";
45
45
  import "../../components/ui/Button.js";
46
46
  import "../../SearchCloseButton-08d57275.js";
@@ -91,14 +91,15 @@ import "./usePinch.js";
91
91
  import "../../components/ui/PasswordModal.js";
92
92
  import "./useLocalization.js";
93
93
  import "./useCopyText.js";
94
+ import "./useTextSelection.js";
94
95
  import "../getWordPositionInPage.js";
95
96
  import "../smoothScrollTo.js";
96
97
  import "../../components/layout/toolbar/FileUploadTool.js";
97
98
  import "../../components/icons/FileUploadDefaultIcon.js";
98
- import "../../index-f563c6f0.js";
99
- import "../../index-35c7f4a2.js";
99
+ import "../../index-3bf64864.js";
100
+ import "../../index-c9a2990a.js";
100
101
  import "react-dom";
101
- import "../../floating-ui.react-dom-6b2fe0df.js";
102
+ import "../../floating-ui.react-dom-d22a10b4.js";
102
103
  import "../../components/layout/toolbar/DarkModeTool.js";
103
104
  import "../../components/icons/MoonIcon.js";
104
105
  import "../../components/icons/SunIcon.js";
@@ -137,5 +138,5 @@ import "./useHighlight.js";
137
138
  import "../../components/icons/LightPdfIcon.js";
138
139
  import "../../components/icons/DarkPdfIcon.js";
139
140
  export {
140
- Gr as useFileDownload
141
+ Hr as useFileDownload
141
142
  };
@@ -1,6 +1,6 @@
1
1
  import { useState as E, useCallback as h, useEffect as A } from "react";
2
2
  import { appConsole as l } from "../appConsole.js";
3
- const b = /* @__PURE__ */ new Date("2026-01-29T05:18:57.079Z"), d = "Please visit https://www.react-pdf.dev/manage-license/ to generate a new license key.", s = {
3
+ const b = /* @__PURE__ */ new Date("2026-01-30T06:22:29.291Z"), d = "Please visit https://www.react-pdf.dev/manage-license/ to generate a new license key.", s = {
4
4
  invalidLicense: `You are currently using without a valid license. ${d}`,
5
5
  mismatchedDomain: `Your license key is not valid for the current domain / IP. ${d}`,
6
6
  expired: `Your license key has expired. ${d}`,
@@ -1,6 +1,6 @@
1
1
  import "react";
2
2
  import "../types.js";
3
- import { v as Fr } from "../../ToolbarLayout.module-df04508a.js";
3
+ import { v as Gr } from "../../ToolbarLayout.module-3f4e0f88.js";
4
4
  import "react/jsx-runtime";
5
5
  import "../../contexts/RPDocumentContext.js";
6
6
  import "../../contexts/DocumentPasswordContext.js";
@@ -41,7 +41,7 @@ import "../../contexts/ToolbarComponentContext.js";
41
41
  import "../../RPSplitter-f6acf13b.js";
42
42
  import "../../components/layout/WrapperLayout.js";
43
43
  import "../../components/RPDropFileZone.js";
44
- import "../../LayoutWrapper-0470458a.js";
44
+ import "../../LayoutWrapper-60db8675.js";
45
45
  import "../../components/layout/SkipLink.js";
46
46
  import "../../components/ui/Button.js";
47
47
  import "../../SearchCloseButton-08d57275.js";
@@ -91,14 +91,15 @@ import "./usePinch.js";
91
91
  import "../../components/ui/PasswordModal.js";
92
92
  import "./useLocalization.js";
93
93
  import "./useCopyText.js";
94
+ import "./useTextSelection.js";
94
95
  import "../getWordPositionInPage.js";
95
96
  import "../smoothScrollTo.js";
96
97
  import "../../components/layout/toolbar/FileUploadTool.js";
97
98
  import "../../components/icons/FileUploadDefaultIcon.js";
98
- import "../../index-f563c6f0.js";
99
- import "../../index-35c7f4a2.js";
99
+ import "../../index-3bf64864.js";
100
+ import "../../index-c9a2990a.js";
100
101
  import "react-dom";
101
- import "../../floating-ui.react-dom-6b2fe0df.js";
102
+ import "../../floating-ui.react-dom-d22a10b4.js";
102
103
  import "../../components/layout/toolbar/DarkModeTool.js";
103
104
  import "../../components/icons/MoonIcon.js";
104
105
  import "../../components/icons/SunIcon.js";
@@ -137,5 +138,5 @@ import "./useHighlight.js";
137
138
  import "../../components/icons/LightPdfIcon.js";
138
139
  import "../../components/icons/DarkPdfIcon.js";
139
140
  export {
140
- Fr as usePaginate
141
+ Gr as usePaginate
141
142
  };
@@ -5,7 +5,7 @@ import "../calculatePage.js";
5
5
  import "react/jsx-runtime";
6
6
  import "../../contexts/RPDocumentContext.js";
7
7
  import "../../contexts/DocumentPasswordContext.js";
8
- import { U as Eo } from "../../ToolbarLayout.module-df04508a.js";
8
+ import { U as Fo } from "../../ToolbarLayout.module-3f4e0f88.js";
9
9
  import "../../contexts/DarkModeContext.js";
10
10
  import "../types.js";
11
11
  import "../../contexts/RotationContext.js";
@@ -42,7 +42,7 @@ import "../../contexts/ToolbarComponentContext.js";
42
42
  import "../../RPSplitter-f6acf13b.js";
43
43
  import "../../components/layout/WrapperLayout.js";
44
44
  import "../../components/RPDropFileZone.js";
45
- import "../../LayoutWrapper-0470458a.js";
45
+ import "../../LayoutWrapper-60db8675.js";
46
46
  import "../../components/layout/SkipLink.js";
47
47
  import "../../components/ui/Button.js";
48
48
  import "../../SearchCloseButton-08d57275.js";
@@ -91,14 +91,15 @@ import "./usePinch.js";
91
91
  import "../../components/ui/PasswordModal.js";
92
92
  import "./useLocalization.js";
93
93
  import "./useCopyText.js";
94
+ import "./useTextSelection.js";
94
95
  import "../getWordPositionInPage.js";
95
96
  import "../smoothScrollTo.js";
96
97
  import "../../components/layout/toolbar/FileUploadTool.js";
97
98
  import "../../components/icons/FileUploadDefaultIcon.js";
98
- import "../../index-f563c6f0.js";
99
- import "../../index-35c7f4a2.js";
99
+ import "../../index-3bf64864.js";
100
+ import "../../index-c9a2990a.js";
100
101
  import "react-dom";
101
- import "../../floating-ui.react-dom-6b2fe0df.js";
102
+ import "../../floating-ui.react-dom-d22a10b4.js";
102
103
  import "../../components/layout/toolbar/DarkModeTool.js";
103
104
  import "../../components/icons/MoonIcon.js";
104
105
  import "../../components/icons/SunIcon.js";
@@ -137,5 +138,5 @@ import "./useHighlight.js";
137
138
  import "../../components/icons/LightPdfIcon.js";
138
139
  import "../../components/icons/DarkPdfIcon.js";
139
140
  export {
140
- Eo as usePresentPage
141
+ Fo as usePresentPage
141
142
  };
@@ -2,7 +2,7 @@ import "react";
2
2
  import "react/jsx-runtime";
3
3
  import "../../contexts/RPDocumentContext.js";
4
4
  import "../../contexts/DocumentPasswordContext.js";
5
- import { x as Fo } from "../../ToolbarLayout.module-df04508a.js";
5
+ import { x as Go } from "../../ToolbarLayout.module-3f4e0f88.js";
6
6
  import "../../contexts/DarkModeContext.js";
7
7
  import "../../contexts/RotationContext.js";
8
8
  import "../../contexts/LayerContext.js";
@@ -40,7 +40,7 @@ import "../../contexts/ToolbarComponentContext.js";
40
40
  import "../../RPSplitter-f6acf13b.js";
41
41
  import "../../components/layout/WrapperLayout.js";
42
42
  import "../../components/RPDropFileZone.js";
43
- import "../../LayoutWrapper-0470458a.js";
43
+ import "../../LayoutWrapper-60db8675.js";
44
44
  import "../../components/layout/SkipLink.js";
45
45
  import "../../components/ui/Button.js";
46
46
  import "../../SearchCloseButton-08d57275.js";
@@ -91,14 +91,15 @@ import "./usePinch.js";
91
91
  import "../../components/ui/PasswordModal.js";
92
92
  import "./useLocalization.js";
93
93
  import "./useCopyText.js";
94
+ import "./useTextSelection.js";
94
95
  import "../getWordPositionInPage.js";
95
96
  import "../smoothScrollTo.js";
96
97
  import "../../components/layout/toolbar/FileUploadTool.js";
97
98
  import "../../components/icons/FileUploadDefaultIcon.js";
98
- import "../../index-f563c6f0.js";
99
- import "../../index-35c7f4a2.js";
99
+ import "../../index-3bf64864.js";
100
+ import "../../index-c9a2990a.js";
100
101
  import "react-dom";
101
- import "../../floating-ui.react-dom-6b2fe0df.js";
102
+ import "../../floating-ui.react-dom-d22a10b4.js";
102
103
  import "../../components/layout/toolbar/DarkModeTool.js";
103
104
  import "../../components/icons/MoonIcon.js";
104
105
  import "../../components/icons/SunIcon.js";
@@ -137,5 +138,5 @@ import "./useHighlight.js";
137
138
  import "../../components/icons/LightPdfIcon.js";
138
139
  import "../../components/icons/DarkPdfIcon.js";
139
140
  export {
140
- Fo as usePrint
141
+ Go as usePrint
141
142
  };
@@ -3,7 +3,7 @@ import "../../contexts/ScrollModeContext.js";
3
3
  import "react/jsx-runtime";
4
4
  import "../../contexts/RPDocumentContext.js";
5
5
  import "../../contexts/DocumentPasswordContext.js";
6
- import { t as Dr } from "../../ToolbarLayout.module-df04508a.js";
6
+ import { t as Er } from "../../ToolbarLayout.module-3f4e0f88.js";
7
7
  import "../../contexts/DarkModeContext.js";
8
8
  import "../types.js";
9
9
  import "../../contexts/RotationContext.js";
@@ -41,7 +41,7 @@ import "../../contexts/ToolbarComponentContext.js";
41
41
  import "../../RPSplitter-f6acf13b.js";
42
42
  import "../../components/layout/WrapperLayout.js";
43
43
  import "../../components/RPDropFileZone.js";
44
- import "../../LayoutWrapper-0470458a.js";
44
+ import "../../LayoutWrapper-60db8675.js";
45
45
  import "../../components/layout/SkipLink.js";
46
46
  import "../../components/ui/Button.js";
47
47
  import "../../SearchCloseButton-08d57275.js";
@@ -92,13 +92,14 @@ import "./usePinch.js";
92
92
  import "../../components/ui/PasswordModal.js";
93
93
  import "./useLocalization.js";
94
94
  import "./useCopyText.js";
95
+ import "./useTextSelection.js";
95
96
  import "../getWordPositionInPage.js";
96
97
  import "../../components/layout/toolbar/FileUploadTool.js";
97
98
  import "../../components/icons/FileUploadDefaultIcon.js";
98
- import "../../index-f563c6f0.js";
99
- import "../../index-35c7f4a2.js";
99
+ import "../../index-3bf64864.js";
100
+ import "../../index-c9a2990a.js";
100
101
  import "react-dom";
101
- import "../../floating-ui.react-dom-6b2fe0df.js";
102
+ import "../../floating-ui.react-dom-d22a10b4.js";
102
103
  import "../../components/layout/toolbar/DarkModeTool.js";
103
104
  import "../../components/icons/MoonIcon.js";
104
105
  import "../../components/icons/SunIcon.js";
@@ -137,5 +138,5 @@ import "./useHighlight.js";
137
138
  import "../../components/icons/LightPdfIcon.js";
138
139
  import "../../components/icons/DarkPdfIcon.js";
139
140
  export {
140
- Dr as useScrollToPage
141
+ Er as useScrollToPage
141
142
  };
@@ -7,7 +7,7 @@ import "../../contexts/RPDocumentContext.js";
7
7
  import "../../contexts/ZoomContext.js";
8
8
  import "react/jsx-runtime";
9
9
  import "../../contexts/DocumentPasswordContext.js";
10
- import { B as Fo } from "../../ToolbarLayout.module-df04508a.js";
10
+ import { B as Go } from "../../ToolbarLayout.module-3f4e0f88.js";
11
11
  import "../../contexts/DarkModeContext.js";
12
12
  import "../../contexts/RotationContext.js";
13
13
  import "../../contexts/LayerContext.js";
@@ -42,7 +42,7 @@ import "../../contexts/ToolbarComponentContext.js";
42
42
  import "../../RPSplitter-f6acf13b.js";
43
43
  import "../../components/layout/WrapperLayout.js";
44
44
  import "../../components/RPDropFileZone.js";
45
- import "../../LayoutWrapper-0470458a.js";
45
+ import "../../LayoutWrapper-60db8675.js";
46
46
  import "../../components/layout/SkipLink.js";
47
47
  import "../../components/ui/Button.js";
48
48
  import "../../SearchCloseButton-08d57275.js";
@@ -92,13 +92,14 @@ import "./usePinch.js";
92
92
  import "../../components/ui/PasswordModal.js";
93
93
  import "./useLocalization.js";
94
94
  import "./useCopyText.js";
95
+ import "./useTextSelection.js";
95
96
  import "../smoothScrollTo.js";
96
97
  import "../../components/layout/toolbar/FileUploadTool.js";
97
98
  import "../../components/icons/FileUploadDefaultIcon.js";
98
- import "../../index-f563c6f0.js";
99
- import "../../index-35c7f4a2.js";
99
+ import "../../index-3bf64864.js";
100
+ import "../../index-c9a2990a.js";
100
101
  import "react-dom";
101
- import "../../floating-ui.react-dom-6b2fe0df.js";
102
+ import "../../floating-ui.react-dom-d22a10b4.js";
102
103
  import "../../components/layout/toolbar/DarkModeTool.js";
103
104
  import "../../components/icons/MoonIcon.js";
104
105
  import "../../components/icons/SunIcon.js";
@@ -137,5 +138,5 @@ import "./useHighlight.js";
137
138
  import "../../components/icons/LightPdfIcon.js";
138
139
  import "../../components/icons/DarkPdfIcon.js";
139
140
  export {
140
- Fo as useSearch
141
+ Go as useSearch
141
142
  };