8
0

webpack.compat.config.js 1.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182
  1. /**
  2. * @license Copyright (c) 2003-2017, CKSource - Frederico Knabben. All rights reserved.
  3. * For licensing, see LICENSE.md.
  4. */
  5. 'use strict';
  6. const path = require( 'path' );
  7. const webpack = require( 'webpack' );
  8. const { bundler } = require( '@ckeditor/ckeditor5-dev-utils' );
  9. const BabiliPlugin = require( 'babili-webpack-plugin' );
  10. module.exports = {
  11. devtool: 'source-map',
  12. entry: [
  13. require.resolve( 'regenerator-runtime/runtime.js' ),
  14. path.resolve( __dirname, 'ckeditor.js' )
  15. ],
  16. output: {
  17. path: path.resolve( __dirname, 'build' ),
  18. filename: 'ckeditor.compat.js',
  19. libraryTarget: 'umd'
  20. },
  21. plugins: [
  22. new BabiliPlugin( null, {
  23. comments: false
  24. } ),
  25. new webpack.BannerPlugin( {
  26. banner: bundler.getLicenseBanner(),
  27. raw: true
  28. } )
  29. ],
  30. module: {
  31. rules: [
  32. {
  33. test: /\.js$/,
  34. use: [
  35. {
  36. loader: 'babel-loader',
  37. query: {
  38. presets: [
  39. [
  40. require( 'babel-preset-env' ),
  41. {
  42. targets: {
  43. browsers: [
  44. 'last 2 versions',
  45. 'ie >= 11'
  46. ]
  47. }
  48. }
  49. ]
  50. ]
  51. }
  52. }
  53. ]
  54. },
  55. {
  56. test: /\.svg$/,
  57. use: [ 'raw-loader' ]
  58. },
  59. {
  60. test: /\.scss$/,
  61. use: [
  62. 'style-loader',
  63. {
  64. loader: 'css-loader',
  65. options: {
  66. minimize: true
  67. }
  68. },
  69. 'sass-loader'
  70. ]
  71. }
  72. ]
  73. }
  74. };