From f45395314333ab470ff9b96aa3a9ba95d417e74a Mon Sep 17 00:00:00 2001 From: Matthew Leffler Date: Tue, 13 Jun 2017 16:38:29 -0600 Subject: [PATCH 1/5] Use awesome-typescript-loader for Babel support --- package.json | 1 + packages/react-scripts/config/paths.js | 3 +++ packages/react-scripts/config/webpack.config.dev.js | 6 +++++- packages/react-scripts/config/webpack.config.prod.js | 6 +++++- packages/react-scripts/package.json | 6 ++++-- packages/react-scripts/template/tsconfig.json | 1 + 6 files changed, 19 insertions(+), 4 deletions(-) diff --git a/package.json b/package.json index 94db5f918..9e477609c 100644 --- a/package.json +++ b/package.json @@ -17,6 +17,7 @@ "@types/node": "^7.0.21", "@types/react": "^15.0.24", "@types/react-dom": "^15.5.0", + "babel-core": "^6.24.1", "eslint": "3.19.0", "husky": "^0.13.2", "lerna": "2.0.0-beta.38", diff --git a/packages/react-scripts/config/paths.js b/packages/react-scripts/config/paths.js index cb125d207..b8ff94fb7 100644 --- a/packages/react-scripts/config/paths.js +++ b/packages/react-scripts/config/paths.js @@ -56,6 +56,7 @@ module.exports = { appHtml: resolveApp('public/index.html'), appIndexJs: resolveApp('src/index.tsx'), appPackageJson: resolveApp('package.json'), + appTsConfig: resolveApp('tsconfig.json'), appSrc: resolveApp('src'), yarnLockFile: resolveApp('yarn.lock'), testsSetup: resolveApp('src/setupTests.ts'), @@ -76,6 +77,7 @@ module.exports = { appHtml: resolveApp('public/index.html'), appIndexJs: resolveApp('src/index.tsx'), appPackageJson: resolveApp('package.json'), + appTsConfig: resolveApp('tsconfig.json'), appSrc: resolveApp('src'), yarnLockFile: resolveApp('yarn.lock'), testsSetup: resolveApp('src/setupTests.ts'), @@ -105,6 +107,7 @@ if ( appHtml: resolveOwn('template/public/index.html'), appIndexJs: resolveOwn('template/src/index.tsx'), appPackageJson: resolveOwn('package.json'), + appTsConfig: resolveOwn('tsconfig.json'), appSrc: resolveOwn('template/src'), yarnLockFile: resolveOwn('template/yarn.lock'), testsSetup: resolveOwn('template/src/setupTests.ts'), diff --git a/packages/react-scripts/config/webpack.config.dev.js b/packages/react-scripts/config/webpack.config.dev.js index 2eed1e04e..01f59fe95 100644 --- a/packages/react-scripts/config/webpack.config.dev.js +++ b/packages/react-scripts/config/webpack.config.dev.js @@ -185,7 +185,11 @@ module.exports = { { test: /\.(ts|tsx)$/, include: paths.appSrc, - loader: require.resolve('ts-loader'), + loader: require.resolve('awesome-typescript-loader'), + query: { + useBabel: true, + configFileName: paths.appTsConfig, + }, }, // "postcss" loader applies autoprefixer to our CSS. // "css" loader resolves paths in CSS and adds assets as dependencies. diff --git a/packages/react-scripts/config/webpack.config.prod.js b/packages/react-scripts/config/webpack.config.prod.js index b710f480e..c064eebd2 100644 --- a/packages/react-scripts/config/webpack.config.prod.js +++ b/packages/react-scripts/config/webpack.config.prod.js @@ -175,7 +175,11 @@ module.exports = { { test: /\.(ts|tsx)$/, include: paths.appSrc, - loader: require.resolve('ts-loader'), + loader: require.resolve('awesome-typescript-loader'), + query: { + useBabel: true, + configFileName: paths.appTsConfig, + }, }, // The notation here is somewhat confusing. // "postcss" loader applies autoprefixer to our CSS. diff --git a/packages/react-scripts/package.json b/packages/react-scripts/package.json index c07d29388..f08df6214 100644 --- a/packages/react-scripts/package.json +++ b/packages/react-scripts/package.json @@ -22,8 +22,9 @@ "react-scripts-ts": "./bin/react-scripts-ts.js" }, "dependencies": { - "autoprefixer": "7.1.0", "app-root-path": "^2.0.1", + "autoprefixer": "7.1.0", + "awesome-typescript-loader": "^3.1.3", "case-sensitive-paths-webpack-plugin": "2.0.0", "chalk": "1.1.3", "cli-highlight": "1.1.4", @@ -38,10 +39,11 @@ "postcss-flexbugs-fixes": "3.0.0", "postcss-loader": "2.0.5", "promise": "7.1.1", + "source-map-loader": "^0.2.1", "react-dev-utils": "^2.0.1", "react-error-overlay": "^1.0.6", "style-loader": "0.17.0", - "ts-loader": "^2.0.3", + "sw-precache-webpack-plugin": "0.9.1", "tslint": "^5.2.0", "tslint-loader": "^3.5.3", "tslint-react": "^3.0.0", diff --git a/packages/react-scripts/template/tsconfig.json b/packages/react-scripts/template/tsconfig.json index d4627d98a..d98b3ff99 100644 --- a/packages/react-scripts/template/tsconfig.json +++ b/packages/react-scripts/template/tsconfig.json @@ -20,6 +20,7 @@ "exclude": [ "node_modules", "build", + "config", "scripts", "acceptance-tests", "webpack", From 83664c11fe7dfb98f840e2fa0c002c068fc8483d Mon Sep 17 00:00:00 2001 From: Matthew Leffler Date: Mon, 3 Jul 2017 18:02:06 -0600 Subject: [PATCH 2/5] Use typescript-babel-jest for Jest + Relay support --- package.json | 3 ++- packages/react-scripts/scripts/utils/createJestConfig.js | 2 +- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/package.json b/package.json index 9e477609c..391fa52d8 100644 --- a/package.json +++ b/package.json @@ -23,7 +23,8 @@ "lerna": "2.0.0-beta.38", "lerna-changelog": "^0.2.3", "lint-staged": "^3.3.1", - "prettier": "^0.21.0" + "prettier": "^0.21.0", + "typescript-babel-jest": "^1.0.4" }, "lint-staged": { "*.js": [ diff --git a/packages/react-scripts/scripts/utils/createJestConfig.js b/packages/react-scripts/scripts/utils/createJestConfig.js index aca7188ed..87b56e459 100644 --- a/packages/react-scripts/scripts/utils/createJestConfig.js +++ b/packages/react-scripts/scripts/utils/createJestConfig.js @@ -35,7 +35,7 @@ module.exports = (resolve, rootDir) => { testURL: 'http://localhost', transform: { '^.+\\.css$': resolve('config/jest/cssTransform.js'), - '^.+\\.tsx?$': resolve('config/jest/typescriptTransform.js'), + '^.+\\.tsx?$': 'typescript-babel-jest', '^(?!.*\\.(css|json)$)': resolve('config/jest/fileTransform.js'), }, transformIgnorePatterns: [ From c1e70609a0b67bcb5aadfdce6272b069cfd8d1d5 Mon Sep 17 00:00:00 2001 From: Matthew Leffler Date: Mon, 21 Aug 2017 18:27:52 -0600 Subject: [PATCH 3/5] Add explicit loader-utils dependency to fix error: ./src/index.tsx Module build failed: TypeError: loaderUtils.getOptions is not a function --- packages/react-scripts/package.json | 1 + 1 file changed, 1 insertion(+) diff --git a/packages/react-scripts/package.json b/packages/react-scripts/package.json index c10e222d4..8289cebae 100644 --- a/packages/react-scripts/package.json +++ b/packages/react-scripts/package.json @@ -35,6 +35,7 @@ "fs-extra": "3.0.1", "html-webpack-plugin": "2.28.0", "jest": "20.0.3", + "loader-utils": ">=1.0.0", "object-assign": "4.1.1", "postcss-flexbugs-fixes": "3.0.0", "postcss-loader": "2.0.5", From 4832ae257fcfdf51bf016dbbb76a95a24998f920 Mon Sep 17 00:00:00 2001 From: Matthew Leffler Date: Mon, 25 Sep 2017 16:37:54 -0600 Subject: [PATCH 4/5] =?UTF-8?q?Don=E2=80=99t=20pin=20to=20specific=20webpa?= =?UTF-8?q?ck=20version?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- packages/react-scripts/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/react-scripts/package.json b/packages/react-scripts/package.json index cc735e5d5..151bcdd71 100644 --- a/packages/react-scripts/package.json +++ b/packages/react-scripts/package.json @@ -47,7 +47,7 @@ "source-map-loader": "^0.2.1", "sw-precache-webpack-plugin": "0.11.4", "url-loader": "0.5.9", - "webpack": "3.5.1", + "webpack": "^3.5.1", "webpack-dev-server": "2.7.1", "webpack-manifest-plugin": "1.2.1", "whatwg-fetch": "2.0.3" From 5349ba563cb5ef1de648c8da6c53020d9952ad4c Mon Sep 17 00:00:00 2001 From: Matthew Leffler Date: Thu, 28 Dec 2017 12:12:36 -0700 Subject: [PATCH 5/5] Use React 16.2 + Typescript 2.6.2 for fragments --- packages/react-scripts/package.json | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/packages/react-scripts/package.json b/packages/react-scripts/package.json index 151bcdd71..ca5649a3e 100644 --- a/packages/react-scripts/package.json +++ b/packages/react-scripts/package.json @@ -43,7 +43,7 @@ "tslint": "^5.2.0", "tslint-loader": "^3.5.3", "tslint-react": "^3.0.0", - "typescript": "~2.4.0", + "typescript": ">=2.6.2", "source-map-loader": "^0.2.1", "sw-precache-webpack-plugin": "0.11.4", "url-loader": "0.5.9", @@ -53,8 +53,8 @@ "whatwg-fetch": "2.0.3" }, "devDependencies": { - "react": "^15.5.4", - "react-dom": "^15.5.4" + "react": ">=16.0.0", + "react-dom": ">=16.0.0" }, "optionalDependencies": { "fsevents": "1.1.2" pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy