Skip to content
Snippets Groups Projects
Select Git revision
  • 4624b6f969685736d1e9762985d438f12e671f15
  • mui5-annotation-on-video-stable default
  • get_setter_canvasSizeInformations
  • fix-error-div-into-p
  • annotation-on-video-v2
  • detached
  • annotation-on-video-r17
  • mui5
  • mui5-react-18
  • jacob-test
  • annotation-on-video protected
  • master
  • test-antoinev1
  • 20-fetch-thumbnail-on-annotation
  • add-research-field
  • Save
  • add-plugin
  • 14-wip-no-seek-to
  • 14-bug-on-video-time-control
  • 9_wip_videotests
  • _upgrade_material_ui
  • latest-tetras-16
  • v3.3.0
  • v3.2.0
  • v3.1.1
  • v3.1.0
  • v3.0.0
  • v3.0.0-rc.7
  • v3.0.0-rc.6
  • v3.0.0-rc.5
  • v3.0.0-rc.4
  • v3.0.0-rc.3
  • v3.0.0-rc.2
  • v3.0.0-rc.1
  • v3.0.0-beta.10
  • v3.0.0-beta.9
  • v3.0.0-beta.8
  • v3.0.0-beta.7
  • v3.0.0-beta.6
  • v3.0.0-beta.5
  • v3.0.0-beta.3
41 results

ThumbnailCanvasGrouping.js

Blame
  • webpack.config.js 1.43 KiB
    const path = require('path');
    const webpack = require('webpack');
    const TerserPlugin = require('terser-webpack-plugin');
    const paths = require('./config/paths');
    
    const babelLoaderConfig = {
      include: paths.appPath, // CRL
      loader: require.resolve('babel-loader'),
      options: {
        // Save disk space when time isn't as important
        cacheCompression: true,
        cacheDirectory: true,
        compact: true,
      },
      test: /\.(js|mjs|jsx)$/,
    };
    const baseConfig = [
      {
        entry: ['./src/polyfills.js', './src/index.js'],
        module: {
          rules: [
            babelLoaderConfig,
            {
              test: /\.css$/i,
              use: ['style-loader', 'css-loader'],
            },
          ],
        },
        optimization: {
          minimizer: [
            new TerserPlugin({
              extractComments: true,
            }),
          ],
        },
        output: {
          filename: 'mirador.min.js',
          library: 'Mirador',
          libraryExport: 'default',
          libraryTarget: 'umd',
          path: path.join(__dirname, 'dist'),
        },
        plugins: [
          new webpack.IgnorePlugin({
            resourceRegExp: /@blueprintjs\/(core|icons)/, // ignore optional UI framework dependencies
          }),
        ],
        resolve: { extensions: ['.js'] },
      },
    ];
    
    module.exports = (env, options) => {
      const isProduction = options.mode === 'production';
      return baseConfig.map((config) => {
        config.devtool = !isProduction ? 'eval-source-map' : false; // eslint-disable-line no-param-reassign
        return config;
      });
    };