@docmentis/udoc-viewer 0.6.10 → 0.6.12

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 (164) hide show
  1. package/README.md +3 -2
  2. package/dist/package.json +15 -9
  3. package/dist/src/UDocClient.d.ts +21 -0
  4. package/dist/src/UDocClient.d.ts.map +1 -1
  5. package/dist/src/UDocClient.js +1 -1
  6. package/dist/src/UDocClient.js.map +1 -1
  7. package/dist/src/UDocViewer.d.ts.map +1 -1
  8. package/dist/src/UDocViewer.js +4 -2
  9. package/dist/src/UDocViewer.js.map +1 -1
  10. package/dist/src/index.d.ts +3 -0
  11. package/dist/src/index.d.ts.map +1 -1
  12. package/dist/src/index.js +1 -0
  13. package/dist/src/index.js.map +1 -1
  14. package/dist/src/ui/viewer/a11y.d.ts +26 -0
  15. package/dist/src/ui/viewer/a11y.d.ts.map +1 -0
  16. package/dist/src/ui/viewer/a11y.js +116 -0
  17. package/dist/src/ui/viewer/a11y.js.map +1 -0
  18. package/dist/src/ui/viewer/components/AnnotationPanel.d.ts +2 -1
  19. package/dist/src/ui/viewer/components/AnnotationPanel.d.ts.map +1 -1
  20. package/dist/src/ui/viewer/components/AnnotationPanel.js +11 -9
  21. package/dist/src/ui/viewer/components/AnnotationPanel.js.map +1 -1
  22. package/dist/src/ui/viewer/components/FloatingToolbar.d.ts +2 -1
  23. package/dist/src/ui/viewer/components/FloatingToolbar.d.ts.map +1 -1
  24. package/dist/src/ui/viewer/components/FloatingToolbar.js +50 -7
  25. package/dist/src/ui/viewer/components/FloatingToolbar.js.map +1 -1
  26. package/dist/src/ui/viewer/components/LayersPanel.d.ts +2 -1
  27. package/dist/src/ui/viewer/components/LayersPanel.d.ts.map +1 -1
  28. package/dist/src/ui/viewer/components/LayersPanel.js +10 -4
  29. package/dist/src/ui/viewer/components/LayersPanel.js.map +1 -1
  30. package/dist/src/ui/viewer/components/LeftPanel.d.ts +2 -1
  31. package/dist/src/ui/viewer/components/LeftPanel.d.ts.map +1 -1
  32. package/dist/src/ui/viewer/components/LeftPanel.js +58 -5
  33. package/dist/src/ui/viewer/components/LeftPanel.js.map +1 -1
  34. package/dist/src/ui/viewer/components/LoadingOverlay.d.ts +2 -1
  35. package/dist/src/ui/viewer/components/LoadingOverlay.d.ts.map +1 -1
  36. package/dist/src/ui/viewer/components/LoadingOverlay.js +132 -17
  37. package/dist/src/ui/viewer/components/LoadingOverlay.js.map +1 -1
  38. package/dist/src/ui/viewer/components/OutlinePanel.d.ts +2 -1
  39. package/dist/src/ui/viewer/components/OutlinePanel.d.ts.map +1 -1
  40. package/dist/src/ui/viewer/components/OutlinePanel.js +141 -3
  41. package/dist/src/ui/viewer/components/OutlinePanel.js.map +1 -1
  42. package/dist/src/ui/viewer/components/PasswordDialog.d.ts +2 -1
  43. package/dist/src/ui/viewer/components/PasswordDialog.d.ts.map +1 -1
  44. package/dist/src/ui/viewer/components/PasswordDialog.js +46 -10
  45. package/dist/src/ui/viewer/components/PasswordDialog.js.map +1 -1
  46. package/dist/src/ui/viewer/components/PrintDialog.d.ts +2 -1
  47. package/dist/src/ui/viewer/components/PrintDialog.d.ts.map +1 -1
  48. package/dist/src/ui/viewer/components/PrintDialog.js +77 -8
  49. package/dist/src/ui/viewer/components/PrintDialog.js.map +1 -1
  50. package/dist/src/ui/viewer/components/RightPanel.d.ts +2 -1
  51. package/dist/src/ui/viewer/components/RightPanel.d.ts.map +1 -1
  52. package/dist/src/ui/viewer/components/RightPanel.js +37 -3
  53. package/dist/src/ui/viewer/components/RightPanel.js.map +1 -1
  54. package/dist/src/ui/viewer/components/SearchPanel.d.ts +2 -1
  55. package/dist/src/ui/viewer/components/SearchPanel.d.ts.map +1 -1
  56. package/dist/src/ui/viewer/components/SearchPanel.js +31 -7
  57. package/dist/src/ui/viewer/components/SearchPanel.js.map +1 -1
  58. package/dist/src/ui/viewer/components/Spread.d.ts +2 -1
  59. package/dist/src/ui/viewer/components/Spread.d.ts.map +1 -1
  60. package/dist/src/ui/viewer/components/Spread.js +112 -11
  61. package/dist/src/ui/viewer/components/Spread.js.map +1 -1
  62. package/dist/src/ui/viewer/components/ThumbnailPanel.d.ts +2 -1
  63. package/dist/src/ui/viewer/components/ThumbnailPanel.d.ts.map +1 -1
  64. package/dist/src/ui/viewer/components/ThumbnailPanel.js +49 -1
  65. package/dist/src/ui/viewer/components/ThumbnailPanel.js.map +1 -1
  66. package/dist/src/ui/viewer/components/Toolbar.d.ts +2 -1
  67. package/dist/src/ui/viewer/components/Toolbar.d.ts.map +1 -1
  68. package/dist/src/ui/viewer/components/Toolbar.js +118 -56
  69. package/dist/src/ui/viewer/components/Toolbar.js.map +1 -1
  70. package/dist/src/ui/viewer/components/ViewModeMenu.d.ts +2 -1
  71. package/dist/src/ui/viewer/components/ViewModeMenu.d.ts.map +1 -1
  72. package/dist/src/ui/viewer/components/ViewModeMenu.js +32 -16
  73. package/dist/src/ui/viewer/components/ViewModeMenu.js.map +1 -1
  74. package/dist/src/ui/viewer/components/Viewport.d.ts +2 -1
  75. package/dist/src/ui/viewer/components/Viewport.d.ts.map +1 -1
  76. package/dist/src/ui/viewer/components/Viewport.js +167 -14
  77. package/dist/src/ui/viewer/components/Viewport.js.map +1 -1
  78. package/dist/src/ui/viewer/effects.d.ts.map +1 -1
  79. package/dist/src/ui/viewer/effects.js +54 -82
  80. package/dist/src/ui/viewer/effects.js.map +1 -1
  81. package/dist/src/ui/viewer/i18n/ar.d.ts +3 -0
  82. package/dist/src/ui/viewer/i18n/ar.d.ts.map +1 -0
  83. package/dist/src/ui/viewer/i18n/ar.js +143 -0
  84. package/dist/src/ui/viewer/i18n/ar.js.map +1 -0
  85. package/dist/src/ui/viewer/i18n/de.d.ts +3 -0
  86. package/dist/src/ui/viewer/i18n/de.d.ts.map +1 -0
  87. package/dist/src/ui/viewer/i18n/de.js +143 -0
  88. package/dist/src/ui/viewer/i18n/de.js.map +1 -0
  89. package/dist/src/ui/viewer/i18n/en.d.ts +3 -0
  90. package/dist/src/ui/viewer/i18n/en.d.ts.map +1 -0
  91. package/dist/src/ui/viewer/i18n/en.js +144 -0
  92. package/dist/src/ui/viewer/i18n/en.js.map +1 -0
  93. package/dist/src/ui/viewer/i18n/es.d.ts +3 -0
  94. package/dist/src/ui/viewer/i18n/es.d.ts.map +1 -0
  95. package/dist/src/ui/viewer/i18n/es.js +143 -0
  96. package/dist/src/ui/viewer/i18n/es.js.map +1 -0
  97. package/dist/src/ui/viewer/i18n/fr.d.ts +3 -0
  98. package/dist/src/ui/viewer/i18n/fr.d.ts.map +1 -0
  99. package/dist/src/ui/viewer/i18n/fr.js +143 -0
  100. package/dist/src/ui/viewer/i18n/fr.js.map +1 -0
  101. package/dist/src/ui/viewer/i18n/index.d.ts +27 -0
  102. package/dist/src/ui/viewer/i18n/index.d.ts.map +1 -0
  103. package/dist/src/ui/viewer/i18n/index.js +88 -0
  104. package/dist/src/ui/viewer/i18n/index.js.map +1 -0
  105. package/dist/src/ui/viewer/i18n/ja.d.ts +3 -0
  106. package/dist/src/ui/viewer/i18n/ja.d.ts.map +1 -0
  107. package/dist/src/ui/viewer/i18n/ja.js +143 -0
  108. package/dist/src/ui/viewer/i18n/ja.js.map +1 -0
  109. package/dist/src/ui/viewer/i18n/ko.d.ts +3 -0
  110. package/dist/src/ui/viewer/i18n/ko.d.ts.map +1 -0
  111. package/dist/src/ui/viewer/i18n/ko.js +143 -0
  112. package/dist/src/ui/viewer/i18n/ko.js.map +1 -0
  113. package/dist/src/ui/viewer/i18n/pt-BR.d.ts +3 -0
  114. package/dist/src/ui/viewer/i18n/pt-BR.d.ts.map +1 -0
  115. package/dist/src/ui/viewer/i18n/pt-BR.js +143 -0
  116. package/dist/src/ui/viewer/i18n/pt-BR.js.map +1 -0
  117. package/dist/src/ui/viewer/i18n/ru.d.ts +3 -0
  118. package/dist/src/ui/viewer/i18n/ru.d.ts.map +1 -0
  119. package/dist/src/ui/viewer/i18n/ru.js +143 -0
  120. package/dist/src/ui/viewer/i18n/ru.js.map +1 -0
  121. package/dist/src/ui/viewer/i18n/types.d.ts +129 -0
  122. package/dist/src/ui/viewer/i18n/types.d.ts.map +1 -0
  123. package/dist/src/ui/viewer/i18n/types.js +2 -0
  124. package/dist/src/ui/viewer/i18n/types.js.map +1 -0
  125. package/dist/src/ui/viewer/i18n/zh-CN.d.ts +3 -0
  126. package/dist/src/ui/viewer/i18n/zh-CN.d.ts.map +1 -0
  127. package/dist/src/ui/viewer/i18n/zh-CN.js +143 -0
  128. package/dist/src/ui/viewer/i18n/zh-CN.js.map +1 -0
  129. package/dist/src/ui/viewer/i18n/zh-TW.d.ts +3 -0
  130. package/dist/src/ui/viewer/i18n/zh-TW.d.ts.map +1 -0
  131. package/dist/src/ui/viewer/i18n/zh-TW.js +143 -0
  132. package/dist/src/ui/viewer/i18n/zh-TW.js.map +1 -0
  133. package/dist/src/ui/viewer/shell.d.ts +1 -1
  134. package/dist/src/ui/viewer/shell.d.ts.map +1 -1
  135. package/dist/src/ui/viewer/shell.js +95 -10
  136. package/dist/src/ui/viewer/shell.js.map +1 -1
  137. package/dist/src/ui/viewer/state.d.ts +2 -0
  138. package/dist/src/ui/viewer/state.d.ts.map +1 -1
  139. package/dist/src/ui/viewer/state.js +1 -0
  140. package/dist/src/ui/viewer/state.js.map +1 -1
  141. package/dist/src/ui/viewer/styles-inline.d.ts +1 -1
  142. package/dist/src/ui/viewer/styles-inline.d.ts.map +1 -1
  143. package/dist/src/ui/viewer/styles-inline.js +148 -43
  144. package/dist/src/ui/viewer/styles-inline.js.map +1 -1
  145. package/dist/src/ui/viewer/transition.d.ts +26 -0
  146. package/dist/src/ui/viewer/transition.d.ts.map +1 -0
  147. package/dist/src/ui/viewer/transition.js +898 -0
  148. package/dist/src/ui/viewer/transition.js.map +1 -0
  149. package/dist/src/wasm/udoc.d.ts +83 -6
  150. package/dist/src/wasm/udoc.js +13 -13
  151. package/dist/src/wasm/udoc_bg.wasm +0 -0
  152. package/dist/src/wasm/udoc_bg.wasm.d.ts +3 -3
  153. package/dist/src/worker/WorkerClient.d.ts +24 -5
  154. package/dist/src/worker/WorkerClient.d.ts.map +1 -1
  155. package/dist/src/worker/WorkerClient.js +243 -98
  156. package/dist/src/worker/WorkerClient.js.map +1 -1
  157. package/dist/src/worker/index.d.ts +1 -1
  158. package/dist/src/worker/index.d.ts.map +1 -1
  159. package/dist/src/worker/worker-inline.js +1 -1
  160. package/dist/src/worker/worker.d.ts +2 -0
  161. package/dist/src/worker/worker.d.ts.map +1 -1
  162. package/dist/src/worker/worker.js +14 -13
  163. package/dist/src/worker/worker.js.map +1 -1
  164. package/package.json +15 -9
