Skip to content

Commit a3032c5

Browse files
authored
Merge branch 'main' into meteorlxy-markdown-to-vue
2 parents 7613c25 + 960d37c commit a3032c5

File tree

25 files changed

+1534
-1640
lines changed

25 files changed

+1534
-1640
lines changed

e2e/package.json

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -20,14 +20,14 @@
2020
"@vuepress-e2e/style-exports": "file:./modules/style-exports",
2121
"@vuepress/bundler-vite": "workspace:*",
2222
"@vuepress/bundler-webpack": "workspace:*",
23-
"sass": "^1.85.1",
24-
"sass-embedded": "^1.85.1",
23+
"sass": "^1.86.3",
24+
"sass-embedded": "^1.86.3",
2525
"sass-loader": "^16.0.5",
26-
"vue": "^3.5.13",
26+
"vue": "catalog:",
2727
"vuepress": "workspace:*"
2828
},
2929
"devDependencies": {
30-
"@playwright/test": "^1.50.1",
30+
"@playwright/test": "^1.51.1",
3131
"anywhere": "^1.6.0",
3232
"cross-env": "^7.0.3"
3333
}

package.json

Lines changed: 18 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -32,32 +32,32 @@
3232
},
3333
"prettier": "prettier-config-vuepress",
3434
"devDependencies": {
35-
"@commitlint/cli": "^19.7.1",
36-
"@commitlint/config-conventional": "^19.7.1",
37-
"@commitlint/types": "^19.5.0",
38-
"@types/node": "^22.13.5",
35+
"@commitlint/cli": "^19.8.0",
36+
"@commitlint/config-conventional": "^19.8.0",
37+
"@commitlint/types": "^19.8.0",
38+
"@types/node": "^22.14.0",
3939
"@types/webpack-env": "^1.18.8",
40-
"@vitest/coverage-istanbul": "^3.0.7",
41-
"bumpp": "^10.0.3",
40+
"@vitest/coverage-istanbul": "^3.1.1",
41+
"bumpp": "^10.1.0",
4242
"conventional-changelog-cli": "^5.0.0",
43-
"eslint": "^9.21.0",
44-
"eslint-config-vuepress": "^5.2.4",
43+
"eslint": "^9.24.0",
44+
"eslint-config-vuepress": "^5.2.5",
4545
"husky": "^9.1.7",
4646
"jiti": "^2.4.2",
47-
"lint-staged": "^15.4.3",
48-
"prettier": "^3.5.2",
47+
"lint-staged": "^15.5.0",
48+
"prettier": "^3.5.3",
4949
"prettier-config-vuepress": "^5.0.0",
5050
"rimraf": "^6.0.1",
51-
"sort-package-json": "^2.14.0",
52-
"taze": "^18.6.0",
51+
"sort-package-json": "^3.0.0",
52+
"taze": "^19.0.4",
5353
"tsconfig-vuepress": "^5.2.1",
54-
"tsup": "^8.3.6",
55-
"typescript": "~5.7.3",
56-
"vite": "~6.2.0",
57-
"vitest": "^3.0.7",
58-
"vue-tsc": "^2.2.4"
54+
"tsup": "^8.4.0",
55+
"typescript": "~5.8.3",
56+
"vite": "~6.2.5",
57+
"vitest": "^3.1.1",
58+
"vue-tsc": "^2.2.8"
5959
},
60-
"packageManager": "pnpm@10.4.1",
60+
"packageManager": "pnpm@10.8.0",
6161
"pnpm": {
6262
"onlyBuiltDependencies": [
6363
"@parcel/watcher",

packages/bundler-vite/package.json

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -35,20 +35,20 @@
3535
"clean": "rimraf dist"
3636
},
3737
"dependencies": {
38-
"@vitejs/plugin-vue": "^5.2.1",
38+
"@vitejs/plugin-vue": "^5.2.3",
3939
"@vuepress/bundlerutils": "workspace:*",
4040
"@vuepress/client": "workspace:*",
4141
"@vuepress/core": "workspace:*",
4242
"@vuepress/shared": "workspace:*",
4343
"@vuepress/utils": "workspace:*",
44-
"autoprefixer": "^10.4.20",
44+
"autoprefixer": "^10.4.21",
4545
"connect-history-api-fallback": "^2.0.0",
4646
"postcss": "^8.5.3",
4747
"postcss-load-config": "^6.0.1",
48-
"rollup": "^4.34.8",
49-
"vite": "~6.2.0",
50-
"vue": "^3.5.13",
51-
"vue-router": "^4.5.0"
48+
"rollup": "^4.39.0",
49+
"vite": "~6.2.5",
50+
"vue": "catalog:",
51+
"vue-router": "catalog:"
5252
},
5353
"devDependencies": {
5454
"@types/connect-history-api-fallback": "^1.5.4"

packages/bundler-webpack/package.json

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -44,25 +44,25 @@
4444
"@vuepress/core": "workspace:*",
4545
"@vuepress/shared": "workspace:*",
4646
"@vuepress/utils": "workspace:*",
47-
"autoprefixer": "^10.4.20",
47+
"autoprefixer": "^10.4.21",
4848
"chokidar": "^3.6.0",
49-
"copy-webpack-plugin": "^12.0.2",
49+
"copy-webpack-plugin": "^13.0.0",
5050
"css-loader": "^7.1.2",
51-
"css-minimizer-webpack-plugin": "^7.0.0",
51+
"css-minimizer-webpack-plugin": "^7.0.2",
5252
"esbuild-loader": "~4.3.0",
5353
"express": "^4.21.2",
5454
"html-webpack-plugin": "^5.6.3",
55-
"lightningcss": "^1.29.1",
55+
"lightningcss": "^1.29.3",
5656
"mini-css-extract-plugin": "^2.9.2",
5757
"postcss": "^8.5.3",
5858
"postcss-loader": "^8.1.1",
5959
"style-loader": "^4.0.0",
60-
"vue": "^3.5.13",
60+
"vue": "catalog:",
6161
"vue-loader": "^17.4.2",
62-
"vue-router": "^4.5.0",
63-
"webpack": "^5.98.0",
62+
"vue-router": "catalog:",
63+
"webpack": "^5.99.5",
6464
"webpack-5-chain": "^8.0.2",
65-
"webpack-dev-server": "^5.2.0",
65+
"webpack-dev-server": "^5.2.1",
6666
"webpack-merge": "^6.0.1"
6767
},
6868
"publishConfig": {

packages/bundler-webpack/src/build/createClientConfig.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,8 @@ import type { App } from '@vuepress/core'
22
import { fs } from '@vuepress/utils'
33
import CopyWebpackPlugin from 'copy-webpack-plugin'
44
import CssMinimizerPlugin from 'css-minimizer-webpack-plugin'
5-
import type { CssModule } from 'mini-css-extract-plugin'
65
import MiniCssExtractPlugin from 'mini-css-extract-plugin'
6+
import type { Module } from 'webpack'
77
import type Config from 'webpack-5-chain'
88
import { createClientBaseConfig } from '../config/index.js'
99
import type { WebpackBundlerOptions } from '../types.js'
@@ -54,7 +54,7 @@ export const createClientConfig = async (
5454
styles: {
5555
idHint: 'styles',
5656
// necessary to ensure async chunks are also extracted
57-
test: (m: CssModule) => m.type.includes('css/mini-extract'),
57+
test: (m: Module) => m.type.includes('css/mini-extract'),
5858
chunks: 'all',
5959
enforce: true,
6060
reuseExistingChunk: true,

packages/bundler-webpack/src/build/resolveFileMetaType.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,10 +10,10 @@ export const resolveFileMetaType = (extension: string): FileMetaType => {
1010
if (extension === 'css') {
1111
return 'style'
1212
}
13-
if (/jpe?g|png|svg|gif|webp|ico/.test(extension)) {
13+
if (/jpe?g|png|svg|gif|webp|ico/i.test(extension)) {
1414
return 'image'
1515
}
16-
if (/woff2?|ttf|otf|eot/.test(extension)) {
16+
if (/woff2?|ttf|otf|eot/i.test(extension)) {
1717
return 'font'
1818
}
1919
// not exhausting all possibilities here, but above covers common cases

packages/bundler-webpack/src/config/handleModuleAssets.ts

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ export const handleModuleAssets = ({ config }: { config: Config }): void => {
77
// images
88
config.module
99
.rule('images')
10-
.test(/\.(png|jpe?g|gif|webp)(\?.*)?$/)
10+
.test(/\.(png|jpe?g|gif|webp)(\?.*)?$/i)
1111
.type('asset')
1212
.generator({
1313
filename: 'assets/img/[name].[contenthash:8][ext]',
@@ -18,7 +18,7 @@ export const handleModuleAssets = ({ config }: { config: Config }): void => {
1818
// https://github.com/facebookincubator/create-react-app/pull/1180
1919
config.module
2020
.rule('svg')
21-
.test(/\.(svg)(\?.*)?$/)
21+
.test(/\.(svg)(\?.*)?$/i)
2222
.type('asset/resource')
2323
.generator({
2424
filename: 'assets/img/[name].[contenthash:8][ext]',
@@ -27,7 +27,7 @@ export const handleModuleAssets = ({ config }: { config: Config }): void => {
2727
// media
2828
config.module
2929
.rule('media')
30-
.test(/\.(mp4|webm|ogg|mp3|wav|flac|aac)(\?.*)?$/)
30+
.test(/\.(mp4|webm|ogg|mp3|wav|flac|aac)(\?.*)?$/i)
3131
.type('asset/resource')
3232
.generator({
3333
filename: 'assets/media/[name].[contenthash:8][ext]',

packages/bundlerutils/package.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -36,8 +36,8 @@
3636
"@vuepress/core": "workspace:*",
3737
"@vuepress/shared": "workspace:*",
3838
"@vuepress/utils": "workspace:*",
39-
"vue": "^3.5.13",
40-
"vue-router": "^4.5.0"
39+
"vue": "catalog:",
40+
"vue-router": "catalog:"
4141
},
4242
"publishConfig": {
4343
"access": "public"

packages/cli/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,7 @@
4242
"cac": "^6.7.14",
4343
"chokidar": "^3.6.0",
4444
"envinfo": "^7.14.0",
45-
"esbuild": "^0.25.0"
45+
"esbuild": "^0.25.2"
4646
},
4747
"devDependencies": {
4848
"@types/envinfo": "^7.8.4"

packages/cli/src/commands/build/createBuild.ts

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -21,9 +21,7 @@ export const createBuild =
2121

2222
log(`commandOptions:`, commandOptions)
2323

24-
if (process.env.NODE_ENV === undefined) {
25-
process.env.NODE_ENV = 'production'
26-
}
24+
process.env.NODE_ENV ??= 'production'
2725

2826
// resolve app config from cli options
2927
const cliAppConfig = resolveCliAppConfig(sourceDir, commandOptions)

packages/cli/src/commands/dev/createDev.ts

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -24,9 +24,7 @@ export const createDev = (defaultAppConfig: Partial<AppConfig>): DevCommand => {
2424
): Promise<void> => {
2525
log(`commandOptions:`, commandOptions)
2626

27-
if (process.env.NODE_ENV === undefined) {
28-
process.env.NODE_ENV = 'development'
29-
}
27+
process.env.NODE_ENV ??= 'development'
3028

3129
// resolve app config from cli options
3230
const cliAppConfig = resolveCliAppConfig(sourceDir, commandOptions)

packages/cli/src/config/transformUserConfigToPlugin.ts

Lines changed: 8 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -18,16 +18,14 @@ export const transformUserConfigToPlugin = (
1818

1919
// if `clientConfigFile` is not set explicitly,
2020
// try to load conventional files
21-
if (userConfigPlugin.clientConfigFile === undefined) {
22-
userConfigPlugin.clientConfigFile = [
23-
path.resolve(cwd, 'vuepress.client.ts'),
24-
path.resolve(cwd, 'vuepress.client.js'),
25-
path.resolve(cwd, 'vuepress.client.mjs'),
26-
path.resolve(source, '.vuepress/client.ts'),
27-
path.resolve(source, '.vuepress/client.js'),
28-
path.resolve(source, '.vuepress/client.mjs'),
29-
].find((item) => fs.pathExistsSync(item))
30-
}
21+
userConfigPlugin.clientConfigFile ??= [
22+
path.resolve(cwd, 'vuepress.client.ts'),
23+
path.resolve(cwd, 'vuepress.client.js'),
24+
path.resolve(cwd, 'vuepress.client.mjs'),
25+
path.resolve(source, '.vuepress/client.ts'),
26+
path.resolve(source, '.vuepress/client.js'),
27+
path.resolve(source, '.vuepress/client.mjs'),
28+
].find((item) => fs.pathExistsSync(item))
3129

3230
return userConfigPlugin
3331
}

packages/client/package.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -40,8 +40,8 @@
4040
"@vue/devtools-api": "^7.7.2",
4141
"@vue/devtools-kit": "^7.7.2",
4242
"@vuepress/shared": "workspace:*",
43-
"vue": "^3.5.13",
44-
"vue-router": "^4.5.0"
43+
"vue": "catalog:",
44+
"vue-router": "catalog:"
4545
},
4646
"publishConfig": {
4747
"access": "public"

packages/core/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,7 @@
3535
"@vuepress/markdown": "workspace:*",
3636
"@vuepress/shared": "workspace:*",
3737
"@vuepress/utils": "workspace:*",
38-
"vue": "^3.5.13"
38+
"vue": "catalog:"
3939
},
4040
"publishConfig": {
4141
"access": "public"

packages/core/src/page/createPage.ts

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -98,7 +98,6 @@ export const createPage = async (
9898
title,
9999
lang,
100100
frontmatter,
101-
headers,
102101
},
103102

104103
// base fields

packages/core/src/types/page.ts

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,10 @@
11
import type { MarkdownLink, MarkdownSfcBlocks } from '@vuepress/markdown'
2-
import type { PageBase, PageData, PageFrontmatter } from '@vuepress/shared'
2+
import type {
3+
PageBase,
4+
PageData,
5+
PageFrontmatter,
6+
PageHeader,
7+
} from '@vuepress/shared'
38

49
/**
510
* Vuepress Page
@@ -40,6 +45,11 @@ export type Page<
4045
*/
4146
deps: string[]
4247

48+
/**
49+
* Headers of the page
50+
*/
51+
headers: PageHeader[]
52+
4353
/**
4454
* Links of the page
4555
*/

packages/core/tests/app/resolveAppPages.spec.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -53,7 +53,7 @@ it('should process extendsPageOptions hook correctly', async () => {
5353
app.use({
5454
name: 'foo',
5555
extendsPageOptions: (pageOptions) => {
56-
if (!pageOptions.frontmatter) pageOptions.frontmatter = {}
56+
pageOptions.frontmatter ??= {}
5757
pageOptions.frontmatter.foo = 'bar'
5858
},
5959
})

packages/core/tests/page/createPage.spec.ts

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,6 @@ describe('should work without plugins', () => {
3434
expect(page.data.lang).toBe('en-US')
3535
expect(page.data.title).toBe('')
3636
expect(page.data.frontmatter).toEqual({})
37-
expect(page.data.headers).toEqual([])
3837

3938
// base fields
4039
expect(page.path).toBe('/')

packages/markdown/package.json

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -31,14 +31,14 @@
3131
"clean": "rimraf dist"
3232
},
3333
"dependencies": {
34-
"@mdit-vue/plugin-component": "^2.1.3",
35-
"@mdit-vue/plugin-frontmatter": "^2.1.3",
36-
"@mdit-vue/plugin-headers": "^2.1.3",
37-
"@mdit-vue/plugin-sfc": "^2.1.3",
38-
"@mdit-vue/plugin-title": "^2.1.3",
39-
"@mdit-vue/plugin-toc": "^2.1.3",
40-
"@mdit-vue/shared": "^2.1.3",
41-
"@mdit-vue/types": "^2.1.0",
34+
"@mdit-vue/plugin-component": "^2.1.4",
35+
"@mdit-vue/plugin-frontmatter": "^2.1.4",
36+
"@mdit-vue/plugin-headers": "^2.1.4",
37+
"@mdit-vue/plugin-sfc": "^2.1.4",
38+
"@mdit-vue/plugin-title": "^2.1.4",
39+
"@mdit-vue/plugin-toc": "^2.1.4",
40+
"@mdit-vue/shared": "^2.1.4",
41+
"@mdit-vue/types": "^2.1.4",
4242
"@types/markdown-it": "^14.1.2",
4343
"@types/markdown-it-emoji": "^3.0.1",
4444
"@vuepress/shared": "workspace:*",

packages/shared/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,7 @@
3333
"clean": "rimraf dist"
3434
},
3535
"dependencies": {
36-
"@mdit-vue/types": "^2.1.0"
36+
"@mdit-vue/types": "^2.1.4"
3737
},
3838
"publishConfig": {
3939
"access": "public"

packages/shared/src/types/page.ts

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -36,11 +36,6 @@ export interface PageBase<
3636
* Front matter of the page
3737
*/
3838
frontmatter: PageFrontmatter<ExtraPageFrontmatter>
39-
40-
/**
41-
* Headers of the page
42-
*/
43-
headers: PageHeader[]
4439
}
4540

4641
/**

packages/vuepress/package.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -55,12 +55,12 @@
5555
"@vuepress/markdown": "workspace:*",
5656
"@vuepress/shared": "workspace:*",
5757
"@vuepress/utils": "workspace:*",
58-
"vue": "^3.5.13"
58+
"vue": "catalog:"
5959
},
6060
"peerDependencies": {
6161
"@vuepress/bundler-vite": "workspace:*",
6262
"@vuepress/bundler-webpack": "workspace:*",
63-
"vue": "^3.5.0"
63+
"vue": "catalog:"
6464
},
6565
"peerDependenciesMeta": {
6666
"@vuepress/bundler-vite": {

0 commit comments

Comments
 (0)