@ssmeo/mcp-local-rag 0.18.14 → 0.19.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 (158) hide show
  1. package/README.de.md +248 -215
  2. package/README.es.md +241 -215
  3. package/README.fr.md +249 -215
  4. package/README.md +207 -297
  5. package/README.pt-BR.md +236 -215
  6. package/README.zh-CN.md +133 -206
  7. package/dist/chunker/semantic-chunker.d.ts +23 -5
  8. package/dist/chunker/semantic-chunker.d.ts.map +1 -1
  9. package/dist/chunker/semantic-chunker.js +13 -5
  10. package/dist/chunker/semantic-chunker.js.map +1 -1
  11. package/dist/cli/common.d.ts +7 -0
  12. package/dist/cli/common.d.ts.map +1 -1
  13. package/dist/cli/common.js +26 -2
  14. package/dist/cli/common.js.map +1 -1
  15. package/dist/cli/delete.d.ts.map +1 -1
  16. package/dist/cli/delete.js +2 -0
  17. package/dist/cli/delete.js.map +1 -1
  18. package/dist/cli/file-collection.d.ts +2 -1
  19. package/dist/cli/file-collection.d.ts.map +1 -1
  20. package/dist/cli/file-collection.js +2 -2
  21. package/dist/cli/file-collection.js.map +1 -1
  22. package/dist/cli/ingest.d.ts +1 -0
  23. package/dist/cli/ingest.d.ts.map +1 -1
  24. package/dist/cli/ingest.js +45 -25
  25. package/dist/cli/ingest.js.map +1 -1
  26. package/dist/cli/list.d.ts.map +1 -1
  27. package/dist/cli/list.js +9 -13
  28. package/dist/cli/list.js.map +1 -1
  29. package/dist/cli/options.d.ts +8 -0
  30. package/dist/cli/options.d.ts.map +1 -1
  31. package/dist/cli/options.js +21 -0
  32. package/dist/cli/options.js.map +1 -1
  33. package/dist/cli/query.d.ts.map +1 -1
  34. package/dist/cli/query.js +2 -1
  35. package/dist/cli/query.js.map +1 -1
  36. package/dist/cli/read-neighbors.d.ts.map +1 -1
  37. package/dist/cli/read-neighbors.js +1 -0
  38. package/dist/cli/read-neighbors.js.map +1 -1
  39. package/dist/cli/relocate.d.ts +3 -0
  40. package/dist/cli/relocate.d.ts.map +1 -0
  41. package/dist/cli/relocate.js +135 -0
  42. package/dist/cli/relocate.js.map +1 -0
  43. package/dist/cli/sync.d.ts.map +1 -1
  44. package/dist/cli/sync.js +17 -8
  45. package/dist/cli/sync.js.map +1 -1
  46. package/dist/cli-main.d.ts +1 -1
  47. package/dist/cli-main.d.ts.map +1 -1
  48. package/dist/cli-main.js +5 -0
  49. package/dist/cli-main.js.map +1 -1
  50. package/dist/embedder/embedding-snapshot.d.ts +52 -0
  51. package/dist/embedder/embedding-snapshot.d.ts.map +1 -0
  52. package/dist/embedder/embedding-snapshot.js +413 -0
  53. package/dist/embedder/embedding-snapshot.js.map +1 -0
  54. package/dist/embedder/index.d.ts +36 -5
  55. package/dist/embedder/index.d.ts.map +1 -1
  56. package/dist/embedder/index.js +346 -23
  57. package/dist/embedder/index.js.map +1 -1
  58. package/dist/embedder/remote.d.ts +16 -2
  59. package/dist/embedder/remote.d.ts.map +1 -1
  60. package/dist/embedder/remote.js +48 -11
  61. package/dist/embedder/remote.js.map +1 -1
  62. package/dist/embedder/sentence-transformers-config.d.ts +24 -0
  63. package/dist/embedder/sentence-transformers-config.d.ts.map +1 -0
  64. package/dist/embedder/sentence-transformers-config.js +93 -0
  65. package/dist/embedder/sentence-transformers-config.js.map +1 -0
  66. package/dist/features/sync.js +1 -1
  67. package/dist/features/sync.js.map +1 -1
  68. package/dist/ingest/compute.d.ts +15 -7
  69. package/dist/ingest/compute.d.ts.map +1 -1
  70. package/dist/ingest/compute.js +74 -14
  71. package/dist/ingest/compute.js.map +1 -1
  72. package/dist/ingest/file.d.ts +3 -3
  73. package/dist/ingest/file.d.ts.map +1 -1
  74. package/dist/ingest/file.js +0 -5
  75. package/dist/ingest/file.js.map +1 -1
  76. package/dist/ingest/visual.d.ts +6 -2
  77. package/dist/ingest/visual.d.ts.map +1 -1
  78. package/dist/ingest/visual.js +20 -4
  79. package/dist/ingest/visual.js.map +1 -1
  80. package/dist/parser/docx-parser.d.ts +2 -0
  81. package/dist/parser/docx-parser.d.ts.map +1 -1
  82. package/dist/parser/docx-parser.js +12 -3
  83. package/dist/parser/docx-parser.js.map +1 -1
  84. package/dist/parser/index.d.ts +11 -1
  85. package/dist/parser/index.d.ts.map +1 -1
  86. package/dist/parser/index.js +27 -11
  87. package/dist/parser/index.js.map +1 -1
  88. package/dist/parser/pdf-extract.d.ts +2 -0
  89. package/dist/parser/pdf-extract.d.ts.map +1 -1
  90. package/dist/parser/pdf-extract.js +3 -0
  91. package/dist/parser/pdf-extract.js.map +1 -1
  92. package/dist/parser/pdf-filter.d.ts +2 -9
  93. package/dist/parser/pdf-filter.d.ts.map +1 -1
  94. package/dist/parser/pdf-filter.js +110 -144
  95. package/dist/parser/pdf-filter.js.map +1 -1
  96. package/dist/parser/pdf-headings.d.ts +6 -0
  97. package/dist/parser/pdf-headings.d.ts.map +1 -0
  98. package/dist/parser/pdf-headings.js +166 -0
  99. package/dist/parser/pdf-headings.js.map +1 -0
  100. package/dist/parser/text-source-map.d.ts +3 -0
  101. package/dist/parser/text-source-map.d.ts.map +1 -0
  102. package/dist/parser/text-source-map.js +33 -0
  103. package/dist/parser/text-source-map.js.map +1 -0
  104. package/dist/pdf-visual/detector.js +3 -3
  105. package/dist/pdf-visual/detector.js.map +1 -1
  106. package/dist/rerank/command.d.ts +10 -7
  107. package/dist/rerank/command.d.ts.map +1 -1
  108. package/dist/rerank/command.js +51 -10
  109. package/dist/rerank/command.js.map +1 -1
  110. package/dist/rerank/index.d.ts +3 -3
  111. package/dist/rerank/index.d.ts.map +1 -1
  112. package/dist/rerank/index.js +3 -3
  113. package/dist/rerank/index.js.map +1 -1
  114. package/dist/server/index.d.ts +4 -1
  115. package/dist/server/index.d.ts.map +1 -1
  116. package/dist/server/index.js +114 -79
  117. package/dist/server/index.js.map +1 -1
  118. package/dist/server/list-scanner.d.ts +2 -1
  119. package/dist/server/list-scanner.d.ts.map +1 -1
  120. package/dist/server/list-scanner.js +2 -2
  121. package/dist/server/list-scanner.js.map +1 -1
  122. package/dist/server/tool-definitions.js +2 -2
  123. package/dist/server/tool-definitions.js.map +1 -1
  124. package/dist/server/types.d.ts +9 -0
  125. package/dist/server/types.d.ts.map +1 -1
  126. package/dist/server-main.d.ts +2 -2
  127. package/dist/server-main.d.ts.map +1 -1
  128. package/dist/server-main.js +22 -20
  129. package/dist/server-main.js.map +1 -1
  130. package/dist/utils/base-dirs.d.ts +9 -10
  131. package/dist/utils/base-dirs.d.ts.map +1 -1
  132. package/dist/utils/base-dirs.js +28 -30
  133. package/dist/utils/base-dirs.js.map +1 -1
  134. package/dist/utils/scan.d.ts +25 -5
  135. package/dist/utils/scan.d.ts.map +1 -1
  136. package/dist/utils/scan.js +40 -10
  137. package/dist/utils/scan.js.map +1 -1
  138. package/dist/utils/source-context.d.ts +29 -0
  139. package/dist/utils/source-context.d.ts.map +1 -0
  140. package/dist/utils/source-context.js +86 -0
  141. package/dist/utils/source-context.js.map +1 -0
  142. package/dist/utils/sync-path-key.d.ts +1 -1
  143. package/dist/utils/sync-path-key.d.ts.map +1 -1
  144. package/dist/utils/sync-path-key.js +1 -1
  145. package/dist/utils/sync-path-key.js.map +1 -1
  146. package/dist/vectordb/index.d.ts +4 -2
  147. package/dist/vectordb/index.d.ts.map +1 -1
  148. package/dist/vectordb/index.js +30 -7
  149. package/dist/vectordb/index.js.map +1 -1
  150. package/dist/vectordb/relocate.d.ts +18 -0
  151. package/dist/vectordb/relocate.d.ts.map +1 -0
  152. package/dist/vectordb/relocate.js +179 -0
  153. package/dist/vectordb/relocate.js.map +1 -0
  154. package/dist/vectordb/types.d.ts +10 -23
  155. package/dist/vectordb/types.d.ts.map +1 -1
  156. package/dist/vectordb/types.js +14 -23
  157. package/dist/vectordb/types.js.map +1 -1
  158. package/package.json +14 -14
@@ -6,7 +6,6 @@ export function buildPreparedFileVectorChunks(prepared) {
6
6
  filePath: prepared.filePath,
7
7
  chunks: prepared.chunks,
8
8
  embeddings: prepared.embeddings,
9
- fileSize: prepared.textLength,
10
9
  fileTitle: prepared.title,
11
10
  contentHash: prepared.contentHash,
12
11
  visualProfile: prepared.visualProfile,
@@ -31,7 +30,6 @@ export async function prepareFileForIngest(filePath, collaborators, options) {
31
30
  const { parser, chunker, embedder } = collaborators;
32
31
  const contentHash = await readPreParseContentHash(filePath, parser);
33
32
  const isPdf = filePath.toLowerCase().endsWith('.pdf');
34
- let text;
35
33
  let title;
36
34
  let chunks;
37
35
  let embeddings;
@@ -43,7 +41,6 @@ export async function prepareFileForIngest(filePath, collaborators, options) {
43
41
  ...(options.captioner === undefined ? {} : { captioner: options.captioner }),
44
42
  };
45
43
  const result = await prepareVisualPdfChunks(filePath, collaborators, visualOptions);
46
- text = result.text;
47
44
  title = result.title;
48
45
  chunks = result.chunks;
49
46
  embeddings = result.embeddings;
@@ -54,7 +51,6 @@ export async function prepareFileForIngest(filePath, collaborators, options) {
54
51
  const result = isPdf
55
52
  ? await parser.parsePdf(filePath, embedder)
56
53
  : await parser.parseFile(filePath, { images: options.images });
57
- text = result.content;
58
54
  title = result.title || null;
59
55
  ({ chunks, embeddings, visualAttachments, omittedImageCount } =
60
56
  await buildChunksFromParseResult(result, chunker, embedder));
@@ -63,7 +59,6 @@ export async function prepareFileForIngest(filePath, collaborators, options) {
63
59
  filePath,
64
60
  chunks,
65
61
  embeddings,
66
- textLength: text.length,
67
62
  title,
68
63
  contentHash,
69
64
  visualProfile: isPdf ? (options.captioner?.profile ?? null) : null,
@@ -1 +1 @@
1
- {"version":3,"file":"file.js","sourceRoot":"","sources":["../../src/ingest/file.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"file.js","sourceRoot":"","sources":["../../src/ingest/file.ts"],"names":[],"mappings":"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"}
@@ -1,10 +1,12 @@
1
- import type { AtomicTextRange, SemanticChunker, TextChunk } from '../chunker/index.js';
1
+ import type { AtomicTextRange, SemanticChunker } from '../chunker/index.js';
2
2
  import type { EmbedderInterface } from '../chunker/semantic-chunker.js';
3
3
  import type { DocumentParser } from '../parser/index.js';
4
4
  import type { FilteredTextFragment } from '../parser/pdf-filter.js';
5
5
  import type { ProcessedVisualRegion } from '../pdf-visual/types.js';
6
+ import type { HeadingAnchor, SourceMap } from '../utils/source-context.js';
6
7
  import type { QualityProfile } from '../utils/visual-profile.js';
7
8
  import type { VisualAttachment } from '../vectordb/types.js';
9
+ import { buildChunksAndEmbeddings } from './compute.js';
8
10
  export interface VisualPdfParser {
9
11
  parsePdfPages: DocumentParser['parsePdfPages'];
10
12
  }
@@ -24,7 +26,7 @@ export interface PrepareVisualPdfChunksOptions {
24
26
  captioner?: CaptionerConfig;
25
27
  }
26
28
  export interface PrepareVisualPdfChunksResult {
27
- chunks: TextChunk[];
29
+ chunks: Awaited<ReturnType<typeof buildChunksAndEmbeddings>>['chunks'];
28
30
  embeddings: number[][];
29
31
  title: string | null;
30
32
  text: string;
@@ -33,6 +35,7 @@ export interface PrepareVisualPdfChunksResult {
33
35
  omittedImageCount: number;
34
36
  }
35
37
  export interface OrderedVisualPage {
38
+ headings?: HeadingAnchor[];
36
39
  pageNum: number;
37
40
  text: string;
38
41
  textFragments: readonly FilteredTextFragment[];
@@ -43,6 +46,7 @@ export interface OrderedVisualRegion extends ProcessedVisualRegion {
43
46
  captionRange?: AtomicTextRange;
44
47
  }
45
48
  export interface OrderedVisualDocument {
49
+ sourceMap?: SourceMap;
46
50
  text: string;
47
51
  atomicRanges: AtomicTextRange[];
48
52
  regions: OrderedVisualRegion[];
@@ -1 +1 @@
1
- {"version":3,"file":"visual.d.ts","sourceRoot":"","sources":["../../src/ingest/visual.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,eAAe,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAA;AACtF,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAA;AACvE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAA;AACxD,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAA;AACnE,OAAO,KAAK,EAAwB,qBAAqB,EAAE,MAAM,wBAAwB,CAAA;AACzF,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAA;AAChE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAA;AAG5D,MAAM,WAAW,eAAe;IAC9B,aAAa,EAAE,cAAc,CAAC,eAAe,CAAC,CAAA;CAC/C;AAED,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,cAAc,CAAA;IACvB,QAAQ,EAAE,MAAM,CAAA;IAChB,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;CAC5B;AAED,yEAAyE;AACzE,MAAM,WAAW,yBAAyB;IACxC,MAAM,EAAE,eAAe,CAAA;IACvB,OAAO,EAAE,eAAe,CAAA;IACxB,QAAQ,EAAE,iBAAiB,CAAA;CAC5B;AAED,MAAM,WAAW,6BAA6B;IAC5C,MAAM,EAAE,OAAO,CAAA;IACf,SAAS,CAAC,EAAE,eAAe,CAAA;CAC5B;AAED,MAAM,WAAW,4BAA4B;IAC3C,MAAM,EAAE,SAAS,EAAE,CAAA;IACnB,UAAU,EAAE,MAAM,EAAE,EAAE,CAAA;IACtB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAA;IACpB,IAAI,EAAE,MAAM,CAAA;IACZ,YAAY,EAAE,eAAe,EAAE,CAAA;IAC/B,iBAAiB,EAAE,GAAG,CAAC,MAAM,EAAE,gBAAgB,EAAE,CAAC,CAAA;IAClD,iBAAiB,EAAE,MAAM,CAAA;CAC1B;AAED,MAAM,WAAW,iBAAiB;IAChC,OAAO,EAAE,MAAM,CAAA;IACf,IAAI,EAAE,MAAM,CAAA;IACZ,aAAa,EAAE,SAAS,oBAAoB,EAAE,CAAA;CAC/C;AAED,MAAM,WAAW,mBAAoB,SAAQ,qBAAqB;IAChE,WAAW,EAAE,MAAM,CAAA;IACnB,YAAY,EAAE,MAAM,CAAA;IACpB,YAAY,CAAC,EAAE,eAAe,CAAA;CAC/B;AAED,MAAM,WAAW,qBAAqB;IACpC,IAAI,EAAE,MAAM,CAAA;IACZ,YAAY,EAAE,eAAe,EAAE,CAAA;IAC/B,OAAO,EAAE,mBAAmB,EAAE,CAAA;CAC/B;AAiND,wBAAgB,0BAA0B,CACxC,KAAK,EAAE,SAAS,iBAAiB,EAAE,EACnC,gBAAgB,EAAE,SAAS,qBAAqB,EAAE,GACjD,qBAAqB,CAmCvB;AAoHD,wBAAsB,sBAAsB,CAC1C,QAAQ,EAAE,MAAM,EAChB,aAAa,EAAE,yBAAyB,EACxC,OAAO,EAAE,6BAA6B,GACrC,OAAO,CAAC,4BAA4B,CAAC,CAyCvC"}
1
+ {"version":3,"file":"visual.d.ts","sourceRoot":"","sources":["../../src/ingest/visual.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,eAAe,EAAa,MAAM,qBAAqB,CAAA;AACtF,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAA;AACvE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAA;AACxD,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAA;AACnE,OAAO,KAAK,EAAwB,qBAAqB,EAAE,MAAM,wBAAwB,CAAA;AACzF,OAAO,KAAK,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAA;AAC1E,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAA;AAChE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAA;AAC5D,OAAO,EAAE,wBAAwB,EAA4C,MAAM,cAAc,CAAA;AAEjG,MAAM,WAAW,eAAe;IAC9B,aAAa,EAAE,cAAc,CAAC,eAAe,CAAC,CAAA;CAC/C;AAED,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,cAAc,CAAA;IACvB,QAAQ,EAAE,MAAM,CAAA;IAChB,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;CAC5B;AAED,yEAAyE;AACzE,MAAM,WAAW,yBAAyB;IACxC,MAAM,EAAE,eAAe,CAAA;IACvB,OAAO,EAAE,eAAe,CAAA;IACxB,QAAQ,EAAE,iBAAiB,CAAA;CAC5B;AAED,MAAM,WAAW,6BAA6B;IAC5C,MAAM,EAAE,OAAO,CAAA;IACf,SAAS,CAAC,EAAE,eAAe,CAAA;CAC5B;AAED,MAAM,WAAW,4BAA4B;IAC3C,MAAM,EAAE,OAAO,CAAC,UAAU,CAAC,OAAO,wBAAwB,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAA;IACtE,UAAU,EAAE,MAAM,EAAE,EAAE,CAAA;IACtB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAA;IACpB,IAAI,EAAE,MAAM,CAAA;IACZ,YAAY,EAAE,eAAe,EAAE,CAAA;IAC/B,iBAAiB,EAAE,GAAG,CAAC,MAAM,EAAE,gBAAgB,EAAE,CAAC,CAAA;IAClD,iBAAiB,EAAE,MAAM,CAAA;CAC1B;AAED,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,EAAE,aAAa,EAAE,CAAA;IAC1B,OAAO,EAAE,MAAM,CAAA;IACf,IAAI,EAAE,MAAM,CAAA;IACZ,aAAa,EAAE,SAAS,oBAAoB,EAAE,CAAA;CAC/C;AAED,MAAM,WAAW,mBAAoB,SAAQ,qBAAqB;IAChE,WAAW,EAAE,MAAM,CAAA;IACnB,YAAY,EAAE,MAAM,CAAA;IACpB,YAAY,CAAC,EAAE,eAAe,CAAA;CAC/B;AAED,MAAM,WAAW,qBAAqB;IACpC,SAAS,CAAC,EAAE,SAAS,CAAA;IACrB,IAAI,EAAE,MAAM,CAAA;IACZ,YAAY,EAAE,eAAe,EAAE,CAAA;IAC/B,OAAO,EAAE,mBAAmB,EAAE,CAAA;CAC/B;AA0ND,wBAAgB,0BAA0B,CACxC,KAAK,EAAE,SAAS,iBAAiB,EAAE,EACnC,gBAAgB,EAAE,SAAS,qBAAqB,EAAE,GACjD,qBAAqB,CA0CvB;AAoHD,wBAAsB,sBAAsB,CAC1C,QAAQ,EAAE,MAAM,EAChB,aAAa,EAAE,yBAAyB,EACxC,OAAO,EAAE,6BAA6B,GACrC,OAAO,CAAC,4BAA4B,CAAC,CAwCvC"}
@@ -102,6 +102,7 @@ function appendGroupCaptions(pageText, group, context) {
102
102
  function renderPageWithCaptions(page, insertionGroups, pageVisualIndices) {
103
103
  let pageText = '';
104
104
  let pageCursor = 0;
105
+ const shifts = [];
105
106
  const captionRanges = new Map();
106
107
  const anchorOffsets = new Map();
107
108
  for (const [offset, group] of [...insertionGroups].sort((left, right) => left[0] - right[0])) {
@@ -119,10 +120,16 @@ function renderPageWithCaptions(page, insertionGroups, pageVisualIndices) {
119
120
  if (hasCaption && offset < page.text.length) {
120
121
  pageText += blankLinePadding(page.text.slice(offset));
121
122
  }
123
+ shifts.push({ offset, delta: pageText.length - offset });
122
124
  pageCursor = offset;
123
125
  }
124
126
  pageText += page.text.slice(pageCursor);
125
- return { pageText, captionRanges, anchorOffsets };
127
+ const headings = (page.headings ?? []).map((heading) => ({
128
+ ...heading,
129
+ offset: heading.offset +
130
+ (shifts.filter((shift) => shift.offset <= heading.offset).at(-1)?.delta ?? 0),
131
+ }));
132
+ return { pageText, captionRanges, anchorOffsets, headings };
126
133
  }
127
134
  /** Rebase one page-relative region onto the whole-document text. */
128
135
  function toOrderedRegion(region, rendered, pageStart, visualIndex) {
@@ -143,6 +150,7 @@ function toOrderedRegion(region, rendered, pageStart, visualIndex) {
143
150
  }
144
151
  export function buildOrderedVisualDocument(pages, processedRegions) {
145
152
  let text = '';
153
+ const sourceMap = { headings: [], pages: [] };
146
154
  let visualIndex = 0;
147
155
  const atomicRanges = [];
148
156
  const regions = [];
@@ -156,6 +164,10 @@ export function buildOrderedVisualDocument(pages, processedRegions) {
156
164
  const pageSeparator = text.length > 0 && rendered.pageText.length > 0 ? '\n\n' : '';
157
165
  const pageStart = text.length + pageSeparator.length;
158
166
  text += pageSeparator + rendered.pageText;
167
+ if (rendered.pageText) {
168
+ sourceMap.pages?.push({ start: pageStart, end: text.length, page: page.pageNum });
169
+ }
170
+ sourceMap.headings.push(...rendered.headings.map((heading) => ({ ...heading, offset: pageStart + heading.offset })));
159
171
  for (const positionedRegion of positioned) {
160
172
  const record = toOrderedRegion(positionedRegion.region, rendered, pageStart, visualIndex++);
161
173
  if (record.captionRange) {
@@ -168,7 +180,7 @@ export function buildOrderedVisualDocument(pages, processedRegions) {
168
180
  if (consumedRegions.size !== processedRegions.length) {
169
181
  throw new Error('A processed visual region has no matching PDF page');
170
182
  }
171
- return { text, atomicRanges, regions };
183
+ return { text, atomicRanges, regions, sourceMap };
172
184
  }
173
185
  function assignVisualAttachments(document, chunks, attachments) {
174
186
  const attachmentsByChunkIndex = new Map();
@@ -257,14 +269,18 @@ function collectAttachments(regions) {
257
269
  export async function prepareVisualPdfChunks(filePath, collaborators, options) {
258
270
  const { parser, chunker, embedder } = collaborators;
259
271
  const captionerConfig = options.captioner;
260
- const { doc, title, pages } = await parser.parsePdfPages(filePath, embedder);
272
+ const { doc, title, embeddingTitle, pages } = await parser.parsePdfPages(filePath, embedder);
261
273
  try {
262
274
  let omittedImageCount = 0;
263
275
  const detected = await detectAndProcessRegions(pages, doc, captionerConfig, options.images);
264
276
  const processed = detected.processed;
265
277
  omittedImageCount += detected.omittedImageCount;
266
278
  const ordered = buildOrderedVisualDocument(pages, processed);
267
- const { chunks, embeddings } = await buildChunksAndEmbeddings(ordered.text, chunker, embedder, ordered.atomicRanges);
279
+ const { chunks, embeddings } = await buildChunksAndEmbeddings(ordered.text, chunker, embedder, {
280
+ sourceMap: ordered.sourceMap,
281
+ atomicRanges: ordered.atomicRanges,
282
+ title: embeddingTitle,
283
+ });
268
284
  const collected = options.images
269
285
  ? collectAttachments(ordered.regions)
270
286
  : { attachments: [], omittedImageCount: 0 };
@@ -1 +1 @@
1
- {"version":3,"file":"visual.js","sourceRoot":"","sources":["../../src/ingest/visual.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,wBAAwB,EAAE,sBAAsB,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAA;AAoDjG,SAAS,iBAAiB,CAAC,IAAuB,EAAE,KAAwB;IAC1E,OAAO,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAA;AACvF,CAAC;AAED,SAAS,OAAO,CAAC,IAAuB;IACtC,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAA;AAC9C,CAAC;AAED,SAAS,OAAO,CAAC,IAAuB;IACtC,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAA;AAC9C,CAAC;AAED,SAAS,kBAAkB,CACzB,SAA0C,EAC1C,MAA4B;IAE5B,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC3B,OAAO,CAAC,CAAA;IACV,CAAC;IACD,IAAI,UAAU,GAAG,SAAS;SACvB,GAAG,CAAC,CAAC,QAAQ,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC,CAAC;SAC/C,MAAM,CAAC,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC,iBAAiB,CAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC,CAAA;IAE1E,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC5B,MAAM,YAAY,GAAG,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;QACzC,MAAM,eAAe,GAAG,IAAI,CAAC,GAAG,CAC9B,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,YAAY,CAAC,CAAC,CAChF,CAAA;QACD,UAAU,GAAG,SAAS;aACnB,GAAG,CAAC,CAAC,QAAQ,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC,CAAC;aAC/C,MAAM,CAAC,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,YAAY,CAAC,KAAK,eAAe,CAAC,CAAA;IAClG,CAAC;IAED,MAAM,cAAc,GAAG,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;IAC3C,MAAM,SAAS,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,cAAc,CAAC,CAAA;IAC/F,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACzB,OAAO,IAAI,CAAC,GAAG,CAAC,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAA;IAC7D,CAAC;IACD,OAAO,IAAI,CAAC,GAAG,CAAC,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC,CAAA;AAC1D,CAAC;AAED,SAAS,iBAAiB,CAAC,IAAuB;IAChD,IAAI,IAAI,CAAC,aAAa,CAAC,MAAM,GAAG,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC5D,OAAO,IAAI,CAAC,aAAa,CAAA;IAC3B,CAAC;IACD,OAAO;QACL;YACE,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,YAAY,EAAE,CAAC;YACf,WAAW,EAAE,CAAC;YACd,eAAe,EAAE,CAAC;YAClB,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;YAClB,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,aAAa,EAAE,CAAC;YAChB,WAAW,EAAE,IAAI,CAAC,IAAI,CAAC,MAAM;SAC9B;KACF,CAAA;AACH,CAAC;AAQD,2EAA2E;AAC3E,SAAS,eAAe,CACtB,IAAuB,EACvB,aAA8C,EAC9C,gBAAkD;IAElD,OAAO,gBAAgB;SACpB,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,OAAO,KAAK,IAAI,CAAC,OAAO,CAAC;SACnD,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,cAAc,EAAE,kBAAkB,CAAC,aAAa,EAAE,MAAM,CAAC,EAAE,CAAC,CAAC;SACxF,IAAI,CACH,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CACd,IAAI,CAAC,cAAc,GAAG,KAAK,CAAC,cAAc;QAC1C,IAAI,CAAC,MAAM,CAAC,cAAc,GAAG,KAAK,CAAC,MAAM,CAAC,cAAc,CAC3D,CAAA;AACL,CAAC;AAED;;;GAGG;AACH,SAAS,sBAAsB,CAC7B,IAAuB,EACvB,aAA8C,EAC9C,UAAuC;IAEvC,MAAM,MAAM,GAAG,IAAI,GAAG,EAAmC,CAAA;IACzD,KAAK,MAAM,IAAI,IAAI,UAAU,EAAE,CAAC;QAC9B,MAAM,SAAS,GAAG,aAAa,CAAC,IAAI,CAAC,cAAc,GAAG,CAAC,CAAC,CAAA;QACxD,MAAM,SAAS,GAAG,aAAa,CAAC,IAAI,CAAC,cAAc,CAAC,CAAA;QACpD,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CACrB,CAAC,EACD,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,SAAS,EAAE,WAAW,IAAI,SAAS,EAAE,aAAa,IAAI,CAAC,CAAC,CACpF,CAAA;QACD,MAAM,KAAK,GAAG,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE,CAAA;QACtC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;QACvB,MAAM,CAAC,GAAG,CAAC,MAAM,EAAE,KAAK,CAAC,CAAA;IAC3B,CAAC;IACD,OAAO,MAAM,CAAA;AACf,CAAC;AASD,kEAAkE;AAClE,SAAS,gBAAgB,CAAC,QAAgB;IACxC,MAAM,OAAO,GAAG,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,CAAA;IACvD,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,CAAC,CAAA;AAC9C,CAAC;AAED;;;GAGG;AACH,SAAS,mBAAmB,CAC1B,QAAgB,EAChB,KAAuC,EACvC,OAKC;IAED,MAAM,EAAE,IAAI,EAAE,iBAAiB,EAAE,GAAG,IAAI,EAAE,GAAG,OAAO,CAAA;IACpD,IAAI,IAAI,GAAG,QAAQ,CAAA;IACnB,IAAI,YAAY,GAAG,CAAC,CAAA;IACpB,KAAK,MAAM,MAAM,IAAI,KAAK,EAAE,CAAC;QAC3B,IAAI,MAAM,CAAC,OAAO,KAAK,IAAI,EAAE,CAAC;YAC5B,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,CAAA;YAC3C,SAAQ;QACV,CAAC;QACD,IAAI,YAAY,GAAG,CAAC,EAAE,CAAC;YACrB,IAAI,IAAI,MAAM,CAAA;QAChB,CAAC;QACD,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAA;QACzB,IAAI,IAAI,2BAA2B,IAAI,CAAC,OAAO,YAAY,iBAAiB,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,MAAM,CAAC,OAAO,GAAG,CAAA;QAC9G,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,CAAA;QAC3D,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,MAAM,EAAE,KAAK,CAAC,CAAA;QACrC,YAAY,IAAI,CAAC,CAAA;IACnB,CAAC;IACD,OAAO,IAAI,CAAA;AACb,CAAC;AAED,SAAS,sBAAsB,CAC7B,IAAuB,EACvB,eAAqD,EACrD,iBAAqD;IAErD,IAAI,QAAQ,GAAG,EAAE,CAAA;IACjB,IAAI,UAAU,GAAG,CAAC,CAAA;IAClB,MAAM,aAAa,GAAG,IAAI,GAAG,EAA0C,CAAA;IACvE,MAAM,aAAa,GAAG,IAAI,GAAG,EAAiC,CAAA;IAE9D,KAAK,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,IAAI,CAAC,GAAG,eAAe,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QAC7F,QAAQ,IAAI,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU,EAAE,MAAM,CAAC,CAAA;QAC/C,MAAM,UAAU,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,OAAO,KAAK,IAAI,CAAC,CAAA;QAClE,IAAI,UAAU,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACtC,QAAQ,IAAI,gBAAgB,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAA;QACjE,CAAC;QACD,QAAQ,GAAG,mBAAmB,CAAC,QAAQ,EAAE,KAAK,EAAE;YAC9C,IAAI;YACJ,iBAAiB;YACjB,aAAa;YACb,aAAa;SACd,CAAC,CAAA;QACF,IAAI,UAAU,IAAI,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;YAC5C,QAAQ,IAAI,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAA;QACvD,CAAC;QACD,UAAU,GAAG,MAAM,CAAA;IACrB,CAAC;IACD,QAAQ,IAAI,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,CAAA;IAEvC,OAAO,EAAE,QAAQ,EAAE,aAAa,EAAE,aAAa,EAAE,CAAA;AACnD,CAAC;AAED,oEAAoE;AACpE,SAAS,eAAe,CACtB,MAA6B,EAC7B,QAAsB,EACtB,SAAiB,EACjB,WAAmB;IAEnB,MAAM,QAAQ,GAAG,QAAQ,CAAC,aAAa,CAAC,GAAG,CAAC,MAAM,CAAC,CAAA;IACnD,MAAM,YAAY,GAAG,QAAQ;QAC3B,CAAC,CAAC,EAAE,KAAK,EAAE,SAAS,GAAG,QAAQ,CAAC,KAAK,EAAE,GAAG,EAAE,SAAS,GAAG,QAAQ,CAAC,GAAG,EAAE;QACtE,CAAC,CAAC,SAAS,CAAA;IACb,MAAM,YAAY,GAAG,QAAQ,CAAC,aAAa,CAAC,GAAG,CAAC,MAAM,CAAC,CAAA;IACvD,IAAI,YAAY,KAAK,SAAS,EAAE,CAAC;QAC/B,MAAM,IAAI,KAAK,CAAC,oCAAoC,CAAC,CAAA;IACvD,CAAC;IACD,OAAO;QACL,GAAG,MAAM;QACT,WAAW;QACX,YAAY,EAAE,SAAS,GAAG,YAAY;QACtC,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAC1C,CAAA;AACH,CAAC;AAED,MAAM,UAAU,0BAA0B,CACxC,KAAmC,EACnC,gBAAkD;IAElD,IAAI,IAAI,GAAG,EAAE,CAAA;IACb,IAAI,WAAW,GAAG,CAAC,CAAA;IACnB,MAAM,YAAY,GAAsB,EAAE,CAAA;IAC1C,MAAM,OAAO,GAA0B,EAAE,CAAA;IACzC,MAAM,eAAe,GAAG,IAAI,GAAG,EAAyB,CAAA;IAExD,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,MAAM,aAAa,GAAG,iBAAiB,CAAC,IAAI,CAAC,CAAA;QAC7C,MAAM,UAAU,GAAG,eAAe,CAAC,IAAI,EAAE,aAAa,EAAE,gBAAgB,CAAC,CAAA;QACzE,MAAM,iBAAiB,GAAG,IAAI,GAAG,CAC/B,UAAU,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,MAAM,EAAE,WAAW,GAAG,KAAK,CAAU,CAAC,CAC7E,CAAA;QACD,MAAM,eAAe,GAAG,sBAAsB,CAAC,IAAI,EAAE,aAAa,EAAE,UAAU,CAAC,CAAA;QAC/E,MAAM,QAAQ,GAAG,sBAAsB,CAAC,IAAI,EAAE,eAAe,EAAE,iBAAiB,CAAC,CAAA;QAEjF,MAAM,aAAa,GAAG,IAAI,CAAC,MAAM,GAAG,CAAC,IAAI,QAAQ,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAA;QACnF,MAAM,SAAS,GAAG,IAAI,CAAC,MAAM,GAAG,aAAa,CAAC,MAAM,CAAA;QACpD,IAAI,IAAI,aAAa,GAAG,QAAQ,CAAC,QAAQ,CAAA;QAEzC,KAAK,MAAM,gBAAgB,IAAI,UAAU,EAAE,CAAC;YAC1C,MAAM,MAAM,GAAG,eAAe,CAAC,gBAAgB,CAAC,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,WAAW,EAAE,CAAC,CAAA;YAC3F,IAAI,MAAM,CAAC,YAAY,EAAE,CAAC;gBACxB,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,CAAA;YACxC,CAAC;YACD,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;YACpB,eAAe,CAAC,GAAG,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAA;QAC9C,CAAC;IACH,CAAC;IAED,IAAI,eAAe,CAAC,IAAI,KAAK,gBAAgB,CAAC,MAAM,EAAE,CAAC;QACrD,MAAM,IAAI,KAAK,CAAC,oDAAoD,CAAC,CAAA;IACvE,CAAC;IAED,OAAO,EAAE,IAAI,EAAE,YAAY,EAAE,OAAO,EAAE,CAAA;AACxC,CAAC;AAED,SAAS,uBAAuB,CAC9B,QAA+B,EAC/B,MAA4B,EAC5B,WAAwC;IAExC,MAAM,uBAAuB,GAAG,IAAI,GAAG,EAA8B,CAAA;IACrE,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACxB,OAAO,uBAAuB,CAAA;IAChC,CAAC;IACD,MAAM,mBAAmB,GAAG,IAAI,GAAG,CACjC,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,MAAM,CAAC,WAAW,EAAE,MAAM,CAAU,CAAC,CACxE,CAAA;IACD,MAAM,iBAAiB,GAAG,IAAI,GAAG,EAAU,CAAA;IAE3C,KAAK,MAAM,UAAU,IAAI,CAAC,GAAG,WAAW,CAAC,CAAC,IAAI,CAC5C,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC,UAAU,CACpD,EAAE,CAAC;QACF,IAAI,iBAAiB,CAAC,GAAG,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;YACjD,MAAM,IAAI,KAAK,CAAC,sCAAsC,UAAU,CAAC,UAAU,EAAE,CAAC,CAAA;QAChF,CAAC;QACD,iBAAiB,CAAC,GAAG,CAAC,UAAU,CAAC,UAAU,CAAC,CAAA;QAC5C,MAAM,MAAM,GAAG,mBAAmB,CAAC,GAAG,CAAC,UAAU,CAAC,UAAU,CAAC,CAAA;QAC7D,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,IAAI,KAAK,CAAC,4CAA4C,UAAU,CAAC,UAAU,EAAE,CAAC,CAAA;QACtF,CAAC;QAED,MAAM,KAAK,GAAG,gBAAgB,CAAC,MAAM,EAAE,MAAM,CAAC,YAAY,CAAC,CAAA;QAC3D,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,MAAM,IAAI,KAAK,CAAC,UAAU,UAAU,CAAC,UAAU,sBAAsB,CAAC,CAAA;QACxE,CAAC;QACD,MAAM,OAAO,GAAG,uBAAuB,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,CAAA;QAC9D,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,CAAA;QACxB,uBAAuB,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,EAAE,OAAO,CAAC,CAAA;IACnD,CAAC;IACD,OAAO,uBAAuB,CAAA;AAChC,CAAC;AAED,KAAK,UAAU,uBAAuB,CACpC,OAA+B,EAC/B,GAAiE;IAKjE,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,2BAA2B,CAAC,CAAA;IAC1D,MAAM,SAAS,GAA4B,EAAE,CAAA;IAC7C,IAAI,iBAAiB,GAAG,CAAC,CAAA;IACzB,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;QAC7B,IAAI,CAAC;YACH,MAAM,KAAK,GAAG,MAAM,QAAQ,CAAC,kBAAkB,CAC7C,GAAG,EACH,MAAM,CAAC,OAAO,EACd,MAAM,CAAC,IAAI,EACX,MAAM,CAAC,QAAQ,CAChB,CAAA;YACD,SAAS,CAAC,IAAI,CAAC,EAAE,GAAG,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC,CAAA;QAChE,CAAC;QAAC,MAAM,CAAC;YACP,iBAAiB,IAAI,CAAC,CAAA;YACtB,SAAS,CAAC,IAAI,CAAC,EAAE,GAAG,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAA;QAC9C,CAAC;IACH,CAAC;IACD,OAAO,EAAE,SAAS,EAAE,iBAAiB,EAAE,CAAA;AACzC,CAAC;AAED;;;;GAIG;AACH,KAAK,UAAU,uBAAuB,CACpC,KAAqE,EACrE,GAAiE,EACjE,eAA4C,EAC5C,aAAsB;IAEtB,MAAM,QAAQ,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,SAAS,EAAE,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC,CAAA;IAC5F,IAAI,eAAe,KAAK,SAAS,EAAE,CAAC;QAClC,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,2BAA2B,CAAC,CAAA;QAC1D,OAAO,uBAAuB,CAAC,QAAQ,CAAC,mBAAmB,CAAC,QAAQ,EAAE,GAAG,CAAC,EAAE,GAAG,CAAC,CAAA;IAClF,CAAC;IACD,MAAM,SAAS,GAAG,MAAM,MAAM,CAAC,wBAAwB,CAAC,CAAA;IACxD,MAAM,OAAO,GAAG,SAAS,CAAC,mBAAmB,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAA;IAC5D,MAAM,SAAS,GAAG,SAAS,CAAC,eAAe,CAAC,eAAe,CAAC,CAAA;IAC5D,IAAI,CAAC;QACH,MAAM,SAAS,GAAG,MAAM,SAAS,CAAC,oBAAoB,CAAC,OAAO,EAAE,GAAG,EAAE;YACnE,SAAS;YACT,aAAa;SACd,CAAC,CAAA;QACF,OAAO,EAAE,SAAS,EAAE,iBAAiB,EAAE,CAAC,EAAE,CAAA;IAC5C,CAAC;YAAS,CAAC;QACT,MAAM,SAAS,CAAC,OAAO,EAAE,CAAA;IAC3B,CAAC;AACH,CAAC;AAED,sFAAsF;AACtF,SAAS,kBAAkB,CAAC,OAAuC;IAIjE,MAAM,WAAW,GAAuB,EAAE,CAAA;IAC1C,IAAI,iBAAiB,GAAG,CAAC,CAAA;IACzB,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;QAC7B,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC;YACtB,SAAQ;QACV,CAAC;QACD,IAAI,CAAC;YACH,WAAW,CAAC,IAAI,CAAC,sBAAsB,CAAC,MAAM,CAAC,WAAW,EAAE,MAAM,CAAC,SAAS,CAAC,CAAC,CAAA;QAChF,CAAC;QAAC,MAAM,CAAC;YACP,iBAAiB,IAAI,CAAC,CAAA;QACxB,CAAC;IACH,CAAC;IACD,OAAO,EAAE,WAAW,EAAE,iBAAiB,EAAE,CAAA;AAC3C,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,sBAAsB,CAC1C,QAAgB,EAChB,aAAwC,EACxC,OAAsC;IAEtC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,GAAG,aAAa,CAAA;IACnD,MAAM,eAAe,GAAG,OAAO,CAAC,SAAS,CAAA;IACzC,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,MAAM,MAAM,CAAC,aAAa,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAA;IAC5E,IAAI,CAAC;QACH,IAAI,iBAAiB,GAAG,CAAC,CAAA;QAEzB,MAAM,QAAQ,GAAG,MAAM,uBAAuB,CAAC,KAAK,EAAE,GAAG,EAAE,eAAe,EAAE,OAAO,CAAC,MAAM,CAAC,CAAA;QAC3F,MAAM,SAAS,GAAG,QAAQ,CAAC,SAAS,CAAA;QACpC,iBAAiB,IAAI,QAAQ,CAAC,iBAAiB,CAAA;QAE/C,MAAM,OAAO,GAAG,0BAA0B,CAAC,KAAK,EAAE,SAAS,CAAC,CAAA;QAC5D,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,GAAG,MAAM,wBAAwB,CAC3D,OAAO,CAAC,IAAI,EACZ,OAAO,EACP,QAAQ,EACR,OAAO,CAAC,YAAY,CACrB,CAAA;QACD,MAAM,SAAS,GAAG,OAAO,CAAC,MAAM;YAC9B,CAAC,CAAC,kBAAkB,CAAC,OAAO,CAAC,OAAO,CAAC;YACrC,CAAC,CAAC,EAAE,WAAW,EAAE,EAAE,EAAE,iBAAiB,EAAE,CAAC,EAAE,CAAA;QAC7C,MAAM,WAAW,GAAG,SAAS,CAAC,WAAW,CAAA;QACzC,iBAAiB,IAAI,SAAS,CAAC,iBAAiB,CAAA;QAChD,MAAM,iBAAiB,GAAG,uBAAuB,CAAC,OAAO,EAAE,MAAM,EAAE,WAAW,CAAC,CAAA;QAC/E,OAAO;YACL,MAAM;YACN,UAAU;YACV,KAAK;YACL,IAAI,EAAE,OAAO,CAAC,IAAI;YAClB,YAAY,EAAE,OAAO,CAAC,YAAY;YAClC,iBAAiB;YACjB,iBAAiB;SAClB,CAAA;IACH,CAAC;YAAS,CAAC;QACT,IAAI,CAAC;YACH,GAAG,CAAC,OAAO,EAAE,CAAA;QACf,CAAC;QAAC,OAAO,YAAY,EAAE,CAAC;YACtB,MAAM,OAAO,GAAG,YAAY,YAAY,KAAK,CAAC,CAAC,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC,CAAA;YAC3F,OAAO,CAAC,IAAI,CAAC,iDAAiD,OAAO,EAAE,CAAC,CAAA;QAC1E,CAAC;IACH,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"visual.js","sourceRoot":"","sources":["../../src/ingest/visual.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,7 @@
1
1
  import type { AtomicTextRange } from '../chunker/index.js';
2
+ import type { SourceMap } from '../utils/source-context.js';
2
3
  export interface DocxBodyResult {
4
+ sourceMap?: SourceMap;
3
5
  content: string;
4
6
  atomicRanges: readonly AtomicTextRange[];
5
7
  imageAnchors?: readonly {
@@ -1 +1 @@
1
- {"version":3,"file":"docx-parser.d.ts","sourceRoot":"","sources":["../../src/parser/docx-parser.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAA;AAU1D,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,MAAM,CAAA;IACf,YAAY,EAAE,SAAS,eAAe,EAAE,CAAA;IACxC,YAAY,CAAC,EAAE,SAAS;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE,MAAM,CAAA;KAAE,EAAE,CAAA;CACjE;AA6VD,wBAAsB,oBAAoB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAsBtF;AAsCD,wBAAgB,yBAAyB,CAAC,QAAQ,EAAE,QAAQ,GAAG,cAAc,CAmC5E"}
1
+ {"version":3,"file":"docx-parser.d.ts","sourceRoot":"","sources":["../../src/parser/docx-parser.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAA;AAC1D,OAAO,KAAK,EAAiB,SAAS,EAAE,MAAM,4BAA4B,CAAA;AAU1E,MAAM,WAAW,cAAc;IAC7B,SAAS,CAAC,EAAE,SAAS,CAAA;IACrB,OAAO,EAAE,MAAM,CAAA;IACf,YAAY,EAAE,SAAS,eAAe,EAAE,CAAA;IACxC,YAAY,CAAC,EAAE,SAAS;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE,MAAM,CAAA;KAAE,EAAE,CAAA;CACjE;AAkWD,wBAAsB,oBAAoB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAsBtF;AAsCD,wBAAgB,yBAAyB,CAAC,QAAQ,EAAE,QAAQ,GAAG,cAAc,CAwC5E"}
@@ -256,9 +256,13 @@ function blockSerializerFor(element) {
256
256
  function emitDocumentBlocks(document) {
257
257
  const blocks = [];
258
258
  /** Push one non-empty prose block. */
259
- const pushText = (text) => {
259
+ const pushText = (text, tag = '') => {
260
260
  if (text) {
261
- blocks.push({ text, atomic: false });
261
+ blocks.push({
262
+ text,
263
+ atomic: false,
264
+ ...(/^H[1-6]$/.test(tag) ? { headingLevel: Number(tag[1]) } : {}),
265
+ });
262
266
  }
263
267
  };
264
268
  const emitElement = (element) => {
@@ -267,7 +271,7 @@ function emitDocumentBlocks(document) {
267
271
  }
268
272
  const serialize = blockSerializerFor(element);
269
273
  if (serialize !== null) {
270
- pushText(serialize(element));
274
+ pushText(serialize(element), element.tagName);
271
275
  return;
272
276
  }
273
277
  if (element.tagName === 'TABLE') {
@@ -344,6 +348,7 @@ function dedupeAnchors(imageAnchors) {
344
348
  }
345
349
  export function convertDocxDocumentToText(document) {
346
350
  let content = '';
351
+ const headings = [];
347
352
  const atomicRanges = [];
348
353
  const imageAnchors = [];
349
354
  for (const block of emitDocumentBlocks(document)) {
@@ -359,6 +364,9 @@ export function convertDocxDocumentToText(document) {
359
364
  content += '\n\n';
360
365
  }
361
366
  const start = content.length;
367
+ if (block.headingLevel) {
368
+ headings.push({ offset: start, level: block.headingLevel, text: blockText });
369
+ }
362
370
  imageAnchors.push(...anchorsWithinBlock(block.text, matches, start));
363
371
  content += blockText;
364
372
  if (block.atomic) {
@@ -368,6 +376,7 @@ export function convertDocxDocumentToText(document) {
368
376
  const uniqueImageAnchors = dedupeAnchors(imageAnchors);
369
377
  return {
370
378
  content,
379
+ ...(headings.length ? { sourceMap: { headings } } : {}),
371
380
  atomicRanges,
372
381
  ...(uniqueImageAnchors.length === 0 ? {} : { imageAnchors: uniqueImageAnchors }),
373
382
  };
@@ -1 +1 @@
1
- {"version":3,"file":"docx-parser.js","sourceRoot":"","sources":["../../src/parser/docx-parser.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"docx-parser.js","sourceRoot":"","sources":["../../src/parser/docx-parser.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,7 @@
1
1
  import type { Document as MupdfDocument } from 'mupdf';
2
2
  import { type AtomicTextRange } from '../chunker/index.js';
3
3
  import { AppError } from '../utils/errors.js';
4
+ import type { HeadingAnchor, SourceMap } from '../utils/source-context.js';
4
5
  import type { EmbedderInterface, FilteredTextFragment } from './pdf-filter.js';
5
6
  /**
6
7
  * File extensions supported by the parser module (parseFile + parsePdf).
@@ -10,11 +11,18 @@ import type { EmbedderInterface, FilteredTextFragment } from './pdf-filter.js';
10
11
  export declare const SUPPORTED_EXTENSIONS: Set<string>;
11
12
  /**
12
13
  * Result from parsing a document, containing both content and extracted title.
13
- * Title is display-only metadata (NOT used for search scoring).
14
+ * Title is display metadata; it reaches search only through the opt-in
15
+ * embedding title prefix.
14
16
  */
15
17
  export interface ParseResult {
18
+ sourceMap?: SourceMap;
16
19
  content: string;
17
20
  title: string;
21
+ /**
22
+ * Title for the embedding prefix; `title` is used when absent. PDFs set it
23
+ * so a display title taken from page-1 body text embeds as the file name.
24
+ */
25
+ embeddingTitle?: string;
18
26
  atomicRanges?: readonly AtomicTextRange[];
19
27
  imageAnchors?: readonly ParsedImageAnchor[];
20
28
  }
@@ -105,8 +113,10 @@ export declare class DocumentParser {
105
113
  parsePdfPages(filePath: string, embedder: EmbedderInterface): Promise<{
106
114
  doc: MupdfDocument;
107
115
  title: string;
116
+ embeddingTitle: string;
108
117
  pages: Array<{
109
118
  pageNum: number;
119
+ headings?: HeadingAnchor[];
110
120
  text: string;
111
121
  textFragments: FilteredTextFragment[];
112
122
  stextJson: unknown;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/parser/index.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,QAAQ,IAAI,aAAa,EAAE,MAAM,OAAO,CAAA;AACtD,OAAO,EAAE,KAAK,eAAe,EAAmB,MAAM,qBAAqB,CAAA;AAE3E,OAAO,EAAE,QAAQ,EAAuB,MAAM,oBAAoB,CAAA;AAIlE,OAAO,KAAK,EAAE,iBAAiB,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAA;AAY9E;;;;GAIG;AACH,eAAO,MAAM,oBAAoB,aAA4C,CAAA;AAM7E;;;GAGG;AACH,MAAM,WAAW,WAAW;IAC1B,OAAO,EAAE,MAAM,CAAA;IACf,KAAK,EAAE,MAAM,CAAA;IACb,YAAY,CAAC,EAAE,SAAS,eAAe,EAAE,CAAA;IACzC,YAAY,CAAC,EAAE,SAAS,iBAAiB,EAAE,CAAA;CAC5C;AAED,MAAM,WAAW,iBAAiB;IAChC,MAAM,EAAE,MAAM,CAAA;IACd,UAAU,EAAE,MAAM,CAAA;IAClB,QAAQ,EAAE,WAAW,GAAG,YAAY,CAAA;IACpC,KAAK,EAAE,UAAU,CAAA;CAClB;AAED,MAAM,WAAW,gBAAgB;IAC/B,MAAM,CAAC,EAAE,OAAO,CAAA;CACjB;AAgCD;;;;GAIG;AACH,MAAM,MAAM,YAAY,GACpB;IACE,8DAA8D;IAC9D,OAAO,EAAE,MAAM,CAAA;IACf,QAAQ,CAAC,EAAE,SAAS,CAAA;IACpB,iCAAiC;IACjC,WAAW,EAAE,MAAM,CAAA;CACpB,GACD;IACE,yEAAyE;IACzE,QAAQ,EAAE,SAAS,MAAM,EAAE,CAAA;IAC3B,OAAO,CAAC,EAAE,SAAS,CAAA;IACnB,iCAAiC;IACjC,WAAW,EAAE,MAAM,CAAA;CACpB,CAAA;AAEL;;GAEG;AACH,qBAAa,eAAgB,SAAQ,QAAQ;IAC3C,YAAY,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,KAAK,CAAA;KAAE,EAGvD;CACF;AAED;;GAEG;AACH,qBAAa,kBAAmB,SAAQ,QAAQ;IAC9C,YAAY,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,KAAK,CAAA;KAAE,EAGvD;CACF;AAMD,6DAA6D;AAC7D,qBAAa,cAAc;IACzB,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAc;IACrC,yEAAyE;IACzE,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAmB;IAC/C;;;;OAIG;IACH,OAAO,CAAC,gBAAgB,CAAwB;IAEhD,YAAY,MAAM,EAAE,YAAY,EAW/B;IAED;;;;;;;;OAQG;IACG,gBAAgB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAkEtD;IAED,+EAA+E;IAC/E,gBAAgB,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAoBvC;IAED,6DAA6D;IACvD,SAAS,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,GAAE,gBAAqB,GAAG,OAAO,CAAC,WAAW,CAAC,CAiBtF;IAED;;;;OAIG;IACG,QAAQ,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,iBAAiB,GAAG,OAAO,CAAC,WAAW,CAAC,CAgDlF;IAED;;;;;;;;OAQG;IACG,aAAa,CACjB,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,iBAAiB,GAC1B,OAAO,CAAC;QACT,GAAG,EAAE,aAAa,CAAA;QAClB,KAAK,EAAE,MAAM,CAAA;QACb,KAAK,EAAE,KAAK,CAAC;YACX,OAAO,EAAE,MAAM,CAAA;YACf,IAAI,EAAE,MAAM,CAAA;YACZ,aAAa,EAAE,oBAAoB,EAAE,CAAA;YACrC,SAAS,EAAE,OAAO,CAAA;SACnB,CAAC,CAAA;KACH,CAAC,CAqDD;IAED;;;OAGG;YACW,SAAS;IA4DvB,mBAAmB;YACL,QAAQ;IAYtB,kBAAkB;YACJ,OAAO;CAWtB"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/parser/index.ts"],"names":[],"mappings":"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"}
@@ -10,6 +10,7 @@ import { AppError, isAppError, toError } from '../utils/errors.js';
10
10
  import { errorCode } from '../utils/type-guards.js';
11
11
  import { convertDocxDocumentToText, extractDocxCoreTitle } from './docx-parser.js';
12
12
  import { extractPdfPages } from './pdf-extract.js';
13
+ import { textSourceMap } from './text-source-map.js';
13
14
  import { extractDocxTitle, extractMarkdownTitle, extractPdfTitle, extractTxtTitle, } from './title-extractor.js';
14
15
  // ============================================
15
16
  // Supported Extensions
@@ -37,7 +38,10 @@ async function resolvePdfTitle(filePath, pages, hints, embedder) {
37
38
  }
38
39
  console.error(`Title extraction failed, falling back to filename: ${titleError}`);
39
40
  }
40
- return extractPdfTitle(metadataTitle, firstPageChunkText, fileName, page1FontHint).title;
41
+ return {
42
+ title: extractPdfTitle(metadataTitle, firstPageChunkText, fileName, page1FontHint).title,
43
+ embeddingTitle: extractPdfTitle(metadataTitle, undefined, fileName, page1FontHint).title,
44
+ };
41
45
  }
42
46
  /**
43
47
  * Validation error (equivalent to 400)
@@ -203,13 +207,23 @@ export class DocumentParser {
203
207
  const mupdf = await import('mupdf');
204
208
  doc = mupdf.Document.openDocument(buffer, 'application/pdf');
205
209
  const { pages, metadataTitle, page1FontHint } = await extractPdfPages(doc, embedder, 'preserve-whitespace');
206
- const text = pages
207
- .map((p) => p.text)
208
- .filter((t) => t.length > 0)
209
- .join('\n\n');
210
- const title = await resolvePdfTitle(filePath, pages, { metadataTitle, page1FontHint }, embedder);
210
+ let text = '';
211
+ const sourceMap = { headings: [], pages: [] };
212
+ for (const page of pages) {
213
+ if (!page.text) {
214
+ continue;
215
+ }
216
+ if (text) {
217
+ text += '\n\n';
218
+ }
219
+ const start = text.length;
220
+ text += page.text;
221
+ sourceMap.pages?.push({ start, end: text.length, page: page.pageNum });
222
+ sourceMap.headings.push(...page.headings.map((heading) => ({ ...heading, offset: start + heading.offset })));
223
+ }
224
+ const { title, embeddingTitle } = await resolvePdfTitle(filePath, pages, { metadataTitle, page1FontHint }, embedder);
211
225
  console.error(`Parsed PDF: ${filePath} (${text.length} characters, ${pages.length} pages)`);
212
- return { content: text, title };
226
+ return { content: text, title, embeddingTitle, sourceMap };
213
227
  }
214
228
  catch (error) {
215
229
  // A foreign domain error (an `EmbeddingError` raised while the parser
@@ -254,13 +268,14 @@ export class DocumentParser {
254
268
  const { pages: helperPages, metadataTitle, page1FontHint } = extracted;
255
269
  const pages = helperPages.map((page) => ({
256
270
  pageNum: page.pageNum,
271
+ headings: page.headings,
257
272
  text: page.text,
258
273
  textFragments: page.textFragments,
259
274
  stextJson: page.stextJson,
260
275
  }));
261
- const title = await resolvePdfTitle(filePath, helperPages, { metadataTitle, page1FontHint }, embedder);
276
+ const { title, embeddingTitle } = await resolvePdfTitle(filePath, helperPages, { metadataTitle, page1FontHint }, embedder);
262
277
  console.error(`Parsed PDF pages: ${filePath} (${pages.length} pages; caller owns doc disposal)`);
263
- return { doc, title, pages };
278
+ return { doc, title, embeddingTitle, pages };
264
279
  }
265
280
  catch (error) {
266
281
  // `doc` is undefined when `openDocument` itself threw — nothing to free.
@@ -325,6 +340,7 @@ export class DocumentParser {
325
340
  });
326
341
  return {
327
342
  content: body.content,
343
+ ...(body.sourceMap ? { sourceMap: body.sourceMap } : {}),
328
344
  title: titleResult.title,
329
345
  ...(body.atomicRanges.length === 0 ? {} : { atomicRanges: body.atomicRanges }),
330
346
  ...(imageAnchors.length === 0 ? {} : { imageAnchors }),
@@ -341,7 +357,7 @@ export class DocumentParser {
341
357
  const fileName = basename(filePath);
342
358
  const titleResult = extractTxtTitle(text, fileName);
343
359
  console.error(`Parsed TXT: ${filePath} (${text.length} characters)`);
344
- return { content: text, title: titleResult.title };
360
+ return { content: text, title: titleResult.title, sourceMap: textSourceMap(text, false) };
345
361
  }
346
362
  catch (error) {
347
363
  throw new FileOperationError(`Failed to parse TXT: ${filePath}`, { cause: toError(error) });
@@ -354,7 +370,7 @@ export class DocumentParser {
354
370
  const fileName = basename(filePath);
355
371
  const titleResult = extractMarkdownTitle(text, fileName);
356
372
  console.error(`Parsed MD: ${filePath} (${text.length} characters)`);
357
- return { content: text, title: titleResult.title };
373
+ return { content: text, title: titleResult.title, sourceMap: textSourceMap(text, true) };
358
374
  }
359
375
  catch (error) {
360
376
  throw new FileOperationError(`Failed to parse MD: ${filePath}`, { cause: toError(error) });
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/parser/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/parser/index.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,5 @@
1
1
  import type { Document as MupdfDocument } from 'mupdf';
2
+ import type { HeadingAnchor } from '../utils/source-context.js';
2
3
  import { type EmbedderInterface, type FilteredTextFragment } from './pdf-filter.js';
3
4
  interface StextBbox {
4
5
  x: number;
@@ -30,6 +31,7 @@ interface StextJson {
30
31
  * kept for the downstream visual detector.
31
32
  */
32
33
  interface ExtractedPage {
34
+ headings: HeadingAnchor[];
33
35
  pageNum: number;
34
36
  text: string;
35
37
  textFragments: FilteredTextFragment[];
@@ -1 +1 @@
1
- {"version":3,"file":"pdf-extract.d.ts","sourceRoot":"","sources":["../../src/parser/pdf-extract.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAE,QAAQ,IAAI,aAAa,EAAqB,MAAM,OAAO,CAAA;AAEzE,OAAO,EACL,KAAK,iBAAiB,EACtB,KAAK,oBAAoB,EAG1B,MAAM,iBAAiB,CAAA;AAExB,UAAU,SAAS;IACjB,CAAC,EAAE,MAAM,CAAA;IACT,CAAC,EAAE,MAAM,CAAA;IACT,CAAC,EAAE,MAAM,CAAA;IACT,CAAC,EAAE,MAAM,CAAA;CACV;AAED,kEAAkE;AAClE,UAAU,SAAS;IACjB,MAAM,EAAE,KAAK,CAAC;QACZ,IAAI,EAAE,MAAM,CAAA;QACZ,+EAA+E;QAC/E,IAAI,CAAC,EAAE,SAAS,CAAA;QAChB,KAAK,CAAC,EAAE,KAAK,CAAC;YACZ,IAAI,EAAE,MAAM,CAAA;YACZ,CAAC,EAAE,MAAM,CAAA;YACT,CAAC,EAAE,MAAM,CAAA;YACT,IAAI,CAAC,EAAE,SAAS,CAAA;YAChB,IAAI,EAAE;gBAAE,IAAI,EAAE,MAAM,CAAC;gBAAC,IAAI,CAAC,EAAE,MAAM,CAAC;gBAAC,MAAM,CAAC,EAAE,MAAM,CAAA;aAAE,CAAA;SACvD,CAAC,CAAA;KACH,CAAC,CAAA;CACH;AAED;;;GAGG;AACH,UAAU,aAAa;IACrB,OAAO,EAAE,MAAM,CAAA;IACf,IAAI,EAAE,MAAM,CAAA;IACZ,aAAa,EAAE,oBAAoB,EAAE,CAAA;IACrC,SAAS,EAAE,SAAS,CAAA;CACrB;AAED,4CAA4C;AAC5C,UAAU,YAAY;IACpB,KAAK,EAAE,aAAa,EAAE,CAAA;IACtB,aAAa,EAAE,MAAM,GAAG,SAAS,CAAA;IACjC,aAAa,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAE,GAAG,SAAS,CAAA;CAC9D;AAwFD,wBAAsB,eAAe,CACnC,GAAG,EAAE,aAAa,EAClB,QAAQ,EAAE,iBAAiB,EAC3B,YAAY,EAAE,MAAM,GACnB,OAAO,CAAC,YAAY,CAAC,CAgCvB"}
1
+ {"version":3,"file":"pdf-extract.d.ts","sourceRoot":"","sources":["../../src/parser/pdf-extract.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAE,QAAQ,IAAI,aAAa,EAAqB,MAAM,OAAO,CAAA;AACzE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAA;AAC/D,OAAO,EACL,KAAK,iBAAiB,EACtB,KAAK,oBAAoB,EAG1B,MAAM,iBAAiB,CAAA;AAGxB,UAAU,SAAS;IACjB,CAAC,EAAE,MAAM,CAAA;IACT,CAAC,EAAE,MAAM,CAAA;IACT,CAAC,EAAE,MAAM,CAAA;IACT,CAAC,EAAE,MAAM,CAAA;CACV;AAED,kEAAkE;AAClE,UAAU,SAAS;IACjB,MAAM,EAAE,KAAK,CAAC;QACZ,IAAI,EAAE,MAAM,CAAA;QACZ,+EAA+E;QAC/E,IAAI,CAAC,EAAE,SAAS,CAAA;QAChB,KAAK,CAAC,EAAE,KAAK,CAAC;YACZ,IAAI,EAAE,MAAM,CAAA;YACZ,CAAC,EAAE,MAAM,CAAA;YACT,CAAC,EAAE,MAAM,CAAA;YACT,IAAI,CAAC,EAAE,SAAS,CAAA;YAChB,IAAI,EAAE;gBAAE,IAAI,EAAE,MAAM,CAAC;gBAAC,IAAI,CAAC,EAAE,MAAM,CAAC;gBAAC,MAAM,CAAC,EAAE,MAAM,CAAA;aAAE,CAAA;SACvD,CAAC,CAAA;KACH,CAAC,CAAA;CACH;AAED;;;GAGG;AACH,UAAU,aAAa;IACrB,QAAQ,EAAE,aAAa,EAAE,CAAA;IACzB,OAAO,EAAE,MAAM,CAAA;IACf,IAAI,EAAE,MAAM,CAAA;IACZ,aAAa,EAAE,oBAAoB,EAAE,CAAA;IACrC,SAAS,EAAE,SAAS,CAAA;CACrB;AAED,4CAA4C;AAC5C,UAAU,YAAY;IACpB,KAAK,EAAE,aAAa,EAAE,CAAA;IACtB,aAAa,EAAE,MAAM,GAAG,SAAS,CAAA;IACjC,aAAa,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAE,GAAG,SAAS,CAAA;CAC9D;AAwFD,wBAAsB,eAAe,CACnC,GAAG,EAAE,aAAa,EAClB,QAAQ,EAAE,iBAAiB,EAC3B,YAAY,EAAE,MAAM,GACnB,OAAO,CAAC,YAAY,CAAC,CAkCvB"}
@@ -8,6 +8,7 @@
8
8
  // emits `block.type === 'image'` entries for the downstream
9
9
  // visual-candidate detector.
10
10
  import { filterPageBoundaryLayouts, } from './pdf-filter.js';
11
+ import { pdfHeadings } from './pdf-headings.js';
11
12
  /**
12
13
  * Per-page extraction shared by `parsePdf` and `parsePdfPages`, which differ
13
14
  * only in `stextOptions`: `parsePdfPages` adds `preserve-images` so mupdf
@@ -102,9 +103,11 @@ export async function extractPdfPages(doc, embedder, stextOptions) {
102
103
  }
103
104
  // Apply sentence-level header/footer filtering while retaining each survivor's layout data.
104
105
  const filteredPages = await filterPageBoundaryLayouts(pageDataList, embedder);
106
+ const headings = pdfHeadings(doc, pageDataList, filteredPages);
105
107
  const page1FontHint = largestFontTitleHint(pageDataList[0]?.items ?? []);
106
108
  const pages = pageDataList.map((p, idx) => ({
107
109
  pageNum: p.pageNum,
110
+ headings: headings[idx] ?? [],
108
111
  text: filteredPages[idx]?.text ?? '',
109
112
  textFragments: filteredPages[idx]?.textFragments ?? [],
110
113
  stextJson: stextJsonList[idx] ?? { blocks: [] },