rails_admin 0.6.5 → 0.6.6

Sign up to get free protection for your applications and to get access to all the features.

Potentially problematic release.


This version of rails_admin might be problematic. Click here for more details.

Files changed (133) hide show
  1. checksums.yaml +4 -4
  2. data/app/assets/javascripts/rails_admin/bootstrap/bootstrap-affix.js +99 -74
  3. data/app/assets/javascripts/rails_admin/bootstrap/bootstrap-alert.js +48 -55
  4. data/app/assets/javascripts/rails_admin/bootstrap/bootstrap-button.js +70 -65
  5. data/app/assets/javascripts/rails_admin/bootstrap/bootstrap-carousel.js +163 -147
  6. data/app/assets/javascripts/rails_admin/bootstrap/bootstrap-collapse.js +117 -114
  7. data/app/assets/javascripts/rails_admin/bootstrap/bootstrap-dropdown.js +89 -107
  8. data/app/assets/javascripts/rails_admin/bootstrap/bootstrap-modal.js +208 -175
  9. data/app/assets/javascripts/rails_admin/bootstrap/bootstrap-popover.js +77 -78
  10. data/app/assets/javascripts/rails_admin/bootstrap/bootstrap-scrollspy.js +137 -129
  11. data/app/assets/javascripts/rails_admin/bootstrap/bootstrap-tab.js +85 -101
  12. data/app/assets/javascripts/rails_admin/bootstrap/bootstrap-tooltip.js +364 -268
  13. data/app/assets/javascripts/rails_admin/bootstrap/bootstrap-transition.js +51 -52
  14. data/app/assets/javascripts/rails_admin/bootstrap/bootstrap-typeahead.js +1782 -335
  15. data/app/assets/javascripts/rails_admin/ra.filter-box.js +1 -1
  16. data/app/assets/javascripts/rails_admin/ra.filtering-multiselect.js +3 -3
  17. data/app/assets/javascripts/rails_admin/ra.filtering-select.js +1 -1
  18. data/app/assets/javascripts/rails_admin/ra.remote-form.js +6 -2
  19. data/app/assets/stylesheets/rails_admin/base/theming.scss +34 -14
  20. data/app/assets/stylesheets/rails_admin/bootstrap/_alerts.scss +47 -58
  21. data/app/assets/stylesheets/rails_admin/bootstrap/_badges.scss +57 -0
  22. data/app/assets/stylesheets/rails_admin/bootstrap/_breadcrumbs.scss +12 -10
  23. data/app/assets/stylesheets/rails_admin/bootstrap/_button-groups.scss +163 -152
  24. data/app/assets/stylesheets/rails_admin/bootstrap/_buttons.scss +98 -169
  25. data/app/assets/stylesheets/rails_admin/bootstrap/_carousel.scss +151 -66
  26. data/app/assets/stylesheets/rails_admin/bootstrap/_close.scss +11 -8
  27. data/app/assets/stylesheets/rails_admin/bootstrap/_code.scss +36 -29
  28. data/app/assets/stylesheets/rails_admin/bootstrap/_component-animations.scss +16 -3
  29. data/app/assets/stylesheets/rails_admin/bootstrap/_dropdowns.scss +115 -148
  30. data/app/assets/stylesheets/rails_admin/bootstrap/_forms.scss +396 -547
  31. data/app/assets/stylesheets/rails_admin/bootstrap/_glyphicons.scss +237 -0
  32. data/app/assets/stylesheets/rails_admin/bootstrap/_grid.scss +74 -11
  33. data/app/assets/stylesheets/rails_admin/bootstrap/_input-groups.scss +166 -0
  34. data/app/assets/stylesheets/rails_admin/bootstrap/_jumbotron.scss +48 -0
  35. data/app/assets/stylesheets/rails_admin/bootstrap/_labels.scss +66 -0
  36. data/app/assets/stylesheets/rails_admin/bootstrap/_list-group.scss +131 -0
  37. data/app/assets/stylesheets/rails_admin/bootstrap/_media.scss +8 -7
  38. data/app/assets/stylesheets/rails_admin/bootstrap/_mixins.scss +36 -693
  39. data/app/assets/stylesheets/rails_admin/bootstrap/_modals.scss +108 -53
  40. data/app/assets/stylesheets/rails_admin/bootstrap/_navbar.scss +545 -383
  41. data/app/assets/stylesheets/rails_admin/bootstrap/_navs.scss +191 -358
  42. data/app/assets/stylesheets/rails_admin/bootstrap/_normalize.scss +425 -0
  43. data/app/assets/stylesheets/rails_admin/bootstrap/_pager.scss +45 -33
  44. data/app/assets/stylesheets/rails_admin/bootstrap/_pagination.scss +70 -105
  45. data/app/assets/stylesheets/rails_admin/bootstrap/_panels.scss +243 -0
  46. data/app/assets/stylesheets/rails_admin/bootstrap/_popovers.scss +61 -61
  47. data/app/assets/stylesheets/rails_admin/bootstrap/_print.scss +101 -0
  48. data/app/assets/stylesheets/rails_admin/bootstrap/_progress-bars.scss +56 -73
  49. data/app/assets/stylesheets/rails_admin/bootstrap/_responsive-embed.scss +34 -0
  50. data/app/assets/stylesheets/rails_admin/bootstrap/_responsive-utilities.scss +150 -50
  51. data/app/assets/stylesheets/rails_admin/bootstrap/_scaffolding.scss +120 -23
  52. data/app/assets/stylesheets/rails_admin/bootstrap/_tables.scss +168 -170
  53. data/app/assets/stylesheets/rails_admin/bootstrap/_theme.scss +258 -0
  54. data/app/assets/stylesheets/rails_admin/bootstrap/_thumbnails.scss +27 -42
  55. data/app/assets/stylesheets/rails_admin/bootstrap/_tooltip.scss +49 -24
  56. data/app/assets/stylesheets/rails_admin/bootstrap/_type.scss +200 -143
  57. data/app/assets/stylesheets/rails_admin/bootstrap/_utilities.scss +33 -21
  58. data/app/assets/stylesheets/rails_admin/bootstrap/_variables.scss +764 -215
  59. data/app/assets/stylesheets/rails_admin/bootstrap/_wells.scss +7 -7
  60. data/app/assets/stylesheets/rails_admin/bootstrap/bootstrap.scss +47 -60
  61. data/app/assets/stylesheets/rails_admin/bootstrap/mixins/_alerts.scss +14 -0
  62. data/app/assets/stylesheets/rails_admin/bootstrap/mixins/_background-variant.scss +11 -0
  63. data/app/assets/stylesheets/rails_admin/bootstrap/mixins/_border-radius.scss +18 -0
  64. data/app/assets/stylesheets/rails_admin/bootstrap/mixins/_buttons.scss +50 -0
  65. data/app/assets/stylesheets/rails_admin/bootstrap/mixins/_center-block.scss +7 -0
  66. data/app/assets/stylesheets/rails_admin/bootstrap/mixins/_clearfix.scss +22 -0
  67. data/app/assets/stylesheets/rails_admin/bootstrap/mixins/_forms.scss +84 -0
  68. data/app/assets/stylesheets/rails_admin/bootstrap/mixins/_gradients.scss +58 -0
  69. data/app/assets/stylesheets/rails_admin/bootstrap/mixins/_grid-framework.scss +81 -0
  70. data/app/assets/stylesheets/rails_admin/bootstrap/mixins/_grid.scss +122 -0
  71. data/app/assets/stylesheets/rails_admin/bootstrap/mixins/_hide-text.scss +21 -0
  72. data/app/assets/stylesheets/rails_admin/bootstrap/mixins/_image.scss +34 -0
  73. data/app/assets/stylesheets/rails_admin/bootstrap/mixins/_labels.scss +12 -0
  74. data/app/assets/stylesheets/rails_admin/bootstrap/mixins/_list-group.scss +31 -0
  75. data/app/assets/stylesheets/rails_admin/bootstrap/mixins/_nav-divider.scss +10 -0
  76. data/app/assets/stylesheets/rails_admin/bootstrap/mixins/_nav-vertical-align.scss +9 -0
  77. data/app/assets/stylesheets/rails_admin/bootstrap/mixins/_opacity.scss +8 -0
  78. data/app/assets/stylesheets/rails_admin/bootstrap/mixins/_pagination.scss +23 -0
  79. data/app/assets/stylesheets/rails_admin/bootstrap/mixins/_panels.scss +24 -0
  80. data/app/assets/stylesheets/rails_admin/bootstrap/mixins/_progress-bar.scss +10 -0
  81. data/app/assets/stylesheets/rails_admin/bootstrap/mixins/_reset-filter.scss +8 -0
  82. data/app/assets/stylesheets/rails_admin/bootstrap/mixins/_resize.scss +6 -0
  83. data/app/assets/stylesheets/rails_admin/bootstrap/mixins/_responsive-visibility.scss +21 -0
  84. data/app/assets/stylesheets/rails_admin/bootstrap/mixins/_size.scss +10 -0
  85. data/app/assets/stylesheets/rails_admin/bootstrap/mixins/_tab-focus.scss +9 -0
  86. data/app/assets/stylesheets/rails_admin/bootstrap/mixins/_table-row.scss +28 -0
  87. data/app/assets/stylesheets/rails_admin/bootstrap/mixins/_text-emphasis.scss +11 -0
  88. data/app/assets/stylesheets/rails_admin/bootstrap/mixins/_text-overflow.scss +8 -0
  89. data/app/assets/stylesheets/rails_admin/bootstrap/mixins/_vendor-prefixes.scss +219 -0
  90. data/app/assets/stylesheets/rails_admin/ra.calendar-additions.scss +17 -0
  91. data/app/assets/stylesheets/rails_admin/rails_admin.scss.erb +9 -5
  92. data/app/helpers/rails_admin/application_helper.rb +20 -19
  93. data/app/helpers/rails_admin/form_builder.rb +14 -11
  94. data/app/views/kaminari/twitter-bootstrap/_paginator.html.haml +8 -9
  95. data/app/views/layouts/rails_admin/_navigation.html.haml +5 -5
  96. data/app/views/layouts/rails_admin/_secondary_navigation.html.haml +1 -1
  97. data/app/views/layouts/rails_admin/application.html.haml +9 -8
  98. data/app/views/layouts/rails_admin/pjax.html.haml +4 -3
  99. data/app/views/rails_admin/main/_form_datetime.html.haml +2 -1
  100. data/app/views/rails_admin/main/_form_field.html.haml +1 -1
  101. data/app/views/rails_admin/main/_form_text.html.haml +1 -1
  102. data/app/views/rails_admin/main/_submit_buttons.html.haml +1 -0
  103. data/app/views/rails_admin/main/dashboard.html.haml +1 -1
  104. data/app/views/rails_admin/main/export.html.haml +19 -16
  105. data/app/views/rails_admin/main/index.html.haml +11 -7
  106. data/app/views/rails_admin/main/show.html.haml +1 -1
  107. data/lib/rails_admin/adapters/active_record.rb +2 -2
  108. data/lib/rails_admin/adapters/mongoid/property.rb +1 -1
  109. data/lib/rails_admin/config/actions/bulk_delete.rb +0 -1
  110. data/lib/rails_admin/config/actions/edit.rb +0 -2
  111. data/lib/rails_admin/config/actions/export.rb +0 -2
  112. data/lib/rails_admin/config/actions/index.rb +0 -3
  113. data/lib/rails_admin/config/actions/new.rb +0 -2
  114. data/lib/rails_admin/config/configurable.rb +1 -1
  115. data/lib/rails_admin/config/fields/base.rb +9 -0
  116. data/lib/rails_admin/config/fields/factories/enum.rb +2 -3
  117. data/lib/rails_admin/config/fields/types/polymorphic_association.rb +4 -0
  118. data/lib/rails_admin/config/model.rb +2 -1
  119. data/lib/rails_admin/extensions/paper_trail/auditing_adapter.rb +2 -2
  120. data/lib/rails_admin/support/csv_converter.rb +22 -42
  121. data/lib/rails_admin/version.rb +1 -1
  122. metadata +59 -18
  123. data/app/assets/stylesheets/rails_admin/bootstrap/_accordion.scss +0 -34
  124. data/app/assets/stylesheets/rails_admin/bootstrap/_hero-unit.scss +0 -25
  125. data/app/assets/stylesheets/rails_admin/bootstrap/_labels-badges.scss +0 -83
  126. data/app/assets/stylesheets/rails_admin/bootstrap/_layouts.scss +0 -16
  127. data/app/assets/stylesheets/rails_admin/bootstrap/_reset.scss +0 -216
  128. data/app/assets/stylesheets/rails_admin/bootstrap/_responsive-1200px-min.scss +0 -28
  129. data/app/assets/stylesheets/rails_admin/bootstrap/_responsive-767px-max.scss +0 -193
  130. data/app/assets/stylesheets/rails_admin/bootstrap/_responsive-768px-979px.scss +0 -19
  131. data/app/assets/stylesheets/rails_admin/bootstrap/_responsive-navbar.scss +0 -189
  132. data/app/assets/stylesheets/rails_admin/bootstrap/_sprites.scss +0 -197
  133. data/app/assets/stylesheets/rails_admin/bootstrap/responsive.scss +0 -48
