Skip to content

Keep declare ClassProperty with decorators #11315

@HuJean

Description

@HuJean

Describe the bug

class Test {
  @test()
  declare protected a: A;
}

The output of swc_ecma_transforms_typescript is

class Test {}

While in ts and swc, the output is

class Test {
}
__decorate([
    test()
], Test.prototype, "a", void 0);

Link to the code that reproduces this issue

https://play.swc.rs/?version=1.15.2&code=H4sIAAAAAAAAA%2BNKzkksLlZwVKjmUlBwyMzLSk0u0XDSBHJSUoFSRakKBUX5JUDB1BSFJCsFJ2uuWi4uAJOX4aM1AAAA&config=H4sIAAAAAAAAA0VOOw6DMAzdOUXkuQNi6NCtY4ceIgpWlZaQyDYSCOXuOEDo5vf1Wxtj4MsOHmbVU0GyxEgXVoaXUeysDMiSkB35JHCrao8ukpVIrA6hCXchHzqIpQ9KySJ3bdeeOcA5IfmA2jyUXwZ%2BiOkVUiR5sg4QH8faaHJzNkKI%2FTTgf21ZdLTf4TJ5flfbPig3GwhlWOHnAAAA

https://www.typescriptlang.org/play/?experimentalDecorators=true#code/MYGwhgzhAEAqCmEAu0DeAoa0ACTFIAoBKTaAE3lDACd5oAHagez2DzOjAC5OA7ATwDc6AL5A

SWC Info output

No response

Expected behavior

Not sure should declare ClassProperty with decorators be kept.

Actual behavior

No response

Version

swc_ecma_transforms_typescript 33.0.0

Additional context

No response

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions