pptx-viewer-mcp 1.2.2 → 1.3.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 +17 -0
- package/README.md +2 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +6 -3
- package/dist/index.mjs +6 -3
- package/dist/mcp/index.d.ts +1 -1
- package/dist/mcp/index.js +6 -3
- package/dist/mcp/index.mjs +6 -3
- package/dist/schemas/index.d.ts.map +1 -1
- package/package.json +4 -4
package/CHANGELOG.md
CHANGED
|
@@ -4,6 +4,23 @@ 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.3.0](https://github.com/ChristopherVR/pptx-viewer/releases/tag/pptx-viewer-mcp@1.3.0) - 2026-07-16
|
|
8
|
+
|
|
9
|
+
### Documentation
|
|
10
|
+
|
|
11
|
+
- **packages:** Add package-specific readme visuals (by @ChristopherVR) ([9e20f13](https://github.com/ChristopherVR/pptx-viewer/commit/9e20f133dc8f21db75a1ca5e46e77c0af3c96d66))
|
|
12
|
+
|
|
13
|
+
## [1.2.2](https://github.com/ChristopherVR/pptx-viewer/releases/tag/pptx-viewer-mcp@1.2.2) - 2026-07-13
|
|
14
|
+
|
|
15
|
+
### Bug Fixes
|
|
16
|
+
|
|
17
|
+
- **build:** Restore compatibility after dependency updates (by @ChristopherVR) ([ddbfae6](https://github.com/ChristopherVR/pptx-viewer/commit/ddbfae687669b9e6c64fd3c3b16a592623b79c10))
|
|
18
|
+
|
|
19
|
+
### Dependencies
|
|
20
|
+
|
|
21
|
+
- **deps:** Update fast-xml-parser to 5.10.0 (by @dependabot[bot]) ([6080273](https://github.com/ChristopherVR/pptx-viewer/commit/6080273f6a6f603d10d69a71d54faad1e6d9bf05))
|
|
22
|
+
- **deps:** Update typescript to 7.0.2 (by @dependabot[bot]) ([0a7c1f1](https://github.com/ChristopherVR/pptx-viewer/commit/0a7c1f1f7f0ccdee9537f1e11177b6a39839d221))
|
|
23
|
+
|
|
7
24
|
## [1.2.1](https://github.com/ChristopherVR/pptx-viewer/releases/tag/pptx-viewer-mcp@1.2.1) - 2026-07-11
|
|
8
25
|
|
|
9
26
|
## [1.2.0](https://github.com/ChristopherVR/pptx-viewer/releases/tag/pptx-viewer-mcp@1.2.0) - 2026-07-06
|
package/README.md
CHANGED
|
@@ -5,6 +5,8 @@
|
|
|
5
5
|
|
|
6
6
|
Edit PowerPoint files from an AI agent. It ships a ready-to-run [MCP](https://modelcontextprotocol.io) server that gives an agent 25 PowerPoint editing tools (for example "add a slide" or "replace text"). The same tools are also available as plain functions you can call yourself, along with their Zod input schemas and a codec for real-time collaboration (Y.Doc). The [`pptx-viewer-core`](https://www.npmjs.com/package/pptx-viewer-core) engine is bundled in, so a single install gives you everything and you never install the core separately.
|
|
7
7
|
|
|
8
|
+

|
|
9
|
+
|
|
8
10
|
- **Live demo:** https://christophervr.github.io/pptx-viewer/demo/
|
|
9
11
|
- **Docs:** https://christophervr.github.io/pptx-viewer/
|
|
10
12
|
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","names":[],"sources":["../src/types.ts","../src/execution.ts","../src/tools/slide-tools.ts","../src/tools/helpers.ts","../src/tools/element-tools.ts","../src/tools/table-tools.ts","../src/tools/style-tools.ts","../src/tools/content-tools.ts","../src/tools/conversion-tools.ts","../src/tools/theme-tools.ts","../src/tools/chart-tools.ts","../src/tools/smartart-tools.ts","../src/tools/merge-tools.ts","../src/tools/template-tools.ts","../src/tools/metadata-tools.ts","../src/tools/section-tools.ts","../src/tools/export-tools.ts","../src/tools/hyperlink-tools.ts","../src/tools/geometry-tools.ts","../src/tools/lock-tools.ts","../src/tools/validation-tools.ts","../src/tools/presentation-tools.ts","../src/tools/layout-tools.ts"],"mappings":";;;;;;;UAOiB;;EAEhB,UAAU;;EAEV,gBAAgB,iBAAiB,QAAQ;;EAEzC,gBAAgB,iBAAiB,QAAQ;;;;;;UAOzB,WAAW;;EAE3B,UAAU;;EAEV,QAAQ;;EAER;;;;;;UAWgB;;EAEhB,QAAQ;IAAqB,MAAM;;;EAEnC,SAAS;IACR,QAAQ,MAAM,KAAM,OAAO,YAAY,kBAAkB;IACzD,UAAU,MAAM,MAAO,QAAQ;;;EAGhC,YAAY;;;;;;;UAQI;EAChB,SAAS,eAAe,QAAQ;EAChC,UAAU,cAAc,MAAM,aAAa;;;;;;UAO3B;EAChB,eACC,kBACA,OAAO,YACP;IAAW;IAAoB;;EAEhC,SAAS,mBAAmB;;;;;UAMZ;;EAEhB,YAAY;;EAEZ,gBAAgB;;EAEhB,SAAS;;EAET;;;;;;;;;iBCvEqB,iBACrB,kBACA,SAAS,mBACP;EAAU,UAAU;EAAU,UAAU;;;;;iBA0BrB,iBACrB,kBACA,UAAU,YACV,UAAU,YACV,SAAS,mBACP;EAAU;EAAsB;;;;;;iBAgDb,uBAAuB,GAC5C,kBACA,SAAS,kBACT,SAAS,KAAK,gBAAgB,WAAW,KAAK,QAAQ,WAAW,MAC/D,QAAQ;EAAM;EAAuB;;;;UCxFvB;EAChB;EACA;EACA;EACA;EACA;EACA;EACA;EACA,UAAU;;iBAGK,SACf,KAAK,aACL;EAAU;IACR,WAAW;UAuBG;EAChB;EACA;;UAGgB;EAChB;EACA;;iBAGe,SAAS,KAAK,aAAa,QAAQ,iBAAiB,WAAW;UA2B9D;EAChB;;UAGgB;EAChB;EACA;;iBAGe,aACf,KAAK,aACL,QAAQ,qBACN,WAAW;UA4BG;EAChB;;iBAGe,cACf,KAAK,aACL,QAAQ,sBACN;EAAa;;UA2BC;EAChB;EACA;;iBAGe,eACf,KAAK,aACL,QAAQ,uBACN;EAAa;EAAuB;;UA4BtB;EAChB;EACA;EACA;EACA;EACA;EACA;;iBAGe,sBACf,KAAK,aACL,QAAQ,8BACN;EAAa;;UA8BC;EAChB;EACA;EACA;EACA;EACA;EACA;;iBAGe,mBACf,KAAK,aACL,QAAQ,2BACN;EAAa;EAAoB;;UAmCnB;EAChB;EACA;;iBAGe,cACf,KAAK,aACL,QAAQ,sBACN;EAAa;EAAqB;;;;iBChSrB;iBAIA;;iBAKA,gBAAgB,IAAI,gBAAc;;iBAwGlC,iBAAiB,OAAO;;iBA0BxB,mBAAmB,oBAAoB;;;UC9HtC;EAChB;EACA;EACA;EACA;EACA;EACA;EAEA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EAEA;EACA;EACA;EACA;EAEA;EACA;EAEA;EACA;EACA;EACA;EAEA;EACA;EACA;EACA;;UAGgB;EAChB;EACA;;iBAGe,WACf,KAAK,aACL,QAAQ,mBACN,WAAW;UAmKG;EAChB;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;iBAGe,cACf,KAAK,aACL,QAAQ,sBACN;EAAa;;UA8GC;EAChB;EACA;;iBAGe,eACf,KAAK,aACL,QAAQ,uBACN;EAAa;;
|
|
1
|
+
{"version":3,"file":"index.d.ts","names":[],"sources":["../src/types.ts","../src/execution.ts","../src/tools/slide-tools.ts","../src/tools/helpers.ts","../src/tools/element-tools.ts","../src/tools/table-tools.ts","../src/tools/style-tools.ts","../src/tools/content-tools.ts","../src/tools/conversion-tools.ts","../src/tools/theme-tools.ts","../src/tools/chart-tools.ts","../src/tools/smartart-tools.ts","../src/tools/merge-tools.ts","../src/tools/template-tools.ts","../src/tools/metadata-tools.ts","../src/tools/section-tools.ts","../src/tools/export-tools.ts","../src/tools/hyperlink-tools.ts","../src/tools/geometry-tools.ts","../src/tools/lock-tools.ts","../src/tools/validation-tools.ts","../src/tools/presentation-tools.ts","../src/tools/layout-tools.ts"],"mappings":";;;;;;;UAOiB;;EAEhB,UAAU;;EAEV,gBAAgB,iBAAiB,QAAQ;;EAEzC,gBAAgB,iBAAiB,QAAQ;;;;;;UAOzB,WAAW;;EAE3B,UAAU;;EAEV,QAAQ;;EAER;;;;;;UAWgB;;EAEhB,QAAQ;IAAqB,MAAM;;;EAEnC,SAAS;IACR,QAAQ,MAAM,KAAM,OAAO,YAAY,kBAAkB;IACzD,UAAU,MAAM,MAAO,QAAQ;;;EAGhC,YAAY;;;;;;;UAQI;EAChB,SAAS,eAAe,QAAQ;EAChC,UAAU,cAAc,MAAM,aAAa;;;;;;UAO3B;EAChB,eACC,kBACA,OAAO,YACP;IAAW;IAAoB;;EAEhC,SAAS,mBAAmB;;;;;UAMZ;;EAEhB,YAAY;;EAEZ,gBAAgB;;EAEhB,SAAS;;EAET;;;;;;;;;iBCvEqB,iBACrB,kBACA,SAAS,mBACP;EAAU,UAAU;EAAU,UAAU;;;;;iBA0BrB,iBACrB,kBACA,UAAU,YACV,UAAU,YACV,SAAS,mBACP;EAAU;EAAsB;;;;;;iBAgDb,uBAAuB,GAC5C,kBACA,SAAS,kBACT,SAAS,KAAK,gBAAgB,WAAW,KAAK,QAAQ,WAAW,MAC/D,QAAQ;EAAM;EAAuB;;;;UCxFvB;EAChB;EACA;EACA;EACA;EACA;EACA;EACA;EACA,UAAU;;iBAGK,SACf,KAAK,aACL;EAAU;IACR,WAAW;UAuBG;EAChB;EACA;;UAGgB;EAChB;EACA;;iBAGe,SAAS,KAAK,aAAa,QAAQ,iBAAiB,WAAW;UA2B9D;EAChB;;UAGgB;EAChB;EACA;;iBAGe,aACf,KAAK,aACL,QAAQ,qBACN,WAAW;UA4BG;EAChB;;iBAGe,cACf,KAAK,aACL,QAAQ,sBACN;EAAa;;UA2BC;EAChB;EACA;;iBAGe,eACf,KAAK,aACL,QAAQ,uBACN;EAAa;EAAuB;;UA4BtB;EAChB;EACA;EACA;EACA;EACA;EACA;;iBAGe,sBACf,KAAK,aACL,QAAQ,8BACN;EAAa;;UA8BC;EAChB;EACA;EACA;EACA;EACA;EACA;;iBAGe,mBACf,KAAK,aACL,QAAQ,2BACN;EAAa;EAAoB;;UAmCnB;EAChB;EACA;;iBAGe,cACf,KAAK,aACL,QAAQ,sBACN;EAAa;EAAqB;;;;iBChSrB;iBAIA;;iBAKA,gBAAgB,IAAI,gBAAc;;iBAwGlC,iBAAiB,OAAO;;iBA0BxB,mBAAmB,oBAAoB;;;UC9HtC;EAChB;EACA;EACA;EACA;EACA;EACA;EAEA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EAEA;EACA;EACA;EACA;EAEA;EACA;EAEA;EACA;EACA;EACA;EAEA;EACA;EACA;EACA;;UAGgB;EAChB;EACA;;iBAGe,WACf,KAAK,aACL,QAAQ,mBACN,WAAW;UAmKG;EAChB;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;iBAGe,cACf,KAAK,aACL,QAAQ,sBACN;EAAa;;UA8GC;EAChB;EACA;;iBAGe,eACf,KAAK,aACL,QAAQ,uBACN;EAAa;;UA0BC;EAChB;EACA;EAEA;EACA;EAEA;EACA;;iBAGe,gBACf,KAAK,aACL,QAAQ,wBACN;EAAa;;UA6GC;EAChB;EACA;EACA;EACA;EACA;;UAGgB;EAChB;;iBAGe,aACf,KAAK,aACL,QAAQ,qBACN,WAAW;UAuCG;EAChB;EACA;EACA;EACA;EACA;EACA;EACA;;iBAGe,oBACf,KAAK,aACL,QAAQ,4BACN;EAAa;;UAsDC;EAChB;EACA;;UAGgB;EAChB;;iBAGe,cACf,KAAK,aACL,QAAQ,sBACN,WAAW;UAyDG;EAChB;EACA;;UAGgB;EAChB;;iBAGe,gBACf,KAAK,aACL,QAAQ,wBACN,WAAW;UAqCG;EAChB;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;iBAGe,oBACf,KAAK,aACL,QAAQ,4BACN;EAAa;;;;UC7vBC;EAChB;EACA;EACA,OAAO;IAAQ;IAAa;IAAa;;;iBAG1B,iBACf,KAAK,aACL,QAAQ,yBACN;EAAa;;UA6CC;EAChB;EACA;EACA;EACA;EACA;EACA;;iBAGe,qBACf,KAAK,aACL,QAAQ,6BACN;EAAa;EAAkB;;;;UCjEjB;EAChB;EACA;EAEA;EACA,WAAW;EACX,oBAAoB;IAAQ;IAAe;IAAkB;;EAC7D;EACA;EACA;EAEA;EACA;EACA,aAAa;EACb;EAEA;EACA;EACA;EACA;EACA;EAEA;EACA;EACA;EACA;EAEA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;iBAGe,mBACf,KAAK,aACL,QAAQ,2BACN;EAAa;;UA6HC;EAChB;EACA;EACA;EACA;;UAGgB;EAChB;EACA;EACA;EACA;EACA;EACA,QAAQ;;iBAGO,sBAAsB,KAAK,cAAc,WAAW;;;UCnJnD;EAChB;EACA;EACA;EACA;;UAGgB;EAChB;EACA;EACA;EACA;EACA;;UAGgB;EAChB;EACA;EACA,SAAS;;iBAGM,SAAS,KAAK,aAAa,QAAQ,iBAAiB,WAAW;UA2G9D;EAChB;EACA;EACA;EACA;EACA;;UAGgB;EAChB;EACA;EACA;;iBAGe,YACf,KAAK,aACL,QAAQ,oBACN,WAAW;UAiGG;EAChB;EACA;EACA;EACA;EACA;EACA;EACA;;UAGgB;EAChB;EACA;EACA;EACA;EACA;EACA;;UAGgB;EAChB;EACA,WAAW;EACX;EACA;;iBAGe,eACf,KAAK,aACL,QAAQ,uBACN,WAAW;;;UClTG;EAChB;EACA;EACA;EACA;IAAe;IAAgB;;EAC/B;EACA;EACA;;;;;EAKA;;UAgBgB;EAChB;EACA;EACA;EACA;;iBAGqB,kBACrB,KAAK,aACL,QAAQ,0BACN,QAAQ,WAAW;;;UCjCL;EAChB;EACA,cAAc;EACd,aAAa;EACb;;iBAGe,aAAa,KAAK,cAAc,WAAW;UAgB1C;EAChB;;UAGgB;EAChB;EACA,aAAa;;iBAGE,iBACf,KAAK,aACL,QAAQ,yBACN,WAAW;UA8BG;EAChB;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;iBAGe,kBACf,KAAK,aACL,QAAQ,0BACN;EAAa,aAAa;;UAsCZ;EAChB;EACA;;iBAGe,iBACf,KAAK,aACL,QAAQ,yBACN;EAAa,YAAY;;;;UCpHX;EAChB;EACA;EACA;EACA;EACA;EACA;IAAW;IAAgB;;EAC3B;IACC;IACA;IACA;I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"}
|
package/dist/index.js
CHANGED
|
@@ -631,7 +631,8 @@ function deleteElements(ctx, params) {
|
|
|
631
631
|
}
|
|
632
632
|
const slide = ctx.pptxData.slides[params.slideIndex];
|
|
633
633
|
const idSet = new Set(params.elementIds);
|
|
634
|
-
const
|
|
634
|
+
const existingIds = new Set(slide.elements.map((element) => element.id));
|
|
635
|
+
const notFound = params.elementIds.filter((id) => !existingIds.has(id));
|
|
635
636
|
if (notFound.length > 0) {
|
|
636
637
|
throw new Error(`Elements not found: ${notFound.join(", ")}`);
|
|
637
638
|
}
|
|
@@ -653,7 +654,8 @@ function arrangeElements(ctx, params) {
|
|
|
653
654
|
if (!params.elementIds || params.elementIds.length === 0) {
|
|
654
655
|
throw new Error("elementIds is required for align action.");
|
|
655
656
|
}
|
|
656
|
-
const
|
|
657
|
+
const targetIds = new Set(params.elementIds);
|
|
658
|
+
const targets = slide.elements.filter((element) => targetIds.has(element.id));
|
|
657
659
|
if (targets.length === 0) {
|
|
658
660
|
throw new Error("No matching elements found for align.");
|
|
659
661
|
}
|
|
@@ -835,7 +837,8 @@ function groupElements(ctx, params) {
|
|
|
835
837
|
const idSet = new Set(params.elementIds);
|
|
836
838
|
const children = slide.elements.filter((e) => idSet.has(e.id));
|
|
837
839
|
if (children.length !== params.elementIds.length) {
|
|
838
|
-
const
|
|
840
|
+
const childIds = new Set(children.map((element) => element.id));
|
|
841
|
+
const missing = params.elementIds.filter((id) => !childIds.has(id));
|
|
839
842
|
throw new Error(`Elements not found: ${missing.join(", ")}`);
|
|
840
843
|
}
|
|
841
844
|
const minX = Math.min(...children.map((e) => e.x));
|
package/dist/index.mjs
CHANGED
|
@@ -630,7 +630,8 @@ function deleteElements(ctx, params) {
|
|
|
630
630
|
}
|
|
631
631
|
const slide = ctx.pptxData.slides[params.slideIndex];
|
|
632
632
|
const idSet = new Set(params.elementIds);
|
|
633
|
-
const
|
|
633
|
+
const existingIds = new Set(slide.elements.map((element) => element.id));
|
|
634
|
+
const notFound = params.elementIds.filter((id) => !existingIds.has(id));
|
|
634
635
|
if (notFound.length > 0) {
|
|
635
636
|
throw new Error(`Elements not found: ${notFound.join(", ")}`);
|
|
636
637
|
}
|
|
@@ -652,7 +653,8 @@ function arrangeElements(ctx, params) {
|
|
|
652
653
|
if (!params.elementIds || params.elementIds.length === 0) {
|
|
653
654
|
throw new Error("elementIds is required for align action.");
|
|
654
655
|
}
|
|
655
|
-
const
|
|
656
|
+
const targetIds = new Set(params.elementIds);
|
|
657
|
+
const targets = slide.elements.filter((element) => targetIds.has(element.id));
|
|
656
658
|
if (targets.length === 0) {
|
|
657
659
|
throw new Error("No matching elements found for align.");
|
|
658
660
|
}
|
|
@@ -834,7 +836,8 @@ function groupElements(ctx, params) {
|
|
|
834
836
|
const idSet = new Set(params.elementIds);
|
|
835
837
|
const children = slide.elements.filter((e) => idSet.has(e.id));
|
|
836
838
|
if (children.length !== params.elementIds.length) {
|
|
837
|
-
const
|
|
839
|
+
const childIds = new Set(children.map((element) => element.id));
|
|
840
|
+
const missing = params.elementIds.filter((id) => !childIds.has(id));
|
|
838
841
|
throw new Error(`Elements not found: ${missing.join(", ")}`);
|
|
839
842
|
}
|
|
840
843
|
const minX = Math.min(...children.map((e) => e.x));
|
package/dist/mcp/index.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export {
|
|
1
|
+
export {}
|
package/dist/mcp/index.js
CHANGED
|
@@ -1325,7 +1325,8 @@ function deleteElements(ctx, params) {
|
|
|
1325
1325
|
}
|
|
1326
1326
|
const slide = ctx.pptxData.slides[params.slideIndex];
|
|
1327
1327
|
const idSet = new Set(params.elementIds);
|
|
1328
|
-
const
|
|
1328
|
+
const existingIds = new Set(slide.elements.map((element) => element.id));
|
|
1329
|
+
const notFound = params.elementIds.filter((id) => !existingIds.has(id));
|
|
1329
1330
|
if (notFound.length > 0) {
|
|
1330
1331
|
throw new Error(`Elements not found: ${notFound.join(", ")}`);
|
|
1331
1332
|
}
|
|
@@ -1347,7 +1348,8 @@ function arrangeElements(ctx, params) {
|
|
|
1347
1348
|
if (!params.elementIds || params.elementIds.length === 0) {
|
|
1348
1349
|
throw new Error("elementIds is required for align action.");
|
|
1349
1350
|
}
|
|
1350
|
-
const
|
|
1351
|
+
const targetIds = new Set(params.elementIds);
|
|
1352
|
+
const targets = slide.elements.filter((element) => targetIds.has(element.id));
|
|
1351
1353
|
if (targets.length === 0) {
|
|
1352
1354
|
throw new Error("No matching elements found for align.");
|
|
1353
1355
|
}
|
|
@@ -1529,7 +1531,8 @@ function groupElements(ctx, params) {
|
|
|
1529
1531
|
const idSet = new Set(params.elementIds);
|
|
1530
1532
|
const children = slide.elements.filter((e) => idSet.has(e.id));
|
|
1531
1533
|
if (children.length !== params.elementIds.length) {
|
|
1532
|
-
const
|
|
1534
|
+
const childIds = new Set(children.map((element) => element.id));
|
|
1535
|
+
const missing = params.elementIds.filter((id) => !childIds.has(id));
|
|
1533
1536
|
throw new Error(`Elements not found: ${missing.join(", ")}`);
|
|
1534
1537
|
}
|
|
1535
1538
|
const minX = Math.min(...children.map((e) => e.x));
|
package/dist/mcp/index.mjs
CHANGED
|
@@ -1323,7 +1323,8 @@ function deleteElements(ctx, params) {
|
|
|
1323
1323
|
}
|
|
1324
1324
|
const slide = ctx.pptxData.slides[params.slideIndex];
|
|
1325
1325
|
const idSet = new Set(params.elementIds);
|
|
1326
|
-
const
|
|
1326
|
+
const existingIds = new Set(slide.elements.map((element) => element.id));
|
|
1327
|
+
const notFound = params.elementIds.filter((id) => !existingIds.has(id));
|
|
1327
1328
|
if (notFound.length > 0) {
|
|
1328
1329
|
throw new Error(`Elements not found: ${notFound.join(", ")}`);
|
|
1329
1330
|
}
|
|
@@ -1345,7 +1346,8 @@ function arrangeElements(ctx, params) {
|
|
|
1345
1346
|
if (!params.elementIds || params.elementIds.length === 0) {
|
|
1346
1347
|
throw new Error("elementIds is required for align action.");
|
|
1347
1348
|
}
|
|
1348
|
-
const
|
|
1349
|
+
const targetIds = new Set(params.elementIds);
|
|
1350
|
+
const targets = slide.elements.filter((element) => targetIds.has(element.id));
|
|
1349
1351
|
if (targets.length === 0) {
|
|
1350
1352
|
throw new Error("No matching elements found for align.");
|
|
1351
1353
|
}
|
|
@@ -1527,7 +1529,8 @@ function groupElements(ctx, params) {
|
|
|
1527
1529
|
const idSet = new Set(params.elementIds);
|
|
1528
1530
|
const children = slide.elements.filter((e) => idSet.has(e.id));
|
|
1529
1531
|
if (children.length !== params.elementIds.length) {
|
|
1530
|
-
const
|
|
1532
|
+
const childIds = new Set(children.map((element) => element.id));
|
|
1533
|
+
const missing = params.elementIds.filter((id) => !childIds.has(id));
|
|
1531
1534
|
throw new Error(`Elements not found: ${missing.join(", ")}`);
|
|
1532
1535
|
}
|
|
1533
1536
|
const minX = Math.min(...children.map((e) => e.x));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","names":[],"sources":["../../src/schemas/slide-schemas.ts","../../src/schemas/element-schemas.ts","../../src/schemas/table-style-schemas.ts","../../src/schemas/theme-schemas.ts","../../src/schemas/chart-schemas.ts","../../src/schemas/smartart-schemas.ts","../../src/schemas/template-schemas.ts","../../src/schemas/metadata-schemas.ts","../../src/schemas/section-schemas.ts","../../src/schemas/export-schemas.ts","../../src/schemas/hyperlink-schemas.ts","../../src/schemas/geometry-schemas.ts","../../src/schemas/lock-schemas.ts","../../src/schemas/validation-schemas.ts","../../src/schemas/presentation-schemas.ts","../../src/schemas/layout-schemas.ts"],"mappings":";;cAEa,gBAAc,EAAA
|
|
1
|
+
{"version":3,"file":"index.d.ts","names":[],"sources":["../../src/schemas/slide-schemas.ts","../../src/schemas/element-schemas.ts","../../src/schemas/table-style-schemas.ts","../../src/schemas/theme-schemas.ts","../../src/schemas/chart-schemas.ts","../../src/schemas/smartart-schemas.ts","../../src/schemas/template-schemas.ts","../../src/schemas/metadata-schemas.ts","../../src/schemas/section-schemas.ts","../../src/schemas/export-schemas.ts","../../src/schemas/hyperlink-schemas.ts","../../src/schemas/geometry-schemas.ts","../../src/schemas/lock-schemas.ts","../../src/schemas/validation-schemas.ts","../../src/schemas/presentation-schemas.ts","../../src/schemas/layout-schemas.ts"],"mappings":";;cAEa,gBAAc,EAAA;;;GAGzB,EAAA,KAAA;cAEW,gBAAc,EAAA;;;;GAIzB,EAAA,KAAA;cAEW,oBAAkB,EAAA;;;GAG7B,EAAA,KAAA;cAEW,qBAAmB,EAAA;;;GAG9B,EAAA,KAAA;cAEW,sBAAoB,EAAA;;;;GAI/B,EAAA,KAAA;cAEW,6BAA2B,EAAA;;;;;;;;GAQtC,EAAA,KAAA;cAEW,0BAAwB,EAAA;;;;;;;;GAQnC,EAAA,KAAA;cAEW,qBAAmB,EAAA;;;;GAI9B,EAAA,KAAA;cAEW,yBAAuB,EAAA;;;;;;;;;;;GAclC,EAAA,KAAA;cAEW,0BAAwB,EAAA;;GAEnC,EAAA,KAAA;;;cCvEW,kBAAgB,EAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8B3B,EAAA,KAAA;cAEW,qBAAmB,EAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAwB9B,EAAA,KAAA;cAEW,sBAAoB,EAAA;;;;GAI/B,EAAA,KAAA;cAEW,uBAAqB,EAAA;;;;;;;;;;;;;;;;;;;;;;;GAQhC,EAAA,KAAA;cAEW,oBAAkB,EAAA;;;;;;;GAO7B,EAAA,KAAA;cAEW,2BAAyB,EAAA;;;;;;;;;GASpC,EAAA,KAAA;cAEW,qBAAmB,EAAA;;;;GAI9B,EAAA,KAAA;cAEW,uBAAqB,EAAA;;;;GAIhC,EAAA,KAAA;cAEW,2BAAyB,EAAA;;;;;;;;;;;GAWpC,EAAA,KAAA;;;cCrHW,wBAAsB,EAAA;;;;;;;;;GAcjC,EAAA,KAAA;cAEW,4BAA0B,EAAA;;;;;;;;;;;;;GAQrC,EAAA,KAAA;cAEW,0BAAwB,EAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAuCnC,EAAA,KAAA;cAGW,gBAAc,EAAA;;;;;;GASzB,EAAA,KAAA;cAEW,mBAAiB,EAAA;;;;;;;GAO5B,EAAA,KAAA;cAEW,sBAAoB,EAAA;;;;;;;;;;;;;;GAS/B,EAAA,KAAA;;;cCjGW,oBAAkB,EAAA;;GAE7B,EAAA,KAAA;cAEW,wBAAsB,EAAA;;;GAOjC,EAAA,KAAA;cAEW,yBAAuB,EAAA;;;;;;;;;;;;;;GAclC,EAAA,KAAA;cAEW,wBAAsB,EAAA;;;;GAIjC,EAAA,KAAA;;;cCjCW,mBAAiB,EAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8C5B,EAAA,KAAA;cAEW,sBAAoB,EAAA;;;;;;;GAO/B,EAAA,KAAA;cAEW,yBAAuB,EAAA;;;;;GAKlC,EAAA,KAAA;cAEW,6BAA2B,EAAA;;;;;;GAMtC,EAAA,KAAA;cAEW,mBAAiB,EAAA;;;;;;;;;;;;;;;;;;;GA2B5B,EAAA,KAAA;;;cCnGW,sBAAoB,EAAA;;;;;;;;;;;;;;;;;;GAoB/B,EAAA,KAAA;;;cCpBW,wBAAsB,EAAA;;GAEjC,EAAA,KAAA;cAEW,qBAAmB,EAAA;;;GAK9B,EAAA,KAAA;;;cCTW,mBAAiB,EAAA;;GAE5B,EAAA,KAAA;cAEW,sBAAoB,EAAA;;;;;;;;;;;;;;;GAoB/B,EAAA,KAAA;;;cCxBW,sBAAoB,EAAA;;;;;;;;;;;;;;;GAa/B,EAAA,KAAA;;;cCbW,mBAAiB,EAAA;;;;;;GAS5B,EAAA,KAAA;cAEW,sBAAoB,EAAA;;;;;GAK/B,EAAA,KAAA;;;cChBW,wBAAsB,EAAA;;;;;;;;;;;;;;;;;;;;;;;;;GAkBjC,EAAA,KAAA;;;cClBW,uBAAqB,EAAA;;;;;;;;;GAehC,EAAA,KAAA;;;cCfW,sBAAoB,EAAA;;;;;;;;;;GAU/B,EAAA,KAAA;;;cCVW,4BAA0B,EAAA;;GAErC,EAAA,KAAA;cAEW,0BAAwB,EAAA;;GAEnC,EAAA,KAAA;;;cCNW,iCAA+B,EAAA;;GAE1C,EAAA,KAAA;cAEW,oCAAkC,EAAA;;;;;;;;;;;;;;;;;;;;;;GAc7C,EAAA,KAAA;;;cClBW,kBAAgB,EAAA;;GAE3B,EAAA,KAAA;cAEW,mBAAiB,EAAA;;;;;GAK5B,EAAA,KAAA"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "pptx-viewer-mcp",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.3.1",
|
|
4
4
|
"description": "PowerPoint PPTX tools and MCP server: manipulate, convert, and collaborate on .pptx files from AI agents.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"ai",
|
|
@@ -70,16 +70,16 @@
|
|
|
70
70
|
},
|
|
71
71
|
"dependencies": {
|
|
72
72
|
"@modelcontextprotocol/sdk": "^1.29.0",
|
|
73
|
-
"fast-xml-parser": "^5.10.
|
|
73
|
+
"fast-xml-parser": "^5.10.1",
|
|
74
74
|
"jszip": "^3.10.1",
|
|
75
75
|
"pptx-viewer-core": "^1.1.0",
|
|
76
76
|
"zod": "^4.4.3"
|
|
77
77
|
},
|
|
78
78
|
"devDependencies": {
|
|
79
|
-
"tsdown": "^0.22.
|
|
79
|
+
"tsdown": "^0.22.9",
|
|
80
80
|
"tsup": "^8.5.1",
|
|
81
81
|
"typescript": "^7.0.2",
|
|
82
|
-
"vitest": "^4.1.
|
|
82
|
+
"vitest": "^4.1.10",
|
|
83
83
|
"yjs": "^13.6.31"
|
|
84
84
|
},
|
|
85
85
|
"peerDependencies": {
|