fomantic-ui 2.9.1-beta.17 → 2.9.1-beta.19

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (252) hide show
  1. package/.eslintrc.js +109 -0
  2. package/.github/workflows/ci.yml +13 -3
  3. package/dist/components/accordion.css +1 -1
  4. package/dist/components/accordion.js +569 -598
  5. package/dist/components/accordion.min.css +1 -1
  6. package/dist/components/accordion.min.js +2 -2
  7. package/dist/components/ad.css +1 -1
  8. package/dist/components/ad.min.css +1 -1
  9. package/dist/components/api.js +1161 -1184
  10. package/dist/components/api.min.js +2 -2
  11. package/dist/components/breadcrumb.css +1 -1
  12. package/dist/components/breadcrumb.min.css +1 -1
  13. package/dist/components/button.css +1 -1
  14. package/dist/components/button.min.css +1 -1
  15. package/dist/components/calendar.css +1 -1
  16. package/dist/components/calendar.js +1895 -1818
  17. package/dist/components/calendar.min.css +1 -1
  18. package/dist/components/calendar.min.js +2 -2
  19. package/dist/components/card.css +1 -1
  20. package/dist/components/card.min.css +1 -1
  21. package/dist/components/checkbox.css +1 -1
  22. package/dist/components/checkbox.js +842 -841
  23. package/dist/components/checkbox.min.css +1 -1
  24. package/dist/components/checkbox.min.js +2 -2
  25. package/dist/components/comment.css +1 -1
  26. package/dist/components/comment.min.css +1 -1
  27. package/dist/components/container.css +3 -1
  28. package/dist/components/container.min.css +2 -2
  29. package/dist/components/dimmer.css +1 -1
  30. package/dist/components/dimmer.js +708 -737
  31. package/dist/components/dimmer.min.css +1 -1
  32. package/dist/components/dimmer.min.js +2 -2
  33. package/dist/components/divider.css +1 -1
  34. package/dist/components/divider.min.css +1 -1
  35. package/dist/components/dropdown.css +11 -8
  36. package/dist/components/dropdown.js +4161 -4238
  37. package/dist/components/dropdown.min.css +2 -2
  38. package/dist/components/dropdown.min.js +2 -2
  39. package/dist/components/embed.css +1 -1
  40. package/dist/components/embed.js +651 -675
  41. package/dist/components/embed.min.css +1 -1
  42. package/dist/components/embed.min.js +2 -2
  43. package/dist/components/feed.css +1 -1
  44. package/dist/components/feed.min.css +1 -1
  45. package/dist/components/flag.css +1 -1
  46. package/dist/components/flag.min.css +1 -1
  47. package/dist/components/flyout.css +6 -3
  48. package/dist/components/flyout.js +1464 -1467
  49. package/dist/components/flyout.min.css +2 -2
  50. package/dist/components/flyout.min.js +2 -2
  51. package/dist/components/form.css +1 -1
  52. package/dist/components/form.js +1979 -2004
  53. package/dist/components/form.min.css +1 -1
  54. package/dist/components/form.min.js +2 -2
  55. package/dist/components/grid.css +1 -1
  56. package/dist/components/grid.min.css +1 -1
  57. package/dist/components/header.css +1 -1
  58. package/dist/components/header.min.css +1 -1
  59. package/dist/components/icon.css +1 -1
  60. package/dist/components/icon.min.css +1 -1
  61. package/dist/components/image.css +1 -1
  62. package/dist/components/image.min.css +1 -1
  63. package/dist/components/input.css +1 -1
  64. package/dist/components/input.min.css +1 -1
  65. package/dist/components/item.css +1 -1
  66. package/dist/components/item.min.css +1 -1
  67. package/dist/components/label.css +1 -1
  68. package/dist/components/label.min.css +1 -1
  69. package/dist/components/list.css +1 -1
  70. package/dist/components/list.min.css +1 -1
  71. package/dist/components/loader.css +1 -1
  72. package/dist/components/loader.min.css +1 -1
  73. package/dist/components/message.css +1 -1
  74. package/dist/components/message.min.css +1 -1
  75. package/dist/components/modal.css +7 -1
  76. package/dist/components/modal.js +1491 -1487
  77. package/dist/components/modal.min.css +2 -2
  78. package/dist/components/modal.min.js +2 -2
  79. package/dist/components/nag.css +1 -1
  80. package/dist/components/nag.js +518 -529
  81. package/dist/components/nag.min.css +1 -1
  82. package/dist/components/nag.min.js +2 -2
  83. package/dist/components/placeholder.css +1 -1
  84. package/dist/components/placeholder.min.css +1 -1
  85. package/dist/components/popup.css +1 -1
  86. package/dist/components/popup.js +1437 -1456
  87. package/dist/components/popup.min.css +1 -1
  88. package/dist/components/popup.min.js +2 -2
  89. package/dist/components/progress.css +1 -1
  90. package/dist/components/progress.js +969 -997
  91. package/dist/components/progress.min.css +1 -1
  92. package/dist/components/progress.min.js +2 -2
  93. package/dist/components/rail.css +1 -1
  94. package/dist/components/rail.min.css +1 -1
  95. package/dist/components/rating.css +1 -1
  96. package/dist/components/rating.js +505 -523
  97. package/dist/components/rating.min.css +1 -1
  98. package/dist/components/rating.min.js +2 -2
  99. package/dist/components/reset.css +1 -1
  100. package/dist/components/reset.min.css +1 -1
  101. package/dist/components/reveal.css +1 -1
  102. package/dist/components/reveal.min.css +1 -1
  103. package/dist/components/search.css +3 -1
  104. package/dist/components/search.js +1498 -1534
  105. package/dist/components/search.min.css +2 -2
  106. package/dist/components/search.min.js +2 -2
  107. package/dist/components/segment.css +3 -1
  108. package/dist/components/segment.min.css +2 -2
  109. package/dist/components/shape.css +1 -1
  110. package/dist/components/shape.js +792 -809
  111. package/dist/components/shape.min.css +1 -1
  112. package/dist/components/shape.min.js +2 -2
  113. package/dist/components/sidebar.css +3 -1
  114. package/dist/components/sidebar.js +1071 -1098
  115. package/dist/components/sidebar.min.css +2 -2
  116. package/dist/components/sidebar.min.js +2 -2
  117. package/dist/components/site.css +1 -1
  118. package/dist/components/site.js +462 -471
  119. package/dist/components/site.min.css +1 -1
  120. package/dist/components/site.min.js +2 -2
  121. package/dist/components/slider.js +1287 -1311
  122. package/dist/components/slider.min.js +2 -2
  123. package/dist/components/state.js +639 -657
  124. package/dist/components/state.min.js +2 -2
  125. package/dist/components/statistic.css +1 -1
  126. package/dist/components/statistic.min.css +1 -1
  127. package/dist/components/step.css +1 -1
  128. package/dist/components/step.min.css +1 -1
  129. package/dist/components/sticky.css +1 -1
  130. package/dist/components/sticky.js +857 -903
  131. package/dist/components/sticky.min.css +1 -1
  132. package/dist/components/sticky.min.js +2 -2
  133. package/dist/components/tab.css +1 -1
  134. package/dist/components/tab.js +922 -963
  135. package/dist/components/tab.min.css +1 -1
  136. package/dist/components/tab.min.js +2 -2
  137. package/dist/components/table.css +5 -1
  138. package/dist/components/table.min.css +2 -2
  139. package/dist/components/text.css +1 -1
  140. package/dist/components/text.min.css +1 -1
  141. package/dist/components/toast.css +1 -1
  142. package/dist/components/toast.js +886 -890
  143. package/dist/components/toast.min.css +1 -1
  144. package/dist/components/toast.min.js +2 -2
  145. package/dist/components/transition.css +1 -1
  146. package/dist/components/transition.js +1041 -1077
  147. package/dist/components/transition.min.css +1 -1
  148. package/dist/components/transition.min.js +2 -2
  149. package/dist/components/visibility.js +1220 -1244
  150. package/dist/components/visibility.min.js +2 -2
  151. package/dist/semantic.css +84 -60
  152. package/dist/semantic.js +28949 -29435
  153. package/dist/semantic.min.css +2 -2
  154. package/dist/semantic.min.js +2 -2
  155. package/examples/assets/show-examples.js +13 -13
  156. package/gulpfile.js +9 -10
  157. package/package.json +5 -2
  158. package/scripts/nightly-version.js +81 -75
  159. package/src/definitions/behaviors/api.js +1162 -1185
  160. package/src/definitions/behaviors/form.js +1978 -2003
  161. package/src/definitions/behaviors/state.js +645 -663
  162. package/src/definitions/behaviors/visibility.js +1219 -1243
  163. package/src/definitions/collections/table.less +2 -0
  164. package/src/definitions/elements/container.less +1 -0
  165. package/src/definitions/elements/segment.less +1 -0
  166. package/src/definitions/globals/site.js +461 -470
  167. package/src/definitions/modules/accordion.js +568 -597
  168. package/src/definitions/modules/calendar.js +1894 -1817
  169. package/src/definitions/modules/checkbox.js +841 -840
  170. package/src/definitions/modules/dimmer.js +707 -736
  171. package/src/definitions/modules/dropdown.js +4160 -4237
  172. package/src/definitions/modules/dropdown.less +5 -8
  173. package/src/definitions/modules/embed.js +650 -674
  174. package/src/definitions/modules/flyout.js +1463 -1466
  175. package/src/definitions/modules/flyout.less +15 -12
  176. package/src/definitions/modules/modal.js +1490 -1486
  177. package/src/definitions/modules/modal.less +3 -0
  178. package/src/definitions/modules/nag.js +517 -528
  179. package/src/definitions/modules/popup.js +1436 -1455
  180. package/src/definitions/modules/progress.js +968 -996
  181. package/src/definitions/modules/rating.js +504 -522
  182. package/src/definitions/modules/search.js +1497 -1533
  183. package/src/definitions/modules/search.less +1 -0
  184. package/src/definitions/modules/shape.js +791 -808
  185. package/src/definitions/modules/sidebar.js +1070 -1097
  186. package/src/definitions/modules/sidebar.less +1 -0
  187. package/src/definitions/modules/slider.js +1286 -1310
  188. package/src/definitions/modules/sticky.js +873 -919
  189. package/src/definitions/modules/tab.js +921 -962
  190. package/src/definitions/modules/toast.js +885 -889
  191. package/src/definitions/modules/transition.js +1040 -1076
  192. package/src/themes/default/elements/container.variables +0 -7
  193. package/src/themes/default/elements/segment.variables +0 -7
  194. package/src/themes/default/globals/site.variables +7 -0
  195. package/src/themes/default/globals/variation.variables +1 -0
  196. package/tasks/admin/components/create.js +274 -276
  197. package/tasks/admin/components/init.js +123 -130
  198. package/tasks/admin/components/update.js +149 -157
  199. package/tasks/admin/distributions/create.js +184 -187
  200. package/tasks/admin/distributions/init.js +123 -130
  201. package/tasks/admin/distributions/update.js +145 -152
  202. package/tasks/admin/publish.js +5 -7
  203. package/tasks/admin/register.js +36 -38
  204. package/tasks/admin/release.js +8 -10
  205. package/tasks/build/assets.js +42 -39
  206. package/tasks/build/css.js +225 -216
  207. package/tasks/build/javascript.js +118 -113
  208. package/tasks/build.js +10 -10
  209. package/tasks/check-install.js +14 -16
  210. package/tasks/clean.js +5 -5
  211. package/tasks/collections/admin.js +34 -36
  212. package/tasks/collections/build.js +18 -20
  213. package/tasks/collections/docs.js +9 -11
  214. package/tasks/collections/install.js +9 -11
  215. package/tasks/collections/rtl.js +9 -11
  216. package/tasks/collections/various.js +8 -10
  217. package/tasks/config/admin/github.js +17 -17
  218. package/tasks/config/admin/oauth.example.js +4 -4
  219. package/tasks/config/admin/release.js +98 -98
  220. package/tasks/config/admin/templates/component-package.js +9 -10
  221. package/tasks/config/admin/templates/css-package.js +18 -20
  222. package/tasks/config/admin/templates/less-package.js +11 -13
  223. package/tasks/config/defaults.js +116 -116
  224. package/tasks/config/docs.js +23 -23
  225. package/tasks/config/npm/gulpfile.js +8 -9
  226. package/tasks/config/project/config.js +127 -134
  227. package/tasks/config/project/install.js +715 -713
  228. package/tasks/config/project/release.js +32 -38
  229. package/tasks/config/tasks.js +163 -164
  230. package/tasks/config/user.js +23 -29
  231. package/tasks/docs/build.js +97 -95
  232. package/tasks/docs/metadata.js +90 -96
  233. package/tasks/docs/serve.js +80 -81
  234. package/tasks/install.js +370 -378
  235. package/tasks/rtl/build.js +2 -2
  236. package/tasks/rtl/watch.js +2 -2
  237. package/tasks/version.js +4 -4
  238. package/tasks/watch.js +28 -30
  239. package/test/meteor/assets.js +10 -13
  240. package/test/meteor/fonts.js +12 -13
  241. package/test/modules/accordion.spec.js +6 -8
  242. package/test/modules/checkbox.spec.js +5 -7
  243. package/test/modules/dropdown.spec.js +5 -7
  244. package/test/modules/modal.spec.js +6 -8
  245. package/test/modules/module.spec.js +158 -178
  246. package/test/modules/popup.spec.js +5 -7
  247. package/test/modules/search.spec.js +5 -7
  248. package/test/modules/shape.spec.js +5 -7
  249. package/test/modules/sidebar.spec.js +5 -7
  250. package/test/modules/tab.spec.js +6 -8
  251. package/test/modules/transition.spec.js +5 -7
  252. package/test/modules/video.spec.js +5 -7
