susy 2.2.14 → 3.0.0.alpha.1
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.
- checksums.yaml +4 -4
- data/{docs/changelog.rst → CHANGELOG.md} +0 -34
- data/README.md +135 -10
- data/VERSION +1 -1
- data/sass/_prefix.scss +10 -0
- data/sass/_susy.scss +4 -3
- data/sass/susy/_api.scss +134 -0
- data/sass/susy/_grids.scss +192 -0
- data/sass/susy/_parser.scss +284 -0
- data/sass/susy/_settings.scss +120 -0
- data/sass/susy/_unprefix.scss +53 -0
- data/sass/susy/_validation.scss +132 -0
- metadata +26 -75
- data/sass/_su.scss +0 -4
- data/sass/_susyone.scss +0 -4
- data/sass/susy/_su.scss +0 -7
- data/sass/susy/language/_susy.scss +0 -24
- data/sass/susy/language/_susyone.scss +0 -13
- data/sass/susy/language/susy/_background.scss +0 -385
- data/sass/susy/language/susy/_bleed.scss +0 -200
- data/sass/susy/language/susy/_box-sizing.scss +0 -47
- data/sass/susy/language/susy/_breakpoint-plugin.scss +0 -185
- data/sass/susy/language/susy/_container.scss +0 -81
- data/sass/susy/language/susy/_context.scss +0 -36
- data/sass/susy/language/susy/_gallery.scss +0 -94
- data/sass/susy/language/susy/_grids.scss +0 -64
- data/sass/susy/language/susy/_gutters.scss +0 -154
- data/sass/susy/language/susy/_isolate.scss +0 -77
- data/sass/susy/language/susy/_margins.scss +0 -94
- data/sass/susy/language/susy/_padding.scss +0 -74
- data/sass/susy/language/susy/_rows.scss +0 -138
- data/sass/susy/language/susy/_settings.scss +0 -216
- data/sass/susy/language/susy/_span.scss +0 -163
- data/sass/susy/language/susy/_validation.scss +0 -16
- data/sass/susy/language/susyone/_background.scss +0 -18
- data/sass/susy/language/susyone/_functions.scss +0 -377
- data/sass/susy/language/susyone/_grid.scss +0 -312
- data/sass/susy/language/susyone/_isolation.scss +0 -51
- data/sass/susy/language/susyone/_margin.scss +0 -93
- data/sass/susy/language/susyone/_media.scss +0 -105
- data/sass/susy/language/susyone/_padding.scss +0 -92
- data/sass/susy/language/susyone/_settings.scss +0 -60
- data/sass/susy/output/_float.scss +0 -9
- data/sass/susy/output/_shared.scss +0 -15
- data/sass/susy/output/_support.scss +0 -9
- data/sass/susy/output/float/_container.scss +0 -16
- data/sass/susy/output/float/_end.scss +0 -40
- data/sass/susy/output/float/_isolate.scss +0 -22
- data/sass/susy/output/float/_span.scss +0 -35
- data/sass/susy/output/shared/_background.scss +0 -26
- data/sass/susy/output/shared/_container.scss +0 -21
- data/sass/susy/output/shared/_direction.scss +0 -42
- data/sass/susy/output/shared/_inspect.scss +0 -25
- data/sass/susy/output/shared/_margins.scss +0 -23
- data/sass/susy/output/shared/_output.scss +0 -14
- data/sass/susy/output/shared/_padding.scss +0 -23
- data/sass/susy/output/support/_background.scss +0 -58
- data/sass/susy/output/support/_box-sizing.scss +0 -19
- data/sass/susy/output/support/_clearfix.scss +0 -18
- data/sass/susy/output/support/_prefix.scss +0 -19
- data/sass/susy/output/support/_rem.scss +0 -22
- data/sass/susy/output/support/_support.scss +0 -95
- data/sass/susy/su/_grid.scss +0 -103
- data/sass/susy/su/_settings.scss +0 -73
- data/sass/susy/su/_utilities.scss +0 -111
- data/sass/susy/su/_validation.scss +0 -57
- data/templates/project/_grids.scss +0 -9
- data/templates/project/manifest.rb +0 -15
- data/templates/project/style.scss +0 -4
@@ -1,40 +0,0 @@
|
|
1
|
-
// Float Ends API
|
2
|
-
// ==============
|
3
|
-
|
4
|
-
// Susy End Defaults
|
5
|
-
// -----------------
|
6
|
-
// - PRIVATE
|
7
|
-
@include susy-defaults((
|
8
|
-
last-flow: to,
|
9
|
-
));
|
10
|
-
|
11
|
-
// Float Last
|
12
|
-
// ----------
|
13
|
-
// - [$flow] : ltr | rtl
|
14
|
-
@mixin float-last(
|
15
|
-
$flow: map-get($susy-defaults, flow),
|
16
|
-
$last-flow: map-get($susy-defaults, last-flow),
|
17
|
-
$margin: 0
|
18
|
-
) {
|
19
|
-
$to: to($flow);
|
20
|
-
|
21
|
-
$output: (
|
22
|
-
float: if($last-flow == to, $to, null),
|
23
|
-
margin-#{$to}: $margin,
|
24
|
-
);
|
25
|
-
|
26
|
-
@include output($output);
|
27
|
-
}
|
28
|
-
|
29
|
-
// Float First
|
30
|
-
// -----------
|
31
|
-
// - [$flow] : ltr | rtl
|
32
|
-
@mixin float-first(
|
33
|
-
$flow: map-get($susy-defaults, flow)
|
34
|
-
) {
|
35
|
-
$output: (
|
36
|
-
margin-#{from($flow)}: 0,
|
37
|
-
);
|
38
|
-
|
39
|
-
@include output($output);
|
40
|
-
}
|
@@ -1,22 +0,0 @@
|
|
1
|
-
// Float Isolation API
|
2
|
-
// ===================
|
3
|
-
|
4
|
-
// Isolate Output
|
5
|
-
// --------------
|
6
|
-
// - $push : <length>
|
7
|
-
// - [$flow] : ltr | rtl
|
8
|
-
@mixin isolate-output(
|
9
|
-
$push,
|
10
|
-
$flow: map-get($susy-defaults, flow)
|
11
|
-
) {
|
12
|
-
$to: to($flow);
|
13
|
-
$from: from($flow);
|
14
|
-
|
15
|
-
$output: (
|
16
|
-
float: $from,
|
17
|
-
margin-#{$from}: $push,
|
18
|
-
margin-#{$to}: -100%,
|
19
|
-
);
|
20
|
-
|
21
|
-
@include output($output);
|
22
|
-
}
|
@@ -1,35 +0,0 @@
|
|
1
|
-
// Float Span API
|
2
|
-
// ==============
|
3
|
-
|
4
|
-
// Float Span Output
|
5
|
-
// -----------------
|
6
|
-
// - $width : <length>
|
7
|
-
// - [$float] : from | to
|
8
|
-
// - [$margin-before] : <length>
|
9
|
-
// - [$margin-after] : <length>
|
10
|
-
// - [$padding-before] : <length>
|
11
|
-
// - [$padding-after] : <length>
|
12
|
-
// - [$flow] : ltr | rtl
|
13
|
-
@mixin float-span-output(
|
14
|
-
$width,
|
15
|
-
$float : from,
|
16
|
-
$margin-before : null,
|
17
|
-
$margin-after : null,
|
18
|
-
$padding-before : null,
|
19
|
-
$padding-after : null,
|
20
|
-
$flow : map-get($susy-defaults, flow)
|
21
|
-
) {
|
22
|
-
$to : to($flow);
|
23
|
-
$from : from($flow);
|
24
|
-
|
25
|
-
$output: (
|
26
|
-
width: $width,
|
27
|
-
float: if($float == to, $to, null) or if($float == from, $from, null),
|
28
|
-
margin-#{$from}: $margin-before,
|
29
|
-
margin-#{$to}: $margin-after,
|
30
|
-
padding-#{$from}: $padding-before,
|
31
|
-
padding-#{$to}: $padding-after,
|
32
|
-
);
|
33
|
-
|
34
|
-
@include output($output);
|
35
|
-
}
|
@@ -1,26 +0,0 @@
|
|
1
|
-
// Grid Background API
|
2
|
-
// ===================
|
3
|
-
// - Sub-pixel rounding can lead to several pixels variation between browsers.
|
4
|
-
|
5
|
-
// Grid Background Output
|
6
|
-
// ----------------------
|
7
|
-
// - $image: background-image
|
8
|
-
// - $size: background-size
|
9
|
-
// - $clip: background-clip
|
10
|
-
// - [$flow]: ltr | rtl
|
11
|
-
@mixin background-grid-output (
|
12
|
-
$image,
|
13
|
-
$size: null,
|
14
|
-
$clip: null,
|
15
|
-
$flow: map-get($susy-defaults, flow)
|
16
|
-
) {
|
17
|
-
$output: (
|
18
|
-
background-image: $image,
|
19
|
-
background-size: $size,
|
20
|
-
background-origin: $clip,
|
21
|
-
background-clip: $clip,
|
22
|
-
background-position: from($flow) top,
|
23
|
-
);
|
24
|
-
|
25
|
-
@include output($output);
|
26
|
-
}
|
@@ -1,21 +0,0 @@
|
|
1
|
-
// Shared Container API
|
2
|
-
// ====================
|
3
|
-
|
4
|
-
// Container Output
|
5
|
-
// ----------------
|
6
|
-
// - [$width] : <length>
|
7
|
-
// - [$justify] : left | center | right
|
8
|
-
// - [$math] : fluid | static
|
9
|
-
@mixin container-output(
|
10
|
-
$width,
|
11
|
-
$justify: auto auto,
|
12
|
-
$property: max-width
|
13
|
-
) {
|
14
|
-
$output: (
|
15
|
-
#{$property}: $width or 100%,
|
16
|
-
margin-left: nth($justify, 1),
|
17
|
-
margin-right: nth($justify, 2),
|
18
|
-
);
|
19
|
-
|
20
|
-
@include output($output);
|
21
|
-
}
|
@@ -1,42 +0,0 @@
|
|
1
|
-
// Direction Helpers
|
2
|
-
// =================
|
3
|
-
|
4
|
-
// Susy Flow Defaults
|
5
|
-
// ------------------
|
6
|
-
// - PRIVATE
|
7
|
-
@include susy-defaults((
|
8
|
-
flow: ltr,
|
9
|
-
));
|
10
|
-
|
11
|
-
// Get Direction
|
12
|
-
// -------------
|
13
|
-
// Return the 'from' or 'to' direction of a ltr or rtl flow.
|
14
|
-
// - [$flow] : ltr | rtl
|
15
|
-
// - [$key] : from | to
|
16
|
-
@function get-direction(
|
17
|
-
$flow: map-get($susy-defaults, flow),
|
18
|
-
$key: from
|
19
|
-
) {
|
20
|
-
$return: if($flow == rtl, (from: right, to: left), (from: left, to: right));
|
21
|
-
@return map-get($return, $key);
|
22
|
-
}
|
23
|
-
|
24
|
-
// To
|
25
|
-
// --
|
26
|
-
// Return the 'to' direction of a flow
|
27
|
-
// - [$flow] : ltr | rtl
|
28
|
-
@function to(
|
29
|
-
$flow: map-get($susy-defaults, flow)
|
30
|
-
) {
|
31
|
-
@return get-direction($flow, to);
|
32
|
-
}
|
33
|
-
|
34
|
-
// From
|
35
|
-
// ----
|
36
|
-
// Return the 'from' direction of a flow
|
37
|
-
// - [$flow] : ltr | rtl
|
38
|
-
@function from(
|
39
|
-
$flow: map-get($susy-defaults, flow)
|
40
|
-
) {
|
41
|
-
@return get-direction($flow, from);
|
42
|
-
}
|
@@ -1,25 +0,0 @@
|
|
1
|
-
// Debugging
|
2
|
-
// =========
|
3
|
-
|
4
|
-
// Susy Inspect
|
5
|
-
// ------------
|
6
|
-
// Output arguments passed to a inspect.
|
7
|
-
// - $mixin : <susy mixin>
|
8
|
-
// - $inspec : <mixin arguments>
|
9
|
-
|
10
|
-
@mixin susy-inspect(
|
11
|
-
$mixin,
|
12
|
-
$inspect
|
13
|
-
) {
|
14
|
-
$show: false;
|
15
|
-
|
16
|
-
@each $item in $inspect {
|
17
|
-
@if index($item, inspect) {
|
18
|
-
$show: true;
|
19
|
-
}
|
20
|
-
}
|
21
|
-
|
22
|
-
@if $show or susy-get(debug inspect) {
|
23
|
-
-susy-#{$mixin}: inspect($inspect);
|
24
|
-
}
|
25
|
-
}
|
@@ -1,23 +0,0 @@
|
|
1
|
-
// Margins API
|
2
|
-
// ===========
|
3
|
-
|
4
|
-
// Margin Output
|
5
|
-
// -------------
|
6
|
-
// - $before : <length>
|
7
|
-
// - $after : <length>
|
8
|
-
// - [$flow] : ltr | rtl
|
9
|
-
@mixin margin-output(
|
10
|
-
$before,
|
11
|
-
$after,
|
12
|
-
$flow: map-get($susy-defaults, flow)
|
13
|
-
) {
|
14
|
-
$to: to($flow);
|
15
|
-
$from: from($flow);
|
16
|
-
|
17
|
-
$output: (
|
18
|
-
margin-#{$from}: $before,
|
19
|
-
margin-#{$to}: $after,
|
20
|
-
);
|
21
|
-
|
22
|
-
@include output($output);
|
23
|
-
}
|
@@ -1,14 +0,0 @@
|
|
1
|
-
// Output
|
2
|
-
// ======
|
3
|
-
|
4
|
-
// Output
|
5
|
-
// ------
|
6
|
-
// Output CSS with proper browser support.
|
7
|
-
// - $styles : <map of css property-value pairs>
|
8
|
-
@mixin output(
|
9
|
-
$styles
|
10
|
-
) {
|
11
|
-
@each $prop, $val in $styles {
|
12
|
-
@include susy-support($prop, $val);
|
13
|
-
}
|
14
|
-
}
|
@@ -1,23 +0,0 @@
|
|
1
|
-
// Padding API
|
2
|
-
// ===========
|
3
|
-
|
4
|
-
// Padding Output
|
5
|
-
// --------------
|
6
|
-
// - $before : <length>
|
7
|
-
// - $after : <length>
|
8
|
-
// - [$flow] : ltr | rtl
|
9
|
-
@mixin padding-output(
|
10
|
-
$before,
|
11
|
-
$after,
|
12
|
-
$flow: map-get($susy-defaults, flow)
|
13
|
-
) {
|
14
|
-
$to: to($flow);
|
15
|
-
$from: from($flow);
|
16
|
-
|
17
|
-
$output: (
|
18
|
-
padding-#{$from}: $before,
|
19
|
-
padding-#{$to}: $after,
|
20
|
-
);
|
21
|
-
|
22
|
-
@include output($output);
|
23
|
-
}
|
@@ -1,58 +0,0 @@
|
|
1
|
-
// Background Properties
|
2
|
-
// =====================
|
3
|
-
|
4
|
-
// Susy Background Image
|
5
|
-
// ---------------------
|
6
|
-
// Check for an existing support mixin, or provide a simple fallback.
|
7
|
-
// - $image: <background-image>
|
8
|
-
@mixin susy-background-image(
|
9
|
-
$image
|
10
|
-
) {
|
11
|
-
@if susy-support(background-image, (mixin: background-image), $warn: false) {
|
12
|
-
@include background-image($image...);
|
13
|
-
} @else {
|
14
|
-
background-image: $image;
|
15
|
-
}
|
16
|
-
}
|
17
|
-
|
18
|
-
// Susy Background Size
|
19
|
-
// ---------------------
|
20
|
-
// Check for an existing support mixin, or provide a simple fallback.
|
21
|
-
// - $image: <background-size>
|
22
|
-
@mixin susy-background-size(
|
23
|
-
$size
|
24
|
-
) {
|
25
|
-
@if susy-support(background-options, (mixin: background-size)) {
|
26
|
-
@include background-size($size);
|
27
|
-
} @else {
|
28
|
-
background-size: $size;
|
29
|
-
}
|
30
|
-
}
|
31
|
-
|
32
|
-
// Susy Background Origin
|
33
|
-
// ----------------------
|
34
|
-
// Check for an existing support mixin, or provide a simple fallback.
|
35
|
-
// - $image: <background-origin>
|
36
|
-
@mixin susy-background-origin(
|
37
|
-
$origin
|
38
|
-
) {
|
39
|
-
@if susy-support(background-options, (mixin: background-origin)) {
|
40
|
-
@include background-origin($origin);
|
41
|
-
} @else {
|
42
|
-
background-origin: $origin;
|
43
|
-
}
|
44
|
-
}
|
45
|
-
|
46
|
-
// Susy Background Clip
|
47
|
-
// --------------------
|
48
|
-
// Check for an existing support mixin, or provide a simple fallback.
|
49
|
-
// - $image: <background-clip>
|
50
|
-
@mixin susy-background-clip(
|
51
|
-
$clip
|
52
|
-
) {
|
53
|
-
@if susy-support(background-options, (mixin: background-clip)) {
|
54
|
-
@include background-clip($clip);
|
55
|
-
} @else {
|
56
|
-
background-clip: $clip;
|
57
|
-
}
|
58
|
-
}
|
@@ -1,19 +0,0 @@
|
|
1
|
-
// Box Sizing
|
2
|
-
// ==========
|
3
|
-
|
4
|
-
// Box Sizing
|
5
|
-
// ----------
|
6
|
-
// Check for an existing support mixin, or provide a simple fallback.
|
7
|
-
// - $model: <box-sizing>
|
8
|
-
@mixin susy-box-sizing(
|
9
|
-
$model: content-box
|
10
|
-
) {
|
11
|
-
@if $model {
|
12
|
-
@if susy-support(box-sizing, (mixin: box-sizing), $warn: false) {
|
13
|
-
@include box-sizing($model);
|
14
|
-
} @else {
|
15
|
-
$prefix: (moz, webkit, official);
|
16
|
-
@include susy-prefix(box-sizing, $model, $prefix);
|
17
|
-
}
|
18
|
-
}
|
19
|
-
}
|
@@ -1,18 +0,0 @@
|
|
1
|
-
// Susy Fallback Clearfix
|
2
|
-
// ======================
|
3
|
-
|
4
|
-
|
5
|
-
// Clearfix
|
6
|
-
// --------
|
7
|
-
// Check for an existing support mixin, or provide a simple fallback.
|
8
|
-
@mixin susy-clearfix {
|
9
|
-
@if susy-support(clearfix, (mixin: clearfix)) {
|
10
|
-
@include clearfix;
|
11
|
-
} @else {
|
12
|
-
&:after {
|
13
|
-
content: " ";
|
14
|
-
display: block;
|
15
|
-
clear: both;
|
16
|
-
}
|
17
|
-
}
|
18
|
-
}
|
@@ -1,19 +0,0 @@
|
|
1
|
-
// Susy Prefix
|
2
|
-
// ===========
|
3
|
-
|
4
|
-
// Prefix
|
5
|
-
// ------
|
6
|
-
// Output simple prefixed properties.
|
7
|
-
// - $prop : <css property>
|
8
|
-
// - $val : <css value>
|
9
|
-
// - [$prefix] : <browser prefix list>
|
10
|
-
@mixin susy-prefix(
|
11
|
-
$prop,
|
12
|
-
$val,
|
13
|
-
$prefix: official
|
14
|
-
) {
|
15
|
-
@each $fix in $prefix {
|
16
|
-
$fix: if($fix == official or not($fix), $prop, '-#{$fix}-#{$prop}');
|
17
|
-
@include susy-rem($fix, $val);
|
18
|
-
}
|
19
|
-
}
|
@@ -1,22 +0,0 @@
|
|
1
|
-
// rem Support
|
2
|
-
// ===========
|
3
|
-
|
4
|
-
// rem
|
5
|
-
// ---
|
6
|
-
// Check for an existing support mixin, or output directly.
|
7
|
-
// - $prop : <css property>
|
8
|
-
// - $val : <css value>
|
9
|
-
@mixin susy-rem(
|
10
|
-
$prop,
|
11
|
-
$val
|
12
|
-
) {
|
13
|
-
$_reqs: (
|
14
|
-
variable: rhythm-unit rem-with-px-fallback,
|
15
|
-
mixin: rem,
|
16
|
-
);
|
17
|
-
@if susy-support(rem, $_reqs, $warn: false) and $rhythm-unit == rem {
|
18
|
-
@include rem($prop, $val);
|
19
|
-
} @else {
|
20
|
-
#{$prop}: $val;
|
21
|
-
}
|
22
|
-
}
|
@@ -1,95 +0,0 @@
|
|
1
|
-
// Browser Support
|
2
|
-
// ===============
|
3
|
-
|
4
|
-
// Susy Support Defaults
|
5
|
-
// ---------------------
|
6
|
-
@include susy-defaults((
|
7
|
-
use-custom: (
|
8
|
-
clearfix: false,
|
9
|
-
background-image: true,
|
10
|
-
background-options: false,
|
11
|
-
breakpoint: true,
|
12
|
-
box-sizing: true,
|
13
|
-
rem: true,
|
14
|
-
),
|
15
|
-
));
|
16
|
-
|
17
|
-
|
18
|
-
// Susy Support [mixin]
|
19
|
-
// --------------------
|
20
|
-
// Send property-value pairs to the proper support modules.
|
21
|
-
// - $prop : <css property>
|
22
|
-
// - $val : <css value>
|
23
|
-
@mixin susy-support(
|
24
|
-
$prop,
|
25
|
-
$val
|
26
|
-
) {
|
27
|
-
// Background Support
|
28
|
-
@if $prop == background-image {
|
29
|
-
@include susy-background-image($val);
|
30
|
-
} @else if $prop == background-size {
|
31
|
-
@include susy-background-size($val);
|
32
|
-
} @else if $prop == background-origin {
|
33
|
-
@include susy-background-origin($val);
|
34
|
-
} @else if $prop == background-clip {
|
35
|
-
@include susy-background-clip($val);
|
36
|
-
}
|
37
|
-
|
38
|
-
// Box-Sizing Support
|
39
|
-
@else if $prop == box-sizing {
|
40
|
-
@include susy-box-sizing($val);
|
41
|
-
}
|
42
|
-
|
43
|
-
// Rem Support
|
44
|
-
@else {
|
45
|
-
@include susy-rem($prop, $val);
|
46
|
-
}
|
47
|
-
}
|
48
|
-
|
49
|
-
|
50
|
-
// Susy Support [function]
|
51
|
-
// -----------------------
|
52
|
-
// Check for support of a feature.
|
53
|
-
// - $feature : <string>
|
54
|
-
// - e.g "rem" or "box-sizing"
|
55
|
-
// - $requirements : <map>
|
56
|
-
// - e.g (variable: rem-with-px-fallback, mixin: rem)
|
57
|
-
// - $warn : <bool>
|
58
|
-
@function susy-support(
|
59
|
-
$feature,
|
60
|
-
$requirements: (),
|
61
|
-
$warn: true
|
62
|
-
) {
|
63
|
-
$_support: susy-get(use-custom $feature);
|
64
|
-
|
65
|
-
@if $_support {
|
66
|
-
$_fail: false;
|
67
|
-
|
68
|
-
@each $_type, $_req in $requirements {
|
69
|
-
@each $_i in $_req {
|
70
|
-
|
71
|
-
$_pass : null;
|
72
|
-
|
73
|
-
// sass 3.5 or greater
|
74
|
-
@if function-exists('get-function') {
|
75
|
-
$_pass: call(get-function(unquote("#{$_type}-exists")), $_i);
|
76
|
-
}
|
77
|
-
// sass 3.4 or less
|
78
|
-
@else {
|
79
|
-
$_pass: call(unquote("#{$_type}-exists"), $_i);
|
80
|
-
}
|
81
|
-
|
82
|
-
@if not($_pass) {
|
83
|
-
$_fail: true;
|
84
|
-
@if $warn {
|
85
|
-
@warn "You requested custom support of #{$feature}, but the #{$_i} #{$_type} is not available.";
|
86
|
-
}
|
87
|
-
}
|
88
|
-
}
|
89
|
-
}
|
90
|
-
|
91
|
-
$_support: if($_fail, false, $_support);
|
92
|
-
}
|
93
|
-
|
94
|
-
@return $_support;
|
95
|
-
}
|