@reyaxyz/community-sdk 0.41.12 → 0.41.14
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/dist/modules/discord/index.js +78 -12
- package/dist/modules/discord/index.js.map +1 -1
- package/dist/modules/discord/types.js.map +1 -1
- package/dist/types/modules/discord/index.d.ts.map +1 -1
- package/dist/types/modules/discord/types.d.ts +1 -1
- package/dist/types/modules/discord/types.d.ts.map +1 -1
- package/package.json +4 -4
- package/src/modules/discord/index.ts +67 -16
- package/src/modules/discord/types.ts +1 -0
|
@@ -68,7 +68,7 @@ var DiscordModule = /** @class */ (function (_super) {
|
|
|
68
68
|
}
|
|
69
69
|
DiscordModule.prototype.linkDiscord = function (params) {
|
|
70
70
|
return __awaiter(this, void 0, void 0, function () {
|
|
71
|
-
var signerAddress, signature, error_1, formData, uri;
|
|
71
|
+
var signerAddress, signature, error_1, formData, uri, response, error_2;
|
|
72
72
|
return __generator(this, function (_a) {
|
|
73
73
|
switch (_a.label) {
|
|
74
74
|
case 0: return [4 /*yield*/, params.signer.getAddress()];
|
|
@@ -90,24 +90,82 @@ var DiscordModule = /** @class */ (function (_super) {
|
|
|
90
90
|
formData.append('signature', signature);
|
|
91
91
|
formData.append('discordAccessToken', params.discordAccessToken);
|
|
92
92
|
uri = "/api/discord/link";
|
|
93
|
-
|
|
93
|
+
_a.label = 6;
|
|
94
|
+
case 6:
|
|
95
|
+
_a.trys.push([6, 8, , 9]);
|
|
96
|
+
return [4 /*yield*/, this.post(uri, undefined, formData, undefined)];
|
|
97
|
+
case 7:
|
|
98
|
+
response = _a.sent();
|
|
99
|
+
return [2 /*return*/, response];
|
|
100
|
+
case 8:
|
|
101
|
+
error_2 = _a.sent();
|
|
102
|
+
if (isApiErrorResponse(error_2)) {
|
|
103
|
+
throw new Error(error_2.response.data.error ||
|
|
104
|
+
'An error occurred while linking Discord');
|
|
105
|
+
}
|
|
106
|
+
throw new Error('An unknown error occurred while linking Discord');
|
|
107
|
+
case 9: return [2 /*return*/];
|
|
94
108
|
}
|
|
95
109
|
});
|
|
96
110
|
});
|
|
97
111
|
};
|
|
98
112
|
DiscordModule.prototype.unlinkDiscord = function (params) {
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
113
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
114
|
+
var formData, uri, response, error_3;
|
|
115
|
+
return __generator(this, function (_a) {
|
|
116
|
+
switch (_a.label) {
|
|
117
|
+
case 0:
|
|
118
|
+
formData = new FormData();
|
|
119
|
+
formData.append('address', params.address);
|
|
120
|
+
formData.append('discordAccessToken', params.discordAccessToken);
|
|
121
|
+
uri = "/api/discord/unlink";
|
|
122
|
+
_a.label = 1;
|
|
123
|
+
case 1:
|
|
124
|
+
_a.trys.push([1, 3, , 4]);
|
|
125
|
+
return [4 /*yield*/, this.delete(uri, undefined, formData, undefined)];
|
|
126
|
+
case 2:
|
|
127
|
+
response = _a.sent();
|
|
128
|
+
return [2 /*return*/, response];
|
|
129
|
+
case 3:
|
|
130
|
+
error_3 = _a.sent();
|
|
131
|
+
if (isApiErrorResponse(error_3)) {
|
|
132
|
+
throw new Error(error_3.response.data.error ||
|
|
133
|
+
'An error occurred while unlinking Discord');
|
|
134
|
+
}
|
|
135
|
+
throw new Error('An unknown error occurred while unlinking Discord');
|
|
136
|
+
case 4: return [2 /*return*/];
|
|
137
|
+
}
|
|
138
|
+
});
|
|
139
|
+
});
|
|
104
140
|
};
|
|
105
141
|
DiscordModule.prototype.claimDiscordRank = function (params) {
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
142
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
143
|
+
var formData, uri, response, error_4;
|
|
144
|
+
return __generator(this, function (_a) {
|
|
145
|
+
switch (_a.label) {
|
|
146
|
+
case 0:
|
|
147
|
+
formData = new FormData();
|
|
148
|
+
formData.append('address', params.address);
|
|
149
|
+
formData.append('discordAccessToken', params.discordAccessToken);
|
|
150
|
+
uri = "/api/discord/claim-rank";
|
|
151
|
+
_a.label = 1;
|
|
152
|
+
case 1:
|
|
153
|
+
_a.trys.push([1, 3, , 4]);
|
|
154
|
+
return [4 /*yield*/, this.post(uri, undefined, formData, undefined)];
|
|
155
|
+
case 2:
|
|
156
|
+
response = _a.sent();
|
|
157
|
+
return [2 /*return*/, response];
|
|
158
|
+
case 3:
|
|
159
|
+
error_4 = _a.sent();
|
|
160
|
+
if (isApiErrorResponse(error_4)) {
|
|
161
|
+
throw new Error(error_4.response.data.error ||
|
|
162
|
+
'An error occurred while claiming Discord rank');
|
|
163
|
+
}
|
|
164
|
+
throw new Error('An unknown error occurred while claiming Discord rank');
|
|
165
|
+
case 4: return [2 /*return*/];
|
|
166
|
+
}
|
|
167
|
+
});
|
|
168
|
+
});
|
|
111
169
|
};
|
|
112
170
|
DiscordModule.prototype.isDiscordLinked = function (params) {
|
|
113
171
|
return __awaiter(this, void 0, void 0, function () {
|
|
@@ -145,4 +203,12 @@ var DiscordModule = /** @class */ (function (_super) {
|
|
|
145
203
|
return DiscordModule;
|
|
146
204
|
}(common_1.RestClient));
|
|
147
205
|
exports.default = DiscordModule;
|
|
206
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
207
|
+
function isApiErrorResponse(error) {
|
|
208
|
+
return (error &&
|
|
209
|
+
error.response &&
|
|
210
|
+
typeof error.response.status === 'number' &&
|
|
211
|
+
error.response.data &&
|
|
212
|
+
typeof error.response.data.error === 'string');
|
|
213
|
+
}
|
|
148
214
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"/","sources":["modules/discord/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,0CAAwE;AAcxE;IAA2C,iCAAU;IAGnD,uBAAY,MAAc,EAAE,cAAuB;QACjD,YAAA,MAAK,YAAC,MAAM,CAAC,SAAC;QAHhB,oBAAc,GAAY,KAAK,CAAC;QAI9B,KAAI,CAAC,cAAc,GAAG,cAAc,CAAC;;IACvC,CAAC;IAGK,mCAAW,GAAX,UAAY,MAAyB;;;;;4BAEvC,qBAAM,MAAM,CAAC,MAAM,CAAC,UAAU,EAAE,EAAA;;wBAD5B,aAAa,GAAG,CACpB,SAAgC,CACjC,CAAC,WAAW,EAAa;;;;wBAIZ,qBAAM,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,aAAa,CAAC,EAAA;;wBAA1D,SAAS,GAAG,SAA8C,CAAC;;;;wBAE3D,MAAM,IAAI,KAAK,CAAC,uBAAuB,CAAC,CAAC;;wBAGrC,QAAQ,GAAG,IAAI,QAAQ,EAAE,CAAC;wBAChC,QAAQ,CAAC,MAAM,CAAC,SAAS,EAAE,aAAa,CAAC,CAAC;wBAC1C,QAAQ,CAAC,MAAM,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC;wBACxC,QAAQ,CAAC,MAAM,CAAC,oBAAoB,EAAE,MAAM,CAAC,kBAAkB,CAAC,CAAC;wBAE3D,GAAG,GAAG,mBAAmB,CAAC
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"/","sources":["modules/discord/index.ts"],"names":[],"mappings":"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","sourcesContent":["import { Address, Loggable, Logger, RestClient } from '@reyaxyz/common';\nimport {\n IsDiscordLinkedResult,\n IsDiscordLinkedParams,\n LinkDiscordParams,\n LinkDiscordResult,\n UnlinkDiscordParams,\n UnlinkDiscordResult,\n ClaimDiscordRankParams,\n ClaimDiscordRankResult,\n IsDiscordRankClaimedParams,\n IsDiscordRankClaimedResult,\n ApiErrorResponse,\n} from './types';\nexport default class DiscordModule extends RestClient implements Loggable {\n loggingEnabled: boolean = false;\n\n constructor(apiUrl: string, loggingEnabled: boolean) {\n super(apiUrl);\n this.loggingEnabled = loggingEnabled;\n }\n\n @Logger('DiscordModule.linkDiscord')\n async linkDiscord(params: LinkDiscordParams): Promise<LinkDiscordResult> {\n const signerAddress = (\n await params.signer.getAddress()\n ).toLowerCase() as Address;\n\n let signature;\n try {\n signature = await params.signer.signMessage(signerAddress);\n } catch (error) {\n throw new Error('Error signing message');\n }\n\n const formData = new FormData();\n formData.append('address', signerAddress);\n formData.append('signature', signature);\n formData.append('discordAccessToken', params.discordAccessToken);\n\n const uri = `/api/discord/link`;\n try {\n const response = await this.post<LinkDiscordResult>(\n uri,\n undefined,\n formData,\n undefined,\n );\n return response;\n } catch (error) {\n if (isApiErrorResponse(error)) {\n throw new Error(\n error.response.data.error ||\n 'An error occurred while linking Discord',\n );\n }\n throw new Error('An unknown error occurred while linking Discord');\n }\n }\n\n @Logger('DiscordModule.unlinkDiscord')\n async unlinkDiscord(\n params: UnlinkDiscordParams,\n ): Promise<UnlinkDiscordResult> {\n const formData = new FormData();\n formData.append('address', params.address);\n formData.append('discordAccessToken', params.discordAccessToken);\n\n const uri = `/api/discord/unlink`;\n try {\n const response = await this.delete<UnlinkDiscordResult>(\n uri,\n undefined,\n formData,\n undefined,\n );\n return response;\n } catch (error) {\n if (isApiErrorResponse(error)) {\n throw new Error(\n error.response.data.error ||\n 'An error occurred while unlinking Discord',\n );\n }\n throw new Error('An unknown error occurred while unlinking Discord');\n }\n }\n\n @Logger('DiscordModule.claimDiscordRank')\n async claimDiscordRank(\n params: ClaimDiscordRankParams,\n ): Promise<ClaimDiscordRankResult> {\n const formData = new FormData();\n formData.append('address', params.address);\n formData.append('discordAccessToken', params.discordAccessToken);\n\n const uri = `/api/discord/claim-rank`;\n\n try {\n const response = await this.post<ClaimDiscordRankResult>(\n uri,\n undefined,\n formData,\n undefined,\n );\n return response;\n } catch (error) {\n if (isApiErrorResponse(error)) {\n throw new Error(\n error.response.data.error ||\n 'An error occurred while claiming Discord rank',\n );\n }\n throw new Error('An unknown error occurred while claiming Discord rank');\n }\n }\n\n @Logger('DiscordModule.isDiscordLinked')\n async isDiscordLinked(\n params: IsDiscordLinkedParams,\n ): Promise<IsDiscordLinkedResult> {\n const uri = `/api/discord/is-linked/${params.address}`;\n return this.get<IsDiscordLinkedResult>(uri);\n }\n\n @Logger('DiscordModule.isDiscordRankClaimed')\n async isDiscordRankClaimed(\n params: IsDiscordRankClaimedParams,\n ): Promise<IsDiscordRankClaimedResult> {\n const uri = `/api/discord/is-rank-claimed/${params.address}`;\n return this.get<IsDiscordRankClaimedResult>(uri);\n }\n}\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nfunction isApiErrorResponse(error: any): error is ApiErrorResponse {\n return (\n error &&\n error.response &&\n typeof error.response.status === 'number' &&\n error.response.data &&\n typeof error.response.data.error === 'string'\n );\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"/","sources":["modules/discord/types.ts"],"names":[],"mappings":"","sourcesContent":["export {\n IsDiscordLinkedParams,\n IsDiscordLinkedResult,\n LinkDiscordParams,\n LinkDiscordResult,\n UnlinkDiscordParams,\n UnlinkDiscordResult,\n ClaimDiscordRankParams,\n ClaimDiscordRankResult,\n IsDiscordRankClaimedParams,\n IsDiscordRankClaimedResult,\n} from '@reyaxyz/common';\n"]}
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"/","sources":["modules/discord/types.ts"],"names":[],"mappings":"","sourcesContent":["export {\n IsDiscordLinkedParams,\n IsDiscordLinkedResult,\n LinkDiscordParams,\n LinkDiscordResult,\n UnlinkDiscordParams,\n UnlinkDiscordResult,\n ClaimDiscordRankParams,\n ClaimDiscordRankResult,\n IsDiscordRankClaimedParams,\n IsDiscordRankClaimedResult,\n ApiErrorResponse,\n} from '@reyaxyz/common';\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"/","sources":["modules/discord/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAW,QAAQ,EAAU,UAAU,EAAE,MAAM,iBAAiB,CAAC;AACxE,OAAO,EACL,qBAAqB,EACrB,qBAAqB,EACrB,iBAAiB,EACjB,iBAAiB,EACjB,mBAAmB,EACnB,mBAAmB,EACnB,sBAAsB,EACtB,sBAAsB,EACtB,0BAA0B,EAC1B,0BAA0B,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"/","sources":["modules/discord/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAW,QAAQ,EAAU,UAAU,EAAE,MAAM,iBAAiB,CAAC;AACxE,OAAO,EACL,qBAAqB,EACrB,qBAAqB,EACrB,iBAAiB,EACjB,iBAAiB,EACjB,mBAAmB,EACnB,mBAAmB,EACnB,sBAAsB,EACtB,sBAAsB,EACtB,0BAA0B,EAC1B,0BAA0B,EAE3B,MAAM,SAAS,CAAC;AACjB,MAAM,CAAC,OAAO,OAAO,aAAc,SAAQ,UAAW,YAAW,QAAQ;IACvE,cAAc,EAAE,OAAO,CAAS;gBAEpB,MAAM,EAAE,MAAM,EAAE,cAAc,EAAE,OAAO;IAM7C,WAAW,CAAC,MAAM,EAAE,iBAAiB,GAAG,OAAO,CAAC,iBAAiB,CAAC;IAsClE,aAAa,CACjB,MAAM,EAAE,mBAAmB,GAC1B,OAAO,CAAC,mBAAmB,CAAC;IA0BzB,gBAAgB,CACpB,MAAM,EAAE,sBAAsB,GAC7B,OAAO,CAAC,sBAAsB,CAAC;IA2B5B,eAAe,CACnB,MAAM,EAAE,qBAAqB,GAC5B,OAAO,CAAC,qBAAqB,CAAC;IAM3B,oBAAoB,CACxB,MAAM,EAAE,0BAA0B,GACjC,OAAO,CAAC,0BAA0B,CAAC;CAIvC"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export { IsDiscordLinkedParams, IsDiscordLinkedResult, LinkDiscordParams, LinkDiscordResult, UnlinkDiscordParams, UnlinkDiscordResult, ClaimDiscordRankParams, ClaimDiscordRankResult, IsDiscordRankClaimedParams, IsDiscordRankClaimedResult, } from '@reyaxyz/common';
|
|
1
|
+
export { IsDiscordLinkedParams, IsDiscordLinkedResult, LinkDiscordParams, LinkDiscordResult, UnlinkDiscordParams, UnlinkDiscordResult, ClaimDiscordRankParams, ClaimDiscordRankResult, IsDiscordRankClaimedParams, IsDiscordRankClaimedResult, ApiErrorResponse, } from '@reyaxyz/common';
|
|
2
2
|
//# sourceMappingURL=types.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"/","sources":["modules/discord/types.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,qBAAqB,EACrB,qBAAqB,EACrB,iBAAiB,EACjB,iBAAiB,EACjB,mBAAmB,EACnB,mBAAmB,EACnB,sBAAsB,EACtB,sBAAsB,EACtB,0BAA0B,EAC1B,0BAA0B,
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"/","sources":["modules/discord/types.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,qBAAqB,EACrB,qBAAqB,EACrB,iBAAiB,EACjB,iBAAiB,EACjB,mBAAmB,EACnB,mBAAmB,EACnB,sBAAsB,EACtB,sBAAsB,EACtB,0BAA0B,EAC1B,0BAA0B,EAC1B,gBAAgB,GACjB,MAAM,iBAAiB,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@reyaxyz/community-sdk",
|
|
3
|
-
"version": "0.41.
|
|
3
|
+
"version": "0.41.14",
|
|
4
4
|
"publishConfig": {
|
|
5
5
|
"access": "public",
|
|
6
6
|
"registry": "https://registry.npmjs.org"
|
|
@@ -11,8 +11,8 @@
|
|
|
11
11
|
},
|
|
12
12
|
"dependencies": {
|
|
13
13
|
"@gelatonetwork/relay-sdk": "^5.5.0",
|
|
14
|
-
"@reyaxyz/common": "0.168.
|
|
15
|
-
"@reyaxyz/sdk": "0.106.
|
|
14
|
+
"@reyaxyz/common": "0.168.10",
|
|
15
|
+
"@reyaxyz/sdk": "0.106.40",
|
|
16
16
|
"ethers": "6.9.0"
|
|
17
17
|
},
|
|
18
18
|
"main": "dist/index.js",
|
|
@@ -39,5 +39,5 @@
|
|
|
39
39
|
"generate:coverage-badges": "npx istanbul-badges-readme --silent"
|
|
40
40
|
},
|
|
41
41
|
"packageManager": "pnpm@8.3.1",
|
|
42
|
-
"gitHead": "
|
|
42
|
+
"gitHead": "effc0d019045631375a2293c850fbc98f01ccc9c"
|
|
43
43
|
}
|
|
@@ -10,8 +10,8 @@ import {
|
|
|
10
10
|
ClaimDiscordRankResult,
|
|
11
11
|
IsDiscordRankClaimedParams,
|
|
12
12
|
IsDiscordRankClaimedResult,
|
|
13
|
+
ApiErrorResponse,
|
|
13
14
|
} from './types';
|
|
14
|
-
|
|
15
15
|
export default class DiscordModule extends RestClient implements Loggable {
|
|
16
16
|
loggingEnabled: boolean = false;
|
|
17
17
|
|
|
@@ -39,26 +39,55 @@ export default class DiscordModule extends RestClient implements Loggable {
|
|
|
39
39
|
formData.append('discordAccessToken', params.discordAccessToken);
|
|
40
40
|
|
|
41
41
|
const uri = `/api/discord/link`;
|
|
42
|
-
|
|
42
|
+
try {
|
|
43
|
+
const response = await this.post<LinkDiscordResult>(
|
|
44
|
+
uri,
|
|
45
|
+
undefined,
|
|
46
|
+
formData,
|
|
47
|
+
undefined,
|
|
48
|
+
);
|
|
49
|
+
return response;
|
|
50
|
+
} catch (error) {
|
|
51
|
+
if (isApiErrorResponse(error)) {
|
|
52
|
+
throw new Error(
|
|
53
|
+
error.response.data.error ||
|
|
54
|
+
'An error occurred while linking Discord',
|
|
55
|
+
);
|
|
56
|
+
}
|
|
57
|
+
throw new Error('An unknown error occurred while linking Discord');
|
|
58
|
+
}
|
|
43
59
|
}
|
|
44
60
|
|
|
45
61
|
@Logger('DiscordModule.unlinkDiscord')
|
|
46
|
-
unlinkDiscord(
|
|
62
|
+
async unlinkDiscord(
|
|
63
|
+
params: UnlinkDiscordParams,
|
|
64
|
+
): Promise<UnlinkDiscordResult> {
|
|
47
65
|
const formData = new FormData();
|
|
48
66
|
formData.append('address', params.address);
|
|
49
67
|
formData.append('discordAccessToken', params.discordAccessToken);
|
|
50
68
|
|
|
51
69
|
const uri = `/api/discord/unlink`;
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
70
|
+
try {
|
|
71
|
+
const response = await this.delete<UnlinkDiscordResult>(
|
|
72
|
+
uri,
|
|
73
|
+
undefined,
|
|
74
|
+
formData,
|
|
75
|
+
undefined,
|
|
76
|
+
);
|
|
77
|
+
return response;
|
|
78
|
+
} catch (error) {
|
|
79
|
+
if (isApiErrorResponse(error)) {
|
|
80
|
+
throw new Error(
|
|
81
|
+
error.response.data.error ||
|
|
82
|
+
'An error occurred while unlinking Discord',
|
|
83
|
+
);
|
|
84
|
+
}
|
|
85
|
+
throw new Error('An unknown error occurred while unlinking Discord');
|
|
86
|
+
}
|
|
58
87
|
}
|
|
59
88
|
|
|
60
89
|
@Logger('DiscordModule.claimDiscordRank')
|
|
61
|
-
claimDiscordRank(
|
|
90
|
+
async claimDiscordRank(
|
|
62
91
|
params: ClaimDiscordRankParams,
|
|
63
92
|
): Promise<ClaimDiscordRankResult> {
|
|
64
93
|
const formData = new FormData();
|
|
@@ -66,12 +95,24 @@ export default class DiscordModule extends RestClient implements Loggable {
|
|
|
66
95
|
formData.append('discordAccessToken', params.discordAccessToken);
|
|
67
96
|
|
|
68
97
|
const uri = `/api/discord/claim-rank`;
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
98
|
+
|
|
99
|
+
try {
|
|
100
|
+
const response = await this.post<ClaimDiscordRankResult>(
|
|
101
|
+
uri,
|
|
102
|
+
undefined,
|
|
103
|
+
formData,
|
|
104
|
+
undefined,
|
|
105
|
+
);
|
|
106
|
+
return response;
|
|
107
|
+
} catch (error) {
|
|
108
|
+
if (isApiErrorResponse(error)) {
|
|
109
|
+
throw new Error(
|
|
110
|
+
error.response.data.error ||
|
|
111
|
+
'An error occurred while claiming Discord rank',
|
|
112
|
+
);
|
|
113
|
+
}
|
|
114
|
+
throw new Error('An unknown error occurred while claiming Discord rank');
|
|
115
|
+
}
|
|
75
116
|
}
|
|
76
117
|
|
|
77
118
|
@Logger('DiscordModule.isDiscordLinked')
|
|
@@ -90,3 +131,13 @@ export default class DiscordModule extends RestClient implements Loggable {
|
|
|
90
131
|
return this.get<IsDiscordRankClaimedResult>(uri);
|
|
91
132
|
}
|
|
92
133
|
}
|
|
134
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
135
|
+
function isApiErrorResponse(error: any): error is ApiErrorResponse {
|
|
136
|
+
return (
|
|
137
|
+
error &&
|
|
138
|
+
error.response &&
|
|
139
|
+
typeof error.response.status === 'number' &&
|
|
140
|
+
error.response.data &&
|
|
141
|
+
typeof error.response.data.error === 'string'
|
|
142
|
+
);
|
|
143
|
+
}
|