@steedos/client 2.2.52 → 2.2.53-beta.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/lib/client4.d.ts +99 -0
- package/lib/fetch_etag.d.ts +2 -0
- package/lib/graphql.d.ts +8 -0
- package/lib/index.d.ts +2 -0
- package/lib/sobject.d.ts +63 -0
- package/lib/types/client4.d.ts +36 -0
- package/lib/types/errors.d.ts +12 -0
- package/lib/types/json.d.ts +24 -0
- package/lib/types/sobject.d.ts +12 -0
- package/lib/types/spaces.d.ts +16 -0
- package/lib/types/users.d.ts +18 -0
- package/lib/types/utilities.d.ts +53 -0
- package/lib/utils/helpers.d.ts +2 -0
- package/lib/utils/sentry.d.ts +1 -0
- package/package.json +3 -3
package/lib/client4.d.ts
ADDED
|
@@ -0,0 +1,99 @@
|
|
|
1
|
+
import { Options, ClientResponse } from './types/client4';
|
|
2
|
+
import { UserProfile } from './types/users';
|
|
3
|
+
import { ServerError } from './types/errors';
|
|
4
|
+
import { Space } from './types/spaces';
|
|
5
|
+
import Graphql from './graphql';
|
|
6
|
+
export declare const HEADER_X_VERSION_ID = "X-Version-Id";
|
|
7
|
+
export declare const DEFAULT_LIMIT_BEFORE = 30;
|
|
8
|
+
export declare const DEFAULT_LIMIT_AFTER = 30;
|
|
9
|
+
export default class SteedosClient {
|
|
10
|
+
LOGIN_TOKEN_KEY: string;
|
|
11
|
+
LOGIN_TOKEN_EXPIRES_KEY: string;
|
|
12
|
+
USER_ID_KEY: string;
|
|
13
|
+
logToConsole: boolean;
|
|
14
|
+
_lastLoginTokenWhenPolled: null;
|
|
15
|
+
loginExpirationInDays: null;
|
|
16
|
+
serverVersion: string;
|
|
17
|
+
clusterId: string;
|
|
18
|
+
token: string;
|
|
19
|
+
spaceId: string;
|
|
20
|
+
authToken: string;
|
|
21
|
+
csrf: string;
|
|
22
|
+
url: string;
|
|
23
|
+
urlVersion: string;
|
|
24
|
+
userAgent: string | null;
|
|
25
|
+
enableLogging: boolean;
|
|
26
|
+
defaultHeaders: {
|
|
27
|
+
[x: string]: string;
|
|
28
|
+
};
|
|
29
|
+
userId: string;
|
|
30
|
+
diagnosticId: string;
|
|
31
|
+
includeCookies: boolean;
|
|
32
|
+
isRudderKeySet: boolean;
|
|
33
|
+
translations: {
|
|
34
|
+
connectionError: string;
|
|
35
|
+
unknownError: string;
|
|
36
|
+
};
|
|
37
|
+
userRoles?: string;
|
|
38
|
+
sobjects: {};
|
|
39
|
+
graphql: Graphql;
|
|
40
|
+
getUrl(): string;
|
|
41
|
+
getAbsoluteUrl(baseUrl: string): string;
|
|
42
|
+
setUrl(url: string): void;
|
|
43
|
+
setUserAgent(userAgent: string): void;
|
|
44
|
+
getToken(): string;
|
|
45
|
+
setToken(token: string): void;
|
|
46
|
+
getSpaceId(): string;
|
|
47
|
+
setSpaceId(spaceId: any): void;
|
|
48
|
+
getAuthToken(): string;
|
|
49
|
+
setCSRF(csrfToken: string): void;
|
|
50
|
+
setAcceptLanguage(locale: string): void;
|
|
51
|
+
setEnableLogging(enable: boolean): void;
|
|
52
|
+
setIncludeCookies(include: boolean): void;
|
|
53
|
+
setUserId(userId: string): void;
|
|
54
|
+
setUserRoles(roles: string): void;
|
|
55
|
+
setDiagnosticId(diagnosticId: string): void;
|
|
56
|
+
enableRudderEvents(): void;
|
|
57
|
+
getServerVersion(): string;
|
|
58
|
+
getUrlVersion(): string;
|
|
59
|
+
getBaseRoute(): string;
|
|
60
|
+
getAccountsRoute(): string;
|
|
61
|
+
getCSRFFromCookie(): string;
|
|
62
|
+
getOptions(options: Options): {
|
|
63
|
+
headers: {
|
|
64
|
+
[x: string]: string;
|
|
65
|
+
};
|
|
66
|
+
method?: string | undefined;
|
|
67
|
+
url?: string | undefined;
|
|
68
|
+
credentials?: "omit" | "same-origin" | "include" | undefined;
|
|
69
|
+
body?: any;
|
|
70
|
+
};
|
|
71
|
+
getTranslations: (url: string) => Promise<Record<string, string>>;
|
|
72
|
+
logClientError: (message: string, level?: string) => void;
|
|
73
|
+
login: (user: string | object, password: string, token?: string, deviceId?: string) => Promise<UserProfile>;
|
|
74
|
+
createUser: (user: UserProfile, token: string, inviteId: string, redirect: string) => any;
|
|
75
|
+
createSpace: (name: string) => any;
|
|
76
|
+
sendVerificationToken: (user: string) => Promise<UserProfile>;
|
|
77
|
+
getSettings: () => Promise<UserProfile>;
|
|
78
|
+
getMe: () => Promise<UserProfile>;
|
|
79
|
+
getMySpaces: () => Promise<Space[]>;
|
|
80
|
+
logout: () => Promise<Response>;
|
|
81
|
+
doFetch: <T>(url: string, options: Options) => Promise<T>;
|
|
82
|
+
doFetchWithResponse: <T>(url: string, options: Options) => Promise<ClientResponse<T>>;
|
|
83
|
+
trackEvent(category: string, event: string, props?: any): void;
|
|
84
|
+
changePassword: (oldPassword: string, newPassword: string) => Promise<UserProfile>;
|
|
85
|
+
verifyEmail: (email: string, code: string) => Promise<UserProfile>;
|
|
86
|
+
verifyMobile: (mobile: string, code: string) => Promise<UserProfile>;
|
|
87
|
+
sobject: (objectName: any) => any;
|
|
88
|
+
}
|
|
89
|
+
export declare class ClientError extends Error implements ServerError {
|
|
90
|
+
url?: string;
|
|
91
|
+
intl?: {
|
|
92
|
+
id: string;
|
|
93
|
+
defaultMessage: string;
|
|
94
|
+
values?: any;
|
|
95
|
+
};
|
|
96
|
+
server_error_id?: string;
|
|
97
|
+
status_code?: number;
|
|
98
|
+
constructor(baseUrl: string, data: ServerError);
|
|
99
|
+
}
|
package/lib/graphql.d.ts
ADDED
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
export default class Graphql {
|
|
2
|
+
client: any;
|
|
3
|
+
constructor(client: any);
|
|
4
|
+
query(query: string): Promise<any>;
|
|
5
|
+
insert(objectName: string, data: any): Promise<any>;
|
|
6
|
+
update(objectName: string, _id: string, data: any): Promise<any>;
|
|
7
|
+
delete(objectName: string, _id: string): Promise<any>;
|
|
8
|
+
}
|
package/lib/index.d.ts
ADDED
package/lib/sobject.d.ts
ADDED
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
import { Filters, Fields, Options, Record } from './types/sobject';
|
|
2
|
+
export default class SObject {
|
|
3
|
+
client: any;
|
|
4
|
+
objectName: string;
|
|
5
|
+
constructor(client: any, objectName: any);
|
|
6
|
+
private getFilter;
|
|
7
|
+
private getSelect;
|
|
8
|
+
private getQueryParams;
|
|
9
|
+
/**
|
|
10
|
+
* Find and fetch records which matches given conditions
|
|
11
|
+
*
|
|
12
|
+
* @param {String|Array} [filters] - filtering records
|
|
13
|
+
* @param {String|Array} [fields] - Fields to fetch.
|
|
14
|
+
* @param {Object} [options] - Query options.
|
|
15
|
+
* @param {Number} [options.$top] - Maximum number of records the query will return.
|
|
16
|
+
* @param {Number} [options.$skip] - Synonym of options.offset.
|
|
17
|
+
* @param {String} [options.$orderby] - sorting.
|
|
18
|
+
* @param {boolean} [options.$count] - count.
|
|
19
|
+
* @returns {Promise<Array<Record>>}
|
|
20
|
+
*/
|
|
21
|
+
find(filters: Filters, fields: Fields, options: Options): Promise<any>;
|
|
22
|
+
/**
|
|
23
|
+
* TODO 根据条件查询数据,返回1条($top = 1)。
|
|
24
|
+
* @param filters
|
|
25
|
+
* @param fields
|
|
26
|
+
* @param options
|
|
27
|
+
* @returns {Promise<Record>}
|
|
28
|
+
*/
|
|
29
|
+
findOne(filters: Filters, fields: Fields, options: Options): Promise<void>;
|
|
30
|
+
/**
|
|
31
|
+
* TODO 根据id查询数据。
|
|
32
|
+
* @param id
|
|
33
|
+
* @param fields
|
|
34
|
+
*/
|
|
35
|
+
record(id: string, fields: Fields): Promise<void>;
|
|
36
|
+
/**
|
|
37
|
+
* TODO 根据ids查询数据。
|
|
38
|
+
* @param ids
|
|
39
|
+
* @param fields
|
|
40
|
+
*/
|
|
41
|
+
retrieve(ids: Array<string>, fields: Fields): Promise<void>;
|
|
42
|
+
/**
|
|
43
|
+
* TODO 写入数据,并返回新记录
|
|
44
|
+
* @param doc
|
|
45
|
+
*/
|
|
46
|
+
insert(doc: Record): Promise<void>;
|
|
47
|
+
/**
|
|
48
|
+
* TODO 根据id,修改记录,并返回新记录
|
|
49
|
+
* @param id
|
|
50
|
+
* @param doc
|
|
51
|
+
*/
|
|
52
|
+
update(id: string, doc: Record): Promise<void>;
|
|
53
|
+
/**
|
|
54
|
+
* TODO 根据id, 删除记录
|
|
55
|
+
* @param id
|
|
56
|
+
*/
|
|
57
|
+
delete(id: string): Promise<void>;
|
|
58
|
+
/**
|
|
59
|
+
* TODO 返回满足条件的记录数
|
|
60
|
+
* @param filters
|
|
61
|
+
*/
|
|
62
|
+
count(filters: Filters): Promise<void>;
|
|
63
|
+
}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
export declare type logLevel = 'ERROR' | 'WARNING' | 'INFO';
|
|
2
|
+
export declare type ClientResponse<T> = {
|
|
3
|
+
response: Response;
|
|
4
|
+
headers: Map<string, string>;
|
|
5
|
+
data: T;
|
|
6
|
+
};
|
|
7
|
+
declare type ErrorOffline = {
|
|
8
|
+
message: string;
|
|
9
|
+
url: string;
|
|
10
|
+
};
|
|
11
|
+
declare type ErrorInvalidResponse = {
|
|
12
|
+
intl: {
|
|
13
|
+
id: string;
|
|
14
|
+
defaultMessage: string;
|
|
15
|
+
};
|
|
16
|
+
};
|
|
17
|
+
export declare type ErrorApi = {
|
|
18
|
+
message: string;
|
|
19
|
+
server_error_id: string;
|
|
20
|
+
status_code: number;
|
|
21
|
+
url: string;
|
|
22
|
+
};
|
|
23
|
+
export declare type Client4Error = ErrorOffline | ErrorInvalidResponse | ErrorApi;
|
|
24
|
+
export declare type Options = {
|
|
25
|
+
headers?: {
|
|
26
|
+
[x: string]: string;
|
|
27
|
+
};
|
|
28
|
+
method?: string;
|
|
29
|
+
url?: string;
|
|
30
|
+
credentials?: 'omit' | 'same-origin' | 'include';
|
|
31
|
+
body?: any;
|
|
32
|
+
};
|
|
33
|
+
export declare type StatusOK = {
|
|
34
|
+
status: 'OK';
|
|
35
|
+
};
|
|
36
|
+
export {};
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
declare type Optional<T> = T | undefined;
|
|
2
|
+
export interface Dictionary<T = unknown> {
|
|
3
|
+
[key: string]: Optional<T>;
|
|
4
|
+
}
|
|
5
|
+
export declare type JsonPrimitive = null | boolean | number | string;
|
|
6
|
+
/**
|
|
7
|
+
* Any valid JSON collection value.
|
|
8
|
+
*/
|
|
9
|
+
export declare type JsonCollection = JsonMap | JsonArray;
|
|
10
|
+
/**
|
|
11
|
+
* Any valid JSON value.
|
|
12
|
+
*/
|
|
13
|
+
export declare type AnyJson = JsonPrimitive | JsonCollection;
|
|
14
|
+
/**
|
|
15
|
+
* Any JSON-compatible object.
|
|
16
|
+
*/
|
|
17
|
+
export interface JsonMap extends Dictionary<AnyJson> {
|
|
18
|
+
}
|
|
19
|
+
/**
|
|
20
|
+
* Any JSON-compatible array.
|
|
21
|
+
*/
|
|
22
|
+
export interface JsonArray extends Array<AnyJson> {
|
|
23
|
+
}
|
|
24
|
+
export {};
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { JsonMap } from './json';
|
|
2
|
+
export declare type Filters = string | Array<any>;
|
|
3
|
+
export declare type Fields = string | Array<string>;
|
|
4
|
+
export declare type Options = {
|
|
5
|
+
$top?: Number;
|
|
6
|
+
$skip?: Number;
|
|
7
|
+
$orderby?: Number;
|
|
8
|
+
$count?: boolean;
|
|
9
|
+
$filter?: Filters;
|
|
10
|
+
$select?: Fields;
|
|
11
|
+
};
|
|
12
|
+
export declare type Record = JsonMap;
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { IDMappedObjects } from './utilities';
|
|
2
|
+
export declare type Space = {
|
|
3
|
+
_id: string;
|
|
4
|
+
name: string;
|
|
5
|
+
};
|
|
6
|
+
export declare type SpaceUser = {
|
|
7
|
+
_id: string;
|
|
8
|
+
space: string;
|
|
9
|
+
user: string;
|
|
10
|
+
};
|
|
11
|
+
export declare type SpacesState = {
|
|
12
|
+
currentSpaceId: string;
|
|
13
|
+
spaces: IDMappedObjects<Space>;
|
|
14
|
+
mySpaces: IDMappedObjects<Space>;
|
|
15
|
+
mySpacesCount: number;
|
|
16
|
+
};
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { IDMappedObjects } from './utilities';
|
|
2
|
+
export declare type UserProfile = {
|
|
3
|
+
_id: string;
|
|
4
|
+
create_at: number;
|
|
5
|
+
update_at: number;
|
|
6
|
+
delete_at: number;
|
|
7
|
+
username: string;
|
|
8
|
+
password: string;
|
|
9
|
+
email: string;
|
|
10
|
+
email_verified: boolean;
|
|
11
|
+
name: string;
|
|
12
|
+
failed_attempts: number;
|
|
13
|
+
locale: string;
|
|
14
|
+
};
|
|
15
|
+
export declare type UsersState = {
|
|
16
|
+
currentUserId: string;
|
|
17
|
+
users: IDMappedObjects<UserProfile>;
|
|
18
|
+
};
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
export declare type $ID<E extends {
|
|
2
|
+
_id: string;
|
|
3
|
+
}> = E['_id'];
|
|
4
|
+
export declare type $UserID<E extends {
|
|
5
|
+
user_id: string;
|
|
6
|
+
}> = E['user_id'];
|
|
7
|
+
export declare type $Name<E extends {
|
|
8
|
+
name: string;
|
|
9
|
+
}> = E['name'];
|
|
10
|
+
export declare type $Username<E extends {
|
|
11
|
+
username: string;
|
|
12
|
+
}> = E['username'];
|
|
13
|
+
export declare type $Email<E extends {
|
|
14
|
+
email: string;
|
|
15
|
+
}> = E['email'];
|
|
16
|
+
export declare type RelationOneToOne<E extends {
|
|
17
|
+
_id: string;
|
|
18
|
+
}, T> = {
|
|
19
|
+
[x in $ID<E>]: T;
|
|
20
|
+
};
|
|
21
|
+
export declare type RelationOneToMany<E1 extends {
|
|
22
|
+
_id: string;
|
|
23
|
+
}, E2 extends {
|
|
24
|
+
_id: string;
|
|
25
|
+
}> = {
|
|
26
|
+
[x in $ID<E1>]: Array<$ID<E2>>;
|
|
27
|
+
};
|
|
28
|
+
export declare type IDMappedObjects<E extends {
|
|
29
|
+
_id: string;
|
|
30
|
+
}> = RelationOneToOne<E, E>;
|
|
31
|
+
export declare type UserIDMappedObjects<E extends {
|
|
32
|
+
user_id: string;
|
|
33
|
+
}> = {
|
|
34
|
+
[x in $UserID<E>]: E;
|
|
35
|
+
};
|
|
36
|
+
export declare type NameMappedObjects<E extends {
|
|
37
|
+
name: string;
|
|
38
|
+
}> = {
|
|
39
|
+
[x in $Name<E>]: E;
|
|
40
|
+
};
|
|
41
|
+
export declare type UsernameMappedObjects<E extends {
|
|
42
|
+
username: string;
|
|
43
|
+
}> = {
|
|
44
|
+
[x in $Username<E>]: E;
|
|
45
|
+
};
|
|
46
|
+
export declare type EmailMappedObjects<E extends {
|
|
47
|
+
email: string;
|
|
48
|
+
}> = {
|
|
49
|
+
[x in $Email<E>]: E;
|
|
50
|
+
};
|
|
51
|
+
export declare type Dictionary<T> = {
|
|
52
|
+
[key: string]: T;
|
|
53
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function cleanUrlForLogging(baseUrl: any, apiUrl: any): any;
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"private": false,
|
|
3
3
|
"name": "@steedos/client",
|
|
4
|
-
"version": "2.2.
|
|
4
|
+
"version": "2.2.53-beta.2",
|
|
5
5
|
"description": "client lib for steedos",
|
|
6
6
|
"main": "lib/index.js",
|
|
7
7
|
"scripts": {
|
|
@@ -17,8 +17,8 @@
|
|
|
17
17
|
},
|
|
18
18
|
"license": "MIT",
|
|
19
19
|
"dependencies": {
|
|
20
|
-
"@steedos/filters": "2.2.
|
|
20
|
+
"@steedos/filters": "2.2.53-beta.2",
|
|
21
21
|
"node-fetch": "^2.6.7"
|
|
22
22
|
},
|
|
23
|
-
"gitHead": "
|
|
23
|
+
"gitHead": "d6d2230d72af49a72fc546093b553463cd2f0e9d"
|
|
24
24
|
}
|