main.js
3.82 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
module.exports = (baseUrl) => {
const base = require("./base")(baseUrl);
const { output, src, mods, del } = base;
const clean = {
js: [`${output.js}/**/*.js`, `!${output.js}/lib/require/*.js`, `${output.js}/lib/require/require.min_main.js`],
css: [`${output.css}/**/*.css`],
html: [output.html]
};
const mSrc = {
js: [src.js],
css: [src.css],
resolvedLess: [
`${baseUrl}/less/+(common|component|service)/*.less`,
`${baseUrl}/less/!(variables).less`
],
less: [
`${baseUrl}/css/+(common|component|service)/*.less`,
`${baseUrl}/css/main.less`
],
theme: `${baseUrl}/css/theme/*.less`,
variables: `${baseUrl}/css/variables.less`,
html: [src.html],
amdConfig: `${baseUrl}/js/amdConfig.js`
};
mods.forEach(mod => {
clean.js.push(`!${output.js}/${mod}/**/*.js`)
clean.css.push(`!${output.css}/${mod}/**/*.css`)
clean.html.push(`!${output.html}/${mod}/**/*.html`)
mSrc.js.push(`!${baseUrl}/js/${mod}/**/*.js`);
mSrc.css.push(`!${baseUrl}/css/${mod}/**/*.css`);
mSrc.html.push(`${baseUrl}/template/${mod}/**/*.html`);
});
let delArr = del;
delArr.push.apply(delArr, [
`${output.js}/amdConfig.js`,
`${output.js}/main/mobilemode.js`,
`${output.js}/main/log.js`,
`${output.js}/main/pageStack.js`,
`${output.js}/main/pageEvent.js`,
`${output.js}/main/Component.js`,
`${output.js}/main_demo/run.js`,
`${output.js}/main_export/run.js`,
`${output.js}/main_export/mobilemode.js`,
`${output.js}/mobilemode.util_wev8.js`,
`${output.html}`,
`${baseUrl}/less`
]);
const exportsCss = [
`${output.css}/main-default.css`,
`${output.css}/+(common|component|service)/*-default.css`
];
return {
name: "main",
clean: clean,
src: mSrc,
defaultTheme: 'default',
output: {
theme: `${baseUrl}/less/theme`,
less: `${baseUrl}/less`,
amdConfig: `${output.js}/amdConfig.js`
},
cssOptimize: {
includes: [
`${output.css}/lib/mobilebone/mobilebone_wev8.css`,
],
mainCss: (theme = '') => `${output.css}/main${theme ? `-${theme}` : ''}.css`
},
exports: {
css: [
{ name: 'mobile.css', css: exportsCss, parent: '' },
{ name: 'mobile_designer.css', css: exportsCss, parent: '.wm-page-wrapper' }
]
},
themePath: `${baseUrl}/css/theme/`,
modules: [
{
name: "main",
output: `${output.js}/main`
},
{
name: "main_demo",
output: `${output.js}/main_demo/`,
external: [`${output.js}/main_demo/run.js`]
},
{
name: "main_export",
output: `${output.js}/main_export/`,
}
],
replace: {
regExp: {
css: "main|mobilemode_wev8",
js: "main_demo|main|loader"
},
files: [
// {
// src: `${baseUrl}/view.jsp`,
// output: `${baseUrl}`
// },
{
src: `${baseUrl}/view.html`,
output: `${baseUrl}`
},
{
src: `${baseUrl}/portal.jsp`,
output: `${baseUrl}`
},
// {
// src: `${baseUrl}/demo/plugin/index.html`,
// output: `${baseUrl}/demo/plugin`
// }
]
},
del: delArr
}
};