vitepress 0.22.3 → 1.0.0-draft.2

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 (208) hide show
  1. package/client.d.ts +2 -3
  2. package/dist/client/app/components/ClientOnly.js +1 -1
  3. package/dist/client/app/index.js +5 -7
  4. package/dist/client/index.d.ts +5 -0
  5. package/dist/client/shared.js +1 -0
  6. package/dist/client/theme-default/Layout.vue +39 -180
  7. package/dist/client/theme-default/NotFound.vue +9 -8
  8. package/dist/client/theme-default/components/VPAlgoliaSearchBox.vue +127 -0
  9. package/dist/client/theme-default/components/VPBackdrop.vue +39 -0
  10. package/dist/client/theme-default/components/VPBox.vue +59 -0
  11. package/dist/client/theme-default/components/VPButton.vue +123 -0
  12. package/dist/client/theme-default/components/VPContent.vue +74 -0
  13. package/dist/client/theme-default/components/VPDoc.vue +173 -0
  14. package/dist/client/theme-default/components/VPDocFooter.vue +141 -0
  15. package/dist/client/theme-default/components/VPDocOutline.vue +108 -0
  16. package/dist/client/theme-default/components/VPFlyout.vue +149 -0
  17. package/dist/client/theme-default/components/VPFooter.vue +53 -0
  18. package/dist/client/theme-default/components/VPHero.vue +144 -0
  19. package/dist/client/theme-default/components/VPHome.vue +33 -0
  20. package/dist/client/theme-default/components/VPHomeFeatures.vue +96 -0
  21. package/dist/client/theme-default/components/VPHomeHero.vue +17 -0
  22. package/dist/client/theme-default/components/VPHomeSponsors.vue +97 -0
  23. package/dist/client/theme-default/components/VPLink.vue +37 -0
  24. package/dist/client/theme-default/components/VPLocalNav.vue +106 -0
  25. package/dist/client/theme-default/components/VPMenu.vue +79 -0
  26. package/dist/client/theme-default/components/VPMenuGroup.vue +35 -0
  27. package/dist/client/theme-default/components/VPMenuLink.vue +30 -0
  28. package/dist/client/theme-default/components/VPNav.vue +33 -0
  29. package/dist/client/theme-default/components/VPNavBar.vue +110 -0
  30. package/dist/client/theme-default/components/VPNavBarAppearance.vue +25 -0
  31. package/dist/client/theme-default/components/VPNavBarExtra.vue +107 -0
  32. package/dist/client/theme-default/components/VPNavBarHamburger.vue +79 -0
  33. package/dist/client/theme-default/components/VPNavBarMenu.vue +29 -0
  34. package/dist/client/theme-default/components/VPNavBarMenuGroup.vue +18 -0
  35. package/dist/client/theme-default/components/VPNavBarMenuLink.vue +56 -0
  36. package/dist/client/theme-default/components/VPNavBarSearch.vue +269 -0
  37. package/dist/client/theme-default/components/VPNavBarSocialLinks.vue +27 -0
  38. package/dist/client/theme-default/components/VPNavBarTitle.vue +57 -0
  39. package/dist/client/theme-default/components/VPNavBarTranslations.vue +74 -0
  40. package/dist/client/theme-default/components/VPNavScreen.vue +100 -0
  41. package/dist/client/theme-default/components/VPNavScreenAppearance.vue +33 -0
  42. package/dist/client/theme-default/components/VPNavScreenMenu.vue +24 -0
  43. package/dist/client/theme-default/components/VPNavScreenMenuGroup.vue +118 -0
  44. package/dist/client/theme-default/components/VPNavScreenMenuGroupLink.vue +33 -0
  45. package/dist/client/theme-default/components/VPNavScreenMenuGroupSection.vue +35 -0
  46. package/dist/client/theme-default/components/VPNavScreenMenuLink.vue +34 -0
  47. package/dist/client/theme-default/components/VPNavScreenSocialLinks.vue +14 -0
  48. package/dist/client/theme-default/components/VPNavScreenTranslations.vue +73 -0
  49. package/dist/client/theme-default/components/VPPage.vue +5 -0
  50. package/dist/client/theme-default/components/VPSidebar.vue +118 -0
  51. package/dist/client/theme-default/components/VPSidebarGroup.vue +44 -0
  52. package/dist/client/theme-default/components/VPSidebarLink.vue +57 -0
  53. package/dist/client/theme-default/components/VPSkipLink.vue +72 -0
  54. package/dist/client/theme-default/components/VPSocialLink.vue +63 -0
  55. package/dist/client/theme-default/components/VPSocialLinks.vue +27 -0
  56. package/dist/client/theme-default/components/VPSponsors.vue +77 -0
  57. package/dist/client/theme-default/components/VPSponsorsGrid.vue +32 -0
  58. package/dist/client/theme-default/components/VPSwitch.vue +66 -0
  59. package/dist/client/theme-default/components/VPSwitchAppearance.vue +74 -0
  60. package/dist/client/theme-default/components/icons/VPIconAlignJustify.vue +8 -0
  61. package/dist/client/theme-default/components/icons/VPIconAlignLeft.vue +8 -0
  62. package/dist/client/theme-default/components/icons/VPIconAlignRight.vue +8 -0
  63. package/dist/client/theme-default/components/icons/{ArrowLeft.vue → VPIconArrowLeft.vue} +0 -0
  64. package/dist/client/theme-default/components/icons/{ArrowRight.vue → VPIconArrowRight.vue} +0 -0
  65. package/dist/client/theme-default/components/icons/VPIconChevronDown.vue +5 -0
  66. package/dist/client/theme-default/components/icons/VPIconChevronLeft.vue +5 -0
  67. package/dist/client/theme-default/components/icons/VPIconChevronRight.vue +5 -0
  68. package/dist/client/theme-default/components/icons/VPIconChevronUp.vue +5 -0
  69. package/dist/client/theme-default/components/icons/VPIconDiscord.vue +5 -0
  70. package/dist/client/theme-default/components/icons/VPIconEdit.vue +6 -0
  71. package/dist/client/theme-default/components/icons/VPIconExternalLink.vue +13 -0
  72. package/dist/client/theme-default/components/icons/VPIconFacebook.vue +5 -0
  73. package/dist/client/theme-default/components/icons/VPIconGitHub.vue +5 -0
  74. package/dist/client/theme-default/components/icons/VPIconHeart.vue +5 -0
  75. package/dist/client/theme-default/components/icons/VPIconInstagram.vue +5 -0
  76. package/dist/client/theme-default/components/icons/VPIconLanguages.vue +9 -0
  77. package/dist/client/theme-default/components/icons/VPIconLinkedIn.vue +5 -0
  78. package/dist/client/theme-default/components/icons/VPIconMoon.vue +5 -0
  79. package/dist/client/theme-default/components/icons/VPIconMoreHorizontal.vue +7 -0
  80. package/dist/client/theme-default/components/icons/VPIconPlus.vue +5 -0
  81. package/dist/client/theme-default/components/icons/VPIconSlack.vue +5 -0
  82. package/dist/client/theme-default/components/icons/VPIconSun.vue +13 -0
  83. package/dist/client/theme-default/components/icons/VPIconTwitter.vue +5 -0
  84. package/dist/client/theme-default/components/icons/VPIconYouTube.vue +5 -0
  85. package/dist/client/theme-default/composables/edit-link.js +22 -0
  86. package/dist/client/theme-default/composables/flyout.js +40 -0
  87. package/dist/client/theme-default/composables/nav.js +27 -1
  88. package/dist/client/theme-default/composables/outline.js +112 -0
  89. package/dist/client/theme-default/composables/prev-next.js +18 -0
  90. package/dist/client/theme-default/composables/sidebar.js +57 -0
  91. package/dist/client/theme-default/composables/sponsor-grid.js +92 -0
  92. package/dist/client/theme-default/composables/sponsor.js +87 -0
  93. package/dist/client/theme-default/fonts/inter-cyrillic-ext.woff2 +0 -0
  94. package/dist/client/theme-default/fonts/inter-cyrillic.woff2 +0 -0
  95. package/dist/client/theme-default/fonts/inter-greek-ext.woff2 +0 -0
  96. package/dist/client/theme-default/fonts/inter-greek.woff2 +0 -0
  97. package/dist/client/theme-default/fonts/inter-latin-ext.woff2 +0 -0
  98. package/dist/client/theme-default/fonts/inter-latin.woff2 +0 -0
  99. package/dist/client/theme-default/fonts/inter-vietnamese.woff2 +0 -0
  100. package/dist/client/theme-default/index.js +8 -4
  101. package/dist/client/theme-default/styles/base.css +203 -0
  102. package/dist/client/theme-default/styles/fonts.css +67 -0
  103. package/dist/client/theme-default/styles/utils.css +9 -0
  104. package/dist/client/theme-default/styles/vars.css +291 -66
  105. package/dist/client/theme-default/styles/vp-doc.css +425 -0
  106. package/dist/client/theme-default/styles/vp-sponsor.css +86 -0
  107. package/dist/client/theme-default/support/sidebar.js +29 -0
  108. package/dist/client/theme-default/support/utils.js +62 -0
  109. package/dist/node/alias.js +60 -0
  110. package/dist/node/alias.js.map +1 -0
  111. package/dist/node/build/build.js +57 -0
  112. package/dist/node/build/build.js.map +1 -0
  113. package/dist/node/build/buildMPAClient.js +44 -0
  114. package/dist/node/build/buildMPAClient.js.map +1 -0
  115. package/dist/node/build/bundle.js +163 -0
  116. package/dist/node/build/bundle.js.map +1 -0
  117. package/dist/node/build/render.js +185 -0
  118. package/dist/node/build/render.js.map +1 -0
  119. package/dist/node/cli.js +37 -294
  120. package/dist/node/cli.js.map +1 -0
  121. package/dist/node/config.js +176 -0
  122. package/dist/node/config.js.map +1 -0
  123. package/dist/node/index.d.ts +122 -79
  124. package/dist/node/index.js +22 -37
  125. package/dist/node/index.js.map +1 -0
  126. package/dist/node/markdown/markdown.js +75 -0
  127. package/dist/node/markdown/markdown.js.map +1 -0
  128. package/dist/node/markdown/plugins/component.js +86 -0
  129. package/dist/node/markdown/plugins/component.js.map +1 -0
  130. package/dist/node/markdown/plugins/containers.js +41 -0
  131. package/dist/node/markdown/plugins/containers.js.map +1 -0
  132. package/dist/node/markdown/plugins/headings.js +25 -0
  133. package/dist/node/markdown/plugins/headings.js.map +1 -0
  134. package/dist/node/markdown/plugins/highlight.js +53 -0
  135. package/dist/node/markdown/plugins/highlight.js.map +1 -0
  136. package/dist/node/markdown/plugins/highlightLines.js +48 -0
  137. package/dist/node/markdown/plugins/highlightLines.js.map +1 -0
  138. package/dist/node/markdown/plugins/hoist.js +22 -0
  139. package/dist/node/markdown/plugins/hoist.js.map +1 -0
  140. package/dist/node/markdown/plugins/image.js +17 -0
  141. package/dist/node/markdown/plugins/image.js.map +1 -0
  142. package/dist/node/markdown/plugins/lineNumbers.js +23 -0
  143. package/dist/node/markdown/plugins/lineNumbers.js.map +1 -0
  144. package/dist/node/markdown/plugins/link.js +85 -0
  145. package/dist/node/markdown/plugins/link.js.map +1 -0
  146. package/dist/node/markdown/plugins/preWrapper.js +22 -0
  147. package/dist/node/markdown/plugins/preWrapper.js.map +1 -0
  148. package/dist/node/markdown/plugins/slugify.js +26 -0
  149. package/dist/node/markdown/plugins/slugify.js.map +1 -0
  150. package/dist/node/markdown/plugins/snippet.js +146 -0
  151. package/dist/node/markdown/plugins/snippet.js.map +1 -0
  152. package/dist/node/markdownToVue.js +166 -0
  153. package/dist/node/markdownToVue.js.map +1 -0
  154. package/dist/node/plugin.js +227 -0
  155. package/dist/node/plugin.js.map +1 -0
  156. package/dist/node/serve/serve.js +59 -0
  157. package/dist/node/serve/serve.js.map +1 -0
  158. package/dist/node/{serve-777539c0.js → serve-b5dc02b2.js} +27 -2
  159. package/dist/node/server.js +18 -0
  160. package/dist/node/server.js.map +1 -0
  161. package/dist/node/shared.js +72 -0
  162. package/dist/node/shared.js.map +1 -0
  163. package/dist/node/staticDataPlugin.js +99 -0
  164. package/dist/node/staticDataPlugin.js.map +1 -0
  165. package/dist/node/utils/getGitTimestamp.js +17 -0
  166. package/dist/node/utils/getGitTimestamp.js.map +1 -0
  167. package/dist/node/utils/parseHeader.js +57 -0
  168. package/dist/node/utils/parseHeader.js.map +1 -0
  169. package/dist/node/utils/slash.js +8 -0
  170. package/dist/node/utils/slash.js.map +1 -0
  171. package/package.json +31 -25
  172. package/types/default-theme.d.ts +115 -78
  173. package/types/shared.d.ts +11 -6
  174. package/dist/client/theme-default/components/AlgoliaSearchBox.vue +0 -188
  175. package/dist/client/theme-default/components/BuySellAds.vue +0 -152
  176. package/dist/client/theme-default/components/CarbonAds.vue +0 -99
  177. package/dist/client/theme-default/components/EditLink.vue +0 -38
  178. package/dist/client/theme-default/components/Home.vue +0 -31
  179. package/dist/client/theme-default/components/HomeFeatures.vue +0 -143
  180. package/dist/client/theme-default/components/HomeFooter.vue +0 -50
  181. package/dist/client/theme-default/components/HomeHero.vue +0 -161
  182. package/dist/client/theme-default/components/LastUpdated.vue +0 -60
  183. package/dist/client/theme-default/components/NavBar.vue +0 -60
  184. package/dist/client/theme-default/components/NavBarTitle.vue +0 -41
  185. package/dist/client/theme-default/components/NavDropdownLink.vue +0 -135
  186. package/dist/client/theme-default/components/NavDropdownLinkItem.vue +0 -76
  187. package/dist/client/theme-default/components/NavLink.vue +0 -61
  188. package/dist/client/theme-default/components/NavLinks.vue +0 -52
  189. package/dist/client/theme-default/components/NextAndPrevLinks.vue +0 -88
  190. package/dist/client/theme-default/components/Page.vue +0 -53
  191. package/dist/client/theme-default/components/PageFooter.vue +0 -44
  192. package/dist/client/theme-default/components/SideBar.vue +0 -60
  193. package/dist/client/theme-default/components/SideBarLink.js +0 -68
  194. package/dist/client/theme-default/components/SideBarLinks.vue +0 -12
  195. package/dist/client/theme-default/components/ToggleSideBarButton.vue +0 -46
  196. package/dist/client/theme-default/components/icons/OutboundLink.vue +0 -31
  197. package/dist/client/theme-default/composables/activeSidebarLink.js +0 -99
  198. package/dist/client/theme-default/composables/editLink.js +0 -49
  199. package/dist/client/theme-default/composables/navLink.js +0 -42
  200. package/dist/client/theme-default/composables/nextAndPrevLinks.js +0 -37
  201. package/dist/client/theme-default/composables/repo.js +0 -38
  202. package/dist/client/theme-default/composables/sideBar.js +0 -57
  203. package/dist/client/theme-default/styles/code.css +0 -299
  204. package/dist/client/theme-default/styles/custom-blocks.css +0 -76
  205. package/dist/client/theme-default/styles/layout.css +0 -236
  206. package/dist/client/theme-default/styles/sidebar-links.css +0 -107
  207. package/dist/client/theme-default/support/sideBar.js +0 -46
  208. package/dist/client/theme-default/utils.js +0 -63
package/dist/node/cli.js CHANGED
@@ -1,301 +1,44 @@
1
- 'use strict';
2
-
3
- var serve = require('./serve-777539c0.js');
4
- require('fs');
5
- require('path');
6
- require('url');
7
- require('vite');
8
- require('readline');
9
- require('assert');
10
- require('events');
11
- require('stream');
12
- require('util');
13
- require('buffer');
14
- require('punycode');
15
- require('prismjs');
16
- require('child_process');
17
- require('querystring');
18
- require('tty');
19
- require('net');
20
- require('zlib');
21
- require('constants');
22
- require('os');
23
- require('http');
24
-
25
- var minimist = function (args, opts) {
26
- if (!opts) opts = {};
27
-
28
- var flags = { bools : {}, strings : {}, unknownFn: null };
29
-
30
- if (typeof opts['unknown'] === 'function') {
31
- flags.unknownFn = opts['unknown'];
32
- }
33
-
34
- if (typeof opts['boolean'] === 'boolean' && opts['boolean']) {
35
- flags.allBools = true;
36
- } else {
37
- [].concat(opts['boolean']).filter(Boolean).forEach(function (key) {
38
- flags.bools[key] = true;
39
- });
40
- }
41
-
42
- var aliases = {};
43
- Object.keys(opts.alias || {}).forEach(function (key) {
44
- aliases[key] = [].concat(opts.alias[key]);
45
- aliases[key].forEach(function (x) {
46
- aliases[x] = [key].concat(aliases[key].filter(function (y) {
47
- return x !== y;
48
- }));
49
- });
50
- });
51
-
52
- [].concat(opts.string).filter(Boolean).forEach(function (key) {
53
- flags.strings[key] = true;
54
- if (aliases[key]) {
55
- flags.strings[aliases[key]] = true;
56
- }
57
- });
58
-
59
- var defaults = opts['default'] || {};
60
-
61
- var argv = { _ : [] };
62
- Object.keys(flags.bools).forEach(function (key) {
63
- setArg(key, defaults[key] === undefined ? false : defaults[key]);
64
- });
65
-
66
- var notFlags = [];
67
-
68
- if (args.indexOf('--') !== -1) {
69
- notFlags = args.slice(args.indexOf('--')+1);
70
- args = args.slice(0, args.indexOf('--'));
71
- }
72
-
73
- function argDefined(key, arg) {
74
- return (flags.allBools && /^--[^=]+$/.test(arg)) ||
75
- flags.strings[key] || flags.bools[key] || aliases[key];
76
- }
77
-
78
- function setArg (key, val, arg) {
79
- if (arg && flags.unknownFn && !argDefined(key, arg)) {
80
- if (flags.unknownFn(arg) === false) return;
81
- }
82
-
83
- var value = !flags.strings[key] && isNumber(val)
84
- ? Number(val) : val
85
- ;
86
- setKey(argv, key.split('.'), value);
87
-
88
- (aliases[key] || []).forEach(function (x) {
89
- setKey(argv, x.split('.'), value);
90
- });
91
- }
92
-
93
- function setKey (obj, keys, value) {
94
- var o = obj;
95
- for (var i = 0; i < keys.length-1; i++) {
96
- var key = keys[i];
97
- if (key === '__proto__') return;
98
- if (o[key] === undefined) o[key] = {};
99
- if (o[key] === Object.prototype || o[key] === Number.prototype
100
- || o[key] === String.prototype) o[key] = {};
101
- if (o[key] === Array.prototype) o[key] = [];
102
- o = o[key];
103
- }
104
-
105
- var key = keys[keys.length - 1];
106
- if (key === '__proto__') return;
107
- if (o === Object.prototype || o === Number.prototype
108
- || o === String.prototype) o = {};
109
- if (o === Array.prototype) o = [];
110
- if (o[key] === undefined || flags.bools[key] || typeof o[key] === 'boolean') {
111
- o[key] = value;
112
- }
113
- else if (Array.isArray(o[key])) {
114
- o[key].push(value);
115
- }
116
- else {
117
- o[key] = [ o[key], value ];
118
- }
119
- }
120
-
121
- function aliasIsBoolean(key) {
122
- return aliases[key].some(function (x) {
123
- return flags.bools[x];
124
- });
125
- }
126
-
127
- for (var i = 0; i < args.length; i++) {
128
- var arg = args[i];
129
-
130
- if (/^--.+=/.test(arg)) {
131
- // Using [\s\S] instead of . because js doesn't support the
132
- // 'dotall' regex modifier. See:
133
- // http://stackoverflow.com/a/1068308/13216
134
- var m = arg.match(/^--([^=]+)=([\s\S]*)$/);
135
- var key = m[1];
136
- var value = m[2];
137
- if (flags.bools[key]) {
138
- value = value !== 'false';
139
- }
140
- setArg(key, value, arg);
141
- }
142
- else if (/^--no-.+/.test(arg)) {
143
- var key = arg.match(/^--no-(.+)/)[1];
144
- setArg(key, false, arg);
145
- }
146
- else if (/^--.+/.test(arg)) {
147
- var key = arg.match(/^--(.+)/)[1];
148
- var next = args[i + 1];
149
- if (next !== undefined && !/^-/.test(next)
150
- && !flags.bools[key]
151
- && !flags.allBools
152
- && (aliases[key] ? !aliasIsBoolean(key) : true)) {
153
- setArg(key, next, arg);
154
- i++;
155
- }
156
- else if (/^(true|false)$/.test(next)) {
157
- setArg(key, next === 'true', arg);
158
- i++;
159
- }
160
- else {
161
- setArg(key, flags.strings[key] ? '' : true, arg);
162
- }
163
- }
164
- else if (/^-[^-]+/.test(arg)) {
165
- var letters = arg.slice(1,-1).split('');
166
-
167
- var broken = false;
168
- for (var j = 0; j < letters.length; j++) {
169
- var next = arg.slice(j+2);
170
-
171
- if (next === '-') {
172
- setArg(letters[j], next, arg);
173
- continue;
174
- }
175
-
176
- if (/[A-Za-z]/.test(letters[j]) && /=/.test(next)) {
177
- setArg(letters[j], next.split('=')[1], arg);
178
- broken = true;
179
- break;
180
- }
181
-
182
- if (/[A-Za-z]/.test(letters[j])
183
- && /-?\d+(\.\d*)?(e-?\d+)?$/.test(next)) {
184
- setArg(letters[j], next, arg);
185
- broken = true;
186
- break;
187
- }
188
-
189
- if (letters[j+1] && letters[j+1].match(/\W/)) {
190
- setArg(letters[j], arg.slice(j+2), arg);
191
- broken = true;
192
- break;
193
- }
194
- else {
195
- setArg(letters[j], flags.strings[letters[j]] ? '' : true, arg);
196
- }
197
- }
198
-
199
- var key = arg.slice(-1)[0];
200
- if (!broken && key !== '-') {
201
- if (args[i+1] && !/^(-|--)[^-]/.test(args[i+1])
202
- && !flags.bools[key]
203
- && (aliases[key] ? !aliasIsBoolean(key) : true)) {
204
- setArg(key, args[i+1], arg);
205
- i++;
206
- }
207
- else if (args[i+1] && /^(true|false)$/.test(args[i+1])) {
208
- setArg(key, args[i+1] === 'true', arg);
209
- i++;
210
- }
211
- else {
212
- setArg(key, flags.strings[key] ? '' : true, arg);
213
- }
214
- }
215
- }
216
- else {
217
- if (!flags.unknownFn || flags.unknownFn(arg) !== false) {
218
- argv._.push(
219
- flags.strings['_'] || !isNumber(arg) ? arg : Number(arg)
220
- );
221
- }
222
- if (opts.stopEarly) {
223
- argv._.push.apply(argv._, args.slice(i + 1));
224
- break;
225
- }
226
- }
227
- }
228
-
229
- Object.keys(defaults).forEach(function (key) {
230
- if (!hasKey(argv, key.split('.'))) {
231
- setKey(argv, key.split('.'), defaults[key]);
232
-
233
- (aliases[key] || []).forEach(function (x) {
234
- setKey(argv, x.split('.'), defaults[key]);
235
- });
236
- }
237
- });
238
-
239
- if (opts['--']) {
240
- argv['--'] = new Array();
241
- notFlags.forEach(function(key) {
242
- argv['--'].push(key);
243
- });
244
- }
245
- else {
246
- notFlags.forEach(function(key) {
247
- argv._.push(key);
248
- });
249
- }
250
-
251
- return argv;
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
252
4
  };
