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.

43 lines 1.81 kB
import * as React from "react"; import styled, { css } from "styled-components"; import { convertHexToRgba } from "@kiwicom/orbit-design-tokens"; import Text from "../Text"; import Check from "../icons/Check"; import useTheme from "../hooks/useTheme"; import defaultTheme from "../defaultTheme"; import { WizardStepContext } from "./WizardContext"; export const StyledStepIconContainer = styled.div.withConfig({ displayName: "WizardStepIcon__StyledStepIconContainer", componentId: "sc-a8ydr3-0" })(["", ";"], ({ theme, $disabled, $glow }) => css(["display:flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:", ";background:", ";box-shadow:", ";position:relative;top:-2px;svg{display:block;}"], theme.orbit.borderRadiusCircle, $disabled ? theme.orbit.paletteCloudNormalHover : theme.orbit.paletteProductNormal, $glow && `0 0 0 4px ${convertHexToRgba(theme.orbit.paletteProductNormal, 20)}`)); StyledStepIconContainer.defaultProps = { theme: defaultTheme }; const WizardStepIcon = ({ isCompleted }) => { const { index, status, isCompact, isActive } = React.useContext(WizardStepContext); const theme = useTheme(); return /*#__PURE__*/React.createElement(StyledStepIconContainer, { $disabled: status === "disabled", $glow: isActive && !isCompact }, isCompleted || status === "completed" ? /*#__PURE__*/React.createElement(Check, { size: "small", customColor: isCompleted && status !== "completed" && status !== "available" ? theme.orbit.paletteInkDark : theme.orbit.paletteWhiteNormal }) : /*#__PURE__*/React.createElement(Text, { as: "div", type: status === "disabled" ? "primary" : "white", size: "small", align: "center" }, typeof index === "number" ? index + 1 : null)); }; export default WizardStepIcon;