@kash-88/alerts 1.0.0 → 1.1.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 (41) hide show
  1. package/dist/src/example/getAuthorizeLink.js +1 -3
  2. package/dist/src/example/getOauthToken.js +1 -3
  3. package/dist/src/example/getUser.js +1 -3
  4. package/dist/src/example/getUserChannel.js +1 -3
  5. package/dist/src/example/updateAccessToken.js +1 -3
  6. package/dist/src/example/wsExample.js +1 -3
  7. package/dist/src/func/getAuthorizeLink.d.ts +1 -1
  8. package/dist/src/func/getAuthorizeLink.js +1 -1
  9. package/dist/src/func/getOauthToken.d.ts +1 -1
  10. package/dist/src/func/getOauthToken.js +1 -1
  11. package/dist/src/func/getPrivateToken.d.ts +2 -2
  12. package/dist/src/func/getPrivateToken.js +2 -2
  13. package/dist/src/func/getUser.d.ts +1 -1
  14. package/dist/src/func/updateAccessToken.d.ts +1 -1
  15. package/dist/src/func/updateAccessToken.js +1 -1
  16. package/dist/src/index.d.ts +8 -8
  17. package/dist/src/index.js +8 -8
  18. package/dist/src/utils.d.ts +0 -6
  19. package/dist/src/utils.js +0 -11
  20. package/dist/src/ws/CentrifugeClient.js +1 -1
  21. package/package.json +1 -1
  22. package/src/example/getAuthorizeLink.ts +0 -3
  23. package/src/example/getOauthToken.ts +0 -3
  24. package/src/example/getUser.ts +0 -3
  25. package/src/example/getUserChannel.ts +0 -3
  26. package/src/example/updateAccessToken.ts +0 -3
  27. package/src/example/wsExample.ts +0 -2
  28. package/src/index.ts +7 -7
  29. package/src/utils.ts +1 -13
  30. package/dist/example/getAuthorizeLink.d.ts +0 -1
  31. package/dist/example/getAuthorizeLink.js +0 -13
  32. package/dist/example/getOauthToken.d.ts +0 -1
  33. package/dist/example/getOauthToken.js +0 -16
  34. package/dist/example/getUser.d.ts +0 -1
  35. package/dist/example/getUser.js +0 -14
  36. package/dist/example/getUserChannel.d.ts +0 -1
  37. package/dist/example/getUserChannel.js +0 -12
  38. package/dist/example/updateAccessToken.d.ts +0 -1
  39. package/dist/example/updateAccessToken.js +0 -16
  40. package/dist/example/wsExample.d.ts +0 -1
  41. package/dist/example/wsExample.js +0 -42
@@ -1,7 +1,5 @@
1
1
  import "dotenv/config";
2
- import { getAuthorizeLink } from "../index";
3
- import { checkEnv } from "../utils";
4
- checkEnv(["CLIENT_ID", "SCOPE"]);
2
+ import { getAuthorizeLink } from "../index.js";
5
3
  const client_id = process.env.CLIENT_ID;
6
4
  const scope = process.env.SCOPE ? process.env.SCOPE.split(",") : ["oauth-user-show"];
