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.

33 lines (29 loc) 1.31 kB
import _toConsumableArray from "@babel/runtime/helpers/esm/toConsumableArray"; import { ALIGNS, POSITIONS, RTL_POSITIONS } from "../consts"; import switchPreferredPosition from "./switchPreferredPosition"; var getPosition = function getPosition(positionsObject, preferredPosition, theme) { var positions = Object.keys(positionsObject).map(function (k) { return positionsObject[k]; }); if (!preferredPosition) return positions; var realPreferredPosition = switchPreferredPosition(theme, preferredPosition); return [realPreferredPosition].concat(_toConsumableArray(positions.filter(function (p) { return p !== realPreferredPosition; }))); }; var getAlign = function getAlign(preferredAlign) { var aligns = Object.keys(ALIGNS).map(function (k) { return ALIGNS[k]; }); if (!preferredAlign) return aligns; return [preferredAlign].concat(_toConsumableArray(aligns.filter(function (p) { return p !== preferredAlign; }))); }; var sortPositionsAndAligns = function sortPositionsAndAligns(preferredPosition, preferredAlign, theme) { var positionsObject = theme.rtl ? RTL_POSITIONS : POSITIONS; var positions = getPosition(positionsObject, preferredPosition, theme); var aligns = getAlign(preferredAlign); return [positions, aligns]; }; export default sortPositionsAndAligns;