fomantic-ui 2.9.1-beta.3 → 2.9.1-beta.31

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 (540) hide show
  1. package/.eslint/eqeqeq-rule.js +18 -0
  2. package/.eslint/index.js +29 -0
  3. package/.eslint/no-extra-parens-rule.js +17 -0
  4. package/.eslint/package.json +11 -0
  5. package/.eslintrc.js +123 -0
  6. package/.github/workflows/ci.yml +37 -4
  7. package/.github/workflows/nightly.yml +1 -1
  8. package/.github/workflows/release.yml +1 -1
  9. package/.prettierrc.js +12 -0
  10. package/.stylelintrc.js +48 -0
  11. package/README.md +1 -1
  12. package/dist/components/accordion.css +35 -53
  13. package/dist/components/accordion.js +568 -595
  14. package/dist/components/accordion.min.css +2 -2
  15. package/dist/components/accordion.min.js +2 -2
  16. package/dist/components/ad.css +34 -45
  17. package/dist/components/ad.min.css +2 -2
  18. package/dist/components/api.js +1157 -1179
  19. package/dist/components/api.min.js +2 -2
  20. package/dist/components/breadcrumb.css +5 -5
  21. package/dist/components/breadcrumb.min.css +2 -2
  22. package/dist/components/button.css +709 -1121
  23. package/dist/components/button.min.css +2 -2
  24. package/dist/components/calendar.css +24 -27
  25. package/dist/components/calendar.js +1934 -1809
  26. package/dist/components/calendar.min.css +2 -2
  27. package/dist/components/calendar.min.js +2 -2
  28. package/dist/components/card.css +219 -365
  29. package/dist/components/card.min.css +2 -2
  30. package/dist/components/checkbox.css +119 -187
  31. package/dist/components/checkbox.js +842 -841
  32. package/dist/components/checkbox.min.css +2 -2
  33. package/dist/components/checkbox.min.js +2 -2
  34. package/dist/components/comment.css +41 -59
  35. package/dist/components/comment.min.css +2 -2
  36. package/dist/components/container.css +7 -6
  37. package/dist/components/container.min.css +2 -2
  38. package/dist/components/dimmer.css +53 -172
  39. package/dist/components/dimmer.js +706 -737
  40. package/dist/components/dimmer.min.css +2 -2
  41. package/dist/components/dimmer.min.js +2 -2
  42. package/dist/components/divider.css +43 -61
  43. package/dist/components/divider.min.css +2 -2
  44. package/dist/components/dropdown.css +252 -386
  45. package/dist/components/dropdown.js +4179 -4236
  46. package/dist/components/dropdown.min.css +2 -2
  47. package/dist/components/dropdown.min.js +2 -2
  48. package/dist/components/embed.css +18 -29
  49. package/dist/components/embed.js +645 -675
  50. package/dist/components/embed.min.css +2 -2
  51. package/dist/components/embed.min.js +2 -2
  52. package/dist/components/emoji.css +9 -9
  53. package/dist/components/emoji.min.css +1 -1
  54. package/dist/components/feed.css +35 -57
  55. package/dist/components/feed.min.css +2 -2
  56. package/dist/components/flag.css +6 -4
  57. package/dist/components/flag.min.css +2 -2
  58. package/dist/components/flyout.css +86 -141
  59. package/dist/components/flyout.js +1457 -1465
  60. package/dist/components/flyout.min.css +2 -2
  61. package/dist/components/flyout.min.js +2 -2
  62. package/dist/components/form.css +244 -339
  63. package/dist/components/form.js +2020 -2004
  64. package/dist/components/form.min.css +2 -2
  65. package/dist/components/form.min.js +2 -2
  66. package/dist/components/grid.css +172 -319
  67. package/dist/components/grid.min.css +2 -2
  68. package/dist/components/header.css +118 -142
  69. package/dist/components/header.min.css +2 -2
  70. package/dist/components/icon.css +660 -718
  71. package/dist/components/icon.min.css +2 -2
  72. package/dist/components/image.css +39 -63
  73. package/dist/components/image.min.css +2 -2
  74. package/dist/components/input.css +356 -274
  75. package/dist/components/input.min.css +2 -2
  76. package/dist/components/item.css +84 -131
  77. package/dist/components/item.min.css +2 -2
  78. package/dist/components/label.css +359 -410
  79. package/dist/components/label.min.css +2 -2
  80. package/dist/components/list.css +49 -70
  81. package/dist/components/list.min.css +2 -2
  82. package/dist/components/loader.css +67 -155
  83. package/dist/components/loader.min.css +2 -2
  84. package/dist/components/menu.css +269 -431
  85. package/dist/components/menu.min.css +1 -1
  86. package/dist/components/message.css +125 -197
  87. package/dist/components/message.min.css +2 -2
  88. package/dist/components/modal.css +119 -154
  89. package/dist/components/modal.js +1488 -1486
  90. package/dist/components/modal.min.css +2 -2
  91. package/dist/components/modal.min.js +2 -2
  92. package/dist/components/nag.css +53 -63
  93. package/dist/components/nag.js +520 -526
  94. package/dist/components/nag.min.css +2 -2
  95. package/dist/components/nag.min.js +2 -2
  96. package/dist/components/placeholder.css +22 -42
  97. package/dist/components/placeholder.min.css +2 -2
  98. package/dist/components/popup.css +423 -201
  99. package/dist/components/popup.js +1454 -1456
  100. package/dist/components/popup.min.css +2 -2
  101. package/dist/components/popup.min.js +2 -2
  102. package/dist/components/progress.css +106 -211
  103. package/dist/components/progress.js +969 -997
  104. package/dist/components/progress.min.css +2 -2
  105. package/dist/components/progress.min.js +2 -2
  106. package/dist/components/rail.css +15 -20
  107. package/dist/components/rail.min.css +1 -1
  108. package/dist/components/rating.css +80 -121
  109. package/dist/components/rating.js +505 -523
  110. package/dist/components/rating.min.css +2 -2
  111. package/dist/components/rating.min.js +2 -2
  112. package/dist/components/reset.css +8 -13
  113. package/dist/components/reset.min.css +2 -2
  114. package/dist/components/reveal.css +44 -83
  115. package/dist/components/reveal.min.css +2 -2
  116. package/dist/components/search.css +69 -98
  117. package/dist/components/search.js +1493 -1534
  118. package/dist/components/search.min.css +2 -2
  119. package/dist/components/search.min.js +2 -2
  120. package/dist/components/segment.css +148 -224
  121. package/dist/components/segment.min.css +2 -2
  122. package/dist/components/shape.css +14 -30
  123. package/dist/components/shape.js +781 -810
  124. package/dist/components/shape.min.css +2 -2
  125. package/dist/components/shape.min.js +2 -2
  126. package/dist/components/sidebar.css +103 -206
  127. package/dist/components/sidebar.js +1061 -1099
  128. package/dist/components/sidebar.min.css +2 -2
  129. package/dist/components/sidebar.min.js +2 -2
  130. package/dist/components/site.css +28 -41
  131. package/dist/components/site.js +436 -476
  132. package/dist/components/site.min.css +2 -2
  133. package/dist/components/site.min.js +2 -2
  134. package/dist/components/slider.css +93 -121
  135. package/dist/components/slider.js +1310 -1311
  136. package/dist/components/slider.min.css +1 -1
  137. package/dist/components/slider.min.js +2 -2
  138. package/dist/components/state.js +639 -657
  139. package/dist/components/state.min.js +2 -2
  140. package/dist/components/statistic.css +75 -116
  141. package/dist/components/statistic.min.css +2 -2
  142. package/dist/components/step.css +77 -150
  143. package/dist/components/step.min.css +2 -2
  144. package/dist/components/sticky.css +1 -5
  145. package/dist/components/sticky.js +848 -901
  146. package/dist/components/sticky.min.css +2 -2
  147. package/dist/components/sticky.min.js +2 -2
  148. package/dist/components/tab.css +10 -14
  149. package/dist/components/tab.js +922 -965
  150. package/dist/components/tab.min.css +2 -2
  151. package/dist/components/tab.min.js +2 -2
  152. package/dist/components/table.css +547 -774
  153. package/dist/components/table.min.css +2 -2
  154. package/dist/components/text.css +32 -32
  155. package/dist/components/text.min.css +1 -1
  156. package/dist/components/toast.css +69 -147
  157. package/dist/components/toast.js +910 -884
  158. package/dist/components/toast.min.css +2 -2
  159. package/dist/components/toast.min.js +2 -2
  160. package/dist/components/transition.css +369 -1280
  161. package/dist/components/transition.js +1047 -1077
  162. package/dist/components/transition.min.css +2 -2
  163. package/dist/components/transition.min.js +2 -2
  164. package/dist/components/visibility.js +1213 -1245
  165. package/dist/components/visibility.min.js +2 -2
  166. package/dist/semantic.css +5637 -8398
  167. package/dist/semantic.js +29021 -29405
  168. package/dist/semantic.min.css +2 -2
  169. package/dist/semantic.min.js +2 -2
  170. package/dist/themes/basic/assets/fonts/icons.woff2 +0 -0
  171. package/dist/themes/default/assets/fonts/Lato-Bold.woff +0 -0
  172. package/dist/themes/default/assets/fonts/Lato-Bold.woff2 +0 -0
  173. package/dist/themes/default/assets/fonts/Lato-BoldItalic.woff +0 -0
  174. package/dist/themes/default/assets/fonts/Lato-BoldItalic.woff2 +0 -0
  175. package/dist/themes/default/assets/fonts/Lato-Italic.woff +0 -0
  176. package/dist/themes/default/assets/fonts/Lato-Italic.woff2 +0 -0
  177. package/dist/themes/default/assets/fonts/Lato-Regular.woff +0 -0
  178. package/dist/themes/default/assets/fonts/Lato-Regular.woff2 +0 -0
  179. package/dist/themes/default/assets/fonts/LatoLatin-Bold.woff +0 -0
  180. package/dist/themes/default/assets/fonts/LatoLatin-Bold.woff2 +0 -0
  181. package/dist/themes/default/assets/fonts/LatoLatin-BoldItalic.woff +0 -0
  182. package/dist/themes/default/assets/fonts/LatoLatin-BoldItalic.woff2 +0 -0
  183. package/dist/themes/default/assets/fonts/LatoLatin-Italic.woff +0 -0
  184. package/dist/themes/default/assets/fonts/LatoLatin-Italic.woff2 +0 -0
  185. package/dist/themes/default/assets/fonts/LatoLatin-Regular.woff +0 -0
  186. package/dist/themes/default/assets/fonts/LatoLatin-Regular.woff2 +0 -0
  187. package/dist/themes/github/assets/fonts/octicons.woff2 +0 -0
  188. package/examples/.eslintrc.js +6 -0
  189. package/examples/assets/show-examples.js +13 -13
  190. package/examples/components/sticky-context.html +1 -1
  191. package/examples/fixed.html +2 -2
  192. package/examples/grid.html +4 -4
  193. package/examples/login.html +1 -1
  194. package/examples/responsive.html +1 -1
  195. package/examples/sticky.html +3 -3
  196. package/gulpfile.js +13 -11
  197. package/package.json +18 -11
  198. package/scripts/nightly-version.js +83 -75
  199. package/src/_site/collections/menu.overrides +1 -1
  200. package/src/_site/elements/flag.variables +2 -2
  201. package/src/_site/globals/site.variables +1 -1
  202. package/src/_site/modules/embed.variables +3 -0
  203. package/src/definitions/behaviors/api.js +1158 -1180
  204. package/src/definitions/behaviors/form.js +2019 -2003
  205. package/src/definitions/behaviors/state.js +645 -663
  206. package/src/definitions/behaviors/visibility.js +1212 -1244
  207. package/src/definitions/collections/breadcrumb.less +43 -47
  208. package/src/definitions/collections/form.less +866 -884
  209. package/src/definitions/collections/grid.less +1680 -1699
  210. package/src/definitions/collections/menu.less +1521 -1544
  211. package/src/definitions/collections/message.less +294 -298
  212. package/src/definitions/collections/table.less +1657 -1661
  213. package/src/definitions/elements/button.less +1714 -1756
  214. package/src/definitions/elements/container.less +211 -211
  215. package/src/definitions/elements/divider.less +198 -211
  216. package/src/definitions/elements/emoji.less +41 -48
  217. package/src/definitions/elements/flag.less +46 -48
  218. package/src/definitions/elements/header.less +351 -359
  219. package/src/definitions/elements/icon.less +541 -484
  220. package/src/definitions/elements/image.less +216 -227
  221. package/src/definitions/elements/input.less +692 -698
  222. package/src/definitions/elements/label.less +784 -806
  223. package/src/definitions/elements/list.less +810 -814
  224. package/src/definitions/elements/loader.less +273 -268
  225. package/src/definitions/elements/placeholder.less +173 -170
  226. package/src/definitions/elements/rail.less +93 -93
  227. package/src/definitions/elements/reveal.less +192 -198
  228. package/src/definitions/elements/segment.less +742 -749
  229. package/src/definitions/elements/step.less +423 -437
  230. package/src/definitions/elements/text.less +34 -36
  231. package/src/definitions/globals/reset.less +11 -8
  232. package/src/definitions/globals/site.js +435 -475
  233. package/src/definitions/globals/site.less +108 -110
  234. package/src/definitions/modules/accordion.js +567 -594
  235. package/src/definitions/modules/accordion.less +244 -248
  236. package/src/definitions/modules/calendar.js +1933 -1808
  237. package/src/definitions/modules/calendar.less +100 -97
  238. package/src/definitions/modules/checkbox.js +841 -840
  239. package/src/definitions/modules/checkbox.less +531 -552
  240. package/src/definitions/modules/dimmer.js +705 -736
  241. package/src/definitions/modules/dimmer.less +294 -305
  242. package/src/definitions/modules/dropdown.js +4178 -4235
  243. package/src/definitions/modules/dropdown.less +1568 -1598
  244. package/src/definitions/modules/embed.js +644 -674
  245. package/src/definitions/modules/embed.less +82 -84
  246. package/src/definitions/modules/flyout.js +1456 -1464
  247. package/src/definitions/modules/flyout.less +445 -456
  248. package/src/definitions/modules/modal.js +1487 -1485
  249. package/src/definitions/modules/modal.less +458 -467
  250. package/src/definitions/modules/nag.js +519 -525
  251. package/src/definitions/modules/nag.less +136 -149
  252. package/src/definitions/modules/popup.js +1453 -1455
  253. package/src/definitions/modules/popup.less +737 -692
  254. package/src/definitions/modules/progress.js +968 -996
  255. package/src/definitions/modules/progress.less +523 -499
  256. package/src/definitions/modules/rating.js +504 -522
  257. package/src/definitions/modules/rating.less +98 -103
  258. package/src/definitions/modules/search.js +1492 -1533
  259. package/src/definitions/modules/search.less +374 -394
  260. package/src/definitions/modules/shape.js +780 -809
  261. package/src/definitions/modules/shape.less +70 -79
  262. package/src/definitions/modules/sidebar.js +1060 -1098
  263. package/src/definitions/modules/sidebar.less +463 -476
  264. package/src/definitions/modules/slider.js +1309 -1310
  265. package/src/definitions/modules/slider.less +309 -310
  266. package/src/definitions/modules/sticky.js +864 -917
  267. package/src/definitions/modules/sticky.less +17 -25
  268. package/src/definitions/modules/tab.js +921 -964
  269. package/src/definitions/modules/tab.less +48 -54
  270. package/src/definitions/modules/toast.js +909 -883
  271. package/src/definitions/modules/toast.less +589 -589
  272. package/src/definitions/modules/transition.js +1046 -1076
  273. package/src/definitions/modules/transition.less +65 -31
  274. package/src/definitions/views/ad.less +207 -208
  275. package/src/definitions/views/card.less +955 -973
  276. package/src/definitions/views/comment.less +192 -200
  277. package/src/definitions/views/feed.less +222 -226
  278. package/src/definitions/views/item.less +437 -448
  279. package/src/definitions/views/statistic.less +273 -279
  280. package/src/semantic.less +8 -6
  281. package/src/theme.config.example +53 -53
  282. package/src/theme.less +44 -35
  283. package/src/themes/amazon/elements/button.overrides +23 -24
  284. package/src/themes/amazon/elements/button.variables +18 -23
  285. package/src/themes/amazon/globals/site.variables +16 -17
  286. package/src/themes/basic/assets/fonts/icons.woff2 +0 -0
  287. package/src/themes/basic/collections/table.overrides +0 -1
  288. package/src/themes/basic/collections/table.variables +3 -3
  289. package/src/themes/basic/elements/button.overrides +0 -1
  290. package/src/themes/basic/elements/button.variables +9 -9
  291. package/src/themes/basic/elements/icon.overrides +9 -169
  292. package/src/themes/basic/elements/icon.variables +161 -18
  293. package/src/themes/basic/elements/step.overrides +2 -2
  294. package/src/themes/basic/elements/step.variables +2 -2
  295. package/src/themes/basic/globals/reset.overrides +1 -1
  296. package/src/themes/basic/globals/reset.variables +1 -1
  297. package/src/themes/basic/modules/progress.variables +2 -2
  298. package/src/themes/basic/views/card.overrides +0 -1
  299. package/src/themes/basic/views/card.variables +6 -6
  300. package/src/themes/bookish/elements/header.overrides +4 -4
  301. package/src/themes/bookish/elements/header.variables +5 -5
  302. package/src/themes/bootstrap3/elements/button.overrides +3 -0
  303. package/src/themes/bootstrap3/elements/button.variables +20 -25
  304. package/src/themes/chubby/collections/form.overrides +9 -9
  305. package/src/themes/chubby/collections/form.variables +3 -3
  306. package/src/themes/chubby/collections/menu.overrides +3 -0
  307. package/src/themes/chubby/collections/menu.variables +3 -3
  308. package/src/themes/chubby/elements/button.overrides +8 -10
  309. package/src/themes/chubby/elements/button.variables +10 -10
  310. package/src/themes/chubby/elements/header.overrides +1 -1
  311. package/src/themes/chubby/elements/header.variables +4 -4
  312. package/src/themes/chubby/modules/accordion.overrides +2 -2
  313. package/src/themes/chubby/modules/accordion.variables +4 -4
  314. package/src/themes/chubby/views/comment.overrides +5 -5
  315. package/src/themes/chubby/views/comment.variables +11 -11
  316. package/src/themes/classic/collections/table.variables +3 -3
  317. package/src/themes/classic/elements/button.variables +36 -43
  318. package/src/themes/classic/elements/header.variables +4 -4
  319. package/src/themes/classic/modules/progress.variables +3 -3
  320. package/src/themes/classic/views/card.overrides +25 -27
  321. package/src/themes/classic/views/card.variables +7 -7
  322. package/src/themes/colored/modules/checkbox.overrides +3 -0
  323. package/src/themes/colored/modules/checkbox.variables +1 -3
  324. package/src/themes/default/assets/fonts/Lato-Bold.woff +0 -0
  325. package/src/themes/default/assets/fonts/Lato-Bold.woff2 +0 -0
  326. package/src/themes/default/assets/fonts/Lato-BoldItalic.woff +0 -0
  327. package/src/themes/default/assets/fonts/Lato-BoldItalic.woff2 +0 -0
  328. package/src/themes/default/assets/fonts/Lato-Italic.woff +0 -0
  329. package/src/themes/default/assets/fonts/Lato-Italic.woff2 +0 -0
  330. package/src/themes/default/assets/fonts/Lato-Regular.woff +0 -0
  331. package/src/themes/default/assets/fonts/Lato-Regular.woff2 +0 -0
  332. package/src/themes/default/assets/fonts/LatoLatin-Bold.woff +0 -0
  333. package/src/themes/default/assets/fonts/LatoLatin-Bold.woff2 +0 -0
  334. package/src/themes/default/assets/fonts/LatoLatin-BoldItalic.woff +0 -0
  335. package/src/themes/default/assets/fonts/LatoLatin-BoldItalic.woff2 +0 -0
  336. package/src/themes/default/assets/fonts/LatoLatin-Italic.woff +0 -0
  337. package/src/themes/default/assets/fonts/LatoLatin-Italic.woff2 +0 -0
  338. package/src/themes/default/assets/fonts/LatoLatin-Regular.woff +0 -0
  339. package/src/themes/default/assets/fonts/LatoLatin-Regular.woff2 +0 -0
  340. package/src/themes/default/collections/breadcrumb.variables +4 -4
  341. package/src/themes/default/collections/form.variables +15 -16
  342. package/src/themes/default/collections/grid.overrides +0 -1
  343. package/src/themes/default/collections/grid.variables +14 -16
  344. package/src/themes/default/collections/menu.variables +31 -45
  345. package/src/themes/default/collections/message.variables +84 -123
  346. package/src/themes/default/collections/table.overrides +3 -0
  347. package/src/themes/default/collections/table.variables +30 -34
  348. package/src/themes/default/elements/button.variables +45 -52
  349. package/src/themes/default/elements/container.variables +8 -16
  350. package/src/themes/default/elements/divider.overrides +8 -9
  351. package/src/themes/default/elements/divider.variables +5 -6
  352. package/src/themes/default/elements/emoji.overrides +0 -1
  353. package/src/themes/default/elements/emoji.variables +3555 -3555
  354. package/src/themes/default/elements/flag.variables +1594 -1594
  355. package/src/themes/default/elements/header.overrides +0 -1
  356. package/src/themes/default/elements/header.variables +21 -21
  357. package/src/themes/default/elements/icon.variables +2023 -2009
  358. package/src/themes/default/elements/image.variables +6 -7
  359. package/src/themes/default/elements/input.variables +11 -12
  360. package/src/themes/default/elements/label.variables +25 -26
  361. package/src/themes/default/elements/list.variables +17 -21
  362. package/src/themes/default/elements/loader.variables +16 -17
  363. package/src/themes/default/elements/placeholder.variables +12 -9
  364. package/src/themes/default/elements/rail.variables +4 -5
  365. package/src/themes/default/elements/reveal.variables +1 -1
  366. package/src/themes/default/elements/segment.variables +24 -36
  367. package/src/themes/default/elements/step.overrides +4 -4
  368. package/src/themes/default/elements/step.variables +19 -22
  369. package/src/themes/default/elements/text.variables +2 -3
  370. package/src/themes/default/globals/colors.less +588 -588
  371. package/src/themes/default/globals/reset.overrides +63 -59
  372. package/src/themes/default/globals/reset.variables +1 -1
  373. package/src/themes/default/globals/site.variables +1075 -1123
  374. package/src/themes/default/globals/variation.variables +13 -4
  375. package/src/themes/default/modules/accordion.overrides +11 -11
  376. package/src/themes/default/modules/accordion.variables +15 -20
  377. package/src/themes/default/modules/calendar.variables +2 -0
  378. package/src/themes/default/modules/chatroom.variables +1 -1
  379. package/src/themes/default/modules/checkbox.overrides +8 -9
  380. package/src/themes/default/modules/checkbox.variables +24 -33
  381. package/src/themes/default/modules/dimmer.variables +14 -17
  382. package/src/themes/default/modules/dropdown.overrides +17 -17
  383. package/src/themes/default/modules/dropdown.variables +29 -31
  384. package/src/themes/default/modules/embed.variables +9 -13
  385. package/src/themes/default/modules/flyout.variables +8 -8
  386. package/src/themes/default/modules/modal.variables +64 -67
  387. package/src/themes/default/modules/nag.variables +11 -14
  388. package/src/themes/default/modules/popup.variables +14 -13
  389. package/src/themes/default/modules/progress.variables +17 -19
  390. package/src/themes/default/modules/rating.variables +10 -12
  391. package/src/themes/default/modules/search.variables +12 -17
  392. package/src/themes/default/modules/shape.variables +7 -8
  393. package/src/themes/default/modules/sidebar.variables +4 -4
  394. package/src/themes/default/modules/slider.variables +55 -54
  395. package/src/themes/default/modules/sticky.variables +1 -1
  396. package/src/themes/default/modules/toast.variables +8 -8
  397. package/src/themes/default/modules/transition.overrides +936 -915
  398. package/src/themes/default/modules/transition.variables +8 -1
  399. package/src/themes/default/views/ad.variables +1 -1
  400. package/src/themes/default/views/card.variables +33 -45
  401. package/src/themes/default/views/comment.variables +7 -9
  402. package/src/themes/default/views/feed.variables +10 -10
  403. package/src/themes/default/views/item.variables +20 -23
  404. package/src/themes/default/views/statistic.variables +8 -8
  405. package/src/themes/duo/elements/loader.variables +1 -1
  406. package/src/themes/famfamfam/elements/flag.overrides +263 -268
  407. package/src/themes/famfamfam/elements/flag.variables +4 -4
  408. package/src/themes/fixed-width/collections/grid.variables +4 -4
  409. package/src/themes/fixed-width/modules/modal.variables +11 -13
  410. package/src/themes/flat/collections/form.overrides +9 -9
  411. package/src/themes/flat/collections/form.variables +16 -17
  412. package/src/themes/flat/globals/site.variables +69 -74
  413. package/src/themes/github/assets/fonts/octicons.woff2 +0 -0
  414. package/src/themes/github/collections/breadcrumb.variables +0 -1
  415. package/src/themes/github/collections/form.overrides +7 -8
  416. package/src/themes/github/collections/form.variables +16 -18
  417. package/src/themes/github/collections/grid.variables +1 -2
  418. package/src/themes/github/collections/menu.overrides +2 -2
  419. package/src/themes/github/collections/menu.variables +24 -26
  420. package/src/themes/github/collections/message.overrides +3 -3
  421. package/src/themes/github/collections/message.variables +12 -14
  422. package/src/themes/github/collections/table.variables +2 -2
  423. package/src/themes/github/elements/button.overrides +0 -1
  424. package/src/themes/github/elements/button.variables +26 -30
  425. package/src/themes/github/elements/header.variables +2 -2
  426. package/src/themes/github/elements/icon.overrides +3 -208
  427. package/src/themes/github/elements/icon.variables +234 -19
  428. package/src/themes/github/elements/image.variables +1 -1
  429. package/src/themes/github/elements/input.overrides +16 -16
  430. package/src/themes/github/elements/input.variables +4 -5
  431. package/src/themes/github/elements/label.overrides +3 -3
  432. package/src/themes/github/elements/label.variables +0 -1
  433. package/src/themes/github/elements/segment.variables +9 -10
  434. package/src/themes/github/elements/step.overrides +13 -13
  435. package/src/themes/github/elements/step.variables +6 -6
  436. package/src/themes/github/globals/site.variables +16 -16
  437. package/src/themes/github/modules/dropdown.overrides +18 -19
  438. package/src/themes/github/modules/dropdown.variables +8 -10
  439. package/src/themes/github/modules/popup.variables +0 -2
  440. package/src/themes/gmail/collections/message.overrides +3 -0
  441. package/src/themes/gmail/collections/message.variables +4 -4
  442. package/src/themes/instagram/views/card.overrides +4 -5
  443. package/src/themes/instagram/views/card.variables +7 -8
  444. package/src/themes/joypixels/elements/emoji.overrides +0 -2
  445. package/src/themes/joypixels/elements/emoji.variables +3554 -3554
  446. package/src/themes/material/collections/menu.overrides +1 -1
  447. package/src/themes/material/collections/menu.variables +4 -4
  448. package/src/themes/material/elements/button.overrides +7 -9
  449. package/src/themes/material/elements/button.variables +44 -46
  450. package/src/themes/material/elements/header.overrides +3 -3
  451. package/src/themes/material/elements/header.variables +8 -10
  452. package/src/themes/material/elements/icon.overrides +3 -934
  453. package/src/themes/material/elements/icon.variables +958 -18
  454. package/src/themes/material/globals/site.overrides +3 -0
  455. package/src/themes/material/globals/site.variables +83 -84
  456. package/src/themes/material/modules/dropdown.overrides +2 -2
  457. package/src/themes/material/modules/dropdown.variables +5 -5
  458. package/src/themes/material/modules/modal.overrides +3 -3
  459. package/src/themes/material/modules/modal.variables +4 -5
  460. package/src/themes/pulsar/elements/loader.overrides +23 -61
  461. package/src/themes/raised/elements/button.variables +8 -9
  462. package/src/themes/resetcss/globals/reset.overrides +115 -33
  463. package/src/themes/resetcss/globals/reset.variables +1 -1
  464. package/src/themes/round/elements/button.overrides +3 -0
  465. package/src/themes/round/elements/button.variables +33 -38
  466. package/src/themes/rtl/globals/site.overrides +1 -1
  467. package/src/themes/rtl/globals/site.variables +5 -6
  468. package/src/themes/striped/modules/progress.overrides +20 -16
  469. package/src/themes/systemfont/globals/reset.overrides +1 -1
  470. package/src/themes/systemfont/globals/site.variables +6 -6
  471. package/src/themes/timeline/views/feed.overrides +12 -12
  472. package/src/themes/timeline/views/feed.variables +8 -8
  473. package/src/themes/twitter/elements/button.overrides +4 -5
  474. package/src/themes/twitter/elements/button.variables +17 -18
  475. package/src/themes/twitter/elements/emoji.variables +3555 -3555
  476. package/tasks/.eslintrc.js +9 -0
  477. package/tasks/README.md +2 -4
  478. package/tasks/admin/components/create.js +268 -277
  479. package/tasks/admin/components/init.js +123 -129
  480. package/tasks/admin/components/update.js +151 -158
  481. package/tasks/admin/distributions/create.js +183 -189
  482. package/tasks/admin/distributions/init.js +125 -131
  483. package/tasks/admin/distributions/update.js +147 -153
  484. package/tasks/admin/publish.js +5 -9
  485. package/tasks/admin/register.js +37 -39
  486. package/tasks/admin/release.js +8 -12
  487. package/tasks/build/assets.js +43 -40
  488. package/tasks/build/css.js +230 -217
  489. package/tasks/build/javascript.js +120 -114
  490. package/tasks/build.js +11 -11
  491. package/tasks/check-install.js +15 -17
  492. package/tasks/clean.js +6 -6
  493. package/tasks/collections/README.md +3 -5
  494. package/tasks/collections/admin.js +34 -36
  495. package/tasks/collections/build.js +18 -21
  496. package/tasks/collections/docs.js +10 -13
  497. package/tasks/collections/install.js +10 -13
  498. package/tasks/collections/rtl.js +8 -12
  499. package/tasks/collections/various.js +9 -12
  500. package/tasks/config/admin/github.js +17 -19
  501. package/tasks/config/admin/oauth.example.js +4 -4
  502. package/tasks/config/admin/release.js +98 -98
  503. package/tasks/config/admin/templates/README.md +8 -8
  504. package/tasks/config/admin/templates/bower.json +3 -2
  505. package/tasks/config/admin/templates/component-package.js +9 -10
  506. package/tasks/config/admin/templates/css-package.js +19 -21
  507. package/tasks/config/admin/templates/less-package.js +12 -14
  508. package/tasks/config/admin/templates/package.json +5 -5
  509. package/tasks/config/defaults.js +116 -116
  510. package/tasks/config/docs.js +23 -23
  511. package/tasks/config/npm/gulpfile.js +15 -14
  512. package/tasks/config/project/config.js +124 -136
  513. package/tasks/config/project/install.js +722 -719
  514. package/tasks/config/project/release.js +34 -41
  515. package/tasks/config/tasks.js +168 -167
  516. package/tasks/config/user.js +28 -29
  517. package/tasks/docs/build.js +100 -96
  518. package/tasks/docs/metadata.js +91 -98
  519. package/tasks/docs/serve.js +84 -82
  520. package/tasks/install.js +373 -382
  521. package/tasks/rtl/build.js +3 -3
  522. package/tasks/rtl/watch.js +4 -3
  523. package/tasks/version.js +4 -6
  524. package/tasks/watch.js +29 -31
  525. package/test/.eslintrc.js +23 -0
  526. package/test/meteor/assets.js +11 -14
  527. package/test/meteor/fonts.js +12 -13
  528. package/test/modules/accordion.spec.js +6 -8
  529. package/test/modules/checkbox.spec.js +5 -7
  530. package/test/modules/dropdown.spec.js +5 -7
  531. package/test/modules/modal.spec.js +6 -8
  532. package/test/modules/module.spec.js +158 -178
  533. package/test/modules/popup.spec.js +5 -7
  534. package/test/modules/search.spec.js +5 -7
  535. package/test/modules/shape.spec.js +5 -7
  536. package/test/modules/sidebar.spec.js +5 -7
  537. package/test/modules/tab.spec.js +6 -8
  538. package/test/modules/transition.spec.js +5 -7
  539. package/test/modules/video.spec.js +5 -7
  540. package/.github/workflows/codeql.yml +0 -68