7
5
  try {
@@ -1,7 +1,5 @@
1
1
  import "dotenv/config";
2
- import { getOauthToken } from "../index";
3
- import { checkEnv } from "../utils";
4
- checkEnv(["CLIENT_ID", "CLIENT_SECRET", "CODE"]);
2
+ import { getOauthToken } from "../index.js";
5
3
  const client_id = process.env.CLIENT_ID;
6
4
  const client_secret = process.env.CLIENT_SECRET;
7
5
  const code = process.env.CODE;
@@ -1,7 +1,5 @@
1
1
  import "dotenv/config";
2
- import { getUser } from "../index";
3
- import { checkEnv } from "../utils";
4
- checkEnv(["ACCESS_TOKEN"]);
2
+ import { getUser } from "../index.js";
5
3
  const access_token = process.env.ACCESS_TOKEN;
6
4
  (async () => {
7
5
  try {
@@ -1,7 +1,5 @@
1
1
  import "dotenv/config";
2
- import { getUserChannel } from "../index";
3
- import { checkEnv } from "../utils";
4
- checkEnv(["CLIENT_ID"]);
2
+ import { getUserChannel } from "../index.js";
5
3
  const id = process.env.CLIENT_ID;
6
4
  try {
7
5
  const channel = getUserChannel(id);
@@ -1,7 +1,5 @@
1
1
  import "dotenv/config";
2
- import { updateAccessToken } from "../index";
3
- import { checkEnv } from "../utils";
4
- checkEnv(["CLIENT_ID", "CLIENT_SECRET", "REFRESH_TOKEN"]);
2
+ import { updateAccessToken } from "../index.js";
5
3
  const client_id = process.env.CLIENT_ID;
6
4
  const client_secret = process.env.CLIENT_SECRET;
7
5
  const refresh_token = process.env.REFRESH_TOKEN;
@@ -1,7 +1,5 @@
1
1
  import "dotenv/config";
2
- import { getUser, getUserChannel, CentrifugeClient } from "../index";
3
- import { checkEnv } from "../utils";
4
- checkEnv(["CLIENT_ID", "ACCESS_TOKEN", "SOCKET_CONNECTION_TOKEN"]);
2
+ import { getUser, getUserChannel, CentrifugeClient } from "../index.js";
5
3
  const access_token = process.env.ACCESS_TOKEN;
6
4
  let isConnectToPrivate = false;
7
5
  async function main() {
@@ -1,4 +1,4 @@
1
- import { GetAuthorizeLinkData } from "../types";
1
+ import { GetAuthorizeLinkData } from "../types.js";
2
2
  /**
3
3
  * Generates an authorization link for the DonationAlerts API.
4
4
  *
@@ -1,4 +1,4 @@
1
- import { validateDataObject } from "../utils";
1
+ import { validateDataObject } from "../utils.js";
2
2
  /**
3
3
  * Generates an authorization link for the DonationAlerts API.
4
4
  *
@@ -1,4 +1,4 @@
1
- import { GetOauthData, OauthToken } from "../types";
1
+ import { GetOauthData, OauthToken } from "../types.js";
2
2
  /**
3
3
  * Exchanges an authorization code for an access token.
4
4
  *
@@ -1,5 +1,5 @@
1
1
  import axios from "axios";
2
- import { validateDataObject } from "../utils";
2
+ import { validateDataObject } from "../utils.js";
3
3
  /**
4
4
  * Exchanges an authorization code for an access token.
5
5
  *
@@ -1,9 +1,9 @@
1
- import { GetPrivateToken } from "../types";
1
+ import { GetPrivateToken } from "../types.js";
2
2
  /**
3
3
  * Gets a private token for subscribing to a DonationAlerts channel via Centrifuge.
4
4
  *
5
5
  * @example
6
- * import { connectPrivateToken } from "../index";
6
+ * import { connectPrivateToken } from "../index.js";
7
7
  *
8
8
  * // The "channel" can be obtained using the "getUserChannel" function,
9
9
  * // and the "uuidv4_client_id" is provided during authentication in WebSocket (ws).
@@ -1,10 +1,10 @@
1
1
  import axios from "axios";
2
- import { validateDataObject } from "../utils";
2
+ import { validateDataObject } from "../utils.js";
3
3
  /**
4
4
  * Gets a private token for subscribing to a DonationAlerts channel via Centrifuge.
5
5
  *
6
6
  * @example
7
- * import { connectPrivateToken } from "../index";
7
+ * import { connectPrivateToken } from "../index.js";
8
8
  *
9
9
  * // The "channel" can be obtained using the "getUserChannel" function,
10
10
  * // and the "uuidv4_client_id" is provided during authentication in WebSocket (ws).
@@ -1,4 +1,4 @@
1
- import { User } from "../types";
1
+ import { User } from "../types.js";
2
2
  /**
3
3
  * Fetches the profile information for the authenticated user.
4
4
  *
@@ -1,4 +1,4 @@
1
- import { UpdateTokenData, OauthToken } from "../types";
1
+ import { UpdateTokenData, OauthToken } from "../types.js";
2
2
  /**
3
3
  * Refreshes an access token using a refresh token.
4
4
  *
@@ -1,5 +1,5 @@
1
1
  import axios from "axios";
2
- import { validateDataObject } from "../utils";
2
+ import { validateDataObject } from "../utils.js";
3
3
  /**
4
4
  * Refreshes an access token using a refresh token.
5
5
  *
@@ -1,9 +1,9 @@
1
- import getAuthorizeLink from "./func/getAuthorizeLink";
2
- import getOauthToken from "./func/getOauthToken";
3
- import getUser from "./func/getUser";
4
- import updateAccessToken from "./func/updateAccessToken";
5
- import getUserChannel from "./func/getUserChannel";
6
- import { getPrivateToken } from "./func/getPrivateToken";
7
- import CentrifugeClient from "./ws/CentrifugeClient";
8
- export * from "./types";
1
+ import getAuthorizeLink from "./func/getAuthorizeLink.js";
2
+ import getOauthToken from "./func/getOauthToken.js";
3
+ import getUser from "./func/getUser.js";
4
+ import updateAccessToken from "./func/updateAccessToken.js";
5
+ import getUserChannel from "./func/getUserChannel.js";
6
+ import { getPrivateToken } from "./func/getPrivateToken.js";
7
+ import CentrifugeClient from "./ws/CentrifugeClient.js";
8
+ export * from "./types.js";
9
9
  export { getAuthorizeLink, getOauthToken, getUser, updateAccessToken, getUserChannel, getPrivateToken, CentrifugeClient };
package/dist/src/index.js CHANGED
@@ -1,9 +1,9 @@
1
- import getAuthorizeLink from "./func/getAuthorizeLink";
2
- import getOauthToken from "./func/getOauthToken";
3
- import getUser from "./func/getUser";
4
- import updateAccessToken from "./func/updateAccessToken";
5
- import getUserChannel from "./func/getUserChannel";
6
- import { getPrivateToken } from "./func/getPrivateToken";
7
- import CentrifugeClient from "./ws/CentrifugeClient";
8
- export * from "./types";
1
+ import getAuthorizeLink from "./func/getAuthorizeLink.js";
2
+ import getOauthToken from "./func/getOauthToken.js";
3
+ import getUser from "./func/getUser.js";
4
+ import updateAccessToken from "./func/updateAccessToken.js";
5
+ import getUserChannel from "./func/getUserChannel.js";
6
+ import { getPrivateToken } from "./func/getPrivateToken.js";
7
+ import CentrifugeClient from "./ws/CentrifugeClient.js";
8
+ export * from "./types.js";
9
9
  export { getAuthorizeLink, getOauthToken, getUser, updateAccessToken, getUserChannel, getPrivateToken, CentrifugeClient };
@@ -13,9 +13,3 @@
13
13
  * @private
14
14
  */
15
15
  export declare function validateDataObject(data: unknown, requiredKeys: string[]): asserts data is Record<string, string | number | string[]>;
16
- /**
17
- * Checks if required environment variables are present.
18
- * Throws an error with a clear message if any variable is missing.
19
- * @param {string[]} keys - List of required environment variable names.
20
- */
21
- export declare function checkEnv(keys: string[]): void;
package/dist/src/utils.js CHANGED
@@ -35,14 +35,3 @@ export function validateDataObject(data, requiredKeys) {
35
35
  }
36
36
  }
37
37
  }
38
- /**
39
- * Checks if required environment variables are present.
40
- * Throws an error with a clear message if any variable is missing.
41
- * @param {string[]} keys - List of required environment variable names.
42
- */
43
- export function checkEnv(keys) {
44
- const missing = keys.filter((key) => !process.env[key]);
45
- if (missing.length > 0) {
46
- throw new Error(`Missing required environment variables: ${missing.join(", ")}`);
47
- }
48
- }
@@ -1,4 +1,4 @@
1
- import { getPrivateToken } from "../index";
1
+ import { getPrivateToken } from "../index.js";
2
2
  import { WebSocket } from "ws";
3
3
  import { EventEmitter } from "events";
4
4
  // --- Configuration ---
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@kash-88/alerts",
3
- "version": "1.0.0",
3
+ "version": "1.1.0",
4
4
  "description": "DonationAlerts API for Node.js",
5
5
  "type": "module",
6
6
  "keywords": [
@@ -1,8 +1,5 @@
1
1
  import "dotenv/config";
2
2
  import { getAuthorizeLink } from "@kash-88/alerts";
3
- import { checkEnv } from "@utils";
4
-
5
- checkEnv(["CLIENT_ID", "SCOPE"]);
6
3
 
7
4
  const client_id = process.env.CLIENT_ID!;
8
5
  const scope = process.env.SCOPE ? process.env.SCOPE.split(",") : ["oauth-user-show"];
@@ -1,8 +1,5 @@
1
1
  import "dotenv/config";
2
2
  import { getOauthToken } from "@kash-88/alerts";
3
- import { checkEnv } from "@utils";
4
-
5
- checkEnv(["CLIENT_ID", "CLIENT_SECRET", "CODE"]);
6
3
 
7
4
  const client_id = process.env.CLIENT_ID!;
8
5
  const client_secret = process.env.CLIENT_SECRET!;
@@ -1,8 +1,5 @@
1
1
  import "dotenv/config";
2
2
  import { getUser } from "@kash-88/alerts";
3
- import { checkEnv } from "@utils";
4
-
5
- checkEnv(["ACCESS_TOKEN"]);
6
3
 
7
4
  const access_token = process.env.ACCESS_TOKEN!;
8
5
 
@@ -1,8 +1,5 @@
1
1
  import "dotenv/config";
2
2
  import { getUserChannel } from "@kash-88/alerts";
3
- import { checkEnv } from "@utils";
4
-
5
- checkEnv(["CLIENT_ID"]);
6
3
 
7
4
  const id = process.env.CLIENT_ID!;
8
5
 
@@ -1,8 +1,5 @@
1
1
  import "dotenv/config";
2
2
  import { updateAccessToken } from "@kash-88/alerts";
3
- import { checkEnv } from "@utils";
4
-
5
- checkEnv(["CLIENT_ID", "CLIENT_SECRET", "REFRESH_TOKEN"]);
6
3
 
7
4
  const client_id = process.env.CLIENT_ID!;
8
5
  const client_secret = process.env.CLIENT_SECRET!;
@@ -1,9 +1,7 @@
1
1
  import "dotenv/config";
2
2
 
3
3
  import { getUser, getUserChannel, CentrifugeClient } from "@kash-88/alerts";
4
- import { checkEnv } from "@utils";
5
4
 
6
- checkEnv(["CLIENT_ID", "ACCESS_TOKEN", "SOCKET_CONNECTION_TOKEN"]);
7
5
  const access_token = process.env.ACCESS_TOKEN!;
8
6
  let isConnectToPrivate = false;
9
7
 
package/src/index.ts CHANGED
@@ -1,10 +1,10 @@
1
- import getAuthorizeLink from "@function/getAuthorizeLink";
2
- import getOauthToken from "@function/getOauthToken";
3
- import getUser from "@function/getUser";
4
- import updateAccessToken from "@function/updateAccessToken";
5
- import getUserChannel from "@function/getUserChannel";
6
- import { getPrivateToken } from "@function/getPrivateToken";
7
- import CentrifugeClient from "@ws/CentrifugeClient";
1
+ import getAuthorizeLink from "@function/getAuthorizeLink.js";
2
+ import getOauthToken from "@function/getOauthToken.js";
3
+ import getUser from "@function/getUser.js";
4
+ import updateAccessToken from "@function/updateAccessToken.js";
5
+ import getUserChannel from "@function/getUserChannel.js";
6
+ import { getPrivateToken } from "@function/getPrivateToken.js";
7
+ import CentrifugeClient from "@ws/CentrifugeClient.js";
8
8
 
9
9
  export * from "@type";
10
10
 
package/src/utils.ts CHANGED
@@ -41,16 +41,4 @@ export function validateDataObject(data: unknown, requiredKeys: string[]): asser
41
41
  throw new Error(`"${key}" must be a string or a number.`);
42
42
  }
43
43
  }
44
- }
45
-
46
- /**
47
- * Checks if required environment variables are present.
48
- * Throws an error with a clear message if any variable is missing.
49
- * @param {string[]} keys - List of required environment variable names.
50
- */
51
- export function checkEnv(keys: string[]): void {
52
- const missing = keys.filter((key) => !process.env[key]);
53
- if (missing.length > 0) {
54
- throw new Error(`Missing required environment variables: ${missing.join(", ")}`);
55
- }
56
- }
44
+ }
@@ -1 +0,0 @@
1
- import 'dotenv/config';
@@ -1,13 +0,0 @@
1
- import 'dotenv/config';
2
- import { getAuthorizeLink } from '../src/index';
3
- import { checkEnv } from '../src/utils';
4
- checkEnv(['CLIENT_ID', 'SCOPE']);
5
- const client_id = process.env.CLIENT_ID;
6
- const scope = process.env.SCOPE ? process.env.SCOPE.split(',') : ['oauth-user-show'];
7
- try {
8
- const link = getAuthorizeLink({ client_id, scope });
9
- console.log('Authorize link:', link);
10
- }
11
- catch (error) {
12
- console.error('Error:', error.message);
13
- }
@@ -1 +0,0 @@
1
- import 'dotenv/config';
@@ -1,16 +0,0 @@
1
- import 'dotenv/config';
2
- import { getOauthToken } from '../src/index';
3
- import { checkEnv } from '../src/utils';
4
- checkEnv(['CLIENT_ID', 'CLIENT_SECRET', 'CODE']);
5
- const client_id = process.env.CLIENT_ID;
6
- const client_secret = process.env.CLIENT_SECRET;
7
- const code = process.env.CODE;
8
- (async () => {
9
- try {
10
- const token = await getOauthToken({ client_id, client_secret, code });
11
- console.log('Oauth token:', token);
12
- }
13
- catch (error) {
14
- console.error('Error:', error.message);
15
- }
16
- })();
@@ -1 +0,0 @@
1
- import 'dotenv/config';
@@ -1,14 +0,0 @@
1
- import 'dotenv/config';
2
- import { getUser } from '../src/index';
3
- import { checkEnv } from '../src/utils';
4
- checkEnv(['ACCESS_TOKEN']);
5
- const access_token = process.env.ACCESS_TOKEN;
6
- (async () => {
7
- try {
8
- const user = await getUser(access_token);
9
- console.log('User:', user);
10
- }
11
- catch (error) {
12
- console.error('Error:', error.message);
13
- }
14
- })();
@@ -1 +0,0 @@
1
- import 'dotenv/config';
@@ -1,12 +0,0 @@
1
- import 'dotenv/config';
2
- import { getUserChannel } from '../src/index';
3
- import { checkEnv } from '../src/utils';
4
- checkEnv(['CLIENT_ID']);
5
- const id = process.env.CLIENT_ID;
6
- try {
7
- const channel = getUserChannel(id);
8
- console.log('User channel:', channel);
9
- }
10
- catch (error) {
11
- console.error('Error:', error.message);
12
- }
@@ -1 +0,0 @@
1
- import 'dotenv/config';
@@ -1,16 +0,0 @@
1
- import 'dotenv/config';
2
- import { updateAccessToken } from '../src/index';
3
- import { checkEnv } from '../src/utils';
4
- checkEnv(['CLIENT_ID', 'CLIENT_SECRET', 'REFRESH_TOKEN']);
5
- const client_id = process.env.CLIENT_ID;
6
- const client_secret = process.env.CLIENT_SECRET;
7
- const refresh_token = process.env.REFRESH_TOKEN;
8
- (async () => {
9
- try {
10
- const token = await updateAccessToken({ client_id, client_secret, refresh_token });
11
- console.log('Updated token:', token);
12
- }
13
- catch (error) {
14
- console.error('Error:', error.message);
15
- }
16
- })();
@@ -1 +0,0 @@
1
- import 'dotenv/config';
@@ -1,42 +0,0 @@
1
- import 'dotenv/config';
2
- import { getUser, getUserChannel, CentrifugeClient } from '../src/index';
3
- import { checkEnv } from '../src/utils';
4
- checkEnv(['CLIENT_ID', 'ACCESS_TOKEN', 'SOCKET_CONNECTION_TOKEN']);
5
- const access_token = process.env.ACCESS_TOKEN;
6
- let isConnectToPrivate = false;
7
- async function main() {
8
- try {
9
- const user = await getUser(access_token);
10
- const channel = getUserChannel(user.id);
11
- const socket_connection_token = String(process.env.SOCKET_CONNECTION_TOKEN);
12
- const client = new CentrifugeClient({
13
- channel,
14
- socket_connection_token,
15
- access_token
16
- });
17
- const ws = client.createConnection();
18
- ws.on('open', async () => {
19
- console.log('WebSocket соединение открыто');
20
- client.confirmConnection(socket_connection_token);
21
- });
22
- ws.on('message', (message) => {
23
- const srt = message.toString('utf8');
24
- const json = JSON.parse(srt);
25
- if (json.id = 1 && !isConnectToPrivate) {
26
- isConnectToPrivate = true;
27
- return client.connectPrivateToken(channel, json.result.client);
28
- }
29
- console.log(srt);
30
- });
31
- ws.on('close', () => {
32
- console.log('WebSocket соединение закрыто');
33
- });
34
- ws.on('error', (err) => {
35
- console.error('Ошибка WebSocket:', err);
36
- });
37
- }
38
- catch (error) {
39
- console.error('Ошибка:', error.message);
40
- }
41
- }
42
- main();