import React from 'react';
import { Globe } from 'lucide-react';
import { BrandSource } from '../../../types';
/**
* PlatformIcons — Inline SVG icons for social platforms.
* Used by BrandStickerContent to render the icon portion of a sticker.
*/
/** Instagram icon */
const InstagramIcon: React.FC<{ size: number }> = ({ size }) => (
);
/** TikTok icon */
const TikTokIcon: React.FC<{ size: number }> = ({ size }) => (
);
/** X (Twitter) icon */
const XIcon: React.FC<{ size: number }> = ({ size }) => (
);
/** YouTube icon */
const YouTubeIcon: React.FC<{ size: number }> = ({ size }) => (
);
/** Website / Globe icon — reuses Lucide Globe */
const WebsiteIcon: React.FC<{ size: number }> = ({ size }) => (
);
/** Get the platform icon component for a given brand source */
export function getPlatformIcon(source: BrandSource | string | undefined, size: number): React.ReactNode {
switch (source) {
case 'instagram': return ;
case 'tiktok': return ;
case 'twitter': return ;
case 'youtube': return ;
case 'website': return ;
default: return null;
}
}
/** Brand sources that produce stickers (icon + text) */
export const SOCIAL_SOURCES: string[] = ['instagram', 'tiktok', 'twitter', 'youtube', 'website'];
/** Check if a brand source should produce a sticker */
export const isSocialSource = (source?: string): boolean => SOCIAL_SOURCES.includes(source || '');
/** Default sticker configuration */
export const DEFAULT_STICKER = {
showIcon: true,
iconPosition: 'left' as const,
showAtPrefix: true,
stickerStyle: 'plain' as const,
gap: 6,
};