Skip to content

bug: props-must-be-readonly reports error although mutable is set when attribute is set via constant value #196

@pinussilvestrus

Description

@pinussilvestrus

Prerequisites

Stencil ESLint Version

1.2.0

Current Behavior

When declaring a @Prop via enum or constant, the props-must-be-readonly is reporting an error although mutable was set to true.

@Prop({ reflect: true, attribute: Attribute.withPadding, mutable: true }) withPadding: boolean = false;

=>

  26:77  error  Class properties decorated with @Prop() should be readonly  stencil/props-must-be-readonly

In comparison, when setting the attribute directly without an enum or const, it works as expected (no error is reported)

 @Prop({ reflect: true, attribute: 'with-padding', mutable: true }) withPadding: boolean = false;

Expected Behavior

The @Prop declaration

@Prop({ reflect: true, attribute: Attribute.withPadding, mutable: true }) withPadding: boolean = false;

should not throw an error, as mutable is set to true (cf. docs).

Steps to Reproduce

  • Declare a property as above
  • Run the linting rules with props-must-be-readonly enabled

Code Reproduction URL

pinussilvestrus/test-stencil@0d943e6

Additional Information

No response

Metadata

Metadata

Assignees

No one assigned

    Type

    No fields configured for Bug.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions