mirror of
https://github.com/pengzhanbo/vuepress-theme-plume.git
synced 2026-04-23 10:58:13 +08:00
19 lines
574 B
TypeScript
19 lines
574 B
TypeScript
import type { UnpluginFactory } from 'unplugin'
|
|
import type { ReplacementRule } from '../options.js'
|
|
import { transformAssets } from './transform.js'
|
|
import { createAssetPattern } from './utils.js'
|
|
|
|
export const unpluginFactory: UnpluginFactory<ReplacementRule[]> = (rules) => {
|
|
const pattern = createAssetPattern('/[^/]')
|
|
return {
|
|
name: 'vuepress:replace-assets',
|
|
enforce: 'pre',
|
|
transform: {
|
|
filter: { id: { exclude: [/\.json(?:$|\?)/, /\.html?$/] } },
|
|
handler(code) {
|
|
return transformAssets(code, pattern, rules)
|
|
},
|
|
},
|
|
}
|
|
}
|