@fgbg/mdocs 0.8.25 → 1.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (145) hide show
  1. package/agent-skills/changelog/SKILL.md +43 -1
  2. package/agent-skills/index.json +8 -1
  3. package/agent-skills/usage-knowledge-graph/SKILL.md +126 -0
  4. package/agent-skills/usage-onboarding-ai/SKILL.md +36 -5
  5. package/dist/server/agent/Agent/run.js +60 -34
  6. package/dist/server/agent/Agent/run.js.map +1 -1
  7. package/dist/server/agent/Agent/tools-documents.js +1 -1
  8. package/dist/server/agent/Agent/tools-documents.js.map +1 -1
  9. package/dist/server/agent/Config/config.js +234 -64
  10. package/dist/server/agent/Config/config.js.map +1 -1
  11. package/dist/server/agent/Config/config.test.js +109 -0
  12. package/dist/server/agent/Config/config.test.js.map +1 -0
  13. package/dist/server/app.js +2 -0
  14. package/dist/server/app.js.map +1 -1
  15. package/dist/server/db/repositories/agent-model-config.repo.js +58 -27
  16. package/dist/server/db/repositories/agent-model-config.repo.js.map +1 -1
  17. package/dist/server/db/schema.js +96 -1
  18. package/dist/server/db/schema.js.map +1 -1
  19. package/dist/server/documents/build-graph.e2e.test.js +65 -0
  20. package/dist/server/documents/build-graph.e2e.test.js.map +1 -0
  21. package/dist/server/documents/document.service.js +34 -2
  22. package/dist/server/documents/document.service.js.map +1 -1
  23. package/dist/server/documents/graph/change-ratio.js +29 -0
  24. package/dist/server/documents/graph/change-ratio.js.map +1 -0
  25. package/dist/server/documents/graph/change-ratio.test.js +38 -0
  26. package/dist/server/documents/graph/change-ratio.test.js.map +1 -0
  27. package/dist/server/documents/graph/graph-agent.integration.test.js +95 -0
  28. package/dist/server/documents/graph/graph-agent.integration.test.js.map +1 -0
  29. package/dist/server/documents/graph/graph-agent.js +185 -0
  30. package/dist/server/documents/graph/graph-agent.js.map +1 -0
  31. package/dist/server/documents/graph/graph-file.js +58 -0
  32. package/dist/server/documents/graph/graph-file.js.map +1 -0
  33. package/dist/server/documents/graph/graph-file.test.js +28 -0
  34. package/dist/server/documents/graph/graph-file.test.js.map +1 -0
  35. package/dist/server/documents/graph/index.js +183 -0
  36. package/dist/server/documents/graph/index.js.map +1 -0
  37. package/dist/server/documents/graph/lifecycle.js +104 -0
  38. package/dist/server/documents/graph/lifecycle.js.map +1 -0
  39. package/dist/server/documents/graph/llm-chains.js +135 -0
  40. package/dist/server/documents/graph/llm-chains.js.map +1 -0
  41. package/dist/server/documents/graph/llm-utils.js +19 -0
  42. package/dist/server/documents/graph/llm-utils.js.map +1 -0
  43. package/dist/server/documents/graph/llm-utils.test.js +34 -0
  44. package/dist/server/documents/graph/llm-utils.test.js.map +1 -0
  45. package/dist/server/documents/graph/tools/concept-relations.tool.js +49 -0
  46. package/dist/server/documents/graph/tools/concept-relations.tool.js.map +1 -0
  47. package/dist/server/documents/graph/tools/extract-knowledge-points.tool.js +45 -0
  48. package/dist/server/documents/graph/tools/extract-knowledge-points.tool.js.map +1 -0
  49. package/dist/server/documents/graph/tools/generate-contains.tool.js +41 -0
  50. package/dist/server/documents/graph/tools/generate-contains.tool.js.map +1 -0
  51. package/dist/server/documents/graph/tools/induce-concepts.tool.js +43 -0
  52. package/dist/server/documents/graph/tools/induce-concepts.tool.js.map +1 -0
  53. package/dist/server/documents/graph/types.js +12 -0
  54. package/dist/server/documents/graph/types.js.map +1 -0
  55. package/dist/server/documents/graph/utils.js +41 -0
  56. package/dist/server/documents/graph/utils.js.map +1 -0
  57. package/dist/server/documents/graph/utils.test.js +87 -0
  58. package/dist/server/documents/graph/utils.test.js.map +1 -0
  59. package/dist/server/documents/graph-cache-io.js +254 -0
  60. package/dist/server/documents/graph-cache-io.js.map +1 -0
  61. package/dist/server/documents/graph-lifecycle.js +19 -0
  62. package/dist/server/documents/graph-lifecycle.js.map +1 -0
  63. package/dist/server/documents/graph-task.js +232 -0
  64. package/dist/server/documents/graph-task.js.map +1 -0
  65. package/dist/server/documents/graph.integration.test.js +213 -0
  66. package/dist/server/documents/graph.integration.test.js.map +1 -0
  67. package/dist/server/documents/graph.service.js +296 -0
  68. package/dist/server/documents/graph.service.js.map +1 -0
  69. package/dist/server/documents/markdown-to-lexical.js +111 -13
  70. package/dist/server/documents/markdown-to-lexical.js.map +1 -1
  71. package/dist/server/documents/markdown-to-lexical.test.js +37 -0
  72. package/dist/server/documents/markdown-to-lexical.test.js.map +1 -1
  73. package/dist/server/documents/tree.service.js +12 -6
  74. package/dist/server/documents/tree.service.js.map +1 -1
  75. package/dist/server/migrations/003-folder-desc-file-type.js +43 -0
  76. package/dist/server/migrations/003-folder-desc-file-type.js.map +1 -0
  77. package/dist/server/migrations/004-api-key-to-secrets.js +90 -0
  78. package/dist/server/migrations/004-api-key-to-secrets.js.map +1 -0
  79. package/dist/server/migrations/004-folder-desc-id.js +98 -0
  80. package/dist/server/migrations/004-folder-desc-id.js.map +1 -0
  81. package/dist/server/migrations/005-special-file-id-format.js +124 -0
  82. package/dist/server/migrations/005-special-file-id-format.js.map +1 -0
  83. package/dist/server/routes/agent.routes.js +69 -31
  84. package/dist/server/routes/agent.routes.js.map +1 -1
  85. package/dist/server/routes/assets.routes.js +68 -62
  86. package/dist/server/routes/assets.routes.js.map +1 -1
  87. package/dist/server/routes/assets.routes.upload.test.js +27 -0
  88. package/dist/server/routes/assets.routes.upload.test.js.map +1 -0
  89. package/dist/server/routes/documents.routes.js +1 -1
  90. package/dist/server/routes/documents.routes.js.map +1 -1
  91. package/dist/server/routes/folders.routes.js +2 -2
  92. package/dist/server/routes/folders.routes.js.map +1 -1
  93. package/dist/server/routes/graph.routes.js +112 -0
  94. package/dist/server/routes/graph.routes.js.map +1 -0
  95. package/dist/server/routes/tree.routes.js +1 -1
  96. package/dist/server/routes/tree.routes.js.map +1 -1
  97. package/dist/server/secrets/secrets-store.js +93 -0
  98. package/dist/server/secrets/secrets-store.js.map +1 -0
  99. package/dist/server/storage/paths.js +0 -1
  100. package/dist/server/storage/paths.js.map +1 -1
  101. package/dist/server/task-queue/TaskQueue.js +258 -0
  102. package/dist/server/task-queue/TaskQueue.js.map +1 -0
  103. package/dist/server/task-queue/TaskQueue.test.js +136 -0
  104. package/dist/server/task-queue/TaskQueue.test.js.map +1 -0
  105. package/dist/server/task-queue/index.js +18 -0
  106. package/dist/server/task-queue/index.js.map +1 -0
  107. package/dist/server/task-queue/log-store.js +84 -0
  108. package/dist/server/task-queue/log-store.js.map +1 -0
  109. package/dist/server/task-queue/types.js +5 -0
  110. package/dist/server/task-queue/types.js.map +1 -0
  111. package/dist/shared/docPath.js +3 -2
  112. package/dist/shared/docPath.js.map +1 -1
  113. package/dist/shared/file-types.js +35 -0
  114. package/dist/shared/file-types.js.map +1 -0
  115. package/dist/shared/graph-files.js +31 -0
  116. package/dist/shared/graph-files.js.map +1 -0
  117. package/dist/web/assets/AgentChatPanel-C8TMWDuE.js +6 -0
  118. package/dist/web/assets/AgentSkillFormCard-yk7PWF0W.js +6 -0
  119. package/dist/web/assets/AiWriteWorkbench-ChCJt24m.js +7 -0
  120. package/dist/web/assets/{DiagramEditor-NtNY3sZL-DqPXDJHY.js → DiagramEditor-NtNY3sZL-Bw4wHaBD.js} +1 -1
  121. package/dist/web/assets/DocumentEditor-B3Dsq02C.js +26 -0
  122. package/dist/web/assets/{MergeView-Y3zB8V5p.js → MergeView-royv5YkB.js} +1 -1
  123. package/dist/web/assets/PlaygroundPage-B-_1l4Ix.js +8 -0
  124. package/dist/web/assets/SettingsPage-D8HfepZ8.js +1 -0
  125. package/dist/web/assets/{Toolbar-B36NxaTc.js → Toolbar-BDJ6WABq.js} +16 -21
  126. package/dist/web/assets/{VisitorPickerModal-drnOuPLP.js → VisitorPickerModal-DPKIoySi.js} +1 -1
  127. package/dist/web/assets/{copy-CX8GOyUb.js → copy-UwfRYkpI.js} +1 -1
  128. package/dist/web/assets/{diagram-3lhA7FYR.js → diagram--gCCJK__.js} +545 -545
  129. package/dist/web/assets/index-4TuRcE3b.js +248 -0
  130. package/dist/web/assets/index-C4ESYs7f.css +1 -0
  131. package/dist/web/assets/{meta2dEngine-BD2XbzaV-CCgjRlVJ.js → meta2dEngine-BD2XbzaV-D1J2-XNv.js} +1 -1
  132. package/dist/web/assets/{motion-92iQWeIW.js → motion-DddvD-ez.js} +1 -1
  133. package/dist/web/assets/{plus-BWV299MC.js → plus-CiGwts52.js} +1 -1
  134. package/dist/web/assets/{react-BUhFwPCj.js → react-B99eF5mm.js} +146 -151
  135. package/dist/web/assets/{ui-06fxEgif.js → ui-BHvBMRFE.js} +3 -3
  136. package/dist/web/index.html +5 -4
  137. package/package.json +2 -1
  138. package/dist/web/assets/AgentChatPanel-BTCyf9Ww.js +0 -1
  139. package/dist/web/assets/AgentSkillFormCard-CAD6QqQ0.js +0 -6
  140. package/dist/web/assets/AiWriteWorkbench-PVv90TJS.js +0 -7
  141. package/dist/web/assets/DocumentEditor-zNIJgxe0.js +0 -21
  142. package/dist/web/assets/PlaygroundPage-DAaEm887.js +0 -8
  143. package/dist/web/assets/SettingsPage-DhdiNEhO.js +0 -1
  144. package/dist/web/assets/index-DgM2rYI-.js +0 -185
  145. package/dist/web/assets/index-S_lCknAk.css +0 -1
@@ -6,6 +6,9 @@
6
6
  *
7
7
  * 覆盖 B 层节点:段落、标题、粗体、斜体、删除线、内联代码、代码块、
8
8
  * 链接、无序/有序列表、块引用、分隔线、表格。
9
+ * 内联 HTML(与 lobe CommonPlugin 对齐):
10
+ * `<span style="color|background-color">` → TextNode.style
11
+ * `<ins>`/`<u>` 下划线,`<em>` 斜体,`<strong>` 粗体。
9
12
  */
10
13
  import { remark } from "remark";
11
14
  import remarkGfm from "remark-gfm";
@@ -24,17 +27,85 @@ const BASE = {
24
27
  version: 1,
25
28
  };
26
29
  // ── 节点工厂 ──────────────────────────────────────────
27
- function textNode(text, format = 0) {
30
+ function textNode(text, format = 0, style = "") {
28
31
  return {
29
32
  ...BASE,
30
33
  detail: 0,
31
34
  format,
32
35
  mode: "normal",
33
- style: "",
36
+ style,
34
37
  text,
35
38
  type: "text",
36
39
  };
37
40
  }
41
+ const SPAN_STYLE_PROPS = ["color", "background-color"];
42
+ function isSafeCssColorValue(value) {
43
+ const v = value.trim();
44
+ if (!v || v.length > 128)
45
+ return false;
46
+ if (/["'<>\\]|url\s*\(|expression\s*\(|@import/i.test(v))
47
+ return false;
48
+ return /^(#[\dA-Fa-f]{3,8}|rgba?\([^)]+\)|hsla?\([^)]+\)|[A-Za-z]+)$/.test(v);
49
+ }
50
+ function spanStyleFromOpenTag(htmlOpenTag) {
51
+ if (!/^<span\b/i.test(htmlOpenTag.trim()))
52
+ return "";
53
+ const raw = /\bstyle\s*=\s*"([^"]*)"/i.exec(htmlOpenTag)?.[1] ??
54
+ /\bstyle\s*=\s*'([^']*)'/i.exec(htmlOpenTag)?.[1];
55
+ if (!raw)
56
+ return "";
57
+ const picked = [];
58
+ for (const part of raw.split(";")) {
59
+ const colon = part.indexOf(":");
60
+ if (colon < 0)
61
+ continue;
62
+ const key = part.slice(0, colon).trim().toLowerCase();
63
+ const value = part.slice(colon + 1).trim();
64
+ if (!SPAN_STYLE_PROPS.includes(key))
65
+ continue;
66
+ if (!isSafeCssColorValue(value))
67
+ continue;
68
+ picked.push(`${key}: ${value}`);
69
+ }
70
+ return picked.join("; ");
71
+ }
72
+ function htmlTagName(htmlValue) {
73
+ const inner = htmlValue.replace(/^<\/?/, "").replace(/\/?>$/, "").trim();
74
+ const match = /^([A-Za-z][\w-]*)/.exec(inner);
75
+ if (!match)
76
+ return "";
77
+ return match[1].toLowerCase();
78
+ }
79
+ function markFromHtmlOpen(htmlValue) {
80
+ const tag = htmlTagName(htmlValue);
81
+ const lower = htmlValue.trim().toLowerCase();
82
+ if (lower === "<ins>" || lower === "<u>") {
83
+ return { format: TEXT_UNDERLINE, style: "", tag };
84
+ }
85
+ if (lower === "<em>")
86
+ return { format: TEXT_ITALIC, style: "", tag };
87
+ if (lower === "<strong>")
88
+ return { format: TEXT_BOLD, style: "", tag };
89
+ if (tag === "span") {
90
+ return { format: 0, style: spanStyleFromOpenTag(htmlValue), tag };
91
+ }
92
+ return null;
93
+ }
94
+ function applyMarks(node, marks) {
95
+ if (node.type !== "text")
96
+ return;
97
+ let format = node.format ?? 0;
98
+ const styles = [];
99
+ if (typeof node.style === "string" && node.style)
100
+ styles.push(node.style);
101
+ for (const mark of marks) {
102
+ format |= mark.format;
103
+ if (mark.style)
104
+ styles.push(mark.style);
105
+ }
106
+ node.format = format;
107
+ node.style = styles.join("; ");
108
+ }
38
109
  function elementNode(type, children, extra) {
39
110
  return { ...BASE, ...extra, children, type };
40
111
  }
