5d38312ef0
- New standalone Next.js marketing site under site/ (static export, SEO): landing, download/install guide (Bazaar/Myket/iOS-PWA/web), FAQ (JSON-LD), privacy, terms, support, /admin link editor. fa RTL, sitemap/robots/manifest. - Backend: SiteLinksService (JSON-file persisted) + GET /api/site/links (public) + POST /api/admin/site/links (X-Admin-Token). ADMIN_TOKEN + Site__DataDir via env. - compose: hokm-site service (:1520) + hokm_data volume for links JSON. - CI deploy job builds + deploys the site container. - deploy/SUBDOMAIN_SPLIT.md: nginx blocks, cert reissue, DNS, ENV split. - Exclude site/ from root tsc + web docker context. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
25 lines
739 B
TypeScript
25 lines
739 B
TypeScript
export function Logo({ size = 36 }: { size?: number }) {
|
|
return (
|
|
<svg width={size} height={size} viewBox="0 0 100 100" fill="none" aria-hidden>
|
|
<rect x="6" y="6" width="88" height="88" rx="22" fill="url(#lg)" stroke="#d4af37" strokeWidth="3" />
|
|
<text
|
|
x="50"
|
|
y="62"
|
|
textAnchor="middle"
|
|
fontSize="46"
|
|
fontWeight="900"
|
|
fill="#d4af37"
|
|
fontFamily="Vazirmatn Variable, sans-serif"
|
|
>
|
|
و
|
|
</text>
|
|
<defs>
|
|
<linearGradient id="lg" x1="0" y1="0" x2="100" y2="100" gradientUnits="userSpaceOnUse">
|
|
<stop stopColor="#111a33" />
|
|
<stop offset="1" stopColor="#070b18" />
|
|
</linearGradient>
|
|
</defs>
|
|
</svg>
|
|
);
|
|
}
|