@react-pdf-kit/viewer 2.8.0-beta.6 → 2.8.0-beta.8

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 (172) hide show
  1. package/README.md +44 -30
  2. package/dist/{AnnotationLayer-CAIvKf_O.js → AnnotationLayer-CyOYh0Tw.js} +2 -2
  3. package/dist/CanvasLayer-CJqCJ30J.js +111 -0
  4. package/dist/{LoadingIndicator-DiWoWs4Y.js → LoadingIndicator-B_Jsf8No.js} +7 -7
  5. package/dist/MenuItem-D-GflAAo.js +31 -0
  6. package/dist/PaginationContext-DIzsZhFd.js +194 -0
  7. package/dist/{PasswordModal-CB9Rd2zJ.js → PasswordModal-S0leMhEd.js} +11 -11
  8. package/dist/RPLayout.module-BH5r8dDc.js +14 -0
  9. package/dist/RPPages-BQw330_L.js +655 -0
  10. package/dist/{RPTooltip-ZZoFqP7C.js → RPTooltip-COLVx-C_.js} +123 -91
  11. package/dist/SearchTool.module-DY8Ucfb_.js +17 -0
  12. package/dist/{SkipLink-CdcjClGB.js → SkipLink-Dj83gZdk.js} +3 -3
  13. package/dist/{TextLayer-DWGFN9SF.js → TextLayer-D-V9kogG.js} +5 -5
  14. package/dist/{Thumbnail-CzclS3h_.js → Thumbnail-C6zkvwcs.js} +6 -6
  15. package/dist/{Thumbnails-DnAsrttK.js → Thumbnails-DKG6I7pb.js} +2 -2
  16. package/dist/assets/AnnotationLayer.css +1 -1
  17. package/dist/assets/CanvasLayer.css +1 -0
  18. package/dist/assets/LoadingIndicator.css +1 -1
  19. package/dist/assets/MenuItem.css +1 -1
  20. package/dist/assets/PasswordModal.css +1 -1
  21. package/dist/assets/RPLayout.css +1 -1
  22. package/dist/assets/RPPages.css +1 -1
  23. package/dist/assets/SearchTool.css +1 -1
  24. package/dist/assets/SkipLink.css +1 -1
  25. package/dist/assets/TextLayer.css +1 -1
  26. package/dist/assets/Thumbnail.css +1 -1
  27. package/dist/assets/style.js +1 -1
  28. package/dist/components/RPController.js +39 -39
  29. package/dist/components/RPPages.js +1 -1
  30. package/dist/components/RPProvider.js +1 -1
  31. package/dist/components/layout/LayoutContainer.js +6 -6
  32. package/dist/components/layout/LayoutWrapper.js +5 -5
  33. package/dist/components/layout/RPDefaultLayout.js +2 -2
  34. package/dist/components/layout/RPLayout.js +2 -2
  35. package/dist/components/layout/SkipLink.js +1 -1
  36. package/dist/components/layout/sidebar/RPSidebar.js +2 -2
  37. package/dist/components/layout/sidebar/Thumbnail.js +1 -1
  38. package/dist/components/layout/sidebar/Thumbnails.js +1 -1
  39. package/dist/components/layout/toolbar/DarkModeTool.js +1 -1
  40. package/dist/components/layout/toolbar/DocumentProperties.js +6 -6
  41. package/dist/components/layout/toolbar/FileDownloadTool.js +6 -6
  42. package/dist/components/layout/toolbar/FileUploadTool.js +6 -6
  43. package/dist/components/layout/toolbar/FullScreenTool.js +9 -8
  44. package/dist/components/layout/toolbar/MenuItem.js +1 -1
  45. package/dist/components/layout/toolbar/MostPageTool.js +23 -29
  46. package/dist/components/layout/toolbar/OtherTool.js +1 -1
  47. package/dist/components/layout/toolbar/Paginate.js +2 -2
  48. package/dist/components/layout/toolbar/PrintTool.js +6 -6
  49. package/dist/components/layout/toolbar/RPMenuItem.js +2 -2
  50. package/dist/components/layout/toolbar/RPMoreOptions.js +1 -1
  51. package/dist/components/layout/toolbar/RPToolbar.js +1 -1
  52. package/dist/components/layout/toolbar/RotateTool.js +10 -10
  53. package/dist/components/layout/toolbar/ScrollModeTool.js +17 -17
  54. package/dist/components/layout/toolbar/SearchCloseButton.js +2 -2
  55. package/dist/components/layout/toolbar/SearchResultNavigator.js +2 -2
  56. package/dist/components/layout/toolbar/SearchTool.js +133 -121
  57. package/dist/components/layout/toolbar/SelectionModeTool.js +10 -10
  58. package/dist/components/layout/toolbar/ThumbnailTool.js +1 -1
  59. package/dist/components/layout/toolbar/ToolbarCustom.js +2 -2
  60. package/dist/components/layout/toolbar/ToolbarDefault.js +2 -2
  61. package/dist/components/layout/toolbar/ViewModeTool.js +16 -16
  62. package/dist/components/layout/toolbar/ZoomTool.js +82 -80
  63. package/dist/components/layout/toolbar/tools/DocumentPropertiesTool.js +1 -1
  64. package/dist/components/layout/toolbar/tools/DualPageTool.js +1 -1
  65. package/dist/components/layout/toolbar/tools/DualPageWithCoverTool.js +1 -1
  66. package/dist/components/layout/toolbar/tools/FileDownloadTool.js +1 -1
  67. package/dist/components/layout/toolbar/tools/FileUploadTool.js +1 -1
  68. package/dist/components/layout/toolbar/tools/FirstPageTool.js +1 -1
  69. package/dist/components/layout/toolbar/tools/FullScreenTool.js +1 -1
  70. package/dist/components/layout/toolbar/tools/HorizontalScrollingTool.js +3 -3
  71. package/dist/components/layout/toolbar/tools/InputPageTool.js +2 -2
  72. package/dist/components/layout/toolbar/tools/LastPageTool.js +1 -1
  73. package/dist/components/layout/toolbar/tools/NextPageTool.js +2 -2
  74. package/dist/components/layout/toolbar/tools/PageScrollingTool.js +1 -1
  75. package/dist/components/layout/toolbar/tools/PreviousPageTool.js +2 -2
  76. package/dist/components/layout/toolbar/tools/PrintTool.js +1 -1
  77. package/dist/components/layout/toolbar/tools/RotateClockwiseTool.js +1 -1
  78. package/dist/components/layout/toolbar/tools/RotateCounterclockwiseTool.js +1 -1
  79. package/dist/components/layout/toolbar/tools/SelectionModeSwitcherTool.js +1 -1
  80. package/dist/components/layout/toolbar/tools/SinglePageTool.js +1 -1
  81. package/dist/components/layout/toolbar/tools/ThemeSwitcherTool.js +1 -1
  82. package/dist/components/layout/toolbar/tools/ThumbnailTool.js +1 -1
  83. package/dist/components/layout/toolbar/tools/VerticalScrollingTool.js +1 -1
  84. package/dist/components/layout/toolbar/tools/ZoomInTool.js +25 -23
  85. package/dist/components/layout/toolbar/tools/ZoomLevelDisplay.js +1 -1
  86. package/dist/components/layout/toolbar/tools/ZoomLevelTool.js +2 -2
  87. package/dist/components/layout/toolbar/tools/ZoomOutTool.js +25 -23
  88. package/dist/components/layout/toolbar/tools/more-options/DocumentProperties.js +2 -2
  89. package/dist/components/layout/toolbar/tools/more-options/FileDownloadTool.js +2 -2
  90. package/dist/components/layout/toolbar/tools/more-options/FileUploadTool.js +2 -2
  91. package/dist/components/layout/toolbar/tools/more-options/FullScreenTool.js +2 -2
  92. package/dist/components/layout/toolbar/tools/more-options/MostPageTool.js +3 -3
  93. package/dist/components/layout/toolbar/tools/more-options/PrintTool.js +2 -2
  94. package/dist/components/layout/toolbar/tools/more-options/RotateTool.js +2 -2
  95. package/dist/components/layout/toolbar/tools/more-options/ScrollModeTool.js +7 -7
  96. package/dist/components/layout/toolbar/tools/more-options/SelectionModeTool.js +2 -2
  97. package/dist/components/layout/toolbar/tools/more-options/ViewModeTool.js +2 -2
  98. package/dist/components/page/AnnotationLayer.js +1 -1
  99. package/dist/components/page/CanvasLayer.js +2 -48
  100. package/dist/components/page/DualPage.js +2 -2
  101. package/dist/components/page/DualPageWithCover.js +2 -2
  102. package/dist/components/page/RPPage.js +94 -2
  103. package/dist/components/page/SinglePage.js +2 -2
  104. package/dist/components/page/TextHighlightLayer.js +1 -1
  105. package/dist/components/page/TextLayer.js +1 -1
  106. package/dist/components/ui/LoadingIndicator.js +1 -1
  107. package/dist/components/ui/PasswordModal.js +1 -1
  108. package/dist/components/ui/RPTooltip.js +1 -1
  109. package/dist/contexts/DimensionPagesContext.js +38 -22
  110. package/dist/contexts/ElementPageContext.js +46 -39
  111. package/dist/contexts/ElementThumbnailContext.js +1 -1
  112. package/dist/contexts/PaginationContext.js +1 -1
  113. package/dist/contexts/RenderQueueProvider.js +24 -18
  114. package/dist/contexts/RenderedPagesCache.js +32 -13
  115. package/dist/contexts/VirtualScrollContext.js +10 -13
  116. package/dist/contexts/ZoomContext.js +119 -61
  117. package/dist/{de_DE-DwUvXUWH.js → de_DE-x4Z-jQrz.js} +30 -0
  118. package/dist/{main-CKr9unOk.js → main-7sMXtgRg.js} +2 -2
  119. package/dist/main.js +4 -4
  120. package/dist/style-CJtyyrJx.js +5 -0
  121. package/dist/types/components/page/CanvasLayer.d.ts +4 -1
  122. package/dist/types/components/ui/RPTooltip.d.ts +3 -2
  123. package/dist/types/contexts/RenderQueueProvider.d.ts +2 -0
  124. package/dist/types/contexts/RenderedPagesCache.d.ts +3 -0
  125. package/dist/types/contexts/VirtualScrollContext.d.ts +0 -3
  126. package/dist/types/locales/de_DE.json.d.ts +5 -0
  127. package/dist/types/locales/en_US.json.d.ts +5 -0
  128. package/dist/types/locales/it_IT.json.d.ts +5 -0
  129. package/dist/types/locales/pt_PT.json.d.ts +5 -0
  130. package/dist/types/locales/th_TH.json.d.ts +5 -0
  131. package/dist/types/locales/zh_CN.json.d.ts +5 -0
  132. package/dist/types/utils/Queue.d.ts +1 -0
  133. package/dist/types/utils/const.d.ts +3 -0
  134. package/dist/types/utils/constants.d.ts +9 -0
  135. package/dist/types/utils/documentLayout.d.ts +60 -0
  136. package/dist/types/utils/hooks/usePinch.d.ts +14 -1
  137. package/dist/types/utils/hooks/usePresentPage.d.ts +2 -2
  138. package/dist/types/utils/hooks/useZoomOrigin.d.ts +4 -0
  139. package/dist/types/utils/types.d.ts +21 -2
  140. package/dist/types/utils/zoom.d.ts +2 -0
  141. package/dist/utils/Queue.js +5 -0
  142. package/dist/utils/const.js +2 -2
  143. package/dist/utils/constants.js +2 -2
  144. package/dist/utils/documentLayout.js +141 -0
  145. package/dist/utils/hooks/useLicense.js +1 -1
  146. package/dist/utils/hooks/useLoadPdf.js +73 -63
  147. package/dist/utils/hooks/useLocalization.js +1 -1
  148. package/dist/utils/hooks/usePaginate.js +1 -1
  149. package/dist/utils/hooks/usePinch.js +109 -56
  150. package/dist/utils/hooks/usePresentPage.js +33 -57
  151. package/dist/utils/hooks/useScrollToPage.js +1 -1
  152. package/dist/utils/hooks/useSearch.js +66 -67
  153. package/dist/utils/hooks/useZoomOrigin.js +37 -0
  154. package/dist/utils/renderPage.js +21 -14
  155. package/dist/utils/types.js +3 -3
  156. package/dist/utils/zoom.js +8 -2
  157. package/package.json +1 -1
  158. package/dist/MenuItem-BJDWfzAw.js +0 -15
  159. package/dist/PaginationContext-Cwf8sCpK.js +0 -242
  160. package/dist/RPLayout.module-Vc3h4xxS.js +0 -14
  161. package/dist/RPPage-C_r8aeTc.js +0 -91
  162. package/dist/RPPages-CmXHTAqF.js +0 -1007
  163. package/dist/SearchTool.module-DUkVXfOn.js +0 -16
  164. package/dist/assets/RPPage.css +0 -1
  165. package/dist/contexts/VirtualGridContext.js +0 -18
  166. package/dist/style-C8T5x1fE.js +0 -5
  167. package/dist/types/contexts/VirtualGridContext.d.ts +0 -9
  168. package/dist/types/utils/calculatePage.d.ts +0 -12
  169. package/dist/types/utils/hooks/useVirtualReactWindow.d.ts +0 -17
  170. package/dist/utils/calculatePage.js +0 -30
  171. package/dist/utils/hooks/useVirtualReactWindow.js +0 -86
  172. /package/dist/{TextHighlightLayer-BSVgBxR3.js → TextHighlightLayer-3vIZbRyL.js} +0 -0
