@justeat/f-build-scss

0.12.0 • Public • Published

f-build-scss

Fozzie Bear

Webpack configuration for SCSS Builds


npm version Build Status Coverage Status Known Vulnerabilities


Quick Guide

This module essentially finds and generates an Array of webpack-chain config objects, a builder for which is returned when this module is called.

Ideally, we would use one webpack-chain object with multiple entry points (to avoid duplication), but due to a bug in Eyeglass this isn't possible (as it returns the same output for the multiple CSS outputs). This also in turn means that we cannot generate a single manifest as a result of the CSS bundling, but rather need to generate one for each entry file (i.e., je.css, je.menulog.css), to be combined by the consuming application after the webpack build is finished.

Example Usage

To run as part of a webpack build, the following gives an example of how the style config can be applied.

const styleConfigBuilder = require('@justeat/f-build-scss'); // returns an array of webpack-chain objects

module.exports = (env, argv) => {
    const mode = settings.returnMode(argv);
    const styleConfig = styleConfigBuilder(mode);

    // Use map to apply common config to multiple webpack configs
    const rawStyleConfig = styleConfig.map(config => {
        config
          .mode(mode)
          .output
          .path(path.join(__dirname, 'wwwroot/hw'))
          .publicPath('/');

        return config.toConfig(); // Convert the webpack-chain object to a regular webpack config object
    });

    return [
        ...rawStyleConfig
    ];
};

Readme

Keywords

Package Sidebar

Install

npm i @justeat/f-build-scss

Weekly Downloads

10

Version

0.12.0

License

Apache-2.0

Unpacked Size

11.1 kB

Total Files

6

Last publish

Collaborators

  • ilia.chikmarev
  • fidel.montesino
  • anastasiia.horban
  • raouf.sawehli
  • mmakwe-onyeka
  • gregory.palaci
  • arielfdr
  • dawidchar
  • roberto.santana
  • lizzie.turney
  • davidpn.11
  • dandel10n
  • mwh1989
  • kevinrodrigues
  • fozzie-bot
  • ashleynolan
  • simonsje
  • xander-marjoram
  • sergii.semenkiv
  • thomaswilliammcclean
  • benrwhite
  • robertellison
  • zlatin.ivanov
  • joshuang2332
  • oliversweb
  • andymayje
  • jamieomaguire
  • adammorr
  • lsphillips