UNPKG

@zohodesk/platform-middleware

Version:

Generalized Contract for the events from Marketplace App, In-App widgets, CRM-Plus and EFC

48 lines (40 loc) 1.28 kB
'use strict'; Object.defineProperty(exports, "__esModule", { value: true }); exports.renderWidgets = exports.fetchWidgetsSuccess = exports.addWidgetsData = undefined; var _constants = require('../constants'); //TODO: runtimeWidgets - action creator - instance direct on uniqueID //TODO: render widgets - action creator var addWidgetsData = exports.addWidgetsData = function addWidgetsData() { var args = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; var isInitialRequest = args.isInitialRequest, widgets = args.widgets, uniqueKeySuffix = args.uniqueKeySuffix; return { type: _constants.constants.ADD_WIDGETS_DATA, data: args }; }; var fetchWidgetsSuccess = exports.fetchWidgetsSuccess = function fetchWidgetsSuccess(data) { return { type: 'FETCH_MY_WIDGETS_SUCCESS', data: { widgets: normalizeWidgets(data.widgets, 'id'), uID: data.uID, location: data.location } }; }; var renderWidgets = exports.renderWidgets = function renderWidgets(widgets) { return { type: _constants.constants.RENDER_WIDGETS, data: widgets }; }; function normalizeWidgets(widgets, param) { return widgets.reduce(function (obj, widget) { obj[widget[param]] = widget; return obj; }, {}); }