@@ -12,158 +12,152 @@
12
12
 
13
13
  */
14
14
 
15
- var
16
- gulp = require('gulp'),
17
-
18
- // node dependencies
19
- console = require('better-console'),
20
- del = require('del'),
21
- fs = require('fs'),
22
- path = require('path'),
23
- git = require('gulp-git'),
24
- mkdirp = require('mkdirp'),
25
-
26
- // admin files
27
- github = require('../../config/admin/github.js'),
28
- release = require('../../config/admin/release'),
29
- project = require('../../config/project/release'),
30
-
31
-
32
- // oAuth configuration for GitHub
33
- oAuth = fs.existsSync(__dirname + '/../../config/admin/oauth.js')
34
- ? require('../../config/admin/oauth')
35
- : false,
36
-
37
- // shorthand
38
- version = project.version
15
+ const
16
+ gulp = require('gulp'),
17
+
18
+ // node dependencies
19
+ console = require('better-console'),
20
+ del = require('del'),
21
+ fs = require('fs'),
22
+ path = require('path'),
23
+ git = require('gulp-git'),
24
+ mkdirp = require('mkdirp'),
25
+
26
+ // admin files
27
+ release = require('../../config/admin/release'),
28
+ project = require('../../config/project/release'),
29
+
30
+ // oAuth configuration for GitHub
31
+ oAuth = fs.existsSync(path.join(__dirname, '/../../config/admin/oauth.js'))
32
+ ? require('../../config/admin/oauth.js') // eslint-disable-line import/extensions
33
+ : false,
34
+
35
+ // shorthand
36
+ version = project.version
39
37
  ;
