smock 0.1.6 → 0.1.7
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.lock +3 -3
- data/README.md +5 -0
- data/app/assets/stylesheets/includes/_colors.css.sass +16 -0
- data/app/assets/stylesheets/includes/_forms.css.sass +29 -0
- data/app/assets/stylesheets/includes/_grid.css.sass +13 -0
- data/app/assets/stylesheets/includes/_layouts.css.sass +28 -0
- data/app/assets/stylesheets/includes/_mixins.css.sass +66 -0
- data/app/assets/stylesheets/includes/_typography.css.sass +58 -0
- data/app/assets/stylesheets/includes/_typography_settings.sass +22 -0
- data/app/assets/stylesheets/includes/icons.css.sass +149 -0
- data/app/assets/stylesheets/modules/_asset_uploader.css.sass +54 -0
- data/app/assets/stylesheets/modules/_categories.css.sass +32 -0
- data/app/assets/stylesheets/modules/_footer.css.sass +100 -0
- data/app/assets/stylesheets/modules/_header.css.sass +32 -0
- data/app/assets/stylesheets/modules/_hero.css.sass +69 -0
- data/app/assets/stylesheets/modules/_nav.css.sass +19 -0
- data/app/assets/stylesheets/modules/_pagination.css.sass +5 -0
- data/app/assets/stylesheets/modules/_search_filters.css.sass +34 -0
- data/app/assets/stylesheets/modules/_service.css.sass +58 -0
- data/app/assets/stylesheets/modules/_styleguide.css.sass +73 -0
- data/app/assets/stylesheets/modules/_testimonials.css.sass +27 -0
- data/app/assets/stylesheets/modules/form/_credit_card.css.sass +15 -0
- data/app/assets/stylesheets/modules/form/_payment_method.css.sass +28 -0
- data/app/assets/stylesheets/modules/header/_categories.css.sass +40 -0
- data/app/assets/stylesheets/modules/header/_dropdown.css.sass +55 -0
- data/app/assets/stylesheets/modules/header/_nav.css.sass +58 -0
- data/app/assets/stylesheets/modules/header/_search.css.sass +32 -0
- data/app/assets/stylesheets/modules/service/_favorites.css.sass +82 -0
- data/app/assets/stylesheets/smock.sass +181 -0
- data/app/assets/stylesheets/thirdparty/bourbon/_bourbon-deprecated-upcoming.scss +13 -0
- data/app/assets/stylesheets/thirdparty/bourbon/_bourbon.scss +74 -0
- data/app/assets/stylesheets/thirdparty/bourbon/addons/_button.scss +374 -0
- data/app/assets/stylesheets/thirdparty/bourbon/addons/_clearfix.scss +23 -0
- data/app/assets/stylesheets/thirdparty/bourbon/addons/_directional-values.scss +111 -0
- data/app/assets/stylesheets/thirdparty/bourbon/addons/_ellipsis.scss +7 -0
- data/app/assets/stylesheets/thirdparty/bourbon/addons/_font-family.scss +5 -0
- data/app/assets/stylesheets/thirdparty/bourbon/addons/_hide-text.scss +10 -0
- data/app/assets/stylesheets/thirdparty/bourbon/addons/_html5-input-types.scss +110 -0
- data/app/assets/stylesheets/thirdparty/bourbon/addons/_position.scss +32 -0
- data/app/assets/stylesheets/thirdparty/bourbon/addons/_prefixer.scss +45 -0
- data/app/assets/stylesheets/thirdparty/bourbon/addons/_retina-image.scss +31 -0
- data/app/assets/stylesheets/thirdparty/bourbon/addons/_size.scss +44 -0
- data/app/assets/stylesheets/thirdparty/bourbon/addons/_timing-functions.scss +32 -0
- data/app/assets/stylesheets/thirdparty/bourbon/addons/_triangle.scss +86 -0
- data/app/assets/stylesheets/thirdparty/bourbon/addons/_word-wrap.scss +8 -0
- data/app/assets/stylesheets/thirdparty/bourbon/css3/_animation.scss +52 -0
- data/app/assets/stylesheets/thirdparty/bourbon/css3/_appearance.scss +3 -0
- data/app/assets/stylesheets/thirdparty/bourbon/css3/_backface-visibility.scss +6 -0
- data/app/assets/stylesheets/thirdparty/bourbon/css3/_background-image.scss +48 -0
- data/app/assets/stylesheets/thirdparty/bourbon/css3/_background.scss +103 -0
- data/app/assets/stylesheets/thirdparty/bourbon/css3/_border-image.scss +56 -0
- data/app/assets/stylesheets/thirdparty/bourbon/css3/_border-radius.scss +22 -0
- data/app/assets/stylesheets/thirdparty/bourbon/css3/_box-sizing.scss +4 -0
- data/app/assets/stylesheets/thirdparty/bourbon/css3/_calc.scss +4 -0
- data/app/assets/stylesheets/thirdparty/bourbon/css3/_columns.scss +47 -0
- data/app/assets/stylesheets/thirdparty/bourbon/css3/_filter.scss +5 -0
- data/app/assets/stylesheets/thirdparty/bourbon/css3/_flex-box.scss +321 -0
- data/app/assets/stylesheets/thirdparty/bourbon/css3/_font-face.scss +23 -0
- data/app/assets/stylesheets/thirdparty/bourbon/css3/_font-feature-settings.scss +10 -0
- data/app/assets/stylesheets/thirdparty/bourbon/css3/_hidpi-media-query.scss +10 -0
- data/app/assets/stylesheets/thirdparty/bourbon/css3/_hyphens.scss +4 -0
- data/app/assets/stylesheets/thirdparty/bourbon/css3/_image-rendering.scss +14 -0
- data/app/assets/stylesheets/thirdparty/bourbon/css3/_inline-block.scss +8 -0
- data/app/assets/stylesheets/thirdparty/bourbon/css3/_keyframes.scss +35 -0
- data/app/assets/stylesheets/thirdparty/bourbon/css3/_linear-gradient.scss +38 -0
- data/app/assets/stylesheets/thirdparty/bourbon/css3/_perspective.scss +8 -0
- data/app/assets/stylesheets/thirdparty/bourbon/css3/_placeholder.scss +8 -0
- data/app/assets/stylesheets/thirdparty/bourbon/css3/_radial-gradient.scss +39 -0
- data/app/assets/stylesheets/thirdparty/bourbon/css3/_transform.scss +15 -0
- data/app/assets/stylesheets/thirdparty/bourbon/css3/_transition.scss +77 -0
- data/app/assets/stylesheets/thirdparty/bourbon/css3/_user-select.scss +3 -0
- data/app/assets/stylesheets/thirdparty/bourbon/functions/_color-lightness.scss +13 -0
- data/app/assets/stylesheets/thirdparty/bourbon/functions/_flex-grid.scss +39 -0
- data/app/assets/stylesheets/thirdparty/bourbon/functions/_golden-ratio.scss +3 -0
- data/app/assets/stylesheets/thirdparty/bourbon/functions/_grid-width.scss +13 -0
- data/app/assets/stylesheets/thirdparty/bourbon/functions/_linear-gradient.scss +13 -0
- data/app/assets/stylesheets/thirdparty/bourbon/functions/_modular-scale.scss +66 -0
- data/app/assets/stylesheets/thirdparty/bourbon/functions/_px-to-em.scss +13 -0
- data/app/assets/stylesheets/thirdparty/bourbon/functions/_px-to-rem.scss +15 -0
- data/app/assets/stylesheets/thirdparty/bourbon/functions/_radial-gradient.scss +23 -0
- data/app/assets/stylesheets/thirdparty/bourbon/functions/_strip-units.scss +5 -0
- data/app/assets/stylesheets/thirdparty/bourbon/functions/_tint-shade.scss +9 -0
- data/app/assets/stylesheets/thirdparty/bourbon/functions/_transition-property-name.scss +22 -0
- data/app/assets/stylesheets/thirdparty/bourbon/functions/_unpack.scss +17 -0
- data/app/assets/stylesheets/thirdparty/bourbon/helpers/_gradient-positions-parser.scss +13 -0
- data/app/assets/stylesheets/thirdparty/bourbon/helpers/_linear-positions-parser.scss +61 -0
- data/app/assets/stylesheets/thirdparty/bourbon/helpers/_radial-arg-parser.scss +69 -0
- data/app/assets/stylesheets/thirdparty/bourbon/helpers/_radial-positions-parser.scss +18 -0
- data/app/assets/stylesheets/thirdparty/bourbon/helpers/_render-gradients.scss +26 -0
- data/app/assets/stylesheets/thirdparty/bourbon/helpers/_shape-size-stripper.scss +10 -0
- data/app/assets/stylesheets/thirdparty/bourbon/settings/_asset-pipeline.scss +1 -0
- data/app/assets/stylesheets/thirdparty/bourbon/settings/_prefixer.scss +6 -0
- data/app/assets/stylesheets/thirdparty/bourbon/settings/_px-to-em.scss +1 -0
- data/app/assets/stylesheets/thirdparty/flexbox_mixins.scss +395 -0
- data/app/assets/stylesheets/thirdparty/jquery.fancybox.css.erb +274 -0
- data/app/assets/stylesheets/thirdparty/neat/_neat-helpers.scss +7 -0
- data/app/assets/stylesheets/thirdparty/neat/_neat.scss +21 -0
- data/app/assets/stylesheets/thirdparty/neat/functions/_new-breakpoint.scss +16 -0
- data/app/assets/stylesheets/thirdparty/neat/functions/_private.scss +125 -0
- data/app/assets/stylesheets/thirdparty/neat/grid/_fill-parent.scss +7 -0
- data/app/assets/stylesheets/thirdparty/neat/grid/_grid.scss +5 -0
- data/app/assets/stylesheets/thirdparty/neat/grid/_media.scss +38 -0
- data/app/assets/stylesheets/thirdparty/neat/grid/_omega.scss +61 -0
- data/app/assets/stylesheets/thirdparty/neat/grid/_outer-container.scss +8 -0
- data/app/assets/stylesheets/thirdparty/neat/grid/_pad.scss +8 -0
- data/app/assets/stylesheets/thirdparty/neat/grid/_private.scss +43 -0
- data/app/assets/stylesheets/thirdparty/neat/grid/_reset.scss +12 -0
- data/app/assets/stylesheets/thirdparty/neat/grid/_row.scss +17 -0
- data/app/assets/stylesheets/thirdparty/neat/grid/_shift.scss +16 -0
- data/app/assets/stylesheets/thirdparty/neat/grid/_span-columns.scss +43 -0
- data/app/assets/stylesheets/thirdparty/neat/grid/_to-deprecate.scss +57 -0
- data/app/assets/stylesheets/thirdparty/neat/grid/_visual-grid.scss +41 -0
- data/app/assets/stylesheets/thirdparty/neat/settings/_grid.scss +7 -0
- data/app/assets/stylesheets/thirdparty/neat/settings/_visual-grid.scss +5 -0
- data/app/assets/stylesheets/thirdparty/normalize.css +425 -0
- data/app/assets/stylesheets/thirdparty/nprogress.css +81 -0
- data/app/assets/stylesheets/thirdparty/typecsset.scss +352 -0
- data/app/assets/stylesheets/thirdparty/video-js.css +775 -0
- data/smock.gemspec +2 -2
- metadata +121 -5
@@ -0,0 +1,39 @@
|
|
1
|
+
// Requires Sass 3.1+
|
2
|
+
@mixin radial-gradient($G1, $G2,
|
3
|
+
$G3: null, $G4: null,
|
4
|
+
$G5: null, $G6: null,
|
5
|
+
$G7: null, $G8: null,
|
6
|
+
$G9: null, $G10: null,
|
7
|
+
$pos: null,
|
8
|
+
$shape-size: null,
|
9
|
+
$fallback: null) {
|
10
|
+
|
11
|
+
$data: _radial-arg-parser($G1, $G2, $pos, $shape-size);
|
12
|
+
$G1: nth($data, 1);
|
13
|
+
$G2: nth($data, 2);
|
14
|
+
$pos: nth($data, 3);
|
15
|
+
$shape-size: nth($data, 4);
|
16
|
+
|
17
|
+
$full: $G1, $G2, $G3, $G4, $G5, $G6, $G7, $G8, $G9, $G10;
|
18
|
+
|
19
|
+
// Strip deprecated cover/contain for spec
|
20
|
+
$shape-size-spec: _shape-size-stripper($shape-size);
|
21
|
+
|
22
|
+
// Set $G1 as the default fallback color
|
23
|
+
$first-color: nth($full, 1);
|
24
|
+
$fallback-color: nth($first-color, 1);
|
25
|
+
|
26
|
+
@if (type-of($fallback) == color) or ($fallback == "transparent") {
|
27
|
+
$fallback-color: $fallback;
|
28
|
+
}
|
29
|
+
|
30
|
+
// Add Commas and spaces
|
31
|
+
$shape-size: if($shape-size, '#{$shape-size}, ', null);
|
32
|
+
$pos: if($pos, '#{$pos}, ', null);
|
33
|
+
$pos-spec: if($pos, 'at #{$pos}', null);
|
34
|
+
$shape-size-spec: if(($shape-size-spec != ' ') and ($pos == null), '#{$shape-size-spec}, ', '#{$shape-size-spec} ');
|
35
|
+
|
36
|
+
background-color: $fallback-color;
|
37
|
+
background-image: -webkit-radial-gradient(unquote(#{$pos}#{$shape-size}#{$full}));
|
38
|
+
background-image: unquote("radial-gradient(#{$shape-size-spec}#{$pos-spec}#{$full})");
|
39
|
+
}
|
@@ -0,0 +1,15 @@
|
|
1
|
+
@mixin transform($property: none) {
|
2
|
+
// none | <transform-function>
|
3
|
+
@include prefixer(transform, $property, webkit moz ms o spec);
|
4
|
+
}
|
5
|
+
|
6
|
+
@mixin transform-origin($axes: 50%) {
|
7
|
+
// x-axis - left | center | right | length | %
|
8
|
+
// y-axis - top | center | bottom | length | %
|
9
|
+
// z-axis - length
|
10
|
+
@include prefixer(transform-origin, $axes, webkit moz ms o spec);
|
11
|
+
}
|
12
|
+
|
13
|
+
@mixin transform-style ($style: flat) {
|
14
|
+
@include prefixer(transform-style, $style, webkit moz ms o spec);
|
15
|
+
}
|
@@ -0,0 +1,77 @@
|
|
1
|
+
// Shorthand mixin. Supports multiple parentheses-deliminated values for each variable.
|
2
|
+
// Example: @include transition (all 2s ease-in-out);
|
3
|
+
// @include transition (opacity 1s ease-in 2s, width 2s ease-out);
|
4
|
+
// @include transition-property (transform, opacity);
|
5
|
+
|
6
|
+
@mixin transition ($properties...) {
|
7
|
+
// Fix for vendor-prefix transform property
|
8
|
+
$needs-prefixes: false;
|
9
|
+
$webkit: ();
|
10
|
+
$moz: ();
|
11
|
+
$spec: ();
|
12
|
+
|
13
|
+
// Create lists for vendor-prefixed transform
|
14
|
+
@each $list in $properties {
|
15
|
+
@if nth($list, 1) == "transform" {
|
16
|
+
$needs-prefixes: true;
|
17
|
+
$list1: -webkit-transform;
|
18
|
+
$list2: -moz-transform;
|
19
|
+
$list3: ();
|
20
|
+
|
21
|
+
@each $var in $list {
|
22
|
+
$list3: join($list3, $var);
|
23
|
+
|
24
|
+
@if $var != "transform" {
|
25
|
+
$list1: join($list1, $var);
|
26
|
+
$list2: join($list2, $var);
|
27
|
+
}
|
28
|
+
}
|
29
|
+
|
30
|
+
$webkit: append($webkit, $list1);
|
31
|
+
$moz: append($moz, $list2);
|
32
|
+
$spec: append($spec, $list3);
|
33
|
+
}
|
34
|
+
|
35
|
+
// Create lists for non-prefixed transition properties
|
36
|
+
@else {
|
37
|
+
$webkit: append($webkit, $list, comma);
|
38
|
+
$moz: append($moz, $list, comma);
|
39
|
+
$spec: append($spec, $list, comma);
|
40
|
+
}
|
41
|
+
}
|
42
|
+
|
43
|
+
@if $needs-prefixes {
|
44
|
+
-webkit-transition: $webkit;
|
45
|
+
-moz-transition: $moz;
|
46
|
+
transition: $spec;
|
47
|
+
}
|
48
|
+
@else {
|
49
|
+
@if length($properties) >= 1 {
|
50
|
+
@include prefixer(transition, $properties, webkit moz spec);
|
51
|
+
}
|
52
|
+
|
53
|
+
@else {
|
54
|
+
$properties: all 0.15s ease-out 0s;
|
55
|
+
@include prefixer(transition, $properties, webkit moz spec);
|
56
|
+
}
|
57
|
+
}
|
58
|
+
}
|
59
|
+
|
60
|
+
@mixin transition-property ($properties...) {
|
61
|
+
-webkit-transition-property: transition-property-names($properties, 'webkit');
|
62
|
+
-moz-transition-property: transition-property-names($properties, 'moz');
|
63
|
+
transition-property: transition-property-names($properties, false);
|
64
|
+
}
|
65
|
+
|
66
|
+
@mixin transition-duration ($times...) {
|
67
|
+
@include prefixer(transition-duration, $times, webkit moz spec);
|
68
|
+
}
|
69
|
+
|
70
|
+
@mixin transition-timing-function ($motions...) {
|
71
|
+
// ease | linear | ease-in | ease-out | ease-in-out | cubic-bezier()
|
72
|
+
@include prefixer(transition-timing-function, $motions, webkit moz spec);
|
73
|
+
}
|
74
|
+
|
75
|
+
@mixin transition-delay ($times...) {
|
76
|
+
@include prefixer(transition-delay, $times, webkit moz spec);
|
77
|
+
}
|
@@ -0,0 +1,13 @@
|
|
1
|
+
// Programatically determines whether a color is light or dark
|
2
|
+
// Returns a boolean
|
3
|
+
// More details here http://robots.thoughtbot.com/closer-look-color-lightness
|
4
|
+
|
5
|
+
@function is-light($hex-color) {
|
6
|
+
$-local-red: red(rgba($hex-color, 1.0));
|
7
|
+
$-local-green: green(rgba($hex-color, 1.0));
|
8
|
+
$-local-blue: blue(rgba($hex-color, 1.0));
|
9
|
+
|
10
|
+
$-local-lightness: ($-local-red * 0.2126 + $-local-green * 0.7152 + $-local-blue * 0.0722) / 255;
|
11
|
+
|
12
|
+
@return $-local-lightness > .6;
|
13
|
+
}
|
@@ -0,0 +1,39 @@
|
|
1
|
+
// Flexible grid
|
2
|
+
@function flex-grid($columns, $container-columns: $fg-max-columns) {
|
3
|
+
$width: $columns * $fg-column + ($columns - 1) * $fg-gutter;
|
4
|
+
$container-width: $container-columns * $fg-column + ($container-columns - 1) * $fg-gutter;
|
5
|
+
@return percentage($width / $container-width);
|
6
|
+
}
|
7
|
+
|
8
|
+
// Flexible gutter
|
9
|
+
@function flex-gutter($container-columns: $fg-max-columns, $gutter: $fg-gutter) {
|
10
|
+
$container-width: $container-columns * $fg-column + ($container-columns - 1) * $fg-gutter;
|
11
|
+
@return percentage($gutter / $container-width);
|
12
|
+
}
|
13
|
+
|
14
|
+
// The $fg-column, $fg-gutter and $fg-max-columns variables must be defined in your base stylesheet to properly use the flex-grid function.
|
15
|
+
// This function takes the fluid grid equation (target / context = result) and uses columns to help define each.
|
16
|
+
//
|
17
|
+
// The calculation presumes that your column structure will be missing the last gutter:
|
18
|
+
//
|
19
|
+
// -- column -- gutter -- column -- gutter -- column
|
20
|
+
//
|
21
|
+
// $fg-column: 60px; // Column Width
|
22
|
+
// $fg-gutter: 25px; // Gutter Width
|
23
|
+
// $fg-max-columns: 12; // Total Columns For Main Container
|
24
|
+
//
|
25
|
+
// div {
|
26
|
+
// width: flex-grid(4); // returns (315px / 995px) = 31.65829%;
|
27
|
+
// margin-left: flex-gutter(); // returns (25px / 995px) = 2.51256%;
|
28
|
+
//
|
29
|
+
// p {
|
30
|
+
// width: flex-grid(2, 4); // returns (145px / 315px) = 46.031746%;
|
31
|
+
// float: left;
|
32
|
+
// margin: flex-gutter(4); // returns (25px / 315px) = 7.936508%;
|
33
|
+
// }
|
34
|
+
//
|
35
|
+
// blockquote {
|
36
|
+
// float: left;
|
37
|
+
// width: flex-grid(2, 4); // returns (145px / 315px) = 46.031746%;
|
38
|
+
// }
|
39
|
+
// }
|
@@ -0,0 +1,13 @@
|
|
1
|
+
@function grid-width($n) {
|
2
|
+
@return $n * $gw-column + ($n - 1) * $gw-gutter;
|
3
|
+
}
|
4
|
+
|
5
|
+
// The $gw-column and $gw-gutter variables must be defined in your base stylesheet to properly use the grid-width function.
|
6
|
+
//
|
7
|
+
// $gw-column: 100px; // Column Width
|
8
|
+
// $gw-gutter: 40px; // Gutter Width
|
9
|
+
//
|
10
|
+
// div {
|
11
|
+
// width: grid-width(4); // returns 520px;
|
12
|
+
// margin-left: $gw-gutter; // returns 40px;
|
13
|
+
// }
|
@@ -0,0 +1,13 @@
|
|
1
|
+
@function linear-gradient($pos, $gradients...) {
|
2
|
+
$type: linear;
|
3
|
+
$pos-type: type-of(nth($pos, 1));
|
4
|
+
|
5
|
+
// if $pos doesn't exist, fix $gradient
|
6
|
+
@if ($pos-type == color) or (nth($pos, 1) == "transparent") {
|
7
|
+
$gradients: zip($pos $gradients);
|
8
|
+
$pos: false;
|
9
|
+
}
|
10
|
+
|
11
|
+
$type-gradient: $type, $pos, $gradients;
|
12
|
+
@return $type-gradient;
|
13
|
+
}
|
@@ -0,0 +1,66 @@
|
|
1
|
+
// Scaling Variables
|
2
|
+
$golden: 1.618;
|
3
|
+
$minor-second: 1.067;
|
4
|
+
$major-second: 1.125;
|
5
|
+
$minor-third: 1.2;
|
6
|
+
$major-third: 1.25;
|
7
|
+
$perfect-fourth: 1.333;
|
8
|
+
$augmented-fourth: 1.414;
|
9
|
+
$perfect-fifth: 1.5;
|
10
|
+
$minor-sixth: 1.6;
|
11
|
+
$major-sixth: 1.667;
|
12
|
+
$minor-seventh: 1.778;
|
13
|
+
$major-seventh: 1.875;
|
14
|
+
$octave: 2;
|
15
|
+
$major-tenth: 2.5;
|
16
|
+
$major-eleventh: 2.667;
|
17
|
+
$major-twelfth: 3;
|
18
|
+
$double-octave: 4;
|
19
|
+
|
20
|
+
@function modular-scale($value, $increment, $ratio) {
|
21
|
+
$v1: nth($value, 1);
|
22
|
+
$v2: nth($value, length($value));
|
23
|
+
$value: $v1;
|
24
|
+
|
25
|
+
// scale $v2 to just above $v1
|
26
|
+
@while $v2 > $v1 {
|
27
|
+
$v2: ($v2 / $ratio); // will be off-by-1
|
28
|
+
}
|
29
|
+
@while $v2 < $v1 {
|
30
|
+
$v2: ($v2 * $ratio); // will fix off-by-1
|
31
|
+
}
|
32
|
+
|
33
|
+
// check AFTER scaling $v2 to prevent double-counting corner-case
|
34
|
+
$double-stranded: $v2 > $v1;
|
35
|
+
|
36
|
+
@if $increment > 0 {
|
37
|
+
@for $i from 1 through $increment {
|
38
|
+
@if $double-stranded and ($v1 * $ratio) > $v2 {
|
39
|
+
$value: $v2;
|
40
|
+
$v2: ($v2 * $ratio);
|
41
|
+
} @else {
|
42
|
+
$v1: ($v1 * $ratio);
|
43
|
+
$value: $v1;
|
44
|
+
}
|
45
|
+
}
|
46
|
+
}
|
47
|
+
|
48
|
+
@if $increment < 0 {
|
49
|
+
// adjust $v2 to just below $v1
|
50
|
+
@if $double-stranded {
|
51
|
+
$v2: ($v2 / $ratio);
|
52
|
+
}
|
53
|
+
|
54
|
+
@for $i from $increment through -1 {
|
55
|
+
@if $double-stranded and ($v1 / $ratio) < $v2 {
|
56
|
+
$value: $v2;
|
57
|
+
$v2: ($v2 / $ratio);
|
58
|
+
} @else {
|
59
|
+
$v1: ($v1 / $ratio);
|
60
|
+
$value: $v1;
|
61
|
+
}
|
62
|
+
}
|
63
|
+
}
|
64
|
+
|
65
|
+
@return $value;
|
66
|
+
}
|
@@ -0,0 +1,13 @@
|
|
1
|
+
// Convert pixels to ems
|
2
|
+
// eg. for a relational value of 12px write em(12) when the parent is 16px
|
3
|
+
// if the parent is another value say 24px write em(12, 24)
|
4
|
+
|
5
|
+
@function em($pxval, $base: $em-base) {
|
6
|
+
@if not unitless($pxval) {
|
7
|
+
$pxval: strip-units($pxval);
|
8
|
+
}
|
9
|
+
@if not unitless($base) {
|
10
|
+
$base: strip-units($base);
|
11
|
+
}
|
12
|
+
@return ($pxval / $base) * 1em;
|
13
|
+
}
|
@@ -0,0 +1,15 @@
|
|
1
|
+
// Convert pixels to rems
|
2
|
+
// eg. for a relational value of 12px write rem(12)
|
3
|
+
// Assumes $em-base is the font-size of <html>
|
4
|
+
|
5
|
+
@function rem($pxval) {
|
6
|
+
@if not unitless($pxval) {
|
7
|
+
$pxval: strip-units($pxval);
|
8
|
+
}
|
9
|
+
|
10
|
+
$base: $em-base;
|
11
|
+
@if not unitless($base) {
|
12
|
+
$base: strip-units($base);
|
13
|
+
}
|
14
|
+
@return ($pxval / $base) * 1rem;
|
15
|
+
}
|
@@ -0,0 +1,23 @@
|
|
1
|
+
// This function is required and used by the background-image mixin.
|
2
|
+
@function radial-gradient($G1, $G2,
|
3
|
+
$G3: null, $G4: null,
|
4
|
+
$G5: null, $G6: null,
|
5
|
+
$G7: null, $G8: null,
|
6
|
+
$G9: null, $G10: null,
|
7
|
+
$pos: null,
|
8
|
+
$shape-size: null) {
|
9
|
+
|
10
|
+
$data: _radial-arg-parser($G1, $G2, $pos, $shape-size);
|
11
|
+
$G1: nth($data, 1);
|
12
|
+
$G2: nth($data, 2);
|
13
|
+
$pos: nth($data, 3);
|
14
|
+
$shape-size: nth($data, 4);
|
15
|
+
|
16
|
+
$type: radial;
|
17
|
+
$gradient: $G1, $G2, $G3, $G4, $G5, $G6, $G7, $G8, $G9, $G10;
|
18
|
+
|
19
|
+
$type-gradient: $type, $shape-size $pos, $gradient;
|
20
|
+
@return $type-gradient;
|
21
|
+
}
|
22
|
+
|
23
|
+
|
@@ -0,0 +1,22 @@
|
|
1
|
+
// Return vendor-prefixed property names if appropriate
|
2
|
+
// Example: transition-property-names((transform, color, background), moz) -> -moz-transform, color, background
|
3
|
+
//************************************************************************//
|
4
|
+
@function transition-property-names($props, $vendor: false) {
|
5
|
+
$new-props: ();
|
6
|
+
|
7
|
+
@each $prop in $props {
|
8
|
+
$new-props: append($new-props, transition-property-name($prop, $vendor), comma);
|
9
|
+
}
|
10
|
+
|
11
|
+
@return $new-props;
|
12
|
+
}
|
13
|
+
|
14
|
+
@function transition-property-name($prop, $vendor: false) {
|
15
|
+
// put other properties that need to be prefixed here aswell
|
16
|
+
@if $vendor and $prop == transform {
|
17
|
+
@return unquote('-'+$vendor+'-'+$prop);
|
18
|
+
}
|
19
|
+
@else {
|
20
|
+
@return $prop;
|
21
|
+
}
|
22
|
+
}
|
@@ -0,0 +1,17 @@
|
|
1
|
+
// Convert shorthand to the 4-value syntax
|
2
|
+
|
3
|
+
@function unpack($shorthand) {
|
4
|
+
@if length($shorthand) == 1 {
|
5
|
+
@return nth($shorthand, 1) nth($shorthand, 1) nth($shorthand, 1) nth($shorthand, 1);
|
6
|
+
}
|
7
|
+
@else if length($shorthand) == 2 {
|
8
|
+
@return nth($shorthand, 1) nth($shorthand, 2) nth($shorthand, 1) nth($shorthand, 2);
|
9
|
+
}
|
10
|
+
@else if length($shorthand) == 3 {
|
11
|
+
@return nth($shorthand, 1) nth($shorthand, 2) nth($shorthand, 3) nth($shorthand, 2);
|
12
|
+
}
|
13
|
+
@else {
|
14
|
+
@return $shorthand;
|
15
|
+
}
|
16
|
+
}
|
17
|
+
|
@@ -0,0 +1,13 @@
|
|
1
|
+
@function _gradient-positions-parser($gradient-type, $gradient-positions) {
|
2
|
+
@if $gradient-positions
|
3
|
+
and ($gradient-type == linear)
|
4
|
+
and (type-of($gradient-positions) != color) {
|
5
|
+
$gradient-positions: _linear-positions-parser($gradient-positions);
|
6
|
+
}
|
7
|
+
@else if $gradient-positions
|
8
|
+
and ($gradient-type == radial)
|
9
|
+
and (type-of($gradient-positions) != color) {
|
10
|
+
$gradient-positions: _radial-positions-parser($gradient-positions);
|
11
|
+
}
|
12
|
+
@return $gradient-positions;
|
13
|
+
}
|