Skip to content

Enhancement: [member-ordering] Port requiredFirst from eslint-plugin-typescript-sort-keys #5596

Closed
@JoshuaKGoldberg

Description

@JoshuaKGoldberg

Before You File a Proposal Please Confirm You Have Done The Following...

My proposal is suitable for this project

  • I believe my proposal would be useful to the broader TypeScript community (meaning it is not a niche proposal).

Link to the rule's documentation

https://typescript-eslint.io/rules/member-ordering/

Description

eslint-plugin-typescript-sort-keys supports a requiredFirst option that enforces required members come before optional. Can we add that to @typescript-eslint/member-ordering, to bring it up to parity?

Porting discussion from infctr/eslint-plugin-typescript-sort-keys#50 (comment)

Fail

interface U {
  d: T
  c?: T
  b?: T
  a: T
}

Pass

interface U {
  a: T
  d: T
  b?: T
  c?: T
}

Additional Info

Examples taken from https://github.com/infctr/eslint-plugin-typescript-sort-keys/blob/master/docs/rules/interface.md.

Metadata

Metadata

Assignees

No one assigned

    Labels

    accepting prsGo ahead, send a pull request that resolves this issueenhancement: plugin rule optionNew rule option for an existing eslint-plugin rulepackage: eslint-pluginIssues related to @typescript-eslint/eslint-plugin

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions