MOBILE-3670 styles: Reindent mixin file
This commit is contained in:
		
							parent
							
								
									c8899dde03
								
							
						
					
					
						commit
						4925e47ab9
					
				| @ -287,353 +287,353 @@ | ||||
| 
 | ||||
|     // $root: #{&}; | ||||
|     // @at-root [dir] { | ||||
|         //   #{$root} { | ||||
|             //     @content; | ||||
|             //   } | ||||
|             // } | ||||
|         } | ||||
|     //   #{$root} { | ||||
|     //     @content; | ||||
|     //   } | ||||
|     // } | ||||
| } | ||||
| 
 | ||||
|         @mixin rtl() { | ||||
|             $root: #{&}; | ||||
| @mixin rtl() { | ||||
|     $root: #{&}; | ||||
| 
 | ||||
|             @at-root [dir=rtl] { | ||||
|                 #{$root} { | ||||
|                     @content; | ||||
|                 } | ||||
|             } | ||||
|         } | ||||
| 
 | ||||
|         @mixin ltr() { | ||||
|     @at-root [dir=rtl] { | ||||
|         #{$root} { | ||||
|             @content; | ||||
|         } | ||||
|     } | ||||
| } | ||||
| 
 | ||||
| @mixin ltr() { | ||||
|     @content; | ||||
| } | ||||
| 
 | ||||
| 
 | ||||
