pptx-vanilla-viewer 3.29.0 → 3.30.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +70 -0
- package/README.md +27 -26
- package/dist/index.cjs +55 -55
- package/dist/index.d.ts +18 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +55 -55
- package/package.json +3 -3
package/CHANGELOG.md
CHANGED
|
@@ -7,6 +7,76 @@ A release listed with no entries carried no Conventional Commit in this package'
|
|
|
7
7
|
scope: scripts/release-plan.mjs releases whenever any published file changes, not only on
|
|
8
8
|
conventional commits.
|
|
9
9
|
|
|
10
|
+
## [3.30.1](https://github.com/ChristopherVR/ooxml/releases/tag/pptx-vanilla-viewer@3.30.1) - 2026-10-08
|
|
11
|
+
|
|
12
|
+
### Bug Fixes
|
|
13
|
+
|
|
14
|
+
- **ui:** Keep thin pptx strokes at least one device pixel on screen ([bb1df44](https://github.com/ChristopherVR/ooxml/commit/bb1df4463b9321ce6b57214037ac938bb1d33296))
|
|
15
|
+
- **pptx:** Keep unedited empty table cells free of a:tcPr ([01d4f3d](https://github.com/ChristopherVR/ooxml/commit/01d4f3d36d5acd4fb795b4f33018efa0e3482b06))
|
|
16
|
+
- **pptx:** Default an absent c:gapWidth to 150 ([e16f565](https://github.com/ChristopherVR/ooxml/commit/e16f5651541cfbba9b7a1280e58463c041e507d9))
|
|
17
|
+
|
|
18
|
+
### Refactor
|
|
19
|
+
|
|
20
|
+
- **pptx:** Share the chart XML presence check for a:noFill ([ad7bae0](https://github.com/ChristopherVR/ooxml/commit/ad7bae0ea91758a2e7dcb581c2f472da394e5eb4))
|
|
21
|
+
|
|
22
|
+
## [3.30.0](https://github.com/ChristopherVR/ooxml/releases/tag/pptx-vanilla-viewer@3.30.0) - 2026-10-08
|
|
23
|
+
|
|
24
|
+
### Features
|
|
25
|
+
|
|
26
|
+
- **chart:** Add the neutral chartSpace model ([2544c31](https://github.com/ChristopherVR/ooxml/commit/2544c31319b5cc723b26a2c37b519719693f62b8))
|
|
27
|
+
- **chart:** Parse chart parts from the shared DOM ([49c1b76](https://github.com/ChristopherVR/ooxml/commit/49c1b76e41b5fac972c52a5d8169e9ad14478cfd))
|
|
28
|
+
- **opc:** Patch property parts in place and model app statistics ([66c4cf1](https://github.com/ChristopherVR/ooxml/commit/66c4cf1043d73a6df05131d813cbae7f5af6e35e))
|
|
29
|
+
- **chart:** Write chartSpace parts from the neutral model ([bf6920f](https://github.com/ChristopherVR/ooxml/commit/bf6920fb553ff32c32c3edf9bff652cad3bd71ac))
|
|
30
|
+
- **chart:** Accept text bodies given as XML and drop invalid characters ([816830f](https://github.com/ChristopherVR/ooxml/commit/816830fa29a42491d72b835a9b6eb7b5a617f234))
|
|
31
|
+
- **chart:** Render chartSpace parts to svg ([eb2c12f](https://github.com/ChristopherVR/ooxml/commit/eb2c12f877c0f4c7521a9d71e323120fb9084ca6))
|
|
32
|
+
- **chart:** Model display units, data tables and walls ([b95531a](https://github.com/ChristopherVR/ooxml/commit/b95531a3ff55f09c83676291c4b4857d1943189c))
|
|
33
|
+
- **ui:** Add showCompatibilityToasts root option ([992adda](https://github.com/ChristopherVR/ooxml/commit/992adda597325f8d2c9ca5fcbf612ac4da1b65c0))
|
|
34
|
+
- **opc:** Support shared suite files and embedded editing ([41614b1](https://github.com/ChristopherVR/ooxml/commit/41614b10ef62522fe2dceae695b478b53cca293a))
|
|
35
|
+
|
|
36
|
+
### Bug Fixes
|
|
37
|
+
|
|
38
|
+
- **chart:** Paint coincident linear stops as the native one-step ramp ([eabbc5e](https://github.com/ChristopherVR/ooxml/commit/eabbc5e3dc968f0d40246293238ef88ae7b004f4))
|
|
39
|
+
- **pptx:** List line breaks in slide titles as spaces in app.xml ([45f496a](https://github.com/ChristopherVR/ooxml/commit/45f496ab747f90f7b8764a295c8d0df8414141c0))
|
|
40
|
+
- **pptx:** Export the neutral SmartArt type names from the public entry ([0f081d2](https://github.com/ChristopherVR/ooxml/commit/0f081d260fbaf034129114fcba6137c900dbf846))
|
|
41
|
+
- **chart:** Read the line chart group's own c:smooth ([a5cfd0d](https://github.com/ChristopherVR/ooxml/commit/a5cfd0d45af11e2b2214a9abdc86ce33ba5312be))
|
|
42
|
+
- **pptx:** Read chart style numbers from the mc:Fallback ([045faf7](https://github.com/ChristopherVR/ooxml/commit/045faf71cadf05f1c9bc4b3155003abe9520b764))
|
|
43
|
+
- **pptx:** Treat a bare data-label switch as on ([637f938](https://github.com/ChristopherVR/ooxml/commit/637f938814baced0d2f72aeca7142e2281db0ca3))
|
|
44
|
+
- **pptx:** Declare c15 and c16 prefixes in chart extension writers ([7b93a01](https://github.com/ChristopherVR/ooxml/commit/7b93a010a77c1ef8433f75fc8d2f3ad810659c75))
|
|
45
|
+
- **pptx:** Repair chart parts this library once saved with undeclared prefixes ([a5f77af](https://github.com/ChristopherVR/ooxml/commit/a5f77af3bf0a2661af35091da920ca707e4fcb96))
|
|
46
|
+
- **pptx:** Paint chart label fonts in every binding ([13493fc](https://github.com/ChristopherVR/ooxml/commit/13493fc180d39cb2622d5f22fd331a9e0abbb781))
|
|
47
|
+
- **pptx:** Build chart style palettes over the deck theme ([7ab9527](https://github.com/ChristopherVR/ooxml/commit/7ab9527743dbb1dc1438d2d3e6e73553b13e54b7))
|
|
48
|
+
- **pptx:** Read each table cell paragraph's own layout ([bcc61f3](https://github.com/ChristopherVR/ooxml/commit/bcc61f3b3e98564e50d018a4a37576f3b237fb57))
|
|
49
|
+
- **pptx:** Save each table cell paragraph's own alignment ([0d43f35](https://github.com/ChristopherVR/ooxml/commit/0d43f3530d5cefd52b98193be98329b4ec66547b))
|
|
50
|
+
- **pptx:** Align every paragraph when a table cell is aligned ([1bb7e7d](https://github.com/ChristopherVR/ooxml/commit/1bb7e7de568a0d8a6808862fd6dc4367782e9686))
|
|
51
|
+
- **pptx:** Skip chart axis lines and gridlines set to no line ([c6a9fcb](https://github.com/ChristopherVR/ooxml/commit/c6a9fcb0fb07498acf6db64d9ee9417339a6f2ac))
|
|
52
|
+
- **pptx:** Apply a table cell run's character spacing ([6d1ee14](https://github.com/ChristopherVR/ooxml/commit/6d1ee148cbd0ea058ae032a7a3b8fe9cdace1ce1))
|
|
53
|
+
- **pptx:** Size an empty table cell from its end paragraph properties ([30da656](https://github.com/ChristopherVR/ooxml/commit/30da656aa60039fff3c912c20cd286dc49055adf))
|
|
54
|
+
|
|
55
|
+
### Performance
|
|
56
|
+
|
|
57
|
+
- **xml:** Add a lightweight reader for large plain fragments ([5e0318f](https://github.com/ChristopherVR/ooxml/commit/5e0318facba5e0766dd6d1f26172eb94177fe471))
|
|
58
|
+
|
|
59
|
+
### Refactor
|
|
60
|
+
|
|
61
|
+
- **pptx:** Compile the ui helpers under the strict project ([edbff0a](https://github.com/ChristopherVR/ooxml/commit/edbff0a3fd1863efa394da6c9fe826514fda5f7c))
|
|
62
|
+
- **chart:** Use the Drawing type names ([76bf49c](https://github.com/ChristopherVR/ooxml/commit/76bf49c0a96519816c79375eed1aa9ead84f8b10))
|
|
63
|
+
- **diagram:** Add the neutral SmartArt model types ([b8f4e74](https://github.com/ChristopherVR/ooxml/commit/b8f4e7406362570e085c701dd1e342d534fcc048))
|
|
64
|
+
- **geometry:** Move the preset shape evaluator out of pptx ([c670910](https://github.com/ChristopherVR/ooxml/commit/c670910349b7f6d6d02c335a551518265efde6a9))
|
|
65
|
+
- **diagram:** Move the layout engine out of pptx ([91767c0](https://github.com/ChristopherVR/ooxml/commit/91767c03d4ec9fb2225c47eddd0adc850f187022))
|
|
66
|
+
- **pptx:** Update document properties through opc/properties ([a295f6a](https://github.com/ChristopherVR/ooxml/commit/a295f6a2182eb344e6c9e9a6fe70ba5366268b9c))
|
|
67
|
+
- **diagram:** Port the dgm:choose walkers to ordered XML ([2dfc037](https://github.com/ChristopherVR/ooxml/commit/2dfc0371bb0d4b72e5a3ef4b4cb71bd1a5cb7f81))
|
|
68
|
+
- **diagram:** Move the SmartArt constraint solver into diagram ([bd91ad8](https://github.com/ChristopherVR/ooxml/commit/bd91ad884cf00947957b9620309c885df21d6985))
|
|
69
|
+
- **diagram:** Move the SmartArt interpreter model into diagram ([b24d320](https://github.com/ChristopherVR/ooxml/commit/b24d3200af42eda7c1d7fcc7dcf592202e2fc0f8))
|
|
70
|
+
- **chart:** Move the svg painter into the chart area ([0f9169d](https://github.com/ChristopherVR/ooxml/commit/0f9169d11c5bf92342bc291fdb3f8ef8d84927c5))
|
|
71
|
+
- **pptx:** Build chart models from the neutral parser ([1e38985](https://github.com/ChristopherVR/ooxml/commit/1e389856ae308843d0d86c83b41f6a62284ef1d2))
|
|
72
|
+
- **pptx:** Delete the legacy object-tree chart parser ([b4f0f4f](https://github.com/ChristopherVR/ooxml/commit/b4f0f4f8af4b2eefe49749f5b3c1b1ee7492dba9))
|
|
73
|
+
- **diagram:** Move the SmartArt hierarchy arranger into diagram ([989744c](https://github.com/ChristopherVR/ooxml/commit/989744c5a2ed121eda9b2b11a37815e295c14740))
|
|
74
|
+
- **diagram:** Move the SmartArt layout interpreters into diagram ([3725b73](https://github.com/ChristopherVR/ooxml/commit/3725b7359b5d845012fa7b84b3cddc421446cfbd))
|
|
75
|
+
|
|
76
|
+
### Testing
|
|
77
|
+
|
|
78
|
+
- **pptx:** Compare chart parts with the neutral parser on every deck ([58b16be](https://github.com/ChristopherVR/ooxml/commit/58b16be72bdcf27e291ff5b9bebc139db9cd3607))
|
|
79
|
+
|
|
10
80
|
## [3.29.0](https://github.com/ChristopherVR/ooxml/releases/tag/pptx-vanilla-viewer@3.29.0) - 2026-10-08
|
|
11
81
|
|
|
12
82
|
### Features
|
package/README.md
CHANGED
|
@@ -103,33 +103,34 @@ See the [cross-binding defaults](../../docs/guide/viewport-fit.md).
|
|
|
103
103
|
All options are optional except the container element itself. Beyond the ones
|
|
104
104
|
shown above:
|
|
105
105
|
|
|
106
|
-
| Option | Type | Default | Description
|
|
107
|
-
| -------------------------------------------------------------------------- | ----------------------------------------------------- | ---------------------- |
|
|
108
|
-
| `source` | `string \| ArrayBuffer \| Uint8Array \| Blob \| File` | - | The presentation to open (URL or bytes). Omit to start empty and call `loadFile`/`loadUrl`.
|
|
109
|
-
| `fonts` | `ViewerFontSource[]` | - | Licensed font sources supplied by the host application.
|
|
110
|
-
| `theme` | `ViewerTheme` | - | Chrome theme (colors, radius, CSS vars).
|
|
111
|
-
| `fileName` | `string` | - | Display name shown in the title bar.
|
|
112
|
-
| `locale` / `messages` | `string` / `TranslationMessages` | `'en'` | UI locale and per-locale `pptx.*` dictionaries (see [i18n](#i18n)).
|
|
113
|
-
| `initialSlide` | `number` | `0` | Zero-based slide shown after load.
|
|
114
|
-
| `editable` | `boolean` | `false` | Enable editing (see [Editing](#editing)).
|
|
115
|
-
| `showToolbar` | `boolean` | `true` | Whole ribbon/title-bar/status-bar chrome.
|
|
116
|
-
| `showThumbnails` | `boolean` | `true` | Thumbnail sidebar.
|
|
117
|
-
| `
|
|
118
|
-
| `
|
|
119
|
-
| `
|
|
106
|
+
| Option | Type | Default | Description |
|
|
107
|
+
| -------------------------------------------------------------------------- | ----------------------------------------------------- | ---------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
|
108
|
+
| `source` | `string \| ArrayBuffer \| Uint8Array \| Blob \| File` | - | The presentation to open (URL or bytes). Omit to start empty and call `loadFile`/`loadUrl`. |
|
|
109
|
+
| `fonts` | `ViewerFontSource[]` | - | Licensed font sources supplied by the host application. |
|
|
110
|
+
| `theme` | `ViewerTheme` | - | Chrome theme (colors, radius, CSS vars). |
|
|
111
|
+
| `fileName` | `string` | - | Display name shown in the title bar. |
|
|
112
|
+
| `locale` / `messages` | `string` / `TranslationMessages` | `'en'` | UI locale and per-locale `pptx.*` dictionaries (see [i18n](#i18n)). |
|
|
113
|
+
| `initialSlide` | `number` | `0` | Zero-based slide shown after load. |
|
|
114
|
+
| `editable` | `boolean` | `false` | Enable editing (see [Editing](#editing)). |
|
|
115
|
+
| `showToolbar` | `boolean` | `true` | Whole ribbon/title-bar/status-bar chrome. |
|
|
116
|
+
| `showThumbnails` | `boolean` | `true` | Thumbnail sidebar. |
|
|
117
|
+
| `showCompatibilityToasts` | `boolean` | `true` | Compatibility warning toast stack; `false` hides it, warnings are still collected. |
|
|
118
|
+
| `showFormatToolbar` | `boolean` | `true` | Editing format toolbar row (visible only while editing). |
|
|
119
|
+
| `showInspector` | `boolean` | `true` | Property inspector panel (visible only while editing). |
|
|
120
|
+
| `hiddenActions` | `ToolbarActionId[]` | - | Hide individual buttons/tabs (see [Toolbar customization](#toolbar-customization)). |
|
|
120
121
|
| `customization` | `ViewerCustomization` | - | Hide, lock or remap any part of the UI (ribbon tabs/buttons, File > Options pages/sections/settings, File tab, context menus, shortcuts, panels, AI/collaboration, dialogs); the same helpers (`hideRibbonTab`, `lockSetting`, ...) are on the viewer instance. See the [UI Customization guide](https://christophervr.github.io/ooxml/pptx/guide/customization). |
|
|
121
|
-
| `registry` | `ElementRendererRegistry` | - | Custom element-renderer registry (see [Element coverage](#element-coverage)).
|
|
122
|
-
| `smartArt3D` | `boolean` | `false` | Opt-in Three.js 3D SmartArt renderer (optional `three` peer, lazily imported).
|
|
123
|
-
| `surfaceChart3D`, `barChart3D`, `lineChart3D`, `areaChart3D`, `pieChart3D` | `boolean` | `false` | Independently opt in to interactive Three.js renderers for the matching 3D chart kinds; each falls back to SVG when WebGL is unavailable.
|
|
124
|
-
| `ai` | `PptxAiConfig` | - | Optional AI assistant configuration. The SDK peer loads only when its panel is opened.
|
|
125
|
-
| `autosave` | `boolean` | `true` | Debounced crash-recovery autosave to IndexedDB.
|
|
126
|
-
| `autosaveIntervalMs` | `number` | File > Options cadence | Autosave debounce window.
|
|
127
|
-
| `autosaveFilePath` | `string` | `'presentation.pptx'` | IndexedDB recovery key for autosave snapshots.
|
|
128
|
-
| `collaboration` | `CollaborationConfig` | - | Start a Yjs collaboration session immediately (y-websocket or serverless y-webrtc).
|
|
129
|
-
| `shareDefaults` | `{ roomId?, userName?, serverUrl? }` | - | Prefilled values for the Share/Broadcast dialogs.
|
|
130
|
-
| `availableThemes` / `availableLocales` | catalog entries | - | Choices offered by File > Options.
|
|
131
|
-
| `onThemeChange` / `onLocaleChange` | `(key: string) => void` | - | Host hooks for the File > Options pickers (host owns persistence when supplied).
|
|
132
|
-
| `accountAuth` | `AccountAuthConfig` | - | Optional sign-in hook point for File > Account.
|
|
122
|
+
| `registry` | `ElementRendererRegistry` | - | Custom element-renderer registry (see [Element coverage](#element-coverage)). |
|
|
123
|
+
| `smartArt3D` | `boolean` | `false` | Opt-in Three.js 3D SmartArt renderer (optional `three` peer, lazily imported). |
|
|
124
|
+
| `surfaceChart3D`, `barChart3D`, `lineChart3D`, `areaChart3D`, `pieChart3D` | `boolean` | `false` | Independently opt in to interactive Three.js renderers for the matching 3D chart kinds; each falls back to SVG when WebGL is unavailable. |
|
|
125
|
+
| `ai` | `PptxAiConfig` | - | Optional AI assistant configuration. The SDK peer loads only when its panel is opened. |
|
|
126
|
+
| `autosave` | `boolean` | `true` | Debounced crash-recovery autosave to IndexedDB. |
|
|
127
|
+
| `autosaveIntervalMs` | `number` | File > Options cadence | Autosave debounce window. |
|
|
128
|
+
| `autosaveFilePath` | `string` | `'presentation.pptx'` | IndexedDB recovery key for autosave snapshots. |
|
|
129
|
+
| `collaboration` | `CollaborationConfig` | - | Start a Yjs collaboration session immediately (y-websocket or serverless y-webrtc). |
|
|
130
|
+
| `shareDefaults` | `{ roomId?, userName?, serverUrl? }` | - | Prefilled values for the Share/Broadcast dialogs. |
|
|
131
|
+
| `availableThemes` / `availableLocales` | catalog entries | - | Choices offered by File > Options. |
|
|
132
|
+
| `onThemeChange` / `onLocaleChange` | `(key: string) => void` | - | Host hooks for the File > Options pickers (host owns persistence when supplied). |
|
|
133
|
+
| `accountAuth` | `AccountAuthConfig` | - | Optional sign-in hook point for File > Account. |
|
|
133
134
|
|
|
134
135
|
Callbacks: `onLoad`, `onError`, `onSlideChange`, `onZoomChange`,
|
|
135
136
|
`onPresentationChange`, `onChange` (any document mutation), `onDirtyChange`,
|