vitepress 1.0.0-draft.3 → 1.0.0-draft.6

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 +3 -1
  2. package/bin/vitepress.js +1 -1
  3. package/dist/client/app/composables/head.js +2 -2
  4. package/dist/client/app/data.js +2 -4
  5. package/dist/client/app/index.js +1 -5
  6. package/dist/client/index.d.ts +123 -134
  7. package/dist/client/index.js +1 -2
  8. package/dist/client/shared.js +21 -0
  9. package/dist/client/theme-default/Layout.vue +7 -0
  10. package/dist/client/theme-default/NotFound.vue +74 -14
  11. package/dist/client/theme-default/components/VPBox.vue +2 -6
  12. package/dist/client/theme-default/components/VPButton.vue +0 -1
  13. package/dist/client/theme-default/components/VPCarbonAds.vue +90 -0
  14. package/dist/client/theme-default/components/VPContent.vue +14 -10
  15. package/dist/client/theme-default/components/VPDoc.vue +73 -58
  16. package/dist/client/theme-default/components/VPDocAside.vue +34 -0
  17. package/dist/client/theme-default/components/VPDocAsideCarbonAds.vue +13 -0
  18. package/dist/client/theme-default/components/{VPDocOutline.vue → VPDocAsideOutline.vue} +14 -3
  19. package/dist/client/theme-default/components/VPDocAsideSponsors.vue +32 -0
  20. package/dist/client/theme-default/components/VPDocFooter.vue +1 -1
  21. package/dist/client/theme-default/components/VPFlyout.vue +2 -3
  22. package/dist/client/theme-default/components/VPFooter.vue +1 -1
  23. package/dist/client/theme-default/components/VPHero.vue +170 -29
  24. package/dist/client/theme-default/components/VPHomeFeatures.vue +1 -0
  25. package/dist/client/theme-default/components/VPHomeHero.vue +1 -0
  26. package/dist/client/theme-default/components/VPHomeSponsors.vue +3 -3
  27. package/dist/client/theme-default/components/VPLink.vue +2 -1
  28. package/dist/client/theme-default/components/VPLocalNav.vue +1 -1
  29. package/dist/client/theme-default/components/VPMenu.vue +9 -14
  30. package/dist/client/theme-default/components/VPMenuLink.vue +10 -4
  31. package/dist/client/theme-default/components/VPNav.vue +18 -1
  32. package/dist/client/theme-default/components/VPNavBar.vue +20 -8
  33. package/dist/client/theme-default/components/VPNavBarExtra.vue +20 -45
  34. package/dist/client/theme-default/components/VPNavBarMenuGroup.vue +2 -8
  35. package/dist/client/theme-default/components/VPNavBarMenuLink.vue +3 -3
  36. package/dist/client/theme-default/components/VPNavBarSearch.vue +6 -6
  37. package/dist/client/theme-default/components/VPNavBarTitle.vue +4 -2
  38. package/dist/client/theme-default/components/VPNavBarTranslations.vue +10 -39
  39. package/dist/client/theme-default/components/VPNavScreenMenuGroup.vue +1 -2
  40. package/dist/client/theme-default/components/VPNavScreenMenuGroupSection.vue +1 -1
  41. package/dist/client/theme-default/components/VPSidebar.vue +12 -6
  42. package/dist/client/theme-default/components/VPSidebarGroup.vue +80 -17
  43. package/dist/client/theme-default/components/VPSidebarLink.vue +2 -9
  44. package/dist/client/theme-default/components/VPSocialLink.vue +2 -2
  45. package/dist/client/theme-default/components/VPSocialLinks.vue +1 -1
  46. package/dist/client/theme-default/components/VPSponsors.vue +15 -40
  47. package/dist/client/theme-default/components/VPSponsorsGrid.vue +2 -2
  48. package/dist/client/theme-default/components/icons/VPIconMinus.vue +5 -0
  49. package/dist/client/theme-default/components/icons/VPIconMinusSquare.vue +6 -0
  50. package/dist/client/theme-default/components/icons/VPIconPlusSquare.vue +6 -0
  51. package/dist/client/theme-default/composables/aside.js +17 -0
  52. package/dist/client/theme-default/composables/copy-code.js +33 -0
  53. package/dist/client/theme-default/composables/outline.js +14 -4
  54. package/dist/client/theme-default/composables/sponsor-grid.js +8 -6
  55. package/dist/client/theme-default/index.js +4 -2
  56. package/dist/client/theme-default/styles/base.css +13 -1
  57. package/dist/client/theme-default/styles/components/custom-block.css +90 -0
  58. package/dist/client/theme-default/styles/{vp-doc.css → components/vp-doc.css} +152 -115
  59. package/dist/client/theme-default/styles/{vp-sponsor.css → components/vp-sponsor.css} +51 -7
  60. package/dist/client/theme-default/styles/vars.css +109 -58
  61. package/dist/node/cli.js +32 -31
  62. package/dist/node/index.d.ts +371 -361
  63. package/dist/node/index.js +22 -37
  64. package/dist/node/serve-9c85885c.js +64795 -0
  65. package/dist/node-cjs/cli.cjs +304 -0
  66. package/dist/node-cjs/index.cjs +38 -0
  67. package/dist/{node/serve-b5dc02b2.js → node-cjs/serve-a73b4871.cjs} +27405 -28602
  68. package/package.json +47 -40
  69. package/theme.d.ts +7 -2
  70. package/types/default-theme.d.ts +15 -2
  71. package/types/shared.d.ts +3 -0
