Skip to content
Snippets Groups Projects
Commit 45a5e785 authored by Eric Fischer's avatar Eric Fischer
Browse files

Correctly install and load webpacked studio-frontend

parent 1b63bd9c
No related merge requests found
......@@ -13,16 +13,11 @@
<%namespace name='static' file='static_content.html'/>
<%block name="header_extras">
% if waffle_flag_enabled:
<link rel="stylesheet" type="text/css" href="${static.url('common/css/vendor/studio-frontend.min.css')}" />
<script type="text/javascript" src="${static.url('common/js/vendor/assets.min.js')}" defer></script>
% else:
% for template_name in ["asset"]:
<script type="text/template" id="${template_name}-tpl">
<%static:include path="js/${template_name}.underscore" />
</script>
% endfor
% endif
</%block>
% if not waffle_flag_enabled:
......@@ -62,6 +57,7 @@
<div class="content-primary">
% if waffle_flag_enabled:
<div id="root"></div>
<%static:webpack entry="AssetsPage"></%static:webpack>
% else:
<div class="wrapper-assets"></div>
% endif
......
......@@ -64,10 +64,6 @@ NPM_INSTALLED_LIBRARIES = [
'requirejs/require.js',
'underscore.string/dist/underscore.string.js',
'underscore/underscore.js',
'@edx/studio-frontend/dist/assets.min.js',
'@edx/studio-frontend/dist/assets.min.js.map',
'@edx/studio-frontend/dist/studio-frontend.min.css',
'@edx/studio-frontend/dist/studio-frontend.min.css.map',
'which-country/index.js'
]
......
......@@ -5,9 +5,14 @@
var path = require('path');
var webpack = require('webpack');
var BundleTracker = require('webpack-bundle-tracker');
var ExtractTextPlugin = require('extract-text-webpack-plugin');
var StringReplace = require('string-replace-webpack-plugin');
var isProd = process.env.NODE_ENV === 'production';
var extractSass = new ExtractTextPlugin({
filename: 'css/[name].[contenthash].css',
disable: !isProd
});
var namespacedRequireFiles = [
path.resolve(__dirname, 'common/static/common/js/components/views/feedback_notification.js'),
......@@ -19,6 +24,7 @@ var wpconfig = {
entry: {
// Studio
AssetsPage: './node_modules/@edx/studio-frontend/src/index.jsx',
Import: './cms/static/js/features/import/factories/import.js',
StudioIndex: './cms/static/js/features_jsx/studio/index.jsx',
......@@ -43,6 +49,7 @@ var wpconfig = {
devtool: isProd ? false : 'source-map',
plugins: [
new ExtractTextPlugin('node_modules/@edx/studio-frontend/dist/studio-frontend.min.css'),
new webpack.NoEmitOnErrorsPlugin(),
new webpack.NamedModulesPlugin(),
new webpack.DefinePlugin({
......@@ -110,6 +117,42 @@ var wpconfig = {
],
use: 'babel-loader'
},
{
test: /\.(js|jsx)$/,
include: [
/studio-frontend/,
/paragon/
],
use: 'babel-loader'
},
{
test: /(.scss|.css)$/,
include: [
/studio-frontend/,
/paragon/,
/font-awesome/
],
use: extractSass.extract({
use: [{
loader: 'css-loader',
options: {
modules: true,
localIdentName: '[name]__[local]___[hash:base64:5]'
}
}, {
loader: 'sass-loader',
options: {
data: '$base-rem-size: 0.625; @import "paragon-reset";',
includePaths: [
path.join(__dirname, './node_modules/@edx/paragon/src/utils'),
path.join(__dirname, './node_modules/')
],
sourceMap: true
}
}],
fallback: 'style-loader'
})
},
{
test: /\.coffee$/,
exclude: /node_modules/,
......@@ -130,6 +173,10 @@ var wpconfig = {
'exports-loader?this.AjaxPrefix!../../../../common/static/coffee/src/ajax_prefix.coffee'
}
}
},
{
test: /\.(woff2?|ttf|svg|eot)(\?v=\d+\.\d+\.\d+)?$/,
loader: 'file-loader'
}
]
},
......
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment