"use client"; import { useState } from "react"; import { useLocaleStore } from "@/store/uiStore"; import { t } from "@/lib/locale"; export default function UserRoleUpdateForm({ disabled, onSubmit }: { disabled: boolean; onSubmit: (payload: { username: string; roleCodes: string[] }) => Promise; }) { const locale = useLocaleStore((s) => s.locale); const [username, setUsername] = useState(""); const [roles, setRoles] = useState(""); const [loading, setLoading] = useState(false); const submit = async () => { if (disabled || !username) return; setLoading(true); try { await onSubmit({ username, roleCodes: roles .split(",") .map((role) => role.trim()) .filter(Boolean) }); setUsername(""); setRoles(""); } finally { setLoading(false); } }; return (
setUsername(e.target.value)} placeholder={t("username", locale)} disabled={disabled} /> setRoles(e.target.value)} placeholder="Role codes (comma separated)" disabled={disabled} />
); }