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.

81 lines (67 loc) 2.64 kB
"use strict"; 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 _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties")); var React = _interopRequireWildcard(require("react")); var _styledComponents = _interopRequireDefault(require("styled-components")); var _defaultTheme = _interopRequireDefault(require("../defaultTheme")); var _consts = require("./consts"); const _excluded = ["theme", "type"]; const StyledButtonMobileStore = (0, _styledComponents.default)((_ref) => { let { theme, type } = _ref, props = (0, _objectWithoutProperties2.default)(_ref, _excluded); return /*#__PURE__*/React.createElement("a", props, props.children); }).withConfig({ displayName: "ButtonMobileStore__StyledButtonMobileStore", componentId: "sc-117vdh7-0" })(["display:inline-block;height:", ";"], _consts.HEIGHT); // $FlowFixMe: https://github.com/flow-typed/flow-typed/issues/3653#issuecomment-568539198 StyledButtonMobileStore.defaultProps = { theme: _defaultTheme.default }; const src = { [_consts.TYPE_VARIANT.DARK]: { appStore: "https://images.kiwi.com/common/AppStoreGrayButton.png, https://images.kiwi.com/common/AppStoreGrayButton@2x.png 2x", googlePlay: "https://images.kiwi.com/common/GooglePlayGrayButton.png, https://images.kiwi.com/common/GooglePlayGrayButton@2x.png 2x" }, [_consts.TYPE_VARIANT.LIGHT]: { appStore: "https://images.kiwi.com/common/AppStoreLightButton.png, https://images.kiwi.com/common/AppStoreLightButton@2x.png 2x", googlePlay: "https://images.kiwi.com/common/GooglePlayLightButton.png, https://images.kiwi.com/common/GooglePlayLightButton@2x.png 2x" } }; const ButtonMobileStore = ({ type = _consts.TYPE_OPTIONS.APPSTORE, variant = _consts.TYPE_VARIANT.DARK, href, onClick, dataTest, alt = "", stopPropagation = false }) => { const onClickHandler = ev => { if (stopPropagation) { ev.stopPropagation(); if (onClick) onClick(); } if (onClick) onClick(); }; return /*#__PURE__*/React.createElement(StyledButtonMobileStore, { href: href, target: "_blank", rel: "noopener", onClick: onClickHandler, "data-test": dataTest }, /*#__PURE__*/React.createElement("img", { srcSet: src[variant][type], height: _consts.HEIGHT, alt: alt })); }; var _default = ButtonMobileStore; exports.default = _default;