diff --git a/cvat-canvas/webpack.config.js b/cvat-canvas/webpack.config.js index 2420c5e4..96723247 100644 --- a/cvat-canvas/webpack.config.js +++ b/cvat-canvas/webpack.config.js @@ -60,10 +60,12 @@ const webConfig = { target: 'web', mode: 'production', devtool: 'source-map', - entry: './src/typescript/canvas.ts', + entry: { + 'cvat-canvas': './src/typescript/canvas.ts', + }, output: { path: path.resolve(__dirname, 'dist'), - filename: 'cvat-canvas.js', + filename: '[name].[contenthash].js', library: 'canvas', libraryTarget: 'window', }, diff --git a/cvat-core/webpack.config.js b/cvat-core/webpack.config.js index 6e16f46a..99b9e64d 100644 --- a/cvat-core/webpack.config.js +++ b/cvat-core/webpack.config.js @@ -30,10 +30,12 @@ const webConfig = { target: 'web', mode: 'production', devtool: 'source-map', - entry: './src/api.js', + entry: { + 'cvat-core': './src/api.js', + }, output: { path: path.resolve(__dirname, 'dist'), - filename: 'cvat-core.min.js', + filename: '[name].[contenthash].min.js', library: 'cvat', libraryTarget: 'window', }, @@ -58,7 +60,7 @@ const webConfig = { loader: 'worker-loader', options: { publicPath: '/static/engine/js/3rdparty/', - name: '[name].js', + name: '[name].[contenthash].js', }, }, }, { @@ -68,7 +70,7 @@ const webConfig = { loader: 'worker-loader', options: { publicPath: '/static/engine/js/', - name: '[name].js', + name: '[name].[contenthash].js', }, }, }, diff --git a/cvat-data/webpack.config.js b/cvat-data/webpack.config.js index 1b3d09f7..298f6747 100644 --- a/cvat-data/webpack.config.js +++ b/cvat-data/webpack.config.js @@ -9,10 +9,12 @@ const CopyPlugin = require('copy-webpack-plugin'); const cvatData = { target: 'web', mode: 'production', - entry: './src/js/cvat-data.js', + entry: { + 'cvat-data': './src/js/cvat-data.js', + }, output: { path: path.resolve(__dirname, 'dist'), - filename: 'cvat-data.min.js', + filename: '[name].[contenthash].min.js', library: 'cvatData', libraryTarget: 'window', }, @@ -39,7 +41,7 @@ const cvatData = { loader: 'worker-loader', options: { publicPath: '/', - name: '[name].js', + name: '[name].[contenthash].js', }, }, }, { @@ -48,7 +50,7 @@ const cvatData = { loader: 'worker-loader', options: { publicPath: '/3rdparty/', - name: '3rdparty/[name].js', + name: '3rdparty/[name].[contenthash].js', }, }, }, diff --git a/cvat-ui/src/index.html b/cvat-ui/src/index.html index fa8b191f..b115e93b 100644 --- a/cvat-ui/src/index.html +++ b/cvat-ui/src/index.html @@ -15,6 +15,5 @@
- diff --git a/cvat-ui/webpack.config.js b/cvat-ui/webpack.config.js index 96b0e27d..c7423db8 100644 --- a/cvat-ui/webpack.config.js +++ b/cvat-ui/webpack.config.js @@ -14,10 +14,13 @@ module.exports = { target: 'web', mode: 'production', devtool: 'source-map', - entry: './src/index.tsx', + entry: { + 'cvat-ui': './src/index.tsx', + }, output: { path: path.resolve(__dirname, 'dist'), - filename: 'cvat-ui.min.js', + filename: '[name].[contenthash].min.js', + publicPath: '/', }, devServer: { contentBase: path.join(__dirname, 'dist'), @@ -79,7 +82,7 @@ module.exports = { loader: 'worker-loader', options: { publicPath: '/', - name: '3rdparty/[name].js', + name: '3rdparty/[name].[contenthash].js', }, }, }, { @@ -89,7 +92,7 @@ module.exports = { loader: 'worker-loader', options: { publicPath: '/', - name: '[name].js', + name: '[name].[contenthash].js', }, }, },], @@ -97,7 +100,7 @@ module.exports = { plugins: [ new HtmlWebpackPlugin({ template: "./src/index.html", - inject: false, + inject: 'body', }), new Dotenv({ systemvars: true,