@sonoransoftware/sonoran.js 1.0.5 → 1.0.7
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/libs/rest/src/lib/REST.js +3 -3
- package/dist/managers/CADManager.d.ts +2 -0
- package/dist/managers/CADManager.js +7 -2
- package/dist/managers/CMSManager.d.ts +1 -0
- package/dist/managers/CMSManager.js +3 -4
- package/package.json +1 -1
- package/src/libs/rest/src/lib/REST.ts +4 -4
- package/src/managers/CADManager.ts +63 -58
- package/src/managers/CMSManager.ts +3 -4
|
@@ -105,9 +105,9 @@ class REST extends events_1.EventEmitter {
|
|
|
105
105
|
case 'SET_ACCOUNT_RANKS': {
|
|
106
106
|
return {
|
|
107
107
|
accountId: args[0],
|
|
108
|
-
set: args[1]
|
|
109
|
-
add: args[
|
|
110
|
-
remove: args[
|
|
108
|
+
set: args[1],
|
|
109
|
+
add: args[2],
|
|
110
|
+
remove: args[3],
|
|
111
111
|
};
|
|
112
112
|
}
|
|
113
113
|
default: {
|
|
@@ -8,7 +8,9 @@ import { CADServerManager } from './CADServerManager';
|
|
|
8
8
|
* Manages all Sonoran CAD data and methods to interact with the public API.
|
|
9
9
|
*/
|
|
10
10
|
export declare class CADManager extends BaseManager {
|
|
11
|
+
readonly ready = false;
|
|
11
12
|
readonly version: CADSubscriptionVersionEnum;
|
|
13
|
+
readonly failReason: unknown;
|
|
12
14
|
rest: REST | undefined;
|
|
13
15
|
servers: CADServerManager | undefined;
|
|
14
16
|
constructor(instance: Instance);
|
|
@@ -34,23 +34,28 @@ const CADServerManager_1 = require("./CADServerManager");
|
|
|
34
34
|
class CADManager extends BaseManager_1.BaseManager {
|
|
35
35
|
constructor(instance) {
|
|
36
36
|
super(instance);
|
|
37
|
+
this.ready = false;
|
|
37
38
|
this.version = 0;
|
|
39
|
+
this.failReason = null;
|
|
38
40
|
this.rest = new src_1.REST(instance, this, globalTypes.productEnums.CAD, src_1.DefaultCADRestOptions);
|
|
39
41
|
this.buildManager(instance);
|
|
40
42
|
}
|
|
41
43
|
async buildManager(instance) {
|
|
42
44
|
var _a;
|
|
45
|
+
const mutableThis = this;
|
|
43
46
|
try {
|
|
44
47
|
const versionResp = await ((_a = this.rest) === null || _a === void 0 ? void 0 : _a.request('GET_VERSION'));
|
|
45
|
-
const mutableThis = this;
|
|
46
48
|
mutableThis.version = Number.parseInt(versionResp.replace(/(^\d+)(.+$)/i, '$1'));
|
|
47
49
|
if (this.version >= globalTypes.CADSubscriptionVersionEnum.STANDARD) {
|
|
48
50
|
this.servers = new CADServerManager_1.CADServerManager(instance, this);
|
|
49
51
|
}
|
|
50
52
|
instance.isCADSuccessful = true;
|
|
53
|
+
instance.emit('CAD_SETUP_SUCCESSFUL');
|
|
51
54
|
}
|
|
52
55
|
catch (err) {
|
|
53
|
-
|
|
56
|
+
mutableThis.failReason = err;
|
|
57
|
+
instance.emit('CAD_SETUP_UNSUCCESSFUL', err);
|
|
58
|
+
throw err;
|
|
54
59
|
}
|
|
55
60
|
}
|
|
56
61
|
/**
|
|
@@ -10,6 +10,7 @@ import { CMSServerManager } from './CMSServerManager';
|
|
|
10
10
|
export declare class CMSManager extends BaseManager {
|
|
11
11
|
readonly ready: boolean;
|
|
12
12
|
readonly version: CMSSubscriptionVersionEnum;
|
|
13
|
+
readonly failReason: unknown;
|
|
13
14
|
rest: REST | undefined;
|
|
14
15
|
servers: CMSServerManager | undefined;
|
|
15
16
|
constructor(instance: Instance);
|
|
@@ -36,27 +36,26 @@ class CMSManager extends BaseManager_1.BaseManager {
|
|
|
36
36
|
super(instance);
|
|
37
37
|
this.ready = false;
|
|
38
38
|
this.version = 0;
|
|
39
|
+
this.failReason = null;
|
|
39
40
|
this.rest = new src_1.REST(instance, this, globalTypes.productEnums.CMS, src_1.DefaultCMSRestOptions);
|
|
40
41
|
this.buildManager(instance);
|
|
41
42
|
}
|
|
42
43
|
async buildManager(instance) {
|
|
43
44
|
var _a;
|
|
45
|
+
const mutableThis = this;
|
|
44
46
|
try {
|
|
45
47
|
const versionResp = await ((_a = this.rest) === null || _a === void 0 ? void 0 : _a.request('GET_SUB_VERSION'));
|
|
46
48
|
const version = Number.parseInt(versionResp.replace(/(^\d+)(.+$)/i, '$1'));
|
|
47
|
-
const mutableThis = this;
|
|
48
49
|
if (version >= globalTypes.CMSSubscriptionVersionEnum.STANDARD) {
|
|
49
50
|
this.servers = new CMSServerManager_1.CMSServerManager(instance, this);
|
|
50
51
|
}
|
|
51
52
|
mutableThis.ready = true;
|
|
52
53
|
mutableThis.version = version;
|
|
53
|
-
console.log(mutableThis.version);
|
|
54
|
-
console.log(this.version);
|
|
55
|
-
console.log(version);
|
|
56
54
|
instance.isCMSSuccessful = true;
|
|
57
55
|
instance.emit('CMS_SETUP_SUCCESSFUL');
|
|
58
56
|
}
|
|
59
57
|
catch (err) {
|
|
58
|
+
mutableThis.failReason = err;
|
|
60
59
|
instance.emit('CMS_SETUP_UNSUCCESSFUL', err);
|
|
61
60
|
throw err;
|
|
62
61
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@sonoransoftware/sonoran.js",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.7",
|
|
4
4
|
"description": "Sonoran.js is a library that allows you to interact with the Sonoran CAD and Sonoran CMS API. Based off of and utilizes several Discord.js library techniques for ease of use.",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|
|
@@ -210,9 +210,9 @@ export class REST extends EventEmitter {
|
|
|
210
210
|
case 'SET_ACCOUNT_RANKS': {
|
|
211
211
|
return {
|
|
212
212
|
accountId: args[0],
|
|
213
|
-
set: args[1]
|
|
214
|
-
add: args[
|
|
215
|
-
remove: args[
|
|
213
|
+
set: args[1],
|
|
214
|
+
add: args[2],
|
|
215
|
+
remove: args[3],
|
|
216
216
|
};
|
|
217
217
|
}
|
|
218
218
|
default: {
|
|
@@ -220,4 +220,4 @@ export class REST extends EventEmitter {
|
|
|
220
220
|
}
|
|
221
221
|
}
|
|
222
222
|
}
|
|
223
|
-
}
|
|
223
|
+
}
|
|
@@ -1,59 +1,64 @@
|
|
|
1
|
-
import { Instance } from '../instance/Instance';
|
|
2
|
-
import { CADSubscriptionVersionEnum } from '../constants';
|
|
3
|
-
import { APIError, DefaultCADRestOptions, REST } from '../libs/rest/src';
|
|
4
|
-
import { BaseManager } from './BaseManager';
|
|
5
|
-
import * as globalTypes from '../constants';
|
|
6
|
-
import type { Mutable } from '../constants';
|
|
7
|
-
import { CADServerManager } from './CADServerManager';
|
|
8
|
-
|
|
9
|
-
/**
|
|
10
|
-
* Manages all Sonoran CAD data and methods to interact with the public API.
|
|
11
|
-
*/
|
|
12
|
-
export class CADManager extends BaseManager {
|
|
13
|
-
public readonly
|
|
14
|
-
public
|
|
15
|
-
public
|
|
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
|
-
|
|
1
|
+
import { Instance } from '../instance/Instance';
|
|
2
|
+
import { CADSubscriptionVersionEnum } from '../constants';
|
|
3
|
+
import { APIError, DefaultCADRestOptions, REST } from '../libs/rest/src';
|
|
4
|
+
import { BaseManager } from './BaseManager';
|
|
5
|
+
import * as globalTypes from '../constants';
|
|
6
|
+
import type { Mutable } from '../constants';
|
|
7
|
+
import { CADServerManager } from './CADServerManager';
|
|
8
|
+
|
|
9
|
+
/**
|
|
10
|
+
* Manages all Sonoran CAD data and methods to interact with the public API.
|
|
11
|
+
*/
|
|
12
|
+
export class CADManager extends BaseManager {
|
|
13
|
+
public readonly ready = false;
|
|
14
|
+
public readonly version: CADSubscriptionVersionEnum = 0;
|
|
15
|
+
public readonly failReason: unknown = null;
|
|
16
|
+
public rest: REST | undefined;
|
|
17
|
+
public servers: CADServerManager | undefined;
|
|
18
|
+
|
|
19
|
+
constructor(instance: Instance) {
|
|
20
|
+
super(instance);
|
|
21
|
+
|
|
22
|
+
this.rest = new REST(instance, this, globalTypes.productEnums.CAD, DefaultCADRestOptions);
|
|
23
|
+
this.buildManager(instance);
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
protected async buildManager(instance: Instance) {
|
|
27
|
+
const mutableThis = this as Mutable<CADManager>;
|
|
28
|
+
try {
|
|
29
|
+
const versionResp: any = await this.rest?.request('GET_VERSION');
|
|
30
|
+
mutableThis.version = Number.parseInt(versionResp.replace(/(^\d+)(.+$)/i,'$1'));
|
|
31
|
+
if (this.version >= globalTypes.CADSubscriptionVersionEnum.STANDARD) {
|
|
32
|
+
this.servers = new CADServerManager(instance, this);
|
|
33
|
+
}
|
|
34
|
+
instance.isCADSuccessful = true;
|
|
35
|
+
instance.emit('CAD_SETUP_SUCCESSFUL');
|
|
36
|
+
} catch (err) {
|
|
37
|
+
mutableThis.failReason = err;
|
|
38
|
+
instance.emit('CAD_SETUP_UNSUCCESSFUL', err);
|
|
39
|
+
throw err;
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
/**
|
|
44
|
+
* Gets a community account by `accId` or `apiId`.
|
|
45
|
+
* @param {Object} params The object that contains parameters to get a community account.
|
|
46
|
+
* @param {string} [data.accId] The account id to find a community account.
|
|
47
|
+
* @param {string} [data.apiId] The api id to find a community account.
|
|
48
|
+
* @returns {Promise} Promise object represents if the request was successful with reason for failure if needed and the account data object if found.
|
|
49
|
+
*/
|
|
50
|
+
public async getAccount(params: { apiId?: string, username?: string }): Promise<globalTypes.CADGetAccountPromiseResult> {
|
|
51
|
+
return new Promise(async (resolve, reject) => {
|
|
52
|
+
try {
|
|
53
|
+
const getAccountRequest: any = await this.rest?.request('GET_ACCOUNT', params.apiId, params.username);
|
|
54
|
+
resolve({ success: true, data: getAccountRequest });
|
|
55
|
+
} catch (err) {
|
|
56
|
+
if (err instanceof APIError) {
|
|
57
|
+
resolve({ success: false, reason: err.response });
|
|
58
|
+
} else {
|
|
59
|
+
reject(err);
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
});
|
|
63
|
+
}
|
|
59
64
|
}
|
|
@@ -11,6 +11,7 @@ import { CMSServerManager } from './CMSServerManager';
|
|
|
11
11
|
export class CMSManager extends BaseManager {
|
|
12
12
|
public readonly ready: boolean = false;
|
|
13
13
|
public readonly version: CMSSubscriptionVersionEnum = 0;
|
|
14
|
+
public readonly failReason: unknown = null;
|
|
14
15
|
public rest: REST | undefined;
|
|
15
16
|
public servers: CMSServerManager | undefined;
|
|
16
17
|
|
|
@@ -22,21 +23,19 @@ export class CMSManager extends BaseManager {
|
|
|
22
23
|
}
|
|
23
24
|
|
|
24
25
|
protected async buildManager(instance: Instance) {
|
|
26
|
+
const mutableThis = this as globalTypes.Mutable<CMSManager>;
|
|
25
27
|
try {
|
|
26
28
|
const versionResp: any = await this.rest?.request('GET_SUB_VERSION');
|
|
27
29
|
const version = Number.parseInt(versionResp.replace(/(^\d+)(.+$)/i,'$1'));
|
|
28
|
-
const mutableThis = this as globalTypes.Mutable<CMSManager>;
|
|
29
30
|
if (version >= globalTypes.CMSSubscriptionVersionEnum.STANDARD) {
|
|
30
31
|
this.servers = new CMSServerManager(instance, this);
|
|
31
32
|
}
|
|
32
33
|
mutableThis.ready = true;
|
|
33
34
|
mutableThis.version = version;
|
|
34
|
-
console.log(mutableThis.version);
|
|
35
|
-
console.log(this.version);
|
|
36
|
-
console.log(version);
|
|
37
35
|
instance.isCMSSuccessful = true;
|
|
38
36
|
instance.emit('CMS_SETUP_SUCCESSFUL');
|
|
39
37
|
} catch (err) {
|
|
38
|
+
mutableThis.failReason = err;
|
|
40
39
|
instance.emit('CMS_SETUP_UNSUCCESSFUL', err);
|
|
41
40
|
throw err;
|
|
42
41
|
}
|