ChannelDeck/components/LauncherContextMenu.tsx

27 lines
1 KiB
TypeScript

import { NavContextMenuPatchCallback } from "@api/ContextMenu";
import { Menu, PrivateChannelsStore, useStateFromStores } from "@webpack/common";
import { settings } from "plugins/betterFolders";
import { ChannelDeckStore } from "../ChannelDeckStore";
export const UserSettingsContextMenu: NavContextMenuPatchCallback = (children, props) => {
const decks = useStateFromStores([ChannelDeckStore], () => ChannelDeckStore.getDecks());
if (!props) return;
children.push(
<Menu.MenuItem
id="channeldeck"
label="Channel Decks"
>
<Menu.MenuGroup>
{decks.map(deck => <Menu.MenuCheckboxItem
label={deck.name}
id={`deck-${deck.id}`}
key={`deck-${deck.id}`}
checked={deck.open}
action={() => {
ChannelDeckStore.setDeck({ ...deck, open: !deck.open });
}}
/>)}
</Menu.MenuGroup>
</Menu.MenuItem>
);
};