// Follow this setup guide to integrate the Deno language server with your editor:
// https://deno.land/manual/getting_started/setup_your_environment
// This enables autocomplete, go to definition, etc.
import {createClient} from 'npm:@supabase/supabase-js';
import { xlsx, readXLSX } from 'https://deno.land/x/flat/mod.ts'



const bucketName = 'uploads';
const xlsFilePath = 'callsheet/CMR_CALL_CYCLE_2023.xlsx';

const supabase = createClient(
  Deno.env.get("SUPABASE_URL")!, 
  Deno.env.get("SUPABASE_ANON_KEY")!
);

const payload = {
  message: {},
  result: {},
  sent:{}
}

Deno.serve(async (req) => {


  const { data, error } = await supabase
  .storage
  .from(bucketName)
  .download(xlsFilePath)

  const workbook = await xlsx.read(data);
  const sheetNames = workbook.SheetNames;

  //const contents = await xlsx.read(data)
  //const contents = await data.text()
  console.log(sheetNames);
  // const workbook = await xlsx.readFile(bucketName, xlsFilePath);
  // const sheetNames = workbook.SheetNames;
  // Download the Excel file from Supabase Storage
  // const { data: file, error: downloadError } = await storage.from('uploads/callsheet').download("FState Region ALL CHANNEL REPORTS 10 MARCH 2024.xlsx");//filePath);
  // if (downloadError) {
  //   throw downloadError;
  // }
  // for (const sheetName of sheetNames) {
  //   const sheet = workbook.Sheets[sheetName];
  //   const csvData = readCSV(sheet);
  //   console.log(csvData);
  //   data.result = csvData;
  // }  

  // const excelData = read(file);
  // console.log(excelData)
  // const { name } = await req.json()
  // const data = {
  //   message: `Hello ${name}!`,
  // }

  return new Response(
    JSON.stringify(payload),
    { headers: { "Content-Type": "application/json" } },
  )
})

/* To invoke locally:

  1. Run `supabase start` (see: https://supabase.com/docs/reference/cli/supabase-start)
  2. Make an HTTP request:

  curl -i --location --request POST 'http://127.0.0.1:54321/functions/v1/callsheet' \
    --header 'Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJzdXBhYmFzZS1kZW1vIiwicm9sZSI6ImFub24iLCJleHAiOjE5ODM4MTI5OTZ9.CRXP1A7WOeoJeXxjNni43kdQwgnWNReilDMblYTn_I0' \
    --header 'Content-Type: application/json' \
    --data '{"name":"Functions"}'

*/