package/package.json CHANGED
@@ -1,10 +1,19 @@
1
1
  {
2
2
  "name": "vitepress",
3
- "version": "1.0.0-draft.3",
4
- "packageManager": "pnpm@7.0.1",
3
+ "version": "1.0.0-draft.6",
5
4
  "description": "Vite & Vue powered static site generator",
5
+ "type": "module",
6
+ "packageManager": "pnpm@7.0.1",
6
7
  "main": "dist/node/index.js",
7
- "typings": "types/index.d.ts",
8
+ "types": "types/index.d.ts",
9
+ "exports": {
10
+ ".": {
11
+ "types": "./types/index.d.ts",
12
+ "import": "./dist/node/index.js",
13
+ "require": "./dist/node-cjs/index.cjs"
14
+ },
15
+ "./dist/client/*": "./dist/client/*"
16
+ },
8
17
  "bin": {
9
18
  "vitepress": "bin/vitepress.js"
10
19
  },
@@ -31,18 +40,7 @@
31
40
  "url": "https://github.com/vuejs/vitepress/issues"
32
41
  },
33
42
  "engines": {
34
- "node": ">=14.0.0"
35
- },
36
- "gitHooks": {
37
- "pre-commit": "lint-staged"
38
- },
39
- "lint-staged": {
40
- "*.js": [
41
- "prettier --write"
42
- ],
43
- "*.ts": [
44
- "prettier --parser=typescript --write"
45
- ]
43
+ "node": ">=14.6.0"
46
44
  },
47
45
  "dependencies": {
48
46
  "@docsearch/css": "^3.0.0",
@@ -50,16 +48,16 @@
50
48
  "@vitejs/plugin-vue": "^2.3.2",
51
49
  "@vueuse/core": "^8.5.0",
52
50
  "body-scroll-lock": "^4.0.0-beta.0",
53
- "prismjs": "^1.25.0",
51
+ "shiki": "^0.10.1",
54
52
  "vite": "^2.9.7",
55
53
  "vue": "3.2.33"
56
54
  },
