Skip to content

Commit 223de93

Browse files
committed
chore: remove toggle markup copy for reverse-order
1 parent 995cf82 commit 223de93

2 files changed

Lines changed: 31 additions & 77 deletions

File tree

app/components/Settings/Toggle.client.vue

Lines changed: 24 additions & 54 deletions
Original file line numberDiff line numberDiff line change
@@ -35,62 +35,32 @@ const id = useId()
3535
: 'grid-template-areas: \'label-text . toggle\''
3636
"
3737
>
38-
<template v-if="props.reverseOrder">
39-
<input
40-
role="switch"
41-
type="checkbox"
42-
:id="id"
43-
v-model="checked"
44-
class="toggle appearance-none h-6 w-11 rounded-full border border-fg relative shrink-0 bg-fg/50 transition-colors duration-200 ease-in-out checked:bg-fg [@media(hover:hover)]:hover:bg-fg/60 [@media(hover:hover)]:checked:hover:(bg-fg/80 after:opacity-50) focus-visible:(outline-2 outline-accent outline-offset-2) before:(content-[''] absolute h-5 w-5 top-px start-px rounded-full bg-bg transition-transform duration-200 ease-in-out) checked:before:translate-x-[20px] rtl:checked:before:-translate-x-[20px] after:(content-[''] absolute h-3.5 w-3.5 top-[4px] start-[4px] i-lucide:check bg-fg opacity-0 transition-all duration-200 ease-in-out) checked:after:opacity-100 checked:after:translate-x-[20px] rtl:checked:after:-translate-x-[20px]"
45-
style="grid-area: toggle"
46-
/>
47-
<TooltipApp
48-
v-if="tooltip && label"
49-
:text="tooltip"
50-
:position="tooltipPosition ?? 'top'"
51-
:to="tooltipTo"
52-
:offset="tooltipOffset"
53-
>
54-
<span class="text-sm text-fg font-medium text-start" style="grid-area: label-text">
55-
{{ label }}
56-
</span>
57-
</TooltipApp>
58-
<span
59-
v-else-if="label"
60-
class="text-sm text-fg font-medium text-start"
61-
style="grid-area: label-text"
62-
>
38+
<TooltipApp
39+
v-if="tooltip && label"
40+
:text="tooltip"
41+
:position="tooltipPosition ?? 'top'"
42+
:to="tooltipTo"
43+
:offset="tooltipOffset"
44+
>
45+
<span class="text-sm text-fg font-medium text-start" style="grid-area: label-text">
6346
{{ label }}
6447
</span>
65-
</template>
66-
<template v-else>
67-
<TooltipApp
68-
v-if="tooltip && label"
69-
:text="tooltip"
70-
:position="tooltipPosition ?? 'top'"
71-
:to="tooltipTo"
72-
:offset="tooltipOffset"
73-
>
74-
<span class="text-sm text-fg font-medium text-start" style="grid-area: label-text">
75-
{{ label }}
76-
</span>
77-
</TooltipApp>
78-
<span
79-
v-else-if="label"
80-
class="text-sm text-fg font-medium text-start"
81-
style="grid-area: label-text"
82-
>
83-
{{ label }}
84-
</span>
85-
<input
86-
role="switch"
87-
type="checkbox"
88-
:id="id"
89-
v-model="checked"
90-
class="toggle appearance-none h-6 w-11 rounded-full border border-fg relative shrink-0 bg-fg/50 transition-colors duration-200 ease-in-out checked:bg-fg [@media(hover:hover)]:hover:bg-fg/60 [@media(hover:hover)]:checked:hover:(bg-fg/80 after:opacity-50) focus-visible:(outline-2 outline-accent outline-offset-2) before:(content-[''] absolute h-5 w-5 top-px start-px rounded-full bg-bg transition-transform duration-200 ease-in-out) checked:before:translate-x-[20px] rtl:checked:before:-translate-x-[20px] after:(content-[''] absolute h-3.5 w-3.5 top-[4px] start-[4px] i-lucide:check bg-fg opacity-0 transition-all duration-200 ease-in-out) checked:after:opacity-100 checked:after:translate-x-[20px] rtl:checked:after:-translate-x-[20px]"
91-
style="grid-area: toggle; justify-self: end"
92-
/>
93-
</template>
48+
</TooltipApp>
49+
<span
50+
v-else-if="label"
51+
class="text-sm text-fg font-medium text-start"
52+
style="grid-area: label-text"
53+
>
54+
{{ label }}
55+
</span>
56+
<input
57+
role="switch"
58+
type="checkbox"
59+
:id="id"
60+
v-model="checked"
61+
class="toggle appearance-none h-6 w-11 rounded-full border border-fg relative shrink-0 bg-fg/50 transition-colors duration-200 ease-in-out checked:bg-fg [@media(hover:hover)]:hover:bg-fg/60 [@media(hover:hover)]:checked:hover:(bg-fg/80 after:opacity-50) focus-visible:(outline-2 outline-accent outline-offset-2) before:(content-[''] absolute h-5 w-5 top-px start-px rounded-full bg-bg transition-transform duration-200 ease-in-out) checked:before:translate-x-[20px] rtl:checked:before:-translate-x-[20px] after:(content-[''] absolute h-3.5 w-3.5 top-[4px] start-[4px] i-lucide:check bg-fg opacity-0 transition-all duration-200 ease-in-out) checked:after:opacity-100 checked:after:translate-x-[20px] rtl:checked:after:-translate-x-[20px]"
62+
style="grid-area: toggle; justify-self: end"
63+
/>
9464
</label>
9565
<p v-if="description" class="text-sm text-fg-muted mt-2">
9666
{{ description }}

app/components/Settings/Toggle.server.vue

Lines changed: 7 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -27,29 +27,13 @@ const props = withDefaults(
2727
: 'grid-template-areas: \'label-text . toggle\''
2828
"
2929
>
30-
<template v-if="props.reverseOrder">
31-
<SkeletonBlock class="h-6 w-11 shrink-0 rounded-full" style="grid-area: toggle" />
32-
<span
33-
v-if="label"
34-
class="text-sm text-fg font-medium text-start"
35-
style="grid-area: label-text"
36-
>
37-
{{ label }}
38-
</span>
39-
</template>
40-
<template v-else>
41-
<span
42-
v-if="label"
43-
class="text-sm text-fg font-medium text-start"
44-
style="grid-area: label-text"
45-
>
46-
{{ label }}
47-
</span>
48-
<SkeletonBlock
49-
class="h-6 w-11 shrink-0 rounded-full"
50-
style="grid-area: toggle; justify-self: end"
51-
/>
52-
</template>
30+
<span v-if="label" class="text-sm text-fg font-medium text-start" style="grid-area: label-text">
31+
{{ label }}
32+
</span>
33+
<SkeletonBlock
34+
class="h-6 w-11 shrink-0 rounded-full"
35+
style="grid-area: toggle; justify-self: end"
36+
/>
5337
</div>
5438
<p v-if="description" class="text-sm text-fg-muted mt-2">
5539
{{ description }}

0 commit comments

Comments
 (0)