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.

65 lines (63 loc) 1.8 kB
"use strict"; exports.__esModule = true; exports.translate3d = exports.textAlign = exports.rtlSpacing = exports.right = exports.left = exports.borderRadius = void 0; const leftToRight = (left, right) => ({ theme }) => theme.rtl ? right : left; const rtlSpacing = value => ({ theme }) => { if (!theme.rtl) return value; const parts = value.split(" ").filter(part => !Number.isNaN(parseFloat(part)) && part); return parts.length === 4 ? [parts[0], parts[3], parts[2], parts[1]].join(" ") : value; }; exports.rtlSpacing = rtlSpacing; const left = leftToRight("left", "right"); exports.left = left; const right = leftToRight("right", "left"); exports.right = right; const borderRadius = value => ({ theme }) => { if (!theme.rtl) { return value; } const parts = value.split(" ").filter(part => !Number.isNaN(parseFloat(part)) && part); return parts.length === 4 ? [parts[1], parts[0], parts[3], parts[2]].join(" ") : value; }; /// @deprecated Use "start" or "end" instead. exports.borderRadius = borderRadius; const textAlign = value => ({ theme }) => { if (["start", "end"].includes(value)) { return value; } if (theme.rtl) { if (value === "left") { return leftToRight("left", "right")({ theme }); } if (value === "right") { return leftToRight("right", "left")({ theme }); } return value; } return value; }; exports.textAlign = textAlign; const translate3d = value => ({ theme }) => { if (!theme.rtl) { return `translate3d(${value})`; } const parts = value.split(",").filter(part => !Number.isNaN(parseFloat(part)) && part); const x = parts[0]; const newX = x[0] === "-" ? x.slice(1) : `-${x}`; return `translate3d(${newX},${parts[1]},${parts[2]})`; }; exports.translate3d = translate3d;