-
Notifications
You must be signed in to change notification settings - Fork 3
Expand file tree
/
Copy pathwebpack.mix.js
More file actions
25 lines (21 loc) · 917 Bytes
/
webpack.mix.js
File metadata and controls
25 lines (21 loc) · 917 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
const mix = require('laravel-mix');
mix.setPublicPath('client/dist');
mix.setResourceRoot('../');
mix.sass('client/src/styles/simpler-silverstripe.scss', 'styles');
// Copy Vue 3 builds for import map usage (devs can use Vue in their own ES modules)
mix.copy('node_modules/vue/dist/vue.esm-browser.js', 'client/dist/js/vue.esm-browser.js');
mix.copy('node_modules/vue/dist/vue.esm-browser.prod.js', 'client/dist/js/vue.esm-browser.prod.js');
// Core bundle (always loaded): DOM events, React mount events, window.simpler
// Regular script - externals resolve to window globals (React, ReactDom, Injector)
mix.js('client/src/js/simpler-silverstripe.js', 'js').webpackConfig({
resolve: {
alias: {
'jquery': __dirname + '/client/src/js/jquery-shim.js',
}
},
externals: {
'react': 'React',
'react-dom': 'ReactDom',
'lib/Injector': 'Injector',
}
});