57
55
  "devDependencies": {
58
- "@microsoft/api-extractor": "^7.23.1",
59
56
  "@rollup/plugin-alias": "^3.1.5",
60
57
  "@rollup/plugin-commonjs": "^20.0.0",
61
58
  "@rollup/plugin-json": "^4.1.0",
62
59
  "@rollup/plugin-node-resolve": "^13.0.4",
60
+ "@rollup/plugin-replace": "^4.0.0",
63
61
  "@types/body-scroll-lock": "^3.1.0",
64
62
  "@types/compression": "^1.7.0",
65
63
  "@types/cross-spawn": "^6.0.2",
@@ -73,7 +71,7 @@
73
71
  "@types/minimist": "^1.2.2",
74
72
  "@types/node": "^15.6.1",
75
73
  "@types/polka": "^0.5.3",
76
- "chalk": "^4.1.1",
74
+ "@types/prompts": "^2.0.14",
77
75
  "chokidar": "^3.5.1",
78
76
  "compression": "^1.7.4",
79
77
  "conventional-changelog-cli": "^2.1.1",
@@ -83,10 +81,9 @@
83
81
  "enquirer": "^2.3.6",
84
82
  "esbuild": "^0.14.0",
85
83
  "escape-html": "^1.0.3",
86
- "execa": "^5.0.0",
84
+ "execa": "^6.1.0",
87
85
  "fast-glob": "^3.2.7",
88
86
  "fs-extra": "^10.0.0",
89
- "globby": "^11.0.3",
90
87
  "gray-matter": "^4.0.3",
91
88
  "lint-staged": "^11.0.0",
92
89
  "lru-cache": "^6.0.0",
@@ -95,41 +92,52 @@
95
92
  "markdown-it-attrs": "^4.1.3",
96
93
  "markdown-it-container": "^3.0.0",
97
94
  "markdown-it-emoji": "^2.0.0",
98
- "markdown-it-table-of-contents": "^0.6.0",
95
+ "markdown-it-toc-done-right": "^4.2.0",
99
96
  "micromatch": "^4.0.4",
100
97
  "minimist": "^1.2.5",
101
98
  "npm-run-all": "^4.1.5",
102
99
  "ora": "^5.4.0",
100
+ "picocolors": "^1.0.0",
103
101
  "polka": "^0.5.2",
104
102
  "prettier": "^2.3.0",
103
+ "prompts": "^2.4.2",
105
104
  "rimraf": "^3.0.2",
106
105
  "rollup": "^2.56.3",
106
+ "rollup-plugin-dts": "^4.2.2",
107
107
  "rollup-plugin-esbuild": "^4.8.2",
108
108
  "semver": "^7.3.5",
109
+ "simple-git-hooks": "^2.7.0",
109
110
  "sirv": "^1.0.12",
110
- "typescript": "^4.6.4",
111
- "vitest": "^0.10.4",
112
- "yorkie": "^2.0.0"
111
+ "supports-color": "^9.2.2",
112
+ "typescript": "^4.7.2",
113
+ "vitest": "^0.10.4"
114
+ },
115
+ "simple-git-hooks": {
116
+ "pre-commit": "pnpm lint-staged"
117
+ },
118
+ "lint-staged": {
119
+ "*": [
120
+ "prettier --write --ignore-unknown"
121
+ ]
113
122
  },
114
123
  "scripts": {
115
- "dev": "run-s dev-shared dev-start",
124
+ "dev": "rimraf dist && run-s dev-shared dev-start",
116
125
  "dev-start": "run-p dev-client dev-node dev-watch",
117
126
  "dev-client": "tsc -w -p src/client",
118
- "dev-node": "tsc -w -p src/node",
127
+ "dev-node": "DEV=true pnpm run build-node -w",
119
128
  "dev-shared": "node scripts/copyShared",
120
129
  "dev-watch": "node scripts/watchAndCopy",
121
- "build": "run-s build-prepare build-client build-node build-types",
122
- "build-prepare": "rimraf -rf dist && node scripts/copyShared",
130
+ "build": "run-s build-prepare build-client build-node",
131
+ "build-prepare": "rimraf dist && node scripts/copyShared",
123
132
  "build-client": "tsc -p src/client && node scripts/copyClient",
124
- "build-node": "rollup -c scripts/rollup.config.js",
125
- "build-types": "run-s build-types-client build-types-node",
126
- "build-types-client": "tsc -p src/client --declaration --emitDeclarationOnly --outDir dist/temp && api-extractor run -c api-extractor.client.json && rimraf dist/temp",
127
- "build-types-node": "tsc -p src/node --declaration --emitDeclarationOnly --outDir dist/temp && api-extractor run -c api-extractor.node.json && rimraf dist/temp",
128
- "lint": "run-s lint:js lint:ts",
129
- "lint:js": "prettier --check --write \"{bin,docs,scripts,src}/**/*.js\"",
130
- "lint:ts": "prettier --check --write --parser typescript \"{__tests__,src,docs,types}/**/*.ts\"",
131
- "test": "vitest run __tests__ -c __tests__/vitest.config.js --global",
132
- "test:all": "run-s lint test",
133
+ "build-node": "rollup --config rollup.config.ts --configPlugin esbuild",
134
+ "format": "prettier --check --write .",
135
+ "format-fail": "prettier --check .",
136
+ "lint": "pnpm run format",
137
+ "lint-fail": "pnpm run format-fail",
138
+ "test": "vitest -r __tests__",
139
+ "test-run": "vitest run -r __tests__",
140
+ "check": "run-s lint test-run build",
133
141
  "changelog": "conventional-changelog -p angular -i CHANGELOG.md -s",
134
142
  "release": "node scripts/release.js",
135
143
  "docs": "run-p dev docs-dev",
@@ -138,7 +146,6 @@
138
146
  "docs-build": "run-s build docs-build-only",
139
147
  "docs-build-only": "node ./bin/vitepress build docs",
140
148
  "docs-serve": "node ./bin/vitepress serve docs",
141
- "ci-docs": "run-s build docs-build"
142
- },
143
- "readme": "# (WIP) VitePress 📝💨\n\n[![Test](https://github.com/vuejs/vitepress/workflows/Test/badge.svg)](https://github.com/vuejs/vitepress/actions)\n[![npm](https://img.shields.io/npm/v/vitepress)](https://www.npmjs.com/package/vitepress)\n\n---\n\nVitePress is [VuePress](https://vuepress.vuejs.org)' spiritual successor, built on top of [vite](https://github.com/vitejs/vite).\n\n## Documentation\n\nTo check out docs, visit [vitepress.vuejs.org](https://vitepress.vuejs.org).\n\n## Changelog\n\nDetailed changes for each release are documented in the [CHANGELOG](https://github.com/vuejs/vitepress/blob/main/CHANGELOG.md).\n\n## Contribution\n\nPlease make sure to read the [Contributing Guide](https://github.com/vuejs/vitepress/blob/main/.github/contributing.md) before making a pull request.\n\n## License\n\n[MIT](https://github.com/vuejs/vitepress/blob/main/LICENSE)\n\nCopyright (c) 2019-present, Yuxi (Evan) You\n"
149
+ "ci-docs": "run-s docs-build"
150
+ }
144
151
  }