@@ -14,13 +14,13 @@ export const inlineStyles = `.udoc-viewer-root {
14
14
  --udoc-text-primary: rgba(0, 0, 0, 0.8);
15
15
  --udoc-text-secondary: rgba(0, 0, 0, 0.7);
16
16
  --udoc-text-tertiary: rgba(0, 0, 0, 0.6);
17
- --udoc-text-muted: rgba(0, 0, 0, 0.5);
18
- --udoc-text-faint: rgba(0, 0, 0, 0.4);
17
+ --udoc-text-muted: rgba(0, 0, 0, 0.58);
18
+ --udoc-text-faint: rgba(0, 0, 0, 0.52);
19
19
  --udoc-text-disabled: rgba(0, 0, 0, 0.25);
20
20
  --udoc-text-heading: #333;
21
21
  --udoc-text-body: #555;
22
22
  --udoc-text-label: #666;
23
- --udoc-text-subtle: #888;
23
+ --udoc-text-subtle: #767676;
24
24
  --udoc-text-placeholder: #999;
25
25
  --udoc-text-on-primary: #fff;
26
26
 
@@ -107,13 +107,13 @@ export const inlineStyles = `.udoc-viewer-root {
107
107
  --udoc-text-primary: rgba(255, 255, 255, 0.87);
108
108
  --udoc-text-secondary: rgba(255, 255, 255, 0.7);
109
109
  --udoc-text-tertiary: rgba(255, 255, 255, 0.6);
110
- --udoc-text-muted: rgba(255, 255, 255, 0.5);
111
- --udoc-text-faint: rgba(255, 255, 255, 0.38);
110
+ --udoc-text-muted: rgba(255, 255, 255, 0.64);
111
+ --udoc-text-faint: rgba(255, 255, 255, 0.56);
112
112
  --udoc-text-disabled: rgba(255, 255, 255, 0.25);
113
113
  --udoc-text-heading: #e0e0e0;
114
114
  --udoc-text-body: #bbb;
115
115
  --udoc-text-label: #aaa;
116
- --udoc-text-subtle: #888;
116
+ --udoc-text-subtle: #a0a0a0;
117
117
  --udoc-text-placeholder: #777;
118
118
  --udoc-text-on-primary: #fff;
119
119
 
@@ -281,7 +281,8 @@ export const inlineStyles = `.udoc-viewer-root {
281
281
  display: flex;
282
282
  align-items: center;
283
283
  gap: 4px;
284
- padding: 6px 10px;
284
+ height: 40px;
285
+ padding: 0 10px;
285
286
  background: var(--udoc-bg-surface);
286
287
  border-radius: 8px;
287
288
  box-shadow: var(--udoc-shadow-toolbar);
@@ -2146,42 +2147,6 @@ export const inlineStyles = `.udoc-viewer-root {
2146
2147
  fill: #818cf8;
2147
2148
  }
2148
2149
 
2149
- .udoc-viewer-root .udoc-loading-attribution {
2150
- margin-top: 12px;
2151
- text-decoration: none;
2152
- display: inline-flex;
2153
- }
2154
-
2155
- /* Brand logo on page slots while rendering */
2156
- .udoc-viewer-root .udoc-spread__slot-attribution {
2157
- position: absolute;
2158
- left: 50%;
2159
- top: 50%;
2160
- transform: translate(-50%, -50%);
2161
- display: flex;
2162
- flex-direction: column;
2163
- align-items: center;
2164
- gap: 6px;
2165
- pointer-events: none;
2166
- z-index: 1;
2167
- user-select: none;
2168
- opacity: 0.3;
2169
- }
2170
-
2171
- .udoc-viewer-root .udoc-spread__slot-attribution-text {
2172
- font-size: 11px;
2173
- font-weight: 500;
2174
- color: #0f172a;
2175
- }
2176
-
2177
- .udoc-viewer-dark .udoc-spread__slot-attribution-text {
2178
- color: #e2e8f0;
2179
- }
2180
-
2181
- .udoc-viewer-root .udoc-spread__slot:not(.udoc-spread__slot--loading) .udoc-spread__slot-attribution {
2182
- display: none;
2183
- }
2184
-
2185
2150
  /* =============================================================================
2186
2151
  Search Panel
2187
2152
  ============================================================================= */
@@ -2399,5 +2364,145 @@ export const inlineStyles = `.udoc-viewer-root {
2399
2364
  .udoc-viewer-root.udoc-viewer-dark .udoc-search-highlight {
2400
2365
  mix-blend-mode: screen;
2401
2366
  }
2367
+
2368
+ /* === Accessibility === */
2369
+
2370
+ /* Screen-reader-only utility (visually hidden but accessible) */
2371
+ .udoc-viewer-root .udoc-sr-only {
2372
+ position: absolute;
2373
+ width: 1px;
2374
+ height: 1px;
2375
+ padding: 0;
2376
+ margin: -1px;
2377
+ overflow: hidden;
2378
+ clip: rect(0, 0, 0, 0);
2379
+ white-space: nowrap;
2380
+ border: 0;
2381
+ }
2382
+
2383
+ /* Skip navigation link */
2384
+ .udoc-viewer-root .udoc-skip-link {
2385
+ position: absolute;
2386
+ top: -100px;
2387
+ left: 0;
2388
+ z-index: 10000;
2389
+ padding: 8px 16px;
2390
+ background: var(--udoc-bg-surface);
2391
+ color: var(--udoc-text-heading);
2392
+ text-decoration: none;
2393
+ font-size: 14px;
2394
+ border-radius: 0 0 4px 0;
2395
+ box-shadow: var(--udoc-shadow-sm);
2396
+ }
2397
+
2398
+ .udoc-viewer-root .udoc-skip-link:focus {
2399
+ top: 0;
2400
+ }
2401
+
2402
+ /* Keyboard focus indicators */
2403
+ .udoc-viewer-root :focus-visible {
2404
+ outline: 2px solid var(--udoc-primary);
2405
+ outline-offset: 2px;
2406
+ }
2407
+
2408
+ .udoc-viewer-root :focus:not(:focus-visible) {
2409
+ outline: none;
2410
+ }
2411
+
2412
+ /* Reduced motion */
2413
+ @media (prefers-reduced-motion: reduce) {
2414
+ .udoc-viewer-root,
2415
+ .udoc-viewer-root * {
2416
+ animation-duration: 0.01ms !important;
2417
+ animation-iteration-count: 1 !important;
2418
+ transition-duration: 0.01ms !important;
2419
+ scroll-behavior: auto !important;
2420
+ }
2421
+ }
2422
+
2423
+ /* High contrast preference */
2424
+ @media (prefers-contrast: more) {
2425
+ .udoc-viewer-root {
2426
+ --udoc-border: #000;
2427
+ --udoc-border-input: #000;
2428
+ --udoc-text-muted: rgba(0, 0, 0, 0.7);
2429
+ --udoc-text-faint: rgba(0, 0, 0, 0.6);
2430
+ --udoc-primary-focus-ring: rgba(0, 102, 204, 0.5);
2431
+ }
2432
+
2433
+ .udoc-viewer-root.udoc-viewer-dark {
2434
+ --udoc-border: #aaa;
2435
+ --udoc-border-input: #aaa;
2436
+ --udoc-text-muted: rgba(255, 255, 255, 0.7);
2437
+ --udoc-text-faint: rgba(255, 255, 255, 0.6);
2438
+ --udoc-primary-focus-ring: rgba(77, 166, 255, 0.5);
2439
+ }
2440
+
2441
+ .udoc-viewer-root :focus-visible {
2442
+ outline-width: 3px;
2443
+ }
2444
+ }
2445
+
2446
+ /* Forced colors (Windows High Contrast) */
2447
+ @media (forced-colors: active) {
2448
+ .udoc-viewer-root .udoc-thumbnail-item--active {
2449
+ outline: 3px solid Highlight;
2450
+ }
2451
+
2452
+ .udoc-viewer-root .udoc-toolbar__btn,
2453
+ .udoc-viewer-root .udoc-floating-toolbar__btn,
2454
+ .udoc-viewer-root .udoc-left-panel__tab {
2455
+ border: 1px solid ButtonText;
2456
+ }
2457
+
2458
+ .udoc-viewer-root .udoc-left-panel__tab--active {
2459
+ background: Highlight;
2460
+ color: HighlightText;
2461
+ }
2462
+
2463
+ .udoc-viewer-root .udoc-search-highlight {
2464
+ outline: 2px solid Highlight;
2465
+ }
2466
+ }
2467
+
2468
+ /* Resize handle focus styles */
2469
+ .udoc-viewer-root .udoc-left-panel__resize-handle:focus-visible,
2470
+ .udoc-viewer-root .udoc-right-panel__resize-handle:focus-visible {
2471
+ background: var(--udoc-primary-muted);
2472
+ outline: 2px solid var(--udoc-primary);
2473
+ outline-offset: -2px;
2474
+ }
2475
+
2476
+ /* Touch target sizes for coarse pointers */
2477
+ @media (pointer: coarse) {
2478
+ .udoc-viewer-root .udoc-toolbar__btn {
2479
+ min-width: 44px;
2480
+ min-height: 44px;
2481
+ }
2482
+
2483
+ .udoc-viewer-root .udoc-toolbar__btn--nav {
2484
+ min-width: 44px;
2485
+ min-height: 44px;
2486
+ }
2487
+
2488
+ .udoc-viewer-root .udoc-left-panel__tab {
2489
+ width: 44px;
2490
+ height: 44px;
2491
+ }
2492
+
2493
+ .udoc-viewer-root .udoc-left-panel__tabs {
2494
+ width: 44px;
2495
+ }
2496
+
2497
+ .udoc-viewer-root .udoc-zoom-dropdown__chevron {
2498
+ min-width: 44px;
2499
+ min-height: 44px;
2500
+ }
2501
+
2502
+ .udoc-viewer-root .udoc-outline-item__toggle {
2503
+ min-width: 44px;
2504
+ min-height: 44px;
2505
+ }
2506
+ }
2402
2507
  `;
2403
2508
  //# sourceMappingURL=styles-inline.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"styles-inline.js","sourceRoot":"","sources":["../../../../src/ui/viewer/styles-inline.ts"],"names":[],"mappings":"AAAA,0DAA0D;AAC1D,MAAM,CAAC,MAAM,YAAY,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAg2E3B,CAAC"}
1
+ {"version":3,"file":"styles-inline.js","sourceRoot":"","sources":["../../../../src/ui/viewer/styles-inline.ts"],"names":[],"mappings":"AAAA,0DAA0D;AAC1D,MAAM,CAAC,MAAM,YAAY,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAy8E3B,CAAC"}
@@ -0,0 +1,26 @@
1
+ /**
2
+ * Slide transition animations for PPTX spread-mode navigation.
3
+ *
4
+ * IMPORTANT: Effects must NEVER set `transform` on the incoming element.
5
+ * The incoming element is the real spread — transforms on it would change
6
+ * its layout position, causing scrollbar flicker, resize-observer loops,
7
+ * and page-jump bugs. Only use `opacity` and `clip-path` on incoming.
8
+ * The outgoing element is a disposable snapshot overlay, so `transform`
9
+ * and `opacity` are safe on it.
10
+ */
11
+ import type { PageTransition } from "../../worker/index.js";
12
+ export interface TransitionHandle {
13
+ /** Cancel the in-flight transition, jumping to the final state. */
14
+ cancel(): void;
15
+ }
16
+ /**
17
+ * Run a slide transition animation between two spread elements.
18
+ *
19
+ * @param outgoing The snapshot overlay (will be removed on complete)
20
+ * @param incoming The real spread element (already mounted and positioned)
21
+ * @param transition Transition descriptor from PageInfo
22
+ * @param forward Navigation direction (true = forward, false = backward)
23
+ * @param onComplete Called when the transition finishes (or is cancelled)
24
+ */
25
+ export declare function runTransition(outgoing: HTMLElement, incoming: HTMLElement, transition: PageTransition, forward: boolean, onComplete: () => void): TransitionHandle;
26
+ //# sourceMappingURL=transition.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"transition.d.ts","sourceRoot":"","sources":["../../../../src/ui/viewer/transition.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,KAAK,EACR,cAAc,EAKjB,MAAM,uBAAuB,CAAC;AAM/B,MAAM,WAAW,gBAAgB;IAC7B,mEAAmE;IACnE,MAAM,IAAI,IAAI,CAAC;CAClB;AAED;;;;;;;;GAQG;AACH,wBAAgB,aAAa,CACzB,QAAQ,EAAE,WAAW,EACrB,QAAQ,EAAE,WAAW,EACrB,UAAU,EAAE,cAAc,EAC1B,OAAO,EAAE,OAAO,EAChB,UAAU,EAAE,MAAM,IAAI,GACvB,gBAAgB,CA0DlB"}