Skip to content
This repository was archived by the owner on Mar 17, 2025. It is now read-only.

Commit 2310d27

Browse files
Merge pull request #19 from helloextend/refactor/update-build-configs
update webpack, jest, yarn configs
2 parents 4ce53bc + 437f17d commit 2310d27

File tree

11 files changed

+5246
-4867
lines changed

11 files changed

+5246
-4867
lines changed

.gitignore

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,6 @@ dist/
33
node_modules/
44
coverage/
55
src/**/*.jsx
6-
tests/__coverage__/
6+
__mocks__/
77
tests/**/*.jsx
88
.DS_Store

configs/jest.config.js

Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
const { defaults: tsjPreset } = require('ts-jest/presets')
2+
3+
module.exports = {
4+
"rootDir": "..",
5+
"coverageDirectory": "<rootDir>/__mocks__/__coverage__/",
6+
"clearMocks": true,
7+
"setupFiles": [
8+
"<rootDir>/__mocks__/shim.js"
9+
],
10+
setupFilesAfterEnv: ['jest-enzyme'],
11+
testEnvironment: 'enzyme',
12+
"moduleNameMapper": {
13+
'\\.(jpg|jpeg|png|gif|eot|otf|webp|svg|ttf|woff|woff2|mp4|webm|wav|mp3|m4a|aac|oga)$':
14+
'<rootDir>/__mocks__/fileMock.js',
15+
'\\.(css|less|scss)$': '<rootDir>/__mocks__/styleMock.js',
16+
},
17+
"moduleFileExtensions": ["ts", "tsx", "js", "jsx"],
18+
"transform": {
19+
...tsjPreset.transform,
20+
},
21+
"transformIgnorePatterns": [
22+
"/node_modules/"
23+
],
24+
"testRegex": ".*\.test\.(ts|tsx)$",
25+
"moduleDirectories": [
26+
"node_modules"
27+
],
28+
"globals": {
29+
"DEVELOPMENT": false,
30+
"FAKE_SERVER": false
31+
}
32+
}

configs/jest.json

Lines changed: 0 additions & 30 deletions
This file was deleted.

configs/jest.preprocessor.js

Lines changed: 0 additions & 22 deletions
This file was deleted.

configs/webpack/common.js

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,9 @@ const HtmlWebpackPlugin = require('html-webpack-plugin')
66
module.exports = {
77
resolve: {
88
extensions: ['.ts', '.tsx', '.js', '.jsx'],
9+
alias: {
10+
'react-dom': '@hot-loader/react-dom'
11+
}
912
},
1013
context: resolve(__dirname, '../../src'),
1114
module: {

configs/webpack/dev.js

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,6 @@ const commonConfig = require('./common')
66
module.exports = merge(commonConfig, {
77
mode: 'development',
88
entry: [
9-
'react-hot-loader/patch', // activate HMR for React
109
'webpack-dev-server/client?http://localhost:8080', // bundle the client for webpack-dev-server and connect to the provided endpoint
1110
'webpack/hot/only-dev-server', // bundle the client for hot reloading, only- means to only hot reload for successful updates
1211
'./index.tsx', // the entry point of our app

jest.config.js

Lines changed: 0 additions & 13 deletions
This file was deleted.

package.json

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@
1212
"lint": "tslint './src/**/*.ts*' --format stylish --project . --force",
1313
"start": "yarn run start-dev",
1414
"start-dev": "webpack-dev-server --config=configs/webpack/dev.js",
15-
"test": "jest --watch --coverage --config=jest.config.js"
15+
"test": "jest --watch --coverage --config=configs/jest.config.js"
1616
},
1717
"devDependencies": {
1818
"@babel/cli": "^7.6.4",
@@ -31,7 +31,7 @@
3131
"file-loader": "^4.2.0",
3232
"html-webpack-plugin": "^3.2.0",
3333
"image-webpack-loader": "^6.0.0",
34-
"jest": "^24.9.0",
34+
"jest": "^26.6.3",
3535
"jest-environment-enzyme": "^7.1.1",
3636
"jest-enzyme": "^7.1.1",
3737
"node-sass": "^4.13.1",
@@ -41,7 +41,8 @@
4141
"sass-loader": "^8.0.0",
4242
"source-map-loader": "^0.2.4",
4343
"style-loader": "^1.0.0",
44-
"ts-jest": "^24.1.0",
44+
"terser-webpack-plugin": "^5.1.1",
45+
"ts-jest": "^26.5.4",
4546
"tslint": "^5.20.0",
4647
"typescript": "^3.6.4",
4748
"uglifyjs-webpack-plugin": "^2.2.0",
@@ -54,6 +55,7 @@
5455
"dependencies": {
5556
"@emotion/core": "^10.0.22",
5657
"@emotion/styled": "^10.0.22",
58+
"@hot-loader/react-dom": "16.10.2",
5759
"react-hot-loader": "^4.12.15",
5860
"react-redux": "^7.1.1",
5961
"redux": "^4.0.4"

src/components/App.tsx

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,4 @@
11
import React, { FC } from 'react'
2-
import { hot } from 'react-hot-loader/root'
32
import styled from '@emotion/styled'
43
import Header from './Header'
54

@@ -19,4 +18,4 @@ const Container = styled.div({
1918
paddingTop: '60px',
2019
})
2120

22-
export default hot(App)
21+
export default App

src/index.html

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@
1616
<body>
1717
<noscript>For the best experience, please enable JavaScript</noscript>
1818
<div id="root"></div>
19-
<script src="https://cdnjs.cloudflare.com/ajax/libs/react/16.10.2/umd/react.development.js" integrity="sha256-Fy0+oh76u+dih9imNzr0Ka1RHbVKV8o4nR+p8s6wTXE=" crossorigin="anonymous"></script>
20-
<script src="https://cdnjs.cloudflare.com/ajax/libs/react-dom/16.10.2/umd/react-dom.development.js" integrity="sha256-ZMB3rvxm3yr+lN12NcNAJbw6JQWFah3Qx3s3XH1Z0P8=" crossorigin="anonymous"></script>
19+
<script crossorigin src="https://unpkg.com/react@17/umd/react.development.js"></script>
20+
<script crossorigin src="https://unpkg.com/react-dom@17/umd/react-dom.development.js"></script>
2121
</body>
2222
</html>

0 commit comments

Comments
 (0)