Files
standardnotes-app-web/packages/web/src/javascripts/Components/SearchOptions/SearchOptions.tsx
2022-06-28 18:20:31 +05:30

33 lines
1.1 KiB
TypeScript

import { observer } from 'mobx-react-lite'
import Bubble from '@/Components/Bubble/Bubble'
import { useCallback } from 'react'
import { SearchOptionsController } from '@/Controllers/SearchOptionsController'
type Props = {
searchOptions: SearchOptionsController
}
const SearchOptions = ({ searchOptions }: Props) => {
const { includeProtectedContents, includeArchived, includeTrashed } = searchOptions
const toggleIncludeProtectedContents = useCallback(async () => {
await searchOptions.toggleIncludeProtectedContents()
}, [searchOptions])
return (
<div role="tablist" className="mt-3 flex flex-wrap gap-2" onMouseDown={(e) => e.preventDefault()}>
<Bubble
label="Protected Contents"
selected={includeProtectedContents}
onSelect={toggleIncludeProtectedContents}
/>
<Bubble label="Archived" selected={includeArchived} onSelect={searchOptions.toggleIncludeArchived} />
<Bubble label="Trashed" selected={includeTrashed} onSelect={searchOptions.toggleIncludeTrashed} />
</div>
)
}
export default observer(SearchOptions)