a2r
Version:
A2R Framework
29 lines (28 loc) • 1.03 kB
JavaScript
;
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
const typescript_1 = __importDefault(require("typescript"));
const telemetry_1 = require("@a2r/telemetry");
const colors_1 = require("../colors");
const getArrowFunctionName = (node) => {
if (typescript_1.default.isArrowFunction(node)) {
const { parent } = node;
if (parent && typescript_1.default.isVariableDeclaration(parent) && parent.name) {
return parent.name.getText();
}
}
else if (typescript_1.default.isFunctionDeclaration(node)) {
if (node.name) {
return node.name.getText();
;
}
}
else {
telemetry_1.out.error(`Node provided to ${(0, colors_1.method)('getArrowFunctionName')} is not a function`);
return null;
}
return 'Anonymous function';
};
exports.default = getArrowFunctionName;