bookends 2.0.0 → 2.0.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (34) hide show
  1. checksums.yaml +4 -4
  2. data/lib/bookends/jekyll_handler.rb +2 -0
  3. data/lib/bookends/version.rb +1 -1
  4. metadata +1 -31
  5. data/fixtures/dummy-jekyll/README.md +0 -64
  6. data/fixtures/dummy-jekyll/_config.yml +0 -8
  7. data/fixtures/dummy-jekyll/_layouts/default.html +0 -118
  8. data/fixtures/dummy-jekyll/_layouts/post.html +0 -14
  9. data/fixtures/dummy-jekyll/_sass/_base.scss +0 -478
  10. data/fixtures/dummy-jekyll/_sass/_google-cse.scss +0 -372
  11. data/fixtures/dummy-jekyll/_sass/_header.scss +0 -780
  12. data/fixtures/dummy-jekyll/_sass/_legacy.scss +0 -567
  13. data/fixtures/dummy-jekyll/_sass/_menu-icon.scss +0 -68
  14. data/fixtures/dummy-jekyll/_sass/_mixins.scss +0 -12
  15. data/fixtures/dummy-jekyll/_sass/_search.scss +0 -51
  16. data/fixtures/dummy-jekyll/_sass/bookends/_footer.scss +0 -390
  17. data/fixtures/dummy-jekyll/_sass/mixins/_background-image.scss +0 -48
  18. data/fixtures/dummy-jekyll/_sass/mixins/_border-radius.scss +0 -22
  19. data/fixtures/dummy-jekyll/_sass/mixins/_box-sizing.scss +0 -4
  20. data/fixtures/dummy-jekyll/_sass/mixins/_hide-text.scss +0 -5
  21. data/fixtures/dummy-jekyll/_sass/mixins/_hidpi.scss +0 -10
  22. data/fixtures/dummy-jekyll/_sass/mixins/_linear-gradient.scss +0 -41
  23. data/fixtures/dummy-jekyll/_sass/mixins/_prefixer.scss +0 -49
  24. data/fixtures/dummy-jekyll/_sass/mixins/_responsiveness.scss +0 -129
  25. data/fixtures/dummy-jekyll/_sass/mixins/_retina-image.scss +0 -31
  26. data/fixtures/dummy-jekyll/_sass/mixins/_size.scss +0 -44
  27. data/fixtures/dummy-jekyll/_sass/mixins/_transition.scss +0 -34
  28. data/fixtures/dummy-jekyll/_sass/mixins/_triangle.scss +0 -45
  29. data/fixtures/dummy-jekyll/app.json +0 -15
  30. data/fixtures/dummy-jekyll/bin/from-gdoc +0 -3
  31. data/fixtures/dummy-jekyll/bin/platform-setup +0 -15
  32. data/fixtures/dummy-jekyll/feed.xml +0 -34
  33. data/fixtures/dummy-jekyll/index.html +0 -40
  34. data/fixtures/dummy-jekyll/static.json +0 -3
