@absolutejs/absolute 0.19.0-beta.602 → 0.19.0-beta.604

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 (37) hide show
  1. package/dist/ai/client/index.js +59 -5
  2. package/dist/ai/client/index.js.map +4 -4
  3. package/dist/ai/client/ui.js +59 -5
  4. package/dist/ai/client/ui.js.map +4 -4
  5. package/dist/ai/index.js +720 -80
  6. package/dist/ai/index.js.map +8 -8
  7. package/dist/ai/rag/quality.js +11 -1
  8. package/dist/ai/rag/quality.js.map +3 -3
  9. package/dist/ai/rag/ui.js +59 -5
  10. package/dist/ai/rag/ui.js.map +4 -4
  11. package/dist/ai-client/angular/ai/index.js +58 -4
  12. package/dist/ai-client/react/ai/index.js +58 -4
  13. package/dist/ai-client/vue/ai/index.js +58 -4
  14. package/dist/angular/ai/index.js +59 -5
  15. package/dist/angular/ai/index.js.map +4 -4
  16. package/dist/angular/index.js +2 -2
  17. package/dist/angular/index.js.map +1 -1
  18. package/dist/angular/server.js +2 -2
  19. package/dist/angular/server.js.map +1 -1
  20. package/dist/build.js +2 -2
  21. package/dist/build.js.map +1 -1
  22. package/dist/index.js +2 -2
  23. package/dist/index.js.map +1 -1
  24. package/dist/react/ai/index.js +59 -5
  25. package/dist/react/ai/index.js.map +4 -4
  26. package/dist/src/ai/rag/presentation.d.ts +6 -1
  27. package/dist/src/vue/ai/useRAG.d.ts +60 -0
  28. package/dist/src/vue/ai/useRAGChunkPreview.d.ts +20 -0
  29. package/dist/src/vue/ai/useRAGDocuments.d.ts +20 -0
  30. package/dist/src/vue/ai/useRAGIndexAdmin.d.ts +10 -0
  31. package/dist/src/vue/ai/useRAGSearch.d.ts +10 -0
  32. package/dist/svelte/ai/index.js +59 -5
  33. package/dist/svelte/ai/index.js.map +4 -4
  34. package/dist/types/ai.d.ts +42 -1
  35. package/dist/vue/ai/index.js +59 -5
  36. package/dist/vue/ai/index.js.map +4 -4
  37. package/package.json +53 -7
@@ -738,6 +738,10 @@ var buildContextLabel = (metadata) => {
738
738
  return from ? `Message from ${from}` : "Message evidence";
739
739
  }
740
740
  const page = getContextNumber(metadata.page) ?? getContextNumber(metadata.pageNumber) ?? (typeof metadata.pageIndex === "number" ? metadata.pageIndex + 1 : undefined);
741
+ const region = getContextNumber(metadata.regionNumber) ?? (typeof metadata.regionIndex === "number" ? metadata.regionIndex + 1 : undefined);
742
+ if (page && region) {
743
+ return `Page ${page} region ${region}`;
744
+ }
741
745
  if (page) {
742
746
  return `Page ${page}`;
743
747
  }
@@ -778,6 +782,10 @@ var buildLocatorLabel = (metadata, source, title) => {
778
782
  return;
779
783
  }
780
784
  const page = getContextNumber(metadata.page) ?? getContextNumber(metadata.pageNumber) ?? (typeof metadata.pageIndex === "number" ? metadata.pageIndex + 1 : undefined);
785
+ const region = getContextNumber(metadata.regionNumber) ?? (typeof metadata.regionIndex === "number" ? metadata.regionIndex + 1 : undefined);
786
+ if (page && region) {
787
+ return `Page ${page} · Region ${region}`;
788
+ }
781
789
  if (page) {
782
790
  return `Page ${page}`;
783
791
  }
@@ -830,9 +838,11 @@ var buildProvenanceLabel = (metadata) => {
830
838
  const transcriptSource = getContextString(metadata.transcriptSource);
831
839
  const pdfTextMode = getContextString(metadata.pdfTextMode);
832
840
  const ocrEngine = getContextString(metadata.ocrEngine);
841
+ const ocrConfidence = getContextNumber(metadata.ocrRegionConfidence) ?? getContextNumber(metadata.ocrConfidence);
833
842
  const labels = [
834
843
  pdfTextMode ? `PDF ${pdfTextMode}` : "",
835
844
  ocrEngine ? `OCR ${ocrEngine}` : "",
845
+ typeof ocrConfidence === "number" ? `Confidence ${ocrConfidence.toFixed(2)}` : "",
836
846
  mediaKind ? `Media ${mediaKind}` : "",
837
847
  transcriptSource ? `Transcript ${transcriptSource}` : "",
838
848
  threadTopic ? `Thread ${threadTopic}` : "",
@@ -1023,6 +1033,10 @@ var buildContextLabel2 = (metadata) => {
1023
1033
  return from ? `Message from ${from}` : "Message evidence";
1024
1034
  }
1025
1035
  const page = getContextNumber2(metadata.page) ?? getContextNumber2(metadata.pageNumber) ?? (typeof metadata.pageIndex === "number" ? metadata.pageIndex + 1 : undefined);
1036
+ const region = getContextNumber2(metadata.regionNumber) ?? (typeof metadata.regionIndex === "number" ? metadata.regionIndex + 1 : undefined);
1037
+ if (page && region) {
1038
+ return `Page ${page} region ${region}`;
1039
+ }
1026
1040
  if (page) {
1027
1041
  return `Page ${page}`;
1028
1042
  }
@@ -1053,6 +1067,10 @@ var buildLocatorLabel2 = (metadata, source, title) => {
1053
1067
  return;
1054
1068
  }
1055
1069
  const page = getContextNumber2(metadata.page) ?? getContextNumber2(metadata.pageNumber) ?? (typeof metadata.pageIndex === "number" ? metadata.pageIndex + 1 : undefined);
1070
+ const region = getContextNumber2(metadata.regionNumber) ?? (typeof metadata.regionIndex === "number" ? metadata.regionIndex + 1 : undefined);
1071
+ if (page && region) {
1072
+ return `Page ${page} · Region ${region}`;
1073
+ }
1056
1074
  if (page) {
1057
1075
  return `Page ${page}`;
1058
1076
  }
@@ -1095,9 +1113,11 @@ var buildProvenanceLabel2 = (metadata) => {
1095
1113
  const transcriptSource = getContextString2(metadata.transcriptSource);
1096
1114
  const pdfTextMode = getContextString2(metadata.pdfTextMode);
1097
1115
  const ocrEngine = getContextString2(metadata.ocrEngine);
1116
+ const ocrConfidence = getContextNumber2(metadata.ocrRegionConfidence) ?? getContextNumber2(metadata.ocrConfidence);
1098
1117
  const labels = [
1099
1118
  pdfTextMode ? `PDF ${pdfTextMode}` : "",
1100
1119
  ocrEngine ? `OCR ${ocrEngine}` : "",
1120
+ typeof ocrConfidence === "number" ? `Confidence ${ocrConfidence.toFixed(2)}` : "",
1101
1121
  mediaKind ? `Media ${mediaKind}` : "",
1102
1122
  transcriptSource ? `Transcript ${transcriptSource}` : "",
1103
1123
  threadTopic ? `Thread ${threadTopic}` : "",
@@ -1107,6 +1127,23 @@ var buildProvenanceLabel2 = (metadata) => {
1107
1127
  ].filter((value) => value.length > 0);
1108
1128
  return labels.length > 0 ? labels.join(" · ") : undefined;
1109
1129
  };
1130
+ var buildRAGSourceLabels = ({
1131
+ metadata,
1132
+ source,
1133
+ title
1134
+ }) => {
1135
+ const contextLabel = buildContextLabel2(metadata);
1136
+ const locatorLabel = buildLocatorLabel2(metadata, source, title);
1137
+ const provenanceLabel = buildProvenanceLabel2(metadata);
1138
+ if (!contextLabel && !locatorLabel && !provenanceLabel) {
1139
+ return;
1140
+ }
1141
+ return {
1142
+ contextLabel,
1143
+ locatorLabel,
1144
+ provenanceLabel
1145
+ };
1146
+ };
1110
1147
  var buildExcerpt2 = (text, maxLength = 160) => {
1111
1148
  const normalized = text.replaceAll(/\s+/g, " ").trim();
1112
1149
  if (normalized.length <= maxLength) {
@@ -1148,13 +1185,13 @@ var buildRAGSourceSummaries = (sources) => {
1148
1185
  citationNumbers: groupCitations.map((citation) => citationReferenceMap[citation.chunkId] ?? 0),
1149
1186
  citations: groupCitations,
1150
1187
  chunkIds: group.chunks.map((chunk) => chunk.chunkId),
1151
- contextLabel: buildContextLabel2(leadChunk?.metadata),
1188
+ contextLabel: leadChunk?.labels?.contextLabel ?? buildContextLabel2(leadChunk?.metadata),
1152
1189
  count: group.count,
1153
1190
  excerpt: buildExcerpt2(leadChunk?.text ?? ""),
1154
1191
  key: group.key,
1155
1192
  label: group.label,
1156
- locatorLabel: buildLocatorLabel2(leadChunk?.metadata, leadChunk?.source, leadChunk?.title),
1157
- provenanceLabel: buildProvenanceLabel2(leadChunk?.metadata),
1193
+ locatorLabel: leadChunk?.labels?.locatorLabel ?? buildLocatorLabel2(leadChunk?.metadata, leadChunk?.source, leadChunk?.title),
1194
+ provenanceLabel: leadChunk?.labels?.provenanceLabel ?? buildProvenanceLabel2(leadChunk?.metadata),
1158
1195
  source: group.source,
1159
1196
  title: group.title
1160
1197
  };
@@ -1278,6 +1315,11 @@ var buildSourceGroup = (source, key) => ({
1278
1315
  count: 1,
1279
1316
  key,
1280
1317
  label: buildSourceLabel2(source),
1318
+ labels: source.labels ?? buildRAGSourceLabels({
1319
+ metadata: source.metadata,
1320
+ source: source.source,
1321
+ title: source.title
1322
+ }),
1281
1323
  source: source.source,
1282
1324
  title: source.title
1283
1325
  });
@@ -1288,7 +1330,19 @@ var updateSourceGroup = (groups, source) => {
1288
1330
  groups.set(key, buildSourceGroup(source, key));
1289
1331
  return;
1290
1332
  }
1291
- existing.bestScore = Math.max(existing.bestScore, source.score);
1333
+ if (source.score > existing.bestScore) {
1334
+ existing.bestScore = source.score;
1335
+ existing.label = buildSourceLabel2(source);
1336
+ existing.labels = source.labels ?? buildRAGSourceLabels({
1337
+ metadata: source.metadata,
1338
+ source: source.source,
1339
+ title: source.title
1340
+ });
1341
+ existing.source = source.source;
1342
+ existing.title = source.title;
1343
+ } else {
1344
+ existing.bestScore = Math.max(existing.bestScore, source.score);
1345
+ }
1292
1346
  existing.count += 1;
1293
1347
  existing.chunks.push(source);
1294
1348
  };
@@ -698,6 +698,10 @@ var buildContextLabel = (metadata) => {
698
698
  return from ? `Message from ${from}` : "Message evidence";
699
699
  }
700
700
  const page = getContextNumber(metadata.page) ?? getContextNumber(metadata.pageNumber) ?? (typeof metadata.pageIndex === "number" ? metadata.pageIndex + 1 : undefined);
701
+ const region = getContextNumber(metadata.regionNumber) ?? (typeof metadata.regionIndex === "number" ? metadata.regionIndex + 1 : undefined);
702
+ if (page && region) {
703
+ return `Page ${page} region ${region}`;
704
+ }
701
705
  if (page) {
702
706
  return `Page ${page}`;
703
707
  }
@@ -738,6 +742,10 @@ var buildLocatorLabel = (metadata, source, title) => {
738
742
  return;
739
743
  }
740
744
  const page = getContextNumber(metadata.page) ?? getContextNumber(metadata.pageNumber) ?? (typeof metadata.pageIndex === "number" ? metadata.pageIndex + 1 : undefined);
745
+ const region = getContextNumber(metadata.regionNumber) ?? (typeof metadata.regionIndex === "number" ? metadata.regionIndex + 1 : undefined);
746
+ if (page && region) {
747
+ return `Page ${page} · Region ${region}`;
748
+ }
741
749
  if (page) {
742
750
  return `Page ${page}`;
743
751
  }
@@ -790,9 +798,11 @@ var buildProvenanceLabel = (metadata) => {
790
798
  const transcriptSource = getContextString(metadata.transcriptSource);
791
799
  const pdfTextMode = getContextString(metadata.pdfTextMode);
792
800
  const ocrEngine = getContextString(metadata.ocrEngine);
801
+ const ocrConfidence = getContextNumber(metadata.ocrRegionConfidence) ?? getContextNumber(metadata.ocrConfidence);
793
802
  const labels = [
794
803
  pdfTextMode ? `PDF ${pdfTextMode}` : "",
795
804
  ocrEngine ? `OCR ${ocrEngine}` : "",
805
+ typeof ocrConfidence === "number" ? `Confidence ${ocrConfidence.toFixed(2)}` : "",
796
806
  mediaKind ? `Media ${mediaKind}` : "",
797
807
  transcriptSource ? `Transcript ${transcriptSource}` : "",
798
808
  threadTopic ? `Thread ${threadTopic}` : "",
@@ -983,6 +993,10 @@ var buildContextLabel2 = (metadata) => {
983
993
  return from ? `Message from ${from}` : "Message evidence";
984
994
  }
985
995
  const page = getContextNumber2(metadata.page) ?? getContextNumber2(metadata.pageNumber) ?? (typeof metadata.pageIndex === "number" ? metadata.pageIndex + 1 : undefined);
996
+ const region = getContextNumber2(metadata.regionNumber) ?? (typeof metadata.regionIndex === "number" ? metadata.regionIndex + 1 : undefined);
997
+ if (page && region) {
998
+ return `Page ${page} region ${region}`;
999
+ }
986
1000
  if (page) {
987
1001
  return `Page ${page}`;
988
1002
  }
@@ -1013,6 +1027,10 @@ var buildLocatorLabel2 = (metadata, source, title) => {
1013
1027
  return;
1014
1028
  }
1015
1029
  const page = getContextNumber2(metadata.page) ?? getContextNumber2(metadata.pageNumber) ?? (typeof metadata.pageIndex === "number" ? metadata.pageIndex + 1 : undefined);
1030
+ const region = getContextNumber2(metadata.regionNumber) ?? (typeof metadata.regionIndex === "number" ? metadata.regionIndex + 1 : undefined);
1031
+ if (page && region) {
1032
+ return `Page ${page} · Region ${region}`;
1033
+ }
1016
1034
  if (page) {
1017
1035
  return `Page ${page}`;
1018
1036
  }
@@ -1055,9 +1073,11 @@ var buildProvenanceLabel2 = (metadata) => {
1055
1073
  const transcriptSource = getContextString2(metadata.transcriptSource);
1056
1074
  const pdfTextMode = getContextString2(metadata.pdfTextMode);
1057
1075
  const ocrEngine = getContextString2(metadata.ocrEngine);
1076
+ const ocrConfidence = getContextNumber2(metadata.ocrRegionConfidence) ?? getContextNumber2(metadata.ocrConfidence);
1058
1077
  const labels = [
1059
1078
  pdfTextMode ? `PDF ${pdfTextMode}` : "",
1060
1079
  ocrEngine ? `OCR ${ocrEngine}` : "",
1080
+ typeof ocrConfidence === "number" ? `Confidence ${ocrConfidence.toFixed(2)}` : "",
1061
1081
  mediaKind ? `Media ${mediaKind}` : "",
1062
1082
  transcriptSource ? `Transcript ${transcriptSource}` : "",
1063
1083
  threadTopic ? `Thread ${threadTopic}` : "",
@@ -1067,6 +1087,23 @@ var buildProvenanceLabel2 = (metadata) => {
1067
1087
  ].filter((value) => value.length > 0);
1068
1088
  return labels.length > 0 ? labels.join(" · ") : undefined;
1069
1089
  };
1090
+ var buildRAGSourceLabels = ({
1091
+ metadata,
1092
+ source,
1093
+ title
1094
+ }) => {
1095
+ const contextLabel = buildContextLabel2(metadata);
1096
+ const locatorLabel = buildLocatorLabel2(metadata, source, title);
1097
+ const provenanceLabel = buildProvenanceLabel2(metadata);
1098
+ if (!contextLabel && !locatorLabel && !provenanceLabel) {
1099
+ return;
1100
+ }
1101
+ return {
1102
+ contextLabel,
1103
+ locatorLabel,
1104
+ provenanceLabel
1105
+ };
1106
+ };
1070
1107
  var buildExcerpt2 = (text, maxLength = 160) => {
1071
1108
  const normalized = text.replaceAll(/\s+/g, " ").trim();
1072
1109
  if (normalized.length <= maxLength) {
@@ -1108,13 +1145,13 @@ var buildRAGSourceSummaries = (sources) => {
1108
1145
  citationNumbers: groupCitations.map((citation) => citationReferenceMap[citation.chunkId] ?? 0),
1109
1146
  citations: groupCitations,
1110
1147
  chunkIds: group.chunks.map((chunk) => chunk.chunkId),
1111
- contextLabel: buildContextLabel2(leadChunk?.metadata),
1148
+ contextLabel: leadChunk?.labels?.contextLabel ?? buildContextLabel2(leadChunk?.metadata),
1112
1149
  count: group.count,
1113
1150
  excerpt: buildExcerpt2(leadChunk?.text ?? ""),
1114
1151
  key: group.key,
1115
1152
  label: group.label,
1116
- locatorLabel: buildLocatorLabel2(leadChunk?.metadata, leadChunk?.source, leadChunk?.title),
1117
- provenanceLabel: buildProvenanceLabel2(leadChunk?.metadata),
1153
+ locatorLabel: leadChunk?.labels?.locatorLabel ?? buildLocatorLabel2(leadChunk?.metadata, leadChunk?.source, leadChunk?.title),
1154
+ provenanceLabel: leadChunk?.labels?.provenanceLabel ?? buildProvenanceLabel2(leadChunk?.metadata),
1118
1155
  source: group.source,
1119
1156
  title: group.title
1120
1157
  };
@@ -1238,6 +1275,11 @@ var buildSourceGroup = (source, key) => ({
1238
1275
  count: 1,
1239
1276
  key,
1240
1277
  label: buildSourceLabel2(source),
1278
+ labels: source.labels ?? buildRAGSourceLabels({
1279
+ metadata: source.metadata,
1280
+ source: source.source,
1281
+ title: source.title
1282
+ }),
1241
1283
  source: source.source,
1242
1284
  title: source.title
1243
1285
  });
@@ -1248,7 +1290,19 @@ var updateSourceGroup = (groups, source) => {
1248
1290
  groups.set(key, buildSourceGroup(source, key));
1249
1291
  return;
1250
1292
  }
1251
- existing.bestScore = Math.max(existing.bestScore, source.score);
1293
+ if (source.score > existing.bestScore) {
1294
+ existing.bestScore = source.score;
1295
+ existing.label = buildSourceLabel2(source);
1296
+ existing.labels = source.labels ?? buildRAGSourceLabels({
1297
+ metadata: source.metadata,
1298
+ source: source.source,
1299
+ title: source.title
1300
+ });
1301
+ existing.source = source.source;
1302
+ existing.title = source.title;
1303
+ } else {
1304
+ existing.bestScore = Math.max(existing.bestScore, source.score);
1305
+ }
1252
1306
  existing.count += 1;
1253
1307
  existing.chunks.push(source);
1254
1308
  };
@@ -1783,6 +1783,10 @@ var buildContextLabel = (metadata) => {
1783
1783
  return from ? `Message from ${from}` : "Message evidence";
1784
1784
  }
1785
1785
  const page = getContextNumber(metadata.page) ?? getContextNumber(metadata.pageNumber) ?? (typeof metadata.pageIndex === "number" ? metadata.pageIndex + 1 : undefined);
1786
+ const region = getContextNumber(metadata.regionNumber) ?? (typeof metadata.regionIndex === "number" ? metadata.regionIndex + 1 : undefined);
1787
+ if (page && region) {
1788
+ return `Page ${page} region ${region}`;
1789
+ }
1786
1790
  if (page) {
1787
1791
  return `Page ${page}`;
1788
1792
  }
@@ -1823,6 +1827,10 @@ var buildLocatorLabel = (metadata, source, title) => {
1823
1827
  return;
1824
1828
  }
1825
1829
  const page = getContextNumber(metadata.page) ?? getContextNumber(metadata.pageNumber) ?? (typeof metadata.pageIndex === "number" ? metadata.pageIndex + 1 : undefined);
1830
+ const region = getContextNumber(metadata.regionNumber) ?? (typeof metadata.regionIndex === "number" ? metadata.regionIndex + 1 : undefined);
1831
+ if (page && region) {
1832
+ return `Page ${page} · Region ${region}`;
1833
+ }
1826
1834
  if (page) {
1827
1835
  return `Page ${page}`;
1828
1836
  }
@@ -1875,9 +1883,11 @@ var buildProvenanceLabel = (metadata) => {
1875
1883
  const transcriptSource = getContextString(metadata.transcriptSource);
1876
1884
  const pdfTextMode = getContextString(metadata.pdfTextMode);
1877
1885
  const ocrEngine = getContextString(metadata.ocrEngine);
1886
+ const ocrConfidence = getContextNumber(metadata.ocrRegionConfidence) ?? getContextNumber(metadata.ocrConfidence);
1878
1887
  const labels = [
1879
1888
  pdfTextMode ? `PDF ${pdfTextMode}` : "",
1880
1889
  ocrEngine ? `OCR ${ocrEngine}` : "",
1890
+ typeof ocrConfidence === "number" ? `Confidence ${ocrConfidence.toFixed(2)}` : "",
1881
1891
  mediaKind ? `Media ${mediaKind}` : "",
1882
1892
  transcriptSource ? `Transcript ${transcriptSource}` : "",
1883
1893
  threadTopic ? `Thread ${threadTopic}` : "",
@@ -2068,6 +2078,10 @@ var buildContextLabel2 = (metadata) => {
2068
2078
  return from ? `Message from ${from}` : "Message evidence";
2069
2079
  }
2070
2080
  const page = getContextNumber2(metadata.page) ?? getContextNumber2(metadata.pageNumber) ?? (typeof metadata.pageIndex === "number" ? metadata.pageIndex + 1 : undefined);
2081
+ const region = getContextNumber2(metadata.regionNumber) ?? (typeof metadata.regionIndex === "number" ? metadata.regionIndex + 1 : undefined);
2082
+ if (page && region) {
2083
+ return `Page ${page} region ${region}`;
2084
+ }
2071
2085
  if (page) {
2072
2086
  return `Page ${page}`;
2073
2087
  }
@@ -2098,6 +2112,10 @@ var buildLocatorLabel2 = (metadata, source, title) => {
2098
2112
  return;
2099
2113
  }
2100
2114
  const page = getContextNumber2(metadata.page) ?? getContextNumber2(metadata.pageNumber) ?? (typeof metadata.pageIndex === "number" ? metadata.pageIndex + 1 : undefined);
2115
+ const region = getContextNumber2(metadata.regionNumber) ?? (typeof metadata.regionIndex === "number" ? metadata.regionIndex + 1 : undefined);
2116
+ if (page && region) {
2117
+ return `Page ${page} · Region ${region}`;
2118
+ }
2101
2119
  if (page) {
2102
2120
  return `Page ${page}`;
2103
2121
  }
@@ -2140,9 +2158,11 @@ var buildProvenanceLabel2 = (metadata) => {
2140
2158
  const transcriptSource = getContextString2(metadata.transcriptSource);
2141
2159
  const pdfTextMode = getContextString2(metadata.pdfTextMode);
2142
2160
  const ocrEngine = getContextString2(metadata.ocrEngine);
2161
+ const ocrConfidence = getContextNumber2(metadata.ocrRegionConfidence) ?? getContextNumber2(metadata.ocrConfidence);
2143
2162
  const labels = [
2144
2163
  pdfTextMode ? `PDF ${pdfTextMode}` : "",
2145
2164
  ocrEngine ? `OCR ${ocrEngine}` : "",
2165
+ typeof ocrConfidence === "number" ? `Confidence ${ocrConfidence.toFixed(2)}` : "",
2146
2166
  mediaKind ? `Media ${mediaKind}` : "",
2147
2167
  transcriptSource ? `Transcript ${transcriptSource}` : "",
2148
2168
  threadTopic ? `Thread ${threadTopic}` : "",
@@ -2152,6 +2172,23 @@ var buildProvenanceLabel2 = (metadata) => {
2152
2172
  ].filter((value) => value.length > 0);
2153
2173
  return labels.length > 0 ? labels.join(" · ") : undefined;
2154
2174
  };
2175
+ var buildRAGSourceLabels = ({
2176
+ metadata,
2177
+ source,
2178
+ title
2179
+ }) => {
2180
+ const contextLabel = buildContextLabel2(metadata);
2181
+ const locatorLabel = buildLocatorLabel2(metadata, source, title);
2182
+ const provenanceLabel = buildProvenanceLabel2(metadata);
2183
+ if (!contextLabel && !locatorLabel && !provenanceLabel) {
2184
+ return;
2185
+ }
2186
+ return {
2187
+ contextLabel,
2188
+ locatorLabel,
2189
+ provenanceLabel
2190
+ };
2191
+ };
2155
2192
  var buildExcerpt2 = (text, maxLength = 160) => {
2156
2193
  const normalized = text.replaceAll(/\s+/g, " ").trim();
2157
2194
  if (normalized.length <= maxLength) {
@@ -2193,13 +2230,13 @@ var buildRAGSourceSummaries = (sources) => {
2193
2230
  citationNumbers: groupCitations.map((citation) => citationReferenceMap[citation.chunkId] ?? 0),
2194
2231
  citations: groupCitations,
2195
2232
  chunkIds: group.chunks.map((chunk) => chunk.chunkId),
2196
- contextLabel: buildContextLabel2(leadChunk?.metadata),
2233
+ contextLabel: leadChunk?.labels?.contextLabel ?? buildContextLabel2(leadChunk?.metadata),
2197
2234
  count: group.count,
2198
2235
  excerpt: buildExcerpt2(leadChunk?.text ?? ""),
2199
2236
  key: group.key,
2200
2237
  label: group.label,
2201
- locatorLabel: buildLocatorLabel2(leadChunk?.metadata, leadChunk?.source, leadChunk?.title),
2202
- provenanceLabel: buildProvenanceLabel2(leadChunk?.metadata),
2238
+ locatorLabel: leadChunk?.labels?.locatorLabel ?? buildLocatorLabel2(leadChunk?.metadata, leadChunk?.source, leadChunk?.title),
2239
+ provenanceLabel: leadChunk?.labels?.provenanceLabel ?? buildProvenanceLabel2(leadChunk?.metadata),
2203
2240
  source: group.source,
2204
2241
  title: group.title
2205
2242
  };
@@ -2323,6 +2360,11 @@ var buildSourceGroup = (source, key) => ({
2323
2360
  count: 1,
2324
2361
  key,
2325
2362
  label: buildSourceLabel2(source),
2363
+ labels: source.labels ?? buildRAGSourceLabels({
2364
+ metadata: source.metadata,
2365
+ source: source.source,
2366
+ title: source.title
2367
+ }),
2326
2368
  source: source.source,
2327
2369
  title: source.title
2328
2370
  });
@@ -2333,7 +2375,19 @@ var updateSourceGroup = (groups, source) => {
2333
2375
  groups.set(key, buildSourceGroup(source, key));
2334
2376
  return;
2335
2377
  }
2336
- existing.bestScore = Math.max(existing.bestScore, source.score);
2378
+ if (source.score > existing.bestScore) {
2379
+ existing.bestScore = source.score;
2380
+ existing.label = buildSourceLabel2(source);
2381
+ existing.labels = source.labels ?? buildRAGSourceLabels({
2382
+ metadata: source.metadata,
2383
+ source: source.source,
2384
+ title: source.title
2385
+ });
2386
+ existing.source = source.source;
2387
+ existing.title = source.title;
2388
+ } else {
2389
+ existing.bestScore = Math.max(existing.bestScore, source.score);
2390
+ }
2337
2391
  existing.count += 1;
2338
2392
  existing.chunks.push(source);
2339
2393
  };
@@ -883,6 +883,10 @@ var buildContextLabel = (metadata) => {
883
883
  return from ? `Message from ${from}` : "Message evidence";
884
884
  }
885
885
  const page = getContextNumber(metadata.page) ?? getContextNumber(metadata.pageNumber) ?? (typeof metadata.pageIndex === "number" ? metadata.pageIndex + 1 : undefined);
886
+ const region = getContextNumber(metadata.regionNumber) ?? (typeof metadata.regionIndex === "number" ? metadata.regionIndex + 1 : undefined);
887
+ if (page && region) {
888
+ return `Page ${page} region ${region}`;
889
+ }
886
890
  if (page) {
887
891
  return `Page ${page}`;
888
892
  }
@@ -923,6 +927,10 @@ var buildLocatorLabel = (metadata, source, title) => {
923
927
  return;
924
928
  }
925
929
  const page = getContextNumber(metadata.page) ?? getContextNumber(metadata.pageNumber) ?? (typeof metadata.pageIndex === "number" ? metadata.pageIndex + 1 : undefined);
930
+ const region = getContextNumber(metadata.regionNumber) ?? (typeof metadata.regionIndex === "number" ? metadata.regionIndex + 1 : undefined);
931
+ if (page && region) {
932
+ return `Page ${page} \xB7 Region ${region}`;
933
+ }
926
934
  if (page) {
927
935
  return `Page ${page}`;
928
936
  }
@@ -975,9 +983,11 @@ var buildProvenanceLabel = (metadata) => {
975
983
  const transcriptSource = getContextString(metadata.transcriptSource);
976
984
  const pdfTextMode = getContextString(metadata.pdfTextMode);
977
985
  const ocrEngine = getContextString(metadata.ocrEngine);
986
+ const ocrConfidence = getContextNumber(metadata.ocrRegionConfidence) ?? getContextNumber(metadata.ocrConfidence);
978
987
  const labels = [
979
988
  pdfTextMode ? `PDF ${pdfTextMode}` : "",
980
989
  ocrEngine ? `OCR ${ocrEngine}` : "",
990
+ typeof ocrConfidence === "number" ? `Confidence ${ocrConfidence.toFixed(2)}` : "",
981
991
  mediaKind ? `Media ${mediaKind}` : "",
982
992
  transcriptSource ? `Transcript ${transcriptSource}` : "",
983
993
  threadTopic ? `Thread ${threadTopic}` : "",
@@ -1573,6 +1583,10 @@ var buildContextLabel2 = (metadata) => {
1573
1583
  return from ? `Message from ${from}` : "Message evidence";
1574
1584
  }
1575
1585
  const page = getContextNumber2(metadata.page) ?? getContextNumber2(metadata.pageNumber) ?? (typeof metadata.pageIndex === "number" ? metadata.pageIndex + 1 : undefined);
1586
+ const region = getContextNumber2(metadata.regionNumber) ?? (typeof metadata.regionIndex === "number" ? metadata.regionIndex + 1 : undefined);
1587
+ if (page && region) {
1588
+ return `Page ${page} region ${region}`;
1589
+ }
1576
1590
  if (page) {
1577
1591
  return `Page ${page}`;
1578
1592
  }
@@ -1603,6 +1617,10 @@ var buildLocatorLabel2 = (metadata, source, title) => {
1603
1617
  return;
1604
1618
  }
1605
1619
  const page = getContextNumber2(metadata.page) ?? getContextNumber2(metadata.pageNumber) ?? (typeof metadata.pageIndex === "number" ? metadata.pageIndex + 1 : undefined);
1620
+ const region = getContextNumber2(metadata.regionNumber) ?? (typeof metadata.regionIndex === "number" ? metadata.regionIndex + 1 : undefined);
1621
+ if (page && region) {
1622
+ return `Page ${page} \xB7 Region ${region}`;
1623
+ }
1606
1624
  if (page) {
1607
1625
  return `Page ${page}`;
1608
1626
  }
@@ -1645,9 +1663,11 @@ var buildProvenanceLabel2 = (metadata) => {
1645
1663
  const transcriptSource = getContextString2(metadata.transcriptSource);
1646
1664
  const pdfTextMode = getContextString2(metadata.pdfTextMode);
1647
1665
  const ocrEngine = getContextString2(metadata.ocrEngine);
1666
+ const ocrConfidence = getContextNumber2(metadata.ocrRegionConfidence) ?? getContextNumber2(metadata.ocrConfidence);
1648
1667
  const labels = [
1649
1668
  pdfTextMode ? `PDF ${pdfTextMode}` : "",
1650
1669
  ocrEngine ? `OCR ${ocrEngine}` : "",
1670
+ typeof ocrConfidence === "number" ? `Confidence ${ocrConfidence.toFixed(2)}` : "",
1651
1671
  mediaKind ? `Media ${mediaKind}` : "",
1652
1672
  transcriptSource ? `Transcript ${transcriptSource}` : "",
1653
1673
  threadTopic ? `Thread ${threadTopic}` : "",
@@ -1657,6 +1677,23 @@ var buildProvenanceLabel2 = (metadata) => {
1657
1677
  ].filter((value) => value.length > 0);
1658
1678
  return labels.length > 0 ? labels.join(" \xB7 ") : undefined;
1659
1679
  };
1680
+ var buildRAGSourceLabels = ({
1681
+ metadata,
1682
+ source,
1683
+ title
1684
+ }) => {
1685
+ const contextLabel = buildContextLabel2(metadata);
1686
+ const locatorLabel = buildLocatorLabel2(metadata, source, title);
1687
+ const provenanceLabel = buildProvenanceLabel2(metadata);
1688
+ if (!contextLabel && !locatorLabel && !provenanceLabel) {
1689
+ return;
1690
+ }
1691
+ return {
1692
+ contextLabel,
1693
+ locatorLabel,
1694
+ provenanceLabel
1695
+ };
1696
+ };
1660
1697
  var buildExcerpt2 = (text, maxLength = 160) => {
1661
1698
  const normalized = text.replaceAll(/\s+/g, " ").trim();
1662
1699
  if (normalized.length <= maxLength) {
@@ -1698,13 +1735,13 @@ var buildRAGSourceSummaries = (sources) => {
1698
1735
  citationNumbers: groupCitations.map((citation) => citationReferenceMap[citation.chunkId] ?? 0),
1699
1736
  citations: groupCitations,
1700
1737
  chunkIds: group.chunks.map((chunk) => chunk.chunkId),
1701
- contextLabel: buildContextLabel2(leadChunk?.metadata),
1738
+ contextLabel: leadChunk?.labels?.contextLabel ?? buildContextLabel2(leadChunk?.metadata),
1702
1739
  count: group.count,
1703
1740
  excerpt: buildExcerpt2(leadChunk?.text ?? ""),
1704
1741
  key: group.key,
1705
1742
  label: group.label,
1706
- locatorLabel: buildLocatorLabel2(leadChunk?.metadata, leadChunk?.source, leadChunk?.title),
1707
- provenanceLabel: buildProvenanceLabel2(leadChunk?.metadata),
1743
+ locatorLabel: leadChunk?.labels?.locatorLabel ?? buildLocatorLabel2(leadChunk?.metadata, leadChunk?.source, leadChunk?.title),
1744
+ provenanceLabel: leadChunk?.labels?.provenanceLabel ?? buildProvenanceLabel2(leadChunk?.metadata),
1708
1745
  source: group.source,
1709
1746
  title: group.title
1710
1747
  };
@@ -1828,6 +1865,11 @@ var buildSourceGroup = (source, key) => ({
1828
1865
  count: 1,
1829
1866
  key,
1830
1867
  label: buildSourceLabel2(source),
1868
+ labels: source.labels ?? buildRAGSourceLabels({
1869
+ metadata: source.metadata,
1870
+ source: source.source,
1871
+ title: source.title
1872
+ }),
1831
1873
  source: source.source,
1832
1874
  title: source.title
1833
1875
  });
@@ -1838,7 +1880,19 @@ var updateSourceGroup = (groups, source) => {
1838
1880
  groups.set(key, buildSourceGroup(source, key));
1839
1881
  return;
1840
1882
  }
1841
- existing.bestScore = Math.max(existing.bestScore, source.score);
1883
+ if (source.score > existing.bestScore) {
1884
+ existing.bestScore = source.score;
1885
+ existing.label = buildSourceLabel2(source);
1886
+ existing.labels = source.labels ?? buildRAGSourceLabels({
1887
+ metadata: source.metadata,
1888
+ source: source.source,
1889
+ title: source.title
1890
+ });
1891
+ existing.source = source.source;
1892
+ existing.title = source.title;
1893
+ } else {
1894
+ existing.bestScore = Math.max(existing.bestScore, source.score);
1895
+ }
1842
1896
  existing.count += 1;
1843
1897
  existing.chunks.push(source);
1844
1898
  };
@@ -3848,5 +3902,5 @@ export {
3848
3902
  AIStreamService
3849
3903
  };
3850
3904
 
3851
- //# debugId=EC6F974D3E81C60A64756E2164756E21
3905
+ //# debugId=3F2480BFA9734C4564756E2164756E21
3852
3906
  //# sourceMappingURL=index.js.map