UNPKG

@roots/sage

Version:

@roots/sage preset for @roots/bud

85 lines (84 loc) 2.32 kB
import { __decorate } from "tslib"; import { Extension } from '@roots/bud-framework/extension'; import { bind, dependsOn, expose, label, } from '@roots/bud-framework/extension/decorators'; import { deprecated } from '@roots/bud-support/decorators'; /** * roots/sage * * @see {@link https://github.com/roots/sage} * @see {@link https://bud.js.org/extensions/sage} */ let Sage = class Sage extends Extension { /** * {@link Acorn} */ get acorn() { return this.app.extensions.get(`@roots/sage/acorn`); } /** * {@link BladeLoaderExtension} */ get blade() { return this.app.extensions.get(`@roots/sage/blade-loader`); } /** * Get unique name for project */ getUniqueName() { return this.app.label !== `sage` ? `@roots/bud/sage/${this.app.label}` : `@roots/bud/sage`; } /** * {@link BladeLoaderExtension.enable} */ processBladeTemplates(value = true) { this.blade.enable(value); return this; } /** * {@link Extension.register} */ async register(bud) { bud .setPath({ '@dist': `public`, '@fonts': `@src/fonts`, '@images': `@src/images`, '@scripts': `@src/scripts`, '@src': `resources`, '@styles': `@src/styles`, '@views': `@src/views`, }) .when(bud.isProduction, bud.hash, bud.devtool); bud.hooks.on(`build.output.uniqueName`, this.getUniqueName); } /** * Set acorn version * * @deprecated This function is deprecated. It is unneeded; you can just remove the call. */ setAcornVersion(version) { } }; __decorate([ bind ], Sage.prototype, "getUniqueName", null); __decorate([ bind ], Sage.prototype, "processBladeTemplates", null); __decorate([ bind ], Sage.prototype, "register", null); __decorate([ deprecated(`bud.sage`, `This function is no longer needed. Remove the call from your configuration.`) ], Sage.prototype, "setAcornVersion", null); Sage = __decorate([ label(`@roots/sage`), dependsOn([ `@roots/bud-preset-wordpress`, `@roots/sage/acorn`, `@roots/sage/blade-loader`, ]), expose(`sage`) ], Sage); export default Sage;