123 lines
3.4 KiB
JavaScript
Vendored
123 lines
3.4 KiB
JavaScript
Vendored
import path from 'path'
|
|
import webpack from 'webpack'
|
|
import CopyWebpackPlugin from 'copy-webpack-plugin'
|
|
import { pathInfo, resolveAlias } from './dll.webpack.config.babel'
|
|
|
|
export default {
|
|
mode: 'production',
|
|
target: 'web',
|
|
entry: {
|
|
'core/common/js/xe.bundle': [
|
|
'xe',
|
|
pathInfo.common + '/js/lang.js',
|
|
pathInfo.common + '/js/progress.js',
|
|
pathInfo.common + '/js/request.js',
|
|
pathInfo.common + '/js/component.js'
|
|
],
|
|
|
|
'core/editor/editor.bundle': [
|
|
pathInfo.core + '/editor/index',
|
|
pathInfo.core + '/editor/textarea.define.js'
|
|
],
|
|
|
|
'core/common/js/draft': pathInfo.common + '/js/draft.js',
|
|
'core/common/js/dynamicField': pathInfo.common + '/js/dynamicField',
|
|
'core/common/js/storeCategory': pathInfo.common + '/js/storeCategory.js',
|
|
'core/lang/langEditorBox.bundle': pathInfo.lang + '/LangEditorBox.js',
|
|
'core/permission/permission.bundle': pathInfo.permission + '/permission.js',
|
|
'core/settings/js/admin.bundle': pathInfo.settings + '/js/admin.js',
|
|
'core/user/settings/edit': pathInfo.user + '/settings/edit.js',
|
|
|
|
// gulp assets:tree
|
|
// @FIXME
|
|
// @DEPRECATED
|
|
'core/common/js/xe.tree': pathInfo.core + '/tree/Tree.js'
|
|
},
|
|
output: {
|
|
path: pathInfo.root,
|
|
filename: 'assets/[name].js'
|
|
},
|
|
plugins: [
|
|
new webpack.DllReferencePlugin({
|
|
manifest: path.resolve(__dirname, './vendor-manifest.json')
|
|
}),
|
|
new webpack.DllReferencePlugin({
|
|
manifest: path.resolve(__dirname, './common-manifest.json')
|
|
}),
|
|
new CopyWebpackPlugin([
|
|
{
|
|
context: path.core,
|
|
from: './core/**/*',
|
|
to: path.resolve(__dirname, '../../assets'),
|
|
ignore: [
|
|
'**/*.scss',
|
|
'**/*.vue',
|
|
'core/**/errors/*.error.js',
|
|
'core/**/index.js',
|
|
'core/**/store.js',
|
|
'core/app.js',
|
|
'core/aspect.js',
|
|
'core/common.js',
|
|
'core/common/js/component.js',
|
|
'core/common/js/draft.js',
|
|
'core/common/js/dynamicField.js',
|
|
'core/common/js/dynamicLoadManager.js',
|
|
'core/common/js/griper.js',
|
|
'core/common/js/lang.js',
|
|
'core/common/js/progress.js',
|
|
'core/common/js/request.js',
|
|
'core/common/js/storeCategory.js',
|
|
'core/common/js/translator.js',
|
|
'core/common/js/utils.js',
|
|
'core/common/js/validator.js',
|
|
'core/common/js/xe.js',
|
|
'core/component.js',
|
|
'core/dynamic-load-manager.js',
|
|
'core/editor/**/*.js',
|
|
'core/error/index.js',
|
|
'core/form/**/*.js',
|
|
'core/griper/**/*.js',
|
|
'core/index.js',
|
|
'core/karma.conf.js',
|
|
'core/lang/index.js',
|
|
'core/lang/LangEditorBox.js',
|
|
'core/permission/*.js',
|
|
'core/plugin.js',
|
|
'core/request/**/*.js',
|
|
'core/router/**/*.js',
|
|
'core/settings/js/admin.js',
|
|
'core/singleton.js',
|
|
'core/tree/**/*.js',
|
|
'core/user/settings/edit.js',
|
|
'core/utils/**/*.js',
|
|
'core/validator/**/*.js',
|
|
'core/vendor.js'
|
|
]
|
|
}
|
|
])
|
|
],
|
|
module: {
|
|
rules: [
|
|
{
|
|
test: /(\.js)$/,
|
|
exclude: /node_modules/,
|
|
use: {
|
|
loader: 'babel-loader'
|
|
}
|
|
}
|
|
]
|
|
},
|
|
resolve: {
|
|
alias: resolveAlias,
|
|
extensions: ['.js', '.json', '.vue']
|
|
},
|
|
externals: {
|
|
window: 'window'
|
|
}
|
|
}
|
|
|
|
export {
|
|
pathInfo,
|
|
resolveAlias
|
|
}
|