253
-
254
- function hasKey (obj, keys) {
255
- var o = obj;
256
- keys.slice(0,-1).forEach(function (key) {
257
- o = (o[key] || {});
258
- });
259
-
260
- var key = keys[keys.length - 1];
261
- return key in o;
262
- }
263
-
264
- function isNumber (x) {
265
- if (typeof x === 'number') return true;
266
- if (/^0x[0-9a-f]+$/i.test(x)) return true;
267
- return /^[-+]?(?:\d+(?:\.\d*)?|\.\d+)(e[-+]?\d+)?$/.test(x);
268
- }
269
-
270
- const argv = minimist(process.argv.slice(2));
271
- console.log(serve.source.cyan(`vitepress v${require("../../package.json").version}`));
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const chalk_1 = __importDefault(require("chalk"));
7
+ const minimist_1 = __importDefault(require("minimist"));
8
+ const _1 = require(".");
9
+ const argv = (0, minimist_1.default)(process.argv.slice(2));
10
+ console.log(chalk_1.default.cyan(`vitepress v${require('../../package.json').version}`));
272
11
  const command = argv._[0];
273
12
  const root = argv._[command ? 1 : 0];
274
13
  if (root) {
275
- argv.root = root;
14
+ argv.root = root;
276
15
  }
277
- if (!command || command === "dev") {
278
- serve.createServer(root, argv).then((server) => server.listen()).then((server) => {
279
- console.log();
280
- server.printUrls();
281
- }).catch((err) => {
282
- console.error(serve.source.red(`failed to start server. error:
283
- `), err);
284
- process.exit(1);
285
- });
286
- } else if (command === "build") {
287
- serve.build(root, argv).catch((err) => {
288
- console.error(serve.source.red(`build error:
289
- `), err);
290
- process.exit(1);
291
- });
292
- } else if (command === "serve") {
293
- serve.serve(argv).catch((err) => {
294
- console.error(serve.source.red(`failed to start server. error:
295
- `), err);
16
+ if (!command || command === 'dev') {
17
+ (0, _1.createServer)(root, argv)
18
+ .then((server) => server.listen())
19
+ .then((server) => {
20
+ console.log();
21
+ server.printUrls();
22
+ })
23
+ .catch((err) => {
24
+ console.error(chalk_1.default.red(`failed to start server. error:\n`), err);
25
+ process.exit(1);
26
+ });
27
+ }
28
+ else if (command === 'build') {
29
+ (0, _1.build)(root, argv).catch((err) => {
30
+ console.error(chalk_1.default.red(`build error:\n`), err);
31
+ process.exit(1);
32
+ });
33
+ }
34
+ else if (command === 'serve') {
35
+ (0, _1.serve)(argv).catch((err) => {
36
+ console.error(chalk_1.default.red(`failed to start server. error:\n`), err);
37
+ process.exit(1);
38
+ });
39
+ }
40
+ else {
41
+ console.log(chalk_1.default.red(`unknown command "${command}".`));
296
42
  process.exit(1);
297
- });
298
- } else {
299
- console.log(serve.source.red(`unknown command "${command}".`));
300
- process.exit(1);
301
43
  }
44
+ //# sourceMappingURL=cli.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cli.js","sourceRoot":"","sources":["../../src/node/cli.ts"],"names":[],"mappings":";;;;;AAAA,kDAAyB;AACzB,wDAA+B;AAC/B,wBAA8C;AAE9C,MAAM,IAAI,GAAQ,IAAA,kBAAQ,EAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;AAEjD,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,cAAc,OAAO,CAAC,oBAAoB,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,CAAA;AAE9E,MAAM,OAAO,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;AACzB,MAAM,IAAI,GAAG,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;AACpC,IAAI,IAAI,EAAE;IACR,IAAI,CAAC,IAAI,GAAG,IAAI,CAAA;CACjB;AAED,IAAI,CAAC,OAAO,IAAI,OAAO,KAAK,KAAK,EAAE;IACjC,IAAA,eAAY,EAAC,IAAI,EAAE,IAAI,CAAC;SACrB,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;SACjC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE;QACf,OAAO,CAAC,GAAG,EAAE,CAAA;QACb,MAAM,CAAC,SAAS,EAAE,CAAA;IACpB,CAAC,CAAC;SACD,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;QACb,OAAO,CAAC,KAAK,CAAC,eAAK,CAAC,GAAG,CAAC,kCAAkC,CAAC,EAAE,GAAG,CAAC,CAAA;QACjE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IACjB,CAAC,CAAC,CAAA;CACL;KAAM,IAAI,OAAO,KAAK,OAAO,EAAE;IAC9B,IAAA,QAAK,EAAC,IAAI,EAAE,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;QAC9B,OAAO,CAAC,KAAK,CAAC,eAAK,CAAC,GAAG,CAAC,gBAAgB,CAAC,EAAE,GAAG,CAAC,CAAA;QAC/C,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IACjB,CAAC,CAAC,CAAA;CACH;KAAM,IAAI,OAAO,KAAK,OAAO,EAAE;IAC9B,IAAA,QAAK,EAAC,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;QACxB,OAAO,CAAC,KAAK,CAAC,eAAK,CAAC,GAAG,CAAC,kCAAkC,CAAC,EAAE,GAAG,CAAC,CAAA;QACjE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IACjB,CAAC,CAAC,CAAA;CACH;KAAM;IACL,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,GAAG,CAAC,oBAAoB,OAAO,IAAI,CAAC,CAAC,CAAA;IACvD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;CAChB"}
@@ -0,0 +1,176 @@
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.resolveSiteData = exports.resolveConfig = exports.defineConfigWithTheme = exports.defineConfig = exports.resolveSiteDataByRoute = void 0;
7
+ const path_1 = __importDefault(require("path"));
8
+ const fs_extra_1 = __importDefault(require("fs-extra"));
9
+ const chalk_1 = __importDefault(require("chalk"));
10
+ const globby_1 = __importDefault(require("globby"));
11
+ const vite_1 = require("vite");
12
+ const shared_1 = require("./shared");
13
+ const alias_1 = require("./alias");
14
+ const debug_1 = __importDefault(require("debug"));
15
+ var shared_2 = require("./shared");
16
+ Object.defineProperty(exports, "resolveSiteDataByRoute", { enumerable: true, get: function () { return shared_2.resolveSiteDataByRoute; } });
17
+ const debug = (0, debug_1.default)('vitepress:config');
18
+ const resolve = (root, file) => (0, vite_1.normalizePath)(path_1.default.resolve(root, `.vitepress`, file));
19
+ /**
20
+ * Type config helper
21
+ */
22
+ function defineConfig(config) {
23
+ return config;
24
+ }
25
+ exports.defineConfig = defineConfig;
26
+ /**
27
+ * Type config helper for custom theme config
28
+ */
29
+ function defineConfigWithTheme(config) {
30
+ return config;
31
+ }
32
+ exports.defineConfigWithTheme = defineConfigWithTheme;
33
+ async function resolveConfig(root = process.cwd(), command = 'serve', mode = 'development') {
34
+ const [userConfig, configPath] = await resolveUserConfig(root, command, mode);
35
+ const site = await resolveSiteData(root, userConfig);
36
+ const srcDir = path_1.default.resolve(root, userConfig.srcDir || '.');
37
+ const outDir = userConfig.outDir
38
+ ? path_1.default.resolve(root, userConfig.outDir)
39
+ : resolve(root, 'dist');
40
+ // resolve theme path
41
+ const userThemeDir = resolve(root, 'theme');
42
+ const themeDir = (await fs_extra_1.default.pathExists(userThemeDir))
43
+ ? userThemeDir
44
+ : alias_1.DEFAULT_THEME_PATH;
45
+ // Important: globby/fast-glob doesn't guarantee order of the returned files.
46
+ // We must sort the pages so the input list to rollup is stable across
47
+ // builds - otherwise different input order could result in different exports
48
+ // order in shared chunks which in turns invalidates the hash of every chunk!
49
+ // JavaScript built-in sort() is mandated to be stable as of ES2019 and
50
+ // supported in Node 12+, which is required by Vite.
51
+ const pages = (await (0, globby_1.default)(['**.md'], {
52
+ cwd: srcDir,
53
+ ignore: ['**/node_modules', ...(userConfig.srcExclude || [])]
54
+ })).sort();
55
+ const config = {
56
+ root,
57
+ srcDir,
58
+ site,
59
+ themeDir,
60
+ pages,
61
+ configPath,
62
+ outDir,
63
+ tempDir: resolve(root, '.temp'),
64
+ markdown: userConfig.markdown,
65
+ lastUpdated: userConfig.lastUpdated,
66
+ alias: (0, alias_1.resolveAliases)(root, themeDir),
67
+ vue: userConfig.vue,
68
+ vite: userConfig.vite,
69
+ shouldPreload: userConfig.shouldPreload,
70
+ mpa: !!userConfig.mpa
71
+ };
72
+ return config;
73
+ }
74
+ exports.resolveConfig = resolveConfig;
75
+ const supportedConfigExtensions = ['js', 'ts', 'mjs', 'mts'];
76
+ async function resolveUserConfig(root, command, mode) {
77
+ var _a;
78
+ // load user config
79
+ let configPath;
80
+ for (const ext of supportedConfigExtensions) {
81
+ const p = resolve(root, `config.${ext}`);
82
+ if (await fs_extra_1.default.pathExists(p)) {
83
+ configPath = p;
84
+ break;
85
+ }
86
+ }
87
+ const userConfig = configPath
88
+ ? (_a = (await (0, vite_1.loadConfigFromFile)({
89
+ command,
90
+ mode
91
+ }, configPath, root))) === null || _a === void 0 ? void 0 : _a.config
92
+ : {};
93
+ if (configPath) {
94
+ debug(`loaded config at ${chalk_1.default.yellow(configPath)}`);
95
+ }
96
+ else {
97
+ debug(`no config file found.`);
98
+ }
99
+ return [await resolveConfigExtends(userConfig), configPath];
100
+ }
101
+ async function resolveConfigExtends(config) {
102
+ const resolved = await (typeof config === 'function' ? config() : config);
103
+ if (resolved.extends) {
104
+ const base = await resolveConfigExtends(resolved.extends);
105
+ return mergeConfig(base, resolved);
106
+ }
107
+ return resolved;
108
+ }
109
+ function mergeConfig(a, b, isRoot = true) {
110
+ const merged = { ...a };
111
+ for (const key in b) {
112
+ const value = b[key];
113
+ if (value == null) {
114
+ continue;
115
+ }
116
+ const existing = merged[key];
117
+ if (Array.isArray(existing) && Array.isArray(value)) {
118
+ merged[key] = [...existing, ...value];
119
+ continue;
120
+ }
121
+ if (isObject(existing) && isObject(value)) {
122
+ if (isRoot && key === 'vite') {
123
+ merged[key] = (0, vite_1.mergeConfig)(existing, value);
124
+ }
125
+ else {
126
+ merged[key] = mergeConfig(existing, value, false);
127
+ }
128
+ continue;
129
+ }
130
+ merged[key] = value;
131
+ }
132
+ return merged;
133
+ }
134
+ function isObject(value) {
135
+ return Object.prototype.toString.call(value) === '[object Object]';
136
+ }
137
+ async function resolveSiteData(root, userConfig, command = 'serve', mode = 'development') {
138
+ var _a;
139
+ userConfig = userConfig || (await resolveUserConfig(root, command, mode))[0];
140
+ return {
141
+ lang: userConfig.lang || 'en-US',
142
+ title: userConfig.title || 'VitePress',
143
+ description: userConfig.description || 'A VitePress site',
144
+ base: userConfig.base ? userConfig.base.replace(/([^/])$/, '$1/') : '/',
145
+ head: resolveSiteDataHead(userConfig),
146
+ appearance: (_a = userConfig.appearance) !== null && _a !== void 0 ? _a : true,
147
+ themeConfig: userConfig.themeConfig || {},
148
+ locales: userConfig.locales || {},
149
+ langs: (0, shared_1.createLangDictionary)(userConfig),
150
+ scrollOffset: userConfig.scrollOffset || 90
151
+ };
152
+ }
153
+ exports.resolveSiteData = resolveSiteData;
154
+ function resolveSiteDataHead(userConfig) {
155
+ var _a, _b;
156
+ const head = (_a = userConfig === null || userConfig === void 0 ? void 0 : userConfig.head) !== null && _a !== void 0 ? _a : [];
157
+ // add inline script to apply dark mode, if user enables the feature.
158
+ // this is required to prevent "flush" on initial page load.
159
+ if ((_b = userConfig === null || userConfig === void 0 ? void 0 : userConfig.appearance) !== null && _b !== void 0 ? _b : true) {
160
+ head.push([
161
+ 'script',
162
+ {},
163
+ `
164
+ ;(() => {
165
+ const saved = localStorage.getItem('${shared_1.APPEARANCE_KEY}')
166
+ const prefereDark = window.matchMedia('(prefers-color-scheme: dark)').matches
167
+ if (!saved || saved === 'auto' ? prefereDark : saved === 'dark') {
168
+ document.documentElement.classList.add('dark')
169
+ }
170
+ })()
171
+ `
172
+ ]);
173
+ }
174
+ return head;
175
+ }
176
+ //# sourceMappingURL=config.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/node/config.ts"],"names":[],"mappings":"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"}