Деревья

Добрый день. Нужно создать структуру деревья в JS.
Укажите пожалуйста на мою ошибку. Где я что делаю не так?
Дано:
Реализуйте и экспортируйте по умолчанию функцию, которая создает и возвращает такую файловую систему (порядок элементов важен):

Обратите внимание на метаданные

nodejs-package # директория (метаданные: { hidden: true })
├── Makefile # файл
├── README.md # файл
├── dist # пустая директория
├── tests # директория
│ └── half.test.js # файл (метаданные: { type: ‘text/javascript’ })
├── babel.config.js # файл (метаданные: { type: ‘text/javascript’ })
└── node_modules # директория (метаданные: { owner: ‘root’, hidden: false })
└── @babel # директория
└── cli # директория
└── LICENSE # файл

Моё решение:
const generate = (tree) => {
tree = mkdir(‘nodejs-package’, { hidden: true }[
mkfile(‘Makefile’),
mkfile(‘README.md’),
mkdir(‘dist’, [
mkdir(‘tests’, [
mkfile(‘half.test.js’, { type: ‘text/javascript’ }),
mkfile(‘babel.config.js’, { type: ‘text/javascript’ }),
mkdir(‘node_modules’, { owner: ‘root’, hidden: false }[
mkdir(‘@babel’, [
mkdir(‘cli’, [
mkfile(‘LICENSE’),
])
])
])
])
])
])
return tree;
};
export default generate;

Решил. А надо было всего лишь капнуть глубже, всего часиков 3-4
export default () => {
const tree = mkdir(‘nodejs-package’, [
mkfile(‘Makefile’),
mkfile(‘README.md’),
mkdir(‘dist’, []),
mkdir(‘tests’, [mkfile(‘half.test.js’, { type: ‘text/javascript’ })]),
mkfile(‘babel.config.js’, { type: ‘text/javascript’ }),
mkdir(‘node_modules’, [mkdir(‘@babel’, [mkdir(‘cli’, [mkfile(‘LICENSE’)])])], { owner: ‘root’, hidden: false }),
], { hidden: true })
return tree;
}

1 лайк