@docmentis/udoc-viewer 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (434) hide show
  1. package/README.md +180 -0
  2. package/dist/UDocClient.d.ts +197 -0
  3. package/dist/UDocClient.d.ts.map +1 -0
  4. package/dist/UDocClient.js +170 -0
  5. package/dist/UDocClient.js.map +1 -0
  6. package/dist/UDocViewer.d.ts +196 -0
  7. package/dist/UDocViewer.d.ts.map +1 -0
  8. package/dist/UDocViewer.js +427 -0
  9. package/dist/UDocViewer.js.map +1 -0
  10. package/dist/WorkerClient.d.ts +36 -0
  11. package/dist/WorkerClient.d.ts.map +1 -0
  12. package/dist/WorkerClient.js +121 -0
  13. package/dist/WorkerClient.js.map +1 -0
  14. package/dist/annotation/AnnotationLayer.d.ts +166 -0
  15. package/dist/annotation/AnnotationLayer.d.ts.map +1 -0
  16. package/dist/annotation/AnnotationLayer.js +1090 -0
  17. package/dist/annotation/AnnotationLayer.js.map +1 -0
  18. package/dist/annotation/index.d.ts +6 -0
  19. package/dist/annotation/index.d.ts.map +1 -0
  20. package/dist/annotation/index.js +6 -0
  21. package/dist/annotation/index.js.map +1 -0
  22. package/dist/components/FloatingBar.d.ts +102 -0
  23. package/dist/components/FloatingBar.d.ts.map +1 -0
  24. package/dist/components/FloatingBar.js +513 -0
  25. package/dist/components/FloatingBar.js.map +1 -0
  26. package/dist/components/Header.d.ts +46 -0
  27. package/dist/components/Header.d.ts.map +1 -0
  28. package/dist/components/Header.js +93 -0
  29. package/dist/components/Header.js.map +1 -0
  30. package/dist/components/index.d.ts +6 -0
  31. package/dist/components/index.d.ts.map +1 -0
  32. package/dist/components/index.js +4 -0
  33. package/dist/components/index.js.map +1 -0
  34. package/dist/components/panels/CommentsPanel.d.ts +33 -0
  35. package/dist/components/panels/CommentsPanel.d.ts.map +1 -0
  36. package/dist/components/panels/CommentsPanel.js +176 -0
  37. package/dist/components/panels/CommentsPanel.js.map +1 -0
  38. package/dist/components/panels/OutlinePanel.d.ts +30 -0
  39. package/dist/components/panels/OutlinePanel.d.ts.map +1 -0
  40. package/dist/components/panels/OutlinePanel.js +144 -0
  41. package/dist/components/panels/OutlinePanel.js.map +1 -0
  42. package/dist/components/panels/ThumbnailsPanel.d.ts +51 -0
  43. package/dist/components/panels/ThumbnailsPanel.d.ts.map +1 -0
  44. package/dist/components/panels/ThumbnailsPanel.js +160 -0
  45. package/dist/components/panels/ThumbnailsPanel.js.map +1 -0
  46. package/dist/components/panels/index.d.ts +7 -0
  47. package/dist/components/panels/index.d.ts.map +1 -0
  48. package/dist/components/panels/index.js +4 -0
  49. package/dist/components/panels/index.js.map +1 -0
  50. package/dist/constants.d.ts +25 -0
  51. package/dist/constants.d.ts.map +1 -0
  52. package/dist/constants.js +46 -0
  53. package/dist/constants.js.map +1 -0
  54. package/dist/core/NavigationController.d.ts +54 -0
  55. package/dist/core/NavigationController.d.ts.map +1 -0
  56. package/dist/core/NavigationController.js +145 -0
  57. package/dist/core/NavigationController.js.map +1 -0
  58. package/dist/core/PerfTimer.d.ts +12 -0
  59. package/dist/core/PerfTimer.d.ts.map +1 -0
  60. package/dist/core/PerfTimer.js +32 -0
  61. package/dist/core/PerfTimer.js.map +1 -0
  62. package/dist/core/ViewerState.d.ts +108 -0
  63. package/dist/core/ViewerState.d.ts.map +1 -0
  64. package/dist/core/ViewerState.js +179 -0
  65. package/dist/core/ViewerState.js.map +1 -0
  66. package/dist/core/constants.d.ts +24 -0
  67. package/dist/core/constants.d.ts.map +1 -0
  68. package/dist/core/constants.js +42 -0
  69. package/dist/core/constants.js.map +1 -0
  70. package/dist/core/index.d.ts +8 -0
  71. package/dist/core/index.d.ts.map +1 -0
  72. package/dist/core/index.js +11 -0
  73. package/dist/core/index.js.map +1 -0
  74. package/dist/core/types.d.ts +573 -0
  75. package/dist/core/types.d.ts.map +1 -0
  76. package/dist/core/types.js +5 -0
  77. package/dist/core/types.js.map +1 -0
  78. package/dist/icons/icons.d.ts +41 -0
  79. package/dist/icons/icons.d.ts.map +1 -0
  80. package/dist/icons/icons.js +51 -0
  81. package/dist/icons/icons.js.map +1 -0
  82. package/dist/icons/index.d.ts +3 -0
  83. package/dist/icons/index.d.ts.map +1 -0
  84. package/dist/icons/index.js +2 -0
  85. package/dist/icons/index.js.map +1 -0
  86. package/dist/index.d.ts +7 -0
  87. package/dist/index.d.ts.map +1 -0
  88. package/dist/index.js +6 -0
  89. package/dist/index.js.map +1 -0
  90. package/dist/layout/BandManager.d.ts +87 -0
  91. package/dist/layout/BandManager.d.ts.map +1 -0
  92. package/dist/layout/BandManager.js +185 -0
  93. package/dist/layout/BandManager.js.map +1 -0
  94. package/dist/layout/LayoutCalculator.d.ts +42 -0
  95. package/dist/layout/LayoutCalculator.d.ts.map +1 -0
  96. package/dist/layout/LayoutCalculator.js +180 -0
  97. package/dist/layout/LayoutCalculator.js.map +1 -0
  98. package/dist/layout/LayoutState.d.ts +46 -0
  99. package/dist/layout/LayoutState.d.ts.map +1 -0
  100. package/dist/layout/LayoutState.js +109 -0
  101. package/dist/layout/LayoutState.js.map +1 -0
  102. package/dist/layout/TransitionCoordinator.d.ts +11 -0
  103. package/dist/layout/TransitionCoordinator.d.ts.map +1 -0
  104. package/dist/layout/TransitionCoordinator.js +22 -0
  105. package/dist/layout/TransitionCoordinator.js.map +1 -0
  106. package/dist/layout/index.d.ts +7 -0
  107. package/dist/layout/index.d.ts.map +1 -0
  108. package/dist/layout/index.js +4 -0
  109. package/dist/layout/index.js.map +1 -0
  110. package/dist/rendering/BandManager.d.ts +87 -0
  111. package/dist/rendering/BandManager.d.ts.map +1 -0
  112. package/dist/rendering/BandManager.js +185 -0
  113. package/dist/rendering/BandManager.js.map +1 -0
  114. package/dist/rendering/PageCache.d.ts +75 -0
  115. package/dist/rendering/PageCache.d.ts.map +1 -0
  116. package/dist/rendering/PageCache.js +122 -0
  117. package/dist/rendering/PageCache.js.map +1 -0
  118. package/dist/rendering/RenderQueue.d.ts +75 -0
  119. package/dist/rendering/RenderQueue.d.ts.map +1 -0
  120. package/dist/rendering/RenderQueue.js +105 -0
  121. package/dist/rendering/RenderQueue.js.map +1 -0
  122. package/dist/rendering/ThumbnailQueue.d.ts +57 -0
  123. package/dist/rendering/ThumbnailQueue.d.ts.map +1 -0
  124. package/dist/rendering/ThumbnailQueue.js +85 -0
  125. package/dist/rendering/ThumbnailQueue.js.map +1 -0
  126. package/dist/rendering/index.d.ts +13 -0
  127. package/dist/rendering/index.d.ts.map +1 -0
  128. package/dist/rendering/index.js +10 -0
  129. package/dist/rendering/index.js.map +1 -0
  130. package/dist/rendering/types.d.ts +72 -0
  131. package/dist/rendering/types.d.ts.map +1 -0
  132. package/dist/rendering/types.js +5 -0
  133. package/dist/rendering/types.js.map +1 -0
  134. package/dist/styles/index.d.ts +6 -0
  135. package/dist/styles/index.d.ts.map +1 -0
  136. package/dist/styles/index.js +1221 -0
  137. package/dist/styles/index.js.map +1 -0
  138. package/dist/types.d.ts +6 -0
  139. package/dist/types.d.ts.map +1 -0
  140. package/dist/types.js +6 -0
  141. package/dist/types.js.map +1 -0
  142. package/dist/ui/Component.d.ts +127 -0
  143. package/dist/ui/Component.d.ts.map +1 -0
  144. package/dist/ui/Component.js +201 -0
  145. package/dist/ui/Component.js.map +1 -0
  146. package/dist/ui/annotation/AnnotationLayer.d.ts +90 -0
  147. package/dist/ui/annotation/AnnotationLayer.d.ts.map +1 -0
  148. package/dist/ui/annotation/AnnotationLayer.js +322 -0
  149. package/dist/ui/annotation/AnnotationLayer.js.map +1 -0
  150. package/dist/ui/annotation/LinkRenderer.d.ts +32 -0
  151. package/dist/ui/annotation/LinkRenderer.d.ts.map +1 -0
  152. package/dist/ui/annotation/LinkRenderer.js +74 -0
  153. package/dist/ui/annotation/LinkRenderer.js.map +1 -0
  154. package/dist/ui/annotation/MarkupRenderer.d.ts +40 -0
  155. package/dist/ui/annotation/MarkupRenderer.d.ts.map +1 -0
  156. package/dist/ui/annotation/MarkupRenderer.js +154 -0
  157. package/dist/ui/annotation/MarkupRenderer.js.map +1 -0
  158. package/dist/ui/annotation/ShapeRenderer.d.ts +46 -0
  159. package/dist/ui/annotation/ShapeRenderer.d.ts.map +1 -0
  160. package/dist/ui/annotation/ShapeRenderer.js +376 -0
  161. package/dist/ui/annotation/ShapeRenderer.js.map +1 -0
  162. package/dist/ui/annotation/TextRenderer.d.ts +36 -0
  163. package/dist/ui/annotation/TextRenderer.d.ts.map +1 -0
  164. package/dist/ui/annotation/TextRenderer.js +199 -0
  165. package/dist/ui/annotation/TextRenderer.js.map +1 -0
  166. package/dist/ui/annotation/index.d.ts +17 -0
  167. package/dist/ui/annotation/index.d.ts.map +1 -0
  168. package/dist/ui/annotation/index.js +13 -0
  169. package/dist/ui/annotation/index.js.map +1 -0
  170. package/dist/ui/annotation/utils.d.ts +40 -0
  171. package/dist/ui/annotation/utils.d.ts.map +1 -0
  172. package/dist/ui/annotation/utils.js +62 -0
  173. package/dist/ui/annotation/utils.js.map +1 -0
  174. package/dist/ui/components/CommentsContent.d.ts +35 -0
  175. package/dist/ui/components/CommentsContent.d.ts.map +1 -0
  176. package/dist/ui/components/CommentsContent.js +203 -0
  177. package/dist/ui/components/CommentsContent.js.map +1 -0
  178. package/dist/ui/components/FloatingBar.d.ts +55 -0
  179. package/dist/ui/components/FloatingBar.d.ts.map +1 -0
  180. package/dist/ui/components/FloatingBar.js +585 -0
  181. package/dist/ui/components/FloatingBar.js.map +1 -0
  182. package/dist/ui/components/Header.d.ts +29 -0
  183. package/dist/ui/components/Header.d.ts.map +1 -0
  184. package/dist/ui/components/Header.js +127 -0
  185. package/dist/ui/components/Header.js.map +1 -0
  186. package/dist/ui/components/LeftPanel.d.ts +54 -0
  187. package/dist/ui/components/LeftPanel.d.ts.map +1 -0
  188. package/dist/ui/components/LeftPanel.js +202 -0
  189. package/dist/ui/components/LeftPanel.js.map +1 -0
  190. package/dist/ui/components/OutlineContent.d.ts +34 -0
  191. package/dist/ui/components/OutlineContent.d.ts.map +1 -0
  192. package/dist/ui/components/OutlineContent.js +147 -0
  193. package/dist/ui/components/OutlineContent.js.map +1 -0
  194. package/dist/ui/components/RightPanel.d.ts +52 -0
  195. package/dist/ui/components/RightPanel.d.ts.map +1 -0
  196. package/dist/ui/components/RightPanel.js +142 -0
  197. package/dist/ui/components/RightPanel.js.map +1 -0
  198. package/dist/ui/components/Viewport.d.ts +70 -0
  199. package/dist/ui/components/Viewport.d.ts.map +1 -0
  200. package/dist/ui/components/Viewport.js +173 -0
  201. package/dist/ui/components/Viewport.js.map +1 -0
  202. package/dist/ui/components/index.d.ts +11 -0
  203. package/dist/ui/components/index.d.ts.map +1 -0
  204. package/dist/ui/components/index.js +10 -0
  205. package/dist/ui/components/index.js.map +1 -0
  206. package/dist/ui/framework/component.d.ts +68 -0
  207. package/dist/ui/framework/component.d.ts.map +1 -0
  208. package/dist/ui/framework/component.js +87 -0
  209. package/dist/ui/framework/component.js.map +1 -0
  210. package/dist/ui/framework/dom.d.ts +19 -0
  211. package/dist/ui/framework/dom.d.ts.map +1 -0
  212. package/dist/ui/framework/dom.js +29 -0
  213. package/dist/ui/framework/dom.js.map +1 -0
  214. package/dist/ui/framework/events.d.ts +18 -0
  215. package/dist/ui/framework/events.d.ts.map +1 -0
  216. package/dist/ui/framework/events.js +23 -0
  217. package/dist/ui/framework/events.js.map +1 -0
  218. package/dist/ui/framework/index.d.ts +15 -0
  219. package/dist/ui/framework/index.d.ts.map +1 -0
  220. package/dist/ui/framework/index.js +15 -0
  221. package/dist/ui/framework/index.js.map +1 -0
  222. package/dist/ui/framework/selectors.d.ts +51 -0
  223. package/dist/ui/framework/selectors.d.ts.map +1 -0
  224. package/dist/ui/framework/selectors.js +30 -0
  225. package/dist/ui/framework/selectors.js.map +1 -0
  226. package/dist/ui/framework/store.d.ts +37 -0
  227. package/dist/ui/framework/store.d.ts.map +1 -0
  228. package/dist/ui/framework/store.js +54 -0
  229. package/dist/ui/framework/store.js.map +1 -0
  230. package/dist/ui/icons/icons.d.ts +43 -0
  231. package/dist/ui/icons/icons.d.ts.map +1 -0
  232. package/dist/ui/icons/icons.js +46 -0
  233. package/dist/ui/icons/icons.js.map +1 -0
  234. package/dist/ui/icons/index.d.ts +11 -0
  235. package/dist/ui/icons/index.d.ts.map +1 -0
  236. package/dist/ui/icons/index.js +18 -0
  237. package/dist/ui/icons/index.js.map +1 -0
  238. package/dist/ui/index.d.ts +7 -0
  239. package/dist/ui/index.d.ts.map +1 -0
  240. package/dist/ui/index.js +9 -0
  241. package/dist/ui/index.js.map +1 -0
  242. package/dist/ui/styles/base.css.d.ts +5 -0
  243. package/dist/ui/styles/base.css.d.ts.map +1 -0
  244. package/dist/ui/styles/base.css.js +49 -0
  245. package/dist/ui/styles/base.css.js.map +1 -0
  246. package/dist/ui/styles/floating-bar.css.d.ts +5 -0
  247. package/dist/ui/styles/floating-bar.css.d.ts.map +1 -0
  248. package/dist/ui/styles/floating-bar.css.js +417 -0
  249. package/dist/ui/styles/floating-bar.css.js.map +1 -0
  250. package/dist/ui/styles/header.css.d.ts +5 -0
  251. package/dist/ui/styles/header.css.d.ts.map +1 -0
  252. package/dist/ui/styles/header.css.js +49 -0
  253. package/dist/ui/styles/header.css.js.map +1 -0
  254. package/dist/ui/styles/index.d.ts +21 -0
  255. package/dist/ui/styles/index.d.ts.map +1 -0
  256. package/dist/ui/styles/index.js +48 -0
  257. package/dist/ui/styles/index.js.map +1 -0
  258. package/dist/ui/styles/panels.css.d.ts +5 -0
  259. package/dist/ui/styles/panels.css.d.ts.map +1 -0
  260. package/dist/ui/styles/panels.css.js +446 -0
  261. package/dist/ui/styles/panels.css.js.map +1 -0
  262. package/dist/ui/styles/responsive.css.d.ts +5 -0
  263. package/dist/ui/styles/responsive.css.d.ts.map +1 -0
  264. package/dist/ui/styles/responsive.css.js +201 -0
  265. package/dist/ui/styles/responsive.css.js.map +1 -0
  266. package/dist/ui/styles/variables.css.d.ts +6 -0
  267. package/dist/ui/styles/variables.css.d.ts.map +1 -0
  268. package/dist/ui/styles/variables.css.js +75 -0
  269. package/dist/ui/styles/variables.css.js.map +1 -0
  270. package/dist/ui/styles/viewport.css.d.ts +5 -0
  271. package/dist/ui/styles/viewport.css.d.ts.map +1 -0
  272. package/dist/ui/styles/viewport.css.js +87 -0
  273. package/dist/ui/styles/viewport.css.js.map +1 -0
  274. package/dist/ui/viewer/actions.d.ts +103 -0
  275. package/dist/ui/viewer/actions.d.ts.map +1 -0
  276. package/dist/ui/viewer/actions.js +2 -0
  277. package/dist/ui/viewer/actions.js.map +1 -0
  278. package/dist/ui/viewer/annotation/LinkRenderer.d.ts +9 -0
  279. package/dist/ui/viewer/annotation/LinkRenderer.d.ts.map +1 -0
  280. package/dist/ui/viewer/annotation/LinkRenderer.js +17 -0
  281. package/dist/ui/viewer/annotation/LinkRenderer.js.map +1 -0
  282. package/dist/ui/viewer/annotation/MarkupRenderer.d.ts +21 -0
  283. package/dist/ui/viewer/annotation/MarkupRenderer.d.ts.map +1 -0
  284. package/dist/ui/viewer/annotation/MarkupRenderer.js +138 -0
  285. package/dist/ui/viewer/annotation/MarkupRenderer.js.map +1 -0
  286. package/dist/ui/viewer/annotation/ShapeRenderer.d.ts +33 -0
  287. package/dist/ui/viewer/annotation/ShapeRenderer.d.ts.map +1 -0
  288. package/dist/ui/viewer/annotation/ShapeRenderer.js +378 -0
  289. package/dist/ui/viewer/annotation/ShapeRenderer.js.map +1 -0
  290. package/dist/ui/viewer/annotation/TextRenderer.d.ts +23 -0
  291. package/dist/ui/viewer/annotation/TextRenderer.d.ts.map +1 -0
  292. package/dist/ui/viewer/annotation/TextRenderer.js +196 -0
  293. package/dist/ui/viewer/annotation/TextRenderer.js.map +1 -0
  294. package/dist/ui/viewer/annotation/index.d.ts +8 -0
  295. package/dist/ui/viewer/annotation/index.d.ts.map +1 -0
  296. package/dist/ui/viewer/annotation/index.js +8 -0
  297. package/dist/ui/viewer/annotation/index.js.map +1 -0
  298. package/dist/ui/viewer/annotation/render.d.ts +24 -0
  299. package/dist/ui/viewer/annotation/render.d.ts.map +1 -0
  300. package/dist/ui/viewer/annotation/render.js +184 -0
  301. package/dist/ui/viewer/annotation/render.js.map +1 -0
  302. package/dist/ui/viewer/annotation/types.d.ts +239 -0
  303. package/dist/ui/viewer/annotation/types.d.ts.map +1 -0
  304. package/dist/ui/viewer/annotation/types.js +7 -0
  305. package/dist/ui/viewer/annotation/types.js.map +1 -0
  306. package/dist/ui/viewer/annotation/utils.d.ts +37 -0
  307. package/dist/ui/viewer/annotation/utils.d.ts.map +1 -0
  308. package/dist/ui/viewer/annotation/utils.js +82 -0
  309. package/dist/ui/viewer/annotation/utils.js.map +1 -0
  310. package/dist/ui/viewer/components/AnnotationPanel.d.ts +19 -0
  311. package/dist/ui/viewer/components/AnnotationPanel.d.ts.map +1 -0
  312. package/dist/ui/viewer/components/AnnotationPanel.js +284 -0
  313. package/dist/ui/viewer/components/AnnotationPanel.js.map +1 -0
  314. package/dist/ui/viewer/components/FloatingToolbar.d.ts +9 -0
  315. package/dist/ui/viewer/components/FloatingToolbar.d.ts.map +1 -0
  316. package/dist/ui/viewer/components/FloatingToolbar.js +305 -0
  317. package/dist/ui/viewer/components/FloatingToolbar.js.map +1 -0
  318. package/dist/ui/viewer/components/LeftPanel.d.ts +10 -0
  319. package/dist/ui/viewer/components/LeftPanel.d.ts.map +1 -0
  320. package/dist/ui/viewer/components/LeftPanel.js +165 -0
  321. package/dist/ui/viewer/components/LeftPanel.js.map +1 -0
  322. package/dist/ui/viewer/components/OutlinePanel.d.ts +10 -0
  323. package/dist/ui/viewer/components/OutlinePanel.d.ts.map +1 -0
  324. package/dist/ui/viewer/components/OutlinePanel.js +169 -0
  325. package/dist/ui/viewer/components/OutlinePanel.js.map +1 -0
  326. package/dist/ui/viewer/components/RightPanel.d.ts +9 -0
  327. package/dist/ui/viewer/components/RightPanel.d.ts.map +1 -0
  328. package/dist/ui/viewer/components/RightPanel.js +102 -0
  329. package/dist/ui/viewer/components/RightPanel.js.map +1 -0
  330. package/dist/ui/viewer/components/Spread.d.ts +41 -0
  331. package/dist/ui/viewer/components/Spread.d.ts.map +1 -0
  332. package/dist/ui/viewer/components/Spread.js +278 -0
  333. package/dist/ui/viewer/components/Spread.js.map +1 -0
  334. package/dist/ui/viewer/components/ThumbnailPanel.d.ts +11 -0
  335. package/dist/ui/viewer/components/ThumbnailPanel.d.ts.map +1 -0
  336. package/dist/ui/viewer/components/ThumbnailPanel.js +206 -0
  337. package/dist/ui/viewer/components/ThumbnailPanel.js.map +1 -0
  338. package/dist/ui/viewer/components/Toolbar.d.ts +9 -0
  339. package/dist/ui/viewer/components/Toolbar.d.ts.map +1 -0
  340. package/dist/ui/viewer/components/Toolbar.js +93 -0
  341. package/dist/ui/viewer/components/Toolbar.js.map +1 -0
  342. package/dist/ui/viewer/components/ViewModeMenu.d.ts +9 -0
  343. package/dist/ui/viewer/components/ViewModeMenu.d.ts.map +1 -0
  344. package/dist/ui/viewer/components/ViewModeMenu.js +169 -0
  345. package/dist/ui/viewer/components/ViewModeMenu.js.map +1 -0
  346. package/dist/ui/viewer/components/Viewport.d.ts +10 -0
  347. package/dist/ui/viewer/components/Viewport.d.ts.map +1 -0
  348. package/dist/ui/viewer/components/Viewport.js +793 -0
  349. package/dist/ui/viewer/components/Viewport.js.map +1 -0
  350. package/dist/ui/viewer/effects.d.ts +9 -0
  351. package/dist/ui/viewer/effects.d.ts.map +1 -0
  352. package/dist/ui/viewer/effects.js +179 -0
  353. package/dist/ui/viewer/effects.js.map +1 -0
  354. package/dist/ui/viewer/icons.d.ts +32 -0
  355. package/dist/ui/viewer/icons.d.ts.map +1 -0
  356. package/dist/ui/viewer/icons.js +44 -0
  357. package/dist/ui/viewer/icons.js.map +1 -0
  358. package/dist/ui/viewer/index.d.ts +6 -0
  359. package/dist/ui/viewer/index.d.ts.map +1 -0
  360. package/dist/ui/viewer/index.js +6 -0
  361. package/dist/ui/viewer/index.js.map +1 -0
  362. package/dist/ui/viewer/layout/index.d.ts +3 -0
  363. package/dist/ui/viewer/layout/index.d.ts.map +1 -0
  364. package/dist/ui/viewer/layout/index.js +3 -0
  365. package/dist/ui/viewer/layout/index.js.map +1 -0
  366. package/dist/ui/viewer/layout/pixelAlign.d.ts +7 -0
  367. package/dist/ui/viewer/layout/pixelAlign.d.ts.map +1 -0
  368. package/dist/ui/viewer/layout/pixelAlign.js +22 -0
  369. package/dist/ui/viewer/layout/pixelAlign.js.map +1 -0
  370. package/dist/ui/viewer/layout/spreadLayout.d.ts +93 -0
  371. package/dist/ui/viewer/layout/spreadLayout.d.ts.map +1 -0
  372. package/dist/ui/viewer/layout/spreadLayout.js +303 -0
  373. package/dist/ui/viewer/layout/spreadLayout.js.map +1 -0
  374. package/dist/ui/viewer/navigation.d.ts +80 -0
  375. package/dist/ui/viewer/navigation.d.ts.map +1 -0
  376. package/dist/ui/viewer/navigation.js +59 -0
  377. package/dist/ui/viewer/navigation.js.map +1 -0
  378. package/dist/ui/viewer/reducer.d.ts +4 -0
  379. package/dist/ui/viewer/reducer.d.ts.map +1 -0
  380. package/dist/ui/viewer/reducer.js +229 -0
  381. package/dist/ui/viewer/reducer.js.map +1 -0
  382. package/dist/ui/viewer/rendering/RenderManager.d.ts +76 -0
  383. package/dist/ui/viewer/rendering/RenderManager.d.ts.map +1 -0
  384. package/dist/ui/viewer/rendering/RenderManager.js +236 -0
  385. package/dist/ui/viewer/rendering/RenderManager.js.map +1 -0
  386. package/dist/ui/viewer/shell.d.ts +29 -0
  387. package/dist/ui/viewer/shell.d.ts.map +1 -0
  388. package/dist/ui/viewer/shell.js +70 -0
  389. package/dist/ui/viewer/shell.js.map +1 -0
  390. package/dist/ui/viewer/state.d.ts +72 -0
  391. package/dist/ui/viewer/state.d.ts.map +1 -0
  392. package/dist/ui/viewer/state.js +47 -0
  393. package/dist/ui/viewer/state.js.map +1 -0
  394. package/dist/view/LayoutCalculator.d.ts +42 -0
  395. package/dist/view/LayoutCalculator.d.ts.map +1 -0
  396. package/dist/view/LayoutCalculator.js +180 -0
  397. package/dist/view/LayoutCalculator.js.map +1 -0
  398. package/dist/view/TransitionCoordinator.d.ts +11 -0
  399. package/dist/view/TransitionCoordinator.d.ts.map +1 -0
  400. package/dist/view/TransitionCoordinator.js +22 -0
  401. package/dist/view/TransitionCoordinator.js.map +1 -0
  402. package/dist/view/ViewState.d.ts +46 -0
  403. package/dist/view/ViewState.d.ts.map +1 -0
  404. package/dist/view/ViewState.js +109 -0
  405. package/dist/view/ViewState.js.map +1 -0
  406. package/dist/view/index.d.ts +7 -0
  407. package/dist/view/index.d.ts.map +1 -0
  408. package/dist/view/index.js +4 -0
  409. package/dist/view/index.js.map +1 -0
  410. package/dist/wasm/udoc.d.ts +202 -0
  411. package/dist/wasm/udoc.js +929 -0
  412. package/dist/wasm/udoc_bg.wasm +0 -0
  413. package/dist/wasm/udoc_bg.wasm.d.ts +28 -0
  414. package/dist/worker/WorkerClient.d.ts +103 -0
  415. package/dist/worker/WorkerClient.d.ts.map +1 -0
  416. package/dist/worker/WorkerClient.js +182 -0
  417. package/dist/worker/WorkerClient.js.map +1 -0
  418. package/dist/worker/index.d.ts +4 -0
  419. package/dist/worker/index.d.ts.map +1 -0
  420. package/dist/worker/index.js +2 -0
  421. package/dist/worker/index.js.map +1 -0
  422. package/dist/worker/types.d.ts +81 -0
  423. package/dist/worker/types.d.ts.map +1 -0
  424. package/dist/worker/types.js +6 -0
  425. package/dist/worker/types.js.map +1 -0
  426. package/dist/worker/worker.d.ts +191 -0
  427. package/dist/worker/worker.d.ts.map +1 -0
  428. package/dist/worker/worker.js +127 -0
  429. package/dist/worker/worker.js.map +1 -0
  430. package/dist/worker.d.ts +2 -0
  431. package/dist/worker.d.ts.map +1 -0
  432. package/dist/worker.js +205 -0
  433. package/dist/worker.js.map +1 -0
  434. package/package.json +32 -0
