123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125 |
- // Checks if a number is even
- @function is-even($int) {
- @if $int%2 == 0 {
- @return true;
- }
- @return false;
- }
- // Checks if an element belongs to a list
- @function belongs-to($tested-item, $list) {
- @each $item in $list {
- @if $item == $tested-item {
- @return true;
- }
- }
- @return false;
- }
- // Contains display value
- @function contains-display-value($query) {
- @if belongs-to(table, $query) or belongs-to(block, $query) or belongs-to(inline-block, $query) or belongs-to(inline, $query) {
- @return true;
- }
- @return false;
- }
- // Parses the first argument of span-columns()
- @function container-span($span: $span) {
- @if length($span) == 3 {
- $container-columns: nth($span, 3);
- @return $container-columns;
- }
- @else if length($span) == 2 {
- $container-columns: nth($span, 2);
- @return $container-columns;
- }
- @else {
- @return $grid-columns;
- }
- }
- @function container-shift($shift: $shift) {
- $parent-columns: $grid-columns !global !default;
- @if length($shift) == 3 {
- $container-columns: nth($shift, 3);
- @return $container-columns;
- }
- @else if length($shift) == 2 {
- $container-columns: nth($shift, 2);
- @return $container-columns;
- }
- @else {
- @return $parent-columns;
- }
- }
- // Generates a striped background
- @function gradient-stops($grid-columns, $color: $visual-grid-color) {
- $transparent: rgba(0,0,0,0);
- $column-width: flex-grid(1, $grid-columns);
- $gutter-width: flex-gutter($grid-columns);
- $column-offset: $column-width;
- $values: ($transparent 0, $color 0);
- @for $i from 1 to $grid-columns*2 {
- @if is-even($i) {
- $values: append($values, $transparent $column-offset, comma);
- $values: append($values, $color $column-offset, comma);
- $column-offset: $column-offset + $column-width;
- }
- @else {
- $values: append($values, $color $column-offset, comma);
- $values: append($values, $transparent $column-offset, comma);
- $column-offset: $column-offset + $gutter-width;
- }
- }
- @return $values;
- }
- // Layout direction
- @function get-direction($layout, $default) {
- $direction: nil;
-
- @if $layout == LTR or $layout == RTL {
- $direction: direction-from-layout($layout);
- } @else {
- $direction: direction-from-layout($default);
- }
- @return $direction;
- }
- @function direction-from-layout($layout) {
- $direction: nil;
- @if $layout == LTR {
- $direction: right;
- } @else {
- $direction: left;
- }
- @return $direction;
- }
- @function get-opposite-direction($direction) {
- $opposite-direction: left;
- @if $direction == left {
- $opposite-direction: right;
- }
- @return $opposite-direction;
- }
|