Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

typedoc-plugin-markdown: beautify parameter table and signature title output of destructured params #364

Merged
merged 1 commit into from
Dec 1, 2022

Conversation

Xunnamius
Copy link

First off, thank you for typedoc and typedoc-plugin-markdown, they've done wonders for my documentation game :)

So I've been using a forked version of the typedoc-plugin-markdown package that updates how destructured parameters are represented in Markdown.

For example:

export function deleteme(...[x, y]: [number, string]) {
  console.log(x, y);
}

export function deleteme2(
  { a = true, b = true }: { a?: boolean; b?: boolean } = {},
  state: boolean,
  fate: number
) {
  console.log(a, b, state, fate);
}

export function deleteme3(
  { a = true, b = true }: { a?: boolean; b?: boolean } = {},
  { c = true, d = true }: { c?: boolean; d?: boolean } = {},
  state: boolean,
  fate: number,
  { e = true, f = true }: { e?: boolean; f?: boolean } = {}
) {
  console.log(a, b, c, d, e, f, state, fate);
}
Yields (using my fork):

deleteme

deleteme(...«destructured»): void

Parameters

Name Type
...«destructured» [number, string]

Returns

void

Defined in

index.ts:8


deleteme2

deleteme2(«destructured»?, state, fate): void

Parameters

Name Type
«destructured» Object
 › a? boolean
 › b? boolean
state boolean
fate number

Returns

void

Defined in

index.ts:12


deleteme3

deleteme3(«destructured»?, «destructured»?, state, fate, «destructured»?): void

Parameters

Name Type
«destructured» Object
 › a? boolean
 › b? boolean
«destructured» Object
 › c? boolean
 › d? boolean
state boolean
fate number
«destructured» Object
 › e? boolean
 › f? boolean

Returns

void

Defined in

index.ts:20

Yields (not using my fork):

deleteme

deleteme(...__namedParameters): void

Parameters

Name Type
...__namedParameters [number, string]

Returns

void

Defined in

index.ts:8


deleteme2

deleteme2(__namedParameters?, state, fate): void

Parameters

Name Type
__namedParameters Object
__namedParameters.a? boolean
__namedParameters.b? boolean
state boolean
fate number

Returns

void

Defined in

index.ts:12


deleteme3

deleteme3(__namedParameters?, __namedParameters?, state, fate, __namedParameters?): void

Parameters

Name Type
__namedParameters Object
__namedParameters.a? boolean
__namedParameters.b? boolean
__namedParameters Object
__namedParameters.c? boolean
__namedParameters.d? boolean
state boolean
fate number
__namedParameters Object
__namedParameters.e? boolean
__namedParameters.f? boolean

Returns

void

Defined in

index.ts:20

Along with updated tests, I'm currently using my forked version across several projects if you want to test it out real quick:

npm install --save-dev https://xunn.at/typedoc-plugin-markdown
npx typedoc --plugin typedoc-plugin-markdown --out demo --readme none './src/*'

…signature title output of destructured params
@tgreyuk tgreyuk merged commit d982de4 into typedoc2md:master Dec 1, 2022
@tgreyuk
Copy link
Member

tgreyuk commented Dec 1, 2022

Thank you - this works better (apologies for delay in response).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants