-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathmain.js
More file actions
111 lines (103 loc) · 6.21 KB
/
main.js
File metadata and controls
111 lines (103 loc) · 6.21 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
console.clear();
const chalk = require(`chalk`);
const moment = require(`moment`);
const readline = require('readline').createInterface({
input: process.stdin,
output: process.stdout
});
readline.question(`What's your tixte account token?\n`, token => {
console.clear();
console.log(chalk.red(`If you see this and there is an error with the status code "401" below this text, your token may not be valid!`))
if (token.length === 0) return console.log(chalk.red(`Invalid auth! No token given.`));
if (!token.startsWith(`tx.mfa.`)) return console.log(chalk.red(`Invalid auth! No Tixte token given.`));
if (token.length < 60) return console.log(chalk.red(`Invalid auth! Invalid Tixte token given.`));
if (token.length > 64) return console.log(chalk.red(`Invalid auth! Invalid Tixte token given.`));
const axios = require(`axios`);
axios({
method: 'get',
url: `https://api.tixte.com/v1/users/@me`,
headers: {
"Authorization": token
},
}).then(function (res) {
axios({
method: 'get',
url: `https://api.tixte.com/v1/users/@me/domains`,
headers: {
"Authorization": token
},
}).then(function (res2) {
axios({
method: 'get',
url: `https://api.tixte.com/v1/users/@me/config`,
headers: {
"Authorization": token
},
}).then(function (res3) {
console.clear();
let emailVerified = chalk.green("verified");
if (JSON.stringify(res.data.data.email_verified).includes(false)) emailVerified = chalk.red("not verified");
let phone = chalk.white(res.data.data.phone);
if (JSON.stringify(res.data.data.phone).includes(null)) phone = chalk.hex('#A5A5A5')(`unknown`);
let phonelVerified = chalk.white(`verified`);
if (JSON.stringify(res.data.data.phone).includes(null)) phonelVerified = chalk.red(`not verified`);
let mfa = chalk.white(`enabled`);
if (JSON.stringify(res.data.data.mfa_enabled).includes(false)) mfa = chalk.white(`disabled`);
let admin = chalk.white("yes");
if (JSON.stringify(res.data.data.admin).includes(false)) admin = chalk.white("no");
let staff = chalk.white("yes");
if (JSON.stringify(res.data.data.staff).includes(false)) staff = chalk.white("no");
let beta = chalk.white(`yes`);
if (JSON.stringify(res.data.data.beta).includes(false)) beta = chalk.white(`no`);
let pro = chalk.white(`yes`);
if (JSON.stringify(res.data.data.pro).includes(false)) pro = chalk.white(`no`);
let uploadRegion = chalk.gray(undefined);
if (JSON.stringify(res.data.data.upload_region).includes("us")) uploadRegion = chalk.white(`United States`);
if (JSON.stringify(res.data.data.upload_region).includes("de")) uploadRegion = chalk.white(`Germany`);
if (JSON.stringify(res.data.data.upload_region).includes("as")) uploadRegion = chalk.white(`Singapore`);
m = moment(res.data.data.last_login);
let branding = chalk.white(`hidden`);
if (JSON.stringify(res3.data.data.hide_branding).includes(false)) branding = chalk.white(`shown`);
let providerName = chalk.white(res3.data.data.embed.provider_name);
let providerUrl = chalk.white(` [${res3.data.data.embed.provider_url}]`);
let authorName = chalk.white(res3.data.data.embed.author_name);
let authorUrl = chalk.white(` [${res3.data.data.embed.author_url}]`);
let title = chalk.white(res3.data.data.embed.title);
let description = chalk.white(res3.data.data.embed.description);
let color = chalk.white(res3.data.data.embed.theme_color);
console.log(`
Name: ${JSON.stringify(res.data.data.username).replace(/(?:")/g, '')}
Email: ${JSON.stringify(res.data.data.email).replace(/(?:")/g, '')} | ${emailVerified}
Phone: ${phone} | ${phonelVerified}
${chalk.hex('#2B3238')("—————————————————————————————————————")}
Last Login: ${chalk.white(m.format('MMMM Do YYYY, h:mm:ss a'))}
Region: ${uploadRegion.replace(/(?:")/g, '')}
mfa: ${mfa}
Beta: ${beta}
Pro: ${pro}
Admin: ${admin}
Staff: ${staff}
${chalk.hex('#2B3238')("—————————————————————————————————————")}
Id: ${chalk.white(JSON.stringify(res.data.data.id).replace(/(?:")/g, ''))}
Avatar: ${chalk.white(JSON.stringify(res.data.data.avatar).replace(/(?:")/g, ''))}
${chalk.hex('#2B3238')("—————————————————————————————————————")}
Domains: ${chalk.white(JSON.stringify(res2.data.data.total).replace(/(?:")/g, ''))}
`);
res2.data.data.domains.forEach(function (d) {
console.log(` Name: ${chalk.white(JSON.stringify(d.name).replace(/(?:")/g, ''))} | Uploads: ${chalk.white(JSON.stringify(d.uploads))}`);
});
console.log(`
${chalk.hex('#2B3238')("—————————————————————————————————————")}
branding: ${branding}
embed:
• Provider: ${providerName}${providerUrl}
• Author: ${authorName}${authorUrl}
• Title: ${title}
• Desc: ${description}
• Color: ${color}
`);
});
});
});
readline.close();
});