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 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. 点击 `更新 CSDN Cookie`
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
package/dist/constants.js CHANGED
@@ -20,6 +20,7 @@ exports.DEFAULT_MAX_LOCAL_HISTORY = 40;
20
20
  exports.CONFIG_KEYS = {
21
21
  requestTimeoutMs: 'requestTimeoutMs',
22
22
  maxLocalHistory: 'maxLocalHistory',
23
+ proxyUrl: 'proxyUrl',
23
24
  debug: 'debug'
24
25
  };
25
26
  exports.SIGNATURE_HEADER_ALLOWLIST = new Set([
@@ -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
@@ -1 +1 @@
1
- {"version":3,"file":"extension.js","sourceRoot":"","sources":["../src/extension.ts"],"names":[],"mappings":"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"}
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 response = await fetch(url, {
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.sendSignedRequest(request, input.signal, 'stream');
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.sendSignedJsonRequest(request, signal);
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 sendSignedJsonRequest(request, signal) {
247
- const response = await this.sendSignedRequest(request, signal, 'json');
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 sendSignedRequest(request, signal, mode) {
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":"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"}
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('&', '&amp;')
74
+ .replaceAll('<', '&lt;')
75
+ .replaceAll('>', '&gt;')
76
+ .replaceAll('"', '&quot;')
77
+ .replaceAll("'", '&#39;');
78
+ }
79
+ function escapeAttribute(value) {
80
+ return escapeHtml(value).replaceAll('`', '&#96;');
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('&lt;', '<')
101
+ .replaceAll('&gt;', '>')
102
+ .replaceAll('&quot;', '"')
103
+ .replaceAll('&#39;', "'")
104
+ .replaceAll('&amp;', '&');
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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"}