tiny-essentials 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (302) hide show
  1. package/.github/FUNDING.yml +4 -0
  2. package/.github/workflows/node.js.yml +31 -0
  3. package/LICENSE +674 -0
  4. package/README.md +67 -0
  5. package/dist/TinyEssentials.min.js +1 -0
  6. package/dist/_virtual/_commonjsHelpers.cjs +7 -0
  7. package/dist/_virtual/common.cjs +5 -0
  8. package/dist/_virtual/index.cjs +9 -0
  9. package/dist/_virtual/index2.cjs +5 -0
  10. package/dist/_virtual/trace.cjs +5 -0
  11. package/dist/legacy/crypto/decrypt.cjs +57 -0
  12. package/dist/legacy/crypto/decrypt.d.mts +18 -0
  13. package/dist/legacy/crypto/decrypt.mjs +47 -0
  14. package/dist/legacy/crypto/default.cjs +23 -0
  15. package/dist/legacy/crypto/default.d.mts +35 -0
  16. package/dist/legacy/crypto/default.mjs +19 -0
  17. package/dist/legacy/crypto/encrypt.cjs +54 -0
  18. package/dist/legacy/crypto/encrypt.d.mts +19 -0
  19. package/dist/legacy/crypto/encrypt.mjs +46 -0
  20. package/dist/legacy/crypto/index.cjs +11 -0
  21. package/dist/legacy/crypto/index.d.mts +4 -0
  22. package/dist/legacy/crypto/index.mjs +6 -0
  23. package/dist/legacy/firebase/cookieSession.cjs +121 -0
  24. package/dist/legacy/firebase/cookieSession.d.mts +56 -0
  25. package/dist/legacy/firebase/cookieSession.mjs +114 -0
  26. package/dist/legacy/firebase/database/index.cjs +11 -0
  27. package/dist/legacy/firebase/database/index.d.mts +7 -0
  28. package/dist/legacy/firebase/database/index.mjs +7 -0
  29. package/dist/legacy/firebase/database/presence.cjs +131 -0
  30. package/dist/legacy/firebase/database/presence.d.mts +9 -0
  31. package/dist/legacy/firebase/database/presence.mjs +111 -0
  32. package/dist/legacy/firebase/database/saveAsync.cjs +147 -0
  33. package/dist/legacy/firebase/database/saveAsync.d.mts +54 -0
  34. package/dist/legacy/firebase/database/saveAsync.mjs +147 -0
  35. package/dist/legacy/firebase/databaseEscape.cjs +42 -0
  36. package/dist/legacy/firebase/databaseEscape.d.mts +11 -0
  37. package/dist/legacy/firebase/databaseEscape.mjs +37 -0
  38. package/dist/legacy/firebase/databaseLogger.cjs +258 -0
  39. package/dist/legacy/firebase/databaseLogger.d.mts +7 -0
  40. package/dist/legacy/firebase/databaseLogger.mjs +234 -0
  41. package/dist/legacy/firebase/discord/api/addGuildMember.cjs +71 -0
  42. package/dist/legacy/firebase/discord/api/addGuildMember.d.mts +38 -0
  43. package/dist/legacy/firebase/discord/api/addGuildMember.mjs +64 -0
  44. package/dist/legacy/firebase/discord/api/getGuildWidget.cjs +47 -0
  45. package/dist/legacy/firebase/discord/api/getGuildWidget.d.mts +17 -0
  46. package/dist/legacy/firebase/discord/api/getGuildWidget.mjs +43 -0
  47. package/dist/legacy/firebase/discord/api/getToken.cjs +67 -0
  48. package/dist/legacy/firebase/discord/api/getToken.d.mts +35 -0
  49. package/dist/legacy/firebase/discord/api/getToken.mjs +63 -0
  50. package/dist/legacy/firebase/discord/api/getUser.cjs +58 -0
  51. package/dist/legacy/firebase/discord/api/getUser.d.mts +27 -0
  52. package/dist/legacy/firebase/discord/api/getUser.mjs +54 -0
  53. package/dist/legacy/firebase/discord/api/getUserConnections.cjs +57 -0
  54. package/dist/legacy/firebase/discord/api/getUserConnections.d.mts +26 -0
  55. package/dist/legacy/firebase/discord/api/getUserConnections.mjs +53 -0
  56. package/dist/legacy/firebase/discord/api/getUserGuilds.cjs +56 -0
  57. package/dist/legacy/firebase/discord/api/getUserGuilds.d.mts +25 -0
  58. package/dist/legacy/firebase/discord/api/getUserGuilds.mjs +52 -0
  59. package/dist/legacy/firebase/discord/api/index.cjs +24 -0
  60. package/dist/legacy/firebase/discord/api/index.d.mts +19 -0
  61. package/dist/legacy/firebase/discord/api/index.mjs +20 -0
  62. package/dist/legacy/firebase/discord/api/refreshToken.cjs +77 -0
  63. package/dist/legacy/firebase/discord/api/refreshToken.d.mts +45 -0
  64. package/dist/legacy/firebase/discord/api/refreshToken.mjs +73 -0
  65. package/dist/legacy/firebase/discord/api/revokeToken.cjs +61 -0
  66. package/dist/legacy/firebase/discord/api/revokeToken.d.mts +29 -0
  67. package/dist/legacy/firebase/discord/api/revokeToken.mjs +58 -0
  68. package/dist/legacy/firebase/discord/config.cjs +21 -0
  69. package/dist/legacy/firebase/discord/config.d.mts +27 -0
  70. package/dist/legacy/firebase/discord/config.mjs +17 -0
  71. package/dist/legacy/firebase/discord/firebase_redirect/index.cjs +11 -0
  72. package/dist/legacy/firebase/discord/firebase_redirect/index.d.mts +7 -0
  73. package/dist/legacy/firebase/discord/firebase_redirect/index.mjs +7 -0
  74. package/dist/legacy/firebase/discord/firebase_redirect/login.cjs +110 -0
  75. package/dist/legacy/firebase/discord/firebase_redirect/login.d.mts +4 -0
  76. package/dist/legacy/firebase/discord/firebase_redirect/login.mjs +107 -0
  77. package/dist/legacy/firebase/discord/firebase_redirect/logout.cjs +100 -0
  78. package/dist/legacy/firebase/discord/firebase_redirect/logout.d.mts +4 -0
  79. package/dist/legacy/firebase/discord/firebase_redirect/logout.mjs +97 -0
  80. package/dist/legacy/firebase/discord/get/authURLGenerator.cjs +76 -0
  81. package/dist/legacy/firebase/discord/get/authURLGenerator.d.mts +23 -0
  82. package/dist/legacy/firebase/discord/get/authURLGenerator.mjs +67 -0
  83. package/dist/legacy/firebase/discord/get/cookie-session.cjs +32 -0
  84. package/dist/legacy/firebase/discord/get/cookie-session.d.mts +20 -0
  85. package/dist/legacy/firebase/discord/get/cookie-session.mjs +28 -0
  86. package/dist/legacy/firebase/discord/get/credentials.cjs +24 -0
  87. package/dist/legacy/firebase/discord/get/credentials.d.mts +19 -0
  88. package/dist/legacy/firebase/discord/get/credentials.mjs +20 -0
  89. package/dist/legacy/firebase/discord/get/errorValidator.cjs +60 -0
  90. package/dist/legacy/firebase/discord/get/errorValidator.d.mts +28 -0
  91. package/dist/legacy/firebase/discord/get/errorValidator.mjs +55 -0
  92. package/dist/legacy/firebase/discord/get/index.cjs +17 -0
  93. package/dist/legacy/firebase/discord/get/index.d.mts +13 -0
  94. package/dist/legacy/firebase/discord/get/index.mjs +13 -0
  95. package/dist/legacy/firebase/discord/get/randomAvatar.cjs +37 -0
  96. package/dist/legacy/firebase/discord/get/randomAvatar.d.mts +22 -0
  97. package/dist/legacy/firebase/discord/get/randomAvatar.mjs +30 -0
  98. package/dist/legacy/firebase/discord/http/index.cjs +15 -0
  99. package/dist/legacy/firebase/discord/http/index.d.mts +11 -0
  100. package/dist/legacy/firebase/discord/http/index.mjs +11 -0
  101. package/dist/legacy/firebase/discord/http/login.cjs +127 -0
  102. package/dist/legacy/firebase/discord/http/login.d.mts +21 -0
  103. package/dist/legacy/firebase/discord/http/login.mjs +123 -0
  104. package/dist/legacy/firebase/discord/http/logout.cjs +155 -0
  105. package/dist/legacy/firebase/discord/http/logout.d.mts +22 -0
  106. package/dist/legacy/firebase/discord/http/logout.mjs +143 -0
  107. package/dist/legacy/firebase/discord/http/redirect.cjs +188 -0
  108. package/dist/legacy/firebase/discord/http/redirect.d.mts +24 -0
  109. package/dist/legacy/firebase/discord/http/redirect.mjs +178 -0
  110. package/dist/legacy/firebase/discord/http/refreshToken.cjs +133 -0
  111. package/dist/legacy/firebase/discord/http/refreshToken.d.mts +24 -0
  112. package/dist/legacy/firebase/discord/http/refreshToken.mjs +121 -0
  113. package/dist/legacy/firebase/discord/index.cjs +19 -0
  114. package/dist/legacy/firebase/discord/index.d.mts +15 -0
  115. package/dist/legacy/firebase/discord/index.mjs +15 -0
  116. package/dist/legacy/firebase/discord/template/cookie-session.cjs +1430 -0
  117. package/dist/legacy/firebase/discord/template/cookie-session.d.mts +22 -0
  118. package/dist/legacy/firebase/discord/template/cookie-session.mjs +1159 -0
  119. package/dist/legacy/firebase/domainRedirect.cjs +35 -0
  120. package/dist/legacy/firebase/domainRedirect.d.mts +12 -0
  121. package/dist/legacy/firebase/domainRedirect.mjs +27 -0
  122. package/dist/legacy/firebase/escape.cjs +75 -0
  123. package/dist/legacy/firebase/escape.d.mts +17 -0
  124. package/dist/legacy/firebase/escape.mjs +58 -0
  125. package/dist/legacy/firebase/getDBAsync.cjs +33 -0
  126. package/dist/legacy/firebase/getDBAsync.d.mts +10 -0
  127. package/dist/legacy/firebase/getDBAsync.mjs +26 -0
  128. package/dist/legacy/firebase/getDBData.cjs +21 -0
  129. package/dist/legacy/firebase/getDBData.d.mts +1 -0
  130. package/dist/legacy/firebase/getDBData.mjs +17 -0
  131. package/dist/legacy/firebase/getDBValue.cjs +17 -0
  132. package/dist/legacy/firebase/getDBValue.d.mts +9 -0
  133. package/dist/legacy/firebase/getDBValue.mjs +14 -0
  134. package/dist/legacy/firebase/index.cjs +261 -0
  135. package/dist/legacy/firebase/index.d.mts +51 -0
  136. package/dist/legacy/firebase/index.mjs +234 -0
  137. package/dist/legacy/firebase/isEmulator.cjs +14 -0
  138. package/dist/legacy/firebase/isEmulator.d.mts +8 -0
  139. package/dist/legacy/firebase/isEmulator.mjs +10 -0
  140. package/dist/legacy/firebase/logger.cjs +137 -0
  141. package/dist/legacy/firebase/logger.d.mts +7 -0
  142. package/dist/legacy/firebase/logger.mjs +125 -0
  143. package/dist/legacy/firebase/mySQL.cjs +26 -0
  144. package/dist/legacy/firebase/mySQL.d.mts +10 -0
  145. package/dist/legacy/firebase/mySQL.mjs +22 -0
  146. package/dist/legacy/firebase/mysqlConnector/create.cjs +119 -0
  147. package/dist/legacy/firebase/mysqlConnector/create.d.mts +36 -0
  148. package/dist/legacy/firebase/mysqlConnector/create.mjs +109 -0
  149. package/dist/legacy/firebase/mysqlConnector/index.cjs +23 -0
  150. package/dist/legacy/firebase/mysqlConnector/index.d.mts +11 -0
  151. package/dist/legacy/firebase/mysqlConnector/index.mjs +16 -0
  152. package/dist/legacy/firebase/mysqlConnector/nextPrev.cjs +75 -0
  153. package/dist/legacy/firebase/mysqlConnector/nextPrev.d.mts +31 -0
  154. package/dist/legacy/firebase/mysqlConnector/nextPrev.mjs +63 -0
  155. package/dist/legacy/firebase/mysqlConnector/pagination.cjs +91 -0
  156. package/dist/legacy/firebase/mysqlConnector/pagination.d.mts +33 -0
  157. package/dist/legacy/firebase/mysqlConnector/pagination.mjs +87 -0
  158. package/dist/legacy/firebase/mysqlConnector/sameUser.cjs +28 -0
  159. package/dist/legacy/firebase/mysqlConnector/sameUser.d.mts +12 -0
  160. package/dist/legacy/firebase/mysqlConnector/sameUser.mjs +23 -0
  161. package/dist/legacy/firebase/transactionDBAsync.cjs +33 -0
  162. package/dist/legacy/firebase/transactionDBAsync.d.mts +11 -0
  163. package/dist/legacy/firebase/transactionDBAsync.mjs +27 -0
  164. package/dist/legacy/get/countObj.cjs +24 -0
  165. package/dist/legacy/get/countObj.d.mts +11 -0
  166. package/dist/legacy/get/countObj.mjs +21 -0
  167. package/dist/legacy/get/decimalColor.cjs +60 -0
  168. package/dist/legacy/get/decimalColor.d.mts +12 -0
  169. package/dist/legacy/get/decimalColor.mjs +54 -0
  170. package/dist/legacy/get/objType.cjs +43 -0
  171. package/dist/legacy/get/objType.d.mts +19 -0
  172. package/dist/legacy/get/objType.mjs +40 -0
  173. package/dist/legacy/get/pagination.cjs +100 -0
  174. package/dist/legacy/get/pagination.d.mts +25 -0
  175. package/dist/legacy/get/pagination.mjs +91 -0
  176. package/dist/legacy/get/queryUrlByName.cjs +31 -0
  177. package/dist/legacy/get/queryUrlByName.d.mts +20 -0
  178. package/dist/legacy/get/queryUrlByName.mjs +28 -0
  179. package/dist/legacy/get/queryUrlJSON.cjs +54 -0
  180. package/dist/legacy/get/queryUrlJSON.d.mts +23 -0
  181. package/dist/legacy/get/queryUrlJSON.mjs +57 -0
  182. package/dist/legacy/get/super_string_filter.cjs +97 -0
  183. package/dist/legacy/get/super_string_filter.d.mts +25 -0
  184. package/dist/legacy/get/super_string_filter.mjs +83 -0
  185. package/dist/legacy/get/versionCheck.cjs +49 -0
  186. package/dist/legacy/get/versionCheck.d.mts +17 -0
  187. package/dist/legacy/get/versionCheck.mjs +38 -0
  188. package/dist/legacy/http/HTTP-1.0.cjs +151 -0
  189. package/dist/legacy/http/HTTP-1.0.d.mts +8 -0
  190. package/dist/legacy/http/HTTP-1.0.mjs +136 -0
  191. package/dist/legacy/http/auth.cjs +70 -0
  192. package/dist/legacy/http/auth.d.mts +41 -0
  193. package/dist/legacy/http/auth.mjs +63 -0
  194. package/dist/legacy/http/check_domain.cjs +84 -0
  195. package/dist/legacy/http/check_domain.d.mts +10 -0
  196. package/dist/legacy/http/check_domain.mjs +82 -0
  197. package/dist/legacy/http/csrfTokenAnalyze.cjs +46 -0
  198. package/dist/legacy/http/csrfTokenAnalyze.d.mts +21 -0
  199. package/dist/legacy/http/csrfTokenAnalyze.mjs +40 -0
  200. package/dist/legacy/http/domainValidator.cjs +98 -0
  201. package/dist/legacy/http/domainValidator.d.mts +30 -0
  202. package/dist/legacy/http/domainValidator.mjs +82 -0
  203. package/dist/legacy/http/errorsCallback.cjs +55 -0
  204. package/dist/legacy/http/errorsCallback.d.mts +29 -0
  205. package/dist/legacy/http/errorsCallback.mjs +48 -0
  206. package/dist/legacy/http/fetch/json.cjs +48 -0
  207. package/dist/legacy/http/fetch/json.d.mts +22 -0
  208. package/dist/legacy/http/fetch/json.mjs +41 -0
  209. package/dist/legacy/http/fetch/text.cjs +47 -0
  210. package/dist/legacy/http/fetch/text.d.mts +21 -0
  211. package/dist/legacy/http/fetch/text.mjs +40 -0
  212. package/dist/legacy/http/fileCache.cjs +79 -0
  213. package/dist/legacy/http/fileCache.d.mts +35 -0
  214. package/dist/legacy/http/fileCache.mjs +70 -0
  215. package/dist/legacy/http/getDomainURL.cjs +59 -0
  216. package/dist/legacy/http/getDomainURL.d.mts +18 -0
  217. package/dist/legacy/http/getDomainURL.mjs +54 -0
  218. package/dist/legacy/http/userIP.cjs +59 -0
  219. package/dist/legacy/http/userIP.d.mts +21 -0
  220. package/dist/legacy/http/userIP.mjs +48 -0
  221. package/dist/legacy/index.cjs +122 -0
  222. package/dist/legacy/index.d.mts +89 -0
  223. package/dist/legacy/index.mjs +92 -0
  224. package/dist/legacy/libs/arraySortPositions.cjs +30 -0
  225. package/dist/legacy/libs/arraySortPositions.d.mts +16 -0
  226. package/dist/legacy/libs/arraySortPositions.mjs +27 -0
  227. package/dist/legacy/libs/capitalize.cjs +21 -0
  228. package/dist/legacy/libs/capitalize.d.mts +13 -0
  229. package/dist/legacy/libs/capitalize.mjs +17 -0
  230. package/dist/legacy/libs/convertBytes.cjs +64 -0
  231. package/dist/legacy/libs/convertBytes.d.mts +17 -0
  232. package/dist/legacy/libs/convertBytes.mjs +55 -0
  233. package/dist/legacy/libs/custom_module_loader.cjs +82 -0
  234. package/dist/legacy/libs/custom_module_loader.d.mts +5 -0
  235. package/dist/legacy/libs/custom_module_loader.mjs +79 -0
  236. package/dist/legacy/libs/dice.cjs +35 -0
  237. package/dist/legacy/libs/dice.d.mts +5 -0
  238. package/dist/legacy/libs/dice.mjs +31 -0
  239. package/dist/legacy/libs/markdown.cjs +85 -0
  240. package/dist/legacy/libs/markdown.d.mts +75 -0
  241. package/dist/legacy/libs/markdown.mjs +78 -0
  242. package/dist/legacy/libs/percentage.cjs +22 -0
  243. package/dist/legacy/libs/percentage.d.mts +4 -0
  244. package/dist/legacy/libs/percentage.mjs +19 -0
  245. package/dist/legacy/libs/regex/getLetter.cjs +22 -0
  246. package/dist/legacy/libs/regex/getLetter.d.mts +12 -0
  247. package/dist/legacy/libs/regex/getLetter.mjs +19 -0
  248. package/dist/legacy/libs/replaceAsync.cjs +32 -0
  249. package/dist/legacy/libs/replaceAsync.d.mts +15 -0
  250. package/dist/legacy/libs/replaceAsync.mjs +25 -0
  251. package/dist/legacy/libs/rule3.cjs +58 -0
  252. package/dist/legacy/libs/rule3.d.mts +5 -0
  253. package/dist/legacy/libs/rule3.mjs +54 -0
  254. package/dist/legacy/libs/userLevel.cjs +134 -0
  255. package/dist/legacy/libs/userLevel.d.mts +69 -0
  256. package/dist/legacy/libs/userLevel.mjs +123 -0
  257. package/dist/legacy/momentjs/getAge.cjs +28 -0
  258. package/dist/legacy/momentjs/getAge.d.mts +8 -0
  259. package/dist/legacy/momentjs/getAge.mjs +22 -0
  260. package/dist/legacy/momentjs/index.cjs +9 -0
  261. package/dist/legacy/momentjs/index.d.mts +3 -0
  262. package/dist/legacy/momentjs/index.mjs +3 -0
  263. package/dist/legacy/momentjs/timeDuration.cjs +29 -0
  264. package/dist/legacy/momentjs/timeDuration.d.mts +9 -0
  265. package/dist/legacy/momentjs/timeDuration.mjs +23 -0
  266. package/dist/legacy/socket.io/antiFlood/index.cjs +9 -0
  267. package/dist/legacy/socket.io/antiFlood/index.d.mts +3 -0
  268. package/dist/legacy/socket.io/antiFlood/index.mjs +3 -0
  269. package/dist/legacy/socket.io/antiFlood/install.cjs +32 -0
  270. package/dist/legacy/socket.io/antiFlood/install.d.mts +14 -0
  271. package/dist/legacy/socket.io/antiFlood/install.mjs +27 -0
  272. package/dist/legacy/socket.io/antiFlood/verify.cjs +87 -0
  273. package/dist/legacy/socket.io/antiFlood/verify.d.mts +15 -0
  274. package/dist/legacy/socket.io/antiFlood/verify.mjs +73 -0
  275. package/dist/legacy/socket.io/cookie-session.cjs +25 -0
  276. package/dist/legacy/socket.io/cookie-session.d.mts +9 -0
  277. package/dist/legacy/socket.io/cookie-session.mjs +20 -0
  278. package/dist/legacy/socket.io/discord.cjs +61 -0
  279. package/dist/legacy/socket.io/discord.d.mts +10 -0
  280. package/dist/legacy/socket.io/discord.mjs +52 -0
  281. package/dist/legacy/socket.io/index.cjs +13 -0
  282. package/dist/legacy/socket.io/index.d.mts +9 -0
  283. package/dist/legacy/socket.io/index.mjs +9 -0
  284. package/dist/v1/basics/array.cjs +31 -0
  285. package/dist/v1/basics/array.d.mts +10 -0
  286. package/dist/v1/basics/array.mjs +22 -0
  287. package/dist/v1/basics/clock.cjs +187 -0
  288. package/dist/v1/basics/clock.d.mts +37 -0
  289. package/dist/v1/basics/clock.mjs +152 -0
  290. package/dist/v1/basics/objFilter.cjs +55 -0
  291. package/dist/v1/basics/objFilter.d.mts +27 -0
  292. package/dist/v1/basics/objFilter.mjs +52 -0
  293. package/dist/v1/basics/simpleMath.cjs +88 -0
  294. package/dist/v1/basics/simpleMath.d.mts +54 -0
  295. package/dist/v1/basics/simpleMath.mjs +75 -0
  296. package/dist/v1/basics/text.cjs +34 -0
  297. package/dist/v1/basics/text.d.mts +20 -0
  298. package/dist/v1/basics/text.mjs +25 -0
  299. package/dist/v1/index.cjs +26 -0
  300. package/dist/v1/index.d.mts +15 -0
  301. package/dist/v1/index.mjs +8 -0
  302. package/package.json +72 -0
