CtrlK
BlogDocsLog inGet started
Tessl Logo

tessl/npm-babel--plugin-syntax-class-properties

Babel syntax plugin that enables parsing of class properties, private properties, and private methods

94

1.04x
Overview
Eval results
Files

rubric.jsonevals/scenario-5/

{
  "context": "Evaluates whether the solution wires @babel/plugin-syntax-class-properties so class field syntax is parseable while remaining a no-op when that syntax is already enabled. Confirms the helpers lean on this syntax-only plugin rather than transform plugins.",
  "type": "weighted_checklist",
  "checklist": [
    {
      "name": "Syntax plugin wired",
      "description": "Babel configuration used by the helpers explicitly includes @babel/plugin-syntax-class-properties in the plugins array that drives parsing.",
      "max_score": 25
    },
    {
      "name": "No transform substitute",
      "description": "Implementation avoids using transformation plugins (e.g., @babel/plugin-transform-class-properties) and relies on @babel/plugin-syntax-class-properties as the syntax-only parser hook.",
      "max_score": 20
    },
    {
      "name": "Idempotent inclusion",
      "description": "ensureClassFieldSyntax recognizes when @babel/plugin-syntax-class-properties is already present and prevents duplicate entries while still returning a usable config.",
      "max_score": 20
    },
    {
      "name": "Fallback injection",
      "description": "When the base config lacks class field support, the helpers add @babel/plugin-syntax-class-properties so transforms on code with public/private fields succeed.",
      "max_score": 15
    },
    {
      "name": "Output preserved",
      "description": "Transforms invoked through transformWithClassFields leave class field code unchanged, demonstrating that @babel/plugin-syntax-class-properties operates as a no-op on already supported syntax.",
      "max_score": 20
    }
  ]
}

Install with Tessl CLI

npx tessl i tessl/npm-babel--plugin-syntax-class-properties

tile.json