sass-color-schemes 0.2.0 → 0.3.0

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: c45992fb58c248552b0e307edb7bb64adf379a5e
4
- data.tar.gz: 7c9f0cd191151f4b9da95f454e635ae8b3b8f672
3
+ metadata.gz: 602932356004da4a84eb9afb690a0ffe090ffa6e
4
+ data.tar.gz: 34a40ee6445ef408e7db31a9711bd26196bd0957
5
5
  SHA512:
6
- metadata.gz: f8a9be5b1d5e0c47c6a2fdfc80c4e7d6eb98863a1934815464fc5396cc8d1459c05eeb3e1349ce9de9485614c6073f8065b95d6ce36e0c9c87391f8c35f8bc39
7
- data.tar.gz: 575990604cea78ccd5f9fbb477f6d21a165e98f164c566ee12e7961546b688eea13521701170dfd4d9454c38766b0a015a9fd6fb40b41e3cd3aa638786ff9b78
6
+ metadata.gz: 2aaa6871fa8e8e4f7a4c8c5119d483d1005406df13a6566d44580ac0fabff44f5ff00ab1537d129c08132aa75064928094217b03d9e1f75ce5976de3c70e633b
7
+ data.tar.gz: 392d9a4c3187aaa4957dd865a5265c5b5c356b4f9647af2ea688d695d56f71c38656948b6f28635a136fa277931e00ce8e32b9138275d5c350a099f6a5a49a0c
data/README.md CHANGED
@@ -249,6 +249,36 @@ $sass-color-schemes: (
249
249
 
250
250
  ```
251
251
 
252
+ ### Test your color scheme
253
+
254
+ The `scs-test` mixin adds a bar to the top of your page displaying all the colors that your color scheme provides:
255
+
256
+ ```
257
+ $sass-color-schemes: (
258
+ base-color: #2980B9,
259
+ variation: 'tetrad'
260
+ );
261
+
262
+ @include scs-test;
263
+ ```
264
+
265
+ ![image](img/scss-test.png)
266
+
267
+ `scs-test` accepts the following arguments:
268
+
269
+ #### `$height`
270
+
271
+ The height of the colored bar.
272
+
273
+ Defaults to `2em`.
274
+
275
+ #### `$selector`
276
+
277
+ The selector that will contain the colored bar.
278
+
279
+ Defaults to `body::after`.
280
+
281
+
252
282
  ### Full example
253
283
 
254
284
  ```
@@ -1,94 +1,4 @@
1
- @function primary-colors() {
2
- @return _compose-shades(_base-color());
3
- }
1
+ @import './mixins/getters';
2
+ @import './mixins/colors';
3
+ @import './mixins/sample';
4
4
 
5
- @function complement-colors() {
6
- @if (_complement() == false) and (_scheme() != 'tetrad') {
7
- @return _empty-array();
8
- }
9
-
10
- @return _compose-color(180);
11
- }
12
-
13
- @function secondary-1-colors() {
14
- @if (_scheme() == 'triad') {
15
- @return _compose-color(180 - _angle());
16
- } @else if (_scheme() == 'adjacent') or (_scheme() == 'tetrad') {
17
- @return _compose-color(_angle());
18
- } @else {
19
- @return _empty-array();
20
- }
21
- }
22
-
23
- @function secondary-2-colors() {
24
- @if (_scheme() == 'triad') or (_scheme() == 'tetrad') {
25
- @return _compose-color(180 + _angle());
26
- } @else if (_scheme() == 'adjacent') {
27
- @return _compose-color(-_angle());
28
- } @else {
29
- @return _empty-array();
30
- }
31
- }
32
-
33
- @function _compose-color($angle) {
34
- $color: _adjust-hue($angle);
35
- @return _compose-shades($color);
36
- }
37
-
38
- @function _adjust-hue($angle) {
39
- @return if(_mode() == 'ryb', ryb-adjust-hue(_base-color(), $angle), adjust-hue(_base-color(), $angle));
40
- }
41
-
42
- @function _compose-shades($color) {
43
- $shades: map-get($_scs-variations, _variation());
44
-
45
- $colors: ();
46
- @for $i from 1 through 5 {
47
- $colors: append($colors, _adjust-color($color, $shades, $i));
48
- }
49
- @return $colors;
50
- }
51
-
52
- @function _adjust-color($base-color, $shades, $n) {
53
- $sval: percentage(nth(nth($shades, $n), 1))/100;
54
- $lval: percentage(nth(nth($shades, $n), 2))/100;
55
- $color: scale-color($base-color, $saturation: $sval, $lightness: $lval);
56
-
57
- @return $color;
58
- }
59
-
60
- @function _empty-array() {
61
- $arr: ();
62
- @for $i from 1 through 5 {
63
- $arr: append($arr, null);
64
- }
65
- @return $arr;
66
- }
67
-
68
- @function _base-color() {
69
- @return _fetch('base-color', $_scs-base-color);
70
- }
71
-
72
- @function _variation() {
73
- @return _fetch('variation', $_scs-variation);
74
- }
75
-
76
- @function _scheme() {
77
- @return _fetch('scheme', $_scs-scheme);
78
- }
79
-
80
- @function _mode() {
81
- @return _fetch('mode', $_scs-mode);
82
- }
83
-
84
- @function _angle() {
85
- @return _fetch('angle', $_scs-angle);
86
- }
87
-
88
- @function _complement() {
89
- @return _fetch('complement', $_scs-complement);
90
- }
91
-
92
- @function _fetch($key, $default) {
93
- @return if(map-has-key($sass-color-schemes, $key), map-get($sass-color-schemes, $key), $default);
94
- }
@@ -0,0 +1,66 @@
1
+ @function primary-colors() {
2
+ @return _compose-shades(_base-color());
3
+ }
4
+
5
+ @function complement-colors() {
6
+ @if (_complement() == false) and (_scheme() != 'tetrad') {
7
+ @return _empty-array();
8
+ }
9
+
10
+ @return _compose-color(180);
11
+ }
12
+
13
+ @function secondary-1-colors() {
14
+ @if (_scheme() == 'triad') {
15
+ @return _compose-color(180 - _angle());
16
+ } @else if (_scheme() == 'adjacent') or (_scheme() == 'tetrad') {
17
+ @return _compose-color(_angle());
18
+ } @else {
19
+ @return _empty-array();
20
+ }
21
+ }
22
+
23
+ @function secondary-2-colors() {
24
+ @if (_scheme() == 'triad') or (_scheme() == 'tetrad') {
25
+ @return _compose-color(180 + _angle());
26
+ } @else if (_scheme() == 'adjacent') {
27
+ @return _compose-color(-_angle());
28
+ } @else {
29
+ @return _empty-array();
30
+ }
31
+ }
32
+
33
+ @function _compose-color($angle) {
34
+ $color: _adjust-hue($angle);
35
+ @return _compose-shades($color);
36
+ }
37
+
38
+ @function _adjust-hue($angle) {
39
+ @return if(_mode() == 'ryb', ryb-adjust-hue(_base-color(), $angle), adjust-hue(_base-color(), $angle));
40
+ }
41
+
42
+ @function _compose-shades($color) {
43
+ $shades: map-get($_scs-variations, _variation());
44
+
45
+ $colors: ();
46
+ @for $i from 1 through 5 {
47
+ $colors: append($colors, _adjust-color($color, $shades, $i));
48
+ }
49
+ @return $colors;
50
+ }
51
+
52
+ @function _adjust-color($base-color, $shades, $n) {
53
+ $sval: percentage(nth(nth($shades, $n), 1))/100;
54
+ $lval: percentage(nth(nth($shades, $n), 2))/100;
55
+ $color: scale-color($base-color, $saturation: $sval, $lightness: $lval);
56
+
57
+ @return $color;
58
+ }
59
+
60
+ @function _empty-array() {
61
+ $arr: ();
62
+ @for $i from 1 through 5 {
63
+ $arr: append($arr, null);
64
+ }
65
+ @return $arr;
66
+ }
@@ -0,0 +1,27 @@
1
+ @function _base-color() {
2
+ @return _fetch('base-color', $_scs-base-color);
3
+ }
4
+
5
+ @function _variation() {
6
+ @return _fetch('variation', $_scs-variation);
7
+ }
8
+
9
+ @function _scheme() {
10
+ @return _fetch('scheme', $_scs-scheme);
11
+ }
12
+
13
+ @function _mode() {
14
+ @return _fetch('mode', $_scs-mode);
15
+ }
16
+
17
+ @function _angle() {
18
+ @return _fetch('angle', $_scs-angle);
19
+ }
20
+
21
+ @function _complement() {
22
+ @return _fetch('complement', $_scs-complement);
23
+ }
24
+
25
+ @function _fetch($key, $default) {
26
+ @return if(map-has-key($sass-color-schemes, $key), map-get($sass-color-schemes, $key), $default);
27
+ }
@@ -0,0 +1,29 @@
1
+ @mixin scs-test($height: 2em, $element: 'body:before') {
2
+ $colors: primary-colors();
3
+ $colors: join($colors, compact(complement-colors()));
4
+ $colors: join($colors, compact(secondary-1-colors()));
5
+ $colors: join($colors, compact(secondary-2-colors()));
6
+
7
+ #{$element} {
8
+ content: "";
9
+ display: block;
10
+ height: $height;
11
+ @include background(_scs-stripes(left, ($colors)));
12
+ position: relative;
13
+ z-index: 999999999999;
14
+ @include box-shadow(rgba(black, 0.23) 0 3px 10px, rgba(black, 0.16) 0 3px 10px);
15
+ }
16
+ };
17
+
18
+ @function _scs-stripes($position, $colors) {
19
+ $gradient: ();
20
+ $width: 100% / length($colors);
21
+
22
+ @for $i from 1 through length($colors) {
23
+ $pop: nth($colors,$i);
24
+ $new: $pop ($width * ($i - 1)), $pop ($width * $i);
25
+ $gradient: join($gradient, $new, comma);
26
+ }
27
+
28
+ @return linear-gradient($position, $gradient);
29
+ };
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: sass-color-schemes
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.0
4
+ version: 0.3.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Patrick Baselier
@@ -52,6 +52,9 @@ files:
52
52
  - stylesheets/_mixins.scss
53
53
  - stylesheets/_sass-color-schemes.scss
54
54
  - stylesheets/_variables.scss
55
+ - stylesheets/mixins/_colors.scss
56
+ - stylesheets/mixins/_getters.scss
57
+ - stylesheets/mixins/_sample.scss
55
58
  - templates/project/manifest.rb
56
59
  - templates/project/screen.scss
57
60
  homepage: https://github.com/bazzel/sass-color-schemes