/**
* Brand icons for the marketing page's Examples grid.
*
* Path data for PostgreSQL, Notion, GitHub, and Stripe comes from the
* Simple Icons project (CC0, https://simpleicons.org/). Salesforce was
* deindexed from Simple Icons in 2022 at the brand's request, so we
* draw a generic cloud — close enough to the Salesforce cloud-mark
* shape to read correctly, without copying their trademarked artwork.
*
* Every icon uses `fill="currentColor"` so the caller controls the
* paint via CSS `color`. We render each one inside a square chip whose
* background is the brand's official hex.
*
* Sizes default to 22 px on the 24 × 24 viewBox so there's a bit of
* breathing room inside the 48 × 48 chip used on the marketing page.
*
* Usage of marks like the Notion N and GitHub Octocat is nominative
* fair use — they're shown to indicate compatibility, not endorsement.
*/
interface IconProps {
size?: number;
className?: string;
}
export function PostgresIcon({ size = 22, className }: IconProps) {
return (
);
}
// Salesforce was pulled from Simple Icons in 2022 at the brand's
// request, so this is a clean generic cloud rather than their
// trademarked mark. Same silhouette family — fair-use sized.
export function SalesforceCloudIcon({ size = 22, className }: IconProps) {
return (
);
}
export function NotionIcon({ size = 22, className }: IconProps) {
return (
);
}
export function GitHubIcon({ size = 22, className }: IconProps) {
return (
);
}
export function StripeIcon({ size = 22, className }: IconProps) {
return (
);
}
// Generic API / code icon for the "Custom REST" tile — curly braces in
// a monospace style so the tile reads as "any HTTP API" without
// pretending to be a specific brand.
export function RestIcon({ size = 22, className }: IconProps) {
return (
);
}