pptx-svelte-viewer 0.5.0 → 0.6.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 (238) hide show
  1. package/CHANGELOG.md +4 -0
  2. package/README.md +9 -6
  3. package/dist/{component-CtIGg1wg.js → component-NIMULjW3.js} +20923 -16749
  4. package/dist/i18n/context.d.ts +20 -0
  5. package/dist/i18n/context.d.ts.map +1 -0
  6. package/dist/i18n/index.d.ts +4 -0
  7. package/dist/i18n/index.d.ts.map +1 -0
  8. package/dist/i18n/translator.d.ts +30 -0
  9. package/dist/i18n/translator.d.ts.map +1 -0
  10. package/dist/i18n.d.ts +56 -62
  11. package/dist/i18n.d.ts.map +1 -0
  12. package/dist/index.d.ts +765 -605
  13. package/dist/index.d.ts.map +1 -0
  14. package/dist/index.js +1 -1
  15. package/dist/theme/index.d.ts +8 -0
  16. package/dist/theme/index.d.ts.map +1 -0
  17. package/dist/viewer/collab/collaboration-dialogs.svelte.d.ts +31 -0
  18. package/dist/viewer/collab/collaboration-dialogs.svelte.d.ts.map +1 -0
  19. package/dist/viewer/collab/collaboration-presence-effects.svelte.d.ts +9 -0
  20. package/dist/viewer/collab/collaboration-presence-effects.svelte.d.ts.map +1 -0
  21. package/dist/viewer/collab/collaboration-presence.svelte.d.ts +20 -0
  22. package/dist/viewer/collab/collaboration-presence.svelte.d.ts.map +1 -0
  23. package/dist/viewer/collab/collaboration-provider.d.ts +35 -0
  24. package/dist/viewer/collab/collaboration-provider.d.ts.map +1 -0
  25. package/dist/viewer/collab/collaboration-remote-sync.d.ts +12 -0
  26. package/dist/viewer/collab/collaboration-remote-sync.d.ts.map +1 -0
  27. package/dist/viewer/collab/collaboration-session.d.ts +24 -0
  28. package/dist/viewer/collab/collaboration-session.d.ts.map +1 -0
  29. package/dist/viewer/collab/collaboration-status.d.ts +14 -0
  30. package/dist/viewer/collab/collaboration-status.d.ts.map +1 -0
  31. package/dist/viewer/collab/collaboration.svelte.d.ts +55 -0
  32. package/dist/viewer/collab/collaboration.svelte.d.ts.map +1 -0
  33. package/dist/viewer/collab/components/props.d.ts +79 -0
  34. package/dist/viewer/collab/components/props.d.ts.map +1 -0
  35. package/dist/viewer/collab/components/share-helpers.d.ts +29 -0
  36. package/dist/viewer/collab/components/share-helpers.d.ts.map +1 -0
  37. package/dist/viewer/collab/index.d.ts +15 -0
  38. package/dist/viewer/collab/index.d.ts.map +1 -0
  39. package/dist/viewer/component.d.ts +13 -0
  40. package/dist/viewer/component.d.ts.map +1 -0
  41. package/dist/viewer/components/index.d.ts +7 -0
  42. package/dist/viewer/components/index.d.ts.map +1 -0
  43. package/dist/viewer/components/props.d.ts +185 -0
  44. package/dist/viewer/components/props.d.ts.map +1 -0
  45. package/dist/viewer/components/ribbon/animations/animation-categories.d.ts +10 -0
  46. package/dist/viewer/components/ribbon/animations/animation-categories.d.ts.map +1 -0
  47. package/dist/viewer/components/ribbon/design/theme-swatches.d.ts +16 -0
  48. package/dist/viewer/components/ribbon/design/theme-swatches.d.ts.map +1 -0
  49. package/dist/viewer/components/ribbon/insert/shape-glyphs.d.ts +8 -0
  50. package/dist/viewer/components/ribbon/insert/shape-glyphs.d.ts.map +1 -0
  51. package/dist/viewer/components/ribbon/ribbon-tabs.d.ts +17 -0
  52. package/dist/viewer/components/ribbon/ribbon-tabs.d.ts.map +1 -0
  53. package/dist/viewer/components/ribbon/ribbon-types.d.ts +67 -0
  54. package/dist/viewer/components/ribbon/ribbon-types.d.ts.map +1 -0
  55. package/dist/viewer/components/ribbon/transitions/transition-presets.d.ts +10 -0
  56. package/dist/viewer/components/ribbon/transitions/transition-presets.d.ts.map +1 -0
  57. package/dist/viewer/editor/editing-api.d.ts +20 -0
  58. package/dist/viewer/editor/editing-api.d.ts.map +1 -0
  59. package/dist/viewer/editor/editor-animation-controller.d.ts +25 -0
  60. package/dist/viewer/editor/editor-animation-controller.d.ts.map +1 -0
  61. package/dist/viewer/editor/editor-arrange-controller.d.ts +24 -0
  62. package/dist/viewer/editor/editor-arrange-controller.d.ts.map +1 -0
  63. package/dist/viewer/editor/editor-arrange-ops.d.ts +28 -0
  64. package/dist/viewer/editor/editor-arrange-ops.d.ts.map +1 -0
  65. package/dist/viewer/editor/editor-background-controller.d.ts +21 -0
  66. package/dist/viewer/editor/editor-background-controller.d.ts.map +1 -0
  67. package/dist/viewer/editor/editor-clipboard-controller.d.ts +18 -0
  68. package/dist/viewer/editor/editor-clipboard-controller.d.ts.map +1 -0
  69. package/dist/viewer/editor/editor-clipboard.d.ts +20 -0
  70. package/dist/viewer/editor/editor-clipboard.d.ts.map +1 -0
  71. package/dist/viewer/editor/editor-controller-geometry.d.ts +8 -0
  72. package/dist/viewer/editor/editor-controller-geometry.d.ts.map +1 -0
  73. package/dist/viewer/editor/editor-controller.svelte.d.ts +43 -0
  74. package/dist/viewer/editor/editor-controller.svelte.d.ts.map +1 -0
  75. package/dist/viewer/editor/editor-element-controller.d.ts +21 -0
  76. package/dist/viewer/editor/editor-element-controller.d.ts.map +1 -0
  77. package/dist/viewer/editor/editor-equation-controller.svelte.d.ts +12 -0
  78. package/dist/viewer/editor/editor-equation-controller.svelte.d.ts.map +1 -0
  79. package/dist/viewer/editor/editor-find-replace.svelte.d.ts +39 -0
  80. package/dist/viewer/editor/editor-find-replace.svelte.d.ts.map +1 -0
  81. package/dist/viewer/editor/editor-format-mutations.d.ts +39 -0
  82. package/dist/viewer/editor/editor-format-mutations.d.ts.map +1 -0
  83. package/dist/viewer/editor/editor-format-painter-controller.svelte.d.ts +13 -0
  84. package/dist/viewer/editor/editor-format-painter-controller.svelte.d.ts.map +1 -0
  85. package/dist/viewer/editor/editor-geometry.d.ts +29 -0
  86. package/dist/viewer/editor/editor-geometry.d.ts.map +1 -0
  87. package/dist/viewer/editor/editor-gestures.d.ts +48 -0
  88. package/dist/viewer/editor/editor-gestures.d.ts.map +1 -0
  89. package/dist/viewer/editor/editor-ink-controller.svelte.d.ts +59 -0
  90. package/dist/viewer/editor/editor-ink-controller.svelte.d.ts.map +1 -0
  91. package/dist/viewer/editor/editor-ink-gesture.d.ts +37 -0
  92. package/dist/viewer/editor/editor-ink-gesture.d.ts.map +1 -0
  93. package/dist/viewer/editor/editor-insert-action-button.d.ts +13 -0
  94. package/dist/viewer/editor/editor-insert-action-button.d.ts.map +1 -0
  95. package/dist/viewer/editor/editor-insert-chart.d.ts +10 -0
  96. package/dist/viewer/editor/editor-insert-chart.d.ts.map +1 -0
  97. package/dist/viewer/editor/editor-insert-equation.d.ts +5 -0
  98. package/dist/viewer/editor/editor-insert-equation.d.ts.map +1 -0
  99. package/dist/viewer/editor/editor-insert-field.d.ts +17 -0
  100. package/dist/viewer/editor/editor-insert-field.d.ts.map +1 -0
  101. package/dist/viewer/editor/editor-insert-media.d.ts +10 -0
  102. package/dist/viewer/editor/editor-insert-media.d.ts.map +1 -0
  103. package/dist/viewer/editor/editor-insert-smart-art.d.ts +8 -0
  104. package/dist/viewer/editor/editor-insert-smart-art.d.ts.map +1 -0
  105. package/dist/viewer/editor/editor-insert.d.ts +40 -0
  106. package/dist/viewer/editor/editor-insert.d.ts.map +1 -0
  107. package/dist/viewer/editor/editor-keyboard.d.ts +31 -0
  108. package/dist/viewer/editor/editor-keyboard.d.ts.map +1 -0
  109. package/dist/viewer/editor/editor-master-controller.d.ts +17 -0
  110. package/dist/viewer/editor/editor-master-controller.d.ts.map +1 -0
  111. package/dist/viewer/editor/editor-mutations.d.ts +59 -0
  112. package/dist/viewer/editor/editor-mutations.d.ts.map +1 -0
  113. package/dist/viewer/editor/editor-paragraph-mutations.d.ts +10 -0
  114. package/dist/viewer/editor/editor-paragraph-mutations.d.ts.map +1 -0
  115. package/dist/viewer/editor/editor-selection-gestures.d.ts +24 -0
  116. package/dist/viewer/editor/editor-selection-gestures.d.ts.map +1 -0
  117. package/dist/viewer/editor/editor-selection.svelte.d.ts +32 -0
  118. package/dist/viewer/editor/editor-selection.svelte.d.ts.map +1 -0
  119. package/dist/viewer/editor/editor-slide-ops.d.ts +23 -0
  120. package/dist/viewer/editor/editor-slide-ops.d.ts.map +1 -0
  121. package/dist/viewer/editor/editor-slides-controller.d.ts +22 -0
  122. package/dist/viewer/editor/editor-slides-controller.d.ts.map +1 -0
  123. package/dist/viewer/editor/editor-state.svelte.d.ts +102 -0
  124. package/dist/viewer/editor/editor-state.svelte.d.ts.map +1 -0
  125. package/dist/viewer/editor/editor-template-controller.d.ts +12 -0
  126. package/dist/viewer/editor/editor-template-controller.d.ts.map +1 -0
  127. package/dist/viewer/editor/editor-text-extra-mutations.d.ts +18 -0
  128. package/dist/viewer/editor/editor-text-extra-mutations.d.ts.map +1 -0
  129. package/dist/viewer/editor/editor-transition-controller.d.ts +22 -0
  130. package/dist/viewer/editor/editor-transition-controller.d.ts.map +1 -0
  131. package/dist/viewer/editor/editor-zorder.d.ts +16 -0
  132. package/dist/viewer/editor/editor-zorder.d.ts.map +1 -0
  133. package/dist/viewer/editor/element-hit.d.ts +17 -0
  134. package/dist/viewer/editor/element-hit.d.ts.map +1 -0
  135. package/dist/viewer/editor/index.d.ts +45 -0
  136. package/dist/viewer/editor/index.d.ts.map +1 -0
  137. package/dist/viewer/editor/inline-text.d.ts +36 -0
  138. package/dist/viewer/editor/inline-text.d.ts.map +1 -0
  139. package/dist/viewer/editor/types.d.ts +12 -0
  140. package/dist/viewer/editor/types.d.ts.map +1 -0
  141. package/dist/viewer/export/export-controller.svelte.d.ts +77 -0
  142. package/dist/viewer/export/export-controller.svelte.d.ts.map +1 -0
  143. package/dist/viewer/export/export-gif.d.ts +42 -0
  144. package/dist/viewer/export/export-gif.d.ts.map +1 -0
  145. package/dist/viewer/export/export-print.d.ts +55 -0
  146. package/dist/viewer/export/export-print.d.ts.map +1 -0
  147. package/dist/viewer/export/export-ui.svelte.d.ts +45 -0
  148. package/dist/viewer/export/export-ui.svelte.d.ts.map +1 -0
  149. package/dist/viewer/export/export-video.d.ts +56 -0
  150. package/dist/viewer/export/export-video.d.ts.map +1 -0
  151. package/dist/viewer/export/export-wiring.svelte.d.ts +35 -0
  152. package/dist/viewer/export/export-wiring.svelte.d.ts.map +1 -0
  153. package/dist/viewer/export/exporting-api.d.ts +19 -0
  154. package/dist/viewer/export/exporting-api.d.ts.map +1 -0
  155. package/dist/viewer/export/index.d.ts +16 -0
  156. package/dist/viewer/export/index.d.ts.map +1 -0
  157. package/dist/viewer/export/rasterize-slide.d.ts +44 -0
  158. package/dist/viewer/export/rasterize-slide.d.ts.map +1 -0
  159. package/dist/viewer/export/render-to-canvas.d.ts +15 -0
  160. package/dist/viewer/export/render-to-canvas.d.ts.map +1 -0
  161. package/dist/viewer/index.d.ts +7536 -7597
  162. package/dist/viewer/index.d.ts.map +1 -0
  163. package/dist/viewer/index.js +1 -1
  164. package/dist/viewer/master/master-view.d.ts +7 -0
  165. package/dist/viewer/master/master-view.d.ts.map +1 -0
  166. package/dist/viewer/presentation/animation-playback.svelte.d.ts +57 -0
  167. package/dist/viewer/presentation/animation-playback.svelte.d.ts.map +1 -0
  168. package/dist/viewer/presentation/apply-animation-styles.d.ts +8 -0
  169. package/dist/viewer/presentation/apply-animation-styles.d.ts.map +1 -0
  170. package/dist/viewer/presentation/index.d.ts +10 -0
  171. package/dist/viewer/presentation/index.d.ts.map +1 -0
  172. package/dist/viewer/presentation/keyframes.d.ts +3 -0
  173. package/dist/viewer/presentation/keyframes.d.ts.map +1 -0
  174. package/dist/viewer/presentation/presentation-controller.svelte.d.ts +69 -0
  175. package/dist/viewer/presentation/presentation-controller.svelte.d.ts.map +1 -0
  176. package/dist/viewer/presentation/presentation-effects.svelte.d.ts +31 -0
  177. package/dist/viewer/presentation/presentation-effects.svelte.d.ts.map +1 -0
  178. package/dist/viewer/render/chart-view.d.ts +35 -0
  179. package/dist/viewer/render/chart-view.d.ts.map +1 -0
  180. package/dist/viewer/render/contentpart-view.d.ts +24 -0
  181. package/dist/viewer/render/contentpart-view.d.ts.map +1 -0
  182. package/dist/viewer/render/index.d.ts +25 -0
  183. package/dist/viewer/render/index.d.ts.map +1 -0
  184. package/dist/viewer/render/ink-view.d.ts +25 -0
  185. package/dist/viewer/render/ink-view.d.ts.map +1 -0
  186. package/dist/viewer/render/media-view.d.ts +17 -0
  187. package/dist/viewer/render/media-view.d.ts.map +1 -0
  188. package/dist/viewer/render/model3d-view.d.ts +16 -0
  189. package/dist/viewer/render/model3d-view.d.ts.map +1 -0
  190. package/dist/viewer/render/ole-view.d.ts +44 -0
  191. package/dist/viewer/render/ole-view.d.ts.map +1 -0
  192. package/dist/viewer/render/smart-art-3d-view.d.ts +18 -0
  193. package/dist/viewer/render/smart-art-3d-view.d.ts.map +1 -0
  194. package/dist/viewer/render/smartart-view.d.ts +54 -0
  195. package/dist/viewer/render/smartart-view.d.ts.map +1 -0
  196. package/dist/viewer/render/table-view.d.ts +39 -0
  197. package/dist/viewer/render/table-view.d.ts.map +1 -0
  198. package/dist/viewer/render/zoom-view.d.ts +18 -0
  199. package/dist/viewer/render/zoom-view.d.ts.map +1 -0
  200. package/dist/viewer/state/autosave.svelte.d.ts +61 -0
  201. package/dist/viewer/state/autosave.svelte.d.ts.map +1 -0
  202. package/dist/viewer/state/fullscreen.d.ts +16 -0
  203. package/dist/viewer/state/fullscreen.d.ts.map +1 -0
  204. package/dist/viewer/state/index.d.ts +9 -0
  205. package/dist/viewer/state/index.d.ts.map +1 -0
  206. package/dist/viewer/state/layout-state.svelte.d.ts +30 -0
  207. package/dist/viewer/state/layout-state.svelte.d.ts.map +1 -0
  208. package/dist/viewer/state/loader-helpers.d.ts +27 -0
  209. package/dist/viewer/state/loader-helpers.d.ts.map +1 -0
  210. package/dist/viewer/state/navigation.d.ts +26 -0
  211. package/dist/viewer/state/navigation.d.ts.map +1 -0
  212. package/dist/viewer/state/presentation-loader.svelte.d.ts +41 -0
  213. package/dist/viewer/state/presentation-loader.svelte.d.ts.map +1 -0
  214. package/dist/viewer/state/render-context.d.ts +9 -0
  215. package/dist/viewer/state/render-context.d.ts.map +1 -0
  216. package/dist/viewer/state/smart-art-3d-context.d.ts +22 -0
  217. package/dist/viewer/state/smart-art-3d-context.d.ts.map +1 -0
  218. package/dist/viewer/state/viewer-effects.svelte.d.ts +31 -0
  219. package/dist/viewer/state/viewer-effects.svelte.d.ts.map +1 -0
  220. package/dist/viewer/state/viewer-state.svelte.d.ts +36 -0
  221. package/dist/viewer/state/viewer-state.svelte.d.ts.map +1 -0
  222. package/dist/viewer/state/viewport-handlers.d.ts +24 -0
  223. package/dist/viewer/state/viewport-handlers.d.ts.map +1 -0
  224. package/dist/viewer/style/connector-label.d.ts +13 -0
  225. package/dist/viewer/style/connector-label.d.ts.map +1 -0
  226. package/dist/viewer/style/css.d.ts +13 -0
  227. package/dist/viewer/style/css.d.ts.map +1 -0
  228. package/dist/viewer/style/element-style.d.ts +26 -0
  229. package/dist/viewer/style/element-style.d.ts.map +1 -0
  230. package/dist/viewer/style/index.d.ts +5 -0
  231. package/dist/viewer/style/index.d.ts.map +1 -0
  232. package/dist/viewer/style/merge-3d.d.ts +10 -0
  233. package/dist/viewer/style/merge-3d.d.ts.map +1 -0
  234. package/dist/viewer/style/text-style.d.ts +4 -0
  235. package/dist/viewer/style/text-style.d.ts.map +1 -0
  236. package/dist/viewer/types.d.ts +189 -0
  237. package/dist/viewer/types.d.ts.map +1 -0
  238. package/package.json +6 -4
