Skip to content

Doesn't detect parameter destructuring when the parameter has a default value. #46

@Shakeskeyboarde

Description

@Shakeskeyboarde

Destructuring is a warning in all parameters.

{
  "rules": {
    "destructuring/in-params": ["warn", { "max-params": 0 }]
  }
}

This doesn't show a warning:

const createConnectMiddleware = <TArgs extends readonly unknown[]>(
  id: string,
  factory: (...args: TArgs) => (req: IncomingMessage, res: ServerResponse, next: (error?: unknown) => void) => void,
  { timeoutSeconds = 3 }: MiddlewareConnectOptions = {},
): MiddlewareFactory<TArgs> => {
  ...
}

This does show a warning:

const createConnectMiddleware = <TArgs extends readonly unknown[]>(
  id: string,
  factory: (...args: TArgs) => (req: IncomingMessage, res: ServerResponse, next: (error?: unknown) => void) => void,
  { timeoutSeconds = 3 }: MiddlewareConnectOptions,
): MiddlewareFactory<TArgs> => {
  ...
}

Difference:

{ timeoutSeconds = 3 }: MiddlewareConnectOptions = {},
{ timeoutSeconds = 3 }: MiddlewareConnectOptions

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions