Files
handlebars.js/lib/handlebars/helpers/lookup.js
T
Nils Knappmeier 1988878087 fix: add more properties required to be enumerable
- __defineGetter__, __defineSetter__, __lookupGetter__, __proto__
2019-11-18 07:33:45 +01:00

14 lines
405 B
JavaScript

export const dangerousPropertyRegex = /^(constructor|__defineGetter__|__defineSetter__|__lookupGetter__|__proto__)$/;
export default function(instance) {
instance.registerHelper('lookup', function(obj, field) {
if (!obj) {
return obj;
}
if (dangerousPropertyRegex.test(String(field)) && !obj.propertyIsEnumerable(field)) {
return undefined;
}
return obj[field];
});
}