SurfSense/surfsense_web/lib/playground/platform-icons.tsx
CREDO23 91aa265afb Merge remote-tracking branch 'upstream/dev' into feature-indeed-jobs-scraper
# Conflicts:
#	README.es.md
#	README.hi.md
#	README.md
#	README.pt-BR.md
#	README.zh-CN.md
#	surfsense_backend/tests/unit/capabilities/google_maps/test_registry.py
#	surfsense_backend/tests/unit/capabilities/reddit/test_registry.py
#	surfsense_backend/tests/unit/capabilities/youtube/test_registry.py
#	surfsense_mcp/mcp_server/features/scrapers/__init__.py
#	surfsense_web/content/docs/connectors/index.mdx
#	surfsense_web/content/docs/connectors/native/index.mdx
#	surfsense_web/content/docs/connectors/native/meta.json
#	surfsense_web/content/docs/how-to/mcp-server.mdx
#	surfsense_web/lib/connectors-marketing/index.ts
#	surfsense_web/lib/playground/catalog.ts
2026-07-18 22:11:30 +02:00

33 lines
1.4 KiB
TypeScript

import Image from "next/image";
import { cn } from "@/lib/utils";
/**
* Full-color brand marks for the platform-native scraper verbs, served from
* `/public/connectors/*.svg` (same asset library the connector UI uses). Each
* is a `ComponentType<{ className?: string }>` so it drops into the playground
* catalog and the composer badge exactly like a Lucide/Tabler icon.
*/
function brandIcon(src: string, alt: string) {
return function BrandIcon({ className }: { className?: string }) {
return (
<Image
src={src}
alt={alt}
width={20}
height={20}
className={cn("select-none object-contain pointer-events-none", className)}
draggable={false}
/>
);
};
}
export const AmazonIcon = brandIcon("/connectors/amazon.svg", "Amazon");
export const RedditIcon = brandIcon("/connectors/reddit.svg", "Reddit");
export const YouTubeIcon = brandIcon("/connectors/youtube.svg", "YouTube");
export const InstagramIcon = brandIcon("/connectors/instagram.svg", "Instagram");
export const TikTokIcon = brandIcon("/connectors/tiktok.svg", "TikTok");
export const GoogleMapsIcon = brandIcon("/connectors/google-maps.svg", "Google Maps");
export const GoogleSearchIcon = brandIcon("/connectors/google-search.svg", "Google Search");
export const IndeedIcon = brandIcon("/connectors/indeed.svg", "Indeed");
export const WebIcon = brandIcon("/connectors/web.svg", "Web");