underoos 1.0.0

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 (133) hide show
  1. data/.gitignore +8 -0
  2. data/.rvmrc +1 -0
  3. data/Gemfile +5 -0
  4. data/Gemfile.lock +143 -0
  5. data/LICENSE +26 -0
  6. data/Procfile +1 -0
  7. data/README.md +13 -0
  8. data/Rakefile +12 -0
  9. data/app/assets/javascripts/styleguide.js +132 -0
  10. data/app/assets/javascripts/underoos.js +18 -0
  11. data/app/assets/stylesheets/base/_button-btn-mixin.sass +72 -0
  12. data/app/assets/stylesheets/base/_elements.sass +61 -0
  13. data/app/assets/stylesheets/base/_forms.sass +362 -0
  14. data/app/assets/stylesheets/base/_helpers.sass +54 -0
  15. data/app/assets/stylesheets/base/_normalize.sass +114 -0
  16. data/app/assets/stylesheets/base/_scaffold.sass +51 -0
  17. data/app/assets/stylesheets/base/_tables.sass +99 -0
  18. data/app/assets/stylesheets/base/_transitions.sass +17 -0
  19. data/app/assets/stylesheets/base/_typography.sass +185 -0
  20. data/app/assets/stylesheets/components/_accordions.sass +17 -0
  21. data/app/assets/stylesheets/components/_breadcrumbs.sass +22 -0
  22. data/app/assets/stylesheets/components/_button-groups.sass +46 -0
  23. data/app/assets/stylesheets/components/_carets.sass +24 -0
  24. data/app/assets/stylesheets/components/_carousels.sass +18 -0
  25. data/app/assets/stylesheets/components/_close.sass +25 -0
  26. data/app/assets/stylesheets/components/_decals.sass +27 -0
  27. data/app/assets/stylesheets/components/_dropdowns.sass +85 -0
  28. data/app/assets/stylesheets/components/_media.sass +33 -0
  29. data/app/assets/stylesheets/components/_modals.sass +28 -0
  30. data/app/assets/stylesheets/components/_nav-lists.sass +22 -0
  31. data/app/assets/stylesheets/components/_navbars.sass +105 -0
  32. data/app/assets/stylesheets/components/_notifications.sass +108 -0
  33. data/app/assets/stylesheets/components/_paddles.sass +34 -0
  34. data/app/assets/stylesheets/components/_pagination.sass +41 -0
  35. data/app/assets/stylesheets/components/_pills.sass +64 -0
  36. data/app/assets/stylesheets/components/_popovers.sass +55 -0
  37. data/app/assets/stylesheets/components/_progress-bars.sass +29 -0
  38. data/app/assets/stylesheets/components/_tabs.sass +93 -0
  39. data/app/assets/stylesheets/components/_tooltips.sass +46 -0
  40. data/app/assets/stylesheets/components/_wells.sass +16 -0
  41. data/app/assets/stylesheets/layouts/_containers.sass +15 -0
  42. data/app/assets/stylesheets/layouts/_print.sass +48 -0
  43. data/app/assets/stylesheets/layouts/_queries.sass +121 -0
  44. data/app/assets/stylesheets/layouts/_upgrades.sass +64 -0
  45. data/app/assets/stylesheets/mixins/_arrows.sass +40 -0
  46. data/app/assets/stylesheets/mixins/_clearfixins.sass +15 -0
  47. data/app/assets/stylesheets/mixins/_coloring.sass +6 -0
  48. data/app/assets/stylesheets/mixins/_columns.sass +19 -0
  49. data/app/assets/stylesheets/mixins/_conversions.sass +25 -0
  50. data/app/assets/stylesheets/mixins/_font-size.sass +6 -0
  51. data/app/assets/stylesheets/mixins/_image-tools.sass +13 -0
  52. data/app/assets/stylesheets/mixins/_ir.sass +9 -0
  53. data/app/assets/stylesheets/mixins/_mixins.sass +14 -0
  54. data/app/assets/stylesheets/mixins/_tab-focus.sass +7 -0
  55. data/app/assets/stylesheets/mixins/_timing-equations.sass +29 -0
  56. data/app/assets/stylesheets/mixins/_visibility.sass +43 -0
  57. data/app/assets/stylesheets/polyfills/_box-shadow.sass +7 -0
  58. data/app/assets/stylesheets/polyfills/_box-sizing.sass +8 -0
  59. data/app/assets/stylesheets/polyfills/_functions.sass +22 -0
  60. data/app/assets/stylesheets/polyfills/_inline-block.sass +8 -0
  61. data/app/assets/stylesheets/polyfills/_opacity.sass +6 -0
  62. data/app/assets/stylesheets/polyfills/_polyfills.sass +10 -0
  63. data/app/assets/stylesheets/polyfills/_transition.sass +9 -0
  64. data/app/assets/stylesheets/polyfills/_user-select.sass +8 -0
  65. data/app/assets/stylesheets/styleguide.sass +199 -0
  66. data/app/assets/stylesheets/themes/_default.sass +119 -0
  67. data/app/assets/stylesheets/underoos.sass +52 -0
  68. data/app/controllers/underoos/styleguides_controller.rb +79 -0
  69. data/app/views/shared/_upgrades.html.haml +12 -0
  70. data/app/views/underoos/styleguides/_assets.haml +42 -0
  71. data/app/views/underoos/styleguides/_components.haml +42 -0
  72. data/app/views/underoos/styleguides/_elements.haml +242 -0
  73. data/app/views/underoos/styleguides/_forms.haml +305 -0
  74. data/app/views/underoos/styleguides/_layouts.haml +76 -0
  75. data/app/views/underoos/styleguides/_palettes.haml +18 -0
  76. data/app/views/underoos/styleguides/_resources.haml +27 -0
  77. data/app/views/underoos/styleguides/_tables.haml +124 -0
  78. data/app/views/underoos/styleguides/_typography.haml +284 -0
  79. data/app/views/underoos/styleguides/_utilities.haml +270 -0
  80. data/app/views/underoos/styleguides/components/_accordions.haml +83 -0
  81. data/app/views/underoos/styleguides/components/_breadcrumbs.haml +42 -0
  82. data/app/views/underoos/styleguides/components/_button-groups.haml +162 -0
  83. data/app/views/underoos/styleguides/components/_carets.haml +28 -0
  84. data/app/views/underoos/styleguides/components/_close.haml +20 -0
  85. data/app/views/underoos/styleguides/components/_decals.haml +40 -0
  86. data/app/views/underoos/styleguides/components/_dropdowns.haml +189 -0
  87. data/app/views/underoos/styleguides/components/_media.haml +78 -0
  88. data/app/views/underoos/styleguides/components/_modals.haml +42 -0
  89. data/app/views/underoos/styleguides/components/_nav-lists.haml +52 -0
  90. data/app/views/underoos/styleguides/components/_navbars.haml +144 -0
  91. data/app/views/underoos/styleguides/components/_navs-showcase.haml +27 -0
  92. data/app/views/underoos/styleguides/components/_notifications.haml +169 -0
  93. data/app/views/underoos/styleguides/components/_paddles.haml +68 -0
  94. data/app/views/underoos/styleguides/components/_pagination.haml +64 -0
  95. data/app/views/underoos/styleguides/components/_popovers.haml +33 -0
  96. data/app/views/underoos/styleguides/components/_progress-bars.haml +72 -0
  97. data/app/views/underoos/styleguides/components/_tabs-pills.haml +241 -0
  98. data/app/views/underoos/styleguides/components/_tooltips.haml +37 -0
  99. data/app/views/underoos/styleguides/components/_wells.haml +29 -0
  100. data/app/views/underoos/styleguides/index.html.haml +259 -0
  101. data/app/views/underoos/styleguides/partials/_form-template.haml +171 -0
  102. data/app/views/underoos/styleguides/partials/_table-data.haml +33 -0
  103. data/app/views/underoos/styleguides/partials/_transitions.haml +136 -0
  104. data/config.ru +38 -0
  105. data/config/routes.rb +3 -0
  106. data/features/generator.feature +78 -0
  107. data/features/step_definitions/underoos_steps.rb +3 -0
  108. data/features/support/env.rb +9 -0
  109. data/lib/generators/underoos/assets_generator.rb +33 -0
  110. data/lib/underoos.rb +5 -0
  111. data/lib/underoos/engine.rb +8 -0
  112. data/lib/underoos/version.rb +3 -0
  113. data/public/apple-touch-icon-114x114-precomposed.png +0 -0
  114. data/public/apple-touch-icon-57x57-precomposed.png +0 -0
  115. data/public/apple-touch-icon-72x72-precomposed.png +0 -0
  116. data/public/apple-touch-icon-precomposed.png +0 -0
  117. data/public/apple-touch-icon.png +0 -0
  118. data/public/favicon.ico +0 -0
  119. data/script/javascripts +15 -0
  120. data/underoos.gemspec +29 -0
  121. data/vendor/assets/javascripts/bootstrap-alert.js +94 -0
  122. data/vendor/assets/javascripts/bootstrap-button.js +100 -0
  123. data/vendor/assets/javascripts/bootstrap-collapse.js +138 -0
  124. data/vendor/assets/javascripts/bootstrap-dropdown.js +92 -0
  125. data/vendor/assets/javascripts/bootstrap-modal.js +210 -0
  126. data/vendor/assets/javascripts/bootstrap-popover.js +95 -0
  127. data/vendor/assets/javascripts/bootstrap-scrollspy.js +125 -0
  128. data/vendor/assets/javascripts/bootstrap-tab.js +130 -0
  129. data/vendor/assets/javascripts/bootstrap-tooltip.js +270 -0
  130. data/vendor/assets/javascripts/bootstrap-transition.js +51 -0
  131. data/vendor/assets/javascripts/bootstrap-typeahead.js +271 -0
  132. data/vendor/assets/javascripts/prettify.js +28 -0
  133. metadata +246 -0
