agent-ide 0.8.2 → 0.9.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (177) hide show
  1. package/dist/core/change-signature/call-site-updater.d.ts +108 -0
  2. package/dist/core/change-signature/call-site-updater.d.ts.map +1 -0
  3. package/dist/core/change-signature/call-site-updater.js +347 -0
  4. package/dist/core/change-signature/call-site-updater.js.map +1 -0
  5. package/dist/core/change-signature/change-signature-service.d.ts +4 -55
  6. package/dist/core/change-signature/change-signature-service.d.ts.map +1 -1
  7. package/dist/core/change-signature/change-signature-service.js +17 -483
  8. package/dist/core/change-signature/change-signature-service.js.map +1 -1
  9. package/dist/core/change-signature/index.d.ts +4 -0
  10. package/dist/core/change-signature/index.d.ts.map +1 -1
  11. package/dist/core/change-signature/index.js +5 -0
  12. package/dist/core/change-signature/index.js.map +1 -1
  13. package/dist/core/change-signature/signature-transformer.d.ts +20 -0
  14. package/dist/core/change-signature/signature-transformer.d.ts.map +1 -0
  15. package/dist/core/change-signature/signature-transformer.js +91 -0
  16. package/dist/core/change-signature/signature-transformer.js.map +1 -0
  17. package/dist/core/change-signature/signature-validator.d.ts +30 -0
  18. package/dist/core/change-signature/signature-validator.d.ts.map +1 -0
  19. package/dist/core/change-signature/signature-validator.js +152 -0
  20. package/dist/core/change-signature/signature-validator.js.map +1 -0
  21. package/dist/core/change-signature/utils.d.ts +19 -0
  22. package/dist/core/change-signature/utils.d.ts.map +1 -0
  23. package/dist/core/change-signature/utils.js +23 -0
  24. package/dist/core/change-signature/utils.js.map +1 -0
  25. package/dist/core/cycles/cycle-detector.d.ts.map +1 -1
  26. package/dist/core/cycles/cycle-detector.js +16 -8
  27. package/dist/core/cycles/cycle-detector.js.map +1 -1
  28. package/dist/core/cycles/index.d.ts +1 -1
  29. package/dist/core/cycles/index.d.ts.map +1 -1
  30. package/dist/core/cycles/index.js +1 -1
  31. package/dist/core/cycles/index.js.map +1 -1
  32. package/dist/core/cycles/types.d.ts +20 -4
  33. package/dist/core/cycles/types.d.ts.map +1 -1
  34. package/dist/core/cycles/types.js +22 -4
  35. package/dist/core/cycles/types.js.map +1 -1
  36. package/dist/core/deadcode/dead-code-remover.js +4 -4
  37. package/dist/core/deadcode/dead-code-remover.js.map +1 -1
  38. package/dist/core/impact/dependency-extractor.d.ts +25 -0
  39. package/dist/core/impact/dependency-extractor.d.ts.map +1 -0
  40. package/dist/core/impact/dependency-extractor.js +65 -0
  41. package/dist/core/impact/dependency-extractor.js.map +1 -0
  42. package/dist/core/impact/file-scanner.d.ts +52 -0
  43. package/dist/core/impact/file-scanner.d.ts.map +1 -0
  44. package/dist/core/impact/file-scanner.js +131 -0
  45. package/dist/core/impact/file-scanner.js.map +1 -0
  46. package/dist/core/impact/impact-analyzer.d.ts +3 -64
  47. package/dist/core/impact/impact-analyzer.d.ts.map +1 -1
  48. package/dist/core/impact/impact-analyzer.js +13 -312
  49. package/dist/core/impact/impact-analyzer.js.map +1 -1
  50. package/dist/core/impact/index.d.ts +3 -0
  51. package/dist/core/impact/index.d.ts.map +1 -1
  52. package/dist/core/impact/index.js +3 -0
  53. package/dist/core/impact/index.js.map +1 -1
  54. package/dist/core/impact/path-resolver.d.ts +35 -0
  55. package/dist/core/impact/path-resolver.d.ts.map +1 -0
  56. package/dist/core/impact/path-resolver.js +166 -0
  57. package/dist/core/impact/path-resolver.js.map +1 -0
  58. package/dist/core/move/file-scanner.d.ts +48 -0
  59. package/dist/core/move/file-scanner.d.ts.map +1 -0
  60. package/dist/core/move/file-scanner.js +137 -0
  61. package/dist/core/move/file-scanner.js.map +1 -0
  62. package/dist/core/move/import-resolver.d.ts +5 -0
  63. package/dist/core/move/import-resolver.d.ts.map +1 -1
  64. package/dist/core/move/import-resolver.js +24 -6
  65. package/dist/core/move/import-resolver.js.map +1 -1
  66. package/dist/core/move/index.d.ts +7 -3
  67. package/dist/core/move/index.d.ts.map +1 -1
  68. package/dist/core/move/index.js +7 -2
  69. package/dist/core/move/index.js.map +1 -1
  70. package/dist/core/move/move-service.d.ts +11 -60
  71. package/dist/core/move/move-service.d.ts.map +1 -1
  72. package/dist/core/move/move-service.js +16 -352
  73. package/dist/core/move/move-service.js.map +1 -1
  74. package/dist/core/move/path-calculator.d.ts +49 -0
  75. package/dist/core/move/path-calculator.d.ts.map +1 -0
  76. package/dist/core/move/path-calculator.js +158 -0
  77. package/dist/core/move/path-calculator.js.map +1 -0
  78. package/dist/core/move/path-parser.d.ts +33 -0
  79. package/dist/core/move/path-parser.d.ts.map +1 -0
  80. package/dist/core/move/path-parser.js +53 -0
  81. package/dist/core/move/path-parser.js.map +1 -0
  82. package/dist/core/move/path-utils.d.ts +70 -0
  83. package/dist/core/move/path-utils.d.ts.map +1 -0
  84. package/dist/core/move/path-utils.js +201 -0
  85. package/dist/core/move/path-utils.js.map +1 -0
  86. package/dist/core/move/types.d.ts +81 -18
  87. package/dist/core/move/types.d.ts.map +1 -1
  88. package/dist/core/move/types.js +73 -5
  89. package/dist/core/move/types.js.map +1 -1
  90. package/dist/core/move-member/change-applier.d.ts +23 -0
  91. package/dist/core/move-member/change-applier.d.ts.map +1 -0
  92. package/dist/core/move-member/change-applier.js +51 -0
  93. package/dist/core/move-member/change-applier.js.map +1 -0
  94. package/dist/core/move-member/file-change-preparer.d.ts +49 -0
  95. package/dist/core/move-member/file-change-preparer.d.ts.map +1 -0
  96. package/dist/core/move-member/file-change-preparer.js +340 -0
  97. package/dist/core/move-member/file-change-preparer.js.map +1 -0
  98. package/dist/core/move-member/index.d.ts +4 -1
  99. package/dist/core/move-member/index.d.ts.map +1 -1
  100. package/dist/core/move-member/index.js +3 -0
  101. package/dist/core/move-member/index.js.map +1 -1
  102. package/dist/core/move-member/member-extractor.d.ts +11 -0
  103. package/dist/core/move-member/member-extractor.d.ts.map +1 -1
  104. package/dist/core/move-member/member-extractor.js +114 -22
  105. package/dist/core/move-member/member-extractor.js.map +1 -1
  106. package/dist/core/move-member/move-member-service.d.ts +3 -78
  107. package/dist/core/move-member/move-member-service.d.ts.map +1 -1
  108. package/dist/core/move-member/move-member-service.js +35 -419
  109. package/dist/core/move-member/move-member-service.js.map +1 -1
  110. package/dist/core/move-member/reference-updater.d.ts +73 -0
  111. package/dist/core/move-member/reference-updater.d.ts.map +1 -0
  112. package/dist/core/move-member/reference-updater.js +286 -0
  113. package/dist/core/move-member/reference-updater.js.map +1 -0
  114. package/dist/core/move-member/types.d.ts +17 -2
  115. package/dist/core/move-member/types.d.ts.map +1 -1
  116. package/dist/core/move-member/types.js.map +1 -1
  117. package/dist/core/rename/reference-updater.d.ts.map +1 -1
  118. package/dist/core/rename/reference-updater.js +4 -1
  119. package/dist/core/rename/reference-updater.js.map +1 -1
  120. package/dist/core/rename/rename-engine.d.ts +5 -3
  121. package/dist/core/rename/rename-engine.d.ts.map +1 -1
  122. package/dist/core/rename/rename-engine.js +29 -8
  123. package/dist/core/rename/rename-engine.js.map +1 -1
  124. package/dist/core/shared/symbol-finder/symbol-finder.d.ts.map +1 -1
  125. package/dist/core/shared/symbol-finder/symbol-finder.js +9 -1
  126. package/dist/core/shared/symbol-finder/symbol-finder.js.map +1 -1
  127. package/dist/infrastructure/changeset/change-applicator.d.ts +1 -1
  128. package/dist/infrastructure/changeset/change-applicator.d.ts.map +1 -1
  129. package/dist/infrastructure/changeset/change-applicator.js +22 -21
  130. package/dist/infrastructure/changeset/change-applicator.js.map +1 -1
  131. package/dist/infrastructure/changeset/changeset-builder.d.ts +2 -2
  132. package/dist/infrastructure/changeset/changeset-builder.d.ts.map +1 -1
  133. package/dist/infrastructure/changeset/changeset-builder.js +11 -6
  134. package/dist/infrastructure/changeset/changeset-builder.js.map +1 -1
  135. package/dist/infrastructure/changeset/changeset-converter.d.ts +1 -1
  136. package/dist/infrastructure/changeset/changeset-converter.d.ts.map +1 -1
  137. package/dist/infrastructure/changeset/changeset-converter.js +9 -8
  138. package/dist/infrastructure/changeset/changeset-converter.js.map +1 -1
  139. package/dist/infrastructure/changeset/index.d.ts +1 -0
  140. package/dist/infrastructure/changeset/index.d.ts.map +1 -1
  141. package/dist/infrastructure/changeset/index.js +2 -0
  142. package/dist/infrastructure/changeset/index.js.map +1 -1
  143. package/dist/infrastructure/changeset/types.d.ts +41 -4
  144. package/dist/infrastructure/changeset/types.d.ts.map +1 -1
  145. package/dist/infrastructure/changeset/types.js +41 -1
  146. package/dist/infrastructure/changeset/types.js.map +1 -1
  147. package/dist/interfaces/cli/cli.d.ts.map +1 -1
  148. package/dist/interfaces/cli/cli.js +1 -2
  149. package/dist/interfaces/cli/cli.js.map +1 -1
  150. package/dist/interfaces/cli/commands/index.d.ts +0 -1
  151. package/dist/interfaces/cli/commands/index.d.ts.map +1 -1
  152. package/dist/interfaces/cli/commands/index.js +0 -1
  153. package/dist/interfaces/cli/commands/index.js.map +1 -1
  154. package/dist/interfaces/cli/commands/move.command.d.ts +1 -0
  155. package/dist/interfaces/cli/commands/move.command.d.ts.map +1 -1
  156. package/dist/interfaces/cli/commands/move.command.js +127 -11
  157. package/dist/interfaces/cli/commands/move.command.js.map +1 -1
  158. package/dist/interfaces/cli/commands/rename.command.d.ts.map +1 -1
  159. package/dist/interfaces/cli/commands/rename.command.js +114 -6
  160. package/dist/interfaces/cli/commands/rename.command.js.map +1 -1
  161. package/dist/plugins/javascript/declaration-analyzer.d.ts.map +1 -1
  162. package/dist/plugins/javascript/declaration-analyzer.js +9 -0
  163. package/dist/plugins/javascript/declaration-analyzer.js.map +1 -1
  164. package/dist/plugins/typescript/declaration-analyzer.d.ts.map +1 -1
  165. package/dist/plugins/typescript/declaration-analyzer.js +4 -0
  166. package/dist/plugins/typescript/declaration-analyzer.js.map +1 -1
  167. package/dist/plugins/typescript/reference-finder.d.ts.map +1 -1
  168. package/dist/plugins/typescript/reference-finder.js +11 -2
  169. package/dist/plugins/typescript/reference-finder.js.map +1 -1
  170. package/dist/plugins/typescript/symbol-extractor.d.ts.map +1 -1
  171. package/dist/plugins/typescript/symbol-extractor.js +6 -2
  172. package/dist/plugins/typescript/symbol-extractor.js.map +1 -1
  173. package/package.json +1 -1
  174. package/dist/interfaces/cli/commands/move-member.command.d.ts +0 -11
  175. package/dist/interfaces/cli/commands/move-member.command.d.ts.map +0 -1
  176. package/dist/interfaces/cli/commands/move-member.command.js +0 -140
  177. package/dist/interfaces/cli/commands/move-member.command.js.map +0 -1
@@ -28,9 +28,71 @@ export declare enum PathType {
28
28
  ALIAS = "alias"
29
29
  }
30
30
  /**
31
- * 完整的移動操作定義 - 給內部引擎使用
31
+ * 路徑衝突類型
32
32
  */
33
- export interface FullMoveOperation {
33
+ export declare enum PathConflictType {
34
+ FILE_EXISTS = "file_exists",
35
+ DIRECTORY_EXISTS = "directory_exists",
36
+ PERMISSION_DENIED = "permission_denied"
37
+ }
38
+ /**
39
+ * 驗證錯誤類型
40
+ */
41
+ export declare enum ValidationErrorType {
42
+ SOURCE_NOT_FOUND = "source_not_found",
43
+ DESTINATION_EXISTS = "destination_exists",
44
+ PERMISSION_DENIED = "permission_denied",
45
+ INVALID_PATH = "invalid_path"
46
+ }
47
+ /**
48
+ * 驗證警告類型
49
+ */
50
+ export declare enum ValidationWarningType {
51
+ MANY_FILES_AFFECTED = "many_files_affected",
52
+ POTENTIAL_BREAKING_CHANGE = "potential_breaking_change",
53
+ EXTERNAL_DEPENDENCY = "external_dependency"
54
+ }
55
+ /**
56
+ * 移動錯誤類型
57
+ */
58
+ export declare enum MoveErrorType {
59
+ FILE_SYSTEM = "file_system",
60
+ IMPORT_UPDATE = "import_update",
61
+ VALIDATION = "validation",
62
+ ROLLBACK = "rollback"
63
+ }
64
+ /**
65
+ * 回滾操作類型
66
+ */
67
+ export declare enum RollbackOperationType {
68
+ MOVE_FILE = "move_file",
69
+ RESTORE_CONTENT = "restore_content",
70
+ REVERT_IMPORT = "revert_import"
71
+ }
72
+ /**
73
+ * Import 語句類型
74
+ */
75
+ export declare enum ImportStatementType {
76
+ IMPORT = "import",
77
+ REQUIRE = "require",
78
+ DYNAMIC_IMPORT = "dynamic_import",
79
+ EXPORT = "export"
80
+ }
81
+ /**
82
+ * 移動進度階段
83
+ */
84
+ export declare enum MoveStage {
85
+ VALIDATION = "validation",
86
+ PREPARATION = "preparation",
87
+ MOVING = "moving",
88
+ UPDATING_IMPORTS = "updating_imports",
89
+ CLEANUP = "cleanup"
90
+ }
91
+ /**
92
+ * 內部移動操作定義 - 給內部引擎使用
93
+ * 包含完整的操作資訊(id、timestamp 等)
94
+ */
95
+ export interface InternalMoveOperation {
34
96
  readonly id: string;
35
97
  readonly type: MoveOperationType;
36
98
  readonly source: string;
@@ -53,7 +115,7 @@ export interface BatchMoveResult {
53
115
  * 移動預覽
54
116
  */
55
117
  export interface MovePreview {
56
- readonly operation: FullMoveOperation;
118
+ readonly operation: InternalMoveOperation;
57
119
  readonly impact: MoveImpact;
58
120
  readonly conflicts: readonly PathConflict[];
59
121
  readonly affectedFiles: readonly string[];
@@ -72,7 +134,7 @@ export interface MoveImpact {
72
134
  * 路徑衝突
73
135
  */
74
136
  export interface PathConflict {
75
- readonly type: 'file_exists' | 'directory_exists' | 'permission_denied';
137
+ readonly type: PathConflictType;
76
138
  readonly path: string;
77
139
  readonly description: string;
78
140
  }
@@ -108,7 +170,7 @@ export interface ValidationResult {
108
170
  * 驗證錯誤
109
171
  */
110
172
  export interface ValidationError {
111
- readonly type: 'source_not_found' | 'destination_exists' | 'permission_denied' | 'invalid_path';
173
+ readonly type: ValidationErrorType;
112
174
  readonly message: string;
113
175
  readonly path?: string;
114
176
  }
@@ -116,7 +178,7 @@ export interface ValidationError {
116
178
  * 驗證警告
117
179
  */
118
180
  export interface ValidationWarning {
119
- readonly type: 'many_files_affected' | 'potential_breaking_change' | 'external_dependency';
181
+ readonly type: ValidationWarningType;
120
182
  readonly message: string;
121
183
  readonly details?: unknown;
122
184
  }
@@ -124,7 +186,7 @@ export interface ValidationWarning {
124
186
  * 移動錯誤
125
187
  */
126
188
  export interface MoveError {
127
- readonly type: 'file_system' | 'import_update' | 'validation' | 'rollback';
189
+ readonly type: MoveErrorType;
128
190
  readonly message: string;
129
191
  readonly filePath?: string;
130
192
  readonly originalError?: Error;
@@ -141,7 +203,7 @@ export interface RollbackInfo {
141
203
  * 回滾操作
142
204
  */
143
205
  export interface RollbackOperation {
144
- readonly type: 'move_file' | 'restore_content' | 'revert_import';
206
+ readonly type: RollbackOperationType;
145
207
  readonly source: string;
146
208
  readonly destination: string;
147
209
  readonly originalContent?: string;
@@ -150,7 +212,7 @@ export interface RollbackOperation {
150
212
  * Import 語句的解析結果
151
213
  */
152
214
  export interface ImportStatement {
153
- readonly type: 'import' | 'require' | 'dynamic_import' | 'export';
215
+ readonly type: ImportStatementType;
154
216
  readonly path: string;
155
217
  readonly pathType: PathType;
156
218
  readonly position: Position;
@@ -183,7 +245,7 @@ export interface MoveEngineConfig {
183
245
  */
184
246
  export interface MoveProgress {
185
247
  readonly operationId: string;
186
- readonly stage: 'validation' | 'preparation' | 'moving' | 'updating_imports' | 'cleanup';
248
+ readonly stage: MoveStage;
187
249
  readonly progress: number;
188
250
  readonly currentFile?: string;
189
251
  readonly message?: string;
@@ -208,9 +270,10 @@ export interface ImportResolverConfig {
208
270
  readonly includeNodeModules?: boolean;
209
271
  }
210
272
  /**
211
- * 簡化的移動操作 - 給 MoveService 使用
273
+ * 移動操作輸入 - 給 MoveService 公開方法使用
274
+ * 只包含必要的來源/目標路徑
212
275
  */
213
- export interface MoveOperation {
276
+ export interface MoveInput {
214
277
  readonly source: string;
215
278
  readonly target: string;
216
279
  readonly updateImports?: boolean;
@@ -244,21 +307,21 @@ export interface PathUpdate {
244
307
  readonly newImport: string;
245
308
  }
246
309
  /**
247
- * 建立完整 MoveOperation 的工廠函式
310
+ * 建立 InternalMoveOperation 的工廠函式
248
311
  */
249
- export declare function createFullMoveOperation(type: MoveOperationType, source: string, destination: string): FullMoveOperation;
312
+ export declare function createInternalMoveOperation(type: MoveOperationType, source: string, destination: string): InternalMoveOperation;
250
313
  /**
251
314
  * 建立 ValidationError 的工廠函式
252
315
  */
253
- export declare function createValidationError(type: ValidationError['type'], message: string, path?: string): ValidationError;
316
+ export declare function createValidationError(type: ValidationErrorType, message: string, path?: string): ValidationError;
254
317
  /**
255
318
  * 建立 MoveError 的工廠函式
256
319
  */
257
- export declare function createMoveError(type: MoveError['type'], message: string, filePath?: string, originalError?: Error): MoveError;
320
+ export declare function createMoveError(type: MoveErrorType, message: string, filePath?: string, originalError?: Error): MoveError;
258
321
  /**
259
- * 型別守衛 - 檢查是否為完整的 MoveOperation
322
+ * 型別守衛 - 檢查是否為 InternalMoveOperation
260
323
  */
261
- export declare function isFullMoveOperation(value: unknown): value is FullMoveOperation;
324
+ export declare function isInternalMoveOperation(value: unknown): value is InternalMoveOperation;
262
325
  /**
263
326
  * 型別守衛 - 檢查是否為 ImportStatement
264
327
  */
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/core/move/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/core/move/types.ts"],"names":[],"mappings":"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"}
@@ -30,9 +30,77 @@ export var PathType;
30
30
  PathType["ALIAS"] = "alias";
31
31
  })(PathType || (PathType = {}));
32
32
  /**
33
- * 建立完整 MoveOperation 的工廠函式
33
+ * 路徑衝突類型
34
34
  */
35
- export function createFullMoveOperation(type, source, destination) {
35
+ export var PathConflictType;
36
+ (function (PathConflictType) {
37
+ PathConflictType["FILE_EXISTS"] = "file_exists";
38
+ PathConflictType["DIRECTORY_EXISTS"] = "directory_exists";
39
+ PathConflictType["PERMISSION_DENIED"] = "permission_denied";
40
+ })(PathConflictType || (PathConflictType = {}));
41
+ /**
42
+ * 驗證錯誤類型
43
+ */
44
+ export var ValidationErrorType;
45
+ (function (ValidationErrorType) {
46
+ ValidationErrorType["SOURCE_NOT_FOUND"] = "source_not_found";
47
+ ValidationErrorType["DESTINATION_EXISTS"] = "destination_exists";
48
+ ValidationErrorType["PERMISSION_DENIED"] = "permission_denied";
49
+ ValidationErrorType["INVALID_PATH"] = "invalid_path";
50
+ })(ValidationErrorType || (ValidationErrorType = {}));
51
+ /**
52
+ * 驗證警告類型
53
+ */
54
+ export var ValidationWarningType;
55
+ (function (ValidationWarningType) {
56
+ ValidationWarningType["MANY_FILES_AFFECTED"] = "many_files_affected";
57
+ ValidationWarningType["POTENTIAL_BREAKING_CHANGE"] = "potential_breaking_change";
58
+ ValidationWarningType["EXTERNAL_DEPENDENCY"] = "external_dependency";
59
+ })(ValidationWarningType || (ValidationWarningType = {}));
60
+ /**
61
+ * 移動錯誤類型
62
+ */
63
+ export var MoveErrorType;
64
+ (function (MoveErrorType) {
65
+ MoveErrorType["FILE_SYSTEM"] = "file_system";
66
+ MoveErrorType["IMPORT_UPDATE"] = "import_update";
67
+ MoveErrorType["VALIDATION"] = "validation";
68
+ MoveErrorType["ROLLBACK"] = "rollback";
69
+ })(MoveErrorType || (MoveErrorType = {}));
70
+ /**
71
+ * 回滾操作類型
72
+ */
73
+ export var RollbackOperationType;
74
+ (function (RollbackOperationType) {
75
+ RollbackOperationType["MOVE_FILE"] = "move_file";
76
+ RollbackOperationType["RESTORE_CONTENT"] = "restore_content";
77
+ RollbackOperationType["REVERT_IMPORT"] = "revert_import";
78
+ })(RollbackOperationType || (RollbackOperationType = {}));
79
+ /**
80
+ * Import 語句類型
81
+ */
82
+ export var ImportStatementType;
83
+ (function (ImportStatementType) {
84
+ ImportStatementType["IMPORT"] = "import";
85
+ ImportStatementType["REQUIRE"] = "require";
86
+ ImportStatementType["DYNAMIC_IMPORT"] = "dynamic_import";
87
+ ImportStatementType["EXPORT"] = "export";
88
+ })(ImportStatementType || (ImportStatementType = {}));
89
+ /**
90
+ * 移動進度階段
91
+ */
92
+ export var MoveStage;
93
+ (function (MoveStage) {
94
+ MoveStage["VALIDATION"] = "validation";
95
+ MoveStage["PREPARATION"] = "preparation";
96
+ MoveStage["MOVING"] = "moving";
97
+ MoveStage["UPDATING_IMPORTS"] = "updating_imports";
98
+ MoveStage["CLEANUP"] = "cleanup";
99
+ })(MoveStage || (MoveStage = {}));
100
+ /**
101
+ * 建立 InternalMoveOperation 的工廠函式
102
+ */
103
+ export function createInternalMoveOperation(type, source, destination) {
36
104
  return {
37
105
  id: generateId(),
38
106
  type,
@@ -69,9 +137,9 @@ function generateId() {
69
137
  return `move_${Date.now()}_${Math.random().toString(36).substr(2, 9)}`;
70
138
  }
71
139
  /**
72
- * 型別守衛 - 檢查是否為完整的 MoveOperation
140
+ * 型別守衛 - 檢查是否為 InternalMoveOperation
73
141
  */
74
- export function isFullMoveOperation(value) {
142
+ export function isInternalMoveOperation(value) {
75
143
  if (!value || typeof value !== 'object') {
76
144
  return false;
77
145
  }
@@ -90,7 +158,7 @@ export function isImportStatement(value) {
90
158
  return false;
91
159
  }
92
160
  const obj = value;
93
- return (['import', 'require', 'dynamic_import'].includes(obj.type) &&
161
+ return (Object.values(ImportStatementType).includes(obj.type) &&
94
162
  typeof obj.path === 'string' &&
95
163
  Object.values(PathType).includes(obj.pathType) &&
96
164
  typeof obj.position === 'object' &&
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/core/move/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/core/move/types.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,23 @@
1
+ /**
2
+ * Change Applier
3
+ * 負責執行變更(寫入檔案)
4
+ */
5
+ import type { IFileSystem } from '../../infrastructure/storage/file-system.interface.js';
6
+ import type { ReferenceUpdate, FileChange, TargetFileChange } from './types.js';
7
+ /**
8
+ * Change Applier
9
+ * 負責將準備好的變更寫入檔案系統
10
+ */
11
+ export declare class ChangeApplier {
12
+ private readonly fileSystem;
13
+ constructor(fileSystem: IFileSystem);
14
+ /**
15
+ * 執行變更
16
+ */
17
+ applyChanges(sourceFileChange: FileChange, targetFileChange: TargetFileChange, referenceUpdates: readonly ReferenceUpdate[]): Promise<void>;
18
+ /**
19
+ * 讀取檔案內容
20
+ */
21
+ private readFile;
22
+ }
23
+ //# sourceMappingURL=change-applier.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"change-applier.d.ts","sourceRoot":"","sources":["../../../src/core/move-member/change-applier.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kDAAkD,CAAC;AACpF,OAAO,KAAK,EAAE,eAAe,EAAE,UAAU,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAEhF;;;GAGG;AACH,qBAAa,aAAa;IACZ,OAAO,CAAC,QAAQ,CAAC,UAAU;gBAAV,UAAU,EAAE,WAAW;IAEpD;;OAEG;IACG,YAAY,CAChB,gBAAgB,EAAE,UAAU,EAC5B,gBAAgB,EAAE,gBAAgB,EAClC,gBAAgB,EAAE,SAAS,eAAe,EAAE,GAC3C,OAAO,CAAC,IAAI,CAAC;IAuBhB;;OAEG;YACW,QAAQ;CAQvB"}
@@ -0,0 +1,51 @@
1
+ /**
2
+ * Change Applier
3
+ * 負責執行變更(寫入檔案)
4
+ */
5
+ import * as path from 'path';
6
+ /**
7
+ * Change Applier
8
+ * 負責將準備好的變更寫入檔案系統
9
+ */
10
+ export class ChangeApplier {
11
+ fileSystem;
12
+ constructor(fileSystem) {
13
+ this.fileSystem = fileSystem;
14
+ }
15
+ /**
16
+ * 執行變更
17
+ */
18
+ async applyChanges(sourceFileChange, targetFileChange, referenceUpdates) {
19
+ // 確保目標目錄存在
20
+ if (targetFileChange.isNewFile) {
21
+ const targetDir = path.dirname(targetFileChange.filePath);
22
+ await this.fileSystem.createDirectory(targetDir, true);
23
+ }
24
+ // 寫入來源檔案
25
+ await this.fileSystem.writeFile(sourceFileChange.filePath, sourceFileChange.newCode);
26
+ // 寫入目標檔案
27
+ await this.fileSystem.writeFile(targetFileChange.filePath, targetFileChange.newCode);
28
+ // 更新引用
29
+ for (const update of referenceUpdates) {
30
+ const content = await this.readFile(update.filePath);
31
+ if (!content) {
32
+ continue;
33
+ }
34
+ const newContent = content.replace(update.originalImport, update.newImport);
35
+ await this.fileSystem.writeFile(update.filePath, newContent);
36
+ }
37
+ }
38
+ /**
39
+ * 讀取檔案內容
40
+ */
41
+ async readFile(filePath) {
42
+ try {
43
+ const content = await this.fileSystem.readFile(filePath, 'utf-8');
44
+ return typeof content === 'string' ? content : content.toString('utf-8');
45
+ }
46
+ catch {
47
+ return null;
48
+ }
49
+ }
50
+ }
51
+ //# sourceMappingURL=change-applier.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"change-applier.js","sourceRoot":"","sources":["../../../src/core/move-member/change-applier.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAI7B;;;GAGG;AACH,MAAM,OAAO,aAAa;IACK;IAA7B,YAA6B,UAAuB;QAAvB,eAAU,GAAV,UAAU,CAAa;IAAG,CAAC;IAExD;;OAEG;IACH,KAAK,CAAC,YAAY,CAChB,gBAA4B,EAC5B,gBAAkC,EAClC,gBAA4C;QAE5C,WAAW;QACX,IAAI,gBAAgB,CAAC,SAAS,EAAE,CAAC;YAC/B,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CAAC;YAC1D,MAAM,IAAI,CAAC,UAAU,CAAC,eAAe,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;QACzD,CAAC;QAED,SAAS;QACT,MAAM,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,gBAAgB,CAAC,QAAQ,EAAE,gBAAgB,CAAC,OAAO,CAAC,CAAC;QAErF,SAAS;QACT,MAAM,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,gBAAgB,CAAC,QAAQ,EAAE,gBAAgB,CAAC,OAAO,CAAC,CAAC;QAErF,OAAO;QACP,KAAK,MAAM,MAAM,IAAI,gBAAgB,EAAE,CAAC;YACtC,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;YACrD,IAAI,CAAC,OAAO,EAAE,CAAC;gBAAA,SAAS;YAAA,CAAC;YAEzB,MAAM,UAAU,GAAG,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,cAAc,EAAE,MAAM,CAAC,SAAS,CAAC,CAAC;YAC5E,MAAM,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,MAAM,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;QAC/D,CAAC;IACH,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,QAAQ,CAAC,QAAgB;QACrC,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;YAClE,OAAO,OAAO,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QAC3E,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;CACF"}
@@ -0,0 +1,49 @@
1
+ /**
2
+ * File Change Preparer
3
+ * 負責準備來源檔案和目標檔案的變更
4
+ */
5
+ import type { IFileSystem } from '../../infrastructure/storage/file-system.interface.js';
6
+ import type { MemberDefinition, MoveMemberOptions, FileChange, TargetFileChange } from './types.js';
7
+ /**
8
+ * File Change Preparer
9
+ * 負責準備來源檔案和目標檔案的程式碼變更
10
+ */
11
+ export declare class FileChangePreparer {
12
+ private readonly fileSystem;
13
+ constructor(fileSystem: IFileSystem);
14
+ /**
15
+ * 準備來源檔案變更
16
+ */
17
+ prepareSourceFileChange(options: MoveMemberOptions, member: MemberDefinition): Promise<FileChange>;
18
+ /**
19
+ * 準備目標檔案變更
20
+ * 自動判斷目標檔案是否存在:存在則插入,不存在則創建新檔案
21
+ */
22
+ prepareTargetFileChange(options: MoveMemberOptions, member: MemberDefinition): Promise<TargetFileChange>;
23
+ /**
24
+ * 找到 import 插入位置(在最後一個 import 之後)
25
+ */
26
+ private findImportInsertPosition;
27
+ /**
28
+ * 生成成員依賴的 import
29
+ */
30
+ private generateDependencyImports;
31
+ /**
32
+ * 分析來源檔案的符號(本地 export 和 import)
33
+ */
34
+ private analyzeSourceSymbols;
35
+ /**
36
+ * 找到類別內的插入位置
37
+ * 使用正則表達式嚴格匹配類別定義,避免匹配註解中的類別名稱
38
+ */
39
+ private findClassInsertPosition;
40
+ /**
41
+ * 計算相對路徑
42
+ */
43
+ private calculateRelativePath;
44
+ /**
45
+ * 讀取檔案內容
46
+ */
47
+ private readFile;
48
+ }
49
+ //# sourceMappingURL=file-change-preparer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"file-change-preparer.d.ts","sourceRoot":"","sources":["../../../src/core/move-member/file-change-preparer.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kDAAkD,CAAC;AACpF,OAAO,KAAK,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,UAAU,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AA8BpG;;;GAGG;AACH,qBAAa,kBAAkB;IACjB,OAAO,CAAC,QAAQ,CAAC,UAAU;gBAAV,UAAU,EAAE,WAAW;IAEpD;;OAEG;IACG,uBAAuB,CAC3B,OAAO,EAAE,iBAAiB,EAC1B,MAAM,EAAE,gBAAgB,GACvB,OAAO,CAAC,UAAU,CAAC;IAqCtB;;;OAGG;IACG,uBAAuB,CAC3B,OAAO,EAAE,iBAAiB,EAC1B,MAAM,EAAE,gBAAgB,GACvB,OAAO,CAAC,gBAAgB,CAAC;IAsF5B;;OAEG;IACH,OAAO,CAAC,wBAAwB;IAehC;;OAEG;YACW,yBAAyB;IA6DvC;;OAEG;IACH,OAAO,CAAC,oBAAoB;IAoF5B;;;OAGG;YACW,uBAAuB;IAmCrC;;OAEG;IACH,OAAO,CAAC,qBAAqB;IAe7B;;OAEG;YACW,QAAQ;CAQvB"}