happychat-service
Advanced tools
Comparing version 0.12.5 to 0.12.6
@@ -86,2 +86,3 @@ 'use strict'; | ||
return updateStatus(STATUS_MISSED, state); | ||
case _actionTypes.OPERATOR_CHAT_TRANSFER: | ||
case _actionTypes.OPERATOR_CHAT_LEAVE: | ||
@@ -124,2 +125,3 @@ case _actionTypes.SET_USER_OFFLINE: | ||
case _actionTypes.SET_CHAT_OPERATOR: | ||
case _actionTypes.OPERATOR_CHAT_TRANSFER: | ||
case _actionTypes.OPERATOR_CHAT_JOIN: | ||
@@ -126,0 +128,0 @@ case _actionTypes.OPERATOR_CHAT_LEAVE: |
@@ -6,4 +6,6 @@ 'use strict'; | ||
}); | ||
exports.defaultLocaleIsAvailable = exports.canAcceptChat = exports.isOperatorAcceptingChats = exports.isOperatorOnline = exports.isOperatorStatusAvailable = exports.getOperatorOnline = exports.getOperatorIdentity = exports.getAvailableLocales = exports.getSystemAcceptsCustomers = exports.haveAvailableCapacity = exports.getAvailableCapacity = exports.selectTotalCapacity = exports.selectUser = exports.selectSocketIdentity = exports.getOperators = exports.selectIdentities = exports.getAvailableOperators = exports.STATUS_AVAILABLE = undefined; | ||
exports.defaultLocaleIsAvailable = exports.canAcceptChat = exports.isOperatorAcceptingChats = exports.isOperatorOnline = exports.isOperatorStatusAvailable = exports.getOperatorIdentity = exports.getAvailableLocales = exports.getLocaleCapacities = exports.getOperatorOnline = exports.getSystemAcceptsCustomers = exports.haveAvailableCapacity = exports.getAvailableCapacity = exports.selectTotalCapacity = exports.selectUser = exports.selectSocketIdentity = exports.getOperators = exports.selectIdentities = exports.getAvailableOperators = exports.STATUS_AVAILABLE = undefined; | ||
var _slicedToArray = function () { function sliceIterator(arr, i) { var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"]) _i["return"](); } finally { if (_d) throw _e; } } return _arr; } return function (arr, i) { if (Array.isArray(arr)) { return arr; } else if (Symbol.iterator in Object(arr)) { return sliceIterator(arr, i); } else { throw new TypeError("Invalid attempt to destructure non-iterable instance"); } }; }(); | ||
var _get = require('lodash/get'); | ||
@@ -145,2 +147,24 @@ | ||
var getOperatorOnline = exports.getOperatorOnline = function getOperatorOnline(id, state) { | ||
return (0, _ramda.path)(['operators', 'identities', (0, _asString2.default)(id), 'online'], state); | ||
}; | ||
var getLocaleCapacities = exports.getLocaleCapacities = function getLocaleCapacities(state) { | ||
return (0, _ramda.compose)(_ramda.flatten, (0, _ramda.map)(function (locale) { | ||
return (0, _ramda.compose)((0, _ramda.map)(function (_ref9) { | ||
var _ref10 = _slicedToArray(_ref9, 2), | ||
group = _ref10[0], | ||
memberships = _ref10[1]; | ||
var _selectTotalCapacity2 = selectTotalCapacity(locale, [memberships], state), | ||
load = _selectTotalCapacity2.load, | ||
capacity = _selectTotalCapacity2.capacity; | ||
return { load: load, capacity: capacity, group: group, locale: locale, operators: (0, _ramda.reduce)(function (total, userId) { | ||
return getOperatorOnline(userId, state) ? total + 1 : total; | ||
}, 0, (0, _ramda.keys)(memberships.members)) }; | ||
}), _ramda.toPairs, _selectors3.getGroups)(state); | ||
}), _selectors2.getSupportedLocales)(state); | ||
}; | ||
var getAvailableLocales = exports.getAvailableLocales = function getAvailableLocales(state) { | ||
@@ -160,6 +184,2 @@ return (0, _ramda.ifElse)((0, _ramda.compose)(_ramda.not, getSystemAcceptsCustomers), (0, _ramda.always)([]), (0, _ramda.compose)(_ramda.flatten, (0, _ramda.map)(function (locale) { | ||
var getOperatorOnline = exports.getOperatorOnline = function getOperatorOnline(id, state) { | ||
return (0, _ramda.path)(['operators', 'identities', (0, _asString2.default)(id), 'online'], state); | ||
}; | ||
var isOperatorStatusAvailable = exports.isOperatorStatusAvailable = function isOperatorStatusAvailable(id, state) { | ||
@@ -166,0 +186,0 @@ return (0, _ramda.equals)((0, _ramda.path)(['operators', 'identities', (0, _asString2.default)(id), 'status'], state), STATUS_AVAILABLE); |
{ | ||
"name": "happychat-service", | ||
"version": "0.12.5", | ||
"version": "0.12.6", | ||
"description": "Socket.IO based chat server for happychat.", | ||
@@ -5,0 +5,0 @@ "main": "index.js", |
918780
98
3364