UNPKG

y3-app

Version:
23 lines (22 loc) 985 B
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.createStructure = createStructure; const promises_1 = require("fs/promises"); const path_1 = require("path"); async function createStructure(structure, basePath) { // Ensure the base directory exists await (0, promises_1.mkdir)(basePath, { recursive: true }); for (const [key, value] of Object.entries(structure)) { const currentPath = (0, path_1.join)(basePath, key); if (typeof value === 'string') { // It's a file, ensure parent directory exists and write the content await (0, promises_1.mkdir)((0, path_1.dirname)(currentPath), { recursive: true }); await (0, promises_1.writeFile)(currentPath, value); } else { // It's a directory, create it and recurse await (0, promises_1.mkdir)(currentPath, { recursive: true }); await createStructure(value, currentPath); } } }