123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119 |
- var Encore = require('@symfony/webpack-encore');
- const CopyWebpackPlugin = require('copy-webpack-plugin');
- const FileManagerPlugin = require('filemanager-webpack-plugin');
- Encore
- .setOutputPath('public/build/')
- .setManifestKeyPrefix('public/build/')
- .setPublicPath('../')
- .cleanupOutputBeforeBuild()
- .addEntry('app', './assets/js/app.js')
- .addEntry('bootstrap', './assets/js/bootstrap.js')
- .addEntry('exercise', './assets/js/exercise.js')
- .addEntry('free-jqgrid', './assets/js/free-jqgrid.js')
- .addStyleEntry('css/app', './assets/css/app.scss')
- .addStyleEntry('css/bootstrap', './assets/css/bootstrap.scss')
- .addStyleEntry('css/chat', './assets/css/chat.css')
- .addStyleEntry('css/document', './assets/css/document.css')
- .addStyleEntry('css/editor', './assets/css/editor.css')
- .addStyleEntry('css/editor_content', './assets/css/editor_content.css')
- .addStyleEntry('css/markdown', './assets/css/markdown.css')
- .addStyleEntry('css/print', './assets/css/print.css')
- .addStyleEntry('css/responsive', './assets/css/responsive.css')
- .addStyleEntry('css/scorm', './assets/css/scorm.css')
- .enableSingleRuntimeChunk()
- .enableSourceMaps(!Encore.isProduction())
- // .enableVersioning(Encore.isProduction())
- .enableSassLoader()
- .enableVueLoader()
- .autoProvidejQuery()
- .copyFiles([
- {
- from: './node_modules/multiselect-two-sides/dist/js',
- pattern: /(multiselect.js)$/,
- to: 'libs/multiselect-two-sides/dist/js/multiselect.js'
- },
- {
- from: './node_modules/pwstrength-bootstrap/dist/',
- pattern: /(pwstrength-bootstrap.js)$/,
- to: 'libs/pwstrength-bootstrap/dist/pwstrength-bootstrap.js'
- },
- {
- from: './node_modules/readmore-js',
- pattern: /(readmore.js)$/,
- to: 'libs/readmore-js/readmore.js'
- },
- {
- from: './node_modules/js-cookie/src/',
- pattern: /(js.cookie.js)$/,
- to: 'libs/js-cookie/src/js.cookie.js'
- },
- {
- from: './node_modules/mathjax/',
- pattern: /(MathJax.js)$/,
- to: 'libs/mathjax/MathJax.js'
- },
- ])
- ;
- Encore.addPlugin(new CopyWebpackPlugin([
- {
- from: './node_modules/mediaelement/build',
- to: 'libs/mediaelement'
- },
- {
- from: './node_modules/mediaelement-plugins/dist',
- to: 'libs/mediaelement/plugins'
- },
- {
- from: './node_modules/mathjax/config',
- to: 'libs/mathjax/config'
- },
- ]));
- // Encore.addPlugin(new copyWebpackPlugin([{
- // from: 'assets/css/themes/' + theme + '/images',
- // to: 'css/themes/' + theme + '/images'
- // };
- var themes = [
- 'chamilo'
- ];
- // Add Chamilo themes
- themes.forEach(function (theme) {
- Encore.addStyleEntry('css/themes/' + theme + '/default', './assets/css/themes/' + theme + '/default.css');
- // Copy images from themes into public/build
- Encore.addPlugin(new CopyWebpackPlugin([{
- from: 'assets/css/themes/' + theme + '/images',
- to: 'css/themes/' + theme + '/images'
- },
- ]));
- });
- // Fix free-jqgrid languages files
- Encore.addPlugin(new FileManagerPlugin({
- onEnd: {
- move: [
- {
- source: './public/public/build/free-jqgrid/',
- destination: './public/build/free-jqgrid/'
- }
- ],
- delete: [
- './public/public/'
- ]
- }
- }));
- module.exports = Encore.getWebpackConfig();
|