UNPKG

652 BJavaScriptView Raw
1'use strict';
2
3var Path = require('path');
4
5function helper(paper) {
6 paper.handlebars.registerHelper('dynamicComponent', function (path) {
7 if (!this['partial']) {
8 return;
9 }
10
11 // prevent access to __proto__
12 // or any hidden object properties
13 path = path.replace('__', '');
14
15 // We don't want a slash as a prefix
16 if (path[0] === '/') {
17 path = path.substr(1);
18 }
19
20 path = Path.join(path, this['partial']);
21
22 if (paper.handlebars.partials[path]) {
23
24 return paper.handlebars.partials[path](this);
25 }
26 });
27}
28
29module.exports = helper;