csdn-private-ai 0.0.2 → 0.0.4
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/README.md +64 -1
- package/artifacts/csdn-private-ai-0.0.2.vsix +0 -0
- package/artifacts/{csdn-private-ai-0.0.1.vsix → csdn-private-ai-0.0.3.vsix} +0 -0
- package/artifacts/csdn-private-ai-0.0.4.vsix +0 -0
- package/artifacts/{segmentfault-notes-viewer-0.0.1.vsix → segmentfault-notes-viewer-0.0.3.vsix} +0 -0
- package/csdn-private-ai-0.0.4.vsix +0 -0
- package/dist/constants.js +1 -0
- package/dist/constants.js.map +1 -1
- package/dist/extension.js +19 -1
- package/dist/extension.js.map +1 -1
- package/dist/services/csdnClient.js +27 -18
- package/dist/services/csdnClient.js.map +1 -1
- package/dist/services/markdownRenderer.js +106 -0
- package/dist/services/markdownRenderer.js.map +1 -0
- package/dist/utils/proxy.js +326 -0
- package/dist/utils/proxy.js.map +1 -0
- package/dist/webview/sidebarViewProvider.js +412 -27
- package/dist/webview/sidebarViewProvider.js.map +1 -1
- package/media/sidebar.css +418 -7
- package/media/sidebar.js +391 -23
- package/package.json +49 -9
package/README.md
CHANGED
|
@@ -15,6 +15,23 @@
|
|
|
15
15
|
- 插件不会主动调用远端历史读取或 `submitAnswer` 之类的提交接口
|
|
16
16
|
- 当前协议本身带 `sessionId`,服务端是否内部维护会话状态由 CSDN 决定,插件不额外做远端历史同步
|
|
17
17
|
- 每条 AI 回复右上角提供“复制”按钮,可一键把当前答案写入系统剪贴板
|
|
18
|
+
- 支持直接引用当前编辑器选区提问,引用信息会带上文件路径、语言和行号范围
|
|
19
|
+
- 支持在编辑器里通过右键菜单或快捷键快速引用当前选中代码
|
|
20
|
+
- Windows / Linux:`Ctrl + Alt + Q`
|
|
21
|
+
- macOS:`Cmd + Alt + Q`
|
|
22
|
+
- 顶部文章 / Cookie / 代理 / 操作区支持手动折叠展开,方便在连续对话时把空间让给消息区
|
|
23
|
+
- AI 回复现在支持 Markdown 渲染,包括标题、列表、引用块、表格、行内代码和链接
|
|
24
|
+
- 代码块高亮现在基于本地 `highlight.js`,不走 CDN
|
|
25
|
+
- `markdown-it` 和 `highlight.js` 会作为运行时依赖一起打进 VSIX,由扩展宿主本地渲染后再发给 Webview
|
|
26
|
+
- 带代码引用提问时,AI 回复中的代码块会显示 `Apply`
|
|
27
|
+
- 优先替换最初引用的原始区间
|
|
28
|
+
- 如果原始区间已变化,会尝试重新定位
|
|
29
|
+
- 仍无法定位时,可回退为替换当前编辑器选区
|
|
30
|
+
- 每个 AI 代码块现在额外支持:
|
|
31
|
+
- `复制代码`
|
|
32
|
+
- `Apply`,用于替换原始引用区间或当前选区
|
|
33
|
+
- `插入到光标`,用于直接插入到当前活动编辑器的光标位置
|
|
34
|
+
- 复制整条回答或单个代码块时,侧边栏不再强制把滚动条拉到最底部
|
|
18
35
|
- 活动栏图标已改为 VS Code 兼容的单色 SVG,不再使用带底色的大方块
|
|
19
36
|
- 当前固定不注入文章正文,上游请求里始终按通用问答模式发送:
|
|
20
37
|
- `docIds: ""`
|
|
@@ -57,11 +74,25 @@
|
|
|
57
74
|
6. 点击 `绑定链接 / ID`
|
|
58
75
|
- 可以输入完整的 `blog.csdn.net/.../article/details/{articleId}` 链接
|
|
59
76
|
- 也可以在内网环境下直接输入纯数字 `articleId`
|
|
60
|
-
7. 点击 `更新
|
|
77
|
+
7. 点击 `更新 Cookie`
|
|
61
78
|
- 支持直接粘贴纯 Cookie 值
|
|
62
79
|
- 也支持直接粘贴带 `Cookie:` 前缀的一整行
|
|
63
80
|
- 如果你复制的是多行请求头,插件会优先提取其中的 `Cookie:` 行
|
|
64
81
|
8. 开始对话
|
|
82
|
+
9. 如果你想让 AI 基于当前代码回答:
|
|
83
|
+
- 先在编辑器里选中代码
|
|
84
|
+
- 然后点击侧边栏里的 `引用当前选区`
|
|
85
|
+
- 或直接在编辑器里右键执行 `引用当前选中代码`
|
|
86
|
+
- 或使用快捷键:
|
|
87
|
+
- Windows / Linux:`Ctrl + Alt + Q`
|
|
88
|
+
- macOS:`Cmd + Alt + Q`
|
|
89
|
+
10. 如果你是在让 AI 改代码,优先让它输出一个完整代码块
|
|
90
|
+
11. 当 AI 回复中出现代码块时,可以直接点击代码块右上角的 `Apply`
|
|
91
|
+
- 默认会优先覆盖最开始引用的那段代码
|
|
92
|
+
- 如果你中途改过文件,插件会先尝试按原文重新定位
|
|
93
|
+
- 实在定位不到时,再改为替换你当前重新选中的代码区间
|
|
94
|
+
12. 如果你只想把代码塞到当前编辑位置,不想覆盖原始引用区间,可以点击 `插入到光标`
|
|
95
|
+
13. 如果只是想拿走代码片段,不想立刻改文件,可以点击 `复制代码`
|
|
65
96
|
|
|
66
97
|
## 打包与发布
|
|
67
98
|
|
|
@@ -133,6 +164,14 @@
|
|
|
133
164
|
- `sessionId` 获取/创建流程是否变化
|
|
134
165
|
10. 如果你刚改过代码或我刚帮你修过协议,记得先关闭旧的 `Extension Development Host`,再重新按一次 `F5`,否则你看到的可能还是上一版编译产物。
|
|
135
166
|
11. 如果要继续排查,打开 VS Code 输出面板,切到 `CSDN Private AI`,看插件记录的 HTTP 状态码和业务错误。
|
|
167
|
+
14. 如果 `Apply` 提示找不到可替换目标,优先检查:
|
|
168
|
+
- 你是不是在引用后又改动了同一段代码,导致原始区间失效
|
|
169
|
+
- 当前活动编辑器是不是同一个文件
|
|
170
|
+
- 是否重新选中了最新代码后再点一次 `Apply`
|
|
171
|
+
15. 如果你发现 Markdown 没有高亮,优先检查:
|
|
172
|
+
- `node_modules/highlight.js`
|
|
173
|
+
- `node_modules/markdown-it`
|
|
174
|
+
- 是否重新启动了 `Extension Development Host`
|
|
136
175
|
|
|
137
176
|
## 维护约定
|
|
138
177
|
|
|
@@ -171,6 +210,20 @@
|
|
|
171
210
|
- `src/webview/sidebarViewProvider.ts`
|
|
172
211
|
- `media/sidebar.js`
|
|
173
212
|
- `media/sidebar.css`
|
|
213
|
+
- 如果“引用当前选区 / 快捷键 / Apply”链路变了,要同时检查:
|
|
214
|
+
- `package.json`
|
|
215
|
+
- `src/extension.ts`
|
|
216
|
+
- `src/types.ts`
|
|
217
|
+
- `src/webview/sidebarViewProvider.ts`
|
|
218
|
+
- `media/sidebar.js`
|
|
219
|
+
- `media/sidebar.css`
|
|
220
|
+
- 如果 Markdown 渲染或代码高亮链路变了,要同时检查:
|
|
221
|
+
- `package.json`
|
|
222
|
+
- `package-lock.json`
|
|
223
|
+
- `src/services/markdownRenderer.ts`
|
|
224
|
+
- `src/webview/sidebarViewProvider.ts`
|
|
225
|
+
- `media/sidebar.js`
|
|
226
|
+
- `media/sidebar.css`
|
|
174
227
|
- 如果复制按钮或剪贴板行为变了,要同时检查 `src/webview/sidebarViewProvider.ts` 和 `media/sidebar.js` 的消息协议是否仍一致。
|
|
175
228
|
- 如果活动栏图标显示异常,优先检查 `media/icon.svg` 是否仍然使用 `currentColor` 单色路径,而不是带背景色的大面积填充。
|
|
176
229
|
- 如果 Marketplace 展示图标显示异常,优先检查 `media/icon.png` 和 `package.json` 顶层 `icon` 字段,不要只改 `media/icon.svg`。
|
|
@@ -178,6 +231,16 @@
|
|
|
178
231
|
|
|
179
232
|
## 当前实现变更记录
|
|
180
233
|
|
|
234
|
+
### 0.0.3
|
|
235
|
+
|
|
236
|
+
- 增加了“引用当前选区”能力,支持从侧边栏按钮、编辑器右键菜单和快捷键把当前选中代码带进提问上下文。
|
|
237
|
+
- 引用信息现在会保留文件路径、语言和行号范围,并在侧边栏输入区和用户消息里展示。
|
|
238
|
+
- 带引用提问时,会把引用代码包装成更适合改代码场景的 prompt,提示 AI 返回可直接替换原选区的完整代码块。
|
|
239
|
+
- 为 AI 回复中的代码块增加了 `Apply` 按钮,支持把代码直接应用回编辑器。
|
|
240
|
+
- `Apply` 现在会优先命中原始引用区间;如果文件内容变化导致区间失效,会先尝试按原文重新定位,再回退到当前选区替换。
|
|
241
|
+
- 回复渲染现在支持 Markdown,并对代码块接入了本地 `highlight.js` 语法高亮。
|
|
242
|
+
- `markdown-it` 和 `highlight.js` 改为随扩展本地打包,Webview 不再依赖任何 CDN 资源。
|
|
243
|
+
|
|
181
244
|
### 0.0.1
|
|
182
245
|
|
|
183
246
|
- 初始化了桌面版 VS Code 扩展工程。
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
package/artifacts/{segmentfault-notes-viewer-0.0.1.vsix → segmentfault-notes-viewer-0.0.3.vsix}
RENAMED
|
Binary file
|
|
Binary file
|
package/dist/constants.js
CHANGED
package/dist/constants.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":";;;AAAa,QAAA,mBAAmB,GAAG,eAAe,CAAC;AACtC,QAAA,iBAAiB,GAAG,eAAe,CAAC;AACpC,QAAA,OAAO,GAAG,uBAAuB,CAAC;AAClC,QAAA,iBAAiB,GAAG,sBAAsB,CAAC;AAC3C,QAAA,iBAAiB,GAAG,4BAA4B,CAAC;AACjD,QAAA,WAAW,GAAG,uBAAuB,CAAC;AACtC,QAAA,mBAAmB,GAAG,iBAAiB,CAAC;AAExC,QAAA,aAAa,GAAG,mCAAmC,CAAC;AACpD,QAAA,YAAY,GAAG,qBAAqB,CAAC;AACrC,QAAA,WAAW,GAAG,yBAAyB,CAAC;AACxC,QAAA,uBAAuB,GAAG,iDAAiD,CAAC;AAC5E,QAAA,8BAA8B,GAAG,mDAAmD,CAAC;AAErF,QAAA,kBAAkB,GAAG,WAAW,CAAC;AACjC,QAAA,qBAAqB,GAAG,kCAAkC,CAAC;AAE3D,QAAA,0BAA0B,GAAG,MAAM,CAAC;AACpC,QAAA,yBAAyB,GAAG,EAAE,CAAC;AAE/B,QAAA,WAAW,GAAG;IACzB,gBAAgB,EAAE,kBAAkB;IACpC,eAAe,EAAE,iBAAiB;IAClC,KAAK,EAAE,OAAO;CACN,CAAC;AAEE,QAAA,0BAA0B,GAAG,IAAI,GAAG,CAAC;IAChD,gBAAgB;IAChB,gBAAgB;IAChB,wBAAwB;IACxB,UAAU;IACV,YAAY;CACb,CAAC,CAAC"}
|
|
1
|
+
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":";;;AAAa,QAAA,mBAAmB,GAAG,eAAe,CAAC;AACtC,QAAA,iBAAiB,GAAG,eAAe,CAAC;AACpC,QAAA,OAAO,GAAG,uBAAuB,CAAC;AAClC,QAAA,iBAAiB,GAAG,sBAAsB,CAAC;AAC3C,QAAA,iBAAiB,GAAG,4BAA4B,CAAC;AACjD,QAAA,WAAW,GAAG,uBAAuB,CAAC;AACtC,QAAA,mBAAmB,GAAG,iBAAiB,CAAC;AAExC,QAAA,aAAa,GAAG,mCAAmC,CAAC;AACpD,QAAA,YAAY,GAAG,qBAAqB,CAAC;AACrC,QAAA,WAAW,GAAG,yBAAyB,CAAC;AACxC,QAAA,uBAAuB,GAAG,iDAAiD,CAAC;AAC5E,QAAA,8BAA8B,GAAG,mDAAmD,CAAC;AAErF,QAAA,kBAAkB,GAAG,WAAW,CAAC;AACjC,QAAA,qBAAqB,GAAG,kCAAkC,CAAC;AAE3D,QAAA,0BAA0B,GAAG,MAAM,CAAC;AACpC,QAAA,yBAAyB,GAAG,EAAE,CAAC;AAE/B,QAAA,WAAW,GAAG;IACzB,gBAAgB,EAAE,kBAAkB;IACpC,eAAe,EAAE,iBAAiB;IAClC,QAAQ,EAAE,UAAU;IACpB,KAAK,EAAE,OAAO;CACN,CAAC;AAEE,QAAA,0BAA0B,GAAG,IAAI,GAAG,CAAC;IAChD,gBAAgB;IAChB,gBAAgB;IAChB,wBAAwB;IACxB,UAAU;IACV,YAAY;CACb,CAAC,CAAC"}
|
package/dist/extension.js
CHANGED
|
@@ -48,6 +48,7 @@ function activate(context) {
|
|
|
48
48
|
return {
|
|
49
49
|
timeoutMs: normalizeNumber(config.get(constants_1.CONFIG_KEYS.requestTimeoutMs, constants_1.DEFAULT_REQUEST_TIMEOUT_MS), constants_1.DEFAULT_REQUEST_TIMEOUT_MS, 3_000),
|
|
50
50
|
maxLocalHistory: normalizeNumber(config.get(constants_1.CONFIG_KEYS.maxLocalHistory, constants_1.DEFAULT_MAX_LOCAL_HISTORY), constants_1.DEFAULT_MAX_LOCAL_HISTORY, 10),
|
|
51
|
+
proxyUrl: normalizeText(config.get(constants_1.CONFIG_KEYS.proxyUrl, '')),
|
|
51
52
|
debug: config.get(constants_1.CONFIG_KEYS.debug, false)
|
|
52
53
|
};
|
|
53
54
|
};
|
|
@@ -70,10 +71,12 @@ function activate(context) {
|
|
|
70
71
|
const threadStore = new threadStore_1.ThreadStore(context.workspaceState);
|
|
71
72
|
const client = new csdnClient_1.CsdnPrivateAiClient(() => ({
|
|
72
73
|
timeoutMs: getRuntimeOptions().timeoutMs,
|
|
74
|
+
proxyUrl: getRuntimeOptions().proxyUrl,
|
|
73
75
|
debug: getRuntimeOptions().debug
|
|
74
76
|
}), logger);
|
|
75
77
|
const provider = new sidebarViewProvider_1.SidebarViewProvider(context.extensionUri, secretStore, threadStore, client, () => ({
|
|
76
|
-
maxLocalHistory: getRuntimeOptions().maxLocalHistory
|
|
78
|
+
maxLocalHistory: getRuntimeOptions().maxLocalHistory,
|
|
79
|
+
proxyUrl: getRuntimeOptions().proxyUrl
|
|
77
80
|
}), logger);
|
|
78
81
|
context.subscriptions.push(outputChannel);
|
|
79
82
|
context.subscriptions.push(vscode.window.registerWebviewViewProvider('csdnPrivateAi.sidebar', provider, {
|
|
@@ -81,6 +84,11 @@ function activate(context) {
|
|
|
81
84
|
retainContextWhenHidden: true
|
|
82
85
|
}
|
|
83
86
|
}));
|
|
87
|
+
context.subscriptions.push(vscode.workspace.onDidChangeConfiguration((event) => {
|
|
88
|
+
if (event.affectsConfiguration(constants_1.EXTENSION_NAMESPACE)) {
|
|
89
|
+
void provider.refresh();
|
|
90
|
+
}
|
|
91
|
+
}));
|
|
84
92
|
context.subscriptions.push(vscode.commands.registerCommand('csdnPrivateAi.openSidebar', async () => {
|
|
85
93
|
await provider.reveal();
|
|
86
94
|
}));
|
|
@@ -92,9 +100,16 @@ function activate(context) {
|
|
|
92
100
|
await provider.reveal();
|
|
93
101
|
await provider.promptForCookie();
|
|
94
102
|
}));
|
|
103
|
+
context.subscriptions.push(vscode.commands.registerCommand('csdnPrivateAi.setProxy', async () => {
|
|
104
|
+
await provider.reveal();
|
|
105
|
+
await provider.promptForProxy();
|
|
106
|
+
}));
|
|
95
107
|
context.subscriptions.push(vscode.commands.registerCommand('csdnPrivateAi.clearThread', async () => {
|
|
96
108
|
await provider.clearCurrentThread();
|
|
97
109
|
}));
|
|
110
|
+
context.subscriptions.push(vscode.commands.registerCommand('csdnPrivateAi.quoteSelection', async () => {
|
|
111
|
+
await provider.quoteSelectionFromEditor();
|
|
112
|
+
}));
|
|
98
113
|
}
|
|
99
114
|
function deactivate() { }
|
|
100
115
|
function normalizeNumber(value, fallback, min) {
|
|
@@ -103,4 +118,7 @@ function normalizeNumber(value, fallback, min) {
|
|
|
103
118
|
}
|
|
104
119
|
return Math.max(min, Math.floor(value));
|
|
105
120
|
}
|
|
121
|
+
function normalizeText(value) {
|
|
122
|
+
return typeof value === 'string' ? value.trim() : '';
|
|
123
|
+
}
|
|
106
124
|
//# sourceMappingURL=extension.js.map
|
package/dist/extension.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"extension.js","sourceRoot":"","sources":["../src/extension.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAaA,
|
|
1
|
+
{"version":3,"file":"extension.js","sourceRoot":"","sources":["../src/extension.ts"],"names":[],"mappings":"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"}
|
|
@@ -36,6 +36,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
36
36
|
exports.CsdnPrivateAiClient = void 0;
|
|
37
37
|
const https = __importStar(require("node:https"));
|
|
38
38
|
const constants_1 = require("../constants");
|
|
39
|
+
const proxy_1 = require("../utils/proxy");
|
|
39
40
|
const csdnSigner_1 = require("./csdnSigner");
|
|
40
41
|
class CsdnPrivateAiClient {
|
|
41
42
|
getRuntimeOptions;
|
|
@@ -46,22 +47,15 @@ class CsdnPrivateAiClient {
|
|
|
46
47
|
}
|
|
47
48
|
async validateArticle(article) {
|
|
48
49
|
const url = `${constants_1.BLOG_WEB_BASE}/v1/assistant/ai-config?articleId=${article.articleId}`;
|
|
49
|
-
const
|
|
50
|
+
const payload = await this.sendJsonRequest({
|
|
51
|
+
url,
|
|
52
|
+
method: 'GET',
|
|
50
53
|
headers: {
|
|
51
54
|
Accept: 'application/json, text/plain, */*',
|
|
52
55
|
Origin: 'https://blog.csdn.net',
|
|
53
56
|
Referer: article.url
|
|
54
|
-
}
|
|
55
|
-
signal: this.createTimeoutSignal()
|
|
57
|
+
}
|
|
56
58
|
});
|
|
57
|
-
if (!response.ok) {
|
|
58
|
-
this.logger.error('文章能力校验失败', {
|
|
59
|
-
articleId: article.articleId,
|
|
60
|
-
status: response.status
|
|
61
|
-
});
|
|
62
|
-
throw new Error(`文章校验失败,HTTP ${response.status}`);
|
|
63
|
-
}
|
|
64
|
-
const payload = (await response.json());
|
|
65
59
|
if (payload.code !== 200) {
|
|
66
60
|
this.logger.error('文章能力校验返回异常业务码', {
|
|
67
61
|
articleId: article.articleId,
|
|
@@ -109,7 +103,7 @@ class CsdnPrivateAiClient {
|
|
|
109
103
|
questionId: input.questionId,
|
|
110
104
|
sessionId: input.sessionId
|
|
111
105
|
});
|
|
112
|
-
const response = await this.
|
|
106
|
+
const response = await this.sendRequest(request, input.signal, 'stream');
|
|
113
107
|
const status = response.statusCode ?? 0;
|
|
114
108
|
if (status < 200 || status >= 300) {
|
|
115
109
|
const rawBody = await this.readIncomingMessage(response);
|
|
@@ -144,7 +138,7 @@ class CsdnPrivateAiClient {
|
|
|
144
138
|
}
|
|
145
139
|
})
|
|
146
140
|
};
|
|
147
|
-
const payload = await this.
|
|
141
|
+
const payload = await this.sendJsonRequest(request, signal);
|
|
148
142
|
if (payload.code !== 200) {
|
|
149
143
|
this.logger.error('获取 blog sessionId 失败', {
|
|
150
144
|
articleId: article.articleId,
|
|
@@ -243,11 +237,16 @@ class CsdnPrivateAiClient {
|
|
|
243
237
|
createTimeoutSignal() {
|
|
244
238
|
return AbortSignal.timeout(this.getRuntimeOptions().timeoutMs);
|
|
245
239
|
}
|
|
246
|
-
async
|
|
247
|
-
const response = await this.
|
|
240
|
+
async sendJsonRequest(request, signal) {
|
|
241
|
+
const response = await this.sendRequest(request, signal, 'json');
|
|
248
242
|
const status = response.statusCode ?? 0;
|
|
249
243
|
const rawBody = await this.readIncomingMessage(response);
|
|
250
244
|
if (status < 200 || status >= 300) {
|
|
245
|
+
this.logger.error('CSDN JSON 接口返回 HTTP 错误', {
|
|
246
|
+
status,
|
|
247
|
+
url: request.url,
|
|
248
|
+
responseBody: rawBody
|
|
249
|
+
});
|
|
251
250
|
throw new Error(this.readHttpError(status, rawBody));
|
|
252
251
|
}
|
|
253
252
|
if (!rawBody.trim()) {
|
|
@@ -260,13 +259,22 @@ class CsdnPrivateAiClient {
|
|
|
260
259
|
throw new Error('CSDN 返回了无法解析的 JSON 响应。');
|
|
261
260
|
}
|
|
262
261
|
}
|
|
263
|
-
async
|
|
262
|
+
async sendRequest(request, signal, mode) {
|
|
263
|
+
const requestSignal = mode === 'json' ? this.mergeSignal(signal) : signal;
|
|
264
|
+
const connectionSignal = this.mergeSignal(signal);
|
|
265
|
+
const proxyUrl = this.getRuntimeOptions().proxyUrl;
|
|
266
|
+
const proxySocket = proxyUrl ? await (0, proxy_1.createProxyTunnelSocket)(request.url, proxyUrl, connectionSignal) : undefined;
|
|
264
267
|
return new Promise((resolve, reject) => {
|
|
265
|
-
const requestSignal = mode === 'json' ? this.mergeSignal(signal) : signal;
|
|
266
268
|
const clientRequest = https.request(request.url, {
|
|
267
269
|
method: request.method,
|
|
268
270
|
headers: request.headers,
|
|
269
|
-
signal: requestSignal
|
|
271
|
+
signal: requestSignal,
|
|
272
|
+
...(proxySocket
|
|
273
|
+
? {
|
|
274
|
+
agent: false,
|
|
275
|
+
createConnection: () => proxySocket
|
|
276
|
+
}
|
|
277
|
+
: {})
|
|
270
278
|
}, (response) => {
|
|
271
279
|
if (mode === 'stream') {
|
|
272
280
|
const timeoutMs = this.getRuntimeOptions().timeoutMs;
|
|
@@ -283,6 +291,7 @@ class CsdnPrivateAiClient {
|
|
|
283
291
|
});
|
|
284
292
|
}
|
|
285
293
|
clientRequest.on('error', (error) => {
|
|
294
|
+
proxySocket?.destroy();
|
|
286
295
|
reject(error);
|
|
287
296
|
});
|
|
288
297
|
if (request.body) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"csdnClient.js","sourceRoot":"","sources":["../../src/services/csdnClient.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,kDAAoC;AACpC,4CAMsB;AAEtB,6CAA4E;AA4C5E,MAAa,mBAAmB;IAEX;IACA;IAFnB,YACmB,iBAAuC,EACvC,MAAc;QADd,sBAAiB,GAAjB,iBAAiB,CAAsB;QACvC,WAAM,GAAN,MAAM,CAAQ;IAC9B,CAAC;IAEG,KAAK,CAAC,eAAe,CAAC,OAAqB;QAChD,MAAM,GAAG,GAAG,GAAG,yBAAa,qCAAqC,OAAO,CAAC,SAAS,EAAE,CAAC;QACrF,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE;YAChC,OAAO,EAAE;gBACP,MAAM,EAAE,mCAAmC;gBAC3C,MAAM,EAAE,uBAAuB;gBAC/B,OAAO,EAAE,OAAO,CAAC,GAAG;aACrB;YACD,MAAM,EAAE,IAAI,CAAC,mBAAmB,EAAE;SACnC,CAAC,CAAC;QAEH,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;YACjB,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,UAAU,EAAE;gBAC5B,SAAS,EAAE,OAAO,CAAC,SAAS;gBAC5B,MAAM,EAAE,QAAQ,CAAC,MAAM;aACxB,CAAC,CAAC;YACH,MAAM,IAAI,KAAK,CAAC,eAAe,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC;QACpD,CAAC;QAED,MAAM,OAAO,GAAG,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAqB,CAAC;QAC5D,IAAI,OAAO,CAAC,IAAI,KAAK,GAAG,EAAE,CAAC;YACzB,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,eAAe,EAAE;gBACjC,SAAS,EAAE,OAAO,CAAC,SAAS;gBAC5B,IAAI,EAAE,OAAO,CAAC,IAAI;gBAClB,OAAO,EAAE,OAAO,CAAC,OAAO,IAAI,EAAE;aAC/B,CAAC,CAAC;YACH,MAAM,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,IAAI,cAAc,CAAC,CAAC;QACrD,CAAC;QAED,MAAM,YAAY,GAAG,OAAO,CAAC,IAAI,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC;QACnF,IAAI,CAAC,YAAY,EAAE,CAAC;YAClB,MAAM,IAAI,KAAK,CAAC,8BAA8B,CAAC,CAAC;QAClD,CAAC;QAED,OAAO;YACL,GAAG,OAAO;YACV,GAAG,EAAE,OAAO,CAAC,IAAI,EAAE,UAAU,IAAI,OAAO,CAAC,GAAG;YAC5C,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE;SACtB,CAAC;IACJ,CAAC;IAEM,KAAK,CAAC,gBAAgB,CAAC,KAA0B;QACtD,MAAM,eAAe,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;QACjG,MAAM,SAAS,GAAG,eAAe,IAAI,KAAK,CAAC,iBAAiB,CAAC;QAE7D,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,0BAA0B,EAAE;YAC5C,SAAS,EAAE,KAAK,CAAC,OAAO,CAAC,SAAS;YAClC,UAAU,EAAE,OAAO,CAAC,eAAe,CAAC;YACpC,SAAS;SACV,CAAC,CAAC;QAEH,OAAO,SAAS,CAAC;IACnB,CAAC;IAEM,KAAK,CAAC,UAAU,CAAC,KAAsB;QAC5C,MAAM,OAAO,GAAG,IAAI,CAAC,sBAAsB,CAAC,KAAK,CAAC,CAAC;QACnD,MAAM,SAAS,GAAG,IAAA,qCAAwB,EAAC;YACzC,KAAK,EAAE,OAAO,CAAC,KAAK;YACpB,OAAO,EAAE,OAAO,CAAC,OAAO;YACxB,SAAS,EAAE,OAAO,CAAC,SAAS;SAC7B,CAAC,CAAC;QACH,MAAM,OAAO,GAAG,IAAI,CAAC,sBAAsB,CAAC;YAC1C,MAAM,EAAE,KAAK,CAAC,MAAM;YACpB,OAAO;YACP,SAAS;YACT,SAAS,EAAE,KAAK,CAAC,SAAS;SAC3B,CAAC,CAAC;QAEH,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,2BAA2B,EAAE;YAC7C,SAAS,EAAE,KAAK,CAAC,OAAO,CAAC,SAAS;YAClC,SAAS,EAAE,KAAK,CAAC,SAAS;YAC1B,UAAU,EAAE,KAAK,CAAC,UAAU;YAC5B,SAAS,EAAE,KAAK,CAAC,SAAS;SAC3B,CAAC,CAAC;QAEH,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,OAAO,EAAE,KAAK,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;QAC/E,MAAM,MAAM,GAAG,QAAQ,CAAC,UAAU,IAAI,CAAC,CAAC;QAExC,IAAI,MAAM,GAAG,GAAG,IAAI,MAAM,IAAI,GAAG,EAAE,CAAC;YAClC,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,mBAAmB,CAAC,QAAQ,CAAC,CAAC;YACzD,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,gCAAgC,EAAE;gBAClD,SAAS,EAAE,KAAK,CAAC,OAAO,CAAC,SAAS;gBAClC,MAAM;gBACN,SAAS,EAAE,KAAK,CAAC,SAAS;gBAC1B,UAAU,EAAE,KAAK,CAAC,UAAU;gBAC5B,SAAS,EAAE,KAAK,CAAC,SAAS;gBAC1B,YAAY,EAAE,OAAO;aACtB,CAAC,CAAC;YACH,MAAM,IAAI,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;QACvD,CAAC;QAED,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC;YACvB,MAAM,IAAI,KAAK,CAAC,cAAc,CAAC,CAAC;QAClC,CAAC;QAED,MAAM,IAAI,CAAC,kBAAkB,CAAC,QAAQ,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;IACzD,CAAC;IAEO,KAAK,CAAC,kBAAkB,CAAC,OAAqB,EAAE,MAAc,EAAE,MAAoB;QAC1F,MAAM,GAAG,GAAG,GAAG,uBAAW,GAAG,mCAAuB,cAAc,OAAO,CAAC,SAAS,QAAQ,CAAC;QAC5F,MAAM,OAAO,GAAsB;YACjC,GAAG;YACH,MAAM,EAAE,KAAK;YACb,OAAO,EAAE,IAAA,+BAAkB,EAAC;gBAC1B,GAAG;gBACH,MAAM,EAAE,KAAK;gBACb,OAAO,EAAE;oBACP,MAAM,EAAE,mCAAmC;oBAC3C,MAAM,EAAE,MAAM;oBACd,MAAM,EAAE,uBAAuB;oBAC/B,OAAO,EAAE,OAAO,CAAC,GAAG;iBACrB;aACF,CAAC;SACH,CAAC;QAEF,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,qBAAqB,CAAuB,OAAO,EAAE,MAAM,CAAC,CAAC;QACxF,IAAI,OAAO,CAAC,IAAI,KAAK,GAAG,EAAE,CAAC;YACzB,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,sBAAsB,EAAE;gBACxC,SAAS,EAAE,OAAO,CAAC,SAAS;gBAC5B,IAAI,EAAE,OAAO,CAAC,IAAI;gBAClB,OAAO,EAAE,OAAO,CAAC,GAAG,IAAI,EAAE;aAC3B,CAAC,CAAC;YACH,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,OAAO,CAAC,GAAG,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;QAClE,CAAC;QAED,MAAM,SAAS,GAAG,qBAAqB,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QACtD,OAAO,SAAS,IAAI,IAAI,CAAC;IAC3B,CAAC;IAEO,sBAAsB,CAAC,KAAsB;QACnD,OAAO;YACL,MAAM,EAAE;gBACN,MAAM,EAAE,EAAE;gBACV,OAAO,EAAE,GAAG;gBACZ,QAAQ,EAAE,IAAI;gBACd,GAAG,EAAE,kBAAkB,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC;gBAC1C,SAAS,EAAE,GAAG;aACf;YACD,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE;YACzB,OAAO,EAAE,KAAK,CAAC,UAAU;YACzB,SAAS,EAAE,KAAK,CAAC,SAAS;YAC1B,QAAQ,EAAE,KAAK,CAAC,SAAS;SAC1B,CAAC;IACJ,CAAC;IAEO,sBAAsB,CAAC,KAK9B;QACC,MAAM,GAAG,GAAG,GAAG,uBAAW,GAAG,0CAA8B,SAAS,KAAK,CAAC,SAAS,EAAE,CAAC;QACtF,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QAC3C,MAAM,OAAO,GAAG,IAAA,+BAAkB,EAAC;YACjC,GAAG;YACH,MAAM,EAAE,MAAM;YACd,OAAO,EAAE;gBACP,MAAM,EAAE,KAAK;gBACb,cAAc,EAAE,kBAAkB;gBAClC,MAAM,EAAE,KAAK,CAAC,MAAM;gBACpB,MAAM,EAAE,wBAAY;gBACpB,OAAO,EAAE,GAAG,wBAAY,cAAc,KAAK,CAAC,SAAS,EAAE;aACxD;SACF,CAAC,CAAC;QAEH,OAAO;YACL,GAAG;YACH,MAAM,EAAE,MAAM;YACd,OAAO;YACP,IAAI;SACL,CAAC;IACJ,CAAC;IAEO,KAAK,CAAC,kBAAkB,CAC9B,MAA6B,EAC7B,OAAkD;QAElD,MAAM,OAAO,GAAG,IAAI,WAAW,CAAC,OAAO,CAAC,CAAC;QACzC,IAAI,MAAM,GAAG,EAAE,CAAC;QAChB,IAAI,QAAQ,GAAG,KAAK,CAAC;QAErB,IAAI,KAAK,EAAE,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;YACjC,MAAM,IAAI,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;YACtF,MAAM,MAAM,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC;YACnC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC;YAEvB,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;gBAClC,MAAM,KAAK,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;gBACnC,IAAI,CAAC,KAAK,EAAE,CAAC;oBACX,SAAS;gBACX,CAAC;gBAED,IAAI,KAAK,CAAC,KAAK,EAAE,CAAC;oBAChB,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,4BAA4B,EAAE;wBAC9C,KAAK,EAAE,KAAK,CAAC,KAAK;qBACnB,CAAC,CAAC;oBACH,MAAM,IAAI,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;gBAC/B,CAAC;gBAED,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC;oBACf,QAAQ,GAAG,IAAI,CAAC;oBAChB,MAAM;gBACR,CAAC;gBAED,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC;oBACf,MAAM,OAAO,CAAC,KAAK,CAAC,CAAC;gBACvB,CAAC;YACH,CAAC;YAED,IAAI,QAAQ,EAAE,CAAC;gBACb,MAAM;YACR,CAAC;QACH,CAAC;QAED,IAAI,CAAC,QAAQ,IAAI,MAAM,CAAC,IAAI,EAAE,EAAE,CAAC;YAC/B,MAAM,KAAK,GAAG,aAAa,CAAC,MAAM,CAAC,CAAC;YACpC,IAAI,KAAK,EAAE,KAAK,EAAE,CAAC;gBACjB,MAAM,IAAI,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YAC/B,CAAC;YAED,IAAI,KAAK,EAAE,IAAI,EAAE,CAAC;gBAChB,MAAM,OAAO,CAAC,KAAK,CAAC,CAAC;YACvB,CAAC;QACH,CAAC;IACH,CAAC;IAEO,WAAW,CAAC,MAAoB;QACtC,MAAM,aAAa,GAAG,IAAI,CAAC,mBAAmB,EAAE,CAAC;QACjD,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,OAAO,aAAa,CAAC;QACvB,CAAC;QAED,OAAO,WAAW,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC,CAAC;IAClD,CAAC;IAEO,mBAAmB;QACzB,OAAO,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,iBAAiB,EAAE,CAAC,SAAS,CAAC,CAAC;IACjE,CAAC;IAEO,KAAK,CAAC,qBAAqB,CAAI,OAA0B,EAAE,MAAoB;QACrF,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;QACvE,MAAM,MAAM,GAAG,QAAQ,CAAC,UAAU,IAAI,CAAC,CAAC;QACxC,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,mBAAmB,CAAC,QAAQ,CAAC,CAAC;QAEzD,IAAI,MAAM,GAAG,GAAG,IAAI,MAAM,IAAI,GAAG,EAAE,CAAC;YAClC,MAAM,IAAI,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;QACvD,CAAC;QAED,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC;YACpB,MAAM,IAAI,KAAK,CAAC,oBAAoB,CAAC,CAAC;QACxC,CAAC;QAED,IAAI,CAAC;YACH,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,CAAM,CAAC;QAClC,CAAC;QAAC,MAAM,CAAC;YACP,MAAM,IAAI,KAAK,CAAC,wBAAwB,CAAC,CAAC;QAC5C,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,iBAAiB,CAC7B,OAA0B,EAC1B,MAA+B,EAC/B,IAAuB;QAEvB,OAAO,IAAI,OAAO,CAAkB,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACtD,MAAM,aAAa,GAAG,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;YAC1E,MAAM,aAAa,GAAG,KAAK,CAAC,OAAO,CACjC,OAAO,CAAC,GAAG,EACX;gBACE,MAAM,EAAE,OAAO,CAAC,MAAM;gBACtB,OAAO,EAAE,OAAO,CAAC,OAAO;gBACxB,MAAM,EAAE,aAAa;aACtB,EACD,CAAC,QAAQ,EAAE,EAAE;gBACX,IAAI,IAAI,KAAK,QAAQ,EAAE,CAAC;oBACtB,MAAM,SAAS,GAAG,IAAI,CAAC,iBAAiB,EAAE,CAAC,SAAS,CAAC;oBACrD,QAAQ,CAAC,UAAU,CAAC,SAAS,EAAE,GAAG,EAAE;wBAClC,QAAQ,CAAC,OAAO,CAAC,wBAAwB,CAAC,SAAS,CAAC,CAAC,CAAC;oBACxD,CAAC,CAAC,CAAC;gBACL,CAAC;gBAED,OAAO,CAAC,QAAQ,CAAC,CAAC;YACpB,CAAC,CACF,CAAC;YAEF,IAAI,IAAI,KAAK,QAAQ,EAAE,CAAC;gBACtB,MAAM,SAAS,GAAG,IAAI,CAAC,iBAAiB,EAAE,CAAC,SAAS,CAAC;gBACrD,aAAa,CAAC,UAAU,CAAC,SAAS,EAAE,GAAG,EAAE;oBACvC,aAAa,CAAC,OAAO,CAAC,wBAAwB,CAAC,SAAS,CAAC,CAAC,CAAC;gBAC7D,CAAC,CAAC,CAAC;YACL,CAAC;YAED,aAAa,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE;gBAClC,MAAM,CAAC,KAAK,CAAC,CAAC;YAChB,CAAC,CAAC,CAAC;YAEH,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;gBACjB,aAAa,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;YACpC,CAAC;YAED,aAAa,CAAC,GAAG,EAAE,CAAC;QACtB,CAAC,CAAC,CAAC;IACL,CAAC;IAEO,KAAK,CAAC,mBAAmB,CAAC,QAAyB;QACzD,MAAM,MAAM,GAAa,EAAE,CAAC;QAC5B,IAAI,KAAK,EAAE,MAAM,KAAK,IAAI,QAAQ,EAAE,CAAC;YACnC,MAAM,CAAC,IAAI,CAAC,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC;QAC1E,CAAC;QAED,OAAO,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACzB,CAAC;IAEO,aAAa,CAAC,MAAc,EAAE,OAAe;QACnD,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC;QAC5B,IAAI,OAAO,GAAG,EAAE,CAAC;QAEjB,IAAI,IAAI,EAAE,CAAC;YACT,IAAI,CAAC;gBACH,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAuC,CAAC;gBACvE,IAAI,OAAO,OAAO,CAAC,OAAO,KAAK,QAAQ,EAAE,CAAC;oBACxC,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;gBACnC,CAAC;qBAAM,IAAI,OAAO,OAAO,CAAC,GAAG,KAAK,QAAQ,EAAE,CAAC;oBAC3C,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC;gBAC/B,CAAC;YACH,CAAC;YAAC,MAAM,CAAC;gBACP,OAAO,GAAG,IAAI,CAAC;YACjB,CAAC;QACH,CAAC;QAED,IAAI,gCAAgC,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;YACnD,OAAO,oBAAoB,MAAM,6FAA6F,CAAC;QACjI,CAAC;QAED,IAAI,MAAM,KAAK,GAAG,IAAI,MAAM,KAAK,GAAG,EAAE,CAAC;YACrC,OAAO,OAAO;gBACZ,CAAC,CAAC,kBAAkB,MAAM,IAAI,OAAO,EAAE;gBACvC,CAAC,CAAC,kBAAkB,MAAM,kBAAkB,CAAC;QACjD,CAAC;QAED,OAAO,OAAO,IAAI,aAAa,MAAM,EAAE,CAAC;IAC1C,CAAC;CACF;AA5VD,kDA4VC;AAED,SAAS,WAAW,CAAC,MAAc;IACjC,MAAM,UAAU,GAAG,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;IACjD,MAAM,MAAM,GAAG,UAAU,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IACxC,MAAM,OAAO,GAAG,MAAM,CAAC,GAAG,EAAE,IAAI,EAAE,CAAC;IACnC,OAAO;QACL,MAAM;QACN,MAAM,EAAE,OAAO;KAChB,CAAC;AACJ,CAAC;AAED,SAAS,aAAa,CAAC,KAAa;IAClC,MAAM,SAAS,GAAG,KAAK;SACpB,KAAK,CAAC,IAAI,CAAC;SACX,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;SAC1C,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC;IAE5C,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC;QACtB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM,GAAG,GAAG,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,CAAC;IACxC,IAAI,CAAC,GAAG,EAAE,CAAC;QACT,OAAO,IAAI,CAAC;IACd,CAAC;IAED,IAAI,GAAG,KAAK,QAAQ,EAAE,CAAC;QACrB,OAAO;YACL,GAAG;YACH,IAAI,EAAE,IAAI;SACX,CAAC;IACJ,CAAC;IAED,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAA4B,CAAC;QAC3D,MAAM,KAAK,GAAG,mBAAmB,CAAC,OAAO,CAAC,CAAC;QAC3C,IAAI,KAAK,EAAE,CAAC;YACV,OAAO;gBACL,GAAG;gBACH,KAAK;aACN,CAAC;QACJ,CAAC;QAED,MAAM,KAAK,GAAG,OAAO,OAAO,CAAC,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;QACrE,IAAI,KAAK,EAAE,CAAC;YACV,IAAI,KAAK,KAAK,aAAa,EAAE,CAAC;gBAC5B,OAAO;oBACL,GAAG;oBACH,IAAI,EAAE,IAAI;iBACX,CAAC;YACJ,CAAC;YAED,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;gBACxB,MAAM,MAAM,GAAG,gBAAgB,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;gBAChD,IAAI,MAAM,EAAE,CAAC;oBACX,OAAO;wBACL,GAAG;wBACH,IAAI,EAAE,MAAM;qBACb,CAAC;gBACJ,CAAC;YACH,CAAC;YAED,IAAI,KAAK,KAAK,mBAAmB,EAAE,CAAC;gBAClC,MAAM,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC;gBAClC,IAAI,YAAY,IAAI,OAAO,YAAY,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE,CAAC;oBACrF,MAAM,MAAM,GAAI,YAAwC,CAAC,MAAM,CAAC;oBAChE,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,IAAI,MAAM,KAAK,WAAW,EAAE,CAAC;wBACnE,OAAO;4BACL,GAAG;4BACH,KAAK,EAAE,0BAA0B,MAAM,GAAG;yBAC3C,CAAC;oBACJ,CAAC;gBACH,CAAC;YACH,CAAC;YAED,IAAI,KAAK,KAAK,OAAO,EAAE,CAAC;gBACtB,OAAO;oBACL,GAAG;oBACH,KAAK,EAAE,mBAAmB,CAAC,OAAO,CAAC,OAAO,EAAE,OAAO,OAAO,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC;iBACzG,CAAC;YACJ,CAAC;YAED,OAAO,IAAI,CAAC;QACd,CAAC;QAED,MAAM,IAAI,GAAG,gBAAgB,CAAC,OAAO,CAAC,CAAC;QACvC,IAAI,IAAI,EAAE,CAAC;YACT,OAAO;gBACL,GAAG;gBACH,IAAI;aACL,CAAC;QACJ,CAAC;QAED,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,KAAK,IAAI,IAAI,OAAO,CAAC,MAAM,KAAK,IAAI,IAAI,OAAO,CAAC,aAAa,KAAK,MAAM,CAAC;QAClG,IAAI,IAAI,EAAE,CAAC;YACT,OAAO;gBACL,GAAG;gBACH,IAAI,EAAE,IAAI;aACX,CAAC;QACJ,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACP,OAAO;YACL,GAAG;YACH,IAAI,EAAE,GAAG;SACV,CAAC;IACJ,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,mBAAmB,CAAC,OAAgC;IAC3D,MAAM,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC;IAClC,IAAI,OAAO,YAAY,KAAK,QAAQ,IAAI,YAAY,KAAK,GAAG,EAAE,CAAC;QAC7D,OAAO,mBAAmB,CAAC,OAAO,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC;IAC5D,CAAC;IAED,MAAM,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC;IAChC,IAAI,UAAU,IAAI,OAAO,UAAU,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,CAAC;QAC/E,MAAM,YAAY,GAAG,UAAqC,CAAC;QAC3D,MAAM,UAAU,GAAG,YAAY,CAAC,IAAI,CAAC;QACrC,IAAI,OAAO,UAAU,KAAK,QAAQ,IAAI,UAAU,KAAK,GAAG,EAAE,CAAC;YACzD,OAAO,mBAAmB,CAAC,YAAY,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;QAC/D,CAAC;IACH,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,gBAAgB,CAAC,OAAgB;IACxC,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE,CAAC;QAChC,OAAO,OAAO,CAAC;IACjB,CAAC;IAED,IAAI,CAAC,OAAO,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE,CAAC;QAC5C,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;QAC3B,OAAO,OAAO,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAChE,CAAC;IAED,MAAM,MAAM,GAAG,OAAkC,CAAC;IAClD,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC;IAC/B,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;QAC3B,OAAO,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACpE,CAAC;IAED,MAAM,aAAa,GAAG,CAAC,SAAS,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAC;IACvE,KAAK,MAAM,GAAG,IAAI,aAAa,EAAE,CAAC;QAChC,MAAM,SAAS,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;QAC9B,MAAM,IAAI,GAAG,gBAAgB,CAAC,SAAS,CAAC,CAAC;QACzC,IAAI,IAAI,EAAE,CAAC;YACT,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;IAED,IAAI,MAAM,CAAC,IAAI,EAAE,CAAC;QAChB,OAAO,gBAAgB,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IACvC,CAAC;IAED,OAAO,EAAE,CAAC;AACZ,CAAC;AAED,SAAS,mBAAmB,CAAC,OAAgB,EAAE,IAAa;IAC1D,IAAI,IAAI,KAAK,MAAM,EAAE,CAAC;QACpB,OAAO,+IAA+I,CAAC;IACzJ,CAAC;IAED,MAAM,IAAI,GAAG,OAAO,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IAC/D,IAAI,CAAC,IAAI,EAAE,CAAC;QACV,OAAO,IAAI,CAAC,CAAC,CAAC,eAAe,IAAI,GAAG,CAAC,CAAC,CAAC,eAAe,CAAC;IACzD,CAAC;IAED,IAAI,sBAAsB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;QACtC,OAAO,IAAI;YACT,CAAC,CAAC,oBAAoB,IAAI,mBAAmB;YAC7C,CAAC,CAAC,oCAAoC,CAAC;IAC3C,CAAC;IAED,OAAO,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI,QAAQ,IAAI,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC;AAC9C,CAAC;AAED,SAAS,kBAAkB,CAAC,MAAc;IACxC,MAAM,SAAS,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,CAAC;IAClC,SAAS,CAAC,MAAM,GAAG,EAAE,CAAC;IACtB,SAAS,CAAC,IAAI,GAAG,EAAE,CAAC;IACpB,OAAO,SAAS,CAAC,QAAQ,EAAE,CAAC;AAC9B,CAAC;AAED,SAAS,wBAAwB,CAAC,SAAiB;IACjD,MAAM,KAAK,GAAG,IAAI,KAAK,CAAC,qBAAqB,IAAI,CAAC,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,6CAA6C,CAAC,CAAC;IACvH,KAAK,CAAC,IAAI,GAAG,cAAc,CAAC;IAC5B,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAS,qBAAqB,CAAC,IAAkC;IAC/D,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE,CAAC;QAC7B,OAAO,IAAI,CAAC,IAAI,EAAE,CAAC;IACrB,CAAC;IAED,IAAI,CAAC,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;QAC7D,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC;IACrB,OAAO,OAAO,GAAG,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AACnD,CAAC"}
|
|
1
|
+
{"version":3,"file":"csdnClient.js","sourceRoot":"","sources":["../../src/services/csdnClient.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,106 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.renderMarkdown = renderMarkdown;
|
|
7
|
+
const markdown_it_1 = __importDefault(require("markdown-it"));
|
|
8
|
+
const highlight_js_1 = __importDefault(require("highlight.js"));
|
|
9
|
+
const languageAliasMap = {
|
|
10
|
+
cjs: 'javascript',
|
|
11
|
+
cs: 'csharp',
|
|
12
|
+
html: 'xml',
|
|
13
|
+
js: 'javascript',
|
|
14
|
+
jsx: 'javascript',
|
|
15
|
+
md: 'markdown',
|
|
16
|
+
py: 'python',
|
|
17
|
+
rs: 'rust',
|
|
18
|
+
sh: 'bash',
|
|
19
|
+
shell: 'bash',
|
|
20
|
+
text: 'plaintext',
|
|
21
|
+
ts: 'typescript',
|
|
22
|
+
tsx: 'typescript',
|
|
23
|
+
vue: 'xml',
|
|
24
|
+
yml: 'yaml'
|
|
25
|
+
};
|
|
26
|
+
const markdownIt = new markdown_it_1.default({
|
|
27
|
+
html: false,
|
|
28
|
+
breaks: true,
|
|
29
|
+
linkify: true,
|
|
30
|
+
typographer: false,
|
|
31
|
+
highlight(code, language) {
|
|
32
|
+
const normalizedLanguage = normalizeLanguage(language);
|
|
33
|
+
try {
|
|
34
|
+
if (normalizedLanguage && highlight_js_1.default.getLanguage(normalizedLanguage)) {
|
|
35
|
+
const result = highlight_js_1.default.highlight(code, {
|
|
36
|
+
language: normalizedLanguage,
|
|
37
|
+
ignoreIllegals: true
|
|
38
|
+
});
|
|
39
|
+
return `<pre><code class="hljs language-${escapeAttribute(normalizedLanguage)}">${result.value}</code></pre>`;
|
|
40
|
+
}
|
|
41
|
+
const autoResult = highlight_js_1.default.highlightAuto(code);
|
|
42
|
+
const autoLanguage = autoResult.language ? ` language-${escapeAttribute(autoResult.language)}` : '';
|
|
43
|
+
return `<pre><code class="hljs${autoLanguage}">${autoResult.value}</code></pre>`;
|
|
44
|
+
}
|
|
45
|
+
catch {
|
|
46
|
+
return `<pre><code class="hljs language-plaintext">${escapeHtml(code)}</code></pre>`;
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
});
|
|
50
|
+
const originalLinkOpen = markdownIt.renderer.rules.link_open ??
|
|
51
|
+
function renderLinkOpen(tokens, idx, options, _env, self) {
|
|
52
|
+
return self.renderToken(tokens, idx, options);
|
|
53
|
+
};
|
|
54
|
+
markdownIt.renderer.rules.link_open = function renderLinkOpen(tokens, idx, options, env, self) {
|
|
55
|
+
const token = tokens[idx];
|
|
56
|
+
token.attrSet('target', '_blank');
|
|
57
|
+
token.attrSet('rel', 'noopener noreferrer');
|
|
58
|
+
return originalLinkOpen(tokens, idx, options, env, self);
|
|
59
|
+
};
|
|
60
|
+
function renderMarkdown(value) {
|
|
61
|
+
const rendered = markdownIt.render(String(value || ''));
|
|
62
|
+
return enhanceCodeBlocks(rendered);
|
|
63
|
+
}
|
|
64
|
+
function normalizeLanguage(language) {
|
|
65
|
+
const safeLanguage = String(language || '').trim().toLowerCase();
|
|
66
|
+
if (!safeLanguage) {
|
|
67
|
+
return '';
|
|
68
|
+
}
|
|
69
|
+
return languageAliasMap[safeLanguage] || safeLanguage;
|
|
70
|
+
}
|
|
71
|
+
function escapeHtml(value) {
|
|
72
|
+
return String(value)
|
|
73
|
+
.replaceAll('&', '&')
|
|
74
|
+
.replaceAll('<', '<')
|
|
75
|
+
.replaceAll('>', '>')
|
|
76
|
+
.replaceAll('"', '"')
|
|
77
|
+
.replaceAll("'", ''');
|
|
78
|
+
}
|
|
79
|
+
function escapeAttribute(value) {
|
|
80
|
+
return escapeHtml(value).replaceAll('`', '`');
|
|
81
|
+
}
|
|
82
|
+
function enhanceCodeBlocks(renderedHtml) {
|
|
83
|
+
return renderedHtml.replace(/<pre><code( class="([^"]*)")?>([\s\S]*?)<\/code><\/pre>/g, (_match, _classAttr, className, codeHtml) => {
|
|
84
|
+
if (typeof className === 'string' && className.includes('hljs')) {
|
|
85
|
+
return `<pre><code class="${className}">${codeHtml}</code></pre>`;
|
|
86
|
+
}
|
|
87
|
+
const plainCode = decodeHtml(codeHtml);
|
|
88
|
+
try {
|
|
89
|
+
const autoResult = highlight_js_1.default.highlightAuto(plainCode);
|
|
90
|
+
const detectedLanguage = autoResult.language || 'plaintext';
|
|
91
|
+
return `<pre><code class="hljs language-${escapeAttribute(detectedLanguage)}">${autoResult.value}</code></pre>`;
|
|
92
|
+
}
|
|
93
|
+
catch {
|
|
94
|
+
return `<pre><code class="hljs language-plaintext">${escapeHtml(plainCode)}</code></pre>`;
|
|
95
|
+
}
|
|
96
|
+
});
|
|
97
|
+
}
|
|
98
|
+
function decodeHtml(value) {
|
|
99
|
+
return String(value)
|
|
100
|
+
.replaceAll('<', '<')
|
|
101
|
+
.replaceAll('>', '>')
|
|
102
|
+
.replaceAll('"', '"')
|
|
103
|
+
.replaceAll(''', "'")
|
|
104
|
+
.replaceAll('&', '&');
|
|
105
|
+
}
|
|
106
|
+
//# sourceMappingURL=markdownRenderer.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"markdownRenderer.js","sourceRoot":"","sources":["../../src/services/markdownRenderer.ts"],"names":[],"mappings":"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"}
|