ppt-codec 1.5.0 → 1.7.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.
Files changed (74) hide show
  1. package/README.md +91 -75
  2. package/dist/base64.cjs +48 -0
  3. package/dist/base64.d.cts +5 -0
  4. package/dist/base64.d.ts +5 -0
  5. package/dist/base64.js +46 -0
  6. package/dist/diagnostics-CqxAnubw.d.cts +16 -0
  7. package/dist/diagnostics-CqxAnubw.d.ts +16 -0
  8. package/dist/diagnostics.cjs +11 -0
  9. package/dist/diagnostics.d.cts +2 -0
  10. package/dist/diagnostics.d.ts +2 -0
  11. package/dist/diagnostics.js +9 -0
  12. package/dist/document/color-scheme.cjs +4 -0
  13. package/dist/document/color-scheme.d.cts +2 -1
  14. package/dist/document/color-scheme.d.ts +2 -1
  15. package/dist/document/color-scheme.js +4 -1
  16. package/dist/document/master-write.cjs +21 -16
  17. package/dist/document/master-write.d.cts +2 -1
  18. package/dist/document/master-write.d.ts +2 -1
  19. package/dist/document/master-write.js +21 -16
  20. package/dist/document/notes-write.cjs +15 -7
  21. package/dist/document/notes-write.d.cts +2 -1
  22. package/dist/document/notes-write.d.ts +2 -1
  23. package/dist/document/notes-write.js +15 -7
  24. package/dist/document/notes.cjs +4 -3
  25. package/dist/document/notes.js +4 -3
  26. package/dist/drawing/blips.cjs +81 -0
  27. package/dist/drawing/blips.d.cts +16 -0
  28. package/dist/drawing/blips.d.ts +16 -0
  29. package/dist/drawing/blips.js +77 -0
  30. package/dist/drawing/properties.cjs +102 -0
  31. package/dist/drawing/properties.d.cts +29 -0
  32. package/dist/drawing/properties.d.ts +29 -0
  33. package/dist/drawing/properties.js +87 -0
  34. package/dist/drawing/shapes-write.cjs +234 -17
  35. package/dist/drawing/shapes-write.d.cts +16 -4
  36. package/dist/drawing/shapes-write.d.ts +16 -4
  37. package/dist/drawing/shapes-write.js +237 -19
  38. package/dist/drawing/shapes.cjs +34 -4
  39. package/dist/drawing/shapes.d.cts +11 -2
  40. package/dist/drawing/shapes.d.ts +11 -2
  41. package/dist/drawing/shapes.js +35 -5
  42. package/dist/index.cjs +48 -3
  43. package/dist/index.d.cts +12 -8
  44. package/dist/index.d.ts +12 -8
  45. package/dist/index.js +11 -7
  46. package/dist/ole/embedded-write.cjs +66 -0
  47. package/dist/ole/embedded-write.d.cts +12 -0
  48. package/dist/ole/embedded-write.d.ts +12 -0
  49. package/dist/ole/embedded-write.js +63 -0
  50. package/dist/ole/embedded.cjs +66 -0
  51. package/dist/ole/embedded.d.cts +12 -0
  52. package/dist/ole/embedded.d.ts +12 -0
  53. package/dist/ole/embedded.js +63 -0
  54. package/dist/read.cjs +145 -22
  55. package/dist/read.d.cts +13 -5
  56. package/dist/read.d.ts +13 -5
  57. package/dist/read.js +148 -26
  58. package/dist/record/types.cjs +28 -0
  59. package/dist/record/types.d.cts +15 -1
  60. package/dist/record/types.d.ts +15 -1
  61. package/dist/record/types.js +15 -1
  62. package/dist/stream/current-user.cjs +1 -0
  63. package/dist/stream/current-user.d.cts +2 -1
  64. package/dist/stream/current-user.d.ts +2 -1
  65. package/dist/stream/current-user.js +1 -1
  66. package/dist/units.cjs +10 -0
  67. package/dist/units.d.cts +4 -1
  68. package/dist/units.d.ts +4 -1
  69. package/dist/units.js +8 -1
  70. package/dist/write.cjs +137 -38
  71. package/dist/write.d.cts +14 -5
  72. package/dist/write.d.ts +14 -5
  73. package/dist/write.js +137 -38
  74. package/package.json +2 -1
package/dist/index.d.cts CHANGED
@@ -1,13 +1,16 @@
1
+ import { base64ToBytes, bytesToBase64 } from "./base64.cjs";
1
2
  import { a as readRecordHeader, i as isContainerRecord, n as RECORD_HEADER_SIZE, r as RecordHeader, t as CONTAINER_REC_VER } from "./header-C5eAd16_.cjs";
2
3
  import { a as findDescendants, i as findChildren, n as childRecords, o as readRecordAt, r as findChild, s as readRecordSequence, t as PptRecord } from "./tree-Du_LXAF0.cjs";
3
4
  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, CharacterProperties, MasterStyleLevel, MasterTextStyleAtom, 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, ParagraphProperties, RgbColor, RunColor, STYLE_BOLD, STYLE_EMBOSS, STYLE_ITALIC, STYLE_SHADOW, STYLE_UNDERLINE, StyleRun, StyleTextProps, readStyleTextPropAtom, readTextMasterStyleAtom } from "./text/style.cjs";
4
5
  import { TextBody, buildTextBody, collectFontFamilies } from "./content-write.cjs";
5
6
  import { buildParagraphs } from "./content.cjs";
7
+ import { a as PptDiagnosticSink, i as PptDiagnosticSeverity, n as PptDiagnostic, r as PptDiagnosticCodes, t as NOOP_PPT_DIAGNOSTIC_SINK } from "./diagnostics-CqxAnubw.cjs";
6
8
  import { writeSlideSchemeColorSchemeAtom } from "./document/color-scheme-write.cjs";
7
9
  import { writeDocumentAtom } from "./document/document-atom-write.cjs";
8
10
  import { DocumentAtom, PointStruct, readDocumentAtom } from "./document/document-atom.cjs";
9
11
  import { writeEnvironment } from "./document/fonts-write.cjs";
10
12
  import { readFontNames } from "./document/fonts.cjs";
13
+ import { DrawingShape, DrawingWriteContext, DrawingWritten, writeSlideDrawing } from "./drawing/shapes-write.cjs";
11
14
  import { MASTER_SLIDE_ID, writeMainMaster, writeMasterListWithText, writeSlideAtom, writeSlideAtomForSlide } from "./document/master-write.cjs";
12
15
  import { NotesPersist, readNotesListWithText } from "./document/notes-list.cjs";
13
16
  import { writeNotesListWithText } from "./document/notes-list-write.cjs";
@@ -15,19 +18,20 @@ import { writeNotesAtom, writeNotesContainer } from "./document/notes-write.cjs"
15
18
  import { NOTES_MASTER_SLIDE_ID_REF, NotesAtom, readNotesAtom, readNotesContainerAtom, readNotesText } from "./document/notes.cjs";
16
19
  import { SlidePersistRef, writeSlideListWithText } from "./document/slide-list-write.cjs";
17
20
  import { OutlineText, SlidePersist, readSlideListWithText } from "./document/slide-list.cjs";
18
- import { DrawingShape, writeDrawingWithClientData, writeSlideDrawing } from "./drawing/shapes-write.cjs";
19
- import { PptShape, ShapeRect, readDrawingShapes } from "./drawing/shapes.cjs";
21
+ import { PptBlip, blipForPib, isBlipFormat, readBlipStore, writeDrawingGroupContainer } from "./drawing/blips.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
+ import { PptShape, PptTable, ShapeRect, readDrawingShapes } from "./drawing/shapes.cjs";
20
24
  import { PptEncryptedError, PptFormatError, PptUnsupportedContentError } from "./errors.cjs";
21
25
  import { layoutMetadataToSummaryInformation } from "./metadata.cjs";
22
- import { CURRENT_USER_STREAM, DEFAULT_INSET_LEFT_RIGHT_PT, DEFAULT_INSET_TOP_BOTTOM_PT, POWERPOINT_DOCUMENT_STREAM, PptDocument, SUMMARY_INFORMATION_STREAM, readPpt, readPptContent, readPptStreams } from "./read.cjs";
23
- import { OfficeArtChildAnchor, OfficeArtClientAnchor, OfficeArtClientData, OfficeArtClientTextbox, OfficeArtDgContainer, OfficeArtFOPT, OfficeArtFSP, OfficeArtFSPGR, OfficeArtSpContainer, OfficeArtSpgrContainer, RT_CString, RT_ColorSchemeAtom, RT_CryptSession10Container, RT_CurrentUserAtom, RT_Document, RT_DocumentAtom, RT_Drawing, RT_DrawingGroup, RT_Environment, RT_ExternalObjectList, 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";
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
+ 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";
24
28
  import { RecordWriteOptions, asciiBytes, concatBytes, i16le, i32le, u16le, u32le, u8, utf16le, writeAtom, writeContainer } from "./record/write.cjs";
25
- 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";
26
30
  import { writeCurrentUserAtom } from "./stream/current-user-write.cjs";
27
31
  import { PersistDirectory, UserEdit, buildPersistDirectory, readPersistDirectoryAtom, readUserEditAtom, resolvePersistObject } from "./stream/persist.cjs";
28
32
  import { PersistDirectoryEntryToWrite, UserEditFields, writePersistDirectoryAtom, writeUserEditAtom } from "./stream/persist-write.cjs";
29
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";
30
34
  import { writeStyleTextPropAtom } from "./text/style-write.cjs";
31
- import { MASTER_UNITS_PER_POINT, POINTS_PER_INCH, masterUnitsToPoints, pointsToMasterUnits } from "./units.cjs";
32
- import { writePpt, writePptContent, writePptStreams } from "./write.cjs";
33
- 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, LINE_BREAK, MASTER_SLIDE_ID, MASTER_UNITS_PER_POINT, MasterStyleLevel, MasterTextStyleAtom, NOTES_MASTER_SLIDE_ID_REF, NotesAtom, NotesPersist, OfficeArtChildAnchor, OfficeArtClientAnchor, OfficeArtClientData, OfficeArtClientTextbox, OfficeArtDgContainer, OfficeArtFOPT, OfficeArtFSP, OfficeArtFSPGR, OfficeArtSpContainer, OfficeArtSpgrContainer, 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, POINTS_PER_INCH, POWERPOINT_DOCUMENT_STREAM, ParagraphProperties, PersistDirectory, PersistDirectoryEntryToWrite, PointStruct, PptDocument, PptEncryptedError, PptFormatError, PptRecord, PptShape, 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_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, ShapeRect, SlidePersist, SlidePersistRef, StyleRun, StyleTextProps, 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, asciiBytes, buildParagraphs, buildPersistDirectory, buildTextBody, characterCountOf, childRecords, collectFontFamilies, concatBytes, findChild, findChildren, findDescendants, i16le, i32le, isContainerRecord, layoutMetadataToSummaryInformation, masterUnitsToPoints, pointsToMasterUnits, readCurrentUserAtom, readDocumentAtom, readDrawingShapes, readFontNames, readNotesAtom, readNotesContainerAtom, readNotesListWithText, readNotesText, readPersistDirectoryAtom, readPpt, readPptContent, readPptStreams, readRecordAt, readRecordHeader, readRecordSequence, readSlideListWithText, readStyleTextPropAtom, readTextBody, readTextHeaderAtom, readTextMasterStyleAtom, readUserEditAtom, resolvePersistObject, splitParagraphs, u16le, u32le, u8, utf16le, writeAtom, writeContainer, writeCurrentUserAtom, writeDocumentAtom, writeDrawingWithClientData, writeEnvironment, writeMainMaster, writeMasterListWithText, writeNotesAtom, writeNotesContainer, writeNotesListWithText, writePersistDirectoryAtom, writePpt, writePptContent, writePptStreams, 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
@@ -1,13 +1,16 @@
1
+ import { base64ToBytes, bytesToBase64 } from "./base64.js";
1
2
  import { a as readRecordHeader, i as isContainerRecord, n as RECORD_HEADER_SIZE, r as RecordHeader, t as CONTAINER_REC_VER } from "./header-C5eAd16_.js";
2
3
  import { a as findDescendants, i as findChildren, n as childRecords, o as readRecordAt, r as findChild, s as readRecordSequence, t as PptRecord } from "./tree-PMcPNgd-.js";
3
4
  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, CharacterProperties, MasterStyleLevel, MasterTextStyleAtom, 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, ParagraphProperties, RgbColor, RunColor, STYLE_BOLD, STYLE_EMBOSS, STYLE_ITALIC, STYLE_SHADOW, STYLE_UNDERLINE, StyleRun, StyleTextProps, readStyleTextPropAtom, readTextMasterStyleAtom } from "./text/style.js";
