1+ const path = require ( 'path' )
2+ const resolve = file => path . resolve ( __dirname , file )
3+
4+ const iconfonts = require ( resolve ( './util/iconfonts.js' ) )
5+ const presets = require ( resolve ( './util/presets.js' ) )
6+ const locales = require ( resolve ( './util/locales.js' ) )
7+
18function isCustom ( answers ) {
29 return answers . preset === 'configure'
310}
411
512module . exports = [
613 {
714 name : 'preset' ,
15+ message : 'Choose a preset:' ,
816 type : 'list' ,
917 choices : [
10- { name : 'default (recommended)' , value : 'default' } ,
11- { name : 'configure ' , value : 'configure' }
18+ ... presets ,
19+ { name : 'Configure (advanced) ' , value : 'configure' }
1220 ] ,
1321 default : 'default'
1422 } ,
@@ -35,23 +43,10 @@ module.exports = [
3543 } ,
3644 {
3745 name : 'iconFont' ,
38- type : 'rawlist ' ,
46+ type : 'list ' ,
3947 message : 'Select icon font' ,
40- choices : [
41- 'Material Icons (default)' ,
42- 'Material Design Icons' ,
43- 'Font Awesome 5' ,
44- 'Font Awesome 4' ,
45- ] ,
46- default : 0 ,
47- filter : function ( val ) {
48- return {
49- 'Material Icons (default)' : 'md' ,
50- 'Material Design Icons' : 'mdi' ,
51- 'Font Awesome 5' : 'fa' ,
52- 'Font Awesome 4' : 'fa4' ,
53- } [ val ]
54- } ,
48+ choices : iconfonts ,
49+ default : 'md' ,
5550 when : isCustom
5651 } ,
5752 {
@@ -73,47 +68,16 @@ module.exports = [
7368 type : 'confirm' ,
7469 message : 'Use babel/polyfill?' ,
7570 default : true ,
76- when : isCustom
71+ when : answers => {
72+ return isCustom ( answers ) && ! answers . useAlaCarte
73+ }
7774 } ,
7875 {
7976 name : 'locale' ,
80- type : 'rawlist ' ,
77+ type : 'list ' ,
8178 message : 'Select locale' ,
82- choices : [
83- 'English (default)' ,
84- 'Catalan' ,
85- 'Chinese (simplified)' ,
86- 'Chinese (traditional)' ,
87- 'Dutch' ,
88- 'Farsi' ,
89- 'French' ,
90- 'German' ,
91- 'Greek' ,
92- 'Polish' ,
93- 'Portuguese' ,
94- 'Russian' ,
95- 'Ukrainian' ,
96- 'Serbian (cyrillic)' ,
97- ] ,
98- default : 0 ,
99- filter : function ( val ) {
100- return {
101- 'English (default)' : 'en' ,
102- 'Catalan' : 'ca' ,
103- 'Chinese (simplified)' : 'zh-Hans' ,
104- 'Chinese (traditional)' : 'zh-Hant' ,
105- 'Dutch' : 'nl' ,
106- 'Farsi' : 'fa' ,
107- 'French' : 'fr' ,
108- 'German' : 'de' ,
109- 'Greek' : 'gr' ,
110- 'Polish' : 'pl' ,
111- 'Portuguese' : 'pt' ,
112- 'Russian' : 'ru' ,
113- 'Ukrainian' : 'uk' ,
114- 'Serbian (cyrillic)' : 'sr-Cyrl' ,
115- } [ val ]
116- } ,
79+ choices : locales ,
80+ default : 'en' ,
11781 when : isCustom
11882 }
11983]
0 commit comments