You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Sorry that I had to close the prior issue which had no responses (#3939) and open this as this bug is blocking us and our framework users (Serenity) from updating esbuild to 0.24 or later:
This is an issue introduced in 0.24 as 0.23.1 does not have this problem. Probably introduced with the fix to #3913
The generated constructor for the derived B class with a private field includes a field initializer before the super call which results in the following error in browser console if you copy paste the generated code:
VM17:64 Uncaught ReferenceError: Must call super constructor in derived class
before accessing 'this' or returning from derived constructor
at new B (<anonymous>:64:7)
at <anonymous>:71:3
at <anonymous>:72:3
In addition to producing invalid code, I think this behavior should only be applied to properties with decorators themselves (not when only the class itself has a decorator). Otherwise this will be a breaking change for those using useDefineForClassFields: false.
TypeScript does not do this for classes with only class decorators:
This is an issue introduced in 0.24 as 0.23.1 does not have this problem. Probably introduced with the fix to #3913
The generated constructor for the derived B class with a private field includes a field initializer before the super call which results in the following error in browser console if you copy paste the generated code:
In addition to producing invalid code, I think this behavior should only be applied to properties with decorators themselves (not when only the class itself has a decorator). Otherwise this will be a breaking change for those using useDefineForClassFields: false.
TypeScript does not do this for classes with only class decorators:
https://www.typescriptlang.org/play/?target=2#code/GYVwdgxgLglg9mABFApgZygERROAnAQynwAooC8BzFKALkQLAE8AaRXMVADzoeYEpEAbwBQAXxEiIAGwJo0iAILCRiNRwx4Q0UoNFrEEiSIACqDNlyFieKbPmIAQohQ8UYACYLl+xAFsARnpGJgBuSXUETW0bEj1VAzQQAAcUPDjwtWNjMBQAdycMoA
But only for individual properties with decorators:
https://www.typescriptlang.org/play/?target=2#code/GYVwdgxgLglg9mABFApgZygERROAnAQynwAooC8BzFKALkQLAE8AaRXMVADzoeYEpEAbwBQAXxEiIAGwJo0iAILCRiNRwx4Q0UoNFrEEiVNnzEAIUQoeKMABMFy-YgACqDNlyFieVYgAOeDAAbkQoiAC2AIz0jEwA3JLqCJraPiR6fmpoIP4oeBmJasbGYCgA7haFQA
The text was updated successfully, but these errors were encountered: