Skip to content

Commit 6c78fa4

Browse files
committed
Update.
1 parent 3aaa1da commit 6c78fa4

File tree

1 file changed

+26
-25
lines changed

1 file changed

+26
-25
lines changed

browser-extension/tests/playground/claude.tsx

Lines changed: 26 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -101,14 +101,15 @@ const Badge = ({ text, type }: BadgeProps) => {
101101
interface Segment {
102102
text?: string
103103
type: keyof typeof typeIcons
104-
onClick: () => void
105-
selected: boolean
104+
value: string
106105
}
107106
interface MultiSegmentProps {
108107
segments: Segment[]
108+
value: string
109+
onValueChange: (value: string) => void
109110
}
110111

111-
const MultiSegment = ({ segments }: MultiSegmentProps) => {
112+
const MultiSegment = ({ segments, value, onValueChange }: MultiSegmentProps) => {
112113
return (
113114
<div className="inline-flex items-center gap-0">
114115
{segments.map((segment, index) => {
@@ -118,10 +119,10 @@ const MultiSegment = ({ segments }: MultiSegmentProps) => {
118119
key={index}
119120
className={statBadge({
120121
clickable: true,
121-
selected: segment.selected,
122+
selected: value === segment.value,
122123
type: segment.type,
123124
})}
124-
onClick={segment.onClick}
125+
onClick={() => onValueChange(segment.value)}
125126
type="button"
126127
>
127128
{segment.type === 'blank' || <Icon className='w-3 h-3' />}
@@ -557,26 +558,26 @@ export const ClaudePrototype = () => {
557558
/>
558559
</div>
559560
<div className='relative flex overflow-hidden'>
560-
<MultiSegment segments={[
561-
{
562-
type: 'unsent',
563-
text: '',
564-
selected: filters.sentFilter === 'unsent',
565-
onClick: () => updateFilter('sentFilter', 'unsent')
566-
},
567-
{
568-
type: 'blank',
569-
text: 'both',
570-
selected: filters.sentFilter === 'all',
571-
onClick: () => updateFilter('sentFilter', 'all')
572-
},
573-
{
574-
type: 'sent',
575-
text: ' ',
576-
selected: filters.sentFilter === 'sent',
577-
onClick: () => updateFilter('sentFilter', 'sent')
578-
}
579-
]} />
561+
<MultiSegment
562+
value={filters.sentFilter}
563+
onValueChange={(value) => updateFilter('sentFilter', value as 'all' | 'sent' | 'unsent')}
564+
segments={[
565+
{
566+
type: 'unsent',
567+
text: ' ',
568+
value: 'unsent'
569+
},
570+
{
571+
type: 'blank',
572+
text: 'both',
573+
value: 'all'
574+
},
575+
{
576+
type: 'sent',
577+
text: ' ',
578+
value: 'sent'
579+
}
580+
]} />
580581
</div>
581582
</div>
582583
</div>

0 commit comments

Comments
 (0)