@@ -1,8 +1,8 @@
1
1
  import { useLocalizationContext as e } from "../../../../../contexts/LocalizationContext.js";
2
2
  import { useFileDownload as t } from "../../../../../utils/hooks/useFileDownload.js";
3
3
  import { useViewportContext as n } from "../../../../../contexts/ViewportContext.js";
4
- import { t as r } from "../../../../../RPTooltip-ZZoFqP7C.js";
5
- import { t as i } from "../../../../../MenuItem-BJDWfzAw.js";
4
+ import { t as r } from "../../../../../RPTooltip-COLVx-C_.js";
5
+ import { t as i } from "../../../../../MenuItem-D-GflAAo.js";
6
6
  import { FileDownloadDefaultIcon as a } from "../../../../icons/FileDownloadDefaultIcon.js";
7
7
  import { jsx as o, jsxs as s } from "react/jsx-runtime";
8
8
  //#region lib/components/layout/toolbar/tools/more-options/FileDownloadTool.tsx
@@ -1,9 +1,9 @@
1
1
  import { useLocalizationContext as e } from "../../../../../contexts/LocalizationContext.js";
2
2
  import { useOpenFileContext as t } from "../../../../../contexts/FileInputContext.js";
3
3
  import { useViewportContext as n } from "../../../../../contexts/ViewportContext.js";
