import { FunctionComponent, useCallback, useEffect, useState } from 'react' import Menu from '../Menu/Menu' import { useApplication } from '../ApplicationProvider' import { ContentType, VaultListingInterface } from '@standardnotes/snjs' import MenuRadioButtonItem from '../Menu/MenuRadioButtonItem' import { observer } from 'mobx-react-lite' import Icon from '../Icon/Icon' import VaultSelectMenuItemWithOptions from './MenuItemWithVaultOption' const SingleVaultSelectionMenu: FunctionComponent = () => { const application = useApplication() const [vaults, setVaults] = useState(() => application.vaults.getVaults()) useEffect(() => { return application.items.streamItems(ContentType.TYPES.VaultListing, () => { setVaults(application.vaults.getVaults()) }) }, [application.items, application.vaults]) const isVaultVisible = useCallback( (vault: VaultListingInterface) => { return application.vaultDisplayService.isVaultExclusivelyShown(vault) }, [application], ) const selectVault = useCallback( (vault: VaultListingInterface) => { application.vaultDisplayService.showOnlyVault(vault) }, [application], ) return (
) } export default observer(SingleVaultSelectionMenu)