-
-
Notifications
You must be signed in to change notification settings - Fork 862
Open
Labels
A-transformerArea - Transformer / TranspilerArea - Transformer / Transpiler
Milestone
Description
Remaining issues:
Correctness
In order of how likely they are to affect real world code:
- Co-ordinate class properties transform with TS transform (possibly solved by fix(transformer/class-properties): run other transforms on static properties, static blocks, and computed keys #7982, but need to make sure).
- Run other transforms on inserted statements. (fix(transformer/class-properties): run other transforms on static properties, static blocks, and computed keys #7982)
- Variable collisions between instance prop initializers and constructor. (fix(transformer/class-properties): fix symbol clashes in instance prop initializers #7872)
- Transform
superin static prop initializers. (Partially completed in feat(transformer/class-properties): transform super member expressions that are inside static prop initializer #7815 and feat(transformer/class-properties): transform super call expression that is inside static prop initializer #7831) - Replace class name and
thiswith temp var in static blocks. (fix(transformer/class-properties): replacethisand class name in static blocks #8035) - Transform
superin static blocks. (fix(transformer/class-properties): replacethisand class name in static blocks #8035) - Shadowed class name in transpiled static private field (e.g.
private/static-shadow/input.jsfixture). - Run other transforms on
_superfunction outside class. - Transform class name and
superin_superfunction outside class. - Infer name of class expressions.
- TDZ violations in computed keys - referring to class name within computed key.
The last 4 are very unlikely to have real-world impact.
Improvements / optimizations / required to pass tests
- Private fields with
looseoption /privateFieldsAsPropertiesassumption (partially completed in feat(transformer/class-properties): supportprivate_fields_as_propertiesassumption #7717). - Correct scopes in instance prop initializers. (fix(transformer/class-properties): fix
ScopeIds in instance prop initializers #7823) - Correct scopes in static prop initializers. (fix(transformer/class-properties): fix
ScopeIds in static prop initializers #7791) - Correct scope flags in static prop initializers. (fix(transformer/class-properties): fix scope flags in static prop initializers #7786)
- Improve computed prop key side effect detection.
Other
- Handful of other small issues noted in TODO comments in implementation code.
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
A-transformerArea - Transformer / TranspilerArea - Transformer / Transpiler