@react-pdf-kit/viewer 2.0.0-beta.9 → 2.0.0-rc.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.
Files changed (194) hide show
  1. package/dist/Combination-136ff99c.js +698 -0
  2. package/dist/MostPageTool.module-13578ad6.js +6 -0
  3. package/dist/OtherTool.module-a4be5f1f.js +6 -0
  4. package/dist/Paginate.module-4eef00aa.js +8 -0
  5. package/dist/PaginationContext-9217cab4.js +201 -0
  6. package/dist/RPLayout.module-b4b23e29.js +14 -0
  7. package/dist/RPSplitter-f6acf13b.js +71 -0
  8. package/dist/RPToolbar.module-27d7fe77.js +10 -0
  9. package/dist/SearchTool.module-99f60dc7.js +16 -0
  10. package/dist/ToolbarLayout.module-6e339802.js +12 -0
  11. package/dist/ZoomTool.module-7082af8c.js +12 -0
  12. package/dist/assets/style.css +1 -1
  13. package/dist/assets/style.js +32 -30
  14. package/dist/components/RPController.js +81 -152
  15. package/dist/components/RPDropFileZone.js +1 -1
  16. package/dist/components/RPPages.js +1028 -122
  17. package/dist/components/RPProvider.js +57 -113
  18. package/dist/components/icons/DualPageWithCoverIcon.js +22 -0
  19. package/dist/components/layout/LayoutContainer.js +31 -136
  20. package/dist/components/layout/LayoutWrapper.js +8 -4
  21. package/dist/components/layout/RPDefaultLayout.js +184 -86
  22. package/dist/components/layout/RPLayout.js +123 -105
  23. package/dist/components/layout/SkipLink.js +29 -0
  24. package/dist/components/layout/WrapperLayout.js +1 -1
  25. package/dist/components/layout/sidebar/RPSidebar.js +79 -112
  26. package/dist/components/layout/sidebar/RPSplitter.js +6 -59
  27. package/dist/components/layout/sidebar/Thumbnail.js +130 -125
  28. package/dist/components/layout/sidebar/Thumbnails.js +56 -119
  29. package/dist/components/layout/toolbar/DarkModeTool.js +7 -5
  30. package/dist/components/layout/toolbar/DocumentDialog.js +305 -131
  31. package/dist/components/layout/toolbar/DocumentProperties.js +13 -10
  32. package/dist/components/layout/toolbar/FileDownloadTool.js +34 -124
  33. package/dist/components/layout/toolbar/FileUploadTool.js +9 -6
  34. package/dist/components/layout/toolbar/FullScreenTool.js +17 -14
  35. package/dist/components/layout/toolbar/MenuItem.js +11 -8
  36. package/dist/components/layout/toolbar/MenuSeparator.js +8 -5
  37. package/dist/components/layout/toolbar/MostPageTool.js +66 -125
  38. package/dist/components/layout/toolbar/OtherTool.js +171 -112
  39. package/dist/components/layout/toolbar/Paginate.js +121 -116
  40. package/dist/components/layout/toolbar/PrintTool.js +55 -123
  41. package/dist/components/layout/toolbar/RPMenuItem.js +14 -11
  42. package/dist/components/layout/toolbar/RPMoreOptions.js +102 -154
  43. package/dist/components/layout/toolbar/RPToolbar.js +90 -79
  44. package/dist/components/layout/toolbar/RPToolbarEnd.js +69 -88
  45. package/dist/components/layout/toolbar/RotateTool.js +13 -10
  46. package/dist/components/layout/toolbar/ScrollModeTool.js +42 -39
  47. package/dist/components/layout/toolbar/SearchCloseButton.js +24 -10
  48. package/dist/components/layout/toolbar/SearchResultNavigator.js +74 -105
  49. package/dist/components/layout/toolbar/SearchTool.js +245 -121
  50. package/dist/components/layout/toolbar/SelectionModeTool.js +9 -6
  51. package/dist/components/layout/toolbar/ThumbnailTool.js +15 -122
  52. package/dist/components/layout/toolbar/ToolbarCustom.js +75 -143
  53. package/dist/components/layout/toolbar/ToolbarDefault.js +135 -122
  54. package/dist/components/layout/toolbar/ToolbarLayout.js +86 -81
  55. package/dist/components/layout/toolbar/ViewModeTool.js +47 -35
  56. package/dist/components/layout/toolbar/ZoomTool.js +129 -119
  57. package/dist/components/layout/toolbar/tools/DocumentPropertiesTool.js +18 -122
  58. package/dist/components/layout/toolbar/tools/DualPageTool.js +11 -129
  59. package/dist/components/layout/toolbar/tools/DualPageWithCoverTool.js +202 -0
  60. package/dist/components/layout/toolbar/tools/FileDownloadTool.js +14 -123
  61. package/dist/components/layout/toolbar/tools/FileUploadTool.js +10 -8
  62. package/dist/components/layout/toolbar/tools/FirstPageTool.js +197 -0
  63. package/dist/components/layout/toolbar/tools/FullScreenTool.js +21 -18
  64. package/dist/components/layout/toolbar/tools/HorizontalScrollingTool.js +37 -0
  65. package/dist/components/layout/toolbar/tools/InputPageTool.js +52 -136
  66. package/dist/components/layout/toolbar/tools/LastPageTool.js +197 -0
  67. package/dist/components/layout/toolbar/tools/NextPageTool.js +39 -129
  68. package/dist/components/layout/toolbar/tools/PageScrollingTool.js +37 -0
  69. package/dist/components/layout/toolbar/tools/PreviousPageTool.js +28 -118
  70. package/dist/components/layout/toolbar/tools/PrintTool.js +14 -123
  71. package/dist/components/layout/toolbar/tools/RotateClockwiseTool.js +18 -9
  72. package/dist/components/layout/toolbar/tools/RotateCounterclockwiseTool.js +15 -13
  73. package/dist/components/layout/toolbar/tools/SelectionModeSwitcherTool.js +24 -14
  74. package/dist/components/layout/toolbar/tools/SinglePageTool.js +11 -129
  75. package/dist/components/layout/toolbar/tools/ThemeSwitcherTool.js +16 -6
  76. package/dist/components/layout/toolbar/tools/ThumbnailTool.js +23 -131
  77. package/dist/components/layout/toolbar/tools/VerticalScrollingTool.js +37 -0
  78. package/dist/components/layout/toolbar/tools/ZoomInTool.js +21 -18
  79. package/dist/components/layout/toolbar/tools/ZoomLevelDisplay.js +23 -136
  80. package/dist/components/layout/toolbar/tools/ZoomLevelTool.js +80 -141
  81. package/dist/components/layout/toolbar/tools/ZoomOutTool.js +18 -15
  82. package/dist/components/layout/toolbar/tools/defaults/RPHorizontalBar.js +98 -105
  83. package/dist/components/layout/toolbar/tools/defaults/RPVerticalBar.js +16 -123
  84. package/dist/components/layout/toolbar/tools/more-options/DocumentProperties.js +17 -14
  85. package/dist/components/layout/toolbar/tools/more-options/FileDownloadTool.js +29 -127
  86. package/dist/components/layout/toolbar/tools/more-options/FileUploadTool.js +31 -130
  87. package/dist/components/layout/toolbar/tools/more-options/FullScreenTool.js +28 -17
  88. package/dist/components/layout/toolbar/tools/more-options/MostPageTool.js +63 -134
  89. package/dist/components/layout/toolbar/tools/more-options/PrintTool.js +33 -131
  90. package/dist/components/layout/toolbar/tools/more-options/RotateTool.js +41 -24
  91. package/dist/components/layout/toolbar/tools/more-options/ScrollModeTool.js +58 -37
  92. package/dist/components/layout/toolbar/tools/more-options/SelectionModeTool.js +44 -25
  93. package/dist/components/layout/toolbar/tools/more-options/ViewModeTool.js +56 -30
  94. package/dist/components/page/AnnotationLayer.js +130 -125
  95. package/dist/components/page/CanvasLayer.js +57 -126
  96. package/dist/components/page/CustomElement.js +1 -1
  97. package/dist/components/page/DualPage.js +69 -110
  98. package/dist/components/page/DualPageWithCover.js +131 -0
  99. package/dist/components/page/RPPage.js +126 -123
  100. package/dist/components/page/SinglePage.js +59 -110
  101. package/dist/components/page/TextHighlightLayer.js +187 -129
  102. package/dist/components/page/TextLayer.js +186 -125
  103. package/dist/components/ui/Button.js +14 -12
  104. package/dist/components/ui/Checkbox.js +78 -70
  105. package/dist/components/ui/DropDown.js +11 -8
  106. package/dist/components/ui/Input.js +12 -11
  107. package/dist/components/ui/LoadingIndicator.js +34 -127
  108. package/dist/components/ui/PasswordModal.js +44 -30
  109. package/dist/components/ui/RPTooltip.js +121 -135
  110. package/dist/contexts/DimensionPagesContext.js +1 -1
  111. package/dist/contexts/DropFileZoneContext.js +1 -1
  112. package/dist/contexts/ElementPageContext.js +1 -1
  113. package/dist/contexts/EventCallbackContext.js +12 -8
  114. package/dist/contexts/FileInputContext.js +1 -1
  115. package/dist/contexts/HighlightContext.js +1 -1
  116. package/dist/contexts/LocalizationContext.js +1 -1
  117. package/dist/contexts/PagesRotateContext.js +1 -1
  118. package/dist/contexts/PaginationContext.js +15 -118
  119. package/dist/contexts/PrintContext.js +67 -131
  120. package/dist/contexts/RPDocumentContext.js +1 -1
  121. package/dist/contexts/RenderQueueProvider.js +48 -118
  122. package/dist/contexts/RotationContext.js +1 -1
  123. package/dist/contexts/ScrollModeContext.js +1 -1
  124. package/dist/contexts/SearchContext.js +66 -112
  125. package/dist/contexts/SelectionModeContext.js +1 -1
  126. package/dist/contexts/ThumbnailsContext.js +32 -131
  127. package/dist/contexts/ViewModeContext.js +19 -15
  128. package/dist/contexts/ZoomContext.js +1 -1
  129. package/dist/de_DE-a553b162.js +489 -0
  130. package/dist/floating-ui.react-dom-5ec29bd6.js +1327 -0
  131. package/dist/index-61f59539.js +1198 -0
  132. package/dist/index-655864a7.js +27 -0
  133. package/dist/{index-c9a2990a.js → index-c0faa594.js} +64 -87
  134. package/dist/index-e3ee9457.js +150 -0
  135. package/dist/main.js +193 -130
  136. package/dist/types/components/icons/DualPageWithCoverIcon.d.ts +2 -0
  137. package/dist/types/components/layout/LayoutContainer.d.ts +1 -5
  138. package/dist/types/components/layout/LayoutWrapper.d.ts +1 -5
  139. package/dist/types/components/layout/SkipLink.d.ts +7 -0
  140. package/dist/types/components/layout/sidebar/Thumbnails.d.ts +1 -3
  141. package/dist/types/components/layout/toolbar/RPToolbar.d.ts +1 -3
  142. package/dist/types/components/layout/toolbar/tools/DualPageWithCoverTool.d.ts +3 -0
  143. package/dist/types/components/layout/toolbar/tools/FirstPageTool.d.ts +3 -0
  144. package/dist/types/components/layout/toolbar/tools/HorizontalScrollingTool.d.ts +3 -0
  145. package/dist/types/components/layout/toolbar/tools/LastPageTool.d.ts +3 -0
  146. package/dist/types/components/layout/toolbar/tools/PageScrollingTool.d.ts +3 -0
  147. package/dist/types/components/layout/toolbar/tools/VerticalScrollingTool.d.ts +3 -0
  148. package/dist/types/components/page/DualPageWithCover.d.ts +5 -0
  149. package/dist/types/components/page/RPPage.d.ts +1 -3
  150. package/dist/types/components/ui/Button.d.ts +1 -3
  151. package/dist/types/components/ui/Checkbox.d.ts +1 -0
  152. package/dist/types/components/ui/Input.d.ts +1 -3
  153. package/dist/types/components/ui/RPTooltip.d.ts +1 -3
  154. package/dist/types/locales/de_DE.json.d.ts +83 -0
  155. package/dist/types/locales/en_US.json.d.ts +2 -0
  156. package/dist/types/locales/it_IT.json.d.ts +2 -0
  157. package/dist/types/locales/pt_PT.json.d.ts +2 -0
  158. package/dist/types/locales/th_TH.json.d.ts +2 -0
  159. package/dist/types/locales/zh_CN.json.d.ts +2 -0
  160. package/dist/types/main.d.ts +8 -2
  161. package/dist/types/utils/annotations.d.ts +10 -1
  162. package/dist/types/utils/calculatePage.d.ts +3 -3
  163. package/dist/types/utils/hooks/usePresentPage.d.ts +2 -1
  164. package/dist/types/utils/hooks/useTextSelection.d.ts +7 -0
  165. package/dist/types/utils/types.d.ts +34 -3
  166. package/dist/types/utils/withRef.d.ts +5 -4
  167. package/dist/utils/annotations.js +145 -150
  168. package/dist/utils/calculatePage.js +17 -11
  169. package/dist/utils/getZoomLevel.js +9 -9
  170. package/dist/utils/highlight.js +139 -139
  171. package/dist/utils/hooks/useFileDownload.js +23 -130
  172. package/dist/utils/hooks/useLicense.js +1 -1
  173. package/dist/utils/hooks/useLoadPdf.js +1 -1
  174. package/dist/utils/hooks/useLocalization.js +12 -11
  175. package/dist/utils/hooks/usePageRotateContext.js +1 -1
  176. package/dist/utils/hooks/usePaginate.js +23 -126
  177. package/dist/utils/hooks/usePinch.js +1 -1
  178. package/dist/utils/hooks/usePresentPage.js +79 -129
  179. package/dist/utils/hooks/usePrint.js +175 -130
  180. package/dist/utils/hooks/useRotate.js +1 -1
  181. package/dist/utils/hooks/useScrollToPage.js +18 -121
  182. package/dist/utils/hooks/useSearch.js +149 -127
  183. package/dist/utils/hooks/useTextSelection.js +76 -0
  184. package/dist/utils/hooks/useThumbnail.js +50 -131
  185. package/dist/utils/hooks/useVirtualReactWindow.js +84 -128
  186. package/dist/utils/types.js +14 -13
  187. package/dist/utils/withRef.js +5 -5
  188. package/package.json +5 -4
  189. package/dist/LayoutWrapper-6224491f.js +0 -19
  190. package/dist/SearchCloseButton-08d57275.js +0 -33
  191. package/dist/ToolbarLayout.module-8d56d12b.js +0 -3560
  192. package/dist/floating-ui.react-dom-d22a10b4.js +0 -1474
  193. package/dist/index-3bf64864.js +0 -1886
  194. package/dist/th_TH-d627cd51.js +0 -398
