UNPKG

@kiwicom/orbit-components

Version:

Orbit-components is a React component library which provides developers with the easiest possible way of building Kiwi.com’s products.

48 lines (47 loc) 1.84 kB
"use strict"; var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default; exports.__esModule = true; exports.default = void 0; var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends")); var React = _interopRequireWildcard(require("react")); var _consts = require("./consts"); var _ButtonPrimitive = _interopRequireDefault(require("../primitives/ButtonPrimitive")); var _getIconContainer = _interopRequireDefault(require("../primitives/ButtonPrimitive/common/getIconContainer")); var _getCommonProps = _interopRequireDefault(require("../primitives/ButtonPrimitive/common/getCommonProps")); var _useTheme = _interopRequireDefault(require("../hooks/useTheme")); var _getButtonStyles = _interopRequireDefault(require("./helpers/getButtonStyles")); var _getButtonIconForeground = _interopRequireDefault(require("./helpers/getButtonIconForeground")); const Button = /*#__PURE__*/React.forwardRef(({ type = _consts.TYPE_OPTIONS.PRIMARY, size, disabled = false, ...props }, ref) => { const theme = (0, _useTheme.default)(); const propsWithTheme = { theme, size, ...props }; const commonProps = (0, _getCommonProps.default)(propsWithTheme); const buttonStyles = (0, _getButtonStyles.default)({ type, theme, disabled }); const icons = (0, _getIconContainer.default)({ ...propsWithTheme, iconForeground: (0, _getButtonIconForeground.default)({ type, theme }) }); return /*#__PURE__*/React.createElement(_ButtonPrimitive.default, (0, _extends2.default)({ ref: ref, disabled: disabled }, props, buttonStyles, commonProps, icons)); }); Button.displayName = "Button"; var _default = Button; exports.default = _default;