twbs_less_rails 1.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 (142) hide show
  1. checksums.yaml +7 -0
  2. data/CHANGELOG.md +12 -0
  3. data/CONTRIBUTING.md +45 -0
  4. data/Gemfile +3 -0
  5. data/Gemfile.lock +144 -0
  6. data/LICENSE +30 -0
  7. data/README.md +147 -0
  8. data/Rakefile +113 -0
  9. data/app/assets/fonts/fontawesome-webfont.eot +0 -0
  10. data/app/assets/fonts/fontawesome-webfont.svg +399 -0
  11. data/app/assets/fonts/fontawesome-webfont.ttf +0 -0
  12. data/app/assets/fonts/fontawesome-webfont.woff +0 -0
  13. data/app/assets/fonts/glyphicons-halflings-regular.eot +0 -0
  14. data/app/assets/fonts/glyphicons-halflings-regular.svg +229 -0
  15. data/app/assets/fonts/glyphicons-halflings-regular.ttf +0 -0
  16. data/app/assets/fonts/glyphicons-halflings-regular.woff +0 -0
  17. data/gemfiles/Gemfile.rails-3.2.x +9 -0
  18. data/gemfiles/Gemfile.rails-4.0.x +9 -0
  19. data/lib/generators/twbs_less_rails/install/install_generator.rb +31 -0
  20. data/lib/generators/twbs_less_rails/install/templates/application.css +15 -0
  21. data/lib/generators/twbs_less_rails/install/templates/application.js +17 -0
  22. data/lib/generators/twbs_less_rails/install/templates/twbs-variables.css.less +5 -0
  23. data/lib/generators/twbs_less_rails/install/templates/twbs.css.less +14 -0
  24. data/lib/generators/twbs_less_rails/install/templates/twbs.js.coffee +7 -0
  25. data/lib/tasks/twbs_less_rails_tasks.rake +4 -0
  26. data/lib/twbs_less_rails/engine.rb +7 -0
  27. data/lib/twbs_less_rails/version.rb +3 -0
  28. data/lib/twbs_less_rails.rb +4 -0
  29. data/test/dummy/README.rdoc +28 -0
  30. data/test/dummy/Rakefile +6 -0
  31. data/test/dummy/app/assets/images/.keep +0 -0
  32. data/test/dummy/app/assets/javascripts/application.js +14 -0
  33. data/test/dummy/app/assets/stylesheets/application.css +15 -0
  34. data/test/dummy/app/assets/stylesheets/default-twbs.css.less +1 -0
  35. data/test/dummy/app/assets/stylesheets/test.css.less +5 -0
  36. data/test/dummy/app/assets/stylesheets/twbs-variables.css.less +6 -0
  37. data/test/dummy/app/assets/stylesheets/twbs.css.less +14 -0
  38. data/test/dummy/app/controllers/application_controller.rb +5 -0
  39. data/test/dummy/app/controllers/concerns/.keep +0 -0
  40. data/test/dummy/app/helpers/application_helper.rb +2 -0
  41. data/test/dummy/app/mailers/.keep +0 -0
  42. data/test/dummy/app/models/.keep +0 -0
  43. data/test/dummy/app/models/concerns/.keep +0 -0
  44. data/test/dummy/app/views/layouts/application.html.erb +14 -0
  45. data/test/dummy/bin/bundle +3 -0
  46. data/test/dummy/bin/rails +4 -0
  47. data/test/dummy/bin/rake +4 -0
  48. data/test/dummy/config/application.rb +27 -0
  49. data/test/dummy/config/boot.rb +5 -0
  50. data/test/dummy/config/database.yml +25 -0
  51. data/test/dummy/config/environment.rb +5 -0
  52. data/test/dummy/config/environments/development.rb +29 -0
  53. data/test/dummy/config/environments/production.rb +80 -0
  54. data/test/dummy/config/environments/test.rb +36 -0
  55. data/test/dummy/config/initializers/backtrace_silencers.rb +7 -0
  56. data/test/dummy/config/initializers/filter_parameter_logging.rb +4 -0
  57. data/test/dummy/config/initializers/inflections.rb +16 -0
  58. data/test/dummy/config/initializers/mime_types.rb +5 -0
  59. data/test/dummy/config/initializers/secret_token.rb +18 -0
  60. data/test/dummy/config/initializers/session_store.rb +3 -0
  61. data/test/dummy/config/initializers/wrap_parameters.rb +14 -0
  62. data/test/dummy/config/locales/en.yml +23 -0
  63. data/test/dummy/config/routes.rb +56 -0
  64. data/test/dummy/config.ru +4 -0
  65. data/test/dummy/db/.keep +0 -0
  66. data/test/dummy/lib/assets/.keep +0 -0
  67. data/test/dummy/log/.keep +0 -0
  68. data/test/dummy/public/404.html +58 -0
  69. data/test/dummy/public/422.html +58 -0
  70. data/test/dummy/public/500.html +57 -0
  71. data/test/dummy/public/favicon.ico +0 -0
  72. data/test/generators/default_rails_assets/application.css +13 -0
  73. data/test/generators/default_rails_assets/application.js +16 -0
  74. data/test/generators/install_generator_test.rb +47 -0
  75. data/test/integration/assets_precompile_integration_test.rb +49 -0
  76. data/test/integration/twbs_less_rails_integration_test.rb +38 -0
  77. data/test/test_helper.rb +38 -0
  78. data/twbs_less_rails.gemspec +34 -0
  79. data/vendor/assets/javascripts/respond.js +342 -0
  80. data/vendor/assets/javascripts/twbs/bootstrap/affix.js +126 -0
  81. data/vendor/assets/javascripts/twbs/bootstrap/alert.js +98 -0
  82. data/vendor/assets/javascripts/twbs/bootstrap/button.js +109 -0
  83. data/vendor/assets/javascripts/twbs/bootstrap/carousel.js +217 -0
  84. data/vendor/assets/javascripts/twbs/bootstrap/collapse.js +179 -0
  85. data/vendor/assets/javascripts/twbs/bootstrap/dropdown.js +154 -0
  86. data/vendor/assets/javascripts/twbs/bootstrap/modal.js +246 -0
  87. data/vendor/assets/javascripts/twbs/bootstrap/popover.js +117 -0
  88. data/vendor/assets/javascripts/twbs/bootstrap/scrollspy.js +158 -0
  89. data/vendor/assets/javascripts/twbs/bootstrap/tab.js +135 -0
  90. data/vendor/assets/javascripts/twbs/bootstrap/tooltip.js +386 -0
  91. data/vendor/assets/javascripts/twbs/bootstrap/transition.js +56 -0
  92. data/vendor/assets/javascripts/twbs/bootstrap.js +12 -0
  93. data/vendor/assets/stylesheets/fontawesome/bootstrap.less +84 -0
  94. data/vendor/assets/stylesheets/fontawesome/core.less +129 -0
  95. data/vendor/assets/stylesheets/fontawesome/extras.less +93 -0
  96. data/vendor/assets/stylesheets/fontawesome/font-awesome.less +33 -0
  97. data/vendor/assets/stylesheets/fontawesome/icons.less +381 -0
  98. data/vendor/assets/stylesheets/fontawesome/mixins.less +48 -0
  99. data/vendor/assets/stylesheets/fontawesome/path.less +14 -0
  100. data/vendor/assets/stylesheets/fontawesome/variables.less +735 -0
  101. data/vendor/assets/stylesheets/twbs/bootstrap/alerts.less +67 -0
  102. data/vendor/assets/stylesheets/twbs/bootstrap/badges.less +51 -0
  103. data/vendor/assets/stylesheets/twbs/bootstrap/bootstrap.less +48 -0
  104. data/vendor/assets/stylesheets/twbs/bootstrap/breadcrumbs.less +23 -0
  105. data/vendor/assets/stylesheets/twbs/bootstrap/button-groups.less +248 -0
  106. data/vendor/assets/stylesheets/twbs/bootstrap/buttons.less +158 -0
  107. data/vendor/assets/stylesheets/twbs/bootstrap/carousel.less +220 -0
  108. data/vendor/assets/stylesheets/twbs/bootstrap/close.less +33 -0
  109. data/vendor/assets/stylesheets/twbs/bootstrap/code.less +53 -0
  110. data/vendor/assets/stylesheets/twbs/bootstrap/component-animations.less +29 -0
  111. data/vendor/assets/stylesheets/twbs/bootstrap/dropdowns.less +192 -0
  112. data/vendor/assets/stylesheets/twbs/bootstrap/forms.less +366 -0
  113. data/vendor/assets/stylesheets/twbs/bootstrap/glyphicons.less +236 -0
  114. data/vendor/assets/stylesheets/twbs/bootstrap/grid.less +93 -0
  115. data/vendor/assets/stylesheets/twbs/bootstrap/input-groups.less +136 -0
  116. data/vendor/assets/stylesheets/twbs/bootstrap/jumbotron.less +40 -0
  117. data/vendor/assets/stylesheets/twbs/bootstrap/labels.less +58 -0
  118. data/vendor/assets/stylesheets/twbs/bootstrap/list-group.less +88 -0
  119. data/vendor/assets/stylesheets/twbs/bootstrap/media.less +56 -0
  120. data/vendor/assets/stylesheets/twbs/bootstrap/mixins.less +846 -0
  121. data/vendor/assets/stylesheets/twbs/bootstrap/modals.less +131 -0
  122. data/vendor/assets/stylesheets/twbs/bootstrap/navbar.less +621 -0
  123. data/vendor/assets/stylesheets/twbs/bootstrap/navs.less +257 -0
  124. data/vendor/assets/stylesheets/twbs/bootstrap/normalize.less +406 -0
  125. data/vendor/assets/stylesheets/twbs/bootstrap/pager.less +55 -0
  126. data/vendor/assets/stylesheets/twbs/bootstrap/pagination.less +85 -0
  127. data/vendor/assets/stylesheets/twbs/bootstrap/panels.less +168 -0
  128. data/vendor/assets/stylesheets/twbs/bootstrap/popovers.less +133 -0
  129. data/vendor/assets/stylesheets/twbs/bootstrap/print.less +100 -0
  130. data/vendor/assets/stylesheets/twbs/bootstrap/progress-bars.less +96 -0
  131. data/vendor/assets/stylesheets/twbs/bootstrap/responsive-utilities.less +209 -0
  132. data/vendor/assets/stylesheets/twbs/bootstrap/scaffolding.less +119 -0
  133. data/vendor/assets/stylesheets/twbs/bootstrap/tables.less +236 -0
  134. data/vendor/assets/stylesheets/twbs/bootstrap/theme.less +246 -0
  135. data/vendor/assets/stylesheets/twbs/bootstrap/thumbnails.less +33 -0
  136. data/vendor/assets/stylesheets/twbs/bootstrap/tooltip.less +95 -0
  137. data/vendor/assets/stylesheets/twbs/bootstrap/type.less +273 -0
  138. data/vendor/assets/stylesheets/twbs/bootstrap/utilities.less +56 -0
  139. data/vendor/assets/stylesheets/twbs/bootstrap/variables.less +637 -0
  140. data/vendor/assets/stylesheets/twbs/bootstrap/wells.less +29 -0
  141. data/vendor/assets/stylesheets/twbs/bootstrap.less +1 -0
  142. metadata +387 -0
