@pixerate/editor 0.24.0 → 0.25.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 (133) hide show
  1. package/README.md +71 -1
  2. package/THIRD_PARTY_NOTICES.md +29 -0
  3. package/dist/agent/index.cjs +10 -9
  4. package/dist/agent/index.cjs.map +1 -1
  5. package/dist/agent/index.d.cts +1 -1
  6. package/dist/agent/index.d.ts +1 -1
  7. package/dist/agent/index.js +4 -3
  8. package/dist/agent/index.js.map +1 -1
  9. package/dist/canvas/index.cjs +3173 -340
  10. package/dist/canvas/index.cjs.map +1 -1
  11. package/dist/canvas/index.d.cts +617 -4
  12. package/dist/canvas/index.d.ts +617 -4
  13. package/dist/canvas/index.js +3105 -272
  14. package/dist/canvas/index.js.map +1 -1
  15. package/dist/chunk-4BVP64JJ.cjs +1406 -0
  16. package/dist/chunk-4BVP64JJ.cjs.map +1 -0
  17. package/dist/{chunk-XNORY7M6.cjs → chunk-7WISYZFO.cjs} +105 -50
  18. package/dist/chunk-7WISYZFO.cjs.map +1 -0
  19. package/dist/{chunk-OLZJXL4R.cjs → chunk-AL6JMGWW.cjs} +59 -25
  20. package/dist/chunk-AL6JMGWW.cjs.map +1 -0
  21. package/dist/chunk-BVP3TSLH.cjs +69 -0
  22. package/dist/chunk-BVP3TSLH.cjs.map +1 -0
  23. package/dist/{chunk-MCSJFWAO.cjs → chunk-C7P22VIP.cjs} +670 -96
  24. package/dist/chunk-C7P22VIP.cjs.map +1 -0
  25. package/dist/{chunk-PGNZKFQS.js → chunk-ECCCYKGL.js} +76 -21
  26. package/dist/chunk-ECCCYKGL.js.map +1 -0
  27. package/dist/{chunk-3CN2WD3X.js → chunk-FH6F67DN.js} +646 -72
  28. package/dist/chunk-FH6F67DN.js.map +1 -0
  29. package/dist/chunk-HRMEDT2L.js +1406 -0
  30. package/dist/chunk-HRMEDT2L.js.map +1 -0
  31. package/dist/{chunk-ITBSKI26.js → chunk-IXHSYOVY.js} +941 -9
  32. package/dist/chunk-IXHSYOVY.js.map +1 -0
  33. package/dist/{chunk-FODNLX5N.js → chunk-NAXVVS5I.js} +38 -4
  34. package/dist/chunk-NAXVVS5I.js.map +1 -0
  35. package/dist/chunk-O5RYH2PG.js +69 -0
  36. package/dist/chunk-O5RYH2PG.js.map +1 -0
  37. package/dist/{chunk-SBCZ6RN5.cjs → chunk-PO6A6QQH.cjs} +1039 -107
  38. package/dist/chunk-PO6A6QQH.cjs.map +1 -0
  39. package/dist/{chunk-3LV6RRPH.js → chunk-QGYDWPRM.js} +2 -2
  40. package/dist/{chunk-U5KWZU4X.js → chunk-RR7F5GUM.js} +2632 -129
  41. package/dist/chunk-RR7F5GUM.js.map +1 -0
  42. package/dist/{chunk-5S3Z4PPF.js → chunk-UAKDG62Z.js} +232 -25
  43. package/dist/chunk-UAKDG62Z.js.map +1 -0
  44. package/dist/{chunk-SML64VJG.cjs → chunk-V3CHHWOE.cjs} +4 -4
  45. package/dist/{chunk-SML64VJG.cjs.map → chunk-V3CHHWOE.cjs.map} +1 -1
  46. package/dist/chunk-WSQKHXW7.cjs +5726 -0
  47. package/dist/chunk-WSQKHXW7.cjs.map +1 -0
  48. package/dist/{chunk-D27YFC46.cjs → chunk-X4N4WUKB.cjs} +267 -60
  49. package/dist/chunk-X4N4WUKB.cjs.map +1 -0
  50. package/dist/commands/index.cjs +74 -1
  51. package/dist/commands/index.cjs.map +1 -1
  52. package/dist/commands/index.d.cts +34 -1
  53. package/dist/commands/index.d.ts +34 -1
  54. package/dist/commands/index.js +73 -0
  55. package/dist/commands/index.js.map +1 -1
  56. package/dist/compare/index.cjs +3 -3
  57. package/dist/compare/index.d.cts +1 -1
  58. package/dist/compare/index.d.ts +1 -1
  59. package/dist/compare/index.js +2 -2
  60. package/dist/controller-BIJiNoVs.d.cts +1842 -0
  61. package/dist/controller-BIJiNoVs.d.ts +1842 -0
  62. package/dist/{documents-BQjzJNe2.d.ts → documents-CHT1U5Vs.d.ts} +10 -0
  63. package/dist/{documents-KRTPhvst.d.cts → documents-Gp7wb0Me.d.cts} +10 -0
  64. package/dist/extensions/index.cjs +53 -6
  65. package/dist/extensions/index.cjs.map +1 -1
  66. package/dist/extensions/index.d.cts +12 -4
  67. package/dist/extensions/index.d.ts +12 -4
  68. package/dist/extensions/index.js +53 -6
  69. package/dist/generation/index.cjs +1013 -69
  70. package/dist/generation/index.cjs.map +1 -1
  71. package/dist/generation/index.d.cts +474 -13
  72. package/dist/generation/index.d.ts +474 -13
  73. package/dist/generation/index.js +976 -32
  74. package/dist/generation/index.js.map +1 -1
  75. package/dist/image-editor/index.cjs +3385 -1275
  76. package/dist/image-editor/index.cjs.map +1 -1
  77. package/dist/image-editor/index.d.cts +693 -128
  78. package/dist/image-editor/index.d.ts +693 -128
  79. package/dist/image-editor/index.js +3325 -1215
  80. package/dist/image-editor/index.js.map +1 -1
  81. package/dist/{index-fJrlkJCd.d.ts → index-7a6bHTLy.d.ts} +494 -5
  82. package/dist/{index-BhJBSm2d.d.cts → index-Csd5qI8u.d.cts} +494 -5
  83. package/dist/index.cjs +1491 -45
  84. package/dist/index.cjs.map +1 -1
  85. package/dist/index.d.cts +110 -19
  86. package/dist/index.d.ts +110 -19
  87. package/dist/index.js +1464 -18
  88. package/dist/index.js.map +1 -1
  89. package/dist/mention-text-CDnCFd3c.d.cts +53 -0
  90. package/dist/mention-text-CDnCFd3c.d.ts +53 -0
  91. package/dist/model-C1zApQM8.d.cts +219 -0
  92. package/dist/model-C1zApQM8.d.ts +219 -0
  93. package/dist/persistence/index.d.cts +3 -120
  94. package/dist/persistence/index.d.ts +3 -120
  95. package/dist/{registry-GJI4gToU.d.cts → registry-CEgwXED1.d.cts} +12 -1
  96. package/dist/{registry-GJI4gToU.d.ts → registry-CEgwXED1.d.ts} +12 -1
  97. package/dist/serializers/index.cjs +12 -4
  98. package/dist/serializers/index.cjs.map +1 -1
  99. package/dist/serializers/index.d.cts +39 -12
  100. package/dist/serializers/index.d.ts +39 -12
  101. package/dist/serializers/index.js +12 -4
  102. package/dist/spreadsheet/index.cjs +127 -3
  103. package/dist/spreadsheet/index.cjs.map +1 -1
  104. package/dist/spreadsheet/index.d.cts +431 -11
  105. package/dist/spreadsheet/index.d.ts +431 -11
  106. package/dist/spreadsheet/index.js +127 -3
  107. package/dist/storage-BpFfspHm.d.cts +120 -0
  108. package/dist/storage-BpFfspHm.d.ts +120 -0
  109. package/dist/tokens/index.cjs +115 -0
  110. package/dist/tokens/index.cjs.map +1 -0
  111. package/dist/tokens/index.d.cts +212 -0
  112. package/dist/tokens/index.d.ts +212 -0
  113. package/dist/tokens/index.js +115 -0
  114. package/dist/tokens/index.js.map +1 -0
  115. package/dist/{track-changes-BK5sVf4_.d.cts → track-changes-D_VAPELi.d.cts} +95 -11
  116. package/dist/{track-changes-CDjCrwKe.d.ts → track-changes-Db_fGEvx.d.ts} +95 -11
  117. package/package.json +6 -1
  118. package/dist/chunk-3CN2WD3X.js.map +0 -1
  119. package/dist/chunk-5S3Z4PPF.js.map +0 -1
  120. package/dist/chunk-D27YFC46.cjs.map +0 -1
  121. package/dist/chunk-FODNLX5N.js.map +0 -1
  122. package/dist/chunk-ITBSKI26.js.map +0 -1
  123. package/dist/chunk-MA2F5KHF.cjs +0 -3223
  124. package/dist/chunk-MA2F5KHF.cjs.map +0 -1
  125. package/dist/chunk-MCSJFWAO.cjs.map +0 -1
  126. package/dist/chunk-OLZJXL4R.cjs.map +0 -1
  127. package/dist/chunk-PGNZKFQS.js.map +0 -1
  128. package/dist/chunk-SBCZ6RN5.cjs.map +0 -1
  129. package/dist/chunk-U5KWZU4X.js.map +0 -1
  130. package/dist/chunk-XNORY7M6.cjs.map +0 -1
  131. package/dist/controller-BhLLAoi8.d.cts +0 -1000
  132. package/dist/controller-BhLLAoi8.d.ts +0 -1000
  133. /package/dist/{chunk-3LV6RRPH.js.map → chunk-QGYDWPRM.js.map} +0 -0
package/dist/index.d.cts CHANGED
@@ -2,26 +2,35 @@ import { b as Token } from './tokens-D7yXvUU6.cjs';
2
2
  export { C as ColorGradient, c as ComparisonOperator, d as ConditionComparison, e as ConditionalKind, I as INSTRUCTION_REGEX, a as PromptDiagnostic, f as PromptDiagnosticCode, g as PromptValue, P as PromptValues, h as TEMPLATE_REGEX, T as Template, i as TemplateVersion, j as TokenType, V as VARIABLE_REGEX, k as instructionRegex, t as templateRegex, v as variableRegex } from './tokens-D7yXvUU6.cjs';
3
3
  export { ConditionExpression, ConditionalTagLike, ConditionalTagMatch, DataSourceInput, DataSourceWarning, DataSourceWarningCode, EvaluatedToken, ExtractVariablesOptions, FIELD_ALIASES, FieldMapping, FieldMatch, FieldMatchKind, MAX_DATA_SOURCE_FIELDS, MAX_DATA_SOURCE_RECORDS, MAX_MERGE_LENGTH, MAX_MERGE_OUTPUTS, MatchFieldsOptions, MergeDataSource, MergeDiagnostic, MergeDiagnosticCode, MergeOutput, MergeRecord, MergeRecordsOptions, MergeRecordsResult, MergeSkip, ParseDataSourceOptions, ParsedComparison, ParsedVariableBody, RecordToValuesOptions, ResolvePromptOptions, ResolvePromptResult, TEMPLATE_DEPTH_ERROR, TEMPLATE_LOOP_ERROR, TokenizeResult, VariableDescriptor, VariableFormField, compactVariableValues, compareConditionValues, conditionSubject, describeConditionalTag, detectDelimiter, escapeVariableText, evaluateCondition, evaluateConditionExpression, evaluatePromptTokens, extractVariables, formatComparisonOperand, formatConditionalTag, getLatestVersion, getPromptDiagnostics, getSuppliedValue, getTemplateBody, getVariableFormFields, isPromptValueSet, matchConditionalTags, matchFields, mergeRecords, normalizeFieldKey, normalizeFieldNames, parseComparison, parseConditionExpression, parseDataSource, parseVariableBody, recordToValues, resolvePrompt, serializeMergeOutputs, tokenizePrompt, tokenizePromptWithDiagnostics, unescapeVariableText } from './grammar/index.cjs';
4
4
  export { R as ResolveTemplatesOptions, S as SourceMapSegment, e as extractInstructionNames, a as extractTemplateNames, b as extractVariableNames, m as mapRawOffsetToResolved, c as mapResolvedOffsetToRaw, r as resolveTemplates, d as resolveTemplatesWithMapping, f as resolveVariables } from './sourcemap-C8AH3MBQ.cjs';
