@lucca-front/scss 7.2.0 → 7.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.
- package/dist/lucca-front.min.css +1 -1
- package/package.json +1 -1
- package/src/components/_button.scss +109 -74
- package/src/components/_form.scss +13 -11
- package/src/components/inputs/checkbox/_checkbox.scss +41 -37
- package/src/components/inputs/field/_field.framed.scss +6 -1
- package/src/components/inputs/radio/_radio.scss +49 -49
- package/src/components/inputs/radio-buttons/_radio-buttons.scss +46 -21
- package/src/components/inputs/switch/_switch.scss +8 -7
- package/src/components/inputs/textfield/_textfield.framed.scss +11 -59
- package/src/components/inputs/textfield/_textfield.outlined.scss +15 -6
- package/src/components/inputs/textfield/_textfield.scss +6 -5
- package/src/mixins/_forms.scss +28 -24
- package/src/theming/_commons.scss +1 -1
- package/src/theming/components/_radio.theme.scss +1 -1
- package/src/theming/components/_switch.theme.scss +1 -1
- package/src/theming/components/_textfield.theme.scss +3 -3
package/package.json
CHANGED
|
@@ -5,29 +5,24 @@
|
|
|
5
5
|
background-color: _color($palette);
|
|
6
6
|
color: _color($palette, "text");
|
|
7
7
|
|
|
8
|
-
&:
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
8
|
+
&:not([disabled], .is-disabled) {
|
|
9
|
+
&:hover {
|
|
10
|
+
background-color: _color($palette, "600");
|
|
11
|
+
box-shadow: _theme('commons.box-shadow.xs');
|
|
12
|
+
}
|
|
12
13
|
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
14
|
+
&:focus {
|
|
15
|
+
box-shadow: _theme('commons.box-shadow.xs'), 0 0 0 4px _color($palette, "200");
|
|
16
|
+
outline: none;
|
|
17
|
+
background-color: _color($palette, "600");
|
|
18
|
+
}
|
|
18
19
|
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
20
|
+
&:active {
|
|
21
|
+
background-color: _color($palette, "800");
|
|
22
|
+
box-shadow: 0 0 0 4px _color($palette, "300");
|
|
23
|
+
}
|
|
22
24
|
}
|
|
23
25
|
|
|
24
|
-
&[disabled],
|
|
25
|
-
&.is-disabled {
|
|
26
|
-
background-color: _color($palette, "500");
|
|
27
|
-
color: _color($palette, "300");
|
|
28
|
-
cursor: default;
|
|
29
|
-
pointer-events: none;
|
|
30
|
-
}
|
|
31
26
|
|
|
32
27
|
.button-counter {
|
|
33
28
|
background-color: _color($palette, "500");
|
|
@@ -35,33 +30,37 @@
|
|
|
35
30
|
}
|
|
36
31
|
|
|
37
32
|
@mixin buttonLinkColoring($palette) {
|
|
38
|
-
&:
|
|
39
|
-
|
|
40
|
-
|
|
33
|
+
&:not([disabled], .is-disabled) {
|
|
34
|
+
&:focus {
|
|
35
|
+
box-shadow: 0 0 0 4px _color($palette, "100"), inset 0 0 0 1px _color($palette, "300");
|
|
36
|
+
background: _color($palette, "100");
|
|
37
|
+
}
|
|
41
38
|
}
|
|
42
39
|
}
|
|
43
40
|
|
|
44
41
|
@mixin buttonOutlineColoring($palette) {
|
|
45
|
-
|
|
46
|
-
color: _color($palette);
|
|
47
|
-
|
|
48
|
-
&:hover:not([disabled]) {
|
|
49
|
-
background-color: _color($palette, "100");
|
|
42
|
+
&:not([disabled], .is-disabled) {
|
|
50
43
|
color: _color($palette);
|
|
51
|
-
box-shadow:
|
|
52
|
-
}
|
|
44
|
+
box-shadow: inset 0 0 0 1px _color($palette, "400");
|
|
53
45
|
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
}
|
|
46
|
+
&:hover {
|
|
47
|
+
background-color: _color($palette, "100");
|
|
48
|
+
color: _color($palette);
|
|
49
|
+
box-shadow: _theme('commons.elevations.elevation-1'), inset 0 0 0 1px _color($palette, "400");
|
|
50
|
+
}
|
|
60
51
|
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
52
|
+
&:focus {
|
|
53
|
+
background-color: _color($palette, "100");
|
|
54
|
+
color: _color($palette);
|
|
55
|
+
box-shadow: _theme('commons.elevations.elevation-1'), 0 0 0 4px _color($palette, "100"), inset 0 0 0 1px _color($palette, "400");
|
|
56
|
+
outline: none;
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
&:active {
|
|
60
|
+
background-color: _color($palette, "200");
|
|
61
|
+
color: _color($palette);
|
|
62
|
+
box-shadow: _theme('commons.elevations.elevation-1'), 0 0 0 4px _color($palette, "200"), inset 0 0 0 1px _color($palette, "500");
|
|
63
|
+
}
|
|
65
64
|
}
|
|
66
65
|
|
|
67
66
|
.button-counter {
|
|
@@ -188,17 +187,17 @@
|
|
|
188
187
|
}
|
|
189
188
|
|
|
190
189
|
&.mod-invert {
|
|
191
|
-
color: white;
|
|
190
|
+
color: _color('white');
|
|
192
191
|
|
|
193
|
-
&:
|
|
194
|
-
&:
|
|
192
|
+
&:not([disabled], .is-disabled) {
|
|
193
|
+
&:hover, &:focus {
|
|
195
194
|
background-color: rgba(255, 255, 255, .1);
|
|
196
|
-
color: white;
|
|
195
|
+
color: _color('white');
|
|
197
196
|
}
|
|
198
|
-
}
|
|
199
197
|
|
|
200
|
-
|
|
201
|
-
|
|
198
|
+
&:focus {
|
|
199
|
+
box-shadow: 0 0 0 4px rgba(0, 0, 0, .1);
|
|
200
|
+
}
|
|
202
201
|
}
|
|
203
202
|
}
|
|
204
203
|
}
|
|
@@ -209,8 +208,8 @@
|
|
|
209
208
|
width: 2rem;
|
|
210
209
|
|
|
211
210
|
&::before {
|
|
212
|
-
content: "";
|
|
213
211
|
@include makeIcon("arrow_south");
|
|
212
|
+
content: "";
|
|
214
213
|
height: 0;
|
|
215
214
|
vertical-align: text-top;
|
|
216
215
|
}
|
|
@@ -220,37 +219,41 @@
|
|
|
220
219
|
}
|
|
221
220
|
}
|
|
222
221
|
|
|
223
|
-
&.mod-
|
|
224
|
-
&.mod-
|
|
222
|
+
&.mod-outlined,
|
|
223
|
+
&.mod-outline { // legacy
|
|
225
224
|
background-color: _color("white");
|
|
226
225
|
box-shadow: inset 0 0 0 1px _color("grey", "400");
|
|
227
226
|
color: _color("text.default");
|
|
228
227
|
|
|
229
|
-
&:
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
228
|
+
&:not([disabled], .is-disabled) {
|
|
229
|
+
&:hover {
|
|
230
|
+
background-color: _color("grey", "100");
|
|
231
|
+
color: _color("text.default");
|
|
232
|
+
box-shadow: _theme('commons.elevations.elevation-1'), inset 0 0 0 1px _color("grey", "400");
|
|
233
|
+
}
|
|
234
|
+
|
|
235
|
+
&:focus {
|
|
236
|
+
background-color: _color("grey", "100");
|
|
237
|
+
color: _color("text.default");
|
|
238
|
+
box-shadow: _theme('commons.elevations.elevation-1'), 0 0 0 4px _color("primary", "100"), inset 0 0 0 1px _color("primary", "400");
|
|
239
|
+
outline: none;
|
|
240
|
+
}
|
|
241
|
+
|
|
242
|
+
&:active {
|
|
243
|
+
background-color: _color("grey", "200");
|
|
244
|
+
color: _color("text.default");
|
|
245
|
+
box-shadow: _theme('commons.elevations.elevation-1'), 0 0 0 4px _color("primary", "200"), inset 0 0 0 1px _color("primary", "500");
|
|
246
|
+
}
|
|
246
247
|
}
|
|
247
248
|
|
|
249
|
+
|
|
250
|
+
|
|
248
251
|
// TODO delete this class ?
|
|
249
252
|
&.mod-white {
|
|
250
253
|
background-color: _color("white");
|
|
251
254
|
color: _color("grey", "700");
|
|
252
255
|
}
|
|
253
|
-
|
|
256
|
+
|
|
254
257
|
// palette colors
|
|
255
258
|
@each $name, $palette in _getMap("palettes") {
|
|
256
259
|
&.palette-#{$name} {
|
|
@@ -312,6 +315,26 @@
|
|
|
312
315
|
// ▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒
|
|
313
316
|
|
|
314
317
|
.button {
|
|
318
|
+
/* Disabled */
|
|
319
|
+
|
|
320
|
+
&.is-disabled,
|
|
321
|
+
&[disabled] {
|
|
322
|
+
outline: none;
|
|
323
|
+
background-color: _color('grey', 100);
|
|
324
|
+
color: _color('grey', 500);
|
|
325
|
+
cursor: default;
|
|
326
|
+
|
|
327
|
+
&.mod-outlined,
|
|
328
|
+
&.mod-outline { // legacy
|
|
329
|
+
background-color: _color('white');
|
|
330
|
+
border-color: _color('grey', 200);
|
|
331
|
+
}
|
|
332
|
+
|
|
333
|
+
&.mod-link {
|
|
334
|
+
color: _color('grey', 500);
|
|
335
|
+
background-color: transparent;
|
|
336
|
+
}
|
|
337
|
+
}
|
|
315
338
|
|
|
316
339
|
/* Loading */
|
|
317
340
|
|
|
@@ -385,7 +408,7 @@
|
|
|
385
408
|
}
|
|
386
409
|
|
|
387
410
|
.button {
|
|
388
|
-
@include buttonColoring("button.default-palette");
|
|
411
|
+
// @include buttonColoring("button.default-palette");
|
|
389
412
|
|
|
390
413
|
border-radius: 0;
|
|
391
414
|
display: block;
|
|
@@ -393,7 +416,10 @@
|
|
|
393
416
|
padding-left: _theme("spacings.small");
|
|
394
417
|
padding-right: _theme("spacings.small");
|
|
395
418
|
position: relative;
|
|
396
|
-
|
|
419
|
+
|
|
420
|
+
&:not(.mod-outline, .mod-outlined) {
|
|
421
|
+
border-right: _theme('commons.divider.width') solid rgba(0, 0, 0, .1);
|
|
422
|
+
}
|
|
397
423
|
|
|
398
424
|
&:first-child {
|
|
399
425
|
border-radius: _component("button.border.radius") 0 0 _component("button.border.radius");
|
|
@@ -404,13 +430,22 @@
|
|
|
404
430
|
border-right: 0;
|
|
405
431
|
}
|
|
406
432
|
|
|
407
|
-
&:
|
|
408
|
-
|
|
433
|
+
&:not(:first-child) {
|
|
434
|
+
&.mod-outline,
|
|
435
|
+
&.mod-outlined {
|
|
436
|
+
margin-left: -1px;
|
|
437
|
+
}
|
|
409
438
|
}
|
|
410
439
|
|
|
411
|
-
&:
|
|
412
|
-
|
|
413
|
-
|
|
440
|
+
&:not([disabled], .is-disabled) {
|
|
441
|
+
&:hover, &:focus {
|
|
442
|
+
z-index: 1;
|
|
443
|
+
}
|
|
444
|
+
|
|
445
|
+
&:focus {
|
|
446
|
+
background-color: _color("primary", "600");
|
|
447
|
+
box-shadow: none;
|
|
448
|
+
}
|
|
414
449
|
}
|
|
415
450
|
}
|
|
416
451
|
|
|
@@ -124,6 +124,7 @@
|
|
|
124
124
|
.checkboxesfield.mod-framed,
|
|
125
125
|
.radiosfield.mod-framed,
|
|
126
126
|
.form.mod-framed .fieldsetWrapper {
|
|
127
|
+
background-color: _color("white");
|
|
127
128
|
padding: 0;
|
|
128
129
|
box-shadow: fakeborderoverlay(_component("field.framed.border"));
|
|
129
130
|
transition: background-color _theme("commons.animations.durations.standard");
|
|
@@ -139,14 +140,19 @@
|
|
|
139
140
|
clear: both;
|
|
140
141
|
}
|
|
141
142
|
|
|
142
|
-
&:
|
|
143
|
-
|
|
144
|
-
|
|
143
|
+
&:not(.is-disabled, :disabled, .is-error, .is-success, .is-valid, .is-warning, .is-invalid) {
|
|
144
|
+
&:hover,
|
|
145
|
+
&:focus {
|
|
146
|
+
position: relative;
|
|
147
|
+
z-index: 1;
|
|
148
|
+
background-color: _color("white");
|
|
149
|
+
box-shadow: fakeborderoverlay(_component("field.framed.color"));
|
|
150
|
+
}
|
|
145
151
|
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
152
|
+
&:focus {
|
|
153
|
+
z-index: 4;
|
|
154
|
+
box-shadow: fakeborderoverlay(_component("field.framed.color")), 0 0 0 4px _component("field.framed.color50");
|
|
155
|
+
}
|
|
150
156
|
}
|
|
151
157
|
|
|
152
158
|
.radiosfield, .checkboxesfield {
|
|
@@ -169,10 +175,6 @@
|
|
|
169
175
|
|
|
170
176
|
&.is-disabled, &.is-readonly {
|
|
171
177
|
background-color: _theme("commons.disabled.background");
|
|
172
|
-
|
|
173
|
-
.radio-label, .checkbox-label {
|
|
174
|
-
cursor: not-allowed;
|
|
175
|
-
}
|
|
176
178
|
}
|
|
177
179
|
|
|
178
180
|
&.is-loading {
|
|
@@ -17,30 +17,31 @@
|
|
|
17
17
|
cursor: pointer;
|
|
18
18
|
display: inline-flex;
|
|
19
19
|
align-items: flex-start;
|
|
20
|
-
transition: color _theme(
|
|
20
|
+
transition: color _theme('commons.animations.durations.fast') ease;
|
|
21
21
|
|
|
22
22
|
&::before {
|
|
23
|
-
@include makeIcon(
|
|
24
|
-
|
|
25
|
-
border:
|
|
23
|
+
@include makeIcon('tick');
|
|
24
|
+
background-color: _color("white");
|
|
25
|
+
border-radius: _component('checkbox.input.border-radius');
|
|
26
|
+
border: 2px solid _component('checkbox.input.border.color');
|
|
26
27
|
color: transparent;
|
|
27
28
|
display: block;
|
|
28
29
|
flex: 0 0 auto;
|
|
29
|
-
font-size: .8rem;
|
|
30
|
-
height: _component(
|
|
30
|
+
font-size: 0.8rem;
|
|
31
|
+
height: _component('checkbox.input.size');
|
|
31
32
|
line-height: 1;
|
|
32
|
-
margin-right: _component(
|
|
33
|
-
margin-top: _component(
|
|
33
|
+
margin-right: _component('checkbox.input.margin-right');
|
|
34
|
+
margin-top: _component('checkbox.input.margin-top');
|
|
34
35
|
text-align: center;
|
|
35
|
-
transition: all _theme(
|
|
36
|
-
width: _component(
|
|
36
|
+
transition: all _theme('commons.animations.durations.fast') ease;
|
|
37
|
+
width: _component('checkbox.input.size');
|
|
37
38
|
}
|
|
38
39
|
|
|
39
40
|
&:hover {
|
|
40
|
-
color: _color(
|
|
41
|
+
color: _color('text.light');
|
|
41
42
|
|
|
42
43
|
&::before {
|
|
43
|
-
border-color: _component(
|
|
44
|
+
border-color: _component('checkbox.input.border.hover');
|
|
44
45
|
}
|
|
45
46
|
}
|
|
46
47
|
}
|
|
@@ -61,54 +62,56 @@
|
|
|
61
62
|
.checkbox-input:not(:disabled):checked ~ .checkbox-label {
|
|
62
63
|
&:hover {
|
|
63
64
|
&::before {
|
|
64
|
-
background-color: _color($palette,
|
|
65
|
-
border-color: _color($palette,
|
|
65
|
+
background-color: _color($palette, '600');
|
|
66
|
+
border-color: _color($palette, '600');
|
|
66
67
|
}
|
|
67
68
|
}
|
|
68
69
|
}
|
|
69
70
|
|
|
70
71
|
.checkbox-input:focus ~ .checkbox-label {
|
|
71
72
|
&::before {
|
|
72
|
-
box-shadow: 0 0 0 4px _color($palette,
|
|
73
|
+
box-shadow: 0 0 0 4px _color($palette, '200');
|
|
73
74
|
}
|
|
74
75
|
}
|
|
75
76
|
}
|
|
76
77
|
|
|
77
78
|
// default color
|
|
78
|
-
@include checkboxColoring(
|
|
79
|
+
@include checkboxColoring('checkbox.default-palette');
|
|
79
80
|
|
|
80
81
|
// Status and associated palettes
|
|
81
|
-
&.palette-error,
|
|
82
|
+
&.palette-error,
|
|
83
|
+
&.is-error {
|
|
82
84
|
.checkbox-label {
|
|
83
85
|
&::before {
|
|
84
|
-
border-color: _color(
|
|
86
|
+
border-color: _color('error', '600');
|
|
85
87
|
}
|
|
86
88
|
}
|
|
87
89
|
}
|
|
88
|
-
&.palette-warning,
|
|
90
|
+
&.palette-warning,
|
|
91
|
+
&.is-warning {
|
|
89
92
|
.checkbox-label {
|
|
90
93
|
&::before {
|
|
91
|
-
border-color: _color(
|
|
94
|
+
border-color: _color('warning', '600');
|
|
92
95
|
}
|
|
93
96
|
}
|
|
94
97
|
}
|
|
95
|
-
&.palette-success,
|
|
98
|
+
&.palette-success,
|
|
99
|
+
&.is-success {
|
|
96
100
|
.checkbox-label {
|
|
97
101
|
&::before {
|
|
98
|
-
border-color: _color(
|
|
102
|
+
border-color: _color('success', '600');
|
|
99
103
|
}
|
|
100
104
|
}
|
|
101
105
|
}
|
|
102
106
|
|
|
103
107
|
// palette colors
|
|
104
|
-
@each $name, $palette in _getMap(
|
|
108
|
+
@each $name, $palette in _getMap('palettes') {
|
|
105
109
|
&.palette-#{$name} {
|
|
106
110
|
@include checkboxColoring($name);
|
|
107
111
|
}
|
|
108
112
|
}
|
|
109
113
|
}
|
|
110
114
|
|
|
111
|
-
|
|
112
115
|
// MODS
|
|
113
116
|
// ▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒
|
|
114
117
|
|
|
@@ -134,14 +137,14 @@
|
|
|
134
137
|
|
|
135
138
|
&.mod-small {
|
|
136
139
|
.checkbox-label {
|
|
137
|
-
font-size: _theme(
|
|
138
|
-
line-height: _theme(
|
|
140
|
+
font-size: _theme('sizes.small.font-size');
|
|
141
|
+
line-height: _theme('sizes.small.line-height');
|
|
139
142
|
|
|
140
143
|
&::before {
|
|
141
|
-
width: _theme(
|
|
142
|
-
height: _theme(
|
|
143
|
-
font-size: _theme(
|
|
144
|
-
margin-top: _component(
|
|
144
|
+
width: _theme('sizes.small.font-size');
|
|
145
|
+
height: _theme('sizes.small.font-size');
|
|
146
|
+
font-size: _theme('sizes.smaller.font-size');
|
|
147
|
+
margin-top: _component('checkbox.input.small-top');
|
|
145
148
|
}
|
|
146
149
|
}
|
|
147
150
|
}
|
|
@@ -162,22 +165,23 @@
|
|
|
162
165
|
// STATES
|
|
163
166
|
// ▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒
|
|
164
167
|
|
|
165
|
-
|
|
166
168
|
.checkbox .checkbox-input {
|
|
167
|
-
&[disabled]
|
|
169
|
+
&[disabled],
|
|
170
|
+
&[read-only] {
|
|
168
171
|
~ .checkbox-label {
|
|
169
|
-
color: _color(
|
|
172
|
+
color: _color('grey', '500');
|
|
170
173
|
cursor: default;
|
|
171
174
|
|
|
172
175
|
&::before {
|
|
173
|
-
border: 2px solid _color(
|
|
176
|
+
border: 2px solid _color('grey', '500');
|
|
174
177
|
}
|
|
175
178
|
}
|
|
176
179
|
|
|
177
180
|
&:checked ~ .checkbox-label {
|
|
178
181
|
&::before {
|
|
179
|
-
|
|
180
|
-
|
|
182
|
+
color: _color('grey', '500');
|
|
183
|
+
background-color: _color('grey', '200');
|
|
184
|
+
border: 2px solid _color('grey', '200');
|
|
181
185
|
}
|
|
182
186
|
}
|
|
183
187
|
}
|
|
@@ -185,7 +189,7 @@
|
|
|
185
189
|
~ .checkbox-mixed ~ .checkbox-label,
|
|
186
190
|
&.is-incomplete ~ .checkbox-label {
|
|
187
191
|
&::before {
|
|
188
|
-
@include makeIcon(
|
|
192
|
+
@include makeIcon('partial');
|
|
189
193
|
}
|
|
190
194
|
}
|
|
191
195
|
}
|
|
@@ -35,10 +35,14 @@
|
|
|
35
35
|
}
|
|
36
36
|
|
|
37
37
|
.#{$fieldname}-input {
|
|
38
|
-
&:not(:disabled) {
|
|
38
|
+
&:not(:disabled, .is-error, .is-success, .is-valid, .is-warning, .is-invalid) {
|
|
39
|
+
background-color: _color("white");
|
|
40
|
+
|
|
39
41
|
&:focus, &:hover {
|
|
40
42
|
position: relative;
|
|
41
43
|
z-index: 1;
|
|
44
|
+
background-color: _color("white");
|
|
45
|
+
box-shadow: fakeborderoverlay(_component("field.framed.color"));
|
|
42
46
|
|
|
43
47
|
~ .#{$fieldname}-messages {
|
|
44
48
|
transform: translateY(100%);
|
|
@@ -47,6 +51,7 @@
|
|
|
47
51
|
|
|
48
52
|
&:focus {
|
|
49
53
|
z-index: 4;
|
|
54
|
+
box-shadow: fakeborderoverlay(_component("field.framed.color")), 0 0 0 4px _component("field.framed.color50");
|
|
50
55
|
}
|
|
51
56
|
}
|
|
52
57
|
}
|