|         // SVG Background Image Mixin | ||||
|         // @param {string} $svg | ||||
|         // ---------------------------------------------------------- | ||||
|         @mixin svg-background-image($svg, $flip-rtl: false) { | ||||
|             $url: url-encode($svg); | ||||
|             $viewBox: str-split(str-extract($svg, "viewBox='", "'"), " "); | ||||
| // SVG Background Image Mixin | ||||
| // @param {string} $svg | ||||
| // ---------------------------------------------------------- | ||||
| @mixin svg-background-image($svg, $flip-rtl: false) { | ||||
|     $url: url-encode($svg); | ||||
|     $viewBox: str-split(str-extract($svg, "viewBox='", "'"), " "); | ||||
| 
 | ||||
|             @if $flip-rtl != true or $viewBox == null { | ||||
|                 @include multi-dir() { | ||||
|                     background-image: url("data:image/svg+xml;charset=utf-8,#{$url}"); | ||||
|                 } | ||||
|             } @else { | ||||
|                 $transform: "transform='translate(#{nth($viewBox, 3)}, 0) scale(-1, 1)'"; | ||||
|                 $flipped-url: $svg; | ||||
|                 $flipped-url: str-replace($flipped-url, "<path", "<path #{$transform}"); | ||||
|                 $flipped-url: str-replace($flipped-url, "<line", "<line #{$transform}"); | ||||
|                 $flipped-url: str-replace($flipped-url, "<polygon", "<polygon #{$transform}"); | ||||
|                 $flipped-url: url-encode($flipped-url); | ||||
| 
 | ||||
|                 @include ltr () { | ||||
|                     background-image: url("data:image/svg+xml;charset=utf-8,#{$url}"); | ||||
|                 } | ||||
|                 @include rtl() { | ||||
|                     background-image: url("data:image/svg+xml;charset=utf-8,#{$flipped-url}"); | ||||
|                 } | ||||
|             } | ||||
|     @if $flip-rtl != true or $viewBox == null { | ||||
|         @include multi-dir() { | ||||
|             background-image: url("data:image/svg+xml;charset=utf-8,#{$url}"); | ||||
|         } | ||||
|     } @else { | ||||
|         $transform: "transform='translate(#{nth($viewBox, 3)}, 0) scale(-1, 1)'"; | ||||
|         $flipped-url: $svg; | ||||
|         $flipped-url: str-replace($flipped-url, "<path", "<path #{$transform}"); | ||||
|         $flipped-url: str-replace($flipped-url, "<line", "<line #{$transform}"); | ||||
|         $flipped-url: str-replace($flipped-url, "<polygon", "<polygon #{$transform}"); | ||||
|         $flipped-url: url-encode($flipped-url); | ||||
| 
 | ||||
|         // Add property horizontal | ||||
|         // @param {string} $start | ||||
|         // @param {string} $end | ||||
|         // ---------------------------------------------------------- | ||||
|         @mixin property-horizontal($prop, $start, $end: $start) { | ||||
|             @if $start == 0 and $end == 0 { | ||||
|                 #{$prop}-left: $start; | ||||
|                 #{$prop}-right: $end; | ||||
|         @include ltr () { | ||||
|             background-image: url("data:image/svg+xml;charset=utf-8,#{$url}"); | ||||
|         } | ||||
|         @include rtl() { | ||||
|             background-image: url("data:image/svg+xml;charset=utf-8,#{$flipped-url}"); | ||||
|         } | ||||
|     } | ||||
| } | ||||
| 
 | ||||
|             } @else { | ||||
|                 #{$prop}-left: $start; | ||||
|                 #{$prop}-right: $end; | ||||
| // Add property horizontal | ||||
| // @param {string} $start | ||||
| // @param {string} $end | ||||
| // ---------------------------------------------------------- | ||||
| @mixin property-horizontal($prop, $start, $end: $start) { | ||||
|     @if $start == 0 and $end == 0 { | ||||
|         #{$prop}-left: $start; | ||||
|         #{$prop}-right: $end; | ||||
| 
 | ||||
|                 @at-root { | ||||
|                     @supports ((margin-inline-start: 0) or (-webkit-margin-start: 0)) { | ||||
|                         & { | ||||
|                             @if $start != null { | ||||
|                                 #{$prop}-left: unset; | ||||
|                             } | ||||
|                             @if $end != null { | ||||
|                                 #{$prop}-right: unset; | ||||
|                             } | ||||
|     } @else { | ||||
|         #{$prop}-left: $start; | ||||
|         #{$prop}-right: $end; | ||||
| 
 | ||||
|                             -webkit-#{$prop}-start: $start; | ||||
|                             #{$prop}-inline-start: $start; | ||||
|                             -webkit-#{$prop}-end: $end; | ||||
|                             #{$prop}-inline-end: $end; | ||||
|                         } | ||||
|         @at-root { | ||||
|             @supports ((margin-inline-start: 0) or (-webkit-margin-start: 0)) { | ||||
|                 & { | ||||
|                     @if $start != null { | ||||
|                         #{$prop}-left: unset; | ||||
|                     } | ||||
|                 } | ||||
|             } | ||||
|         } | ||||
| 
 | ||||
|         // Add property for all directions | ||||
|         // @param {string} $prop | ||||
|         // @param {string} $top | ||||
|         // @param {string} $end | ||||
|         // @param {string} $bottom | ||||
|         // @param {string} $start | ||||
|         // @param {boolean} $content include content or use default | ||||
|         // ---------------------------------------------------------- | ||||
|         @mixin property($prop, $top, $end: $top, $bottom: $top, $start: $end) { | ||||
|             @include property-horizontal($prop, $start, $end); | ||||
|             #{$prop}-top: $top; | ||||
|             #{$prop}-bottom: $bottom; | ||||
|         } | ||||
| 
 | ||||
|         // Add padding horizontal | ||||
|         // @param {string} $start | ||||
|         // @param {string} $end | ||||
|         // ---------------------------------------------------------- | ||||
|         @mixin padding-horizontal($start, $end: $start) { | ||||
|             @include property-horizontal(padding, $start, $end); | ||||
|         } | ||||
| 
 | ||||
|         // Add padding for all directions | ||||
|         // @param {string} $top | ||||
|         // @param {string} $end | ||||
|         // @param {string} $bottom | ||||
|         // @param {string} $start | ||||
|         // ---------------------------------------------------------- | ||||
|         @mixin padding($top, $end: $top, $bottom: $top, $start: $end) { | ||||
|             @include property(padding, $top, $end, $bottom, $start); | ||||
|         } | ||||
| 
 | ||||
|         // Add margin horizontal | ||||
|         // @param {string} $start | ||||
|         // @param {string} $end | ||||
|         // ---------------------------------------------------------- | ||||
|         @mixin margin-horizontal($start, $end: $start) { | ||||
|             @include property-horizontal(margin, $start, $end); | ||||
|         } | ||||
| 
 | ||||
|         // Add margin for all directions | ||||
|         // @param {string} $top | ||||
|         // @param {string} $end | ||||
|         // @param {string} $bottom | ||||
|         // @param {string} $start | ||||
|         // ---------------------------------------------------------- | ||||
|         @mixin margin($top, $end: $top, $bottom: $top, $start: $end) { | ||||
|             @include property(margin, $top, $end, $bottom, $start); | ||||
|         } | ||||
| 
 | ||||
|         // Add position horizontal | ||||
|         // @param {string} $start - amount to position start | ||||
|         // @param {string} $end - amount to left: 0; end | ||||
|         // ---------------------------------------------------------- | ||||
|         @mixin position-horizontal($start: null, $end: null) { | ||||
|             @if $start == $end { | ||||
|                 @include multi-dir() { | ||||
|                     left: $start; | ||||
|                     right: $end; | ||||
|                 } | ||||
|             } @else { | ||||
|                 @include ltr() { | ||||
|                     left: $start; | ||||
|                     right: $end; | ||||
|                 } | ||||
|                 @include rtl() { | ||||
|                     left: unset; | ||||
|                     right: unset; | ||||
| 
 | ||||
|                     left: $end; | ||||
|                     right: $start; | ||||
|                 } | ||||
|             } | ||||
|         } | ||||
| 
 | ||||
|         // Add position for all directions | ||||
|         // @param {string} $top | ||||
|         // @param {string} $end | ||||
|         // @param {string} $bottom | ||||
|         // @param {string} $start | ||||
|         // ---------------------------------------------------------- | ||||
|         @mixin position($top: null, $end: null, $bottom: null, $start: null) { | ||||
|             @include position-horizontal($start, $end); | ||||
|             top: $top; | ||||
|             bottom: $bottom; | ||||
|         } | ||||
| 
 | ||||
|         // Add border for all directions | ||||
|         // @param {string} $top | ||||
|         // @param {string} $end | ||||
|         // @param {string} $bottom | ||||
|         // @param {string} $start | ||||
|         // ---------------------------------------------------------- | ||||
|         @mixin border($top, $end: $top, $bottom: $top, $start: $end) { | ||||
|             @include property(border, $top, $end, $bottom, $start); | ||||
|         } | ||||
| 
 | ||||
|         // Add border radius for all directions | ||||
|         // @param {string} $top-start | ||||
|         // @param {string} $top-end | ||||
|         // @param {string} $bottom-end | ||||
|         // @param {string} $bottom-start | ||||
|         // ---------------------------------------------------------- | ||||
|         @mixin border-radius($top-start, $top-end: $top-start, $bottom-end: $top-start, $bottom-start: $top-end) { | ||||
|             @if $top-start == $top-end and $top-start == $bottom-end and $top-start == $bottom-start { | ||||
|                 @include multi-dir() { | ||||
|                     border-radius: $top-start; | ||||
|                 } | ||||
|             } @else { | ||||
|                 @include ltr() { | ||||
|                     border-top-left-radius: $top-start; | ||||
|                     border-top-right-radius: $top-end; | ||||
|                     border-bottom-right-radius: $bottom-end; | ||||
|                     border-bottom-left-radius: $bottom-start; | ||||
|                 } | ||||
| 
 | ||||
|                 @include rtl() { | ||||
|                     border-top-left-radius: $top-end; | ||||
|                     border-top-right-radius: $top-start; | ||||
|                     border-bottom-right-radius: $bottom-start; | ||||
|                     border-bottom-left-radius: $bottom-end; | ||||
|                 } | ||||
|             } | ||||
|         } | ||||
| 
 | ||||
|         // Add direction for all directions | ||||
|         // @param {string} $dir - Direction on LTR | ||||
|         @mixin direction($dir) { | ||||
|             $other-dir: null; | ||||
| 
 | ||||
|             @if $dir == ltr { | ||||
|                 $other-dir: rtl; | ||||
|             } @else { | ||||
|                 $other-dir: ltr; | ||||
|             } | ||||
| 
 | ||||
|             @include ltr() { | ||||
|                 direction: $dir; | ||||
|             } | ||||
|             @include rtl() { | ||||
|                 direction: $other-dir; | ||||
|             } | ||||
|         } | ||||
| 
 | ||||
|         // Add float for all directions | ||||
|         // @param {string} $side | ||||
|         // @param {string} $decorator - !important | ||||
|         @mixin float($side, $decorator: null) { | ||||
|             @if $side == start { | ||||
|                 @include ltr() { | ||||
|                     float: left $decorator; | ||||
|                 } | ||||
|                 @include rtl() { | ||||
|                     float: right $decorator; | ||||
|                 } | ||||
|             } @else if $side == end { | ||||
|                 @include ltr() { | ||||
|                     float: right $decorator; | ||||
|                 } | ||||
|                 @include rtl() { | ||||
|                     float: left $decorator; | ||||
|                 } | ||||
|             } @else { | ||||
|                 @include multi-dir() { | ||||
|                     float: $side $decorator; | ||||
|                 } | ||||
|             } | ||||
|         } | ||||
| 
 | ||||
|         @mixin background-position($horizontal, $horizontal-amount: null, $vertical: null, $vertical-amount: null) { | ||||
|             @if $horizontal == start or $horizontal == end { | ||||
|                 $horizontal-ltr: null; | ||||
|                 $horizontal-rtl: null; | ||||
|                 @if $horizontal == start { | ||||
|                     $horizontal-ltr: left; | ||||
|                     $horizontal-rtl: right; | ||||
|                 } @else { | ||||
|                     $horizontal-ltr: right; | ||||
|                     $horizontal-rtl: left; | ||||
|                 } | ||||
| 
 | ||||
|                 @include ltr() { | ||||
|                     background-position: $horizontal-ltr $horizontal-amount $vertical $vertical-amount; | ||||
|                 } | ||||
|                 @include rtl() { | ||||
|                     background-position: $horizontal-rtl $horizontal-amount $vertical $vertical-amount; | ||||
|                 } | ||||
|             } @else { | ||||
|                 @include multi-dir() { | ||||
|                     background-position: $horizontal $horizontal-amount $vertical $vertical-amount; | ||||
|                 } | ||||
|             } | ||||
|         } | ||||
| 
 | ||||
|         @mixin transform-origin($x-axis, $y-axis: null) { | ||||
|             @if $x-axis == start { | ||||
|                 @include ltr() { | ||||
|                     transform-origin: left $y-axis; | ||||
|                 } | ||||
|                 @include rtl() { | ||||
|                     transform-origin: right $y-axis; | ||||
|                 } | ||||
|             } @else if $x-axis == end { | ||||
|                 @include ltr() { | ||||
|                     transform-origin: right $y-axis; | ||||
|                 } | ||||
|                 @include rtl() { | ||||
|                     transform-origin: left $y-axis; | ||||
|                 } | ||||
|             } @else if $x-axis == left or $x-axis == right { | ||||
|                 @include multi-dir() { | ||||
|                     transform-origin: $x-axis $y-axis; | ||||
|                 } | ||||
|             } @else { | ||||
|                 @include ltr() { | ||||
|                     transform-origin: $x-axis $y-axis; | ||||
|                 } | ||||
|                 @include rtl() { | ||||
|                     transform-origin: calc(100% - #{$x-axis}) $y-axis; | ||||
|                 } | ||||
|             } | ||||
|         } | ||||
| 
 | ||||
|         // Add transform for all directions | ||||
|         // @param {string} $transforms - comma separated list of transforms | ||||
|         @mixin transform($transforms...) { | ||||
|             $extra: null; | ||||
| 
 | ||||
|             $x: null; | ||||
|             $ltr-translate: null; | ||||
|             $rtl-translate: null; | ||||
| 
 | ||||
|             @each $transform in $transforms { | ||||
|                 @if (str-index($transform, translate3d)) { | ||||
|                     $transform: str-replace($transform, 'translate3d('); | ||||
|                     $transform: str-replace($transform, ')'); | ||||
| 
 | ||||
|                     $coordinates: str-split($transform, ','); | ||||
| 
 | ||||
|                     $x: nth($coordinates, 1); | ||||
|                     $y: nth($coordinates, 2); | ||||
|                     $z: nth($coordinates, 3); | ||||
| 
 | ||||
|                     $ltr-translate: translate3d($x, $y, $z); | ||||
|                     $rtl-translate: translate3d(calc(-1 * #{$x}), $y, $z); | ||||
|                 } @else { | ||||
|                     @if $extra == null { | ||||
|                         $extra: $transform; | ||||
|                     } @else { | ||||
|                         $extra: $extra $transform; | ||||
|                     @if $end != null { | ||||
|                         #{$prop}-right: unset; | ||||
|                     } | ||||
|                 } | ||||
|             } | ||||
| 
 | ||||
|             @if $x == '0' or $x == null { | ||||
|                 @include multi-dir() { | ||||
|                     transform: $ltr-translate $extra; | ||||
|                 } | ||||
|             } @else { | ||||
|                 @include ltr() { | ||||
|                     transform: $ltr-translate $extra; | ||||
|                 } | ||||
| 
 | ||||
|                 @include rtl() { | ||||
|                     transform: $rtl-translate $extra; | ||||
|                     -webkit-#{$prop}-start: $start; | ||||
|                     #{$prop}-inline-start: $start; | ||||
|                     -webkit-#{$prop}-end: $end; | ||||
|                     #{$prop}-inline-end: $end; | ||||
|                 } | ||||
|             } | ||||
|         } | ||||
|     } | ||||
| } | ||||
| 
 | ||||
| // Add property for all directions | ||||
| // @param {string} $prop | ||||
| // @param {string} $top | ||||
| // @param {string} $end | ||||
| // @param {string} $bottom | ||||
| // @param {string} $start | ||||
| // @param {boolean} $content include content or use default | ||||
| // ---------------------------------------------------------- | ||||
| @mixin property($prop, $top, $end: $top, $bottom: $top, $start: $end) { | ||||
|     @include property-horizontal($prop, $start, $end); | ||||
|     #{$prop}-top: $top; | ||||
|     #{$prop}-bottom: $bottom; | ||||
| } | ||||
| 
 | ||||
| // Add padding horizontal | ||||
| // @param {string} $start | ||||
| // @param {string} $end | ||||
| // ---------------------------------------------------------- | ||||
| @mixin padding-horizontal($start, $end: $start) { | ||||
|     @include property-horizontal(padding, $start, $end); | ||||
| } | ||||
| 
 | ||||
| // Add padding for all directions | ||||
| // @param {string} $top | ||||
| // @param {string} $end | ||||
| // @param {string} $bottom | ||||
| // @param {string} $start | ||||
| // ---------------------------------------------------------- | ||||
| @mixin padding($top, $end: $top, $bottom: $top, $start: $end) { | ||||
|     @include property(padding, $top, $end, $bottom, $start); | ||||
| } | ||||
| 
 | ||||
| // Add margin horizontal | ||||
| // @param {string} $start | ||||
| // @param {string} $end | ||||
| // ---------------------------------------------------------- | ||||
| @mixin margin-horizontal($start, $end: $start) { | ||||
|     @include property-horizontal(margin, $start, $end); | ||||
| } | ||||
| 
 | ||||
| // Add margin for all directions | ||||
| // @param {string} $top | ||||
| // @param {string} $end | ||||
| // @param {string} $bottom | ||||
| // @param {string} $start | ||||
| // ---------------------------------------------------------- | ||||
| @mixin margin($top, $end: $top, $bottom: $top, $start: $end) { | ||||
|     @include property(margin, $top, $end, $bottom, $start); | ||||
| } | ||||
| 
 | ||||
| // Add position horizontal | ||||
| // @param {string} $start - amount to position start | ||||
| // @param {string} $end - amount to left: 0; end | ||||
| // ---------------------------------------------------------- | ||||
| @mixin position-horizontal($start: null, $end: null) { | ||||
|     @if $start == $end { | ||||
|         @include multi-dir() { | ||||
|             left: $start; | ||||
|             right: $end; | ||||
|         } | ||||
|     } @else { | ||||
|         @include ltr() { | ||||
|             left: $start; | ||||
|             right: $end; | ||||
|         } | ||||
|         @include rtl() { | ||||
|             left: unset; | ||||
|             right: unset; | ||||
| 
 | ||||
|             left: $end; | ||||
|             right: $start; | ||||
|         } | ||||
|     } | ||||
| } | ||||
| 
 | ||||
| // Add position for all directions | ||||
| // @param {string} $top | ||||
| // @param {string} $end | ||||
| // @param {string} $bottom | ||||
| // @param {string} $start | ||||
| // ---------------------------------------------------------- | ||||
| @mixin position($top: null, $end: null, $bottom: null, $start: null) { | ||||
|     @include position-horizontal($start, $end); | ||||
|     top: $top; | ||||
|     bottom: $bottom; | ||||
| } | ||||
| 
 | ||||
| // Add border for all directions | ||||
| // @param {string} $top | ||||
| // @param {string} $end | ||||
| // @param {string} $bottom | ||||
| // @param {string} $start | ||||
| // ---------------------------------------------------------- | ||||
| @mixin border($top, $end: $top, $bottom: $top, $start: $end) { | ||||
|     @include property(border, $top, $end, $bottom, $start); | ||||
| } | ||||
| 
 | ||||
| // Add border radius for all directions | ||||
| // @param {string} $top-start | ||||
| // @param {string} $top-end | ||||
| // @param {string} $bottom-end | ||||
| // @param {string} $bottom-start | ||||
| // ---------------------------------------------------------- | ||||
| @mixin border-radius($top-start, $top-end: $top-start, $bottom-end: $top-start, $bottom-start: $top-end) { | ||||
|     @if $top-start == $top-end and $top-start == $bottom-end and $top-start == $bottom-start { | ||||
|         @include multi-dir() { | ||||
|             border-radius: $top-start; | ||||
|         } | ||||
|     } @else { | ||||
|         @include ltr() { | ||||
|             border-top-left-radius: $top-start; | ||||
|             border-top-right-radius: $top-end; | ||||
|             border-bottom-right-radius: $bottom-end; | ||||
|             border-bottom-left-radius: $bottom-start; | ||||
|         } | ||||
| 
 | ||||
|         @include rtl() { | ||||
|             border-top-left-radius: $top-end; | ||||
|             border-top-right-radius: $top-start; | ||||
|             border-bottom-right-radius: $bottom-start; | ||||
|             border-bottom-left-radius: $bottom-end; | ||||
|         } | ||||
|     } | ||||
| } | ||||
| 
 | ||||
| // Add direction for all directions | ||||
| // @param {string} $dir - Direction on LTR | ||||
| @mixin direction($dir) { | ||||
|     $other-dir: null; | ||||
| 
 | ||||
|     @if $dir == ltr { | ||||
|         $other-dir: rtl; | ||||
|     } @else { | ||||
|         $other-dir: ltr; | ||||
|     } | ||||
| 
 | ||||
|     @include ltr() { | ||||
|         direction: $dir; | ||||
|     } | ||||
|     @include rtl() { | ||||
|         direction: $other-dir; | ||||
|     } | ||||
| } | ||||
| 
 | ||||
| // Add float for all directions | ||||
| // @param {string} $side | ||||
| // @param {string} $decorator - !important | ||||
| @mixin float($side, $decorator: null) { | ||||
|     @if $side == start { | ||||
|         @include ltr() { | ||||
|             float: left $decorator; | ||||
|         } | ||||
|         @include rtl() { | ||||
|             float: right $decorator; | ||||
|         } | ||||
|     } @else if $side == end { | ||||
|         @include ltr() { | ||||
|             float: right $decorator; | ||||
|         } | ||||
|         @include rtl() { | ||||
|             float: left $decorator; | ||||
|         } | ||||
|     } @else { | ||||
|         @include multi-dir() { | ||||
|             float: $side $decorator; | ||||
|         } | ||||
|     } | ||||
| } | ||||
| 
 | ||||
| @mixin background-position($horizontal, $horizontal-amount: null, $vertical: null, $vertical-amount: null) { | ||||
|     @if $horizontal == start or $horizontal == end { | ||||
|         $horizontal-ltr: null; | ||||
|         $horizontal-rtl: null; | ||||
|         @if $horizontal == start { | ||||
|             $horizontal-ltr: left; | ||||
|             $horizontal-rtl: right; | ||||
|         } @else { | ||||
|             $horizontal-ltr: right; | ||||
|             $horizontal-rtl: left; | ||||
|         } | ||||
| 
 | ||||
|         @include ltr() { | ||||
|             background-position: $horizontal-ltr $horizontal-amount $vertical $vertical-amount; | ||||
|         } | ||||
|         @include rtl() { | ||||
|             background-position: $horizontal-rtl $horizontal-amount $vertical $vertical-amount; | ||||
|         } | ||||
|     } @else { | ||||
|         @include multi-dir() { | ||||
|             background-position: $horizontal $horizontal-amount $vertical $vertical-amount; | ||||
|         } | ||||
|     } | ||||
| } | ||||
| 
 | ||||
| @mixin transform-origin($x-axis, $y-axis: null) { | ||||
|     @if $x-axis == start { | ||||
|         @include ltr() { | ||||
|             transform-origin: left $y-axis; | ||||
|         } | ||||
|         @include rtl() { | ||||
|             transform-origin: right $y-axis; | ||||
|         } | ||||
|     } @else if $x-axis == end { | ||||
|         @include ltr() { | ||||
|             transform-origin: right $y-axis; | ||||
|         } | ||||
|         @include rtl() { | ||||
|             transform-origin: left $y-axis; | ||||
|         } | ||||
|     } @else if $x-axis == left or $x-axis == right { | ||||
|         @include multi-dir() { | ||||
|             transform-origin: $x-axis $y-axis; | ||||
|         } | ||||
|     } @else { | ||||
|         @include ltr() { | ||||
|             transform-origin: $x-axis $y-axis; | ||||
|         } | ||||
|         @include rtl() { | ||||
|             transform-origin: calc(100% - #{$x-axis}) $y-axis; | ||||
|         } | ||||
|     } | ||||
| } | ||||
| 
 | ||||
| // Add transform for all directions | ||||
| // @param {string} $transforms - comma separated list of transforms | ||||
| @mixin transform($transforms...) { | ||||
|     $extra: null; | ||||
| 
 | ||||
|     $x: null; | ||||
|     $ltr-translate: null; | ||||
|     $rtl-translate: null; | ||||
| 
 | ||||
|     @each $transform in $transforms { | ||||
|         @if (str-index($transform, translate3d)) { | ||||
|             $transform: str-replace($transform, 'translate3d('); | ||||
|             $transform: str-replace($transform, ')'); | ||||
| 
 | ||||
|             $coordinates: str-split($transform, ','); | ||||
| 
 | ||||
|             $x: nth($coordinates, 1); | ||||
|             $y: nth($coordinates, 2); | ||||
|             $z: nth($coordinates, 3); | ||||
| 
 | ||||
|             $ltr-translate: translate3d($x, $y, $z); | ||||
|             $rtl-translate: translate3d(calc(-1 * #{$x}), $y, $z); | ||||
|         } @else { | ||||
|             @if $extra == null { | ||||
|                 $extra: $transform; | ||||
|             } @else { | ||||
|                 $extra: $extra $transform; | ||||
|             } | ||||
|         } | ||||
|     } | ||||
| 
 | ||||
|     @if $x == '0' or $x == null { | ||||
|         @include multi-dir() { | ||||
|             transform: $ltr-translate $extra; | ||||
|         } | ||||
|     } @else { | ||||
|         @include ltr() { | ||||
|             transform: $ltr-translate $extra; | ||||
|         } | ||||
| 
 | ||||
|         @include rtl() { | ||||
|             transform: $rtl-translate $extra; | ||||
|         } | ||||
|     } | ||||
| } | ||||
|  | ||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user