5
- import { D as DocumentImport, a as DocumentImportAdapter } from './index-BhJBSm2d.cjs';
6
- export { A as AddCommentOptions, b as Autocorrect, c as AutocorrectContext, d as AutocorrectCorrection, e as AutocorrectOptions, f as AutocorrectRule, g as AutocorrectStorage, B as BUILT_IN_IMPORT_ADAPTERS, h as Bookmark, i as BookmarkInfo, j as BookmarkOptions, C as COMMENT_MARK_NAME, k as ColorHighlighter, l as CommentRange, m as Comments, n as CommentsOptions, o as CommentsStorage, p as CompileFindPatternResult, q as CompiledFindPattern, r as CreateImportAdapterRegistryOptions, s as CrossReference, t as CrossReferenceOptions, u as CrossReferenceTarget, v as CrossReferenceTargetType, w as DEFAULT_AUTOCORRECT_EXCEPTIONS, x as DocumentCompare, y as DocumentCompareOptions, z as DocumentCompareStorage, E as DocumentSearchOptions, F as DocumentSearchResult, G as DocumentStructureCommandArgs, H as DocumentStructureCommandItem, I as EMPTY_FIND_REPLACE_SNAPSHOT, J as EditorCompareOptions, K as FIND_OPTION_TOGGLES, L as FIND_PARAGRAPH_MARK, M as FileImport, N as FileImportOptions, O as FindAllOptions, P as FindAllResult, Q as FindMatch, R as FindOptionToggle, S as FindOptions, T as FindPatternError, U as FindPatternErrorCode, V as FindReplace, W as FindReplaceCommandOptions, X as FindReplaceMode, Y as FindReplaceOptions, Z as FindReplaceSnapshot, _ as FindReplaceStorage, $ as FindReplaceStore, a0 as FocusHeadingOptions, a1 as FontSize, a2 as Footnote, a3 as FootnoteInfo, a4 as FootnoteReference, a5 as Footnotes, a6 as FootnotesOptions, a7 as GradientText, a8 as GradientTextOptions, a9 as Image, aa as ImageOptions, ab as InsertFootnoteOptions, ac as InsertTableOfContentsOptions, ad as LoadingNode, ae as MAX_FIND_PATTERN_LENGTH, af as Markdown, ag as OpenFindReplaceParams, ah as Outline, ai as OutlineHeading, aj as OutlineOptions, ak as OutlineSnapshot, al as OutlineStorage, am as OutlineStore, an as OutlineTreeItem, ao as PatternMatch, ap as ReplacePiece, aq as RichClipboard, ar as RichClipboardOptions, as as RichClipboardStorage, at as RichTextPresetOptions, au as SMILIE_REPLACEMENTS, av as SearchBudget, aw as SearchBudgetOptions, ax as SetBookmarkOptions, ay as SetSearchParams, az as SlashCommandMatchData, aA as SlashCommands, aB as SlashCommandsOptions, aC as SmilieReplacer, aD as TableOfContents, aE as TableOfContentsEntry, aF as TableOfContentsOptions, aG as TemplateSuggestions, aH as TemplateSuggestionsOptions, aI as applyDocumentComparison, aJ as applyReplacements, aK as autocorrectPluginKey, aL as buildOutlineTree, aM as capitalizeSentenceRules, aN as commentsPluginKey, aO as compareInEditor, aP as compileFindPattern, aQ as computeOutline, aR as createFindReplaceCommands, aS as createImportAdapterRegistry, aT as createOutlineStore, aU as createRichTextPreset, aV as createSearchBudget, aW as crossReferencePluginKey, aX as defaultAutocorrectRules, aY as defaultImportRegistry, aZ as documentStructureCommandItems, a_ as expandReplacement, a$ as fileImportPluginKey, b0 as findAllMatches, b1 as findAutocorrection, b2 as findCommentRanges, b3 as findHexColors, b4 as findImportAdapter, b5 as findReplacePluginKey, b6 as foldCodePoint, b7 as footnotesMarkdownIt, b8 as footnotesPluginKey, b9 as formatFindStatus, ba as fractionRules, bb as getActiveHeading, bc as getBookmarks, bd as getCommentAnchors, be as getCommentAuthor, bf as getCommentIdsAt, bg as getCommentStore, bh as getCrossReferenceTargets, bi as getDocumentStructureCommandItems, bj as getFindReplaceState, bk as getFindReplaceStore, bl as getFootnotes, bm as getImportAccept, bn as getOutline, bo as getTableOfContentsEntries, bp as handleImageInsertion, bq as htmlImportAdapter, br as imagePastePluginKey, bs as importFile, bt as insertImageNode, bu as isInsidePromptToken, bv as markdownImportAdapter, bw as navigateToHeading, bx as outlinePluginKey, by as parseReplacement, bz as plainTextImportAdapter, bA as registerImportAdapter, bB as removeImageNode, bC as richClipboardPluginKey, bD as rtfImportAdapter, bE as searchDocument, bF as smartQuoteRules, bG as smilieAutocorrectRules, bH as symbolRules, bI as syncFootnotes, bJ as tableOfContentsMarkdownIt, bK as tableOfContentsPluginKey, bL as twoInitialCapitalsRules, bM as unregisterImportAdapter, bN as updateImageSrc, bO as validateFindPattern, bP as writeRichClipboard } from './index-BhJBSm2d.cjs';
7
- export { B as BLOCK_CHANGE_ATTRIBUTE, D as DELETION_MARK_NAME, F as FORMAT_CHANGE_MARK_NAME, I as INSERTION_MARK_NAME, M as Mention, a as MentionEntity, b as MentionOptions, T as TRACK_CHANGES_SKIP_META, c as TrackChanges, d as TrackChangesOptions, e as TrackChangesSnapshot, f as TrackChangesStorage, g as TrackChangesStore, h as TrackedBlockChangeAttributes, i as TrackedBlockOperation, j as TrackedBlockSnapshot, k as TrackedChange, l as TrackedChangeAttributes, m as TrackedChangeType, n as TrackedChangesView, o as TrackedDeletion, p as TrackedFormatChange, q as TrackedFormatChangeAttributes, r as TrackedFormatSummary, s as TrackedInsertion, t as TrackedMark, u as createMentionExtension, v as describeBlockChange, w as describeFormatChange, x as getTrackChangesStore, y as getTrackedChangeAt, z as getTrackedChanges, A as isTrackChangesEnabled, C as resolveTrackedChanges, E as trackChangesPluginKey } from './track-changes-BK5sVf4_.cjs';
5
+ import { D as DocumentImport, a as DocumentImportAdapter, P as PdfStructureReport, b as PdfLayoutOptions, c as PdfRuleLine, d as PdfTextRun } from './index-Csd5qI8u.cjs';
6
+ export { A as AddCommentOptions, e as Autocorrect, f as AutocorrectContext, g as AutocorrectCorrection, h as AutocorrectOptions, i as AutocorrectRule, j as AutocorrectStorage, B as BUILT_IN_IMPORT_ADAPTERS, k as Bookmark, l as BookmarkInfo, m as BookmarkOptions, C as CHARACTER_STYLE_MARK_NAME, n as COMMENT_MARK_NAME, o as CharacterFormat, p as CharacterStyle, q as ColorHighlighter, r as CommentRange, s as Comments, t as CommentsOptions, u as CommentsStorage, v as CompileFindPatternResult, w as CompiledFindPattern, x as CreateImportAdapterRegistryOptions, y as CreateStyleFromSelectionOptions, z as CrossReference, E as CrossReferenceOptions, F as CrossReferenceTarget, G as CrossReferenceTargetType, H as DEFAULT_AUTOCORRECT_EXCEPTIONS, I as DEFAULT_STYLES, J as DocumentCompare, K as DocumentCompareOptions, L as DocumentCompareStorage, M as DocumentSearchOptions, N as DocumentSearchResult, O as DocumentStructureCommandArgs, Q as DocumentStructureCommandItem, R as EMPTY_FIND_REPLACE_SNAPSHOT, S as EditorCompareOptions, T as FIND_OPTION_TOGGLES, U as FIND_PARAGRAPH_MARK, V as FileImport, W as FileImportOptions, X as FindAllOptions, Y as FindAllResult, Z as FindMatch, _ as FindOptionToggle, $ as FindOptions, a0 as FindPatternError, a1 as FindPatternErrorCode, a2 as FindReplace, a3 as FindReplaceCommandOptions, a4 as FindReplaceMode, a5 as FindReplaceOptions, a6 as FindReplaceSnapshot, a7 as FindReplaceStorage, a8 as FindReplaceStore, a9 as FocusHeadingOptions, aa as FontSize, ab as Footnote, ac as FootnoteInfo, ad as FootnoteReference, ae as Footnotes, af as FootnotesOptions, ag as GradientText, ah as GradientTextOptions, ai as Image, aj as ImageOptions, ak as ImportStructureItem, al as ImportStructureReport, am as InsertFootnoteOptions, an as InsertTableOfContentsOptions, ao as LoadingNode, ap as MAX_FIND_PATTERN_LENGTH, aq as Markdown, ar as NORMAL_STYLE_ID, as as OpenFindReplaceParams, at as Outline, au as OutlineHeading, av as OutlineOptions, aw as OutlineSnapshot, ax as OutlineStorage, ay as OutlineStore, az as OutlineTreeItem, aA as ParagraphFormat, aB as ParagraphStyles, aC as ParagraphStylesOptions, aD as ParagraphStylesSnapshot, aE as ParagraphStylesStorage, aF as ParagraphStylesStore, aG as PatternMatch, aH as PdfLayoutBlock, aI as PdfLayoutPage, aJ as PdfLayoutResult, aK as PdfTableCell, aL as ReplacePiece, aM as ResolvedStyle, aN as RichClipboard, aO as RichClipboardOptions, aP as RichClipboardStorage, aQ as RichTextPresetCommandPackages, aR as RichTextPresetOptions, aS as SMILIE_REPLACEMENTS, aT as STYLE_ID_ATTRIBUTE, aU as SearchBudget, aV as SearchBudgetOptions, aW as SetBookmarkOptions, aX as SetSearchParams, aY as SlashCommandMatchData, aZ as SlashCommands, a_ as SlashCommandsOptions, a$ as SmilieReplacer, b0 as StyleBlock, b1 as StyleCSSOptions, b2 as StyleDefaults, b3 as StyleDefinition, b4 as StyleKind, b5 as StyleRegistry, b6 as StyleRegistryJSON, b7 as StyleRegistryOptions, b8 as StyleRegistrySnapshot, b9 as TableOfContents, ba as TableOfContentsEntry, bb as TableOfContentsOptions, bc as TemplateSuggestions, bd as TemplateSuggestionsOptions, be as analyzePdfLayout, bf as applyDocumentComparison, bg as applyReplacements, bh as autocorrectPluginKey, bi as buildOutlineTree, bj as capitalizeSentenceRules, bk as captureSelectionFormat, bl as commentsPluginKey, bm as compareInEditor, bn as compileFindPattern, bo as computeOutline, bp as createFindReplaceCommands, bq as createImportAdapterRegistry, br as createOutlineStore, bs as createParagraphStylesStore, bt as createRichTextPreset, bu as createSearchBudget, bv as createStyleRegistry, bw as crossReferencePluginKey, bx as defaultAutocorrectRules, by as defaultImportRegistry, bz as documentStructureCommandItems, bA as expandReplacement, bB as fileImportPluginKey, bC as findAllMatches, bD as findAutocorrection, bE as findCommentRanges, bF as findHexColors, bG as findImportAdapter, bH as findReplacePluginKey, bI as foldCodePoint, bJ as footnotesMarkdownIt, bK as footnotesPluginKey, bL as formatFindStatus, bM as fractionRules, bN as getActiveHeading, bO as getBookmarks, bP as getCommentAnchors, bQ as getCommentAuthor, bR as getCommentIdsAt, bS as getCommentStore, bT as getCrossReferenceTargets, bU as getDocumentStructureCommandItems, bV as getFindReplaceState, bW as getFindReplaceStore, bX as getFootnotes, bY as getImportAccept, bZ as getOutline, b_ as getParagraphStyleAt, b$ as getStyleRegistry, c0 as getTableOfContentsEntries, c1 as handleImageInsertion, c2 as htmlImportAdapter, c3 as imagePastePluginKey, c4 as importFile, c5 as insertImageNode, c6 as isInsidePromptToken, c7 as isParagraphStyleAvailable, c8 as isValidStyleId, c9 as markdownImportAdapter, ca as navigateToHeading, cb as outlinePluginKey, cc as paragraphStylesPluginKey, cd as parseReplacement, ce as pdfLayoutBlocksToHtml, cf as plainTextImportAdapter, cg as registerImportAdapter, ch as removeImageNode, ci as richClipboardPluginKey, cj as rtfImportAdapter, ck as safeCSSValue, cl as searchDocument, cm as smartQuoteRules, cn as smilieAutocorrectRules, co as symbolRules, cp as syncFootnotes, cq as tableOfContentsMarkdownIt, cr as tableOfContentsPluginKey, cs as twoInitialCapitalsRules, ct as unregisterImportAdapter, cu as updateImageSrc, cv as validateFindPattern, cw as writeRichClipboard } from './index-Csd5qI8u.cjs';
7
+ export { B as BLOCK_CHANGE_ATTRIBUTE, D as DELETION_MARK_NAME, F as FORMAT_CHANGE_MARK_NAME, I as INSERTION_MARK_NAME, M as MOVE_FROM_CLASS, a as MOVE_ID_ATTRIBUTE, b as MOVE_TO_CLASS, c as Mention, d as MentionEntity, e as MentionNodeInfo, f as MentionOptions, T as TRACK_CHANGES_SKIP_META, g as TrackChanges, h as TrackChangesOptions, i as TrackChangesSnapshot, j as TrackChangesStorage, k as TrackChangesStore, l as TrackedBlockChangeAttributes, m as TrackedBlockOperation, n as TrackedBlockSnapshot, o as TrackedChange, p as TrackedChangeAttributes, q as TrackedChangeType, r as TrackedChangesView, s as TrackedDeletion, t as TrackedFormatChange, u as TrackedFormatChangeAttributes, v as TrackedFormatSummary, w as TrackedInsertion, x as TrackedMark, y as createMentionExtension, z as describeBlockChange, A as describeFormatChange, C as getMentionNodes, E as getTrackChangesStore, G as getTrackedChangeAt, H as getTrackedChanges, J as isMoveSized, K as isTrackChangesEnabled, L as resolveTrackedChanges, N as setMentionRoleAt, O as trackChangesPluginKey, P as trackedChangeLabel } from './track-changes-D_VAPELi.cjs';
8
8
  export { C as CommentAnchor, a as CommentReply, b as CommentStore, c as CommentStoreListener, d as CommentStoreOptions, e as CommentStoreSnapshot, f as CommentThread, g as CreateThreadInput, R as ReviewAuthor, S as SerializedComments, h as createCommentStore, i as createReviewId, j as formatReviewTime } from './comment-store-BEMgVlAA.cjs';
