ffr-components
Version:
Fiori styled UI components
43 lines (39 loc) • 2 kB
JavaScript
import _extends from "@babel/runtime/helpers/esm/extends";
import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutProperties";
import classnames from 'classnames';
import React from 'react';
import "./style.css";
import "../theme/theme.css";
export var BUTTON_OPTIONS = ['emphasized', 'light'];
export var BUTTON_TYPES = ['standard', 'positive', 'negative', 'medium'];
var Button = function Button(_ref) {
var _classnames;
var option = _ref.option,
type = _ref.type,
compact = _ref.compact,
glyph = _ref.glyph,
dropdown = _ref.dropdown,
navbar = _ref.navbar,
selected = _ref.selected,
disabled = _ref.disabled,
typeAttr = _ref.typeAttr,
onClick = _ref.onClick,
children = _ref.children,
className = _ref.className,
innerDomRef = _ref.innerDomRef,
props = _objectWithoutProperties(_ref, ["option", "type", "compact", "glyph", "dropdown", "navbar", "selected", "disabled", "typeAttr", "onClick", "children", "className", "innerDomRef"]);
var buttonClasses = classnames((_classnames = {
'fd-button': !option
}, _defineProperty(_classnames, "fd-button--".concat(option), !!option), _defineProperty(_classnames, "fd-button--".concat(type), !!type), _defineProperty(_classnames, 'fd-dropdown__control', dropdown), _defineProperty(_classnames, 'fd-button--compact', compact), _defineProperty(_classnames, "sap-icon--".concat(glyph), !!glyph), _defineProperty(_classnames, 'fd-global-nav__btn', navbar), _defineProperty(_classnames, 'is-selected', selected), _defineProperty(_classnames, 'is-disabled', disabled), _classnames), className);
return React.createElement("button", _extends({}, props, {
className: buttonClasses,
disabled: disabled,
onClick: onClick,
selected: selected,
type: typeAttr,
ref: innerDomRef
}), children);
};
Button.displayName = 'Button';
export default Button;