Add button to clear multi selection
This commit is contained in:
parent
9c21ee022d
commit
71d4ad805c
|
@ -8,9 +8,11 @@ import useDark from './use-dark'
|
||||||
export default function DrawerHeader({
|
export default function DrawerHeader({
|
||||||
name,
|
name,
|
||||||
ids,
|
ids,
|
||||||
|
setIds,
|
||||||
}: {
|
}: {
|
||||||
name: keyof DrawerParamList
|
name: keyof DrawerParamList
|
||||||
ids: number[]
|
ids: number[]
|
||||||
|
setIds: (values: number[]) => void
|
||||||
}) {
|
}) {
|
||||||
const navigation = useNavigation<DrawerNavigationProp<DrawerParamList>>()
|
const navigation = useNavigation<DrawerNavigationProp<DrawerParamList>>()
|
||||||
const dark = useDark()
|
const dark = useDark()
|
||||||
|
@ -23,7 +25,7 @@ export default function DrawerHeader({
|
||||||
onPress={navigation.openDrawer}
|
onPress={navigation.openDrawer}
|
||||||
/>
|
/>
|
||||||
<Appbar.Content title={name} />
|
<Appbar.Content title={name} />
|
||||||
<DrawerMenu name={name} ids={ids} />
|
<DrawerMenu name={name} ids={ids} setIds={setIds} />
|
||||||
</Appbar.Header>
|
</Appbar.Header>
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|
|
@ -11,9 +11,11 @@ import useDark from './use-dark'
|
||||||
export default function DrawerMenu({
|
export default function DrawerMenu({
|
||||||
name,
|
name,
|
||||||
ids,
|
ids,
|
||||||
|
setIds,
|
||||||
}: {
|
}: {
|
||||||
name: keyof DrawerParamList
|
name: keyof DrawerParamList
|
||||||
ids: number[]
|
ids: number[]
|
||||||
|
setIds: (values: number[]) => void
|
||||||
}) {
|
}) {
|
||||||
const [showMenu, setShowMenu] = useState(false)
|
const [showMenu, setShowMenu] = useState(false)
|
||||||
const [showRemove, setShowRemove] = useState(false)
|
const [showRemove, setShowRemove] = useState(false)
|
||||||
|
@ -57,6 +59,11 @@ export default function DrawerMenu({
|
||||||
setShowMenu(false)
|
setShowMenu(false)
|
||||||
}, [name, home, plans])
|
}, [name, home, plans])
|
||||||
|
|
||||||
|
const clear = useCallback(() => {
|
||||||
|
setShowMenu(false)
|
||||||
|
setIds([])
|
||||||
|
}, [setIds])
|
||||||
|
|
||||||
if (name === 'Home' || name === 'Plans')
|
if (name === 'Home' || name === 'Plans')
|
||||||
return (
|
return (
|
||||||
<Menu
|
<Menu
|
||||||
|
@ -74,6 +81,7 @@ export default function DrawerMenu({
|
||||||
)}
|
)}
|
||||||
{ids.length > 0 && (
|
{ids.length > 0 && (
|
||||||
<>
|
<>
|
||||||
|
<Menu.Item icon="clear" title="Clear" onPress={clear} />
|
||||||
<Menu.Item icon="edit" title="Edit" onPress={edit} />
|
<Menu.Item icon="edit" title="Edit" onPress={edit} />
|
||||||
<Divider />
|
<Divider />
|
||||||
</>
|
</>
|
||||||
|
|
|
@ -54,7 +54,7 @@ export default function PlanList() {
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<>
|
<>
|
||||||
<DrawerHeader name="Plans" ids={ids} />
|
<DrawerHeader name="Plans" ids={ids} setIds={setIds} />
|
||||||
<Page onAdd={onAdd} term={term} search={search}>
|
<Page onAdd={onAdd} term={term} search={search}>
|
||||||
{plans?.length === 0 ? (
|
{plans?.length === 0 ? (
|
||||||
<List.Item
|
<List.Item
|
||||||
|
|
|
@ -104,7 +104,7 @@ export default function SetList() {
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<>
|
<>
|
||||||
<DrawerHeader name="Home" ids={ids} />
|
<DrawerHeader name="Home" ids={ids} setIds={setIds} />
|
||||||
<Page onAdd={onAdd} term={term} search={search}>
|
<Page onAdd={onAdd} term={term} search={search}>
|
||||||
{sets?.length === 0 ? (
|
{sets?.length === 0 ? (
|
||||||
<List.Item
|
<List.Item
|
||||||
|
|
Loading…
Reference in New Issue
Block a user