@kubit-ui-web/react-components
Version:
Kubit React Components is a customizable, accessible library of React web components, designed to enhance your application's user experience
37 lines • 1.32 kB
JavaScript
import { POSITIONS } from '../../../types/positions/positions';
import { ToggleStateType } from '../types/state';
// States for 3 position toggle
const getStateOfThreePositionToggle = (togglePosition) => {
if (togglePosition === POSITIONS.RIGHT) {
return ToggleStateType.DEFAULT_SELECTED;
}
else if (togglePosition === POSITIONS.CENTER) {
return ToggleStateType.DEFAULT;
}
return ToggleStateType.DEFAULT_UNSELECTED;
};
// States for 2 position toggle
const getStateOfTwoPositionToggle = (togglePosition, isDisabled) => {
if (isDisabled && togglePosition === POSITIONS.RIGHT) {
return ToggleStateType.DISABLED_SELECTED;
}
else if (isDisabled && togglePosition !== POSITIONS.RIGHT) {
return ToggleStateType.DISABLED_UNSELECTED;
}
else if (togglePosition === POSITIONS.RIGHT) {
return ToggleStateType.DEFAULT_SELECTED;
}
return ToggleStateType.DEFAULT_UNSELECTED;
};
/**
* @name getToggleState
* @description
* Get the toggle state
*/
export const getToggleState = (hasThreePositions, togglePosition, isDisabled) => {
if (hasThreePositions) {
return getStateOfThreePositionToggle(togglePosition);
}
return getStateOfTwoPositionToggle(togglePosition, isDisabled);
};
//# sourceMappingURL=getToggleState.js.map