@@ -115,17 +186,42 @@ function tableCellNode(children) {
115
186
  /**
116
187
  * 处理内联节点列表(段落/标题/块引用内部的格式化内容)。
117
188
  * strong → format |= BOLD, emphasis → format |= ITALIC, 等。
189
+ * html 开/闭标签用 marks 栈,把 style/format 打到夹在中间的 text 上。
118
190
  */
119
- function flattenInline(nodes) {
191
+ function flattenInline(nodes, inheritedMarks = []) {
120
192
  const result = [];
193
+ const marks = inheritedMarks.slice();
121
194
  for (const node of nodes) {
122
195
  const n = node;
123
196
  switch (n.type) {
124
- case "text":
125
- result.push(textNode(n.value));
197
+ case "text": {
198
+ const t = textNode(n.value);
199
+ applyMarks(t, marks);
200
+ result.push(t);
201
+ break;
202
+ }
203
+ case "html": {
204
+ const value = String(n.value ?? "");
205
+ if (value.startsWith("<!--"))
206
+ break;
207
+ const isEnd = value.trim().startsWith("</");
208
+ if (isEnd) {
209
+ const tag = htmlTagName(value);
210
+ for (let i = marks.length - 1; i >= inheritedMarks.length; i--) {
211
+ if (marks[i].tag === tag) {
212
+ marks.splice(i, 1);
213
+ break;
214
+ }
215
+ }
216
+ break;
217
+ }
218
+ const mark = markFromHtmlOpen(value);
219
+ if (mark)
220
+ marks.push(mark);
126
221
  break;
222
+ }
127
223
  case "strong": {
128
- const children = flattenInline(n.children);
224
+ const children = flattenInline(n.children, marks);
129
225
  for (const child of children) {
130
226
  if (child.type === "text")
131
227
  child.format = (child.format ?? 0) | TEXT_BOLD;
@@ -134,7 +230,7 @@ function flattenInline(nodes) {
134
230
  break;
135
231
  }
136
232
  case "emphasis": {
137
- const children = flattenInline(n.children);
233
+ const children = flattenInline(n.children, marks);
138
234
  for (const child of children) {
139
235
  if (child.type === "text")
140
236
  child.format = (child.format ?? 0) | TEXT_ITALIC;
@@ -143,7 +239,7 @@ function flattenInline(nodes) {
143
239
  break;
144
240
  }
145
241
  case "delete": {
146
- const children = flattenInline(n.children);
242
+ const children = flattenInline(n.children, marks);
147
243
  for (const child of children) {
148
244
  if (child.type === "text")
149
245
  child.format = (child.format ?? 0) | TEXT_STRIKETHROUGH;
@@ -151,20 +247,22 @@ function flattenInline(nodes) {
151
247
  result.push(...children);
152
248
  break;
153
249
  }
154
- case "inlineCode":
155
- result.push(textNode(n.value, TEXT_CODE));
250
+ case "inlineCode": {
251
+ const t = textNode(n.value, TEXT_CODE);
252
+ applyMarks(t, marks);
253
+ result.push(t);
156
254
  break;
255
+ }
157
256
  case "link":
158
- result.push(linkNode(flattenInline(n.children), n.url));
257
+ result.push(linkNode(flattenInline(n.children, marks), n.url));
159
258
  break;
160
259
  case "image":
161
260
  // 图片无损表示需要自定义节点(block-image),这里转成链接保留文本信息
162
261
  result.push(linkNode([textNode(n.alt || n.url)], n.url));
163
262
  break;
164
263
  default:
165
- // 未知内联节点:如果包含 children 则递归,否则跳过
166
264
  if (n.children && Array.isArray(n.children)) {
167
- result.push(...flattenInline(n.children));
265
+ result.push(...flattenInline(n.children, marks));
168
266
  }
169
267
  break;
170
268
  }
@@ -1 +1 @@
1
- {"version":3,"file":"markdown-to-lexical.js","sourceRoot":"","sources":["../../../src/server/documents/markdown-to-lexical.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAChC,OAAO,SAAS,MAAM,YAAY,CAAC;AACnC,OAAO,UAAU,MAAM,aAAa,CAAC;AAErC,uDAAuD;AACvD,MAAM,SAAS,GAAG,CAAC,CAAC;AACpB,MAAM,WAAW,GAAG,CAAC,CAAC;AACtB,MAAM,kBAAkB,GAAG,CAAC,CAAC;AAC7B,MAAM,cAAc,GAAG,CAAC,CAAC;AACzB,MAAM,SAAS,GAAG,EAAE,CAAC;AAErB,kDAAkD;AAClD,MAAM,IAAI,GAAG;IACX,SAAS,EAAE,KAAc;IACzB,MAAM,EAAE,EAAE;IACV,MAAM,EAAE,CAAC;IACT,OAAO,EAAE,CAAC;CACX,CAAC;AAMF,qDAAqD;AAErD,SAAS,QAAQ,CAAC,IAAY,EAAE,MAAM,GAAG,CAAC;IACxC,OAAO;QACL,GAAG,IAAI;QACP,MAAM,EAAE,CAAC;QACT,MAAM;QACN,IAAI,EAAE,QAAQ;QACd,KAAK,EAAE,EAAE;QACT,IAAI;QACJ,IAAI,EAAE,MAAM;KACb,CAAC;AACJ,CAAC;AAED,SAAS,WAAW,CAClB,IAAY,EACZ,QAAuB,EACvB,KAA+B;IAE/B,OAAO,EAAE,GAAG,IAAI,EAAE,GAAG,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;AAC/C,CAAC;AAED;;;GAGG;AACH,SAAS,qBAAqB,CAAC,QAAuB;IACpD,OAAO,EAAE,GAAG,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC;AAC7C,CAAC;AAED,SAAS,aAAa,CAAC,QAAuB;IAC5C,OAAO,WAAW,CAAC,WAAW,EAAE,QAAQ,EAAE,EAAE,UAAU,EAAE,CAAC,EAAE,SAAS,EAAE,EAAE,EAAE,CAAC,CAAC;AAC9E,CAAC;AAED,SAAS,WAAW,CAAC,QAAuB,EAAE,KAAa;IACzD,OAAO,WAAW,CAAC,SAAS,EAAE,QAAQ,EAAE;QACtC,GAAG,EAAE,IAAI,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE;KAC3C,CAAC,CAAC;AACL,CAAC;AAED,SAAS,aAAa,CAAC,QAAuB,EAAE,KAAa;IAC3D,OAAO;QACL,GAAG,IAAI;QACP,QAAQ,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;QAC3B,QAAQ,EAAE,QAAQ,IAAI,IAAI;QAC1B,IAAI,EAAE,MAAM;KACb,CAAC;AACJ,CAAC;AAED,SAAS,QAAQ,CAAC,QAAuB,EAAE,GAAW;IACpD,OAAO,WAAW,CAAC,MAAM,EAAE,QAAQ,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC;AAChD,CAAC;AAED,SAAS,QAAQ,CACf,QAAuB,EACvB,OAAgB,EAChB,KAAa;IAEb,OAAO,WAAW,CAAC,MAAM,EAAE,QAAQ,EAAE;QACnC,QAAQ,EAAE,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ;QACvC,KAAK;KACN,CAAC,CAAC;AACL,CAAC;AAED,SAAS,YAAY,CAAC,QAAuB;IAC3C,OAAO,WAAW,CAAC,UAAU,EAAE,QAAQ,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC,CAAC;AACzD,CAAC;AAED,SAAS,SAAS,CAAC,QAAuB;IACxC,OAAO,WAAW,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;AACxC,CAAC;AAED,SAAS,kBAAkB;IACzB,OAAO,EAAE,GAAG,IAAI,EAAE,IAAI,EAAE,gBAAgB,EAAE,CAAC;AAC7C,CAAC;AAED,SAAS,SAAS,CAAC,QAAuB,EAAE,SAAmB;IAC7D,OAAO,WAAW,CAAC,OAAO,EAAE,QAAQ,EAAE,EAAE,SAAS,EAAE,CAAC,CAAC;AACvD,CAAC;AAED,8CAA8C;AAC9C,SAAS,0BAA0B,CAAC,KAA8B;IAChE,MAAM,IAAI,GAAG,KAAK,CAAC,QAAiC,CAAC;IACrD,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,CAAC;IACzD,IAAI,QAAQ,GAAG,CAAC,CAAC;IACjB,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;QACvB,MAAM,CAAC,GAAG,GAA8B,CAAC;QACzC,IAAI,CAAC,CAAC,IAAI,KAAK,UAAU,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC;YAAE,SAAS;QAClE,QAAQ,GAAG,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC;QAC7B,MAAM;IACR,CAAC;IACD,IAAI,QAAQ,IAAI,CAAC;QAAE,OAAO,EAAE,CAAC;IAC7B,MAAM,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,GAAG,QAAQ,CAAC,CAAC;IACrC,OAAO,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC;AACnD,CAAC;AAED,SAAS,YAAY,CAAC,QAAuB;IAC3C,OAAO,WAAW,CAAC,UAAU,EAAE,QAAQ,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,CAAC;AAC3D,CAAC;AAED,SAAS,aAAa,CAAC,QAAuB;IAC5C,OAAO,WAAW,CAAC,WAAW,EAAE,QAAQ,EAAE;QACxC,eAAe,EAAE,IAAI;QACrB,OAAO,EAAE,CAAC;QACV,WAAW,EAAE,CAAC;QACd,OAAO,EAAE,CAAC;KACX,CAAC,CAAC;AACL,CAAC;AAED,kDAAkD;AAElD;;;GAGG;AACH,SAAS,aAAa,CAAC,KAAgB;IACrC,MAAM,MAAM,GAAkB,EAAE,CAAC;IAEjC,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,MAAM,CAAC,GAAG,IAA+B,CAAC;QAC1C,QAAQ,CAAC,CAAC,IAAI,EAAE,CAAC;YACf,KAAK,MAAM;gBACT,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAe,CAAC,CAAC,CAAC;gBACzC,MAAM;YAER,KAAK,QAAQ,CAAC,CAAC,CAAC;gBACd,MAAM,QAAQ,GAAG,aAAa,CAAC,CAAC,CAAC,QAAqB,CAAC,CAAC;gBACxD,KAAK,MAAM,KAAK,IAAI,QAAQ,EAAE,CAAC;oBAC7B,IAAI,KAAK,CAAC,IAAI,KAAK,MAAM;wBACvB,KAAK,CAAC,MAAM,GAAG,CAAE,KAAK,CAAC,MAAiB,IAAI,CAAC,CAAC,GAAG,SAAS,CAAC;gBAC/D,CAAC;gBACD,MAAM,CAAC,IAAI,CAAC,GAAG,QAAQ,CAAC,CAAC;gBACzB,MAAM;YACR,CAAC;YAED,KAAK,UAAU,CAAC,CAAC,CAAC;gBAChB,MAAM,QAAQ,GAAG,aAAa,CAAC,CAAC,CAAC,QAAqB,CAAC,CAAC;gBACxD,KAAK,MAAM,KAAK,IAAI,QAAQ,EAAE,CAAC;oBAC7B,IAAI,KAAK,CAAC,IAAI,KAAK,MAAM;wBACvB,KAAK,CAAC,MAAM,GAAG,CAAE,KAAK,CAAC,MAAiB,IAAI,CAAC,CAAC,GAAG,WAAW,CAAC;gBACjE,CAAC;gBACD,MAAM,CAAC,IAAI,CAAC,GAAG,QAAQ,CAAC,CAAC;gBACzB,MAAM;YACR,CAAC;YAED,KAAK,QAAQ,CAAC,CAAC,CAAC;gBACd,MAAM,QAAQ,GAAG,aAAa,CAAC,CAAC,CAAC,QAAqB,CAAC,CAAC;gBACxD,KAAK,MAAM,KAAK,IAAI,QAAQ,EAAE,CAAC;oBAC7B,IAAI,KAAK,CAAC,IAAI,KAAK,MAAM;wBACvB,KAAK,CAAC,MAAM,GAAG,CAAE,KAAK,CAAC,MAAiB,IAAI,CAAC,CAAC,GAAG,kBAAkB,CAAC;gBACxE,CAAC;gBACD,MAAM,CAAC,IAAI,CAAC,GAAG,QAAQ,CAAC,CAAC;gBACzB,MAAM;YACR,CAAC;YAED,KAAK,YAAY;gBACf,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAe,EAAE,SAAS,CAAC,CAAC,CAAC;gBACpD,MAAM;YAER,KAAK,MAAM;gBACT,MAAM,CAAC,IAAI,CACT,QAAQ,CAAC,aAAa,CAAC,CAAC,CAAC,QAAqB,CAAC,EAAE,CAAC,CAAC,GAAa,CAAC,CAClE,CAAC;gBACF,MAAM;YAER,KAAK,OAAO;gBACV,0CAA0C;gBAC1C,MAAM,CAAC,IAAI,CACT,QAAQ,CACN,CAAC,QAAQ,CAAE,CAAC,CAAC,GAAc,IAAK,CAAC,CAAC,GAAc,CAAC,CAAC,EAClD,CAAC,CAAC,GAAa,CAChB,CACF,CAAC;gBACF,MAAM;YAER;gBACE,gCAAgC;gBAChC,IAAI,CAAC,CAAC,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC;oBAC5C,MAAM,CAAC,IAAI,CAAC,GAAG,aAAa,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC;gBAC5C,CAAC;gBACD,MAAM;QACV,CAAC;IACH,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,kDAAkD;AAElD;;GAEG;AACH,SAAS,OAAO,CACd,KAA8B;IAE9B,MAAM,QAAQ,GAAG,KAAK,CAAC,QAAiC,CAAC;IAEzD,QAAQ,KAAK,CAAC,IAAI,EAAE,CAAC;QACnB,KAAK,WAAW,CAAC,CAAC,CAAC;YACjB,MAAM,OAAO,GAAG,aAAa,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC;YAC9C,2BAA2B;YAC3B,OAAO,aAAa,CAAC,OAAO,CAAC,CAAC;QAChC,CAAC;QAED,KAAK,SAAS;YACZ,OAAO,WAAW,CAAC,aAAa,CAAC,QAAQ,IAAI,EAAE,CAAC,EAAE,KAAK,CAAC,KAAe,CAAC,CAAC;QAE3E,KAAK,MAAM;YACT,OAAO,aAAa,CACjB,KAAK,CAAC,IAA2B,IAAI,IAAI,EAC1C,KAAK,CAAC,KAAe,CACtB,CAAC;QAEJ,KAAK,YAAY;YACf,OAAO,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC,oBAAoB,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;QAEnE,KAAK,MAAM,CAAC,CAAC,CAAC;YACZ,MAAM,OAAO,GAAI,KAAK,CAAC,OAAmB,IAAI,KAAK,CAAC;YACpD,MAAM,KAAK,GAAI,KAAK,CAAC,KAAgB,IAAI,CAAC,CAAC;YAC3C,MAAM,KAAK,GAAG,QAAQ,CAAC,CAAC,CAAC,oBAAoB,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YAC7D,OAAO,QAAQ,CAAC,KAAK,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC;QACzC,CAAC;QAED,KAAK,UAAU;YACb,iDAAiD;YACjD,OAAO,YAAY,CAAC,QAAQ,CAAC,CAAC,CAAC,oBAAoB,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;QAEtE,KAAK,eAAe;YAClB,OAAO,kBAAkB,EAAE,CAAC;QAE9B,KAAK,OAAO,CAAC,CAAC,CAAC;YACb,MAAM,SAAS,GAAG,0BAA0B,CAAC,KAAK,CAAC,CAAC;YACpD,MAAM,IAAI,GAAG,QAAQ,CAAC,CAAC,CAAC,oBAAoB,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YAC5D,OAAO,SAAS,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;QACpC,CAAC;QAED,KAAK,UAAU;YACb,OAAO,YAAY,CAAC,QAAQ,CAAC,CAAC,CAAC,oBAAoB,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;QAEtE,KAAK,WAAW;YACd,OAAO,aAAa,CAAC,QAAQ,CAAC,CAAC,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;QAEhE;YACE,wBAAwB;YACxB,IAAI,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC;gBACxC,OAAO,oBAAoB,CAAC,QAAQ,CAAC,CAAC;YACxC,CAAC;YACD,OAAO,IAAI,CAAC;IAChB,CAAC;AACH,CAAC;AAED;;GAEG;AACH,SAAS,oBAAoB,CAAC,KAAgB;IAC5C,MAAM,MAAM,GAAkB,EAAE,CAAC;IACjC,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,MAAM,SAAS,GAAG,OAAO,CAAC,IAA+B,CAAC,CAAC;QAC3D,IAAI,SAAS,KAAK,IAAI;YAAE,SAAS;QACjC,IAAI,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC;YAC7B,MAAM,CAAC,IAAI,CAAC,GAAG,SAAS,CAAC,CAAC;QAC5B,CAAC;aAAM,CAAC;YACN,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACzB,CAAC;IACH,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,qDAAqD;AAErD;;;;;;;GAOG;AACH,MAAM,UAAU,qBAAqB,CAAC,QAAgB;IACpD,MAAM,GAAG,GAAG,MAAM,EAAE,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;IAEpE,MAAM,QAAQ,GAAG,oBAAoB,CAClC,GAA0C,CAAC,QAAqB,CAClE,CAAC;IACF,iDAAiD;IACjD,MAAM,MAAM,GAAG,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC,CAAC;IACpE,OAAO,IAAI,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,qBAAqB,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;AACjE,CAAC"}
1
+ {"version":3,"file":"markdown-to-lexical.js","sourceRoot":"","sources":["../../../src/server/documents/markdown-to-lexical.ts"],"names":[],"mappings":"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"}
@@ -180,5 +180,42 @@ import { Editor } from '@lobehub/editor';
180
180
  expect(code.children[0].text).toContain("@lobehub/editor");
181
181
  expect(markdownToLexicalJson(md)).toMatchSnapshot();
182
182
  });
183
+ it("span color → TextNode.style", () => {
184
+ const { root } = parseSerializedLexical('1<span style="color: #c62828">2</span>3');
185
+ const p = root.children[0];
186
+ const mid = p.children.find((c) => c.text === "2");
187
+ expect(mid?.style).toBe("color: #c62828");
188
+ expect(p.children.find((c) => c.text === "1")?.style).toBe("");
189
+ expect(p.children.find((c) => c.text === "3")?.style).toBe("");
190
+ });
191
+ it("span rgb + background-color;font-weight 忽略", () => {
192
+ const { root } = parseSerializedLexical('<span style="color: rgb(220,38,38); font-weight: 700; background-color: #ffe58f">x</span>');
193
+ const p = root.children[0];
194
+ const t = p.children.find((c) => c.text === "x");
195
+ expect(t?.style).toBe("color: rgb(220,38,38); background-color: #ffe58f");
196
+ expect((t?.format ?? 0) & TEXT_BOLD).toBe(0);
197
+ });
198
+ it("span 内 markdown 粗体:style + BOLD", () => {
199
+ const { root } = parseSerializedLexical('<span style="color: #c62828">**重点**</span>');
200
+ const p = root.children[0];
201
+ const t = p.children.find((c) => c.text === "重点");
202
+ expect(t?.style).toBe("color: #c62828");
203
+ expect((t?.format ?? 0) & TEXT_BOLD).toBe(TEXT_BOLD);
204
+ });
205
+ it("表格单元格内 span", () => {
206
+ const { root } = parseSerializedLexical('|a|\n|---|\n|<span style="color: red">b</span>|');
207
+ const table = root.children[0];
208
+ const cell = table.children[1].children[0];
209
+ const t = cell.children?.find((c) => c.text === "b");
210
+ expect(t?.style).toBe("color: red");
211
+ });
212
+ it("<ins> 下划线;不安全 color 丢 style、留正文", () => {
213
+ const { root } = parseSerializedLexical('<ins>u</ins> <span style="color: url(javascript:alert(1))">plain</span>');
214
+ const p = root.children[0];
215
+ const u = p.children.find((c) => c.text === "u");
216
+ expect((u?.format ?? 0) & 8).toBe(8);
217
+ const plain = p.children.find((c) => c.text === "plain");
218
+ expect(plain?.style).toBe("");
219
+ });
183
220
  });
184
221
  //# sourceMappingURL=markdown-to-lexical.test.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"markdown-to-lexical.test.js","sourceRoot":"","sources":["../../../src/server/documents/markdown-to-lexical.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"markdown-to-lexical.test.js","sourceRoot":"","sources":["../../../src/server/documents/markdown-to-lexical.test.ts"],"names":[],"mappings":"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"}
@@ -8,7 +8,7 @@ import { FOLDER_DESC_FILENAME } from "../../shared/folderDesc.js";
8
8
  /**
9
9
  * 构建指定域的文档目录树。
10
10
  */
11
- export function buildDocumentTree(domainId, visitorId) {
11
+ export function buildDocumentTree(domainId, visitorId, options) {
12
12
  const cfg = getConfig();
13
13
  const effective = domainId?.trim() || cfg.defaultDomainId;
14
14
  const db = getDb();
@@ -21,7 +21,10 @@ export function buildDocumentTree(domainId, visitorId) {
21
21
  const domainInfo = { domainPermission, isDomainMember: isMember };
22
22
  const rows = listDocumentsByDomain(db, effective);
23
23
  const filtered = rows.filter((r) => canReadDocument(r, visitorId ?? null, domainInfo));
24
- return buildTreeFromRows(filtered, visitorId ?? null);
24
+ const typedRows = options?.includeTypes
25
+ ? filtered.filter((r) => options.includeTypes.includes(r.file_type))
26
+ : filtered;
27
+ return buildTreeFromRows(typedRows, visitorId ?? null);
25
28
  }
26
29
  /**
27
30
  * 按目录 document_id 构建精简子树(不含自身)。
@@ -29,7 +32,7 @@ export function buildDocumentTree(domainId, visitorId) {
29
32
  * - 非目录 → 400
30
33
  * - 域不可进 / 无读权限 → []
31
34
  */
32
- export function buildFolderSubtree(folderId, visitorId) {
35
+ export function buildFolderSubtree(folderId, visitorId, options) {
33
36
  const db = getDb();
34
37
  const folder = findDocumentById(db, folderId);
35
38
  if (!folder) {
@@ -50,7 +53,10 @@ export function buildFolderSubtree(folderId, visitorId) {
50
53
  }
51
54
  const descendantRows = collectDescendants(folderId);
52
55
  const filtered = descendantRows.filter((r) => canReadDocument(r, visitorId ?? null, domainInfo));
53
- const full = buildTreeFromRows(filtered, visitorId ?? null);
56
+ const typedRows = options?.includeTypes
57
+ ? filtered.filter((r) => options.includeTypes.includes(r.file_type))
58
+ : filtered;
59
+ const full = buildTreeFromRows(typedRows, visitorId ?? null);
54
60
  return projectSubtree(full);
55
61
  }
56
62
  function collectDescendants(folderId) {
@@ -143,9 +149,9 @@ function buildTreeFromRows(rows, visitorId) {
143
149
  addedToRoots.add(row.document_id);
144
150
  }
145
151
  }
146
- // 第三步:处理 md 类型
152
+ // 第三步:处理 md 和 folder_desc 类型
147
153
  for (const row of rows) {
148
- if (row.file_type !== "md")
154
+ if (row.file_type !== "md" && row.file_type !== "folder_desc")
149
155
  continue;
150
156
  const leafName = row.relative_path.split("/").pop();
151
157
  if (leafName.toLowerCase() === FOLDER_DESC_FILENAME.toLowerCase()) {
@@ -1 +1 @@
1
- {"version":3,"file":"tree.service.js","sourceRoot":"","sources":["../../../src/server/documents/tree.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tree.service.js","sourceRoot":"","sources":["../../../src/server/documents/tree.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,qBAAqB,CAAC;AAC5C,OAAO,EACL,oBAAoB,EACpB,gBAAgB,EAChB,qBAAqB,GAEtB,MAAM,qCAAqC,CAAC;AAC7C,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,mCAAmC,CAAC;AACnF,OAAO,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AACrF,OAAO,EAAE,eAAe,EAAE,aAAa,EAAyB,MAAM,6BAA6B,CAAC;AACpG,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAC/C,OAAO,EAAE,oBAAoB,EAAE,MAAM,4BAA4B,CAAC;AASlE;;GAEG;AACH,MAAM,UAAU,iBAAiB,CAC/B,QAAiB,EACjB,SAAyB,EACzB,OAAqC;IAErC,MAAM,GAAG,GAAG,SAAS,EAAE,CAAC;IACxB,MAAM,SAAS,GAAG,QAAQ,EAAE,IAAI,EAAE,IAAI,GAAG,CAAC,eAAe,CAAC;IAC1D,MAAM,EAAE,GAAG,KAAK,EAAE,CAAC;IAEnB,MAAM,MAAM,GAAG,cAAc,CAAC,EAAE,EAAE,SAAS,CAAC,CAAC;IAC7C,MAAM,MAAM,GAAG,mBAAmB,CAAC,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC;IACrE,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC;QAAE,OAAO,EAAE,CAAC;IAE3C,MAAM,gBAAgB,GAAG,MAAM,EAAE,UAAU,IAAI,QAAQ,CAAC;IACxD,MAAM,QAAQ,GAAG,CAAC,CAAC,CACjB,SAAS,IAAI,MAAM,IAAI,cAAc,CAAC,EAAE,EAAE,MAAM,CAAC,SAAS,EAAE,SAAS,CAAC,CACvE,CAAC;IACF,MAAM,UAAU,GAAqB,EAAE,gBAAgB,EAAE,cAAc,EAAE,QAAQ,EAAE,CAAC;IAEpF,MAAM,IAAI,GAAG,qBAAqB,CAAC,EAAE,EAAE,SAAS,CAAC,CAAC;IAClD,MAAM,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,eAAe,CAAC,CAAC,EAAE,SAAS,IAAI,IAAI,EAAE,UAAU,CAAC,CAAC,CAAC;IAEvF,MAAM,SAAS,GAAG,OAAO,EAAE,YAAY;QACrC,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,YAAa,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;QACrE,CAAC,CAAC,QAAQ,CAAC;IAEb,OAAO,iBAAiB,CAAC,SAAS,EAAE,SAAS,IAAI,IAAI,CAAC,CAAC;AACzD,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,kBAAkB,CAChC,QAAgB,EAChB,SAAyB,EACzB,OAAqC;IAErC,MAAM,EAAE,GAAG,KAAK,EAAE,CAAC;IACnB,MAAM,MAAM,GAAG,gBAAgB,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC;IAC9C,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,MAAM,IAAI,aAAa,CAAC,eAAe,EAAE,OAAO,EAAE,GAAG,CAAC,CAAC;IACzD,CAAC;IACD,IAAI,MAAM,CAAC,SAAS,KAAK,KAAK,EAAE,CAAC;QAC/B,MAAM,IAAI,aAAa,CAAC,aAAa,EAAE,MAAM,EAAE,GAAG,CAAC,CAAC;IACtD,CAAC;IAED,MAAM,MAAM,GAAG,cAAc,CAAC,EAAE,EAAE,MAAM,CAAC,SAAS,CAAC,CAAC;IACpD,MAAM,MAAM,GAAG,mBAAmB,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;IAC5E,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC;QAAE,OAAO,EAAE,CAAC;IAE3C,MAAM,gBAAgB,GAAG,MAAM,EAAE,UAAU,IAAI,QAAQ,CAAC;IACxD,MAAM,QAAQ,GAAG,CAAC,CAAC,CACjB,SAAS,IAAI,MAAM,IAAI,cAAc,CAAC,EAAE,EAAE,MAAM,CAAC,SAAS,EAAE,SAAS,CAAC,CACvE,CAAC;IACF,MAAM,UAAU,GAAqB,EAAE,gBAAgB,EAAE,cAAc,EAAE,QAAQ,EAAE,CAAC;IAEpF,IAAI,CAAC,eAAe,CAAC,MAAM,EAAE,SAAS,IAAI,IAAI,EAAE,UAAU,CAAC,EAAE,CAAC;QAC5D,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,MAAM,cAAc,GAAG,kBAAkB,CAAC,QAAQ,CAAC,CAAC;IACpD,MAAM,QAAQ,GAAG,cAAc,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAC3C,eAAe,CAAC,CAAC,EAAE,SAAS,IAAI,IAAI,EAAE,UAAU,CAAC,CAClD,CAAC;IAEF,MAAM,SAAS,GAAG,OAAO,EAAE,YAAY;QACrC,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,YAAa,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;QACrE,CAAC,CAAC,QAAQ,CAAC;IAEb,MAAM,IAAI,GAAG,iBAAiB,CAAC,SAAS,EAAE,SAAS,IAAI,IAAI,CAAC,CAAC;IAC7D,OAAO,cAAc,CAAC,IAAI,CAAC,CAAC;AAC9B,CAAC;AAED,SAAS,kBAAkB,CAAC,QAAgB;IAC1C,MAAM,EAAE,GAAG,KAAK,EAAE,CAAC;IACnB,MAAM,GAAG,GAAkB,EAAE,CAAC;IAC9B,MAAM,KAAK,GAAG,CAAC,GAAG,oBAAoB,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC,CAAC;IACtD,OAAO,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACxB,MAAM,GAAG,GAAG,KAAK,CAAC,KAAK,EAAG,CAAC;QAC3B,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACd,IAAI,GAAG,CAAC,SAAS,KAAK,KAAK,EAAE,CAAC;YAC5B,KAAK,CAAC,IAAI,CAAC,GAAG,oBAAoB,CAAC,EAAE,EAAE,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC;QAC3D,CAAC;IACH,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED,SAAS,cAAc,CAAC,KAAiB;IACvC,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;QACrB,IAAI,CAAC,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YACxB,OAAO;gBACL,IAAI,EAAE,QAAiB;gBACvB,EAAE,EAAE,CAAC,CAAC,UAAU;gBAChB,KAAK,EAAE,CAAC,CAAC,CAAC,iBAAiB,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,IAAI;gBACvD,QAAQ,EAAE,cAAc,CAAC,CAAC,CAAC,QAAQ,CAAC;aACrC,CAAC;QACJ,CAAC;QACD,MAAM,KAAK,GAAG,CAAC,CAAC,WAAW,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC;QAC7E,OAAO;YACL,IAAI,EAAE,UAAmB;YACzB,EAAE,EAAE,CAAC,CAAC,UAAU;YAChB,KAAK;SACN,CAAC;IACJ,CAAC,CAAC,CAAC;AACL,CAAC;AAED;;;;;;;;;;;GAWG;AACH,SAAS,iBAAiB,CAAC,IAAmB,EAAE,SAAwB;IACtE,MAAM,KAAK,GAAe,EAAE,CAAC;IAC7B,MAAM,UAAU,GAAG,IAAI,GAAG,EAA0B,CAAC;IACrD,4BAA4B;IAC5B,MAAM,YAAY,GAAG,IAAI,GAAG,EAAU,CAAC;IAEvC,0BAA0B;IAC1B,MAAM,UAAU,GAAG,CAAC,IAAY,EAAE,OAAe,EAAU,EAAE;QAC3D,IAAI,CAAC,SAAS,IAAI,OAAO,KAAK,SAAS;YAAE,OAAO,IAAI,CAAC;QACrD,MAAM,MAAM,GAAG,aAAa,SAAS,GAAG,CAAC;QACzC,IAAI,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC;YAAE,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QAC9D,OAAO,IAAI,CAAC;IACd,CAAC,CAAC;IAEF,gBAAgB;IAChB,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;QACvB,IAAI,GAAG,CAAC,SAAS,KAAK,KAAK,EAAE,CAAC;YAC5B,MAAM,IAAI,GAAmB;gBAC3B,IAAI,EAAE,QAAQ;gBACd,IAAI,EAAE,gBAAgB,CAAC,GAAG,CAAC;gBAC3B,IAAI,EAAE,UAAU,CAAC,GAAG,CAAC,aAAa,EAAE,GAAG,CAAC,gBAAgB,CAAC;gBACzD,UAAU,EAAE,GAAG,CAAC,WAAW;gBAC3B,QAAQ,EAAE,EAAE;aACb,CAAC;YACF,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;QACxC,CAAC;IACH,CAAC;IAED,mBAAmB;IACnB,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;QACvB,IAAI,GAAG,CAAC,SAAS,KAAK,KAAK;YAAE,SAAS;QACtC,MAAM,IAAI,GAAG,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,WAAW,CAAE,CAAC;QAC9C,IAAI,GAAG,CAAC,SAAS,EAAE,CAAC;YAClB,MAAM,MAAM,GAAG,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;YAC7C,IAAI,MAAM,EAAE,CAAC;gBACX,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAC7B,CAAC;iBAAM,CAAC;gBACN,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBACjB,YAAY,CAAC,GAAG,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;YACpC,CAAC;QACH,CAAC;aAAM,CAAC;YACN,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACjB,YAAY,CAAC,GAAG,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;QACpC,CAAC;IACH,CAAC;IAED,6BAA6B;IAC7B,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;QACvB,IAAI,GAAG,CAAC,SAAS,KAAK,IAAI,IAAI,GAAG,CAAC,SAAS,KAAK,aAAa;YAAE,SAAS;QACxE,MAAM,QAAQ,GAAG,GAAG,CAAC,aAAa,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAG,CAAC;QAErD,IAAI,QAAQ,CAAC,WAAW,EAAE,KAAK,oBAAoB,CAAC,WAAW,EAAE,EAAE,CAAC;YAClE,eAAe;YACf,IAAI,GAAG,CAAC,SAAS,EAAE,CAAC;gBAClB,MAAM,MAAM,GAAG,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;gBAC7C,IAAI,MAAM,EAAE,CAAC;oBACX,MAAM,CAAC,cAAc,GAAG,GAAG,CAAC,WAAW,CAAC;oBACxC,MAAM,CAAC,GAAG,GAAG,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC;oBAClC,IAAI,CAAC;wBAAE,MAAM,CAAC,iBAAiB,GAAG,CAAC,CAAC;gBACtC,CAAC;YACH,CAAC;QACH,CAAC;aAAM,CAAC;YACN,OAAO;YACP,MAAM,IAAI,GAAa;gBACrB,IAAI,EAAE,UAAU;gBAChB,IAAI,EAAE,QAAQ;gBACd,IAAI,EAAE,UAAU,CAAC,GAAG,CAAC,aAAa,EAAE,GAAG,CAAC,gBAAgB,CAAC;gBACzD,UAAU,EAAE,GAAG,CAAC,WAAW;gBAC3B,WAAW,EAAE,GAAG,CAAC,YAAY;gBAC7B,cAAc,EAAE,GAAG,CAAC,gBAAgB;gBACpC,SAAS,EAAE,GAAG,CAAC,UAAU;aAC1B,CAAC;YAEF,IAAI,GAAG,CAAC,SAAS,EAAE,CAAC;gBAClB,MAAM,MAAM,GAAG,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;gBAC7C,IAAI,MAAM,EAAE,CAAC;oBACX,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBAC7B,CAAC;qBAAM,CAAC;oBACN,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBACnB,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACnB,CAAC;QACH,CAAC;IACH,CAAC;IAED,OAAO;IACP,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,IAAI,IAAI,CAAC,IAAI,KAAK,QAAQ;YAAE,UAAU,CAAC,IAAI,CAAC,CAAC;IAC/C,CAAC;IAED,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAS,gBAAgB,CAAC,GAAgB;IACxC,MAAM,CAAC,GAAG,GAAG,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC;IAClC,IAAI,CAAC;QAAE,OAAO,CAAC,CAAC;IAChB,OAAO,GAAG,CAAC,aAAa,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,IAAI,GAAG,CAAC,aAAa,CAAC;AACjE,CAAC;AAED,SAAS,UAAU,CAAC,MAAsB;IACxC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IAClC,KAAK,MAAM,CAAC,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;QAChC,IAAI,CAAC,CAAC,IAAI,KAAK,QAAQ;YAAE,UAAU,CAAC,CAAC,CAAC,CAAC;IACzC,CAAC;AACH,CAAC;AAED,SAAS,WAAW,CAAC,CAAW,EAAE,CAAW;IAC3C,IAAI,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,IAAI;QAAE,OAAO,CAAC,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC3D,IAAI,CAAC,CAAC,IAAI,KAAK,QAAQ,IAAI,CAAC,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;QAC/C,OAAO,aAAa,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC;IAC1D,CAAC;IACD,OAAO,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;AACtC,CAAC;AAED,SAAS,aAAa,CAAC,CAAiB;IACtC,OAAO,CAAC,CAAC,CAAC,iBAAiB,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,CAAC;AACvD,CAAC"}
@@ -0,0 +1,43 @@
1
+ /**
2
+ * 数据迁移:将 ___desc___.md 文件的 file_type 从 'md' 改为 'folder_desc'。
3
+ *
4
+ * 用法:
5
+ * npx tsx src/server/migrations/003-folder-desc-file-type.ts
6
+ *
7
+ * 会自动从 ~/.mdocs/ 读取数据库,也可以通过 MDOCS_DATA_DIR 环境变量指定。
8
+ */
9
+ import Database from 'better-sqlite3';
10
+ import path from 'node:path';
11
+ import os from 'node:os';
12
+ import fs from 'node:fs';
13
+ const dataDir = process.env.MDOCS_DATA_DIR?.trim() || path.join(os.homedir(), '.mdocs');
14
+ const dbFile = path.join(dataDir, 'sqlite', 'data.sqlite');
15
+ if (!fs.existsSync(dbFile)) {
16
+ console.error(`数据库文件不存在:${dbFile}`);
17
+ process.exit(1);
18
+ }
19
+ const db = new Database(dbFile);
20
+ // 统计当前 ___desc___.md 的数量
21
+ const countResult = db.prepare(`SELECT COUNT(*) as cnt FROM documents WHERE relative_path LIKE '%/___desc___.md' AND file_type = 'md'`).get();
22
+ console.log(`找到 ${countResult.cnt} 个 ___desc___.md 文件(file_type = 'md')`);
23
+ if (countResult.cnt === 0) {
24
+ console.log('无需迁移。');
25
+ process.exit(0);
26
+ }
27
+ // 执行更新
28
+ const result = db.prepare(`UPDATE documents SET file_type = 'folder_desc', updated_at = datetime('now')
29
+ WHERE relative_path LIKE '%/___desc___.md' AND file_type = 'md'`).run();
30
+ console.log(`已更新 ${result.changes} 条记录。`);
31
+ // 验证
32
+ const verifyResult = db.prepare(`SELECT COUNT(*) as cnt FROM documents WHERE relative_path LIKE '%/___desc___.md' AND file_type = 'folder_desc'`).get();
33
+ console.log(`验证:当前有 ${verifyResult.cnt} 个 folder_desc 类型的 ___desc___.md 文件。`);
34
+ // 打印前 5 条看看
35
+ const rows = db.prepare(`SELECT relative_path, file_type FROM documents
36
+ WHERE relative_path LIKE '%/___desc___.md' LIMIT 5`).all();
37
+ console.log('\n前 5 条:');
38
+ for (const row of rows) {
39
+ console.log(` ${row.file_type}\t${row.relative_path}`);
40
+ }
41
+ db.close();
42
+ console.log('\n迁移完成。');
43
+ //# sourceMappingURL=003-folder-desc-file-type.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"003-folder-desc-file-type.js","sourceRoot":"","sources":["../../../src/server/migrations/003-folder-desc-file-type.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,OAAO,QAAQ,MAAM,gBAAgB,CAAC;AACtC,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,EAAE,MAAM,SAAS,CAAC;AAEzB,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,cAAc,EAAE,IAAI,EAAE,IAAI,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,QAAQ,CAAC,CAAC;AACxF,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,QAAQ,EAAE,aAAa,CAAC,CAAC;AAE3D,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC;IAC3B,OAAO,CAAC,KAAK,CAAC,YAAY,MAAM,EAAE,CAAC,CAAC;IACpC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC;AAED,MAAM,EAAE,GAAG,IAAI,QAAQ,CAAC,MAAM,CAAC,CAAC;AAEhC,yBAAyB;AACzB,MAAM,WAAW,GAAG,EAAE,CAAC,OAAO,CAC5B,uGAAuG,CACxG,CAAC,GAAG,EAAqB,CAAC;AAE3B,OAAO,CAAC,GAAG,CAAC,MAAM,WAAW,CAAC,GAAG,uCAAuC,CAAC,CAAC;AAE1E,IAAI,WAAW,CAAC,GAAG,KAAK,CAAC,EAAE,CAAC;IAC1B,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IACrB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC;AAED,OAAO;AACP,MAAM,MAAM,GAAG,EAAE,CAAC,OAAO,CACvB;mEACiE,CAClE,CAAC,GAAG,EAAE,CAAC;AAER,OAAO,CAAC,GAAG,CAAC,OAAO,MAAM,CAAC,OAAO,OAAO,CAAC,CAAC;AAE1C,KAAK;AACL,MAAM,YAAY,GAAG,EAAE,CAAC,OAAO,CAC7B,gHAAgH,CACjH,CAAC,GAAG,EAAqB,CAAC;AAE3B,OAAO,CAAC,GAAG,CAAC,UAAU,YAAY,CAAC,GAAG,sCAAsC,CAAC,CAAC;AAE9E,YAAY;AACZ,MAAM,IAAI,GAAG,EAAE,CAAC,OAAO,CACrB;sDACoD,CACrD,CAAC,GAAG,EAAE,CAAC;AAER,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;AACxB,KAAK,MAAM,GAAG,IAAI,IAAa,EAAE,CAAC;IAChC,OAAO,CAAC,GAAG,CAAC,KAAK,GAAG,CAAC,SAAS,KAAK,GAAG,CAAC,aAAa,EAAE,CAAC,CAAC;AAC1D,CAAC;AAED,EAAE,CAAC,KAAK,EAAE,CAAC;AACX,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC"}
@@ -0,0 +1,90 @@
1
+ /**
2
+ * 数据迁移:将 agent_model_configs 表中的 api_key 明文迁移到 secrets 文件。
3
+ *
4
+ * - 读取所有 api_key 明文,写入 ~/.mdocs/secrets/api-keys.json
5
+ * - 清空 DB 中的 api_key 字段(设为空串)
6
+ * - 以后 apiKey 只存在 secrets 文件里,DB 只做引用
7
+ *
8
+ * 用法:
9
+ * npx tsx src/server/migrations/004-api-key-to-secrets.ts
10
+ *
11
+ * 会自动从 ~/.mdocs/ 读取数据库,也可以通过 MDOCS_DATA_DIR 环境变量指定。
12
+ */
13
+ import Database from 'better-sqlite3';
14
+ import path from 'node:path';
15
+ import os from 'node:os';
16
+ import fs from 'node:fs';
17
+ const dataDir = process.env.MDOCS_DATA_DIR?.trim() || path.join(os.homedir(), '.mdocs');
18
+ const dbFile = path.join(dataDir, 'sqlite', 'data.sqlite');
19
+ const secretsDir = path.join(dataDir, 'secrets');
20
+ const apiKeysFile = path.join(secretsDir, 'api-keys.json');
21
+ if (!fs.existsSync(dbFile)) {
22
+ console.error(`数据库文件不存在:${dbFile}`);
23
+ process.exit(1);
24
+ }
25
+ const db = new Database(dbFile);
26
+ // 检查表是否存在
27
+ const tableExists = db.prepare(`SELECT name FROM sqlite_master WHERE type='table' AND name='agent_model_configs'`).get();
28
+ if (!tableExists) {
29
+ console.log('agent_model_configs 表不存在,无需迁移。');
30
+ db.close();
31
+ process.exit(0);
32
+ }
33
+ // 读取所有 api_key
34
+ const rows = db.prepare(`SELECT owner_visitor_id, api_key FROM agent_model_configs WHERE api_key IS NOT NULL AND api_key != ''`).all();
35
+ console.log(`找到 ${rows.length} 条带 api_key 的配置`);
36
+ if (rows.length === 0) {
37
+ console.log('无需迁移。');
38
+ db.close();
39
+ process.exit(0);
40
+ }
41
+ // 确保 secrets 目录存在
42
+ if (!fs.existsSync(secretsDir)) {
43
+ fs.mkdirSync(secretsDir, { recursive: true, mode: 0o700 });
44
+ }
45
+ // 读取现有 secrets 文件(如果有的话)
46
+ let existingKeys = {};
47
+ if (fs.existsSync(apiKeysFile)) {
48
+ try {
49
+ existingKeys = JSON.parse(fs.readFileSync(apiKeysFile, 'utf8'));
50
+ }
51
+ catch {
52
+ console.log('现有 secrets 文件解析失败,将覆盖。');
53
+ existingKeys = {};
54
+ }
55
+ }
56
+ // 合并新的 key
57
+ let migratedCount = 0;
58
+ for (const row of rows) {
59
+ if (!existingKeys[row.owner_visitor_id]) {
60
+ existingKeys[row.owner_visitor_id] = row.api_key;
61
+ migratedCount++;
62
+ }
63
+ }
64
+ // 原子写入
65
+ const tmpFile = `${apiKeysFile}.tmp.${process.pid}`;
66
+ try {
67
+ fs.writeFileSync(tmpFile, JSON.stringify(existingKeys, null, 2), { mode: 0o600 });
68
+ fs.renameSync(tmpFile, apiKeysFile);
69
+ }
70
+ catch (e) {
71
+ console.error('写入 secrets 文件失败:', e);
72
+ if (fs.existsSync(tmpFile)) {
73
+ try {
74
+ fs.unlinkSync(tmpFile);
75
+ }
76
+ catch { /* ignore */ }
77
+ }
78
+ db.close();
79
+ process.exit(1);
80
+ }
81
+ console.log(`已迁移 ${migratedCount} 个 api_key 到 secrets 文件`);
82
+ // 清空 DB 中的 api_key 字段
83
+ const result = db.prepare(`UPDATE agent_model_configs SET api_key = '' WHERE api_key IS NOT NULL AND api_key != ''`).run();
84
+ console.log(`已清空 DB 中 ${result.changes} 条记录的 api_key 字段`);
85
+ // 验证
86
+ const verifyCount = db.prepare(`SELECT COUNT(*) as cnt FROM agent_model_configs WHERE api_key IS NOT NULL AND api_key != ''`).get();
87
+ console.log(`验证:DB 中剩余 ${verifyCount.cnt} 条非空 api_key 记录`);
88
+ db.close();
89
+ console.log('\n迁移完成。');
90
+ //# sourceMappingURL=004-api-key-to-secrets.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"004-api-key-to-secrets.js","sourceRoot":"","sources":["../../../src/server/migrations/004-api-key-to-secrets.ts"],"names":[],"mappings":"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"}