@roots/bud-extensions
Version:
bud.js core module
37 lines (28 loc) • 864 B
text/typescript
import type {Bud} from '@roots/bud-framework'
import {Extension} from '@roots/bud-framework/extension'
import {label, plugin} from '@roots/bud-framework/extension/decorators'
import FixStyleOnlyEntrypoints from './plugin.js'
/**
* Fix style only entrypoints
*/
(`@roots/bud-extensions/fix-style-only-entrypoints`)
(FixStyleOnlyEntrypoints)
export default class BudFixStyleOnlyEntrypoints extends Extension {
/**
* When
*/
public override when(bud: Bud): boolean {
if (this.enabled === true) return true
if (bud.isDevelopment) return false
const entrypoints = bud.hooks.filter(`build.entry`, undefined)
if (!entrypoints) return false
if (
!Object.values(entrypoints).every(value =>
value.import.every(entry => entry.endsWith(`.css`)),
)
) {
return false
}
return true
}
}