diff --git a/src/app/components/emoji-board/EmojiBoard.tsx b/src/app/components/emoji-board/EmojiBoard.tsx index b2124f57..c72a418d 100644 --- a/src/app/components/emoji-board/EmojiBoard.tsx +++ b/src/app/components/emoji-board/EmojiBoard.tsx @@ -10,20 +10,7 @@ import React, { useMemo, useRef, } from 'react'; -import { - Box, - Icon, - IconButton, - Icons, - Line, - Scroll, - Text, - Tooltip, - TooltipProvider, - as, - config, - toRem, -} from 'folds'; +import { Box, Icon, Icons, Line, Scroll, Text, as, toRem } from 'folds'; import FocusTrap from 'focus-trap-react'; import { isKeyHotkey } from 'is-hotkey'; import classNames from 'classnames'; @@ -47,7 +34,15 @@ import { addRecentEmoji } from '../../plugins/recent-emoji'; import { useMediaAuthentication } from '../../hooks/useMediaAuthentication'; import { ImagePack, ImageUsage, PackImageReader } from '../../plugins/custom-emoji'; import { getEmoticonSearchStr } from '../../plugins/utils'; -import { SearchInput, EmojiBoardTabs } from './components'; +import { + SearchInput, + EmojiBoardTabs, + SidebarStack, + SidebarDivider, + SidebarBtn, + Sidebar, + NoStickerPacks, +} from './components'; import { EmojiBoardTab, EmojiItemInfo, EmojiType } from './types'; const RECENT_GROUP_ID = 'recent_group'; @@ -73,34 +68,6 @@ const getEmojiItemInfo = (element: Element): EmojiItemInfo | undefined => { const activeGroupIdAtom = atom(undefined); -function Sidebar({ children }: { children: ReactNode }) { - return ( - - - - {children} - - - - ); -} - -const SidebarStack = as<'div'>(({ className, children, ...props }, ref) => ( - - {children} - -)); -function SidebarDivider() { - return ; -} - function Header({ children }: { children: ReactNode }) { return ( @@ -147,46 +114,6 @@ const EmojiBoardLayout = as< )); -export function SidebarBtn({ - active, - label, - id, - onItemClick, - children, -}: { - active?: boolean; - label: string; - id: T; - onItemClick: (id: T) => void; - children: ReactNode; -}) { - return ( - - {label} - - } - > - {(ref) => ( - onItemClick(id)} - size="400" - radii="300" - variant="Surface" - > - {children} - - )} - - ); -} - export const EmojiGroup = as< 'div', { @@ -514,23 +441,7 @@ export const StickerGroups = memo( useAuthentication?: boolean; }) => ( <> - {groups.length === 0 && ( - - - - No Sticker Packs! - - Add stickers from user, room or space settings. - - - - )} + {groups.length === 0 && } {groups.map((pack) => ( {pack diff --git a/src/app/components/emoji-board/components/NoStickerPacks.tsx b/src/app/components/emoji-board/components/NoStickerPacks.tsx new file mode 100644 index 00000000..6703362c --- /dev/null +++ b/src/app/components/emoji-board/components/NoStickerPacks.tsx @@ -0,0 +1,22 @@ +import React from 'react'; +import { Box, toRem, config, Icons, Icon, Text } from 'folds'; + +export function NoStickerPacks() { + return ( + + + + No Sticker Packs! + + Add stickers from user, room or space settings. + + + + ); +} diff --git a/src/app/components/emoji-board/components/index.tsx b/src/app/components/emoji-board/components/index.tsx index 1018b46d..7d4b4b48 100644 --- a/src/app/components/emoji-board/components/index.tsx +++ b/src/app/components/emoji-board/components/index.tsx @@ -1,2 +1,4 @@ export * from './SearchInput'; export * from './Tabs'; +export * from './Sidebar'; +export * from './NoStickerPacks';