@stll/folio-core 0.15.0 → 0.15.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/ai-edits/apply.d.ts +2 -2
- package/dist/ai-edits/blockRange.d.ts +3 -17
- package/dist/ai-edits/clean-text.d.ts +0 -1
- package/dist/ai-edits/headless.d.ts +23 -19
- package/dist/ai-edits/read.d.ts +8 -5
- package/dist/ai-edits/scoped-reading.d.ts +0 -1
- package/dist/ai-edits/snapshot.d.ts +1 -7
- package/dist/ai-edits/table-cell-mutations.d.ts +4 -31
- package/dist/ai-edits/table-row-column-mutations.d.ts +9 -39
- package/dist/ai-edits/table-targets.d.ts +0 -1
- package/dist/ai-edits/types.d.ts +32 -17
- package/dist/ai-suggestions/apply.d.ts +0 -1
- package/dist/ai-suggestions/conflict.d.ts +0 -1
- package/dist/ai-suggestions/text-positions.d.ts +2 -2
- package/dist/ai-suggestions/types.d.ts +27 -13
- package/dist/content-controls/errors.d.ts +0 -1
- package/dist/content-controls/findContentControls.d.ts +6 -4
- package/dist/content-controls/mutateContentControls.d.ts +0 -1
- package/dist/controller/activeEditorStory.d.ts +1 -6
- package/dist/controller/collaborationModules.d.ts +0 -1
- package/dist/controller/contentControlWidgetController.d.ts +0 -1
- package/dist/controller/folioEditor.d.ts +2 -2
- package/dist/controller/folioEditorEvents.d.ts +5 -3
- package/dist/controller/fontReadiness.d.ts +0 -1
- package/dist/controller/headerFooterEditorManager.d.ts +1 -5
- package/dist/controller/hiddenEditorApi.d.ts +35 -18
- package/dist/controller/hiddenEditorManager.d.ts +5 -3
- package/dist/controller/latestRequestGate.d.ts +3 -1
- package/dist/controller/layoutPipeline.d.ts +1 -1
- package/dist/controller/layoutScheduler.d.ts +8 -5
- package/dist/controller/layoutSession.d.ts +0 -1
- package/dist/controller/noteEditorManager.d.ts +0 -1
- package/dist/document-operations.d.ts +5 -12
- package/dist/document-stories.d.ts +0 -1
- package/dist/docx/blockContentParser.d.ts +0 -1
- package/dist/docx/blockContentParser.js +1 -0
- package/dist/docx/bookmarkParser.d.ts +5 -3
- package/dist/docx/bookmarkPlacement.d.ts +0 -1
- package/dist/docx/commentParser.d.ts +0 -1
- package/dist/docx/commentParser.js +30 -2
- package/dist/docx/commentRangeIntegrity.d.ts +0 -1
- package/dist/docx/commentReferenceNormalization.d.ts +1 -9
- package/dist/docx/commentReplyMarkers.d.ts +0 -1
- package/dist/docx/compatibility.d.ts +0 -1
- package/dist/docx/conformance.d.ts +0 -1
- package/dist/docx/corePropertiesParser.d.ts +0 -1
- package/dist/docx/documentParser.d.ts +0 -1
- package/dist/docx/documentParser.js +3 -1
- package/dist/docx/drawingIdNormalization.d.ts +5 -0
- package/dist/docx/drawingIdNormalization.js +35 -0
- package/dist/docx/drawingUtils.d.ts +24 -3
- package/dist/docx/drawingUtils.js +134 -28
- package/dist/docx/encryption/agileDecryption.d.ts +0 -1
- package/dist/docx/encryption/cryptoBytes.js +4 -1
- package/dist/docx/encryption/openEncryptedDocx.d.ts +5 -2
- package/dist/docx/ensureParaIds.d.ts +7 -3
- package/dist/docx/fieldParser.d.ts +23 -11
- package/dist/docx/fontTableParser.d.ts +0 -1
- package/dist/docx/footnoteParser.d.ts +26 -13
- package/dist/docx/footnoteParser.js +4 -2
- package/dist/docx/groupDrawingParser.d.ts +0 -1
- package/dist/docx/headerFooterParser.d.ts +9 -5
- package/dist/docx/headerFooterRefParser.d.ts +0 -1
- package/dist/docx/headerFooterReferenceNormalization.d.ts +1 -6
- package/dist/docx/headerFooterVerbatim.d.ts +4 -3
- package/dist/docx/headerFooterVerbatim.js +6 -1
- package/dist/docx/hyperlinkParser.d.ts +0 -1
- package/dist/docx/hyperlinkParser.js +1 -9
- package/dist/docx/imageParser.d.ts +0 -1
- package/dist/docx/imageParser.js +15 -7
- package/dist/docx/mathToMathml.d.ts +0 -1
- package/dist/docx/metadataPrivacy.d.ts +1 -3
- package/dist/docx/modelValidation.d.ts +0 -1
- package/dist/docx/newImage.d.ts +11 -0
- package/dist/docx/newImage.js +11 -0
- package/dist/docx/normalizeBaseDirection.d.ts +0 -1
- package/dist/docx/notePropertiesParser.d.ts +0 -1
- package/dist/docx/numberingParser.d.ts +10 -6
- package/dist/docx/numberingParser.js +4 -2
- package/dist/docx/numberingReferenceNormalization.d.ts +1 -9
- package/dist/docx/paragraphParser.d.ts +0 -1
- package/dist/docx/paragraphParser.js +31 -15
- package/dist/docx/paragraphTextBoxEnrichment.d.ts +0 -1
- package/dist/docx/paragraphTextBoxEnrichment.js +2 -1
- package/dist/docx/paragraphTraversal.d.ts +5 -10
- package/dist/docx/paragraphTraversal.js +20 -13
- package/dist/docx/parser.d.ts +15 -8
- package/dist/docx/parser.js +22 -1
- package/dist/docx/parserEnums.d.ts +5 -2
- package/dist/docx/parserEnums.js +6 -2
- package/dist/docx/relsParser.d.ts +1 -0
- package/dist/docx/renderedPageBreakNormalization.d.ts +12 -0
- package/dist/docx/renderedPageBreakNormalization.js +59 -0
- package/dist/docx/replyToComment.d.ts +2 -2
- package/dist/docx/rezip.d.ts +6 -7
- package/dist/docx/rezip.js +136 -102
- package/dist/docx/runConsolidator.d.ts +0 -1
- package/dist/docx/runConsolidator.js +0 -1
- package/dist/docx/runParser.d.ts +0 -1
- package/dist/docx/runParser.js +25 -12
- package/dist/docx/sdtProperties.d.ts +0 -1
- package/dist/docx/sdtPropertiesPatch.d.ts +0 -1
- package/dist/docx/sectionParser.d.ts +0 -1
- package/dist/docx/selectiveSave.d.ts +5 -3
- package/dist/docx/selectiveSave.js +2 -2
- package/dist/docx/selectiveSaveFlags.d.ts +4 -2
- package/dist/docx/selectiveXmlPatch.js +20 -8
- package/dist/docx/serializer/blockSdtSerializer.d.ts +0 -1
- package/dist/docx/serializer/blockSdtSerializer.js +2 -1
- package/dist/docx/serializer/borderSerializer.d.ts +0 -1
- package/dist/docx/serializer/commentSerializer.d.ts +0 -1
- package/dist/docx/serializer/commentSerializer.js +19 -40
- package/dist/docx/serializer/documentSerializer.d.ts +0 -1
- package/dist/docx/serializer/documentSerializer.js +1 -1
- package/dist/docx/serializer/fontTableSerializer.d.ts +0 -1
- package/dist/docx/serializer/headerFooterSerializer.d.ts +0 -1
- package/dist/docx/serializer/headerFooterSerializer.js +1 -1
- package/dist/docx/serializer/noteSerializer.d.ts +0 -1
- package/dist/docx/serializer/noteSerializer.js +1 -1
- package/dist/docx/serializer/numberingSerializer.d.ts +0 -1
- package/dist/docx/serializer/paragraphSerializer.d.ts +0 -1
- package/dist/docx/serializer/paragraphSerializer.js +10 -23
- package/dist/docx/serializer/runSerializer.d.ts +0 -1
- package/dist/docx/serializer/runSerializer.js +53 -32
- package/dist/docx/serializer/sectionPropertiesSerializer.d.ts +0 -1
- package/dist/docx/serializer/sectionPropertiesSerializer.js +7 -5
- package/dist/docx/serializer/settingsSerializer.d.ts +0 -1
- package/dist/docx/serializer/stylesSerializer.d.ts +0 -1
- package/dist/docx/serializer/tableSerializer.d.ts +0 -1
- package/dist/docx/serializer/tableSerializer.js +2 -0
- package/dist/docx/serializer/themeSerializer.d.ts +0 -1
- package/dist/docx/serializer/xmlUtils.js +10 -1
- package/dist/docx/server/applyDocxXmlPatchProposal.d.ts +3 -10
- package/dist/docx/server/docxToMarkdown.d.ts +0 -1
- package/dist/docx/server/evaluateDocxXmlPatchProposal.d.ts +3 -9
- package/dist/docx/server/inspectDocxPackage.d.ts +3 -8
- package/dist/docx/server/validateDocxConformance.d.ts +0 -1
- package/dist/docx/settingsParser.d.ts +2 -2
- package/dist/docx/shapeParser.d.ts +0 -1
- package/dist/docx/shapeParser.js +16 -123
- package/dist/docx/streamingXmlParser.d.ts +16 -0
- package/dist/docx/streamingXmlParser.js +248 -0
- package/dist/docx/styleParser.d.ts +0 -1
- package/dist/docx/styleParser.js +6 -4
- package/dist/docx/tableParser.d.ts +1 -2
- package/dist/docx/tableParser.js +11 -12
- package/dist/docx/textBoxParser.d.ts +1 -2
- package/dist/docx/textBoxParser.js +5 -2
- package/dist/docx/textWhitespace.d.ts +4 -0
- package/dist/docx/textWhitespace.js +4 -0
- package/dist/docx/themeParser.d.ts +0 -1
- package/dist/docx/trackedMoveRangeNormalization.d.ts +1 -8
- package/dist/docx/unzip.d.ts +6 -3
- package/dist/docx/unzip.js +96 -40
- package/dist/docx/vmlImageParser.d.ts +0 -1
- package/dist/docx/vmlImageParser.js +3 -1
- package/dist/docx/watermarkParser.d.ts +0 -1
- package/dist/docx/xmlParser.d.ts +21 -8
- package/dist/docx/xmlParser.js +126 -43
- package/dist/fields/bookmarkPages.d.ts +0 -1
- package/dist/fields/bookmarkText.d.ts +0 -1
- package/dist/fields/evaluateField.d.ts +5 -3
- package/dist/fields/fieldContext.d.ts +11 -5
- package/dist/fields/resolveFieldValues.d.ts +4 -3
- package/dist/fields/sectionPageCounts.d.ts +0 -1
- package/dist/fields/seqValues.d.ts +0 -1
- package/dist/fonts/embeddedFontTable.d.ts +5 -2
- package/dist/fonts/embeddedFonts.d.ts +15 -7
- package/dist/index.d.ts +1 -0
- package/dist/layout-bridge/cellSelectionHighlight.d.ts +0 -1
- package/dist/layout-bridge/convert/footnoteLayout.d.ts +5 -3
- package/dist/layout-bridge/convert/headerFooterLayout.d.ts +2 -2
- package/dist/layout-bridge/convert/paragraphFrames.d.ts +0 -1
- package/dist/layout-bridge/convert/templatePreviewFlow.d.ts +8 -8
- package/dist/layout-bridge/convert/toFlowBlocks.d.ts +25 -13
- package/dist/layout-bridge/convert/wrapEditorViewAsSurface.d.ts +3 -2
- package/dist/layout-bridge/dom/findHfPmSpans.d.ts +2 -1
- package/dist/layout-bridge/dom/noteStoryDom.d.ts +0 -1
- package/dist/layout-bridge/engine/clickToPosition.d.ts +5 -3
- package/dist/layout-bridge/engine/hitTest.d.ts +40 -19
- package/dist/layout-bridge/engine/selectionRects.d.ts +16 -8
- package/dist/layout-bridge/engine/tableWidthUtils.d.ts +0 -1
- package/dist/layout-bridge/headerFooterLayout.d.ts +0 -1
- package/dist/layout-bridge/sectionColumns.d.ts +0 -1
- package/dist/layout-bridge/tableInsertHover.d.ts +8 -4
- package/dist/layout-engine/headerFooterRefs.d.ts +0 -1
- package/dist/layout-engine/index.d.ts +0 -1
- package/dist/layout-engine/justificationCompatibility.d.ts +0 -1
- package/dist/layout-engine/keep-together.d.ts +7 -4
- package/dist/layout-engine/layoutInstrumentation.d.ts +0 -1
- package/dist/layout-engine/lineFlow.d.ts +0 -1
- package/dist/layout-engine/measure/cache.d.ts +0 -1
- package/dist/layout-engine/measure/effectiveLineBreakPolicy.d.ts +6 -7
- package/dist/layout-engine/measure/floatingTablePosition.d.ts +0 -1
- package/dist/layout-engine/measure/floatingZones.d.ts +14 -6
- package/dist/layout-engine/measure/font-metrics.worker.d.ts +0 -1
- package/dist/layout-engine/measure/lineBreakProvider.d.ts +20 -9
- package/dist/layout-engine/measure/lineBreaks.d.ts +0 -1
- package/dist/layout-engine/measure/listMarkerWidth.d.ts +0 -1
- package/dist/layout-engine/measure/measureBlocks.d.ts +1 -0
- package/dist/layout-engine/measure/measureContainer.d.ts +0 -1
- package/dist/layout-engine/measure/measureHelpers.d.ts +0 -1
- package/dist/layout-engine/measure/measureParagraph.d.ts +3 -2
- package/dist/layout-engine/measure/measureParagraph.js +23 -3
- package/dist/layout-engine/measure/measureProvider.d.ts +0 -1
- package/dist/layout-engine/measure/measureTypes.d.ts +4 -2
- package/dist/layout-engine/measure/measureWorker.d.ts +0 -1
- package/dist/layout-engine/measure/measureWorkerProtocol.d.ts +0 -1
- package/dist/layout-engine/measure/tableCellFloating.d.ts +0 -1
- package/dist/layout-engine/measure/tableCellFlow.d.ts +0 -1
- package/dist/layout-engine/measure/tableCellGrid.d.ts +0 -1
- package/dist/layout-engine/measure/textBoxParagraphLayout.d.ts +0 -1
- package/dist/layout-engine/measure/textMeasurementPolicy.d.ts +0 -1
- package/dist/layout-engine/paginator.d.ts +66 -33
- package/dist/layout-engine/paragraphFragmentRange.d.ts +0 -1
- package/dist/layout-engine/paragraphFrame.d.ts +0 -1
- package/dist/layout-engine/paragraphSequence.d.ts +0 -1
- package/dist/layout-engine/paragraphSpacing.d.ts +1 -5
- package/dist/layout-engine/pmPageIndex.d.ts +0 -1
- package/dist/layout-engine/renderedBreakReconciliation.d.ts +2 -17
- package/dist/layout-engine/section-breaks.d.ts +34 -17
- package/dist/layout-engine/tableRowBreak.d.ts +4 -3
- package/dist/layout-engine/textBoxFlow.d.ts +0 -1
- package/dist/layout-engine/textBoxGroup.d.ts +0 -1
- package/dist/layout-engine/types.d.ts +382 -189
- package/dist/layout-painter/anchoredImagePosition.d.ts +0 -1
- package/dist/layout-painter/borderStroke.d.ts +0 -1
- package/dist/layout-painter/imageLayout.d.ts +14 -7
- package/dist/layout-painter/index.d.ts +9 -5
- package/dist/layout-painter/registry/modules/image.d.ts +0 -1
- package/dist/layout-painter/registry/modules/paragraph.d.ts +0 -1
- package/dist/layout-painter/registry/modules/table.d.ts +0 -1
- package/dist/layout-painter/registry/modules/textBox.d.ts +0 -1
- package/dist/layout-painter/registry/modules.d.ts +0 -1
- package/dist/layout-painter/registry/registry.d.ts +0 -1
- package/dist/layout-painter/registry/types.d.ts +0 -1
- package/dist/layout-painter/renderFragment.d.ts +2 -2
- package/dist/layout-painter/renderImage.d.ts +0 -1
- package/dist/layout-painter/renderPage.d.ts +71 -42
- package/dist/layout-painter/renderParagraph.d.ts +28 -14
- package/dist/layout-painter/renderParagraph.js +6 -2
- package/dist/layout-painter/renderTable.d.ts +0 -1
- package/dist/layout-painter/renderTextBox.d.ts +0 -1
- package/dist/layout-painter/renderUtils.d.ts +17 -9
- package/dist/layout-painter/renderWatermark.d.ts +2 -2
- package/dist/layout-painter/sdtBoundary.d.ts +0 -1
- package/dist/managers/AutoSaveManager.d.ts +22 -11
- package/dist/managers/ClipboardManager.d.ts +0 -1
- package/dist/managers/ContextMenuManager.d.ts +5 -8
- package/dist/managers/DocumentLoaderManager.d.ts +12 -6
- package/dist/managers/EditorModeManager.d.ts +3 -2
- package/dist/managers/ErrorManager.d.ts +0 -1
- package/dist/managers/FindReplaceManager.d.ts +0 -1
- package/dist/managers/HistoryManager.d.ts +19 -9
- package/dist/managers/TableSelectionManager.d.ts +0 -1
- package/dist/managers/editorShortcuts.d.ts +4 -6
- package/dist/markdown/annotations.d.ts +0 -1
- package/dist/markdown/fromMarkdown.d.ts +0 -1
- package/dist/markdown/images.d.ts +0 -1
- package/dist/markdown/index.d.ts +0 -1
- package/dist/markdown/internals.d.ts +0 -1
- package/dist/markdown/renderBlock.d.ts +0 -1
- package/dist/markdown/renderParagraph.d.ts +0 -1
- package/dist/markdown/renderRuns.d.ts +0 -1
- package/dist/markdown/renderTable.d.ts +0 -1
- package/dist/markdown/trailers.d.ts +0 -1
- package/dist/markdown/types.d.ts +39 -18
- package/dist/model.d.ts +3 -5
- package/dist/model.js +2 -2
- package/dist/paged-layout/incrementalMeasure.d.ts +1 -10
- package/dist/paged-layout/pageText.d.ts +1 -1
- package/dist/paged-layout/paragraphFlash.d.ts +0 -1
- package/dist/paged-layout/paragraphFlashTypes.d.ts +5 -2
- package/dist/paged-layout/rangeProjection.d.ts +10 -5
- package/dist/paged-layout/scrollNavigation.d.ts +0 -1
- package/dist/paged-layout/scrollPageInfo.d.ts +12 -13
- package/dist/paged-layout/scrollToPmPosition.d.ts +0 -1
- package/dist/paged-layout/sectionBlockWidths.d.ts +2 -11
- package/dist/paged-layout/sectionGeometry.d.ts +0 -1
- package/dist/paged-layout/selectionViewportRect.d.ts +0 -1
- package/dist/paged-layout/transactionDirtyRange.d.ts +0 -1
- package/dist/paged-layout/zoomScrollAnchor.d.ts +2 -12
- package/dist/prosemirror/attrs/index.d.ts +6 -4
- package/dist/prosemirror/attrs/index.js +22 -2
- package/dist/prosemirror/autospacingBase.d.ts +0 -1
- package/dist/prosemirror/cellDragSelection.d.ts +6 -4
- package/dist/prosemirror/commands/comments.d.ts +6 -4
- package/dist/prosemirror/commands/contentControls.d.ts +5 -3
- package/dist/prosemirror/commands/contentControlsBlockFill.d.ts +1 -1
- package/dist/prosemirror/commands/formatPainter.d.ts +0 -1
- package/dist/prosemirror/commands/formatting.d.ts +1 -1
- package/dist/prosemirror/commands/hyperlink.d.ts +4 -9
- package/dist/prosemirror/commands/image.d.ts +0 -1
- package/dist/prosemirror/commands/pageBreak.d.ts +0 -1
- package/dist/prosemirror/commands/paragraph.d.ts +0 -1
- package/dist/prosemirror/commands/pastePlainText.d.ts +0 -1
- package/dist/prosemirror/commands/propertyChangeScope.d.ts +0 -1
- package/dist/prosemirror/commands/sectionBreak.d.ts +0 -1
- package/dist/prosemirror/commands/table.d.ts +0 -1
- package/dist/prosemirror/commands/tableCellMergeResolution.d.ts +0 -1
- package/dist/prosemirror/commentIdAllocator.d.ts +2 -2
- package/dist/prosemirror/commentOps.d.ts +0 -1
- package/dist/prosemirror/conversion/effectiveTableCellFormatting.d.ts +1 -10
- package/dist/prosemirror/conversion/fromProseDoc.d.ts +0 -1
- package/dist/prosemirror/conversion/fromProseDoc.js +17 -10
- package/dist/prosemirror/conversion/runShadingMark.d.ts +0 -1
- package/dist/prosemirror/conversion/sdtAttrs.d.ts +0 -1
- package/dist/prosemirror/conversion/toProseDoc.d.ts +3 -2
- package/dist/prosemirror/conversion/toProseDoc.js +17 -3
- package/dist/prosemirror/extensions/ExtensionManager.d.ts +0 -1
- package/dist/prosemirror/extensions/StarterKit.d.ts +7 -4
- package/dist/prosemirror/extensions/core/DocExtension.d.ts +0 -1
- package/dist/prosemirror/extensions/core/HistoryExtension.d.ts +0 -1
- package/dist/prosemirror/extensions/core/ParagraphExtension.d.ts +0 -1
- package/dist/prosemirror/extensions/core/TextExtension.d.ts +0 -1
- package/dist/prosemirror/extensions/create.d.ts +0 -1
- package/dist/prosemirror/extensions/features/AutoBidiDetectionExtension.d.ts +0 -1
- package/dist/prosemirror/extensions/features/BaseKeymapExtension.d.ts +0 -1
- package/dist/prosemirror/extensions/features/BidiShortcutExtension.d.ts +0 -1
- package/dist/prosemirror/extensions/features/ContentControlWidgetsExtension.d.ts +0 -1
- package/dist/prosemirror/extensions/features/DropCursorExtension.d.ts +0 -1
- package/dist/prosemirror/extensions/features/EmptyParagraphFormatExtension.d.ts +0 -1
- package/dist/prosemirror/extensions/features/GapCursorExtension.d.ts +0 -1
- package/dist/prosemirror/extensions/features/ImageDragExtension.d.ts +0 -1
- package/dist/prosemirror/extensions/features/ImagePasteExtension.d.ts +0 -1
- package/dist/prosemirror/extensions/features/ListExtension.d.ts +0 -1
- package/dist/prosemirror/extensions/features/ParaIdAllocatorExtension.d.ts +0 -1
- package/dist/prosemirror/extensions/features/ParagraphChangeTrackerExtension.d.ts +7 -4
- package/dist/prosemirror/extensions/features/PasteCleanupExtension.d.ts +0 -1
- package/dist/prosemirror/extensions/features/PasteStyleInlinerExtension.d.ts +0 -1
- package/dist/prosemirror/extensions/features/SelectionTrackerExtension.d.ts +0 -1
- package/dist/prosemirror/extensions/features/bidiShortcutController.d.ts +3 -1
- package/dist/prosemirror/extensions/marks/AllCapsExtension.d.ts +0 -1
- package/dist/prosemirror/extensions/marks/BoldExtension.d.ts +0 -1
- package/dist/prosemirror/extensions/marks/CharacterSpacingExtension.d.ts +0 -1
- package/dist/prosemirror/extensions/marks/CharacterStyleExtension.d.ts +0 -1
- package/dist/prosemirror/extensions/marks/CommentExtension.d.ts +0 -1
- package/dist/prosemirror/extensions/marks/FontFamilyExtension.d.ts +0 -1
- package/dist/prosemirror/extensions/marks/FontFamilyExtension.js +1 -0
- package/dist/prosemirror/extensions/marks/FontSizeExtension.d.ts +0 -1
- package/dist/prosemirror/extensions/marks/FootnoteRefExtension.d.ts +0 -1
- package/dist/prosemirror/extensions/marks/HiddenTextExtension.d.ts +0 -1
- package/dist/prosemirror/extensions/marks/HighlightExtension.d.ts +0 -1
- package/dist/prosemirror/extensions/marks/HyperlinkExtension.d.ts +0 -1
- package/dist/prosemirror/extensions/marks/ItalicExtension.d.ts +0 -1
- package/dist/prosemirror/extensions/marks/LanguageExtension.d.ts +0 -1
- package/dist/prosemirror/extensions/marks/RtlExtension.d.ts +0 -1
- package/dist/prosemirror/extensions/marks/RunFormattingOverrideExtension.d.ts +0 -1
- package/dist/prosemirror/extensions/marks/RunShadingExtension.d.ts +0 -1
- package/dist/prosemirror/extensions/marks/SmallCapsExtension.d.ts +0 -1
- package/dist/prosemirror/extensions/marks/StrikeExtension.d.ts +0 -1
- package/dist/prosemirror/extensions/marks/SubscriptExtension.d.ts +0 -1
- package/dist/prosemirror/extensions/marks/SuperscriptExtension.d.ts +0 -1
- package/dist/prosemirror/extensions/marks/TextColorExtension.d.ts +0 -1
- package/dist/prosemirror/extensions/marks/TextEffectExtension.d.ts +0 -1
- package/dist/prosemirror/extensions/marks/TextEffectsExtensions.d.ts +0 -1
- package/dist/prosemirror/extensions/marks/TrackedChangeExtensions.d.ts +0 -1
- package/dist/prosemirror/extensions/marks/UnderlineExtension.d.ts +0 -1
- package/dist/prosemirror/extensions/marks/markUtils.d.ts +0 -1
- package/dist/prosemirror/extensions/marks/markUtils.js +4 -1
- package/dist/prosemirror/extensions/nodes/BlockSdtExtension.d.ts +0 -1
- package/dist/prosemirror/extensions/nodes/FieldExtension.d.ts +0 -1
- package/dist/prosemirror/extensions/nodes/HardBreakExtension.d.ts +0 -1
- package/dist/prosemirror/extensions/nodes/HorizontalRuleExtension.d.ts +0 -1
- package/dist/prosemirror/extensions/nodes/ImageExtension.d.ts +0 -1
- package/dist/prosemirror/extensions/nodes/ImageExtension.js +2 -0
- package/dist/prosemirror/extensions/nodes/MathExtension.d.ts +0 -1
- package/dist/prosemirror/extensions/nodes/PageBreakExtension.d.ts +0 -1
- package/dist/prosemirror/extensions/nodes/RenderedPageBreakExtension.d.ts +0 -1
- package/dist/prosemirror/extensions/nodes/SdtExtension.d.ts +0 -1
- package/dist/prosemirror/extensions/nodes/ShapeExtension.d.ts +0 -1
- package/dist/prosemirror/extensions/nodes/ShapeExtension.js +2 -0
- package/dist/prosemirror/extensions/nodes/TabExtension.d.ts +0 -1
- package/dist/prosemirror/extensions/nodes/TabExtension.js +32 -9
- package/dist/prosemirror/extensions/nodes/TableExtension.d.ts +4 -3
- package/dist/prosemirror/extensions/nodes/TextBoxAnchorExtension.d.ts +0 -1
- package/dist/prosemirror/extensions/nodes/TextBoxExtension.d.ts +53 -27
- package/dist/prosemirror/extensions/types.d.ts +0 -1
- package/dist/prosemirror/findReplaceSelection.d.ts +5 -3
- package/dist/prosemirror/imageCommit.d.ts +0 -1
- package/dist/prosemirror/index.d.ts +4 -0
- package/dist/prosemirror/insertOperations.d.ts +0 -1
- package/dist/prosemirror/paraText.d.ts +0 -1
- package/dist/prosemirror/plugins/aiCitationDecorations.d.ts +2 -2
- package/dist/prosemirror/plugins/aiSuggestionDecorations.d.ts +0 -1
- package/dist/prosemirror/plugins/anonymizationDecorations.d.ts +9 -7
- package/dist/prosemirror/plugins/autocompleteSuggestion.d.ts +2 -2
- package/dist/prosemirror/plugins/contentControlWidgets.d.ts +4 -7
- package/dist/prosemirror/plugins/createDocScanPlugin.d.ts +3 -8
- package/dist/prosemirror/plugins/documentStyles.d.ts +0 -1
- package/dist/prosemirror/plugins/pmTextScan.d.ts +2 -2
- package/dist/prosemirror/plugins/revisionIds.d.ts +0 -1
- package/dist/prosemirror/plugins/selectionTracker.d.ts +23 -12
- package/dist/prosemirror/plugins/suggestionMode.d.ts +0 -1
- package/dist/prosemirror/plugins/templateDirectives.d.ts +10 -8
- package/dist/prosemirror/plugins/templatePreviewValues.d.ts +10 -5
- package/dist/prosemirror/plugins/templateSlashMenu.d.ts +2 -2
- package/dist/prosemirror/queries.d.ts +0 -1
- package/dist/prosemirror/schema/index.d.ts +2 -3
- package/dist/prosemirror/schema/marks.d.ts +8 -5
- package/dist/prosemirror/schema/nodes.d.ts +344 -164
- package/dist/prosemirror/selectionState.d.ts +13 -7
- package/dist/prosemirror/styles/resolvedStyleAttrs.d.ts +0 -1
- package/dist/prosemirror/styles/styleResolver.d.ts +3 -2
- package/dist/prosemirror/tableCellMergeRevision.d.ts +0 -1
- package/dist/prosemirror/tableResize.d.ts +0 -1
- package/dist/prosemirror/textBoxAnchorAttrs.d.ts +0 -1
- package/dist/prosemirror/utils/extractTrackedChanges.d.ts +8 -5
- package/dist/prosemirror/utils/findParagraphByParaId.d.ts +0 -1
- package/dist/prosemirror/utils/tabCalculator.d.ts +18 -7
- package/dist/prosemirror/utils/visualLineNavigation.d.ts +0 -1
- package/dist/prosemirror/validation.d.ts +0 -1
- package/dist/prosemirror/validation.js +5 -3
- package/dist/redline.d.ts +16 -8
- package/dist/render-dom/BodySelectionOverlay.d.ts +1 -9
- package/dist/render-dom/HeaderFooterSelectionOverlay.d.ts +0 -1
- package/dist/render-dom/RemoteSelectionOverlay.d.ts +1 -8
- package/dist/render-dom/resolveSidebarItemPositions.d.ts +1 -9
- package/dist/style-engine/styleEngine.d.ts +21 -11
- package/dist/style-sets/extract.d.ts +4 -3
- package/dist/style-sets/stellaStyle.d.ts +0 -1
- package/dist/style-sets/types.d.ts +0 -1
- package/dist/symbols.d.ts +6 -2
- package/dist/types/block-id.d.ts +3 -6
- package/dist/types/content.d.ts +2 -2
- package/dist/types/document.d.ts +0 -3
- package/dist/types/documentEnumValues.d.ts +5 -1
- package/dist/types/documentEnumValues.js +19 -1
- package/dist/types/index.d.ts +2 -1
- package/dist/utils/clipboard.d.ts +17 -8
- package/dist/utils/colorResolver.d.ts +9 -5
- package/dist/utils/createDocument.d.ts +19 -10
- package/dist/utils/documentLoaderBehavior.d.ts +1 -5
- package/dist/utils/docxInput.js +1 -0
- package/dist/utils/findReplace.d.ts +0 -1
- package/dist/utils/fontFamilyMerge.d.ts +0 -1
- package/dist/utils/fontResolver.d.ts +10 -4
- package/dist/utils/formatToStyle.d.ts +0 -1
- package/dist/utils/headerFooter.d.ts +8 -16
- package/dist/utils/headingCollector.d.ts +7 -4
- package/dist/utils/mergeDocumentContent.d.ts +0 -1
- package/dist/utils/paragraphFormattingMerge.d.ts +0 -1
- package/dist/utils/replaceText.d.ts +0 -1
- package/dist/utils/rotationBoundingBox.d.ts +0 -1
- package/dist/utils/tableOperations.d.ts +0 -1
- package/dist/utils/textFormattingMerge.d.ts +0 -1
- package/dist/version-comparison.d.ts +12 -6
- package/dist/watermark/index.d.ts +0 -1
- package/package.json +3 -3
|
@@ -1,59 +1,38 @@
|
|
|
1
1
|
import { deterministicHexId } from "../../utils/hexId.js";
|
|
2
2
|
import { escapeXml } from "./xmlUtils.js";
|
|
3
|
+
import { serializeTextFormatting } from "./runSerializer.js";
|
|
4
|
+
import { serializeParagraph } from "./paragraphSerializer.js";
|
|
3
5
|
//#region src/docx/serializer/commentSerializer.ts
|
|
4
6
|
/**
|
|
5
7
|
* Comment Serializer
|
|
6
8
|
*
|
|
7
9
|
* Serializes Comment[] to OOXML comments.xml format.
|
|
8
10
|
*/
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
if (rPr.length > 0) xml += `<w:rPr>${rPr.join("")}</w:rPr>`;
|
|
15
|
-
for (const c of run.content) if (c.type === "text") {
|
|
16
|
-
const preserveSpace = c.text !== c.text.trim() || c.text.includes(" ");
|
|
17
|
-
xml += preserveSpace ? `<w:t xml:space="preserve">${escapeXml(c.text)}</w:t>` : `<w:t>${escapeXml(c.text)}</w:t>`;
|
|
18
|
-
} else if (c.type === "break") xml += "<w:br/>";
|
|
19
|
-
xml += "</w:r>";
|
|
20
|
-
return xml;
|
|
21
|
-
}
|
|
22
|
-
/**
|
|
23
|
-
* `w14:paraId` / `w14:textId` open tag for a comment paragraph. Word keys
|
|
24
|
-
* commentsExtended.xml (reply threading) and commentsExtensible.xml (UTC
|
|
25
|
-
* dates) on the paraId of a comment's LAST paragraph, so the id must survive
|
|
26
|
-
* serialization; the parser stores it on `Paragraph.paraId`.
|
|
27
|
-
*/
|
|
28
|
-
function commentParagraphOpenTag(p) {
|
|
29
|
-
const attrs = [];
|
|
30
|
-
if (p.paraId) attrs.push(`w14:paraId="${escapeXml(p.paraId)}"`);
|
|
31
|
-
if (p.textId) attrs.push(`w14:textId="${escapeXml(p.textId)}"`);
|
|
32
|
-
return attrs.length > 0 ? `<w:p ${attrs.join(" ")}>` : "<w:p>";
|
|
33
|
-
}
|
|
34
|
-
function serializeParagraph(p) {
|
|
35
|
-
let xml = commentParagraphOpenTag(p);
|
|
36
|
-
for (const item of p.content) if (item.type === "run") xml += serializeRunContent(item);
|
|
37
|
-
xml += "</w:p>";
|
|
38
|
-
return xml;
|
|
39
|
-
}
|
|
11
|
+
const DEFAULT_ANNOTATION_REFERENCE_PROPERTIES = "<w:rPr><w:rStyle w:val=\"CommentReference\"/></w:rPr>";
|
|
12
|
+
const PARAGRAPH_PROPERTIES_END = "</w:pPr>";
|
|
13
|
+
const serializeAnnotationReference = (formatting) => {
|
|
14
|
+
return `<w:r>${formatting ? serializeTextFormatting(formatting) : DEFAULT_ANNOTATION_REFERENCE_PROPERTIES}<w:annotationRef/></w:r>`;
|
|
15
|
+
};
|
|
40
16
|
/** Serialize a paragraph, prepending an annotationRef run (required by Word in first paragraph of a comment) */
|
|
41
|
-
function serializeParagraphWithAnnotationRef(
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
17
|
+
function serializeParagraphWithAnnotationRef(paragraph, formatting) {
|
|
18
|
+
const xml = serializeParagraph(paragraph);
|
|
19
|
+
const annotationReference = serializeAnnotationReference(formatting);
|
|
20
|
+
const propertiesEnd = xml.indexOf(PARAGRAPH_PROPERTIES_END);
|
|
21
|
+
if (propertiesEnd !== -1) {
|
|
22
|
+
const contentStart = propertiesEnd + 8;
|
|
23
|
+
return `${xml.slice(0, contentStart)}${annotationReference}${xml.slice(contentStart)}`;
|
|
24
|
+
}
|
|
25
|
+
return xml.replace(/^<w:p(?=[\s>])[^>]*>/u, (openingTag) => `${openingTag}${annotationReference}`);
|
|
47
26
|
}
|
|
48
27
|
function serializeComment(comment) {
|
|
49
28
|
const attrs = [`w:id="${comment.id}"`, `w:author="${escapeXml(comment.author)}"`];
|
|
50
|
-
if (comment.initials) attrs.push(`w:initials="${escapeXml(comment.initials)}"`);
|
|
29
|
+
if (comment.initials !== void 0) attrs.push(`w:initials="${escapeXml(comment.initials)}"`);
|
|
51
30
|
if (comment.date) attrs.push(`w:date="${escapeXml(comment.date)}"`);
|
|
52
31
|
let xml = `<w:comment ${attrs.join(" ")}>`;
|
|
53
32
|
if (comment.content.length > 0) {
|
|
54
|
-
xml += serializeParagraphWithAnnotationRef(comment.content[0]);
|
|
33
|
+
xml += serializeParagraphWithAnnotationRef(comment.content[0], comment.annotationReferenceFormatting);
|
|
55
34
|
for (let i = 1; i < comment.content.length; i++) xml += serializeParagraph(comment.content[i]);
|
|
56
|
-
} else xml +=
|
|
35
|
+
} else xml += `<w:p>${serializeAnnotationReference(comment.annotationReferenceFormatting)}</w:p>`;
|
|
57
36
|
xml += "</w:comment>";
|
|
58
37
|
return xml;
|
|
59
38
|
}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { serializeBlockSdt } from "./blockSdtSerializer.js";
|
|
2
1
|
import { serializeTable } from "./tableSerializer.js";
|
|
3
2
|
import { resetAutoIdCounter } from "./runSerializer.js";
|
|
4
3
|
import { serializeSectionProperties } from "./sectionPropertiesSerializer.js";
|
|
5
4
|
import { serializeParagraph } from "./paragraphSerializer.js";
|
|
5
|
+
import { serializeBlockSdt } from "./blockSdtSerializer.js";
|
|
6
6
|
//#region src/docx/serializer/documentSerializer.ts
|
|
7
7
|
/**
|
|
8
8
|
* Standard OOXML namespaces for document.xml
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { canReplayHeaderFooterVerbatim, getHeaderFooterVerbatimXml } from "../headerFooterVerbatim.js";
|
|
2
2
|
import { escapeXml } from "./xmlUtils.js";
|
|
3
|
-
import { serializeBlockSdt } from "./blockSdtSerializer.js";
|
|
4
3
|
import { serializeTable } from "./tableSerializer.js";
|
|
5
4
|
import { serializeParagraph } from "./paragraphSerializer.js";
|
|
5
|
+
import { serializeBlockSdt } from "./blockSdtSerializer.js";
|
|
6
6
|
//#region src/docx/serializer/headerFooterSerializer.ts
|
|
7
7
|
const NAMESPACES = {
|
|
8
8
|
wpc: "http://schemas.microsoft.com/office/word/2010/wordprocessingCanvas",
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { serializeBlockSdt } from "./blockSdtSerializer.js";
|
|
2
1
|
import { serializeTable } from "./tableSerializer.js";
|
|
3
2
|
import { serializeParagraph } from "./paragraphSerializer.js";
|
|
3
|
+
import { serializeBlockSdt } from "./blockSdtSerializer.js";
|
|
4
4
|
//#region src/docx/serializer/noteSerializer.ts
|
|
5
5
|
const NAMESPACES = {
|
|
6
6
|
wpc: "http://schemas.microsoft.com/office/word/2010/wordprocessingCanvas",
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import { document_d_exports } from "../../types/document.js";
|
|
2
|
-
|
|
3
2
|
//#region src/docx/serializer/paragraphSerializer.d.ts
|
|
4
3
|
declare function serializeParagraphFormatting(formatting: document_d_exports.ParagraphFormatting | undefined, propertyChanges?: document_d_exports.ParagraphPropertyChange[], pPrMark?: document_d_exports.ParagraphMarkChange): string;
|
|
5
4
|
/**
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { numPrEqual } from "../numberingParser.js";
|
|
2
2
|
import { isValidHexColor } from "../../utils/colorResolver.js";
|
|
3
|
-
import { escapeXml, intAttr, isSingleWellFormedElement } from "./xmlUtils.js";
|
|
4
3
|
import { reconcileRawSdtPr } from "../sdtPropertiesPatch.js";
|
|
4
|
+
import { escapeXml, intAttr, isSingleWellFormedElement } from "./xmlUtils.js";
|
|
5
5
|
import { serializeBorder } from "./borderSerializer.js";
|
|
6
6
|
import { serializeRun, serializeTextFormatting } from "./runSerializer.js";
|
|
7
7
|
import { serializeSectionProperties } from "./sectionPropertiesSerializer.js";
|
|
@@ -90,10 +90,8 @@ function serializeIndentation(formatting) {
|
|
|
90
90
|
const attrs = [];
|
|
91
91
|
if (formatting.indentLeft !== void 0) attrs.push(`w:left="${intAttr(formatting.indentLeft)}"`);
|
|
92
92
|
if (formatting.indentRight !== void 0) attrs.push(`w:right="${intAttr(formatting.indentRight)}"`);
|
|
93
|
-
if (formatting.indentFirstLine !== void 0) {
|
|
94
|
-
|
|
95
|
-
else if (formatting.indentFirstLine !== 0) attrs.push(`w:firstLine="${intAttr(formatting.indentFirstLine)}"`);
|
|
96
|
-
}
|
|
93
|
+
if (formatting.indentFirstLine !== void 0) if (formatting.hangingIndent) attrs.push(`w:hanging="${intAttr(Math.abs(formatting.indentFirstLine))}"`);
|
|
94
|
+
else attrs.push(`w:firstLine="${intAttr(formatting.indentFirstLine)}"`);
|
|
97
95
|
if (attrs.length === 0) return "";
|
|
98
96
|
return `<w:ind ${attrs.join(" ")}/>`;
|
|
99
97
|
}
|
|
@@ -246,24 +244,13 @@ function serializeBookmarkStart(bookmark) {
|
|
|
246
244
|
function serializeBookmarkEnd(bookmark) {
|
|
247
245
|
return `<w:bookmarkEnd w:id="${bookmark.id}"/>`;
|
|
248
246
|
}
|
|
249
|
-
/**
|
|
250
|
-
* Serialize a simple field as a complex field (fldChar begin/separate/end).
|
|
251
|
-
* Complex field format is more widely supported by OOXML consumers
|
|
252
|
-
* (Google Docs, Apple Pages) than w:fldSimple.
|
|
253
|
-
*/
|
|
247
|
+
/** Serialize a simple field without changing its authored OOXML field form. */
|
|
254
248
|
function serializeSimpleField(field) {
|
|
255
|
-
const
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
const
|
|
259
|
-
|
|
260
|
-
parts.push(`<w:r>${rPrXml}<w:fldChar ${beginAttrs.join(" ")}/></w:r>`);
|
|
261
|
-
const spaceAttr = field.instruction.startsWith(" ") || field.instruction.endsWith(" ") || field.instruction.includes(" ") ? " xml:space=\"preserve\"" : "";
|
|
262
|
-
parts.push(`<w:r>${rPrXml}<w:instrText${spaceAttr}>${escapeXml(field.instruction)}</w:instrText></w:r>`);
|
|
263
|
-
parts.push(`<w:r>${rPrXml}<w:fldChar w:fldCharType="separate"/></w:r>`);
|
|
264
|
-
for (const item of field.content) if (item.type === "run") parts.push(serializeRun(item));
|
|
265
|
-
parts.push(`<w:r>${rPrXml}<w:fldChar w:fldCharType="end"/></w:r>`);
|
|
266
|
-
return parts.join("");
|
|
249
|
+
const attrs = [`w:instr="${escapeXml(field.instruction)}"`];
|
|
250
|
+
if (field.fldLock) attrs.push("w:fldLock=\"true\"");
|
|
251
|
+
if (field.dirty) attrs.push("w:dirty=\"true\"");
|
|
252
|
+
const contentXml = field.content.map((item) => item.type === "run" ? serializeRun(item) : serializeHyperlink(item)).join("");
|
|
253
|
+
return `<w:fldSimple ${attrs.join(" ")}>${contentXml}</w:fldSimple>`;
|
|
267
254
|
}
|
|
268
255
|
/**
|
|
269
256
|
* Serialize a complex field
|
|
@@ -278,7 +265,7 @@ function serializeComplexField(field) {
|
|
|
278
265
|
if (field.fldLock) beginAttrs.push("w:fldLock=\"true\"");
|
|
279
266
|
parts.push(`<w:r>${rPrXml}<w:fldChar ${beginAttrs.join(" ")}/></w:r>`);
|
|
280
267
|
if (field.fieldCode.length > 0) parts.push(...field.fieldCode.map((run) => serializeRun(run)));
|
|
281
|
-
else {
|
|
268
|
+
else if (field.instruction.length > 0) {
|
|
282
269
|
const spaceAttr = field.instruction.startsWith(" ") || field.instruction.endsWith(" ") || field.instruction.includes(" ") ? " xml:space=\"preserve\"" : "";
|
|
283
270
|
parts.push(`<w:r>${rPrXml}<w:instrText${spaceAttr}>${escapeXml(field.instruction)}</w:instrText></w:r>`);
|
|
284
271
|
}
|
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
import { HIGHLIGHT_COLOR_VALUES } from "../../types/documentEnumValues.js";
|
|
2
|
+
import { THEME_COLOR_TO_DRAWING_SCHEME } from "../drawingUtils.js";
|
|
2
3
|
import { isValidHexColor } from "../../utils/colorResolver.js";
|
|
4
|
+
import { requiresXmlSpacePreserve } from "../textWhitespace.js";
|
|
3
5
|
import { escapeXml, intAttr } from "./xmlUtils.js";
|
|
4
6
|
import { serializeTable } from "./tableSerializer.js";
|
|
5
7
|
import { serializeParagraph } from "./paragraphSerializer.js";
|
|
@@ -36,7 +38,7 @@ function getUniqueId(id) {
|
|
|
36
38
|
return String(nextAutoId++);
|
|
37
39
|
}
|
|
38
40
|
/** Valid OOXML highlight color names (ECMA-376 §17.18.40) */
|
|
39
|
-
const VALID_HIGHLIGHT_COLORS = new Set(HIGHLIGHT_COLOR_VALUES
|
|
41
|
+
const VALID_HIGHLIGHT_COLORS = new Set(HIGHLIGHT_COLOR_VALUES);
|
|
40
42
|
/**
|
|
41
43
|
* Serialize a color element (w:color)
|
|
42
44
|
*/
|
|
@@ -82,6 +84,7 @@ function serializeTextFormatting(formatting) {
|
|
|
82
84
|
if (formatting.fontFamily.hAnsi) fontAttrs.push(`w:hAnsi="${escapeXml(formatting.fontFamily.hAnsi)}"`);
|
|
83
85
|
if (formatting.fontFamily.eastAsia) fontAttrs.push(`w:eastAsia="${escapeXml(formatting.fontFamily.eastAsia)}"`);
|
|
84
86
|
if (formatting.fontFamily.cs) fontAttrs.push(`w:cs="${escapeXml(formatting.fontFamily.cs)}"`);
|
|
87
|
+
if (formatting.fontFamily.hint) fontAttrs.push(`w:hint="${escapeXml(formatting.fontFamily.hint)}"`);
|
|
85
88
|
if (formatting.fontFamily.asciiTheme) fontAttrs.push(`w:asciiTheme="${formatting.fontFamily.asciiTheme}"`);
|
|
86
89
|
if (formatting.fontFamily.hAnsiTheme) fontAttrs.push(`w:hAnsiTheme="${formatting.fontFamily.hAnsiTheme}"`);
|
|
87
90
|
if (formatting.fontFamily.eastAsiaTheme) fontAttrs.push(`w:eastAsiaTheme="${formatting.fontFamily.eastAsiaTheme}"`);
|
|
@@ -129,7 +132,7 @@ function serializeTextFormatting(formatting) {
|
|
|
129
132
|
if (formatting.position !== void 0) parts.push(`<w:position w:val="${intAttr(formatting.position)}"/>`);
|
|
130
133
|
if (formatting.fontSize !== void 0) parts.push(`<w:sz w:val="${intAttr(formatting.fontSize)}"/>`);
|
|
131
134
|
if (formatting.fontSizeCs !== void 0) parts.push(`<w:szCs w:val="${intAttr(formatting.fontSizeCs)}"/>`);
|
|
132
|
-
if (formatting.highlight
|
|
135
|
+
if (formatting.highlight) {
|
|
133
136
|
if (VALID_HIGHLIGHT_COLORS.has(formatting.highlight)) parts.push(`<w:highlight w:val="${formatting.highlight}"/>`);
|
|
134
137
|
else if (!formatting.shading) {
|
|
135
138
|
const hex = formatting.highlight.replace(/^#/u, "");
|
|
@@ -147,13 +150,14 @@ function serializeTextFormatting(formatting) {
|
|
|
147
150
|
parts.push(`<w:u ${uAttrs.join(" ")}/>`);
|
|
148
151
|
}
|
|
149
152
|
if (formatting.effect && formatting.effect !== "none") parts.push(`<w:effect w:val="${formatting.effect}"/>`);
|
|
150
|
-
if (formatting.emphasisMark
|
|
153
|
+
if (formatting.emphasisMark) parts.push(`<w:em w:val="${formatting.emphasisMark}"/>`);
|
|
151
154
|
const shadingXml = serializeShading(formatting.shading);
|
|
152
155
|
if (shadingXml) parts.push(shadingXml);
|
|
153
156
|
if (formatting.vertAlign) parts.push(`<w:vertAlign w:val="${formatting.vertAlign}"/>`);
|
|
154
157
|
if (formatting.rtl === true) parts.push("<w:rtl/>");
|
|
155
158
|
else if (formatting.rtl === false) parts.push("<w:rtl w:val=\"0\"/>");
|
|
156
|
-
if (formatting.cs) parts.push("<w:cs/>");
|
|
159
|
+
if (formatting.cs === true) parts.push("<w:cs/>");
|
|
160
|
+
else if (formatting.cs === false) parts.push("<w:cs w:val=\"0\"/>");
|
|
157
161
|
if (parts.length === 0) return "";
|
|
158
162
|
return `<w:rPr>${parts.join("")}</w:rPr>`;
|
|
159
163
|
}
|
|
@@ -183,13 +187,18 @@ function serializeRunProperties(formatting, propertyChanges) {
|
|
|
183
187
|
* Serialize text content (w:t)
|
|
184
188
|
*/
|
|
185
189
|
function serializeTextContent(content) {
|
|
186
|
-
return `<w:t${content.preserveSpace ||
|
|
190
|
+
return `<w:t${content.preserveSpace || requiresXmlSpacePreserve(content.text) ? " xml:space=\"preserve\"" : ""}>${escapeXml(content.text)}</w:t>`;
|
|
187
191
|
}
|
|
188
192
|
/**
|
|
189
193
|
* Serialize tab content (w:tab)
|
|
190
194
|
*/
|
|
191
|
-
function serializeTabContent(
|
|
192
|
-
return "<w:tab/>";
|
|
195
|
+
function serializeTabContent(content) {
|
|
196
|
+
if (!content.positional) return "<w:tab/>";
|
|
197
|
+
return `<w:ptab${[
|
|
198
|
+
content.positional.relativeTo ? ` w:relativeTo="${escapeXml(content.positional.relativeTo)}"` : "",
|
|
199
|
+
content.positional.alignment ? ` w:alignment="${escapeXml(content.positional.alignment)}"` : "",
|
|
200
|
+
content.positional.leader ? ` w:leader="${escapeXml(content.positional.leader)}"` : ""
|
|
201
|
+
].join("")}/>`;
|
|
193
202
|
}
|
|
194
203
|
/**
|
|
195
204
|
* Serialize break content (w:br)
|
|
@@ -198,10 +207,8 @@ function serializeBreakContent(content) {
|
|
|
198
207
|
const attrs = [];
|
|
199
208
|
if (content.breakType === "page") attrs.push("w:type=\"page\"");
|
|
200
209
|
else if (content.breakType === "column") attrs.push("w:type=\"column\"");
|
|
201
|
-
else if (content.breakType === "textWrapping")
|
|
202
|
-
|
|
203
|
-
if (content.clear && content.clear !== "none") attrs.push(`w:clear="${content.clear}"`);
|
|
204
|
-
}
|
|
210
|
+
else if (content.breakType === "textWrapping") attrs.push("w:type=\"textWrapping\"");
|
|
211
|
+
if (content.clear !== void 0) attrs.push(`w:clear="${content.clear}"`);
|
|
205
212
|
if (attrs.length === 0) return "<w:br/>";
|
|
206
213
|
return `<w:br ${attrs.join(" ")}/>`;
|
|
207
214
|
}
|
|
@@ -250,7 +257,7 @@ function serializeDrawingColor(color) {
|
|
|
250
257
|
if (!color) return "";
|
|
251
258
|
if (color.rgb && isValidHexColor(color.rgb)) return `<a:srgbClr val="${escapeXml(color.rgb.replace("#", ""))}"/>`;
|
|
252
259
|
if (color.themeColor) {
|
|
253
|
-
let clr = `<a:schemeClr val="${
|
|
260
|
+
let clr = `<a:schemeClr val="${THEME_COLOR_TO_DRAWING_SCHEME[color.themeColor]}"`;
|
|
254
261
|
if (color.themeTint) clr += `><a:tint val="${escapeXml(color.themeTint)}"/></a:schemeClr>`;
|
|
255
262
|
else if (color.themeShade) clr += `><a:shade val="${escapeXml(color.themeShade)}"/></a:schemeClr>`;
|
|
256
263
|
else clr += `/>`;
|
|
@@ -260,7 +267,9 @@ function serializeDrawingColor(color) {
|
|
|
260
267
|
}
|
|
261
268
|
/** Serialize shape fill to DrawingML */
|
|
262
269
|
function serializeFill(fill) {
|
|
263
|
-
if (!fill
|
|
270
|
+
if (!fill) return "";
|
|
271
|
+
if (fill.rawXml) return fill.rawXml;
|
|
272
|
+
if (fill.type === "none") return "<a:noFill/>";
|
|
264
273
|
if (fill.type === "solid" && fill.color) return `<a:solidFill>${serializeDrawingColor(fill.color)}</a:solidFill>`;
|
|
265
274
|
if (fill.type === "gradient" && fill.gradient) {
|
|
266
275
|
const g = fill.gradient;
|
|
@@ -282,12 +291,13 @@ function serializeLineCap(cap) {
|
|
|
282
291
|
}
|
|
283
292
|
function serializeOutline(outline) {
|
|
284
293
|
if (!outline) return "";
|
|
294
|
+
if (outline.rawXml) return outline.rawXml;
|
|
285
295
|
const attrs = [];
|
|
286
296
|
if (typeof outline.width === "number") attrs.push(`w="${outline.width}"`);
|
|
287
297
|
if (outline.cap) attrs.push(`cap="${serializeLineCap(outline.cap)}"`);
|
|
288
298
|
const parts = [];
|
|
289
299
|
if (outline.color) parts.push(`<a:solidFill>${serializeDrawingColor(outline.color)}</a:solidFill>`);
|
|
290
|
-
if (outline.style
|
|
300
|
+
if (outline.style) parts.push(`<a:prstDash val="${outline.style}"/>`);
|
|
291
301
|
if (outline.join === "bevel") parts.push("<a:bevel/>");
|
|
292
302
|
else if (outline.join === "round") parts.push("<a:round/>");
|
|
293
303
|
else if (outline.join === "miter") parts.push("<a:miter/>");
|
|
@@ -370,6 +380,18 @@ function serializePicGraphic(image, sharedId) {
|
|
|
370
380
|
].join("");
|
|
371
381
|
}
|
|
372
382
|
/**
|
|
383
|
+
* Serialize only authored wrap-distance attributes. OOXML defaults omitted
|
|
384
|
+
* values to zero, but preserving absence keeps untouched models stable.
|
|
385
|
+
*/
|
|
386
|
+
function serializeWrapDistanceAttrs(wrap) {
|
|
387
|
+
const attrs = [];
|
|
388
|
+
if (wrap?.distT !== void 0) attrs.push(`distT="${intAttr(wrap.distT)}"`);
|
|
389
|
+
if (wrap?.distB !== void 0) attrs.push(`distB="${intAttr(wrap.distB)}"`);
|
|
390
|
+
if (wrap?.distL !== void 0) attrs.push(`distL="${intAttr(wrap.distL)}"`);
|
|
391
|
+
if (wrap?.distR !== void 0) attrs.push(`distR="${intAttr(wrap.distR)}"`);
|
|
392
|
+
return attrs.length > 0 ? ` ${attrs.join(" ")}` : "";
|
|
393
|
+
}
|
|
394
|
+
/**
|
|
373
395
|
* Serialize drawing/image content (w:drawing) to full DrawingML XML
|
|
374
396
|
*/
|
|
375
397
|
function serializeDrawingContent(content) {
|
|
@@ -377,24 +399,28 @@ function serializeDrawingContent(content) {
|
|
|
377
399
|
const isFloating = image.wrap.type !== "inline";
|
|
378
400
|
const cx = image.size.width;
|
|
379
401
|
const cy = image.size.height;
|
|
380
|
-
const
|
|
381
|
-
const distB = image.wrap.distB ?? 0;
|
|
382
|
-
const distL = image.wrap.distL ?? 0;
|
|
383
|
-
const distR = image.wrap.distR ?? 0;
|
|
402
|
+
const wrapDistanceAttrs = serializeWrapDistanceAttrs(image.wrap);
|
|
384
403
|
const effL = image.padding?.left ?? 0;
|
|
385
404
|
const effT = image.padding?.top ?? 0;
|
|
386
405
|
const effR = image.padding?.right ?? 0;
|
|
387
406
|
const effB = image.padding?.bottom ?? 0;
|
|
388
407
|
const effectExtentEl = `<wp:effectExtent l="${intAttr(effL)}" t="${intAttr(effT)}" r="${intAttr(effR)}" b="${intAttr(effB)}"/>`;
|
|
389
408
|
const docPrId = getUniqueId(image.id);
|
|
390
|
-
const docPrName = image.
|
|
409
|
+
const docPrName = image.docPrName ?? image.filename ?? `Picture ${docPrId}`;
|
|
410
|
+
const docPrDescription = image.alt !== void 0 ? ` descr="${escapeXml(image.alt)}"` : "";
|
|
411
|
+
const docPrTitle = image.title !== void 0 ? ` title="${escapeXml(image.title)}"` : "";
|
|
412
|
+
const hlinkClick = image.hlinkRId ? `<a:hlinkClick r:id="${escapeXml(image.hlinkRId)}"/>` : "";
|
|
413
|
+
const inlineDocPrAttrs = `id="${docPrId}" name="${escapeXml(docPrName)}"${docPrDescription}${docPrTitle}${image.decorative ? " hidden=\"1\"" : ""}`;
|
|
414
|
+
const inlineDocPr = hlinkClick ? `<wp:docPr ${inlineDocPrAttrs}>${hlinkClick}</wp:docPr>` : `<wp:docPr ${inlineDocPrAttrs}/>`;
|
|
415
|
+
const anchorDocPrAttrs = `id="${docPrId}" name="${escapeXml(docPrName)}"${docPrDescription}${docPrTitle}`;
|
|
416
|
+
const anchorDocPr = hlinkClick ? `<wp:docPr ${anchorDocPrAttrs}>${hlinkClick}</wp:docPr>` : `<wp:docPr ${anchorDocPrAttrs}/>`;
|
|
391
417
|
const graphic = serializePicGraphic(image, docPrId);
|
|
392
418
|
if (!isFloating) return [
|
|
393
419
|
"<w:drawing>",
|
|
394
|
-
`<wp:inline
|
|
420
|
+
`<wp:inline${wrapDistanceAttrs}>`,
|
|
395
421
|
`<wp:extent cx="${intAttr(cx)}" cy="${intAttr(cy)}"/>`,
|
|
396
422
|
effectExtentEl,
|
|
397
|
-
|
|
423
|
+
inlineDocPr,
|
|
398
424
|
"<wp:cNvGraphicFramePr><a:graphicFrameLocks xmlns:a=\"http://schemas.openxmlformats.org/drawingml/2006/main\" noChangeAspect=\"1\"/></wp:cNvGraphicFramePr>",
|
|
399
425
|
graphic,
|
|
400
426
|
"</wp:inline>",
|
|
@@ -403,17 +429,15 @@ function serializeDrawingContent(content) {
|
|
|
403
429
|
const behindDoc = image.wrap.type === "behind" ? "1" : "0";
|
|
404
430
|
const position = image.position ? serializePosition(image.position) : "<wp:positionH relativeFrom=\"column\"><wp:posOffset>0</wp:posOffset></wp:positionH><wp:positionV relativeFrom=\"paragraph\"><wp:posOffset>0</wp:posOffset></wp:positionV>";
|
|
405
431
|
const wrap = serializeWrap(image.wrap);
|
|
406
|
-
const layoutInCellAttr = image.layoutInCell === false ? "0" : "1";
|
|
407
|
-
const allowOverlapAttr = image.allowOverlap === false ? "0" : "1";
|
|
408
432
|
return [
|
|
409
433
|
"<w:drawing>",
|
|
410
|
-
`<wp:anchor
|
|
434
|
+
`<wp:anchor${wrapDistanceAttrs} simplePos="0" relativeHeight="251658240" behindDoc="${behindDoc}" locked="0" layoutInCell="${image.layoutInCell === false ? "0" : "1"}" allowOverlap="${image.allowOverlap === false ? "0" : "1"}">`,
|
|
411
435
|
"<wp:simplePos x=\"0\" y=\"0\"/>",
|
|
412
436
|
position,
|
|
413
437
|
`<wp:extent cx="${intAttr(cx)}" cy="${intAttr(cy)}"/>`,
|
|
414
438
|
effectExtentEl,
|
|
415
439
|
wrap,
|
|
416
|
-
|
|
440
|
+
anchorDocPr,
|
|
417
441
|
"<wp:cNvGraphicFramePr><a:graphicFrameLocks xmlns:a=\"http://schemas.openxmlformats.org/drawingml/2006/main\" noChangeAspect=\"1\"/></wp:cNvGraphicFramePr>",
|
|
418
442
|
graphic,
|
|
419
443
|
"</wp:anchor>",
|
|
@@ -433,12 +457,9 @@ function serializeShapeContent(content) {
|
|
|
433
457
|
const cy = shape.size.height;
|
|
434
458
|
const isTextBox = shape.shapeType === "textBox";
|
|
435
459
|
const isFloating = shape.wrap && shape.wrap.type !== "inline";
|
|
436
|
-
const
|
|
437
|
-
const distB = shape.wrap?.distB ?? 0;
|
|
438
|
-
const distL = shape.wrap?.distL ?? 0;
|
|
439
|
-
const distR = shape.wrap?.distR ?? 0;
|
|
460
|
+
const wrapDistances = serializeWrapDistanceAttrs(shape.wrap);
|
|
440
461
|
const docPrId = getUniqueId(shape.id);
|
|
441
|
-
const docPrName = shape.name
|
|
462
|
+
const docPrName = shape.name ?? (isTextBox ? `TextBox ${docPrId}` : `Shape ${docPrId}`);
|
|
442
463
|
let xfrmAttrs = "";
|
|
443
464
|
if (shape.transform?.rotation) xfrmAttrs += ` rot="${Math.round(shape.transform.rotation * 6e4)}"`;
|
|
444
465
|
if (shape.transform?.flipH) xfrmAttrs += " flipH=\"1\"";
|
|
@@ -494,7 +515,7 @@ function serializeShapeContent(content) {
|
|
|
494
515
|
].join("");
|
|
495
516
|
if (!isFloating) return [
|
|
496
517
|
"<w:drawing>",
|
|
497
|
-
`<wp:inline
|
|
518
|
+
`<wp:inline${wrapDistances}>`,
|
|
498
519
|
`<wp:extent cx="${intAttr(cx)}" cy="${intAttr(cy)}"/>`,
|
|
499
520
|
"<wp:effectExtent l=\"0\" t=\"0\" r=\"0\" b=\"0\"/>",
|
|
500
521
|
`<wp:docPr id="${docPrId}" name="${escapeXml(docPrName)}"/>`,
|
|
@@ -509,7 +530,7 @@ function serializeShapeContent(content) {
|
|
|
509
530
|
const wrap = serializeWrap(shape.wrap);
|
|
510
531
|
return [
|
|
511
532
|
"<w:drawing>",
|
|
512
|
-
`<wp:anchor
|
|
533
|
+
`<wp:anchor${wrapDistances} simplePos="0" relativeHeight="251658240" behindDoc="${behindDoc}" locked="0" layoutInCell="1" allowOverlap="1">`,
|
|
513
534
|
"<wp:simplePos x=\"0\" y=\"0\"/>",
|
|
514
535
|
position,
|
|
515
536
|
`<wp:extent cx="${intAttr(cx)}" cy="${intAttr(cy)}"/>`,
|
|
@@ -30,7 +30,7 @@ function serializePageSize(props) {
|
|
|
30
30
|
const attrs = [];
|
|
31
31
|
if (props.pageWidth !== void 0) attrs.push(`w:w="${intAttr(props.pageWidth)}"`);
|
|
32
32
|
if (props.pageHeight !== void 0) attrs.push(`w:h="${intAttr(props.pageHeight)}"`);
|
|
33
|
-
if (props.orientation
|
|
33
|
+
if (props.orientation !== void 0) attrs.push(`w:orient="${props.orientation}"`);
|
|
34
34
|
return attrs.length > 0 ? `<w:pgSz ${attrs.join(" ")}/>` : "";
|
|
35
35
|
}
|
|
36
36
|
function serializePageMargins(props) {
|
|
@@ -51,9 +51,9 @@ function serializePaperSource(props) {
|
|
|
51
51
|
return attrs.length > 0 ? `<w:paperSrc ${attrs.join(" ")}/>` : "";
|
|
52
52
|
}
|
|
53
53
|
function serializeColumns(props) {
|
|
54
|
-
if (
|
|
54
|
+
if (props.columnCount === void 0 && !props.columns?.length && props.columnSpace === void 0 && props.equalWidth === void 0) return "";
|
|
55
55
|
const attrs = [];
|
|
56
|
-
if (props.columnCount !== void 0 && props.columnCount
|
|
56
|
+
if (props.columnCount !== void 0 && props.columnCount >= 1) attrs.push(`w:num="${intAttr(props.columnCount)}"`);
|
|
57
57
|
if (props.columnSpace !== void 0) attrs.push(`w:space="${intAttr(props.columnSpace)}"`);
|
|
58
58
|
if (props.equalWidth !== void 0) attrs.push(`w:equalWidth="${props.equalWidth ? "1" : "0"}"`);
|
|
59
59
|
if (props.separator) attrs.push("w:sep=\"1\"");
|
|
@@ -169,8 +169,10 @@ function serializeSectionProperties(props) {
|
|
|
169
169
|
]) if (xml) parts.push(xml);
|
|
170
170
|
if (props.verticalAlign) parts.push(`<w:vAlign w:val="${props.verticalAlign}"/>`);
|
|
171
171
|
if (props.textDirection) parts.push(`<w:textDirection w:val="${props.textDirection}"/>`);
|
|
172
|
-
|
|
173
|
-
if (
|
|
172
|
+
const titlePgXml = serializeOnOffElement(props.titlePg, "titlePg");
|
|
173
|
+
if (titlePgXml) parts.push(titlePgXml);
|
|
174
|
+
const bidiXml = serializeOnOffElement(props.bidi, "bidi");
|
|
175
|
+
if (bidiXml) parts.push(bidiXml);
|
|
174
176
|
for (const xml of [
|
|
175
177
|
serializeOnOffElement(props.formProtection, "formProt"),
|
|
176
178
|
serializeOnOffElement(props.noEndnote, "noEndnote"),
|
|
@@ -172,6 +172,8 @@ function serializeTablePropertyChange(change) {
|
|
|
172
172
|
function serializeTableRowFormatting(formatting, propertyChanges, structuralChange) {
|
|
173
173
|
const parts = [];
|
|
174
174
|
if (formatting) {
|
|
175
|
+
const cnfStyleXml = serializeConditionalFormatStyle(formatting.conditionalFormat);
|
|
176
|
+
if (cnfStyleXml) parts.push(cnfStyleXml);
|
|
175
177
|
if (formatting.gridBefore) parts.push(`<w:gridBefore w:val="${intAttr(formatting.gridBefore)}"/>`);
|
|
176
178
|
if (formatting.widthBefore) parts.push(`<w:wBefore w:w="${intAttr(formatting.widthBefore.value)}" w:type="${formatting.widthBefore.type}"/>`);
|
|
177
179
|
if (formatting.gridAfter) parts.push(`<w:gridAfter w:val="${intAttr(formatting.gridAfter)}"/>`);
|
|
@@ -3,8 +3,17 @@ import { getLocalName, parseXml } from "../xmlParser.js";
|
|
|
3
3
|
/**
|
|
4
4
|
* Shared XML utility functions for serializers.
|
|
5
5
|
*/
|
|
6
|
+
const XML_SPECIAL_CHARACTER_PATTERN = /[&<>"']/u;
|
|
7
|
+
const XML_SPECIAL_CHARACTER_GLOBAL_PATTERN = /[&<>"']/gu;
|
|
6
8
|
function escapeXml(text) {
|
|
7
|
-
|
|
9
|
+
if (!XML_SPECIAL_CHARACTER_PATTERN.test(text)) return text;
|
|
10
|
+
return text.replace(XML_SPECIAL_CHARACTER_GLOBAL_PATTERN, (character) => {
|
|
11
|
+
if (character === "&") return "&";
|
|
12
|
+
if (character === "<") return "<";
|
|
13
|
+
if (character === ">") return ">";
|
|
14
|
+
if (character === "\"") return """;
|
|
15
|
+
return "'";
|
|
16
|
+
});
|
|
8
17
|
}
|
|
9
18
|
/**
|
|
10
19
|
* Format a numeric value as an integer XML attribute.
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
import { DocxArchiveOptions } from "./boundedArchive.js";
|
|
2
2
|
import { FOLIO_DOCX_XML_PATCH_PROPOSAL_PROFILE, FolioDocxPreparedXmlReplacement, FolioDocxXmlPatchProposalEvaluation, FolioDocxXmlPatchProposalLimits } from "./evaluateDocxXmlPatchProposal.js";
|
|
3
3
|
import { FOLIO_DOCX_CONFORMANCE_PROFILE, FolioDocxConformanceReport } from "./validateDocxConformance.js";
|
|
4
|
-
|
|
5
4
|
//#region src/docx/server/applyDocxXmlPatchProposal.d.ts
|
|
6
5
|
declare const FOLIO_DOCX_XML_PATCH_APPLICATION_VERSION: 1;
|
|
7
6
|
declare const FOLIO_DOCX_XML_PATCH_APPLICATION_PROFILE: "folio-xml-patch-application-v1";
|
|
8
7
|
type ApplyDocxXmlPatchProposalArgs = {
|
|
9
8
|
readonly bytes: ArrayBuffer | Uint8Array;
|
|
10
|
-
readonly proposal: unknown;
|
|
9
|
+
readonly proposal: unknown;
|
|
10
|
+
/** Exact package paths authorized by the server-side caller. */
|
|
11
11
|
readonly allowedParts: readonly string[];
|
|
12
12
|
readonly validationProfile: typeof FOLIO_DOCX_CONFORMANCE_PROFILE;
|
|
13
13
|
readonly archive?: DocxArchiveOptions;
|
|
@@ -75,13 +75,6 @@ declare const FolioDocxXmlPatchApplicationError_base: import("better-result").Ta
|
|
|
75
75
|
}>;
|
|
76
76
|
declare class FolioDocxXmlPatchApplicationError extends FolioDocxXmlPatchApplicationError_base {}
|
|
77
77
|
/** Apply a guarded XML proposal and return output only after full profile validation. */
|
|
78
|
-
declare const applyDocxXmlPatchProposal: ({
|
|
79
|
-
bytes,
|
|
80
|
-
proposal: rawProposal,
|
|
81
|
-
allowedParts,
|
|
82
|
-
validationProfile,
|
|
83
|
-
archive,
|
|
84
|
-
limits
|
|
85
|
-
}: ApplyDocxXmlPatchProposalArgs) => Promise<FolioDocxXmlPatchApplication>;
|
|
78
|
+
declare const applyDocxXmlPatchProposal: ({ bytes, proposal: rawProposal, allowedParts, validationProfile, archive, limits }: ApplyDocxXmlPatchProposalArgs) => Promise<FolioDocxXmlPatchApplication>;
|
|
86
79
|
//#endregion
|
|
87
80
|
export { ApplyDocxXmlPatchProposalArgs, FOLIO_DOCX_XML_PATCH_APPLICATION_PROFILE, FOLIO_DOCX_XML_PATCH_APPLICATION_VERSION, FolioDocxXmlPatchApplication, FolioDocxXmlPatchApplicationError, FolioDocxXmlPatchApplicationReceipt, UnsupportedFolioDocxXmlPatchApplicationProfileError, applyDocxXmlPatchProposal };
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import { DocxArchiveOptions } from "./boundedArchive.js";
|
|
2
|
-
|
|
3
2
|
//#region src/docx/server/evaluateDocxXmlPatchProposal.d.ts
|
|
4
3
|
declare const FOLIO_DOCX_XML_PATCH_PROPOSAL_VERSION: 1;
|
|
5
4
|
declare const FOLIO_DOCX_XML_PATCH_PROPOSAL_PROFILE: "folio-xml-patch-proposal-v1";
|
|
@@ -26,7 +25,8 @@ type FolioDocxXmlPatchProposalLimits = {
|
|
|
26
25
|
};
|
|
27
26
|
type EvaluateDocxXmlPatchProposalArgs = {
|
|
28
27
|
readonly bytes: ArrayBuffer | Uint8Array;
|
|
29
|
-
readonly proposal: unknown;
|
|
28
|
+
readonly proposal: unknown;
|
|
29
|
+
/** Exact package paths authorized by the server-side caller. */
|
|
30
30
|
readonly allowedParts: readonly string[];
|
|
31
31
|
readonly archive?: DocxArchiveOptions;
|
|
32
32
|
readonly limits?: FolioDocxXmlPatchProposalLimits;
|
|
@@ -74,12 +74,6 @@ declare const InvalidFolioDocxXmlPatchProposalOptionsError_base: import("better-
|
|
|
74
74
|
}>;
|
|
75
75
|
declare class InvalidFolioDocxXmlPatchProposalOptionsError extends InvalidFolioDocxXmlPatchProposalOptionsError_base {}
|
|
76
76
|
declare const parseFolioDocxXmlPatchProposal: (value: unknown) => FolioDocxXmlPatchProposal;
|
|
77
|
-
declare const evaluateDocxXmlPatchProposal: ({
|
|
78
|
-
bytes,
|
|
79
|
-
proposal: rawProposal,
|
|
80
|
-
allowedParts,
|
|
81
|
-
archive,
|
|
82
|
-
limits: rawLimits
|
|
83
|
-
}: EvaluateDocxXmlPatchProposalArgs) => Promise<FolioDocxXmlPatchProposalEvaluation>;
|
|
77
|
+
declare const evaluateDocxXmlPatchProposal: ({ bytes, proposal: rawProposal, allowedParts, archive, limits: rawLimits }: EvaluateDocxXmlPatchProposalArgs) => Promise<FolioDocxXmlPatchProposalEvaluation>;
|
|
84
78
|
//#endregion
|
|
85
79
|
export { EvaluateDocxXmlPatchProposalArgs, FOLIO_DOCX_XML_PATCH_PROPOSAL_DEFAULTS, FOLIO_DOCX_XML_PATCH_PROPOSAL_ISSUE_CODES, FOLIO_DOCX_XML_PATCH_PROPOSAL_PROFILE, FOLIO_DOCX_XML_PATCH_PROPOSAL_VERSION, FolioDocxPreparedXmlReplacement, FolioDocxXmlPatchProposal, FolioDocxXmlPatchProposalEvaluation, FolioDocxXmlPatchProposalIssue, FolioDocxXmlPatchProposalIssueCode, FolioDocxXmlPatchProposalLimits, FolioDocxXmlReplacement, InvalidFolioDocxXmlPatchProposalError, InvalidFolioDocxXmlPatchProposalOptionsError, evaluateDocxXmlPatchProposal, parseFolioDocxXmlPatchProposal };
|