agent-ide 0.9.1 → 0.9.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (107) hide show
  1. package/dist/core/change-signature/change-signature-service.d.ts.map +1 -1
  2. package/dist/core/change-signature/change-signature-service.js +25 -2
  3. package/dist/core/change-signature/change-signature-service.js.map +1 -1
  4. package/dist/core/change-signature/signature-parser.d.ts.map +1 -1
  5. package/dist/core/change-signature/signature-parser.js +117 -144
  6. package/dist/core/change-signature/signature-parser.js.map +1 -1
  7. package/dist/core/cycles/cycle-detector.js +6 -7
  8. package/dist/core/cycles/cycle-detector.js.map +1 -1
  9. package/dist/core/deadcode/dead-code-detector.d.ts.map +1 -1
  10. package/dist/core/deadcode/dead-code-detector.js +20 -11
  11. package/dist/core/deadcode/dead-code-detector.js.map +1 -1
  12. package/dist/core/foundations/dependency-graph/dependency-graph.d.ts.map +1 -1
  13. package/dist/core/foundations/dependency-graph/dependency-graph.js +2 -1
  14. package/dist/core/foundations/dependency-graph/dependency-graph.js.map +1 -1
  15. package/dist/core/foundations/indexing/index-engine.d.ts +1 -0
  16. package/dist/core/foundations/indexing/index-engine.d.ts.map +1 -1
  17. package/dist/core/foundations/indexing/index-engine.js +5 -9
  18. package/dist/core/foundations/indexing/index-engine.js.map +1 -1
  19. package/dist/core/foundations/indexing/symbol-index.d.ts +2 -0
  20. package/dist/core/foundations/indexing/symbol-index.d.ts.map +1 -1
  21. package/dist/core/foundations/indexing/symbol-index.js +58 -23
  22. package/dist/core/foundations/indexing/symbol-index.js.map +1 -1
  23. package/dist/core/impact/impact-analyzer.d.ts.map +1 -1
  24. package/dist/core/impact/impact-analyzer.js +12 -6
  25. package/dist/core/impact/impact-analyzer.js.map +1 -1
  26. package/dist/core/move/file-scanner.d.ts.map +1 -1
  27. package/dist/core/move/file-scanner.js +29 -6
  28. package/dist/core/move/file-scanner.js.map +1 -1
  29. package/dist/core/move/import-resolver.d.ts +1 -0
  30. package/dist/core/move/import-resolver.d.ts.map +1 -1
  31. package/dist/core/move/import-resolver.js +6 -4
  32. package/dist/core/move/import-resolver.js.map +1 -1
  33. package/dist/core/move-member/file-change-preparer.d.ts +6 -0
  34. package/dist/core/move-member/file-change-preparer.d.ts.map +1 -1
  35. package/dist/core/move-member/file-change-preparer.js +79 -57
  36. package/dist/core/move-member/file-change-preparer.js.map +1 -1
  37. package/dist/core/rename/reference-updater.d.ts +14 -4
  38. package/dist/core/rename/reference-updater.d.ts.map +1 -1
  39. package/dist/core/rename/reference-updater.js +39 -37
  40. package/dist/core/rename/reference-updater.js.map +1 -1
  41. package/dist/core/snapshot/snapshot-generator.d.ts.map +1 -1
  42. package/dist/core/snapshot/snapshot-generator.js +21 -5
  43. package/dist/core/snapshot/snapshot-generator.js.map +1 -1
  44. package/dist/infrastructure/cache/memory-cache.d.ts +1 -1
  45. package/dist/infrastructure/cache/memory-cache.d.ts.map +1 -1
  46. package/dist/infrastructure/cache/memory-cache.js +49 -5
  47. package/dist/infrastructure/cache/memory-cache.js.map +1 -1
  48. package/dist/infrastructure/cache/strategies.d.ts +1 -0
  49. package/dist/infrastructure/cache/strategies.d.ts.map +1 -1
  50. package/dist/infrastructure/cache/strategies.js +21 -21
  51. package/dist/infrastructure/cache/strategies.js.map +1 -1
  52. package/dist/infrastructure/changeset/change-applicator.d.ts.map +1 -1
  53. package/dist/infrastructure/changeset/change-applicator.js +12 -27
  54. package/dist/infrastructure/changeset/change-applicator.js.map +1 -1
  55. package/dist/infrastructure/changeset/changeset-builder.d.ts +4 -2
  56. package/dist/infrastructure/changeset/changeset-builder.d.ts.map +1 -1
  57. package/dist/infrastructure/changeset/changeset-builder.js +33 -21
  58. package/dist/infrastructure/changeset/changeset-builder.js.map +1 -1
  59. package/dist/infrastructure/changeset/changeset-converter.d.ts.map +1 -1
  60. package/dist/infrastructure/changeset/changeset-converter.js +11 -7
  61. package/dist/infrastructure/changeset/changeset-converter.js.map +1 -1
  62. package/dist/infrastructure/formatters/diff-generator.js +31 -42
  63. package/dist/infrastructure/formatters/diff-generator.js.map +1 -1
  64. package/dist/infrastructure/formatters/query-formatter.d.ts +1 -5
  65. package/dist/infrastructure/formatters/query-formatter.d.ts.map +1 -1
  66. package/dist/infrastructure/formatters/query-formatter.js +36 -16
  67. package/dist/infrastructure/formatters/query-formatter.js.map +1 -1
  68. package/dist/infrastructure/parser/registry.d.ts +6 -0
  69. package/dist/infrastructure/parser/registry.d.ts.map +1 -1
  70. package/dist/infrastructure/parser/registry.js +25 -8
  71. package/dist/infrastructure/parser/registry.js.map +1 -1
  72. package/dist/infrastructure/storage/file-system.d.ts.map +1 -1
  73. package/dist/infrastructure/storage/file-system.js +11 -3
  74. package/dist/infrastructure/storage/file-system.js.map +1 -1
  75. package/dist/plugins/javascript/declaration-analyzer.d.ts +16 -0
  76. package/dist/plugins/javascript/declaration-analyzer.d.ts.map +1 -1
  77. package/dist/plugins/javascript/declaration-analyzer.js +152 -113
  78. package/dist/plugins/javascript/declaration-analyzer.js.map +1 -1
  79. package/dist/plugins/javascript/parser.d.ts +6 -0
  80. package/dist/plugins/javascript/parser.d.ts.map +1 -1
  81. package/dist/plugins/javascript/parser.js +13 -2
  82. package/dist/plugins/javascript/parser.js.map +1 -1
  83. package/dist/plugins/javascript/reference-finder.d.ts +14 -2
  84. package/dist/plugins/javascript/reference-finder.d.ts.map +1 -1
  85. package/dist/plugins/javascript/reference-finder.js +57 -26
  86. package/dist/plugins/javascript/reference-finder.js.map +1 -1
  87. package/dist/plugins/typescript/declaration-analyzer.d.ts +12 -0
  88. package/dist/plugins/typescript/declaration-analyzer.d.ts.map +1 -1
  89. package/dist/plugins/typescript/declaration-analyzer.js +29 -4
  90. package/dist/plugins/typescript/declaration-analyzer.js.map +1 -1
  91. package/dist/plugins/typescript/dependency-analyzer.d.ts +5 -0
  92. package/dist/plugins/typescript/dependency-analyzer.d.ts.map +1 -1
  93. package/dist/plugins/typescript/dependency-analyzer.js +10 -5
  94. package/dist/plugins/typescript/dependency-analyzer.js.map +1 -1
  95. package/dist/plugins/typescript/language-service.d.ts +9 -0
  96. package/dist/plugins/typescript/language-service.d.ts.map +1 -1
  97. package/dist/plugins/typescript/language-service.js +16 -2
  98. package/dist/plugins/typescript/language-service.js.map +1 -1
  99. package/dist/plugins/typescript/scope-analyzer.d.ts +7 -2
  100. package/dist/plugins/typescript/scope-analyzer.d.ts.map +1 -1
  101. package/dist/plugins/typescript/scope-analyzer.js +26 -16
  102. package/dist/plugins/typescript/scope-analyzer.js.map +1 -1
  103. package/dist/plugins/typescript/symbol-extractor.d.ts +4 -5
  104. package/dist/plugins/typescript/symbol-extractor.d.ts.map +1 -1
  105. package/dist/plugins/typescript/symbol-extractor.js +19 -29
  106. package/dist/plugins/typescript/symbol-extractor.js.map +1 -1
  107. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"changeset-builder.js","sourceRoot":"","sources":["../../../src/infrastructure/changeset/changeset-builder.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EACL,iBAAiB,EACjB,gBAAgB,EAKjB,MAAM,YAAY,CAAC;AAEpB;;;;;;;;;;;;;GAaG;AACH,MAAM,OAAO,gBAAgB;IAC3B,aAAa;IACL,WAAW,GAAqB,EAAE,CAAC;IAE3C,aAAa;IACL,cAAc,GAAoB,EAAE,CAAC;IAE7C,WAAW;IACH,WAAW,GAAG,EAAE,CAAC;IAEzB,WAAW;IACH,OAAO,GAAqB,gBAAgB,CAAC,MAAM,CAAC;IAE5D,aAAa;IACL,MAAM,GAAa,EAAE,CAAC;IAE9B,aAAa;IACL,QAAQ,GAAa,EAAE,CAAC;IAEhC;;;;OAIG;IACH,UAAU,CAAC,OAAyB;QAClC,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;OAIG;IACH,eAAe,CAAC,WAAmB;QACjC,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;QAC/B,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;;;;OAQG;IACH,aAAa,CACX,QAAgB,EAChB,KAAiB,EACjB,aAA+C;QAE/C,MAAM,QAAQ,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,QAAQ,KAAK,QAAQ,CAAC,CAAC;QAEvE,IAAI,QAAQ,EAAE,CAAC;YACb,oCAAoC;YACpC,MAAM,aAAa,GAAG,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;YACzD,MAAM,iBAAiB,GAAG,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,CAC/C,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,EAAE,CAClC,YAAY,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,KAAK,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI;mBACvD,YAAY,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,KAAK,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM;mBAC9D,YAAY,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,KAAK,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI;mBACtD,YAAY,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,KAAK,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAC9D,CACF,CAAC;YAEF,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,GAAG;gBAChC,GAAG,QAAQ;gBACX,KAAK,EAAE,CAAC,GAAG,QAAQ,CAAC,KAAK,EAAE,GAAG,iBAAiB,CAAC;gBAChD,aAAa,EAAE,aAAa,IAAI,QAAQ,CAAC,aAAa;aACvD,CAAC;QACJ,CAAC;aAAM,CAAC;YACN,OAAO;YACP,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC;gBACpB,QAAQ;gBACR,KAAK;gBACL,aAAa;aACd,CAAC,CAAC;QACL,CAAC;QAED,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;OAKG;IACH,aAAa,CAAC,QAAgB,EAAE,OAAe;QAC7C,MAAM,QAAQ,GAAG,IAAI,CAAC,cAAc,CAAC,IAAI,CACvC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,UAAU,KAAK,QAAQ,CACjC,CAAC;QAEF,IAAI,QAAQ,EAAE,CAAC;YACb,IAAI,CAAC,QAAQ,CAAC,IAAI,CAChB,iBAAiB,QAAQ,MAAM,QAAQ,CAAC,IAAI,KAAK,CAClD,CAAC;QACJ,CAAC;QAED,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC;YACvB,IAAI,EAAE,iBAAiB,CAAC,MAAM;YAC9B,UAAU,EAAE,QAAQ;YACpB,UAAU,EAAE,QAAQ;YACpB,OAAO;SACR,CAAC,CAAC;QACH,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;OAIG;IACH,aAAa,CAAC,QAAgB;QAC5B,MAAM,QAAQ,GAAG,IAAI,CAAC,cAAc,CAAC,IAAI,CACvC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,UAAU,KAAK,QAAQ,CACjC,CAAC;QAEF,IAAI,QAAQ,EAAE,CAAC;YACb,IAAI,CAAC,QAAQ,CAAC,IAAI,CAChB,iBAAiB,QAAQ,MAAM,QAAQ,CAAC,IAAI,KAAK,CAClD,CAAC;QACJ,CAAC;QAED,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC;YACvB,IAAI,EAAE,iBAAiB,CAAC,MAAM;YAC9B,UAAU,EAAE,QAAQ;SACrB,CAAC,CAAC;QACH,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;OAKG;IACH,WAAW,CAAC,UAAkB,EAAE,UAAkB;QAChD,MAAM,QAAQ,GAAG,IAAI,CAAC,cAAc,CAAC,IAAI,CACvC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,UAAU,KAAK,UAAU,CACnC,CAAC;QAEF,IAAI,QAAQ,EAAE,CAAC;YACb,IAAI,CAAC,QAAQ,CAAC,IAAI,CAChB,iBAAiB,UAAU,MAAM,QAAQ,CAAC,IAAI,KAAK,CACpD,CAAC;QACJ,CAAC;QAED,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC;YACvB,IAAI,EAAE,iBAAiB,CAAC,IAAI;YAC5B,UAAU;YACV,UAAU;SACX,CAAC,CAAC;QACH,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;OAIG;IACH,QAAQ,CAAC,KAAa;QACpB,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACxB,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;OAIG;IACH,UAAU,CAAC,OAAe;QACxB,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC5B,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;OAGG;IACH,KAAK;QACH,OAAO;YACL,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,cAAc,EAAE,IAAI,CAAC,cAAc;YACnC,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,OAAO,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM,KAAK,CAAC;YACjC,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS;YACxD,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS;SAC/D,CAAC;IACJ,CAAC;CACF;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,sBAAsB;IACpC,OAAO,IAAI,gBAAgB,EAAE,CAAC;AAChC,CAAC"}
