spiderfw 0.6.30 → 0.6.31

Sign up to get free protection for your applications and to get access to all the features.
Files changed (109) hide show
  1. checksums.yaml +15 -7
  2. data/CHANGELOG +11 -0
  3. data/VERSION +1 -1
  4. data/apps/app_server/config/options.rb +1 -1
  5. data/apps/core/auth/controllers/login_controller.rb +3 -0
  6. data/apps/core/components/assets.rb +61 -3
  7. data/apps/core/components/public/bootstrap_3/img/glyphicons-halflings-regular.eot +0 -0
  8. data/apps/core/components/public/bootstrap_3/img/glyphicons-halflings-regular.svg +229 -0
  9. data/apps/core/components/public/bootstrap_3/img/glyphicons-halflings-regular.ttf +0 -0
  10. data/apps/core/components/public/bootstrap_3/img/glyphicons-halflings-regular.woff +0 -0
  11. data/apps/core/components/public/bootstrap_3/js/affix.js +140 -0
  12. data/apps/core/components/public/bootstrap_3/js/alert.js +92 -0
  13. data/apps/core/components/public/bootstrap_3/js/button.js +110 -0
  14. data/apps/core/components/public/bootstrap_3/js/carousel.js +210 -0
  15. data/apps/core/components/public/bootstrap_3/js/collapse.js +180 -0
  16. data/apps/core/components/public/bootstrap_3/js/dropdown.js +151 -0
  17. data/apps/core/components/public/bootstrap_3/js/modal.js +277 -0
  18. data/apps/core/components/public/bootstrap_3/js/popover.js +113 -0
  19. data/apps/core/components/public/bootstrap_3/js/scrollspy.js +158 -0
  20. data/apps/core/components/public/bootstrap_3/js/tab.js +128 -0
  21. data/apps/core/components/public/bootstrap_3/js/tooltip.js +456 -0
  22. data/apps/core/components/public/bootstrap_3/js/transition.js +48 -0
  23. data/apps/core/components/public/bootstrap_3/scss/_alerts.scss +67 -0
  24. data/apps/core/components/public/bootstrap_3/scss/_badges.scss +57 -0
  25. data/apps/core/components/public/bootstrap_3/scss/_breadcrumbs.scss +26 -0
  26. data/apps/core/components/public/bootstrap_3/scss/_button-groups.scss +240 -0
  27. data/apps/core/components/public/bootstrap_3/scss/_buttons.scss +159 -0
  28. data/apps/core/components/public/bootstrap_3/scss/_carousel.scss +243 -0
  29. data/apps/core/components/public/bootstrap_3/scss/_close.scss +35 -0
  30. data/apps/core/components/public/bootstrap_3/scss/_code.scss +62 -0
  31. data/apps/core/components/public/bootstrap_3/scss/_component-animations.scss +35 -0
  32. data/apps/core/components/public/bootstrap_3/scss/_dropdowns.scss +214 -0
  33. data/apps/core/components/public/bootstrap_3/scss/_forms.scss +489 -0
  34. data/apps/core/components/public/bootstrap_3/scss/_glyphicons.scss +237 -0
  35. data/apps/core/components/public/bootstrap_3/scss/_grid.scss +84 -0
  36. data/apps/core/components/public/bootstrap_3/scss/_input-groups.scss +166 -0
  37. data/apps/core/components/public/bootstrap_3/scss/_jumbotron.scss +48 -0
  38. data/apps/core/components/public/bootstrap_3/scss/_labels.scss +66 -0
  39. data/apps/core/components/public/bootstrap_3/scss/_list-group.scss +129 -0
  40. data/apps/core/components/public/bootstrap_3/scss/_media.scss +56 -0
  41. data/apps/core/components/public/bootstrap_3/scss/_mixins.scss +39 -0
  42. data/apps/core/components/public/bootstrap_3/scss/_modals.scss +147 -0
  43. data/apps/core/components/public/bootstrap_3/scss/_navbar.scss +658 -0
  44. data/apps/core/components/public/bootstrap_3/scss/_navs.scss +242 -0
  45. data/apps/core/components/public/bootstrap_3/scss/_normalize.scss +425 -0
  46. data/apps/core/components/public/bootstrap_3/scss/_pager.scss +55 -0
  47. data/apps/core/components/public/bootstrap_3/scss/_pagination.scss +88 -0
  48. data/apps/core/components/public/bootstrap_3/scss/_panels.scss +240 -0
  49. data/apps/core/components/public/bootstrap_3/scss/_popovers.scss +133 -0
  50. data/apps/core/components/public/bootstrap_3/scss/_print.scss +101 -0
  51. data/apps/core/components/public/bootstrap_3/scss/_progress-bars.scss +89 -0
  52. data/apps/core/components/public/bootstrap_3/scss/_responsive-embed.scss +34 -0
  53. data/apps/core/components/public/bootstrap_3/scss/_responsive-utilities.scss +174 -0
  54. data/apps/core/components/public/bootstrap_3/scss/_scaffolding.scss +150 -0
  55. data/apps/core/components/public/bootstrap_3/scss/_tables.scss +233 -0
  56. data/apps/core/components/public/bootstrap_3/scss/_theme.scss +247 -0
  57. data/apps/core/components/public/bootstrap_3/scss/_thumbnails.scss +38 -0
  58. data/apps/core/components/public/bootstrap_3/scss/_tooltip.scss +95 -0
  59. data/apps/core/components/public/bootstrap_3/scss/_type.scss +298 -0
  60. data/apps/core/components/public/bootstrap_3/scss/_utilities.scss +56 -0
  61. data/apps/core/components/public/bootstrap_3/scss/_variables.scss +853 -0
  62. data/apps/core/components/public/bootstrap_3/scss/_wells.scss +29 -0
  63. data/apps/core/components/public/bootstrap_3/scss/bootstrap.scss +50 -0
  64. data/apps/core/components/public/bootstrap_3/scss/mixins/_alerts.scss +14 -0
  65. data/apps/core/components/public/bootstrap_3/scss/mixins/_background-variant.scss +11 -0
  66. data/apps/core/components/public/bootstrap_3/scss/mixins/_border-radius.scss +18 -0
  67. data/apps/core/components/public/bootstrap_3/scss/mixins/_buttons.scss +50 -0
  68. data/apps/core/components/public/bootstrap_3/scss/mixins/_center-block.scss +7 -0
  69. data/apps/core/components/public/bootstrap_3/scss/mixins/_clearfix.scss +22 -0
  70. data/apps/core/components/public/bootstrap_3/scss/mixins/_forms.scss +84 -0
  71. data/apps/core/components/public/bootstrap_3/scss/mixins/_gradients.scss +58 -0
  72. data/apps/core/components/public/bootstrap_3/scss/mixins/_grid-framework.scss +87 -0
  73. data/apps/core/components/public/bootstrap_3/scss/mixins/_grid.scss +122 -0
  74. data/apps/core/components/public/bootstrap_3/scss/mixins/_hide-text.scss +21 -0
  75. data/apps/core/components/public/bootstrap_3/scss/mixins/_image.scss +33 -0
  76. data/apps/core/components/public/bootstrap_3/scss/mixins/_labels.scss +12 -0
  77. data/apps/core/components/public/bootstrap_3/scss/mixins/_list-group.scss +31 -0
  78. data/apps/core/components/public/bootstrap_3/scss/mixins/_nav-divider.scss +10 -0
  79. data/apps/core/components/public/bootstrap_3/scss/mixins/_nav-vertical-align.scss +9 -0
  80. data/apps/core/components/public/bootstrap_3/scss/mixins/_opacity.scss +8 -0
  81. data/apps/core/components/public/bootstrap_3/scss/mixins/_pagination.scss +23 -0
  82. data/apps/core/components/public/bootstrap_3/scss/mixins/_panels.scss +20 -0
  83. data/apps/core/components/public/bootstrap_3/scss/mixins/_progress-bar.scss +8 -0
  84. data/apps/core/components/public/bootstrap_3/scss/mixins/_reset-filter.scss +8 -0
  85. data/apps/core/components/public/bootstrap_3/scss/mixins/_resize.scss +6 -0
  86. data/apps/core/components/public/bootstrap_3/scss/mixins/_responsive-visibility.scss +21 -0
  87. data/apps/core/components/public/bootstrap_3/scss/mixins/_size.scss +10 -0
  88. data/apps/core/components/public/bootstrap_3/scss/mixins/_tab-focus.scss +9 -0
  89. data/apps/core/components/public/bootstrap_3/scss/mixins/_table-row.scss +28 -0
  90. data/apps/core/components/public/bootstrap_3/scss/mixins/_text-emphasis.scss +11 -0
  91. data/apps/core/components/public/bootstrap_3/scss/mixins/_text-overflow.scss +8 -0
  92. data/apps/core/components/public/bootstrap_3/scss/mixins/_vendor-prefixes.scss +224 -0
  93. data/apps/core/components/public/js/jquery/plugins/bsmselect/js/jquery.bsmselect.js +1 -1
  94. data/apps/core/components/widgets/month_calendar/month_calendar.shtml +3 -3
  95. data/apps/core/components/widgets/table/table.rb +6 -2
  96. data/apps/core/components/widgets/table/table.shtml +4 -4
  97. data/apps/core/forms/widgets/form/form.rb +1 -1
  98. data/apps/core/forms/widgets/inputs/select/select.rb +13 -2
  99. data/apps/messenger/lib/backends/mobyt.rb +6 -2
  100. data/apps/messenger/lib/backends/skebby.rb +1 -1
  101. data/apps/webdav/controllers/webdav_controller.rb +16 -7
  102. data/lib/spiderfw/controller/http_controller.rb +4 -1
  103. data/lib/spiderfw/env.rb +0 -1
  104. data/lib/spiderfw/http/adapters/rack.rb +3 -1
  105. data/lib/spiderfw/model/base_model.rb +7 -3
  106. data/lib/spiderfw/model/storage/connection_pool.rb +6 -2
  107. data/lib/spiderfw/model/storage/db/db_storage.rb +25 -9
  108. data/lib/spiderfw/site.rb +1 -1
  109. metadata +308 -149
