astrocoins 2.2.0 → 2.4.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.
- package/README.md +45 -6
- package/dist/client.d.ts +6 -1
- package/dist/client.js +6 -8
- package/dist/client.js.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -2,6 +2,21 @@
|
|
|
2
2
|
|
|
3
3
|
Node.js / TypeScript client for the AstroCoins API.
|
|
4
4
|
|
|
5
|
+
## How coins actually move
|
|
6
|
+
|
|
7
|
+
Your API key is linked to a real Discord account (its "owner"). That
|
|
8
|
+
account's own AstroCoins balance is what backs everything this library
|
|
9
|
+
does — there's no free coin generator here.
|
|
10
|
+
|
|
11
|
+
- **`addCoins` ("give")** — transfers coins from **the API key owner's own
|
|
12
|
+
balance** to the target user. The owner must actually have enough
|
|
13
|
+
balance, and can't give coins to themselves.
|
|
14
|
+
- **`transfer`** — moves coins directly between any two users' real
|
|
15
|
+
balances, same as AstroBot's own `/transfer` command.
|
|
16
|
+
|
|
17
|
+
There's no "take back" method — a key can give and transfer, but never
|
|
18
|
+
remove coins from a user's balance on its own.
|
|
19
|
+
|
|
5
20
|
## Install
|
|
6
21
|
|
|
7
22
|
```bash
|
|
@@ -24,21 +39,20 @@ const client = new AstroCoinsClient({
|
|
|
24
39
|
const balance = await client.getBalance(123456789);
|
|
25
40
|
console.log(balance);
|
|
26
41
|
|
|
27
|
-
|
|
28
|
-
|
|
42
|
+
// Give coins — spends from the key owner's own balance
|
|
29
43
|
try {
|
|
30
|
-
await client.
|
|
44
|
+
await client.addCoins(123456789, 50, "daily reward");
|
|
31
45
|
} catch (err) {
|
|
32
46
|
if (err instanceof InsufficientFundsError) {
|
|
33
|
-
console.log(`
|
|
47
|
+
console.log(`Owner only has ${err.available}, needed ${err.requested}`);
|
|
34
48
|
}
|
|
35
49
|
}
|
|
36
50
|
|
|
37
|
-
// Transfer coins between two users
|
|
51
|
+
// Transfer coins directly between two users
|
|
38
52
|
const result = await client.transfer(123456789, 987654321, 25, "trade");
|
|
39
53
|
console.log(result.from_balance, result.to_balance);
|
|
40
54
|
|
|
41
|
-
// Per-key blacklist — blocks a user from
|
|
55
|
+
// Per-key blacklist — blocks a user from give/transfer through this key only
|
|
42
56
|
await client.blacklistUser(123456789, "chargeback abuse");
|
|
43
57
|
const blocked = await client.isBlacklisted(123456789);
|
|
44
58
|
await client.unblacklistUser(123456789);
|
|
@@ -52,4 +66,29 @@ try {
|
|
|
52
66
|
}
|
|
53
67
|
```
|
|
54
68
|
|
|
69
|
+
## Methods
|
|
70
|
+
|
|
71
|
+
| Method | Description |
|
|
72
|
+
|---|---|
|
|
73
|
+
| `getBalance(userId)` | Returns the user's real AstroCoins balance |
|
|
74
|
+
| `addCoins(userId, amount, reason?)` | "Give" — transfers from the key owner's balance to the user |
|
|
75
|
+
| `transfer(fromUserId, toUserId, amount, reason?)` | Moves coins directly between two users |
|
|
76
|
+
| `blacklistUser(userId, reason?)` | Blacklists a user for this key only |
|
|
77
|
+
| `unblacklistUser(userId)` | Removes a user from this key's blacklist |
|
|
78
|
+
| `isBlacklisted(userId)` | Checks whether a user is blacklisted for this key |
|
|
79
|
+
| `listBlacklist()` | Lists every blacklist entry for this key |
|
|
80
|
+
|
|
81
|
+
## Exceptions
|
|
82
|
+
|
|
83
|
+
All exceptions extend `AstroCoinsError`.
|
|
84
|
+
|
|
85
|
+
| Exception | Thrown when |
|
|
86
|
+
|---|---|
|
|
87
|
+
| `ConfigurationError` | No API key was provided or found in the environment |
|
|
88
|
+
| `AuthenticationError` | The API key is invalid or has been revoked |
|
|
89
|
+
| `InsufficientFundsError` | A transfer or give would exceed the payer's real balance |
|
|
90
|
+
| `BlacklistedError` | One of the users involved is blacklisted for this key |
|
|
91
|
+
| `RateLimitError` | This key's daily grant limit has been used up |
|
|
92
|
+
| `APIError` | Any other non-2xx response from the server |
|
|
93
|
+
|
|
55
94
|
Works with CommonJS `require("astrocoins")` too, since it compiles to CommonJS.
|
package/dist/client.d.ts
CHANGED
|
@@ -27,8 +27,13 @@ export declare class AstroCoinsClient {
|
|
|
27
27
|
private safeJson;
|
|
28
28
|
private safeText;
|
|
29
29
|
getBalance(userId: number): Promise<number>;
|
|
30
|
+
/**
|
|
31
|
+
* 'give' — transfers coins from the API key owner's own AstroCoins
|
|
32
|
+
* balance to the target user. This is a real transfer, not free coins:
|
|
33
|
+
* the key owner must have enough balance, and can't give to themselves.
|
|
34
|
+
* Returns the target user's new balance.
|
|
35
|
+
*/
|
|
30
36
|
addCoins(userId: number, amount: number, reason?: string): Promise<number>;
|
|
31
|
-
removeCoins(userId: number, amount: number, reason?: string): Promise<number>;
|
|
32
37
|
/**
|
|
33
38
|
* Moves coins from one user to another within this key's wallet space.
|
|
34
39
|
* Throws BlacklistedError if either side is blacklisted for this key,
|
package/dist/client.js
CHANGED
|
@@ -93,6 +93,12 @@ class AstroCoinsClient {
|
|
|
93
93
|
const data = await this.request("GET", `/balance/${Math.trunc(userId)}`);
|
|
94
94
|
return data.balance ?? 0;
|
|
95
95
|
}
|
|
96
|
+
/**
|
|
97
|
+
* 'give' — transfers coins from the API key owner's own AstroCoins
|
|
98
|
+
* balance to the target user. This is a real transfer, not free coins:
|
|
99
|
+
* the key owner must have enough balance, and can't give to themselves.
|
|
100
|
+
* Returns the target user's new balance.
|
|
101
|
+
*/
|
|
96
102
|
async addCoins(userId, amount, reason = "") {
|
|
97
103
|
const data = await this.request("POST", "/add", {
|
|
98
104
|
user_id: Math.trunc(userId),
|
|
@@ -101,14 +107,6 @@ class AstroCoinsClient {
|
|
|
101
107
|
});
|
|
102
108
|
return data.balance ?? 0;
|
|
103
109
|
}
|
|
104
|
-
async removeCoins(userId, amount, reason = "") {
|
|
105
|
-
const data = await this.request("POST", "/remove", {
|
|
106
|
-
user_id: Math.trunc(userId),
|
|
107
|
-
amount: Math.trunc(amount),
|
|
108
|
-
reason,
|
|
109
|
-
});
|
|
110
|
-
return data.balance ?? 0;
|
|
111
|
-
}
|
|
112
110
|
/**
|
|
113
111
|
* Moves coins from one user to another within this key's wallet space.
|
|
114
112
|
* Throws BlacklistedError if either side is blacklisted for this key,
|
package/dist/client.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":";;;AAAA,qCAOkB;AAElB,MAAM,WAAW,GAAG,oBAAoB,CAAC;AACzC,MAAM,YAAY,GAAG,qBAAqB,CAAC;AAE3C,MAAM,gBAAgB,GAAG,uCAAuC,CAAC;AA6CjE,MAAa,gBAAgB;IAK3B,YAAY,UAAmC,EAAE;QAC/C,MAAM,MAAM,GACV,OAAO,CAAC,MAAM;YACd,CAAC,OAAO,OAAO,KAAK,WAAW,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;QAE1E,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,IAAI,2BAAkB,CAC1B,qDAAqD;gBACnD,GAAG,WAAW,2CAA2C;gBACzD,mCAAmC,CACtC,CAAC;QACJ,CAAC;QACD,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QAErB,MAAM,OAAO,GACX,OAAO,CAAC,OAAO;YACf,CAAC,OAAO,OAAO,KAAK,WAAW,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;YACxE,gBAAgB,CAAC;QACnB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;QAE3C,IAAI,CAAC,SAAS,GAAG,OAAO,CAAC,SAAS,IAAI,IAAI,CAAC;IAC7C,CAAC;IAEO,KAAK,CAAC,OAAO,CACnB,MAAc,EACd,IAAY,EACZ,IAAkB;QAElB,MAAM,UAAU,GAAG,IAAI,eAAe,EAAE,CAAC;QACzC,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,UAAU,CAAC,KAAK,EAAE,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;QAEnE,IAAI,IAAc,CAAC;QACnB,IAAI,CAAC;YACH,IAAI,GAAG,MAAM,KAAK,CAAC,GAAG,IAAI,CAAC,OAAO,GAAG,IAAI,EAAE,EAAE;gBAC3C,MAAM;gBACN,OAAO,EAAE;oBACP,WAAW,EAAE,IAAI,CAAC,MAAM;oBACxB,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,kBAAkB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;iBACxD;gBACD,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS;gBAC7C,MAAM,EAAE,UAAU,CAAC,MAAM;aAC1B,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,MAAM,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YAChE,MAAM,IAAI,iBAAQ,CAAC,CAAC,EAAE,+CAA+C,MAAM,EAAE,CAAC,CAAC;QACjF,CAAC;gBAAS,CAAC;YACT,YAAY,CAAC,KAAK,CAAC,CAAC;QACtB,CAAC;QAED,IAAI,IAAI,CAAC,MAAM,KAAK,GAAG,EAAE,CAAC;YACxB,MAAM,IAAI,4BAAmB,CAAC,6CAA6C,CAAC,CAAC;QAC/E,CAAC;QACD,IAAI,IAAI,CAAC,MAAM,KAAK,GAAG,EAAE,CAAC;YACxB,MAAM,IAAI,uBAAc,CAAC,6CAA6C,CAAC,CAAC;QAC1E,CAAC;QACD,IAAI,IAAI,CAAC,MAAM,KAAK,GAAG,EAAE,CAAC;YACxB,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;YAC1C,MAAM,SAAS,GACZ,IAAqF;gBACpF,EAAE,OAAO;gBACV,IAA8C,EAAE,YAAY;gBAC5D,IAA4C,EAAE,UAAU,CAAC;YAC5D,MAAM,IAAI,yBAAgB,CAAC,SAAS,EAAG,OAAO,CAAC,KAAgB,IAAI,EAAE,CAAC,CAAC;QACzE,CAAC;QACD,IAAI,IAAI,CAAC,MAAM,KAAK,GAAG,IAAI,IAAI,IAAI,QAAQ,IAAI,IAAI,EAAE,CAAC;YACpD,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;YAC1C,IAAI,iBAAiB,IAAI,OAAO,EAAE,CAAC;gBACjC,MAAM,SAAS,GACZ,IAA6B,CAAC,OAAO,IAAK,IAAkC,CAAC,YAAY,CAAC;gBAC7F,MAAM,IAAI,+BAAsB,CAC9B,SAAmB,EACnB,IAAI,CAAC,MAAM,IAAI,CAAC,EACf,OAAO,CAAC,eAA0B,IAAI,CAAC,CACzC,CAAC;YACJ,CAAC;YACD,MAAM,MAAM,GAAI,OAAO,CAAC,KAAgB,IAAK,OAAO,CAAC,MAAiB,IAAI,CAAC,MAAM,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC;YACtG,MAAM,IAAI,iBAAQ,CAAC,IAAI,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QAC1C,CAAC;QACD,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC;YACb,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;YAC1C,MAAM,MAAM,GAAI,OAAO,CAAC,KAAgB,IAAK,OAAO,CAAC,MAAiB,IAAI,CAAC,MAAM,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC;YACtG,MAAM,IAAI,iBAAQ,CAAC,IAAI,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QAC1C,CAAC;QAED,OAAO,CAAC,MAAM,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAM,CAAC;IAC1C,CAAC;IAEO,KAAK,CAAC,QAAQ,CAAC,IAAc;QACnC,IAAI,CAAC;YACH,OAAO,CAAC,MAAM,IAAI,CAAC,KAAK,EAAE,CAAC,IAAI,EAAE,CAA4B,CAAC;QAChE,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,EAAE,CAAC;QACZ,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,QAAQ,CAAC,IAAc;QACnC,IAAI,CAAC;YACH,OAAO,MAAM,IAAI,CAAC,IAAI,EAAE,CAAC;QAC3B,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,EAAE,CAAC;QACZ,CAAC;IACH,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,MAAc;QAC7B,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,OAAO,CAC7B,KAAK,EACL,YAAY,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CACjC,CAAC;QACF,OAAO,IAAI,CAAC,OAAO,IAAI,CAAC,CAAC;IAC3B,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,QAAQ,CAAC,MAAc,EAAE,MAAc,EAAE,MAAM,GAAG,EAAE;QACxD,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,OAAO,CAAuB,MAAM,EAAE,MAAM,EAAE;YACpE,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC;YAC3B,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC;YAC1B,MAAM;SACP,CAAC,CAAC;QACH,OAAO,IAAI,CAAC,OAAO,IAAI,CAAC,CAAC;IAC3B,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,QAAQ,CACZ,UAAkB,EAClB,QAAgB,EAChB,MAAc,EACd,MAAM,GAAG,EAAE;QAEX,OAAO,IAAI,CAAC,OAAO,CAAiB,MAAM,EAAE,WAAW,EAAE;YACvD,YAAY,EAAE,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC;YACpC,UAAU,EAAE,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC;YAChC,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC;YAC1B,MAAM;SACP,CAAC,CAAC;IACL,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,aAAa,CAAC,MAAc,EAAE,MAAM,GAAG,EAAE;QAC7C,MAAM,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,YAAY,EAAE;YACvC,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC;YAC3B,MAAM;SACP,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,eAAe,CAAC,MAAc;QAClC,MAAM,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,cAAc,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;IACnE,CAAC;IAED,KAAK,CAAC,aAAa,CAAC,MAAc;QAChC,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,OAAO,CAC7B,KAAK,EACL,cAAc,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CACnC,CAAC;QACF,OAAO,IAAI,CAAC,WAAW,IAAI,KAAK,CAAC;IACnC,CAAC;IAED,kDAAkD;IAClD,KAAK,CAAC,aAAa;QACjB,OAAO,IAAI,CAAC,OAAO,CAAmB,KAAK,EAAE,YAAY,CAAC,CAAC;IAC7D,CAAC;CACF;AAlLD,4CAkLC"}
|