Sha256: 758f3f4ea327b877add583d96f6abaa1d05b9ba3b8a2c66d35dbc1022dca2841

Contents?: true

Size: 879 Bytes

Versions: 30

Compression:

Stored size: 879 Bytes

Contents

/* eslint global-require: 0 */
const { canProcess, moduleExists } = require('./helpers')
const inliningCss = require('../inliningCss')

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

    // style-loader is required when using css modules with HMR on the webpack-dev-server

    const use = [
      inliningCss ? 'style-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

30 entries across 30 versions & 2 rubygems

Version Path
shakapacker-6.6.0 package/utils/get_style_rule.js
shakapacker-6.5.6 package/utils/get_style_rule.js
shakapacker-6.5.5 package/utils/get_style_rule.js
shakapacker-6.5.4 package/utils/get_style_rule.js
shakapacker-6.5.3 package/utils/get_style_rule.js
shakapacker-6.5.2 package/utils/get_style_rule.js
shakapacker-6.5.1 package/utils/get_style_rule.js
shakapacker-6.5.0 package/utils/get_style_rule.js
shakapacker-6.4.1 package/utils/get_style_rule.js
shakapacker-6.4.0 package/utils/get_style_rule.js
shakapacker-6.3.0 package/utils/get_style_rule.js
shakapacker-6.3.0.pre.rc.1 package/utils/get_style_rule.js
shakapacker-6.2.1 package/utils/get_style_rule.js
shakapacker-6.2.0 package/utils/get_style_rule.js
shakapacker-6.1.1 package/utils/get_style_rule.js
shakapacker-6.1.0 package/utils/get_style_rule.js
shakapacker-6.1.0.beta.0 package/utils/get_style_rule.js
shakapacker-6.0.2 package/utils/get_style_rule.js
shakapacker-6.0.1 package/utils/get_style_rule.js
shakapacker-6.0.0 package/utils/get_style_rule.js