bootstrap-generators 3.0.0.1 → 3.0.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (96) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +8 -8
  3. data/Rakefile +3 -7
  4. data/lib/bootstrap/generators/version.rb +1 -1
  5. data/lib/generators/bootstrap/install/templates/assets/stylesheets/bootstrap-variables.less +57 -40
  6. data/lib/generators/bootstrap/install/templates/assets/stylesheets/bootstrap-variables.scss +57 -40
  7. data/lib/generators/bootstrap/install/templates/layouts/starter.html.erb +1 -1
  8. data/lib/generators/bootstrap/install/templates/layouts/starter.html.haml +1 -1
  9. data/readme-template.md.erb +1 -1
  10. data/vendor/assets/fonts/glyphicons-halflings-regular.eot +0 -0
  11. data/vendor/assets/fonts/glyphicons-halflings-regular.svg +200 -199
  12. data/vendor/assets/fonts/glyphicons-halflings-regular.ttf +0 -0
  13. data/vendor/assets/fonts/glyphicons-halflings-regular.woff +0 -0
  14. data/vendor/assets/javascripts/bootstrap.js +5 -5
  15. data/vendor/assets/javascripts/bootstrap/affix.js +4 -4
  16. data/vendor/assets/javascripts/bootstrap/alert.js +3 -3
  17. data/vendor/assets/javascripts/bootstrap/button.js +3 -3
  18. data/vendor/assets/javascripts/bootstrap/carousel.js +4 -4
  19. data/vendor/assets/javascripts/bootstrap/collapse.js +4 -4
  20. data/vendor/assets/javascripts/bootstrap/dropdown.js +4 -4
  21. data/vendor/assets/javascripts/bootstrap/modal.js +4 -4
  22. data/vendor/assets/javascripts/bootstrap/popover.js +4 -4
  23. data/vendor/assets/javascripts/bootstrap/scrollspy.js +4 -4
  24. data/vendor/assets/javascripts/bootstrap/tab.js +5 -5
  25. data/vendor/assets/javascripts/bootstrap/tooltip.js +4 -4
  26. data/vendor/assets/javascripts/bootstrap/transition.js +3 -3
  27. data/vendor/assets/stylesheets/bootstrap.css +1039 -746
  28. data/vendor/twitter/bootstrap/less/alerts.less +1 -1
  29. data/vendor/twitter/bootstrap/less/bootstrap.less +0 -10
  30. data/vendor/twitter/bootstrap/less/breadcrumbs.less +2 -2
  31. data/vendor/twitter/bootstrap/less/button-groups.less +6 -1
  32. data/vendor/twitter/bootstrap/less/buttons.less +2 -4
  33. data/vendor/twitter/bootstrap/less/carousel.less +32 -10
  34. data/vendor/twitter/bootstrap/less/code.less +5 -8
  35. data/vendor/twitter/bootstrap/less/dropdowns.less +1 -2
  36. data/vendor/twitter/bootstrap/less/forms.less +21 -10
  37. data/vendor/twitter/bootstrap/less/glyphicons.less +20 -15
  38. data/vendor/twitter/bootstrap/less/grid.less +32 -285
  39. data/vendor/twitter/bootstrap/less/input-groups.less +9 -0
  40. data/vendor/twitter/bootstrap/less/jumbotron.less +2 -2
  41. data/vendor/twitter/bootstrap/less/list-group.less +12 -12
  42. data/vendor/twitter/bootstrap/less/mixins.less +164 -29
  43. data/vendor/twitter/bootstrap/less/modals.less +2 -11
  44. data/vendor/twitter/bootstrap/less/navbar.less +10 -7
  45. data/vendor/twitter/bootstrap/less/navs.less +53 -20
  46. data/vendor/twitter/bootstrap/less/normalize.less +16 -6
  47. data/vendor/twitter/bootstrap/less/pagination.less +2 -0
  48. data/vendor/twitter/bootstrap/less/panels.less +31 -7
  49. data/vendor/twitter/bootstrap/less/print.less +6 -1
  50. data/vendor/twitter/bootstrap/less/progress-bars.less +4 -7
  51. data/vendor/twitter/bootstrap/less/responsive-utilities.less +57 -68
  52. data/vendor/twitter/bootstrap/less/scaffolding.less +1 -12
  53. data/vendor/twitter/bootstrap/less/tables.less +40 -40
  54. data/vendor/twitter/bootstrap/less/theme.less +32 -17
  55. data/vendor/twitter/bootstrap/less/thumbnails.less +14 -15
  56. data/vendor/twitter/bootstrap/less/tooltip.less +8 -8
  57. data/vendor/twitter/bootstrap/less/type.less +71 -30
  58. data/vendor/twitter/bootstrap/less/utilities.less +15 -1
  59. data/vendor/twitter/bootstrap/less/variables.less +56 -39
  60. data/vendor/twitter/bootstrap/sass/_alerts.scss +1 -1
  61. data/vendor/twitter/bootstrap/sass/_breadcrumbs.scss +2 -2
  62. data/vendor/twitter/bootstrap/sass/_button-groups.scss +6 -1
  63. data/vendor/twitter/bootstrap/sass/_buttons.scss +2 -4
  64. data/vendor/twitter/bootstrap/sass/_carousel.scss +32 -10
  65. data/vendor/twitter/bootstrap/sass/_close.scss +2 -0
  66. data/vendor/twitter/bootstrap/sass/_code.scss +5 -8
  67. data/vendor/twitter/bootstrap/sass/_dropdowns.scss +1 -2
  68. data/vendor/twitter/bootstrap/sass/_forms.scss +23 -10
  69. data/vendor/twitter/bootstrap/sass/_glyphicons.scss +20 -15
  70. data/vendor/twitter/bootstrap/sass/_grid.scss +32 -285
  71. data/vendor/twitter/bootstrap/sass/_input-groups.scss +9 -0
  72. data/vendor/twitter/bootstrap/sass/_jumbotron.scss +2 -2
  73. data/vendor/twitter/bootstrap/sass/_list-group.scss +16 -16
  74. data/vendor/twitter/bootstrap/sass/_mixins.scss +167 -34
  75. data/vendor/twitter/bootstrap/sass/_modals.scss +2 -15
  76. data/vendor/twitter/bootstrap/sass/_navbar.scss +10 -7
  77. data/vendor/twitter/bootstrap/sass/_navs.scss +53 -20
  78. data/vendor/twitter/bootstrap/sass/_normalize.scss +16 -6
  79. data/vendor/twitter/bootstrap/sass/_pagination.scss +2 -0
  80. data/vendor/twitter/bootstrap/sass/_panels.scss +31 -7
  81. data/vendor/twitter/bootstrap/sass/_print.scss +6 -1
  82. data/vendor/twitter/bootstrap/sass/_progress-bars.scss +4 -7
  83. data/vendor/twitter/bootstrap/sass/_responsive-utilities.scss +37 -48
  84. data/vendor/twitter/bootstrap/sass/_scaffolding.scss +1 -12
  85. data/vendor/twitter/bootstrap/sass/_tables.scss +52 -44
  86. data/vendor/twitter/bootstrap/sass/_theme.scss +26 -11
  87. data/vendor/twitter/bootstrap/sass/_thumbnails.scss +13 -12
  88. data/vendor/twitter/bootstrap/sass/_tooltip.scss +8 -8
  89. data/vendor/twitter/bootstrap/sass/_type.scss +71 -30
  90. data/vendor/twitter/bootstrap/sass/_utilities.scss +15 -1
  91. data/vendor/twitter/bootstrap/sass/_variables.scss +56 -39
  92. data/vendor/twitter/bootstrap/sass/bootstrap.scss +0 -10
  93. metadata +2 -5
  94. data/vendor/assets/javascripts/bootstrap-ie.js +0 -2
  95. data/vendor/assets/javascripts/bootstrap-ie/html5shiv.js +0 -8
  96. data/vendor/assets/javascripts/bootstrap-ie/respond.min.js +0 -6
@@ -61,6 +61,7 @@
61
61
  font-size: $font-size-base;
62
62
  font-weight: normal;
63
63
  line-height: 1;
64
+ color: $input-color;
64
65
  text-align: center;
65
66
  background-color: $input-group-addon-bg;
66
67
  border: 1px solid $input-group-addon-border-color;
@@ -112,6 +113,14 @@
112
113
  .input-group-btn {
113
114
  position: relative;
114
115
  white-space: nowrap;
116
+
117
+ // Negative margin to only have a 1px border between the two
118
+ &:first-child > .btn {
119
+ margin-right: -1px;
120
+ }
121
+ &:last-child > .btn {
122
+ margin-left: -1px;
123
+ }
115
124
  }
116
125
  .input-group-btn > .btn {
117
126
  position: relative;
@@ -6,7 +6,7 @@
6
6
  .jumbotron {
7
7
  padding: $jumbotron-padding;
8
8
  margin-bottom: $jumbotron-padding;
9
- font-size: ($font-size-base * 1.5);
9
+ font-size: $jumbotron-font-size;
10
10
  font-weight: 200;
11
11
  line-height: ($line-height-base * 1.5);
12
12
  color: $jumbotron-color;
@@ -24,7 +24,7 @@
24
24
  border-radius: $border-radius-large; // Only round corners at higher resolutions if contained in a container
25
25
  }
26
26
 
27
- @media screen and (min-width: $screen-tablet) {
27
+ @media screen and (min-width: $screen-sm-min) {
28
28
  padding-top: ($jumbotron-padding * 1.6);
29
29
  padding-bottom: ($jumbotron-padding * 1.6);
30
30
 
@@ -39,6 +39,22 @@
39
39
  > .badge + .badge {
40
40
  margin-right: 5px;
41
41
  }
42
+ }
43
+
44
+ // Linked list items
45
+ a.list-group-item {
46
+ color: $list-group-link-color;
47
+
48
+ .list-group-item-heading {
49
+ color: $list-group-link-heading-color;
50
+ }
51
+
52
+ // Hover state
53
+ &:hover,
54
+ &:focus {
55
+ text-decoration: none;
56
+ background-color: $list-group-hover-bg;
57
+ }
42
58
 
43
59
  // Active class on item itself, not parent
44
60
  &.active,
@@ -59,22 +75,6 @@
59
75
  }
60
76
  }
61
77
 
62
- // Linked list items
63
- a.list-group-item {
64
- color: $list-group-link-color;
65
-
66
- .list-group-item-heading {
67
- color: $list-group-link-heading-color;
68
- }
69
-
70
- // Hover state
71
- &:hover,
72
- &:focus {
73
- text-decoration: none;
74
- background-color: $list-group-hover-bg;
75
- }
76
- }
77
-
78
78
  // Custom content options
79
79
  // -------------------------
80
80
 
@@ -27,11 +27,11 @@
27
27
  }
28
28
  }
29
29
 
30
- // Webkit-style focus
30
+ // WebKit-style focus
31
31
  @mixin tab-focus() {
32
32
  // Default
33
33
  outline: thin dotted #333;
34
- // Webkit
34
+ // WebKit
35
35
  outline: 5px auto -webkit-focus-ring-color;
36
36
  outline-offset: -2px;
37
37
  }
@@ -69,9 +69,25 @@
69
69
  }
70
70
 
71
71
  // CSS image replacement
72
+ //
73
+ // Heads up! v3 launched with with only `.hide-text()`, but per our pattern for
74
+ // mixins being reused as classes with the same name, this doesn't hold up. As
75
+ // of v3.0.1 we have added `.text-hide()` and deprecated `.hide-text()`. Note
76
+ // that we cannot chain the mixins together in Less, so they are repeated.
77
+ //
72
78
  // Source: https://github.com/h5bp/html5-boilerplate/commit/aa0396eae757
79
+
80
+ // Deprecated as of v3.0.1 (will be removed in v4)
73
81
  @mixin hide-text() {
74
- font: 0/0 a;
82
+ font: #{0/0} a;
83
+ color: transparent;
84
+ text-shadow: none;
85
+ background-color: transparent;
86
+ border: 0;
87
+ }
88
+ // New mixin to use as of v3.0.1
89
+ @mixin text-hide() {
90
+ font: #{0/0} a;
75
91
  color: transparent;
76
92
  text-shadow: none;
77
93
  background-color: transparent;
@@ -112,6 +128,10 @@
112
128
  -webkit-transition: $transition;
113
129
  transition: $transition;
114
130
  }
131
+ @mixin transition-property($transition-property) {
132
+ -webkit-transition-property: $transition-property;
133
+ transition-property: $transition-property;
134
+ }
115
135
  @mixin transition-delay($transition-delay) {
116
136
  -webkit-transition-delay: $transition-delay;
117
137
  transition-delay: $transition-delay;
@@ -153,10 +173,41 @@
153
173
  transform: translate3d($x, $y, $z);
154
174
  }
155
175
 
176
+ @mixin rotateX($degrees) {
177
+ -webkit-transform: rotateX($degrees);
178
+ -ms-transform: rotateX($degrees); // IE9+
179
+ transform: rotateX($degrees);
180
+ }
181
+ @mixin rotateY($degrees) {
182
+ -webkit-transform: rotateY($degrees);
183
+ -ms-transform: rotateY($degrees); // IE9+
184
+ transform: rotateY($degrees);
185
+ }
186
+ @mixin perspective($perspective) {
187
+ -webkit-perspective: $perspective;
188
+ -moz-perspective: $perspective;
189
+ perspective: $perspective;
190
+ }
191
+ @mixin perspective-origin($perspective) {
192
+ -webkit-perspective-origin: $perspective;
193
+ -moz-perspective-origin: $perspective;
194
+ perspective-origin: $perspective;
195
+ }
196
+ @mixin transform-origin($origin) {
197
+ -webkit-transform-origin: $origin;
198
+ -moz-transform-origin: $origin;
199
+ transform-origin: $origin;
200
+ }
201
+
202
+ // Animations
203
+ @mixin animation($animation) {
204
+ -webkit-animation: $animation;
205
+ animation: $animation;
206
+ }
207
+
156
208
  // Backface visibility
157
209
  // Prevent browsers from flickering when using CSS 3D transforms.
158
210
  // Default value is `visible`, but can be changed to `hidden`
159
- // See git pull https://github.com/dannykeane/bootstrap.git backface-visibility for examples
160
211
  @mixin backface-visibility($visibility){
161
212
  -webkit-backface-visibility: $visibility;
162
213
  -moz-backface-visibility: $visibility;
@@ -211,7 +262,7 @@
211
262
  opacity: $opacity;
212
263
  // IE8 filter
213
264
  $opacity-ie: ($opacity * 100);
214
- filter: alpha(opacity=$opacity-ie);
265
+ filter: #{alpha(opacity=$opacity-ie)};
215
266
  }
216
267
 
217
268
 
@@ -240,7 +291,7 @@
240
291
  // Color stops are not available in IE9 and below.
241
292
  @mixin gradient-vertical($start-color: #555, $end-color: #333, $start-percent: 0%, $end-percent: 100%) {
242
293
  background-image: -webkit-gradient(linear, left $start-percent, left $end-percent, from($start-color), to($end-color)); // Safari 4+, Chrome 2+
243
- background-image: -webkit-linear-gradient(top, $start-color, $start-percent, $end-color, $end-percent); // Safari 5.1+, Chrome 10+
294
+ background-image: -webkit-linear-gradient(top, $start-color $start-percent, $end-color $end-percent); // Safari 5.1+, Chrome 10+
244
295
  background-image: -moz-linear-gradient(top, $start-color $start-percent, $end-color $end-percent); // FF 3.6+
245
296
  background-image: linear-gradient(to bottom, $start-color $start-percent, $end-color $end-percent); // Standard, IE10
246
297
  background-repeat: repeat-x;
@@ -276,11 +327,11 @@
276
327
  background-image: radial-gradient(circle, $inner-color, $outer-color);
277
328
  background-repeat: no-repeat;
278
329
  }
279
- @mixin gradient-striped($color: #555, $angle: 45deg) {
280
- background-image: -webkit-gradient(linear, 0 100%, 100% 0, color-stop(.25, rgba(255,255,255,.15)), color-stop(.25, transparent), color-stop(.5, transparent), color-stop(.5, rgba(255,255,255,.15)), color-stop(.75, rgba(255,255,255,.15)), color-stop(.75, transparent), to(transparent));
281
- background-image: -webkit-linear-gradient($angle, rgba(255,255,255,.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,.15) 50%, rgba(255,255,255,.15) 75%, transparent 75%, transparent);
282
- background-image: -moz-linear-gradient($angle, rgba(255,255,255,.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,.15) 50%, rgba(255,255,255,.15) 75%, transparent 75%, transparent);
283
- background-image: linear-gradient($angle, rgba(255,255,255,.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,.15) 50%, rgba(255,255,255,.15) 75%, transparent 75%, transparent);
330
+ @mixin gradient-striped($color: rgba(255,255,255,.15), $angle: 45deg) {
331
+ background-image: -webkit-gradient(linear, 0 100%, 100% 0, color-stop(.25, $color), color-stop(.25, transparent), color-stop(.5, transparent), color-stop(.5, $color), color-stop(.75, $color), color-stop(.75, transparent), to(transparent));
332
+ background-image: -webkit-linear-gradient($angle, $color 25%, transparent 25%, transparent 50%, $color 50%, $color 75%, transparent 75%, transparent);
333
+ background-image: -moz-linear-gradient($angle, $color 25%, transparent 25%, transparent 50%, $color 50%, $color 75%, transparent 75%, transparent);
334
+ background-image: linear-gradient($angle, $color 25%, transparent 25%, transparent 50%, $color 50%, $color 75%, transparent 75%, transparent);
284
335
  }
285
336
 
286
337
  // Reset filters for IE
@@ -298,7 +349,7 @@
298
349
  // Short retina mixin for setting background-image and -size
299
350
 
300
351
  @mixin img-retina($file-1x, $file-2x, $width-1x, $height-1x) {
301
- background-image: url("#{$file-1x}");
352
+ background-image: image-url("#{$file-1x}");
302
353
 
303
354
  @media
304
355
  only screen and (-webkit-min-device-pixel-ratio: 2),
@@ -307,7 +358,7 @@
307
358
  only screen and ( min-device-pixel-ratio: 2),
308
359
  only screen and ( min-resolution: 192dpi),
309
360
  only screen and ( min-resolution: 2dppx) {
310
- background-image: url("#{$file-2x}");
361
+ background-image: image-url("#{$file-2x}");
311
362
  background-size: $width-1x $height-1x;
312
363
  }
313
364
  }
@@ -341,13 +392,18 @@
341
392
  // -------------------------
342
393
  @mixin panel-variant($border, $heading-text-color, $heading-bg-color, $heading-border) {
343
394
  border-color: $border;
395
+
344
396
  & > .panel-heading {
345
397
  color: $heading-text-color;
346
398
  background-color: $heading-bg-color;
347
399
  border-color: $heading-border;
400
+
348
401
  + .panel-collapse .panel-body {
349
402
  border-top-color: $border;
350
403
  }
404
+ & > .dropdown .caret {
405
+ border-color: $heading-text-color transparent;
406
+ }
351
407
  }
352
408
  & > .panel-footer {
353
409
  + .panel-collapse .panel-body {
@@ -362,6 +418,7 @@
362
418
  background-color: $background;
363
419
  border-color: $border;
364
420
  color: $text-color;
421
+
365
422
  hr {
366
423
  border-top-color: darken($border, 5%);
367
424
  }
@@ -383,7 +440,6 @@
383
440
  &.#{$state} > td,
384
441
  &.#{$state} > th {
385
442
  background-color: $background;
386
- border-color: $border;
387
443
  }
388
444
  }
389
445
 
@@ -392,9 +448,9 @@
392
448
  .table-hover > tbody > tr {
393
449
  > td.#{$state}:hover,
394
450
  > th.#{$state}:hover,
395
- &.#{$state}:hover > td {
451
+ &.#{$state}:hover > td,
452
+ &.#{$state}:hover > th {
396
453
  background-color: darken($background, 5%);
397
- border-color: darken($border, 5%);
398
454
  }
399
455
  }
400
456
  }
@@ -437,7 +493,7 @@
437
493
  &:active,
438
494
  &.active {
439
495
  background-color: $background;
440
- border-color: $border
496
+ border-color: $border;
441
497
  }
442
498
  }
443
499
  }
@@ -501,14 +557,14 @@
501
557
  @mixin progress-bar-variant($color) {
502
558
  background-color: $color;
503
559
  .progress-striped & {
504
- @include gradient-striped($color);
560
+ @include gradient-striped();
505
561
  }
506
562
  }
507
563
 
508
564
  // Responsive utilities
509
565
  // -------------------------
510
566
  // More easily include all the states for responsive-utilities.less.
511
- // $parent hack because sass doesn't support tr& (without space)
567
+ // [converter] $parent hack
512
568
  @mixin responsive-visibility($parent) {
513
569
  #{$parent} { display: block !important; }
514
570
  tr#{$parent} { display: table-row !important; }
@@ -516,13 +572,15 @@
516
572
  td#{$parent} { display: table-cell !important; }
517
573
  }
518
574
 
575
+ // [converter] $parent hack
519
576
  @mixin responsive-invisibility($parent) {
520
- #{$parent} { display: none !important; }
521
- tr#{$parent} { display: none !important; }
577
+ #{$parent},
578
+ tr#{$parent},
522
579
  th#{$parent},
523
580
  td#{$parent} { display: none !important; }
524
581
  }
525
582
 
583
+
526
584
  // Grid System
527
585
  // -----------
528
586
 
@@ -564,7 +622,7 @@
564
622
  padding-right: ($gutter / 2);
565
623
 
566
624
  // Calculate width based on number of columns available
567
- @media (min-width: $screen-sm) {
625
+ @media (min-width: $screen-sm-min) {
568
626
  float: left;
569
627
  width: percentage(($columns / $grid-columns));
570
628
  }
@@ -572,17 +630,17 @@
572
630
 
573
631
  // Generate the small column offsets
574
632
  @mixin make-sm-column-offset($columns) {
575
- @media (min-width: $screen-sm) {
633
+ @media (min-width: $screen-sm-min) {
576
634
  margin-left: percentage(($columns / $grid-columns));
577
635
  }
578
636
  }
579
637
  @mixin make-sm-column-push($columns) {
580
- @media (min-width: $screen-sm) {
638
+ @media (min-width: $screen-sm-min) {
581
639
  left: percentage(($columns / $grid-columns));
582
640
  }
583
641
  }
584
642
  @mixin make-sm-column-pull($columns) {
585
- @media (min-width: $screen-sm) {
643
+ @media (min-width: $screen-sm-min) {
586
644
  right: percentage(($columns / $grid-columns));
587
645
  }
588
646
  }
@@ -597,15 +655,15 @@
597
655
  padding-right: ($gutter / 2);
598
656
 
599
657
  // Calculate width based on number of columns available
600
- @media (min-width: $screen-md) {
658
+ @media (min-width: $screen-md-min) {
601
659
  float: left;
602
660
  width: percentage(($columns / $grid-columns));
603
661
  }
604
662
  }
605
663
 
606
- // Generate the large column offsets
664
+ // Generate the medium column offsets
607
665
  @mixin make-md-column-offset($columns) {
608
- @media (min-width: $screen-md) {
666
+ @media (min-width: $screen-md-min) {
609
667
  margin-left: percentage(($columns / $grid-columns));
610
668
  }
611
669
  }
@@ -615,7 +673,7 @@
615
673
  }
616
674
  }
617
675
  @mixin make-md-column-pull($columns) {
618
- @media (min-width: $screen-md) {
676
+ @media (min-width: $screen-md-min) {
619
677
  right: percentage(($columns / $grid-columns));
620
678
  }
621
679
  }
@@ -630,7 +688,7 @@
630
688
  padding-right: ($gutter / 2);
631
689
 
632
690
  // Calculate width based on number of columns available
633
- @media (min-width: $screen-lg) {
691
+ @media (min-width: $screen-lg-min) {
634
692
  float: left;
635
693
  width: percentage(($columns / $grid-columns));
636
694
  }
@@ -638,22 +696,92 @@
638
696
 
639
697
  // Generate the large column offsets
640
698
  @mixin make-lg-column-offset($columns) {
641
- @media (min-width: $screen-lg) {
699
+ @media (min-width: $screen-lg-min) {
642
700
  margin-left: percentage(($columns / $grid-columns));
643
701
  }
644
702
  }
645
703
  @mixin make-lg-column-push($columns) {
646
- @media (min-width: $screen-lg) {
704
+ @media (min-width: $screen-lg-min) {
647
705
  left: percentage(($columns / $grid-columns));
648
706
  }
649
707
  }
650
708
  @mixin make-lg-column-pull($columns) {
651
- @media (min-width: $screen-lg) {
709
+ @media (min-width: $screen-lg-min) {
652
710
  right: percentage(($columns / $grid-columns));
653
711
  }
654
712
  }
655
713
 
656
714
 
715
+ // Framework grid generation
716
+ //
717
+ // Used only by Bootstrap to generate the correct number of grid classes given
718
+ // any value of `$grid-columns`.
719
+
720
+ // [converter] Grid converted to use SASS cycles (LESS uses recursive nested mixin defs not supported by SASS)
721
+ @mixin make-grid-columns() {
722
+ $list: '';
723
+ $i: 1;
724
+ $list: ".col-xs-#{$i}, .col-sm-#{$i}, .col-md-#{$i}, .col-lg-#{$i}";
725
+ @for $i from 2 through $grid-columns {
726
+ $list: ".col-xs-#{$i}, .col-sm-#{$i}, .col-md-#{$i}, .col-lg-#{$i}, #{$list}";
727
+ }
728
+ #{$list} {
729
+ position: relative;
730
+ // Prevent columns from collapsing when empty
731
+ min-height: 1px;
732
+ // Inner gutter via padding
733
+ padding-left: ($grid-gutter-width / 2);
734
+ padding-right: ($grid-gutter-width / 2);
735
+ }
736
+ }
737
+
738
+
739
+ // [converter] Grid converted to use SASS cycles (LESS uses recursive nested mixin defs not supported by SASS)
740
+ @mixin make-grid-columns-float($class) {
741
+ $list: '';
742
+ $i: 1;
743
+ $list: ".col-#{$class}-#{$i}";
744
+ @for $i from 2 through $grid-columns {
745
+ $list: ".col-#{$class}-#{$i}, #{$list}";
746
+ }
747
+ #{$list} {
748
+ float: left;
749
+ }
750
+ }
751
+
752
+
753
+ @mixin calc-grid($index, $class, $type) {
754
+ @if ($type == width) and ($index > 0) {
755
+ .col-#{$class}-#{$index} {
756
+ width: percentage(($index / $grid-columns));
757
+ }
758
+ }
759
+ @if ($type == push) {
760
+ .col-#{$class}-push-#{$index} {
761
+ left: percentage(($index / $grid-columns));
762
+ }
763
+ }
764
+ @if ($type == pull) {
765
+ .col-#{$class}-pull-#{$index} {
766
+ right: percentage(($index / $grid-columns));
767
+ }
768
+ }
769
+ @if ($type == offset) {
770
+ .col-#{$class}-offset-#{$index} {
771
+ margin-left: percentage(($index / $grid-columns));
772
+ }
773
+ }
774
+ }
775
+
776
+ // [converter] This is defined recursively in LESS, but SASS supports real loops
777
+ @mixin make-grid($columns, $class, $type) {
778
+ @for $i from 0 through $columns {
779
+ @include calc-grid($i, $class, $type);
780
+ }
781
+ }
782
+
783
+
784
+
657
785
  // Form validation states
658
786
  //
659
787
  // Used in forms.less to generate the form validation CSS for warnings, errors,
@@ -662,7 +790,11 @@
662
790
  @mixin form-control-validation($text-color: #555, $border-color: #ccc, $background-color: #f5f5f5) {
663
791
  // Color the label and help text
664
792
  .help-block,
665
- .control-label {
793
+ .control-label,
794
+ .radio,
795
+ .checkbox,
796
+ .radio-inline,
797
+ .checkbox-inline {
666
798
  color: $text-color;
667
799
  }
668
800
  // Set the border and box shadow on specific inputs to match
@@ -711,6 +843,7 @@
711
843
  // horizontal sizing, wrap controls in the predefined grid classes. `<select>`
712
844
  // element gets special love because it's special, and that's a fact!
713
845
 
846
+ // [converter] $parent hack
714
847
  @mixin input-size($parent, $input-height, $padding-vertical, $padding-horizontal, $font-size, $line-height, $border-radius) {
715
848
  #{$parent} { height: $input-height;
716
849
  padding: $padding-vertical $padding-horizontal;