coz-bud-loader
Version:
Bud loader for coz.
105 lines (83 loc) • 5.12 kB
JavaScript
/**
* Bud file loader.
* @memberof module:bud-loader/lib
* @inner
* @class BudLoader
* @param {object} config
*/
;
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
var cozBud = require('coz-bud');
var convertBud = require('./convert_bud');
var evaluateBud = require('./evaluate_bud');
var requireBud = require('./require_bud');
var makeupBud = require('./makeup_bud');
/** @lends BudLoader */
var BudLoader =
/*#__PURE__*/
function () {
function BudLoader() {
(0, _classCallCheck2.default)(this, BudLoader);
}
(0, _createClass2.default)(BudLoader, [{
key: "load",
/**
* Load bud.
* @param {Bud|string} bud - Bud or source filename of it.
* @returns {Promise}
*/
value: function () {
var _load = (0, _asyncToGenerator2.default)(
/*#__PURE__*/
_regenerator.default.mark(function _callee(bud) {
return _regenerator.default.wrap(function _callee$(_context) {
while (1) {
switch (_context.prev = _context.next) {
case 0:
bud = [].concat(bud).map(cozBud.create);
_context.next = 3;
return requireBud(bud);
case 3:
bud = _context.sent;
_context.next = 6;
return evaluateBud(bud);
case 6:
bud = _context.sent;
_context.next = 9;
return makeupBud(bud);
case 9:
bud = _context.sent;
_context.next = 12;
return convertBud(bud);
case 12:
bud = _context.sent;
return _context.abrupt("return", bud);
case 14:
case "end":
return _context.stop();
}
}
}, _callee);
}));
function load(_x) {
return _load.apply(this, arguments);
}
return load;
}()
}]);
return BudLoader;
}();
module.exports = BudLoader;
/**
* Callback for bud load
* @memberof module:coz-bud-loader/lib
* @inner
* @callback loadCallback
* @param {?Error} err - Load error.
* @param {Bud} bud - Loaded bud.
*/
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImJ1ZF9sb2FkZXIuanMiXSwibmFtZXMiOlsiY296QnVkIiwicmVxdWlyZSIsImNvbnZlcnRCdWQiLCJldmFsdWF0ZUJ1ZCIsInJlcXVpcmVCdWQiLCJtYWtldXBCdWQiLCJCdWRMb2FkZXIiLCJidWQiLCJjb25jYXQiLCJtYXAiLCJjcmVhdGUiLCJtb2R1bGUiLCJleHBvcnRzIl0sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7OztBQVFBOzs7Ozs7Ozs7Ozs7QUFFQSxJQUFNQSxNQUFNLEdBQUdDLE9BQU8sQ0FBQyxTQUFELENBQXRCOztBQUNBLElBQU1DLFVBQVUsR0FBR0QsT0FBTyxDQUFDLGVBQUQsQ0FBMUI7O0FBQ0EsSUFBTUUsV0FBVyxHQUFHRixPQUFPLENBQUMsZ0JBQUQsQ0FBM0I7O0FBQ0EsSUFBTUcsVUFBVSxHQUFHSCxPQUFPLENBQUMsZUFBRCxDQUExQjs7QUFDQSxJQUFNSSxTQUFTLEdBQUdKLE9BQU8sQ0FBQyxjQUFELENBQXpCO0FBRUE7OztJQUNNSyxTOzs7Ozs7Ozs7O0FBQ0o7Ozs7Ozs7O2lEQUtXQyxHOzs7OztBQUNUQSxnQkFBQUEsR0FBRyxHQUFHLEdBQUdDLE1BQUgsQ0FBVUQsR0FBVixFQUFlRSxHQUFmLENBQW1CVCxNQUFNLENBQUNVLE1BQTFCLENBQU47O3VCQUNZTixVQUFVLENBQUNHLEdBQUQsQzs7O0FBQXRCQSxnQkFBQUEsRzs7dUJBQ1lKLFdBQVcsQ0FBQ0ksR0FBRCxDOzs7QUFBdkJBLGdCQUFBQSxHOzt1QkFDWUYsU0FBUyxDQUFDRSxHQUFELEM7OztBQUFyQkEsZ0JBQUFBLEc7O3VCQUNZTCxVQUFVLENBQUNLLEdBQUQsQzs7O0FBQXRCQSxnQkFBQUEsRztpREFDT0EsRzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFJWEksTUFBTSxDQUFDQyxPQUFQLEdBQWlCTixTQUFqQjtBQUVBIiwic291cmNlUm9vdCI6Ii4uLy4uL2xpYiIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQnVkIGZpbGUgbG9hZGVyLlxuICogQG1lbWJlcm9mIG1vZHVsZTpidWQtbG9hZGVyL2xpYlxuICogQGlubmVyXG4gKiBAY2xhc3MgQnVkTG9hZGVyXG4gKiBAcGFyYW0ge29iamVjdH0gY29uZmlnXG4gKi9cblxuJ3VzZSBzdHJpY3QnXG5cbmNvbnN0IGNvekJ1ZCA9IHJlcXVpcmUoJ2Nvei1idWQnKVxuY29uc3QgY29udmVydEJ1ZCA9IHJlcXVpcmUoJy4vY29udmVydF9idWQnKVxuY29uc3QgZXZhbHVhdGVCdWQgPSByZXF1aXJlKCcuL2V2YWx1YXRlX2J1ZCcpXG5jb25zdCByZXF1aXJlQnVkID0gcmVxdWlyZSgnLi9yZXF1aXJlX2J1ZCcpXG5jb25zdCBtYWtldXBCdWQgPSByZXF1aXJlKCcuL21ha2V1cF9idWQnKVxuXG4vKiogQGxlbmRzIEJ1ZExvYWRlciAqL1xuY2xhc3MgQnVkTG9hZGVyIHtcbiAgLyoqXG4gICAqIExvYWQgYnVkLlxuICAgKiBAcGFyYW0ge0J1ZHxzdHJpbmd9IGJ1ZCAtIEJ1ZCBvciBzb3VyY2UgZmlsZW5hbWUgb2YgaXQuXG4gICAqIEByZXR1cm5zIHtQcm9taXNlfVxuICAgKi9cbiAgYXN5bmMgbG9hZChidWQpIHtcbiAgICBidWQgPSBbXS5jb25jYXQoYnVkKS5tYXAoY296QnVkLmNyZWF0ZSlcbiAgICBidWQgPSBhd2FpdCByZXF1aXJlQnVkKGJ1ZClcbiAgICBidWQgPSBhd2FpdCBldmFsdWF0ZUJ1ZChidWQpXG4gICAgYnVkID0gYXdhaXQgbWFrZXVwQnVkKGJ1ZClcbiAgICBidWQgPSBhd2FpdCBjb252ZXJ0QnVkKGJ1ZClcbiAgICByZXR1cm4gYnVkXG4gIH1cbn1cblxubW9kdWxlLmV4cG9ydHMgPSBCdWRMb2FkZXJcblxuLyoqXG4gKiBDYWxsYmFjayBmb3IgYnVkIGxvYWRcbiAqIEBtZW1iZXJvZiBtb2R1bGU6Y296LWJ1ZC1sb2FkZXIvbGliXG4gKiBAaW5uZXJcbiAqIEBjYWxsYmFjayBsb2FkQ2FsbGJhY2tcbiAqIEBwYXJhbSB7P0Vycm9yfSBlcnIgLSBMb2FkIGVycm9yLlxuICogQHBhcmFtIHtCdWR9IGJ1ZCAtIExvYWRlZCBidWQuXG4gKi9cbiJdfQ==