pptx-react-viewer 2.1.0 → 2.2.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 (139) hide show
  1. package/CHANGELOG.md +8 -0
  2. package/dist/{AiChatPanel-VCCVHAAI.js → AiChatPanel-O4NYWO3D.js} +24 -24
  3. package/dist/AiChatPanel-O4NYWO3D.js.br +0 -0
  4. package/dist/AiChatPanel-O4NYWO3D.js.gz +0 -0
  5. package/dist/{AiChatPanel-RFBZWMUE.mjs → AiChatPanel-XRKEPXAM.mjs} +5 -5
  6. package/dist/AiChatPanel-XRKEPXAM.mjs.br +0 -0
  7. package/dist/AiChatPanel-XRKEPXAM.mjs.gz +0 -0
  8. package/dist/{Model3DScene-RQIGSYGQ.js → Model3DScene-HYE6HA2C.js} +3 -3
  9. package/dist/{Model3DScene-RQIGSYGQ.js.br → Model3DScene-HYE6HA2C.js.br} +0 -0
  10. package/dist/Model3DScene-HYE6HA2C.js.gz +0 -0
  11. package/dist/{Model3DScene-2M6HVWTE.mjs → Model3DScene-JN5F5C4Z.mjs} +2 -2
  12. package/dist/Model3DScene-JN5F5C4Z.mjs.br +0 -0
  13. package/dist/Model3DScene-JN5F5C4Z.mjs.gz +0 -0
  14. package/dist/{SurfaceChart3DScene-2FVASQGC.js → SurfaceChart3DScene-FDJ6LC4E.js} +3 -3
  15. package/dist/SurfaceChart3DScene-FDJ6LC4E.js.br +0 -0
  16. package/dist/SurfaceChart3DScene-FDJ6LC4E.js.gz +0 -0
  17. package/dist/{SurfaceChart3DScene-EGMWY4CZ.mjs → SurfaceChart3DScene-V7P3LQVV.mjs} +2 -2
  18. package/dist/{SurfaceChart3DScene-EGMWY4CZ.mjs.br → SurfaceChart3DScene-V7P3LQVV.mjs.br} +0 -0
  19. package/dist/SurfaceChart3DScene-V7P3LQVV.mjs.gz +0 -0
  20. package/dist/{chunk-46Z6MNRS.js → chunk-2QHCOESN.js} +137 -42
  21. package/dist/chunk-2QHCOESN.js.br +0 -0
  22. package/dist/chunk-2QHCOESN.js.gz +0 -0
  23. package/dist/{chunk-LDF77JJD.js → chunk-2U243ZEP.js} +248 -248
  24. package/dist/chunk-2U243ZEP.js.br +0 -0
  25. package/dist/chunk-2U243ZEP.js.gz +0 -0
  26. package/dist/{chunk-27XBWVO5.mjs → chunk-6G6S7PEI.mjs} +95 -2
  27. package/dist/chunk-6G6S7PEI.mjs.br +0 -0
  28. package/dist/{chunk-27XBWVO5.mjs.gz → chunk-6G6S7PEI.mjs.gz} +0 -0
  29. package/dist/{chunk-NGE7YQTF.mjs → chunk-7NSLKNCT.mjs} +68 -74
  30. package/dist/chunk-7NSLKNCT.mjs.br +0 -0
  31. package/dist/chunk-7NSLKNCT.mjs.gz +0 -0
  32. package/dist/{chunk-BHVCED34.mjs → chunk-I2HF7ZPO.mjs} +1 -1
  33. package/dist/chunk-I2HF7ZPO.mjs.br +0 -0
  34. package/dist/chunk-I2HF7ZPO.mjs.gz +0 -0
  35. package/dist/{chunk-ZRY7NLKS.js → chunk-K2AW5UXT.js} +375 -381
  36. package/dist/chunk-K2AW5UXT.js.br +0 -0
  37. package/dist/chunk-K2AW5UXT.js.gz +0 -0
  38. package/dist/{chunk-7DQHWPIB.mjs → chunk-O75FHZQJ.mjs} +4 -4
  39. package/dist/chunk-O75FHZQJ.mjs.br +0 -0
  40. package/dist/chunk-O75FHZQJ.mjs.gz +0 -0
  41. package/dist/{chunk-6YXLGMTN.mjs → chunk-PE2I5L6R.mjs} +27 -12
  42. package/dist/chunk-PE2I5L6R.mjs.br +0 -0
  43. package/dist/{chunk-6YXLGMTN.mjs.gz → chunk-PE2I5L6R.mjs.gz} +0 -0
  44. package/dist/{chunk-2X72MOPZ.mjs → chunk-PZTPX3HK.mjs} +10 -1
  45. package/dist/chunk-PZTPX3HK.mjs.br +0 -0
  46. package/dist/chunk-PZTPX3HK.mjs.gz +0 -0
  47. package/dist/{chunk-VHO53ZXZ.js → chunk-QULJW7LU.js} +1190 -917
  48. package/dist/chunk-QULJW7LU.js.br +0 -0
  49. package/dist/chunk-QULJW7LU.js.gz +0 -0
  50. package/dist/{chunk-CLNGAVNH.js → chunk-R2H3FHK6.js} +27 -12
  51. package/dist/chunk-R2H3FHK6.js.br +0 -0
  52. package/dist/{chunk-CLNGAVNH.js.gz → chunk-R2H3FHK6.js.gz} +0 -0
  53. package/dist/{chunk-Y4OSELBT.mjs → chunk-RYHBWTPI.mjs} +350 -77
  54. package/dist/chunk-RYHBWTPI.mjs.br +0 -0
  55. package/dist/chunk-RYHBWTPI.mjs.gz +0 -0
  56. package/dist/{chunk-SYPHGLIB.js → chunk-XJTWUXXC.js} +3 -3
  57. package/dist/chunk-XJTWUXXC.js.br +0 -0
  58. package/dist/chunk-XJTWUXXC.js.gz +0 -0
  59. package/dist/{chunk-CUUYYYC5.js → chunk-YIFO3WQO.js} +10 -1
  60. package/dist/chunk-YIFO3WQO.js.br +0 -0
  61. package/dist/chunk-YIFO3WQO.js.gz +0 -0
  62. package/dist/{dist-J6PC54PZ.mjs → dist-VEWYRBTB.mjs} +1 -1
  63. package/dist/dist-VEWYRBTB.mjs.br +0 -0
  64. package/dist/dist-VEWYRBTB.mjs.gz +0 -0
  65. package/dist/{dist-4LUVI3SW.js → dist-ZCJLIRYG.js} +568 -568
  66. package/dist/dist-ZCJLIRYG.js.br +0 -0
  67. package/dist/dist-ZCJLIRYG.js.gz +0 -0
  68. package/dist/i18n.js +4 -4
  69. package/dist/i18n.js.br +0 -0
  70. package/dist/i18n.js.gz +0 -0
  71. package/dist/i18n.mjs +1 -1
  72. package/dist/i18n.mjs.br +0 -0
  73. package/dist/i18n.mjs.gz +0 -0
  74. package/dist/{index-nAyIdGqF.d.ts → index-CDCSXtK3.d.ts} +32 -16
  75. package/dist/index-CDCSXtK3.d.ts.map +1 -0
  76. package/dist/index.js +37 -37
  77. package/dist/index.js.br +0 -0
  78. package/dist/index.js.gz +0 -0
  79. package/dist/index.mjs +7 -7
  80. package/dist/index.mjs.br +0 -0
  81. package/dist/index.mjs.gz +0 -0
  82. package/dist/internals.d.ts +42 -14
  83. package/dist/internals.d.ts.map +1 -1
  84. package/dist/internals.js +80 -80
  85. package/dist/internals.js.br +0 -0
  86. package/dist/internals.js.gz +0 -0
  87. package/dist/internals.mjs +5 -5
  88. package/dist/internals.mjs.br +0 -0
  89. package/dist/internals.mjs.gz +0 -0
  90. package/dist/pptx-viewer.css +1 -1
  91. package/dist/pptx-viewer.css.br +0 -0
  92. package/dist/pptx-viewer.css.gz +0 -0
  93. package/dist/viewer/index.js +23 -23
  94. package/dist/viewer/index.js.br +0 -0
  95. package/dist/viewer/index.js.gz +0 -0
  96. package/dist/viewer/index.mjs +7 -7
  97. package/dist/viewer/index.mjs.br +0 -0
  98. package/dist/viewer/index.mjs.gz +0 -0
  99. package/package.json +1 -1
  100. package/dist/AiChatPanel-RFBZWMUE.mjs.br +0 -0
  101. package/dist/AiChatPanel-RFBZWMUE.mjs.gz +0 -0
  102. package/dist/AiChatPanel-VCCVHAAI.js.br +0 -0
  103. package/dist/AiChatPanel-VCCVHAAI.js.gz +0 -0
  104. package/dist/Model3DScene-2M6HVWTE.mjs.br +0 -0
  105. package/dist/Model3DScene-2M6HVWTE.mjs.gz +0 -0
  106. package/dist/Model3DScene-RQIGSYGQ.js.gz +0 -0
  107. package/dist/SurfaceChart3DScene-2FVASQGC.js.br +0 -0
  108. package/dist/SurfaceChart3DScene-2FVASQGC.js.gz +0 -0
  109. package/dist/SurfaceChart3DScene-EGMWY4CZ.mjs.gz +0 -0
  110. package/dist/chunk-27XBWVO5.mjs.br +0 -0
  111. package/dist/chunk-2X72MOPZ.mjs.br +0 -0
  112. package/dist/chunk-2X72MOPZ.mjs.gz +0 -0
  113. package/dist/chunk-46Z6MNRS.js.br +0 -0
  114. package/dist/chunk-46Z6MNRS.js.gz +0 -0
  115. package/dist/chunk-6YXLGMTN.mjs.br +0 -0
  116. package/dist/chunk-7DQHWPIB.mjs.br +0 -0
  117. package/dist/chunk-7DQHWPIB.mjs.gz +0 -0
  118. package/dist/chunk-BHVCED34.mjs.br +0 -0
  119. package/dist/chunk-BHVCED34.mjs.gz +0 -0
  120. package/dist/chunk-CLNGAVNH.js.br +0 -0
  121. package/dist/chunk-CUUYYYC5.js.br +0 -0
  122. package/dist/chunk-CUUYYYC5.js.gz +0 -0
  123. package/dist/chunk-LDF77JJD.js.br +0 -0
  124. package/dist/chunk-LDF77JJD.js.gz +0 -0
  125. package/dist/chunk-NGE7YQTF.mjs.br +0 -0
  126. package/dist/chunk-NGE7YQTF.mjs.gz +0 -0
  127. package/dist/chunk-SYPHGLIB.js.br +0 -0
  128. package/dist/chunk-SYPHGLIB.js.gz +0 -0
  129. package/dist/chunk-VHO53ZXZ.js.br +0 -0
  130. package/dist/chunk-VHO53ZXZ.js.gz +0 -0
  131. package/dist/chunk-Y4OSELBT.mjs.br +0 -0
  132. package/dist/chunk-Y4OSELBT.mjs.gz +0 -0
  133. package/dist/chunk-ZRY7NLKS.js.br +0 -0
  134. package/dist/chunk-ZRY7NLKS.js.gz +0 -0
  135. package/dist/dist-4LUVI3SW.js.br +0 -0
  136. package/dist/dist-4LUVI3SW.js.gz +0 -0
  137. package/dist/dist-J6PC54PZ.mjs.br +0 -0
  138. package/dist/dist-J6PC54PZ.mjs.gz +0 -0
  139. package/dist/index-nAyIdGqF.d.ts.map +0 -1
