@blackglory/estore-js 0.2.4 → 0.4.0
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/README.md +26 -221
- package/lib/contract.d.ts +16 -0
- package/lib/contract.js +2 -0
- package/lib/contract.js.map +1 -0
- package/lib/estore-client.d.ts +27 -0
- package/lib/estore-client.js +62 -0
- package/lib/estore-client.js.map +1 -0
- package/lib/index.d.ts +1 -0
- package/lib/index.js +2 -0
- package/lib/index.js.map +1 -0
- package/lib/utils/rpc-client.browser.d.ts +8 -0
- package/lib/utils/rpc-client.browser.js +24 -0
- package/lib/utils/rpc-client.browser.js.map +1 -0
- package/lib/utils/rpc-client.d.ts +8 -0
- package/lib/utils/rpc-client.js +25 -0
- package/lib/utils/rpc-client.js.map +1 -0
- package/package.json +47 -32
- package/lib/es2015/client.d.ts +0 -41
- package/lib/es2015/client.js +0 -139
- package/lib/es2015/client.js.map +0 -1
- package/lib/es2015/index.d.ts +0 -2
- package/lib/es2015/index.js +0 -15
- package/lib/es2015/index.js.map +0 -1
- package/lib/es2015/manager/base.d.ts +0 -13
- package/lib/es2015/manager/base.js +0 -26
- package/lib/es2015/manager/base.js.map +0 -1
- package/lib/es2015/manager/blacklist-manager.d.ts +0 -6
- package/lib/es2015/manager/blacklist-manager.js +0 -41
- package/lib/es2015/manager/blacklist-manager.js.map +0 -1
- package/lib/es2015/manager/index.d.ts +0 -20
- package/lib/es2015/manager/index.js +0 -20
- package/lib/es2015/manager/index.js.map +0 -1
- package/lib/es2015/manager/json-schema-manager.d.ts +0 -8
- package/lib/es2015/manager/json-schema-manager.js +0 -49
- package/lib/es2015/manager/json-schema-manager.js.map +0 -1
- package/lib/es2015/manager/token-manager.d.ts +0 -18
- package/lib/es2015/manager/token-manager.js +0 -73
- package/lib/es2015/manager/token-manager.js.map +0 -1
- package/lib/es2015/manager/token-policy-manager.d.ts +0 -17
- package/lib/es2015/manager/token-policy-manager.js +0 -73
- package/lib/es2015/manager/token-policy-manager.js.map +0 -1
- package/lib/es2015/manager/whitelist-manager.d.ts +0 -6
- package/lib/es2015/manager/whitelist-manager.js +0 -41
- package/lib/es2015/manager/whitelist-manager.js.map +0 -1
- package/lib/es2015/utils.d.ts +0 -1
- package/lib/es2015/utils.js +0 -5
- package/lib/es2015/utils.js.map +0 -1
- package/lib/es2018/client.d.ts +0 -41
- package/lib/es2018/client.js +0 -110
- package/lib/es2018/client.js.map +0 -1
- package/lib/es2018/index.d.ts +0 -2
- package/lib/es2018/index.js +0 -15
- package/lib/es2018/index.js.map +0 -1
- package/lib/es2018/manager/base.d.ts +0 -13
- package/lib/es2018/manager/base.js +0 -26
- package/lib/es2018/manager/base.js.map +0 -1
- package/lib/es2018/manager/blacklist-manager.d.ts +0 -6
- package/lib/es2018/manager/blacklist-manager.js +0 -26
- package/lib/es2018/manager/blacklist-manager.js.map +0 -1
- package/lib/es2018/manager/index.d.ts +0 -20
- package/lib/es2018/manager/index.js +0 -20
- package/lib/es2018/manager/index.js.map +0 -1
- package/lib/es2018/manager/json-schema-manager.d.ts +0 -8
- package/lib/es2018/manager/json-schema-manager.js +0 -32
- package/lib/es2018/manager/json-schema-manager.js.map +0 -1
- package/lib/es2018/manager/token-manager.d.ts +0 -18
- package/lib/es2018/manager/token-manager.js +0 -48
- package/lib/es2018/manager/token-manager.js.map +0 -1
- package/lib/es2018/manager/token-policy-manager.d.ts +0 -17
- package/lib/es2018/manager/token-policy-manager.js +0 -48
- package/lib/es2018/manager/token-policy-manager.js.map +0 -1
- package/lib/es2018/manager/whitelist-manager.d.ts +0 -6
- package/lib/es2018/manager/whitelist-manager.js +0 -26
- package/lib/es2018/manager/whitelist-manager.js.map +0 -1
- package/lib/es2018/utils.d.ts +0 -1
- package/lib/es2018/utils.js +0 -5
- package/lib/es2018/utils.js.map +0 -1
package/README.md
CHANGED
|
@@ -9,247 +9,52 @@ yarn add @blackglory/estore-js
|
|
|
9
9
|
## API
|
|
10
10
|
### EStoreClient
|
|
11
11
|
```ts
|
|
12
|
-
interface
|
|
12
|
+
interface IStats {
|
|
13
13
|
namespace: string
|
|
14
14
|
items: number
|
|
15
15
|
}
|
|
16
16
|
|
|
17
17
|
interface IEStoreClientOptions {
|
|
18
18
|
server: string
|
|
19
|
-
token?: string
|
|
20
|
-
basicAuth?: {
|
|
21
|
-
username: string
|
|
22
|
-
password: string
|
|
23
|
-
}
|
|
24
|
-
keepalive?: boolean
|
|
25
19
|
timeout?: number
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
interface IEStoreClientRequestOptions {
|
|
29
|
-
signal?: AbortSignal
|
|
30
|
-
token?: string
|
|
31
|
-
keepalive?: boolean
|
|
32
|
-
timeout?: number | false
|
|
33
|
-
}
|
|
34
|
-
|
|
35
|
-
interface IEStoreClientRequestOptionsWithoutToken {
|
|
36
|
-
signal?: AbortSignal
|
|
37
|
-
keepalive?: boolean
|
|
38
|
-
timeout?: number | false
|
|
20
|
+
retryIntervalForReconnection?: number
|
|
39
21
|
}
|
|
40
22
|
|
|
41
23
|
class EStoreClient {
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
append<T>(
|
|
45
|
-
namespace: string
|
|
46
|
-
, itemId: string
|
|
47
|
-
, payload: T
|
|
48
|
-
, index?: number
|
|
49
|
-
, options: IEStoreClientRequestOptions = {}
|
|
50
|
-
): Promise<void>
|
|
24
|
+
static create(options: IEStoreClientOptions): Promise<EStoreClient>
|
|
51
25
|
|
|
52
|
-
|
|
53
|
-
namespace: string
|
|
54
|
-
, itemId: string
|
|
55
|
-
, index: number
|
|
56
|
-
, options: IEStoreClientRequestOptions = {}
|
|
57
|
-
): Promise<T | undefined>
|
|
26
|
+
close(): Promise<void>
|
|
58
27
|
|
|
59
|
-
|
|
28
|
+
stats(namespace: string, timeout?: number): Promise<IStats>
|
|
29
|
+
getAllNamespaces(timeout?: number): Promise<string[]>
|
|
30
|
+
getAllItemIds(namespace: string, timeout?: number): Promise<string[]>
|
|
31
|
+
getAllEvents(
|
|
60
32
|
namespace: string
|
|
61
33
|
, itemId: string
|
|
62
|
-
,
|
|
63
|
-
): Promise<T[] | undefined>
|
|
64
|
-
|
|
65
|
-
getSize(
|
|
66
|
-
namespace: string
|
|
67
|
-
, itemId: string
|
|
68
|
-
, options: IEStoreClientRequestOptions = {}
|
|
69
|
-
): Promise<number>
|
|
70
|
-
|
|
71
|
-
has(
|
|
72
|
-
namespace: string
|
|
73
|
-
, itemId: string
|
|
74
|
-
, options: IEStoreClientRequestOptions = {}
|
|
75
|
-
): Promise<boolean>
|
|
76
|
-
|
|
77
|
-
del(
|
|
78
|
-
namespace: string
|
|
79
|
-
, itemId: string
|
|
80
|
-
, options: IEStoreClientRequestOptions = {}
|
|
81
|
-
): Promise<void>
|
|
82
|
-
|
|
83
|
-
clear(
|
|
84
|
-
namespace: string
|
|
85
|
-
, options: IEStoreClientRequestOptions = {}
|
|
86
|
-
): Promise<void>
|
|
87
|
-
|
|
88
|
-
getAllItemIds(
|
|
89
|
-
namespace: string
|
|
90
|
-
, options: IEStoreClientRequestOptions = {}
|
|
34
|
+
, timeout?: number
|
|
91
35
|
): Promise<string[]>
|
|
92
36
|
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
): Promise<
|
|
37
|
+
clearItemsByNamespace(namespace: string, timeout?: number): Promise<void>
|
|
38
|
+
removeItem(namespace: string, itemId: string, timeout?: number): Promise<void>
|
|
39
|
+
getItemSize(namespace: string, itemId: string, timeout?: number): Promise<number>
|
|
96
40
|
|
|
97
|
-
|
|
41
|
+
/**
|
|
42
|
+
* @param nextEventIndex 如果指定, 则会在eventIndex不等于下一个index时抛出EventIndexConflict错误.
|
|
43
|
+
* @throws {IllegalIndex}
|
|
44
|
+
*/
|
|
45
|
+
appendEvent(
|
|
98
46
|
namespace: string
|
|
99
|
-
,
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
### EStoreManager
|
|
105
|
-
```ts
|
|
106
|
-
interface IEStoreManagerRequestOptions {
|
|
107
|
-
signal?: AbortSignal
|
|
108
|
-
keepalive?: boolean
|
|
109
|
-
timeout?: number | false
|
|
110
|
-
}
|
|
111
|
-
|
|
112
|
-
interface IEStoreManagerOptions {
|
|
113
|
-
server: string
|
|
114
|
-
adminPassword: string
|
|
115
|
-
keepalive?: boolean
|
|
116
|
-
timeout?: number
|
|
117
|
-
}
|
|
118
|
-
|
|
119
|
-
class EStoreManager {
|
|
120
|
-
constructor(options: IEStoreManagerOptions)
|
|
121
|
-
|
|
122
|
-
JsonSchema: JsonSchemaManager
|
|
123
|
-
Blacklist: BlacklistManager
|
|
124
|
-
Whitelist: WhitelistManager
|
|
125
|
-
TokenPolicy: TokenPolicyManager
|
|
126
|
-
Token: TokenManager
|
|
127
|
-
}
|
|
128
|
-
```
|
|
129
|
-
|
|
130
|
-
#### JsonSchemaManager
|
|
131
|
-
```ts
|
|
132
|
-
class JsonSchemaManager {
|
|
133
|
-
getNamespaces(options: IEStoreManagerRequestOptions = {}): Promise<string[]>
|
|
134
|
-
get(namespace: string, options: IEStoreManagerRequestOptions = {}): Promise<unknown>
|
|
135
|
-
set(
|
|
136
|
-
namespace: string
|
|
137
|
-
, schema: Json
|
|
138
|
-
, options: IEStoreManagerRequestOptions = {}
|
|
139
|
-
): Promise<void>
|
|
140
|
-
remove(
|
|
141
|
-
namespace: string
|
|
142
|
-
, options: IEStoreManagerRequestOptions = {}
|
|
143
|
-
): Promise<void>
|
|
144
|
-
}
|
|
145
|
-
```
|
|
146
|
-
|
|
147
|
-
#### BlacklistManager
|
|
148
|
-
```ts
|
|
149
|
-
class BlacklistManager {
|
|
150
|
-
getNamespaces(options: IEStoreManagerRequestOptions = {}): Promise<string[]>
|
|
151
|
-
add(namespace: string, options: IEStoreManagerRequestOptions = {}): Promise<void>
|
|
152
|
-
remove(namespace: string, options: IEStoreManagerRequestOptions = {}): Promise<void>
|
|
153
|
-
}
|
|
154
|
-
```
|
|
155
|
-
|
|
156
|
-
#### WhitelistManager
|
|
157
|
-
```ts
|
|
158
|
-
class WhitelistManager {
|
|
159
|
-
getNamespaces(options: IEStoreManagerRequestOptions = {}): Promise<string[]>
|
|
160
|
-
add(namespace: string, options: IEStoreManagerRequestOptions = {}): Promise<void>
|
|
161
|
-
remove(namespace: string, options: IEStoreManagerRequestOptions = {}): Promise<void>
|
|
162
|
-
}
|
|
163
|
-
```
|
|
164
|
-
|
|
165
|
-
#### TokenPolicyManager
|
|
166
|
-
```ts
|
|
167
|
-
interface ITokenPolicy {
|
|
168
|
-
writeTokenRequired: boolean | null
|
|
169
|
-
readTokenRequired: boolean | null
|
|
170
|
-
deleteTokenRequired: boolean | null
|
|
171
|
-
}
|
|
172
|
-
|
|
173
|
-
class TokenPolicyManager {
|
|
174
|
-
getNamespaces(options: IEStoreManagerRequestOptions = {}): Promise<string[]>
|
|
175
|
-
get(
|
|
176
|
-
namespace: string
|
|
177
|
-
, options: IEStoreManagerRequestOptions = {}
|
|
178
|
-
): Promise<ITokenPolicy>
|
|
179
|
-
setWriteTokenRequired(
|
|
180
|
-
namespace: string
|
|
181
|
-
, val: boolean
|
|
182
|
-
, options: IEStoreManagerRequestOptions = {}
|
|
183
|
-
): Promise<void>
|
|
184
|
-
removeWriteTokenRequired(
|
|
185
|
-
namespace: string
|
|
186
|
-
, options: IEStoreManagerRequestOptions = {}
|
|
187
|
-
): Promise<void>
|
|
188
|
-
setReadTokenRequired(
|
|
189
|
-
namespace: string
|
|
190
|
-
, val: boolean
|
|
191
|
-
, options: IEStoreManagerRequestOptions = {}
|
|
192
|
-
): Promise<void>
|
|
193
|
-
removeReadTokenRequired(
|
|
194
|
-
namespace: string
|
|
195
|
-
, options: IEStoreManagerRequestOptions = {}
|
|
196
|
-
): Promise<void>
|
|
197
|
-
setDeleteTokenRequired(
|
|
198
|
-
namespace: string
|
|
199
|
-
, val: boolean
|
|
200
|
-
, options: IEStoreManagerRequestOptions = {}
|
|
201
|
-
): Promise<void>
|
|
202
|
-
removeDeleteTokenRequired(
|
|
203
|
-
namespace: string
|
|
204
|
-
, options: IEStoreManagerRequestOptions = {}
|
|
47
|
+
, itemId: string
|
|
48
|
+
, event: string
|
|
49
|
+
, nextEventIndex?: number
|
|
50
|
+
, timeout?: number
|
|
205
51
|
): Promise<void>
|
|
206
|
-
}
|
|
207
|
-
```
|
|
208
52
|
|
|
209
|
-
|
|
210
|
-
```ts
|
|
211
|
-
interface ITokenInfo {
|
|
212
|
-
token: string
|
|
213
|
-
write: boolean
|
|
214
|
-
read: boolean
|
|
215
|
-
delete: boolean
|
|
216
|
-
}
|
|
217
|
-
|
|
218
|
-
class TokenManager {
|
|
219
|
-
getNamespaces(options: IEStoreManagerRequestOptions = {}): Promise<string[]>
|
|
220
|
-
getTokens(
|
|
221
|
-
namespace: string
|
|
222
|
-
, options: IEStoreManagerRequestOptions = {}
|
|
223
|
-
): Promise<ITokenInfo[]>
|
|
224
|
-
addWriteToken(
|
|
225
|
-
namespace: string
|
|
226
|
-
, token: string
|
|
227
|
-
, options: IEStoreManagerRequestOptions = {}
|
|
228
|
-
): Promise<void>
|
|
229
|
-
removeWriteToken(
|
|
53
|
+
getEvent(
|
|
230
54
|
namespace: string
|
|
231
|
-
,
|
|
232
|
-
,
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
namespace: string
|
|
236
|
-
, token: string
|
|
237
|
-
, options: IEStoreManagerRequestOptions = {}
|
|
238
|
-
): Promise<void>
|
|
239
|
-
removeReadToken(
|
|
240
|
-
namespace: string
|
|
241
|
-
, token: string
|
|
242
|
-
, options: IEStoreManagerRequestOptions = {}
|
|
243
|
-
): Promise<void>
|
|
244
|
-
addDeleteToken(
|
|
245
|
-
namespace: string
|
|
246
|
-
, token: string
|
|
247
|
-
, options: IEStoreManagerRequestOptions = {}
|
|
248
|
-
): Promise<void>
|
|
249
|
-
removeDeleteToken(
|
|
250
|
-
namespace: string
|
|
251
|
-
, token: string
|
|
252
|
-
, options: IEStoreManagerRequestOptions = {}
|
|
253
|
-
): Promise<void>
|
|
55
|
+
, itemId: string
|
|
56
|
+
, index: number
|
|
57
|
+
, timeout?: number
|
|
58
|
+
): Promise<string | null>
|
|
254
59
|
}
|
|
255
60
|
```
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
export declare const expectedVersion = "^0.3.0";
|
|
2
|
+
export interface IStats {
|
|
3
|
+
namespace: string;
|
|
4
|
+
items: number;
|
|
5
|
+
}
|
|
6
|
+
export interface IAPI {
|
|
7
|
+
stats(namespace: string): IStats;
|
|
8
|
+
getAllNamespaces(): string[];
|
|
9
|
+
getAllItemIds(namespace: string): string[];
|
|
10
|
+
getAllEvents(namespace: string, itemId: string): string[];
|
|
11
|
+
clearItemsByNamespace(namespace: string): null;
|
|
12
|
+
removeItem(namespace: string, itemId: string): null;
|
|
13
|
+
getItemSize(namespace: string, itemId: string): number;
|
|
14
|
+
appendEvent(namespace: string, itemId: string, event: string, nextEventIndex?: number): null;
|
|
15
|
+
getEvent(namespace: string, itemId: string, eventIndex: number): string | null;
|
|
16
|
+
}
|
package/lib/contract.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"contract.js","sourceRoot":"","sources":["../src/contract.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,eAAe,GAAG,QAAQ,CAAA"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { IStats } from './contract.js';
|
|
2
|
+
export { IStats } from './contract.js';
|
|
3
|
+
export interface IEStoreClientOptions {
|
|
4
|
+
server: string;
|
|
5
|
+
timeout?: number;
|
|
6
|
+
retryIntervalForReconnection?: number;
|
|
7
|
+
}
|
|
8
|
+
export declare class EStoreClient {
|
|
9
|
+
private client;
|
|
10
|
+
private batchClient;
|
|
11
|
+
private batchProxy;
|
|
12
|
+
private closeClients;
|
|
13
|
+
private timeout?;
|
|
14
|
+
static create(options: IEStoreClientOptions): Promise<EStoreClient>;
|
|
15
|
+
private constructor();
|
|
16
|
+
close(): Promise<void>;
|
|
17
|
+
stats(namespace: string, timeout?: number): Promise<IStats>;
|
|
18
|
+
getAllNamespaces(timeout?: number): Promise<string[]>;
|
|
19
|
+
getAllItemIds(namespace: string, timeout?: number): Promise<string[]>;
|
|
20
|
+
getAllEvents(namespace: string, itemId: string, timeout?: number): Promise<string[]>;
|
|
21
|
+
clearItemsByNamespace(namespace: string, timeout?: number): Promise<void>;
|
|
22
|
+
removeItem(namespace: string, itemId: string, timeout?: number): Promise<void>;
|
|
23
|
+
getItemSize(namespace: string, itemId: string, timeout?: number): Promise<number>;
|
|
24
|
+
appendEvent(namespace: string, itemId: string, event: string, nextEventIndex?: number, timeout?: number): Promise<void>;
|
|
25
|
+
getEvent(namespace: string, itemId: string, index: number, timeout?: number): Promise<string | null>;
|
|
26
|
+
private withTimeout;
|
|
27
|
+
}
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
import { createRPCClient } from "./utils/rpc-client.js";
|
|
2
|
+
import { timeoutSignal, withAbortSignal } from 'extra-abort';
|
|
3
|
+
import { isUndefined } from '@blackglory/prelude';
|
|
4
|
+
export class EStoreClient {
|
|
5
|
+
constructor(client, batchClient, batchProxy, closeClients, timeout) {
|
|
6
|
+
this.client = client;
|
|
7
|
+
this.batchClient = batchClient;
|
|
8
|
+
this.batchProxy = batchProxy;
|
|
9
|
+
this.closeClients = closeClients;
|
|
10
|
+
this.timeout = timeout;
|
|
11
|
+
}
|
|
12
|
+
static async create(options) {
|
|
13
|
+
const { client, batchClient, proxy, close } = await createRPCClient(options.server);
|
|
14
|
+
return new EStoreClient(client, batchClient, proxy, close, options.timeout);
|
|
15
|
+
}
|
|
16
|
+
async close() {
|
|
17
|
+
await this.closeClients();
|
|
18
|
+
}
|
|
19
|
+
async stats(namespace, timeout) {
|
|
20
|
+
return await this.withTimeout(() => this.client.stats(namespace), timeout !== null && timeout !== void 0 ? timeout : this.timeout);
|
|
21
|
+
}
|
|
22
|
+
async getAllNamespaces(timeout) {
|
|
23
|
+
return await this.withTimeout(() => this.client.getAllNamespaces(), timeout !== null && timeout !== void 0 ? timeout : this.timeout);
|
|
24
|
+
}
|
|
25
|
+
async getAllItemIds(namespace, timeout) {
|
|
26
|
+
return await this.withTimeout(() => this.client.getAllItemIds(namespace), timeout !== null && timeout !== void 0 ? timeout : this.timeout);
|
|
27
|
+
}
|
|
28
|
+
async getAllEvents(namespace, itemId, timeout) {
|
|
29
|
+
return await this.withTimeout(() => this.client.getAllEvents(namespace, itemId), timeout !== null && timeout !== void 0 ? timeout : this.timeout);
|
|
30
|
+
}
|
|
31
|
+
async clearItemsByNamespace(namespace, timeout) {
|
|
32
|
+
await this.withTimeout(() => this.client.clearItemsByNamespace(namespace), timeout !== null && timeout !== void 0 ? timeout : this.timeout);
|
|
33
|
+
}
|
|
34
|
+
async removeItem(namespace, itemId, timeout) {
|
|
35
|
+
await this.withTimeout(() => this.client.removeItem(namespace, itemId), timeout !== null && timeout !== void 0 ? timeout : this.timeout);
|
|
36
|
+
}
|
|
37
|
+
async getItemSize(namespace, itemId, timeout) {
|
|
38
|
+
return await this.withTimeout(() => this.client.getItemSize(namespace, itemId), timeout !== null && timeout !== void 0 ? timeout : this.timeout);
|
|
39
|
+
}
|
|
40
|
+
async appendEvent(namespace, itemId, event, nextEventIndex, timeout) {
|
|
41
|
+
await this.withTimeout(() => {
|
|
42
|
+
if (isUndefined(nextEventIndex)) {
|
|
43
|
+
return this.client.appendEvent(namespace, itemId, event);
|
|
44
|
+
}
|
|
45
|
+
else {
|
|
46
|
+
return this.client.appendEvent(namespace, itemId, event, nextEventIndex);
|
|
47
|
+
}
|
|
48
|
+
}, timeout !== null && timeout !== void 0 ? timeout : this.timeout);
|
|
49
|
+
}
|
|
50
|
+
async getEvent(namespace, itemId, index, timeout) {
|
|
51
|
+
return await this.withTimeout(() => this.client.getEvent(namespace, itemId, index), timeout !== null && timeout !== void 0 ? timeout : this.timeout);
|
|
52
|
+
}
|
|
53
|
+
async withTimeout(fn, timeout = this.timeout) {
|
|
54
|
+
if (timeout) {
|
|
55
|
+
return await withAbortSignal(timeoutSignal(timeout), fn);
|
|
56
|
+
}
|
|
57
|
+
else {
|
|
58
|
+
return await fn();
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
//# sourceMappingURL=estore-client.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"estore-client.js","sourceRoot":"","sources":["../src/estore-client.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,8BAA4B;AAGtD,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,aAAa,CAAA;AAC5D,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAA;AASjD,MAAM,OAAO,YAAY;IAMvB,YACU,MAAyB,EACzB,WAAwB,EACxB,UAA2C,EAC3C,YAAiC,EACjC,OAAgB;QAJhB,WAAM,GAAN,MAAM,CAAmB;QACzB,gBAAW,GAAX,WAAW,CAAa;QACxB,eAAU,GAAV,UAAU,CAAiC;QAC3C,iBAAY,GAAZ,YAAY,CAAqB;QACjC,YAAO,GAAP,OAAO,CAAS;IACvB,CAAC;IAXJ,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,OAA6B;QAC/C,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,MAAM,eAAe,CAAC,OAAO,CAAC,MAAM,CAAC,CAAA;QACnF,OAAO,IAAI,YAAY,CAAC,MAAM,EAAE,WAAW,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,CAAC,OAAO,CAAC,CAAA;IAC7E,CAAC;IAUD,KAAK,CAAC,KAAK;QACT,MAAM,IAAI,CAAC,YAAY,EAAE,CAAA;IAC3B,CAAC;IAED,KAAK,CAAC,KAAK,CAAC,SAAiB,EAAE,OAAgB;QAC7C,OAAO,MAAM,IAAI,CAAC,WAAW,CAC3B,GAAG,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC,EAClC,OAAO,aAAP,OAAO,cAAP,OAAO,GAAI,IAAI,CAAC,OAAO,CACxB,CAAA;IACH,CAAC;IAED,KAAK,CAAC,gBAAgB,CAAC,OAAgB;QACrC,OAAO,MAAM,IAAI,CAAC,WAAW,CAC3B,GAAG,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,gBAAgB,EAAE,EACpC,OAAO,aAAP,OAAO,cAAP,OAAO,GAAI,IAAI,CAAC,OAAO,CACxB,CAAA;IACH,CAAC;IAED,KAAK,CAAC,aAAa,CAAC,SAAiB,EAAE,OAAgB;QACrD,OAAO,MAAM,IAAI,CAAC,WAAW,CAC3B,GAAG,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,SAAS,CAAC,EAC1C,OAAO,aAAP,OAAO,cAAP,OAAO,GAAI,IAAI,CAAC,OAAO,CACxB,CAAA;IACH,CAAC;IAED,KAAK,CAAC,YAAY,CAChB,SAAiB,EACjB,MAAc,EACd,OAAgB;QAEhB,OAAO,MAAM,IAAI,CAAC,WAAW,CAC3B,GAAG,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,SAAS,EAAE,MAAM,CAAC,EACjD,OAAO,aAAP,OAAO,cAAP,OAAO,GAAI,IAAI,CAAC,OAAO,CACxB,CAAA;IACH,CAAC;IAED,KAAK,CAAC,qBAAqB,CAAC,SAAiB,EAAE,OAAgB;QAC7D,MAAM,IAAI,CAAC,WAAW,CACpB,GAAG,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,qBAAqB,CAAC,SAAS,CAAC,EAClD,OAAO,aAAP,OAAO,cAAP,OAAO,GAAI,IAAI,CAAC,OAAO,CACxB,CAAA;IACH,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,SAAiB,EAAE,MAAc,EAAE,OAAgB;QAClE,MAAM,IAAI,CAAC,WAAW,CACpB,GAAG,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,SAAS,EAAE,MAAM,CAAC,EAC/C,OAAO,aAAP,OAAO,cAAP,OAAO,GAAI,IAAI,CAAC,OAAO,CACxB,CAAA;IACH,CAAC;IAED,KAAK,CAAC,WAAW,CAAC,SAAiB,EAAE,MAAc,EAAE,OAAgB;QACnE,OAAO,MAAM,IAAI,CAAC,WAAW,CAC3B,GAAG,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,SAAS,EAAE,MAAM,CAAC,EAChD,OAAO,aAAP,OAAO,cAAP,OAAO,GAAI,IAAI,CAAC,OAAO,CACxB,CAAA;IACH,CAAC;IAMD,KAAK,CAAC,WAAW,CACf,SAAiB,EACjB,MAAc,EACd,KAAa,EACb,cAAuB,EACvB,OAAgB;QAEhB,MAAM,IAAI,CAAC,WAAW,CACpB,GAAG,EAAE;YACH,IAAI,WAAW,CAAC,cAAc,CAAC,EAAE;gBAC/B,OAAO,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,CAAC,CAAA;aACzD;iBAAM;gBACL,OAAO,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,cAAc,CAAC,CAAA;aACzE;QACH,CAAC,EACD,OAAO,aAAP,OAAO,cAAP,OAAO,GAAI,IAAI,CAAC,OAAO,CACxB,CAAA;IACH,CAAC;IAED,KAAK,CAAC,QAAQ,CACZ,SAAiB,EACjB,MAAc,EACd,KAAa,EACb,OAAgB;QAEhB,OAAO,MAAM,IAAI,CAAC,WAAW,CAC3B,GAAG,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,CAAC,EACpD,OAAO,aAAP,OAAO,cAAP,OAAO,GAAI,IAAI,CAAC,OAAO,CACxB,CAAA;IACH,CAAC;IAEO,KAAK,CAAC,WAAW,CACvB,EAAwB,EACxB,UAA8B,IAAI,CAAC,OAAO;QAE1C,IAAI,OAAO,EAAE;YACX,OAAO,MAAM,eAAe,CAAC,aAAa,CAAC,OAAO,CAAC,EAAE,EAAE,CAAC,CAAA;SACzD;aAAM;YACL,OAAO,MAAM,EAAE,EAAE,CAAA;SAClB;IACH,CAAC;CACF"}
|
package/lib/index.d.ts
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './estore-client.js';
|
package/lib/index.js
ADDED
package/lib/index.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,oBAAoB,CAAA"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { IAPI } from "../contract.js";
|
|
2
|
+
import { ClientProxy, BatchClient, BatchClientProxy } from 'delight-rpc';
|
|
3
|
+
export declare function createRPCClient(url: string, retryIntervalForReconnection?: number): Promise<{
|
|
4
|
+
client: ClientProxy<IAPI>;
|
|
5
|
+
batchClient: BatchClient<IAPI>;
|
|
6
|
+
proxy: BatchClientProxy<IAPI, unknown>;
|
|
7
|
+
close: () => Promise<void>;
|
|
8
|
+
}>;
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { expectedVersion } from "../contract.js";
|
|
2
|
+
import { createBatchProxy } from 'delight-rpc';
|
|
3
|
+
import { createClient, createBatchClient } from '@delight-rpc/extra-native-websocket';
|
|
4
|
+
import { ExtraNativeWebSocket, autoReconnect } from 'extra-native-websocket';
|
|
5
|
+
export async function createRPCClient(url, retryIntervalForReconnection) {
|
|
6
|
+
const ws = new ExtraNativeWebSocket(() => new WebSocket(url));
|
|
7
|
+
const cancelAutoReconnect = autoReconnect(ws, retryIntervalForReconnection);
|
|
8
|
+
await ws.connect();
|
|
9
|
+
const [client, closeClient] = createClient(ws, { expectedVersion });
|
|
10
|
+
const [batchClient, closeBatchClient] = createBatchClient(ws, { expectedVersion });
|
|
11
|
+
const proxy = createBatchProxy();
|
|
12
|
+
return {
|
|
13
|
+
client,
|
|
14
|
+
batchClient,
|
|
15
|
+
proxy,
|
|
16
|
+
close: async () => {
|
|
17
|
+
closeClient();
|
|
18
|
+
closeBatchClient();
|
|
19
|
+
cancelAutoReconnect();
|
|
20
|
+
await ws.close();
|
|
21
|
+
}
|
|
22
|
+
};
|
|
23
|
+
}
|
|
24
|
+
//# sourceMappingURL=rpc-client.browser.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"rpc-client.browser.js","sourceRoot":"","sources":["../../src/utils/rpc-client.browser.ts"],"names":[],"mappings":"AAAA,OAAO,EAAQ,eAAe,EAAE,uBAAwB;AACxD,OAAO,EAA8C,gBAAgB,EAAE,MAAM,aAAa,CAAA;AAC1F,OAAO,EAAE,YAAY,EAAE,iBAAiB,EAAE,MAAM,qCAAqC,CAAA;AACrF,OAAO,EAAE,oBAAoB,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAA;AAE5E,MAAM,CAAC,KAAK,UAAU,eAAe,CACnC,GAAW,EACX,4BAAqC;IAOrC,MAAM,EAAE,GAAG,IAAI,oBAAoB,CAAC,GAAG,EAAE,CAAC,IAAI,SAAS,CAAC,GAAG,CAAC,CAAC,CAAA;IAC7D,MAAM,mBAAmB,GAAG,aAAa,CAAC,EAAE,EAAE,4BAA4B,CAAC,CAAA;IAC3E,MAAM,EAAE,CAAC,OAAO,EAAE,CAAA;IAElB,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,GAAG,YAAY,CAAO,EAAE,EAAE,EAAE,eAAe,EAAE,CAAC,CAAA;IACzE,MAAM,CAAC,WAAW,EAAE,gBAAgB,CAAC,GAAG,iBAAiB,CAAC,EAAE,EAAE,EAAE,eAAe,EAAE,CAAC,CAAA;IAClF,MAAM,KAAK,GAAG,gBAAgB,EAAQ,CAAA;IAEtC,OAAO;QACL,MAAM;QACN,WAAW;QACX,KAAK;QACL,KAAK,EAAE,KAAK,IAAI,EAAE;YAChB,WAAW,EAAE,CAAA;YACb,gBAAgB,EAAE,CAAA;YAClB,mBAAmB,EAAE,CAAA;YACrB,MAAM,EAAE,CAAC,KAAK,EAAE,CAAA;QAClB,CAAC;KACF,CAAA;AACH,CAAC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { IAPI } from "../contract.js";
|
|
2
|
+
import { ClientProxy, BatchClient, BatchClientProxy } from 'delight-rpc';
|
|
3
|
+
export declare function createRPCClient(url: string, retryIntervalForReconnection?: number): Promise<{
|
|
4
|
+
client: ClientProxy<IAPI>;
|
|
5
|
+
batchClient: BatchClient<IAPI>;
|
|
6
|
+
proxy: BatchClientProxy<IAPI, unknown>;
|
|
7
|
+
close: () => Promise<void>;
|
|
8
|
+
}>;
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { expectedVersion } from "../contract.js";
|
|
2
|
+
import { createBatchProxy } from 'delight-rpc';
|
|
3
|
+
import { createClient, createBatchClient } from '@delight-rpc/extra-websocket';
|
|
4
|
+
import { WebSocket } from 'ws';
|
|
5
|
+
import { ExtraWebSocket, autoReconnect } from 'extra-websocket';
|
|
6
|
+
export async function createRPCClient(url, retryIntervalForReconnection) {
|
|
7
|
+
const ws = new ExtraWebSocket(() => new WebSocket(url));
|
|
8
|
+
const cancelAutoReconnect = autoReconnect(ws, retryIntervalForReconnection);
|
|
9
|
+
await ws.connect();
|
|
10
|
+
const [client, closeClient] = createClient(ws, { expectedVersion });
|
|
11
|
+
const [batchClient, closeBatchClient] = createBatchClient(ws, { expectedVersion });
|
|
12
|
+
const proxy = createBatchProxy();
|
|
13
|
+
return {
|
|
14
|
+
client,
|
|
15
|
+
batchClient,
|
|
16
|
+
proxy,
|
|
17
|
+
close: async () => {
|
|
18
|
+
closeClient();
|
|
19
|
+
closeBatchClient();
|
|
20
|
+
cancelAutoReconnect();
|
|
21
|
+
await ws.close();
|
|
22
|
+
}
|
|
23
|
+
};
|
|
24
|
+
}
|
|
25
|
+
//# sourceMappingURL=rpc-client.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"rpc-client.js","sourceRoot":"","sources":["../../src/utils/rpc-client.ts"],"names":[],"mappings":"AAAA,OAAO,EAAQ,eAAe,EAAE,uBAAwB;AACxD,OAAO,EAA8C,gBAAgB,EAAE,MAAM,aAAa,CAAA;AAC1F,OAAO,EAAE,YAAY,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAA;AAC9E,OAAO,EAAE,SAAS,EAAE,MAAM,IAAI,CAAA;AAC9B,OAAO,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAA;AAE/D,MAAM,CAAC,KAAK,UAAU,eAAe,CACnC,GAAW,EACX,4BAAqC;IAOrC,MAAM,EAAE,GAAG,IAAI,cAAc,CAAC,GAAG,EAAE,CAAC,IAAI,SAAS,CAAC,GAAG,CAAC,CAAC,CAAA;IACvD,MAAM,mBAAmB,GAAG,aAAa,CAAC,EAAE,EAAE,4BAA4B,CAAC,CAAA;IAC3E,MAAM,EAAE,CAAC,OAAO,EAAE,CAAA;IAElB,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,GAAG,YAAY,CAAO,EAAE,EAAE,EAAE,eAAe,EAAE,CAAC,CAAA;IACzE,MAAM,CAAC,WAAW,EAAE,gBAAgB,CAAC,GAAG,iBAAiB,CAAC,EAAE,EAAE,EAAE,eAAe,EAAE,CAAC,CAAA;IAClF,MAAM,KAAK,GAAG,gBAAgB,EAAQ,CAAA;IAEtC,OAAO;QACL,MAAM;QACN,WAAW;QACX,KAAK;QACL,KAAK,EAAE,KAAK,IAAI,EAAE;YAChB,WAAW,EAAE,CAAA;YACb,gBAAgB,EAAE,CAAA;YAClB,mBAAmB,EAAE,CAAA;YACrB,MAAM,EAAE,CAAC,KAAK,EAAE,CAAA;QAClB,CAAC;KACF,CAAA;AACH,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,64 +1,79 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@blackglory/estore-js",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.4.0",
|
|
4
4
|
"description": "",
|
|
5
5
|
"keywords": [],
|
|
6
6
|
"files": [
|
|
7
7
|
"lib"
|
|
8
8
|
],
|
|
9
|
-
"
|
|
10
|
-
"
|
|
9
|
+
"type": "module",
|
|
10
|
+
"main": "lib/index.js",
|
|
11
|
+
"types": "lib/index.d.ts",
|
|
12
|
+
"browser": {
|
|
13
|
+
"./lib/utils/rpc-client.js": "./lib/utils/rpc-client.browser.js"
|
|
14
|
+
},
|
|
11
15
|
"repository": "git@github.com:BlackGlory/estore-js.git",
|
|
12
16
|
"author": "BlackGlory <woshenmedoubuzhidao@blackglory.me>",
|
|
13
17
|
"license": "MIT",
|
|
14
18
|
"sideEffects": false,
|
|
19
|
+
"engines": {
|
|
20
|
+
"node": ">=16"
|
|
21
|
+
},
|
|
15
22
|
"scripts": {
|
|
16
23
|
"prepare": "ts-patch install -s",
|
|
17
24
|
"lint": "eslint --ext .js,.jsx,.ts,.tsx --quiet src __tests__",
|
|
18
|
-
"test": "jest --
|
|
19
|
-
"test:debug": "node --inspect-brk node_modules/.bin/jest --runInBand",
|
|
20
|
-
"test:coverage": "jest --coverage --config jest.config.
|
|
25
|
+
"test": "cross-env NODE_OPTIONS=--experimental-vm-modules jest --no-cache --config jest.config.cjs",
|
|
26
|
+
"test:debug": "cross-env NODE_OPTIONS=--experimental-vm-modules node --inspect-brk node_modules/.bin/jest --runInBand jest.config.cjs",
|
|
27
|
+
"test:coverage": "cross-env NODE_OPTIONS=--experimental-vm-modules jest --coverage --config jest.config.cjs",
|
|
21
28
|
"prepublishOnly": "run-s prepare clean build",
|
|
22
29
|
"clean": "rimraf lib",
|
|
23
|
-
"build": "
|
|
24
|
-
"
|
|
25
|
-
"
|
|
30
|
+
"build": "tsc --project tsconfig.build.json",
|
|
31
|
+
"docker:test": "run-s docker:test:clean docker:test:build docker:test:run docker:test:clean",
|
|
32
|
+
"docker:coverage": "run-s docker:test:clean docker:test:build docker:test:coverage docker:test:clean",
|
|
33
|
+
"docker:test:build": "docker-compose --project-name estore-js --file docker-compose.test.yml build",
|
|
34
|
+
"docker:test:run": "docker-compose --project-name estore-js --file docker-compose.test.yml run --rm test",
|
|
35
|
+
"docker:test:clean": "docker-compose --project-name estore-js --file docker-compose.test.yml down",
|
|
26
36
|
"release": "standard-version"
|
|
27
37
|
},
|
|
28
38
|
"husky": {
|
|
29
39
|
"hooks": {
|
|
30
|
-
"pre-commit": "run-s prepare lint test",
|
|
40
|
+
"pre-commit": "run-s prepare lint build docker:test",
|
|
31
41
|
"commit-msg": "commitlint -E HUSKY_GIT_PARAMS"
|
|
32
42
|
}
|
|
33
43
|
},
|
|
34
44
|
"devDependencies": {
|
|
35
|
-
"@blackglory/jest-
|
|
36
|
-
"@commitlint/cli": "^17.
|
|
37
|
-
"@commitlint/config-conventional": "^17.
|
|
38
|
-
"@types/jest": "^
|
|
39
|
-
"@
|
|
40
|
-
"@typescript-eslint/
|
|
41
|
-
"eslint": "^
|
|
45
|
+
"@blackglory/jest-resolver": "^0.3.0",
|
|
46
|
+
"@commitlint/cli": "^17.4.2",
|
|
47
|
+
"@commitlint/config-conventional": "^17.4.2",
|
|
48
|
+
"@types/jest": "^29.4.0",
|
|
49
|
+
"@types/ws": "^8.5.4",
|
|
50
|
+
"@typescript-eslint/eslint-plugin": "^5.49.0",
|
|
51
|
+
"@typescript-eslint/parser": "^5.49.0",
|
|
52
|
+
"cross-env": "^7.0.3",
|
|
53
|
+
"eslint": "^8.33.0",
|
|
54
|
+
"extra-utils": "^5.0.1",
|
|
42
55
|
"husky": "4",
|
|
43
|
-
"jest": "^
|
|
44
|
-
"
|
|
56
|
+
"jest": "^29.4.1",
|
|
57
|
+
"jest-resolve": "^29.4.1",
|
|
45
58
|
"npm-run-all": "^4.1.5",
|
|
46
59
|
"rimraf": "^3.0.2",
|
|
47
60
|
"standard-version": "^9.3.2",
|
|
48
|
-
"ts-jest": "^
|
|
49
|
-
"ts-patch": "^2.0
|
|
50
|
-
"tslib": "^2.
|
|
51
|
-
"typescript": "
|
|
52
|
-
"typescript-transform-paths": "^3.
|
|
61
|
+
"ts-jest": "^29.0.5",
|
|
62
|
+
"ts-patch": "^2.1.0",
|
|
63
|
+
"tslib": "^2.5.0",
|
|
64
|
+
"typescript": "4.8",
|
|
65
|
+
"typescript-transform-paths": "^3.4.6"
|
|
53
66
|
},
|
|
54
67
|
"dependencies": {
|
|
55
|
-
"@blackglory/errors": "^
|
|
56
|
-
"@blackglory/
|
|
57
|
-
"@
|
|
58
|
-
"extra-
|
|
59
|
-
"
|
|
60
|
-
"extra-
|
|
61
|
-
"extra-
|
|
62
|
-
"
|
|
68
|
+
"@blackglory/errors": "^3.0.0",
|
|
69
|
+
"@blackglory/prelude": "^0.3.1",
|
|
70
|
+
"@delight-rpc/extra-native-websocket": "^0.4.0",
|
|
71
|
+
"@delight-rpc/extra-websocket": "^0.4.0",
|
|
72
|
+
"delight-rpc": "^5.0.3",
|
|
73
|
+
"extra-abort": "^0.3.1",
|
|
74
|
+
"extra-native-websocket": "^0.3.1",
|
|
75
|
+
"extra-websocket": "^0.3.1",
|
|
76
|
+
"justypes": "^4.1.0",
|
|
77
|
+
"ws": "^8.12.0"
|
|
63
78
|
}
|
|
64
79
|
}
|
package/lib/es2015/client.d.ts
DELETED
|
@@ -1,41 +0,0 @@
|
|
|
1
|
-
interface IInfo {
|
|
2
|
-
namespace: string;
|
|
3
|
-
items: number;
|
|
4
|
-
}
|
|
5
|
-
export interface IEStoreClientOptions {
|
|
6
|
-
server: string;
|
|
7
|
-
token?: string;
|
|
8
|
-
basicAuth?: {
|
|
9
|
-
username: string;
|
|
10
|
-
password: string;
|
|
11
|
-
};
|
|
12
|
-
keepalive?: boolean;
|
|
13
|
-
timeout?: number;
|
|
14
|
-
}
|
|
15
|
-
export interface IEStoreClientRequestOptions {
|
|
16
|
-
signal?: AbortSignal;
|
|
17
|
-
token?: string;
|
|
18
|
-
keepalive?: boolean;
|
|
19
|
-
timeout?: number | false;
|
|
20
|
-
}
|
|
21
|
-
export interface IEStoreClientRequestOptionsWithoutToken {
|
|
22
|
-
signal?: AbortSignal;
|
|
23
|
-
keepalive?: boolean;
|
|
24
|
-
timeout?: number | false;
|
|
25
|
-
}
|
|
26
|
-
export declare class EStoreClient {
|
|
27
|
-
private options;
|
|
28
|
-
constructor(options: IEStoreClientOptions);
|
|
29
|
-
private getCommonTransformers;
|
|
30
|
-
append<T>(namespace: string, itemId: string, payload: T, index?: number, options?: IEStoreClientRequestOptions): Promise<void>;
|
|
31
|
-
getEvent<T>(namespace: string, itemId: string, index: number, options?: IEStoreClientRequestOptions): Promise<T | undefined>;
|
|
32
|
-
getEvents<T>(namespace: string, itemId: string, options?: IEStoreClientRequestOptions): Promise<T[] | undefined>;
|
|
33
|
-
getSize(namespace: string, itemId: string, options?: IEStoreClientRequestOptions): Promise<number>;
|
|
34
|
-
has(namespace: string, itemId: string, options?: IEStoreClientRequestOptions): Promise<boolean>;
|
|
35
|
-
del(namespace: string, itemId: string, options?: IEStoreClientRequestOptions): Promise<void>;
|
|
36
|
-
clear(namespace: string, options?: IEStoreClientRequestOptions): Promise<void>;
|
|
37
|
-
getAllItemIds(namespace: string, options?: IEStoreClientRequestOptions): Promise<string[]>;
|
|
38
|
-
getAllNamespaces(options?: IEStoreClientRequestOptionsWithoutToken): Promise<string[]>;
|
|
39
|
-
stats(namespace: string, options?: IEStoreClientRequestOptionsWithoutToken): Promise<IInfo>;
|
|
40
|
-
}
|
|
41
|
-
export {};
|