Skip to content
2 changes: 1 addition & 1 deletion packages/core/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -55,7 +55,7 @@
"tinyglobby": "^0.2.12",
"ufo": "^1.6.1",
"unplugin": "^2.3.2",
"unplugin-ast": "^0.14.6",
"unplugin-ast": "0.14.4",
"zod": "^3.24.2"
}
}
11 changes: 3 additions & 8 deletions packages/core/src/index.ts
Original file line number Diff line number Diff line change
@@ -1,10 +1,8 @@
import { joinURL } from 'ufo'
import AST from 'unplugin-ast/vite'
import { RemoveWrapperFunction } from 'unplugin-ast/transformers'

import { libraryCollections as libraryCollectionsConfig } from '@compodium/examples'
import { collectionsPlugin } from './plugins/collections'
import { metaPlugin } from './plugins/meta'
import { extendMetaPlugin, metaPlugin } from './plugins/meta'
import { examplePlugin } from './plugins/examples'
import { devtoolsPlugin } from './plugins/devtools'
import { colorsPlugin } from './plugins/colors'
Expand Down Expand Up @@ -61,13 +59,10 @@ export const compodium = /* #__PURE__ */ (options: PluginOptions) => {
return [
collectionsPlugin(config),
metaPlugin(config),
extendMetaPlugin(config),
devtoolsPlugin(config),
examplePlugin(config),
iconifyPlugin(config),
colorsPlugin(config),
AST({
include: [/\.[jt]sx?$/, /\.vue$/],
transformer: [RemoveWrapperFunction(['extendCompodiumMeta'])]
})
colorsPlugin(config)
]
}
19 changes: 19 additions & 0 deletions packages/core/src/plugins/meta/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,25 @@ import { watch } from 'chokidar'
import type { VitePlugin } from 'unplugin'
import { resolve } from 'pathe'

import AST from 'unplugin-ast/vite'

export function extendMetaPlugin(_config: PluginConfig): VitePlugin {
return AST({
include: [/\.[jt]sx?$/, /\.vue$/],
enforce: 'post',
transformer: [
{
onNode(node) {
return node.type === 'CallExpression'
&& node.callee.type === 'Identifier'
&& node.callee.name === 'extendCompodiumMeta'
},
transform: () => false
}
]
})
}

export function metaPlugin(config: PluginConfig): VitePlugin {
const checkerDirs = [
...config.componentCollection.dirs,
Expand Down
19 changes: 10 additions & 9 deletions pnpm-lock.yaml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.