UNPKG

@fluentui/react-northstar

Version:
65 lines (63 loc) 2.47 kB
import { compose, getElementType, useUnhandledProps, useAccessibility, useStyles, useTelemetry, useFluentContext } from '@fluentui/react-bindings'; import * as React from 'react'; import { childrenExist, createShorthandFactory, commonPropTypes, rtlTextContainer } from '../../utils'; export var boxClassName = 'ui-box'; /** * A Box is a basic component, commonly used for slots in other Fluent UI components. * By default it just renders a `div`. */ export var Box = /*#__PURE__*/function () { var Box = compose(function (props, ref, composeOptions) { var context = useFluentContext(); var _useTelemetry = useTelemetry(composeOptions.displayName, context.telemetry), setStart = _useTelemetry.setStart, setEnd = _useTelemetry.setEnd; setStart(); var accessibility = props.accessibility, className = props.className, design = props.design, styles = props.styles, variables = props.variables, children = props.children, content = props.content; var getA11yProps = useAccessibility(accessibility, { debugName: composeOptions.displayName, rtl: context.rtl }); var _useStyles = useStyles(composeOptions.displayName, { className: composeOptions.className, composeOptions: composeOptions, mapPropsToInlineStyles: function mapPropsToInlineStyles() { return { className: className, design: design, styles: styles, variables: variables }; }, rtl: context.rtl, unstable_props: props }), classes = _useStyles.classes; var unhandledProps = useUnhandledProps(composeOptions.handledProps, props); var ElementType = getElementType(props); var result = getA11yProps.unstable_wrapWithFocusZone( /*#__PURE__*/React.createElement(ElementType, getA11yProps('root', Object.assign({}, rtlTextContainer.getAttributes({ forElements: [children, content] }), { className: classes.root, ref: ref }, unhandledProps)), childrenExist(children) ? children : content)); setEnd(); return result; }, { className: boxClassName, displayName: 'Box', handledProps: ['accessibility', 'as', 'className', 'children', 'content', 'design', 'styles', 'variables'] }); Box.propTypes = commonPropTypes.createCommon(); Box.create = createShorthandFactory({ Component: Box }); return Box; }(); //# sourceMappingURL=Box.js.map