All files / core template.js

100% Statements 3/3
66.67% Branches 2/3
100% Functions 2/2
100% Lines 3/3
1 2 3 4 5 6 7 8 9 10 11 12 13 14                1x 4x   8x    
/**
 * @typedef {string} Template
 */
 
/**
 * @param {Template} template
 * @param {Object<string|number|bool>} values
 */
export const format = (template, values) =>
  template.replace(
    /\{\s*(.+?)(?:\s*=\s*"(.+?)")?\s*\}/g,
    (match, name, defaultValue) => values[name] || defaultValue || ''
  );