Sha256: c5585815ce57df2e51528762264a2d7f2ea0caa9cc2edae361cc5c4ddb24ea4a

Contents?: true

Size: 1.01 KB

Versions: 46

Compression:

Stored size: 1.01 KB

Contents

const MiniCssExtractPlugin = require('mini-css-extract-plugin')
const { resolve } = require('path')
const config = require('../config')

const styleLoader = {
  loader: 'style-loader'
}

const getStyleRule = (test, modules = false, preprocessors = []) => {
  const use = [
    {
      loader: 'css-loader',
      options: {
        sourceMap: true,
        importLoaders: 2,
        modules: modules ? {
          localIdentName: '[name]__[local]___[hash:base64:5]'
        } : false
      }
    },
    {
      loader: 'postcss-loader',
      options: {
        config: { path: resolve() },
        sourceMap: true
      }
    },
    ...preprocessors
  ]

  const options = modules ? { include: /\.module\.[a-z]+$/ } : { exclude: /\.module\.[a-z]+$/ }

  if (config.extract_css) {
    use.unshift(MiniCssExtractPlugin.loader)
  } else {
    use.unshift(styleLoader)
  }

  // sideEffects - See https://github.com/webpack/webpack/issues/6571
  return {
    test, use, sideEffects: !modules, ...options
  }
}

module.exports = getStyleRule

Version data entries

46 entries across 45 versions & 9 rubygems

Version Path
cm-admin-1.5.22 vendor/bundle/ruby/3.3.0/gems/webpacker-5.4.4/package/utils/get_style_rule.js
cm-admin-1.5.21 vendor/bundle/ruby/3.3.0/gems/webpacker-5.4.4/package/utils/get_style_rule.js
cm-admin-1.5.20 vendor/bundle/ruby/3.3.0/gems/webpacker-5.4.4/package/utils/get_style_rule.js
optimacms-0.1.61 spec/dummy/node_modules/@rails/webpacker/package/utils/get_style_rule.js
jetpacker-0.7.0 package/utils/get_style_rule.js
webpacker-5.4.4 package/utils/get_style_rule.js
jetpacker-0.6.0 package/utils/get_style_rule.js
disco_app-0.16.1 test/dummy/node_modules/@rails/webpacker/package/utils/get_style_rule.js
disco_app-0.15.2 test/dummy/node_modules/@rails/webpacker/package/utils/get_style_rule.js
disco_app-0.18.4 test/dummy/node_modules/@rails/webpacker/package/utils/get_style_rule.js
disco_app-0.18.1 test/dummy/node_modules/@rails/webpacker/package/utils/get_style_rule.js
disco_app-0.12.7.pre.puma.pre.3 test/dummy/node_modules/@rails/webpacker/package/utils/get_style_rule.js
disco_app-0.14.0 test/dummy/node_modules/@rails/webpacker/package/utils/get_style_rule.js
disco_app-0.13.6.pre.puma.pre.3 test/dummy/node_modules/@rails/webpacker/package/utils/get_style_rule.js
webpacker-5.4.3 package/utils/get_style_rule.js
webpacker-5.4.2 package/utils/get_style_rule.js
webpacker-5.4.1 package/utils/get_style_rule.js
webpacker-5.4.0 package/utils/get_style_rule.js
webpacker-5.3.0 package/utils/get_style_rule.js
webpacker-5.2.2 package/utils/get_style_rule.js