40
38
 
41
- module.exports = function(callback) {
39
+ module.exports = function (callback) {
40
+ const github = require('../../config/admin/github'); // eslint-disable-line global-require
42
41
 
43
- var
44
- index = -1,
45
- total = release.components.length,
46
- timer,
47
- stream,
48
- stepRepo
49
- ;
50
-
51
- if(!oAuth) {
52
- console.error('Must add oauth token for GitHub in tasks/config/admin/oauth.js');
53
- return;
54
- }
55
-
56
- // Do Git commands synchronously per component, to avoid issues
57
- stepRepo = function() {
42
+ let
43
+ index = -1,
44
+ total = release.components.length,
45
+ timer,
46
+ stream,
47
+ stepRepo
48
+ ;
58
49
 
59
- index = index + 1;
50
+ if (!oAuth) {
51
+ console.error('Must add oauth token for GitHub in tasks/config/admin/oauth.js');
60
52
 
61
- if(index >= total) {
62
- callback();
63
- return;
53
+ return;
64
54
  }
65
55
 
66
- var
67
- component = release.components[index],
68
- outputDirectory = path.resolve(release.outputRoot + component),
69
- capitalizedComponent = component.charAt(0).toUpperCase() + component.slice(1),
70
- repoName = release.componentRepoRoot + capitalizedComponent,
56
+ // Do Git commands synchronously per component, to avoid issues
57
+ stepRepo = function () {
58
+ index += 1;
71
59
 
72
- gitOptions = { cwd: outputDirectory },
73
- pullOptions = { args: '-q', cwd: outputDirectory, quiet: true },
74
- resetOptions = { args: '-q --hard', cwd: outputDirectory, quiet: true },
60
+ if (index >= total) {
61
+ callback();
75
62
 
76
- gitURL = 'git@github.com:' + release.org + '/' + repoName + '.git',
77
- repoURL = 'https://github.com/' + release.org + '/' + repoName + '/',
78
- localRepoSetup = fs.existsSync(path.join(outputDirectory, '.git'))
79
- ;
63
+ return;
64
+ }
80
65
 
81
- console.log('Processing repository: ' + outputDirectory);
66
+ let
67
+ component = release.components[index],
68
+ outputDirectory = path.resolve(release.outputRoot + component),
69
+ capitalizedComponent = component.charAt(0).toUpperCase() + component.slice(1),
70
+ repoName = release.componentRepoRoot + capitalizedComponent,
82
71
 
83
- // create folder if doesn't exist
84
- if( !fs.existsSync(outputDirectory) ) {
85
- mkdirp.sync(outputDirectory);
86
- }
72
+ gitOptions = { cwd: outputDirectory },
73
+ pullOptions = { args: '-q', cwd: outputDirectory, quiet: true },
74
+ resetOptions = { args: '-q --hard', cwd: outputDirectory, quiet: true },
87
75
 
88
- // clean folder
89
- if(release.outputRoot.search('../repos') == 0) {
90
- console.info('Cleaning dir', outputDirectory);
91
- del.sync([outputDirectory + '**/*'], {silent: true, force: true});
92
- }
76
+ gitURL = 'git@github.com:' + release.org + '/' + repoName + '.git',
77
+ repoURL = 'https://github.com/' + release.org + '/' + repoName + '/',
78
+ localRepoSetup = fs.existsSync(path.join(outputDirectory, '.git'))
79
+ ;
93
80
 
94
- // set-up local repo
95
- function setupRepo() {
96
- if(localRepoSetup) {
97
- addRemote();
98
- }
99
- else {
100
- initRepo();
101
- }
102
- }
81
+ console.log('Processing repository: ' + outputDirectory);
103
82
 
104
- function initRepo() {
105
- console.info('Initializing repository for ' + component);
106
- git.init(gitOptions, function(error) {
107
- if(error) {
108
- console.error('Error initializing repo', error);
83
+ // create folder if doesn't exist
84
+ if (!fs.existsSync(outputDirectory)) {
85
+ mkdirp.sync(outputDirectory);
109
86
  }
110
- addRemote();
111
- });
112
- }
113
-
114
- function createRepo() {
115
- console.info('Creating GitHub repo ' + repoURL);
116
- github.repos.createFromOrg({
117
- org : release.org,
118
- name : repoName,
119
- homepage : release.homepage
120
- }, function() {
121
- setupRepo();
122
- });
123
- }
124
87
 
125
- function addRemote() {
126
- console.info('Adding remote origin as ' + gitURL);
127
- git.addRemote('origin', gitURL, gitOptions, function(){
128
- pullFiles();
129
- });
130
- }
88
+ // clean folder
89
+ if (release.outputRoot.startsWith('../repos')) {
90
+ console.info('Cleaning dir', outputDirectory);
91
+ del.sync([outputDirectory + '**/*'], { silent: true, force: true });
92
+ }
131
93
 
132
- function pullFiles() {
133
- console.info('Pulling ' + component + ' files');
134
- git.pull('origin', 'master', pullOptions, function(error) {
135
- resetFiles();
136
- });
137
- }
94
+ // set-up local repo
95
+ function setupRepo() {
96
+ if (localRepoSetup) {
97
+ addRemote();
98
+ } else {
99
+ initRepo();
100
+ }
101
+ }
138
102
 
139
- function resetFiles() {
140
- console.info('Resetting files to head');
141
- git.reset('HEAD', resetOptions, function(error) {
142
- nextRepo();
143
- });
144
- }
103
+ function initRepo() {
104
+ console.info('Initializing repository for ' + component);
105
+ git.init(gitOptions, function (error) {
106
+ if (error) {
107
+ console.error('Error initializing repo', error);
108
+ }
109
+ addRemote();
110
+ });
111
+ }
145
112
 
146
- function nextRepo() {
147
- //console.log('Sleeping for 1 second...');
148
- // avoid rate throttling
149
- global.clearTimeout(timer);
150
- timer = global.setTimeout(function() {
151
- stepRepo()
152
- }, 0);
153
- }
113
+ function createRepo() {
114
+ console.info('Creating GitHub repo ' + repoURL);
115
+ github.repos.createFromOrg({
116
+ org: release.org,
117
+ name: repoName,
118
+ homepage: release.homepage,
119
+ }, function () {
120
+ setupRepo();
121
+ });
122
+ }
154
123
 
124
+ function addRemote() {
125
+ console.info('Adding remote origin as ' + gitURL);
126
+ git.addRemote('origin', gitURL, gitOptions, function () {
127
+ pullFiles();
128
+ });
129
+ }
155
130
 
156
- if(localRepoSetup) {
157
- pullFiles();
158
- }
159
- else {
160
- setupRepo();
161
- // createRepo() only use to create remote repo (easier to do manually)
162
- }
131
+ function pullFiles() {
132
+ console.info('Pulling ' + component + ' files');
133
+ git.pull('origin', 'master', pullOptions, function (error) {
134
+ resetFiles();
135
+ });
136
+ }
163
137
 
164
- };
138
+ function resetFiles() {
139
+ console.info('Resetting files to head');
140
+ git.reset('HEAD', resetOptions, function (error) {
141
+ nextRepo();
142
+ });
143
+ }
165
144
 
166
- stepRepo();
145
+ function nextRepo() { // eslint-disable-line unicorn/consistent-function-scoping
146
+ // console.log('Sleeping for 1 second...');
147
+ // avoid rate throttling
148
+ global.clearTimeout(timer);
149
+ timer = global.setTimeout(function () {
150
+ stepRepo();
151
+ }, 0);
152
+ }
167
153
 
154
+ if (localRepoSetup) {
155
+ pullFiles();
156
+ } else {
157
+ setupRepo();
158
+ // createRepo() only use to create remote repo (easier to do manually)
159
+ }
160
+ };
168
161
 
162
+ stepRepo();
169
163
  };
@@ -12,171 +12,164 @@
12
12
 
13
13
  */
14
14
 
15
- var
16
- gulp = require('gulp'),
17
-
18
- // node dependencies
19
- console = require('better-console'),
20
- fs = require('fs'),
21
- path = require('path'),
22
- git = require('gulp-git'),
23
-
24
- // admin files
25
- github = require('../../config/admin/github.js'),
26
- release = require('../../config/admin/release'),
27
- project = require('../../config/project/release'),
28
-
29
-
30
- // oAuth configuration for GitHub
31
- oAuth = fs.existsSync(__dirname + '/../../config/admin/oauth.js')
32
- ? require('../../config/admin/oauth')
33
- : false,
34
-
35
- // shorthand
36
- version = project.version
37
- ;
38
-
39
- module.exports = function(callback) {
40
-
41
- var
42
- index = -1,
43
- total = release.components.length,
44
- timer,
45
- stream,
46
- stepRepo
47
- ;
48
-
49
- if(!oAuth) {
50
- console.error('Must add oauth token for GitHub in tasks/config/admin/oauth.js');
51
- return;
52
- }
53
-
54
- // Do Git commands synchronously per component, to avoid issues
55
- stepRepo = function() {
56
-
57
- index = index + 1;
58
- if(index >= total) {
59
- callback();
60
- return;
61
- }
62
-
63
- var
64
- component = release.components[index],
65
- outputDirectory = path.resolve(path.join(release.outputRoot, component)),
66
- capitalizedComponent = component.charAt(0).toUpperCase() + component.slice(1),
67
- repoName = release.componentRepoRoot + capitalizedComponent,
68
-
69
- gitURL = 'https://github.com/' + release.org + '/' + repoName + '.git',
70
- repoURL = 'https://github.com/' + release.org + '/' + repoName + '/',
71
-
72
- commitArgs = (oAuth.name !== undefined && oAuth.email !== undefined)
73
- ? '--author "' + oAuth.name + ' <' + oAuth.email + '>"'
74
- : '',
75
-
76
- componentPackage = fs.existsSync(outputDirectory + 'package.json' )
77
- ? require(outputDirectory + 'package.json')
15
+ const
16
+ gulp = require('gulp'),
17
+
18
+ // node dependencies
19
+ console = require('better-console'),
20
+ fs = require('fs'),
21
+ path = require('path'),
22
+ git = require('gulp-git'),
23
+
24
+ // admin files
25
+ release = require('../../config/admin/release'),
26
+ project = require('../../config/project/release'),
27
+
28
+ // oAuth configuration for GitHub
29
+ oAuth = fs.existsSync(path.join(__dirname, '/../../config/admin/oauth.js'))
30
+ ? require('../../config/admin/oauth.js') // eslint-disable-line import/extensions
78
31
  : false,
79
32
 
80
- isNewVersion = (version && componentPackage.version != version),
81
-
82
- commitMessage = (isNewVersion)
83
- ? 'Updated component to version ' + version
84
- : 'Updated files from main repo',
85
-
86
- gitOptions = { cwd: outputDirectory },
87
- commitOptions = { args: commitArgs, cwd: outputDirectory },
88
- releaseOptions = { tag_name: version, owner: release.org, repo: repoName },
33
+ // shorthand
34
+ version = project.version
35
+ ;
89
36
 
90
- fileModeOptions = { args : 'config core.fileMode false', cwd: outputDirectory },
91
- usernameOptions = { args : 'config user.name "' + oAuth.name + '"', cwd: outputDirectory },
92
- emailOptions = { args : 'config user.email "' + oAuth.email + '"', cwd: outputDirectory },
93
- versionOptions = { args : 'rev-parse --verify HEAD', cwd: outputDirectory },
37
+ module.exports = function (callback) {
38
+ const github = require('../../config/admin/github'); // eslint-disable-line global-require
94
39
 
95
- localRepoSetup = fs.existsSync(path.join(outputDirectory, '.git')),
96
- canProceed = true
40
+ let
41
+ index = -1,
42
+ total = release.components.length,
43
+ timer,
44
+ stream,
45
+ stepRepo
97
46
  ;
98
47
 
48
+ if (!oAuth) {
49
+ console.error('Must add oauth token for GitHub in tasks/config/admin/oauth.js');
99
50
 
100
- console.info('Processing repository:' + outputDirectory);
101
-
102
- function setConfig() {
103
- git.exec(fileModeOptions, function() {
104
- git.exec(usernameOptions, function () {
105
- git.exec(emailOptions, function () {
106
- commitFiles();
107
- });
108
- });
109
- });
110
- }
111
-
112
-
113
- // standard path
114
- function commitFiles() {
115
- // commit files
116
- console.info('Committing ' + component + ' files', commitArgs);
117
- gulp.src('./', gitOptions)
118
- .pipe(git.add(gitOptions))
119
- .pipe(git.commit(commitMessage, commitOptions))
120
- .on('error', function(error) {
121
- // canProceed = false; bug in git commit <https://github.com/stevelacy/gulp-git/issues/49>
122
- })
123
- .on('finish', function(callback) {
124
- if(canProceed) {
125
- pushFiles();
126
- }
127
- else {
128
- console.info('Nothing new to commit');
129
- nextRepo();
130
- }
131
- })
132
- ;
133
- }
134
-
135
- // push changes to remote
136
- function pushFiles() {
137
- console.info('Pushing files for ' + component);
138
- git.push('origin', 'master', { args: '', cwd: outputDirectory }, function(error) {
139
- console.info('Push completed successfully');
140
- getSHA();
141
- });
142
- }
143
-
144
- // gets SHA of last commit
145
- function getSHA() {
146
- git.exec(versionOptions, function(error, version) {
147
- version = version.trim();
148
- createRelease(version);
149
- });
150
- }
151
-
152
- // create release on GitHub.com
153
- function createRelease(version) {
154
- if(version) {
155
- releaseOptions.target_commitish = version;
156
- }
157
- github.repos.createRelease(releaseOptions, function() {
158
- nextRepo();
159
- });
160
- }
161
-
162
- // Steps to next repository
163
- function nextRepo() {
164
- console.log('Sleeping for 1 second...');
165
- // avoid rate throttling
166
- global.clearTimeout(timer);
167
- timer = global.setTimeout(stepRepo, 100);
51
+ return;
168
52
  }
169
53
 
170
-
171
- if(localRepoSetup) {
172
- setConfig();
173
- }
174
- else {
175
- console.error('Repository must be setup before running update components');
176
- }
177
-
178
- };
179
-
180
- stepRepo();
181
-
54
+ // Do Git commands synchronously per component, to avoid issues
55
+ stepRepo = function () {
56
+ index += 1;
57
+ if (index >= total) {
58
+ callback();
59
+
60
+ return;
61
+ }
62
+
63
+ let
64
+ component = release.components[index],
65
+ outputDirectory = path.resolve(path.join(release.outputRoot, component)),
66
+ capitalizedComponent = component.charAt(0).toUpperCase() + component.slice(1),
67
+ repoName = release.componentRepoRoot + capitalizedComponent,
68
+
69
+ gitURL = 'https://github.com/' + release.org + '/' + repoName + '.git',
70
+ repoURL = 'https://github.com/' + release.org + '/' + repoName + '/',
71
+
72
+ commitArgs = oAuth.name !== undefined && oAuth.email !== undefined
73
+ ? '--author "' + oAuth.name + ' <' + oAuth.email + '>"'
74
+ : '',
75
+
76
+ componentPackage = fs.existsSync(outputDirectory + 'package.json')
77
+ ? require(outputDirectory + 'package.json') // eslint-disable-line global-require, import/no-dynamic-require
78
+ : false,
79
+
80
+ isNewVersion = version && componentPackage.version !== version,
81
+
82
+ commitMessage = isNewVersion
83
+ ? 'Updated component to version ' + version
84
+ : 'Updated files from main repo',
85
+
86
+ gitOptions = { cwd: outputDirectory },
87
+ commitOptions = { args: commitArgs, cwd: outputDirectory },
88
+ releaseOptions = { tag_name: version, owner: release.org, repo: repoName },
89
+
90
+ fileModeOptions = { args: 'config core.fileMode false', cwd: outputDirectory },
91
+ usernameOptions = { args: 'config user.name "' + oAuth.name + '"', cwd: outputDirectory },
92
+ emailOptions = { args: 'config user.email "' + oAuth.email + '"', cwd: outputDirectory },
93
+ versionOptions = { args: 'rev-parse --verify HEAD', cwd: outputDirectory },
94
+
95
+ localRepoSetup = fs.existsSync(path.join(outputDirectory, '.git')),
96
+ canProceed = true
97
+ ;
98
+
99
+ console.info('Processing repository:' + outputDirectory);
100
+
101
+ function setConfig() {
102
+ git.exec(fileModeOptions, function () {
103
+ git.exec(usernameOptions, function () {
104
+ git.exec(emailOptions, function () {
105
+ commitFiles();
106
+ });
107
+ });
108
+ });
109
+ }
110
+
111
+ // standard path
112
+ function commitFiles() {
113
+ // commit files
114
+ console.info('Committing ' + component + ' files', commitArgs);
115
+ gulp.src('./', gitOptions)
116
+ .pipe(git.add(gitOptions))
117
+ .pipe(git.commit(commitMessage, commitOptions))
118
+ .on('error', function (error) {
119
+ // canProceed = false; bug in git commit <https://github.com/stevelacy/gulp-git/issues/49>
120
+ })
121
+ .on('finish', function (callback) {
122
+ if (canProceed) {
123
+ pushFiles();
124
+ } else {
125
+ console.info('Nothing new to commit');
126
+ nextRepo();
127
+ }
128
+ })
129
+ ;
130
+ }
131
+
132
+ // push changes to remote
133
+ function pushFiles() {
134
+ console.info('Pushing files for ' + component);
135
+ git.push('origin', 'master', { args: '', cwd: outputDirectory }, function (error) {
136
+ console.info('Push completed successfully');
137
+ getSHA();
138
+ });
139
+ }
140
+
141
+ // gets SHA of last commit
142
+ function getSHA() {
143
+ git.exec(versionOptions, function (error, version) {
144
+ version = version.trim();
145
+ createRelease(version);
146
+ });
147
+ }
148
+
149
+ // create release on GitHub.com
150
+ function createRelease(version) {
151
+ if (version) {
152
+ releaseOptions.target_commitish = version;
153
+ }
154
+ github.repos.createRelease(releaseOptions, function () {
155
+ nextRepo();
156
+ });
157
+ }
158
+
159
+ // Steps to next repository
160
+ function nextRepo() {
161
+ console.log('Sleeping for 1 second...');
162
+ // avoid rate throttling
163
+ global.clearTimeout(timer);
164
+ timer = global.setTimeout(stepRepo, 100);
165
+ }
166
+
167
+ if (localRepoSetup) {
168
+ setConfig();
169
+ } else {
170
+ console.error('Repository must be setup before running update components');
171
+ }
172
+ };
173
+
174
+ stepRepo();
182
175
  };