beamsocial 0.1.2 → 0.1.3
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/lib/index.d.ts +1 -1
- package/lib/index.js +82 -51
- package/lib/models/users.js +94 -59
- package/package.json +1 -1
package/lib/index.d.ts
CHANGED
package/lib/index.js
CHANGED
|
@@ -20,18 +20,25 @@ export class Client {
|
|
|
20
20
|
}
|
|
21
21
|
login(username, password) {
|
|
22
22
|
return __awaiter(this, void 0, void 0, function* () {
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
this.
|
|
23
|
+
try {
|
|
24
|
+
const res = yield axios.post(this.baseURL + '/auth/login', { username, password });
|
|
25
|
+
yield this.refresh(res.data.token);
|
|
26
|
+
return this.session;
|
|
26
27
|
}
|
|
27
|
-
|
|
28
|
-
|
|
28
|
+
catch (err) {
|
|
29
|
+
if (axios.isAxiosError(err) && err.response) {
|
|
30
|
+
const res = err.response;
|
|
31
|
+
if (res.status === 401) {
|
|
32
|
+
return null;
|
|
33
|
+
}
|
|
34
|
+
else {
|
|
35
|
+
throw new Error('Error logging in');
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
else {
|
|
39
|
+
throw err;
|
|
40
|
+
}
|
|
29
41
|
}
|
|
30
|
-
else {
|
|
31
|
-
throw new Error('Error logging in');
|
|
32
|
-
}
|
|
33
|
-
yield this.refresh();
|
|
34
|
-
return this.session;
|
|
35
42
|
});
|
|
36
43
|
}
|
|
37
44
|
refresh(token) {
|
|
@@ -44,69 +51,93 @@ export class Client {
|
|
|
44
51
|
}
|
|
45
52
|
me() {
|
|
46
53
|
return __awaiter(this, void 0, void 0, function* () {
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
+
try {
|
|
55
|
+
const res = yield axios.get(this.baseURL + '/me', {
|
|
56
|
+
headers: {
|
|
57
|
+
Authorization: `Bearer ${this.token}`,
|
|
58
|
+
},
|
|
59
|
+
});
|
|
60
|
+
let session;
|
|
54
61
|
session = new Session(res.data.id, this.token);
|
|
55
62
|
session.__load(res.data);
|
|
56
63
|
return session;
|
|
57
64
|
}
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
65
|
+
catch (err) {
|
|
66
|
+
if (axios.isAxiosError(err) && err.response) {
|
|
67
|
+
const res = err.response;
|
|
68
|
+
if (res.status === 401) {
|
|
69
|
+
return null;
|
|
70
|
+
}
|
|
71
|
+
else {
|
|
72
|
+
throw new Error('Error fetching session');
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
else {
|
|
76
|
+
throw err;
|
|
77
|
+
}
|
|
63
78
|
}
|
|
64
79
|
});
|
|
65
80
|
}
|
|
66
81
|
update_settings(settings) {
|
|
67
82
|
return __awaiter(this, void 0, void 0, function* () {
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
83
|
+
try {
|
|
84
|
+
yield axios.post(this.baseURL + '/me/update_settings', {
|
|
85
|
+
privacy: settings.preferences.privacy,
|
|
86
|
+
appearence: settings.preferences.appearance
|
|
87
|
+
}, {
|
|
88
|
+
headers: {
|
|
89
|
+
Authorization: `Bearer ${this.token}`,
|
|
90
|
+
},
|
|
91
|
+
});
|
|
77
92
|
yield this.refresh();
|
|
78
93
|
return;
|
|
79
94
|
}
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
95
|
+
catch (err) {
|
|
96
|
+
if (axios.isAxiosError(err) && err.response) {
|
|
97
|
+
const res = err.response;
|
|
98
|
+
if (res.status == 401) {
|
|
99
|
+
throw new Error('Not logged in');
|
|
100
|
+
}
|
|
101
|
+
else {
|
|
102
|
+
throw new Error('Error updating settings');
|
|
103
|
+
}
|
|
104
|
+
}
|
|
105
|
+
else {
|
|
106
|
+
throw err;
|
|
107
|
+
}
|
|
85
108
|
}
|
|
86
109
|
});
|
|
87
110
|
}
|
|
88
111
|
/*************************************/
|
|
89
112
|
getUser(name) {
|
|
90
113
|
return __awaiter(this, void 0, void 0, function* () {
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
114
|
+
try {
|
|
115
|
+
const res = yield axios.get(this.baseURL + '/users/' + name, {
|
|
116
|
+
headers: {
|
|
117
|
+
Authorization: `Bearer ${this.token}`,
|
|
118
|
+
},
|
|
119
|
+
});
|
|
120
|
+
let user;
|
|
98
121
|
user = new User(res.data.id, this.token, this.baseURL + '/users/' + name);
|
|
99
122
|
user.__load(res.data);
|
|
100
123
|
return user;
|
|
101
124
|
}
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
125
|
+
catch (err) {
|
|
126
|
+
if (axios.isAxiosError(err) && err.response) {
|
|
127
|
+
const res = err.response;
|
|
128
|
+
if (res.status === 403) {
|
|
129
|
+
throw new Error('User is private');
|
|
130
|
+
}
|
|
131
|
+
else if (res.status === 404) {
|
|
132
|
+
return null;
|
|
133
|
+
}
|
|
134
|
+
else {
|
|
135
|
+
throw new Error('Error fetching user');
|
|
136
|
+
}
|
|
137
|
+
}
|
|
138
|
+
else {
|
|
139
|
+
throw err;
|
|
140
|
+
}
|
|
110
141
|
}
|
|
111
142
|
});
|
|
112
143
|
}
|
package/lib/models/users.js
CHANGED
|
@@ -40,88 +40,123 @@ export class User {
|
|
|
40
40
|
}
|
|
41
41
|
follow() {
|
|
42
42
|
return __awaiter(this, void 0, void 0, function* () {
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
43
|
+
try {
|
|
44
|
+
const res = yield axios.post(this.__url + `/follow`, {}, {
|
|
45
|
+
headers: {
|
|
46
|
+
Authorization: `Bearer ${this.__token}`,
|
|
47
|
+
},
|
|
48
|
+
});
|
|
49
49
|
return;
|
|
50
50
|
}
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
51
|
+
catch (err) {
|
|
52
|
+
if (axios.isAxiosError(err) && err.response) {
|
|
53
|
+
const res = err.response;
|
|
54
|
+
if (res.status == 401) {
|
|
55
|
+
throw new Error('Not logged in');
|
|
56
|
+
}
|
|
57
|
+
else if (res.status == 403) {
|
|
58
|
+
throw new Error('Private account');
|
|
59
|
+
}
|
|
60
|
+
else if (res.status == 404) {
|
|
61
|
+
throw new Error('User not found');
|
|
62
|
+
}
|
|
63
|
+
else {
|
|
64
|
+
throw new Error('Error following user');
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
else {
|
|
68
|
+
throw err;
|
|
69
|
+
}
|
|
62
70
|
}
|
|
63
71
|
});
|
|
64
72
|
}
|
|
65
73
|
unfollow() {
|
|
66
74
|
return __awaiter(this, void 0, void 0, function* () {
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
75
|
+
try {
|
|
76
|
+
const res = yield axios.post(this.__url + `/unfollow`, {}, {
|
|
77
|
+
headers: {
|
|
78
|
+
Authorization: `Bearer ${this.__token}`,
|
|
79
|
+
},
|
|
80
|
+
});
|
|
73
81
|
return;
|
|
74
82
|
}
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
+
catch (err) {
|
|
84
|
+
if (axios.isAxiosError(err) && err.response) {
|
|
85
|
+
const res = err.response;
|
|
86
|
+
if (res.status == 401) {
|
|
87
|
+
throw new Error('Not logged in');
|
|
88
|
+
}
|
|
89
|
+
else if (res.status == 403) {
|
|
90
|
+
throw new Error('Private account');
|
|
91
|
+
}
|
|
92
|
+
else if (res.status == 404) {
|
|
93
|
+
throw new Error('User not found');
|
|
94
|
+
}
|
|
95
|
+
else {
|
|
96
|
+
throw new Error('Error unfollowing user');
|
|
97
|
+
}
|
|
98
|
+
}
|
|
99
|
+
else {
|
|
100
|
+
throw err;
|
|
101
|
+
}
|
|
83
102
|
}
|
|
84
103
|
});
|
|
85
104
|
}
|
|
86
105
|
block() {
|
|
87
106
|
return __awaiter(this, void 0, void 0, function* () {
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
107
|
+
try {
|
|
108
|
+
const res = yield axios.post(this.__url + `/block`, {}, {
|
|
109
|
+
headers: {
|
|
110
|
+
Authorization: `Bearer ${this.__token}`,
|
|
111
|
+
},
|
|
112
|
+
});
|
|
94
113
|
return;
|
|
95
114
|
}
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
115
|
+
catch (err) {
|
|
116
|
+
if (axios.isAxiosError(err) && err.response) {
|
|
117
|
+
const res = err.response;
|
|
118
|
+
if (res.status == 401) {
|
|
119
|
+
throw new Error('Not logged in');
|
|
120
|
+
}
|
|
121
|
+
else if (res.status == 404) {
|
|
122
|
+
throw new Error('User not found');
|
|
123
|
+
}
|
|
124
|
+
else {
|
|
125
|
+
throw new Error('Error block user');
|
|
126
|
+
}
|
|
127
|
+
}
|
|
128
|
+
else {
|
|
129
|
+
throw err;
|
|
130
|
+
}
|
|
104
131
|
}
|
|
105
132
|
});
|
|
106
133
|
}
|
|
107
134
|
unblock() {
|
|
108
135
|
return __awaiter(this, void 0, void 0, function* () {
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
136
|
+
try {
|
|
137
|
+
const res = yield axios.post(this.__url + `/unblock`, {}, {
|
|
138
|
+
headers: {
|
|
139
|
+
Authorization: `Bearer ${this.__token}`,
|
|
140
|
+
},
|
|
141
|
+
});
|
|
115
142
|
return;
|
|
116
143
|
}
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
144
|
+
catch (err) {
|
|
145
|
+
if (axios.isAxiosError(err) && err.response) {
|
|
146
|
+
const res = err.response;
|
|
147
|
+
if (res.status == 401) {
|
|
148
|
+
throw new Error('Not logged in');
|
|
149
|
+
}
|
|
150
|
+
else if (res.status == 404) {
|
|
151
|
+
throw new Error('User not found');
|
|
152
|
+
}
|
|
153
|
+
else {
|
|
154
|
+
throw new Error('Error unblocking user');
|
|
155
|
+
}
|
|
156
|
+
}
|
|
157
|
+
else {
|
|
158
|
+
throw err;
|
|
159
|
+
}
|
|
125
160
|
}
|
|
126
161
|
});
|
|
127
162
|
}
|