Skip to content

Commit 506313a

Browse files
committed
Close #32
1 parent 4fb5684 commit 506313a

File tree

1 file changed

+26
-36
lines changed

1 file changed

+26
-36
lines changed

css/components/toggle.css

Lines changed: 26 additions & 36 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
/* General Styling */
1+
/* General Toggle Styling */
22
.toggle {
33
display: inline-flex;
44
align-items: center;
@@ -22,7 +22,7 @@
2222
outline: none;
2323
border-radius: var(--radius-full);
2424
cursor: pointer;
25-
transition: background-color 0.35s cubic-bezier(0.25, 1, 0.5, 1), box-shadow 0.35s cubic-bezier(0.25, 1, 0.5, 1);
25+
transition: background-color var(--transition-all), box-shadow var(--transition-all);
2626
box-shadow: inset 0 0 5px rgba(0, 0, 0, 0.3);
2727
}
2828

@@ -37,7 +37,7 @@
3737
top: 50%;
3838
left: 0.25rem;
3939
transform: translateY(-50%);
40-
transition: transform 0.4s cubic-bezier(0.25, 1, 0.5, 1), background-color 0.35s ease-in-out, box-shadow 0.3s ease-in-out;
40+
transition: transform var(--transition-all), background-color var(--transition-all), box-shadow var(--transition-all);
4141
box-shadow: 0 2px 4px rgba(0, 0, 0, 0.15);
4242
z-index: 1;
4343
}
@@ -53,54 +53,47 @@
5353
background-color: var(--primary);
5454
}
5555

56-
/* Simulated Light Versions */
57-
.toggle-success input[type="checkbox"]:checked {
58-
background-color: rgba(16, 185, 129, 0.2); /* Light green */
56+
/* Variant Colors */
57+
[data-variant="success"] input[type="checkbox"]:checked {
58+
background-color: rgba(16, 185, 129, 0.2);
5959
}
60-
61-
.toggle-danger input[type="checkbox"]:checked {
62-
background-color: rgba(239, 68, 68, 0.2); /* Light red */
63-
}
64-
65-
.toggle-warning input[type="checkbox"]:checked {
66-
background-color: rgba(245, 158, 11, 0.2); /* Light yellow */
67-
}
68-
69-
.toggle-info input[type="checkbox"]:checked {
70-
background-color: rgba(59, 130, 246, 0.2); /* Light blue */
71-
}
72-
73-
/* Icon Color Adjustments */
74-
.toggle-success input[type="checkbox"]:checked::before {
60+
[data-variant="success"] input[type="checkbox"]:checked::before {
7561
background-color: var(--success);
7662
}
7763

78-
.toggle-danger input[type="checkbox"]:checked::before {
64+
[data-variant="danger"] input[type="checkbox"]:checked {
65+
background-color: rgba(239, 68, 68, 0.2);
66+
}
67+
[data-variant="danger"] input[type="checkbox"]:checked::before {
7968
background-color: var(--danger);
8069
}
8170

82-
.toggle-warning input[type="checkbox"]:checked::before {
71+
[data-variant="warning"] input[type="checkbox"]:checked {
72+
background-color: rgba(245, 158, 11, 0.2);
73+
}
74+
[data-variant="warning"] input[type="checkbox"]:checked::before {
8375
background-color: var(--warning);
8476
}
8577

86-
.toggle-info input[type="checkbox"]:checked::before {
78+
[data-variant="info"] input[type="checkbox"]:checked {
79+
background-color: rgba(59, 130, 246, 0.2);
80+
}
81+
[data-variant="info"] input[type="checkbox"]:checked::before {
8782
background-color: var(--info);
8883
}
8984

9085
/* Primary, Secondary, and Accent Variants */
91-
.toggle-primary input[type="checkbox"]:checked {
86+
[data-variant="primary"] input[type="checkbox"]:checked {
9287
background-color: var(--primary-light);
9388
}
94-
95-
.toggle-secondary input[type="checkbox"]:checked {
96-
background-color: var(--secondary-light);
97-
}
98-
99-
.toggle-primary input[type="checkbox"]:checked::before {
89+
[data-variant="primary"] input[type="checkbox"]:checked::before {
10090
background-color: var(--primary);
10191
}
10292

103-
.toggle-secondary input[type="checkbox"]:checked::before {
93+
[data-variant="secondary"] input[type="checkbox"]:checked {
94+
background-color: var(--secondary-light);
95+
}
96+
[data-variant="secondary"] input[type="checkbox"]:checked::before {
10497
background-color: var(--secondary);
10598
}
10699

@@ -110,21 +103,18 @@
110103
cursor: not-allowed;
111104
opacity: 0.6;
112105
}
113-
114106
.toggle input[type="checkbox"]:disabled::before {
115107
background-color: var(--neutral-400);
116108
}
117-
118109
.toggle input[type="checkbox"]:disabled:checked {
119110
background-color: var(--neutral-300);
120111
}
121-
122112
.toggle input[type="checkbox"]:disabled:checked::before {
123113
background-color: var(--neutral-400);
124114
}
125115

126116
/* Readonly State */
127-
.toggle-readonly {
117+
[data-state="readonly"] .toggle {
128118
pointer-events: none;
129119
}
130120

0 commit comments

Comments
 (0)