singularitygs 1.5.1 → 1.6.1
Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 4a3d06c85dbf8aec621a47396e11270e452c0214
|
4
|
+
data.tar.gz: 8e437c8e7a3c0c4932edbe34aefc7a22c77f0101
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: bf7db2d617b5e4adc56418b7a33384f8a45065cc6423081b63982e98caa93e4ca667be1e50b11aa4073c21fa6433f33b90ad415e3a376696aab7cb7b8f465704
|
7
|
+
data.tar.gz: a9671359f382ab254726d445ad25299e119f8c6f8de4d2a7d5349f159eb1fe7fa352c77b29fcd5077f7a48400a631fda5624fe6f745b434547e6b2639abbd882
|
data/lib/singularitygs.rb
CHANGED
@@ -10,12 +10,25 @@
|
|
10
10
|
$Style: map-get($Span-Map, 'style');
|
11
11
|
|
12
12
|
@if unitless($Gutter) {
|
13
|
-
|
13
|
+
$ERROR-MESSAGE: "Calc output style uses fixed gutters (gutters with units). Please define fixed gutters to use calc";
|
14
|
+
@if feature-exists(at-error) {
|
15
|
+
@error $ERROR-MESSAGE;
|
16
|
+
}
|
17
|
+
@else {
|
18
|
+
@warn $ERROR-MESSAGE;
|
19
|
+
}
|
14
20
|
@return $Return;
|
15
21
|
}
|
16
22
|
|
17
23
|
@if type-of($Grid) == 'number' {
|
18
|
-
|
24
|
+
$ERROR-MESSAGE: "Calc output style is designed to be used with asymmetric grids, especially with a mix of fixed and fluid columns. Please define an asymmetric grid or use another output style.";
|
25
|
+
@if feature-exists(at-error) {
|
26
|
+
@error $ERROR-MESSAGE;
|
27
|
+
}
|
28
|
+
@else {
|
29
|
+
@warn $ERROR-MESSAGE;
|
30
|
+
}
|
31
|
+
@return $Return;
|
19
32
|
}
|
20
33
|
|
21
34
|
$Start-Row: map-get($Span-Map, 'start row');
|
@@ -35,6 +35,8 @@
|
|
35
35
|
// -----------------------------------------------
|
36
36
|
// Grid Background
|
37
37
|
|
38
|
+
@import 'str-replace';
|
39
|
+
|
38
40
|
@mixin background-grid(
|
39
41
|
$columns: null,
|
40
42
|
$gutter: null,
|
@@ -172,7 +174,7 @@
|
|
172
174
|
|
173
175
|
$Grid-Count: column-count($Grid);
|
174
176
|
|
175
|
-
$
|
177
|
+
$SVG: '<svg xmlns="http://www.w3.org/2000/svg">';
|
176
178
|
|
177
179
|
$Gutter-Width: gutter-span($Gutter, $Grid, $Style);
|
178
180
|
@if unit($Gutter-Width) != '%' and unit($Gutter-Width) != '' {
|
@@ -191,7 +193,7 @@
|
|
191
193
|
|
192
194
|
@if index($Style, 'split') and $i == 1 {
|
193
195
|
$Counter-Width: ($Gutter-Width / 2);
|
194
|
-
$
|
196
|
+
$SVG: $SVG + '<rect x="#{$Counter-Width}" fill="#{$Gutter-Color}" width="#{$Gutter-Width / 2}" height="100%"/>';
|
195
197
|
}
|
196
198
|
|
197
199
|
$Loop-Color: $Column-Color;
|
@@ -201,9 +203,9 @@
|
|
201
203
|
|
202
204
|
@if $i != $Grid-Count {
|
203
205
|
@if unit($Counter-Width) == unit($Loop-Width) {
|
204
|
-
$
|
206
|
+
$SVG: $SVG + '<rect x="#{$Counter-Width}" fill="#{$Loop-Color}" width="#{$Loop-Width}" height="100%"/>';
|
205
207
|
$Counter-Width: $Counter-Width + $Loop-Width;
|
206
|
-
$
|
208
|
+
$SVG: $SVG + '<rect x="#{$Counter-Width}" fill="#{$Gutter-Color}" width="#{$Gutter-Width}" height="100%"/>';
|
207
209
|
$Counter-Width: $Counter-Width + $Gutter-Width;
|
208
210
|
}
|
209
211
|
@else {
|
@@ -213,7 +215,8 @@
|
|
213
215
|
}
|
214
216
|
@else if $i == 1 {
|
215
217
|
@if unit($Counter-Width) == unit($Loop-Width) {
|
216
|
-
$
|
218
|
+
$SVG: $SVG + '<rect x="#{$Counter-Width}" fill="#{$Loop-Color}" width="#{$Loop-Width}" height="100%"/>';
|
219
|
+
$SVG: $SVG + '<rect x="#{$Loop-Width}" fill="#{$Gutter-Color}" width="#{$Gutter-Width}" height="100%"/>';
|
217
220
|
$Counter-Width: $Counter-Width + $Loop-Width + $Gutter-Width;
|
218
221
|
}
|
219
222
|
@else {
|
@@ -223,31 +226,35 @@
|
|
223
226
|
}
|
224
227
|
@else if $i == $Grid-Count and index($Style, 'split') {
|
225
228
|
@if unit($Counter-Width) == unit($Loop-Width) {
|
226
|
-
$
|
229
|
+
$SVG: $SVG + '<rect x="#{$Counter-Width}" fill="#{$Loop-Color}" width="#{$Loop-Width}" height="100%"/>';
|
227
230
|
$Counter-Width: $Counter-Width + $Loop-Width;
|
228
|
-
$
|
231
|
+
$SVG: $SVG + '<rect x="#{$Counter-Width}" fill="#{$Gutter-Color}" width="#{$Gutter-Width / 2}" height="100%"/>';
|
229
232
|
}
|
230
233
|
@else {
|
231
234
|
$Display: false;
|
232
235
|
}
|
233
236
|
}
|
234
237
|
@else {
|
235
|
-
$
|
238
|
+
$SVG: $SVG + '<rect x="#{$Counter-Width}" fill="#{$Loop-Color}" width="#{$Loop-Width}" height="100%"/>';
|
236
239
|
}
|
237
240
|
}
|
238
241
|
|
242
|
+
$SVG: $SVG + '</svg>';
|
243
|
+
$SVG: url-encode($SVG);
|
244
|
+
|
239
245
|
@if $Display {
|
246
|
+
|
240
247
|
@if $bkpt != -1px {
|
241
248
|
@include breakpoint($bkpt) {
|
242
|
-
background-image:
|
249
|
+
background-image: url('data:image/svg+xml,' + $SVG);
|
243
250
|
}
|
244
251
|
}
|
245
252
|
@else {
|
246
|
-
background-image:
|
253
|
+
background-image: url('data:image/svg+xml,' + $SVG);
|
247
254
|
}
|
248
255
|
}
|
249
256
|
@else {
|
250
|
-
@warn 'Cannot generate a
|
257
|
+
@warn 'Cannot generate a Background Grid for grid `#{$Grid}` with gutters `#{$Gutter}` and gutter style `#{$Style}`';
|
251
258
|
}
|
252
259
|
}
|
253
260
|
}
|
@@ -0,0 +1,145 @@
|
|
1
|
+
// From http://sassmeister.com/gist/1b4f2da5527830088e4d
|
2
|
+
|
3
|
+
////
|
4
|
+
// I have written a lot of different `str-replace` Sass functions over
|
5
|
+
// the months yet none of my tries were succeeding in making the new substring
|
6
|
+
// able to contain the one to replace (e.g. `str-replace($str, 'a', 'ab')`).
|
7
|
+
// Thanks to Valérian Galliat (@valeriangalliat), I finally managed to build
|
8
|
+
// a bulletproof `str-replace` Sass function that allows new string to contain
|
9
|
+
// the old one.
|
10
|
+
////
|
11
|
+
|
12
|
+
/// Replace `$search` with `$replace` in `$string`
|
13
|
+
/// @param {String} $string - Initial string
|
14
|
+
/// @param {String} $search - Substring to replace
|
15
|
+
/// @param {String} $replace ('') - New value
|
16
|
+
/// @return {String} - Updated string
|
17
|
+
@function str-replace($string, $search, $replace: '') {
|
18
|
+
$index: str-index($string, $search);
|
19
|
+
|
20
|
+
@if $index {
|
21
|
+
@return str-slice($string, 1, $index - 1) + $replace + str-replace(str-slice($string, $index + str-length($search)), $search, $replace);
|
22
|
+
}
|
23
|
+
|
24
|
+
@return $string;
|
25
|
+
}
|
26
|
+
|
27
|
+
@function url-encode($string) {
|
28
|
+
$encodeMap:('%':'%25',
|
29
|
+
' ':'%20',
|
30
|
+
'!':'%21',
|
31
|
+
'\"':'%22',
|
32
|
+
'#':'%23',
|
33
|
+
'$':'%24',
|
34
|
+
'&':'%26',
|
35
|
+
'\'':'%27',
|
36
|
+
'(':'%28',
|
37
|
+
')':'%29',
|
38
|
+
'*':'%2A',
|
39
|
+
'+':'%2B',
|
40
|
+
',':'%2C',
|
41
|
+
'-':'%2D',
|
42
|
+
'.':'%2E',
|
43
|
+
'/':'%2F',
|
44
|
+
':':'%3A',
|
45
|
+
';':'%3B',
|
46
|
+
'<':'%3C',
|
47
|
+
'=':'%3D',
|
48
|
+
'>':'%3E',
|
49
|
+
'?':'%3F',
|
50
|
+
'@':'%40',
|
51
|
+
'[':'%5B',
|
52
|
+
'\\':'%5C',
|
53
|
+
']':'%5D',
|
54
|
+
'^':'%5E',
|
55
|
+
'_':'%5F',
|
56
|
+
'`':'%60',
|
57
|
+
'{':'%7B',
|
58
|
+
'|':'%7C',
|
59
|
+
'}':'%7D',
|
60
|
+
'~':'%7E',
|
61
|
+
'¢':'%A2',
|
62
|
+
'£':'%A3',
|
63
|
+
'¥':'%A5',
|
64
|
+
'§':'%A7',
|
65
|
+
'«':'%AB',
|
66
|
+
'¬':'%AC',
|
67
|
+
'¯':'%AD',
|
68
|
+
'º':'%B0',
|
69
|
+
'±':'%B1',
|
70
|
+
'ª':'%B2',
|
71
|
+
'µ':'%B5',
|
72
|
+
'»':'%BB',
|
73
|
+
'¼':'%BC',
|
74
|
+
'½':'%BD',
|
75
|
+
'¿':'%BF',
|
76
|
+
'À':'%C0',
|
77
|
+
'Á':'%C1',
|
78
|
+
'Â':'%C2',
|
79
|
+
'Ã':'%C3',
|
80
|
+
'Ä':'%C4',
|
81
|
+
'Å':'%C5',
|
82
|
+
'Æ':'%C6',
|
83
|
+
'Ç':'%C7',
|
84
|
+
'È':'%C8',
|
85
|
+
'É':'%C9',
|
86
|
+
'Ê':'%CA',
|
87
|
+
'Ë':'%CB',
|
88
|
+
'Ì':'%CC',
|
89
|
+
'Í':'%CD',
|
90
|
+
'Î':'%CE',
|
91
|
+
'Ï':'%CF',
|
92
|
+
'Ð':'%D0',
|
93
|
+
'Ñ':'%D1',
|
94
|
+
'Ò':'%D2',
|
95
|
+
'Ó':'%D3',
|
96
|
+
'Ô':'%D4',
|
97
|
+
'Õ':'%D5',
|
98
|
+
'Ö':'%D6',
|
99
|
+
'Ø':'%D8',
|
100
|
+
'Ù':'%D9',
|
101
|
+
'Ú':'%DA',
|
102
|
+
'Û':'%DB',
|
103
|
+
'Ü':'%DC',
|
104
|
+
'Ý':'%DD',
|
105
|
+
'Þ':'%DE',
|
106
|
+
'ß':'%DF',
|
107
|
+
'à':'%E0',
|
108
|
+
'á':'%E1',
|
109
|
+
'â':'%E2',
|
110
|
+
'ã':'%E3',
|
111
|
+
'ä':'%E4',
|
112
|
+
'å':'%E5',
|
113
|
+
'æ':'%E6',
|
114
|
+
'ç':'%E7',
|
115
|
+
'è':'%E8',
|
116
|
+
'é':'%E9',
|
117
|
+
'ê':'%EA',
|
118
|
+
'ë':'%EB',
|
119
|
+
'ì':'%EC',
|
120
|
+
'í':'%ED',
|
121
|
+
'î':'%EE',
|
122
|
+
'ï':'%EF',
|
123
|
+
'ð':'%F0',
|
124
|
+
'ñ':'%F1',
|
125
|
+
'ò':'%F2',
|
126
|
+
'ó':'%F3',
|
127
|
+
'ô':'%F4',
|
128
|
+
'õ':'%F5',
|
129
|
+
'ö':'%F6',
|
130
|
+
'÷':'%F7',
|
131
|
+
'ø':'%F8',
|
132
|
+
'ù':'%F9',
|
133
|
+
'ú':'%FA',
|
134
|
+
'û':'%FB',
|
135
|
+
'ü':'%FC',
|
136
|
+
'ý':'%FD',
|
137
|
+
'þ':'%FE',
|
138
|
+
'ÿ':'%FF'
|
139
|
+
);
|
140
|
+
|
141
|
+
@each $char, $code in $encodeMap {
|
142
|
+
$string: str-replace($string, $char, $code);
|
143
|
+
}
|
144
|
+
@return $string;
|
145
|
+
}
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: singularitygs
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.
|
4
|
+
version: 1.6.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Scott Kellum
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2015-
|
12
|
+
date: 2015-02-25 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: sass
|
@@ -77,6 +77,7 @@ files:
|
|
77
77
|
- stylesheets/singularitygs/helpers/_settings.scss
|
78
78
|
- stylesheets/singularitygs/helpers/_sort.scss
|
79
79
|
- stylesheets/singularitygs/helpers/_span-shared.scss
|
80
|
+
- stylesheets/singularitygs/helpers/_str-replace.scss
|
80
81
|
- stylesheets/singularitygs/language/_parse-add.scss
|
81
82
|
- stylesheets/singularitygs/language/_parse-list.scss
|
82
83
|
- stylesheets/singularitygs/language/_span.scss
|