import { Icon } from "@iconify-icon/react";
import { commands as analyticsCommands } from "@hypr/plugin-analytics";
import { commands as openerCommands } from "@hypr/plugin-opener2";
import { commands as sfxCommands } from "@hypr/plugin-sfx";
import { OnboardingButton } from "./shared";
import { commands } from "~/types/tauri.gen";
const SOCIALS = [
{
label: "Discord",
icon: "simple-icons:discord",
size: 14,
url: "https://discord.gg/CX8gTH2tj9",
},
{
label: "GitHub",
icon: "simple-icons:github",
size: 14,
url: "https://github.com/fastrepl/char",
},
{
label: "X",
icon: "simple-icons:x",
size: 10,
url: "https://x.com/getcharnotes",
},
] as const;
export function FinalSection({ onContinue }: { onContinue: () => void }) {
return (
Join our community and stay updated:
{SOCIALS.map(({ label, icon, size, url }) => {
return (
);
})}
void finishOnboarding(onContinue)}>
Get Started
);
}
export async function finishOnboarding(onContinue?: () => void) {
await sfxCommands.stop("BGM").catch(console.error);
await new Promise((resolve) => setTimeout(resolve, 100));
await commands.setOnboardingNeeded(false).catch(console.error);
await new Promise((resolve) => setTimeout(resolve, 100));
await analyticsCommands.event({ event: "onboarding_completed" });
onContinue?.();
}