@@ -0,0 +1,247 @@
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
+
53
+ // Common styles
54
+ .btn {
55
+ // Remove the gradient for the pressed/active state
56
+ &:active,
57
+ &.active {
58
+ background-image: none;
59
+ }
60
+ }
61
+
62
+ // Apply the mixin to the buttons
63
+ .btn-default { @include btn-styles($btn-default-bg); text-shadow: 0 1px 0 #fff; border-color: #ccc; }
64
+ .btn-primary { @include btn-styles($btn-primary-bg); }
65
+ .btn-success { @include btn-styles($btn-success-bg); }
66
+ .btn-info { @include btn-styles($btn-info-bg); }
67
+ .btn-warning { @include btn-styles($btn-warning-bg); }
68
+ .btn-danger { @include btn-styles($btn-danger-bg); }
69
+
70
+
71
+
72
+ //
73
+ // Images
74
+ // --------------------------------------------------
75
+
76
+ .thumbnail,
77
+ .img-thumbnail {
78
+ @include box-shadow(0 1px 2px rgba(0,0,0,.075));
79
+ }
80
+
81
+
82
+
83
+ //
84
+ // Dropdowns
85
+ // --------------------------------------------------
86
+
87
+ .dropdown-menu > li > a:hover,
88
+ .dropdown-menu > li > a:focus {
89
+ @include gradient-vertical($start-color: $dropdown-link-hover-bg, $end-color: darken($dropdown-link-hover-bg, 5%));
90
+ background-color: darken($dropdown-link-hover-bg, 5%);
91
+ }
92
+ .dropdown-menu > .active > a,
93
+ .dropdown-menu > .active > a:hover,
94
+ .dropdown-menu > .active > a:focus {
95
+ @include gradient-vertical($start-color: $dropdown-link-active-bg, $end-color: darken($dropdown-link-active-bg, 5%));
96
+ background-color: darken($dropdown-link-active-bg, 5%);
97
+ }
98
+
99
+
100
+
101
+ //
102
+ // Navbar
103
+ // --------------------------------------------------
104
+
105
+ // Default navbar
106
+ .navbar-default {
107
+ @include gradient-vertical($start-color: lighten($navbar-default-bg, 10%), $end-color: $navbar-default-bg);
108
+ @include reset-filter(); // Remove gradient in IE<10 to fix bug where dropdowns don't get triggered
109
+ border-radius: $navbar-border-radius;
110
+ $shadow: inset 0 1px 0 rgba(255,255,255,.15), 0 1px 5px rgba(0,0,0,.075);
111
+ @include box-shadow($shadow);
112
+
113
+ .navbar-nav > .active > a {
114
+ @include gradient-vertical($start-color: darken($navbar-default-bg, 5%), $end-color: darken($navbar-default-bg, 2%));
115
+ @include box-shadow(inset 0 3px 9px rgba(0,0,0,.075));
116
+ }
117
+ }
118
+ .navbar-brand,
119
+ .navbar-nav > li > a {
120
+ text-shadow: 0 1px 0 rgba(255,255,255,.25);
121
+ }
122
+
123
+ // Inverted navbar
124
+ .navbar-inverse {
125
+ @include gradient-vertical($start-color: lighten($navbar-inverse-bg, 10%), $end-color: $navbar-inverse-bg);
126
+ @include reset-filter(); // Remove gradient in IE<10 to fix bug where dropdowns don't get triggered
127
+
128
+ .navbar-nav > .active > a {
129
+ @include gradient-vertical($start-color: $navbar-inverse-bg, $end-color: lighten($navbar-inverse-bg, 2.5%));
130
+ @include box-shadow(inset 0 3px 9px rgba(0,0,0,.25));
131
+ }
132
+
133
+ .navbar-brand,
134
+ .navbar-nav > li > a {
135
+ text-shadow: 0 -1px 0 rgba(0,0,0,.25);
136
+ }
137
+ }
138
+
139
+ // Undo rounded corners in static and fixed navbars
140
+ .navbar-static-top,
141
+ .navbar-fixed-top,
142
+ .navbar-fixed-bottom {
143
+ border-radius: 0;
144
+ }
145
+
146
+
147
+
148
+ //
149
+ // Alerts
150
+ // --------------------------------------------------
151
+
152
+ // Common styles
153
+ .alert {
154
+ text-shadow: 0 1px 0 rgba(255,255,255,.2);
155
+ $shadow: inset 0 1px 0 rgba(255,255,255,.25), 0 1px 2px rgba(0,0,0,.05);
156
+ @include box-shadow($shadow);
157
+ }
158
+
159
+ // Mixin for generating new styles
160
+ @mixin alert-styles($color) {
161
+ @include gradient-vertical($start-color: $color, $end-color: darken($color, 7.5%));
162
+ border-color: darken($color, 15%);
163
+ }
164
+
165
+ // Apply the mixin to the alerts
166
+ .alert-success { @include alert-styles($alert-success-bg); }
167
+ .alert-info { @include alert-styles($alert-info-bg); }
168
+ .alert-warning { @include alert-styles($alert-warning-bg); }
169
+ .alert-danger { @include alert-styles($alert-danger-bg); }
170
+
171
+
172
+
173
+ //
174
+ // Progress bars
175
+ // --------------------------------------------------
176
+
177
+ // Give the progress background some depth
178
+ .progress {
179
+ @include gradient-vertical($start-color: darken($progress-bg, 4%), $end-color: $progress-bg)
180
+ }
181
+
182
+ // Mixin for generating new styles
183
+ @mixin progress-bar-styles($color) {
184
+ @include gradient-vertical($start-color: $color, $end-color: darken($color, 10%));
185
+ }
186
+
187
+ // Apply the mixin to the progress bars
188
+ .progress-bar { @include progress-bar-styles($progress-bar-bg); }
189
+ .progress-bar-success { @include progress-bar-styles($progress-bar-success-bg); }
190
+ .progress-bar-info { @include progress-bar-styles($progress-bar-info-bg); }
191
+ .progress-bar-warning { @include progress-bar-styles($progress-bar-warning-bg); }
192
+ .progress-bar-danger { @include progress-bar-styles($progress-bar-danger-bg); }
193
+
194
+
195
+
196
+ //
197
+ // List groups
198
+ // --------------------------------------------------
199
+
200
+ .list-group {
201
+ border-radius: $border-radius-base;
202
+ @include box-shadow(0 1px 2px rgba(0,0,0,.075));
203
+ }
204
+ .list-group-item.active,
205
+ .list-group-item.active:hover,
206
+ .list-group-item.active:focus {
207
+ text-shadow: 0 -1px 0 darken($list-group-active-bg, 10%);
208
+ @include gradient-vertical($start-color: $list-group-active-bg, $end-color: darken($list-group-active-bg, 7.5%));
209
+ border-color: darken($list-group-active-border, 7.5%);
210
+ }
211
+
212
+
213
+
214
+ //
215
+ // Panels
216
+ // --------------------------------------------------
217
+
218
+ // Common styles
219
+ .panel {
220
+ @include box-shadow(0 1px 2px rgba(0,0,0,.05));
221
+ }
222
+
223
+ // Mixin for generating new styles
224
+ @mixin panel-heading-styles($color) {
225
+ @include gradient-vertical($start-color: $color, $end-color: darken($color, 5%));
226
+ }
227
+
228
+ // Apply the mixin to the panel headings only
229
+ .panel-default > .panel-heading { @include panel-heading-styles($panel-default-heading-bg); }
230
+ .panel-primary > .panel-heading { @include panel-heading-styles($panel-primary-heading-bg); }
231
+ .panel-success > .panel-heading { @include panel-heading-styles($panel-success-heading-bg); }
232
+ .panel-info > .panel-heading { @include panel-heading-styles($panel-info-heading-bg); }
233
+ .panel-warning > .panel-heading { @include panel-heading-styles($panel-warning-heading-bg); }
234
+ .panel-danger > .panel-heading { @include panel-heading-styles($panel-danger-heading-bg); }
235
+
236
+
237
+
238
+ //
239
+ // Wells
240
+ // --------------------------------------------------
241
+
242
+ .well {
243
+ @include gradient-vertical($start-color: darken($well-bg, 5%), $end-color: $well-bg);
244
+ border-color: darken($well-bg, 10%);
245
+ $shadow: inset 0 1px 3px rgba(0,0,0,.05), 0 1px 0 rgba(255,255,255,.1);
246
+ @include box-shadow($shadow);
247
+ }
@@ -0,0 +1,38 @@
1
+ //
2
+ // Thumbnails
3
+ // --------------------------------------------------
4
+
5
+
6
+ // Mixin and adjust the regular image class
7
+ .thumbnail {
8
+ display: block;
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;
15
+ @include transition(all .2s ease-in-out);
16
+
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
+ }
31
+ }
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;
38
+ }
@@ -0,0 +1,95 @@
1
+ //
2
+ // Tooltips
3
+ // --------------------------------------------------
4
+
5
+
6
+ // Base class
7
+ .tooltip {
8
+ position: absolute;
9
+ z-index: $zindex-tooltip;
10
+ display: block;
11
+ visibility: visible;
12
+ font-size: $font-size-small;
13
+ line-height: 1.4;
14
+ @include opacity(0);
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; }
21
+ }
22
+
23
+ // Wrapper for the tooltip content
24
+ .tooltip-inner {
25
+ max-width: $tooltip-max-width;
26
+ padding: 3px 8px;
27
+ color: $tooltip-color;
28
+ text-align: center;
29
+ text-decoration: none;
30
+ background-color: $tooltip-bg;
31
+ border-radius: $border-radius-base;
32
+ }
33
+
34
+ // Arrows
35
+ .tooltip-arrow {
36
+ position: absolute;
37
+ width: 0;
38
+ height: 0;
39
+ border-color: transparent;
40
+ border-style: solid;
41
+ }
42
+ .tooltip {
43
+ &.top .tooltip-arrow {
44
+ bottom: 0;
45
+ left: 50%;
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;
61
+ }
62
+ &.right .tooltip-arrow {
63
+ top: 50%;
64
+ left: 0;
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;
68
+ }
69
+ &.left .tooltip-arrow {
70
+ top: 50%;
71
+ right: 0;
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;
75
+ }
76
+ &.bottom .tooltip-arrow {
77
+ top: 0;
78
+ left: 50%;
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;
94
+ }
95
+ }
@@ -0,0 +1,298 @@
1
+ //
2
+ // Typography
3
+ // --------------------------------------------------
4
+
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
+
55
+ // Body text
56
+ // -------------------------
57
+
58
+ p {
59
+ margin: 0 0 ($line-height-computed / 2);
60
+ }
61
+
62
+ .lead {
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
+ }
71
+ }
72
+
73
+
74
+ // Emphasis & misc
75
+ // -------------------------
76
+
77
+ // Ex: 14px base font * 85% = about 12px
78
+ small,
79
+ .small {
80
+ font-size: 85%;
81
+ }
82
+
83
+ // Undo browser default styling
84
+ cite {
85
+ font-style: normal;
86
+ }
87
+
88
+ mark,
89
+ .mark {
90
+ background-color: $state-warning-bg;
91
+ padding: .2em;
92
+ }
93
+
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
+
100
+ // Contextual colors
101
+ .text-muted {
102
+ color: $text-muted;
103
+ }
104
+
105
+ @include text-emphasis-variant('.text-primary', $brand-primary);
106
+
107
+ @include text-emphasis-variant('.text-success', $state-success-text);
108
+
109
+ @include text-emphasis-variant('.text-info', $state-info-text);
110
+
111
+ @include text-emphasis-variant('.text-warning', $state-warning-text);
112
+
113
+ @include text-emphasis-variant('.text-danger', $state-danger-text);
114
+
115
+ // Contextual backgrounds
116
+ // For now we'll leave these alongside the text classes until v4 when we can
117
+ // safely shift things around (per SemVer rules).
118
+ .bg-primary {
119
+ // Given the contrast here, this is the only class to have its color inverted
120
+ // automatically.
121
+ color: #fff;
122
+ }
123
+ @include bg-variant('.bg-primary', $brand-primary);
124
+
125
+ @include bg-variant('.bg-success', $state-success-bg);
126
+
127
+ @include bg-variant('.bg-info', $state-info-bg);
128
+
129
+ @include bg-variant('.bg-warning', $state-warning-bg);
130
+
131
+ @include bg-variant('.bg-danger', $state-danger-bg);
132
+
133
+
134
+ // Page header
135
+ // -------------------------
136
+
137
+ .page-header {
138
+ padding-bottom: (($line-height-computed / 2) - 1);
139
+ margin: ($line-height-computed * 2) 0 $line-height-computed;
140
+ border-bottom: 1px solid $page-header-border-color;
141
+ }
142
+
143
+
144
+ // Lists
145
+ // -------------------------
146
+
147
+ // Unordered and Ordered lists
148
+ ul,
149
+ ol {
150
+ margin-top: 0;
151
+ margin-bottom: ($line-height-computed / 2);
152
+ ul,
153
+ ol {
154
+ margin-bottom: 0;
155
+ }
156
+ }
157
+
158
+ // List options
159
+
160
+ // Unstyled keeps list items block level, just removes default browser padding and list-style
161
+ .list-unstyled {
162
+ padding-left: 0;
163
+ list-style: none;
164
+ }
165
+
166
+ // Inline turns list items into inline-block
167
+ .list-inline {
168
+ @extend .list-unstyled;
169
+ margin-left: -5px;
170
+
171
+ > li {
172
+ display: inline-block;
173
+ padding-left: 5px;
174
+ padding-right: 5px;
175
+ }
176
+ }
177
+
178
+ // Description Lists
179
+ dl {
180
+ margin-top: 0; // Remove browser default
181
+ margin-bottom: $line-height-computed;
182
+ }
183
+ dt,
184
+ dd {
185
+ line-height: $line-height-base;
186
+ }
187
+ dt {
188
+ font-weight: bold;
189
+ }
190
+ dd {
191
+ margin-left: 0; // Undo browser default
192
+ }
193
+
194
+ // Horizontal description lists
195
+ //
196
+ // Defaults to being stacked without any of the below styles applied, until the
197
+ // grid breakpoint is reached (default of ~768px).
198
+
199
+ .dl-horizontal {
200
+ dd {
201
+ @include clearfix(); // Clear the floated `dt` if an empty `dd` is present
202
+ }
203
+
204
+ @media (min-width: $grid-float-breakpoint) {
205
+ dt {
206
+ float: left;
207
+ width: ($component-offset-horizontal - 20);
208
+ clear: left;
209
+ text-align: right;
210
+ @include text-overflow();
211
+ }
212
+ dd {
213
+ margin-left: $component-offset-horizontal;
214
+ }
215
+ }
216
+ }
217
+
218
+
219
+ // Misc
220
+ // -------------------------
221
+
222
+ // Abbreviations and acronyms
223
+ abbr[title],
224
+ // Add data-* attribute to help out our tooltip plugin, per https://github.com/twbs/bootstrap/issues/5257
225
+ abbr[data-original-title] {
226
+ cursor: help;
227
+ border-bottom: 1px dotted $abbr-border-color;
228
+ }
229
+ .initialism {
230
+ font-size: 90%;
231
+ text-transform: uppercase;
232
+ }
233
+
234
+ // Blockquotes
235
+ blockquote {
236
+ padding: ($line-height-computed / 2) $line-height-computed;
237
+ margin: 0 0 $line-height-computed;
238
+ font-size: $blockquote-font-size;
239
+ border-left: 5px solid $blockquote-border-color;
240
+
241
+ p,
242
+ ul,
243
+ ol {
244
+ &:last-child {
245
+ margin-bottom: 0;
246
+ }
247
+ }
248
+
249
+ // Note: Deprecated small and .small as of v3.1.0
250
+ // Context: https://github.com/twbs/bootstrap/issues/11660
251
+ footer,
252
+ small,
253
+ .small {
254
+ display: block;
255
+ font-size: 80%; // back to default font-size
256
+ line-height: $line-height-base;
257
+ color: $blockquote-small-color;
258
+
259
+ &:before {
260
+ content: '\2014 \00A0'; // em dash, nbsp
261
+ }
262
+ }
263
+ }
264
+
265
+ // Opposite alignment of blockquote
266
+ //
267
+ // Heads up: `blockquote.pull-right` has been deprecated as of v3.1.0.
268
+ .blockquote-reverse,
269
+ blockquote.pull-right {
270
+ padding-right: 15px;
271
+ padding-left: 0;
272
+ border-right: 5px solid $blockquote-border-color;
273
+ border-left: 0;
274
+ text-align: right;
275
+
276
+ // Account for citation
277
+ footer,
278
+ small,
279
+ .small {
280
+ &:before { content: ''; }
281
+ &:after {
282
+ content: '\00A0 \2014'; // nbsp, em dash
283
+ }
284
+ }
285
+ }
286
+
287
+ // Quotes
288
+ blockquote:before,
289
+ blockquote:after {
290
+ content: "";
291
+ }
292
+
293
+ // Addresses
294
+ address {
295
+ margin-bottom: $line-height-computed;
296
+ font-style: normal;
297
+ line-height: $line-height-base;
298
+ }