ooxml.js 4.0.12 → 4.1.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/README.md +3 -2
- package/dist/{codec-CZkWeDXF.d.cts → codec-DO0MNF45.d.cts} +1 -1
- package/dist/{codec-BOGj_yQL.d.ts → codec-DxnbKt4O.d.ts} +1 -1
- package/dist/codec.d.cts +1 -1
- package/dist/codec.d.ts +1 -1
- package/dist/index.cjs +8 -9
- package/dist/index.d.cts +2 -2
- package/dist/index.d.ts +2 -2
- package/dist/index.js +2 -3
- package/dist/package-io/read.cjs +4 -1
- package/dist/package-io/read.d.cts +2 -2
- package/dist/package-io/read.d.ts +2 -2
- package/dist/package-io/read.js +4 -2
- package/dist/{read-CMDEXqGw.d.ts → read-CevviAf2.d.ts} +2 -1
- package/dist/read-DPAy4uu8.cjs +1188 -0
- package/dist/read-Legu2Pt-.js +1141 -0
- package/dist/{read-DzmMJPHd.d.cts → read-VbRhmjOh.d.cts} +2 -1
- package/dist/typed/document-package.cjs +4 -5
- package/dist/typed/document-package.js +2 -3
- package/dist/typed/docx/read.cjs +5 -645
- package/dist/typed/docx/read.js +1 -641
- package/dist/typed/embedded.cjs +4 -0
- package/dist/typed/embedded.d.cts +12 -0
- package/dist/typed/embedded.d.ts +12 -0
- package/dist/typed/embedded.js +2 -0
- package/dist/typed/pptx/read.cjs +3 -390
- package/dist/typed/pptx/read.js +1 -388
- package/dist/typed/xlsx/content.cjs +1 -1
- package/dist/typed/xlsx/content.js +1 -1
- package/package.json +2 -1
package/dist/typed/pptx/read.cjs
CHANGED
|
@@ -1,391 +1,4 @@
|
|
|
1
1
|
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
2
|
-
const
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
const require_image_sniff = require("../../image/sniff.cjs");
|
|
6
|
-
const require_typed_shared_units = require("../shared/units.cjs");
|
|
7
|
-
const require_typed_shared_drawingml = require("../shared/drawingml.cjs");
|
|
8
|
-
const require_typed_shared_source_path = require("../shared/source-path.cjs");
|
|
9
|
-
const require_typed_pptx_inherit = require("./inherit.cjs");
|
|
10
|
-
const require_typed_pptx_chart = require("./chart.cjs");
|
|
11
|
-
const require_typed_pptx_diagram = require("./diagram.cjs");
|
|
12
|
-
let zod = require("zod");
|
|
13
|
-
let document_schema_js = require("document-schema.js");
|
|
14
|
-
//#region src/typed/pptx/read.ts
|
|
15
|
-
const PptxDocumentSchema = zod.z.object({
|
|
16
|
-
metadata: require_typed_shared_metadata.DocumentMetadataSchema,
|
|
17
|
-
slides: zod.z.array(document_schema_js.ContentSlideSchema)
|
|
18
|
-
});
|
|
19
|
-
const PRESENTATION_PATH = "ppt/presentation.xml";
|
|
20
|
-
const TABLE_GRAPHIC_URI = "http://schemas.openxmlformats.org/drawingml/2006/table";
|
|
21
|
-
const CHART_GRAPHIC_URI = "http://schemas.openxmlformats.org/drawingml/2006/chart";
|
|
22
|
-
const DIAGRAM_GRAPHIC_URI = "http://schemas.openxmlformats.org/drawingml/2006/diagram";
|
|
23
|
-
const OLE_GRAPHIC_URI = "http://schemas.openxmlformats.org/presentationml/2006/ole";
|
|
24
|
-
function readSlideSize(presentationRoot) {
|
|
25
|
-
const sldSz = presentationRoot === void 0 ? void 0 : require_typed_util.childrenWithTag(presentationRoot, "p:sldSz")[0];
|
|
26
|
-
const cx = sldSz === void 0 ? void 0 : require_typed_util.attr(sldSz, "cx");
|
|
27
|
-
const cy = sldSz === void 0 ? void 0 : require_typed_util.attr(sldSz, "cy");
|
|
28
|
-
return cx === void 0 || cy === void 0 ? document_schema_js.SLIDE_SIZE_WIDESCREEN : {
|
|
29
|
-
widthPt: require_typed_shared_units.emuToPt(Number(cx)),
|
|
30
|
-
heightPt: require_typed_shared_units.emuToPt(Number(cy))
|
|
31
|
-
};
|
|
32
|
-
}
|
|
33
|
-
function readSlidePathsInOrder(pkg, presentationRoot) {
|
|
34
|
-
if (presentationRoot === void 0) return [];
|
|
35
|
-
const sldIdLst = require_typed_util.childrenWithTag(presentationRoot, "p:sldIdLst")[0];
|
|
36
|
-
if (sldIdLst === void 0) return [];
|
|
37
|
-
const presentationRels = require_typed_util.resolveRelationships(pkg, PRESENTATION_PATH);
|
|
38
|
-
const paths = [];
|
|
39
|
-
for (const sldId of require_typed_util.childrenWithTag(sldIdLst, "p:sldId")) {
|
|
40
|
-
const rId = require_typed_util.attr(sldId, "r:id");
|
|
41
|
-
const rel = rId === void 0 ? void 0 : presentationRels.get(rId);
|
|
42
|
-
if (rel !== void 0) paths.push(rel.target);
|
|
43
|
-
}
|
|
44
|
-
return paths;
|
|
45
|
-
}
|
|
46
|
-
function shapeName(shape) {
|
|
47
|
-
const cNvPr = require_typed_util.elementsWithTag([shape], "p:cNvPr")[0];
|
|
48
|
-
return cNvPr === void 0 ? void 0 : require_typed_util.attr(cNvPr, "name");
|
|
49
|
-
}
|
|
50
|
-
function mergeRunProperties(base, override) {
|
|
51
|
-
return {
|
|
52
|
-
fontFamily: override.fontFamily ?? base.fontFamily,
|
|
53
|
-
sizePt: override.sizePt ?? base.sizePt,
|
|
54
|
-
bold: override.bold ?? base.bold,
|
|
55
|
-
italic: override.italic ?? base.italic,
|
|
56
|
-
color: override.color ?? base.color
|
|
57
|
-
};
|
|
58
|
-
}
|
|
59
|
-
function isUnderlined(rPr) {
|
|
60
|
-
if (rPr === void 0) return;
|
|
61
|
-
const u = require_typed_util.attr(rPr, "u");
|
|
62
|
-
return u === void 0 ? void 0 : u !== "none";
|
|
63
|
-
}
|
|
64
|
-
function isStrikethrough(rPr) {
|
|
65
|
-
if (rPr === void 0) return;
|
|
66
|
-
const strike = require_typed_util.attr(rPr, "strike");
|
|
67
|
-
return strike === void 0 ? void 0 : strike !== "noStrike";
|
|
68
|
-
}
|
|
69
|
-
function readHyperlink(rPr, slideRels) {
|
|
70
|
-
if (rPr === void 0) return;
|
|
71
|
-
const hlink = require_typed_util.childrenWithTag(rPr, "a:hlinkClick")[0];
|
|
72
|
-
const rId = hlink === void 0 ? void 0 : require_typed_util.attr(hlink, "r:id");
|
|
73
|
-
const rel = rId === void 0 ? void 0 : slideRels.get(rId);
|
|
74
|
-
return rel?.targetMode === "External" ? rel.target : void 0;
|
|
75
|
-
}
|
|
76
|
-
function readRun(runEl, cascadeBase, context, slideRels) {
|
|
77
|
-
const rPr = require_typed_util.childrenWithTag(runEl, "a:rPr")[0];
|
|
78
|
-
const merged = mergeRunProperties(cascadeBase, rPr === void 0 ? {} : require_typed_pptx_inherit.readRunPropertiesFromElement(rPr, context));
|
|
79
|
-
const tEl = require_typed_util.childrenWithTag(runEl, "a:t")[0];
|
|
80
|
-
return {
|
|
81
|
-
text: tEl === void 0 ? "" : require_typed_util.textContent(tEl),
|
|
82
|
-
bold: merged.bold,
|
|
83
|
-
italic: merged.italic,
|
|
84
|
-
underline: isUnderlined(rPr),
|
|
85
|
-
strike: isStrikethrough(rPr),
|
|
86
|
-
fontFamily: merged.fontFamily,
|
|
87
|
-
sizePt: merged.sizePt,
|
|
88
|
-
color: merged.color,
|
|
89
|
-
hyperlink: readHyperlink(rPr, slideRels)
|
|
90
|
-
};
|
|
91
|
-
}
|
|
92
|
-
function readAlignment(algn) {
|
|
93
|
-
if (algn === "l") return "left";
|
|
94
|
-
if (algn === "ctr") return "center";
|
|
95
|
-
if (algn === "r") return "right";
|
|
96
|
-
if (algn === "just" || algn === "justLow") return "justify";
|
|
97
|
-
}
|
|
98
|
-
function readAbsoluteSpacingPt(spc) {
|
|
99
|
-
if (spc === void 0) return;
|
|
100
|
-
const pts = require_typed_util.childrenWithTag(spc, "a:spcPts")[0];
|
|
101
|
-
const val = pts === void 0 ? void 0 : require_typed_util.attr(pts, "val");
|
|
102
|
-
return val === void 0 ? void 0 : require_typed_shared_units.drawingMlFontSizeToPt(Number(val));
|
|
103
|
-
}
|
|
104
|
-
function readLineSpacingMultiplier(pPr) {
|
|
105
|
-
const lnSpc = pPr === void 0 ? void 0 : require_typed_util.childrenWithTag(pPr, "a:lnSpc")[0];
|
|
106
|
-
const pct = lnSpc === void 0 ? void 0 : require_typed_util.childrenWithTag(lnSpc, "a:spcPct")[0];
|
|
107
|
-
const val = pct === void 0 ? void 0 : require_typed_util.attr(pct, "val");
|
|
108
|
-
return val === void 0 ? void 0 : Number(val) / 1e5;
|
|
109
|
-
}
|
|
110
|
-
function readOutlineLevel(pPr) {
|
|
111
|
-
const raw = pPr === void 0 ? void 0 : require_typed_util.attr(pPr, "lvl");
|
|
112
|
-
if (raw === void 0 || raw === "") return;
|
|
113
|
-
const level = Number(raw);
|
|
114
|
-
return Number.isInteger(level) && level >= 0 ? level : void 0;
|
|
115
|
-
}
|
|
116
|
-
function readParagraph(pEl, placeholderType, context, slideRels) {
|
|
117
|
-
const pPr = require_typed_util.childrenWithTag(pEl, "a:pPr")[0];
|
|
118
|
-
const outlineLevel = readOutlineLevel(pPr);
|
|
119
|
-
const masterDefaults = require_typed_pptx_inherit.resolveDefaultRunProperties(placeholderType, outlineLevel ?? 0, context);
|
|
120
|
-
const pPrDefRPr = pPr === void 0 ? void 0 : require_typed_util.childrenWithTag(pPr, "a:defRPr")[0];
|
|
121
|
-
const paragraphDefaults = pPrDefRPr === void 0 ? masterDefaults : mergeRunProperties(masterDefaults, require_typed_pptx_inherit.readRunPropertiesFromElement(pPrDefRPr, context));
|
|
122
|
-
const runs = [];
|
|
123
|
-
for (const child of pEl.children) {
|
|
124
|
-
if (child.type !== "element") continue;
|
|
125
|
-
if (child.tag === "a:r" || child.tag === "a:fld") runs.push(readRun(child, paragraphDefaults, context, slideRels));
|
|
126
|
-
else if (child.tag === "a:br") runs.push({ text: "\n" });
|
|
127
|
-
}
|
|
128
|
-
const marL = pPr === void 0 ? void 0 : require_typed_util.attr(pPr, "marL");
|
|
129
|
-
const indent = pPr === void 0 ? void 0 : require_typed_util.attr(pPr, "indent");
|
|
130
|
-
return {
|
|
131
|
-
kind: "paragraph",
|
|
132
|
-
runs,
|
|
133
|
-
alignment: pPr === void 0 ? void 0 : readAlignment(require_typed_util.attr(pPr, "algn")),
|
|
134
|
-
list: outlineLevel === void 0 ? void 0 : { level: outlineLevel },
|
|
135
|
-
spacingBeforePt: readAbsoluteSpacingPt(pPr === void 0 ? void 0 : require_typed_util.childrenWithTag(pPr, "a:spcBef")[0]),
|
|
136
|
-
spacingAfterPt: readAbsoluteSpacingPt(pPr === void 0 ? void 0 : require_typed_util.childrenWithTag(pPr, "a:spcAft")[0]),
|
|
137
|
-
lineSpacing: readLineSpacingMultiplier(pPr),
|
|
138
|
-
indentLeftPt: marL === void 0 ? void 0 : require_typed_shared_units.emuToPt(Number(marL)),
|
|
139
|
-
indentFirstLinePt: indent === void 0 ? void 0 : require_typed_shared_units.emuToPt(Number(indent))
|
|
140
|
-
};
|
|
141
|
-
}
|
|
142
|
-
function textBodyParagraphs(txBody, placeholderType, context, slideRels) {
|
|
143
|
-
return txBody === void 0 ? [] : require_typed_util.childrenWithTag(txBody, "a:p").map((p) => readParagraph(p, placeholderType, context, slideRels));
|
|
144
|
-
}
|
|
145
|
-
const DEFAULT_INSET_LEFT_RIGHT_EMU = 91440;
|
|
146
|
-
const DEFAULT_INSET_TOP_BOTTOM_EMU = 45720;
|
|
147
|
-
const NO_TEXT_BODY_EXTRAS = {
|
|
148
|
-
insetLeftPt: 0,
|
|
149
|
-
insetTopPt: 0,
|
|
150
|
-
insetRightPt: 0,
|
|
151
|
-
insetBottomPt: 0,
|
|
152
|
-
fontScale: void 0,
|
|
153
|
-
lineSpacingReduction: void 0
|
|
154
|
-
};
|
|
155
|
-
function readShapeTextExtras(txBody) {
|
|
156
|
-
if (txBody === void 0) return NO_TEXT_BODY_EXTRAS;
|
|
157
|
-
const bodyPr = require_typed_util.childrenWithTag(txBody, "a:bodyPr")[0];
|
|
158
|
-
const lIns = bodyPr === void 0 ? void 0 : require_typed_util.attr(bodyPr, "lIns");
|
|
159
|
-
const tIns = bodyPr === void 0 ? void 0 : require_typed_util.attr(bodyPr, "tIns");
|
|
160
|
-
const rIns = bodyPr === void 0 ? void 0 : require_typed_util.attr(bodyPr, "rIns");
|
|
161
|
-
const bIns = bodyPr === void 0 ? void 0 : require_typed_util.attr(bodyPr, "bIns");
|
|
162
|
-
const normAutofit = bodyPr === void 0 ? void 0 : require_typed_util.childrenWithTag(bodyPr, "a:normAutofit")[0];
|
|
163
|
-
const fontScale = normAutofit === void 0 ? void 0 : require_typed_util.attr(normAutofit, "fontScale");
|
|
164
|
-
const lnSpcReduction = normAutofit === void 0 ? void 0 : require_typed_util.attr(normAutofit, "lnSpcReduction");
|
|
165
|
-
return {
|
|
166
|
-
insetLeftPt: require_typed_shared_units.emuToPt(lIns === void 0 ? DEFAULT_INSET_LEFT_RIGHT_EMU : Number(lIns)),
|
|
167
|
-
insetTopPt: require_typed_shared_units.emuToPt(tIns === void 0 ? DEFAULT_INSET_TOP_BOTTOM_EMU : Number(tIns)),
|
|
168
|
-
insetRightPt: require_typed_shared_units.emuToPt(rIns === void 0 ? DEFAULT_INSET_LEFT_RIGHT_EMU : Number(rIns)),
|
|
169
|
-
insetBottomPt: require_typed_shared_units.emuToPt(bIns === void 0 ? DEFAULT_INSET_TOP_BOTTOM_EMU : Number(bIns)),
|
|
170
|
-
fontScale: fontScale === void 0 ? void 0 : Number(fontScale) / 1e5,
|
|
171
|
-
lineSpacingReduction: lnSpcReduction === void 0 ? void 0 : Number(lnSpcReduction) / 1e5
|
|
172
|
-
};
|
|
173
|
-
}
|
|
174
|
-
function resolveShapeFrame(shape, context, parentTransform) {
|
|
175
|
-
const key = require_typed_pptx_inherit.readPlaceholderKey(shape);
|
|
176
|
-
const spPr = require_typed_util.childrenWithTag(shape, "p:spPr")[0];
|
|
177
|
-
const xfrm = (spPr === void 0 ? void 0 : require_typed_shared_drawingml.readXfrm(require_typed_util.childrenWithTag(spPr, "a:xfrm")[0])) ?? (key === void 0 ? void 0 : require_typed_pptx_inherit.resolvePlaceholderXfrm(key, context));
|
|
178
|
-
if (xfrm === void 0) return;
|
|
179
|
-
const localFrame = {
|
|
180
|
-
xPt: xfrm.xPt,
|
|
181
|
-
yPt: xfrm.yPt,
|
|
182
|
-
widthPt: xfrm.widthPt,
|
|
183
|
-
heightPt: xfrm.heightPt
|
|
184
|
-
};
|
|
185
|
-
const rotationDeg = require_typed_shared_drawingml.composeShapeRotationDeg(parentTransform, xfrm.rotationDeg);
|
|
186
|
-
return {
|
|
187
|
-
frame: parentTransform === void 0 ? localFrame : require_typed_shared_drawingml.applyGroupTransform(parentTransform, localFrame),
|
|
188
|
-
rotationDeg: rotationDeg === 0 ? void 0 : rotationDeg
|
|
189
|
-
};
|
|
190
|
-
}
|
|
191
|
-
function readSpShape(sp, context, slideRels, parentTransform) {
|
|
192
|
-
const resolved = resolveShapeFrame(sp, context, parentTransform);
|
|
193
|
-
if (resolved === void 0) return;
|
|
194
|
-
const key = require_typed_pptx_inherit.readPlaceholderKey(sp);
|
|
195
|
-
const txBody = require_typed_util.childrenWithTag(sp, "p:txBody")[0];
|
|
196
|
-
const blocks = textBodyParagraphs(txBody, key?.type, context, slideRels);
|
|
197
|
-
const extras = readShapeTextExtras(txBody);
|
|
198
|
-
return {
|
|
199
|
-
name: shapeName(sp),
|
|
200
|
-
frame: resolved.frame,
|
|
201
|
-
rotationDeg: resolved.rotationDeg,
|
|
202
|
-
...extras,
|
|
203
|
-
blocks
|
|
204
|
-
};
|
|
205
|
-
}
|
|
206
|
-
function readBlipImage(parent, slideRels, pkg, frame) {
|
|
207
|
-
const blip = require_typed_util.elementsWithTag([parent], "a:blip")[0];
|
|
208
|
-
const rId = blip === void 0 ? void 0 : require_typed_util.attr(blip, "r:embed");
|
|
209
|
-
const rel = rId === void 0 ? void 0 : slideRels.get(rId);
|
|
210
|
-
const mediaPart = rel === void 0 ? void 0 : pkg.parts[rel.target];
|
|
211
|
-
if (mediaPart?.kind !== "binary") return;
|
|
212
|
-
const format = require_image_sniff.sniffImageFormat(require_util_base64.base64ToBytes(mediaPart.base64));
|
|
213
|
-
return format === void 0 ? void 0 : {
|
|
214
|
-
kind: "image",
|
|
215
|
-
format,
|
|
216
|
-
base64: mediaPart.base64,
|
|
217
|
-
widthPt: frame.widthPt,
|
|
218
|
-
heightPt: frame.heightPt
|
|
219
|
-
};
|
|
220
|
-
}
|
|
221
|
-
function readPicShape(pic, context, slideRels, pkg, parentTransform) {
|
|
222
|
-
const resolved = resolveShapeFrame(pic, context, parentTransform);
|
|
223
|
-
if (resolved === void 0) return;
|
|
224
|
-
const image = readBlipImage(pic, slideRels, pkg, resolved.frame);
|
|
225
|
-
const blocks = image === void 0 ? [] : [image];
|
|
226
|
-
return {
|
|
227
|
-
name: shapeName(pic),
|
|
228
|
-
frame: resolved.frame,
|
|
229
|
-
rotationDeg: resolved.rotationDeg,
|
|
230
|
-
...NO_TEXT_BODY_EXTRAS,
|
|
231
|
-
blocks
|
|
232
|
-
};
|
|
233
|
-
}
|
|
234
|
-
function readTableCell(tc, context, slideRels) {
|
|
235
|
-
const hMerge = require_typed_util.attr(tc, "hMerge");
|
|
236
|
-
const vMerge = require_typed_util.attr(tc, "vMerge");
|
|
237
|
-
if (hMerge === "1" || vMerge === "1") return { blocks: [] };
|
|
238
|
-
const tcPr = require_typed_util.childrenWithTag(tc, "a:tcPr")[0];
|
|
239
|
-
const solidFill = tcPr === void 0 ? void 0 : require_typed_util.childrenWithTag(tcPr, "a:solidFill")[0];
|
|
240
|
-
const background = require_typed_shared_drawingml.readSolidFillColor(solidFill, context.colorMap, context.theme);
|
|
241
|
-
const txBody = require_typed_util.childrenWithTag(tc, "a:txBody")[0];
|
|
242
|
-
const gridSpan = require_typed_util.attr(tc, "gridSpan");
|
|
243
|
-
const rowSpan = require_typed_util.attr(tc, "rowSpan");
|
|
244
|
-
return {
|
|
245
|
-
blocks: textBodyParagraphs(txBody, void 0, context, slideRels),
|
|
246
|
-
colSpan: gridSpan === void 0 ? void 0 : Number(gridSpan),
|
|
247
|
-
rowSpan: rowSpan === void 0 ? void 0 : Number(rowSpan),
|
|
248
|
-
background
|
|
249
|
-
};
|
|
250
|
-
}
|
|
251
|
-
function readTable(tbl, context, slideRels) {
|
|
252
|
-
const tblGrid = require_typed_util.childrenWithTag(tbl, "a:tblGrid")[0];
|
|
253
|
-
const columnWidthsPt = tblGrid === void 0 ? [] : require_typed_util.childrenWithTag(tblGrid, "a:gridCol").map((col) => require_typed_shared_units.emuToPt(Number(require_typed_util.attr(col, "w") ?? "0")));
|
|
254
|
-
return {
|
|
255
|
-
kind: "table",
|
|
256
|
-
rows: require_typed_util.childrenWithTag(tbl, "a:tr").map((tr) => {
|
|
257
|
-
const h = require_typed_util.attr(tr, "h");
|
|
258
|
-
return {
|
|
259
|
-
cells: require_typed_util.childrenWithTag(tr, "a:tc").map((tc) => readTableCell(tc, context, slideRels)),
|
|
260
|
-
heightPt: h === void 0 ? void 0 : require_typed_shared_units.emuToPt(Number(h))
|
|
261
|
-
};
|
|
262
|
-
}),
|
|
263
|
-
columnWidthsPt
|
|
264
|
-
};
|
|
265
|
-
}
|
|
266
|
-
function relatedPartRoot(rId, slideRels, pkg) {
|
|
267
|
-
if (rId === void 0) return;
|
|
268
|
-
const rel = slideRels.get(rId);
|
|
269
|
-
return rel === void 0 ? void 0 : require_typed_util.rootElement(pkg.parts[rel.target]);
|
|
270
|
-
}
|
|
271
|
-
function readGraphicFrameShape(gf, context, slideRels, pkg, parentTransform) {
|
|
272
|
-
const xfrm = require_typed_shared_drawingml.readXfrm(require_typed_util.childrenWithTag(gf, "p:xfrm")[0]);
|
|
273
|
-
if (xfrm === void 0) return;
|
|
274
|
-
const localFrame = {
|
|
275
|
-
xPt: xfrm.xPt,
|
|
276
|
-
yPt: xfrm.yPt,
|
|
277
|
-
widthPt: xfrm.widthPt,
|
|
278
|
-
heightPt: xfrm.heightPt
|
|
279
|
-
};
|
|
280
|
-
const frame = parentTransform === void 0 ? localFrame : require_typed_shared_drawingml.applyGroupTransform(parentTransform, localFrame);
|
|
281
|
-
const composedRotationDeg = require_typed_shared_drawingml.composeShapeRotationDeg(parentTransform, xfrm.rotationDeg);
|
|
282
|
-
const rotationDeg = composedRotationDeg === 0 ? void 0 : composedRotationDeg;
|
|
283
|
-
const graphic = require_typed_util.childrenWithTag(gf, "a:graphic")[0];
|
|
284
|
-
const graphicData = graphic === void 0 ? void 0 : require_typed_util.childrenWithTag(graphic, "a:graphicData")[0];
|
|
285
|
-
const uri = graphicData === void 0 ? void 0 : require_typed_util.attr(graphicData, "uri");
|
|
286
|
-
const tbl = uri === TABLE_GRAPHIC_URI && graphicData !== void 0 ? require_typed_util.childrenWithTag(graphicData, "a:tbl")[0] : void 0;
|
|
287
|
-
let blocks;
|
|
288
|
-
if (tbl !== void 0) blocks = [readTable(tbl, context, slideRels)];
|
|
289
|
-
else if (uri === CHART_GRAPHIC_URI && graphicData !== void 0) {
|
|
290
|
-
const chartRef = require_typed_util.childrenWithTag(graphicData, "c:chart")[0];
|
|
291
|
-
const chartRoot = relatedPartRoot(chartRef === void 0 ? void 0 : require_typed_util.attr(chartRef, "r:id"), slideRels, pkg);
|
|
292
|
-
const chartTable = chartRoot === void 0 ? void 0 : require_typed_pptx_chart.readChartTable(chartRoot, frame);
|
|
293
|
-
blocks = chartTable === void 0 ? [] : [chartTable];
|
|
294
|
-
} else if (uri === DIAGRAM_GRAPHIC_URI && graphicData !== void 0) {
|
|
295
|
-
const relIds = require_typed_util.childrenWithTag(graphicData, "dgm:relIds")[0];
|
|
296
|
-
const dataModelRoot = relatedPartRoot(relIds === void 0 ? void 0 : require_typed_util.attr(relIds, "r:dm"), slideRels, pkg);
|
|
297
|
-
blocks = dataModelRoot === void 0 ? [] : require_typed_pptx_diagram.readDiagramText(dataModelRoot);
|
|
298
|
-
} else if (uri === OLE_GRAPHIC_URI && graphicData !== void 0) {
|
|
299
|
-
const image = readBlipImage(graphicData, slideRels, pkg, frame);
|
|
300
|
-
if (image !== void 0) blocks = [image];
|
|
301
|
-
else {
|
|
302
|
-
const oleObj = require_typed_util.elementsWithTag([graphicData], "p:oleObj")[0];
|
|
303
|
-
const progId = oleObj === void 0 ? void 0 : require_typed_util.attr(oleObj, "progId");
|
|
304
|
-
blocks = progId === void 0 ? [] : [{
|
|
305
|
-
kind: "paragraph",
|
|
306
|
-
runs: [{ text: progId }]
|
|
307
|
-
}];
|
|
308
|
-
}
|
|
309
|
-
} else blocks = [];
|
|
310
|
-
return {
|
|
311
|
-
name: shapeName(gf),
|
|
312
|
-
frame,
|
|
313
|
-
rotationDeg,
|
|
314
|
-
...NO_TEXT_BODY_EXTRAS,
|
|
315
|
-
blocks
|
|
316
|
-
};
|
|
317
|
-
}
|
|
318
|
-
function walkShapeTreeChildren(children, parentTransform, context, slideRels, pkg, out) {
|
|
319
|
-
for (const node of children) {
|
|
320
|
-
if (node.type !== "element") continue;
|
|
321
|
-
if (node.tag === "p:sp") {
|
|
322
|
-
const shape = readSpShape(node, context, slideRels, parentTransform);
|
|
323
|
-
if (shape !== void 0) out.push(shape);
|
|
324
|
-
} else if (node.tag === "p:pic") {
|
|
325
|
-
const shape = readPicShape(node, context, slideRels, pkg, parentTransform);
|
|
326
|
-
if (shape !== void 0) out.push(shape);
|
|
327
|
-
} else if (node.tag === "p:graphicFrame") {
|
|
328
|
-
const shape = readGraphicFrameShape(node, context, slideRels, pkg, parentTransform);
|
|
329
|
-
if (shape !== void 0) out.push(shape);
|
|
330
|
-
} else if (node.tag === "p:grpSp") {
|
|
331
|
-
const grpSpPr = require_typed_util.childrenWithTag(node, "p:grpSpPr")[0];
|
|
332
|
-
const xfrmEl = grpSpPr === void 0 ? void 0 : require_typed_util.childrenWithTag(grpSpPr, "a:xfrm")[0];
|
|
333
|
-
const ownGroupTransform = require_typed_shared_drawingml.readGroupXfrm(xfrmEl);
|
|
334
|
-
const composed = require_typed_shared_drawingml.composeGroupTransform(ownGroupTransform, parentTransform);
|
|
335
|
-
walkShapeTreeChildren(node.children, composed, context, slideRels, pkg, out);
|
|
336
|
-
}
|
|
337
|
-
}
|
|
338
|
-
}
|
|
339
|
-
const NOTES_SLIDE_REL_SUFFIX = "/notesSlide";
|
|
340
|
-
function readNotes(pkg, slidePath) {
|
|
341
|
-
let notesPath;
|
|
342
|
-
for (const rel of require_typed_util.resolveRelationships(pkg, slidePath).values()) if (rel.type.endsWith(NOTES_SLIDE_REL_SUFFIX)) {
|
|
343
|
-
notesPath = rel.target;
|
|
344
|
-
break;
|
|
345
|
-
}
|
|
346
|
-
if (notesPath === void 0) return "";
|
|
347
|
-
const notesRoot = require_typed_util.rootElement(pkg.parts[notesPath]);
|
|
348
|
-
if (notesRoot === void 0) return "";
|
|
349
|
-
const bodyShape = require_typed_util.elementsWithTag([notesRoot], "p:sp").find((shape) => {
|
|
350
|
-
const key = require_typed_pptx_inherit.readPlaceholderKey(shape);
|
|
351
|
-
return key !== void 0 && (key.type === void 0 || key.type === "body");
|
|
352
|
-
});
|
|
353
|
-
if (bodyShape !== void 0) {
|
|
354
|
-
const txBody = require_typed_util.childrenWithTag(bodyShape, "p:txBody")[0];
|
|
355
|
-
if (txBody !== void 0) return require_typed_util.elementsWithTag(txBody.children, "a:t").map(require_typed_util.textContent).join("");
|
|
356
|
-
}
|
|
357
|
-
return require_typed_util.elementsWithTag([notesRoot], "a:t").map(require_typed_util.textContent).join("");
|
|
358
|
-
}
|
|
359
|
-
function readSlide(pkg, slidePath, size) {
|
|
360
|
-
const slideRoot = require_typed_util.rootElement(pkg.parts[slidePath]);
|
|
361
|
-
const context = require_typed_pptx_inherit.resolveSlideInheritance(pkg, slidePath);
|
|
362
|
-
const slideRels = require_typed_util.resolveRelationships(pkg, slidePath);
|
|
363
|
-
const cSld = slideRoot === void 0 ? void 0 : require_typed_util.childrenWithTag(slideRoot, "p:cSld")[0];
|
|
364
|
-
const spTree = cSld === void 0 ? void 0 : require_typed_util.childrenWithTag(cSld, "p:spTree")[0];
|
|
365
|
-
const shapes = [];
|
|
366
|
-
if (spTree !== void 0) walkShapeTreeChildren(spTree.children, void 0, context, slideRels, pkg, shapes);
|
|
367
|
-
return {
|
|
368
|
-
size,
|
|
369
|
-
shapes,
|
|
370
|
-
notes: readNotes(pkg, slidePath)
|
|
371
|
-
};
|
|
372
|
-
}
|
|
373
|
-
function readPptxContent(pkg) {
|
|
374
|
-
const presentationRoot = require_typed_util.rootElement(pkg.parts[PRESENTATION_PATH]);
|
|
375
|
-
const size = readSlideSize(presentationRoot);
|
|
376
|
-
const slides = readSlidePathsInOrder(pkg, presentationRoot).map((slidePath) => readSlide(pkg, slidePath, size));
|
|
377
|
-
slides.forEach((slide, slideIndex) => {
|
|
378
|
-
slide.shapes.forEach((shape, shapeIndex) => {
|
|
379
|
-
const shapePath = `slides[${slideIndex}].shapes[${shapeIndex}]`;
|
|
380
|
-
shape.sourcePath = shapePath;
|
|
381
|
-
require_typed_shared_source_path.assignSourcePaths(shape.blocks, shapePath);
|
|
382
|
-
});
|
|
383
|
-
});
|
|
384
|
-
return {
|
|
385
|
-
metadata: require_typed_shared_metadata.readCoreProperties(pkg),
|
|
386
|
-
slides
|
|
387
|
-
};
|
|
388
|
-
}
|
|
389
|
-
//#endregion
|
|
390
|
-
exports.PptxDocumentSchema = PptxDocumentSchema;
|
|
391
|
-
exports.readPptxContent = readPptxContent;
|
|
2
|
+
const require_read = require("../../read-DPAy4uu8.cjs");
|
|
3
|
+
exports.PptxDocumentSchema = require_read.PptxDocumentSchema;
|
|
4
|
+
exports.readPptxContent = require_read.readPptxContent;
|