-
Notifications
You must be signed in to change notification settings - Fork 0
/
webpack.config.js
86 lines (68 loc) · 2.96 KB
/
webpack.config.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
/*
* becvar-site frontend webpack builder
*/
const Encore = require('@symfony/webpack-encore');
Encore
// set build path
.setOutputPath('public/build/')
.setPublicPath('/build')
// register common assets
.addEntry('scrollbar-css', './assets/css/scrollbar.css')
.addEntry('page-loading-css', './assets/css/page-loading.css')
.addEntry('page-loading-js', './assets/js/page-loading.js')
// register public-page assets
.addEntry('public-css', './assets/css/public.css')
.addEntry('public-js', './assets/js/public.js')
// registr admin-page assets
.addEntry('admin-css', './assets/css/admin.css')
// register error-page assets
.addEntry('error-page-css', './assets/css/error-page.css')
// register code-paste assets
.addEntry('atom-one-dark-css', './assets/css/atom-one-dark.css')
.addEntry('paste-add-css', './assets/css/paste-add.css')
.addEntry('paste-view-css', './assets/css/paste-view.css')
.addEntry('code-paste-js', './assets/js/code-paste.js')
// register lightgallery
.addEntry('lightgallery-css', './assets/lightgallery/css/lightgallery.css')
.addEntry('lg-transitions-css', './assets/lightgallery/css/lg-transitions.css')
.addEntry('lightgallery-js', './assets/lightgallery/js/lightgallery.js')
.addEntry('lg-autoplay-js', './assets/lightgallery/js/lg-autoplay.js')
.addEntry('lg-zoom-js', './assets/lightgallery/js/lg-zoom.js')
// register bootstrap
.addEntry('bootstrap-css', './node_modules/bootstrap/dist/css/bootstrap.css')
.addEntry('bootstrap-js', './node_modules/bootstrap/dist/js/bootstrap.bundle.js')
.addEntry('bootstrap-icons-css', './node_modules/bootstrap-icons/font/bootstrap-icons.css')
// register boxicons
.addEntry('boxicons-css', './node_modules/boxicons/css/boxicons.css')
// register fontawesome
.addEntry('fontawesome-css', './node_modules/@fortawesome/fontawesome-free/css/all.css')
// register purecounter
.addEntry('purecounter-js', './assets/js/purecounter.js')
// register waypoints
.addEntry('skills-progress-js', './assets/js/skills-progress.js')
// register visitor status updater
.addEntry('update-visitor-status-js', './assets/js/update-visitor-status.js')
// register admin chat function
.addEntry('admin-chat-js', './assets/js/admin-chat.js')
// register admin terminal function
.addEntry('admin-terminal', './assets/js/admin-terminal.js')
// copy static assets
.copyFiles(
{
from: './assets/img',
to: 'images/[path][name].[ext]'
}
)
// other webpack configs
.splitEntryChunks()
.enableSingleRuntimeChunk()
.cleanupOutputBeforeBuild()
.enableBuildNotifications()
.enableSourceMaps(!Encore.isProduction())
.enableVersioning(Encore.isProduction())
.configureBabelPresetEnv((config) => {
config.useBuiltIns = 'usage';
config.corejs = '3.23';
})
;
module.exports = Encore.getWebpackConfig();