nitro-react/src/components/catalog/views/page/widgets/CatalogGuildBadgeWidgetView.tsx

32 lines
1009 B
TypeScript
Raw Normal View History

2022-02-01 07:58:19 +01:00
import { StringDataType } from '@nitrots/nitro-renderer';
import { FC, useMemo } from 'react';
2022-03-03 19:16:51 +01:00
import { BaseProps, LayoutBadgeImageView } from '../../../../../common';
2022-02-02 21:54:40 +01:00
import { useCatalogContext } from '../../../CatalogContext';
2022-02-01 07:58:19 +01:00
interface CatalogGuildBadgeWidgetViewProps extends BaseProps<HTMLDivElement>
{
}
export const CatalogGuildBadgeWidgetView: FC<CatalogGuildBadgeWidgetViewProps> = props =>
{
const { ...rest } = props;
const { currentOffer = null, purchaseOptions = null } = useCatalogContext();
const { previewStuffData = null } = purchaseOptions;
const badgeCode = useMemo(() =>
{
if(!currentOffer || !previewStuffData) return null;
const badgeCode = (previewStuffData as StringDataType).getValue(2);
if(!badgeCode || !badgeCode.length) return null;
return badgeCode;
}, [ currentOffer, previewStuffData ]);
if(!badgeCode) return null;
2022-03-03 19:16:51 +01:00
return <LayoutBadgeImageView badgeCode={ badgeCode } isGroup={ true } { ...rest } />;
2022-02-01 07:58:19 +01:00
}