'use client';

import { useState } from 'react';
import { Plus } from 'lucide-react';
import { Button } from '@/components/ui/Button';
import { ServiceFlow } from '@/components/scan/ServiceFlow';
import { useMessages } from '@/i18n/client';

/**
 * Starts a new report. `autoOpen` (from /akun?foto=1) jumps straight to the aura camera;
 * the button itself opens the service picker.
 */
export function NewScanButton({ autoOpen = false, userName }: { autoOpen?: boolean; userName?: string }) {
  const t = useMessages().services.picker;
  const [open, setOpen] = useState(autoOpen);
  const [direct, setDirect] = useState(autoOpen);
  return (
    <>
      <Button
        onClick={() => {
          setDirect(false);
          setOpen(true);
        }}
      >
        <Plus className="size-4" aria-hidden />
        {t.newReport}
      </Button>
      <ServiceFlow
        open={open}
        onClose={() => setOpen(false)}
        preset={direct ? ['aura'] : undefined}
        skipPicker={direct}
        userName={userName}
      />
    </>
  );
}
