pubnub
Version:
Publish & Subscribe Real-time Messaging with PubNub
119 lines (94 loc) • 3.12 kB
JavaScript
;
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.getOperation = getOperation;
exports.validateParams = validateParams;
exports.usePatch = usePatch;
exports.getURL = getURL;
exports.patchURL = patchURL;
exports.getRequestTimeout = getRequestTimeout;
exports.isAuthSupported = isAuthSupported;
exports.getAuthToken = getAuthToken;
exports.prepareParams = prepareParams;
exports.patchPayload = patchPayload;
exports.handleResponse = handleResponse;
var _flow_interfaces = require("../../flow_interfaces");
var _operations = _interopRequireDefault(require("../../constants/operations"));
var _utils = _interopRequireDefault(require("../../utils"));
function prepareMessagePayload(modules, incomingParams) {
return incomingParams;
}
function getOperation() {
return _operations["default"].PNUpdateSpaceOperation;
}
function validateParams(_ref, incomingParams) {
var config = _ref.config;
var id = incomingParams.id,
name = incomingParams.name,
custom = incomingParams.custom;
if (!id) return 'Missing Space.id';
if (!name) return 'Missing Space.name';
if (!config.subscribeKey) return 'Missing Subscribe Key';
if (custom) {
if (!Object.values(custom).every(function (value) {
return typeof value === 'string' || typeof value === 'number' || typeof value === 'boolean';
})) {
return 'Invalid custom type, only string, number and boolean values are allowed.';
}
}
}
function usePatch() {
return true;
}
function getURL(modules, incomingParams) {
var config = modules.config;
var id = incomingParams.id;
return "/v1/objects/".concat(config.subscribeKey, "/spaces/").concat(_utils["default"].encodeString(id));
}
function patchURL(modules, incomingParams) {
var config = modules.config;
var id = incomingParams.id;
return "/v1/objects/".concat(config.subscribeKey, "/spaces/").concat(_utils["default"].encodeString(id));
}
function getRequestTimeout(_ref2) {
var config = _ref2.config;
return config.getTransactionTimeout();
}
function isAuthSupported() {
return true;
}
function getAuthToken(modules, incomingParams) {
var token = modules.tokenManager.getToken('space', incomingParams.id) || modules.tokenManager.getToken('space');
return token;
}
function prepareParams(modules, incomingParams) {
var include = incomingParams.include;
var params = {};
if (!include) {
include = {
customFields: true
};
} else if (include.customFields === undefined) {
include.customFields = true;
}
if (include) {
var includes = [];
if (include.customFields) {
includes.push('custom');
}
var includesString = includes.join(',');
if (includesString.length > 0) {
params.include = includesString;
}
}
return params;
}
function patchPayload(modules, incomingParams) {
return prepareMessagePayload(modules, incomingParams);
}
function handleResponse(modules, spacesResponse) {
return spacesResponse;
}
//# sourceMappingURL=update_space.js.map