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.

76 lines (64 loc) 2.65 kB
"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default; var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default; exports.__esModule = true; exports.default = exports.StyledFormFeedback = 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 = _interopRequireDefault(require("./consts")); const _excluded = ["theme", "type"]; const StyledFormFeedback = (0, _styledComponents.default)(_ref => { let { theme, type } = _ref, props = (0, _objectWithoutProperties2.default)(_ref, _excluded); return /*#__PURE__*/React.createElement("div", props); }).withConfig({ displayName: "FormFeedback__StyledFormFeedback", componentId: "sc-3o9cve-0" })(["color:", ";font-family:", ";font-size:", ";font-weight:", ";line-height:", ";width:100%;margin-top:2px;position:absolute;top:100%;max-height:", ";overflow:hidden;white-space:nowrap;text-overflow:ellipsis;& a{color:", ";font-weight:", ";text-decoration:underline;cursor:pointer;}strong,b{font-weight:", ";color:", ";}"], ({ theme, type }) => type === _consts.default.ERROR ? theme.orbit.paletteRedNormal : theme.orbit.paletteBlueNormal, ({ theme }) => theme.orbit.fontFamily, ({ theme }) => theme.orbit.fontSizeTextSmall, ({ theme, type }) => type === _consts.default.ERROR ? theme.orbit.fontWeightMedium : theme.orbit.fontWeightNormal, ({ theme }) => theme.orbit.lineHeightSmall, ({ theme }) => theme.orbit.lineHeightSmall, ({ theme, type }) => type === _consts.default.ERROR ? theme.orbit.textCriticalForeground : theme.orbit.textPrimaryForeground, ({ theme }) => theme.orbit.fontWeightMedium, ({ theme }) => theme.fontWeightMedium, ({ theme }) => theme.paletteInkNormal); // $FlowFixMe: https://github.com/flow-typed/flow-typed/issues/3653#issuecomment-568539198 exports.StyledFormFeedback = StyledFormFeedback; StyledFormFeedback.defaultProps = { theme: _defaultTheme.default }; const FormFeedback = ({ error, help, dataTest }) => { const isHelp = help && !error; if (!error && !help) return null; return /*#__PURE__*/React.createElement(StyledFormFeedback, { type: isHelp ? "help" : error && "error", "data-test": dataTest, "aria-live": "polite" }, isHelp ? help : error && error); }; var _default = FormFeedback; exports.default = _default;