UNPKG

myteams-api

Version:

An MyTeams Module to use discord.js and Twitch API easily

58 lines 2.04 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.addThumbnailMethod = exports.parseArrayToQueryString = exports.parseOptions = exports.parseMixedParam = exports.isNumber = void 0; function isNumber(value) { if (typeof value === "undefined") return false; if (value === null) return false; if (("" + value).includes("x")) return false; return !isNaN(Number("" + value)); } exports.isNumber = isNumber; function parseMixedParam({ values, stringKey, numericKey, }) { let query = ""; function addToQuery(value) { const key = !isNumber(value) ? stringKey : numericKey; query += `${key}=${value}`; } if (Array.isArray(values)) values.forEach(addToQuery); else addToQuery(values); return query.replace(/&$/, ""); } exports.parseMixedParam = parseMixedParam; function parseOptions(options) { let query = ""; for (const key in options) { const value = options[key]; if (value === null || value === undefined) continue; if (Array.isArray(value)) query += parseArrayToQueryString(key, value); else query += `${key}=${value}&`; } return query.replace(/&$/, ""); } exports.parseOptions = parseOptions; function parseArrayToQueryString(key, arr) { const list = Array.isArray(arr) ? arr : [arr]; const result = list.map((value) => `${key}=${value}`).join("&"); return result; } exports.parseArrayToQueryString = parseArrayToQueryString; function addThumbnailMethod(stream) { const thumbnailUrl = stream.thumbnail_url; stream.getThumbnailUrl = (options = { width: 1920, height: 1080 }) => { const { width, height } = options; return thumbnailUrl .replace("{width}", "" + width) .replace("{height}", "" + height); }; return stream; } exports.addThumbnailMethod = addThumbnailMethod; //# sourceMappingURL=util.js.map