ppt-codec 1.6.0 → 1.7.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (42) hide show
  1. package/README.md +44 -40
  2. package/dist/document/master-write.cjs +1 -1
  3. package/dist/document/master-write.js +1 -1
  4. package/dist/document/notes-write.cjs +1 -1
  5. package/dist/document/notes-write.js +1 -1
  6. package/dist/drawing/properties.cjs +8 -0
  7. package/dist/drawing/properties.d.cts +5 -1
  8. package/dist/drawing/properties.d.ts +5 -1
  9. package/dist/drawing/properties.js +5 -1
  10. package/dist/drawing/shapes-write.cjs +37 -7
  11. package/dist/drawing/shapes-write.d.cts +1 -0
  12. package/dist/drawing/shapes-write.d.ts +1 -0
  13. package/dist/drawing/shapes-write.js +38 -8
  14. package/dist/index.cjs +10 -2
  15. package/dist/index.d.cts +6 -6
  16. package/dist/index.d.ts +6 -6
  17. package/dist/index.js +6 -6
  18. package/dist/ole/embedded-write.cjs +66 -0
  19. package/dist/ole/embedded-write.d.cts +12 -0
  20. package/dist/ole/embedded-write.d.ts +12 -0
  21. package/dist/ole/embedded-write.js +63 -0
  22. package/dist/ole/embedded.cjs +66 -0
  23. package/dist/ole/embedded.d.cts +12 -0
  24. package/dist/ole/embedded.d.ts +12 -0
  25. package/dist/ole/embedded.js +63 -0
  26. package/dist/read.cjs +52 -11
  27. package/dist/read.d.cts +12 -5
  28. package/dist/read.d.ts +12 -5
  29. package/dist/read.js +53 -12
  30. package/dist/stream/current-user.cjs +1 -0
  31. package/dist/stream/current-user.d.cts +2 -1
  32. package/dist/stream/current-user.d.ts +2 -1
  33. package/dist/stream/current-user.js +1 -1
  34. package/dist/units.cjs +10 -0
  35. package/dist/units.d.cts +4 -1
  36. package/dist/units.d.ts +4 -1
  37. package/dist/units.js +8 -1
  38. package/dist/write.cjs +41 -5
  39. package/dist/write.d.cts +6 -2
  40. package/dist/write.d.ts +6 -2
  41. package/dist/write.js +41 -5
  42. package/package.json +5 -5
@@ -1,13 +1,37 @@
1
+ import { PptUnsupportedContentError } from "../errors.js";
1
2
  import { OfficeArtChildAnchor, OfficeArtClientAnchor, OfficeArtClientTextbox, OfficeArtDgContainer, OfficeArtFOPT, OfficeArtFSP, OfficeArtFSPGR, OfficeArtSpContainer, OfficeArtSpgrContainer, OfficeArtTertiaryFOPT, RT_Drawing, RT_TextCharsAtom, RT_TextHeaderAtom } from "../record/types.js";
2
3
  import { characterCountOf } from "../text/atoms.js";
3
- import { pointsToMasterUnits } from "../units.js";
4
+ import { pointsToEmu, pointsToMasterUnits } from "../units.js";
4
5
  import { buildTextBody } from "../content-write.js";
5
6
  import { PptDiagnosticCodes } from "../diagnostics.js";
6
7
  import { concatBytes, i32le, u32le, utf16le, writeAtom, writeContainer } from "../record/write.js";
7
8
  import { isBlipFormat } from "./blips.js";
8
9
  import { degreesToFixedPoint, writeIMsoArray, writeShapePropertyTable } from "./properties.js";
10
+ import { DEFAULT_INSET_LEFT_RIGHT_PT, DEFAULT_INSET_TOP_BOTTOM_PT } from "../read.js";
9
11
  import { writeStyleTextPropAtom } from "../text/style-write.js";
10
12
  //#region src/drawing/shapes-write.ts
13
+ function insetProperties(shape, isPicture) {
14
+ const defaultLeftRight = isPicture ? 0 : DEFAULT_INSET_LEFT_RIGHT_PT;
15
+ const defaultTopBottom = isPicture ? 0 : DEFAULT_INSET_TOP_BOTTOM_PT;
16
+ const entries = [];
17
+ if (shape.insetLeftPt !== defaultLeftRight) entries.push({
18
+ opid: 129,
19
+ op: pointsToEmu(shape.insetLeftPt)
20
+ });
21
+ if (shape.insetTopPt !== defaultTopBottom) entries.push({
22
+ opid: 130,
23
+ op: pointsToEmu(shape.insetTopPt)
24
+ });
25
+ if (shape.insetRightPt !== defaultLeftRight) entries.push({
26
+ opid: 131,
27
+ op: pointsToEmu(shape.insetRightPt)
28
+ });
29
+ if (shape.insetBottomPt !== defaultTopBottom) entries.push({
30
+ opid: 132,
31
+ op: pointsToEmu(shape.insetBottomPt)
32
+ });
33
+ return entries;
34
+ }
11
35
  const FSP_CHILD = 2;
12
36
  const PATRIARCH_SPID = 1;
13
37
  const FIRST_CONTENT_SPID = 2;
@@ -35,6 +59,7 @@ function writeShapeProperties(shape, pib) {
35
59
  op: pib,
36
60
  fBid: true
37
61
  });
62
+ entries.push(...insetProperties(shape, pib !== void 0));
38
63
  return entries.length === 0 ? void 0 : writeShapePropertyTable(OfficeArtFOPT, entries);
39
64
  }
