UNPKG

@sidekick-coder/db

Version:

Cli Tool to manipulate data from diferent sources

27 lines (24 loc) 700 B
'use strict'; // src/providers/folder/create.ts async function create(payload) { const { filesystem, root, options, makeId, parser } = payload; const resolve = (...args) => filesystem.path.resolve(root, ...args); const data = options.data; const id = data.id || await makeId(); const folder = resolve(id); const filename = resolve(id, `index.${parser.ext}`); if (filesystem.existsSync(folder)) { throw new Error(`Item with id "${id}" already exists`); } const raw = parser.stringify(data); filesystem.mkdirSync(resolve(id)); filesystem.writeSync.text(filename, raw); const item = { id, raw, folder, ...data }; return item; } exports.create = create;