1
1
import { Eye , EyeOff , Search , Settings , Trash2 } from "lucide-react"
2
2
import { useMemo , useState } from "react"
3
3
import { twMerge } from "tailwind-merge"
4
- import { badgeCVA } from "@/components/design"
4
+ import { badgeCVA , typeIcons } from "@/components/design"
5
5
import MultiSegment from "@/components/MultiSegment"
6
6
import { allLeafValues } from "@/components/misc"
7
7
import type { CommentTableRow } from "@/entrypoints/background"
@@ -100,11 +100,6 @@ export function PopupRoot({ drafts }: PopupRootProps) {
100
100
showTrashed : true ,
101
101
} )
102
102
}
103
-
104
- if ( drafts . length === 0 ) {
105
- return < EmptyState />
106
- }
107
-
108
103
return (
109
104
< div className = "bg-white" >
110
105
{ /* Bulk actions bar - floating popup */ }
@@ -217,7 +212,10 @@ export function PopupRoot({ drafts }: PopupRootProps) {
217
212
{ filteredDrafts . length === 0 && (
218
213
< tr >
219
214
< td colSpan = { 2 } >
220
- < NoMatchesState onClearFilters = { clearFilters } />
215
+ { drafts . length === 0 && < EmptyState /> }
216
+ { drafts . length > 0 && (
217
+ < NoMatchesState onClearFilters = { clearFilters } />
218
+ ) }
221
219
</ td >
222
220
</ tr >
223
221
) }
@@ -234,6 +232,50 @@ export function PopupRoot({ drafts }: PopupRootProps) {
234
232
</ tbody >
235
233
</ table >
236
234
</ div >
235
+
236
+ { /* Footer shelf */ }
237
+ < div className = "border-gray-300 border-t bg-gray-50 px-3 py-2 text-gray-600 text-xs" >
238
+ < div className = "flex items-center justify-between" >
239
+ < div >
240
+ built with 🤖 by{ " " }
241
+ < a
242
+ href = "https://nedshed.dev/"
243
+ target = "_blank"
244
+ rel = "noopener noreferrer"
245
+ className = "text-blue-600 hover:underline"
246
+ >
247
+ nedshed.dev
248
+ </ a > { " " }
249
+ using{ " " }
250
+ < a
251
+ href = "https://overtype.dev/"
252
+ target = "_blank"
253
+ rel = "noopener noreferrer"
254
+ className = "text-blue-600 hover:underline"
255
+ >
256
+ overtype
257
+ </ a >
258
+ </ div >
259
+ < div className = "flex items-center gap-2" >
260
+ drafts are not being saved
261
+ < a
262
+ href = "https://github.com/diffplug/gitcasso/issues/26"
263
+ target = "_blank"
264
+ rel = "noopener noreferrer"
265
+ className = { twMerge (
266
+ badgeCVA ( { type : "save" , clickable : true } ) ,
267
+ "hover:opacity-90"
268
+ ) }
269
+ >
270
+ { ( ( ) => {
271
+ const SaveIcon = typeIcons . save
272
+ return < SaveIcon className = "h-3 w-3" />
273
+ } ) ( ) }
274
+ save my drafts
275
+ </ a >
276
+ </ div >
277
+ </ div >
278
+ </ div >
237
279
</ div >
238
280
)
239
281
}
0 commit comments