UNPKG

xenforo-dl

Version:
36 lines 1.06 kB
export default class ObjectHelper { static getProperty(obj, prop, required = false) { if (typeof obj !== 'object') { if (required) { throw new ObjectPropertyNotFoundError(prop); } return undefined; } const props = prop.split('.'); let v = obj; while (props.length > 0) { const p = props.shift(); if (v && typeof v === 'object') { v = v[p]; if (v === undefined) { if (required) { throw new ObjectPropertyNotFoundError(prop); } return v; } } else if (required) { throw new ObjectPropertyNotFoundError(prop); } } return v; } } class ObjectPropertyNotFoundError extends Error { constructor(prop) { super(); this.name = 'ObjectPropertyNotFoundError'; this.prop = prop; } } //# sourceMappingURL=ObjectHelper.js.map