import { mkdirSync, writeFile } from 'node:fs'
import type { Actions } from './$types'
import { PROJETS_DIR } from '$env/static/private'

export const actions = {
    save: async ({ request }) => {
        const data = await request.formData()
        const d = data.get('data')
        if (d) {
            const b = JSON.parse(d as string)
            const nom_ = b.nom.replaceAll('/', '_')
            b.id = nom_
            try {
                mkdirSync(PROJETS_DIR)
            } catch (err) {
                if (
                    err &&
                    typeof err == 'object' &&
                    'code' in err &&
                    err.code != 'EEXIST'
                ) {
                    console.error(err)
                }
            }
            writeFile(
                PROJETS_DIR + '/' + nom_ + '.json',
                JSON.stringify(b),
                (err) => {
                    if (err) {
                        console.error(err)
                    }
                }
            )
            return nom_
        }
        return null
    },
    del: async () => {
        console.log('Pas de sauvegarde configurée')
    },
} satisfies Actions