const CKEditorWebpackPlugin = require( '@ckeditor/ckeditor5-dev-webpack-plugin' ); const { styles } = require( '@ckeditor/ckeditor5-dev-utils' ); buildCKEditor = function(encore) { encore .addPlugin( new CKEditorWebpackPlugin( { language: 'fr', addMainLanguageTranslationsToAllAssets: true, verbose: !encore.isProduction(), strict: true } ) ) // Use raw-loader for CKEditor 5 SVG files. .addRule( { test: /ckeditor5-[^/\\]+[/\\]theme[/\\]icons[/\\][^/\\]+\.svg$/, loader: 'raw-loader' } ) // Configure other image loaders to exclude CKEditor 5 SVG files. .configureLoaderRule( 'images', loader => { loader.exclude = /ckeditor5-[^/\\]+[/\\]theme[/\\]icons[/\\][^/\\]+\.svg$/; } ) // Configure PostCSS loader. .addLoader({ test: /ckeditor5-[^/\\]+[/\\]theme[/\\].+\.css$/, loader: 'postcss-loader', options: styles.getPostCssConfig( { themeImporter: { themePath: require.resolve('@ckeditor/ckeditor5-theme-lark') }, minify: true } ) } ) ; }; // Compile and loads all assets from the Chill Main Bundle module.exports = function(encore, entries) { // Push into "chill" entrypoint entries.push(__dirname + '/Resources/public/chill/index.js'); // Aliases are used when webpack is trying to resolve modules path encore.addAliases({ ChillMainAssets: __dirname + '/Resources/public', ShowHide: __dirname + '/Resources/public/lib/show_hide', Tabs: __dirname + '/Resources/public/lib/tabs' }); // Page entrypoints encore.addEntry('page_login', __dirname + '/Resources/public/page/login/index.js'); buildCKEditor(encore); // Modules entrypoints encore.addEntry('mod_forkawesome', __dirname + '/Resources/public/module/forkawesome/index.js'); encore.addEntry('mod_bootstrap', __dirname + '/Resources/public/module/bootstrap/index.js'); encore.addEntry('mod_ckeditor5', __dirname + '/Resources/public/module/ckeditor5/index.js'); encore.addEntry('mod_disablebuttons', __dirname + '/Resources/public/module/disable-buttons/index.js'); encore.addEntry('mod_input_address', __dirname + '/Resources/public/vuejs/Address/mod_input_address_index.js'); // Vue entrypoints encore.addEntry('vue_address', __dirname + '/Resources/public/vuejs/Address/index.js'); encore.addEntry('vue_onthefly', __dirname + '/Resources/public/vuejs/OnTheFly/index.js'); };