UNPKG

@vimeo/iris

Version:
37 lines (32 loc) 1.45 kB
'use strict'; Object.defineProperty(exports, '__esModule', { value: true }); var tslib_es6 = require('../../tslib.es6-3ec409b7.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 tslib_es6.__assign(tslib_es6.__assign({}, state), { children: onStateText, format: 'positive', icon: onIcon }); case 'off': return tslib_es6.__assign(tslib_es6.__assign({}, state), { children: offStateText, format: format, icon: offIcon }); case 'hovering': return tslib_es6.__assign(tslib_es6.__assign({}, state), { children: turnOffActionText, format: 'secondary', icon: turnOffIcon }); } }; } exports.initialState = initialState; exports.reducer = reducer;