@react-pdf-kit/viewer 2.0.0-beta.0 → 2.0.0-beta.10

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 (212) hide show
  1. package/dist/Combination-54a77a7a.js +701 -0
  2. package/dist/MostPageTool.module-13578ad6.js +6 -0
  3. package/dist/OtherTool.module-a4be5f1f.js +6 -0
  4. package/dist/Paginate.module-206a7d7d.js +8 -0
  5. package/dist/PaginationContext-9217cab4.js +201 -0
  6. package/dist/{LayoutWrapper-a871c161.js → RPLayout.module-967bf4bc.js} +3 -9
  7. package/dist/RPToolbar.module-27d7fe77.js +10 -0
  8. package/dist/{RotateTool.module-03987eba.js → RotateTool.module-67946714.js} +1 -1
  9. package/dist/SearchTool.module-99f60dc7.js +16 -0
  10. package/dist/ToolbarLayout.module-1fee0a18.js +11 -0
  11. package/dist/{ZoomTool.module-6c5eabbb.js → ZoomTool.module-7082af8c.js} +1 -1
  12. package/dist/assets/style.css +1 -0
  13. package/dist/assets/style.js +75 -0
  14. package/dist/components/RPConfig.js +14 -1489
  15. package/dist/components/RPController.js +109 -66
  16. package/dist/components/RPDropFileZone.js +26 -12
  17. package/dist/components/RPPages.js +991 -58
  18. package/dist/components/RPProvider.js +107 -19
  19. package/dist/components/RPTheme.js +6 -5
  20. package/dist/components/icons/DualPageIcon.js +6 -6
  21. package/dist/components/icons/LoaderIcon.js +1 -1
  22. package/dist/components/icons/SinglePageIcon.js +6 -6
  23. package/dist/components/layout/Container.js +1 -1
  24. package/dist/components/layout/LayoutContainer.js +32 -57
  25. package/dist/components/layout/LayoutWrapper.js +9 -4
  26. package/dist/components/layout/RPDefaultLayout.js +214 -14
  27. package/dist/components/layout/RPLayout.js +143 -41
  28. package/dist/components/layout/WrapperLayout.js +22 -9
  29. package/dist/components/layout/sidebar/RPSidebar.js +110 -13
  30. package/dist/components/layout/sidebar/RPSplitter.js +1 -1
  31. package/dist/components/layout/sidebar/Thumbnail.js +129 -52
  32. package/dist/components/layout/sidebar/Thumbnails.js +75 -6
  33. package/dist/components/layout/toolbar/DarkModeTool.js +24 -13
  34. package/dist/components/layout/toolbar/DocumentDialog.js +311 -56
  35. package/dist/components/layout/toolbar/DocumentProperties.js +21 -8
  36. package/dist/components/layout/toolbar/FileDownloadTool.js +48 -13
  37. package/dist/components/layout/toolbar/FileUploadTool.js +34 -10
  38. package/dist/components/layout/toolbar/FullScreenTool.js +43 -28
  39. package/dist/components/layout/toolbar/MenuItem.js +15 -8
  40. package/dist/components/layout/toolbar/MenuSeparator.js +11 -4
  41. package/dist/components/layout/toolbar/MostPageTool.js +72 -51
  42. package/dist/components/layout/toolbar/OtherTool.js +188 -22
  43. package/dist/components/layout/toolbar/Paginate.js +136 -17
  44. package/dist/components/layout/toolbar/PrintTool.js +70 -13
  45. package/dist/components/layout/toolbar/PropertyItem.js +1 -1
  46. package/dist/components/layout/toolbar/RPMenuItem.js +23 -13
  47. package/dist/components/layout/toolbar/RPMoreOptions.js +119 -47
  48. package/dist/components/layout/toolbar/RPToolbar.js +148 -8
  49. package/dist/components/layout/toolbar/RPToolbarEnd.js +118 -7
  50. package/dist/components/layout/toolbar/RotateTool.js +42 -18
  51. package/dist/components/layout/toolbar/ScrollModeTool.js +33 -21
  52. package/dist/components/layout/toolbar/SearchCloseButton.js +30 -7
  53. package/dist/components/layout/toolbar/SearchResultNavigator.js +87 -8
  54. package/dist/components/layout/toolbar/SearchTool.js +236 -54
  55. package/dist/components/layout/toolbar/SelectionModeTool.js +22 -10
  56. package/dist/components/layout/toolbar/ThumbnailTool.js +32 -10
  57. package/dist/components/layout/toolbar/ToolbarCustom.js +52 -55
  58. package/dist/components/layout/toolbar/ToolbarDefault.js +144 -58
  59. package/dist/components/layout/toolbar/ToolbarLayout.js +149 -6
  60. package/dist/components/layout/toolbar/ViewModeTool.js +31 -19
  61. package/dist/components/layout/toolbar/ZoomTool.js +104 -84
  62. package/dist/components/layout/toolbar/tools/DocumentPropertiesTool.js +38 -12
  63. package/dist/components/layout/toolbar/tools/DualPageTool.js +26 -0
  64. package/dist/components/layout/toolbar/tools/FileDownloadTool.js +31 -9
  65. package/dist/components/layout/toolbar/tools/FileUploadTool.js +29 -8
  66. package/dist/components/layout/toolbar/tools/FullScreenTool.js +25 -13
  67. package/dist/components/layout/toolbar/tools/InputPageTool.js +66 -26
  68. package/dist/components/layout/toolbar/tools/NextPageTool.js +36 -47
  69. package/dist/components/layout/toolbar/tools/PreviousPageTool.js +51 -11
  70. package/dist/components/layout/toolbar/tools/PrintTool.js +29 -7
  71. package/dist/components/layout/toolbar/tools/RotateClockwiseTool.js +31 -8
  72. package/dist/components/layout/toolbar/tools/RotateCounterclockwiseTool.js +34 -11
  73. package/dist/components/layout/toolbar/tools/SelectionModeSwitcherTool.js +31 -0
  74. package/dist/components/layout/toolbar/tools/SinglePageTool.js +26 -0
  75. package/dist/components/layout/toolbar/tools/ThemeSwitcherTool.js +17 -6
  76. package/dist/components/layout/toolbar/tools/ThumbnailTool.js +35 -13
  77. package/dist/components/layout/toolbar/tools/ZoomInTool.js +49 -20
  78. package/dist/components/layout/toolbar/tools/ZoomLevelDisplay.js +27 -0
  79. package/dist/components/layout/toolbar/tools/ZoomLevelTool.js +57 -23
  80. package/dist/components/layout/toolbar/tools/ZoomOutTool.js +47 -18
  81. package/dist/components/layout/toolbar/tools/defaults/RPHorizontalBar.js +122 -45
  82. package/dist/components/layout/toolbar/tools/defaults/RPVerticalBar.js +37 -11
  83. package/dist/components/layout/toolbar/tools/more-options/DocumentProperties.js +18 -5
  84. package/dist/components/layout/toolbar/tools/more-options/FileDownloadTool.js +36 -11
  85. package/dist/components/layout/toolbar/tools/more-options/FileUploadTool.js +25 -50
  86. package/dist/components/layout/toolbar/tools/more-options/FullScreenTool.js +24 -9
  87. package/dist/components/layout/toolbar/tools/more-options/MostPageTool.js +47 -54
  88. package/dist/components/layout/toolbar/tools/more-options/PrintTool.js +32 -7
  89. package/dist/components/layout/toolbar/tools/more-options/RotateTool.js +36 -12
  90. package/dist/components/layout/toolbar/tools/more-options/ScrollModeTool.js +26 -14
  91. package/dist/components/layout/toolbar/tools/more-options/SelectionModeTool.js +27 -15
  92. package/dist/components/layout/toolbar/tools/more-options/ViewModeTool.js +30 -18
  93. package/dist/components/page/AnnotationLayer.js +130 -54
  94. package/dist/components/page/CanvasLayer.js +62 -49
  95. package/dist/components/page/CustomElement.js +49 -18
  96. package/dist/components/page/DualPage.js +97 -4
  97. package/dist/components/page/RPPage.js +134 -51
  98. package/dist/components/page/SinglePage.js +87 -4
  99. package/dist/components/page/TextHighlightLayer.js +195 -57
  100. package/dist/components/page/TextLayer.js +193 -52
  101. package/dist/components/ui/Button.js +9 -8
  102. package/dist/components/ui/Checkbox.js +27 -25
  103. package/dist/components/ui/DropDown.js +21 -14
  104. package/dist/components/ui/Input.js +10 -9
  105. package/dist/components/ui/LoadingIndicator.js +45 -5
  106. package/dist/components/ui/PasswordModal.js +18 -15
  107. package/dist/components/ui/RPTooltip.js +98 -95
  108. package/dist/contexts/DimensionPagesContext.js +35 -17
  109. package/dist/contexts/DropFileZoneContext.js +32 -22
  110. package/dist/contexts/ElementPageContext.js +114 -51
  111. package/dist/contexts/EventCallbackContext.js +30 -0
  112. package/dist/contexts/FileInputContext.js +32 -22
  113. package/dist/contexts/FullScreenContext.js +17 -10
  114. package/dist/contexts/GlobalCurrentPage.js +13 -10
  115. package/dist/contexts/HighlightContext.js +24 -11
  116. package/dist/contexts/LicenseContext.js +1 -0
  117. package/dist/contexts/LoaderContext.js +10 -9
  118. package/dist/contexts/LocalizationContext.js +25 -29
  119. package/dist/contexts/PagesRotateContext.js +36 -18
  120. package/dist/contexts/PaginationContext.js +32 -4
  121. package/dist/contexts/PrintContext.js +76 -6
  122. package/dist/contexts/RPDocumentContext.js +48 -30
  123. package/dist/contexts/RenderQueueProvider.js +70 -8
  124. package/dist/contexts/RotationContext.js +25 -15
  125. package/dist/contexts/ScrollModeContext.js +7 -6
  126. package/dist/contexts/SearchContext.js +94 -6
  127. package/dist/contexts/SelectionModeContext.js +5 -4
  128. package/dist/contexts/ThumbnailsContext.js +41 -6
  129. package/dist/contexts/ViewModeContext.js +10 -9
  130. package/dist/contexts/ZoomContext.js +48 -38
  131. package/dist/floating-ui.react-dom-5ec29bd6.js +1327 -0
  132. package/dist/index-4baea9b5.js +1198 -0
  133. package/dist/index-655864a7.js +27 -0
  134. package/dist/{index-35c7f4a2.js → index-c0faa594.js} +63 -86
  135. package/dist/index-e3ee9457.js +150 -0
  136. package/dist/libInjectCss.js +9 -0
  137. package/dist/main.js +269 -84
  138. package/dist/types/assets/style.d.ts +1 -0
  139. package/dist/types/components/icons/DualPageIcon.d.ts +1 -1
  140. package/dist/types/components/icons/SinglePageIcon.d.ts +1 -1
  141. package/dist/types/components/layout/toolbar/tools/DualPageTool.d.ts +3 -0
  142. package/dist/types/components/layout/toolbar/tools/SelectionModeSwitcherTool.d.ts +3 -0
  143. package/dist/types/components/layout/toolbar/tools/SinglePageTool.d.ts +3 -0
  144. package/dist/types/components/layout/toolbar/tools/ZoomLevelDisplay.d.ts +7 -0
  145. package/dist/types/contexts/EventCallbackContext.d.ts +5 -0
  146. package/dist/types/contexts/RenderQueueProvider.d.ts +2 -2
  147. package/dist/types/libInjectCss.d.ts +1 -0
  148. package/dist/types/main.d.ts +6 -6
  149. package/dist/types/utils/annotations.d.ts +3 -3
  150. package/dist/types/utils/approximateFragtion.d.ts +9 -0
  151. package/dist/types/utils/getElementPositionInPage.d.ts +5 -0
  152. package/dist/types/utils/hooks/useCopyText.d.ts +1 -0
  153. package/dist/types/utils/hooks/usePrint.d.ts +3 -2
  154. package/dist/types/utils/hooks/useSearch.d.ts +1 -2
  155. package/dist/types/utils/injectPrintCSS.d.ts +1 -0
  156. package/dist/types/utils/link_service.d.ts +11 -1
  157. package/dist/types/utils/renderPage.d.ts +2 -2
  158. package/dist/types/utils/types.d.ts +38 -5
  159. package/dist/types/utils/zoom.d.ts +2 -0
  160. package/dist/utils/annotations.js +125 -149
  161. package/dist/utils/approximateFragtion.js +22 -0
  162. package/dist/utils/getElementPositionInPage.js +84 -0
  163. package/dist/utils/getWordPositionInPage.js +5 -5
  164. package/dist/utils/getZoomLevel.js +9 -8
  165. package/dist/utils/highlight.js +72 -72
  166. package/dist/utils/hooks/useCopyText.js +36 -0
  167. package/dist/utils/hooks/useDarkModeProps.js +3 -2
  168. package/dist/utils/hooks/useFileDownload.js +29 -54
  169. package/dist/utils/hooks/useHighlight.js +34 -33
  170. package/dist/utils/hooks/useLicense.js +1 -1
  171. package/dist/utils/hooks/useLoadPdf.js +44 -36
  172. package/dist/utils/hooks/useLoadWorker.js +11 -8
  173. package/dist/utils/hooks/useLocalization.js +13 -13
  174. package/dist/utils/hooks/usePageRotateContext.js +33 -17
  175. package/dist/utils/hooks/usePaginate.js +26 -49
  176. package/dist/utils/hooks/usePinch.js +62 -41
  177. package/dist/utils/hooks/usePresentPage.js +80 -50
  178. package/dist/utils/hooks/usePrint.js +181 -55
  179. package/dist/utils/hooks/useRotate.js +21 -7
  180. package/dist/utils/hooks/useScrollToPage.js +26 -51
  181. package/dist/utils/hooks/useSearch.js +141 -55
  182. package/dist/utils/hooks/useThumbnail.js +55 -55
  183. package/dist/utils/hooks/useVirtualReactWindow.js +70 -52
  184. package/dist/utils/hooks/useWatermark.js +18 -15
  185. package/dist/utils/injectPrintCSS.js +22 -0
  186. package/dist/utils/link_service.js +49 -9
  187. package/dist/utils/renderPage.js +13 -10
  188. package/dist/utils/zoom.js +6 -0
  189. package/package.json +6 -8
  190. package/dist/SearchCloseButton-cbf182aa.js +0 -33
  191. package/dist/ToolbarLayout.module-c588d36b.js +0 -3411
  192. package/dist/assets/Button.css +0 -1
  193. package/dist/assets/Checkbox.css +0 -1
  194. package/dist/assets/Container.css +0 -1
  195. package/dist/assets/DropDown.css +0 -1
  196. package/dist/assets/Input.css +0 -1
  197. package/dist/assets/LayoutWrapper.css +0 -1
  198. package/dist/assets/LoaderIcon.css +0 -1
  199. package/dist/assets/MenuItem.css +0 -1
  200. package/dist/assets/MenuSeparator.css +0 -1
  201. package/dist/assets/PasswordModal.css +0 -1
  202. package/dist/assets/PropertyItem.css +0 -1
  203. package/dist/assets/RPDropFileZone.css +0 -1
  204. package/dist/assets/RPSplitter.css +0 -1
  205. package/dist/assets/RPTooltip.css +0 -1
  206. package/dist/assets/RotateTool.css +0 -1
  207. package/dist/assets/SearchCloseButton.css +0 -1
  208. package/dist/assets/ToolbarLayout.css +0 -1
  209. package/dist/assets/WrapperLayout.css +0 -1
  210. package/dist/assets/ZoomTool.css +0 -1
  211. package/dist/floating-ui.react-dom-6b2fe0df.js +0 -1474
  212. package/dist/index-f563c6f0.js +0 -1889
