@tnotesjs/core 0.0.6 → 0.0.8

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 (116) hide show
  1. package/README.md +87 -84
  2. package/dist/{chunk-JDVN2QYW.js → chunk-JUMVJKWV.js} +615 -614
  3. package/dist/cli/index.js +125 -125
  4. package/dist/vitepress/config/index.js +184 -210
  5. package/package.json +15 -3
  6. package/types/config.ts +61 -61
  7. package/types/index.ts +11 -11
  8. package/types/note.ts +33 -33
  9. package/types/shims.d.ts +3 -4
  10. package/vitepress/assets/icons/icon__check.svg +3 -3
  11. package/vitepress/assets/icons/icon__clipboard.svg +7 -7
  12. package/vitepress/assets/icons/icon__close.svg +1 -1
  13. package/vitepress/assets/icons/icon__collapse.svg +1 -1
  14. package/vitepress/assets/icons/icon__confirm.svg +1 -1
  15. package/vitepress/assets/icons/icon__copy.svg +4 -4
  16. package/vitepress/assets/icons/icon__focus.svg +1 -1
  17. package/vitepress/assets/icons/icon__fold.svg +3 -3
  18. package/vitepress/assets/icons/icon__folder.svg +1 -1
  19. package/vitepress/assets/icons/icon__fullscreen.svg +1 -1
  20. package/vitepress/assets/icons/icon__fullscreen_exit.svg +1 -1
  21. package/vitepress/assets/icons/icon__github.svg +3 -3
  22. package/vitepress/assets/icons/icon__mindmap.svg +1 -1
  23. package/vitepress/assets/icons/icon__next.svg +1 -1
  24. package/vitepress/assets/icons/icon__number_gray.svg +1 -1
  25. package/vitepress/assets/icons/icon__number_purple.svg +1 -1
  26. package/vitepress/assets/icons/icon__prev.svg +1 -1
  27. package/vitepress/assets/icons/icon__restore.svg +1 -1
  28. package/vitepress/assets/icons/icon__rotate.svg +4 -4
  29. package/vitepress/assets/icons/icon__search.svg +1 -1
  30. package/vitepress/assets/icons/icon__sidebar_collapsed.svg +1 -1
  31. package/vitepress/assets/icons/icon__sidebar_opened.svg +1 -1
  32. package/vitepress/assets/icons/icon__totop.svg +5 -5
  33. package/vitepress/assets/icons/icon__vscode.svg +5 -5
  34. package/vitepress/assets/icons/icon__zoom_fit.svg +1 -1
  35. package/vitepress/assets/icons/icon__zoom_in.svg +1 -1
  36. package/vitepress/assets/icons/icon__zoom_out.svg +1 -1
  37. package/vitepress/assets/icons/icon__zoom_reset.svg +1 -1
  38. package/vitepress/assets/icons/index.ts +38 -38
  39. package/vitepress/components/BilibiliOutsidePlayer/BilibiliOutsidePlayer.vue +20 -20
  40. package/vitepress/components/CodeBlockFullscreen/CodeBlockFullscreen.vue +373 -372
  41. package/vitepress/components/CodeBlockFullscreen/index.ts +115 -114
  42. package/vitepress/components/CodeBlockFullscreen/styles.css +64 -64
  43. package/vitepress/components/Discussions/Discussions.module.scss +32 -32
  44. package/vitepress/components/Discussions/Discussions.vue +211 -210
  45. package/vitepress/components/EnWordList/EnWordList.module.scss +124 -124
  46. package/vitepress/components/EnWordList/EnWordList.vue +543 -542
  47. package/vitepress/components/EnWordList/RightClickMenu.module.scss +22 -22
  48. package/vitepress/components/EnWordList/RightClickMenu.vue +66 -66
  49. package/vitepress/components/Footprints/Footprints.module.scss +93 -93
  50. package/vitepress/components/Footprints/Footprints.vue +377 -377
  51. package/vitepress/components/Layout/AboutModal.module.scss +233 -233
  52. package/vitepress/components/Layout/AboutModal.vue +105 -105
  53. package/vitepress/components/Layout/AboutPanel.vue +270 -265
  54. package/vitepress/components/Layout/ContentCollapse.vue +603 -602
  55. package/vitepress/components/Layout/CustomSidebar.vue +608 -605
  56. package/vitepress/components/Layout/DocBeforeControls.vue +149 -139
  57. package/vitepress/components/Layout/DocFooter.vue +233 -232
  58. package/vitepress/components/Layout/ImagePreview.module.scss +201 -201
  59. package/vitepress/components/Layout/ImagePreview.vue +281 -280
  60. package/vitepress/components/Layout/Layout.module.scss +661 -661
  61. package/vitepress/components/Layout/Layout.vue +539 -542
  62. package/vitepress/components/Layout/NoteStatus.vue +140 -139
  63. package/vitepress/components/Layout/SidebarItems.vue +267 -262
  64. package/vitepress/components/Layout/SidebarNavBefore.vue +92 -92
  65. package/vitepress/components/Layout/Swiper.vue +167 -167
  66. package/vitepress/components/Layout/ToggleFullContent.module.scss +11 -11
  67. package/vitepress/components/Layout/ToggleFullContent.vue +35 -34
  68. package/vitepress/components/Layout/ToggleSidebar.module.scss +11 -11
  69. package/vitepress/components/Layout/ToggleSidebar.vue +36 -35
  70. package/vitepress/components/Layout/composables/useCollapseControl.ts +88 -88
  71. package/vitepress/components/Layout/composables/useNoteConfig.ts +119 -121
  72. package/vitepress/components/Layout/composables/useNoteSave.ts +173 -172
  73. package/vitepress/components/Layout/composables/useNoteValidation.ts +85 -85
  74. package/vitepress/components/Layout/composables/useRedirect.ts +113 -110
  75. package/vitepress/components/Layout/composables/useVSCodeIntegration.ts +86 -83
  76. package/vitepress/components/Layout/homeReadme.data.ts +124 -124
  77. package/vitepress/components/LoadingPage/LoadingPage.vue +192 -192
  78. package/vitepress/components/MarkMap/MarkMap.module.scss +159 -159
  79. package/vitepress/components/MarkMap/MarkMap.vue +405 -404
  80. package/vitepress/components/Mermaid/Mermaid.module.scss +275 -275
  81. package/vitepress/components/Mermaid/Mermaid.vue +365 -363
  82. package/vitepress/components/NotesTable/NotesTable.module.scss +77 -77
  83. package/vitepress/components/NotesTable/NotesTable.vue +98 -97
  84. package/vitepress/components/NotesTable/README.md +67 -67
  85. package/vitepress/components/Settings/Settings.module.scss +433 -433
  86. package/vitepress/components/Settings/Settings.vue +306 -305
  87. package/vitepress/components/SidebarCard/MindMapView.vue +484 -483
  88. package/vitepress/components/SidebarCard/NotesTrendChart.vue +108 -108
  89. package/vitepress/components/SidebarCard/SidebarCard.vue +946 -948
  90. package/vitepress/components/Tooltip/Tooltip.vue +70 -70
  91. package/vitepress/components/constants.ts +91 -91
  92. package/vitepress/components/notesConfig.data.ts +73 -73
  93. package/vitepress/components/sidebar.data.ts +59 -59
  94. package/vitepress/components/tnotes-config.data.ts +21 -21
  95. package/vitepress/components/utils.ts +26 -26
  96. package/vitepress/config/index.ts +160 -146
  97. package/vitepress/configs/constants.ts +26 -26
  98. package/vitepress/configs/head.config.ts +25 -24
  99. package/vitepress/configs/index.ts +9 -9
  100. package/vitepress/configs/markdown-it.d.ts +23 -20
  101. package/vitepress/configs/markdown.config.ts +366 -365
  102. package/vitepress/configs/theme.config.ts +108 -108
  103. package/vitepress/plugins/buildProgressPlugin.ts +434 -470
  104. package/vitepress/plugins/getNoteByConfigIdPlugin.ts +107 -106
  105. package/vitepress/plugins/renameNotePlugin.ts +60 -59
  106. package/vitepress/plugins/updateConfigPlugin.ts +63 -62
  107. package/vitepress/theme/index.ts +95 -93
  108. package/vitepress/theme/styles/base.scss +50 -50
  109. package/vitepress/theme/styles/components/404.scss +31 -31
  110. package/vitepress/theme/styles/components/collapse.scss +175 -175
  111. package/vitepress/theme/styles/components/markmap.scss +101 -101
  112. package/vitepress/theme/styles/components/swiper.scss +255 -255
  113. package/vitepress/theme/styles/index.scss +25 -25
  114. package/vitepress/theme/styles/layout.scss +62 -62
  115. package/vitepress/theme/styles/utilities.scss +39 -39
  116. package/vitepress/theme/styles/vitepress-override.scss +25 -25