4
- import { t as r } from "../../../../../RPTooltip-ZZoFqP7C.js";
4
+ import { t as r } from "../../../../../RPTooltip-COLVx-C_.js";
5
5
  import { FileUploadDefaultIcon as i } from "../../../../icons/FileUploadDefaultIcon.js";
6
- import { t as a } from "../../../../../MenuItem-BJDWfzAw.js";
6
+ import { t as a } from "../../../../../MenuItem-D-GflAAo.js";
7
7
  import { jsx as o, jsxs as s } from "react/jsx-runtime";
8
8
  //#region lib/components/layout/toolbar/tools/more-options/FileUploadTool.tsx
9
9
  var c = (c) => {
@@ -1,8 +1,8 @@
1
1
  import { useFullScreenContext as e } from "../../../../../contexts/FullScreenContext.js";
2
2
  import { useLocalizationContext as t } from "../../../../../contexts/LocalizationContext.js";
3
3
  import { useViewportContext as n } from "../../../../../contexts/ViewportContext.js";
4
- import { t as r } from "../../../../../RPTooltip-ZZoFqP7C.js";
5
- import { t as i } from "../../../../../MenuItem-BJDWfzAw.js";
4
+ import { t as r } from "../../../../../RPTooltip-COLVx-C_.js";
5
+ import { t as i } from "../../../../../MenuItem-D-GflAAo.js";
6
6
  import { FullScreenIcon as a } from "../../../../icons/FullScreenIcon.js";
7
7
  import { jsx as o, jsxs as s } from "react/jsx-runtime";
8
8
  //#region lib/components/layout/toolbar/tools/more-options/FullScreenTool.tsx
@@ -1,8 +1,8 @@
1
- import { r as e } from "../../../../../PaginationContext-Cwf8sCpK.js";
1
+ import { r as e } from "../../../../../PaginationContext-DIzsZhFd.js";
2
2
  import { useLocalizationContext as t } from "../../../../../contexts/LocalizationContext.js";
3
- import { t as n } from "../../../../../RPTooltip-ZZoFqP7C.js";
3
+ import { t as n } from "../../../../../RPTooltip-COLVx-C_.js";
4
4
  import { n as r } from "../../../../../dist-CKteKPPA.js";
5
- import { t as i } from "../../../../../MenuItem-BJDWfzAw.js";
5
+ import { t as i } from "../../../../../MenuItem-D-GflAAo.js";
6
6
  import { t as a } from "../../../../../MenuSeparator-D1H5l8Ej.js";
7
7
  import { GoToDownIcon as o } from "../../../../icons/GoToDownIcon.js";
8
8
  import { t as s } from "../../../../../MostPageTool.module-BRVv-sGz.js";
@@ -1,8 +1,8 @@
1
1
  import { useLocalizationContext as e } from "../../../../../contexts/LocalizationContext.js";
2
2
  import { usePrintContext as t } from "../../../../../contexts/PrintContext.js";
3
3
  import { useViewportContext as n } from "../../../../../contexts/ViewportContext.js";
4
- import { t as r } from "../../../../../RPTooltip-ZZoFqP7C.js";
5
- import { t as i } from "../../../../../MenuItem-BJDWfzAw.js";
4
+ import { t as r } from "../../../../../RPTooltip-COLVx-C_.js";
5
+ import { t as i } from "../../../../../MenuItem-D-GflAAo.js";
6
6
  import { PrintDefaultTool as a } from "../../../../icons/PrintDefaultIcon.js";
7
7
  import { jsx as o, jsxs as s } from "react/jsx-runtime";
8
8
  //#region lib/components/layout/toolbar/tools/more-options/PrintTool.tsx
@@ -1,7 +1,7 @@
1
1
  import { useLocalizationContext as e } from "../../../../../contexts/LocalizationContext.js";
2
- import { t } from "../../../../../RPTooltip-ZZoFqP7C.js";
2
+ import { t } from "../../../../../RPTooltip-COLVx-C_.js";
3
3
  import { n } from "../../../../../dist-CKteKPPA.js";
4
- import { t as r } from "../../../../../MenuItem-BJDWfzAw.js";
4
+ import { t as r } from "../../../../../MenuItem-D-GflAAo.js";
5
5
  import { t as i } from "../../../../../MenuSeparator-D1H5l8Ej.js";
6
6
  import { ClockwiseIcon as a } from "../../../../icons/ClockwiseIcon.js";
7
7
  import { t as o } from "../../../../../RotateTool.module-DH5yWbvM.js";
@@ -2,9 +2,9 @@ import { ScrollMode as e, ViewMode as t } from "../../../../../utils/types.js";
2
2
  import { useScrollModeContext as n } from "../../../../../contexts/ScrollModeContext.js";
3
3
  import { useViewModeContext as r } from "../../../../../contexts/ViewModeContext.js";
4
4
  import { useLocalizationContext as i } from "../../../../../contexts/LocalizationContext.js";
5
- import { t as a } from "../../../../../RPTooltip-ZZoFqP7C.js";
5
+ import { t as a } from "../../../../../RPTooltip-COLVx-C_.js";
6
6
  import { n as o } from "../../../../../dist-CKteKPPA.js";
7
- import { t as s } from "../../../../../MenuItem-BJDWfzAw.js";
7
+ import { t as s } from "../../../../../MenuItem-D-GflAAo.js";
8
8
  import { CheckIcon as c } from "../../../../icons/CheckIcon.js";
9
9
  import { PageScrollingIcon as l } from "../../../../icons/PageScrollingIcon.js";
10
10
  import { VerticalScrollingIcon as u } from "../../../../icons/VerticalScrollingIcon.js";
@@ -13,7 +13,7 @@ import { useMemo as f } from "react";
13
13
  import { Fragment as p, jsx as m, jsxs as h } from "react/jsx-runtime";
14
14
  //#region lib/components/layout/toolbar/tools/more-options/ScrollModeTool.tsx
15
15
  var g = (g) => {
16
- let { icons: _, isToolVisible: v = !0 } = g, { pageScrollIcon: y, verticalScrollIcon: b, horizontalScrollIcon: x } = _ ?? {}, { viewMode: S } = r(), { scrollMode: C, setScrollMode: w } = n(), { localeMessages: T } = i(), E = f(() => S === t.DUAL_PAGE || S === t.DUAL_PAGE_WITH_COVER, [S]);
16
+ let { icons: _, isToolVisible: v = !0 } = g, { pageScrollIcon: y, verticalScrollIcon: b, horizontalScrollIcon: x } = _ ?? {}, { viewMode: S } = r(), { scrollMode: C, setScrollMode: w } = n(), { localeMessages: T } = i(), E = T?.horizontalScrollingLabel || T?.horizontalLabel, D = T?.horizontalScrollingTooltip || T?.horizontalTooltip, O = f(() => S === t.DUAL_PAGE || S === t.DUAL_PAGE_WITH_COVER, [S]);
17
17
  return v ? /* @__PURE__ */ m(p, { children: /* @__PURE__ */ h(o, { children: [
18
18
  /* @__PURE__ */ m(s, {
19
19
  onClick: () => w(e.PAGE_SCROLLING),
@@ -56,19 +56,19 @@ var g = (g) => {
56
56
  })
57
57
  }),
58
58
  /* @__PURE__ */ m(s, {
59
- disabled: E,
59
+ disabled: O,
60
60
  onClick: () => w(e.HORIZONTAL_SCROLLING),
61
- "aria-label": T?.horizontalTooltip,
61
+ "aria-label": D,
62
62
  "aria-checked": C === e.HORIZONTAL_SCROLLING,
63
63
  children: /* @__PURE__ */ h(a, {
64
64
  className: "rp-menu-item",
65
- content: T?.horizontalTooltip,
65
+ content: D,
66
66
  children: [
67
67
  /* @__PURE__ */ m("div", {
68
68
  className: "rp-menu-item-left",
69
69
  children: x || /* @__PURE__ */ m(d, { "aria-hidden": "true" })
70
70
  }),
71
- T?.horizontalLabel,
71
+ E,
72
72
  C === e.HORIZONTAL_SCROLLING ? /* @__PURE__ */ m(c, {
73
73
  className: "rp-menu-item-right",
74
74
  "aria-hidden": "true"
@@ -1,9 +1,9 @@
1
1
  import { SelectionMode as e } from "../../../../../utils/types.js";
2
2
  import { useSelectionModeContext as t } from "../../../../../contexts/SelectionModeContext.js";
3
3
  import { useLocalizationContext as n } from "../../../../../contexts/LocalizationContext.js";
4
- import { t as r } from "../../../../../RPTooltip-ZZoFqP7C.js";
4
+ import { t as r } from "../../../../../RPTooltip-COLVx-C_.js";
5
5
  import { n as i } from "../../../../../dist-CKteKPPA.js";
6
- import { t as a } from "../../../../../MenuItem-BJDWfzAw.js";
6
+ import { t as a } from "../../../../../MenuItem-D-GflAAo.js";
7
7
  import { t as o } from "../../../../../MenuSeparator-D1H5l8Ej.js";
8
8
  import { CheckIcon as s } from "../../../../icons/CheckIcon.js";
9
9
  import { TextSelectionDefaultIcon as c } from "../../../../icons/TextSelectionDefaultIcon.js";
@@ -2,9 +2,9 @@ import { ScrollMode as e, ViewMode as t } from "../../../../../utils/types.js";
2
2
  import { useScrollModeContext as n } from "../../../../../contexts/ScrollModeContext.js";
3
3
  import { useViewModeContext as r } from "../../../../../contexts/ViewModeContext.js";
4
4
  import { useLocalizationContext as i } from "../../../../../contexts/LocalizationContext.js";
5
- import { t as a } from "../../../../../RPTooltip-ZZoFqP7C.js";
5
+ import { t as a } from "../../../../../RPTooltip-COLVx-C_.js";
6
6
  import { n as o } from "../../../../../dist-CKteKPPA.js";
7
- import { t as s } from "../../../../../MenuItem-BJDWfzAw.js";
7
+ import { t as s } from "../../../../../MenuItem-D-GflAAo.js";
8
8
  import { t as c } from "../../../../../MenuSeparator-D1H5l8Ej.js";
9
9
  import { DualPageIcon as l } from "../../../../icons/DualPageIcon.js";
10
10
  import { DualPageWithCoverIcon as u } from "../../../../icons/DualPageWithCoverIcon.js";
@@ -1,2 +1,2 @@
1
- import { t as e } from "../../AnnotationLayer-CAIvKf_O.js";
1
+ import { t as e } from "../../AnnotationLayer-CyOYh0Tw.js";
2
2
  export { e as AnnotationLayer };
@@ -1,48 +1,2 @@
1
- import { useDocumentContext as e } from "../../contexts/RPDocumentContext.js";
2
- import { useInitialStateContext as t } from "../../contexts/InitialStateContext.js";
3
- import { useZoomContext as n } from "../../contexts/ZoomContext.js";
4
- import { usePagesRotateContext as r } from "../../contexts/PagesRotateContext.js";
5
- import { useRenderQueue as i } from "../../contexts/RenderQueueProvider.js";
6
- import { useEffect as a, useRef as o } from "react";
7
- import { jsx as s } from "react/jsx-runtime";
8
- //#region lib/components/page/CanvasLayer.tsx
9
- var c = (c) => {
10
- let { pageNumber: l, onLoaded: u, onLoading: d } = c, f = o(null), { pages: p } = e(), { pageRotate: m } = r(), h = o(), { currentZoom: g } = n(), { interactiveForm: _ } = t(), v = i(), y = o(`page-${l}`);
11
- return a(() => {
12
- if (!p || g === 0) return;
13
- let e = p.get(l);
14
- if (f.current && e) {
15
- let t = f.current;
16
- t.hidden = !0;
17
- let n = h.current;
18
- n && n.cancel(), d && d(), v.enqueue(y.current, {
19
- page: e.page,
20
- canvasElem: t,
21
- options: {
22
- scale: g,
23
- rotate: m[l],
24
- renderForms: !0,
25
- interactiveForm: _
26
- },
27
- onLoaded: u
28
- }, 3);
29
- }
30
- return () => {
31
- v.removeQueue(y.current);
32
- };
33
- }, [
34
- p,
35
- l,
36
- m,
37
- g,
38
- d,
39
- u,
40
- v,
41
- _
42
- ]), /* @__PURE__ */ s("canvas", {
43
- "data-rp": `page-${l}-canvas`,
44
- ref: f
45
- });
46
- };
47
- //#endregion
48
- export { c as CanvasLayer };
1
+ import { t as e } from "../../CanvasLayer-CJqCJ30J.js";
2
+ export { e as CanvasLayer };
@@ -1,5 +1,5 @@
1
- import { r as e } from "../../PaginationContext-Cwf8sCpK.js";
2
- import { t } from "../../RPPage-C_r8aeTc.js";
1
+ import { r as e } from "../../PaginationContext-DIzsZhFd.js";
2
+ import { RPPage as t } from "./RPPage.js";
3
3
  import { memo as n, useMemo as r } from "react";
4
4
  import { jsx as i } from "react/jsx-runtime";
5
5
  //#region lib/components/page/DualPage.tsx
@@ -1,5 +1,5 @@
1
- import { r as e } from "../../PaginationContext-Cwf8sCpK.js";
2
- import { t } from "../../RPPage-C_r8aeTc.js";
1
+ import { r as e } from "../../PaginationContext-DIzsZhFd.js";
2
+ import { RPPage as t } from "./RPPage.js";
3
3
  import { memo as n, useMemo as r } from "react";
4
4
  import { jsx as i } from "react/jsx-runtime";
5
5
  //#region lib/components/page/DualPageWithCover.tsx
@@ -1,2 +1,94 @@
1
- import { t as e } from "../../RPPage-C_r8aeTc.js";
2
- export { e as RPPage };
1
+ import { useDocumentContext as e } from "../../contexts/RPDocumentContext.js";
2
+ import { useZoomContext as t } from "../../contexts/ZoomContext.js";
3
+ import { usePagesRotateContext as n } from "../../contexts/PagesRotateContext.js";
4
+ import { useLayerContext as r } from "../../contexts/LayerContext.js";
5
+ import { useLoaderContext as i } from "../../contexts/LoaderContext.js";
6
+ import { withRef as a } from "../../utils/withRef.js";
7
+ import { n as o, t as s } from "../../CanvasLayer-CJqCJ30J.js";
8
+ import { t as c } from "../../TextLayer-D-V9kogG.js";
9
+ import { t as l } from "../../AnnotationLayer-CyOYh0Tw.js";
10
+ import { t as u } from "../../TextHighlightLayer-3vIZbRyL.js";
11
+ import { CustomElement as d } from "./CustomElement.js";
12
+ import { useCallback as f, useEffect as p, useImperativeHandle as m, useMemo as h, useRef as g, useState as _ } from "react";
13
+ import { jsx as v, jsxs as y } from "react/jsx-runtime";
14
+ //#region lib/components/page/RPPage.tsx
15
+ var b = a((a, b) => {
16
+ let { pageNumber: x, style: S, ...C } = a, { pages: w } = e(), { pageRotate: T } = n(), { textLayer: E } = r(), { currentZoom: D, targetZoom: O } = t(), { LoaderImageComponent: k } = i(), A = g(w.get(x)), [j, M] = _(!1), N = g(null), [P, F] = _({
17
+ width: 0,
18
+ height: 0
19
+ });
20
+ m(b, () => N.current);
21
+ let I = h(() => A.current ? T[x] ?? A.current.defaultRotation ?? 0 : 0, [x, T]);
22
+ p(() => {
23
+ w && (A.current = w.get(x), A.current && F(A.current.page.getViewport({
24
+ scale: 1,
25
+ rotation: I
26
+ })));
27
+ }, [
28
+ w,
29
+ x,
30
+ I
31
+ ]);
32
+ let L = h(() => ({
33
+ width: P.width * (O || D || 1),
34
+ height: P.height * (O || D || 1)
35
+ }), [
36
+ P,
37
+ O,
38
+ D
39
+ ]), R = h(() => {
40
+ switch (I) {
41
+ case 90: return `${L.width / 2}px ${L.width / 2}px`;
42
+ case -90:
43
+ case 270: return `${L.height / 2}px ${L.height / 2}px`;
44
+ default: return "center";
45
+ }
46
+ }, [I, L]), z = h(() => !D || !O ? 1 : O / D, [D, O]), B = f((e) => {
47
+ M(!e.hasRenderedBefore);
48
+ }, []), V = f(() => {
49
+ M(!1);
50
+ }, []);
51
+ return /* @__PURE__ */ v("div", {
52
+ ref: N,
53
+ id: `page-${x}`,
54
+ "data-rp": `page-${x}`,
55
+ ...C,
56
+ style: {
57
+ ...S,
58
+ "--rp-rotate": `${I}deg`,
59
+ "--rp-page-rotate-translate": `${R}`,
60
+ "--user-unit": P.userUnit || 1,
61
+ "--scale-factor": O || D,
62
+ "--rp-canvas-scale-ratio": z,
63
+ "--total-scale-factor": "calc(var(--scale-factor) * var(--user-unit))"
64
+ },
65
+ className: o["rp-page-wrapper"],
66
+ children: /* @__PURE__ */ y("div", {
67
+ style: {
68
+ width: `${L.width}px`,
69
+ height: `${L.height}px`
70
+ },
71
+ className: o["rp-page"],
72
+ children: [
73
+ /* @__PURE__ */ v(s, {
74
+ onLoading: B,
75
+ onLoaded: V,
76
+ pageNumber: x
77
+ }),
78
+ j && k && /* @__PURE__ */ v("div", {
79
+ className: o["rp-loader-wrapper"],
80
+ children: /* @__PURE__ */ v(k, {})
81
+ }),
82
+ /* @__PURE__ */ v(d, { pageNumber: x }),
83
+ E && /* @__PURE__ */ v(c, { pageNumber: x }),
84
+ /* @__PURE__ */ v(u, {
85
+ pageNumber: x,
86
+ viewport: P
87
+ }),
88
+ /* @__PURE__ */ v(l, { pageNumber: x })
89
+ ]
90
+ })
91
+ });
92
+ });
93
+ //#endregion
94
+ export { b as RPPage };
@@ -1,5 +1,5 @@
1
- import { r as e } from "../../PaginationContext-Cwf8sCpK.js";
2
- import { t } from "../../RPPage-C_r8aeTc.js";
1
+ import { r as e } from "../../PaginationContext-DIzsZhFd.js";
2
+ import { RPPage as t } from "./RPPage.js";
3
3
  import { useMemo as n } from "react";
4
4
  import { jsx as r } from "react/jsx-runtime";
5
5
  //#region lib/components/page/SinglePage.tsx
@@ -1,2 +1,2 @@
1
- import { t as e } from "../../TextHighlightLayer-BSVgBxR3.js";
1
+ import { t as e } from "../../TextHighlightLayer-3vIZbRyL.js";
2
2
  export { e as TextHighlightLayer };
@@ -1,2 +1,2 @@
1
- import { t as e } from "../../TextLayer-DWGFN9SF.js";
1
+ import { t as e } from "../../TextLayer-D-V9kogG.js";
2
2
  export { e as TextLayer };
@@ -1,2 +1,2 @@
1
- import { t as e } from "../../LoadingIndicator-DiWoWs4Y.js";
1
+ import { t as e } from "../../LoadingIndicator-B_Jsf8No.js";
2
2
  export { e as default };
@@ -1,2 +1,2 @@
1
- import { t as e } from "../../PasswordModal-CB9Rd2zJ.js";
1
+ import { t as e } from "../../PasswordModal-S0leMhEd.js";
2
2
  export { e as default };
@@ -1,2 +1,2 @@
1
- import { t as e } from "../../RPTooltip-ZZoFqP7C.js";
1
+ import { t as e } from "../../RPTooltip-COLVx-C_.js";
2
2
  export { e as default };
@@ -3,48 +3,64 @@ import { useDocumentContext as t } from "./RPDocumentContext.js";
3
3
  import "../utils/constants.js";
4
4
  import { useZoomContext as n } from "./ZoomContext.js";
5
5
  import { usePagesRotateContext as r } from "./PagesRotateContext.js";
6
- import { createContext as i, useContext as a, useEffect as o, useState as s } from "react";
7
- import { jsx as c } from "react/jsx-runtime";
6
+ import { createContext as i, useCallback as a, useContext as o, useMemo as s, useState as c } from "react";
7
+ import { jsx as l } from "react/jsx-runtime";
8
8
  //#region lib/contexts/DimensionPagesContext.tsx
9
- var l = i({
9
+ var u = i({
10
10
  widths: [],
11
11
  heights: [],
12
12
  setWidths: () => {},
13
13
  setHeights: () => {}
14
- }), u = () => {
15
- let t = a(l), { widths: n, heights: r } = t;
14
+ }), d = () => {
15
+ let t = o(u), { widths: n, heights: r } = t;
16
16
  if (n && r) {
17
17
  let t = n.every((e) => typeof e == "number"), i = r.every((e) => typeof e == "number");
18
18
  (!t || !i) && e.warn("Please use this hooks inside children component of RPProvider");
19
19
  }
20
20
  return t;
21
- }, d = ({ children: e }) => {
22
- let [i, a] = s([]), [u, d] = s([]), { pages: f } = t(), { currentZoom: p } = n(), { pageRotate: m } = r();
23
- return o(() => {
24
- if (!f) return;
21
+ }, f = ({ children: e }) => {
22
+ let [i, o] = c(null), [d, f] = c(null), { pages: p } = t(), { targetZoom: m } = n(), { pageRotate: h } = r(), g = s(() => {
23
+ if (!p || !m) return {
24
+ widths: [],
25
+ heights: []
26
+ };
25
27
  let e = [], t = [];
26
- for (let n of Array.from(f.values())) {
27
- let r = m[n.page.pageNumber], i = n.page.getViewport({
28
- scale: p,
28
+ for (let n of Array.from(p.values())) {
29
+ let r = h[n.page.pageNumber] ?? n.defaultRotation ?? 0, i = n.page.getViewport({
30
+ scale: 1,
29
31
  rotation: r,
30
32
  dontFlip: !0
31
33
  });
32
- e.push(i.width + 4), t.push(i.height + 4);
34
+ e.push(i.width * m + 4), t.push(i.height * m + 4);
33
35
  }
34
- a((t) => [...e]), d((e) => [...t]);
36
+ return {
37
+ widths: e,
38
+ heights: t
39
+ };
35
40
  }, [
36
- p,
37
41
  m,
38
- f
39
- ]), /* @__PURE__ */ c(l.Provider, {
42
+ h,
43
+ p
44
+ ]), _ = i ?? g.widths, v = d ?? g.heights, y = a((e) => {
45
+ o((t) => {
46
+ let n = t ?? g.widths;
47
+ return typeof e == "function" ? e(n) : e;
48
+ });
49
+ }, [g.widths]), b = a((e) => {
50
+ f((t) => {
51
+ let n = t ?? g.heights;
52
+ return typeof e == "function" ? e(n) : e;
53
+ });
54
+ }, [g.heights]);
55
+ return /* @__PURE__ */ l(u.Provider, {
40
56
  value: {
41
- widths: i,
42
- heights: u,
43
- setWidths: a,
44
- setHeights: d
57
+ widths: _,
58
+ heights: v,
59
+ setWidths: y,
60
+ setHeights: b
45
61
  },
46
62
  children: e
47
63
  });
48
64
  };
49
65
  //#endregion
50
- export { d as DimensionPagesProvider, u as useDimensionPagesContext };
66
+ export { f as DimensionPagesProvider, d as useDimensionPagesContext };
@@ -1,51 +1,58 @@
1
- import { LicenseType as e, ScrollMode as t } from "../utils/types.js";
2
- import { ORGANIZATION_ALLOWED_FEATURES_MESSAGE as n } from "../utils/const.js";
3
- import { useScrollModeContext as r } from "./ScrollModeContext.js";
4
- import { useViewModeContext as i } from "./ViewModeContext.js";
5
- import { useVirtualScrollContext as a } from "./VirtualScrollContext.js";
6
- import { useLayoutContainer as o } from "./LayoutContainerContext.js";
7
- import { useZoomContext as s } from "./ZoomContext.js";
8
- import { usePagesRotateContext as c } from "./PagesRotateContext.js";
9
- import { useDimensionPagesContext as l } from "./DimensionPagesContext.js";
10
- import { useSmoothScrollContext as u } from "./SmoothScrollContext.js";
11
- import { getScrollDistance as d } from "../utils/getScrollDistance.js";
1
+ import { LicenseType as e } from "../utils/types.js";
2
+ import { ORGANIZATION_ALLOWED_FEATURES_MESSAGE as t } from "../utils/const.js";
3
+ import { useScrollModeContext as n } from "./ScrollModeContext.js";
4
+ import { useViewModeContext as r } from "./ViewModeContext.js";
5
+ import { useVirtualScrollContext as i } from "./VirtualScrollContext.js";
6
+ import { useLayoutContainer as a } from "./LayoutContainerContext.js";
7
+ import { useZoomContext as o } from "./ZoomContext.js";
8
+ import { usePagesRotateContext as s } from "./PagesRotateContext.js";
9
+ import { useDimensionPagesContext as c } from "./DimensionPagesContext.js";
10
+ import { useSmoothScrollContext as l } from "./SmoothScrollContext.js";
11
+ import { buildDocumentLayout as u, getPagePlacement as d } from "../utils/documentLayout.js";
12
12
  import { useLicenseContext as f } from "./LicenseContext.js";
13
13
  import { getElementPagePosition as p } from "../utils/getElementPositionInPage.js";
14
14
  import { createContext as m, useCallback as h, useContext as g, useMemo as _, useRef as v, useState as y } from "react";
15
15
  import { jsx as b } from "react/jsx-runtime";
16
16
  //#region lib/contexts/ElementPageContext.tsx
17
17
  var x = m(void 0), S = ({ children: e }) => {
18
- let [n, f] = y({}), { widths: m, heights: g } = l(), { pagesRef: _ } = o(), { scrollMode: v } = r(), { pageRotate: S } = c(), { currentZoom: C } = s(), { columnCount: w } = i(), { pageScrollElementRef: T, virtualScrollableElementRef: E } = a(), { scrollBehavior: D } = u(), O = h((e, r, i) => {
19
- let a = i ?? { behavior: D }, o = E || T;
20
- if (!_ || !o) return;
21
- let s = n[e]?.[r];
22
- if (!s) return;
23
- let c = 0, l = 0;
24
- if (v === t.VERTICAL_SCROLLING) {
25
- let t = e - 1, n = w, r = t % n;
26
- c = d(g, Math.floor(t / n)), l = d(m, r);
27
- }
28
- v === t.HORIZONTAL_SCROLLING && (l = m.slice(0, e - 1).reduce((e, t) => e + t, 0));
29
- let u = {
18
+ let [t, f] = y({}), { widths: m, heights: g } = c(), { pagesRef: _ } = a(), { scrollMode: v } = n(), { pageRotate: S } = s(), { currentZoom: C } = o(), { viewMode: w } = r(), { pageScrollElementRef: T, virtualScrollableElementRef: E } = i(), { scrollBehavior: D } = l(), O = h((e, n, r) => {
19
+ let i = r ?? { behavior: D }, a = E || T;
20
+ if (!_ || !a) return;
21
+ let o = t[e]?.[n];
22
+ if (!o) return;
23
+ let s = u({
24
+ pageDimensions: {
25
+ widths: m,
26
+ heights: g
27
+ },
28
+ viewportWidth: a.clientWidth,
29
+ viewportHeight: a.clientHeight,
30
+ scrollMode: v,
31
+ viewMode: w,
32
+ focusedPage: e
33
+ }), c = d(s, e);
34
+ if (!c) return;
35
+ let l = {
30
36
  height: g[e - 1],
31
37
  width: m[e - 1]
32
- }, f = S[e], { left: h, top: y } = p(u, _, s, f, C), b = l + h, x = c + y, O = {
38
+ }, f = S[e], { left: h, top: y } = p(l, _, o, f, C), b = s.offsetLeft + c.left + h, x = s.offsetTop + c.top + y, O = {
33
39
  left: Math.max(b, 0),
34
40
  top: Math.max(x, 0)
35
41
  };
36
- o.scrollTo({
42
+ a.scrollTo({
37
43
  ...O,
38
- behavior: a.behavior
44
+ behavior: i.behavior
39
45
  });
40
46
  }, [
41
- n,
47
+ C,
48
+ t,
42
49
  g,
43
- m,
44
- _,
45
50
  S,
46
- C,
51
+ _,
52
+ D,
47
53
  v,
48
- D
54
+ w,
55
+ m
49
56
  ]), k = h((e, t) => {
50
57
  f((n) => {
51
58
  let r = {
@@ -78,13 +85,13 @@ var x = m(void 0), S = ({ children: e }) => {
78
85
  updateElement: k,
79
86
  clearElements: A,
80
87
  removeElement: j,
81
- elementList: n,
88
+ elementList: t,
82
89
  scrollToElement: O
83
90
  },
84
91
  children: e
85
92
  });
86
93
  }, C = () => {}, w = () => {
87
- let t = g(x), { type: r, validating: i } = f(), a = v(0), o = _(() => {
94
+ let n = g(x), { type: r, validating: i } = f(), a = v(0), o = _(() => {
88
95
  if (i !== !1) return {
89
96
  updateElement: C,
90
97
  clearElements: C,
@@ -94,22 +101,22 @@ var x = m(void 0), S = ({ children: e }) => {
94
101
  };
95
102
  if (r === e.Developer) return {
96
103
  updateElement: () => {
97
- a.current === 0 && (console.error(n), a.current++);
104
+ a.current === 0 && (console.error(t), a.current++);
98
105
  },
99
106
  clearElements: () => {
100
- a.current === 0 && (console.error(n), a.current++);
107
+ a.current === 0 && (console.error(t), a.current++);
101
108
  },
102
109
  removeElement: () => {
103
- a.current === 0 && (console.error(n), a.current++);
110
+ a.current === 0 && (console.error(t), a.current++);
104
111
  },
105
112
  elementList: {},
106
113
  scrollToElement: () => {
107
- a.current === 0 && (console.error(n), a.current++);
114
+ a.current === 0 && (console.error(t), a.current++);
108
115
  }
109
116
  };
110
117
  }, [r, i]);
111
- if (!t) throw Error("useElementPageContext must be used within a ElementPageProvider");
112
- return o || t;
118
+ if (!n) throw Error("useElementPageContext must be used within a ElementPageProvider");
119
+ return o || n;
113
120
  };
114
121
  //#endregion
115
122
  export { x as ElementPageContext, S as ElementPageProvider, w as useElementPageContext };
@@ -2,7 +2,7 @@ import { LicenseType as e } from "../utils/types.js";
2
2
  import { ORGANIZATION_ALLOWED_FEATURES_MESSAGE as t } from "../utils/const.js";
3
3
  import { usePagesRotateContext as n } from "./PagesRotateContext.js";
4
4
  import { useSmoothScrollContext as r } from "./SmoothScrollContext.js";
5
- import { r as i } from "../PaginationContext-Cwf8sCpK.js";
5
+ import { r as i } from "../PaginationContext-DIzsZhFd.js";
6
6
  import { useThumbnailContext as a } from "./ThumbnailsContext.js";
7
7
  import { useLicenseContext as o } from "./LicenseContext.js";
8
8
  import { createContext as s, useCallback as c, useContext as l, useEffect as u, useMemo as d, useRef as f, useState as p } from "react";
@@ -1,2 +1,2 @@
1
- import { n as e, r as t, t as n } from "../PaginationContext-Cwf8sCpK.js";
1
+ import { n as e, r as t, t as n } from "../PaginationContext-DIzsZhFd.js";
2
2
  export { n as PaginationContext, e as PaginationProvider, t as usePaginationContext };