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-8/

{
  "context": "Evaluates whether the solution wires @babel/plugin-syntax-class-properties correctly as a syntax-only Babel plugin, extending parser options for class fields/private features while preserving passthrough output.",
  "type": "weighted_checklist",
  "checklist": [
    {
      "name": "Version guard",
      "description": "Calls Babel plugin API's `api.assertVersion(7)` (or higher range) to reject cores below v7 before modifying parser options.",
      "max_score": 15
    },
    {
      "name": "Public fields plugin",
      "description": "In `manipulateOptions`, pushes the `classProperties` parser plugin so public and static class fields parse without extra transforms.",
      "max_score": 30
    },
    {
      "name": "Private features plugins",
      "description": "Registers both `classPrivateProperties` and `classPrivateMethods` parser plugins inside `manipulateOptions` to allow private fields and methods syntax.",
      "max_score": 25
    },
    {
      "name": "Syntax passthrough",
      "description": "Ensures the plugin is syntax-only: no visitor transforms and Babel transform outputs remain identical to input when only this plugin is enabled.",
      "max_score": 20
    },
    {
      "name": "Transform wiring",
      "description": "`transformWithSyntaxSupport` (or equivalent runner) invokes `@babel/core` with this plugin configured so provided sources using class features parse successfully.",
      "max_score": 10
    }
  ]
}

Install with Tessl CLI

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

tile.json