@@ -0,0 +1,56 @@
1
+ import { ExportProgress, RasterizeSlide } from './export-controller.svelte';
2
+ /**
3
+ * Video (WebM) export driven by the shared `video-plan` maths: segment timing
4
+ * comes from `planVideoSegments` (default duration + per-slide overrides +
5
+ * fps -> frame count), the frame pacing from `fpsToFrameIntervalMs`, and the
6
+ * recorder MIME type from `pickSupportedMimeType(WEBM_MIME_CANDIDATES)`. This
7
+ * module owns the browser glue only: rasterise every slide first (capture
8
+ * phase), then replay each canvas onto a recording canvas whose
9
+ * `captureStream()` feeds a `MediaRecorder` (recording phase). Mirrors
10
+ * React's `exportAllSlidesAsVideo`, minus the live-stage slide flipping (the
11
+ * injected rasteriser renders off-screen instead).
12
+ */
13
+ /** Options for the WebM video export. */
14
+ export interface ExportVideoOptions {
15
+ /** Duration each slide is shown, in milliseconds. Default 3000. */
16
+ slideDurationMs?: number;
17
+ /** Per-slide duration overrides in milliseconds (index maps to slide index). */
18
+ slideTimingsMs?: number[];
19
+ /** Recording frame rate. Default 30. */
20
+ fps?: number;
21
+ /** Recorder bitrate. Default 5,000,000 (5 Mbps). */
22
+ videoBitsPerSecond?: number;
23
+ /** Capture-phase progress callback: `(currentSlide, totalSlides)`. */
24
+ onProgress?: ExportProgress;
25
+ /** Recording-phase progress callback: `(currentSlide, totalSlides)`. */
26
+ onRecordProgress?: ExportProgress;
27
+ /** Abort the export early; checked between slides and between frames. */
28
+ signal?: AbortSignal;
29
+ }
30
+ /** The `MediaRecorder` surface this module drives (mockable in unit tests). */
31
+ export interface RecorderLike {
32
+ start(): void;
33
+ stop(): void;
34
+ ondataavailable: ((event: {
35
+ data: Blob;
36
+ }) => void) | null;
37
+ onstop: (() => void) | null;
38
+ onerror: ((event: unknown) => void) | null;
39
+ }
40
+ /** Injected capture/recording dependencies (kept DOM-free for unit tests). */
41
+ export interface VideoCaptureDeps {
42
+ /** Live slide count; read fresh on every call. */
43
+ getSlideCount(): number;
44
+ rasterizeSlide: RasterizeSlide;
45
+ /** Canvas factory override (test seam). Defaults to `document.createElement`. */
46
+ createCanvas?: (width: number, height: number) => HTMLCanvasElement;
47
+ /** Recorder factory override (test seam). Defaults to `new MediaRecorder`. */
48
+ createRecorder?: (stream: MediaStream, options: MediaRecorderOptions) => RecorderLike;
49
+ }
50
+ /**
51
+ * Capture every slide and record the sequence as a WebM video Blob, holding
52
+ * each slide for its planned duration. Rejects with the shared `AbortError`
53
+ * when `signal` aborts (the recorder is stopped first).
54
+ */
55
+ export declare function exportSlidesToWebmBlob(deps: VideoCaptureDeps, options?: ExportVideoOptions): Promise<Blob>;
56
+ //# sourceMappingURL=export-video.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"export-video.d.ts","sourceRoot":"","sources":["../../../src/viewer/export/export-video.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAEjF;;;;;;;;;;GAUG;AAEH,yCAAyC;AACzC,MAAM,WAAW,kBAAkB;IAClC,mEAAmE;IACnE,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,gFAAgF;IAChF,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;IAC1B,wCAAwC;IACxC,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,oDAAoD;IACpD,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,sEAAsE;IACtE,UAAU,CAAC,EAAE,cAAc,CAAC;IAC5B,wEAAwE;IACxE,gBAAgB,CAAC,EAAE,cAAc,CAAC;IAClC,yEAAyE;IACzE,MAAM,CAAC,EAAE,WAAW,CAAC;CACrB;AAED,+EAA+E;AAC/E,MAAM,WAAW,YAAY;IAC5B,KAAK,IAAI,IAAI,CAAC;IACd,IAAI,IAAI,IAAI,CAAC;IACb,eAAe,EAAE,CAAC,CAAC,KAAK,EAAE;QAAE,IAAI,EAAE,IAAI,CAAA;KAAE,KAAK,IAAI,CAAC,GAAG,IAAI,CAAC;IAC1D,MAAM,EAAE,CAAC,MAAM,IAAI,CAAC,GAAG,IAAI,CAAC;IAC5B,OAAO,EAAE,CAAC,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,CAAC,GAAG,IAAI,CAAC;CAC3C;AAED,8EAA8E;AAC9E,MAAM,WAAW,gBAAgB;IAChC,kDAAkD;IAClD,aAAa,IAAI,MAAM,CAAC;IACxB,cAAc,EAAE,cAAc,CAAC;IAC/B,iFAAiF;IACjF,YAAY,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,KAAK,iBAAiB,CAAC;IACpE,8EAA8E;IAC9E,cAAc,CAAC,EAAE,CAAC,MAAM,EAAE,WAAW,EAAE,OAAO,EAAE,oBAAoB,KAAK,YAAY,CAAC;CACtF;AAsBD;;;;GAIG;AACH,wBAAsB,sBAAsB,CAC3C,IAAI,EAAE,gBAAgB,EACtB,OAAO,GAAE,kBAAuB,GAC9B,OAAO,CAAC,IAAI,CAAC,CA0Ef"}
@@ -0,0 +1,35 @@
1
+ import { PptxSlide } from 'pptx-viewer-core';
2
+ import { CanvasSize } from 'pptx-viewer-shared';
3
+ import { Translator } from '../../i18n/translator';
4
+ import { ExportController } from './export-controller.svelte';
5
+ export interface ExportWiringDeps {
6
+ /**
7
+ * Host the off-screen capture stage is appended to. Read lazily (not
8
+ * captured eagerly): the viewer root `bind:this` is `undefined` until after
9
+ * mount, but no export can be triggered before then anyway, so the
10
+ * rasteriser is only built on the first `exportSlidePng`/`exportPdf` call.
11
+ */
12
+ getContainer(): HTMLElement | undefined;
13
+ getSlides(): PptxSlide[];
14
+ getCanvasSize(): CanvasSize;
15
+ getMediaDataUrls(): Map<string, string>;
16
+ getCurrent(): number;
17
+ getTranslator(): Translator;
18
+ getSmartArt3D(): boolean;
19
+ }
20
+ export interface ExportWiring {
21
+ /** The reactive PNG/PDF export controller (`exporting` drives a spinner). */
22
+ controller: ExportController;
23
+ /** Tear down the off-screen capture stage (component destroy). */
24
+ destroy(): void;
25
+ }
26
+ /**
27
+ * Build the PNG/PDF export feature for one `PowerPointViewer` instance: the
28
+ * off-screen rasterisation stage (`rasterize-slide.ts`, built lazily since it
29
+ * needs a live container element) plus the reactive `ExportController`
30
+ * wired to it. Extracted from `PowerPointViewer.svelte` purely to keep the
31
+ * component's script under the file-size budget, mirroring the vanilla
32
+ * binding's `export-lifecycle.ts`.
33
+ */
34
+ export declare function createExportWiring(deps: ExportWiringDeps): ExportWiring;
35
+ //# sourceMappingURL=export-wiring.svelte.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"export-wiring.svelte.d.ts","sourceRoot":"","sources":["../../../src/viewer/export/export-wiring.svelte.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAErD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AAI9D,MAAM,WAAW,gBAAgB;IAChC;;;;;OAKG;IACH,YAAY,IAAI,WAAW,GAAG,SAAS,CAAC;IACxC,SAAS,IAAI,SAAS,EAAE,CAAC;IACzB,aAAa,IAAI,UAAU,CAAC;IAC5B,gBAAgB,IAAI,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACxC,UAAU,IAAI,MAAM,CAAC;IACrB,aAAa,IAAI,UAAU,CAAC;IAC5B,aAAa,IAAI,OAAO,CAAC;CACzB;AAED,MAAM,WAAW,YAAY;IAC5B,6EAA6E;IAC7E,UAAU,EAAE,gBAAgB,CAAC;IAC7B,kEAAkE;IAClE,OAAO,IAAI,IAAI,CAAC;CAChB;AAED;;;;;;;GAOG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,gBAAgB,GAAG,YAAY,CAiCvE"}
@@ -0,0 +1,19 @@
1
+ import { ExportController, ExportPdfOptions } from './export-controller.svelte';
2
+ import { ExportGifOptions } from './export-gif';
3
+ import { PrintOptions } from './export-print';
4
+ import { ExportVideoOptions } from './export-video';
5
+ /** The imperative export API exposed on the `PowerPointViewer` instance. */
6
+ export interface ExportingApi {
7
+ exportSlidePng(index?: number): Promise<void>;
8
+ exportPdf(options?: ExportPdfOptions): Promise<void>;
9
+ exportGif(options?: ExportGifOptions): Promise<void>;
10
+ exportVideo(options?: ExportVideoOptions): Promise<void>;
11
+ print(options?: PrintOptions): Promise<boolean>;
12
+ }
13
+ /**
14
+ * Build the imperative export API bound to a live `ExportController`.
15
+ * Extracted so `PowerPointViewer.svelte` only re-exports thin, one-line
16
+ * bindings, matching the editing API's `editing-api.ts`.
17
+ */
18
+ export declare function createExportingApi(exporter: ExportController): ExportingApi;
19
+ //# sourceMappingURL=exporting-api.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"exporting-api.d.ts","sourceRoot":"","sources":["../../../src/viewer/export/exporting-api.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AACrF,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AACrD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AACnD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AAEzD,4EAA4E;AAC5E,MAAM,WAAW,YAAY;IAC5B,cAAc,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC9C,SAAS,CAAC,OAAO,CAAC,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACrD,SAAS,CAAC,OAAO,CAAC,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACrD,WAAW,CAAC,OAAO,CAAC,EAAE,kBAAkB,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACzD,KAAK,CAAC,OAAO,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;CAChD;AAED;;;;GAIG;AACH,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,gBAAgB,GAAG,YAAY,CAQ3E"}
@@ -0,0 +1,16 @@
1
+ export type { ExportControllerDeps, ExportPdfOptions, ExportProgress, RasterizeSlide, } from './export-controller.svelte';
2
+ export { ExportController } from './export-controller.svelte';
3
+ export type { ExportWiring, ExportWiringDeps } from './export-wiring.svelte';
4
+ export { createExportWiring } from './export-wiring.svelte';
5
+ export type { ExportGifOptions, GifCaptureDeps } from './export-gif';
6
+ export { exportSlidesToGifBlob } from './export-gif';
7
+ export type { OpenPrintWindow, PrintDeps, PrintOptions } from './export-print';
8
+ export { defaultOpenPrintWindow, printSlides } from './export-print';
9
+ export type { ExportVideoOptions, RecorderLike, VideoCaptureDeps } from './export-video';
10
+ export { exportSlidesToWebmBlob } from './export-video';
11
+ export type { ExportingApi } from './exporting-api';
12
+ export { createExportingApi } from './exporting-api';
13
+ export type { RasterizeSlideController, RasterizeSlideDeps } from './rasterize-slide';
14
+ export { createRasterizeSlide } from './rasterize-slide';
15
+ export { renderToCanvas } from './render-to-canvas';
16
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/viewer/export/index.ts"],"names":[],"mappings":"AAAA,YAAY,EACX,oBAAoB,EACpB,gBAAgB,EAChB,cAAc,EACd,cAAc,GACd,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AAC9D,YAAY,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC7E,OAAO,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAC5D,YAAY,EAAE,gBAAgB,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AACrE,OAAO,EAAE,qBAAqB,EAAE,MAAM,cAAc,CAAC;AACrD,YAAY,EAAE,eAAe,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC/E,OAAO,EAAE,sBAAsB,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AACrE,YAAY,EAAE,kBAAkB,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AACzF,OAAO,EAAE,sBAAsB,EAAE,MAAM,gBAAgB,CAAC;AACxD,YAAY,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AACpD,OAAO,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AACrD,YAAY,EAAE,wBAAwB,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AACtF,OAAO,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AACzD,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC"}
@@ -0,0 +1,44 @@
1
+ import { PptxSlide } from 'pptx-viewer-core';
2
+ import { CanvasSize } from 'pptx-viewer-shared';
3
+ import { Translator } from '../../i18n/translator';
4
+ export interface RasterizeSlideDeps {
5
+ doc: Document;
6
+ /** Host the off-screen capture stage is appended to; removed on `destroy()`. */
7
+ container: HTMLElement;
8
+ getSlides(): PptxSlide[];
9
+ getCanvasSize(): CanvasSize;
10
+ getMediaDataUrls(): Map<string, string>;
11
+ getTranslator(): Translator;
12
+ /** Opt-in WebGL SmartArt renderer flag; see `PowerPointViewerProps.smartArt3D`. */
13
+ smartArt3D: boolean;
14
+ /**
15
+ * Overridable frame-wait before capture (test seam: the real
16
+ * `requestAnimationFrame` double-wait is not worth driving through fake
17
+ * timers). Defaults to {@link nextFrame}.
18
+ */
19
+ waitForFrame?: () => Promise<void>;
20
+ }
21
+ export interface RasterizeSlideController {
22
+ /** Render slide `index` off-screen at scale 1 and capture it with html2canvas-pro. */
23
+ rasterizeSlide(index: number): Promise<HTMLCanvasElement>;
24
+ /** Remove the off-screen capture stage from the DOM. */
25
+ destroy(): void;
26
+ }
27
+ /**
28
+ * Build the off-screen capture stage used by PNG/PDF export: a hidden host
29
+ * (fixed off-canvas, `aria-hidden`) that mounts one slide at a time via
30
+ * Svelte 5's imperative `mount()` API (the same `mount`/`unmount` pair the
31
+ * component tests use to render outside the normal component tree), then
32
+ * rasterises it with `renderToCanvas`. The mounted `SlideStage` instance is
33
+ * torn down with `unmount()` and replaced on every call, and again in
34
+ * `destroy()`.
35
+ *
36
+ * Svelte port of the vanilla binding's `createRasterizeSlide`
37
+ * (`packages/vanilla/src/viewer/export/rasterize-slide.ts`): vanilla builds
38
+ * the stage DOM directly via the shared `renderSlideStage`; this binding
39
+ * instead mounts the real `SlideStage.svelte` component, seeding the i18n and
40
+ * SmartArt-3D context it reads deep in the element tree (those contexts are
41
+ * otherwise only provided by the live `PowerPointViewer` root).
42
+ */
43
+ export declare function createRasterizeSlide(deps: RasterizeSlideDeps): RasterizeSlideController;
44
+ //# sourceMappingURL=rasterize-slide.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"rasterize-slide.d.ts","sourceRoot":"","sources":["../../../src/viewer/export/rasterize-slide.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAIrD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAKxD,MAAM,WAAW,kBAAkB;IAClC,GAAG,EAAE,QAAQ,CAAC;IACd,gFAAgF;IAChF,SAAS,EAAE,WAAW,CAAC;IACvB,SAAS,IAAI,SAAS,EAAE,CAAC;IACzB,aAAa,IAAI,UAAU,CAAC;IAC5B,gBAAgB,IAAI,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACxC,aAAa,IAAI,UAAU,CAAC;IAC5B,mFAAmF;IACnF,UAAU,EAAE,OAAO,CAAC;IACpB;;;;OAIG;IACH,YAAY,CAAC,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;CACnC;AAED,MAAM,WAAW,wBAAwB;IACxC,sFAAsF;IACtF,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAAC;IAC1D,wDAAwD;IACxD,OAAO,IAAI,IAAI,CAAC;CAChB;AAwBD;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,kBAAkB,GAAG,wBAAwB,CAkEvF"}
@@ -0,0 +1,15 @@
1
+ import { Options as Html2CanvasOptions } from 'html2canvas-pro';
2
+ /**
3
+ * A drop-in wrapper around `html2canvas-pro` that first normalises modern CSS
4
+ * colour functions (oklch/oklab/lch/lab/color()) to sRGB and applies the
5
+ * shared CSS-preprocessing pass (backdrop-filter, mix-blend-mode, 3D
6
+ * transforms, unsupported features) to the cloned capture document. Svelte
7
+ * port of the vanilla binding's `renderToCanvas` wrapper
8
+ * (`packages/vanilla/src/viewer/export/render-to-canvas.ts`); the pure
9
+ * colour/CSS passes live once in `pptx-viewer-shared`, only this thin
10
+ * html2canvas-pro glue is per-binding. `html2canvas-pro` is imported
11
+ * dynamically so it stays out of the main bundle until export is actually
12
+ * used.
13
+ */
14
+ export declare function renderToCanvas(element: HTMLElement, options?: Partial<Html2CanvasOptions>): Promise<HTMLCanvasElement>;
15
+ //# sourceMappingURL=render-to-canvas.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"render-to-canvas.d.ts","sourceRoot":"","sources":["../../../src/viewer/export/render-to-canvas.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,IAAI,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AAGrE;;;;;;;;;;;GAWG;AACH,wBAAsB,cAAc,CACnC,OAAO,EAAE,WAAW,EACpB,OAAO,GAAE,OAAO,CAAC,kBAAkB,CAAM,GACvC,OAAO,CAAC,iBAAiB,CAAC,CAe5B"}