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.

62 lines (55 loc) 1.85 kB
import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutProperties"; const _excluded = ["theme", "type"]; import * as React from "react"; import styled from "styled-components"; import defaultTheme from "../defaultTheme"; import { HEIGHT, TYPE_OPTIONS, LANGUAGE } from "./consts"; const StyledButtonMobileStore = styled(_ref => { let { theme, type } = _ref, props = _objectWithoutProperties(_ref, _excluded); return /*#__PURE__*/React.createElement("a", props, props.children); }).withConfig({ displayName: "ButtonMobileStore__StyledButtonMobileStore", componentId: "sc-117vdh7-0" })(["display:inline-block;height:", ";"], HEIGHT); // $FlowFixMe: https://github.com/flow-typed/flow-typed/issues/3653#issuecomment-568539198 StyledButtonMobileStore.defaultProps = { theme: defaultTheme }; const getSrc = (type, lang) => { if (type === "appStore") return `https://images.kiwi.com/common/AppStoreButton${lang}.png, https://images.kiwi.com/common/AppStoreButton${lang}@2x.png 2x`; return `https://images.kiwi.com/common/GooglePlayButton${lang}.png, https://images.kiwi.com/common/GooglePlayButton${lang}@2x.png 2x`; }; const ButtonMobileStore = ({ type = TYPE_OPTIONS.APPSTORE, lang = LANGUAGE.EN, href, onClick, dataTest, id, 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, id: id }, /*#__PURE__*/React.createElement("img", { srcSet: getSrc(type, lang), height: HEIGHT, alt: alt })); }; export default ButtonMobileStore;