1
+ {"version":3,"file":"changeset-builder.js","sourceRoot":"","sources":["../../../src/infrastructure/changeset/changeset-builder.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"changeset-converter.d.ts","sourceRoot":"","sources":["../../../src/infrastructure/changeset/changeset-converter.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAuC,KAAK,SAAS,EAA0D,MAAM,YAAY,CAAC;AACzI,OAAO,KAAK,EACV,YAAY,EAIb,MAAM,qCAAqC,CAAC;AAE7C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kDAAkD,CAAC;AAkZpF;;;;;GAKG;AACH,wBAAsB,8BAA8B,CAClD,SAAS,EAAE,SAAS,EACpB,UAAU,EAAE,WAAW,GACtB,OAAO,CAAC,YAAY,CAAC,CA+BvB"}
1
+ {"version":3,"file":"changeset-converter.d.ts","sourceRoot":"","sources":["../../../src/infrastructure/changeset/changeset-converter.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAuC,KAAK,SAAS,EAA0D,MAAM,YAAY,CAAC;AACzI,OAAO,KAAK,EACV,YAAY,EAIb,MAAM,qCAAqC,CAAC;AAE7C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kDAAkD,CAAC;AAkZpF;;;;;GAKG;AACH,wBAAsB,8BAA8B,CAClD,SAAS,EAAE,SAAS,EACpB,UAAU,EAAE,WAAW,GACtB,OAAO,CAAC,YAAY,CAAC,CA0CvB"}
@@ -340,18 +340,22 @@ function convertWarningsToConflicts(warnings) {
340
340
  * @returns PreviewInput 物件
341
341
  */
342
342
  export async function convertChangesetToPreviewInput(changeset, fileSystem) {
343
+ // 批次處理文字變更
344
+ const textChangePromises = changeset.textChanges.map(tc => convertFileTextChange(tc, fileSystem));
345
+ // 批次處理檔案操作
346
+ const fileOpPromises = changeset.fileOperations.map(op => convertFileOperation(op, fileSystem));
347
+ // 並行執行所有 I/O
348
+ const [textResults, opResults] = await Promise.all([
349
+ Promise.all(textChangePromises),
350
+ Promise.all(fileOpPromises)
351
+ ]);
343
352
  const fileChanges = [];
344
- // 轉換文字變更
345
- for (const textChange of changeset.textChanges) {
346
- const converted = await convertFileTextChange(textChange, fileSystem);
347
- // 只加入有實際變更的檔案
353
+ for (const converted of textResults) {
348
354
  if (converted.changes.length > 0) {
349
355
  fileChanges.push(converted);
350
356
  }
351
357
  }
352
- // 轉換檔案操作
353
- for (const operation of changeset.fileOperations) {
354
- const converted = await convertFileOperation(operation, fileSystem);
358
+ for (const converted of opResults) {
355
359
  if (converted !== null && converted.changes.length > 0) {
356
360
  fileChanges.push(converted);
357
361
  }
@@ -1 +1 @@
1
- {"version":3,"file":"changeset-converter.js","sourceRoot":"","sources":["../../../src/infrastructure/changeset/changeset-converter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"changeset-converter.js","sourceRoot":"","sources":["../../../src/infrastructure/changeset/changeset-converter.ts"],"names":[],"mappings":"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"}
@@ -9,8 +9,8 @@ import { ChangeLineType, PreviewCommand } from './types.js';
9
9
  */
10
10
  export function generatePreviewResult(input, contextLines = 3) {
11
11
  const files = input.fileChanges.map(fc => generateFileChange(fc, contextLines));
12
- const baseSummary = calculateSummary(files);
13
- const fileSummaries = generateFileSummaries(files, getDefaultChangeType(input.command));
12
+ // 單次遍歷同時計算總統計和檔案級統計
13
+ const { baseSummary, fileSummaries } = calculateSummaryAndFileSummaries(files, getDefaultChangeType(input.command));
14
14
  // 擴展 summary 以包含 rename 專用欄位
15
15
  const conflictCount = input.conflicts?.length ?? 0;
16
16
  const summary = {
@@ -222,58 +222,47 @@ function formatHunkHeader(oldStart, oldCount, newStart, newCount) {
222
222
  return `@@ -${oldPart} +${newPart} @@`;
223
223
  }
224
224
  /**
225
- * 計算變更統計摘要
225
+ * 單次遍歷同時計算總統計和檔案級統計
226
226
  */
227
- function calculateSummary(files) {
227
+ function calculateSummaryAndFileSummaries(files, defaultChangeType) {
228
228
  let totalChanges = 0;
229
- let additions = 0;
230
- let deletions = 0;
231
- files.forEach(file => {
232
- file.hunks.forEach(hunk => {
233
- hunk.lines.forEach(line => {
229
+ let totalAdditions = 0;
230
+ let totalDeletions = 0;
231
+ const fileSummaries = [];
232
+ for (const file of files) {
233
+ let fileAdditions = 0;
234
+ let fileDeletions = 0;
235
+ for (const hunk of file.hunks) {
236
+ for (const line of hunk.lines) {
234
237
  if (line.type === ChangeLineType.Add) {
235
- additions++;
238
+ fileAdditions++;
239
+ totalAdditions++;
236
240
  totalChanges++;
237
241
  }
238
242
  else if (line.type === ChangeLineType.Delete) {
239
- deletions++;
243
+ fileDeletions++;
244
+ totalDeletions++;
240
245
  totalChanges++;
241
246
  }
242
- });
247
+ }
248
+ }
249
+ fileSummaries.push({
250
+ filePath: file.filePath,
251
+ changeType: defaultChangeType,
252
+ additions: fileAdditions,
253
+ deletions: fileDeletions
243
254
  });
244
- });
255
+ }
245
256
  return {
246
- totalFiles: files.length,
247
- totalChanges,
248
- additions,
249
- deletions
257
+ baseSummary: {
258
+ totalFiles: files.length,
259
+ totalChanges,
260
+ additions: totalAdditions,
261
+ deletions: totalDeletions
262
+ },
263
+ fileSummaries
250
264
  };
251
265
  }
252
- /**
253
- * 從 FileChange 生成檔案變更摘要列表
254
- */
255
- function generateFileSummaries(files, defaultChangeType) {
256
- return files.map(file => {
257
- let additions = 0;
258
- let deletions = 0;
259
- file.hunks.forEach(hunk => {
260
- hunk.lines.forEach(line => {
261
- if (line.type === ChangeLineType.Add) {
262
- additions++;
263
- }
264
- if (line.type === ChangeLineType.Delete) {
265
- deletions++;
266
- }
267
- });
268
- });
269
- return {
270
- filePath: file.filePath,
271
- changeType: defaultChangeType,
272
- additions,
273
- deletions
274
- };
275
- });
276
- }
277
266
  /**
278
267
  * 根據命令類型取得預設變更描述
279
268
  */
@@ -1 +1 @@
1
- {"version":3,"file":"diff-generator.js","sourceRoot":"","sources":["../../../src/infrastructure/formatters/diff-generator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"diff-generator.js","sourceRoot":"","sources":["../../../src/infrastructure/formatters/diff-generator.ts"],"names":[],"mappings":"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"}
@@ -20,10 +20,6 @@ export declare class QueryFormatter {
20
20
  private readonly color;
21
21
  private readonly strategies;
22
22
  constructor(options?: Partial<QueryFormatterOptions>);
23
- /**
24
- * 初始化策略 Map
25
- */
26
- private initializeStrategies;
27
23
  /**
28
24
  * 格式化結果
29
25
  */
@@ -37,7 +33,7 @@ export declare class QueryFormatter {
37
33
  */
38
34
  toSummary(result: QueryResult): string;
39
35
  /**
40
- * 取得策略(型別安全)
36
+ * 取得策略(延遲初始化)
41
37
  */
42
38
  private getStrategy;
43
39
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"query-formatter.d.ts","sourceRoot":"","sources":["../../../src/infrastructure/formatters/query-formatter.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAEL,KAAK,WAAW,EAOjB,MAAM,kBAAkB,CAAC;AAW1B,wBAAwB;AACxB,MAAM,WAAW,qBAAqB;IACpC,eAAe;IACf,KAAK,EAAE,OAAO,CAAC;CAChB;AAED,WAAW;AACX,oBAAY,WAAW;IACrB,IAAI,SAAS;IACb,OAAO,YAAY;CACpB;AAED;;GAEG;AACH,qBAAa,cAAc;IACzB,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAU;IAChC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAoC;gBAEnD,OAAO,GAAE,OAAO,CAAC,qBAAqB,CAAM;IAKxD;;OAEG;IACH,OAAO,CAAC,oBAAoB;IAW5B;;OAEG;IACH,MAAM,CAAC,MAAM,EAAE,WAAW,EAAE,YAAY,EAAE,WAAW,GAAG,MAAM;IAO9D;;OAEG;IACH,MAAM,CAAC,MAAM,EAAE,WAAW,GAAG,MAAM;IAInC;;OAEG;IACH,SAAS,CAAC,MAAM,EAAE,WAAW,GAAG,MAAM;IAsBtC;;OAEG;IACH,OAAO,CAAC,WAAW;IAInB;;OAEG;IACH,OAAO,CAAC,oBAAoB;CAqB7B;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,OAAO,GAAE,OAAO,CAAC,qBAAqB,CAAM,GAAG,cAAc,CAKjG"}
1
+ {"version":3,"file":"query-formatter.d.ts","sourceRoot":"","sources":["../../../src/infrastructure/formatters/query-formatter.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAEL,KAAK,WAAW,EAOjB,MAAM,kBAAkB,CAAC;AAW1B,wBAAwB;AACxB,MAAM,WAAW,qBAAqB;IACpC,eAAe;IACf,KAAK,EAAE,OAAO,CAAC;CAChB;AAED,WAAW;AACX,oBAAY,WAAW;IACrB,IAAI,SAAS;IACb,OAAO,YAAY;CACpB;AAED;;GAEG;AACH,qBAAa,cAAc;IACzB,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAU;IAChC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAoC;gBAEnD,OAAO,GAAE,OAAO,CAAC,qBAAqB,CAAM;IAMxD;;OAEG;IACH,MAAM,CAAC,MAAM,EAAE,WAAW,EAAE,YAAY,EAAE,WAAW,GAAG,MAAM;IAO9D;;OAEG;IACH,MAAM,CAAC,MAAM,EAAE,WAAW,GAAG,MAAM;IAInC;;OAEG;IACH,SAAS,CAAC,MAAM,EAAE,WAAW,GAAG,MAAM;IAsBtC;;OAEG;IACH,OAAO,CAAC,WAAW;IAsCnB;;OAEG;IACH,OAAO,CAAC,oBAAoB;CAqB7B;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,OAAO,GAAE,OAAO,CAAC,qBAAqB,CAAM,GAAG,cAAc,CAKjG"}
@@ -18,20 +18,8 @@ export class QueryFormatter {
18
18
  strategies;
19
19
  constructor(options = {}) {
20
20
  this.color = options.color ?? false;
21
- this.strategies = this.initializeStrategies();
22
- }
23
- /**
24
- * 初始化策略 Map
25
- */
26
- initializeStrategies() {
27
- return new Map([
28
- [QueryCommand.Search, new SearchFormatter(this.color)],
29
- [QueryCommand.Deps, new DepsFormatter(this.color)],
30
- [QueryCommand.Analyze, new AnalyzeFormatter(this.color)],
31
- [QueryCommand.Snapshot, new SnapshotFormatter(this.color)],
32
- [QueryCommand.FindReferences, new FindReferencesFormatter(this.color)],
33
- [QueryCommand.CallHierarchy, new CallHierarchyFormatter(this.color)]
34
- ]);
21
+ // 延遲初始化:建構時不建立策略實例
22
+ this.strategies = new Map();
35
23
  }
36
24
  /**
37
25
  * 格式化結果
@@ -73,10 +61,42 @@ export class QueryFormatter {
73
61
  return this.formatDefaultSummary({ ...result, command: _exhaustiveCheck });
74
62
  }
75
63
  /**
76
- * 取得策略(型別安全)
64
+ * 取得策略(延遲初始化)
77
65
  */
78
66
  getStrategy(command) {
79
- return this.strategies.get(command);
67
+ // 檢查快取
68
+ let strategy = this.strategies.get(command);
69
+ if (strategy) {
70
+ return strategy;
71
+ }
72
+ // 首次使用時才建立對應的策略實例
73
+ switch (command) {
74
+ case QueryCommand.Search:
75
+ strategy = new SearchFormatter(this.color);
76
+ break;
77
+ case QueryCommand.Deps:
78
+ strategy = new DepsFormatter(this.color);
79
+ break;
80
+ case QueryCommand.Analyze:
81
+ strategy = new AnalyzeFormatter(this.color);
82
+ break;
83
+ case QueryCommand.Snapshot:
84
+ strategy = new SnapshotFormatter(this.color);
85
+ break;
86
+ case QueryCommand.FindReferences:
87
+ strategy = new FindReferencesFormatter(this.color);
88
+ break;
89
+ case QueryCommand.CallHierarchy:
90
+ strategy = new CallHierarchyFormatter(this.color);
91
+ break;
92
+ default: {
93
+ // Exhaustive check
94
+ const _exhaustiveCheck = command;
95
+ throw new Error(`Unknown command: ${_exhaustiveCheck}`);
96
+ }
97
+ }
98
+ this.strategies.set(command, strategy);
99
+ return strategy;
80
100
  }
81
101
  /**
82
102
  * 格式化預設摘要(fallback)
@@ -1 +1 @@
1
- {"version":3,"file":"query-formatter.js","sourceRoot":"","sources":["../../../src/infrastructure/formatters/query-formatter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"query-formatter.js","sourceRoot":"","sources":["../../../src/infrastructure/formatters/query-formatter.ts"],"names":[],"mappings":"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"}
@@ -121,6 +121,12 @@ export declare class ParserRegistry {
121
121
  * 清理所有 Parser 並釋放資源
122
122
  */
123
123
  dispose(): Promise<void>;
124
+ /**
125
+ * 使用二元搜尋找到插入位置並插入(按優先級降序排列)
126
+ * @param array 已排序的陣列(高優先級在前)
127
+ * @param item 要插入的項目
128
+ */
129
+ private insertSorted;
124
130
  /**
125
131
  * 檢查註冊中心是否已被清理
126
132
  */
@@ -1 +1 @@
1
- {"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../../src/infrastructure/parser/registry.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qCAAqC,CAAC;AAQxE;;;GAGG;AACH,MAAM,WAAW,UAAU;IACzB,kBAAkB;IAClB,QAAQ,CAAC,MAAM,EAAE,YAAY,CAAC;IAE9B,WAAW;IACX,QAAQ,CAAC,YAAY,EAAE,IAAI,CAAC;IAE5B,qBAAqB;IACrB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAE1B,gBAAgB;IAChB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAEtB,gBAAgB;IAChB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IAEzB,aAAa;IACb,QAAQ,CAAC,mBAAmB,EAAE,SAAS,MAAM,EAAE,CAAC;IAEhD,YAAY;IACZ,QAAQ,CAAC,kBAAkB,EAAE,SAAS,MAAM,EAAE,CAAC;CAChD;AAED;;GAEG;AACH,MAAM,WAAW,yBAAyB;IACxC,iBAAiB;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB,gCAAgC;IAChC,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED;;;GAGG;AACH,qBAAa,cAAc;IACzB,OAAO,CAAC,MAAM,CAAC,QAAQ,CAA+B;IAEtD,4BAA4B;IAC5B,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAiC;IAEzD,uBAAuB;IACvB,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAmC;IAEhE,sBAAsB;IACtB,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAmC;IAE/D,aAAa;IACb,OAAO,CAAC,WAAW,CAAS;IAE5B,aAAa;IACb,OAAO,CAAC,QAAQ,CAAS;IAEzB;;OAEG;IACH,OAAO;IAEP;;OAEG;IACH,MAAM,CAAC,WAAW,IAAI,cAAc;IAOpC;;OAEG;IACH,MAAM,CAAC,aAAa,IAAI,IAAI;IAS5B;;;;OAIG;IACH,QAAQ,CAAC,MAAM,EAAE,YAAY,EAAE,OAAO,GAAE,yBAA8B,GAAG,IAAI;IAyD7E;;;OAGG;IACH,UAAU,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI;IA4CpC;;;;OAIG;IACH,SAAS,CAAC,SAAS,EAAE,MAAM,GAAG,YAAY,GAAG,IAAI;IAOjD;;;;OAIG;IACH,mBAAmB,CAAC,QAAQ,EAAE,MAAM,GAAG,YAAY,GAAG,IAAI;IAO1D;;;;OAIG;IACH,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,YAAY,GAAG,IAAI;IAOlD;;;OAGG;IACH,sBAAsB,IAAI,MAAM,EAAE;IAKlC;;;OAGG;IACH,qBAAqB,IAAI,MAAM,EAAE;IAKjC;;;OAGG;IACH,WAAW,IAAI,UAAU,EAAE;IAO3B;;;;;OAKG;IACH,YAAY,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO;IAc1D;;;OAGG;IACG,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IA6BjC;;;OAGG;IACG,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IA4B9B;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAMxB;;OAEG;IACH,IAAI,aAAa,IAAI,OAAO,CAE3B;IAED;;OAEG;IACH,IAAI,UAAU,IAAI,OAAO,CAExB;IAED;;OAEG;IACH,IAAI,IAAI,IAAI,MAAM,CAEjB;CACF"}
1
+ {"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../../src/infrastructure/parser/registry.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qCAAqC,CAAC;AAQxE;;;GAGG;AACH,MAAM,WAAW,UAAU;IACzB,kBAAkB;IAClB,QAAQ,CAAC,MAAM,EAAE,YAAY,CAAC;IAE9B,WAAW;IACX,QAAQ,CAAC,YAAY,EAAE,IAAI,CAAC;IAE5B,qBAAqB;IACrB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAE1B,gBAAgB;IAChB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAEtB,gBAAgB;IAChB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IAEzB,aAAa;IACb,QAAQ,CAAC,mBAAmB,EAAE,SAAS,MAAM,EAAE,CAAC;IAEhD,YAAY;IACZ,QAAQ,CAAC,kBAAkB,EAAE,SAAS,MAAM,EAAE,CAAC;CAChD;AAED;;GAEG;AACH,MAAM,WAAW,yBAAyB;IACxC,iBAAiB;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB,gCAAgC;IAChC,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED;;;GAGG;AACH,qBAAa,cAAc;IACzB,OAAO,CAAC,MAAM,CAAC,QAAQ,CAA+B;IAEtD,4BAA4B;IAC5B,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAiC;IAEzD,uBAAuB;IACvB,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAmC;IAEhE,sBAAsB;IACtB,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAmC;IAE/D,aAAa;IACb,OAAO,CAAC,WAAW,CAAS;IAE5B,aAAa;IACb,OAAO,CAAC,QAAQ,CAAS;IAEzB;;OAEG;IACH,OAAO;IAEP;;OAEG;IACH,MAAM,CAAC,WAAW,IAAI,cAAc;IAOpC;;OAEG;IACH,MAAM,CAAC,aAAa,IAAI,IAAI;IAS5B;;;;OAIG;IACH,QAAQ,CAAC,MAAM,EAAE,YAAY,EAAE,OAAO,GAAE,yBAA8B,GAAG,IAAI;IAqD7E;;;OAGG;IACH,UAAU,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI;IA4CpC;;;;OAIG;IACH,SAAS,CAAC,SAAS,EAAE,MAAM,GAAG,YAAY,GAAG,IAAI;IAOjD;;;;OAIG;IACH,mBAAmB,CAAC,QAAQ,EAAE,MAAM,GAAG,YAAY,GAAG,IAAI;IAO1D;;;;OAIG;IACH,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,YAAY,GAAG,IAAI;IAOlD;;;OAGG;IACH,sBAAsB,IAAI,MAAM,EAAE;IAKlC;;;OAGG;IACH,qBAAqB,IAAI,MAAM,EAAE;IAKjC;;;OAGG;IACH,WAAW,IAAI,UAAU,EAAE;IAO3B;;;;;OAKG;IACH,YAAY,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO;IAc1D;;;OAGG;IACG,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IA6BjC;;;OAGG;IACG,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IA4B9B;;;;OAIG;IACH,OAAO,CAAC,YAAY;IAkBpB;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAMxB;;OAEG;IACH,IAAI,aAAa,IAAI,OAAO,CAE3B;IAED;;OAEG;IACH,IAAI,UAAU,IAAI,OAAO,CAExB;IAED;;OAEG;IACH,IAAI,IAAI,IAAI,MAAM,CAEjB;CACF"}
@@ -75,25 +75,21 @@ export class ParserRegistry {
75
75
  };
76
76
  // 註冊到主表
77
77
  this.parsers.set(plugin.name, parserInfo);
78
- // 建立副檔名索引
78
+ // 建立副檔名索引(使用二元搜尋插入)
79
79
  for (const extension of plugin.supportedExtensions) {
80
80
  if (!this.extensionMap.has(extension)) {
81
81
  this.extensionMap.set(extension, []);
82
82
  }
83
83
  const extensionParsers = this.extensionMap.get(extension);
84
- extensionParsers.push(parserInfo);
85
- // 按優先級排序(高優先級在前)
86
- extensionParsers.sort((a, b) => b.priority - a.priority);
84
+ this.insertSorted(extensionParsers, parserInfo);
87
85
  }
88
- // 建立語言索引
86
+ // 建立語言索引(使用二元搜尋插入)
89
87
  for (const language of plugin.supportedLanguages) {
90
88
  if (!this.languageMap.has(language)) {
91
89
  this.languageMap.set(language, []);
92
90
  }
93
91
  const languageParsers = this.languageMap.get(language);
94
- languageParsers.push(parserInfo);
95
- // 按優先級排序(高優先級在前)
96
- languageParsers.sort((a, b) => b.priority - a.priority);
92
+ this.insertSorted(languageParsers, parserInfo);
97
93
  }
98
94
  }
99
95
  /**
@@ -259,6 +255,27 @@ export class ParserRegistry {
259
255
  this.initialized = false;
260
256
  }
261
257
  // ===== 內部工具方法 =====
258
+ /**
259
+ * 使用二元搜尋找到插入位置並插入(按優先級降序排列)
260
+ * @param array 已排序的陣列(高優先級在前)
261
+ * @param item 要插入的項目
262
+ */
263
+ insertSorted(array, item) {
264
+ let left = 0;
265
+ let right = array.length;
266
+ // 二元搜尋找到插入位置
267
+ while (left < right) {
268
+ const mid = Math.floor((left + right) / 2);
269
+ if (array[mid].priority > item.priority) {
270
+ left = mid + 1;
271
+ }
272
+ else {
273
+ right = mid;
274
+ }
275
+ }
276
+ // 在找到的位置插入
277
+ array.splice(left, 0, item);
278
+ }
262
279
  /**
263
280
  * 檢查註冊中心是否已被清理
264
281
  */
@@ -1 +1 @@
1
- {"version":3,"file":"registry.js","sourceRoot":"","sources":["../../../src/infrastructure/parser/registry.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"registry.js","sourceRoot":"","sources":["../../../src/infrastructure/parser/registry.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"file-system.d.ts","sourceRoot":"","sources":["../../../src/infrastructure/storage/file-system.ts"],"names":[],"mappings":"AAGA,OAAO,EACL,cAAc,EACd,SAAS,EACT,WAAW,EAKX,kBAAkB,EACnB,MAAM,YAAY,CAAC;AACpB,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kDAAkD,CAAC;AAQpF;;;GAGG;AACH,qBAAa,UAAW,YAAW,WAAW;IAC5C,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAU;IAErC;;OAEG;IACG,QAAQ,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC,MAAM,GAAG,MAAM,CAAC;IAkBrF;;;OAGG;IACG,SAAS,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,EAAE,OAAO,CAAC,EAAE,kBAAkB,GAAG,OAAO,CAAC,IAAI,CAAC;IAsBxG;;OAEG;YACW,WAAW;IA2BzB;;OAEG;IACG,UAAU,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAe3E;;OAEG;IACG,UAAU,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAejD;;OAEG;IACG,eAAe,CAAC,OAAO,EAAE,MAAM,EAAE,SAAS,UAAQ,GAAG,OAAO,CAAC,IAAI,CAAC;IAgBxE;;OAEG;IACG,aAAa,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,EAAE,CAAC;IAgC/D;;OAEG;IACG,eAAe,CAAC,OAAO,EAAE,MAAM,EAAE,SAAS,UAAQ,GAAG,OAAO,CAAC,IAAI,CAAC;IAsBxE;;OAEG;IACG,MAAM,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IASlD;;OAEG;IACG,QAAQ,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC;IA0BtD;;OAEG;YACW,YAAY;IAQ1B;;OAEG;IACG,MAAM,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IASlD;;OAEG;IACG,WAAW,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IASvD;;OAEG;IACG,QAAQ,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAmBhE;;OAEG;IACG,QAAQ,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAyBhE;;OAEG;IACG,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,GAAE,WAAgB,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;CAe1E"}
1
+ {"version":3,"file":"file-system.d.ts","sourceRoot":"","sources":["../../../src/infrastructure/storage/file-system.ts"],"names":[],"mappings":"AAGA,OAAO,EACL,cAAc,EACd,SAAS,EACT,WAAW,EAKX,kBAAkB,EACnB,MAAM,YAAY,CAAC;AACpB,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kDAAkD,CAAC;AAQpF;;;GAGG;AACH,qBAAa,UAAW,YAAW,WAAW;IAC5C,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAU;IAErC;;OAEG;IACG,QAAQ,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC,MAAM,GAAG,MAAM,CAAC;IAkBrF;;;OAGG;IACG,SAAS,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,EAAE,OAAO,CAAC,EAAE,kBAAkB,GAAG,OAAO,CAAC,IAAI,CAAC;IAsBxG;;OAEG;YACW,WAAW;IA2BzB;;OAEG;IACG,UAAU,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAe3E;;OAEG;IACG,UAAU,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAejD;;OAEG;IACG,eAAe,CAAC,OAAO,EAAE,MAAM,EAAE,SAAS,UAAQ,GAAG,OAAO,CAAC,IAAI,CAAC;IAgBxE;;OAEG;IACG,aAAa,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,EAAE,CAAC;IA0C/D;;OAEG;IACG,eAAe,CAAC,OAAO,EAAE,MAAM,EAAE,SAAS,UAAQ,GAAG,OAAO,CAAC,IAAI,CAAC;IAsBxE;;OAEG;IACG,MAAM,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IASlD;;OAEG;IACG,QAAQ,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC;IA0BtD;;OAEG;YACW,YAAY;IAQ1B;;OAEG;IACG,MAAM,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IASlD;;OAEG;IACG,WAAW,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IASvD;;OAEG;IACG,QAAQ,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAmBhE;;OAEG;IACG,QAAQ,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAyBhE;;OAEG;IACG,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,GAAE,WAAgB,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;CAe1E"}
@@ -148,14 +148,22 @@ export class FileSystem {
148
148
  const result = [];
149
149
  for (const entry of entries) {
150
150
  const entryPath = path.join(dirPath, entry.name);
151
- const stats = await this.safeGetStats(entryPath);
151
+ // 直接使用 dirent isFile/isDirectory,無需額外 stat
152
+ // 若需要 size/modifiedTime,僅在需要時才呼叫 stat
153
+ let size;
154
+ let modifiedTime;
155
+ if (entry.isFile()) {
156
+ const stats = await this.safeGetStats(entryPath);
157
+ size = stats?.size;
158
+ modifiedTime = stats?.modifiedTime;
159
+ }
152
160
  result.push({
153
161
  name: entry.name,
154
162
  path: entryPath,
155
163
  isFile: entry.isFile(),
156
164
  isDirectory: entry.isDirectory(),
157
- size: stats?.size,
158
- modifiedTime: stats?.modifiedTime,
165
+ size,
166
+ modifiedTime,
159
167
  });
160
168
  }
161
169
  return result;
@@ -1 +1 @@
1
- {"version":3,"file":"file-system.js","sourceRoot":"","sources":["../../../src/infrastructure/storage/file-system.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"file-system.js","sourceRoot":"","sources":["../../../src/infrastructure/storage/file-system.ts"],"names":[],"mappings":"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"}
@@ -9,6 +9,22 @@ import type { Range } from '../../shared/types/index.js';
9
9
  * 提供宣告範圍、import 解析、函數簽章和 JSDoc 文件提取功能
10
10
  */
11
11
  export declare class DeclarationAnalyzer {
12
+ /** AST 快取(hash -> AST) */
13
+ private astCache;
14
+ /** 最大快取項目數 */
15
+ private static readonly MAX_CACHE_SIZE;
16
+ /**
17
+ * 計算程式碼雜湊(簡易版本)
18
+ */
19
+ private computeHash;
20
+ /**
21
+ * 解析並快取 AST
22
+ */
23
+ private parseWithCache;
24
+ /**
25
+ * 清除 AST 快取
26
+ */
27
+ clearCache(): void;
12
28
  /**
13
29
  * 取得符號的完整宣告範圍(包含前導註解)
14
30
  * @param code - 原始程式碼
@@ -1 +1 @@
1
- {"version":3,"file":"declaration-analyzer.d.ts","sourceRoot":"","sources":["../../../src/plugins/javascript/declaration-analyzer.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAMH,OAAO,KAAK,EACV,iBAAiB,EAEjB,kBAAkB,EAElB,aAAa,EACd,MAAM,iCAAiC,CAAC;AACzC,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,wBAAwB,CAAC;AAMpD;;;GAGG;AACH,qBAAa,mBAAmB;IAC9B;;;;;;;OAOG;IACH,uBAAuB,CACrB,IAAI,EAAE,MAAM,EACZ,UAAU,EAAE,MAAM,EAClB,UAAU,EAAE,MAAM,EAClB,SAAS,EAAE,MAAM,GAChB,KAAK,GAAG,IAAI;IAmGf;;;;OAIG;IACH,qBAAqB,CAAC,IAAI,EAAE,MAAM,GAAG,iBAAiB,EAAE,GAAG,IAAI;IAwB/D;;;;;;;OAOG;IACH,eAAe,CACb,IAAI,EAAE,MAAM,EACZ,YAAY,EAAE,MAAM,EACpB,IAAI,EAAE,MAAM,GACX,kBAAkB,GAAG,IAAI;IAqD5B;;;;;;;OAOG;IACH,gBAAgB,CACd,IAAI,EAAE,MAAM,EACZ,UAAU,EAAE,MAAM,EAClB,UAAU,EAAE,MAAM,EAClB,IAAI,EAAE,MAAM,GACX,aAAa,GAAG,IAAI;IA2EvB;;OAEG;IACH,OAAO,CAAC,eAAe;IAKvB;;OAEG;IACH,OAAO,CAAC,2BAA2B;IA6DnC;;OAEG;IACH,OAAO,CAAC,6BAA6B;CAyDtC"}
1
+ {"version":3,"file":"declaration-analyzer.d.ts","sourceRoot":"","sources":["../../../src/plugins/javascript/declaration-analyzer.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAMH,OAAO,KAAK,EACV,iBAAiB,EAEjB,kBAAkB,EAElB,aAAa,EACd,MAAM,iCAAiC,CAAC;AACzC,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,wBAAwB,CAAC;AAcpD;;;GAGG;AACH,qBAAa,mBAAmB;IAC9B,0BAA0B;IAC1B,OAAO,CAAC,QAAQ,CAAyC;IAEzD,cAAc;IACd,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,cAAc,CAAM;IAE5C;;OAEG;IACH,OAAO,CAAC,WAAW;IAInB;;OAEG;IACH,OAAO,CAAC,cAAc;IA8BtB;;OAEG;IACH,UAAU,IAAI,IAAI;IAIlB;;;;;;;OAOG;IACH,uBAAuB,CACrB,IAAI,EAAE,MAAM,EACZ,UAAU,EAAE,MAAM,EAClB,UAAU,EAAE,MAAM,EAClB,SAAS,EAAE,MAAM,GAChB,KAAK,GAAG,IAAI;IAwGf;;;;OAIG;IACH,qBAAqB,CAAC,IAAI,EAAE,MAAM,GAAG,iBAAiB,EAAE,GAAG,IAAI;IAwB/D;;;;;;;OAOG;IACH,eAAe,CACb,IAAI,EAAE,MAAM,EACZ,YAAY,EAAE,MAAM,EACpB,IAAI,EAAE,MAAM,GACX,kBAAkB,GAAG,IAAI;IAqD5B;;;;;;;OAOG;IACH,gBAAgB,CACd,IAAI,EAAE,MAAM,EACZ,UAAU,EAAE,MAAM,EAClB,UAAU,EAAE,MAAM,EAClB,IAAI,EAAE,MAAM,GACX,aAAa,GAAG,IAAI;IA2EvB;;OAEG;IACH,OAAO,CAAC,eAAe;IAKvB;;OAEG;IACH,OAAO,CAAC,2BAA2B;IA6DnC;;OAEG;IACH,OAAO,CAAC,6BAA6B;CAyDtC"}