@@ -1,60 +1,201 @@
1
- import "react/jsx-runtime";
2
- import "react";
3
- import "../../contexts/RPDocumentContext.js";
1
+ import { jsx as B } from "react/jsx-runtime";
2
+ import { useRef as g, useState as H, useMemo as P, useCallback as _, useEffect as w } from "react";
3
+ import { useDocumentContext as G } from "../../contexts/RPDocumentContext.js";
4
+ import * as J from "pdfjs-dist";
5
+ import { resetDivs as $, highlightMatches as U } from "../../utils/highlight.js";
6
+ import { useSearchContext as V } from "../../contexts/SearchContext.js";
7
+ import "../../utils/hooks/useLoadPdf.js";
8
+ import "../../utils/types.js";
9
+ import "../../th_TH-d627cd51.js";
10
+ import "../../utils/getThumbnailViewport.js";
11
+ import "../../contexts/ConfigContext.js";
4
12
  import "../../contexts/DocumentPasswordContext.js";
5
- import { F as pr } from "../../ToolbarLayout.module-c588d36b.js";
6
- import "../../contexts/DarkModeContext.js";
7
- import "../../contexts/RotationContext.js";
8
- import "../../contexts/LayerContext.js";
9
- import "../../contexts/ZoomContext.js";
10
- import "../../contexts/ViewModeContext.js";
11
- import "../../contexts/ScrollModeContext.js";
13
+ import "../../utils/appConsole.js";
14
+ import "../../utils/hooks/usePdfProperties.js";
15
+ import "../../utils/convertPdfDate.js";
16
+ import "../../utils/formatFileSize.js";
17
+ import "../../utils/charators.js";
18
+ import "../../utils/hooks/useSearch.js";
12
19
  import "../../contexts/VirtualScrollContext.js";
13
- import "../../contexts/VirtualGridContext.js";
14
- import "../../contexts/SelectionModeContext.js";
20
+ import "../../contexts/ScrollModeContext.js";
15
21
  import "../../contexts/InitialStateContext.js";
16
- import "../../contexts/FullScreenContext.js";
17
- import "../../contexts/FileInputContext.js";
18
- import "../../contexts/DropFileZoneContext.js";
22
+ import "../../contexts/ZoomContext.js";
23
+ import "../../utils/constants.js";
24
+ import "../../utils/getZoomLevel.js";
19
25
  import "../../contexts/LayoutContainerContext.js";
26
+ import "../../contexts/ViewModeContext.js";
27
+ import "../../contexts/RotationContext.js";
28
+ import "../../contexts/GlobalCurrentPage.js";
29
+ import "../../contexts/EventCallbackContext.js";
30
+ import "../../utils/hooks/useDebounce.js";
31
+ import "../../PaginationContext-9217cab4.js";
32
+ import "../../contexts/VirtualGridContext.js";
33
+ import "../../utils/smoothScrollTo.js";
20
34
  import "../../contexts/DimensionPagesContext.js";
21
- import "../../contexts/LocalizationContext.js";
22
- import "../../contexts/HighlightContext.js";
23
- import "../../contexts/LicenseContext.js";
24
- import "../../contexts/DownloadContext.js";
25
- import "../../contexts/SmoothScrollContext.js";
26
- import "../../contexts/ElementPageContext.js";
27
35
  import "../../contexts/PagesRotateContext.js";
28
- import "../../contexts/GlobalCurrentPage.js";
29
- import "../../contexts/LoaderContext.js";
30
- import "../../contexts/ToolComponentContext.js";
31
- import "../../contexts/IconToolContext.js";
32
- import "../../contexts/OtherToolContext.js";
33
- import "../RPConfig.js";
34
- import "../layout/Container.js";
35
- import "../../contexts/ViewportContext.js";
36
- import "../../contexts/ToolbarComponentContext.js";
37
- import "../layout/sidebar/RPSplitter.js";
38
- import "../layout/WrapperLayout.js";
39
- import "../../LayoutWrapper-a871c161.js";
40
- import "../../contexts/ThemeContext.js";
41
- import "../RPDropFileZone.js";
42
- import "../ui/Button.js";
43
- import "../../SearchCloseButton-cbf182aa.js";
44
- import "../ui/Input.js";
45
- import "../ui/Checkbox.js";
46
- import "../icons/LoaderIcon.js";
47
- import "../../contexts/IconContext.js";
48
- import "../ui/RPTooltip.js";
49
- import "../ui/DropDown.js";
50
- import "../../ZoomTool.module-6c5eabbb.js";
51
- import "../layout/toolbar/MenuItem.js";
52
- import "../layout/toolbar/MenuSeparator.js";
53
- import "../../utils/dateFormatter.js";
54
- import "../layout/toolbar/PropertyItem.js";
55
- import "../../RotateTool.module-03987eba.js";
56
- import "pdfjs-dist";
57
- import "../../utils/highlight.js";
36
+ import "../../contexts/SmoothScrollContext.js";
37
+ import "../../utils/getScrollDistance.js";
38
+ import "../../utils/calculatePage.js";
39
+ import "../../utils/getWordPositionInPage.js";
40
+ const X = "_selecting_1553j_14", z = "_markedContent_1553j_37", a = {
41
+ "rp-text-layer": "_rp-text-layer_1553j_1",
42
+ selecting: X,
43
+ markedContent: z,
44
+ "rp-text-layer-text": "_rp-text-layer-text_1553j_61"
45
+ }, Ae = (k) => {
46
+ const { pageNumber: d } = k, { pages: R } = G(), i = g(null), { matches: O, currentMatch: v } = V(), [D, A] = H(
47
+ []
48
+ ), p = g(), h = g(), L = g([]), y = P(() => O.filter((r) => r.pageIndex === d - 1), [O, d]), T = _(
49
+ (r, t, e = !1) => {
50
+ if (e && $(r, t), !y.length) {
51
+ L.current = [], A([]);
52
+ return;
53
+ }
54
+ const n = U(y, r, t);
55
+ A(n);
56
+ },
57
+ [y]
58
+ ), x = g(), C = g(!1), E = _(() => Array.from(document.querySelectorAll('[data-rp$="-textLayer"]')), []);
59
+ w(() => ((() => {
60
+ if (x.current)
61
+ return;
62
+ x.current = new AbortController();
63
+ const { signal: t } = x.current, e = () => {
64
+ E().forEach((o) => {
65
+ const s = o.querySelector(".endOfContent");
66
+ s && (o.appendChild(s), s.style.width = "", s.style.height = "", o.classList.remove(a.selecting));
67
+ });
68
+ };
69
+ document.addEventListener(
70
+ "pointerdown",
71
+ () => {
72
+ C.current = !0;
73
+ },
74
+ { signal: t }
75
+ ), document.addEventListener(
76
+ "pointerup",
77
+ () => {
78
+ C.current = !1, e();
79
+ },
80
+ { signal: t }
81
+ ), window.addEventListener(
82
+ "blur",
83
+ () => {
84
+ C.current = !1, e();
85
+ },
86
+ { signal: t }
87
+ ), document.addEventListener(
88
+ "keyup",
89
+ () => {
90
+ C.current || e();
91
+ },
92
+ { signal: t }
93
+ );
94
+ let n = null;
95
+ document.addEventListener(
96
+ "selectionchange",
97
+ () => {
98
+ var M, j;
99
+ const o = document.getSelection();
100
+ if (!o)
101
+ return;
102
+ if (o.rangeCount === 0) {
103
+ e();
104
+ return;
105
+ }
106
+ const s = /* @__PURE__ */ new Set();
107
+ for (let c = 0; c < o.rangeCount; c++) {
108
+ const f = o.getRangeAt(c);
109
+ E().forEach((N) => {
110
+ f.intersectsNode(N) && !s.has(N) && s.add(N);
111
+ });
112
+ }
113
+ E().forEach((c) => {
114
+ if (s.has(c))
115
+ c.classList.add(a.selecting);
116
+ else {
117
+ const f = c.querySelector(".endOfContent");
118
+ f && (c.appendChild(f), f.style.width = "", f.style.height = "", c.classList.remove(a.selecting));
119
+ }
120
+ });
121
+ const l = o.getRangeAt(0);
122
+ let u = n && (l.compareBoundaryPoints(Range.END_TO_END, n) === 0 || l.compareBoundaryPoints(Range.START_TO_END, n) === 0) ? l.startContainer : l.endContainer;
123
+ u.nodeType === Node.TEXT_NODE && (u = u.parentNode);
124
+ const m = (M = u.parentElement) == null ? void 0 : M.closest(
125
+ a["rp-text-layer"]
126
+ ), S = m == null ? void 0 : m.querySelector(".endOfContent");
127
+ S && m && (S.style.width = m.style.width, S.style.height = m.style.height, (j = u.parentElement) == null || j.insertBefore(S, u.nextSibling)), n = l.cloneRange();
128
+ },
129
+ { signal: t }
130
+ );
131
+ })(), () => {
132
+ var t;
133
+ (t = x.current) == null || t.abort(), x.current = void 0;
134
+ }), [E]);
135
+ const q = _(() => {
136
+ i.current && i.current.classList.add(a.selecting);
137
+ }, []), I = _(() => {
138
+ i.current && i.current.classList.remove(a.selecting);
139
+ }, []);
140
+ return w(() => {
141
+ if (L.current.forEach((e) => {
142
+ e.classList.remove("selected");
143
+ }), !D.length || !v || v.pageIndex !== d - 1)
144
+ return;
145
+ const r = y.findIndex(
146
+ (e) => JSON.stringify(e) === JSON.stringify(v)
147
+ );
148
+ if (r === -1)
149
+ return;
150
+ const t = D.filter((e) => e.index === r);
151
+ t.length && (L.current = t.map((e) => e.element), t.forEach((e) => {
152
+ e.element.classList.add("selected");
153
+ }));
154
+ }, [v, D, y]), w(() => {
155
+ const r = R.get(d);
156
+ if (!r || !i.current)
157
+ return;
158
+ const t = i.current;
159
+ return p.current && p.current.cancel(), r.page.getTextContent().then((e) => {
160
+ const n = r.page.getViewport({ scale: 1 });
161
+ return p.current = new J.TextLayer({
162
+ viewport: n,
163
+ textContentSource: e,
164
+ container: t
165
+ }), h.current = e, t && (t.innerText = ""), p.current.render();
166
+ }).then(() => {
167
+ var s, l;
168
+ [].slice.call(t.children).forEach((b) => {
169
+ b.classList.add(a["rp-text-layer-text"]), b.setAttribute("data-rp", "rp-text-layer-text");
170
+ });
171
+ const n = (s = p.current) == null ? void 0 : s.textDivs;
172
+ n && h.current && T(h.current, n);
173
+ const o = document.createElement("div");
174
+ o.className = "endOfContent", (l = i.current) == null || l.appendChild(o);
175
+ }).catch(() => {
176
+ }), () => {
177
+ var e;
178
+ (e = p.current) == null || e.cancel();
179
+ };
180
+ }, [R, d]), w(() => {
181
+ var e;
182
+ [].slice.call(i.current.children).forEach((n) => {
183
+ n.classList.add(a["rp-text-layer-text"]);
184
+ });
185
+ const t = (e = p.current) == null ? void 0 : e.textDivs;
186
+ t && h.current && T(h.current, t, !0);
187
+ }, [T]), /* @__PURE__ */ B(
188
+ "div",
189
+ {
190
+ "data-rp-text-layer": !0,
191
+ "data-rp": `page-${d}-textLayer`,
192
+ className: a["rp-text-layer"],
193
+ ref: i,
194
+ onMouseDown: q,
195
+ onMouseUp: I
196
+ }
197
+ );
198
+ };
58
199
  export {
59
- pr as TextLayer
200
+ Ae as TextLayer
60
201
  };
