@tnotesjs/core 0.1.28 → 0.2.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 (71) hide show
  1. package/README.md +2 -1
  2. package/package.json +3 -1
  3. package/templates/sub-repo/.gitattributes +30 -0
  4. package/templates/sub-repo/.github/workflows/deploy.yml +87 -0
  5. package/templates/sub-repo/.vitepress/config.mts +12 -0
  6. package/templates/sub-repo/.vitepress/env.d.ts +10 -0
  7. package/templates/sub-repo/.vitepress/theme/index.ts +12 -0
  8. package/templates/sub-repo/.vscode/settings.json +330 -0
  9. package/templates/sub-repo/.vscode/tnotes.code-snippets +110 -0
  10. package/templates/sub-repo/public/favicon.ico +0 -0
  11. package/templates/sub-repo/public/logo.png +0 -0
  12. package/templates/sub-repo/tsconfig.json +45 -0
  13. package/vitepress/assets/icons/icon__setting_dark.svg +4 -0
  14. package/vitepress/assets/icons/icon__setting_light.svg +4 -0
  15. package/vitepress/assets/icons/index.ts +2 -2
  16. package/vitepress/client/localSearchIndexBridge.ts +24 -0
  17. package/vitepress/components/Discussions/Discussions.vue +1 -1
  18. package/vitepress/components/Footprints/Footprints.vue +90 -25
  19. package/vitepress/components/Layout/CustomSidebar.vue +489 -117
  20. package/vitepress/components/Layout/Layout.vue +5 -0
  21. package/vitepress/components/Layout/NavBarSettingsTrigger.vue +10 -2
  22. package/vitepress/components/Layout/SidebarItems.vue +517 -342
  23. package/vitepress/components/Layout/SidebarNavBefore.vue +1 -50
  24. package/vitepress/components/Layout/SidebarResizeHandle.vue +6 -23
  25. package/vitepress/components/Layout/composables/docLayoutLogic.ts +59 -0
  26. package/vitepress/components/Layout/composables/useDocLayout.test.ts +69 -0
  27. package/vitepress/components/Layout/composables/useDocLayout.ts +128 -0
  28. package/vitepress/components/Layout/composables/useSidebarDrag.ts +514 -0
  29. package/vitepress/components/Layout/composables/useSidebarLayout.ts +25 -8
  30. package/vitepress/components/Layout/composables/useVSCodeIntegration.ts +8 -3
  31. package/vitepress/components/Layout/sidebarCollapsedState.test.ts +183 -0
  32. package/vitepress/components/Layout/sidebarCollapsedState.ts +241 -0
  33. package/vitepress/components/Layout/sidebarDragLogic.test.ts +1146 -0
  34. package/vitepress/components/Layout/sidebarDragLogic.ts +1307 -0
  35. package/vitepress/components/Layout/sidebarHitTest.test.ts +572 -0
  36. package/vitepress/components/Layout/sidebarHitTest.ts +801 -0
  37. package/vitepress/components/Layout/sidebarItemRenderLogic.test.ts +53 -0
  38. package/vitepress/components/Layout/sidebarItemRenderLogic.ts +50 -0
  39. package/vitepress/components/MarkMap/MarkMap.vue +67 -10
  40. package/vitepress/components/Settings/Settings.vue +78 -74
  41. package/vitepress/components/SidebarCard/FolderTreeItems.vue +268 -0
  42. package/vitepress/components/SidebarCard/SidebarCard.vue +125 -274
  43. package/vitepress/components/constants.ts +18 -6
  44. package/vitepress/components/sidebar.data.ts +13 -11
  45. package/vitepress/components/sidebarTreeHelpers.test.ts +142 -0
  46. package/vitepress/components/sidebarTreeHelpers.ts +168 -0
  47. package/vitepress/components/utils/vscodePaths.test.ts +41 -0
  48. package/vitepress/components/utils/vscodePaths.ts +52 -0
  49. package/vitepress/config/index.ts +2 -0
  50. package/vitepress/plugins/localSearchIndexBuilder.ts +209 -0
  51. package/vitepress/plugins/localSearchReindex.test.ts +46 -0
  52. package/vitepress/plugins/localSearchReindexLogic.ts +50 -0
  53. package/vitepress/plugins/localSearchReindexPatch.test.ts +30 -0
  54. package/vitepress/plugins/localSearchReindexPatch.ts +37 -0
  55. package/vitepress/plugins/localSearchReindexPlugin.ts +318 -0
  56. package/vitepress/plugins/sidebarStructurePlugin.ts +209 -63
  57. package/vitepress/theme/index.ts +8 -0
  58. package/vitepress/theme/styles/base.scss +0 -8
  59. package/vitepress/theme/styles/components/markmap.scss +23 -2
  60. package/vitepress/theme/styles/components/swiper.scss +1 -1
  61. package/vitepress/theme/styles/doc-layout.scss +212 -0
  62. package/vitepress/theme/styles/index.scss +3 -0
  63. package/vitepress/theme/styles/layout.scss +60 -10
  64. package/dist/chunk-4KG6RXFS.js +0 -4637
  65. package/dist/chunk-AGSL3VZE.js +0 -193
  66. package/dist/cli/index.js +0 -683
  67. package/dist/index.js +0 -8
  68. package/dist/vitepress/config/index.js +0 -1178
  69. package/vitepress/assets/icons/icon__mindmap.svg +0 -1
  70. package/vitepress/assets/icons/icon__setting.svg +0 -1
  71. package/vitepress/components/SidebarCard/MindMapView.vue +0 -488
