md2ui 1.0.18 → 1.0.20

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 (80) hide show
  1. package/README.md +51 -58
  2. package/bin/build.js +95 -9
  3. package/bin/md2ui.js +102 -13
  4. package/package.json +24 -10
  5. package/public/docs/00-/345/277/253/351/200/237/345/274/200/345/247/213.md +48 -28
  6. package/public/docs/01-/345/212/237/350/203/275/347/211/271/346/200/247.md +55 -40
  7. package/public/docs/02-Markdown/346/270/262/346/237/223/00-/345/237/272/347/241/200/350/257/255/346/263/225.md +88 -0
  8. package/public/docs/02-Markdown/346/270/262/346/237/223/01-/344/273/243/347/240/201/345/235/227.md +91 -0
  9. package/public/docs/02-Markdown/346/270/262/346/237/223/02-/350/241/250/346/240/274.md +187 -0
  10. package/public/docs/02-Markdown/346/270/262/346/237/223/03-Mermaid/345/233/276/350/241/250.md +101 -0
  11. package/public/docs/02-Markdown/346/270/262/346/237/223/04-Frontmatter.md +32 -0
  12. package/public/docs/02-Markdown/346/270/262/346/237/223/05-/346/225/260/345/255/246/345/205/254/345/274/217.md +47 -0
  13. package/public/docs/02-Markdown/346/270/262/346/237/223/06-Mermaid/345/244/215/346/235/202/345/233/276/350/241/250/346/265/213/350/257/225.md +1376 -0
  14. package/public/docs/02-Markdown/346/270/262/346/237/223/assets/img-1777383093712.png +0 -0
  15. package/public/docs/03-/345/257/274/350/210/252/344/270/216/345/270/203/345/261/200/00-/344/270/211/346/240/217/345/270/203/345/261/200.md +33 -0
  16. package/public/docs/03-/345/257/274/350/210/252/344/270/216/345/270/203/345/261/200/01-/347/233/256/345/275/225/346/240/221/345/257/274/350/210/252.md +43 -0
  17. package/public/docs/03-/345/257/274/350/210/252/344/270/216/345/270/203/345/261/200/02-/346/226/207/346/241/243/345/244/247/347/272/262.md +51 -0
  18. package/public/docs/03-/345/257/274/350/210/252/344/270/216/345/270/203/345/261/200/03-/344/270/212/344/270/213/347/257/207/345/257/274/350/210/252.md +29 -0
  19. package/public/docs/03-/345/257/274/350/210/252/344/270/216/345/270/203/345/261/200/04-/347/253/231/345/206/205/351/223/276/346/216/245.md +39 -0
  20. package/public/docs/03-/345/257/274/350/210/252/344/270/216/345/270/203/345/261/200/05-/345/244/247/347/272/262/345/216/213/345/212/233/346/265/213/350/257/225.md +340 -0
  21. package/public/docs/04-/346/220/234/347/264/242/345/212/237/350/203/275/00-/345/205/250/346/226/207/346/220/234/347/264/242.md +46 -0
  22. package/public/docs/05-/347/274/226/350/276/221/345/212/237/350/203/275/00-/347/274/226/350/276/221/345/231/250/345/237/272/347/241/200.md +65 -0
  23. package/public/docs/05-/347/274/226/350/276/221/345/212/237/350/203/275/01-/350/207/252/345/212/250/344/277/235/345/255/230.md +38 -0
  24. package/public/docs/06-/351/230/205/350/257/273/344/275/223/351/252/214/00-/351/230/205/350/257/273/350/277/233/345/272/246.md +43 -0
  25. package/public/docs/06-/351/230/205/350/257/273/344/275/223/351/252/214/01-/345/233/276/347/211/207/346/224/276/345/244/247.md +40 -0
  26. package/public/docs/06-/351/230/205/350/257/273/344/275/223/351/252/214/02-/350/277/224/345/233/236/351/241/266/351/203/250.md +38 -0
  27. package/public/docs/06-/351/230/205/350/257/273/344/275/223/351/252/214/assets/img-1777261394722.png +0 -0
  28. package/public/docs/07-/347/247/273/345/212/250/347/253/257/351/200/202/351/205/215/00-/345/223/215/345/272/224/345/274/217/345/270/203/345/261/200.md +37 -0
  29. package/public/docs/08-/346/226/207/346/241/243/347/256/241/347/220/206/00-/346/226/260/345/273/272/344/270/216/345/210/240/351/231/244.md +47 -0
  30. package/public/docs/09-/345/257/274/345/207/272/345/212/237/350/203/275/00-/345/257/274/345/207/272Word.md +77 -0
  31. package/public/docs/10-/351/203/250/347/275/262/344/270/216/351/205/215/347/275/256/00-CLI/345/267/245/345/205/267.md +52 -0
  32. package/public/docs/10-/351/203/250/347/275/262/344/270/216/351/205/215/347/275/256/01-SSG/351/235/231/346/200/201/346/236/204/345/273/272.md +44 -0
  33. package/public/docs/10-/351/203/250/347/275/262/344/270/216/351/205/215/347/275/256/02-/350/207/252/345/256/232/344/271/211/351/205/215/347/275/256.md +58 -0
  34. package/public/docs/11-/345/244/232/347/272/247/347/233/256/345/275/225/346/265/213/350/257/225/00-/344/270/200/347/272/247/346/226/207/346/241/243.md +20 -0
  35. package/public/docs/11-/345/244/232/347/272/247/347/233/256/345/275/225/346/265/213/350/257/225/01-/345/255/220/347/233/256/345/275/225/00-/344/272/214/347/272/247/346/226/207/346/241/243.md +13 -0
  36. package/public/docs/11-/345/244/232/347/272/247/347/233/256/345/275/225/346/265/213/350/257/225/01-/345/255/220/347/233/256/345/275/225/01-/346/267/261/345/261/202/345/265/214/345/245/227/00-/344/270/211/347/272/247/346/226/207/346/241/243.md +23 -0
  37. package/src/App.vue +111 -12
  38. package/src/components/AppSidebar.vue +181 -21
  39. package/src/components/CodeBlockNodeView.vue +72 -0
  40. package/src/components/DocContent.vue +25 -14
  41. package/src/components/EditorContent.vue +257 -0
  42. package/src/components/EditorToolbar.vue +264 -0
  43. package/src/components/ImageZoom.vue +88 -5
  44. package/src/components/MathBlockNodeView.vue +160 -0
  45. package/src/components/MathInlineNodeView.vue +145 -0
  46. package/src/components/MermaidNodeView.vue +157 -0
  47. package/src/components/MobileSearch.vue +97 -0
  48. package/src/components/TableOfContents.vue +174 -32
  49. package/src/components/TopBar.vue +69 -4
  50. package/src/components/TreeNode.vue +232 -39
  51. package/src/components/WelcomePage.vue +2 -2
  52. package/src/composables/useDocHash.js +9 -1
  53. package/src/composables/useDocManager.js +452 -105
  54. package/src/composables/useDocTree.js +33 -2
  55. package/src/composables/useExportWord.js +73 -10
  56. package/src/composables/useFileWatcher.js +45 -0
  57. package/src/composables/useFrontmatter.js +2 -2
  58. package/src/composables/useMarkdown.js +450 -52
  59. package/src/composables/useMermaidCache.js +15 -0
  60. package/src/composables/useScroll.js +354 -27
  61. package/src/composables/useSearch.js +12 -11
  62. package/src/config.js +1 -4
  63. package/src/extensions/CodeBlockCustom.js +113 -0
  64. package/src/extensions/MathBlock.js +107 -0
  65. package/src/extensions/MathInline.js +100 -0
  66. package/src/extensions/MermaidBlock.js +73 -0
  67. package/src/extensions/TableControls.js +670 -0
  68. package/src/services/DocService.js +168 -0
  69. package/src/style.css +2416 -36
  70. package/src/utils/imageConverter.js +129 -0
  71. package/vite-plugin-doc-api.js +369 -0
  72. package/vite.config.js +7 -2
  73. package/public/docs/02-Mermaid/345/233/276/350/241/250.md +0 -102
  74. package/public/docs/03-/350/277/233/351/230/266/346/214/207/345/215/227/01-/347/233/256/345/275/225/347/273/223/346/236/204.md +0 -55
  75. package/public/docs/03-/350/277/233/351/230/266/346/214/207/345/215/227/02-/350/207/252/345/256/232/344/271/211/351/205/215/347/275/256.md +0 -63
  76. package/public/docs/03-/350/277/233/351/230/266/346/214/207/345/215/227/03-/351/203/250/347/275/262/346/226/271/346/241/210.md +0 -73
  77. package/public/docs/04-API/345/217/202/350/200/203/01-/347/273/204/344/273/266API.md +0 -80
  78. package/public/docs/04-API/345/217/202/350/200/203/02-Composables.md +0 -92
  79. package/src/api/docs.js +0 -106
  80. package/src/components/SearchPanel.vue +0 -90
