Skip to content

Commit ebefbbf

Browse files
committed
Merge pull request auth0#43 from auth0/ui-switch-labeled
Added labeled switches in different sizes.
2 parents e10fa42 + fb35fdb commit ebefbbf

3 files changed

Lines changed: 130 additions & 3 deletions

File tree

landing/styles/inc/playground.styl

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -87,6 +87,3 @@
8787
#modal-component,
8888
#ui-switch-component
8989
padding: 40px;
90-
91-
> * + *
92-
margin-left: 20px;

lib/ui-switch/demo.jade

Lines changed: 82 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,5 @@
1+
<!-- Normal UI switch -->
2+
13
.ui-switch
24
input(type="checkbox")
35
label.status
@@ -13,3 +15,83 @@
1315
.ui-switch
1416
input(type="checkbox" disabled)
1517
label.status
18+
19+
br
20+
21+
<!-- Labeled UI switch sm -->
22+
23+
.ui-switch.ui-switch-labeled.ui-switch-sm
24+
input(type="checkbox")
25+
label(data-label-true="True", data-label-false="False").status
26+
27+
.ui-switch.ui-switch-labeled.ui-switch-sm
28+
input(type="checkbox" checked)
29+
label(data-label-true="True", data-label-false="False").status
30+
31+
.ui-switch.ui-switch-labeled.ui-switch-sm
32+
input(type="checkbox" checked disabled)
33+
label(data-label-true="True", data-label-false="False").status
34+
35+
.ui-switch.ui-switch-labeled.ui-switch-sm
36+
input(type="checkbox" disabled)
37+
label(data-label-true="True", data-label-false="False").status
38+
39+
br
40+
41+
<!-- Labeled UI switch md -->
42+
43+
.ui-switch.ui-switch-labeled.ui-switch-md
44+
input(type="checkbox")
45+
label(data-label-true="Authorized", data-label-false="Unauthorized").status
46+
47+
.ui-switch.ui-switch-labeled.ui-switch-md
48+
input(type="checkbox" checked)
49+
label(data-label-true="Authorized", data-label-false="Unauthorized").status
50+
51+
.ui-switch.ui-switch-labeled.ui-switch-md
52+
input(type="checkbox" checked disabled)
53+
label(data-label-true="Authorized", data-label-false="Unauthorized").status
54+
55+
.ui-switch.ui-switch-labeled.ui-switch-md
56+
input(type="checkbox" disabled)
57+
label(data-label-true="Authorized", data-label-false="Unauthorized").status
58+
59+
br
60+
61+
<!-- Labeled UI switch lg -->
62+
63+
.ui-switch.ui-switch-labeled.ui-switch-lg
64+
input(type="checkbox")
65+
label(data-label-true="Authorized safely", data-label-false="Unauthorized safely").status
66+
67+
.ui-switch.ui-switch-labeled.ui-switch-lg
68+
input(type="checkbox" checked)
69+
label(data-label-true="Authorized safely", data-label-false="Unauthorized safely").status
70+
71+
.ui-switch.ui-switch-labeled.ui-switch-lg
72+
input(type="checkbox" checked disabled)
73+
label(data-label-true="Authorized safely", data-label-false="Unauthorized safely").status
74+
75+
.ui-switch.ui-switch-labeled.ui-switch-lg
76+
input(type="checkbox" disabled)
77+
label(data-label-true="Authorized safely", data-label-false="Unauthorized safely").status
78+
79+
br
80+
81+
<!-- Labeled UI switch xl -->
82+
83+
.ui-switch.ui-switch-labeled.ui-switch-xl
84+
input(type="checkbox")
85+
label(data-label-true="Authorized very easily", data-label-false="Unauthorized very easily").status
86+
87+
.ui-switch.ui-switch-labeled.ui-switch-xl
88+
input(type="checkbox" checked)
89+
label(data-label-true="Authorized very easily", data-label-false="Unauthorized very easily").status
90+
91+
.ui-switch.ui-switch-labeled.ui-switch-xl
92+
input(type="checkbox" checked disabled)
93+
label(data-label-true="Authorized very easily", data-label-false="Unauthorized very easily").status
94+
95+
.ui-switch.ui-switch-labeled.ui-switch-xl
96+
input(type="checkbox" disabled)
97+
label(data-label-true="Authorized very easily", data-label-false="Unauthorized very easily").status

lib/ui-switch/index.styl

Lines changed: 48 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -49,3 +49,51 @@
4949
transition: transform 100ms ease;
5050
border-radius: 50%;
5151
transform: translate(-5%, -5%);
52+
53+
// Labeled switches
54+
.ui-switch.ui-switch-labeled
55+
.status
56+
&:before
57+
z-index 10
58+
&:after
59+
content attr(data-label-false)
60+
font-size 12px
61+
position absolute
62+
left calc(50% + 11px)
63+
top 50%
64+
transform: translate(-50%, -50%);
65+
z-index 0
66+
white-space nowrap
67+
68+
input[type="checkbox"]
69+
&:checked + .status:after
70+
content attr(data-label-true)
71+
left calc(50% - 11px)
72+
73+
&.ui-switch-sm
74+
width 90px
75+
76+
input[type="checkbox"]
77+
&:checked + .status:before
78+
transform: translate(58px, -5%);
79+
80+
&.ui-switch-md
81+
width 120px
82+
83+
input[type="checkbox"]
84+
&:checked + .status:before
85+
transform: translate(88px, -5%);
86+
87+
&.ui-switch-lg
88+
width 160px
89+
90+
input[type="checkbox"]
91+
&:checked + .status:before
92+
transform: translate(128px, -5%);
93+
94+
&.ui-switch-xl
95+
width 200px
96+
97+
input[type="checkbox"]
98+
&:checked + .status:before
99+
transform: translate(168px, -5%);

0 commit comments

Comments
 (0)