@@ -0,0 +1,1221 @@
1
+ /**
2
+ * Viewer CSS styles exported as a string for runtime injection.
3
+ * This maintains backward compatibility - users don't need to manually include CSS.
4
+ */
5
+ export const VIEWER_STYLES = `/* Root container */
6
+ .udoc-viewer-root {
7
+ width: 100%;
8
+ height: 100%;
9
+ display: flex;
10
+ flex-direction: column;
11
+ overflow: hidden;
12
+ font-family: system-ui, -apple-system, sans-serif;
13
+ background: #e0e0e0;
14
+ }
15
+
16
+ /* Header bar */
17
+ .udoc-header {
18
+ height: 40px;
19
+ background: #fff;
20
+ border-bottom: 1px solid #e0e0e0;
21
+ display: flex;
22
+ align-items: center;
23
+ padding: 0 8px;
24
+ flex-shrink: 0;
25
+ gap: 8px;
26
+ }
27
+
28
+ .udoc-header-btn {
29
+ background: none;
30
+ border: none;
31
+ cursor: pointer;
32
+ padding: 6px;
33
+ border-radius: 4px;
34
+ display: flex;
35
+ align-items: center;
36
+ justify-content: center;
37
+ color: #555;
38
+ }
39
+
40
+ .udoc-header-btn:hover {
41
+ background: #f0f0f0;
42
+ }
43
+
44
+ .udoc-header-btn svg {
45
+ width: 20px;
46
+ height: 20px;
47
+ }
48
+
49
+
50
+ .udoc-header-actions {
51
+ display: flex;
52
+ gap: 4px;
53
+ margin-left: auto;
54
+ }
55
+
56
+ /* Main content area */
57
+ .udoc-main {
58
+ flex: 1;
59
+ display: flex;
60
+ overflow: hidden;
61
+ position: relative;
62
+ }
63
+
64
+ /* Panels */
65
+ .udoc-panel {
66
+ display: flex;
67
+ background: #f8f9fa;
68
+ flex-shrink: 0;
69
+ transition: width 0.2s ease;
70
+ overflow: hidden;
71
+ }
72
+
73
+ .udoc-panel.collapsed {
74
+ width: 0 !important;
75
+ }
76
+
77
+ .udoc-panel.left {
78
+ border-right: 1px solid #e0e0e0;
79
+ flex-direction: row;
80
+ }
81
+
82
+ .udoc-panel.right {
83
+ border-left: 1px solid #e0e0e0;
84
+ }
85
+
86
+ .udoc-panel.no-tabs {
87
+ flex-direction: row;
88
+ }
89
+
90
+ .udoc-header-btn.active {
91
+ background: #e0e0e0;
92
+ color: #3498db;
93
+ }
94
+
95
+ .udoc-panel-tabs {
96
+ width: 36px;
97
+ display: flex;
98
+ flex-direction: column;
99
+ padding: 8px 0;
100
+ gap: 4px;
101
+ background: #f0f0f0;
102
+ flex-shrink: 0;
103
+ }
104
+
105
+ .udoc-panel.left .udoc-panel-tabs {
106
+ border-right: 1px solid #e0e0e0;
107
+ }
108
+
109
+ .udoc-panel.right .udoc-panel-tabs {
110
+ border-left: 1px solid #e0e0e0;
111
+ }
112
+
113
+ .udoc-panel-tab {
114
+ width: 28px;
115
+ height: 28px;
116
+ margin: 0 4px;
117
+ border: none;
118
+ background: none;
119
+ border-radius: 4px;
120
+ cursor: pointer;
121
+ display: flex;
122
+ align-items: center;
123
+ justify-content: center;
124
+ color: #666;
125
+ }
126
+
127
+ .udoc-panel-tab:hover {
128
+ background: #e0e0e0;
129
+ }
130
+
131
+ .udoc-panel-tab.selected {
132
+ background: #fff;
133
+ color: #3498db;
134
+ }
135
+
136
+ .udoc-panel-tab svg {
137
+ width: 20px;
138
+ height: 20px;
139
+ }
140
+
141
+ .udoc-panel-content {
142
+ flex: 1;
143
+ overflow-y: auto;
144
+ overflow-x: hidden;
145
+ min-width: 0;
146
+ padding: 8px;
147
+ display: flex;
148
+ flex-direction: column;
149
+ gap: 8px;
150
+ }
151
+
152
+ .udoc-panel-resize {
153
+ width: 4px;
154
+ cursor: col-resize;
155
+ background: transparent;
156
+ transition: background 0.15s;
157
+ flex-shrink: 0;
158
+ }
159
+
160
+ .udoc-panel-resize:hover,
161
+ .udoc-panel-resize.resizing {
162
+ background: #3498db;
163
+ }
164
+
165
+ .udoc-panel-placeholder {
166
+ padding: 24px 16px;
167
+ text-align: center;
168
+ color: #999;
169
+ font-size: 13px;
170
+ display: flex;
171
+ flex-direction: column;
172
+ align-items: center;
173
+ gap: 8px;
174
+ }
175
+
176
+ .udoc-panel-placeholder svg {
177
+ width: 32px;
178
+ height: 32px;
179
+ opacity: 0.5;
180
+ }
181
+
182
+ /* Comments panel */
183
+ .udoc-comments-list {
184
+ padding: 0;
185
+ }
186
+
187
+ .udoc-comments-page-group {
188
+ border-bottom: 1px solid #e0e0e0;
189
+ }
190
+
191
+ .udoc-comments-page-group:last-child {
192
+ border-bottom: none;
193
+ }
194
+
195
+ .udoc-comments-page-header {
196
+ display: flex;
197
+ align-items: center;
198
+ gap: 6px;
199
+ padding: 10px 12px;
200
+ font-size: 12px;
201
+ font-weight: 600;
202
+ color: #333;
203
+ background: #f5f5f5;
204
+ cursor: pointer;
205
+ user-select: none;
206
+ transition: background 0.15s;
207
+ }
208
+
209
+ .udoc-comments-page-header:hover {
210
+ background: #eee;
211
+ }
212
+
213
+ .udoc-comments-page-header svg {
214
+ width: 16px;
215
+ height: 16px;
216
+ color: #666;
217
+ transition: transform 0.2s;
218
+ }
219
+
220
+ .udoc-comments-page-collapsed .udoc-comments-page-header svg {
221
+ transform: rotate(-90deg);
222
+ }
223
+
224
+ .udoc-comments-page-count {
225
+ margin-left: auto;
226
+ font-size: 11px;
227
+ font-weight: 500;
228
+ color: #888;
229
+ background: #e0e0e0;
230
+ padding: 2px 6px;
231
+ border-radius: 10px;
232
+ }
233
+
234
+ .udoc-comments-page-content {
235
+ overflow: hidden;
236
+ transition: max-height 0.2s ease-out, opacity 0.2s ease-out;
237
+ }
238
+
239
+ .udoc-comments-page-collapsed .udoc-comments-page-content {
240
+ max-height: 0;
241
+ opacity: 0;
242
+ }
243
+
244
+ .udoc-comment-item {
245
+ display: flex;
246
+ gap: 8px;
247
+ padding: 10px 12px;
248
+ cursor: pointer;
249
+ transition: background 0.15s;
250
+ }
251
+
252
+ .udoc-comment-item:hover {
253
+ background: #f5f7f9;
254
+ }
255
+
256
+ .udoc-comment-reply {
257
+ background: transparent;
258
+ }
259
+
260
+ .udoc-comment-depth-1 {
261
+ padding-left: 36px;
262
+ }
263
+
264
+ .udoc-comment-depth-2 {
265
+ padding-left: 56px;
266
+ }
267
+
268
+ .udoc-comment-depth-3 {
269
+ padding-left: 76px;
270
+ }
271
+
272
+ .udoc-comment-reply:hover {
273
+ background: #f5f7f9;
274
+ }
275
+
276
+ .udoc-comment-icon {
277
+ flex-shrink: 0;
278
+ display: flex;
279
+ align-items: flex-start;
280
+ padding-top: 2px;
281
+ color: #888;
282
+ }
283
+
284
+ .udoc-comment-icon svg {
285
+ width: 16px;
286
+ height: 16px;
287
+ }
288
+
289
+ .udoc-comment-body {
290
+ flex: 1;
291
+ min-width: 0;
292
+ }
293
+
294
+ .udoc-comment-header {
295
+ display: flex;
296
+ align-items: center;
297
+ gap: 6px;
298
+ margin-bottom: 4px;
299
+ }
300
+
301
+ .udoc-comment-author {
302
+ font-size: 12px;
303
+ font-weight: 600;
304
+ color: #333;
305
+ }
306
+
307
+ .udoc-comment-status {
308
+ font-size: 10px;
309
+ font-weight: 500;
310
+ padding: 2px 6px;
311
+ border-radius: 3px;
312
+ margin-left: auto;
313
+ }
314
+
315
+ .udoc-comment-status-accepted {
316
+ background: #d4edda;
317
+ color: #155724;
318
+ }
319
+
320
+ .udoc-comment-status-rejected,
321
+ .udoc-comment-status-cancelled {
322
+ background: #f8d7da;
323
+ color: #721c24;
324
+ }
325
+
326
+ .udoc-comment-status-completed {
327
+ background: #cce5ff;
328
+ color: #004085;
329
+ }
330
+
331
+ .udoc-comment-status-marked {
332
+ background: #fff3cd;
333
+ color: #856404;
334
+ }
335
+
336
+ .udoc-comment-status-none,
337
+ .udoc-comment-status-unmarked {
338
+ background: #e2e3e5;
339
+ color: #383d41;
340
+ }
341
+
342
+ .udoc-comment-contents {
343
+ font-size: 12px;
344
+ color: #666;
345
+ line-height: 1.4;
346
+ white-space: pre-wrap;
347
+ word-break: break-word;
348
+ }
349
+
350
+ .udoc-comment-toggle {
351
+ display: flex;
352
+ align-items: center;
353
+ gap: 4px;
354
+ margin-top: 8px;
355
+ padding: 2px 0;
356
+ background: transparent;
357
+ border: none;
358
+ font-size: 11px;
359
+ color: #888;
360
+ cursor: pointer;
361
+ transition: color 0.15s;
362
+ }
363
+
364
+ .udoc-comment-toggle:hover {
365
+ color: #333;
366
+ }
367
+
368
+ .udoc-comment-toggle svg {
369
+ width: 14px;
370
+ height: 14px;
371
+ transition: transform 0.2s;
372
+ }
373
+
374
+ .udoc-comment-toggle-expanded svg {
375
+ transform: rotate(90deg);
376
+ }
377
+
378
+ .udoc-comment-replies {
379
+ margin-top: 4px;
380
+ margin-bottom: 4px;
381
+ overflow: hidden;
382
+ transition: max-height 0.2s ease-out, opacity 0.2s ease-out, margin 0.2s ease-out;
383
+ }
384
+
385
+ .udoc-comment-replies-collapsed {
386
+ max-height: 0;
387
+ opacity: 0;
388
+ pointer-events: none;
389
+ margin-top: 0;
390
+ margin-bottom: 0;
391
+ }
392
+
393
+ .udoc-thumbnail {
394
+ cursor: pointer;
395
+ border: 2px solid transparent;
396
+ border-radius: 4px;
397
+ padding: 4px;
398
+ background: #fff;
399
+ box-shadow: 0 1px 3px rgba(0,0,0,0.1);
400
+ transition: border-color 0.15s;
401
+ display: flex;
402
+ flex-direction: column;
403
+ align-items: center;
404
+ }
405
+
406
+ .udoc-thumbnail:hover {
407
+ border-color: #bbb;
408
+ }
409
+
410
+ .udoc-thumbnail.selected {
411
+ border-color: #3498db;
412
+ }
413
+
414
+ .udoc-thumbnail img {
415
+ display: block;
416
+ width: 100%;
417
+ height: auto;
418
+ background: #fff;
419
+ }
420
+
421
+ .udoc-thumbnail img:not([src]) {
422
+ visibility: hidden;
423
+ }
424
+
425
+ .udoc-thumbnail-label {
426
+ text-align: center;
427
+ font-size: 11px;
428
+ color: #666;
429
+ margin-top: 4px;
430
+ }
431
+
432
+ /* Outline */
433
+ .udoc-outline {
434
+ padding: 8px 0;
435
+ }
436
+
437
+ .udoc-outline-node {
438
+ /* Container for item + children */
439
+ }
440
+
441
+ .udoc-outline-item {
442
+ display: flex;
443
+ align-items: center;
444
+ padding: 6px 12px;
445
+ font-size: 13px;
446
+ color: #333;
447
+ border-left: 2px solid transparent;
448
+ transition: background-color 0.15s, border-color 0.15s;
449
+ }
450
+
451
+ .udoc-outline-item.clickable {
452
+ cursor: pointer;
453
+ }
454
+
455
+ .udoc-outline-item.clickable:hover {
456
+ background-color: rgba(0, 0, 0, 0.04);
457
+ border-left-color: #3498db;
458
+ }
459
+
460
+ .udoc-outline-toggle {
461
+ display: flex;
462
+ align-items: center;
463
+ justify-content: center;
464
+ width: 16px;
465
+ height: 16px;
466
+ margin-right: 4px;
467
+ cursor: pointer;
468
+ border-radius: 3px;
469
+ flex-shrink: 0;
470
+ transition: background-color 0.15s;
471
+ }
472
+
473
+ .udoc-outline-toggle:hover {
474
+ background-color: rgba(0, 0, 0, 0.08);
475
+ }
476
+
477
+ .udoc-outline-toggle svg {
478
+ width: 12px;
479
+ height: 12px;
480
+ transition: transform 0.15s;
481
+ }
482
+
483
+ .udoc-outline-toggle.collapsed svg {
484
+ transform: rotate(-90deg);
485
+ }
486
+
487
+ .udoc-outline-toggle-placeholder {
488
+ width: 16px;
489
+ height: 16px;
490
+ margin-right: 4px;
491
+ flex-shrink: 0;
492
+ }
493
+
494
+ .udoc-outline-title {
495
+ white-space: nowrap;
496
+ overflow: hidden;
497
+ text-overflow: ellipsis;
498
+ }
499
+
500
+ .udoc-outline-children {
501
+ overflow: hidden;
502
+ transition: max-height 0.2s ease-out;
503
+ }
504
+
505
+ .udoc-outline-children.collapsed {
506
+ max-height: 0 !important;
507
+ }
508
+
509
+ /* Viewport */
510
+ .udoc-viewport {
511
+ flex: 1;
512
+ overflow: auto;
513
+ position: relative;
514
+ overscroll-behavior-x: none;
515
+ }
516
+
517
+ .udoc-content {
518
+ display: flex;
519
+ flex-direction: column;
520
+ min-width: 100%;
521
+ min-height: 100%;
522
+ padding: 20px;
523
+ box-sizing: border-box;
524
+ }
525
+
526
+ .udoc-spacer {
527
+ width: 100%;
528
+ flex-shrink: 0;
529
+ }
530
+
531
+ .udoc-band-container {
532
+ position: relative;
533
+ width: 100%;
534
+ }
535
+
536
+ .udoc-band {
537
+ width: 100%;
538
+ position: absolute;
539
+ left: 0;
540
+ display: flex;
541
+ justify-content: center;
542
+ flex-shrink: 0;
543
+ }
544
+
545
+ .udoc-band-inner {
546
+ display: grid;
547
+ align-items: center;
548
+ justify-items: center;
549
+ }
550
+
551
+ .udoc-slot {
552
+ display: flex;
553
+ align-items: center;
554
+ justify-content: center;
555
+ overflow: visible;
556
+ }
557
+
558
+ .udoc-page {
559
+ display: block;
560
+ box-shadow: 0 2px 8px rgba(0,0,0,0.15);
561
+ background: #fff;
562
+ transform-origin: center center;
563
+ opacity: 1;
564
+ transition: opacity 0.12s ease;
565
+ user-select: none;
566
+ -webkit-user-drag: none;
567
+ pointer-events: none;
568
+ }
569
+
570
+ .udoc-viewer-root.seamless .udoc-page {
571
+ box-shadow: none;
572
+ }
573
+
574
+ .udoc-page[data-rendered="false"] {
575
+ opacity: 1;
576
+ }
577
+
578
+ /* Floating control bar */
579
+ .udoc-floating-bar {
580
+ position: absolute;
581
+ bottom: 16px;
582
+ left: 50%;
583
+ transform: translateX(-50%);
584
+ background: rgba(255, 255, 255, 0.95);
585
+ backdrop-filter: blur(8px);
586
+ -webkit-backdrop-filter: blur(8px);
587
+ border-radius: 8px;
588
+ box-shadow: 0 2px 12px rgba(0,0,0,0.15);
589
+ padding: 6px 12px;
590
+ display: flex;
591
+ align-items: center;
592
+ gap: 8px;
593
+ font-size: 13px;
594
+ z-index: 100;
595
+ }
596
+
597
+ .udoc-floating-bar-group {
598
+ display: flex;
599
+ align-items: center;
600
+ gap: 4px;
601
+ }
602
+
603
+ .udoc-floating-bar button {
604
+ background: none;
605
+ border: none;
606
+ cursor: pointer;
607
+ padding: 4px;
608
+ border-radius: 4px;
609
+ display: flex;
610
+ align-items: center;
611
+ justify-content: center;
612
+ color: #555;
613
+ }
614
+
615
+ .udoc-floating-bar button:hover:not(:disabled) {
616
+ background: #e8e8e8;
617
+ }
618
+
619
+ .udoc-floating-bar button.active {
620
+ background: #e0e0e0;
621
+ }
622
+
623
+ .udoc-floating-bar button:disabled {
624
+ opacity: 0.4;
625
+ cursor: not-allowed;
626
+ }
627
+
628
+ .udoc-floating-bar button svg {
629
+ width: 20px;
630
+ height: 20px;
631
+ }
632
+
633
+ .udoc-floating-bar input {
634
+ border: 1px solid #ddd;
635
+ border-radius: 4px;
636
+ padding: 4px 6px;
637
+ font-size: 12px;
638
+ text-align: center;
639
+ background: #fff;
640
+ }
641
+
642
+ .udoc-floating-bar input:focus {
643
+ outline: none;
644
+ border-color: #3498db;
645
+ }
646
+
647
+ .udoc-page-input {
648
+ width: 36px;
649
+ }
650
+
651
+ .udoc-floating-bar select {
652
+ border: 1px solid #ddd;
653
+ border-radius: 4px;
654
+ padding: 4px 6px;
655
+ font-size: 12px;
656
+ background: #fff;
657
+ cursor: pointer;
658
+ }
659
+
660
+ .udoc-floating-bar select:focus {
661
+ outline: none;
662
+ border-color: #3498db;
663
+ }
664
+
665
+ .udoc-separator {
666
+ width: 1px;
667
+ height: 20px;
668
+ background: #ddd;
669
+ margin: 0 4px;
670
+ }
671
+
672
+ .udoc-page-info {
673
+ color: #666;
674
+ font-size: 12px;
675
+ white-space: nowrap;
676
+ }
677
+
678
+ /* Zoom dropdown */
679
+ .udoc-zoom-dropdown {
680
+ position: relative;
681
+ display: flex;
682
+ align-items: center;
683
+ }
684
+
685
+ .udoc-zoom-input-wrapper {
686
+ display: flex;
687
+ align-items: center;
688
+ border: 1px solid #ddd;
689
+ border-radius: 4px;
690
+ background: #fff;
691
+ overflow: hidden;
692
+ }
693
+
694
+ .udoc-zoom-input-wrapper:focus-within {
695
+ border-color: #3498db;
696
+ }
697
+
698
+ .udoc-floating-bar .udoc-zoom-input {
699
+ border: none;
700
+ padding: 4px 0 4px 6px;
701
+ font-size: 12px;
702
+ width: 44px;
703
+ text-align: center;
704
+ background: transparent;
705
+ outline: none;
706
+ }
707
+
708
+ .udoc-zoom-input:disabled {
709
+ opacity: 0.4;
710
+ }
711
+
712
+ .udoc-zoom-dropdown-btn {
713
+ display: flex;
714
+ align-items: center;
715
+ justify-content: center;
716
+ padding: 4px 4px;
717
+ border: none;
718
+ border-left: 1px solid #ddd;
719
+ background: transparent;
720
+ cursor: pointer;
721
+ color: #555;
722
+ }
723
+
724
+ .udoc-zoom-dropdown-btn:hover:not(:disabled) {
725
+ background: #f0f0f0;
726
+ }
727
+
728
+ .udoc-zoom-dropdown-btn:disabled {
729
+ opacity: 0.4;
730
+ cursor: not-allowed;
731
+ }
732
+
733
+ .udoc-zoom-dropdown-btn svg {
734
+ width: 12px;
735
+ height: 12px;
736
+ }
737
+
738
+ .udoc-dropdown-menu {
739
+ position: absolute;
740
+ bottom: calc(100% + 4px);
741
+ left: 0;
742
+ background: #fff;
743
+ border-radius: 8px;
744
+ box-shadow: 0 4px 16px rgba(0,0,0,0.15);
745
+ padding: 4px 0;
746
+ min-width: 140px;
747
+ z-index: 200;
748
+ display: none;
749
+ }
750
+
751
+ .udoc-dropdown-menu.open {
752
+ display: block;
753
+ }
754
+
755
+ .udoc-dropdown-item {
756
+ display: flex;
757
+ align-items: center;
758
+ padding: 8px 12px;
759
+ cursor: pointer;
760
+ font-size: 13px;
761
+ color: #333;
762
+ }
763
+
764
+ .udoc-dropdown-item:hover {
765
+ background: #f5f5f5;
766
+ }
767
+
768
+ .udoc-dropdown-item.selected {
769
+ color: #3498db;
770
+ font-weight: 500;
771
+ }
772
+
773
+ .udoc-dropdown-divider {
774
+ height: 1px;
775
+ background: #e0e0e0;
776
+ margin: 4px 0;
777
+ }
778
+
779
+ /* Settings popover */
780
+ .udoc-settings-btn {
781
+ background: none;
782
+ border: none;
783
+ cursor: pointer;
784
+ padding: 4px;
785
+ border-radius: 4px;
786
+ display: flex;
787
+ align-items: center;
788
+ justify-content: center;
789
+ color: #555;
790
+ }
791
+
792
+ .udoc-settings-btn:hover:not(:disabled) {
793
+ background: #e8e8e8;
794
+ }
795
+
796
+ .udoc-settings-btn:disabled {
797
+ opacity: 0.4;
798
+ cursor: not-allowed;
799
+ }
800
+
801
+ .udoc-settings-btn svg {
802
+ width: 20px;
803
+ height: 20px;
804
+ }
805
+
806
+ .udoc-settings-popover {
807
+ position: absolute;
808
+ bottom: calc(100% + 4px);
809
+ left: 0;
810
+ background: #fff;
811
+ border-radius: 8px;
812
+ box-shadow: 0 4px 16px rgba(0,0,0,0.15);
813
+ padding: 12px;
814
+ min-width: 180px;
815
+ z-index: 200;
816
+ display: none;
817
+ }
818
+
819
+ .udoc-settings-popover.open {
820
+ display: block;
821
+ }
822
+
823
+ .udoc-settings-section {
824
+ margin-bottom: 12px;
825
+ }
826
+
827
+ .udoc-settings-section:last-child {
828
+ margin-bottom: 0;
829
+ }
830
+
831
+ .udoc-settings-label {
832
+ font-size: 11px;
833
+ font-weight: 600;
834
+ color: #666;
835
+ text-transform: uppercase;
836
+ letter-spacing: 0.5px;
837
+ margin-bottom: 6px;
838
+ }
839
+
840
+ .udoc-settings-options {
841
+ display: flex;
842
+ flex-wrap: wrap;
843
+ gap: 4px;
844
+ }
845
+
846
+ .udoc-settings-option {
847
+ display: flex;
848
+ align-items: center;
849
+ justify-content: center;
850
+ padding: 6px;
851
+ border: 1px solid #ddd;
852
+ border-radius: 4px;
853
+ cursor: pointer;
854
+ color: #555;
855
+ background: #fff;
856
+ transition: all 0.15s;
857
+ }
858
+
859
+ .udoc-settings-option:hover {
860
+ border-color: #bbb;
861
+ background: #f5f5f5;
862
+ }
863
+
864
+ .udoc-settings-option.selected {
865
+ background: #3498db;
866
+ border-color: #3498db;
867
+ color: #fff;
868
+ }
869
+
870
+ .udoc-settings-option svg {
871
+ width: 20px;
872
+ height: 20px;
873
+ }
874
+
875
+ .udoc-settings-option input {
876
+ display: none;
877
+ }
878
+
879
+ .udoc-settings-row {
880
+ display: flex;
881
+ align-items: center;
882
+ justify-content: space-between;
883
+ gap: 8px;
884
+ }
885
+
886
+ .udoc-settings-row select {
887
+ border: 1px solid #ddd;
888
+ border-radius: 4px;
889
+ padding: 4px 6px;
890
+ font-size: 12px;
891
+ background: #fff;
892
+ cursor: pointer;
893
+ flex: 1;
894
+ }
895
+
896
+ .udoc-settings-row select:focus {
897
+ outline: none;
898
+ border-color: #3498db;
899
+ }
900
+
901
+ .udoc-settings-checkbox {
902
+ display: flex;
903
+ align-items: center;
904
+ gap: 6px;
905
+ cursor: pointer;
906
+ font-size: 12px;
907
+ color: #333;
908
+ }
909
+
910
+ .udoc-settings-checkbox input[type="checkbox"] {
911
+ width: 14px;
912
+ height: 14px;
913
+ cursor: pointer;
914
+ }
915
+
916
+ /* Empty state */
917
+ .udoc-empty {
918
+ display: flex;
919
+ align-items: center;
920
+ justify-content: center;
921
+ height: 100%;
922
+ color: #999;
923
+ font-size: 14px;
924
+ }
925
+
926
+ /* Tool selector dropdown */
927
+ .udoc-tool-dropdown {
928
+ position: relative;
929
+ display: flex;
930
+ align-items: center;
931
+ }
932
+
933
+ .udoc-tool-dropdown-btn {
934
+ display: flex;
935
+ align-items: center;
936
+ gap: 4px;
937
+ padding: 4px 8px;
938
+ border: 1px solid #ddd;
939
+ border-radius: 4px;
940
+ background: #fff;
941
+ cursor: pointer;
942
+ color: #555;
943
+ font-size: 12px;
944
+ }
945
+
946
+ .udoc-tool-dropdown-btn:hover {
947
+ background: #f5f5f5;
948
+ }
949
+
950
+ .udoc-tool-dropdown-btn svg {
951
+ width: 18px;
952
+ height: 18px;
953
+ flex-shrink: 0;
954
+ }
955
+
956
+ .udoc-tool-dropdown-btn .udoc-tool-chevron {
957
+ display: flex;
958
+ align-items: center;
959
+ }
960
+
961
+ .udoc-tool-dropdown-btn .udoc-tool-chevron svg {
962
+ width: 12px;
963
+ height: 12px;
964
+ }
965
+
966
+ .udoc-tool-menu {
967
+ position: absolute;
968
+ bottom: calc(100% + 4px);
969
+ left: 0;
970
+ background: #fff;
971
+ border-radius: 8px;
972
+ box-shadow: 0 4px 16px rgba(0,0,0,0.15);
973
+ padding: 4px 0;
974
+ min-width: 150px;
975
+ z-index: 200;
976
+ display: none;
977
+ }
978
+
979
+ .udoc-tool-menu.open {
980
+ display: block;
981
+ }
982
+
983
+ .udoc-tool-item {
984
+ display: flex;
985
+ align-items: center;
986
+ gap: 8px;
987
+ padding: 8px 12px;
988
+ cursor: pointer;
989
+ font-size: 13px;
990
+ color: #333;
991
+ }
992
+
993
+ .udoc-tool-item:hover {
994
+ background: #f5f5f5;
995
+ }
996
+
997
+ .udoc-tool-item.selected {
998
+ color: #3498db;
999
+ font-weight: 500;
1000
+ }
1001
+
1002
+ .udoc-tool-item svg {
1003
+ width: 18px;
1004
+ height: 18px;
1005
+ }
1006
+
1007
+ .udoc-tool-item .udoc-tool-shortcut {
1008
+ margin-left: auto;
1009
+ font-size: 11px;
1010
+ color: #999;
1011
+ }
1012
+
1013
+ /* Cursor styles for tools */
1014
+ .udoc-viewport.tool-hand {
1015
+ cursor: grab;
1016
+ }
1017
+
1018
+ .udoc-viewport.tool-hand.panning {
1019
+ cursor: grabbing;
1020
+ }
1021
+
1022
+ .udoc-viewport.tool-select {
1023
+ cursor: default;
1024
+ }
1025
+
1026
+ /* ===== Responsive: Mobile (<=768px) ===== */
1027
+ @media (max-width: 768px) {
1028
+ /* Collapse panels by default on mobile */
1029
+ .udoc-panel {
1030
+ position: absolute;
1031
+ top: 0;
1032
+ bottom: 0;
1033
+ width: 280px !important;
1034
+ z-index: 150;
1035
+ box-shadow: 4px 0 20px rgba(0,0,0,0.15);
1036
+ }
1037
+
1038
+ .udoc-panel.left {
1039
+ left: 0;
1040
+ transform: translateX(-100%);
1041
+ transition: transform 0.3s ease;
1042
+ }
1043
+
1044
+ .udoc-panel.left:not(.collapsed) {
1045
+ transform: translateX(0);
1046
+ }
1047
+
1048
+ .udoc-panel.right {
1049
+ right: 0;
1050
+ transform: translateX(100%);
1051
+ transition: transform 0.3s ease;
1052
+ flex-direction: row-reverse;
1053
+ }
1054
+
1055
+ .udoc-panel.right:not(.collapsed) {
1056
+ transform: translateX(0);
1057
+ }
1058
+
1059
+ .udoc-panel.collapsed {
1060
+ width: 280px !important;
1061
+ }
1062
+
1063
+ /* Mobile overlay when panel is open */
1064
+ .udoc-panel-overlay {
1065
+ display: none;
1066
+ position: absolute;
1067
+ top: 0;
1068
+ left: 0;
1069
+ right: 0;
1070
+ bottom: 0;
1071
+ background: rgba(0, 0, 0, 0.3);
1072
+ z-index: 140;
1073
+ }
1074
+
1075
+ .udoc-viewer-root.panel-open .udoc-panel-overlay {
1076
+ display: block;
1077
+ }
1078
+
1079
+ /* Reduce content padding */
1080
+ .udoc-content {
1081
+ padding: 8px;
1082
+ padding-bottom: 48px; /* Space for bottom toolbar (40px + 8px) */
1083
+ }
1084
+
1085
+ /* Convert floating bar to full-width bottom toolbar - same height as header (40px) */
1086
+ .udoc-floating-bar {
1087
+ position: fixed;
1088
+ bottom: 0;
1089
+ left: 0;
1090
+ right: 0;
1091
+ transform: none;
1092
+ border-radius: 0;
1093
+ box-sizing: border-box;
1094
+ height: 40px;
1095
+ padding: 0 12px;
1096
+ gap: 8px;
1097
+ max-width: none;
1098
+ justify-content: center;
1099
+ box-shadow: 0 -2px 10px rgba(0,0,0,0.1);
1100
+ }
1101
+
1102
+ /* Hide settings on mobile */
1103
+ .udoc-floating-bar .udoc-settings-wrapper {
1104
+ display: none;
1105
+ }
1106
+
1107
+ /* Hide fullscreen button on mobile */
1108
+ .udoc-header-btn[title="Fullscreen"] {
1109
+ display: none;
1110
+ }
1111
+
1112
+ /* Touch targets for mobile - sized to fit within 40px toolbar */
1113
+ .udoc-floating-bar button {
1114
+ padding: 6px;
1115
+ min-width: 28px;
1116
+ min-height: 28px;
1117
+ }
1118
+
1119
+ .udoc-floating-bar button svg {
1120
+ width: 18px;
1121
+ height: 18px;
1122
+ }
1123
+
1124
+ /* Larger panel tab buttons for touch */
1125
+ .udoc-panel-tabs {
1126
+ width: 44px;
1127
+ padding: 8px 0;
1128
+ }
1129
+
1130
+ .udoc-panel-tab {
1131
+ width: 36px;
1132
+ height: 36px;
1133
+ }
1134
+
1135
+ .udoc-panel-tab svg {
1136
+ width: 22px;
1137
+ height: 22px;
1138
+ }
1139
+
1140
+ /* Header adjustments */
1141
+ .udoc-header {
1142
+ padding: 0 4px;
1143
+ gap: 4px;
1144
+ }
1145
+
1146
+ .udoc-header-btn {
1147
+ padding: 8px;
1148
+ }
1149
+
1150
+ /* Hide document title on small screens to save space */
1151
+ .udoc-header-title {
1152
+ display: none;
1153
+ }
1154
+
1155
+ /* Dropdown menus - position from bottom with more space */
1156
+ .udoc-dropdown-menu,
1157
+ .udoc-tool-menu,
1158
+ .udoc-settings-popover {
1159
+ bottom: calc(100% + 8px);
1160
+ }
1161
+
1162
+ /* Settings popover - pop to left on mobile */
1163
+ .udoc-settings-popover {
1164
+ left: auto;
1165
+ right: 0;
1166
+ }
1167
+
1168
+ .udoc-dropdown-item,
1169
+ .udoc-tool-item {
1170
+ padding: 12px 16px;
1171
+ }
1172
+ }
1173
+
1174
+ /* ===== Responsive: Small Mobile (<=480px) ===== */
1175
+ @media (max-width: 480px) {
1176
+ .udoc-content {
1177
+ padding: 4px;
1178
+ padding-bottom: 48px; /* Space for bottom toolbar (40px + 8px) */
1179
+ }
1180
+
1181
+ .udoc-floating-bar {
1182
+ padding: 0 8px;
1183
+ gap: 2px;
1184
+ }
1185
+
1186
+ /* Hide zoom buttons, keep only page nav on very small screens */
1187
+ .udoc-floating-bar .udoc-zoom-controls {
1188
+ display: none;
1189
+ }
1190
+
1191
+ /* Smaller page input */
1192
+ .udoc-page-input {
1193
+ width: 28px;
1194
+ padding: 2px 4px;
1195
+ font-size: 11px;
1196
+ }
1197
+
1198
+ .udoc-page-info {
1199
+ font-size: 11px;
1200
+ }
1201
+
1202
+ .udoc-separator {
1203
+ height: 16px;
1204
+ margin: 0 2px;
1205
+ }
1206
+
1207
+ .udoc-header {
1208
+ padding: 0 4px;
1209
+ gap: 4px;
1210
+ }
1211
+
1212
+ .udoc-header-btn {
1213
+ padding: 6px;
1214
+ }
1215
+
1216
+ .udoc-header-btn svg {
1217
+ width: 18px;
1218
+ height: 18px;
1219
+ }
1220
+ }`;
1221
+ //# sourceMappingURL=index.js.map