pptx-react-viewer 4.39.0 → 4.40.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.
Files changed (85) hide show
  1. package/CHANGELOG.md +39 -0
  2. package/dist/{AiChatPanel-5O6PHRSH.mjs → AiChatPanel-IDP326YW.mjs} +1 -1
  3. package/dist/AiChatPanel-IDP326YW.mjs.br +0 -0
  4. package/dist/AiChatPanel-IDP326YW.mjs.gz +0 -0
  5. package/dist/{AiChatPanel-FNHDAKPB.js → AiChatPanel-KEVVVR7C.js} +9 -9
  6. package/dist/AiChatPanel-KEVVVR7C.js.br +0 -0
  7. package/dist/AiChatPanel-KEVVVR7C.js.gz +0 -0
  8. package/dist/{chunk-43TOUP5U.js → chunk-3PKYNJJG.js} +8 -14
  9. package/dist/chunk-3PKYNJJG.js.br +0 -0
  10. package/dist/chunk-3PKYNJJG.js.gz +0 -0
  11. package/dist/{chunk-TYULCCA6.mjs → chunk-6PJUIRTO.mjs} +247 -101
  12. package/dist/chunk-6PJUIRTO.mjs.br +0 -0
  13. package/dist/chunk-6PJUIRTO.mjs.gz +0 -0
  14. package/dist/{chunk-5XBS7MCX.mjs → chunk-EQTNWM5Y.mjs} +16 -6
  15. package/dist/chunk-EQTNWM5Y.mjs.br +0 -0
  16. package/dist/chunk-EQTNWM5Y.mjs.gz +0 -0
  17. package/dist/{chunk-UC2VQORY.mjs → chunk-MNT2CXDI.mjs} +9 -15
  18. package/dist/chunk-MNT2CXDI.mjs.br +0 -0
  19. package/dist/chunk-MNT2CXDI.mjs.gz +0 -0
  20. package/dist/{chunk-HOKZJLT5.js → chunk-QJ4X7Y7S.js} +258 -248
  21. package/dist/chunk-QJ4X7Y7S.js.br +0 -0
  22. package/dist/chunk-QJ4X7Y7S.js.gz +0 -0
  23. package/dist/{chunk-2LNWGZPT.js → chunk-TPO4OU77.js} +1546 -1400
  24. package/dist/chunk-TPO4OU77.js.br +0 -0
  25. package/dist/chunk-TPO4OU77.js.gz +0 -0
  26. package/dist/i18n/de.cjs +321 -50
  27. package/dist/i18n/de.cjs.br +0 -0
  28. package/dist/i18n/de.cjs.gz +0 -0
  29. package/dist/i18n/de.mjs +321 -50
  30. package/dist/i18n/de.mjs.br +0 -0
  31. package/dist/i18n/de.mjs.gz +0 -0
  32. package/dist/i18n/es.cjs +326 -55
  33. package/dist/i18n/es.cjs.br +0 -0
  34. package/dist/i18n/es.cjs.gz +0 -0
  35. package/dist/i18n/es.mjs +326 -55
  36. package/dist/i18n/es.mjs.br +0 -0
  37. package/dist/i18n/es.mjs.gz +0 -0
  38. package/dist/i18n/fr.cjs +338 -67
  39. package/dist/i18n/fr.cjs.br +0 -0
  40. package/dist/i18n/fr.cjs.gz +0 -0
  41. package/dist/i18n/fr.mjs +338 -67
  42. package/dist/i18n/fr.mjs.br +0 -0
  43. package/dist/i18n/fr.mjs.gz +0 -0
  44. package/dist/i18n/zh-CN.cjs +330 -59
  45. package/dist/i18n/zh-CN.cjs.br +0 -0
  46. package/dist/i18n/zh-CN.cjs.gz +0 -0
  47. package/dist/i18n/zh-CN.mjs +330 -59
  48. package/dist/i18n/zh-CN.mjs.br +0 -0
  49. package/dist/i18n/zh-CN.mjs.gz +0 -0
  50. package/dist/index.js +24 -24
  51. package/dist/index.js.br +0 -0
  52. package/dist/index.js.gz +0 -0
  53. package/dist/index.mjs +3 -3
  54. package/dist/index.mjs.br +0 -0
  55. package/dist/index.mjs.gz +0 -0
  56. package/dist/internals.d.ts +19 -0
  57. package/dist/internals.js +81 -81
  58. package/dist/internals.js.br +0 -0
  59. package/dist/internals.js.gz +0 -0
  60. package/dist/internals.mjs +2 -2
  61. package/dist/internals.mjs.br +0 -0
  62. package/dist/internals.mjs.gz +0 -0
  63. package/dist/viewer/index.js +19 -19
  64. package/dist/viewer/index.js.br +0 -0
  65. package/dist/viewer/index.js.gz +0 -0
  66. package/dist/viewer/index.mjs +3 -3
  67. package/dist/viewer/index.mjs.br +0 -0
  68. package/dist/viewer/index.mjs.gz +0 -0
  69. package/package.json +3 -3
  70. package/dist/AiChatPanel-5O6PHRSH.mjs.br +0 -0
  71. package/dist/AiChatPanel-5O6PHRSH.mjs.gz +0 -0
  72. package/dist/AiChatPanel-FNHDAKPB.js.br +0 -0
  73. package/dist/AiChatPanel-FNHDAKPB.js.gz +0 -0
  74. package/dist/chunk-2LNWGZPT.js.br +0 -0
  75. package/dist/chunk-2LNWGZPT.js.gz +0 -0
  76. package/dist/chunk-43TOUP5U.js.br +0 -0
  77. package/dist/chunk-43TOUP5U.js.gz +0 -0
  78. package/dist/chunk-5XBS7MCX.mjs.br +0 -0
  79. package/dist/chunk-5XBS7MCX.mjs.gz +0 -0
  80. package/dist/chunk-HOKZJLT5.js.br +0 -0
  81. package/dist/chunk-HOKZJLT5.js.gz +0 -0
  82. package/dist/chunk-TYULCCA6.mjs.br +0 -0
  83. package/dist/chunk-TYULCCA6.mjs.gz +0 -0
  84. package/dist/chunk-UC2VQORY.mjs.br +0 -0
  85. package/dist/chunk-UC2VQORY.mjs.gz +0 -0