@@ -3,12 +3,12 @@
3
3
  *******************************/
4
4
 
5
5
  var
6
- fs = require('fs'),
7
- path = require('path'),
8
- defaults = require('../defaults'),
9
- release = require('./release'),
6
+ fs = require('fs'),
7
+ path = require('path'),
8
+ defaults = require('../defaults'),
9
+ release = require('./release'),
10
10
 
11
- requireDotFile = require('require-dot-file')
11
+ requireDotFile = require('require-dot-file')
12
12
  ;
13
13
 
14
14
  /*******************************
@@ -19,44 +19,44 @@ var
19
19
 
20
20
  var when = {
21
21
 
22
- // path
23
- changeRoot: function(questions) {
24
- return (questions.useRoot !== undefined && questions.useRoot !== true);
25
- },
26
-
27
- // permissions
28
- changePermissions: function(questions) {
29
- return (questions.changePermissions && questions.changePermissions === true);
30
- },
31
-
32
- // install
33
- hasConfig: function() {
34
- return requireDotFile('semantic.json', process.cwd());
35
- },
36
-
37
- allowOverwrite: function(questions) {
38
- return (questions.overwrite === undefined || questions.overwrite == 'yes');
39
- },
40
- notAuto: function(questions) {
41
- return (questions.install !== 'auto' && (questions.overwrite === undefined || questions.overwrite == 'yes'));
42
- },
43
- custom: function(questions) {
44
- return (questions.install === 'custom' && (questions.overwrite === undefined || questions.overwrite == 'yes'));
45
- },
46
- express: function(questions) {
47
- return (questions.install === 'express' && (questions.overwrite === undefined || questions.overwrite == 'yes'));
48
- },
49
-
50
- // customize
51
- customize: function(questions) {
52
- return (questions.customize === true);
53
- },
54
- primaryColor: function(questions) {
55
- return (questions.primaryColor);
56
- },
57
- secondaryColor: function(questions) {
58
- return (questions.secondaryColor);
59
- }
22
+ // path
23
+ changeRoot: function (questions) {
24
+ return (questions.useRoot !== undefined && questions.useRoot !== true);
25
+ },
26
+
27
+ // permissions
28
+ changePermissions: function (questions) {
29
+ return (questions.changePermissions && questions.changePermissions === true);
30
+ },
31
+
32
+ // install
33
+ hasConfig: function () {
34
+ return requireDotFile('semantic.json', process.cwd());
35
+ },
36
+
37
+ allowOverwrite: function (questions) {
38
+ return (questions.overwrite === undefined || questions.overwrite == 'yes');
39
+ },
40
+ notAuto: function (questions) {
41
+ return (questions.install !== 'auto' && (questions.overwrite === undefined || questions.overwrite == 'yes'));
42
+ },
43
+ custom: function (questions) {
44
+ return (questions.install === 'custom' && (questions.overwrite === undefined || questions.overwrite == 'yes'));
45
+ },
46
+ express: function (questions) {
47
+ return (questions.install === 'express' && (questions.overwrite === undefined || questions.overwrite == 'yes'));
48
+ },
49
+
50
+ // customize
51
+ customize: function (questions) {
52
+ return (questions.customize === true);
53
+ },
54
+ primaryColor: function (questions) {
55
+ return (questions.primaryColor);
56
+ },
57
+ secondaryColor: function (questions) {
58
+ return (questions.secondaryColor);
59
+ },
60
60
  };
61
61
 
62
62
  /*******************************
@@ -66,9 +66,9 @@ var when = {
66
66
  /* Filters to user input from install questions */
