dataclips 0.0.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (158) hide show
  1. checksums.yaml +7 -0
  2. data/MIT-LICENSE +20 -0
  3. data/README.rdoc +3 -0
  4. data/Rakefile +34 -0
  5. data/app/assets/fonts/bootstrap/glyphicons-halflings-regular.eot +0 -0
  6. data/app/assets/fonts/bootstrap/glyphicons-halflings-regular.svg +288 -0
  7. data/app/assets/fonts/bootstrap/glyphicons-halflings-regular.ttf +0 -0
  8. data/app/assets/fonts/bootstrap/glyphicons-halflings-regular.woff +0 -0
  9. data/app/assets/fonts/bootstrap/glyphicons-halflings-regular.woff2 +0 -0
  10. data/app/assets/images/dataclips/slickgrid/sort-asc.png +0 -0
  11. data/app/assets/images/dataclips/slickgrid/sort-desc.png +0 -0
  12. data/app/assets/javascripts/dataclips/application.js +26 -0
  13. data/app/assets/javascripts/dataclips/backbone.js +1608 -0
  14. data/app/assets/javascripts/dataclips/dataclips.js.coffee +168 -0
  15. data/app/assets/javascripts/dataclips/formatters.js.coffee +14 -0
  16. data/app/assets/javascripts/dataclips/namespace.js.coffee +1 -0
  17. data/app/assets/javascripts/dataclips/record.js.coffee +39 -0
  18. data/app/assets/javascripts/dataclips/slickgrid.js +5 -0
  19. data/app/assets/javascripts/dataclips/slickgrid/jquery.event.drag-2.2.js +402 -0
  20. data/app/assets/javascripts/dataclips/slickgrid/plugins/slick.rowselectionmodel.js +187 -0
  21. data/app/assets/javascripts/dataclips/slickgrid/slick.core.js +458 -0
  22. data/app/assets/javascripts/dataclips/slickgrid/slick.dataview.js +1063 -0
  23. data/app/assets/javascripts/dataclips/slickgrid/slick.grid.js +3309 -0
  24. data/app/assets/javascripts/dataclips/underscore.js +1416 -0
  25. data/app/assets/stylesheets/bootstrap/_alerts.scss +68 -0
  26. data/app/assets/stylesheets/bootstrap/_badges.scss +63 -0
  27. data/app/assets/stylesheets/bootstrap/_breadcrumbs.scss +26 -0
  28. data/app/assets/stylesheets/bootstrap/_button-groups.scss +243 -0
  29. data/app/assets/stylesheets/bootstrap/_buttons.scss +160 -0
  30. data/app/assets/stylesheets/bootstrap/_carousel.scss +267 -0
  31. data/app/assets/stylesheets/bootstrap/_close.scss +35 -0
  32. data/app/assets/stylesheets/bootstrap/_code.scss +69 -0
  33. data/app/assets/stylesheets/bootstrap/_component-animations.scss +38 -0
  34. data/app/assets/stylesheets/bootstrap/_dropdowns.scss +213 -0
  35. data/app/assets/stylesheets/bootstrap/_forms.scss +548 -0
  36. data/app/assets/stylesheets/bootstrap/_glyphicons.scss +234 -0
  37. data/app/assets/stylesheets/bootstrap/_grid.scss +84 -0
  38. data/app/assets/stylesheets/bootstrap/_input-groups.scss +166 -0
  39. data/app/assets/stylesheets/bootstrap/_jumbotron.scss +49 -0
  40. data/app/assets/stylesheets/bootstrap/_labels.scss +66 -0
  41. data/app/assets/stylesheets/bootstrap/_list-group.scss +124 -0
  42. data/app/assets/stylesheets/bootstrap/_media.scss +47 -0
  43. data/app/assets/stylesheets/bootstrap/_mixins.scss +39 -0
  44. data/app/assets/stylesheets/bootstrap/_modals.scss +148 -0
  45. data/app/assets/stylesheets/bootstrap/_navbar.scss +662 -0
  46. data/app/assets/stylesheets/bootstrap/_navs.scss +244 -0
  47. data/app/assets/stylesheets/bootstrap/_normalize.scss +427 -0
  48. data/app/assets/stylesheets/bootstrap/_pager.scss +54 -0
  49. data/app/assets/stylesheets/bootstrap/_pagination.scss +88 -0
  50. data/app/assets/stylesheets/bootstrap/_panels.scss +261 -0
  51. data/app/assets/stylesheets/bootstrap/_popovers.scss +135 -0
  52. data/app/assets/stylesheets/bootstrap/_print.scss +107 -0
  53. data/app/assets/stylesheets/bootstrap/_progress-bars.scss +87 -0
  54. data/app/assets/stylesheets/bootstrap/_responsive-embed.scss +35 -0
  55. data/app/assets/stylesheets/bootstrap/_responsive-utilities.scss +174 -0
  56. data/app/assets/stylesheets/bootstrap/_scaffolding.scss +150 -0
  57. data/app/assets/stylesheets/bootstrap/_tables.scss +234 -0
  58. data/app/assets/stylesheets/bootstrap/_theme.scss +272 -0
  59. data/app/assets/stylesheets/bootstrap/_thumbnails.scss +38 -0
  60. data/app/assets/stylesheets/bootstrap/_tooltip.scss +103 -0
  61. data/app/assets/stylesheets/bootstrap/_type.scss +298 -0
  62. data/app/assets/stylesheets/bootstrap/_utilities.scss +56 -0
  63. data/app/assets/stylesheets/bootstrap/_variables.scss +864 -0
  64. data/app/assets/stylesheets/bootstrap/_wells.scss +29 -0
  65. data/app/assets/stylesheets/bootstrap/mixins/_alerts.scss +14 -0
  66. data/app/assets/stylesheets/bootstrap/mixins/_background-variant.scss +11 -0
  67. data/app/assets/stylesheets/bootstrap/mixins/_border-radius.scss +18 -0
  68. data/app/assets/stylesheets/bootstrap/mixins/_buttons.scss +52 -0
  69. data/app/assets/stylesheets/bootstrap/mixins/_center-block.scss +7 -0
  70. data/app/assets/stylesheets/bootstrap/mixins/_clearfix.scss +22 -0
  71. data/app/assets/stylesheets/bootstrap/mixins/_forms.scss +88 -0
  72. data/app/assets/stylesheets/bootstrap/mixins/_gradients.scss +58 -0
  73. data/app/assets/stylesheets/bootstrap/mixins/_grid-framework.scss +81 -0
  74. data/app/assets/stylesheets/bootstrap/mixins/_grid.scss +122 -0
  75. data/app/assets/stylesheets/bootstrap/mixins/_hide-text.scss +21 -0
  76. data/app/assets/stylesheets/bootstrap/mixins/_image.scss +33 -0
  77. data/app/assets/stylesheets/bootstrap/mixins/_labels.scss +12 -0
  78. data/app/assets/stylesheets/bootstrap/mixins/_list-group.scss +31 -0
  79. data/app/assets/stylesheets/bootstrap/mixins/_nav-divider.scss +10 -0
  80. data/app/assets/stylesheets/bootstrap/mixins/_nav-vertical-align.scss +9 -0
  81. data/app/assets/stylesheets/bootstrap/mixins/_opacity.scss +8 -0
  82. data/app/assets/stylesheets/bootstrap/mixins/_pagination.scss +23 -0
  83. data/app/assets/stylesheets/bootstrap/mixins/_panels.scss +24 -0
  84. data/app/assets/stylesheets/bootstrap/mixins/_progress-bar.scss +10 -0
  85. data/app/assets/stylesheets/bootstrap/mixins/_reset-filter.scss +8 -0
  86. data/app/assets/stylesheets/bootstrap/mixins/_resize.scss +6 -0
  87. data/app/assets/stylesheets/bootstrap/mixins/_responsive-visibility.scss +21 -0
  88. data/app/assets/stylesheets/bootstrap/mixins/_size.scss +10 -0
  89. data/app/assets/stylesheets/bootstrap/mixins/_tab-focus.scss +9 -0
  90. data/app/assets/stylesheets/bootstrap/mixins/_table-row.scss +28 -0
  91. data/app/assets/stylesheets/bootstrap/mixins/_text-emphasis.scss +11 -0
  92. data/app/assets/stylesheets/bootstrap/mixins/_text-overflow.scss +8 -0
  93. data/app/assets/stylesheets/bootstrap/mixins/_vendor-prefixes.scss +222 -0
  94. data/app/assets/stylesheets/dataclips/_bootstrap.scss +53 -0
  95. data/app/assets/stylesheets/dataclips/application.css +18 -0
  96. data/app/assets/stylesheets/dataclips/slickgrid/slickgrid.sass +341 -0
  97. data/app/controllers/dataclips/application_controller.rb +31 -0
  98. data/app/controllers/dataclips/clips_controller.rb +46 -0
  99. data/app/controllers/dataclips/insights_controller.rb +45 -0
  100. data/app/helpers/dataclips/application_helper.rb +4 -0
  101. data/app/models/dataclips/clip.rb +79 -0
  102. data/app/models/dataclips/insight.rb +18 -0
  103. data/app/models/dataclips/sql_query.rb +36 -0
  104. data/app/views/dataclips/application/_boolean.html.erb +1 -0
  105. data/app/views/dataclips/application/_date.html.erb +22 -0
  106. data/app/views/dataclips/application/_datetime.html.erb +25 -0
  107. data/app/views/dataclips/application/_float.html.erb +7 -0
  108. data/app/views/dataclips/application/_integer.html.erb +7 -0
  109. data/app/views/dataclips/application/_text.html.erb +10 -0
  110. data/app/views/dataclips/application/_time.html.erb +23 -0
  111. data/app/views/dataclips/clips/edit.html.erb +14 -0
  112. data/app/views/dataclips/clips/show.html.erb +109 -0
  113. data/app/views/dataclips/insights/show.html.erb +99 -0
  114. data/app/views/layouts/dataclips/application.html.erb +14 -0
  115. data/config/initializers/assets.rb +1 -0
  116. data/config/routes.rb +9 -0
  117. data/db/migrate/20150101143530_create_dataclips_insights.rb +12 -0
  118. data/lib/dataclips.rb +47 -0
  119. data/lib/dataclips/engine.rb +29 -0
  120. data/lib/dataclips/version.rb +3 -0
  121. data/lib/tasks/dataclips_tasks.rake +4 -0
  122. data/test/dataclips_test.rb +7 -0
  123. data/test/dummy/README.rdoc +28 -0
  124. data/test/dummy/Rakefile +6 -0
  125. data/test/dummy/app/assets/javascripts/application.js +13 -0
  126. data/test/dummy/app/assets/stylesheets/application.css +15 -0
  127. data/test/dummy/app/controllers/application_controller.rb +5 -0
  128. data/test/dummy/app/helpers/application_helper.rb +2 -0
  129. data/test/dummy/app/views/layouts/application.html.erb +14 -0
  130. data/test/dummy/bin/bundle +3 -0
  131. data/test/dummy/bin/rails +4 -0
  132. data/test/dummy/bin/rake +4 -0
  133. data/test/dummy/config.ru +4 -0
  134. data/test/dummy/config/application.rb +23 -0
  135. data/test/dummy/config/boot.rb +5 -0
  136. data/test/dummy/config/database.yml +25 -0
  137. data/test/dummy/config/environment.rb +5 -0
  138. data/test/dummy/config/environments/development.rb +37 -0
  139. data/test/dummy/config/environments/production.rb +78 -0
  140. data/test/dummy/config/environments/test.rb +39 -0
  141. data/test/dummy/config/initializers/assets.rb +8 -0
  142. data/test/dummy/config/initializers/backtrace_silencers.rb +7 -0
  143. data/test/dummy/config/initializers/cookies_serializer.rb +3 -0
  144. data/test/dummy/config/initializers/filter_parameter_logging.rb +4 -0
  145. data/test/dummy/config/initializers/inflections.rb +16 -0
  146. data/test/dummy/config/initializers/mime_types.rb +4 -0
  147. data/test/dummy/config/initializers/session_store.rb +3 -0
  148. data/test/dummy/config/initializers/wrap_parameters.rb +14 -0
  149. data/test/dummy/config/locales/en.yml +23 -0
  150. data/test/dummy/config/routes.rb +4 -0
  151. data/test/dummy/config/secrets.yml +22 -0
  152. data/test/dummy/public/404.html +67 -0
  153. data/test/dummy/public/422.html +67 -0
  154. data/test/dummy/public/500.html +66 -0
  155. data/test/dummy/public/favicon.ico +0 -0
  156. data/test/integration/navigation_test.rb +10 -0
  157. data/test/test_helper.rb +17 -0
  158. metadata +348 -0
