rbbt-rest 1.4.12 → 1.4.13

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 (722) hide show
  1. checksums.yaml +4 -4
  2. data/lib/rbbt/rest/common/cache.rb +1 -2
  3. data/lib/rbbt/rest/common/forms.rb +1 -1
  4. data/lib/rbbt/rest/common/misc.rb +1 -1
  5. data/lib/rbbt/rest/common/render.rb +29 -7
  6. data/lib/rbbt/rest/common/table.rb +17 -3
  7. data/lib/rbbt/rest/entity.rb +1 -0
  8. data/lib/rbbt/rest/entity/rest.rb +1 -0
  9. data/lib/rbbt/rest/main.rb +36 -14
  10. data/lib/rbbt/rest/web_tool.rb +19 -1
  11. data/lib/rbbt/rest/workflow.rb +4 -10
  12. data/lib/rbbt/rest/workflow/render.rb +1 -1
  13. data/share/views/compass/app.sass +3 -1
  14. data/share/views/compass/base/backgrounds.sass +41 -0
  15. data/share/views/compass/base/blocks.sass +92 -0
  16. data/share/views/compass/base/colors.sass +65 -0
  17. data/share/views/compass/base/font-scale.sass +20 -0
  18. data/share/views/compass/base/fonts.sass +56 -0
  19. data/share/views/compass/base/hide.sass +95 -0
  20. data/share/views/compass/base/icon_content.scss +569 -0
  21. data/share/views/compass/base/icons.sass +75 -0
  22. data/share/views/compass/base/material.sass +223 -0
  23. data/share/views/compass/base/misc.sass +2 -0
  24. data/share/views/compass/base/screen_sizes.sass +16 -0
  25. data/share/views/compass/base/text.sass +70 -0
  26. data/share/views/compass/base/util.sass +6 -0
  27. data/share/views/compass/base/variables.sass +68 -0
  28. data/share/views/compass/base/variables/color.sass +27 -0
  29. data/share/views/compass/cards.sass +131 -0
  30. data/share/views/compass/color.sass +10 -0
  31. data/share/views/compass/color/blocks.sass +0 -0
  32. data/share/views/compass/color/buttons.sass +36 -0
  33. data/share/views/compass/color/elements.sass +2 -0
  34. data/share/views/compass/color/font.sass +13 -0
  35. data/share/views/compass/color/top_bar.sass +18 -0
  36. data/share/views/compass/elements.sass +218 -0
  37. data/share/views/compass/elements/buttons.sass +18 -0
  38. data/share/views/compass/elements/forms.sass +197 -0
  39. data/share/views/compass/elements/lists.sass +14 -0
  40. data/share/views/compass/elements/materials.sass +1 -0
  41. data/share/views/compass/elements/movement.sass +84 -0
  42. data/share/views/compass/elements/positions.sass +18 -0
  43. data/share/views/compass/elements/table.sass +176 -0
  44. data/share/views/compass/elements/tool.sass +60 -0
  45. data/share/views/compass/grid.sass +3 -0
  46. data/share/views/compass/init.sass +9 -0
  47. data/share/views/compass/layout.sass +5 -221
  48. data/share/views/compass/layout/body.sass +23 -0
  49. data/share/views/compass/layout/footer.sass +44 -0
  50. data/share/views/compass/layout/result.sass +6 -0
  51. data/share/views/compass/{rbbt → layout}/reveal.sass +21 -19
  52. data/share/views/compass/layout/top_bar.sass +99 -0
  53. data/share/views/compass/layout/top_menu.sass +87 -0
  54. data/share/views/compass/menu.sass +42 -0
  55. data/share/views/compass/menu/accordion_menu.sass +30 -0
  56. data/share/views/compass/menu/actionable.sass +1 -0
  57. data/share/views/compass/menu/dropdown_menu.sass +31 -0
  58. data/share/views/compass/menu/hide.sass +14 -0
  59. data/share/views/compass/menu/menu.sass +98 -0
  60. data/share/views/compass/menu/tab_menu.sass +14 -0
  61. data/share/views/compass/menu/top_bar.sass +105 -0
  62. data/share/views/compass/menu/vertical_menu.sass +21 -0
  63. data/share/views/compass/mixins/_all.sass +24 -0
  64. data/share/views/compass/mixins/_blocks.sass +83 -0
  65. data/share/views/compass/mixins/_deps.sass +5 -0
  66. data/share/views/compass/mixins/_hide.sass +1 -0
  67. data/share/views/compass/mixins/_keyframes.scss +4 -0
  68. data/share/views/compass/mixins/_semantic-ui.sass +2 -0
  69. data/share/views/compass/new.sass +1 -0
  70. data/share/views/compass/offcanvas.sass +52 -0
  71. data/share/views/compass/position/basic.sass +0 -0
  72. data/share/views/compass/responsive.sass +53 -0
  73. data/share/views/compass/screen_sizes.sass +1 -16
  74. data/share/views/compass/semantic-ui.css +19776 -0
  75. data/share/views/compass/semantic-ui/semantic-ui.css +19776 -0
  76. data/share/views/compass/space/button.sass +74 -0
  77. data/share/views/compass/text.sass +48 -0
  78. data/share/views/entity_partials/action_controller.haml +7 -7
  79. data/share/views/error.haml +11 -9
  80. data/share/views/job_result.haml +1 -1
  81. data/share/views/job_result/integer.haml +1 -1
  82. data/share/views/knowledge_base_partials/association.haml +7 -4
  83. data/share/views/layout.haml +17 -13
  84. data/share/views/layout/coda.haml +2 -2
  85. data/share/views/layout/footer.haml +10 -0
  86. data/share/views/layout/top_menu.haml +38 -14
  87. data/share/views/partials/table.haml +4 -3
  88. data/share/views/public/fonts/font-awesome/fontawesome-webfont.eot +0 -0
  89. data/share/views/public/fonts/font-awesome/fontawesome-webfont.svg +520 -0
  90. data/share/views/public/fonts/font-awesome/fontawesome-webfont.ttf +0 -0
  91. data/share/views/public/fonts/font-awesome/fontawesome-webfont.woff +0 -0
  92. data/share/views/public/js/_ajax_replace.js +10 -6
  93. data/share/views/public/js/app.js +3 -0
  94. data/share/views/public/js/defer.js +1 -1
  95. data/share/views/public/js/helpers.js +1 -0
  96. data/share/views/public/js/rbbt/modal.js +3 -3
  97. data/share/views/public/js/rbbt/table.js +2 -1
  98. data/share/views/public/plugins/angular/angular.js +250 -0
  99. data/share/views/public/plugins/cytoscapejs/arbor.js +67 -0
  100. data/share/views/public/plugins/cytoscapejs/cytoscape.js +23018 -0
  101. data/share/views/public/plugins/d3js/d3js.min.js +5 -0
  102. data/share/views/public/plugins/semantic-ui/CONTRIBUTING.md +31 -0
  103. data/share/views/public/plugins/semantic-ui/GETTING-STARTED.md +96 -0
  104. data/share/views/public/plugins/semantic-ui/LICENSE.md +7 -0
  105. data/share/views/public/plugins/semantic-ui/README.md +98 -0
  106. data/share/views/public/plugins/semantic-ui/RELEASE-NOTES.md +938 -0
  107. data/share/views/public/plugins/semantic-ui/bower.json +31 -0
  108. data/share/views/public/plugins/semantic-ui/composer.json +21 -0
  109. data/share/views/public/plugins/semantic-ui/dist/components/accordion.css +249 -0
  110. data/share/views/public/plugins/semantic-ui/dist/components/accordion.js +504 -0
  111. data/share/views/public/plugins/semantic-ui/dist/components/accordion.min.css +11 -0
  112. data/share/views/public/plugins/semantic-ui/dist/components/accordion.min.js +11 -0
  113. data/share/views/public/plugins/semantic-ui/dist/components/ad.css +265 -0
  114. data/share/views/public/plugins/semantic-ui/dist/components/ad.min.css +11 -0
  115. data/share/views/public/plugins/semantic-ui/dist/components/api.js +839 -0
  116. data/share/views/public/plugins/semantic-ui/dist/components/api.min.js +11 -0
  117. data/share/views/public/plugins/semantic-ui/dist/components/breadcrumb.css +125 -0
  118. data/share/views/public/plugins/semantic-ui/dist/components/breadcrumb.min.css +11 -0
  119. data/share/views/public/plugins/semantic-ui/dist/components/button.css +2375 -0
  120. data/share/views/public/plugins/semantic-ui/dist/components/button.min.css +11 -0
  121. data/share/views/public/plugins/semantic-ui/dist/components/card.css +758 -0
  122. data/share/views/public/plugins/semantic-ui/dist/components/card.min.css +11 -0
  123. data/share/views/public/plugins/semantic-ui/dist/components/checkbox.css +485 -0
  124. data/share/views/public/plugins/semantic-ui/dist/components/checkbox.js +469 -0
  125. data/share/views/public/plugins/semantic-ui/dist/components/checkbox.min.css +11 -0
  126. data/share/views/public/plugins/semantic-ui/dist/components/checkbox.min.js +11 -0
  127. data/share/views/public/plugins/semantic-ui/dist/components/colorize.js +272 -0
  128. data/share/views/public/plugins/semantic-ui/dist/components/colorize.min.js +11 -0
  129. data/share/views/public/plugins/semantic-ui/dist/components/comment.css +260 -0
  130. data/share/views/public/plugins/semantic-ui/dist/components/comment.min.css +11 -0
  131. data/share/views/public/plugins/semantic-ui/dist/components/dimmer.css +187 -0
  132. data/share/views/public/plugins/semantic-ui/dist/components/dimmer.js +626 -0
  133. data/share/views/public/plugins/semantic-ui/dist/components/dimmer.min.css +11 -0
  134. data/share/views/public/plugins/semantic-ui/dist/components/dimmer.min.js +11 -0
  135. data/share/views/public/plugins/semantic-ui/dist/components/divider.css +244 -0
  136. data/share/views/public/plugins/semantic-ui/dist/components/divider.min.css +11 -0
  137. data/share/views/public/plugins/semantic-ui/dist/components/dropdown.css +967 -0
  138. data/share/views/public/plugins/semantic-ui/dist/components/dropdown.js +1496 -0
  139. data/share/views/public/plugins/semantic-ui/dist/components/dropdown.min.css +11 -0
  140. data/share/views/public/plugins/semantic-ui/dist/components/dropdown.min.js +11 -0
  141. data/share/views/public/plugins/semantic-ui/dist/components/feed.css +277 -0
  142. data/share/views/public/plugins/semantic-ui/dist/components/feed.min.css +11 -0
  143. data/share/views/public/plugins/semantic-ui/dist/components/flag.css +1018 -0
  144. data/share/views/public/plugins/semantic-ui/dist/components/flag.min.css +11 -0
  145. data/share/views/public/plugins/semantic-ui/dist/components/form.css +833 -0
  146. data/share/views/public/plugins/semantic-ui/dist/components/form.js +795 -0
  147. data/share/views/public/plugins/semantic-ui/dist/components/form.min.css +11 -0
  148. data/share/views/public/plugins/semantic-ui/dist/components/form.min.js +11 -0
  149. data/share/views/public/plugins/semantic-ui/dist/components/grid.css +1685 -0
  150. data/share/views/public/plugins/semantic-ui/dist/components/grid.min.css +11 -0
  151. data/share/views/public/plugins/semantic-ui/dist/components/header.css +533 -0
  152. data/share/views/public/plugins/semantic-ui/dist/components/header.min.css +11 -0
  153. data/share/views/public/plugins/semantic-ui/dist/components/icon.css +2125 -0
  154. data/share/views/public/plugins/semantic-ui/dist/components/icon.min.css +11 -0
  155. data/share/views/public/plugins/semantic-ui/dist/components/image.css +252 -0
  156. data/share/views/public/plugins/semantic-ui/dist/components/image.min.css +11 -0
  157. data/share/views/public/plugins/semantic-ui/dist/components/input.css +446 -0
  158. data/share/views/public/plugins/semantic-ui/dist/components/input.min.css +11 -0
  159. data/share/views/public/plugins/semantic-ui/dist/components/item.css +458 -0
  160. data/share/views/public/plugins/semantic-ui/dist/components/item.min.css +11 -0
  161. data/share/views/public/plugins/semantic-ui/dist/components/label.css +936 -0
  162. data/share/views/public/plugins/semantic-ui/dist/components/label.min.css +11 -0
  163. data/share/views/public/plugins/semantic-ui/dist/components/list.css +888 -0
  164. data/share/views/public/plugins/semantic-ui/dist/components/list.min.css +11 -0
  165. data/share/views/public/plugins/semantic-ui/dist/components/loader.css +279 -0
  166. data/share/views/public/plugins/semantic-ui/dist/components/loader.min.css +11 -0
  167. data/share/views/public/plugins/semantic-ui/dist/components/menu.css +1579 -0
  168. data/share/views/public/plugins/semantic-ui/dist/components/menu.min.css +11 -0
  169. data/share/views/public/plugins/semantic-ui/dist/components/message.css +422 -0
  170. data/share/views/public/plugins/semantic-ui/dist/components/message.min.css +11 -0
  171. data/share/views/public/plugins/semantic-ui/dist/components/modal.css +436 -0
  172. data/share/views/public/plugins/semantic-ui/dist/components/modal.js +809 -0
  173. data/share/views/public/plugins/semantic-ui/dist/components/modal.min.css +11 -0
  174. data/share/views/public/plugins/semantic-ui/dist/components/modal.min.js +11 -0
  175. data/share/views/public/plugins/semantic-ui/dist/components/nag.css +149 -0
  176. data/share/views/public/plugins/semantic-ui/dist/components/nag.js +477 -0
  177. data/share/views/public/plugins/semantic-ui/dist/components/nag.min.css +11 -0
  178. data/share/views/public/plugins/semantic-ui/dist/components/nag.min.js +11 -0
  179. data/share/views/public/plugins/semantic-ui/dist/components/popup.css +293 -0
  180. data/share/views/public/plugins/semantic-ui/dist/components/popup.js +1113 -0
  181. data/share/views/public/plugins/semantic-ui/dist/components/popup.min.css +11 -0
  182. data/share/views/public/plugins/semantic-ui/dist/components/popup.min.js +11 -0
  183. data/share/views/public/plugins/semantic-ui/dist/components/progress.css +427 -0
  184. data/share/views/public/plugins/semantic-ui/dist/components/progress.js +652 -0
  185. data/share/views/public/plugins/semantic-ui/dist/components/progress.min.css +11 -0
  186. data/share/views/public/plugins/semantic-ui/dist/components/progress.min.js +11 -0
  187. data/share/views/public/plugins/semantic-ui/dist/components/rail.css +125 -0
  188. data/share/views/public/plugins/semantic-ui/dist/components/rail.min.css +11 -0
  189. data/share/views/public/plugins/semantic-ui/dist/components/rating.css +262 -0
  190. data/share/views/public/plugins/semantic-ui/dist/components/rating.js +451 -0
  191. data/share/views/public/plugins/semantic-ui/dist/components/rating.min.css +11 -0
  192. data/share/views/public/plugins/semantic-ui/dist/components/rating.min.js +11 -0
  193. data/share/views/public/plugins/semantic-ui/dist/components/reset.css +427 -0
  194. data/share/views/public/plugins/semantic-ui/dist/components/reset.min.css +11 -0
  195. data/share/views/public/plugins/semantic-ui/dist/components/reveal.css +282 -0
  196. data/share/views/public/plugins/semantic-ui/dist/components/reveal.min.css +11 -0
  197. data/share/views/public/plugins/semantic-ui/dist/components/search.css +330 -0
  198. data/share/views/public/plugins/semantic-ui/dist/components/search.js +886 -0
  199. data/share/views/public/plugins/semantic-ui/dist/components/search.min.css +11 -0
  200. data/share/views/public/plugins/semantic-ui/dist/components/search.min.js +11 -0
  201. data/share/views/public/plugins/semantic-ui/dist/components/segment.css +598 -0
  202. data/share/views/public/plugins/semantic-ui/dist/components/segment.min.css +11 -0
  203. data/share/views/public/plugins/semantic-ui/dist/components/shape.css +155 -0
  204. data/share/views/public/plugins/semantic-ui/dist/components/shape.js +830 -0
  205. data/share/views/public/plugins/semantic-ui/dist/components/shape.min.css +11 -0
  206. data/share/views/public/plugins/semantic-ui/dist/components/shape.min.js +11 -0
  207. data/share/views/public/plugins/semantic-ui/dist/components/sidebar.css +500 -0
  208. data/share/views/public/plugins/semantic-ui/dist/components/sidebar.js +976 -0
  209. data/share/views/public/plugins/semantic-ui/dist/components/sidebar.min.css +11 -0
  210. data/share/views/public/plugins/semantic-ui/dist/components/sidebar.min.js +11 -0
  211. data/share/views/public/plugins/semantic-ui/dist/components/site.css +135 -0
  212. data/share/views/public/plugins/semantic-ui/dist/components/site.js +487 -0
  213. data/share/views/public/plugins/semantic-ui/dist/components/site.min.css +11 -0
  214. data/share/views/public/plugins/semantic-ui/dist/components/site.min.js +11 -0
  215. data/share/views/public/plugins/semantic-ui/dist/components/state.js +690 -0
  216. data/share/views/public/plugins/semantic-ui/dist/components/state.min.js +11 -0
  217. data/share/views/public/plugins/semantic-ui/dist/components/statistic.css +410 -0
  218. data/share/views/public/plugins/semantic-ui/dist/components/statistic.min.css +11 -0
  219. data/share/views/public/plugins/semantic-ui/dist/components/step.css +360 -0
  220. data/share/views/public/plugins/semantic-ui/dist/components/step.min.css +11 -0
  221. data/share/views/public/plugins/semantic-ui/dist/components/sticky.css +80 -0
  222. data/share/views/public/plugins/semantic-ui/dist/components/sticky.js +768 -0
  223. data/share/views/public/plugins/semantic-ui/dist/components/sticky.min.css +11 -0
  224. data/share/views/public/plugins/semantic-ui/dist/components/sticky.min.js +11 -0
  225. data/share/views/public/plugins/semantic-ui/dist/components/tab.css +93 -0
  226. data/share/views/public/plugins/semantic-ui/dist/components/tab.js +801 -0
  227. data/share/views/public/plugins/semantic-ui/dist/components/tab.min.css +11 -0
  228. data/share/views/public/plugins/semantic-ui/dist/components/tab.min.js +11 -0
  229. data/share/views/public/plugins/semantic-ui/dist/components/table.css +878 -0
  230. data/share/views/public/plugins/semantic-ui/dist/components/table.min.css +11 -0
  231. data/share/views/public/plugins/semantic-ui/dist/components/transition.css +993 -0
  232. data/share/views/public/plugins/semantic-ui/dist/components/transition.js +924 -0
  233. data/share/views/public/plugins/semantic-ui/dist/components/transition.min.css +11 -0
  234. data/share/views/public/plugins/semantic-ui/dist/components/transition.min.js +11 -0
  235. data/share/views/public/plugins/semantic-ui/dist/components/video.css +126 -0
  236. data/share/views/public/plugins/semantic-ui/dist/components/video.js +539 -0
  237. data/share/views/public/plugins/semantic-ui/dist/components/video.min.css +11 -0
  238. data/share/views/public/plugins/semantic-ui/dist/components/video.min.js +11 -0
  239. data/share/views/public/plugins/semantic-ui/dist/components/visibility.js +951 -0
  240. data/share/views/public/plugins/semantic-ui/dist/components/visibility.min.js +11 -0
  241. data/share/views/public/plugins/semantic-ui/dist/components/visit.js +513 -0
  242. data/share/views/public/plugins/semantic-ui/dist/components/visit.min.js +11 -0
  243. data/share/views/public/plugins/semantic-ui/dist/semantic.css +27664 -0
  244. data/share/views/public/plugins/semantic-ui/dist/semantic.js +16893 -0
  245. data/share/views/public/plugins/semantic-ui/dist/semantic.min.css +11 -0
  246. data/share/views/public/plugins/semantic-ui/dist/semantic.min.js +17 -0
  247. data/share/views/public/plugins/semantic-ui/dist/themes/basic/assets/fonts/icons.eot +0 -0
  248. data/share/views/public/plugins/semantic-ui/dist/themes/basic/assets/fonts/icons.svg +450 -0
  249. data/share/views/public/plugins/semantic-ui/dist/themes/basic/assets/fonts/icons.ttf +0 -0
  250. data/share/views/public/plugins/semantic-ui/dist/themes/basic/assets/fonts/icons.woff +0 -0
  251. data/share/views/public/plugins/semantic-ui/dist/themes/default/assets/fonts/icons.eot +0 -0
  252. data/share/views/public/plugins/semantic-ui/dist/themes/default/assets/fonts/icons.otf +0 -0
  253. data/share/views/public/plugins/semantic-ui/dist/themes/default/assets/fonts/icons.svg +504 -0
  254. data/share/views/public/plugins/semantic-ui/dist/themes/default/assets/fonts/icons.ttf +0 -0
  255. data/share/views/public/plugins/semantic-ui/dist/themes/default/assets/fonts/icons.woff +0 -0
  256. data/share/views/public/plugins/semantic-ui/dist/themes/default/assets/images/flags.png +0 -0
  257. data/share/views/public/plugins/semantic-ui/examples/feed.css +93 -0
  258. data/share/views/public/plugins/semantic-ui/examples/feed.html +174 -0
  259. data/share/views/public/plugins/semantic-ui/examples/feed.js +23 -0
  260. data/share/views/public/plugins/semantic-ui/examples/grid.css +102 -0
  261. data/share/views/public/plugins/semantic-ui/examples/grid.html +1439 -0
  262. data/share/views/public/plugins/semantic-ui/examples/homepage.css +134 -0
  263. data/share/views/public/plugins/semantic-ui/examples/homepage.html +315 -0
  264. data/share/views/public/plugins/semantic-ui/examples/homepage.js +57 -0
  265. data/share/views/public/plugins/semantic-ui/examples/images/bg.jpg +0 -0
  266. data/share/views/public/plugins/semantic-ui/examples/images/cat.png +0 -0
  267. data/share/views/public/plugins/semantic-ui/examples/images/wireframe/centered-paragraph.png +0 -0
  268. data/share/views/public/plugins/semantic-ui/examples/images/wireframe/image-square.png +0 -0
  269. data/share/views/public/plugins/semantic-ui/examples/images/wireframe/image-text.png +0 -0
  270. data/share/views/public/plugins/semantic-ui/examples/images/wireframe/image.png +0 -0
  271. data/share/views/public/plugins/semantic-ui/examples/images/wireframe/media-paragraph-alt.png +0 -0
  272. data/share/views/public/plugins/semantic-ui/examples/images/wireframe/media-paragraph.png +0 -0
  273. data/share/views/public/plugins/semantic-ui/examples/images/wireframe/paragraph.png +0 -0
  274. data/share/views/public/plugins/semantic-ui/examples/images/wireframe/short-paragraph.png +0 -0
  275. data/share/views/public/plugins/semantic-ui/examples/images/wireframe/square-image.png +0 -0
  276. data/share/views/public/plugins/semantic-ui/examples/images/wireframe/text-image.png +0 -0
  277. data/share/views/public/plugins/semantic-ui/examples/images/wireframe/white-image.png +0 -0
  278. data/share/views/public/plugins/semantic-ui/examples/kitchensink.css +49 -0
  279. data/share/views/public/plugins/semantic-ui/examples/kitchensink.html +5454 -0
  280. data/share/views/public/plugins/semantic-ui/gulpfile.js +1119 -0
  281. data/share/views/public/plugins/semantic-ui/karma.conf.js +85 -0
  282. data/share/views/public/plugins/semantic-ui/logo.png +0 -0
  283. data/share/views/public/plugins/semantic-ui/package.json +59 -0
  284. data/share/views/public/plugins/semantic-ui/semantic.json.example +20 -0
  285. data/share/views/public/plugins/semantic-ui/src/_site/collections/breadcrumb.overrides +3 -0
  286. data/share/views/public/plugins/semantic-ui/src/_site/collections/breadcrumb.variables +3 -0
  287. data/share/views/public/plugins/semantic-ui/src/_site/collections/form.overrides +3 -0
  288. data/share/views/public/plugins/semantic-ui/src/_site/collections/form.variables +3 -0
  289. data/share/views/public/plugins/semantic-ui/src/_site/collections/grid.overrides +3 -0
  290. data/share/views/public/plugins/semantic-ui/src/_site/collections/grid.variables +3 -0
  291. data/share/views/public/plugins/semantic-ui/src/_site/collections/menu.overrides +3 -0
  292. data/share/views/public/plugins/semantic-ui/src/_site/collections/menu.variables +3 -0
  293. data/share/views/public/plugins/semantic-ui/src/_site/collections/message.overrides +3 -0
  294. data/share/views/public/plugins/semantic-ui/src/_site/collections/message.variables +3 -0
  295. data/share/views/public/plugins/semantic-ui/src/_site/collections/table.overrides +3 -0
  296. data/share/views/public/plugins/semantic-ui/src/_site/collections/table.variables +3 -0
  297. data/share/views/public/plugins/semantic-ui/src/_site/elements/button.overrides +3 -0
  298. data/share/views/public/plugins/semantic-ui/src/_site/elements/button.variables +3 -0
  299. data/share/views/public/plugins/semantic-ui/src/_site/elements/divider.overrides +3 -0
  300. data/share/views/public/plugins/semantic-ui/src/_site/elements/divider.variables +3 -0
  301. data/share/views/public/plugins/semantic-ui/src/_site/elements/flag.overrides +3 -0
  302. data/share/views/public/plugins/semantic-ui/src/_site/elements/flag.variables +3 -0
  303. data/share/views/public/plugins/semantic-ui/src/_site/elements/header.overrides +3 -0
  304. data/share/views/public/plugins/semantic-ui/src/_site/elements/header.variables +3 -0
  305. data/share/views/public/plugins/semantic-ui/src/_site/elements/icon.overrides +3 -0
  306. data/share/views/public/plugins/semantic-ui/src/_site/elements/icon.variables +3 -0
  307. data/share/views/public/plugins/semantic-ui/src/_site/elements/image.overrides +3 -0
  308. data/share/views/public/plugins/semantic-ui/src/_site/elements/image.variables +3 -0
  309. data/share/views/public/plugins/semantic-ui/src/_site/elements/input.overrides +3 -0
  310. data/share/views/public/plugins/semantic-ui/src/_site/elements/input.variables +3 -0
  311. data/share/views/public/plugins/semantic-ui/src/_site/elements/label.overrides +3 -0
  312. data/share/views/public/plugins/semantic-ui/src/_site/elements/label.variables +3 -0
  313. data/share/views/public/plugins/semantic-ui/src/_site/elements/list.overrides +3 -0
  314. data/share/views/public/plugins/semantic-ui/src/_site/elements/list.variables +3 -0
  315. data/share/views/public/plugins/semantic-ui/src/_site/elements/loader.overrides +3 -0
  316. data/share/views/public/plugins/semantic-ui/src/_site/elements/loader.variables +3 -0
  317. data/share/views/public/plugins/semantic-ui/src/_site/elements/rail.overrides +3 -0
  318. data/share/views/public/plugins/semantic-ui/src/_site/elements/rail.variables +3 -0
  319. data/share/views/public/plugins/semantic-ui/src/_site/elements/reveal.overrides +3 -0
  320. data/share/views/public/plugins/semantic-ui/src/_site/elements/reveal.variables +3 -0
  321. data/share/views/public/plugins/semantic-ui/src/_site/elements/segment.overrides +3 -0
  322. data/share/views/public/plugins/semantic-ui/src/_site/elements/segment.variables +3 -0
  323. data/share/views/public/plugins/semantic-ui/src/_site/elements/step.overrides +3 -0
  324. data/share/views/public/plugins/semantic-ui/src/_site/elements/step.variables +3 -0
  325. data/share/views/public/plugins/semantic-ui/src/_site/globals/reset.overrides +3 -0
  326. data/share/views/public/plugins/semantic-ui/src/_site/globals/reset.variables +3 -0
  327. data/share/views/public/plugins/semantic-ui/src/_site/globals/site.overrides +3 -0
  328. data/share/views/public/plugins/semantic-ui/src/_site/globals/site.variables +3 -0
  329. data/share/views/public/plugins/semantic-ui/src/_site/modules/accordion.overrides +3 -0
  330. data/share/views/public/plugins/semantic-ui/src/_site/modules/accordion.variables +3 -0
  331. data/share/views/public/plugins/semantic-ui/src/_site/modules/chatroom.overrides +3 -0
  332. data/share/views/public/plugins/semantic-ui/src/_site/modules/chatroom.variables +3 -0
  333. data/share/views/public/plugins/semantic-ui/src/_site/modules/checkbox.overrides +3 -0
  334. data/share/views/public/plugins/semantic-ui/src/_site/modules/checkbox.variables +3 -0
  335. data/share/views/public/plugins/semantic-ui/src/_site/modules/dimmer.overrides +3 -0
  336. data/share/views/public/plugins/semantic-ui/src/_site/modules/dimmer.variables +3 -0
  337. data/share/views/public/plugins/semantic-ui/src/_site/modules/dropdown.overrides +3 -0
  338. data/share/views/public/plugins/semantic-ui/src/_site/modules/dropdown.variables +3 -0
  339. data/share/views/public/plugins/semantic-ui/src/_site/modules/modal.overrides +3 -0
  340. data/share/views/public/plugins/semantic-ui/src/_site/modules/modal.variables +3 -0
  341. data/share/views/public/plugins/semantic-ui/src/_site/modules/nag.overrides +3 -0
  342. data/share/views/public/plugins/semantic-ui/src/_site/modules/nag.variables +3 -0
  343. data/share/views/public/plugins/semantic-ui/src/_site/modules/popup.overrides +3 -0
  344. data/share/views/public/plugins/semantic-ui/src/_site/modules/popup.variables +3 -0
  345. data/share/views/public/plugins/semantic-ui/src/_site/modules/progress.overrides +3 -0
  346. data/share/views/public/plugins/semantic-ui/src/_site/modules/progress.variables +3 -0
  347. data/share/views/public/plugins/semantic-ui/src/_site/modules/rating.overrides +3 -0
  348. data/share/views/public/plugins/semantic-ui/src/_site/modules/rating.variables +3 -0
  349. data/share/views/public/plugins/semantic-ui/src/_site/modules/search.overrides +3 -0
  350. data/share/views/public/plugins/semantic-ui/src/_site/modules/search.variables +3 -0
  351. data/share/views/public/plugins/semantic-ui/src/_site/modules/shape.overrides +3 -0
  352. data/share/views/public/plugins/semantic-ui/src/_site/modules/shape.variables +3 -0
  353. data/share/views/public/plugins/semantic-ui/src/_site/modules/sidebar.overrides +3 -0
  354. data/share/views/public/plugins/semantic-ui/src/_site/modules/sidebar.variables +3 -0
  355. data/share/views/public/plugins/semantic-ui/src/_site/modules/sticky.overrides +3 -0
  356. data/share/views/public/plugins/semantic-ui/src/_site/modules/sticky.variables +3 -0
  357. data/share/views/public/plugins/semantic-ui/src/_site/modules/tab.overrides +3 -0
  358. data/share/views/public/plugins/semantic-ui/src/_site/modules/tab.variables +3 -0
  359. data/share/views/public/plugins/semantic-ui/src/_site/modules/transition.overrides +3 -0
  360. data/share/views/public/plugins/semantic-ui/src/_site/modules/transition.variables +3 -0
  361. data/share/views/public/plugins/semantic-ui/src/_site/modules/video.overrides +3 -0
  362. data/share/views/public/plugins/semantic-ui/src/_site/modules/video.variables +0 -0
  363. data/share/views/public/plugins/semantic-ui/src/_site/views/ad.overrides +3 -0
  364. data/share/views/public/plugins/semantic-ui/src/_site/views/ad.variables +3 -0
  365. data/share/views/public/plugins/semantic-ui/src/_site/views/card.overrides +3 -0
  366. data/share/views/public/plugins/semantic-ui/src/_site/views/card.variables +3 -0
  367. data/share/views/public/plugins/semantic-ui/src/_site/views/comment.overrides +3 -0
  368. data/share/views/public/plugins/semantic-ui/src/_site/views/comment.variables +3 -0
  369. data/share/views/public/plugins/semantic-ui/src/_site/views/feed.overrides +3 -0
  370. data/share/views/public/plugins/semantic-ui/src/_site/views/feed.variables +3 -0
  371. data/share/views/public/plugins/semantic-ui/src/_site/views/item.overrides +3 -0
  372. data/share/views/public/plugins/semantic-ui/src/_site/views/item.variables +3 -0
  373. data/share/views/public/plugins/semantic-ui/src/_site/views/statistic.overrides +3 -0
  374. data/share/views/public/plugins/semantic-ui/src/_site/views/statistic.variables +3 -0
  375. data/share/views/public/plugins/semantic-ui/src/definitions/behaviors/api.js +839 -0
  376. data/share/views/public/plugins/semantic-ui/src/definitions/behaviors/colorize.js +272 -0
  377. data/share/views/public/plugins/semantic-ui/src/definitions/behaviors/form.js +795 -0
  378. data/share/views/public/plugins/semantic-ui/src/definitions/behaviors/state.js +690 -0
  379. data/share/views/public/plugins/semantic-ui/src/definitions/behaviors/visibility.js +951 -0
  380. data/share/views/public/plugins/semantic-ui/src/definitions/behaviors/visit.js +513 -0
  381. data/share/views/public/plugins/semantic-ui/src/definitions/collections/breadcrumb.less +122 -0
  382. data/share/views/public/plugins/semantic-ui/src/definitions/collections/form.less +833 -0
  383. data/share/views/public/plugins/semantic-ui/src/definitions/collections/grid.less +1698 -0
  384. data/share/views/public/plugins/semantic-ui/src/definitions/collections/menu.less +1597 -0
  385. data/share/views/public/plugins/semantic-ui/src/definitions/collections/message.less +442 -0
  386. data/share/views/public/plugins/semantic-ui/src/definitions/collections/table.less +871 -0
  387. data/share/views/public/plugins/semantic-ui/src/definitions/elements/button.less +2390 -0
  388. data/share/views/public/plugins/semantic-ui/src/definitions/elements/divider.less +256 -0
  389. data/share/views/public/plugins/semantic-ui/src/definitions/elements/flag.less +46 -0
  390. data/share/views/public/plugins/semantic-ui/src/definitions/elements/header.less +558 -0
  391. data/share/views/public/plugins/semantic-ui/src/definitions/elements/icon.less +345 -0
  392. data/share/views/public/plugins/semantic-ui/src/definitions/elements/image.less +261 -0
  393. data/share/views/public/plugins/semantic-ui/src/definitions/elements/input.less +453 -0
  394. data/share/views/public/plugins/semantic-ui/src/definitions/elements/label.less +953 -0
  395. data/share/views/public/plugins/semantic-ui/src/definitions/elements/list.less +890 -0
  396. data/share/views/public/plugins/semantic-ui/src/definitions/elements/loader.less +262 -0
  397. data/share/views/public/plugins/semantic-ui/src/definitions/elements/rail.less +126 -0
  398. data/share/views/public/plugins/semantic-ui/src/definitions/elements/reveal.less +257 -0
  399. data/share/views/public/plugins/semantic-ui/src/definitions/elements/segment.less +592 -0
  400. data/share/views/public/plugins/semantic-ui/src/definitions/elements/step.less +352 -0
  401. data/share/views/public/plugins/semantic-ui/src/definitions/globals/reset.less +39 -0
  402. data/share/views/public/plugins/semantic-ui/src/definitions/globals/site.js +487 -0
  403. data/share/views/public/plugins/semantic-ui/src/definitions/globals/site.less +133 -0
  404. data/share/views/public/plugins/semantic-ui/src/definitions/modules/accordion.js +504 -0
  405. data/share/views/public/plugins/semantic-ui/src/definitions/modules/accordion.less +215 -0
  406. data/share/views/public/plugins/semantic-ui/src/definitions/modules/checkbox.js +469 -0
  407. data/share/views/public/plugins/semantic-ui/src/definitions/modules/checkbox.less +462 -0
  408. data/share/views/public/plugins/semantic-ui/src/definitions/modules/dimmer.js +626 -0
  409. data/share/views/public/plugins/semantic-ui/src/definitions/modules/dimmer.less +180 -0
  410. data/share/views/public/plugins/semantic-ui/src/definitions/modules/dropdown.js +1496 -0
  411. data/share/views/public/plugins/semantic-ui/src/definitions/modules/dropdown.less +914 -0
  412. data/share/views/public/plugins/semantic-ui/src/definitions/modules/modal.js +809 -0
  413. data/share/views/public/plugins/semantic-ui/src/definitions/modules/modal.less +441 -0
  414. data/share/views/public/plugins/semantic-ui/src/definitions/modules/nag.js +477 -0
  415. data/share/views/public/plugins/semantic-ui/src/definitions/modules/nag.less +159 -0
  416. data/share/views/public/plugins/semantic-ui/src/definitions/modules/popup.js +1113 -0
  417. data/share/views/public/plugins/semantic-ui/src/definitions/modules/popup.less +290 -0
  418. data/share/views/public/plugins/semantic-ui/src/definitions/modules/progress.js +652 -0
  419. data/share/views/public/plugins/semantic-ui/src/definitions/modules/progress.less +429 -0
  420. data/share/views/public/plugins/semantic-ui/src/definitions/modules/rating.js +451 -0
  421. data/share/views/public/plugins/semantic-ui/src/definitions/modules/rating.less +198 -0
  422. data/share/views/public/plugins/semantic-ui/src/definitions/modules/search.js +886 -0
  423. data/share/views/public/plugins/semantic-ui/src/definitions/modules/search.less +338 -0
  424. data/share/views/public/plugins/semantic-ui/src/definitions/modules/shape.js +830 -0
  425. data/share/views/public/plugins/semantic-ui/src/definitions/modules/shape.less +152 -0
  426. data/share/views/public/plugins/semantic-ui/src/definitions/modules/sidebar.js +976 -0
  427. data/share/views/public/plugins/semantic-ui/src/definitions/modules/sidebar.less +458 -0
  428. data/share/views/public/plugins/semantic-ui/src/definitions/modules/sticky.js +768 -0
  429. data/share/views/public/plugins/semantic-ui/src/definitions/modules/sticky.less +74 -0
  430. data/share/views/public/plugins/semantic-ui/src/definitions/modules/tab.js +801 -0
  431. data/share/views/public/plugins/semantic-ui/src/definitions/modules/tab.less +94 -0
  432. data/share/views/public/plugins/semantic-ui/src/definitions/modules/transition.js +924 -0
  433. data/share/views/public/plugins/semantic-ui/src/definitions/modules/transition.less +89 -0
  434. data/share/views/public/plugins/semantic-ui/src/definitions/modules/video.js +539 -0
  435. data/share/views/public/plugins/semantic-ui/src/definitions/modules/video.less +125 -0
  436. data/share/views/public/plugins/semantic-ui/src/definitions/views/ad.less +266 -0
  437. data/share/views/public/plugins/semantic-ui/src/definitions/views/card.less +745 -0
  438. data/share/views/public/plugins/semantic-ui/src/definitions/views/comment.less +256 -0
  439. data/share/views/public/plugins/semantic-ui/src/definitions/views/feed.less +272 -0
  440. data/share/views/public/plugins/semantic-ui/src/definitions/views/item.less +466 -0
  441. data/share/views/public/plugins/semantic-ui/src/definitions/views/statistic.less +416 -0
  442. data/share/views/public/plugins/semantic-ui/src/theme.config.example +96 -0
  443. data/share/views/public/plugins/semantic-ui/src/theme.less +48 -0
  444. data/share/views/public/plugins/semantic-ui/src/themes/amazon/elements/button.overrides +46 -0
  445. data/share/views/public/plugins/semantic-ui/src/themes/amazon/elements/button.variables +57 -0
  446. data/share/views/public/plugins/semantic-ui/src/themes/basic/assets/fonts/icons.eot +0 -0
  447. data/share/views/public/plugins/semantic-ui/src/themes/basic/assets/fonts/icons.svg +450 -0
  448. data/share/views/public/plugins/semantic-ui/src/themes/basic/assets/fonts/icons.ttf +0 -0
  449. data/share/views/public/plugins/semantic-ui/src/themes/basic/assets/fonts/icons.woff +0 -0
  450. data/share/views/public/plugins/semantic-ui/src/themes/basic/collections/table.overrides +4 -0
  451. data/share/views/public/plugins/semantic-ui/src/themes/basic/collections/table.variables +10 -0
  452. data/share/views/public/plugins/semantic-ui/src/themes/basic/elements/button.overrides +4 -0
  453. data/share/views/public/plugins/semantic-ui/src/themes/basic/elements/button.variables +44 -0
  454. data/share/views/public/plugins/semantic-ui/src/themes/basic/elements/icon.overrides +189 -0
  455. data/share/views/public/plugins/semantic-ui/src/themes/basic/elements/icon.variables +5 -0
  456. data/share/views/public/plugins/semantic-ui/src/themes/basic/elements/step.overrides +7 -0
  457. data/share/views/public/plugins/semantic-ui/src/themes/basic/elements/step.variables +10 -0
  458. data/share/views/public/plugins/semantic-ui/src/themes/basic/globals/reset.overrides +5 -0
  459. data/share/views/public/plugins/semantic-ui/src/themes/basic/globals/reset.variables +3 -0
  460. data/share/views/public/plugins/semantic-ui/src/themes/basic/modules/progress.overrides +3 -0
  461. data/share/views/public/plugins/semantic-ui/src/themes/basic/modules/progress.variables +15 -0
  462. data/share/views/public/plugins/semantic-ui/src/themes/basic/views/card.overrides +4 -0
  463. data/share/views/public/plugins/semantic-ui/src/themes/basic/views/card.variables +34 -0
  464. data/share/views/public/plugins/semantic-ui/src/themes/bookish/elements/header.overrides +15 -0
  465. data/share/views/public/plugins/semantic-ui/src/themes/bookish/elements/header.variables +37 -0
  466. data/share/views/public/plugins/semantic-ui/src/themes/bootstrap3/elements/button.overrides +0 -0
  467. data/share/views/public/plugins/semantic-ui/src/themes/bootstrap3/elements/button.variables +63 -0
  468. data/share/views/public/plugins/semantic-ui/src/themes/chubby/collections/form.overrides +8 -0
  469. data/share/views/public/plugins/semantic-ui/src/themes/chubby/collections/form.variables +9 -0
  470. data/share/views/public/plugins/semantic-ui/src/themes/chubby/elements/button.overrides +21 -0
  471. data/share/views/public/plugins/semantic-ui/src/themes/chubby/elements/button.variables +57 -0
  472. data/share/views/public/plugins/semantic-ui/src/themes/chubby/elements/header.overrides +5 -0
  473. data/share/views/public/plugins/semantic-ui/src/themes/chubby/elements/header.variables +21 -0
  474. data/share/views/public/plugins/semantic-ui/src/themes/chubby/modules/accordion.overrides +7 -0
  475. data/share/views/public/plugins/semantic-ui/src/themes/chubby/modules/accordion.variables +15 -0
  476. data/share/views/public/plugins/semantic-ui/src/themes/chubby/views/comment.overrides +12 -0
  477. data/share/views/public/plugins/semantic-ui/src/themes/chubby/views/comment.variables +46 -0
  478. data/share/views/public/plugins/semantic-ui/src/themes/classic/collections/table.overrides +3 -0
  479. data/share/views/public/plugins/semantic-ui/src/themes/classic/collections/table.variables +14 -0
  480. data/share/views/public/plugins/semantic-ui/src/themes/classic/elements/button.overrides +3 -0
  481. data/share/views/public/plugins/semantic-ui/src/themes/classic/elements/button.variables +96 -0
  482. data/share/views/public/plugins/semantic-ui/src/themes/classic/elements/header.overrides +3 -0
  483. data/share/views/public/plugins/semantic-ui/src/themes/classic/elements/header.variables +12 -0
  484. data/share/views/public/plugins/semantic-ui/src/themes/classic/modules/progress.overrides +3 -0
  485. data/share/views/public/plugins/semantic-ui/src/themes/classic/modules/progress.variables +8 -0
  486. data/share/views/public/plugins/semantic-ui/src/themes/classic/views/card.overrides +98 -0
  487. data/share/views/public/plugins/semantic-ui/src/themes/classic/views/card.variables +22 -0
  488. data/share/views/public/plugins/semantic-ui/src/themes/default/assets/fonts/icons.eot +0 -0
  489. data/share/views/public/plugins/semantic-ui/src/themes/default/assets/fonts/icons.otf +0 -0
  490. data/share/views/public/plugins/semantic-ui/src/themes/default/assets/fonts/icons.svg +504 -0
  491. data/share/views/public/plugins/semantic-ui/src/themes/default/assets/fonts/icons.ttf +0 -0
  492. data/share/views/public/plugins/semantic-ui/src/themes/default/assets/fonts/icons.woff +0 -0
  493. data/share/views/public/plugins/semantic-ui/src/themes/default/assets/images/flags.png +0 -0
  494. data/share/views/public/plugins/semantic-ui/src/themes/default/collections/breadcrumb.overrides +3 -0
  495. data/share/views/public/plugins/semantic-ui/src/themes/default/collections/breadcrumb.variables +43 -0
  496. data/share/views/public/plugins/semantic-ui/src/themes/default/collections/form.overrides +3 -0
  497. data/share/views/public/plugins/semantic-ui/src/themes/default/collections/form.variables +189 -0
  498. data/share/views/public/plugins/semantic-ui/src/themes/default/collections/grid.overrides +4 -0
  499. data/share/views/public/plugins/semantic-ui/src/themes/default/collections/grid.variables +93 -0
  500. data/share/views/public/plugins/semantic-ui/src/themes/default/collections/menu.overrides +3 -0
  501. data/share/views/public/plugins/semantic-ui/src/themes/default/collections/menu.variables +321 -0
  502. data/share/views/public/plugins/semantic-ui/src/themes/default/collections/message.overrides +3 -0
  503. data/share/views/public/plugins/semantic-ui/src/themes/default/collections/message.variables +88 -0
  504. data/share/views/public/plugins/semantic-ui/src/themes/default/collections/table.overrides +3 -0
  505. data/share/views/public/plugins/semantic-ui/src/themes/default/collections/table.variables +228 -0
  506. data/share/views/public/plugins/semantic-ui/src/themes/default/elements/button.overrides +3 -0
  507. data/share/views/public/plugins/semantic-ui/src/themes/default/elements/button.variables +260 -0
  508. data/share/views/public/plugins/semantic-ui/src/themes/default/elements/divider.overrides +3 -0
  509. data/share/views/public/plugins/semantic-ui/src/themes/default/elements/divider.variables +54 -0
  510. data/share/views/public/plugins/semantic-ui/src/themes/default/elements/flag.overrides +979 -0
  511. data/share/views/public/plugins/semantic-ui/src/themes/default/elements/flag.variables +13 -0
  512. data/share/views/public/plugins/semantic-ui/src/themes/default/elements/header.overrides +4 -0
  513. data/share/views/public/plugins/semantic-ui/src/themes/default/elements/header.variables +126 -0
  514. data/share/views/public/plugins/semantic-ui/src/themes/default/elements/icon.overrides +660 -0
  515. data/share/views/public/plugins/semantic-ui/src/themes/default/elements/icon.variables +34 -0
  516. data/share/views/public/plugins/semantic-ui/src/themes/default/elements/image.overrides +3 -0
  517. data/share/views/public/plugins/semantic-ui/src/themes/default/elements/image.variables +42 -0
  518. data/share/views/public/plugins/semantic-ui/src/themes/default/elements/input.overrides +3 -0
  519. data/share/views/public/plugins/semantic-ui/src/themes/default/elements/input.variables +118 -0
  520. data/share/views/public/plugins/semantic-ui/src/themes/default/elements/label.overrides +3 -0
  521. data/share/views/public/plugins/semantic-ui/src/themes/default/elements/label.variables +164 -0
  522. data/share/views/public/plugins/semantic-ui/src/themes/default/elements/list.overrides +3 -0
  523. data/share/views/public/plugins/semantic-ui/src/themes/default/elements/list.variables +204 -0
  524. data/share/views/public/plugins/semantic-ui/src/themes/default/elements/loader.overrides +3 -0
  525. data/share/views/public/plugins/semantic-ui/src/themes/default/elements/loader.variables +61 -0
  526. data/share/views/public/plugins/semantic-ui/src/themes/default/elements/rail.overrides +3 -0
  527. data/share/views/public/plugins/semantic-ui/src/themes/default/elements/rail.variables +24 -0
  528. data/share/views/public/plugins/semantic-ui/src/themes/default/elements/reveal.overrides +3 -0
  529. data/share/views/public/plugins/semantic-ui/src/themes/default/elements/reveal.variables +15 -0
  530. data/share/views/public/plugins/semantic-ui/src/themes/default/elements/segment.overrides +3 -0
  531. data/share/views/public/plugins/semantic-ui/src/themes/default/elements/segment.variables +100 -0
  532. data/share/views/public/plugins/semantic-ui/src/themes/default/elements/step.overrides +16 -0
  533. data/share/views/public/plugins/semantic-ui/src/themes/default/elements/step.variables +93 -0
  534. data/share/views/public/plugins/semantic-ui/src/themes/default/globals/reset.overrides +434 -0
  535. data/share/views/public/plugins/semantic-ui/src/themes/default/globals/reset.variables +3 -0
  536. data/share/views/public/plugins/semantic-ui/src/themes/default/globals/site.overrides +3 -0
  537. data/share/views/public/plugins/semantic-ui/src/themes/default/globals/site.variables +599 -0
  538. data/share/views/public/plugins/semantic-ui/src/themes/default/modules/accordion.overrides +28 -0
  539. data/share/views/public/plugins/semantic-ui/src/themes/default/modules/accordion.variables +101 -0
  540. data/share/views/public/plugins/semantic-ui/src/themes/default/modules/chatroom.overrides +3 -0
  541. data/share/views/public/plugins/semantic-ui/src/themes/default/modules/chatroom.variables +3 -0
  542. data/share/views/public/plugins/semantic-ui/src/themes/default/modules/checkbox.overrides +33 -0
  543. data/share/views/public/plugins/semantic-ui/src/themes/default/modules/checkbox.variables +139 -0
  544. data/share/views/public/plugins/semantic-ui/src/themes/default/modules/dimmer.overrides +3 -0
  545. data/share/views/public/plugins/semantic-ui/src/themes/default/modules/dimmer.variables +51 -0
  546. data/share/views/public/plugins/semantic-ui/src/themes/default/modules/dropdown.overrides +57 -0
  547. data/share/views/public/plugins/semantic-ui/src/themes/default/modules/dropdown.variables +239 -0
  548. data/share/views/public/plugins/semantic-ui/src/themes/default/modules/modal.overrides +3 -0
  549. data/share/views/public/plugins/semantic-ui/src/themes/default/modules/modal.variables +147 -0
  550. data/share/views/public/plugins/semantic-ui/src/themes/default/modules/nag.overrides +3 -0
  551. data/share/views/public/plugins/semantic-ui/src/themes/default/modules/nag.variables +74 -0
  552. data/share/views/public/plugins/semantic-ui/src/themes/default/modules/popup.overrides +3 -0
  553. data/share/views/public/plugins/semantic-ui/src/themes/default/modules/popup.variables +95 -0
  554. data/share/views/public/plugins/semantic-ui/src/themes/default/modules/progress.overrides +3 -0
  555. data/share/views/public/plugins/semantic-ui/src/themes/default/modules/progress.variables +107 -0
  556. data/share/views/public/plugins/semantic-ui/src/themes/default/modules/rating.overrides +69 -0
  557. data/share/views/public/plugins/semantic-ui/src/themes/default/modules/rating.variables +65 -0
  558. data/share/views/public/plugins/semantic-ui/src/themes/default/modules/search.overrides +3 -0
  559. data/share/views/public/plugins/semantic-ui/src/themes/default/modules/search.variables +140 -0
  560. data/share/views/public/plugins/semantic-ui/src/themes/default/modules/shape.overrides +3 -0
  561. data/share/views/public/plugins/semantic-ui/src/themes/default/modules/shape.variables +35 -0
  562. data/share/views/public/plugins/semantic-ui/src/themes/default/modules/sidebar.overrides +3 -0
  563. data/share/views/public/plugins/semantic-ui/src/themes/default/modules/sidebar.variables +39 -0
  564. data/share/views/public/plugins/semantic-ui/src/themes/default/modules/sticky.overrides +3 -0
  565. data/share/views/public/plugins/semantic-ui/src/themes/default/modules/sticky.variables +12 -0
  566. data/share/views/public/plugins/semantic-ui/src/themes/default/modules/tab.overrides +3 -0
  567. data/share/views/public/plugins/semantic-ui/src/themes/default/modules/tab.variables +13 -0
  568. data/share/views/public/plugins/semantic-ui/src/themes/default/modules/transition.overrides +445 -0
  569. data/share/views/public/plugins/semantic-ui/src/themes/default/modules/transition.variables +10 -0
  570. data/share/views/public/plugins/semantic-ui/src/themes/default/modules/video.overrides +3 -0
  571. data/share/views/public/plugins/semantic-ui/src/themes/default/modules/video.variables +16 -0
  572. data/share/views/public/plugins/semantic-ui/src/themes/default/views/ad.overrides +3 -0
  573. data/share/views/public/plugins/semantic-ui/src/themes/default/views/ad.variables +13 -0
  574. data/share/views/public/plugins/semantic-ui/src/themes/default/views/card.overrides +3 -0
  575. data/share/views/public/plugins/semantic-ui/src/themes/default/views/card.variables +185 -0
  576. data/share/views/public/plugins/semantic-ui/src/themes/default/views/comment.overrides +3 -0
  577. data/share/views/public/plugins/semantic-ui/src/themes/default/views/comment.variables +104 -0
  578. data/share/views/public/plugins/semantic-ui/src/themes/default/views/feed.overrides +3 -0
  579. data/share/views/public/plugins/semantic-ui/src/themes/default/views/feed.variables +149 -0
  580. data/share/views/public/plugins/semantic-ui/src/themes/default/views/item.overrides +3 -0
  581. data/share/views/public/plugins/semantic-ui/src/themes/default/views/item.variables +152 -0
  582. data/share/views/public/plugins/semantic-ui/src/themes/default/views/statistic.overrides +3 -0
  583. data/share/views/public/plugins/semantic-ui/src/themes/default/views/statistic.variables +97 -0
  584. data/share/views/public/plugins/semantic-ui/src/themes/duo/elements/loader.overrides +3 -0
  585. data/share/views/public/plugins/semantic-ui/src/themes/duo/elements/loader.variables +6 -0
  586. data/share/views/public/plugins/semantic-ui/src/themes/fixed-width/collections/grid.overrides +3 -0
  587. data/share/views/public/plugins/semantic-ui/src/themes/fixed-width/collections/grid.variables +25 -0
  588. data/share/views/public/plugins/semantic-ui/src/themes/fixed-width/modules/modal.overrides +3 -0
  589. data/share/views/public/plugins/semantic-ui/src/themes/fixed-width/modules/modal.variables +37 -0
  590. data/share/views/public/plugins/semantic-ui/src/themes/flat/collections/form.overrides +24 -0
  591. data/share/views/public/plugins/semantic-ui/src/themes/flat/collections/form.variables +74 -0
  592. data/share/views/public/plugins/semantic-ui/src/themes/flat/globals/site.overrides +3 -0
  593. data/share/views/public/plugins/semantic-ui/src/themes/flat/globals/site.variables +106 -0
  594. data/share/views/public/plugins/semantic-ui/src/themes/github/collections/form.overrides +16 -0
  595. data/share/views/public/plugins/semantic-ui/src/themes/github/collections/form.variables +40 -0
  596. data/share/views/public/plugins/semantic-ui/src/themes/github/collections/menu.overrides +7 -0
  597. data/share/views/public/plugins/semantic-ui/src/themes/github/collections/menu.variables +66 -0
  598. data/share/views/public/plugins/semantic-ui/src/themes/github/collections/message.overrides +11 -0
  599. data/share/views/public/plugins/semantic-ui/src/themes/github/collections/message.variables +29 -0
  600. data/share/views/public/plugins/semantic-ui/src/themes/github/elements/button.overrides +4 -0
  601. data/share/views/public/plugins/semantic-ui/src/themes/github/elements/button.variables +77 -0
  602. data/share/views/public/plugins/semantic-ui/src/themes/github/elements/segment.overrides +3 -0
  603. data/share/views/public/plugins/semantic-ui/src/themes/github/elements/segment.variables +41 -0
  604. data/share/views/public/plugins/semantic-ui/src/themes/github/elements/step.overrides +26 -0
  605. data/share/views/public/plugins/semantic-ui/src/themes/github/elements/step.variables +20 -0
  606. data/share/views/public/plugins/semantic-ui/src/themes/gmail/collections/message.overrides +0 -0
  607. data/share/views/public/plugins/semantic-ui/src/themes/gmail/collections/message.variables +15 -0
  608. data/share/views/public/plugins/semantic-ui/src/themes/material/elements/button.overrides +23 -0
  609. data/share/views/public/plugins/semantic-ui/src/themes/material/elements/button.variables +87 -0
  610. data/share/views/public/plugins/semantic-ui/src/themes/material/elements/header.overrides +15 -0
  611. data/share/views/public/plugins/semantic-ui/src/themes/material/elements/header.variables +21 -0
  612. data/share/views/public/plugins/semantic-ui/src/themes/material/globals/site.overrides +0 -0
  613. data/share/views/public/plugins/semantic-ui/src/themes/material/globals/site.variables +119 -0
  614. data/share/views/public/plugins/semantic-ui/src/themes/material/modules/modal.overrides +6 -0
  615. data/share/views/public/plugins/semantic-ui/src/themes/material/modules/modal.variables +15 -0
  616. data/share/views/public/plugins/semantic-ui/src/themes/pulsar/elements/loader.overrides +70 -0
  617. data/share/views/public/plugins/semantic-ui/src/themes/pulsar/elements/loader.variables +7 -0
  618. data/share/views/public/plugins/semantic-ui/src/themes/raised/elements/button.overrides +3 -0
  619. data/share/views/public/plugins/semantic-ui/src/themes/raised/elements/button.variables +27 -0
  620. data/share/views/public/plugins/semantic-ui/src/themes/resetcss/globals/reset.overrides +52 -0
  621. data/share/views/public/plugins/semantic-ui/src/themes/resetcss/globals/reset.variables +3 -0
  622. data/share/views/public/plugins/semantic-ui/src/themes/round/elements/button.overrides +0 -0
  623. data/share/views/public/plugins/semantic-ui/src/themes/round/elements/button.variables +138 -0
  624. data/share/views/public/plugins/semantic-ui/src/themes/striped/modules/progress.overrides +29 -0
  625. data/share/views/public/plugins/semantic-ui/src/themes/striped/modules/progress.variables +3 -0
  626. data/share/views/public/plugins/semantic-ui/src/themes/timeline/views/feed.overrides +35 -0
  627. data/share/views/public/plugins/semantic-ui/src/themes/timeline/views/feed.variables +40 -0
  628. data/share/views/public/plugins/semantic-ui/src/themes/twitter/elements/button.overrides +13 -0
  629. data/share/views/public/plugins/semantic-ui/src/themes/twitter/elements/button.variables +45 -0
  630. data/share/views/public/plugins/semantic-ui/tasks/admin/docs.json +19 -0
  631. data/share/views/public/plugins/semantic-ui/tasks/admin/oauth.example.js +5 -0
  632. data/share/views/public/plugins/semantic-ui/tasks/admin/questions.js +50 -0
  633. data/share/views/public/plugins/semantic-ui/tasks/admin/release.js +85 -0
  634. data/share/views/public/plugins/semantic-ui/tasks/admin/templates/README.md +23 -0
  635. data/share/views/public/plugins/semantic-ui/tasks/admin/templates/bower.json +29 -0
  636. data/share/views/public/plugins/semantic-ui/tasks/admin/templates/composer.json +20 -0
  637. data/share/views/public/plugins/semantic-ui/tasks/admin/templates/package.json +17 -0
  638. data/share/views/public/plugins/semantic-ui/tasks/banner.js +12 -0
  639. data/share/views/public/plugins/semantic-ui/tasks/comments.js +20 -0
  640. data/share/views/public/plugins/semantic-ui/tasks/defaults.js +69 -0
  641. data/share/views/public/plugins/semantic-ui/tasks/gulp-settings.js +51 -0
  642. data/share/views/public/plugins/semantic-ui/tasks/log.js +8 -0
  643. data/share/views/public/plugins/semantic-ui/tasks/questions.js +425 -0
  644. data/share/views/public/plugins/semantic-ui/test/coverage/PhantomJS 1.9.2 (Linux)/index.html +320 -0
  645. data/share/views/public/plugins/semantic-ui/test/coverage/PhantomJS 1.9.2 (Linux)/prettify.css +1 -0
  646. data/share/views/public/plugins/semantic-ui/test/coverage/PhantomJS 1.9.2 (Linux)/prettify.js +1 -0
  647. data/share/views/public/plugins/semantic-ui/test/coverage/coverage-PhantomJS 1.9.2 (Linux)-20131014_012621.json +1 -0
  648. data/share/views/public/plugins/semantic-ui/test/coverage/coverage-PhantomJS 1.9.2 (Linux)-20131014_012811.json +1 -0
  649. data/share/views/public/plugins/semantic-ui/test/fixtures/accordion.html +24 -0
  650. data/share/views/public/plugins/semantic-ui/test/fixtures/checkbox.html +46 -0
  651. data/share/views/public/plugins/semantic-ui/test/fixtures/dropdown.html +9 -0
  652. data/share/views/public/plugins/semantic-ui/test/fixtures/modal.html +25 -0
  653. data/share/views/public/plugins/semantic-ui/test/fixtures/popup.html +8 -0
  654. data/share/views/public/plugins/semantic-ui/test/fixtures/rating.html +7 -0
  655. data/share/views/public/plugins/semantic-ui/test/fixtures/shape.html +7 -0
  656. data/share/views/public/plugins/semantic-ui/test/fixtures/sidebar.html +25 -0
  657. data/share/views/public/plugins/semantic-ui/test/fixtures/tab.html +8 -0
  658. data/share/views/public/plugins/semantic-ui/test/fixtures/transition.html +1 -0
  659. data/share/views/public/plugins/semantic-ui/test/fixtures/video.html +5 -0
  660. data/share/views/public/plugins/semantic-ui/test/helpers/jasmine-clog.js +17 -0
  661. data/share/views/public/plugins/semantic-ui/test/helpers/jasmine-jquery.js +705 -0
  662. data/share/views/public/plugins/semantic-ui/test/helpers/jasmine-sinon.js +58 -0
  663. data/share/views/public/plugins/semantic-ui/test/helpers/jquery-events.js +28 -0
  664. data/share/views/public/plugins/semantic-ui/test/helpers/sinon.js +4819 -0
  665. data/share/views/public/plugins/semantic-ui/test/modules/accordion.spec.js +10 -0
  666. data/share/views/public/plugins/semantic-ui/test/modules/checkbox.spec.js +8 -0
  667. data/share/views/public/plugins/semantic-ui/test/modules/dropdown.spec.js +8 -0
  668. data/share/views/public/plugins/semantic-ui/test/modules/modal.spec.js +10 -0
  669. data/share/views/public/plugins/semantic-ui/test/modules/module.spec.js +218 -0
  670. data/share/views/public/plugins/semantic-ui/test/modules/popup.spec.js +8 -0
  671. data/share/views/public/plugins/semantic-ui/test/modules/search.spec.js +8 -0
  672. data/share/views/public/plugins/semantic-ui/test/modules/shape.spec.js +8 -0
  673. data/share/views/public/plugins/semantic-ui/test/modules/sidebar.spec.js +8 -0
  674. data/share/views/public/plugins/semantic-ui/test/modules/tab.spec.js +9 -0
  675. data/share/views/public/plugins/semantic-ui/test/modules/transition.spec.js +8 -0
  676. data/share/views/public/plugins/semantic-ui/test/modules/video.spec.js +8 -0
  677. data/share/views/public/plugins/springy/LICENSE +22 -0
  678. data/share/views/public/plugins/springy/README.mkdn +129 -0
  679. data/share/views/public/plugins/springy/bower.json +17 -0
  680. data/share/views/public/plugins/springy/demo-json.html +38 -0
  681. data/share/views/public/plugins/springy/demo-raphael.html +246 -0
  682. data/share/views/public/plugins/springy/demo-simple.html +33 -0
  683. data/share/views/public/plugins/springy/demo.html +46 -0
  684. data/share/views/public/plugins/springy/package.json +21 -0
  685. data/share/views/public/plugins/springy/springy.js +727 -0
  686. data/share/views/public/plugins/springy/springyui.js +394 -0
  687. metadata +657 -38
  688. data/share/views/compass/_app.sass +0 -17
  689. data/share/views/compass/_normalize.scss +0 -680
  690. data/share/views/compass/_rbbt.sass +0 -15
  691. data/share/views/compass/actions.sass +0 -72
  692. data/share/views/compass/colors.sass +0 -5
  693. data/share/views/compass/entity_card.sass +0 -48
  694. data/share/views/compass/favourites.sass +0 -20
  695. data/share/views/compass/figure.sass +0 -27
  696. data/share/views/compass/finder.sass +0 -30
  697. data/share/views/compass/fonts.sass +0 -54
  698. data/share/views/compass/foundation.sass +0 -79
  699. data/share/views/compass/functions.sass +0 -28
  700. data/share/views/compass/grid_system.sass +0 -40
  701. data/share/views/compass/help.sass +0 -21
  702. data/share/views/compass/monitor.sass +0 -8
  703. data/share/views/compass/rbbt/button.sass +0 -14
  704. data/share/views/compass/rbbt/form.sass +0 -98
  705. data/share/views/compass/rbbt/fragment.sass +0 -7
  706. data/share/views/compass/rbbt/menu.sass +0 -196
  707. data/share/views/compass/rbbt/table.sass +0 -174
  708. data/share/views/compass/skeleton.sass +0 -2
  709. data/share/views/compass/skeleton/_dependencies.sass +0 -151
  710. data/share/views/compass/skeleton/_functions.sass +0 -4
  711. data/share/views/compass/skeleton/_mixins.sass +0 -25
  712. data/share/views/compass/skeleton/_vars.sass +0 -72
  713. data/share/views/compass/skeleton/base.sass +0 -333
  714. data/share/views/compass/skeleton/layout.sass +0 -51
  715. data/share/views/compass/skeleton/skeleton.sass +0 -105
  716. data/share/views/compass/solarized.sass +0 -34
  717. data/share/views/compass/style.sass +0 -47
  718. data/share/views/compass/theme.sass +0 -77
  719. data/share/views/compass/top_menu.sass +0 -125
  720. data/share/views/compass/user.sass +0 -17
  721. data/share/views/compass/variables.sass +0 -7
  722. data/share/views/compass/workflow.sass +0 -64
