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,86 @@
|
|
1
|
+
@mixin triangle ($size, $color, $direction) {
|
2
|
+
height: 0;
|
3
|
+
width: 0;
|
4
|
+
|
5
|
+
$width: nth($size, 1);
|
6
|
+
$height: nth($size, length($size));
|
7
|
+
|
8
|
+
$foreground-color: nth($color, 1);
|
9
|
+
$background-color: transparent !default;
|
10
|
+
@if (length($color) == 2) {
|
11
|
+
$background-color: nth($color, 2);
|
12
|
+
}
|
13
|
+
|
14
|
+
@if ($direction == up) or ($direction == down) or ($direction == right) or ($direction == left) {
|
15
|
+
|
16
|
+
$width: $width / 2;
|
17
|
+
$height: if(length($size) > 1, $height, $height/2);
|
18
|
+
|
19
|
+
@if $direction == up {
|
20
|
+
border-left: $width solid $background-color;
|
21
|
+
border-right: $width solid $background-color;
|
22
|
+
border-bottom: $height solid $foreground-color;
|
23
|
+
|
24
|
+
} @else if $direction == right {
|
25
|
+
border-top: $width solid $background-color;
|
26
|
+
border-bottom: $width solid $background-color;
|
27
|
+
border-left: $height solid $foreground-color;
|
28
|
+
|
29
|
+
} @else if $direction == down {
|
30
|
+
border-left: $width solid $background-color;
|
31
|
+
border-right: $width solid $background-color;
|
32
|
+
border-top: $height solid $foreground-color;
|
33
|
+
|
34
|
+
} @else if $direction == left {
|
35
|
+
border-top: $width solid $background-color;
|
36
|
+
border-bottom: $width solid $background-color;
|
37
|
+
border-right: $height solid $foreground-color;
|
38
|
+
}
|
39
|
+
}
|
40
|
+
|
41
|
+
@else if ($direction == up-right) or ($direction == up-left) {
|
42
|
+
border-top: $height solid $foreground-color;
|
43
|
+
|
44
|
+
@if $direction == up-right {
|
45
|
+
border-left: $width solid $background-color;
|
46
|
+
|
47
|
+
} @else if $direction == up-left {
|
48
|
+
border-right: $width solid $background-color;
|
49
|
+
}
|
50
|
+
}
|
51
|
+
|
52
|
+
@else if ($direction == down-right) or ($direction == down-left) {
|
53
|
+
border-bottom: $height solid $foreground-color;
|
54
|
+
|
55
|
+
@if $direction == down-right {
|
56
|
+
border-left: $width solid $background-color;
|
57
|
+
|
58
|
+
} @else if $direction == down-left {
|
59
|
+
border-right: $width solid $background-color;
|
60
|
+
}
|
61
|
+
}
|
62
|
+
|
63
|
+
@else if ($direction == inset-up) {
|
64
|
+
border-width: $height $width;
|
65
|
+
border-style: solid;
|
66
|
+
border-color: $background-color $background-color $foreground-color;
|
67
|
+
}
|
68
|
+
|
69
|
+
@else if ($direction == inset-down) {
|
70
|
+
border-width: $height $width;
|
71
|
+
border-style: solid;
|
72
|
+
border-color: $foreground-color $background-color $background-color;
|
73
|
+
}
|
74
|
+
|
75
|
+
@else if ($direction == inset-right) {
|
76
|
+
border-width: $width $height;
|
77
|
+
border-style: solid;
|
78
|
+
border-color: $background-color $background-color $background-color $foreground-color;
|
79
|
+
}
|
80
|
+
|
81
|
+
@else if ($direction == inset-left) {
|
82
|
+
border-width: $width $height;
|
83
|
+
border-style: solid;
|
84
|
+
border-color: $background-color $foreground-color $background-color $background-color;
|
85
|
+
}
|
86
|
+
}
|
@@ -0,0 +1,52 @@
|
|
1
|
+
// http://www.w3.org/TR/css3-animations/#the-animation-name-property-
|
2
|
+
// Each of these mixins support comma separated lists of values, which allows different transitions for individual properties to be described in a single style rule. Each value in the list corresponds to the value at that same position in the other properties.
|
3
|
+
|
4
|
+
// Official animation shorthand property.
|
5
|
+
@mixin animation ($animations...) {
|
6
|
+
@include prefixer(animation, $animations, webkit moz spec);
|
7
|
+
}
|
8
|
+
|
9
|
+
// Individual Animation Properties
|
10
|
+
@mixin animation-name ($names...) {
|
11
|
+
@include prefixer(animation-name, $names, webkit moz spec);
|
12
|
+
}
|
13
|
+
|
14
|
+
|
15
|
+
@mixin animation-duration ($times...) {
|
16
|
+
@include prefixer(animation-duration, $times, webkit moz spec);
|
17
|
+
}
|
18
|
+
|
19
|
+
|
20
|
+
@mixin animation-timing-function ($motions...) {
|
21
|
+
// ease | linear | ease-in | ease-out | ease-in-out
|
22
|
+
@include prefixer(animation-timing-function, $motions, webkit moz spec);
|
23
|
+
}
|
24
|
+
|
25
|
+
|
26
|
+
@mixin animation-iteration-count ($values...) {
|
27
|
+
// infinite | <number>
|
28
|
+
@include prefixer(animation-iteration-count, $values, webkit moz spec);
|
29
|
+
}
|
30
|
+
|
31
|
+
|
32
|
+
@mixin animation-direction ($directions...) {
|
33
|
+
// normal | alternate
|
34
|
+
@include prefixer(animation-direction, $directions, webkit moz spec);
|
35
|
+
}
|
36
|
+
|
37
|
+
|
38
|
+
@mixin animation-play-state ($states...) {
|
39
|
+
// running | paused
|
40
|
+
@include prefixer(animation-play-state, $states, webkit moz spec);
|
41
|
+
}
|
42
|
+
|
43
|
+
|
44
|
+
@mixin animation-delay ($times...) {
|
45
|
+
@include prefixer(animation-delay, $times, webkit moz spec);
|
46
|
+
}
|
47
|
+
|
48
|
+
|
49
|
+
@mixin animation-fill-mode ($modes...) {
|
50
|
+
// none | forwards | backwards | both
|
51
|
+
@include prefixer(animation-fill-mode, $modes, webkit moz spec);
|
52
|
+
}
|
@@ -0,0 +1,6 @@
|
|
1
|
+
//************************************************************************//
|
2
|
+
// Backface-visibility mixin
|
3
|
+
//************************************************************************//
|
4
|
+
@mixin backface-visibility($visibility) {
|
5
|
+
@include prefixer(backface-visibility, $visibility, webkit spec);
|
6
|
+
}
|
@@ -0,0 +1,48 @@
|
|
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));
|
@@ -0,0 +1,103 @@
|
|
1
|
+
//************************************************************************//
|
2
|
+
// Background property for adding multiple backgrounds using shorthand
|
3
|
+
// notation.
|
4
|
+
//************************************************************************//
|
5
|
+
|
6
|
+
@mixin background(
|
7
|
+
$background-1 , $background-2: null,
|
8
|
+
$background-3: null, $background-4: null,
|
9
|
+
$background-5: null, $background-6: null,
|
10
|
+
$background-7: null, $background-8: null,
|
11
|
+
$background-9: null, $background-10: null,
|
12
|
+
$fallback: null
|
13
|
+
) {
|
14
|
+
$backgrounds: $background-1, $background-2,
|
15
|
+
$background-3, $background-4,
|
16
|
+
$background-5, $background-6,
|
17
|
+
$background-7, $background-8,
|
18
|
+
$background-9, $background-10;
|
19
|
+
|
20
|
+
$fallback-color: false;
|
21
|
+
@if (type-of($fallback) == color) or ($fallback == "transparent") {
|
22
|
+
$fallback-color: $fallback;
|
23
|
+
}
|
24
|
+
@else {
|
25
|
+
$fallback-color: _extract-background-color($backgrounds);
|
26
|
+
}
|
27
|
+
|
28
|
+
@if $fallback-color {
|
29
|
+
background-color: $fallback-color;
|
30
|
+
}
|
31
|
+
background: _background-add-prefix($backgrounds, webkit);
|
32
|
+
background: _background-add-prefix($backgrounds);
|
33
|
+
}
|
34
|
+
|
35
|
+
@function _extract-background-color($backgrounds) {
|
36
|
+
$final-bg-layer: nth($backgrounds, length($backgrounds));
|
37
|
+
@if type-of($final-bg-layer) == list {
|
38
|
+
@for $i from 1 through length($final-bg-layer) {
|
39
|
+
$value: nth($final-bg-layer, $i);
|
40
|
+
@if type-of($value) == color {
|
41
|
+
@return $value;
|
42
|
+
}
|
43
|
+
}
|
44
|
+
}
|
45
|
+
@return false;
|
46
|
+
}
|
47
|
+
|
48
|
+
@function _background-add-prefix($backgrounds, $vendor: false) {
|
49
|
+
$backgrounds-prefixed: ();
|
50
|
+
|
51
|
+
@for $i from 1 through length($backgrounds) {
|
52
|
+
$shorthand: nth($backgrounds, $i); // Get member for current index
|
53
|
+
$type: type-of($shorthand); // Get type of variable - List (gradient) or String (image)
|
54
|
+
|
55
|
+
// If shorthand is a list (gradient)
|
56
|
+
@if $type == list {
|
57
|
+
$first-member: nth($shorthand, 1); // Get first member of shorthand
|
58
|
+
|
59
|
+
// Linear Gradient
|
60
|
+
@if index(linear radial, nth($first-member, 1)) {
|
61
|
+
$gradient-type: nth($first-member, 1); // linear || radial
|
62
|
+
$gradient-args: false;
|
63
|
+
$gradient-positions: false;
|
64
|
+
$shorthand-start: false;
|
65
|
+
@if type-of($first-member) == list { // Linear gradient plus additional shorthand values - lg(red,orange)repeat,...
|
66
|
+
$gradient-positions: nth($first-member, 2);
|
67
|
+
$gradient-args: nth($first-member, 3);
|
68
|
+
$shorthand-start: 2;
|
69
|
+
}
|
70
|
+
@else { // Linear gradient only - lg(red,orange),...
|
71
|
+
$gradient-positions: nth($shorthand, 2);
|
72
|
+
$gradient-args: nth($shorthand, 3); // Get gradient (red, blue)
|
73
|
+
}
|
74
|
+
|
75
|
+
$gradient-positions: _gradient-positions-parser($gradient-type, $gradient-positions);
|
76
|
+
$gradient: _render-gradients($gradient-positions, $gradient-args, $gradient-type, $vendor);
|
77
|
+
|
78
|
+
// Append any additional shorthand args to gradient
|
79
|
+
@if $shorthand-start {
|
80
|
+
@for $j from $shorthand-start through length($shorthand) {
|
81
|
+
$gradient: join($gradient, nth($shorthand, $j), space);
|
82
|
+
}
|
83
|
+
}
|
84
|
+
$backgrounds-prefixed: append($backgrounds-prefixed, $gradient, comma);
|
85
|
+
}
|
86
|
+
// Image with additional properties
|
87
|
+
@else {
|
88
|
+
$backgrounds-prefixed: append($backgrounds-prefixed, $shorthand, comma);
|
89
|
+
}
|
90
|
+
}
|
91
|
+
// If shorthand is a simple string (color or image)
|
92
|
+
@else if $type == string {
|
93
|
+
$backgrounds-prefixed: join($backgrounds-prefixed, $shorthand, comma);
|
94
|
+
}
|
95
|
+
}
|
96
|
+
@return $backgrounds-prefixed;
|
97
|
+
}
|
98
|
+
|
99
|
+
//Examples:
|
100
|
+
//@include background(linear-gradient(top, orange, red));
|
101
|
+
//@include background(radial-gradient(circle at 40% 40%, orange, red));
|
102
|
+
//@include background(url("/images/a.png") no-repeat, linear-gradient(orange, red));
|
103
|
+
//@include background(url("image.png") center center, linear-gradient(orange, red), url("image.png"));
|
@@ -0,0 +1,56 @@
|
|
1
|
+
@mixin border-image($images) {
|
2
|
+
-webkit-border-image: _border-add-prefix($images, webkit);
|
3
|
+
-moz-border-image: _border-add-prefix($images, moz);
|
4
|
+
-o-border-image: _border-add-prefix($images, o);
|
5
|
+
border-image: _border-add-prefix($images);
|
6
|
+
border-style: solid;
|
7
|
+
}
|
8
|
+
|
9
|
+
@function _border-add-prefix($images, $vendor: false) {
|
10
|
+
$border-image: null;
|
11
|
+
$images-type: type-of(nth($images, 1));
|
12
|
+
$first-var: nth(nth($images, 1), 1); // Get type of Gradient (Linear || radial)
|
13
|
+
|
14
|
+
// If input is a gradient
|
15
|
+
@if $images-type == string {
|
16
|
+
@if ($first-var == "linear") or ($first-var == "radial") {
|
17
|
+
$gradient-type: nth($images, 1); // Get type of gradient (linear || radial)
|
18
|
+
$gradient-pos: nth($images, 2); // Get gradient position
|
19
|
+
$gradient-args: nth($images, 3); // Get actual gradient (red, blue)
|
20
|
+
$gradient-positions: _gradient-positions-parser($gradient-type, $gradient-pos);
|
21
|
+
$border-image: _render-gradients($gradient-positions, $gradient-args, $gradient-type, $vendor);
|
22
|
+
}
|
23
|
+
// If input is a URL
|
24
|
+
@else {
|
25
|
+
$border-image: $images;
|
26
|
+
}
|
27
|
+
}
|
28
|
+
// If input is gradient or url + additional args
|
29
|
+
@else if $images-type == list {
|
30
|
+
$type: type-of(nth($images, 1)); // Get type of variable - List or String
|
31
|
+
|
32
|
+
// If variable is a list - Gradient
|
33
|
+
@if $type == list {
|
34
|
+
$gradient: nth($images, 1);
|
35
|
+
$gradient-type: nth($gradient, 1); // Get type of gradient (linear || radial)
|
36
|
+
$gradient-pos: nth($gradient, 2); // Get gradient position
|
37
|
+
$gradient-args: nth($gradient, 3); // Get actual gradient (red, blue)
|
38
|
+
$gradient-positions: _gradient-positions-parser($gradient-type, $gradient-pos);
|
39
|
+
$border-image: _render-gradients($gradient-positions, $gradient-args, $gradient-type, $vendor);
|
40
|
+
|
41
|
+
@for $i from 2 through length($images) {
|
42
|
+
$border-image: append($border-image, nth($images, $i));
|
43
|
+
}
|
44
|
+
}
|
45
|
+
}
|
46
|
+
@return $border-image;
|
47
|
+
}
|
48
|
+
|
49
|
+
//Examples:
|
50
|
+
// @include border-image(url("image.png"));
|
51
|
+
// @include border-image(url("image.png") 20 stretch);
|
52
|
+
// @include border-image(linear-gradient(45deg, orange, yellow));
|
53
|
+
// @include border-image(linear-gradient(45deg, orange, yellow) stretch);
|
54
|
+
// @include border-image(linear-gradient(45deg, orange, yellow) 20 30 40 50 stretch round);
|
55
|
+
// @include border-image(radial-gradient(top, cover, orange, yellow, orange));
|
56
|
+
|
@@ -0,0 +1,22 @@
|
|
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
|
+
}
|
@@ -0,0 +1,47 @@
|
|
1
|
+
@mixin columns($arg: auto) {
|
2
|
+
// <column-count> || <column-width>
|
3
|
+
@include prefixer(columns, $arg, webkit moz spec);
|
4
|
+
}
|
5
|
+
|
6
|
+
@mixin column-count($int: auto) {
|
7
|
+
// auto || integer
|
8
|
+
@include prefixer(column-count, $int, webkit moz spec);
|
9
|
+
}
|
10
|
+
|
11
|
+
@mixin column-gap($length: normal) {
|
12
|
+
// normal || length
|
13
|
+
@include prefixer(column-gap, $length, webkit moz spec);
|
14
|
+
}
|
15
|
+
|
16
|
+
@mixin column-fill($arg: auto) {
|
17
|
+
// auto || length
|
18
|
+
@include prefixer(column-fill, $arg, webkit moz spec);
|
19
|
+
}
|
20
|
+
|
21
|
+
@mixin column-rule($arg) {
|
22
|
+
// <border-width> || <border-style> || <color>
|
23
|
+
@include prefixer(column-rule, $arg, webkit moz spec);
|
24
|
+
}
|
25
|
+
|
26
|
+
@mixin column-rule-color($color) {
|
27
|
+
@include prefixer(column-rule-color, $color, webkit moz spec);
|
28
|
+
}
|
29
|
+
|
30
|
+
@mixin column-rule-style($style: none) {
|
31
|
+
// none | hidden | dashed | dotted | double | groove | inset | inset | outset | ridge | solid
|
32
|
+
@include prefixer(column-rule-style, $style, webkit moz spec);
|
33
|
+
}
|
34
|
+
|
35
|
+
@mixin column-rule-width ($width: none) {
|
36
|
+
@include prefixer(column-rule-width, $width, webkit moz spec);
|
37
|
+
}
|
38
|
+
|
39
|
+
@mixin column-span($arg: none) {
|
40
|
+
// none || all
|
41
|
+
@include prefixer(column-span, $arg, webkit moz spec);
|
42
|
+
}
|
43
|
+
|
44
|
+
@mixin column-width($length: auto) {
|
45
|
+
// auto || length
|
46
|
+
@include prefixer(column-width, $length, webkit moz spec);
|
47
|
+
}
|