UNPKG

migme-seagull

Version:
84 lines (72 loc) 2.42 kB
'use strict'; Object.defineProperty(exports, "__esModule", { value: true }); exports.default = Contacts; var _dinghy = require('./utils/dinghy'); var _dinghy2 = _interopRequireDefault(_dinghy); var _migmeFerry = require('migme-ferry'); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } /** * Contacts * @requires module:migme/ferry */ function Contacts() { var dinghy = (0, _dinghy2.default)(); return { /** * Get contacts * @return {Promise} * @example * contacts.list().then(res => {}) */ list: function list() { var _ref = arguments.length <= 0 || arguments[0] === undefined ? {} : arguments[0]; var contact_id = _ref.contact_id; var presence = _ref.presence; var packet = new _migmeFerry.Packet(_migmeFerry.PacketType.GET_CONTACTS, { contact_id: contact_id, presence: presence }); return dinghy.send(packet, _migmeFerry.PacketType.GET_CONTACTS_COMPLETE); }, addGroup: function addGroup(group_name) { if (typeof group_name !== 'string') { throw new Error('You need to pass in a group name'); } var packet = new _migmeFerry.Packet(_migmeFerry.PacketType.ADD_GROUP, { group_name: group_name }); return dinghy.send(packet); }, removeGroup: function removeGroup(group_id) { if (!group_id) { throw new Error('You need to pass in a group id'); } var packet = new _migmeFerry.Packet(_migmeFerry.PacketType.REMOVE_GROUP, { group_id: group_id }); return dinghy.send(packet); }, updateGroup: function updateGroup(group_id, group_name) { if (!group_id || !group_name) { throw new Error('You need to pass in a group id and group name'); } var packet = new _migmeFerry.Packet(_migmeFerry.PacketType.UPDATE_GROUP, { group_id: group_id, group_name: group_name }); return dinghy.send(packet); }, move: function move(contact_id, group_id) { if (!contact_id || !group_id) { throw new Error('You need to pass in a user id and group id'); } var packet = new _migmeFerry.Packet(_migmeFerry.PacketType.MOVE_CONTACT, { contact_id: contact_id, group_id: group_id }); return dinghy.send(packet); }, get dinghy() { return dinghy; } }; } module.exports = exports['default'];