@@ -0,0 +1,1119 @@
1
+ /*
2
+ All configurable options are defined inside build.config
3
+ Please adjust this to your site's settings
4
+ */
5
+
6
+ /*******************************
7
+ Set-up
8
+ *******************************/
9
+
10
+
11
+ var
12
+ gulp = require('gulp-help')(require('gulp')),
13
+
14
+ // node components & oddballs
15
+ console = require('better-console'),
16
+ del = require('del'),
17
+ extend = require('extend'),
18
+ fs = require('fs'),
19
+ path = require('path'),
20
+ runSequence = require('run-sequence'),
21
+ wrench = require('wrench'),
22
+
23
+ // gulp dependencies
24
+ autoprefixer = require('gulp-autoprefixer'),
25
+ clone = require('gulp-clone'),
26
+ concat = require('gulp-concat'),
27
+ concatCSS = require('gulp-concat-css'),
28
+ copy = require('gulp-copy'),
29
+ debug = require('gulp-debug'),
30
+ flatten = require('gulp-flatten'),
31
+ header = require('gulp-header'),
32
+ jeditor = require('gulp-json-editor'),
33
+ karma = require('gulp-karma'),
34
+ less = require('gulp-less'),
35
+ minifyCSS = require('gulp-minify-css'),
36
+ notify = require('gulp-notify'),
37
+ plumber = require('gulp-plumber'),
38
+ print = require('gulp-print'),
39
+ prompt = require('gulp-prompt'),
40
+ rename = require('gulp-rename'),
41
+ replace = require('gulp-replace'),
42
+ sourcemaps = require('gulp-sourcemaps'),
43
+ uglify = require('gulp-uglify'),
44
+ util = require('gulp-util'),
45
+ watch = require('gulp-watch'),
46
+
47
+ // config
48
+ banner = require('./tasks/banner'),
49
+ comments = require('./tasks/comments'),
50
+ defaults = require('./tasks/defaults'),
51
+ log = require('./tasks/log'),
52
+ questions = require('./tasks/questions'),
53
+ settings = require('./tasks/gulp-settings'),
54
+
55
+ // admin
56
+ release = require('./tasks/admin/release'),
57
+ git = require('gulp-git'),
58
+ githubAPI = require('github'),
59
+
60
+ oAuth = fs.existsSync('./tasks/admin/oauth.js')
61
+ ? require('./tasks/admin/oauth')
62
+ : false,
63
+ github,
64
+
65
+
66
+ // local
67
+ runSetup = false,
68
+ overwrite = true,
69
+ config,
70
+ package,
71
+ github,
72
+
73
+ version,
74
+
75
+ // derived
76
+ base,
77
+ clean,
78
+ output,
79
+ source,
80
+ assetPaths,
81
+ componentGlob,
82
+
83
+ // temporary
84
+ folder
85
+ ;
86
+
87
+
88
+ /*******************************
89
+ Read Settings
90
+ *******************************/
91
+
92
+ try {
93
+ // try to load json
94
+ var
95
+ config = require(defaults.files.config),
96
+ package = (fs.existsSync(defaults.files.npm))
97
+ ? require(defaults.files.npm)
98
+ : false
99
+ ;
100
+ }
101
+ catch(error) {
102
+ if(error.code === 'MODULE_NOT_FOUND') {
103
+ console.error('No semantic.json config found');
104
+ }
105
+ var config = false;
106
+ }
107
+
108
+ /*******************************
109
+ Values Derived From Config
110
+ *******************************/
111
+
112
+ var
113
+ getConfigValues = function() {
114
+
115
+ if(!config) {
116
+ runSetup = true;
117
+ config = defaults;
118
+ }
119
+ config = extend(true, {}, defaults, config);
120
+
121
+ // shorthand
122
+ base = config.base;
123
+ clean = config.paths.clean;
124
+ output = config.paths.output;
125
+ source = config.paths.source;
126
+
127
+ version = (package !== undefined)
128
+ ? package.version || 'Unknown'
129
+ : 'Unknown'
130
+ ;
131
+
132
+ // create glob for matching filenames from components in semantic.json
133
+ componentGlob = (typeof config.components == 'object')
134
+ ? (config.components.length > 1)
135
+ ? '{' + config.components.join(',') + '}'
136
+ : config.components[0]
137
+ : ''
138
+ ;
139
+
140
+ // relative paths
141
+ assetPaths = {
142
+ uncompressed : path.relative(output.uncompressed, output.themes),
143
+ compressed : path.relative(output.compressed, output.themes),
144
+ packaged : path.relative(output.packaged, output.themes)
145
+ };
146
+
147
+ // add base to values
148
+ for(var folder in source) {
149
+ if(source.hasOwnProperty(folder)) {
150
+ source[folder] = path.normalize(base + source[folder]);
151
+ }
152
+ }
153
+ for(folder in output) {
154
+ if(output.hasOwnProperty(folder)) {
155
+ output[folder] = path.normalize(base + output[folder]);
156
+ }
157
+ }
158
+ clean = base + clean;
159
+ }
160
+ ;
161
+
162
+ getConfigValues();
163
+
164
+
165
+ /*******************************
166
+ Tasks
167
+ *******************************/
168
+
169
+ gulp.task('default', false, [
170
+ 'check install'
171
+ ]);
172
+
173
+ gulp.task('watch', 'Watch for site/theme changes (Default Task)', function(callback) {
174
+
175
+ console.clear();
176
+ console.log('Watching source files for changes');
177
+
178
+ if(!fs.existsSync(config.files.theme)) {
179
+ console.error('Cant compile LESS. Run "gulp install" to create a theme config file');
180
+ return;
181
+ }
182
+
183
+
184
+ // watching changes in style
185
+ gulp
186
+ .watch([
187
+ source.config,
188
+ source.definitions + '**/*.less',
189
+ source.site + '**/*.{overrides,variables}',
190
+ source.themes + '**/*.{overrides,variables}'
191
+ ], function(file) {
192
+ var
193
+ srcPath,
194
+ stream,
195
+ compressedStream,
196
+ uncompressedStream
197
+ ;
198
+
199
+ gulp.src(file.path)
200
+ .pipe(print(log.modified))
201
+ ;
202
+
203
+ // recompile only definition file
204
+ srcPath = util.replaceExtension(file.path, '.less');
205
+ srcPath = srcPath.replace(config.regExp.themePath, source.definitions);
206
+ srcPath = srcPath.replace(source.site, source.definitions);
207
+
208
+ // get relative asset path (path returns wrong path? hardcoded)
209
+ // assetPaths.source = path.relative(srcPath, path.resolve(source.themes));
210
+ assetPaths.source = '../../themes';
211
+
212
+
213
+ if( fs.existsSync(srcPath) ) {
214
+
215
+ // unified css stream
216
+ stream = gulp.src(srcPath)
217
+ .pipe(plumber())
218
+ //.pipe(sourcemaps.init())
219
+ .pipe(less(settings.less))
220
+ .pipe(replace(comments.variables.in, comments.variables.out))
221
+ .pipe(replace(comments.large.in, comments.large.out))
222
+ .pipe(replace(comments.small.in, comments.small.out))
223
+ .pipe(replace(comments.tiny.in, comments.tiny.out))
224
+ .pipe(autoprefixer(settings.prefix))
225
+ ;
226
+
227
+ // use 2 concurrent streams from same source
228
+ uncompressedStream = stream.pipe(clone());
229
+ compressedStream = stream.pipe(clone());
230
+
231
+ uncompressedStream
232
+ .pipe(plumber())
233
+ .pipe(replace(assetPaths.source, assetPaths.uncompressed))
234
+ //.pipe(sourcemaps.write('/', settings.sourcemap))
235
+ .pipe(header(banner, settings.header))
236
+ .pipe(gulp.dest(output.uncompressed))
237
+ .pipe(print(log.created))
238
+ .on('end', function() {
239
+ gulp.start('package uncompressed css');
240
+ })
241
+ ;
242
+
243
+ compressedStream = stream
244
+ .pipe(plumber())
245
+ .pipe(clone())
246
+ .pipe(replace(assetPaths.source, assetPaths.compressed))
247
+ .pipe(minifyCSS(settings.minify))
248
+ .pipe(rename(settings.rename.minCSS))
249
+ //.pipe(sourcemaps.write('/', settings.sourcemap))
250
+ .pipe(header(banner, settings.header))
251
+ .pipe(gulp.dest(output.compressed))
252
+ .pipe(print(log.created))
253
+ .on('end', function() {
254
+ gulp.start('package compressed css');
255
+ })
256
+ ;
257
+
258
+ }
259
+ })
260
+ ;
261
+
262
+ // watch changes in assets
263
+ gulp
264
+ .watch([
265
+ source.themes + '**/assets/**'
266
+ ], function(file) {
267
+ // copy assets
268
+ gulp.src(file.path, { base: source.themes })
269
+ .pipe(gulp.dest(output.themes))
270
+ .pipe(print(log.created))
271
+ ;
272
+ })
273
+ ;
274
+
275
+ // watch changes in js
276
+ gulp
277
+ .watch([
278
+ source.definitions + '**/*.js'
279
+ ], function(file) {
280
+ gulp.src(file.path)
281
+ .pipe(plumber())
282
+ .pipe(gulp.dest(output.uncompressed))
283
+ .pipe(print(log.created))
284
+ .pipe(sourcemaps.init())
285
+ .pipe(uglify(settings.uglify))
286
+ .pipe(rename(settings.rename.minJS))
287
+ .pipe(gulp.dest(output.compressed))
288
+ .pipe(print(log.created))
289
+ .on('end', function() {
290
+ gulp.start('package compressed js');
291
+ gulp.start('package uncompressed js');
292
+ })
293
+ ;
294
+ })
295
+ ;
296
+
297
+ });
298
+
299
+ // Builds all files
300
+ gulp.task('build', 'Builds all files from source', function(callback) {
301
+ var
302
+ stream,
303
+ compressedStream,
304
+ uncompressedStream
305
+ ;
306
+
307
+ console.info('Building Semantic');
308
+
309
+ if(!fs.existsSync(config.files.theme)) {
310
+ console.error('Cant build LESS. Run "gulp install" to create a theme config file');
311
+ return;
312
+ }
313
+
314
+ // get relative asset path (path returns wrong path?)
315
+ // assetPaths.source = path.relative(srcPath, path.resolve(source.themes));
316
+ assetPaths.source = '../../themes'; // hardcoded
317
+
318
+ // copy assets
319
+ gulp.src(source.themes + '**/assets/**')
320
+ .pipe(gulp.dest(output.themes))
321
+ ;
322
+
323
+ // javascript stream
324
+ gulp.src(source.definitions + '**/*.js')
325
+ .pipe(plumber())
326
+ .pipe(flatten())
327
+ .pipe(gulp.dest(output.uncompressed))
328
+ .pipe(print(log.created))
329
+ // .pipe(sourcemaps.init())
330
+ .pipe(uglify(settings.uglify))
331
+ .pipe(rename(settings.rename.minJS))
332
+ .pipe(header(banner, settings.header))
333
+ .pipe(gulp.dest(output.compressed))
334
+ .pipe(print(log.created))
335
+ .on('end', function() {
336
+ gulp.start('package compressed js');
337
+ gulp.start('package uncompressed js');
338
+ })
339
+ ;
340
+
341
+ // unified css stream
342
+ stream = gulp.src(source.definitions + '**/*.less')
343
+ .pipe(plumber())
344
+ //.pipe(sourcemaps.init())
345
+ .pipe(less(settings.less))
346
+ .pipe(flatten())
347
+ .pipe(replace(comments.variables.in, comments.variables.out))
348
+ .pipe(replace(comments.large.in, comments.large.out))
349
+ .pipe(replace(comments.small.in, comments.small.out))
350
+ .pipe(replace(comments.tiny.in, comments.tiny.out))
351
+ .pipe(autoprefixer(settings.prefix))
352
+ ;
353
+
354
+ // use 2 concurrent streams from same source to concat release
355
+ uncompressedStream = stream.pipe(clone());
356
+ compressedStream = stream.pipe(clone());
357
+
358
+ uncompressedStream
359
+ .pipe(plumber())
360
+ .pipe(replace(assetPaths.source, assetPaths.uncompressed))
361
+ //.pipe(sourcemaps.write('/', settings.sourcemap))
362
+ .pipe(header(banner, settings.header))
363
+ .pipe(gulp.dest(output.uncompressed))
364
+ .pipe(print(log.created))
365
+ .on('end', function() {
366
+ gulp.start('package uncompressed css');
367
+ })
368
+ ;
369
+
370
+ compressedStream = stream
371
+ .pipe(plumber())
372
+ .pipe(clone())
373
+ .pipe(replace(assetPaths.source, assetPaths.compressed))
374
+ .pipe(minifyCSS(settings.minify))
375
+ .pipe(rename(settings.rename.minCSS))
376
+ //.pipe(sourcemaps.write('/', settings.sourcemap))
377
+ .pipe(header(banner, settings.header))
378
+ .pipe(gulp.dest(output.compressed))
379
+ .pipe(print(log.created))
380
+ .on('end', function() {
381
+ callback();
382
+ gulp.start('package compressed css');
383
+ })
384
+ ;
385
+
386
+ });
387
+
388
+ // cleans distribution files
389
+ gulp.task('clean', 'Clean dist folder', function(callback) {
390
+ return del([clean], settings.del, callback);
391
+ });
392
+
393
+ gulp.task('version', 'Displays current version of Semantic', function(callback) {
394
+ console.log('Semantic UI ' + version);
395
+ });
396
+
397
+ /*--------------
398
+ Internal
399
+ ---------------*/
400
+
401
+ gulp.task('package uncompressed css', false, function() {
402
+ return gulp.src(output.uncompressed + '**/' + componentGlob + '!(*.min|*.map).css')
403
+ .pipe(plumber())
404
+ .pipe(replace(assetPaths.uncompressed, assetPaths.packaged))
405
+ .pipe(concatCSS('semantic.css'))
406
+ .pipe(gulp.dest(output.packaged))
407
+ .pipe(print(log.created))
408
+ ;
409
+ });
410
+
411
+ gulp.task('package compressed css', false, function() {
412
+ return gulp.src(output.uncompressed + '**/' + componentGlob + '!(*.min|*.map).css')
413
+ .pipe(plumber())
414
+ .pipe(replace(assetPaths.uncompressed, assetPaths.packaged))
415
+ .pipe(concatCSS('semantic.min.css'))
416
+ .pipe(minifyCSS(settings.minify))
417
+ .pipe(header(banner, settings.header))
418
+ .pipe(gulp.dest(output.packaged))
419
+ .pipe(print(log.created))
420
+ ;
421
+ });
422
+
423
+ gulp.task('package uncompressed js', false, function() {
424
+ return gulp.src(output.uncompressed + '**/' + componentGlob + '!(*.min|*.map).js')
425
+ .pipe(plumber())
426
+ .pipe(replace(assetPaths.uncompressed, assetPaths.packaged))
427
+ .pipe(concat('semantic.js'))
428
+ .pipe(header(banner, settings.header))
429
+ .pipe(gulp.dest(output.packaged))
430
+ .pipe(print(log.created))
431
+ ;
432
+ });
433
+
434
+ gulp.task('package compressed js', false, function() {
435
+ return gulp.src(output.uncompressed + '**/' + componentGlob + '!(*.min|*.map).js')
436
+ .pipe(plumber())
437
+ .pipe(replace(assetPaths.uncompressed, assetPaths.packaged))
438
+ .pipe(concat('semantic.min.js'))
439
+ .pipe(uglify(settings.uglify))
440
+ .pipe(header(banner, settings.header))
441
+ .pipe(gulp.dest(output.packaged))
442
+ .pipe(print(log.created))
443
+ ;
444
+ });
445
+
446
+
447
+ /*--------------
448
+ Config
449
+ ---------------*/
450
+
451
+ gulp.task('check install', false, function () {
452
+ setTimeout(function() {
453
+ if( runSetup || !fs.existsSync(config.files.site)) {
454
+ console.log('No semantic.json file found. Starting install...');
455
+ gulp.start('install');
456
+ }
457
+ else {
458
+ gulp.start('watch');
459
+ }
460
+ }, 50);
461
+ });
462
+
463
+ gulp.task('install', 'Set-up project for first time', function () {
464
+ console.clear();
465
+ gulp
466
+ .src('gulpfile.js')
467
+ .pipe(prompt.prompt(questions.setup, function(answers) {
468
+ var
469
+ siteVariable = /@siteFolder .*\'(.*)/mg,
470
+
471
+ siteDestination = answers.site || config.folders.site,
472
+
473
+ pathToSite = path.relative(path.resolve(config.folders.theme), path.resolve(siteDestination)),
474
+ sitePathReplace = "@siteFolder : '" + pathToSite + "/';",
475
+
476
+ configExists = fs.existsSync(config.files.config),
477
+ themeConfigExists = fs.existsSync(config.files.theme),
478
+ siteExists = fs.existsSync(siteDestination),
479
+
480
+ jsonSource = (configExists)
481
+ ? config.files.config
482
+ : config.templates.config,
483
+ json = {
484
+ paths: {
485
+ source: {},
486
+ output: {}
487
+ }
488
+ }
489
+ ;
490
+
491
+ // exit if config exists and user specifies no overwrite
492
+ if(answers.overwrite !== undefined && answers.overwrite == 'no') {
493
+ return;
494
+ }
495
+
496
+ console.clear();
497
+ console.log('Installing');
498
+ console.log('------------------------------');
499
+
500
+ // create site files
501
+ if(siteExists) {
502
+ console.info('Site folder exists, merging files (no overwrite)', siteDestination);
503
+ }
504
+ else {
505
+ console.info('Creating site theme folder', siteDestination);
506
+ }
507
+ // copy recursively without overwrite
508
+ wrench.copyDirSyncRecursive(config.templates.site, siteDestination, settings.wrench.recursive);
509
+
510
+ // adjust less variable for site folder location
511
+ console.info('Adjusting @siteFolder', sitePathReplace);
512
+ if(themeConfigExists) {
513
+ gulp.src(config.files.site)
514
+ .pipe(plumber())
515
+ .pipe(replace(siteVariable, sitePathReplace))
516
+ .pipe(gulp.dest(config.folders.theme))
517
+ ;
518
+ }
519
+ else {
520
+ console.info('Creating src/theme.config (LESS config)');
521
+ gulp.src(config.templates.theme)
522
+ .pipe(plumber())
523
+ .pipe(rename({ extname : '' }))
524
+ .pipe(replace(siteVariable, sitePathReplace))
525
+ .pipe(gulp.dest(config.folders.theme))
526
+ ;
527
+ }
528
+
529
+
530
+ // determine semantic.json config
531
+ if(answers.components) {
532
+ json.components = answers.components;
533
+ }
534
+ if(answers.dist) {
535
+ answers.dist = answers.dist;
536
+ json.paths.output = {
537
+ packaged : answers.dist + '/',
538
+ uncompressed : answers.dist + '/components/',
539
+ compressed : answers.dist + '/components/',
540
+ themes : answers.dist + '/themes/'
541
+ };
542
+ }
543
+ if(answers.site) {
544
+ json.paths.source.site = answers.site + '/';
545
+ }
546
+ if(answers.packaged) {
547
+ json.paths.output.packaged = answers.packaged + '/';
548
+ }
549
+ if(answers.compressed) {
550
+ json.paths.output.compressed = answers.compressed + '/';
551
+ }
552
+ if(answers.uncompressed) {
553
+ json.paths.output.uncompressed = answers.uncompressed + '/';
554
+ }
555
+
556
+ // write semantic.json
557
+ if(configExists) {
558
+ console.info('Extending semantic.json (Gulp config)');
559
+ gulp.src(jsonSource)
560
+ .pipe(plumber())
561
+ .pipe(rename(settings.rename.json)) // preserve file extension
562
+ .pipe(jeditor(json))
563
+ .pipe(gulp.dest('./'))
564
+ ;
565
+ }
566
+ else {
567
+ console.info('Creating semantic.json (Gulp config)');
568
+ gulp.src(jsonSource)
569
+ .pipe(plumber())
570
+ .pipe(rename({ extname : '' })) // remove .template from ext
571
+ .pipe(jeditor(json))
572
+ .pipe(gulp.dest('./'))
573
+ ;
574
+ }
575
+ console.log('');
576
+ console.log('');
577
+ }))
578
+ .pipe(prompt.prompt(questions.cleanup, function(answers) {
579
+ if(answers.cleanup == 'yes') {
580
+ del(config.setupFiles);
581
+ }
582
+ if(answers.build == 'yes') {
583
+ config = require(config.files.config);
584
+ getConfigValues();
585
+ gulp.start('build');
586
+ }
587
+ }))
588
+ ;
589
+ });
590
+
591
+ /*******************************
592
+ Admin Tasks
593
+ *******************************/
594
+
595
+ var
596
+ adminQuestions = require('./tasks/admin/questions'),
597
+ newVersion = false
598
+ ;
599
+
600
+ /* Moves watched files to static site generator output */
601
+ gulp.task('serve-docs', false, function () {
602
+ config = require('./tasks/admin/docs.json');
603
+ getConfigValues();
604
+
605
+
606
+ // copy source files
607
+ gulp
608
+ .watch([
609
+ 'src/**/*.*'
610
+ ], function(file) {
611
+ console.clear();
612
+ return gulp.src(file.path, { base: 'src/' })
613
+ .pipe(gulp.dest(output.less))
614
+ .pipe(print(log.created))
615
+ ;
616
+ })
617
+ ;
618
+ gulp.start('watch');
619
+ });
620
+
621
+
622
+ /* Builds files to docs source */
623
+ gulp.task('build-docs', false, function () {
624
+ console.clear();
625
+ // pushes to docpad files
626
+ config = require('./tasks/admin/docs.json');
627
+ getConfigValues();
628
+ gulp.start('build');
629
+
630
+ // copy source
631
+ gulp.src('src/**/*.*')
632
+ .pipe(gulp.dest(output.less))
633
+ .pipe(print(log.created))
634
+ ;
635
+
636
+ });
637
+
638
+
639
+ /* Release */
640
+ gulp.task('release', false, function() {
641
+ // gulp bump
642
+ // Ask for release type (minor, major, patch)
643
+ // Bump package.json
644
+ // Bump composer.json
645
+ if(!oAuth) {
646
+ console.error('Must add node include tasks/admin/oauth.js with oauth token for GitHub');
647
+ return;
648
+ }
649
+
650
+ github = new githubAPI({
651
+ version : '3.0.0',
652
+ debug : true,
653
+ protocol : 'https',
654
+ timeout : 5000
655
+ });
656
+
657
+ github.authenticate({
658
+ type: 'oauth',
659
+ token: oAuth.token
660
+ });
661
+
662
+ // gulp build
663
+ //runSequence('update git');
664
+ runSequence('build', 'create repos', 'update git');
665
+
666
+ // #Create SCSS Version
667
+ // #Create RTL Release
668
+
669
+ });
670
+
671
+ /* Build Component Release Only */
672
+ gulp.task('build release', false, function() {
673
+ runSequence('build', 'create repos');
674
+ });
675
+
676
+
677
+ /*--------------
678
+ Internal
679
+ ---------------*/
680
+
681
+
682
+ gulp.task('create repos', false, function(callback) {
683
+ var
684
+ stream,
685
+ index,
686
+ tasks = []
687
+ ;
688
+
689
+ for(index in release.components) {
690
+
691
+ var
692
+ component = release.components[index]
693
+ ;
694
+
695
+ // streams... designed to save time and make coding fun...
696
+ (function(component) {
697
+
698
+ var
699
+ outputDirectory = release.outputRoot + component,
700
+ isJavascript = fs.existsSync(output.compressed + component + '.js'),
701
+ isCSS = fs.existsSync(output.compressed + component + '.css'),
702
+ capitalizedComponent = component.charAt(0).toUpperCase() + component.slice(1),
703
+ packageName = release.packageRoot + component,
704
+ repoName = release.repoRoot + capitalizedComponent,
705
+ gitURL = 'https://github.com/' + release.org + '/' + repoName + '.git',
706
+ repoURL = 'https://github.com/' + release.org + '/' + repoName + '/',
707
+ regExp = {
708
+ match : {
709
+ // readme
710
+ name : '{component}',
711
+ titleName : '{Component}',
712
+ // release notes
713
+ spacedVersions : /(###.*\n)\n+(?=###)/gm,
714
+ spacedLists : /(^- .*\n)\n+(?=^-)/gm,
715
+ trim : /^\s+|\s+$/g,
716
+ unrelatedNotes : new RegExp('^((?!(^.*(' + component + ').*$|###.*)).)*$', 'gmi'),
717
+ whitespace : /\n\s*\n\s*\n/gm,
718
+ // npm
719
+ export : /\$\.fn\.\w+\s*=\s*function\(parameters\)\s*{/g,
720
+ formExport : /\$\.fn\.\w+\s*=\s*function\(fields, parameters\)\s*{/g,
721
+ settingsExport : /\$\.fn\.\w+\.settings\s*=/g,
722
+ settingsReference : /\$\.fn\.\w+\.settings/g,
723
+ jQuery : /jQuery/g
724
+ },
725
+ replace : {
726
+ // readme
727
+ name : component,
728
+ titleName : capitalizedComponent,
729
+ // release notes
730
+ spacedVersions : '',
731
+ spacedLists : '$1',
732
+ trim : '',
733
+ unrelatedNotes : '',
734
+ whitespace : '\n\n',
735
+ // npm
736
+ export : 'module.exports = function(parameters) {\n var _module = module;\n',
737
+ formExport : 'module.exports = function(fields, parameters) {\n var _module = module;\n',
738
+ settingsExport : 'module.exports.settings =',
739
+ settingsReference : '_module.exports.settings',
740
+ jQuery : 'require("jquery")'
741
+ }
742
+ },
743
+ task = {
744
+ all : component + ' creating',
745
+ repo : component + ' create repo',
746
+ bower : component + ' create bower.json',
747
+ readme : component + ' create README',
748
+ readme : component + ' create README',
749
+ npm : component + ' create NPM Module',
750
+ notes : component + ' create release notes',
751
+ composer : component + ' create composer.json',
752
+ package : component + ' create package.json'
753
+ }
754
+ ;
755
+
756
+ // copy dist files into output folder adjusting asset paths
757
+ gulp.task(task.repo, false, function() {
758
+ return gulp.src(release.source + component + '.*')
759
+ .pipe(plumber())
760
+ .pipe(flatten())
761
+ .pipe(replace(release.paths.source, release.paths.output))
762
+ .pipe(gulp.dest(outputDirectory))
763
+ ;
764
+ });
765
+
766
+ // create npm module
767
+ gulp.task(task.npm, false, function() {
768
+ return gulp.src(release.source + component + '!(*.min|*.map).js')
769
+ .pipe(plumber())
770
+ .pipe(flatten())
771
+ .pipe(replace(regExp.match.export, regExp.replace.export))
772
+ .pipe(replace(regExp.match.formExport, regExp.replace.formExport))
773
+ .pipe(replace(regExp.match.settingsExport, regExp.replace.settingsExport))
774
+ .pipe(replace(regExp.match.settingsReference, regExp.replace.settingsReference))
775
+ .pipe(replace(regExp.match.jQuery, regExp.replace.jQuery))
776
+ .pipe(rename('index.js'))
777
+ .pipe(gulp.dest(outputDirectory))
778
+ ;
779
+ });
780
+
781
+ // create readme
782
+ gulp.task(task.readme, false, function() {
783
+ return gulp.src(release.templates.readme)
784
+ .pipe(plumber())
785
+ .pipe(flatten())
786
+ .pipe(replace(regExp.match.name, regExp.replace.name))
787
+ .pipe(replace(regExp.match.titleName, regExp.replace.titleName))
788
+ .pipe(gulp.dest(outputDirectory))
789
+ ;
790
+ });
791
+
792
+ // extend bower.json
793
+ gulp.task(task.bower, false, function() {
794
+ return gulp.src(release.templates.bower)
795
+ .pipe(plumber())
796
+ .pipe(flatten())
797
+ .pipe(jeditor(function(bower) {
798
+ bower.name = packageName;
799
+ bower.description = capitalizedComponent + ' - Semantic UI';
800
+ if(isJavascript) {
801
+ if(isCSS) {
802
+ bower.main = [
803
+ component + '.js',
804
+ component + '.css'
805
+ ];
806
+ }
807
+ else {
808
+ bower.main = [
809
+ component + '.js'
810
+ ];
811
+ }
812
+ bower.dependencies = {
813
+ jquery: '>=1.8'
814
+ };
815
+ }
816
+ else {
817
+ bower.main = [
818
+ component + '.css'
819
+ ];
820
+ }
821
+ return bower;
822
+ }))
823
+ .pipe(gulp.dest(outputDirectory))
824
+ ;
825
+ });
826
+
827
+ // extend package.json
828
+ gulp.task(task.package, false, function() {
829
+ return gulp.src(release.templates.package)
830
+ .pipe(plumber())
831
+ .pipe(flatten())
832
+ .pipe(jeditor(function(package) {
833
+ if(isJavascript) {
834
+ package.dependencies = {
835
+ jquery: 'x.x.x'
836
+ };
837
+ package.main = 'index.js';
838
+ }
839
+ package.name = packageName;
840
+ if(version) {
841
+ package.version = version;
842
+ }
843
+ package.title = 'Semantic UI - ' + capitalizedComponent;
844
+ package.description = 'Single component release of ' + component;
845
+ package.repository = {
846
+ type : 'git',
847
+ url : gitURL
848
+ };
849
+ return package;
850
+ }))
851
+ .pipe(gulp.dest(outputDirectory))
852
+ ;
853
+ });
854
+
855
+ // extend composer.json
856
+ gulp.task(task.composer, false, function() {
857
+ return gulp.src(release.templates.composer)
858
+ .pipe(plumber())
859
+ .pipe(flatten())
860
+ .pipe(jeditor(function(composer) {
861
+ if(isJavascript) {
862
+ composer.dependencies = {
863
+ jquery: 'x.x.x'
864
+ };
865
+ composer.main = component + '.js';
866
+ }
867
+ composer.name = 'semantic/' + component;
868
+ if(version) {
869
+ composer.version = version;
870
+ }
871
+ composer.description = 'Single component release of ' + component;
872
+ return composer;
873
+ }))
874
+ .pipe(gulp.dest(outputDirectory))
875
+ ;
876
+ });
877
+
878
+ // create release notes
879
+ gulp.task(task.notes, false, function() {
880
+ return gulp.src(release.templates.notes)
881
+ .pipe(plumber())
882
+ .pipe(flatten())
883
+ // Remove release notes for lines not mentioning component
884
+ .pipe(replace(regExp.match.unrelatedNotes, regExp.replace.unrelatedNotes))
885
+ .pipe(replace(regExp.match.whitespace, regExp.replace.whitespace))
886
+ .pipe(replace(regExp.match.spacedVersions, regExp.replace.spacedVersions))
887
+ .pipe(replace(regExp.match.spacedLists, regExp.replace.spacedLists))
888
+ .pipe(replace(regExp.match.trim, regExp.replace.trim))
889
+ .pipe(gulp.dest(outputDirectory))
890
+ ;
891
+ });
892
+
893
+ // synchronous tasks in orchestrator? I think not
894
+ gulp.task(task.all, false, function(callback) {
895
+ runSequence([
896
+ task.repo,
897
+ task.npm,
898
+ task.bower,
899
+ task.readme,
900
+ task.package,
901
+ task.composer,
902
+ task.notes
903
+ ], callback);
904
+ });
905
+
906
+ tasks.push(task.all);
907
+
908
+ })(component);
909
+ }
910
+
911
+ runSequence(tasks, callback);
912
+
913
+ });
914
+ gulp.task('register repos', false, function(callback) {
915
+ var
916
+ index = -1,
917
+ total = release.components.length,
918
+ process = require('child_process'),
919
+ stream,
920
+ stepRepo
921
+ ;
922
+ console.log('Registering repos with package managers');
923
+
924
+ // Do Git commands synchronously per component, to avoid issues
925
+ stepRepo = function() {
926
+ index = index + 1;
927
+ if(index >= total) {
928
+ return;
929
+ }
930
+ var
931
+ component = release.components[index],
932
+ outputDirectory = release.outputRoot + component + '/',
933
+ capitalizedComponent = component.charAt(0).toUpperCase() + component.slice(1),
934
+ packageName = release.packageRoot + component,
935
+ repoName = release.repoRoot + capitalizedComponent,
936
+ gitURL = 'https://github.com/' + release.org + '/' + repoName + '.git',
937
+ exec = process.exec,
938
+ execSettings = {cwd: outputDirectory},
939
+ registerBower = 'bower register ' + packageName + ' ' + gitURL,
940
+ registerNPM = 'npm publish'
941
+
942
+ ;
943
+ /* One time register
944
+ exec(registerBower, execSettings, function(err, stdout, stderr) {
945
+ stepRepo();
946
+ });
947
+ */
948
+ /* Update npm
949
+ exec(registerNPM, execSettings, function(err, stdout, stderr) {
950
+ console.log(err, stdout, stderr);
951
+ stepRepo();
952
+ });
953
+ */
954
+ }
955
+ stepRepo();
956
+ });
957
+
958
+ gulp.task('update git', false, function() {
959
+ var
960
+ index = -1,
961
+ total = release.components.length,
962
+ stream,
963
+ stepRepo
964
+ ;
965
+ console.log('Handling git');
966
+
967
+ // Do Git commands synchronously per component, to avoid issues
968
+ stepRepo = function() {
969
+
970
+ index = index + 1;
971
+ if(index >= total) {
972
+ return;
973
+ }
974
+
975
+ var
976
+ component = release.components[index],
977
+ outputDirectory = release.outputRoot + component + '/',
978
+ capitalizedComponent = component.charAt(0).toUpperCase() + component.slice(1),
979
+ repoName = release.repoRoot + capitalizedComponent,
980
+ gitURL = 'https://github.com/' + release.org + '/' + repoName + '.git',
981
+ repoURL = 'https://github.com/' + release.org + '/' + repoName + '/',
982
+ gitOptions = { cwd: outputDirectory },
983
+ quietOptions = { args: '-q', cwd: outputDirectory },
984
+ isRepository = fs.existsSync(outputDirectory + '.git/')
985
+ componentPackage = fs.existsSync(outputDirectory + 'package.json' )
986
+ ? require(outputDirectory + 'package.json')
987
+ : false,
988
+ commitArgs = (oAuth.name !== undefined && oAuth.email !== undefined)
989
+ ? '--author "' + oAuth.name + ' <' + oAuth.email + '>"'
990
+ : '',
991
+ isNewVersion = (version && componentPackage.version != version),
992
+ mergeMessage = 'Merged from upstream',
993
+ commitMessage = (isNewVersion)
994
+ ? 'Updated component to version ' + version
995
+ : 'Updated component release from Semantic-UI (Automatic)'
996
+ ;
997
+
998
+ console.log('Processing repository:' + outputDirectory);
999
+
1000
+ if(isRepository) {
1001
+ commitFiles();
1002
+ }
1003
+ else {
1004
+ createRepo();
1005
+ }
1006
+
1007
+ // standard path
1008
+ function commitFiles() {
1009
+ // commit files
1010
+ console.log('Committing files', commitArgs);
1011
+ gulp.src('**/*', gitOptions)
1012
+ .pipe(git.add(gitOptions))
1013
+ .pipe(git.commit(commitMessage, { args: commitArgs, cwd: outputDirectory }))
1014
+ .on('error', function(error) {
1015
+ console.log('Nothing new to commit');
1016
+ stepRepo();
1017
+ })
1018
+ .on('finish', function(callback) {
1019
+ pullFiles();
1020
+ })
1021
+ ;
1022
+ }
1023
+ function pullFiles() {
1024
+ console.log('Pulling files');
1025
+ git.pull('origin', 'master', { args: '', cwd: outputDirectory }, function(error) {
1026
+ if(error && error.message.search("Couldn't find remote ref") != -1) {
1027
+ createRepo();
1028
+ }
1029
+ else {
1030
+ console.log('Pull completed successfully');
1031
+ mergeCommit();
1032
+ }
1033
+ });
1034
+ };
1035
+ function mergeCommit() {
1036
+ // commit files
1037
+ console.log('Adding merge commit', commitArgs);
1038
+ gulp.src('', gitOptions)
1039
+ .pipe(git.add(gitOptions))
1040
+ .pipe(git.commit(mergeMessage, { args: commitArgs, cwd: outputDirectory }))
1041
+ .on('error', function(error) {
1042
+ console.log('Nothing new to merge', error);
1043
+ })
1044
+ .on('finish', function(callback) {
1045
+ if(1) {
1046
+ tagFiles();
1047
+ }
1048
+ else {
1049
+ pushFiles();
1050
+ }
1051
+ })
1052
+ ;
1053
+ }
1054
+ function tagFiles() {
1055
+ console.log('Tagging new version ', version);
1056
+ git.tag(version, 'Updated version from semantic-ui (automatic)', function (err) {
1057
+ pushFiles();
1058
+ });
1059
+ }
1060
+ function pushFiles() {
1061
+ console.log('Pushing files');
1062
+ git.push('origin', 'master', { args: '', cwd: outputDirectory }, function(error) {
1063
+ if(error && error.message.search("Couldn't find remote ref") == -1) {
1064
+ createRepo();
1065
+ }
1066
+ console.log('Push completed successfully');
1067
+ stepRepo();
1068
+ });
1069
+ };
1070
+
1071
+ // set-up path
1072
+ function createRepo() {
1073
+ console.log('Creating repository ' + repoURL);
1074
+ github.repos.createFromOrg({
1075
+ org : release.org,
1076
+ name : repoName,
1077
+ homepage : release.homepage
1078
+ }, function() {
1079
+ if(isRepository) {
1080
+ addRemote();
1081
+ }
1082
+ else {
1083
+ initRepo();
1084
+ }
1085
+ });
1086
+ }
1087
+ function initRepo() {
1088
+ console.log('Initializing repository in ' + outputDirectory);
1089
+ git.init(gitOptions, function(error) {
1090
+ if(error) {
1091
+ console.error('Error initializing repo');
1092
+ return;
1093
+ }
1094
+ addRemote();
1095
+ });
1096
+ }
1097
+ function addRemote() {
1098
+ console.log('Adding remote origin as ' + gitURL);
1099
+ git.addRemote('origin', gitURL, gitOptions, firstPushFiles);
1100
+ }
1101
+ function firstPushFiles() {
1102
+ console.log('Pushing files');
1103
+ git.push('origin', 'master', { args: '-u', cwd: outputDirectory }, function(error) {
1104
+ if(error) {
1105
+ console.log(error);
1106
+ pullFiles();
1107
+ }
1108
+ else {
1109
+ console.log('First push completed successfully');
1110
+ stepRepo();
1111
+ }
1112
+ });
1113
+ };
1114
+
1115
+ };
1116
+
1117
+ return stepRepo();
1118
+
1119
+ });