'use strict';
Object.defineProperty(exports, '__esModule', {
value: true
});
exports.ensureDirectory = ensureDirectory;
exports.readContents = readContents;
exports.renderFile = renderFile;
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }
var _bluebird = require('bluebird');
var _bluebird2 = _interopRequireDefault(_bluebird);
var _fs = require('fs');
var _glob = require('glob');
var _glob2 = _interopRequireDefault(_glob);
var _templateManager = require('./template-manager');
var _templateManager2 = _interopRequireDefault(_templateManager);
var readFileP = _bluebird2['default'].promisify(_fs.readFile);
var globP = _bluebird2['default'].promisify(_glob2['default']);
function ensureDirectory(path, callback) {
return new _bluebird2['default'](function (resolve, reject) {
(0, _fs.stat)(path, function (err, stat) {
Iif (err) return reject(err);
Iif (!stat.isDirectory()) return reject();
resolve();
});
}).nodeify(callback);
}
function readContents(path, type) {
return globP('' + path + '/*' + type + '.*').then(function (files) {
if (!files.length) return null;
return readFileP(files[0], 'utf8').then(function (content) {
if (!content.length) return null;
return {
filename: files[0],
content: content
};
});
});
}
function renderFile(file, options) {
Iif (!file) return Promise.resolve(null);
return _templateManager2['default'].render(file.filename, file.content, options);
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9Vc2Vycy9qZWR1YW4vQ29kZS9lbWFpbC10ZW1wbGF0ZXMvc3JjL3V0aWwuanMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7UUFRZ0IsZUFBZSxHQUFmLGVBQWU7UUFXZixZQUFZLEdBQVosWUFBWTtRQWdCWixVQUFVLEdBQVYsVUFBVTs7Ozt3QkFuQ1osVUFBVTs7OztrQkFDSyxJQUFJOztvQkFDaEIsTUFBTTs7OzsrQkFDUixvQkFBb0I7Ozs7QUFFbkMsSUFBTSxTQUFTLEdBQUcsc0JBQUUsU0FBUyxLQUpyQixRQUFRLENBSXVCLENBQUE7QUFDdkMsSUFBTSxLQUFLLEdBQUcsc0JBQUUsU0FBUyxtQkFBTSxDQUFBOztBQUV4QixTQUFTLGVBQWUsQ0FBRSxJQUFJLEVBQUUsUUFBUSxFQUFFO0FBQy9DLFNBQU8sMEJBQU0sVUFBQyxPQUFPLEVBQUUsTUFBTSxFQUFLO0FBQ2hDLFlBVGMsSUFBSSxFQVNiLElBQUksRUFBRSxVQUFDLEdBQUcsRUFBRSxJQUFJLEVBQUs7QUFDeEIsVUFBSSxHQUFHLEVBQUUsT0FBTyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUE7QUFDM0IsVUFBSSxDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUUsRUFBRSxPQUFPLE1BQU0sRUFBRSxDQUFBO0FBQ3hDLGFBQU8sRUFBRSxDQUFBO0tBQ1YsQ0FBQyxDQUFBO0dBQ0gsQ0FBQyxDQUNELE9BQU8sQ0FBQyxRQUFRLENBQUMsQ0FBQTtDQUNuQjs7QUFFTSxTQUFTLFlBQVksQ0FBRSxJQUFJLEVBQUUsSUFBSSxFQUFFO0FBQ3hDLFNBQU8sS0FBSyxNQUFJLElBQUksVUFBSyxJQUFJLFFBQUssQ0FDakMsSUFBSSxDQUFDLFVBQUMsS0FBSyxFQUFLO0FBQ2YsUUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLEVBQUUsT0FBTyxJQUFJLENBQUE7O0FBRTlCLFdBQU8sU0FBUyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsRUFBRSxNQUFNLENBQUMsQ0FDakMsSUFBSSxDQUFDLFVBQUMsT0FBTyxFQUFLO0FBQ2pCLFVBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxFQUFFLE9BQU8sSUFBSSxDQUFBO0FBQ2hDLGFBQU87QUFDTCxnQkFBUSxFQUFFLEtBQUssQ0FBQyxDQUFDLENBQUM7QUFDbEIsZUFBTyxFQUFFLE9BQU87T0FDakIsQ0FBQTtLQUNGLENBQUMsQ0FBQTtHQUNILENBQUMsQ0FBQTtDQUNIOztBQUVNLFNBQVMsVUFBVSxDQUFFLElBQUksRUFBRSxPQUFPLEVBQUU7QUFDekMsTUFBSSxDQUFDLElBQUksRUFBRSxPQUFPLE9BQU8sQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUE7QUFDdkMsU0FBTyw2QkFBRyxNQUFNLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxJQUFJLENBQUMsT0FBTyxFQUFFLE9BQU8sQ0FBQyxDQUFBO0NBQ3ZEIiwiZmlsZSI6Ii9Vc2Vycy9qZWR1YW4vQ29kZS9lbWFpbC10ZW1wbGF0ZXMvc3JjL3V0aWwuanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUCBmcm9tICdibHVlYmlyZCdcbmltcG9ydCB7cmVhZEZpbGUsIHN0YXR9IGZyb20gJ2ZzJ1xuaW1wb3J0IGdsb2IgZnJvbSAnZ2xvYidcbmltcG9ydCB0bSBmcm9tICcuL3RlbXBsYXRlLW1hbmFnZXInXG5cbmNvbnN0IHJlYWRGaWxlUCA9IFAucHJvbWlzaWZ5KHJlYWRGaWxlKVxuY29uc3QgZ2xvYlAgPSBQLnByb21pc2lmeShnbG9iKVxuXG5leHBvcnQgZnVuY3Rpb24gZW5zdXJlRGlyZWN0b3J5IChwYXRoLCBjYWxsYmFjaykge1xuICByZXR1cm4gbmV3IFAoKHJlc29sdmUsIHJlamVjdCkgPT4ge1xuICAgIHN0YXQocGF0aCwgKGVyciwgc3RhdCkgPT4ge1xuICAgICAgaWYgKGVycikgcmV0dXJuIHJlamVjdChlcnIpXG4gICAgICBpZiAoIXN0YXQuaXNEaXJlY3RvcnkoKSkgcmV0dXJuIHJlamVjdCgpXG4gICAgICByZXNvbHZlKClcbiAgICB9KVxuICB9KVxuICAubm9kZWlmeShjYWxsYmFjaylcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHJlYWRDb250ZW50cyAocGF0aCwgdHlwZSkge1xuICByZXR1cm4gZ2xvYlAoYCR7cGF0aH0vKiR7dHlwZX0uKmApXG4gIC50aGVuKChmaWxlcykgPT4ge1xuICAgIGlmICghZmlsZXMubGVuZ3RoKSByZXR1cm4gbnVsbFxuXG4gICAgcmV0dXJuIHJlYWRGaWxlUChmaWxlc1swXSwgJ3V0ZjgnKVxuICAgIC50aGVuKChjb250ZW50KSA9PiB7XG4gICAgICBpZiAoIWNvbnRlbnQubGVuZ3RoKSByZXR1cm4gbnVsbFxuICAgICAgcmV0dXJuIHtcbiAgICAgICAgZmlsZW5hbWU6IGZpbGVzWzBdLFxuICAgICAgICBjb250ZW50OiBjb250ZW50XG4gICAgICB9XG4gICAgfSlcbiAgfSlcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHJlbmRlckZpbGUgKGZpbGUsIG9wdGlvbnMpIHtcbiAgaWYgKCFmaWxlKSByZXR1cm4gUHJvbWlzZS5yZXNvbHZlKG51bGwpXG4gIHJldHVybiB0bS5yZW5kZXIoZmlsZS5maWxlbmFtZSwgZmlsZS5jb250ZW50LCBvcHRpb25zKVxufVxuXG4iXX0= |