@@ -7,7 +7,7 @@ import "../../contexts/RPDocumentContext.js";
7
7
  import "../../utils/hooks/useLoadPdf.js";
8
8
  import "pdfjs-dist";
9
9
  import "../../utils/types.js";
10
- import "../../th_TH-d627cd51.js";
10
+ import "../../de_DE-a553b162.js";
11
11
  import "../../utils/getThumbnailViewport.js";
12
12
  import "../../contexts/ConfigContext.js";
13
13
  import "../../contexts/DocumentPasswordContext.js";
@@ -1,21 +1,24 @@
1
- import "react/jsx-runtime";
2
- import "react";
3
- import "../../icons/Thumbnail.js";
4
- import "../../ui/Button.js";
5
- import { a0 as Co } from "../../../ToolbarLayout.module-8d56d12b.js";
6
- import "./RPSplitter.js";
7
- import "../../../contexts/ToolbarComponentContext.js";
8
- import "../../../contexts/IconContext.js";
9
- import "../../ui/RPTooltip.js";
10
- import "../../../contexts/LocalizationContext.js";
11
- import "../../../contexts/IconToolContext.js";
12
- import "../../../utils/constants.js";
1
+ import { jsx as t, Fragment as f, jsxs as l } from "react/jsx-runtime";
2
+ import { useState as T, useRef as s, useCallback as C, useMemo as I } from "react";
3
+ import { ThumbnailIcon as x } from "../../icons/Thumbnail.js";
4
+ import { UIButton as R } from "../../ui/Button.js";
5
+ import { c as m, R as w } from "../../../RPSplitter-f6acf13b.js";
6
+ import { Thumbnails as v } from "./Thumbnails.js";
7
+ import { useThumbnailContext as N } from "../../../contexts/ThumbnailsContext.js";
8
+ import { useToolbarComponentContext as S } from "../../../contexts/ToolbarComponentContext.js";
9
+ import { useIconContext as k } from "../../../contexts/IconContext.js";
10
+ import y from "../../ui/RPTooltip.js";
11
+ import { useLocalizationContext as B } from "../../../contexts/LocalizationContext.js";
12
+ import { useIconToolContext as P } from "../../../contexts/IconToolContext.js";
13
+ import { THUMBNAIL_MIN_WIDTH as W } from "../../../utils/constants.js";
13
14
  import "../../../clsx-0c6e471a.js";
