"use server";

import {
  ConvertFormdataToJSON,
  ServerAction,
  ServerResponse,
} from "@/lib/actions";
import { NoteStatusMap } from "@/models/projects/notesMap";
import { updateNote } from "./util/_updateNote";

export async function closeNote(formData: FormData) {
  const { error, con, dict } = await ServerAction();

  if (error) {
    return ServerResponse({
      operation: false,
      data: error,
    });
  }

  try {
    const { id } = ConvertFormdataToJSON(formData);

    await updateNote(con, {
      id,
      status: NoteStatusMap.CLOSED,
    });

    return ServerResponse({
      operation: true,
    });
  } catch (error) {
    return ServerResponse({
      operation: false,
      message: error.message,
      data: error,
    });
  } finally {
    con.release();
  }
}