Binary file
Binary file
@@ -1,6 +1,6 @@
1
- import { SHAPE_PRESET_DEFS, computeValueRangeForChart, getAnimationInitialStyle, cloneHistorySnapshot, isTemplateElement, clampCropValue, parseMediaCommand, normalizeHexColor, toCssWritingMode, toCssTextOrientation, toCssVerticalDirection, computeAutoFitTextStyle, resolveLineHeight, getKinsokuLineBreakStyles, buildTextBody3DSceneStyle, resolveParagraphRtl, resolveParagraphAlign, resolveCssTextAlign, colorWithOpacity, build3DExtrusionData, getResolvedShapeClipPath, normalizeStrokeDashType, buildCssGradientFromShapeStyle, buildShadowCssFromShapeStyle, buildInnerShadowCssFromShapeStyle, buildMultiLayerShadowCss, buildGlowBoxShadow, getCompoundLineBoxShadow, getSoftEdgeFilterId, getEffectDagFilter, buildPatternFillCss, buildReflectionCss, getCssBorderDashStyle, getCompoundLineBorderWidth, getSvgStrokeDasharray, svgLineCap, getCompoundLineOffsets, getCompoundLineWidths, computeSelectionRect, rectToCells, isCellInRect, buildChartViewModel, buildNotesPdfBytes, buildSlidesPdfBytes, buildPreviewAnimation, getRoundRectRadiusPx, substituteFieldText, resolveUnderlineDecorationStyle, hasDistinctScriptFonts, buildTextReflectionCss, getTextAlphaOpacity, buildTextRunFilterChain, buildTextShadowCss, TEXT_BUILD_ID_SEP, apply3dEffects, clampUnitInterval, computeColumnBoundaries, parseDrawingColor, parseDrawingColorOpacity, getCellDiagonalBorders, getPatternSvg, ooxmlDashToCssBorderStyle, cell3DBevelCss, getChartStylePalette, computeLayout, valueToY, formatAxisValue, computeLayoutOptions, splitSeriesByAxis, computeValueRange, getSecondaryValueAxis, seriesColor, paletteColor, resolveRegionCode, normalizeValue, sequentialColorScale, convertOmmlToMathMl, sanitizeMathMl, buildTextFillCss, resolvePictureBullet, computeResizedColumnWidths, computeResizedRowHeight, DEFAULT_ROW_HEIGHT, resolveFontRefIdx, tintColor2, shadeColor2, segmentByScript, resolveFontForScript, generateLogTicks, formatAxisValueWithUnits, getDisplayUnitLabel, hexToRgbChannels, chartPartToAttrs } from './chunk-27XBWVO5.mjs';
2
- import { translationsEn } from './chunk-2X72MOPZ.mjs';
3
- import { hasShapeProperties, isImageLikeElement, hasTextProperties, isCalloutShape, getCalloutLeaderLineGeometry, buildCalloutLeaderLineSvgPath, getCalloutViewBoxBounds, getSubstituteFontFamily, evaluatePresetShape, customGeometryPathsToSvgSubpaths } from './chunk-6YXLGMTN.mjs';
1
+ import { SHAPE_PRESET_DEFS, computeValueRangeForChart, getAnimationInitialStyle, cloneHistorySnapshot, isTemplateElement, clampCropValue, parseMediaCommand, normalizeHexColor, toCssWritingMode, toCssTextOrientation, toCssVerticalDirection, computeAutoFitTextStyle, resolveLineHeight, getKinsokuLineBreakStyles, buildTextBody3DSceneStyle, resolveParagraphRtl, resolveParagraphAlign, resolveCssTextAlign, colorWithOpacity, build3DExtrusionData, getResolvedShapeClipPath, normalizeStrokeDashType, buildCssGradientFromShapeStyle, buildShadowCssFromShapeStyle, buildInnerShadowCssFromShapeStyle, buildMultiLayerShadowCss, buildGlowBoxShadow, getCompoundLineBoxShadow, getSoftEdgeFilterId, getEffectDagFilter, buildPatternFillCss, buildReflectionCss, getCssBorderDashStyle, getCompoundLineBorderWidth, getSvgStrokeDasharray, svgLineCap, getCompoundLineOffsets, getCompoundLineWidths, computeSelectionRect, rectToCells, isCellInRect, buildChartViewModel, buildNotesPdfBytes, buildSlidesPdfBytes, buildPreviewAnimation, getRoundRectRadiusPx, substituteFieldText, resolveUnderlineDecorationStyle, hasDistinctScriptFonts, buildTextReflectionCss, getTextAlphaOpacity, buildTextRunFilterChain, buildTextShadowCss, TEXT_BUILD_ID_SEP, apply3dEffects, clampUnitInterval, computeColumnBoundaries, parseDrawingColor, parseDrawingColorOpacity, getCellDiagonalBorders, getPatternSvg, ooxmlDashToCssBorderStyle, cell3DBevelCss, getChartStylePalette, computeLayout, valueToY, formatAxisValue, computeLayoutOptions, splitSeriesByAxis, computeValueRange, getSecondaryValueAxis, seriesColor, paletteColor, resolveRegionCode, normalizeValue, sequentialColorScale, convertOmmlToMathMl, sanitizeMathMl, buildTextFillCss, resolvePictureBullet, computeResizedColumnWidths, computeResizedRowHeight, DEFAULT_ROW_HEIGHT, resolveFontRefIdx, tintColor2, shadeColor2, segmentByScript, resolveFontForScript, generateLogTicks, formatAxisValueWithUnits, getDisplayUnitLabel, hexToRgbChannels, chartPartToAttrs } from './chunk-6G6S7PEI.mjs';
2
+ import { translationsEn } from './chunk-PZTPX3HK.mjs';
3
+ import { hasShapeProperties, isImageLikeElement, hasTextProperties, isCalloutShape, getCalloutLeaderLineGeometry, buildCalloutLeaderLineSvgPath, getCalloutViewBoxBounds, getSubstituteFontFamily, evaluatePresetShape, customGeometryPathsToSvgSubpaths } from './chunk-PE2I5L6R.mjs';
4
4
  import { clsx } from 'clsx';
