twitchrequest
Advanced tools
Comparing version 1.4.2 to 1.4.3
@@ -26,2 +26,3 @@ declare module 'twitchrequest' { | ||
public getUser(username: string): Promise<UserData>; | ||
public resolveID(id: string): Promise<UserData>; | ||
public getStream(username: string): Promise<StreamData>; | ||
@@ -28,0 +29,0 @@ public getFollows(username: string): Promise<number>; |
57
index.js
@@ -266,4 +266,9 @@ "use strict"; | ||
e = response.data.find(function (d) { return d.display_name.toLowerCase() === username.toLowerCase(); }); | ||
user = new UserData(e, e.display_name.toLowerCase(), e.description, e.id, e.profile_image_url, e.view_count, e.broadcaster_type); | ||
resolve(user); | ||
if (e) { | ||
user = new UserData(e, e.display_name.toLowerCase(), e.description, e.id, e.profile_image_url, e.view_count, e.broadcaster_type); | ||
resolve(user); | ||
} | ||
else { | ||
resolve(undefined); | ||
} | ||
} | ||
@@ -282,2 +287,43 @@ return [3 /*break*/, 5]; | ||
/** | ||
* Resolves a user ID to a user channel | ||
* @param {string} id The ID of the user | ||
*/ | ||
_this.resolveID = function (id) { return __awaiter(_this, void 0, void 0, function () { | ||
var _this = this; | ||
return __generator(this, function (_a) { | ||
return [2 /*return*/, new Promise(function (resolve, reject) { return __awaiter(_this, void 0, void 0, function () { | ||
var token, response, e, user, err_4; | ||
return __generator(this, function (_a) { | ||
switch (_a.label) { | ||
case 0: return [4 /*yield*/, this.getToken()]; | ||
case 1: | ||
token = _a.sent(); | ||
_a.label = 2; | ||
case 2: | ||
_a.trys.push([2, 4, , 5]); | ||
return [4 /*yield*/, this.getData("https://api.twitch.th/helix/users?id=" + id, token)]; | ||
case 3: | ||
response = _a.sent(); | ||
if (!response || !response.data) { | ||
resolve(undefined); | ||
} | ||
else { | ||
e = response.data[0]; | ||
if (e) { | ||
user = new UserData(e, e.display_name.toLowerCase(), e.description, e.id, e.profile_image_url, e.view_count, e.broadcaster_type); | ||
resolve(user); | ||
} | ||
} | ||
return [3 /*break*/, 5]; | ||
case 4: | ||
err_4 = _a.sent(); | ||
console.log(err_4); | ||
return [3 /*break*/, 5]; | ||
case 5: return [2 /*return*/]; | ||
} | ||
}); | ||
}); })]; | ||
}); | ||
}); }; | ||
/** | ||
* Get the total number of follows of a user | ||
@@ -379,3 +425,3 @@ * @param username The username of the channel | ||
return [2 /*return*/, new Promise(function (resolve, reject) { return __awaiter(_this, void 0, void 0, function () { | ||
var token, response, e, res, ee, userData, stream, err_4; | ||
var token, response, e, res, ee, userData, stream, err_5; | ||
return __generator(this, function (_a) { | ||
@@ -416,4 +462,4 @@ switch (_a.label) { | ||
case 10: | ||
err_4 = _a.sent(); | ||
console.log(err_4); | ||
err_5 = _a.sent(); | ||
console.log(err_5); | ||
return [3 /*break*/, 11]; | ||
@@ -583,2 +629,3 @@ case 11: return [2 /*return*/]; | ||
profile: this.profile, | ||
viewers: this.viewers, | ||
thumbnail: this.thumbnail, | ||
@@ -585,0 +632,0 @@ startedAt: this.date, |
{ | ||
"name": "twitchrequest", | ||
"version": "1.4.2", | ||
"version": "1.4.3", | ||
"description": "Get Twitch requests for streams, especially when a stream goes live or stops streaming", | ||
@@ -5,0 +5,0 @@ "main": "index.js", |
258555
3374