Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.
private _populateYamlFunctionLike(
yamlItem: Partial,
apiItem: ApiMethod | ApiMethodSignature | ApiConstructor | ApiFunction
): void {
const syntax: IYamlSyntax = {
content: apiItem.getExcerptWithModifiers()
};
yamlItem.syntax = syntax;
if (ApiReturnTypeMixin.isBaseClassOf(apiItem)) {
const returnType: string = this._linkToUidIfPossible(apiItem.returnTypeExcerpt.text);
let returnDescription: string = '';
if (apiItem.tsdocComment && apiItem.tsdocComment.returnsBlock) {
returnDescription = this._renderMarkdown(apiItem.tsdocComment.returnsBlock.content, apiItem);
// temporary workaround for people who mistakenly add a hyphen, e.g. "@returns - blah"
returnDescription = returnDescription.replace(/^\s*-\s+/, '');
}
if (returnType || returnDescription) {
syntax.return = {
type: [returnType],
description: returnDescription
};
}
_populateYamlFunctionLike(yamlItem, apiItem, parentYamlFile) {
/** @type {IYamlSyntax} */
const syntax = {
content: apiItem.getExcerptWithModifiers()
};
yamlItem.syntax = syntax;
if (ApiReturnTypeMixin.isBaseClassOf(apiItem)) {
const returnType = this[kAdaptType](apiItem.returnTypeExcerpt, parentYamlFile);
let returnDescription = '';
if (apiItem.tsdocComment && apiItem.tsdocComment.returnsBlock) {
// @ts-ignore
returnDescription = this._renderMarkdown(apiItem.tsdocComment.returnsBlock.content, apiItem);
// temporary workaround for people who mistakenly add a hyphen, e.g. "@returns - blah"
returnDescription = returnDescription.replace(/^\s*-\s+/, '');
}
if (returnType || returnDescription) {
syntax.return = {
type: [returnType],
description: returnDescription
};
new DocTableCell({ configuration }, [
new DocParagraph({ configuration }, [
new DocCodeSpan({ configuration, code: apiParameter.parameterTypeExcerpt.text }),
]),
]),
new DocTableCell({ configuration }, parameterDescription.nodes),
]),
);
}
if (parametersTable.rows.length > 0) {
output.appendNode(new DocHeading({ configuration: this._tsdocConfiguration, title: 'Parameters' }));
output.appendNode(parametersTable);
}
if (ApiReturnTypeMixin.isBaseClassOf(apiParameterListMixin)) {
const returnTypeExcerpt: Excerpt = apiParameterListMixin.returnTypeExcerpt;
output.appendNode(
new DocParagraph({ configuration }, [
new DocEmphasisSpan({ configuration, bold: true }, [
new DocPlainText({ configuration, text: 'Returns:' }),
]),
]),
);
output.appendNode(
new DocParagraph({ configuration }, [
new DocCodeSpan({ configuration, code: returnTypeExcerpt.text.trim() || '(not declared)' }),
]),
);
if (apiParameterListMixin instanceof ApiDocumentedItem) {
new DocTableCell({configuration}, [
new DocParagraph({ configuration }, [
new DocCodeSpan({ configuration, code: apiParameter.parameterTypeExcerpt.text })
])
]),
new DocTableCell({configuration}, parameterDescription.nodes)
])
);
}
if (parametersTable.rows.length > 0) {
output.appendNode(new DocHeading({ configuration: this._tsdocConfiguration, title: 'Parameters' }));
output.appendNode(parametersTable);
}
if (ApiReturnTypeMixin.isBaseClassOf(apiParameterListMixin)) {
const returnTypeExcerpt: Excerpt = apiParameterListMixin.returnTypeExcerpt;
output.appendNode(
new DocParagraph({ configuration }, [
new DocEmphasisSpan({ configuration, bold: true}, [
new DocPlainText({ configuration, text: 'Returns:' })
])
])
);
output.appendNode(
new DocParagraph({ configuration }, [
new DocCodeSpan({ configuration, code: returnTypeExcerpt.text.trim() || '(not declared)' })
])
);
if (apiParameterListMixin instanceof ApiDocumentedItem) {