@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.
77 lines (60 loc) • 2.76 kB
JavaScript
;
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = void 0;
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
var React = _interopRequireWildcard(require("react"));
var _ButtonPrimitive = _interopRequireDefault(require("../primitives/ButtonPrimitive"));
var _getIconContainer = _interopRequireDefault(require("../primitives/ButtonPrimitive/common/getIconContainer"));
var _getCommonProps = _interopRequireDefault(require("../primitives/ButtonPrimitive/common/getCommonProps"));
var _ChevronRight = _interopRequireDefault(require("../icons/ChevronRight"));
var _useTheme = _interopRequireDefault(require("../hooks/useTheme"));
var _getSocialButtonStyles = _interopRequireDefault(require("./helpers/getSocialButtonStyles"));
var _getSocialButtonIconForeground = _interopRequireDefault(require("./helpers/getSocialButtonIconForeground"));
var _getSocialButtonIcon = _interopRequireDefault(require("./helpers/getSocialButtonIcon"));
var _consts = require("./consts");
const _excluded = ["type", "disabled", "size"];
const SocialButton = /*#__PURE__*/React.forwardRef((_ref, ref) => {
let {
type = _consts.TYPE_OPTIONS.APPLE,
disabled = false,
size
} = _ref,
props = (0, _objectWithoutProperties2.default)(_ref, _excluded);
const theme = (0, _useTheme.default)();
const propsWithTheme = (0, _objectSpread2.default)({
theme,
size
}, props);
const commonProps = (0, _getCommonProps.default)(propsWithTheme);
const buttonStyles = (0, _getSocialButtonStyles.default)({
type,
disabled,
theme
});
const icons = (0, _getIconContainer.default)((0, _objectSpread2.default)((0, _objectSpread2.default)({}, propsWithTheme), {}, {
iconForeground: (0, _getSocialButtonIconForeground.default)({
type,
theme
})
}));
const iconLeft = (0, _getSocialButtonIcon.default)(type);
return /*#__PURE__*/React.createElement(_ButtonPrimitive.default, (0, _extends2.default)({
ref: ref
}, props, commonProps, buttonStyles, icons, {
disabled: disabled,
iconLeft: iconLeft,
iconRight: /*#__PURE__*/React.createElement(_ChevronRight.default, {
color: "primary"
}),
circled: false
}));
});
SocialButton.displayName = "SocialButton";
var _default = SocialButton;
exports.default = _default;