@@ -12,6 +12,9 @@
12
12
  /* 3. 布局层:全局布局样式 */
13
13
  @use './layout';
14
14
 
15
+ /* 3.1 文档三栏布局 */
16
+ @use './doc-layout';
17
+
15
18
  /* 4. 组件全局层:跨组件共享的样式 */
16
19
  @use './components/swiper';
17
20
  @use './components/markmap';
@@ -9,12 +9,56 @@
9
9
  --tn-sidebar-width: 260px;
10
10
  --tn-sidebar-layout-width: var(--tn-sidebar-width);
11
11
  --vp-sidebar-width: var(--tn-sidebar-width);
12
+ --tn-sidebar-inset-x: 8px;
13
+ --tn-sidebar-inset-total: calc(var(--tn-sidebar-inset-x) * 2);
12
14
  }
13
15
 
14
- // 保留 VitePress 对侧边栏宽屏居中的 left/width/padding-left 计算。
16
+ // 语雀式:左目录贴齐视口左侧(不使用 1440px 居中壳偏移)
15
17
  .VPSidebar {
16
- padding-top: var(--vp-nav-height) !important;
17
- padding-bottom: 1rem !important;
18
+ padding-top: 0 !important;
19
+ padding-bottom: 0 !important;
20
+ padding-left: var(--tn-sidebar-inset-x) !important;
21
+ padding-right: var(--tn-sidebar-inset-x) !important;
22
+ box-sizing: border-box;
23
+ overflow-x: hidden;
24
+ overflow-y: auto;
25
+ }
26
+
27
+ /* 移动端抽屉:侧栏贴顶拉满视口,背景连续覆盖,避免导航栏下方留白 */
28
+ @media (max-width: 959px) {
29
+ .VPSidebar {
30
+ top: 0 !important;
31
+ bottom: 0 !important;
32
+ height: 100vh !important;
33
+ height: 100dvh !important;
34
+ /* 内容从顶栏下方开始,顶栏区域仍由侧栏背景填充 */
35
+ padding-top: var(--vp-nav-height) !important;
36
+ }
37
+
38
+ .VPSidebar .curtain {
39
+ display: none;
40
+ }
41
+ }
42
+
43
+ @media (min-width: 960px) {
44
+ .VPSidebar {
45
+ top: var(--vp-nav-height) !important;
46
+ height: calc(100vh - var(--vp-nav-height)) !important;
47
+ left: 0 !important;
48
+ width: var(--vp-sidebar-width) !important;
49
+ }
50
+ }
51
+
52
+ #VPSidebarNav {
53
+ width: 100%;
54
+ min-width: 0;
55
+ overflow: visible;
56
+ }
57
+
58
+ #VPSidebarNav .sidebar-toggle-wrapper,
59
+ #VPSidebarNav .custom-sidebar-wrapper {
60
+ width: 100%;
61
+ min-width: 0;
18
62
  }
19
63
 
20
64
  /* ===================================== */
@@ -30,10 +74,6 @@
30
74
  transition: transform 0.25s ease, opacity 0.25s ease;
31
75
  }
32
76
 
33
- .hide-sidebar .VPNavBar.has-sidebar .VPNavBarTitle {
34
- display: none !important;
35
- }
36
-
37
77
  .hide-sidebar .VPNavBar.has-sidebar {
38
78
  background-color: var(--vp-nav-bg-color) !important;
39
79
  }
@@ -42,10 +82,20 @@
42
82
  padding-left: 0 !important;
43
83
  }
44
84
 
45
- /* 主体内容往左补齐,与导航栏标题左对齐 */
85
+ /* 主体内容左对齐视口(隐藏左栏时不保留 1440 居中空白) */
46
86
  .hide-sidebar .VPContent.has-sidebar {
47
87
  margin-left: 0 !important;
48
- padding-left: calc((100vw - var(--vp-layout-max-width)) / 2) !important;
88
+ padding-left: 0 !important;
89
+ }
90
+
91
+ @media (min-width: 960px) {
92
+ .hide-sidebar .VPNavBar.has-sidebar .VPNavBarTitle {
93
+ display: none !important;
94
+ }
95
+
96
+ .hide-sidebar .VPNavBar.has-sidebar .content {
97
+ padding-left: 0 !important;
98
+ }
49
99
  }
50
100
 
51
101
  /* #endregion */
@@ -64,7 +114,7 @@
64
114
 
65
115
  .content-fullscreen .VPContent {
66
116
  margin: 0 !important;
67
- padding: 0 2rem !important;
117
+ padding: 0 !important;
68
118
  max-width: 100% !important;
69
119
  }
70
120