locomotivecms_wagon 2.4.0.rc2 → 2.4.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/generators/foundation/public/javascripts/vendor/foundation.js +10839 -6523
- data/generators/foundation/public/javascripts/vendor/foundation.min.js +5 -3
- data/generators/foundation/public/stylesheets/_settings.scss +455 -115
- data/generators/foundation/public/stylesheets/app.css +0 -3
- data/generators/foundation/public/stylesheets/app.scss +15 -6
- data/generators/foundation/public/stylesheets/foundation.css +4191 -1885
- data/generators/foundation/public/stylesheets/foundation6/_global.scss +106 -54
- data/generators/foundation/public/stylesheets/foundation6/components/_accordion-menu.scss +157 -14
- data/generators/foundation/public/stylesheets/foundation6/components/_accordion.scss +71 -28
- data/generators/foundation/public/stylesheets/foundation6/components/_badge.scss +17 -9
- data/generators/foundation/public/stylesheets/foundation6/components/_breadcrumbs.scss +33 -10
- data/generators/foundation/public/stylesheets/foundation6/components/_button-group.scss +168 -30
- data/generators/foundation/public/stylesheets/foundation6/components/_button.scss +165 -44
- data/generators/foundation/public/stylesheets/foundation6/components/_callout.scss +9 -18
- data/generators/foundation/public/stylesheets/foundation6/components/_card.scss +129 -0
- data/generators/foundation/public/stylesheets/foundation6/components/_close-button.scss +54 -13
- data/generators/foundation/public/stylesheets/foundation6/components/_drilldown.scss +108 -33
- data/generators/foundation/public/stylesheets/foundation6/components/_dropdown-menu.scss +215 -64
- data/generators/foundation/public/stylesheets/foundation6/components/_dropdown.scss +22 -7
- data/generators/foundation/public/stylesheets/foundation6/components/_flex-video.scss +1 -68
- data/generators/foundation/public/stylesheets/foundation6/components/_flex.scss +117 -0
- data/generators/foundation/public/stylesheets/foundation6/components/_float.scss +1 -1
- data/generators/foundation/public/stylesheets/foundation6/components/_label.scss +16 -8
- data/generators/foundation/public/stylesheets/foundation6/components/_media-object.scss +50 -10
- data/generators/foundation/public/stylesheets/foundation6/components/_menu-icon.scss +9 -0
- data/generators/foundation/public/stylesheets/foundation6/components/_menu.scss +373 -91
- data/generators/foundation/public/stylesheets/foundation6/components/_off-canvas.scss +418 -83
- data/generators/foundation/public/stylesheets/foundation6/components/_orbit.scss +17 -7
- data/generators/foundation/public/stylesheets/foundation6/components/_pagination.scss +77 -45
- data/generators/foundation/public/stylesheets/foundation6/components/_progress-bar.scss +16 -35
- data/generators/foundation/public/stylesheets/foundation6/components/_responsive-embed.scss +70 -0
- data/generators/foundation/public/stylesheets/foundation6/components/_reveal.scss +59 -34
- data/generators/foundation/public/stylesheets/foundation6/components/_slider.scss +17 -38
- data/generators/foundation/public/stylesheets/foundation6/components/_sticky.scss +5 -4
- data/generators/foundation/public/stylesheets/foundation6/components/_switch.scss +52 -36
- data/generators/foundation/public/stylesheets/foundation6/components/_table.scss +197 -79
- data/generators/foundation/public/stylesheets/foundation6/components/_tabs.scss +126 -67
- data/generators/foundation/public/stylesheets/foundation6/components/_thumbnail.scss +17 -4
- data/generators/foundation/public/stylesheets/foundation6/components/_title-bar.scss +61 -21
- data/generators/foundation/public/stylesheets/foundation6/components/_tooltip.scss +74 -24
- data/generators/foundation/public/stylesheets/foundation6/components/_top-bar.scss +128 -10
- data/generators/foundation/public/stylesheets/foundation6/components/_visibility.scss +6 -5
- data/generators/foundation/public/stylesheets/foundation6/forms/_checkbox.scss +14 -9
- data/generators/foundation/public/stylesheets/foundation6/forms/_error.scss +12 -5
- data/generators/foundation/public/stylesheets/foundation6/forms/_fieldset.scss +6 -6
- data/generators/foundation/public/stylesheets/foundation6/forms/_forms.scss +11 -9
- data/generators/foundation/public/stylesheets/foundation6/forms/_help-text.scss +1 -1
- data/generators/foundation/public/stylesheets/foundation6/forms/_input-group.scss +82 -10
- data/generators/foundation/public/stylesheets/foundation6/forms/_label.scss +2 -0
- data/generators/foundation/public/stylesheets/foundation6/forms/_meter.scss +116 -0
- data/generators/foundation/public/stylesheets/foundation6/forms/_progress.scss +94 -0
- data/generators/foundation/public/stylesheets/foundation6/forms/_range.scss +149 -0
- data/generators/foundation/public/stylesheets/foundation6/forms/_select.scss +36 -14
- data/generators/foundation/public/stylesheets/foundation6/forms/_text.scss +53 -27
- data/generators/foundation/public/stylesheets/foundation6/foundation.scss +59 -17
- data/generators/foundation/public/stylesheets/foundation6/grid/_classes.scss +100 -56
- data/generators/foundation/public/stylesheets/foundation6/grid/_column.scss +22 -22
- data/generators/foundation/public/stylesheets/foundation6/grid/_flex-grid.scss +164 -96
- data/generators/foundation/public/stylesheets/foundation6/grid/_grid.scss +19 -4
- data/generators/foundation/public/stylesheets/foundation6/grid/_gutter.scss +61 -10
- data/generators/foundation/public/stylesheets/foundation6/grid/_layout.scss +49 -5
- data/generators/foundation/public/stylesheets/foundation6/grid/_position.scss +14 -9
- data/generators/foundation/public/stylesheets/foundation6/grid/_row.scss +42 -15
- data/generators/foundation/public/stylesheets/foundation6/motion-ui/_classes.scss +11 -4
- data/generators/foundation/public/stylesheets/foundation6/motion-ui/effects/_fade.scss +4 -1
- data/generators/foundation/public/stylesheets/foundation6/motion-ui/effects/_zoom.scss +1 -1
- data/generators/foundation/public/stylesheets/foundation6/motion-ui/transitions/_slide.scss +1 -1
- data/generators/foundation/public/stylesheets/foundation6/motion-ui/util/_transition.scss +1 -1
- data/generators/foundation/public/stylesheets/foundation6/prototype/_arrow.scss +36 -0
- data/generators/foundation/public/stylesheets/foundation6/prototype/_border-box.scss +35 -0
- data/generators/foundation/public/stylesheets/foundation6/prototype/_border-none.scss +35 -0
- data/generators/foundation/public/stylesheets/foundation6/prototype/_bordered.scss +54 -0
- data/generators/foundation/public/stylesheets/foundation6/prototype/_box.scss +23 -0
- data/generators/foundation/public/stylesheets/foundation6/prototype/_display.scss +50 -0
- data/generators/foundation/public/stylesheets/foundation6/prototype/_font-styling.scss +95 -0
- data/generators/foundation/public/stylesheets/foundation6/prototype/_list-style-type.scss +95 -0
- data/generators/foundation/public/stylesheets/foundation6/prototype/_overflow.scss +72 -0
- data/generators/foundation/public/stylesheets/foundation6/prototype/_position.scss +114 -0
- data/generators/foundation/public/stylesheets/foundation6/prototype/_prototype.scss +87 -0
- data/generators/foundation/public/stylesheets/foundation6/prototype/_relation.scss +157 -0
- data/generators/foundation/public/stylesheets/foundation6/prototype/_rotate.scss +31 -0
- data/generators/foundation/public/stylesheets/foundation6/prototype/_rounded.scss +54 -0
- data/generators/foundation/public/stylesheets/foundation6/prototype/_separator.scss +96 -0
- data/generators/foundation/public/stylesheets/foundation6/prototype/_shadow.scss +43 -0
- data/generators/foundation/public/stylesheets/foundation6/prototype/_sizing.scss +73 -0
- data/generators/foundation/public/stylesheets/foundation6/prototype/_spacing.scss +204 -0
- data/generators/foundation/public/stylesheets/foundation6/prototype/_text-decoration.scss +48 -0
- data/generators/foundation/public/stylesheets/foundation6/prototype/_text-transformation.scss +48 -0
- data/generators/foundation/public/stylesheets/foundation6/prototype/_text-utilities.scss +88 -0
- data/generators/foundation/public/stylesheets/foundation6/settings/_settings.scss +454 -116
- data/generators/foundation/public/stylesheets/foundation6/typography/_alignment.scss +9 -8
- data/generators/foundation/public/stylesheets/foundation6/typography/_base.scss +128 -55
- data/generators/foundation/public/stylesheets/foundation6/typography/_helpers.scss +7 -4
- data/generators/foundation/public/stylesheets/foundation6/typography/_print.scss +22 -9
- data/generators/foundation/public/stylesheets/foundation6/typography/_typography.scss +0 -2
- data/generators/foundation/public/stylesheets/foundation6/util/_breakpoint.scss +213 -47
- data/generators/foundation/public/stylesheets/foundation6/util/_color.scss +105 -17
- data/generators/foundation/public/stylesheets/foundation6/util/_direction.scss +31 -0
- data/generators/foundation/public/stylesheets/foundation6/util/_flex.scss +85 -0
- data/generators/foundation/public/stylesheets/foundation6/util/_math.scss +72 -0
- data/generators/foundation/public/stylesheets/foundation6/util/_mixins.scss +161 -38
- data/generators/foundation/public/stylesheets/foundation6/util/_selector.scss +5 -3
- data/generators/foundation/public/stylesheets/foundation6/util/_typography.scss +26 -0
- data/generators/foundation/public/stylesheets/foundation6/util/_unit.scss +100 -17
- data/generators/foundation/public/stylesheets/foundation6/util/_util.scss +4 -5
- data/generators/foundation/public/stylesheets/foundation6/util/_value.scss +68 -25
- data/generators/foundation/public/stylesheets/foundation6/vendor/normalize-scss/sass/_normalize.scss +3 -0
- data/generators/foundation/public/stylesheets/foundation6/vendor/normalize-scss/sass/normalize/_import-now.scss +11 -0
- data/generators/foundation/public/stylesheets/foundation6/vendor/normalize-scss/sass/normalize/_normalize-mixin.scss +676 -0
- data/generators/foundation/public/stylesheets/foundation6/vendor/normalize-scss/sass/normalize/_variables.scss +36 -0
- data/generators/foundation/public/stylesheets/foundation6/vendor/normalize-scss/sass/normalize/_vertical-rhythm.scss +61 -0
- data/generators/foundation/public/stylesheets/foundation6/vendor/sassy-lists/stylesheets/functions/_contain.scss +31 -0
- data/generators/foundation/public/stylesheets/foundation6/vendor/sassy-lists/stylesheets/functions/_purge.scss +38 -0
- data/generators/foundation/public/stylesheets/foundation6/vendor/sassy-lists/stylesheets/functions/_remove.scss +31 -0
- data/generators/foundation/public/stylesheets/foundation6/vendor/sassy-lists/stylesheets/functions/_replace.scss +46 -0
- data/generators/foundation/public/stylesheets/foundation6/vendor/sassy-lists/stylesheets/functions/_to-list.scss +27 -0
- data/generators/foundation/public/stylesheets/foundation6/vendor/sassy-lists/stylesheets/helpers/_missing-dependencies.scss +25 -0
- data/generators/foundation/public/stylesheets/foundation6/vendor/sassy-lists/stylesheets/helpers/_true.scss +13 -0
- data/generators/foundation/public/stylesheets/foundation6/xy-grid/_cell.scss +169 -0
- data/generators/foundation/public/stylesheets/foundation6/xy-grid/_classes.scss +476 -0
- data/generators/foundation/public/stylesheets/foundation6/xy-grid/_collapse.scss +74 -0
- data/generators/foundation/public/stylesheets/foundation6/xy-grid/_frame.scss +85 -0
- data/generators/foundation/public/stylesheets/foundation6/xy-grid/_grid.scss +35 -0
- data/generators/foundation/public/stylesheets/foundation6/xy-grid/_gutters.scss +45 -0
- data/generators/foundation/public/stylesheets/foundation6/xy-grid/_layout.scss +33 -0
- data/generators/foundation/public/stylesheets/foundation6/xy-grid/_position.scss +28 -0
- data/generators/foundation/public/stylesheets/foundation6/xy-grid/_xy-grid.scss +51 -0
- data/lib/locomotive/wagon/tools/styled_yaml.rb +1 -1
- data/lib/locomotive/wagon/version.rb +1 -1
- data/locomotivecms_wagon.gemspec +2 -2
- data/spec/fixtures/cassettes/authenticate.yml +102 -48
- data/spec/fixtures/cassettes/delete.yml +519 -259
- data/spec/fixtures/cassettes/push.yml +2724 -1486
- metadata +61 -10
- data/generators/foundation/public/stylesheets/foundation6/motion-ui.scss +0 -4
- data/generators/foundation/public/stylesheets/foundation6/vendor/normalize.scss +0 -424
@@ -0,0 +1,36 @@
|
|
1
|
+
//
|
2
|
+
// Variables
|
3
|
+
//
|
4
|
+
// You can override the default values by setting the variables in your Sass
|
5
|
+
// before importing the normalize-scss library.
|
6
|
+
|
7
|
+
// The font size set on the root html element.
|
8
|
+
$base-font-size: 16px !default;
|
9
|
+
|
10
|
+
// The base line height determines the basic unit of vertical rhythm.
|
11
|
+
$base-line-height: 24px !default;
|
12
|
+
|
13
|
+
// The length unit in which to output vertical rhythm values.
|
14
|
+
// Supported values: px, em, rem.
|
15
|
+
$base-unit: 'em' !default;
|
16
|
+
|
17
|
+
// The default font family.
|
18
|
+
$base-font-family: sans-serif !default;
|
19
|
+
|
20
|
+
// The font sizes for h1-h6.
|
21
|
+
$h1-font-size: 2 * $base-font-size !default;
|
22
|
+
$h2-font-size: 1.5 * $base-font-size !default;
|
23
|
+
$h3-font-size: 1.17 * $base-font-size !default;
|
24
|
+
$h4-font-size: 1 * $base-font-size !default;
|
25
|
+
$h5-font-size: 0.83 * $base-font-size !default;
|
26
|
+
$h6-font-size: 0.67 * $base-font-size !default;
|
27
|
+
|
28
|
+
// The amount lists and blockquotes are indented.
|
29
|
+
$indent-amount: 40px !default;
|
30
|
+
|
31
|
+
// The following variable controls whether normalize-scss will output
|
32
|
+
// font-sizes, line-heights and block-level top/bottom margins that form a basic
|
33
|
+
// vertical rhythm on the page, which differs from the original Normalize.css.
|
34
|
+
// However, changing any of the variables above will cause
|
35
|
+
// $normalize-vertical-rhythm to be automatically set to true.
|
36
|
+
$normalize-vertical-rhythm: false !default;
|
@@ -0,0 +1,61 @@
|
|
1
|
+
//
|
2
|
+
// Vertical Rhythm
|
3
|
+
//
|
4
|
+
// This is the minimal amount of code needed to create vertical rhythm in our
|
5
|
+
// CSS. If you are looking for a robust solution, look at the excellent Typey
|
6
|
+
// library. @see https://github.com/jptaranto/typey
|
7
|
+
|
8
|
+
@function normalize-rhythm($value, $relative-to: $base-font-size, $unit: $base-unit) {
|
9
|
+
@if unit($value) != px {
|
10
|
+
@error "The normalize vertical-rhythm module only supports px inputs. The typey library is better.";
|
11
|
+
}
|
12
|
+
@if $unit == rem {
|
13
|
+
@return ($value / $base-font-size) * 1rem;
|
14
|
+
}
|
15
|
+
@else if $unit == em {
|
16
|
+
@return ($value / $relative-to) * 1em;
|
17
|
+
}
|
18
|
+
@else { // $unit == px
|
19
|
+
@return $value;
|
20
|
+
}
|
21
|
+
}
|
22
|
+
|
23
|
+
@mixin normalize-font-size($value, $relative-to: $base-font-size) {
|
24
|
+
@if unit($value) != 'px' {
|
25
|
+
@error "normalize-font-size() only supports px inputs. The typey library is better.";
|
26
|
+
}
|
27
|
+
font-size: normalize-rhythm($value, $relative-to);
|
28
|
+
}
|
29
|
+
|
30
|
+
@mixin normalize-rhythm($property, $values, $relative-to: $base-font-size) {
|
31
|
+
$value-list: $values;
|
32
|
+
$sep: space;
|
33
|
+
@if type-of($values) == 'list' {
|
34
|
+
$sep: list-separator($values);
|
35
|
+
}
|
36
|
+
@else {
|
37
|
+
$value-list: append((), $values);
|
38
|
+
}
|
39
|
+
|
40
|
+
$normalized-values: ();
|
41
|
+
@each $value in $value-list {
|
42
|
+
@if unitless($value) and $value != 0 {
|
43
|
+
$value: $value * normalize-rhythm($base-line-height, $relative-to);
|
44
|
+
}
|
45
|
+
$normalized-values: append($normalized-values, $value, $sep);
|
46
|
+
}
|
47
|
+
#{$property}: $normalized-values;
|
48
|
+
}
|
49
|
+
|
50
|
+
@mixin normalize-margin($values, $relative-to: $base-font-size) {
|
51
|
+
@include normalize-rhythm(margin, $values, $relative-to);
|
52
|
+
}
|
53
|
+
|
54
|
+
@mixin normalize-line-height($font-size, $min-line-padding: 2px) {
|
55
|
+
$lines: ceil($font-size / $base-line-height);
|
56
|
+
// If lines are cramped include some extra leading.
|
57
|
+
@if ($lines * $base-line-height - $font-size) < ($min-line-padding * 2) {
|
58
|
+
$lines: $lines + 1;
|
59
|
+
}
|
60
|
+
@include normalize-rhythm(line-height, $lines, $font-size);
|
61
|
+
}
|
@@ -0,0 +1,31 @@
|
|
1
|
+
///
|
2
|
+
/// Returns whether `$list` contains `$value`.
|
3
|
+
///
|
4
|
+
/// @ignore Documentation: http://at-import.github.io/SassyLists/documentation/#function-sl-contain
|
5
|
+
///
|
6
|
+
/// @param {List} $list - list to check
|
7
|
+
/// @param {*} $value - value to look for
|
8
|
+
///
|
9
|
+
/// @example
|
10
|
+
/// sl-contain(a b c, a)
|
11
|
+
/// // true
|
12
|
+
///
|
13
|
+
/// @example
|
14
|
+
/// sl-contain(a b c, z)
|
15
|
+
/// // false
|
16
|
+
///
|
17
|
+
/// @return {Bool}
|
18
|
+
///
|
19
|
+
|
20
|
+
@function sl-contain($list, $value) {
|
21
|
+
@return not not index($list, $value);
|
22
|
+
}
|
23
|
+
|
24
|
+
///
|
25
|
+
/// @requires sl-contain
|
26
|
+
/// @alias sl-contain
|
27
|
+
///
|
28
|
+
|
29
|
+
@function sl-include($list, $value) {
|
30
|
+
@return sl-contain($list, $value);
|
31
|
+
}
|
@@ -0,0 +1,38 @@
|
|
1
|
+
/// Removes all false and null values from `$list`.
|
2
|
+
///
|
3
|
+
/// @ignore Documentation: http://at-import.github.io/SassyLists/documentation/#function-sl-purge
|
4
|
+
///
|
5
|
+
/// @requires sl-is-true
|
6
|
+
/// @requires sl-to-list
|
7
|
+
///
|
8
|
+
/// @param {List} $list - list to purge
|
9
|
+
///
|
10
|
+
/// @example
|
11
|
+
/// sl-purge(null a false b)
|
12
|
+
/// // a b
|
13
|
+
///
|
14
|
+
/// @return {List}
|
15
|
+
///
|
16
|
+
|
17
|
+
@function sl-purge($list) {
|
18
|
+
$_: sl-missing-dependencies('sl-is-true', 'sl-to-list');
|
19
|
+
|
20
|
+
$result: ();
|
21
|
+
|
22
|
+
@each $item in $list {
|
23
|
+
@if sl-is-true($item) {
|
24
|
+
$result: append($result, $item, list-separator($list));
|
25
|
+
}
|
26
|
+
}
|
27
|
+
|
28
|
+
@return sl-to-list($result);
|
29
|
+
}
|
30
|
+
|
31
|
+
///
|
32
|
+
/// @requires sl-purge
|
33
|
+
/// @alias sl-purge
|
34
|
+
///
|
35
|
+
|
36
|
+
@function sl-clean($list) {
|
37
|
+
@return sl-purge($list);
|
38
|
+
}
|
@@ -0,0 +1,31 @@
|
|
1
|
+
///
|
2
|
+
/// Removes value(s) `$value` from `$list`.
|
3
|
+
///
|
4
|
+
/// @ignore Documentation: http://at-import.github.io/SassyLists/documentation/#function-sl-remove
|
5
|
+
///
|
6
|
+
/// @requires sl-replace
|
7
|
+
///
|
8
|
+
/// @param {List} $list - list to update
|
9
|
+
/// @param {*} $value - value to remove
|
10
|
+
///
|
11
|
+
/// @example
|
12
|
+
/// sl-remove(a b c, a)
|
13
|
+
/// // b c
|
14
|
+
///
|
15
|
+
/// @return {List}
|
16
|
+
///
|
17
|
+
|
18
|
+
@function sl-remove($list, $value) {
|
19
|
+
$_: sl-missing-dependencies('sl-replace');
|
20
|
+
|
21
|
+
@return sl-replace($list, $value, null);
|
22
|
+
}
|
23
|
+
|
24
|
+
///
|
25
|
+
/// @requires sl-remove
|
26
|
+
/// @alias sl-remove
|
27
|
+
///
|
28
|
+
|
29
|
+
@function sl-without($list, $value) {
|
30
|
+
@return sl-remove($list, $value);
|
31
|
+
}
|
@@ -0,0 +1,46 @@
|
|
1
|
+
///
|
2
|
+
/// Replaces `$old` by `$new` in `$list`.
|
3
|
+
///
|
4
|
+
/// @ignore Documentation: http://at-import.github.io/SassyLists/documentation/#function-sl-replace
|
5
|
+
///
|
6
|
+
/// @requires sl-is-true
|
7
|
+
/// @requires sl-purge
|
8
|
+
/// @requires sl-to-list
|
9
|
+
///
|
10
|
+
/// @param {List} $list - list to update
|
11
|
+
/// @param {*} $old - value to replace
|
12
|
+
/// @param {*} $value - new value for $old
|
13
|
+
///
|
14
|
+
/// @example
|
15
|
+
/// sl-replace(a b c, b, z)
|
16
|
+
/// // a z c
|
17
|
+
///
|
18
|
+
/// @example
|
19
|
+
/// sl-replace(a b c, y, z)
|
20
|
+
/// // a b c
|
21
|
+
///
|
22
|
+
/// @return {List}
|
23
|
+
///
|
24
|
+
|
25
|
+
@function sl-replace($list, $old, $value) {
|
26
|
+
$_: sl-missing-dependencies('sl-is-true', 'sl-purge', 'sl-to-list');
|
27
|
+
|
28
|
+
$running: true;
|
29
|
+
|
30
|
+
@while $running {
|
31
|
+
$index: index($list, $old);
|
32
|
+
|
33
|
+
@if not $index {
|
34
|
+
$running: false;
|
35
|
+
}
|
36
|
+
|
37
|
+
@else {
|
38
|
+
$list: set-nth($list, $index, $value);
|
39
|
+
}
|
40
|
+
|
41
|
+
}
|
42
|
+
|
43
|
+
$list: if(sl-is-true($value), $list, sl-purge($list));
|
44
|
+
|
45
|
+
@return sl-to-list($list);
|
46
|
+
}
|
@@ -0,0 +1,27 @@
|
|
1
|
+
///
|
2
|
+
/// Casts `$value` into a list.
|
3
|
+
///
|
4
|
+
/// @ignore Documentation: http://at-import.github.io/SassyLists/documentation/#function-sl-to-list
|
5
|
+
///
|
6
|
+
/// @param {*} $value - value to cast to list
|
7
|
+
/// @param {String} $separator [space] - separator to use
|
8
|
+
///
|
9
|
+
/// @example
|
10
|
+
/// sl-to-list(a b c, comma)
|
11
|
+
/// // a, b, c
|
12
|
+
///
|
13
|
+
/// @return {List}
|
14
|
+
///
|
15
|
+
|
16
|
+
@function sl-to-list($value, $separator: list-separator($value)) {
|
17
|
+
@return join((), $value, $separator);
|
18
|
+
}
|
19
|
+
|
20
|
+
///
|
21
|
+
/// @requires sl-to-list
|
22
|
+
/// @alias sl-to-list
|
23
|
+
///
|
24
|
+
|
25
|
+
@function sl-listify($value) {
|
26
|
+
@return sl-to-list($value);
|
27
|
+
}
|
@@ -0,0 +1,25 @@
|
|
1
|
+
///
|
2
|
+
/// Checks whether `$functions` exist in global scope.
|
3
|
+
///
|
4
|
+
/// @access private
|
5
|
+
///
|
6
|
+
/// @param {ArgList} $functions - list of functions to check for
|
7
|
+
///
|
8
|
+
/// @return {Bool} Whether or not there are missing dependencies
|
9
|
+
///
|
10
|
+
|
11
|
+
@function sl-missing-dependencies($functions...) {
|
12
|
+
$missing-dependencies: ();
|
13
|
+
|
14
|
+
@each $function in $functions {
|
15
|
+
@if not function-exists($function) {
|
16
|
+
$missing-dependencies: append($missing-dependencies, $function, comma);
|
17
|
+
}
|
18
|
+
}
|
19
|
+
|
20
|
+
@if length($missing-dependencies) > 0 {
|
21
|
+
@error 'Unmet dependencies! The following functions are required: #{$missing-dependencies}.';
|
22
|
+
}
|
23
|
+
|
24
|
+
@return length($missing-dependencies) > 0;
|
25
|
+
}
|
@@ -0,0 +1,13 @@
|
|
1
|
+
///
|
2
|
+
/// Returns truthiness of `$value`.
|
3
|
+
///
|
4
|
+
/// @access private
|
5
|
+
///
|
6
|
+
/// @param {*} $value - value to check
|
7
|
+
///
|
8
|
+
/// @return {Bool}
|
9
|
+
///
|
10
|
+
|
11
|
+
@function sl-is-true($value) {
|
12
|
+
@return if($value == null, false, $value and $value != null and $value != '' and $value != ());
|
13
|
+
}
|
@@ -0,0 +1,169 @@
|
|
1
|
+
// Foundation for Sites by ZURB
|
2
|
+
// foundation.zurb.com
|
3
|
+
// Licensed under MIT Open Source
|
4
|
+
|
5
|
+
////
|
6
|
+
/// @group xy-grid
|
7
|
+
////
|
8
|
+
|
9
|
+
/// Calculate the percentage size of a cell.
|
10
|
+
///
|
11
|
+
/// @param {Number|List} $size [$grid-columns] - Size to make the cell. You can pass a value in multiple formats, such as `6`, `50%`, `1 of 2 or 1/3.
|
12
|
+
@function xy-cell-size(
|
13
|
+
$size: $grid-columns
|
14
|
+
) {
|
15
|
+
// Parsing percents, decimals, n of n and number counts
|
16
|
+
@if type-of($size) == 'number' {
|
17
|
+
@if unit($size) == '%' {
|
18
|
+
$size: $size;
|
19
|
+
}
|
20
|
+
@else if $size < 1 {
|
21
|
+
$size: percentage($size);
|
22
|
+
}
|
23
|
+
@else {
|
24
|
+
$size: percentage($size / $grid-columns);
|
25
|
+
}
|
26
|
+
}
|
27
|
+
|
28
|
+
// Parsing "n of n" or "n/n" expressions
|
29
|
+
@elseif type-of($size) == 'list' {
|
30
|
+
@if length($size) != 3 {
|
31
|
+
@error 'Wrong syntax for xy-cell-size(). Use the format "n of n" or "n/n".';
|
32
|
+
}
|
33
|
+
@else {
|
34
|
+
$size: percentage(nth($size, 1) / nth($size, 3));
|
35
|
+
}
|
36
|
+
}
|
37
|
+
// Anything else is incorrect
|
38
|
+
@else {
|
39
|
+
@error 'Wrong syntax for xy-cell-size(). Use a number, decimal, percentage, or "n of n" / "n/n".';
|
40
|
+
}
|
41
|
+
|
42
|
+
@return $size;
|
43
|
+
}
|
44
|
+
|
45
|
+
/// Sets base flex properties for cells.
|
46
|
+
///
|
47
|
+
/// @param {Keyword} $size [full] - The size of your cell. Accepts `full`, `auto` or `shrink`.
|
48
|
+
@mixin xy-cell-base($size: full) {
|
49
|
+
@if($size == 'full') {
|
50
|
+
// This is the base style, all others inherit from it
|
51
|
+
flex: 0 0 auto;
|
52
|
+
min-height: 0px;
|
53
|
+
min-width: 0px;
|
54
|
+
}
|
55
|
+
@elseif ($size == 'auto') {
|
56
|
+
flex: 1 1 0px; // sass-lint:disable-line zero-unit
|
57
|
+
}
|
58
|
+
@elseif ($size == 'shrink') {
|
59
|
+
flex: 0 0 auto;
|
60
|
+
}
|
61
|
+
}
|
62
|
+
|
63
|
+
/// Resets a cells width (or height if vertical is true) as well as strips its gutters.
|
64
|
+
///
|
65
|
+
/// @param {Boolean} $vertical [false] - Set to true to output vertical (height) styles rather than widths.
|
66
|
+
@mixin xy-cell-reset($vertical: true) {
|
67
|
+
$direction: if($vertical == true, width, height);
|
68
|
+
#{$direction}: auto;
|
69
|
+
}
|
70
|
+
|
71
|
+
// Sets our cell widths or heights depending on gutter type.
|
72
|
+
@mixin -xy-cell-properties($size, $margin-gutter, $vertical) {
|
73
|
+
$direction: if($vertical == true, height, width);
|
74
|
+
@if($size == 'full') {
|
75
|
+
$val: if($margin-gutter == 0, 100%, calc(100% - #{rem-calc($margin-gutter)}));
|
76
|
+
#{$direction}: $val;
|
77
|
+
}
|
78
|
+
@elseif ($size == 'auto') {
|
79
|
+
#{$direction}: auto;
|
80
|
+
$val: if($margin-gutter == 0, 100%, calc(100% - #{rem-calc($margin-gutter)}));
|
81
|
+
}
|
82
|
+
@elseif ($size == 'shrink') {
|
83
|
+
#{$direction}: auto;
|
84
|
+
}
|
85
|
+
@else {
|
86
|
+
$val: if($margin-gutter == 0, #{xy-cell-size($size)}, calc(#{xy-cell-size($size)} - #{rem-calc($margin-gutter)}));
|
87
|
+
#{$direction}: $val;
|
88
|
+
}
|
89
|
+
}
|
90
|
+
|
91
|
+
/// Creates a cell for your grid.
|
92
|
+
///
|
93
|
+
/// @param {Keyword|Number} $size [full] - The size of your cell. Can be `full` (default) for 100% width, `auto` to use up available space and `shrink` to use up only required space.
|
94
|
+
/// @param {Boolean} $gutter-output [true] - Whether or not to output gutters
|
95
|
+
/// @param {Number|Map} $gutters [$grid-margin-gutters] - Map or single value for gutters.
|
96
|
+
/// @param {Keyword} $gutter-type [margin] - Map or single value for gutters.
|
97
|
+
/// @param {List} $gutter-position [right left] - The position to apply gutters to. Accepts `top`, `bottom`, `left`, `right` in any combination.
|
98
|
+
/// @param {String} $breakpoint [null] - The name of the breakpoint size in your gutters map to get the size from. If using with the `breakpoint()` mixin this will be set automatically unless manually entered.
|
99
|
+
/// @param {Boolean} $vertical [false] - Set to true to output vertical (height) styles rather than widths.
|
100
|
+
@mixin xy-cell(
|
101
|
+
$size: full,
|
102
|
+
$gutter-output: true,
|
103
|
+
$gutters: $grid-margin-gutters,
|
104
|
+
$gutter-type: margin,
|
105
|
+
$gutter-position: right left,
|
106
|
+
$breakpoint: null,
|
107
|
+
$vertical: false
|
108
|
+
) {
|
109
|
+
@if($breakpoint == null) {
|
110
|
+
// If `$bp-size` is available then use this, otherwise revert to the smallest bp.
|
111
|
+
@if(variable-exists(-zf-size) and type-of($-zf-size) != 'number') and $-zf-size != null {
|
112
|
+
$breakpoint: $-zf-size;
|
113
|
+
}
|
114
|
+
@else {
|
115
|
+
$breakpoint: $-zf-zero-breakpoint;
|
116
|
+
}
|
117
|
+
}
|
118
|
+
|
119
|
+
// Get our gutters from map if available, if not map just return the value.
|
120
|
+
$gutter: -zf-get-bp-val($gutters, $breakpoint);
|
121
|
+
|
122
|
+
// Base flex properties
|
123
|
+
@include xy-cell-base($size);
|
124
|
+
|
125
|
+
@if($gutter-type == 'margin') {
|
126
|
+
@include -xy-cell-properties($size, $gutter, $vertical);
|
127
|
+
}
|
128
|
+
@else {
|
129
|
+
@include -xy-cell-properties($size, 0, $vertical);
|
130
|
+
}
|
131
|
+
|
132
|
+
@if $gutter-output {
|
133
|
+
@include xy-gutters($gutter, $gutter-type, $gutter-position);
|
134
|
+
}
|
135
|
+
}
|
136
|
+
|
137
|
+
/// Creates a single breakpoint sized grid. Used to generate our grid classes.
|
138
|
+
///
|
139
|
+
/// @param {Keyword|Number} $size [full] - The size of your cell. Can be `full` (default) for 100% width, `auto` to use up available space and `shrink` to use up only required space.
|
140
|
+
/// @param {Boolean} $gutter-output [true] - Whether or not to output gutters
|
141
|
+
/// @param {Number|Map} $gutters [$grid-margin-gutters] - Map or single value for gutters.
|
142
|
+
/// @param {Keyword} $gutter-type [margin] - Map or single value for gutters.
|
143
|
+
/// @param {String} $breakpoint [null] - The name of the breakpoint size in your gutters map to get the size from. If using with the `breakpoint()` mixin this will be set automatically unless manually entered.
|
144
|
+
/// @param {Boolean} $vertical [false] - Set to true to output vertical (height) styles rather than widths.
|
145
|
+
@mixin xy-cell-static(
|
146
|
+
$size: full,
|
147
|
+
$gutter-output: true,
|
148
|
+
$gutters: $grid-margin-gutters,
|
149
|
+
$gutter-type: margin,
|
150
|
+
$breakpoint: $-zf-zero-breakpoint,
|
151
|
+
$vertical: false
|
152
|
+
) {
|
153
|
+
|
154
|
+
$gutter: -zf-get-bp-val($gutters, $breakpoint);
|
155
|
+
$gutter-position: if($vertical == true, top bottom, left right);
|
156
|
+
|
157
|
+
@if($gutter-type == 'margin') {
|
158
|
+
@include -xy-cell-properties($size, $gutter, $vertical);
|
159
|
+
}
|
160
|
+
@else {
|
161
|
+
@include -xy-cell-properties($size, 0, $vertical);
|
162
|
+
}
|
163
|
+
|
164
|
+
// If we want to output the gutters
|
165
|
+
@if($gutter-output) {
|
166
|
+
// TODO: Figure out if we need to pass breakpoint in here too.
|
167
|
+
@include xy-gutters($gutter, $gutter-type, $gutter-position);
|
168
|
+
}
|
169
|
+
}
|