@rocket.chat/api-client 0.1.0-rc.0 → 0.1.0-rc.2
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/CHANGELOG.md +15 -0
- package/dist/RestClientInterface.d.ts +37 -0
- package/dist/RestClientInterface.d.ts.map +1 -0
- package/dist/RestClientInterface.js +3 -0
- package/dist/RestClientInterface.js.map +1 -0
- package/dist/errors.d.ts +21 -0
- package/dist/errors.d.ts.map +1 -0
- package/dist/errors.js +22 -0
- package/dist/errors.js.map +1 -0
- package/dist/index.d.ts +39 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +183 -0
- package/dist/index.js.map +1 -0
- package/package.json +3 -3
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,20 @@
|
|
|
1
1
|
# @rocket.chat/api-client
|
|
2
2
|
|
|
3
|
+
## 0.1.0-rc.2
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- Updated dependencies [f76d514341]
|
|
8
|
+
- @rocket.chat/rest-typings@6.3.0-rc.2
|
|
9
|
+
- @rocket.chat/core-typings@6.3.0-rc.2
|
|
10
|
+
|
|
11
|
+
## 0.1.0-rc.1
|
|
12
|
+
|
|
13
|
+
### Patch Changes
|
|
14
|
+
|
|
15
|
+
- @rocket.chat/core-typings@6.3.0-rc.1
|
|
16
|
+
- @rocket.chat/rest-typings@6.3.0-rc.1
|
|
17
|
+
|
|
3
18
|
## 0.1.0-rc.0
|
|
4
19
|
|
|
5
20
|
### Minor Changes
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import type { Serialized } from '@rocket.chat/core-typings';
|
|
2
|
+
import type { MatchPathPattern, OperationParams, OperationResult, PathFor, PathWithParamsFor, PathWithoutParamsFor } from '@rocket.chat/rest-typings';
|
|
3
|
+
type Next<T extends (...args: any[]) => any> = (...args: Parameters<T>) => ReturnType<T>;
|
|
4
|
+
export type Middleware<T extends (...args: any[]) => any> = (context: Parameters<T>, next: Next<T>) => ReturnType<T>;
|
|
5
|
+
export interface RestClientInterface {
|
|
6
|
+
get<TPathPattern extends MatchPathPattern<TPath>, TPath extends PathWithParamsFor<'GET'> = PathWithParamsFor<'GET'>>(endpoint: TPath, params: OperationParams<'GET', TPathPattern>, options?: Omit<RequestInit, 'method'>): Promise<Serialized<OperationResult<'GET', TPathPattern>>>;
|
|
7
|
+
get<TPathPattern extends MatchPathPattern<TPath>, TPath extends PathWithoutParamsFor<'GET'> = PathWithoutParamsFor<'GET'>>(endpoint: TPath, params?: undefined, options?: Omit<RequestInit, 'method'>): Promise<Serialized<OperationResult<'GET', TPathPattern>>>;
|
|
8
|
+
post<TPathPattern extends MatchPathPattern<TPath>, TPath extends PathWithParamsFor<'POST'> = PathWithParamsFor<'POST'>>(endpoint: TPath, params: OperationParams<'POST', TPathPattern>, options?: Omit<RequestInit, 'method'>): Promise<Serialized<OperationResult<'POST', TPathPattern>>>;
|
|
9
|
+
post<TPathPattern extends MatchPathPattern<TPath>, TPath extends PathWithoutParamsFor<'POST'> = PathWithoutParamsFor<'POST'>>(endpoint: TPath, params?: undefined, options?: Omit<RequestInit, 'method'>): Promise<Serialized<OperationResult<'POST', TPathPattern>>>;
|
|
10
|
+
put<TPathPattern extends MatchPathPattern<TPath>, TPath extends PathWithParamsFor<'PUT'> = PathWithParamsFor<'PUT'>>(endpoint: TPath, params: OperationParams<'PUT', TPathPattern>, options?: Omit<RequestInit, 'method'>): Promise<Serialized<OperationResult<'PUT', TPathPattern>>>;
|
|
11
|
+
put<TPathPattern extends MatchPathPattern<TPath>, TPath extends PathWithoutParamsFor<'PUT'> = PathWithoutParamsFor<'PUT'>>(endpoint: TPath, params?: undefined, options?: Omit<RequestInit, 'method'>): Promise<Serialized<OperationResult<'PUT', TPathPattern>>>;
|
|
12
|
+
delete<TPathPattern extends MatchPathPattern<TPath>, TPath extends PathWithParamsFor<'DELETE'> = PathWithParamsFor<'DELETE'>>(endpoint: TPath, params: OperationParams<'DELETE', TPathPattern>, options?: Omit<RequestInit, 'method'>): Promise<Serialized<OperationResult<'DELETE', TPathPattern>>>;
|
|
13
|
+
delete<TPathPattern extends MatchPathPattern<TPath>, TPath extends PathWithoutParamsFor<'DELETE'> = PathWithoutParamsFor<'DELETE'>>(endpoint: TPath, params?: undefined, options?: Omit<RequestInit, 'method'>): Promise<Serialized<OperationResult<'DELETE', TPathPattern>>>;
|
|
14
|
+
upload<TPath extends PathFor<'POST'>>(endpoint: TPath, params: void extends OperationParams<'POST', MatchPathPattern<TPath>> ? void : OperationParams<'POST', MatchPathPattern<TPath>>, events?: {
|
|
15
|
+
load?: (event: ProgressEvent<XMLHttpRequestEventTarget>) => void;
|
|
16
|
+
progress?: (event: ProgressEvent<XMLHttpRequestEventTarget>) => void;
|
|
17
|
+
abort?: (event: ProgressEvent<XMLHttpRequestEventTarget>) => void;
|
|
18
|
+
error?: (event: ProgressEvent<XMLHttpRequestEventTarget>) => void;
|
|
19
|
+
}, options?: Omit<RequestInit, 'method'>): XMLHttpRequest;
|
|
20
|
+
getCredentials(): {
|
|
21
|
+
'X-User-Id': string;
|
|
22
|
+
'X-Auth-Token': string;
|
|
23
|
+
} | undefined;
|
|
24
|
+
setCredentials(credentials: undefined | {
|
|
25
|
+
'X-User-Id': string;
|
|
26
|
+
'X-Auth-Token': string;
|
|
27
|
+
}): void;
|
|
28
|
+
use(middleware: Middleware<RestClientInterface['send']>): void;
|
|
29
|
+
send(endpoint: string, method: string, options?: Omit<RequestInit, 'method'>): Promise<Response>;
|
|
30
|
+
handleTwoFactorChallenge(cb: (args: {
|
|
31
|
+
method: 'totp' | 'email' | 'password';
|
|
32
|
+
emailOrUsername?: string;
|
|
33
|
+
invalidAttempt?: boolean;
|
|
34
|
+
}) => Promise<string>): void;
|
|
35
|
+
}
|
|
36
|
+
export {};
|
|
37
|
+
//# sourceMappingURL=RestClientInterface.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RestClientInterface.d.ts","sourceRoot":"","sources":["../src/RestClientInterface.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RestClientInterface.js","sourceRoot":"","sources":["../src/RestClientInterface.ts"],"names":[],"mappings":""}
|
package/dist/errors.d.ts
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
declare const twoFactorMethods: readonly ["totp", "email", "password"];
|
|
2
|
+
type TwoFactorMethod = (typeof twoFactorMethods)[number];
|
|
3
|
+
export declare const isTotpRequiredError: (error: unknown) => error is {
|
|
4
|
+
error: 'totp-required';
|
|
5
|
+
} | {
|
|
6
|
+
errorType: 'totp-required';
|
|
7
|
+
};
|
|
8
|
+
export declare const isTotpInvalidError: (error: unknown) => error is {
|
|
9
|
+
error: 'totp-invalid';
|
|
10
|
+
} | {
|
|
11
|
+
errorType: 'totp-invalid';
|
|
12
|
+
};
|
|
13
|
+
export declare const isTwoFactorMethod: (method: string) => method is "totp" | "email" | "password";
|
|
14
|
+
export declare const hasRequiredTwoFactorMethod: (error: unknown) => error is {
|
|
15
|
+
details: {
|
|
16
|
+
method: TwoFactorMethod;
|
|
17
|
+
emailOrUsername?: string;
|
|
18
|
+
};
|
|
19
|
+
};
|
|
20
|
+
export {};
|
|
21
|
+
//# sourceMappingURL=errors.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"AAAA,QAAA,MAAM,gBAAgB,wCAAyC,CAAC;AAEhE,KAAK,eAAe,GAAG,CAAC,OAAO,gBAAgB,CAAC,CAAC,MAAM,CAAC,CAAC;AAEzD,eAAO,MAAM,mBAAmB,UAAW,OAAO;WAAqB,eAAe;;eAAkB,eAAe;CAGvC,CAAC;AAEjF,eAAO,MAAM,kBAAkB,UAAW,OAAO;WAAqB,cAAc;;eAAkB,cAAc;CAEvC,CAAC;AAE9E,eAAO,MAAM,iBAAiB,WAAY,MAAM,4CAAoF,CAAC;AAErI,eAAO,MAAM,0BAA0B,UAAW,OAAO;aAAuB;QAAE,MAAM,EAAE,eAAe,CAAC;QAAC,eAAe,CAAC,EAAE,MAAM,CAAA;KAAE;CAQpI,CAAC"}
|
package/dist/errors.js
ADDED
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.hasRequiredTwoFactorMethod = exports.isTwoFactorMethod = exports.isTotpInvalidError = exports.isTotpRequiredError = void 0;
|
|
4
|
+
const twoFactorMethods = ['totp', 'email', 'password'];
|
|
5
|
+
const isTotpRequiredError = (error) => typeof error === 'object' &&
|
|
6
|
+
((error === null || error === void 0 ? void 0 : error.error) === 'totp-required' ||
|
|
7
|
+
(error === null || error === void 0 ? void 0 : error.errorType) === 'totp-required');
|
|
8
|
+
exports.isTotpRequiredError = isTotpRequiredError;
|
|
9
|
+
const isTotpInvalidError = (error) => (error === null || error === void 0 ? void 0 : error.error) === 'totp-invalid' ||
|
|
10
|
+
(error === null || error === void 0 ? void 0 : error.errorType) === 'totp-invalid';
|
|
11
|
+
exports.isTotpInvalidError = isTotpInvalidError;
|
|
12
|
+
const isTwoFactorMethod = (method) => twoFactorMethods.includes(method);
|
|
13
|
+
exports.isTwoFactorMethod = isTwoFactorMethod;
|
|
14
|
+
const hasRequiredTwoFactorMethod = (error) => {
|
|
15
|
+
const details = error && typeof error === 'object' && 'details' in error && error.details;
|
|
16
|
+
return (typeof details === 'object' &&
|
|
17
|
+
details !== null &&
|
|
18
|
+
typeof details.method === 'string' &&
|
|
19
|
+
(0, exports.isTwoFactorMethod)(details.method));
|
|
20
|
+
};
|
|
21
|
+
exports.hasRequiredTwoFactorMethod = hasRequiredTwoFactorMethod;
|
|
22
|
+
//# sourceMappingURL=errors.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"errors.js","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":";;;AAAA,MAAM,gBAAgB,GAAG,CAAC,MAAM,EAAE,OAAO,EAAE,UAAU,CAAU,CAAC;AAIzD,MAAM,mBAAmB,GAAG,CAAC,KAAc,EAAwE,EAAE,CAC3H,OAAO,KAAK,KAAK,QAAQ;IACzB,CAAC,CAAC,KAAyC,aAAzC,KAAK,uBAAL,KAAK,CAAsC,KAAK,MAAK,eAAe;QACrE,CAAC,KAA6C,aAA7C,KAAK,uBAAL,KAAK,CAA0C,SAAS,MAAK,eAAe,CAAC,CAAC;AAHpE,QAAA,mBAAmB,uBAGiD;AAE1E,MAAM,kBAAkB,GAAG,CAAC,KAAc,EAAsE,EAAE,CACxH,CAAC,KAAyC,aAAzC,KAAK,uBAAL,KAAK,CAAsC,KAAK,MAAK,cAAc;IACpE,CAAC,KAA6C,aAA7C,KAAK,uBAAL,KAAK,CAA0C,SAAS,MAAK,cAAc,CAAC;AAFjE,QAAA,kBAAkB,sBAE+C;AAEvE,MAAM,iBAAiB,GAAG,CAAC,MAAc,EAA6B,EAAE,CAAC,gBAAgB,CAAC,QAAQ,CAAC,MAAyB,CAAC,CAAC;AAAxH,QAAA,iBAAiB,qBAAuG;AAE9H,MAAM,0BAA0B,GAAG,CAAC,KAAc,EAA+E,EAAE;IACzI,MAAM,OAAO,GAAG,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,SAAS,IAAI,KAAK,IAAK,KAAK,CAAC,OAAmB,CAAC;IACvG,OAAO,CACN,OAAO,OAAO,KAAK,QAAQ;QAC3B,OAAO,KAAK,IAAI;QAChB,OAAQ,OAA+B,CAAC,MAAM,KAAK,QAAQ;QAC3D,IAAA,yBAAiB,EAAE,OAA8B,CAAC,MAAM,CAAC,CACzD,CAAC;AACH,CAAC,CAAC;AARW,QAAA,0BAA0B,8BAQrC"}
|
package/dist/index.d.ts
ADDED
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import type { Serialized } from '@rocket.chat/core-typings';
|
|
2
|
+
import type { MatchPathPattern, ParamsFor, OperationResult, PathWithoutParamsFor, PathWithParamsFor } from '@rocket.chat/rest-typings';
|
|
3
|
+
import type { Middleware, RestClientInterface } from './RestClientInterface';
|
|
4
|
+
export { RestClientInterface };
|
|
5
|
+
export declare class RestClient implements RestClientInterface {
|
|
6
|
+
private twoFactorHandler?;
|
|
7
|
+
private readonly baseUrl;
|
|
8
|
+
private headers;
|
|
9
|
+
private credentials;
|
|
10
|
+
constructor({ baseUrl, credentials, headers, }: {
|
|
11
|
+
baseUrl: string;
|
|
12
|
+
credentials?: {
|
|
13
|
+
'X-User-Id': string;
|
|
14
|
+
'X-Auth-Token': string;
|
|
15
|
+
};
|
|
16
|
+
headers?: Record<string, string>;
|
|
17
|
+
});
|
|
18
|
+
getCredentials(): ReturnType<RestClientInterface['getCredentials']>;
|
|
19
|
+
setCredentials: RestClientInterface['setCredentials'];
|
|
20
|
+
get<TPathPattern extends MatchPathPattern<TPath>, TPath extends PathWithParamsFor<'GET'> = PathWithParamsFor<'GET'>>(endpoint: TPath, params: ParamsFor<'GET', TPathPattern>, options?: Omit<RequestInit, 'method'>): Promise<Serialized<OperationResult<'GET', TPathPattern>>>;
|
|
21
|
+
get<TPathPattern extends MatchPathPattern<TPath>, TPath extends PathWithoutParamsFor<'GET'> = PathWithoutParamsFor<'GET'>>(endpoint: TPath, params?: undefined, options?: Omit<RequestInit, 'method'>): Promise<Serialized<OperationResult<'GET', TPathPattern>>>;
|
|
22
|
+
post<TPathPattern extends MatchPathPattern<TPath>, TPath extends PathWithParamsFor<'POST'> = PathWithParamsFor<'POST'>>(endpoint: TPath, params: ParamsFor<'POST', TPathPattern>, options?: Omit<RequestInit, 'method'>): Promise<Serialized<OperationResult<'POST', TPathPattern>>>;
|
|
23
|
+
post<TPathPattern extends MatchPathPattern<TPath>, TPath extends PathWithoutParamsFor<'POST'> = PathWithoutParamsFor<'POST'>>(endpoint: TPath, params?: undefined, options?: Omit<RequestInit, 'method'>): Promise<Serialized<OperationResult<'POST', TPathPattern>>>;
|
|
24
|
+
put<TPathPattern extends MatchPathPattern<TPath>, TPath extends PathWithParamsFor<'PUT'> = PathWithParamsFor<'PUT'>>(endpoint: TPath, params: ParamsFor<'PUT', TPathPattern>, options?: Omit<RequestInit, 'method'>): Promise<Serialized<OperationResult<'PUT', TPathPattern>>>;
|
|
25
|
+
put<TPathPattern extends MatchPathPattern<TPath>, TPath extends PathWithoutParamsFor<'PUT'> = PathWithoutParamsFor<'PUT'>>(endpoint: TPath, params?: undefined, options?: Omit<RequestInit, 'method'>): Promise<Serialized<OperationResult<'PUT', TPathPattern>>>;
|
|
26
|
+
delete<TPathPattern extends MatchPathPattern<TPath>, TPath extends PathWithParamsFor<'DELETE'> = PathWithParamsFor<'DELETE'>>(endpoint: TPath, params: ParamsFor<'DELETE', TPathPattern>, options?: Omit<RequestInit, 'method'>): Promise<Serialized<OperationResult<'DELETE', TPathPattern>>>;
|
|
27
|
+
delete<TPathPattern extends MatchPathPattern<TPath>, TPath extends PathWithoutParamsFor<'DELETE'> = PathWithoutParamsFor<'DELETE'>>(endpoint: TPath, params?: undefined, options?: Omit<RequestInit, 'method'>): Promise<Serialized<OperationResult<'DELETE', TPathPattern>>>;
|
|
28
|
+
protected getCredentialsAsHeaders(): Record<string, string>;
|
|
29
|
+
send(endpoint: string, method: string, { headers, ...options }?: Omit<RequestInit, 'method'>): Promise<Response>;
|
|
30
|
+
protected getParams(data: Record<string, object | number | string | boolean> | void): string;
|
|
31
|
+
upload: RestClientInterface['upload'];
|
|
32
|
+
use(middleware: Middleware<RestClientInterface['send']>): void;
|
|
33
|
+
handleTwoFactorChallenge(cb: (args: {
|
|
34
|
+
method: 'totp' | 'email' | 'password';
|
|
35
|
+
emailOrUsername?: string;
|
|
36
|
+
invalidAttempt?: boolean;
|
|
37
|
+
}) => Promise<string>): void;
|
|
38
|
+
}
|
|
39
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
ADDED
|
@@ -0,0 +1,183 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
var __rest = (this && this.__rest) || function (s, e) {
|
|
12
|
+
var t = {};
|
|
13
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
|
|
14
|
+
t[p] = s[p];
|
|
15
|
+
if (s != null && typeof Object.getOwnPropertySymbols === "function")
|
|
16
|
+
for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
|
|
17
|
+
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
|
|
18
|
+
t[p[i]] = s[p[i]];
|
|
19
|
+
}
|
|
20
|
+
return t;
|
|
21
|
+
};
|
|
22
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
23
|
+
exports.RestClient = void 0;
|
|
24
|
+
const query_string_1 = require("query-string");
|
|
25
|
+
const errors_1 = require("./errors");
|
|
26
|
+
const pipe = (fn) => (...args) => fn(...args);
|
|
27
|
+
function buildFormData(data, formData = new FormData(), parentKey) {
|
|
28
|
+
if (data instanceof FormData) {
|
|
29
|
+
return data;
|
|
30
|
+
}
|
|
31
|
+
if (!data) {
|
|
32
|
+
return formData;
|
|
33
|
+
}
|
|
34
|
+
if (typeof data === 'object' && !(data instanceof File)) {
|
|
35
|
+
Object.keys(data).forEach((key) => {
|
|
36
|
+
buildFormData(formData, data[key], parentKey ? `${parentKey}[${key}]` : key);
|
|
37
|
+
});
|
|
38
|
+
}
|
|
39
|
+
else {
|
|
40
|
+
data && parentKey && formData.append(parentKey, data);
|
|
41
|
+
}
|
|
42
|
+
return formData;
|
|
43
|
+
}
|
|
44
|
+
const checkIfIsFormData = (data = {}) => {
|
|
45
|
+
if (data instanceof FormData) {
|
|
46
|
+
return true;
|
|
47
|
+
}
|
|
48
|
+
return Object.values(data).some((value) => {
|
|
49
|
+
if (value && typeof value === 'object' && !(value instanceof File)) {
|
|
50
|
+
return checkIfIsFormData(value);
|
|
51
|
+
}
|
|
52
|
+
return value instanceof File;
|
|
53
|
+
});
|
|
54
|
+
};
|
|
55
|
+
class RestClient {
|
|
56
|
+
constructor({ baseUrl, credentials, headers = {}, }) {
|
|
57
|
+
this.headers = {};
|
|
58
|
+
this.setCredentials = (credentials) => {
|
|
59
|
+
this.credentials = credentials;
|
|
60
|
+
};
|
|
61
|
+
this.upload = (endpoint, params, events, options = {}) => {
|
|
62
|
+
if (!params) {
|
|
63
|
+
throw new Error('Missing params');
|
|
64
|
+
}
|
|
65
|
+
const xhr = new XMLHttpRequest();
|
|
66
|
+
const data = new FormData();
|
|
67
|
+
Object.entries(params).forEach(([key, value]) => {
|
|
68
|
+
if (value instanceof File) {
|
|
69
|
+
data.append(key, value, value.name);
|
|
70
|
+
return;
|
|
71
|
+
}
|
|
72
|
+
value && data.append(key, value);
|
|
73
|
+
});
|
|
74
|
+
xhr.open('POST', `${this.baseUrl}${`/${endpoint}`.replace(/\/+/, '/')}`, true);
|
|
75
|
+
Object.entries(Object.assign(Object.assign({}, this.getCredentialsAsHeaders()), options.headers)).forEach(([key, value]) => {
|
|
76
|
+
xhr.setRequestHeader(key, value);
|
|
77
|
+
});
|
|
78
|
+
if (events === null || events === void 0 ? void 0 : events.load) {
|
|
79
|
+
xhr.upload.addEventListener('load', events.load);
|
|
80
|
+
}
|
|
81
|
+
if (events === null || events === void 0 ? void 0 : events.progress) {
|
|
82
|
+
xhr.upload.addEventListener('progress', events.progress);
|
|
83
|
+
}
|
|
84
|
+
if (events === null || events === void 0 ? void 0 : events.error) {
|
|
85
|
+
xhr.addEventListener('error', events.error);
|
|
86
|
+
}
|
|
87
|
+
if (events === null || events === void 0 ? void 0 : events.abort) {
|
|
88
|
+
xhr.addEventListener('abort', events.abort);
|
|
89
|
+
}
|
|
90
|
+
xhr.send(data);
|
|
91
|
+
return xhr;
|
|
92
|
+
};
|
|
93
|
+
this.baseUrl = `${baseUrl}/api`;
|
|
94
|
+
this.setCredentials(credentials);
|
|
95
|
+
this.headers = headers;
|
|
96
|
+
}
|
|
97
|
+
getCredentials() {
|
|
98
|
+
return this.credentials;
|
|
99
|
+
}
|
|
100
|
+
get(endpoint, params, options) {
|
|
101
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
102
|
+
if (/\?/.test(endpoint)) {
|
|
103
|
+
// throw new Error('Endpoint cannot contain query string');
|
|
104
|
+
console.warn('Endpoint cannot contain query string', endpoint);
|
|
105
|
+
}
|
|
106
|
+
const queryParams = this.getParams(params);
|
|
107
|
+
const response = yield this.send(`${endpoint}${queryParams ? `?${queryParams}` : ''}`, 'GET', options !== null && options !== void 0 ? options : {});
|
|
108
|
+
return response.json();
|
|
109
|
+
});
|
|
110
|
+
}
|
|
111
|
+
post(endpoint, params, _a = {}) {
|
|
112
|
+
var { headers } = _a, options = __rest(_a, ["headers"]);
|
|
113
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
114
|
+
const isFormData = checkIfIsFormData(params);
|
|
115
|
+
const response = yield this.send(endpoint, 'POST', Object.assign({ body: isFormData ? buildFormData(params) : JSON.stringify(params), headers: Object.assign(Object.assign({ Accept: 'application/json' }, (!isFormData && { 'Content-Type': 'application/json' })), headers) }, options));
|
|
116
|
+
// If the server sent no data, return an empty record as we're only expecting objects.
|
|
117
|
+
if (response.status === 204) {
|
|
118
|
+
return {};
|
|
119
|
+
}
|
|
120
|
+
return response.json();
|
|
121
|
+
});
|
|
122
|
+
}
|
|
123
|
+
put(endpoint, params, _a = {}) {
|
|
124
|
+
var { headers } = _a, options = __rest(_a, ["headers"]);
|
|
125
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
126
|
+
const isFormData = checkIfIsFormData(params);
|
|
127
|
+
const response = yield this.send(endpoint, 'PUT', Object.assign({ body: isFormData ? buildFormData(params) : JSON.stringify(params), headers: Object.assign(Object.assign({ Accept: 'application/json' }, (!isFormData && { 'Content-Type': 'application/json' })), headers) }, options));
|
|
128
|
+
return response.json();
|
|
129
|
+
});
|
|
130
|
+
}
|
|
131
|
+
delete(endpoint, _params, options = {}) {
|
|
132
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
133
|
+
const response = yield this.send(endpoint, 'DELETE', options !== null && options !== void 0 ? options : {});
|
|
134
|
+
return response.json();
|
|
135
|
+
});
|
|
136
|
+
}
|
|
137
|
+
getCredentialsAsHeaders() {
|
|
138
|
+
const credentials = this.getCredentials();
|
|
139
|
+
return credentials
|
|
140
|
+
? {
|
|
141
|
+
'X-User-Id': credentials['X-User-Id'],
|
|
142
|
+
'X-Auth-Token': credentials['X-Auth-Token'],
|
|
143
|
+
}
|
|
144
|
+
: {};
|
|
145
|
+
}
|
|
146
|
+
send(endpoint, method, _a = {}) {
|
|
147
|
+
var { headers } = _a, options = __rest(_a, ["headers"]);
|
|
148
|
+
return fetch(`${this.baseUrl}${`/${endpoint}`.replace(/\/+/, '/')}`, Object.assign(Object.assign({}, options), { headers: Object.assign(Object.assign(Object.assign({}, this.getCredentialsAsHeaders()), this.headers), headers), method })).then((response) => __awaiter(this, void 0, void 0, function* () {
|
|
149
|
+
if (response.ok) {
|
|
150
|
+
return response;
|
|
151
|
+
}
|
|
152
|
+
if (response.status !== 400) {
|
|
153
|
+
return Promise.reject(response);
|
|
154
|
+
}
|
|
155
|
+
const clone = response.clone();
|
|
156
|
+
const error = yield clone.json();
|
|
157
|
+
if (((0, errors_1.isTotpRequiredError)(error) || (0, errors_1.isTotpInvalidError)(error)) && (0, errors_1.hasRequiredTwoFactorMethod)(error) && this.twoFactorHandler) {
|
|
158
|
+
const method2fa = 'details' in error ? error.details.method : 'password';
|
|
159
|
+
const code = yield this.twoFactorHandler({
|
|
160
|
+
method: method2fa,
|
|
161
|
+
emailOrUsername: error.details.emailOrUsername,
|
|
162
|
+
invalidAttempt: (0, errors_1.isTotpInvalidError)(error),
|
|
163
|
+
});
|
|
164
|
+
return this.send(endpoint, method, Object.assign(Object.assign({}, options), { headers: Object.assign(Object.assign(Object.assign(Object.assign({}, this.getCredentialsAsHeaders()), this.headers), headers), { 'x-2fa-code': code, 'x-2fa-method': method2fa }) }));
|
|
165
|
+
}
|
|
166
|
+
return Promise.reject(response);
|
|
167
|
+
}));
|
|
168
|
+
}
|
|
169
|
+
getParams(data) {
|
|
170
|
+
return data ? (0, query_string_1.stringify)(data, { arrayFormat: 'bracket' }) : '';
|
|
171
|
+
}
|
|
172
|
+
use(middleware) {
|
|
173
|
+
const fn = this.send.bind(this);
|
|
174
|
+
this.send = function (...context) {
|
|
175
|
+
return middleware(context, pipe(fn));
|
|
176
|
+
};
|
|
177
|
+
}
|
|
178
|
+
handleTwoFactorChallenge(cb) {
|
|
179
|
+
this.twoFactorHandler = cb;
|
|
180
|
+
}
|
|
181
|
+
}
|
|
182
|
+
exports.RestClient = RestClient;
|
|
183
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@rocket.chat/api-client",
|
|
3
|
-
"version": "0.1.0-rc.
|
|
3
|
+
"version": "0.1.0-rc.2",
|
|
4
4
|
"devDependencies": {
|
|
5
5
|
"@swc/core": "^1.3.66",
|
|
6
6
|
"@swc/jest": "^0.2.26",
|
|
@@ -25,8 +25,8 @@
|
|
|
25
25
|
"/dist"
|
|
26
26
|
],
|
|
27
27
|
"dependencies": {
|
|
28
|
-
"@rocket.chat/core-typings": "^6.3.0-rc.
|
|
29
|
-
"@rocket.chat/rest-typings": "^6.3.0-rc.
|
|
28
|
+
"@rocket.chat/core-typings": "^6.3.0-rc.2",
|
|
29
|
+
"@rocket.chat/rest-typings": "^6.3.0-rc.2",
|
|
30
30
|
"filter-obj": "^3.0.0",
|
|
31
31
|
"query-string": "^7.1.3",
|
|
32
32
|
"split-on-first": "^3.0.0",
|