4
5
  import { TextBody, buildTextBody, collectFontFamilies } from "./content-write.js";
5
6
  import { buildParagraphs } from "./content.js";
7
+ import { a as PptDiagnosticSink, i as PptDiagnosticSeverity, n as PptDiagnostic, r as PptDiagnosticCodes, t as NOOP_PPT_DIAGNOSTIC_SINK } from "./diagnostics-CqxAnubw.js";
6
8
  import { writeSlideSchemeColorSchemeAtom } from "./document/color-scheme-write.js";
7
9
  import { writeDocumentAtom } from "./document/document-atom-write.js";
8
10
  import { DocumentAtom, PointStruct, readDocumentAtom } from "./document/document-atom.js";
9
11
  import { writeEnvironment } from "./document/fonts-write.js";
10
12
  import { readFontNames } from "./document/fonts.js";
13
+ import { DrawingShape, DrawingWriteContext, DrawingWritten, writeSlideDrawing } from "./drawing/shapes-write.js";
11
14
  import { MASTER_SLIDE_ID, writeMainMaster, writeMasterListWithText, writeSlideAtom, writeSlideAtomForSlide } from "./document/master-write.js";
12
15
  import { NotesPersist, readNotesListWithText } from "./document/notes-list.js";
13
16
  import { writeNotesListWithText } from "./document/notes-list-write.js";
@@ -15,19 +18,20 @@ import { writeNotesAtom, writeNotesContainer } from "./document/notes-write.js";
15
18
  import { NOTES_MASTER_SLIDE_ID_REF, NotesAtom, readNotesAtom, readNotesContainerAtom, readNotesText } from "./document/notes.js";
16
19
  import { SlidePersistRef, writeSlideListWithText } from "./document/slide-list-write.js";
17
20
  import { OutlineText, SlidePersist, readSlideListWithText } from "./document/slide-list.js";
18
- import { DrawingShape, writeDrawingWithClientData, writeSlideDrawing } from "./drawing/shapes-write.js";
19
- import { PptShape, ShapeRect, readDrawingShapes } from "./drawing/shapes.js";
21
+ import { PptBlip, blipForPib, isBlipFormat, readBlipStore, writeDrawingGroupContainer } from "./drawing/blips.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
+ import { PptShape, PptTable, ShapeRect, readDrawingShapes } from "./drawing/shapes.js";
20
24
  import { PptEncryptedError, PptFormatError, PptUnsupportedContentError } from "./errors.js";
21
25
  import { layoutMetadataToSummaryInformation } from "./metadata.js";
22
- import { CURRENT_USER_STREAM, DEFAULT_INSET_LEFT_RIGHT_PT, DEFAULT_INSET_TOP_BOTTOM_PT, POWERPOINT_DOCUMENT_STREAM, PptDocument, SUMMARY_INFORMATION_STREAM, readPpt, readPptContent, readPptStreams } from "./read.js";
23
- import { OfficeArtChildAnchor, OfficeArtClientAnchor, OfficeArtClientData, OfficeArtClientTextbox, OfficeArtDgContainer, OfficeArtFOPT, OfficeArtFSP, OfficeArtFSPGR, OfficeArtSpContainer, OfficeArtSpgrContainer, RT_CString, RT_ColorSchemeAtom, RT_CryptSession10Container, RT_CurrentUserAtom, RT_Document, RT_DocumentAtom, RT_Drawing, RT_DrawingGroup, RT_Environment, RT_ExternalObjectList, 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";
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
+ 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";
24
28
  import { RecordWriteOptions, asciiBytes, concatBytes, i16le, i32le, u16le, u32le, u8, utf16le, writeAtom, writeContainer } from "./record/write.js";
25
- 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";
26
30
  import { writeCurrentUserAtom } from "./stream/current-user-write.js";
27
31
  import { PersistDirectory, UserEdit, buildPersistDirectory, readPersistDirectoryAtom, readUserEditAtom, resolvePersistObject } from "./stream/persist.js";
28
32
  import { PersistDirectoryEntryToWrite, UserEditFields, writePersistDirectoryAtom, writeUserEditAtom } from "./stream/persist-write.js";
29
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";
30
34
  import { writeStyleTextPropAtom } from "./text/style-write.js";
31
- import { MASTER_UNITS_PER_POINT, POINTS_PER_INCH, masterUnitsToPoints, pointsToMasterUnits } from "./units.js";
32
- import { writePpt, writePptContent, writePptStreams } from "./write.js";
33
- 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, LINE_BREAK, MASTER_SLIDE_ID, MASTER_UNITS_PER_POINT, MasterStyleLevel, MasterTextStyleAtom, NOTES_MASTER_SLIDE_ID_REF, NotesAtom, NotesPersist, OfficeArtChildAnchor, OfficeArtClientAnchor, OfficeArtClientData, OfficeArtClientTextbox, OfficeArtDgContainer, OfficeArtFOPT, OfficeArtFSP, OfficeArtFSPGR, OfficeArtSpContainer, OfficeArtSpgrContainer, 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, POINTS_PER_INCH, POWERPOINT_DOCUMENT_STREAM, ParagraphProperties, PersistDirectory, PersistDirectoryEntryToWrite, PointStruct, PptDocument, PptEncryptedError, PptFormatError, PptRecord, PptShape, 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_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, ShapeRect, SlidePersist, SlidePersistRef, StyleRun, StyleTextProps, 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, asciiBytes, buildParagraphs, buildPersistDirectory, buildTextBody, characterCountOf, childRecords, collectFontFamilies, concatBytes, findChild, findChildren, findDescendants, i16le, i32le, isContainerRecord, layoutMetadataToSummaryInformation, masterUnitsToPoints, pointsToMasterUnits, readCurrentUserAtom, readDocumentAtom, readDrawingShapes, readFontNames, readNotesAtom, readNotesContainerAtom, readNotesListWithText, readNotesText, readPersistDirectoryAtom, readPpt, readPptContent, readPptStreams, readRecordAt, readRecordHeader, readRecordSequence, readSlideListWithText, readStyleTextPropAtom, readTextBody, readTextHeaderAtom, readTextMasterStyleAtom, readUserEditAtom, resolvePersistObject, splitParagraphs, u16le, u32le, u8, utf16le, writeAtom, writeContainer, writeCurrentUserAtom, writeDocumentAtom, writeDrawingWithClientData, writeEnvironment, writeMainMaster, writeMasterListWithText, writeNotesAtom, writeNotesContainer, writeNotesListWithText, writePersistDirectoryAtom, writePpt, writePptContent, writePptStreams, 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
@@ -1,27 +1,31 @@
1
+ import { base64ToBytes, bytesToBase64 } from "./base64.js";
1
2
  import { PptEncryptedError, PptFormatError, PptUnsupportedContentError } from "./errors.js";
2
3
  import { CONTAINER_REC_VER, RECORD_HEADER_SIZE, isContainerRecord, readRecordHeader } from "./record/header.js";
3
4
  import { childRecords, findChild, findChildren, findDescendants, readRecordAt, readRecordSequence } from "./record/tree.js";
4
- import { OfficeArtChildAnchor, OfficeArtClientAnchor, OfficeArtClientData, OfficeArtClientTextbox, OfficeArtDgContainer, OfficeArtFOPT, OfficeArtFSP, OfficeArtFSPGR, OfficeArtSpContainer, OfficeArtSpgrContainer, RT_CString, RT_ColorSchemeAtom, RT_CryptSession10Container, RT_CurrentUserAtom, RT_Document, RT_DocumentAtom, RT_Drawing, RT_DrawingGroup, RT_Environment, RT_ExternalObjectList, 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";
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";
5
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";
6
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";
7
- 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";
8
9
  import { buildTextBody, collectFontFamilies } from "./content-write.js";
9
10
  import { buildParagraphs } from "./content.js";
11
+ import { NOOP_PPT_DIAGNOSTIC_SINK, PptDiagnosticCodes } from "./diagnostics.js";
10
12
  import { asciiBytes, concatBytes, i16le, i32le, u16le, u32le, u8, utf16le, writeAtom, writeContainer } from "./record/write.js";
11
13
  import { writeSlideSchemeColorSchemeAtom } from "./document/color-scheme-write.js";
12
14
  import { readDocumentAtom } from "./document/document-atom.js";
13
15
  import { writeDocumentAtom } from "./document/document-atom-write.js";
14
16
  import { readFontNames } from "./document/fonts.js";
15
17
  import { writeEnvironment } from "./document/fonts-write.js";
16
- import { writeStyleTextPropAtom } from "./text/style-write.js";
17
- import { writeDrawingWithClientData, writeSlideDrawing } from "./drawing/shapes-write.js";
18
+ import { blipForPib, isBlipFormat, readBlipStore, writeDrawingGroupContainer } from "./drawing/blips.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";
18
20
  import { readNotesListWithText } from "./document/notes-list.js";
19
21
  import { readDrawingShapes } from "./drawing/shapes.js";
20
22
  import { NOTES_MASTER_SLIDE_ID_REF, readNotesAtom, readNotesContainerAtom, readNotesText } from "./document/notes.js";
21
23
  import { readSlideListWithText } from "./document/slide-list.js";
22
- 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";
23
25
  import { buildPersistDirectory, readPersistDirectoryAtom, readUserEditAtom, resolvePersistObject } from "./stream/persist.js";
24
- import { CURRENT_USER_STREAM, DEFAULT_INSET_LEFT_RIGHT_PT, DEFAULT_INSET_TOP_BOTTOM_PT, POWERPOINT_DOCUMENT_STREAM, SUMMARY_INFORMATION_STREAM, readPpt, readPptContent, readPptStreams } from "./read.js";
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";
25
29
  import { MASTER_SLIDE_ID, writeMainMaster, writeMasterListWithText, writeSlideAtom, writeSlideAtomForSlide } from "./document/master-write.js";
26
30
  import { writeNotesListWithText } from "./document/notes-list-write.js";
27
31
  import { writeNotesAtom, writeNotesContainer } from "./document/notes-write.js";
@@ -30,4 +34,4 @@ import { layoutMetadataToSummaryInformation } from "./metadata.js";
30
34
  import { writeCurrentUserAtom } from "./stream/current-user-write.js";
31
35
  import { writePersistDirectoryAtom, writeUserEditAtom } from "./stream/persist-write.js";
32
36
  import { writePpt, writePptContent, writePptStreams } from "./write.js";
33
- 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, NOTES_MASTER_SLIDE_ID_REF, OfficeArtChildAnchor, OfficeArtClientAnchor, OfficeArtClientData, OfficeArtClientTextbox, OfficeArtDgContainer, OfficeArtFOPT, OfficeArtFSP, OfficeArtFSPGR, OfficeArtSpContainer, OfficeArtSpgrContainer, 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, POINTS_PER_INCH, POWERPOINT_DOCUMENT_STREAM, 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_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, 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, buildParagraphs, buildPersistDirectory, buildTextBody, characterCountOf, childRecords, collectFontFamilies, concatBytes, findChild, findChildren, findDescendants, i16le, i32le, isContainerRecord, layoutMetadataToSummaryInformation, masterUnitsToPoints, pointsToMasterUnits, readCurrentUserAtom, readDocumentAtom, readDrawingShapes, readFontNames, readNotesAtom, readNotesContainerAtom, readNotesListWithText, readNotesText, readPersistDirectoryAtom, readPpt, readPptContent, readPptStreams, readRecordAt, readRecordHeader, readRecordSequence, readSlideListWithText, readStyleTextPropAtom, readTextBody, readTextHeaderAtom, readTextMasterStyleAtom, readUserEditAtom, resolvePersistObject, splitParagraphs, u16le, u32le, u8, utf16le, writeAtom, writeContainer, writeCurrentUserAtom, writeDocumentAtom, writeDrawingWithClientData, writeEnvironment, writeMainMaster, writeMasterListWithText, writeNotesAtom, writeNotesContainer, writeNotesListWithText, writePersistDirectoryAtom, writePpt, writePptContent, writePptStreams, 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 };
@@ -0,0 +1,63 @@
1
+ import { PptFormatError } from "../errors.js";
2
+ import { childRecords, findChild, readRecordAt } from "../record/tree.js";
3
+ import { RT_ExternalObjectList, RT_ExternalObjectRefAtom, RT_ExternalOleObjectAtom } from "../record/types.js";
4
+ import { decodeUtf16Le } from "../stream/current-user.js";
5
+ import { inflate } from "byte-codec";
6
+ //#region src/ole/embedded.ts
7
+ const EX_OLE_OBJ_ATOM_LEN = 24;
8
+ function readExOleObjAtom(record) {
9
+ if (record.data.length < EX_OLE_OBJ_ATOM_LEN) throw new PptFormatError(`ExOleObjAtom at offset ${record.offset} carries ${record.data.length} bytes, fewer than the ${EX_OLE_OBJ_ATOM_LEN} its fields need`);
10
+ const view = new DataView(record.data.buffer, record.data.byteOffset, record.data.byteLength);
11
+ return {
12
+ exObjId: view.getUint32(8, true),
13
+ persistIdRef: view.getUint32(16, true)
14
+ };
15
+ }
16
+ const PROG_ID_ATOM_INSTANCE = 2;
17
+ function readExOleEmbedContainer(container) {
18
+ const children = childRecords(container);
19
+ const objAtom = findChild(children, RT_ExternalOleObjectAtom);
20
+ if (objAtom === void 0) return;
21
+ const progIdAtom = children.find((child) => child.header.recType === 4026 && child.header.recInstance === PROG_ID_ATOM_INSTANCE);
22
+ return {
23
+ ...readExOleObjAtom(objAtom),
24
+ progId: progIdAtom === void 0 ? void 0 : decodeUtf16Le(progIdAtom.data)
25
+ };
26
+ }
27
+ function readExternalOleEmbeds(documentChildren) {
28
+ const embeds = /* @__PURE__ */ new Map();
29
+ const objList = findChild(documentChildren, RT_ExternalObjectList);
30
+ if (objList === void 0) return embeds;
31
+ for (const child of childRecords(objList)) {
32
+ if (child.header.recType !== 4044) continue;
33
+ const embed = readExOleEmbedContainer(child);
34
+ if (embed !== void 0) embeds.set(embed.exObjId, embed);
35
+ }
36
+ return embeds;
37
+ }
38
+ function readExObjIdRef(clientData) {
39
+ const record = findChild(childRecords(clientData), RT_ExternalObjectRefAtom);
40
+ if (record === void 0 || record.data.length < 4) return;
41
+ return new DataView(record.data.buffer, record.data.byteOffset, record.data.byteLength).getUint32(0, true);
42
+ }
43
+ const EX_OLE_OBJ_STG_INSTANCE_COMPRESSED = 1;
44
+ function resolveOleObjectStorage(streamBytes, directory, persistIdRef) {
45
+ const offset = directory.get(persistIdRef);
46
+ if (offset === void 0) return;
47
+ let record;
48
+ try {
49
+ record = readRecordAt(streamBytes, offset);
50
+ } catch {
51
+ return;
52
+ }
53
+ if (record.header.recType !== 4113) return;
54
+ if (record.header.recInstance !== EX_OLE_OBJ_STG_INSTANCE_COMPRESSED) return record.data;
55
+ if (record.data.length < 4) return;
56
+ try {
57
+ return inflate(record.data.subarray(4));
58
+ } catch {
59
+ return;
60
+ }
61
+ }
62
+ //#endregion
63
+ export { readExObjIdRef, readExternalOleEmbeds, resolveOleObjectStorage };