Security News
NIST Misses 2024 Deadline to Clear NVD Backlog
NIST has failed to meet its self-imposed deadline of clearing the NVD's backlog by the end of the fiscal year. Meanwhile, CVE's awaiting analysis have increased by 33% since June.
@babel/helper-builder-react-jsx
Advanced tools
@babel/helper-builder-react-jsx is a Babel helper module that assists in transforming JSX syntax into JavaScript. It is primarily used internally by Babel plugins to handle JSX transformations, making it easier to convert JSX elements into the corresponding React.createElement calls or other custom JSX pragma functions.
Transform JSX to React.createElement
This feature allows you to transform a JSX element into a React.createElement call. The code sample demonstrates how to create a JSX element and then transform it into a React.createElement call using the @babel/helper-builder-react-jsx package.
const t = require('@babel/types');
const buildElement = require('@babel/helper-builder-react-jsx');
const jsxElement = t.jSXElement(
t.jSXOpeningElement(t.jSXIdentifier('div'), [], false),
t.jSXClosingElement(t.jSXIdentifier('div')),
[t.jSXText('Hello, world!')],
false
);
const reactElement = buildElement({
tagExpr: t.identifier('React.createElement'),
tagName: 'div',
args: [t.stringLiteral('div'), t.nullLiteral(), t.stringLiteral('Hello, world!')]
});
console.log(reactElement);
Custom JSX Pragma
This feature allows you to transform a JSX element using a custom JSX pragma function instead of React.createElement. The code sample demonstrates how to create a JSX element and then transform it using a custom pragma function called MyCustomPragma.
const t = require('@babel/types');
const buildElement = require('@babel/helper-builder-react-jsx');
const jsxElement = t.jSXElement(
t.jSXOpeningElement(t.jSXIdentifier('MyComponent'), [], false),
t.jSXClosingElement(t.jSXIdentifier('MyComponent')),
[t.jSXText('Hello, custom pragma!')],
false
);
const customPragmaElement = buildElement({
tagExpr: t.identifier('MyCustomPragma'),
tagName: 'MyComponent',
args: [t.stringLiteral('MyComponent'), t.nullLiteral(), t.stringLiteral('Hello, custom pragma!')]
});
console.log(customPragmaElement);
babel-plugin-transform-react-jsx is a Babel plugin that transforms JSX syntax into React.createElement calls. It is similar to @babel/helper-builder-react-jsx in that it handles JSX transformations, but it is a higher-level plugin that can be used directly in a Babel configuration.
babel-plugin-jsx-pragmatic is a Babel plugin that allows you to specify a custom JSX pragma function to use instead of React.createElement. It provides similar functionality to @babel/helper-builder-react-jsx's custom pragma feature but is designed to be used as a standalone Babel plugin.
babel-plugin-transform-vue-jsx is a Babel plugin that transforms JSX syntax into Vue render function calls. While it serves a similar purpose to @babel/helper-builder-react-jsx, it is specifically designed for use with Vue.js instead of React.
Helper function to build react jsx
See our website @babel/helper-builder-react-jsx for more information.
Using npm:
npm install --save @babel/helper-builder-react-jsx
or using yarn:
yarn add @babel/helper-builder-react-jsx
v7.18.6 (2022-06-27)
babel-parser
...<...>
followed by newline or binary operator (@nicolo-ribaudo)babel-generator
, babel-parser
, babel-preset-env
, babel-template
babel-helper-remap-async-to-generator
, babel-plugin-proposal-async-generator-functions
await
in computed class keys (@Yokubjon-J)babel-plugin-transform-parameters
babel-core
babel-core
(@liuxingbaoyu)babel-core
, babel-helper-check-duplicate-nodes
, babel-plugin-bugfix-safari-id-destructuring-collision-in-function-expression
, babel-plugin-bugfix-v8-spread-parameters-in-optional-chaining
, babel-plugin-proposal-destructuring-private
, babel-plugin-proposal-optional-chaining
, babel-plugin-transform-runtime
import { types } from "@babel/core"
with native ESM (@nicolo-ribaudo)babel-standalone
proposal-unicode-sets-regex
to @babel/standalone
(@nicolo-ribaudo)babel-generator
, babel-types
babel-code-frame
, babel-core
, babel-generator
, babel-helper-annotate-as-pure
, babel-helper-builder-binary-assignment-operator-visitor
, babel-helper-builder-react-jsx
, babel-helper-check-duplicate-nodes
, babel-helper-compilation-targets
, babel-helper-create-class-features-plugin
, babel-helper-create-regexp-features-plugin
, babel-helper-define-map
, babel-helper-explode-assignable-expression
, babel-helper-fixtures
, babel-helper-function-name
, babel-helper-hoist-variables
, babel-helper-member-expression-to-functions
, babel-helper-module-imports
, babel-helper-module-transforms
, babel-helper-optimise-call-expression
, babel-helper-plugin-test-runner
, babel-helper-plugin-utils
, babel-helper-remap-async-to-generator
, babel-helper-replace-supers
, babel-helper-simple-access
, babel-helper-split-export-declaration
, babel-helper-transform-fixture-test-runner
, babel-helper-validator-option
, babel-helper-wrap-function
, babel-helpers
, babel-highlight
, babel-plugin-bugfix-v8-spread-parameters-in-optional-chaining
, babel-plugin-external-helpers
, babel-plugin-proposal-async-generator-functions
, babel-plugin-proposal-class-static-block
, babel-plugin-proposal-decorators
, babel-plugin-proposal-destructuring-private
, babel-plugin-proposal-function-bind
, babel-plugin-proposal-function-sent
, babel-plugin-proposal-json-strings
, babel-plugin-proposal-object-rest-spread
, babel-plugin-proposal-optional-chaining
, babel-plugin-proposal-partial-application
, babel-plugin-proposal-pipeline-operator
, babel-plugin-proposal-private-property-in-object
, babel-plugin-proposal-record-and-tuple
, babel-plugin-syntax-typescript
, babel-plugin-transform-block-scoped-functions
, babel-plugin-transform-block-scoping
, babel-plugin-transform-classes
, babel-plugin-transform-computed-properties
, babel-plugin-transform-destructuring
, babel-plugin-transform-duplicate-keys
, babel-plugin-transform-exponentiation-operator
, babel-plugin-transform-flow-comments
, babel-plugin-transform-flow-strip-types
, babel-plugin-transform-for-of
, babel-plugin-transform-function-name
, babel-plugin-transform-modules-amd
, babel-plugin-transform-modules-commonjs
, babel-plugin-transform-modules-systemjs
, babel-plugin-transform-modules-umd
, babel-plugin-transform-object-super
, babel-plugin-transform-parameters
, babel-plugin-transform-property-mutators
, babel-plugin-transform-proto-to-assign
, babel-plugin-transform-react-constant-elements
, babel-plugin-transform-react-display-name
, babel-plugin-transform-react-inline-elements
, babel-plugin-transform-react-jsx-compat
, babel-plugin-transform-react-jsx-source
, babel-plugin-transform-react-jsx
, babel-plugin-transform-runtime
, babel-plugin-transform-typescript
, babel-plugin-transform-unicode-escapes
, babel-preset-env
, babel-preset-typescript
, babel-standalone
, babel-template
, babel-traverse
, babel-types
babel-core
, babel-helper-transform-fixture-test-runner
, babel-plugin-transform-destructuring
FAQs
Helper function to build react jsx
We found that @babel/helper-builder-react-jsx demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 4 open source maintainers collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
NIST has failed to meet its self-imposed deadline of clearing the NVD's backlog by the end of the fiscal year. Meanwhile, CVE's awaiting analysis have increased by 33% since June.
Security News
Cloudflare has launched a setup wizard allowing users to easily create and manage a security.txt file for vulnerability disclosure on their websites.
Security News
The Socket Research team breaks down a malicious npm package targeting the legitimate DOMPurify library. It uses obfuscated code to hide that it is exfiltrating browser and crypto wallet data.