40
65
  function writeClientTextbox(textBlocks, fontIndexOf) {
@@ -61,25 +86,30 @@ function writeShape(spid, shape, pib, textBlocks, fontIndexOf, clientData) {
61
86
  function writePatriarch() {
62
87
  return writeContainer(OfficeArtSpContainer, [writeAtom(OfficeArtFSPGR, /* @__PURE__ */ new Uint8Array(16), { recVer: 1 }), writeFsp(PATRIARCH_SPID, 5)]);
63
88
  }
64
- function planShapeBlocks(blocks, context) {
89
+ function reportDrop(context, diagnostic) {
90
+ context.sink(diagnostic);
91
+ if (context.strict) throw new PptUnsupportedContentError(diagnostic.message);
92
+ }
93
+ function planShapeBlocks(blocks, context, hasOleClientData) {
65
94
  const textBlocks = [];
66
95
  let pib;
67
96
  let table;
68
97
  const drop = (block, reason) => {
69
- context.sink({
98
+ reportDrop(context, {
70
99
  code: PptDiagnosticCodes.BLOCK_DROPPED,
71
100
  severity: "warning",
72
101
  message: `${context.location}: ${reason}`
73
102
  });
74
103
  };
75
104
  for (const block of blocks) {
105
+ if (block.kind === "embeddedObject" && hasOleClientData) continue;
76
106
  if (block.kind === "paragraph") {
77
107
  textBlocks.push(block);
78
108
  continue;
79
109
  }
80
110
  if (block.kind === "image") {
81
111
  if (!isBlipFormat(block.format)) {
82
- context.sink({
112
+ reportDrop(context, {
83
113
  code: PptDiagnosticCodes.IMAGE_DROPPED,
84
114
  severity: "warning",
85
115
  message: `${context.location}: an image block in format '${block.format}' is dropped; MSOBLIPTYPE gives this writer a blip record for PNG and JPEG only`
@@ -87,7 +117,7 @@ function planShapeBlocks(blocks, context) {
87
117
  continue;
88
118
  }
89
119
  if (pib !== void 0) {
90
- context.sink({
120
+ reportDrop(context, {
91
121
  code: PptDiagnosticCodes.IMAGE_DROPPED,
92
122
  severity: "warning",
93
123
  message: `${context.location}: a second image block is dropped; a shape carries exactly one blip-store reference, and an earlier image already consumed it`
@@ -109,7 +139,7 @@ function planShapeBlocks(blocks, context) {
109
139
  }
110
140
  if (table !== void 0) {
111
141
  for (const block of textBlocks) drop(block, "a 'paragraph' block is dropped; a shape carrying a table becomes a table group, which holds its text in cells rather than a text body of its own");
112
- if (pib !== void 0) context.sink({
142
+ if (pib !== void 0) reportDrop(context, {
113
143
  code: PptDiagnosticCodes.IMAGE_DROPPED,
114
144
  severity: "warning",
115
145
  message: `${context.location}: an image block is dropped; a shape carrying a table becomes a table group, which has no blip reference of its own`
@@ -200,7 +230,7 @@ function writeTableGroup(spid, shape, table, context) {
200
230
  message: `${context.location}: a table cell's rowSpan ${String(cell.rowSpan)} is dropped; a PowerPoint 97-2003 table is a strict grid of shapes with no merge records, so the cell is written one row tall`
201
231
  });
202
232
  const paragraphs = cell.blocks.filter((block) => block.kind === "paragraph");
203
- for (const block of cell.blocks) if (block.kind !== "paragraph") context.sink({
233
+ for (const block of cell.blocks) if (block.kind !== "paragraph") reportDrop(context, {
204
234
  code: PptDiagnosticCodes.BLOCK_DROPPED,
205
235
  severity: "warning",
206
236
  message: `${context.location}: a '${block.kind}' block inside a table cell is dropped; a table cell in this format is a plain text-box shape with no property table or object reference of its own`
@@ -221,7 +251,7 @@ function writeDrawing(shapes, context) {
221
251
  let shapeCount = 1;
222
252
  const shapeContainers = [];
223
253
  for (const entry of shapes) {
224
- const plan = planShapeBlocks(entry.shape.blocks, context);
254
+ const plan = planShapeBlocks(entry.shape.blocks, context, entry.clientData !== void 0);
225
255
  if (plan.table !== void 0) {
226
256
  const group = writeTableGroup(nextSpid, entry.shape, plan.table, context);
227
257
  nextSpid += group.shapeCount;
package/dist/index.cjs CHANGED
@@ -18,8 +18,6 @@ const require_document_fonts = require("./document/fonts.cjs");
18
18
  const require_document_fonts_write = require("./document/fonts-write.cjs");
19
19
  const require_drawing_blips = require("./drawing/blips.cjs");
20
20
  const require_drawing_properties = require("./drawing/properties.cjs");
21
- const require_text_style_write = require("./text/style-write.cjs");
22
- const require_drawing_shapes_write = require("./drawing/shapes-write.cjs");
23
21
  const require_document_notes_list = require("./document/notes-list.cjs");
24
22
  const require_drawing_shapes = require("./drawing/shapes.cjs");
25
23
  const require_document_notes = require("./document/notes.cjs");
@@ -27,6 +25,8 @@ const require_document_slide_list = require("./document/slide-list.cjs");
27
25
  const require_stream_current_user = require("./stream/current-user.cjs");
28
26
  const require_stream_persist = require("./stream/persist.cjs");
29
27
  const require_read = require("./read.cjs");
28
+ const require_text_style_write = require("./text/style-write.cjs");
29
+ const require_drawing_shapes_write = require("./drawing/shapes-write.cjs");
30
30
  const require_document_master_write = require("./document/master-write.cjs");
31
31
  const require_document_notes_list_write = require("./document/notes-list-write.cjs");
32
32
  const require_document_notes_write = require("./document/notes-write.cjs");
@@ -68,6 +68,7 @@ exports.CURRENT_USER_HEADER_TOKEN_PLAIN = require_stream_current_user.CURRENT_US
68
68
  exports.CURRENT_USER_STREAM = require_read.CURRENT_USER_STREAM;
69
69
  exports.DEFAULT_INSET_LEFT_RIGHT_PT = require_read.DEFAULT_INSET_LEFT_RIGHT_PT;
70
70
  exports.DEFAULT_INSET_TOP_BOTTOM_PT = require_read.DEFAULT_INSET_TOP_BOTTOM_PT;
71
+ exports.EMU_PER_POINT = require_units.EMU_PER_POINT;
71
72
  exports.LINE_BREAK = require_text_atoms.LINE_BREAK;
72
73
  exports.MASTER_SLIDE_ID = require_document_master_write.MASTER_SLIDE_ID;
73
74
  exports.MASTER_UNITS_PER_POINT = require_units.MASTER_UNITS_PER_POINT;
@@ -116,6 +117,10 @@ exports.PF_WORD_WRAP = require_text_style.PF_WORD_WRAP;
116
117
  exports.PICTURES_STREAM = require_read.PICTURES_STREAM;
117
118
  exports.POINTS_PER_INCH = require_units.POINTS_PER_INCH;
118
119
  exports.POWERPOINT_DOCUMENT_STREAM = require_read.POWERPOINT_DOCUMENT_STREAM;
120
+ exports.PROPERTY_DX_TEXT_LEFT = require_drawing_properties.PROPERTY_DX_TEXT_LEFT;
121
+ exports.PROPERTY_DX_TEXT_RIGHT = require_drawing_properties.PROPERTY_DX_TEXT_RIGHT;
122
+ exports.PROPERTY_DY_TEXT_BOTTOM = require_drawing_properties.PROPERTY_DY_TEXT_BOTTOM;
123
+ exports.PROPERTY_DY_TEXT_TOP = require_drawing_properties.PROPERTY_DY_TEXT_TOP;
119
124
  exports.PROPERTY_PIB = require_drawing_properties.PROPERTY_PIB;
120
125
  exports.PROPERTY_ROTATION = require_drawing_properties.PROPERTY_ROTATION;
121
126
  exports.PROPERTY_TABLE_PROPERTIES = require_drawing_properties.PROPERTY_TABLE_PROPERTIES;
@@ -193,7 +198,9 @@ exports.characterCountOf = require_text_atoms.characterCountOf;
193
198
  exports.childRecords = require_record_tree.childRecords;
194
199
  exports.collectFontFamilies = require_content_write.collectFontFamilies;
195
200
  exports.concatBytes = require_record_write.concatBytes;
201
+ exports.decodeUtf16Le = require_stream_current_user.decodeUtf16Le;
196
202
  exports.degreesToFixedPoint = require_drawing_properties.degreesToFixedPoint;
203
+ exports.emuToPoints = require_units.emuToPoints;
197
204
  exports.findChild = require_record_tree.findChild;
198
205
  exports.findChildren = require_record_tree.findChildren;
199
206
  exports.findDescendants = require_record_tree.findDescendants;
@@ -204,6 +211,7 @@ exports.isBlipFormat = require_drawing_blips.isBlipFormat;
204
211
  exports.isContainerRecord = require_record_header.isContainerRecord;
205
212
  exports.layoutMetadataToSummaryInformation = require_metadata.layoutMetadataToSummaryInformation;
206
213
  exports.masterUnitsToPoints = require_units.masterUnitsToPoints;
214
+ exports.pointsToEmu = require_units.pointsToEmu;
207
215
  exports.pointsToMasterUnits = require_units.pointsToMasterUnits;
208
216
  exports.readBlipStore = require_drawing_blips.readBlipStore;
209
217
  exports.readCurrentUserAtom = require_stream_current_user.readCurrentUserAtom;
package/dist/index.d.cts CHANGED
@@ -19,19 +19,19 @@ import { NOTES_MASTER_SLIDE_ID_REF, NotesAtom, readNotesAtom, readNotesContainer
19
19
  import { SlidePersistRef, writeSlideListWithText } from "./document/slide-list-write.cjs";
20
20
  import { OutlineText, SlidePersist, readSlideListWithText } from "./document/slide-list.cjs";
21
21
  import { PptBlip, blipForPib, isBlipFormat, readBlipStore, writeDrawingGroupContainer } from "./drawing/blips.cjs";
22
- import { PROPERTY_PIB, PROPERTY_ROTATION, PROPERTY_TABLE_PROPERTIES, PROPERTY_TABLE_ROW_PROPERTIES, ShapeProperty, TABLE_FLAG_IS_TABLE, WritableShapeProperty, degreesToFixedPoint, fixedPointToDegrees, readIMsoArray, readShapeProperties, writeIMsoArray, writeShapePropertyTable } from "./drawing/properties.cjs";
22
+ import { PROPERTY_DX_TEXT_LEFT, PROPERTY_DX_TEXT_RIGHT, PROPERTY_DY_TEXT_BOTTOM, PROPERTY_DY_TEXT_TOP, PROPERTY_PIB, PROPERTY_ROTATION, PROPERTY_TABLE_PROPERTIES, PROPERTY_TABLE_ROW_PROPERTIES, ShapeProperty, TABLE_FLAG_IS_TABLE, WritableShapeProperty, degreesToFixedPoint, fixedPointToDegrees, readIMsoArray, readShapeProperties, writeIMsoArray, writeShapePropertyTable } from "./drawing/properties.cjs";
23
23
  import { PptShape, PptTable, ShapeRect, readDrawingShapes } from "./drawing/shapes.cjs";
24
24
  import { PptEncryptedError, PptFormatError, PptUnsupportedContentError } from "./errors.cjs";
25
25
  import { layoutMetadataToSummaryInformation } from "./metadata.cjs";
26
- import { CURRENT_USER_STREAM, DEFAULT_INSET_LEFT_RIGHT_PT, DEFAULT_INSET_TOP_BOTTOM_PT, PICTURES_STREAM, POWERPOINT_DOCUMENT_STREAM, PptDocument, SUMMARY_INFORMATION_STREAM, readPpt, readPptContent, readPptStreams } from "./read.cjs";
26
+ import { CURRENT_USER_STREAM, DEFAULT_INSET_LEFT_RIGHT_PT, DEFAULT_INSET_TOP_BOTTOM_PT, DecodeEmbeddedObjectPort, PICTURES_STREAM, POWERPOINT_DOCUMENT_STREAM, PptDocument, ReadPptOptions, SUMMARY_INFORMATION_STREAM, readPpt, readPptContent, readPptStreams } from "./read.cjs";
27
27
  import { OfficeArtBStoreContainer, OfficeArtBlipJPEG, OfficeArtBlipPNG, OfficeArtChildAnchor, OfficeArtClientAnchor, OfficeArtClientData, OfficeArtClientTextbox, OfficeArtDgContainer, OfficeArtDggContainer, OfficeArtFBSE, OfficeArtFDGGBlock, OfficeArtFOPT, OfficeArtFSP, OfficeArtFSPGR, OfficeArtSecondaryFOPT, OfficeArtSpContainer, OfficeArtSpgrContainer, OfficeArtTertiaryFOPT, RT_CString, RT_ColorSchemeAtom, RT_CryptSession10Container, RT_CurrentUserAtom, RT_Document, RT_DocumentAtom, RT_Drawing, RT_DrawingGroup, RT_Environment, RT_ExternalObjectList, RT_ExternalObjectListAtom, RT_ExternalObjectRefAtom, RT_ExternalOleEmbed, RT_ExternalOleEmbedAtom, RT_ExternalOleObjectAtom, RT_ExternalOleObjectStg, RT_FontCollection, RT_FontEntityAtom, RT_List, RT_MainMaster, RT_MasterTextPropAtom, RT_Notes, RT_NotesAtom, RT_OutlineTextRefAtom, RT_PersistDirectoryAtom, RT_PlaceholderAtom, RT_Slide, RT_SlideAtom, RT_SlideListWithText, RT_SlidePersistAtom, RT_StyleTextPropAtom, RT_TextBytesAtom, RT_TextCharsAtom, RT_TextHeaderAtom, RT_TextMasterStyleAtom, RT_TextRulerAtom, RT_TextSpecialInfoAtom, RT_TextSpecialInfoDefaultAtom, RT_UserEditAtom, SLIDE_LIST_INSTANCE_MASTERS, SLIDE_LIST_INSTANCE_NOTES, SLIDE_LIST_INSTANCE_SLIDES } from "./record/types.cjs";
28
28
  import { RecordWriteOptions, asciiBytes, concatBytes, i16le, i32le, u16le, u32le, u8, utf16le, writeAtom, writeContainer } from "./record/write.cjs";
29
- import { CURRENT_USER_DOC_FILE_VERSION, CURRENT_USER_FIXED_SIZE, CURRENT_USER_HEADER_TOKEN_ENCRYPTED, CURRENT_USER_HEADER_TOKEN_PLAIN, CurrentUser, readCurrentUserAtom } from "./stream/current-user.cjs";
29
+ import { CURRENT_USER_DOC_FILE_VERSION, CURRENT_USER_FIXED_SIZE, CURRENT_USER_HEADER_TOKEN_ENCRYPTED, CURRENT_USER_HEADER_TOKEN_PLAIN, CurrentUser, decodeUtf16Le, readCurrentUserAtom } from "./stream/current-user.cjs";
30
30
  import { writeCurrentUserAtom } from "./stream/current-user-write.cjs";
31
31
  import { PersistDirectory, UserEdit, buildPersistDirectory, readPersistDirectoryAtom, readUserEditAtom, resolvePersistObject } from "./stream/persist.cjs";
32
32
  import { PersistDirectoryEntryToWrite, UserEditFields, writePersistDirectoryAtom, writeUserEditAtom } from "./stream/persist-write.cjs";
33
33
  import { LINE_BREAK, PARAGRAPH_SEPARATOR, TEXT_TYPE_BODY, TEXT_TYPE_CENTER_BODY, TEXT_TYPE_CENTER_TITLE, TEXT_TYPE_HALF_BODY, TEXT_TYPE_NOTES, TEXT_TYPE_OTHER, TEXT_TYPE_QUARTER_BODY, TEXT_TYPE_TITLE, TextParagraph, characterCountOf, readTextBody, readTextHeaderAtom, splitParagraphs } from "./text/atoms.cjs";
34
34
  import { writeStyleTextPropAtom } from "./text/style-write.cjs";
35
- import { MASTER_UNITS_PER_POINT, POINTS_PER_INCH, masterUnitsToPoints, pointsToMasterUnits } from "./units.cjs";
36
- import { WritePptOptions, writePpt, writePptContent, writePptStreams } from "./write.cjs";
37
- export { ALIGN_CENTER, ALIGN_DISTRIBUTED, ALIGN_JUSTIFY, ALIGN_JUSTIFY_LOW, ALIGN_LEFT, ALIGN_RIGHT, ALIGN_THAI_DISTRIBUTED, CF_ANSI_TYPEFACE, CF_BOLD, CF_COLOR, CF_EMBOSS, CF_FEHINT, CF_HAS_STYLE, CF_ITALIC, CF_KUMI, CF_OLD_EA_TYPEFACE, CF_POSITION, CF_SHADOW, CF_SIZE, CF_SYMBOL_TYPEFACE, CF_TYPEFACE, CF_UNDERLINE, COLOR_INDEX_SRGB, COLOR_INDEX_UNDEFINED, COLOR_SCHEME_SLOT_COUNT, CONTAINER_REC_VER, CURRENT_USER_DOC_FILE_VERSION, CURRENT_USER_FIXED_SIZE, CURRENT_USER_HEADER_TOKEN_ENCRYPTED, CURRENT_USER_HEADER_TOKEN_PLAIN, CURRENT_USER_STREAM, CharacterProperties, CurrentUser, DEFAULT_INSET_LEFT_RIGHT_PT, DEFAULT_INSET_TOP_BOTTOM_PT, DocumentAtom, DrawingShape, DrawingWriteContext, DrawingWritten, LINE_BREAK, MASTER_SLIDE_ID, MASTER_UNITS_PER_POINT, MasterStyleLevel, MasterTextStyleAtom, NOOP_PPT_DIAGNOSTIC_SINK, NOTES_MASTER_SLIDE_ID_REF, NotesAtom, NotesPersist, OfficeArtBStoreContainer, OfficeArtBlipJPEG, OfficeArtBlipPNG, OfficeArtChildAnchor, OfficeArtClientAnchor, OfficeArtClientData, OfficeArtClientTextbox, OfficeArtDgContainer, OfficeArtDggContainer, OfficeArtFBSE, OfficeArtFDGGBlock, OfficeArtFOPT, OfficeArtFSP, OfficeArtFSPGR, OfficeArtSecondaryFOPT, OfficeArtSpContainer, OfficeArtSpgrContainer, OfficeArtTertiaryFOPT, OutlineText, PARAGRAPH_SEPARATOR, PF_ALIGN, PF_BULLET_CHAR, PF_BULLET_COLOR, PF_BULLET_FONT, PF_BULLET_HAS_COLOR, PF_BULLET_HAS_FONT, PF_BULLET_HAS_SIZE, PF_BULLET_SIZE, PF_CHAR_WRAP, PF_DEFAULT_TAB_SIZE, PF_FONT_ALIGN, PF_HAS_BULLET, PF_INDENT, PF_LEFT_MARGIN, PF_LINE_SPACING, PF_OVERFLOW, PF_SPACE_AFTER, PF_SPACE_BEFORE, PF_TAB_STOPS, PF_TEXT_DIRECTION, PF_WORD_WRAP, PICTURES_STREAM, POINTS_PER_INCH, POWERPOINT_DOCUMENT_STREAM, PROPERTY_PIB, PROPERTY_ROTATION, PROPERTY_TABLE_PROPERTIES, PROPERTY_TABLE_ROW_PROPERTIES, ParagraphProperties, PersistDirectory, PersistDirectoryEntryToWrite, PointStruct, PptBlip, PptDiagnostic, PptDiagnosticCodes, PptDiagnosticSeverity, PptDiagnosticSink, PptDocument, PptEncryptedError, PptFormatError, PptRecord, PptShape, PptTable, PptUnsupportedContentError, RECORD_HEADER_SIZE, RT_CString, RT_ColorSchemeAtom, RT_CryptSession10Container, RT_CurrentUserAtom, RT_Document, RT_DocumentAtom, RT_Drawing, RT_DrawingGroup, RT_Environment, RT_ExternalObjectList, RT_ExternalObjectListAtom, RT_ExternalObjectRefAtom, RT_ExternalOleEmbed, RT_ExternalOleEmbedAtom, RT_ExternalOleObjectAtom, RT_ExternalOleObjectStg, RT_FontCollection, RT_FontEntityAtom, RT_List, RT_MainMaster, RT_MasterTextPropAtom, RT_Notes, RT_NotesAtom, RT_OutlineTextRefAtom, RT_PersistDirectoryAtom, RT_PlaceholderAtom, RT_Slide, RT_SlideAtom, RT_SlideListWithText, RT_SlidePersistAtom, RT_StyleTextPropAtom, RT_TextBytesAtom, RT_TextCharsAtom, RT_TextHeaderAtom, RT_TextMasterStyleAtom, RT_TextRulerAtom, RT_TextSpecialInfoAtom, RT_TextSpecialInfoDefaultAtom, RT_UserEditAtom, RecordHeader, RecordWriteOptions, RgbColor, RunColor, SLIDE_LIST_INSTANCE_MASTERS, SLIDE_LIST_INSTANCE_NOTES, SLIDE_LIST_INSTANCE_SLIDES, STYLE_BOLD, STYLE_EMBOSS, STYLE_ITALIC, STYLE_SHADOW, STYLE_UNDERLINE, SUMMARY_INFORMATION_STREAM, ShapeProperty, ShapeRect, SlidePersist, SlidePersistRef, StyleRun, StyleTextProps, TABLE_FLAG_IS_TABLE, TEXT_TYPE_BODY, TEXT_TYPE_CENTER_BODY, TEXT_TYPE_CENTER_TITLE, TEXT_TYPE_HALF_BODY, TEXT_TYPE_NOTES, TEXT_TYPE_OTHER, TEXT_TYPE_QUARTER_BODY, TEXT_TYPE_TITLE, TextBody, TextParagraph, UserEdit, UserEditFields, WritableShapeProperty, WritePptOptions, asciiBytes, base64ToBytes, blipForPib, buildParagraphs, buildPersistDirectory, buildTextBody, bytesToBase64, characterCountOf, childRecords, collectFontFamilies, concatBytes, degreesToFixedPoint, findChild, findChildren, findDescendants, fixedPointToDegrees, i16le, i32le, isBlipFormat, isContainerRecord, layoutMetadataToSummaryInformation, masterUnitsToPoints, pointsToMasterUnits, readBlipStore, readCurrentUserAtom, readDocumentAtom, readDrawingShapes, readFontNames, readIMsoArray, readNotesAtom, readNotesContainerAtom, readNotesListWithText, readNotesText, readPersistDirectoryAtom, readPpt, readPptContent, readPptStreams, readRecordAt, readRecordHeader, readRecordSequence, readShapeProperties, readSlideListWithText, readStyleTextPropAtom, readTextBody, readTextHeaderAtom, readTextMasterStyleAtom, readUserEditAtom, resolvePersistObject, splitParagraphs, u16le, u32le, u8, utf16le, writeAtom, writeContainer, writeCurrentUserAtom, writeDocumentAtom, writeDrawingGroupContainer, writeEnvironment, writeIMsoArray, writeMainMaster, writeMasterListWithText, writeNotesAtom, writeNotesContainer, writeNotesListWithText, writePersistDirectoryAtom, writePpt, writePptContent, writePptStreams, writeShapePropertyTable, writeSlideAtom, writeSlideAtomForSlide, writeSlideDrawing, writeSlideListWithText, writeSlideSchemeColorSchemeAtom, writeStyleTextPropAtom, writeUserEditAtom };
35
+ import { EMU_PER_POINT, MASTER_UNITS_PER_POINT, POINTS_PER_INCH, emuToPoints, masterUnitsToPoints, pointsToEmu, pointsToMasterUnits } from "./units.cjs";
36
+ import { EmbeddedObjectSerialiser, PptUnwritableBlockPolicy, WritePptOptions, writePpt, writePptContent, writePptStreams } from "./write.cjs";
37
+ export { ALIGN_CENTER, ALIGN_DISTRIBUTED, ALIGN_JUSTIFY, ALIGN_JUSTIFY_LOW, ALIGN_LEFT, ALIGN_RIGHT, ALIGN_THAI_DISTRIBUTED, CF_ANSI_TYPEFACE, CF_BOLD, CF_COLOR, CF_EMBOSS, CF_FEHINT, CF_HAS_STYLE, CF_ITALIC, CF_KUMI, CF_OLD_EA_TYPEFACE, CF_POSITION, CF_SHADOW, CF_SIZE, CF_SYMBOL_TYPEFACE, CF_TYPEFACE, CF_UNDERLINE, COLOR_INDEX_SRGB, COLOR_INDEX_UNDEFINED, COLOR_SCHEME_SLOT_COUNT, CONTAINER_REC_VER, CURRENT_USER_DOC_FILE_VERSION, CURRENT_USER_FIXED_SIZE, CURRENT_USER_HEADER_TOKEN_ENCRYPTED, CURRENT_USER_HEADER_TOKEN_PLAIN, CURRENT_USER_STREAM, CharacterProperties, CurrentUser, DEFAULT_INSET_LEFT_RIGHT_PT, DEFAULT_INSET_TOP_BOTTOM_PT, DecodeEmbeddedObjectPort, DocumentAtom, DrawingShape, DrawingWriteContext, DrawingWritten, EMU_PER_POINT, EmbeddedObjectSerialiser, LINE_BREAK, MASTER_SLIDE_ID, MASTER_UNITS_PER_POINT, MasterStyleLevel, MasterTextStyleAtom, NOOP_PPT_DIAGNOSTIC_SINK, NOTES_MASTER_SLIDE_ID_REF, NotesAtom, NotesPersist, OfficeArtBStoreContainer, OfficeArtBlipJPEG, OfficeArtBlipPNG, OfficeArtChildAnchor, OfficeArtClientAnchor, OfficeArtClientData, OfficeArtClientTextbox, OfficeArtDgContainer, OfficeArtDggContainer, OfficeArtFBSE, OfficeArtFDGGBlock, OfficeArtFOPT, OfficeArtFSP, OfficeArtFSPGR, OfficeArtSecondaryFOPT, OfficeArtSpContainer, OfficeArtSpgrContainer, OfficeArtTertiaryFOPT, OutlineText, PARAGRAPH_SEPARATOR, PF_ALIGN, PF_BULLET_CHAR, PF_BULLET_COLOR, PF_BULLET_FONT, PF_BULLET_HAS_COLOR, PF_BULLET_HAS_FONT, PF_BULLET_HAS_SIZE, PF_BULLET_SIZE, PF_CHAR_WRAP, PF_DEFAULT_TAB_SIZE, PF_FONT_ALIGN, PF_HAS_BULLET, PF_INDENT, PF_LEFT_MARGIN, PF_LINE_SPACING, PF_OVERFLOW, PF_SPACE_AFTER, PF_SPACE_BEFORE, PF_TAB_STOPS, PF_TEXT_DIRECTION, PF_WORD_WRAP, PICTURES_STREAM, POINTS_PER_INCH, POWERPOINT_DOCUMENT_STREAM, PROPERTY_DX_TEXT_LEFT, PROPERTY_DX_TEXT_RIGHT, PROPERTY_DY_TEXT_BOTTOM, PROPERTY_DY_TEXT_TOP, PROPERTY_PIB, PROPERTY_ROTATION, PROPERTY_TABLE_PROPERTIES, PROPERTY_TABLE_ROW_PROPERTIES, ParagraphProperties, PersistDirectory, PersistDirectoryEntryToWrite, PointStruct, PptBlip, PptDiagnostic, PptDiagnosticCodes, PptDiagnosticSeverity, PptDiagnosticSink, PptDocument, PptEncryptedError, PptFormatError, PptRecord, PptShape, PptTable, PptUnsupportedContentError, PptUnwritableBlockPolicy, RECORD_HEADER_SIZE, RT_CString, RT_ColorSchemeAtom, RT_CryptSession10Container, RT_CurrentUserAtom, RT_Document, RT_DocumentAtom, RT_Drawing, RT_DrawingGroup, RT_Environment, RT_ExternalObjectList, RT_ExternalObjectListAtom, RT_ExternalObjectRefAtom, RT_ExternalOleEmbed, RT_ExternalOleEmbedAtom, RT_ExternalOleObjectAtom, RT_ExternalOleObjectStg, RT_FontCollection, RT_FontEntityAtom, RT_List, RT_MainMaster, RT_MasterTextPropAtom, RT_Notes, RT_NotesAtom, RT_OutlineTextRefAtom, RT_PersistDirectoryAtom, RT_PlaceholderAtom, RT_Slide, RT_SlideAtom, RT_SlideListWithText, RT_SlidePersistAtom, RT_StyleTextPropAtom, RT_TextBytesAtom, RT_TextCharsAtom, RT_TextHeaderAtom, RT_TextMasterStyleAtom, RT_TextRulerAtom, RT_TextSpecialInfoAtom, RT_TextSpecialInfoDefaultAtom, RT_UserEditAtom, ReadPptOptions, RecordHeader, RecordWriteOptions, RgbColor, RunColor, SLIDE_LIST_INSTANCE_MASTERS, SLIDE_LIST_INSTANCE_NOTES, SLIDE_LIST_INSTANCE_SLIDES, STYLE_BOLD, STYLE_EMBOSS, STYLE_ITALIC, STYLE_SHADOW, STYLE_UNDERLINE, SUMMARY_INFORMATION_STREAM, ShapeProperty, ShapeRect, SlidePersist, SlidePersistRef, StyleRun, StyleTextProps, TABLE_FLAG_IS_TABLE, TEXT_TYPE_BODY, TEXT_TYPE_CENTER_BODY, TEXT_TYPE_CENTER_TITLE, TEXT_TYPE_HALF_BODY, TEXT_TYPE_NOTES, TEXT_TYPE_OTHER, TEXT_TYPE_QUARTER_BODY, TEXT_TYPE_TITLE, TextBody, TextParagraph, UserEdit, UserEditFields, WritableShapeProperty, WritePptOptions, asciiBytes, base64ToBytes, blipForPib, buildParagraphs, buildPersistDirectory, buildTextBody, bytesToBase64, characterCountOf, childRecords, collectFontFamilies, concatBytes, decodeUtf16Le, degreesToFixedPoint, emuToPoints, findChild, findChildren, findDescendants, fixedPointToDegrees, i16le, i32le, isBlipFormat, isContainerRecord, layoutMetadataToSummaryInformation, masterUnitsToPoints, pointsToEmu, pointsToMasterUnits, readBlipStore, readCurrentUserAtom, readDocumentAtom, readDrawingShapes, readFontNames, readIMsoArray, readNotesAtom, readNotesContainerAtom, readNotesListWithText, readNotesText, readPersistDirectoryAtom, readPpt, readPptContent, readPptStreams, readRecordAt, readRecordHeader, readRecordSequence, readShapeProperties, readSlideListWithText, readStyleTextPropAtom, readTextBody, readTextHeaderAtom, readTextMasterStyleAtom, readUserEditAtom, resolvePersistObject, splitParagraphs, u16le, u32le, u8, utf16le, writeAtom, writeContainer, writeCurrentUserAtom, writeDocumentAtom, writeDrawingGroupContainer, writeEnvironment, writeIMsoArray, writeMainMaster, writeMasterListWithText, writeNotesAtom, writeNotesContainer, writeNotesListWithText, writePersistDirectoryAtom, writePpt, writePptContent, writePptStreams, writeShapePropertyTable, writeSlideAtom, writeSlideAtomForSlide, writeSlideDrawing, writeSlideListWithText, writeSlideSchemeColorSchemeAtom, writeStyleTextPropAtom, writeUserEditAtom };
package/dist/index.d.ts CHANGED
@@ -19,19 +19,19 @@ import { NOTES_MASTER_SLIDE_ID_REF, NotesAtom, readNotesAtom, readNotesContainer
19
19
  import { SlidePersistRef, writeSlideListWithText } from "./document/slide-list-write.js";
20
20
  import { OutlineText, SlidePersist, readSlideListWithText } from "./document/slide-list.js";
21
21
  import { PptBlip, blipForPib, isBlipFormat, readBlipStore, writeDrawingGroupContainer } from "./drawing/blips.js";
22
- import { PROPERTY_PIB, PROPERTY_ROTATION, PROPERTY_TABLE_PROPERTIES, PROPERTY_TABLE_ROW_PROPERTIES, ShapeProperty, TABLE_FLAG_IS_TABLE, WritableShapeProperty, degreesToFixedPoint, fixedPointToDegrees, readIMsoArray, readShapeProperties, writeIMsoArray, writeShapePropertyTable } from "./drawing/properties.js";
22
+ import { PROPERTY_DX_TEXT_LEFT, PROPERTY_DX_TEXT_RIGHT, PROPERTY_DY_TEXT_BOTTOM, PROPERTY_DY_TEXT_TOP, PROPERTY_PIB, PROPERTY_ROTATION, PROPERTY_TABLE_PROPERTIES, PROPERTY_TABLE_ROW_PROPERTIES, ShapeProperty, TABLE_FLAG_IS_TABLE, WritableShapeProperty, degreesToFixedPoint, fixedPointToDegrees, readIMsoArray, readShapeProperties, writeIMsoArray, writeShapePropertyTable } from "./drawing/properties.js";
23
23
  import { PptShape, PptTable, ShapeRect, readDrawingShapes } from "./drawing/shapes.js";
24
24
  import { PptEncryptedError, PptFormatError, PptUnsupportedContentError } from "./errors.js";
25
25
  import { layoutMetadataToSummaryInformation } from "./metadata.js";
26
- import { CURRENT_USER_STREAM, DEFAULT_INSET_LEFT_RIGHT_PT, DEFAULT_INSET_TOP_BOTTOM_PT, PICTURES_STREAM, POWERPOINT_DOCUMENT_STREAM, PptDocument, SUMMARY_INFORMATION_STREAM, readPpt, readPptContent, readPptStreams } from "./read.js";
26
+ import { CURRENT_USER_STREAM, DEFAULT_INSET_LEFT_RIGHT_PT, DEFAULT_INSET_TOP_BOTTOM_PT, DecodeEmbeddedObjectPort, PICTURES_STREAM, POWERPOINT_DOCUMENT_STREAM, PptDocument, ReadPptOptions, SUMMARY_INFORMATION_STREAM, readPpt, readPptContent, readPptStreams } from "./read.js";
27
27
  import { OfficeArtBStoreContainer, OfficeArtBlipJPEG, OfficeArtBlipPNG, OfficeArtChildAnchor, OfficeArtClientAnchor, OfficeArtClientData, OfficeArtClientTextbox, OfficeArtDgContainer, OfficeArtDggContainer, OfficeArtFBSE, OfficeArtFDGGBlock, OfficeArtFOPT, OfficeArtFSP, OfficeArtFSPGR, OfficeArtSecondaryFOPT, OfficeArtSpContainer, OfficeArtSpgrContainer, OfficeArtTertiaryFOPT, RT_CString, RT_ColorSchemeAtom, RT_CryptSession10Container, RT_CurrentUserAtom, RT_Document, RT_DocumentAtom, RT_Drawing, RT_DrawingGroup, RT_Environment, RT_ExternalObjectList, RT_ExternalObjectListAtom, RT_ExternalObjectRefAtom, RT_ExternalOleEmbed, RT_ExternalOleEmbedAtom, RT_ExternalOleObjectAtom, RT_ExternalOleObjectStg, RT_FontCollection, RT_FontEntityAtom, RT_List, RT_MainMaster, RT_MasterTextPropAtom, RT_Notes, RT_NotesAtom, RT_OutlineTextRefAtom, RT_PersistDirectoryAtom, RT_PlaceholderAtom, RT_Slide, RT_SlideAtom, RT_SlideListWithText, RT_SlidePersistAtom, RT_StyleTextPropAtom, RT_TextBytesAtom, RT_TextCharsAtom, RT_TextHeaderAtom, RT_TextMasterStyleAtom, RT_TextRulerAtom, RT_TextSpecialInfoAtom, RT_TextSpecialInfoDefaultAtom, RT_UserEditAtom, SLIDE_LIST_INSTANCE_MASTERS, SLIDE_LIST_INSTANCE_NOTES, SLIDE_LIST_INSTANCE_SLIDES } from "./record/types.js";
28
28
  import { RecordWriteOptions, asciiBytes, concatBytes, i16le, i32le, u16le, u32le, u8, utf16le, writeAtom, writeContainer } from "./record/write.js";
29
- import { CURRENT_USER_DOC_FILE_VERSION, CURRENT_USER_FIXED_SIZE, CURRENT_USER_HEADER_TOKEN_ENCRYPTED, CURRENT_USER_HEADER_TOKEN_PLAIN, CurrentUser, readCurrentUserAtom } from "./stream/current-user.js";
29
+ import { CURRENT_USER_DOC_FILE_VERSION, CURRENT_USER_FIXED_SIZE, CURRENT_USER_HEADER_TOKEN_ENCRYPTED, CURRENT_USER_HEADER_TOKEN_PLAIN, CurrentUser, decodeUtf16Le, readCurrentUserAtom } from "./stream/current-user.js";
30
30
  import { writeCurrentUserAtom } from "./stream/current-user-write.js";
31
31
  import { PersistDirectory, UserEdit, buildPersistDirectory, readPersistDirectoryAtom, readUserEditAtom, resolvePersistObject } from "./stream/persist.js";
32
32
  import { PersistDirectoryEntryToWrite, UserEditFields, writePersistDirectoryAtom, writeUserEditAtom } from "./stream/persist-write.js";
33
33
  import { LINE_BREAK, PARAGRAPH_SEPARATOR, TEXT_TYPE_BODY, TEXT_TYPE_CENTER_BODY, TEXT_TYPE_CENTER_TITLE, TEXT_TYPE_HALF_BODY, TEXT_TYPE_NOTES, TEXT_TYPE_OTHER, TEXT_TYPE_QUARTER_BODY, TEXT_TYPE_TITLE, TextParagraph, characterCountOf, readTextBody, readTextHeaderAtom, splitParagraphs } from "./text/atoms.js";
34
34
  import { writeStyleTextPropAtom } from "./text/style-write.js";
35
- import { MASTER_UNITS_PER_POINT, POINTS_PER_INCH, masterUnitsToPoints, pointsToMasterUnits } from "./units.js";
36
- import { WritePptOptions, writePpt, writePptContent, writePptStreams } from "./write.js";
37
- export { ALIGN_CENTER, ALIGN_DISTRIBUTED, ALIGN_JUSTIFY, ALIGN_JUSTIFY_LOW, ALIGN_LEFT, ALIGN_RIGHT, ALIGN_THAI_DISTRIBUTED, CF_ANSI_TYPEFACE, CF_BOLD, CF_COLOR, CF_EMBOSS, CF_FEHINT, CF_HAS_STYLE, CF_ITALIC, CF_KUMI, CF_OLD_EA_TYPEFACE, CF_POSITION, CF_SHADOW, CF_SIZE, CF_SYMBOL_TYPEFACE, CF_TYPEFACE, CF_UNDERLINE, COLOR_INDEX_SRGB, COLOR_INDEX_UNDEFINED, COLOR_SCHEME_SLOT_COUNT, CONTAINER_REC_VER, CURRENT_USER_DOC_FILE_VERSION, CURRENT_USER_FIXED_SIZE, CURRENT_USER_HEADER_TOKEN_ENCRYPTED, CURRENT_USER_HEADER_TOKEN_PLAIN, CURRENT_USER_STREAM, CharacterProperties, CurrentUser, DEFAULT_INSET_LEFT_RIGHT_PT, DEFAULT_INSET_TOP_BOTTOM_PT, DocumentAtom, DrawingShape, DrawingWriteContext, DrawingWritten, LINE_BREAK, MASTER_SLIDE_ID, MASTER_UNITS_PER_POINT, MasterStyleLevel, MasterTextStyleAtom, NOOP_PPT_DIAGNOSTIC_SINK, NOTES_MASTER_SLIDE_ID_REF, NotesAtom, NotesPersist, OfficeArtBStoreContainer, OfficeArtBlipJPEG, OfficeArtBlipPNG, OfficeArtChildAnchor, OfficeArtClientAnchor, OfficeArtClientData, OfficeArtClientTextbox, OfficeArtDgContainer, OfficeArtDggContainer, OfficeArtFBSE, OfficeArtFDGGBlock, OfficeArtFOPT, OfficeArtFSP, OfficeArtFSPGR, OfficeArtSecondaryFOPT, OfficeArtSpContainer, OfficeArtSpgrContainer, OfficeArtTertiaryFOPT, OutlineText, PARAGRAPH_SEPARATOR, PF_ALIGN, PF_BULLET_CHAR, PF_BULLET_COLOR, PF_BULLET_FONT, PF_BULLET_HAS_COLOR, PF_BULLET_HAS_FONT, PF_BULLET_HAS_SIZE, PF_BULLET_SIZE, PF_CHAR_WRAP, PF_DEFAULT_TAB_SIZE, PF_FONT_ALIGN, PF_HAS_BULLET, PF_INDENT, PF_LEFT_MARGIN, PF_LINE_SPACING, PF_OVERFLOW, PF_SPACE_AFTER, PF_SPACE_BEFORE, PF_TAB_STOPS, PF_TEXT_DIRECTION, PF_WORD_WRAP, PICTURES_STREAM, POINTS_PER_INCH, POWERPOINT_DOCUMENT_STREAM, PROPERTY_PIB, PROPERTY_ROTATION, PROPERTY_TABLE_PROPERTIES, PROPERTY_TABLE_ROW_PROPERTIES, ParagraphProperties, PersistDirectory, PersistDirectoryEntryToWrite, PointStruct, PptBlip, PptDiagnostic, PptDiagnosticCodes, PptDiagnosticSeverity, PptDiagnosticSink, PptDocument, PptEncryptedError, PptFormatError, PptRecord, PptShape, PptTable, PptUnsupportedContentError, RECORD_HEADER_SIZE, RT_CString, RT_ColorSchemeAtom, RT_CryptSession10Container, RT_CurrentUserAtom, RT_Document, RT_DocumentAtom, RT_Drawing, RT_DrawingGroup, RT_Environment, RT_ExternalObjectList, RT_ExternalObjectListAtom, RT_ExternalObjectRefAtom, RT_ExternalOleEmbed, RT_ExternalOleEmbedAtom, RT_ExternalOleObjectAtom, RT_ExternalOleObjectStg, RT_FontCollection, RT_FontEntityAtom, RT_List, RT_MainMaster, RT_MasterTextPropAtom, RT_Notes, RT_NotesAtom, RT_OutlineTextRefAtom, RT_PersistDirectoryAtom, RT_PlaceholderAtom, RT_Slide, RT_SlideAtom, RT_SlideListWithText, RT_SlidePersistAtom, RT_StyleTextPropAtom, RT_TextBytesAtom, RT_TextCharsAtom, RT_TextHeaderAtom, RT_TextMasterStyleAtom, RT_TextRulerAtom, RT_TextSpecialInfoAtom, RT_TextSpecialInfoDefaultAtom, RT_UserEditAtom, RecordHeader, RecordWriteOptions, RgbColor, RunColor, SLIDE_LIST_INSTANCE_MASTERS, SLIDE_LIST_INSTANCE_NOTES, SLIDE_LIST_INSTANCE_SLIDES, STYLE_BOLD, STYLE_EMBOSS, STYLE_ITALIC, STYLE_SHADOW, STYLE_UNDERLINE, SUMMARY_INFORMATION_STREAM, ShapeProperty, ShapeRect, SlidePersist, SlidePersistRef, StyleRun, StyleTextProps, TABLE_FLAG_IS_TABLE, TEXT_TYPE_BODY, TEXT_TYPE_CENTER_BODY, TEXT_TYPE_CENTER_TITLE, TEXT_TYPE_HALF_BODY, TEXT_TYPE_NOTES, TEXT_TYPE_OTHER, TEXT_TYPE_QUARTER_BODY, TEXT_TYPE_TITLE, TextBody, TextParagraph, UserEdit, UserEditFields, WritableShapeProperty, WritePptOptions, asciiBytes, base64ToBytes, blipForPib, buildParagraphs, buildPersistDirectory, buildTextBody, bytesToBase64, characterCountOf, childRecords, collectFontFamilies, concatBytes, degreesToFixedPoint, findChild, findChildren, findDescendants, fixedPointToDegrees, i16le, i32le, isBlipFormat, isContainerRecord, layoutMetadataToSummaryInformation, masterUnitsToPoints, pointsToMasterUnits, readBlipStore, readCurrentUserAtom, readDocumentAtom, readDrawingShapes, readFontNames, readIMsoArray, readNotesAtom, readNotesContainerAtom, readNotesListWithText, readNotesText, readPersistDirectoryAtom, readPpt, readPptContent, readPptStreams, readRecordAt, readRecordHeader, readRecordSequence, readShapeProperties, readSlideListWithText, readStyleTextPropAtom, readTextBody, readTextHeaderAtom, readTextMasterStyleAtom, readUserEditAtom, resolvePersistObject, splitParagraphs, u16le, u32le, u8, utf16le, writeAtom, writeContainer, writeCurrentUserAtom, writeDocumentAtom, writeDrawingGroupContainer, writeEnvironment, writeIMsoArray, writeMainMaster, writeMasterListWithText, writeNotesAtom, writeNotesContainer, writeNotesListWithText, writePersistDirectoryAtom, writePpt, writePptContent, writePptStreams, writeShapePropertyTable, writeSlideAtom, writeSlideAtomForSlide, writeSlideDrawing, writeSlideListWithText, writeSlideSchemeColorSchemeAtom, writeStyleTextPropAtom, writeUserEditAtom };
35
+ import { EMU_PER_POINT, MASTER_UNITS_PER_POINT, POINTS_PER_INCH, emuToPoints, masterUnitsToPoints, pointsToEmu, pointsToMasterUnits } from "./units.js";
36
+ import { EmbeddedObjectSerialiser, PptUnwritableBlockPolicy, WritePptOptions, writePpt, writePptContent, writePptStreams } from "./write.js";
37
+ export { ALIGN_CENTER, ALIGN_DISTRIBUTED, ALIGN_JUSTIFY, ALIGN_JUSTIFY_LOW, ALIGN_LEFT, ALIGN_RIGHT, ALIGN_THAI_DISTRIBUTED, CF_ANSI_TYPEFACE, CF_BOLD, CF_COLOR, CF_EMBOSS, CF_FEHINT, CF_HAS_STYLE, CF_ITALIC, CF_KUMI, CF_OLD_EA_TYPEFACE, CF_POSITION, CF_SHADOW, CF_SIZE, CF_SYMBOL_TYPEFACE, CF_TYPEFACE, CF_UNDERLINE, COLOR_INDEX_SRGB, COLOR_INDEX_UNDEFINED, COLOR_SCHEME_SLOT_COUNT, CONTAINER_REC_VER, CURRENT_USER_DOC_FILE_VERSION, CURRENT_USER_FIXED_SIZE, CURRENT_USER_HEADER_TOKEN_ENCRYPTED, CURRENT_USER_HEADER_TOKEN_PLAIN, CURRENT_USER_STREAM, CharacterProperties, CurrentUser, DEFAULT_INSET_LEFT_RIGHT_PT, DEFAULT_INSET_TOP_BOTTOM_PT, DecodeEmbeddedObjectPort, DocumentAtom, DrawingShape, DrawingWriteContext, DrawingWritten, EMU_PER_POINT, EmbeddedObjectSerialiser, LINE_BREAK, MASTER_SLIDE_ID, MASTER_UNITS_PER_POINT, MasterStyleLevel, MasterTextStyleAtom, NOOP_PPT_DIAGNOSTIC_SINK, NOTES_MASTER_SLIDE_ID_REF, NotesAtom, NotesPersist, OfficeArtBStoreContainer, OfficeArtBlipJPEG, OfficeArtBlipPNG, OfficeArtChildAnchor, OfficeArtClientAnchor, OfficeArtClientData, OfficeArtClientTextbox, OfficeArtDgContainer, OfficeArtDggContainer, OfficeArtFBSE, OfficeArtFDGGBlock, OfficeArtFOPT, OfficeArtFSP, OfficeArtFSPGR, OfficeArtSecondaryFOPT, OfficeArtSpContainer, OfficeArtSpgrContainer, OfficeArtTertiaryFOPT, OutlineText, PARAGRAPH_SEPARATOR, PF_ALIGN, PF_BULLET_CHAR, PF_BULLET_COLOR, PF_BULLET_FONT, PF_BULLET_HAS_COLOR, PF_BULLET_HAS_FONT, PF_BULLET_HAS_SIZE, PF_BULLET_SIZE, PF_CHAR_WRAP, PF_DEFAULT_TAB_SIZE, PF_FONT_ALIGN, PF_HAS_BULLET, PF_INDENT, PF_LEFT_MARGIN, PF_LINE_SPACING, PF_OVERFLOW, PF_SPACE_AFTER, PF_SPACE_BEFORE, PF_TAB_STOPS, PF_TEXT_DIRECTION, PF_WORD_WRAP, PICTURES_STREAM, POINTS_PER_INCH, POWERPOINT_DOCUMENT_STREAM, PROPERTY_DX_TEXT_LEFT, PROPERTY_DX_TEXT_RIGHT, PROPERTY_DY_TEXT_BOTTOM, PROPERTY_DY_TEXT_TOP, PROPERTY_PIB, PROPERTY_ROTATION, PROPERTY_TABLE_PROPERTIES, PROPERTY_TABLE_ROW_PROPERTIES, ParagraphProperties, PersistDirectory, PersistDirectoryEntryToWrite, PointStruct, PptBlip, PptDiagnostic, PptDiagnosticCodes, PptDiagnosticSeverity, PptDiagnosticSink, PptDocument, PptEncryptedError, PptFormatError, PptRecord, PptShape, PptTable, PptUnsupportedContentError, PptUnwritableBlockPolicy, RECORD_HEADER_SIZE, RT_CString, RT_ColorSchemeAtom, RT_CryptSession10Container, RT_CurrentUserAtom, RT_Document, RT_DocumentAtom, RT_Drawing, RT_DrawingGroup, RT_Environment, RT_ExternalObjectList, RT_ExternalObjectListAtom, RT_ExternalObjectRefAtom, RT_ExternalOleEmbed, RT_ExternalOleEmbedAtom, RT_ExternalOleObjectAtom, RT_ExternalOleObjectStg, RT_FontCollection, RT_FontEntityAtom, RT_List, RT_MainMaster, RT_MasterTextPropAtom, RT_Notes, RT_NotesAtom, RT_OutlineTextRefAtom, RT_PersistDirectoryAtom, RT_PlaceholderAtom, RT_Slide, RT_SlideAtom, RT_SlideListWithText, RT_SlidePersistAtom, RT_StyleTextPropAtom, RT_TextBytesAtom, RT_TextCharsAtom, RT_TextHeaderAtom, RT_TextMasterStyleAtom, RT_TextRulerAtom, RT_TextSpecialInfoAtom, RT_TextSpecialInfoDefaultAtom, RT_UserEditAtom, ReadPptOptions, RecordHeader, RecordWriteOptions, RgbColor, RunColor, SLIDE_LIST_INSTANCE_MASTERS, SLIDE_LIST_INSTANCE_NOTES, SLIDE_LIST_INSTANCE_SLIDES, STYLE_BOLD, STYLE_EMBOSS, STYLE_ITALIC, STYLE_SHADOW, STYLE_UNDERLINE, SUMMARY_INFORMATION_STREAM, ShapeProperty, ShapeRect, SlidePersist, SlidePersistRef, StyleRun, StyleTextProps, TABLE_FLAG_IS_TABLE, TEXT_TYPE_BODY, TEXT_TYPE_CENTER_BODY, TEXT_TYPE_CENTER_TITLE, TEXT_TYPE_HALF_BODY, TEXT_TYPE_NOTES, TEXT_TYPE_OTHER, TEXT_TYPE_QUARTER_BODY, TEXT_TYPE_TITLE, TextBody, TextParagraph, UserEdit, UserEditFields, WritableShapeProperty, WritePptOptions, asciiBytes, base64ToBytes, blipForPib, buildParagraphs, buildPersistDirectory, buildTextBody, bytesToBase64, characterCountOf, childRecords, collectFontFamilies, concatBytes, decodeUtf16Le, degreesToFixedPoint, emuToPoints, findChild, findChildren, findDescendants, fixedPointToDegrees, i16le, i32le, isBlipFormat, isContainerRecord, layoutMetadataToSummaryInformation, masterUnitsToPoints, pointsToEmu, pointsToMasterUnits, readBlipStore, readCurrentUserAtom, readDocumentAtom, readDrawingShapes, readFontNames, readIMsoArray, readNotesAtom, readNotesContainerAtom, readNotesListWithText, readNotesText, readPersistDirectoryAtom, readPpt, readPptContent, readPptStreams, readRecordAt, readRecordHeader, readRecordSequence, readShapeProperties, readSlideListWithText, readStyleTextPropAtom, readTextBody, readTextHeaderAtom, readTextMasterStyleAtom, readUserEditAtom, resolvePersistObject, splitParagraphs, u16le, u32le, u8, utf16le, writeAtom, writeContainer, writeCurrentUserAtom, writeDocumentAtom, writeDrawingGroupContainer, writeEnvironment, writeIMsoArray, writeMainMaster, writeMasterListWithText, writeNotesAtom, writeNotesContainer, writeNotesListWithText, writePersistDirectoryAtom, writePpt, writePptContent, writePptStreams, writeShapePropertyTable, writeSlideAtom, writeSlideAtomForSlide, writeSlideDrawing, writeSlideListWithText, writeSlideSchemeColorSchemeAtom, writeStyleTextPropAtom, writeUserEditAtom };
package/dist/index.js CHANGED
@@ -5,7 +5,7 @@ import { childRecords, findChild, findChildren, findDescendants, readRecordAt, r
5
5
  import { OfficeArtBStoreContainer, OfficeArtBlipJPEG, OfficeArtBlipPNG, OfficeArtChildAnchor, OfficeArtClientAnchor, OfficeArtClientData, OfficeArtClientTextbox, OfficeArtDgContainer, OfficeArtDggContainer, OfficeArtFBSE, OfficeArtFDGGBlock, OfficeArtFOPT, OfficeArtFSP, OfficeArtFSPGR, OfficeArtSecondaryFOPT, OfficeArtSpContainer, OfficeArtSpgrContainer, OfficeArtTertiaryFOPT, RT_CString, RT_ColorSchemeAtom, RT_CryptSession10Container, RT_CurrentUserAtom, RT_Document, RT_DocumentAtom, RT_Drawing, RT_DrawingGroup, RT_Environment, RT_ExternalObjectList, RT_ExternalObjectListAtom, RT_ExternalObjectRefAtom, RT_ExternalOleEmbed, RT_ExternalOleEmbedAtom, RT_ExternalOleObjectAtom, RT_ExternalOleObjectStg, RT_FontCollection, RT_FontEntityAtom, RT_List, RT_MainMaster, RT_MasterTextPropAtom, RT_Notes, RT_NotesAtom, RT_OutlineTextRefAtom, RT_PersistDirectoryAtom, RT_PlaceholderAtom, RT_Slide, RT_SlideAtom, RT_SlideListWithText, RT_SlidePersistAtom, RT_StyleTextPropAtom, RT_TextBytesAtom, RT_TextCharsAtom, RT_TextHeaderAtom, RT_TextMasterStyleAtom, RT_TextRulerAtom, RT_TextSpecialInfoAtom, RT_TextSpecialInfoDefaultAtom, RT_UserEditAtom, SLIDE_LIST_INSTANCE_MASTERS, SLIDE_LIST_INSTANCE_NOTES, SLIDE_LIST_INSTANCE_SLIDES } from "./record/types.js";
6
6
  import { ALIGN_CENTER, ALIGN_DISTRIBUTED, ALIGN_JUSTIFY, ALIGN_JUSTIFY_LOW, ALIGN_LEFT, ALIGN_RIGHT, ALIGN_THAI_DISTRIBUTED, CF_ANSI_TYPEFACE, CF_BOLD, CF_COLOR, CF_EMBOSS, CF_FEHINT, CF_HAS_STYLE, CF_ITALIC, CF_KUMI, CF_OLD_EA_TYPEFACE, CF_POSITION, CF_SHADOW, CF_SIZE, CF_SYMBOL_TYPEFACE, CF_TYPEFACE, CF_UNDERLINE, COLOR_INDEX_SRGB, COLOR_INDEX_UNDEFINED, COLOR_SCHEME_SLOT_COUNT, PF_ALIGN, PF_BULLET_CHAR, PF_BULLET_COLOR, PF_BULLET_FONT, PF_BULLET_HAS_COLOR, PF_BULLET_HAS_FONT, PF_BULLET_HAS_SIZE, PF_BULLET_SIZE, PF_CHAR_WRAP, PF_DEFAULT_TAB_SIZE, PF_FONT_ALIGN, PF_HAS_BULLET, PF_INDENT, PF_LEFT_MARGIN, PF_LINE_SPACING, PF_OVERFLOW, PF_SPACE_AFTER, PF_SPACE_BEFORE, PF_TAB_STOPS, PF_TEXT_DIRECTION, PF_WORD_WRAP, STYLE_BOLD, STYLE_EMBOSS, STYLE_ITALIC, STYLE_SHADOW, STYLE_UNDERLINE, readStyleTextPropAtom, readTextMasterStyleAtom } from "./text/style.js";
7
7
  import { LINE_BREAK, PARAGRAPH_SEPARATOR, TEXT_TYPE_BODY, TEXT_TYPE_CENTER_BODY, TEXT_TYPE_CENTER_TITLE, TEXT_TYPE_HALF_BODY, TEXT_TYPE_NOTES, TEXT_TYPE_OTHER, TEXT_TYPE_QUARTER_BODY, TEXT_TYPE_TITLE, characterCountOf, readTextBody, readTextHeaderAtom, splitParagraphs } from "./text/atoms.js";
8
- import { MASTER_UNITS_PER_POINT, POINTS_PER_INCH, masterUnitsToPoints, pointsToMasterUnits } from "./units.js";
8
+ import { EMU_PER_POINT, MASTER_UNITS_PER_POINT, POINTS_PER_INCH, emuToPoints, masterUnitsToPoints, pointsToEmu, pointsToMasterUnits } from "./units.js";
9
9
  import { buildTextBody, collectFontFamilies } from "./content-write.js";
10
10
  import { buildParagraphs } from "./content.js";
11
11
  import { NOOP_PPT_DIAGNOSTIC_SINK, PptDiagnosticCodes } from "./diagnostics.js";
@@ -16,16 +16,16 @@ import { writeDocumentAtom } from "./document/document-atom-write.js";
16
16
  import { readFontNames } from "./document/fonts.js";
17
17
  import { writeEnvironment } from "./document/fonts-write.js";
18
18
  import { blipForPib, isBlipFormat, readBlipStore, writeDrawingGroupContainer } from "./drawing/blips.js";
19
- import { PROPERTY_PIB, PROPERTY_ROTATION, PROPERTY_TABLE_PROPERTIES, PROPERTY_TABLE_ROW_PROPERTIES, TABLE_FLAG_IS_TABLE, degreesToFixedPoint, fixedPointToDegrees, readIMsoArray, readShapeProperties, writeIMsoArray, writeShapePropertyTable } from "./drawing/properties.js";
20
- import { writeStyleTextPropAtom } from "./text/style-write.js";
21
- import { writeSlideDrawing } from "./drawing/shapes-write.js";
19
+ import { PROPERTY_DX_TEXT_LEFT, PROPERTY_DX_TEXT_RIGHT, PROPERTY_DY_TEXT_BOTTOM, PROPERTY_DY_TEXT_TOP, PROPERTY_PIB, PROPERTY_ROTATION, PROPERTY_TABLE_PROPERTIES, PROPERTY_TABLE_ROW_PROPERTIES, TABLE_FLAG_IS_TABLE, degreesToFixedPoint, fixedPointToDegrees, readIMsoArray, readShapeProperties, writeIMsoArray, writeShapePropertyTable } from "./drawing/properties.js";
22
20
  import { readNotesListWithText } from "./document/notes-list.js";
23
21
  import { readDrawingShapes } from "./drawing/shapes.js";
24
22
  import { NOTES_MASTER_SLIDE_ID_REF, readNotesAtom, readNotesContainerAtom, readNotesText } from "./document/notes.js";
25
23
  import { readSlideListWithText } from "./document/slide-list.js";
26
- import { CURRENT_USER_DOC_FILE_VERSION, CURRENT_USER_FIXED_SIZE, CURRENT_USER_HEADER_TOKEN_ENCRYPTED, CURRENT_USER_HEADER_TOKEN_PLAIN, readCurrentUserAtom } from "./stream/current-user.js";
24
+ import { CURRENT_USER_DOC_FILE_VERSION, CURRENT_USER_FIXED_SIZE, CURRENT_USER_HEADER_TOKEN_ENCRYPTED, CURRENT_USER_HEADER_TOKEN_PLAIN, decodeUtf16Le, readCurrentUserAtom } from "./stream/current-user.js";
27
25
  import { buildPersistDirectory, readPersistDirectoryAtom, readUserEditAtom, resolvePersistObject } from "./stream/persist.js";
28
26
  import { CURRENT_USER_STREAM, DEFAULT_INSET_LEFT_RIGHT_PT, DEFAULT_INSET_TOP_BOTTOM_PT, PICTURES_STREAM, POWERPOINT_DOCUMENT_STREAM, SUMMARY_INFORMATION_STREAM, readPpt, readPptContent, readPptStreams } from "./read.js";
27
+ import { writeStyleTextPropAtom } from "./text/style-write.js";
28
+ import { writeSlideDrawing } from "./drawing/shapes-write.js";
29
29
  import { MASTER_SLIDE_ID, writeMainMaster, writeMasterListWithText, writeSlideAtom, writeSlideAtomForSlide } from "./document/master-write.js";
30
30
  import { writeNotesListWithText } from "./document/notes-list-write.js";
31
31
  import { writeNotesAtom, writeNotesContainer } from "./document/notes-write.js";
@@ -34,4 +34,4 @@ import { layoutMetadataToSummaryInformation } from "./metadata.js";
34
34
  import { writeCurrentUserAtom } from "./stream/current-user-write.js";
35
35
  import { writePersistDirectoryAtom, writeUserEditAtom } from "./stream/persist-write.js";
36
36
  import { writePpt, writePptContent, writePptStreams } from "./write.js";
37
- export { ALIGN_CENTER, ALIGN_DISTRIBUTED, ALIGN_JUSTIFY, ALIGN_JUSTIFY_LOW, ALIGN_LEFT, ALIGN_RIGHT, ALIGN_THAI_DISTRIBUTED, CF_ANSI_TYPEFACE, CF_BOLD, CF_COLOR, CF_EMBOSS, CF_FEHINT, CF_HAS_STYLE, CF_ITALIC, CF_KUMI, CF_OLD_EA_TYPEFACE, CF_POSITION, CF_SHADOW, CF_SIZE, CF_SYMBOL_TYPEFACE, CF_TYPEFACE, CF_UNDERLINE, COLOR_INDEX_SRGB, COLOR_INDEX_UNDEFINED, COLOR_SCHEME_SLOT_COUNT, CONTAINER_REC_VER, CURRENT_USER_DOC_FILE_VERSION, CURRENT_USER_FIXED_SIZE, CURRENT_USER_HEADER_TOKEN_ENCRYPTED, CURRENT_USER_HEADER_TOKEN_PLAIN, CURRENT_USER_STREAM, DEFAULT_INSET_LEFT_RIGHT_PT, DEFAULT_INSET_TOP_BOTTOM_PT, LINE_BREAK, MASTER_SLIDE_ID, MASTER_UNITS_PER_POINT, NOOP_PPT_DIAGNOSTIC_SINK, NOTES_MASTER_SLIDE_ID_REF, OfficeArtBStoreContainer, OfficeArtBlipJPEG, OfficeArtBlipPNG, OfficeArtChildAnchor, OfficeArtClientAnchor, OfficeArtClientData, OfficeArtClientTextbox, OfficeArtDgContainer, OfficeArtDggContainer, OfficeArtFBSE, OfficeArtFDGGBlock, OfficeArtFOPT, OfficeArtFSP, OfficeArtFSPGR, OfficeArtSecondaryFOPT, OfficeArtSpContainer, OfficeArtSpgrContainer, OfficeArtTertiaryFOPT, PARAGRAPH_SEPARATOR, PF_ALIGN, PF_BULLET_CHAR, PF_BULLET_COLOR, PF_BULLET_FONT, PF_BULLET_HAS_COLOR, PF_BULLET_HAS_FONT, PF_BULLET_HAS_SIZE, PF_BULLET_SIZE, PF_CHAR_WRAP, PF_DEFAULT_TAB_SIZE, PF_FONT_ALIGN, PF_HAS_BULLET, PF_INDENT, PF_LEFT_MARGIN, PF_LINE_SPACING, PF_OVERFLOW, PF_SPACE_AFTER, PF_SPACE_BEFORE, PF_TAB_STOPS, PF_TEXT_DIRECTION, PF_WORD_WRAP, PICTURES_STREAM, POINTS_PER_INCH, POWERPOINT_DOCUMENT_STREAM, PROPERTY_PIB, PROPERTY_ROTATION, PROPERTY_TABLE_PROPERTIES, PROPERTY_TABLE_ROW_PROPERTIES, PptDiagnosticCodes, PptEncryptedError, PptFormatError, PptUnsupportedContentError, RECORD_HEADER_SIZE, RT_CString, RT_ColorSchemeAtom, RT_CryptSession10Container, RT_CurrentUserAtom, RT_Document, RT_DocumentAtom, RT_Drawing, RT_DrawingGroup, RT_Environment, RT_ExternalObjectList, RT_ExternalObjectListAtom, RT_ExternalObjectRefAtom, RT_ExternalOleEmbed, RT_ExternalOleEmbedAtom, RT_ExternalOleObjectAtom, RT_ExternalOleObjectStg, RT_FontCollection, RT_FontEntityAtom, RT_List, RT_MainMaster, RT_MasterTextPropAtom, RT_Notes, RT_NotesAtom, RT_OutlineTextRefAtom, RT_PersistDirectoryAtom, RT_PlaceholderAtom, RT_Slide, RT_SlideAtom, RT_SlideListWithText, RT_SlidePersistAtom, RT_StyleTextPropAtom, RT_TextBytesAtom, RT_TextCharsAtom, RT_TextHeaderAtom, RT_TextMasterStyleAtom, RT_TextRulerAtom, RT_TextSpecialInfoAtom, RT_TextSpecialInfoDefaultAtom, RT_UserEditAtom, SLIDE_LIST_INSTANCE_MASTERS, SLIDE_LIST_INSTANCE_NOTES, SLIDE_LIST_INSTANCE_SLIDES, STYLE_BOLD, STYLE_EMBOSS, STYLE_ITALIC, STYLE_SHADOW, STYLE_UNDERLINE, SUMMARY_INFORMATION_STREAM, TABLE_FLAG_IS_TABLE, TEXT_TYPE_BODY, TEXT_TYPE_CENTER_BODY, TEXT_TYPE_CENTER_TITLE, TEXT_TYPE_HALF_BODY, TEXT_TYPE_NOTES, TEXT_TYPE_OTHER, TEXT_TYPE_QUARTER_BODY, TEXT_TYPE_TITLE, asciiBytes, base64ToBytes, blipForPib, buildParagraphs, buildPersistDirectory, buildTextBody, bytesToBase64, characterCountOf, childRecords, collectFontFamilies, concatBytes, degreesToFixedPoint, findChild, findChildren, findDescendants, fixedPointToDegrees, i16le, i32le, isBlipFormat, isContainerRecord, layoutMetadataToSummaryInformation, masterUnitsToPoints, pointsToMasterUnits, readBlipStore, readCurrentUserAtom, readDocumentAtom, readDrawingShapes, readFontNames, readIMsoArray, readNotesAtom, readNotesContainerAtom, readNotesListWithText, readNotesText, readPersistDirectoryAtom, readPpt, readPptContent, readPptStreams, readRecordAt, readRecordHeader, readRecordSequence, readShapeProperties, readSlideListWithText, readStyleTextPropAtom, readTextBody, readTextHeaderAtom, readTextMasterStyleAtom, readUserEditAtom, resolvePersistObject, splitParagraphs, u16le, u32le, u8, utf16le, writeAtom, writeContainer, writeCurrentUserAtom, writeDocumentAtom, writeDrawingGroupContainer, writeEnvironment, writeIMsoArray, writeMainMaster, writeMasterListWithText, writeNotesAtom, writeNotesContainer, writeNotesListWithText, writePersistDirectoryAtom, writePpt, writePptContent, writePptStreams, writeShapePropertyTable, writeSlideAtom, writeSlideAtomForSlide, writeSlideDrawing, writeSlideListWithText, writeSlideSchemeColorSchemeAtom, writeStyleTextPropAtom, writeUserEditAtom };
37
+ export { ALIGN_CENTER, ALIGN_DISTRIBUTED, ALIGN_JUSTIFY, ALIGN_JUSTIFY_LOW, ALIGN_LEFT, ALIGN_RIGHT, ALIGN_THAI_DISTRIBUTED, CF_ANSI_TYPEFACE, CF_BOLD, CF_COLOR, CF_EMBOSS, CF_FEHINT, CF_HAS_STYLE, CF_ITALIC, CF_KUMI, CF_OLD_EA_TYPEFACE, CF_POSITION, CF_SHADOW, CF_SIZE, CF_SYMBOL_TYPEFACE, CF_TYPEFACE, CF_UNDERLINE, COLOR_INDEX_SRGB, COLOR_INDEX_UNDEFINED, COLOR_SCHEME_SLOT_COUNT, CONTAINER_REC_VER, CURRENT_USER_DOC_FILE_VERSION, CURRENT_USER_FIXED_SIZE, CURRENT_USER_HEADER_TOKEN_ENCRYPTED, CURRENT_USER_HEADER_TOKEN_PLAIN, CURRENT_USER_STREAM, DEFAULT_INSET_LEFT_RIGHT_PT, DEFAULT_INSET_TOP_BOTTOM_PT, EMU_PER_POINT, LINE_BREAK, MASTER_SLIDE_ID, MASTER_UNITS_PER_POINT, NOOP_PPT_DIAGNOSTIC_SINK, NOTES_MASTER_SLIDE_ID_REF, OfficeArtBStoreContainer, OfficeArtBlipJPEG, OfficeArtBlipPNG, OfficeArtChildAnchor, OfficeArtClientAnchor, OfficeArtClientData, OfficeArtClientTextbox, OfficeArtDgContainer, OfficeArtDggContainer, OfficeArtFBSE, OfficeArtFDGGBlock, OfficeArtFOPT, OfficeArtFSP, OfficeArtFSPGR, OfficeArtSecondaryFOPT, OfficeArtSpContainer, OfficeArtSpgrContainer, OfficeArtTertiaryFOPT, PARAGRAPH_SEPARATOR, PF_ALIGN, PF_BULLET_CHAR, PF_BULLET_COLOR, PF_BULLET_FONT, PF_BULLET_HAS_COLOR, PF_BULLET_HAS_FONT, PF_BULLET_HAS_SIZE, PF_BULLET_SIZE, PF_CHAR_WRAP, PF_DEFAULT_TAB_SIZE, PF_FONT_ALIGN, PF_HAS_BULLET, PF_INDENT, PF_LEFT_MARGIN, PF_LINE_SPACING, PF_OVERFLOW, PF_SPACE_AFTER, PF_SPACE_BEFORE, PF_TAB_STOPS, PF_TEXT_DIRECTION, PF_WORD_WRAP, PICTURES_STREAM, POINTS_PER_INCH, POWERPOINT_DOCUMENT_STREAM, PROPERTY_DX_TEXT_LEFT, PROPERTY_DX_TEXT_RIGHT, PROPERTY_DY_TEXT_BOTTOM, PROPERTY_DY_TEXT_TOP, PROPERTY_PIB, PROPERTY_ROTATION, PROPERTY_TABLE_PROPERTIES, PROPERTY_TABLE_ROW_PROPERTIES, PptDiagnosticCodes, PptEncryptedError, PptFormatError, PptUnsupportedContentError, RECORD_HEADER_SIZE, RT_CString, RT_ColorSchemeAtom, RT_CryptSession10Container, RT_CurrentUserAtom, RT_Document, RT_DocumentAtom, RT_Drawing, RT_DrawingGroup, RT_Environment, RT_ExternalObjectList, RT_ExternalObjectListAtom, RT_ExternalObjectRefAtom, RT_ExternalOleEmbed, RT_ExternalOleEmbedAtom, RT_ExternalOleObjectAtom, RT_ExternalOleObjectStg, RT_FontCollection, RT_FontEntityAtom, RT_List, RT_MainMaster, RT_MasterTextPropAtom, RT_Notes, RT_NotesAtom, RT_OutlineTextRefAtom, RT_PersistDirectoryAtom, RT_PlaceholderAtom, RT_Slide, RT_SlideAtom, RT_SlideListWithText, RT_SlidePersistAtom, RT_StyleTextPropAtom, RT_TextBytesAtom, RT_TextCharsAtom, RT_TextHeaderAtom, RT_TextMasterStyleAtom, RT_TextRulerAtom, RT_TextSpecialInfoAtom, RT_TextSpecialInfoDefaultAtom, RT_UserEditAtom, SLIDE_LIST_INSTANCE_MASTERS, SLIDE_LIST_INSTANCE_NOTES, SLIDE_LIST_INSTANCE_SLIDES, STYLE_BOLD, STYLE_EMBOSS, STYLE_ITALIC, STYLE_SHADOW, STYLE_UNDERLINE, SUMMARY_INFORMATION_STREAM, TABLE_FLAG_IS_TABLE, TEXT_TYPE_BODY, TEXT_TYPE_CENTER_BODY, TEXT_TYPE_CENTER_TITLE, TEXT_TYPE_HALF_BODY, TEXT_TYPE_NOTES, TEXT_TYPE_OTHER, TEXT_TYPE_QUARTER_BODY, TEXT_TYPE_TITLE, asciiBytes, base64ToBytes, blipForPib, buildParagraphs, buildPersistDirectory, buildTextBody, bytesToBase64, characterCountOf, childRecords, collectFontFamilies, concatBytes, decodeUtf16Le, degreesToFixedPoint, emuToPoints, findChild, findChildren, findDescendants, fixedPointToDegrees, i16le, i32le, isBlipFormat, isContainerRecord, layoutMetadataToSummaryInformation, masterUnitsToPoints, pointsToEmu, pointsToMasterUnits, readBlipStore, readCurrentUserAtom, readDocumentAtom, readDrawingShapes, readFontNames, readIMsoArray, readNotesAtom, readNotesContainerAtom, readNotesListWithText, readNotesText, readPersistDirectoryAtom, readPpt, readPptContent, readPptStreams, readRecordAt, readRecordHeader, readRecordSequence, readShapeProperties, readSlideListWithText, readStyleTextPropAtom, readTextBody, readTextHeaderAtom, readTextMasterStyleAtom, readUserEditAtom, resolvePersistObject, splitParagraphs, u16le, u32le, u8, utf16le, writeAtom, writeContainer, writeCurrentUserAtom, writeDocumentAtom, writeDrawingGroupContainer, writeEnvironment, writeIMsoArray, writeMainMaster, writeMasterListWithText, writeNotesAtom, writeNotesContainer, writeNotesListWithText, writePersistDirectoryAtom, writePpt, writePptContent, writePptStreams, writeShapePropertyTable, writeSlideAtom, writeSlideAtomForSlide, writeSlideDrawing, writeSlideListWithText, writeSlideSchemeColorSchemeAtom, writeStyleTextPropAtom, writeUserEditAtom };
@@ -0,0 +1,66 @@
1
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
+ const require_record_types = require("../record/types.cjs");
3
+ const require_record_write = require("../record/write.cjs");
4
+ //#region src/ole/embedded-write.ts
5
+ const EX_OLE_TYPE_EMBEDDED = 0;
6
+ const EX_OLE_SUBTYPE_DEFAULT = 0;
7
+ const EX_OLE_SUBTYPE_WORD_DOC = 2;
8
+ const EX_OLE_SUBTYPE_EXCEL = 3;
9
+ const DVASPECT_CONTENT = 1;
10
+ const EX_COLOR_FOLLOW_NONE = 0;
11
+ const PROG_ID_ATOM_INSTANCE = 2;
12
+ function writeExOleObjAtom(exObjId, persistIdRef, subType) {
13
+ return require_record_write.writeAtom(require_record_types.RT_ExternalOleObjectAtom, require_record_write.concatBytes(require_record_write.u32le(DVASPECT_CONTENT), require_record_write.u32le(EX_OLE_TYPE_EMBEDDED), require_record_write.u32le(exObjId), require_record_write.u32le(subType), require_record_write.u32le(persistIdRef), require_record_write.u32le(0)), { recVer: 1 });
14
+ }
15
+ function writeExOleEmbedAtom() {
16
+ return require_record_write.writeAtom(require_record_types.RT_ExternalOleEmbedAtom, require_record_write.concatBytes(require_record_write.u32le(EX_COLOR_FOLLOW_NONE), new Uint8Array([
17
+ 0,
18
+ 0,
19
+ 0,
20
+ 0
21
+ ])));
22
+ }
23
+ function writeProgIdAtom(progId) {
24
+ return require_record_write.writeAtom(require_record_types.RT_CString, require_record_write.utf16le(progId), { recInstance: PROG_ID_ATOM_INSTANCE });
25
+ }
26
+ function progIdFor(objectKind) {
27
+ switch (objectKind) {
28
+ case "wordprocessing": return {
29
+ progId: "Word.Document.8",
30
+ subType: EX_OLE_SUBTYPE_WORD_DOC
31
+ };
32
+ case "spreadsheet": return {
33
+ progId: "Excel.Sheet.8",
34
+ subType: EX_OLE_SUBTYPE_EXCEL
35
+ };
36
+ case "presentation":
37
+ case "formula":
38
+ case "drawing":
39
+ case "chart": return;
40
+ }
41
+ }
42
+ function writeExOleEmbedContainer(embed) {
43
+ const named = progIdFor(embed.objectKind);
44
+ const children = [writeExOleEmbedAtom(), writeExOleObjAtom(embed.exObjId, embed.persistIdRef, named?.subType ?? EX_OLE_SUBTYPE_DEFAULT)];
45
+ if (named !== void 0) children.push(writeProgIdAtom(named.progId));
46
+ return require_record_write.writeContainer(require_record_types.RT_ExternalOleEmbed, children);
47
+ }
48
+ function writeExObjListContainer(embeds) {
49
+ if (embeds.length === 0) return;
50
+ const seed = Math.max(...embeds.map((embed) => embed.exObjId)) + 1;
51
+ const exObjListAtom = require_record_write.writeAtom(require_record_types.RT_ExternalObjectListAtom, require_record_write.u32le(seed));
52
+ return require_record_write.writeContainer(require_record_types.RT_ExternalObjectList, [exObjListAtom, ...embeds.map((embed) => writeExOleEmbedContainer(embed))]);
53
+ }
54
+ function writeExObjRefAtom(exObjId) {
55
+ return require_record_write.writeAtom(require_record_types.RT_ExternalObjectRefAtom, require_record_write.u32le(exObjId));
56
+ }
57
+ function writeOleClientData(exObjId) {
58
+ return require_record_write.writeContainer(require_record_types.OfficeArtClientData, [writeExObjRefAtom(exObjId)]);
59
+ }
60
+ function writeExOleObjStg(storageBytes) {
61
+ return require_record_write.writeAtom(require_record_types.RT_ExternalOleObjectStg, storageBytes, { recInstance: 0 });
62
+ }
63
+ //#endregion
64
+ exports.writeExObjListContainer = writeExObjListContainer;
65
+ exports.writeExOleObjStg = writeExOleObjStg;
66
+ exports.writeOleClientData = writeOleClientData;
@@ -0,0 +1,12 @@
1
+ import { ContentEmbeddedObjectKind } from "document-schema.js";
2
+ //#region src/ole/embedded-write.d.ts
3
+ interface WritableOleEmbed {
4
+ readonly exObjId: number;
5
+ readonly persistIdRef: number;
6
+ readonly objectKind: ContentEmbeddedObjectKind;
7
+ }
8
+ declare function writeExObjListContainer(embeds: readonly WritableOleEmbed[]): Uint8Array<ArrayBuffer> | undefined;
9
+ declare function writeOleClientData(exObjId: number): Uint8Array<ArrayBuffer>;
10
+ declare function writeExOleObjStg(storageBytes: Uint8Array<ArrayBuffer>): Uint8Array<ArrayBuffer>;
11
+ //#endregion
12
+ export { WritableOleEmbed, writeExObjListContainer, writeExOleObjStg, writeOleClientData };
@@ -0,0 +1,12 @@
1
+ import { ContentEmbeddedObjectKind } from "document-schema.js";
2
+ //#region src/ole/embedded-write.d.ts
3
+ interface WritableOleEmbed {
4
+ readonly exObjId: number;
5
+ readonly persistIdRef: number;
6
+ readonly objectKind: ContentEmbeddedObjectKind;
7
+ }
8
+ declare function writeExObjListContainer(embeds: readonly WritableOleEmbed[]): Uint8Array<ArrayBuffer> | undefined;
9
+ declare function writeOleClientData(exObjId: number): Uint8Array<ArrayBuffer>;
10
+ declare function writeExOleObjStg(storageBytes: Uint8Array<ArrayBuffer>): Uint8Array<ArrayBuffer>;
11
+ //#endregion
12
+ export { WritableOleEmbed, writeExObjListContainer, writeExOleObjStg, writeOleClientData };
@@ -0,0 +1,63 @@
1
+ import { OfficeArtClientData, RT_CString, RT_ExternalObjectList, RT_ExternalObjectListAtom, RT_ExternalObjectRefAtom, RT_ExternalOleEmbed, RT_ExternalOleEmbedAtom, RT_ExternalOleObjectAtom, RT_ExternalOleObjectStg } from "../record/types.js";
2
+ import { concatBytes, u32le, utf16le, writeAtom, writeContainer } from "../record/write.js";
3
+ //#region src/ole/embedded-write.ts
4
+ const EX_OLE_TYPE_EMBEDDED = 0;
5
+ const EX_OLE_SUBTYPE_DEFAULT = 0;
6
+ const EX_OLE_SUBTYPE_WORD_DOC = 2;
7
+ const EX_OLE_SUBTYPE_EXCEL = 3;
8
+ const DVASPECT_CONTENT = 1;
9
+ const EX_COLOR_FOLLOW_NONE = 0;
10
+ const PROG_ID_ATOM_INSTANCE = 2;
11
+ function writeExOleObjAtom(exObjId, persistIdRef, subType) {
12
+ return writeAtom(RT_ExternalOleObjectAtom, concatBytes(u32le(DVASPECT_CONTENT), u32le(EX_OLE_TYPE_EMBEDDED), u32le(exObjId), u32le(subType), u32le(persistIdRef), u32le(0)), { recVer: 1 });
13
+ }
14
+ function writeExOleEmbedAtom() {
15
+ return writeAtom(RT_ExternalOleEmbedAtom, concatBytes(u32le(EX_COLOR_FOLLOW_NONE), new Uint8Array([
16
+ 0,
17
+ 0,
18
+ 0,
19
+ 0
20
+ ])));
21
+ }
22
+ function writeProgIdAtom(progId) {
23
+ return writeAtom(RT_CString, utf16le(progId), { recInstance: PROG_ID_ATOM_INSTANCE });
24
+ }
25
+ function progIdFor(objectKind) {
26
+ switch (objectKind) {
27
+ case "wordprocessing": return {
28
+ progId: "Word.Document.8",
29
+ subType: EX_OLE_SUBTYPE_WORD_DOC
30
+ };
31
+ case "spreadsheet": return {
32
+ progId: "Excel.Sheet.8",
33
+ subType: EX_OLE_SUBTYPE_EXCEL
34
+ };
35
+ case "presentation":
36
+ case "formula":
37
+ case "drawing":
38
+ case "chart": return;
39
+ }
40
+ }
41
+ function writeExOleEmbedContainer(embed) {
42
+ const named = progIdFor(embed.objectKind);
43
+ const children = [writeExOleEmbedAtom(), writeExOleObjAtom(embed.exObjId, embed.persistIdRef, named?.subType ?? EX_OLE_SUBTYPE_DEFAULT)];
44
+ if (named !== void 0) children.push(writeProgIdAtom(named.progId));
45
+ return writeContainer(RT_ExternalOleEmbed, children);
46
+ }
47
+ function writeExObjListContainer(embeds) {
48
+ if (embeds.length === 0) return;
49
+ const seed = Math.max(...embeds.map((embed) => embed.exObjId)) + 1;
50
+ const exObjListAtom = writeAtom(RT_ExternalObjectListAtom, u32le(seed));
51
+ return writeContainer(RT_ExternalObjectList, [exObjListAtom, ...embeds.map((embed) => writeExOleEmbedContainer(embed))]);
52
+ }
53
+ function writeExObjRefAtom(exObjId) {
54
+ return writeAtom(RT_ExternalObjectRefAtom, u32le(exObjId));
55
+ }
56
+ function writeOleClientData(exObjId) {
57
+ return writeContainer(OfficeArtClientData, [writeExObjRefAtom(exObjId)]);
58
+ }
59
+ function writeExOleObjStg(storageBytes) {
60
+ return writeAtom(RT_ExternalOleObjectStg, storageBytes, { recInstance: 0 });
61
+ }
62
+ //#endregion
63
+ export { writeExObjListContainer, writeExOleObjStg, writeOleClientData };
@@ -0,0 +1,66 @@
1
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
+ const require_errors = require("../errors.cjs");
3
+ const require_record_tree = require("../record/tree.cjs");
4
+ const require_record_types = require("../record/types.cjs");
5
+ const require_stream_current_user = require("../stream/current-user.cjs");
6
+ let byte_codec = require("byte-codec");
7
+ //#region src/ole/embedded.ts
8
+ const EX_OLE_OBJ_ATOM_LEN = 24;
9
+ function readExOleObjAtom(record) {
10
+ if (record.data.length < EX_OLE_OBJ_ATOM_LEN) throw new require_errors.PptFormatError(`ExOleObjAtom at offset ${record.offset} carries ${record.data.length} bytes, fewer than the ${EX_OLE_OBJ_ATOM_LEN} its fields need`);
11
+ const view = new DataView(record.data.buffer, record.data.byteOffset, record.data.byteLength);
12
+ return {
13
+ exObjId: view.getUint32(8, true),
14
+ persistIdRef: view.getUint32(16, true)
15
+ };
16
+ }
17
+ const PROG_ID_ATOM_INSTANCE = 2;
18
+ function readExOleEmbedContainer(container) {
19
+ const children = require_record_tree.childRecords(container);
20
+ const objAtom = require_record_tree.findChild(children, require_record_types.RT_ExternalOleObjectAtom);
21
+ if (objAtom === void 0) return;
22
+ const progIdAtom = children.find((child) => child.header.recType === 4026 && child.header.recInstance === PROG_ID_ATOM_INSTANCE);
23
+ return {
24
+ ...readExOleObjAtom(objAtom),
25
+ progId: progIdAtom === void 0 ? void 0 : require_stream_current_user.decodeUtf16Le(progIdAtom.data)
26
+ };
27
+ }
28
+ function readExternalOleEmbeds(documentChildren) {
29
+ const embeds = /* @__PURE__ */ new Map();
30
+ const objList = require_record_tree.findChild(documentChildren, require_record_types.RT_ExternalObjectList);
31
+ if (objList === void 0) return embeds;
32
+ for (const child of require_record_tree.childRecords(objList)) {
33
+ if (child.header.recType !== 4044) continue;
34
+ const embed = readExOleEmbedContainer(child);
35
+ if (embed !== void 0) embeds.set(embed.exObjId, embed);
36
+ }
37
+ return embeds;
38
+ }
39
+ function readExObjIdRef(clientData) {
40
+ const record = require_record_tree.findChild(require_record_tree.childRecords(clientData), require_record_types.RT_ExternalObjectRefAtom);
41
+ if (record === void 0 || record.data.length < 4) return;
42
+ return new DataView(record.data.buffer, record.data.byteOffset, record.data.byteLength).getUint32(0, true);
43
+ }
44
+ const EX_OLE_OBJ_STG_INSTANCE_COMPRESSED = 1;
45
+ function resolveOleObjectStorage(streamBytes, directory, persistIdRef) {
46
+ const offset = directory.get(persistIdRef);
47
+ if (offset === void 0) return;
48
+ let record;
49
+ try {
50
+ record = require_record_tree.readRecordAt(streamBytes, offset);
51
+ } catch {
52
+ return;
53
+ }
54
+ if (record.header.recType !== 4113) return;
55
+ if (record.header.recInstance !== EX_OLE_OBJ_STG_INSTANCE_COMPRESSED) return record.data;
56
+ if (record.data.length < 4) return;
57
+ try {
58
+ return (0, byte_codec.inflate)(record.data.subarray(4));
59
+ } catch {
60
+ return;
61
+ }
62
+ }
63
+ //#endregion
64
+ exports.readExObjIdRef = readExObjIdRef;
65
+ exports.readExternalOleEmbeds = readExternalOleEmbeds;
66
+ exports.resolveOleObjectStorage = resolveOleObjectStorage;
@@ -0,0 +1,12 @@
1
+ import { t as PptRecord } from "../tree-Du_LXAF0.cjs";
2
+ //#region src/ole/embedded.d.ts
3
+ interface ExternalOleEmbed {
4
+ readonly exObjId: number;
5
+ readonly progId: string | undefined;
6
+ readonly persistIdRef: number;
7
+ }
8
+ declare function readExternalOleEmbeds(documentChildren: readonly PptRecord[]): ReadonlyMap<number, ExternalOleEmbed>;
9
+ declare function readExObjIdRef(clientData: PptRecord): number | undefined;
10
+ declare function resolveOleObjectStorage(streamBytes: Uint8Array<ArrayBuffer>, directory: ReadonlyMap<number, number>, persistIdRef: number): Uint8Array<ArrayBuffer> | undefined;
11
+ //#endregion
12
+ export { ExternalOleEmbed, readExObjIdRef, readExternalOleEmbeds, resolveOleObjectStorage };
@@ -0,0 +1,12 @@
1
+ import { t as PptRecord } from "../tree-PMcPNgd-.js";
2
+ //#region src/ole/embedded.d.ts
3
+ interface ExternalOleEmbed {
4
+ readonly exObjId: number;
5
+ readonly progId: string | undefined;
6
+ readonly persistIdRef: number;
7
+ }
8
+ declare function readExternalOleEmbeds(documentChildren: readonly PptRecord[]): ReadonlyMap<number, ExternalOleEmbed>;
9
+ declare function readExObjIdRef(clientData: PptRecord): number | undefined;
10
+ declare function resolveOleObjectStorage(streamBytes: Uint8Array<ArrayBuffer>, directory: ReadonlyMap<number, number>, persistIdRef: number): Uint8Array<ArrayBuffer> | undefined;
11
+ //#endregion
12
+ export { ExternalOleEmbed, readExObjIdRef, readExternalOleEmbeds, resolveOleObjectStorage };