@@ -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(border .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,103 @@
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
+ // Reset font and text propertes given new insertion method
13
+ font-family: $font-family-base;
14
+ font-size: $font-size-small;
15
+ font-weight: normal;
16
+ line-height: 1.4;
17
+ @include opacity(0);
18
+
19
+ &.in { @include opacity($tooltip-opacity); }
20
+ &.top { margin-top: -3px; padding: $tooltip-arrow-width 0; }
21
+ &.right { margin-left: 3px; padding: 0 $tooltip-arrow-width; }
22
+ &.bottom { margin-top: 3px; padding: $tooltip-arrow-width 0; }
23
+ &.left { margin-left: -3px; padding: 0 $tooltip-arrow-width; }
24
+ }
25
+
26
+ // Wrapper for the tooltip content
27
+ .tooltip-inner {
28
+ max-width: $tooltip-max-width;
29
+ padding: 3px 8px;
30
+ color: $tooltip-color;
31
+ text-align: center;
32
+ text-decoration: none;
33
+ background-color: $tooltip-bg;
34
+ border-radius: $border-radius-base;
35
+ }
36
+
37
+ // Arrows
38
+ .tooltip-arrow {
39
+ position: absolute;
40
+ width: 0;
41
+ height: 0;
42
+ border-color: transparent;
43
+ border-style: solid;
44
+ }
45
+ // Note: Deprecated .top-left, .top-right, .bottom-left, and .bottom-right as of v3.3.1
46
+ .tooltip {
47
+ &.top .tooltip-arrow {
48
+ bottom: 0;
49
+ left: 50%;
50
+ margin-left: -$tooltip-arrow-width;
51
+ border-width: $tooltip-arrow-width $tooltip-arrow-width 0;
52
+ border-top-color: $tooltip-arrow-color;
53
+ }
54
+ &.top-left .tooltip-arrow {
55
+ bottom: 0;
56
+ right: $tooltip-arrow-width;
57
+ margin-bottom: -$tooltip-arrow-width;
58
+ border-width: $tooltip-arrow-width $tooltip-arrow-width 0;
59
+ border-top-color: $tooltip-arrow-color;
60
+ }
61
+ &.top-right .tooltip-arrow {
62
+ bottom: 0;
63
+ left: $tooltip-arrow-width;
64
+ margin-bottom: -$tooltip-arrow-width;
65
+ border-width: $tooltip-arrow-width $tooltip-arrow-width 0;
66
+ border-top-color: $tooltip-arrow-color;
67
+ }
68
+ &.right .tooltip-arrow {
69
+ top: 50%;
70
+ left: 0;
71
+ margin-top: -$tooltip-arrow-width;
72
+ border-width: $tooltip-arrow-width $tooltip-arrow-width $tooltip-arrow-width 0;
73
+ border-right-color: $tooltip-arrow-color;
74
+ }
75
+ &.left .tooltip-arrow {
76
+ top: 50%;
77
+ right: 0;
78
+ margin-top: -$tooltip-arrow-width;
79
+ border-width: $tooltip-arrow-width 0 $tooltip-arrow-width $tooltip-arrow-width;
80
+ border-left-color: $tooltip-arrow-color;
81
+ }
82
+ &.bottom .tooltip-arrow {
83
+ top: 0;
84
+ left: 50%;
85
+ margin-left: -$tooltip-arrow-width;
86
+ border-width: 0 $tooltip-arrow-width $tooltip-arrow-width;
87
+ border-bottom-color: $tooltip-arrow-color;
88
+ }
89
+ &.bottom-left .tooltip-arrow {
90
+ top: 0;
91
+ right: $tooltip-arrow-width;
92
+ margin-top: -$tooltip-arrow-width;
93
+ border-width: 0 $tooltip-arrow-width $tooltip-arrow-width;
94
+ border-bottom-color: $tooltip-arrow-color;
95
+ }
96
+ &.bottom-right .tooltip-arrow {
97
+ top: 0;
98
+ left: $tooltip-arrow-width;
99
+ margin-top: -$tooltip-arrow-width;
100
+ border-width: 0 $tooltip-arrow-width $tooltip-arrow-width;
101
+ border-bottom-color: $tooltip-arrow-color;
102
+ }
103
+ }
@@ -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: (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
+ }
82
+
83
+ mark,
84
+ .mark {
85
+ background-color: $state-warning-bg;
86
+ padding: .2em;
87
+ }
88
+
89
+ // Alignment
90
+ .text-left { text-align: left; }
91
+ .text-right { text-align: right; }
92
+ .text-center { text-align: center; }
93
+ .text-justify { text-align: justify; }
94
+ .text-nowrap { white-space: nowrap; }
95
+
96
+ // Transformation
97
+ .text-lowercase { text-transform: lowercase; }
98
+ .text-uppercase { text-transform: uppercase; }
99
+ .text-capitalize { text-transform: capitalize; }
100
+
101
+ // Contextual colors
102
+ .text-muted {
103
+ color: $text-muted;
104
+ }
105
+
106
+ @include text-emphasis-variant('.text-primary', $brand-primary);
107
+
108
+ @include text-emphasis-variant('.text-success', $state-success-text);
109
+
110
+ @include text-emphasis-variant('.text-info', $state-info-text);
111
+
112
+ @include text-emphasis-variant('.text-warning', $state-warning-text);
113
+
114
+ @include text-emphasis-variant('.text-danger', $state-danger-text);
115
+
116
+ // Contextual backgrounds
117
+ // For now we'll leave these alongside the text classes until v4 when we can
118
+ // safely shift things around (per SemVer rules).
119
+ .bg-primary {
120
+ // Given the contrast here, this is the only class to have its color inverted
121
+ // automatically.
122
+ color: #fff;
123
+ }
124
+ @include bg-variant('.bg-primary', $brand-primary);
125
+
126
+ @include bg-variant('.bg-success', $state-success-bg);
127
+
128
+ @include bg-variant('.bg-info', $state-info-bg);
129
+
130
+ @include bg-variant('.bg-warning', $state-warning-bg);
131
+
132
+ @include bg-variant('.bg-danger', $state-danger-bg);
133
+
134
+
135
+ // Page header
136
+ // -------------------------
137
+
138
+ .page-header {
139
+ padding-bottom: (($line-height-computed / 2) - 1);
140
+ margin: ($line-height-computed * 2) 0 $line-height-computed;
141
+ border-bottom: 1px solid $page-header-border-color;
142
+ }
143
+
144
+
145
+ // Lists
146
+ // -------------------------
147
+
148
+ // Unordered and Ordered lists
149
+ ul,
150
+ ol {
151
+ margin-top: 0;
152
+ margin-bottom: ($line-height-computed / 2);
153
+ ul,
154
+ ol {
155
+ margin-bottom: 0;
156
+ }
157
+ }
158
+
159
+ // List options
160
+
161
+ // [converter] extracted from `.list-unstyled` for libsass compatibility
162
+ @mixin list-unstyled {
163
+ padding-left: 0;
164
+ list-style: none;
165
+ }
166
+ // [converter] extracted as `@mixin list-unstyled` for libsass compatibility
167
+ .list-unstyled {
168
+ @include list-unstyled;
169
+ }
170
+
171
+
172
+ // Inline turns list items into inline-block
173
+ .list-inline {
174
+ @include list-unstyled;
175
+ margin-left: -5px;
176
+
177
+ > li {
178
+ display: inline-block;
179
+ padding-left: 5px;
180
+ padding-right: 5px;
181
+ }
182
+ }
183
+
184
+ // Description Lists
185
+ dl {
186
+ margin-top: 0; // Remove browser default
187
+ margin-bottom: $line-height-computed;
188
+ }
189
+ dt,
190
+ dd {
191
+ line-height: $line-height-base;
192
+ }
193
+ dt {
194
+ font-weight: bold;
195
+ }
196
+ dd {
197
+ margin-left: 0; // Undo browser default
198
+ }
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
+
205
+ .dl-horizontal {
206
+ dd {
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
+ }
221
+ }
222
+ }
223
+
224
+
225
+ // Misc
226
+ // -------------------------
227
+
228
+ // Abbreviations and acronyms
229
+ abbr[title],
230
+ // Add data-* attribute to help out our tooltip plugin, per https://github.com/twbs/bootstrap/issues/5257
231
+ abbr[data-original-title] {
232
+ cursor: help;
233
+ border-bottom: 1px dotted $abbr-border-color;
234
+ }
235
+ .initialism {
236
+ font-size: 90%;
237
+ text-transform: uppercase;
238
+ }
239
+
240
+ // Blockquotes
241
+ blockquote {
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
+ }
253
+ }
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 {
260
+ display: block;
261
+ font-size: 80%; // back to default font-size
262
+ line-height: $line-height-base;
263
+ color: $blockquote-small-color;
264
+
265
+ &:before {
266
+ content: '\2014 \00A0'; // em dash, nbsp
267
+ }
268
+ }
269
+ }
270
+
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
289
+ }
290
+ }
291
+ }
292
+
293
+ // Addresses
294
+ address {
295
+ margin-bottom: $line-height-computed;
296
+ font-style: normal;
297
+ line-height: $line-height-base;
298
+ }
@@ -0,0 +1,56 @@
1
+ //
2
+ // Utility classes
3
+ // --------------------------------------------------
4
+
5
+
6
+ // Floats
7
+ // -------------------------
8
+
9
+ .clearfix {
10
+ @include clearfix;
11
+ }
12
+ .center-block {
13
+ @include center-block;
14
+ }
15
+ .pull-right {
16
+ float: right !important;
17
+ }
18
+ .pull-left {
19
+ float: left !important;
20
+ }
21
+
22
+
23
+ // Toggling content
24
+ // -------------------------
25
+
26
+ // Note: Deprecated .hide in favor of .hidden or .sr-only (as appropriate) in v3.0.1
27
+ .hide {
28
+ display: none !important;
29
+ }
30
+ .show {
31
+ display: block !important;
32
+ }
33
+ .invisible {
34
+ visibility: hidden;
35
+ }
36
+ .text-hide {
37
+ @include text-hide;
38
+ }
39
+
40
+
41
+ // Hide from screenreaders and browsers
42
+ //
43
+ // Credit: HTML5 Boilerplate
44
+
45
+ .hidden {
46
+ display: none !important;
47
+ visibility: hidden !important;
48
+ }
49
+
50
+
51
+ // For Affix plugin
52
+ // -------------------------
53
+
54
+ .affix {
55
+ position: fixed;
56
+ }