UNPKG

openapi-client-sdk-loader

Version:
92 lines (67 loc) 1.84 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.default = void 0; var _fs = _interopRequireDefault(require("fs")); var _path = _interopRequireDefault(require("path")); var _handlebars = _interopRequireDefault(require("handlebars")); var _glob = _interopRequireDefault(require("glob")); var _utils = require("../utils"); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } var _default = (source, { template: templatePath, templateOptions }) => { const template = _fs.default.readFileSync(`${templatePath}/index.handlebars`); _handlebars.default.registerHelper({ json(context) { return JSON.stringify(context); }, capitalize(context) { return (0, _utils.capitalize)(context); }, eq(v1, v2) { return v1 === v2; }, ne(v1, v2) { return v1 !== v2; }, lt(v1, v2) { return v1 < v2; }, gt(v1, v2) { return v1 > v2; }, lte(v1, v2) { return v1 <= v2; }, gte(v1, v2) { return v1 >= v2; }, and(...args) { return args.every(Boolean); }, or(...args) { return args.slice(0, -1).some(Boolean); }, not(context) { return !!context; } }); const partials = _glob.default.sync(`${templatePath}/**/*.handlebars`); if (partials && partials.length) { partials.forEach(partial => { if (partial !== `${templatePath}/index.handlebars`) { _handlebars.default.registerPartial(_path.default.parse(partial).name, _fs.default.readFileSync(partial).toString()); } }); } const compiled = _handlebars.default.compile(template.toString(), { noEscape: true }); return compiled({ ...source, options: templateOptions || {} }); }; exports.default = _default;