UNPKG

@airtasker/form-schema-compiler

Version:
34 lines (26 loc) 1.1 kB
"use strict"; exports.__esModule = true; function _typeof(obj) { if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); } var toString = function toString(obj) { switch (_typeof(obj)) { case "string": return obj; case "number": if (Number.isNaN(obj)) { return ""; } return obj.toString(); default: // all other types will be convert to '' for convenience return ""; } }; var evaluateTemplateLiteral = function evaluateTemplateLiteral(_ref, env, evaluate) { var expressions = _ref.expressions, quasis = _ref.quasis; return quasis.reduce(function (retVal, _ref2, i) { var value = _ref2.value; return retVal + value + toString(i < expressions.length && evaluate(expressions[i], env)); }, ""); }; exports["default"] = evaluateTemplateLiteral;