@@ -0,0 +1,258 @@
1
+
2
+ //
3
+ // Load core variables and mixins
4
+ // --------------------------------------------------
5
+
6
+ @import "variables";
7
+ @import "mixins";
8
+
9
+
10
+
11
+ //
12
+ // Buttons
13
+ // --------------------------------------------------
14
+
15
+ // Common styles
16
+ .btn-default,
17
+ .btn-primary,
18
+ .btn-success,
19
+ .btn-info,
20
+ .btn-warning,
21
+ .btn-danger {
22
+ text-shadow: 0 -1px 0 rgba(0,0,0,.2);
23
+ $shadow: inset 0 1px 0 rgba(255,255,255,.15), 0 1px 1px rgba(0,0,0,.075);
24
+ @include box-shadow($shadow);
25
+
26
+ // Reset the shadow
27
+ &:active,
28
+ &.active {
29
+ @include box-shadow(inset 0 3px 5px rgba(0,0,0,.125));
30
+ }
31
+ }
32
+
33
+ // Mixin for generating new styles
34
+ @mixin btn-styles($btn-color: #555) {
35
+ @include gradient-vertical($start-color: $btn-color, $end-color: darken($btn-color, 12%));
36
+ @include reset-filter(); // Disable gradients for IE9 because filter bleeds through rounded corners
37
+ background-repeat: repeat-x;
38
+ border-color: darken($btn-color, 14%);
39
+
40
+ &:hover,
41
+ &:focus {
42
+ background-color: darken($btn-color, 12%);
43
+ background-position: 0 -15px;
44
+ }
45
+
46
+ &:active,
47
+ &.active {
48
+ background-color: darken($btn-color, 12%);
49
+ border-color: darken($btn-color, 14%);
50
+ }
51
+
52
+ &:disabled,
53
+ &[disabled] {
54
+ background-color: darken($btn-color, 12%);
55
+ background-image: none;
56
+ }
57
+ }
58
+
59
+ // Common styles
60
+ .btn {
61
+ // Remove the gradient for the pressed/active state
62
+ &:active,
63
+ &.active {
64
+ background-image: none;
65
+ }
66
+ }
67
+
68
+ // Apply the mixin to the buttons
69
+ .btn-default { @include btn-styles($btn-default-bg); text-shadow: 0 1px 0 #fff; border-color: #ccc; }
70
+ .btn-primary { @include btn-styles($btn-primary-bg); }
71
+ .btn-success { @include btn-styles($btn-success-bg); }
72
+ .btn-info { @include btn-styles($btn-info-bg); }
73
+ .btn-warning { @include btn-styles($btn-warning-bg); }
74
+ .btn-danger { @include btn-styles($btn-danger-bg); }
75
+
76
+
77
+
78
+ //
79
+ // Images
80
+ // --------------------------------------------------
81
+
82
+ .thumbnail,
83
+ .img-thumbnail {
84
+ @include box-shadow(0 1px 2px rgba(0,0,0,.075));
85
+ }
86
+
87
+
88
+
89
+ //
90
+ // Dropdowns
91
+ // --------------------------------------------------
92
+
93
+ .dropdown-menu > li > a:hover,
94
+ .dropdown-menu > li > a:focus {
95
+ @include gradient-vertical($start-color: $dropdown-link-hover-bg, $end-color: darken($dropdown-link-hover-bg, 5%));
96
+ background-color: darken($dropdown-link-hover-bg, 5%);
97
+ }
98
+ .dropdown-menu > .active > a,
99
+ .dropdown-menu > .active > a:hover,
100
+ .dropdown-menu > .active > a:focus {
101
+ @include gradient-vertical($start-color: $dropdown-link-active-bg, $end-color: darken($dropdown-link-active-bg, 5%));
102
+ background-color: darken($dropdown-link-active-bg, 5%);
103
+ }
104
+
105
+
106
+
107
+ //
108
+ // Navbar
109
+ // --------------------------------------------------
110
+
111
+ // Default navbar
112
+ .navbar-default {
113
+ @include gradient-vertical($start-color: lighten($navbar-default-bg, 10%), $end-color: $navbar-default-bg);
114
+ @include reset-filter(); // Remove gradient in IE<10 to fix bug where dropdowns don't get triggered
115
+ border-radius: $navbar-border-radius;
116
+ $shadow: inset 0 1px 0 rgba(255,255,255,.15), 0 1px 5px rgba(0,0,0,.075);
117
+ @include box-shadow($shadow);
118
+
119
+ .navbar-nav > .active > a {
120
+ @include gradient-vertical($start-color: darken($navbar-default-bg, 5%), $end-color: darken($navbar-default-bg, 2%));
121
+ @include box-shadow(inset 0 3px 9px rgba(0,0,0,.075));
122
+ }
123
+ }
124
+ .navbar-brand,
125
+ .navbar-nav > li > a {
126
+ text-shadow: 0 1px 0 rgba(255,255,255,.25);
127
+ }
128
+
129
+ // Inverted navbar
130
+ .navbar-inverse {
131
+ @include gradient-vertical($start-color: lighten($navbar-inverse-bg, 10%), $end-color: $navbar-inverse-bg);
132
+ @include reset-filter(); // Remove gradient in IE<10 to fix bug where dropdowns don't get triggered
133
+
134
+ .navbar-nav > .active > a {
135
+ @include gradient-vertical($start-color: $navbar-inverse-bg, $end-color: lighten($navbar-inverse-bg, 2.5%));
136
+ @include box-shadow(inset 0 3px 9px rgba(0,0,0,.25));
137
+ }
138
+
139
+ .navbar-brand,
140
+ .navbar-nav > li > a {
141
+ text-shadow: 0 -1px 0 rgba(0,0,0,.25);
142
+ }
143
+ }
144
+
145
+ // Undo rounded corners in static and fixed navbars
146
+ .navbar-static-top,
147
+ .navbar-fixed-top,
148
+ .navbar-fixed-bottom {
149
+ border-radius: 0;
150
+ }
151
+
152
+
153
+
154
+ //
155
+ // Alerts
156
+ // --------------------------------------------------
157
+
158
+ // Common styles
159
+ .alert {
160
+ text-shadow: 0 1px 0 rgba(255,255,255,.2);
161
+ $shadow: inset 0 1px 0 rgba(255,255,255,.25), 0 1px 2px rgba(0,0,0,.05);
162
+ @include box-shadow($shadow);
163
+ }
164
+
165
+ // Mixin for generating new styles
166
+ @mixin alert-styles($color) {
167
+ @include gradient-vertical($start-color: $color, $end-color: darken($color, 7.5%));
168
+ border-color: darken($color, 15%);
169
+ }
170
+
171
+ // Apply the mixin to the alerts
172
+ .alert-success { @include alert-styles($alert-success-bg); }
173
+ .alert-info { @include alert-styles($alert-info-bg); }
174
+ .alert-warning { @include alert-styles($alert-warning-bg); }
175
+ .alert-danger { @include alert-styles($alert-danger-bg); }
176
+
177
+
178
+
179
+ //
180
+ // Progress bars
181
+ // --------------------------------------------------
182
+
183
+ // Give the progress background some depth
184
+ .progress {
185
+ @include gradient-vertical($start-color: darken($progress-bg, 4%), $end-color: $progress-bg)
186
+ }
187
+
188
+ // Mixin for generating new styles
189
+ @mixin progress-bar-styles($color) {
190
+ @include gradient-vertical($start-color: $color, $end-color: darken($color, 10%));
191
+ }
192
+
193
+ // Apply the mixin to the progress bars
194
+ .progress-bar { @include progress-bar-styles($progress-bar-bg); }
195
+ .progress-bar-success { @include progress-bar-styles($progress-bar-success-bg); }
196
+ .progress-bar-info { @include progress-bar-styles($progress-bar-info-bg); }
197
+ .progress-bar-warning { @include progress-bar-styles($progress-bar-warning-bg); }
198
+ .progress-bar-danger { @include progress-bar-styles($progress-bar-danger-bg); }
199
+
200
+ // Reset the striped class because our mixins don't do multiple gradients and
201
+ // the above custom styles override the new `.progress-bar-striped` in v3.2.0.
202
+ .progress-bar-striped {
203
+ @include gradient-striped();
204
+ }
205
+
206
+
207
+ //
208
+ // List groups
209
+ // --------------------------------------------------
210
+
211
+ .list-group {
212
+ border-radius: $border-radius-base;
213
+ @include box-shadow(0 1px 2px rgba(0,0,0,.075));
214
+ }
215
+ .list-group-item.active,
216
+ .list-group-item.active:hover,
217
+ .list-group-item.active:focus {
218
+ text-shadow: 0 -1px 0 darken($list-group-active-bg, 10%);
219
+ @include gradient-vertical($start-color: $list-group-active-bg, $end-color: darken($list-group-active-bg, 7.5%));
220
+ border-color: darken($list-group-active-border, 7.5%);
221
+ }
222
+
223
+
224
+
225
+ //
226
+ // Panels
227
+ // --------------------------------------------------
228
+
229
+ // Common styles
230
+ .panel {
231
+ @include box-shadow(0 1px 2px rgba(0,0,0,.05));
232
+ }
233
+
234
+ // Mixin for generating new styles
235
+ @mixin panel-heading-styles($color) {
236
+ @include gradient-vertical($start-color: $color, $end-color: darken($color, 5%));
237
+ }
238
+
239
+ // Apply the mixin to the panel headings only
240
+ .panel-default > .panel-heading { @include panel-heading-styles($panel-default-heading-bg); }
241
+ .panel-primary > .panel-heading { @include panel-heading-styles($panel-primary-heading-bg); }
242
+ .panel-success > .panel-heading { @include panel-heading-styles($panel-success-heading-bg); }
243
+ .panel-info > .panel-heading { @include panel-heading-styles($panel-info-heading-bg); }
244
+ .panel-warning > .panel-heading { @include panel-heading-styles($panel-warning-heading-bg); }
245
+ .panel-danger > .panel-heading { @include panel-heading-styles($panel-danger-heading-bg); }
246
+
247
+
248
+
249
+ //
250
+ // Wells
251
+ // --------------------------------------------------
252
+
253
+ .well {
254
+ @include gradient-vertical($start-color: darken($well-bg, 5%), $end-color: $well-bg);
255
+ border-color: darken($well-bg, 10%);
256
+ $shadow: inset 0 1px 3px rgba(0,0,0,.05), 0 1px 0 rgba(255,255,255,.1);
257
+ @include box-shadow($shadow);
258
+ }
@@ -3,51 +3,36 @@
3
3
  // --------------------------------------------------
4
4
 
5
5
 
6
- // Note: `.thumbnails` and `.thumbnails > li` are overriden in responsive files
7
-
8
- // Make wrapper ul behave like the grid
9
- .thumbnails {
10
- margin-left: -$gridGutterWidth;
11
- list-style: none;
12
- @include clearfix();
13
- }
14
- // Fluid rows have no left margin
15
- .row-fluid .thumbnails {
16
- margin-left: 0;
17
- }
18
-
19
- // Float li to make thumbnails appear in a row
20
- .thumbnails > li {
21
- float: left; // Explicity set the float since we don't require .span* classes
22
- margin-bottom: $baseLineHeight;
23
- margin-left: $gridGutterWidth;
24
- }
25
-
26
- // The actual thumbnail (can be `a` or `div`)
6
+ // Mixin and adjust the regular image class
27
7
  .thumbnail {
28
8
  display: block;
29
- padding: 4px;
30
- line-height: $baseLineHeight;
31
- border: 1px solid #ddd;
32
- @include border-radius($baseBorderRadius);
33
- @include box-shadow(0 1px 3px rgba(0,0,0,.055));
9
+ padding: $thumbnail-padding;
10
+ margin-bottom: $line-height-computed;
11
+ line-height: $line-height-base;
12
+ background-color: $thumbnail-bg;
13
+ border: 1px solid $thumbnail-border;
14
+ border-radius: $thumbnail-border-radius;
34
15
  @include transition(all .2s ease-in-out);
35
- }
36
- // Add a hover/focus state for linked versions only
37
- a.thumbnail:hover,
38
- a.thumbnail:focus {
39
- border-color: $linkColor;
40
- @include box-shadow(0 1px 4px rgba(0,105,214,.25));
41
- }
42
16
 
43
- // Images and captions
44
- .thumbnail > img {
45
- display: block;
46
- max-width: 100%;
47
- margin-left: auto;
48
- margin-right: auto;
17
+ > img,
18
+ a > img {
19
+ @include img-responsive();
20
+ margin-left: auto;
21
+ margin-right: auto;
22
+ }
23
+
24
+ // [converter] extracted a&:hover, a&:focus, a&.active to a.thumbnail:hover, a.thumbnail:focus, a.thumbnail.active
25
+
26
+ // Image captions
27
+ .caption {
28
+ padding: $thumbnail-caption-padding;
29
+ color: $thumbnail-caption-color;
30
+ }
49
31
  }
50
- .thumbnail .caption {
51
- padding: 9px;
52
- color: $gray;
32
+
33
+ // Add a hover state for linked versions only
34
+ a.thumbnail:hover,
35
+ a.thumbnail:focus,
36
+ a.thumbnail.active {
37
+ border-color: $link-color;
53
38
  }
@@ -6,28 +6,29 @@
6
6
  // Base class
7
7
  .tooltip {
8
8
  position: absolute;
9
- z-index: $zindexTooltip;
9
+ z-index: $zindex-tooltip;
10
10
  display: block;
11
11
  visibility: visible;
12
- font-size: 11px;
12
+ font-size: $font-size-small;
13
13
  line-height: 1.4;
14
14
  @include opacity(0);
15
- &.in { @include opacity(80); }
16
- &.top { margin-top: -3px; padding: 5px 0; }
17
- &.right { margin-left: 3px; padding: 0 5px; }
18
- &.bottom { margin-top: 3px; padding: 5px 0; }
19
- &.left { margin-left: -3px; padding: 0 5px; }
15
+
16
+ &.in { @include opacity($tooltip-opacity); }
17
+ &.top { margin-top: -3px; padding: $tooltip-arrow-width 0; }
18
+ &.right { margin-left: 3px; padding: 0 $tooltip-arrow-width; }
19
+ &.bottom { margin-top: 3px; padding: $tooltip-arrow-width 0; }
20
+ &.left { margin-left: -3px; padding: 0 $tooltip-arrow-width; }
20
21
  }
21
22
 
22
23
  // Wrapper for the tooltip content
23
24
  .tooltip-inner {
24
- max-width: 200px;
25
- padding: 8px;
26
- color: $tooltipColor;
25
+ max-width: $tooltip-max-width;
26
+ padding: 3px 8px;
27
+ color: $tooltip-color;
27
28
  text-align: center;
28
29
  text-decoration: none;
29
- background-color: $tooltipBackground;
30
- @include border-radius($baseBorderRadius);
30
+ background-color: $tooltip-bg;
31
+ border-radius: $border-radius-base;
31
32
  }
32
33
 
33
34
  // Arrows
@@ -42,29 +43,53 @@
42
43
  &.top .tooltip-arrow {
43
44
  bottom: 0;
44
45
  left: 50%;
45
- margin-left: -$tooltipArrowWidth;
46
- border-width: $tooltipArrowWidth $tooltipArrowWidth 0;
47
- border-top-color: $tooltipArrowColor;
46
+ margin-left: -$tooltip-arrow-width;
47
+ border-width: $tooltip-arrow-width $tooltip-arrow-width 0;
48
+ border-top-color: $tooltip-arrow-color;
49
+ }
50
+ &.top-left .tooltip-arrow {
51
+ bottom: 0;
52
+ left: $tooltip-arrow-width;
53
+ border-width: $tooltip-arrow-width $tooltip-arrow-width 0;
54
+ border-top-color: $tooltip-arrow-color;
55
+ }
56
+ &.top-right .tooltip-arrow {
57
+ bottom: 0;
58
+ right: $tooltip-arrow-width;
59
+ border-width: $tooltip-arrow-width $tooltip-arrow-width 0;
60
+ border-top-color: $tooltip-arrow-color;
48
61
  }
49
62
  &.right .tooltip-arrow {
50
63
  top: 50%;
51
64
  left: 0;
52
- margin-top: -$tooltipArrowWidth;
53
- border-width: $tooltipArrowWidth $tooltipArrowWidth $tooltipArrowWidth 0;
54
- border-right-color: $tooltipArrowColor;
65
+ margin-top: -$tooltip-arrow-width;
66
+ border-width: $tooltip-arrow-width $tooltip-arrow-width $tooltip-arrow-width 0;
67
+ border-right-color: $tooltip-arrow-color;
55
68
  }
56
69
  &.left .tooltip-arrow {
57
70
  top: 50%;
58
71
  right: 0;
59
- margin-top: -$tooltipArrowWidth;
60
- border-width: $tooltipArrowWidth 0 $tooltipArrowWidth $tooltipArrowWidth;
61
- border-left-color: $tooltipArrowColor;
72
+ margin-top: -$tooltip-arrow-width;
73
+ border-width: $tooltip-arrow-width 0 $tooltip-arrow-width $tooltip-arrow-width;
74
+ border-left-color: $tooltip-arrow-color;
62
75
  }
63
76
  &.bottom .tooltip-arrow {
64
77
  top: 0;
65
78
  left: 50%;
66
- margin-left: -$tooltipArrowWidth;
67
- border-width: 0 $tooltipArrowWidth $tooltipArrowWidth;
68
- border-bottom-color: $tooltipArrowColor;
79
+ margin-left: -$tooltip-arrow-width;
80
+ border-width: 0 $tooltip-arrow-width $tooltip-arrow-width;
81
+ border-bottom-color: $tooltip-arrow-color;
82
+ }
83
+ &.bottom-left .tooltip-arrow {
84
+ top: 0;
85
+ left: $tooltip-arrow-width;
86
+ border-width: 0 $tooltip-arrow-width $tooltip-arrow-width;
87
+ border-bottom-color: $tooltip-arrow-color;
88
+ }
89
+ &.bottom-right .tooltip-arrow {
90
+ top: 0;
91
+ right: $tooltip-arrow-width;
92
+ border-width: 0 $tooltip-arrow-width $tooltip-arrow-width;
93
+ border-bottom-color: $tooltip-arrow-color;
69
94
  }
70
95
  }
@@ -3,134 +3,179 @@
3
3
  // --------------------------------------------------
4
4
 
5
5
 
6
+ // Headings
7
+ // -------------------------
8
+
9
+ h1, h2, h3, h4, h5, h6,
10
+ .h1, .h2, .h3, .h4, .h5, .h6 {
11
+ font-family: $headings-font-family;
12
+ font-weight: $headings-font-weight;
13
+ line-height: $headings-line-height;
14
+ color: $headings-color;
15
+
16
+ small,
17
+ .small {
18
+ font-weight: normal;
19
+ line-height: 1;
20
+ color: $headings-small-color;
21
+ }
22
+ }
23
+
24
+ h1, .h1,
25
+ h2, .h2,
26
+ h3, .h3 {
27
+ margin-top: $line-height-computed;
28
+ margin-bottom: ($line-height-computed / 2);
29
+
30
+ small,
31
+ .small {
32
+ font-size: 65%;
33
+ }
34
+ }
35
+ h4, .h4,
36
+ h5, .h5,
37
+ h6, .h6 {
38
+ margin-top: ($line-height-computed / 2);
39
+ margin-bottom: ($line-height-computed / 2);
40
+
41
+ small,
42
+ .small {
43
+ font-size: 75%;
44
+ }
45
+ }
46
+
47
+ h1, .h1 { font-size: $font-size-h1; }
48
+ h2, .h2 { font-size: $font-size-h2; }
49
+ h3, .h3 { font-size: $font-size-h3; }
50
+ h4, .h4 { font-size: $font-size-h4; }
51
+ h5, .h5 { font-size: $font-size-h5; }
52
+ h6, .h6 { font-size: $font-size-h6; }
53
+
54
+
6
55
  // Body text
7
56
  // -------------------------
8
57
 
9
58
  p {
10
- margin: 0 0 $baseLineHeight / 2;
59
+ margin: 0 0 ($line-height-computed / 2);
11
60
  }
61
+
12
62
  .lead {
13
- margin-bottom: $baseLineHeight;
14
- font-size: $baseFontSize * 1.5;
15
- font-weight: 200;
16
- line-height: $baseLineHeight * 1.5;
63
+ margin-bottom: $line-height-computed;
64
+ font-size: floor(($font-size-base * 1.15));
65
+ font-weight: 300;
66
+ line-height: 1.4;
67
+
68
+ @media (min-width: $screen-sm-min) {
69
+ font-size: ($font-size-base * 1.5);
70
+ }
17
71
  }
18
72
 
19
73
 
20
74
  // Emphasis & misc
21
75
  // -------------------------
22
76
 
23
- // Ex: 14px base font * 85% = about 12px
24
- small { font-size: 85%; }
77
+ // Ex: (12px small font / 14px base font) * 100% = about 85%
78
+ small,
79
+ .small {
80
+ font-size: floor((100% * $font-size-small / $font-size-base));
81
+ }
25
82
 
26
- strong { font-weight: bold; }
27
- em { font-style: italic; }
28
- cite { font-style: normal; }
83
+ // Undo browser default styling
84
+ cite {
85
+ font-style: normal;
86
+ }
29
87
 
30
- // Utility classes
31
- .muted { color: $grayLight; }
32
- a.muted:hover,
33
- a.muted:focus { color: darken($grayLight, 10%); }
88
+ mark,
89
+ .mark {
90
+ background-color: $state-warning-bg;
91
+ padding: .2em;
92
+ }
34
93
 
35
- .text-warning { color: $warningText; }
36
- a.text-warning:hover,
37
- a.text-warning:focus { color: darken($warningText, 10%); }
94
+ // Alignment
95
+ .text-left { text-align: left; }
96
+ .text-right { text-align: right; }
97
+ .text-center { text-align: center; }
98
+ .text-justify { text-align: justify; }
99
+ .text-nowrap { white-space: nowrap; }
38
100
 
39
- .text-error { color: $errorText; }
40
- a.text-error:hover,
41
- a.text-error:focus { color: darken($errorText, 10%); }
101
+ // Transformation
102
+ .text-lowercase { text-transform: lowercase; }
103
+ .text-uppercase { text-transform: uppercase; }
104
+ .text-capitalize { text-transform: capitalize; }
42
105
 
43
- .text-info { color: $infoText; }
44
- a.text-info:hover,
45
- a.text-info:focus { color: darken($infoText, 10%); }
106
+ // Contextual colors
107
+ .text-muted {
108
+ color: $text-muted;
109
+ }
46
110
 
47
- .text-success { color: $successText; }
48
- a.text-success:hover,
49
- a.text-success:focus { color: darken($successText, 10%); }
111
+ @include text-emphasis-variant('.text-primary', $brand-primary);
50
112
 
51
- .text-left { text-align: left; }
52
- .text-right { text-align: right; }
53
- .text-center { text-align: center; }
113
+ @include text-emphasis-variant('.text-success', $state-success-text);
54
114
 
115
+ @include text-emphasis-variant('.text-info', $state-info-text);
55
116
 
56
- // Headings
57
- // -------------------------
117
+ @include text-emphasis-variant('.text-warning', $state-warning-text);
58
118
 
59
- h1, h2, h3, h4, h5, h6 {
60
- margin: ($baseLineHeight / 2) 0;
61
- font-family: $headingsFontFamily;
62
- font-weight: $headingsFontWeight;
63
- line-height: $baseLineHeight;
64
- color: $headingsColor;
65
- text-rendering: optimizelegibility; // Fix the character spacing for headings
66
- small {
67
- font-weight: normal;
68
- line-height: 1;
69
- color: $grayLight;
70
- }
119
+ @include text-emphasis-variant('.text-danger', $state-danger-text);
120
+
121
+ // Contextual backgrounds
122
+ // For now we'll leave these alongside the text classes until v4 when we can
123
+ // safely shift things around (per SemVer rules).
124
+ .bg-primary {
125
+ // Given the contrast here, this is the only class to have its color inverted
126
+ // automatically.
127
+ color: #fff;
71
128
  }
129
+ @include bg-variant('.bg-primary', $brand-primary);
72
130
 
73
- h1,
74
- h2,
75
- h3 { line-height: $baseLineHeight * 2; }
131
+ @include bg-variant('.bg-success', $state-success-bg);
76
132
 
77
- h1 { font-size: $baseFontSize * 2.75; } // ~38px
78
- h2 { font-size: $baseFontSize * 2.25; } // ~32px
79
- h3 { font-size: $baseFontSize * 1.75; } // ~24px
80
- h4 { font-size: $baseFontSize * 1.25; } // ~18px
81
- h5 { font-size: $baseFontSize; }
82
- h6 { font-size: $baseFontSize * 0.85; } // ~12px
133
+ @include bg-variant('.bg-info', $state-info-bg);
83
134
 
84
- h1 small { font-size: $baseFontSize * 1.75; } // ~24px
85
- h2 small { font-size: $baseFontSize * 1.25; } // ~18px
86
- h3 small { font-size: $baseFontSize; }
87
- h4 small { font-size: $baseFontSize; }
135
+ @include bg-variant('.bg-warning', $state-warning-bg);
136
+
137
+ @include bg-variant('.bg-danger', $state-danger-bg);
88
138
 
89
139
 
90
140
  // Page header
91
141
  // -------------------------
92
142
 
93
143
  .page-header {
94
- padding-bottom: ($baseLineHeight / 2) - 1;
95
- margin: $baseLineHeight 0 ($baseLineHeight * 1.5);
96
- border-bottom: 1px solid $grayLighter;
144
+ padding-bottom: (($line-height-computed / 2) - 1);
145
+ margin: ($line-height-computed / 2) 0 $line-height-computed;
146
+ border-bottom: 1px solid $page-header-border-color;
97
147
  }
98
148
 
99
149
 
100
-
101
150
  // Lists
102
- // --------------------------------------------------
151
+ // -------------------------
103
152
 
104
153
  // Unordered and Ordered lists
105
- ul, ol {
106
- padding: 0;
107
- margin: 0 0 $baseLineHeight / 2 25px;
108
- }
109
- ul ul,
110
- ul ol,
111
- ol ol,
112
- ol ul {
113
- margin-bottom: 0;
114
- }
115
- li {
116
- line-height: $baseLineHeight;
154
+ ul,
155
+ ol {
156
+ margin-top: 0;
157
+ margin-bottom: ($line-height-computed / 2);
158
+ ul,
159
+ ol {
160
+ margin-bottom: 0;
161
+ }
117
162
  }
118
163
 
119
- // Remove default list styles
120
- ul.unstyled,
121
- ol.unstyled {
122
- margin-left: 0;
164
+ // List options
165
+
166
+ // Unstyled keeps list items block level, just removes default browser padding and list-style
167
+ .list-unstyled {
168
+ padding-left: 0;
123
169
  list-style: none;
124
170
  }
125
171
 
126
- // Single-line list items
127
- ul.inline,
128
- ol.inline {
129
- margin-left: 0;
130
- list-style: none;
172
+ // Inline turns list items into inline-block
173
+ .list-inline {
174
+ @extend .list-unstyled;
175
+ margin-left: -5px;
176
+
131
177
  > li {
132
178
  display: inline-block;
133
- @include ie7-inline-block();
134
179
  padding-left: 5px;
135
180
  padding-right: 5px;
136
181
  }
@@ -138,101 +183,114 @@ ol.inline {
138
183
 
139
184
  // Description Lists
140
185
  dl {
141
- margin-bottom: $baseLineHeight;
186
+ margin-top: 0; // Remove browser default
187
+ margin-bottom: $line-height-computed;
142
188
  }
143
189
  dt,
144
190
  dd {
145
- line-height: $baseLineHeight;
191
+ line-height: $line-height-base;
146
192
  }
147
193
  dt {
148
194
  font-weight: bold;
149
195
  }
150
196
  dd {
151
- margin-left: $baseLineHeight / 2;
197
+ margin-left: 0; // Undo browser default
152
198
  }
153
- // Horizontal layout (like forms)
199
+
200
+ // Horizontal description lists
201
+ //
202
+ // Defaults to being stacked without any of the below styles applied, until the
203
+ // grid breakpoint is reached (default of ~768px).
204
+
154
205
  .dl-horizontal {
155
- @include clearfix(); // Ensure dl clears floats if empty dd elements present
156
- dt {
157
- float: left;
158
- width: $horizontalComponentOffset - 20;
159
- clear: left;
160
- text-align: right;
161
- @include text-overflow();
162
- }
163
206
  dd {
164
- margin-left: $horizontalComponentOffset;
207
+ @include clearfix(); // Clear the floated `dt` if an empty `dd` is present
208
+ }
209
+
210
+ @media (min-width: $grid-float-breakpoint) {
211
+ dt {
212
+ float: left;
213
+ width: ($dl-horizontal-offset - 20);
214
+ clear: left;
215
+ text-align: right;
216
+ @include text-overflow();
217
+ }
218
+ dd {
219
+ margin-left: $dl-horizontal-offset;
220
+ }
165
221
  }
166
222
  }
167
223
 
168
- // MISC
169
- // ----
170
224
 
171
- // Horizontal rules
172
- hr {
173
- margin: $baseLineHeight 0;
174
- border: 0;
175
- border-top: 1px solid $hrBorder;
176
- border-bottom: 1px solid $white;
177
- }
225
+ // Misc
226
+ // -------------------------
178
227
 
179
228
  // Abbreviations and acronyms
180
229
  abbr[title],
181
- // Added data-* attribute to help out our tooltip plugin, per https://github.com/twitter/bootstrap/issues/5257
230
+ // Add data-* attribute to help out our tooltip plugin, per https://github.com/twbs/bootstrap/issues/5257
182
231
  abbr[data-original-title] {
183
232
  cursor: help;
184
- border-bottom: 1px dotted $grayLight;
233
+ border-bottom: 1px dotted $abbr-border-color;
185
234
  }
186
- abbr.initialism {
235
+ .initialism {
187
236
  font-size: 90%;
188
237
  text-transform: uppercase;
189
238
  }
190
239
 
191
240
  // Blockquotes
192
241
  blockquote {
193
- padding: 0 0 0 15px;
194
- margin: 0 0 $baseLineHeight;
195
- border-left: 5px solid $grayLighter;
196
- p {
197
- margin-bottom: 0;
198
- font-size: $baseFontSize * 1.25;
199
- font-weight: 300;
200
- line-height: 1.25;
242
+ padding: ($line-height-computed / 2) $line-height-computed;
243
+ margin: 0 0 $line-height-computed;
244
+ font-size: $blockquote-font-size;
245
+ border-left: 5px solid $blockquote-border-color;
246
+
247
+ p,
248
+ ul,
249
+ ol {
250
+ &:last-child {
251
+ margin-bottom: 0;
252
+ }
201
253
  }
202
- small {
254
+
255
+ // Note: Deprecated small and .small as of v3.1.0
256
+ // Context: https://github.com/twbs/bootstrap/issues/11660
257
+ footer,
258
+ small,
259
+ .small {
203
260
  display: block;
204
- line-height: $baseLineHeight;
205
- color: $grayLight;
261
+ font-size: 80%; // back to default font-size
262
+ line-height: $line-height-base;
263
+ color: $blockquote-small-color;
264
+
206
265
  &:before {
207
- content: '\2014 \00A0';
266
+ content: '\2014 \00A0'; // em dash, nbsp
208
267
  }
209
268
  }
269
+ }
210
270
 
211
- // Float right with text-align: right
212
- &.pull-right {
213
- float: right;
214
- padding-right: 15px;
215
- padding-left: 0;
216
- border-right: 5px solid $grayLighter;
217
- border-left: 0;
218
- p,
219
- small {
220
- text-align: right;
221
- }
222
- small {
223
- &:before {
224
- content: '';
225
- }
226
- &:after {
227
- content: '\00A0 \2014';
228
- }
271
+ // Opposite alignment of blockquote
272
+ //
273
+ // Heads up: `blockquote.pull-right` has been deprecated as of v3.1.0.
274
+ .blockquote-reverse,
275
+ blockquote.pull-right {
276
+ padding-right: 15px;
277
+ padding-left: 0;
278
+ border-right: 5px solid $blockquote-border-color;
279
+ border-left: 0;
280
+ text-align: right;
281
+
282
+ // Account for citation
283
+ footer,
284
+ small,
285
+ .small {
286
+ &:before { content: ''; }
287
+ &:after {
288
+ content: '\00A0 \2014'; // nbsp, em dash
229
289
  }
230
290
  }
231
291
  }
232
292
 
233
293
  // Quotes
234
- q:before,
235
- q:after,
236
294
  blockquote:before,
237
295
  blockquote:after {
238
296
  content: "";
@@ -240,8 +298,7 @@ blockquote:after {
240
298
 
241
299
  // Addresses
242
300
  address {
243
- display: block;
244
- margin-bottom: $baseLineHeight;
301
+ margin-bottom: $line-height-computed;
245
302
  font-style: normal;
246
- line-height: $baseLineHeight;
303
+ line-height: $line-height-base;
247
304
  }