@@ -1,95 +1,97 @@
1
- /**
2
- * .vitepress/tnotes/theme/index.ts
3
- *
4
- * 自定义主题
5
- *
6
- * 提供两种使用方式:
7
- * 1. defineNotesTheme() 工厂函数(推荐)
8
- * 2. export default(向后兼容)
9
- *
10
- * doc:
11
- * v1 - https://vuejs.github.io/vitepress/v1/zh/guide/custom-theme
12
- * v2 - https://vitepress.dev/zh/guide/custom-theme
13
- */
14
-
15
- import type { Theme, EnhanceAppContext } from 'vitepress'
1
+ /**
2
+ * .vitepress/tnotes/theme/index.ts
3
+ *
4
+ * 自定义主题
5
+ *
6
+ * 提供两种使用方式:
7
+ * 1. defineNotesTheme() 工厂函数(推荐)
8
+ * 2. export default(向后兼容)
9
+ *
10
+ * doc:
11
+ * v1 - https://vuejs.github.io/vitepress/v1/zh/guide/custom-theme
12
+ * v2 - https://vitepress.dev/zh/guide/custom-theme
13
+ */
14
+
16
15
  import DefaultTheme from 'vitepress/theme'
17
- import BilibiliOutsidePlayer from '../components/BilibiliOutsidePlayer/BilibiliOutsidePlayer.vue'
18
- import Discussions from '../components/Discussions/Discussions.vue'
19
- import EnWordList from '../components/EnWordList/EnWordList.vue'
20
- import Footprints from '../components/Footprints/Footprints.vue'
21
- import Layout from '../components/Layout/Layout.vue'
22
- import LoadingPage from '../components/LoadingPage/LoadingPage.vue'
23
- import MarkMap from '../components/MarkMap/MarkMap.vue'
24
- import Mermaid from '../components/Mermaid/Mermaid.vue'
25
- import NotesTable from '../components/NotesTable/NotesTable.vue'
26
- import Settings from '../components/Settings/Settings.vue'
27
- import SidebarCard from '../components/SidebarCard/SidebarCard.vue'
16
+
17
+ import BilibiliOutsidePlayer from '../components/BilibiliOutsidePlayer/BilibiliOutsidePlayer.vue'
18
+ import Discussions from '../components/Discussions/Discussions.vue'
19
+ import EnWordList from '../components/EnWordList/EnWordList.vue'
20
+ import Footprints from '../components/Footprints/Footprints.vue'
21
+ import Layout from '../components/Layout/Layout.vue'
22
+ import LoadingPage from '../components/LoadingPage/LoadingPage.vue'
23
+ import MarkMap from '../components/MarkMap/MarkMap.vue'
24
+ import Mermaid from '../components/Mermaid/Mermaid.vue'
25
+ import NotesTable from '../components/NotesTable/NotesTable.vue'
26
+ import Settings from '../components/Settings/Settings.vue'
27
+ import SidebarCard from '../components/SidebarCard/SidebarCard.vue'
28
28
  import Tooltip from '../components/Tooltip/Tooltip.vue'
29
- import './styles/index.scss'
30
-
31
- /**
32
- * 注册 TNotes 核心全局组件
33
- */
34
- function registerCoreComponents(ctx: EnhanceAppContext) {
35
- const { app } = ctx
36
- app.component('BilibiliOutsidePlayer', BilibiliOutsidePlayer)
37
- app.component('B', BilibiliOutsidePlayer)
38
- app.component('Discussions', Discussions)
39
- app.component('EnWordList', EnWordList)
40
- app.component('E', EnWordList)
41
- app.component('Footprints', Footprints)
42
- app.component('F', Footprints)
43
- app.component('LoadingPage', LoadingPage)
44
- app.component('Settings', Settings)
45
- app.component('S', Settings)
46
- app.component('SidebarCard', SidebarCard)
47
- app.component('MarkMap', MarkMap)
48
- app.component('Mermaid', Mermaid)
49
- app.component('NotesTable', NotesTable)
50
- app.component('N', NotesTable)
51
- app.component('Tooltip', Tooltip)
52
- }
53
-
54
- /**
55
- * 覆盖选项
56
- */
57
- interface NotesThemeOverrides {
58
- /** 覆盖 Layout 组件 */
59
- Layout?: Theme['Layout']
60
- /** 追加的 enhanceApp 逻辑(在核心组件注册之后调用) */
61
- enhanceApp?: Theme['enhanceApp']
62
- }
63
-
64
- /**
65
- * 创建 TNotes 主题配置
66
- *
67
- * @param overrides - 可选的覆盖选项
68
- * @returns VitePress 主题对象
69
- *
70
- * @example
71
- * // .vitepress/theme/index.ts
72
- * import { defineNotesTheme } from '../tnotes/vitepress/theme'
73
- * export default defineNotesTheme()
74
- */
75
- export function defineNotesTheme(overrides: NotesThemeOverrides = {}): Theme {
76
- return {
77
- extends: DefaultTheme,
78
- Layout: overrides.Layout ?? Layout,
79
- enhanceApp(ctx) {
80
- registerCoreComponents(ctx)
81
- overrides.enhanceApp?.(ctx)
82
- },
83
- }
84
- }
85
-
86
- /**
87
- * 默认导出(向后兼容旧版 re-export 方式)
88
- */
89
- export default {
90
- extends: DefaultTheme,
91
- Layout,
92
- enhanceApp(ctx: EnhanceAppContext) {
93
- registerCoreComponents(ctx)
94
- },
95
- } satisfies Theme
29
+
30
+ import type { Theme, EnhanceAppContext } from 'vitepress'
31
+ import './styles/index.scss'
32
+
33
+ /**
34
+ * 注册 TNotes 核心全局组件
35
+ */
36
+ function registerCoreComponents(ctx: EnhanceAppContext) {
37
+ const { app } = ctx
38
+ app.component('BilibiliOutsidePlayer', BilibiliOutsidePlayer)
39
+ app.component('B', BilibiliOutsidePlayer)
40
+ app.component('Discussions', Discussions)
41
+ app.component('EnWordList', EnWordList)
42
+ app.component('E', EnWordList)
43
+ app.component('Footprints', Footprints)
44
+ app.component('F', Footprints)
45
+ app.component('LoadingPage', LoadingPage)
46
+ app.component('Settings', Settings)
47
+ app.component('S', Settings)
48
+ app.component('SidebarCard', SidebarCard)
49
+ app.component('MarkMap', MarkMap)
50
+ app.component('Mermaid', Mermaid)
51
+ app.component('NotesTable', NotesTable)
52
+ app.component('N', NotesTable)
53
+ app.component('Tooltip', Tooltip)
54
+ }
55
+
56
+ /**
57
+ * 覆盖选项
58
+ */
59
+ interface NotesThemeOverrides {
60
+ /** 覆盖 Layout 组件 */
61
+ Layout?: Theme['Layout']
62
+ /** 追加的 enhanceApp 逻辑(在核心组件注册之后调用) */
63
+ enhanceApp?: Theme['enhanceApp']
64
+ }
65
+
66
+ /**
67
+ * 创建 TNotes 主题配置
68
+ *
69
+ * @param overrides - 可选的覆盖选项
70
+ * @returns VitePress 主题对象
71
+ *
72
+ * @example
73
+ * // .vitepress/theme/index.ts
74
+ * import { defineNotesTheme } from '../tnotes/vitepress/theme'
75
+ * export default defineNotesTheme()
76
+ */
77
+ export function defineNotesTheme(overrides: NotesThemeOverrides = {}): Theme {
78
+ return {
79
+ extends: DefaultTheme,
80
+ Layout: overrides.Layout ?? Layout,
81
+ enhanceApp(ctx) {
82
+ registerCoreComponents(ctx)
83
+ overrides.enhanceApp?.(ctx)
84
+ },
85
+ }
86
+ }
87
+
88
+ /**
89
+ * 默认导出(向后兼容旧版 re-export 方式)
90
+ */
91
+ export default {
92
+ extends: DefaultTheme,
93
+ Layout,
94
+ enhanceApp(ctx: EnhanceAppContext) {
95
+ registerCoreComponents(ctx)
96
+ },
97
+ } satisfies Theme
@@ -1,50 +1,50 @@
1
- /**
2
- * 基础样式层
3
- * - CSS 自定义属性(变量)
4
- * - 全局样式重置
5
- * - 通用样式规则
6
- */
7
-
8
- /* ===================================== */
9
- /* #region CSS 变量定义 */
10
- /* ===================================== */
11
-
12
- :root {
13
- /* 品牌色 */
14
- --vp-c-brand-1: #646cff;
15
- --vp-c-brand-2: #747bff;
16
-
17
- /* TNotes 自定义变量 */
18
- --tn-content-width: 688px;
19
- }
20
-
21
- /* #endregion */
22
-
23
- /* ===================================== */
24
- /* #region 全局样式重置 */
25
- /* ===================================== */
26
-
27
- /* 移除所有链接的下划线 */
28
- a {
29
- text-decoration: none !important;
30
- }
31
-
32
- /* 任务列表样式优化 */
33
- ul > li.task-list-item {
34
- list-style-type: none;
35
- padding-left: 0;
36
- margin-left: 0;
37
- }
38
-
39
- ul > li.task-list-item > ul {
40
- padding-left: 3rem;
41
- }
42
-
43
- .vp-doc h2 {
44
- // 默认值:
45
- // margin: 48px 0 16px;
46
- // 缩小上边距
47
- // margin: 32px 0 16px;
48
- }
49
-
50
- /* #endregion */
1
+ /**
2
+ * 基础样式层
3
+ * - CSS 自定义属性(变量)
4
+ * - 全局样式重置
5
+ * - 通用样式规则
6
+ */
7
+
8
+ /* ===================================== */
9
+ /* #region CSS 变量定义 */
10
+ /* ===================================== */
11
+
12
+ :root {
13
+ /* 品牌色 */
14
+ --vp-c-brand-1: #646cff;
15
+ --vp-c-brand-2: #747bff;
16
+
17
+ /* TNotes 自定义变量 */
18
+ --tn-content-width: 688px;
19
+ }
20
+
21
+ /* #endregion */
22
+
23
+ /* ===================================== */
24
+ /* #region 全局样式重置 */
25
+ /* ===================================== */
26
+
27
+ /* 移除所有链接的下划线 */
28
+ a {
29
+ text-decoration: none !important;
30
+ }
31
+
32
+ /* 任务列表样式优化 */
33
+ ul > li.task-list-item {
34
+ list-style-type: none;
35
+ padding-left: 0;
36
+ margin-left: 0;
37
+ }
38
+
39
+ ul > li.task-list-item > ul {
40
+ padding-left: 3rem;
41
+ }
42
+
43
+ .vp-doc h2 {
44
+ // 默认值:
45
+ // margin: 48px 0 16px;
46
+ // 缩小上边距
47
+ // margin: 32px 0 16px;
48
+ }
49
+
50
+ /* #endregion */
@@ -1,31 +1,31 @@
1
- /**
2
- * ./vitepress/tnotes/vitepress/theme/styles/components/404.scss
3
- *
4
- * 404 页面样式
5
- */
6
-
7
- .not-found-container {
8
- text-align: center;
9
- padding: 2rem;
10
- min-height: calc(100vh - var(--vp-nav-height));
11
- display: flex;
12
- flex-direction: column;
13
- justify-content: center;
14
- align-items: center;
15
- animation: fadeIn 0.4s ease-out;
16
- }
17
-
18
- .not-found-container h1 {
19
- font-size: 4rem;
20
- line-height: 4rem;
21
- margin-bottom: 1rem;
22
- background: linear-gradient(135deg, var(--vp-c-brand-1), var(--vp-c-brand-2));
23
- -webkit-background-clip: text;
24
- -webkit-text-fill-color: transparent;
25
- background-clip: text;
26
- }
27
-
28
- .not-found-container p {
29
- font-size: 1.5rem;
30
- color: var(--vp-c-text-2);
31
- }
1
+ /**
2
+ * ./vitepress/tnotes/vitepress/theme/styles/components/404.scss
3
+ *
4
+ * 404 页面样式
5
+ */
6
+
7
+ .not-found-container {
8
+ text-align: center;
9
+ padding: 2rem;
10
+ min-height: calc(100vh - var(--vp-nav-height));
11
+ display: flex;
12
+ flex-direction: column;
13
+ justify-content: center;
14
+ align-items: center;
15
+ animation: fadeIn 0.4s ease-out;
16
+ }
17
+
18
+ .not-found-container h1 {
19
+ font-size: 4rem;
20
+ line-height: 4rem;
21
+ margin-bottom: 1rem;
22
+ background: linear-gradient(135deg, var(--vp-c-brand-1), var(--vp-c-brand-2));
23
+ -webkit-background-clip: text;
24
+ -webkit-text-fill-color: transparent;
25
+ background-clip: text;
26
+ }
27
+
28
+ .not-found-container p {
29
+ font-size: 1.5rem;
30
+ color: var(--vp-c-text-2);
31
+ }