@docmentis/udoc-viewer 0.1.0 → 0.1.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 (263) hide show
  1. package/dist/wasm/udoc_bg.wasm +0 -0
  2. package/dist/worker/WorkerClient.js +1 -1
  3. package/package.json +11 -3
  4. package/dist/WorkerClient.d.ts +0 -36
  5. package/dist/WorkerClient.d.ts.map +0 -1
  6. package/dist/WorkerClient.js +0 -121
  7. package/dist/WorkerClient.js.map +0 -1
  8. package/dist/annotation/AnnotationLayer.d.ts +0 -166
  9. package/dist/annotation/AnnotationLayer.d.ts.map +0 -1
  10. package/dist/annotation/AnnotationLayer.js +0 -1090
  11. package/dist/annotation/AnnotationLayer.js.map +0 -1
  12. package/dist/annotation/index.d.ts +0 -6
  13. package/dist/annotation/index.d.ts.map +0 -1
  14. package/dist/annotation/index.js +0 -6
  15. package/dist/annotation/index.js.map +0 -1
  16. package/dist/components/FloatingBar.d.ts +0 -102
  17. package/dist/components/FloatingBar.d.ts.map +0 -1
  18. package/dist/components/FloatingBar.js +0 -513
  19. package/dist/components/FloatingBar.js.map +0 -1
  20. package/dist/components/Header.d.ts +0 -46
  21. package/dist/components/Header.d.ts.map +0 -1
  22. package/dist/components/Header.js +0 -93
  23. package/dist/components/Header.js.map +0 -1
  24. package/dist/components/index.d.ts +0 -6
  25. package/dist/components/index.d.ts.map +0 -1
  26. package/dist/components/index.js +0 -4
  27. package/dist/components/index.js.map +0 -1
  28. package/dist/components/panels/CommentsPanel.d.ts +0 -33
  29. package/dist/components/panels/CommentsPanel.d.ts.map +0 -1
  30. package/dist/components/panels/CommentsPanel.js +0 -176
  31. package/dist/components/panels/CommentsPanel.js.map +0 -1
  32. package/dist/components/panels/OutlinePanel.d.ts +0 -30
  33. package/dist/components/panels/OutlinePanel.d.ts.map +0 -1
  34. package/dist/components/panels/OutlinePanel.js +0 -144
  35. package/dist/components/panels/OutlinePanel.js.map +0 -1
  36. package/dist/components/panels/ThumbnailsPanel.d.ts +0 -51
  37. package/dist/components/panels/ThumbnailsPanel.d.ts.map +0 -1
  38. package/dist/components/panels/ThumbnailsPanel.js +0 -160
  39. package/dist/components/panels/ThumbnailsPanel.js.map +0 -1
  40. package/dist/components/panels/index.d.ts +0 -7
  41. package/dist/components/panels/index.d.ts.map +0 -1
  42. package/dist/components/panels/index.js +0 -4
  43. package/dist/components/panels/index.js.map +0 -1
  44. package/dist/constants.d.ts +0 -25
  45. package/dist/constants.d.ts.map +0 -1
  46. package/dist/constants.js +0 -46
  47. package/dist/constants.js.map +0 -1
  48. package/dist/core/NavigationController.d.ts +0 -54
  49. package/dist/core/NavigationController.d.ts.map +0 -1
  50. package/dist/core/NavigationController.js +0 -145
  51. package/dist/core/NavigationController.js.map +0 -1
  52. package/dist/core/PerfTimer.d.ts +0 -12
  53. package/dist/core/PerfTimer.d.ts.map +0 -1
  54. package/dist/core/PerfTimer.js +0 -32
  55. package/dist/core/PerfTimer.js.map +0 -1
  56. package/dist/core/ViewerState.d.ts +0 -108
  57. package/dist/core/ViewerState.d.ts.map +0 -1
  58. package/dist/core/ViewerState.js +0 -179
  59. package/dist/core/ViewerState.js.map +0 -1
  60. package/dist/core/constants.d.ts +0 -24
  61. package/dist/core/constants.d.ts.map +0 -1
  62. package/dist/core/constants.js +0 -42
  63. package/dist/core/constants.js.map +0 -1
  64. package/dist/core/index.d.ts +0 -8
  65. package/dist/core/index.d.ts.map +0 -1
  66. package/dist/core/index.js +0 -11
  67. package/dist/core/index.js.map +0 -1
  68. package/dist/core/types.d.ts +0 -573
  69. package/dist/core/types.d.ts.map +0 -1
  70. package/dist/core/types.js +0 -5
  71. package/dist/core/types.js.map +0 -1
  72. package/dist/icons/icons.d.ts +0 -41
  73. package/dist/icons/icons.d.ts.map +0 -1
  74. package/dist/icons/icons.js +0 -51
  75. package/dist/icons/icons.js.map +0 -1
  76. package/dist/icons/index.d.ts +0 -3
  77. package/dist/icons/index.d.ts.map +0 -1
  78. package/dist/icons/index.js +0 -2
  79. package/dist/icons/index.js.map +0 -1
  80. package/dist/layout/BandManager.d.ts +0 -87
  81. package/dist/layout/BandManager.d.ts.map +0 -1
  82. package/dist/layout/BandManager.js +0 -185
  83. package/dist/layout/BandManager.js.map +0 -1
  84. package/dist/layout/LayoutCalculator.d.ts +0 -42
  85. package/dist/layout/LayoutCalculator.d.ts.map +0 -1
  86. package/dist/layout/LayoutCalculator.js +0 -180
  87. package/dist/layout/LayoutCalculator.js.map +0 -1
  88. package/dist/layout/LayoutState.d.ts +0 -46
  89. package/dist/layout/LayoutState.d.ts.map +0 -1
  90. package/dist/layout/LayoutState.js +0 -109
  91. package/dist/layout/LayoutState.js.map +0 -1
  92. package/dist/layout/TransitionCoordinator.d.ts +0 -11
  93. package/dist/layout/TransitionCoordinator.d.ts.map +0 -1
  94. package/dist/layout/TransitionCoordinator.js +0 -22
  95. package/dist/layout/TransitionCoordinator.js.map +0 -1
  96. package/dist/layout/index.d.ts +0 -7
  97. package/dist/layout/index.d.ts.map +0 -1
  98. package/dist/layout/index.js +0 -4
  99. package/dist/layout/index.js.map +0 -1
  100. package/dist/rendering/BandManager.d.ts +0 -87
  101. package/dist/rendering/BandManager.d.ts.map +0 -1
  102. package/dist/rendering/BandManager.js +0 -185
  103. package/dist/rendering/BandManager.js.map +0 -1
  104. package/dist/rendering/PageCache.d.ts +0 -75
  105. package/dist/rendering/PageCache.d.ts.map +0 -1
  106. package/dist/rendering/PageCache.js +0 -122
  107. package/dist/rendering/PageCache.js.map +0 -1
  108. package/dist/rendering/RenderQueue.d.ts +0 -75
  109. package/dist/rendering/RenderQueue.d.ts.map +0 -1
  110. package/dist/rendering/RenderQueue.js +0 -105
  111. package/dist/rendering/RenderQueue.js.map +0 -1
  112. package/dist/rendering/ThumbnailQueue.d.ts +0 -57
  113. package/dist/rendering/ThumbnailQueue.d.ts.map +0 -1
  114. package/dist/rendering/ThumbnailQueue.js +0 -85
  115. package/dist/rendering/ThumbnailQueue.js.map +0 -1
  116. package/dist/rendering/index.d.ts +0 -13
  117. package/dist/rendering/index.d.ts.map +0 -1
  118. package/dist/rendering/index.js +0 -10
  119. package/dist/rendering/index.js.map +0 -1
  120. package/dist/rendering/types.d.ts +0 -72
  121. package/dist/rendering/types.d.ts.map +0 -1
  122. package/dist/rendering/types.js +0 -5
  123. package/dist/rendering/types.js.map +0 -1
  124. package/dist/styles/index.d.ts +0 -6
  125. package/dist/styles/index.d.ts.map +0 -1
  126. package/dist/styles/index.js +0 -1221
  127. package/dist/styles/index.js.map +0 -1
  128. package/dist/types.d.ts +0 -6
  129. package/dist/types.d.ts.map +0 -1
  130. package/dist/types.js +0 -6
  131. package/dist/types.js.map +0 -1
  132. package/dist/ui/Component.d.ts +0 -127
  133. package/dist/ui/Component.d.ts.map +0 -1
  134. package/dist/ui/Component.js +0 -201
  135. package/dist/ui/Component.js.map +0 -1
  136. package/dist/ui/annotation/AnnotationLayer.d.ts +0 -90
  137. package/dist/ui/annotation/AnnotationLayer.d.ts.map +0 -1
  138. package/dist/ui/annotation/AnnotationLayer.js +0 -322
  139. package/dist/ui/annotation/AnnotationLayer.js.map +0 -1
  140. package/dist/ui/annotation/LinkRenderer.d.ts +0 -32
  141. package/dist/ui/annotation/LinkRenderer.d.ts.map +0 -1
  142. package/dist/ui/annotation/LinkRenderer.js +0 -74
  143. package/dist/ui/annotation/LinkRenderer.js.map +0 -1
  144. package/dist/ui/annotation/MarkupRenderer.d.ts +0 -40
  145. package/dist/ui/annotation/MarkupRenderer.d.ts.map +0 -1
  146. package/dist/ui/annotation/MarkupRenderer.js +0 -154
  147. package/dist/ui/annotation/MarkupRenderer.js.map +0 -1
  148. package/dist/ui/annotation/ShapeRenderer.d.ts +0 -46
  149. package/dist/ui/annotation/ShapeRenderer.d.ts.map +0 -1
  150. package/dist/ui/annotation/ShapeRenderer.js +0 -376
  151. package/dist/ui/annotation/ShapeRenderer.js.map +0 -1
  152. package/dist/ui/annotation/TextRenderer.d.ts +0 -36
  153. package/dist/ui/annotation/TextRenderer.d.ts.map +0 -1
  154. package/dist/ui/annotation/TextRenderer.js +0 -199
  155. package/dist/ui/annotation/TextRenderer.js.map +0 -1
  156. package/dist/ui/annotation/index.d.ts +0 -17
  157. package/dist/ui/annotation/index.d.ts.map +0 -1
  158. package/dist/ui/annotation/index.js +0 -13
  159. package/dist/ui/annotation/index.js.map +0 -1
  160. package/dist/ui/annotation/utils.d.ts +0 -40
  161. package/dist/ui/annotation/utils.d.ts.map +0 -1
  162. package/dist/ui/annotation/utils.js +0 -62
  163. package/dist/ui/annotation/utils.js.map +0 -1
  164. package/dist/ui/components/CommentsContent.d.ts +0 -35
  165. package/dist/ui/components/CommentsContent.d.ts.map +0 -1
  166. package/dist/ui/components/CommentsContent.js +0 -203
  167. package/dist/ui/components/CommentsContent.js.map +0 -1
  168. package/dist/ui/components/FloatingBar.d.ts +0 -55
  169. package/dist/ui/components/FloatingBar.d.ts.map +0 -1
  170. package/dist/ui/components/FloatingBar.js +0 -585
  171. package/dist/ui/components/FloatingBar.js.map +0 -1
  172. package/dist/ui/components/Header.d.ts +0 -29
  173. package/dist/ui/components/Header.d.ts.map +0 -1
  174. package/dist/ui/components/Header.js +0 -127
  175. package/dist/ui/components/Header.js.map +0 -1
  176. package/dist/ui/components/LeftPanel.d.ts +0 -54
  177. package/dist/ui/components/LeftPanel.d.ts.map +0 -1
  178. package/dist/ui/components/LeftPanel.js +0 -202
  179. package/dist/ui/components/LeftPanel.js.map +0 -1
  180. package/dist/ui/components/OutlineContent.d.ts +0 -34
  181. package/dist/ui/components/OutlineContent.d.ts.map +0 -1
  182. package/dist/ui/components/OutlineContent.js +0 -147
  183. package/dist/ui/components/OutlineContent.js.map +0 -1
  184. package/dist/ui/components/RightPanel.d.ts +0 -52
  185. package/dist/ui/components/RightPanel.d.ts.map +0 -1
  186. package/dist/ui/components/RightPanel.js +0 -142
  187. package/dist/ui/components/RightPanel.js.map +0 -1
  188. package/dist/ui/components/Viewport.d.ts +0 -70
  189. package/dist/ui/components/Viewport.d.ts.map +0 -1
  190. package/dist/ui/components/Viewport.js +0 -173
  191. package/dist/ui/components/Viewport.js.map +0 -1
  192. package/dist/ui/components/index.d.ts +0 -11
  193. package/dist/ui/components/index.d.ts.map +0 -1
  194. package/dist/ui/components/index.js +0 -10
  195. package/dist/ui/components/index.js.map +0 -1
  196. package/dist/ui/icons/icons.d.ts +0 -43
  197. package/dist/ui/icons/icons.d.ts.map +0 -1
  198. package/dist/ui/icons/icons.js +0 -46
  199. package/dist/ui/icons/icons.js.map +0 -1
  200. package/dist/ui/icons/index.d.ts +0 -11
  201. package/dist/ui/icons/index.d.ts.map +0 -1
  202. package/dist/ui/icons/index.js +0 -18
  203. package/dist/ui/icons/index.js.map +0 -1
  204. package/dist/ui/index.d.ts +0 -7
  205. package/dist/ui/index.d.ts.map +0 -1
  206. package/dist/ui/index.js +0 -9
  207. package/dist/ui/index.js.map +0 -1
  208. package/dist/ui/styles/base.css.d.ts +0 -5
  209. package/dist/ui/styles/base.css.d.ts.map +0 -1
  210. package/dist/ui/styles/base.css.js +0 -49
  211. package/dist/ui/styles/base.css.js.map +0 -1
  212. package/dist/ui/styles/floating-bar.css.d.ts +0 -5
  213. package/dist/ui/styles/floating-bar.css.d.ts.map +0 -1
  214. package/dist/ui/styles/floating-bar.css.js +0 -417
  215. package/dist/ui/styles/floating-bar.css.js.map +0 -1
  216. package/dist/ui/styles/header.css.d.ts +0 -5
  217. package/dist/ui/styles/header.css.d.ts.map +0 -1
  218. package/dist/ui/styles/header.css.js +0 -49
  219. package/dist/ui/styles/header.css.js.map +0 -1
  220. package/dist/ui/styles/index.d.ts +0 -21
  221. package/dist/ui/styles/index.d.ts.map +0 -1
  222. package/dist/ui/styles/index.js +0 -48
  223. package/dist/ui/styles/index.js.map +0 -1
  224. package/dist/ui/styles/panels.css.d.ts +0 -5
  225. package/dist/ui/styles/panels.css.d.ts.map +0 -1
  226. package/dist/ui/styles/panels.css.js +0 -446
  227. package/dist/ui/styles/panels.css.js.map +0 -1
  228. package/dist/ui/styles/responsive.css.d.ts +0 -5
  229. package/dist/ui/styles/responsive.css.d.ts.map +0 -1
  230. package/dist/ui/styles/responsive.css.js +0 -201
  231. package/dist/ui/styles/responsive.css.js.map +0 -1
  232. package/dist/ui/styles/variables.css.d.ts +0 -6
  233. package/dist/ui/styles/variables.css.d.ts.map +0 -1
  234. package/dist/ui/styles/variables.css.js +0 -75
  235. package/dist/ui/styles/variables.css.js.map +0 -1
  236. package/dist/ui/styles/viewport.css.d.ts +0 -5
  237. package/dist/ui/styles/viewport.css.d.ts.map +0 -1
  238. package/dist/ui/styles/viewport.css.js +0 -87
  239. package/dist/ui/styles/viewport.css.js.map +0 -1
  240. package/dist/view/LayoutCalculator.d.ts +0 -42
  241. package/dist/view/LayoutCalculator.d.ts.map +0 -1
  242. package/dist/view/LayoutCalculator.js +0 -180
  243. package/dist/view/LayoutCalculator.js.map +0 -1
  244. package/dist/view/TransitionCoordinator.d.ts +0 -11
  245. package/dist/view/TransitionCoordinator.d.ts.map +0 -1
  246. package/dist/view/TransitionCoordinator.js +0 -22
  247. package/dist/view/TransitionCoordinator.js.map +0 -1
  248. package/dist/view/ViewState.d.ts +0 -46
  249. package/dist/view/ViewState.d.ts.map +0 -1
  250. package/dist/view/ViewState.js +0 -109
  251. package/dist/view/ViewState.js.map +0 -1
  252. package/dist/view/index.d.ts +0 -7
  253. package/dist/view/index.d.ts.map +0 -1
  254. package/dist/view/index.js +0 -4
  255. package/dist/view/index.js.map +0 -1
  256. package/dist/worker/types.d.ts +0 -81
  257. package/dist/worker/types.d.ts.map +0 -1
  258. package/dist/worker/types.js +0 -6
  259. package/dist/worker/types.js.map +0 -1
  260. package/dist/worker.d.ts +0 -2
  261. package/dist/worker.d.ts.map +0 -1
  262. package/dist/worker.js +0 -205
  263. package/dist/worker.js.map +0 -1
@@ -1,75 +0,0 @@
1
- /**
2
- * CSS custom properties for theming support.
3
- * These variables enable consistent theming across all viewer components.
4
- */
5
- export const variablesStyles = /* css */ `
6
- :root {
7
- /* Colors - Backgrounds */
8
- --udoc-bg-primary: #e0e0e0;
9
- --udoc-bg-secondary: #fff;
10
- --udoc-bg-tertiary: #f0f0f0;
11
- --udoc-bg-hover: #f0f0f0;
12
- --udoc-bg-active: #e0e0e0;
13
- --udoc-bg-selected: #e8f4fc;
14
-
15
- /* Colors - Text */
16
- --udoc-text-primary: #333;
17
- --udoc-text-secondary: #555;
18
- --udoc-text-muted: #666;
19
- --udoc-text-disabled: #999;
20
-
21
- /* Colors - Accent */
22
- --udoc-accent: #3498db;
23
- --udoc-accent-hover: #2980b9;
24
- --udoc-accent-light: #e8f4fc;
25
-
26
- /* Colors - Borders */
27
- --udoc-border: #e0e0e0;
28
- --udoc-border-light: #ddd;
29
-
30
- /* Colors - Shadows */
31
- --udoc-shadow-sm: 0 1px 2px rgba(0, 0, 0, 0.1);
32
- --udoc-shadow-md: 0 2px 8px rgba(0, 0, 0, 0.15);
33
- --udoc-shadow-lg: 0 4px 12px rgba(0, 0, 0, 0.15);
34
-
35
- /* Sizing */
36
- --udoc-header-height: 40px;
37
- --udoc-panel-width: 240px;
38
- --udoc-floating-bar-height: 36px;
39
- --udoc-page-gap: 16px;
40
- --udoc-thumbnail-width: 120px;
41
- --udoc-thumbnail-height: 160px;
42
-
43
- /* Spacing */
44
- --udoc-spacing-xs: 4px;
45
- --udoc-spacing-sm: 8px;
46
- --udoc-spacing-md: 12px;
47
- --udoc-spacing-lg: 16px;
48
- --udoc-spacing-xl: 24px;
49
-
50
- /* Typography */
51
- --udoc-font-family: system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
52
- --udoc-font-size-xs: 11px;
53
- --udoc-font-size-sm: 12px;
54
- --udoc-font-size-md: 14px;
55
- --udoc-font-size-lg: 16px;
56
-
57
- /* Border Radius */
58
- --udoc-radius-sm: 4px;
59
- --udoc-radius-md: 6px;
60
- --udoc-radius-lg: 8px;
61
-
62
- /* Transitions */
63
- --udoc-transition-fast: 150ms ease;
64
- --udoc-transition-normal: 250ms ease;
65
-
66
- /* Z-index layers */
67
- --udoc-z-panel: 100;
68
- --udoc-z-header: 200;
69
- --udoc-z-floating: 300;
70
- --udoc-z-popover: 400;
71
- --udoc-z-modal: 500;
72
- --udoc-z-overlay: 600;
73
- }
74
- `;
75
- //# sourceMappingURL=variables.css.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"variables.css.js","sourceRoot":"","sources":["../../../src/ui/styles/variables.css.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG,SAAS,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAqExC,CAAC"}
@@ -1,5 +0,0 @@
1
- /**
2
- * Main viewport and page rendering styles.
3
- */
4
- export declare const viewportStyles = "\n/* Viewport */\n.udoc-viewport {\n flex: 1;\n overflow: auto;\n position: relative;\n overscroll-behavior-x: none;\n}\n\n.udoc-content {\n display: flex;\n flex-direction: column;\n min-width: 100%;\n min-height: 100%;\n padding: 20px;\n box-sizing: border-box;\n}\n\n.udoc-spacer {\n width: 100%;\n flex-shrink: 0;\n}\n\n.udoc-band-container {\n position: relative;\n width: 100%;\n}\n\n.udoc-band {\n width: 100%;\n position: absolute;\n left: 0;\n display: flex;\n justify-content: center;\n flex-shrink: 0;\n}\n\n.udoc-band-inner {\n display: grid;\n align-items: center;\n justify-items: center;\n}\n\n.udoc-slot {\n display: flex;\n align-items: center;\n justify-content: center;\n overflow: visible;\n}\n\n.udoc-page {\n display: block;\n box-shadow: 0 2px 8px rgba(0,0,0,0.15);\n background: #fff;\n transform-origin: center center;\n opacity: 1;\n transition: opacity 0.12s ease;\n user-select: none;\n -webkit-user-drag: none;\n pointer-events: none;\n}\n\n.udoc-viewer-root.seamless .udoc-page {\n box-shadow: none;\n}\n\n.udoc-page[data-rendered=\"false\"] {\n opacity: 1;\n}\n\n/* Cursor styles for tools */\n.udoc-viewport.tool-hand {\n cursor: grab;\n}\n\n.udoc-viewport.tool-hand.panning {\n cursor: grabbing;\n}\n\n.udoc-viewport.tool-select {\n cursor: default;\n}\n";
5
- //# sourceMappingURL=viewport.css.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"viewport.css.d.ts","sourceRoot":"","sources":["../../../src/ui/styles/viewport.css.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,eAAO,MAAM,cAAc,u4CAkF1B,CAAC"}
@@ -1,87 +0,0 @@
1
- /**
2
- * Main viewport and page rendering styles.
3
- */
4
- export const viewportStyles = /* css */ `
5
- /* Viewport */
6
- .udoc-viewport {
7
- flex: 1;
8
- overflow: auto;
9
- position: relative;
10
- overscroll-behavior-x: none;
11
- }
12
-
13
- .udoc-content {
14
- display: flex;
15
- flex-direction: column;
16
- min-width: 100%;
17
- min-height: 100%;
18
- padding: 20px;
19
- box-sizing: border-box;
20
- }
21
-
22
- .udoc-spacer {
23
- width: 100%;
24
- flex-shrink: 0;
25
- }
26
-
27
- .udoc-band-container {
28
- position: relative;
29
- width: 100%;
30
- }
31
-
32
- .udoc-band {
33
- width: 100%;
34
- position: absolute;
35
- left: 0;
36
- display: flex;
37
- justify-content: center;
38
- flex-shrink: 0;
39
- }
40
-
41
- .udoc-band-inner {
42
- display: grid;
43
- align-items: center;
44
- justify-items: center;
45
- }
46
-
47
- .udoc-slot {
48
- display: flex;
49
- align-items: center;
50
- justify-content: center;
51
- overflow: visible;
52
- }
53
-
54
- .udoc-page {
55
- display: block;
56
- box-shadow: 0 2px 8px rgba(0,0,0,0.15);
57
- background: #fff;
58
- transform-origin: center center;
59
- opacity: 1;
60
- transition: opacity 0.12s ease;
61
- user-select: none;
62
- -webkit-user-drag: none;
63
- pointer-events: none;
64
- }
65
-
66
- .udoc-viewer-root.seamless .udoc-page {
67
- box-shadow: none;
68
- }
69
-
70
- .udoc-page[data-rendered="false"] {
71
- opacity: 1;
72
- }
73
-
74
- /* Cursor styles for tools */
75
- .udoc-viewport.tool-hand {
76
- cursor: grab;
77
- }
78
-
79
- .udoc-viewport.tool-hand.panning {
80
- cursor: grabbing;
81
- }
82
-
83
- .udoc-viewport.tool-select {
84
- cursor: default;
85
- }
86
- `;
87
- //# sourceMappingURL=viewport.css.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"viewport.css.js","sourceRoot":"","sources":["../../../src/ui/styles/viewport.css.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,CAAC,MAAM,cAAc,GAAG,SAAS,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAkFvC,CAAC"}
@@ -1,42 +0,0 @@
1
- export type LayoutMode = 'single' | 'double' | 'double-cover' | 'grid';
2
- export type Rotation = 0 | 90 | 180 | 270;
3
- export type PageLayout = 'default' | 'odd-pages-right' | 'odd-pages-left';
4
- export interface GridOptions {
5
- columns: number;
6
- rows: number;
7
- }
8
- /**
9
- * Default gap size between pages when not in seamless mode.
10
- */
11
- export declare const PAGE_GAP_SIZE = 16;
12
- export interface PageSize {
13
- width: number;
14
- height: number;
15
- }
16
- export interface SlotLayout {
17
- pageIndex: number;
18
- row: number;
19
- col: number;
20
- baseWidth: number;
21
- baseHeight: number;
22
- baseX: number;
23
- baseY: number;
24
- }
25
- export interface BandLayout {
26
- index: number;
27
- slots: SlotLayout[];
28
- columns: number;
29
- rows: number;
30
- colWidths: number[];
31
- rowHeights: number[];
32
- baseWidth: number;
33
- baseHeight: number;
34
- }
35
- export interface LayoutResult {
36
- bands: BandLayout[];
37
- pageToBand: number[];
38
- }
39
- export declare class LayoutCalculator {
40
- static computeLayout(pageSizes: PageSize[], layoutMode: LayoutMode, rotation: Rotation, seamless: boolean, grid?: GridOptions, pageLayout?: PageLayout): LayoutResult;
41
- }
42
- //# sourceMappingURL=LayoutCalculator.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"LayoutCalculator.d.ts","sourceRoot":"","sources":["../../src/view/LayoutCalculator.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,UAAU,GAAG,QAAQ,GAAG,QAAQ,GAAG,cAAc,GAAG,MAAM,CAAC;AACvE,MAAM,MAAM,QAAQ,GAAG,CAAC,GAAG,EAAE,GAAG,GAAG,GAAG,GAAG,CAAC;AAC1C,MAAM,MAAM,UAAU,GAAG,SAAS,GAAG,iBAAiB,GAAG,gBAAgB,CAAC;AAE1E,MAAM,WAAW,WAAW;IACxB,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;CAChB;AAED;;GAEG;AACH,eAAO,MAAM,aAAa,KAAK,CAAC;AAEhC,MAAM,WAAW,QAAQ;IACrB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,UAAU;IACvB,SAAS,EAAE,MAAM,CAAC;IAClB,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,MAAM,CAAC;IACZ,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,UAAU;IACvB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,UAAU,EAAE,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,YAAY;IACzB,KAAK,EAAE,UAAU,EAAE,CAAC;IACpB,UAAU,EAAE,MAAM,EAAE,CAAC;CACxB;AA4BD,qBAAa,gBAAgB;IACzB,MAAM,CAAC,aAAa,CAChB,SAAS,EAAE,QAAQ,EAAE,EACrB,UAAU,EAAE,UAAU,EACtB,QAAQ,EAAE,QAAQ,EAClB,QAAQ,EAAE,OAAO,EACjB,IAAI,GAAE,WAA0B,EAChC,UAAU,GAAE,UAAsB,GACnC,YAAY;CAqNlB"}
@@ -1,180 +0,0 @@
1
- /**
2
- * Default gap size between pages when not in seamless mode.
3
- */
4
- export const PAGE_GAP_SIZE = 16;
5
- const DEFAULT_GRID = { columns: 1, rows: 1 };
6
- function rotateSize(size, rotation) {
7
- if (rotation === 90 || rotation === 270) {
8
- return { width: size.height, height: size.width };
9
- }
10
- return size;
11
- }
12
- function clampGrid(value) {
13
- return Number.isFinite(value) && value > 0 ? Math.floor(value) : 1;
14
- }
15
- export class LayoutCalculator {
16
- static computeLayout(pageSizes, layoutMode, rotation, seamless, grid = DEFAULT_GRID, pageLayout = 'default') {
17
- const rotatedSizes = pageSizes.map((size) => rotateSize(size, rotation));
18
- const bands = [];
19
- const pageToBand = new Array(pageSizes.length).fill(-1);
20
- const gapSize = seamless ? 0 : PAGE_GAP_SIZE;
21
- const buildBand = (bandIndex, slots, rows, columns, options = {}) => {
22
- const colWidths = new Array(columns).fill(0);
23
- const rowHeights = new Array(rows).fill(0);
24
- for (const slot of slots) {
25
- colWidths[slot.col] = Math.max(colWidths[slot.col], slot.width);
26
- rowHeights[slot.row] = Math.max(rowHeights[slot.row], slot.height);
27
- pageToBand[slot.pageIndex] = bandIndex;
28
- }
29
- // For single-page bands in double-cover mode, make both columns symmetric
30
- if (options.coverRight && columns === 2) {
31
- if (colWidths[0] === 0 && colWidths[1] > 0) {
32
- // Cover page on right: fill left column
33
- colWidths[0] = colWidths[1];
34
- }
35
- else if (colWidths[1] === 0 && colWidths[0] > 0) {
36
- // Last page on left: fill right column
37
- colWidths[1] = colWidths[0];
38
- }
39
- }
40
- if (options.normalizeEmptyGrid) {
41
- const maxCol = Math.max(...colWidths);
42
- const maxRow = Math.max(...rowHeights);
43
- for (let i = 0; i < colWidths.length; i++) {
44
- if (colWidths[i] === 0) {
45
- colWidths[i] = maxCol;
46
- }
47
- }
48
- for (let i = 0; i < rowHeights.length; i++) {
49
- if (rowHeights[i] === 0) {
50
- rowHeights[i] = maxRow;
51
- }
52
- }
53
- }
54
- const colOffsets = [];
55
- const rowOffsets = [];
56
- let x = 0;
57
- for (let col = 0; col < columns; col++) {
58
- colOffsets[col] = x;
59
- x += colWidths[col] + (col < columns - 1 ? gapSize : 0);
60
- }
61
- let y = 0;
62
- for (let row = 0; row < rows; row++) {
63
- rowOffsets[row] = y;
64
- y += rowHeights[row] + (row < rows - 1 ? gapSize : 0);
65
- }
66
- const bandSlots = slots.map((slot) => ({
67
- pageIndex: slot.pageIndex,
68
- row: slot.row,
69
- col: slot.col,
70
- baseWidth: slot.width,
71
- baseHeight: slot.height,
72
- baseX: colOffsets[slot.col],
73
- baseY: rowOffsets[slot.row],
74
- }));
75
- const baseWidth = colWidths.reduce((sum, width) => sum + width, 0)
76
- + Math.max(0, columns - 1) * gapSize;
77
- const baseHeight = rowHeights.reduce((sum, height) => sum + height, 0)
78
- + Math.max(0, rows - 1) * gapSize;
79
- bands.push({
80
- index: bandIndex,
81
- slots: bandSlots,
82
- columns,
83
- rows,
84
- colWidths,
85
- rowHeights,
86
- baseWidth,
87
- baseHeight,
88
- });
89
- };
90
- if (layoutMode === 'single') {
91
- for (let i = 0; i < rotatedSizes.length; i++) {
92
- const size = rotatedSizes[i];
93
- buildBand(bands.length, [{ pageIndex: i, row: 0, col: 0, width: size.width, height: size.height }], 1, 1);
94
- }
95
- return { bands, pageToBand };
96
- }
97
- if (layoutMode === 'double') {
98
- let i = 0;
99
- while (i < rotatedSizes.length) {
100
- const left = rotatedSizes[i];
101
- const isLastPageAlone = i + 1 >= rotatedSizes.length;
102
- if (isLastPageAlone) {
103
- // Last page alone: position on left (col 0) with symmetric columns
104
- buildBand(bands.length, [{ pageIndex: i, row: 0, col: 0, width: left.width, height: left.height }], 1, 2, { coverRight: true } // Fill empty right column for symmetry
105
- );
106
- }
107
- else {
108
- const right = rotatedSizes[i + 1];
109
- buildBand(bands.length, [
110
- { pageIndex: i, row: 0, col: 0, width: left.width, height: left.height },
111
- { pageIndex: i + 1, row: 0, col: 1, width: right.width, height: right.height },
112
- ], 1, 2);
113
- }
114
- i += 2;
115
- }
116
- return { bands, pageToBand };
117
- }
118
- if (layoutMode === 'double-cover') {
119
- // Determine cover position based on document's page layout preference
120
- // odd-pages-right (default): cover on right (col 1), spreads: 2|3, 4|5...
121
- // odd-pages-left: cover on left (col 0), spreads: 2|3, 4|5...
122
- const coverOnRight = pageLayout !== 'odd-pages-left';
123
- const coverCol = coverOnRight ? 1 : 0;
124
- if (rotatedSizes.length > 0) {
125
- const cover = rotatedSizes[0];
126
- buildBand(bands.length, [{ pageIndex: 0, row: 0, col: coverCol, width: cover.width, height: cover.height }], 1, 2, { coverRight: coverOnRight });
127
- }
128
- let i = 1;
129
- while (i < rotatedSizes.length) {
130
- const isLastPageAlone = i + 1 >= rotatedSizes.length;
131
- if (isLastPageAlone) {
132
- // Last page alone: position opposite to cover for symmetry
133
- // coverOnRight: last page on left (col 0)
134
- // coverOnLeft: last page on right (col 1)
135
- const lastCol = coverOnRight ? 0 : 1;
136
- const last = rotatedSizes[i];
137
- buildBand(bands.length, [{ pageIndex: i, row: 0, col: lastCol, width: last.width, height: last.height }], 1, 2, { coverRight: true } // Always fill the empty column for symmetry
138
- );
139
- }
140
- else {
141
- // Normal spread: left page in col 0, right page in col 1
142
- const left = rotatedSizes[i];
143
- const right = rotatedSizes[i + 1];
144
- buildBand(bands.length, [
145
- { pageIndex: i, row: 0, col: 0, width: left.width, height: left.height },
146
- { pageIndex: i + 1, row: 0, col: 1, width: right.width, height: right.height },
147
- ], 1, 2);
148
- }
149
- i += 2;
150
- }
151
- return { bands, pageToBand };
152
- }
153
- const columns = clampGrid(grid.columns);
154
- const rows = clampGrid(grid.rows);
155
- const slotsPerBand = columns * rows;
156
- let index = 0;
157
- while (index < rotatedSizes.length) {
158
- const slots = [];
159
- for (let offset = 0; offset < slotsPerBand; offset++) {
160
- const pageIndex = index + offset;
161
- if (pageIndex >= rotatedSizes.length)
162
- break;
163
- const size = rotatedSizes[pageIndex];
164
- const row = Math.floor(offset / columns);
165
- const col = offset % columns;
166
- slots.push({
167
- pageIndex,
168
- row,
169
- col,
170
- width: size.width,
171
- height: size.height,
172
- });
173
- }
174
- buildBand(bands.length, slots, rows, columns, { normalizeEmptyGrid: true });
175
- index += slotsPerBand;
176
- }
177
- return { bands, pageToBand };
178
- }
179
- }
180
- //# sourceMappingURL=LayoutCalculator.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"LayoutCalculator.js","sourceRoot":"","sources":["../../src/view/LayoutCalculator.ts"],"names":[],"mappings":"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"}
@@ -1,11 +0,0 @@
1
- import type { DisplayMode } from './ViewState';
2
- export interface BandWindow {
3
- start: number;
4
- end: number;
5
- }
6
- export declare class TransitionCoordinator {
7
- private windowRadius;
8
- constructor(windowRadius?: number);
9
- getWindow(currentBandIndex: number, bandCount: number, displayMode: DisplayMode, previousDisplayMode?: DisplayMode): BandWindow;
10
- }
11
- //# sourceMappingURL=TransitionCoordinator.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"TransitionCoordinator.d.ts","sourceRoot":"","sources":["../../src/view/TransitionCoordinator.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAE/C,MAAM,WAAW,UAAU;IACvB,KAAK,EAAE,MAAM,CAAC;IACd,GAAG,EAAE,MAAM,CAAC;CACf;AAED,qBAAa,qBAAqB;IAC9B,OAAO,CAAC,YAAY,CAAS;gBAEjB,YAAY,GAAE,MAAU;IAIpC,SAAS,CACL,gBAAgB,EAAE,MAAM,EACxB,SAAS,EAAE,MAAM,EACjB,WAAW,EAAE,WAAW,EACxB,mBAAmB,CAAC,EAAE,WAAW,GAClC,UAAU;CAmBhB"}
@@ -1,22 +0,0 @@
1
- export class TransitionCoordinator {
2
- windowRadius;
3
- constructor(windowRadius = 2) {
4
- this.windowRadius = windowRadius;
5
- }
6
- getWindow(currentBandIndex, bandCount, displayMode, previousDisplayMode) {
7
- if (bandCount <= 0) {
8
- return { start: 0, end: 0 };
9
- }
10
- const clampedCurrent = Math.max(0, Math.min(currentBandIndex, bandCount - 1));
11
- if (displayMode === 'single') {
12
- return { start: clampedCurrent, end: clampedCurrent };
13
- }
14
- const radius = previousDisplayMode === 'single'
15
- ? Math.max(1, this.windowRadius)
16
- : this.windowRadius;
17
- const start = Math.max(0, clampedCurrent - radius);
18
- const end = Math.min(bandCount - 1, clampedCurrent + radius);
19
- return { start, end };
20
- }
21
- }
22
- //# sourceMappingURL=TransitionCoordinator.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"TransitionCoordinator.js","sourceRoot":"","sources":["../../src/view/TransitionCoordinator.ts"],"names":[],"mappings":"AAOA,MAAM,OAAO,qBAAqB;IACtB,YAAY,CAAS;IAE7B,YAAY,eAAuB,CAAC;QAChC,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;IACrC,CAAC;IAED,SAAS,CACL,gBAAwB,EACxB,SAAiB,EACjB,WAAwB,EACxB,mBAAiC;QAEjC,IAAI,SAAS,IAAI,CAAC,EAAE,CAAC;YACjB,OAAO,EAAE,KAAK,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC;QAChC,CAAC;QAED,MAAM,cAAc,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,gBAAgB,EAAE,SAAS,GAAG,CAAC,CAAC,CAAC,CAAC;QAE9E,IAAI,WAAW,KAAK,QAAQ,EAAE,CAAC;YAC3B,OAAO,EAAE,KAAK,EAAE,cAAc,EAAE,GAAG,EAAE,cAAc,EAAE,CAAC;QAC1D,CAAC;QAED,MAAM,MAAM,GAAG,mBAAmB,KAAK,QAAQ;YAC3C,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,YAAY,CAAC;YAChC,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC;QAExB,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,cAAc,GAAG,MAAM,CAAC,CAAC;QACnD,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,SAAS,GAAG,CAAC,EAAE,cAAc,GAAG,MAAM,CAAC,CAAC;QAC7D,OAAO,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC;IAC1B,CAAC;CACJ"}
@@ -1,46 +0,0 @@
1
- import type { BandLayout, LayoutResult, SlotLayout } from './LayoutCalculator';
2
- export type DisplayMode = 'single' | 'scroll';
3
- export interface ScaledSlotLayout extends SlotLayout {
4
- width: number;
5
- height: number;
6
- x: number;
7
- y: number;
8
- }
9
- export interface ScaledBandLayout {
10
- band: BandLayout;
11
- width: number;
12
- height: number;
13
- slots: ScaledSlotLayout[];
14
- colWidths: number[];
15
- rowHeights: number[];
16
- }
17
- interface SlotLookupEntry {
18
- bandIndex: number;
19
- slot: ScaledSlotLayout;
20
- }
21
- export declare class ViewState {
22
- private layout;
23
- private scaledBands;
24
- private bandOffsets;
25
- private totalHeight;
26
- private totalWidth;
27
- private slotLookup;
28
- private zoom;
29
- setLayout(layout: LayoutResult, zoom: number): void;
30
- getBandCount(): number;
31
- getBand(index: number): ScaledBandLayout | null;
32
- getBandOffset(index: number): number;
33
- getBandOffsets(): number[];
34
- getTotalHeight(): number;
35
- getTotalWidth(): number;
36
- getBandIndexForPage(pageIndex: number): number;
37
- getBandIndexForOffset(offsetY: number): number;
38
- getSlotForPage(pageIndex: number): SlotLookupEntry | null;
39
- getPageCenter(pageIndex: number): {
40
- x: number;
41
- y: number;
42
- } | null;
43
- private rebuildScaled;
44
- }
45
- export {};
46
- //# sourceMappingURL=ViewState.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ViewState.d.ts","sourceRoot":"","sources":["../../src/view/ViewState.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAE/E,MAAM,MAAM,WAAW,GAAG,QAAQ,GAAG,QAAQ,CAAC;AAE9C,MAAM,WAAW,gBAAiB,SAAQ,UAAU;IAChD,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;CACb;AAED,MAAM,WAAW,gBAAgB;IAC7B,IAAI,EAAE,UAAU,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,gBAAgB,EAAE,CAAC;IAC1B,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,UAAU,EAAE,MAAM,EAAE,CAAC;CACxB;AAED,UAAU,eAAe;IACrB,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,gBAAgB,CAAC;CAC1B;AAED,qBAAa,SAAS;IAClB,OAAO,CAAC,MAAM,CAA+C;IAC7D,OAAO,CAAC,WAAW,CAA0B;IAC7C,OAAO,CAAC,WAAW,CAAgB;IACnC,OAAO,CAAC,WAAW,CAAK;IACxB,OAAO,CAAC,UAAU,CAAK;IACvB,OAAO,CAAC,UAAU,CAAqC;IACvD,OAAO,CAAC,IAAI,CAAK;IAEjB,SAAS,CAAC,MAAM,EAAE,YAAY,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI;IAMnD,YAAY,IAAI,MAAM;IAItB,OAAO,CAAC,KAAK,EAAE,MAAM,GAAG,gBAAgB,GAAG,IAAI;IAI/C,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM;IAIpC,cAAc,IAAI,MAAM,EAAE;IAI1B,cAAc,IAAI,MAAM;IAIxB,aAAa,IAAI,MAAM;IAIvB,mBAAmB,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM;IAK9C,qBAAqB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM;IAsB9C,cAAc,CAAC,SAAS,EAAE,MAAM,GAAG,eAAe,GAAG,IAAI;IAIzD,aAAa,CAAC,SAAS,EAAE,MAAM,GAAG;QAAE,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI;IAWjE,OAAO,CAAC,aAAa;CAmCxB"}
@@ -1,109 +0,0 @@
1
- export class ViewState {
2
- layout = { bands: [], pageToBand: [] };
3
- scaledBands = [];
4
- bandOffsets = [];
5
- totalHeight = 0;
6
- totalWidth = 0;
7
- slotLookup = [];
8
- zoom = 1;
9
- setLayout(layout, zoom) {
10
- this.layout = layout;
11
- this.zoom = zoom;
12
- this.rebuildScaled();
13
- }
14
- getBandCount() {
15
- return this.layout.bands.length;
16
- }
17
- getBand(index) {
18
- return this.scaledBands[index] ?? null;
19
- }
20
- getBandOffset(index) {
21
- return this.bandOffsets[index] ?? 0;
22
- }
23
- getBandOffsets() {
24
- return this.bandOffsets.slice();
25
- }
26
- getTotalHeight() {
27
- return this.totalHeight;
28
- }
29
- getTotalWidth() {
30
- return this.totalWidth;
31
- }
32
- getBandIndexForPage(pageIndex) {
33
- const index = this.layout.pageToBand[pageIndex];
34
- return index === undefined || index < 0 ? 0 : index;
35
- }
36
- getBandIndexForOffset(offsetY) {
37
- if (this.scaledBands.length === 0)
38
- return 0;
39
- if (offsetY <= 0)
40
- return 0;
41
- if (offsetY >= this.totalHeight)
42
- return this.scaledBands.length - 1;
43
- let low = 0;
44
- let high = this.scaledBands.length - 1;
45
- while (low <= high) {
46
- const mid = Math.floor((low + high) / 2);
47
- const top = this.bandOffsets[mid];
48
- const bottom = top + this.scaledBands[mid].height;
49
- if (offsetY < top) {
50
- high = mid - 1;
51
- }
52
- else if (offsetY > bottom) {
53
- low = mid + 1;
54
- }
55
- else {
56
- return mid;
57
- }
58
- }
59
- return Math.max(0, Math.min(low, this.scaledBands.length - 1));
60
- }
61
- getSlotForPage(pageIndex) {
62
- return this.slotLookup[pageIndex] ?? null;
63
- }
64
- getPageCenter(pageIndex) {
65
- const entry = this.getSlotForPage(pageIndex);
66
- if (!entry)
67
- return null;
68
- const { slot, bandIndex } = entry;
69
- const bandTop = this.bandOffsets[bandIndex] ?? 0;
70
- return {
71
- x: slot.x + slot.width / 2,
72
- y: bandTop + slot.y + slot.height / 2,
73
- };
74
- }
75
- rebuildScaled() {
76
- this.scaledBands = this.layout.bands.map((band) => {
77
- const slots = band.slots.map((slot) => ({
78
- ...slot,
79
- width: slot.baseWidth * this.zoom,
80
- height: slot.baseHeight * this.zoom,
81
- x: slot.baseX * this.zoom,
82
- y: slot.baseY * this.zoom,
83
- }));
84
- return {
85
- band,
86
- width: band.baseWidth * this.zoom,
87
- height: band.baseHeight * this.zoom,
88
- slots,
89
- colWidths: band.colWidths.map((width) => width * this.zoom),
90
- rowHeights: band.rowHeights.map((height) => height * this.zoom),
91
- };
92
- });
93
- this.bandOffsets = [];
94
- this.totalHeight = 0;
95
- this.totalWidth = 0;
96
- for (const band of this.scaledBands) {
97
- this.bandOffsets.push(this.totalHeight);
98
- this.totalHeight += band.height;
99
- this.totalWidth = Math.max(this.totalWidth, band.width);
100
- }
101
- this.slotLookup = new Array(this.layout.pageToBand.length).fill(null);
102
- this.scaledBands.forEach((band, bandIndex) => {
103
- for (const slot of band.slots) {
104
- this.slotLookup[slot.pageIndex] = { bandIndex, slot };
105
- }
106
- });
107
- }
108
- }
109
- //# sourceMappingURL=ViewState.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ViewState.js","sourceRoot":"","sources":["../../src/view/ViewState.ts"],"names":[],"mappings":"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"}
@@ -1,7 +0,0 @@
1
- export { LayoutCalculator } from './LayoutCalculator';
2
- export type { PageSize, SlotLayout, BandLayout, LayoutResult, } from './LayoutCalculator';
3
- export { TransitionCoordinator } from './TransitionCoordinator';
4
- export type { BandWindow } from './TransitionCoordinator';
5
- export { ViewState } from './ViewState';
6
- export type { ScaledBandLayout, ScaledSlotLayout } from './ViewState';
7
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/view/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,YAAY,EACR,QAAQ,EACR,UAAU,EACV,UAAU,EACV,YAAY,GACf,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAChE,YAAY,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAC1D,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,YAAY,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC"}
@@ -1,4 +0,0 @@
1
- export { LayoutCalculator } from './LayoutCalculator';
2
- export { TransitionCoordinator } from './TransitionCoordinator';
3
- export { ViewState } from './ViewState';
4
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/view/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAOtD,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAEhE,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC"}