Skip to content

Commit 394c587

Browse files
committed
Inserting start script
1 parent 8ce6a7b commit 394c587

File tree

5 files changed

+2447
-51
lines changed

5 files changed

+2447
-51
lines changed
Lines changed: 50 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,50 @@
1+
"use strict";
2+
3+
const HtmlWebpackPlugin = require("html-webpack-plugin");
4+
const resolverPath = require("../utils/resolverPath");
5+
6+
const APP_PATH = resolverPath("src/dev");
7+
8+
const config = {
9+
entry: APP_PATH,
10+
mode: "development",
11+
resolve: {
12+
modules: ["node_modules", "src/lib"],
13+
extensions: [".ts", ".tsx", ".js", ".json"]
14+
},
15+
module: {
16+
rules: [
17+
{
18+
test: /\.(ts|js)x?$/,
19+
loader: "babel-loader",
20+
exclude: /node_modules/,
21+
options: {
22+
presets: [require.resolve("babel-preset-react-app")]
23+
}
24+
},
25+
{
26+
test: /\.svg$/,
27+
loader: "svg-inline-loader"
28+
},
29+
{
30+
test: /\.scss$/,
31+
use: ["style-loader", "css-loader", "sass-loader"]
32+
},
33+
{
34+
test: /\.css$/,
35+
use: ["style-loader", "css-loader"]
36+
}
37+
]
38+
},
39+
40+
plugins: [
41+
new HtmlWebpackPlugin({
42+
inject: true,
43+
template: `${APP_PATH}/index.html`
44+
})
45+
],
46+
47+
optimization: { minimize: false }
48+
};
49+
50+
module.exports = config;

packages/react-library-scripts/package.json

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,10 @@
1919
"@babel/plugin-transform-runtime": "^7.6.2",
2020
"@babel/preset-env": "^7.6.3",
2121
"@babel/preset-react": "^7.6.3",
22-
"babel-plugin-module-resolver": "^3.2.0"
22+
"babel-plugin-module-resolver": "^3.2.0",
23+
"html-webpack-plugin": "^3.2.0",
24+
"open": "^7.0.0",
25+
"webpack": "^4.41.2",
26+
"webpack-dev-server": "^3.9.0"
2327
}
2428
}
Lines changed: 24 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,26 @@
11
"use strict";
22

3-
console.log("start");
3+
process.env.BABEL_ENV = "development";
4+
process.env.NODE_ENV = "development";
5+
6+
const Webpack = require("webpack");
7+
const WebpackDevServer = require("webpack-dev-server");
8+
const open = require("open");
9+
const config = require("../configs/webpack.config.js");
10+
const verifyPort = require("../utils/verifyPort");
11+
const resolverPath = require("../utils/resolverPath");
12+
13+
const APP_PATH = resolverPath("src/dev");
14+
15+
const compiler = Webpack(config);
16+
const server = new WebpackDevServer(compiler, {
17+
contentBase: APP_PATH,
18+
hot: true
19+
});
20+
21+
const PORT = process.env.PORT || 3000;
22+
const baseUrl = "http://localhost";
23+
24+
verifyPort(PORT, baseUrl, newPort => {
25+
server.listen(newPort, "localhost", () => open(`${baseUrl}:${newPort}`));
26+
});
Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
const net = require("net");
2+
3+
const portChecker = (port, base, callback) => {
4+
const server = net.createServer(socket => {
5+
socket.write("Echo server\r\n");
6+
socket.pipe(socket);
7+
});
8+
9+
server.listen(port, base);
10+
11+
server.on("error", () => {
12+
portChecker(port + 1, base, newPort => callback(newPort));
13+
});
14+
15+
server.on("listening", () => {
16+
server.close();
17+
callback(port);
18+
});
19+
};
20+
21+
module.exports = portChecker;

0 commit comments

Comments
 (0)