cloudworker-proxy
Version:
An api gateway for cloudflare workers
21 lines (17 loc) • 712 B
JavaScript
// For given resolver returns
;
var ensureArray = require("es5-ext/array/valid-array")
, isValue = require("es5-ext/object/is-value")
, ensureObject = require("es5-ext/object/valid-object")
, ensureString = require("es5-ext/object/validate-stringifiable-value");
module.exports = function (parts) {
var literals = ensureArray(ensureObject(parts).literals);
var substitutions = ensureArray(parts.substitutions);
var resolvedString = literals.length
? literals.reduce(function (resolved, literal, index) {
return resolved + substitutions[index - 1].value + literal;
})
: "";
if (isValue(parts.rest)) resolvedString += ensureString(parts.rest);
return resolvedString;
};