twigg-app 0.0.1 → 0.0.2

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 (208) hide show
  1. checksums.yaml +4 -4
  2. data/assets/javascripts/_bootstrap.js +7 -0
  3. data/assets/javascripts/_jquery.js +19 -0
  4. data/assets/javascripts/_tables.js +3 -0
  5. data/assets/javascripts/_views.js +10 -0
  6. data/assets/javascripts/application.js +9 -0
  7. data/{public/application.js → assets/javascripts/views/_commit_set_bar_chart.js} +32 -34
  8. data/assets/javascripts/views/_russia.js +61 -0
  9. data/assets/javascripts/views/_tags.js +56 -0
  10. data/assets/javascripts/views/_tags_word_cloud.js +51 -0
  11. data/assets/stylesheets/_bootstrap_overrides.scss +15 -0
  12. data/assets/stylesheets/_footer.scss +28 -0
  13. data/assets/stylesheets/_global.scss +14 -0
  14. data/assets/stylesheets/_tables.scss +20 -0
  15. data/assets/stylesheets/application.scss +10 -0
  16. data/assets/stylesheets/d3/_bar_chart.scss +25 -0
  17. data/assets/stylesheets/d3/_bubble_chart.scss +22 -0
  18. data/lib/twigg-app/app/routes.rb +4 -0
  19. data/lib/twigg-app/app/server.rb +78 -21
  20. data/lib/twigg-app/app/version.rb +1 -1
  21. data/public/vendor/bootstrap/Gruntfile.js +32 -10
  22. data/public/vendor/bootstrap/README.md +2 -0
  23. data/public/vendor/bootstrap/_config.yml +5 -10
  24. data/public/vendor/bootstrap/_includes/footer.html +2 -1
  25. data/public/vendor/bootstrap/_includes/nav-components.html +33 -31
  26. data/public/vendor/bootstrap/_includes/nav-css.html +32 -22
  27. data/public/vendor/bootstrap/_includes/nav-getting-started.html +17 -1
  28. data/public/vendor/bootstrap/_includes/nav-javascript.html +1 -1
  29. data/public/vendor/bootstrap/_includes/nav-main.html +1 -1
  30. data/public/vendor/bootstrap/_includes/social-buttons.html +1 -1
  31. data/public/vendor/bootstrap/_layouts/default.html +18 -14
  32. data/public/vendor/bootstrap/_layouts/home.html +9 -6
  33. data/public/vendor/bootstrap/assets/css/docs.css +584 -396
  34. data/public/vendor/bootstrap/assets/ico/apple-touch-icon-114-precomposed.png +0 -0
  35. data/public/vendor/bootstrap/assets/ico/apple-touch-icon-144-precomposed.png +0 -0
  36. data/public/vendor/bootstrap/assets/ico/apple-touch-icon-57-precomposed.png +0 -0
  37. data/public/vendor/bootstrap/assets/ico/apple-touch-icon-72-precomposed.png +0 -0
  38. data/public/vendor/bootstrap/assets/ico/favicon.png +0 -0
  39. data/public/vendor/bootstrap/assets/js/application.js +2 -1
  40. data/public/vendor/bootstrap/assets/js/customizer.js +160 -45
  41. data/public/vendor/bootstrap/assets/js/filesaver.js +169 -0
  42. data/public/vendor/bootstrap/assets/js/jquery.js +6 -5
  43. data/public/vendor/bootstrap/assets/js/raw-files.js +3 -0
  44. data/public/vendor/bootstrap/bower.json +1 -1
  45. data/public/vendor/bootstrap/components.html +787 -364
  46. data/public/vendor/bootstrap/composer.json +1 -1
  47. data/public/vendor/bootstrap/css.html +413 -248
  48. data/public/vendor/bootstrap/customize.html +413 -447
  49. data/public/vendor/bootstrap/dist/css/bootstrap-theme.css +384 -0
  50. data/public/vendor/bootstrap/dist/css/bootstrap-theme.min.css +1 -0
  51. data/public/vendor/bootstrap/dist/css/bootstrap.css +3033 -1807
  52. data/public/vendor/bootstrap/dist/css/bootstrap.min.css +1 -1
  53. data/public/vendor/bootstrap/dist/fonts/glyphicons-halflings-regular.eot +0 -0
  54. data/public/vendor/bootstrap/dist/fonts/glyphicons-halflings-regular.svg +228 -0
  55. data/public/vendor/bootstrap/dist/fonts/glyphicons-halflings-regular.ttf +0 -0
  56. data/public/vendor/bootstrap/dist/fonts/glyphicons-halflings-regular.woff +0 -0
  57. data/public/vendor/bootstrap/dist/js/bootstrap.js +18 -12
  58. data/public/vendor/bootstrap/dist/js/bootstrap.min.js +1 -1
  59. data/public/vendor/bootstrap/examples/carousel/carousel.css +128 -0
  60. data/public/vendor/bootstrap/examples/carousel/index.html +201 -0
  61. data/public/vendor/bootstrap/examples/grid/grid.css +28 -0
  62. data/public/vendor/bootstrap/examples/grid/index.html +119 -0
  63. data/public/vendor/bootstrap/examples/jumbotron/index.html +111 -0
  64. data/public/vendor/bootstrap/examples/jumbotron/jumbotron.css +5 -0
  65. data/public/vendor/bootstrap/examples/jumbotron-narrow/index.html +78 -0
  66. data/public/vendor/bootstrap/examples/jumbotron-narrow/jumbotron-narrow.css +79 -0
  67. data/public/vendor/bootstrap/examples/justified-nav/index.html +79 -0
  68. data/public/vendor/bootstrap/examples/justified-nav/justified-nav.css +88 -0
  69. data/public/vendor/bootstrap/examples/navbar/index.html +83 -0
  70. data/public/vendor/bootstrap/examples/navbar/navbar.css +7 -0
  71. data/public/vendor/bootstrap/examples/navbar-fixed-top/index.html +86 -0
  72. data/public/vendor/bootstrap/examples/navbar-fixed-top/navbar-fixed-top.css +4 -0
  73. data/public/vendor/bootstrap/examples/navbar-static-top/index.html +87 -0
  74. data/public/vendor/bootstrap/examples/navbar-static-top/navbar-static-top.css +7 -0
  75. data/public/vendor/bootstrap/examples/non-responsive/index.html +96 -0
  76. data/public/vendor/bootstrap/examples/non-responsive/non-responsive.css +117 -0
  77. data/public/vendor/bootstrap/examples/offcanvas/index.html +127 -0
  78. data/public/vendor/bootstrap/examples/offcanvas/offcanvas.css +48 -0
  79. data/public/vendor/bootstrap/examples/offcanvas/offcanvas.js +5 -0
  80. data/public/vendor/bootstrap/examples/screenshots/carousel.jpg +0 -0
  81. data/public/vendor/bootstrap/examples/screenshots/grid.jpg +0 -0
  82. data/public/vendor/bootstrap/examples/screenshots/jumbotron-narrow.jpg +0 -0
  83. data/public/vendor/bootstrap/examples/screenshots/jumbotron.jpg +0 -0
  84. data/public/vendor/bootstrap/examples/screenshots/justified-nav.jpg +0 -0
  85. data/public/vendor/bootstrap/examples/screenshots/navbar-fixed.jpg +0 -0
  86. data/public/vendor/bootstrap/examples/screenshots/navbar-static.jpg +0 -0
  87. data/public/vendor/bootstrap/examples/screenshots/navbar.jpg +0 -0
  88. data/public/vendor/bootstrap/examples/screenshots/non-responsive.jpg +0 -0
  89. data/public/vendor/bootstrap/examples/screenshots/offcanvas.jpg +0 -0
  90. data/public/vendor/bootstrap/examples/screenshots/sign-in.jpg +0 -0
  91. data/public/vendor/bootstrap/examples/screenshots/starter-template.jpg +0 -0
  92. data/public/vendor/bootstrap/examples/screenshots/sticky-footer-navbar.jpg +0 -0
  93. data/public/vendor/bootstrap/examples/screenshots/sticky-footer.jpg +0 -0
  94. data/public/vendor/bootstrap/examples/screenshots/theme.jpg +0 -0
  95. data/public/vendor/bootstrap/examples/signin/index.html +46 -0
  96. data/public/vendor/bootstrap/examples/signin/signin.css +40 -0
  97. data/public/vendor/bootstrap/examples/starter-template/index.html +63 -0
  98. data/public/vendor/bootstrap/examples/starter-template/starter-template.css +7 -0
  99. data/public/vendor/bootstrap/examples/sticky-footer/index.html +51 -0
  100. data/public/vendor/bootstrap/examples/sticky-footer/sticky-footer.css +39 -0
  101. data/public/vendor/bootstrap/examples/sticky-footer-navbar/index.html +86 -0
  102. data/public/vendor/bootstrap/examples/sticky-footer-navbar/sticky-footer-navbar.css +46 -0
  103. data/public/vendor/bootstrap/examples/theme/index.html +387 -0
  104. data/public/vendor/bootstrap/examples/theme/theme.css +14 -0
  105. data/public/vendor/bootstrap/fonts/glyphicons-halflings-regular.eot +0 -0
  106. data/public/vendor/bootstrap/fonts/glyphicons-halflings-regular.svg +228 -0
  107. data/public/vendor/bootstrap/fonts/glyphicons-halflings-regular.ttf +0 -0
  108. data/public/vendor/bootstrap/fonts/glyphicons-halflings-regular.woff +0 -0
  109. data/public/vendor/bootstrap/getting-started.html +513 -22
  110. data/public/vendor/bootstrap/index.html +3 -4
  111. data/public/vendor/bootstrap/javascript.html +123 -115
  112. data/public/vendor/bootstrap/js/dropdown.js +3 -3
  113. data/public/vendor/bootstrap/js/modal.js +5 -3
  114. data/public/vendor/bootstrap/js/tests/unit/modal.js +19 -0
  115. data/public/vendor/bootstrap/js/tests/vendor/jquery.js +6 -5
  116. data/public/vendor/bootstrap/js/tooltip.js +9 -5
  117. data/public/vendor/bootstrap/js/transition.js +1 -1
  118. data/public/vendor/bootstrap/less/alerts.less +7 -11
  119. data/public/vendor/bootstrap/less/bootstrap.less +17 -21
  120. data/public/vendor/bootstrap/less/button-groups.less +14 -10
  121. data/public/vendor/bootstrap/less/buttons.less +3 -2
  122. data/public/vendor/bootstrap/less/carousel.less +6 -1
  123. data/public/vendor/bootstrap/less/dropdowns.less +22 -5
  124. data/public/vendor/bootstrap/less/forms.less +36 -15
  125. data/public/vendor/bootstrap/less/glyphicons.less +232 -0
  126. data/public/vendor/bootstrap/less/grid.less +9 -3
  127. data/public/vendor/bootstrap/less/input-groups.less +1 -1
  128. data/public/vendor/bootstrap/less/jumbotron.less +16 -5
  129. data/public/vendor/bootstrap/less/labels.less +9 -5
  130. data/public/vendor/bootstrap/less/mixins.less +73 -43
  131. data/public/vendor/bootstrap/less/modals.less +8 -0
  132. data/public/vendor/bootstrap/less/navbar.less +251 -189
  133. data/public/vendor/bootstrap/less/navs.less +13 -12
  134. data/public/vendor/bootstrap/less/pager.less +1 -1
  135. data/public/vendor/bootstrap/less/pagination.less +20 -9
  136. data/public/vendor/bootstrap/less/panels.less +28 -8
  137. data/public/vendor/bootstrap/less/progress-bars.less +6 -10
  138. data/public/vendor/bootstrap/less/responsive-utilities.less +120 -49
  139. data/public/vendor/bootstrap/less/scaffolding.less +37 -18
  140. data/public/vendor/bootstrap/less/tables.less +84 -59
  141. data/public/vendor/bootstrap/less/theme.less +232 -0
  142. data/public/vendor/bootstrap/less/thumbnails.less +8 -19
  143. data/public/vendor/bootstrap/less/type.less +2 -2
  144. data/public/vendor/bootstrap/less/variables.less +63 -50
  145. data/public/vendor/bootstrap/package.json +2 -1
  146. data/public/vendor/components-backbone/LICENSE +22 -0
  147. data/public/vendor/components-backbone/README.md +10 -0
  148. data/public/vendor/components-backbone/backbone-min.js +4 -0
  149. data/public/vendor/components-backbone/backbone.js +1571 -0
  150. data/public/vendor/components-backbone/bower.json +17 -0
  151. data/public/vendor/components-backbone/component.json +21 -0
  152. data/public/vendor/components-backbone/composer.json +37 -0
  153. data/public/vendor/components-backbone/package.json +24 -0
  154. data/public/vendor/d3.layout.cloud.js +401 -0
  155. data/public/vendor/replacejs/CHANGELOG.md +4 -0
  156. data/public/vendor/replacejs/replace.js +21 -2
  157. data/public/vendor/underscore/CNAME +1 -0
  158. data/public/vendor/underscore/CONTRIBUTING.md +9 -0
  159. data/public/vendor/underscore/LICENSE +22 -0
  160. data/public/vendor/underscore/README.md +19 -0
  161. data/public/vendor/underscore/Rakefile +10 -0
  162. data/public/vendor/underscore/docs/docco.css +192 -0
  163. data/public/vendor/underscore/docs/favicon.ico +0 -0
  164. data/public/vendor/underscore/docs/images/background.png +0 -0
  165. data/public/vendor/underscore/docs/images/underscore.png +0 -0
  166. data/public/vendor/underscore/docs/underscore.html +823 -0
  167. data/public/vendor/underscore/favicon.ico +0 -0
  168. data/public/vendor/underscore/index.html +2467 -0
  169. data/public/vendor/underscore/index.js +1 -0
  170. data/public/vendor/underscore/package.json +16 -0
  171. data/public/vendor/underscore/test/arrays.js +200 -0
  172. data/public/vendor/underscore/test/chaining.js +59 -0
  173. data/public/vendor/underscore/test/collections.js +453 -0
  174. data/public/vendor/underscore/test/functions.js +265 -0
  175. data/public/vendor/underscore/test/index.html +44 -0
  176. data/public/vendor/underscore/test/objects.js +570 -0
  177. data/public/vendor/underscore/test/speed.js +75 -0
  178. data/public/vendor/underscore/test/utility.js +266 -0
  179. data/public/vendor/underscore/test/vendor/jquery.js +9404 -0
  180. data/public/vendor/underscore/test/vendor/jslitmus.js +670 -0
  181. data/public/vendor/underscore/test/vendor/qunit.css +235 -0
  182. data/public/vendor/underscore/test/vendor/qunit.js +1977 -0
  183. data/public/vendor/underscore/test/vendor/runner.js +98 -0
  184. data/public/vendor/underscore/underscore-min.js +1 -0
  185. data/public/vendor/underscore/underscore.js +1226 -0
  186. data/views/dashboard.haml +1 -1
  187. data/views/layout.haml +8 -4
  188. metadata +132 -25
  189. data/public/vendor/bootstrap/_layouts/customize.html +0 -52
  190. data/public/vendor/bootstrap/assets/js/jquery.bbq.min.js +0 -1287
  191. data/public/vendor/bootstrap-glyphicons/CHANGELOG.md +0 -3
  192. data/public/vendor/bootstrap-glyphicons/CNAME +0 -1
  193. data/public/vendor/bootstrap-glyphicons/CONTRIBUTING.md +0 -54
  194. data/public/vendor/bootstrap-glyphicons/LICENSE +0 -19
  195. data/public/vendor/bootstrap-glyphicons/README.md +0 -61
  196. data/public/vendor/bootstrap-glyphicons/_config.yml +0 -12
  197. data/public/vendor/bootstrap-glyphicons/composer.json +0 -9
  198. data/public/vendor/bootstrap-glyphicons/css/bootstrap-glyphicons.css +0 -2
  199. data/public/vendor/bootstrap-glyphicons/css/bootstrap.css +0 -9
  200. data/public/vendor/bootstrap-glyphicons/css/docs.css +0 -160
  201. data/public/vendor/bootstrap-glyphicons/fonts/glyphiconshalflings-regular.eot +0 -0
  202. data/public/vendor/bootstrap-glyphicons/fonts/glyphiconshalflings-regular.otf +0 -0
  203. data/public/vendor/bootstrap-glyphicons/fonts/glyphiconshalflings-regular.svg +0 -175
  204. data/public/vendor/bootstrap-glyphicons/fonts/glyphiconshalflings-regular.ttf +0 -0
  205. data/public/vendor/bootstrap-glyphicons/fonts/glyphiconshalflings-regular.woff +0 -0
  206. data/public/vendor/bootstrap-glyphicons/index.html +0 -255
  207. data/public/vendor/bootstrap-glyphicons/less/bootstrap-glyphicons.less +0 -201
  208. data/public/vendor/bootstrap-glyphicons/package.json +0 -18
