ts-logs
Version:
This package provide a skd for audit and manager logs in nodejs and express
36 lines • 1.2 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.Reference = void 0;
/**
* @description Get class or function name.
* @returns className or functionName as string.
*/
exports.Reference = ({
fromError(error) {
const isNotEmpty = (val) => val !== '';
const isNotAt = (val) => val !== 'at';
const validate = (val) => isNotEmpty(val) && isNotAt(val);
const reference = '.<anonymous>';
const stack = error.stack ?? '';
const names = stack.split(' ')
.filter(validate)
.filter((str) => str
.includes(reference));
const name = names[0];
if (!name)
return 'Default';
if (typeof name === 'string') {
const result = name.slice(0, name.indexOf('.'));
if (typeof result !== 'string')
return 'Default';
return result;
}
return 'Default';
},
new() {
const error = new Error('[error-token@b7292691-6693-4ab9-9da8-aa72e9e19817]');
return this.fromError(error);
}
});
exports.default = exports.Reference;
//# sourceMappingURL=get-function-name.util.js.map