import type { Component } from "svelte";
import type { SvelteHTMLElements } from "svelte/elements";
import FileText from "$icon/file-text";
import Mail from "$icon/mail";
import Scale from "$icon/scale";
import Share2 from "$icon/share-2";
export interface SiteLink {
label: string;
href: string;
internal?: true;
newTab?: true;
status?: true;
}
export interface SiteLinkSection {
title: string;
icon: Component<SvelteHTMLElements["svg"]>;
links: SiteLink[];
}
export const siteLinkSections: SiteLinkSection[] = [
{
title: "Resources",
icon: FileText,
links: [
{ label: "Blog", href: "https://blog.tangled.org" },
{ label: "Docs", href: "https://docs.tangled.org" },
{ label: "Source", href: "https://tangled.org/@tangled.org/core" },
{ label: "Status", href: "https://status.tangled.org", status: true }
]
},
{
title: "Social",
icon: Share2,
links: [
{ label: "Discord", href: "https://chat.tangled.org", newTab: true },
{ label: "IRC", href: "https://web.libera.chat/#tangled", newTab: true },
{ label: "Bluesky", href: "https://bsky.app/profile/tangled.org", newTab: true },
{ label: "X/Twitter", href: "https://x.com/tangled_org", newTab: true }
]
},
{
title: "Contact",
icon: Mail,
links: [
{ label: "team@tangled.org", href: "mailto:team@tangled.org" },
{ label: "security@tangled.org", href: "mailto:security@tangled.org" }
]
},
{
title: "Legal",
icon: Scale,
links: [
{ label: "Terms of Service", href: "/terms", internal: true },
{ label: "Privacy Policy", href: "/privacy", internal: true }
]
}
];