underoos 1.0.0 → 1.1.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.
- data/Gemfile +5 -0
- data/Gemfile.lock +21 -7
- data/README.md +85 -10
- data/Rakefile +36 -1
- data/app/assets/javascripts/docs.js +6 -0
- data/app/assets/javascripts/styleguide.coffee +162 -0
- data/app/assets/javascripts/underoos.js +0 -1
- data/app/assets/stylesheets/base/_base.sass +14 -0
- data/app/assets/stylesheets/base/_buttons.sass +68 -0
- data/app/assets/stylesheets/base/_forms.sass +313 -24
- data/app/assets/stylesheets/base/_helpers.sass +27 -13
- data/app/assets/stylesheets/base/_normalize.sass +17 -9
- data/app/assets/stylesheets/base/_scaffold.sass +85 -0
- data/app/assets/stylesheets/base/_tables.sass +77 -0
- data/app/assets/stylesheets/base/_transitions.sass +10 -2
- data/app/assets/stylesheets/base/_typography.sass +183 -21
- data/app/assets/stylesheets/components/_accordions.sass +38 -0
- data/app/assets/stylesheets/components/_breadcrumbs.sass +19 -5
- data/app/assets/stylesheets/components/_button-groups.sass +43 -0
- data/app/assets/stylesheets/components/_carets.sass +13 -2
- data/app/assets/stylesheets/components/_carousels.sass +32 -0
- data/app/assets/stylesheets/components/_close.sass +15 -2
- data/app/assets/stylesheets/components/_components.sass +28 -0
- data/app/assets/stylesheets/components/_decals.sass +14 -0
- data/app/assets/stylesheets/components/_dropdowns.sass +88 -4
- data/app/assets/stylesheets/components/_media.sass +36 -0
- data/app/assets/stylesheets/components/_modals.sass +29 -0
- data/app/assets/stylesheets/components/_nav-lists.sass +20 -0
- data/app/assets/stylesheets/components/_navbars.sass +64 -3
- data/app/assets/stylesheets/components/_notifications.sass +112 -16
- data/app/assets/stylesheets/components/_paddles.sass +26 -0
- data/app/assets/stylesheets/components/_pagination.sass +23 -3
- data/app/assets/stylesheets/components/_pills.sass +80 -0
- data/app/assets/stylesheets/components/_popovers.sass +28 -0
- data/app/assets/stylesheets/components/_progress-bars.sass +33 -1
- data/app/assets/stylesheets/components/_tabs.sass +79 -0
- data/app/assets/stylesheets/components/_tooltips.sass +26 -0
- data/app/assets/stylesheets/components/_wells.sass +9 -0
- data/app/assets/stylesheets/layouts/_containers.sass +12 -0
- data/app/assets/stylesheets/layouts/_layouts.sass +5 -0
- data/app/assets/stylesheets/layouts/_print.sass +5 -1
- data/app/assets/stylesheets/layouts/_queries.sass +18 -15
- data/app/assets/stylesheets/layouts/_upgrades.sass +51 -40
- data/app/assets/stylesheets/mixins/_arrows.sass +13 -1
- data/app/assets/stylesheets/mixins/_clearfixins.sass +18 -4
- data/app/assets/stylesheets/mixins/_coloring.sass +10 -1
- data/app/assets/stylesheets/mixins/_columns.sass +16 -3
- data/app/assets/stylesheets/mixins/_conversions.sass +18 -6
- data/app/assets/stylesheets/mixins/_font-size.sass +16 -1
- data/app/assets/stylesheets/mixins/_image-tools.sass +12 -1
- data/app/assets/stylesheets/mixins/_inline-block.sass +21 -0
- data/app/assets/stylesheets/mixins/_ir.sass +14 -1
- data/app/assets/stylesheets/mixins/_mixins.sass +6 -0
- data/app/assets/stylesheets/mixins/_responsive.sass +16 -0
- data/app/assets/stylesheets/mixins/_sticky-footer.sass +52 -0
- data/app/assets/stylesheets/mixins/_tab-focus.sass +8 -1
- data/app/assets/stylesheets/mixins/_timing-equations.sass +34 -1
- data/app/assets/stylesheets/mixins/_visibility.sass +18 -5
- data/app/assets/stylesheets/polyfills/_box-shadow.sass +10 -0
- data/app/assets/stylesheets/polyfills/_box-sizing.sass +10 -1
- data/app/assets/stylesheets/polyfills/_functions.sass +14 -1
- data/app/assets/stylesheets/polyfills/_opacity.sass +10 -1
- data/app/assets/stylesheets/polyfills/_polyfills.sass +9 -2
- data/app/assets/stylesheets/polyfills/_transition.sass +10 -0
- data/app/assets/stylesheets/polyfills/_user-select.sass +10 -0
- data/app/assets/stylesheets/settings/_config.sass +26 -0
- data/app/assets/stylesheets/settings/_settings.sass +7 -0
- data/app/assets/stylesheets/settings/_theme.sass +189 -0
- data/app/assets/stylesheets/{styleguide.sass → underoos-docs.sass} +20 -116
- data/app/assets/stylesheets/underoos.sass +5 -16
- data/config.ru +1 -3
- data/features/generator.feature +13 -4
- data/lib/generators/underoos/assets_generator.rb +4 -2
- data/lib/underoos/version.rb +1 -1
- data/public/images.html +157 -0
- data/public/index.html +149 -0
- data/public/sherpa.css +306 -0
- data/public/styles.html +5374 -0
- data/script/javascripts +0 -1
- data/sherpa/config.yml +96 -0
- data/sherpa/layouts/images.mustache +17 -0
- data/sherpa/layouts/layout.mustache +77 -0
- data/sherpa/layouts/overview.mustache +19 -0
- data/sherpa/layouts/raw.mustache +25 -0
- data/sherpa/layouts/section.mustache +67 -0
- data/underoos.gemspec +0 -2
- data/vendor/assets/javascripts/bootstrap-alert.js +28 -32
- data/vendor/assets/javascripts/bootstrap-button.js +29 -33
- data/vendor/assets/javascripts/bootstrap-collapse.js +45 -26
- data/vendor/assets/javascripts/bootstrap-dropdown.js +18 -10
- data/vendor/assets/javascripts/bootstrap-modal.js +25 -17
- data/vendor/assets/javascripts/bootstrap-popover.js +13 -10
- data/vendor/assets/javascripts/bootstrap-tab.js +12 -7
- data/vendor/assets/javascripts/bootstrap-tooltip.js +40 -35
- data/vendor/assets/javascripts/bootstrap-transition.js +30 -20
- data/vendor/assets/javascripts/bootstrap-typeahead.js +24 -10
- data/vendor/assets/javascripts/sherpa.coffee +78 -0
- metadata +34 -75
- data/app/assets/javascripts/styleguide.js +0 -132
- data/app/assets/stylesheets/base/_elements.sass +0 -61
- data/app/assets/stylesheets/polyfills/_inline-block.sass +0 -8
- data/app/assets/stylesheets/themes/_default.sass +0 -119
- data/app/controllers/underoos/styleguides_controller.rb +0 -79
- data/app/views/shared/_upgrades.html.haml +0 -12
- data/app/views/underoos/styleguides/_assets.haml +0 -42
- data/app/views/underoos/styleguides/_components.haml +0 -42
- data/app/views/underoos/styleguides/_elements.haml +0 -242
- data/app/views/underoos/styleguides/_forms.haml +0 -305
- data/app/views/underoos/styleguides/_layouts.haml +0 -76
- data/app/views/underoos/styleguides/_palettes.haml +0 -18
- data/app/views/underoos/styleguides/_resources.haml +0 -27
- data/app/views/underoos/styleguides/_tables.haml +0 -124
- data/app/views/underoos/styleguides/_typography.haml +0 -284
- data/app/views/underoos/styleguides/_utilities.haml +0 -270
- data/app/views/underoos/styleguides/components/_accordions.haml +0 -83
- data/app/views/underoos/styleguides/components/_breadcrumbs.haml +0 -42
- data/app/views/underoos/styleguides/components/_button-groups.haml +0 -162
- data/app/views/underoos/styleguides/components/_carets.haml +0 -28
- data/app/views/underoos/styleguides/components/_close.haml +0 -20
- data/app/views/underoos/styleguides/components/_decals.haml +0 -40
- data/app/views/underoos/styleguides/components/_dropdowns.haml +0 -189
- data/app/views/underoos/styleguides/components/_media.haml +0 -78
- data/app/views/underoos/styleguides/components/_modals.haml +0 -42
- data/app/views/underoos/styleguides/components/_nav-lists.haml +0 -52
- data/app/views/underoos/styleguides/components/_navbars.haml +0 -144
- data/app/views/underoos/styleguides/components/_navs-showcase.haml +0 -27
- data/app/views/underoos/styleguides/components/_notifications.haml +0 -169
- data/app/views/underoos/styleguides/components/_paddles.haml +0 -68
- data/app/views/underoos/styleguides/components/_pagination.haml +0 -64
- data/app/views/underoos/styleguides/components/_popovers.haml +0 -33
- data/app/views/underoos/styleguides/components/_progress-bars.haml +0 -72
- data/app/views/underoos/styleguides/components/_tabs-pills.haml +0 -241
- data/app/views/underoos/styleguides/components/_tooltips.haml +0 -37
- data/app/views/underoos/styleguides/components/_wells.haml +0 -29
- data/app/views/underoos/styleguides/index.html.haml +0 -259
- data/app/views/underoos/styleguides/partials/_form-template.haml +0 -171
- data/app/views/underoos/styleguides/partials/_table-data.haml +0 -33
- data/app/views/underoos/styleguides/partials/_transitions.haml +0 -136
- data/config/routes.rb +0 -3
- data/vendor/assets/javascripts/bootstrap-scrollspy.js +0 -125
|
@@ -1,42 +0,0 @@
|
|
|
1
|
-
|
|
2
|
-
#components_buttongroups.sg-spy-landing
|
|
3
|
-
= render :partial => 'underoos/styleguides/components/button-groups'
|
|
4
|
-
#components_dropdowns.sg-spy-landing
|
|
5
|
-
= render :partial => 'underoos/styleguides/components/dropdowns'
|
|
6
|
-
#components_tabs_pills.sg-spy-landing
|
|
7
|
-
= render :partial => 'underoos/styleguides/components/tabs-pills'
|
|
8
|
-
#components_nav_lists.sg-spy-landing
|
|
9
|
-
= render :partial => 'underoos/styleguides/components/nav-lists'
|
|
10
|
-
#components_breadcrumbs.sg-spy-landing
|
|
11
|
-
= render :partial => 'underoos/styleguides/components/breadcrumbs'
|
|
12
|
-
#components_pagination.sg-spy-landing
|
|
13
|
-
= render :partial => 'underoos/styleguides/components/pagination'
|
|
14
|
-
#components_navs_showcase.sg-spy-landing
|
|
15
|
-
= render :partial => 'underoos/styleguides/components/navs-showcase'
|
|
16
|
-
#components_accordions.sg-spy-landing
|
|
17
|
-
= render :partial => 'underoos/styleguides/components/accordions'
|
|
18
|
-
#components_navbars.sg-spy-landing
|
|
19
|
-
= render :partial => 'underoos/styleguides/components/navbars'
|
|
20
|
-
#components_paddles.sg-spy-landing
|
|
21
|
-
= render :partial => 'underoos/styleguides/components/paddles'
|
|
22
|
-
#components_modals.sg-spy-landing
|
|
23
|
-
= render :partial => 'underoos/styleguides/components/modals'
|
|
24
|
-
#components_notifications.sg-spy-landing
|
|
25
|
-
= render :partial => 'underoos/styleguides/components/notifications'
|
|
26
|
-
#components_decals.sg-spy-landing
|
|
27
|
-
= render :partial => 'underoos/styleguides/components/decals'
|
|
28
|
-
#components_tooltips.sg-spy-landing
|
|
29
|
-
= render :partial => 'underoos/styleguides/components/tooltips'
|
|
30
|
-
#components_popovers.sg-spy-landing
|
|
31
|
-
= render :partial => 'underoos/styleguides/components/popovers'
|
|
32
|
-
#components_progress_bars.sg-spy-landing
|
|
33
|
-
= render :partial => 'underoos/styleguides/components/progress-bars'
|
|
34
|
-
#components_carets.sg-spy-landing
|
|
35
|
-
= render :partial => 'underoos/styleguides/components/carets'
|
|
36
|
-
#components_close.sg-spy-landing
|
|
37
|
-
= render :partial => 'underoos/styleguides/components/close'
|
|
38
|
-
#components_wells.sg-spy-landing
|
|
39
|
-
= render :partial => 'underoos/styleguides/components/wells'
|
|
40
|
-
#components_media.sg-spy-landing
|
|
41
|
-
= render :partial => 'underoos/styleguides/components/media'
|
|
42
|
-
|
|
@@ -1,242 +0,0 @@
|
|
|
1
|
-
|
|
2
|
-
#elements_basenav.sg-spy-landing
|
|
3
|
-
.sg-subsection
|
|
4
|
-
%h3.sg-subheading Base nav <span>elements.sass</span>
|
|
5
|
-
.sg-half.pull
|
|
6
|
-
%p The base nav is generally the first class in the list for components like tabs, pills, breadcrumbs, pagination and navigation lists. Use this class as a building block for custom navigation systems.
|
|
7
|
-
%pre.prettyprint.html
|
|
8
|
-
= preserve do
|
|
9
|
-
:escaped
|
|
10
|
-
<nav>
|
|
11
|
-
<ol class="nav">
|
|
12
|
-
<li><a href="#">Nav 1</a></li>
|
|
13
|
-
<li><a href="#">Nav 2</a></li>
|
|
14
|
-
<li class="active"><a href="#">Active</a></li>
|
|
15
|
-
<li><a href="#">Nav 4</a></li>
|
|
16
|
-
</ul>
|
|
17
|
-
</nav>
|
|
18
|
-
%pre.prettyprint.haml.hidden
|
|
19
|
-
= preserve do
|
|
20
|
-
:escaped
|
|
21
|
-
%nav
|
|
22
|
-
%ol.nav
|
|
23
|
-
%li
|
|
24
|
-
%a(href="#") Nav 1
|
|
25
|
-
%li
|
|
26
|
-
%a(href="#") Nav 2
|
|
27
|
-
%li.active
|
|
28
|
-
%a(href="#") Active
|
|
29
|
-
%li
|
|
30
|
-
%a(href="#") Nav 4
|
|
31
|
-
.sg-half.push
|
|
32
|
-
.well
|
|
33
|
-
%nav
|
|
34
|
-
%ol.nav
|
|
35
|
-
%li
|
|
36
|
-
%a(href="#") Nav 1
|
|
37
|
-
%li
|
|
38
|
-
%a(href="#") Nav 2
|
|
39
|
-
%li.active
|
|
40
|
-
%a(href="#") Active
|
|
41
|
-
%li
|
|
42
|
-
%a(href="#") Nav 4
|
|
43
|
-
.well
|
|
44
|
-
%nav
|
|
45
|
-
%ol.nav.inline
|
|
46
|
-
%li
|
|
47
|
-
%a(href="#") Nav 1
|
|
48
|
-
%li
|
|
49
|
-
%a(href="#") Nav 2
|
|
50
|
-
%li.active
|
|
51
|
-
%a(href="#") Active
|
|
52
|
-
%li
|
|
53
|
-
%a(href="#") Nav 4
|
|
54
|
-
.sg-subsection
|
|
55
|
-
.sg-half.pull
|
|
56
|
-
.notification.warning.fade.in
|
|
57
|
-
%p <strong>Warning!</strong> All navigation components depend on this class being attached to the container element
|
|
58
|
-
.sg-half.push
|
|
59
|
-
.notification.important.fade.in
|
|
60
|
-
%p <strong>Note!</strong> For convenience, add the <code>inline</code> class to the <code>.nav</code> element to display the base nav as, well inline
|
|
61
|
-
|
|
62
|
-
#elements_buttons.sg-spy-landing
|
|
63
|
-
.sg-subsection
|
|
64
|
-
%h3.sg-subheading Buttons <span>elements.sass, button-btn-mixin.sass</span>
|
|
65
|
-
%table.box.banded.thead-decorate
|
|
66
|
-
%thead
|
|
67
|
-
%tr
|
|
68
|
-
%th Button
|
|
69
|
-
%th Class
|
|
70
|
-
%th Description
|
|
71
|
-
%tbody
|
|
72
|
-
%tr
|
|
73
|
-
%td <button class="btn">Default</button>
|
|
74
|
-
%td <code>.btn</code>
|
|
75
|
-
%td The default button is typically used in forms
|
|
76
|
-
%tr
|
|
77
|
-
%td <button class="btn info">Info</button>
|
|
78
|
-
%td <code>.btn.info</code>
|
|
79
|
-
%td The info button is an alternate to the default button
|
|
80
|
-
%tr
|
|
81
|
-
%td <button class="btn important">Important</button>
|
|
82
|
-
%td <code>.btn.important</code>
|
|
83
|
-
%td The important button is used to showcase a primary action
|
|
84
|
-
%tr
|
|
85
|
-
%td <button class="btn success">Success</button>
|
|
86
|
-
%td <code>.btn.success</code>
|
|
87
|
-
%td The success button indicates a successful or positive action
|
|
88
|
-
%tr
|
|
89
|
-
%td <button class="btn warning">Warning</button>
|
|
90
|
-
%td <code>.btn.warning</code>
|
|
91
|
-
%td The warning button indicates caution should be taken with this action
|
|
92
|
-
%tr
|
|
93
|
-
%td <button class="btn danger">Danger</button>
|
|
94
|
-
%td <code>.btn.danger</code>
|
|
95
|
-
%td The danger button indicates a dangerous or potentially negative action
|
|
96
|
-
%tr
|
|
97
|
-
%td <button class="btn primary">Primary</button>
|
|
98
|
-
%td <code>.btn.primary</code>
|
|
99
|
-
%td The primary button is based off of the CI settings within the application
|
|
100
|
-
.sg-subsection
|
|
101
|
-
.sg-half.pull
|
|
102
|
-
%h4 About these buttons
|
|
103
|
-
%p As a convention, buttons should only be used for actions while hyperlinks are to be used for objects. For instance, "Download" should be a button while "recent activity" should be a link.
|
|
104
|
-
%br
|
|
105
|
-
%p Button styles can be applied to anything with the <code>.btn</code> class. Typically you'll want to apply these to only <code><a></code> and <code><button></code> elements or <code>input</code> button elements.
|
|
106
|
-
.sg-half.push
|
|
107
|
-
%h4 The structure
|
|
108
|
-
%pre.prettyprint.html
|
|
109
|
-
= preserve do
|
|
110
|
-
:escaped
|
|
111
|
-
<button class="btn">Default</button>
|
|
112
|
-
<button class="btn important">Important</button>
|
|
113
|
-
|
|
114
|
-
<a class="btn">Default</a>
|
|
115
|
-
<a class="btn important">Important</a>
|
|
116
|
-
|
|
117
|
-
<input class="btn" type="submit" value="Submit"></input>
|
|
118
|
-
<input class="btn" type="reset" value="Reset"></input>
|
|
119
|
-
%pre.prettyprint.haml.hidden
|
|
120
|
-
= preserve do
|
|
121
|
-
:escaped
|
|
122
|
-
%button.btn Default
|
|
123
|
-
%button.btn.important Important
|
|
124
|
-
|
|
125
|
-
%a.btn Default
|
|
126
|
-
%a.btn.important Important
|
|
127
|
-
|
|
128
|
-
%input.btn(type="submit" value="Submit")
|
|
129
|
-
%input.btn(type="reset" value="Reset")
|
|
130
|
-
.sg-subsection(style="margin-top:2.5em")
|
|
131
|
-
.sg-half.pull
|
|
132
|
-
%h4 Links render different
|
|
133
|
-
%p <code>a</code> elements have <code>font-style:bold</code>
|
|
134
|
-
%br
|
|
135
|
-
.well
|
|
136
|
-
%button.btn(href="#") Button
|
|
137
|
-
%a.btn(href="#") Link
|
|
138
|
-
%button.btn.primary(href="#") Button
|
|
139
|
-
%a.btn.primary(href="#") Link
|
|
140
|
-
%input.submit.btn(name="submit" type="submit" value="Input Submit")
|
|
141
|
-
%input.reset.btn.primary(name="reset" type="reset" value="Input Reset")
|
|
142
|
-
|
|
143
|
-
%br
|
|
144
|
-
%h4 Sizing
|
|
145
|
-
%p Add either <code>.small</code> or <code>.large</code> class to change the size
|
|
146
|
-
%br
|
|
147
|
-
.well
|
|
148
|
-
%button.btn.small(href="#") Small
|
|
149
|
-
%button.btn.large(href="#") Large
|
|
150
|
-
%button.btn.primary.small(href="#") Small
|
|
151
|
-
%button.btn.primary.large(href="#") Large
|
|
152
|
-
|
|
153
|
-
.sg-half.push
|
|
154
|
-
%h4 Disabled states
|
|
155
|
-
%p Add the <code>.disabled</code> class or <code>:disabled</code> attribute
|
|
156
|
-
%br
|
|
157
|
-
.well
|
|
158
|
-
%button.btn(href="#" disabled) Button
|
|
159
|
-
%a.btn.disabled(href="#") Link
|
|
160
|
-
%button.btn.primary(href="#" disabled) Button
|
|
161
|
-
%a.btn.primary.disabled(href="#") Link
|
|
162
|
-
|
|
163
|
-
%br
|
|
164
|
-
%h4 Error states
|
|
165
|
-
%p Applied by adding the <code>.error</code> class
|
|
166
|
-
%br
|
|
167
|
-
.well
|
|
168
|
-
%button.btn.error(href="#") Button
|
|
169
|
-
%a.btn.error(href="#") Link
|
|
170
|
-
%button.btn.primary.error(href="#") Button
|
|
171
|
-
%a.btn.primary.error(href="#") Link
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
#elements_images.sg-spy-landing
|
|
176
|
-
.sg-subsection
|
|
177
|
-
%h3.sg-subheading Images <span>elements.sass</span>
|
|
178
|
-
.sg-half.pull
|
|
179
|
-
%h4 Standard image element
|
|
180
|
-
%p Images by default have the style setting of <code>max-width:100%</code> applied to allow scaling in a fluid grid.
|
|
181
|
-
%pre.prettyprint.html
|
|
182
|
-
= preserve do
|
|
183
|
-
:escaped
|
|
184
|
-
<img src="http://placehold.it/160x90" alt="image"/>
|
|
185
|
-
%pre.prettyprint.haml.hidden
|
|
186
|
-
= preserve do
|
|
187
|
-
:escaped
|
|
188
|
-
%img(src="http://placehold.it/160x90" alt="image")
|
|
189
|
-
.sg-half.push
|
|
190
|
-
.well
|
|
191
|
-
%img(src="http://placehold.it/160x90" alt="image")
|
|
192
|
-
.sg-subsection
|
|
193
|
-
.sg-half.pull
|
|
194
|
-
%h4 The figure element
|
|
195
|
-
%p The <code>figure</code> element represents self-contained content, frequently with a <code>figcaption</code>. Typically used with images, illustrations, diagrams, or code snippets, referenced in the main text.
|
|
196
|
-
%pre.prettyprint.html
|
|
197
|
-
= preserve do
|
|
198
|
-
:escaped
|
|
199
|
-
<figure>
|
|
200
|
-
<img src="http://placehold.it/160x90" alt="image"/>
|
|
201
|
-
<figcaption>caption</figcaption>
|
|
202
|
-
</figure>
|
|
203
|
-
%pre.prettyprint.haml.hidden
|
|
204
|
-
= preserve do
|
|
205
|
-
:escaped
|
|
206
|
-
%figure
|
|
207
|
-
%img(src="http://placehold.it/160x90" alt="image")
|
|
208
|
-
%figcaption>caption
|
|
209
|
-
.sg-half.push
|
|
210
|
-
%br
|
|
211
|
-
.well
|
|
212
|
-
%figure
|
|
213
|
-
%img(src="http://placehold.it/160x90" alt="image")
|
|
214
|
-
%figcaption <small>placehold.it</small>
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
#elements_video.sg-spy-landing
|
|
218
|
-
.sg-subsection
|
|
219
|
-
%h3.sg-subheading Video <span>elements.sass</span>
|
|
220
|
-
.sg-half.pull
|
|
221
|
-
%p Standard video, controls, and poster image utilizing the <code>video</code> tag. Nothing special is done to the <code>video</code> element, just make sure to include a poster image and the appropriate sources!
|
|
222
|
-
%pre.prettyprint.html
|
|
223
|
-
= preserve do
|
|
224
|
-
:escaped
|
|
225
|
-
<video controls="" poster="...">
|
|
226
|
-
<source src="video.mp4" type="video/mp4; codecs=\"...\"">
|
|
227
|
-
<source src="video.ogv" type="video/ogg; codecs=\"...\"">
|
|
228
|
-
</video>
|
|
229
|
-
%pre.prettyprint.haml.hidden
|
|
230
|
-
= preserve do
|
|
231
|
-
:escaped
|
|
232
|
-
%video(controls="" poster="...")
|
|
233
|
-
%source(src="video.mp4" type="video/mp4; codecs=\"...\"")
|
|
234
|
-
%source(src="video.ogv" type="video/ogg; codecs=\"...\"")
|
|
235
|
-
.notification.important.fade.in
|
|
236
|
-
%p <strong>Note!</strong> More information on the <a href="http://dochub.io/#html/video">video element</a>.
|
|
237
|
-
.sg-half.push
|
|
238
|
-
.well
|
|
239
|
-
%video(controls="" poster="http://placehold.it/320x180&text=Poster")
|
|
240
|
-
%source(src="/path/to/myvideo.mp4" type="video/mp4; codecs=\"avc1.42E01E, mp4a.40.2\"")
|
|
241
|
-
%source(src="/path/to/myvideo.ogv" type="video/ogg; codecs=\"theora, vorbis\"")
|
|
242
|
-
|
|
@@ -1,305 +0,0 @@
|
|
|
1
|
-
|
|
2
|
-
#forms_type.sg-spy-landing
|
|
3
|
-
.sg-subsection
|
|
4
|
-
%table.box.banded.thead-decorate
|
|
5
|
-
%thead
|
|
6
|
-
%tr
|
|
7
|
-
%th Name
|
|
8
|
-
%th Class
|
|
9
|
-
%th Description
|
|
10
|
-
%tfoot
|
|
11
|
-
%tr
|
|
12
|
-
%td(colspan="3") Apply the class directly on the <code>form</code> element
|
|
13
|
-
%tbody
|
|
14
|
-
%tr
|
|
15
|
-
%td
|
|
16
|
-
%strong Vertical
|
|
17
|
-
%td(style="color: #999;") <em>not required</em>
|
|
18
|
-
%td Stacked label, controls and hints
|
|
19
|
-
%tr
|
|
20
|
-
%td
|
|
21
|
-
%strong Horizontal
|
|
22
|
-
%td <code>.form-horizontal</code>
|
|
23
|
-
%td Labels and controls on the same line, stacked hints
|
|
24
|
-
%tr
|
|
25
|
-
%td
|
|
26
|
-
%strong Inline
|
|
27
|
-
%td <code>.form-inline</code>
|
|
28
|
-
%td All controls on the same line
|
|
29
|
-
%tr
|
|
30
|
-
%td
|
|
31
|
-
%strong Search
|
|
32
|
-
%td <code>.form-search</code>
|
|
33
|
-
%td Similar to inline, but targets a search field
|
|
34
|
-
|
|
35
|
-
#forms_example.sg-spy-landing
|
|
36
|
-
.sg-subsection
|
|
37
|
-
%h3.sg-subheading Example forms <span>forms.sass</span>
|
|
38
|
-
.sg-quarter.pull
|
|
39
|
-
%h4 Basic form
|
|
40
|
-
%p Small sample of form control elements using the default layout.
|
|
41
|
-
.sg-threequarter.push
|
|
42
|
-
%form.well.dark
|
|
43
|
-
%ol
|
|
44
|
-
%li
|
|
45
|
-
%label.label(for="example_url") Domain Name<abbr title="required">*</abbr>
|
|
46
|
-
%input.input-medium(id="example_url" type="url" name="example[url]" placeholder="www.example.com")
|
|
47
|
-
%p.hint Enter your domain name!
|
|
48
|
-
%li.boolean
|
|
49
|
-
%label(for="example_check" name="example[check]")
|
|
50
|
-
%input(id="example_check" name="example[check]" type="checkbox" value="0")
|
|
51
|
-
Check this box!
|
|
52
|
-
%li.form-actions.dark
|
|
53
|
-
%button.btn(type="submit") Submit
|
|
54
|
-
|
|
55
|
-
.sg-subsection
|
|
56
|
-
.sg-quarter.pull
|
|
57
|
-
%h4 Search form
|
|
58
|
-
%p Add the class <code>search-query</code> to input elements for rounded corners.
|
|
59
|
-
.sg-threequarter.push
|
|
60
|
-
%form.form-search.well.dark
|
|
61
|
-
%ol
|
|
62
|
-
%li
|
|
63
|
-
%input.search-query.input-small(type="search" name="test[search]" placeholder="google")
|
|
64
|
-
%button.btn(type="submit") Search
|
|
65
|
-
|
|
66
|
-
.sg-subsection
|
|
67
|
-
.sg-quarter.pull
|
|
68
|
-
%h4 Inline form
|
|
69
|
-
%p Use the inline form for small forms needing a compact style.
|
|
70
|
-
.sg-threequarter.push
|
|
71
|
-
%form.form-inline.well.dark
|
|
72
|
-
%ol
|
|
73
|
-
%li
|
|
74
|
-
%input.input-small(type="email" name="test[email]" placeholder="email")
|
|
75
|
-
%input.input-small(type="password" name="test[password]" placeholder="password")
|
|
76
|
-
%button.btn(type="submit") Go
|
|
77
|
-
|
|
78
|
-
#forms_vertical.sg-spy-landing
|
|
79
|
-
.sg-subsection
|
|
80
|
-
%h3.sg-subheading Vertical form
|
|
81
|
-
%form
|
|
82
|
-
= render :partial => 'underoos/styleguides/partials/form-template', :locals => {:uid => "vert_", :legend => 'I am Legend', :state => "", :disabled => "", :dark => ""}
|
|
83
|
-
|
|
84
|
-
#forms_horizontal.sg-spy-landing
|
|
85
|
-
.sg-subsection
|
|
86
|
-
%h3.sg-subheading Horizontal form
|
|
87
|
-
%form.form-horizontal.well.dark
|
|
88
|
-
= render :partial => 'underoos/styleguides/partials/form-template', :locals => {:uid => "horz_", :legend => 'Legend, starring Tom Cruise', :state => "", :disabled => "", :dark => "dark"}
|
|
89
|
-
.notification.important.fade.in
|
|
90
|
-
%p <strong>Tip!</strong> Add one of the <code>.well</code> classes to the <code>form</code> element to contain it from other items on the page
|
|
91
|
-
|
|
92
|
-
#forms_structure.sg-spy-landing
|
|
93
|
-
.sg-subsection
|
|
94
|
-
%h3.sg-subheading Form structure
|
|
95
|
-
%p Forms are built around the structure output from <a href="https://github.com/justinfrench/formtastic">formtastic</a>.
|
|
96
|
-
%pre.prettyprint.html
|
|
97
|
-
= preserve do
|
|
98
|
-
:escaped
|
|
99
|
-
<form class="form-horizontal well dark">
|
|
100
|
-
<ol>
|
|
101
|
-
<li>
|
|
102
|
-
<label class="label" for="example_url">Domain Name<abbr title="required">*</abbr></label>
|
|
103
|
-
<input class="input-medium" id="example_url" name="example[url]" placeholder="www.example.com" type="url">
|
|
104
|
-
<p class="hint">Enter your domain name!</p>
|
|
105
|
-
</li>
|
|
106
|
-
<li class="boolean">
|
|
107
|
-
<label for="example_check" name="example[check]">
|
|
108
|
-
<input id="example_check" name="example[check]" type="checkbox" value="0">
|
|
109
|
-
Check this box!
|
|
110
|
-
</label>
|
|
111
|
-
</li>
|
|
112
|
-
<li class="form-actions dark">
|
|
113
|
-
<button class="btn" type="submit">Submit</button>
|
|
114
|
-
</li>
|
|
115
|
-
</ol>
|
|
116
|
-
</form>
|
|
117
|
-
%pre.haml.hidden
|
|
118
|
-
= preserve do
|
|
119
|
-
:escaped
|
|
120
|
-
%form.form-horizontal.well.dark
|
|
121
|
-
%ol
|
|
122
|
-
%li
|
|
123
|
-
%label.label(for="example_url")
|
|
124
|
-
Domain Name
|
|
125
|
-
%abbr(title="required") *
|
|
126
|
-
%input#example_url.input-medium(name="example[url]" placeholder="www.example.com" type="url")
|
|
127
|
-
%p.hint Enter your domain name!
|
|
128
|
-
%li.boolean
|
|
129
|
-
%label(for="example_check" name="example[check]")
|
|
130
|
-
%input#example_check(name="example[check]" type="checkbox" value="0") Check this box!
|
|
131
|
-
%li.form-actions dark
|
|
132
|
-
%button.btn(type="submit") Submit
|
|
133
|
-
|
|
134
|
-
#forms_state.sg-spy-landing
|
|
135
|
-
.sg-subsection
|
|
136
|
-
%h3.sg-subheading Form states
|
|
137
|
-
.sg-half.pull
|
|
138
|
-
%form.form-horizontal.well
|
|
139
|
-
= render :partial => 'underoos/styleguides/partials/form-template', :locals => {:uid => "disabled_", :legend => 'Disabled states', :state => "", :disabled => "disabled", :dark => ""}
|
|
140
|
-
.notification.important.fade.in
|
|
141
|
-
%p <strong>Note!</strong> Add <code>.disable</code> to the <code>li</code> and a <code>disable</code> attribute to form controls
|
|
142
|
-
.sg-half.push
|
|
143
|
-
%form.form-horizontal.well
|
|
144
|
-
= render :partial => 'underoos/styleguides/partials/form-template', :locals => {:uid => "errors_", :legend => 'Error states', :state => "error", :disabled => "", :dark => ""}
|
|
145
|
-
.notification.important.fade.in
|
|
146
|
-
%p <strong>Note!</strong> Add the <code>.error</code> class to the <code>li</code> for the problem element
|
|
147
|
-
|
|
148
|
-
.sg-subsection
|
|
149
|
-
.sg-half.pull
|
|
150
|
-
%form.form-horizontal.well
|
|
151
|
-
= render :partial => 'underoos/styleguides/partials/form-template', :locals => {:uid => "warn_", :legend => 'Warning states', :state => "warning", :disabled => "", :dark => ""}
|
|
152
|
-
.notification.important.fade.in
|
|
153
|
-
%p <strong>Note!</strong> Add the <code>.warning</code> class to the <code>li</code> for the problem element
|
|
154
|
-
.sg-half.push
|
|
155
|
-
%form.form-horizontal.well
|
|
156
|
-
= render :partial => 'underoos/styleguides/partials/form-template', :locals => {:uid => "success_", :legend => 'Success states', :state => "success", :disabled => "", :dark => ""}
|
|
157
|
-
.notification.important.fade.in
|
|
158
|
-
%p <strong>Note!</strong> Add the <code>.success</code> class to the <code>li</code> for the winning element
|
|
159
|
-
|
|
160
|
-
#forms_inputs.sg-spy-landing
|
|
161
|
-
.sg-subsection
|
|
162
|
-
%h3.sg-subheading Additional input controls
|
|
163
|
-
%table.box.banded.thead-decorate
|
|
164
|
-
%thead
|
|
165
|
-
%tr
|
|
166
|
-
%th Control
|
|
167
|
-
%th Type
|
|
168
|
-
%th Description
|
|
169
|
-
%tfoot
|
|
170
|
-
%tr
|
|
171
|
-
%td(colspan="3") Descriptions courtesy <a href="https://developer.mozilla.org">Mozilla Developer Network</a>
|
|
172
|
-
%tbody
|
|
173
|
-
%tr
|
|
174
|
-
%td
|
|
175
|
-
%input.input-xlarge(type="email" name="email" placeholder="name@example.com")
|
|
176
|
-
%td <code>email</code>
|
|
177
|
-
%td Text field for editing an e-mail address, <code>:valid</code> and <code>:invalid</code> pseudo-classes are applied
|
|
178
|
-
%tr
|
|
179
|
-
%td
|
|
180
|
-
%input.input-xlarge(type="password" name="password" placeholder="password")
|
|
181
|
-
%td <code>password</code>
|
|
182
|
-
%td A single-line text field whose value is obscured
|
|
183
|
-
%tr
|
|
184
|
-
%td
|
|
185
|
-
%input.input-xlarge(type="url" name="url" placeholder="www.example.com")
|
|
186
|
-
%td <code>url</code>
|
|
187
|
-
%td Text field for editing a URL, <code>:valid</code> and <code>:invalid</code> pseudo-classes are applied
|
|
188
|
-
%tr
|
|
189
|
-
%td
|
|
190
|
-
%input.input-xlarge(type="tel" name="tel" placeholder="303-867-5309")
|
|
191
|
-
%td <code>tel</code>
|
|
192
|
-
%td Text field for entering a telephone number, <code>:valid</code> and <code>:invalid</code> pseudo-classes are applied
|
|
193
|
-
%tr
|
|
194
|
-
%td
|
|
195
|
-
%input.input-xlarge(type="datetime" name="datetime" placeholder="2012-01-29 12:06:23:21")
|
|
196
|
-
%td <code>datetime</code>
|
|
197
|
-
%td Date and time control with the time zone set to UTC
|
|
198
|
-
%tr
|
|
199
|
-
%td
|
|
200
|
-
%input.input-xlarge(type="datetime-local" name="datetime-local" placeholder="2012-01-29 12:06:23:21")
|
|
201
|
-
%td <code>datetime-local</code>
|
|
202
|
-
%td Date and time control with no time zone
|
|
203
|
-
%tr
|
|
204
|
-
%td
|
|
205
|
-
%input.input-xlarge(type="time" name="time" placeholder="12:06:23:21")
|
|
206
|
-
%td <code>time</code>
|
|
207
|
-
%td Time control with no time zone
|
|
208
|
-
%tr
|
|
209
|
-
%td
|
|
210
|
-
%input.input-xlarge(type="date" name="date" placeholder="2012-01-29")
|
|
211
|
-
%td <code>date</code>
|
|
212
|
-
%td Date control with no time zone
|
|
213
|
-
%tr
|
|
214
|
-
%td
|
|
215
|
-
%input.input-xlarge(type="month" name="month" placeholder="2012-01")
|
|
216
|
-
%td <code>month</code>
|
|
217
|
-
%td Date control consisting of a year and a month with no time zone
|
|
218
|
-
%tr
|
|
219
|
-
%td
|
|
220
|
-
%input.input-xlarge(type="week" name="week" placeholder="42")
|
|
221
|
-
%td <code>week</code>
|
|
222
|
-
%td Date control consisting of a week-year number and a week number with no time zone
|
|
223
|
-
%tr
|
|
224
|
-
%td
|
|
225
|
-
%input.input-xlarge(type="number" name="number" placeholder="5" min="0" max="10")
|
|
226
|
-
%td <code>number</code>
|
|
227
|
-
%td Control for floating point values, add <code>min</code> and <code>max</code> attributes to create a spinner
|
|
228
|
-
%tr
|
|
229
|
-
%td
|
|
230
|
-
%input.input-xlarge(type="range" name="range" placeholder="5" min="0" max="10" step=".5")
|
|
231
|
-
%td <code>range</code>
|
|
232
|
-
%td Slider control for numbers where exact value is not important, add <code>min</code>, <code>max</code> and <code>step</code> attributes
|
|
233
|
-
%tr
|
|
234
|
-
%td
|
|
235
|
-
%input.input-xlarge(type="color" name="color" placeholder="#fff" alt="color")
|
|
236
|
-
%td <code>color</code>
|
|
237
|
-
%td A control for specifying a color
|
|
238
|
-
%tr
|
|
239
|
-
%td
|
|
240
|
-
%input.input-xlarge(type="hidden" name="hidden" placeholder="hidden")
|
|
241
|
-
%td <code>hidden</code>
|
|
242
|
-
%td A control that is not displayed, but whose value is submitted to the server
|
|
243
|
-
|
|
244
|
-
#forms_typeahead.sg-spy-landing
|
|
245
|
-
.sg-subsection
|
|
246
|
-
%h3.sg-subheading Typeahead <span>forms.sass, dropdowns.sass</span>
|
|
247
|
-
.sg-onethird.pull
|
|
248
|
-
%p For quick auto-complete functionality, utilize the typeahead component. It's a combination of an input with a <code>data-provide="typeahead"</code> attribute and a drop down menu.
|
|
249
|
-
%br
|
|
250
|
-
%p The component requires <a href="http://twitter.github.com/bootstrap/javascript.html#typeahead">Bootstrap's typeahead plugin</a>.
|
|
251
|
-
%br
|
|
252
|
-
%p The plugin, appends a <code>ul.typeahead.dropdown-menu</code> list to the <code>body</code> element. There are no specific styles included within underoos for typeaheads as they are primarily a combination of existing components.
|
|
253
|
-
.sg-twothird.push
|
|
254
|
-
.well
|
|
255
|
-
%form
|
|
256
|
-
%ol
|
|
257
|
-
%li
|
|
258
|
-
%input.input-medium#superfriends(type="text" data-provide="typeahead" autocomplete="off" placeholder="Add Superfriends")
|
|
259
|
-
%pre.prettyprint.html
|
|
260
|
-
= preserve do
|
|
261
|
-
:escaped
|
|
262
|
-
<form>
|
|
263
|
-
<ol>
|
|
264
|
-
<li>
|
|
265
|
-
<input id="superfriends" data-provide="typeahead" autocomplete="off" placeholder="Add" type="text">
|
|
266
|
-
</li>
|
|
267
|
-
</ol>
|
|
268
|
-
</form>
|
|
269
|
-
%pre.prettyprint.haml.hidden
|
|
270
|
-
= preserve do
|
|
271
|
-
:escaped
|
|
272
|
-
%form
|
|
273
|
-
%ol
|
|
274
|
-
%li
|
|
275
|
-
%input#superfriends(type="text" data-provide="typeahead" autocomplete="off" placeholder="Add")
|
|
276
|
-
%pre.prettyprint
|
|
277
|
-
= preserve do
|
|
278
|
-
:escaped
|
|
279
|
-
// Instantiate the typeahead instance based off an id
|
|
280
|
-
$('#superfriends').typeahead({source:['Aquaman', 'Superman'] , items:10})
|
|
281
|
-
|
|
282
|
-
.notification.important.fade.in
|
|
283
|
-
%p <strong>Tip!</strong> Make sure to include the attribute <code>autocomplete="off"</code> to disable the browser's default behavior
|
|
284
|
-
|
|
285
|
-
|
|
286
|
-
#forms_editable.sg-spy-landing
|
|
287
|
-
.sg-subsection
|
|
288
|
-
%h3.sg-subheading Content editable elements <span>forms.sass</span>
|
|
289
|
-
.sg-onethird.pull
|
|
290
|
-
%p Applying the attribute <code>contenteditable="true"</code> to elements allows the user to change the contents within the item. Elements that are editable typically include states for <code>hover</code> and <code>focus</code> while a user is editing.
|
|
291
|
-
.sg-twothird.push
|
|
292
|
-
.well
|
|
293
|
-
%h3(contenteditable="true") Edit Title
|
|
294
|
-
%p(contenteditable="true") Edit Description
|
|
295
|
-
%pre.prettyprint.html
|
|
296
|
-
= preserve do
|
|
297
|
-
:escaped
|
|
298
|
-
<h3 contenteditable="true">Edit Title</h3>
|
|
299
|
-
<p contenteditable="true">Edit Description</p>
|
|
300
|
-
%pre.prettyprint.haml.hidden
|
|
301
|
-
= preserve do
|
|
302
|
-
:escaped
|
|
303
|
-
%h3(contenteditable="true") Edit Title
|
|
304
|
-
%p(contenteditable="true") Edit Description
|
|
305
|
-
|