Back to Explore

syntax-tree/estree-util-build-jsx

GitHub
1 watchersOpen source

Last release: 10/22/2023

estree-util-build-jsx transforms JSX nodes embedded in an estree (JavaScript) syntax tree into function calls, for example converting `<x />` into `h('x')`. It is useful when you already have a syntax tree and only need to compile JSX away (supporting runtimes for React, preact, and hyperscript-style interfaces).

Project status

  • The source appears to be maintained, with an upstream push recorded on 2024-08-23, though the most recent published updates in the provided summaries are from 2023 (up to 3.0.1 on 2023-10-22).
  • Update cadence looks relatively infrequent based on the provided history, with a 3.0.0 update on 2023-07-19 and a small follow-up patch 3.0.1 on 2023-10-22, and no additional update details shown after 2023-10-22.

AI summary generated Today

AI-generated from public sources. May be inaccurate. Report

Recent updates

  • 3.0.1

    10/22/2023

    Release 3.0.1 is a small patch that adjusts how the JSX runtime import is inserted into the output AST. The documented goal is to keep directive prologues (for example, "use client") ahead of the generated import.

  • 3.0.0

    7/19/2023

    Release 3.0.0 of estree-util-build-jsx focuses on modernizing the package for newer Node.js versions and ESM packaging conventions. The main functional API behavior change is that buildJsx now yields undefined, requiring callers to use the mutated input tree rather than a return value.

    Breaking
  • 2.2.2

    1/7/2023

    Release 2.2.2 mainly documents improvements and adds a public `Runtime` type export. The code diff, however, includes broader JSDoc/type-definition adjustments around JSX runtime-related options than what the release notes explicitly call out.

    Features
  • 2.2.1

    12/26/2022

    Release 2.2.1 is described as a small patch release that fixes “initial spaces in text” and adds documentation for types. The actual diff shows mostly JSDoc and tooling updates around the JSX transformation library, plus several CI, build, test, and TypeScript configuration changes.

  • 2.2.0

    7/24/2022

    Release 2.2.0 bumps the package version and updates several development and type-related dependencies. It also changes the GitHub Actions test Node.js LTS target used in CI.

  • 2.1.0

    5/18/2022

    Release 2.1.0 adds support for the automatic dev runtime (JSX output can use React's jsxDEV/jsxsDEV paths and imports when applicable), and updates documentation. The codebase is also reorganized to move the main implementation into lib/, while tightening TypeScript settings with strict mode.

    Features
  • 2.0.0

    3/30/2021

    Version 2.0.0 moves the package to ESM and adds JSDoc-based type annotations. The core transformer remains centered around `buildJsx`, but the module format and published API surface changed as part of the ESM transition.

    BreakingFeatures
  • 1.1.1

    2/9/2021

    Version 1.1.1 primarily improves how the library builds member expressions when JSX identifiers contain characters that are not valid JavaScript identifier names. The release notes state this as a fix for computed member expressions, and the code changes implement computed properties when a segment must be emitted as a string literal.

  • 1.1.0

    1/24/2021

    Release 1.1.0 adds support for transforming JSX to React-style “automatic runtime” output (using jsx/jsxs/Fragment from a jsx-runtime entry). The code also introduces new comment directives to control the runtime and import source, plus additional validation and AST structure changes when automatic runtime is active.

    BreakingFeatures
  • 1.0.0

    12/23/2020

    This release is tagged as version 1.0.0, but the provided release notes contain no change descriptions. No information is available here about new features, breaking changes, bug fixes, security updates, or migration requirements.