@@ -0,0 +1,101 @@
1
+ # Mermaid 图表
2
+
3
+ 验证各类 Mermaid 图表的渲染效果。图表支持点击放大查看。
4
+
5
+ ## 流程图
6
+
7
+ ```mermaid
8
+ graph TD
9
+ A[开始] --> B{是否有文档?}
10
+ B -->|是| C[扫描目录]
11
+ B -->|否| D[提示创建文档]
12
+ C --> E[生成目录树]
13
+ E --> F[渲染页面]
14
+ D --> G[结束]
15
+ F --> G
16
+ ```
17
+
18
+ ## 序列图
19
+
20
+ ```mermaid
21
+ sequenceDiagram
22
+ participant U as 用户
23
+ participant C as CLI
24
+ participant V as Vite Server
25
+ participant B as 浏览器
26
+
27
+ U->>C: md2ui
28
+ C->>V: 启动开发服务器
29
+ V->>V: 扫描 .md 文件
30
+ V-->>C: 服务就绪
31
+ C->>B: 自动打开浏览器
32
+ B->>V: 请求文档列表
33
+ V-->>B: 返回 JSON
34
+ B->>B: 渲染导航树
35
+ ```
36
+
37
+ ## 甘特图
38
+
39
+ ```mermaid
40
+ gantt
41
+ title 项目开发计划
42
+ dateFormat YYYY-MM-DD
43
+ section 基础功能
44
+ Markdown 渲染 :done, a1, 2024-01-01, 30d
45
+ 代码高亮 :done, a2, after a1, 14d
46
+ section 增强功能
47
+ 全文搜索 :done, b1, after a2, 14d
48
+ 编辑器 :active, b2, after b1, 21d
49
+ section 部署
50
+ SSG 构建 :c1, after b2, 14d
51
+ 文档完善 :c2, after c1, 7d
52
+ ```
53
+
54
+ ## 饼图
55
+
56
+ ```mermaid
57
+ pie title 技术栈占比
58
+ "Vue 3" : 40
59
+ "Tiptap" : 20
60
+ "Mermaid" : 15
61
+ "highlight.js" : 10
62
+ "MiniSearch" : 8
63
+ "其他" : 7
64
+ ```
65
+
66
+ ## 类图
67
+
68
+ ```mermaid
69
+ classDiagram
70
+ class DocManager {
71
+ +docsList: Array
72
+ +currentDoc: String
73
+ +loadDocsList()
74
+ +loadDoc(key)
75
+ +saveDoc(path, content)
76
+ }
77
+ class MarkdownRenderer {
78
+ +htmlContent: String
79
+ +tocItems: Array
80
+ +renderMarkdown(md)
81
+ }
82
+ class SearchEngine {
83
+ +searchIndex: MiniSearch
84
+ +buildIndex(docs)
85
+ +doSearch(query)
86
+ }
87
+ DocManager --> MarkdownRenderer
88
+ DocManager --> SearchEngine
89
+ ```
90
+
91
+ ## 状态图
92
+
93
+ ```mermaid
94
+ stateDiagram-v2
95
+ [*] --> 查看模式
96
+ 查看模式 --> 编辑模式: 点击编辑按钮
97
+ 编辑模式 --> 查看模式: 点击查看按钮
98
+ 编辑模式 --> 自动保存: 内容变更(1秒防抖)
99
+ 自动保存 --> 编辑模式: 保存完成
100
+ 查看模式 --> [*]
101
+ ```
@@ -0,0 +1,32 @@
1
+ ---
2
+ title: Frontmatter 功能测试
3
+ description: 验证 YAML frontmatter 解析和阅读时间计算
4
+
5
+ ---
6
+
7
+ # Frontmatter 功能测试
8
+
9
+ 本文档使用了 Frontmatter 元数据,页面标题应显示为 "Frontmatter 功能测试"。
10
+
11
+ ## 支持的字段
12
+
13
+ | 字段 | 类型 | 说明 |
14
+ | --- | --- | --- |
15
+ | title | string | 文档标题,覆盖第一个 h1 |
16
+ | description | string | 文档描述,显示在元信息区域 |
17
+ | order | number | 排序权重 |
18
+ | hidden | boolean | 是否在导航中隐藏 |
19
+
20
+ ## 阅读时间
21
+
22
+ 文档顶部应显示字数统计和预计阅读时间:
23
+
24
+ - 中文按 400 字/分钟计算
25
+ - 英文按 200 词/分钟计算
26
+ - 自动去除 frontmatter、代码块、HTML 标签后统计
27
+
28
+ ## 验证要点
29
+
30
+ 1. 页面标题应为 frontmatter 中的 `title` 值
31
+ 2. 元信息区域应显示 `description` 内容
32
+ 3. 应显示字数和预计阅读时间
@@ -0,0 +1,47 @@
1
+ # 数学公式
2
+
3
+ md2ui 内置 KaTeX 支持,可以在 Markdown 中直接书写数学公式。
4
+
5
+ ## 行内公式
6
+
7
+ 使用单个 `$` 包裹行内公式:
8
+
9
+ - 质能方程:$E = mc^2$
10
+ - 二次公式:$x = \frac{-b \pm \sqrt{b^2 - 4ac}}{2a}$
11
+ - 欧拉公式:$e^{i\pi} + 1 = 0$
12
+ - 求和符号:$\sum_{i=1}^{n} i = \frac{n(n+1)}{2}$
13
+
14
+ ## 块级公式
15
+
16
+ 使用双 `$$` 包裹块级公式:
17
+
18
+ $$
19
+ \int_{-\infty}^{\infty} e^{-x^2} dx = \sqrt{\pi}
20
+ $$
21
+
22
+ $$
23
+ \frac{\partial f}{\partial x} = \lim_{h \to 0} \frac{f(x+h) - f(x)}{h}
24
+ $$
25
+
26
+ ## 矩阵
27
+
28
+ $$
29
+ A = \begin{pmatrix}
30
+ a_{11} & a_{12} & a_{13} \\
31
+ a_{21} & a_{22} & a_{23} \\
32
+ a_{31} & a_{32} & a_{33}
33
+ \end{pmatrix}
34
+ $$
35
+
36
+ ## 语法说明
37
+
38
+ | 语法 | 说明 | 示例 |
39
+ | --- | --- | --- |
40
+ | `$...$` | 行内公式 | `$E=mc^2$` |
41
+ | `$$...$$` | 块级公式(居中显示) | `$$\sum_{i=1}^n i$$` |
42
+ | `\frac{a}{b}` | 分数 | |
43
+ | `\sqrt{x}` | 平方根 | |
44
+ | `\int` | 积分 | |
45
+ | `\sum` | 求和 | |
46
+
47
+ 更多 KaTeX 语法请参考 [KaTeX 官方文档](https://katex.org/docs/supported.html)。