UNPKG

@vimeo/iris

Version:
32 lines (29 loc) 1.28 kB
import { c as __assign } from '../../tslib.es6-7f0e734f.js'; var initialState = function (_a) { var format = _a.format, isActive = _a.isActive, offIcon = _a.offIcon, offStateText = _a.offStateText, onIcon = _a.onIcon, onStateText = _a.onStateText; return isActive ? { children: onStateText, format: 'positive', icon: onIcon, } : { children: offStateText, format: format, icon: offIcon, }; }; function reducer(_a) { var format = _a.format, offIcon = _a.offIcon, offStateText = _a.offStateText, onIcon = _a.onIcon, onStateText = _a.onStateText, turnOffActionText = _a.turnOffActionText, turnOffIcon = _a.turnOffIcon; return function (state, action) { switch (action) { case 'on': return __assign(__assign({}, state), { children: onStateText, format: 'positive', icon: onIcon }); case 'off': return __assign(__assign({}, state), { children: offStateText, format: format, icon: offIcon }); case 'hovering': return __assign(__assign({}, state), { children: turnOffActionText, format: 'secondary', icon: turnOffIcon }); } }; } export { initialState, reducer };