ooxml-core 1.14.0 → 1.15.0
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/dist/{PptxHandler-5YP75BPO.cjs → PptxHandler-OGLITB3F.cjs} +2 -2
- package/dist/{PptxHandler-KNBFECUE.mjs → PptxHandler-R5BVKEBW.mjs} +2 -2
- package/dist/{PptxHandler-GT5Q66TG.mjs → PptxHandler-UKAA5T5U.mjs} +1 -1
- package/dist/{PresentationBuilder-II7C4A3R.cjs → PresentationBuilder-4AF3PZHG.cjs} +4 -4
- package/dist/{PresentationBuilder-CVM6LJ7L.mjs → PresentationBuilder-54QGEZ2F.mjs} +1 -1
- package/dist/{PresentationBuilder-5DCCFHWJ.mjs → PresentationBuilder-W67DIJBV.mjs} +2 -2
- package/dist/automation/index.cjs +372 -669
- package/dist/automation/index.mjs +372 -669
- package/dist/{chunk-ORH32TO3.mjs → chunk-7ZIZFJXT.mjs} +1509 -754
- package/dist/{chunk-XGXIS4PN.mjs → chunk-EMZIHAOH.mjs} +1508 -739
- package/dist/{chunk-4WZLFUUA.mjs → chunk-HU36GIYM.mjs} +642 -200
- package/dist/{chunk-54ASP65T.mjs → chunk-JFMIPOPV.mjs} +1 -1
- package/dist/{chunk-2D4IFQ5M.mjs → chunk-NWAQEXBK.mjs} +1 -1
- package/dist/{chunk-TNNXOW2O.mjs → chunk-OPBZBSJF.mjs} +1 -1
- package/dist/{chunk-TQE7FFNT.cjs → chunk-ZWI7MTLF.cjs} +1509 -754
- package/dist/geometry/index.cjs +259 -0
- package/dist/geometry/index.d.ts +1 -0
- package/dist/geometry/index.d.ts.map +1 -1
- package/dist/geometry/index.mjs +255 -1
- package/dist/geometry/shape-gallery-catalog.d.ts +32 -0
- package/dist/geometry/shape-gallery-catalog.d.ts.map +1 -0
- package/dist/index.cjs +371 -112
- package/dist/index.mjs +371 -112
- package/dist/pptx/automation/index.cjs +2203 -1415
- package/dist/pptx/automation/index.d.ts +4 -4
- package/dist/pptx/automation/index.mjs +5 -5
- package/dist/pptx/chunks/{elements-tK7xnWeS.d.ts → elements-Cadkqht8.d.ts} +143 -2
- package/dist/pptx/chunks/elements-Cadkqht8.d.ts.map +1 -0
- package/dist/pptx/chunks/{index-DS9Y4Ne3.d.ts → index-CJI2EugA.d.ts} +5 -3
- package/dist/pptx/chunks/{index-DS9Y4Ne3.d.ts.map → index-CJI2EugA.d.ts.map} +1 -1
- package/dist/pptx/chunks/{index-BSpNQuvz.d.ts → index-CozqpSPL.d.ts} +112 -5
- package/dist/pptx/chunks/index-CozqpSPL.d.ts.map +1 -0
- package/dist/pptx/chunks/{text-operations-BdD_UQ11.d.ts → text-operations-C3L9xrqx.d.ts} +2 -2
- package/dist/pptx/chunks/{text-operations-BdD_UQ11.d.ts.map → text-operations-C3L9xrqx.d.ts.map} +1 -1
- package/dist/pptx/cli/index.cjs +2151 -1363
- package/dist/pptx/cli/index.d.ts +1 -1
- package/dist/pptx/cli/index.mjs +4 -4
- package/dist/pptx/converter/index.cjs +7 -0
- package/dist/pptx/converter/index.d.ts +1 -1
- package/dist/pptx/converter/index.mjs +2 -2
- package/dist/pptx/editor/render/find-replace.d.ts +2 -2
- package/dist/pptx/editor/render/slide-operations.cjs +1 -1
- package/dist/pptx/editor/render/slide-operations.mjs +1 -1
- package/dist/pptx/editor/render/text-runs-style-patch.d.ts +1 -1
- package/dist/pptx/editor/render/text-style-scope.d.ts +1 -1
- package/dist/pptx/index.cjs +2990 -1726
- package/dist/pptx/index.d.ts +5 -5
- package/dist/pptx/index.mjs +5 -5
- package/dist/teams/ics.d.ts.map +1 -1
- package/dist/teams/index.cjs +527 -622
- package/dist/teams/index.d.ts +1 -0
- package/dist/teams/index.d.ts.map +1 -1
- package/dist/teams/index.mjs +512 -623
- package/dist/teams/meetings.d.ts +11 -1
- package/dist/teams/meetings.d.ts.map +1 -1
- package/dist/teams/recurrence-calendar.d.ts +41 -0
- package/dist/teams/recurrence-calendar.d.ts.map +1 -0
- package/dist/teams/recurrence.d.ts +1 -1
- package/dist/teams/recurrence.d.ts.map +1 -1
- package/dist/teams/server-session.d.ts +19 -0
- package/dist/teams/server-session.d.ts.map +1 -1
- package/dist/xlsx/edit/pivots.d.ts.map +1 -1
- package/dist/xlsx/index.cjs +386 -676
- package/dist/xlsx/index.mjs +385 -677
- package/dist/xlsx/load/index.cjs +328 -633
- package/dist/xlsx/load/index.mjs +328 -633
- package/dist/xlsx/model-pivots.d.ts +17 -4
- package/dist/xlsx/model-pivots.d.ts.map +1 -1
- package/dist/xlsx/pivot/aggregate.d.ts +6 -3
- package/dist/xlsx/pivot/aggregate.d.ts.map +1 -1
- package/dist/xlsx/pivot/axes.d.ts +5 -0
- package/dist/xlsx/pivot/axes.d.ts.map +1 -1
- package/dist/xlsx/pivot/columns.d.ts +9 -3
- package/dist/xlsx/pivot/columns.d.ts.map +1 -1
- package/dist/xlsx/pivot/data.d.ts.map +1 -1
- package/dist/xlsx/pivot/date-axes.d.ts +1 -1
- package/dist/xlsx/pivot/date-axes.d.ts.map +1 -1
- package/dist/xlsx/pivot/date-group-read.d.ts.map +1 -1
- package/dist/xlsx/pivot/date-groups.d.ts +8 -3
- package/dist/xlsx/pivot/date-groups.d.ts.map +1 -1
- package/dist/xlsx/pivot/index.d.ts +2 -1
- package/dist/xlsx/pivot/index.d.ts.map +1 -1
- package/dist/xlsx/pivot/measures.d.ts +0 -7
- package/dist/xlsx/pivot/measures.d.ts.map +1 -1
- package/dist/xlsx/pivot/nested.d.ts +4 -2
- package/dist/xlsx/pivot/nested.d.ts.map +1 -1
- package/dist/xlsx/pivot/page-filter-admission.d.ts.map +1 -1
- package/dist/xlsx/pivot/page-filter.d.ts.map +1 -1
- package/dist/xlsx/pivot/read.d.ts.map +1 -1
- package/dist/xlsx/pivot/subtotals.d.ts +6 -1
- package/dist/xlsx/pivot/subtotals.d.ts.map +1 -1
- package/dist/xlsx/pivot/table-xml.d.ts.map +1 -1
- package/dist/xlsx/pivot/values-axis.d.ts +7 -4
- package/dist/xlsx/pivot/values-axis.d.ts.map +1 -1
- package/dist/xlsx/ui/commands/i18n/pivots.d.ts.map +1 -1
- package/dist/xlsx/ui/index.cjs +271 -584
- package/dist/xlsx/ui/index.mjs +271 -584
- package/package.json +1 -1
- package/dist/pptx/chunks/elements-tK7xnWeS.d.ts.map +0 -1
- package/dist/pptx/chunks/index-BSpNQuvz.d.ts.map +0 -1
- package/dist/xlsx/pivot/hierarchy-first.d.ts +0 -21
- package/dist/xlsx/pivot/hierarchy-first.d.ts.map +0 -1
- package/dist/xlsx/pivot/hierarchy.d.ts +0 -8
- package/dist/xlsx/pivot/hierarchy.d.ts.map +0 -1
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { NS, SMART_ART_DEFINITION_PARTS, VML_SHAPE_TAGS, isAlternateContentChoiceXmlSupported, parseVmlElement, unwrapAlternateContent, xmlChild, xmlAttr, parseDrawingMediaReference, cropShapeForPresetGeometry, isHeaderFooterPlaceholder, xmlPath, inheritedPlaceholderFieldType, parseParagraphLevel, xmlHasChild, parseParagraphExtraAttributes, parseParagraphMargins, parseAlignmentAttr, parseParagraphRtl, parseTabStops, resolveParagraphAlignment, xmlText, parseBodyPrBooleanAttrs, selectAlternateContentBranch, parseBulletSizePercent, extractColorChoiceXml, formatAutoNumberMarker, parseParagraphSpacingPx, createBuiltinVariables, resolveCoordinate, readPathListCommandOrder, parseStructuredCustomGeometry, parseAdjustmentValues, parseGuideDefinitions, evaluateGuides, evaluateGeometryPaths, inheritCustomGeometryCommandOrder, parseInkMlContent, parseModel3DScene, remapElementShapeIds, parseShapeId, isTemplateElementId, remapShapeIdReferences, reapplyAlternateContentToTree, buildOle2, SHAPE_TREE_ELEMENT_TAGS, MAX_SHAPE_ID, orderedXmlKey, safeResolveZipPath, parseXml, elements, parseDataUrlToBytes, base64Decode, EMU_PER_PX, reorderObjectKeys, encodeCompressedPng, zlibStore, hash, concatArrays, encodePasswordUtf16LE, COLOR_MAP_ALIAS_KEYS, DEFAULT_COLOR_MAP, uint32LE, pptxActionToElementAction, buildClrMapOverrideXml, applyActiveXControlsToSlide, BLIP_FILL_ORDER, SP_PR_ORDER, hasShapeProperties, ensureXmlChild, hasTextProperties, inkElementToStrokes, buildInkMlContent, ensureXmlChildOrCreate, isXmlNode, applyChartLayouts, stripXmlOrderSuffix, serializeTabStop, colorsEqual, generateFontGuid, applyBubbleChartOptions, applyChartUpDownBars, applyDataLabelsRangeToDLbls, applyChartAxisScaling, applyChartAxisLabelFormatting, upsertChartAxisChild, applyChartDateAxisUnits, applyChartAxisDisplayUnitsToXml, writeChartShapeProps, resolveTxPrDefRPr, buildDefRPrTextProperties, buildChartGradFillXml, applySeriesMarkerToXml, applySeriesDataPointsToXml, chartColorHex, applyChartManualLayout, chartTrendlineType, buildTrendlineLabel, serializeColorChoice, replaceOleEmbedding, findKey, collectAllText, buildNodeGuidMap, buildPresentationGuidMap, regenerateSmartArtDrawingShapes, buildFabricatedDrawingXml, buildFabricatedDiagramDataXml, DIAGRAM_DRAWING_CONTENT_TYPE, DIAGRAM_DRAWING_REL_TYPE, applyDiagramRelationshipIds, buildSaveTimeCustomGeometryXml, applyCustomGeometryGuideOverrides, avLstForPreset, filterValidShapeAdjustmentEntries, applyDrawingMediaReference, XML_PROLOG, DGM_XMLNS, xmlEscape, writeBodyPrBooleanAttrs, applyTextBodySp3d, writeShapeEffects, SHAPE_STYLE_ORDER, roundCoordinate, scaleVectorToIntegers, EMU_PER_PIXEL, P14_GUIDE_URI, P15_GUIDE_URI, buildGuideListExtension, resetSpPrFormattingForStyleMatrix, fillIsPurelyStyleMatrix, serializeColorChoiceWithRef, createLineStyleGate, applyDrawingLineDash, getSignaturePathsToStrip, mergeSmartArtPointXml, mergeSmartArtConnectionXml, obfuscateFont, containsConvertibleStrictNamespaceAttribute, convertXmlToStrict, applySeriesPictureOptionsToXml, findChartExtByUri, findChildByLocalName, regenerateClonedUniqueId, buildChartUniqueIdExtLst, createOfficeGuid, isContentPoint, newSmartArtGuid, parseChartUserShapesDrawing, xmlChildren, applyChartGradientToSpPr, setAutoTitleDeleted, insertAt, replaceFirstText, shouldRebuildFromParagraphs, buildPointFromParagraphs, shouldRebuildFromRuns, buildPointFromRuns, buildPointText, ensureXmlChildren, TC_PR_BORDERS_ORDER, writeChartColorChoice, parseChartFormulaRange, expandRangeAddresses, applyCellWritesToWorksheet, stripParentDirSegments, parseChartUniqueId, buildChartMarkerXml, chartGradientsEqual, chartColorChoiceValue, preservesSpreadsheetXmlWhitespace, buildEffectDagTreeFromXml, syncPictureShapeTypeWithCropShape, buildSrgbColorChoice, fetchUrlToBytes, parseChartWideTextStyle, parseDefRPrTextStyle, parseChartDataLabelOptions, shadowOffsetToDistanceAndDirection, positiveFixedAngleAttribute, xmlAttrNumber, parseCustomShows, parseShapeProps, parseActiveXControlsFromSlide, convertMetafileToDataUrl, blobUrlToDataUrl, first, children, ooxmlGradientAngleToCssDegrees, isAlternateContentChoiceSupported, SvgExporter, detectStrictConformance, normalizeStrictXml, normalizeStShapeType, applyCustomShows, applySections, reorderObjectKeysByLocalName, PRESENTATION_CHILD_ORDER, applyKinsokuToXml, normalizeNamespaceUri, captureStyleBaseline, STYLE_MATRIX_FILL_KEYS, STYLE_MATRIX_LINE_KEYS, STYLE_MATRIX_EFFECT_KEYS, detectOleObjectType, inferOleExtensionFromTarget, deriveSlideTitles, parseSlideDrawingGuides, parseP14DirectChild, parseP14FromExtLst, P14_TRANSITION_TYPES, decodeXmlEntities, preservesXmlWhitespace, annotateCustomGeometryCommandOrder, annotateSmartArtTextOrder, encodeXmlAttributeValue, encodeXmlTextValue, stripXmlOrderMarkers, MIN_ELEMENT_SIZE, createDrawingObjectId, DEFAULT_TEXT_FONT_SIZE, EncryptedFileError, decodePptxJsonText, deserializePptxFromJson, applyImportedPptxData, DEFAULT_CHART_GRADIENT_ANGLE, supportsChartGradientFill, svgToCustomGeometryPaths, MIN_TABLE_DIMENSION, MAX_TABLE_DIMENSION, SYSTEM_COLOR_MAP, PRESET_COLOR_MAP, effectChild, mergeEffectNode, mergeAttributeEffectNode, estimateMediaDurationMs, parseVmlElements, prismFamilyFlags, prismFamilyTypeOfNode, prismFamilyTypeForFlags, P14_DIR_IS_ORIENTATION_TYPE, IncorrectPasswordError, applyThemeToData, detectFileFormat, parseOle2, decryptPptx, encryptPptx, escAttr, escText, parseDrawingLineDash, parseLineSpacingMultiplier, parseLineSpacingExactPt, parseEncryptionInfo, RC4_ALG_ID, isOle2CompoundFile, ENTRY_TYPE_ROOT, PML_XMLNS, solidFill, esc, OOXML_PERCENT_UNITS, parsePresentationDrawingGuides, parsePresentationSmartTags, resolveLayoutDisplayName, detectDigitalSignatures, unwrapOleEmbedding, mimeTypeForOleFile, oleBytesToDataUrl, emu, extractGuidFromPartName, deobfuscateFont, detectFontFormat, gradFill, parseKinsoku, parseLineStyle, parseChartUpDownBars, parseDataTable, parseChart3DSurfaces, parseChartAxes, parseBubbleChartOptions, parseChartLayouts, parseCxChartSeries, parseChartDataPointPictureBlipRel, parseSeriesDataPoints, parseMarker, parseSeriesDataLabels, parseChartDataPointPicture, parseImplicitBlipPictureFill, parseEmbeddedXlsx, relAttr, buildXml, EMU_PER_POINT, chartTrendlineKind, parseChartManualLayout, parseDiagramRelationshipIds, parseSmartArtTextParagraphs, firstParagraphRuns, smartArtParagraphsText, parseSmartArtPresLayoutVars, readChartManualLayoutValues, parseSmartArtConnection, projectSmartArtNodeText, resolveSmartArtNodeStyleRoles, resolveSmartArtNodeCoherent3DOff, parseSmartArtDefinitionMetadata, parseSmartArtColorStyleLabels, buildSmartArtColorLists, buildSmartArtColorRoleMap, parseSmartArtQuickStyleLabels, resolveSmartArtEffectIntensity, parseSmartArtStyleLabelRefs, extractStyleReferenceColorXml, withThemePlaceholderColor, getElementOrientationMatrix, isTextOrientationMatrix, TEXT_ORIENTATION_IDENTITY, multiplyTextOrientationMatrices, CHART_ERROR_VALUE_TYPES, CHART_ERROR_BAR_TYPES, CHART_ERROR_BAR_DIRECTIONS } from './chunk-
|
|
1
|
+
import { NS, SMART_ART_DEFINITION_PARTS, VML_SHAPE_TAGS, isAlternateContentChoiceXmlSupported, parseVmlElement, unwrapAlternateContent, xmlChild, xmlAttr, parseDrawingMediaReference, cropShapeForPresetGeometry, isHeaderFooterPlaceholder, xmlPath, inheritedPlaceholderFieldType, parseParagraphLevel, xmlHasChild, parseParagraphExtraAttributes, parseParagraphMargins, parseAlignmentAttr, parseParagraphRtl, parseTabStops, resolveParagraphAlignment, xmlText, parseBodyPrBooleanAttrs, selectAlternateContentBranch, parseBulletSizePercent, extractColorChoiceXml, formatAutoNumberMarker, parseParagraphSpacingPx, createBuiltinVariables, resolveCoordinate, readPathListCommandOrder, parseStructuredCustomGeometry, parseAdjustmentValues, parseGuideDefinitions, evaluateGuides, evaluateGeometryPaths, inheritCustomGeometryCommandOrder, parseInkMlContent, parseModel3DScene, remapElementShapeIds, parseShapeId, isTemplateElementId, remapShapeIdReferences, reapplyAlternateContentToTree, buildOle2, SHAPE_TREE_ELEMENT_TAGS, MAX_SHAPE_ID, orderedXmlKey, safeResolveZipPath, parseXml, elements, parseDataUrlToBytes, base64Decode, EMU_PER_PX, reorderObjectKeys, encodeCompressedPng, zlibStore, hash, concatArrays, encodePasswordUtf16LE, COLOR_MAP_ALIAS_KEYS, DEFAULT_COLOR_MAP, uint32LE, pptxActionToElementAction, buildClrMapOverrideXml, applyActiveXControlsToSlide, BLIP_FILL_ORDER, SP_PR_ORDER, hasShapeProperties, ensureXmlChild, hasTextProperties, inkElementToStrokes, buildInkMlContent, ensureXmlChildOrCreate, isXmlNode, applyChartLayouts, stripXmlOrderSuffix, serializeTabStop, colorsEqual, generateFontGuid, applyBubbleChartOptions, applyChartUpDownBars, applyDataLabelsRangeToDLbls, applyChartAxisScaling, applyChartAxisLabelFormatting, upsertChartAxisChild, applyChartDateAxisUnits, applyChartAxisDisplayUnitsToXml, writeChartShapeProps, resolveTxPrDefRPr, buildDefRPrTextProperties, buildChartGradFillXml, applySeriesMarkerToXml, applySeriesDataPointsToXml, chartColorHex, applyChartManualLayout, chartTrendlineType, buildTrendlineLabel, serializeColorChoice, replaceOleEmbedding, findKey, collectAllText, buildNodeGuidMap, buildPresentationGuidMap, regenerateSmartArtDrawingShapes, buildFabricatedDrawingXml, buildFabricatedDiagramDataXml, DIAGRAM_DRAWING_CONTENT_TYPE, DIAGRAM_DRAWING_REL_TYPE, applyDiagramRelationshipIds, buildSaveTimeCustomGeometryXml, applyCustomGeometryGuideOverrides, avLstForPreset, filterValidShapeAdjustmentEntries, applyDrawingMediaReference, XML_PROLOG, DGM_XMLNS, xmlEscape, writeBodyPrBooleanAttrs, applyTextBodySp3d, writeShapeEffects, SHAPE_STYLE_ORDER, roundCoordinate, scaleVectorToIntegers, EMU_PER_PIXEL, P14_GUIDE_URI, P15_GUIDE_URI, buildGuideListExtension, resetSpPrFormattingForStyleMatrix, fillIsPurelyStyleMatrix, serializeColorChoiceWithRef, createLineStyleGate, applyDrawingLineDash, getSignaturePathsToStrip, mergeSmartArtPointXml, mergeSmartArtConnectionXml, obfuscateFont, containsConvertibleStrictNamespaceAttribute, convertXmlToStrict, applySeriesPictureOptionsToXml, findChartExtByUri, findChildByLocalName, regenerateClonedUniqueId, buildChartUniqueIdExtLst, createOfficeGuid, isContentPoint, newSmartArtGuid, parseChartUserShapesDrawing, xmlChildren, applyChartGradientToSpPr, setAutoTitleDeleted, insertAt, replaceFirstText, shouldRebuildFromParagraphs, buildPointFromParagraphs, shouldRebuildFromRuns, buildPointFromRuns, buildPointText, ensureXmlChildren, TC_PR_BORDERS_ORDER, writeChartColorChoice, parseChartFormulaRange, expandRangeAddresses, applyCellWritesToWorksheet, stripParentDirSegments, parseChartUniqueId, buildChartMarkerXml, chartGradientsEqual, chartColorChoiceValue, preservesSpreadsheetXmlWhitespace, buildEffectDagTreeFromXml, syncPictureShapeTypeWithCropShape, buildSrgbColorChoice, fetchUrlToBytes, parseChartWideTextStyle, parseDefRPrTextStyle, parseChartDataLabelOptions, shadowOffsetToDistanceAndDirection, positiveFixedAngleAttribute, xmlAttrNumber, parseCustomShows, parseShapeProps, parseActiveXControlsFromSlide, convertMetafileToDataUrl, blobUrlToDataUrl, first, children, ooxmlGradientAngleToCssDegrees, isAlternateContentChoiceSupported, SvgExporter, detectStrictConformance, normalizeStrictXml, normalizeStShapeType, applyCustomShows, applySections, reorderObjectKeysByLocalName, PRESENTATION_CHILD_ORDER, applyKinsokuToXml, normalizeNamespaceUri, captureStyleBaseline, STYLE_MATRIX_FILL_KEYS, STYLE_MATRIX_LINE_KEYS, STYLE_MATRIX_EFFECT_KEYS, detectOleObjectType, inferOleExtensionFromTarget, deriveSlideTitles, parseSlideDrawingGuides, parseP14DirectChild, parseP14FromExtLst, P14_TRANSITION_TYPES, decodeXmlEntities, preservesXmlWhitespace, annotateCustomGeometryCommandOrder, annotateSmartArtTextOrder, encodeXmlAttributeValue, encodeXmlTextValue, stripXmlOrderMarkers, MIN_ELEMENT_SIZE, createDrawingObjectId, DEFAULT_TEXT_FONT_SIZE, EncryptedFileError, decodePptxJsonText, deserializePptxFromJson, applyImportedPptxData, DEFAULT_CHART_GRADIENT_ANGLE, supportsChartGradientFill, svgToCustomGeometryPaths, MIN_TABLE_DIMENSION, MAX_TABLE_DIMENSION, SYSTEM_COLOR_MAP, PRESET_COLOR_MAP, effectChild, mergeEffectNode, mergeAttributeEffectNode, estimateMediaDurationMs, parseVmlElements, prismFamilyFlags, prismFamilyTypeOfNode, prismFamilyTypeForFlags, P14_DIR_IS_ORIENTATION_TYPE, IncorrectPasswordError, applyThemeToData, detectFileFormat, parseOle2, decryptPptx, encryptPptx, escAttr, escText, parseDrawingLineDash, parseLineSpacingMultiplier, parseLineSpacingExactPt, parseEncryptionInfo, RC4_ALG_ID, isOle2CompoundFile, ENTRY_TYPE_ROOT, PML_XMLNS, solidFill, esc, OOXML_PERCENT_UNITS, parsePresentationDrawingGuides, parsePresentationSmartTags, resolveLayoutDisplayName, detectDigitalSignatures, unwrapOleEmbedding, mimeTypeForOleFile, oleBytesToDataUrl, emu, extractGuidFromPartName, deobfuscateFont, detectFontFormat, gradFill, parseKinsoku, parseLineStyle, parseChartUpDownBars, parseDataTable, parseChart3DSurfaces, parseChartAxes, parseBubbleChartOptions, parseChartLayouts, parseCxChartSeries, parseChartDataPointPictureBlipRel, parseSeriesDataPoints, parseMarker, parseSeriesDataLabels, parseChartDataPointPicture, parseImplicitBlipPictureFill, parseEmbeddedXlsx, relAttr, buildXml, EMU_PER_POINT, chartTrendlineKind, parseChartManualLayout, parseDiagramRelationshipIds, parseSmartArtTextParagraphs, firstParagraphRuns, smartArtParagraphsText, parseSmartArtPresLayoutVars, readChartManualLayoutValues, parseSmartArtConnection, projectSmartArtNodeText, resolveSmartArtNodeStyleRoles, resolveSmartArtNodeCoherent3DOff, parseSmartArtDefinitionMetadata, parseSmartArtColorStyleLabels, buildSmartArtColorLists, buildSmartArtColorRoleMap, parseSmartArtQuickStyleLabels, resolveSmartArtEffectIntensity, parseSmartArtStyleLabelRefs, extractStyleReferenceColorXml, withThemePlaceholderColor, getElementOrientationMatrix, isTextOrientationMatrix, TEXT_ORIENTATION_IDENTITY, multiplyTextOrientationMatrices, CHART_ERROR_VALUE_TYPES, CHART_ERROR_BAR_TYPES, CHART_ERROR_BAR_DIRECTIONS } from './chunk-JFMIPOPV.mjs';
|
|
2
2
|
import { openPptxZip, DIGITAL_SIGNATURE_ORIGIN_REL_TYPE, openNestedZip, DEFAULT_MAX_UNCOMPRESSED_BYTES, guardZip, ZipBombError, MAX_ZIP_ENTRY_COUNT } from './chunk-M4XLF4R7.mjs';
|
|
3
3
|
import { resolveSmartArtLayoutCategory } from './chunk-3GXV5MPC.mjs';
|
|
4
4
|
import { cloneXmlObject, applySmartArtLayoutDefinition, cloneSlide, parseSmartArtLayoutDefinition } from './chunk-54S5A5PZ.mjs';
|
|
@@ -254,9 +254,9 @@ function scan(xml) {
|
|
|
254
254
|
};
|
|
255
255
|
return { root, children: [] };
|
|
256
256
|
}
|
|
257
|
-
const
|
|
257
|
+
const children6 = [];
|
|
258
258
|
let depth = 0;
|
|
259
|
-
let
|
|
259
|
+
let child16;
|
|
260
260
|
i = openEnd;
|
|
261
261
|
for (; ; ) {
|
|
262
262
|
const lt = xml.indexOf("<", i);
|
|
@@ -271,16 +271,16 @@ function scan(xml) {
|
|
|
271
271
|
if (xml[lt + 1] === "/") {
|
|
272
272
|
if (depth === 0) {
|
|
273
273
|
const root = { start: rootStart, openEnd, closeStart: lt, end, selfClosing: false };
|
|
274
|
-
return { root, children:
|
|
274
|
+
return { root, children: children6 };
|
|
275
275
|
}
|
|
276
276
|
depth--;
|
|
277
|
-
if (depth === 0 &&
|
|
278
|
-
|
|
277
|
+
if (depth === 0 && child16)
|
|
278
|
+
children6.push({ ...child16, closeStart: lt, end, selfClosing: false });
|
|
279
279
|
} else if (xml[end - 2] === "/") {
|
|
280
280
|
if (depth === 0)
|
|
281
|
-
|
|
281
|
+
children6.push({ start: lt, openEnd: end, closeStart: end, end, selfClosing: true });
|
|
282
282
|
} else {
|
|
283
|
-
if (depth === 0)
|
|
283
|
+
if (depth === 0) child16 = { start: lt, openEnd: end };
|
|
284
284
|
depth++;
|
|
285
285
|
}
|
|
286
286
|
}
|
|
@@ -290,10 +290,10 @@ var qualifiedName = (xml, span) => /^<([^\s/>]+)/.exec(xml.slice(span.start, spa
|
|
|
290
290
|
var PartPatch = class {
|
|
291
291
|
constructor(xml, rootElement) {
|
|
292
292
|
this.xml = xml;
|
|
293
|
-
const { root, children:
|
|
293
|
+
const { root, children: children6 } = scan(xml);
|
|
294
294
|
const kids = elements(rootElement);
|
|
295
|
-
if (kids.length !==
|
|
296
|
-
kids.forEach((kid, index) => this.spans.set(kid,
|
|
295
|
+
if (kids.length !== children6.length) throw new Error("Property part markup is not supported");
|
|
296
|
+
kids.forEach((kid, index) => this.spans.set(kid, children6[index]));
|
|
297
297
|
this.root = root;
|
|
298
298
|
for (const attribute3 of Array.from(rootElement.attributes)) {
|
|
299
299
|
if (attribute3.name === "xmlns") this.defaultNs = attribute3.value;
|
|
@@ -735,9 +735,9 @@ function booleanAttribute(element, name) {
|
|
|
735
735
|
|
|
736
736
|
// diagram/data-model.ts
|
|
737
737
|
var TRANSITION_TYPES = /* @__PURE__ */ new Set(["parTrans", "sibTrans"]);
|
|
738
|
-
function collectTransitionText(
|
|
738
|
+
function collectTransitionText(points5, describe, text) {
|
|
739
739
|
const byId = /* @__PURE__ */ new Map();
|
|
740
|
-
for (const point of
|
|
740
|
+
for (const point of points5) {
|
|
741
741
|
const { type, modelId } = describe(point);
|
|
742
742
|
if (!TRANSITION_TYPES.has((type ?? "").trim())) continue;
|
|
743
743
|
const id = (modelId ?? "").trim();
|
|
@@ -783,9 +783,9 @@ function parseDrawingColor(element) {
|
|
|
783
783
|
const color = {
|
|
784
784
|
kind,
|
|
785
785
|
value: colorValue(kind, element),
|
|
786
|
-
transforms: elements(element).map((
|
|
787
|
-
name:
|
|
788
|
-
value:
|
|
786
|
+
transforms: elements(element).map((child16) => ({
|
|
787
|
+
name: child16.localName,
|
|
788
|
+
value: child16.getAttribute("val") ?? ""
|
|
789
789
|
}))
|
|
790
790
|
};
|
|
791
791
|
const fallback = kind === "system" ? element.getAttribute("lastClr") : null;
|
|
@@ -922,9 +922,9 @@ function parseRun(run) {
|
|
|
922
922
|
}
|
|
923
923
|
function parseParagraph(paragraph) {
|
|
924
924
|
const runs = [];
|
|
925
|
-
for (const
|
|
926
|
-
if (
|
|
927
|
-
runs.push(parseRun(
|
|
925
|
+
for (const child16 of elements(paragraph))
|
|
926
|
+
if (child16.namespaceURI === NS.a && ["r", "fld", "br"].includes(child16.localName))
|
|
927
|
+
runs.push(parseRun(child16));
|
|
928
928
|
const properties = first(paragraph, "pPr", NS.a);
|
|
929
929
|
const align = properties?.getAttribute("algn");
|
|
930
930
|
const defaults = parseProperties(first(properties, "defRPr", NS.a));
|
|
@@ -2346,13 +2346,13 @@ var SHARED_RELATIONSHIPS = /* @__PURE__ */ new Set([
|
|
|
2346
2346
|
var RAW_XML_KEYS = /* @__PURE__ */ new Set(["rawXml", "rawTiming", "inkPartRawXml", "rawMediaReferenceXml"]);
|
|
2347
2347
|
function remapPartPaths(value, copies) {
|
|
2348
2348
|
if (!value || typeof value !== "object") return;
|
|
2349
|
-
for (const [key2,
|
|
2349
|
+
for (const [key2, child16] of Object.entries(value)) {
|
|
2350
2350
|
if (RAW_XML_KEYS.has(key2)) continue;
|
|
2351
|
-
if (typeof
|
|
2352
|
-
const destination = copies.get(
|
|
2351
|
+
if (typeof child16 === "string" && /path$/iu.test(key2)) {
|
|
2352
|
+
const destination = copies.get(child16);
|
|
2353
2353
|
if (destination) value[key2] = destination;
|
|
2354
2354
|
} else {
|
|
2355
|
-
remapPartPaths(
|
|
2355
|
+
remapPartPaths(child16, copies);
|
|
2356
2356
|
}
|
|
2357
2357
|
}
|
|
2358
2358
|
}
|
|
@@ -3047,8 +3047,8 @@ function invertOffsetAxisEmu(relativeEmu, chOffEmu, chExtEmu, extEmu) {
|
|
|
3047
3047
|
}
|
|
3048
3048
|
return chOffEmu + Math.round(relativeEmu * chExtEmu / extEmu);
|
|
3049
3049
|
}
|
|
3050
|
-
function resolveRotatedChildResizeOffset(
|
|
3051
|
-
if (!
|
|
3050
|
+
function resolveRotatedChildResizeOffset(child16, owner, emuPerPx) {
|
|
3051
|
+
if (!child16.rotation || child16.xEmu === void 0 || child16.yEmu === void 0 || child16.widthEmu === void 0 || child16.heightEmu === void 0) {
|
|
3052
3052
|
return void 0;
|
|
3053
3053
|
}
|
|
3054
3054
|
const extCx = owner.widthEmu ?? 0;
|
|
@@ -3057,16 +3057,16 @@ function resolveRotatedChildResizeOffset(child14, owner, emuPerPx) {
|
|
|
3057
3057
|
const chOffYEmu = owner.chOffYEmu;
|
|
3058
3058
|
const chExtWidthEmu = owner.chExtWidthEmu;
|
|
3059
3059
|
const chExtHeightEmu = owner.chExtHeightEmu;
|
|
3060
|
-
const oldRenderXEmu = forwardOffsetAxis(
|
|
3061
|
-
const oldRenderYEmu = forwardOffsetAxis(
|
|
3062
|
-
const oldRenderWidthEmu = forwardExtentAxis(
|
|
3063
|
-
const oldRenderHeightEmu = forwardExtentAxis(
|
|
3064
|
-
const naiveRenderXEmu = Math.round(
|
|
3065
|
-
const naiveRenderYEmu = Math.round(
|
|
3066
|
-
const newRenderWidthEmu = Math.round(
|
|
3067
|
-
const newRenderHeightEmu = Math.round(
|
|
3060
|
+
const oldRenderXEmu = forwardOffsetAxis(child16.xEmu, chOffXEmu, chExtWidthEmu, extCx);
|
|
3061
|
+
const oldRenderYEmu = forwardOffsetAxis(child16.yEmu, chOffYEmu, chExtHeightEmu, extCy);
|
|
3062
|
+
const oldRenderWidthEmu = forwardExtentAxis(child16.widthEmu, chExtWidthEmu, extCx);
|
|
3063
|
+
const oldRenderHeightEmu = forwardExtentAxis(child16.heightEmu, chExtHeightEmu, extCy);
|
|
3064
|
+
const naiveRenderXEmu = Math.round(child16.x * emuPerPx);
|
|
3065
|
+
const naiveRenderYEmu = Math.round(child16.y * emuPerPx);
|
|
3066
|
+
const newRenderWidthEmu = Math.round(child16.width * emuPerPx);
|
|
3067
|
+
const newRenderHeightEmu = Math.round(child16.height * emuPerPx);
|
|
3068
3068
|
const rotatedResize = resolveRotatedResizeOffset({
|
|
3069
|
-
rotationDeg:
|
|
3069
|
+
rotationDeg: child16.rotation,
|
|
3070
3070
|
oldOffXEmu: oldRenderXEmu,
|
|
3071
3071
|
oldOffYEmu: oldRenderYEmu,
|
|
3072
3072
|
oldExtWidthEmu: oldRenderWidthEmu,
|
|
@@ -3089,7 +3089,7 @@ function resolveRotatedChildResizeOffset(child14, owner, emuPerPx) {
|
|
|
3089
3089
|
function hasCapturedChildSpace(group) {
|
|
3090
3090
|
return group.chOffXEmu !== void 0 && group.chOffYEmu !== void 0 && group.chExtWidthEmu !== void 0 && group.chExtHeightEmu !== void 0 && group.chExtWidthEmu > 0 && group.chExtHeightEmu > 0;
|
|
3091
3091
|
}
|
|
3092
|
-
function isGroupChildUnchanged(
|
|
3092
|
+
function isGroupChildUnchanged(child16, owner, emuPerPx) {
|
|
3093
3093
|
if (!hasCapturedChildSpace(owner)) {
|
|
3094
3094
|
return false;
|
|
3095
3095
|
}
|
|
@@ -3104,11 +3104,11 @@ function isGroupChildUnchanged(child14, owner, emuPerPx) {
|
|
|
3104
3104
|
if (!Number.isFinite(scaleX) || !Number.isFinite(scaleY) || scaleX <= 0 || scaleY <= 0) {
|
|
3105
3105
|
return false;
|
|
3106
3106
|
}
|
|
3107
|
-
const childSpaceX = chX +
|
|
3108
|
-
const childSpaceY = chY +
|
|
3109
|
-
const childSpaceWidth =
|
|
3110
|
-
const childSpaceHeight =
|
|
3111
|
-
return isXfrmEmuUnchanged(childSpaceX,
|
|
3107
|
+
const childSpaceX = chX + child16.x / scaleX;
|
|
3108
|
+
const childSpaceY = chY + child16.y / scaleY;
|
|
3109
|
+
const childSpaceWidth = child16.width / scaleX;
|
|
3110
|
+
const childSpaceHeight = child16.height / scaleY;
|
|
3111
|
+
return isXfrmEmuUnchanged(childSpaceX, child16.xEmu, emuPerPx) && isXfrmEmuUnchanged(childSpaceY, child16.yEmu, emuPerPx) && isXfrmEmuUnchanged(childSpaceWidth, child16.widthEmu, emuPerPx) && isXfrmEmuUnchanged(childSpaceHeight, child16.heightEmu, emuPerPx);
|
|
3112
3112
|
}
|
|
3113
3113
|
function invertOffsetAxis(relativePx, chOffEmu, chExtEmu, extEmu, emuPerPx) {
|
|
3114
3114
|
const relativeEmu = Math.round(relativePx * emuPerPx);
|
|
@@ -3124,42 +3124,42 @@ function invertExtentAxis(px, chExtEmu, extEmu, emuPerPx) {
|
|
|
3124
3124
|
}
|
|
3125
3125
|
return Math.round(emu2 * chExtEmu / extEmu);
|
|
3126
3126
|
}
|
|
3127
|
-
function invertChildIntoGroupSpace(
|
|
3127
|
+
function invertChildIntoGroupSpace(child16, owner, emuPerPx) {
|
|
3128
3128
|
if (!hasCapturedChildSpace(owner)) {
|
|
3129
3129
|
return void 0;
|
|
3130
3130
|
}
|
|
3131
|
-
if (
|
|
3131
|
+
if (child16.xEmu !== void 0 && child16.yEmu !== void 0 && child16.widthEmu !== void 0 && child16.heightEmu !== void 0 && isGroupChildUnchanged(child16, owner, emuPerPx)) {
|
|
3132
3132
|
return {
|
|
3133
|
-
xEmu:
|
|
3134
|
-
yEmu:
|
|
3135
|
-
widthEmu:
|
|
3136
|
-
heightEmu:
|
|
3133
|
+
xEmu: child16.xEmu,
|
|
3134
|
+
yEmu: child16.yEmu,
|
|
3135
|
+
widthEmu: child16.widthEmu,
|
|
3136
|
+
heightEmu: child16.heightEmu
|
|
3137
3137
|
};
|
|
3138
3138
|
}
|
|
3139
3139
|
const extCx = owner.widthEmu ?? 0;
|
|
3140
3140
|
const extCy = owner.heightEmu ?? 0;
|
|
3141
|
-
const widthEmu = invertExtentAxis(
|
|
3142
|
-
const heightEmu = invertExtentAxis(
|
|
3143
|
-
const rotatedResize = resolveRotatedChildResizeOffset(
|
|
3141
|
+
const widthEmu = invertExtentAxis(child16.width, owner.chExtWidthEmu, extCx, emuPerPx);
|
|
3142
|
+
const heightEmu = invertExtentAxis(child16.height, owner.chExtHeightEmu, extCy, emuPerPx);
|
|
3143
|
+
const rotatedResize = resolveRotatedChildResizeOffset(child16, owner, emuPerPx);
|
|
3144
3144
|
return {
|
|
3145
|
-
xEmu: rotatedResize ? rotatedResize.xEmu : invertOffsetAxis(
|
|
3146
|
-
yEmu: rotatedResize ? rotatedResize.yEmu : invertOffsetAxis(
|
|
3145
|
+
xEmu: rotatedResize ? rotatedResize.xEmu : invertOffsetAxis(child16.x, owner.chOffXEmu, owner.chExtWidthEmu, extCx, emuPerPx),
|
|
3146
|
+
yEmu: rotatedResize ? rotatedResize.yEmu : invertOffsetAxis(child16.y, owner.chOffYEmu, owner.chExtHeightEmu, extCy, emuPerPx),
|
|
3147
3147
|
widthEmu,
|
|
3148
3148
|
heightEmu
|
|
3149
3149
|
};
|
|
3150
3150
|
}
|
|
3151
3151
|
|
|
3152
3152
|
// pptx/core/core/runtime/group-tight-rewrap.ts
|
|
3153
|
-
function computeTightChildBox(
|
|
3153
|
+
function computeTightChildBox(children6) {
|
|
3154
3154
|
let minX = Infinity;
|
|
3155
3155
|
let minY = Infinity;
|
|
3156
3156
|
let maxX = -Infinity;
|
|
3157
3157
|
let maxY = -Infinity;
|
|
3158
|
-
for (const
|
|
3159
|
-
minX = Math.min(minX,
|
|
3160
|
-
minY = Math.min(minY,
|
|
3161
|
-
maxX = Math.max(maxX,
|
|
3162
|
-
maxY = Math.max(maxY,
|
|
3158
|
+
for (const child16 of children6) {
|
|
3159
|
+
minX = Math.min(minX, child16.xEmu);
|
|
3160
|
+
minY = Math.min(minY, child16.yEmu);
|
|
3161
|
+
maxX = Math.max(maxX, child16.xEmu + child16.widthEmu);
|
|
3162
|
+
maxY = Math.max(maxY, child16.yEmu + child16.heightEmu);
|
|
3163
3163
|
}
|
|
3164
3164
|
return {
|
|
3165
3165
|
chOffXEmu: minX,
|
|
@@ -3168,9 +3168,9 @@ function computeTightChildBox(children5) {
|
|
|
3168
3168
|
chExtHeightEmu: maxY - minY
|
|
3169
3169
|
};
|
|
3170
3170
|
}
|
|
3171
|
-
function resolveGroupChildBoxEmu(
|
|
3172
|
-
if (
|
|
3173
|
-
const nestedRewrap = resolveGroupTightRewrap(
|
|
3171
|
+
function resolveGroupChildBoxEmu(child16, owner, emuPerPx) {
|
|
3172
|
+
if (child16.type === "group") {
|
|
3173
|
+
const nestedRewrap = resolveGroupTightRewrap(child16, emuPerPx);
|
|
3174
3174
|
if (nestedRewrap) {
|
|
3175
3175
|
return {
|
|
3176
3176
|
xEmu: nestedRewrap.offXEmu,
|
|
@@ -3180,7 +3180,7 @@ function resolveGroupChildBoxEmu(child14, owner, emuPerPx) {
|
|
|
3180
3180
|
};
|
|
3181
3181
|
}
|
|
3182
3182
|
}
|
|
3183
|
-
return invertChildIntoGroupSpace(
|
|
3183
|
+
return invertChildIntoGroupSpace(child16, owner, emuPerPx);
|
|
3184
3184
|
}
|
|
3185
3185
|
function resolveGroupTightRewrap(group, emuPerPx) {
|
|
3186
3186
|
if (!hasCapturedChildSpace(group)) {
|
|
@@ -3188,9 +3188,9 @@ function resolveGroupTightRewrap(group, emuPerPx) {
|
|
|
3188
3188
|
}
|
|
3189
3189
|
const childResults = [];
|
|
3190
3190
|
let anyChanged = false;
|
|
3191
|
-
for (const
|
|
3192
|
-
const nestedRewrap =
|
|
3193
|
-
if (nestedRewrap !== void 0 || !isGroupChildUnchanged(
|
|
3191
|
+
for (const child16 of group.children) {
|
|
3192
|
+
const nestedRewrap = child16.type === "group" ? resolveGroupTightRewrap(child16, emuPerPx) : void 0;
|
|
3193
|
+
if (nestedRewrap !== void 0 || !isGroupChildUnchanged(child16, group, emuPerPx)) {
|
|
3194
3194
|
anyChanged = true;
|
|
3195
3195
|
}
|
|
3196
3196
|
const emu2 = nestedRewrap ? {
|
|
@@ -3198,7 +3198,7 @@ function resolveGroupTightRewrap(group, emuPerPx) {
|
|
|
3198
3198
|
yEmu: nestedRewrap.offYEmu,
|
|
3199
3199
|
widthEmu: nestedRewrap.extWidthEmu,
|
|
3200
3200
|
heightEmu: nestedRewrap.extHeightEmu
|
|
3201
|
-
} : invertChildIntoGroupSpace(
|
|
3201
|
+
} : invertChildIntoGroupSpace(child16, group, emuPerPx);
|
|
3202
3202
|
if (emu2) {
|
|
3203
3203
|
childResults.push(emu2);
|
|
3204
3204
|
}
|
|
@@ -3828,9 +3828,9 @@ function drawingChild(node, requestedName) {
|
|
|
3828
3828
|
if (key2.split(":").at(-1) !== requestedName) {
|
|
3829
3829
|
continue;
|
|
3830
3830
|
}
|
|
3831
|
-
const
|
|
3832
|
-
if (
|
|
3833
|
-
return
|
|
3831
|
+
const child16 = Array.isArray(value) ? value[0] : value;
|
|
3832
|
+
if (child16 && typeof child16 === "object" && !Array.isArray(child16)) {
|
|
3833
|
+
return child16;
|
|
3834
3834
|
}
|
|
3835
3835
|
}
|
|
3836
3836
|
return void 0;
|
|
@@ -3860,11 +3860,11 @@ function hasEmptyDrawingChild(node, requestedName) {
|
|
|
3860
3860
|
if (key2.split(":").at(-1) !== requestedName) {
|
|
3861
3861
|
continue;
|
|
3862
3862
|
}
|
|
3863
|
-
const
|
|
3864
|
-
if (
|
|
3863
|
+
const child16 = Array.isArray(value) ? value[0] : value;
|
|
3864
|
+
if (child16 === "" || child16 === void 0) {
|
|
3865
3865
|
return true;
|
|
3866
3866
|
}
|
|
3867
|
-
return typeof
|
|
3867
|
+
return typeof child16 === "object" && !Array.isArray(child16) && Object.keys(child16).every((childKey2) => childKey2.startsWith(ATTRIBUTE_PREFIX));
|
|
3868
3868
|
}
|
|
3869
3869
|
return false;
|
|
3870
3870
|
}
|
|
@@ -3878,7 +3878,7 @@ function drawingChildren(node, requestedName) {
|
|
|
3878
3878
|
}
|
|
3879
3879
|
const values = Array.isArray(value) ? value : [value];
|
|
3880
3880
|
return values.filter(
|
|
3881
|
-
(
|
|
3881
|
+
(child16) => Boolean(child16) && typeof child16 === "object" && !Array.isArray(child16)
|
|
3882
3882
|
);
|
|
3883
3883
|
}
|
|
3884
3884
|
return [];
|
|
@@ -3888,12 +3888,12 @@ function qualifiedLocalName(key2) {
|
|
|
3888
3888
|
}
|
|
3889
3889
|
function mergeDrawingFillXml(original, generated, modeledChildren, childOrder2) {
|
|
3890
3890
|
const attributes = [];
|
|
3891
|
-
const
|
|
3891
|
+
const children6 = /* @__PURE__ */ new Map();
|
|
3892
3892
|
for (const [key2, value] of Object.entries(original ?? {})) {
|
|
3893
3893
|
if (key2.startsWith(ATTRIBUTE_PREFIX)) {
|
|
3894
3894
|
attributes.push([key2, value]);
|
|
3895
3895
|
} else if (!modeledChildren.includes(qualifiedLocalName(key2))) {
|
|
3896
|
-
|
|
3896
|
+
children6.set(key2, value);
|
|
3897
3897
|
}
|
|
3898
3898
|
}
|
|
3899
3899
|
for (const [key2, value] of Object.entries(generated)) {
|
|
@@ -3904,7 +3904,7 @@ function mergeDrawingFillXml(original, generated, modeledChildren, childOrder2)
|
|
|
3904
3904
|
}
|
|
3905
3905
|
attributes.push([key2, value]);
|
|
3906
3906
|
} else {
|
|
3907
|
-
|
|
3907
|
+
children6.set(key2, value);
|
|
3908
3908
|
}
|
|
3909
3909
|
}
|
|
3910
3910
|
const result = {};
|
|
@@ -3912,14 +3912,14 @@ function mergeDrawingFillXml(original, generated, modeledChildren, childOrder2)
|
|
|
3912
3912
|
result[key2] = value;
|
|
3913
3913
|
}
|
|
3914
3914
|
for (const name of childOrder2) {
|
|
3915
|
-
for (const [key2, value] of
|
|
3915
|
+
for (const [key2, value] of children6) {
|
|
3916
3916
|
if (qualifiedLocalName(key2) === name) {
|
|
3917
3917
|
result[key2] = value;
|
|
3918
|
-
|
|
3918
|
+
children6.delete(key2);
|
|
3919
3919
|
}
|
|
3920
3920
|
}
|
|
3921
3921
|
}
|
|
3922
|
-
for (const [key2, value] of
|
|
3922
|
+
for (const [key2, value] of children6) {
|
|
3923
3923
|
result[key2] = value;
|
|
3924
3924
|
}
|
|
3925
3925
|
return result;
|
|
@@ -5981,9 +5981,9 @@ var PptxShapeStyleExtractor = class {
|
|
|
5981
5981
|
"a:prstClr"
|
|
5982
5982
|
];
|
|
5983
5983
|
for (const key2 of keys) {
|
|
5984
|
-
const
|
|
5985
|
-
if (
|
|
5986
|
-
return { [key2]:
|
|
5984
|
+
const child16 = refNode[key2];
|
|
5985
|
+
if (child16 !== void 0) {
|
|
5986
|
+
return { [key2]: child16 };
|
|
5987
5987
|
}
|
|
5988
5988
|
}
|
|
5989
5989
|
return void 0;
|
|
@@ -6126,36 +6126,36 @@ function parseBorderSide(side) {
|
|
|
6126
6126
|
}
|
|
6127
6127
|
const ln = typeof side["a:ln"] === "object" ? side["a:ln"] : {};
|
|
6128
6128
|
const border = {};
|
|
6129
|
-
let
|
|
6129
|
+
let has2 = false;
|
|
6130
6130
|
if (ln["a:noFill"] !== void 0) {
|
|
6131
6131
|
border.noFill = true;
|
|
6132
|
-
|
|
6132
|
+
has2 = true;
|
|
6133
6133
|
}
|
|
6134
6134
|
const widthEmu = parseInt(String(ln["@_w"] || "0"), 10);
|
|
6135
6135
|
if (widthEmu > 0) {
|
|
6136
6136
|
border.width = Math.max(1, Math.round(widthEmu / EMU_PER_PIXEL2));
|
|
6137
|
-
|
|
6137
|
+
has2 = true;
|
|
6138
6138
|
}
|
|
6139
6139
|
const prstDash = ln["a:prstDash"];
|
|
6140
6140
|
const dashVal = prstDash ? String(prstDash["@_val"] || "").trim() : "";
|
|
6141
6141
|
if (dashVal) {
|
|
6142
6142
|
border.dash = dashVal;
|
|
6143
|
-
|
|
6143
|
+
has2 = true;
|
|
6144
6144
|
}
|
|
6145
6145
|
const solidFill2 = ln["a:solidFill"];
|
|
6146
6146
|
const fill = parseSolidFillStyle(solidFill2);
|
|
6147
6147
|
if (fill) {
|
|
6148
6148
|
border.fill = fill;
|
|
6149
|
-
|
|
6149
|
+
has2 = true;
|
|
6150
6150
|
} else {
|
|
6151
6151
|
const srgb = solidFill2?.["a:srgbClr"];
|
|
6152
6152
|
const hex3 = srgb ? String(srgb["@_val"] || "").trim() : "";
|
|
6153
6153
|
if (hex3) {
|
|
6154
6154
|
border.color = hex3.startsWith("#") ? hex3 : `#${hex3}`;
|
|
6155
|
-
|
|
6155
|
+
has2 = true;
|
|
6156
6156
|
}
|
|
6157
6157
|
}
|
|
6158
|
-
return
|
|
6158
|
+
return has2 ? border : void 0;
|
|
6159
6159
|
}
|
|
6160
6160
|
function parseTableStyleBorders(tcStyle) {
|
|
6161
6161
|
const tcBdr = tcStyle?.["a:tcBdr"];
|
|
@@ -6163,16 +6163,16 @@ function parseTableStyleBorders(tcStyle) {
|
|
|
6163
6163
|
return void 0;
|
|
6164
6164
|
}
|
|
6165
6165
|
const result = {};
|
|
6166
|
-
let
|
|
6166
|
+
let has2 = false;
|
|
6167
6167
|
for (const name of BORDER_SIDES) {
|
|
6168
6168
|
const node = tcBdr[`a:${name}`] ?? (name === "tr2bl" ? tcBdr["a:bl2tr"] : void 0);
|
|
6169
6169
|
const border = parseBorderSide(node);
|
|
6170
6170
|
if (border) {
|
|
6171
6171
|
result[name] = border;
|
|
6172
|
-
|
|
6172
|
+
has2 = true;
|
|
6173
6173
|
}
|
|
6174
6174
|
}
|
|
6175
|
-
return
|
|
6175
|
+
return has2 ? result : void 0;
|
|
6176
6176
|
}
|
|
6177
6177
|
function parseTableStyleSectionCell3D(tcStyle) {
|
|
6178
6178
|
const cell3DNode = tcStyle?.["a:cell3D"];
|
|
@@ -6799,7 +6799,7 @@ function nextTag(xml, from) {
|
|
|
6799
6799
|
return null;
|
|
6800
6800
|
}
|
|
6801
6801
|
function scanDirectChildren(inner) {
|
|
6802
|
-
const
|
|
6802
|
+
const children6 = [];
|
|
6803
6803
|
let depth = 0;
|
|
6804
6804
|
let open = null;
|
|
6805
6805
|
let cursor = 0;
|
|
@@ -6808,12 +6808,12 @@ function scanDirectChildren(inner) {
|
|
|
6808
6808
|
if (tag.closing) {
|
|
6809
6809
|
depth = Math.max(0, depth - 1);
|
|
6810
6810
|
if (depth === 0 && open) {
|
|
6811
|
-
|
|
6811
|
+
children6.push({ tag: open.tag, inner: inner.slice(open.innerStart, tag.start) });
|
|
6812
6812
|
open = null;
|
|
6813
6813
|
}
|
|
6814
6814
|
} else if (tag.selfClosing) {
|
|
6815
6815
|
if (depth === 0) {
|
|
6816
|
-
|
|
6816
|
+
children6.push({ tag: tag.name, inner: "" });
|
|
6817
6817
|
}
|
|
6818
6818
|
} else {
|
|
6819
6819
|
if (depth === 0) {
|
|
@@ -6824,7 +6824,7 @@ function scanDirectChildren(inner) {
|
|
|
6824
6824
|
cursor = tag.end;
|
|
6825
6825
|
tag = nextTag(inner, cursor);
|
|
6826
6826
|
}
|
|
6827
|
-
return
|
|
6827
|
+
return children6;
|
|
6828
6828
|
}
|
|
6829
6829
|
function extractElementInnerXml(xml, wanted) {
|
|
6830
6830
|
const fragments = [];
|
|
@@ -6936,7 +6936,7 @@ function annotateParagraphSiblingOrder(xml, parsed) {
|
|
|
6936
6936
|
if (!MIXED_CONTENT_MARKERS.some((marker) => xml.includes(marker))) {
|
|
6937
6937
|
return;
|
|
6938
6938
|
}
|
|
6939
|
-
const orders = extractElementInnerXml(xml, "p").map((inner) => scanDirectChildren(inner).map((
|
|
6939
|
+
const orders = extractElementInnerXml(xml, "p").map((inner) => scanDirectChildren(inner).map((child16) => child16.tag)).filter((order) => order.length > 0);
|
|
6940
6940
|
if (orders.length === 0) {
|
|
6941
6941
|
return;
|
|
6942
6942
|
}
|
|
@@ -7356,9 +7356,9 @@ var PptxTableDataParser = class {
|
|
|
7356
7356
|
return parsed;
|
|
7357
7357
|
}
|
|
7358
7358
|
}
|
|
7359
|
-
const
|
|
7360
|
-
if (
|
|
7361
|
-
const childVal = parseInt(String(
|
|
7359
|
+
const child16 = tableProperties[`a:${key2}`];
|
|
7360
|
+
if (child16) {
|
|
7361
|
+
const childVal = parseInt(String(child16["@_val"] ?? ""), 10);
|
|
7362
7362
|
if (Number.isFinite(childVal) && childVal > 0) {
|
|
7363
7363
|
return childVal;
|
|
7364
7364
|
}
|
|
@@ -7568,8 +7568,8 @@ function scanForVmlImageDataRelationshipId(node, depth) {
|
|
|
7568
7568
|
if (typeof value !== "object") {
|
|
7569
7569
|
continue;
|
|
7570
7570
|
}
|
|
7571
|
-
for (const
|
|
7572
|
-
const relId = scanForVmlImageDataRelationshipId(
|
|
7571
|
+
for (const child16 of ensureArrayLike2(value)) {
|
|
7572
|
+
const relId = scanForVmlImageDataRelationshipId(child16, depth + 1);
|
|
7573
7573
|
if (relId) {
|
|
7574
7574
|
return relId;
|
|
7575
7575
|
}
|
|
@@ -9222,9 +9222,9 @@ function collectCnvPrNodes(node, results, ensureArray12) {
|
|
|
9222
9222
|
}
|
|
9223
9223
|
const shapeLists = ["p:sp", "p:pic", "p:cxnSp", "p:graphicFrame", "p:grpSp", "p:contentPart"];
|
|
9224
9224
|
for (const listKey of shapeLists) {
|
|
9225
|
-
const
|
|
9226
|
-
for (const
|
|
9227
|
-
collectCnvPrNodes(
|
|
9225
|
+
const children6 = ensureArray12(node[listKey]);
|
|
9226
|
+
for (const child16 of children6) {
|
|
9227
|
+
collectCnvPrNodes(child16, results, ensureArray12);
|
|
9228
9228
|
}
|
|
9229
9229
|
}
|
|
9230
9230
|
for (const alternate of ensureArray12(node["mc:AlternateContent"])) {
|
|
@@ -12873,10 +12873,10 @@ function assertAfterAnimationClearSupported(effectCTn) {
|
|
|
12873
12873
|
if (!isXmlObject3(sub)) return;
|
|
12874
12874
|
const countAfterFlags = (value) => {
|
|
12875
12875
|
if (Array.isArray(value))
|
|
12876
|
-
return value.reduce((count,
|
|
12876
|
+
return value.reduce((count, child16) => count + countAfterFlags(child16), 0);
|
|
12877
12877
|
if (!isXmlObject3(value)) return 0;
|
|
12878
12878
|
return Object.entries(value).reduce(
|
|
12879
|
-
(count, [key2,
|
|
12879
|
+
(count, [key2, child16]) => count + (key2 === "@_afterEffect" && ["1", "true"].includes(String(child16)) ? 1 : countAfterFlags(child16)),
|
|
12880
12880
|
0
|
|
12881
12881
|
);
|
|
12882
12882
|
};
|
|
@@ -13333,8 +13333,8 @@ function preservedP14ChildKey(node, transitionType, getXmlLocalName) {
|
|
|
13333
13333
|
if (localName15 !== "prism") {
|
|
13334
13334
|
continue;
|
|
13335
13335
|
}
|
|
13336
|
-
const
|
|
13337
|
-
if (prismFamilyTypeOfNode(
|
|
13336
|
+
const child16 = value && typeof value === "object" && !Array.isArray(value) ? value : void 0;
|
|
13337
|
+
if (prismFamilyTypeOfNode(child16) === prismFamilyTypeForFlags(prismFlags)) {
|
|
13338
13338
|
return key2;
|
|
13339
13339
|
}
|
|
13340
13340
|
continue;
|
|
@@ -14404,17 +14404,17 @@ function collectMediaNodes(node, animations) {
|
|
|
14404
14404
|
const childTnList = cTn?.["p:childTnLst"];
|
|
14405
14405
|
if (childTnList) {
|
|
14406
14406
|
for (const container of ["p:par", "p:seq", "p:excl"]) {
|
|
14407
|
-
const
|
|
14408
|
-
for (const
|
|
14409
|
-
collectMediaNodes(
|
|
14407
|
+
const children6 = ensureArray3(childTnList[container]);
|
|
14408
|
+
for (const child16 of children6) {
|
|
14409
|
+
collectMediaNodes(child16, animations);
|
|
14410
14410
|
}
|
|
14411
14411
|
}
|
|
14412
14412
|
collectMediaNodes(childTnList, animations);
|
|
14413
14413
|
}
|
|
14414
14414
|
for (const container of ["p:par", "p:seq", "p:excl", "p:tnLst"]) {
|
|
14415
|
-
const
|
|
14416
|
-
for (const
|
|
14417
|
-
collectMediaNodes(
|
|
14415
|
+
const children6 = ensureArray3(node[container]);
|
|
14416
|
+
for (const child16 of children6) {
|
|
14417
|
+
collectMediaNodes(child16, animations);
|
|
14418
14418
|
}
|
|
14419
14419
|
}
|
|
14420
14420
|
}
|
|
@@ -14700,9 +14700,9 @@ var neutralTiming = (node) => [
|
|
|
14700
14700
|
].every((key2) => node[key2] === void 0) && (node["@_repeatCount"] === void 0 || String(node["@_repeatCount"]) === "1000") && (node["@_autoRev"] === void 0 || ["0", "false"].includes(String(node["@_autoRev"]))) && (node["@_spd"] === void 0 || String(node["@_spd"]) === "100000") && (node["@_accel"] === void 0 || String(node["@_accel"]) === "0") && (node["@_decel"] === void 0 || String(node["@_decel"]) === "0");
|
|
14701
14701
|
function hasNativeVisibilitySet(node) {
|
|
14702
14702
|
if (node["@_presetClass"] !== "entr" || String(node["@_presetID"]) !== "0") return false;
|
|
14703
|
-
const
|
|
14704
|
-
if (!isXmlObject3(
|
|
14705
|
-
return ensureArray3(
|
|
14703
|
+
const children6 = node["p:childTnLst"];
|
|
14704
|
+
if (!isXmlObject3(children6)) return false;
|
|
14705
|
+
return ensureArray3(children6["p:set"]).some((set) => {
|
|
14706
14706
|
const common = set["p:cBhvr"];
|
|
14707
14707
|
const list = isXmlObject3(common) ? common["p:attrNameLst"] : void 0;
|
|
14708
14708
|
const names = isXmlObject3(list) ? list["p:attrName"] : void 0;
|
|
@@ -14730,10 +14730,10 @@ function unsupportedVisibilityContainerTiming(node) {
|
|
|
14730
14730
|
function extractVisibilitySetTiming(node) {
|
|
14731
14731
|
if (node["@_presetClass"] !== "entr" || String(node["@_presetID"]) !== "0" || String(node["@_presetSubtype"] ?? "0") !== "0" || node["@_dur"] !== void 0 || node["@_fill"] !== "hold" || !neutralTiming(node) || !simpleStarts(node))
|
|
14732
14732
|
return void 0;
|
|
14733
|
-
const
|
|
14734
|
-
if (!isXmlObject3(
|
|
14733
|
+
const children6 = node["p:childTnLst"];
|
|
14734
|
+
if (!isXmlObject3(children6) || Object.keys(children6).length !== 1 || !children6["p:set"])
|
|
14735
14735
|
return void 0;
|
|
14736
|
-
const sets = ensureArray3(
|
|
14736
|
+
const sets = ensureArray3(children6["p:set"]);
|
|
14737
14737
|
if (sets.length !== 1) return void 0;
|
|
14738
14738
|
if (Object.keys(sets[0]).some((key2) => !["p:cBhvr", "p:to"].includes(key2))) return void 0;
|
|
14739
14739
|
const to = sets[0]["p:to"];
|
|
@@ -14747,10 +14747,10 @@ function extractVisibilitySetTiming(node) {
|
|
|
14747
14747
|
const target = common["p:tgtEl"];
|
|
14748
14748
|
if (!isXmlObject3(target) || Object.keys(target).length !== 1 || !isXmlObject3(target["p:spTgt"]) || Object.keys(target["p:spTgt"]).some((key2) => key2 !== "@_spid") || !/^\d+$/u.test(String(target["p:spTgt"]["@_spid"])))
|
|
14749
14749
|
return void 0;
|
|
14750
|
-
const
|
|
14751
|
-
if (!isXmlObject3(
|
|
14750
|
+
const child16 = common["p:cTn"];
|
|
14751
|
+
if (!isXmlObject3(child16) || !neutralTiming(child16) || !simpleStarts(child16) || String(child16["@_dur"]) !== "1" || child16["@_fill"] !== "hold")
|
|
14752
14752
|
return void 0;
|
|
14753
|
-
const behavior = extractBehaviors(
|
|
14753
|
+
const behavior = extractBehaviors(children6)?.[0];
|
|
14754
14754
|
if (!behavior || behavior.kind !== "set" || behavior.value !== "visible" || behavior.attrNames.length !== 1 || behavior.attrNames[0] !== "style.visibility" || behavior.timing.unsupportedSetTiming)
|
|
14755
14755
|
return void 0;
|
|
14756
14756
|
try {
|
|
@@ -15443,27 +15443,27 @@ function rawTransitionHasExplicitCutChild(raw, localName15) {
|
|
|
15443
15443
|
return Object.keys(raw).some((key2) => !key2.startsWith("@_") && localName15(key2) === "cut");
|
|
15444
15444
|
}
|
|
15445
15445
|
function buildStandardTransitionChild(transition) {
|
|
15446
|
-
const
|
|
15446
|
+
const child16 = {};
|
|
15447
15447
|
if (DIR_IS_ORIENTATION_TYPE.has(transition.type) && transition.orient) {
|
|
15448
|
-
|
|
15448
|
+
child16["@_dir"] = transition.orient;
|
|
15449
15449
|
} else {
|
|
15450
15450
|
if (transition.direction) {
|
|
15451
|
-
|
|
15451
|
+
child16["@_dir"] = transition.direction;
|
|
15452
15452
|
}
|
|
15453
15453
|
if (transition.orient) {
|
|
15454
|
-
|
|
15454
|
+
child16["@_orient"] = transition.orient;
|
|
15455
15455
|
}
|
|
15456
15456
|
}
|
|
15457
15457
|
if (validUnsignedInteger(transition.spokes, 1)) {
|
|
15458
|
-
|
|
15458
|
+
child16["@_spokes"] = String(transition.spokes);
|
|
15459
15459
|
}
|
|
15460
15460
|
if (transition.pattern) {
|
|
15461
|
-
|
|
15461
|
+
child16["@_pattern"] = transition.pattern;
|
|
15462
15462
|
}
|
|
15463
15463
|
if (typeof transition.thruBlk === "boolean") {
|
|
15464
|
-
|
|
15464
|
+
child16["@_thruBlk"] = transition.thruBlk ? "1" : "0";
|
|
15465
15465
|
}
|
|
15466
|
-
return
|
|
15466
|
+
return child16;
|
|
15467
15467
|
}
|
|
15468
15468
|
function applyTransitionAttributes(node, transition) {
|
|
15469
15469
|
if (transition.speed && SPEEDS.has(transition.speed)) {
|
|
@@ -15812,7 +15812,7 @@ var PptxSlideTransitionService = class {
|
|
|
15812
15812
|
const isExtensionType = isP14Type || isP15Type || isMorphType;
|
|
15813
15813
|
if (isP14Type) {
|
|
15814
15814
|
if (!p14ChildKey) {
|
|
15815
|
-
const
|
|
15815
|
+
const child16 = buildP14DirectChild(
|
|
15816
15816
|
transitionType,
|
|
15817
15817
|
{
|
|
15818
15818
|
direction: transition.direction,
|
|
@@ -15822,17 +15822,17 @@ var PptxSlideTransitionService = class {
|
|
|
15822
15822
|
},
|
|
15823
15823
|
extensionContext
|
|
15824
15824
|
);
|
|
15825
|
-
node[
|
|
15825
|
+
node[child16.key] = child16.node;
|
|
15826
15826
|
}
|
|
15827
15827
|
} else if (isP15Type) {
|
|
15828
15828
|
if (!p15ChildKey) {
|
|
15829
|
-
const
|
|
15830
|
-
node[
|
|
15829
|
+
const child16 = buildP15DirectChild(transitionType, extensionContext, transition.direction);
|
|
15830
|
+
node[child16.key] = child16.node;
|
|
15831
15831
|
}
|
|
15832
15832
|
} else if (isMorphType) {
|
|
15833
15833
|
if (!hasDirectMorphChild(node, this.getXmlLocalName)) {
|
|
15834
|
-
const
|
|
15835
|
-
node[
|
|
15834
|
+
const child16 = buildMorphDirectChild(transition.morphOption, extensionContext);
|
|
15835
|
+
node[child16.key] = child16.node;
|
|
15836
15836
|
}
|
|
15837
15837
|
} else if (transitionType === "cut" && transition.rawTransition && !rawTransitionHasExplicitCutChild(transition.rawTransition, this.getXmlLocalName)) ; else {
|
|
15838
15838
|
node[`p:${transitionType}`] = buildStandardTransitionChild(transition);
|
|
@@ -32647,14 +32647,14 @@ var KIND_ORDER = [
|
|
|
32647
32647
|
function isBehaviorKind(value) {
|
|
32648
32648
|
return KIND_ORDER.includes(value ?? "");
|
|
32649
32649
|
}
|
|
32650
|
-
function groupBehaviorChildren(
|
|
32650
|
+
function groupBehaviorChildren(children6) {
|
|
32651
32651
|
const groups = /* @__PURE__ */ new Map();
|
|
32652
|
-
for (const
|
|
32653
|
-
const tag =
|
|
32654
|
-
delete
|
|
32652
|
+
for (const child16 of children6) {
|
|
32653
|
+
const tag = child16["_type"];
|
|
32654
|
+
delete child16["_type"];
|
|
32655
32655
|
const kind = isBehaviorKind(tag) ? tag : "animEffect";
|
|
32656
32656
|
const list = groups.get(kind) ?? [];
|
|
32657
|
-
list.push(
|
|
32657
|
+
list.push(child16);
|
|
32658
32658
|
groups.set(kind, list);
|
|
32659
32659
|
}
|
|
32660
32660
|
const childTnLst = {};
|
|
@@ -32991,9 +32991,9 @@ function resolveOoxmlPresetMapping(token2, defaultSubtypeFor) {
|
|
|
32991
32991
|
const defaultSubtype = presetClass === "emph" ? 0 : defaultSubtypeFor?.(presetClass, presetId) ?? 0;
|
|
32992
32992
|
return { presetClass, presetId, defaultSubtype };
|
|
32993
32993
|
}
|
|
32994
|
-
function buildReverseLookup(presetClass,
|
|
32994
|
+
function buildReverseLookup(presetClass, canonical2) {
|
|
32995
32995
|
const out = {};
|
|
32996
|
-
for (const [id, name] of
|
|
32996
|
+
for (const [id, name] of canonical2) {
|
|
32997
32997
|
out[id] = name;
|
|
32998
32998
|
}
|
|
32999
32999
|
for (const [name, mapping] of Object.entries(PRESET_TO_OOXML)) {
|
|
@@ -33043,17 +33043,17 @@ function buildEntranceExitChildren(anim, presetClass, presetId, presetSubtype, d
|
|
|
33043
33043
|
allocateId
|
|
33044
33044
|
);
|
|
33045
33045
|
if (!real) {
|
|
33046
|
-
const
|
|
33046
|
+
const children6 = [];
|
|
33047
33047
|
if (presetClass === "entr") {
|
|
33048
|
-
|
|
33048
|
+
children6.push(buildVisibilitySet(shapeId, durationMs, true, allocateId));
|
|
33049
33049
|
}
|
|
33050
|
-
|
|
33050
|
+
children6.push(
|
|
33051
33051
|
buildAnimEffectNode(shapeId, durationMs, presetClass === "entr" ? "in" : "out", allocateId)
|
|
33052
33052
|
);
|
|
33053
33053
|
if (presetClass === "exit") {
|
|
33054
|
-
|
|
33054
|
+
children6.push(buildVisibilitySet(shapeId, durationMs, false, allocateId));
|
|
33055
33055
|
}
|
|
33056
|
-
return { children:
|
|
33056
|
+
return { children: children6, presetSubtype, ...curve };
|
|
33057
33057
|
}
|
|
33058
33058
|
const useDefaultCurve = anim.timingCurve === void 0;
|
|
33059
33059
|
return {
|
|
@@ -33415,7 +33415,7 @@ function wrapInInteractiveSequence(effectNodes, triggerShapeId, allocateId) {
|
|
|
33415
33415
|
}
|
|
33416
33416
|
};
|
|
33417
33417
|
}
|
|
33418
|
-
function buildMainSequenceNode(mainSeqId,
|
|
33418
|
+
function buildMainSequenceNode(mainSeqId, children6) {
|
|
33419
33419
|
const node = {
|
|
33420
33420
|
"@_concurrent": "1",
|
|
33421
33421
|
"@_nextAc": "seek",
|
|
@@ -33423,9 +33423,9 @@ function buildMainSequenceNode(mainSeqId, children5) {
|
|
|
33423
33423
|
"@_id": String(mainSeqId),
|
|
33424
33424
|
"@_dur": "indefinite",
|
|
33425
33425
|
"@_nodeType": "mainSeq",
|
|
33426
|
-
...
|
|
33426
|
+
...children6.length > 0 ? {
|
|
33427
33427
|
"p:childTnLst": {
|
|
33428
|
-
"p:par":
|
|
33428
|
+
"p:par": children6.length === 1 ? children6[0] : children6
|
|
33429
33429
|
}
|
|
33430
33430
|
} : {}
|
|
33431
33431
|
},
|
|
@@ -33786,7 +33786,7 @@ function refreshEffectBehaviors(cTn, anim, preset, mapping, shapeId, allocateId)
|
|
|
33786
33786
|
return;
|
|
33787
33787
|
}
|
|
33788
33788
|
if (mapping.presetClass === "emph" && presetChanged) {
|
|
33789
|
-
const
|
|
33789
|
+
const children6 = buildEmphasisBehaviorNodes(
|
|
33790
33790
|
shapeId,
|
|
33791
33791
|
duration,
|
|
33792
33792
|
preset,
|
|
@@ -33794,7 +33794,7 @@ function refreshEffectBehaviors(cTn, anim, preset, mapping, shapeId, allocateId)
|
|
|
33794
33794
|
mapping.presetId,
|
|
33795
33795
|
subtype
|
|
33796
33796
|
);
|
|
33797
|
-
cTn["p:childTnLst"] = groupBehaviorChildren(
|
|
33797
|
+
cTn["p:childTnLst"] = groupBehaviorChildren(children6);
|
|
33798
33798
|
cTn["@_presetSubtype"] = String(subtype);
|
|
33799
33799
|
} else {
|
|
33800
33800
|
cTn["@_presetSubtype"] = String(subtype);
|
|
@@ -34190,7 +34190,7 @@ function capturedPresetNativeAnimation(presetClass, presetId, presetSubtype, dur
|
|
|
34190
34190
|
let parsed = cache.get(key2);
|
|
34191
34191
|
if (parsed === void 0) {
|
|
34192
34192
|
let nextId = 10;
|
|
34193
|
-
const
|
|
34193
|
+
const children6 = buildCapturedBehaviorNodes(captured.nodes, SHAPE_ID, dur, () => nextId++);
|
|
34194
34194
|
const effectCTn = {
|
|
34195
34195
|
"@_id": "5",
|
|
34196
34196
|
"@_presetID": String(presetId),
|
|
@@ -34201,7 +34201,7 @@ function capturedPresetNativeAnimation(presetClass, presetId, presetSubtype, dur
|
|
|
34201
34201
|
...captured.preset.effect?.accel ? { "@_accel": captured.preset.effect.accel } : {},
|
|
34202
34202
|
...captured.preset.effect?.decel ? { "@_decel": captured.preset.effect.decel } : {},
|
|
34203
34203
|
"p:stCondLst": { "p:cond": { "@_delay": "0" } },
|
|
34204
|
-
"p:childTnLst": groupBehaviorChildren(
|
|
34204
|
+
"p:childTnLst": groupBehaviorChildren(children6)
|
|
34205
34205
|
};
|
|
34206
34206
|
const animations = new PptxNativeAnimationService().parseNativeAnimations(
|
|
34207
34207
|
wrapInSlide(effectCTn)
|
|
@@ -34538,22 +34538,22 @@ function collectParsedOmathNodes(root) {
|
|
|
34538
34538
|
return result;
|
|
34539
34539
|
}
|
|
34540
34540
|
function reorderContainer(node, rawInner) {
|
|
34541
|
-
const
|
|
34542
|
-
if (
|
|
34541
|
+
const children6 = scanDirectChildren(rawInner);
|
|
34542
|
+
if (children6.length === 0) {
|
|
34543
34543
|
return;
|
|
34544
34544
|
}
|
|
34545
34545
|
const occurrence = /* @__PURE__ */ new Map();
|
|
34546
34546
|
const resolved = [];
|
|
34547
|
-
for (const
|
|
34548
|
-
const index = occurrence.get(
|
|
34549
|
-
occurrence.set(
|
|
34550
|
-
const value = ensureItems(node[
|
|
34551
|
-
resolved.push({ tag:
|
|
34552
|
-
if (isXmlObject(value) &&
|
|
34553
|
-
reorderContainer(value,
|
|
34547
|
+
for (const child16 of children6) {
|
|
34548
|
+
const index = occurrence.get(child16.tag) ?? 0;
|
|
34549
|
+
occurrence.set(child16.tag, index + 1);
|
|
34550
|
+
const value = ensureItems(node[child16.tag])[index];
|
|
34551
|
+
resolved.push({ tag: child16.tag, value });
|
|
34552
|
+
if (isXmlObject(value) && child16.inner) {
|
|
34553
|
+
reorderContainer(value, child16.inner);
|
|
34554
34554
|
}
|
|
34555
34555
|
}
|
|
34556
|
-
if (isGroupedByTag(
|
|
34556
|
+
if (isGroupedByTag(children6.map((child16) => child16.tag))) {
|
|
34557
34557
|
return;
|
|
34558
34558
|
}
|
|
34559
34559
|
for (const [tag, count] of occurrence) {
|
|
@@ -35679,6 +35679,708 @@ function applyHeaderFooterToMaster(masterRoot, headerFooter) {
|
|
|
35679
35679
|
}
|
|
35680
35680
|
}
|
|
35681
35681
|
|
|
35682
|
+
// pptx/core/utils/chart-element-format-keys.ts
|
|
35683
|
+
function chartFormatTargetKey(target) {
|
|
35684
|
+
switch (target.kind) {
|
|
35685
|
+
case "axis":
|
|
35686
|
+
case "majorGridlines":
|
|
35687
|
+
case "minorGridlines":
|
|
35688
|
+
return `${target.kind}:${target.axisIndex}`;
|
|
35689
|
+
case "series":
|
|
35690
|
+
return `series:${target.seriesIndex}`;
|
|
35691
|
+
case "dataLabels":
|
|
35692
|
+
return target.seriesIndex === void 0 ? "dataLabels" : `dataLabels:${target.seriesIndex}`;
|
|
35693
|
+
default:
|
|
35694
|
+
return target.kind;
|
|
35695
|
+
}
|
|
35696
|
+
}
|
|
35697
|
+
function parseChartFormatTargetKey(key2) {
|
|
35698
|
+
const [kind, raw] = key2.split(":");
|
|
35699
|
+
const index = raw === void 0 ? void 0 : Number(raw);
|
|
35700
|
+
if (index !== void 0 && (!Number.isInteger(index) || index < 0)) {
|
|
35701
|
+
return void 0;
|
|
35702
|
+
}
|
|
35703
|
+
switch (kind) {
|
|
35704
|
+
case "chartArea":
|
|
35705
|
+
case "plotArea":
|
|
35706
|
+
case "title":
|
|
35707
|
+
case "legend":
|
|
35708
|
+
return index === void 0 ? { kind } : void 0;
|
|
35709
|
+
case "axis":
|
|
35710
|
+
case "majorGridlines":
|
|
35711
|
+
case "minorGridlines":
|
|
35712
|
+
return index === void 0 ? void 0 : { kind, axisIndex: index };
|
|
35713
|
+
case "series":
|
|
35714
|
+
return index === void 0 ? void 0 : { kind, seriesIndex: index };
|
|
35715
|
+
case "dataLabels":
|
|
35716
|
+
return index === void 0 ? { kind } : { kind, seriesIndex: index };
|
|
35717
|
+
default:
|
|
35718
|
+
return void 0;
|
|
35719
|
+
}
|
|
35720
|
+
}
|
|
35721
|
+
|
|
35722
|
+
// pptx/core/utils/chart-element-format-xml.ts
|
|
35723
|
+
var SP_PR_ORDER2 = [
|
|
35724
|
+
"xfrm",
|
|
35725
|
+
"custGeom",
|
|
35726
|
+
"prstGeom",
|
|
35727
|
+
"noFill",
|
|
35728
|
+
"solidFill",
|
|
35729
|
+
"gradFill",
|
|
35730
|
+
"blipFill",
|
|
35731
|
+
"pattFill",
|
|
35732
|
+
"grpFill",
|
|
35733
|
+
"ln",
|
|
35734
|
+
"effectLst",
|
|
35735
|
+
"effectDag",
|
|
35736
|
+
"scene3d",
|
|
35737
|
+
"sp3d",
|
|
35738
|
+
"extLst"
|
|
35739
|
+
];
|
|
35740
|
+
var FILL_CHOICE = ["noFill", "solidFill", "gradFill", "blipFill", "pattFill", "grpFill"];
|
|
35741
|
+
var LN_ORDER = [
|
|
35742
|
+
"noFill",
|
|
35743
|
+
"solidFill",
|
|
35744
|
+
"gradFill",
|
|
35745
|
+
"pattFill",
|
|
35746
|
+
"prstDash",
|
|
35747
|
+
"custDash",
|
|
35748
|
+
"round",
|
|
35749
|
+
"bevel",
|
|
35750
|
+
"miter",
|
|
35751
|
+
"headEnd",
|
|
35752
|
+
"tailEnd",
|
|
35753
|
+
"extLst"
|
|
35754
|
+
];
|
|
35755
|
+
var LN_FILL_CHOICE = ["noFill", "solidFill", "gradFill", "pattFill"];
|
|
35756
|
+
var EFFECT_ORDER = [
|
|
35757
|
+
"blur",
|
|
35758
|
+
"fillOverlay",
|
|
35759
|
+
"glow",
|
|
35760
|
+
"innerShdw",
|
|
35761
|
+
"outerShdw",
|
|
35762
|
+
"prstShdw",
|
|
35763
|
+
"reflection",
|
|
35764
|
+
"softEdge"
|
|
35765
|
+
];
|
|
35766
|
+
var EMU_PER_POINT2 = 12700;
|
|
35767
|
+
function keyOf(node, name, localName15) {
|
|
35768
|
+
return Object.keys(node).find((key2) => !key2.startsWith("@_") && localName15(key2) === name);
|
|
35769
|
+
}
|
|
35770
|
+
function asObject(value) {
|
|
35771
|
+
return value && typeof value === "object" && !Array.isArray(value) ? value : void 0;
|
|
35772
|
+
}
|
|
35773
|
+
function removeChildren(node, names, localName15) {
|
|
35774
|
+
for (const key2 of Object.keys(node)) {
|
|
35775
|
+
if (!key2.startsWith("@_") && names.includes(localName15(key2))) {
|
|
35776
|
+
delete node[key2];
|
|
35777
|
+
}
|
|
35778
|
+
}
|
|
35779
|
+
}
|
|
35780
|
+
function setOrdered(node, name, value, order, localName15) {
|
|
35781
|
+
const existing = keyOf(node, name, localName15);
|
|
35782
|
+
if (existing) {
|
|
35783
|
+
node[existing] = value;
|
|
35784
|
+
return;
|
|
35785
|
+
}
|
|
35786
|
+
const rankOf = (key2) => {
|
|
35787
|
+
if (key2.startsWith("@_")) {
|
|
35788
|
+
return -1;
|
|
35789
|
+
}
|
|
35790
|
+
const r = order.indexOf(localName15(key2));
|
|
35791
|
+
return r < 0 ? order.length : r;
|
|
35792
|
+
};
|
|
35793
|
+
const entries = [...Object.entries(node), [`a:${name}`, value]].map((entry2, index) => ({ entry: entry2, index })).sort((a, b) => rankOf(a.entry[0]) - rankOf(b.entry[0]) || a.index - b.index).map(({ entry: entry2 }) => entry2);
|
|
35794
|
+
for (const key2 of Object.keys(node)) {
|
|
35795
|
+
delete node[key2];
|
|
35796
|
+
}
|
|
35797
|
+
for (const [key2, child16] of entries) {
|
|
35798
|
+
node[key2] = child16;
|
|
35799
|
+
}
|
|
35800
|
+
}
|
|
35801
|
+
function alphaOf(transparency) {
|
|
35802
|
+
if (transparency === void 0 || transparency <= 0) {
|
|
35803
|
+
return void 0;
|
|
35804
|
+
}
|
|
35805
|
+
const clamped = Math.min(100, Math.max(0, transparency));
|
|
35806
|
+
return { "@_val": String(Math.round((100 - clamped) * 1e3)) };
|
|
35807
|
+
}
|
|
35808
|
+
function chartElementColorXml(color, transparency) {
|
|
35809
|
+
const clr = { "@_val": chartColorHex(color) };
|
|
35810
|
+
const alpha = alphaOf(transparency);
|
|
35811
|
+
if (alpha) {
|
|
35812
|
+
clr["a:alpha"] = alpha;
|
|
35813
|
+
}
|
|
35814
|
+
return { "a:srgbClr": clr };
|
|
35815
|
+
}
|
|
35816
|
+
function setPaintAlpha(paint2, transparency, localName15) {
|
|
35817
|
+
const choiceKey = Object.keys(paint2).find((key2) => !key2.startsWith("@_"));
|
|
35818
|
+
const choice = choiceKey ? asObject(paint2[choiceKey]) : void 0;
|
|
35819
|
+
if (!choiceKey || !choice) {
|
|
35820
|
+
return;
|
|
35821
|
+
}
|
|
35822
|
+
const next = { ...choice };
|
|
35823
|
+
removeChildren(next, ["alpha"], localName15);
|
|
35824
|
+
const alpha = alphaOf(transparency);
|
|
35825
|
+
if (alpha) {
|
|
35826
|
+
next["a:alpha"] = alpha;
|
|
35827
|
+
}
|
|
35828
|
+
paint2[choiceKey] = next;
|
|
35829
|
+
}
|
|
35830
|
+
function applyPaint(node, paint2, choices, order, localName15) {
|
|
35831
|
+
if (paint2.kind === "automatic") {
|
|
35832
|
+
removeChildren(node, choices, localName15);
|
|
35833
|
+
return;
|
|
35834
|
+
}
|
|
35835
|
+
if (paint2.kind === "none") {
|
|
35836
|
+
removeChildren(node, choices, localName15);
|
|
35837
|
+
setOrdered(node, "noFill", {}, order, localName15);
|
|
35838
|
+
return;
|
|
35839
|
+
}
|
|
35840
|
+
if (paint2.color) {
|
|
35841
|
+
removeChildren(node, choices, localName15);
|
|
35842
|
+
setOrdered(
|
|
35843
|
+
node,
|
|
35844
|
+
"solidFill",
|
|
35845
|
+
chartElementColorXml(paint2.color, paint2.transparency),
|
|
35846
|
+
order,
|
|
35847
|
+
localName15
|
|
35848
|
+
);
|
|
35849
|
+
return;
|
|
35850
|
+
}
|
|
35851
|
+
const solidKey = keyOf(node, "solidFill", localName15);
|
|
35852
|
+
const solid = solidKey ? asObject(node[solidKey]) : void 0;
|
|
35853
|
+
if (solid && solidKey && paint2.transparency !== void 0) {
|
|
35854
|
+
const next = { ...solid };
|
|
35855
|
+
setPaintAlpha(next, paint2.transparency, localName15);
|
|
35856
|
+
node[solidKey] = next;
|
|
35857
|
+
}
|
|
35858
|
+
}
|
|
35859
|
+
function applyLine(spPr, line, localName15) {
|
|
35860
|
+
const lnKey = keyOf(spPr, "ln", localName15);
|
|
35861
|
+
const ln = { ...asObject(lnKey ? spPr[lnKey] : void 0) ?? {} };
|
|
35862
|
+
applyPaint(ln, line, LN_FILL_CHOICE, LN_ORDER, localName15);
|
|
35863
|
+
if (line.width !== void 0) {
|
|
35864
|
+
ln["@_w"] = String(Math.round(Math.max(0, line.width) * EMU_PER_POINT2));
|
|
35865
|
+
}
|
|
35866
|
+
if (line.compound !== void 0) {
|
|
35867
|
+
ln["@_cmpd"] = line.compound;
|
|
35868
|
+
}
|
|
35869
|
+
if (line.cap !== void 0) {
|
|
35870
|
+
ln["@_cap"] = line.cap;
|
|
35871
|
+
}
|
|
35872
|
+
if (line.dash !== void 0) {
|
|
35873
|
+
removeChildren(ln, ["custDash"], localName15);
|
|
35874
|
+
setOrdered(ln, "prstDash", { "@_val": line.dash }, LN_ORDER, localName15);
|
|
35875
|
+
}
|
|
35876
|
+
if (line.join !== void 0) {
|
|
35877
|
+
removeChildren(ln, ["round", "bevel", "miter"], localName15);
|
|
35878
|
+
setOrdered(
|
|
35879
|
+
ln,
|
|
35880
|
+
line.join,
|
|
35881
|
+
line.join === "miter" ? { "@_lim": "800000" } : {},
|
|
35882
|
+
LN_ORDER,
|
|
35883
|
+
localName15
|
|
35884
|
+
);
|
|
35885
|
+
}
|
|
35886
|
+
if (line.beginArrow !== void 0) {
|
|
35887
|
+
setOrdered(ln, "headEnd", { "@_type": line.beginArrow }, LN_ORDER, localName15);
|
|
35888
|
+
}
|
|
35889
|
+
if (line.endArrow !== void 0) {
|
|
35890
|
+
setOrdered(ln, "tailEnd", { "@_type": line.endArrow }, LN_ORDER, localName15);
|
|
35891
|
+
}
|
|
35892
|
+
if (Object.keys(ln).length === 0) {
|
|
35893
|
+
if (lnKey) {
|
|
35894
|
+
delete spPr[lnKey];
|
|
35895
|
+
}
|
|
35896
|
+
return;
|
|
35897
|
+
}
|
|
35898
|
+
setOrdered(spPr, "ln", ln, SP_PR_ORDER2, localName15);
|
|
35899
|
+
}
|
|
35900
|
+
var pt = (value) => String(Math.round(Math.max(0, value) * EMU_PER_POINT2));
|
|
35901
|
+
function applyEffects(spPr, effects, localName15) {
|
|
35902
|
+
const key2 = keyOf(spPr, "effectLst", localName15);
|
|
35903
|
+
const list = { ...asObject(key2 ? spPr[key2] : void 0) ?? {} };
|
|
35904
|
+
if (effects.shadow !== void 0) {
|
|
35905
|
+
removeChildren(list, ["outerShdw"], localName15);
|
|
35906
|
+
if (effects.shadow) {
|
|
35907
|
+
const s = effects.shadow;
|
|
35908
|
+
setOrdered(
|
|
35909
|
+
list,
|
|
35910
|
+
"outerShdw",
|
|
35911
|
+
{
|
|
35912
|
+
"@_blurRad": pt(s.blur),
|
|
35913
|
+
"@_dist": pt(s.distance),
|
|
35914
|
+
"@_dir": String(Math.round((s.angle % 360 + 360) % 360 * 6e4)),
|
|
35915
|
+
"@_algn": "tl",
|
|
35916
|
+
"@_rotWithShape": "0",
|
|
35917
|
+
...chartElementColorXml(s.color, s.transparency)
|
|
35918
|
+
},
|
|
35919
|
+
EFFECT_ORDER,
|
|
35920
|
+
localName15
|
|
35921
|
+
);
|
|
35922
|
+
}
|
|
35923
|
+
}
|
|
35924
|
+
if (effects.glow !== void 0) {
|
|
35925
|
+
removeChildren(list, ["glow"], localName15);
|
|
35926
|
+
if (effects.glow) {
|
|
35927
|
+
setOrdered(
|
|
35928
|
+
list,
|
|
35929
|
+
"glow",
|
|
35930
|
+
{
|
|
35931
|
+
"@_rad": pt(effects.glow.radius),
|
|
35932
|
+
...chartElementColorXml(effects.glow.color, effects.glow.transparency)
|
|
35933
|
+
},
|
|
35934
|
+
EFFECT_ORDER,
|
|
35935
|
+
localName15
|
|
35936
|
+
);
|
|
35937
|
+
}
|
|
35938
|
+
}
|
|
35939
|
+
if (effects.softEdge !== void 0) {
|
|
35940
|
+
removeChildren(list, ["softEdge"], localName15);
|
|
35941
|
+
if (effects.softEdge !== null && effects.softEdge > 0) {
|
|
35942
|
+
setOrdered(list, "softEdge", { "@_rad": pt(effects.softEdge) }, EFFECT_ORDER, localName15);
|
|
35943
|
+
}
|
|
35944
|
+
}
|
|
35945
|
+
if (Object.keys(list).length === 0) {
|
|
35946
|
+
if (key2) {
|
|
35947
|
+
delete spPr[key2];
|
|
35948
|
+
}
|
|
35949
|
+
return;
|
|
35950
|
+
}
|
|
35951
|
+
setOrdered(spPr, "effectLst", list, SP_PR_ORDER2, localName15);
|
|
35952
|
+
}
|
|
35953
|
+
function applyChartElementFormatToSpPr(existing, format, localName15) {
|
|
35954
|
+
const spPr = format.reset ? {} : { ...existing ?? {} };
|
|
35955
|
+
if (format.fill) {
|
|
35956
|
+
applyPaint(spPr, format.fill, FILL_CHOICE, SP_PR_ORDER2, localName15);
|
|
35957
|
+
}
|
|
35958
|
+
if (format.line) {
|
|
35959
|
+
applyLine(spPr, format.line, localName15);
|
|
35960
|
+
}
|
|
35961
|
+
if (format.effects) {
|
|
35962
|
+
applyEffects(spPr, format.effects, localName15);
|
|
35963
|
+
}
|
|
35964
|
+
return Object.keys(spPr).length > 0 ? spPr : void 0;
|
|
35965
|
+
}
|
|
35966
|
+
|
|
35967
|
+
// pptx/core/utils/chart-element-format-targets.ts
|
|
35968
|
+
var CHART_SPACE_AFTER_SP_PR = ["txPr", "externalData", "printSettings", "userShapes", "extLst"];
|
|
35969
|
+
var TEXT_OWNER_AFTER_SP_PR = ["txPr", "extLst"];
|
|
35970
|
+
var AXIS_AFTER_SP_PR = [
|
|
35971
|
+
"txPr",
|
|
35972
|
+
"crossAx",
|
|
35973
|
+
"crosses",
|
|
35974
|
+
"crossesAt",
|
|
35975
|
+
"crossBetween",
|
|
35976
|
+
"auto",
|
|
35977
|
+
"lblAlgn",
|
|
35978
|
+
"lblOffset",
|
|
35979
|
+
"majorUnit",
|
|
35980
|
+
"minorUnit",
|
|
35981
|
+
"dispUnits",
|
|
35982
|
+
"tickLblSkip",
|
|
35983
|
+
"tickMarkSkip",
|
|
35984
|
+
"noMultiLvlLbl",
|
|
35985
|
+
"baseTimeUnit",
|
|
35986
|
+
"majorTimeUnit",
|
|
35987
|
+
"minorTimeUnit",
|
|
35988
|
+
"extLst"
|
|
35989
|
+
];
|
|
35990
|
+
var SERIES_AFTER_SP_PR = [
|
|
35991
|
+
"invertIfNegative",
|
|
35992
|
+
"pictureOptions",
|
|
35993
|
+
"marker",
|
|
35994
|
+
"dPt",
|
|
35995
|
+
"dLbls",
|
|
35996
|
+
"trendline",
|
|
35997
|
+
"errBars",
|
|
35998
|
+
"cat",
|
|
35999
|
+
"val",
|
|
36000
|
+
"xVal",
|
|
36001
|
+
"yVal",
|
|
36002
|
+
"smooth",
|
|
36003
|
+
"shape",
|
|
36004
|
+
"explosion",
|
|
36005
|
+
"bubbleSize",
|
|
36006
|
+
"bubble3D",
|
|
36007
|
+
"extLst"
|
|
36008
|
+
];
|
|
36009
|
+
var DLBLS_AFTER_SP_PR = [
|
|
36010
|
+
"txPr",
|
|
36011
|
+
"dLblPos",
|
|
36012
|
+
"showLegendKey",
|
|
36013
|
+
"showVal",
|
|
36014
|
+
"showCatName",
|
|
36015
|
+
"showSerName",
|
|
36016
|
+
"showPercent",
|
|
36017
|
+
"showBubbleSize",
|
|
36018
|
+
"separator",
|
|
36019
|
+
"showLeaderLines",
|
|
36020
|
+
"leaderLines",
|
|
36021
|
+
"extLst"
|
|
36022
|
+
];
|
|
36023
|
+
var AXIS_TAGS = ["catAx", "valAx", "dateAx", "serAx"];
|
|
36024
|
+
function keyOf2(node, name, getLocalName2) {
|
|
36025
|
+
return Object.keys(node).find((key2) => !key2.startsWith("@_") && getLocalName2(key2) === name);
|
|
36026
|
+
}
|
|
36027
|
+
function child3(node, name, getLocalName2) {
|
|
36028
|
+
if (!node) {
|
|
36029
|
+
return void 0;
|
|
36030
|
+
}
|
|
36031
|
+
const key2 = keyOf2(node, name, getLocalName2);
|
|
36032
|
+
const value = key2 ? node[key2] : void 0;
|
|
36033
|
+
return value && typeof value === "object" && !Array.isArray(value) ? value : void 0;
|
|
36034
|
+
}
|
|
36035
|
+
function children3(node, name, getLocalName2) {
|
|
36036
|
+
const key2 = keyOf2(node, name, getLocalName2);
|
|
36037
|
+
const value = key2 ? node[key2] : void 0;
|
|
36038
|
+
if (Array.isArray(value)) {
|
|
36039
|
+
return value.filter((v) => Boolean(v) && typeof v === "object");
|
|
36040
|
+
}
|
|
36041
|
+
return value && typeof value === "object" ? [value] : [];
|
|
36042
|
+
}
|
|
36043
|
+
function applyFormatToOwner(owner, format, after, getLocalName2) {
|
|
36044
|
+
const spPrKey = keyOf2(owner, "spPr", getLocalName2);
|
|
36045
|
+
const existing = spPrKey ? owner[spPrKey] : void 0;
|
|
36046
|
+
const next = applyChartElementFormatToSpPr(
|
|
36047
|
+
existing && typeof existing === "object" ? existing : void 0,
|
|
36048
|
+
format,
|
|
36049
|
+
getLocalName2
|
|
36050
|
+
);
|
|
36051
|
+
if (spPrKey) {
|
|
36052
|
+
if (next) {
|
|
36053
|
+
owner[spPrKey] = next;
|
|
36054
|
+
} else {
|
|
36055
|
+
delete owner[spPrKey];
|
|
36056
|
+
}
|
|
36057
|
+
return;
|
|
36058
|
+
}
|
|
36059
|
+
if (!next) {
|
|
36060
|
+
return;
|
|
36061
|
+
}
|
|
36062
|
+
const entries = Object.entries(owner);
|
|
36063
|
+
const at = entries.findIndex(
|
|
36064
|
+
([key2]) => !key2.startsWith("@_") && after.includes(getLocalName2(key2))
|
|
36065
|
+
);
|
|
36066
|
+
entries.splice(at < 0 ? entries.length : at, 0, ["c:spPr", next]);
|
|
36067
|
+
for (const key2 of Object.keys(owner)) {
|
|
36068
|
+
delete owner[key2];
|
|
36069
|
+
}
|
|
36070
|
+
for (const [key2, value] of entries) {
|
|
36071
|
+
owner[key2] = value;
|
|
36072
|
+
}
|
|
36073
|
+
}
|
|
36074
|
+
function findChartAxisNode(plotArea, chartData, axisIndex, getLocalName2) {
|
|
36075
|
+
const axis = chartData.axes?.[axisIndex];
|
|
36076
|
+
if (!axis) {
|
|
36077
|
+
return void 0;
|
|
36078
|
+
}
|
|
36079
|
+
const nodes = AXIS_TAGS.flatMap(
|
|
36080
|
+
(tag) => children3(plotArea, tag, getLocalName2).map((node) => ({ tag, node }))
|
|
36081
|
+
);
|
|
36082
|
+
if (axis.axisId !== void 0) {
|
|
36083
|
+
const byId = nodes.find(
|
|
36084
|
+
({ node }) => child3(node, "axId", getLocalName2)?.["@_val"] === String(axis.axisId)
|
|
36085
|
+
);
|
|
36086
|
+
if (byId) {
|
|
36087
|
+
return byId.node;
|
|
36088
|
+
}
|
|
36089
|
+
}
|
|
36090
|
+
const sameType = (chartData.axes ?? []).slice(0, axisIndex).filter((a) => a.axisType === axis.axisType).length;
|
|
36091
|
+
return nodes.filter(({ tag }) => tag === axis.axisType)[sameType]?.node;
|
|
36092
|
+
}
|
|
36093
|
+
function canonical(value) {
|
|
36094
|
+
if (Array.isArray(value)) {
|
|
36095
|
+
return `[${value.map(canonical).join(",")}]`;
|
|
36096
|
+
}
|
|
36097
|
+
if (value && typeof value === "object") {
|
|
36098
|
+
const entries = Object.entries(value).filter(([, v]) => v !== void 0).sort(([a], [b]) => a < b ? -1 : 1);
|
|
36099
|
+
return `{${entries.map(([k, v]) => `${JSON.stringify(k)}:${canonical(v)}`).join(",")}}`;
|
|
36100
|
+
}
|
|
36101
|
+
return JSON.stringify(value);
|
|
36102
|
+
}
|
|
36103
|
+
function changedSections(record2, authored) {
|
|
36104
|
+
if (record2.reset) {
|
|
36105
|
+
return record2;
|
|
36106
|
+
}
|
|
36107
|
+
const out = {};
|
|
36108
|
+
for (const section of ["fill", "line", "effects"]) {
|
|
36109
|
+
if (record2[section] !== void 0 && canonical(record2[section]) !== canonical(authored?.[section])) {
|
|
36110
|
+
Object.assign(out, { [section]: record2[section] });
|
|
36111
|
+
}
|
|
36112
|
+
}
|
|
36113
|
+
return Object.keys(out).length > 0 ? out : void 0;
|
|
36114
|
+
}
|
|
36115
|
+
function formatEntries(chartData, authored) {
|
|
36116
|
+
return Object.entries(chartData.elementFormats ?? {}).flatMap(([key2, record2]) => {
|
|
36117
|
+
const target = parseChartFormatTargetKey(key2);
|
|
36118
|
+
const format = target ? changedSections(record2, authored?.[key2]) : void 0;
|
|
36119
|
+
return target && format ? [{ target, format }] : [];
|
|
36120
|
+
});
|
|
36121
|
+
}
|
|
36122
|
+
function applySeriesElementFormatsToXml(seriesNodes, chartData, getLocalName2, authored) {
|
|
36123
|
+
for (const { target, format } of formatEntries(chartData, authored)) {
|
|
36124
|
+
if (target.kind !== "series" && !(target.kind === "dataLabels" && target.seriesIndex !== void 0)) {
|
|
36125
|
+
continue;
|
|
36126
|
+
}
|
|
36127
|
+
const node = seriesNodes[target.seriesIndex ?? -1];
|
|
36128
|
+
if (!node) {
|
|
36129
|
+
continue;
|
|
36130
|
+
}
|
|
36131
|
+
if (target.kind === "series") {
|
|
36132
|
+
applyFormatToOwner(node, format, SERIES_AFTER_SP_PR, getLocalName2);
|
|
36133
|
+
} else {
|
|
36134
|
+
const dLbls = child3(node, "dLbls", getLocalName2);
|
|
36135
|
+
if (dLbls) {
|
|
36136
|
+
applyFormatToOwner(dLbls, format, DLBLS_AFTER_SP_PR, getLocalName2);
|
|
36137
|
+
}
|
|
36138
|
+
}
|
|
36139
|
+
}
|
|
36140
|
+
}
|
|
36141
|
+
function allDataLabelNodes(plotArea, getLocalName2) {
|
|
36142
|
+
const out = [];
|
|
36143
|
+
for (const key2 of Object.keys(plotArea)) {
|
|
36144
|
+
if (!getLocalName2(key2).endsWith("Chart")) {
|
|
36145
|
+
continue;
|
|
36146
|
+
}
|
|
36147
|
+
const container = plotArea[key2];
|
|
36148
|
+
if (!container || typeof container !== "object" || Array.isArray(container)) {
|
|
36149
|
+
continue;
|
|
36150
|
+
}
|
|
36151
|
+
const owners = [
|
|
36152
|
+
container,
|
|
36153
|
+
...children3(container, "ser", getLocalName2)
|
|
36154
|
+
];
|
|
36155
|
+
for (const owner of owners) {
|
|
36156
|
+
const dLbls = child3(owner, "dLbls", getLocalName2);
|
|
36157
|
+
if (dLbls) {
|
|
36158
|
+
out.push(dLbls);
|
|
36159
|
+
}
|
|
36160
|
+
}
|
|
36161
|
+
}
|
|
36162
|
+
return out;
|
|
36163
|
+
}
|
|
36164
|
+
function applyChromeElementFormatsToXml(chartSpace, chartData, getLocalName2, authored) {
|
|
36165
|
+
const chartRoot = child3(chartSpace, "chart", getLocalName2);
|
|
36166
|
+
const plotArea = child3(chartRoot, "plotArea", getLocalName2);
|
|
36167
|
+
for (const { target, format } of formatEntries(chartData, authored)) {
|
|
36168
|
+
switch (target.kind) {
|
|
36169
|
+
case "chartArea":
|
|
36170
|
+
applyFormatToOwner(chartSpace, format, CHART_SPACE_AFTER_SP_PR, getLocalName2);
|
|
36171
|
+
break;
|
|
36172
|
+
case "plotArea":
|
|
36173
|
+
if (plotArea) {
|
|
36174
|
+
applyFormatToOwner(plotArea, format, ["extLst"], getLocalName2);
|
|
36175
|
+
}
|
|
36176
|
+
break;
|
|
36177
|
+
case "title":
|
|
36178
|
+
case "legend": {
|
|
36179
|
+
const owner = child3(chartRoot, target.kind, getLocalName2);
|
|
36180
|
+
if (owner) {
|
|
36181
|
+
applyFormatToOwner(owner, format, TEXT_OWNER_AFTER_SP_PR, getLocalName2);
|
|
36182
|
+
}
|
|
36183
|
+
break;
|
|
36184
|
+
}
|
|
36185
|
+
case "axis":
|
|
36186
|
+
case "majorGridlines":
|
|
36187
|
+
case "minorGridlines": {
|
|
36188
|
+
const axis = plotArea ? findChartAxisNode(plotArea, chartData, target.axisIndex, getLocalName2) : void 0;
|
|
36189
|
+
if (!axis) {
|
|
36190
|
+
break;
|
|
36191
|
+
}
|
|
36192
|
+
if (target.kind === "axis") {
|
|
36193
|
+
applyFormatToOwner(axis, format, AXIS_AFTER_SP_PR, getLocalName2);
|
|
36194
|
+
} else {
|
|
36195
|
+
const lines = child3(axis, target.kind, getLocalName2);
|
|
36196
|
+
if (lines) {
|
|
36197
|
+
applyFormatToOwner(lines, format, ["extLst"], getLocalName2);
|
|
36198
|
+
}
|
|
36199
|
+
}
|
|
36200
|
+
break;
|
|
36201
|
+
}
|
|
36202
|
+
case "dataLabels":
|
|
36203
|
+
if (plotArea && target.seriesIndex === void 0) {
|
|
36204
|
+
for (const dLbls of allDataLabelNodes(plotArea, getLocalName2)) {
|
|
36205
|
+
applyFormatToOwner(dLbls, format, DLBLS_AFTER_SP_PR, getLocalName2);
|
|
36206
|
+
}
|
|
36207
|
+
}
|
|
36208
|
+
break;
|
|
36209
|
+
}
|
|
36210
|
+
}
|
|
36211
|
+
}
|
|
36212
|
+
|
|
36213
|
+
// pptx/core/utils/chart-element-format-read-xml.ts
|
|
36214
|
+
var EMU_PER_POINT3 = 12700;
|
|
36215
|
+
function child4(node, name, localName15) {
|
|
36216
|
+
if (!node) {
|
|
36217
|
+
return void 0;
|
|
36218
|
+
}
|
|
36219
|
+
const key2 = Object.keys(node).find((k) => !k.startsWith("@_") && localName15(k) === name);
|
|
36220
|
+
if (!key2) {
|
|
36221
|
+
return void 0;
|
|
36222
|
+
}
|
|
36223
|
+
const value = node[key2];
|
|
36224
|
+
return value && typeof value === "object" && !Array.isArray(value) ? value : {};
|
|
36225
|
+
}
|
|
36226
|
+
function has(node, name, localName15) {
|
|
36227
|
+
return Boolean(
|
|
36228
|
+
node && Object.keys(node).some((k) => !k.startsWith("@_") && localName15(k) === name)
|
|
36229
|
+
);
|
|
36230
|
+
}
|
|
36231
|
+
var round = (value) => Math.round(value * 100) / 100;
|
|
36232
|
+
var points = (emu2) => {
|
|
36233
|
+
const n = Number(emu2);
|
|
36234
|
+
return Number.isFinite(n) ? round(n / EMU_PER_POINT3) : void 0;
|
|
36235
|
+
};
|
|
36236
|
+
function transparencyOf(fill, localName15) {
|
|
36237
|
+
for (const [key2, value] of Object.entries(fill)) {
|
|
36238
|
+
if (key2.startsWith("@_") || !value || typeof value !== "object") {
|
|
36239
|
+
continue;
|
|
36240
|
+
}
|
|
36241
|
+
const alpha = child4(value, "alpha", localName15)?.["@_val"];
|
|
36242
|
+
const n = Number(alpha);
|
|
36243
|
+
if (alpha !== void 0 && Number.isFinite(n)) {
|
|
36244
|
+
const transparency = round(100 - n / 1e3);
|
|
36245
|
+
return transparency > 0 ? transparency : void 0;
|
|
36246
|
+
}
|
|
36247
|
+
}
|
|
36248
|
+
return void 0;
|
|
36249
|
+
}
|
|
36250
|
+
function paint(node, localName15, resolve) {
|
|
36251
|
+
if (has(node, "noFill", localName15)) {
|
|
36252
|
+
return { kind: "none" };
|
|
36253
|
+
}
|
|
36254
|
+
const solid = child4(node, "solidFill", localName15);
|
|
36255
|
+
if (!solid) {
|
|
36256
|
+
return void 0;
|
|
36257
|
+
}
|
|
36258
|
+
const color = resolve(solid);
|
|
36259
|
+
const transparency = transparencyOf(solid, localName15);
|
|
36260
|
+
return {
|
|
36261
|
+
kind: "solid",
|
|
36262
|
+
...color ? { color } : {},
|
|
36263
|
+
...transparency !== void 0 ? { transparency } : {}
|
|
36264
|
+
};
|
|
36265
|
+
}
|
|
36266
|
+
var LINE_ENDS = /* @__PURE__ */ new Set(["triangle", "stealth", "diamond", "oval", "arrow", "none"]);
|
|
36267
|
+
function readLine(ln, localName15, resolve) {
|
|
36268
|
+
const line = paint(ln, localName15, resolve) ?? { kind: "automatic" };
|
|
36269
|
+
const width = points(ln["@_w"]);
|
|
36270
|
+
if (ln["@_w"] !== void 0 && width !== void 0) line.width = width;
|
|
36271
|
+
const cmpd = ln["@_cmpd"];
|
|
36272
|
+
if (cmpd === "sng" || cmpd === "dbl" || cmpd === "thickThin" || cmpd === "thinThick" || cmpd === "tri") {
|
|
36273
|
+
line.compound = cmpd;
|
|
36274
|
+
}
|
|
36275
|
+
const cap = ln["@_cap"];
|
|
36276
|
+
if (cap === "rnd" || cap === "sq" || cap === "flat") line.cap = cap;
|
|
36277
|
+
const dash = child4(ln, "prstDash", localName15)?.["@_val"];
|
|
36278
|
+
if (typeof dash === "string") line.dash = dash;
|
|
36279
|
+
for (const join of ["round", "bevel", "miter"]) {
|
|
36280
|
+
if (has(ln, join, localName15)) line.join = join;
|
|
36281
|
+
}
|
|
36282
|
+
const head = child4(ln, "headEnd", localName15)?.["@_type"];
|
|
36283
|
+
if (typeof head === "string" && LINE_ENDS.has(head) && head !== "none") {
|
|
36284
|
+
line.beginArrow = head;
|
|
36285
|
+
}
|
|
36286
|
+
const tail = child4(ln, "tailEnd", localName15)?.["@_type"];
|
|
36287
|
+
if (typeof tail === "string" && LINE_ENDS.has(tail) && tail !== "none") {
|
|
36288
|
+
line.endArrow = tail;
|
|
36289
|
+
}
|
|
36290
|
+
return line;
|
|
36291
|
+
}
|
|
36292
|
+
function readEffects(list, localName15, resolve) {
|
|
36293
|
+
const effects = {};
|
|
36294
|
+
const shadow = child4(list, "outerShdw", localName15);
|
|
36295
|
+
if (shadow) {
|
|
36296
|
+
const color = resolve(shadow) ?? "#000000";
|
|
36297
|
+
const transparency = transparencyOf(shadow, localName15);
|
|
36298
|
+
effects.shadow = {
|
|
36299
|
+
color,
|
|
36300
|
+
...transparency !== void 0 ? { transparency } : {},
|
|
36301
|
+
blur: points(shadow["@_blurRad"] ?? 0) ?? 0,
|
|
36302
|
+
distance: points(shadow["@_dist"] ?? 0) ?? 0,
|
|
36303
|
+
angle: round((Number(shadow["@_dir"] ?? 0) || 0) / 6e4)
|
|
36304
|
+
};
|
|
36305
|
+
}
|
|
36306
|
+
const glow = child4(list, "glow", localName15);
|
|
36307
|
+
if (glow) {
|
|
36308
|
+
const transparency = transparencyOf(glow, localName15);
|
|
36309
|
+
effects.glow = {
|
|
36310
|
+
color: resolve(glow) ?? "#FFFFFF",
|
|
36311
|
+
...transparency !== void 0 ? { transparency } : {},
|
|
36312
|
+
radius: points(glow["@_rad"] ?? 0) ?? 0
|
|
36313
|
+
};
|
|
36314
|
+
}
|
|
36315
|
+
const soft = child4(list, "softEdge", localName15);
|
|
36316
|
+
if (soft) {
|
|
36317
|
+
effects.softEdge = points(soft["@_rad"] ?? 0) ?? 0;
|
|
36318
|
+
}
|
|
36319
|
+
return Object.keys(effects).length > 0 ? effects : void 0;
|
|
36320
|
+
}
|
|
36321
|
+
function readChartElementFormatFromSpPr(spPr, localName15, resolve) {
|
|
36322
|
+
if (!spPr) {
|
|
36323
|
+
return void 0;
|
|
36324
|
+
}
|
|
36325
|
+
const format = {};
|
|
36326
|
+
const fill = paint(spPr, localName15, resolve);
|
|
36327
|
+
if (fill) format.fill = fill;
|
|
36328
|
+
const ln = child4(spPr, "ln", localName15);
|
|
36329
|
+
if (ln) format.line = readLine(ln, localName15, resolve);
|
|
36330
|
+
const effectLst = child4(spPr, "effectLst", localName15);
|
|
36331
|
+
const effects = effectLst ? readEffects(effectLst, localName15, resolve) : void 0;
|
|
36332
|
+
if (effects) format.effects = effects;
|
|
36333
|
+
return Object.keys(format).length > 0 ? format : void 0;
|
|
36334
|
+
}
|
|
36335
|
+
function collectChartSeriesNodes(plotArea, localName15) {
|
|
36336
|
+
const out = [];
|
|
36337
|
+
for (const [key2, value] of Object.entries(plotArea ?? {})) {
|
|
36338
|
+
if (!localName15(key2).endsWith("Chart") || !value || typeof value !== "object") {
|
|
36339
|
+
continue;
|
|
36340
|
+
}
|
|
36341
|
+
for (const [childKey2, ser] of Object.entries(value)) {
|
|
36342
|
+
if (localName15(childKey2) !== "ser") continue;
|
|
36343
|
+
for (const node of Array.isArray(ser) ? ser : [ser]) {
|
|
36344
|
+
if (node && typeof node === "object") out.push(node);
|
|
36345
|
+
}
|
|
36346
|
+
}
|
|
36347
|
+
}
|
|
36348
|
+
return out;
|
|
36349
|
+
}
|
|
36350
|
+
function readChartElementFormatsFromXml(nodes, data, localName15, resolve) {
|
|
36351
|
+
const out = {};
|
|
36352
|
+
const spPrOf = (owner) => readChartElementFormatFromSpPr(child4(owner, "spPr", localName15), localName15, resolve);
|
|
36353
|
+
const put = (key2, format) => {
|
|
36354
|
+
if (format) out[key2] = format;
|
|
36355
|
+
};
|
|
36356
|
+
const chartRoot = child4(nodes.chartSpace, "chart", localName15);
|
|
36357
|
+
const plotArea = child4(chartRoot, "plotArea", localName15);
|
|
36358
|
+
put("chartArea", spPrOf(nodes.chartSpace));
|
|
36359
|
+
put("plotArea", spPrOf(plotArea));
|
|
36360
|
+
put("title", spPrOf(child4(chartRoot, "title", localName15)));
|
|
36361
|
+
put("legend", spPrOf(child4(chartRoot, "legend", localName15)));
|
|
36362
|
+
(data.axes ?? []).forEach((_, axisIndex) => {
|
|
36363
|
+
const axis = plotArea ? findChartAxisNode(plotArea, data, axisIndex, localName15) : void 0;
|
|
36364
|
+
put(`axis:${axisIndex}`, spPrOf(axis));
|
|
36365
|
+
put(`majorGridlines:${axisIndex}`, spPrOf(child4(axis, "majorGridlines", localName15)));
|
|
36366
|
+
put(`minorGridlines:${axisIndex}`, spPrOf(child4(axis, "minorGridlines", localName15)));
|
|
36367
|
+
});
|
|
36368
|
+
nodes.seriesNodes.forEach((ser, index) => put(`series:${index}`, spPrOf(ser)));
|
|
36369
|
+
for (const [key2, value] of Object.entries(plotArea ?? {})) {
|
|
36370
|
+
if (localName15(key2).endsWith("Chart") && value && typeof value === "object") {
|
|
36371
|
+
const own = spPrOf(child4(value, "dLbls", localName15));
|
|
36372
|
+
if (own) {
|
|
36373
|
+
put("dataLabels", own);
|
|
36374
|
+
break;
|
|
36375
|
+
}
|
|
36376
|
+
}
|
|
36377
|
+
}
|
|
36378
|
+
if (!out.dataLabels && nodes.seriesNodes[0]) {
|
|
36379
|
+
put("dataLabels", spPrOf(child4(nodes.seriesNodes[0], "dLbls", localName15)));
|
|
36380
|
+
}
|
|
36381
|
+
return Object.keys(out).length > 0 ? out : void 0;
|
|
36382
|
+
}
|
|
36383
|
+
|
|
35682
36384
|
// pptx/core/utils/chart-xlsx-write-validation.ts
|
|
35683
36385
|
function unsupported(reason) {
|
|
35684
36386
|
throw new Error(`Chart label replacement requires direct literal workbook cells: ${reason}.`);
|
|
@@ -35930,7 +36632,7 @@ function formulaCount(value) {
|
|
|
35930
36632
|
if (!value || typeof value !== "object") return 0;
|
|
35931
36633
|
if (Array.isArray(value)) return value.reduce((total, item) => total + formulaCount(item), 0);
|
|
35932
36634
|
return Object.entries(value).reduce(
|
|
35933
|
-
(total, [key2,
|
|
36635
|
+
(total, [key2, child16]) => total + (key2 === "f" || key2.endsWith(":f") ? 1 : formulaCount(child16)),
|
|
35934
36636
|
0
|
|
35935
36637
|
);
|
|
35936
36638
|
}
|
|
@@ -36022,7 +36724,7 @@ function parseChartBandFmts(seriesContainer, xmlLookup, colorParser) {
|
|
|
36022
36724
|
return result.length > 0 ? result : void 0;
|
|
36023
36725
|
}
|
|
36024
36726
|
var findKey3 = (node, name, localName15) => Object.keys(node).find((key2) => localName15(key2) === name);
|
|
36025
|
-
function
|
|
36727
|
+
function setOrdered2(node, name, value, order, localName15) {
|
|
36026
36728
|
const key2 = findKey3(node, name, localName15);
|
|
36027
36729
|
if (key2) {
|
|
36028
36730
|
node[key2] = value;
|
|
@@ -36038,8 +36740,8 @@ function setOrdered(node, name, value, order, localName15) {
|
|
|
36038
36740
|
for (const candidate of Object.keys(node)) {
|
|
36039
36741
|
delete node[candidate];
|
|
36040
36742
|
}
|
|
36041
|
-
for (const [candidate,
|
|
36042
|
-
node[candidate] =
|
|
36743
|
+
for (const [candidate, child16] of entries) {
|
|
36744
|
+
node[candidate] = child16;
|
|
36043
36745
|
}
|
|
36044
36746
|
}
|
|
36045
36747
|
function applyChartBandFmts(seriesContainer, bandFmts, localName15, resolveColor2) {
|
|
@@ -36077,10 +36779,10 @@ function applyChartBandFmts(seriesContainer, bandFmts, localName15, resolveColor
|
|
|
36077
36779
|
localName15,
|
|
36078
36780
|
resolveColor2
|
|
36079
36781
|
);
|
|
36080
|
-
|
|
36782
|
+
setOrdered2(node, "spPr", spPr, ["idx", "spPr", "extLst"], localName15);
|
|
36081
36783
|
}
|
|
36082
36784
|
}
|
|
36083
|
-
|
|
36785
|
+
setOrdered2(
|
|
36084
36786
|
seriesContainer,
|
|
36085
36787
|
"bandFmts",
|
|
36086
36788
|
{ "c:bandFmt": updated },
|
|
@@ -36241,10 +36943,10 @@ function readCachedValues(refContainer, xmlLookup) {
|
|
|
36241
36943
|
if (!cacheNode) {
|
|
36242
36944
|
return [];
|
|
36243
36945
|
}
|
|
36244
|
-
const
|
|
36946
|
+
const points5 = xmlLookup.getChildrenArrayByLocalName(cacheNode, "pt");
|
|
36245
36947
|
const byIndex = /* @__PURE__ */ new Map();
|
|
36246
36948
|
let maxIndex = -1;
|
|
36247
|
-
for (const point of
|
|
36949
|
+
for (const point of points5) {
|
|
36248
36950
|
const idx = Number.parseInt(String(point["@_idx"] ?? ""), 10);
|
|
36249
36951
|
if (!Number.isInteger(idx) || idx < 0) {
|
|
36250
36952
|
continue;
|
|
@@ -36469,7 +37171,7 @@ function readChartAppearance(text, properties) {
|
|
|
36469
37171
|
}
|
|
36470
37172
|
|
|
36471
37173
|
// chart/read-style.ts
|
|
36472
|
-
var
|
|
37174
|
+
var child5 = (parent, name) => first(parent, name, CHART_COLOR_STYLE_NS);
|
|
36473
37175
|
function reference(node) {
|
|
36474
37176
|
if (!node) return void 0;
|
|
36475
37177
|
const out = { index: node.getAttribute("idx") ?? "" };
|
|
@@ -36480,10 +37182,10 @@ function reference(node) {
|
|
|
36480
37182
|
function entry(node) {
|
|
36481
37183
|
const out = {
|
|
36482
37184
|
sourceXml: buildXml(node),
|
|
36483
|
-
...readChartAppearance(
|
|
37185
|
+
...readChartAppearance(child5(node, "defRPr"), child5(node, "spPr"))
|
|
36484
37186
|
};
|
|
36485
37187
|
for (const key2 of ["fontRef", "lineRef", "fillRef", "effectRef"]) {
|
|
36486
|
-
const ref = reference(
|
|
37188
|
+
const ref = reference(child5(node, key2 === "lineRef" ? "lnRef" : key2));
|
|
36487
37189
|
if (ref) out[key2] = ref;
|
|
36488
37190
|
}
|
|
36489
37191
|
return out;
|
|
@@ -36574,11 +37276,11 @@ function cEnum(context, parent, local, allowed) {
|
|
|
36574
37276
|
return void 0;
|
|
36575
37277
|
}
|
|
36576
37278
|
function reportUnmodelled(context, element, handled) {
|
|
36577
|
-
for (const
|
|
36578
|
-
if (handled.has(
|
|
37279
|
+
for (const child16 of elements(element)) {
|
|
37280
|
+
if (handled.has(child16.localName)) continue;
|
|
36579
37281
|
context.issues.push({
|
|
36580
37282
|
code: "CHART_ELEMENT_NOT_MODELLED",
|
|
36581
|
-
message: `${path(
|
|
37283
|
+
message: `${path(child16)} is not modelled; it is kept only in the source part.`
|
|
36582
37284
|
});
|
|
36583
37285
|
}
|
|
36584
37286
|
}
|
|
@@ -36651,11 +37353,11 @@ function assignDefined(target, values) {
|
|
|
36651
37353
|
function parseCache(node) {
|
|
36652
37354
|
const cache2 = {
|
|
36653
37355
|
type: node.localName === "numCache" || node.localName === "numLit" ? "number" : "string",
|
|
36654
|
-
points: children(node, "pt", NS.c).map((
|
|
36655
|
-
const point = { value: cChild(
|
|
36656
|
-
const index = Number(attribute(
|
|
37356
|
+
points: children(node, "pt", NS.c).map((pt2) => {
|
|
37357
|
+
const point = { value: cChild(pt2, "v")?.textContent ?? "" };
|
|
37358
|
+
const index = Number(attribute(pt2, "idx") ?? Number.NaN);
|
|
36657
37359
|
if (Number.isInteger(index) && index >= 0) point.index = index;
|
|
36658
|
-
const formatCode3 = attribute(
|
|
37360
|
+
const formatCode3 = attribute(pt2, "formatCode");
|
|
36659
37361
|
if (formatCode3 !== void 0) point.formatCode = formatCode3;
|
|
36660
37362
|
return point;
|
|
36661
37363
|
})
|
|
@@ -37268,15 +37970,15 @@ function parsePlotArea(context, element) {
|
|
|
37268
37970
|
return plotArea;
|
|
37269
37971
|
}
|
|
37270
37972
|
const handled = new Set(PLOT_AREA);
|
|
37271
|
-
for (const
|
|
37272
|
-
if (CHART_GROUP_ELEMENTS[
|
|
37273
|
-
plotArea.groups.push(parseGroup(context,
|
|
37274
|
-
handled.add(
|
|
37973
|
+
for (const child16 of elements(element)) {
|
|
37974
|
+
if (CHART_GROUP_ELEMENTS[child16.localName]) {
|
|
37975
|
+
plotArea.groups.push(parseGroup(context, child16));
|
|
37976
|
+
handled.add(child16.localName);
|
|
37275
37977
|
}
|
|
37276
|
-
const axis = AXIS_ELEMENTS[
|
|
37978
|
+
const axis = AXIS_ELEMENTS[child16.localName];
|
|
37277
37979
|
if (axis) {
|
|
37278
|
-
plotArea.axes.push(parseAxis(context,
|
|
37279
|
-
handled.add(
|
|
37980
|
+
plotArea.axes.push(parseAxis(context, child16, axis));
|
|
37981
|
+
handled.add(child16.localName);
|
|
37280
37982
|
}
|
|
37281
37983
|
}
|
|
37282
37984
|
reportUnmodelled(context, element, handled);
|
|
@@ -37503,9 +38205,9 @@ function take(pool, index) {
|
|
|
37503
38205
|
const at = pool.findIndex((entry2) => entry2.index === index);
|
|
37504
38206
|
return at < 0 ? void 0 : pool.splice(at, 1)[0];
|
|
37505
38207
|
}
|
|
37506
|
-
function dataPointsFromNeutral(
|
|
38208
|
+
function dataPointsFromNeutral(points5, styled) {
|
|
37507
38209
|
if (!styled) return void 0;
|
|
37508
|
-
const pool = [...
|
|
38210
|
+
const pool = [...points5];
|
|
37509
38211
|
for (const point of styled) {
|
|
37510
38212
|
const neutral = take(pool, point.idx);
|
|
37511
38213
|
if (!neutral) continue;
|
|
@@ -38291,11 +38993,11 @@ var MARKER_SYMBOLS2 = /* @__PURE__ */ new Set([
|
|
|
38291
38993
|
"x",
|
|
38292
38994
|
"auto"
|
|
38293
38995
|
]);
|
|
38294
|
-
function
|
|
38996
|
+
function keyOf3(node, name, localName15) {
|
|
38295
38997
|
return node ? Object.keys(node).find((key2) => localName15(key2) === name) : void 0;
|
|
38296
38998
|
}
|
|
38297
38999
|
function nodesOf(node, name, localName15) {
|
|
38298
|
-
const key2 =
|
|
39000
|
+
const key2 = keyOf3(node, name, localName15);
|
|
38299
39001
|
const value = key2 ? node[key2] : void 0;
|
|
38300
39002
|
const values = Array.isArray(value) ? value : value ? [value] : [];
|
|
38301
39003
|
return values.filter(
|
|
@@ -38319,7 +39021,7 @@ function literalColor(fillNode, localName15, colorParser) {
|
|
|
38319
39021
|
return resolved;
|
|
38320
39022
|
}
|
|
38321
39023
|
}
|
|
38322
|
-
const srgbKey =
|
|
39024
|
+
const srgbKey = keyOf3(fillNode, "srgbClr", localName15);
|
|
38323
39025
|
const srgb = srgbKey ? fillNode[srgbKey] : void 0;
|
|
38324
39026
|
const val = srgb?.["@_val"];
|
|
38325
39027
|
return typeof val === "string" && /^[0-9A-Fa-f]{6}$/u.test(val) ? `#${val.toUpperCase()}` : void 0;
|
|
@@ -38329,7 +39031,7 @@ function parseTypedShapeProps(spPrNode, localName15, colorParser) {
|
|
|
38329
39031
|
return void 0;
|
|
38330
39032
|
}
|
|
38331
39033
|
const result = {};
|
|
38332
|
-
const solidFillKey =
|
|
39034
|
+
const solidFillKey = keyOf3(spPrNode, "solidFill", localName15);
|
|
38333
39035
|
const fillColor = literalColor(
|
|
38334
39036
|
solidFillKey ? spPrNode[solidFillKey] : void 0,
|
|
38335
39037
|
localName15,
|
|
@@ -38338,10 +39040,10 @@ function parseTypedShapeProps(spPrNode, localName15, colorParser) {
|
|
|
38338
39040
|
if (fillColor) {
|
|
38339
39041
|
result.fillColor = fillColor;
|
|
38340
39042
|
}
|
|
38341
|
-
const lnKey =
|
|
39043
|
+
const lnKey = keyOf3(spPrNode, "ln", localName15);
|
|
38342
39044
|
const ln = lnKey ? spPrNode[lnKey] : void 0;
|
|
38343
39045
|
if (ln) {
|
|
38344
|
-
const lnFillKey =
|
|
39046
|
+
const lnFillKey = keyOf3(ln, "solidFill", localName15);
|
|
38345
39047
|
const strokeColor = literalColor(
|
|
38346
39048
|
lnFillKey ? ln[lnFillKey] : void 0,
|
|
38347
39049
|
localName15,
|
|
@@ -38354,7 +39056,7 @@ function parseTypedShapeProps(spPrNode, localName15, colorParser) {
|
|
|
38354
39056
|
if (w !== void 0) {
|
|
38355
39057
|
result.strokeWidth = w / 12700;
|
|
38356
39058
|
}
|
|
38357
|
-
const dashKey =
|
|
39059
|
+
const dashKey = keyOf3(ln, "prstDash", localName15);
|
|
38358
39060
|
const dash = dashKey ? ln[dashKey]?.["@_val"] : void 0;
|
|
38359
39061
|
if (dash !== void 0 && dash !== null && String(dash).length > 0) {
|
|
38360
39062
|
result.strokeDashStyle = String(dash);
|
|
@@ -38366,20 +39068,20 @@ function parseTypedMarker(markerNode, localName15, colorParser) {
|
|
|
38366
39068
|
if (!markerNode) {
|
|
38367
39069
|
return void 0;
|
|
38368
39070
|
}
|
|
38369
|
-
const symbolKey =
|
|
39071
|
+
const symbolKey = keyOf3(markerNode, "symbol", localName15);
|
|
38370
39072
|
const symbolNode = symbolKey ? markerNode[symbolKey] : void 0;
|
|
38371
39073
|
const rawSymbol = String(symbolNode?.["@_val"] ?? "").trim();
|
|
38372
39074
|
if (!MARKER_SYMBOLS2.has(rawSymbol)) {
|
|
38373
39075
|
return void 0;
|
|
38374
39076
|
}
|
|
38375
39077
|
const marker = { symbol: rawSymbol };
|
|
38376
|
-
const sizeKey =
|
|
39078
|
+
const sizeKey = keyOf3(markerNode, "size", localName15);
|
|
38377
39079
|
const sizeNode = sizeKey ? markerNode[sizeKey] : void 0;
|
|
38378
39080
|
const size = Number(sizeNode?.["@_val"]);
|
|
38379
39081
|
if (Number.isInteger(size) && size >= 2 && size <= 72) {
|
|
38380
39082
|
marker.size = size;
|
|
38381
39083
|
}
|
|
38382
|
-
const spPrKey =
|
|
39084
|
+
const spPrKey = keyOf3(markerNode, "spPr", localName15);
|
|
38383
39085
|
const spPr = parseTypedShapeProps(
|
|
38384
39086
|
spPrKey ? markerNode[spPrKey] : void 0,
|
|
38385
39087
|
localName15,
|
|
@@ -38424,7 +39126,7 @@ function parseTypedTextStyle(txPrNode, localName15, colorParser) {
|
|
|
38424
39126
|
return Object.keys(style).length > 0 ? style : void 0;
|
|
38425
39127
|
}
|
|
38426
39128
|
function resolveSpPrOverride(node, value, localName15, colorParser) {
|
|
38427
|
-
const existingKey =
|
|
39129
|
+
const existingKey = keyOf3(node, "spPr", localName15);
|
|
38428
39130
|
const existing = existingKey ? node[existingKey] : void 0;
|
|
38429
39131
|
if (value.shapeProperties && JSON.stringify(parseTypedShapeProps(existing, localName15, colorParser)) !== JSON.stringify(value.shapeProperties)) {
|
|
38430
39132
|
return writeChartShapeProps(
|
|
@@ -38437,7 +39139,7 @@ function resolveSpPrOverride(node, value, localName15, colorParser) {
|
|
|
38437
39139
|
return value.shapePropertiesXml;
|
|
38438
39140
|
}
|
|
38439
39141
|
function resolveTxPrOverride(node, value, localName15, colorParser) {
|
|
38440
|
-
const existingKey =
|
|
39142
|
+
const existingKey = keyOf3(node, "txPr", localName15);
|
|
38441
39143
|
const existing = existingKey ? node[existingKey] : void 0;
|
|
38442
39144
|
if (value.textStyle && JSON.stringify(parseTypedTextStyle(existing, localName15, colorParser)) !== JSON.stringify(value.textStyle)) {
|
|
38443
39145
|
const authoredDefRPr = existing ? resolveDefRPr(existing, localName15) : void 0;
|
|
@@ -38450,7 +39152,7 @@ function resolveTxPrOverride(node, value, localName15, colorParser) {
|
|
|
38450
39152
|
return value.txPrXml;
|
|
38451
39153
|
}
|
|
38452
39154
|
function resolveMarkerOverride(node, value, localName15, colorParser) {
|
|
38453
|
-
const existingKey =
|
|
39155
|
+
const existingKey = keyOf3(node, "marker", localName15);
|
|
38454
39156
|
const existing = existingKey ? node[existingKey] : void 0;
|
|
38455
39157
|
if (value.marker && JSON.stringify(parseTypedMarker(existing, localName15, colorParser)) !== JSON.stringify(value.marker)) {
|
|
38456
39158
|
return buildChartMarkerXml(
|
|
@@ -38471,12 +39173,12 @@ function prefixOf2(key2) {
|
|
|
38471
39173
|
return key2?.includes(":") ? key2.slice(0, key2.lastIndexOf(":")) : "";
|
|
38472
39174
|
}
|
|
38473
39175
|
function cloneChild(node, name, localName15) {
|
|
38474
|
-
const key2 =
|
|
39176
|
+
const key2 = keyOf3(node, name, localName15);
|
|
38475
39177
|
const value = key2 ? node[key2] : void 0;
|
|
38476
39178
|
return value && typeof value === "object" && !Array.isArray(value) ? cloneXmlObject(value) : void 0;
|
|
38477
39179
|
}
|
|
38478
39180
|
function parseChartPivotFormats(chart, localName15, colorParser) {
|
|
38479
|
-
const rootKey =
|
|
39181
|
+
const rootKey = keyOf3(chart, "pivotFmts", localName15);
|
|
38480
39182
|
const value = rootKey ? chart?.[rootKey] : void 0;
|
|
38481
39183
|
if (!value || typeof value !== "object" || Array.isArray(value)) {
|
|
38482
39184
|
return void 0;
|
|
@@ -38484,17 +39186,17 @@ function parseChartPivotFormats(chart, localName15, colorParser) {
|
|
|
38484
39186
|
const root = value;
|
|
38485
39187
|
const formats = [];
|
|
38486
39188
|
for (const node of nodesOf(root, "pivotFmt", localName15)) {
|
|
38487
|
-
const idxKey =
|
|
39189
|
+
const idxKey = keyOf3(node, "idx", localName15);
|
|
38488
39190
|
const idxNode = idxKey ? node[idxKey] : void 0;
|
|
38489
39191
|
const index = idxNode && typeof idxNode === "object" && !Array.isArray(idxNode) ? unsigned(idxNode["@_val"]) : void 0;
|
|
38490
39192
|
if (index === void 0) {
|
|
38491
39193
|
continue;
|
|
38492
39194
|
}
|
|
38493
|
-
const spPrKey =
|
|
39195
|
+
const spPrKey = keyOf3(node, "spPr", localName15);
|
|
38494
39196
|
const spPrNode = spPrKey ? node[spPrKey] : void 0;
|
|
38495
|
-
const txPrKey =
|
|
39197
|
+
const txPrKey = keyOf3(node, "txPr", localName15);
|
|
38496
39198
|
const txPrNode = txPrKey ? node[txPrKey] : void 0;
|
|
38497
|
-
const markerKey =
|
|
39199
|
+
const markerKey = keyOf3(node, "marker", localName15);
|
|
38498
39200
|
const markerNode = markerKey ? node[markerKey] : void 0;
|
|
38499
39201
|
const shapeProperties2 = parseTypedShapeProps(spPrNode, localName15, colorParser);
|
|
38500
39202
|
const textStyle = parseTypedTextStyle(txPrNode, localName15, colorParser);
|
|
@@ -38518,7 +39220,7 @@ function setChild(node, name, value, prefix, localName15) {
|
|
|
38518
39220
|
if (value === void 0) {
|
|
38519
39221
|
return;
|
|
38520
39222
|
}
|
|
38521
|
-
const key2 =
|
|
39223
|
+
const key2 = keyOf3(node, name, localName15);
|
|
38522
39224
|
if (value === null) {
|
|
38523
39225
|
if (key2) {
|
|
38524
39226
|
delete node[key2];
|
|
@@ -38532,7 +39234,7 @@ function buildFormat(value, prefix, localName15, colorParser) {
|
|
|
38532
39234
|
throw new RangeError(`pivotFmt.index must be an integer from 0 through ${MAX_UINT}`);
|
|
38533
39235
|
}
|
|
38534
39236
|
const node = cloneXmlObject(value.rawXml) ?? {};
|
|
38535
|
-
const idxKey =
|
|
39237
|
+
const idxKey = keyOf3(node, "idx", localName15) ?? `${prefix}:idx`;
|
|
38536
39238
|
const idxValue = node[idxKey];
|
|
38537
39239
|
const idx = idxValue && typeof idxValue === "object" && !Array.isArray(idxValue) ? idxValue : {};
|
|
38538
39240
|
idx["@_val"] = String(value.index);
|
|
@@ -38565,21 +39267,21 @@ function buildFormat(value, prefix, localName15, colorParser) {
|
|
|
38565
39267
|
delete node[key2];
|
|
38566
39268
|
}
|
|
38567
39269
|
for (const name of CHILDREN) {
|
|
38568
|
-
for (const [key2,
|
|
39270
|
+
for (const [key2, child16] of entries) {
|
|
38569
39271
|
if (localName15(key2) === name) {
|
|
38570
|
-
node[key2] =
|
|
39272
|
+
node[key2] = child16;
|
|
38571
39273
|
}
|
|
38572
39274
|
}
|
|
38573
39275
|
}
|
|
38574
|
-
for (const [key2,
|
|
39276
|
+
for (const [key2, child16] of entries) {
|
|
38575
39277
|
if (!CHILDREN.includes(localName15(key2))) {
|
|
38576
|
-
node[key2] =
|
|
39278
|
+
node[key2] = child16;
|
|
38577
39279
|
}
|
|
38578
39280
|
}
|
|
38579
39281
|
return node;
|
|
38580
39282
|
}
|
|
38581
39283
|
function applyChartPivotFormats(chart, value, localName15, colorParser) {
|
|
38582
|
-
const rootKey =
|
|
39284
|
+
const rootKey = keyOf3(chart, "pivotFmts", localName15);
|
|
38583
39285
|
if (value === null) {
|
|
38584
39286
|
if (rootKey) {
|
|
38585
39287
|
delete chart[rootKey];
|
|
@@ -38589,9 +39291,9 @@ function applyChartPivotFormats(chart, value, localName15, colorParser) {
|
|
|
38589
39291
|
if (!value.formats.length) {
|
|
38590
39292
|
throw new RangeError("pivotFormats.formats must not be empty");
|
|
38591
39293
|
}
|
|
38592
|
-
const prefix = prefixOf2(rootKey ??
|
|
39294
|
+
const prefix = prefixOf2(rootKey ?? keyOf3(chart, "plotArea", localName15)) || "c";
|
|
38593
39295
|
const root = cloneXmlObject(value.rawXml) ?? {};
|
|
38594
|
-
const itemKey =
|
|
39296
|
+
const itemKey = keyOf3(root, "pivotFmt", localName15) ?? `${prefix}:pivotFmt`;
|
|
38595
39297
|
root[itemKey] = value.formats.map((item) => buildFormat(item, prefix, localName15, colorParser));
|
|
38596
39298
|
if (rootKey) {
|
|
38597
39299
|
chart[rootKey] = root;
|
|
@@ -38602,12 +39304,12 @@ function applyChartPivotFormats(chart, value, localName15, colorParser) {
|
|
|
38602
39304
|
delete chart[key2];
|
|
38603
39305
|
}
|
|
38604
39306
|
let inserted = false;
|
|
38605
|
-
for (const [key2,
|
|
39307
|
+
for (const [key2, child16] of entries) {
|
|
38606
39308
|
if (!inserted && ROOT_FOLLOWERS.includes(localName15(key2))) {
|
|
38607
39309
|
chart[`${prefix}:pivotFmts`] = root;
|
|
38608
39310
|
inserted = true;
|
|
38609
39311
|
}
|
|
38610
|
-
chart[key2] =
|
|
39312
|
+
chart[key2] = child16;
|
|
38611
39313
|
}
|
|
38612
39314
|
if (!inserted) {
|
|
38613
39315
|
chart[`${prefix}:pivotFmts`] = root;
|
|
@@ -38624,16 +39326,16 @@ var HEADER_CHILDREN = [
|
|
|
38624
39326
|
"firstFooter"
|
|
38625
39327
|
];
|
|
38626
39328
|
var ORIENTATIONS = /* @__PURE__ */ new Set(["default", "portrait", "landscape"]);
|
|
38627
|
-
function
|
|
39329
|
+
function keyOf4(node, name, localName15) {
|
|
38628
39330
|
return node ? Object.keys(node).find((key2) => localName15(key2) === name) : void 0;
|
|
38629
39331
|
}
|
|
38630
|
-
function
|
|
38631
|
-
const key2 =
|
|
39332
|
+
function child6(node, name, localName15) {
|
|
39333
|
+
const key2 = keyOf4(node, name, localName15);
|
|
38632
39334
|
const value = key2 ? node?.[key2] : void 0;
|
|
38633
39335
|
return value && typeof value === "object" && !Array.isArray(value) ? value : void 0;
|
|
38634
39336
|
}
|
|
38635
39337
|
function childText(node, name, localName15) {
|
|
38636
|
-
const key2 =
|
|
39338
|
+
const key2 = keyOf4(node, name, localName15);
|
|
38637
39339
|
if (!key2) {
|
|
38638
39340
|
return void 0;
|
|
38639
39341
|
}
|
|
@@ -38739,15 +39441,15 @@ function parsePageSetup(node) {
|
|
|
38739
39441
|
return result;
|
|
38740
39442
|
}
|
|
38741
39443
|
function parseChartPrintSettings(chartSpace, localName15) {
|
|
38742
|
-
const node =
|
|
39444
|
+
const node = child6(chartSpace, "printSettings", localName15);
|
|
38743
39445
|
if (!node) {
|
|
38744
39446
|
return void 0;
|
|
38745
39447
|
}
|
|
38746
|
-
const header =
|
|
38747
|
-
const margins =
|
|
39448
|
+
const header = child6(node, "headerFooter", localName15);
|
|
39449
|
+
const margins = child6(node, "pageMargins", localName15);
|
|
38748
39450
|
const parsedMargins = margins ? parseMargins(margins) : void 0;
|
|
38749
|
-
const setup =
|
|
38750
|
-
const legacy =
|
|
39451
|
+
const setup = child6(node, "pageSetup", localName15);
|
|
39452
|
+
const legacy = child6(node, "legacyDrawingHF", localName15);
|
|
38751
39453
|
const relationshipId = legacy ? Object.entries(legacy).find(([key2]) => key2.startsWith("@_") && localName15(key2) === "id")?.[1] : void 0;
|
|
38752
39454
|
return {
|
|
38753
39455
|
...header ? { headerFooter: parseHeaderFooter(header, localName15) } : {},
|
|
@@ -38769,11 +39471,11 @@ var HEADER_CHILDREN2 = [
|
|
|
38769
39471
|
];
|
|
38770
39472
|
var PRINT_CHILDREN = ["headerFooter", "pageMargins", "pageSetup", "legacyDrawingHF"];
|
|
38771
39473
|
var ORIENTATIONS2 = /* @__PURE__ */ new Set(["default", "portrait", "landscape"]);
|
|
38772
|
-
function
|
|
39474
|
+
function keyOf5(node, name, localName15) {
|
|
38773
39475
|
return node ? Object.keys(node).find((key2) => localName15(key2) === name) : void 0;
|
|
38774
39476
|
}
|
|
38775
|
-
function
|
|
38776
|
-
const key2 =
|
|
39477
|
+
function child7(node, name, localName15) {
|
|
39478
|
+
const key2 = keyOf5(node, name, localName15);
|
|
38777
39479
|
const value = key2 ? node?.[key2] : void 0;
|
|
38778
39480
|
return value && typeof value === "object" && !Array.isArray(value) ? value : void 0;
|
|
38779
39481
|
}
|
|
@@ -38812,7 +39514,7 @@ function replaceChildrenInOrder(node, names, localName15) {
|
|
|
38812
39514
|
function applyHeaderFooter(existing, value, localName15, prefix) {
|
|
38813
39515
|
const node = cloneXmlObject(existing) ?? cloneXmlObject(value.rawXml) ?? {};
|
|
38814
39516
|
for (const name of HEADER_CHILDREN2) {
|
|
38815
|
-
const oldKey =
|
|
39517
|
+
const oldKey = keyOf5(node, name, localName15);
|
|
38816
39518
|
if (value[name] === void 0) {
|
|
38817
39519
|
if (oldKey) {
|
|
38818
39520
|
delete node[oldKey];
|
|
@@ -38867,7 +39569,7 @@ function applyPageSetup(existing, value) {
|
|
|
38867
39569
|
return node;
|
|
38868
39570
|
}
|
|
38869
39571
|
function setChild2(node, name, value, localName15, prefix) {
|
|
38870
|
-
const oldKey =
|
|
39572
|
+
const oldKey = keyOf5(node, name, localName15);
|
|
38871
39573
|
if (value === null) {
|
|
38872
39574
|
if (oldKey) {
|
|
38873
39575
|
delete node[oldKey];
|
|
@@ -38877,7 +39579,7 @@ function setChild2(node, name, value, localName15, prefix) {
|
|
|
38877
39579
|
}
|
|
38878
39580
|
}
|
|
38879
39581
|
function applyChartPrintSettings(chartSpace, settings, localName15) {
|
|
38880
|
-
const rootKey =
|
|
39582
|
+
const rootKey = keyOf5(chartSpace, "printSettings", localName15);
|
|
38881
39583
|
if (settings === null) {
|
|
38882
39584
|
if (rootKey) {
|
|
38883
39585
|
delete chartSpace[rootKey];
|
|
@@ -38886,13 +39588,13 @@ function applyChartPrintSettings(chartSpace, settings, localName15) {
|
|
|
38886
39588
|
}
|
|
38887
39589
|
const existing = rootKey ? chartSpace[rootKey] : void 0;
|
|
38888
39590
|
const node = cloneXmlObject(existing) ?? cloneXmlObject(settings.rawXml) ?? {};
|
|
38889
|
-
const prefix = prefixOf3(rootKey ??
|
|
39591
|
+
const prefix = prefixOf3(rootKey ?? keyOf5(chartSpace, "chart", localName15)) || "c";
|
|
38890
39592
|
if (settings.headerFooter !== void 0) {
|
|
38891
39593
|
setChild2(
|
|
38892
39594
|
node,
|
|
38893
39595
|
"headerFooter",
|
|
38894
39596
|
settings.headerFooter === null ? null : applyHeaderFooter(
|
|
38895
|
-
|
|
39597
|
+
child7(node, "headerFooter", localName15),
|
|
38896
39598
|
settings.headerFooter,
|
|
38897
39599
|
localName15,
|
|
38898
39600
|
prefix
|
|
@@ -38905,7 +39607,7 @@ function applyChartPrintSettings(chartSpace, settings, localName15) {
|
|
|
38905
39607
|
setChild2(
|
|
38906
39608
|
node,
|
|
38907
39609
|
"pageMargins",
|
|
38908
|
-
settings.pageMargins === null ? null : applyMargins(
|
|
39610
|
+
settings.pageMargins === null ? null : applyMargins(child7(node, "pageMargins", localName15), settings.pageMargins),
|
|
38909
39611
|
localName15,
|
|
38910
39612
|
prefix
|
|
38911
39613
|
);
|
|
@@ -38914,7 +39616,7 @@ function applyChartPrintSettings(chartSpace, settings, localName15) {
|
|
|
38914
39616
|
setChild2(
|
|
38915
39617
|
node,
|
|
38916
39618
|
"pageSetup",
|
|
38917
|
-
settings.pageSetup === null ? null : applyPageSetup(
|
|
39619
|
+
settings.pageSetup === null ? null : applyPageSetup(child7(node, "pageSetup", localName15), settings.pageSetup),
|
|
38918
39620
|
localName15,
|
|
38919
39621
|
prefix
|
|
38920
39622
|
);
|
|
@@ -38923,7 +39625,7 @@ function applyChartPrintSettings(chartSpace, settings, localName15) {
|
|
|
38923
39625
|
if (settings.legacyDrawingHeaderFooterRelationshipId === null) {
|
|
38924
39626
|
setChild2(node, "legacyDrawingHF", null, localName15, prefix);
|
|
38925
39627
|
} else {
|
|
38926
|
-
const legacy = cloneXmlObject(
|
|
39628
|
+
const legacy = cloneXmlObject(child7(node, "legacyDrawingHF", localName15)) ?? {};
|
|
38927
39629
|
const idKey = Object.keys(legacy).find(
|
|
38928
39630
|
(key2) => key2.startsWith("@_") && localName15(key2) === "id"
|
|
38929
39631
|
);
|
|
@@ -38959,7 +39661,7 @@ function insertPrintSettings(chartSpace, node, prefix, localName15) {
|
|
|
38959
39661
|
// pptx/core/utils/chart-protection.ts
|
|
38960
39662
|
var CX_NAMESPACE = "http://schemas.microsoft.com/office/drawing/2014/chartex";
|
|
38961
39663
|
var FIELDS3 = ["chartObject", "data", "formatting", "selection", "userInterface"];
|
|
38962
|
-
function
|
|
39664
|
+
function keyOf6(node, name, localName15) {
|
|
38963
39665
|
return node ? Object.keys(node).find((key2) => localName15(key2) === name) : void 0;
|
|
38964
39666
|
}
|
|
38965
39667
|
function prefixOf4(key2) {
|
|
@@ -38990,7 +39692,7 @@ function parseChartProtection(chartSpace, localName15) {
|
|
|
38990
39692
|
if (chartSpace && isCxChartSpace(chartSpace)) {
|
|
38991
39693
|
return void 0;
|
|
38992
39694
|
}
|
|
38993
|
-
const protectionKey =
|
|
39695
|
+
const protectionKey = keyOf6(chartSpace, "protection", localName15);
|
|
38994
39696
|
const value = protectionKey ? chartSpace?.[protectionKey] : void 0;
|
|
38995
39697
|
if (!value || typeof value !== "object" || Array.isArray(value)) {
|
|
38996
39698
|
return void 0;
|
|
@@ -38998,10 +39700,10 @@ function parseChartProtection(chartSpace, localName15) {
|
|
|
38998
39700
|
const node = value;
|
|
38999
39701
|
const result = { rawXml: cloneXmlObject(node) ?? {} };
|
|
39000
39702
|
for (const field of FIELDS3) {
|
|
39001
|
-
const childKey2 =
|
|
39002
|
-
const
|
|
39003
|
-
if (
|
|
39004
|
-
const parsed = parseBoolean2(
|
|
39703
|
+
const childKey2 = keyOf6(node, field, localName15);
|
|
39704
|
+
const child16 = childKey2 ? node[childKey2] : void 0;
|
|
39705
|
+
if (child16 && typeof child16 === "object" && !Array.isArray(child16)) {
|
|
39706
|
+
const parsed = parseBoolean2(child16);
|
|
39005
39707
|
if (parsed !== void 0) {
|
|
39006
39708
|
result[field] = parsed;
|
|
39007
39709
|
}
|
|
@@ -39015,7 +39717,7 @@ function applyField(node, field, value, prefix, localName15) {
|
|
|
39015
39717
|
if (value === void 0) {
|
|
39016
39718
|
return;
|
|
39017
39719
|
}
|
|
39018
|
-
const existingKey =
|
|
39720
|
+
const existingKey = keyOf6(node, field, localName15);
|
|
39019
39721
|
if (value === null) {
|
|
39020
39722
|
if (existingKey) {
|
|
39021
39723
|
delete node[existingKey];
|
|
@@ -39030,9 +39732,9 @@ function applyField(node, field, value, prefix, localName15) {
|
|
|
39030
39732
|
if (existing && typeof existing === "object" && !Array.isArray(existing) && parseBoolean2(existing) === value) {
|
|
39031
39733
|
return;
|
|
39032
39734
|
}
|
|
39033
|
-
const
|
|
39034
|
-
|
|
39035
|
-
node[key2] =
|
|
39735
|
+
const child16 = existing && typeof existing === "object" && !Array.isArray(existing) ? existing : {};
|
|
39736
|
+
child16["@_val"] = value ? "1" : "0";
|
|
39737
|
+
node[key2] = child16;
|
|
39036
39738
|
}
|
|
39037
39739
|
function reorderKnownChildren(node, localName15) {
|
|
39038
39740
|
const entries = Object.entries(node);
|
|
@@ -39052,7 +39754,7 @@ function applyChartProtection(chartSpace, value, localName15) {
|
|
|
39052
39754
|
if (isCxChartSpace(chartSpace)) {
|
|
39053
39755
|
return;
|
|
39054
39756
|
}
|
|
39055
|
-
const protectionKey =
|
|
39757
|
+
const protectionKey = keyOf6(chartSpace, "protection", localName15);
|
|
39056
39758
|
if (value === null) {
|
|
39057
39759
|
if (protectionKey) {
|
|
39058
39760
|
delete chartSpace[protectionKey];
|
|
@@ -39061,7 +39763,7 @@ function applyChartProtection(chartSpace, value, localName15) {
|
|
|
39061
39763
|
}
|
|
39062
39764
|
const existing = protectionKey ? chartSpace[protectionKey] : void 0;
|
|
39063
39765
|
const node = value.rawXml !== void 0 ? cloneXmlObject(value.rawXml) ?? {} : existing && typeof existing === "object" && !Array.isArray(existing) ? existing : {};
|
|
39064
|
-
const chartKey =
|
|
39766
|
+
const chartKey = keyOf6(chartSpace, "chart", localName15);
|
|
39065
39767
|
const prefix = prefixOf4(protectionKey ?? chartKey) || "c";
|
|
39066
39768
|
for (const field of FIELDS3) {
|
|
39067
39769
|
applyField(node, field, value[field], prefix, localName15);
|
|
@@ -39076,12 +39778,12 @@ function applyChartProtection(chartSpace, value, localName15) {
|
|
|
39076
39778
|
delete chartSpace[key2];
|
|
39077
39779
|
}
|
|
39078
39780
|
let inserted = false;
|
|
39079
|
-
for (const [key2,
|
|
39781
|
+
for (const [key2, child16] of entries) {
|
|
39080
39782
|
if (!inserted && localName15(key2) === "chart") {
|
|
39081
39783
|
chartSpace[qualified2(prefix, "protection")] = node;
|
|
39082
39784
|
inserted = true;
|
|
39083
39785
|
}
|
|
39084
|
-
chartSpace[key2] =
|
|
39786
|
+
chartSpace[key2] = child16;
|
|
39085
39787
|
}
|
|
39086
39788
|
if (!inserted) {
|
|
39087
39789
|
chartSpace[qualified2(prefix, "protection")] = node;
|
|
@@ -39164,7 +39866,7 @@ function parseChartStyleDefinition(styleRoot, xmlLookup, resolveSchemeColor, par
|
|
|
39164
39866
|
// pptx/core/utils/chart-pivot-source.ts
|
|
39165
39867
|
var MAX_UINT2 = 4294967295;
|
|
39166
39868
|
var CHILDREN2 = ["name", "fmtId", "extLst"];
|
|
39167
|
-
function
|
|
39869
|
+
function keyOf7(node, name, localName15) {
|
|
39168
39870
|
return node ? Object.keys(node).find((key2) => localName15(key2) === name) : void 0;
|
|
39169
39871
|
}
|
|
39170
39872
|
function prefixOf5(key2) {
|
|
@@ -39188,14 +39890,14 @@ function parseUnsigned(value) {
|
|
|
39188
39890
|
return Number.isSafeInteger(parsed) && parsed <= MAX_UINT2 ? parsed : void 0;
|
|
39189
39891
|
}
|
|
39190
39892
|
function parseChartPivotSource(chartSpace, localName15) {
|
|
39191
|
-
const rootKey =
|
|
39893
|
+
const rootKey = keyOf7(chartSpace, "pivotSource", localName15);
|
|
39192
39894
|
const value = rootKey ? chartSpace?.[rootKey] : void 0;
|
|
39193
39895
|
if (!value || typeof value !== "object" || Array.isArray(value)) {
|
|
39194
39896
|
return void 0;
|
|
39195
39897
|
}
|
|
39196
39898
|
const node = value;
|
|
39197
|
-
const nameKey =
|
|
39198
|
-
const fmtKey =
|
|
39899
|
+
const nameKey = keyOf7(node, "name", localName15);
|
|
39900
|
+
const fmtKey = keyOf7(node, "fmtId", localName15);
|
|
39199
39901
|
const name = nameKey ? textOf(node[nameKey]) : void 0;
|
|
39200
39902
|
const fmtNode = fmtKey ? node[fmtKey] : void 0;
|
|
39201
39903
|
const formatId = fmtNode && typeof fmtNode === "object" && !Array.isArray(fmtNode) ? parseUnsigned(fmtNode["@_val"]) : void 0;
|
|
@@ -39219,7 +39921,7 @@ function reorder(node, localName15) {
|
|
|
39219
39921
|
}
|
|
39220
39922
|
}
|
|
39221
39923
|
function applyChartPivotSource(chartSpace, value, localName15) {
|
|
39222
|
-
const rootKey =
|
|
39924
|
+
const rootKey = keyOf7(chartSpace, "pivotSource", localName15);
|
|
39223
39925
|
if (value === null) {
|
|
39224
39926
|
if (rootKey) {
|
|
39225
39927
|
delete chartSpace[rootKey];
|
|
@@ -39231,9 +39933,9 @@ function applyChartPivotSource(chartSpace, value, localName15) {
|
|
|
39231
39933
|
}
|
|
39232
39934
|
const existing = rootKey ? chartSpace[rootKey] : void 0;
|
|
39233
39935
|
const node = value.rawXml ? cloneXmlObject(value.rawXml) ?? {} : existing && typeof existing === "object" && !Array.isArray(existing) ? existing : {};
|
|
39234
|
-
const chartKey =
|
|
39936
|
+
const chartKey = keyOf7(chartSpace, "chart", localName15);
|
|
39235
39937
|
const prefix = prefixOf5(rootKey ?? chartKey) || "c";
|
|
39236
|
-
const nameKey =
|
|
39938
|
+
const nameKey = keyOf7(node, "name", localName15) ?? `${prefix}:name`;
|
|
39237
39939
|
const nameNode = node[nameKey];
|
|
39238
39940
|
if (textOf(nameNode) !== value.name) {
|
|
39239
39941
|
if (nameNode && typeof nameNode === "object" && !Array.isArray(nameNode)) {
|
|
@@ -39242,7 +39944,7 @@ function applyChartPivotSource(chartSpace, value, localName15) {
|
|
|
39242
39944
|
node[nameKey] = { "#text": value.name };
|
|
39243
39945
|
}
|
|
39244
39946
|
}
|
|
39245
|
-
const fmtKey =
|
|
39947
|
+
const fmtKey = keyOf7(node, "fmtId", localName15) ?? `${prefix}:fmtId`;
|
|
39246
39948
|
const fmtValue = node[fmtKey];
|
|
39247
39949
|
const fmtNode = fmtValue && typeof fmtValue === "object" && !Array.isArray(fmtValue) ? fmtValue : {};
|
|
39248
39950
|
if (parseUnsigned(fmtNode["@_val"]) !== value.formatId) {
|
|
@@ -39259,12 +39961,12 @@ function applyChartPivotSource(chartSpace, value, localName15) {
|
|
|
39259
39961
|
delete chartSpace[key2];
|
|
39260
39962
|
}
|
|
39261
39963
|
let inserted = false;
|
|
39262
|
-
for (const [key2,
|
|
39964
|
+
for (const [key2, child16] of entries) {
|
|
39263
39965
|
if (!inserted && ["protection", "chart"].includes(localName15(key2))) {
|
|
39264
39966
|
chartSpace[`${prefix}:pivotSource`] = node;
|
|
39265
39967
|
inserted = true;
|
|
39266
39968
|
}
|
|
39267
|
-
chartSpace[key2] =
|
|
39969
|
+
chartSpace[key2] = child16;
|
|
39268
39970
|
}
|
|
39269
39971
|
if (!inserted) {
|
|
39270
39972
|
chartSpace[`${prefix}:pivotSource`] = node;
|
|
@@ -39298,10 +40000,10 @@ function extractMultiLevelCategoryValues(categoryContainer, xmlLookup) {
|
|
|
39298
40000
|
};
|
|
39299
40001
|
}
|
|
39300
40002
|
function expandCategoryLevel(lvlNode, levelIndex, declaredCount, xmlLookup) {
|
|
39301
|
-
const
|
|
40003
|
+
const points5 = xmlLookup.getChildrenArrayByLocalName(lvlNode, "pt");
|
|
39302
40004
|
const byIndex = /* @__PURE__ */ new Map();
|
|
39303
40005
|
let maxIndex = -1;
|
|
39304
|
-
for (const point of
|
|
40006
|
+
for (const point of points5) {
|
|
39305
40007
|
const index = Number.parseInt(String(point?.["@_idx"] ?? "0"), 10);
|
|
39306
40008
|
if (!Number.isFinite(index) || index < 0) {
|
|
39307
40009
|
continue;
|
|
@@ -39333,19 +40035,19 @@ function expandCategoryLevel(lvlNode, levelIndex, declaredCount, xmlLookup) {
|
|
|
39333
40035
|
}
|
|
39334
40036
|
|
|
39335
40037
|
// pptx/core/utils/smartart-merged-text-label.ts
|
|
39336
|
-
function prSetOf(
|
|
39337
|
-
const key2 = Object.keys(
|
|
39338
|
-
const value = key2 ?
|
|
40038
|
+
function prSetOf(pt2, localName15) {
|
|
40039
|
+
const key2 = Object.keys(pt2).find((candidate) => localName15(candidate) === "prSet");
|
|
40040
|
+
const value = key2 ? pt2[key2] : void 0;
|
|
39339
40041
|
return Array.isArray(value) ? value[0] : value;
|
|
39340
40042
|
}
|
|
39341
|
-
function readPresPoints(
|
|
40043
|
+
function readPresPoints(points5, localName15) {
|
|
39342
40044
|
const byId = /* @__PURE__ */ new Map();
|
|
39343
|
-
for (const
|
|
39344
|
-
if (!
|
|
40045
|
+
for (const pt2 of points5) {
|
|
40046
|
+
if (!pt2 || typeof pt2 !== "object" || String(pt2["@_type"] ?? "").trim() !== "pres") {
|
|
39345
40047
|
continue;
|
|
39346
40048
|
}
|
|
39347
|
-
const id = String(
|
|
39348
|
-
const prSet = prSetOf(
|
|
40049
|
+
const id = String(pt2["@_modelId"] ?? "").trim();
|
|
40050
|
+
const prSet = prSetOf(pt2, localName15);
|
|
39349
40051
|
if (!id || !prSet) {
|
|
39350
40052
|
continue;
|
|
39351
40053
|
}
|
|
@@ -39372,10 +40074,10 @@ function algorithmByLayoutNodeName(root) {
|
|
|
39372
40074
|
}
|
|
39373
40075
|
return byName;
|
|
39374
40076
|
}
|
|
39375
|
-
function resolveSmartArtMergedTextLabels(
|
|
40077
|
+
function resolveSmartArtMergedTextLabels(points5, connections, layout, localName15) {
|
|
39376
40078
|
const result = /* @__PURE__ */ new Map();
|
|
39377
40079
|
const algorithms = algorithmByLayoutNodeName(layout?.rootNode);
|
|
39378
|
-
const presPoints = readPresPoints(
|
|
40080
|
+
const presPoints = readPresPoints(points5, localName15);
|
|
39379
40081
|
if (algorithms.size === 0 || presPoints.size === 0) {
|
|
39380
40082
|
return result;
|
|
39381
40083
|
}
|
|
@@ -39391,14 +40093,14 @@ function resolveSmartArtMergedTextLabels(points4, connections, layout, localName
|
|
|
39391
40093
|
}
|
|
39392
40094
|
}
|
|
39393
40095
|
for (const siblingIds of childrenByParent.values()) {
|
|
39394
|
-
const siblings = siblingIds.map((id) => presPoints.get(id)).filter((
|
|
39395
|
-
const texts = siblings.filter((
|
|
40096
|
+
const siblings = siblingIds.map((id) => presPoints.get(id)).filter((pt2) => Boolean(pt2?.styleLabel && presented.has(pt2.id)));
|
|
40097
|
+
const texts = siblings.filter((pt2) => algorithms.get(pt2.name) === "tx");
|
|
39396
40098
|
for (const shape of siblings) {
|
|
39397
40099
|
if (algorithms.get(shape.name) === "tx" || result.has(shape.id)) {
|
|
39398
40100
|
continue;
|
|
39399
40101
|
}
|
|
39400
40102
|
const text = texts.find(
|
|
39401
|
-
(
|
|
40103
|
+
(pt2) => pt2.assocId === shape.assocId && pt2.styleLabel !== shape.styleLabel
|
|
39402
40104
|
);
|
|
39403
40105
|
if (text) {
|
|
39404
40106
|
result.set(shape.id, {
|
|
@@ -39418,13 +40120,13 @@ function smartArtMergedTextColor(label, textFillByLabel) {
|
|
|
39418
40120
|
}
|
|
39419
40121
|
return list[label.styleIndex % list.length];
|
|
39420
40122
|
}
|
|
39421
|
-
function resolveSmartArtMergedTextColors(
|
|
40123
|
+
function resolveSmartArtMergedTextColors(points5, connections, layout, textFillByLabel, localName15) {
|
|
39422
40124
|
const colors = /* @__PURE__ */ new Map();
|
|
39423
40125
|
if (!textFillByLabel) {
|
|
39424
40126
|
return colors;
|
|
39425
40127
|
}
|
|
39426
40128
|
for (const [shapeId, label] of resolveSmartArtMergedTextLabels(
|
|
39427
|
-
|
|
40129
|
+
points5,
|
|
39428
40130
|
connections,
|
|
39429
40131
|
layout,
|
|
39430
40132
|
localName15
|
|
@@ -39438,7 +40140,7 @@ function resolveSmartArtMergedTextColors(points4, connections, layout, textFillB
|
|
|
39438
40140
|
}
|
|
39439
40141
|
|
|
39440
40142
|
// pptx/core/utils/smartart-node-pres-vars.ts
|
|
39441
|
-
function
|
|
40143
|
+
function children4(node, name, localName15) {
|
|
39442
40144
|
if (!node) {
|
|
39443
40145
|
return [];
|
|
39444
40146
|
}
|
|
@@ -39469,16 +40171,16 @@ function variablesOf(vars, localName15) {
|
|
|
39469
40171
|
}
|
|
39470
40172
|
return out;
|
|
39471
40173
|
}
|
|
39472
|
-
function resolveSmartArtNodePresVars(
|
|
40174
|
+
function resolveSmartArtNodePresVars(points5, localName15) {
|
|
39473
40175
|
const out = /* @__PURE__ */ new Map();
|
|
39474
|
-
for (const
|
|
39475
|
-
if (!
|
|
40176
|
+
for (const pt2 of points5) {
|
|
40177
|
+
if (!pt2 || typeof pt2 !== "object" || String(pt2["@_type"] ?? "").trim() !== "pres") {
|
|
39476
40178
|
continue;
|
|
39477
40179
|
}
|
|
39478
|
-
const prSet =
|
|
40180
|
+
const prSet = children4(pt2, "prSet", localName15)[0];
|
|
39479
40181
|
const nodeId = String(prSet?.["@_presAssocID"] ?? "").trim();
|
|
39480
40182
|
const presName = String(prSet?.["@_presName"] ?? "").trim();
|
|
39481
|
-
const vars =
|
|
40183
|
+
const vars = children4(prSet, "presLayoutVars", localName15)[0];
|
|
39482
40184
|
if (!nodeId || !presName || !vars) {
|
|
39483
40185
|
continue;
|
|
39484
40186
|
}
|
|
@@ -39494,10 +40196,10 @@ function resolveSmartArtNodePresVars(points4, localName15) {
|
|
|
39494
40196
|
}
|
|
39495
40197
|
|
|
39496
40198
|
// pptx/core/utils/smartart-point-metadata.ts
|
|
39497
|
-
function resolveSmartArtPointMetadata(
|
|
39498
|
-
const styleRoles = resolveSmartArtNodeStyleRoles(
|
|
39499
|
-
const coherent3DOff = resolveSmartArtNodeCoherent3DOff(
|
|
39500
|
-
const presVars = resolveSmartArtNodePresVars(
|
|
40199
|
+
function resolveSmartArtPointMetadata(points5, connections, localName15) {
|
|
40200
|
+
const styleRoles = resolveSmartArtNodeStyleRoles(points5, connections, localName15);
|
|
40201
|
+
const coherent3DOff = resolveSmartArtNodeCoherent3DOff(points5, connections, localName15);
|
|
40202
|
+
const presVars = resolveSmartArtNodePresVars(points5, localName15);
|
|
39501
40203
|
return (pointId) => ({
|
|
39502
40204
|
styleRole: styleRoles.get(pointId),
|
|
39503
40205
|
coherent3DOff: coherent3DOff.has(pointId) || void 0,
|
|
@@ -39546,10 +40248,10 @@ function getLocalName(qualifiedName2) {
|
|
|
39546
40248
|
}
|
|
39547
40249
|
|
|
39548
40250
|
// pptx/core/utils/smartart-connector-labels.ts
|
|
39549
|
-
function collectSmartArtTransitionText(
|
|
40251
|
+
function collectSmartArtTransitionText(points5, collectText) {
|
|
39550
40252
|
return collectTransitionText(
|
|
39551
|
-
|
|
39552
|
-
(
|
|
40253
|
+
points5.filter((pt2) => pt2 && typeof pt2 === "object"),
|
|
40254
|
+
(pt2) => ({ type: String(pt2["@_type"] ?? ""), modelId: String(pt2["@_modelId"] ?? "") }),
|
|
39553
40255
|
collectText
|
|
39554
40256
|
);
|
|
39555
40257
|
}
|
|
@@ -39560,11 +40262,11 @@ function simpleTextBody(text) {
|
|
|
39560
40262
|
"a:p": { "a:r": { "a:rPr": { "@_lang": "en-US" }, "a:t": text } }
|
|
39561
40263
|
};
|
|
39562
40264
|
}
|
|
39563
|
-
function setPointText(
|
|
39564
|
-
const tKey = Object.keys(
|
|
39565
|
-
const body =
|
|
40265
|
+
function setPointText(pt2, text, localName15) {
|
|
40266
|
+
const tKey = Object.keys(pt2).find((key2) => localName15(key2) === "t") ?? "dgm:t";
|
|
40267
|
+
const body = pt2[tKey];
|
|
39566
40268
|
if (!body || typeof body !== "object" || Array.isArray(body)) {
|
|
39567
|
-
|
|
40269
|
+
pt2[tKey] = simpleTextBody(text);
|
|
39568
40270
|
return;
|
|
39569
40271
|
}
|
|
39570
40272
|
const bodyObj = body;
|
|
@@ -39585,15 +40287,15 @@ function setPointText(pt, text, localName15) {
|
|
|
39585
40287
|
const textKey = Object.keys(runObj).find((key2) => localName15(key2) === "t");
|
|
39586
40288
|
runObj[textKey ?? "a:t"] = text;
|
|
39587
40289
|
}
|
|
39588
|
-
function applySmartArtConnectorLabels(
|
|
40290
|
+
function applySmartArtConnectorLabels(points5, connections, localName15) {
|
|
39589
40291
|
const pointsById = /* @__PURE__ */ new Map();
|
|
39590
|
-
for (const
|
|
39591
|
-
if (!
|
|
40292
|
+
for (const pt2 of points5) {
|
|
40293
|
+
if (!pt2 || typeof pt2 !== "object") {
|
|
39592
40294
|
continue;
|
|
39593
40295
|
}
|
|
39594
|
-
const id = String(
|
|
40296
|
+
const id = String(pt2["@_modelId"] ?? "").trim();
|
|
39595
40297
|
if (id) {
|
|
39596
|
-
pointsById.set(id,
|
|
40298
|
+
pointsById.set(id, pt2);
|
|
39597
40299
|
}
|
|
39598
40300
|
}
|
|
39599
40301
|
for (const connection of connections) {
|
|
@@ -39878,7 +40580,7 @@ function applyCommentMentions(node, mentions, extension, replace) {
|
|
|
39878
40580
|
|
|
39879
40581
|
// pptx/core/utils/modern-comment-text-body.ts
|
|
39880
40582
|
var localName4 = (key2) => key2.split(":").pop() || key2;
|
|
39881
|
-
var
|
|
40583
|
+
var keyOf8 = (node, name) => Object.keys(node).find((key2) => localName4(key2) === name);
|
|
39882
40584
|
var asNodes = (value) => {
|
|
39883
40585
|
if (Array.isArray(value)) {
|
|
39884
40586
|
return value;
|
|
@@ -39886,7 +40588,7 @@ var asNodes = (value) => {
|
|
|
39886
40588
|
return value && typeof value === "object" ? [value] : [];
|
|
39887
40589
|
};
|
|
39888
40590
|
var runText = (run) => {
|
|
39889
|
-
const textKey =
|
|
40591
|
+
const textKey = keyOf8(run, "t");
|
|
39890
40592
|
if (!textKey) {
|
|
39891
40593
|
return void 0;
|
|
39892
40594
|
}
|
|
@@ -39897,7 +40599,7 @@ function flattenBodyText(node) {
|
|
|
39897
40599
|
if (!node) {
|
|
39898
40600
|
return [];
|
|
39899
40601
|
}
|
|
39900
|
-
const paragraphKey =
|
|
40602
|
+
const paragraphKey = keyOf8(node, "p");
|
|
39901
40603
|
const paragraphs = paragraphKey ? asNodes(node[paragraphKey]) : [];
|
|
39902
40604
|
const collect = (value) => {
|
|
39903
40605
|
if (typeof value === "string" || typeof value === "number") {
|
|
@@ -39905,9 +40607,9 @@ function flattenBodyText(node) {
|
|
|
39905
40607
|
}
|
|
39906
40608
|
let text = "";
|
|
39907
40609
|
for (const entry2 of asNodes(value)) {
|
|
39908
|
-
for (const [key2,
|
|
40610
|
+
for (const [key2, child16] of Object.entries(entry2)) {
|
|
39909
40611
|
if (!key2.startsWith("@_")) {
|
|
39910
|
-
text += collect(
|
|
40612
|
+
text += collect(child16);
|
|
39911
40613
|
}
|
|
39912
40614
|
}
|
|
39913
40615
|
}
|
|
@@ -39931,19 +40633,19 @@ var commonSuffixLength2 = (a, b, limit) => {
|
|
|
39931
40633
|
return index;
|
|
39932
40634
|
};
|
|
39933
40635
|
var bareRun = (template, text) => {
|
|
39934
|
-
const properties = template ?
|
|
40636
|
+
const properties = template ? keyOf8(template, "rPr") : void 0;
|
|
39935
40637
|
return {
|
|
39936
40638
|
"a:rPr": properties && template ? template[properties] : {},
|
|
39937
40639
|
"a:t": text
|
|
39938
40640
|
};
|
|
39939
40641
|
};
|
|
39940
40642
|
var flattenRuns = (paragraph) => {
|
|
39941
|
-
const runKey =
|
|
40643
|
+
const runKey = keyOf8(paragraph, "r");
|
|
39942
40644
|
const runs = runKey ? asNodes(paragraph[runKey]) : [];
|
|
39943
40645
|
return runs.map((run) => runText(run) ?? "").join("");
|
|
39944
40646
|
};
|
|
39945
40647
|
function spliceParagraph(paragraph, line) {
|
|
39946
|
-
const runKey =
|
|
40648
|
+
const runKey = keyOf8(paragraph, "r");
|
|
39947
40649
|
const runs = runKey ? asNodes(paragraph[runKey]) : [];
|
|
39948
40650
|
const texts = runs.map(runText);
|
|
39949
40651
|
if (texts.some((text) => text === void 0)) {
|
|
@@ -39983,7 +40685,7 @@ function spliceParagraph(paragraph, line) {
|
|
|
39983
40685
|
if (next.length === 0) {
|
|
39984
40686
|
continue;
|
|
39985
40687
|
}
|
|
39986
|
-
const textKey =
|
|
40688
|
+
const textKey = keyOf8(runs[index], "t") ?? "a:t";
|
|
39987
40689
|
const nextRun = { ...runs[index] };
|
|
39988
40690
|
nextRun[textKey] = next;
|
|
39989
40691
|
rebuilt.push(nextRun);
|
|
@@ -39996,7 +40698,7 @@ function spliceParagraph(paragraph, line) {
|
|
|
39996
40698
|
return result;
|
|
39997
40699
|
}
|
|
39998
40700
|
var plainParagraph = (template, line) => {
|
|
39999
|
-
const runKey = template ?
|
|
40701
|
+
const runKey = template ? keyOf8(template, "r") : void 0;
|
|
40000
40702
|
const templateRun = template && runKey ? asNodes(template[runKey])[0] : void 0;
|
|
40001
40703
|
return { "a:r": bareRun(templateRun, line) };
|
|
40002
40704
|
};
|
|
@@ -40009,7 +40711,7 @@ function applyModernCommentText(original, text) {
|
|
|
40009
40711
|
if (!original) {
|
|
40010
40712
|
return plainBody(text);
|
|
40011
40713
|
}
|
|
40012
|
-
const paragraphKey =
|
|
40714
|
+
const paragraphKey = keyOf8(original, "p");
|
|
40013
40715
|
const paragraphs = paragraphKey ? asNodes(original[paragraphKey]) : [];
|
|
40014
40716
|
if (paragraphs.length === 0) {
|
|
40015
40717
|
return plainBody(text);
|
|
@@ -40036,7 +40738,7 @@ function applyModernCommentText(original, text) {
|
|
|
40036
40738
|
|
|
40037
40739
|
// pptx/core/utils/modern-comment-xml.ts
|
|
40038
40740
|
var localName5 = (key2) => key2.split(":").pop() || key2;
|
|
40039
|
-
var
|
|
40741
|
+
var child8 = (node, name) => {
|
|
40040
40742
|
if (!node) {
|
|
40041
40743
|
return void 0;
|
|
40042
40744
|
}
|
|
@@ -40044,7 +40746,7 @@ var child6 = (node, name) => {
|
|
|
40044
40746
|
const value = key2 ? node[key2] : void 0;
|
|
40045
40747
|
return value && typeof value === "object" && !Array.isArray(value) ? value : void 0;
|
|
40046
40748
|
};
|
|
40047
|
-
var
|
|
40749
|
+
var children5 = (node, name) => {
|
|
40048
40750
|
if (!node) {
|
|
40049
40751
|
return [];
|
|
40050
40752
|
}
|
|
@@ -40072,11 +40774,11 @@ var textValues = (node) => {
|
|
|
40072
40774
|
return result;
|
|
40073
40775
|
};
|
|
40074
40776
|
var extractModernCommentText = (node) => {
|
|
40075
|
-
const body =
|
|
40777
|
+
const body = child8(node, "txBody");
|
|
40076
40778
|
if (!body) {
|
|
40077
40779
|
return "";
|
|
40078
40780
|
}
|
|
40079
|
-
const paragraphs =
|
|
40781
|
+
const paragraphs = children5(body, "p");
|
|
40080
40782
|
return (paragraphs.length > 0 ? paragraphs : [body]).map((paragraph) => textValues(paragraph).join("")).join("\n");
|
|
40081
40783
|
};
|
|
40082
40784
|
var stringList = (value) => {
|
|
@@ -40095,8 +40797,8 @@ var parseComment = (node, authorName, emuPerPx) => {
|
|
|
40095
40797
|
const authorId = String(node["@_authorId"] || "").trim();
|
|
40096
40798
|
const rawStatus = String(node["@_status"] || "").trim().toLowerCase();
|
|
40097
40799
|
const effectiveStatus = rawStatus || "active";
|
|
40098
|
-
const position2 =
|
|
40099
|
-
const replies =
|
|
40800
|
+
const position2 = child8(node, "pos");
|
|
40801
|
+
const replies = children5(child8(node, "replyLst"), "reply").map(
|
|
40100
40802
|
(reply) => parseComment(reply, authorName, emuPerPx)
|
|
40101
40803
|
);
|
|
40102
40804
|
return {
|
|
@@ -40124,17 +40826,17 @@ var parseComment = (node, authorName, emuPerPx) => {
|
|
|
40124
40826
|
};
|
|
40125
40827
|
};
|
|
40126
40828
|
function parseModernCommentPart(data, part, authorName, emuPerPx) {
|
|
40127
|
-
const root =
|
|
40829
|
+
const root = child8(data, "cmLst");
|
|
40128
40830
|
return {
|
|
40129
|
-
comments:
|
|
40831
|
+
comments: children5(root, "cm").map((node) => parseComment(node, authorName, emuPerPx)),
|
|
40130
40832
|
part: { ...part, rawXml: root }
|
|
40131
40833
|
};
|
|
40132
40834
|
}
|
|
40133
40835
|
function parseModernAuthors(data) {
|
|
40134
|
-
const root =
|
|
40836
|
+
const root = child8(data, "authorLst");
|
|
40135
40837
|
return {
|
|
40136
40838
|
root,
|
|
40137
|
-
authors:
|
|
40839
|
+
authors: children5(root, "author").map((node) => ({
|
|
40138
40840
|
id: String(node["@_id"] || "").trim(),
|
|
40139
40841
|
name: String(node["@_name"] || "").trim(),
|
|
40140
40842
|
initials: String(node["@_initials"] || "").trim() || void 0,
|
|
@@ -40223,11 +40925,11 @@ var buildComment = (comment, resolveAuthorId, emuPerPx, isReply = false) => {
|
|
|
40223
40925
|
)
|
|
40224
40926
|
};
|
|
40225
40927
|
}
|
|
40226
|
-
const originalBody =
|
|
40928
|
+
const originalBody = child8(raw, "txBody");
|
|
40227
40929
|
node["p188:txBody"] = applyModernCommentText(originalBody, comment.text);
|
|
40228
40930
|
const originalText = originalBody ? flattenBodyText(originalBody).join("\n") : comment.text;
|
|
40229
40931
|
const mentions = rebaseCommentMentions(comment.mentions, originalText, comment.text);
|
|
40230
|
-
const extension = applyCommentMentions(node, mentions,
|
|
40932
|
+
const extension = applyCommentMentions(node, mentions, child8(raw, "extLst"), ownsMentions);
|
|
40231
40933
|
if (extension) {
|
|
40232
40934
|
node["p188:extLst"] = extension;
|
|
40233
40935
|
}
|
|
@@ -40491,7 +41193,7 @@ function parseEmuInt(value) {
|
|
|
40491
41193
|
function attr2(node, name) {
|
|
40492
41194
|
return node && typeof node === "object" ? node[name] : void 0;
|
|
40493
41195
|
}
|
|
40494
|
-
function
|
|
41196
|
+
function child9(node, name) {
|
|
40495
41197
|
return node && typeof node === "object" ? node[name] : void 0;
|
|
40496
41198
|
}
|
|
40497
41199
|
function parseBooleanAttr(value) {
|
|
@@ -40507,28 +41209,28 @@ function readGroupTransform(xfrm, emuPerPx) {
|
|
|
40507
41209
|
let flipHorizontal = false;
|
|
40508
41210
|
let flipVertical = false;
|
|
40509
41211
|
if (xfrm) {
|
|
40510
|
-
const off =
|
|
41212
|
+
const off = child9(xfrm, "a:off");
|
|
40511
41213
|
if (off) {
|
|
40512
41214
|
parentXEmu = parseEmuInt(attr2(off, "@_x"));
|
|
40513
41215
|
parentYEmu = parseEmuInt(attr2(off, "@_y"));
|
|
40514
41216
|
parentX = parentXEmu / emuPerPx;
|
|
40515
41217
|
parentY = parentYEmu / emuPerPx;
|
|
40516
41218
|
}
|
|
40517
|
-
const ext =
|
|
41219
|
+
const ext = child9(xfrm, "a:ext");
|
|
40518
41220
|
if (ext) {
|
|
40519
41221
|
parentWEmu = parseEmuInt(attr2(ext, "@_cx"));
|
|
40520
41222
|
parentHEmu = parseEmuInt(attr2(ext, "@_cy"));
|
|
40521
41223
|
parentW = parentWEmu / emuPerPx;
|
|
40522
41224
|
parentH = parentHEmu / emuPerPx;
|
|
40523
41225
|
}
|
|
40524
|
-
const chOff =
|
|
41226
|
+
const chOff = child9(xfrm, "a:chOff");
|
|
40525
41227
|
if (chOff) {
|
|
40526
41228
|
chOffXEmu = parseEmuInt(attr2(chOff, "@_x"));
|
|
40527
41229
|
chOffYEmu = parseEmuInt(attr2(chOff, "@_y"));
|
|
40528
41230
|
chX = chOffXEmu / emuPerPx;
|
|
40529
41231
|
chY = chOffYEmu / emuPerPx;
|
|
40530
41232
|
}
|
|
40531
|
-
const chExt =
|
|
41233
|
+
const chExt = child9(xfrm, "a:chExt");
|
|
40532
41234
|
if (chExt) {
|
|
40533
41235
|
chExtWEmu = parseEmuInt(attr2(chExt, "@_cx"));
|
|
40534
41236
|
chExtHEmu = parseEmuInt(attr2(chExt, "@_cy"));
|
|
@@ -40632,34 +41334,34 @@ function applyRawChildGeometry(el, childNode, emuPerPx) {
|
|
|
40632
41334
|
el.heightEmu = heightEmu;
|
|
40633
41335
|
}
|
|
40634
41336
|
}
|
|
40635
|
-
function applyAncestorGroupTextTransform(
|
|
40636
|
-
for (const
|
|
40637
|
-
if (
|
|
40638
|
-
applyAncestorGroupTextTransform(
|
|
41337
|
+
function applyAncestorGroupTextTransform(children6, groupTransform) {
|
|
41338
|
+
for (const child16 of children6) {
|
|
41339
|
+
if (child16.type === "group") {
|
|
41340
|
+
applyAncestorGroupTextTransform(child16.children, groupTransform);
|
|
40639
41341
|
continue;
|
|
40640
41342
|
}
|
|
40641
|
-
if (!hasTextProperties(
|
|
41343
|
+
if (!hasTextProperties(child16)) {
|
|
40642
41344
|
continue;
|
|
40643
41345
|
}
|
|
40644
|
-
const existing =
|
|
41346
|
+
const existing = child16.textStyle?.ancestorGroupTransform;
|
|
40645
41347
|
const nestedTransform = isTextOrientationMatrix(existing) ? existing : TEXT_ORIENTATION_IDENTITY;
|
|
40646
|
-
|
|
40647
|
-
...
|
|
41348
|
+
child16.textStyle = {
|
|
41349
|
+
...child16.textStyle,
|
|
40648
41350
|
ancestorGroupTransform: multiplyTextOrientationMatrices(groupTransform, nestedTransform)
|
|
40649
41351
|
};
|
|
40650
41352
|
}
|
|
40651
41353
|
}
|
|
40652
|
-
function applyGroupFillInheritance(
|
|
40653
|
-
for (const
|
|
40654
|
-
if (
|
|
40655
|
-
if (!
|
|
40656
|
-
applyGroupFillInheritance(
|
|
41354
|
+
function applyGroupFillInheritance(children6, fill) {
|
|
41355
|
+
for (const child16 of children6) {
|
|
41356
|
+
if (child16.type === "group") {
|
|
41357
|
+
if (!child16.groupFill || child16.groupFill.fillMode === "group") {
|
|
41358
|
+
applyGroupFillInheritance(child16.children, fill);
|
|
40657
41359
|
}
|
|
40658
41360
|
continue;
|
|
40659
41361
|
}
|
|
40660
|
-
if (hasShapeProperties(
|
|
40661
|
-
|
|
40662
|
-
...
|
|
41362
|
+
if (hasShapeProperties(child16) && child16.shapeStyle?.fillMode === "group") {
|
|
41363
|
+
child16.shapeStyle = {
|
|
41364
|
+
...child16.shapeStyle,
|
|
40663
41365
|
fillMode: fill.fillMode,
|
|
40664
41366
|
fillColor: fill.fillColor,
|
|
40665
41367
|
fillOpacity: fill.fillOpacity,
|
|
@@ -40776,7 +41478,7 @@ function scanForText(node, depth) {
|
|
|
40776
41478
|
return false;
|
|
40777
41479
|
}
|
|
40778
41480
|
if (Array.isArray(node)) {
|
|
40779
|
-
return node.some((
|
|
41481
|
+
return node.some((child16) => scanForText(child16, depth + 1));
|
|
40780
41482
|
}
|
|
40781
41483
|
if (!isXmlObject4(node)) {
|
|
40782
41484
|
return false;
|
|
@@ -41142,7 +41844,7 @@ var LIGHT_DIRECTIONS = /* @__PURE__ */ new Set(["tl", "t", "tr", "l", "r", "bl",
|
|
|
41142
41844
|
// pptx/core/utils/text-body-scene3d.ts
|
|
41143
41845
|
var localName6 = (key2) => key2.replace(/^@_/, "").split(":").pop() ?? key2;
|
|
41144
41846
|
var childKey = (node, local) => Object.keys(node).find((key2) => !key2.startsWith("@_") && localName6(key2) === local);
|
|
41145
|
-
var
|
|
41847
|
+
var child10 = (node, local) => {
|
|
41146
41848
|
if (!node) {
|
|
41147
41849
|
return void 0;
|
|
41148
41850
|
}
|
|
@@ -41166,7 +41868,7 @@ var enumToken = (value, allowed) => {
|
|
|
41166
41868
|
return allowed.has(token2) ? token2 : void 0;
|
|
41167
41869
|
};
|
|
41168
41870
|
var applyRotation = (target, node, prefix) => {
|
|
41169
|
-
const rot =
|
|
41871
|
+
const rot = child10(node, "rot");
|
|
41170
41872
|
const x = finiteInt(rot?.["@_lat"]);
|
|
41171
41873
|
const y = finiteInt(rot?.["@_lon"]);
|
|
41172
41874
|
const z = finiteInt(rot?.["@_rev"]);
|
|
@@ -41193,13 +41895,13 @@ var applyPoint = (target, node, prefix, attrPrefix = "") => {
|
|
|
41193
41895
|
}
|
|
41194
41896
|
};
|
|
41195
41897
|
function parseTextBodyScene3d(bodyPr, style) {
|
|
41196
|
-
const scene =
|
|
41898
|
+
const scene = child10(bodyPr, "scene3d");
|
|
41197
41899
|
if (!scene) {
|
|
41198
41900
|
return;
|
|
41199
41901
|
}
|
|
41200
41902
|
style.textBodyScene3dXml = cloneXmlObject(scene);
|
|
41201
|
-
const camera =
|
|
41202
|
-
const light =
|
|
41903
|
+
const camera = child10(scene, "camera");
|
|
41904
|
+
const light = child10(scene, "lightRig");
|
|
41203
41905
|
const typed = {
|
|
41204
41906
|
cameraPreset: enumToken(camera?.["@_prst"], CAMERA_PRESETS),
|
|
41205
41907
|
lightRigType: enumToken(light?.["@_rig"], LIGHT_RIGS),
|
|
@@ -41215,12 +41917,12 @@ function parseTextBodyScene3d(bodyPr, style) {
|
|
|
41215
41917
|
}
|
|
41216
41918
|
applyRotation(typed, camera, "camera");
|
|
41217
41919
|
applyRotation(typed, light, "lightRig");
|
|
41218
|
-
const backdrop =
|
|
41920
|
+
const backdrop = child10(scene, "backdrop");
|
|
41219
41921
|
if (backdrop) {
|
|
41220
41922
|
typed.hasBackdrop = true;
|
|
41221
|
-
applyPoint(typed,
|
|
41222
|
-
applyPoint(typed,
|
|
41223
|
-
applyPoint(typed,
|
|
41923
|
+
applyPoint(typed, child10(backdrop, "anchor"), "backdropAnchor");
|
|
41924
|
+
applyPoint(typed, child10(backdrop, "norm"), "backdropNormal", "d");
|
|
41925
|
+
applyPoint(typed, child10(backdrop, "up"), "backdropUp", "d");
|
|
41224
41926
|
}
|
|
41225
41927
|
style.textBodyScene3d = typed;
|
|
41226
41928
|
}
|
|
@@ -41292,7 +41994,7 @@ function applyTextBodyScene3d(bodyPr, style) {
|
|
|
41292
41994
|
return;
|
|
41293
41995
|
}
|
|
41294
41996
|
const scene = raw ?? {};
|
|
41295
|
-
const camera = cloneXmlObject(
|
|
41997
|
+
const camera = cloneXmlObject(child10(scene, "camera")) ?? {};
|
|
41296
41998
|
if (cameraPreset) {
|
|
41297
41999
|
camera["@_prst"] = cameraPreset;
|
|
41298
42000
|
}
|
|
@@ -41307,7 +42009,7 @@ function applyTextBodyScene3d(bodyPr, style) {
|
|
|
41307
42009
|
setChild3(camera, "rot", cameraRot);
|
|
41308
42010
|
}
|
|
41309
42011
|
setChild3(scene, "camera", ordered(camera, ["rot"]));
|
|
41310
|
-
const light = cloneXmlObject(
|
|
42012
|
+
const light = cloneXmlObject(child10(scene, "lightRig")) ?? {};
|
|
41311
42013
|
if (lightRig) {
|
|
41312
42014
|
light["@_rig"] = lightRig;
|
|
41313
42015
|
}
|
|
@@ -41320,7 +42022,7 @@ function applyTextBodyScene3d(bodyPr, style) {
|
|
|
41320
42022
|
}
|
|
41321
42023
|
setChild3(scene, "lightRig", ordered(light, ["rot"]));
|
|
41322
42024
|
if (typed.hasBackdrop) {
|
|
41323
|
-
const backdrop = cloneXmlObject(
|
|
42025
|
+
const backdrop = cloneXmlObject(child10(scene, "backdrop")) ?? {};
|
|
41324
42026
|
const anchor = anchorXml(typed.backdropAnchorX, typed.backdropAnchorY, typed.backdropAnchorZ);
|
|
41325
42027
|
const norm = vectorXml(typed.backdropNormalX, typed.backdropNormalY, typed.backdropNormalZ);
|
|
41326
42028
|
const up = vectorXml(typed.backdropUpX, typed.backdropUpY, typed.backdropUpZ);
|
|
@@ -41333,7 +42035,7 @@ function applyTextBodyScene3d(bodyPr, style) {
|
|
|
41333
42035
|
if (up) {
|
|
41334
42036
|
setChild3(backdrop, "up", up);
|
|
41335
42037
|
}
|
|
41336
|
-
if (
|
|
42038
|
+
if (child10(backdrop, "anchor") && child10(backdrop, "norm") && child10(backdrop, "up")) {
|
|
41337
42039
|
setChild3(scene, "backdrop", ordered(backdrop, ["anchor", "norm", "up", "extLst"]));
|
|
41338
42040
|
}
|
|
41339
42041
|
}
|
|
@@ -41677,9 +42379,9 @@ function findChildByLocalName2(parent, name) {
|
|
|
41677
42379
|
}
|
|
41678
42380
|
function setPresentationPropertiesChild(root, name, value) {
|
|
41679
42381
|
const values = /* @__PURE__ */ new Map();
|
|
41680
|
-
for (const [key2,
|
|
42382
|
+
for (const [key2, child16] of Object.entries(root)) {
|
|
41681
42383
|
if (!key2.startsWith("@_")) {
|
|
41682
|
-
values.set(localName7(key2), [key2,
|
|
42384
|
+
values.set(localName7(key2), [key2, child16]);
|
|
41683
42385
|
}
|
|
41684
42386
|
}
|
|
41685
42387
|
if (value === null) {
|
|
@@ -41688,9 +42390,9 @@ function setPresentationPropertiesChild(root, name, value) {
|
|
|
41688
42390
|
values.set(name, [values.get(name)?.[0] ?? `p:${name}`, value]);
|
|
41689
42391
|
}
|
|
41690
42392
|
const result = {};
|
|
41691
|
-
for (const [key2,
|
|
42393
|
+
for (const [key2, child16] of Object.entries(root)) {
|
|
41692
42394
|
if (key2.startsWith("@_")) {
|
|
41693
|
-
result[key2] =
|
|
42395
|
+
result[key2] = child16;
|
|
41694
42396
|
}
|
|
41695
42397
|
}
|
|
41696
42398
|
for (const orderedName of ROOT_ORDER) {
|
|
@@ -41700,8 +42402,8 @@ function setPresentationPropertiesChild(root, name, value) {
|
|
|
41700
42402
|
}
|
|
41701
42403
|
values.delete(orderedName);
|
|
41702
42404
|
}
|
|
41703
|
-
for (const [, [key2,
|
|
41704
|
-
result[key2] =
|
|
42405
|
+
for (const [, [key2, child16]] of values) {
|
|
42406
|
+
result[key2] = child16;
|
|
41705
42407
|
}
|
|
41706
42408
|
return result;
|
|
41707
42409
|
}
|
|
@@ -41772,15 +42474,15 @@ function canonicalizePlaceholderTypes(root) {
|
|
|
41772
42474
|
}
|
|
41773
42475
|
const node = value;
|
|
41774
42476
|
if (tag === "p:ph" && node["@_type"] !== void 0) {
|
|
41775
|
-
const
|
|
41776
|
-
if (
|
|
41777
|
-
node["@_type"] =
|
|
42477
|
+
const canonical2 = canonicalPlaceholderType(node["@_type"]);
|
|
42478
|
+
if (canonical2 !== void 0 && canonical2 !== String(node["@_type"])) {
|
|
42479
|
+
node["@_type"] = canonical2;
|
|
41778
42480
|
changed += 1;
|
|
41779
42481
|
}
|
|
41780
42482
|
}
|
|
41781
|
-
for (const [key2,
|
|
42483
|
+
for (const [key2, child16] of Object.entries(node)) {
|
|
41782
42484
|
if (!key2.startsWith("@_")) {
|
|
41783
|
-
visit(
|
|
42485
|
+
visit(child16, key2);
|
|
41784
42486
|
}
|
|
41785
42487
|
}
|
|
41786
42488
|
};
|
|
@@ -42546,7 +43248,7 @@ function tableToShapeGroup(tableData, bounds) {
|
|
|
42546
43248
|
}
|
|
42547
43249
|
}
|
|
42548
43250
|
const rowHeightEmu = bounds.h / Math.max(1, tableData.rows.length);
|
|
42549
|
-
const
|
|
43251
|
+
const children6 = [];
|
|
42550
43252
|
const vMergeActive = new Array(colEmuWidths.length).fill(false);
|
|
42551
43253
|
tableData.rows.forEach((row, rowIndex) => {
|
|
42552
43254
|
const y = bounds.y + rowIndex * rowHeightEmu;
|
|
@@ -42562,7 +43264,7 @@ function tableToShapeGroup(tableData, bounds) {
|
|
|
42562
43264
|
if (!cell.hMerge) {
|
|
42563
43265
|
const x = colStartX[colIndex] ?? bounds.x;
|
|
42564
43266
|
const w = colEmuWidths.slice(colIndex, colIndex + span).reduce((s, v) => s + v, 0);
|
|
42565
|
-
|
|
43267
|
+
children6.push({
|
|
42566
43268
|
kind: "shape",
|
|
42567
43269
|
spt: 1,
|
|
42568
43270
|
isConnector: false,
|
|
@@ -42578,7 +43280,7 @@ function tableToShapeGroup(tableData, bounds) {
|
|
|
42578
43280
|
colIndex += span;
|
|
42579
43281
|
}
|
|
42580
43282
|
});
|
|
42581
|
-
return { kind: "group", anchor: bounds, children:
|
|
43283
|
+
return { kind: "group", anchor: bounds, children: children6 };
|
|
42582
43284
|
}
|
|
42583
43285
|
|
|
42584
43286
|
// pptx/core/utils/rendered-bullet-marker.ts
|
|
@@ -42810,7 +43512,7 @@ function convertGroup(element, ctx) {
|
|
|
42810
43512
|
rotationDeg: element.rotation,
|
|
42811
43513
|
flipH: element.flipHorizontal,
|
|
42812
43514
|
flipV: element.flipVertical,
|
|
42813
|
-
children: element.children.map((
|
|
43515
|
+
children: element.children.map((child16) => convertElement(withoutEmuGeometry(child16), ctx)),
|
|
42814
43516
|
hyperlink: resolveHyperlink(element.actionClick, ctx.hyperlinkCtx)
|
|
42815
43517
|
};
|
|
42816
43518
|
}
|
|
@@ -43783,8 +44485,8 @@ function buildFontEntityAtom(name, index) {
|
|
|
43783
44485
|
return record(RT.FontEntityAtom, data, index, false, 0);
|
|
43784
44486
|
}
|
|
43785
44487
|
function buildEnvironmentLeadingRecord() {
|
|
43786
|
-
const
|
|
43787
|
-
return record(4040,
|
|
44488
|
+
const child16 = record(4050, new Uint8Array([1, 0, 0, 0]), 3, false, 0);
|
|
44489
|
+
return record(4040, child16, 2, true);
|
|
43788
44490
|
}
|
|
43789
44491
|
function buildEnvironmentTrailingRecords(otherTextStyle) {
|
|
43790
44492
|
const unknown0fa4 = record(4004, new Uint8Array([128, 0, 64, 0, 0, 0, 0, 0]), 0, false, 0);
|
|
@@ -44894,8 +45596,8 @@ function buildAnyShapeContainer(shape, fonts, allocator, hyperlinks, oleEmbeds,
|
|
|
44894
45596
|
}
|
|
44895
45597
|
function buildGroupContainer(group, fonts, allocator, hyperlinks, oleEmbeds, mediaEmbeds, inGroup = false) {
|
|
44896
45598
|
const data = new ByteWriter().bytes(buildNestedGroupPatriarch(group, allocator, hyperlinks, inGroup));
|
|
44897
|
-
for (const
|
|
44898
|
-
data.bytes(buildAnyShapeContainer(
|
|
45599
|
+
for (const child16 of group.children) {
|
|
45600
|
+
data.bytes(buildAnyShapeContainer(child16, fonts, allocator, hyperlinks, oleEmbeds, mediaEmbeds, true));
|
|
44899
45601
|
}
|
|
44900
45602
|
return record(OA.SpgrContainer, data.toBytes(), 0, true);
|
|
44901
45603
|
}
|
|
@@ -45033,9 +45735,9 @@ function* iterateChildren(view, container) {
|
|
|
45033
45735
|
yield* iterateRecords(view, container.dataOffset, container.dataOffset + container.recLen);
|
|
45034
45736
|
}
|
|
45035
45737
|
function findChild2(view, container, recType, recInstance) {
|
|
45036
|
-
for (const
|
|
45037
|
-
if (
|
|
45038
|
-
return
|
|
45738
|
+
for (const child16 of iterateChildren(view, container)) {
|
|
45739
|
+
if (child16.recType === recType && (recInstance === void 0 || child16.recInstance === recInstance)) {
|
|
45740
|
+
return child16;
|
|
45039
45741
|
}
|
|
45040
45742
|
}
|
|
45041
45743
|
return void 0;
|
|
@@ -45048,12 +45750,12 @@ function findDescendant(view, container, recType, recInstance) {
|
|
|
45048
45750
|
stack.pop();
|
|
45049
45751
|
continue;
|
|
45050
45752
|
}
|
|
45051
|
-
const
|
|
45052
|
-
if (
|
|
45053
|
-
return
|
|
45753
|
+
const child16 = next.value;
|
|
45754
|
+
if (child16.recType === recType && (recInstance === void 0)) {
|
|
45755
|
+
return child16;
|
|
45054
45756
|
}
|
|
45055
|
-
if (isContainer(
|
|
45056
|
-
stack.push(iterateChildren(view,
|
|
45757
|
+
if (isContainer(child16))
|
|
45758
|
+
stack.push(iterateChildren(view, child16));
|
|
45057
45759
|
}
|
|
45058
45760
|
return void 0;
|
|
45059
45761
|
}
|
|
@@ -45097,9 +45799,9 @@ function parseColorSchemeAtom(view, rec) {
|
|
|
45097
45799
|
return colors;
|
|
45098
45800
|
}
|
|
45099
45801
|
function findSchemeColors(view, container) {
|
|
45100
|
-
for (const
|
|
45101
|
-
if (
|
|
45102
|
-
return parseColorSchemeAtom(view,
|
|
45802
|
+
for (const child16 of iterateChildren(view, container)) {
|
|
45803
|
+
if (child16.recType === RT.ColorSchemeAtom && child16.recInstance === 1) {
|
|
45804
|
+
return parseColorSchemeAtom(view, child16);
|
|
45103
45805
|
}
|
|
45104
45806
|
}
|
|
45105
45807
|
return void 0;
|
|
@@ -45534,7 +46236,7 @@ function relativiseBody(body, styles) {
|
|
|
45534
46236
|
}
|
|
45535
46237
|
function relativiseShape(shape, styles) {
|
|
45536
46238
|
if (shape.kind === "group") {
|
|
45537
|
-
return { ...shape, children: shape.children.map((
|
|
46239
|
+
return { ...shape, children: shape.children.map((child16) => relativiseShape(child16, styles)) };
|
|
45538
46240
|
}
|
|
45539
46241
|
if (shape.kind === "shape" && shape.text) {
|
|
45540
46242
|
return { ...shape, text: relativiseBody(shape.text, styles) };
|
|
@@ -46560,7 +47262,7 @@ var NS_CX = "http://schemas.microsoft.com/office/drawing/2014/chartex";
|
|
|
46560
47262
|
var NS_A = "http://schemas.openxmlformats.org/drawingml/2006/main";
|
|
46561
47263
|
var NS_R = "http://schemas.openxmlformats.org/officeDocument/2006/relationships";
|
|
46562
47264
|
var NS_C = "http://schemas.openxmlformats.org/drawingml/2006/chart";
|
|
46563
|
-
function
|
|
47265
|
+
function points2(values) {
|
|
46564
47266
|
return values.map((value, index) => ({ "@_idx": String(index), "#text": String(value) }));
|
|
46565
47267
|
}
|
|
46566
47268
|
function indexedPoints(values, indices) {
|
|
@@ -46600,7 +47302,7 @@ function buildChartExData(chartData, series, id) {
|
|
|
46600
47302
|
"@_type": "cat",
|
|
46601
47303
|
"cx:lvl": categoryLevels.map((level) => ({
|
|
46602
47304
|
"@_ptCount": String(level.length),
|
|
46603
|
-
"cx:pt": chartData.chartType === "regionMap" && level === categoryLevels[0] ? indexedPoints(level, regionOptions?.categorySourceIndices) :
|
|
47305
|
+
"cx:pt": chartData.chartType === "regionMap" && level === categoryLevels[0] ? indexedPoints(level, regionOptions?.categorySourceIndices) : points2(level)
|
|
46604
47306
|
}))
|
|
46605
47307
|
}
|
|
46606
47308
|
];
|
|
@@ -46954,7 +47656,7 @@ var FLAGS = ["showHorzBorder", "showVertBorder", "showOutline", "showKeys"];
|
|
|
46954
47656
|
function findKey6(node, name, localName15) {
|
|
46955
47657
|
return Object.keys(node).find((key2) => localName15(key2) === name);
|
|
46956
47658
|
}
|
|
46957
|
-
function
|
|
47659
|
+
function setOrdered3(node, name, value, order, localName15) {
|
|
46958
47660
|
const existingKey = findKey6(node, name, localName15);
|
|
46959
47661
|
if (existingKey) {
|
|
46960
47662
|
node[existingKey] = value;
|
|
@@ -46970,8 +47672,8 @@ function setOrdered2(node, name, value, order, localName15) {
|
|
|
46970
47672
|
for (const key2 of Object.keys(node)) {
|
|
46971
47673
|
delete node[key2];
|
|
46972
47674
|
}
|
|
46973
|
-
for (const [key2,
|
|
46974
|
-
node[key2] =
|
|
47675
|
+
for (const [key2, child16] of entries) {
|
|
47676
|
+
node[key2] = child16;
|
|
46975
47677
|
}
|
|
46976
47678
|
}
|
|
46977
47679
|
function applyChartDataTable(plotArea, dataTable, localName15, resolveColor2) {
|
|
@@ -46991,7 +47693,7 @@ function applyChartDataTable(plotArea, dataTable, localName15, resolveColor2) {
|
|
|
46991
47693
|
for (const flag of FLAGS) {
|
|
46992
47694
|
const value = dataTable[flag];
|
|
46993
47695
|
if (value !== void 0) {
|
|
46994
|
-
|
|
47696
|
+
setOrdered3(table, flag, { "@_val": value ? "1" : "0" }, TABLE_ORDER, localName15);
|
|
46995
47697
|
}
|
|
46996
47698
|
}
|
|
46997
47699
|
if (dataTable.spPr) {
|
|
@@ -47002,7 +47704,7 @@ function applyChartDataTable(plotArea, dataTable, localName15, resolveColor2) {
|
|
|
47002
47704
|
localName15,
|
|
47003
47705
|
resolveColor2
|
|
47004
47706
|
);
|
|
47005
|
-
|
|
47707
|
+
setOrdered3(table, "spPr", spPr, TABLE_ORDER, localName15);
|
|
47006
47708
|
}
|
|
47007
47709
|
if (dataTable.txPr) {
|
|
47008
47710
|
const txPrKey = findKey6(table, "txPr", localName15);
|
|
@@ -47017,13 +47719,13 @@ function applyChartDataTable(plotArea, dataTable, localName15, resolveColor2) {
|
|
|
47017
47719
|
});
|
|
47018
47720
|
const txPr = buildDefRPrTextProperties(dataTable.txPr, authoredDefRPr, resolveColor2);
|
|
47019
47721
|
if (txPr) {
|
|
47020
|
-
|
|
47722
|
+
setOrdered3(table, "txPr", txPr, TABLE_ORDER, localName15);
|
|
47021
47723
|
}
|
|
47022
47724
|
}
|
|
47023
47725
|
if (tableKey) {
|
|
47024
47726
|
plotArea[tableKey] = table;
|
|
47025
47727
|
} else {
|
|
47026
|
-
|
|
47728
|
+
setOrdered3(plotArea, "dTable", table, PLOT_AREA_ORDER, localName15);
|
|
47027
47729
|
}
|
|
47028
47730
|
}
|
|
47029
47731
|
|
|
@@ -47135,19 +47837,19 @@ function firstNode(value) {
|
|
|
47135
47837
|
const item = Array.isArray(value) ? value[0] : value;
|
|
47136
47838
|
return item && typeof item === "object" ? item : void 0;
|
|
47137
47839
|
}
|
|
47138
|
-
function
|
|
47840
|
+
function child11(parent, local, getLocalName2) {
|
|
47139
47841
|
const key2 = findKey(parent, local, getLocalName2);
|
|
47140
47842
|
return key2 ? firstNode(parent[key2]) : void 0;
|
|
47141
47843
|
}
|
|
47142
47844
|
function labelRunProperties(paragraph, getLocalName2) {
|
|
47143
47845
|
for (const local of ["r", "fld"]) {
|
|
47144
|
-
const runNode =
|
|
47145
|
-
const rPr = runNode ?
|
|
47846
|
+
const runNode = child11(paragraph, local, getLocalName2);
|
|
47847
|
+
const rPr = runNode ? child11(runNode, "rPr", getLocalName2) : void 0;
|
|
47146
47848
|
if (rPr) {
|
|
47147
47849
|
return rPr;
|
|
47148
47850
|
}
|
|
47149
47851
|
}
|
|
47150
|
-
return
|
|
47852
|
+
return child11(paragraph, "endParaRPr", getLocalName2);
|
|
47151
47853
|
}
|
|
47152
47854
|
function buildDataLabelTx(existingTx, text, getLocalName2) {
|
|
47153
47855
|
const richKey = existingTx ? findKey(existingTx, "rich", getLocalName2) : void 0;
|
|
@@ -47164,9 +47866,9 @@ function buildDataLabelTx(existingTx, text, getLocalName2) {
|
|
|
47164
47866
|
}
|
|
47165
47867
|
const pKey = findKey(rich, "p", getLocalName2) ?? "a:p";
|
|
47166
47868
|
const paragraph = firstNode(rich[pKey]) ?? {};
|
|
47167
|
-
const pPr =
|
|
47869
|
+
const pPr = child11(paragraph, "pPr", getLocalName2);
|
|
47168
47870
|
const rPr = labelRunProperties(paragraph, getLocalName2);
|
|
47169
|
-
const endParaRPr =
|
|
47871
|
+
const endParaRPr = child11(paragraph, "endParaRPr", getLocalName2);
|
|
47170
47872
|
const run = rPr ? { "a:rPr": rPr, "a:t": text } : { "a:t": text };
|
|
47171
47873
|
const newParagraph = {};
|
|
47172
47874
|
if (pPr) {
|
|
@@ -47774,13 +48476,13 @@ function applyChartGroupOptionsToXml(container, containerLocal, chartData, getLo
|
|
|
47774
48476
|
}
|
|
47775
48477
|
|
|
47776
48478
|
// pptx/core/utils/chart-area-format.ts
|
|
47777
|
-
var
|
|
48479
|
+
var FILL_CHOICE2 = /* @__PURE__ */ new Set(["noFill", "solidFill", "gradFill", "blipFill", "pattFill", "grpFill"]);
|
|
47778
48480
|
var AFTER_LN = /* @__PURE__ */ new Set(["effectLst", "effectDag", "scene3d", "sp3d", "extLst"]);
|
|
47779
|
-
var
|
|
48481
|
+
var LN_FILL_CHOICE2 = /* @__PURE__ */ new Set(["noFill", "solidFill", "gradFill", "pattFill"]);
|
|
47780
48482
|
function findKey11(obj, local, getLocalName2) {
|
|
47781
48483
|
return Object.keys(obj).find((key2) => getLocalName2(key2) === local);
|
|
47782
48484
|
}
|
|
47783
|
-
function
|
|
48485
|
+
function asObject2(value) {
|
|
47784
48486
|
return value && typeof value === "object" && !Array.isArray(value) ? value : void 0;
|
|
47785
48487
|
}
|
|
47786
48488
|
function parsePaint(node, getLocalName2, resolveColor2) {
|
|
@@ -47790,11 +48492,11 @@ function parsePaint(node, getLocalName2, resolveColor2) {
|
|
|
47790
48492
|
if (findKey11(node, "noFill", getLocalName2) !== void 0) {
|
|
47791
48493
|
return "none";
|
|
47792
48494
|
}
|
|
47793
|
-
const solid =
|
|
48495
|
+
const solid = asObject2(node[findKey11(node, "solidFill", getLocalName2) ?? ""]);
|
|
47794
48496
|
return solid ? resolveColor2(solid) : void 0;
|
|
47795
48497
|
}
|
|
47796
48498
|
function parseChartAreaFormat(owner, getLocalName2, resolveColor2, parseGradient) {
|
|
47797
|
-
const spPr = owner ?
|
|
48499
|
+
const spPr = owner ? asObject2(owner[findKey11(owner, "spPr", getLocalName2) ?? ""]) : void 0;
|
|
47798
48500
|
if (!spPr) {
|
|
47799
48501
|
return {};
|
|
47800
48502
|
}
|
|
@@ -47807,15 +48509,15 @@ function parseChartAreaFormat(owner, getLocalName2, resolveColor2, parseGradient
|
|
|
47807
48509
|
if (gradient) {
|
|
47808
48510
|
format.gradient = gradient;
|
|
47809
48511
|
}
|
|
47810
|
-
const ln =
|
|
48512
|
+
const ln = asObject2(spPr[findKey11(spPr, "ln", getLocalName2) ?? ""]);
|
|
47811
48513
|
const border = parsePaint(ln, getLocalName2, resolveColor2);
|
|
47812
48514
|
if (border !== void 0) {
|
|
47813
48515
|
format.border = border;
|
|
47814
48516
|
}
|
|
47815
48517
|
return format;
|
|
47816
48518
|
}
|
|
47817
|
-
function paintXml(
|
|
47818
|
-
return
|
|
48519
|
+
function paintXml(paint2) {
|
|
48520
|
+
return paint2 === "none" ? { "a:noFill": {} } : { "a:solidFill": { "a:srgbClr": { "@_val": chartColorHex(paint2) } } };
|
|
47819
48521
|
}
|
|
47820
48522
|
function buildChartAreaSpPr(format) {
|
|
47821
48523
|
const spPr = {};
|
|
@@ -47856,15 +48558,15 @@ function setPaint(node, entry2, choices, after, getLocalName2) {
|
|
|
47856
48558
|
node[key2] = value;
|
|
47857
48559
|
}
|
|
47858
48560
|
}
|
|
47859
|
-
function paintEntry(
|
|
47860
|
-
if (
|
|
48561
|
+
function paintEntry(paint2, authored, getLocalName2, resolveColor2) {
|
|
48562
|
+
if (paint2 === void 0) {
|
|
47861
48563
|
return void 0;
|
|
47862
48564
|
}
|
|
47863
|
-
if (
|
|
48565
|
+
if (paint2 === "none") {
|
|
47864
48566
|
return ["a:noFill", {}];
|
|
47865
48567
|
}
|
|
47866
|
-
const solid =
|
|
47867
|
-
return ["a:solidFill", chartColorChoiceValue(solid,
|
|
48568
|
+
const solid = asObject2(authored[findKey11(authored, "solidFill", getLocalName2) ?? ""]);
|
|
48569
|
+
return ["a:solidFill", chartColorChoiceValue(solid, paint2, resolveColor2)];
|
|
47868
48570
|
}
|
|
47869
48571
|
function applyChartAreaFormatToXml(owner, format, getLocalName2, options) {
|
|
47870
48572
|
const authored = parseChartAreaFormat(
|
|
@@ -47878,7 +48580,7 @@ function applyChartAreaFormatToXml(owner, format, getLocalName2, options) {
|
|
|
47878
48580
|
if (!fillChanged && !borderChanged) {
|
|
47879
48581
|
return false;
|
|
47880
48582
|
}
|
|
47881
|
-
let spPr =
|
|
48583
|
+
let spPr = asObject2(owner[findKey11(owner, "spPr", getLocalName2) ?? ""]);
|
|
47882
48584
|
if (!spPr) {
|
|
47883
48585
|
spPr = {};
|
|
47884
48586
|
options.insertSpPr(owner, spPr);
|
|
@@ -47888,17 +48590,17 @@ function applyChartAreaFormatToXml(owner, format, getLocalName2, options) {
|
|
|
47888
48590
|
applyChartGradientToSpPr(spPr, format.gradient, getLocalName2, options);
|
|
47889
48591
|
} else {
|
|
47890
48592
|
const entry2 = paintEntry(format.fill, spPr, getLocalName2, options.resolveColor);
|
|
47891
|
-
setPaint(spPr, entry2,
|
|
48593
|
+
setPaint(spPr, entry2, FILL_CHOICE2, /* @__PURE__ */ new Set(["ln", ...AFTER_LN]), getLocalName2);
|
|
47892
48594
|
}
|
|
47893
48595
|
}
|
|
47894
48596
|
if (borderChanged) {
|
|
47895
48597
|
const lnKey = findKey11(spPr, "ln", getLocalName2);
|
|
47896
|
-
const ln =
|
|
48598
|
+
const ln = asObject2(lnKey ? spPr[lnKey] : void 0) ?? {};
|
|
47897
48599
|
const entry2 = paintEntry(format.border, ln, getLocalName2, options.resolveColor);
|
|
47898
48600
|
setPaint(
|
|
47899
48601
|
ln,
|
|
47900
48602
|
entry2,
|
|
47901
|
-
|
|
48603
|
+
LN_FILL_CHOICE2,
|
|
47902
48604
|
/* @__PURE__ */ new Set(["prstDash", "custDash", "round", "bevel", "miter", "headEnd", "tailEnd", "extLst"]),
|
|
47903
48605
|
getLocalName2
|
|
47904
48606
|
);
|
|
@@ -47953,8 +48655,8 @@ function insertBefore(node, key2, value, after, getLocalName2) {
|
|
|
47953
48655
|
for (const candidate of Object.keys(node)) {
|
|
47954
48656
|
delete node[candidate];
|
|
47955
48657
|
}
|
|
47956
|
-
for (const [candidate,
|
|
47957
|
-
node[candidate] =
|
|
48658
|
+
for (const [candidate, child16] of entries) {
|
|
48659
|
+
node[candidate] = child16;
|
|
47958
48660
|
}
|
|
47959
48661
|
}
|
|
47960
48662
|
function chartAreaFormatOf(chartData) {
|
|
@@ -48253,7 +48955,7 @@ var CAT_AX_ID = 111111111;
|
|
|
48253
48955
|
var VAL_AX_ID = 222222222;
|
|
48254
48956
|
var SER_AX_ID = 333333333;
|
|
48255
48957
|
var SCATTER_LIKE = /* @__PURE__ */ new Set(["scatter", "bubble"]);
|
|
48256
|
-
function
|
|
48958
|
+
function points3(values) {
|
|
48257
48959
|
return values.map((v, i) => ({ "@_idx": String(i), "c:v": v }));
|
|
48258
48960
|
}
|
|
48259
48961
|
function numLit2(values, formatCode2 = "General") {
|
|
@@ -48261,7 +48963,7 @@ function numLit2(values, formatCode2 = "General") {
|
|
|
48261
48963
|
"c:numLit": {
|
|
48262
48964
|
"c:formatCode": formatCode2,
|
|
48263
48965
|
"c:ptCount": { "@_val": String(values.length) },
|
|
48264
|
-
"c:pt":
|
|
48966
|
+
"c:pt": points3(values.map(String))
|
|
48265
48967
|
}
|
|
48266
48968
|
};
|
|
48267
48969
|
}
|
|
@@ -48269,7 +48971,7 @@ function strLit(values) {
|
|
|
48269
48971
|
return {
|
|
48270
48972
|
"c:strLit": {
|
|
48271
48973
|
"c:ptCount": { "@_val": String(values.length) },
|
|
48272
|
-
"c:pt":
|
|
48974
|
+
"c:pt": points3(values)
|
|
48273
48975
|
}
|
|
48274
48976
|
};
|
|
48275
48977
|
}
|
|
@@ -49395,7 +50097,7 @@ function applyChartAxisTitleStyleToXml(axisNode, style, getLocalName2, resolveCo
|
|
|
49395
50097
|
}
|
|
49396
50098
|
|
|
49397
50099
|
// pptx/core/utils/chart-color-map-override.ts
|
|
49398
|
-
function
|
|
50100
|
+
function keyOf9(node, name, localName15) {
|
|
49399
50101
|
return Object.keys(node).find((key2) => localName15(key2) === name);
|
|
49400
50102
|
}
|
|
49401
50103
|
function prefixOf6(key2) {
|
|
@@ -49409,7 +50111,7 @@ function applyChartColorMapOverride(chartSpace, value, localName15) {
|
|
|
49409
50111
|
if (value === void 0) {
|
|
49410
50112
|
return;
|
|
49411
50113
|
}
|
|
49412
|
-
const existingKey =
|
|
50114
|
+
const existingKey = keyOf9(chartSpace, "clrMapOvr", localName15);
|
|
49413
50115
|
if (value === null || Object.keys(value).length === 0) {
|
|
49414
50116
|
if (existingKey) {
|
|
49415
50117
|
delete chartSpace[existingKey];
|
|
@@ -49424,19 +50126,19 @@ function applyChartColorMapOverride(chartSpace, value, localName15) {
|
|
|
49424
50126
|
chartSpace[existingKey] = node;
|
|
49425
50127
|
return;
|
|
49426
50128
|
}
|
|
49427
|
-
const chartKey =
|
|
50129
|
+
const chartKey = keyOf9(chartSpace, "chart", localName15);
|
|
49428
50130
|
const prefix = prefixOf6(chartKey);
|
|
49429
50131
|
const entries = Object.entries(chartSpace);
|
|
49430
50132
|
for (const key2 of Object.keys(chartSpace)) {
|
|
49431
50133
|
delete chartSpace[key2];
|
|
49432
50134
|
}
|
|
49433
50135
|
let inserted = false;
|
|
49434
|
-
for (const [key2,
|
|
50136
|
+
for (const [key2, child16] of entries) {
|
|
49435
50137
|
if (!inserted && localName15(key2) === "chart") {
|
|
49436
50138
|
chartSpace[`${prefix}:clrMapOvr`] = node;
|
|
49437
50139
|
inserted = true;
|
|
49438
50140
|
}
|
|
49439
|
-
chartSpace[key2] =
|
|
50141
|
+
chartSpace[key2] = child16;
|
|
49440
50142
|
}
|
|
49441
50143
|
if (!inserted) {
|
|
49442
50144
|
chartSpace[`${prefix}:clrMapOvr`] = node;
|
|
@@ -49576,7 +50278,7 @@ function applyGroupAxisReferences(container, series, axes, getLocalName2) {
|
|
|
49576
50278
|
function findKey15(obj, local, getLocalName2) {
|
|
49577
50279
|
return Object.keys(obj).find((k) => getLocalName2(k) === local);
|
|
49578
50280
|
}
|
|
49579
|
-
function
|
|
50281
|
+
function points4(values) {
|
|
49580
50282
|
return values.map((v, i) => ({ "@_idx": String(i), "c:v": v }));
|
|
49581
50283
|
}
|
|
49582
50284
|
function wrapperLocalName(containerLocalName) {
|
|
@@ -49594,7 +50296,7 @@ function buildFilteredSerNode(entry2, categories) {
|
|
|
49594
50296
|
}
|
|
49595
50297
|
if (cats.length > 0) {
|
|
49596
50298
|
node["c:cat"] = {
|
|
49597
|
-
"c:strLit": { "c:ptCount": { "@_val": String(cats.length) }, "c:pt":
|
|
50299
|
+
"c:strLit": { "c:ptCount": { "@_val": String(cats.length) }, "c:pt": points4(cats) }
|
|
49598
50300
|
};
|
|
49599
50301
|
}
|
|
49600
50302
|
if (entry2.values) {
|
|
@@ -49602,7 +50304,7 @@ function buildFilteredSerNode(entry2, categories) {
|
|
|
49602
50304
|
"c:numLit": {
|
|
49603
50305
|
"c:formatCode": "General",
|
|
49604
50306
|
"c:ptCount": { "@_val": String(entry2.values.length) },
|
|
49605
|
-
"c:pt":
|
|
50307
|
+
"c:pt": points4(entry2.values.map(String))
|
|
49606
50308
|
}
|
|
49607
50309
|
};
|
|
49608
50310
|
}
|
|
@@ -49665,7 +50367,33 @@ function applyFilteredSeriesToXml(container, filteredSeries, categories, contain
|
|
|
49665
50367
|
}
|
|
49666
50368
|
|
|
49667
50369
|
// pptx/core/utils/chart-legend-serializer.ts
|
|
49668
|
-
function
|
|
50370
|
+
function applyLegendOverlay(legendNode, overlay, getLocalName2) {
|
|
50371
|
+
if (overlay === void 0) {
|
|
50372
|
+
return;
|
|
50373
|
+
}
|
|
50374
|
+
const key2 = Object.keys(legendNode).find((k) => getLocalName2(k) === "overlay");
|
|
50375
|
+
const node = key2 ? legendNode[key2] : void 0;
|
|
50376
|
+
const val = node && typeof node === "object" ? node["@_val"] : void 0;
|
|
50377
|
+
const authored = key2 ? !(val === "0" || val === "false") : true;
|
|
50378
|
+
if (authored === overlay) {
|
|
50379
|
+
return;
|
|
50380
|
+
}
|
|
50381
|
+
const value = { "@_val": overlay ? "1" : "0" };
|
|
50382
|
+
if (key2) {
|
|
50383
|
+
legendNode[key2] = value;
|
|
50384
|
+
return;
|
|
50385
|
+
}
|
|
50386
|
+
const entries = Object.entries(legendNode);
|
|
50387
|
+
const at = entries.findIndex(([k]) => ["spPr", "txPr", "extLst"].includes(getLocalName2(k)));
|
|
50388
|
+
entries.splice(at < 0 ? entries.length : at, 0, ["c:overlay", value]);
|
|
50389
|
+
for (const k of Object.keys(legendNode)) {
|
|
50390
|
+
delete legendNode[k];
|
|
50391
|
+
}
|
|
50392
|
+
for (const [k, v] of entries) {
|
|
50393
|
+
legendNode[k] = v;
|
|
50394
|
+
}
|
|
50395
|
+
}
|
|
50396
|
+
function child12(node, name, getLocalName2) {
|
|
49669
50397
|
if (!node) {
|
|
49670
50398
|
return void 0;
|
|
49671
50399
|
}
|
|
@@ -49678,20 +50406,20 @@ function parseChartLegendEntries(legend, getLocalName2, parseColor, resolveTypef
|
|
|
49678
50406
|
const nodes = raw ? Array.isArray(raw) ? raw : [raw] : [];
|
|
49679
50407
|
return nodes.flatMap((value) => {
|
|
49680
50408
|
const node = value;
|
|
49681
|
-
const index = Number.parseInt(String(
|
|
50409
|
+
const index = Number.parseInt(String(child12(node, "idx", getLocalName2)?.["@_val"] ?? ""), 10);
|
|
49682
50410
|
if (!Number.isFinite(index) || index < 0) {
|
|
49683
50411
|
return [];
|
|
49684
50412
|
}
|
|
49685
50413
|
const entry2 = { index };
|
|
49686
|
-
const deleteNode =
|
|
50414
|
+
const deleteNode = child12(node, "delete", getLocalName2);
|
|
49687
50415
|
if (deleteNode) {
|
|
49688
50416
|
const val = deleteNode["@_val"];
|
|
49689
50417
|
entry2.deleted = val !== "0" && val !== "false";
|
|
49690
50418
|
}
|
|
49691
50419
|
const xmlLookup = {
|
|
49692
|
-
getChildByLocalName: (parent, name) =>
|
|
50420
|
+
getChildByLocalName: (parent, name) => child12(parent, name, getLocalName2)
|
|
49693
50421
|
};
|
|
49694
|
-
const defRPr = resolveTxPrDefRPr(
|
|
50422
|
+
const defRPr = resolveTxPrDefRPr(child12(node, "txPr", getLocalName2), xmlLookup);
|
|
49695
50423
|
const style = parseDefRPrTextStyle(defRPr, xmlLookup, { parseColor }, resolveTypeface);
|
|
49696
50424
|
if (style) {
|
|
49697
50425
|
entry2.textStyle = style;
|
|
@@ -49716,9 +50444,9 @@ function setEntryChoice(node, key2, value, getLocalName2) {
|
|
|
49716
50444
|
}
|
|
49717
50445
|
function authoredEntryDefRPr(node, txPrKey, getLocalName2) {
|
|
49718
50446
|
const txPr = txPrKey ? node[txPrKey] : void 0;
|
|
49719
|
-
const paragraph = txPr ?
|
|
49720
|
-
const pPr = paragraph ?
|
|
49721
|
-
return pPr ?
|
|
50447
|
+
const paragraph = txPr ? child12(txPr, "p", getLocalName2) : void 0;
|
|
50448
|
+
const pPr = paragraph ? child12(paragraph, "pPr", getLocalName2) : void 0;
|
|
50449
|
+
return pPr ? child12(pPr, "defRPr", getLocalName2) : void 0;
|
|
49722
50450
|
}
|
|
49723
50451
|
function applyLegendEntries(legend, entries, getLocalName2, resolveColor2) {
|
|
49724
50452
|
if (!entries) {
|
|
@@ -49728,7 +50456,7 @@ function applyLegendEntries(legend, entries, getLocalName2, resolveColor2) {
|
|
|
49728
50456
|
const raw = key2 ? legend[key2] : void 0;
|
|
49729
50457
|
const existing = raw ? Array.isArray(raw) ? raw : [raw] : [];
|
|
49730
50458
|
const byIndex = new Map(
|
|
49731
|
-
existing.map((node) => [Number(
|
|
50459
|
+
existing.map((node) => [Number(child12(node, "idx", getLocalName2)?.["@_val"]), node])
|
|
49732
50460
|
);
|
|
49733
50461
|
const updated = [...existing];
|
|
49734
50462
|
for (const entry2 of entries) {
|
|
@@ -49768,13 +50496,13 @@ function applyLegendEntries(legend, entries, getLocalName2, resolveColor2) {
|
|
|
49768
50496
|
legend[key2] = updated;
|
|
49769
50497
|
return;
|
|
49770
50498
|
}
|
|
49771
|
-
const
|
|
49772
|
-
const position2 =
|
|
49773
|
-
|
|
50499
|
+
const children6 = Object.entries(legend);
|
|
50500
|
+
const position2 = children6.findIndex(([candidate]) => getLocalName2(candidate) !== "legendPos");
|
|
50501
|
+
children6.splice(position2 < 0 ? children6.length : position2, 0, ["c:legendEntry", updated]);
|
|
49774
50502
|
for (const candidate of Object.keys(legend)) {
|
|
49775
50503
|
delete legend[candidate];
|
|
49776
50504
|
}
|
|
49777
|
-
for (const [candidate, value] of
|
|
50505
|
+
for (const [candidate, value] of children6) {
|
|
49778
50506
|
legend[candidate] = value;
|
|
49779
50507
|
}
|
|
49780
50508
|
}
|
|
@@ -49809,7 +50537,7 @@ function applyChartLegendToXml(chartRoot, style, getLocalName2, resolveColor2) {
|
|
|
49809
50537
|
"c:legend",
|
|
49810
50538
|
{
|
|
49811
50539
|
"c:legendPos": { "@_val": style.legendPosition ?? "r" },
|
|
49812
|
-
"c:overlay": { "@_val": "0" }
|
|
50540
|
+
"c:overlay": { "@_val": style.legendOverlay ? "1" : "0" }
|
|
49813
50541
|
},
|
|
49814
50542
|
"plotArea",
|
|
49815
50543
|
getLocalName2
|
|
@@ -49833,6 +50561,7 @@ function applyChartLegendToXml(chartRoot, style, getLocalName2, resolveColor2) {
|
|
|
49833
50561
|
);
|
|
49834
50562
|
}
|
|
49835
50563
|
}
|
|
50564
|
+
applyLegendOverlay(legendNode, style.legendOverlay, getLocalName2);
|
|
49836
50565
|
applyLegendEntries(legendNode, style.legendEntries, getLocalName2, resolveColor2);
|
|
49837
50566
|
}
|
|
49838
50567
|
|
|
@@ -49856,7 +50585,7 @@ var CONTAINER_ORDER = [
|
|
|
49856
50585
|
function findKey16(node, name, localName15) {
|
|
49857
50586
|
return Object.keys(node).find((key2) => localName15(key2) === name);
|
|
49858
50587
|
}
|
|
49859
|
-
function
|
|
50588
|
+
function setOrdered4(node, name, value, localName15) {
|
|
49860
50589
|
const key2 = findKey16(node, name, localName15);
|
|
49861
50590
|
if (key2) {
|
|
49862
50591
|
node[key2] = value;
|
|
@@ -49874,8 +50603,8 @@ function setOrdered3(node, name, value, localName15) {
|
|
|
49874
50603
|
for (const candidate of Object.keys(node)) {
|
|
49875
50604
|
delete node[candidate];
|
|
49876
50605
|
}
|
|
49877
|
-
for (const [candidate,
|
|
49878
|
-
node[candidate] =
|
|
50606
|
+
for (const [candidate, child16] of entries) {
|
|
50607
|
+
node[candidate] = child16;
|
|
49879
50608
|
}
|
|
49880
50609
|
}
|
|
49881
50610
|
function applyChartLineStyle(chartContainer, elementName, style, localName15, resolveColor2) {
|
|
@@ -49901,7 +50630,7 @@ function applyChartLineStyle(chartContainer, elementName, style, localName15, re
|
|
|
49901
50630
|
resolveColor2
|
|
49902
50631
|
);
|
|
49903
50632
|
}
|
|
49904
|
-
|
|
50633
|
+
setOrdered4(chartContainer, elementName, node, localName15);
|
|
49905
50634
|
}
|
|
49906
50635
|
|
|
49907
50636
|
// pptx/core/utils/chart-series-color-serializer.ts
|
|
@@ -50514,7 +51243,7 @@ function replaceChartExDataDimensions(target, fresh, getLocalName2) {
|
|
|
50514
51243
|
function findKey21(node, localName15, getLocalName2) {
|
|
50515
51244
|
return Object.keys(node).find((key2) => getLocalName2(key2) === localName15);
|
|
50516
51245
|
}
|
|
50517
|
-
function
|
|
51246
|
+
function child13(node, localName15, getLocalName2) {
|
|
50518
51247
|
if (!node) {
|
|
50519
51248
|
return void 0;
|
|
50520
51249
|
}
|
|
@@ -50556,8 +51285,8 @@ var AFTER_TX = [
|
|
|
50556
51285
|
"extLst"
|
|
50557
51286
|
];
|
|
50558
51287
|
function applySeriesName(node, name, getLocalName2) {
|
|
50559
|
-
const tx =
|
|
50560
|
-
const txData =
|
|
51288
|
+
const tx = child13(node, "tx", getLocalName2);
|
|
51289
|
+
const txData = child13(tx, "txData", getLocalName2);
|
|
50561
51290
|
if (tx && txData) {
|
|
50562
51291
|
const vKey = findKey21(txData, "v", getLocalName2) ?? "cx:v";
|
|
50563
51292
|
txData[vKey] = name;
|
|
@@ -50572,8 +51301,8 @@ function applySeriesName(node, name, getLocalName2) {
|
|
|
50572
51301
|
var FILL_KINDS = ["noFill", "solidFill", "gradFill", "blipFill", "pattFill", "grpFill"];
|
|
50573
51302
|
var AFTER_FILL = ["ln", "effectLst", "effectDag", "scene3d", "sp3d", "extLst"];
|
|
50574
51303
|
function currentSeriesColor(node, getLocalName2) {
|
|
50575
|
-
const srgb =
|
|
50576
|
-
|
|
51304
|
+
const srgb = child13(
|
|
51305
|
+
child13(child13(node, "spPr", getLocalName2), "solidFill", getLocalName2),
|
|
50577
51306
|
"srgbClr",
|
|
50578
51307
|
getLocalName2
|
|
50579
51308
|
);
|
|
@@ -50589,7 +51318,7 @@ function applySeriesColor(node, series, getLocalName2) {
|
|
|
50589
51318
|
if (wanted === currentSeriesColor(node, getLocalName2)) {
|
|
50590
51319
|
return;
|
|
50591
51320
|
}
|
|
50592
|
-
const spPr =
|
|
51321
|
+
const spPr = child13(node, "spPr", getLocalName2);
|
|
50593
51322
|
if (!spPr) {
|
|
50594
51323
|
insertBefore3(node, "cx:spPr", fill, AFTER_TX.slice(1), getLocalName2);
|
|
50595
51324
|
return;
|
|
@@ -50633,7 +51362,7 @@ function nextDataId(dataNodes) {
|
|
|
50633
51362
|
return max + 1;
|
|
50634
51363
|
}
|
|
50635
51364
|
function bindSeriesData(node, dataNodes, chartData, series, getLocalName2) {
|
|
50636
|
-
const dataIdNode =
|
|
51365
|
+
const dataIdNode = child13(node, "dataId", getLocalName2);
|
|
50637
51366
|
const dataId = dataIdNode ? String(dataIdNode["@_val"] ?? "") : void 0;
|
|
50638
51367
|
const referenced = dataId !== void 0 ? dataNodes.find((data) => String(data["@_id"]) === dataId) : void 0;
|
|
50639
51368
|
if (referenced) {
|
|
@@ -50698,8 +51427,8 @@ function applyLegend(chartRoot, chartData, getLocalName2) {
|
|
|
50698
51427
|
insertBefore3(chartRoot, "cx:legend", legend, ["extLst"], getLocalName2);
|
|
50699
51428
|
}
|
|
50700
51429
|
function chartExLayoutChanged(chartSpace, chartData, getLocalName2) {
|
|
50701
|
-
const region =
|
|
50702
|
-
|
|
51430
|
+
const region = child13(
|
|
51431
|
+
child13(child13(chartSpace, "chart", getLocalName2), "plotArea", getLocalName2),
|
|
50703
51432
|
"plotAreaRegion",
|
|
50704
51433
|
getLocalName2
|
|
50705
51434
|
);
|
|
@@ -50713,9 +51442,9 @@ function chartExLayoutChanged(chartSpace, chartData, getLocalName2) {
|
|
|
50713
51442
|
return chartExLayoutId(chartData, series).toLowerCase() !== existing;
|
|
50714
51443
|
}
|
|
50715
51444
|
function applyChartExUpdate(chartSpace, chartData, getLocalName2) {
|
|
50716
|
-
const chartRoot =
|
|
50717
|
-
const plotArea =
|
|
50718
|
-
const region =
|
|
51445
|
+
const chartRoot = child13(chartSpace, "chart", getLocalName2);
|
|
51446
|
+
const plotArea = child13(chartRoot, "plotArea", getLocalName2);
|
|
51447
|
+
const region = child13(plotArea, "plotAreaRegion", getLocalName2);
|
|
50719
51448
|
if (!chartRoot || !region) {
|
|
50720
51449
|
return false;
|
|
50721
51450
|
}
|
|
@@ -50742,7 +51471,7 @@ function applyChartExUpdate(chartSpace, chartData, getLocalName2) {
|
|
|
50742
51471
|
bindSeriesData(node, dataNodes, chartData, series, getLocalName2);
|
|
50743
51472
|
updated.push(node);
|
|
50744
51473
|
});
|
|
50745
|
-
const referencedId = (node) => String(
|
|
51474
|
+
const referencedId = (node) => String(child13(node, "dataId", getLocalName2)?.["@_val"]);
|
|
50746
51475
|
const liveIds = new Set(updated.map(referencedId));
|
|
50747
51476
|
const removedIds = new Set(existing.slice(chartData.series.length).map(referencedId));
|
|
50748
51477
|
const survivingData = dataNodes.filter((data) => {
|
|
@@ -51224,8 +51953,8 @@ function buildOffExt(off, ext) {
|
|
|
51224
51953
|
"a:ext": { "@_cx": String(Math.round(ext.cx)), "@_cy": String(Math.round(ext.cy)) }
|
|
51225
51954
|
};
|
|
51226
51955
|
}
|
|
51227
|
-
function buildChildXfrm(
|
|
51228
|
-
return buildOffExt(
|
|
51956
|
+
function buildChildXfrm(child16) {
|
|
51957
|
+
return buildOffExt(child16.off, child16.ext);
|
|
51229
51958
|
}
|
|
51230
51959
|
function buildGroupTransformXfrm(transform2) {
|
|
51231
51960
|
const xfrm = {
|
|
@@ -51250,29 +51979,29 @@ function buildGroupTransformXfrm(transform2) {
|
|
|
51250
51979
|
}
|
|
51251
51980
|
return xfrm;
|
|
51252
51981
|
}
|
|
51253
|
-
function buildGroupChildNode(
|
|
51254
|
-
if (
|
|
51255
|
-
if (
|
|
51256
|
-
return { key: "grpSp", node: cloneXmlObject(
|
|
51982
|
+
function buildGroupChildNode(child16, id, idState) {
|
|
51983
|
+
if (child16.kind === "grpSp") {
|
|
51984
|
+
if (child16.rawXml) {
|
|
51985
|
+
return { key: "grpSp", node: cloneXmlObject(child16.rawXml) ?? {} };
|
|
51257
51986
|
}
|
|
51258
|
-
return { key: "grpSp", node: buildGroupNode(
|
|
51987
|
+
return { key: "grpSp", node: buildGroupNode(child16, id, idState) };
|
|
51259
51988
|
}
|
|
51260
|
-
const rawShapeKey = (
|
|
51989
|
+
const rawShapeKey = (child16.kind === "pic" || child16.kind === "graphicFrame") && child16.rawXml ? child16.kind : void 0;
|
|
51261
51990
|
if (rawShapeKey) {
|
|
51262
|
-
const rawNode = cloneXmlObject(
|
|
51263
|
-
applyChildXfrmToRawNode(rawNode,
|
|
51264
|
-
applyRotationFlipToRawNode(rawNode,
|
|
51991
|
+
const rawNode = cloneXmlObject(child16.rawXml) ?? {};
|
|
51992
|
+
applyChildXfrmToRawNode(rawNode, child16.off, child16.ext);
|
|
51993
|
+
applyRotationFlipToRawNode(rawNode, child16.rotation, child16.flipH, child16.flipV);
|
|
51265
51994
|
if (rawShapeKey === "pic") {
|
|
51266
|
-
applyPicAltText(rawNode,
|
|
51995
|
+
applyPicAltText(rawNode, child16.altText);
|
|
51267
51996
|
}
|
|
51268
51997
|
return { key: rawShapeKey, node: rawNode };
|
|
51269
51998
|
}
|
|
51270
|
-
if (
|
|
51271
|
-
return { key: "cxnSp", node: buildCxnSpNode(
|
|
51999
|
+
if (child16.kind === "cxnSp") {
|
|
52000
|
+
return { key: "cxnSp", node: buildCxnSpNode(child16, id, buildChildXfrm(child16)) };
|
|
51272
52001
|
}
|
|
51273
|
-
return { key: "sp", node: buildSpNode(
|
|
52002
|
+
return { key: "sp", node: buildSpNode(child16, id, buildChildXfrm(child16)) };
|
|
51274
52003
|
}
|
|
51275
|
-
function appendGroupChildren(node,
|
|
52004
|
+
function appendGroupChildren(node, children6, idState) {
|
|
51276
52005
|
const buckets = {
|
|
51277
52006
|
sp: [],
|
|
51278
52007
|
cxnSp: [],
|
|
@@ -51280,9 +52009,9 @@ function appendGroupChildren(node, children5, idState) {
|
|
|
51280
52009
|
grpSp: [],
|
|
51281
52010
|
graphicFrame: []
|
|
51282
52011
|
};
|
|
51283
|
-
for (const
|
|
52012
|
+
for (const child16 of children6) {
|
|
51284
52013
|
const id = idState.next++;
|
|
51285
|
-
const { key: key2, node: childNode } = buildGroupChildNode(
|
|
52014
|
+
const { key: key2, node: childNode } = buildGroupChildNode(child16, id, idState);
|
|
51286
52015
|
buckets[key2].push(childNode);
|
|
51287
52016
|
}
|
|
51288
52017
|
for (const key2 of ["sp", "cxnSp", "pic", "grpSp", "graphicFrame"]) {
|
|
@@ -51818,14 +52547,14 @@ function a14ArtisticElementName(effect) {
|
|
|
51818
52547
|
}
|
|
51819
52548
|
return GALLERY_TO_A14[trimmed2];
|
|
51820
52549
|
}
|
|
51821
|
-
var
|
|
52550
|
+
var round2 = (value) => String(Math.round(value));
|
|
51822
52551
|
function buildArtisticNode(effects, elementName) {
|
|
51823
52552
|
const node = {};
|
|
51824
52553
|
const params = effects.artisticParams;
|
|
51825
52554
|
if (params && Object.keys(params).length > 0) {
|
|
51826
52555
|
for (const [name, value] of Object.entries(params)) {
|
|
51827
52556
|
if (Number.isFinite(value)) {
|
|
51828
|
-
node[`@_${name}`] =
|
|
52557
|
+
node[`@_${name}`] = round2(value);
|
|
51829
52558
|
}
|
|
51830
52559
|
}
|
|
51831
52560
|
return node;
|
|
@@ -51833,16 +52562,16 @@ function buildArtisticNode(effects, elementName) {
|
|
|
51833
52562
|
const radius = effects.artisticRadius;
|
|
51834
52563
|
const primary = ARTISTIC_PRIMARY_ATTRIBUTE[elementName];
|
|
51835
52564
|
if (primary !== void 0 && typeof radius === "number" && Number.isFinite(radius)) {
|
|
51836
|
-
node[`@_${primary}`] = primary === "radius" ?
|
|
52565
|
+
node[`@_${primary}`] = primary === "radius" ? round2(radius) : round2(radius * 1e3);
|
|
51837
52566
|
}
|
|
51838
52567
|
return node;
|
|
51839
52568
|
}
|
|
51840
52569
|
function buildMarks(marks) {
|
|
51841
52570
|
return (marks ?? []).map((mark) => ({
|
|
51842
|
-
"@_x1":
|
|
51843
|
-
"@_y1":
|
|
51844
|
-
"@_x2":
|
|
51845
|
-
"@_y2":
|
|
52571
|
+
"@_x1": round2(mark.x1 * 1e5),
|
|
52572
|
+
"@_y1": round2(mark.y1 * 1e5),
|
|
52573
|
+
"@_x2": round2(mark.x2 * 1e5),
|
|
52574
|
+
"@_y2": round2(mark.y2 * 1e5)
|
|
51846
52575
|
}));
|
|
51847
52576
|
}
|
|
51848
52577
|
function buildBackgroundRemovalNode(removal) {
|
|
@@ -51850,10 +52579,10 @@ function buildBackgroundRemovalNode(removal) {
|
|
|
51850
52579
|
return removal.rawXml;
|
|
51851
52580
|
}
|
|
51852
52581
|
const node = {
|
|
51853
|
-
"@_t":
|
|
51854
|
-
"@_b":
|
|
51855
|
-
"@_l":
|
|
51856
|
-
"@_r":
|
|
52582
|
+
"@_t": round2(removal.top * 1e5),
|
|
52583
|
+
"@_b": round2(removal.bottom * 1e5),
|
|
52584
|
+
"@_l": round2(removal.left * 1e5),
|
|
52585
|
+
"@_r": round2(removal.right * 1e5)
|
|
51857
52586
|
};
|
|
51858
52587
|
const foreground = buildMarks(removal.foregroundMarks);
|
|
51859
52588
|
if (foreground.length > 0) {
|
|
@@ -51872,26 +52601,26 @@ function buildImgEffects(effects) {
|
|
|
51872
52601
|
out.push({ "a14:backgroundRemoval": buildBackgroundRemovalNode(effects.backgroundRemoval) });
|
|
51873
52602
|
}
|
|
51874
52603
|
if (finite2(effects.sharpenSoften?.amount)) {
|
|
51875
|
-
out.push({ "a14:sharpenSoften": { "@_amount":
|
|
52604
|
+
out.push({ "a14:sharpenSoften": { "@_amount": round2(effects.sharpenSoften.amount) } });
|
|
51876
52605
|
}
|
|
51877
52606
|
const bc = effects.brightnessContrast;
|
|
51878
52607
|
if (bc && (finite2(bc.bright) || finite2(bc.contrast))) {
|
|
51879
52608
|
const node = {};
|
|
51880
52609
|
if (finite2(bc.bright)) {
|
|
51881
|
-
node["@_bright"] =
|
|
52610
|
+
node["@_bright"] = round2(bc.bright);
|
|
51882
52611
|
}
|
|
51883
52612
|
if (finite2(bc.contrast)) {
|
|
51884
|
-
node["@_contrast"] =
|
|
52613
|
+
node["@_contrast"] = round2(bc.contrast);
|
|
51885
52614
|
}
|
|
51886
52615
|
out.push({ "a14:brightnessContrast": node });
|
|
51887
52616
|
}
|
|
51888
52617
|
if (finite2(effects.colorTemperature?.colorTemp)) {
|
|
51889
52618
|
out.push({
|
|
51890
|
-
"a14:colorTemperature": { "@_colorTemp":
|
|
52619
|
+
"a14:colorTemperature": { "@_colorTemp": round2(effects.colorTemperature.colorTemp) }
|
|
51891
52620
|
});
|
|
51892
52621
|
}
|
|
51893
52622
|
if (finite2(effects.colorSaturation?.sat)) {
|
|
51894
|
-
out.push({ "a14:saturation": { "@_sat":
|
|
52623
|
+
out.push({ "a14:saturation": { "@_sat": round2(effects.colorSaturation.sat) } });
|
|
51895
52624
|
}
|
|
51896
52625
|
const artistic = a14ArtisticElementName(effects.artisticEffect);
|
|
51897
52626
|
if (artistic !== void 0) {
|
|
@@ -51943,7 +52672,7 @@ function applyA14ImageExtension(blip, effects) {
|
|
|
51943
52672
|
|
|
51944
52673
|
// pptx/core/core/runtime/image-alpha-effects.ts
|
|
51945
52674
|
var localName12 = (key2) => key2.split(":").at(-1) ?? key2;
|
|
51946
|
-
function
|
|
52675
|
+
function child14(parent, name) {
|
|
51947
52676
|
if (!parent) {
|
|
51948
52677
|
return void 0;
|
|
51949
52678
|
}
|
|
@@ -52004,30 +52733,30 @@ function percentXml(raw, attr4, value, fixed, defaultValue) {
|
|
|
52004
52733
|
}
|
|
52005
52734
|
function parseImageAlphaEffects(blip, parseColor) {
|
|
52006
52735
|
const effects = {};
|
|
52007
|
-
const modFix =
|
|
52736
|
+
const modFix = child14(blip, "alphaModFix");
|
|
52008
52737
|
if (modFix) {
|
|
52009
52738
|
effects.alphaModFix = parsePercent(modFix["@_amt"], false) ?? 100;
|
|
52010
52739
|
effects.alphaModFixRawXml = modFix;
|
|
52011
52740
|
}
|
|
52012
|
-
const inverse =
|
|
52741
|
+
const inverse = child14(blip, "alphaInv");
|
|
52013
52742
|
if (inverse) {
|
|
52014
52743
|
const color = parseColor(canonicalColor(inverse));
|
|
52015
52744
|
effects.alphaInv = { ...color ? { color } : {}, rawXml: inverse };
|
|
52016
52745
|
}
|
|
52017
|
-
const ceiling =
|
|
52746
|
+
const ceiling = child14(blip, "alphaCeiling");
|
|
52018
52747
|
if (ceiling) {
|
|
52019
52748
|
effects.alphaCeiling = true;
|
|
52020
52749
|
effects.alphaCeilingRawXml = ceiling;
|
|
52021
52750
|
}
|
|
52022
|
-
const floor =
|
|
52751
|
+
const floor = child14(blip, "alphaFloor");
|
|
52023
52752
|
if (floor) {
|
|
52024
52753
|
effects.alphaFloor = true;
|
|
52025
52754
|
effects.alphaFloorRawXml = floor;
|
|
52026
52755
|
}
|
|
52027
|
-
const modulate =
|
|
52756
|
+
const modulate = child14(blip, "alphaMod");
|
|
52028
52757
|
if (modulate) {
|
|
52029
|
-
const cont =
|
|
52030
|
-
const nestedFix =
|
|
52758
|
+
const cont = child14(modulate, "cont");
|
|
52759
|
+
const nestedFix = child14(cont, "alphaModFix");
|
|
52031
52760
|
const amt = nestedFix ? parsePercent(nestedFix["@_amt"], false) : void 0;
|
|
52032
52761
|
effects.alphaMod = {
|
|
52033
52762
|
...cont ? { contRawXml: cont } : {},
|
|
@@ -52035,7 +52764,7 @@ function parseImageAlphaEffects(blip, parseColor) {
|
|
|
52035
52764
|
rawXml: modulate
|
|
52036
52765
|
};
|
|
52037
52766
|
}
|
|
52038
|
-
const replace =
|
|
52767
|
+
const replace = child14(blip, "alphaRepl");
|
|
52039
52768
|
if (replace) {
|
|
52040
52769
|
const alpha = parsePercent(replace["@_a"], true);
|
|
52041
52770
|
if (alpha !== void 0) {
|
|
@@ -52043,7 +52772,7 @@ function parseImageAlphaEffects(blip, parseColor) {
|
|
|
52043
52772
|
effects.alphaReplRawXml = replace;
|
|
52044
52773
|
}
|
|
52045
52774
|
}
|
|
52046
|
-
const biLevel =
|
|
52775
|
+
const biLevel = child14(blip, "alphaBiLevel");
|
|
52047
52776
|
if (biLevel) {
|
|
52048
52777
|
const threshold = parsePercent(biLevel["@_thresh"], true);
|
|
52049
52778
|
if (threshold !== void 0) {
|
|
@@ -52088,7 +52817,7 @@ function applyImageAlphaEffects(blip, effects, parseColor) {
|
|
|
52088
52817
|
if (effects.alphaMod.contRawXml) {
|
|
52089
52818
|
setChild4(node, "cont", effects.alphaMod.contRawXml);
|
|
52090
52819
|
}
|
|
52091
|
-
if (
|
|
52820
|
+
if (child14(node, "cont") || effects.alphaMod.rawXml) {
|
|
52092
52821
|
setChild4(blip, "alphaMod", node);
|
|
52093
52822
|
} else {
|
|
52094
52823
|
setChild4(blip, "alphaMod", void 0);
|
|
@@ -52112,7 +52841,7 @@ function applyImageAlphaEffects(blip, effects, parseColor) {
|
|
|
52112
52841
|
|
|
52113
52842
|
// pptx/core/core/runtime/image-color-effects.ts
|
|
52114
52843
|
var localName13 = (key2) => key2.split(":").at(-1) ?? key2;
|
|
52115
|
-
function
|
|
52844
|
+
function child15(parent, name) {
|
|
52116
52845
|
if (!parent) {
|
|
52117
52846
|
return void 0;
|
|
52118
52847
|
}
|
|
@@ -52163,12 +52892,12 @@ function opacity(parent, extractOpacity) {
|
|
|
52163
52892
|
}
|
|
52164
52893
|
function parseImageColorEffects(blip, parseColor, extractOpacity) {
|
|
52165
52894
|
const result = {};
|
|
52166
|
-
const grayscale =
|
|
52895
|
+
const grayscale = child15(blip, "grayscl");
|
|
52167
52896
|
if (grayscale) {
|
|
52168
52897
|
result.grayscale = true;
|
|
52169
52898
|
result.grayscaleRawXml = grayscale;
|
|
52170
52899
|
}
|
|
52171
|
-
const biLevel =
|
|
52900
|
+
const biLevel = child15(blip, "biLevel");
|
|
52172
52901
|
if (biLevel) {
|
|
52173
52902
|
const threshold = Number(biLevel["@_thresh"]);
|
|
52174
52903
|
if (Number.isFinite(threshold)) {
|
|
@@ -52176,9 +52905,9 @@ function parseImageColorEffects(blip, parseColor, extractOpacity) {
|
|
|
52176
52905
|
}
|
|
52177
52906
|
result.biLevelRawXml = biLevel;
|
|
52178
52907
|
}
|
|
52179
|
-
const change =
|
|
52180
|
-
const from =
|
|
52181
|
-
const to =
|
|
52908
|
+
const change = child15(blip, "clrChange");
|
|
52909
|
+
const from = child15(change, "clrFrom");
|
|
52910
|
+
const to = child15(change, "clrTo");
|
|
52182
52911
|
if (change && from && to) {
|
|
52183
52912
|
result.clrChange = {
|
|
52184
52913
|
clrFrom: resolveColor(from, parseColor) ?? "#000000",
|
|
@@ -52187,12 +52916,12 @@ function parseImageColorEffects(blip, parseColor, extractOpacity) {
|
|
|
52187
52916
|
rawXml: change
|
|
52188
52917
|
};
|
|
52189
52918
|
}
|
|
52190
|
-
const replace =
|
|
52919
|
+
const replace = child15(blip, "clrRepl");
|
|
52191
52920
|
const replacement = resolveColor(replace, parseColor);
|
|
52192
52921
|
if (replace && replacement) {
|
|
52193
52922
|
result.clrRepl = { color: replacement, rawXml: replace };
|
|
52194
52923
|
}
|
|
52195
|
-
const duotone =
|
|
52924
|
+
const duotone = child15(blip, "duotone");
|
|
52196
52925
|
if (duotone) {
|
|
52197
52926
|
const colors = colorChoices(duotone).map((color) => resolveColor(color, parseColor));
|
|
52198
52927
|
if (colors[0] && colors[1]) {
|
|
@@ -52255,8 +52984,8 @@ function applyImageColorEffects(blip, effects, parseColor, extractOpacity) {
|
|
|
52255
52984
|
setChild5(blip, "biLevel", biLevel);
|
|
52256
52985
|
const change = effects.clrChange;
|
|
52257
52986
|
if (change) {
|
|
52258
|
-
const rawFrom =
|
|
52259
|
-
const rawTo =
|
|
52987
|
+
const rawFrom = child15(change.rawXml, "clrFrom");
|
|
52988
|
+
const rawTo = child15(change.rawXml, "clrTo");
|
|
52260
52989
|
const rawTransparent = rawTo ? (opacity(rawTo, extractOpacity) ?? 1) <= 0 : void 0;
|
|
52261
52990
|
const unchanged2 = sameRawColor(rawFrom, change.clrFrom, parseColor) && sameRawColor(rawTo, change.clrTo, parseColor) && (rawTransparent === void 0 || change.clrToTransparent === rawTransparent);
|
|
52262
52991
|
if (unchanged2 && change.rawXml) {
|
|
@@ -52429,7 +53158,7 @@ function updateEndParagraphProperties(existing, style, serialize) {
|
|
|
52429
53158
|
const baseline = serialize({ ...style, ...style.inheritedRunStyle, ...style.authoredRunStyle });
|
|
52430
53159
|
const current = serialize(style);
|
|
52431
53160
|
const attributes = {};
|
|
52432
|
-
const
|
|
53161
|
+
const children6 = /* @__PURE__ */ new Map();
|
|
52433
53162
|
for (const key2 of /* @__PURE__ */ new Set([...Object.keys(baseline), ...Object.keys(current)])) {
|
|
52434
53163
|
if (JSON.stringify(baseline[key2]) === JSON.stringify(current[key2])) {
|
|
52435
53164
|
continue;
|
|
@@ -52437,10 +53166,10 @@ function updateEndParagraphProperties(existing, style, serialize) {
|
|
|
52437
53166
|
if (key2.startsWith("@_")) {
|
|
52438
53167
|
attributes[key2.slice(2)] = current[key2] === void 0 ? null : String(current[key2]);
|
|
52439
53168
|
} else {
|
|
52440
|
-
|
|
53169
|
+
children6.set(key2, current[key2] ?? null);
|
|
52441
53170
|
}
|
|
52442
53171
|
}
|
|
52443
|
-
if (Object.keys(attributes).length === 0 &&
|
|
53172
|
+
if (Object.keys(attributes).length === 0 && children6.size === 0) {
|
|
52444
53173
|
return existing;
|
|
52445
53174
|
}
|
|
52446
53175
|
const fillKeys = [
|
|
@@ -52451,15 +53180,15 @@ function updateEndParagraphProperties(existing, style, serialize) {
|
|
|
52451
53180
|
"a:pattFill",
|
|
52452
53181
|
"a:grpFill"
|
|
52453
53182
|
];
|
|
52454
|
-
const changedFill = fillKeys.find((key2) =>
|
|
53183
|
+
const changedFill = fillKeys.find((key2) => children6.get(key2));
|
|
52455
53184
|
if (changedFill) {
|
|
52456
53185
|
for (const key2 of fillKeys) {
|
|
52457
53186
|
if (key2 !== changedFill) {
|
|
52458
|
-
|
|
53187
|
+
children6.set(key2, null);
|
|
52459
53188
|
}
|
|
52460
53189
|
}
|
|
52461
53190
|
}
|
|
52462
|
-
return mergeOrderedXml(existing, attributes,
|
|
53191
|
+
return mergeOrderedXml(existing, attributes, children6, DEF_RPR_CHILD_ORDER);
|
|
52463
53192
|
}
|
|
52464
53193
|
|
|
52465
53194
|
// pptx/core/core/runtime/paragraph-child-assembly.ts
|
|
@@ -52496,10 +53225,10 @@ function classifyParagraphChild(run) {
|
|
|
52496
53225
|
}
|
|
52497
53226
|
return { tag: "m:oMath", value: eqXml };
|
|
52498
53227
|
}
|
|
52499
|
-
function isGroupedByTag2(
|
|
53228
|
+
function isGroupedByTag2(children6) {
|
|
52500
53229
|
const seen = /* @__PURE__ */ new Set();
|
|
52501
53230
|
let previous = "";
|
|
52502
|
-
for (const { tag } of
|
|
53231
|
+
for (const { tag } of children6) {
|
|
52503
53232
|
if (tag !== previous && seen.has(tag)) {
|
|
52504
53233
|
return false;
|
|
52505
53234
|
}
|
|
@@ -52508,10 +53237,10 @@ function isGroupedByTag2(children5) {
|
|
|
52508
53237
|
}
|
|
52509
53238
|
return true;
|
|
52510
53239
|
}
|
|
52511
|
-
function writeParagraphChildren(paragraph,
|
|
52512
|
-
if (isGroupedByTag2(
|
|
53240
|
+
function writeParagraphChildren(paragraph, children6) {
|
|
53241
|
+
if (isGroupedByTag2(children6)) {
|
|
52513
53242
|
const grouped = /* @__PURE__ */ new Map();
|
|
52514
|
-
for (const { tag, value } of
|
|
53243
|
+
for (const { tag, value } of children6) {
|
|
52515
53244
|
const bucket = grouped.get(tag);
|
|
52516
53245
|
if (bucket) {
|
|
52517
53246
|
bucket.push(value);
|
|
@@ -52525,10 +53254,10 @@ function writeParagraphChildren(paragraph, children5) {
|
|
|
52525
53254
|
return;
|
|
52526
53255
|
}
|
|
52527
53256
|
const totals = /* @__PURE__ */ new Map();
|
|
52528
|
-
for (const { tag } of
|
|
53257
|
+
for (const { tag } of children6) {
|
|
52529
53258
|
totals.set(tag, (totals.get(tag) ?? 0) + 1);
|
|
52530
53259
|
}
|
|
52531
|
-
for (const [position2, { tag, value }] of
|
|
53260
|
+
for (const [position2, { tag, value }] of children6.entries()) {
|
|
52532
53261
|
paragraph[(totals.get(tag) ?? 0) > 1 ? orderedXmlKey(tag, position2) : tag] = value;
|
|
52533
53262
|
}
|
|
52534
53263
|
}
|
|
@@ -52734,9 +53463,9 @@ function assembleParagraphXml(runs, paragraphProps, endParaRunProperties, markup
|
|
|
52734
53463
|
if (Object.keys(paragraphProps).length > 0 || markup?.emptyParagraphPropertiesAuthored) {
|
|
52735
53464
|
paragraph["a:pPr"] = paragraphProps;
|
|
52736
53465
|
}
|
|
52737
|
-
const
|
|
52738
|
-
if (
|
|
52739
|
-
writeParagraphChildren(paragraph,
|
|
53466
|
+
const children6 = runs.map((run) => classifyParagraphChild(run)).filter((child16) => child16 !== void 0);
|
|
53467
|
+
if (children6.length > 0) {
|
|
53468
|
+
writeParagraphChildren(paragraph, children6);
|
|
52740
53469
|
} else {
|
|
52741
53470
|
paragraph["a:r"] = runs.length > 1 ? runs : runs[0];
|
|
52742
53471
|
}
|
|
@@ -54662,18 +55391,18 @@ var PptxHandlerRuntime6 = class extends PptxHandlerRuntime5 {
|
|
|
54662
55391
|
const childTnLst = cTn["p:childTnLst"];
|
|
54663
55392
|
if (childTnLst) {
|
|
54664
55393
|
for (const container of ["p:par", "p:seq", "p:excl"]) {
|
|
54665
|
-
const
|
|
54666
|
-
for (const
|
|
54667
|
-
this.walkMediaTimingTree(
|
|
55394
|
+
const children6 = this.ensureArray(childTnLst[container]);
|
|
55395
|
+
for (const child16 of children6) {
|
|
55396
|
+
this.walkMediaTimingTree(child16, result, slidePath);
|
|
54668
55397
|
}
|
|
54669
55398
|
}
|
|
54670
55399
|
this.walkMediaTimingTree(childTnLst, result, slidePath);
|
|
54671
55400
|
}
|
|
54672
55401
|
}
|
|
54673
55402
|
for (const container of ["p:par", "p:seq", "p:excl", "p:tnLst"]) {
|
|
54674
|
-
const
|
|
54675
|
-
for (const
|
|
54676
|
-
this.walkMediaTimingTree(
|
|
55403
|
+
const children6 = this.ensureArray(node[container]);
|
|
55404
|
+
for (const child16 of children6) {
|
|
55405
|
+
this.walkMediaTimingTree(child16, result, slidePath);
|
|
54677
55406
|
}
|
|
54678
55407
|
}
|
|
54679
55408
|
}
|
|
@@ -57012,14 +57741,14 @@ function setOwnXmlProperty(node, key2, value) {
|
|
|
57012
57741
|
configurable: true
|
|
57013
57742
|
});
|
|
57014
57743
|
}
|
|
57015
|
-
function assignOrderedXmlChildren(target,
|
|
57744
|
+
function assignOrderedXmlChildren(target, children6) {
|
|
57016
57745
|
const runs = [];
|
|
57017
|
-
for (const
|
|
57746
|
+
for (const child16 of children6) {
|
|
57018
57747
|
const last = runs.at(-1);
|
|
57019
|
-
if (last && last.tag ===
|
|
57020
|
-
last.nodes.push(
|
|
57748
|
+
if (last && last.tag === child16.tag) {
|
|
57749
|
+
last.nodes.push(child16.node);
|
|
57021
57750
|
} else {
|
|
57022
|
-
runs.push({ tag:
|
|
57751
|
+
runs.push({ tag: child16.tag, nodes: [child16.node] });
|
|
57023
57752
|
}
|
|
57024
57753
|
}
|
|
57025
57754
|
const seen = /* @__PURE__ */ new Set();
|
|
@@ -57086,7 +57815,7 @@ function buildGroupTransformXml(group, emuPerPx, ownEmuOverride, rewrap) {
|
|
|
57086
57815
|
}
|
|
57087
57816
|
return xfrm;
|
|
57088
57817
|
}
|
|
57089
|
-
function applyGroupChildTransform(xml,
|
|
57818
|
+
function applyGroupChildTransform(xml, child16, emuPerPx, owner, precomputed) {
|
|
57090
57819
|
const spPr = xml["p:spPr"];
|
|
57091
57820
|
const grpSpPr = xml["p:grpSpPr"];
|
|
57092
57821
|
const childXfrm = spPr?.["a:xfrm"] ?? xml["p:xfrm"] ?? grpSpPr?.["a:xfrm"];
|
|
@@ -57095,18 +57824,18 @@ function applyGroupChildTransform(xml, child14, emuPerPx, owner, precomputed) {
|
|
|
57095
57824
|
}
|
|
57096
57825
|
childXfrm["a:off"] ??= {};
|
|
57097
57826
|
childXfrm["a:ext"] ??= {};
|
|
57098
|
-
const inverted = precomputed ?? (owner ? invertChildIntoGroupSpace(
|
|
57827
|
+
const inverted = precomputed ?? (owner ? invertChildIntoGroupSpace(child16, owner, emuPerPx) : void 0);
|
|
57099
57828
|
childXfrm["a:off"]["@_x"] = String(
|
|
57100
|
-
inverted ? inverted.xEmu : resolveXfrmEmu(
|
|
57829
|
+
inverted ? inverted.xEmu : resolveXfrmEmu(child16.x, child16.xEmu, emuPerPx)
|
|
57101
57830
|
);
|
|
57102
57831
|
childXfrm["a:off"]["@_y"] = String(
|
|
57103
|
-
inverted ? inverted.yEmu : resolveXfrmEmu(
|
|
57832
|
+
inverted ? inverted.yEmu : resolveXfrmEmu(child16.y, child16.yEmu, emuPerPx)
|
|
57104
57833
|
);
|
|
57105
57834
|
childXfrm["a:ext"]["@_cx"] = String(
|
|
57106
|
-
inverted ? inverted.widthEmu : resolveXfrmEmu(
|
|
57835
|
+
inverted ? inverted.widthEmu : resolveXfrmEmu(child16.width, child16.widthEmu, emuPerPx)
|
|
57107
57836
|
);
|
|
57108
57837
|
childXfrm["a:ext"]["@_cy"] = String(
|
|
57109
|
-
inverted ? inverted.heightEmu : resolveXfrmEmu(
|
|
57838
|
+
inverted ? inverted.heightEmu : resolveXfrmEmu(child16.height, child16.heightEmu, emuPerPx)
|
|
57110
57839
|
);
|
|
57111
57840
|
}
|
|
57112
57841
|
|
|
@@ -57372,14 +58101,14 @@ function buildInkShapeXml(el, emuPerPx) {
|
|
|
57372
58101
|
if (!Number.isFinite(x) || !Number.isFinite(y)) {
|
|
57373
58102
|
continue;
|
|
57374
58103
|
}
|
|
57375
|
-
const
|
|
58104
|
+
const pt2 = {
|
|
57376
58105
|
"@_x": String(Math.round(x * emuPerPx)),
|
|
57377
58106
|
"@_y": String(Math.round(y * emuPerPx))
|
|
57378
58107
|
};
|
|
57379
58108
|
if (token2.groups?.cmd?.toUpperCase() === "M") {
|
|
57380
|
-
moveToList.push({ "a:pt":
|
|
58109
|
+
moveToList.push({ "a:pt": pt2 });
|
|
57381
58110
|
} else {
|
|
57382
|
-
lnToList.push({ "a:pt":
|
|
58111
|
+
lnToList.push({ "a:pt": pt2 });
|
|
57383
58112
|
}
|
|
57384
58113
|
}
|
|
57385
58114
|
const pathXml = {
|
|
@@ -57681,8 +58410,8 @@ var PptxHandlerRuntime15 = class _PptxHandlerRuntime extends PptxHandlerRuntime1
|
|
|
57681
58410
|
preserveGroupChildSpace: childSpace
|
|
57682
58411
|
} : void 0;
|
|
57683
58412
|
const entries = [];
|
|
57684
|
-
for (const
|
|
57685
|
-
const entry2 = childCtx ? this.serializeGroupChildViaElementWriter(
|
|
58413
|
+
for (const child16 of group.children) {
|
|
58414
|
+
const entry2 = childCtx ? this.serializeGroupChildViaElementWriter(child16, childCtx) : this.serializeGroupChildFromRawXml(child16, childSpace);
|
|
57686
58415
|
if (entry2) {
|
|
57687
58416
|
entries.push(entry2);
|
|
57688
58417
|
}
|
|
@@ -57699,18 +58428,18 @@ var PptxHandlerRuntime15 = class _PptxHandlerRuntime extends PptxHandlerRuntime1
|
|
|
57699
58428
|
* Nested groups are recursed here rather than handed to the element writer,
|
|
57700
58429
|
* so the save context survives to every nesting depth.
|
|
57701
58430
|
*/
|
|
57702
|
-
serializeGroupChildViaElementWriter(
|
|
57703
|
-
if (
|
|
57704
|
-
const ownEmuOverride = ctx.preserveGroupChildSpace ? resolveGroupChildBoxEmu(
|
|
57705
|
-
const xml = this.buildGroupShapeXml(
|
|
58431
|
+
serializeGroupChildViaElementWriter(child16, ctx) {
|
|
58432
|
+
if (child16.type === "group") {
|
|
58433
|
+
const ownEmuOverride = ctx.preserveGroupChildSpace ? resolveGroupChildBoxEmu(child16, ctx.preserveGroupChildSpace, _PptxHandlerRuntime.EMU_PER_PX) : void 0;
|
|
58434
|
+
const xml = this.buildGroupShapeXml(child16, ctx, ownEmuOverride);
|
|
57706
58435
|
if (!xml) {
|
|
57707
58436
|
return null;
|
|
57708
58437
|
}
|
|
57709
|
-
this.serializeShapeLocks(xml,
|
|
58438
|
+
this.serializeShapeLocks(xml, child16);
|
|
57710
58439
|
return { tag: "p:grpSp", xml };
|
|
57711
58440
|
}
|
|
57712
58441
|
const collectors = createGroupChildCollectors();
|
|
57713
|
-
this.processSlideElement(
|
|
58442
|
+
this.processSlideElement(child16, collectors, ctx);
|
|
57714
58443
|
return pickGroupChildFromCollectors(collectors);
|
|
57715
58444
|
}
|
|
57716
58445
|
/**
|
|
@@ -57718,46 +58447,46 @@ var PptxHandlerRuntime15 = class _PptxHandlerRuntime extends PptxHandlerRuntime1
|
|
|
57718
58447
|
* markup through and patch only its transform. Preserves everything, but
|
|
57719
58448
|
* cannot pick up model-level edits.
|
|
57720
58449
|
*/
|
|
57721
|
-
serializeGroupChildFromRawXml(
|
|
57722
|
-
const emu2 = childSpace ? resolveGroupChildBoxEmu(
|
|
57723
|
-
const ownEmuOverride =
|
|
57724
|
-
const xml = this.buildGroupChildXml(
|
|
58450
|
+
serializeGroupChildFromRawXml(child16, childSpace) {
|
|
58451
|
+
const emu2 = childSpace ? resolveGroupChildBoxEmu(child16, childSpace, _PptxHandlerRuntime.EMU_PER_PX) : void 0;
|
|
58452
|
+
const ownEmuOverride = child16.type === "group" ? emu2 : void 0;
|
|
58453
|
+
const xml = this.buildGroupChildXml(child16, ownEmuOverride);
|
|
57725
58454
|
if (!xml) {
|
|
57726
58455
|
return null;
|
|
57727
58456
|
}
|
|
57728
|
-
applyGroupChildTransform(xml,
|
|
57729
|
-
const tag = classifyGroupChildTag(
|
|
58457
|
+
applyGroupChildTransform(xml, child16, _PptxHandlerRuntime.EMU_PER_PX, childSpace, emu2);
|
|
58458
|
+
const tag = classifyGroupChildTag(child16.type, xml);
|
|
57730
58459
|
if (!tag) {
|
|
57731
58460
|
this.compatibilityService.reportWarning({
|
|
57732
58461
|
code: "SAVE_GROUP_CHILD_SKIPPED",
|
|
57733
|
-
message: `Group child '${
|
|
58462
|
+
message: `Group child '${child16.id}' (${child16.type}) has no valid CT_GroupShape slot and was skipped during save.`,
|
|
57734
58463
|
scope: "save",
|
|
57735
|
-
elementId:
|
|
58464
|
+
elementId: child16.id
|
|
57736
58465
|
});
|
|
57737
58466
|
return null;
|
|
57738
58467
|
}
|
|
57739
58468
|
return { tag, xml };
|
|
57740
58469
|
}
|
|
57741
58470
|
/** Resolve (or fabricate) the XML node for a single group child. */
|
|
57742
|
-
buildGroupChildXml(
|
|
57743
|
-
if (
|
|
57744
|
-
return this.buildGroupShapeXml(
|
|
58471
|
+
buildGroupChildXml(child16, ownEmuOverride) {
|
|
58472
|
+
if (child16.type === "group") {
|
|
58473
|
+
return this.buildGroupShapeXml(child16, void 0, ownEmuOverride) ?? void 0;
|
|
57745
58474
|
}
|
|
57746
|
-
const xml =
|
|
58475
|
+
const xml = child16.rawXml;
|
|
57747
58476
|
if (xml) {
|
|
57748
58477
|
return xml;
|
|
57749
58478
|
}
|
|
57750
|
-
if (
|
|
57751
|
-
return this.createElementXml(
|
|
58479
|
+
if (child16.type === "text" || child16.type === "shape") {
|
|
58480
|
+
return this.createElementXml(child16);
|
|
57752
58481
|
}
|
|
57753
|
-
if (
|
|
57754
|
-
return this.createConnectorXml(
|
|
58482
|
+
if (child16.type === "connector") {
|
|
58483
|
+
return this.createConnectorXml(child16);
|
|
57755
58484
|
}
|
|
57756
|
-
if (
|
|
57757
|
-
return this.createInkShapeXml(
|
|
58485
|
+
if (child16.type === "ink") {
|
|
58486
|
+
return this.createInkShapeXml(child16);
|
|
57758
58487
|
}
|
|
57759
|
-
if (
|
|
57760
|
-
return this.createTableGraphicFrameXml(
|
|
58488
|
+
if (child16.type === "table") {
|
|
58489
|
+
return this.createTableGraphicFrameXml(child16);
|
|
57761
58490
|
}
|
|
57762
58491
|
return void 0;
|
|
57763
58492
|
}
|
|
@@ -58603,8 +59332,8 @@ var PptxHandlerRuntime19 = class _PptxHandlerRuntime extends PptxHandlerRuntime1
|
|
|
58603
59332
|
return style;
|
|
58604
59333
|
}
|
|
58605
59334
|
if (runProperties["@_sz"]) {
|
|
58606
|
-
const
|
|
58607
|
-
style.fontSize =
|
|
59335
|
+
const points5 = parseInt(runProperties["@_sz"]) / 100;
|
|
59336
|
+
style.fontSize = points5 * (96 / 72);
|
|
58608
59337
|
}
|
|
58609
59338
|
const bold = this.parseOptionalBooleanAttr(runProperties["@_b"]);
|
|
58610
59339
|
if (bold !== void 0) {
|
|
@@ -61318,6 +62047,22 @@ var PptxHandlerRuntime24 = class _PptxHandlerRuntime extends PptxHandlerRuntime2
|
|
|
61318
62047
|
* Record `chartData` as parsed, straight off `enrichChartData`, as this
|
|
61319
62048
|
* chart's load-time baseline. See {@link chartDataBaselines}.
|
|
61320
62049
|
*/
|
|
62050
|
+
/** The element formats the original chart part authors (see `chart-element-format-read-xml`). */
|
|
62051
|
+
readAuthoredChartElementFormats(chartXmlStr, chartData) {
|
|
62052
|
+
const localName15 = (key2) => this.compatibilityService.getXmlLocalName(key2);
|
|
62053
|
+
const original = this.parser.parse(chartXmlStr);
|
|
62054
|
+
const chartSpace = this.xmlLookupService.getChildByLocalName(original, "chartSpace");
|
|
62055
|
+
const plotArea = this.xmlLookupService.getChildByLocalName(
|
|
62056
|
+
this.xmlLookupService.getChildByLocalName(chartSpace, "chart"),
|
|
62057
|
+
"plotArea"
|
|
62058
|
+
);
|
|
62059
|
+
return readChartElementFormatsFromXml(
|
|
62060
|
+
{ chartSpace, seriesNodes: collectChartSeriesNodes(plotArea, localName15) },
|
|
62061
|
+
chartData,
|
|
62062
|
+
localName15,
|
|
62063
|
+
(node) => this.parseColor(node)
|
|
62064
|
+
);
|
|
62065
|
+
}
|
|
61321
62066
|
rememberChartDataBaseline(chartData) {
|
|
61322
62067
|
if (!chartData.chartPartPath) {
|
|
61323
62068
|
return;
|
|
@@ -61390,6 +62135,7 @@ var PptxHandlerRuntime24 = class _PptxHandlerRuntime extends PptxHandlerRuntime2
|
|
|
61390
62135
|
try {
|
|
61391
62136
|
const chartXmlStr = await chartFile.async("string");
|
|
61392
62137
|
const chartXmlData = this.parser.parse(chartXmlStr);
|
|
62138
|
+
const authoredFormats = chartData.elementFormats ? this.readAuthoredChartElementFormats(chartXmlStr, chartData) : void 0;
|
|
61393
62139
|
const workbookWrites = [];
|
|
61394
62140
|
const chartSpace = this.xmlLookupService.getChildByLocalName(chartXmlData, "chartSpace");
|
|
61395
62141
|
if (!chartSpace) {
|
|
@@ -61639,6 +62385,14 @@ var PptxHandlerRuntime24 = class _PptxHandlerRuntime extends PptxHandlerRuntime2
|
|
|
61639
62385
|
(key2) => this.compatibilityService.getXmlLocalName(key2)
|
|
61640
62386
|
);
|
|
61641
62387
|
}
|
|
62388
|
+
if (chartData.elementFormats) {
|
|
62389
|
+
applySeriesElementFormatsToXml(
|
|
62390
|
+
this.xmlLookupService.getChildrenArrayByLocalName(chartTypeContainer, "ser"),
|
|
62391
|
+
chartData,
|
|
62392
|
+
(key2) => this.compatibilityService.getXmlLocalName(key2),
|
|
62393
|
+
authoredFormats
|
|
62394
|
+
);
|
|
62395
|
+
}
|
|
61642
62396
|
if (chartData.series.some((s) => s.seriesChartType !== void 0)) {
|
|
61643
62397
|
applyComboSeriesTypesToXml(
|
|
61644
62398
|
plotArea,
|
|
@@ -61962,6 +62716,14 @@ var PptxHandlerRuntime24 = class _PptxHandlerRuntime extends PptxHandlerRuntime2
|
|
|
61962
62716
|
}
|
|
61963
62717
|
);
|
|
61964
62718
|
}
|
|
62719
|
+
if (chartData.elementFormats) {
|
|
62720
|
+
applyChromeElementFormatsToXml(
|
|
62721
|
+
chartSpace,
|
|
62722
|
+
chartData,
|
|
62723
|
+
(key2) => this.compatibilityService.getXmlLocalName(key2),
|
|
62724
|
+
authoredFormats
|
|
62725
|
+
);
|
|
62726
|
+
}
|
|
61965
62727
|
for (const key2 of Object.keys(plotArea)) {
|
|
61966
62728
|
const local = this.compatibilityService.getXmlLocalName(key2);
|
|
61967
62729
|
if (!local.endsWith("Chart")) {
|
|
@@ -62534,14 +63296,14 @@ function applySmartArtColorStyleLabels(node, labels, localName15) {
|
|
|
62534
63296
|
}
|
|
62535
63297
|
|
|
62536
63298
|
// pptx/core/core/runtime/smartart-colors-builder.ts
|
|
62537
|
-
function
|
|
63299
|
+
function asObject3(value) {
|
|
62538
63300
|
return value && typeof value === "object" && !Array.isArray(value) ? value : void 0;
|
|
62539
63301
|
}
|
|
62540
63302
|
function toArray3(value) {
|
|
62541
63303
|
if (Array.isArray(value)) {
|
|
62542
|
-
return value.filter((entry2) => Boolean(
|
|
63304
|
+
return value.filter((entry2) => Boolean(asObject3(entry2)));
|
|
62543
63305
|
}
|
|
62544
|
-
const obj =
|
|
63306
|
+
const obj = asObject3(value);
|
|
62545
63307
|
return obj ? [obj] : [];
|
|
62546
63308
|
}
|
|
62547
63309
|
function findKey23(obj, name, getLocalName2) {
|
|
@@ -62567,13 +63329,13 @@ function applyColorToList(list, value, getLocalName2, resolveColor2) {
|
|
|
62567
63329
|
}
|
|
62568
63330
|
const existing = list[colorKey];
|
|
62569
63331
|
if (resolveColor2) {
|
|
62570
|
-
const authored =
|
|
63332
|
+
const authored = asObject3(Array.isArray(existing) ? existing[0] : existing);
|
|
62571
63333
|
const authoredHex = authored ? resolveColor2({ [colorKey]: authored }) : void 0;
|
|
62572
63334
|
if (authoredHex && colorsEqual(authoredHex, value)) {
|
|
62573
63335
|
return;
|
|
62574
63336
|
}
|
|
62575
63337
|
}
|
|
62576
|
-
const rest = Array.isArray(existing) ? existing.slice(1).filter((entry2) => Boolean(
|
|
63338
|
+
const rest = Array.isArray(existing) ? existing.slice(1).filter((entry2) => Boolean(asObject3(entry2))) : [];
|
|
62577
63339
|
if (colorKey !== "a:srgbClr") {
|
|
62578
63340
|
delete list[colorKey];
|
|
62579
63341
|
}
|
|
@@ -62588,7 +63350,7 @@ function applyColorListValues(list, values, getLocalName2, resolveColor2) {
|
|
|
62588
63350
|
const existing = Array.isArray(existingRaw) ? existingRaw : existingRaw ? [existingRaw] : [];
|
|
62589
63351
|
if (resolveColor2 && colorKey && existing.length === values.length) {
|
|
62590
63352
|
const unchanged2 = existing.every((entryRaw, index) => {
|
|
62591
|
-
const entry2 =
|
|
63353
|
+
const entry2 = asObject3(entryRaw);
|
|
62592
63354
|
const authoredHex = entry2 ? resolveColor2({ [colorKey]: entry2 }) : void 0;
|
|
62593
63355
|
return authoredHex !== void 0 && colorsEqual(authoredHex, values[index]);
|
|
62594
63356
|
});
|
|
@@ -62613,14 +63375,14 @@ function applyRoleColors(labels, roleColors, getLocalName2, resolveColor2) {
|
|
|
62613
63375
|
}
|
|
62614
63376
|
const fillKey = findKey23(label, "fillClrLst", getLocalName2);
|
|
62615
63377
|
if (fillKey) {
|
|
62616
|
-
const list =
|
|
63378
|
+
const list = asObject3(label[fillKey]);
|
|
62617
63379
|
if (list && applyColorListValues(list, role.fill, getLocalName2, resolveColor2)) {
|
|
62618
63380
|
mutated = true;
|
|
62619
63381
|
}
|
|
62620
63382
|
}
|
|
62621
63383
|
const lineKey = findKey23(label, "linClrLst", getLocalName2);
|
|
62622
63384
|
if (lineKey) {
|
|
62623
|
-
const list =
|
|
63385
|
+
const list = asObject3(label[lineKey]);
|
|
62624
63386
|
if (list && applyColorListValues(list, role.line, getLocalName2, resolveColor2)) {
|
|
62625
63387
|
mutated = true;
|
|
62626
63388
|
}
|
|
@@ -62652,7 +63414,7 @@ function applySmartArtColorTransform(colorsDef, transform2, getLocalName2, resol
|
|
|
62652
63414
|
const fillKey = findKey23(label, "fillClrLst", getLocalName2);
|
|
62653
63415
|
if (fillKey) {
|
|
62654
63416
|
const value = transform2.fillColors[fillIndex++];
|
|
62655
|
-
const list =
|
|
63417
|
+
const list = asObject3(label[fillKey]);
|
|
62656
63418
|
if (list && value) {
|
|
62657
63419
|
applyColorToList(list, value, getLocalName2, resolveColor2);
|
|
62658
63420
|
mutated = true;
|
|
@@ -62661,7 +63423,7 @@ function applySmartArtColorTransform(colorsDef, transform2, getLocalName2, resol
|
|
|
62661
63423
|
const lineKey = findKey23(label, "linClrLst", getLocalName2);
|
|
62662
63424
|
if (lineKey) {
|
|
62663
63425
|
const value = transform2.lineColors[lineIndex++];
|
|
62664
|
-
const list =
|
|
63426
|
+
const list = asObject3(label[lineKey]);
|
|
62665
63427
|
if (list && value) {
|
|
62666
63428
|
applyColorToList(list, value, getLocalName2, resolveColor2);
|
|
62667
63429
|
mutated = true;
|
|
@@ -62672,30 +63434,30 @@ function applySmartArtColorTransform(colorsDef, transform2, getLocalName2, resol
|
|
|
62672
63434
|
}
|
|
62673
63435
|
|
|
62674
63436
|
// pptx/core/core/runtime/smartart-node-synthesis.ts
|
|
62675
|
-
function prSetOf2(
|
|
62676
|
-
const prSet =
|
|
63437
|
+
function prSetOf2(pt2) {
|
|
63438
|
+
const prSet = pt2["dgm:prSet"];
|
|
62677
63439
|
return prSet && typeof prSet === "object" && !Array.isArray(prSet) ? prSet : {};
|
|
62678
63440
|
}
|
|
62679
63441
|
function findPresPointForAssoc(pts, assocId) {
|
|
62680
63442
|
return pts.find(
|
|
62681
|
-
(
|
|
63443
|
+
(pt2) => pt2["@_type"] === "pres" && String(prSetOf2(pt2)["@_presAssocID"] || "") === assocId
|
|
62682
63444
|
);
|
|
62683
63445
|
}
|
|
62684
63446
|
function maxPresParOfOrd(cxns, srcId) {
|
|
62685
63447
|
return cxns.filter((c) => c["@_type"] === "presParOf" && c["@_srcId"] === srcId).reduce((max, c) => Math.max(max, parseInt(String(c["@_srcOrd"] ?? ""), 10) || 0), -1);
|
|
62686
63448
|
}
|
|
62687
63449
|
function countNodePresPoints(pts) {
|
|
62688
|
-
return pts.filter((
|
|
63450
|
+
return pts.filter((pt2) => pt2["@_type"] === "pres" && prSetOf2(pt2)["@_presName"] === "node").length;
|
|
62689
63451
|
}
|
|
62690
63452
|
function emptyTextBody() {
|
|
62691
63453
|
return { "a:bodyPr": {}, "a:lstStyle": {}, "a:p": { "a:endParaRPr": { "@_lang": "en-US" } } };
|
|
62692
63454
|
}
|
|
62693
63455
|
function buildContentPoint(node) {
|
|
62694
|
-
const
|
|
62695
|
-
|
|
62696
|
-
|
|
62697
|
-
|
|
62698
|
-
return
|
|
63456
|
+
const pt2 = { "@_modelId": node.id };
|
|
63457
|
+
pt2["dgm:prSet"] = node.text ? {} : { "@_phldrT": "[Text]" };
|
|
63458
|
+
pt2["dgm:spPr"] = {};
|
|
63459
|
+
pt2["dgm:t"] = shouldRebuildFromParagraphs(node) ? buildPointFromParagraphs(node.paragraphs, node.text) : shouldRebuildFromRuns(node) ? buildPointFromRuns(node.runs) : buildPointText(node.text ?? "");
|
|
63460
|
+
return pt2;
|
|
62699
63461
|
}
|
|
62700
63462
|
function buildTransPoint(id, type) {
|
|
62701
63463
|
return { "@_modelId": id, "@_type": type, "dgm:prSet": {}, "dgm:t": emptyTextBody() };
|
|
@@ -62758,7 +63520,7 @@ function buildPresParOfConnection(srcId, destId, srcOrd, presId) {
|
|
|
62758
63520
|
}
|
|
62759
63521
|
function synthesizeNewSmartArtStructuralPoints(existingPts, existingCxns, nodes, connections) {
|
|
62760
63522
|
const existingContentIds = new Set(
|
|
62761
|
-
existingPts.filter(isContentPoint).map((
|
|
63523
|
+
existingPts.filter(isContentPoint).map((pt2) => String(pt2["@_modelId"] || ""))
|
|
62762
63524
|
);
|
|
62763
63525
|
const newNodes = nodes.filter((n) => n.id && !existingContentIds.has(n.id));
|
|
62764
63526
|
if (newNodes.length === 0) {
|
|
@@ -62794,9 +63556,9 @@ function synthesizeNewSmartArtStructuralPoints(existingPts, existingCxns, nodes,
|
|
|
62794
63556
|
pts.push(buildPresNodePoint(presNodeId, node.id, idx, idx + 1));
|
|
62795
63557
|
pts.push(buildPresSibTransPoint(presSibTransId, sibTransId));
|
|
62796
63558
|
const total = idx + 1;
|
|
62797
|
-
for (const
|
|
62798
|
-
if (
|
|
62799
|
-
prSetOf2(
|
|
63559
|
+
for (const pt2 of pts) {
|
|
63560
|
+
if (pt2["@_type"] === "pres" && prSetOf2(pt2)["@_presName"] === "node") {
|
|
63561
|
+
prSetOf2(pt2)["@_presStyleCnt"] = String(total);
|
|
62800
63562
|
}
|
|
62801
63563
|
}
|
|
62802
63564
|
const srcOrd = connectionByChildId.get(node.id)?.srcOrd ?? 0;
|
|
@@ -62888,7 +63650,7 @@ function applySmartArtQuickStyle(styleDef, quickStyle, localName15, intensity) {
|
|
|
62888
63650
|
}
|
|
62889
63651
|
|
|
62890
63652
|
// pptx/core/core/runtime/smartart-save-chrome.ts
|
|
62891
|
-
function
|
|
63653
|
+
function asObject4(value) {
|
|
62892
63654
|
return value && typeof value === "object" && !Array.isArray(value) ? value : {};
|
|
62893
63655
|
}
|
|
62894
63656
|
function applySmartArtChrome(dataModel, chrome, getLocalName2) {
|
|
@@ -62898,14 +63660,14 @@ function applySmartArtChrome(dataModel, chrome, getLocalName2) {
|
|
|
62898
63660
|
const findKey24 = (obj, name) => Object.keys(obj).find((k) => getLocalName2(k) === name);
|
|
62899
63661
|
if (chrome.backgroundFillXml) {
|
|
62900
63662
|
const bgKey = findKey24(dataModel, "bg") ?? "dgm:bg";
|
|
62901
|
-
const bg =
|
|
63663
|
+
const bg = asObject4(dataModel[bgKey]);
|
|
62902
63664
|
const fillKey = findKey24(bg, chrome.backgroundFillXml.localName) ?? `a:${chrome.backgroundFillXml.localName}`;
|
|
62903
63665
|
bg[fillKey] = chrome.backgroundFillXml.xml;
|
|
62904
63666
|
dataModel[bgKey] = bg;
|
|
62905
63667
|
} else if (chrome.backgroundColor) {
|
|
62906
63668
|
const hex3 = chrome.backgroundColor.replace("#", "");
|
|
62907
63669
|
const bgKey = findKey24(dataModel, "bg") ?? "dgm:bg";
|
|
62908
|
-
const bg =
|
|
63670
|
+
const bg = asObject4(dataModel[bgKey]);
|
|
62909
63671
|
const fillKey = findKey24(bg, "solidFill") ?? "a:solidFill";
|
|
62910
63672
|
bg[fillKey] = { "a:srgbClr": { "@_val": hex3 } };
|
|
62911
63673
|
dataModel[bgKey] = bg;
|
|
@@ -62913,9 +63675,9 @@ function applySmartArtChrome(dataModel, chrome, getLocalName2) {
|
|
|
62913
63675
|
const hasOutlineWidth = chrome.outlineWidth !== null && chrome.outlineWidth !== void 0;
|
|
62914
63676
|
if (chrome.outlineColor || hasOutlineWidth) {
|
|
62915
63677
|
const wholeKey = findKey24(dataModel, "whole") ?? "dgm:whole";
|
|
62916
|
-
const whole =
|
|
63678
|
+
const whole = asObject4(dataModel[wholeKey]);
|
|
62917
63679
|
const lnKey = findKey24(whole, "ln") ?? "a:ln";
|
|
62918
|
-
const ln =
|
|
63680
|
+
const ln = asObject4(whole[lnKey]);
|
|
62919
63681
|
if (hasOutlineWidth) {
|
|
62920
63682
|
ln["@_w"] = String(Math.round(chrome.outlineWidth * 12700));
|
|
62921
63683
|
}
|
|
@@ -63097,8 +63859,8 @@ function applySmartArtLayoutIdentity(dataModel, layout, localName15) {
|
|
|
63097
63859
|
const pointListKey = Object.keys(dataModel).find((key2) => localName15(key2) === "ptLst");
|
|
63098
63860
|
const pointList = pointListKey ? dataModel[pointListKey] : void 0;
|
|
63099
63861
|
const pointKey = pointList ? Object.keys(pointList).find((key2) => localName15(key2) === "pt") : void 0;
|
|
63100
|
-
const
|
|
63101
|
-
const docPoint =
|
|
63862
|
+
const points5 = pointKey && pointList ? ensureObjects(pointList[pointKey]) : [];
|
|
63863
|
+
const docPoint = points5.find((point) => String(point["@_type"] || "") === "doc");
|
|
63102
63864
|
if (!docPoint) {
|
|
63103
63865
|
return;
|
|
63104
63866
|
}
|
|
@@ -63109,9 +63871,9 @@ function applySmartArtLayoutIdentity(dataModel, layout, localName15) {
|
|
|
63109
63871
|
propertySet["@_loCatId"] = layout.category;
|
|
63110
63872
|
}
|
|
63111
63873
|
}
|
|
63112
|
-
function presentationIdsFromPoints(
|
|
63874
|
+
function presentationIdsFromPoints(points5, localName15) {
|
|
63113
63875
|
const result = /* @__PURE__ */ new Map();
|
|
63114
|
-
for (const point of
|
|
63876
|
+
for (const point of points5) {
|
|
63115
63877
|
if (String(point["@_type"] || "") !== "pres") {
|
|
63116
63878
|
continue;
|
|
63117
63879
|
}
|
|
@@ -67021,8 +67783,8 @@ function prescanStructuralPart(xml) {
|
|
|
67021
67783
|
let placeholderCasing = false;
|
|
67022
67784
|
for (const match of xml.matchAll(PH_TYPE_RE)) {
|
|
67023
67785
|
const raw = match[1] ?? match[2] ?? "";
|
|
67024
|
-
const
|
|
67025
|
-
if (
|
|
67786
|
+
const canonical2 = canonicalPlaceholderType(raw);
|
|
67787
|
+
if (canonical2 !== void 0 && canonical2 !== raw) {
|
|
67026
67788
|
placeholderCasing = true;
|
|
67027
67789
|
break;
|
|
67028
67790
|
}
|
|
@@ -67052,8 +67814,8 @@ function countDeclaredIds(node, counts, ensureArray12) {
|
|
|
67052
67814
|
counts.set(id, (counts.get(id) ?? 0) + 1);
|
|
67053
67815
|
}
|
|
67054
67816
|
for (const listKey of SHAPE_LISTS) {
|
|
67055
|
-
for (const
|
|
67056
|
-
if (!countDeclaredIds(
|
|
67817
|
+
for (const child16 of ensureArray12(node[listKey])) {
|
|
67818
|
+
if (!countDeclaredIds(child16, counts, ensureArray12)) {
|
|
67057
67819
|
return false;
|
|
67058
67820
|
}
|
|
67059
67821
|
}
|
|
@@ -68300,8 +69062,8 @@ var PptxHandlerRuntime42 = class _PptxHandlerRuntime extends PptxHandlerRuntime4
|
|
|
68300
69062
|
}
|
|
68301
69063
|
}
|
|
68302
69064
|
for (const listKey of ["p:sp", "p:pic", "p:cxnSp", "p:graphicFrame", "p:grpSp"]) {
|
|
68303
|
-
for (const
|
|
68304
|
-
visit(
|
|
69065
|
+
for (const child16 of this.ensureArray(node[listKey])) {
|
|
69066
|
+
visit(child16);
|
|
68305
69067
|
}
|
|
68306
69068
|
}
|
|
68307
69069
|
};
|
|
@@ -68932,11 +69694,11 @@ function scanSpTreeDocumentOrder(xml) {
|
|
|
68932
69694
|
const frame = stack[stack.length - 1];
|
|
68933
69695
|
const indexInType = frame.counters.get(tag) ?? 0;
|
|
68934
69696
|
frame.counters.set(tag, indexInType + 1);
|
|
68935
|
-
const
|
|
68936
|
-
frame.children.push({ tag, indexInType, children:
|
|
69697
|
+
const children6 = [];
|
|
69698
|
+
frame.children.push({ tag, indexInType, children: children6 });
|
|
68937
69699
|
if (!selfClosing) {
|
|
68938
69700
|
if (tag === GROUP_TAG) {
|
|
68939
|
-
stack.push({ children:
|
|
69701
|
+
stack.push({ children: children6, counters: /* @__PURE__ */ new Map() });
|
|
68940
69702
|
} else {
|
|
68941
69703
|
inert++;
|
|
68942
69704
|
}
|
|
@@ -72113,8 +72875,8 @@ var PptxHandlerRuntime62 = class extends PptxHandlerRuntime61 {
|
|
|
72113
72875
|
textStyle.textWrap = defaults.textWrap;
|
|
72114
72876
|
}
|
|
72115
72877
|
}
|
|
72116
|
-
pointsToPixels(
|
|
72117
|
-
return
|
|
72878
|
+
pointsToPixels(points5) {
|
|
72879
|
+
return points5 * (96 / 72);
|
|
72118
72880
|
}
|
|
72119
72881
|
parseParagraphSpacingPx(spacingNode, basisFontSizePx) {
|
|
72120
72882
|
return parseParagraphSpacingPx(spacingNode, basisFontSizePx);
|
|
@@ -74580,11 +75342,11 @@ var PptxHandlerRuntime70 = class _PptxHandlerRuntime extends PptxHandlerRuntime6
|
|
|
74580
75342
|
grpSpPr?.["a:xfrm"],
|
|
74581
75343
|
_PptxHandlerRuntime.EMU_PER_PX
|
|
74582
75344
|
);
|
|
74583
|
-
const
|
|
74584
|
-
const parentX =
|
|
74585
|
-
const parentY =
|
|
74586
|
-
const parentW =
|
|
74587
|
-
const parentH =
|
|
75345
|
+
const round3 = depth === 0 ? Math.round : (value) => value;
|
|
75346
|
+
const parentX = round3(raw.parentX);
|
|
75347
|
+
const parentY = round3(raw.parentY);
|
|
75348
|
+
const parentW = round3(raw.parentW);
|
|
75349
|
+
const parentH = round3(raw.parentH);
|
|
74588
75350
|
const grpFillStyle = grpSpPr ? this.extractShapeStyle(grpSpPr) : void 0;
|
|
74589
75351
|
if (grpFillStyle?.fillMode === "image" && grpSpPr) {
|
|
74590
75352
|
const blipFill = grpSpPr["a:blipFill"];
|
|
@@ -74599,16 +75361,16 @@ var PptxHandlerRuntime70 = class _PptxHandlerRuntime extends PptxHandlerRuntime6
|
|
|
74599
75361
|
}
|
|
74600
75362
|
}
|
|
74601
75363
|
const hasGroupFill = grpFillStyle && grpFillStyle.fillMode && grpFillStyle.fillMode !== "none";
|
|
74602
|
-
const
|
|
74603
|
-
if (
|
|
75364
|
+
const children6 = await this.parseGroupShape(group, baseId, slidePath, rawXmlStr, depth);
|
|
75365
|
+
if (children6.length === 0) {
|
|
74604
75366
|
return null;
|
|
74605
75367
|
}
|
|
74606
75368
|
if (hasGroupFill && grpFillStyle.fillMode !== "group") {
|
|
74607
|
-
applyGroupFillInheritance(
|
|
75369
|
+
applyGroupFillInheritance(children6, grpFillStyle);
|
|
74608
75370
|
}
|
|
74609
75371
|
if (raw.rotation || raw.flipHorizontal || raw.flipVertical) {
|
|
74610
75372
|
applyAncestorGroupTextTransform(
|
|
74611
|
-
|
|
75373
|
+
children6,
|
|
74612
75374
|
getElementOrientationMatrix({
|
|
74613
75375
|
rotation: raw.rotation,
|
|
74614
75376
|
flipHorizontal: raw.flipHorizontal,
|
|
@@ -74616,9 +75378,9 @@ var PptxHandlerRuntime70 = class _PptxHandlerRuntime extends PptxHandlerRuntime6
|
|
|
74616
75378
|
})
|
|
74617
75379
|
);
|
|
74618
75380
|
}
|
|
74619
|
-
for (const
|
|
74620
|
-
|
|
74621
|
-
|
|
75381
|
+
for (const child16 of children6) {
|
|
75382
|
+
child16.x -= raw.parentX;
|
|
75383
|
+
child16.y -= raw.parentY;
|
|
74622
75384
|
}
|
|
74623
75385
|
const grpCNvPr = group?.["p:nvGrpSpPr"]?.["p:cNvPr"];
|
|
74624
75386
|
const grpSlideRels = this.slideRelsMap.get(slidePath);
|
|
@@ -74638,8 +75400,8 @@ var PptxHandlerRuntime70 = class _PptxHandlerRuntime extends PptxHandlerRuntime6
|
|
|
74638
75400
|
name: grpElementName || void 0,
|
|
74639
75401
|
x: parentX,
|
|
74640
75402
|
y: parentY,
|
|
74641
|
-
width: parentW || Math.max(...
|
|
74642
|
-
height: parentH || Math.max(...
|
|
75403
|
+
width: parentW || Math.max(...children6.map((c) => c.x + c.width)),
|
|
75404
|
+
height: parentH || Math.max(...children6.map((c) => c.y + c.height)),
|
|
74643
75405
|
// Exact EMU for `resolveXfrmEmu` (xfrm-emu-resolution.ts) to re-emit
|
|
74644
75406
|
// byte-identical on save for an unmoved/unresized TOP-LEVEL group.
|
|
74645
75407
|
// `width`/`height` fall back to a computed bounding box when the
|
|
@@ -74675,7 +75437,7 @@ var PptxHandlerRuntime70 = class _PptxHandlerRuntime extends PptxHandlerRuntime6
|
|
|
74675
75437
|
rotation: raw.rotation,
|
|
74676
75438
|
flipHorizontal: raw.flipHorizontal || void 0,
|
|
74677
75439
|
flipVertical: raw.flipVertical || void 0,
|
|
74678
|
-
children:
|
|
75440
|
+
children: children6,
|
|
74679
75441
|
rawXml: group,
|
|
74680
75442
|
actionClick: grpActionClick,
|
|
74681
75443
|
actionHover: grpActionHover,
|
|
@@ -79145,8 +79907,8 @@ var PptxHandlerRuntime88 = class _PptxHandlerRuntime extends PptxHandlerRuntime8
|
|
|
79145
79907
|
const connectionList = this.xmlLookupService.getChildByLocalName(dataModel, "cxnLst");
|
|
79146
79908
|
const rawConnections = this.xmlLookupService.getChildrenArrayByLocalName(connectionList, "cxn");
|
|
79147
79909
|
const pointList = this.xmlLookupService.getChildByLocalName(dataModel, "ptLst");
|
|
79148
|
-
const
|
|
79149
|
-
const transitionTextById = collectSmartArtTransitionText(
|
|
79910
|
+
const points5 = this.xmlLookupService.getChildrenArrayByLocalName(pointList, "pt");
|
|
79911
|
+
const transitionTextById = collectSmartArtTransitionText(points5, (point) => {
|
|
79150
79912
|
const values = [];
|
|
79151
79913
|
this.collectLocalTextValues(point, "t", values);
|
|
79152
79914
|
return values.join("");
|
|
@@ -79516,11 +80278,11 @@ var PptxHandlerRuntime89 = class _PptxHandlerRuntime extends PptxHandlerRuntime8
|
|
|
79516
80278
|
}
|
|
79517
80279
|
const dataModel = this.xmlLookupService.getChildByLocalName(diagramDataPart.xml, "dataModel");
|
|
79518
80280
|
const pointList = this.xmlLookupService.getChildByLocalName(dataModel, "ptLst");
|
|
79519
|
-
const
|
|
80281
|
+
const points5 = this.xmlLookupService.getChildrenArrayByLocalName(pointList, "pt");
|
|
79520
80282
|
const { parsedConnections, parentByNodeId } = this.parseSmartArtConnections(dataModel);
|
|
79521
80283
|
const localName15 = (key2) => this.compatibilityService.getXmlLocalName(key2);
|
|
79522
|
-
const metadataOf = resolveSmartArtPointMetadata(
|
|
79523
|
-
const nodes =
|
|
80284
|
+
const metadataOf = resolveSmartArtPointMetadata(points5, parsedConnections, localName15);
|
|
80285
|
+
const nodes = points5.filter(isContentPoint).map((point) => {
|
|
79524
80286
|
const pointId = String(point?.["@_modelId"] || "").trim();
|
|
79525
80287
|
if (pointId.length === 0) {
|
|
79526
80288
|
return null;
|
|
@@ -79583,7 +80345,7 @@ var PptxHandlerRuntime89 = class _PptxHandlerRuntime extends PptxHandlerRuntime8
|
|
|
79583
80345
|
const drawingShapes = drawingResolution ? await this.parseSmartArtDrawingShapesFromPath(
|
|
79584
80346
|
drawingResolution.path,
|
|
79585
80347
|
resolveSmartArtMergedTextColors(
|
|
79586
|
-
|
|
80348
|
+
points5,
|
|
79587
80349
|
parsedConnections,
|
|
79588
80350
|
layoutDefinition,
|
|
79589
80351
|
colorTransform?.roleColors,
|
|
@@ -79750,11 +80512,11 @@ var PptxHandlerRuntime90 = class extends PptxHandlerRuntime89 {
|
|
|
79750
80512
|
const cacheName = preferNumeric ? "numCache" : "strCache";
|
|
79751
80513
|
const referenceNode = this.xmlLookupService.getChildByLocalName(seriesContainer, refName) || this.xmlLookupService.getChildByLocalName(seriesContainer, literalName);
|
|
79752
80514
|
const cacheNode = this.xmlLookupService.getChildByLocalName(referenceNode, cacheName) || referenceNode;
|
|
79753
|
-
const
|
|
79754
|
-
if (
|
|
80515
|
+
const points5 = this.xmlLookupService.getChildrenArrayByLocalName(cacheNode, "pt");
|
|
80516
|
+
if (points5.length === 0) {
|
|
79755
80517
|
return [];
|
|
79756
80518
|
}
|
|
79757
|
-
return [...
|
|
80519
|
+
return [...points5].sort((left, right) => {
|
|
79758
80520
|
const leftIndex = Number.parseInt(String(left?.["@_idx"] || "0"), 10);
|
|
79759
80521
|
const rightIndex = Number.parseInt(String(right?.["@_idx"] || "0"), 10);
|
|
79760
80522
|
return leftIndex - rightIndex;
|
|
@@ -79789,13 +80551,13 @@ var PptxHandlerRuntime90 = class extends PptxHandlerRuntime89 {
|
|
|
79789
80551
|
const cacheName = preferNumeric ? "numCache" : "strCache";
|
|
79790
80552
|
const referenceNode = this.xmlLookupService.getChildByLocalName(categoryContainer, refName) || this.xmlLookupService.getChildByLocalName(categoryContainer, literalName);
|
|
79791
80553
|
const cacheNode = this.xmlLookupService.getChildByLocalName(referenceNode, cacheName) || referenceNode;
|
|
79792
|
-
const
|
|
79793
|
-
if (
|
|
80554
|
+
const points5 = this.xmlLookupService.getChildrenArrayByLocalName(cacheNode, "pt");
|
|
80555
|
+
if (points5.length === 0) {
|
|
79794
80556
|
return [];
|
|
79795
80557
|
}
|
|
79796
80558
|
const byIndex = /* @__PURE__ */ new Map();
|
|
79797
80559
|
let maxIndex = -1;
|
|
79798
|
-
for (const point of
|
|
80560
|
+
for (const point of points5) {
|
|
79799
80561
|
const index = Number.parseInt(String(point?.["@_idx"] ?? "0"), 10);
|
|
79800
80562
|
if (!Number.isFinite(index) || index < 0) {
|
|
79801
80563
|
continue;
|
|
@@ -79967,11 +80729,11 @@ var PptxHandlerRuntime91 = class extends PptxHandlerRuntime90 {
|
|
|
79967
80729
|
}
|
|
79968
80730
|
const custSplitNode = this.xmlLookupService.getChildByLocalName(ofPieContainer, "custSplit");
|
|
79969
80731
|
if (custSplitNode) {
|
|
79970
|
-
const
|
|
80732
|
+
const points5 = this.xmlLookupService.getChildrenArrayByLocalName(
|
|
79971
80733
|
custSplitNode,
|
|
79972
80734
|
"secondPiePt"
|
|
79973
80735
|
);
|
|
79974
|
-
const indices =
|
|
80736
|
+
const indices = points5.map((p) => parseNumberVal(p)).filter((n) => n !== void 0 && Number.isFinite(n));
|
|
79975
80737
|
if (indices.length > 0) {
|
|
79976
80738
|
result.custSplit = indices;
|
|
79977
80739
|
}
|
|
@@ -80696,7 +81458,7 @@ var PptxHandlerRuntime95 = class extends PptxHandlerRuntime94 {
|
|
|
80696
81458
|
*/
|
|
80697
81459
|
readChartLinesAndChrome(neutral, tree, groups, reader) {
|
|
80698
81460
|
const colorAdapter = { parseColor: reader.parseColor };
|
|
80699
|
-
const container = (
|
|
81461
|
+
const container = (child16) => (groups.find(({ group }) => chartContainerAllows(group.element, child16)) ?? groups[0])?.node;
|
|
80700
81462
|
const dropLines = parseLineStyle(container("dropLines"), "dropLines", reader.xml, colorAdapter);
|
|
80701
81463
|
const hiLowLines = parseLineStyle(
|
|
80702
81464
|
container("hiLowLines"),
|
|
@@ -80795,6 +81557,12 @@ var PptxHandlerRuntime95 = class extends PptxHandlerRuntime94 {
|
|
|
80795
81557
|
const view3D = view3DFromNeutral(neutral);
|
|
80796
81558
|
const chartChrome = chartChromeFromNeutral(neutral);
|
|
80797
81559
|
const themeAccentColors = this.resolveChartThemeAccents();
|
|
81560
|
+
const elementFormats = readChartElementFormatsFromXml(
|
|
81561
|
+
{ chartSpace, seriesNodes: built.seriesNodes },
|
|
81562
|
+
{ axes },
|
|
81563
|
+
reader.localName,
|
|
81564
|
+
(node) => reader.parseColor(node)
|
|
81565
|
+
);
|
|
80798
81566
|
return {
|
|
80799
81567
|
chartType,
|
|
80800
81568
|
categories: filled.categories,
|
|
@@ -80820,6 +81588,7 @@ var PptxHandlerRuntime95 = class extends PptxHandlerRuntime94 {
|
|
|
80820
81588
|
chartRelationshipId,
|
|
80821
81589
|
...linesAndChrome,
|
|
80822
81590
|
...axes.length > 0 ? { axes } : {},
|
|
81591
|
+
...elementFormats ? { elementFormats } : {},
|
|
80823
81592
|
...bandFmts ? { bandFmts } : {},
|
|
80824
81593
|
...facts,
|
|
80825
81594
|
...neutral.plotVisibleOnly !== void 0 ? { plotVisibleOnly: neutral.plotVisibleOnly } : {},
|
|
@@ -82818,16 +83587,16 @@ function parseExHyperlinkContainer(view, container) {
|
|
|
82818
83587
|
}
|
|
82819
83588
|
const id = view.getUint32(atom2.dataOffset, true);
|
|
82820
83589
|
const strings = {};
|
|
82821
|
-
for (const
|
|
82822
|
-
if (
|
|
83590
|
+
for (const child16 of iterateChildren(view, container)) {
|
|
83591
|
+
if (child16.recType !== RT.CString) {
|
|
82823
83592
|
continue;
|
|
82824
83593
|
}
|
|
82825
|
-
if (
|
|
82826
|
-
strings.friendlyName = readCString(view,
|
|
82827
|
-
} else if (
|
|
82828
|
-
strings.target = readCString(view,
|
|
82829
|
-
} else if (
|
|
82830
|
-
strings.location = readCString(view,
|
|
83594
|
+
if (child16.recInstance === 0) {
|
|
83595
|
+
strings.friendlyName = readCString(view, child16);
|
|
83596
|
+
} else if (child16.recInstance === 1) {
|
|
83597
|
+
strings.target = readCString(view, child16);
|
|
83598
|
+
} else if (child16.recInstance === 3) {
|
|
83599
|
+
strings.location = readCString(view, child16);
|
|
82831
83600
|
}
|
|
82832
83601
|
}
|
|
82833
83602
|
return { id, strings };
|
|
@@ -82838,11 +83607,11 @@ function parseHyperlinkStrings(view, docContainer) {
|
|
|
82838
83607
|
if (!exObjList) {
|
|
82839
83608
|
return result;
|
|
82840
83609
|
}
|
|
82841
|
-
for (const
|
|
82842
|
-
if (
|
|
83610
|
+
for (const child16 of iterateChildren(view, exObjList)) {
|
|
83611
|
+
if (child16.recType !== RT.ExternalHyperlink) {
|
|
82843
83612
|
continue;
|
|
82844
83613
|
}
|
|
82845
|
-
const parsed = parseExHyperlinkContainer(view,
|
|
83614
|
+
const parsed = parseExHyperlinkContainer(view, child16);
|
|
82846
83615
|
if (parsed) {
|
|
82847
83616
|
result.set(parsed.id, parsed.strings);
|
|
82848
83617
|
}
|
|
@@ -82912,9 +83681,9 @@ function collectTextHyperlinkRanges(view, start, end, hyperlinkStrings) {
|
|
|
82912
83681
|
return ranges;
|
|
82913
83682
|
}
|
|
82914
83683
|
function resolveShapeInteractiveInfo(view, clientData, hyperlinkStrings) {
|
|
82915
|
-
for (const
|
|
82916
|
-
if (
|
|
82917
|
-
const atom2 = findChild2(view,
|
|
83684
|
+
for (const child16 of iterateChildren(view, clientData)) {
|
|
83685
|
+
if (child16.recType === RT.InteractiveInfo && child16.recInstance === 0) {
|
|
83686
|
+
const atom2 = findChild2(view, child16, RT.InteractiveInfoAtom);
|
|
82918
83687
|
if (atom2) {
|
|
82919
83688
|
return resolveInteractiveInfoTarget(view, atom2, hyperlinkStrings);
|
|
82920
83689
|
}
|
|
@@ -83109,11 +83878,11 @@ function parseOleEmbedRefs(view, docContainer) {
|
|
|
83109
83878
|
if (!exObjList) {
|
|
83110
83879
|
return result;
|
|
83111
83880
|
}
|
|
83112
|
-
for (const
|
|
83113
|
-
if (
|
|
83881
|
+
for (const child16 of iterateChildren(view, exObjList)) {
|
|
83882
|
+
if (child16.recType !== RT.ExternalOleEmbed) {
|
|
83114
83883
|
continue;
|
|
83115
83884
|
}
|
|
83116
|
-
const parsed = parseOleEmbedContainer(view,
|
|
83885
|
+
const parsed = parseOleEmbedContainer(view, child16);
|
|
83117
83886
|
if (parsed) {
|
|
83118
83887
|
result.set(parsed.exObjId, parsed.ref);
|
|
83119
83888
|
}
|
|
@@ -83963,22 +84732,22 @@ function parseShape(ctx, container) {
|
|
|
83963
84732
|
return shape;
|
|
83964
84733
|
}
|
|
83965
84734
|
function parseGroup2(ctx, container) {
|
|
83966
|
-
const
|
|
84735
|
+
const children6 = [];
|
|
83967
84736
|
let groupShape;
|
|
83968
84737
|
let first2 = true;
|
|
83969
|
-
for (const
|
|
83970
|
-
if (
|
|
83971
|
-
groupShape =
|
|
84738
|
+
for (const child16 of iterateChildren(ctx.view, container)) {
|
|
84739
|
+
if (child16.recType === OA.SpContainer && first2) {
|
|
84740
|
+
groupShape = child16;
|
|
83972
84741
|
first2 = false;
|
|
83973
|
-
} else if (
|
|
83974
|
-
const shape = parseShape(ctx,
|
|
84742
|
+
} else if (child16.recType === OA.SpContainer) {
|
|
84743
|
+
const shape = parseShape(ctx, child16);
|
|
83975
84744
|
if (shape) {
|
|
83976
|
-
|
|
84745
|
+
children6.push(shape);
|
|
83977
84746
|
}
|
|
83978
|
-
} else if (
|
|
83979
|
-
const group = parseGroup2(ctx,
|
|
84747
|
+
} else if (child16.recType === OA.SpgrContainer) {
|
|
84748
|
+
const group = parseGroup2(ctx, child16);
|
|
83980
84749
|
if (group) {
|
|
83981
|
-
|
|
84750
|
+
children6.push(group);
|
|
83982
84751
|
}
|
|
83983
84752
|
}
|
|
83984
84753
|
}
|
|
@@ -83990,14 +84759,14 @@ function parseGroup2(ctx, container) {
|
|
|
83990
84759
|
const childAnchorRec = findChild2(ctx.view, groupShape, OA.ChildAnchor);
|
|
83991
84760
|
const anchor = anchorRec ? readClientAnchor(ctx.view, anchorRec) : childAnchorRec ? readChildAnchor(ctx.view, childAnchorRec) : void 0;
|
|
83992
84761
|
const childRect = fspgr && fspgr.recLen >= 16 ? readChildAnchor(ctx.view, fspgr) : void 0;
|
|
83993
|
-
if (
|
|
84762
|
+
if (children6.length === 0) {
|
|
83994
84763
|
return void 0;
|
|
83995
84764
|
}
|
|
83996
84765
|
return {
|
|
83997
84766
|
kind: "group",
|
|
83998
84767
|
anchor,
|
|
83999
84768
|
childRect: childRect ?? anchor ?? { x: 0, y: 0, w: 0, h: 0 },
|
|
84000
|
-
children:
|
|
84769
|
+
children: children6
|
|
84001
84770
|
};
|
|
84002
84771
|
}
|
|
84003
84772
|
function parseDrawing(ctx, dgContainer) {
|
|
@@ -84007,31 +84776,31 @@ function parseDrawing(ctx, dgContainer) {
|
|
|
84007
84776
|
return result;
|
|
84008
84777
|
}
|
|
84009
84778
|
let first2 = true;
|
|
84010
|
-
for (const
|
|
84011
|
-
if (
|
|
84779
|
+
for (const child16 of iterateChildren(ctx.view, topGroup)) {
|
|
84780
|
+
if (child16.recType === OA.SpContainer) {
|
|
84012
84781
|
if (first2) {
|
|
84013
84782
|
first2 = false;
|
|
84014
84783
|
continue;
|
|
84015
84784
|
}
|
|
84016
|
-
const backgroundRgb = extractBackground(ctx,
|
|
84785
|
+
const backgroundRgb = extractBackground(ctx, child16);
|
|
84017
84786
|
if (backgroundRgb !== void 0) {
|
|
84018
84787
|
result.backgroundRgb = backgroundRgb;
|
|
84019
84788
|
continue;
|
|
84020
84789
|
}
|
|
84021
|
-
const shape = parseShape(ctx,
|
|
84790
|
+
const shape = parseShape(ctx, child16);
|
|
84022
84791
|
if (shape) {
|
|
84023
84792
|
result.shapes.push(shape);
|
|
84024
84793
|
}
|
|
84025
|
-
} else if (
|
|
84026
|
-
const group = parseGroup2(ctx,
|
|
84794
|
+
} else if (child16.recType === OA.SpgrContainer) {
|
|
84795
|
+
const group = parseGroup2(ctx, child16);
|
|
84027
84796
|
if (group) {
|
|
84028
84797
|
result.shapes.push(group);
|
|
84029
84798
|
}
|
|
84030
|
-
} else if (isContainer(
|
|
84799
|
+
} else if (isContainer(child16)) ;
|
|
84031
84800
|
}
|
|
84032
|
-
for (const
|
|
84033
|
-
if (
|
|
84034
|
-
result.backgroundRgb = extractBackground(ctx,
|
|
84801
|
+
for (const child16 of iterateChildren(ctx.view, dgContainer)) {
|
|
84802
|
+
if (child16.recType === OA.SpContainer && result.backgroundRgb === void 0) {
|
|
84803
|
+
result.backgroundRgb = extractBackground(ctx, child16);
|
|
84035
84804
|
}
|
|
84036
84805
|
}
|
|
84037
84806
|
return result;
|
|
@@ -84185,14 +84954,14 @@ function parseMasterStyleAtom(view, rec, scheme, fonts) {
|
|
|
84185
84954
|
function collectMasterStyles(view, masterContainer, scheme, fonts) {
|
|
84186
84955
|
let titleStyles = [];
|
|
84187
84956
|
let bodyStyles = [];
|
|
84188
|
-
for (const
|
|
84189
|
-
if (
|
|
84957
|
+
for (const child16 of iterateChildren(view, masterContainer)) {
|
|
84958
|
+
if (child16.recType !== RT.TextMasterStyleAtom) {
|
|
84190
84959
|
continue;
|
|
84191
84960
|
}
|
|
84192
|
-
if (
|
|
84193
|
-
titleStyles = parseMasterStyleAtom(view,
|
|
84194
|
-
} else if (
|
|
84195
|
-
bodyStyles = parseMasterStyleAtom(view,
|
|
84961
|
+
if (child16.recInstance === 0 && titleStyles.length === 0) {
|
|
84962
|
+
titleStyles = parseMasterStyleAtom(view, child16, scheme, fonts);
|
|
84963
|
+
} else if (child16.recInstance === 1 && bodyStyles.length === 0) {
|
|
84964
|
+
bodyStyles = parseMasterStyleAtom(view, child16, scheme, fonts);
|
|
84196
84965
|
}
|
|
84197
84966
|
}
|
|
84198
84967
|
return { titleStyles, bodyStyles };
|
|
@@ -84209,9 +84978,9 @@ function parseFonts(view, docContainer) {
|
|
|
84209
84978
|
if (!collection) {
|
|
84210
84979
|
return fonts;
|
|
84211
84980
|
}
|
|
84212
|
-
for (const
|
|
84213
|
-
if (
|
|
84214
|
-
const name = decodeTextChars(view,
|
|
84981
|
+
for (const child16 of iterateChildren(view, collection)) {
|
|
84982
|
+
if (child16.recType === RT.FontEntityAtom) {
|
|
84983
|
+
const name = decodeTextChars(view, child16.dataOffset, Math.min(64, child16.recLen));
|
|
84215
84984
|
const nul = name.indexOf("\0");
|
|
84216
84985
|
fonts.push(nul >= 0 ? name.slice(0, nul) : name);
|
|
84217
84986
|
}
|
|
@@ -84220,19 +84989,19 @@ function parseFonts(view, docContainer) {
|
|
|
84220
84989
|
}
|
|
84221
84990
|
function readSlidePersistIds(view, slideList) {
|
|
84222
84991
|
const ids = [];
|
|
84223
|
-
for (const
|
|
84224
|
-
if (
|
|
84225
|
-
ids.push(view.getUint32(
|
|
84992
|
+
for (const child16 of iterateChildren(view, slideList)) {
|
|
84993
|
+
if (child16.recType === RT.SlidePersistAtom && child16.recLen >= 4) {
|
|
84994
|
+
ids.push(view.getUint32(child16.dataOffset, true));
|
|
84226
84995
|
}
|
|
84227
84996
|
}
|
|
84228
84997
|
return ids;
|
|
84229
84998
|
}
|
|
84230
84999
|
function resolveSlideOrder(view, docContainer, directory, scheme) {
|
|
84231
|
-
for (const
|
|
84232
|
-
if (
|
|
85000
|
+
for (const child16 of iterateChildren(view, docContainer)) {
|
|
85001
|
+
if (child16.recType === RT.SlideListWithText && child16.recInstance === 0) {
|
|
84233
85002
|
return {
|
|
84234
|
-
persistIds: readSlidePersistIds(view,
|
|
84235
|
-
outline: collectOutlineText(view,
|
|
85003
|
+
persistIds: readSlidePersistIds(view, child16),
|
|
85004
|
+
outline: collectOutlineText(view, child16, scheme)
|
|
84236
85005
|
};
|
|
84237
85006
|
}
|
|
84238
85007
|
}
|
|
@@ -84280,9 +85049,9 @@ async function parseDeck(streams) {
|
|
|
84280
85049
|
const oleEmbedRefs = parseOleEmbedRefs(view, docContainer);
|
|
84281
85050
|
const oleExObjIds = new Set(oleEmbedRefs.keys());
|
|
84282
85051
|
let masterPersistId;
|
|
84283
|
-
for (const
|
|
84284
|
-
if (
|
|
84285
|
-
const ids = readSlidePersistIds(view,
|
|
85052
|
+
for (const child16 of iterateChildren(view, docContainer)) {
|
|
85053
|
+
if (child16.recType === RT.SlideListWithText && child16.recInstance === 1) {
|
|
85054
|
+
const ids = readSlidePersistIds(view, child16);
|
|
84286
85055
|
masterPersistId = ids[0];
|
|
84287
85056
|
break;
|
|
84288
85057
|
}
|
|
@@ -84552,15 +85321,15 @@ function runPropsXml(run, ctx) {
|
|
|
84552
85321
|
attrs2.push('u="sng"');
|
|
84553
85322
|
}
|
|
84554
85323
|
attrs2.push('dirty="0"');
|
|
84555
|
-
let
|
|
85324
|
+
let children6 = "";
|
|
84556
85325
|
if (run.colorRgb !== void 0) {
|
|
84557
|
-
|
|
85326
|
+
children6 += solidFill(run.colorRgb);
|
|
84558
85327
|
}
|
|
84559
85328
|
if (run.fontName !== void 0) {
|
|
84560
|
-
|
|
85329
|
+
children6 += `<a:latin typeface="${esc(run.fontName)}"/>`;
|
|
84561
85330
|
}
|
|
84562
|
-
|
|
84563
|
-
return
|
|
85331
|
+
children6 += hyperlinkClickXml(run.hyperlink, ctx.hyperlinkRels, ctx.slideCount);
|
|
85332
|
+
return children6.length > 0 ? `<a:rPr ${attrs2.join(" ")}>${children6}</a:rPr>` : `<a:rPr ${attrs2.join(" ")}/>`;
|
|
84564
85333
|
}
|
|
84565
85334
|
function runXml(run, ctx) {
|
|
84566
85335
|
const segments = run.text.split(String.fromCharCode(11));
|
|
@@ -84685,8 +85454,8 @@ function picXml(picture, ctx) {
|
|
|
84685
85454
|
function grpXml(group, ctx) {
|
|
84686
85455
|
const id = ctx.nextId();
|
|
84687
85456
|
const anchor = group.anchor ?? group.childRect;
|
|
84688
|
-
const
|
|
84689
|
-
const inner = `<a:chOff x="${emu(
|
|
85457
|
+
const child16 = group.childRect;
|
|
85458
|
+
const inner = `<a:chOff x="${emu(child16.x)}" y="${emu(child16.y)}"/><a:chExt cx="${Math.max(0, emu(child16.w))}" cy="${Math.max(0, emu(child16.h))}"/>`;
|
|
84690
85459
|
return `<p:grpSp><p:nvGrpSpPr>${cNvPrXml(id, `Group ${id}`, group.actionClick, ctx)}<p:cNvGrpSpPr/><p:nvPr/></p:nvGrpSpPr><p:grpSpPr>${xfrmXml({ ...group, anchor }, inner)}</p:grpSpPr>${group.children.map((c) => shapeXml(c, ctx)).join("")}</p:grpSp>`;
|
|
84691
85460
|
}
|
|
84692
85461
|
function shapeXml(shape, ctx) {
|
|
@@ -86281,12 +87050,12 @@ function setChartSeriesChartType(element, seriesIndex, seriesType) {
|
|
|
86281
87050
|
}
|
|
86282
87051
|
}
|
|
86283
87052
|
function ensureDataPoint(series, pointIndex2) {
|
|
86284
|
-
const
|
|
86285
|
-
let dp =
|
|
87053
|
+
const points5 = series.dataPoints ??= [];
|
|
87054
|
+
let dp = points5.find((p) => p.idx === pointIndex2);
|
|
86286
87055
|
if (!dp) {
|
|
86287
87056
|
dp = { idx: pointIndex2 };
|
|
86288
|
-
|
|
86289
|
-
|
|
87057
|
+
points5.push(dp);
|
|
87058
|
+
points5.sort((a, b) => a.idx - b.idx);
|
|
86290
87059
|
}
|
|
86291
87060
|
return dp;
|
|
86292
87061
|
}
|
|
@@ -86828,14 +87597,14 @@ function createMediaElement(mediaType, source, options) {
|
|
|
86828
87597
|
posterFrameData: options?.posterFrame
|
|
86829
87598
|
};
|
|
86830
87599
|
}
|
|
86831
|
-
function createGroupElement(
|
|
87600
|
+
function createGroupElement(children6, options) {
|
|
86832
87601
|
const p = pos("group", options);
|
|
86833
87602
|
return {
|
|
86834
87603
|
type: "group",
|
|
86835
87604
|
id: generateId("grp"),
|
|
86836
87605
|
...p,
|
|
86837
87606
|
rotation: options?.rotation,
|
|
86838
|
-
children:
|
|
87607
|
+
children: children6
|
|
86839
87608
|
};
|
|
86840
87609
|
}
|
|
86841
87610
|
function createFreeformElement(pathData, options) {
|
|
@@ -86922,8 +87691,8 @@ var SlideBuilder = class {
|
|
|
86922
87691
|
return this;
|
|
86923
87692
|
}
|
|
86924
87693
|
/** Add a group of elements to the slide. */
|
|
86925
|
-
addGroup(
|
|
86926
|
-
this.slide.elements.push(createGroupElement(
|
|
87694
|
+
addGroup(children6, options) {
|
|
87695
|
+
this.slide.elements.push(createGroupElement(children6, options));
|
|
86927
87696
|
return this;
|
|
86928
87697
|
}
|
|
86929
87698
|
/** Add a pre-built element directly. */
|
|
@@ -87578,4 +88347,4 @@ var PresentationBuilder = class {
|
|
|
87578
88347
|
* `<p:extLst>` (optional)
|
|
87579
88348
|
*/
|
|
87580
88349
|
|
|
87581
|
-
export { AFTER_ANIMATION_VALUES, ConnectorXmlFactory, DEFAULT_AFTER_ANIMATION_DIM_COLOR, DEFAULT_ANIMATION_DURATION_MS, DEFAULT_ANIMATION_TRIGGER, DEFAULT_POWERPOINT_TABLE_STYLE_ID, ELEMENT_PARAGRAPH_GEOMETRY_KEYS, EncryptedPptError, MediaGraphicFrameXmlFactory, OOXML_TO_PRESET_EMPH, OOXML_TO_PRESET_ENTR, OOXML_TO_PRESET_EXIT, PRESET_TO_OOXML, PictureXmlFactory, PptxAnimationWriteService, PptxColorStyleCodec, PptxCommentAuthorsXmlFactory, PptxCommentXmlFactoryProvider, PptxCompatibilityService, PptxConnectorParser, PptxContentTypesBuilder, PptxDocumentPropertiesUpdater, PptxEditorAnimationService, PptxElementTransformUpdater, PptxElementXmlBuilder, PptxGraphicFrameParser, PptxHandler, PptxHandlerRuntime102 as PptxHandlerRuntime, PptxHandlerRuntimeFactory, PptxLoadDataBuilder, PptxMediaDataParser, PptxNativeAnimationService, PptxPresentationSaveBuilder, PptxPresentationSlidesReconciler, PptxRuntimeDependencyFactory, PptxSaveConstantsFactory, PptxSaveState, PptxSaveStateBuilder, PptxShapeIdValidator, PptxShapeStyleExtractor, PptxSlideBackgroundBuilder, PptxSlideBuilder, PptxSlideCommentPartWriter, PptxSlideCommentsXmlFactory, PptxSlideElementsBuilder, PptxSlideLoaderService, PptxSlideMediaRelationshipBuilder, PptxSlideNotesBuilder, PptxSlideNotesPartUpdater, PptxSlideRelationshipRegistry, PptxSlideTransitionService, PptxTableDataParser, PptxTemplateBackgroundService, PptxXmlBuilder, PptxXmlFactoryProvider, PptxXmlLookupService, PresentationBuilder, STANDARD_LAYOUTS, SlideBuilder, TABLE_STYLE_PART_SEQUENCE, TextShapeXmlFactory, addChartCategory, addChartSeries, addTableStyleToMap, animationFor, applyAfterAnimationBehavior, applyAfterAnimationFromEditorList, applyConnectorShapeIds, applySoundToEffectCTn, applySpeedToDuration, applyTableCellTextAndStyle, assertChartGradientSupported, breakAutoNumberRun, buildBlankPresentationArchive, buildRelationshipsXml, buildSingleEffectNode, buildSlideReferenceRemap, capturedPresetIds, capturedPresetNativeAnimation, capturedSubtypes, clonePartGraph, convertPptToPptx, createAutoNumberSequence, createChartElement, createConnectorElement, createDefaultPptxHandlerRuntime, createFreeformElement, createGroupElement, createImageElement, createMediaElement, createPptxSaveConstants, createShapeElement, createTableCellXml, createTableElement, createTableGraphicFrameRawXml, createTableStyleEntry, createTextElement, deleteTableStyleFromMap, ensureChartData, ensureDataPoint, extractAfterAnimationFromSubTnLst, extractGraphicBuilds, extractTableCellTextRuns, generateTableStyleGuid, getAfterAnimation, getAfterAnimationState, getCapturedPreset, getCapturedTree, hasAnimation, isEncryptedLegacyPpt, isLegacyPpt, isNativeAfterAnimationOnly, mergeNativeAfterAnimationIntoEditorAnimations, mergeNativeSoundIntoEditorAnimations, nextAutoNumber, nextRelationshipId, normalizeTableStyleGuid, ooxmlToPresetName, parseAnimEffectFilter, parseCondition, parseConditionList, parseFilterToken, parseRelationships, parseTimeTargetElement, rebuildTableStructureInRawXml, reconcileAnimationTargets, relationshipsPartFor, relativePartTarget, remapEditorAnimationsToShapeIds, removeChartCategory, removeChartSeries, removeEmptyDataPoint, resetIdCounter, resolveConnectorShapeIds, resolveDirectionSubtype, resolveEffectTiming, resolveIterationCount, resolveOoxmlPresetMapping, resolveOpacitySet, resolvePartPath, resolveTableBackgroundFillRef, resolveTableStyleLineRef, resolveTableStyleLineRefColor, resolveVisibilitySetTiming, serializeCondition, serializeConditionList, serializeGraphicBuild, serializeTimeTargetElement, setAfterAnimation, setAfterAnimationColor, setChartAreaFormat, setChartAxis, setChartAxisGridlineStyle, setChartAxisLogScale, setChartAxisTitleStyle, setChartCategories, setChartDataLabels, setChartDataPointExplosion, setChartDataPointFill, setChartDataPointLabel, setChartDataPointMarker, setChartGroupOptions, setChartGrouping, setChartLegend, setChartSeriesChartType, setChartSeriesColor, setChartSeriesErrorBars, setChartSeriesMarker, setChartSeriesTrendline, setChartTitle, setChartType, shouldHoldEndState, timingCurveToAccelDecel, toChartGradientFill, updateCellTextInRawXml, updateCellTextStyleInRawXml, updateChartDataPoint, updateChartSeriesValues, updateMergeAttrsInRawXml, upsert, validateSeriesIndex };
|
|
88350
|
+
export { AFTER_ANIMATION_VALUES, ConnectorXmlFactory, DEFAULT_AFTER_ANIMATION_DIM_COLOR, DEFAULT_ANIMATION_DURATION_MS, DEFAULT_ANIMATION_TRIGGER, DEFAULT_POWERPOINT_TABLE_STYLE_ID, ELEMENT_PARAGRAPH_GEOMETRY_KEYS, EncryptedPptError, MediaGraphicFrameXmlFactory, OOXML_TO_PRESET_EMPH, OOXML_TO_PRESET_ENTR, OOXML_TO_PRESET_EXIT, PRESET_TO_OOXML, PictureXmlFactory, PptxAnimationWriteService, PptxColorStyleCodec, PptxCommentAuthorsXmlFactory, PptxCommentXmlFactoryProvider, PptxCompatibilityService, PptxConnectorParser, PptxContentTypesBuilder, PptxDocumentPropertiesUpdater, PptxEditorAnimationService, PptxElementTransformUpdater, PptxElementXmlBuilder, PptxGraphicFrameParser, PptxHandler, PptxHandlerRuntime102 as PptxHandlerRuntime, PptxHandlerRuntimeFactory, PptxLoadDataBuilder, PptxMediaDataParser, PptxNativeAnimationService, PptxPresentationSaveBuilder, PptxPresentationSlidesReconciler, PptxRuntimeDependencyFactory, PptxSaveConstantsFactory, PptxSaveState, PptxSaveStateBuilder, PptxShapeIdValidator, PptxShapeStyleExtractor, PptxSlideBackgroundBuilder, PptxSlideBuilder, PptxSlideCommentPartWriter, PptxSlideCommentsXmlFactory, PptxSlideElementsBuilder, PptxSlideLoaderService, PptxSlideMediaRelationshipBuilder, PptxSlideNotesBuilder, PptxSlideNotesPartUpdater, PptxSlideRelationshipRegistry, PptxSlideTransitionService, PptxTableDataParser, PptxTemplateBackgroundService, PptxXmlBuilder, PptxXmlFactoryProvider, PptxXmlLookupService, PresentationBuilder, STANDARD_LAYOUTS, SlideBuilder, TABLE_STYLE_PART_SEQUENCE, TextShapeXmlFactory, addChartCategory, addChartSeries, addTableStyleToMap, animationFor, applyAfterAnimationBehavior, applyAfterAnimationFromEditorList, applyChartGroupOptionsInput, applyConnectorShapeIds, applySoundToEffectCTn, applySpeedToDuration, applyTableCellTextAndStyle, assertChartGradientSupported, breakAutoNumberRun, buildBlankPresentationArchive, buildRelationshipsXml, buildSingleEffectNode, buildSlideReferenceRemap, capturedPresetIds, capturedPresetNativeAnimation, capturedSubtypes, chartFormatTargetKey, clonePartGraph, convertPptToPptx, createAutoNumberSequence, createChartElement, createConnectorElement, createDefaultPptxHandlerRuntime, createFreeformElement, createGroupElement, createImageElement, createMediaElement, createPptxSaveConstants, createShapeElement, createTableCellXml, createTableElement, createTableGraphicFrameRawXml, createTableStyleEntry, createTextElement, deleteTableStyleFromMap, ensureChartData, ensureDataPoint, extractAfterAnimationFromSubTnLst, extractGraphicBuilds, extractTableCellTextRuns, generateTableStyleGuid, getAfterAnimation, getAfterAnimationState, getCapturedPreset, getCapturedTree, hasAnimation, isEncryptedLegacyPpt, isLegacyPpt, isLineDrawnChartType, isNativeAfterAnimationOnly, mergeNativeAfterAnimationIntoEditorAnimations, mergeNativeSoundIntoEditorAnimations, nextAutoNumber, nextRelationshipId, normalizeTableStyleGuid, ooxmlToPresetName, parseAnimEffectFilter, parseChartFormatTargetKey, parseCondition, parseConditionList, parseFilterToken, parseRelationships, parseTimeTargetElement, rebuildTableStructureInRawXml, reconcileAnimationTargets, relationshipsPartFor, relativePartTarget, remapEditorAnimationsToShapeIds, removeChartCategory, removeChartSeries, removeEmptyDataPoint, resetIdCounter, resolveConnectorShapeIds, resolveDirectionSubtype, resolveEffectTiming, resolveIterationCount, resolveOoxmlPresetMapping, resolveOpacitySet, resolvePartPath, resolveTableBackgroundFillRef, resolveTableStyleLineRef, resolveTableStyleLineRefColor, resolveVisibilitySetTiming, serializeCondition, serializeConditionList, serializeGraphicBuild, serializeTimeTargetElement, setAfterAnimation, setAfterAnimationColor, setChartAreaFormat, setChartAxis, setChartAxisGridlineStyle, setChartAxisLogScale, setChartAxisTitleStyle, setChartCategories, setChartDataLabels, setChartDataPointExplosion, setChartDataPointFill, setChartDataPointLabel, setChartDataPointMarker, setChartGroupOptions, setChartGrouping, setChartLegend, setChartSeriesChartType, setChartSeriesColor, setChartSeriesErrorBars, setChartSeriesMarker, setChartSeriesTrendline, setChartTitle, setChartType, shouldHoldEndState, timingCurveToAccelDecel, toChartGradientFill, updateCellTextInRawXml, updateCellTextStyleInRawXml, updateChartDataPoint, updateChartSeriesValues, updateMergeAttrsInRawXml, upsert, validateSeriesIndex };
|