bootstrap_it 0.1.0

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 (289) hide show
  1. checksums.yaml +7 -0
  2. data/.gitignore +11 -0
  3. data/.rspec +2 -0
  4. data/.rubocop.yml +5 -0
  5. data/Gemfile +9 -0
  6. data/README.md +582 -0
  7. data/Rakefile +6 -0
  8. data/bootstrap_it.gemspec +33 -0
  9. data/config.ru +7 -0
  10. data/lib/bootstrap_it.rb +9 -0
  11. data/lib/bootstrap_it/assets.rb +67 -0
  12. data/lib/bootstrap_it/config.rb +50 -0
  13. data/lib/bootstrap_it/engine.rb +25 -0
  14. data/lib/bootstrap_it/locales/en.yml +4 -0
  15. data/lib/bootstrap_it/locales/ru.yml +4 -0
  16. data/lib/bootstrap_it/version.rb +6 -0
  17. data/lib/bootstrap_it/view_helpers.rb +55 -0
  18. data/lib/bootstrap_it/view_helpers/breadcrumb.rb +19 -0
  19. data/lib/bootstrap_it/view_helpers/button.rb +116 -0
  20. data/lib/bootstrap_it/view_helpers/button_group.rb +32 -0
  21. data/lib/bootstrap_it/view_helpers/button_toolbar.rb +21 -0
  22. data/lib/bootstrap_it/view_helpers/dropdown_menu.rb +30 -0
  23. data/lib/bootstrap_it/view_helpers/form.rb +127 -0
  24. data/lib/bootstrap_it/view_helpers/grid.rb +75 -0
  25. data/lib/bootstrap_it/view_helpers/icon.rb +24 -0
  26. data/lib/bootstrap_it/view_helpers/list.rb +47 -0
  27. data/lib/bootstrap_it/view_helpers/misc.rb +144 -0
  28. data/lib/bootstrap_it/view_helpers/mixin.rb +279 -0
  29. data/lib/bootstrap_it/view_helpers/nav.rb +96 -0
  30. data/lib/bootstrap_it/view_helpers/pagination.rb +34 -0
  31. data/lib/bootstrap_it/view_helpers/table.rb +72 -0
  32. data/lib/bootstrap_it/view_helpers/text.rb +46 -0
  33. data/spec/assets/assets_spec.rb +51 -0
  34. data/spec/internal/app/assets/javascript/application.js +7 -0
  35. data/spec/internal/app/assets/javascript/user.js +1 -0
  36. data/spec/internal/app/assets/javascript/userfont.eot +0 -0
  37. data/spec/internal/app/assets/stylesheets/application.css +6 -0
  38. data/spec/internal/app/assets/stylesheets/user.css +1 -0
  39. data/spec/internal/config/database.yml +3 -0
  40. data/spec/internal/config/routes.rb +3 -0
  41. data/spec/internal/db/schema.rb +3 -0
  42. data/spec/internal/log/.gitignore +1 -0
  43. data/spec/internal/public/favicon.ico +0 -0
  44. data/spec/lib/config_spec.rb +10 -0
  45. data/spec/lib/view_helpers_spec.rb +12 -0
  46. data/spec/spec_helper.rb +37 -0
  47. data/spec/support/example_groups/assets_example_group.rb +84 -0
  48. data/spec/support/example_groups/view_helpers_example_group.rb +124 -0
  49. data/spec/view_helpers/breadcrumb_spec.rb +12 -0
  50. data/spec/view_helpers/button_group_spec.rb +40 -0
  51. data/spec/view_helpers/button_spec.rb +169 -0
  52. data/spec/view_helpers/button_toolbar_spec.rb +14 -0
  53. data/spec/view_helpers/dropdown_menu_spec.rb +41 -0
  54. data/spec/view_helpers/form_spec.rb +27 -0
  55. data/spec/view_helpers/grid_spec.rb +47 -0
  56. data/spec/view_helpers/icon_spec.rb +6 -0
  57. data/spec/view_helpers/list_spec.rb +50 -0
  58. data/spec/view_helpers/misc_spec.rb +117 -0
  59. data/spec/view_helpers/mixin_spec.rb +177 -0
  60. data/spec/view_helpers/nav_spec.rb +63 -0
  61. data/spec/view_helpers/pagination_spec.rb +36 -0
  62. data/spec/view_helpers/table_spec.rb +59 -0
  63. data/spec/view_helpers/text_spec.rb +13 -0
  64. data/spec/views/examples_spec.rb +250 -0
  65. data/upstream/bootstrap-3.0.3-dist.zip +0 -0
  66. data/upstream/bootstrap/3.0.3/fonts/glyphicons-halflings-regular.eot +0 -0
  67. data/upstream/bootstrap/3.0.3/fonts/glyphicons-halflings-regular.svg +229 -0
  68. data/upstream/bootstrap/3.0.3/fonts/glyphicons-halflings-regular.ttf +0 -0
  69. data/upstream/bootstrap/3.0.3/fonts/glyphicons-halflings-regular.woff +0 -0
  70. data/upstream/bootstrap/3.0.3/javascript/bootstrap.js +2006 -0
  71. data/upstream/bootstrap/3.0.3/javascript/bootstrap.min.js +7 -0
  72. data/upstream/bootstrap/3.0.3/src/.editorconfig +11 -0
  73. data/upstream/bootstrap/3.0.3/src/.gitattributes +8 -0
  74. data/upstream/bootstrap/3.0.3/src/.gitignore +42 -0
  75. data/upstream/bootstrap/3.0.3/src/.travis.yml +10 -0
  76. data/upstream/bootstrap/3.0.3/src/CNAME +1 -0
  77. data/upstream/bootstrap/3.0.3/src/CONTRIBUTING.md +79 -0
  78. data/upstream/bootstrap/3.0.3/src/DOCS-LICENSE +319 -0
  79. data/upstream/bootstrap/3.0.3/src/Gruntfile.js +337 -0
  80. data/upstream/bootstrap/3.0.3/src/LICENSE +176 -0
  81. data/upstream/bootstrap/3.0.3/src/LICENSE-MIT +21 -0
  82. data/upstream/bootstrap/3.0.3/src/README.md +166 -0
  83. data/upstream/bootstrap/3.0.3/src/_config.yml +25 -0
  84. data/upstream/bootstrap/3.0.3/src/_includes/ads.html +1 -0
  85. data/upstream/bootstrap/3.0.3/src/_includes/footer.html +48 -0
  86. data/upstream/bootstrap/3.0.3/src/_includes/header.html +42 -0
  87. data/upstream/bootstrap/3.0.3/src/_includes/nav-about.html +12 -0
  88. data/upstream/bootstrap/3.0.3/src/_includes/nav-components.html +137 -0
  89. data/upstream/bootstrap/3.0.3/src/_includes/nav-css.html +99 -0
  90. data/upstream/bootstrap/3.0.3/src/_includes/nav-customize.html +40 -0
  91. data/upstream/bootstrap/3.0.3/src/_includes/nav-getting-started.html +48 -0
  92. data/upstream/bootstrap/3.0.3/src/_includes/nav-javascript.html +88 -0
  93. data/upstream/bootstrap/3.0.3/src/_includes/nav-main.html +37 -0
  94. data/upstream/bootstrap/3.0.3/src/_includes/old-bs-docs.html +8 -0
  95. data/upstream/bootstrap/3.0.3/src/_includes/social-buttons.html +16 -0
  96. data/upstream/bootstrap/3.0.3/src/_layouts/default.html +79 -0
  97. data/upstream/bootstrap/3.0.3/src/_layouts/home.html +47 -0
  98. data/upstream/bootstrap/3.0.3/src/about.html +94 -0
  99. data/upstream/bootstrap/3.0.3/src/bower.json +30 -0
  100. data/upstream/bootstrap/3.0.3/src/components.html +3714 -0
  101. data/upstream/bootstrap/3.0.3/src/composer.json +25 -0
  102. data/upstream/bootstrap/3.0.3/src/css.html +2673 -0
  103. data/upstream/bootstrap/3.0.3/src/customize.html +1715 -0
  104. data/upstream/bootstrap/3.0.3/src/dist/css/bootstrap-theme.css +397 -0
  105. data/upstream/bootstrap/3.0.3/src/dist/css/bootstrap-theme.min.css +7 -0
  106. data/upstream/bootstrap/3.0.3/src/dist/css/bootstrap.css +7118 -0
  107. data/upstream/bootstrap/3.0.3/src/dist/css/bootstrap.min.css +7 -0
  108. data/upstream/bootstrap/3.0.3/src/dist/fonts/glyphicons-halflings-regular.eot +0 -0
  109. data/upstream/bootstrap/3.0.3/src/dist/fonts/glyphicons-halflings-regular.svg +229 -0
  110. data/upstream/bootstrap/3.0.3/src/dist/fonts/glyphicons-halflings-regular.ttf +0 -0
  111. data/upstream/bootstrap/3.0.3/src/dist/fonts/glyphicons-halflings-regular.woff +0 -0
  112. data/upstream/bootstrap/3.0.3/src/dist/js/bootstrap.js +2006 -0
  113. data/upstream/bootstrap/3.0.3/src/dist/js/bootstrap.min.js +7 -0
  114. data/upstream/bootstrap/3.0.3/src/docs-assets/css/docs.css +1196 -0
  115. data/upstream/bootstrap/3.0.3/src/docs-assets/css/pygments-manni.css +66 -0
  116. data/upstream/bootstrap/3.0.3/src/docs-assets/ico/apple-touch-icon-144-precomposed.png +0 -0
  117. data/upstream/bootstrap/3.0.3/src/docs-assets/ico/favicon.png +0 -0
  118. data/upstream/bootstrap/3.0.3/src/docs-assets/js/application.js +103 -0
  119. data/upstream/bootstrap/3.0.3/src/docs-assets/js/customizer.js +332 -0
  120. data/upstream/bootstrap/3.0.3/src/docs-assets/js/filesaver.js +399 -0
  121. data/upstream/bootstrap/3.0.3/src/docs-assets/js/holder.js +500 -0
  122. data/upstream/bootstrap/3.0.3/src/docs-assets/js/ie8-responsive-file-warning.js +12 -0
  123. data/upstream/bootstrap/3.0.3/src/docs-assets/js/jszip.js +1474 -0
  124. data/upstream/bootstrap/3.0.3/src/docs-assets/js/less.js +9 -0
  125. data/upstream/bootstrap/3.0.3/src/docs-assets/js/raw-files.js +3 -0
  126. data/upstream/bootstrap/3.0.3/src/docs-assets/js/uglify.js +14 -0
  127. data/upstream/bootstrap/3.0.3/src/examples/carousel/carousel.css +148 -0
  128. data/upstream/bootstrap/3.0.3/src/examples/carousel/index.html +206 -0
  129. data/upstream/bootstrap/3.0.3/src/examples/grid/grid.css +28 -0
  130. data/upstream/bootstrap/3.0.3/src/examples/grid/index.html +148 -0
  131. data/upstream/bootstrap/3.0.3/src/examples/jumbotron-narrow/index.html +82 -0
  132. data/upstream/bootstrap/3.0.3/src/examples/jumbotron-narrow/jumbotron-narrow.css +79 -0
  133. data/upstream/bootstrap/3.0.3/src/examples/jumbotron/index.html +99 -0
  134. data/upstream/bootstrap/3.0.3/src/examples/jumbotron/jumbotron.css +5 -0
  135. data/upstream/bootstrap/3.0.3/src/examples/justified-nav/index.html +84 -0
  136. data/upstream/bootstrap/3.0.3/src/examples/justified-nav/justified-nav.css +88 -0
  137. data/upstream/bootstrap/3.0.3/src/examples/navbar-fixed-top/index.html +91 -0
  138. data/upstream/bootstrap/3.0.3/src/examples/navbar-fixed-top/navbar-fixed-top.css +4 -0
  139. data/upstream/bootstrap/3.0.3/src/examples/navbar-static-top/index.html +92 -0
  140. data/upstream/bootstrap/3.0.3/src/examples/navbar-static-top/navbar-static-top.css +7 -0
  141. data/upstream/bootstrap/3.0.3/src/examples/navbar/index.html +88 -0
  142. data/upstream/bootstrap/3.0.3/src/examples/navbar/navbar.css +8 -0
  143. data/upstream/bootstrap/3.0.3/src/examples/non-responsive/index.html +101 -0
  144. data/upstream/bootstrap/3.0.3/src/examples/non-responsive/non-responsive.css +120 -0
  145. data/upstream/bootstrap/3.0.3/src/examples/offcanvas/index.html +130 -0
  146. data/upstream/bootstrap/3.0.3/src/examples/offcanvas/offcanvas.css +51 -0
  147. data/upstream/bootstrap/3.0.3/src/examples/offcanvas/offcanvas.js +5 -0
  148. data/upstream/bootstrap/3.0.3/src/examples/screenshots/carousel.jpg +0 -0
  149. data/upstream/bootstrap/3.0.3/src/examples/screenshots/grid.jpg +0 -0
  150. data/upstream/bootstrap/3.0.3/src/examples/screenshots/jumbotron-narrow.jpg +0 -0
  151. data/upstream/bootstrap/3.0.3/src/examples/screenshots/jumbotron.jpg +0 -0
  152. data/upstream/bootstrap/3.0.3/src/examples/screenshots/justified-nav.jpg +0 -0
  153. data/upstream/bootstrap/3.0.3/src/examples/screenshots/navbar-fixed.jpg +0 -0
  154. data/upstream/bootstrap/3.0.3/src/examples/screenshots/navbar-static.jpg +0 -0
  155. data/upstream/bootstrap/3.0.3/src/examples/screenshots/navbar.jpg +0 -0
  156. data/upstream/bootstrap/3.0.3/src/examples/screenshots/non-responsive.jpg +0 -0
  157. data/upstream/bootstrap/3.0.3/src/examples/screenshots/offcanvas.jpg +0 -0
  158. data/upstream/bootstrap/3.0.3/src/examples/screenshots/sign-in.jpg +0 -0
  159. data/upstream/bootstrap/3.0.3/src/examples/screenshots/starter-template.jpg +0 -0
  160. data/upstream/bootstrap/3.0.3/src/examples/screenshots/sticky-footer-navbar.jpg +0 -0
  161. data/upstream/bootstrap/3.0.3/src/examples/screenshots/sticky-footer.jpg +0 -0
  162. data/upstream/bootstrap/3.0.3/src/examples/screenshots/theme.jpg +0 -0
  163. data/upstream/bootstrap/3.0.3/src/examples/signin/index.html +50 -0
  164. data/upstream/bootstrap/3.0.3/src/examples/signin/signin.css +40 -0
  165. data/upstream/bootstrap/3.0.3/src/examples/starter-template/index.html +68 -0
  166. data/upstream/bootstrap/3.0.3/src/examples/starter-template/starter-template.css +7 -0
  167. data/upstream/bootstrap/3.0.3/src/examples/sticky-footer-navbar/index.html +91 -0
  168. data/upstream/bootstrap/3.0.3/src/examples/sticky-footer-navbar/sticky-footer-navbar.css +45 -0
  169. data/upstream/bootstrap/3.0.3/src/examples/sticky-footer/index.html +55 -0
  170. data/upstream/bootstrap/3.0.3/src/examples/sticky-footer/sticky-footer.css +38 -0
  171. data/upstream/bootstrap/3.0.3/src/examples/theme/index.html +384 -0
  172. data/upstream/bootstrap/3.0.3/src/examples/theme/theme.css +14 -0
  173. data/upstream/bootstrap/3.0.3/src/fonts/glyphicons-halflings-regular.eot +0 -0
  174. data/upstream/bootstrap/3.0.3/src/fonts/glyphicons-halflings-regular.svg +229 -0
  175. data/upstream/bootstrap/3.0.3/src/fonts/glyphicons-halflings-regular.ttf +0 -0
  176. data/upstream/bootstrap/3.0.3/src/fonts/glyphicons-halflings-regular.woff +0 -0
  177. data/upstream/bootstrap/3.0.3/src/getting-started.html +1057 -0
  178. data/upstream/bootstrap/3.0.3/src/index.html +16 -0
  179. data/upstream/bootstrap/3.0.3/src/javascript.html +1995 -0
  180. data/upstream/bootstrap/3.0.3/src/js/.jshintrc +14 -0
  181. data/upstream/bootstrap/3.0.3/src/js/affix.js +126 -0
  182. data/upstream/bootstrap/3.0.3/src/js/alert.js +98 -0
  183. data/upstream/bootstrap/3.0.3/src/js/button.js +115 -0
  184. data/upstream/bootstrap/3.0.3/src/js/carousel.js +217 -0
  185. data/upstream/bootstrap/3.0.3/src/js/collapse.js +179 -0
  186. data/upstream/bootstrap/3.0.3/src/js/dropdown.js +154 -0
  187. data/upstream/bootstrap/3.0.3/src/js/modal.js +246 -0
  188. data/upstream/bootstrap/3.0.3/src/js/popover.js +117 -0
  189. data/upstream/bootstrap/3.0.3/src/js/scrollspy.js +158 -0
  190. data/upstream/bootstrap/3.0.3/src/js/tab.js +135 -0
  191. data/upstream/bootstrap/3.0.3/src/js/tests/index.html +52 -0
  192. data/upstream/bootstrap/3.0.3/src/js/tests/unit/affix.js +25 -0
  193. data/upstream/bootstrap/3.0.3/src/js/tests/unit/alert.js +62 -0
  194. data/upstream/bootstrap/3.0.3/src/js/tests/unit/button.js +122 -0
  195. data/upstream/bootstrap/3.0.3/src/js/tests/unit/carousel.js +87 -0
  196. data/upstream/bootstrap/3.0.3/src/js/tests/unit/collapse.js +164 -0
  197. data/upstream/bootstrap/3.0.3/src/js/tests/unit/dropdown.js +219 -0
  198. data/upstream/bootstrap/3.0.3/src/js/tests/unit/modal.js +196 -0
  199. data/upstream/bootstrap/3.0.3/src/js/tests/unit/phantom.js +69 -0
  200. data/upstream/bootstrap/3.0.3/src/js/tests/unit/popover.js +133 -0
  201. data/upstream/bootstrap/3.0.3/src/js/tests/unit/scrollspy.js +37 -0
  202. data/upstream/bootstrap/3.0.3/src/js/tests/unit/tab.js +86 -0
  203. data/upstream/bootstrap/3.0.3/src/js/tests/unit/tooltip.js +437 -0
  204. data/upstream/bootstrap/3.0.3/src/js/tests/unit/transition.js +13 -0
  205. data/upstream/bootstrap/3.0.3/src/js/tests/vendor/jquery.js +6 -0
  206. data/upstream/bootstrap/3.0.3/src/js/tests/vendor/qunit.css +232 -0
  207. data/upstream/bootstrap/3.0.3/src/js/tests/vendor/qunit.js +1510 -0
  208. data/upstream/bootstrap/3.0.3/src/js/tooltip.js +386 -0
  209. data/upstream/bootstrap/3.0.3/src/js/transition.js +56 -0
  210. data/upstream/bootstrap/3.0.3/src/less/alerts.less +67 -0
  211. data/upstream/bootstrap/3.0.3/src/less/badges.less +51 -0
  212. data/upstream/bootstrap/3.0.3/src/less/bootstrap.less +49 -0
  213. data/upstream/bootstrap/3.0.3/src/less/breadcrumbs.less +23 -0
  214. data/upstream/bootstrap/3.0.3/src/less/button-groups.less +227 -0
  215. data/upstream/bootstrap/3.0.3/src/less/buttons.less +155 -0
  216. data/upstream/bootstrap/3.0.3/src/less/carousel.less +232 -0
  217. data/upstream/bootstrap/3.0.3/src/less/close.less +33 -0
  218. data/upstream/bootstrap/3.0.3/src/less/code.less +53 -0
  219. data/upstream/bootstrap/3.0.3/src/less/component-animations.less +29 -0
  220. data/upstream/bootstrap/3.0.3/src/less/dropdowns.less +187 -0
  221. data/upstream/bootstrap/3.0.3/src/less/forms.less +375 -0
  222. data/upstream/bootstrap/3.0.3/src/less/glyphicons.less +237 -0
  223. data/upstream/bootstrap/3.0.3/src/less/grid.less +79 -0
  224. data/upstream/bootstrap/3.0.3/src/less/input-groups.less +136 -0
  225. data/upstream/bootstrap/3.0.3/src/less/jumbotron.less +46 -0
  226. data/upstream/bootstrap/3.0.3/src/less/labels.less +64 -0
  227. data/upstream/bootstrap/3.0.3/src/less/list-group.less +88 -0
  228. data/upstream/bootstrap/3.0.3/src/less/media.less +56 -0
  229. data/upstream/bootstrap/3.0.3/src/less/mixins.less +845 -0
  230. data/upstream/bootstrap/3.0.3/src/less/modals.less +129 -0
  231. data/upstream/bootstrap/3.0.3/src/less/navbar.less +612 -0
  232. data/upstream/bootstrap/3.0.3/src/less/navs.less +242 -0
  233. data/upstream/bootstrap/3.0.3/src/less/normalize.less +406 -0
  234. data/upstream/bootstrap/3.0.3/src/less/pager.less +55 -0
  235. data/upstream/bootstrap/3.0.3/src/less/pagination.less +85 -0
  236. data/upstream/bootstrap/3.0.3/src/less/panels.less +182 -0
  237. data/upstream/bootstrap/3.0.3/src/less/popovers.less +133 -0
  238. data/upstream/bootstrap/3.0.3/src/less/print.less +105 -0
  239. data/upstream/bootstrap/3.0.3/src/less/progress-bars.less +80 -0
  240. data/upstream/bootstrap/3.0.3/src/less/responsive-utilities.less +209 -0
  241. data/upstream/bootstrap/3.0.3/src/less/scaffolding.less +119 -0
  242. data/upstream/bootstrap/3.0.3/src/less/tables.less +231 -0
  243. data/upstream/bootstrap/3.0.3/src/less/theme.less +247 -0
  244. data/upstream/bootstrap/3.0.3/src/less/thumbnails.less +36 -0
  245. data/upstream/bootstrap/3.0.3/src/less/tooltip.less +95 -0
  246. data/upstream/bootstrap/3.0.3/src/less/type.less +281 -0
  247. data/upstream/bootstrap/3.0.3/src/less/utilities.less +56 -0
  248. data/upstream/bootstrap/3.0.3/src/less/variables.less +642 -0
  249. data/upstream/bootstrap/3.0.3/src/less/wells.less +29 -0
  250. data/upstream/bootstrap/3.0.3/src/package.json +51 -0
  251. data/upstream/bootstrap/3.0.3/stylesheets/bootstrap-theme.css +397 -0
  252. data/upstream/bootstrap/3.0.3/stylesheets/bootstrap-theme.min.css +7 -0
  253. data/upstream/bootstrap/3.0.3/stylesheets/bootstrap.css +7118 -0
  254. data/upstream/bootstrap/3.0.3/stylesheets/bootstrap.min.css +7 -0
  255. data/upstream/font-awesome-4.0.3.zip +0 -0
  256. data/upstream/font-awesome/4.0.3/fonts/FontAwesome.otf +0 -0
  257. data/upstream/font-awesome/4.0.3/fonts/fontawesome-webfont.eot +0 -0
  258. data/upstream/font-awesome/4.0.3/fonts/fontawesome-webfont.svg +414 -0
  259. data/upstream/font-awesome/4.0.3/fonts/fontawesome-webfont.ttf +0 -0
  260. data/upstream/font-awesome/4.0.3/fonts/fontawesome-webfont.woff +0 -0
  261. data/upstream/font-awesome/4.0.3/stylesheets/font-awesome.css +1338 -0
  262. data/upstream/font-awesome/4.0.3/stylesheets/font-awesome.min.css +4 -0
  263. data/upstream/font-awesome/4.0.3/stylesheets/less/bordered-pulled.less +16 -0
  264. data/upstream/font-awesome/4.0.3/stylesheets/less/core.less +12 -0
  265. data/upstream/font-awesome/4.0.3/stylesheets/less/fixed-width.less +6 -0
  266. data/upstream/font-awesome/4.0.3/stylesheets/less/font-awesome.less +17 -0
  267. data/upstream/font-awesome/4.0.3/stylesheets/less/icons.less +412 -0
  268. data/upstream/font-awesome/4.0.3/stylesheets/less/larger.less +13 -0
  269. data/upstream/font-awesome/4.0.3/stylesheets/less/list.less +19 -0
  270. data/upstream/font-awesome/4.0.3/stylesheets/less/mixins.less +20 -0
  271. data/upstream/font-awesome/4.0.3/stylesheets/less/path.less +14 -0
  272. data/upstream/font-awesome/4.0.3/stylesheets/less/rotated-flipped.less +9 -0
  273. data/upstream/font-awesome/4.0.3/stylesheets/less/spinning.less +30 -0
  274. data/upstream/font-awesome/4.0.3/stylesheets/less/stacked.less +20 -0
  275. data/upstream/font-awesome/4.0.3/stylesheets/less/variables.less +381 -0
  276. data/upstream/font-awesome/4.0.3/stylesheets/scss/_bordered-pulled.scss +16 -0
  277. data/upstream/font-awesome/4.0.3/stylesheets/scss/_core.scss +12 -0
  278. data/upstream/font-awesome/4.0.3/stylesheets/scss/_fixed-width.scss +6 -0
  279. data/upstream/font-awesome/4.0.3/stylesheets/scss/_icons.scss +412 -0
  280. data/upstream/font-awesome/4.0.3/stylesheets/scss/_larger.scss +13 -0
  281. data/upstream/font-awesome/4.0.3/stylesheets/scss/_list.scss +19 -0
  282. data/upstream/font-awesome/4.0.3/stylesheets/scss/_mixins.scss +20 -0
  283. data/upstream/font-awesome/4.0.3/stylesheets/scss/_path.scss +14 -0
  284. data/upstream/font-awesome/4.0.3/stylesheets/scss/_rotated-flipped.scss +9 -0
  285. data/upstream/font-awesome/4.0.3/stylesheets/scss/_spinning.scss +30 -0
  286. data/upstream/font-awesome/4.0.3/stylesheets/scss/_stacked.scss +20 -0
  287. data/upstream/font-awesome/4.0.3/stylesheets/scss/_variables.scss +381 -0
  288. data/upstream/font-awesome/4.0.3/stylesheets/scss/font-awesome.scss +17 -0
  289. metadata +505 -0