@@ -0,0 +1,83 @@
1
+
2
+ .sg-subsection
3
+ %h3.sg-subheading Accordions <span>accordions.sass</span>
4
+ %p(style="width:67%;") The accordion navigation system requires <a href="http://twitter.github.com/bootstrap/javascript.html#collapse">Bootstrap's Collapse plugin</a>. They're used typically in navigation systems to toggle and reveal sections of content.
5
+ %br
6
+ %p(style="width:67%;") Accordions support multiple open sections or just single sections based on the <code>data</code> attributes set within the links.
7
+
8
+ .sg-subsection
9
+ %nav
10
+ %ul#accordion_example
11
+ %li.accordion-group
12
+ %a.accordion-toggle(href="#collapse_1" data-toggle="collapse" data-parent="#accordion_example") Accordion Group 1
13
+ %section.collapse#collapse_1
14
+ %article.accordion-inner
15
+ %p=@lorem
16
+ %li.accordion-group
17
+ %a.accordion-toggle(href="#collapse_2" data-toggle="collapse" data-parent="#accordion_example") Accordion Group 2
18
+ %section.collapse#collapse_2
19
+ %article.accordion-inner
20
+ %p=@lorem
21
+ %li.accordion-group
22
+ %a.accordion-toggle(href="#collapse_3" data-toggle="collapse" data-parent="#accordion_example") Accordion Group 3
23
+ %section.collapse#collapse_3
24
+ %article.accordion-inner
25
+ %p=@lorem
26
+
27
+
28
+ .sg-subsection
29
+ %pre.prettyprint.html
30
+ = preserve do
31
+ :escaped
32
+ <nav>
33
+ <ul id="accordion_example">
34
+ <li class="accordion-group">
35
+ <a class="accordion-toggle" data-parent="#accordion_example" data-toggle="collapse" href="#collapse_1">Accordion Group 1</a>
36
+ <section class="collapse" id="collapse_1"">
37
+ <article class="accordion-inner">
38
+ <p>...</p>
39
+ </article>
40
+ </section>
41
+ </li>
42
+ <li class="accordion-group">
43
+ <a class="accordion-toggle" data-parent="#accordion_example" data-toggle="collapse" href="#collapse_2">Accordion Group 2</a>
44
+ <section class="collapse" id="collapse_2"">
45
+ <article class="accordion-inner">
46
+ <p>...</p>
47
+ </article>
48
+ </section>
49
+ </li>
50
+ <li class="accordion-group">
51
+ <a class="accordion-toggle" data-parent="#accordion_example" data-toggle="collapse" href="#collapse_3">Accordion Group 3</a>
52
+ <section class="collapse" id="collapse_3"">
53
+ <article class="accordion-inner">
54
+ <p>...</p>
55
+ </article>
56
+ </section>
57
+ </li>
58
+ </ul>
59
+ </nav>
60
+ %pre.prettyprint.haml.hidden
61
+ = preserve do
62
+ :escaped
63
+ %nav
64
+ %ul#accordion_example
65
+ %li.accordion-group
66
+ %a.accordion-toggle(href="#collapse_1" data-toggle="collapse" data-parent="#accordion_example") Accordion Group 1
67
+ %section.collapse#collapse_1
68
+ %article.accordion-inner
69
+ %p ...
70
+ %li.accordion-group
71
+ %a.accordion-toggle(href="#collapse_2" data-toggle="collapse" data-parent="#accordion_example") Accordion Group 2
72
+ %section.collapse#collapse_2
73
+ %article.accordion-inner
74
+ %p ...
75
+ %li.accordion-group
76
+ %a.accordion-toggle(href="#collapse_3" data-toggle="collapse" data-parent="#accordion_example") Accordion Group 3
77
+ %section.collapse#collapse_3
78
+ %article.accordion-inner
79
+ %p ...
80
+
81
+ .notification.important.fade.in
82
+ %p <strong>Note!</strong> Remove the <code>data-parent</code> attribute from the links to have multiple sections open at the same time
83
+
@@ -0,0 +1,42 @@
1
+
2
+ .sg-subsection
3
+ %h3.sg-subheading Breadcrumbs <span>breadcrumbs.sass</span>
4
+ .sg-onethird.pull
5
+ %p Apply the <code>.breadcrumb</code> class to the <code>ol</code> or <code>ul</code> element to provide linkable references to nested sections within the application.
6
+ .sg-twothird.push
7
+ .well
8
+ %nav
9
+ %ol.nav.breadcrumb
10
+ %li
11
+ %a(href="#") Level 1
12
+ %li
13
+ %a(href="#") Level 2
14
+ %li
15
+ %a(href="#") Level 3
16
+ %li.active
17
+ %a(href="#") Active Level
18
+ %pre.prettyprint.html
19
+ = preserve do
20
+ :escaped
21
+ <nav>
22
+ <ol class="nav breadcrumb">
23
+ <li><a href="#">Level 1</a></li>
24
+ <li><a href="#">Level 2</a></li>
25
+ <li><a href="#">Level 3</a></li>
26
+ <li class="active"><a href="#">Active</a></li>
27
+ </ol>
28
+ </nav>
29
+ %pre.prettyprint.haml.hidden
30
+ = preserve do
31
+ :escaped
32
+ %nav
33
+ %ol.nav.breadcrumb
34
+ %li
35
+ %a(href="#") Level 1
36
+ %li
37
+ %a(href="#") Level 2
38
+ %li
39
+ %a(href="#") Level 3
40
+ %li.active
41
+ %a(href="#") Active
42
+
@@ -0,0 +1,162 @@
1
+
2
+ .sg-subsection
3
+ %h3.sg-subheading Button Groups <span>button-groups.sass</span>
4
+ .sg-subsection
5
+ .sg-onethird.pull
6
+ %h4 Button group
7
+ %p Button groups are used to join multiple buttons together as one composite component.
8
+ .sg-twothird.push
9
+ .well
10
+ %nav.button-group(data-toggle="buttons-checkbox")
11
+ %a.btn.primary(href="#") Left
12
+ %a.btn.primary.active(href="#") Middle 1
13
+ %a.btn.primary(href="#") Middle 2
14
+ %a.btn.primary(href="#") Right
15
+ %pre.prettyprint.html
16
+ = preserve do
17
+ :escaped
18
+ <nav class="button-group">
19
+ <a class="btn" href="#">Left</a>
20
+ <a class="btn active" href="#">Middle 1</a>
21
+ <a class="btn" href="#">Middle 2</a>
22
+ <a class="btn" href="#">Right</a>
23
+ </nav>
24
+ %pre.prettyprint.haml.hidden
25
+ = preserve do
26
+ :escaped
27
+ %nav.button-group
28
+ %a.btn(href="#") Left
29
+ %a.btn.active(href="#") Middle 1
30
+ %a.btn(href="#") Middle 2
31
+ %a.btn(href="#") Right
32
+
33
+ .sg-subsection
34
+ .sg-onethird.pull
35
+ %h4 Button toolbar
36
+ %p Combine multiple <code>.button-group</code> elements under a <code>.button-toolbar</code> container to form navigation system.
37
+ .sg-twothird.push
38
+ .well
39
+ %section.button-toolbar
40
+ %nav.button-group
41
+ %a.btn(href="#") 1
42
+ %a.btn(href="#") 2
43
+ %a.btn(href="#") 3
44
+ %nav.button-group
45
+ %a.btn(href="#") 4
46
+ %a.btn.active(href="#") 5
47
+ %a.btn(href="#") 6
48
+ %nav.button-group
49
+ %a.btn(href="#") 7
50
+ %pre.prettyprint.html
51
+ = preserve do
52
+ :escaped
53
+ <section class="button-toolbar">
54
+ <nav class="button-group">
55
+ ...
56
+ </nav>
57
+ <nav class="button-group">
58
+ ...
59
+ </nav>
60
+ <nav class="button-group">
61
+ ...
62
+ </nav>
63
+ </section>
64
+ %pre.prettyprint.haml.hidden
65
+ = preserve do
66
+ :escaped
67
+ %section.button-toolbar
68
+ %nav.button-group
69
+ ...
70
+ %nav.button-group
71
+ ...
72
+ %nav.button-group
73
+ ...
74
+ .notification.important.fade.in
75
+ %p <strong>Note!</strong> When creating custom buttons, add the necessary overrides within <code>_button-groups.sass</code>
76
+
77
+ .sg-subsection
78
+ .sg-onethird.pull
79
+ %h4 Button states
80
+ %p Control a button state or entire button groups state using Bootstrap's <a href="http://twitter.github.com/bootstrap/javascript.html#buttons">button plugin</a>.
81
+ %br
82
+ %p A stateful button can be used for tasks like submitting a form. It disables a button and waits for a callback to either <code>reset</code> or populate the button's text with the value found in the attribute for <code>data-complete-text</code>.
83
+ %br
84
+ %pre.prettyprint
85
+ = preserve do
86
+ :escaped
87
+ $('#btn').on('click', function(e) {
88
+ var btn = $(this)
89
+ btn.button('loading')
90
+ setTimeout(function() {
91
+ // set text to data-complete-text
92
+ btn.button('complete')
93
+ // reset text to original value
94
+ // btn.button('reset')
95
+ }, 3000)
96
+ })
97
+ .sg-twothird.push
98
+ %table.box.banded.thead-decorate
99
+ %thead
100
+ %tr
101
+ %th State
102
+ %th Usage
103
+ %tbody
104
+ %tr
105
+ %td
106
+ %button.btn.primary(data-toggle="button") Toggle
107
+ %td Toggles active state on a single button
108
+ %tr
109
+ %td
110
+ %nav.button-group(data-toggle="buttons-checkbox")
111
+ %a.btn.primary(href="#") 1
112
+ %a.btn.primary(href="#") 2
113
+ %a.btn.primary(href="#") 3
114
+ %td Treats button group states similar to checkboxes
115
+ %tr
116
+ %td
117
+ %nav.button-group(data-toggle="buttons-radio")
118
+ %a.btn.primary(href="#") 4
119
+ %a.btn.primary(href="#") 5
120
+ %a.btn.primary(href="#") 6
121
+ %td Treats button group states similar to radio buttons
122
+ %tr
123
+ %td
124
+ %button#loader_btn.btn.primary(data-loading-text="sending..." data-complete-text="Sent") Send
125
+ %td Disables a button as information is being sent, resets on callback
126
+
127
+ %pre.prettyprint.html
128
+ = preserve do
129
+ :escaped
130
+ <!-- Toggle -->
131
+ <button class="btn" data-toggle="button">Toggle</button>
132
+
133
+ <!-- Checkbox type button group -->
134
+ <nav class="button-group" data-toggle="buttons-checkbox">
135
+ ...
136
+ </nav>
137
+
138
+ <!-- Radio type button group -->
139
+ <nav class="button-group" data-toggle="buttons-radio">
140
+ ...
141
+ </nav>
142
+
143
+ <!-- Stateful -->
144
+ <button data-loading-text="sending..." data-complete-text="Sent">Send</button>
145
+
146
+ %pre.prettyprint.haml.hidden
147
+ = preserve do
148
+ :escaped
149
+ <!-- Toggle -->
150
+ %button.btn(data-toggle="button") Toggle
151
+
152
+ <!-- Checkbox type button group -->
153
+ %nav.button-group(data-toggle="buttons-checkbox")
154
+ ...
155
+
156
+ <!-- Radio type button group -->
157
+ %nav.button-group(data-toggle="buttons-radio")
158
+ ...
159
+
160
+ <!-- Stateful -->
161
+ %button(data-loading-text="sending..." data-complete-text="Sent") Send
162
+
@@ -0,0 +1,28 @@
1
+
2
+ .sg-subsection
3
+ %h3.sg-subheading Carets <span>carets.sass</span>
4
+ %p Carets are used as icons for links. Apply them in <code>span</code> elements.
5
+ .sg-subsection
6
+ %table.box.banded.thead-decorate
7
+ %thead
8
+ %tr
9
+ %th Caret
10
+ %th Markup
11
+ %tbody
12
+ %tr
13
+ %td <span class="caret"></span>
14
+ %td.html <code>&lt;span class="caret"&gt;&lt;/span&gt;</code> or <code>&lt;span class="caret south"&gt;&lt;/span&gt;</code>
15
+ %td.haml.hidden <code>%span.caret</code> or <code>%span.caret.south</code>
16
+ %tr
17
+ %td <span class="caret north"></span>
18
+ %td.html <code>&lt;span class="caret north"&gt;&lt;/span&gt;</code>
19
+ %td.haml.hidden <code>%span.caret.north</code>
20
+ %tr
21
+ %td <span class="caret east"></span>
22
+ %td.html <code>&lt;span class="caret east"&gt;&lt;/span&gt;</code>
23
+ %td.haml.hidden <code>%span.caret.east</code>
24
+ %tr
25
+ %td <span class="caret west"></span>
26
+ %td.html <code>&lt;span class="caret west"&gt;&lt;/span&gt;</code>
27
+ %td.haml.hidden <code>%span.caret.west</code>
28
+
@@ -0,0 +1,20 @@
1
+
2
+ .sg-subsection
3
+ %h3.sg-subheading Close <span>close.sass</span>
4
+ %p(style="width:67%;") Use the close icon to dismiss modals and notifications. Coupled with Bootstrap's <a href="http://twitter.github.com/bootstrap/javascript.html#alerts">alert</a> or <a href="http://twitter.github.com/bootstrap/javascript.html#modals">modal</a> plugins, you can pass the <code>data-dismiss="modal|alert"</code> attribute to trigger dismissal.
5
+ .sg-subsection
6
+ %table.box.banded.thead-decorate
7
+ %thead
8
+ %tr
9
+ %th Icon
10
+ %th Markup
11
+ %tbody
12
+ %tr
13
+ %td <a class="close" style="float:none;" href="#">&times;</a>
14
+ %td.html <code>&lt;a class="close" href="#"&gt;#{"&times;"}&lt;/a&gt;</code>
15
+ %td.haml.hidden <code>%a.close(href="#") #{"&times;"}</code>
16
+ %tr(style="background-color:#333;")
17
+ %td <a class="close alt" style="float:none;" href="#">&times;</a>
18
+ %td.html <code>&lt;a class="close alt" href="#"&gt;#{"&times;"}&lt;/a&gt;</code>
19
+ %td.haml.hidden <code>%a.close.alt(href="#") #{"&times;"}</code>
20
+
@@ -0,0 +1,40 @@
1
+
2
+ .sg-subsection
3
+ %h3.sg-subheading Decals <span>decals.sass</span>
4
+ %p(style="width:67%;") Decals are used to <span class="decal important">pop</span> information in a block of text. They are typically used with <code>inline</code> elements and wrapped in a <code>span</code> element.
5
+ .sg-subsection
6
+ %table.box.banded.thead-decorate
7
+ %thead
8
+ %tr
9
+ %th Decal
10
+ %th Markup
11
+ %tbody
12
+ %tr
13
+ %td <span class="decal">Default</span>
14
+ %td.html <code>&lt;span class="decal"&gt;Default&lt;/span&gt;</code>
15
+ %td.haml.hidden <code>%span.decal Default</code>
16
+ %tr
17
+ %td <span class="decal info">Info</span>
18
+ %td.html <code>&lt;span class="decal info"&gt;Info&lt;/span&gt;</code>
19
+ %td.haml.hidden <code>%span.decal.info Info</code>
20
+ %tr
21
+ %td <span class="decal important">Important</span>
22
+ %td.html <code>&lt;span class="decal important"&gt;Important&lt;/span&gt;</code>
23
+ %td.haml.hidden <code>%span.decal.important Important</code>
24
+ %tr
25
+ %td <span class="decal success">Success</span>
26
+ %td.html <code>&lt;span class="decal success"&gt;Success&lt;/span&gt;</code>
27
+ %td.haml.hidden <code>%span.decal.success Success</code>
28
+ %tr
29
+ %td <span class="decal warning">Warning</span>
30
+ %td.html <code>&lt;span class="decal warning"&gt;Warning&lt;/span&gt;</code>
31
+ %td.haml.hidden <code>%span.decal.warning Warning</code>
32
+ %tr
33
+ %td <span class="decal danger">Danger</span>
34
+ %td.html <code>&lt;span class="decal danger"&gt;Danger&lt;/span&gt;</code>
35
+ %td.haml.hidden <code>%span.decal.danger Danger</code>
36
+ %tr
37
+ %td <span class="decal primary">Primary</span>
38
+ %td.html <code>&lt;span class="decal primary"&gt;Primary&lt;/span&gt;</code>
39
+ %td.haml.hidden <code>%span.decal.primary Primary</code>
40
+
@@ -0,0 +1,189 @@
1
+
2
+ .sg-subsection
3
+ %h3.sg-subheading Dropdowns <span>dropdowns.sass</span>
4
+ %p Requires <a href="http://twitter.github.com/bootstrap/javascript.html#dropdowns">Bootstrap's Dropdown plugin</a>.
5
+
6
+ .sg-subsection
7
+ .sg-onethird.pull
8
+ %h4 Basic Dropdowns
9
+ %p Add dropdown menus to just about any type of navigation list element by applying the attribute <code>data-toggle="dropdown"</code> to the target button.
10
+ .sg-twothird.push
11
+ .well
12
+ %nav
13
+ %ul.nav
14
+ %li.dropdown(style="display:inline-block; margin-right: 2em;")
15
+ %a.dropdown-toggle(href="#" data-toggle="dropdown") Dropdown<span class="caret"></span>
16
+ %ul.dropdown-menu
17
+ %li
18
+ %a(href="#") Subnav 1
19
+ %li
20
+ %a(href="#") Subnav 2
21
+ %li.divider
22
+ %li
23
+ %a(href="#") Subnav 3
24
+
25
+ %li.dropdown(style="display:inline-block;")
26
+ %a.dropdown-toggle(href="#" data-toggle="dropdown") Dropup<span class="caret"></span>
27
+ %ul.dropdown-menu.drop-up
28
+ %li
29
+ %a(href="#") Subnav 1
30
+ %li
31
+ %a(href="#") Subnav 2
32
+ %li.divider
33
+ %li
34
+ %a(href="#") Subnav 3
35
+ %pre.prettyprint.html
36
+ = preserve do
37
+ :escaped
38
+ <nav>
39
+ <ul class="nav">
40
+ <li class="dropdown">
41
+ <a href="#" data-toggle="dropdown">Dropdown<span class="caret"></span></a>
42
+ <ul class="dropdown-menu">
43
+ <li><a href="#">Subnav 1</a></li>
44
+ <li><a href="#">Subnav 2</a></li>
45
+ <li class="divider"></li>
46
+ <li><a href="#">Subnav 3</a></li>
47
+ </ul>
48
+ </li>
49
+ </ul>
50
+ </nav>
51
+ %pre.prettyprint.haml.hidden
52
+ = preserve do
53
+ :escaped
54
+ %nav
55
+ %ul.nav
56
+ %li.dropdown
57
+ %a(href="#" data-toggle="dropdown") Dropdown <span class="caret"></span>
58
+ %ul.dropdown-menu
59
+ %li
60
+ %a(href="#") Subnav 1
61
+ %li
62
+ %a(href="#") Subnav 2
63
+ %li.divider
64
+ %li
65
+ %a(href="#") Subnav 3
66
+ .notification.important.fade.in
67
+ %p <strong>Note!</strong> Add the <code>.drop-up</code> class to the <code>ul.dropdown-menu</code> to pop the menu above the target
68
+
69
+ .sg-subsection
70
+ .sg-onethird.pull
71
+ %h4 Button dropdowns
72
+ %p For elements outside of a list, typically in stand alone buttons, utilize the <code>button-group</code> structure for creating dropdowns.
73
+ .sg-twothird.push
74
+ .well.button-toolbar
75
+ %nav.button-group
76
+ %button.btn.dropdown-toggle(href="#" data-toggle="dropdown") Dropdown<span class="caret"></span>
77
+ %ul.dropdown-menu
78
+ %li
79
+ %a(href="#") Subnav 1
80
+ %li
81
+ %a(href="#") Subnav 2
82
+ %li.divider
83
+ %li
84
+ %a(href="#") Subnav 3
85
+
86
+ %nav.button-group
87
+ %button.btn.important.dropdown-toggle(href="#" data-toggle="dropdown") Important<span class="caret"></span>
88
+ %ul.dropdown-menu.drop-up
89
+ %li
90
+ %a(href="#") Subnav 1
91
+ %li
92
+ %a(href="#") Subnav 2
93
+ %li.divider
94
+ %li
95
+ %a(href="#") Subnav 3
96
+ %nav.button-group
97
+ %button.btn.success.dropdown-toggle(href="#" data-toggle="dropdown") Success<span class="caret"></span>
98
+ %ul.dropdown-menu
99
+ %li
100
+ %a(href="#") Subnav 1
101
+ %li
102
+ %a(href="#") Subnav 2
103
+ %li.divider
104
+ %li
105
+ %a(href="#") Subnav 3
106
+ %pre.prettyprint.html
107
+ = preserve do
108
+ :escaped
109
+ <nav class="button-group">
110
+ <button class="btn dropdown-toggle" data-toggle="dropdown">Dropdown<span class="caret">
111
+ <ul class="dropdown-menu">
112
+ ...
113
+ </ul>
114
+ </nav>
115
+ %pre.prettyprint.haml.hidden
116
+ = preserve do
117
+ :escaped
118
+ %nav.button-group
119
+ %button.btn.dropdown-toggle(data-toggle="dropdown") Dropdown<span class="caret"></span>
120
+ %ul.dropdown-menu
121
+ ...
122
+ .sg-subsection
123
+ .sg-onethird.pull
124
+ %h4 Split button dropdowns
125
+ %p Building on the <code>button-group</code> structure, create split buttons where there is action on the left button and contextual menu items under the caret to the right.
126
+ .sg-twothird.push
127
+ .well.button-toolbar
128
+ %nav.button-group
129
+ %button.btn(href="#") Action
130
+ %button.btn.dropdown-toggle(href="#" data-toggle="dropdown") <span class="caret split"></span>
131
+ %ul.dropdown-menu
132
+ %li
133
+ %a(href="#") Subnav 1
134
+ %li
135
+ %a(href="#") Subnav 2
136
+ %li.divider
137
+ %li
138
+ %a(href="#") Subnav 3
139
+ %nav.button-group
140
+ %button.btn.important(href="#") Action
141
+ %button.btn.important.dropdown-toggle(href="#" data-toggle="dropdown") <span class="caret split"></span>
142
+ %ul.dropdown-menu.drop-up
143
+ %li
144
+ %a(href="#") Subnav 1
145
+ %li
146
+ %a(href="#") Subnav 2
147
+ %li.divider
148
+ %li
149
+ %a(href="#") Subnav 3
150
+ %nav.button-group
151
+ %button.btn.success(href="#") Action
152
+ %button.btn.success.dropdown-toggle(href="#" data-toggle="dropdown") <span class="caret split"></span>
153
+ %ul.dropdown-menu
154
+ %li
155
+ %a(href="#") Subnav 1
156
+ %li
157
+ %a(href="#") Subnav 2
158
+ %li.divider
159
+ %li
160
+ %a(href="#") Subnav 3
161
+
162
+ %pre.prettyprint.html
163
+ = preserve do
164
+ :escaped
165
+ <nav class="button-group">
166
+ <button class="btn" href="#">Action</button>
167
+ <button class="btn dropdown-toggle" data-toggle="dropdown">
168
+ <span class="caret split"></span>
169
+ </button>
170
+ <ul class="dropdown-menu">
171
+ ...
172
+ </ul>
173
+ </nav>
174
+ %pre.prettyprint.haml.hidden
175
+ = preserve do
176
+ :escaped
177
+ %nav.button-group
178
+ %button.btn(href="#") Action
179
+ %button.btn.dropdown-toggle(data-toggle="dropdown")
180
+ %span.caret.split
181
+ %ul.dropdown-menu
182
+ ...
183
+
184
+ .notification.important.fade.in
185
+ %p <strong>Note!</strong> Add the <code>.split</code> class to the caret <code>&lt;span&gt;</code> to center within the button
186
+ .notification.important.fade.in
187
+ %p <strong>WTF: IE 7!</strong> Out of the box, dropdowns utilize <code>visuallyhidden</code> when hiding their content instead of <code>display:none</code>. This ensures the content is available to <a href="http://css-tricks.com/places-its-tempting-to-use-display-none-but-dont/">screen readers</a>. If you must support IE 7, remove the mixin for <code>visuallyhidden</code> and uncomment <code>display:none</code>. The <code>visuallyhidden</code> mixin works fine for modern browsers and IE8+
188
+
189
+