1 | ;
|
2 |
|
3 | Object.defineProperty(exports, "__esModule", {
|
4 | value: true
|
5 | });
|
6 |
|
7 | var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
|
8 |
|
9 | var _index = require("./index");
|
10 |
|
11 | var _index2 = _interopRequireDefault(_index);
|
12 |
|
13 | function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
14 |
|
15 | function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
|
16 |
|
17 | /**
|
18 | * Provides access to the `users` endpoint.
|
19 | */
|
20 | var Users = function () {
|
21 | _createClass(Users, null, [{
|
22 | key: "PATH",
|
23 | get: function get() {
|
24 | return "/beta/users";
|
25 | }
|
26 |
|
27 | /**
|
28 | * @param {Credentials} credentials
|
29 | * credentials to be used when interacting with the API.
|
30 | * @param {Object} options
|
31 | * Additional Users options.
|
32 | */
|
33 |
|
34 | }]);
|
35 |
|
36 | function Users(credentials) {
|
37 | var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
|
38 |
|
39 | _classCallCheck(this, Users);
|
40 |
|
41 | this.creds = credentials;
|
42 | this.options = options;
|
43 |
|
44 | // Used to facilitate testing of the call to the underlying object
|
45 | this._nexmo = this.options.nexmoOverride || _index2.default;
|
46 | }
|
47 |
|
48 | /**
|
49 | * Create a new user.
|
50 | *
|
51 | * @param {Object} params - Parameters used when creating the user. See https://ea.developer.nexmo.com/api/conversation#create-a-user for more information.
|
52 | * @param {function} callback - function to be called when the request completes.
|
53 | */
|
54 |
|
55 |
|
56 | _createClass(Users, [{
|
57 | key: "create",
|
58 | value: function create(params, callback) {
|
59 | params = JSON.stringify(params);
|
60 |
|
61 | var config = {
|
62 | host: "api.nexmo.com",
|
63 | path: Users.PATH,
|
64 | method: "POST",
|
65 | body: params,
|
66 | headers: {
|
67 | "Content-Type": "application/json",
|
68 | Authorization: "Bearer " + this.creds.generateJwt()
|
69 | }
|
70 | };
|
71 | this.options.httpClient.request(config, callback);
|
72 | }
|
73 |
|
74 | /**
|
75 | * Get an existing user.
|
76 | *
|
77 | * @param {string|object} query - The unique identifier for the user to retrieve
|
78 | * or a set of filter parameters for the query. For more information
|
79 | * see https://ea.developer.nexmo.com/api/conversation#retrieve-all-users
|
80 | * @param {function} callback - function to be called when the request completes.
|
81 | */
|
82 |
|
83 | }, {
|
84 | key: "get",
|
85 | value: function get(query, callback) {
|
86 | this._nexmo.getWithQuery(Users.PATH, query, this.creds, this.options, callback);
|
87 | }
|
88 |
|
89 | /**
|
90 | * Get an conversations for an existing user.
|
91 | *
|
92 | * @param {string} [userId] - The unique identifier for the user to retrieve conversations for
|
93 | * @param {function} callback - function to be called when the request completes.
|
94 | */
|
95 |
|
96 | }, {
|
97 | key: "getConversations",
|
98 | value: function getConversations(userId, callback) {
|
99 | this._nexmo.getWithQuery(Users.PATH + "/" + userId + "/conversations", {}, this.creds, this.options, callback);
|
100 | }
|
101 |
|
102 | /**
|
103 | * Update an existing user.
|
104 | *
|
105 | * @param {string} [userId] - The unique identifier for the user to update.
|
106 | * @param {Object} params - Parameters used when updating the conversation.
|
107 | * @param {function} callback - function to be called when the request completes.
|
108 | */
|
109 |
|
110 | }, {
|
111 | key: "update",
|
112 | value: function update(userId, params, callback) {
|
113 | params = JSON.stringify(params);
|
114 |
|
115 | var config = {
|
116 | host: "api.nexmo.com",
|
117 | path: Users.PATH + "/" + userId,
|
118 | method: "PUT",
|
119 | body: params,
|
120 | headers: {
|
121 | "Content-Type": "application/json",
|
122 | Authorization: "Bearer " + this.creds.generateJwt()
|
123 | }
|
124 | };
|
125 |
|
126 | this.options.httpClient.request(config, callback);
|
127 | }
|
128 |
|
129 | /**
|
130 | * Deleta an existing user.
|
131 | *
|
132 | * @param {string} [userId] - The unique identifier for the user to delete.
|
133 | * @param {function} callback - function to be called when the request completes.
|
134 | */
|
135 |
|
136 | }, {
|
137 | key: "delete",
|
138 | value: function _delete(userId, callback) {
|
139 | var config = {
|
140 | host: "api.nexmo.com",
|
141 | path: Users.PATH + "/" + userId,
|
142 | method: "DELETE",
|
143 | headers: {
|
144 | "Content-Type": "application/json",
|
145 | Authorization: "Bearer " + this.creds.generateJwt()
|
146 | }
|
147 | };
|
148 |
|
149 | this.options.httpClient.request(config, callback);
|
150 | }
|
151 | }]);
|
152 |
|
153 | return Users;
|
154 | }();
|
155 |
|
156 | exports.default = Users;
|
157 | module.exports = exports["default"];
|
158 | //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9Vc2Vycy5qcyJdLCJuYW1lcyI6WyJVc2VycyIsImNyZWRlbnRpYWxzIiwib3B0aW9ucyIsImNyZWRzIiwiX25leG1vIiwibmV4bW9PdmVycmlkZSIsInBhcmFtcyIsImNhbGxiYWNrIiwiSlNPTiIsInN0cmluZ2lmeSIsImNvbmZpZyIsImhvc3QiLCJwYXRoIiwiUEFUSCIsIm1ldGhvZCIsImJvZHkiLCJoZWFkZXJzIiwiQXV0aG9yaXphdGlvbiIsImdlbmVyYXRlSnd0IiwiaHR0cENsaWVudCIsInJlcXVlc3QiLCJxdWVyeSIsImdldFdpdGhRdWVyeSIsInVzZXJJZCJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7O0FBRUE7Ozs7Ozs7O0FBRUE7OztJQUdNQSxLOzs7d0JBQ2M7QUFDaEIsYUFBTyxhQUFQO0FBQ0Q7O0FBRUQ7Ozs7Ozs7OztBQU1BLGlCQUFZQyxXQUFaLEVBQXVDO0FBQUEsUUFBZEMsT0FBYyx1RUFBSixFQUFJOztBQUFBOztBQUNyQyxTQUFLQyxLQUFMLEdBQWFGLFdBQWI7QUFDQSxTQUFLQyxPQUFMLEdBQWVBLE9BQWY7O0FBRUE7QUFDQSxTQUFLRSxNQUFMLEdBQWMsS0FBS0YsT0FBTCxDQUFhRyxhQUFiLG1CQUFkO0FBQ0Q7O0FBRUQ7Ozs7Ozs7Ozs7MkJBTU9DLE0sRUFBUUMsUSxFQUFVO0FBQ3ZCRCxlQUFTRSxLQUFLQyxTQUFMLENBQWVILE1BQWYsQ0FBVDs7QUFFQSxVQUFJSSxTQUFTO0FBQ1hDLGNBQU0sZUFESztBQUVYQyxjQUFNWixNQUFNYSxJQUZEO0FBR1hDLGdCQUFRLE1BSEc7QUFJWEMsY0FBTVQsTUFKSztBQUtYVSxpQkFBUztBQUNQLDBCQUFnQixrQkFEVDtBQUVQQyxxQ0FBeUIsS0FBS2QsS0FBTCxDQUFXZSxXQUFYO0FBRmxCO0FBTEUsT0FBYjtBQVVBLFdBQUtoQixPQUFMLENBQWFpQixVQUFiLENBQXdCQyxPQUF4QixDQUFnQ1YsTUFBaEMsRUFBd0NILFFBQXhDO0FBQ0Q7O0FBRUQ7Ozs7Ozs7Ozs7O3dCQVFJYyxLLEVBQU9kLFEsRUFBVTtBQUNuQixXQUFLSCxNQUFMLENBQVlrQixZQUFaLENBQ0V0QixNQUFNYSxJQURSLEVBRUVRLEtBRkYsRUFHRSxLQUFLbEIsS0FIUCxFQUlFLEtBQUtELE9BSlAsRUFLRUssUUFMRjtBQU9EOztBQUVEOzs7Ozs7Ozs7cUNBTWlCZ0IsTSxFQUFRaEIsUSxFQUFVO0FBQ2pDLFdBQUtILE1BQUwsQ0FBWWtCLFlBQVosQ0FDS3RCLE1BQU1hLElBRFgsU0FDbUJVLE1BRG5CLHFCQUVFLEVBRkYsRUFHRSxLQUFLcEIsS0FIUCxFQUlFLEtBQUtELE9BSlAsRUFLRUssUUFMRjtBQU9EOztBQUVEOzs7Ozs7Ozs7OzJCQU9PZ0IsTSxFQUFRakIsTSxFQUFRQyxRLEVBQVU7QUFDL0JELGVBQVNFLEtBQUtDLFNBQUwsQ0FBZUgsTUFBZixDQUFUOztBQUVBLFVBQUlJLFNBQVM7QUFDWEMsY0FBTSxlQURLO0FBRVhDLGNBQVNaLE1BQU1hLElBQWYsU0FBdUJVLE1BRlo7QUFHWFQsZ0JBQVEsS0FIRztBQUlYQyxjQUFNVCxNQUpLO0FBS1hVLGlCQUFTO0FBQ1AsMEJBQWdCLGtCQURUO0FBRVBDLHFDQUF5QixLQUFLZCxLQUFMLENBQVdlLFdBQVg7QUFGbEI7QUFMRSxPQUFiOztBQVdBLFdBQUtoQixPQUFMLENBQWFpQixVQUFiLENBQXdCQyxPQUF4QixDQUFnQ1YsTUFBaEMsRUFBd0NILFFBQXhDO0FBQ0Q7O0FBRUQ7Ozs7Ozs7Ozs0QkFNT2dCLE0sRUFBUWhCLFEsRUFBVTtBQUN2QixVQUFJRyxTQUFTO0FBQ1hDLGNBQU0sZUFESztBQUVYQyxjQUFTWixNQUFNYSxJQUFmLFNBQXVCVSxNQUZaO0FBR1hULGdCQUFRLFFBSEc7QUFJWEUsaUJBQVM7QUFDUCwwQkFBZ0Isa0JBRFQ7QUFFUEMscUNBQXlCLEtBQUtkLEtBQUwsQ0FBV2UsV0FBWDtBQUZsQjtBQUpFLE9BQWI7O0FBVUEsV0FBS2hCLE9BQUwsQ0FBYWlCLFVBQWIsQ0FBd0JDLE9BQXhCLENBQWdDVixNQUFoQyxFQUF3Q0gsUUFBeEM7QUFDRDs7Ozs7O2tCQUdZUCxLIiwiZmlsZSI6IlVzZXJzLmpzIiwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCBuZXhtbyBmcm9tIFwiLi9pbmRleFwiO1xuXG4vKipcbiAqIFByb3ZpZGVzIGFjY2VzcyB0byB0aGUgYHVzZXJzYCBlbmRwb2ludC5cbiAqL1xuY2xhc3MgVXNlcnMge1xuICBzdGF0aWMgZ2V0IFBBVEgoKSB7XG4gICAgcmV0dXJuIFwiL2JldGEvdXNlcnNcIjtcbiAgfVxuXG4gIC8qKlxuICAgKiBAcGFyYW0ge0NyZWRlbnRpYWxzfSBjcmVkZW50aWFsc1xuICAgKiAgICBjcmVkZW50aWFscyB0byBiZSB1c2VkIHdoZW4gaW50ZXJhY3Rpbmcgd2l0aCB0aGUgQVBJLlxuICAgKiBAcGFyYW0ge09iamVjdH0gb3B0aW9uc1xuICAgKiAgICBBZGRpdGlvbmFsIFVzZXJzIG9wdGlvbnMuXG4gICAqL1xuICBjb25zdHJ1Y3RvcihjcmVkZW50aWFscywgb3B0aW9ucyA9IHt9KSB7XG4gICAgdGhpcy5jcmVkcyA9IGNyZWRlbnRpYWxzO1xuICAgIHRoaXMub3B0aW9ucyA9IG9wdGlvbnM7XG5cbiAgICAvLyBVc2VkIHRvIGZhY2lsaXRhdGUgdGVzdGluZyBvZiB0aGUgY2FsbCB0byB0aGUgdW5kZXJseWluZyBvYmplY3RcbiAgICB0aGlzLl9uZXhtbyA9IHRoaXMub3B0aW9ucy5uZXhtb092ZXJyaWRlIHx8IG5leG1vO1xuICB9XG5cbiAgLyoqXG4gICAqIENyZWF0ZSBhIG5ldyB1c2VyLlxuICAgKlxuICAgKiBAcGFyYW0ge09iamVjdH0gcGFyYW1zIC0gUGFyYW1ldGVycyB1c2VkIHdoZW4gY3JlYXRpbmcgdGhlIHVzZXIuIFNlZSBodHRwczovL2VhLmRldmVsb3Blci5uZXhtby5jb20vYXBpL2NvbnZlcnNhdGlvbiNjcmVhdGUtYS11c2VyIGZvciBtb3JlIGluZm9ybWF0aW9uLlxuICAgKiBAcGFyYW0ge2Z1bmN0aW9ufSBjYWxsYmFjayAtIGZ1bmN0aW9uIHRvIGJlIGNhbGxlZCB3aGVuIHRoZSByZXF1ZXN0IGNvbXBsZXRlcy5cbiAgICovXG4gIGNyZWF0ZShwYXJhbXMsIGNhbGxiYWNrKSB7XG4gICAgcGFyYW1zID0gSlNPTi5zdHJpbmdpZnkocGFyYW1zKTtcblxuICAgIHZhciBjb25maWcgPSB7XG4gICAgICBob3N0OiBcImFwaS5uZXhtby5jb21cIixcbiAgICAgIHBhdGg6IFVzZXJzLlBBVEgsXG4gICAgICBtZXRob2Q6IFwiUE9TVFwiLFxuICAgICAgYm9keTogcGFyYW1zLFxuICAgICAgaGVhZGVyczoge1xuICAgICAgICBcIkNvbnRlbnQtVHlwZVwiOiBcImFwcGxpY2F0aW9uL2pzb25cIixcbiAgICAgICAgQXV0aG9yaXphdGlvbjogYEJlYXJlciAke3RoaXMuY3JlZHMuZ2VuZXJhdGVKd3QoKX1gXG4gICAgICB9XG4gICAgfTtcbiAgICB0aGlzLm9wdGlvbnMuaHR0cENsaWVudC5yZXF1ZXN0KGNvbmZpZywgY2FsbGJhY2spO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldCBhbiBleGlzdGluZyB1c2VyLlxuICAgKlxuICAgKiBAcGFyYW0ge3N0cmluZ3xvYmplY3R9IHF1ZXJ5IC0gVGhlIHVuaXF1ZSBpZGVudGlmaWVyIGZvciB0aGUgdXNlciB0byByZXRyaWV2ZVxuICAgKiAgICAgICAgICAgICAgIG9yIGEgc2V0IG9mIGZpbHRlciBwYXJhbWV0ZXJzIGZvciB0aGUgcXVlcnkuIEZvciBtb3JlIGluZm9ybWF0aW9uXG4gICAqICAgICAgICAgICAgICAgc2VlIGh0dHBzOi8vZWEuZGV2ZWxvcGVyLm5leG1vLmNvbS9hcGkvY29udmVyc2F0aW9uI3JldHJpZXZlLWFsbC11c2Vyc1xuICAgKiBAcGFyYW0ge2Z1bmN0aW9ufSBjYWxsYmFjayAtIGZ1bmN0aW9uIHRvIGJlIGNhbGxlZCB3aGVuIHRoZSByZXF1ZXN0IGNvbXBsZXRlcy5cbiAgICovXG4gIGdldChxdWVyeSwgY2FsbGJhY2spIHtcbiAgICB0aGlzLl9uZXhtby5nZXRXaXRoUXVlcnkoXG4gICAgICBVc2Vycy5QQVRILFxuICAgICAgcXVlcnksXG4gICAgICB0aGlzLmNyZWRzLFxuICAgICAgdGhpcy5vcHRpb25zLFxuICAgICAgY2FsbGJhY2tcbiAgICApO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldCBhbiBjb252ZXJzYXRpb25zIGZvciBhbiBleGlzdGluZyB1c2VyLlxuICAgKlxuICAgKiBAcGFyYW0ge3N0cmluZ30gW3VzZXJJZF0gLSBUaGUgdW5pcXVlIGlkZW50aWZpZXIgZm9yIHRoZSB1c2VyIHRvIHJldHJpZXZlIGNvbnZlcnNhdGlvbnMgZm9yXG4gICAqIEBwYXJhbSB7ZnVuY3Rpb259IGNhbGxiYWNrIC0gZnVuY3Rpb24gdG8gYmUgY2FsbGVkIHdoZW4gdGhlIHJlcXVlc3QgY29tcGxldGVzLlxuICAgKi9cbiAgZ2V0Q29udmVyc2F0aW9ucyh1c2VySWQsIGNhbGxiYWNrKSB7XG4gICAgdGhpcy5fbmV4bW8uZ2V0V2l0aFF1ZXJ5KFxuICAgICAgYCR7VXNlcnMuUEFUSH0vJHt1c2VySWR9L2NvbnZlcnNhdGlvbnNgLFxuICAgICAge30sXG4gICAgICB0aGlzLmNyZWRzLFxuICAgICAgdGhpcy5vcHRpb25zLFxuICAgICAgY2FsbGJhY2tcbiAgICApO1xuICB9XG5cbiAgLyoqXG4gICAqIFVwZGF0ZSBhbiBleGlzdGluZyB1c2VyLlxuICAgKlxuICAgKiBAcGFyYW0ge3N0cmluZ30gW3VzZXJJZF0gLSBUaGUgdW5pcXVlIGlkZW50aWZpZXIgZm9yIHRoZSB1c2VyIHRvIHVwZGF0ZS5cbiAgICogQHBhcmFtIHtPYmplY3R9IHBhcmFtcyAtIFBhcmFtZXRlcnMgdXNlZCB3aGVuIHVwZGF0aW5nIHRoZSBjb252ZXJzYXRpb24uXG4gICAqIEBwYXJhbSB7ZnVuY3Rpb259IGNhbGxiYWNrIC0gZnVuY3Rpb24gdG8gYmUgY2FsbGVkIHdoZW4gdGhlIHJlcXVlc3QgY29tcGxldGVzLlxuICAgKi9cbiAgdXBkYXRlKHVzZXJJZCwgcGFyYW1zLCBjYWxsYmFjaykge1xuICAgIHBhcmFtcyA9IEpTT04uc3RyaW5naWZ5KHBhcmFtcyk7XG5cbiAgICB2YXIgY29uZmlnID0ge1xuICAgICAgaG9zdDogXCJhcGkubmV4bW8uY29tXCIsXG4gICAgICBwYXRoOiBgJHtVc2Vycy5QQVRIfS8ke3VzZXJJZH1gLFxuICAgICAgbWV0aG9kOiBcIlBVVFwiLFxuICAgICAgYm9keTogcGFyYW1zLFxuICAgICAgaGVhZGVyczoge1xuICAgICAgICBcIkNvbnRlbnQtVHlwZVwiOiBcImFwcGxpY2F0aW9uL2pzb25cIixcbiAgICAgICAgQXV0aG9yaXphdGlvbjogYEJlYXJlciAke3RoaXMuY3JlZHMuZ2VuZXJhdGVKd3QoKX1gXG4gICAgICB9XG4gICAgfTtcblxuICAgIHRoaXMub3B0aW9ucy5odHRwQ2xpZW50LnJlcXVlc3QoY29uZmlnLCBjYWxsYmFjayk7XG4gIH1cblxuICAvKipcbiAgICogRGVsZXRhIGFuIGV4aXN0aW5nIHVzZXIuXG4gICAqXG4gICAqIEBwYXJhbSB7c3RyaW5nfSBbdXNlcklkXSAtIFRoZSB1bmlxdWUgaWRlbnRpZmllciBmb3IgdGhlIHVzZXIgdG8gZGVsZXRlLlxuICAgKiBAcGFyYW0ge2Z1bmN0aW9ufSBjYWxsYmFjayAtIGZ1bmN0aW9uIHRvIGJlIGNhbGxlZCB3aGVuIHRoZSByZXF1ZXN0IGNvbXBsZXRlcy5cbiAgICovXG4gIGRlbGV0ZSh1c2VySWQsIGNhbGxiYWNrKSB7XG4gICAgdmFyIGNvbmZpZyA9IHtcbiAgICAgIGhvc3Q6IFwiYXBpLm5leG1vLmNvbVwiLFxuICAgICAgcGF0aDogYCR7VXNlcnMuUEFUSH0vJHt1c2VySWR9YCxcbiAgICAgIG1ldGhvZDogXCJERUxFVEVcIixcbiAgICAgIGhlYWRlcnM6IHtcbiAgICAgICAgXCJDb250ZW50LVR5cGVcIjogXCJhcHBsaWNhdGlvbi9qc29uXCIsXG4gICAgICAgIEF1dGhvcml6YXRpb246IGBCZWFyZXIgJHt0aGlzLmNyZWRzLmdlbmVyYXRlSnd0KCl9YFxuICAgICAgfVxuICAgIH07XG5cbiAgICB0aGlzLm9wdGlvbnMuaHR0cENsaWVudC5yZXF1ZXN0KGNvbmZpZywgY2FsbGJhY2spO1xuICB9XG59XG5cbmV4cG9ydCBkZWZhdWx0IFVzZXJzO1xuIl19 |
\ | No newline at end of file |