literal-toast

Helper for making template literal tags; combines template literal values so you don't have to

Downloads in past

Stats

StarsIssuesVersionUpdatedCreatedSize
literal-toast
2181.0.08 years ago8 years agoMinified + gzip package size for literal-toast in KB

Readme

🍞 Literal Toast
npm literal-toast Build Status codecov
Helper for making template literal tags; combines template literal values so you don't have to

Wait, what ⁉️

Tagged template literals are a feature of ES6/ES2015 which allows processing of template literals (template strings).
This is a little helper for zipping the literals and substitutions so your tag can operate on or return the final value of the template string without reimplementing this logic itself.

Usage

Spread the literals and substitutions from the template literal onto literalToast;
import literalToast from 'literal-toast';

function lineReverse(literals, ...substitutions) {
  return literalToast(literals, ...substitutions)
    .split('\n')
    .reverse()
    .join('\n');
}

lineReverse`but it demonstrates what this does pretty simply.
This is a weird example,`;

// Returns:
// "This is a weird example,
//  but it demonstrates what this does pretty simply."

The above example shows both the literals and substitutions for clarity, but if you don't use either parameter yourself, you can write it like this instead;
function myTag(...literalValues) {
  return literalToast(...literalValues) // your logic here
}