sass-zero 0.0.38 → 0.0.43
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/Example.html +7 -7
- data/README.md +4 -1
- data/app/assets/stylesheets/sass-zero/base.scss +0 -1
- data/app/assets/stylesheets/sass-zero/base/preflight.scss +14 -4
- data/app/assets/stylesheets/sass-zero/breadboard.scss +230 -0
- data/app/assets/stylesheets/sass-zero/mixins.scss +23 -14
- data/app/assets/stylesheets/sass-zero/utilities.scss +1 -0
- data/app/assets/stylesheets/sass-zero/utilities/animation.scss +59 -0
- data/app/assets/stylesheets/sass-zero/utilities/flex.scss +33 -21
- data/app/assets/stylesheets/sass-zero/utilities/layout.scss +11 -1
- data/app/assets/stylesheets/sass-zero/utilities/list.scss +20 -4
- data/app/assets/stylesheets/sass-zero/utilities/text.scss +59 -5
- data/app/assets/stylesheets/sass-zero/variables.scss +1 -0
- data/app/assets/stylesheets/sass-zero/variables/border.scss +4 -1
- data/app/assets/stylesheets/sass-zero/variables/breakpoints.scss +5 -4
- data/app/assets/stylesheets/sass-zero/variables/colors.scss +240 -119
- data/app/assets/stylesheets/sass-zero/variables/effects.scss +28 -4
- data/app/assets/stylesheets/sass-zero/variables/flex.scss +17 -1
- data/app/assets/stylesheets/sass-zero/variables/grid.scss +85 -0
- data/app/assets/stylesheets/sass-zero/variables/spacing.scss +16 -2
- data/app/assets/stylesheets/sass-zero/variables/transform.scss +9 -2
- data/app/assets/stylesheets/sass-zero/variables/typography.scss +18 -15
- data/app/assets/stylesheets/sass-zero/variables/width.scss +8 -3
- data/app/assets/stylesheets/sass-zero/variables/zindex.scss +1 -1
- data/lib/sass/zero/version.rb +1 -1
- data/package.json +1 -1
- metadata +10 -9
- data/app/assets/stylesheets/sass-zero/base/breadboard.scss +0 -204
- data/app/assets/stylesheets/sass-zero/base/variables.scss +0 -7
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 06e133db6d4914987dbc2d77f08bcdd1671ad91fd57debe8c720330bfb708cb0
|
4
|
+
data.tar.gz: def1eda7c32c8f426ebb2b0bd43608e3b15ff917e88abb5056c67e07d8633004
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 4ad3cb7aad00280da0c4777c1fb10308c77dee3b58855c17aaa193215c320768cfec6906bbd1eb988dd5c498431eb29b46f0223cc4902f643803d9b0470b6861
|
7
|
+
data.tar.gz: 8544b5ce046ca7f5742c1e1212fb41d1c65d58829341f741f2d3db3305313f9644df84403299dc59aafcae3240c7f3764136f4eb2bf2a4ca47145b1f399f0e1f
|
data/Example.html
CHANGED
@@ -22,7 +22,7 @@
|
|
22
22
|
|
23
23
|
<hr>
|
24
24
|
|
25
|
-
<form>
|
25
|
+
<form class="push-lg--bottom">
|
26
26
|
<div class="push-md--bottom">
|
27
27
|
<label for="nameField">Name</label>
|
28
28
|
<input type="text" placeholder="CJ Patoilo" id="nameField" class="input">
|
@@ -41,30 +41,30 @@
|
|
41
41
|
<div class="push-md--bottom">
|
42
42
|
<div>
|
43
43
|
<input type="checkbox" name="option1" value="1" class="checkbox" checked>
|
44
|
-
<label for="option1"
|
44
|
+
<label for="option1">Option 1</label>
|
45
45
|
</div>
|
46
46
|
<div>
|
47
47
|
<input type="checkbox" name="option2" value="2" class="checkbox">
|
48
|
-
<label for="option2"
|
48
|
+
<label for="option2">Option 2</label>
|
49
49
|
</div>
|
50
50
|
<div>
|
51
51
|
<input type="checkbox" name="option3" value="3" class="checkbox">
|
52
|
-
<label for="option3"
|
52
|
+
<label for="option3">Option 3</label>
|
53
53
|
</div>
|
54
54
|
</div>
|
55
55
|
|
56
56
|
<div class="push-md--bottom">
|
57
57
|
<div>
|
58
58
|
<input type="radio" name="radio" value="1" class="radio" checked>
|
59
|
-
<label for="radio"
|
59
|
+
<label for="radio">Option 1</label>
|
60
60
|
</div>
|
61
61
|
<div>
|
62
62
|
<input type="radio" name="radio" value="2" class="radio">
|
63
|
-
<label for="radio"
|
63
|
+
<label for="radio">Option 2</label>
|
64
64
|
</div>
|
65
65
|
<div>
|
66
66
|
<input type="radio" name="radio" value="3" class="radio">
|
67
|
-
<label for="radio"
|
67
|
+
<label for="radio">Option 3</label>
|
68
68
|
</div>
|
69
69
|
</div>
|
70
70
|
</div>
|
data/README.md
CHANGED
@@ -31,7 +31,7 @@ Developers should be able to produce your own design, [Refactoring UI](https://r
|
|
31
31
|
### Breadboard Theme
|
32
32
|
|
33
33
|
- [Example](https://github.com/lazaronixon/sass-zero/blob/master/Example.html)
|
34
|
-
- [Breadboard](https://github.com/lazaronixon/sass-zero/blob/master/app/assets/stylesheets/sass-zero/
|
34
|
+
- [Breadboard](https://github.com/lazaronixon/sass-zero/blob/master/app/assets/stylesheets/sass-zero/breadboard.scss)
|
35
35
|
|
36
36
|
### Variables
|
37
37
|
|
@@ -40,6 +40,7 @@ Developers should be able to produce your own design, [Refactoring UI](https://r
|
|
40
40
|
- [Colors](https://github.com/lazaronixon/sass-zero/blob/master/app/assets/stylesheets/sass-zero/variables/colors.scss)
|
41
41
|
- [Effects](https://github.com/lazaronixon/sass-zero/blob/master/app/assets/stylesheets/sass-zero/variables/effects.scss)
|
42
42
|
- [Flex](https://github.com/lazaronixon/sass-zero/blob/master/app/assets/stylesheets/sass-zero/variables/flex.scss)
|
43
|
+
- [Grid](https://github.com/lazaronixon/sass-zero/blob/master/app/assets/stylesheets/sass-zero/variables/grid.scss)
|
43
44
|
- [Spacing](https://github.com/lazaronixon/sass-zero/blob/master/app/assets/stylesheets/sass-zero/variables/spacing.scss)
|
44
45
|
- [Transform](https://github.com/lazaronixon/sass-zero/blob/master/app/assets/stylesheets/sass-zero/variables/transform.scss)
|
45
46
|
- [Transition](https://github.com/lazaronixon/sass-zero/blob/master/app/assets/stylesheets/sass-zero/variables/transition.scss)
|
@@ -50,6 +51,7 @@ Developers should be able to produce your own design, [Refactoring UI](https://r
|
|
50
51
|
|
51
52
|
### Utilities
|
52
53
|
|
54
|
+
- [Animation](https://github.com/lazaronixon/sass-zero/blob/master/app/assets/stylesheets/sass-zero/utilities/animation.scss)
|
53
55
|
- [Margin Push](https://github.com/lazaronixon/sass-zero/blob/master/app/assets/stylesheets/sass-zero/utilities/push.scss)
|
54
56
|
- [Margin Pull](https://github.com/lazaronixon/sass-zero/blob/master/app/assets/stylesheets/sass-zero/utilities/pull.scss)
|
55
57
|
- [Margin Reset](https://github.com/lazaronixon/sass-zero/blob/master/app/assets/stylesheets/sass-zero/utilities/flush.scss)
|
@@ -76,6 +78,7 @@ Add this line to your application.css:
|
|
76
78
|
```css
|
77
79
|
*= require sass-zero/base
|
78
80
|
*= require sass-zero/utilities
|
81
|
+
*= require sass-zero/breadboard
|
79
82
|
```
|
80
83
|
|
81
84
|
Create some stylesheet using [BEM](http://getbem.com/naming) and [SASS-ZERO Variables](https://github.com/lazaronixon/sass-zero/blob/master/vendor/assets/stylesheets/sass-zero/variables.scss):
|
@@ -1,4 +1,4 @@
|
|
1
|
-
@import "sass-zero/
|
1
|
+
@import "sass-zero/variables";
|
2
2
|
|
3
3
|
/**
|
4
4
|
* Manually forked from SUIT CSS Base: https://github.com/suitcss/base
|
@@ -29,7 +29,6 @@ pre {
|
|
29
29
|
button {
|
30
30
|
background-color: transparent;
|
31
31
|
background-image: none;
|
32
|
-
padding: 0;
|
33
32
|
}
|
34
33
|
|
35
34
|
/**
|
@@ -70,6 +69,17 @@ html {
|
|
70
69
|
line-height: 1.5; /* 2 */
|
71
70
|
}
|
72
71
|
|
72
|
+
|
73
|
+
/**
|
74
|
+
* Inherit font-family and line-height from `html` so users can set them as
|
75
|
+
* a class directly on the `html` element.
|
76
|
+
*/
|
77
|
+
|
78
|
+
body {
|
79
|
+
font-family: inherit;
|
80
|
+
line-height: inherit;
|
81
|
+
}
|
82
|
+
|
73
83
|
/**
|
74
84
|
* 1. Prevent padding and border from affecting element width.
|
75
85
|
*
|
@@ -102,7 +112,7 @@ html {
|
|
102
112
|
box-sizing: border-box; /* 1 */
|
103
113
|
border-width: 0; /* 2 */
|
104
114
|
border-style: solid; /* 2 */
|
105
|
-
border-color: $
|
115
|
+
border-color: $gray-200; /* 2 */
|
106
116
|
}
|
107
117
|
|
108
118
|
/*
|
@@ -133,7 +143,7 @@ textarea {
|
|
133
143
|
|
134
144
|
input::placeholder,
|
135
145
|
textarea::placeholder {
|
136
|
-
color: $
|
146
|
+
color: $gray-400;
|
137
147
|
}
|
138
148
|
|
139
149
|
button,
|
@@ -0,0 +1,230 @@
|
|
1
|
+
@import "sass-zero/variables";
|
2
|
+
@import "sass-zero/mixins";
|
3
|
+
|
4
|
+
:root {
|
5
|
+
--color-bg--main: #{$white};
|
6
|
+
--color-bg--surface: #{$gray-100};
|
7
|
+
--color-primary: #{$gray-900};
|
8
|
+
--color-txt: #{$gray-900};
|
9
|
+
--color-focus-ring: #{rgba($gray-900, 0.5)};
|
10
|
+
--image-bg-select: url('data:image/svg+xml,<svg viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg"><path stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5" d="M6 8l4 4 4-4"/></svg>');
|
11
|
+
--image-checked-checkbox: url('data:image/svg+xml,<svg viewBox="0 0 16 16" fill="white" xmlns="http://www.w3.org/2000/svg"><path d="M12.207 4.793a1 1 0 010 1.414l-5 5a1 1 0 01-1.414 0l-2-2a1 1 0 011.414-1.414L6.5 9.086l4.293-4.293a1 1 0 011.414 0z"/></svg>');
|
12
|
+
--image-checked-radio: url('data:image/svg+xml,<svg viewBox="0 0 16 16" fill="white" xmlns="http://www.w3.org/2000/svg"><circle cx="8" cy="8" r="3"/></svg>');
|
13
|
+
}
|
14
|
+
|
15
|
+
html {
|
16
|
+
background: var(--color-bg--main);
|
17
|
+
color: var(--color-txt);
|
18
|
+
font-size: 14px;
|
19
|
+
}
|
20
|
+
|
21
|
+
main {
|
22
|
+
padding-right: $size-2;
|
23
|
+
padding-left: $size-2;
|
24
|
+
}
|
25
|
+
|
26
|
+
blockquote {
|
27
|
+
border-color: var(--color-primary);
|
28
|
+
border-left-width: $border-4;
|
29
|
+
padding: $size-3 $size-4;
|
30
|
+
}
|
31
|
+
|
32
|
+
.btn {
|
33
|
+
border-radius: $rounded;
|
34
|
+
border-width: $border;
|
35
|
+
display: inline-block;
|
36
|
+
font-weight: $font-bold;
|
37
|
+
padding: $size-2 $size-4;
|
38
|
+
cursor: pointer;
|
39
|
+
|
40
|
+
&:focus {
|
41
|
+
outline: 2px dotted var(--color-primary);
|
42
|
+
outline-offset: 2px;
|
43
|
+
}
|
44
|
+
|
45
|
+
&:disabled {
|
46
|
+
pointer-events: none;
|
47
|
+
opacity: $opacity-50;
|
48
|
+
}
|
49
|
+
|
50
|
+
&--primary {
|
51
|
+
background-color: var(--color-primary);
|
52
|
+
border-color: var(--color-primary);
|
53
|
+
color: var(--color-bg--main);
|
54
|
+
}
|
55
|
+
|
56
|
+
&--secondary {
|
57
|
+
background-color: var(--color-bg--main);
|
58
|
+
border-color: var(--color-primary);
|
59
|
+
}
|
60
|
+
|
61
|
+
&--tertiary {
|
62
|
+
background-color: $transparent;
|
63
|
+
border-color: $transparent;
|
64
|
+
}
|
65
|
+
}
|
66
|
+
|
67
|
+
code {
|
68
|
+
background-color: var(--color-bg--surface);
|
69
|
+
border-radius: $rounded;
|
70
|
+
font-size: $text-sm;
|
71
|
+
margin: $size-0 $size-1;
|
72
|
+
padding: $size-1 $size-2;
|
73
|
+
white-space: nowrap;
|
74
|
+
}
|
75
|
+
|
76
|
+
pre {
|
77
|
+
background-color: var(--color-bg--surface);
|
78
|
+
border-color: var(--color-primary);
|
79
|
+
border-left-width: $border-4;
|
80
|
+
overflow-y: hidden;
|
81
|
+
|
82
|
+
& > code {
|
83
|
+
border-radius: $rounded-none;
|
84
|
+
display: block;
|
85
|
+
padding: $size-2 $size-3;
|
86
|
+
white-space: pre;
|
87
|
+
}
|
88
|
+
}
|
89
|
+
|
90
|
+
hr {
|
91
|
+
margin: $size-6 $size-0;
|
92
|
+
}
|
93
|
+
|
94
|
+
.input {
|
95
|
+
appearance: none;
|
96
|
+
background-color: $transparent;
|
97
|
+
border-radius: $rounded;
|
98
|
+
border-width: $border;
|
99
|
+
padding: $size-2 $size-3;
|
100
|
+
width: $size-full;
|
101
|
+
|
102
|
+
&--select {
|
103
|
+
background-image: var(--image-bg-select);
|
104
|
+
background-position: right $size-2 center;
|
105
|
+
background-repeat: no-repeat;
|
106
|
+
background-size: auto $size-5;
|
107
|
+
padding-right: $size-8;
|
108
|
+
}
|
109
|
+
|
110
|
+
&:focus {
|
111
|
+
box-shadow: ring($color: var(--color-focus-ring));
|
112
|
+
@include outline-none;
|
113
|
+
}
|
114
|
+
}
|
115
|
+
|
116
|
+
.checkbox {
|
117
|
+
border-radius: $rounded;
|
118
|
+
@include input-selection(var(--color-primary));
|
119
|
+
|
120
|
+
&:checked {
|
121
|
+
background-image: var(--image-checked-checkbox);
|
122
|
+
@include checked;
|
123
|
+
}
|
124
|
+
|
125
|
+
&:focus {
|
126
|
+
box-shadow: ring($color: var(--color-focus-ring));
|
127
|
+
@include outline-none;
|
128
|
+
}
|
129
|
+
}
|
130
|
+
|
131
|
+
.radio {
|
132
|
+
border-radius: $rounded-full;
|
133
|
+
@include input-selection(var(--color-primary));
|
134
|
+
|
135
|
+
&:checked {
|
136
|
+
background-image: var(--image-checked-radio);
|
137
|
+
@include checked;
|
138
|
+
}
|
139
|
+
|
140
|
+
&:focus {
|
141
|
+
box-shadow: ring($color: var(--color-focus-ring));
|
142
|
+
@include outline-none;
|
143
|
+
}
|
144
|
+
}
|
145
|
+
|
146
|
+
label, legend, dt {
|
147
|
+
display: inline-block;
|
148
|
+
margin-bottom: $size-1;
|
149
|
+
}
|
150
|
+
|
151
|
+
a {
|
152
|
+
font-weight: $font-bold;
|
153
|
+
}
|
154
|
+
|
155
|
+
ul {
|
156
|
+
list-style: disc inside;
|
157
|
+
}
|
158
|
+
|
159
|
+
ol {
|
160
|
+
list-style: decimal inside;
|
161
|
+
}
|
162
|
+
|
163
|
+
h1, h2, h3, h4, h5, h6, .hdg {
|
164
|
+
margin-bottom: $size-4;
|
165
|
+
}
|
166
|
+
|
167
|
+
fieldset, .input {
|
168
|
+
margin-bottom: $size-6;
|
169
|
+
}
|
170
|
+
|
171
|
+
blockquote, figure, p, pre, table, ul, ol, dl {
|
172
|
+
margin-bottom: $size-6;
|
173
|
+
}
|
174
|
+
|
175
|
+
table {
|
176
|
+
width: $size-full;
|
177
|
+
}
|
178
|
+
|
179
|
+
td, th {
|
180
|
+
border-bottom-width: $border;
|
181
|
+
padding: $size-3 $size-4;
|
182
|
+
text-align: left;
|
183
|
+
}
|
184
|
+
|
185
|
+
h1, h2, h3, h4, h5, h6, .hdg {
|
186
|
+
font-weight: $font-bold;
|
187
|
+
line-height: $leading-tight;
|
188
|
+
}
|
189
|
+
|
190
|
+
h1, .hdg--4xl {
|
191
|
+
font-size: $text-4xl;
|
192
|
+
}
|
193
|
+
|
194
|
+
h2, .hdg--3xl {
|
195
|
+
font-size: $text-3xl;
|
196
|
+
}
|
197
|
+
|
198
|
+
h3, .hdg--2xl {
|
199
|
+
font-size: $text-2xl;
|
200
|
+
}
|
201
|
+
|
202
|
+
h4, .hdg--xl {
|
203
|
+
font-size: $text-xl;
|
204
|
+
}
|
205
|
+
|
206
|
+
h5, .hdg--lg {
|
207
|
+
font-size: $text-lg;
|
208
|
+
}
|
209
|
+
|
210
|
+
h6, .hdg--base {
|
211
|
+
font-size: $text-base;
|
212
|
+
}
|
213
|
+
|
214
|
+
@media (prefers-color-scheme: dark) {
|
215
|
+
:root {
|
216
|
+
--color-bg--main: #{$gray-900};
|
217
|
+
--color-bg--surface: #{$gray-800};
|
218
|
+
--color-primary: #{$white};
|
219
|
+
--color-txt: #{$white};
|
220
|
+
--color-focus-ring: #{rgba($gray-100, 0.5)};
|
221
|
+
--image-bg-select: url('data:image/svg+xml,<svg viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg"><path stroke="white" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5" d="M6 8l4 4 4-4"/></svg>');
|
222
|
+
--image-checked-checkbox: url('data:image/svg+xml,<svg viewBox="0 0 16 16" fill="black" xmlns="http://www.w3.org/2000/svg"><path d="M12.207 4.793a1 1 0 010 1.414l-5 5a1 1 0 01-1.414 0l-2-2a1 1 0 011.414-1.414L6.5 9.086l4.293-4.293a1 1 0 011.414 0z"/></svg>');
|
223
|
+
--image-checked-radio: url('data:image/svg+xml,<svg viewBox="0 0 16 16" fill="black" xmlns="http://www.w3.org/2000/svg"><circle cx="8" cy="8" r="3"/></svg>');
|
224
|
+
}
|
225
|
+
}
|
226
|
+
|
227
|
+
@media (min-width: $breakpoint-md) {
|
228
|
+
html { font-size: 16px; }
|
229
|
+
main { @include make-container($size-10, $breakpoint-xl); }
|
230
|
+
}
|
@@ -3,9 +3,9 @@
|
|
3
3
|
@import "sass-zero/variables/spacing";
|
4
4
|
|
5
5
|
@mixin ellipsis {
|
6
|
-
overflow: hidden;
|
7
6
|
text-overflow: ellipsis;
|
8
7
|
white-space: nowrap;
|
8
|
+
overflow: hidden;
|
9
9
|
}
|
10
10
|
|
11
11
|
@mixin antialiased {
|
@@ -26,30 +26,39 @@
|
|
26
26
|
}
|
27
27
|
}
|
28
28
|
|
29
|
-
@mixin
|
30
|
-
border-color:
|
31
|
-
|
32
|
-
|
29
|
+
@mixin checked {
|
30
|
+
border-color: transparent;
|
31
|
+
background-color: currentColor;
|
32
|
+
background-position: center;
|
33
|
+
background-repeat: no-repeat;
|
33
34
|
}
|
34
35
|
|
35
|
-
@mixin selection($color) {
|
36
|
+
@mixin input-selection($color) {
|
36
37
|
appearance: none;
|
37
38
|
border-width: $border;
|
38
39
|
color: $color;
|
39
|
-
margin-bottom: -0.
|
40
|
+
margin-bottom: -0.1rem;
|
40
41
|
height: $size-4;
|
41
42
|
width: $size-4;
|
42
43
|
}
|
43
44
|
|
44
|
-
@mixin
|
45
|
-
|
46
|
-
|
47
|
-
|
48
|
-
|
45
|
+
@mixin outline-none {
|
46
|
+
outline: 2px solid transparent;
|
47
|
+
outline-offset: 2px;
|
48
|
+
}
|
49
|
+
|
50
|
+
@mixin outline-white {
|
51
|
+
outline: 2px dotted white;
|
52
|
+
outline-offset: 2px;
|
53
|
+
}
|
54
|
+
|
55
|
+
@mixin outline-black {
|
56
|
+
outline: 2px dotted black;
|
57
|
+
outline-offset: 2px;
|
49
58
|
}
|
50
59
|
|
51
60
|
@mixin space-x($space, $reverse: false) {
|
52
|
-
& > :not(
|
61
|
+
& > :not([hidden]) ~ :not([hidden]) {
|
53
62
|
@if $reverse {
|
54
63
|
margin-right: $space;
|
55
64
|
} @else {
|
@@ -59,7 +68,7 @@
|
|
59
68
|
}
|
60
69
|
|
61
70
|
@mixin space-y($space, $reverse: false) {
|
62
|
-
& > :not(
|
71
|
+
& > :not([hidden]) ~ :not([hidden]) {
|
63
72
|
@if $reverse {
|
64
73
|
margin-bottom: $space;
|
65
74
|
} @else {
|