agent-ide 0.7.3 → 0.7.5
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.
- package/dist/core/change-signature/change-signature-service.d.ts +24 -0
- package/dist/core/change-signature/change-signature-service.d.ts.map +1 -1
- package/dist/core/change-signature/change-signature-service.js +184 -22
- package/dist/core/change-signature/change-signature-service.js.map +1 -1
- package/dist/core/change-signature/signature-parser.d.ts.map +1 -1
- package/dist/core/change-signature/signature-parser.js.map +1 -1
- package/dist/core/change-signature/types.d.ts +3 -1
- package/dist/core/change-signature/types.d.ts.map +1 -1
- package/dist/core/change-signature/types.js +2 -0
- package/dist/core/change-signature/types.js.map +1 -1
- package/dist/core/deadcode/dead-code-detector.d.ts +12 -2
- package/dist/core/deadcode/dead-code-detector.d.ts.map +1 -1
- package/dist/core/deadcode/dead-code-detector.js +98 -31
- package/dist/core/deadcode/dead-code-detector.js.map +1 -1
- package/dist/core/deadcode/dead-code-remover.d.ts.map +1 -1
- package/dist/core/deadcode/dead-code-remover.js +21 -9
- package/dist/core/deadcode/dead-code-remover.js.map +1 -1
- package/dist/core/deadcode/types.d.ts +2 -16
- package/dist/core/deadcode/types.d.ts.map +1 -1
- package/dist/core/deadcode/types.js +1 -10
- package/dist/core/deadcode/types.js.map +1 -1
- package/dist/core/impact/impact-analyzer.d.ts +13 -0
- package/dist/core/impact/impact-analyzer.d.ts.map +1 -1
- package/dist/core/impact/impact-analyzer.js +127 -26
- package/dist/core/impact/impact-analyzer.js.map +1 -1
- package/dist/core/impact/types.d.ts +2 -0
- package/dist/core/impact/types.d.ts.map +1 -1
- package/dist/core/impact/types.js.map +1 -1
- package/dist/core/move/import-resolver.d.ts +1 -0
- package/dist/core/move/import-resolver.d.ts.map +1 -1
- package/dist/core/move/import-resolver.js +7 -8
- package/dist/core/move/import-resolver.js.map +1 -1
- package/dist/core/move/move-service.d.ts.map +1 -1
- package/dist/core/move/move-service.js +13 -21
- package/dist/core/move/move-service.js.map +1 -1
- package/dist/core/move-member/move-member-service.d.ts +24 -2
- package/dist/core/move-member/move-member-service.d.ts.map +1 -1
- package/dist/core/move-member/move-member-service.js +156 -36
- package/dist/core/move-member/move-member-service.js.map +1 -1
- package/dist/core/rename/reference-updater.d.ts +16 -0
- package/dist/core/rename/reference-updater.d.ts.map +1 -1
- package/dist/core/rename/reference-updater.js +47 -6
- package/dist/core/rename/reference-updater.js.map +1 -1
- package/dist/core/rename/rename-engine.d.ts.map +1 -1
- package/dist/core/rename/rename-engine.js +10 -2
- package/dist/core/rename/rename-engine.js.map +1 -1
- package/dist/core/rename/types.d.ts +6 -0
- package/dist/core/rename/types.d.ts.map +1 -1
- package/dist/core/rename/types.js.map +1 -1
- package/dist/core/shared/symbol-finder.d.ts +61 -2
- package/dist/core/shared/symbol-finder.d.ts.map +1 -1
- package/dist/core/shared/symbol-finder.js +306 -17
- package/dist/core/shared/symbol-finder.js.map +1 -1
- package/dist/core/snapshot/snapshot-generator.d.ts.map +1 -1
- package/dist/core/snapshot/snapshot-generator.js +2 -0
- package/dist/core/snapshot/snapshot-generator.js.map +1 -1
- package/dist/infrastructure/formatters/index.d.ts +1 -1
- package/dist/infrastructure/formatters/index.d.ts.map +1 -1
- package/dist/infrastructure/formatters/index.js.map +1 -1
- package/dist/infrastructure/formatters/preview-converter.d.ts +0 -1
- package/dist/infrastructure/formatters/preview-converter.d.ts.map +1 -1
- package/dist/infrastructure/formatters/preview-converter.js.map +1 -1
- package/dist/infrastructure/formatters/query-formatter.d.ts +7 -0
- package/dist/infrastructure/formatters/query-formatter.d.ts.map +1 -1
- package/dist/infrastructure/formatters/query-formatter.js +26 -7
- package/dist/infrastructure/formatters/query-formatter.js.map +1 -1
- package/dist/infrastructure/formatters/query-types.d.ts +16 -3
- package/dist/infrastructure/formatters/query-types.d.ts.map +1 -1
- package/dist/infrastructure/formatters/query-types.js.map +1 -1
- package/dist/infrastructure/parser/analysis-types.d.ts +0 -2
- package/dist/infrastructure/parser/analysis-types.d.ts.map +1 -1
- package/dist/interfaces/cli/commands/call-hierarchy.command.d.ts.map +1 -1
- package/dist/interfaces/cli/commands/call-hierarchy.command.js +16 -7
- package/dist/interfaces/cli/commands/call-hierarchy.command.js.map +1 -1
- package/dist/interfaces/cli/commands/cycles.command.d.ts.map +1 -1
- package/dist/interfaces/cli/commands/cycles.command.js +5 -3
- package/dist/interfaces/cli/commands/cycles.command.js.map +1 -1
- package/dist/interfaces/cli/commands/deadcode.command.js +3 -4
- package/dist/interfaces/cli/commands/deadcode.command.js.map +1 -1
- package/dist/interfaces/cli/commands/find-references.command.js +13 -8
- package/dist/interfaces/cli/commands/find-references.command.js.map +1 -1
- package/dist/interfaces/cli/commands/impact.command.d.ts.map +1 -1
- package/dist/interfaces/cli/commands/impact.command.js +47 -19
- package/dist/interfaces/cli/commands/impact.command.js.map +1 -1
- package/dist/interfaces/cli/commands/move.command.d.ts.map +1 -1
- package/dist/interfaces/cli/commands/move.command.js +33 -6
- package/dist/interfaces/cli/commands/move.command.js.map +1 -1
- package/dist/plugins/typescript/symbol-extractor.d.ts +5 -0
- package/dist/plugins/typescript/symbol-extractor.d.ts.map +1 -1
- package/dist/plugins/typescript/symbol-extractor.js +23 -1
- package/dist/plugins/typescript/symbol-extractor.js.map +1 -1
- package/dist/plugins/typescript/types.d.ts +1 -0
- package/dist/plugins/typescript/types.d.ts.map +1 -1
- package/dist/plugins/typescript/types.js +2 -2
- package/dist/plugins/typescript/types.js.map +1 -1
- package/dist/shared/types/symbol.d.ts +1 -1
- package/dist/shared/types/symbol.d.ts.map +1 -1
- package/dist/shared/types/symbol.js +2 -2
- package/dist/shared/types/symbol.js.map +1 -1
- package/package.json +2 -1
|
@@ -21,6 +21,8 @@ export interface RenameOperation {
|
|
|
21
21
|
readonly oldText: string;
|
|
22
22
|
readonly newText: string;
|
|
23
23
|
readonly range: Range;
|
|
24
|
+
/** 引用所在行的完整程式碼(用於輸出顯示上下文) */
|
|
25
|
+
readonly context?: string;
|
|
24
26
|
}
|
|
25
27
|
/**
|
|
26
28
|
* 重新命名結果
|
|
@@ -147,6 +149,8 @@ export interface TextChange {
|
|
|
147
149
|
readonly range: Range;
|
|
148
150
|
readonly oldText: string;
|
|
149
151
|
readonly newText: string;
|
|
152
|
+
/** 引用所在行的完整程式碼(用於輸出顯示上下文) */
|
|
153
|
+
readonly context?: string;
|
|
150
154
|
}
|
|
151
155
|
/**
|
|
152
156
|
* 符號引用
|
|
@@ -155,6 +159,8 @@ export interface SymbolReference {
|
|
|
155
159
|
readonly symbolName: string;
|
|
156
160
|
readonly range: Range;
|
|
157
161
|
readonly type: 'definition' | 'usage' | 'comment';
|
|
162
|
+
/** 引用所在行的完整程式碼(用於輸出顯示上下文) */
|
|
163
|
+
readonly context?: string;
|
|
158
164
|
}
|
|
159
165
|
/**
|
|
160
166
|
* RenameOptions 型別守衛
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/core/rename/types.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAClE,OAAO,EAAE,MAAM,EAAS,MAAM,yBAAyB,CAAC;AAExD;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,SAAS,EAAE,SAAS,MAAM,EAAE,CAAC;IACtC,QAAQ,CAAC,QAAQ,CAAC,EAAE,QAAQ,CAAC;CAC9B;AAED;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/core/rename/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/core/rename/types.ts"],"names":[],"mappings":"AAAA;;;GAGG;
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/core/rename/types.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAoEH;;GAEG;AACH,MAAM,CAAN,IAAY,YAKX;AALD,WAAY,YAAY;IACtB,gDAAgC,CAAA;IAChC,gDAAgC,CAAA;IAChC,oDAAoC,CAAA;IACpC,wDAAwC,CAAA,CAAC,QAAQ;AACnD,CAAC,EALW,YAAY,KAAZ,YAAY,QAKvB;AAsBD;;GAEG;AACH,MAAM,UAAU,mBAAmB,CACjC,MAAc,EACd,OAAe,EACf,SAAmB,EACnB,QAAmB;IAEnB,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC;QACpB,MAAM,IAAI,KAAK,CAAC,SAAS,CAAC,CAAC;IAC7B,CAAC;IAED,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC3B,MAAM,IAAI,KAAK,CAAC,cAAc,CAAC,CAAC;IAClC,CAAC;IAED,OAAO;QACL,MAAM;QACN,OAAO,EAAE,OAAO,CAAC,IAAI,EAAE;QACvB,SAAS;QACT,QAAQ;KACT,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,qBAAqB,CACnC,QAAgB,EAChB,OAAe,EACf,OAAe,EACf,KAAY;IAEZ,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,EAAE,CAAC;QACrB,MAAM,IAAI,KAAK,CAAC,UAAU,CAAC,CAAC;IAC9B,CAAC;IAED,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC;QACpB,MAAM,IAAI,KAAK,CAAC,SAAS,CAAC,CAAC;IAC7B,CAAC;IAED,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC;QACpB,MAAM,IAAI,KAAK,CAAC,SAAS,CAAC,CAAC;IAC7B,CAAC;IAED,OAAO;QACL,QAAQ;QACR,OAAO;QACP,OAAO;QACP,KAAK;KACN,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,kBAAkB,CAChC,IAAkB,EAClB,OAAe,EACf,QAAkB,EAClB,cAAuB;IAEvB,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC;QACpB,MAAM,IAAI,KAAK,CAAC,UAAU,CAAC,CAAC;IAC9B,CAAC;IAED,OAAO;QACL,IAAI;QACJ,OAAO;QACP,QAAQ;QACR,cAAc;KACf,CAAC;AACJ,CAAC;AAuED;;GAEG;AACH,MAAM,UAAU,eAAe,CAAC,KAAc;IAC5C,IAAI,CAAC,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QACxC,OAAO,KAAK,CAAC;IACf,CAAC;IAED,MAAM,GAAG,GAAG,KAAgC,CAAC;IAE7C,OAAO,CAAC,CAAC,CACP,GAAG,CAAC,MAAM,IAAI,OAAO,GAAG,CAAC,MAAM,KAAK,QAAQ;QAC5C,OAAO,GAAG,CAAC,OAAO,KAAK,QAAQ;QAC/B,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC;QAC7B,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC;QAC5B,GAAG,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,CACzB,CAAC;AACJ,CAAC"}
|
|
@@ -13,7 +13,14 @@ export interface SymbolReference {
|
|
|
13
13
|
readonly symbolName: string;
|
|
14
14
|
readonly location: Location;
|
|
15
15
|
readonly type: SymbolReferenceType;
|
|
16
|
+
/** 引用所在行的完整程式碼(用於輸出顯示) */
|
|
16
17
|
readonly context?: string;
|
|
18
|
+
/** 所屬容器名稱(class、interface 等,用於作用域識別) */
|
|
19
|
+
readonly containerName?: string;
|
|
20
|
+
/** 是否為方法呼叫(用於區分同名方法) */
|
|
21
|
+
readonly isMethodCall?: boolean;
|
|
22
|
+
/** 呼叫者類型名稱(用於精確匹配方法所屬類別) */
|
|
23
|
+
readonly receiverType?: string;
|
|
17
24
|
}
|
|
18
25
|
/**
|
|
19
26
|
* 符號引用類型
|
|
@@ -97,6 +104,27 @@ export declare class SymbolFinder {
|
|
|
97
104
|
* 查找檔案中的符號引用
|
|
98
105
|
*/
|
|
99
106
|
findReferencesInFile(filePath: string, symbolName: string): Promise<SymbolReference[]>;
|
|
107
|
+
/**
|
|
108
|
+
* 使用完整符號資訊查找檔案中的引用(作用域感知版本)
|
|
109
|
+
*
|
|
110
|
+
* 此方法會:
|
|
111
|
+
* 1. 使用完整的符號資訊(包含類型、作用域等)進行精確匹配
|
|
112
|
+
* 2. 過濾掉註解和字串中的符號
|
|
113
|
+
* 3. 包含完整的程式碼上下文
|
|
114
|
+
*
|
|
115
|
+
* @param filePath 檔案路徑
|
|
116
|
+
* @param symbol 完整的符號資訊
|
|
117
|
+
* @returns 符號引用陣列
|
|
118
|
+
*/
|
|
119
|
+
findReferencesInFileWithSymbol(filePath: string, symbol: Symbol): Promise<SymbolReference[]>;
|
|
120
|
+
/**
|
|
121
|
+
* 在多個檔案中查找符號引用(使用完整符號資訊)
|
|
122
|
+
*
|
|
123
|
+
* @param symbol 完整的符號資訊
|
|
124
|
+
* @param projectFiles 專案檔案列表
|
|
125
|
+
* @returns 所有找到的引用
|
|
126
|
+
*/
|
|
127
|
+
findReferencesWithSymbol(symbol: Symbol, projectFiles: readonly string[]): Promise<SymbolReference[]>;
|
|
100
128
|
/**
|
|
101
129
|
* 查找函式的所有呼叫點
|
|
102
130
|
*/
|
|
@@ -125,6 +153,23 @@ export declare class SymbolFinder {
|
|
|
125
153
|
* 使用文字匹配查找引用(降級方法)
|
|
126
154
|
*/
|
|
127
155
|
private findReferencesByText;
|
|
156
|
+
/**
|
|
157
|
+
* 使用文字匹配查找引用(過濾字串和註解版本)
|
|
158
|
+
*
|
|
159
|
+
* 此方法會過濾掉:
|
|
160
|
+
* 1. 字串字面值中的符號(單引號、雙引號、模板字串)
|
|
161
|
+
* 2. 單行註解中的符號(// 和 #)
|
|
162
|
+
* 3. 多行註解中的符號
|
|
163
|
+
*/
|
|
164
|
+
private findReferencesByTextFiltered;
|
|
165
|
+
/**
|
|
166
|
+
* 檢查位置是否在字串字面值中
|
|
167
|
+
*/
|
|
168
|
+
private isInString;
|
|
169
|
+
/**
|
|
170
|
+
* 檢查位置是否在單行註解中
|
|
171
|
+
*/
|
|
172
|
+
private isInSingleLineComment;
|
|
128
173
|
/**
|
|
129
174
|
* 提取函式簽名
|
|
130
175
|
*/
|
|
@@ -134,13 +179,27 @@ export declare class SymbolFinder {
|
|
|
134
179
|
*/
|
|
135
180
|
private extractDocumentation;
|
|
136
181
|
/**
|
|
137
|
-
*
|
|
182
|
+
* 提取參數字串(單行版本,保留向後相容)
|
|
138
183
|
*/
|
|
139
184
|
private extractArgumentsString;
|
|
140
185
|
/**
|
|
141
|
-
*
|
|
186
|
+
* 提取參數字串(支援多行)
|
|
187
|
+
* @returns { content: 完整參數字串, endLine: 結束行索引, endColumn: 結束欄位 }
|
|
188
|
+
*/
|
|
189
|
+
private extractArgumentsStringMultiline;
|
|
190
|
+
/**
|
|
191
|
+
* 解析參數(支援多行)
|
|
192
|
+
*/
|
|
193
|
+
private parseArgumentsMultiline;
|
|
194
|
+
/**
|
|
195
|
+
* 找到匹配的右括號位置(單行版本,保留向後相容)
|
|
142
196
|
*/
|
|
143
197
|
private findMatchingCloseParen;
|
|
198
|
+
/**
|
|
199
|
+
* 找到匹配的右括號位置(支援多行)
|
|
200
|
+
* @returns { line: 行索引, index: 該行的字元索引 }
|
|
201
|
+
*/
|
|
202
|
+
private findMatchingCloseParenMultiline;
|
|
144
203
|
/**
|
|
145
204
|
* 解析參數
|
|
146
205
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"symbol-finder.d.ts","sourceRoot":"","sources":["../../../src/core/shared/symbol-finder.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAC7D,OAAO,EAAc,KAAK,MAAM,EAAE,MAAM,yBAAyB,CAAC;AAClE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oCAAoC,CAAC;AACzE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kDAAkD,CAAC;AAEpF;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC;IAC5B,QAAQ,CAAC,IAAI,EAAE,mBAAmB,CAAC;IACnC,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"symbol-finder.d.ts","sourceRoot":"","sources":["../../../src/core/shared/symbol-finder.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAC7D,OAAO,EAAc,KAAK,MAAM,EAAE,MAAM,yBAAyB,CAAC;AAClE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oCAAoC,CAAC;AACzE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kDAAkD,CAAC;AAEpF;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC;IAC5B,QAAQ,CAAC,IAAI,EAAE,mBAAmB,CAAC;IACnC,0BAA0B;IAC1B,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAC1B,wCAAwC;IACxC,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,CAAC;IAChC,wBAAwB;IACxB,QAAQ,CAAC,YAAY,CAAC,EAAE,OAAO,CAAC;IAChC,4BAA4B;IAC5B,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,CAAC;CAChC;AAED;;GAEG;AACH,oBAAY,mBAAmB;IAC7B,UAAU,eAAe;IACzB,KAAK,UAAU;IACf,MAAM,WAAW;IACjB,MAAM,WAAW;CAClB;AAED;;GAEG;AACH,MAAM,WAAW,QAAQ;IACvB,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC;IAC5B,QAAQ,CAAC,SAAS,EAAE,SAAS,gBAAgB,EAAE,CAAC;IAChD,QAAQ,CAAC,YAAY,EAAE,OAAO,CAAC;IAC/B,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;CAC5B;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC;CACvB;AAED;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,IAAI,EAAE,eAAe,CAAC;IAC/B,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC;IAC5B,QAAQ,CAAC,SAAS,EAAE,SAAS,MAAM,EAAE,CAAC;IACtC,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;CAC7B;AAED;;GAEG;AACH,oBAAY,eAAe;IACzB,MAAM,WAAW;IACjB,QAAQ,aAAa;IACrB,MAAM,WAAW;IACjB,MAAM,WAAW;IACjB,WAAW,gBAAgB;CAC5B;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,CAAC;CACjC;AAED;;GAEG;AACH,qBAAa,YAAY;IAErB,OAAO,CAAC,QAAQ,CAAC,cAAc;IAC/B,OAAO,CAAC,QAAQ,CAAC,UAAU;gBADV,cAAc,EAAE,cAAc,EAC9B,UAAU,EAAE,WAAW;IAG1C;;OAEG;IACG,cAAc,CAAC,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,GAAG,IAAI,CAAC;IA8B5F;;;;;OAKG;IACG,sBAAsB,CAC1B,WAAW,EAAE,WAAW,CAAC,MAAM,CAAC,EAChC,YAAY,EAAE,SAAS,MAAM,EAAE,GAC9B,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,eAAe,EAAE,CAAC,CAAC;IAkE1C;;OAEG;IACH,OAAO,CAAC,4BAA4B;IAqCpC;;OAEG;IACG,oBAAoB,CAAC,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,EAAE,CAAC;IAsD5F;;;;;;;;;;;OAWG;IACG,8BAA8B,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,EAAE,CAAC;IAwClG;;;;;;OAMG;IACG,wBAAwB,CAAC,MAAM,EAAE,MAAM,EAAE,YAAY,EAAE,SAAS,MAAM,EAAE,GAAG,OAAO,CAAC,eAAe,EAAE,CAAC;IAW3G;;OAEG;IACG,aAAa,CAAC,YAAY,EAAE,MAAM,EAAE,YAAY,EAAE,SAAS,MAAM,EAAE,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC;IAW/F;;OAEG;IACG,mBAAmB,CAAC,QAAQ,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC;IAoFtF;;OAEG;IACG,gBAAgB,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;IA6CnF;;OAEG;YACW,QAAQ;IAStB;;OAEG;IACH,OAAO,CAAC,SAAS;IAKjB;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAKxB;;OAEG;IACH,OAAO,CAAC,oBAAoB;IA8B5B;;;;;;;OAOG;IACH,OAAO,CAAC,4BAA4B;IAkEpC;;OAEG;IACH,OAAO,CAAC,UAAU;IA0BlB;;OAEG;IACH,OAAO,CAAC,qBAAqB;IAoB7B;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAMxB;;OAEG;IACH,OAAO,CAAC,oBAAoB;IA2C5B;;OAEG;IACH,OAAO,CAAC,sBAAsB;IAuB9B;;;OAGG;IACH,OAAO,CAAC,+BAA+B;IA6CvC;;OAEG;IACH,OAAO,CAAC,uBAAuB;IA6C/B;;OAEG;IACH,OAAO,CAAC,sBAAsB;IAoB9B;;;OAGG;IACH,OAAO,CAAC,+BAA+B;IAgCvC;;OAEG;IACH,OAAO,CAAC,cAAc;IAiCtB;;OAEG;IACH,OAAO,CAAC,cAAc;IA2BtB;;OAEG;IACH,OAAO,CAAC,sBAAsB;IAY9B;;OAEG;IACH,OAAO,CAAC,WAAW;CAGpB;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,cAAc,EAAE,cAAc,EAAE,UAAU,EAAE,WAAW,GAAG,YAAY,CAExG"}
|
|
@@ -188,19 +188,89 @@ export class SymbolFinder {
|
|
|
188
188
|
modifiers: []
|
|
189
189
|
};
|
|
190
190
|
const references = await parser.findReferences(ast, dummySymbol);
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
?
|
|
196
|
-
:
|
|
197
|
-
|
|
191
|
+
const lines = content.split('\n');
|
|
192
|
+
return references.map(ref => {
|
|
193
|
+
const lineIndex = ref.location.range.start.line - 1;
|
|
194
|
+
const context = lineIndex >= 0 && lineIndex < lines.length
|
|
195
|
+
? lines[lineIndex].trim()
|
|
196
|
+
: undefined;
|
|
197
|
+
return {
|
|
198
|
+
symbolName,
|
|
199
|
+
location: ref.location,
|
|
200
|
+
type: ref.type === 'definition'
|
|
201
|
+
? SymbolReferenceType.Definition
|
|
202
|
+
: SymbolReferenceType.Usage,
|
|
203
|
+
context
|
|
204
|
+
};
|
|
205
|
+
});
|
|
198
206
|
}
|
|
199
207
|
catch {
|
|
200
208
|
// Parser 失敗,降級到文字匹配
|
|
201
209
|
return this.findReferencesByText(filePath, content, symbolName);
|
|
202
210
|
}
|
|
203
211
|
}
|
|
212
|
+
/**
|
|
213
|
+
* 使用完整符號資訊查找檔案中的引用(作用域感知版本)
|
|
214
|
+
*
|
|
215
|
+
* 此方法會:
|
|
216
|
+
* 1. 使用完整的符號資訊(包含類型、作用域等)進行精確匹配
|
|
217
|
+
* 2. 過濾掉註解和字串中的符號
|
|
218
|
+
* 3. 包含完整的程式碼上下文
|
|
219
|
+
*
|
|
220
|
+
* @param filePath 檔案路徑
|
|
221
|
+
* @param symbol 完整的符號資訊
|
|
222
|
+
* @returns 符號引用陣列
|
|
223
|
+
*/
|
|
224
|
+
async findReferencesInFileWithSymbol(filePath, symbol) {
|
|
225
|
+
const content = await this.readFile(filePath);
|
|
226
|
+
if (!content) {
|
|
227
|
+
return [];
|
|
228
|
+
}
|
|
229
|
+
const parser = this.getParser(filePath);
|
|
230
|
+
if (!parser) {
|
|
231
|
+
// 降級到文字匹配(但會過濾字串和註解)
|
|
232
|
+
return this.findReferencesByTextFiltered(filePath, content, symbol.name);
|
|
233
|
+
}
|
|
234
|
+
try {
|
|
235
|
+
const ast = await parser.parse(content, filePath);
|
|
236
|
+
// 使用完整符號資訊進行查找
|
|
237
|
+
const references = await parser.findReferences(ast, symbol);
|
|
238
|
+
const lines = content.split('\n');
|
|
239
|
+
return references.map(ref => {
|
|
240
|
+
const lineIndex = ref.location.range.start.line - 1;
|
|
241
|
+
const context = lineIndex >= 0 && lineIndex < lines.length
|
|
242
|
+
? lines[lineIndex].trim()
|
|
243
|
+
: undefined;
|
|
244
|
+
return {
|
|
245
|
+
symbolName: symbol.name,
|
|
246
|
+
location: ref.location,
|
|
247
|
+
type: ref.type === 'definition'
|
|
248
|
+
? SymbolReferenceType.Definition
|
|
249
|
+
: SymbolReferenceType.Usage,
|
|
250
|
+
context
|
|
251
|
+
};
|
|
252
|
+
});
|
|
253
|
+
}
|
|
254
|
+
catch {
|
|
255
|
+
// Parser 失敗,降級到文字匹配
|
|
256
|
+
return this.findReferencesByTextFiltered(filePath, content, symbol.name);
|
|
257
|
+
}
|
|
258
|
+
}
|
|
259
|
+
/**
|
|
260
|
+
* 在多個檔案中查找符號引用(使用完整符號資訊)
|
|
261
|
+
*
|
|
262
|
+
* @param symbol 完整的符號資訊
|
|
263
|
+
* @param projectFiles 專案檔案列表
|
|
264
|
+
* @returns 所有找到的引用
|
|
265
|
+
*/
|
|
266
|
+
async findReferencesWithSymbol(symbol, projectFiles) {
|
|
267
|
+
const allReferences = [];
|
|
268
|
+
for (const filePath of projectFiles) {
|
|
269
|
+
const refs = await this.findReferencesInFileWithSymbol(filePath, symbol);
|
|
270
|
+
allReferences.push(...refs);
|
|
271
|
+
}
|
|
272
|
+
return allReferences;
|
|
273
|
+
}
|
|
204
274
|
/**
|
|
205
275
|
* 查找函式的所有呼叫點
|
|
206
276
|
*/
|
|
@@ -247,28 +317,29 @@ export class SymbolFinder {
|
|
|
247
317
|
}
|
|
248
318
|
// 排除方法定義:檢查是否在類別中定義方法(沒有 receiver 且後面有返回類型)
|
|
249
319
|
if (!receiver) {
|
|
250
|
-
//
|
|
320
|
+
// 找到對應的右括號(支援多行)
|
|
251
321
|
const argsStart = match.index + match[0].length - 1;
|
|
252
|
-
const
|
|
253
|
-
if (
|
|
322
|
+
const multilineResult = this.findMatchingCloseParenMultiline(lines, lineIndex, argsStart);
|
|
323
|
+
if (multilineResult.index >= 0) {
|
|
254
324
|
// 檢查右括號後是否有冒號(表示返回類型,即方法定義)
|
|
255
|
-
const
|
|
325
|
+
const closingLine = lines[multilineResult.line];
|
|
326
|
+
const afterParen = closingLine.substring(multilineResult.index + 1).trim();
|
|
256
327
|
if (afterParen.startsWith(':') || afterParen.startsWith('{')) {
|
|
257
328
|
continue;
|
|
258
329
|
}
|
|
259
330
|
}
|
|
260
331
|
}
|
|
261
|
-
//
|
|
332
|
+
// 解析參數(支援多行)
|
|
262
333
|
const argsStart = match.index + match[0].length - 1;
|
|
263
|
-
const
|
|
264
|
-
const args = this.
|
|
334
|
+
const multilineArgs = this.extractArgumentsStringMultiline(lines, lineIndex, argsStart);
|
|
335
|
+
const args = this.parseArgumentsMultiline(multilineArgs.content, lineIndex + 1, argsStart);
|
|
265
336
|
callSites.push({
|
|
266
337
|
functionName,
|
|
267
338
|
location: {
|
|
268
339
|
filePath,
|
|
269
340
|
range: {
|
|
270
341
|
start: { line: lineIndex + 1, column: startColumn, offset: undefined },
|
|
271
|
-
end: { line:
|
|
342
|
+
end: { line: multilineArgs.endLine + 1, column: multilineArgs.endColumn + 1, offset: undefined }
|
|
272
343
|
}
|
|
273
344
|
},
|
|
274
345
|
arguments: args,
|
|
@@ -380,6 +451,116 @@ export class SymbolFinder {
|
|
|
380
451
|
}
|
|
381
452
|
return references;
|
|
382
453
|
}
|
|
454
|
+
/**
|
|
455
|
+
* 使用文字匹配查找引用(過濾字串和註解版本)
|
|
456
|
+
*
|
|
457
|
+
* 此方法會過濾掉:
|
|
458
|
+
* 1. 字串字面值中的符號(單引號、雙引號、模板字串)
|
|
459
|
+
* 2. 單行註解中的符號(// 和 #)
|
|
460
|
+
* 3. 多行註解中的符號
|
|
461
|
+
*/
|
|
462
|
+
findReferencesByTextFiltered(filePath, content, symbolName) {
|
|
463
|
+
const references = [];
|
|
464
|
+
const lines = content.split('\n');
|
|
465
|
+
const regex = new RegExp(`\\b${this.escapeRegex(symbolName)}\\b`, 'g');
|
|
466
|
+
let inBlockComment = false;
|
|
467
|
+
for (let lineIndex = 0; lineIndex < lines.length; lineIndex++) {
|
|
468
|
+
const line = lines[lineIndex];
|
|
469
|
+
let match;
|
|
470
|
+
// 追蹤多行註解狀態
|
|
471
|
+
if (inBlockComment) {
|
|
472
|
+
const closeCommentIndex = line.indexOf('*/');
|
|
473
|
+
if (closeCommentIndex >= 0) {
|
|
474
|
+
inBlockComment = false;
|
|
475
|
+
}
|
|
476
|
+
else {
|
|
477
|
+
continue; // 整行在多行註解中,跳過
|
|
478
|
+
}
|
|
479
|
+
}
|
|
480
|
+
while ((match = regex.exec(line)) !== null) {
|
|
481
|
+
const position = match.index;
|
|
482
|
+
// 檢查是否在字串中
|
|
483
|
+
if (this.isInString(line, position)) {
|
|
484
|
+
continue;
|
|
485
|
+
}
|
|
486
|
+
// 檢查是否在單行註解中
|
|
487
|
+
if (this.isInSingleLineComment(line, position)) {
|
|
488
|
+
continue;
|
|
489
|
+
}
|
|
490
|
+
// 檢查是否在多行註解開始後
|
|
491
|
+
const openCommentIndex = line.lastIndexOf('/*', position);
|
|
492
|
+
if (openCommentIndex >= 0) {
|
|
493
|
+
const closeCommentIndex = line.indexOf('*/', openCommentIndex);
|
|
494
|
+
if (closeCommentIndex < 0 || closeCommentIndex > position) {
|
|
495
|
+
// 在未關閉的多行註解中
|
|
496
|
+
if (closeCommentIndex < 0) {
|
|
497
|
+
inBlockComment = true;
|
|
498
|
+
}
|
|
499
|
+
continue;
|
|
500
|
+
}
|
|
501
|
+
}
|
|
502
|
+
const startColumn = position + 1;
|
|
503
|
+
references.push({
|
|
504
|
+
symbolName,
|
|
505
|
+
location: {
|
|
506
|
+
filePath,
|
|
507
|
+
range: {
|
|
508
|
+
start: { line: lineIndex + 1, column: startColumn, offset: undefined },
|
|
509
|
+
end: { line: lineIndex + 1, column: startColumn + symbolName.length, offset: undefined }
|
|
510
|
+
}
|
|
511
|
+
},
|
|
512
|
+
type: SymbolReferenceType.Usage,
|
|
513
|
+
context: line.trim()
|
|
514
|
+
});
|
|
515
|
+
}
|
|
516
|
+
}
|
|
517
|
+
return references;
|
|
518
|
+
}
|
|
519
|
+
/**
|
|
520
|
+
* 檢查位置是否在字串字面值中
|
|
521
|
+
*/
|
|
522
|
+
isInString(line, position) {
|
|
523
|
+
let inSingleQuote = false;
|
|
524
|
+
let inDoubleQuote = false;
|
|
525
|
+
let inTemplate = false;
|
|
526
|
+
for (let i = 0; i < position; i++) {
|
|
527
|
+
const char = line[i];
|
|
528
|
+
const prevChar = i > 0 ? line[i - 1] : '';
|
|
529
|
+
// 跳過轉義字元
|
|
530
|
+
if (prevChar === '\\') {
|
|
531
|
+
continue;
|
|
532
|
+
}
|
|
533
|
+
if (char === '\'' && !inDoubleQuote && !inTemplate) {
|
|
534
|
+
inSingleQuote = !inSingleQuote;
|
|
535
|
+
}
|
|
536
|
+
else if (char === '"' && !inSingleQuote && !inTemplate) {
|
|
537
|
+
inDoubleQuote = !inDoubleQuote;
|
|
538
|
+
}
|
|
539
|
+
else if (char === '`' && !inSingleQuote && !inDoubleQuote) {
|
|
540
|
+
inTemplate = !inTemplate;
|
|
541
|
+
}
|
|
542
|
+
}
|
|
543
|
+
return inSingleQuote || inDoubleQuote || inTemplate;
|
|
544
|
+
}
|
|
545
|
+
/**
|
|
546
|
+
* 檢查位置是否在單行註解中
|
|
547
|
+
*/
|
|
548
|
+
isInSingleLineComment(line, position) {
|
|
549
|
+
const beforePosition = line.substring(0, position);
|
|
550
|
+
// TypeScript/JavaScript 單行註解
|
|
551
|
+
if (beforePosition.includes('//')) {
|
|
552
|
+
return true;
|
|
553
|
+
}
|
|
554
|
+
// Python/Shell 單行註解
|
|
555
|
+
if (beforePosition.includes('#')) {
|
|
556
|
+
// 排除 # 在字串中的情況
|
|
557
|
+
const hashIndex = beforePosition.indexOf('#');
|
|
558
|
+
if (!this.isInString(line, hashIndex)) {
|
|
559
|
+
return true;
|
|
560
|
+
}
|
|
561
|
+
}
|
|
562
|
+
return false;
|
|
563
|
+
}
|
|
383
564
|
/**
|
|
384
565
|
* 提取函式簽名
|
|
385
566
|
*/
|
|
@@ -430,7 +611,7 @@ export class SymbolFinder {
|
|
|
430
611
|
return docLines.length > 0 ? docLines.join('\n') : undefined;
|
|
431
612
|
}
|
|
432
613
|
/**
|
|
433
|
-
*
|
|
614
|
+
* 提取參數字串(單行版本,保留向後相容)
|
|
434
615
|
*/
|
|
435
616
|
extractArgumentsString(line, startIndex) {
|
|
436
617
|
let depth = 1;
|
|
@@ -452,7 +633,87 @@ export class SymbolFinder {
|
|
|
452
633
|
return result;
|
|
453
634
|
}
|
|
454
635
|
/**
|
|
455
|
-
*
|
|
636
|
+
* 提取參數字串(支援多行)
|
|
637
|
+
* @returns { content: 完整參數字串, endLine: 結束行索引, endColumn: 結束欄位 }
|
|
638
|
+
*/
|
|
639
|
+
extractArgumentsStringMultiline(lines, startLine, startIndex) {
|
|
640
|
+
let depth = 1;
|
|
641
|
+
let lineIndex = startLine;
|
|
642
|
+
let charIndex = startIndex + 1;
|
|
643
|
+
let result = '';
|
|
644
|
+
while (lineIndex < lines.length && depth > 0) {
|
|
645
|
+
const line = lines[lineIndex];
|
|
646
|
+
while (charIndex < line.length && depth > 0) {
|
|
647
|
+
const char = line[charIndex];
|
|
648
|
+
if (char === '(') {
|
|
649
|
+
depth++;
|
|
650
|
+
}
|
|
651
|
+
else if (char === ')') {
|
|
652
|
+
depth--;
|
|
653
|
+
}
|
|
654
|
+
if (depth > 0) {
|
|
655
|
+
result += char;
|
|
656
|
+
}
|
|
657
|
+
charIndex++;
|
|
658
|
+
}
|
|
659
|
+
if (depth > 0 && lineIndex < lines.length - 1) {
|
|
660
|
+
// 保留換行符號
|
|
661
|
+
result += '\n';
|
|
662
|
+
lineIndex++;
|
|
663
|
+
charIndex = 0;
|
|
664
|
+
}
|
|
665
|
+
else {
|
|
666
|
+
break;
|
|
667
|
+
}
|
|
668
|
+
}
|
|
669
|
+
return {
|
|
670
|
+
content: result,
|
|
671
|
+
endLine: lineIndex,
|
|
672
|
+
endColumn: charIndex - 1
|
|
673
|
+
};
|
|
674
|
+
}
|
|
675
|
+
/**
|
|
676
|
+
* 解析參數(支援多行)
|
|
677
|
+
*/
|
|
678
|
+
parseArgumentsMultiline(argsString, baseLine, baseColumn) {
|
|
679
|
+
if (!argsString.trim()) {
|
|
680
|
+
return [];
|
|
681
|
+
}
|
|
682
|
+
const args = [];
|
|
683
|
+
const parts = this.splitArguments(argsString);
|
|
684
|
+
let currentLine = baseLine;
|
|
685
|
+
let column = baseColumn + 1;
|
|
686
|
+
for (let i = 0; i < parts.length; i++) {
|
|
687
|
+
const part = parts[i];
|
|
688
|
+
const trimmed = part.trim();
|
|
689
|
+
// 計算參數中的換行數
|
|
690
|
+
const newlines = (part.match(/\n/g) || []).length;
|
|
691
|
+
// 檢查是否是具名參數
|
|
692
|
+
const namedMatch = trimmed.match(/^(\w+)\s*[:=]\s*(.+)$/s);
|
|
693
|
+
args.push({
|
|
694
|
+
index: i,
|
|
695
|
+
name: namedMatch ? namedMatch[1] : undefined,
|
|
696
|
+
value: namedMatch ? namedMatch[2].trim() : trimmed,
|
|
697
|
+
range: {
|
|
698
|
+
start: { line: currentLine, column, offset: undefined },
|
|
699
|
+
end: { line: currentLine + newlines, column: column + part.length, offset: undefined }
|
|
700
|
+
}
|
|
701
|
+
});
|
|
702
|
+
// 更新行號和欄位
|
|
703
|
+
if (newlines > 0) {
|
|
704
|
+
currentLine += newlines;
|
|
705
|
+
// 計算最後一行的欄位位置
|
|
706
|
+
const lastNewlineIndex = part.lastIndexOf('\n');
|
|
707
|
+
column = part.length - lastNewlineIndex;
|
|
708
|
+
}
|
|
709
|
+
else {
|
|
710
|
+
column += part.length + 1; // +1 for comma
|
|
711
|
+
}
|
|
712
|
+
}
|
|
713
|
+
return args;
|
|
714
|
+
}
|
|
715
|
+
/**
|
|
716
|
+
* 找到匹配的右括號位置(單行版本,保留向後相容)
|
|
456
717
|
*/
|
|
457
718
|
findMatchingCloseParen(line, openParenIndex) {
|
|
458
719
|
let depth = 1;
|
|
@@ -472,6 +733,34 @@ export class SymbolFinder {
|
|
|
472
733
|
}
|
|
473
734
|
return -1;
|
|
474
735
|
}
|
|
736
|
+
/**
|
|
737
|
+
* 找到匹配的右括號位置(支援多行)
|
|
738
|
+
* @returns { line: 行索引, index: 該行的字元索引 }
|
|
739
|
+
*/
|
|
740
|
+
findMatchingCloseParenMultiline(lines, startLine, openParenIndex) {
|
|
741
|
+
let depth = 1;
|
|
742
|
+
let lineIndex = startLine;
|
|
743
|
+
let charIndex = openParenIndex + 1;
|
|
744
|
+
while (lineIndex < lines.length && depth > 0) {
|
|
745
|
+
const line = lines[lineIndex];
|
|
746
|
+
while (charIndex < line.length && depth > 0) {
|
|
747
|
+
const char = line[charIndex];
|
|
748
|
+
if (char === '(') {
|
|
749
|
+
depth++;
|
|
750
|
+
}
|
|
751
|
+
else if (char === ')') {
|
|
752
|
+
depth--;
|
|
753
|
+
if (depth === 0) {
|
|
754
|
+
return { line: lineIndex, index: charIndex };
|
|
755
|
+
}
|
|
756
|
+
}
|
|
757
|
+
charIndex++;
|
|
758
|
+
}
|
|
759
|
+
lineIndex++;
|
|
760
|
+
charIndex = 0;
|
|
761
|
+
}
|
|
762
|
+
return { line: -1, index: -1 };
|
|
763
|
+
}
|
|
475
764
|
/**
|
|
476
765
|
* 解析參數
|
|
477
766
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"symbol-finder.js","sourceRoot":"","sources":["../../../src/core/shared/symbol-finder.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"symbol-finder.js","sourceRoot":"","sources":["../../../src/core/shared/symbol-finder.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"snapshot-generator.d.ts","sourceRoot":"","sources":["../../../src/core/snapshot/snapshot-generator.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kCAAkC,CAAC;AAGpE,OAAO,KAAK,EAAmC,cAAc,EAAe,MAAM,YAAY,CAAC;AAG/F,OAAO,KAAK,EAAE,mBAAmB,EAAiB,MAAM,qBAAqB,CAAC;AAQ9E;;GAEG;AACH,qBAAa,iBAAiB;IAC5B,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAc;IACzC,OAAO,CAAC,YAAY,CAAqC;gBAE7C,UAAU,EAAE,WAAW;IAInC;;OAEG;IACG,QAAQ,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC;IAU3D;;;;OAIG;IACG,mBAAmB,CAAC,UAAU,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,mBAAmB,CAAC;IA0C1F;;OAEG;IACH,OAAO,CAAC,uBAAuB;IAmB/B;;OAEG;YACW,WAAW;IA0BzB;;OAEG;YACW,sBAAsB;IAqBpC;;OAEG;YACW,uBAAuB;IAoBrC;;OAEG;YACW,cAAc;IA8B5B;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAyD3B;;OAEG;IACH,OAAO,CAAC,eAAe;IAmBvB;;OAEG;IACH,OAAO,CAAC,cAAc;IAgBtB;;OAEG;IACH,OAAO,CAAC,qBAAqB;IAQ7B;;OAEG;IACH,OAAO,CAAC,uBAAuB;IAQ/B;;OAEG;IACH,OAAO,CAAC,iBAAiB;IAWzB;;OAEG;IACH,OAAO,CAAC,qBAAqB;
|
|
1
|
+
{"version":3,"file":"snapshot-generator.d.ts","sourceRoot":"","sources":["../../../src/core/snapshot/snapshot-generator.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kCAAkC,CAAC;AAGpE,OAAO,KAAK,EAAmC,cAAc,EAAe,MAAM,YAAY,CAAC;AAG/F,OAAO,KAAK,EAAE,mBAAmB,EAAiB,MAAM,qBAAqB,CAAC;AAQ9E;;GAEG;AACH,qBAAa,iBAAiB;IAC5B,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAc;IACzC,OAAO,CAAC,YAAY,CAAqC;gBAE7C,UAAU,EAAE,WAAW;IAInC;;OAEG;IACG,QAAQ,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC;IAU3D;;;;OAIG;IACG,mBAAmB,CAAC,UAAU,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,mBAAmB,CAAC;IA0C1F;;OAEG;IACH,OAAO,CAAC,uBAAuB;IAmB/B;;OAEG;YACW,WAAW;IA0BzB;;OAEG;YACW,sBAAsB;IAqBpC;;OAEG;YACW,uBAAuB;IAoBrC;;OAEG;YACW,cAAc;IA8B5B;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAyD3B;;OAEG;IACH,OAAO,CAAC,eAAe;IAmBvB;;OAEG;IACH,OAAO,CAAC,cAAc;IAgBtB;;OAEG;IACH,OAAO,CAAC,qBAAqB;IAQ7B;;OAEG;IACH,OAAO,CAAC,uBAAuB;IAQ/B;;OAEG;IACH,OAAO,CAAC,iBAAiB;IAWzB;;OAEG;IACH,OAAO,CAAC,qBAAqB;IAsB7B;;OAEG;IACH,OAAO,CAAC,eAAe;CAMxB"}
|