UNPKG

@itwin/itwinui-react

Version:

A react component library for iTwinUI

97 lines (96 loc) 2.52 kB
'use strict'; Object.defineProperty(exports, '__esModule', { value: true, }); Object.defineProperty(exports, 'HeaderButton', { enumerable: true, get: function () { return HeaderButton; }, }); const _interop_require_wildcard = require('@swc/helpers/_/_interop_require_wildcard'); const _react = /*#__PURE__*/ _interop_require_wildcard._(require('react')); const _index = require('../../utils/index.js'); const _HeaderSplitButton = require('./HeaderSplitButton.js'); const _HeaderDropdownButton = require('./HeaderDropdownButton.js'); const _HeaderBasicButton = require('./HeaderBasicButton.js'); const HeaderButton = _react.forwardRef((props, ref) => { let { name, description, htmlName, isActive = false, startIcon, menuItems, disabled, ...rest } = props; let buttonProps = { startIcon: startIcon ? _react.createElement( _index.Box, { as: 'span', className: 'iui-header-breadcrumb-button-icon', 'aria-hidden': true, }, startIcon, ) : null, children: _react.createElement( _index.Box, { as: 'span', className: 'iui-header-breadcrumb-button-text', }, _react.createElement( _index.Box, { as: 'span', className: 'iui-header-breadcrumb-button-text-label', }, name, ), description && _react.createElement( _index.Box, { as: 'span', className: 'iui-header-breadcrumb-button-text-sublabel', }, description, ), ), ref: ref, disabled: disabled, name: htmlName, ...(!!menuItems && { menuItems, }), ...rest, }; let headerButton = props.menuItems && props.onClick ? _react.createElement(_HeaderSplitButton.HeaderSplitButton, buttonProps) : props.menuItems ? _react.createElement( _HeaderDropdownButton.HeaderDropdownButton, buttonProps, ) : _react.createElement( _HeaderBasicButton.HeaderBasicButton, buttonProps, ); return _react.createElement( _index.Box, { as: 'li', className: 'iui-header-breadcrumb-item', 'aria-current': isActive ? 'location' : void 0, 'aria-disabled': disabled ? 'true' : void 0, }, headerButton, ); }); if ('development' === process.env.NODE_ENV) HeaderButton.displayName = 'HeaderButton';