Sha256: 61ba96fd0aac2d01eae4642b756e9f016c96a2ea0d0f1e0bbbbadbbdb5e9f186

Contents?: true

Size: 724 Bytes

Versions: 8

Compression:

Stored size: 724 Bytes

Contents

/* eslint global-require: 0 */

const { canProcess, moduleExists } = require('./helpers')

const getStyleRule = (test, preprocessors = []) => {
  if (moduleExists('css-loader')) {
    const tryPostcss = () =>
      canProcess('postcss-loader', (loaderPath) => ({
        loader: loaderPath,
        options: { sourceMap: true }
      }))

    const use = [
      { loader: require('mini-css-extract-plugin').loader },
      {
        loader: require.resolve('css-loader'),
        options: {
          sourceMap: true,
          importLoaders: 2
        }
      },
      tryPostcss(),
      ...preprocessors
    ].filter(Boolean)

    return {
      test,
      use
    }
  }

  return null
}

module.exports = getStyleRule

Version data entries

8 entries across 8 versions & 1 rubygems

Version Path
webpacker-6.0.0.beta.7 package/utils/get_style_rule.js
webpacker-6.0.0.beta.6 package/utils/get_style_rule.js
webpacker-6.0.0.beta.5 package/utils/get_style_rule.js
webpacker-6.0.0.beta.4 package/utils/get_style_rule.js
webpacker-6.0.0.beta.3 package/utils/get_style_rule.js
webpacker-6.0.0.beta.2 package/utils/get_style_rule.js
webpacker-6.0.0.beta.1 package/utils/get_style_rule.js
webpacker-6.0.0.beta package/utils/get_style_rule.js