Socket
Socket
Sign inDemoInstall

@fluentui/react-jsx-runtime

Package Overview
Dependencies
12
Maintainers
12
Versions
340
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

    @fluentui/react-jsx-runtime

Custom JSX runtime for @fluentui/react-components


Version published
Maintainers
12
Install size
2.04 MB
Created

Readme

Source

@fluentui/react-jsx-runtime

React JSX runtime for Fluent UI React

Fluent UI React requires the usage of a custom JSX runtime to support the slots API

Usage

This library should only be used in the case where you are trying to use the internal slot API of Fluent UI React. If you are not using the internal slot API, you should not need to use this library.

In case you want to re-compose a component and redeclare its render method then this API will be necessary, here's our documentation on Rendering a component with slots

To properly render a component with slots the createElement method of @fluentui/react-jsx-runtime can be used as a replacement for React.createElement:

/** @jsxRuntime classic */
/** @jsx createElement */

// createElement custom JSX pragma is required to support slot creation
import { createElement } from '@fluentui/react-jsx-runtime';
import { assertSlots } from '@fluentui/react-utilities';

const renderButton_unstable = (state: ButtonState) => {
  const { iconOnly, iconPosition } = state;

  assertSlots<ButtonSlots>(state);

  return (
    <state.root>
      {iconPosition !== 'after' && state.icon && <state.icon />}
      {!iconOnly && state.root.children}
      {iconPosition === 'after' && state.icon && <state.icon />}
    </state.root>
  );
};

In case you're using typescript or any modern javascript transpiler, you can use JSX import source feature instead of depending on declaring the runtime on every file

In TSC case you can simply add this do tsconfig.json file:

{
  "compilerOptions": {
    "jsx": "react-jsx",
    "jsxImportSource": "@fluentui/react-jsx-runtime"
  }
}

FAQs

Last updated on 20 May 2024

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.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc