Skip to content

Commit 377b2e0

Browse files
committed
Improve the search box.
1 parent fd1c267 commit 377b2e0

File tree

2 files changed

+48
-19
lines changed

2 files changed

+48
-19
lines changed

browser-extension/tests/playground/claude.tsx

Lines changed: 43 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ import {
1111
Monitor,
1212
Search,
1313
TextSelect,
14-
Trash,
14+
Trash2,
1515
} from 'lucide-react'
1616
import { useMemo, useState } from 'react'
1717
import { twMerge } from 'tailwind-merge'
@@ -41,16 +41,16 @@ const statBadge = cva(
4141
true: '!border-solid !border-current',
4242
},
4343
type: {
44-
trashed: 'bg-gray-50 text-yellow-700',
4544
blank: 'bg-transparent text-gray-700',
4645
code: 'bg-pink-50 text-pink-700',
47-
hideArchived: 'bg-transparent text-gray-700',
46+
hideTrashed: 'bg-transparent text-gray-700',
4847
image: 'bg-purple-50 text-purple-700',
4948
link: 'bg-blue-50 text-blue-700',
5049
open: 'bg-cyan-50 text-cyan-700',
5150
sent: 'bg-green-50 text-green-700',
5251
text: 'bg-gray-50 text-gray-700',
5352
time: 'bg-gray-50 text-gray-700',
53+
trashed: 'bg-gray-50 text-yellow-700',
5454
unsent: 'bg-amber-100 text-amber-700',
5555
},
5656
},
@@ -59,16 +59,16 @@ const statBadge = cva(
5959

6060
// Map types to their icons
6161
const typeIcons = {
62-
trashed: Trash,
6362
blank: Code,
6463
code: Code,
65-
hideArchived: EyeOff,
64+
hideTrashed: EyeOff,
6665
image: Image,
6766
link: Link,
6867
open: Monitor,
6968
sent: MailCheck,
7069
text: TextSelect,
7170
time: Clock,
71+
trashed: Trash2,
7272
unsent: MessageSquareDashed,
7373
} as const
7474

@@ -198,9 +198,9 @@ const isRedditDraft = (spot: GitHubOrReddit): spot is RedditSpot => {
198198

199199
const generateMockDrafts = (): CommentTableRow[] => [
200200
{
201-
isTrashed: false,
202201
isOpenTab: true,
203202
isSent: false,
203+
isTrashed: false,
204204
latestDraft: {
205205
content:
206206
'This PR addresses the memory leak issue reported in #1233. The problem was caused by event listeners not being properly disposed...',
@@ -231,9 +231,9 @@ const generateMockDrafts = (): CommentTableRow[] => [
231231
} satisfies GitHubSpot,
232232
},
233233
{
234-
isTrashed: false,
235234
isOpenTab: false,
236235
isSent: false,
236+
isTrashed: false,
237237
latestDraft: {
238238
content:
239239
"I've been using GitLens for years and it's absolutely essential for my workflow. The inline blame annotations are incredibly helpful when...",
@@ -258,9 +258,9 @@ const generateMockDrafts = (): CommentTableRow[] => [
258258
} satisfies RedditSpot,
259259
},
260260
{
261-
isTrashed: false,
262261
isOpenTab: true,
263262
isSent: false,
263+
isTrashed: false,
264264
latestDraft: {
265265
content:
266266
"When using useEffect with async functions, the cleanup function doesn't seem to be called correctly in certain edge cases...",
@@ -281,9 +281,9 @@ const generateMockDrafts = (): CommentTableRow[] => [
281281
} satisfies GitHubSpot,
282282
},
283283
{
284-
isTrashed: false,
285284
isOpenTab: false,
286285
isSent: true,
286+
isTrashed: false,
287287
latestDraft: {
288288
content:
289289
'LGTM! Just a few minor suggestions about the examples in the routing section. Consider adding more context about...',
@@ -316,9 +316,9 @@ const generateMockDrafts = (): CommentTableRow[] => [
316316
} satisfies GitHubSpot,
317317
},
318318
{
319-
isTrashed: true,
320319
isOpenTab: true,
321320
isSent: false,
321+
isTrashed: true,
322322
latestDraft: {
323323
content:
324324
'This PR implements ESM support in worker threads as discussed in the last TSC meeting. The implementation follows...',
@@ -470,7 +470,7 @@ export const ClaudePrototype = () => {
470470
if (filteredDrafts.length === 0 && (filters.searchQuery || filters.sentFilter !== 'both')) {
471471
return (
472472
<div className='min-h-screen bg-white'>
473-
<div className='p-6 border-b'>
473+
<div className='p-6 border-b-gray-300'>
474474
{/* Keep the header controls visible */}
475475
<div className='flex flex-wrap gap-3 items-center'>
476476
{/* Search */}
@@ -481,7 +481,7 @@ export const ClaudePrototype = () => {
481481
placeholder='Search drafts...'
482482
value={filters.searchQuery}
483483
onChange={(e) => updateFilter('searchQuery', e.target.value)}
484-
className='w-full pl-9 pr-3 py-1.5 border border-gray-300 rounded-md text-sm'
484+
className='w-full pl-9 pr-3 py-1.5 border border-gray-300 rounded-sm text-sm font-normal'
485485
/>
486486
</div>
487487
</div>
@@ -535,7 +535,7 @@ export const ClaudePrototype = () => {
535535
<col className='w-10' />
536536
<col />
537537
</colgroup>
538-
<thead className='border-b'>
538+
<thead className='border-b border-gray-400'>
539539
<tr>
540540
<th scope='col' className='px-3 py-3'>
541541
<input
@@ -556,10 +556,21 @@ export const ClaudePrototype = () => {
556556
placeholder='Search drafts...'
557557
value={filters.searchQuery}
558558
onChange={(e) => updateFilter('searchQuery', e.target.value)}
559-
className='w-full pl-9 pr-3 py-1.5 border border-gray-300 rounded-md text-sm focus:outline-none focus:ring-2 focus:ring-blue-500'
559+
className='w-full pl-9 pr-3 h-5 border border-gray-300 rounded-sm text-sm font-normal focus:outline-none focus:border-blue-500'
560560
/>
561561
</div>
562-
<div className='relative flex overflow-hidden'>
562+
<div className='relative flex overflow-hidden gap-1'>
563+
<span
564+
className={twMerge(
565+
statBadge({
566+
type: 'trashed',
567+
}),
568+
'border',
569+
)}
570+
>
571+
<Trash2 className='w-3 h-3' />
572+
<EyeOff className='w-3 h-3' />
573+
</span>
563574
<MultiSegment<FilterState['sentFilter']>
564575
value={filters.sentFilter}
565576
onValueChange={(value) => updateFilter('sentFilter', value)}
@@ -581,6 +592,23 @@ export const ClaudePrototype = () => {
581592
},
582593
]}
583594
/>
595+
{/*
596+
<MultiSegment<FilterState['showTrashed']>
597+
value={filters.showTrashed}
598+
onValueChange={(value) => updateFilter('showTrashed', value)}
599+
segments={[
600+
{
601+
text: 'show trashed',
602+
type: 'trashed',
603+
value: true,
604+
},
605+
{
606+
text: 'hide trashed',
607+
type: 'hideTrashed',
608+
value: false
609+
},
610+
]}
611+
/> */}
584612
</div>
585613
</div>
586614
</div>

browser-extension/tests/playground/playground.tsx

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -30,10 +30,11 @@ const App = () => {
3030
key={mode}
3131
type='button'
3232
onClick={() => setActiveComponent(mode as Mode)}
33-
className={`px-3 py-2 rounded text-sm font-medium transition-colors ${activeComponent === mode
34-
? 'bg-blue-600 text-white'
35-
: 'bg-gray-100 text-gray-700 hover:bg-gray-200'
36-
}`}
33+
className={`px-3 py-2 rounded text-sm font-medium transition-colors ${
34+
activeComponent === mode
35+
? 'bg-blue-600 text-white'
36+
: 'bg-gray-100 text-gray-700 hover:bg-gray-200'
37+
}`}
3738
>
3839
{config.label}
3940
</button>

0 commit comments

Comments
 (0)