Skip to content

Commit

Permalink
fix: wrap index signature output within back ticks (#292)
Browse files Browse the repository at this point in the history
  • Loading branch information
tgreyuk committed Feb 14, 2022
1 parent 9a41104 commit 2226322
Show file tree
Hide file tree
Showing 3 changed files with 16 additions and 19 deletions.
33 changes: 14 additions & 19 deletions packages/typedoc-plugin-markdown/src/resources/helpers/type.ts
Expand Up @@ -139,32 +139,28 @@ function getDeclarationType(model: DeclarationReflection) {
if (declarationIndexSignature) {
const key = declarationIndexSignature.parameters
? declarationIndexSignature.parameters.map(
(param) => `[${param.name}: ${param.type}]`,
)
(param) => `\`[${param.name}: ${param.type}]\``,
)
: '';
const obj = Handlebars.helpers.type.call(declarationIndexSignature.type);
indexSignature = `${key}: ${obj}; `;
}
const types =
model.children &&
model.children.map((obj) => {
return `\`${obj.name}${
obj.flags.isOptional ? '?' : ''
}\`: ${Handlebars.helpers.type.call(
obj.signatures || obj.children ? obj : obj.type,
)} ${
obj.defaultValue && obj.defaultValue !== '...'
return `\`${obj.name}${obj.flags.isOptional ? '?' : ''
}\`: ${Handlebars.helpers.type.call(
obj.signatures || obj.children ? obj : obj.type,
)} ${obj.defaultValue && obj.defaultValue !== '...'
? `= ${escapeChars(obj.defaultValue)}`
: ''
}`;
}`;
});
return `{ ${indexSignature ? indexSignature : ''}${
types ? types.join('; ') : ''
} }${
model.defaultValue && model.defaultValue !== '...'
return `{ ${indexSignature ? indexSignature : ''}${types ? types.join('; ') : ''
} }${model.defaultValue && model.defaultValue !== '...'
? `= ${escapeChars(model.defaultValue)}`
: ''
}`;
}`;
}
return '{}';
}
Expand All @@ -173,17 +169,16 @@ export function getFunctionType(modelSignatures: SignatureReflection[]) {
const functions = modelSignatures.map((fn) => {
const typeParams = fn.typeParameters
? `<${fn.typeParameters
.map((typeParameter) => typeParameter.name)
.join(', ')}\\>`
.map((typeParameter) => typeParameter.name)
.join(', ')}\\>`
: [];
const params = fn.parameters
? fn.parameters.map((param) => {
return `${param.flags.isRest ? '...' : ''}\`${param.name}${
param.flags.isOptional ? '?' : ''
return `${param.flags.isRest ? '...' : ''}\`${param.name}${param.flags.isOptional ? '?' : ''
}\`: ${Handlebars.helpers.type.call(
param.type ? param.type : param,
)}`;
})
})
: [];
const returns = Handlebars.helpers.type.call(fn.type);
return typeParams + `(${params.join(', ')}) => ${returns}`;
Expand Down
Expand Up @@ -172,6 +172,7 @@ exports[`Declarations: should compile type literal declaration 1`] = `
| :------ | :------ | :------ |
| \`valueA?\` | \`number\` | Comments for valueA |
| \`valueB?\` | \`boolean\` | - |
| \`valueC\` | { \`[dataId: string]\`: \`\`\\"ok\\"\`\` \\\\| \`\`\\"ko\\"\`\`; } | - |
| \`valueX\` | { \`valueA\`: \`number\`[] ; \`valueY\`: (\`z\`: \`string\`) => { \`a\`: \`string\` ; \`b\`: \`string\` } ; \`valueZ\`: \`string\` } | Comment for valueX |
| \`valueX.valueA\` | \`number\`[] | - |
| \`valueX.valueY\` | (\`z\`: \`string\`) => { \`a\`: \`string\` ; \`b\`: \`string\` } | - |
Expand Down
Expand Up @@ -57,6 +57,7 @@ export let typeLiteralDeclaration: {
*/
valueA?: number;
valueB?: boolean;
valueC: { [dataId: string]: 'ok' | 'ko' }
};

export let functionDeclaration: (someArg: number) => boolean;
Expand Down

0 comments on commit 2226322

Please sign in to comment.