package/CHANGELOG.md CHANGED
@@ -7,6 +7,45 @@ 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
+ ## [4.40.1](https://github.com/ChristopherVR/ooxml/releases/tag/pptx-react-viewer@4.40.1) - 2026-10-16
11
+
12
+ ### Bug Fixes
13
+
14
+ - **xml:** Close code scanning alerts and steady the docx presence spec ([442b249](https://github.com/ChristopherVR/ooxml/commit/442b249cce1de4fdd228d073b394d741733f4c08))
15
+
16
+ ## [4.40.0](https://github.com/ChristopherVR/ooxml/releases/tag/pptx-react-viewer@4.40.0) - 2026-10-16
17
+
18
+ ### Features
19
+
20
+ - **pptx:** Apply theme effect schemes and background styles ([998bb4b](https://github.com/ChristopherVR/ooxml/commit/998bb4b52c0d3606d0d4c26a0f26c970b4684b69))
21
+ - **pptx:** Resolve a style against another effect scheme ([6db6a07](https://github.com/ChristopherVR/ooxml/commit/6db6a0777b8a82a787f8a78015b34513df4c2f0a))
22
+ - **locales:** Translate the Effects, Background Styles and Variants copy ([89b8b02](https://github.com/ChristopherVR/ooxml/commit/89b8b02486600fa46087023293b87867d3e3b0d6))
23
+ - **pptx:** Expose a package's real theme variants on the handler ([f176c1b](https://github.com/ChristopherVR/ooxml/commit/f176c1bcd2974005606fcc3588a5d3620de414b8))
24
+ - **react:** Preview and apply Design effects and background styles ([5cd3fac](https://github.com/ChristopherVR/ooxml/commit/5cd3facee7143a6f2331e2f08636307d348c4255))
25
+ - **ui:** Add Link and Date & Time to the phone Insert sheet ([f9962a5](https://github.com/ChristopherVR/ooxml/commit/f9962a5ddc0aebbaba8568f2203627c6989bc4c6))
26
+ - **pptx:** Save chart picture, pattern, gradient, 3-D and text formats ([979e444](https://github.com/ChristopherVR/ooxml/commit/979e444af1cab982a8e1ea2360325646efeec6d4))
27
+ - **locales:** Translate the chart Format pane's fills, 3-D and text ([2714041](https://github.com/ChristopherVR/ooxml/commit/2714041813ab5899ff519bb8386269ff07ffc0c8))
28
+
29
+ ### Bug Fixes
30
+
31
+ - **locales:** Align new powerpoint strings with office terms ([5de0ce8](https://github.com/ChristopherVR/ooxml/commit/5de0ce84918554207043198369a2dd3021e3abda))
32
+ - **ui:** Translate built-in SmartArt layout names in the Layouts gallery ([a48c035](https://github.com/ChristopherVR/ooxml/commit/a48c035a309cfadb46eb91e651839efaf559cf33))
33
+ - **ui:** Translate Compare change sentences and the waterfall legend ([f6f8e77](https://github.com/ChristopherVR/ooxml/commit/f6f8e77a0db1e2b418c5a326abae9b8a6a51124f))
34
+ - **pptx:** Write ChartEx bin size and count as val attributes ([457df13](https://github.com/ChristopherVR/ooxml/commit/457df13ae1c4bafbb61d53b41a3078e7a74556b4))
35
+ - **pptx:** Write animation graphicEl children in the DrawingML namespace ([9b7604d](https://github.com/ChristopherVR/ooxml/commit/9b7604d417495e0c89342207ffb2ed4afc5906ab))
36
+ - **pptx:** Mirror chart text colour edits and keep automatic label angles ([c8f12c3](https://github.com/ChristopherVR/ooxml/commit/c8f12c3b17c0fc778fc5905a4d8ba8c0f2fd0e2a))
37
+ - **pptx:** Keep a chart title's size when its text format is edited ([67b433c](https://github.com/ChristopherVR/ooxml/commit/67b433c3dd77863e37201441c851dc9b1e9b60ec))
38
+ - **pptx:** See data labels of a second chart group of the same type ([06e7685](https://github.com/ChristopherVR/ooxml/commit/06e7685fd29fc9c5239c8161aa0963e09378adbc))
39
+ - **react:** Cast the chart area shadow and glow outside the chart frame ([bf08978](https://github.com/ChristopherVR/ooxml/commit/bf089783da051187287b7cb589195cf58fba177c))
40
+ - **react:** Keep a gallery hover preview out of save and recovery ([67c714d](https://github.com/ChristopherVR/ooxml/commit/67c714d47272e218d167d7df71a44376bd80b213))
41
+ - **pptx:** Sync a slide background style over collaboration ([32bc400](https://github.com/ChristopherVR/ooxml/commit/32bc400deccd8a4c53df15aec8e4c1245b392654))
42
+ - **pptx:** Center resized slide content in pixel coordinates ([#86](https://github.com/ChristopherVR/ooxml/issues/86)) ([fbbdfee](https://github.com/ChristopherVR/ooxml/commit/fbbdfee9dfe9b718ed02f0847e2a1197661f2f33))
43
+ - **pptx:** Preserve picture source crops in svg exports ([#88](https://github.com/ChristopherVR/ooxml/issues/88)) ([97c254c](https://github.com/ChristopherVR/ooxml/commit/97c254c159e7486e77b425be95bbe17aca0955ea))
44
+
45
+ ### Testing
46
+
47
+ - **pptx:** Make the generated e2e decks open in PowerPoint ([036e0eb](https://github.com/ChristopherVR/ooxml/commit/036e0eb438d8664230afe7fe2de44a1e9365fb9b))
48
+
10
49
  ## [4.39.0](https://github.com/ChristopherVR/ooxml/releases/tag/pptx-react-viewer@4.39.0) - 2026-10-16
11
50
 
12
51
  ### Features
@@ -1,4 +1,4 @@
1
- import { cn } from './chunk-UC2VQORY.mjs';
1
+ import { cn } from './chunk-MNT2CXDI.mjs';
2
2
  import './chunk-Q3DHYOLK.mjs';
3
3
  import { useMemo, useRef, useState, useEffect, useReducer, useCallback } from 'react';
4
4
  import { useTranslation } from 'react-i18next';
Binary file
Binary file
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- var chunk43TOUP5U_js = require('./chunk-43TOUP5U.js');
3
+ var chunk3PKYNJJG_js = require('./chunk-3PKYNJJG.js');
4
4
  require('./chunk-W2IMY5SY.js');
5
5
  var react = require('react');
6
6
  var reactI18next = require('react-i18next');
@@ -365,7 +365,7 @@ function AiComposer({
365
365
  disabled: value.trim().length === 0,
366
366
  title: t("pptx.ai.send"),
367
367
  "aria-label": t("pptx.ai.send"),
368
- className: chunk43TOUP5U_js.cn(
368
+ className: chunk3PKYNJJG_js.cn(
369
369
  "shrink-0 rounded-sm p-1.5 transition-colors",
370
370
  value.trim().length === 0 ? "text-muted-foreground/50" : "bg-primary text-primary-foreground hover:bg-primary/90"
371
371
  ),
@@ -396,7 +396,7 @@ function AiFocusBar({
396
396
  chips.map((chip) => /* @__PURE__ */ jsxRuntime.jsx(
397
397
  "span",
398
398
  {
399
- className: chunk43TOUP5U_js.cn(
399
+ className: chunk3PKYNJJG_js.cn(
400
400
  "inline-flex max-w-[10rem] items-center rounded-full px-2 py-0.5 text-[11px]",
401
401
  hasPicks || isPinned ? "bg-primary/15 text-primary" : "bg-muted text-muted-foreground"
402
402
  ),
@@ -433,7 +433,7 @@ function AiFocusBar({
433
433
  title: t("pptx.ai.pickElement"),
434
434
  "aria-label": t("pptx.ai.pickAria"),
435
435
  "aria-pressed": pickMode,
436
- className: chunk43TOUP5U_js.cn(
436
+ className: chunk3PKYNJJG_js.cn(
437
437
  "rounded-sm p-1 max-md:min-w-[44px]! max-md:min-h-[44px]! flex items-center justify-center",
438
438
  pickMode ? "bg-primary text-primary-foreground" : "text-muted-foreground hover:bg-accent"
439
439
  ),
@@ -512,7 +512,7 @@ function AiHistoryList({ chats, activeChatId, onResume, onDelete }) {
512
512
  {
513
513
  type: "button",
514
514
  onClick: () => onResume(chat.id),
515
- className: chunk43TOUP5U_js.cn(
515
+ className: chunk3PKYNJJG_js.cn(
516
516
  "flex min-w-0 flex-1 items-start gap-2 rounded-sm px-2 py-1.5 text-left hover:bg-accent",
517
517
  chat.id === activeChatId && "bg-accent/60"
518
518
  ),
@@ -676,17 +676,17 @@ function AiToolCallCard({ part }) {
676
676
  /* @__PURE__ */ jsxRuntime.jsx(
677
677
  Icon,
678
678
  {
679
- className: chunk43TOUP5U_js.cn(
679
+ className: chunk3PKYNJJG_js.cn(
680
680
  "w-3.5 h-3.5 shrink-0",
681
681
  failed ? "text-destructive" : "text-muted-foreground"
682
682
  )
683
683
  }
684
684
  ),
685
- /* @__PURE__ */ jsxRuntime.jsx("span", { className: chunk43TOUP5U_js.cn("truncate", failed ? "text-destructive" : "text-foreground"), children: activity.label }),
685
+ /* @__PURE__ */ jsxRuntime.jsx("span", { className: chunk3PKYNJJG_js.cn("truncate", failed ? "text-destructive" : "text-foreground"), children: activity.label }),
686
686
  /* @__PURE__ */ jsxRuntime.jsxs(
687
687
  "span",
688
688
  {
689
- className: chunk43TOUP5U_js.cn(
689
+ className: chunk3PKYNJJG_js.cn(
690
690
  "ml-auto inline-flex items-center gap-1 rounded-sm px-1.5 py-0.5 text-[10px]",
691
691
  failed ? "bg-destructive/15 text-destructive" : done ? "bg-primary/10 text-primary" : "bg-muted text-muted-foreground"
692
692
  ),
@@ -734,7 +734,7 @@ function AiMessageList({ messages, isStreaming, bridge }) {
734
734
  /* @__PURE__ */ jsxRuntime.jsx(
735
735
  "div",
736
736
  {
737
- className: chunk43TOUP5U_js.cn(
737
+ className: chunk3PKYNJJG_js.cn(
738
738
  "mt-0.5 flex h-6 w-6 shrink-0 items-center justify-center rounded-full",
739
739
  isUser ? "bg-secondary text-muted-foreground" : "bg-primary/15 text-primary"
740
740
  ),
Binary file
Binary file
@@ -1807,16 +1807,9 @@ function rendersWedgeCalloutVector(element) {
1807
1807
  return element.type === "shape" && pptx.isWedgeCalloutPresetShape(element.shapeType);
1808
1808
  }
1809
1809
  function getShapeVisualStyle(element, _hasFill, fillColor, _strokeWidth, _strokeColor, animatesFill, animatesStroke, parentGroupFill) {
1810
- if (element.type === "group") {
1811
- const fx2 = pptx.getComputedEffectStyle(element);
1812
- const groupStyle = {};
1813
- if (fx2.filter) {
1814
- groupStyle.filter = fx2.filter;
1815
- }
1816
- if (fx2.overflowVisible) {
1817
- groupStyle.overflow = "visible";
1818
- }
1819
- return groupStyle;
1810
+ const frame = pptx.getFrameEffectStyle(element);
1811
+ if (frame) {
1812
+ return { ...frame };
1820
1813
  }
1821
1814
  if (!(0, dist_exports.hasShapeProperties)(element)) {
1822
1815
  return {};
@@ -3676,8 +3669,8 @@ function renderText(t, key) {
3676
3669
  key
3677
3670
  );
3678
3671
  }
3679
- function renderChartViewModel(elementId, vm, preserveAspectRatio = "none") {
3680
- const legendItems = pptx.computeChartLegendLayout(vm);
3672
+ function renderChartViewModel(elementId, vm, preserveAspectRatio = "none", translate) {
3673
+ const legendItems = pptx.computeChartLegendLayout(vm, translate);
3681
3674
  return /* @__PURE__ */ jsxRuntime.jsxs(
3682
3675
  "svg",
3683
3676
  {
@@ -3840,7 +3833,7 @@ function renderChartViewModel(elementId, vm, preserveAspectRatio = "none") {
3840
3833
  }
3841
3834
  );
3842
3835
  }
3843
- function renderChartElement(element) {
3836
+ function renderChartElement(element, translate) {
3844
3837
  if (element.type !== "chart") {
3845
3838
  return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "w-full h-full flex items-center justify-center text-[11px] text-white/80 pointer-events-none", children: i18n.translationsEn["pptx.chart.heading"] });
3846
3839
  }
@@ -3852,7 +3845,8 @@ function renderChartElement(element) {
3852
3845
  return renderChartViewModel(
3853
3846
  element.id,
3854
3847
  buildReactChartViewModel(element),
3855
- pptx.chartPreserveAspectRatio(kind)
3848
+ pptx.chartPreserveAspectRatio(kind),
3849
+ translate
3856
3850
  );
3857
3851
  }
3858
3852
  function buildNotesPdf(pages) {
Binary file
Binary file