UNPKG

@ng-doc/builder

Version:

<!-- PROJECT LOGO --> <br /> <div align="center"> <a href="https://github.com/ng-doc/ng-doc"> <img src="https://ng-doc.com/assets/images/ng-doc.svg?raw=true" alt="Logo" height="150px"> </a>

27 lines 1.14 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.findMember = findMember; const ts_morph_1 = require("ts-morph"); const class_1 = require("../class"); const interface_1 = require("../interface"); const get_interface_member_1 = require("../interface/get-interface-member"); const member_type_1 = require("./member-type"); /** * * @param node * @param name */ function findMember(node, name) { if (ts_morph_1.Node.isClassDeclaration(node)) { const member = (0, class_1.findClass)(node, (cls) => !!cls.getInstanceMember(name))?.getInstanceMember(name); return member && (0, member_type_1.isClassMember)(member) ? member : undefined; } if (ts_morph_1.Node.isInterfaceDeclaration(node)) { if (ts_morph_1.Node.isInterfaceDeclaration(node)) { const baseInterface = (0, interface_1.findInterface)(node, (int) => !!(0, get_interface_member_1.getInterfaceMember)(int, name)); return baseInterface && (0, get_interface_member_1.getInterfaceMember)(baseInterface, name); } } return undefined; } //# sourceMappingURL=find-member.js.map