UNPKG

pubnub

Version:

Publish & Subscribe Real-time Messaging with PubNub

78 lines (62 loc) 2.6 kB
"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); Object.defineProperty(exports, "__esModule", { value: true }); exports.getOperation = getOperation; exports.validateParams = validateParams; exports.getURL = getURL; exports.getRequestTimeout = getRequestTimeout; exports.isAuthSupported = isAuthSupported; exports.prepareParams = prepareParams; exports.handleResponse = handleResponse; var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray")); var _operations = _interopRequireDefault(require("../../constants/operations")); var _utils = _interopRequireDefault(require("../../utils")); function getOperation() { return _operations["default"].PNMessageCounts; } function validateParams(modules, incomingParams) { var channels = incomingParams.channels, timetoken = incomingParams.timetoken, channelTimetokens = incomingParams.channelTimetokens; var config = modules.config; if (!channels) return 'Missing channel'; if (timetoken && channelTimetokens) return 'timetoken and channelTimetokens are incompatible together'; if (timetoken && channelTimetokens && channelTimetokens.length > 1 && channels.length !== channelTimetokens.length) return 'Length of channelTimetokens and channels do not match'; if (!config.subscribeKey) return 'Missing Subscribe Key'; } function getURL(modules, incomingParams) { var channels = incomingParams.channels; var config = modules.config; var stringifiedChannels = channels.join(','); return "/v3/history/sub-key/".concat(config.subscribeKey, "/message-counts/").concat(_utils["default"].encodeString(stringifiedChannels)); } function getRequestTimeout(_ref) { var config = _ref.config; return config.getTransactionTimeout(); } function isAuthSupported() { return true; } function prepareParams(modules, incomingParams) { var timetoken = incomingParams.timetoken, channelTimetokens = incomingParams.channelTimetokens; var outgoingParams = {}; if (channelTimetokens && channelTimetokens.length === 1) { var _channelTimetokens = (0, _slicedToArray2["default"])(channelTimetokens, 1), tt = _channelTimetokens[0]; outgoingParams.timetoken = tt; } else if (channelTimetokens) { outgoingParams.channelsTimetoken = channelTimetokens.join(','); } else if (timetoken) { outgoingParams.timetoken = timetoken; } return outgoingParams; } function handleResponse(modules, serverResponse) { return { channels: serverResponse.channels }; } //# sourceMappingURL=message_counts.js.map