Skip to content

Instantly share code, notes, and snippets.

@kevinbarabash
Created June 12, 2016 02:41
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save kevinbarabash/8900a986f383366383f81922cb82bf30 to your computer and use it in GitHub Desktop.
Save kevinbarabash/8900a986f383366383f81922cb82bf30 to your computer and use it in GitHub Desktop.
webpack.config.js for require math-input without having to delete math-input's node_modules or .babelrc
const path = require("path");
const webpack = require("webpack");
const includeEditor = process.env.INCLUDE_EDITORS === "true";
const prod = process.env.NODE_ENV === "production";
module.exports = {
entry: "./src/" + (includeEditor ? "editor-" : "") + "perseus.js",
output: {
path: "./build",
filename: (includeEditor ? "editor-" : "") + "perseus.js",
library: "Perseus",
libraryTarget: "umd",
},
plugins: [
new webpack.DefinePlugin({
'process.env.NODE_ENV': `"${process.env.NODE_ENV}"`,
}),
],
resolve: {
alias: {
'react': path.join(__dirname, 'node_modules', 'react'),
'react-dom': path.join(__dirname, 'node_modules', 'react-dom'),
'react-addons-css-transition-group': path.join(__dirname, 'node_modules', 'react-addons-css-transition-group'),
'react-addons-create-fragment': path.join(__dirname, 'node_modules', 'react-addons-create-fragment'),
'aphrodite': path.join(__dirname, 'node_modules', 'aphrodite'),
},
},
module: {
loaders: [
{
test: /\.json$/,
loader: "json-loader",
},
{
test: /\.jsx?$/,
include: [
path.join(__dirname, "src/"),
path.join(__dirname, "math-input/src"),
path.join(__dirname, "node_modules/react-components/"),
],
// https://github.com/webpack/webpack/issues/119
loader: path.join(__dirname, "node/jsx-loader.js"),
},
{
test: /\.jison$/, loader: "jison-loader",
},
],
},
};
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment