bootstrap-generators 3.1.0 → 3.1.1

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 (54) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +3 -8
  3. data/Rakefile +4 -5
  4. data/lib/bootstrap/generators/version.rb +1 -1
  5. data/lib/generators/bootstrap/install/templates/assets/stylesheets/bootstrap-variables.less +25 -23
  6. data/lib/generators/bootstrap/install/templates/assets/stylesheets/bootstrap-variables.scss +25 -23
  7. data/readme-template.md.erb +1 -6
  8. data/vendor/assets/fonts/bootstrap/glyphicons-halflings-regular.eot +0 -0
  9. data/vendor/assets/fonts/bootstrap/glyphicons-halflings-regular.svg +47 -47
  10. data/vendor/assets/fonts/bootstrap/glyphicons-halflings-regular.ttf +0 -0
  11. data/vendor/assets/fonts/bootstrap/glyphicons-halflings-regular.woff +0 -0
  12. data/vendor/assets/javascripts/bootstrap/affix.js +1 -1
  13. data/vendor/assets/javascripts/bootstrap/alert.js +1 -1
  14. data/vendor/assets/javascripts/bootstrap/button.js +1 -1
  15. data/vendor/assets/javascripts/bootstrap/carousel.js +1 -1
  16. data/vendor/assets/javascripts/bootstrap/collapse.js +1 -1
  17. data/vendor/assets/javascripts/bootstrap/dropdown.js +1 -1
  18. data/vendor/assets/javascripts/bootstrap/modal.js +1 -1
  19. data/vendor/assets/javascripts/bootstrap/popover.js +1 -1
  20. data/vendor/assets/javascripts/bootstrap/scrollspy.js +1 -1
  21. data/vendor/assets/javascripts/bootstrap/tab.js +1 -1
  22. data/vendor/assets/javascripts/bootstrap/tooltip.js +1 -1
  23. data/vendor/assets/javascripts/bootstrap/transition.js +1 -1
  24. data/vendor/assets/stylesheets/bootstrap.css +245 -291
  25. data/vendor/twitter/bootstrap/less/button-groups.less +3 -3
  26. data/vendor/twitter/bootstrap/less/buttons.less +6 -2
  27. data/vendor/twitter/bootstrap/less/carousel.less +3 -3
  28. data/vendor/twitter/bootstrap/less/forms.less +22 -3
  29. data/vendor/twitter/bootstrap/less/grid.less +4 -20
  30. data/vendor/twitter/bootstrap/less/input-groups.less +5 -0
  31. data/vendor/twitter/bootstrap/less/mixins.less +18 -15
  32. data/vendor/twitter/bootstrap/less/modals.less +3 -2
  33. data/vendor/twitter/bootstrap/less/navbar.less +1 -1
  34. data/vendor/twitter/bootstrap/less/panels.less +54 -43
  35. data/vendor/twitter/bootstrap/less/popovers.less +11 -11
  36. data/vendor/twitter/bootstrap/less/responsive-utilities.less +6 -7
  37. data/vendor/twitter/bootstrap/less/thumbnails.less +1 -1
  38. data/vendor/twitter/bootstrap/less/type.less +2 -5
  39. data/vendor/twitter/bootstrap/less/variables.less +25 -23
  40. data/vendor/twitter/bootstrap/sass/_buttons.scss +6 -2
  41. data/vendor/twitter/bootstrap/sass/_carousel.scss +2 -2
  42. data/vendor/twitter/bootstrap/sass/_forms.scss +22 -3
  43. data/vendor/twitter/bootstrap/sass/_grid.scss +4 -20
  44. data/vendor/twitter/bootstrap/sass/_input-groups.scss +5 -0
  45. data/vendor/twitter/bootstrap/sass/_mixins.scss +50 -34
  46. data/vendor/twitter/bootstrap/sass/_modals.scss +3 -2
  47. data/vendor/twitter/bootstrap/sass/_navbar.scss +1 -1
  48. data/vendor/twitter/bootstrap/sass/_panels.scss +54 -43
  49. data/vendor/twitter/bootstrap/sass/_popovers.scss +11 -11
  50. data/vendor/twitter/bootstrap/sass/_responsive-utilities.scss +1 -7
  51. data/vendor/twitter/bootstrap/sass/_thumbnails.scss +4 -4
  52. data/vendor/twitter/bootstrap/sass/_type.scss +21 -33
  53. data/vendor/twitter/bootstrap/sass/_variables.scss +25 -23
  54. metadata +2 -2
@@ -96,9 +96,9 @@
96
96
  //
97
97
  // Remix the default button sizing classes into new ones for easier manipulation.
98
98
 
99
- .btn-group-xs > .btn { .btn-xs(); }
100
- .btn-group-sm > .btn { .btn-sm(); }
101
- .btn-group-lg > .btn { .btn-lg(); }
99
+ .btn-group-xs > .btn { &:extend(.btn-xs); }
100
+ .btn-group-sm > .btn { &:extend(.btn-sm); }
101
+ .btn-group-lg > .btn { &:extend(.btn-lg); }
102
102
 
103
103
 
104
104
  // Split button dropdowns
@@ -19,8 +19,12 @@
19
19
  .button-size(@padding-base-vertical; @padding-base-horizontal; @font-size-base; @line-height-base; @border-radius-base);
20
20
  .user-select(none);
21
21
 
22
- &:focus {
23
- .tab-focus();
22
+ &,
23
+ &:active,
24
+ &.active {
25
+ &:focus {
26
+ .tab-focus();
27
+ }
24
28
  }
25
29
 
26
30
  &:hover,
@@ -21,7 +21,7 @@
21
21
  // Account for jankitude on images
22
22
  > img,
23
23
  > a > img {
24
- .img-responsive();
24
+ &:extend(.img-responsive);
25
25
  line-height: 1;
26
26
  }
27
27
  }
@@ -206,8 +206,8 @@
206
206
 
207
207
  // Scale up the controls a smidge
208
208
  .carousel-control {
209
- .glyphicons-chevron-left,
210
- .glyphicons-chevron-right,
209
+ .glyphicon-chevron-left,
210
+ .glyphicon-chevron-right,
211
211
  .icon-prev,
212
212
  .icon-next {
213
213
  width: 30px;
@@ -133,9 +133,10 @@ output {
133
133
  .placeholder();
134
134
 
135
135
  // Disabled and read-only inputs
136
- // Note: HTML5 says that controls under a fieldset > legend:first-child won't
137
- // be disabled if the fieldset is disabled. Due to implementation difficulty,
138
- // we don't honor that edge case; we style them as disabled anyway.
136
+ //
137
+ // HTML5 says that controls under a fieldset > legend:first-child won't be
138
+ // disabled if the fieldset is disabled. Due to implementation difficulty, we
139
+ // don't honor that edge case; we style them as disabled anyway.
139
140
  &[disabled],
140
141
  &[readonly],
141
142
  fieldset[disabled] & {
@@ -150,10 +151,24 @@ output {
150
151
  }
151
152
  }
152
153
 
154
+
155
+ // Search inputs in iOS
156
+ //
157
+ // This overrides the extra rounded corners on search inputs in iOS so that our
158
+ // `.form-control` class can properly style them. Note that this cannot simply
159
+ // be added to `.form-control` as it's not specific enough. For details, see
160
+ // https://github.com/twbs/bootstrap/issues/11586.
161
+
162
+ input[type="search"] {
163
+ -webkit-appearance: none;
164
+ }
165
+
166
+
153
167
  // Special styles for iOS date input
154
168
  //
155
169
  // In Mobile Safari, date inputs require a pixel line-height that matches the
156
170
  // given height of the input.
171
+
157
172
  input[type="date"] {
158
173
  line-height: @input-height-base;
159
174
  }
@@ -334,6 +349,10 @@ input[type="checkbox"],
334
349
  width: auto; // Prevent labels from stacking above inputs in `.form-group`
335
350
  vertical-align: middle;
336
351
  }
352
+ // Input groups need that 100% width though
353
+ .input-group > .form-control {
354
+ width: 100%;
355
+ }
337
356
 
338
357
  .control-label {
339
358
  margin-bottom: 0;
@@ -53,11 +53,7 @@
53
53
  // Columns, offsets, pushes, and pulls for extra small devices like
54
54
  // smartphones.
55
55
 
56
- .make-grid-columns-float(xs);
57
- .make-grid(@grid-columns, xs, width);
58
- .make-grid(@grid-columns, xs, pull);
59
- .make-grid(@grid-columns, xs, push);
60
- .make-grid(@grid-columns, xs, offset);
56
+ .make-grid(xs);
61
57
 
62
58
 
63
59
  // Small grid
@@ -66,11 +62,7 @@
66
62
  // to tablets.
67
63
 
68
64
  @media (min-width: @screen-sm-min) {
69
- .make-grid-columns-float(sm);
70
- .make-grid(@grid-columns, sm, width);
71
- .make-grid(@grid-columns, sm, pull);
72
- .make-grid(@grid-columns, sm, push);
73
- .make-grid(@grid-columns, sm, offset);
65
+ .make-grid(sm);
74
66
  }
75
67
 
76
68
 
@@ -79,11 +71,7 @@
79
71
  // Columns, offsets, pushes, and pulls for the desktop device range.
80
72
 
81
73
  @media (min-width: @screen-md-min) {
82
- .make-grid-columns-float(md);
83
- .make-grid(@grid-columns, md, width);
84
- .make-grid(@grid-columns, md, pull);
85
- .make-grid(@grid-columns, md, push);
86
- .make-grid(@grid-columns, md, offset);
74
+ .make-grid(md);
87
75
  }
88
76
 
89
77
 
@@ -92,9 +80,5 @@
92
80
  // Columns, offsets, pushes, and pulls for the large desktop device range.
93
81
 
94
82
  @media (min-width: @screen-lg-min) {
95
- .make-grid-columns-float(lg);
96
- .make-grid(@grid-columns, lg, width);
97
- .make-grid(@grid-columns, lg, pull);
98
- .make-grid(@grid-columns, lg, push);
99
- .make-grid(@grid-columns, lg, offset);
83
+ .make-grid(lg);
100
84
  }
@@ -17,6 +17,11 @@
17
17
  }
18
18
 
19
19
  .form-control {
20
+ // Ensure that the input is always above the *appended* addon button for
21
+ // proper border colors.
22
+ position: relative;
23
+ z-index: 2;
24
+
20
25
  // IE9 fubars the placeholder attribute in text inputs and the arrows on
21
26
  // select elements in input groups. To fix it, we float the input. Details:
22
27
  // https://github.com/twbs/bootstrap/issues/11561#issuecomment-28936855
@@ -54,8 +54,7 @@
54
54
 
55
55
  // Placeholder text
56
56
  .placeholder(@color: @input-color-placeholder) {
57
- &:-moz-placeholder { color: @color; } // Firefox 4-18
58
- &::-moz-placeholder { color: @color; // Firefox 19+
57
+ &::-moz-placeholder { color: @color; // Firefox
59
58
  opacity: 1; } // See https://github.com/twbs/bootstrap/pull/11526
60
59
  &:-ms-input-placeholder { color: @color; } // Internet Explorer 10+
61
60
  &::-webkit-input-placeholder { color: @color; } // Safari and Chrome
@@ -253,7 +252,6 @@
253
252
  -webkit-user-select: @select;
254
253
  -moz-user-select: @select;
255
254
  -ms-user-select: @select; // IE10+
256
- -o-user-select: @select;
257
255
  user-select: @select;
258
256
  }
259
257
 
@@ -629,10 +627,7 @@
629
627
  }
630
628
 
631
629
  .responsive-invisibility() {
632
- &,
633
- tr&,
634
- th&,
635
- td& { display: none !important; }
630
+ display: none !important;
636
631
  }
637
632
 
638
633
 
@@ -796,7 +791,7 @@
796
791
  .col(1); // kickstart it
797
792
  }
798
793
 
799
- .make-grid-columns-float(@class) {
794
+ .float-grid-columns(@class) {
800
795
  .col(@index) when (@index = 1) { // initial
801
796
  @item: ~".col-@{class}-@{index}";
802
797
  .col((@index + 1), @item);
@@ -813,34 +808,42 @@
813
808
  .col(1); // kickstart it
814
809
  }
815
810
 
816
- .calc-grid(@index, @class, @type) when (@type = width) and (@index > 0) {
811
+ .calc-grid-column(@index, @class, @type) when (@type = width) and (@index > 0) {
817
812
  .col-@{class}-@{index} {
818
813
  width: percentage((@index / @grid-columns));
819
814
  }
820
815
  }
821
- .calc-grid(@index, @class, @type) when (@type = push) {
816
+ .calc-grid-column(@index, @class, @type) when (@type = push) {
822
817
  .col-@{class}-push-@{index} {
823
818
  left: percentage((@index / @grid-columns));
824
819
  }
825
820
  }
826
- .calc-grid(@index, @class, @type) when (@type = pull) {
821
+ .calc-grid-column(@index, @class, @type) when (@type = pull) {
827
822
  .col-@{class}-pull-@{index} {
828
823
  right: percentage((@index / @grid-columns));
829
824
  }
830
825
  }
831
- .calc-grid(@index, @class, @type) when (@type = offset) {
826
+ .calc-grid-column(@index, @class, @type) when (@type = offset) {
832
827
  .col-@{class}-offset-@{index} {
833
828
  margin-left: percentage((@index / @grid-columns));
834
829
  }
835
830
  }
836
831
 
837
832
  // Basic looping in LESS
838
- .make-grid(@index, @class, @type) when (@index >= 0) {
839
- .calc-grid(@index, @class, @type);
833
+ .loop-grid-columns(@index, @class, @type) when (@index >= 0) {
834
+ .calc-grid-column(@index, @class, @type);
840
835
  // next iteration
841
- .make-grid((@index - 1), @class, @type);
836
+ .loop-grid-columns((@index - 1), @class, @type);
842
837
  }
843
838
 
839
+ // Create grid for specific class
840
+ .make-grid(@class) {
841
+ .float-grid-columns(@class);
842
+ .loop-grid-columns(@grid-columns, @class, width);
843
+ .loop-grid-columns(@grid-columns, @class, pull);
844
+ .loop-grid-columns(@grid-columns, @class, push);
845
+ .loop-grid-columns(@grid-columns, @class, offset);
846
+ }
844
847
 
845
848
  // Form validation states
846
849
  //
@@ -121,7 +121,6 @@
121
121
 
122
122
  // Scale up the modal
123
123
  @media (min-width: @screen-sm-min) {
124
-
125
124
  // Automatically set modal's width for larger viewports
126
125
  .modal-dialog {
127
126
  width: @modal-md;
@@ -133,6 +132,8 @@
133
132
 
134
133
  // Modal sizes
135
134
  .modal-sm { width: @modal-sm; }
136
- .modal-lg { width: @modal-lg; }
135
+ }
137
136
 
137
+ @media (min-width: @screen-md-min) {
138
+ .modal-lg { width: @modal-lg; }
138
139
  }
@@ -155,7 +155,7 @@
155
155
  padding: @navbar-padding-vertical @navbar-padding-horizontal;
156
156
  font-size: @font-size-large;
157
157
  line-height: @line-height-computed;
158
- height: @line-height-computed;
158
+ height: @navbar-height;
159
159
 
160
160
  &:hover,
161
161
  &:focus {
@@ -18,6 +18,37 @@
18
18
  &:extend(.clearfix all);
19
19
  }
20
20
 
21
+ // Optional heading
22
+ .panel-heading {
23
+ padding: 10px 15px;
24
+ border-bottom: 1px solid transparent;
25
+ .border-top-radius((@panel-border-radius - 1));
26
+
27
+ > .dropdown .dropdown-toggle {
28
+ color: inherit;
29
+ }
30
+ }
31
+
32
+ // Within heading, strip any `h*` tag of its default margins for spacing.
33
+ .panel-title {
34
+ margin-top: 0;
35
+ margin-bottom: 0;
36
+ font-size: ceil((@font-size-base * 1.125));
37
+ color: inherit;
38
+
39
+ > a {
40
+ color: inherit;
41
+ }
42
+ }
43
+
44
+ // Optional footer (stays gray in every modifier class)
45
+ .panel-footer {
46
+ padding: 10px 15px;
47
+ background-color: @panel-footer-bg;
48
+ border-top: 1px solid @panel-inner-border;
49
+ .border-bottom-radius((@panel-border-radius - 1));
50
+ }
51
+
21
52
 
22
53
  // List groups in panels
23
54
  //
@@ -27,25 +58,23 @@
27
58
  .panel {
28
59
  > .list-group {
29
60
  margin-bottom: 0;
61
+
30
62
  .list-group-item {
31
63
  border-width: 1px 0;
32
64
  border-radius: 0;
33
- &:first-child {
34
- border-top: 0;
35
- }
36
- &:last-child {
37
- border-bottom: 0;
38
- }
39
65
  }
66
+
40
67
  // Add border top radius for first one
41
68
  &:first-child {
42
69
  .list-group-item:first-child {
70
+ border-top: 0;
43
71
  .border-top-radius((@panel-border-radius - 1));
44
72
  }
45
73
  }
46
74
  // Add border bottom radius for last one
47
75
  &:last-child {
48
76
  .list-group-item:last-child {
77
+ border-bottom: 0;
49
78
  .border-bottom-radius((@panel-border-radius - 1));
50
79
  }
51
80
  }
@@ -72,6 +101,8 @@
72
101
  // Add border top radius for first one
73
102
  > .table:first-child,
74
103
  > .table-responsive:first-child > .table:first-child {
104
+ .border-top-radius((@panel-border-radius - 1));
105
+
75
106
  > thead:first-child,
76
107
  > tbody:first-child {
77
108
  > tr:first-child {
@@ -89,6 +120,8 @@
89
120
  // Add border bottom radius for last one
90
121
  > .table:last-child,
91
122
  > .table-responsive:last-child > .table:last-child {
123
+ .border-bottom-radius((@panel-border-radius - 1));
124
+
92
125
  > tbody:last-child,
93
126
  > tfoot:last-child {
94
127
  > tr:last-child {
@@ -126,12 +159,22 @@
126
159
  > td:last-child {
127
160
  border-right: 0;
128
161
  }
129
- &:first-child > th,
130
- &:first-child > td {
131
- border-top: 0;
162
+ }
163
+ }
164
+ > thead,
165
+ > tbody {
166
+ > tr:first-child {
167
+ > td,
168
+ > th {
169
+ border-bottom: 0;
132
170
  }
133
- &:last-child > th,
134
- &:last-child > td {
171
+ }
172
+ }
173
+ > tbody,
174
+ > tfoot {
175
+ > tr:last-child {
176
+ > td,
177
+ > th {
135
178
  border-bottom: 0;
136
179
  }
137
180
  }
@@ -144,38 +187,6 @@
144
187
  }
145
188
 
146
189
 
147
- // Optional heading
148
- .panel-heading {
149
- padding: 10px 15px;
150
- border-bottom: 1px solid transparent;
151
- .border-top-radius((@panel-border-radius - 1));
152
-
153
- > .dropdown .dropdown-toggle {
154
- color: inherit;
155
- }
156
- }
157
-
158
- // Within heading, strip any `h*` tag of its default margins for spacing.
159
- .panel-title {
160
- margin-top: 0;
161
- margin-bottom: 0;
162
- font-size: ceil((@font-size-base * 1.125));
163
- color: inherit;
164
-
165
- > a {
166
- color: inherit;
167
- }
168
- }
169
-
170
- // Optional footer (stays gray in every modifier class)
171
- .panel-footer {
172
- padding: 10px 15px;
173
- background-color: @panel-footer-bg;
174
- border-top: 1px solid @panel-inner-border;
175
- .border-bottom-radius((@panel-border-radius - 1));
176
- }
177
-
178
-
179
190
  // Collapsable panels (aka, accordion)
180
191
  //
181
192
  // Wrap a series of panels in `.panel-group` to turn them into an accordion with
@@ -23,10 +23,10 @@
23
23
  white-space: normal;
24
24
 
25
25
  // Offset the popover to account for the popover arrow
26
- &.top { margin-top: -10px; }
27
- &.right { margin-left: 10px; }
28
- &.bottom { margin-top: 10px; }
29
- &.left { margin-left: -10px; }
26
+ &.top { margin-top: -@popover-arrow-width; }
27
+ &.right { margin-left: @popover-arrow-width; }
28
+ &.bottom { margin-top: @popover-arrow-width; }
29
+ &.left { margin-left: -@popover-arrow-width; }
30
30
  }
31
31
 
32
32
  .popover-title {
@@ -48,7 +48,7 @@
48
48
  //
49
49
  // .arrow is outer, .arrow:after is inner
50
50
 
51
- .popover .arrow {
51
+ .popover > .arrow {
52
52
  &,
53
53
  &:after {
54
54
  position: absolute;
@@ -59,16 +59,16 @@
59
59
  border-style: solid;
60
60
  }
61
61
  }
62
- .popover .arrow {
62
+ .popover > .arrow {
63
63
  border-width: @popover-arrow-outer-width;
64
64
  }
65
- .popover .arrow:after {
65
+ .popover > .arrow:after {
66
66
  border-width: @popover-arrow-width;
67
67
  content: "";
68
68
  }
69
69
 
70
70
  .popover {
71
- &.top .arrow {
71
+ &.top > .arrow {
72
72
  left: 50%;
73
73
  margin-left: -@popover-arrow-outer-width;
74
74
  border-bottom-width: 0;
@@ -83,7 +83,7 @@
83
83
  border-top-color: @popover-arrow-color;
84
84
  }
85
85
  }
86
- &.right .arrow {
86
+ &.right > .arrow {
87
87
  top: 50%;
88
88
  left: -@popover-arrow-outer-width;
89
89
  margin-top: -@popover-arrow-outer-width;
@@ -98,7 +98,7 @@
98
98
  border-right-color: @popover-arrow-color;
99
99
  }
100
100
  }
101
- &.bottom .arrow {
101
+ &.bottom > .arrow {
102
102
  left: 50%;
103
103
  margin-left: -@popover-arrow-outer-width;
104
104
  border-top-width: 0;
@@ -114,7 +114,7 @@
114
114
  }
115
115
  }
116
116
 
117
- &.left .arrow {
117
+ &.left > .arrow {
118
118
  top: 50%;
119
119
  right: -@popover-arrow-outer-width;
120
120
  margin-top: -@popover-arrow-outer-width;