-
-
Notifications
You must be signed in to change notification settings - Fork 120
/
nova.mix.js
38 lines (32 loc) · 914 Bytes
/
nova.mix.js
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
26
27
28
29
30
31
32
33
34
35
36
37
38
const mix = require('laravel-mix');
const webpack = require('webpack');
const path = require('path');
class NovaExtension {
name() {
return 'nova-extension';
}
register(name) {
this.name = name;
}
webpackPlugins() {
return new webpack.ProvidePlugin({
_: 'lodash',
Errors: 'form-backend-validation',
});
}
webpackConfig(webpackConfig) {
webpackConfig.externals = {
vue: 'Vue',
};
webpackConfig.resolve.alias = {
...(webpackConfig.resolve.alias || {}),
'laravel-nova': path.join(__dirname, 'vendor/laravel/nova/resources/js/mixins/packages.js'),
'laravel-nova-mixins': path.join(__dirname, 'vendor/laravel/nova/resources/js/mixins/index.js'),
'@': path.join(__dirname, 'vendor/laravel/nova/resources/js/'),
};
webpackConfig.output = {
uniqueName: this.name,
};
}
}
mix.extend('nova', new NovaExtension());