9
- export { ClipboardDataLike, ExtractedMention, MARKDOWN_MENTION_SPLIT_REGEX, MENTION_REGEX, MarkdownToHtmlOptions, MentionSegment, PIXERATE_DOCUMENT_MIME, PlainTextOptions, PreprocessMarkdownMentionsOptions, RichClipboardPayload, SanitizeHtmlOptions, escapeHtml, extractMentions, extractMentionsFromDoc, getClipboardData, getEditorMarkdown, getEditorText, getSchemaSignature, htmlToPlainText, markdownToTipTapHtml, parseMentionSegments, parseRichClipboardPayload, plainTextToParagraphHtml, plainTextToSlice, plainTextToTipTapHtml, preprocessMarkdownFileLinks, preprocessMarkdownMentions, readRichClipboard, rtfToPlainText, sanitizeHtml, sanitizeImportedHtml, serializeRichClipboardPayload, stripMarkdownCode } from './serializers/index.cjs';
9
+ export { ClipboardDataLike, ExtractMentionsOptions, ExtractedMention, MARKDOWN_MENTION_SPLIT_REGEX, MarkdownToHtmlOptions, MentionDetail, MentionSegment, PIXERATE_DOCUMENT_MIME, PlainTextOptions, PreprocessMarkdownMentionsOptions, RichClipboardPayload, SanitizeHtmlOptions, escapeHtml, extractMentions, extractMentionsFromDoc, getClipboardData, getEditorMarkdown, getEditorText, getSchemaSignature, htmlToPlainText, markdownToTipTapHtml, parseMentionSegments, parseRichClipboardPayload, plainTextToParagraphHtml, plainTextToSlice, plainTextToTipTapHtml, preprocessMarkdownFileLinks, preprocessMarkdownMentions, readRichClipboard, rtfToPlainText, sanitizeHtml, sanitizeImportedHtml, serializeRichClipboardPayload, stripMarkdownCode } from './serializers/index.cjs';
10
10
  import { Editor, EditorOptions, Content, Extensions } from '@tiptap/core';
11
11
  export { Content, Editor, EditorOptions, Extensions } from '@tiptap/core';
12
- export { A as ASTNode, B as BinaryOpNode, C as CellCoordinate, a as CellData, b as CellDep, c as CellFormat, d as CellPosition, e as CellRange, f as CellRefNode, g as CellValueReader, h as ColumnBinding, i as ColumnType, j as CsvExportOptions, k as CsvImportOptions, D as DEFAULT_COLUMN_WIDTH, l as DEFAULT_ROW_HEIGHT, m as DataSourceBinder, n as DependencyGraph, E as EvaluationContext, F as FORMULA_ERRORS, o as FilterOperator, p as FilterRule, q as FormulaDiagnostic, r as FormulaErrorCode, s as FormulaEvaluationResult, t as FormulaEvaluator, u as FormulaParser, v as FormulaRange, w as FormulaToken, x as FormulaTokenType, y as FunctionCallNode, G as GroupAggregate, z as GroupSummary, L as LiteralNode, M as MAX_FORMULA_ARRAY_SIZE, N as NameNode, H as NewFilterRule, P as ParsedSpreadsheetClipboard, I as PropertyRefNode, R as RangeNode, J as RowType, K as SPREADSHEET_CLIPBOARD_MIME, O as SortDirection, Q as SortKey, T as SpillRefNode, U as SpreadsheetCellSpan, V as SpreadsheetClipboardCell, W as SpreadsheetClipboardData, X as SpreadsheetClipboardPayload, Y as SpreadsheetClipboardSource, Z as SpreadsheetColumn, S as SpreadsheetController, _ as SpreadsheetControllerOptions, $ as SpreadsheetDataSource, a0 as SpreadsheetDataSourceField, a1 as SpreadsheetDocument, a2 as SpreadsheetFilterState, a3 as SpreadsheetGrouping, a4 as SpreadsheetRow, a5 as SpreadsheetRowGroup, a6 as SpreadsheetRowSection, a7 as SpreadsheetSpill, a8 as SpreadsheetTableSettings, a9 as SpreadsheetViewColumn, aa as SpreadsheetViewModel, ab as SpreadsheetViewRow, ac as StructuralChange, ad as UnaryOpNode, ae as WHOLE_COLUMN_END_ROW, af as buildSpreadsheetView, ag as colNameToIndex, ah as columnDependencyKey, ai as compareNumbers, aj as compareValues, ak as computeRowGroups, al as createSpreadsheetClipboardData, am as describeFormulaError, an as extractCellDependencies, ao as getRowSection, ap as getTableSections, aq as indexToColName, ar as isFormulaError, as as mapFormulaReferences, at as numberToText, au as offsetFormulaReferences, av as parseCellReference, aw as parseFormula, ax as parseHtmlTable, ay as parseRange, az as readSpreadsheetClipboard, aA as rebaseClipboardRows, aB as remapFormulaReferences, aC as rowPassesFilters, aD as serializeHtmlTable, aE as shiftFormulaReferences, aF as sortCompareValues, aG as tokenizeFormula } from './controller-BhLLAoi8.cjs';
13
- export { CellInputFormatKind, CsvParseOptions, CsvSerializeOptions, FillDirection, FormattedNumberValue, FormulaActiveCall, FormulaArgument, FormulaArgumentSpec, FormulaArgumentType, FormulaCaretContext, FormulaCriteriaPredicate, FormulaFunctionCategory, FormulaFunctionContext, FormulaFunctionDefinition, FormulaFunctionSuggestion, FormulaHints, FormulaSignaturePart, ImportFileIntoSpreadsheetOptions, MAX_NUMBER_FORMAT_CODE_CHARS, NUMBER_FORMAT_PRESETS, NumberFormat, NumberFormatColor, NumberFormatKind, NumberFormatPreset, ParsedCellInput, SPREADSHEET_IMPORT_ADAPTERS, SPREADSHEET_TABLE_ACTIONS, SpreadsheetImport, SpreadsheetImportAdapter, SpreadsheetMenuItem, SpreadsheetTableActionName, SpreadsheetTableActions, aggregateValues, applyFormulaSuggestion, bindSpreadsheetTableActions, builtinNumberFormat, builtinNumberFormatId, cellFormatForNumberFormat, checkFormulaArgumentCount, clampMenuPosition, clearNumberFormatCache, compareCellValues, computeFillTarget, csvImportAdapter, dateValueToSerial, escapeCsvField, fillSeries, formatCellDisplay, formatCellForDisplay, formatGeneralFit, formatNumberFormatValue, formatTextFunction, formatValueWithCode, getFillDirection, getFormulaArgumentSpecIndex, getFormulaCaretContext, getFormulaFunction, getFormulaHints, getFormulaSignature, getFormulaSignatureParts, getSpreadsheetMenuItems, importFileIntoSpreadsheet, isBlankValue, isGeneralNumberFormat, isSingleCellRange, listFormulaFunctions, matchesFilterRule, normalizeRange, numberFormatColorToCss, numberFormatForCellFormat, parseCellInput, parseCriteria, parseCsv, parseNumberText, parseTsv, rangeContains, rangeContainsRange, rangesIntersect, registerFormulaFunction, registerSpreadsheetImportAdapters, roundFloat, runSpreadsheetMenuItem, searchFormulaFunctions, serialFromYmd, serializeCsv, serializeTsv, toNumber, tsvImportAdapter, unregisterFormulaFunction, wildcardToRegExp } from './spreadsheet/index.cjs';
12
+ export { A as ASTNode, B as BinaryOpNode, C as CellCoordinate, a as CellData, b as CellDep, c as CellFormat, d as CellPosition, e as CellRange, f as CellRefNode, g as CellValueReader, h as ColumnBinding, i as ColumnType, j as ConditionalCellFormat, k as ConditionalFormatCondition, l as ConditionalFormatIconSet, m as ConditionalFormatOperator, n as ConditionalFormatOverlay, o as ConditionalFormatRule, p as ConditionalFormatSheet, q as ConditionalFormatStyle, r as ConditionalFormatTimePeriod, s as ConditionalFormatType, t as ConditionalFormatValue, u as CsvExportOptions, v as CsvImportOptions, D as DEFAULT_COLUMN_WIDTH, w as DEFAULT_ROW_HEIGHT, x as DataSourceBinder, y as DataValidationErrorStyle, z as DataValidationOperator, E as DataValidationResult, F as DataValidationRule, G as DataValidationSheet, H as DataValidationType, I as DependencyGraph, J as EvaluationContext, K as FORMULA_ERRORS, L as FilterOperator, M as FilterRule, N as FormulaDiagnostic, O as FormulaErrorCode, P as FormulaEvaluationResult, Q as FormulaEvaluator, R as FormulaNameDefinition, T as FormulaParser, U as FormulaRange, V as FormulaReferenceFilter, W as FormulaReferenceInfo, X as FormulaToken, Y as FormulaTokenType, Z as FunctionCallNode, _ as GroupAggregate, $ as GroupSummary, a0 as InvokeNode, a1 as LiteralNode, a2 as MAX_FORMULA_ARRAY_SIZE, a3 as MissingNode, a4 as NameDep, a5 as NameNode, a6 as NewConditionalFormatRule, a7 as NewDataValidationRule, a8 as NewFilterRule, a9 as ParsedSpreadsheetClipboard, aa as PropertyRefNode, ab as RangeNode, ac as RowType, ad as SPREADSHEET_CLIPBOARD_MIME, ae as SheetQualifier, af as SortDirection, ag as SortKey, ah as SpillRefNode, ai as SpreadsheetCellSpan, aj as SpreadsheetClipboardCell, ak as SpreadsheetClipboardData, al as SpreadsheetClipboardPayload, am as SpreadsheetClipboardSource, an as SpreadsheetColumn, ao as SpreadsheetCommitResult, S as SpreadsheetController, ap as SpreadsheetControllerOptions, aq as SpreadsheetDataSource, ar as SpreadsheetDataSourceField, as as SpreadsheetDefinedName, at as SpreadsheetDocument, au as SpreadsheetFilterState, av as SpreadsheetGrouping, aw as SpreadsheetNameInfo, ax as SpreadsheetNameScope, ay as SpreadsheetRow, az as SpreadsheetRowGroup, aA as SpreadsheetRowSection, aB as SpreadsheetSheetInfo, aC as SpreadsheetSpill, aD as SpreadsheetTableSettings, aE as SpreadsheetValidationAction, aF as SpreadsheetValidationPrompt, aG as SpreadsheetViewColumn, aH as SpreadsheetViewModel, aI as SpreadsheetViewRow, aJ as SpreadsheetWorkbook, aK as StructuralChange, aL as UnaryOpNode, aM as WHOLE_COLUMN_END_ROW, aN as buildSpreadsheetView, aO as colNameToIndex, aP as columnDependencyKey, aQ as compareNumbers, aR as compareValues, aS as computeRowGroups, aT as createSpreadsheetClipboardData, aU as deleteSheetInFormula, aV as describeFormulaError, aW as extractCellDependencies, aX as extractNameDependencies, aY as formatSheetPrefix, aZ as formulaIdentifiers, a_ as getRowSection, a$ as getTableSections, b0 as indexToColName, b1 as isFormulaError, b2 as mapFormulaReferences, b3 as numberToText, b4 as offsetFormulaReferences, b5 as parseCellReference, b6 as parseFormula, b7 as parseHtmlTable, b8 as parseRange, b9 as quoteSheetName, ba as readSpreadsheetClipboard, bb as rebaseClipboardRows, bc as remapFormulaReferences, bd as renameNameInFormula, be as renameSheetInFormula, bf as rowPassesFilters, bg as serializeHtmlTable, bh as sheetNameNeedsQuotes, bi as shiftFormulaReferences, bj as sortCompareValues, bk as tokenizeFormula } from './controller-BIJiNoVs.cjs';
13
+ export { CONDITIONAL_FORMAT_ICON_SETS, CONDITIONAL_FORMAT_PRESETS, CONDITIONAL_FORMAT_STYLE_PRESETS, CONDITIONAL_FORMAT_TIME_PERIODS, CellInputFormatKind, ConditionalFormatCss, ConditionalFormatEngine, ConditionalFormatIconGlyph, ConditionalFormatPresetField, ConditionalFormatPresetInfo, ConditionalFormatPresetInput, ConditionalFormatPresetKind, CsvParseOptions, CsvSerializeOptions, DATA_VALIDATION_ERROR_STYLE_OPTIONS, DATA_VALIDATION_OPERATOR_OPTIONS, DATA_VALIDATION_TYPE_OPTIONS, DEFAULT_CONDITIONAL_FORMAT_STYLE, DEFAULT_DATA_VALIDATION_MESSAGE, DEFAULT_DATA_VALIDATION_TITLE, EMPTY_CONDITIONAL_FORMAT_OVERLAY, FillDirection, FormattedNumberValue, FormulaActiveCall, FormulaArgument, FormulaArgumentSpec, FormulaArgumentType, FormulaCaretContext, FormulaCriteriaPredicate, FormulaEnvironment, FormulaFunctionCategory, FormulaFunctionContext, FormulaFunctionDefinition, FormulaFunctionSuggestion, FormulaHints, FormulaLambda, FormulaNameSuggestionSource, FormulaSignaturePart, ImportFileIntoSpreadsheetOptions, MAX_DEFINED_NAME_LENGTH, MAX_LAMBDA_DEPTH, MAX_NUMBER_FORMAT_CODE_CHARS, MAX_SHEET_NAME_LENGTH, NUMBER_FORMAT_PRESETS, NumberFormat, NumberFormatColor, NumberFormatKind, NumberFormatPreset, ParsedCellInput, SPREADSHEET_IMPORT_ADAPTERS, SPREADSHEET_TABLE_ACTIONS, SpreadsheetImport, SpreadsheetImportAdapter, SpreadsheetMenuItem, SpreadsheetNameRow, SpreadsheetPanelId, SpreadsheetTableActionName, SpreadsheetTableActions, adjustRangeForStructuralChange, adjustRangesForStructuralChange, aggregateValues, applyFormulaSuggestion, bindSpreadsheetTableActions, blendConditionalFormatColors, builtinNumberFormat, builtinNumberFormatId, cellFormatForNumberFormat, checkFormulaArgumentCount, clampMenuPosition, clearNumberFormatCache, compareCellValues, computeFillTarget, conditionalFormatContrastColor, conditionalFormatIconCount, conditionalFormatNumber, conditionalFormatStyleString, copySheetName, createConditionalFormatRule, csvImportAdapter, dateValueToSerial, defaultIconThresholds, describeConditionalFormat, describeDataValidation, escapeCsvField, evaluateConditionalFormats, fillSeries, findDataValidation, findInvalidCells, forEachRangeCell, formatCellDisplay, formatCellForDisplay, formatGeneralFit, formatNumberFormatValue, formatRuleRanges, formatTextFunction, formatValueWithCode, getConditionalFormatCss, getConditionalFormatIcon, getDataBarCss, getFillDirection, getFormulaArgumentSpecIndex, getFormulaCaretContext, getFormulaFunction, getFormulaHints, getFormulaSignature, getFormulaSignatureParts, getNameManagerRows, getSheetTabMenuItems, getSpreadsheetMenuItems, getValidationListValues, importFileIntoSpreadsheet, isBlankValue, isFormulaLambda, isGeneralNumberFormat, isLambdaDefinition, isSingleCellRange, listFormulaFunctions, matchesFilterRule, matchesTimePeriod, nextSheetName, normalizeRange, numberFormatColorToCss, numberFormatForCellFormat, parseCellInput, parseCriteria, parseCsv, parseNumberText, parseRuleRanges, parseTsv, rangeContains, rangeContainsRange, rangesContain, rangesIntersect, registerFormulaFunction, registerSpreadsheetImportAdapters, roundFloat, ruleAnchor, ruleFormulaAt, runSpreadsheetMenuItem, searchFormulaFunctions, serialFromYmd, serializeCsv, serializeTsv, sheetDropIndex, shiftRuleFormula, subtractRange, subtractRangeFromRanges, toNumber, tsvImportAdapter, unregisterFormulaFunction, validateCellInput, validateDefinedName, validateSheetName, wildcardToRegExp } from './spreadsheet/index.cjs';
14
14
  export { BindDirtyToHistoryOptions, DirtyHistorySource, DirtyTracker, DirtyTrackerOptions, HistoryDirtyBinding, HistoryManager, bindDirtyToHistory, createDirtyTracker, createHistoryManager, defaultIsEqual, withoutDirty } from './history/index.cjs';
15
15
  export { C as Command, a as HistoryEntry, b as HistoryManagerOptions, c as HistoryMark, H as HistoryState, M as MergedExecutionOptions, S as SnapshotCommandOptions } from './types-GT5a5YAX.cjs';
16
- import { I as ImportAdapterRegistry, a as ImportOutcome, F as FileLike } from './registry-GJI4gToU.cjs';
17
- export { b as FindImportAdapterQuery, c as ImportAdapter, d as ImportContext, e as ImportError, f as ImportErrorCode, g as ImportFileOptions, h as ImportInput, i as ImportTarget, R as RegisterImportAdapterOptions, j as createImportContext } from './registry-GJI4gToU.cjs';
16
+ import { I as ImportAdapterRegistry, a as ImportOutcome, F as FileLike, b as ImportAdapter } from './registry-CEgwXED1.cjs';
17
+ export { c as FindImportAdapterQuery, d as ImportContext, e as ImportError, f as ImportErrorCode, g as ImportFileOptions, h as ImportInput, i as ImportTarget, R as RegisterImportAdapterOptions, j as createImportContext } from './registry-CEgwXED1.cjs';
18
18
  import { Schema, Slice } from '@tiptap/pm/model';
19
19
  import { EditorView } from '@tiptap/pm/view';
20
20
  export { DiffChange, DiffOpType, DiffRun, DiffSequencesOptions, diffChanges, diffSequences } from './compare/index.cjs';
21
- export { C as CompareDocumentsOptions, a as CompareDocumentsResult, b as CompareSource, c as CompareSummary, d as compareDocuments, e as compareHtml } from './documents-KRTPhvst.cjs';
21
+ export { C as CompareDocumentsOptions, a as CompareDocumentsResult, b as CompareSource, c as CompareSummary, d as compareDocuments, e as compareHtml } from './documents-Gp7wb0Me.cjs';
22
+ export { M as MENTION_REGEX, a as MentionRoleSyntax, T as TextMention, f as findTextMentions, b as formatMentionText, s as setMentionRoleInText } from './mention-text-CDnCFd3c.cjs';
22
23
  export { MarkdownOptions } from 'tiptap-markdown';
23
24
  import '@tiptap/pm/state';
25
+ import '@tiptap/extension-underline';
26
+ import '@tiptap/extension-text-style';
27
+ import '@tiptap/extension-text-align';
28
+ import '@tiptap/extension-task-list';
29
+ import '@tiptap/extension-link';
24
30
  import '@tiptap/extension-image';
31
+ import '@tiptap/extension-highlight';
32
+ import '@tiptap/extension-color';
33
+ import '@tiptap/starter-kit';
25
34
  import './registry-D32LpIc4.cjs';
26
35
  import './schema-DYDGdYL9.cjs';
27
36
  import '@tiptap/extension-mention';
