@christophervr/pptx-viewer 1.5.6 → 1.5.8

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 CHANGED
@@ -4,6 +4,14 @@ All notable changes to this project are documented here.
4
4
  This file is generated from [Conventional Commits](https://www.conventionalcommits.org)
5
5
  by [git-cliff](https://git-cliff.org); do not edit it by hand.
6
6
 
7
+ ## [1.5.7](https://github.com/ChristopherVR/pptx-viewer/releases/tag/@christophervr/pptx-viewer@1.5.7) - 2026-07-23
8
+
9
+ ### Bug Fixes
10
+
11
+ - **cli:** Accept every framework major the viewer packages support (by @ChristopherVR) ([fb00075](https://github.com/ChristopherVR/pptx-viewer/commit/fb000758169a74ad15de48344c458e54b3d8ccde))
12
+
13
+ ## [1.5.6](https://github.com/ChristopherVR/pptx-viewer/releases/tag/@christophervr/pptx-viewer@1.5.6) - 2026-07-23
14
+
7
15
  ## [1.5.5](https://github.com/ChristopherVR/pptx-viewer/releases/tag/@christophervr/pptx-viewer@1.5.5) - 2026-07-18
8
16
 
9
17
  ### Documentation
package/README.md CHANGED
@@ -25,9 +25,9 @@ It first asks what you're building with an arrow-key checklist (`↑`/`↓` to m
25
25
  What are you building with pptx-viewer? (you can pick more than one)
26
26
  (↑/↓ move, space toggle, a select all, enter confirm)
27
27
 
28
- ❯ ◉ React - pptx-react-viewer, a viewer/editor component for a React 19 app
28
+ ❯ ◉ React - pptx-react-viewer, a viewer/editor component for a React 18/19 app
29
29
  ◯ Vue - pptx-vue-viewer, a viewer/editor component for a Vue 3.5+ app
30
- ◯ Angular - pptx-angular-viewer, a viewer/editor component for an Angular 22+ app
30
+ ◯ Angular - pptx-angular-viewer, a viewer/editor component for an Angular 19-22 app
31
31
  ◯ Svelte - pptx-svelte-viewer, a viewer/editor component for a Svelte 5 app
32
32
  ◯ Vanilla JS - pptx-vanilla-viewer, a zero-framework viewer/editor, plain DOM
33
33
  ◯ Core engine only - pptx-viewer-core, the framework-agnostic SDK, no UI
@@ -73,15 +73,15 @@ npx @christophervr/pptx-viewer --pm pnpm # force a pac
73
73
 
74
74
  ## What it installs
75
75
 
76
- | Target | Package | What you get |
77
- | -------------- | -------------------------------------------------------------------------- | ----------------------------------------------------------------------- |
78
- | **React** | [`pptx-react-viewer`](https://www.npmjs.com/package/pptx-react-viewer) | View, edit, present, collaborate, and export `.pptx` files in React 19. |
79
- | **Vue** | [`pptx-vue-viewer`](https://www.npmjs.com/package/pptx-vue-viewer) | The Vue 3.5+ counterpart, feature-equivalent to the React package. |
80
- | **Angular** | [`pptx-angular-viewer`](https://www.npmjs.com/package/pptx-angular-viewer) | The Angular 22+ counterpart, feature-equivalent to the React package. |
81
- | **Svelte** | [`pptx-svelte-viewer`](https://www.npmjs.com/package/pptx-svelte-viewer) | The Svelte 5 counterpart, built on the same shared engine. |
82
- | **Vanilla JS** | [`pptx-vanilla-viewer`](https://www.npmjs.com/package/pptx-vanilla-viewer) | The zero-framework binding: plain DOM, one factory function. |
83
- | **Core only** | [`pptx-viewer-core`](https://www.npmjs.com/package/pptx-viewer-core) | The framework-agnostic parse/edit/save/convert SDK, no UI. |
84
- | **MCP server** | [`pptx-viewer-mcp`](https://www.npmjs.com/package/pptx-viewer-mcp) | 51 PowerPoint editing tools exposed to AI agents (Claude, Cursor, ...). |
76
+ | Target | Package | What you get |
77
+ | -------------- | -------------------------------------------------------------------------- | -------------------------------------------------------------------------- |
78
+ | **React** | [`pptx-react-viewer`](https://www.npmjs.com/package/pptx-react-viewer) | View, edit, present, collaborate, and export `.pptx` files in React 18/19. |
79
+ | **Vue** | [`pptx-vue-viewer`](https://www.npmjs.com/package/pptx-vue-viewer) | The Vue 3.5+ counterpart, feature-equivalent to the React package. |
80
+ | **Angular** | [`pptx-angular-viewer`](https://www.npmjs.com/package/pptx-angular-viewer) | The Angular 19-22 counterpart, feature-equivalent to the React package. |
81
+ | **Svelte** | [`pptx-svelte-viewer`](https://www.npmjs.com/package/pptx-svelte-viewer) | The Svelte 5 counterpart, built on the same shared engine. |
82
+ | **Vanilla JS** | [`pptx-vanilla-viewer`](https://www.npmjs.com/package/pptx-vanilla-viewer) | The zero-framework binding: plain DOM, one factory function. |
83
+ | **Core only** | [`pptx-viewer-core`](https://www.npmjs.com/package/pptx-viewer-core) | The framework-agnostic parse/edit/save/convert SDK, no UI. |
84
+ | **MCP server** | [`pptx-viewer-mcp`](https://www.npmjs.com/package/pptx-viewer-mcp) | 51 PowerPoint editing tools exposed to AI agents (Claude, Cursor, ...). |
85
85
 
86
86
  ## Why this exists
87
87
 
package/dist/index.mjs CHANGED
@@ -119,13 +119,14 @@ function checkCompat(cwd, target) {
119
119
  return { compatible: true, message: null };
120
120
  }
121
121
  const major = extractMajor(installed.version);
122
- if (major === null || major === target.compat.requiredMajor) {
122
+ if (major === null || target.compat.requiredMajors.includes(major)) {
123
123
  return { compatible: true, message: null };
124
124
  }
125
125
  const sourceLabel = installed.source === "resolved" ? "installed" : "declared in package.json";
126
+ const supported = target.compat.requiredMajors.map((m) => `^${m}`).join(" or ");
126
127
  return {
127
128
  compatible: false,
128
- message: `Detected ${target.compat.peerPackage}@${installed.version} (${sourceLabel}) in this project, but ${target.label} requires ${target.compat.peerPackage}@^${target.compat.requiredMajor}. Continuing may change your ${target.compat.peerPackage} version.`
129
+ message: `Detected ${target.compat.peerPackage}@${installed.version} (${sourceLabel}) in this project, but ${target.label} requires ${target.compat.peerPackage}@${supported}. Continuing may change your ${target.compat.peerPackage} version.`
129
130
  };
130
131
  }
131
132
 
@@ -1025,7 +1026,7 @@ var TARGETS = [
1025
1026
  {
1026
1027
  id: "react",
1027
1028
  label: "React",
1028
- description: "pptx-react-viewer - viewer/editor component for a React 19 app",
1029
+ description: "pptx-react-viewer - viewer/editor component for a React 18/19 app",
1029
1030
  mode: "install",
1030
1031
  group: "framework",
1031
1032
  packages: [
@@ -1047,7 +1048,7 @@ import 'pptx-react-viewer/styles.css';
1047
1048
  <PowerPointViewer content={arrayBuffer} canEdit />
1048
1049
 
1049
1050
  Docs: https://www.npmjs.com/package/pptx-react-viewer`,
1050
- compat: { peerPackage: "react", requiredMajor: 19 },
1051
+ compat: { peerPackage: "react", requiredMajors: [18, 19] },
1051
1052
  scaffold: {
1052
1053
  command: "create-vite@latest",
1053
1054
  // --no-interactive/--no-immediate stop create-vite from prompting for a linter
@@ -1093,7 +1094,7 @@ import 'pptx-vue-viewer/styles.css';
1093
1094
  </template>
1094
1095
 
1095
1096
  Docs: https://www.npmjs.com/package/pptx-vue-viewer`,
1096
- compat: { peerPackage: "vue", requiredMajor: 3 },
1097
+ compat: { peerPackage: "vue", requiredMajors: [3] },
1097
1098
  scaffold: {
1098
1099
  command: "create-vite@latest",
1099
1100
  args: (dir) => [dir, "--template", "vue-ts", "--no-interactive", "--no-immediate"],
@@ -1113,7 +1114,7 @@ Docs: https://www.npmjs.com/package/pptx-vue-viewer`,
1113
1114
  {
1114
1115
  id: "angular",
1115
1116
  label: "Angular",
1116
- description: "pptx-angular-viewer - viewer/editor component for an Angular 22+ app",
1117
+ description: "pptx-angular-viewer - viewer/editor component for an Angular 19-22 app",
1117
1118
  mode: "install",
1118
1119
  group: "framework",
1119
1120
  packages: ["pptx-angular-viewer", "@angular/core", "@angular/common", "rxjs"],
@@ -1123,7 +1124,7 @@ import 'pptx-angular-viewer/styles.css';
1123
1124
  <pptx-power-point-viewer [content]="content" />
1124
1125
 
1125
1126
  Docs: https://www.npmjs.com/package/pptx-angular-viewer`,
1126
- compat: { peerPackage: "@angular/core", requiredMajor: 22 },
1127
+ compat: { peerPackage: "@angular/core", requiredMajors: [19, 20, 21, 22] },
1127
1128
  scaffold: {
1128
1129
  command: "@angular/cli@latest",
1129
1130
  // --no-interactive matters even with the flags above supplied: the
@@ -1177,7 +1178,7 @@ Docs: https://www.npmjs.com/package/pptx-angular-viewer`,
1177
1178
  <PowerPointViewer source={bytes} editable />
1178
1179
 
1179
1180
  Docs: https://www.npmjs.com/package/pptx-svelte-viewer`,
1180
- compat: { peerPackage: "svelte", requiredMajor: 5 },
1181
+ compat: { peerPackage: "svelte", requiredMajors: [5] },
1181
1182
  scaffold: {
1182
1183
  command: "create-vite@latest",
1183
1184
  args: (dir) => [dir, "--template", "svelte-ts", "--no-interactive", "--no-immediate"],
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@christophervr/pptx-viewer",
3
- "version": "1.5.6",
3
+ "version": "1.5.8",
4
4
  "description": "Interactive installer for the pptx-viewer family of packages: React, Vue, Angular, Svelte, and vanilla JS viewer components, the framework-agnostic core engine, and the MCP server.",
5
5
  "keywords": [
6
6
  "angular",
@@ -54,7 +54,7 @@
54
54
  },
55
55
  "devDependencies": {
56
56
  "@types/node": "^26.1.1",
57
- "tsdown": "^0.22.12",
57
+ "tsdown": "^0.22.14",
58
58
  "tsup": "^8.5.1",
59
59
  "typescript": "^7.0.2",
60
60
  "vitest": "^4.1.10"