UNPKG

@bigfishtv/cockpit

Version:

43 lines (38 loc) 1.52 kB
var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; /** * @module Reducers/preview */ import * as ActionTypes from '../constants/ActionTypes'; import moment from 'moment'; var initialState = { data: null, enabled: false, url: null, deviceWidth: '100%', date: moment().format() /** * Reducer for managing the state of a content (typically a page) preview * @param {Object} state * @param {Object} action * @param {String} action.type - const action type from constants/ActionTypes * @return {Object} returns state */ };export default function () { var state = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : initialState; var action = arguments[1]; switch (action.type) { case ActionTypes.PREVIEW_ENABLED: return _extends({}, state, { enabled: true }); case ActionTypes.PREVIEW_DISABLED: return _extends({}, state, { enabled: false }); case ActionTypes.PREVIEW_DATA_UPDATED: return _extends({}, state, { data: action.data }); case ActionTypes.PREVIEW_URL_UPDATED: return _extends({}, state, { url: action.url }); case ActionTypes.PREVIEW_DEVICE_WIDTH_CHANGED: return _extends({}, state, { deviceWidth: action.deviceWidth }); case ActionTypes.PREVIEW_DATE_UPDATED: return _extends({}, state, { date: action.date }); } return state; }