@wuyanbin/ai-code-review 1.1.9 → 1.1.10
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/reviewer/index.d.ts.map +1 -1
- package/dist/reviewer/index.js +3 -23
- package/dist/reviewer/index.js.map +1 -1
- package/dist/reviewer/utils.d.ts +0 -40
- package/dist/reviewer/utils.d.ts.map +1 -1
- package/dist/reviewer/utils.js +1 -132
- package/dist/reviewer/utils.js.map +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/reviewer/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,UAAU,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/reviewer/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,UAAU,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AA2ExD;;GAEG;AACH,eAAO,MAAM,UAAU,GACrB,MAAM,MAAM,EACZ,QAAQ,gBAAgB,KACvB,OAAO,CAAC,UAAU,GAAG,IAAI,CAmE3B,CAAC"}
|
package/dist/reviewer/index.js
CHANGED
|
@@ -4,7 +4,6 @@
|
|
|
4
4
|
*/
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
exports.reviewCode = void 0;
|
|
7
|
-
const utils_1 = require("./utils");
|
|
8
7
|
const factory_1 = require("./modelAdapters/factory");
|
|
9
8
|
/**
|
|
10
9
|
* 通用代码质量规则(始终启用)
|
|
@@ -44,9 +43,7 @@ const buildUserPrompt = (diff, rules) => {
|
|
|
44
43
|
"注意:",
|
|
45
44
|
"1. 一定要保证输出是合法的 JSON,不能包含注释或多余文本;",
|
|
46
45
|
'2. 如果没有任何问题,也请返回 {"comments": []};',
|
|
47
|
-
"3.
|
|
48
|
-
" - 禁止使用左侧的 old 行号(`-old` 一侧),否则会导致评论定位偏移。",
|
|
49
|
-
" - 如果你无法确定精确的新行号,请不要输出该条 comment(宁可不报,也不要报错位置)。",
|
|
46
|
+
"3. 请根据 diff 中的路径和行号填写 file 与 line 字段。",
|
|
50
47
|
"",
|
|
51
48
|
"项目规范(摘要):",
|
|
52
49
|
rulesBrief,
|
|
@@ -79,7 +76,8 @@ const parseAIResponse = (content) => {
|
|
|
79
76
|
*/
|
|
80
77
|
const reviewCode = async (diff, config) => {
|
|
81
78
|
// 先根据 ignore 规则过滤掉不需要审查的文件 diff
|
|
82
|
-
const effectiveDiff =
|
|
79
|
+
// const effectiveDiff = filterDiffByIgnore(diff, config.review?.ignore);
|
|
80
|
+
const effectiveDiff = diff;
|
|
83
81
|
console.log("=== effectiveDiff ===", effectiveDiff);
|
|
84
82
|
if (!effectiveDiff || !effectiveDiff.trim()) {
|
|
85
83
|
console.error("[reviewer] diff 为空,跳过审查");
|
|
@@ -108,24 +106,6 @@ const reviewCode = async (diff, config) => {
|
|
|
108
106
|
// 应用过滤和限制
|
|
109
107
|
let comments = result.comments || [];
|
|
110
108
|
console.log("=== comments ===", comments);
|
|
111
|
-
// 先做“diff 行号归一化”,保证落点一定在 MR diff 的变更代码块上
|
|
112
|
-
// {
|
|
113
|
-
// const { comments: normalized, stats } = normalizeCommentsWithDiff(
|
|
114
|
-
// comments,
|
|
115
|
-
// effectiveDiff
|
|
116
|
-
// );
|
|
117
|
-
// comments = normalized;
|
|
118
|
-
// if (stats.adjusted > 0) {
|
|
119
|
-
// console.error(
|
|
120
|
-
// `[reviewer] 已纠偏 ${stats.adjusted} 条评论行号(old -> new)`
|
|
121
|
-
// );
|
|
122
|
-
// }
|
|
123
|
-
// if (stats.dropped > 0) {
|
|
124
|
-
// console.error(
|
|
125
|
-
// `[reviewer] 已丢弃 ${stats.dropped} 条无法定位到 diff 变更行的评论(避免错块)`
|
|
126
|
-
// );
|
|
127
|
-
// }
|
|
128
|
-
// }
|
|
129
109
|
// 过滤 severity
|
|
130
110
|
// if (config.review?.severity) {
|
|
131
111
|
// const severityOrder = { info: 0, warning: 1, error: 2 };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/reviewer/index.ts"],"names":[],"mappings":";AAAA;;GAEG;;;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/reviewer/index.ts"],"names":[],"mappings":"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"}
|
package/dist/reviewer/utils.d.ts
CHANGED
|
@@ -15,44 +15,4 @@ export declare const shouldIgnoreFile: (filePath: string, ignorePatterns: string
|
|
|
15
15
|
* - 命中 ignore 的文件整块跳过
|
|
16
16
|
*/
|
|
17
17
|
export declare const filterDiffByIgnore: (diff: string, ignorePatterns: string[] | undefined) => string;
|
|
18
|
-
type DiffLineMappings = {
|
|
19
|
-
/**
|
|
20
|
-
* diff 中 new file 侧出现过的所有行号(包含 context + add)
|
|
21
|
-
* - 用于判断“这个 new 行号是否真的在 MR diff 里”
|
|
22
|
-
*/
|
|
23
|
-
newLinesInDiff: Set<number>;
|
|
24
|
-
/**
|
|
25
|
-
* diff 中 new file 侧真正变更的行号(仅 + 行)
|
|
26
|
-
* - 用于保证评论只落在改动行,避免 reviewdog 自动贴到邻近行造成“错块”
|
|
27
|
-
*/
|
|
28
|
-
changedNewLines: Set<number>;
|
|
29
|
-
/**
|
|
30
|
-
* old 行号 -> new 行号映射
|
|
31
|
-
* - 对 context 行:一一映射
|
|
32
|
-
* - 对替换行:尽量按顺序把 '-' 映射到后续的 '+'
|
|
33
|
-
*/
|
|
34
|
-
oldToNew: Map<number, number>;
|
|
35
|
-
};
|
|
36
|
-
/**
|
|
37
|
-
* 解析 unified diff,构建每个文件的 old/new 行号映射
|
|
38
|
-
* - 仅支持常见的 `diff --git a/... b/...` + `@@ -a,b +c,d @@` 格式
|
|
39
|
-
*/
|
|
40
|
-
export declare const buildDiffLineMappingsByFile: (diff: string) => Map<string, DiffLineMappings>;
|
|
41
|
-
export type NormalizeCommentsStats = {
|
|
42
|
-
adjusted: number;
|
|
43
|
-
dropped: number;
|
|
44
|
-
};
|
|
45
|
-
/**
|
|
46
|
-
* 将 AI 返回的 (file, line) 归一化到 “MR diff 的 new 行号(右侧)”
|
|
47
|
-
* - **保证不把评论贴到 diff 之外**(否则 reviewdog 会尝试找邻近位置,导致错块)
|
|
48
|
-
* - **默认只保留真正变更的 new 行(+ 行)**,确保评论落在改动代码块
|
|
49
|
-
*/
|
|
50
|
-
export declare const normalizeCommentsWithDiff: <T extends {
|
|
51
|
-
file: string;
|
|
52
|
-
line: number;
|
|
53
|
-
}>(comments: T[], diff: string) => {
|
|
54
|
-
comments: T[];
|
|
55
|
-
stats: NormalizeCommentsStats;
|
|
56
|
-
};
|
|
57
|
-
export {};
|
|
58
18
|
//# sourceMappingURL=utils.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/reviewer/utils.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,eAAO,MAAM,YAAY,GAAI,SAAS,MAAM,KAAG,MAwB9C,CAAC;AAEF,eAAO,MAAM,SAAS,GAAI,UAAU,MAAM,EAAE,SAAS,MAAM,KAAG,OAG7D,CAAC;AAEF,eAAO,MAAM,gBAAgB,GAC3B,UAAU,MAAM,EAChB,gBAAgB,MAAM,EAAE,GAAG,SAAS,KACnC,OAGF,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,kBAAkB,GAC7B,MAAM,MAAM,EACZ,gBAAgB,MAAM,EAAE,GAAG,SAAS,KACnC,MAiEF,CAAC
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/reviewer/utils.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,eAAO,MAAM,YAAY,GAAI,SAAS,MAAM,KAAG,MAwB9C,CAAC;AAEF,eAAO,MAAM,SAAS,GAAI,UAAU,MAAM,EAAE,SAAS,MAAM,KAAG,OAG7D,CAAC;AAEF,eAAO,MAAM,gBAAgB,GAC3B,UAAU,MAAM,EAChB,gBAAgB,MAAM,EAAE,GAAG,SAAS,KACnC,OAGF,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,kBAAkB,GAC7B,MAAM,MAAM,EACZ,gBAAgB,MAAM,EAAE,GAAG,SAAS,KACnC,MAiEF,CAAC"}
|
package/dist/reviewer/utils.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.
|
|
3
|
+
exports.filterDiffByIgnore = exports.shouldIgnoreFile = exports.matchGlob = exports.globToRegExp = void 0;
|
|
4
4
|
/**
|
|
5
5
|
* 简单的 glob -> RegExp 转换,只覆盖当前项目常用模式:
|
|
6
6
|
*
|
|
@@ -100,135 +100,4 @@ const filterDiffByIgnore = (diff, ignorePatterns) => {
|
|
|
100
100
|
return kept.join("\n");
|
|
101
101
|
};
|
|
102
102
|
exports.filterDiffByIgnore = filterDiffByIgnore;
|
|
103
|
-
/**
|
|
104
|
-
* 解析 unified diff,构建每个文件的 old/new 行号映射
|
|
105
|
-
* - 仅支持常见的 `diff --git a/... b/...` + `@@ -a,b +c,d @@` 格式
|
|
106
|
-
*/
|
|
107
|
-
const buildDiffLineMappingsByFile = (diff) => {
|
|
108
|
-
const mappingsByFile = new Map();
|
|
109
|
-
if (!diff || !diff.trim())
|
|
110
|
-
return mappingsByFile;
|
|
111
|
-
const lines = diff.split("\n");
|
|
112
|
-
let currentFile = null;
|
|
113
|
-
let oldLine = 0;
|
|
114
|
-
let newLine = 0;
|
|
115
|
-
let inHunk = false;
|
|
116
|
-
let pendingDeletedOldLines = [];
|
|
117
|
-
const ensure = (file) => {
|
|
118
|
-
const existing = mappingsByFile.get(file);
|
|
119
|
-
if (existing)
|
|
120
|
-
return existing;
|
|
121
|
-
const created = {
|
|
122
|
-
newLinesInDiff: new Set(),
|
|
123
|
-
changedNewLines: new Set(),
|
|
124
|
-
oldToNew: new Map(),
|
|
125
|
-
};
|
|
126
|
-
mappingsByFile.set(file, created);
|
|
127
|
-
return created;
|
|
128
|
-
};
|
|
129
|
-
for (const rawLine of lines) {
|
|
130
|
-
// 文件块切换
|
|
131
|
-
if (rawLine.startsWith("diff --git ")) {
|
|
132
|
-
const match = /^diff --git a\/(.+?) b\/(.+)$/.exec(rawLine);
|
|
133
|
-
currentFile = match?.[2] ?? null;
|
|
134
|
-
inHunk = false;
|
|
135
|
-
oldLine = 0;
|
|
136
|
-
newLine = 0;
|
|
137
|
-
pendingDeletedOldLines = [];
|
|
138
|
-
continue;
|
|
139
|
-
}
|
|
140
|
-
if (!currentFile)
|
|
141
|
-
continue;
|
|
142
|
-
// 跳过二进制 / 无内容 diff
|
|
143
|
-
if (rawLine.startsWith("Binary files "))
|
|
144
|
-
continue;
|
|
145
|
-
// hunk 头
|
|
146
|
-
if (rawLine.startsWith("@@")) {
|
|
147
|
-
const hunk = /@@\s+-(\d+)(?:,(\d+))?\s+\+(\d+)(?:,(\d+))?\s+@@/.exec(rawLine);
|
|
148
|
-
if (!hunk) {
|
|
149
|
-
inHunk = false;
|
|
150
|
-
pendingDeletedOldLines = [];
|
|
151
|
-
continue;
|
|
152
|
-
}
|
|
153
|
-
oldLine = Number(hunk[1]);
|
|
154
|
-
newLine = Number(hunk[3]);
|
|
155
|
-
inHunk = true;
|
|
156
|
-
pendingDeletedOldLines = [];
|
|
157
|
-
continue;
|
|
158
|
-
}
|
|
159
|
-
if (!inHunk)
|
|
160
|
-
continue;
|
|
161
|
-
if (rawLine === "\")
|
|
162
|
-
continue;
|
|
163
|
-
const m = ensure(currentFile);
|
|
164
|
-
// 注意:diff 行可能是空行,rawLine[0] 也仍然存在(' ' / '+' / '-')
|
|
165
|
-
const prefix = rawLine[0];
|
|
166
|
-
if (prefix === " ") {
|
|
167
|
-
m.oldToNew.set(oldLine, newLine);
|
|
168
|
-
m.newLinesInDiff.add(newLine);
|
|
169
|
-
oldLine += 1;
|
|
170
|
-
newLine += 1;
|
|
171
|
-
// 回到对齐状态,清空未配对的删除行
|
|
172
|
-
pendingDeletedOldLines = [];
|
|
173
|
-
continue;
|
|
174
|
-
}
|
|
175
|
-
if (prefix === "-") {
|
|
176
|
-
pendingDeletedOldLines.push(oldLine);
|
|
177
|
-
oldLine += 1;
|
|
178
|
-
continue;
|
|
179
|
-
}
|
|
180
|
-
if (prefix === "+") {
|
|
181
|
-
m.newLinesInDiff.add(newLine);
|
|
182
|
-
m.changedNewLines.add(newLine);
|
|
183
|
-
// 尽量把替换行的 old 行号映射到 new 行号(按出现顺序配对)
|
|
184
|
-
const deletedOld = pendingDeletedOldLines.shift();
|
|
185
|
-
if (typeof deletedOld === "number") {
|
|
186
|
-
m.oldToNew.set(deletedOld, newLine);
|
|
187
|
-
}
|
|
188
|
-
newLine += 1;
|
|
189
|
-
continue;
|
|
190
|
-
}
|
|
191
|
-
}
|
|
192
|
-
return mappingsByFile;
|
|
193
|
-
};
|
|
194
|
-
exports.buildDiffLineMappingsByFile = buildDiffLineMappingsByFile;
|
|
195
|
-
/**
|
|
196
|
-
* 将 AI 返回的 (file, line) 归一化到 “MR diff 的 new 行号(右侧)”
|
|
197
|
-
* - **保证不把评论贴到 diff 之外**(否则 reviewdog 会尝试找邻近位置,导致错块)
|
|
198
|
-
* - **默认只保留真正变更的 new 行(+ 行)**,确保评论落在改动代码块
|
|
199
|
-
*/
|
|
200
|
-
const normalizeCommentsWithDiff = (comments, diff) => {
|
|
201
|
-
const stats = { adjusted: 0, dropped: 0 };
|
|
202
|
-
if (!Array.isArray(comments) || comments.length === 0) {
|
|
203
|
-
return { comments: [], stats };
|
|
204
|
-
}
|
|
205
|
-
const mappingsByFile = (0, exports.buildDiffLineMappingsByFile)(diff);
|
|
206
|
-
const normalized = [];
|
|
207
|
-
for (const c of comments) {
|
|
208
|
-
if (!c || !c.file || !c.line)
|
|
209
|
-
continue;
|
|
210
|
-
const m = mappingsByFile.get(c.file);
|
|
211
|
-
if (!m) {
|
|
212
|
-
// 文件不在 diff 中,直接丢弃避免错块
|
|
213
|
-
stats.dropped += 1;
|
|
214
|
-
continue;
|
|
215
|
-
}
|
|
216
|
-
// 1) 优先认为 AI 给的是 new 行号
|
|
217
|
-
if (m.changedNewLines.has(c.line)) {
|
|
218
|
-
normalized.push(c);
|
|
219
|
-
continue;
|
|
220
|
-
}
|
|
221
|
-
// 2) 尝试把 old 行号映射到 new 行号
|
|
222
|
-
const mapped = m.oldToNew.get(c.line);
|
|
223
|
-
if (typeof mapped === "number" && m.changedNewLines.has(mapped)) {
|
|
224
|
-
normalized.push({ ...c, line: mapped });
|
|
225
|
-
stats.adjusted += 1;
|
|
226
|
-
continue;
|
|
227
|
-
}
|
|
228
|
-
// 3) 不在变更行:为了“绝不贴错块”,直接丢弃
|
|
229
|
-
stats.dropped += 1;
|
|
230
|
-
}
|
|
231
|
-
return { comments: normalized, stats };
|
|
232
|
-
};
|
|
233
|
-
exports.normalizeCommentsWithDiff = normalizeCommentsWithDiff;
|
|
234
103
|
//# sourceMappingURL=utils.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/reviewer/utils.ts"],"names":[],"mappings":";;;AAAA;;;;;;;GAOG;AACI,MAAM,YAAY,GAAG,CAAC,OAAe,EAAU,EAAE;IACtD,uCAAuC;IACvC,IAAI,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;QAC5B,MAAM,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,cAAc;QACnD,MAAM,aAAa,GAAG,MAAM,CAAC,OAAO,CAAC,oBAAoB,EAAE,MAAM,CAAC,CAAC;QACnE,eAAe;QACf,OAAO,IAAI,MAAM,CAAC,IAAI,aAAa,MAAM,CAAC,CAAC;IAC7C,CAAC;IAED,gCAAgC;IAChC,IAAI,OAAO,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC;QAC9B,MAAM,IAAI,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,aAAa;QAC5C,MAAM,WAAW,GAAG,IAAI;aACrB,OAAO,CAAC,oBAAoB,EAAE,MAAM,CAAC;aACrC,OAAO,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;QAC3B,4BAA4B;QAC5B,OAAO,IAAI,MAAM,CAAC,YAAY,WAAW,GAAG,CAAC,CAAC;IAChD,CAAC;IAED,2BAA2B;IAC3B,MAAM,OAAO,GAAG,OAAO;SACpB,OAAO,CAAC,oBAAoB,EAAE,MAAM,CAAC;SACrC,OAAO,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;IAC3B,OAAO,IAAI,MAAM,CAAC,IAAI,OAAO,GAAG,CAAC,CAAC;AACpC,CAAC,CAAC;AAxBW,QAAA,YAAY,gBAwBvB;AAEK,MAAM,SAAS,GAAG,CAAC,QAAgB,EAAE,OAAe,EAAW,EAAE;IACtE,MAAM,EAAE,GAAG,IAAA,oBAAY,EAAC,OAAO,CAAC,CAAC;IACjC,OAAO,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;AAC3B,CAAC,CAAC;AAHW,QAAA,SAAS,aAGpB;AAEK,MAAM,gBAAgB,GAAG,CAC9B,QAAgB,EAChB,cAAoC,EAC3B,EAAE;IACX,IAAI,CAAC,cAAc,IAAI,cAAc,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC;IACjE,OAAO,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAA,iBAAS,EAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,CAAC;AAC5D,CAAC,CAAC;AANW,QAAA,gBAAgB,oBAM3B;AAEF;;;;GAIG;AACI,MAAM,kBAAkB,GAAG,CAChC,IAAY,EACZ,cAAoC,EAC5B,EAAE;IACV,IAAI,CAAC,cAAc,IAAI,cAAc,CAAC,MAAM,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,CAAC;QACnE,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAC/B,MAAM,IAAI,GAAa,EAAE,CAAC;IAE1B,uBAAuB;IACvB,MAAM,aAAa,GAAG,IAAI,GAAG,EAAU,CAAC;IACxC,MAAM,YAAY,GAAG,IAAI,GAAG,EAAU,CAAC;IAEvC,IAAI,WAAW,GAAkB,IAAI,CAAC;IACtC,IAAI,aAAa,GAAG,KAAK,CAAC;IAE1B,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,IAAI,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,EAAE,CAAC;YACnC,eAAe;YACf,WAAW,GAAG,IAAI,CAAC;YACnB,aAAa,GAAG,KAAK,CAAC;YAEtB,MAAM,KAAK,GAAG,+BAA+B,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACzD,IAAI,KAAK,EAAE,CAAC;gBACV,2BAA2B;gBAC3B,WAAW,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;gBACvB,aAAa,GAAG,IAAA,wBAAgB,EAAC,WAAW,EAAE,cAAc,CAAC,CAAC;gBAE9D,IAAI,WAAW,EAAE,CAAC;oBAChB,IAAI,aAAa,EAAE,CAAC;wBAClB,YAAY,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;oBAChC,CAAC;yBAAM,CAAC;wBACN,aAAa,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;oBACjC,CAAC;gBACH,CAAC;YACH,CAAC;YAED,IAAI,CAAC,aAAa,EAAE,CAAC;gBACnB,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAClB,CAAC;YACD,SAAS;QACX,CAAC;QAED,IAAI,aAAa,EAAE,CAAC;YAClB,0CAA0C;YAC1C,SAAS;QACX,CAAC;QAED,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAClB,CAAC;IAED,oCAAoC;IACpC,IAAI,aAAa,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC;QAC3B,OAAO,CAAC,KAAK,CACX,yBAAyB,EACzB,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CACrC,CAAC;IACJ,CAAC;IACD,IAAI,YAAY,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC;QAC1B,OAAO,CAAC,KAAK,CACX,4BAA4B,EAC5B,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CACpC,CAAC;IACJ,CAAC;IAED,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACzB,CAAC,CAAC;AApEW,QAAA,kBAAkB,sBAoE7B
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/reviewer/utils.ts"],"names":[],"mappings":"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"}
|