"use client"; import Button from "@/components/button/PrimaryButton"; import PasswordField from "@/components/input/PasswordField"; import { Switch } from "@/components/ui/switch"; import Accordion from "@/components/utils/Accordion"; import Seperator from "@/components/utils/Seperator"; import { SmartIcon } from "@/components/utils/SmartIcon"; import { getI18nObject } from "@/lib/i18n"; import { glassSurfaceCard } from "@/lib/styles/glassSurface"; import { SettingsData } from "@/types/i18n/settings"; import { ArrowLeft, Key, TickCircle } from "iconsax-react"; import { useRouter } from "next/navigation"; import React, { Fragment, useState } from "react"; import { useTranslation } from "react-i18next"; function UserSettingsIndex() { const router = useRouter(); const { t } = useTranslation("settings"); const data: SettingsData = getI18nObject(t, "data"); const [statisticalParticipation, setStatisticalParticipation] = useState(true); const onSwitched = (e: React.MouseEvent) => { const target = e.target as HTMLElement; console.log("Save changed setting?", target.id); }; const handleStatisticalToggle = (checked: boolean) => { setStatisticalParticipation(checked); console.log("Statistical participation:", checked); }; const notifsTab = () => { return (

{data.TabNotifications.Heading}

{data.TabNotifications.Accordions.map((accordion, i) => { return (
{accordion.Items.map((item, j) => { return ( ); })}
); })}
); }; const passwordTab = () => { return (

{data.TabPassword.Heading}

e.preventDefault()} className="grid gap-6 p-2"> {data.TabPassword.Inputs.map((input, i) => { return ; })} {data.TabPassword.Rules.map((rule, i) => { return (
{rule.Heading}
{rule.Items.map((item, i) => { return
  • {item}
  • ; })}
    ); })}
    ); }; const authenticatorTab = () => { return (

    {data.TabAuthenticator.Heading}

    {data.TabAuthenticator.Description}

    {data.TabAuthenticator.Tip}

    {data.TabAuthenticator.Guides.map((guide, i) => { return (
    {guide.Heading}

    {guide.Description}

    {guide.Items.map((item, i) => { return (
    {item.Mark}
    {item.Label}
    ); })} {guide.Notes.map((note, i) => { return (
    {note}
    ); })}
    ); })}
    ); }; return (

    {data.Heading}

    { router.back(); }} />

    {data.StatisticalParticipation.Heading}

    {data.StatisticalParticipation.Description}

    ); } export default UserSettingsIndex;