twigg-app 0.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (175) hide show
  1. checksums.yaml +7 -0
  2. data/data/quips.yml +45 -0
  3. data/lib/twigg-app/app/quips.rb +13 -0
  4. data/lib/twigg-app/app/routes.rb +43 -0
  5. data/lib/twigg-app/app/server.rb +146 -0
  6. data/lib/twigg-app/app/version.rb +5 -0
  7. data/lib/twigg-app/app.rb +14 -0
  8. data/lib/twigg-app.rb +5 -0
  9. data/public/application.js +106 -0
  10. data/public/favicon.ico +0 -0
  11. data/public/favicon.png +0 -0
  12. data/public/vendor/bootstrap/CNAME +1 -0
  13. data/public/vendor/bootstrap/CONTRIBUTING.md +66 -0
  14. data/public/vendor/bootstrap/Gruntfile.js +195 -0
  15. data/public/vendor/bootstrap/LICENSE +176 -0
  16. data/public/vendor/bootstrap/README.md +139 -0
  17. data/public/vendor/bootstrap/_config.yml +28 -0
  18. data/public/vendor/bootstrap/_includes/ads.html +1 -0
  19. data/public/vendor/bootstrap/_includes/footer.html +33 -0
  20. data/public/vendor/bootstrap/_includes/header.html +43 -0
  21. data/public/vendor/bootstrap/_includes/nav-components.html +135 -0
  22. data/public/vendor/bootstrap/_includes/nav-css.html +77 -0
  23. data/public/vendor/bootstrap/_includes/nav-customize.html +40 -0
  24. data/public/vendor/bootstrap/_includes/nav-getting-started.html +28 -0
  25. data/public/vendor/bootstrap/_includes/nav-javascript.html +88 -0
  26. data/public/vendor/bootstrap/_includes/nav-main.html +32 -0
  27. data/public/vendor/bootstrap/_includes/old-bs-docs.html +8 -0
  28. data/public/vendor/bootstrap/_includes/social-buttons.html +16 -0
  29. data/public/vendor/bootstrap/_layouts/customize.html +52 -0
  30. data/public/vendor/bootstrap/_layouts/default.html +72 -0
  31. data/public/vendor/bootstrap/_layouts/home.html +43 -0
  32. data/public/vendor/bootstrap/assets/css/docs.css +896 -0
  33. data/public/vendor/bootstrap/assets/css/pygments-manni.css +66 -0
  34. data/public/vendor/bootstrap/assets/ico/apple-touch-icon-114-precomposed.png +0 -0
  35. data/public/vendor/bootstrap/assets/ico/apple-touch-icon-144-precomposed.png +0 -0
  36. data/public/vendor/bootstrap/assets/ico/apple-touch-icon-57-precomposed.png +0 -0
  37. data/public/vendor/bootstrap/assets/ico/apple-touch-icon-72-precomposed.png +0 -0
  38. data/public/vendor/bootstrap/assets/ico/favicon.png +0 -0
  39. data/public/vendor/bootstrap/assets/js/application.js +82 -0
  40. data/public/vendor/bootstrap/assets/js/customizer.js +175 -0
  41. data/public/vendor/bootstrap/assets/js/holder.js +419 -0
  42. data/public/vendor/bootstrap/assets/js/html5shiv.js +8 -0
  43. data/public/vendor/bootstrap/assets/js/jquery.bbq.min.js +1287 -0
  44. data/public/vendor/bootstrap/assets/js/jquery.js +5 -0
  45. data/public/vendor/bootstrap/assets/js/jszip.js +1425 -0
  46. data/public/vendor/bootstrap/assets/js/less.js +9 -0
  47. data/public/vendor/bootstrap/assets/js/respond.min.js +6 -0
  48. data/public/vendor/bootstrap/assets/js/uglify.js +14 -0
  49. data/public/vendor/bootstrap/bower.json +11 -0
  50. data/public/vendor/bootstrap/browserstack.json +37 -0
  51. data/public/vendor/bootstrap/components.html +2555 -0
  52. data/public/vendor/bootstrap/composer.json +20 -0
  53. data/public/vendor/bootstrap/css.html +2276 -0
  54. data/public/vendor/bootstrap/customize.html +1480 -0
  55. data/public/vendor/bootstrap/dist/css/bootstrap.css +5579 -0
  56. data/public/vendor/bootstrap/dist/css/bootstrap.min.css +9 -0
  57. data/public/vendor/bootstrap/dist/js/bootstrap.js +1993 -0
  58. data/public/vendor/bootstrap/dist/js/bootstrap.min.js +6 -0
  59. data/public/vendor/bootstrap/getting-started.html +375 -0
  60. data/public/vendor/bootstrap/index.html +16 -0
  61. data/public/vendor/bootstrap/javascript.html +1904 -0
  62. data/public/vendor/bootstrap/js/affix.js +126 -0
  63. data/public/vendor/bootstrap/js/alert.js +98 -0
  64. data/public/vendor/bootstrap/js/button.js +109 -0
  65. data/public/vendor/bootstrap/js/carousel.js +217 -0
  66. data/public/vendor/bootstrap/js/collapse.js +179 -0
  67. data/public/vendor/bootstrap/js/dropdown.js +154 -0
  68. data/public/vendor/bootstrap/js/modal.js +244 -0
  69. data/public/vendor/bootstrap/js/popover.js +117 -0
  70. data/public/vendor/bootstrap/js/scrollspy.js +158 -0
  71. data/public/vendor/bootstrap/js/tab.js +135 -0
  72. data/public/vendor/bootstrap/js/tests/index.html +52 -0
  73. data/public/vendor/bootstrap/js/tests/phantom.js +63 -0
  74. data/public/vendor/bootstrap/js/tests/server.js +14 -0
  75. data/public/vendor/bootstrap/js/tests/unit/affix.js +25 -0
  76. data/public/vendor/bootstrap/js/tests/unit/alert.js +62 -0
  77. data/public/vendor/bootstrap/js/tests/unit/button.js +116 -0
  78. data/public/vendor/bootstrap/js/tests/unit/carousel.js +87 -0
  79. data/public/vendor/bootstrap/js/tests/unit/collapse.js +164 -0
  80. data/public/vendor/bootstrap/js/tests/unit/dropdown.js +219 -0
  81. data/public/vendor/bootstrap/js/tests/unit/modal.js +177 -0
  82. data/public/vendor/bootstrap/js/tests/unit/phantom.js +69 -0
  83. data/public/vendor/bootstrap/js/tests/unit/popover.js +133 -0
  84. data/public/vendor/bootstrap/js/tests/unit/scrollspy.js +37 -0
  85. data/public/vendor/bootstrap/js/tests/unit/tab.js +86 -0
  86. data/public/vendor/bootstrap/js/tests/unit/tooltip.js +437 -0
  87. data/public/vendor/bootstrap/js/tests/unit/transition.js +13 -0
  88. data/public/vendor/bootstrap/js/tests/vendor/jquery.js +5 -0
  89. data/public/vendor/bootstrap/js/tests/vendor/qunit.css +232 -0
  90. data/public/vendor/bootstrap/js/tests/vendor/qunit.js +1510 -0
  91. data/public/vendor/bootstrap/js/tooltip.js +382 -0
  92. data/public/vendor/bootstrap/js/transition.js +56 -0
  93. data/public/vendor/bootstrap/less/alerts.less +71 -0
  94. data/public/vendor/bootstrap/less/badges.less +51 -0
  95. data/public/vendor/bootstrap/less/bootstrap.less +63 -0
  96. data/public/vendor/bootstrap/less/breadcrumbs.less +23 -0
  97. data/public/vendor/bootstrap/less/button-groups.less +244 -0
  98. data/public/vendor/bootstrap/less/buttons.less +159 -0
  99. data/public/vendor/bootstrap/less/carousel.less +204 -0
  100. data/public/vendor/bootstrap/less/close.less +33 -0
  101. data/public/vendor/bootstrap/less/code.less +56 -0
  102. data/public/vendor/bootstrap/less/component-animations.less +29 -0
  103. data/public/vendor/bootstrap/less/dropdowns.less +176 -0
  104. data/public/vendor/bootstrap/less/forms.less +332 -0
  105. data/public/vendor/bootstrap/less/grid.less +340 -0
  106. data/public/vendor/bootstrap/less/input-groups.less +127 -0
  107. data/public/vendor/bootstrap/less/jumbotron.less +29 -0
  108. data/public/vendor/bootstrap/less/labels.less +54 -0
  109. data/public/vendor/bootstrap/less/list-group.less +88 -0
  110. data/public/vendor/bootstrap/less/media.less +56 -0
  111. data/public/vendor/bootstrap/less/mixins.less +693 -0
  112. data/public/vendor/bootstrap/less/modals.less +133 -0
  113. data/public/vendor/bootstrap/less/navbar.less +559 -0
  114. data/public/vendor/bootstrap/less/navs.less +228 -0
  115. data/public/vendor/bootstrap/less/normalize.less +396 -0
  116. data/public/vendor/bootstrap/less/pager.less +55 -0
  117. data/public/vendor/bootstrap/less/pagination.less +72 -0
  118. data/public/vendor/bootstrap/less/panels.less +128 -0
  119. data/public/vendor/bootstrap/less/popovers.less +133 -0
  120. data/public/vendor/bootstrap/less/print.less +100 -0
  121. data/public/vendor/bootstrap/less/progress-bars.less +99 -0
  122. data/public/vendor/bootstrap/less/responsive-utilities.less +149 -0
  123. data/public/vendor/bootstrap/less/scaffolding.less +111 -0
  124. data/public/vendor/bootstrap/less/tables.less +211 -0
  125. data/public/vendor/bootstrap/less/thumbnails.less +42 -0
  126. data/public/vendor/bootstrap/less/tooltip.less +95 -0
  127. data/public/vendor/bootstrap/less/type.less +238 -0
  128. data/public/vendor/bootstrap/less/utilities.less +42 -0
  129. data/public/vendor/bootstrap/less/variables.less +607 -0
  130. data/public/vendor/bootstrap/less/wells.less +29 -0
  131. data/public/vendor/bootstrap/package.json +33 -0
  132. data/public/vendor/bootstrap-glyphicons/CHANGELOG.md +3 -0
  133. data/public/vendor/bootstrap-glyphicons/CNAME +1 -0
  134. data/public/vendor/bootstrap-glyphicons/CONTRIBUTING.md +54 -0
  135. data/public/vendor/bootstrap-glyphicons/LICENSE +19 -0
  136. data/public/vendor/bootstrap-glyphicons/README.md +61 -0
  137. data/public/vendor/bootstrap-glyphicons/_config.yml +12 -0
  138. data/public/vendor/bootstrap-glyphicons/composer.json +9 -0
  139. data/public/vendor/bootstrap-glyphicons/css/bootstrap-glyphicons.css +2 -0
  140. data/public/vendor/bootstrap-glyphicons/css/bootstrap.css +9 -0
  141. data/public/vendor/bootstrap-glyphicons/css/docs.css +160 -0
  142. data/public/vendor/bootstrap-glyphicons/fonts/glyphiconshalflings-regular.eot +0 -0
  143. data/public/vendor/bootstrap-glyphicons/fonts/glyphiconshalflings-regular.otf +0 -0
  144. data/public/vendor/bootstrap-glyphicons/fonts/glyphiconshalflings-regular.svg +175 -0
  145. data/public/vendor/bootstrap-glyphicons/fonts/glyphiconshalflings-regular.ttf +0 -0
  146. data/public/vendor/bootstrap-glyphicons/fonts/glyphiconshalflings-regular.woff +0 -0
  147. data/public/vendor/bootstrap-glyphicons/index.html +255 -0
  148. data/public/vendor/bootstrap-glyphicons/less/bootstrap-glyphicons.less +201 -0
  149. data/public/vendor/bootstrap-glyphicons/package.json +18 -0
  150. data/public/vendor/d3/LICENSE +26 -0
  151. data/public/vendor/d3/README.md +7 -0
  152. data/public/vendor/d3/bower.json +25 -0
  153. data/public/vendor/d3/d3.js +8810 -0
  154. data/public/vendor/d3/d3.min.js +5 -0
  155. data/public/vendor/jquery/README.md +11 -0
  156. data/public/vendor/jquery/bower.json +11 -0
  157. data/public/vendor/jquery/component.json +15 -0
  158. data/public/vendor/jquery/composer.json +35 -0
  159. data/public/vendor/jquery/jquery-migrate.js +511 -0
  160. data/public/vendor/jquery/jquery-migrate.min.js +3 -0
  161. data/public/vendor/jquery/jquery.js +8829 -0
  162. data/public/vendor/jquery/jquery.min.js +6 -0
  163. data/public/vendor/jquery/jquery.min.map +1 -0
  164. data/public/vendor/jquery/package.json +7 -0
  165. data/public/vendor/replacejs/CHANGELOG.md +3 -0
  166. data/public/vendor/replacejs/MIT-LICENSE.txt +20 -0
  167. data/public/vendor/replacejs/README.md +123 -0
  168. data/public/vendor/replacejs/bower.json +24 -0
  169. data/public/vendor/replacejs/primer.js +17 -0
  170. data/public/vendor/replacejs/primer.min.js +1 -0
  171. data/public/vendor/replacejs/replace.js +182 -0
  172. data/public/vendor/stupidtable.js +158 -0
  173. data/views/dashboard.haml +17 -0
  174. data/views/layout.haml +60 -0
  175. metadata +330 -0
@@ -0,0 +1,133 @@
1
+ //
2
+ // Modals
3
+ // --------------------------------------------------
4
+
5
+ // .modal-open - body class for killing the scroll
6
+ // .modal - container to scroll within
7
+ // .modal-dialog - positioning shell for the actual modal
8
+ // .modal-content - actual modal w/ bg and corners and shit
9
+
10
+ // Kill the scroll on the body
11
+ .modal-open {
12
+ overflow: hidden;
13
+ }
14
+
15
+ // Container that the modal scrolls within
16
+ .modal {
17
+ display: none;
18
+ overflow: auto;
19
+ overflow-y: scroll;
20
+ position: fixed;
21
+ top: 0;
22
+ right: 0;
23
+ bottom: 0;
24
+ left: 0;
25
+ z-index: @zindex-modal-background;
26
+
27
+ // When fading in the modal, animate it to slide down
28
+ &.fade .modal-dialog {
29
+ .translate(0, -25%);
30
+ .transition-transform(~"0.3s ease-out");
31
+ }
32
+ &.in .modal-dialog { .translate(0, 0)}
33
+ }
34
+
35
+ // Shell div to position the modal with bottom padding
36
+ .modal-dialog {
37
+ margin-left: auto;
38
+ margin-right: auto;
39
+ width: auto;
40
+ padding: 10px;
41
+ z-index: (@zindex-modal-background + 10);
42
+ }
43
+
44
+ // Actual modal
45
+ .modal-content {
46
+ position: relative;
47
+ background-color: @modal-content-bg;
48
+ border: 1px solid @modal-content-fallback-border-color; //old browsers fallback (ie8 etc)
49
+ border: 1px solid @modal-content-border-color;
50
+ border-radius: @border-radius-large;
51
+ .box-shadow(0 3px 9px rgba(0,0,0,.5));
52
+ background-clip: padding-box;
53
+ // Remove focus outline from opened modal
54
+ outline: none;
55
+ }
56
+
57
+ // Modal background
58
+ .modal-backdrop {
59
+ position: fixed;
60
+ top: 0;
61
+ right: 0;
62
+ bottom: 0;
63
+ left: 0;
64
+ z-index: (@zindex-modal-background - 10);
65
+ background-color: @modal-backdrop-bg;
66
+ // Fade for backdrop
67
+ &.fade { .opacity(0); }
68
+ &.in { .opacity(.5); }
69
+ }
70
+
71
+ // Modal header
72
+ // Top section of the modal w/ title and dismiss
73
+ .modal-header {
74
+ padding: @modal-title-padding;
75
+ border-bottom: 1px solid @modal-header-border-color;
76
+ min-height: (@modal-title-padding + @modal-title-line-height);
77
+ }
78
+ // Close icon
79
+ .modal-header .close {
80
+ margin-top: -2px;
81
+ }
82
+
83
+ // Title text within header
84
+ .modal-title {
85
+ margin: 0;
86
+ line-height: @modal-title-line-height;
87
+ }
88
+
89
+ // Modal body
90
+ // Where all modal content resides (sibling of .modal-header and .modal-footer)
91
+ .modal-body {
92
+ position: relative;
93
+ padding: @modal-inner-padding;
94
+ }
95
+
96
+ // Footer (for actions)
97
+ .modal-footer {
98
+ margin-top: 15px;
99
+ padding: (@modal-inner-padding - 1) @modal-inner-padding @modal-inner-padding;
100
+ text-align: right; // right align buttons
101
+ border-top: 1px solid @modal-footer-border-color;
102
+ .clearfix(); // clear it in case folks use .pull-* classes on buttons
103
+
104
+ // Properly space out buttons
105
+ .btn + .btn {
106
+ margin-left: 5px;
107
+ margin-bottom: 0; // account for input[type="submit"] which gets the bottom margin like all other inputs
108
+ }
109
+ // but override that for button groups
110
+ .btn-group .btn + .btn {
111
+ margin-left: -1px;
112
+ }
113
+ // and override it for block buttons as well
114
+ .btn-block + .btn-block {
115
+ margin-left: 0;
116
+ }
117
+ }
118
+
119
+ // Scale up the modal
120
+ @media screen and (min-width: @screen-tablet) {
121
+
122
+ .modal-dialog {
123
+ left: 50%;
124
+ right: auto;
125
+ width: 600px;
126
+ padding-top: 30px;
127
+ padding-bottom: 30px;
128
+ }
129
+ .modal-content {
130
+ .box-shadow(0 5px 15px rgba(0,0,0,.5));
131
+ }
132
+
133
+ }
@@ -0,0 +1,559 @@
1
+ //
2
+ // Navbars
3
+ // --------------------------------------------------
4
+
5
+
6
+ // Wrapper and base class
7
+ //
8
+ // Provide a static navbar from which we expand to create full-width, fixed, and
9
+ // other navbar variations.
10
+
11
+ .navbar {
12
+ position: relative;
13
+ min-height: @navbar-height; // Ensure a navbar always shows (e.g., without a .navbar-brand in collapsed mode)
14
+ margin-bottom: @navbar-margin-bottom;
15
+ background-color: @navbar-bg;
16
+ border: 1px solid @navbar-border;
17
+
18
+ // Prevent floats from breaking the navbar
19
+ .clearfix();
20
+
21
+ @media (min-width: @grid-float-breakpoint) {
22
+ border-radius: @navbar-border-radius;
23
+ }
24
+ }
25
+
26
+
27
+ // Navbar heading
28
+ //
29
+ // Groups `.navbar-brand` and `.navbar-toggle` into a single component for easy
30
+ // styling of responsive aspects.
31
+
32
+ .navbar-header {
33
+ padding-left: @navbar-padding-horizontal;
34
+ padding-right: @navbar-padding-horizontal;
35
+ .clearfix();
36
+
37
+ @media (min-width: @grid-float-breakpoint) {
38
+ float: left;
39
+ }
40
+ }
41
+
42
+
43
+ // Navbar collapse (body)
44
+ //
45
+ // Group your navbar content into this for easy collapsing and expanding across
46
+ // various device sizes. By default, this content is collapsed when <768px, but
47
+ // will expand past that for a horizontal display.
48
+ //
49
+ // To start (on mobile devices) the navbar links, forms, and buttons are stacked
50
+ // vertically and include a `max-height` to overflow in case you have too much
51
+ // content for the user's viewport.
52
+
53
+ .navbar-collapse {
54
+ padding: 5px @navbar-padding-horizontal;
55
+ border-top: 1px solid darken(@navbar-bg, 7%);
56
+ box-shadow: inset 0 1px 0 rgba(255,255,255,.1);
57
+ // Clear floated elements and prevent collapsing of padding
58
+ .clearfix();
59
+
60
+ // This is not automatically added to the `.navbar-fixed-top` because it causes
61
+ // z-index bugs in iOS7 (possibly earlier).
62
+ max-height: 340px;
63
+ overflow-x: visible;
64
+ overflow-y: auto;
65
+ -webkit-overflow-scrolling: touch;
66
+
67
+ @media (min-width: @grid-float-breakpoint) {
68
+ width: auto;
69
+ padding-top: 0;
70
+ padding-bottom: 0;
71
+ border-top: 0;
72
+ box-shadow: none;
73
+ }
74
+ }
75
+
76
+
77
+ //
78
+ // Navbar alignment options
79
+ //
80
+ // Display the navbar across the entirity of the page or fixed it to the top or
81
+ // bottom of the page.
82
+
83
+ // Static top (unfixed, but 100% wide) navbar
84
+ .navbar-static-top {
85
+ @media (min-width: @grid-float-breakpoint) {
86
+ border-width: 0 0 1px;
87
+ border-radius: 0;
88
+ }
89
+ }
90
+
91
+ // Fix the top/bottom navbars when screen real estate supports it
92
+ .navbar-fixed-top,
93
+ .navbar-fixed-bottom {
94
+ position: fixed;
95
+ right: 0;
96
+ left: 0;
97
+ z-index: @zindex-navbar-fixed;
98
+ border-width: 0 0 1px;
99
+
100
+ // Undo the rounded corners
101
+ @media (min-width: @grid-float-breakpoint) {
102
+ border-radius: 0;
103
+ }
104
+ }
105
+ .navbar-fixed-top {
106
+ top: 0;
107
+ }
108
+ .navbar-fixed-bottom {
109
+ bottom: 0;
110
+ margin-bottom: 0; // override .navbar defaults
111
+ }
112
+
113
+
114
+ // Brand/project name
115
+
116
+ .navbar-brand {
117
+ float: left;
118
+ margin-right: (@navbar-padding-horizontal / 2);
119
+ padding-top: @navbar-padding-vertical;
120
+ padding-bottom: @navbar-padding-vertical;
121
+ font-size: @font-size-large;
122
+ line-height: @line-height-computed;
123
+ color: @navbar-brand-color;
124
+ &:hover,
125
+ &:focus {
126
+ color: @navbar-brand-hover-color;
127
+ text-decoration: none;
128
+ background-color: @navbar-brand-hover-bg;
129
+ }
130
+ }
131
+
132
+
133
+ // Navbar toggle
134
+ //
135
+ // Custom button for toggling the `.navbar-collapse`, powered by the collapse
136
+ // JavaScript plugin.
137
+
138
+ .navbar-toggle {
139
+ position: relative;
140
+ float: right;
141
+ padding: 9px 10px;
142
+ .navbar-vertical-align(34px);
143
+ background-color: transparent;
144
+ border: 1px solid @navbar-toggle-border-color;
145
+ border-radius: @border-radius-base;
146
+
147
+ &:hover,
148
+ &:focus {
149
+ background-color: @navbar-toggle-hover-bg;
150
+ }
151
+
152
+ // Bars
153
+ .icon-bar {
154
+ display: block;
155
+ width: 22px;
156
+ height: 2px;
157
+ background-color: @navbar-toggle-icon-bar-bg;
158
+ border-radius: 1px;
159
+ }
160
+ .icon-bar + .icon-bar {
161
+ margin-top: 4px;
162
+ }
163
+ }
164
+
165
+
166
+ // Navbar nav links
167
+ //
168
+ // Builds on top of the `.nav` components with it's own modifier class to make
169
+ // the nav the full height of the horizontal nav (above 768px).
170
+
171
+ .navbar-nav {
172
+ margin-left: -@navbar-padding-horizontal;
173
+ margin-right: -@navbar-padding-horizontal;
174
+
175
+ @media (min-width: @grid-float-breakpoint) {
176
+ margin-left: 0;
177
+ margin-right: 0;
178
+ }
179
+
180
+ > li > a {
181
+ padding-top: 10px;
182
+ padding-bottom: 10px;
183
+ color: @navbar-link-color;
184
+ line-height: @line-height-computed;
185
+ &:hover,
186
+ &:focus {
187
+ color: @navbar-link-hover-color;
188
+ background-color: @navbar-link-hover-bg;
189
+ }
190
+ }
191
+ > .active > a {
192
+ &,
193
+ &:hover,
194
+ &:focus {
195
+ color: @navbar-link-active-color;
196
+ background-color: @navbar-link-active-bg;
197
+ }
198
+ }
199
+ > .disabled > a {
200
+ &,
201
+ &:hover,
202
+ &:focus {
203
+ color: @navbar-link-disabled-color;
204
+ background-color: @navbar-link-disabled-bg;
205
+ }
206
+ }
207
+
208
+ @media (max-width: @screen-phone-max) {
209
+ // Dropdowns get custom display
210
+ .open .dropdown-menu {
211
+ position: static;
212
+ float: none;
213
+ width: auto;
214
+ margin-top: 0;
215
+ background-color: transparent;
216
+ border: 0;
217
+ box-shadow: none;
218
+ > li > a,
219
+ .dropdown-header {
220
+ padding: 5px 15px 5px 25px;
221
+ }
222
+ > li > a {
223
+ color: @navbar-link-color;
224
+ line-height: @line-height-computed;
225
+ &:hover,
226
+ &:focus {
227
+ color: @navbar-link-hover-color;
228
+ background-color: @navbar-link-hover-bg;
229
+ background-image: none;
230
+ }
231
+ }
232
+ > .active > a {
233
+ &,
234
+ &:hover,
235
+ &:focus {
236
+ color: @navbar-link-active-color;
237
+ background-color: @navbar-link-active-bg;
238
+ }
239
+ }
240
+ > .disabled > a {
241
+ &,
242
+ &:hover,
243
+ &:focus {
244
+ color: @navbar-link-disabled-color;
245
+ background-color: @navbar-link-disabled-bg;
246
+ }
247
+ }
248
+ }
249
+ }
250
+
251
+ }
252
+
253
+
254
+ // Component alignment
255
+ //
256
+ // Repurpose the pull utilities as their own navbar utilities to avoid specifity
257
+ // issues with parents and chaining. Only do this when the navbar is uncollapsed
258
+ // though so that navbar contents properly stack and align in mobile.
259
+
260
+ @media (min-width: @grid-float-breakpoint) {
261
+ .navbar-left { .pull-left(); }
262
+ .navbar-right { .pull-right(); }
263
+ }
264
+
265
+
266
+ // Navbar form
267
+ //
268
+ // Extension of the `.form-inline` with some extra flavor for optimum display in
269
+ // our navbars.
270
+
271
+ .navbar-form {
272
+ margin-left: -@navbar-padding-horizontal;
273
+ margin-right: -@navbar-padding-horizontal;
274
+ padding: 10px @navbar-padding-horizontal;
275
+ border-top: 1px solid darken(@navbar-bg, 7%);
276
+ border-bottom: 1px solid darken(@navbar-bg, 7%);
277
+
278
+ // Mixin behavior for optimum display
279
+ .form-inline();
280
+
281
+ .form-group {
282
+ @media (max-width: @screen-phone-max) {
283
+ margin-bottom: 5px;
284
+ }
285
+ }
286
+
287
+ // Vertically center in expanded, horizontal navbar
288
+ .navbar-vertical-align(@input-height-base);
289
+
290
+ // Undo 100% width for pull classes
291
+ @media (min-width: @grid-float-breakpoint) {
292
+ width: auto;
293
+ border: 0;
294
+ margin-left: 0;
295
+ margin-right: 0;
296
+ padding-top: 0;
297
+ padding-bottom: 0;
298
+ }
299
+ }
300
+
301
+
302
+ // Dropdown menus
303
+
304
+ // Menu position and menu carets
305
+ .navbar-nav > li > .dropdown-menu {
306
+ margin-top: 0;
307
+ .border-top-radius(0);
308
+ }
309
+ // Menu position and menu caret support for dropups via extra dropup class
310
+ .navbar-fixed-bottom .navbar-nav > li > .dropdown-menu {
311
+ .border-bottom-radius(0);
312
+ }
313
+
314
+ // Dropdown menu items and carets
315
+ .navbar-nav {
316
+ // Caret should match text color on hover
317
+ > .dropdown > a:hover .caret,
318
+ > .dropdown > a:focus .caret {
319
+ border-top-color: @navbar-link-hover-color;
320
+ border-bottom-color: @navbar-link-hover-color;
321
+ }
322
+
323
+ // Remove background color from open dropdown
324
+ > .open > a {
325
+ &,
326
+ &:hover,
327
+ &:focus {
328
+ background-color: @navbar-link-active-bg;
329
+ color: @navbar-link-active-color;
330
+ .caret {
331
+ border-top-color: @navbar-link-active-color;
332
+ border-bottom-color: @navbar-link-active-color;
333
+ }
334
+ }
335
+ }
336
+ > .dropdown > a .caret {
337
+ border-top-color: @navbar-link-color;
338
+ border-bottom-color: @navbar-link-color;
339
+ }
340
+ }
341
+
342
+ // Right aligned menus need alt position
343
+ .navbar-nav.pull-right > li > .dropdown-menu,
344
+ .navbar-nav > li > .dropdown-menu.pull-right {
345
+ left: auto;
346
+ right: 0;
347
+ }
348
+
349
+
350
+
351
+ // Inverse navbar
352
+ // --------------------------------------------------
353
+
354
+ .navbar-inverse {
355
+ background-color: @navbar-inverse-bg;
356
+ border-color: @navbar-inverse-border;
357
+
358
+ .navbar-brand {
359
+ color: @navbar-inverse-brand-color;
360
+ &:hover,
361
+ &:focus {
362
+ color: @navbar-inverse-brand-hover-color;
363
+ background-color: @navbar-inverse-brand-hover-bg;
364
+ }
365
+ }
366
+
367
+ .navbar-text {
368
+ color: @navbar-inverse-color;
369
+ }
370
+
371
+ .navbar-nav {
372
+ > li > a {
373
+ color: @navbar-inverse-link-color;
374
+
375
+ &:hover,
376
+ &:focus {
377
+ color: @navbar-inverse-link-hover-color;
378
+ background-color: @navbar-inverse-link-hover-bg;
379
+ }
380
+ }
381
+ > .active > a {
382
+ &,
383
+ &:hover,
384
+ &:focus {
385
+ color: @navbar-inverse-link-active-color;
386
+ background-color: @navbar-inverse-link-active-bg;
387
+ }
388
+ }
389
+ > .disabled > a {
390
+ &,
391
+ &:hover,
392
+ &:focus {
393
+ color: @navbar-inverse-link-disabled-color;
394
+ background-color: @navbar-inverse-link-disabled-bg;
395
+ }
396
+ }
397
+ }
398
+
399
+ // Darken the responsive nav toggle
400
+ .navbar-toggle {
401
+ border-color: @navbar-inverse-toggle-border-color;
402
+ &:hover,
403
+ &:focus {
404
+ background-color: @navbar-inverse-toggle-hover-bg;
405
+ }
406
+ .icon-bar {
407
+ background-color: @navbar-inverse-toggle-icon-bar-bg;
408
+ }
409
+ }
410
+
411
+ .navbar-collapse {
412
+ border-top-color: darken(@navbar-inverse-bg, 7%);
413
+ }
414
+
415
+ // Dropdowns
416
+ .navbar-nav {
417
+ > .open > a {
418
+ &,
419
+ &:hover,
420
+ &:focus {
421
+ background-color: @navbar-inverse-link-active-bg;
422
+ color: @navbar-inverse-link-active-color;
423
+ }
424
+ }
425
+ > .dropdown > a:hover .caret {
426
+ border-top-color: @navbar-inverse-link-hover-color;
427
+ border-bottom-color: @navbar-inverse-link-hover-color;
428
+ }
429
+ > .dropdown > a .caret {
430
+ border-top-color: @navbar-inverse-link-color;
431
+ border-bottom-color: @navbar-inverse-link-color;
432
+ }
433
+ > .open > a {
434
+ &,
435
+ &:hover,
436
+ &:focus {
437
+ .caret {
438
+ border-top-color: @navbar-inverse-link-active-color;
439
+ border-bottom-color: @navbar-inverse-link-active-color;
440
+ }
441
+ }
442
+ }
443
+
444
+ @media (max-width: @screen-phone-max) {
445
+ // Dropdowns get custom display
446
+ .open .dropdown-menu {
447
+ > .dropdown-header {
448
+ border-color: @navbar-inverse-border;
449
+ }
450
+ > li > a {
451
+ color: @navbar-inverse-link-color;
452
+ &:hover,
453
+ &:focus {
454
+ color: @navbar-inverse-link-hover-color;
455
+ background-color: @navbar-inverse-link-hover-bg;
456
+ }
457
+ }
458
+ > .active > a {
459
+ &,
460
+ &:hover,
461
+ &:focus {
462
+ color: @navbar-inverse-link-active-color;
463
+ background-color: @navbar-inverse-link-active-bg;
464
+ }
465
+ }
466
+ > .disabled > a {
467
+ &,
468
+ &:hover,
469
+ &:focus {
470
+ color: @navbar-inverse-link-disabled-color;
471
+ background-color: @navbar-inverse-link-disabled-bg;
472
+ }
473
+ }
474
+ }
475
+ }
476
+ }
477
+
478
+ }
479
+
480
+
481
+
482
+ // Responsive navbar
483
+ // --------------------------------------------------
484
+
485
+ @media screen and (min-width: @grid-float-breakpoint) {
486
+
487
+ .navbar-nav {
488
+ float: left;
489
+ // undo margin to make nav extend full height of navbar
490
+ margin-top: 0;
491
+ margin-bottom: 0;
492
+
493
+ > li {
494
+ float: left;
495
+ > a {
496
+ padding-top: ((@navbar-height - @line-height-computed) / 2);
497
+ padding-bottom: ((@navbar-height - @line-height-computed) / 2);
498
+ }
499
+ }
500
+ }
501
+
502
+ // Required to make the collapsing navbar work on regular desktops
503
+ .navbar-toggle {
504
+ position: relative;
505
+ top: auto;
506
+ left: auto;
507
+ display: none;
508
+ }
509
+ .navbar-collapse.collapse {
510
+ display: block !important;
511
+ height: auto !important;
512
+ padding-bottom: 0; // Override default setting
513
+ overflow: visible !important;
514
+ }
515
+
516
+ }
517
+
518
+
519
+
520
+ // Buttons in navbars
521
+ //
522
+ // Vertically center a button within a navbar (when *not* in a form).
523
+
524
+ .navbar-btn {
525
+ margin-top: ((@navbar-height - @input-height-base) / 2);
526
+ }
527
+
528
+
529
+
530
+ // Text in navbars
531
+ //
532
+ // Add a class to make any element properly align itself vertically within the navbars.
533
+
534
+ .navbar-text {
535
+ float: left;
536
+ .navbar-vertical-align(@line-height-computed);
537
+ }
538
+
539
+
540
+
541
+ // Links in navbars
542
+ //
543
+ // Add a class to ensure links outside the navbar nav are colored correctly.
544
+
545
+ // Default navbar variables
546
+ .navbar-link {
547
+ color: @navbar-link-color;
548
+ &:hover {
549
+ color: @navbar-link-hover-color;
550
+ }
551
+ }
552
+
553
+ // Use the inverse navbar variables
554
+ .navbar-inverse .navbar-link {
555
+ color: @navbar-inverse-link-color;
556
+ &:hover {
557
+ color: @navbar-inverse-link-hover-color;
558
+ }
559
+ }