themepile-abstractio 1.0.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (84) hide show
  1. checksums.yaml +15 -0
  2. data/.gitignore +28 -0
  3. data/.rbenv-version +1 -0
  4. data/CONTRIBUTING.md +53 -0
  5. data/Gemfile +4 -0
  6. data/LICENSE +22 -0
  7. data/README.md +136 -0
  8. data/Rakefile +2 -0
  9. data/abstractio.gemspec +18 -0
  10. data/js/foundation/foundation.alerts.js +50 -0
  11. data/js/foundation/foundation.clearing.js +516 -0
  12. data/js/foundation/foundation.cookie.js +74 -0
  13. data/js/foundation/foundation.dropdown.js +159 -0
  14. data/js/foundation/foundation.forms.js +516 -0
  15. data/js/foundation/foundation.joyride.js +842 -0
  16. data/js/foundation/foundation.js +403 -0
  17. data/js/foundation/foundation.magellan.js +130 -0
  18. data/js/foundation/foundation.orbit.js +373 -0
  19. data/js/foundation/foundation.placeholder.js +159 -0
  20. data/js/foundation/foundation.reveal.js +276 -0
  21. data/js/foundation/foundation.section.js +409 -0
  22. data/js/foundation/foundation.tooltips.js +206 -0
  23. data/js/foundation/foundation.topbar.js +252 -0
  24. data/js/foundation/index.js +16 -0
  25. data/js/vendor/custom.modernizr.js +4 -0
  26. data/js/vendor/jquery.js +9597 -0
  27. data/js/vendor/zepto.js +1884 -0
  28. data/lib/abstractio.rb +17 -0
  29. data/lib/abstractio/engine.rb +20 -0
  30. data/lib/abstractio/generators/USAGE +15 -0
  31. data/lib/abstractio/generators/install_generator.rb +54 -0
  32. data/lib/abstractio/generators/templates/application.html.erb +46 -0
  33. data/lib/abstractio/generators/templates/application.html.haml +31 -0
  34. data/lib/abstractio/generators/templates/application.html.slim +28 -0
  35. data/lib/abstractio/version.rb +3 -0
  36. data/lib/themepile-abstractio.rb +17 -0
  37. data/scss/abstractio.scss +46 -0
  38. data/scss/abstractio/_variables.scss +1224 -0
  39. data/scss/abstractio/components/_alert-boxes.scss +107 -0
  40. data/scss/abstractio/components/_block-grid.scss +68 -0
  41. data/scss/abstractio/components/_breadcrumbs.scss +125 -0
  42. data/scss/abstractio/components/_button-groups.scss +89 -0
  43. data/scss/abstractio/components/_buttons.scss +227 -0
  44. data/scss/abstractio/components/_clearing.scss +224 -0
  45. data/scss/abstractio/components/_custom-forms.scss +263 -0
  46. data/scss/abstractio/components/_dropdown-buttons.scss +115 -0
  47. data/scss/abstractio/components/_dropdown.scss +150 -0
  48. data/scss/abstractio/components/_flex-video.scss +46 -0
  49. data/scss/abstractio/components/_forms.scss +362 -0
  50. data/scss/abstractio/components/_global.scss +280 -0
  51. data/scss/abstractio/components/_grid.scss +186 -0
  52. data/scss/abstractio/components/_inline-lists.scss +53 -0
  53. data/scss/abstractio/components/_joyride.scss +215 -0
  54. data/scss/abstractio/components/_keystrokes.scss +57 -0
  55. data/scss/abstractio/components/_labels.scss +85 -0
  56. data/scss/abstractio/components/_magellan.scss +23 -0
  57. data/scss/abstractio/components/_orbit.scss +213 -0
  58. data/scss/abstractio/components/_pagination.scss +100 -0
  59. data/scss/abstractio/components/_panels.scss +77 -0
  60. data/scss/abstractio/components/_pricing-tables.scss +131 -0
  61. data/scss/abstractio/components/_progress-bars.scss +71 -0
  62. data/scss/abstractio/components/_reveal.scss +132 -0
  63. data/scss/abstractio/components/_section.scss +318 -0
  64. data/scss/abstractio/components/_side-nav.scss +69 -0
  65. data/scss/abstractio/components/_split-buttons.scss +167 -0
  66. data/scss/abstractio/components/_sub-nav.scss +68 -0
  67. data/scss/abstractio/components/_switch.scss +251 -0
  68. data/scss/abstractio/components/_tables.scss +84 -0
  69. data/scss/abstractio/components/_thumbs.scss +48 -0
  70. data/scss/abstractio/components/_tooltips.scss +117 -0
  71. data/scss/abstractio/components/_top-bar.scss +495 -0
  72. data/scss/abstractio/components/_type.scss +426 -0
  73. data/scss/abstractio/components/_visibility.scss +322 -0
  74. data/scss/normalize.scss +402 -0
  75. data/templates/project/.gitignore +44 -0
  76. data/templates/project/MIT-LICENSE.txt +20 -0
  77. data/templates/project/config.rb +26 -0
  78. data/templates/project/humans.txt +8 -0
  79. data/templates/project/index.html +124 -0
  80. data/templates/project/manifest.rb +45 -0
  81. data/templates/project/robots.txt +4 -0
  82. data/templates/project/scss/app.scss +48 -0
  83. data/templates/upgrade/manifest.rb +34 -0
  84. metadata +153 -0
