@@ -98,32 +98,51 @@ function handleKeyDown(event: KeyboardEvent, theme: CustomTheme) {
9898<template >
9999 <div title =" Change Theme" class =" dropdown dropdown-end" >
100100 <div tabindex =" 0" role =" button" class =" gap-1 btn btn-ghost btn-sm" aria-label =" Change Theme" >
101- <UnoCSSIconButton icon =" i-tabler-color-swatch" />
101+ <div class =" grid grid-cols-2 shrink-0 gap-0.5 border border-base-content/10 rounded-md bg-base-100 p-1" >
102+ <div class =" size-1 rounded-full bg-base-content" />
103+ <div class =" size-1 rounded-full bg-primary" />
104+ <div class =" size-1 rounded-full bg-secondary" />
105+ <div class =" size-1 rounded-full bg-accent" />
106+ </div >
102107 <span class =" hidden md:inline" >{{ t("Themes") }}</span >
103- <UnoCSSIconButton icon =" i-tabler-chevron-down" />
108+ <svg
109+ width =" 12px"
110+ height =" 12px"
111+ class =" mt-px hidden h-2 w-2 fill-current opacity-60 sm:inline-block"
112+ xmlns =" http://www.w3.org/2000/svg"
113+ viewBox =" 0 0 2048 2048"
114+ >
115+ <path d =" M1799 349l242 241-1017 1017L7 590l242-241 775 775 775-775z" />
116+ </svg >
104117 </div >
105- <div tabindex =" 0" class =" bg-base-200 text-base-content mt-16 outline-1 outline-black/5 border border-white/5 h-[30.5rem] max-h-[calc(100vh-8.6rem)] shadow-2xl top-px overflow-y-auto dropdown-content rounded-box" >
118+ <div
119+ tabindex =" 0"
120+ class =" dropdown-content top-px mt-12 h-[30.5rem] max-h-[calc(100vh-8.6rem)] overflow-y-auto border border-white/5 bg-base-200 text-base-content shadow-2xl outline-1 outline-black/5 rounded-box"
121+ >
106122 <ul class =" w-56 menu" >
107123 <li class =" text-xs menu-title" >
108124 {{ t("Themes") }}
109125 </li >
110126 <li v-for =" theme in themeList" :key =" theme.id" >
111127 <button
112- class =" px-2 gap-3"
128+ class =" gap-3 px-2 "
113129 :class =" mode === theme.id ? '[& _svg]:visible' : ''"
114130 @click =" changeTheme($event, theme.id)"
115131 @keydown =" handleKeyDown($event, theme.id)"
116132 >
117- <div :data-theme =" theme.id" class =" bg-base-100 p-1 rounded-md shrink-0 gap-0.5 grid grid-cols-2 shadow-sm" >
118- <div class =" bg-base-content rounded-full size-1" />
119- <div class =" bg-primary rounded-full size-1" />
120- <div class =" bg-secondary rounded-full size-1" />
121- <div class =" bg-accent rounded-full size-1" />
133+ <div
134+ :data-theme =" theme.id"
135+ class =" grid grid-cols-2 shrink-0 gap-0.5 rounded-md bg-base-100 p-1 shadow-sm"
136+ >
137+ <div class =" size-1 rounded-full bg-base-content" />
138+ <div class =" size-1 rounded-full bg-primary" />
139+ <div class =" size-1 rounded-full bg-secondary" />
140+ <div class =" size-1 rounded-full bg-accent" />
122141 </div >
123142 <div class =" w-32 truncate" >
124143 {{ theme.id }}
125144 </div >
126- <svg xmlns =" http://www.w3.org/2000/svg" width =" 16" height =" 16" viewBox =" 0 0 24 24" fill =" currentColor" class =" shrink-0 h-3 w-3 invisible " >
145+ <svg xmlns =" http://www.w3.org/2000/svg" width =" 16" height =" 16" viewBox =" 0 0 24 24" fill =" currentColor" class =" invisible h-3 w-3 shrink-0 " >
127146 <path d =" M20.285 2l-11.285 11.567-5.286-5.011-3.714 3.716 9 8.728 15-15.285z" />
128147 </svg >
129148 </button >
@@ -135,6 +154,26 @@ function handleKeyDown(event: KeyboardEvent, theme: CustomTheme) {
135154</template >
136155
137156<style scoped>
157+ .scrollbar ::-webkit-scrollbar {
158+ width : 20px ;
159+ height : 20px ;
160+ }
161+
162+ .scrollbar ::-webkit-scrollbar-track {
163+ border-radius : 100vh ;
164+ background : #f7f4ed ;
165+ }
166+
167+ .scrollbar ::-webkit-scrollbar-thumb {
168+ background : #e0cbcb ;
169+ border-radius : 100vh ;
170+ border : 3px solid #f6f7ed ;
171+ }
172+
173+ .scrollbar ::-webkit-scrollbar-thumb :hover {
174+ background : #c0a0b9 ;
175+ }
176+
138177::view-transition-old(root),
139178::view-transition-new(root) {
140179 animation : none ;
0 commit comments