pubnub
Version:
Publish & Subscribe Real-time Messaging with PubNub
541 lines (423 loc) • 28.4 kB
JavaScript
"use strict";
var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard");
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports["default"] = void 0;
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
var _config = _interopRequireDefault(require("./components/config"));
var _index = _interopRequireDefault(require("./components/cryptography/index"));
var _subscription_manager = _interopRequireDefault(require("./components/subscription_manager"));
var _telemetry_manager = _interopRequireDefault(require("./components/telemetry_manager"));
var _push_payload = _interopRequireDefault(require("./components/push_payload"));
var _listener_manager = _interopRequireDefault(require("./components/listener_manager"));
var _token_manager = _interopRequireDefault(require("./components/token_manager"));
var _endpoint = _interopRequireDefault(require("./components/endpoint"));
var _utils = require("./utils");
var addChannelsChannelGroupConfig = _interopRequireWildcard(require("./endpoints/channel_groups/add_channels"));
var removeChannelsChannelGroupConfig = _interopRequireWildcard(require("./endpoints/channel_groups/remove_channels"));
var deleteChannelGroupConfig = _interopRequireWildcard(require("./endpoints/channel_groups/delete_group"));
var listChannelGroupsConfig = _interopRequireWildcard(require("./endpoints/channel_groups/list_groups"));
var listChannelsInChannelGroupConfig = _interopRequireWildcard(require("./endpoints/channel_groups/list_channels"));
var addPushChannelsConfig = _interopRequireWildcard(require("./endpoints/push/add_push_channels"));
var removePushChannelsConfig = _interopRequireWildcard(require("./endpoints/push/remove_push_channels"));
var listPushChannelsConfig = _interopRequireWildcard(require("./endpoints/push/list_push_channels"));
var removeDevicePushConfig = _interopRequireWildcard(require("./endpoints/push/remove_device"));
var presenceLeaveEndpointConfig = _interopRequireWildcard(require("./endpoints/presence/leave"));
var presenceWhereNowEndpointConfig = _interopRequireWildcard(require("./endpoints/presence/where_now"));
var presenceHeartbeatEndpointConfig = _interopRequireWildcard(require("./endpoints/presence/heartbeat"));
var presenceGetStateConfig = _interopRequireWildcard(require("./endpoints/presence/get_state"));
var presenceSetStateConfig = _interopRequireWildcard(require("./endpoints/presence/set_state"));
var presenceHereNowConfig = _interopRequireWildcard(require("./endpoints/presence/here_now"));
var addMessageActionEndpointConfig = _interopRequireWildcard(require("./endpoints/actions/add_message_action"));
var removeMessageActionEndpointConfig = _interopRequireWildcard(require("./endpoints/actions/remove_message_action"));
var getMessageActionEndpointConfig = _interopRequireWildcard(require("./endpoints/actions/get_message_actions"));
var _file = require("../file");
var fileUploadTypes = _interopRequireWildcard(require("./endpoints/file_upload/types"));
var _list_files = _interopRequireDefault(require("./endpoints/file_upload/list_files"));
var _generate_upload_url = _interopRequireDefault(require("./endpoints/file_upload/generate_upload_url"));
var _publish_file = _interopRequireDefault(require("./endpoints/file_upload/publish_file"));
var _send_file = _interopRequireDefault(require("./endpoints/file_upload/send_file"));
var _get_file_url = _interopRequireDefault(require("./endpoints/file_upload/get_file_url"));
var _download_file = _interopRequireDefault(require("./endpoints/file_upload/download_file"));
var _delete_file = _interopRequireDefault(require("./endpoints/file_upload/delete_file"));
var _get_all = _interopRequireDefault(require("./endpoints/objects/uuid/get_all"));
var _get = _interopRequireDefault(require("./endpoints/objects/uuid/get"));
var _set = _interopRequireDefault(require("./endpoints/objects/uuid/set"));
var _remove = _interopRequireDefault(require("./endpoints/objects/uuid/remove"));
var _get_all2 = _interopRequireDefault(require("./endpoints/objects/channel/get_all"));
var _get2 = _interopRequireDefault(require("./endpoints/objects/channel/get"));
var _set2 = _interopRequireDefault(require("./endpoints/objects/channel/set"));
var _remove2 = _interopRequireDefault(require("./endpoints/objects/channel/remove"));
var _get3 = _interopRequireDefault(require("./endpoints/objects/member/get"));
var _set3 = _interopRequireDefault(require("./endpoints/objects/member/set"));
var _get4 = _interopRequireDefault(require("./endpoints/objects/membership/get"));
var _set4 = _interopRequireDefault(require("./endpoints/objects/membership/set"));
var createUserEndpointConfig = _interopRequireWildcard(require("./endpoints/users/create_user"));
var updateUserEndpointConfig = _interopRequireWildcard(require("./endpoints/users/update_user"));
var deleteUserEndpointConfig = _interopRequireWildcard(require("./endpoints/users/delete_user"));
var getUserEndpointConfig = _interopRequireWildcard(require("./endpoints/users/get_user"));
var getUsersEndpointConfig = _interopRequireWildcard(require("./endpoints/users/get_users"));
var createSpaceEndpointConfig = _interopRequireWildcard(require("./endpoints/spaces/create_space"));
var updateSpaceEndpointConfig = _interopRequireWildcard(require("./endpoints/spaces/update_space"));
var deleteSpaceEndpointConfig = _interopRequireWildcard(require("./endpoints/spaces/delete_space"));
var getSpacesEndpointConfig = _interopRequireWildcard(require("./endpoints/spaces/get_spaces"));
var getSpaceEndpointConfig = _interopRequireWildcard(require("./endpoints/spaces/get_space"));
var getMembersEndpointConfig = _interopRequireWildcard(require("./endpoints/memberships/get_members"));
var addMembersEndpointConfig = _interopRequireWildcard(require("./endpoints/memberships/add_members"));
var updateMembersEndpointConfig = _interopRequireWildcard(require("./endpoints/memberships/update_members"));
var removeMembersEndpointConfig = _interopRequireWildcard(require("./endpoints/memberships/remove_members"));
var getMembershipsEndpointConfig = _interopRequireWildcard(require("./endpoints/memberships/get_memberships"));
var updateMembershipsEndpointConfig = _interopRequireWildcard(require("./endpoints/memberships/update_memberships"));
var joinSpacesEndpointConfig = _interopRequireWildcard(require("./endpoints/memberships/join_spaces"));
var leaveSpacesEndpointConfig = _interopRequireWildcard(require("./endpoints/memberships/leave_spaces"));
var auditEndpointConfig = _interopRequireWildcard(require("./endpoints/access_manager/audit"));
var grantEndpointConfig = _interopRequireWildcard(require("./endpoints/access_manager/grant"));
var grantTokenEndpointConfig = _interopRequireWildcard(require("./endpoints/access_manager/grant_token"));
var publishEndpointConfig = _interopRequireWildcard(require("./endpoints/publish"));
var signalEndpointConfig = _interopRequireWildcard(require("./endpoints/signal"));
var historyEndpointConfig = _interopRequireWildcard(require("./endpoints/history/get_history"));
var deleteMessagesEndpointConfig = _interopRequireWildcard(require("./endpoints/history/delete_messages"));
var messageCountsEndpointConfig = _interopRequireWildcard(require("./endpoints/history/message_counts"));
var fetchMessagesEndpointConfig = _interopRequireWildcard(require("./endpoints/fetch_messages"));
var timeEndpointConfig = _interopRequireWildcard(require("./endpoints/time"));
var subscribeEndpointConfig = _interopRequireWildcard(require("./endpoints/subscribe"));
var _operations = _interopRequireDefault(require("./constants/operations"));
var _categories = _interopRequireDefault(require("./constants/categories"));
var _flow_interfaces = require("./flow_interfaces");
var _uuid = _interopRequireDefault(require("./components/uuid"));
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { (0, _defineProperty2["default"])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
var _default = function () {
function _default(setup) {
var _this = this;
(0, _classCallCheck2["default"])(this, _default);
(0, _defineProperty2["default"])(this, "_config", void 0);
(0, _defineProperty2["default"])(this, "_telemetryManager", void 0);
(0, _defineProperty2["default"])(this, "_listenerManager", void 0);
(0, _defineProperty2["default"])(this, "_tokenManager", void 0);
(0, _defineProperty2["default"])(this, "time", void 0);
(0, _defineProperty2["default"])(this, "publish", void 0);
(0, _defineProperty2["default"])(this, "fire", void 0);
(0, _defineProperty2["default"])(this, "history", void 0);
(0, _defineProperty2["default"])(this, "deleteMessages", void 0);
(0, _defineProperty2["default"])(this, "messageCounts", void 0);
(0, _defineProperty2["default"])(this, "fetchMessages", void 0);
(0, _defineProperty2["default"])(this, "channelGroups", void 0);
(0, _defineProperty2["default"])(this, "push", void 0);
(0, _defineProperty2["default"])(this, "hereNow", void 0);
(0, _defineProperty2["default"])(this, "whereNow", void 0);
(0, _defineProperty2["default"])(this, "getState", void 0);
(0, _defineProperty2["default"])(this, "setState", void 0);
(0, _defineProperty2["default"])(this, "grant", void 0);
(0, _defineProperty2["default"])(this, "grantToken", void 0);
(0, _defineProperty2["default"])(this, "audit", void 0);
(0, _defineProperty2["default"])(this, "subscribe", void 0);
(0, _defineProperty2["default"])(this, "signal", void 0);
(0, _defineProperty2["default"])(this, "presence", void 0);
(0, _defineProperty2["default"])(this, "unsubscribe", void 0);
(0, _defineProperty2["default"])(this, "unsubscribeAll", void 0);
(0, _defineProperty2["default"])(this, "addMessageAction", void 0);
(0, _defineProperty2["default"])(this, "removeMessageAction", void 0);
(0, _defineProperty2["default"])(this, "getMessageActions", void 0);
(0, _defineProperty2["default"])(this, "File", void 0);
(0, _defineProperty2["default"])(this, "encryptFile", void 0);
(0, _defineProperty2["default"])(this, "decryptFile", void 0);
(0, _defineProperty2["default"])(this, "listFiles", void 0);
(0, _defineProperty2["default"])(this, "sendFile", void 0);
(0, _defineProperty2["default"])(this, "downloadFile", void 0);
(0, _defineProperty2["default"])(this, "getFileUrl", void 0);
(0, _defineProperty2["default"])(this, "deleteFile", void 0);
(0, _defineProperty2["default"])(this, "publishFile", void 0);
(0, _defineProperty2["default"])(this, "objects", void 0);
(0, _defineProperty2["default"])(this, "createUser", void 0);
(0, _defineProperty2["default"])(this, "updateUser", void 0);
(0, _defineProperty2["default"])(this, "deleteUser", void 0);
(0, _defineProperty2["default"])(this, "getUser", void 0);
(0, _defineProperty2["default"])(this, "getUsers", void 0);
(0, _defineProperty2["default"])(this, "createSpace", void 0);
(0, _defineProperty2["default"])(this, "updateSpace", void 0);
(0, _defineProperty2["default"])(this, "deleteSpace", void 0);
(0, _defineProperty2["default"])(this, "getSpaces", void 0);
(0, _defineProperty2["default"])(this, "getSpace", void 0);
(0, _defineProperty2["default"])(this, "getMembers", void 0);
(0, _defineProperty2["default"])(this, "addMembers", void 0);
(0, _defineProperty2["default"])(this, "updateMembers", void 0);
(0, _defineProperty2["default"])(this, "removeMembers", void 0);
(0, _defineProperty2["default"])(this, "getMemberships", void 0);
(0, _defineProperty2["default"])(this, "joinSpaces", void 0);
(0, _defineProperty2["default"])(this, "updateMemberships", void 0);
(0, _defineProperty2["default"])(this, "leaveSpaces", void 0);
(0, _defineProperty2["default"])(this, "disconnect", void 0);
(0, _defineProperty2["default"])(this, "reconnect", void 0);
(0, _defineProperty2["default"])(this, "destroy", void 0);
(0, _defineProperty2["default"])(this, "stop", void 0);
(0, _defineProperty2["default"])(this, "getSubscribedChannels", void 0);
(0, _defineProperty2["default"])(this, "getSubscribedChannelGroups", void 0);
(0, _defineProperty2["default"])(this, "addListener", void 0);
(0, _defineProperty2["default"])(this, "removeListener", void 0);
(0, _defineProperty2["default"])(this, "removeAllListeners", void 0);
(0, _defineProperty2["default"])(this, "parseToken", void 0);
(0, _defineProperty2["default"])(this, "setToken", void 0);
(0, _defineProperty2["default"])(this, "setTokens", void 0);
(0, _defineProperty2["default"])(this, "getToken", void 0);
(0, _defineProperty2["default"])(this, "getTokens", void 0);
(0, _defineProperty2["default"])(this, "clearTokens", void 0);
(0, _defineProperty2["default"])(this, "getAuthKey", void 0);
(0, _defineProperty2["default"])(this, "setAuthKey", void 0);
(0, _defineProperty2["default"])(this, "setCipherKey", void 0);
(0, _defineProperty2["default"])(this, "setUUID", void 0);
(0, _defineProperty2["default"])(this, "getUUID", void 0);
(0, _defineProperty2["default"])(this, "getFilterExpression", void 0);
(0, _defineProperty2["default"])(this, "setFilterExpression", void 0);
(0, _defineProperty2["default"])(this, "setHeartbeatInterval", void 0);
(0, _defineProperty2["default"])(this, "setProxy", void 0);
(0, _defineProperty2["default"])(this, "encrypt", void 0);
(0, _defineProperty2["default"])(this, "decrypt", void 0);
var db = setup.db,
networking = setup.networking,
cbor = setup.cbor;
var config = this._config = new _config["default"]({
setup: setup,
db: db
});
var crypto = new _index["default"]({
config: config
});
var cryptography = setup.cryptography;
networking.init(config);
var tokenManager = this._tokenManager = new _token_manager["default"](config, cbor);
var telemetryManager = this._telemetryManager = new _telemetry_manager["default"]({
maximumSamplesCount: 60000
});
var modules = {
config: config,
networking: networking,
crypto: crypto,
cryptography: cryptography,
tokenManager: tokenManager,
telemetryManager: telemetryManager,
PubNubFile: setup.PubNubFile
};
this.File = setup.PubNubFile;
this.encryptFile = function (key, file) {
return cryptography.encryptFile(key, file, _this.File);
};
this.decryptFile = function (key, file) {
return cryptography.decryptFile(key, file, _this.File);
};
var timeEndpoint = _endpoint["default"].bind(this, modules, timeEndpointConfig);
var leaveEndpoint = _endpoint["default"].bind(this, modules, presenceLeaveEndpointConfig);
var heartbeatEndpoint = _endpoint["default"].bind(this, modules, presenceHeartbeatEndpointConfig);
var setStateEndpoint = _endpoint["default"].bind(this, modules, presenceSetStateConfig);
var subscribeEndpoint = _endpoint["default"].bind(this, modules, subscribeEndpointConfig);
var listenerManager = this._listenerManager = new _listener_manager["default"]();
var subscriptionManager = new _subscription_manager["default"]({
timeEndpoint: timeEndpoint,
leaveEndpoint: leaveEndpoint,
heartbeatEndpoint: heartbeatEndpoint,
setStateEndpoint: setStateEndpoint,
subscribeEndpoint: subscribeEndpoint,
crypto: modules.crypto,
config: modules.config,
listenerManager: listenerManager,
getFileUrl: function getFileUrl(params) {
return (0, _get_file_url["default"])(modules, params);
}
});
this.addListener = listenerManager.addListener.bind(listenerManager);
this.removeListener = listenerManager.removeListener.bind(listenerManager);
this.removeAllListeners = listenerManager.removeAllListeners.bind(listenerManager);
this.parseToken = tokenManager.parseToken.bind(tokenManager);
this.setToken = tokenManager.setToken.bind(tokenManager);
this.setTokens = tokenManager.setTokens.bind(tokenManager);
this.getToken = tokenManager.getToken.bind(tokenManager);
this.getTokens = tokenManager.getTokens.bind(tokenManager);
this.clearTokens = tokenManager.clearTokens.bind(tokenManager);
this.channelGroups = {
listGroups: _endpoint["default"].bind(this, modules, listChannelGroupsConfig),
listChannels: _endpoint["default"].bind(this, modules, listChannelsInChannelGroupConfig),
addChannels: _endpoint["default"].bind(this, modules, addChannelsChannelGroupConfig),
removeChannels: _endpoint["default"].bind(this, modules, removeChannelsChannelGroupConfig),
deleteGroup: _endpoint["default"].bind(this, modules, deleteChannelGroupConfig)
};
this.push = {
addChannels: _endpoint["default"].bind(this, modules, addPushChannelsConfig),
removeChannels: _endpoint["default"].bind(this, modules, removePushChannelsConfig),
deleteDevice: _endpoint["default"].bind(this, modules, removeDevicePushConfig),
listChannels: _endpoint["default"].bind(this, modules, listPushChannelsConfig)
};
this.hereNow = _endpoint["default"].bind(this, modules, presenceHereNowConfig);
this.whereNow = _endpoint["default"].bind(this, modules, presenceWhereNowEndpointConfig);
this.getState = _endpoint["default"].bind(this, modules, presenceGetStateConfig);
this.setState = subscriptionManager.adaptStateChange.bind(subscriptionManager);
this.grant = _endpoint["default"].bind(this, modules, grantEndpointConfig);
this.grantToken = _endpoint["default"].bind(this, modules, grantTokenEndpointConfig);
this.audit = _endpoint["default"].bind(this, modules, auditEndpointConfig);
this.publish = _endpoint["default"].bind(this, modules, publishEndpointConfig);
this.fire = function (args, callback) {
args.replicate = false;
args.storeInHistory = false;
return _this.publish(args, callback);
};
this.signal = _endpoint["default"].bind(this, modules, signalEndpointConfig);
this.history = _endpoint["default"].bind(this, modules, historyEndpointConfig);
this.deleteMessages = _endpoint["default"].bind(this, modules, deleteMessagesEndpointConfig);
this.messageCounts = _endpoint["default"].bind(this, modules, messageCountsEndpointConfig);
this.fetchMessages = _endpoint["default"].bind(this, modules, fetchMessagesEndpointConfig);
this.addMessageAction = _endpoint["default"].bind(this, modules, addMessageActionEndpointConfig);
this.removeMessageAction = _endpoint["default"].bind(this, modules, removeMessageActionEndpointConfig);
this.getMessageActions = _endpoint["default"].bind(this, modules, getMessageActionEndpointConfig);
this.listFiles = _endpoint["default"].bind(this, modules, _list_files["default"]);
var generateUploadUrl = _endpoint["default"].bind(this, modules, _generate_upload_url["default"]);
this.publishFile = _endpoint["default"].bind(this, modules, _publish_file["default"]);
this.sendFile = (0, _send_file["default"])({
generateUploadUrl: generateUploadUrl,
publishFile: this.publishFile,
modules: modules
});
this.getFileUrl = function (params) {
return (0, _get_file_url["default"])(modules, params);
};
this.downloadFile = _endpoint["default"].bind(this, modules, _download_file["default"]);
this.deleteFile = _endpoint["default"].bind(this, modules, _delete_file["default"]);
this.objects = {
getAllUUIDMetadata: _endpoint["default"].bind(this, modules, _get_all["default"]),
getUUIDMetadata: _endpoint["default"].bind(this, modules, _get["default"]),
setUUIDMetadata: _endpoint["default"].bind(this, modules, _set["default"]),
removeUUIDMetadata: _endpoint["default"].bind(this, modules, _remove["default"]),
getAllChannelMetadata: _endpoint["default"].bind(this, modules, _get_all2["default"]),
getChannelMetadata: _endpoint["default"].bind(this, modules, _get2["default"]),
setChannelMetadata: _endpoint["default"].bind(this, modules, _set2["default"]),
removeChannelMetadata: _endpoint["default"].bind(this, modules, _remove2["default"]),
getChannelMembers: _endpoint["default"].bind(this, modules, _get3["default"]),
setChannelMembers: function setChannelMembers(parameters) {
for (var _len = arguments.length, rest = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {
rest[_key - 1] = arguments[_key];
}
return _endpoint["default"].call.apply(_endpoint["default"], [_this, modules, _set3["default"], _objectSpread({
type: 'set'
}, parameters)].concat(rest));
},
removeChannelMembers: function removeChannelMembers(parameters) {
for (var _len2 = arguments.length, rest = new Array(_len2 > 1 ? _len2 - 1 : 0), _key2 = 1; _key2 < _len2; _key2++) {
rest[_key2 - 1] = arguments[_key2];
}
return _endpoint["default"].call.apply(_endpoint["default"], [_this, modules, _set3["default"], _objectSpread({
type: 'delete'
}, parameters)].concat(rest));
},
getMemberships: _endpoint["default"].bind(this, modules, _get4["default"]),
setMemberships: function setMemberships(parameters) {
for (var _len3 = arguments.length, rest = new Array(_len3 > 1 ? _len3 - 1 : 0), _key3 = 1; _key3 < _len3; _key3++) {
rest[_key3 - 1] = arguments[_key3];
}
return _endpoint["default"].call.apply(_endpoint["default"], [_this, modules, _set4["default"], _objectSpread({
type: 'set'
}, parameters)].concat(rest));
},
removeMemberships: function removeMemberships(parameters) {
for (var _len4 = arguments.length, rest = new Array(_len4 > 1 ? _len4 - 1 : 0), _key4 = 1; _key4 < _len4; _key4++) {
rest[_key4 - 1] = arguments[_key4];
}
return _endpoint["default"].call.apply(_endpoint["default"], [_this, modules, _set4["default"], _objectSpread({
type: 'delete'
}, parameters)].concat(rest));
}
};
this.createUser = (0, _utils.deprecated)(_endpoint["default"].bind(this, modules, createUserEndpointConfig));
this.updateUser = (0, _utils.deprecated)(_endpoint["default"].bind(this, modules, updateUserEndpointConfig));
this.deleteUser = (0, _utils.deprecated)(_endpoint["default"].bind(this, modules, deleteUserEndpointConfig));
this.getUser = (0, _utils.deprecated)(_endpoint["default"].bind(this, modules, getUserEndpointConfig));
this.getUsers = (0, _utils.deprecated)(_endpoint["default"].bind(this, modules, getUsersEndpointConfig));
this.createSpace = (0, _utils.deprecated)(_endpoint["default"].bind(this, modules, createSpaceEndpointConfig));
this.updateSpace = (0, _utils.deprecated)(_endpoint["default"].bind(this, modules, updateSpaceEndpointConfig));
this.deleteSpace = (0, _utils.deprecated)(_endpoint["default"].bind(this, modules, deleteSpaceEndpointConfig));
this.getSpaces = (0, _utils.deprecated)(_endpoint["default"].bind(this, modules, getSpacesEndpointConfig));
this.getSpace = (0, _utils.deprecated)(_endpoint["default"].bind(this, modules, getSpaceEndpointConfig));
this.addMembers = (0, _utils.deprecated)(_endpoint["default"].bind(this, modules, addMembersEndpointConfig));
this.updateMembers = (0, _utils.deprecated)(_endpoint["default"].bind(this, modules, updateMembersEndpointConfig));
this.removeMembers = (0, _utils.deprecated)(_endpoint["default"].bind(this, modules, removeMembersEndpointConfig));
this.getMembers = (0, _utils.deprecated)(_endpoint["default"].bind(this, modules, getMembersEndpointConfig));
this.getMemberships = (0, _utils.deprecated)(_endpoint["default"].bind(this, modules, getMembershipsEndpointConfig));
this.joinSpaces = (0, _utils.deprecated)(_endpoint["default"].bind(this, modules, joinSpacesEndpointConfig));
this.updateMemberships = (0, _utils.deprecated)(_endpoint["default"].bind(this, modules, updateMembershipsEndpointConfig));
this.leaveSpaces = (0, _utils.deprecated)(_endpoint["default"].bind(this, modules, leaveSpacesEndpointConfig));
this.time = timeEndpoint;
this.subscribe = subscriptionManager.adaptSubscribeChange.bind(subscriptionManager);
this.presence = subscriptionManager.adaptPresenceChange.bind(subscriptionManager);
this.unsubscribe = subscriptionManager.adaptUnsubscribeChange.bind(subscriptionManager);
this.disconnect = subscriptionManager.disconnect.bind(subscriptionManager);
this.reconnect = subscriptionManager.reconnect.bind(subscriptionManager);
this.destroy = function (isOffline) {
subscriptionManager.unsubscribeAll(isOffline);
subscriptionManager.disconnect();
};
this.stop = this.destroy;
this.unsubscribeAll = subscriptionManager.unsubscribeAll.bind(subscriptionManager);
this.getSubscribedChannels = subscriptionManager.getSubscribedChannels.bind(subscriptionManager);
this.getSubscribedChannelGroups = subscriptionManager.getSubscribedChannelGroups.bind(subscriptionManager);
this.encrypt = crypto.encrypt.bind(crypto);
this.decrypt = crypto.decrypt.bind(crypto);
this.getAuthKey = modules.config.getAuthKey.bind(modules.config);
this.setAuthKey = modules.config.setAuthKey.bind(modules.config);
this.setCipherKey = modules.config.setCipherKey.bind(modules.config);
this.getUUID = modules.config.getUUID.bind(modules.config);
this.setUUID = modules.config.setUUID.bind(modules.config);
this.getFilterExpression = modules.config.getFilterExpression.bind(modules.config);
this.setFilterExpression = modules.config.setFilterExpression.bind(modules.config);
this.setHeartbeatInterval = modules.config.setHeartbeatInterval.bind(modules.config);
if (networking.hasModule('proxy')) {
this.setProxy = function (proxy) {
modules.config.setProxy(proxy);
_this.reconnect();
};
}
}
(0, _createClass2["default"])(_default, [{
key: "getVersion",
value: function getVersion() {
return this._config.getVersion();
}
}, {
key: "_addPnsdkSuffix",
value: function _addPnsdkSuffix(name, suffix) {
this._config._addPnsdkSuffix(name, suffix);
}
}, {
key: "networkDownDetected",
value: function networkDownDetected() {
this._listenerManager.announceNetworkDown();
if (this._config.restore) {
this.disconnect();
} else {
this.destroy(true);
}
}
}, {
key: "networkUpDetected",
value: function networkUpDetected() {
this._listenerManager.announceNetworkUp();
this.reconnect();
}
}], [{
key: "notificationPayload",
value: function notificationPayload(title, body) {
return new _push_payload["default"](title, body);
}
}, {
key: "generateUUID",
value: function generateUUID() {
return _uuid["default"].createUUID();
}
}]);
return _default;
}();
exports["default"] = _default;
(0, _defineProperty2["default"])(_default, "OPERATIONS", _operations["default"]);
(0, _defineProperty2["default"])(_default, "CATEGORIES", _categories["default"]);
module.exports = exports.default;
//# sourceMappingURL=pubnub-common.js.map