Something went wrong. Try again.
[READ-ONLY] Mirror of https://github.com/danielroe/roe.dev. This is the code and content for my personal website, built in Nuxt. roe.dev
Something went wrong. Try again.
TypeScript
at ci/nightly
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869import { addPlugin, createResolver, defineNuxtModule, useNuxt } from '@nuxt/kit'
export default defineNuxtModule({ meta: { name: 'components-chunk', }, setup() { const nuxt = useNuxt()
const usedComponents = [ 'ContentRendererMarkdown', 'ProseP', 'ProseA', 'ProseH2', 'ProseH3', 'ProseLi', 'ProseEm', 'ProseOl', 'ProseUl', 'ProsePre', 'ProseStrong', 'ProseBlockquote', 'ProseThead', 'ProseTable', 'ProseTr', 'ProseTd', 'ProseTh', 'ProseTbody', 'ProseCode', 'ProseCodeInline', ]
// Exclude non-prose content components nuxt.hook('components:extend', components => { const toPurge = [] for (const component of components) { if ( 'filePath' in component && component.filePath.includes('@nuxt/content') ) { if (!usedComponents.includes(component.pascalName)) { toPurge.push(component) } } } for (const component of toPurge) { components.splice(components.indexOf(component), 1) } })
nuxt.hook('build:manifest', manifest => { for (const file in manifest) { manifest[file].imports = manifest[file].imports?.filter( i => !i.includes('ContentRendererMarkdown') ) manifest[file].dynamicImports = manifest[file].dynamicImports?.filter( i => !i.includes('ContentRendererMarkdown') ) } })
const { resolve } = createResolver(import.meta.url) addPlugin({ src: resolve('./runtime/remove-renderer.server.ts'), mode: 'server', }) },})