forked from TypiCMS/Base
-
Notifications
You must be signed in to change notification settings - Fork 0
/
webpack.mix.js
105 lines (94 loc) · 2.15 KB
/
webpack.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
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
const mix = require('laravel-mix');
// var LiveReloadPlugin = require('webpack-livereload-plugin');
/**
* Compile CSS
*/
mix.sass('resources/scss/admin.scss', 'public/css');
mix.sass('resources/scss/public.scss', 'public/css');
/**
* Compile JS
*/
mix.js('resources/js/admin.js', 'public/js').vue();
mix.js('resources/js/public.js', 'public/js');
/**
* Copy CKEditor main files
*/
mix.copy('node_modules/ckeditor4/ckeditor.js', 'public/components/ckeditor4/ckeditor.js');
mix.copy('node_modules/ckeditor4/contents.css', 'public/components/ckeditor4/contents.css');
/**
* Copy CKEditor lang files
*/
mix.copy('node_modules/ckeditor4/lang/fr.js', 'public/components/ckeditor4/lang/fr.js');
mix.copy('node_modules/ckeditor4/lang/es.js', 'public/components/ckeditor4/lang/es.js');
mix.copy('node_modules/ckeditor4/lang/nl.js', 'public/components/ckeditor4/lang/nl.js');
mix.copy('node_modules/ckeditor4/lang/en.js', 'public/components/ckeditor4/lang/en.js');
/**
* Copy CKEditor plugins files
*/
var plugins = [
'clipboard',
'dialog',
'dialogadvtab',
'div',
'embed',
'embedbase',
'image',
'image2',
'justify',
'link',
'magicline',
'panelbutton',
'pastefromgdocs',
'pastefromlibreoffice',
'pastefromword',
'pastetools',
'scayt',
'showblocks',
'specialchar',
'table',
'tableselection',
'tabletools',
'widget',
];
plugins.forEach(function (plugin) {
mix.copy('node_modules/ckeditor4/plugins/' + plugin, 'public/components/ckeditor4/plugins/' + plugin);
});
/**
* Copy CKEditor skins files
*/
mix.copy('node_modules/ckeditor4/skins', 'public/components/ckeditor4/skins');
/**
* Versioning process
*/
mix.version();
/**
* BrowserSync
*/
mix.browserSync({
proxy: 'typicms.test',
open: false,
notify: false,
ui: false,
online: false,
browser: 'google chrome',
});
/**
* Options
*/
mix.options({
processCssUrls: false,
});
/**
* Livereload
*/
// mix.webpackConfig({
// plugins: [new LiveReloadPlugin()],
// });
/**
* Source maps
*/
// if (!mix.inProduction()) {
// mix.webpackConfig({
// devtool: 'source-map',
// }).sourceMaps();
// }