@vimeo/iris
Version:
Vimeo Design System
27 lines (22 loc) • 998 B
JavaScript
;
Object.defineProperty(exports, '__esModule', { value: true });
var tslib_es6 = require('../../tslib.es6-3ec409b7.js');
function reducer(duration) {
return function (state, action) {
switch (action) {
case 'PAUSE':
return tslib_es6.__assign(tslib_es6.__assign({}, state), { active: false });
case 'RESUME':
return tslib_es6.__assign(tslib_es6.__assign({}, state), { active: true });
case 'RESET':
return tslib_es6.__assign(tslib_es6.__assign({}, state), { time: duration });
case 'TICK':
return tslib_es6.__assign(tslib_es6.__assign({}, state), { time: state.time - 100 });
case 'HIDE':
return tslib_es6.__assign(tslib_es6.__assign({}, state), { showing: false });
case 'SHOW':
return tslib_es6.__assign(tslib_es6.__assign({}, state), { showing: true });
}
};
}
exports.reducer = reducer;