@@ -8,7 +8,7 @@
8
8
  .container-fixed();
9
9
  }
10
10
 
11
- // Mobile-first defaults
11
+ // mobile first defaults
12
12
  .row {
13
13
  .make-row();
14
14
  }
@@ -223,6 +223,7 @@
223
223
  .col-md-12 { width: 100%; }
224
224
 
225
225
  // Push and pull columns for source order changes
226
+ .col-md-push-0 { left: auto; }
226
227
  .col-md-push-1 { left: percentage((1 / @grid-columns)); }
227
228
  .col-md-push-2 { left: percentage((2 / @grid-columns)); }
228
229
  .col-md-push-3 { left: percentage((3 / @grid-columns)); }
@@ -235,6 +236,7 @@
235
236
  .col-md-push-10 { left: percentage((10/ @grid-columns)); }
236
237
  .col-md-push-11 { left: percentage((11/ @grid-columns)); }
237
238
 
239
+ .col-md-pull-0 { right: auto; }
238
240
  .col-md-pull-1 { right: percentage((1 / @grid-columns)); }
239
241
  .col-md-pull-2 { right: percentage((2 / @grid-columns)); }
240
242
  .col-md-pull-3 { right: percentage((3 / @grid-columns)); }
@@ -248,6 +250,7 @@
248
250
  .col-md-pull-11 { right: percentage((11/ @grid-columns)); }
249
251
 
250
252
  // Offsets
253
+ .col-md-offset-0 { margin-left: 0; }
251
254
  .col-md-offset-1 { margin-left: percentage((1 / @grid-columns)); }
252
255
  .col-md-offset-2 { margin-left: percentage((2 / @grid-columns)); }
253
256
  .col-md-offset-3 { margin-left: percentage((3 / @grid-columns)); }
@@ -269,9 +272,9 @@
269
272
  // Note that `.col-lg-12` doesn't get floated on purpose—there's no need since
270
273
  // it's full-width.
271
274
 
272
- @media (min-width: @screen-large-desktop) {
275
+ @media (min-width: @screen-lg-desktop) {
273
276
  .container {
274
- max-width: @container-large-desktop;
277
+ max-width: @container-lg-desktop;
275
278
  }
276
279
 
277
280
  .col-lg-1,
@@ -301,6 +304,7 @@
301
304
  .col-lg-12 { width: 100%; }
302
305
 
303
306
  // Push and pull columns for source order changes
307
+ .col-lg-push-0 { left: auto; }
304
308
  .col-lg-push-1 { left: percentage((1 / @grid-columns)); }
305
309
  .col-lg-push-2 { left: percentage((2 / @grid-columns)); }
306
310
  .col-lg-push-3 { left: percentage((3 / @grid-columns)); }
@@ -313,6 +317,7 @@
313
317
  .col-lg-push-10 { left: percentage((10/ @grid-columns)); }
314
318
  .col-lg-push-11 { left: percentage((11/ @grid-columns)); }
315
319
 
320
+ .col-lg-pull-0 { right: auto; }
316
321
  .col-lg-pull-1 { right: percentage((1 / @grid-columns)); }
317
322
  .col-lg-pull-2 { right: percentage((2 / @grid-columns)); }
318
323
  .col-lg-pull-3 { right: percentage((3 / @grid-columns)); }
@@ -326,6 +331,7 @@
326
331
  .col-lg-pull-11 { right: percentage((11/ @grid-columns)); }
327
332
 
328
333
  // Offsets
334
+ .col-lg-offset-0 { margin-left: 0; }
329
335
  .col-lg-offset-1 { margin-left: percentage((1 / @grid-columns)); }
330
336
  .col-lg-offset-2 { margin-left: percentage((2 / @grid-columns)); }
331
337
  .col-lg-offset-3 { margin-left: percentage((3 / @grid-columns)); }
@@ -32,7 +32,7 @@
32
32
  .input-group-lg > .input-group-btn > .btn { .input-lg(); }
33
33
  .input-group-sm > .form-control,
34
34
  .input-group-sm > .input-group-addon,
35
- .input-group-lg > .input-group-btn > .btn { .input-sm(); }
35
+ .input-group-sm > .input-group-btn > .btn { .input-sm(); }
36
36
 
37
37
 
38
38
  // Display as table-cell
@@ -4,13 +4,14 @@
4
4
 
5
5
 
6
6
  .jumbotron {
7
- padding: 30px;
8
- margin-bottom: 30px;
7
+ padding: @jumbotron-padding;
8
+ margin-bottom: @jumbotron-padding;
9
9
  font-size: (@font-size-base * 1.5);
10
10
  font-weight: 200;
11
11
  line-height: (@line-height-base * 1.5);
12
- color: @jumbotron-lead-color;
12
+ color: @jumbotron-color;
13
13
  background-color: @jumbotron-bg;
14
+
14
15
  h1 {
15
16
  line-height: 1;
16
17
  color: @jumbotron-heading-color;
@@ -19,9 +20,19 @@
19
20
  line-height: 1.4;
20
21
  }
21
22
 
23
+ .container & {
24
+ border-radius: @border-radius-large; // Only round corners at higher resolutions if contained in a container
25
+ }
26
+
22
27
  @media screen and (min-width: @screen-tablet) {
23
- padding: 50px 60px;
24
- border-radius: @border-radius-large; // Only round corners at higher resolutions
28
+ padding-top: (@jumbotron-padding * 1.6);
29
+ padding-bottom: (@jumbotron-padding * 1.6);
30
+
31
+ .container & {
32
+ padding-left: (@jumbotron-padding * 2);
33
+ padding-right: (@jumbotron-padding * 2);
34
+ }
35
+
25
36
  h1 {
26
37
  font-size: (@font-size-base * 4.5);
27
38
  }
@@ -4,7 +4,7 @@
4
4
 
5
5
  .label {
6
6
  display: inline;
7
- padding: .25em .6em;
7
+ padding: .2em .6em .3em;
8
8
  font-size: 75%;
9
9
  font-weight: bold;
10
10
  line-height: 1;
@@ -37,18 +37,22 @@
37
37
  .label-variant(@label-default-bg);
38
38
  }
39
39
 
40
- .label-danger {
41
- .label-variant(@label-danger-bg);
40
+ .label-primary {
41
+ .label-variant(@label-primary-bg);
42
42
  }
43
43
 
44
44
  .label-success {
45
45
  .label-variant(@label-success-bg);
46
46
  }
47
47
 
48
+ .label-info {
49
+ .label-variant(@label-info-bg);
50
+ }
51
+
48
52
  .label-warning {
49
53
  .label-variant(@label-warning-bg);
50
54
  }
51
55
 
52
- .label-info {
53
- .label-variant(@label-info-bg);
56
+ .label-danger {
57
+ .label-variant(@label-danger-bg);
54
58
  }
@@ -286,7 +286,7 @@
286
286
 
287
287
  // Reset filters for IE
288
288
  //
289
- // When you need to remove a gradient background, don't forget to use this to reset
289
+ // When you need to remove a gradient background, do not forget to use this to reset
290
290
  // the IE filter for IE9 and below.
291
291
  .reset-filter() {
292
292
  filter: e(%("progid:DXImageTransform.Microsoft.gradient(enabled = false)"));
@@ -294,10 +294,10 @@
294
294
 
295
295
 
296
296
 
297
- // RETINA IMAGE SUPPORT
298
- // --------------------------------------------------
299
-
297
+ // Retina images
298
+ //
300
299
  // Short retina mixin for setting background-image and -size
300
+
301
301
  .img-retina(@file-1x; @file-2x; @width-1x; @height-1x) {
302
302
  background-image: url("@{file-1x}");
303
303
 
@@ -314,6 +314,17 @@
314
314
  }
315
315
 
316
316
 
317
+ // Responsive image
318
+ //
319
+ // Keep images from scaling beyond the width of their parents.
320
+
321
+ .img-responsive(@display: block;) {
322
+ display: @display;
323
+ max-width: 100%; // Part 1: Set a maximum relative to the parent
324
+ height: auto; // Part 2: Scale the height according to the width, otherwise you get stretching
325
+ }
326
+
327
+
317
328
  // COMPONENT MIXINS
318
329
  // --------------------------------------------------
319
330
 
@@ -329,9 +340,9 @@
329
340
 
330
341
  // Panels
331
342
  // -------------------------
332
- .panel-variant(@border; @heading-text-color; @heading-bg-color; @heading-border) {
343
+ .panel-variant(@border; @heading-text-color; @heading-bg-color; @heading-border;) {
333
344
  border-color: @border;
334
- .panel-heading {
345
+ & > .panel-heading {
335
346
  color: @heading-text-color;
336
347
  background-color: @heading-bg-color;
337
348
  border-color: @heading-border;
@@ -339,7 +350,7 @@
339
350
  border-top-color: @border;
340
351
  }
341
352
  }
342
- .panel-footer {
353
+ & > .panel-footer {
343
354
  + .panel-collapse .panel-body {
344
355
  border-bottom-color: @border;
345
356
  }
@@ -360,6 +371,35 @@
360
371
  }
361
372
  }
362
373
 
374
+ // Tables
375
+ // -------------------------
376
+ .table-row-variant(@state; @background; @border) {
377
+ // Exact selectors below required to override `.table-striped` and prevent
378
+ // inheritance to nested tables.
379
+ .table > thead > tr,
380
+ .table > tbody > tr,
381
+ .table > tfoot > tr {
382
+ > td.@{state},
383
+ > th.@{state},
384
+ &.@{state} > td,
385
+ &.@{state} > th {
386
+ background-color: @background;
387
+ border-color: @border;
388
+ }
389
+ }
390
+
391
+ // Hover states for `.table-hover`
392
+ // Note: this is not available for cells or rows within `thead` or `tfoot`.
393
+ .table-hover > tbody > tr {
394
+ > td.@{state}:hover,
395
+ > th.@{state}:hover,
396
+ &.@{state}:hover > td {
397
+ background-color: darken(@background, 5%);
398
+ border-color: darken(@border, 5%);
399
+ }
400
+ }
401
+ }
402
+
363
403
  // Button variants
364
404
  // -------------------------
365
405
  // Easily pump out default styles, as well as :hover, :focus, :active,
@@ -372,12 +412,17 @@
372
412
  &:hover,
373
413
  &:focus,
374
414
  &:active,
375
- &.active {
415
+ &.active,
416
+ .open .dropdown-toggle& {
376
417
  color: @color;
377
418
  background-color: darken(@background, 8%);
378
419
  border-color: darken(@border, 12%);
379
420
  }
380
-
421
+ &:active,
422
+ &.active,
423
+ .open .dropdown-toggle& {
424
+ background-image: none;
425
+ }
381
426
  &.disabled,
382
427
  &[disabled],
383
428
  fieldset[disabled] & {
@@ -479,43 +524,28 @@
479
524
  .container-fixed() {
480
525
  margin-right: auto;
481
526
  margin-left: auto;
527
+ padding-left: (@grid-gutter-width / 2);
528
+ padding-right: (@grid-gutter-width / 2);
482
529
  .clearfix();
483
530
  }
484
531
 
485
532
  // Creates a wrapper for a series of columns
486
533
  .make-row(@gutter: @grid-gutter-width) {
487
- // Then clear the floated columns
534
+ margin-left: (@gutter / -2);
535
+ margin-right: (@gutter / -2);
488
536
  .clearfix();
489
-
490
- .container & {
491
- @media (min-width: @screen-small) {
492
- margin-left: (@gutter / -2);
493
- margin-right: (@gutter / -2);
494
- }
495
- }
496
-
497
- // Negative margin nested rows out to align the content of columns
498
- .row {
499
- margin-left: (@gutter / -2);
500
- margin-right: (@gutter / -2);
501
- }
502
537
  }
503
538
 
504
539
  // Generate the extra small columns
505
540
  .make-xs-column(@columns; @gutter: @grid-gutter-width) {
506
541
  position: relative;
507
542
  float: left;
543
+ width: percentage((@columns / @grid-columns));
508
544
  // Prevent columns from collapsing when empty
509
545
  min-height: 1px;
510
546
  // Inner gutter via padding
511
547
  padding-left: (@gutter / 2);
512
548
  padding-right: (@gutter / 2);
513
- @max-width: (@screen-small - 1);
514
-
515
- // Calculate width based on number of columns available
516
- @media (max-width: @max-width) {
517
- width: percentage((@columns / @grid-columns));
518
- }
519
549
  }
520
550
 
521
551
  // Generate the small columns
@@ -528,7 +558,7 @@
528
558
  padding-right: (@gutter / 2);
529
559
 
530
560
  // Calculate width based on number of columns available
531
- @media (min-width: @screen-small) {
561
+ @media (min-width: @screen-sm) {
532
562
  float: left;
533
563
  width: percentage((@columns / @grid-columns));
534
564
  }
@@ -536,17 +566,17 @@
536
566
 
537
567
  // Generate the small column offsets
538
568
  .make-sm-column-offset(@columns) {
539
- @media (min-width: @screen-small) {
569
+ @media (min-width: @screen-sm) {
540
570
  margin-left: percentage((@columns / @grid-columns));
541
571
  }
542
572
  }
543
573
  .make-sm-column-push(@columns) {
544
- @media (min-width: @screen-small) {
574
+ @media (min-width: @screen-sm) {
545
575
  left: percentage((@columns / @grid-columns));
546
576
  }
547
577
  }
548
578
  .make-sm-column-pull(@columns) {
549
- @media (min-width: @screen-small) {
579
+ @media (min-width: @screen-sm) {
550
580
  right: percentage((@columns / @grid-columns));
551
581
  }
552
582
  }
@@ -561,7 +591,7 @@
561
591
  padding-right: (@gutter / 2);
562
592
 
563
593
  // Calculate width based on number of columns available
564
- @media (min-width: @screen-medium) {
594
+ @media (min-width: @screen-md) {
565
595
  float: left;
566
596
  width: percentage((@columns / @grid-columns));
567
597
  }
@@ -569,17 +599,17 @@
569
599
 
570
600
  // Generate the large column offsets
571
601
  .make-md-column-offset(@columns) {
572
- @media (min-width: @screen-medium) {
602
+ @media (min-width: @screen-md) {
573
603
  margin-left: percentage((@columns / @grid-columns));
574
604
  }
575
605
  }
576
606
  .make-md-column-push(@columns) {
577
- @media (min-width: @screen-medium) {
607
+ @media (min-width: @screen-md) {
578
608
  left: percentage((@columns / @grid-columns));
579
609
  }
580
610
  }
581
611
  .make-md-column-pull(@columns) {
582
- @media (min-width: @screen-medium) {
612
+ @media (min-width: @screen-md) {
583
613
  right: percentage((@columns / @grid-columns));
584
614
  }
585
615
  }
@@ -594,7 +624,7 @@
594
624
  padding-right: (@gutter / 2);
595
625
 
596
626
  // Calculate width based on number of columns available
597
- @media (min-width: @screen-large) {
627
+ @media (min-width: @screen-lg) {
598
628
  float: left;
599
629
  width: percentage((@columns / @grid-columns));
600
630
  }
@@ -602,17 +632,17 @@
602
632
 
603
633
  // Generate the large column offsets
604
634
  .make-lg-column-offset(@columns) {
605
- @media (min-width: @screen-large) {
635
+ @media (min-width: @screen-lg) {
606
636
  margin-left: percentage((@columns / @grid-columns));
607
637
  }
608
638
  }
609
639
  .make-lg-column-push(@columns) {
610
- @media (min-width: @screen-large) {
640
+ @media (min-width: @screen-lg) {
611
641
  left: percentage((@columns / @grid-columns));
612
642
  }
613
643
  }
614
644
  .make-lg-column-pull(@columns) {
615
- @media (min-width: @screen-large) {
645
+ @media (min-width: @screen-lg) {
616
646
  right: percentage((@columns / @grid-columns));
617
647
  }
618
648
  }
@@ -681,12 +711,12 @@
681
711
  font-size: @font-size;
682
712
  line-height: @line-height;
683
713
  border-radius: @border-radius;
684
-
714
+
685
715
  select& {
686
716
  height: @input-height;
687
717
  line-height: @input-height;
688
718
  }
689
-
719
+
690
720
  textarea& {
691
721
  height: auto;
692
722
  }
@@ -10,6 +10,14 @@
10
10
  // Kill the scroll on the body
11
11
  .modal-open {
12
12
  overflow: hidden;
13
+
14
+
15
+ // Account for hiding of scrollbar
16
+ body&,
17
+ .navbar-fixed-top,
18
+ .navbar-fixed-bottom {
19
+ margin-right: 15px
20
+ }
13
21
  }
14
22
 
15
23
  // Container that the modal scrolls within