add dark mode base switch & switcher

This commit is contained in:
yashkanakiya
2023-03-23 13:18:55 +05:30
parent 15f3f566e3
commit e8060f56be
2 changed files with 11 additions and 23 deletions

View File

@ -7,29 +7,17 @@
<Switch
v-model="enabled"
:class="enabled ? 'bg-primary-500' : 'bg-gray-300'"
class="
relative
inline-flex
items-center
h-6
transition-colors
rounded-full
w-11
focus:outline-none focus:ring-primary-500
"
:class="enabled ? 'bg-primary-500' : 'bg-gray-300 dark:bg-gray-900'"
class="relative inline-flex items-center h-6 transition-colors rounded-full w-11 focus:outline-none focus:ring-primary-500"
v-bind="$attrs"
>
<span
:class="enabled ? 'translate-x-6' : 'translate-x-1'"
class="
inline-block
w-4
h-4
transition-transform
bg-white
rounded-full
:class="
enabled
? 'translate-x-6 dark:bg-white'
: 'translate-x-1 dark:bg-gray-500'
"
class="inline-block w-4 h-4 transition-transform bg-white rounded-full"
/>
</Switch>

View File

@ -5,12 +5,12 @@
<div class="flex flex-col">
<SwitchLabel
as="p"
class="p-0 mb-1 text-sm leading-snug text-black font-medium"
class="p-0 mb-1 text-sm leading-snug text-black font-medium dark:text-white"
passive
>
{{ title }}
</SwitchLabel>
<SwitchDescription class="text-sm text-gray-500">
<SwitchDescription class="text-sm text-gray-500 dark:text-gray-400">
{{ description }}
</SwitchDescription>
</div>
@ -18,7 +18,7 @@
:disabled="disabled"
:model-value="modelValue"
:class="[
modelValue ? 'bg-primary-500' : 'bg-gray-200',
modelValue ? 'bg-primary-500' : 'bg-gray-200 dark:bg-gray-900',
'ml-4 relative inline-flex shrink-0 h-6 w-11 border-2 border-transparent rounded-full cursor-pointer transition-colors ease-in-out duration-200 focus:outline-none focus:ring-2 focus:ring-offset-2 focus:ring-primary-500',
]"
@update:modelValue="onUpdate"
@ -26,7 +26,7 @@
<span
aria-hidden="true"
:class="[
modelValue ? 'translate-x-5' : 'translate-x-0',
modelValue ? 'translate-x-5 dark:bg-white' : 'translate-x-0 dark:bg-gray-500',
'inline-block h-5 w-5 rounded-full bg-white shadow ring-0 transition ease-in-out duration-200',
]"
/>