Spaces:
Build error
Build error
var path = require("path"); | |
// Custom webpack rules are generally the same for all webpack bundles, hence | |
// stored in a separate local variable. | |
var rules = [ | |
{ | |
test: /\.module.css$/, | |
use: [ | |
"style-loader", | |
{ | |
loader: "css-loader", | |
options: { | |
modules: true, | |
}, | |
}, | |
], | |
}, | |
{ test: /^((?!\.module).)*.css$/, use: ["style-loader", "css-loader"] }, | |
{ | |
test: /\.(js|ts|tsx)$/, | |
exclude: /node_modules/, | |
loaders: "babel-loader", | |
options: { | |
presets: [ | |
"@babel/preset-react", | |
"@babel/preset-env", | |
"@babel/preset-typescript", | |
], | |
plugins: ["@babel/plugin-proposal-class-properties"], | |
}, | |
}, | |
]; | |
var extensions = [".js", ".ts", ".tsx"]; | |
module.exports = [ | |
{ | |
// Notebook extension | |
// | |
// This bundle only contains the part of the JavaScript that is run on | |
// load of the notebook. This section generally only performs | |
// some configuration for requirejs, and provides the legacy | |
// "load_ipython_extension" function which is required for any notebook | |
// extension. | |
// | |
mode: "production", | |
entry: "./src/extension.js", | |
output: { | |
filename: "extension.js", | |
path: path.resolve(__dirname, "..", "..", "widget", "static"), | |
libraryTarget: "amd", | |
}, | |
resolveLoader: { | |
modules: ["../node_modules"], | |
extensions: extensions, | |
}, | |
resolve: { | |
modules: ["../node_modules"], | |
}, | |
externals: ["moment"], // Removes unused dependency-of-dependency | |
}, | |
{ | |
// Bundle for the notebook containing the custom widget views and models | |
// | |
// This bundle contains the implementation for the custom widget views and | |
// custom widget. | |
// It must be an amd module | |
// | |
mode: "production", | |
entry: "./src/index.js", | |
output: { | |
filename: "index.js", | |
path: path.resolve(__dirname, "..", "..", "widget", "static"), | |
libraryTarget: "amd", | |
}, | |
module: { | |
rules: rules, | |
}, | |
resolveLoader: { | |
modules: ["../node_modules"], | |
}, | |
resolve: { | |
modules: ["../node_modules"], | |
extensions: extensions, | |
}, | |
externals: ["@jupyter-widgets/base", "moment"], | |
}, | |
]; | |