UNPKG

@microsoft/api-extractor

Version:

Validatation, documentation, and auditing for the exported API of a TypeScript package

54 lines (52 loc) 2.44 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); var ApiDocumentation_1 = require("./definitions/ApiDocumentation"); var ApiJsonFile_1 = require("./generators/ApiJsonFile"); /** * A class to abstract away the difference between an item from our public API that could be * represented by either an ApiItem or an IDocItem that is retrieved from a JSON file. */ var ResolvedApiItem = (function () { function ResolvedApiItem(kind, summary, remarks, deprecatedMessage, isBeta, params, returnsMessage, apiTag, apiItem) { this.kind = kind; this.summary = summary; this.remarks = remarks; this.deprecatedMessage = deprecatedMessage; this.isBeta = isBeta; this.params = params; this.returnsMessage = returnsMessage; this.apiTag = apiTag; this.apiItem = apiItem; } /** * A function to abstract the construction of a ResolvedApiItem instance * from an ApiItem. */ ResolvedApiItem.createFromApiItem = function (apiItem) { return new ResolvedApiItem(apiItem.kind, apiItem.documentation.summary, apiItem.documentation.remarks, apiItem.documentation.deprecatedMessage, apiItem.documentation.apiTag === ApiDocumentation_1.ApiTag.Beta, apiItem.documentation.parameters, apiItem.documentation.returnsMessage, apiItem.documentation.apiTag, apiItem); }; /** * A function to abstract the construction of a ResolvedApiItem instance * from a JSON object that symbolizes an IDocItem. */ ResolvedApiItem.createFromJson = function (docItem) { var parameters = undefined; var returnsMessage = undefined; switch (docItem.kind) { case 'function': parameters = docItem.parameters; returnsMessage = docItem.returnValue.description; break; case 'method': parameters = docItem.parameters; returnsMessage = docItem.returnValue.description; break; default: break; } return new ResolvedApiItem(ApiJsonFile_1.default.convertJsonToKind(docItem.kind), docItem.summary, docItem.remarks, docItem.deprecatedMessage, docItem.isBeta, parameters, returnsMessage, ApiDocumentation_1.ApiTag.Public, undefined); }; return ResolvedApiItem; }()); exports.default = ResolvedApiItem; //# sourceMappingURL=ResolvedApiItem.js.map