UNPKG

@spartacus/core

Version:

Spartacus - the core framework

21 lines 2.96 kB
export class StringTemplate { /** * Populates the given template with the variables provided * * @param templateString template of the OCC endpoint * @param templateVariables variables to replace in the template * @param encodeVariable encode variable before placing it in the template */ static resolve(templateString, templateVariables, encodeVariable) { for (const variableLabel of Object.keys(templateVariables)) { const placeholder = new RegExp('\\${' + variableLabel + '}', 'g'); templateString = templateString.replace(placeholder, // TODO 4.0: default to encodeVariable = true encodeVariable ? encodeURIComponent(templateVariables[variableLabel]) : templateVariables[variableLabel]); } return templateString; } } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RyaW5nLXRlbXBsYXRlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29yZS9zcmMvY29uZmlnL3V0aWxzL3N0cmluZy10ZW1wbGF0ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLE9BQU8sY0FBYztJQUN6Qjs7Ozs7O09BTUc7SUFDSCxNQUFNLENBQUMsT0FBTyxDQUNaLGNBQXNCLEVBQ3RCLGlCQUF5QixFQUN6QixjQUF3QjtRQUV4QixLQUFLLE1BQU0sYUFBYSxJQUFJLE1BQU0sQ0FBQyxJQUFJLENBQUMsaUJBQWlCLENBQUMsRUFBRTtZQUMxRCxNQUFNLFdBQVcsR0FBRyxJQUFJLE1BQU0sQ0FBQyxNQUFNLEdBQUcsYUFBYSxHQUFHLEdBQUcsRUFBRSxHQUFHLENBQUMsQ0FBQztZQUNsRSxjQUFjLEdBQUcsY0FBYyxDQUFDLE9BQU8sQ0FDckMsV0FBVztZQUNYLDZDQUE2QztZQUM3QyxjQUFjO2dCQUNaLENBQUMsQ0FBQyxrQkFBa0IsQ0FBQyxpQkFBaUIsQ0FBQyxhQUFhLENBQUMsQ0FBQztnQkFDdEQsQ0FBQyxDQUFDLGlCQUFpQixDQUFDLGFBQWEsQ0FBQyxDQUNyQyxDQUFDO1NBQ0g7UUFDRCxPQUFPLGNBQWMsQ0FBQztJQUN4QixDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgY2xhc3MgU3RyaW5nVGVtcGxhdGUge1xuICAvKipcbiAgICogUG9wdWxhdGVzIHRoZSBnaXZlbiB0ZW1wbGF0ZSB3aXRoIHRoZSB2YXJpYWJsZXMgcHJvdmlkZWRcbiAgICpcbiAgICogQHBhcmFtIHRlbXBsYXRlU3RyaW5nIHRlbXBsYXRlIG9mIHRoZSBPQ0MgZW5kcG9pbnRcbiAgICogQHBhcmFtIHRlbXBsYXRlVmFyaWFibGVzIHZhcmlhYmxlcyB0byByZXBsYWNlIGluIHRoZSB0ZW1wbGF0ZVxuICAgKiBAcGFyYW0gZW5jb2RlVmFyaWFibGUgZW5jb2RlIHZhcmlhYmxlIGJlZm9yZSBwbGFjaW5nIGl0IGluIHRoZSB0ZW1wbGF0ZVxuICAgKi9cbiAgc3RhdGljIHJlc29sdmUoXG4gICAgdGVtcGxhdGVTdHJpbmc6IHN0cmluZyxcbiAgICB0ZW1wbGF0ZVZhcmlhYmxlczogT2JqZWN0LFxuICAgIGVuY29kZVZhcmlhYmxlPzogYm9vbGVhblxuICApOiBzdHJpbmcge1xuICAgIGZvciAoY29uc3QgdmFyaWFibGVMYWJlbCBvZiBPYmplY3Qua2V5cyh0ZW1wbGF0ZVZhcmlhYmxlcykpIHtcbiAgICAgIGNvbnN0IHBsYWNlaG9sZGVyID0gbmV3IFJlZ0V4cCgnXFxcXCR7JyArIHZhcmlhYmxlTGFiZWwgKyAnfScsICdnJyk7XG4gICAgICB0ZW1wbGF0ZVN0cmluZyA9IHRlbXBsYXRlU3RyaW5nLnJlcGxhY2UoXG4gICAgICAgIHBsYWNlaG9sZGVyLFxuICAgICAgICAvLyBUT0RPIDQuMDogZGVmYXVsdCB0byBlbmNvZGVWYXJpYWJsZSA9IHRydWVcbiAgICAgICAgZW5jb2RlVmFyaWFibGVcbiAgICAgICAgICA/IGVuY29kZVVSSUNvbXBvbmVudCh0ZW1wbGF0ZVZhcmlhYmxlc1t2YXJpYWJsZUxhYmVsXSlcbiAgICAgICAgICA6IHRlbXBsYXRlVmFyaWFibGVzW3ZhcmlhYmxlTGFiZWxdXG4gICAgICApO1xuICAgIH1cbiAgICByZXR1cm4gdGVtcGxhdGVTdHJpbmc7XG4gIH1cbn1cbiJdfQ==