var _writeFileSync = (filename, descriptor, onaction) => { var callOnAction = (action) => justTry(() => onaction(action), (error) => console.error(error)); var createInfo = (...action) => new Info('mkfile', filename, action); var data = descriptor.data; var options = descriptor.options; var mkdiract = _mkdirSync(getParent(filename), onaction).action; return justTry(() => statSync(filename), () => write('create'), handleExist); function handleExist(statinfo) { if (statinfo.isDirectory()) { let rmact = _rmSync(filename, onaction).action; return write('create', ...flatArray(rmact)); } if (statinfo.isFile()) { return write('edit'); } throw new Error(`Can't write "${filename}" as a file`); } function write(type, ...nextact) { writeFileSync(filename, data, options); var action = new Action(type, filename, 'file'); justTry(onaction, [action]); return createInfo(...flatArray(mkdiract), ...nextact, action); } };
function write(type, ...nextact) { writeFileSync(filename, data, options); var action = new Action(type, filename, 'file'); justTry(onaction, [action]); return createInfo(...flatArray(mkdiract), ...nextact, action); }
var callOnAction = (action) => justTry(() => onaction(action), (error) => console.error(error));