From 9f3d3b02b81373a64c0295795c9be14a54cbc48d Mon Sep 17 00:00:00 2001 From: David Loehr <david.loehr@zumper.com> Date: Tue, 18 Jun 2019 13:47:41 -0400 Subject: [PATCH] Add dts-css-modules-loader to generate .d.ts files so TypeScript can understand less imports --- packages/react-scripts/config/webpack.config.js | 9 +++++++++ packages/react-scripts/package.json | 1 + 2 files changed, 10 insertions(+) diff --git a/packages/react-scripts/config/webpack.config.js b/packages/react-scripts/config/webpack.config.js index 771b06c94..fa796518f 100644 --- a/packages/react-scripts/config/webpack.config.js +++ b/packages/react-scripts/config/webpack.config.js @@ -86,6 +86,15 @@ module.exports = function(webpackEnv) { const getStyleLoaders = (cssOptions, preProcessor) => { const loaders = [ isEnvDevelopment && require.resolve('style-loader'), + useTypeScript && + isEnvDevelopment && + cssOptions.modules && { + loader: require.resolve('dts-css-modules-loader'), + options: { + banner: + '// This file is generated automatically by dts-css-modules-loader', + }, + }, isEnvProduction && { loader: MiniCssExtractPlugin.loader, options: shouldUseRelativeAssetPaths ? { publicPath: '../../' } : {}, diff --git a/packages/react-scripts/package.json b/packages/react-scripts/package.json index a15c92d03..1f560f80a 100644 --- a/packages/react-scripts/package.json +++ b/packages/react-scripts/package.json @@ -42,6 +42,7 @@ "css-loader": "2.1.1", "dotenv": "6.2.0", "dotenv-expand": "4.2.0", + "dts-css-modules-loader": "^1.0.1", "eslint": "^5.16.0", "eslint-config-react-app": "^4.0.1", "eslint-loader": "2.1.2", -- GitLab