@@ -0,0 +1,68 @@
1
+ //
2
+ // Sub Nav Variables
3
+ //
4
+ $include-html-nav-classes: $include-html-classes !default;
5
+
6
+ // We use these to control margin and padding
7
+ $sub-nav-list-margin: emCalc(-4px) 0 emCalc(18px) !default;
8
+ $sub-nav-list-padding-top: emCalc(4px) !default;
9
+
10
+ // We use this to control the definition
11
+ $sub-nav-font-size: emCalc(14px) !default;
12
+ $sub-nav-font-color: #999 !default;
13
+ $sub-nav-font-weight: normal !default;
14
+ $sub-nav-text-decoration: none !default;
15
+ $sub-nav-border-radius: 1000px !default;
16
+
17
+ // We use these to control the active item styles
18
+ $sub-nav-active-font-weight: bold !default;
19
+ $sub-nav-active-bg: $primary-color !default;
20
+ $sub-nav-active-color: #fff !default;
21
+ $sub-nav-active-padding: emCalc(3px) emCalc(9px) !default;
22
+ $sub-nav-active-cursor: default !default;
23
+
24
+ //
25
+ // Sub Nav Mixins
26
+ //
27
+
28
+ @mixin sub-nav($font-color:$sub-nav-font-color, $font-size:$sub-nav-font-size, $active-bg:$sub-nav-active-bg) {
29
+ display: block;
30
+ width: auto;
31
+ overflow: hidden;
32
+ margin: $sub-nav-list-margin;
33
+ padding-top: $sub-nav-list-padding-top;
34
+ margin-#{$opposite-direction}: 0;
35
+ margin-#{$default-float}: emCalc(-9px);
36
+
37
+ dt,
38
+ dd {
39
+ float: $default-float;
40
+ display: inline;
41
+ margin-#{$default-float}: emCalc(9px);
42
+ margin-bottom: emCalc(10px);
43
+ font-weight: $sub-nav-font-weight;
44
+ font-size: $font-size;
45
+
46
+ a {
47
+ color: $font-color;
48
+ text-decoration: $sub-nav-text-decoration; }
49
+
50
+ &.active a {
51
+ @include radius($sub-nav-border-radius);
52
+ font-weight: $sub-nav-active-font-weight;
53
+ background: $active-bg;
54
+ padding: $sub-nav-active-padding;
55
+ cursor: $sub-nav-active-cursor;
56
+ color: $sub-nav-active-color;
57
+ }
58
+ }
59
+
60
+ }
61
+
62
+
63
+ @if $include-html-nav-classes != false {
64
+
65
+ /* Side Nav */
66
+ .sub-nav { @include sub-nav; }
67
+
68
+ }
@@ -0,0 +1,251 @@
1
+ //
2
+ // Switch Variables
3
+ //
4
+ $include-html-form-classes: $include-html-classes !default;
5
+
6
+ // Controlling border styles and background colors for the switch container
7
+ $switch-border-color: darken(#fff, 20%) !default;
8
+ $switch-border-style: solid !default;
9
+ $switch-border-width: 1px !default;
10
+ $switch-bg: #fff !default;
11
+
12
+ // We use these to control the switch heights for our default classes
13
+ $switch-height-tny: 22px !default;
14
+ $switch-height-sml: 28px !default;
15
+ $switch-height-med: 36px !default;
16
+ $switch-height-lrg: 44px !default;
17
+ $switch-bottom-margin: emCalc(20px) !default;
18
+
19
+ // We use these to control default font sizes for our classes.
20
+ $switch-font-size-tny: 11px !default;
21
+ $switch-font-size-sml: 12px !default;
22
+ $switch-font-size-med: 14px !default;
23
+ $switch-font-size-lrg: 17px !default;
24
+ $switch-label-side-padding: 6px !default;
25
+
26
+ // We use these to style the switch-paddle
27
+ $switch-paddle-bg: #fff !default;
28
+ $switch-paddle-fade-to-color: darken($switch-paddle-bg, 10%) !default;
29
+ $switch-paddle-border-color: darken($switch-paddle-bg, 35%) !default;
30
+ $switch-paddle-border-width: 1px !default;
31
+ $switch-paddle-border-style: solid !default;
32
+ $switch-paddle-transition-speed: .1s !default;
33
+ $switch-paddle-transition-ease: ease-out !default;
34
+ $switch-positive-color: lighten($success-color, 50%) !default;
35
+ $switch-negative-color: #f5f5f5 !default;
36
+
37
+ // Outline Style for tabbing through switches
38
+ $switch-label-outline: 1px dotted #888 !default;
39
+
40
+
41
+ //
42
+ // Switch Mixins
43
+ //
44
+
45
+ // We use this mixin to create the base styles for our switch element.
46
+ @mixin switch-base($transition-speed:$switch-paddle-transition-speed, $transition-ease:$switch-paddle-transition-ease) {
47
+
48
+ // Default position and structure for switch container.
49
+ position: relative;
50
+ width: 100%;
51
+ padding: 0;
52
+ display: block;
53
+ overflow: hidden;
54
+ border-style: $switch-border-style;
55
+ border-width: $switch-border-width;
56
+ margin-bottom: $switch-bottom-margin;
57
+
58
+ // Default label styles for type and transition
59
+ label {
60
+ position: relative;
61
+ #{$default-float}: 0;
62
+ z-index: 2;
63
+ float: $default-float;
64
+ width: 50%;
65
+ height: 100%;
66
+ margin: 0;
67
+ font-weight: bold;
68
+ text-align: $default-float;
69
+
70
+ // Transition for the switch label to follow paddle
71
+ @include single-transition(all, $transition-speed, $transition-ease);
72
+ }
73
+
74
+ // So that we don't need to recreate the form with any JS, we use the
75
+ // existing radio button, but we cleverly position and hide it.
76
+ input {
77
+ position: absolute;
78
+ z-index: 3;
79
+ opacity: 0;
80
+ width: 100%;
81
+ height: 100%;
82
+ -moz-appearance: none;
83
+
84
+ // Hover and focus styles for the paddle
85
+ &:hover,
86
+ &:focus {
87
+ cursor: pointer;
88
+ }
89
+ }
90
+
91
+ // The toggle area for radio switches. We call is a paddle.
92
+ & > span {
93
+ position: absolute;
94
+ top: -1px;
95
+ #{$default-float}: -1px;
96
+ z-index: 1;
97
+ display: block;
98
+ padding: 0;
99
+ border-width: $switch-paddle-border-width;
100
+ border-style: $switch-paddle-border-style;
101
+
102
+ // Transition for the switch paddle
103
+ @include single-transition(all, $transition-speed, $transition-ease);
104
+ }
105
+
106
+ // When a label isn't :checked, we hide it as it slides away.
107
+ input:not(:checked) + label { opacity: 0; }
108
+
109
+ // Controlling the position of the labels as they are toggled.
110
+ input:checked { display: none !important; }
111
+ input { #{$default-float}: 0; display: block !important; }
112
+
113
+ // Left Label alignment and position changes, including fixes for while inside a custom form
114
+ input:first-of-type + label,
115
+ input:first-of-type + span + label { #{$default-float}: -50%; }
116
+ input:first-of-type:checked + label,
117
+ input:first-of-type:checked + span + label { #{$default-float}: 0%; }
118
+
119
+ // Right Label alignment and position changes, including fixes for while inside a custom form
120
+ input:last-of-type + label,
121
+ input:last-of-type + span + label {#{$opposite-direction}: -50%; #{$default-float}: auto; text-align: $opposite-direction; }
122
+ input:last-of-type:checked + label,
123
+ input:last-of-type:checked + span + label { #{$opposite-direction}: 0%; #{$default-float}: auto; }
124
+
125
+ // Hiding custom form spans since we auto-create them
126
+ span.custom { display: none !important; }
127
+
128
+ // Bugfix for older Webkit, including mobile Webkit. Adapted from:
129
+ // http://css-tricks.com/webkit-sibling-bug/
130
+ -webkit-animation: webkitSiblingBugfix infinite 1s;
131
+
132
+ }
133
+
134
+ // We use this mixin to create the size styles for switches.
135
+ @mixin switch-size($height:$switch-height-med, $font-size:$switch-font-size-med, $line-height:2.3em) {
136
+
137
+ height: $height;
138
+
139
+ label {
140
+ padding: 0 emCalc($switch-label-side-padding);
141
+ line-height: $line-height;
142
+ font-size: emCalc($font-size);
143
+ }
144
+
145
+ input {
146
+ // Move the paddle to the right position
147
+ &:first-of-type:checked ~ span {
148
+ #{$default-float}: 100%;
149
+ margin-#{$default-float}: emCalc(-$height + 1px);
150
+ }
151
+ }
152
+
153
+ & > span {
154
+ width: emCalc($height);
155
+ height: emCalc($height);
156
+ }
157
+
158
+ }
159
+
160
+ // We use this mixin to add color and other fanciness to the switches.
161
+ @mixin switch-style($paddle-bg:$switch-paddle-bg, $positive-color:$switch-positive-color, $negative-color:$switch-negative-color, $radius:false, $base-style:true) {
162
+
163
+ @if $base-style {
164
+ background: $switch-bg;
165
+ border-color: $switch-border-color;
166
+
167
+ & > span {
168
+ border-color: darken($paddle-bg, 30%);
169
+ background: $paddle-bg;
170
+ background: -moz-linear-gradient(top, $paddle-bg 0%, darken($paddle-bg, 5%) 100%);
171
+ background: -webkit-linear-gradient(top, $paddle-bg 0%, darken($paddle-bg, 5%) 100%);
172
+ background: linear-gradient(to bottom, $paddle-bg 0%, darken($paddle-bg, 5%) 100%);
173
+
174
+ // Building the alternating colored sides of the switch
175
+ -webkit-box-shadow: 2px 0 10px 0 rgba(0,0,0,0.07),
176
+ 1000px 0 0 1000px $positive-color,
177
+ -2px 0 10px 0 rgba(0,0,0,0.07),
178
+ -1000px 0 0 1000px $negative-color;
179
+ box-shadow: 2px 0 10px 0 rgba(0,0,0,0.07),
180
+ 1000px 0 0 980px $positive-color,
181
+ -2px 0 10px 0 rgba(0,0,0,0.07),
182
+ -1000px 0 0 1000px $negative-color;
183
+ }
184
+
185
+ &:hover,
186
+ &:focus {
187
+ & > span {
188
+ background: $paddle-bg;
189
+ background: -moz-linear-gradient(top, $paddle-bg 0%, darken($paddle-bg, 10%) 100%);
190
+ background: -webkit-linear-gradient(top, $paddle-bg 0%, darken($paddle-bg, 10%) 100%);
191
+ background: linear-gradient(to bottom, $paddle-bg 0%, darken($paddle-bg, 10%) 100%);
192
+ }
193
+ }
194
+
195
+ &:active { background: transparent; }
196
+ }
197
+
198
+ // Setting up the radius for switches
199
+ @if $radius == true {
200
+ @include radius(4px);
201
+ & > span { @include radius(3px); }
202
+ }
203
+ @else if $radius {
204
+ @include radius($radius);
205
+ & > span { @include radius($radius - 1px); }
206
+ }
207
+
208
+ }
209
+
210
+ // We use this to quickly create switches with a single mixin
211
+ @mixin switch($transition-speed:$switch-paddle-transition-speed, $transition-ease:$switch-paddle-transition-ease, $height:$switch-height-med, $font-size:$switch-font-size-med, $line-height:2.3em, $paddle-bg:$switch-paddle-bg, $positive-color:$switch-positive-color, $negative-color:$switch-negative-color, $radius:false, $base-style:true) {
212
+ @include switch-base($transition-speed, $transition-ease);
213
+ @include switch-size($height, $font-size, $line-height);
214
+ @include switch-style($paddle-bg, $positive-color, $negative-color, $radius, $base-style);
215
+ }
216
+
217
+ @if $include-html-form-classes != false {
218
+
219
+ /* Foundation Switches */
220
+ @media only screen {
221
+
222
+ // Containing element for the radio switch
223
+ div.switch {
224
+ @include switch;
225
+
226
+ // Large radio switches
227
+ &.large { @include switch-size($switch-height-lrg, $switch-font-size-lrg); }
228
+
229
+ // Small radio switches
230
+ &.small { @include switch-size($switch-height-sml, $switch-font-size-sml, 2.1em); }
231
+
232
+ // Tiny radio switches
233
+ &.tiny { @include switch-size($switch-height-tny, $switch-font-size-tny, 1.9em); }
234
+
235
+ // Add a radius to the switch
236
+ &.radius { @include radius(4px);
237
+ & > span { @include radius(3px); }
238
+ }
239
+
240
+ // Make the switch completely round, like a pill
241
+ &.round { @include radius(1000px);
242
+ & > span { @include radius(999px); }
243
+ label { padding: 0 emCalc($switch-label-side-padding + 3px); }
244
+ }
245
+
246
+ }
247
+
248
+ @-webkit-keyframes webkitSiblingBugfix { from { position: relative; } to { position: relative; } }
249
+
250
+ }
251
+ }
@@ -0,0 +1,84 @@
1
+ //
2
+ // Table Variables
3
+ //
4
+ $include-html-table-classes: $include-html-classes !default;
5
+
6
+ // These control the background color for the table and even rows
7
+ $table-bg: #fff !default;
8
+ $table-even-row-bg: #f9f9f9 !default;
9
+
10
+ // These control the table cell border style
11
+ $table-border-style: solid !default;
12
+ $table-border-size: 1px !default;
13
+ $table-border-color: #ddd !default;
14
+
15
+ // These control the table head styles
16
+ $table-head-bg: #f5f5f5 !default;
17
+ $table-head-font-size: emCalc(14px) !default;
18
+ $table-head-font-color: #222 !default;
19
+ $table-head-font-weight: bold !default;
20
+ $table-head-padding: emCalc(8px) emCalc(10px) emCalc(10px) !default;
21
+
22
+ // These control the row padding and font styles
23
+ $table-row-padding: emCalc(9px) emCalc(10px) !default;
24
+ $table-row-font-size: emCalc(14px) !default;
25
+ $table-row-font-color: #222 !default;
26
+ $table-line-height: emCalc(18px) !default;
27
+
28
+ // These are for controlling the display and margin of tables
29
+ $table-display: table-cell !default;
30
+ $table-margin-bottom: emCalc(20px) !default;
31
+
32
+
33
+ //
34
+ // Table Mixin
35
+ //
36
+ @mixin table {
37
+ background: $table-bg;
38
+ margin-bottom: $table-margin-bottom;
39
+ border: $table-border-style $table-border-size $table-border-color;
40
+
41
+ thead,
42
+ tfoot {
43
+ background: $table-head-bg;
44
+ font-weight: $table-head-font-weight;
45
+
46
+ tr {
47
+ th,
48
+ td {
49
+ padding: $table-head-padding;
50
+ font-size: $table-head-font-size;
51
+ color: $table-head-font-color;
52
+ text-align: $default-float;
53
+ }
54
+ }
55
+ }
56
+
57
+ tr {
58
+ th,
59
+ td {
60
+ padding: $table-row-padding;
61
+ font-size: $table-row-font-size;
62
+ color: $table-row-font-color;
63
+ }
64
+
65
+ &.even,
66
+ &.alt,
67
+ &:nth-of-type(even) { background: $table-even-row-bg; }
68
+ }
69
+
70
+ thead tr th,
71
+ tfoot tr th,
72
+ tbody tr td,
73
+ tr td,
74
+ tfoot tr td { display: $table-display; line-height: $table-line-height; }
75
+ }
76
+
77
+ @if $include-html-table-classes {
78
+
79
+ /* Tables */
80
+ table {
81
+ @include table;
82
+ }
83
+
84
+ }
@@ -0,0 +1,48 @@
1
+ //
2
+ // Image Thumbnail Variables
3
+ //
4
+ $include-html-media-classes: $include-html-classes !default;
5
+
6
+ // We use these to control border styles
7
+ $thumb-border-style: solid !default;
8
+ $thumb-border-width: 4px !default;
9
+ $thumb-border-color: #fff !default;
10
+ $thumb-box-shadow: 0 0 0 1px rgba(#000,.2) !default;
11
+ $thumb-box-shadow-hover: 0 0 6px 1px rgba($primary-color,0.5) !default;
12
+
13
+ // Radius and transition speed for thumbs
14
+ $thumb-radius: $global-radius !default;
15
+ $thumb-transition-speed: 200ms !default;
16
+
17
+ //
18
+ // Image Thumbnail Mixins
19
+ //
20
+
21
+ // We use this to create image thumbnail styles.
22
+ @mixin thumb($border-width:$thumb-border-width, $box-shadow:$thumb-box-shadow, $box-shadow-hover:$thumb-box-shadow-hover) {
23
+ line-height: 0;
24
+ display: inline-block;
25
+ border: $thumb-border-style $border-width $thumb-border-color;
26
+ -webkit-box-shadow: $box-shadow;
27
+ box-shadow: $box-shadow;
28
+
29
+ &:hover,
30
+ &:focus { -webkit-box-shadow: $box-shadow-hover; box-shadow: $box-shadow-hover; }
31
+ }
32
+
33
+
34
+ // If html classes are turned on we'll include these classes.
35
+ @if $include-html-media-classes != false {
36
+
37
+ /* Image Thumbnails */
38
+ .th {
39
+ @include thumb;
40
+ @include single-transition(all,$thumb-transition-speed,ease-out);
41
+
42
+ &.radius { @include radius($thumb-radius); }
43
+ }
44
+ a.th { display: block; }
45
+
46
+ }
47
+
48
+