package/theme.d.ts CHANGED
@@ -1,9 +1,14 @@
1
1
  // so that users can do `import DefaultTheme from 'vitepress/theme'`
2
2
  import { ComponentOptions } from 'vue'
3
3
 
4
- declare const defaultTheme: {
4
+ export const VPHomeHero = ComponentOptions
5
+ export const VPHomeFeatures = ComponentOptions
6
+ export const VPHomeSponsors = ComponentOptions
7
+ export const VPDocAsideSponsors = ComponentOptions
8
+
9
+ declare const theme: {
5
10
  Layout: ComponentOptions
6
11
  NotFound: ComponentOptions
7
12
  }
8
13
 
9
- export default defaultTheme
14
+ export default theme
@@ -82,6 +82,20 @@ export namespace DefaultTheme {
82
82
  export interface SidebarGroup {
83
83
  text: string
84
84
  items: SidebarItem[]
85
+
86
+ /**
87
+ * If `true`, toggle button is shown.
88
+ *
89
+ * @default false
90
+ */
91
+ collapsible?: boolean
92
+
93
+ /**
94
+ * If `true`, collapsible group is collapsed by default.
95
+ *
96
+ * @default false
97
+ */
98
+ collapsed?: boolean
85
99
  }
86
100
 
87
101
  export interface SidebarItem {
@@ -176,8 +190,7 @@ export namespace DefaultTheme {
176
190
  // carbon ads ----------------------------------------------------------------
177
191
 
178
192
  export interface CarbonAdsOptions {
179
- carbon: string
180
- custom?: string
193
+ code: string
181
194
  placement: string
182
195
  }
183
196
  }
package/types/shared.d.ts CHANGED
@@ -5,6 +5,7 @@ export { DefaultTheme } from './default-theme'
5
5
  export interface PageData {
6
6
  relativePath: string
7
7
  title: string
8
+ titleTemplate?: string | boolean
8
9
  description: string
9
10
  headers: Header[]
10
11
  frontmatter: Record<string, any>
@@ -28,6 +29,7 @@ export interface SiteData<ThemeConfig = any> {
28
29
  lang: string
29
30
 
30
31
  title: string
32
+ titleTemplate?: string | boolean
31
33
  description: string
32
34
  head: HeadConfig[]
33
35
  appearance: boolean
@@ -64,6 +66,7 @@ export type HeadConfig =
64
66
  export interface LocaleConfig {
65
67
  lang: string
66
68
  title?: string
69
+ titleTemplate?: string | boolean
67
70
  description?: string
68
71
  head?: HeadConfig[]
69
72
  label?: string