File: index.js

package info (click to toggle)
node-write-file-promise 1.0.0-2
  • links: PTS, VCS
  • area: main
  • in suites: bookworm, sid, trixie
  • size: 96 kB
  • sloc: javascript: 33; makefile: 2
file content (26 lines) | stat: -rw-r--r-- 556 bytes parent folder | download | duplicates (3)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
var path = require('path');
var fs = require('fs');

function mkdirp (filePath) {
    var dir = path.dirname(filePath);
    try {
        fs.readdirSync(dir);
    } catch (err) {
        mkdirp(dir);
        fs.mkdirSync(dir);
    }
}

module.exports = function (file, data, options) {
    return new Promise(function (resolve, reject) {
        mkdirp(file);

        fs.writeFile(file, data, options, function (err) {
            if (err) {
                reject(err);
            } else {
                resolve();
            }
        });
    });
}