@@ -1,22 +1,23 @@
1
- import { jsx as a } from "react/jsx-runtime";
2
- import { c as p } from "../../clsx-0c6e471a.js";
3
- import { withRef as u } from "../../utils/withRef.js";
4
- import '../../assets/Button.css';const t = {
1
+ import { jsx as p } from "react/jsx-runtime";
2
+ import { c as a } from "../../clsx-0c6e471a.js";
3
+ import { withRef as i } from "../../utils/withRef.js";
4
+ import "react";
5
+ const t = {
5
6
  "rp-button": "_rp-button_1jswj_1",
6
7
  "rp-button-active": "_rp-button-active_1jswj_18"
7
- }, _ = u((o, r) => {
8
+ }, j = i((o, r) => {
8
9
  const { children: s, active: n, className: c, ...e } = o;
9
- return /* @__PURE__ */ a(
10
+ return /* @__PURE__ */ p(
10
11
  "button",
11
12
  {
12
13
  tabIndex: 0,
13
14
  ref: r,
14
15
  ...e,
15
- className: p(t["rp-button"], c, n ? t["rp-button-active"] : ""),
16
+ className: a(t["rp-button"], c, n ? t["rp-button-active"] : ""),
16
17
  children: s
17
18
  }
18
19
  );
19
20
  });
20
21
  export {
21
- _ as UIButton
22
+ j as UIButton
22
23
  };
@@ -1,12 +1,14 @@
1
1
  import { jsx as i, jsxs as w, Fragment as U } from "react/jsx-runtime";
2
2
  import * as s from "react";
3
- import { c as z, u as B, P as E, a as S, b as G, d as K, e as X } from "../../index-35c7f4a2.js";
3
+ import { c as z, a as B, P as E, b as S, d as G, f as K } from "../../index-c0faa594.js";
4
+ import { u as X } from "../../index-655864a7.js";
4
5
  import { CheckIcon as J } from "../icons/CheckIcon.js";
5
- import '../../assets/Checkbox.css';function Q(e) {
6
+ import "react-dom";
7
+ function Q(e) {
6
8
  const r = s.useRef({ value: e, previous: e });
7
9
  return s.useMemo(() => (r.current.value !== e && (r.current.previous = r.current.value, r.current.value = e), r.current.previous), [e]);
8
10
  }
9
- var g = "Checkbox", [V, re] = z(g), [W, P] = V(g);
11
+ var g = "Checkbox", [V, ne] = z(g), [W, P] = V(g);
10
12
  function Y(e) {
11
13
  const {
12
14
  __scopeCheckbox: r,
@@ -14,19 +16,19 @@ function Y(e) {
14
16
  children: d,
15
17
  defaultChecked: n,
16
18
  disabled: t,
17
- form: h,
18
- name: f,
19
+ form: f,
20
+ name: h,
19
21
  onCheckedChange: u,
20
22
  required: k,
21
23
  value: C = "on",
22
24
  // @ts-expect-error
23
25
  internal_do_not_use_render: l
24
- } = e, [p, v] = X({
26
+ } = e, [p, v] = K({
25
27
  prop: o,
26
28
  defaultProp: n ?? !1,
27
29
  onChange: u,
28
30
  caller: g
29
- }), [m, x] = s.useState(null), [_, c] = s.useState(null), a = s.useRef(!1), I = m ? !!h || !!m.closest("form") : (
31
+ }), [m, x] = s.useState(null), [_, c] = s.useState(null), a = s.useRef(!1), I = m ? !!f || !!m.closest("form") : (
30
32
  // We set this to true by default so that events bubble to forms without JS (SSR)
31
33
  !0
32
34
  ), R = {
@@ -35,8 +37,8 @@ function Y(e) {
35
37
  setChecked: v,
36
38
  control: m,
37
39
  setControl: x,
38
- name: f,
39
- form: h,
40
+ name: h,
41
+ form: f,
40
42
  value: C,
41
43
  hasConsumerStoppedPropagationRef: a,
42
44
  required: k,
@@ -58,8 +60,8 @@ var M = "CheckboxTrigger", T = s.forwardRef(
58
60
  ({ __scopeCheckbox: e, onKeyDown: r, onClick: o, ...d }, n) => {
59
61
  const {
60
62
  control: t,
61
- value: h,
62
- disabled: f,
63
+ value: f,
64
+ disabled: h,
63
65
  checked: u,
64
66
  required: k,
65
67
  setControl: C,
@@ -82,9 +84,9 @@ var M = "CheckboxTrigger", T = s.forwardRef(
82
84
  "aria-checked": b(u) ? "mixed" : u,
83
85
  "aria-required": k,
84
86
  "data-state": O(u),
85
- "data-disabled": f ? "" : void 0,
86
- disabled: f,
87
- value: h,
87
+ "data-disabled": h ? "" : void 0,
88
+ disabled: h,
89
+ value: f,
88
90
  ...d,
89
91
  ref: x,
90
92
  onKeyDown: S(r, (c) => {
@@ -105,8 +107,8 @@ var q = s.forwardRef(
105
107
  name: d,
106
108
  checked: n,
107
109
  defaultChecked: t,
108
- required: h,
109
- disabled: f,
110
+ required: f,
111
+ disabled: h,
110
112
  value: u,
111
113
  onCheckedChange: k,
112
114
  form: C,
@@ -118,8 +120,8 @@ var q = s.forwardRef(
118
120
  __scopeCheckbox: o,
119
121
  checked: n,
120
122
  defaultChecked: t,
121
- disabled: f,
122
- required: h,
123
+ disabled: h,
124
+ required: f,
123
125
  onCheckedChange: k,
124
126
  name: d,
125
127
  form: C,
@@ -173,15 +175,15 @@ var D = "CheckboxBubbleInput", L = s.forwardRef(
173
175
  control: d,
174
176
  hasConsumerStoppedPropagationRef: n,
175
177
  checked: t,
176
- defaultChecked: h,
177
- required: f,
178
+ defaultChecked: f,
179
+ required: h,
178
180
  disabled: u,
179
181
  name: k,
180
182
  value: C,
181
183
  form: l,
182
184
  bubbleInput: p,
183
185
  setBubbleInput: v
184
- } = P(D, e), m = B(o, v), x = Q(t), _ = K(d);
186
+ } = P(D, e), m = B(o, v), x = Q(t), _ = X(d);
185
187
  s.useEffect(() => {
186
188
  const a = p;
187
189
  if (!a)
@@ -201,8 +203,8 @@ var D = "CheckboxBubbleInput", L = s.forwardRef(
201
203
  {
202
204
  type: "checkbox",
203
205
  "aria-hidden": !0,
204
- defaultChecked: h ?? c.current,
205
- required: f,
206
+ defaultChecked: f ?? c.current,
207
+ required: h,
206
208
  disabled: u,
207
209
  name: k,
208
210
  value: C,
@@ -239,7 +241,7 @@ function O(e) {
239
241
  const y = {
240
242
  "rp-checkbox": "_rp-checkbox_1vwg8_1",
241
243
  "rp-checkbox-indicator": "_rp-checkbox-indicator_1vwg8_25"
242
- }, oe = ({
244
+ }, ce = ({
243
245
  children: e,
244
246
  value: r,
245
247
  name: o,
@@ -260,5 +262,5 @@ const y = {
260
262
  /* @__PURE__ */ i("label", { className: y["rp-checkbox-label"], htmlFor: o, children: e })
261
263
  ] });
262
264
  export {
263
- oe as UICheckbox
265
+ ce as UICheckbox
264
266
  };
@@ -1,29 +1,36 @@
1
- import { jsxs as l, jsx as d } from "react/jsx-runtime";
2
- import { R as p, T as c, P as _, C as A } from "../../index-f563c6f0.js";
3
- import { c as F } from "../../clsx-0c6e471a.js";
4
- import '../../assets/DropDown.css';const w = "_slideDownAndFade_1vzkq_1", m = "_slideLeftAndFade_1vzkq_1", f = "_slideUpAndFade_1vzkq_1", g = "_slideRightAndFade_1vzkq_1", h = {
1
+ import { jsxs as p, jsx as d } from "react/jsx-runtime";
2
+ import { R as l, T as c, P as _, C as m } from "../../index-4baea9b5.js";
3
+ import { c as A } from "../../clsx-0c6e471a.js";
4
+ import "react";
5
+ import "../../index-c0faa594.js";
6
+ import "react-dom";
7
+ import "../../index-e3ee9457.js";
8
+ import "../../Combination-54a77a7a.js";
9
+ import "../../floating-ui.react-dom-5ec29bd6.js";
10
+ import "../../index-655864a7.js";
11
+ const F = "_slideDownAndFade_1vzkq_1", w = "_slideLeftAndFade_1vzkq_1", f = "_slideUpAndFade_1vzkq_1", g = "_slideRightAndFade_1vzkq_1", h = {
5
12
  "rp-dropdown-content": "_rp-dropdown-content_1vzkq_1",
6
- slideDownAndFade: w,
7
- slideLeftAndFade: m,
13
+ slideDownAndFade: F,
14
+ slideLeftAndFade: w,
8
15
  slideUpAndFade: f,
9
16
  slideRightAndFade: g,
10
17
  "rp-dropdown-arrow": "_rp-dropdown-arrow_1vzkq_30"
11
- }, z = (e) => {
12
- const { triggerComponent: n, children: o, container: s, className: r, open: t, onOpenChange: a, ...i } = e;
13
- return /* @__PURE__ */ l(p, { modal: !1, open: t, onOpenChange: a, children: [
18
+ }, P = (e) => {
19
+ const { triggerComponent: n, children: o, container: r, className: t, open: s, onOpenChange: i, ...a } = e;
20
+ return /* @__PURE__ */ p(l, { modal: !1, open: s, onOpenChange: i, children: [
14
21
  /* @__PURE__ */ d(c, { asChild: !0, children: n }),
15
- /* @__PURE__ */ d(_, { container: s, children: /* @__PURE__ */ d(
16
- A,
22
+ /* @__PURE__ */ d(_, { container: r, children: /* @__PURE__ */ d(
23
+ m,
17
24
  {
18
25
  sideOffset: 8,
19
26
  align: "end",
20
- ...i,
21
- className: F(h["rp-dropdown-content"], r),
27
+ ...a,
28
+ className: A(h["rp-dropdown-content"], t),
22
29
  children: o
23
30
  }
24
31
  ) })
25
32
  ] });
26
33
  };
27
34
  export {
28
- z as UIDropDown
35
+ P as UIDropDown
29
36
  };
@@ -1,26 +1,27 @@
1
- import { jsxs as a, jsx as n } from "react/jsx-runtime";
1
+ import { jsxs as a, jsx as i } from "react/jsx-runtime";
2
2
  import { c as e } from "../../clsx-0c6e471a.js";
3
3
  import { withRef as u } from "../../utils/withRef.js";
4
- import '../../assets/Input.css';const r = {
4
+ import "react";
5
+ const r = {
5
6
  "rp-input": "_rp-input_3rj4v_1",
6
7
  "rp-input-wrapper": "_rp-input-wrapper_3rj4v_22",
7
8
  "rp-input-icon": "_rp-input-icon_3rj4v_26"
8
- }, d = u((i, t) => {
9
- const { className: s, icon: p, children: c, ...o } = i;
9
+ }, h = u((n, t) => {
10
+ const { className: s, icon: p, children: o, ...c } = n;
10
11
  return /* @__PURE__ */ a("div", { className: r["rp-input-wrapper"], children: [
11
- /* @__PURE__ */ n(
12
+ /* @__PURE__ */ i(
12
13
  "input",
13
14
  {
14
- ...o,
15
+ ...c,
15
16
  "data-icon": !!p,
16
17
  ref: t,
17
18
  className: e(s, r["rp-input"], "ignore-hover")
18
19
  }
19
20
  ),
20
- p && /* @__PURE__ */ n("span", { className: r["rp-input-icon"], children: p }),
21
- c
21
+ p && /* @__PURE__ */ i("span", { className: r["rp-input-icon"], children: p }),
22
+ o
22
23
  ] });
23
24
  });
24
25
  export {
25
- d as UIInput
26
+ h as UIInput
26
27
  };
@@ -1,7 +1,47 @@
1
- import "react/jsx-runtime";
2
- import { o as i } from "../../ToolbarLayout.module-c588d36b.js";
3
- import "../../clsx-0c6e471a.js";
4
- import "../../contexts/LocalizationContext.js";
1
+ import { jsx as a, jsxs as t } from "react/jsx-runtime";
2
+ import { c as o } from "../../clsx-0c6e471a.js";
3
+ import { usePrintContext as p } from "../../contexts/PrintContext.js";
4
+ import { useLocalizationContext as d } from "../../contexts/LocalizationContext.js";
5
+ import "react";
6
+ import "../../utils/hooks/usePrint.js";
7
+ import "../../contexts/RPDocumentContext.js";
8
+ import "../../utils/hooks/useLoadPdf.js";
9
+ import "pdfjs-dist";
10
+ import "../../utils/types.js";
11
+ import "../../th_TH-d627cd51.js";
12
+ import "../../utils/getThumbnailViewport.js";
13
+ import "../../contexts/ConfigContext.js";
14
+ import "../../contexts/DocumentPasswordContext.js";
15
+ import "../../utils/appConsole.js";
16
+ import "../../utils/hooks/usePdfProperties.js";
17
+ import "../../utils/convertPdfDate.js";
18
+ import "../../utils/formatFileSize.js";
19
+ import "../../utils/hooks/useLocalization.js";
20
+ const s = "_loading_wazy2_1", i = {
21
+ "rp-loading-overlay": "_rp-loading-overlay_wazy2_1",
22
+ "rp-loading-modal": "_rp-loading-modal_wazy2_14",
23
+ "rp-loading-title": "_rp-loading-title_wazy2_27",
24
+ "rp-loading-progress-bar": "_rp-loading-progress-bar_wazy2_35",
25
+ "rp-loading-progress": "_rp-loading-progress_wazy2_35",
26
+ "rp-loading-cancel-button": "_rp-loading-cancel-button_wazy2_55",
27
+ loading: s
28
+ }, I = ({ percentage: n }) => {
29
+ const { cancel: l } = p(), { localeMessages: r } = d();
30
+ return n < 1 ? null : /* @__PURE__ */ a("div", { className: o(i["rp-loading-overlay"]), children: /* @__PURE__ */ t("div", { className: o(i["rp-loading-modal"]), children: [
31
+ /* @__PURE__ */ t("div", { className: o(i["rp-loading-title"]), children: [
32
+ r == null ? void 0 : r.printLoadingMessage,
33
+ "..."
34
+ ] }),
35
+ /* @__PURE__ */ a("div", { className: o(i["rp-loading-progress-bar"]), children: /* @__PURE__ */ a(
36
+ "div",
37
+ {
38
+ className: o(i["rp-loading-progress"]),
39
+ style: { width: `${n}%` }
40
+ }
41
+ ) }),
42
+ /* @__PURE__ */ a("button", { className: o(i["rp-loading-cancel-button"]), onClick: l, children: r == null ? void 0 : r.printCancelLabel })
43
+ ] }) });
44
+ };
5
45
  export {
6
- i as default
46
+ I as default
7
47
  };
@@ -1,9 +1,12 @@
1
- import { jsx as a, jsxs as t } from "react/jsx-runtime";
1
+ import { jsx as p, jsxs as t } from "react/jsx-runtime";
2
2
  import { useState as u } from "react";
3
3
  import { c as o } from "../../clsx-0c6e471a.js";
4
4
  import { useLocalizationContext as c } from "../../contexts/LocalizationContext.js";
5
5
  import { useDocumentPasswordContext as _ } from "../../contexts/DocumentPasswordContext.js";
6
- import '../../assets/PasswordModal.css';const r = {
6
+ import "../../utils/appConsole.js";
7
+ import "../../utils/hooks/useLocalization.js";
8
+ import "../../th_TH-d627cd51.js";
9
+ const r = {
7
10
  "rp-password-overlay": "_rp-password-overlay_18s56_1",
8
11
  "rp-password-modal": "_rp-password-modal_18s56_13",
9
12
  "rp-password-title": "_rp-password-title_18s56_27",
@@ -13,22 +16,22 @@ import '../../assets/PasswordModal.css';const r = {
13
16
  "rp-password-input-invalid": "_rp-password-input-invalid_18s56_62",
14
17
  "rp-password-message-invalid": "_rp-password-message-invalid_18s56_66",
15
18
  "rp-password-submit-button": "_rp-password-submit-button_18s56_72"
16
- }, P = () => {
17
- const [p, e] = u(""), { localeMessages: s } = c(), { setPassword: m, invalidPassword: i } = _(), w = (d) => {
18
- e(d.target.value);
19
+ }, y = () => {
20
+ const [a, m] = u(""), { localeMessages: s } = c(), { setPassword: e, invalidPassword: i } = _(), w = (d) => {
21
+ m(d.target.value);
19
22
  }, n = (d) => {
20
- d.preventDefault(), p && p.trim() && m(p);
21
- }, l = !p.trim();
22
- return /* @__PURE__ */ a("div", { className: o(r["rp-password-overlay"]), children: /* @__PURE__ */ t("div", { className: o(r["rp-password-modal"]), children: [
23
- /* @__PURE__ */ a("div", { className: o(r["rp-password-title"]), children: s == null ? void 0 : s.passwordModalTitle }),
24
- /* @__PURE__ */ a("div", { className: o(r["rp-password-content"]), children: s == null ? void 0 : s.passwordModalMessage }),
23
+ d.preventDefault(), a && a.trim() && e(a);
24
+ }, l = !a.trim();
25
+ return /* @__PURE__ */ p("div", { className: o(r["rp-password-overlay"]), children: /* @__PURE__ */ t("div", { className: o(r["rp-password-modal"]), children: [
26
+ /* @__PURE__ */ p("div", { className: o(r["rp-password-title"]), children: s == null ? void 0 : s.passwordModalTitle }),
27
+ /* @__PURE__ */ p("div", { className: o(r["rp-password-content"]), children: s == null ? void 0 : s.passwordModalMessage }),
25
28
  /* @__PURE__ */ t("form", { onSubmit: n, children: [
26
29
  /* @__PURE__ */ t("div", { className: o(r["rp-password-form"]), children: [
27
- /* @__PURE__ */ a(
30
+ /* @__PURE__ */ p(
28
31
  "input",
29
32
  {
30
33
  type: "password",
31
- value: p,
34
+ value: a,
32
35
  onChange: w,
33
36
  className: o(
34
37
  r["rp-password-input"],
@@ -38,9 +41,9 @@ import '../../assets/PasswordModal.css';const r = {
38
41
  autoComplete: "off"
39
42
  }
40
43
  ),
41
- /* @__PURE__ */ a("div", { className: o(r["rp-password-message-invalid"]), children: i && /* @__PURE__ */ a("span", { children: s == null ? void 0 : s.passwordError }) })
44
+ /* @__PURE__ */ p("div", { className: o(r["rp-password-message-invalid"]), children: i && /* @__PURE__ */ p("span", { children: s == null ? void 0 : s.passwordError }) })
42
45
  ] }),
43
- /* @__PURE__ */ a(
46
+ /* @__PURE__ */ p(
44
47
  "button",
45
48
  {
46
49
  type: "submit",
@@ -54,5 +57,5 @@ import '../../assets/PasswordModal.css';const r = {
54
57
  ] }) });
55
58
  };
56
59
  export {
57
- P as default
60
+ y as default
58
61
  };