vue-carousel-3d
Version:
Beautiful, flexible and touch supported 3D Carousel for Vue.js
46 lines (35 loc) • 1.13 kB
JavaScript
;
const swig = require('swig-templates');
const extras = require('swig-extras');
const forTag = require('swig-templates/lib/tags/for');
extras.useTag(swig, 'markdown');
extras.useTag(swig, 'switch');
extras.useTag(swig, 'case');
extras.useFilter(swig, 'batch');
extras.useFilter(swig, 'groupby');
extras.useFilter(swig, 'markdown');
extras.useFilter(swig, 'nl2br');
extras.useFilter(swig, 'pluck');
extras.useFilter(swig, 'split');
extras.useFilter(swig, 'trim');
extras.useFilter(swig, 'truncate');
swig.setDefaults({
cache: false,
autoescape: false
});
// Hack: Override for tag of Swig
swig.setTag('for', forTag.parse, (...args) => {
const compile = forTag.compile(...args).split('\n');
compile.splice(3, 0, ' if (!Array.isArray(__l) && typeof __l.toArray === "function") { __l = __l.toArray(); }');
return compile.join('\n');
}, forTag.ends, true);
function swigRenderer(data, locals) {
return swig.render(data.text, {
locals,
filename: data.path
});
}
swigRenderer.compile = (data, locals) => swig.compile(data.text, {
filename: data.path
});
module.exports = swigRenderer;