cinny/src/app/features/settings/emojis-stickers/EmojisStickers.tsx

52 lines
1.6 KiB
TypeScript
Raw Normal View History

2025-01-04 17:29:46 +01:00
import React, { useState } from 'react';
2024-12-26 15:43:34 +01:00
import { Box, Text, IconButton, Icon, Icons, Scroll } from 'folds';
import { Page, PageContent, PageHeader } from '../../../components/page';
import { GlobalPacks } from './GlobalPacks';
import { UserPack } from './UserPack';
2025-01-04 17:29:46 +01:00
import { ImagePack } from '../../../plugins/custom-emoji';
2025-01-05 10:31:20 +01:00
import { ImagePackView } from '../../../components/image-pack-view';
2024-12-26 15:43:34 +01:00
type EmojisStickersProps = {
requestClose: () => void;
};
export function EmojisStickers({ requestClose }: EmojisStickersProps) {
2025-01-04 17:29:46 +01:00
const [imagePack, setImagePack] = useState<ImagePack>();
const handleImagePackViewClose = () => {
setImagePack(undefined);
};
if (imagePack) {
return <ImagePackView imagePack={imagePack} requestClose={handleImagePackViewClose} />;
}
2024-12-26 15:43:34 +01:00
return (
<Page>
<PageHeader outlined={false}>
<Box grow="Yes" gap="200">
<Box grow="Yes" alignItems="Center" gap="200">
<Text size="H3" truncate>
Emojis & Stickers
</Text>
</Box>
<Box shrink="No">
<IconButton onClick={requestClose} variant="Surface">
<Icon src={Icons.Cross} />
</IconButton>
</Box>
</Box>
</PageHeader>
<Box grow="Yes">
<Scroll hideTrack visibility="Hover">
<PageContent>
<Box direction="Column" gap="700">
2025-01-04 17:29:46 +01:00
<UserPack onViewPack={setImagePack} />
<GlobalPacks onViewPack={setImagePack} />
2024-12-26 15:43:34 +01:00
</Box>
</PageContent>
</Scroll>
</Box>
</Page>
);
}