@orfeas126/box-ui-elements
Version:
Box UI Elements
51 lines (50 loc) • 1.34 kB
JavaScript
/**
*
* @file Header bar
* @author Box
*/
import * as React from 'react';
import { injectIntl } from 'react-intl';
import Logo from './Logo';
import messages from '../messages';
import { VIEW_FOLDER, VIEW_SEARCH } from '../../../constants';
import './Header.scss';
// eslint-disable-next-line react/prop-types
const Header = ({
isHeaderLogoVisible = true,
view,
isSmall,
searchQuery,
onSearch,
logoUrl,
intl
}) => {
const {
formatMessage
} = intl;
const search = ({
currentTarget
}) => onSearch(currentTarget.value);
const searchMessage = formatMessage(messages.searchPlaceholder);
const isFolder = view === VIEW_FOLDER;
const isSearch = view === VIEW_SEARCH;
return /*#__PURE__*/React.createElement("div", {
className: "be-header"
}, isHeaderLogoVisible && /*#__PURE__*/React.createElement(Logo, {
isSmall: isSmall,
url: logoUrl
}), /*#__PURE__*/React.createElement("div", {
className: "be-search"
}, /*#__PURE__*/React.createElement("input", {
"aria-label": searchMessage,
"data-testid": "be-Header-searchInput",
disabled: !isFolder && !isSearch,
onChange: search,
placeholder: searchMessage,
type: "search",
value: searchQuery
})));
};
export { Header as HeaderBase };
export default injectIntl(Header);
//# sourceMappingURL=Header.js.map