14
15
  import "../../../utils/withRef.js";
15
- import "../../icons/ChevronUpIcon.js";
16
- import "../../ui/Input.js";
16
+ import "../../../contexts/LayoutContainerContext.js";
17
+ import "./Thumbnail.js";
18
+ import "../../icons/LoaderIcon.js";
19
+ import "../../../PaginationContext-9217cab4.js";
17
20
  import "../../../utils/types.js";
18
- import "../../../th_TH-d627cd51.js";
21
+ import "../../../de_DE-a553b162.js";
19
22
  import "../../../contexts/ScrollModeContext.js";
20
23
  import "../../../utils/appConsole.js";
21
24
  import "../../../contexts/InitialStateContext.js";
@@ -28,113 +31,77 @@ import "../../../contexts/DocumentPasswordContext.js";
28
31
  import "../../../utils/hooks/usePdfProperties.js";
29
32
  import "../../../utils/convertPdfDate.js";
30
33
  import "../../../utils/formatFileSize.js";
31
- import "../../../contexts/DarkModeContext.js";
32
- import "../../../utils/hooks/useDarkMode.js";
33
- import "../../../contexts/RotationContext.js";
34
- import "../../../contexts/LayerContext.js";
35
- import "../../../contexts/ZoomContext.js";
36
- import "../../../utils/getZoomLevel.js";
37
- import "../../../contexts/LayoutContainerContext.js";
38
- import "../../../contexts/ViewModeContext.js";
39
34
  import "../../../contexts/GlobalCurrentPage.js";
40
35
  import "../../../contexts/EventCallbackContext.js";
41
- import "../../../utils/hooks/useDebounce.js";
36
+ import "../../../contexts/ViewModeContext.js";
42
37
  import "../../../contexts/VirtualScrollContext.js";
43
38
  import "../../../contexts/VirtualGridContext.js";
44
- import "../../../contexts/SelectionModeContext.js";
45
- import "../../../contexts/FullScreenContext.js";
46
- import "../../../utils/hooks/useFullScreen.js";
47
- import "../../../contexts/FileInputContext.js";
48
- import "../../../contexts/DropFileZoneContext.js";
49
- import "../../../contexts/ToolComponentContext.js";
50
- import "../../../utils/highlight.js";
51
- import "../../../utils/charators.js";
39
+ import "../../../utils/smoothScrollTo.js";
52
40
  import "../../../contexts/DimensionPagesContext.js";
41
+ import "../../../contexts/ZoomContext.js";
42
+ import "../../../utils/getZoomLevel.js";
43
+ import "../../../contexts/RotationContext.js";
44
+ import "../../../utils/hooks/useDebounce.js";
53
45
  import "../../../contexts/PagesRotateContext.js";
54
- import "../../../contexts/HighlightContext.js";
55
- import "../../../utils/hooks/useHighlight.js";
56
- import "../../../contexts/LicenseContext.js";
57
- import "../../../utils/hooks/useLicense.js";
58
- import "../../../contexts/DownloadContext.js";
59
46
  import "../../../contexts/SmoothScrollContext.js";
60
- import "../../../contexts/ElementPageContext.js";
61
- import "../../../utils/const.js";
62
47
  import "../../../utils/getScrollDistance.js";
63
- import "../../../utils/getElementPositionInPage.js";
48
+ import "../../../utils/calculatePage.js";
49
+ import "../../../contexts/RenderQueueProvider.js";
64
50
  import "../../../utils/Queue.js";
65
51
  import "../../../utils/renderPage.js";
66
- import "../../../contexts/LoaderContext.js";
67
- import "../../icons/LoaderIcon.js";
68
- import "../../../contexts/OtherToolContext.js";
69
- import "../../../contexts/ThemeContext.js";
70
- import "../Container.js";
71
- import "../../../contexts/ViewportContext.js";
72
- import "../WrapperLayout.js";
73
- import "../../RPDropFileZone.js";
74
- import "../../icons/LightPdfIcon.js";
75
- import "../../icons/DarkPdfIcon.js";
76
- import "../../../utils/hooks/useLocalization.js";
77
- import "../../../LayoutWrapper-6224491f.js";
78
- import "../../../SearchCloseButton-08d57275.js";
79
- import "../../icons/CloseIcon.js";
80
- import "../../ui/Checkbox.js";
81
- import "../../../index-c9a2990a.js";
82
- import "react-dom";
83
- import "../../icons/CheckIcon.js";
84
- import "../../ui/DropDown.js";
85
- import "../../../index-3bf64864.js";
86
- import "../../../floating-ui.react-dom-d22a10b4.js";
87
- import "../toolbar/MenuItem.js";
88
- import "../toolbar/MenuSeparator.js";
89
- import "../../../utils/dateFormatter.js";
90
- import "../toolbar/PropertyItem.js";
91
- import "../../../RotateTool.module-67946714.js";
92
52
  import "../../../utils/hooks/useInfiniteScroll.js";
93
- import "../../../utils/link_service.js";
94
- import "../../../utils/annotations.js";
95
- import "../../../utils/sanitizeExternalUrl.js";
96
- import "../../page/searchHighlight.js";
97
- import "../../page/CustomElement.js";
98
- import "../../../utils/calculatePage.js";
99
- import "../../../utils/hooks/useMousePressed.js";
100
- import "../../../utils/hooks/useGrabScroll.js";
101
- import "../../../utils/hooks/usePinch.js";
102
- import "../../ui/PasswordModal.js";
103
- import "../../../utils/approximateFragtion.js";
104
- import "../../../utils/hooks/useCopyText.js";
105
- import "../../../utils/getWordPositionInPage.js";
106
- import "../../../utils/smoothScrollTo.js";
107
- import "../toolbar/FileUploadTool.js";
108
- import "../../icons/FileUploadDefaultIcon.js";
109
- import "../toolbar/DarkModeTool.js";
110
- import "../../icons/MoonIcon.js";
111
- import "../../icons/SunIcon.js";
112
- import "../../icons/ThreeDotIcon.js";
113
- import "../toolbar/DocumentProperties.js";
114
- import "../../icons/InfoIcon.js";
115
- import "../toolbar/RotateTool.js";
116
- import "../../icons/ClockwiseIcon.js";
117
- import "../../../utils/hooks/useRotate.js";
118
- import "../toolbar/ViewModeTool.js";
119
- import "../../icons/DualPageIcon.js";
120
- import "../../icons/SinglePageIcon.js";
121
- import "../toolbar/ScrollModeTool.js";
122
- import "../../icons/PageScrollingIcon.js";
123
- import "../../icons/VerticalScrollingIcon.js";
124
- import "../../icons/HorizontalScrollingIcon.js";
125
- import "../../icons/FileDownloadDefaultIcon.js";
126
- import "../../icons/PrintDefaultIcon.js";
127
- import "../toolbar/FullScreenTool.js";
128
- import "../../icons/FullScreenIcon.js";
129
- import "../../icons/GoToDownIcon.js";
130
- import "../toolbar/SelectionModeTool.js";
131
- import "../../icons/TextSelectionDefaultIcon.js";
132
- import "../../icons/HandModeDefaultIcon.js";
133
- import "../../icons/ZoomInIcon.js";
134
- import "../../icons/ZoomOutIcon.js";
135
- import "../../../utils/zoom.js";
136
- import "../../icons/SearchIcon.js";
137
- import "../../icons/ClearIcon.js";
53
+ import "../../../utils/hooks/useThumbnail.js";
54
+ import "../../../index-c0faa594.js";
55
+ import "react-dom";
56
+ import "../../../index-e3ee9457.js";
57
+ import "../../../floating-ui.react-dom-5ec29bd6.js";
58
+ import "../../../index-655864a7.js";
59
+ import "../../../utils/hooks/useLocalization.js";
60
+ const $ = () => {
61
+ const { thumbnailIcon: o } = k(), { thumbnailIcon: p } = P();
62
+ return o || p || /* @__PURE__ */ t(x, {});
63
+ }, Ut = () => {
64
+ const { active: o, setActive: p } = N(), [c, u] = T(W), e = s(null), a = s(null), { thumbnailTool: i, sidebarEnable: h } = S(), { localeMessages: r } = B(), n = C(() => {
65
+ p((d) => !d);
66
+ }, []), b = I(() => typeof i != "boolean" && i ? /* @__PURE__ */ t(i, { onClick: n, active: o }) : i ? /* @__PURE__ */ t(y, { content: r == null ? void 0 : r.thumbnailTooltip, children: /* @__PURE__ */ t(
67
+ R,
68
+ {
69
+ onClick: n,
70
+ active: o,
71
+ "aria-label": r == null ? void 0 : r.thumbnailTooltip,
72
+ children: /* @__PURE__ */ t($, {})
73
+ }
74
+ ) }) : null, [i, o, n, r]);
75
+ return /* @__PURE__ */ t(f, { children: h && /* @__PURE__ */ l(
76
+ "div",
77
+ {
78
+ style: { "--rp-thumbnail-width": `${c}px` },
79
+ className: m["rp-sidebar-content-wrapper"],
80
+ "data-rp": "sidebar",
81
+ children: [
82
+ /* @__PURE__ */ t("div", { ref: a, className: m["rp-sidebar-content"], children: b }),
83
+ /* @__PURE__ */ l(
84
+ "div",
85
+ {
86
+ "data-rp": "thumbnailSidebar",
87
+ className: `${m["rp-thumbnails-wrapper"]} ${o ? "" : m["rp-thumbnails-wrapper-hidden"]}`,
88
+ children: [
89
+ /* @__PURE__ */ t(v, { show: o, ref: e }),
90
+ /* @__PURE__ */ t(
91
+ w,
92
+ {
93
+ onWidthChange: u,
94
+ thumbnailRef: e,
95
+ leftSidebarRef: a
96
+ }
97
+ )
98
+ ]
99
+ }
100
+ )
101
+ ]
102
+ }
103
+ ) });
104
+ };
138
105
  export {
139
- Co as RPSidebar
106
+ Ut as RPSidebar
140
107
  };
@@ -1,61 +1,8 @@
1
- import { jsx as y } from "react/jsx-runtime";
2
- import { useRef as f, useState as B, useCallback as v, useEffect as w } from "react";
3
- import { THUMBNAIL_MIN_WIDTH as _ } from "../../../utils/constants.js";
4
- import { useLayoutContainer as I } from "../../../contexts/LayoutContainerContext.js";
5
- const L = {
6
- "rp-thumbnail-dragger": "_rp-thumbnail-dragger_wfl8g_2",
7
- "rp-thumbnail-dragger-dragging": "_rp-thumbnail-dragger-dragging_wfl8g_19"
8
- }, R = {
9
- "rp-thumbnail-dragger": "_rp-thumbnail-dragger_1iiu0_1",
10
- "rp-thumbnail-dragger-dragging": "_rp-thumbnail-dragger-dragging_1iiu0_18"
11
- }, W = (s) => {
12
- s.preventDefault(), s.stopPropagation();
13
- }, H = (s) => {
14
- const { onWidthChange: e, thumbnailRef: x, leftSidebarRef: E, isRPLayout: S } = s, i = f(null), M = f(0), c = f(null), [a, D] = B(_), { container: p } = I(), P = v((r) => {
15
- var u, l, m, o, g, d;
16
- W(r);
17
- const t = ((l = (u = i.current) == null ? void 0 : u.getBoundingClientRect()) == null ? void 0 : l.left) ?? 0, n = ((o = (m = x.current) == null ? void 0 : m.getBoundingClientRect()) == null ? void 0 : o.width) ?? 0;
18
- c.current = { x: t, y: 0 }, M.current = n, (g = i.current) == null || g.classList.add(L["rp-thumbnail-dragger-dragging"]), (d = i.current) == null || d.classList.add(R["rp-thumbnail-dragger-dragging"]);
19
- }, []), h = v((r) => {
20
- var t, n;
21
- W(r), c.current = null, (t = i.current) == null || t.classList.remove(L["rp-thumbnail-dragger-dragging"]), (n = i.current) == null || n.classList.remove(R["rp-thumbnail-dragger-dragging"]);
22
- }, []), b = v(
23
- (r) => {
24
- if (!c.current)
25
- return;
26
- const t = r.clientX - c.current.x, n = Math.max(
27
- _,
28
- Math.min(M.current + t, a)
29
- );
30
- e == null || e(n), W(r);
31
- },
32
- [e, a]
33
- );
34
- return w(() => {
35
- if (!p)
36
- return;
37
- const r = new ResizeObserver(([t]) => {
38
- var o, g, d;
39
- const n = ((o = i.current) == null ? void 0 : o.offsetWidth) ?? 0, u = ((d = (g = E.current) == null ? void 0 : g.getBoundingClientRect()) == null ? void 0 : d.width) ?? 0, l = t.contentRect.width / 2, m = n + u;
40
- D(l - m);
41
- });
42
- return r.observe(p), () => {
43
- r.disconnect();
44
- };
45
- }, [p, E]), w(() => {
46
- var t;
47
- (((t = x.current) == null ? void 0 : t.clientWidth) ?? _) > a && (e == null || e(a));
48
- }, [a, e]), w(() => (window.addEventListener("pointermove", b), window.addEventListener("pointerup", h), () => {
49
- window.removeEventListener("pointermove", b), window.removeEventListener("pointerup", h);
50
- }), [b, h]), /* @__PURE__ */ y(
51
- "div",
52
- {
53
- ref: i,
54
- className: S ? R["rp-thumbnail-dragger"] : L["rp-thumbnail-dragger"],
55
- onPointerDown: P
56
- }
57
- );
58
- };
1
+ import "react/jsx-runtime";
2
+ import "react";
3
+ import { R as e } from "../../../RPSplitter-f6acf13b.js";
4
+ import "../../../utils/constants.js";
5
+ import "../../../contexts/LayoutContainerContext.js";
59
6
  export {
60
- H as RPSplitter
7
+ e as RPSplitter
61
8
  };
@@ -1,140 +1,145 @@
1
- import "react/jsx-runtime";
2
- import "react";
3
- import { $ as Do } from "../../../ToolbarLayout.module-8d56d12b.js";
4
- import "../../../clsx-0c6e471a.js";
5
- import "../../icons/LoaderIcon.js";
6
- import "../../../contexts/PagesRotateContext.js";
7
- import "../../../contexts/RPDocumentContext.js";
8
- import "../../../contexts/DocumentPasswordContext.js";
9
- import "../../../contexts/DarkModeContext.js";
10
- import "../../../contexts/RotationContext.js";
11
- import "../../../contexts/LayerContext.js";
12
- import "../../../contexts/ZoomContext.js";
13
- import "../../../contexts/ViewModeContext.js";
1
+ import { jsxs as k, jsx as r } from "react/jsx-runtime";
2
+ import { useRef as h, useState as N, useMemo as _, useCallback as S, useEffect as w } from "react";
3
+ import { c as I } from "../../../clsx-0c6e471a.js";
4
+ import { LoaderIcon as L } from "../../icons/LoaderIcon.js";
5
+ import { u as j } from "../../../PaginationContext-9217cab4.js";
6
+ import { usePagesRotateContext as q } from "../../../contexts/PagesRotateContext.js";
7
+ import { useRenderQueue as D } from "../../../contexts/RenderQueueProvider.js";
8
+ import { useDocumentContext as M } from "../../../contexts/RPDocumentContext.js";
9
+ import "../../../utils/types.js";
10
+ import "../../../de_DE-a553b162.js";
14
11
  import "../../../contexts/ScrollModeContext.js";
15
- import "../../../contexts/VirtualScrollContext.js";
16
- import "../../../contexts/VirtualGridContext.js";
17
- import "../../../contexts/SelectionModeContext.js";
12
+ import "../../../utils/appConsole.js";
18
13
  import "../../../contexts/InitialStateContext.js";
19
- import "../../../contexts/FullScreenContext.js";
20
- import "../../../contexts/FileInputContext.js";
21
- import "../../../contexts/DropFileZoneContext.js";
22
- import "../../../contexts/LayoutContainerContext.js";
23
- import "../../../contexts/DimensionPagesContext.js";
24
- import "../../../contexts/LocalizationContext.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
14
  import "../../../contexts/GlobalCurrentPage.js";
31
- import "../../../contexts/LoaderContext.js";
32
- import "../../../contexts/ToolComponentContext.js";
33
- import "../../../contexts/IconToolContext.js";
34
- import "../../../contexts/OtherToolContext.js";
35
15
  import "../../../contexts/EventCallbackContext.js";
36
- import "../../../contexts/ThemeContext.js";
37
- import "../../../contexts/ConfigContext.js";
38
- import "pdfjs-dist";
39
- import "../Container.js";
40
- import "../../../contexts/ViewportContext.js";
41
- import "../../../contexts/ToolbarComponentContext.js";
42
- import "./RPSplitter.js";
43
- import "../WrapperLayout.js";
44
- import "../../RPDropFileZone.js";
45
- import "../../../LayoutWrapper-6224491f.js";
46
- import "../../ui/Button.js";
47
- import "../../../SearchCloseButton-08d57275.js";
48
- import "../../ui/Input.js";
49
- import "../../ui/Checkbox.js";
50
- import "../../../contexts/IconContext.js";
51
- import "../../ui/RPTooltip.js";
52
- import "../../ui/DropDown.js";
53
- import "../toolbar/MenuItem.js";
54
- import "../toolbar/MenuSeparator.js";
55
- import "../../../utils/dateFormatter.js";
56
- import "../toolbar/PropertyItem.js";
57
- import "../../../RotateTool.module-67946714.js";
58
- import "../../icons/ChevronUpIcon.js";
59
- import "../../../utils/types.js";
60
- import "../../../th_TH-d627cd51.js";
61
- import "../../../utils/highlight.js";
62
- import "../../../utils/charators.js";
63
- import "../../../utils/Queue.js";
64
- import "../../../utils/renderPage.js";
65
- import "../../icons/Thumbnail.js";
66
- import "../../../utils/withRef.js";
67
- import "../../../utils/hooks/useInfiniteScroll.js";
16
+ import "../../../contexts/ViewModeContext.js";
17
+ import "../../../contexts/VirtualScrollContext.js";
18
+ import "../../../contexts/VirtualGridContext.js";
19
+ import "../../../utils/smoothScrollTo.js";
20
+ import "../../../contexts/DimensionPagesContext.js";
21
+ import "../../../contexts/ZoomContext.js";
68
22
  import "../../../utils/constants.js";
69
- import "../../../utils/link_service.js";
70
- import "../../../utils/annotations.js";
71
- import "../../../utils/sanitizeExternalUrl.js";
72
- import "../../page/searchHighlight.js";
73
- import "../../../utils/const.js";
74
- import "../../page/CustomElement.js";
75
- import "../../../utils/appConsole.js";
23
+ import "../../../utils/getZoomLevel.js";
24
+ import "../../../contexts/LayoutContainerContext.js";
25
+ import "../../../contexts/RotationContext.js";
76
26
  import "../../../utils/hooks/useLoadPdf.js";
27
+ import "pdfjs-dist";
77
28
  import "../../../utils/getThumbnailViewport.js";
29
+ import "../../../contexts/ConfigContext.js";
30
+ import "../../../contexts/DocumentPasswordContext.js";
78
31
  import "../../../utils/hooks/usePdfProperties.js";
79
32
  import "../../../utils/convertPdfDate.js";
80
33
  import "../../../utils/formatFileSize.js";
81
- import "../../../utils/getZoomLevel.js";
82
34
  import "../../../utils/hooks/useDebounce.js";
83
- import "../../../utils/hooks/useLicense.js";
35
+ import "../../../contexts/SmoothScrollContext.js";
84
36
  import "../../../utils/getScrollDistance.js";
85
- import "../../../utils/getElementPositionInPage.js";
86
37
  import "../../../utils/calculatePage.js";