@@ -0,0 +1,366 @@
1
+ //
2
+ // Forms
3
+ // --------------------------------------------------
4
+
5
+
6
+ // Normalize non-controls
7
+ //
8
+ // Restyle and baseline non-control form elements.
9
+
10
+ fieldset {
11
+ padding: 0;
12
+ margin: 0;
13
+ border: 0;
14
+ }
15
+
16
+ legend {
17
+ display: block;
18
+ width: 100%;
19
+ padding: 0;
20
+ margin-bottom: @line-height-computed;
21
+ font-size: (@font-size-base * 1.5);
22
+ line-height: inherit;
23
+ color: @legend-color;
24
+ border: 0;
25
+ border-bottom: 1px solid @legend-border-color;
26
+ }
27
+
28
+ label {
29
+ display: inline-block;
30
+ margin-bottom: 5px;
31
+ font-weight: bold;
32
+ }
33
+
34
+
35
+ // Normalize form controls
36
+
37
+ // Override content-box in Normalize (* isn't specific enough)
38
+ input[type="search"] {
39
+ .box-sizing(border-box);
40
+ }
41
+
42
+ // Position radios and checkboxes better
43
+ input[type="radio"],
44
+ input[type="checkbox"] {
45
+ margin: 4px 0 0;
46
+ margin-top: 1px \9; /* IE8-9 */
47
+ line-height: normal;
48
+ }
49
+
50
+ // Set the height of select and file controls to match text inputs
51
+ input[type="file"] {
52
+ display: block;
53
+ }
54
+
55
+ // Make multiple select elements height not fixed
56
+ select[multiple],
57
+ select[size] {
58
+ height: auto;
59
+ }
60
+
61
+ // Fix optgroup Firefox bug per https://github.com/twbs/bootstrap/issues/7611
62
+ select optgroup {
63
+ font-size: inherit;
64
+ font-style: inherit;
65
+ font-family: inherit;
66
+ }
67
+
68
+ // Focus for select, file, radio, and checkbox
69
+ input[type="file"]:focus,
70
+ input[type="radio"]:focus,
71
+ input[type="checkbox"]:focus {
72
+ .tab-focus();
73
+ }
74
+
75
+ // Fix for Chrome number input
76
+ // Setting certain font-sizes causes the `I` bar to appear on hover of the bottom increment button.
77
+ // See https://github.com/twbs/bootstrap/issues/8350 for more.
78
+ input[type="number"] {
79
+ &::-webkit-outer-spin-button,
80
+ &::-webkit-inner-spin-button {
81
+ height: auto;
82
+ }
83
+ }
84
+
85
+ // Adjust output element
86
+ output {
87
+ display: block;
88
+ padding-top: (@padding-base-vertical + 1);
89
+ font-size: @font-size-base;
90
+ line-height: @line-height-base;
91
+ color: @input-color;
92
+ vertical-align: middle;
93
+ }
94
+
95
+ // Placeholder
96
+ //
97
+ // Placeholder text gets special styles because when browsers invalidate entire
98
+ // lines if it doesn't understand a selector/
99
+ .form-control {
100
+ .placeholder();
101
+ }
102
+
103
+
104
+ // Common form controls
105
+ //
106
+ // Shared size and type resets for form controls. Apply `.form-control` to any
107
+ // of the following form controls:
108
+ //
109
+ // select
110
+ // textarea
111
+ // input[type="text"]
112
+ // input[type="password"]
113
+ // input[type="datetime"]
114
+ // input[type="datetime-local"]
115
+ // input[type="date"]
116
+ // input[type="month"]
117
+ // input[type="time"]
118
+ // input[type="week"]
119
+ // input[type="number"]
120
+ // input[type="email"]
121
+ // input[type="url"]
122
+ // input[type="search"]
123
+ // input[type="tel"]
124
+ // input[type="color"]
125
+
126
+ .form-control {
127
+ display: block;
128
+ width: 100%;
129
+ height: @input-height-base; // Make inputs at least the height of their button counterpart (base line-height + padding + border)
130
+ padding: @padding-base-vertical @padding-base-horizontal;
131
+ font-size: @font-size-base;
132
+ line-height: @line-height-base;
133
+ color: @input-color;
134
+ vertical-align: middle;
135
+ background-color: @input-bg;
136
+ background-image: none; // Reset unusual Firefox-on-Android default style; see https://github.com/necolas/normalize.css/issues/214
137
+ border: 1px solid @input-border;
138
+ border-radius: @input-border-radius;
139
+ .box-shadow(inset 0 1px 1px rgba(0,0,0,.075));
140
+ .transition(~"border-color ease-in-out .15s, box-shadow ease-in-out .15s");
141
+
142
+ // Customize the `:focus` state to imitate native WebKit styles.
143
+ .form-control-focus();
144
+
145
+ // Disabled and read-only inputs
146
+ // Note: HTML5 says that controls under a fieldset > legend:first-child won't
147
+ // be disabled if the fieldset is disabled. Due to implementation difficulty,
148
+ // we don't honor that edge case; we style them as disabled anyway.
149
+ &[disabled],
150
+ &[readonly],
151
+ fieldset[disabled] & {
152
+ cursor: not-allowed;
153
+ background-color: @input-bg-disabled;
154
+ }
155
+
156
+ // Reset height for `textarea`s
157
+ textarea& {
158
+ height: auto;
159
+ }
160
+ }
161
+
162
+
163
+ // Form groups
164
+ //
165
+ // Designed to help with the organization and spacing of vertical forms. For
166
+ // horizontal forms, use the predefined grid classes.
167
+
168
+ .form-group {
169
+ margin-bottom: 15px;
170
+ }
171
+
172
+
173
+ // Checkboxes and radios
174
+ //
175
+ // Indent the labels to position radios/checkboxes as hanging controls.
176
+
177
+ .radio,
178
+ .checkbox {
179
+ display: block;
180
+ min-height: @line-height-computed; // clear the floating input if there is no label text
181
+ margin-top: 10px;
182
+ margin-bottom: 10px;
183
+ padding-left: 20px;
184
+ vertical-align: middle;
185
+ label {
186
+ display: inline;
187
+ margin-bottom: 0;
188
+ font-weight: normal;
189
+ cursor: pointer;
190
+ }
191
+ }
192
+ .radio input[type="radio"],
193
+ .radio-inline input[type="radio"],
194
+ .checkbox input[type="checkbox"],
195
+ .checkbox-inline input[type="checkbox"] {
196
+ float: left;
197
+ margin-left: -20px;
198
+ }
199
+ .radio + .radio,
200
+ .checkbox + .checkbox {
201
+ margin-top: -5px; // Move up sibling radios or checkboxes for tighter spacing
202
+ }
203
+
204
+ // Radios and checkboxes on same line
205
+ .radio-inline,
206
+ .checkbox-inline {
207
+ display: inline-block;
208
+ padding-left: 20px;
209
+ margin-bottom: 0;
210
+ vertical-align: middle;
211
+ font-weight: normal;
212
+ cursor: pointer;
213
+ }
214
+ .radio-inline + .radio-inline,
215
+ .checkbox-inline + .checkbox-inline {
216
+ margin-top: 0;
217
+ margin-left: 10px; // space out consecutive inline controls
218
+ }
219
+
220
+ // Apply same disabled cursor tweak as for inputs
221
+ //
222
+ // Note: Neither radios nor checkboxes can be readonly.
223
+ input[type="radio"],
224
+ input[type="checkbox"],
225
+ .radio,
226
+ .radio-inline,
227
+ .checkbox,
228
+ .checkbox-inline {
229
+ &[disabled],
230
+ fieldset[disabled] & {
231
+ cursor: not-allowed;
232
+ }
233
+ }
234
+
235
+ // Form control sizing
236
+ .input-sm {
237
+ .input-size(@input-height-small; @padding-small-vertical; @padding-small-horizontal; @font-size-small; @line-height-small; @border-radius-small);
238
+ }
239
+
240
+ .input-lg {
241
+ .input-size(@input-height-large; @padding-large-vertical; @padding-large-horizontal; @font-size-large; @line-height-large; @border-radius-large);
242
+ }
243
+
244
+
245
+ // Form control feedback states
246
+ //
247
+ // Apply contextual and semantic states to individual form controls.
248
+
249
+ // Warning
250
+ .has-warning {
251
+ .form-control-validation(@state-warning-text; @state-warning-text; @state-warning-bg);
252
+ }
253
+ // Error
254
+ .has-error {
255
+ .form-control-validation(@state-danger-text; @state-danger-text; @state-danger-bg);
256
+ }
257
+ // Success
258
+ .has-success {
259
+ .form-control-validation(@state-success-text; @state-success-text; @state-success-bg);
260
+ }
261
+
262
+
263
+ // Static form control text
264
+ //
265
+ // Apply class to a `p` element to make any string of text align with labels in
266
+ // a horizontal form layout.
267
+
268
+ .form-control-static {
269
+ margin-bottom: 0; // Remove default margin from `p`
270
+ }
271
+
272
+
273
+ // Help text
274
+ //
275
+ // Apply to any element you wish to create light text for placement immediately
276
+ // below a form control. Use for general help, formatting, or instructional text.
277
+
278
+ .help-block {
279
+ display: block; // account for any element using help-block
280
+ margin-top: 5px;
281
+ margin-bottom: 10px;
282
+ color: lighten(@text-color, 25%); // lighten the text some for contrast
283
+ }
284
+
285
+
286
+
287
+ // Inline forms
288
+ //
289
+ // Make forms appear inline(-block) by adding the `.form-inline` class. Inline
290
+ // forms begin stacked on extra small (mobile) devices and then go inline when
291
+ // viewports reach <768px.
292
+ //
293
+ // Requires wrapping inputs and labels with `.form-group` for proper display of
294
+ // default HTML form controls and our custom form controls (e.g., input groups).
295
+ //
296
+ // Heads up! This is mixin-ed into `.navbar-form` in navbars.less.
297
+
298
+ .form-inline {
299
+
300
+ // Kick in the inline
301
+ @media (min-width: @screen-sm) {
302
+ // Inline-block all the things for "inline"
303
+ .form-group {
304
+ display: inline-block;
305
+ margin-bottom: 0;
306
+ vertical-align: middle;
307
+ }
308
+
309
+ // In navbar-form, allow folks to *not* use `.form-group`
310
+ .form-control {
311
+ display: inline-block;
312
+ }
313
+
314
+ // Remove default margin on radios/checkboxes that were used for stacking, and
315
+ // then undo the floating of radios and checkboxes to match (which also avoids
316
+ // a bug in WebKit: https://github.com/twbs/bootstrap/issues/1969).
317
+ .radio,
318
+ .checkbox {
319
+ display: inline-block;
320
+ margin-top: 0;
321
+ margin-bottom: 0;
322
+ padding-left: 0;
323
+ }
324
+ .radio input[type="radio"],
325
+ .checkbox input[type="checkbox"] {
326
+ float: none;
327
+ margin-left: 0;
328
+ }
329
+ }
330
+ }
331
+
332
+
333
+ // Horizontal forms
334
+ //
335
+ // Horizontal forms are built on grid classes and allow you to create forms with
336
+ // labels on the left and inputs on the right.
337
+
338
+ .form-horizontal {
339
+
340
+ // Consistent vertical alignment of labels, radios, and checkboxes
341
+ .control-label,
342
+ .radio,
343
+ .checkbox,
344
+ .radio-inline,
345
+ .checkbox-inline {
346
+ margin-top: 0;
347
+ margin-bottom: 0;
348
+ padding-top: (@padding-base-vertical + 1); // Default padding plus a border
349
+ }
350
+
351
+ // Make form groups behave like rows
352
+ .form-group {
353
+ .make-row();
354
+ }
355
+
356
+ .form-control-static {
357
+ padding-top: (@padding-base-vertical + 1);
358
+ }
359
+
360
+ // Only right align form labels here when the columns stop stacking
361
+ @media (min-width: @screen-sm-min) {
362
+ .control-label {
363
+ text-align: right;
364
+ }
365
+ }
366
+ }
@@ -0,0 +1,236 @@
1
+ //
2
+ // Glyphicons for Bootstrap
3
+ //
4
+ // Since icons are fonts, they can be placed anywhere text is placed and are
5
+ // thus automatically sized to match the surrounding child. To use, create an
6
+ // inline element with the appropriate classes, like so:
7
+ //
8
+ // <a href="#"><span class="glyphicon glyphicon-star"></span> Star</a>
9
+
10
+ // Import the fonts
11
+ @font-face {
12
+ font-family: 'Glyphicons Halflings';
13
+ src: asset-url('glyphicons-halflings-regular.eot');
14
+ src: asset-url('glyphicons-halflings-regular.eot?#iefix') format('embedded-opentype'),
15
+ asset-url('glyphicons-halflings-regular.woff') format('woff'),
16
+ asset-url('glyphicons-halflings-regular.ttf') format('truetype'),
17
+ asset-url('glyphicons-halflings-regular.svg#glyphicons_halflingsregular') format('svg');
18
+ }
19
+
20
+ // Catchall baseclass
21
+ .glyphicon {
22
+ position: relative;
23
+ top: 1px;
24
+ display: inline-block;
25
+ font-family: 'Glyphicons Halflings';
26
+ font-style: normal;
27
+ font-weight: normal;
28
+ line-height: 1;
29
+ -webkit-font-smoothing: antialiased;
30
+
31
+ &:empty{
32
+ width: 1em;
33
+ }
34
+ }
35
+
36
+ // Individual icons
37
+ .glyphicon-asterisk { &:before { content: "\2a"; } }
38
+ .glyphicon-plus { &:before { content: "\2b"; } }
39
+ .glyphicon-euro { &:before { content: "\20ac"; } }
40
+ .glyphicon-minus { &:before { content: "\2212"; } }
41
+ .glyphicon-cloud { &:before { content: "\2601"; } }
42
+ .glyphicon-envelope { &:before { content: "\2709"; } }
43
+ .glyphicon-pencil { &:before { content: "\270f"; } }
44
+ .glyphicon-glass { &:before { content: "\e001"; } }
45
+ .glyphicon-music { &:before { content: "\e002"; } }
46
+ .glyphicon-search { &:before { content: "\e003"; } }
47
+ .glyphicon-heart { &:before { content: "\e005"; } }
48
+ .glyphicon-star { &:before { content: "\e006"; } }
49
+ .glyphicon-star-empty { &:before { content: "\e007"; } }
50
+ .glyphicon-user { &:before { content: "\e008"; } }
51
+ .glyphicon-film { &:before { content: "\e009"; } }
52
+ .glyphicon-th-large { &:before { content: "\e010"; } }
53
+ .glyphicon-th { &:before { content: "\e011"; } }
54
+ .glyphicon-th-list { &:before { content: "\e012"; } }
55
+ .glyphicon-ok { &:before { content: "\e013"; } }
56
+ .glyphicon-remove { &:before { content: "\e014"; } }
57
+ .glyphicon-zoom-in { &:before { content: "\e015"; } }
58
+ .glyphicon-zoom-out { &:before { content: "\e016"; } }
59
+ .glyphicon-off { &:before { content: "\e017"; } }
60
+ .glyphicon-signal { &:before { content: "\e018"; } }
61
+ .glyphicon-cog { &:before { content: "\e019"; } }
62
+ .glyphicon-trash { &:before { content: "\e020"; } }
63
+ .glyphicon-home { &:before { content: "\e021"; } }
64
+ .glyphicon-file { &:before { content: "\e022"; } }
65
+ .glyphicon-time { &:before { content: "\e023"; } }
66
+ .glyphicon-road { &:before { content: "\e024"; } }
67
+ .glyphicon-download-alt { &:before { content: "\e025"; } }
68
+ .glyphicon-download { &:before { content: "\e026"; } }
69
+ .glyphicon-upload { &:before { content: "\e027"; } }
70
+ .glyphicon-inbox { &:before { content: "\e028"; } }
71
+ .glyphicon-play-circle { &:before { content: "\e029"; } }
72
+ .glyphicon-repeat { &:before { content: "\e030"; } }
73
+ .glyphicon-refresh { &:before { content: "\e031"; } }
74
+ .glyphicon-list-alt { &:before { content: "\e032"; } }
75
+ .glyphicon-lock { &:before { content: "\e033"; } }
76
+ .glyphicon-flag { &:before { content: "\e034"; } }
77
+ .glyphicon-headphones { &:before { content: "\e035"; } }
78
+ .glyphicon-volume-off { &:before { content: "\e036"; } }
79
+ .glyphicon-volume-down { &:before { content: "\e037"; } }
80
+ .glyphicon-volume-up { &:before { content: "\e038"; } }
81
+ .glyphicon-qrcode { &:before { content: "\e039"; } }
82
+ .glyphicon-barcode { &:before { content: "\e040"; } }
83
+ .glyphicon-tag { &:before { content: "\e041"; } }
84
+ .glyphicon-tags { &:before { content: "\e042"; } }
85
+ .glyphicon-book { &:before { content: "\e043"; } }
86
+ .glyphicon-bookmark { &:before { content: "\e044"; } }
87
+ .glyphicon-print { &:before { content: "\e045"; } }
88
+ .glyphicon-camera { &:before { content: "\e046"; } }
89
+ .glyphicon-font { &:before { content: "\e047"; } }
90
+ .glyphicon-bold { &:before { content: "\e048"; } }
91
+ .glyphicon-italic { &:before { content: "\e049"; } }
92
+ .glyphicon-text-height { &:before { content: "\e050"; } }
93
+ .glyphicon-text-width { &:before { content: "\e051"; } }
94
+ .glyphicon-align-left { &:before { content: "\e052"; } }
95
+ .glyphicon-align-center { &:before { content: "\e053"; } }
96
+ .glyphicon-align-right { &:before { content: "\e054"; } }
97
+ .glyphicon-align-justify { &:before { content: "\e055"; } }
98
+ .glyphicon-list { &:before { content: "\e056"; } }
99
+ .glyphicon-indent-left { &:before { content: "\e057"; } }
100
+ .glyphicon-indent-right { &:before { content: "\e058"; } }
101
+ .glyphicon-facetime-video { &:before { content: "\e059"; } }
102
+ .glyphicon-picture { &:before { content: "\e060"; } }
103
+ .glyphicon-map-marker { &:before { content: "\e062"; } }
104
+ .glyphicon-adjust { &:before { content: "\e063"; } }
105
+ .glyphicon-tint { &:before { content: "\e064"; } }
106
+ .glyphicon-edit { &:before { content: "\e065"; } }
107
+ .glyphicon-share { &:before { content: "\e066"; } }
108
+ .glyphicon-check { &:before { content: "\e067"; } }
109
+ .glyphicon-move { &:before { content: "\e068"; } }
110
+ .glyphicon-step-backward { &:before { content: "\e069"; } }
111
+ .glyphicon-fast-backward { &:before { content: "\e070"; } }
112
+ .glyphicon-backward { &:before { content: "\e071"; } }
113
+ .glyphicon-play { &:before { content: "\e072"; } }
114
+ .glyphicon-pause { &:before { content: "\e073"; } }
115
+ .glyphicon-stop { &:before { content: "\e074"; } }
116
+ .glyphicon-forward { &:before { content: "\e075"; } }
117
+ .glyphicon-fast-forward { &:before { content: "\e076"; } }
118
+ .glyphicon-step-forward { &:before { content: "\e077"; } }
119
+ .glyphicon-eject { &:before { content: "\e078"; } }
120
+ .glyphicon-chevron-left { &:before { content: "\e079"; } }
121
+ .glyphicon-chevron-right { &:before { content: "\e080"; } }
122
+ .glyphicon-plus-sign { &:before { content: "\e081"; } }
123
+ .glyphicon-minus-sign { &:before { content: "\e082"; } }
124
+ .glyphicon-remove-sign { &:before { content: "\e083"; } }
125
+ .glyphicon-ok-sign { &:before { content: "\e084"; } }
126
+ .glyphicon-question-sign { &:before { content: "\e085"; } }
127
+ .glyphicon-info-sign { &:before { content: "\e086"; } }
128
+ .glyphicon-screenshot { &:before { content: "\e087"; } }
129
+ .glyphicon-remove-circle { &:before { content: "\e088"; } }
130
+ .glyphicon-ok-circle { &:before { content: "\e089"; } }
131
+ .glyphicon-ban-circle { &:before { content: "\e090"; } }
132
+ .glyphicon-arrow-left { &:before { content: "\e091"; } }
133
+ .glyphicon-arrow-right { &:before { content: "\e092"; } }
134
+ .glyphicon-arrow-up { &:before { content: "\e093"; } }
135
+ .glyphicon-arrow-down { &:before { content: "\e094"; } }
136
+ .glyphicon-share-alt { &:before { content: "\e095"; } }
137
+ .glyphicon-resize-full { &:before { content: "\e096"; } }
138
+ .glyphicon-resize-small { &:before { content: "\e097"; } }
139
+ .glyphicon-exclamation-sign { &:before { content: "\e101"; } }
140
+ .glyphicon-gift { &:before { content: "\e102"; } }
141
+ .glyphicon-leaf { &:before { content: "\e103"; } }
142
+ .glyphicon-fire { &:before { content: "\e104"; } }
143
+ .glyphicon-eye-open { &:before { content: "\e105"; } }
144
+ .glyphicon-eye-close { &:before { content: "\e106"; } }
145
+ .glyphicon-warning-sign { &:before { content: "\e107"; } }
146
+ .glyphicon-plane { &:before { content: "\e108"; } }
147
+ .glyphicon-calendar { &:before { content: "\e109"; } }
148
+ .glyphicon-random { &:before { content: "\e110"; } }
149
+ .glyphicon-comment { &:before { content: "\e111"; } }
150
+ .glyphicon-magnet { &:before { content: "\e112"; } }
151
+ .glyphicon-chevron-up { &:before { content: "\e113"; } }
152
+ .glyphicon-chevron-down { &:before { content: "\e114"; } }
153
+ .glyphicon-retweet { &:before { content: "\e115"; } }
154
+ .glyphicon-shopping-cart { &:before { content: "\e116"; } }
155
+ .glyphicon-folder-close { &:before { content: "\e117"; } }
156
+ .glyphicon-folder-open { &:before { content: "\e118"; } }
157
+ .glyphicon-resize-vertical { &:before { content: "\e119"; } }
158
+ .glyphicon-resize-horizontal { &:before { content: "\e120"; } }
159
+ .glyphicon-hdd { &:before { content: "\e121"; } }
160
+ .glyphicon-bullhorn { &:before { content: "\e122"; } }
161
+ .glyphicon-bell { &:before { content: "\e123"; } }
162
+ .glyphicon-certificate { &:before { content: "\e124"; } }
163
+ .glyphicon-thumbs-up { &:before { content: "\e125"; } }
164
+ .glyphicon-thumbs-down { &:before { content: "\e126"; } }
165
+ .glyphicon-hand-right { &:before { content: "\e127"; } }
166
+ .glyphicon-hand-left { &:before { content: "\e128"; } }
167
+ .glyphicon-hand-up { &:before { content: "\e129"; } }
168
+ .glyphicon-hand-down { &:before { content: "\e130"; } }
169
+ .glyphicon-circle-arrow-right { &:before { content: "\e131"; } }
170
+ .glyphicon-circle-arrow-left { &:before { content: "\e132"; } }
171
+ .glyphicon-circle-arrow-up { &:before { content: "\e133"; } }
172
+ .glyphicon-circle-arrow-down { &:before { content: "\e134"; } }
173
+ .glyphicon-globe { &:before { content: "\e135"; } }
174
+ .glyphicon-wrench { &:before { content: "\e136"; } }
175
+ .glyphicon-tasks { &:before { content: "\e137"; } }
176
+ .glyphicon-filter { &:before { content: "\e138"; } }
177
+ .glyphicon-briefcase { &:before { content: "\e139"; } }
178
+ .glyphicon-fullscreen { &:before { content: "\e140"; } }
179
+ .glyphicon-dashboard { &:before { content: "\e141"; } }
180
+ .glyphicon-paperclip { &:before { content: "\e142"; } }
181
+ .glyphicon-heart-empty { &:before { content: "\e143"; } }
182
+ .glyphicon-link { &:before { content: "\e144"; } }
183
+ .glyphicon-phone { &:before { content: "\e145"; } }
184
+ .glyphicon-pushpin { &:before { content: "\e146"; } }
185
+ .glyphicon-usd { &:before { content: "\e148"; } }
186
+ .glyphicon-gbp { &:before { content: "\e149"; } }
187
+ .glyphicon-sort { &:before { content: "\e150"; } }
188
+ .glyphicon-sort-by-alphabet { &:before { content: "\e151"; } }
189
+ .glyphicon-sort-by-alphabet-alt { &:before { content: "\e152"; } }
190
+ .glyphicon-sort-by-order { &:before { content: "\e153"; } }
191
+ .glyphicon-sort-by-order-alt { &:before { content: "\e154"; } }
192
+ .glyphicon-sort-by-attributes { &:before { content: "\e155"; } }
193
+ .glyphicon-sort-by-attributes-alt { &:before { content: "\e156"; } }
194
+ .glyphicon-unchecked { &:before { content: "\e157"; } }
195
+ .glyphicon-expand { &:before { content: "\e158"; } }
196
+ .glyphicon-collapse-down { &:before { content: "\e159"; } }
197
+ .glyphicon-collapse-up { &:before { content: "\e160"; } }
198
+ .glyphicon-log-in { &:before { content: "\e161"; } }
199
+ .glyphicon-flash { &:before { content: "\e162"; } }
200
+ .glyphicon-log-out { &:before { content: "\e163"; } }
201
+ .glyphicon-new-window { &:before { content: "\e164"; } }
202
+ .glyphicon-record { &:before { content: "\e165"; } }
203
+ .glyphicon-save { &:before { content: "\e166"; } }
204
+ .glyphicon-open { &:before { content: "\e167"; } }
205
+ .glyphicon-saved { &:before { content: "\e168"; } }
206
+ .glyphicon-import { &:before { content: "\e169"; } }
207
+ .glyphicon-export { &:before { content: "\e170"; } }
208
+ .glyphicon-send { &:before { content: "\e171"; } }
209
+ .glyphicon-floppy-disk { &:before { content: "\e172"; } }
210
+ .glyphicon-floppy-saved { &:before { content: "\e173"; } }
211
+ .glyphicon-floppy-remove { &:before { content: "\e174"; } }
212
+ .glyphicon-floppy-save { &:before { content: "\e175"; } }
213
+ .glyphicon-floppy-open { &:before { content: "\e176"; } }
214
+ .glyphicon-credit-card { &:before { content: "\e177"; } }
215
+ .glyphicon-transfer { &:before { content: "\e178"; } }
216
+ .glyphicon-cutlery { &:before { content: "\e179"; } }
217
+ .glyphicon-header { &:before { content: "\e180"; } }
218
+ .glyphicon-compressed { &:before { content: "\e181"; } }
219
+ .glyphicon-earphone { &:before { content: "\e182"; } }
220
+ .glyphicon-phone-alt { &:before { content: "\e183"; } }
221
+ .glyphicon-tower { &:before { content: "\e184"; } }
222
+ .glyphicon-stats { &:before { content: "\e185"; } }
223
+ .glyphicon-sd-video { &:before { content: "\e186"; } }
224
+ .glyphicon-hd-video { &:before { content: "\e187"; } }
225
+ .glyphicon-subtitles { &:before { content: "\e188"; } }
226
+ .glyphicon-sound-stereo { &:before { content: "\e189"; } }
227
+ .glyphicon-sound-dolby { &:before { content: "\e190"; } }
228
+ .glyphicon-sound-5-1 { &:before { content: "\e191"; } }
229
+ .glyphicon-sound-6-1 { &:before { content: "\e192"; } }
230
+ .glyphicon-sound-7-1 { &:before { content: "\e193"; } }
231
+ .glyphicon-copyright-mark { &:before { content: "\e194"; } }
232
+ .glyphicon-registration-mark { &:before { content: "\e195"; } }
233
+ .glyphicon-cloud-download { &:before { content: "\e197"; } }
234
+ .glyphicon-cloud-upload { &:before { content: "\e198"; } }
235
+ .glyphicon-tree-conifer { &:before { content: "\e199"; } }
236
+ .glyphicon-tree-deciduous { &:before { content: "\e200"; } }
@@ -0,0 +1,93 @@
1
+ //
2
+ // Grid system
3
+ // --------------------------------------------------
4
+
5
+ // Set the container width, and override it for fixed navbars in media queries
6
+ .container {
7
+ .container-fixed();
8
+ }
9
+
10
+ // mobile first defaults
11
+ .row {
12
+ .make-row();
13
+ }
14
+
15
+ // Common styles for small and large grid columns
16
+ .make-grid-columns();
17
+
18
+
19
+ // Extra small grid
20
+ //
21
+ // Grid classes for extra small devices like smartphones. No offset, push, or
22
+ // pull classes are present here due to the size of the target.
23
+ //
24
+ // Note that `.col-xs-12` doesn't get floated on purpose--there's no need since
25
+ // it's full-width.
26
+
27
+ .make-grid-columns-float(xs);
28
+ .make-grid(@grid-columns, xs, width);
29
+ .make-grid(@grid-columns, xs, pull);
30
+ .make-grid(@grid-columns, xs, push);
31
+ .make-grid(@grid-columns, xs, offset);
32
+
33
+
34
+ // Small grid
35
+ //
36
+ // Columns, offsets, pushes, and pulls for the small device range, from phones
37
+ // to tablets.
38
+ //
39
+ // Note that `.col-sm-12` doesn't get floated on purpose--there's no need since
40
+ // it's full-width.
41
+
42
+ @media (min-width: @screen-sm-min) {
43
+ .container {
44
+ width: @container-sm;
45
+ }
46
+
47
+ .make-grid-columns-float(sm);
48
+ .make-grid(@grid-columns, sm, width);
49
+ .make-grid(@grid-columns, sm, pull);
50
+ .make-grid(@grid-columns, sm, push);
51
+ .make-grid(@grid-columns, sm, offset);
52
+ }
53
+
54
+
55
+ // Medium grid
56
+ //
57
+ // Columns, offsets, pushes, and pulls for the desktop device range.
58
+ //
59
+ // Note that `.col-md-12` doesn't get floated on purpose--there's no need since
60
+ // it's full-width.
61
+
62
+ @media (min-width: @screen-md-min) {
63
+ .container {
64
+ width: @container-md;
65
+ }
66
+
67
+ .make-grid-columns-float(md);
68
+ .make-grid(@grid-columns, md, width);
69
+ .make-grid(@grid-columns, md, pull);
70
+ .make-grid(@grid-columns, md, push);
71
+ .make-grid(@grid-columns, md, offset);
72
+ }
73
+
74
+
75
+ // Large grid
76
+ //
77
+ // Columns, offsets, pushes, and pulls for the large desktop device range.
78
+ //
79
+ // Note that `.col-lg-12` doesn't get floated on purpose--there's no need since
80
+ // it's full-width.
81
+
82
+ @media (min-width: @screen-lg-min) {
83
+ .container {
84
+ width: @container-lg;
85
+ }
86
+
87
+ .make-grid-columns-float(lg);
88
+ .make-grid(@grid-columns, lg, width);
89
+ .make-grid(@grid-columns, lg, pull);
90
+ .make-grid(@grid-columns, lg, push);
91
+ .make-grid(@grid-columns, lg, offset);
92
+ }
93
+