[ADF-1769] Updated prop table script to handle inherited classes (#2855)

This commit is contained in:
Andy Stark
2018-01-22 12:20:49 +00:00
committed by Eugenio Romano
parent 89a7b0c4b0
commit b65440b490
2 changed files with 48 additions and 4 deletions

View File

@@ -5,6 +5,7 @@ var path = require("path");
var heading = require("mdast-util-heading-range");
var remark = require("remark");
var unist = require("../unistHelpers");
var typescript_1 = require("typescript");
function initPhase(aggData) {
}
exports.initPhase = initPhase;
@@ -76,7 +77,24 @@ function getPropDocData(srcPath, docClassName, inputs, outputs) {
var classDec = node;
var sourceFile = classDec.getSourceFile();
if (classDec.name.escapedText === docClassName) {
getPropDataFromClass(checker, classDec, inputs, outputs);
getPropDataFromClassChain(checker, classDec, inputs, outputs);
}
}
}
}
// Get properties/events from main class and all inherited classes.
function getPropDataFromClassChain(checker, classDec, inputs, outputs) {
// Main class
getPropDataFromClass(checker, classDec, inputs, outputs);
// Inherited classes
for (var _i = 0, _a = classDec.heritageClauses; _i < _a.length; _i++) {
var hc = _a[_i];
var hcType = checker.getTypeFromTypeNode(hc.types[0]);
console.log(checker.getFullyQualifiedName(hcType.symbol));
for (var _b = 0, _c = hcType.symbol.declarations; _b < _c.length; _b++) {
var dec = _c[_b];
if (typescript_1.isClassDeclaration(dec)) {
getPropDataFromClassChain(checker, dec, inputs, outputs);
}
}
}