SassyJSON 1.1.1 → 1.1.2
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 +7 -0
- data/CHANGELOG.md +18 -18
- data/README.md +112 -112
- data/lib/JsonImporter.rb +228 -228
- data/lib/SassyJSON.rb +12 -14
- data/stylesheets/SassyJSON.scss +5 -5
- data/stylesheets/decode/api/_json.scss +26 -26
- data/stylesheets/decode/decode.scss +28 -28
- data/stylesheets/decode/helpers/all/_throw.scss +11 -11
- data/stylesheets/decode/helpers/all/_value.scss +49 -49
- data/stylesheets/decode/helpers/color/_color.scss +50 -50
- data/stylesheets/decode/helpers/color/_get-color-value.scss +22 -22
- data/stylesheets/decode/helpers/color/_hex-to-dec.scss +19 -19
- data/stylesheets/decode/helpers/color/_hex.scss +39 -39
- data/stylesheets/decode/helpers/color/_hsl.scss +46 -46
- data/stylesheets/decode/helpers/color/_rgb.scss +46 -46
- data/stylesheets/decode/helpers/map/_consume.scss +33 -33
- data/stylesheets/decode/helpers/number/_find-digits.scss +39 -39
- data/stylesheets/decode/helpers/number/_find-exponent.scss +51 -51
- data/stylesheets/decode/helpers/number/_find-integer.scss +37 -37
- data/stylesheets/decode/helpers/number/_pow.scss +22 -22
- data/stylesheets/decode/helpers/string/_find-ending-quote.scss +57 -57
- data/stylesheets/decode/helpers/string/_length.scss +42 -42
- data/stylesheets/decode/helpers/string/_strip-token.scss +16 -16
- data/stylesheets/decode/types/_bool.scss +40 -40
- data/stylesheets/decode/types/_list.scss +54 -54
- data/stylesheets/decode/types/_map.scss +78 -78
- data/stylesheets/decode/types/_null.scss +19 -19
- data/stylesheets/decode/types/_number.scss +63 -63
- data/stylesheets/decode/types/_string.scss +41 -41
- data/stylesheets/encode/api/_json.scss +17 -17
- data/stylesheets/encode/encode.scss +17 -17
- data/stylesheets/encode/helpers/_quote.scss +9 -9
- data/stylesheets/encode/mixins/_json.scss +36 -36
- data/stylesheets/encode/types/_bool.scss +9 -9
- data/stylesheets/encode/types/_color.scss +9 -9
- data/stylesheets/encode/types/_list.scss +13 -13
- data/stylesheets/encode/types/_map.scss +13 -13
- data/stylesheets/encode/types/_null.scss +9 -9
- data/stylesheets/encode/types/_number.scss +9 -9
- data/stylesheets/encode/types/_string.scss +9 -9
- metadata +8 -10
@@ -1,78 +1,78 @@
|
|
1
|
-
// Parses a JSON encoded object
|
2
|
-
// --------------------------------------------------------------------------------
|
3
|
-
// @param [string] $source: JSON complete source
|
4
|
-
// @param [number] $pointer: current pointer
|
5
|
-
// --------------------------------------------------------------------------------
|
6
|
-
// @throw "Unexpected comma in object literal."
|
7
|
-
// @throw "Unexpected token $token in object literal."
|
8
|
-
// @throw "Missing comma in object literal."
|
9
|
-
// @throw "Unterminated object literal."
|
10
|
-
// @throw "Consuming token `:` failed."
|
11
|
-
// --------------------------------------------------------------------------------
|
12
|
-
// @return [list|false] (new pointer, map)
|
13
|
-
|
14
|
-
@function _json-decode--map($source, $pointer) {
|
15
|
-
$length: str-length($source);
|
16
|
-
$map: ();
|
17
|
-
$needs-comma: false;
|
18
|
-
|
19
|
-
// Deal with empty map
|
20
|
-
@if $pointer <= $length and str-slice($source, $pointer, $pointer) == "}" {
|
21
|
-
@return ($pointer + 1, $map);
|
22
|
-
}
|
23
|
-
|
24
|
-
@while $pointer <= $length {
|
25
|
-
$token: str-slice($source, $pointer, $pointer);
|
26
|
-
$pointer: $pointer + 1;
|
27
|
-
|
28
|
-
@if $token == "}" {
|
29
|
-
@if not $needs-comma and length($map) != 0 {
|
30
|
-
@return _throw("Unexpected comma in object literal.", $pointer);
|
31
|
-
}
|
32
|
-
@return ($pointer, $map);
|
33
|
-
}
|
34
|
-
|
35
|
-
@else if $token == " " {
|
36
|
-
// @continue;
|
37
|
-
}
|
38
|
-
|
39
|
-
@else if $token == "," {
|
40
|
-
@if not $needs-comma {
|
41
|
-
@return _throw("Unexpected comma in object literal.", $pointer);
|
42
|
-
}
|
43
|
-
$needs-comma: false;
|
44
|
-
}
|
45
|
-
|
46
|
-
@else if $token == '"' {
|
47
|
-
@if $needs-comma {
|
48
|
-
@return _throw("Missing comma in object literal.", $pointer);
|
49
|
-
}
|
50
|
-
|
51
|
-
// Read key
|
52
|
-
$read-key: _json-decode--string($source, $pointer);
|
53
|
-
$pointer: nth($read-key, 1);
|
54
|
-
$key: nth($read-key, 2);
|
55
|
-
|
56
|
-
// Remove colon
|
57
|
-
$pointer: _consume($source, $pointer, ":");
|
58
|
-
@if length($pointer) > 1 { // If consume has failed
|
59
|
-
@return _throw("Consuming token `:` failed.", 0);
|
60
|
-
}
|
61
|
-
|
62
|
-
// Read value
|
63
|
-
$read-value: _json-decode--value($source, $pointer);
|
64
|
-
$pointer: nth($read-value, 1);
|
65
|
-
$value: nth($read-value, 2);
|
66
|
-
|
67
|
-
// Add pair to map
|
68
|
-
$map: map-merge($map, ($key: $value));
|
69
|
-
$needs-comma: true;
|
70
|
-
}
|
71
|
-
|
72
|
-
@else {
|
73
|
-
@return _throw("Unexpected token `" + $token + "` in object literal.", $pointer);
|
74
|
-
}
|
75
|
-
}
|
76
|
-
|
77
|
-
@return _throw("Unterminated object literal.", $pointer);
|
78
|
-
}
|
1
|
+
// Parses a JSON encoded object
|
2
|
+
// --------------------------------------------------------------------------------
|
3
|
+
// @param [string] $source: JSON complete source
|
4
|
+
// @param [number] $pointer: current pointer
|
5
|
+
// --------------------------------------------------------------------------------
|
6
|
+
// @throw "Unexpected comma in object literal."
|
7
|
+
// @throw "Unexpected token $token in object literal."
|
8
|
+
// @throw "Missing comma in object literal."
|
9
|
+
// @throw "Unterminated object literal."
|
10
|
+
// @throw "Consuming token `:` failed."
|
11
|
+
// --------------------------------------------------------------------------------
|
12
|
+
// @return [list|false] (new pointer, map)
|
13
|
+
|
14
|
+
@function _json-decode--map($source, $pointer) {
|
15
|
+
$length: str-length($source);
|
16
|
+
$map: ();
|
17
|
+
$needs-comma: false;
|
18
|
+
|
19
|
+
// Deal with empty map
|
20
|
+
@if $pointer <= $length and str-slice($source, $pointer, $pointer) == "}" {
|
21
|
+
@return ($pointer + 1, $map);
|
22
|
+
}
|
23
|
+
|
24
|
+
@while $pointer <= $length {
|
25
|
+
$token: str-slice($source, $pointer, $pointer);
|
26
|
+
$pointer: $pointer + 1;
|
27
|
+
|
28
|
+
@if $token == "}" {
|
29
|
+
@if not $needs-comma and length($map) != 0 {
|
30
|
+
@return _throw("Unexpected comma in object literal.", $pointer);
|
31
|
+
}
|
32
|
+
@return ($pointer, $map);
|
33
|
+
}
|
34
|
+
|
35
|
+
@else if $token == " " {
|
36
|
+
// @continue;
|
37
|
+
}
|
38
|
+
|
39
|
+
@else if $token == "," {
|
40
|
+
@if not $needs-comma {
|
41
|
+
@return _throw("Unexpected comma in object literal.", $pointer);
|
42
|
+
}
|
43
|
+
$needs-comma: false;
|
44
|
+
}
|
45
|
+
|
46
|
+
@else if $token == '"' {
|
47
|
+
@if $needs-comma {
|
48
|
+
@return _throw("Missing comma in object literal.", $pointer);
|
49
|
+
}
|
50
|
+
|
51
|
+
// Read key
|
52
|
+
$read-key: _json-decode--string($source, $pointer);
|
53
|
+
$pointer: nth($read-key, 1);
|
54
|
+
$key: nth($read-key, 2);
|
55
|
+
|
56
|
+
// Remove colon
|
57
|
+
$pointer: _consume($source, $pointer, ":");
|
58
|
+
@if length($pointer) > 1 { // If consume has failed
|
59
|
+
@return _throw("Consuming token `:` failed.", 0);
|
60
|
+
}
|
61
|
+
|
62
|
+
// Read value
|
63
|
+
$read-value: _json-decode--value($source, $pointer);
|
64
|
+
$pointer: nth($read-value, 1);
|
65
|
+
$value: nth($read-value, 2);
|
66
|
+
|
67
|
+
// Add pair to map
|
68
|
+
$map: map-merge($map, ($key: $value));
|
69
|
+
$needs-comma: true;
|
70
|
+
}
|
71
|
+
|
72
|
+
@else {
|
73
|
+
@return _throw("Unexpected token `" + $token + "` in object literal.", $pointer);
|
74
|
+
}
|
75
|
+
}
|
76
|
+
|
77
|
+
@return _throw("Unterminated object literal.", $pointer);
|
78
|
+
}
|
@@ -1,19 +1,19 @@
|
|
1
|
-
// Parses a JSON encoded `null`
|
2
|
-
// --------------------------------------------------------------------------------
|
3
|
-
// @param [string] $source: JSON complete source
|
4
|
-
// @param [number] $pointer: current pointer
|
5
|
-
// --------------------------------------------------------------------------------
|
6
|
-
// @throw "Unexpected token `n`."
|
7
|
-
// --------------------------------------------------------------------------------
|
8
|
-
// @return [list|false] (new pointer, null)
|
9
|
-
|
10
|
-
@function _json-decode--null($source, $pointer) {
|
11
|
-
$length: str-length($source);
|
12
|
-
@if $length - $pointer < 2
|
13
|
-
or str-slice($source, $pointer, $pointer) != 'u'
|
14
|
-
or str-slice($source, $pointer + 1, $pointer + 1) != 'l'
|
15
|
-
or str-slice($source, $pointer + 2, $pointer + 2) != 'l' {
|
16
|
-
@return _throw("Unexpected token: `n`.", $pointer);
|
17
|
-
}
|
18
|
-
@return ($pointer + 3, null);
|
19
|
-
}
|
1
|
+
// Parses a JSON encoded `null`
|
2
|
+
// --------------------------------------------------------------------------------
|
3
|
+
// @param [string] $source: JSON complete source
|
4
|
+
// @param [number] $pointer: current pointer
|
5
|
+
// --------------------------------------------------------------------------------
|
6
|
+
// @throw "Unexpected token `n`."
|
7
|
+
// --------------------------------------------------------------------------------
|
8
|
+
// @return [list|false] (new pointer, null)
|
9
|
+
|
10
|
+
@function _json-decode--null($source, $pointer) {
|
11
|
+
$length: str-length($source);
|
12
|
+
@if $length - $pointer < 2
|
13
|
+
or str-slice($source, $pointer, $pointer) != 'u'
|
14
|
+
or str-slice($source, $pointer + 1, $pointer + 1) != 'l'
|
15
|
+
or str-slice($source, $pointer + 2, $pointer + 2) != 'l' {
|
16
|
+
@return _throw("Unexpected token: `n`.", $pointer);
|
17
|
+
}
|
18
|
+
@return ($pointer + 3, null);
|
19
|
+
}
|
@@ -1,63 +1,63 @@
|
|
1
|
-
// Parses a JSON encoded number
|
2
|
-
// --------------------------------------------------------------------------------
|
3
|
-
// @param [string] $source: JSON complete source
|
4
|
-
// @param [number] $pointer: current pointer
|
5
|
-
// --------------------------------------------------------------------------------
|
6
|
-
// @throw "Unexpected token $token."
|
7
|
-
// @throw "Unexpected end of stream."
|
8
|
-
// --------------------------------------------------------------------------------
|
9
|
-
// @return [list|false] (new pointer, parsed number)
|
10
|
-
|
11
|
-
@function _json-decode--number($source, $pointer) {
|
12
|
-
$pointer: $pointer - 1; // Move back pointer to begininng of number
|
13
|
-
$allowed: '-' '0' '1' '2' '3' '4' '5' '6' '7' '8' '9'; // Allowed characted to start with
|
14
|
-
$first: str-slice($source, $pointer, $pointer); // First character of the number
|
15
|
-
$minus: $first == '-'; // Is it negative?
|
16
|
-
|
17
|
-
// Early check for errors
|
18
|
-
@if not index($allowed, $first) {
|
19
|
-
@return _throw("Unexpected token `" + $first + "`.", $pointer);
|
20
|
-
}
|
21
|
-
|
22
|
-
// Find the integer part
|
23
|
-
$find-integer: _find-integer($source, $pointer);
|
24
|
-
$pointer: nth($find-integer, 1);
|
25
|
-
$result: nth($find-integer, 2);
|
26
|
-
@if not $result { // Error occured
|
27
|
-
@return $find-integer;
|
28
|
-
}
|
29
|
-
|
30
|
-
// Find digits
|
31
|
-
@if str-slice($source, $pointer, $pointer) == '.' {
|
32
|
-
$find-digits: _find-digits($source, $pointer);
|
33
|
-
$pointer: nth($find-digits, 1);
|
34
|
-
$digits: nth($find-digits, 2);
|
35
|
-
|
36
|
-
@if $digits == null { // Empty digits, throw error
|
37
|
-
@return _throw("Unexpected end of stream.", $pointer);
|
38
|
-
}
|
39
|
-
@else if $digits == false { // Error occured, return it
|
40
|
-
@return $find-digits;
|
41
|
-
}
|
42
|
-
|
43
|
-
$result: $result + $digits;
|
44
|
-
}
|
45
|
-
|
46
|
-
// Find exponent
|
47
|
-
@if to-lower-case(str-slice($source, $pointer, $pointer)) == 'e' {
|
48
|
-
$find-exponent: _find-exponent($source, $pointer);
|
49
|
-
$pointer: nth($find-exponent, 1);
|
50
|
-
$exponent: nth($find-exponent, 2);
|
51
|
-
|
52
|
-
@if $exponent == null { // Empty exponent, throw error
|
53
|
-
@return _throw("Unexpected end of stream.", $pointer);
|
54
|
-
}
|
55
|
-
@else if $exponent == false { // Error occured, return it
|
56
|
-
@return $find-exponent;
|
57
|
-
}
|
58
|
-
|
59
|
-
$result: $result * _pow(10, $exponent);
|
60
|
-
}
|
61
|
-
|
62
|
-
@return ($pointer, if($minus, $result * -1, $result));
|
63
|
-
}
|
1
|
+
// Parses a JSON encoded number
|
2
|
+
// --------------------------------------------------------------------------------
|
3
|
+
// @param [string] $source: JSON complete source
|
4
|
+
// @param [number] $pointer: current pointer
|
5
|
+
// --------------------------------------------------------------------------------
|
6
|
+
// @throw "Unexpected token $token."
|
7
|
+
// @throw "Unexpected end of stream."
|
8
|
+
// --------------------------------------------------------------------------------
|
9
|
+
// @return [list|false] (new pointer, parsed number)
|
10
|
+
|
11
|
+
@function _json-decode--number($source, $pointer) {
|
12
|
+
$pointer: $pointer - 1; // Move back pointer to begininng of number
|
13
|
+
$allowed: '-' '0' '1' '2' '3' '4' '5' '6' '7' '8' '9'; // Allowed characted to start with
|
14
|
+
$first: str-slice($source, $pointer, $pointer); // First character of the number
|
15
|
+
$minus: $first == '-'; // Is it negative?
|
16
|
+
|
17
|
+
// Early check for errors
|
18
|
+
@if not index($allowed, $first) {
|
19
|
+
@return _throw("Unexpected token `" + $first + "`.", $pointer);
|
20
|
+
}
|
21
|
+
|
22
|
+
// Find the integer part
|
23
|
+
$find-integer: _find-integer($source, $pointer);
|
24
|
+
$pointer: nth($find-integer, 1);
|
25
|
+
$result: nth($find-integer, 2);
|
26
|
+
@if not $result { // Error occured
|
27
|
+
@return $find-integer;
|
28
|
+
}
|
29
|
+
|
30
|
+
// Find digits
|
31
|
+
@if str-slice($source, $pointer, $pointer) == '.' {
|
32
|
+
$find-digits: _find-digits($source, $pointer);
|
33
|
+
$pointer: nth($find-digits, 1);
|
34
|
+
$digits: nth($find-digits, 2);
|
35
|
+
|
36
|
+
@if $digits == null { // Empty digits, throw error
|
37
|
+
@return _throw("Unexpected end of stream.", $pointer);
|
38
|
+
}
|
39
|
+
@else if $digits == false { // Error occured, return it
|
40
|
+
@return $find-digits;
|
41
|
+
}
|
42
|
+
|
43
|
+
$result: $result + $digits;
|
44
|
+
}
|
45
|
+
|
46
|
+
// Find exponent
|
47
|
+
@if to-lower-case(str-slice($source, $pointer, $pointer)) == 'e' {
|
48
|
+
$find-exponent: _find-exponent($source, $pointer);
|
49
|
+
$pointer: nth($find-exponent, 1);
|
50
|
+
$exponent: nth($find-exponent, 2);
|
51
|
+
|
52
|
+
@if $exponent == null { // Empty exponent, throw error
|
53
|
+
@return _throw("Unexpected end of stream.", $pointer);
|
54
|
+
}
|
55
|
+
@else if $exponent == false { // Error occured, return it
|
56
|
+
@return $find-exponent;
|
57
|
+
}
|
58
|
+
|
59
|
+
$result: $result * _pow(10, $exponent);
|
60
|
+
}
|
61
|
+
|
62
|
+
@return ($pointer, if($minus, $result * -1, $result));
|
63
|
+
}
|
@@ -1,41 +1,41 @@
|
|
1
|
-
// Parses a JSON encoded string
|
2
|
-
// --------------------------------------------------------------------------------
|
3
|
-
// @param [string] $source: JSON complete source
|
4
|
-
// @param [number] $pointer: current pointer
|
5
|
-
// --------------------------------------------------------------------------------
|
6
|
-
// @throw "Unterminated string."
|
7
|
-
// --------------------------------------------------------------------------------
|
8
|
-
// @return [list|false] (new pointer, parsed string / color / length)
|
9
|
-
|
10
|
-
@function _json-decode--string($source, $pointer) {
|
11
|
-
// Check for the end of the string
|
12
|
-
$temp: str-slice($source, $pointer);
|
13
|
-
$end: _find-ending-quote($temp);
|
14
|
-
$string: "";
|
15
|
-
|
16
|
-
// If no end is found
|
17
|
-
@if not $end or $end == 0 {
|
18
|
-
@return _throw("Unterminated string.", $pointer);
|
19
|
-
}
|
20
|
-
|
21
|
-
// If string is not empty
|
22
|
-
@else if $end > 1 {
|
23
|
-
$string: str-slice($temp, 1, $end - 1);
|
24
|
-
|
25
|
-
$cr: "
|
26
|
-
";
|
27
|
-
$string: _strip-token($string, "\r", $cr);
|
28
|
-
$string: _strip-token($string, "\n", $cr);
|
29
|
-
$string: _strip-token($string, '\\\"', '"');
|
30
|
-
|
31
|
-
// Test whether the string could be a CSS length
|
32
|
-
$string: _length($string);
|
33
|
-
|
34
|
-
// Test whether the string could be a CSS color
|
35
|
-
@if type-of($string) == string {
|
36
|
-
$string: _color($string);
|
37
|
-
}
|
38
|
-
}
|
39
|
-
|
40
|
-
@return ($pointer + $end, $string);
|
41
|
-
}
|
1
|
+
// Parses a JSON encoded string
|
2
|
+
// --------------------------------------------------------------------------------
|
3
|
+
// @param [string] $source: JSON complete source
|
4
|
+
// @param [number] $pointer: current pointer
|
5
|
+
// --------------------------------------------------------------------------------
|
6
|
+
// @throw "Unterminated string."
|
7
|
+
// --------------------------------------------------------------------------------
|
8
|
+
// @return [list|false] (new pointer, parsed string / color / length)
|
9
|
+
|
10
|
+
@function _json-decode--string($source, $pointer) {
|
11
|
+
// Check for the end of the string
|
12
|
+
$temp: str-slice($source, $pointer);
|
13
|
+
$end: _find-ending-quote($temp);
|
14
|
+
$string: "";
|
15
|
+
|
16
|
+
// If no end is found
|
17
|
+
@if not $end or $end == 0 {
|
18
|
+
@return _throw("Unterminated string.", $pointer);
|
19
|
+
}
|
20
|
+
|
21
|
+
// If string is not empty
|
22
|
+
@else if $end > 1 {
|
23
|
+
$string: str-slice($temp, 1, $end - 1);
|
24
|
+
|
25
|
+
$cr: "
|
26
|
+
";
|
27
|
+
$string: _strip-token($string, "\r", $cr);
|
28
|
+
$string: _strip-token($string, "\n", $cr);
|
29
|
+
$string: _strip-token($string, '\\\"', '"');
|
30
|
+
|
31
|
+
// Test whether the string could be a CSS length
|
32
|
+
$string: _length($string);
|
33
|
+
|
34
|
+
// Test whether the string could be a CSS color
|
35
|
+
@if type-of($string) == string {
|
36
|
+
$string: _color($string);
|
37
|
+
}
|
38
|
+
}
|
39
|
+
|
40
|
+
@return ($pointer + $end, $string);
|
41
|
+
}
|
@@ -1,17 +1,17 @@
|
|
1
|
-
// Delay the encoding of ta literal to JSON
|
2
|
-
// to a type-specific method
|
3
|
-
// --------------------------------------------------------------------------------
|
4
|
-
// @param $value: value to be stringified
|
5
|
-
// --------------------------------------------------------------------------------
|
6
|
-
// @throw "Unknown type for $value ({x})."
|
7
|
-
// --------------------------------------------------------------------------------
|
8
|
-
// @return [string|false] JSON encoded string
|
9
|
-
|
10
|
-
@function json-encode($value) {
|
11
|
-
$type: type-of($value);
|
12
|
-
@if function_exists('_json-encode--#{$type}') {
|
13
|
-
@return call('_json-encode--#{$type}', $value);
|
14
|
-
}
|
15
|
-
@warn "Unknown type for #{$value} (#{$type}).";
|
16
|
-
@return false;
|
17
|
-
}
|
1
|
+
// Delay the encoding of ta literal to JSON
|
2
|
+
// to a type-specific method
|
3
|
+
// --------------------------------------------------------------------------------
|
4
|
+
// @param $value: value to be stringified
|
5
|
+
// --------------------------------------------------------------------------------
|
6
|
+
// @throw "Unknown type for $value ({x})."
|
7
|
+
// --------------------------------------------------------------------------------
|
8
|
+
// @return [string|false] JSON encoded string
|
9
|
+
|
10
|
+
@function json-encode($value) {
|
11
|
+
$type: type-of($value);
|
12
|
+
@if function_exists('_json-encode--#{$type}') {
|
13
|
+
@return call('_json-encode--#{$type}', $value);
|
14
|
+
}
|
15
|
+
@warn "Unknown type for #{$value} (#{$type}).";
|
16
|
+
@return false;
|
17
|
+
}
|
@@ -1,17 +1,17 @@
|
|
1
|
-
// Helpers
|
2
|
-
@import "helpers/quote";
|
3
|
-
|
4
|
-
// Type specific encoding functions
|
5
|
-
@import "types/bool";
|
6
|
-
@import "types/color";
|
7
|
-
@import "types/list";
|
8
|
-
@import "types/map";
|
9
|
-
@import "types/number";
|
10
|
-
@import "types/string";
|
11
|
-
@import "types/null";
|
12
|
-
|
13
|
-
// Public API
|
14
|
-
@import "api/json";
|
15
|
-
|
16
|
-
// Mixin to pass the string to the DOM
|
17
|
-
@import "mixins/json";
|
1
|
+
// Helpers
|
2
|
+
@import "helpers/quote";
|
3
|
+
|
4
|
+
// Type specific encoding functions
|
5
|
+
@import "types/bool";
|
6
|
+
@import "types/color";
|
7
|
+
@import "types/list";
|
8
|
+
@import "types/map";
|
9
|
+
@import "types/number";
|
10
|
+
@import "types/string";
|
11
|
+
@import "types/null";
|
12
|
+
|
13
|
+
// Public API
|
14
|
+
@import "api/json";
|
15
|
+
|
16
|
+
// Mixin to pass the string to the DOM
|
17
|
+
@import "mixins/json";
|