String template literals plus.
$ npm install --save ttk
const ttk = require('ttk');
const t = ttk.factory();
const render = t`Hello, ${'@name'}!`;
render({ name: 'World' }); // Hello, World!
String prefix to identify the context value placeholders in the template.
const ttk = require('ttk');
const t = ttk.factory({
keyPrefix: '#'
});
const render = t`Hello, ${'#name'}!`;
render({ name: 'World' }); // Hello, World!
Boolean to detirmine if middleware arrays should merge/concat from passed options or override.
Array of middleware functions that context values are processed through.
Array of middleware functions that the final render string is processed through.
const ttk = require('ttk');
const sql = ttk.factory({
valueFns: [ttk.middleware.value.sqlValueWrapper]
});
const render = sql`
SELECT firstname, lastname
FROM person
WHERE gender = ${'@gender'}
AND state IN ${'@states'}
AND age > ${'@age'}
`;
render({ age: 30, gender: 'male', states: ['NY', 'CA'] });
// SELECT firstname, lastname
// FROM person
// WHERE gender = 'male'
// AND state IN ('NY', 'CA')
// AND age > 30