* Get the appropriate loader for the SCSS styles depending wether we are in dev mode or building the production bundle. * * @param {string} [mode='dev'] The mode of the build. * Possible values are: 'dev' or 'prod'. * @return {Array } The loade
({ mode = 'dev' })
| 48 | * @return {Array<Object>} The loaders for the SCSS and CSS styles. |
| 49 | */ |
| 50 | function getStyleLoader({ mode = 'dev' }) { |
| 51 | return [ |
| 52 | { |
| 53 | exclude: /node_modules/u, |
| 54 | test: /\.scss$/u, |
| 55 | use: [ |
| 56 | mode === 'dev' |
| 57 | ? { |
| 58 | loader: 'style-loader', |
| 59 | options: { |
| 60 | hmr: true, |
| 61 | sourceMap: true, |
| 62 | }, |
| 63 | } |
| 64 | : { |
| 65 | loader: ExtractCssChunks.loader, |
| 66 | options: { |
| 67 | hot: false, |
| 68 | reloadAll: false, |
| 69 | }, |
| 70 | }, |
| 71 | { |
| 72 | loader: 'css-loader', |
| 73 | options: { |
| 74 | // eslint-disable-next-line no-magic-numbers |
| 75 | importLoaders: 2, |
| 76 | sourceMap: false, |
| 77 | }, |
| 78 | }, |
| 79 | { |
| 80 | loader: 'postcss-loader', |
| 81 | options: { |
| 82 | config: { |
| 83 | path: `${WEBPACK_PATH}/postcss.config.js`, |
| 84 | }, |
| 85 | sourceMap: false, |
| 86 | }, |
| 87 | }, |
| 88 | { |
| 89 | loader: 'sass-loader', |
| 90 | options: { |
| 91 | includePaths: [ |
| 92 | `${NODE_MODULES_PATH}/@lumx/core/scss`, |
| 93 | `${NODE_MODULES_PATH}/@mdi/font/scss/`, |
| 94 | `${NODE_MODULES_PATH}/sass-mq`, |
| 95 | ], |
| 96 | sourceMap: false, |
| 97 | }, |
| 98 | }, |
| 99 | ], |
| 100 | }, |
| 101 | { |
| 102 | exclude: /node_modules/u, |
| 103 | test: /\.css$/u, |
| 104 | use: [ |
| 105 | mode === 'dev' |
| 106 | ? { |
| 107 | loader: 'style-loader', |
no outgoing calls
no test coverage detected