67
67
 
68
68
  var filter = {
69
- removeTrailingSlash: function(path) {
70
- return path.replace(/(\/$|\\$)+/mg, '');
71
- }
69
+ removeTrailingSlash: function (path) {
70
+ return path.replace(/(\/$|\\$)+/mg, '');
71
+ },
72
72
  };
73
73
 
74
74
  /*******************************
@@ -77,690 +77,692 @@ var filter = {
77
77
 
78
78
  module.exports = {
79
79
 
80
- // check whether install is setup
81
- isSetup: function() {
82
- return when.hasConfig();
83
- },
84
-
85
- // detect whether there is a semantic.json configuration and that the auto-install option is set to true
86
- shouldAutoInstall: function() {
87
- var
88
- config = when.hasConfig()
89
- ;
90
- return config['autoInstall'];
91
- },
92
-
93
- // checks if files are in a PM directory
94
- getPackageManager: function(directory) {
95
- var
96
- // returns last matching result (avoid sub-module detection)
97
- walk = function(directory) {
80
+ // check whether install is setup
81
+ isSetup: function () {
82
+ return when.hasConfig();
83
+ },
84
+
85
+ // detect whether there is a semantic.json configuration and that the auto-install option is set to true
86
+ shouldAutoInstall: function () {
98
87
  var
99
- pathArray = directory.split(path.sep),
100
- folder = pathArray[pathArray.length - 1],
101
- nextDirectory = path.join(directory, path.sep, '..')
88
+ config = when.hasConfig()
102
89
  ;
103
- if( folder == 'bower_components') {
104
- return {
105
- name: 'Bower',
106
- root: nextDirectory
107
- };
90
+
91
+ return config.autoInstall;
92
+ },
93
+
94
+ // checks if files are in a PM directory
95
+ getPackageManager: function (directory) {
96
+ var
97
+ // returns last matching result (avoid sub-module detection)
98
+ walk = function (directory) {
99
+ var
100
+ pathArray = directory.split(path.sep),
101
+ folder = pathArray[pathArray.length - 1],
102
+ nextDirectory = path.join(directory, path.sep, '..')
103
+ ;
104
+ if (folder == 'bower_components') {
105
+ return {
106
+ name: 'Bower',
107
+ root: nextDirectory,
108
+ };
109
+ } else if (folder == 'node_modules') {
110
+ return {
111
+ name: 'NPM',
112
+ root: nextDirectory,
113
+ };
114
+ } else if (folder == 'composer') {
115
+ return {
116
+ name: 'Composer',
117
+ root: nextDirectory,
118
+ };
119
+ }
120
+ if (path.resolve(directory) == path.resolve(nextDirectory)) {
121
+ return false;
122
+ }
123
+
124
+ // recurse downward
125
+ return walk(nextDirectory);
126
+ }
127
+ ;
128
+ // start walk from current directory if none specified
129
+ directory = directory || (__dirname + path.sep);
130
+
131
+ return walk(directory);
132
+ },
133
+
134
+ // checks if files is PMed submodule
135
+ isSubModule: function (directory) {
136
+ var
137
+ moduleFolders = 0,
138
+ walk = function (directory) {
139
+ var
140
+ pathArray = directory.split(path.sep),
141
+ folder = pathArray[pathArray.length - 2],
142
+ nextDirectory = path.join(directory, path.sep, '..')
143
+ ;
144
+ if (['bower_components', 'node_modules', 'composer'].includes(folder)) {
145
+ moduleFolders++;
146
+ } else if (folder === '.pnpm') {
147
+ moduleFolders--;
148
+ }
149
+ if (path.resolve(directory) === path.resolve(nextDirectory)) {
150
+ return (moduleFolders > 1);
151
+ }
152
+
153
+ // recurse downward
154
+ return walk(nextDirectory);
155
+ }
156
+ ;
157
+ // start walk from current directory if none specified
158
+ directory = directory || (__dirname + path.sep);
159
+
160
+ return walk(directory);
161
+ },
162
+
163
+ createJSON: function (answers) {
164
+ var
165
+ json = {
166
+ paths: {
167
+ source: {},
168
+ output: {},
169
+ },
170
+ }
171
+ ;
172
+
173
+ // add components
174
+ if (answers.components) {
175
+ json.components = answers.components;
108
176
  }
109
- else if(folder == 'node_modules') {
110
- return {
111
- name: 'NPM',
112
- root: nextDirectory
113
- };
177
+
178
+ // add rtl choice
179
+ if (answers.rtl) {
180
+ json.rtl = answers.rtl;
114
181
  }
115
- else if(folder == 'composer') {
116
- return {
117
- name: 'Composer',
118
- root: nextDirectory
119
- };
182
+
183
+ // add permissions
184
+ if (answers.permission) {
185
+ json.permission = answers.permission;
120
186
  }
121
- if(path.resolve(directory) == path.resolve(nextDirectory)) {
122
- return false;
187
+
188
+ // add path to semantic
189
+ if (answers.semanticRoot) {
190
+ json.base = path.normalize(answers.semanticRoot);
123
191
  }
124
- // recurse downward
125
- return walk(nextDirectory);
126
- }
127
- ;
128
- // start walk from current directory if none specified
129
- directory = directory || (__dirname + path.sep);
130
- return walk(directory);
131
- },
132
-
133
- // checks if files is PMed submodule
134
- isSubModule: function(directory) {
135
- var
136
- moduleFolders = 0,
137
- walk = function(directory) {
138
- var
139
- pathArray = directory.split(path.sep),
140
- folder = pathArray[pathArray.length - 2],
141
- nextDirectory = path.join(directory, path.sep, '..')
142
- ;
143
- if(['bower_components', 'node_modules', 'composer'].includes(folder)) {
144
- moduleFolders++;
145
- } else if(folder === '.pnpm') {
146
- moduleFolders--;
192
+
193
+ // record version number to avoid re-installing on same version
194
+ json.version = release.version;
195
+
196
+ // add dist folder paths
197
+ if (answers.dist) {
198
+ answers.dist = path.normalize(answers.dist);
199
+
200
+ json.paths.output = {
201
+ packaged: path.normalize(answers.dist + '/'),
202
+ uncompressed: path.normalize(answers.dist + '/components/'),
203
+ compressed: path.normalize(answers.dist + '/components/'),
204
+ themes: path.normalize(answers.dist + '/themes/'),
205
+ };
147
206
  }
148
- if(path.resolve(directory) === path.resolve(nextDirectory)) {
149
- return (moduleFolders > 1);
207
+
208
+ // add site path
209
+ if (answers.site) {
210
+ json.paths.source.site = path.normalize(answers.site + '/');
150
211
  }
151
- // recurse downward
152
- return walk(nextDirectory);
153
- }
154
- ;
155
- // start walk from current directory if none specified
156
- directory = directory || (__dirname + path.sep);
157
- return walk(directory);
158
- },
159
-
160
-
161
- createJSON: function(answers) {
162
- var
163
- json = {
164
- paths: {
165
- source: {},
166
- output: {}
212
+ if (answers.packaged) {
213
+ json.paths.output.packaged = path.normalize(answers.packaged + '/');
214
+ }
215
+ if (answers.compressed) {
216
+ json.paths.output.compressed = path.normalize(answers.compressed + '/');
217
+ }
218
+ if (answers.uncompressed) {
219
+ json.paths.output.uncompressed = path.normalize(answers.uncompressed + '/');
167
220
  }
168
- }
169
- ;
170
-
171
- // add components
172
- if(answers.components) {
173
- json.components = answers.components;
174
- }
175
-
176
- // add rtl choice
177
- if(answers.rtl) {
178
- json.rtl = answers.rtl;
179
- }
180
-
181
- // add permissions
182
- if(answers.permission) {
183
- json.permission = answers.permission;
184
- }
185
-
186
- // add path to semantic
187
- if(answers.semanticRoot) {
188
- json.base = path.normalize(answers.semanticRoot);
189
- }
190
-
191
- // record version number to avoid re-installing on same version
192
- json.version = release.version;
193
-
194
- // add dist folder paths
195
- if(answers.dist) {
196
- answers.dist = path.normalize(answers.dist);
197
-
198
- json.paths.output = {
199
- packaged : path.normalize(answers.dist + '/'),
200
- uncompressed : path.normalize(answers.dist + '/components/'),
201
- compressed : path.normalize(answers.dist + '/components/'),
202
- themes : path.normalize(answers.dist + '/themes/')
203
- };
204
- }
205
-
206
- // add site path
207
- if(answers.site) {
208
- json.paths.source.site = path.normalize(answers.site + '/');
209
- }
210
- if(answers.packaged) {
211
- json.paths.output.packaged = path.normalize(answers.packaged + '/');
212
- }
213
- if(answers.compressed) {
214
- json.paths.output.compressed = path.normalize(answers.compressed + '/');
215
- }
216
- if(answers.uncompressed) {
217
- json.paths.output.uncompressed = path.normalize(answers.uncompressed + '/');
218
- }
219
- return json;
220
- },
221
-
222
- // files cleaned up after install
223
- setupFiles: [
224
- './src/theme.config.example',
225
- './semantic.json.example',
226
- './src/_site'
227
- ],
228
-
229
- regExp: {
230
- // used to match siteFolder variable in theme.less
231
- siteVariable: /@siteFolder .*\'(.*)/mg
232
- },
233
-
234
- // source paths (when installing)
235
- source: {
236
- config : './semantic.json.example',
237
- definitions : './src/definitions',
238
- gulpFile : './gulpfile.js',
239
- lessImport : './src/semantic.less',
240
- site : './src/_site',
241
- tasks : './tasks',
242
- themeConfig : './src/theme.config.example',
243
- themeImport : './src/theme.less',
244
- themes : './src/themes',
245
- defaultTheme : './src/themes/default',
246
- userGulpFile : './tasks/config/npm/gulpfile.js'
247
- },
248
-
249
- // expected final filenames
250
- files: {
251
- config : 'semantic.json',
252
- lessImport : 'src/semantic.less',
253
- site : 'src/site',
254
- themeConfig : 'src/theme.config',
255
- themeImport : 'src/theme.less'
256
- },
257
-
258
- // folder paths to files relative to root
259
- folders: {
260
- config : './',
261
- definitions : 'src/definitions/',
262
- lessImport : 'src/',
263
- modules : 'node_modules/',
264
- site : 'src/site/',
265
- tasks : 'tasks/',
266
- themeConfig : 'src/',
267
- themeImport : 'src/',
268
- themes : 'src/themes/',
269
-
270
- defaultTheme : 'default/' // only path that is relative to another directory and not root
271
- },
272
-
273
- // questions asked during install
274
- questions: {
275
-
276
- root: [
277
- {
278
- type : 'list',
279
- name : 'useRoot',
280
- message :
281
- '{packageMessage} Is this your project folder? {root}',
282
- choices: [
283
- {
284
- name : 'Yes',
285
- value : true
286
- },
287
- {
288
- name : 'No, let me specify',
289
- value : false
290
- }
291
- ]
292
- },
293
- {
294
- type : 'input',
295
- name : 'customRoot',
296
- message : 'Please enter the absolute path to your project root',
297
- default : '/my/project/path',
298
- when : when.changeRoot
299
- },
300
- {
301
- type : 'input',
302
- name : 'semanticRoot',
303
- message : 'Where should we put Fomantic UI inside your project?',
304
- default : 'semantic/'
305
- }
306
- ],
307
221
 
308
- setup: [
309
- {
310
- type: 'list',
311
- name: 'overwrite',
312
- message: 'It looks like you have a semantic.json file already.',
313
- when: when.hasConfig,
314
- choices: [
315
- {
316
- name: 'Yes, extend my current settings.',
317
- value: 'yes'
318
- },
319
- {
320
- name: 'Skip install',
321
- value: 'no'
322
- }
323
- ]
324
- },
325
- {
326
- type: 'list',
327
- name: 'install',
328
- message: 'Set-up Fomantic UI',
329
- when: when.allowOverwrite,
330
- choices: [
331
- {
332
- name: 'Automatic (Use default locations and all components)',
333
- value: 'auto'
334
- },
335
- {
336
- name: 'Express (Set components and output folder)',
337
- value: 'express'
338
- },
339
- {
340
- name: 'Custom (Customize all src/dist values)',
341
- value: 'custom'
342
- }
343
- ]
344
- },
345
- {
346
- type: 'checkbox',
347
- name: 'components',
348
- message: 'What components should we include in the package?',
349
-
350
- // duplicated manually from tasks/defaults.js with additional property
351
- choices: [
352
- { name: "\x1b[4mGlobal\x1b[0m", disabled: "Styles that are applied across a site"},
353
- { name: "reset", checked: true },
354
- { name: "site", checked: true },
355
- { name: "\x1b[4mElements\x1b[0m", disabled: "Page elements with a single function"},
356
- { name: "button", checked: true },
357
- { name: "container", checked: true },
358
- { name: "divider", checked: true },
359
- { name: "emoji", checked: true },
360
- { name: "flag", checked: true },
361
- { name: "header", checked: true },
362
- { name: "icon", checked: true },
363
- { name: "image", checked: true },
364
- { name: "input", checked: true },
365
- { name: "label", checked: true },
366
- { name: "list", checked: true },
367
- { name: "loader", checked: true },
368
- { name: "rail", checked: true },
369
- { name: "reveal", checked: true },
370
- { name: "segment", checked: true },
371
- { name: "step", checked: true },
372
- { name: "\x1b[4mCollections\x1b[0m", disabled: "Heterogeneous groups of components"},
373
- { name: "breadcrumb", checked: true },
374
- { name: "form", checked: true },
375
- { name: "grid", checked: true },
376
- { name: "menu", checked: true },
377
- { name: "message", checked: true },
378
- { name: "table", checked: true },
379
- { name: "\x1b[4mViews\x1b[0m", disabled: "Convention for presenting specific types of content"},
380
- { name: "ad", checked: true },
381
- { name: "card", checked: true },
382
- { name: "comment", checked: true },
383
- { name: "feed", checked: true },
384
- { name: "item", checked: true },
385
- { name: "statistic", checked: true },
386
- { name: "\x1b[4mModules\x1b[0m", disabled: "Components which need Javascript for interactivity"},
387
- { name: "accordion", checked: true },
388
- { name: "calendar", checked: true },
389
- { name: "checkbox", checked: true },
390
- { name: "dimmer", checked: true },
391
- { name: "dropdown", checked: true },
392
- { name: "embed", checked: true },
393
- { name: "flyout", checked: true },
394
- { name: "modal", checked: true },
395
- { name: "nag", checked: true },
396
- { name: "placeholder", checked: true },
397
- { name: "popup", checked: true },
398
- { name: "progress", checked: true },
399
- { name: "slider", checked: true },
400
- { name: "rating", checked: true },
401
- { name: "search", checked: true },
402
- { name: "shape", checked: true },
403
- { name: "sidebar", checked: true },
404
- { name: "sticky", checked: true },
405
- { name: "tab", checked: true },
406
- { name: "text", checked: true },
407
- { name: "toast", checked: true },
408
- { name: "transition", checked: true },
409
- { name: "\x1b[4mBehaviors\x1b[0m", disabled: "Standalone javascript components"},
410
- { name: "api", checked: true },
411
- { name: "form", checked: true },
412
- { name: "state", checked: true },
413
- { name: "visibility", checked: true }
414
- ],
415
- when: when.notAuto
416
- },
417
- {
418
- type: 'list',
419
- name: 'changePermissions',
420
- when: when.notAuto,
421
- message: 'Should we set permissions on outputted files?',
422
- choices: [
423
- {
424
- name: 'No',
425
- value: false
426
- },
427
- {
428
- name: 'Yes',
429
- value: true
430
- }
431
- ]
432
- },
433
- {
434
- type: 'input',
435
- name: 'permission',
436
- message: 'What octal file permission should outputted files receive?',
437
- default: defaults.permission,
438
- when: when.changePermissions
439
- },
440
- {
441
- type: 'list',
442
- name: 'rtl',
443
- message: 'Do you use a RTL (Right-To-Left) language?',
444
- when: when.notAuto,
445
- choices: [
446
- {
447
- name: 'No',
448
- value: false
449
- },
450
- {
451
- name: 'Yes',
452
- value: true
453
- },
454
- {
455
- name: 'Build Both',
456
- value: 'both'
457
- }
458
- ]
459
- },
460
- {
461
- type: 'input',
462
- name: 'dist',
463
- message: 'Where should we output Fomantic UI?',
464
- default: defaults.paths.output.packaged,
465
- filter: filter.removeTrailingSlash,
466
- when: when.express
467
- },
468
- {
469
- type: 'input',
470
- name: 'site',
471
- message: 'Where should we put your site folder?',
472
- default: defaults.paths.source.site,
473
- filter: filter.removeTrailingSlash,
474
- when: when.custom
475
- },
476
- {
477
- type: 'input',
478
- name: 'packaged',
479
- message: 'Where should we output a packaged version?',
480
- default: defaults.paths.output.packaged,
481
- filter: filter.removeTrailingSlash,
482
- when: when.custom
483
- },
484
- {
485
- type: 'input',
486
- name: 'compressed',
487
- message: 'Where should we output compressed components?',
488
- default: defaults.paths.output.compressed,
489
- filter: filter.removeTrailingSlash,
490
- when: when.custom
491
- },
492
- {
493
- type: 'input',
494
- name: 'uncompressed',
495
- message: 'Where should we output uncompressed components?',
496
- default: defaults.paths.output.uncompressed,
497
- filter: filter.removeTrailingSlash,
498
- when: when.custom
499
- }
222
+ return json;
223
+ },
224
+
225
+ // files cleaned up after install
226
+ setupFiles: [
227
+ './src/theme.config.example',
228
+ './semantic.json.example',
229
+ './src/_site',
500
230
  ],
501
231
 
232
+ regExp: {
233
+ // used to match siteFolder variable in theme.less
234
+ siteVariable: /@siteFolder .*\'(.*)/mg,
235
+ },
502
236
 
503
- cleanup: [
504
- {
505
- type: 'list',
506
- name: 'cleanup',
507
- message: 'Should we remove set-up files?',
508
- choices: [
509
- {
510
- name: 'Yes (re-install will require redownloading fomantic).',
511
- value: 'yes'
512
- },
513
- {
514
- name: 'No Thanks',
515
- value: 'no'
516
- }
517
- ]
518
- },
519
- {
520
- type: 'list',
521
- name: 'build',
522
- message: 'Do you want to build Fomantic now?',
523
- choices: [
524
- {
525
- name: 'Yes',
526
- value: 'yes'
527
- },
528
- {
529
- name: 'No',
530
- value: 'no'
531
- }
532
- ]
533
- },
534
- ],
535
- site: [
536
- {
537
- type: 'list',
538
- name: 'customize',
539
- message: 'You have not yet customized your site, can we help you do that?',
540
- choices: [
541
- {
542
- name: 'Yes, ask me a few questions',
543
- value: true
544
- },
545
- {
546
- name: 'No I\'ll do it myself',
547
- value: false
548
- }
549
- ]
550
- },
551
- {
552
- type: 'list',
553
- name: 'headerFont',
554
- message: 'Select your header font',
555
- choices: [
556
- {
557
- name: 'Helvetica Neue, Arial, sans-serif',
558
- value: 'Helvetica Neue, Arial, sans-serif;'
559
- },
560
- {
561
- name: 'Lato (Google Fonts)',
562
- value: 'Lato'
563
- },
564
- {
565
- name: 'Open Sans (Google Fonts)',
566
- value: 'Open Sans'
567
- },
568
- {
569
- name: 'Source Sans Pro (Google Fonts)',
570
- value: 'Source Sans Pro'
571
- },
572
- {
573
- name: 'Droid (Google Fonts)',
574
- value: 'Droid'
575
- },
576
- {
577
- name: 'I\'ll choose on my own',
578
- value: false
579
- }
580
- ],
581
- when: when.customize
582
- },
583
- {
584
- type: 'list',
585
- name: 'pageFont',
586
- message: 'Select your page font',
587
- choices: [
588
- {
589
- name: 'Helvetica Neue, Arial, sans-serif',
590
- value: 'Helvetica Neue, Arial, sans-serif;'
591
- },
592
- {
593
- name: 'Lato (Import from Google Fonts)',
594
- value: 'Lato'
595
- },
596
- {
597
- name: 'Open Sans (Import from Google Fonts)',
598
- value: 'Open Sans'
599
- },
600
- {
601
- name: 'Source Sans Pro (Import from Google Fonts)',
602
- value: 'Source Sans Pro'
603
- },
604
- {
605
- name: 'Droid (Google Fonts)',
606
- value: 'Droid'
607
- },
608
- {
609
- name: 'I\'ll choose on my own',
610
- value: false
611
- }
237
+ // source paths (when installing)
238
+ source: {
239
+ config: './semantic.json.example',
240
+ definitions: './src/definitions',
241
+ gulpFile: './gulpfile.js',
242
+ lessImport: './src/semantic.less',
243
+ site: './src/_site',
244
+ tasks: './tasks',
245
+ themeConfig: './src/theme.config.example',
246
+ themeImport: './src/theme.less',
247
+ themes: './src/themes',
248
+ defaultTheme: './src/themes/default',
249
+ userGulpFile: './tasks/config/npm/gulpfile.js',
250
+ },
251
+
252
+ // expected final filenames
253
+ files: {
254
+ config: 'semantic.json',
255
+ lessImport: 'src/semantic.less',
256
+ site: 'src/site',
257
+ themeConfig: 'src/theme.config',
258
+ themeImport: 'src/theme.less',
259
+ },
260
+
261
+ // folder paths to files relative to root
262
+ folders: {
263
+ config: './',
264
+ definitions: 'src/definitions/',
265
+ lessImport: 'src/',
266
+ modules: 'node_modules/',
267
+ site: 'src/site/',
268
+ tasks: 'tasks/',
269
+ themeConfig: 'src/',
270
+ themeImport: 'src/',
271
+ themes: 'src/themes/',
272
+
273
+ defaultTheme: 'default/', // only path that is relative to another directory and not root
274
+ },
275
+
276
+ // questions asked during install
277
+ questions: {
278
+
279
+ root: [
280
+ {
281
+ type: 'list',
282
+ name: 'useRoot',
283
+ message:
284
+ '{packageMessage} Is this your project folder? {root}',
285
+ choices: [
286
+ {
287
+ name: 'Yes',
288
+ value: true,
289
+ },
290
+ {
291
+ name: 'No, let me specify',
292
+ value: false,
293
+ },
294
+ ],
295
+ },
296
+ {
297
+ type: 'input',
298
+ name: 'customRoot',
299
+ message: 'Please enter the absolute path to your project root',
300
+ default: '/my/project/path',
301
+ when: when.changeRoot,
302
+ },
303
+ {
304
+ type: 'input',
305
+ name: 'semanticRoot',
306
+ message: 'Where should we put Fomantic UI inside your project?',
307
+ default: 'semantic/',
308
+ },
612
309
  ],
613
- when: when.customize
614
- },
615
- {
616
- type: 'list',
617
- name: 'fontSize',
618
- message: 'Select your base font size',
619
- default: '14px',
620
- choices: [
621
- {
622
- name: '12px',
623
- },
624
- {
625
- name: '13px',
626
- },
627
- {
628
- name: '14px (Recommended)',
629
- value: '14px'
630
- },
631
- {
632
- name: '15px',
633
- },
634
- {
635
- name: '16px',
636
- },
637
- {
638
- name: 'I\'ll choose on my own',
639
- value: false
640
- }
310
+
311
+ setup: [
312
+ {
313
+ type: 'list',
314
+ name: 'overwrite',
315
+ message: 'It looks like you have a semantic.json file already.',
316
+ when: when.hasConfig,
317
+ choices: [
318
+ {
319
+ name: 'Yes, extend my current settings.',
320
+ value: 'yes',
321
+ },
322
+ {
323
+ name: 'Skip install',
324
+ value: 'no',
325
+ },
326
+ ],
327
+ },
328
+ {
329
+ type: 'list',
330
+ name: 'install',
331
+ message: 'Set-up Fomantic UI',
332
+ when: when.allowOverwrite,
333
+ choices: [
334
+ {
335
+ name: 'Automatic (Use default locations and all components)',
336
+ value: 'auto',
337
+ },
338
+ {
339
+ name: 'Express (Set components and output folder)',
340
+ value: 'express',
341
+ },
342
+ {
343
+ name: 'Custom (Customize all src/dist values)',
344
+ value: 'custom',
345
+ },
346
+ ],
347
+ },
348
+ {
349
+ type: 'checkbox',
350
+ name: 'components',
351
+ message: 'What components should we include in the package?',
352
+
353
+ // duplicated manually from tasks/defaults.js with additional property
354
+ choices: [
355
+ { name: '\x1b[4mGlobal\x1b[0m', disabled: 'Styles that are applied across a site' },
356
+ { name: 'reset', checked: true },
357
+ { name: 'site', checked: true },
358
+ { name: '\x1b[4mElements\x1b[0m', disabled: 'Page elements with a single function' },
359
+ { name: 'button', checked: true },
360
+ { name: 'container', checked: true },
361
+ { name: 'divider', checked: true },
362
+ { name: 'emoji', checked: true },
363
+ { name: 'flag', checked: true },
364
+ { name: 'header', checked: true },
365
+ { name: 'icon', checked: true },
366
+ { name: 'image', checked: true },
367
+ { name: 'input', checked: true },
368
+ { name: 'label', checked: true },
369
+ { name: 'list', checked: true },
370
+ { name: 'loader', checked: true },
371
+ { name: 'rail', checked: true },
372
+ { name: 'reveal', checked: true },
373
+ { name: 'segment', checked: true },
374
+ { name: 'step', checked: true },
375
+ { name: '\x1b[4mCollections\x1b[0m', disabled: 'Heterogeneous groups of components' },
376
+ { name: 'breadcrumb', checked: true },
377
+ { name: 'form', checked: true },
378
+ { name: 'grid', checked: true },
379
+ { name: 'menu', checked: true },
380
+ { name: 'message', checked: true },
381
+ { name: 'table', checked: true },
382
+ { name: '\x1b[4mViews\x1b[0m', disabled: 'Convention for presenting specific types of content' },
383
+ { name: 'ad', checked: true },
384
+ { name: 'card', checked: true },
385
+ { name: 'comment', checked: true },
386
+ { name: 'feed', checked: true },
387
+ { name: 'item', checked: true },
388
+ { name: 'statistic', checked: true },
389
+ { name: '\x1b[4mModules\x1b[0m', disabled: 'Components which need Javascript for interactivity' },
390
+ { name: 'accordion', checked: true },
391
+ { name: 'calendar', checked: true },
392
+ { name: 'checkbox', checked: true },
393
+ { name: 'dimmer', checked: true },
394
+ { name: 'dropdown', checked: true },
395
+ { name: 'embed', checked: true },
396
+ { name: 'flyout', checked: true },
397
+ { name: 'modal', checked: true },
398
+ { name: 'nag', checked: true },
399
+ { name: 'placeholder', checked: true },
400
+ { name: 'popup', checked: true },
401
+ { name: 'progress', checked: true },
402
+ { name: 'slider', checked: true },
403
+ { name: 'rating', checked: true },
404
+ { name: 'search', checked: true },
405
+ { name: 'shape', checked: true },
406
+ { name: 'sidebar', checked: true },
407
+ { name: 'sticky', checked: true },
408
+ { name: 'tab', checked: true },
409
+ { name: 'text', checked: true },
410
+ { name: 'toast', checked: true },
411
+ { name: 'transition', checked: true },
412
+ { name: '\x1b[4mBehaviors\x1b[0m', disabled: 'Standalone javascript components' },
413
+ { name: 'api', checked: true },
414
+ { name: 'form', checked: true },
415
+ { name: 'state', checked: true },
416
+ { name: 'visibility', checked: true },
417
+ ],
418
+ when: when.notAuto,
419
+ },
420
+ {
421
+ type: 'list',
422
+ name: 'changePermissions',
423
+ when: when.notAuto,
424
+ message: 'Should we set permissions on outputted files?',
425
+ choices: [
426
+ {
427
+ name: 'No',
428
+ value: false,
429
+ },
430
+ {
431
+ name: 'Yes',
432
+ value: true,
433
+ },
434
+ ],
435
+ },
436
+ {
437
+ type: 'input',
438
+ name: 'permission',
439
+ message: 'What octal file permission should outputted files receive?',
440
+ default: defaults.permission,
441
+ when: when.changePermissions,
442
+ },
443
+ {
444
+ type: 'list',
445
+ name: 'rtl',
446
+ message: 'Do you use a RTL (Right-To-Left) language?',
447
+ when: when.notAuto,
448
+ choices: [
449
+ {
450
+ name: 'No',
451
+ value: false,
452
+ },
453
+ {
454
+ name: 'Yes',
455
+ value: true,
456
+ },
457
+ {
458
+ name: 'Build Both',
459
+ value: 'both',
460
+ },
461
+ ],
462
+ },
463
+ {
464
+ type: 'input',
465
+ name: 'dist',
466
+ message: 'Where should we output Fomantic UI?',
467
+ default: defaults.paths.output.packaged,
468
+ filter: filter.removeTrailingSlash,
469
+ when: when.express,
470
+ },
471
+ {
472
+ type: 'input',
473
+ name: 'site',
474
+ message: 'Where should we put your site folder?',
475
+ default: defaults.paths.source.site,
476
+ filter: filter.removeTrailingSlash,
477
+ when: when.custom,
478
+ },
479
+ {
480
+ type: 'input',
481
+ name: 'packaged',
482
+ message: 'Where should we output a packaged version?',
483
+ default: defaults.paths.output.packaged,
484
+ filter: filter.removeTrailingSlash,
485
+ when: when.custom,
486
+ },
487
+ {
488
+ type: 'input',
489
+ name: 'compressed',
490
+ message: 'Where should we output compressed components?',
491
+ default: defaults.paths.output.compressed,
492
+ filter: filter.removeTrailingSlash,
493
+ when: when.custom,
494
+ },
495
+ {
496
+ type: 'input',
497
+ name: 'uncompressed',
498
+ message: 'Where should we output uncompressed components?',
499
+ default: defaults.paths.output.uncompressed,
500
+ filter: filter.removeTrailingSlash,
501
+ when: when.custom,
502
+ },
641
503
  ],
642
- when: when.customize
643
- },
644
- {
645
- type: 'list',
646
- name: 'primaryColor',
647
- message: 'Select the closest name for your primary brand color',
648
- default: '14px',
649
- choices: [
650
- {
651
- name: 'Blue'
652
- },
653
- {
654
- name: 'Green'
655
- },
656
- {
657
- name: 'Orange'
658
- },
659
- {
660
- name: 'Pink'
661
- },
662
- {
663
- name: 'Purple'
664
- },
665
- {
666
- name: 'Red'
667
- },
668
- {
669
- name: 'Teal'
670
- },
671
- {
672
- name: 'Yellow'
673
- },
674
- {
675
- name: 'Black'
676
- },
677
- {
678
- name: 'I\'ll choose on my own',
679
- value: false
680
- }
504
+
505
+ cleanup: [
506
+ {
507
+ type: 'list',
508
+ name: 'cleanup',
509
+ message: 'Should we remove set-up files?',
510
+ choices: [
511
+ {
512
+ name: 'Yes (re-install will require redownloading fomantic).',
513
+ value: 'yes',
514
+ },
515
+ {
516
+ name: 'No Thanks',
517
+ value: 'no',
518
+ },
519
+ ],
520
+ },
521
+ {
522
+ type: 'list',
523
+ name: 'build',
524
+ message: 'Do you want to build Fomantic now?',
525
+ choices: [
526
+ {
527
+ name: 'Yes',
528
+ value: 'yes',
529
+ },
530
+ {
531
+ name: 'No',
532
+ value: 'no',
533
+ },
534
+ ],
535
+ },
681
536
  ],
682
- when: when.customize
683
- },
684
- {
685
- type: 'input',
686
- name: 'PrimaryHex',
687
- message: 'Enter a hexcode for your primary brand color',
688
- when: when.primaryColor
689
- },
690
- {
691
- type: 'list',
692
- name: 'secondaryColor',
693
- message: 'Select the closest name for your secondary brand color',
694
- default: '14px',
695
- choices: [
696
- {
697
- name: 'Blue'
698
- },
699
- {
700
- name: 'Green'
701
- },
702
- {
703
- name: 'Orange'
704
- },
705
- {
706
- name: 'Pink'
707
- },
708
- {
709
- name: 'Purple'
710
- },
711
- {
712
- name: 'Red'
713
- },
714
- {
715
- name: 'Teal'
716
- },
717
- {
718
- name: 'Yellow'
719
- },
720
- {
721
- name: 'Black'
722
- },
723
- {
724
- name: 'I\'ll choose on my own',
725
- value: false
726
- }
537
+ site: [
538
+ {
539
+ type: 'list',
540
+ name: 'customize',
541
+ message: 'You have not yet customized your site, can we help you do that?',
542
+ choices: [
543
+ {
544
+ name: 'Yes, ask me a few questions',
545
+ value: true,
546
+ },
547
+ {
548
+ name: 'No I\'ll do it myself',
549
+ value: false,
550
+ },
551
+ ],
552
+ },
553
+ {
554
+ type: 'list',
555
+ name: 'headerFont',
556
+ message: 'Select your header font',
557
+ choices: [
558
+ {
559
+ name: 'Helvetica Neue, Arial, sans-serif',
560
+ value: 'Helvetica Neue, Arial, sans-serif;',
561
+ },
562
+ {
563
+ name: 'Lato (Google Fonts)',
564
+ value: 'Lato',
565
+ },
566
+ {
567
+ name: 'Open Sans (Google Fonts)',
568
+ value: 'Open Sans',
569
+ },
570
+ {
571
+ name: 'Source Sans Pro (Google Fonts)',
572
+ value: 'Source Sans Pro',
573
+ },
574
+ {
575
+ name: 'Droid (Google Fonts)',
576
+ value: 'Droid',
577
+ },
578
+ {
579
+ name: 'I\'ll choose on my own',
580
+ value: false,
581
+ },
582
+ ],
583
+ when: when.customize,
584
+ },
585
+ {
586
+ type: 'list',
587
+ name: 'pageFont',
588
+ message: 'Select your page font',
589
+ choices: [
590
+ {
591
+ name: 'Helvetica Neue, Arial, sans-serif',
592
+ value: 'Helvetica Neue, Arial, sans-serif;',
593
+ },
594
+ {
595
+ name: 'Lato (Import from Google Fonts)',
596
+ value: 'Lato',
597
+ },
598
+ {
599
+ name: 'Open Sans (Import from Google Fonts)',
600
+ value: 'Open Sans',
601
+ },
602
+ {
603
+ name: 'Source Sans Pro (Import from Google Fonts)',
604
+ value: 'Source Sans Pro',
605
+ },
606
+ {
607
+ name: 'Droid (Google Fonts)',
608
+ value: 'Droid',
609
+ },
610
+ {
611
+ name: 'I\'ll choose on my own',
612
+ value: false,
613
+ },
614
+ ],
615
+ when: when.customize,
616
+ },
617
+ {
618
+ type: 'list',
619
+ name: 'fontSize',
620
+ message: 'Select your base font size',
621
+ default: '14px',
622
+ choices: [
623
+ {
624
+ name: '12px',
625
+ },
626
+ {
627
+ name: '13px',
628
+ },
629
+ {
630
+ name: '14px (Recommended)',
631
+ value: '14px',
632
+ },
633
+ {
634
+ name: '15px',
635
+ },
636
+ {
637
+ name: '16px',
638
+ },
639
+ {
640
+ name: 'I\'ll choose on my own',
641
+ value: false,
642
+ },
643
+ ],
644
+ when: when.customize,
645
+ },
646
+ {
647
+ type: 'list',
648
+ name: 'primaryColor',
649
+ message: 'Select the closest name for your primary brand color',
650
+ default: '14px',
651
+ choices: [
652
+ {
653
+ name: 'Blue',
654
+ },
655
+ {
656
+ name: 'Green',
657
+ },
658
+ {
659
+ name: 'Orange',
660
+ },
661
+ {
662
+ name: 'Pink',
663
+ },
664
+ {
665
+ name: 'Purple',
666
+ },
667
+ {
668
+ name: 'Red',
669
+ },
670
+ {
671
+ name: 'Teal',
672
+ },
673
+ {
674
+ name: 'Yellow',
675
+ },
676
+ {
677
+ name: 'Black',
678
+ },
679
+ {
680
+ name: 'I\'ll choose on my own',
681
+ value: false,
682
+ },
683
+ ],
684
+ when: when.customize,
685
+ },
686
+ {
687
+ type: 'input',
688
+ name: 'PrimaryHex',
689
+ message: 'Enter a hexcode for your primary brand color',
690
+ when: when.primaryColor,
691
+ },
692
+ {
693
+ type: 'list',
694
+ name: 'secondaryColor',
695
+ message: 'Select the closest name for your secondary brand color',
696
+ default: '14px',
697
+ choices: [
698
+ {
699
+ name: 'Blue',
700
+ },
701
+ {
702
+ name: 'Green',
703
+ },
704
+ {
705
+ name: 'Orange',
706
+ },
707
+ {
708
+ name: 'Pink',
709
+ },
710
+ {
711
+ name: 'Purple',
712
+ },
713
+ {
714
+ name: 'Red',
715
+ },
716
+ {
717
+ name: 'Teal',
718
+ },
719
+ {
720
+ name: 'Yellow',
721
+ },
722
+ {
723
+ name: 'Black',
724
+ },
725
+ {
726
+ name: 'I\'ll choose on my own',
727
+ value: false,
728
+ },
729
+ ],
730
+ when: when.customize,
731
+ },
732
+ {
733
+ type: 'input',
734
+ name: 'secondaryHex',
735
+ message: 'Enter a hexcode for your secondary brand color',
736
+ when: when.secondaryColor,
737
+ },
727
738
  ],
728
- when: when.customize
729
- },
730
- {
731
- type: 'input',
732
- name: 'secondaryHex',
733
- message: 'Enter a hexcode for your secondary brand color',
734
- when: when.secondaryColor
735
- }
736
- ]
737
-
738
- },
739
-
740
- settings: {
741
-
742
- /* Rename Files */
743
- rename: {
744
- json : { extname : '.json' }
739
+
745
740
  },
746
741
 
747
- /* Copy Install Folders */
748
- wrench: {
749
-
750
- // overwrite existing files update & install (default theme / definition)
751
- overwrite: {
752
- forceDelete : true,
753
- excludeHiddenUnix : true,
754
- preserveFiles : false
755
- },
756
-
757
- // only create files that don't exist (site theme update)
758
- merge: {
759
- forceDelete : false,
760
- excludeHiddenUnix : true,
761
- preserveFiles : true
762
- }
763
-
764
- }
765
- }
742
+ settings: {
743
+
744
+ /* Rename Files */
745
+ rename: {
746
+ json: { extname: '.json' },
747
+ },
748
+
749
+ /* Copy Install Folders */
750
+ wrench: {
751
+
752
+ // overwrite existing files update & install (default theme / definition)
753
+ overwrite: {
754
+ forceDelete: true,
755
+ excludeHiddenUnix: true,
756
+ preserveFiles: false,
757
+ },
758
+
759
+ // only create files that don't exist (site theme update)
760
+ merge: {
761
+ forceDelete: false,
762
+ excludeHiddenUnix: true,
763
+ preserveFiles: true,
764
+ },
765
+
766
+ },
767
+ },
766
768
  };