in sync-api-docs/generateMarkdown.js [81:141]
function generateMethod(method, component) {
let descriptionTokenized = '';
let header = 'Valid `params` keys are:';
let mdPoints = '';
if (method?.params[0]?.type?.raw) {
let desc = method?.params[0]?.type?.raw;
let len = method?.params[0]?.type?.signature?.properties?.length;
descriptionTokenized = tokenizeComment(desc);
if (
descriptionTokenized?.examples &&
descriptionTokenized?.examples.length === len
) {
let obj = [];
for (let i = 0; i < len; i++) {
let newObj = method?.params[0]?.type?.signature?.properties[i];
newObj['description'] = descriptionTokenized?.examples[i]?.value;
obj.push(newObj);
}
obj.map(item => {
if (item.description.trim() !== 'missing')
mdPoints += `- '${item.key}' (${item.value.name}) - ${item.description}`;
else mdPoints += `- '${item.key}' (${item.value.name})`;
});
}
}
if (method?.docblock) {
let dblock = method.docblock
.split('\n')
.map(line => {
return line.replace(/ /, '');
})
.join('\n');
const docblockTokenized = tokenizeComment(dblock);
dblock = dblock.replace(/@platform .*/g, '');
method.rnTags = {};
const platformTag = docblockTokenized.tags.find(
({key}) => key === 'platform'
);
if (platformTag) {
method.rnTags.platform = platformTag.value.split(',');
}
}
return (
'### `' +
method.name +
'()`' +
(method.rnTags && method.rnTags.platform
? formatMultiplePlatform(method.rnTags.platform)
: '') +
'\n' +
'\n' +
(method.description ? method.description + '\n\n' : '') +
generateMethodSignatureTable(method, component) +
(mdPoints && header + '\n' + mdPoints)
).trim();
}