5
5
  import { twMerge } from 'tailwind-merge';
6
6
  import React6, { useState, useEffect, useMemo, Suspense, useRef, useCallback, useLayoutEffect } from 'react';
@@ -6250,7 +6250,7 @@ function FailedToLoad() {
6250
6250
  var LazySurfaceChart3DScene = React6.lazy(
6251
6251
  async () => {
6252
6252
  try {
6253
- return await import('./SurfaceChart3DScene-EGMWY4CZ.mjs');
6253
+ return await import('./SurfaceChart3DScene-V7P3LQVV.mjs');
6254
6254
  } catch {
6255
6255
  return { default: FailedToLoad };
6256
6256
  }
Binary file
Binary file
@@ -57767,6 +57767,14 @@ var PptxHandlerRuntime12 = class _PptxHandlerRuntime2 extends PptxHandlerRuntime
57767
57767
  }
57768
57768
  };
57769
57769
  var PptxHandlerRuntime13 = class extends PptxHandlerRuntime12 {
57770
+ isRenderedBulletMarker(segment) {
57771
+ const bullet = segment.bulletInfo;
57772
+ if (!bullet) {
57773
+ return false;
57774
+ }
57775
+ const marker = bullet.char ? `${bullet.char} ` : bullet.imageRelId || bullet.imageDataUrl ? "\u{1F4CE} " : bullet.autoNumType ? void 0 : "\u2022 ";
57776
+ return marker ? segment.text === marker : bullet.paragraphIndex !== void 0;
57777
+ }
57770
57778
  createParagraphsFromTextContent(text2, textStyle, textSegments, resolveHyperlinkRelationshipId) {
57771
57779
  const createParagraph = (runs, bulletInfo, level, endParaRunProperties, paragraphProperties2) => {
57772
57780
  const effectiveStyle = paragraphProperties2 ? { ...textStyle, ...paragraphProperties2 } : textStyle;
@@ -57786,9 +57794,10 @@ var PptxHandlerRuntime13 = class extends PptxHandlerRuntime12 {
57786
57794
  );
57787
57795
  return assembleParagraphXml(runs, paragraphProps, endParaRunProperties);
57788
57796
  };
57797
+ const createTextNode = (value) => /^[\t\n\r ]|[\t\n\r ]$/.test(value) ? { "@_xml:space": "preserve", "#text": value } : value;
57789
57798
  const createRun = (runText, style) => ({
57790
57799
  "a:rPr": this.createRunPropertiesFromTextStyle(style, resolveHyperlinkRelationshipId),
57791
- "a:t": runText
57800
+ "a:t": createTextNode(runText)
57792
57801
  });
57793
57802
  const createFieldRun = (runText, style, fieldType, fieldGuid, fieldGuidAttr, fieldParagraphPropertiesXml) => {
57794
57803
  const fld = { "@_type": fieldType };
@@ -57803,7 +57812,7 @@ var PptxHandlerRuntime13 = class extends PptxHandlerRuntime12 {
57803
57812
  if (fieldParagraphPropertiesXml && typeof fieldParagraphPropertiesXml === "object") {
57804
57813
  fld["a:pPr"] = fieldParagraphPropertiesXml;
57805
57814
  }
57806
- fld["a:t"] = runText;
57815
+ fld["a:t"] = createTextNode(runText);
57807
57816
  return fld;
57808
57817
  };
57809
57818
  const createRubyRun = (segment, style) => {
@@ -57820,7 +57829,7 @@ var PptxHandlerRuntime13 = class extends PptxHandlerRuntime12 {
57820
57829
  );
57821
57830
  const rtRun = {
57822
57831
  "a:rPr": rtRunProps,
57823
- "a:t": segment.rubyText ?? ""
57832
+ "a:t": createTextNode(segment.rubyText ?? "")
57824
57833
  };
57825
57834
  const baseRunProps = this.createRunPropertiesFromTextStyle(
57826
57835
  style,
@@ -57828,7 +57837,7 @@ var PptxHandlerRuntime13 = class extends PptxHandlerRuntime12 {
57828
57837
  );
57829
57838
  const baseRun = {
57830
57839
  "a:rPr": baseRunProps,
57831
- "a:t": segment.text
57840
+ "a:t": createTextNode(segment.text)
57832
57841
  };
57833
57842
  return {
57834
57843
  "a:rPr": this.createRunPropertiesFromTextStyle(style, resolveHyperlinkRelationshipId),
@@ -57889,6 +57898,9 @@ var PptxHandlerRuntime13 = class extends PptxHandlerRuntime12 {
57889
57898
  }
57890
57899
  capturedParagraphMeta = true;
57891
57900
  }
57901
+ if (this.isRenderedBulletMarker(segment)) {
57902
+ return;
57903
+ }
57892
57904
  if (segment.isLineBreak) {
57893
57905
  const brNode = {};
57894
57906
  if (segment.breakRunProperties && typeof segment.breakRunProperties === "object") {
@@ -58800,12 +58812,15 @@ var PptxHandlerRuntime17 = class extends PptxHandlerRuntime16 {
58800
58812
  /**
58801
58813
  * Whether a segment carries run-level content that the flat `el.text` string
58802
58814
  * cannot represent: an OOXML field (`a:fld`), an inline equation, or a ruby
58803
- * (phonetic) annotation. Such segments must survive a save: collapsing them
58804
- * to the plain-text path silently downgrades a field to static text (e.g. a
58805
- * slide-number field becomes a frozen number) or drops the equation/ruby.
58815
+ * (phonetic) annotation, or paragraph bullet metadata. Such segments must
58816
+ * survive a save: collapsing them to the plain-text path silently downgrades
58817
+ * a field to static text (e.g. a slide-number field becomes a frozen number)
58818
+ * or drops the equation, ruby, or bullet.
58806
58819
  */
58807
58820
  isStructuralTextSegment(segment) {
58808
- return Boolean(segment.fieldType || segment.equationXml || segment.rubyText);
58821
+ return Boolean(
58822
+ segment.fieldType || segment.equationXml || segment.rubyText || segment.bulletInfo
58823
+ );
58809
58824
  }
58810
58825
  areTextSegmentsUniform(textSegments) {
58811
58826
  if (!textSegments || textSegments.length === 0) {
@@ -70824,14 +70839,14 @@ var PptxHandlerRuntime63 = class extends PptxHandlerRuntime62 {
70824
70839
  return;
70825
70840
  }
70826
70841
  }
70827
- const runText = typeof r["a:t"] === "string" ? r["a:t"] : r["a:t"] !== void 0 ? String(r["a:t"]) : "";
70842
+ const runText = xmlText(r["a:t"]) ?? "";
70828
70843
  appendRun(runText, r["a:rPr"]);
70829
70844
  };
70830
70845
  const processField = (field) => {
70831
70846
  if (!field) {
70832
70847
  return;
70833
70848
  }
70834
- const fieldText = typeof field["a:t"] === "string" ? field["a:t"] : field["a:t"] !== void 0 ? String(field["a:t"]) : "";
70849
+ const fieldText = xmlText(field["a:t"]) ?? "";
70835
70850
  const fieldRunStyle = {
70836
70851
  ...mergedDefaultRunStyle,
70837
70852
  ...this.extractTextRunStyle(
@@ -71027,7 +71042,7 @@ var PptxHandlerRuntime63 = class extends PptxHandlerRuntime62 {
71027
71042
  const rtRunObj = rtRun;
71028
71043
  const t = rtRunObj["a:t"];
71029
71044
  if (t !== void 0) {
71030
- rtParts.push(typeof t === "string" ? t : String(t));
71045
+ rtParts.push(xmlText(t) ?? "");
71031
71046
  }
71032
71047
  if (!rubyStyle) {
71033
71048
  rubyStyle = {
@@ -71058,7 +71073,7 @@ var PptxHandlerRuntime63 = class extends PptxHandlerRuntime62 {
71058
71073
  const baseRunObj = baseRun;
71059
71074
  const t = baseRunObj["a:t"];
71060
71075
  if (t !== void 0) {
71061
- baseParts.push(typeof t === "string" ? t : String(t));
71076
+ baseParts.push(xmlText(t) ?? "");
71062
71077
  }
71063
71078
  if (baseParts.length === 1) {
71064
71079
  baseStyle = {
Binary file
@@ -375,6 +375,7 @@ var translationsEn = {
375
375
  "pptx.presentation.highlighter": "Highlighter",
376
376
  "pptx.presentation.eraser": "Eraser",
377
377
  "pptx.presentation.laserPointer": "Laser Pointer",
378
+ "pptx.presentation.pointerTools": "Pointer Options",
378
379
  // Selection pane
379
380
  "pptx.selectionPane.title": "Selection Pane",
380
381
  "pptx.selectionPane.empty": "No elements",
@@ -1101,9 +1102,17 @@ var translationsEn = {
1101
1102
  "pptx.presenter.nextSlide": "Next Slide",
1102
1103
  "pptx.presenter.noSlides": "No slides",
1103
1104
  "pptx.presenter.openAudienceWindow": "Open Audience Window",
1104
- "pptx.presenter.presenterView": "Presenter View (N)",
1105
+ "pptx.presenter.presenterView": "Presenter View",
1105
1106
  "pptx.presenter.prev": "Prev",
1106
1107
  "pptx.presenter.previousSlide": "Previous Slide",
1108
+ "pptx.presenter.seeAllSlides": "See All Slides",
1109
+ "pptx.presenter.screen": "Screen",
1110
+ "pptx.presenter.blackScreen": "Black Screen",
1111
+ "pptx.presenter.whiteScreen": "White Screen",
1112
+ "pptx.presenter.pointerArrow": "Arrow",
1113
+ "pptx.presenter.pointerPen": "Pen",
1114
+ "pptx.presenter.pointerHighlighter": "Highlighter",
1115
+ "pptx.presenter.eraseAllInk": "Erase All Ink on Slide",
1107
1116
  "pptx.presenter.slideLabel": "Slide {{current}} of {{total}}",
1108
1117
  "pptx.presenter.timerProgress": "Timer Progress",
1109
1118
  // Print dialog
Binary file
Binary file