all files / gluebert/src/template/ handlebars.template.js

0% Statements 0/3
100% Branches 0/0
0% Functions 0/3
0% Lines 0/3
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39                                                                             
import { TemplateAbstract } from './template.abstract';
 
/**
 * Class represents HandlebarsTemplate
 */
class HandlebarsTemplate extends TemplateAbstract {
 
    /**
     * creates a new HandlebarsTemplate
     * @param {function} engine - template engine
     */
    constructor(engine) {
        super(engine);
    }
 
    /**
     * creates a new hbs view
     * @param {string} template
     * @return {function}
     */
    createView(template) {
        return this.engine.compile(template);
    }
 
    /**
     * render view
     * @param {function} view
     * @param {object} data
     * @return {string}
     */
    render(view, data) {
        return view(data);
    }
 
}
 
export {
    HandlebarsTemplate,
};