@@ -141,6 +150,8 @@ declare function insertImportedDocument(target: ImportEditorTarget, content: Doc
141
150
  interface ImportFilesIntoEditorOptions extends InsertImportedDocumentOptions {
142
151
  /** Registry to match files against (default: the shared default registry). */
143
152
  registry?: ImportAdapterRegistry;
153
+ /** Per-adapter options keyed by adapter id, e.g. `{ pdf: { structure: false } }` (see `ImportFileOptions`). */
154
+ adapterOptions?: Record<string, unknown>;
144
155
  /** Called after each file is inserted. */
145
156
  onImport?: (outcome: ImportOutcome<DocumentImport>, file: FileLike) => void;
146
157
  /** Called for each file that cannot be imported; other files continue. */
@@ -198,6 +209,26 @@ declare class FileImportController {
198
209
  openFilePicker: () => Promise<ImportOutcome<DocumentImport>[]>;
199
210
  }
200
211
  declare function createFileImportController(getTarget: () => ImportEditorTarget | null | undefined, options?: FileImportControllerOptions): FileImportController;
212
+ /** Totals of the structure reports (`DocumentImport.structure`) of several imports. */
213
+ interface ImportStructureSummary {
214
+ /** Imports that carried a report. */
215
+ files: number;
216
+ /** `"mixed"` when some files were imported with structure detection and some without. */
217
+ mode: "structured" | "plain" | "mixed";
218
+ headings: number;
219
+ lists: number;
220
+ tables: number;
221
+ paragraphs: number;
222
+ multiColumnPages: number;
223
+ /** Mean of the reports' confidences (0–1). */
224
+ confidence: number;
225
+ }
226
+ /**
227
+ * Sums the structure reports of import outcomes, e.g. `lastOutcomes` from a
228
+ * file-import controller. Returns `null` when no outcome has a report (only
229
+ * structure-aware adapters such as PDF produce one).
230
+ */
231
+ declare function summarizeImportStructure(outcomes: readonly ImportOutcome<DocumentImport>[]): ImportStructureSummary | null;
201
232
 
202
233
  /**
203
234
  * Minimal, dependency-free ZIP reader used by the DOCX and zipped-export
@@ -361,19 +392,22 @@ declare function createDocxImportAdapter(options?: DocxImportOptions): DocumentI
361
392
  declare const docxImportAdapter: DocumentImportAdapter;
362
393
 
363
394
  /**
364
- * PDF text import through an injected pdf.js-compatible library. The editor
365
- * ships no PDF parser; consumers that already bundle `pdfjs-dist` register
366
- * the adapter themselves:
395
+ * PDF import through an injected pdf.js-compatible library. The editor ships
396
+ * no PDF parser; consumers that already bundle `pdfjs-dist` register the
397
+ * adapter themselves:
367
398
  *
368
399
  * ```ts
369
400
  * import * as pdfjs from "pdfjs-dist";
370
401
  * registerImportAdapter(createPdfImportAdapter(pdfjs));
371
402
  * ```
372
403
  *
373
- * Text items are grouped into lines by baseline (`transform[5]`) and lines
374
- * into paragraphs by vertical gaps larger than the page's typical line
375
- * spacing (or blank `hasEOL` lines). Only text is imported: no images,
376
- * tables, links or styling.
404
+ * By default the text runs (with positions and fonts) and the page's ruling
405
+ * lines go through `analyzePdfLayout`, which recovers reading order across
406
+ * columns, headings, lists and tables, and drops running headers, footers and
407
+ * page numbers. `structure: false` (at creation, or per import through
408
+ * `adapterOptions: { pdf: { structure: false } }`) falls back to plain
409
+ * paragraphs: items grouped into lines by baseline and lines into paragraphs
410
+ * by vertical gaps. Images, links and character styling are not imported.
377
411
  */
378
412
  /** A text item from `page.getTextContent()` (marked-content items have no `str`). */
379
413
  interface PdfJsTextItem {
@@ -384,14 +418,32 @@ interface PdfJsTextItem {
384
418
  height?: number;
385
419
  /** pdf.js sets this when a line break follows the item. */
386
420
  hasEOL?: boolean;
421
+ /** Font resource id, e.g. `g_d0_f1` (see `PdfJsTextContent.styles` and `page.commonObjs`). */
422
+ fontName?: string;
387
423
  }
388
424
  interface PdfJsTextContent {
389
425
  items: ReadonlyArray<PdfJsTextItem | {
390
426
  type: string;
391
427
  }>;
428
+ /** Per `fontName`: pdf.js reports the family (sometimes the real font name). */
429
+ styles?: Record<string, {
430
+ fontFamily?: string;
431
+ } | undefined>;
432
+ }
433
+ /** pdf.js operator list (`page.getOperatorList()`). */
434
+ interface PdfJsOperatorList {
435
+ fnArray: ArrayLike<number>;
436
+ argsArray: ArrayLike<unknown>;
392
437
  }
393
438
  interface PdfJsPage {
394
439
  getTextContent(): Promise<PdfJsTextContent>;
440
+ /** Used to read ruling lines (table borders); optional. */
441
+ getOperatorList?(): Promise<PdfJsOperatorList>;
442
+ /** Loaded fonts: `get(fontName)` returns `{ name, bold, black, italic }` once the operator list was read. */
443
+ commonObjs?: {
444
+ has?(id: string): boolean;
445
+ get(id: string): unknown;
446
+ };
395
447
  cleanup?(): unknown;
396
448
  }
397
449
  interface PdfJsDocument {
@@ -407,6 +459,8 @@ interface PdfJsLike {
407
459
  }): {
408
460
  promise: Promise<PdfJsDocument>;
409
461
  };
462
+ /** pdf.js operator codes (`pdfjs.OPS`); the classic values are assumed when missing. */
463
+ OPS?: Record<string, number>;
410
464
  }
411
465
  interface PdfTextOptions {
412
466
  /**
@@ -415,7 +469,19 @@ interface PdfTextOptions {
415
469
  */
416
470
  paragraphGap?: number;
417
471
  }
418
- interface PdfImportOptions extends PdfTextOptions {
472
+ /** Options that may also be passed per import as `adapterOptions[adapterId]`. */
473
+ interface PdfImportCallOptions extends PdfTextOptions {
474
+ /**
475
+ * Detect headings, lists, tables, columns and running headers (default
476
+ * `true`). `false` imports plain paragraphs, as before structure detection.
477
+ */
478
+ structure?: boolean;
479
+ /** Fine-tuning for `analyzePdfLayout`. */
480
+ layout?: PdfLayoutOptions;
481
+ /** Read the operator list for table rules and font weights (default `true`). */
482
+ rulingLines?: boolean;
483
+ }
484
+ interface PdfImportOptions extends PdfImportCallOptions {
419
485
  /** Adapter id (default `"pdf"`). */
420
486
  id?: string;
421
487
  /** Import at most this many pages (default: all). */
@@ -423,6 +489,10 @@ interface PdfImportOptions extends PdfTextOptions {
423
489
  /** Extra `getDocument` parameters, e.g. `{ disableFontFace: true }`. */
424
490
  documentParams?: Record<string, unknown>;
425
491
  }
492
+ /** What the PDF adapter returns: a `DocumentImport` with its structure report. */
493
+ interface PdfDocumentImport extends DocumentImport {
494
+ structure: PdfStructureReport;
495
+ }
426
496
  /**
427
497
  * Groups one page's pdf.js text items into paragraphs. Exposed for custom
428
498
  * adapters and tests.
@@ -430,8 +500,29 @@ interface PdfImportOptions extends PdfTextOptions {
430
500
  declare function pdfTextItemsToParagraphs(items: ReadonlyArray<PdfJsTextItem | {
431
501
  type: string;
432
502
  }>, options?: PdfTextOptions): string[];
503
+ /** Font details pdf.js exposes for a text item's `fontName`. */
504
+ interface PdfFontInfo {
505
+ name?: string;
506
+ bold?: boolean;
507
+ italic?: boolean;
508
+ }
509
+ /**
510
+ * Converts pdf.js text items to layout runs. `font` resolves a `fontName` to
511
+ * its real name and weight (the adapter reads `page.commonObjs` and
512
+ * `textContent.styles`).
513
+ */
514
+ declare function pdfTextItemsToRuns(items: ReadonlyArray<PdfJsTextItem | {
515
+ type: string;
516
+ }>, font?: (fontName: string) => PdfFontInfo | undefined): PdfTextRun[];
517
+ /**
518
+ * Reads straight, axis-aligned strokes and thin filled bars (table rules)
519
+ * from a pdf.js operator list, in PDF user space. Understands the classic
520
+ * `constructPath` arguments (`[ops, args, minMax]`) and the pdf.js 5 form
521
+ * (`[paintOp, [pathData], minMax]`); clipping paths and curves are ignored.
522
+ */
523
+ declare function pdfOperatorListToRules(list: PdfJsOperatorList, opsTable?: Record<string, number>): PdfRuleLine[];
433
524
  /** Creates a PDF `document` adapter backed by an injected pdf.js-compatible library. */
434
- declare function createPdfImportAdapter(pdfjs: PdfJsLike, options?: PdfImportOptions): DocumentImportAdapter;
525
+ declare function createPdfImportAdapter(pdfjs: PdfJsLike, options?: PdfImportOptions): ImportAdapter<PdfDocumentImport>;
435
526
 
436
527
  /**
437
528
  * Zipped document exports (Notion, Confluence, Obsidian, static-site dumps):
@@ -485,4 +576,4 @@ declare function createZipImportAdapter(options?: ZipImportOptions): DocumentImp
485
576
  /** Zipped-export adapter with default options. Opt in with `registerImportAdapter(zipImportAdapter)`. */
486
577
  declare const zipImportAdapter: DocumentImportAdapter;
487
578
 
488
- export { type BaseSlotProps, type ButtonSlotProps, DEFAULT_DOCX_MAX_IMAGE_SIZE, DEFAULT_ZIP_MAX_ENTRIES, DEFAULT_ZIP_MAX_TOTAL_SIZE, DOCX_MIME_TYPES, DocumentImport, DocumentImportAdapter, type DocxImportOptions, EditorController, type EditorControllerOptions, type EditorSlotsMap, FileImportController, type FileImportControllerOptions, type FileImportState, FileLike, ImportAdapterRegistry, type ImportEditorTarget, type ImportFilesIntoEditorOptions, ImportOutcome, type InsertImportedDocumentOptions, type NodeHeaderSlotProps, type PdfImportOptions, type PdfJsDocument, type PdfJsLike, type PdfJsPage, type PdfJsTextContent, type PdfJsTextItem, type PdfTextOptions, Token, type TooltipSlotProps, ZipArchive, type ZipDocumentImport, type ZipEntry, ZipError, type ZipErrorCode, type ZipImportOptions, type ZipReadOptions, createDocxImportAdapter, createEditor, createFileImportController, createPdfImportAdapter, createZipImportAdapter, docxImportAdapter, docxToDocumentImport, htmlToSlice, importFilesIntoEditor, insertImportedDocument, isUnsafeZipPath, pdfTextItemsToParagraphs, pickImportFiles, readZip, sortZipEntryNames, zipCrc32, zipEntryTitle, zipImportAdapter };
579
+ export { type BaseSlotProps, type ButtonSlotProps, DEFAULT_DOCX_MAX_IMAGE_SIZE, DEFAULT_ZIP_MAX_ENTRIES, DEFAULT_ZIP_MAX_TOTAL_SIZE, DOCX_MIME_TYPES, DocumentImport, DocumentImportAdapter, type DocxImportOptions, EditorController, type EditorControllerOptions, type EditorSlotsMap, FileImportController, type FileImportControllerOptions, type FileImportState, FileLike, ImportAdapter, ImportAdapterRegistry, type ImportEditorTarget, type ImportFilesIntoEditorOptions, ImportOutcome, type ImportStructureSummary, type InsertImportedDocumentOptions, type NodeHeaderSlotProps, type PdfDocumentImport, type PdfFontInfo, type PdfImportCallOptions, type PdfImportOptions, type PdfJsDocument, type PdfJsLike, type PdfJsOperatorList, type PdfJsPage, type PdfJsTextContent, type PdfJsTextItem, PdfLayoutOptions, PdfRuleLine, PdfStructureReport, type PdfTextOptions, PdfTextRun, Token, type TooltipSlotProps, ZipArchive, type ZipDocumentImport, type ZipEntry, ZipError, type ZipErrorCode, type ZipImportOptions, type ZipReadOptions, createDocxImportAdapter, createEditor, createFileImportController, createPdfImportAdapter, createZipImportAdapter, docxImportAdapter, docxToDocumentImport, htmlToSlice, importFilesIntoEditor, insertImportedDocument, isUnsafeZipPath, pdfOperatorListToRules, pdfTextItemsToParagraphs, pdfTextItemsToRuns, pickImportFiles, readZip, sortZipEntryNames, summarizeImportStructure, zipCrc32, zipEntryTitle, zipImportAdapter };
package/dist/index.d.ts CHANGED
@@ -2,26 +2,35 @@ import { b as Token } from './tokens-D7yXvUU6.js';
2
2
  export { C as ColorGradient, c as ComparisonOperator, d as ConditionComparison, e as ConditionalKind, I as INSTRUCTION_REGEX, a as PromptDiagnostic, f as PromptDiagnosticCode, g as PromptValue, P as PromptValues, h as TEMPLATE_REGEX, T as Template, i as TemplateVersion, j as TokenType, V as VARIABLE_REGEX, k as instructionRegex, t as templateRegex, v as variableRegex } from './tokens-D7yXvUU6.js';
3
3
  export { ConditionExpression, ConditionalTagLike, ConditionalTagMatch, DataSourceInput, DataSourceWarning, DataSourceWarningCode, EvaluatedToken, ExtractVariablesOptions, FIELD_ALIASES, FieldMapping, FieldMatch, FieldMatchKind, MAX_DATA_SOURCE_FIELDS, MAX_DATA_SOURCE_RECORDS, MAX_MERGE_LENGTH, MAX_MERGE_OUTPUTS, MatchFieldsOptions, MergeDataSource, MergeDiagnostic, MergeDiagnosticCode, MergeOutput, MergeRecord, MergeRecordsOptions, MergeRecordsResult, MergeSkip, ParseDataSourceOptions, ParsedComparison, ParsedVariableBody, RecordToValuesOptions, ResolvePromptOptions, ResolvePromptResult, TEMPLATE_DEPTH_ERROR, TEMPLATE_LOOP_ERROR, TokenizeResult, VariableDescriptor, VariableFormField, compactVariableValues, compareConditionValues, conditionSubject, describeConditionalTag, detectDelimiter, escapeVariableText, evaluateCondition, evaluateConditionExpression, evaluatePromptTokens, extractVariables, formatComparisonOperand, formatConditionalTag, getLatestVersion, getPromptDiagnostics, getSuppliedValue, getTemplateBody, getVariableFormFields, isPromptValueSet, matchConditionalTags, matchFields, mergeRecords, normalizeFieldKey, normalizeFieldNames, parseComparison, parseConditionExpression, parseDataSource, parseVariableBody, recordToValues, resolvePrompt, serializeMergeOutputs, tokenizePrompt, tokenizePromptWithDiagnostics, unescapeVariableText } from './grammar/index.js';
4
4
  export { R as ResolveTemplatesOptions, S as SourceMapSegment, e as extractInstructionNames, a as extractTemplateNames, b as extractVariableNames, m as mapRawOffsetToResolved, c as mapResolvedOffsetToRaw, r as resolveTemplates, d as resolveTemplatesWithMapping, f as resolveVariables } from './sourcemap-DA1Evhrv.js';
5
- import { D as DocumentImport, a as DocumentImportAdapter } from './index-fJrlkJCd.js';
6
- export { A as AddCommentOptions, b as Autocorrect, c as AutocorrectContext, d as AutocorrectCorrection, e as AutocorrectOptions, f as AutocorrectRule, g as AutocorrectStorage, B as BUILT_IN_IMPORT_ADAPTERS, h as Bookmark, i as BookmarkInfo, j as BookmarkOptions, C as COMMENT_MARK_NAME, k as ColorHighlighter, l as CommentRange, m as Comments, n as CommentsOptions, o as CommentsStorage, p as CompileFindPatternResult, q as CompiledFindPattern, r as CreateImportAdapterRegistryOptions, s as CrossReference, t as CrossReferenceOptions, u as CrossReferenceTarget, v as CrossReferenceTargetType, w as DEFAULT_AUTOCORRECT_EXCEPTIONS, x as DocumentCompare, y as DocumentCompareOptions, z as DocumentCompareStorage, E as DocumentSearchOptions, F as DocumentSearchResult, G as DocumentStructureCommandArgs, H as DocumentStructureCommandItem, I as EMPTY_FIND_REPLACE_SNAPSHOT, J as EditorCompareOptions, K as FIND_OPTION_TOGGLES, L as FIND_PARAGRAPH_MARK, M as FileImport, N as FileImportOptions, O as FindAllOptions, P as FindAllResult, Q as FindMatch, R as FindOptionToggle, S as FindOptions, T as FindPatternError, U as FindPatternErrorCode, V as FindReplace, W as FindReplaceCommandOptions, X as FindReplaceMode, Y as FindReplaceOptions, Z as FindReplaceSnapshot, _ as FindReplaceStorage, $ as FindReplaceStore, a0 as FocusHeadingOptions, a1 as FontSize, a2 as Footnote, a3 as FootnoteInfo, a4 as FootnoteReference, a5 as Footnotes, a6 as FootnotesOptions, a7 as GradientText, a8 as GradientTextOptions, a9 as Image, aa as ImageOptions, ab as InsertFootnoteOptions, ac as InsertTableOfContentsOptions, ad as LoadingNode, ae as MAX_FIND_PATTERN_LENGTH, af as Markdown, ag as OpenFindReplaceParams, ah as Outline, ai as OutlineHeading, aj as OutlineOptions, ak as OutlineSnapshot, al as OutlineStorage, am as OutlineStore, an as OutlineTreeItem, ao as PatternMatch, ap as ReplacePiece, aq as RichClipboard, ar as RichClipboardOptions, as as RichClipboardStorage, at as RichTextPresetOptions, au as SMILIE_REPLACEMENTS, av as SearchBudget, aw as SearchBudgetOptions, ax as SetBookmarkOptions, ay as SetSearchParams, az as SlashCommandMatchData, aA as SlashCommands, aB as SlashCommandsOptions, aC as SmilieReplacer, aD as TableOfContents, aE as TableOfContentsEntry, aF as TableOfContentsOptions, aG as TemplateSuggestions, aH as TemplateSuggestionsOptions, aI as applyDocumentComparison, aJ as applyReplacements, aK as autocorrectPluginKey, aL as buildOutlineTree, aM as capitalizeSentenceRules, aN as commentsPluginKey, aO as compareInEditor, aP as compileFindPattern, aQ as computeOutline, aR as createFindReplaceCommands, aS as createImportAdapterRegistry, aT as createOutlineStore, aU as createRichTextPreset, aV as createSearchBudget, aW as crossReferencePluginKey, aX as defaultAutocorrectRules, aY as defaultImportRegistry, aZ as documentStructureCommandItems, a_ as expandReplacement, a$ as fileImportPluginKey, b0 as findAllMatches, b1 as findAutocorrection, b2 as findCommentRanges, b3 as findHexColors, b4 as findImportAdapter, b5 as findReplacePluginKey, b6 as foldCodePoint, b7 as footnotesMarkdownIt, b8 as footnotesPluginKey, b9 as formatFindStatus, ba as fractionRules, bb as getActiveHeading, bc as getBookmarks, bd as getCommentAnchors, be as getCommentAuthor, bf as getCommentIdsAt, bg as getCommentStore, bh as getCrossReferenceTargets, bi as getDocumentStructureCommandItems, bj as getFindReplaceState, bk as getFindReplaceStore, bl as getFootnotes, bm as getImportAccept, bn as getOutline, bo as getTableOfContentsEntries, bp as handleImageInsertion, bq as htmlImportAdapter, br as imagePastePluginKey, bs as importFile, bt as insertImageNode, bu as isInsidePromptToken, bv as markdownImportAdapter, bw as navigateToHeading, bx as outlinePluginKey, by as parseReplacement, bz as plainTextImportAdapter, bA as registerImportAdapter, bB as removeImageNode, bC as richClipboardPluginKey, bD as rtfImportAdapter, bE as searchDocument, bF as smartQuoteRules, bG as smilieAutocorrectRules, bH as symbolRules, bI as syncFootnotes, bJ as tableOfContentsMarkdownIt, bK as tableOfContentsPluginKey, bL as twoInitialCapitalsRules, bM as unregisterImportAdapter, bN as updateImageSrc, bO as validateFindPattern, bP as writeRichClipboard } from './index-fJrlkJCd.js';
7
- export { B as BLOCK_CHANGE_ATTRIBUTE, D as DELETION_MARK_NAME, F as FORMAT_CHANGE_MARK_NAME, I as INSERTION_MARK_NAME, M as Mention, a as MentionEntity, b as MentionOptions, T as TRACK_CHANGES_SKIP_META, c as TrackChanges, d as TrackChangesOptions, e as TrackChangesSnapshot, f as TrackChangesStorage, g as TrackChangesStore, h as TrackedBlockChangeAttributes, i as TrackedBlockOperation, j as TrackedBlockSnapshot, k as TrackedChange, l as TrackedChangeAttributes, m as TrackedChangeType, n as TrackedChangesView, o as TrackedDeletion, p as TrackedFormatChange, q as TrackedFormatChangeAttributes, r as TrackedFormatSummary, s as TrackedInsertion, t as TrackedMark, u as createMentionExtension, v as describeBlockChange, w as describeFormatChange, x as getTrackChangesStore, y as getTrackedChangeAt, z as getTrackedChanges, A as isTrackChangesEnabled, C as resolveTrackedChanges, E as trackChangesPluginKey } from './track-changes-CDjCrwKe.js';
5
+ import { D as DocumentImport, a as DocumentImportAdapter, P as PdfStructureReport, b as PdfLayoutOptions, c as PdfRuleLine, d as PdfTextRun } from './index-7a6bHTLy.js';
6
+ export { A as AddCommentOptions, e as Autocorrect, f as AutocorrectContext, g as AutocorrectCorrection, h as AutocorrectOptions, i as AutocorrectRule, j as AutocorrectStorage, B as BUILT_IN_IMPORT_ADAPTERS, k as Bookmark, l as BookmarkInfo, m as BookmarkOptions, C as CHARACTER_STYLE_MARK_NAME, n as COMMENT_MARK_NAME, o as CharacterFormat, p as CharacterStyle, q as ColorHighlighter, r as CommentRange, s as Comments, t as CommentsOptions, u as CommentsStorage, v as CompileFindPatternResult, w as CompiledFindPattern, x as CreateImportAdapterRegistryOptions, y as CreateStyleFromSelectionOptions, z as CrossReference, E as CrossReferenceOptions, F as CrossReferenceTarget, G as CrossReferenceTargetType, H as DEFAULT_AUTOCORRECT_EXCEPTIONS, I as DEFAULT_STYLES, J as DocumentCompare, K as DocumentCompareOptions, L as DocumentCompareStorage, M as DocumentSearchOptions, N as DocumentSearchResult, O as DocumentStructureCommandArgs, Q as DocumentStructureCommandItem, R as EMPTY_FIND_REPLACE_SNAPSHOT, S as EditorCompareOptions, T as FIND_OPTION_TOGGLES, U as FIND_PARAGRAPH_MARK, V as FileImport, W as FileImportOptions, X as FindAllOptions, Y as FindAllResult, Z as FindMatch, _ as FindOptionToggle, $ as FindOptions, a0 as FindPatternError, a1 as FindPatternErrorCode, a2 as FindReplace, a3 as FindReplaceCommandOptions, a4 as FindReplaceMode, a5 as FindReplaceOptions, a6 as FindReplaceSnapshot, a7 as FindReplaceStorage, a8 as FindReplaceStore, a9 as FocusHeadingOptions, aa as FontSize, ab as Footnote, ac as FootnoteInfo, ad as FootnoteReference, ae as Footnotes, af as FootnotesOptions, ag as GradientText, ah as GradientTextOptions, ai as Image, aj as ImageOptions, ak as ImportStructureItem, al as ImportStructureReport, am as InsertFootnoteOptions, an as InsertTableOfContentsOptions, ao as LoadingNode, ap as MAX_FIND_PATTERN_LENGTH, aq as Markdown, ar as NORMAL_STYLE_ID, as as OpenFindReplaceParams, at as Outline, au as OutlineHeading, av as OutlineOptions, aw as OutlineSnapshot, ax as OutlineStorage, ay as OutlineStore, az as OutlineTreeItem, aA as ParagraphFormat, aB as ParagraphStyles, aC as ParagraphStylesOptions, aD as ParagraphStylesSnapshot, aE as ParagraphStylesStorage, aF as ParagraphStylesStore, aG as PatternMatch, aH as PdfLayoutBlock, aI as PdfLayoutPage, aJ as PdfLayoutResult, aK as PdfTableCell, aL as ReplacePiece, aM as ResolvedStyle, aN as RichClipboard, aO as RichClipboardOptions, aP as RichClipboardStorage, aQ as RichTextPresetCommandPackages, aR as RichTextPresetOptions, aS as SMILIE_REPLACEMENTS, aT as STYLE_ID_ATTRIBUTE, aU as SearchBudget, aV as SearchBudgetOptions, aW as SetBookmarkOptions, aX as SetSearchParams, aY as SlashCommandMatchData, aZ as SlashCommands, a_ as SlashCommandsOptions, a$ as SmilieReplacer, b0 as StyleBlock, b1 as StyleCSSOptions, b2 as StyleDefaults, b3 as StyleDefinition, b4 as StyleKind, b5 as StyleRegistry, b6 as StyleRegistryJSON, b7 as StyleRegistryOptions, b8 as StyleRegistrySnapshot, b9 as TableOfContents, ba as TableOfContentsEntry, bb as TableOfContentsOptions, bc as TemplateSuggestions, bd as TemplateSuggestionsOptions, be as analyzePdfLayout, bf as applyDocumentComparison, bg as applyReplacements, bh as autocorrectPluginKey, bi as buildOutlineTree, bj as capitalizeSentenceRules, bk as captureSelectionFormat, bl as commentsPluginKey, bm as compareInEditor, bn as compileFindPattern, bo as computeOutline, bp as createFindReplaceCommands, bq as createImportAdapterRegistry, br as createOutlineStore, bs as createParagraphStylesStore, bt as createRichTextPreset, bu as createSearchBudget, bv as createStyleRegistry, bw as crossReferencePluginKey, bx as defaultAutocorrectRules, by as defaultImportRegistry, bz as documentStructureCommandItems, bA as expandReplacement, bB as fileImportPluginKey, bC as findAllMatches, bD as findAutocorrection, bE as findCommentRanges, bF as findHexColors, bG as findImportAdapter, bH as findReplacePluginKey, bI as foldCodePoint, bJ as footnotesMarkdownIt, bK as footnotesPluginKey, bL as formatFindStatus, bM as fractionRules, bN as getActiveHeading, bO as getBookmarks, bP as getCommentAnchors, bQ as getCommentAuthor, bR as getCommentIdsAt, bS as getCommentStore, bT as getCrossReferenceTargets, bU as getDocumentStructureCommandItems, bV as getFindReplaceState, bW as getFindReplaceStore, bX as getFootnotes, bY as getImportAccept, bZ as getOutline, b_ as getParagraphStyleAt, b$ as getStyleRegistry, c0 as getTableOfContentsEntries, c1 as handleImageInsertion, c2 as htmlImportAdapter, c3 as imagePastePluginKey, c4 as importFile, c5 as insertImageNode, c6 as isInsidePromptToken, c7 as isParagraphStyleAvailable, c8 as isValidStyleId, c9 as markdownImportAdapter, ca as navigateToHeading, cb as outlinePluginKey, cc as paragraphStylesPluginKey, cd as parseReplacement, ce as pdfLayoutBlocksToHtml, cf as plainTextImportAdapter, cg as registerImportAdapter, ch as removeImageNode, ci as richClipboardPluginKey, cj as rtfImportAdapter, ck as safeCSSValue, cl as searchDocument, cm as smartQuoteRules, cn as smilieAutocorrectRules, co as symbolRules, cp as syncFootnotes, cq as tableOfContentsMarkdownIt, cr as tableOfContentsPluginKey, cs as twoInitialCapitalsRules, ct as unregisterImportAdapter, cu as updateImageSrc, cv as validateFindPattern, cw as writeRichClipboard } from './index-7a6bHTLy.js';
7
+ export { B as BLOCK_CHANGE_ATTRIBUTE, D as DELETION_MARK_NAME, F as FORMAT_CHANGE_MARK_NAME, I as INSERTION_MARK_NAME, M as MOVE_FROM_CLASS, a as MOVE_ID_ATTRIBUTE, b as MOVE_TO_CLASS, c as Mention, d as MentionEntity, e as MentionNodeInfo, f as MentionOptions, T as TRACK_CHANGES_SKIP_META, g as TrackChanges, h as TrackChangesOptions, i as TrackChangesSnapshot, j as TrackChangesStorage, k as TrackChangesStore, l as TrackedBlockChangeAttributes, m as TrackedBlockOperation, n as TrackedBlockSnapshot, o as TrackedChange, p as TrackedChangeAttributes, q as TrackedChangeType, r as TrackedChangesView, s as TrackedDeletion, t as TrackedFormatChange, u as TrackedFormatChangeAttributes, v as TrackedFormatSummary, w as TrackedInsertion, x as TrackedMark, y as createMentionExtension, z as describeBlockChange, A as describeFormatChange, C as getMentionNodes, E as getTrackChangesStore, G as getTrackedChangeAt, H as getTrackedChanges, J as isMoveSized, K as isTrackChangesEnabled, L as resolveTrackedChanges, N as setMentionRoleAt, O as trackChangesPluginKey, P as trackedChangeLabel } from './track-changes-Db_fGEvx.js';
8
8
  export { C as CommentAnchor, a as CommentReply, b as CommentStore, c as CommentStoreListener, d as CommentStoreOptions, e as CommentStoreSnapshot, f as CommentThread, g as CreateThreadInput, R as ReviewAuthor, S as SerializedComments, h as createCommentStore, i as createReviewId, j as formatReviewTime } from './comment-store-BEMgVlAA.js';
9
- export { ClipboardDataLike, ExtractedMention, MARKDOWN_MENTION_SPLIT_REGEX, MENTION_REGEX, MarkdownToHtmlOptions, MentionSegment, PIXERATE_DOCUMENT_MIME, PlainTextOptions, PreprocessMarkdownMentionsOptions, RichClipboardPayload, SanitizeHtmlOptions, escapeHtml, extractMentions, extractMentionsFromDoc, getClipboardData, getEditorMarkdown, getEditorText, getSchemaSignature, htmlToPlainText, markdownToTipTapHtml, parseMentionSegments, parseRichClipboardPayload, plainTextToParagraphHtml, plainTextToSlice, plainTextToTipTapHtml, preprocessMarkdownFileLinks, preprocessMarkdownMentions, readRichClipboard, rtfToPlainText, sanitizeHtml, sanitizeImportedHtml, serializeRichClipboardPayload, stripMarkdownCode } from './serializers/index.js';
9
+ export { ClipboardDataLike, ExtractMentionsOptions, ExtractedMention, MARKDOWN_MENTION_SPLIT_REGEX, MarkdownToHtmlOptions, MentionDetail, MentionSegment, PIXERATE_DOCUMENT_MIME, PlainTextOptions, PreprocessMarkdownMentionsOptions, RichClipboardPayload, SanitizeHtmlOptions, escapeHtml, extractMentions, extractMentionsFromDoc, getClipboardData, getEditorMarkdown, getEditorText, getSchemaSignature, htmlToPlainText, markdownToTipTapHtml, parseMentionSegments, parseRichClipboardPayload, plainTextToParagraphHtml, plainTextToSlice, plainTextToTipTapHtml, preprocessMarkdownFileLinks, preprocessMarkdownMentions, readRichClipboard, rtfToPlainText, sanitizeHtml, sanitizeImportedHtml, serializeRichClipboardPayload, stripMarkdownCode } from './serializers/index.js';
10
10
  import { Editor, EditorOptions, Content, Extensions } from '@tiptap/core';
11
11
  export { Content, Editor, EditorOptions, Extensions } from '@tiptap/core';
12
- export { A as ASTNode, B as BinaryOpNode, C as CellCoordinate, a as CellData, b as CellDep, c as CellFormat, d as CellPosition, e as CellRange, f as CellRefNode, g as CellValueReader, h as ColumnBinding, i as ColumnType, j as CsvExportOptions, k as CsvImportOptions, D as DEFAULT_COLUMN_WIDTH, l as DEFAULT_ROW_HEIGHT, m as DataSourceBinder, n as DependencyGraph, E as EvaluationContext, F as FORMULA_ERRORS, o as FilterOperator, p as FilterRule, q as FormulaDiagnostic, r as FormulaErrorCode, s as FormulaEvaluationResult, t as FormulaEvaluator, u as FormulaParser, v as FormulaRange, w as FormulaToken, x as FormulaTokenType, y as FunctionCallNode, G as GroupAggregate, z as GroupSummary, L as LiteralNode, M as MAX_FORMULA_ARRAY_SIZE, N as NameNode, H as NewFilterRule, P as ParsedSpreadsheetClipboard, I as PropertyRefNode, R as RangeNode, J as RowType, K as SPREADSHEET_CLIPBOARD_MIME, O as SortDirection, Q as SortKey, T as SpillRefNode, U as SpreadsheetCellSpan, V as SpreadsheetClipboardCell, W as SpreadsheetClipboardData, X as SpreadsheetClipboardPayload, Y as SpreadsheetClipboardSource, Z as SpreadsheetColumn, S as SpreadsheetController, _ as SpreadsheetControllerOptions, $ as SpreadsheetDataSource, a0 as SpreadsheetDataSourceField, a1 as SpreadsheetDocument, a2 as SpreadsheetFilterState, a3 as SpreadsheetGrouping, a4 as SpreadsheetRow, a5 as SpreadsheetRowGroup, a6 as SpreadsheetRowSection, a7 as SpreadsheetSpill, a8 as SpreadsheetTableSettings, a9 as SpreadsheetViewColumn, aa as SpreadsheetViewModel, ab as SpreadsheetViewRow, ac as StructuralChange, ad as UnaryOpNode, ae as WHOLE_COLUMN_END_ROW, af as buildSpreadsheetView, ag as colNameToIndex, ah as columnDependencyKey, ai as compareNumbers, aj as compareValues, ak as computeRowGroups, al as createSpreadsheetClipboardData, am as describeFormulaError, an as extractCellDependencies, ao as getRowSection, ap as getTableSections, aq as indexToColName, ar as isFormulaError, as as mapFormulaReferences, at as numberToText, au as offsetFormulaReferences, av as parseCellReference, aw as parseFormula, ax as parseHtmlTable, ay as parseRange, az as readSpreadsheetClipboard, aA as rebaseClipboardRows, aB as remapFormulaReferences, aC as rowPassesFilters, aD as serializeHtmlTable, aE as shiftFormulaReferences, aF as sortCompareValues, aG as tokenizeFormula } from './controller-BhLLAoi8.js';
13
- export { CellInputFormatKind, CsvParseOptions, CsvSerializeOptions, FillDirection, FormattedNumberValue, FormulaActiveCall, FormulaArgument, FormulaArgumentSpec, FormulaArgumentType, FormulaCaretContext, FormulaCriteriaPredicate, FormulaFunctionCategory, FormulaFunctionContext, FormulaFunctionDefinition, FormulaFunctionSuggestion, FormulaHints, FormulaSignaturePart, ImportFileIntoSpreadsheetOptions, MAX_NUMBER_FORMAT_CODE_CHARS, NUMBER_FORMAT_PRESETS, NumberFormat, NumberFormatColor, NumberFormatKind, NumberFormatPreset, ParsedCellInput, SPREADSHEET_IMPORT_ADAPTERS, SPREADSHEET_TABLE_ACTIONS, SpreadsheetImport, SpreadsheetImportAdapter, SpreadsheetMenuItem, SpreadsheetTableActionName, SpreadsheetTableActions, aggregateValues, applyFormulaSuggestion, bindSpreadsheetTableActions, builtinNumberFormat, builtinNumberFormatId, cellFormatForNumberFormat, checkFormulaArgumentCount, clampMenuPosition, clearNumberFormatCache, compareCellValues, computeFillTarget, csvImportAdapter, dateValueToSerial, escapeCsvField, fillSeries, formatCellDisplay, formatCellForDisplay, formatGeneralFit, formatNumberFormatValue, formatTextFunction, formatValueWithCode, getFillDirection, getFormulaArgumentSpecIndex, getFormulaCaretContext, getFormulaFunction, getFormulaHints, getFormulaSignature, getFormulaSignatureParts, getSpreadsheetMenuItems, importFileIntoSpreadsheet, isBlankValue, isGeneralNumberFormat, isSingleCellRange, listFormulaFunctions, matchesFilterRule, normalizeRange, numberFormatColorToCss, numberFormatForCellFormat, parseCellInput, parseCriteria, parseCsv, parseNumberText, parseTsv, rangeContains, rangeContainsRange, rangesIntersect, registerFormulaFunction, registerSpreadsheetImportAdapters, roundFloat, runSpreadsheetMenuItem, searchFormulaFunctions, serialFromYmd, serializeCsv, serializeTsv, toNumber, tsvImportAdapter, unregisterFormulaFunction, wildcardToRegExp } from './spreadsheet/index.js';
12
+ export { A as ASTNode, B as BinaryOpNode, C as CellCoordinate, a as CellData, b as CellDep, c as CellFormat, d as CellPosition, e as CellRange, f as CellRefNode, g as CellValueReader, h as ColumnBinding, i as ColumnType, j as ConditionalCellFormat, k as ConditionalFormatCondition, l as ConditionalFormatIconSet, m as ConditionalFormatOperator, n as ConditionalFormatOverlay, o as ConditionalFormatRule, p as ConditionalFormatSheet, q as ConditionalFormatStyle, r as ConditionalFormatTimePeriod, s as ConditionalFormatType, t as ConditionalFormatValue, u as CsvExportOptions, v as CsvImportOptions, D as DEFAULT_COLUMN_WIDTH, w as DEFAULT_ROW_HEIGHT, x as DataSourceBinder, y as DataValidationErrorStyle, z as DataValidationOperator, E as DataValidationResult, F as DataValidationRule, G as DataValidationSheet, H as DataValidationType, I as DependencyGraph, J as EvaluationContext, K as FORMULA_ERRORS, L as FilterOperator, M as FilterRule, N as FormulaDiagnostic, O as FormulaErrorCode, P as FormulaEvaluationResult, Q as FormulaEvaluator, R as FormulaNameDefinition, T as FormulaParser, U as FormulaRange, V as FormulaReferenceFilter, W as FormulaReferenceInfo, X as FormulaToken, Y as FormulaTokenType, Z as FunctionCallNode, _ as GroupAggregate, $ as GroupSummary, a0 as InvokeNode, a1 as LiteralNode, a2 as MAX_FORMULA_ARRAY_SIZE, a3 as MissingNode, a4 as NameDep, a5 as NameNode, a6 as NewConditionalFormatRule, a7 as NewDataValidationRule, a8 as NewFilterRule, a9 as ParsedSpreadsheetClipboard, aa as PropertyRefNode, ab as RangeNode, ac as RowType, ad as SPREADSHEET_CLIPBOARD_MIME, ae as SheetQualifier, af as SortDirection, ag as SortKey, ah as SpillRefNode, ai as SpreadsheetCellSpan, aj as SpreadsheetClipboardCell, ak as SpreadsheetClipboardData, al as SpreadsheetClipboardPayload, am as SpreadsheetClipboardSource, an as SpreadsheetColumn, ao as SpreadsheetCommitResult, S as SpreadsheetController, ap as SpreadsheetControllerOptions, aq as SpreadsheetDataSource, ar as SpreadsheetDataSourceField, as as SpreadsheetDefinedName, at as SpreadsheetDocument, au as SpreadsheetFilterState, av as SpreadsheetGrouping, aw as SpreadsheetNameInfo, ax as SpreadsheetNameScope, ay as SpreadsheetRow, az as SpreadsheetRowGroup, aA as SpreadsheetRowSection, aB as SpreadsheetSheetInfo, aC as SpreadsheetSpill, aD as SpreadsheetTableSettings, aE as SpreadsheetValidationAction, aF as SpreadsheetValidationPrompt, aG as SpreadsheetViewColumn, aH as SpreadsheetViewModel, aI as SpreadsheetViewRow, aJ as SpreadsheetWorkbook, aK as StructuralChange, aL as UnaryOpNode, aM as WHOLE_COLUMN_END_ROW, aN as buildSpreadsheetView, aO as colNameToIndex, aP as columnDependencyKey, aQ as compareNumbers, aR as compareValues, aS as computeRowGroups, aT as createSpreadsheetClipboardData, aU as deleteSheetInFormula, aV as describeFormulaError, aW as extractCellDependencies, aX as extractNameDependencies, aY as formatSheetPrefix, aZ as formulaIdentifiers, a_ as getRowSection, a$ as getTableSections, b0 as indexToColName, b1 as isFormulaError, b2 as mapFormulaReferences, b3 as numberToText, b4 as offsetFormulaReferences, b5 as parseCellReference, b6 as parseFormula, b7 as parseHtmlTable, b8 as parseRange, b9 as quoteSheetName, ba as readSpreadsheetClipboard, bb as rebaseClipboardRows, bc as remapFormulaReferences, bd as renameNameInFormula, be as renameSheetInFormula, bf as rowPassesFilters, bg as serializeHtmlTable, bh as sheetNameNeedsQuotes, bi as shiftFormulaReferences, bj as sortCompareValues, bk as tokenizeFormula } from './controller-BIJiNoVs.js';
13
+ export { CONDITIONAL_FORMAT_ICON_SETS, CONDITIONAL_FORMAT_PRESETS, CONDITIONAL_FORMAT_STYLE_PRESETS, CONDITIONAL_FORMAT_TIME_PERIODS, CellInputFormatKind, ConditionalFormatCss, ConditionalFormatEngine, ConditionalFormatIconGlyph, ConditionalFormatPresetField, ConditionalFormatPresetInfo, ConditionalFormatPresetInput, ConditionalFormatPresetKind, CsvParseOptions, CsvSerializeOptions, DATA_VALIDATION_ERROR_STYLE_OPTIONS, DATA_VALIDATION_OPERATOR_OPTIONS, DATA_VALIDATION_TYPE_OPTIONS, DEFAULT_CONDITIONAL_FORMAT_STYLE, DEFAULT_DATA_VALIDATION_MESSAGE, DEFAULT_DATA_VALIDATION_TITLE, EMPTY_CONDITIONAL_FORMAT_OVERLAY, FillDirection, FormattedNumberValue, FormulaActiveCall, FormulaArgument, FormulaArgumentSpec, FormulaArgumentType, FormulaCaretContext, FormulaCriteriaPredicate, FormulaEnvironment, FormulaFunctionCategory, FormulaFunctionContext, FormulaFunctionDefinition, FormulaFunctionSuggestion, FormulaHints, FormulaLambda, FormulaNameSuggestionSource, FormulaSignaturePart, ImportFileIntoSpreadsheetOptions, MAX_DEFINED_NAME_LENGTH, MAX_LAMBDA_DEPTH, MAX_NUMBER_FORMAT_CODE_CHARS, MAX_SHEET_NAME_LENGTH, NUMBER_FORMAT_PRESETS, NumberFormat, NumberFormatColor, NumberFormatKind, NumberFormatPreset, ParsedCellInput, SPREADSHEET_IMPORT_ADAPTERS, SPREADSHEET_TABLE_ACTIONS, SpreadsheetImport, SpreadsheetImportAdapter, SpreadsheetMenuItem, SpreadsheetNameRow, SpreadsheetPanelId, SpreadsheetTableActionName, SpreadsheetTableActions, adjustRangeForStructuralChange, adjustRangesForStructuralChange, aggregateValues, applyFormulaSuggestion, bindSpreadsheetTableActions, blendConditionalFormatColors, builtinNumberFormat, builtinNumberFormatId, cellFormatForNumberFormat, checkFormulaArgumentCount, clampMenuPosition, clearNumberFormatCache, compareCellValues, computeFillTarget, conditionalFormatContrastColor, conditionalFormatIconCount, conditionalFormatNumber, conditionalFormatStyleString, copySheetName, createConditionalFormatRule, csvImportAdapter, dateValueToSerial, defaultIconThresholds, describeConditionalFormat, describeDataValidation, escapeCsvField, evaluateConditionalFormats, fillSeries, findDataValidation, findInvalidCells, forEachRangeCell, formatCellDisplay, formatCellForDisplay, formatGeneralFit, formatNumberFormatValue, formatRuleRanges, formatTextFunction, formatValueWithCode, getConditionalFormatCss, getConditionalFormatIcon, getDataBarCss, getFillDirection, getFormulaArgumentSpecIndex, getFormulaCaretContext, getFormulaFunction, getFormulaHints, getFormulaSignature, getFormulaSignatureParts, getNameManagerRows, getSheetTabMenuItems, getSpreadsheetMenuItems, getValidationListValues, importFileIntoSpreadsheet, isBlankValue, isFormulaLambda, isGeneralNumberFormat, isLambdaDefinition, isSingleCellRange, listFormulaFunctions, matchesFilterRule, matchesTimePeriod, nextSheetName, normalizeRange, numberFormatColorToCss, numberFormatForCellFormat, parseCellInput, parseCriteria, parseCsv, parseNumberText, parseRuleRanges, parseTsv, rangeContains, rangeContainsRange, rangesContain, rangesIntersect, registerFormulaFunction, registerSpreadsheetImportAdapters, roundFloat, ruleAnchor, ruleFormulaAt, runSpreadsheetMenuItem, searchFormulaFunctions, serialFromYmd, serializeCsv, serializeTsv, sheetDropIndex, shiftRuleFormula, subtractRange, subtractRangeFromRanges, toNumber, tsvImportAdapter, unregisterFormulaFunction, validateCellInput, validateDefinedName, validateSheetName, wildcardToRegExp } from './spreadsheet/index.js';
14
14
  export { BindDirtyToHistoryOptions, DirtyHistorySource, DirtyTracker, DirtyTrackerOptions, HistoryDirtyBinding, HistoryManager, bindDirtyToHistory, createDirtyTracker, createHistoryManager, defaultIsEqual, withoutDirty } from './history/index.js';
15
15
  export { C as Command, a as HistoryEntry, b as HistoryManagerOptions, c as HistoryMark, H as HistoryState, M as MergedExecutionOptions, S as SnapshotCommandOptions } from './types-GT5a5YAX.js';
16
- import { I as ImportAdapterRegistry, a as ImportOutcome, F as FileLike } from './registry-GJI4gToU.js';
17
- export { b as FindImportAdapterQuery, c as ImportAdapter, d as ImportContext, e as ImportError, f as ImportErrorCode, g as ImportFileOptions, h as ImportInput, i as ImportTarget, R as RegisterImportAdapterOptions, j as createImportContext } from './registry-GJI4gToU.js';
16
+ import { I as ImportAdapterRegistry, a as ImportOutcome, F as FileLike, b as ImportAdapter } from './registry-CEgwXED1.js';
17
+ export { c as FindImportAdapterQuery, d as ImportContext, e as ImportError, f as ImportErrorCode, g as ImportFileOptions, h as ImportInput, i as ImportTarget, R as RegisterImportAdapterOptions, j as createImportContext } from './registry-CEgwXED1.js';
18
18
  import { Schema, Slice } from '@tiptap/pm/model';
19
19
  import { EditorView } from '@tiptap/pm/view';
20
20
  export { DiffChange, DiffOpType, DiffRun, DiffSequencesOptions, diffChanges, diffSequences } from './compare/index.js';
21
- export { C as CompareDocumentsOptions, a as CompareDocumentsResult, b as CompareSource, c as CompareSummary, d as compareDocuments, e as compareHtml } from './documents-BQjzJNe2.js';
21
+ export { C as CompareDocumentsOptions, a as CompareDocumentsResult, b as CompareSource, c as CompareSummary, d as compareDocuments, e as compareHtml } from './documents-CHT1U5Vs.js';
22
+ export { M as MENTION_REGEX, a as MentionRoleSyntax, T as TextMention, f as findTextMentions, b as formatMentionText, s as setMentionRoleInText } from './mention-text-CDnCFd3c.js';
22
23
  export { MarkdownOptions } from 'tiptap-markdown';
23
24
  import '@tiptap/pm/state';
25
+ import '@tiptap/extension-underline';
26
+ import '@tiptap/extension-text-style';
27
+ import '@tiptap/extension-text-align';
28
+ import '@tiptap/extension-task-list';
29
+ import '@tiptap/extension-link';
24
30
  import '@tiptap/extension-image';
31
+ import '@tiptap/extension-highlight';
32
+ import '@tiptap/extension-color';
33
+ import '@tiptap/starter-kit';
25
34
  import './registry-evKTP4ls.js';
26
35
  import './schema-DYDGdYL9.js';
27
36
  import '@tiptap/extension-mention';
@@ -141,6 +150,8 @@ declare function insertImportedDocument(target: ImportEditorTarget, content: Doc
141
150
  interface ImportFilesIntoEditorOptions extends InsertImportedDocumentOptions {
142
151
  /** Registry to match files against (default: the shared default registry). */
143
152
  registry?: ImportAdapterRegistry;
153
+ /** Per-adapter options keyed by adapter id, e.g. `{ pdf: { structure: false } }` (see `ImportFileOptions`). */
154
+ adapterOptions?: Record<string, unknown>;
144
155
  /** Called after each file is inserted. */
145
156
  onImport?: (outcome: ImportOutcome<DocumentImport>, file: FileLike) => void;
146
157
  /** Called for each file that cannot be imported; other files continue. */
@@ -198,6 +209,26 @@ declare class FileImportController {
198
209
  openFilePicker: () => Promise<ImportOutcome<DocumentImport>[]>;
199
210
  }
200
211
  declare function createFileImportController(getTarget: () => ImportEditorTarget | null | undefined, options?: FileImportControllerOptions): FileImportController;
212
+ /** Totals of the structure reports (`DocumentImport.structure`) of several imports. */
213
+ interface ImportStructureSummary {
214
+ /** Imports that carried a report. */
215
+ files: number;
216
+ /** `"mixed"` when some files were imported with structure detection and some without. */
217
+ mode: "structured" | "plain" | "mixed";
218
+ headings: number;
219
+ lists: number;
220
+ tables: number;
221
+ paragraphs: number;
222
+ multiColumnPages: number;
223
+ /** Mean of the reports' confidences (0–1). */
224
+ confidence: number;
225
+ }
226
+ /**
227
+ * Sums the structure reports of import outcomes, e.g. `lastOutcomes` from a
228
+ * file-import controller. Returns `null` when no outcome has a report (only
229
+ * structure-aware adapters such as PDF produce one).
230
+ */
231
+ declare function summarizeImportStructure(outcomes: readonly ImportOutcome<DocumentImport>[]): ImportStructureSummary | null;
201
232
 
202
233
  /**
203
234
  * Minimal, dependency-free ZIP reader used by the DOCX and zipped-export
@@ -361,19 +392,22 @@ declare function createDocxImportAdapter(options?: DocxImportOptions): DocumentI
361
392
  declare const docxImportAdapter: DocumentImportAdapter;
362
393
 
363
394
  /**
364
- * PDF text import through an injected pdf.js-compatible library. The editor
365
- * ships no PDF parser; consumers that already bundle `pdfjs-dist` register
366
- * the adapter themselves:
395
+ * PDF import through an injected pdf.js-compatible library. The editor ships
396
+ * no PDF parser; consumers that already bundle `pdfjs-dist` register the
397
+ * adapter themselves:
367
398
  *
368
399
  * ```ts
369
400
  * import * as pdfjs from "pdfjs-dist";
370
401
  * registerImportAdapter(createPdfImportAdapter(pdfjs));
371
402
  * ```
372
403
  *
373
- * Text items are grouped into lines by baseline (`transform[5]`) and lines
374
- * into paragraphs by vertical gaps larger than the page's typical line
375
- * spacing (or blank `hasEOL` lines). Only text is imported: no images,
376
- * tables, links or styling.
404
+ * By default the text runs (with positions and fonts) and the page's ruling
405
+ * lines go through `analyzePdfLayout`, which recovers reading order across
406
+ * columns, headings, lists and tables, and drops running headers, footers and
407
+ * page numbers. `structure: false` (at creation, or per import through
408
+ * `adapterOptions: { pdf: { structure: false } }`) falls back to plain
409
+ * paragraphs: items grouped into lines by baseline and lines into paragraphs
410
+ * by vertical gaps. Images, links and character styling are not imported.
377
411
  */
378
412
  /** A text item from `page.getTextContent()` (marked-content items have no `str`). */
379
413
  interface PdfJsTextItem {
@@ -384,14 +418,32 @@ interface PdfJsTextItem {
384
418
  height?: number;
385
419
  /** pdf.js sets this when a line break follows the item. */
386
420
  hasEOL?: boolean;
421
+ /** Font resource id, e.g. `g_d0_f1` (see `PdfJsTextContent.styles` and `page.commonObjs`). */
422
+ fontName?: string;
387
423
  }
388
424
  interface PdfJsTextContent {
389
425
  items: ReadonlyArray<PdfJsTextItem | {
390
426
  type: string;
391
427
  }>;
428
+ /** Per `fontName`: pdf.js reports the family (sometimes the real font name). */
429
+ styles?: Record<string, {
430
+ fontFamily?: string;
431
+ } | undefined>;
432
+ }
433
+ /** pdf.js operator list (`page.getOperatorList()`). */
434
+ interface PdfJsOperatorList {
435
+ fnArray: ArrayLike<number>;
436
+ argsArray: ArrayLike<unknown>;
392
437
  }
393
438
  interface PdfJsPage {
394
439
  getTextContent(): Promise<PdfJsTextContent>;
440
+ /** Used to read ruling lines (table borders); optional. */
441
+ getOperatorList?(): Promise<PdfJsOperatorList>;
442
+ /** Loaded fonts: `get(fontName)` returns `{ name, bold, black, italic }` once the operator list was read. */
443
+ commonObjs?: {
444
+ has?(id: string): boolean;
445
+ get(id: string): unknown;
446
+ };
395
447
  cleanup?(): unknown;
396
448
  }
397
449
  interface PdfJsDocument {
@@ -407,6 +459,8 @@ interface PdfJsLike {
407
459
  }): {
408
460
  promise: Promise<PdfJsDocument>;
409
461
  };
462
+ /** pdf.js operator codes (`pdfjs.OPS`); the classic values are assumed when missing. */
463
+ OPS?: Record<string, number>;
410
464
  }
411
465
  interface PdfTextOptions {
412
466
  /**
@@ -415,7 +469,19 @@ interface PdfTextOptions {
415
469
  */
416
470
  paragraphGap?: number;
417
471
  }
418
- interface PdfImportOptions extends PdfTextOptions {
472
+ /** Options that may also be passed per import as `adapterOptions[adapterId]`. */
473
+ interface PdfImportCallOptions extends PdfTextOptions {
474
+ /**
475
+ * Detect headings, lists, tables, columns and running headers (default
476
+ * `true`). `false` imports plain paragraphs, as before structure detection.
477
+ */
478
+ structure?: boolean;
479
+ /** Fine-tuning for `analyzePdfLayout`. */
480
+ layout?: PdfLayoutOptions;
481
+ /** Read the operator list for table rules and font weights (default `true`). */
482
+ rulingLines?: boolean;
483
+ }
484
+ interface PdfImportOptions extends PdfImportCallOptions {
419
485
  /** Adapter id (default `"pdf"`). */
420
486
  id?: string;
421
487
  /** Import at most this many pages (default: all). */
@@ -423,6 +489,10 @@ interface PdfImportOptions extends PdfTextOptions {
423
489
  /** Extra `getDocument` parameters, e.g. `{ disableFontFace: true }`. */
424
490
  documentParams?: Record<string, unknown>;
425
491
  }
492
+ /** What the PDF adapter returns: a `DocumentImport` with its structure report. */
493
+ interface PdfDocumentImport extends DocumentImport {
494
+ structure: PdfStructureReport;
495
+ }
426
496
  /**
427
497
  * Groups one page's pdf.js text items into paragraphs. Exposed for custom
428
498
  * adapters and tests.
@@ -430,8 +500,29 @@ interface PdfImportOptions extends PdfTextOptions {
430
500
  declare function pdfTextItemsToParagraphs(items: ReadonlyArray<PdfJsTextItem | {
431
501
  type: string;
432
502
  }>, options?: PdfTextOptions): string[];
503
+ /** Font details pdf.js exposes for a text item's `fontName`. */
504
+ interface PdfFontInfo {
505
+ name?: string;
506
+ bold?: boolean;
507
+ italic?: boolean;
508
+ }
509
+ /**
510
+ * Converts pdf.js text items to layout runs. `font` resolves a `fontName` to
511
+ * its real name and weight (the adapter reads `page.commonObjs` and
512
+ * `textContent.styles`).
513
+ */
514
+ declare function pdfTextItemsToRuns(items: ReadonlyArray<PdfJsTextItem | {
515
+ type: string;
516
+ }>, font?: (fontName: string) => PdfFontInfo | undefined): PdfTextRun[];
517
+ /**
518
+ * Reads straight, axis-aligned strokes and thin filled bars (table rules)
519
+ * from a pdf.js operator list, in PDF user space. Understands the classic
520
+ * `constructPath` arguments (`[ops, args, minMax]`) and the pdf.js 5 form
521
+ * (`[paintOp, [pathData], minMax]`); clipping paths and curves are ignored.
522
+ */
523
+ declare function pdfOperatorListToRules(list: PdfJsOperatorList, opsTable?: Record<string, number>): PdfRuleLine[];
433
524
  /** Creates a PDF `document` adapter backed by an injected pdf.js-compatible library. */
434
- declare function createPdfImportAdapter(pdfjs: PdfJsLike, options?: PdfImportOptions): DocumentImportAdapter;
525
+ declare function createPdfImportAdapter(pdfjs: PdfJsLike, options?: PdfImportOptions): ImportAdapter<PdfDocumentImport>;
435
526
 
436
527
  /**
437
528
  * Zipped document exports (Notion, Confluence, Obsidian, static-site dumps):
@@ -485,4 +576,4 @@ declare function createZipImportAdapter(options?: ZipImportOptions): DocumentImp
485
576
  /** Zipped-export adapter with default options. Opt in with `registerImportAdapter(zipImportAdapter)`. */
486
577
  declare const zipImportAdapter: DocumentImportAdapter;
487
578
 
488
- export { type BaseSlotProps, type ButtonSlotProps, DEFAULT_DOCX_MAX_IMAGE_SIZE, DEFAULT_ZIP_MAX_ENTRIES, DEFAULT_ZIP_MAX_TOTAL_SIZE, DOCX_MIME_TYPES, DocumentImport, DocumentImportAdapter, type DocxImportOptions, EditorController, type EditorControllerOptions, type EditorSlotsMap, FileImportController, type FileImportControllerOptions, type FileImportState, FileLike, ImportAdapterRegistry, type ImportEditorTarget, type ImportFilesIntoEditorOptions, ImportOutcome, type InsertImportedDocumentOptions, type NodeHeaderSlotProps, type PdfImportOptions, type PdfJsDocument, type PdfJsLike, type PdfJsPage, type PdfJsTextContent, type PdfJsTextItem, type PdfTextOptions, Token, type TooltipSlotProps, ZipArchive, type ZipDocumentImport, type ZipEntry, ZipError, type ZipErrorCode, type ZipImportOptions, type ZipReadOptions, createDocxImportAdapter, createEditor, createFileImportController, createPdfImportAdapter, createZipImportAdapter, docxImportAdapter, docxToDocumentImport, htmlToSlice, importFilesIntoEditor, insertImportedDocument, isUnsafeZipPath, pdfTextItemsToParagraphs, pickImportFiles, readZip, sortZipEntryNames, zipCrc32, zipEntryTitle, zipImportAdapter };
579
+ export { type BaseSlotProps, type ButtonSlotProps, DEFAULT_DOCX_MAX_IMAGE_SIZE, DEFAULT_ZIP_MAX_ENTRIES, DEFAULT_ZIP_MAX_TOTAL_SIZE, DOCX_MIME_TYPES, DocumentImport, DocumentImportAdapter, type DocxImportOptions, EditorController, type EditorControllerOptions, type EditorSlotsMap, FileImportController, type FileImportControllerOptions, type FileImportState, FileLike, ImportAdapter, ImportAdapterRegistry, type ImportEditorTarget, type ImportFilesIntoEditorOptions, ImportOutcome, type ImportStructureSummary, type InsertImportedDocumentOptions, type NodeHeaderSlotProps, type PdfDocumentImport, type PdfFontInfo, type PdfImportCallOptions, type PdfImportOptions, type PdfJsDocument, type PdfJsLike, type PdfJsOperatorList, type PdfJsPage, type PdfJsTextContent, type PdfJsTextItem, PdfLayoutOptions, PdfRuleLine, PdfStructureReport, type PdfTextOptions, PdfTextRun, Token, type TooltipSlotProps, ZipArchive, type ZipDocumentImport, type ZipEntry, ZipError, type ZipErrorCode, type ZipImportOptions, type ZipReadOptions, createDocxImportAdapter, createEditor, createFileImportController, createPdfImportAdapter, createZipImportAdapter, docxImportAdapter, docxToDocumentImport, htmlToSlice, importFilesIntoEditor, insertImportedDocument, isUnsafeZipPath, pdfOperatorListToRules, pdfTextItemsToParagraphs, pdfTextItemsToRuns, pickImportFiles, readZip, sortZipEntryNames, summarizeImportStructure, zipCrc32, zipEntryTitle, zipImportAdapter };