@@ -0,0 +1,46 @@
1
+ module BootstrapIt
2
+ #
3
+ module ViewHelpers
4
+ #
5
+ # Text
6
+ #
7
+ # @author [alexiss]
8
+ #
9
+ class Text < WrapIt::Base
10
+ include WrapIt::TextContainer
11
+ after_initialize do
12
+ @tag ||= @helper_name == 'text' ? 'p' : @helper_name
13
+ end
14
+ end
15
+
16
+ #
17
+ # Label
18
+ #
19
+ # @author [alexiss]
20
+ #
21
+ class Label < Text
22
+ default_tag 'span'
23
+ html_class 'label'
24
+ html_class_prefix 'label-'
25
+ enum :appearence, %i[default primary success info warning danger],
26
+ default: :default, html_class: true
27
+ end
28
+
29
+ #
30
+ # Badge
31
+ #
32
+ # @author [alexiss]
33
+ #
34
+ # TODO: right-alignment
35
+ class Badge < Text
36
+ default_tag 'span'
37
+ html_class 'badge'
38
+ end
39
+
40
+ WrapIt.register :text, 'BootstrapIt::ViewHelpers::Text'
41
+ WrapIt.register :p, 'BootstrapIt::ViewHelpers::Text'
42
+ WrapIt.register :span, 'BootstrapIt::ViewHelpers::Text'
43
+ WrapIt.register :label, 'BootstrapIt::ViewHelpers::Label'
44
+ WrapIt.register :badge, 'BootstrapIt::ViewHelpers::Badge'
45
+ end
46
+ end
@@ -0,0 +1,51 @@
1
+ require 'spec_helper'
2
+
3
+ describe 'assets pipeline' do
4
+ it 'includes application.js itself' do
5
+ expect('application.js').to compile_with 'var application_js'
6
+ end
7
+
8
+ it 'includes user.js' do
9
+ expect('application.js').to compile_with 'var user_js'
10
+ end
11
+
12
+ it 'includes bootstrap.js' do
13
+ expect('application.js').to compile_with 'Bootstrap'
14
+ end
15
+
16
+ it 'includes application.css itself' do
17
+ expect('application.css').to compile_with '#application_css'
18
+ end
19
+
20
+ it 'includes user.css' do
21
+ expect('application.css').to compile_with '#user_css'
22
+ end
23
+
24
+ pending 'one commented example red after migrating to new project name'
25
+ # it 'includes bootstrap.css' do
26
+ # expect('application.css').to compile_with 'Bootstrap'
27
+ # expect('application.css').to compile_with 'Font Awesome'
28
+ # end
29
+
30
+ it 'includes fonts' do
31
+ expect('fontawesome-webfont.eot').to be_in_precompile_list
32
+ end
33
+
34
+ it 'doesn\'t includes user fonts' do
35
+ expect('userfont.eot').to be_in_precompile_list
36
+ end
37
+
38
+ context 'font_awesome disabled' do
39
+ before { BootstrapIt.config.font_awesome = false }
40
+ after { BootstrapIt.config.font_awesome = true }
41
+
42
+ it 'doesn\'t include font-awesome.css' do
43
+ expect('application.css').to compile_with 'Bootstrap'
44
+ expect('application.css').to_not compile_with 'Font Awesome'
45
+ end
46
+
47
+ it 'includes fonts' do
48
+ expect('glyphicons-halflings-regular.eot').to be_in_precompile_list
49
+ end
50
+ end
51
+ end
@@ -0,0 +1,7 @@
1
+ //
2
+ //= require user
3
+ //= require bootstrap
4
+ //
5
+
6
+
7
+ var application_js = '';
@@ -0,0 +1 @@
1
+ var user_js = '';
@@ -0,0 +1,6 @@
1
+ /**
2
+ *= require user
3
+ *= require bootstrap
4
+ */
5
+
6
+ #application_css {}
@@ -0,0 +1 @@
1
+ #user_css {}
@@ -0,0 +1,3 @@
1
+ test:
2
+ adapter: sqlite3
3
+ database: db/combustion_test.sqlite
@@ -0,0 +1,3 @@
1
+ Rails.application.routes.draw do
2
+ #
3
+ end
@@ -0,0 +1,3 @@
1
+ ActiveRecord::Schema.define do
2
+ #
3
+ end
@@ -0,0 +1 @@
1
+ *.log
File without changes
@@ -0,0 +1,10 @@
1
+ require 'spec_helper'
2
+
3
+ describe BootstrapIt::Config do
4
+ it 'has #font_awesome with true by default' do
5
+ expect(described_class.font_awesome).to be_true
6
+ described_class.font_awesome = false
7
+ expect(described_class.font_awesome).to be_false
8
+ described_class.font_awesome = true
9
+ end
10
+ end
@@ -0,0 +1,12 @@
1
+ require 'spec_helper'
2
+
3
+ describe BootstrapIt::ViewHelpers do
4
+ # after { described_class.instance_variable_set :@helpers, nil }
5
+
6
+
7
+ # it 'injects helper methods' do
8
+ # described_class.register_helper :helper, 'Class'
9
+ # described_class.register_helpers
10
+ # expect(described_class.singleton_methods).to include :helper
11
+ # end
12
+ end
@@ -0,0 +1,37 @@
1
+ require 'rubygems'
2
+ require 'bundler'
3
+ #Bundler.require :default, :development
4
+ #Bundler.require :development
5
+ #puts "--- #{Object.constants}"
6
+
7
+ require 'combustion'
8
+ require 'capybara/rspec'
9
+
10
+ Dir[File.join File.dirname(__FILE__), 'support', '**', '*.rb'].each {|file| require file}
11
+
12
+ Combustion.initialize! :action_controller, :action_view, :sprockets do |app|
13
+ app.config.assets.cache_store = :null_store
14
+ # app.config.sass.cache = false
15
+ end
16
+
17
+ Capybara.app = Combustion::Application
18
+
19
+ require 'rspec/rails'
20
+ #require 'capybara/rails'
21
+
22
+ # [deprecated] I18n.enforce_available_locales will default to true in the future.
23
+ # If you really want to skip validation of your locale you can set
24
+ # I18n.enforce_available_locales = false to avoid this message.
25
+ # TODO: remove following line and get rspec run without warnings
26
+ I18n.enforce_available_locales = false
27
+
28
+ RSpec.configure do |config|
29
+ config.treat_symbols_as_metadata_keys_with_true_values = true
30
+ config.run_all_when_everything_filtered = true
31
+ #config.use_transactional_fixtures = true
32
+ config.filter_run :focus
33
+ config.order = 'random'
34
+
35
+ # config.before do
36
+ # end
37
+ end
@@ -0,0 +1,84 @@
1
+ #
2
+ module AssetsExampleGroup
3
+ extend ActiveSupport::Concern
4
+
5
+ def compiled(asset)
6
+ Dir.glob(Rails.root.join('tmp', sprintf("%s-*.%s", *asset.split('.'))))
7
+ end
8
+
9
+ included do
10
+ metadata[:type] = :assets
11
+
12
+ let :env do
13
+ env = Sprockets::Environment.new Rails.root
14
+ Rails.application.assets.paths.each { |path| env.append_path path }
15
+ BootstrapIt::Assets.register env
16
+ env
17
+ end
18
+
19
+ let :assets do
20
+ @original_verbosity = $VERBOSE
21
+ $VERBOSE = nil
22
+ FileUtils.rm_r Dir.glob(Rails.root.join 'tmp', '*')
23
+ Sprockets::Manifest.new(env, Rails.root.join('tmp'))
24
+ end
25
+
26
+ after do
27
+ $VERBOSE = @original_verbosity
28
+ FileUtils.rm_r Dir.glob(Rails.root.join 'tmp', '*')
29
+ end
30
+
31
+ RSpec::Matchers.define :compile_with do |expected|
32
+ match_for_should do |asset|
33
+ assets.compile asset
34
+ compiled(asset).any? { |file| File.read(file).include? expected }
35
+ end
36
+
37
+ match_for_should_not do |asset|
38
+ assets.compile asset
39
+ compiled(asset).none? { |file| File.read(file).include? expected }
40
+ end
41
+ end
42
+
43
+ RSpec::Matchers.define :be_compiled do
44
+ match do |asset|
45
+ assets.compile asset
46
+ compiled(asset).size > 0
47
+ end
48
+ end
49
+
50
+ RSpec::Matchers.define :be_in_precompile_list do
51
+ match_for_should do |asset|
52
+ Rails.application.config.assets.precompile.any? do |pre|
53
+ if pre.is_a? Proc
54
+ Rails.application.config.assets.paths.any? do |path|
55
+ pre.call(asset, path)
56
+ end
57
+ elsif pre.is_a? Regexp
58
+ pre.match asset
59
+ end
60
+ end
61
+ end
62
+
63
+ match_for_should_not do |asset|
64
+ Rails.application.config.assets.precompile.none? do |pre|
65
+ if pre.is_a? Proc
66
+ Rails.application.config.assets.paths.none? do |path|
67
+ pre.call(asset, path)
68
+ end
69
+ elsif pre.is_a? Regexp
70
+ pre.match asset
71
+ end
72
+ end
73
+ end
74
+ end
75
+ end
76
+
77
+ RSpec.configure do |config|
78
+ config.include(
79
+ self,
80
+ type: :assets,
81
+ example_group: {file_path: %r(spec/assets)}
82
+ )
83
+ end
84
+ end
@@ -0,0 +1,124 @@
1
+ #
2
+ module ViewHelpersExampleGroup
3
+ extend ActiveSupport::Concern
4
+
5
+ def helper(*args, &block)
6
+ @helper ||= described_class.new view, *args, &block
7
+ end
8
+
9
+ def wrapper(*args, &block)
10
+ @wrapper ||= wrapper_class.new view, *args, &block
11
+ end
12
+
13
+ def successor(*args, &block)
14
+ @successor ||= successor_class.new view, *args, &block
15
+ end
16
+
17
+ included do
18
+ metadata[:type] = :view_helpers
19
+
20
+ after { @helper, @wrapper, @successor = nil, nil, nil }
21
+ let(:view) { ActionView::Base.new }
22
+ let(:successor_class) { Class.new(described_class) }
23
+ let(:wrapper_class) do
24
+ mod = described_class
25
+ Class.new WrapIt::Base do
26
+ include mod
27
+ end
28
+ end
29
+
30
+ RSpec::Matchers.define :have_option do |*options|
31
+ match_for_should do |obj|
32
+ actual = obj.instance_variable_get :@options
33
+ options.flatten!
34
+ actual.select { |o| options.include? o }.size == options.size
35
+ end
36
+
37
+ match_for_should_not do |obj|
38
+ actual = obj.instance_variable_get :@options
39
+ options.flatten!
40
+ actual.select { |o| options.include? o }.size == 0
41
+ end
42
+ end
43
+
44
+ RSpec::Matchers.define :render_with do |selector, options = {}|
45
+ match_for_should do |actual|
46
+ Capybara::Node::Simple.new(actual.render)
47
+ .has_selector?(selector, options)
48
+ end
49
+
50
+ match_for_should_not do |actual|
51
+ Capybara::Node::Simple.new(actual.render)
52
+ .has_no_selector?(selector, options)
53
+ end
54
+
55
+ failure_message_for_should do |actual|
56
+ "expected that #{actual.render} would have selector #{selector}"
57
+ end
58
+
59
+ failure_message_for_should_not do |actual|
60
+ "expected that #{actual.render} would not have selector #{selector}"
61
+ end
62
+ end
63
+
64
+ RSpec::Matchers.define :have_flag do |flag|
65
+ chain :with do |options|
66
+ @options = options
67
+ end
68
+
69
+ match do |obj|
70
+ @options ||= {}
71
+ actual = obj.send(:switches)
72
+ actual.include?(flag) && @options.all? do |k, v|
73
+ actual[flag].key?(k) && actual[flag][k] == v
74
+ end
75
+ end
76
+
77
+ failure_message_for_should do |obj|
78
+ flags = obj.send(:switches)
79
+ msg = "expected that #{obj.class.name}"
80
+ msg += " with flags #{flags} would have flag #{flag}"
81
+ if instance_variable_defined?(:@options)
82
+ msg += " with options #{@options}"
83
+ end
84
+ msg
85
+ end
86
+ end
87
+
88
+ RSpec::Matchers.define :have_enum do |enum|
89
+ chain(:with) { |options| @options = options }
90
+
91
+ match do |obj|
92
+ @options ||= {}
93
+ actual = obj.send(:enums)
94
+ actual.include?(enum) && @options.all? do |k, v|
95
+ actual[enum].key?(k) && actual[enum][k] == v
96
+ end
97
+ end
98
+
99
+ failure_message_for_should do |obj|
100
+ class_enums = obj.send(:enums)
101
+ "expected that #{obj.class.name}" \
102
+ "with enums #{class_enums} would have enum #{enum}"
103
+ end
104
+ end
105
+
106
+ RSpec::Matchers.define :have_safe_method do |method|
107
+ match do |obj|
108
+ if method.is_a? Array
109
+ method.all? { |m| obj.send(m).html_safe? }
110
+ else
111
+ obj.send(method).html_safe?
112
+ end
113
+ end
114
+ end
115
+ end
116
+
117
+ RSpec.configure do |config|
118
+ config.include(
119
+ self,
120
+ type: :view_helpers,
121
+ example_group: {file_path: %r(spec/view_helpers)}
122
+ )
123
+ end
124
+ end
@@ -0,0 +1,12 @@
1
+ require 'spec_helper'
2
+
3
+ describe BootstrapIt::ViewHelpers::Breadcrumb do
4
+ it { expect(helper).to render_with 'ol.breadcrumb' }
5
+ it { expect(helper).to be_kind_of WrapIt::Container }
6
+ it { expect(helper { |h| h.item :active }).to render_with 'ol > li.active' }
7
+ it 'reders links' do
8
+ expect(
9
+ helper { |h| h.link_item 'test', 'http://url' }
10
+ ).to render_with 'ol > li > a[@href="http://url"][text()="test"]'
11
+ end
12
+ end
@@ -0,0 +1,40 @@
1
+ require 'spec_helper'
2
+
3
+ describe BootstrapIt::ViewHelpers::ButtonGroup do
4
+ it { expect(helper).to render_with 'div.btn-group' }
5
+
6
+ # behaviour
7
+ it { expect(helper).to be_kind_of BootstrapIt::ViewHelpers::Sizable }
8
+ it { expect(helper).to be_kind_of BootstrapIt::ViewHelpers::Justifable }
9
+
10
+ # vertical
11
+ it 'has vertical switch' do
12
+ expect(
13
+ helper
14
+ ).to have_flag(:vertical).with(html_class: ['btn-group-vertical'])
15
+ end
16
+
17
+ # buttons
18
+ it 'renders buttons' do
19
+ expect(helper { |h| h.button 'test' }).to render_with(
20
+ 'div.btn-group > button.btn.btn-default[text()="test"]'
21
+ )
22
+ end
23
+
24
+ it 'renders radios' do
25
+ expect(helper { |h| h.radio 'test' }).to render_with(
26
+ 'div.btn-group[@data-toggle="buttons"]' \
27
+ ' > label.btn.btn-default[text()="test"] > input[@type="radio"]'
28
+ )
29
+ end
30
+
31
+ it 'renders checkboxes' do
32
+ expect(helper { |h| h.checkbox 'test' }).to render_with(
33
+ 'div.btn-group[@data-toggle="buttons"]' \
34
+ ' > label.btn.btn-default[text()="test"] > input[@type="checkbox"]'
35
+ )
36
+ end
37
+
38
+ # class constants
39
+ it { expect(described_class.html_class_prefix).to eq 'btn-group-' }
40
+ end