Skip to content

Commit

Permalink
chore: config webpack for dev & prod environment (#33)
Browse files Browse the repository at this point in the history
  • Loading branch information
pythonbrad authored Aug 21, 2024
1 parent 2438c22 commit e1f0af6
Show file tree
Hide file tree
Showing 11 changed files with 62 additions and 13 deletions.
6 changes: 1 addition & 5 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -33,10 +33,6 @@
},
"homepage": "https://github.com/pythonbrad/afrim-web#readme",
"devDependencies": {
"copy-webpack-plugin": "^11.0.0",
"prettier": "3.2.5",
"webpack": "^5.88.2",
"webpack-cli": "^5.1.4",
"webpack-dev-server": "^4.15.1"
"prettier": "3.2.5"
}
}
9 changes: 6 additions & 3 deletions packages/afrim-input/package.json
Original file line number Diff line number Diff line change
@@ -1,11 +1,11 @@
{
"name": "afrim-input",
"version": "0.1.0",
"version": "0.1.1",
"description": "A library that simplify the deployment of Afrim in any text field.",
"main": "dist/afrim_input.js",
"module": "src/index.js",
"scripts": {
"bundle": "webpack"
"bundle": "webpack --config webpack.prod.js"
},
"repository": {
"type": "git",
Expand All @@ -29,7 +29,10 @@
"textarea-caret": "^3.1.0"
},
"devDependencies": {
"ts-loader": "^9.5.1",
"typescript": "^5.5.4",
"webpack": "^5.88.2",
"webpack-cli": "^5.1.4"
"webpack-cli": "^5.1.4",
"webpack-merge": "^6.0.1"
}
}
5 changes: 4 additions & 1 deletion packages/afrim-input/src/bootstrap.js
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,9 @@
// that no one else needs to worry about it again.
import("./index.js")
.then((o) => {
if (process.env.NODE_ENV !== "production") {
console.log("[afrim-input] Looks like we are in development mode!");
}
window.Afrim = o.default;
})
.catch((e) => console.error("Error importing `index.js`:", e));
.catch((e) => console.error("Error importing `index.ts`:", e));
13 changes: 13 additions & 0 deletions packages/afrim-input/webpack.common.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
const path = require("path");

module.exports = {
entry: "./src/bootstrap.js",
output: {
path: path.resolve(__dirname, "dist"),
filename: "afrim_input.js",
clean: true,
},
experiments: {
asyncWebAssembly: true,
},
};
8 changes: 8 additions & 0 deletions packages/afrim-input/webpack.dev.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
const { merge } = require("webpack-merge");
const common = require("./webpack.common.js");

module.exports = merge(common, {
mode: "development",
devtool: "inline-source-map",
devServer: { static: "./dist" },
});
7 changes: 7 additions & 0 deletions packages/afrim-input/webpack.prod.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
const { merge } = require("webpack-merge");
const common = require("./webpack.common.js");

module.exports = merge(common, {
mode: "production",
devtool: "source-map",
});
7 changes: 4 additions & 3 deletions packages/afrim-playground/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -3,8 +3,8 @@
"private": true,
"description": "Playground to test the afrim input method.",
"scripts": {
"bundle": "webpack",
"start": "webpack-dev-server"
"bundle": "webpack --config webpack.prod.js",
"start": "webpack-dev-server --config webpack.dev.js"
},
"repository": {
"type": "git",
Expand All @@ -25,6 +25,7 @@
"copy-webpack-plugin": "^11.0.0",
"webpack": "^5.88.2",
"webpack-cli": "^5.1.4",
"webpack-dev-server": "^4.15.1"
"webpack-dev-server": "^4.15.1",
"webpack-merge": "^6.0.1"
}
}
3 changes: 3 additions & 0 deletions packages/afrim-playground/src/bootstrap.js
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,9 @@
// that no one else needs to worry about it again.
import("./index.js")
.then((o) => {
if (process.env.NODE_ENV !== "production") {
console.log("[afrim-playground] Looks like we are in development mode!");
}
window.Afrim = o.Afrim;
})
.catch((e) => console.error("Error importing `index.js`:", e));
Original file line number Diff line number Diff line change
Expand Up @@ -8,12 +8,12 @@ module.exports = {
filename: "index.js",
clean: true,
},
mode: "development",
plugins: [
new CopyWebpackPlugin({
patterns: [{ from: "src/index.html" }],
}),
],

experiments: {
asyncWebAssembly: true,
},
Expand Down
8 changes: 8 additions & 0 deletions packages/afrim-playground/webpack.dev.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
const { merge } = require("webpack-merge");
const common = require("./webpack.common.js");

module.exports = merge(common, {
mode: "development",
devtool: "inline-source-map",
devServer: { static: "./dist" },
});
7 changes: 7 additions & 0 deletions packages/afrim-playground/webpack.prod.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
const { merge } = require("webpack-merge");
const common = require("./webpack.common.js");

module.exports = merge(common, {
mode: "production",
devtool: "source-map",
});

0 comments on commit e1f0af6

Please sign in to comment.