@cesarandreslopez/occ 0.8.6 → 0.8.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (74) hide show
  1. package/README.md +91 -11
  2. package/dist/src/code/build.d.ts +23 -0
  3. package/dist/src/code/build.js +178 -3
  4. package/dist/src/code/build.js.map +1 -1
  5. package/dist/src/code/chunk.d.ts +6 -4
  6. package/dist/src/code/chunk.js +44 -28
  7. package/dist/src/code/chunk.js.map +1 -1
  8. package/dist/src/code/index-io.d.ts +2 -1
  9. package/dist/src/code/index-io.js +2 -0
  10. package/dist/src/code/index-io.js.map +1 -1
  11. package/dist/src/code/isolated-runner.d.ts +1 -0
  12. package/dist/src/code/isolated-runner.js +38 -0
  13. package/dist/src/code/isolated-runner.js.map +1 -0
  14. package/dist/src/code/isolated.d.ts +9 -0
  15. package/dist/src/code/isolated.js +102 -0
  16. package/dist/src/code/isolated.js.map +1 -0
  17. package/dist/src/code/languages.d.ts +5 -0
  18. package/dist/src/code/languages.js +99 -5
  19. package/dist/src/code/languages.js.map +1 -1
  20. package/dist/src/code/parsers.js +115 -13
  21. package/dist/src/code/parsers.js.map +1 -1
  22. package/dist/src/code/preview.d.ts +34 -0
  23. package/dist/src/code/preview.js +90 -0
  24. package/dist/src/code/preview.js.map +1 -0
  25. package/dist/src/code/query.d.ts +40 -1
  26. package/dist/src/code/query.js +206 -8
  27. package/dist/src/code/query.js.map +1 -1
  28. package/dist/src/code/session.d.ts +5 -5
  29. package/dist/src/code/session.js +7 -1
  30. package/dist/src/code/session.js.map +1 -1
  31. package/dist/src/code/slim.d.ts +257 -0
  32. package/dist/src/code/slim.js +50 -0
  33. package/dist/src/code/slim.js.map +1 -0
  34. package/dist/src/code/store.d.ts +10 -0
  35. package/dist/src/code/store.js +20 -0
  36. package/dist/src/code/store.js.map +1 -1
  37. package/dist/src/code/types.d.ts +117 -0
  38. package/dist/src/code/types.js +53 -0
  39. package/dist/src/code/types.js.map +1 -1
  40. package/dist/src/doc/chunk.d.ts +22 -0
  41. package/dist/src/doc/chunk.js +169 -0
  42. package/dist/src/doc/chunk.js.map +1 -0
  43. package/dist/src/doc/discover.d.ts +19 -3
  44. package/dist/src/doc/discover.js +35 -10
  45. package/dist/src/doc/discover.js.map +1 -1
  46. package/dist/src/errors.d.ts +6 -0
  47. package/dist/src/errors.js +15 -0
  48. package/dist/src/errors.js.map +1 -0
  49. package/dist/src/health.d.ts +12 -0
  50. package/dist/src/health.js +38 -0
  51. package/dist/src/health.js.map +1 -0
  52. package/dist/src/index.d.ts +47 -6
  53. package/dist/src/index.js +32 -1
  54. package/dist/src/index.js.map +1 -1
  55. package/dist/src/markdown/convert.js +17 -0
  56. package/dist/src/markdown/convert.js.map +1 -1
  57. package/dist/src/progress-event.d.ts +8 -1
  58. package/dist/src/utils.d.ts +1 -0
  59. package/dist/src/utils.js +16 -1
  60. package/dist/src/utils.js.map +1 -1
  61. package/dist/src/workspace/bundle.d.ts +67 -0
  62. package/dist/src/workspace/bundle.js +296 -0
  63. package/dist/src/workspace/bundle.js.map +1 -0
  64. package/dist/src/workspace/describe.js +132 -2
  65. package/dist/src/workspace/describe.js.map +1 -1
  66. package/dist/src/workspace/documents.d.ts +1 -0
  67. package/dist/src/workspace/documents.js +13 -18
  68. package/dist/src/workspace/documents.js.map +1 -1
  69. package/dist/src/workspace/prepare.js +7 -3
  70. package/dist/src/workspace/prepare.js.map +1 -1
  71. package/dist/src/workspace/types.d.ts +40 -2
  72. package/dist/src/workspace/types.js +16 -0
  73. package/dist/src/workspace/types.js.map +1 -1
  74. package/package.json +58 -1
@@ -11,6 +11,21 @@ export declare const CodeNodeTypeSchema: z.ZodEnum<{
11
11
  parameter: "parameter";
12
12
  }>;
13
13
  export type CodeNodeType = z.infer<typeof CodeNodeTypeSchema>;
14
+ export declare const NormalizedSymbolKindSchema: z.ZodEnum<{
15
+ function: "function";
16
+ file: "file";
17
+ enum: "enum";
18
+ type: "type";
19
+ module: "module";
20
+ class: "class";
21
+ interface: "interface";
22
+ variable: "variable";
23
+ parameter: "parameter";
24
+ method: "method";
25
+ other: "other";
26
+ }>;
27
+ export type NormalizedSymbolKind = z.infer<typeof NormalizedSymbolKindSchema>;
28
+ export declare function toNormalizedSymbolKind(type: CodeNodeType, containerName?: string): NormalizedSymbolKind;
14
29
  export declare const CodeEdgeTypeSchema: z.ZodEnum<{
15
30
  contains: "contains";
16
31
  imports: "imports";
@@ -88,6 +103,9 @@ export declare const ParsedSymbolSchema: z.ZodObject<{
88
103
  }>;
89
104
  name: z.ZodString;
90
105
  line: z.ZodNumber;
106
+ endLine: z.ZodOptional<z.ZodNumber>;
107
+ startColumn: z.ZodOptional<z.ZodNumber>;
108
+ endColumn: z.ZodOptional<z.ZodNumber>;
91
109
  containerName: z.ZodOptional<z.ZodString>;
92
110
  signature: z.ZodOptional<z.ZodString>;
93
111
  exported: z.ZodOptional<z.ZodBoolean>;
@@ -154,6 +172,9 @@ export declare const ParsedFileSchema: z.ZodObject<{
154
172
  }>;
155
173
  name: z.ZodString;
156
174
  line: z.ZodNumber;
175
+ endLine: z.ZodOptional<z.ZodNumber>;
176
+ startColumn: z.ZodOptional<z.ZodNumber>;
177
+ endColumn: z.ZodOptional<z.ZodNumber>;
157
178
  containerName: z.ZodOptional<z.ZodString>;
158
179
  signature: z.ZodOptional<z.ZodString>;
159
180
  exported: z.ZodOptional<z.ZodBoolean>;
@@ -205,6 +226,20 @@ export declare const ParsedFileSchema: z.ZodObject<{
205
226
  }, z.core.$strip>>;
206
227
  }, z.core.$strip>;
207
228
  export type ParsedFile = z.infer<typeof ParsedFileSchema>;
229
+ export declare const IndexTruncationSchema: z.ZodObject<{
230
+ reason: z.ZodEnum<{
231
+ maxFiles: "maxFiles";
232
+ maxBytes: "maxBytes";
233
+ maxFilesAndBytes: "maxFilesAndBytes";
234
+ }>;
235
+ keptFiles: z.ZodNumber;
236
+ droppedFiles: z.ZodNumber;
237
+ totalFiles: z.ZodNumber;
238
+ totalBytes: z.ZodNumber;
239
+ maxFiles: z.ZodOptional<z.ZodNumber>;
240
+ maxBytes: z.ZodOptional<z.ZodNumber>;
241
+ }, z.core.$strip>;
242
+ export type IndexTruncation = z.infer<typeof IndexTruncationSchema>;
208
243
  export declare const CodeNodeSchema: z.ZodObject<{
209
244
  id: z.ZodString;
210
245
  type: z.ZodEnum<{
@@ -222,6 +257,9 @@ export declare const CodeNodeSchema: z.ZodObject<{
222
257
  path: z.ZodString;
223
258
  relativePath: z.ZodOptional<z.ZodString>;
224
259
  line: z.ZodOptional<z.ZodNumber>;
260
+ endLine: z.ZodOptional<z.ZodNumber>;
261
+ startColumn: z.ZodOptional<z.ZodNumber>;
262
+ endColumn: z.ZodOptional<z.ZodNumber>;
225
263
  language: z.ZodString;
226
264
  moduleName: z.ZodOptional<z.ZodString>;
227
265
  containerId: z.ZodOptional<z.ZodString>;
@@ -296,6 +334,9 @@ export declare const CodebaseIndexSchema: z.ZodObject<{
296
334
  }>;
297
335
  name: z.ZodString;
298
336
  line: z.ZodNumber;
337
+ endLine: z.ZodOptional<z.ZodNumber>;
338
+ startColumn: z.ZodOptional<z.ZodNumber>;
339
+ endColumn: z.ZodOptional<z.ZodNumber>;
299
340
  containerName: z.ZodOptional<z.ZodString>;
300
341
  signature: z.ZodOptional<z.ZodString>;
301
342
  exported: z.ZodOptional<z.ZodBoolean>;
@@ -363,6 +404,9 @@ export declare const CodebaseIndexSchema: z.ZodObject<{
363
404
  path: z.ZodString;
364
405
  relativePath: z.ZodOptional<z.ZodString>;
365
406
  line: z.ZodOptional<z.ZodNumber>;
407
+ endLine: z.ZodOptional<z.ZodNumber>;
408
+ startColumn: z.ZodOptional<z.ZodNumber>;
409
+ endColumn: z.ZodOptional<z.ZodNumber>;
366
410
  language: z.ZodString;
367
411
  moduleName: z.ZodOptional<z.ZodString>;
368
412
  containerId: z.ZodOptional<z.ZodString>;
@@ -416,6 +460,19 @@ export declare const CodebaseIndexSchema: z.ZodObject<{
416
460
  relativePath: z.ZodString;
417
461
  reason: z.ZodString;
418
462
  }, z.core.$strip>>;
463
+ truncated: z.ZodOptional<z.ZodObject<{
464
+ reason: z.ZodEnum<{
465
+ maxFiles: "maxFiles";
466
+ maxBytes: "maxBytes";
467
+ maxFilesAndBytes: "maxFilesAndBytes";
468
+ }>;
469
+ keptFiles: z.ZodNumber;
470
+ droppedFiles: z.ZodNumber;
471
+ totalFiles: z.ZodNumber;
472
+ totalBytes: z.ZodNumber;
473
+ maxFiles: z.ZodOptional<z.ZodNumber>;
474
+ maxBytes: z.ZodOptional<z.ZodNumber>;
475
+ }, z.core.$strip>>;
419
476
  }, z.core.$strip>;
420
477
  export type CodebaseIndex = z.infer<typeof CodebaseIndexSchema>;
421
478
  export declare const CodeSearchResultSchema: z.ZodObject<{
@@ -436,6 +493,9 @@ export declare const CodeSearchResultSchema: z.ZodObject<{
436
493
  path: z.ZodString;
437
494
  relativePath: z.ZodOptional<z.ZodString>;
438
495
  line: z.ZodOptional<z.ZodNumber>;
496
+ endLine: z.ZodOptional<z.ZodNumber>;
497
+ startColumn: z.ZodOptional<z.ZodNumber>;
498
+ endColumn: z.ZodOptional<z.ZodNumber>;
439
499
  language: z.ZodString;
440
500
  moduleName: z.ZodOptional<z.ZodString>;
441
501
  containerId: z.ZodOptional<z.ZodString>;
@@ -476,6 +536,9 @@ export declare const RelationMatchSchema: z.ZodObject<{
476
536
  path: z.ZodString;
477
537
  relativePath: z.ZodOptional<z.ZodString>;
478
538
  line: z.ZodOptional<z.ZodNumber>;
539
+ endLine: z.ZodOptional<z.ZodNumber>;
540
+ startColumn: z.ZodOptional<z.ZodNumber>;
541
+ endColumn: z.ZodOptional<z.ZodNumber>;
479
542
  language: z.ZodString;
480
543
  moduleName: z.ZodOptional<z.ZodString>;
481
544
  containerId: z.ZodOptional<z.ZodString>;
@@ -534,6 +597,9 @@ export declare const RelationMatchSchema: z.ZodObject<{
534
597
  path: z.ZodString;
535
598
  relativePath: z.ZodOptional<z.ZodString>;
536
599
  line: z.ZodOptional<z.ZodNumber>;
600
+ endLine: z.ZodOptional<z.ZodNumber>;
601
+ startColumn: z.ZodOptional<z.ZodNumber>;
602
+ endColumn: z.ZodOptional<z.ZodNumber>;
537
603
  language: z.ZodString;
538
604
  moduleName: z.ZodOptional<z.ZodString>;
539
605
  containerId: z.ZodOptional<z.ZodString>;
@@ -562,6 +628,9 @@ export declare const DependencyAnalysisSchema: z.ZodObject<{
562
628
  path: z.ZodString;
563
629
  relativePath: z.ZodOptional<z.ZodString>;
564
630
  line: z.ZodOptional<z.ZodNumber>;
631
+ endLine: z.ZodOptional<z.ZodNumber>;
632
+ startColumn: z.ZodOptional<z.ZodNumber>;
633
+ endColumn: z.ZodOptional<z.ZodNumber>;
565
634
  language: z.ZodString;
566
635
  moduleName: z.ZodOptional<z.ZodString>;
567
636
  containerId: z.ZodOptional<z.ZodString>;
@@ -587,6 +656,9 @@ export declare const DependencyAnalysisSchema: z.ZodObject<{
587
656
  path: z.ZodString;
588
657
  relativePath: z.ZodOptional<z.ZodString>;
589
658
  line: z.ZodOptional<z.ZodNumber>;
659
+ endLine: z.ZodOptional<z.ZodNumber>;
660
+ startColumn: z.ZodOptional<z.ZodNumber>;
661
+ endColumn: z.ZodOptional<z.ZodNumber>;
590
662
  language: z.ZodString;
591
663
  moduleName: z.ZodOptional<z.ZodString>;
592
664
  containerId: z.ZodOptional<z.ZodString>;
@@ -645,6 +717,9 @@ export declare const DependencyAnalysisSchema: z.ZodObject<{
645
717
  path: z.ZodString;
646
718
  relativePath: z.ZodOptional<z.ZodString>;
647
719
  line: z.ZodOptional<z.ZodNumber>;
720
+ endLine: z.ZodOptional<z.ZodNumber>;
721
+ startColumn: z.ZodOptional<z.ZodNumber>;
722
+ endColumn: z.ZodOptional<z.ZodNumber>;
648
723
  language: z.ZodString;
649
724
  moduleName: z.ZodOptional<z.ZodString>;
650
725
  containerId: z.ZodOptional<z.ZodString>;
@@ -671,6 +746,9 @@ export declare const DependencyAnalysisSchema: z.ZodObject<{
671
746
  path: z.ZodString;
672
747
  relativePath: z.ZodOptional<z.ZodString>;
673
748
  line: z.ZodOptional<z.ZodNumber>;
749
+ endLine: z.ZodOptional<z.ZodNumber>;
750
+ startColumn: z.ZodOptional<z.ZodNumber>;
751
+ endColumn: z.ZodOptional<z.ZodNumber>;
674
752
  language: z.ZodString;
675
753
  moduleName: z.ZodOptional<z.ZodString>;
676
754
  containerId: z.ZodOptional<z.ZodString>;
@@ -729,6 +807,9 @@ export declare const DependencyAnalysisSchema: z.ZodObject<{
729
807
  path: z.ZodString;
730
808
  relativePath: z.ZodOptional<z.ZodString>;
731
809
  line: z.ZodOptional<z.ZodNumber>;
810
+ endLine: z.ZodOptional<z.ZodNumber>;
811
+ startColumn: z.ZodOptional<z.ZodNumber>;
812
+ endColumn: z.ZodOptional<z.ZodNumber>;
732
813
  language: z.ZodString;
733
814
  moduleName: z.ZodOptional<z.ZodString>;
734
815
  containerId: z.ZodOptional<z.ZodString>;
@@ -755,6 +836,9 @@ export declare const DependencyAnalysisSchema: z.ZodObject<{
755
836
  path: z.ZodString;
756
837
  relativePath: z.ZodOptional<z.ZodString>;
757
838
  line: z.ZodOptional<z.ZodNumber>;
839
+ endLine: z.ZodOptional<z.ZodNumber>;
840
+ startColumn: z.ZodOptional<z.ZodNumber>;
841
+ endColumn: z.ZodOptional<z.ZodNumber>;
758
842
  language: z.ZodString;
759
843
  moduleName: z.ZodOptional<z.ZodString>;
760
844
  containerId: z.ZodOptional<z.ZodString>;
@@ -813,6 +897,9 @@ export declare const DependencyAnalysisSchema: z.ZodObject<{
813
897
  path: z.ZodString;
814
898
  relativePath: z.ZodOptional<z.ZodString>;
815
899
  line: z.ZodOptional<z.ZodNumber>;
900
+ endLine: z.ZodOptional<z.ZodNumber>;
901
+ startColumn: z.ZodOptional<z.ZodNumber>;
902
+ endColumn: z.ZodOptional<z.ZodNumber>;
816
903
  language: z.ZodString;
817
904
  moduleName: z.ZodOptional<z.ZodString>;
818
905
  containerId: z.ZodOptional<z.ZodString>;
@@ -839,6 +926,9 @@ export declare const DependencyAnalysisSchema: z.ZodObject<{
839
926
  path: z.ZodString;
840
927
  relativePath: z.ZodOptional<z.ZodString>;
841
928
  line: z.ZodOptional<z.ZodNumber>;
929
+ endLine: z.ZodOptional<z.ZodNumber>;
930
+ startColumn: z.ZodOptional<z.ZodNumber>;
931
+ endColumn: z.ZodOptional<z.ZodNumber>;
842
932
  language: z.ZodString;
843
933
  moduleName: z.ZodOptional<z.ZodString>;
844
934
  containerId: z.ZodOptional<z.ZodString>;
@@ -897,6 +987,9 @@ export declare const DependencyAnalysisSchema: z.ZodObject<{
897
987
  path: z.ZodString;
898
988
  relativePath: z.ZodOptional<z.ZodString>;
899
989
  line: z.ZodOptional<z.ZodNumber>;
990
+ endLine: z.ZodOptional<z.ZodNumber>;
991
+ startColumn: z.ZodOptional<z.ZodNumber>;
992
+ endColumn: z.ZodOptional<z.ZodNumber>;
900
993
  language: z.ZodString;
901
994
  moduleName: z.ZodOptional<z.ZodString>;
902
995
  containerId: z.ZodOptional<z.ZodString>;
@@ -925,6 +1018,9 @@ export declare const ClassTreeAnalysisSchema: z.ZodObject<{
925
1018
  path: z.ZodString;
926
1019
  relativePath: z.ZodOptional<z.ZodString>;
927
1020
  line: z.ZodOptional<z.ZodNumber>;
1021
+ endLine: z.ZodOptional<z.ZodNumber>;
1022
+ startColumn: z.ZodOptional<z.ZodNumber>;
1023
+ endColumn: z.ZodOptional<z.ZodNumber>;
928
1024
  language: z.ZodString;
929
1025
  moduleName: z.ZodOptional<z.ZodString>;
930
1026
  containerId: z.ZodOptional<z.ZodString>;
@@ -950,6 +1046,9 @@ export declare const ClassTreeAnalysisSchema: z.ZodObject<{
950
1046
  path: z.ZodString;
951
1047
  relativePath: z.ZodOptional<z.ZodString>;
952
1048
  line: z.ZodOptional<z.ZodNumber>;
1049
+ endLine: z.ZodOptional<z.ZodNumber>;
1050
+ startColumn: z.ZodOptional<z.ZodNumber>;
1051
+ endColumn: z.ZodOptional<z.ZodNumber>;
953
1052
  language: z.ZodString;
954
1053
  moduleName: z.ZodOptional<z.ZodString>;
955
1054
  containerId: z.ZodOptional<z.ZodString>;
@@ -1008,6 +1107,9 @@ export declare const ClassTreeAnalysisSchema: z.ZodObject<{
1008
1107
  path: z.ZodString;
1009
1108
  relativePath: z.ZodOptional<z.ZodString>;
1010
1109
  line: z.ZodOptional<z.ZodNumber>;
1110
+ endLine: z.ZodOptional<z.ZodNumber>;
1111
+ startColumn: z.ZodOptional<z.ZodNumber>;
1112
+ endColumn: z.ZodOptional<z.ZodNumber>;
1011
1113
  language: z.ZodString;
1012
1114
  moduleName: z.ZodOptional<z.ZodString>;
1013
1115
  containerId: z.ZodOptional<z.ZodString>;
@@ -1034,6 +1136,9 @@ export declare const ClassTreeAnalysisSchema: z.ZodObject<{
1034
1136
  path: z.ZodString;
1035
1137
  relativePath: z.ZodOptional<z.ZodString>;
1036
1138
  line: z.ZodOptional<z.ZodNumber>;
1139
+ endLine: z.ZodOptional<z.ZodNumber>;
1140
+ startColumn: z.ZodOptional<z.ZodNumber>;
1141
+ endColumn: z.ZodOptional<z.ZodNumber>;
1037
1142
  language: z.ZodString;
1038
1143
  moduleName: z.ZodOptional<z.ZodString>;
1039
1144
  containerId: z.ZodOptional<z.ZodString>;
@@ -1092,6 +1197,9 @@ export declare const ClassTreeAnalysisSchema: z.ZodObject<{
1092
1197
  path: z.ZodString;
1093
1198
  relativePath: z.ZodOptional<z.ZodString>;
1094
1199
  line: z.ZodOptional<z.ZodNumber>;
1200
+ endLine: z.ZodOptional<z.ZodNumber>;
1201
+ startColumn: z.ZodOptional<z.ZodNumber>;
1202
+ endColumn: z.ZodOptional<z.ZodNumber>;
1095
1203
  language: z.ZodString;
1096
1204
  moduleName: z.ZodOptional<z.ZodString>;
1097
1205
  containerId: z.ZodOptional<z.ZodString>;
@@ -1117,6 +1225,9 @@ export declare const ClassTreeAnalysisSchema: z.ZodObject<{
1117
1225
  path: z.ZodString;
1118
1226
  relativePath: z.ZodOptional<z.ZodString>;
1119
1227
  line: z.ZodOptional<z.ZodNumber>;
1228
+ endLine: z.ZodOptional<z.ZodNumber>;
1229
+ startColumn: z.ZodOptional<z.ZodNumber>;
1230
+ endColumn: z.ZodOptional<z.ZodNumber>;
1120
1231
  language: z.ZodString;
1121
1232
  moduleName: z.ZodOptional<z.ZodString>;
1122
1233
  containerId: z.ZodOptional<z.ZodString>;
@@ -1144,6 +1255,9 @@ export declare const CallChainSchema: z.ZodObject<{
1144
1255
  path: z.ZodString;
1145
1256
  relativePath: z.ZodOptional<z.ZodString>;
1146
1257
  line: z.ZodOptional<z.ZodNumber>;
1258
+ endLine: z.ZodOptional<z.ZodNumber>;
1259
+ startColumn: z.ZodOptional<z.ZodNumber>;
1260
+ endColumn: z.ZodOptional<z.ZodNumber>;
1147
1261
  language: z.ZodString;
1148
1262
  moduleName: z.ZodOptional<z.ZodString>;
1149
1263
  containerId: z.ZodOptional<z.ZodString>;
@@ -1210,6 +1324,9 @@ export declare const CallChainSchema: z.ZodObject<{
1210
1324
  path: z.ZodString;
1211
1325
  relativePath: z.ZodOptional<z.ZodString>;
1212
1326
  line: z.ZodOptional<z.ZodNumber>;
1327
+ endLine: z.ZodOptional<z.ZodNumber>;
1328
+ startColumn: z.ZodOptional<z.ZodNumber>;
1329
+ endColumn: z.ZodOptional<z.ZodNumber>;
1213
1330
  language: z.ZodString;
1214
1331
  moduleName: z.ZodOptional<z.ZodString>;
1215
1332
  containerId: z.ZodOptional<z.ZodString>;
@@ -1,5 +1,42 @@
1
1
  import { z } from 'zod';
2
2
  export const CodeNodeTypeSchema = z.enum(['file', 'module', 'function', 'class', 'interface', 'type-alias', 'enum', 'variable', 'parameter']);
3
+ export const NormalizedSymbolKindSchema = z.enum([
4
+ 'file',
5
+ 'module',
6
+ 'function',
7
+ 'method',
8
+ 'class',
9
+ 'interface',
10
+ 'type',
11
+ 'enum',
12
+ 'variable',
13
+ 'parameter',
14
+ 'other',
15
+ ]);
16
+ export function toNormalizedSymbolKind(type, containerName) {
17
+ switch (type) {
18
+ case 'file':
19
+ return 'file';
20
+ case 'module':
21
+ return 'module';
22
+ case 'function':
23
+ return containerName ? 'method' : 'function';
24
+ case 'class':
25
+ return 'class';
26
+ case 'interface':
27
+ return 'interface';
28
+ case 'type-alias':
29
+ return 'type';
30
+ case 'enum':
31
+ return 'enum';
32
+ case 'variable':
33
+ return 'variable';
34
+ case 'parameter':
35
+ return 'parameter';
36
+ default:
37
+ return 'other';
38
+ }
39
+ }
3
40
  export const CodeEdgeTypeSchema = z.enum(['contains', 'imports', 'calls', 'inherits', 'implements', 'has_parameter']);
4
41
  export const ResolutionStatusSchema = z.enum(['resolved', 'ambiguous', 'unresolved']);
5
42
  export const ImportKindSchema = z.enum(['local', 'external', 'unresolved']);
@@ -34,6 +71,9 @@ export const ParsedSymbolSchema = z.object({
34
71
  type: z.enum(['function', 'class', 'interface', 'type-alias', 'enum', 'variable']),
35
72
  name: z.string(),
36
73
  line: z.number(),
74
+ endLine: z.number().optional(),
75
+ startColumn: z.number().optional(),
76
+ endColumn: z.number().optional(),
37
77
  containerName: z.string().optional(),
38
78
  signature: z.string().optional(),
39
79
  exported: z.boolean().optional(),
@@ -78,6 +118,15 @@ export const ParsedFileSchema = z.object({
78
118
  calls: z.array(ParsedCallSchema),
79
119
  inheritances: z.array(ParsedInheritanceSchema),
80
120
  });
121
+ export const IndexTruncationSchema = z.object({
122
+ reason: z.enum(['maxFiles', 'maxBytes', 'maxFilesAndBytes']),
123
+ keptFiles: z.number(),
124
+ droppedFiles: z.number(),
125
+ totalFiles: z.number(),
126
+ totalBytes: z.number(),
127
+ maxFiles: z.number().optional(),
128
+ maxBytes: z.number().optional(),
129
+ });
81
130
  export const CodeNodeSchema = z.object({
82
131
  id: z.string(),
83
132
  type: CodeNodeTypeSchema,
@@ -85,6 +134,9 @@ export const CodeNodeSchema = z.object({
85
134
  path: z.string(),
86
135
  relativePath: z.string().optional(),
87
136
  line: z.number().optional(),
137
+ endLine: z.number().optional(),
138
+ startColumn: z.number().optional(),
139
+ endColumn: z.number().optional(),
88
140
  language: z.string(),
89
141
  moduleName: z.string().optional(),
90
142
  containerId: z.string().optional(),
@@ -119,6 +171,7 @@ export const CodebaseIndexSchema = z.object({
119
171
  edges: z.array(CodeEdgeSchema),
120
172
  capabilities: z.record(z.string(), CodeCapabilitiesSchema),
121
173
  skippedFiles: z.array(CodeSkippedFileSchema),
174
+ truncated: IndexTruncationSchema.optional(),
122
175
  });
123
176
  export const CodeSearchResultSchema = z.object({
124
177
  node: CodeNodeSchema,
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/code/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/code/types.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,22 @@
1
+ export interface DocumentChunkOptions {
2
+ relativePath?: string;
3
+ maxTokens?: number;
4
+ overlapTokens?: number;
5
+ countTokens?: (content: string) => number;
6
+ }
7
+ export interface DocumentChunk {
8
+ chunkId: string;
9
+ filePath: string;
10
+ relativePath: string;
11
+ format: string;
12
+ title: string;
13
+ content: string;
14
+ anchor: string;
15
+ headingPath: string[];
16
+ sourceLine: number;
17
+ startLine: number;
18
+ endLine: number;
19
+ tokenEstimate: number;
20
+ wordCount: number;
21
+ }
22
+ export declare function chunkDocument(filePath: string, options?: DocumentChunkOptions): Promise<DocumentChunk[]>;
@@ -0,0 +1,169 @@
1
+ import path from 'node:path';
2
+ import { documentToMarkdown } from '../markdown/convert.js';
3
+ import { extractFromMarkdown, getSectionContent, flatten } from '../structure/index.js';
4
+ import { estimateTokens } from '../inspect/shared.js';
5
+ import { countWords, getExtension, normalizeRelativePath } from '../utils.js';
6
+ function slugify(value) {
7
+ const slug = value
8
+ .toLowerCase()
9
+ .replace(/[`*_~()[\]{}<>]/g, '')
10
+ .replace(/[^a-z0-9]+/g, '-')
11
+ .replace(/^-+|-+$/g, '');
12
+ return slug || 'section';
13
+ }
14
+ function lineAtChar(content, charIndex) {
15
+ if (charIndex <= 0)
16
+ return 1;
17
+ let line = 1;
18
+ for (let index = 0; index < Math.min(charIndex, content.length); index++) {
19
+ if (content[index] === '\n')
20
+ line++;
21
+ }
22
+ return line;
23
+ }
24
+ function headingPathFor(node, nodesById) {
25
+ const pathParts = [node.title];
26
+ let current = node;
27
+ while (current.parentNodeId) {
28
+ const parent = nodesById.get(current.parentNodeId);
29
+ if (!parent)
30
+ break;
31
+ pathParts.unshift(parent.title);
32
+ current = parent;
33
+ }
34
+ return pathParts;
35
+ }
36
+ function splitByTokenBudget(seed, maxTokens, overlapTokens, countTokens) {
37
+ const lines = seed.content.split('\n');
38
+ const chunks = [];
39
+ let currentLines = [];
40
+ let currentStartLine = seed.startLine;
41
+ const emit = () => {
42
+ const content = currentLines.join('\n').trim();
43
+ if (!content) {
44
+ currentLines = [];
45
+ return;
46
+ }
47
+ const emittedStartLine = currentStartLine;
48
+ const emittedLineCount = currentLines.length;
49
+ const tokenEstimate = countTokens(content);
50
+ chunks.push({
51
+ content,
52
+ startLine: emittedStartLine,
53
+ endLine: emittedStartLine + emittedLineCount - 1,
54
+ tokenEstimate,
55
+ wordCount: countWords(content),
56
+ });
57
+ if (overlapTokens <= 0 || (currentLines.length === 1 && tokenEstimate > overlapTokens)) {
58
+ currentLines = [];
59
+ return;
60
+ }
61
+ const overlapLines = [];
62
+ let overlapEstimate = 0;
63
+ for (let index = currentLines.length - 1; index >= 0; index--) {
64
+ const next = [currentLines[index], ...overlapLines].join('\n');
65
+ const nextEstimate = countTokens(next);
66
+ if (overlapEstimate > 0 && nextEstimate > overlapTokens)
67
+ break;
68
+ overlapLines.unshift(currentLines[index]);
69
+ overlapEstimate = nextEstimate;
70
+ }
71
+ currentStartLine = emittedStartLine + emittedLineCount - overlapLines.length;
72
+ currentLines = overlapLines;
73
+ };
74
+ for (let index = 0; index < lines.length; index++) {
75
+ const line = lines[index];
76
+ const nextLines = [...currentLines, line];
77
+ const nextContent = nextLines.join('\n').trim();
78
+ const nextEstimate = countTokens(nextContent);
79
+ if (currentLines.length > 0 && nextEstimate > maxTokens) {
80
+ emit();
81
+ }
82
+ if (currentLines.length === 0) {
83
+ currentStartLine = seed.startLine + index;
84
+ }
85
+ currentLines.push(line);
86
+ const currentEstimate = countTokens(currentLines.join('\n').trim());
87
+ if (currentLines.length === 1 && currentEstimate > maxTokens) {
88
+ emit();
89
+ }
90
+ }
91
+ if (currentLines.length > 0) {
92
+ emit();
93
+ }
94
+ return chunks;
95
+ }
96
+ function buildChunkSeeds(markdown, filePath) {
97
+ const structure = extractFromMarkdown(markdown);
98
+ const nodes = flatten(structure.rootNodes);
99
+ if (nodes.length === 0) {
100
+ return [{
101
+ title: path.basename(filePath),
102
+ content: markdown,
103
+ anchorBase: `line-${lineAtChar(markdown, 0)}`,
104
+ headingPath: [],
105
+ startLine: 1,
106
+ }];
107
+ }
108
+ const nodesById = new Map(nodes.map((node) => [node.nodeId, node]));
109
+ const seeds = [];
110
+ for (const node of nodes) {
111
+ const content = getSectionContent(markdown, node, false);
112
+ if (!content.trim())
113
+ continue;
114
+ const headingPath = headingPathFor(node, nodesById);
115
+ seeds.push({
116
+ title: node.title,
117
+ content,
118
+ anchorBase: slugify(headingPath.join(' ')),
119
+ headingPath,
120
+ startLine: node.startLine,
121
+ });
122
+ }
123
+ return seeds.length > 0
124
+ ? seeds
125
+ : [{
126
+ title: path.basename(filePath),
127
+ content: markdown,
128
+ anchorBase: `line-${lineAtChar(markdown, 0)}`,
129
+ headingPath: [],
130
+ startLine: 1,
131
+ }];
132
+ }
133
+ export async function chunkDocument(filePath, options = {}) {
134
+ const markdown = await documentToMarkdown(filePath);
135
+ if (markdown == null) {
136
+ throw new Error(`Unsupported document format for chunking: ${filePath}`);
137
+ }
138
+ const maxTokens = options.maxTokens ?? 800;
139
+ const overlapTokens = Math.min(options.overlapTokens ?? 80, Math.max(0, maxTokens - 1));
140
+ const countTokens = options.countTokens ?? estimateTokens;
141
+ const relativePath = options.relativePath ?? normalizeRelativePath(filePath);
142
+ const format = getExtension(filePath);
143
+ const chunks = [];
144
+ const seeds = buildChunkSeeds(markdown, filePath);
145
+ for (const seed of seeds) {
146
+ const lineChunks = splitByTokenBudget(seed, maxTokens, overlapTokens, countTokens);
147
+ for (let index = 0; index < lineChunks.length; index++) {
148
+ const lineChunk = lineChunks[index];
149
+ const suffix = lineChunks.length > 1 ? `-part-${index + 1}` : '';
150
+ chunks.push({
151
+ chunkId: `${relativePath}#${seed.anchorBase}${suffix}`,
152
+ filePath,
153
+ relativePath,
154
+ format,
155
+ title: seed.title,
156
+ content: lineChunk.content,
157
+ anchor: `${seed.anchorBase}${suffix}`,
158
+ headingPath: seed.headingPath,
159
+ sourceLine: lineChunk.startLine,
160
+ startLine: lineChunk.startLine,
161
+ endLine: lineChunk.endLine,
162
+ tokenEstimate: lineChunk.tokenEstimate,
163
+ wordCount: lineChunk.wordCount,
164
+ });
165
+ }
166
+ }
167
+ return chunks;
168
+ }
169
+ //# sourceMappingURL=chunk.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"chunk.js","sourceRoot":"","sources":["../../../src/doc/chunk.ts"],"names":[],"mappings":"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"}
@@ -1,13 +1,29 @@
1
1
  export interface DiscoveredDocument {
2
2
  filePath: string;
3
3
  relativePath: string;
4
- format: 'docx' | 'pdf' | 'pptx' | 'xlsx' | 'odt' | 'ods' | 'odp';
4
+ format: DocumentFormat;
5
5
  sizeBytes: number;
6
6
  }
7
- export declare function discoverDocuments(rootDir: string, options?: {
7
+ export interface DiscoveredDocumentSkippedEntry {
8
+ path: string;
9
+ reason: string;
10
+ size: number;
11
+ }
12
+ export interface DiscoverDocumentsResult {
13
+ documents: DiscoveredDocument[];
14
+ skipped: DiscoveredDocumentSkippedEntry[];
15
+ }
16
+ export declare const DOCUMENT_EXTENSIONS: readonly ["docx", "pdf", "pptx", "xlsx", "odt", "ods", "odp"];
17
+ export declare const PROSE_DOCUMENT_EXTENSIONS: readonly ["md", "markdown", "mdx", "txt", "rst", "adoc", "asciidoc"];
18
+ export declare const DATA_DOCUMENT_EXTENSIONS: readonly ["yaml", "yml", "json", "jsonc", "toml"];
19
+ export type DocumentFormat = typeof DOCUMENT_EXTENSIONS[number] | typeof PROSE_DOCUMENT_EXTENSIONS[number] | typeof DATA_DOCUMENT_EXTENSIONS[number];
20
+ export interface DiscoverDocumentsOptions {
8
21
  excludeDir?: string[];
9
22
  maxSizeBytes?: number;
10
23
  noGitignore?: boolean;
11
24
  ignorePatterns?: string[];
12
25
  overlayIgnorePatterns?: string[];
13
- }): Promise<DiscoveredDocument[]>;
26
+ includeDataFiles?: boolean;
27
+ }
28
+ export declare function discoverDocumentSet(rootDir: string, options?: DiscoverDocumentsOptions): Promise<DiscoverDocumentsResult>;
29
+ export declare function discoverDocuments(rootDir: string, options?: DiscoverDocumentsOptions): Promise<DiscoveredDocument[]>;