87
- import "../../../utils/hooks/useMousePressed.js";
88
- import "../../../utils/hooks/useGrabScroll.js";
89
- import "../../../utils/hooks/usePinch.js";
90
- import "../../ui/PasswordModal.js";
91
- import "../../../utils/hooks/useLocalization.js";
92
- import "../../../utils/approximateFragtion.js";
93
- import "../../../utils/hooks/useCopyText.js";
94
- import "../../../utils/getWordPositionInPage.js";
95
- import "../../../utils/smoothScrollTo.js";
96
- import "../toolbar/FileUploadTool.js";
97
- import "../../icons/FileUploadDefaultIcon.js";
98
- import "../../../index-3bf64864.js";
99
- import "../../../index-c9a2990a.js";
100
- import "react-dom";
101
- import "../../../floating-ui.react-dom-d22a10b4.js";
102
- import "../toolbar/DarkModeTool.js";
103
- import "../../icons/MoonIcon.js";
104
- import "../../icons/SunIcon.js";
105
- import "../../../utils/hooks/useDarkMode.js";
106
- import "../../icons/ThreeDotIcon.js";
107
- import "../../icons/CloseIcon.js";
108
- import "../toolbar/DocumentProperties.js";
109
- import "../../icons/InfoIcon.js";
110
- import "../toolbar/RotateTool.js";
111
- import "../../icons/ClockwiseIcon.js";
112
- import "../../../utils/hooks/useRotate.js";
113
- import "../toolbar/ViewModeTool.js";
114
- import "../../icons/DualPageIcon.js";
115
- import "../../icons/SinglePageIcon.js";
116
- import "../../icons/CheckIcon.js";
117
- import "../toolbar/ScrollModeTool.js";
118
- import "../../icons/PageScrollingIcon.js";
119
- import "../../icons/VerticalScrollingIcon.js";
120
- import "../../icons/HorizontalScrollingIcon.js";
121
- import "../../icons/FileDownloadDefaultIcon.js";
122
- import "../../icons/PrintDefaultIcon.js";
123
- import "../toolbar/FullScreenTool.js";
124
- import "../../icons/FullScreenIcon.js";
125
- import "../../../utils/hooks/useFullScreen.js";
126
- import "../../icons/GoToDownIcon.js";
127
- import "../toolbar/SelectionModeTool.js";
128
- import "../../icons/TextSelectionDefaultIcon.js";
129
- import "../../icons/HandModeDefaultIcon.js";
130
- import "../../icons/ZoomInIcon.js";
131
- import "../../icons/ZoomOutIcon.js";
132
- import "../../../utils/zoom.js";
133
- import "../../icons/SearchIcon.js";
134
- import "../../icons/ClearIcon.js";
135
- import "../../../utils/hooks/useHighlight.js";
136
- import "../../icons/LightPdfIcon.js";
137
- import "../../icons/DarkPdfIcon.js";
38
+ import "../../../utils/Queue.js";
39
+ import "../../../utils/renderPage.js";
40
+ const i = {
41
+ "rp-thumbnail-wrapper": "_rp-thumbnail-wrapper_3fenb_1",
42
+ "rp-thumbnail-text": "_rp-thumbnail-text_3fenb_10",
43
+ "rp-thumbnail": "_rp-thumbnail_3fenb_1",
44
+ "rp-thumbnail-active": "_rp-thumbnail-active_3fenb_22",
45
+ "rp-thumbnail-loader": "_rp-thumbnail-loader_3fenb_31"
46
+ }, $t = ($) => {
47
+ const { pageNumber: t, isFocused: p, viewport: s } = $, { goToPage: d } = j(), { pageRotate: P } = q(), o = h(null), n = D(), { pages: a } = M(), [m, b] = N(null), c = h(!1), f = h(), R = _(() => p ? i["rp-thumbnail-active"] : "", [p]), u = _(() => ({
48
+ width: Math.round(s.width),
49
+ height: Math.round(s.height)
50
+ }), [s]), g = S(() => {
51
+ t && d(t);
52
+ }, [d, t]);
53
+ return w(() => {
54
+ const e = a.get(t);
55
+ f.current === e || (b(null), f.current = e);
56
+ }, [a, t]), w(() => {
57
+ const e = a.get(t);
58
+ if (!o.current || !t || !e || m)
59
+ return;
60
+ const l = new IntersectionObserver((y) => {
61
+ y.forEach((C) => {
62
+ if (c.current) {
63
+ c.current = !1, n.removeQueue(`thumbnail-${t}`);
64
+ return;
65
+ }
66
+ if (C.isIntersecting) {
67
+ const v = document.createElement("canvas");
68
+ c.current = !0, n.enqueue(
69
+ `thumbnail-${t}`,
70
+ {
71
+ page: e.page,
72
+ canvasElem: v,
73
+ options: {
74
+ scale: 1
75
+ },
76
+ onLoaded: () => {
77
+ v.toBlob((x) => {
78
+ if (!x)
79
+ return;
80
+ const E = URL.createObjectURL(x);
81
+ b(E);
82
+ });
83
+ }
84
+ },
85
+ 2
86
+ );
87
+ }
88
+ });
89
+ });
90
+ return o.current && l.observe(o.current), () => {
91
+ l.disconnect(), n.removeQueue(`thumbnail-${t}`);
92
+ };
93
+ }, [n, t, a, m]), /* @__PURE__ */ k(
94
+ "div",
95
+ {
96
+ onClick: g,
97
+ onKeyDown: (e) => {
98
+ (e.key === "Enter" || e.key === " ") && (e.preventDefault(), g());
99
+ },
100
+ id: `page-${t}`,
101
+ className: i["rp-thumbnail-wrapper"],
102
+ ref: o,
103
+ role: "button",
104
+ tabIndex: 0,
105
+ "aria-label": `Go to page ${t}`,
106
+ "aria-current": p ? "page" : void 0,
107
+ children: [
108
+ /* @__PURE__ */ r(
109
+ "div",
110
+ {
111
+ style: {
112
+ transform: `rotate(${P[t || 0]}deg)`
113
+ },
114
+ className: I(R, i["rp-thumbnail"]),
115
+ "aria-hidden": "true",
116
+ children: m ? /* @__PURE__ */ r(
117
+ "img",
118
+ {
119
+ src: m,
120
+ width: u.width,
121
+ height: u.height,
122
+ alt: `Page ${t} thumbnail`,
123
+ "aria-hidden": "true"
124
+ }
125
+ ) : /* @__PURE__ */ r(
126
+ "div",
127
+ {
128
+ className: i["rp-thumbnail-loader"],
129
+ style: {
130
+ width: `${u.width}px`,
131
+ height: `${u.height}px`
132
+ },
133
+ children: /* @__PURE__ */ r(L, { "aria-hidden": "true" })
134
+ }
135
+ )
136
+ }
137
+ ),
138
+ /* @__PURE__ */ r("div", { className: i["rp-thumbnail-text"], "aria-hidden": "true", children: t })
139
+ ]
140
+ }
141
+ );
142
+ };
138
143
  export {
139
- Do as Thumbnail
144
+ $t as Thumbnail
140
145
  };