@@ -13,7 +13,7 @@ import {
13
13
import { Input } from "@/components/ui/input" ;
14
14
import { Label } from "@/components/ui/label" ;
15
15
import { ScrollArea } from "@/components/ui/scroll-area" ;
16
- import { FolderOpen } from "lucide-react" ;
16
+ import { FolderOpen , Loader2 } from "lucide-react" ;
17
17
import { useUser } from "@clerk/nextjs" ;
18
18
import { Collection } from "@prisma/client" ;
19
19
import { getCollections } from "@/app/_actions" ;
@@ -172,7 +172,7 @@ export default function SaveMeme({ src, name, memeId }: MemeProps) {
172
172
className = { `p-2 cursor-pointer dark:hover:bg-primary hover:bg-gray-100 rounded ${
173
173
selectedCollection ?. id === collection . id
174
174
? "bg-primary text-white hover:bg-primary/80 hover:text-white"
175
- : ""
175
+ : ""
176
176
} `}
177
177
onClick = { ( ) => {
178
178
if ( selectedCollection ?. id !== collection . id ) {
@@ -188,7 +188,14 @@ export default function SaveMeme({ src, name, memeId }: MemeProps) {
188
188
</ ScrollArea >
189
189
< DialogFooter >
190
190
< Button onClick = { handleSaveMeme } disabled = { loading } >
191
- { loading ? "Saving..." : "Save meme" }
191
+ { loading ? (
192
+ < span className = "flex items-center justify-center" >
193
+ < Loader2 className = "mr-2 animate-spin" />
194
+ Saving
195
+ </ span >
196
+ ) : (
197
+ "Save meme"
198
+ ) }
192
199
</ Button >
193
200
</ DialogFooter >
194
201
</ >
@@ -198,7 +205,10 @@ export default function SaveMeme({ src, name, memeId }: MemeProps) {
198
205
return (
199
206
< Dialog open = { open } onOpenChange = { handleOpenChange } >
200
207
< DialogTrigger asChild >
201
- < Button variant = "secondary" className = "bg-gray-600 hover:bg-gray-800 text-white focus:bg-gray-900" >
208
+ < Button
209
+ variant = "secondary"
210
+ className = "bg-gray-600 hover:bg-gray-800 text-white focus:bg-gray-900"
211
+ >
202
212
< FolderOpen className = "mr-2" /> Save to Collection
203
213
</ Button >
204
214
</ DialogTrigger >
0 commit comments