@@ -1,390 +0,0 @@
1
- #heroku-footer {
2
- #bookends-website { //honeypot
3
- position: absolute;
4
- left: -9999px;
5
- }
6
-
7
- .hide {
8
- display: none;
9
- }
10
-
11
- $asset-path: 'bookends/footer';
12
-
13
- $footer-width: 94%;
14
- $footer-max-width: 1060px;
15
-
16
- $color-header: #211746;
17
- $color-purple: #6e5baa;
18
- $color-link: #999;
19
- $color-background: #f0f0f0;
20
- $color-border: darken($color-background, 10%);
21
-
22
- $threshold-tablet: 900px;
23
- $threshold-mobile: 700px;
24
-
25
- @mixin hidpi($ratio: 1.3) {
26
- @media only screen and (-webkit-min-device-pixel-ratio: $ratio),
27
- only screen and (min--moz-device-pixel-ratio: $ratio),
28
- only screen and (-o-min-device-pixel-ratio: #{$ratio}/1),
29
- only screen and (min-resolution: #{round($ratio*96)}dpi),
30
- only screen and (min-resolution: #{$ratio}dppx) {
31
- @content;
32
- }
33
- }
34
-
35
- @mixin hide-text {
36
- color: transparent;
37
- font: 0/0 a;
38
- text-shadow: none;
39
- }
40
-
41
- @mixin screen($threshold: max-width, $screen: $threshold-tablet) {
42
- @media ($threshold: $screen) {
43
- @content;
44
- }
45
- }
46
-
47
- @mixin clearfix {
48
- *zoom: 1;
49
-
50
- &:before,
51
- &:after {
52
- content: " ";
53
- display: table;
54
- }
55
-
56
- &:after {
57
- clear: both;
58
- }
59
- }
60
-
61
- padding-top: 15px;
62
- background: $color-background;
63
- box-shadow: 0 1px 1px 0 fade-out($color-background, .9) inset;
64
- font-size: 13px;
65
- color: #999;
66
- line-height: 1.8em;
67
- -webkit-font-smoothing: antialiased;
68
-
69
- * {
70
- @include box-sizing(border-box);
71
- }
72
-
73
- .wrapper {
74
- @include clearfix();
75
- position: relative;
76
- width: $footer-width;
77
- max-width: $footer-max-width;
78
- padding: 2em 0;
79
- margin: 0 auto;
80
- }
81
-
82
- a:link,
83
- a:visited {
84
- color: $color-link;
85
- text-decoration: none;
86
- }
87
-
88
- a:hover,
89
- a:active {
90
- color: darken($color-link, 30%);
91
- }
92
-
93
- ul {
94
- list-style: none;
95
- padding-left: 0;
96
- font-weight: 200;
97
- }
98
-
99
- h1,
100
- h2,
101
- h3,
102
- h4,
103
- h5 {
104
- line-height: 1.1em;
105
- padding: 0;
106
- }
107
-
108
- h3 {
109
- color: $color-purple;
110
- font-size: 14px;
111
- font-weight: 500;
112
- }
113
-
114
- h4 {
115
- margin: 1.33em 0;
116
- font-size: 12px;
117
- text-align: left;
118
- font-weight: bold;
119
- text-transform: uppercase;
120
- letter-spacing: .1em;
121
- color: $color-header;
122
-
123
- @include screen($screen: $threshold-mobile) {
124
- text-align: center;
125
- }
126
- }
127
-
128
- .tertiary {
129
- background: fade-out(white, .6);
130
- @include screen() {
131
- text-align: center;
132
- }
133
-
134
- a:link,
135
- a:visited {
136
- text-decoration: underline;
137
- }
138
-
139
- .col {
140
- width: 50%;
141
- }
142
- }
143
-
144
- .col {
145
- display: block;
146
- float: left;
147
-
148
- ul {
149
- margin: 1em 0;
150
- }
151
-
152
- li {
153
- margin: 0;
154
- }
155
- }
156
-
157
- .wrapper {
158
-
159
- .col {
160
- @include screen() {
161
- float: none;
162
- width: 100%;
163
- }
164
- }
165
- }
166
-
167
- .heroku-footer-links {
168
- @include clearfix();
169
- width: 70%;
170
-
171
- .col {
172
- width: 25%;
173
- padding-right: 2%;
174
- @include screen($screen: $threshold-mobile) {
175
- width: auto;
176
- padding-right: 0;
177
- text-align: center;
178
- }
179
- }
180
- }
181
-
182
- .heroku-footer-social {
183
- width: 30%;
184
- @include screen() {
185
- border-top: 1px solid $color-border;
186
- text-align: center;
187
- margin-top: 30px;
188
- padding-top: 10px;
189
- }
190
-
191
- h3 {
192
- margin: 7px 0 15px;
193
- text-align: left;
194
- span {
195
- margin-right: 6px;
196
- top: 4px;
197
- }
198
- }
199
-
200
- #bookends-newsletter {
201
- $input-height: 40px;
202
-
203
- position: relative;
204
- width: 100%;
205
- padding-bottom: 10px;
206
- @include screen(min-width, $threshold-tablet) {
207
- border-bottom: 1px solid $color-border;
208
- }
209
-
210
- input[type="text"],
211
- input[type="email"], {
212
- -webkit-appearance: none;
213
- width: 100%;
214
- height: $input-height;
215
- padding: 0 10px;
216
- border-radius: 4px;
217
- border: 1px solid $color-border;
218
- box-shadow: 0 0 4px fade-out($color-purple, 1);
219
- transition: all .2s ease;
220
- -webkit-transition: all .2s ease;
221
-
222
- &:focus {
223
- outline: none;
224
- box-shadow: 0 0 4px fade-out($color-purple, .5);
225
- border-color: $color-purple;
226
- }
227
- }
228
-
229
- input[type="submit"] {
230
- -webkit-appearance: none;
231
- position: absolute;
232
- top: 0;
233
- right: 0;
234
- margin: 5px;
235
- width: $input-height;
236
- height: ($input-height - 10);
237
- border: 0;
238
- background-color: $color-purple;
239
- border-radius: 3px;
240
- text-transform: uppercase;
241
- letter-spacing: .05em;
242
- font-weight: bold;
243
- text-align: center;
244
- color: #fff;
245
-
246
- &:focus {
247
- outline: none;
248
- border: 1px solid fade-out($color-purple, .5);
249
- }
250
-
251
- &:hover {
252
- background-color: darken($color-purple, 5%);
253
- }
254
- }
255
-
256
- p {
257
- margin: 6px 0;
258
- padding: 8px;
259
- border-radius: 3px;
260
- font-size: 11px;
261
- text-align: left;
262
- background-color: #fff;
263
- height: $input-height;
264
-
265
- &.error {
266
- background-color: tomato;
267
- }
268
- }
269
- }
270
-
271
- .social-list {
272
- margin: 0;
273
- li {
274
- display: inline-block;
275
- margin-right: 5px;
276
- }
277
- }
278
-
279
- iframe {
280
- position: relative;
281
- width: 100%;
282
- margin: 0;
283
-
284
- @include screen(min-width, $threshold-tablet) {
285
- border-bottom: 1px solid $color-border;
286
- }
287
- }
288
-
289
- }
290
-
291
- .tertiary {
292
- p {
293
- margin: 1em 0;
294
- padding: 0;
295
- font-size: 13px;
296
- color: #999;
297
- }
298
- ul {
299
- margin: 13px 0 10px;
300
- float: right;
301
- @include screen() {
302
- float: none;
303
- }
304
- }
305
-
306
- li {
307
- display: inline-block;
308
- margin-right: 7px;
309
- @include screen() {
310
- &:last-child {
311
- margin-right: 0;
312
- }
313
- }
314
- a {
315
- display: block;
316
- }
317
- }
318
- }
319
-
320
- .sfdc-heroku-logo {
321
- @include hide-text;
322
- display: block;
323
- float: left;
324
- width: 142px;
325
- height: 54px;
326
- margin-right: 18px;
327
- background-image: asset-url("#{$asset-path}/salesforce_heroku_gray.png");
328
- background-size: 100%;
329
- @include screen() {
330
- display: inline-block;
331
- float: none;
332
- margin-right: 0;
333
- }
334
- }
335
-
336
- //Icons
337
- [class^="heroku-footer-icon-"] {
338
- position: relative;
339
- display: inline-block;
340
- width: 21px;
341
- height: 21px;
342
- background-color: transparent;
343
- background-repeat: no-repeat;
344
- background-image: asset-url("#{$asset-path}/footer_sprite.png");
345
- @include hide-text;
346
- @include hidpi {
347
- background-image: asset-url("#{$asset-path}/footer_sprite@2x.png");
348
- background-size: 200px 100px;
349
- }
350
- }
351
-
352
- //Icon array (class, background position x, y)
353
- $icons: (rss 0 0,
354
- twitter -21px 0,
355
- facebook -42px 0,
356
- github -63px 0,
357
- vimeo -84px 0,
358
- linkedin -105px 0,
359
- newsletter -21px -63px,
360
- submit 0 -42px
361
- );
362
-
363
- //Each loop to create classes
364
- .heroku-footer-icon {
365
- @each $var in $icons {
366
- &-#{nth($var, 1)} {
367
- background-position: #{nth($var, 2)} #{nth($var, 3)};
368
- }
369
- }
370
- }
371
-
372
- //Hover state for social links
373
- .social-list .heroku-footer-icon {
374
- @each $var in $icons {
375
- &-#{nth($var, 1)} {
376
- &:hover {
377
- background-position: #{nth($var, 2)} -21px;
378
- }
379
- }
380
- }
381
- }
382
-
383
- .heroku-footer-icon-submit {
384
- top: -8px;
385
- &:hover {
386
- background-position: 0 -63px;
387
- }
388
- }
389
-
390
- }
@@ -1,48 +0,0 @@
1
- //************************************************************************//
2
- // Background-image property for adding multiple background images with
3
- // gradients, or for stringing multiple gradients together.
4
- //************************************************************************//
5
-
6
- @mixin background-image($images...) {
7
- background-image: _add-prefix($images, webkit);
8
- background-image: _add-prefix($images);
9
- }
10
-
11
- @function _add-prefix($images, $vendor: false) {
12
- $images-prefixed: ();
13
- $gradient-positions: false;
14
- @for $i from 1 through length($images) {
15
- $type: type-of(nth($images, $i)); // Get type of variable - List or String
16
-
17
- // If variable is a list - Gradient
18
- @if $type == list {
19
- $gradient-type: nth(nth($images, $i), 1); // linear or radial
20
- $gradient-pos: null;
21
- $gradient-args: null;
22
-
23
- @if ($gradient-type == linear) or ($gradient-type == radial) {
24
- $gradient-pos: nth(nth($images, $i), 2); // Get gradient position
25
- $gradient-args: nth(nth($images, $i), 3); // Get actual gradient (red, blue)
26
- }
27
- @else {
28
- $gradient-args: nth(nth($images, $i), 2); // Get actual gradient (red, blue)
29
- }
30
-
31
- $gradient-positions: _gradient-positions-parser($gradient-type, $gradient-pos);
32
- $gradient: _render-gradients($gradient-positions, $gradient-args, $gradient-type, $vendor);
33
- $images-prefixed: append($images-prefixed, $gradient, comma);
34
- }
35
- // If variable is a string - Image
36
- @else if $type == string {
37
- $images-prefixed: join($images-prefixed, nth($images, $i), comma);
38
- }
39
- }
40
- @return $images-prefixed;
41
- }
42
-
43
- //Examples:
44
- //@include background-image(linear-gradient(top, orange, red));
45
- //@include background-image(radial-gradient(50% 50%, cover circle, orange, red));
46
- //@include background-image(url("/images/a.png"), linear-gradient(orange, red));
47
- //@include background-image(url("image.png"), linear-gradient(orange, red), url("image.png"));
48
- //@include background-image(linear-gradient(hsla(0, 100%, 100%, 0.25) 0%, hsla(0, 100%, 100%, 0.08) 50%, transparent 50%), linear-gradient(orange, red));
@@ -1,22 +0,0 @@
1
- //************************************************************************//
2
- // Shorthand Border-radius mixins
3
- //************************************************************************//
4
- @mixin border-top-radius($radii) {
5
- @include prefixer(border-top-left-radius, $radii, spec);
6
- @include prefixer(border-top-right-radius, $radii, spec);
7
- }
8
-
9
- @mixin border-bottom-radius($radii) {
10
- @include prefixer(border-bottom-left-radius, $radii, spec);
11
- @include prefixer(border-bottom-right-radius, $radii, spec);
12
- }
13
-
14
- @mixin border-left-radius($radii) {
15
- @include prefixer(border-top-left-radius, $radii, spec);
16
- @include prefixer(border-bottom-left-radius, $radii, spec);
17
- }
18
-
19
- @mixin border-right-radius($radii) {
20
- @include prefixer(border-top-right-radius, $radii, spec);
21
- @include prefixer(border-bottom-right-radius, $radii, spec);
22
- }
@@ -1,4 +0,0 @@
1
- @mixin box-sizing ($box) {
2
- // content-box | border-box | inherit
3
- @include prefixer(box-sizing, $box, webkit moz spec);
4
- }
@@ -1,5 +0,0 @@
1
- @mixin hide-text {
2
- color: transparent;
3
- font: 0/0 a;
4
- text-shadow: none;
5
- }
@@ -1,10 +0,0 @@
1
- // HiDPI mixin. Default value set to 1.3 to target Google Nexus 7 (http://bjango.com/articles/min-device-pixel-ratio/)
2
- @mixin hidpi($ratio: 1.3) {
3
- @media only screen and (-webkit-min-device-pixel-ratio: $ratio),
4
- only screen and (min--moz-device-pixel-ratio: $ratio),
5
- only screen and (-o-min-device-pixel-ratio: #{$ratio}/1),
6
- only screen and (min-resolution: #{round($ratio*96)}dpi),
7
- only screen and (min-resolution: #{$ratio}dppx) {
8
- @content;
9
- }
10
- }
@@ -1,41 +0,0 @@
1
- @mixin linear-gradient($pos, $G1, $G2: false,
2
- $G3: false, $G4: false,
3
- $G5: false, $G6: false,
4
- $G7: false, $G8: false,
5
- $G9: false, $G10: false,
6
- $deprecated-pos1: left top,
7
- $deprecated-pos2: left bottom,
8
- $fallback: false) {
9
- // Detect what type of value exists in $pos
10
- $pos-type: type-of(nth($pos, 1));
11
- $pos-spec: null;
12
- $pos-degree: null;
13
-
14
- // If $pos is missing from mixin, reassign vars and add default position
15
- @if ($pos-type == color) or (nth($pos, 1) == "transparent") {
16
- $G10: $G9; $G9: $G8; $G8: $G7; $G7: $G6; $G6: $G5;
17
- $G5: $G4; $G4: $G3; $G3: $G2; $G2: $G1; $G1: $pos;
18
- $pos: null;
19
- }
20
-
21
- @if $pos {
22
- $positions: _linear-positions-parser($pos);
23
- $pos-degree: nth($positions, 1);
24
- $pos-spec: nth($positions, 2);
25
- }
26
-
27
- $full: compact($G1, $G2, $G3, $G4, $G5, $G6, $G7, $G8, $G9, $G10);
28
-
29
- // Set $G1 as the default fallback color
30
- $fallback-color: nth($G1, 1);
31
-
32
- // If $fallback is a color use that color as the fallback color
33
- @if (type-of($fallback) == color) or ($fallback == "transparent") {
34
- $fallback-color: $fallback;
35
- }
36
-
37
- background-color: $fallback-color;
38
- background-image: _deprecated-webkit-gradient(linear, $deprecated-pos1, $deprecated-pos2, $full); // Safari <= 5.0
39
- background-image: -webkit-linear-gradient($pos-degree $full); // Safari 5.1+, Chrome
40
- background-image: unquote("linear-gradient(#{$pos-spec}#{$full})");
41
- }
@@ -1,49 +0,0 @@
1
- //************************************************************************//
2
- // Example: @include prefixer(border-radius, $radii, webkit ms spec);
3
- //************************************************************************//
4
- $prefix-for-webkit: true !default;
5
- $prefix-for-mozilla: true !default;
6
- $prefix-for-microsoft: true !default;
7
- $prefix-for-opera: true !default;
8
- $prefix-for-spec: true !default; // required for keyframe mixin
9
-
10
- @mixin prefixer ($property, $value, $prefixes) {
11
- @each $prefix in $prefixes {
12
- @if $prefix == webkit {
13
- @if $prefix-for-webkit {
14
- -webkit-#{$property}: $value;
15
- }
16
- }
17
- @else if $prefix == moz {
18
- @if $prefix-for-mozilla {
19
- -moz-#{$property}: $value;
20
- }
21
- }
22
- @else if $prefix == ms {
23
- @if $prefix-for-microsoft {
24
- -ms-#{$property}: $value;
25
- }
26
- }
27
- @else if $prefix == o {
28
- @if $prefix-for-opera {
29
- -o-#{$property}: $value;
30
- }
31
- }
32
- @else if $prefix == spec {
33
- @if $prefix-for-spec {
34
- #{$property}: $value;
35
- }
36
- }
37
- @else {
38
- @warn "Unrecognized prefix: #{$prefix}";
39
- }
40
- }
41
- }
42
-
43
- @mixin disable-prefix-for-all() {
44
- $prefix-for-webkit: false;
45
- $prefix-for-mozilla: false;
46
- $prefix-for-microsoft: false;
47
- $prefix-for-opera: false;
48
- $prefix-for-spec: false;
49
- }
@@ -1,129 +0,0 @@
1
- @mixin screen($threshold: max-width, $screen: 1080px) {
2
- @media ($threshold: $screen) {
3
- @content;
4
- }
5
- }
6
-
7
- @mixin desktop {
8
- @media (min-width: $tablet-threshold + 1) {
9
- @content;
10
- }
11
- }
12
-
13
- @mixin mobile {
14
- @media (max-width: $mobile-threshold) {
15
- @content;
16
- }
17
- }
18
-
19
- @mixin mobile-landscape {
20
- @media (max-width: $mobile-landscape-threshold) {
21
- @content;
22
- }
23
- }
24
-
25
- @mixin tablet {
26
- @media (max-width: $tablet-threshold) {
27
- @content;
28
- }
29
- }
30
-
31
- @mixin tablet-landscape {
32
- @media (max-width: $tablet-landscape-threshold) {
33
- @content;
34
- }
35
- }
36
-
37
- @mixin large-screen {
38
- @media (min-width: $large-screen-threshold) {
39
- @content;
40
- }
41
- }
42
-
43
- @mixin screen-max-height($screen-height: 750px) {
44
- @media (max-height: $screen-height) {
45
- @content;
46
- }
47
- }
48
-
49
- @mixin columns(
50
- $desktop: $tartan-column-count,
51
- $tablet: "",
52
- $mobile: ""
53
- ) {
54
- @include tartan-span-columns($desktop);
55
-
56
- @if ($desktop == 1) {
57
- &:nth-child(12n + 12) { @include tartan-omega; }
58
- }
59
-
60
- @if ($desktop == 2) {
61
- &:nth-child(6n + 6) { @include tartan-omega; }
62
- }
63
-
64
- @if ($desktop == 3) {
65
- &:nth-child(4n + 4) { @include tartan-omega; }
66
- }
67
-
68
- @if ($desktop == 4) {
69
- &:nth-child(3n + 3) { @include tartan-omega; }
70
- }
71
-
72
- @if ($desktop == 6) {
73
- &:nth-child(even) { @include tartan-omega; }
74
- }
75
-
76
- @if ($tablet != "") {
77
- @include tablet {
78
- &:nth-child(n) { @include tartan-no-omega } // Specificity
79
- @include tartan-span-columns($tablet);
80
-
81
- @if ($tablet == 1) {
82
- &:nth-child(12n + 12) { @include tartan-omega; }
83
- }
84
-
85
- @if ($tablet == 2) {
86
- &:nth-child(6n + 6) { @include tartan-omega; }
87
- }
88
-
89
- @if ($tablet == 3) {
90
- &:nth-child(4n + 4) { @include tartan-omega; }
91
- }
92
-
93
- @if ($tablet == 4) {
94
- &:nth-child(3n + 3) { @include tartan-omega; }
95
- }
96
-
97
- @if ($tablet == 6) {
98
- &:nth-child(2n + 2) { @include tartan-omega; }
99
- }
100
- }
101
- }
102
-
103
- @if ($mobile != "") {
104
- @include mobile-landscape {
105
- &:nth-child(n) { @include tartan-no-omega } // Specificity
106
- @include tartan-span-columns($mobile);
107
-
108
- @if ($mobile == 1) {
109
- &:nth-child(12n + 12) { @include tartan-omega; }
110
- }
111
-
112
- @if ($mobile == 2) {
113
- &:nth-child(6n + 6) { @include tartan-omega; }
114
- }
115
-
116
- @if ($mobile == 3) {
117
- &:nth-child(4n + 4) { @include tartan-omega; }
118
- }
119
-
120
- @if ($mobile == 4) {
121
- &:nth-child(3n + 3) { @include tartan-omega; }
122
- }
123
-
124
- @if ($mobile == 6) {
125
- &:nth-child(even) { @include tartan-omega; }
126
- }
127
- }
128
- }
129
- }