@@ -0,0 +1,58 @@
1
+ 'use strict';
2
+
3
+ var json = require('../../../http/fetch/json.cjs');
4
+ var config = require('../config.cjs');
5
+ var errorValidator = require('../get/errorValidator.cjs');
6
+
7
+ /**
8
+ * Retrieves user information from the Discord API.
9
+ *
10
+ * This function is typically used to fetch the authenticated user's information
11
+ * (`@me`) or a specific user's data by their user ID.
12
+ *
13
+ * @param {string} access_token - The access token used for authentication (typically obtained via OAuth2).
14
+ * @param {string} [type='Bearer'] - The token type (usually 'Bearer' for OAuth2 or 'Bot' for bot tokens).
15
+ * @param {string} [user='@me'] - The user ID to fetch. Use '@me' to get the authenticated user's profile.
16
+ * @param {string} [version=''] - Optional API version prefix (e.g., 'v10/') if needed by your API setup.
17
+ *
18
+ * @returns {Promise<Object>} Resolves with the user's profile data returned by Discord.
19
+ *
20
+ * @throws {Object} If the request fails, rejects with an error object containing `code` and `message`.
21
+ *
22
+ * @example
23
+ * getUser('access_token_here')
24
+ * .then(user => console.log('Logged in as:', user.username))
25
+ * .catch(err => console.error('User fetch failed:', err));
26
+ *
27
+ * @example
28
+ * // Using a bot token to fetch another user
29
+ * getUser('bot_token', 'Bot', '123456789012345678')
30
+ * .then(user => console.log('User info:', user))
31
+ * .catch(err => console.error('Error:', err));
32
+ */
33
+ function getUser(access_token, type = 'Bearer', user = '@me', version = '') {
34
+ return new Promise(function (resolve, reject) {
35
+ // API URL
36
+ const apiURL = config.url;
37
+
38
+ // Response
39
+ json(`${apiURL}${version}users/${user}`, {
40
+ method: 'GET',
41
+ headers: {
42
+ Authorization: `${type} ${access_token}`,
43
+ 'Content-Type': 'application/json',
44
+ },
45
+ })
46
+ .then((data) => {
47
+ // Error Validator
48
+ const result = errorValidator(data);
49
+ if (!result.error) resolve(result.data);
50
+ else reject(result.error);
51
+ })
52
+ .catch((err) => {
53
+ reject({ code: err.response.status, message: err.message });
54
+ });
55
+ });
56
+ }
57
+
58
+ module.exports = getUser;
@@ -0,0 +1,27 @@
1
+ /**
2
+ * Retrieves user information from the Discord API.
3
+ *
4
+ * This function is typically used to fetch the authenticated user's information
5
+ * (`@me`) or a specific user's data by their user ID.
6
+ *
7
+ * @param {string} access_token - The access token used for authentication (typically obtained via OAuth2).
8
+ * @param {string} [type='Bearer'] - The token type (usually 'Bearer' for OAuth2 or 'Bot' for bot tokens).
9
+ * @param {string} [user='@me'] - The user ID to fetch. Use '@me' to get the authenticated user's profile.
10
+ * @param {string} [version=''] - Optional API version prefix (e.g., 'v10/') if needed by your API setup.
11
+ *
12
+ * @returns {Promise<Object>} Resolves with the user's profile data returned by Discord.
13
+ *
14
+ * @throws {Object} If the request fails, rejects with an error object containing `code` and `message`.
15
+ *
16
+ * @example
17
+ * getUser('access_token_here')
18
+ * .then(user => console.log('Logged in as:', user.username))
19
+ * .catch(err => console.error('User fetch failed:', err));
20
+ *
21
+ * @example
22
+ * // Using a bot token to fetch another user
23
+ * getUser('bot_token', 'Bot', '123456789012345678')
24
+ * .then(user => console.log('User info:', user))
25
+ * .catch(err => console.error('Error:', err));
26
+ */
27
+ export default function getUser(access_token: string, type?: string, user?: string, version?: string): Promise<Object>;
@@ -0,0 +1,54 @@
1
+ import getJsonFetch from '../../../http/fetch/json.mjs';
2
+ import config from '../config.mjs';
3
+ import errorValidator from '../get/errorValidator.mjs';
4
+ /**
5
+ * Retrieves user information from the Discord API.
6
+ *
7
+ * This function is typically used to fetch the authenticated user's information
8
+ * (`@me`) or a specific user's data by their user ID.
9
+ *
10
+ * @param {string} access_token - The access token used for authentication (typically obtained via OAuth2).
11
+ * @param {string} [type='Bearer'] - The token type (usually 'Bearer' for OAuth2 or 'Bot' for bot tokens).
12
+ * @param {string} [user='@me'] - The user ID to fetch. Use '@me' to get the authenticated user's profile.
13
+ * @param {string} [version=''] - Optional API version prefix (e.g., 'v10/') if needed by your API setup.
14
+ *
15
+ * @returns {Promise<Object>} Resolves with the user's profile data returned by Discord.
16
+ *
17
+ * @throws {Object} If the request fails, rejects with an error object containing `code` and `message`.
18
+ *
19
+ * @example
20
+ * getUser('access_token_here')
21
+ * .then(user => console.log('Logged in as:', user.username))
22
+ * .catch(err => console.error('User fetch failed:', err));
23
+ *
24
+ * @example
25
+ * // Using a bot token to fetch another user
26
+ * getUser('bot_token', 'Bot', '123456789012345678')
27
+ * .then(user => console.log('User info:', user))
28
+ * .catch(err => console.error('Error:', err));
29
+ */
30
+ export default function getUser(access_token, type = 'Bearer', user = '@me', version = '') {
31
+ return new Promise(function (resolve, reject) {
32
+ // API URL
33
+ const apiURL = config.url;
34
+ // Response
35
+ getJsonFetch(`${apiURL}${version}users/${user}`, {
36
+ method: 'GET',
37
+ headers: {
38
+ Authorization: `${type} ${access_token}`,
39
+ 'Content-Type': 'application/json',
40
+ },
41
+ })
42
+ .then((data) => {
43
+ // Error Validator
44
+ const result = errorValidator(data);
45
+ if (!result.error)
46
+ resolve(result.data);
47
+ else
48
+ reject(result.error);
49
+ })
50
+ .catch((err) => {
51
+ reject({ code: err.response.status, message: err.message });
52
+ });
53
+ });
54
+ }
@@ -0,0 +1,57 @@
1
+ 'use strict';
2
+
3
+ var json = require('../../../http/fetch/json.cjs');
4
+ var config = require('../config.cjs');
5
+ var errorValidator = require('../get/errorValidator.cjs');
6
+
7
+ /**
8
+ * Retrieves the authenticated user's linked connections from the Discord API.
9
+ *
10
+ * This includes external accounts the user has connected to their Discord profile,
11
+ * such as Steam, Twitch, YouTube, GitHub, etc.
12
+ *
13
+ * Requires the `connections` scope to be present in the OAuth2 token.
14
+ *
15
+ * @param {string} access_token - The OAuth2 access token used to authenticate the user.
16
+ *
17
+ * @returns {Promise<Array<Object>>} Resolves with an array of connection objects.
18
+ *
19
+ * @throws {Object} If the request fails, rejects with an error object containing `code` and `message`.
20
+ *
21
+ * @see {@link https://discord.com/developers/docs/resources/user#get-user-connections} Discord API Reference
22
+ *
23
+ * @example
24
+ * getUserConnections('your_access_token')
25
+ * .then(connections => {
26
+ * connections.forEach(conn => {
27
+ * console.log(`${conn.type}: ${conn.name}`);
28
+ * });
29
+ * })
30
+ * .catch(err => console.error('Failed to get connections:', err));
31
+ */
32
+ function getUserConnections(access_token) {
33
+ return new Promise(function (resolve, reject) {
34
+ // API URL
35
+ const apiURL = config.url;
36
+
37
+ // Response
38
+ json(`${apiURL}users/@me/connections`, {
39
+ method: 'GET',
40
+ headers: {
41
+ Authorization: `Bearer ${access_token}`,
42
+ 'Content-Type': 'application/json',
43
+ },
44
+ })
45
+ .then((data) => {
46
+ // Error Validator
47
+ const result = errorValidator(data);
48
+ if (!result.error) resolve(result.data);
49
+ else reject(result.error);
50
+ })
51
+ .catch((err) => {
52
+ reject({ code: err.response.status, message: err.message });
53
+ });
54
+ });
55
+ }
56
+
57
+ module.exports = getUserConnections;
@@ -0,0 +1,26 @@
1
+ /**
2
+ * Retrieves the authenticated user's linked connections from the Discord API.
3
+ *
4
+ * This includes external accounts the user has connected to their Discord profile,
5
+ * such as Steam, Twitch, YouTube, GitHub, etc.
6
+ *
7
+ * Requires the `connections` scope to be present in the OAuth2 token.
8
+ *
9
+ * @param {string} access_token - The OAuth2 access token used to authenticate the user.
10
+ *
11
+ * @returns {Promise<Array<Object>>} Resolves with an array of connection objects.
12
+ *
13
+ * @throws {Object} If the request fails, rejects with an error object containing `code` and `message`.
14
+ *
15
+ * @see {@link https://discord.com/developers/docs/resources/user#get-user-connections} Discord API Reference
16
+ *
17
+ * @example
18
+ * getUserConnections('your_access_token')
19
+ * .then(connections => {
20
+ * connections.forEach(conn => {
21
+ * console.log(`${conn.type}: ${conn.name}`);
22
+ * });
23
+ * })
24
+ * .catch(err => console.error('Failed to get connections:', err));
25
+ */
26
+ export default function getUserConnections(access_token: string): Promise<Array<Object>>;
@@ -0,0 +1,53 @@
1
+ import getJsonFetch from '../../../http/fetch/json.mjs';
2
+ import config from '../config.mjs';
3
+ import errorValidator from '../get/errorValidator.mjs';
4
+ /**
5
+ * Retrieves the authenticated user's linked connections from the Discord API.
6
+ *
7
+ * This includes external accounts the user has connected to their Discord profile,
8
+ * such as Steam, Twitch, YouTube, GitHub, etc.
9
+ *
10
+ * Requires the `connections` scope to be present in the OAuth2 token.
11
+ *
12
+ * @param {string} access_token - The OAuth2 access token used to authenticate the user.
13
+ *
14
+ * @returns {Promise<Array<Object>>} Resolves with an array of connection objects.
15
+ *
16
+ * @throws {Object} If the request fails, rejects with an error object containing `code` and `message`.
17
+ *
18
+ * @see {@link https://discord.com/developers/docs/resources/user#get-user-connections} Discord API Reference
19
+ *
20
+ * @example
21
+ * getUserConnections('your_access_token')
22
+ * .then(connections => {
23
+ * connections.forEach(conn => {
24
+ * console.log(`${conn.type}: ${conn.name}`);
25
+ * });
26
+ * })
27
+ * .catch(err => console.error('Failed to get connections:', err));
28
+ */
29
+ export default function getUserConnections(access_token) {
30
+ return new Promise(function (resolve, reject) {
31
+ // API URL
32
+ const apiURL = config.url;
33
+ // Response
34
+ getJsonFetch(`${apiURL}users/@me/connections`, {
35
+ method: 'GET',
36
+ headers: {
37
+ Authorization: `Bearer ${access_token}`,
38
+ 'Content-Type': 'application/json',
39
+ },
40
+ })
41
+ .then((data) => {
42
+ // Error Validator
43
+ const result = errorValidator(data);
44
+ if (!result.error)
45
+ resolve(result.data);
46
+ else
47
+ reject(result.error);
48
+ })
49
+ .catch((err) => {
50
+ reject({ code: err.response.status, message: err.message });
51
+ });
52
+ });
53
+ }
@@ -0,0 +1,56 @@
1
+ 'use strict';
2
+
3
+ var json = require('../../../http/fetch/json.cjs');
4
+ var config = require('../config.cjs');
5
+ var errorValidator = require('../get/errorValidator.cjs');
6
+
7
+ /**
8
+ * Retrieves a list of guilds (servers) the authenticated user is a member of.
9
+ *
10
+ * This function uses the Discord OAuth2 API and requires the `guilds` scope
11
+ * in the access token. It returns basic information about each guild, such as
12
+ * name, ID, owner status, permissions, and icon.
13
+ *
14
+ * Note: This does NOT include information available only to bots, like full member lists.
15
+ *
16
+ * @param {string} access_token - The OAuth2 access token used to authenticate the user.
17
+ *
18
+ * @returns {Promise<Array<Object>>} Resolves with an array of guild objects the user is in.
19
+ *
20
+ * @throws {Object} If the request fails, rejects with an error object containing `code` and `message`.
21
+ *
22
+ * @example
23
+ * getUserGuilds('your_access_token')
24
+ * .then(guilds => {
25
+ * guilds.forEach(guild => {
26
+ * console.log(`${guild.name} (${guild.id})`);
27
+ * });
28
+ * })
29
+ * .catch(err => console.error('Failed to get guilds:', err));
30
+ */
31
+ function getUserGuilds(access_token) {
32
+ return new Promise(function (resolve, reject) {
33
+ // API URL
34
+ const apiURL = config.url;
35
+
36
+ // Response
37
+ json(`${apiURL}users/@me/guilds`, {
38
+ method: 'GET',
39
+ headers: {
40
+ Authorization: `Bearer ${access_token}`,
41
+ 'Content-Type': 'application/json',
42
+ },
43
+ })
44
+ .then((data) => {
45
+ // Error Validator
46
+ const result = errorValidator(data);
47
+ if (!result.error) resolve(result.data);
48
+ else reject(result.error);
49
+ })
50
+ .catch((err) => {
51
+ reject({ code: err.response.status, message: err.message });
52
+ });
53
+ });
54
+ }
55
+
56
+ module.exports = getUserGuilds;
@@ -0,0 +1,25 @@
1
+ /**
2
+ * Retrieves a list of guilds (servers) the authenticated user is a member of.
3
+ *
4
+ * This function uses the Discord OAuth2 API and requires the `guilds` scope
5
+ * in the access token. It returns basic information about each guild, such as
6
+ * name, ID, owner status, permissions, and icon.
7
+ *
8
+ * Note: This does NOT include information available only to bots, like full member lists.
9
+ *
10
+ * @param {string} access_token - The OAuth2 access token used to authenticate the user.
11
+ *
12
+ * @returns {Promise<Array<Object>>} Resolves with an array of guild objects the user is in.
13
+ *
14
+ * @throws {Object} If the request fails, rejects with an error object containing `code` and `message`.
15
+ *
16
+ * @example
17
+ * getUserGuilds('your_access_token')
18
+ * .then(guilds => {
19
+ * guilds.forEach(guild => {
20
+ * console.log(`${guild.name} (${guild.id})`);
21
+ * });
22
+ * })
23
+ * .catch(err => console.error('Failed to get guilds:', err));
24
+ */
25
+ export default function getUserGuilds(access_token: string): Promise<Array<Object>>;
@@ -0,0 +1,52 @@
1
+ import getJsonFetch from '../../../http/fetch/json.mjs';
2
+ import config from '../config.mjs';
3
+ import errorValidator from '../get/errorValidator.mjs';
4
+ /**
5
+ * Retrieves a list of guilds (servers) the authenticated user is a member of.
6
+ *
7
+ * This function uses the Discord OAuth2 API and requires the `guilds` scope
8
+ * in the access token. It returns basic information about each guild, such as
9
+ * name, ID, owner status, permissions, and icon.
10
+ *
11
+ * Note: This does NOT include information available only to bots, like full member lists.
12
+ *
13
+ * @param {string} access_token - The OAuth2 access token used to authenticate the user.
14
+ *
15
+ * @returns {Promise<Array<Object>>} Resolves with an array of guild objects the user is in.
16
+ *
17
+ * @throws {Object} If the request fails, rejects with an error object containing `code` and `message`.
18
+ *
19
+ * @example
20
+ * getUserGuilds('your_access_token')
21
+ * .then(guilds => {
22
+ * guilds.forEach(guild => {
23
+ * console.log(`${guild.name} (${guild.id})`);
24
+ * });
25
+ * })
26
+ * .catch(err => console.error('Failed to get guilds:', err));
27
+ */
28
+ export default function getUserGuilds(access_token) {
29
+ return new Promise(function (resolve, reject) {
30
+ // API URL
31
+ const apiURL = config.url;
32
+ // Response
33
+ getJsonFetch(`${apiURL}users/@me/guilds`, {
34
+ method: 'GET',
35
+ headers: {
36
+ Authorization: `Bearer ${access_token}`,
37
+ 'Content-Type': 'application/json',
38
+ },
39
+ })
40
+ .then((data) => {
41
+ // Error Validator
42
+ const result = errorValidator(data);
43
+ if (!result.error)
44
+ resolve(result.data);
45
+ else
46
+ reject(result.error);
47
+ })
48
+ .catch((err) => {
49
+ reject({ code: err.response.status, message: err.message });
50
+ });
51
+ });
52
+ }
@@ -0,0 +1,24 @@
1
+ 'use strict';
2
+
3
+ var addGuildMember = require('./addGuildMember.cjs');
4
+ var getGuildWidget = require('./getGuildWidget.cjs');
5
+ var getToken = require('./getToken.cjs');
6
+ var getUser = require('./getUser.cjs');
7
+ var getUserConnections = require('./getUserConnections.cjs');
8
+ var getUserGuilds = require('./getUserGuilds.cjs');
9
+ var refreshToken = require('./refreshToken.cjs');
10
+ var revokeToken = require('./revokeToken.cjs');
11
+
12
+ // Module Base
13
+ const discord_api = {
14
+ getToken,
15
+ getUser,
16
+ revokeToken,
17
+ getUserGuilds,
18
+ getGuildWidget,
19
+ getUserConnections,
20
+ addGuildMember,
21
+ refreshToken,
22
+ };
23
+
24
+ module.exports = discord_api;
@@ -0,0 +1,19 @@
1
+ export default discord_api;
2
+ declare namespace discord_api {
3
+ export { getToken };
4
+ export { getUser };
5
+ export { revokeToken };
6
+ export { getUserGuilds };
7
+ export { getGuildWidget };
8
+ export { getUserConnections };
9
+ export { addGuildMember };
10
+ export { refreshToken };
11
+ }
12
+ import getToken from './getToken.mjs';
13
+ import getUser from './getUser.mjs';
14
+ import revokeToken from './revokeToken.mjs';
15
+ import getUserGuilds from './getUserGuilds.mjs';
16
+ import getGuildWidget from './getGuildWidget.mjs';
17
+ import getUserConnections from './getUserConnections.mjs';
18
+ import addGuildMember from './addGuildMember.mjs';
19
+ import refreshToken from './refreshToken.mjs';
@@ -0,0 +1,20 @@
1
+ import addGuildMember from './addGuildMember.mjs';
2
+ import getGuildWidget from './getGuildWidget.mjs';
3
+ import getToken from './getToken.mjs';
4
+ import getUser from './getUser.mjs';
5
+ import getUserConnections from './getUserConnections.mjs';
6
+ import getUserGuilds from './getUserGuilds.mjs';
7
+ import refreshToken from './refreshToken.mjs';
8
+ import revokeToken from './revokeToken.mjs';
9
+ // Module Base
10
+ const discord_api = {
11
+ getToken,
12
+ getUser,
13
+ revokeToken,
14
+ getUserGuilds,
15
+ getGuildWidget,
16
+ getUserConnections,
17
+ addGuildMember,
18
+ refreshToken,
19
+ };
20
+ export default discord_api;
@@ -0,0 +1,77 @@
1
+ 'use strict';
2
+
3
+ var json = require('../../../http/fetch/json.cjs');
4
+ var config = require('../config.cjs');
5
+ var errorValidator = require('../get/errorValidator.cjs');
6
+
7
+ /**
8
+ * Refreshes the Discord OAuth2 access token using a valid refresh token.
9
+ *
10
+ * This function makes a `POST` request to the Discord API's `/oauth2/token` endpoint
11
+ * to obtain a new access token and refresh token. It uses the `refresh_token` grant type.
12
+ *
13
+ * @param {Object} dsData - The Discord OAuth2 data required for token refresh.
14
+ * @param {string} dsData.client_id - Your application's client ID.
15
+ * @param {string} dsData.client_secret - Your application's client secret.
16
+ * @param {string} dsData.code - The original authorization code (optional but may be required by some flows).
17
+ * @param {string} dsData.refresh_token - The current valid refresh token.
18
+ * @param {string} dsData.redirect_uri - The redirect URI used in the original OAuth2 flow.
19
+ * @param {string} dsData.scope - The scope(s) to request (e.g., 'identify guilds').
20
+ *
21
+ * @returns {Promise<Object>} Resolves with a new token object from the Discord API:
22
+ * {
23
+ * access_token: string,
24
+ * token_type: string,
25
+ * expires_in: number,
26
+ * refresh_token: string,
27
+ * scope: string
28
+ * }
29
+ *
30
+ * @throws {Object} If the request fails, rejects with an error object containing `code` and `message`.
31
+ *
32
+ * @example
33
+ * refreshToken({
34
+ * client_id: '1234567890',
35
+ * client_secret: 'mySecret',
36
+ * code: 'optional-code',
37
+ * refresh_token: 'old-refresh-token',
38
+ * redirect_uri: 'https://myapp.com/callback',
39
+ * scope: 'identify guilds'
40
+ * })
41
+ * .then(newTokens => console.log('New Access Token:', newTokens.access_token))
42
+ * .catch(err => console.error('Failed to refresh token:', err));
43
+ */
44
+ function refreshToken(dsData) {
45
+ return new Promise(function (resolve, reject) {
46
+ // API URL
47
+ const apiURL = config.url;
48
+
49
+ // Response
50
+ json(`${apiURL}oauth2/token`, {
51
+ method: 'POST',
52
+ body: new URLSearchParams({
53
+ client_id: dsData.client_id,
54
+ client_secret: dsData.client_secret,
55
+ grant_type: 'refresh_token',
56
+ code: dsData.code,
57
+ refresh_token: dsData.refresh_token,
58
+ redirect_uri: dsData.redirect_uri,
59
+ scope: dsData.scope,
60
+ }),
61
+ headers: {
62
+ 'Content-Type': 'application/x-www-form-urlencoded',
63
+ },
64
+ })
65
+ .then((data) => {
66
+ // Error Validator
67
+ const result = errorValidator(data);
68
+ if (!result.error) resolve(result.data);
69
+ else reject(result.error);
70
+ })
71
+ .catch((err) => {
72
+ reject({ code: err.response.status, message: err.message });
73
+ });
74
+ });
75
+ }
76
+
77
+ module.exports = refreshToken;
@@ -0,0 +1,45 @@
1
+ /**
2
+ * Refreshes the Discord OAuth2 access token using a valid refresh token.
3
+ *
4
+ * This function makes a `POST` request to the Discord API's `/oauth2/token` endpoint
5
+ * to obtain a new access token and refresh token. It uses the `refresh_token` grant type.
6
+ *
7
+ * @param {Object} dsData - The Discord OAuth2 data required for token refresh.
8
+ * @param {string} dsData.client_id - Your application's client ID.
9
+ * @param {string} dsData.client_secret - Your application's client secret.
10
+ * @param {string} dsData.code - The original authorization code (optional but may be required by some flows).
11
+ * @param {string} dsData.refresh_token - The current valid refresh token.
12
+ * @param {string} dsData.redirect_uri - The redirect URI used in the original OAuth2 flow.
13
+ * @param {string} dsData.scope - The scope(s) to request (e.g., 'identify guilds').
14
+ *
15
+ * @returns {Promise<Object>} Resolves with a new token object from the Discord API:
16
+ * {
17
+ * access_token: string,
18
+ * token_type: string,
19
+ * expires_in: number,
20
+ * refresh_token: string,
21
+ * scope: string
22
+ * }
23
+ *
24
+ * @throws {Object} If the request fails, rejects with an error object containing `code` and `message`.
25
+ *
26
+ * @example
27
+ * refreshToken({
28
+ * client_id: '1234567890',
29
+ * client_secret: 'mySecret',
30
+ * code: 'optional-code',
31
+ * refresh_token: 'old-refresh-token',
32
+ * redirect_uri: 'https://myapp.com/callback',
33
+ * scope: 'identify guilds'
34
+ * })
35
+ * .then(newTokens => console.log('New Access Token:', newTokens.access_token))
36
+ * .catch(err => console.error('Failed to refresh token:', err));
37
+ */
38
+ export default function refreshToken(dsData: {
39
+ client_id: string;
40
+ client_secret: string;
41
+ code: string;
42
+ refresh_token: string;
43
+ redirect_uri: string;
44
+ scope: string;
45
+ }): Promise<Object>;