@cloudbase/database 1.4.1 → 1.4.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/.trunk/configs/.markdownlint.yaml +10 -0
- package/.trunk/trunk.yaml +26 -0
- package/dist/commonjs/ObjectId/index.d.ts +11 -11
- package/dist/commonjs/ObjectId/index.js +21 -21
- package/dist/commonjs/aggregate.d.ts +29 -29
- package/dist/commonjs/aggregate.js +124 -124
- package/dist/commonjs/collection.d.ts +17 -17
- package/dist/commonjs/collection.js +72 -72
- package/dist/commonjs/command.d.ts +175 -175
- package/dist/commonjs/command.js +285 -285
- package/dist/commonjs/commands/logic.d.ts +24 -24
- package/dist/commonjs/commands/logic.js +79 -79
- package/dist/commonjs/commands/query.d.ts +73 -73
- package/dist/commonjs/commands/query.js +147 -147
- package/dist/commonjs/commands/update.d.ts +29 -29
- package/dist/commonjs/commands/update.js +49 -49
- package/dist/commonjs/config/app.config.d.ts +6 -6
- package/dist/commonjs/config/app.config.js +7 -7
- package/dist/commonjs/config/error.config.d.ts +3 -3
- package/dist/commonjs/config/error.config.js +15 -15
- package/dist/commonjs/const/code.d.ts +34 -34
- package/dist/commonjs/const/code.js +36 -36
- package/dist/commonjs/constant.d.ts +54 -54
- package/dist/commonjs/constant.js +76 -76
- package/dist/commonjs/document.d.ts +14 -14
- package/dist/commonjs/document.js +217 -219
- package/dist/commonjs/geo/index.d.ts +6 -6
- package/dist/commonjs/geo/index.js +11 -11
- package/dist/commonjs/geo/interface.d.ts +24 -24
- package/dist/commonjs/geo/interface.js +2 -2
- package/dist/commonjs/geo/lineString.d.ts +19 -19
- package/dist/commonjs/geo/lineString.js +57 -57
- package/dist/commonjs/geo/multiLineString.d.ts +18 -18
- package/dist/commonjs/geo/multiLineString.js +56 -56
- package/dist/commonjs/geo/multiPoint.d.ts +18 -18
- package/dist/commonjs/geo/multiPoint.js +50 -50
- package/dist/commonjs/geo/multiPolygon.d.ts +18 -18
- package/dist/commonjs/geo/multiPolygon.js +62 -62
- package/dist/commonjs/geo/point.d.ts +19 -19
- package/dist/commonjs/geo/point.js +43 -43
- package/dist/commonjs/geo/polygon.d.ts +19 -19
- package/dist/commonjs/geo/polygon.js +70 -70
- package/dist/commonjs/helper/symbol.d.ts +15 -15
- package/dist/commonjs/helper/symbol.js +20 -20
- package/dist/commonjs/index.d.ts +50 -50
- package/dist/commonjs/index.js +41 -41
- package/dist/commonjs/operator-map.d.ts +4 -4
- package/dist/commonjs/operator-map.js +23 -23
- package/dist/commonjs/query.d.ts +38 -38
- package/dist/commonjs/query.js +249 -247
- package/dist/commonjs/realtime/error.d.ts +7 -7
- package/dist/commonjs/realtime/error.js +11 -11
- package/dist/commonjs/realtime/listener.d.ts +14 -14
- package/dist/commonjs/realtime/listener.js +17 -17
- package/dist/commonjs/realtime/message.d.ts +3 -3
- package/dist/commonjs/realtime/message.js +10 -10
- package/dist/commonjs/realtime/snapshot.d.ts +16 -16
- package/dist/commonjs/realtime/snapshot.js +42 -42
- package/dist/commonjs/realtime/virtual-websocket-client.d.ts +63 -63
- package/dist/commonjs/realtime/virtual-websocket-client.js +736 -736
- package/dist/commonjs/realtime/websocket-client.d.ts +78 -78
- package/dist/commonjs/realtime/websocket-client.js +567 -567
- package/dist/commonjs/realtime/ws-event.d.ts +126 -126
- package/dist/commonjs/realtime/ws-event.js +139 -139
- package/dist/commonjs/regexp/index.d.ts +18 -18
- package/dist/commonjs/regexp/index.js +30 -30
- package/dist/commonjs/serializer/common.d.ts +11 -11
- package/dist/commonjs/serializer/common.js +90 -90
- package/dist/commonjs/serializer/datatype.d.ts +7 -7
- package/dist/commonjs/serializer/datatype.js +99 -99
- package/dist/commonjs/serializer/query.d.ts +8 -8
- package/dist/commonjs/serializer/query.js +254 -254
- package/dist/commonjs/serializer/update.d.ts +16 -16
- package/dist/commonjs/serializer/update.js +142 -142
- package/dist/commonjs/serverDate/index.d.ts +13 -13
- package/dist/commonjs/serverDate/index.js +23 -23
- package/dist/commonjs/transaction/index.d.ts +30 -30
- package/dist/commonjs/transaction/index.js +105 -105
- package/dist/commonjs/transaction.d.ts +42 -42
- package/dist/commonjs/transaction.js +126 -126
- package/dist/commonjs/typings/index.d.ts +45 -45
- package/dist/commonjs/typings/index.js +2 -2
- package/dist/commonjs/typings/realtime.d.ts +219 -219
- package/dist/commonjs/typings/realtime.js +2 -2
- package/dist/commonjs/util.d.ts +9 -9
- package/dist/commonjs/util.js +101 -101
- package/dist/commonjs/utils/error.d.ts +37 -37
- package/dist/commonjs/utils/error.js +55 -55
- package/dist/commonjs/utils/symbol.d.ts +8 -8
- package/dist/commonjs/utils/symbol.js +39 -39
- package/dist/commonjs/utils/type.d.ts +13 -13
- package/dist/commonjs/utils/type.js +22 -22
- package/dist/commonjs/utils/utils.d.ts +20 -19
- package/dist/commonjs/utils/utils.js +59 -59
- package/dist/commonjs/validate.d.ts +1 -1
- package/dist/commonjs/validate.js +155 -155
- package/package.json +2 -3
- package/src/document.ts +1 -3
- package/src/query.ts +1 -0
- package/dist/esm/ObjectId/index.d.ts +0 -11
- package/dist/esm/ObjectId/index.js +0 -17
- package/dist/esm/aggregate.d.ts +0 -29
- package/dist/esm/aggregate.js +0 -121
- package/dist/esm/collection.d.ts +0 -17
- package/dist/esm/collection.js +0 -69
- package/dist/esm/command.d.ts +0 -175
- package/dist/esm/command.js +0 -281
- package/dist/esm/commands/logic.d.ts +0 -24
- package/dist/esm/commands/logic.js +0 -74
- package/dist/esm/commands/query.d.ts +0 -73
- package/dist/esm/commands/query.js +0 -141
- package/dist/esm/commands/update.d.ts +0 -29
- package/dist/esm/commands/update.js +0 -44
- package/dist/esm/config/app.config.d.ts +0 -6
- package/dist/esm/config/app.config.js +0 -5
- package/dist/esm/config/error.config.d.ts +0 -3
- package/dist/esm/config/error.config.js +0 -13
- package/dist/esm/const/code.d.ts +0 -34
- package/dist/esm/const/code.js +0 -34
- package/dist/esm/constant.d.ts +0 -54
- package/dist/esm/constant.js +0 -67
- package/dist/esm/document.d.ts +0 -14
- package/dist/esm/document.js +0 -216
- package/dist/esm/geo/index.d.ts +0 -6
- package/dist/esm/geo/index.js +0 -6
- package/dist/esm/geo/interface.d.ts +0 -24
- package/dist/esm/geo/interface.js +0 -0
- package/dist/esm/geo/lineString.d.ts +0 -19
- package/dist/esm/geo/lineString.js +0 -54
- package/dist/esm/geo/multiLineString.d.ts +0 -18
- package/dist/esm/geo/multiLineString.js +0 -53
- package/dist/esm/geo/multiPoint.d.ts +0 -18
- package/dist/esm/geo/multiPoint.js +0 -47
- package/dist/esm/geo/multiPolygon.d.ts +0 -18
- package/dist/esm/geo/multiPolygon.js +0 -59
- package/dist/esm/geo/point.d.ts +0 -19
- package/dist/esm/geo/point.js +0 -40
- package/dist/esm/geo/polygon.d.ts +0 -19
- package/dist/esm/geo/polygon.js +0 -67
- package/dist/esm/helper/symbol.d.ts +0 -15
- package/dist/esm/helper/symbol.js +0 -15
- package/dist/esm/index.d.ts +0 -50
- package/dist/esm/index.js +0 -35
- package/dist/esm/operator-map.d.ts +0 -4
- package/dist/esm/operator-map.js +0 -20
- package/dist/esm/query.d.ts +0 -38
- package/dist/esm/query.js +0 -244
- package/dist/esm/realtime/error.d.ts +0 -7
- package/dist/esm/realtime/error.js +0 -8
- package/dist/esm/realtime/listener.d.ts +0 -14
- package/dist/esm/realtime/listener.js +0 -14
- package/dist/esm/realtime/message.d.ts +0 -3
- package/dist/esm/realtime/message.js +0 -6
- package/dist/esm/realtime/snapshot.d.ts +0 -16
- package/dist/esm/realtime/snapshot.js +0 -39
- package/dist/esm/realtime/virtual-websocket-client.d.ts +0 -63
- package/dist/esm/realtime/virtual-websocket-client.js +0 -733
- package/dist/esm/realtime/websocket-client.d.ts +0 -78
- package/dist/esm/realtime/websocket-client.js +0 -564
- package/dist/esm/realtime/ws-event.d.ts +0 -126
- package/dist/esm/realtime/ws-event.js +0 -137
- package/dist/esm/regexp/index.d.ts +0 -18
- package/dist/esm/regexp/index.js +0 -26
- package/dist/esm/serializer/common.d.ts +0 -11
- package/dist/esm/serializer/common.js +0 -82
- package/dist/esm/serializer/datatype.d.ts +0 -7
- package/dist/esm/serializer/datatype.js +0 -95
- package/dist/esm/serializer/query.d.ts +0 -8
- package/dist/esm/serializer/query.js +0 -251
- package/dist/esm/serializer/update.d.ts +0 -16
- package/dist/esm/serializer/update.js +0 -139
- package/dist/esm/serverDate/index.d.ts +0 -13
- package/dist/esm/serverDate/index.js +0 -19
- package/dist/esm/transaction/index.d.ts +0 -30
- package/dist/esm/transaction/index.js +0 -100
- package/dist/esm/transaction.d.ts +0 -42
- package/dist/esm/transaction.js +0 -121
- package/dist/esm/typings/index.d.ts +0 -45
- package/dist/esm/typings/index.js +0 -0
- package/dist/esm/typings/realtime.d.ts +0 -219
- package/dist/esm/typings/realtime.js +0 -0
- package/dist/esm/util.d.ts +0 -9
- package/dist/esm/util.js +0 -98
- package/dist/esm/utils/error.d.ts +0 -37
- package/dist/esm/utils/error.js +0 -49
- package/dist/esm/utils/msg.d.ts +0 -0
- package/dist/esm/utils/msg.js +0 -0
- package/dist/esm/utils/symbol.d.ts +0 -8
- package/dist/esm/utils/symbol.js +0 -36
- package/dist/esm/utils/type.d.ts +0 -13
- package/dist/esm/utils/type.js +0 -20
- package/dist/esm/utils/utils.d.ts +0 -19
- package/dist/esm/utils/utils.js +0 -55
- package/dist/esm/validate.d.ts +0 -1
- package/dist/esm/validate.js +0 -152
|
@@ -1,219 +1,219 @@
|
|
|
1
|
-
import { DataType, QueueType } from './index';
|
|
2
|
-
export declare type IRequestMsgType = 'LOGIN' | 'INIT_WATCH' | 'REBUILD_WATCH' | 'CHECK_LAST' | 'CLOSE_WATCH' | 'PING';
|
|
3
|
-
export declare type IResponseMsgType = 'LOGIN_RES' | 'INIT_EVENT' | 'NEXT_EVENT' | 'CHECK_EVENT' | 'PONG' | 'ERROR';
|
|
4
|
-
export interface IRequestMessageBase<W extends boolean = true> {
|
|
5
|
-
watchId: W extends true ? string : undefined;
|
|
6
|
-
requestId: string;
|
|
7
|
-
msgType: IRequestMsgType;
|
|
8
|
-
msgData: IRequestMessageMsgData;
|
|
9
|
-
}
|
|
10
|
-
export declare type IRequestMessageMsgData = IRequestMessageInitWatchData | IRequestMessageLoginData | IRequestMessageRebuildWatchData | IRequestMessageCheckLastData | IRequestMessageCloseWatchData | IRequestMessagePingData;
|
|
11
|
-
export declare type IRequestMessage = IRequestMessageInitWatchMsg | IRequestMessageLoginMsg | IRequestMessageRebuildWatchMsg | IRequestMessageCheckLastMsg | IRequestMessageCloseWatchMsg | IRequestMessagePingMsg;
|
|
12
|
-
export interface IRequestMessageLoginData {
|
|
13
|
-
envId: string;
|
|
14
|
-
accessToken: string;
|
|
15
|
-
referrer: 'web';
|
|
16
|
-
sdkVersion: string;
|
|
17
|
-
dataVersion: string;
|
|
18
|
-
}
|
|
19
|
-
export interface IRequestExtraMessageLoginData {
|
|
20
|
-
runtime: string;
|
|
21
|
-
signStr: string;
|
|
22
|
-
secretVersion: string;
|
|
23
|
-
}
|
|
24
|
-
export interface IRequestMessageLoginMsg extends IRequestMessageBase<false> {
|
|
25
|
-
msgType: 'LOGIN';
|
|
26
|
-
msgData: IRequestMessageLoginData;
|
|
27
|
-
exMsgData?: IRequestExtraMessageLoginData;
|
|
28
|
-
}
|
|
29
|
-
export interface IRequestMessageInitWatchData {
|
|
30
|
-
envId: string;
|
|
31
|
-
collName: string;
|
|
32
|
-
query: string;
|
|
33
|
-
limit?: number;
|
|
34
|
-
orderBy?: Record<string, string>;
|
|
35
|
-
}
|
|
36
|
-
export interface IRequestMessageInitWatchMsg extends IRequestMessageBase {
|
|
37
|
-
msgType: 'INIT_WATCH';
|
|
38
|
-
msgData: IRequestMessageInitWatchData;
|
|
39
|
-
}
|
|
40
|
-
export interface IRequestMessageRebuildWatchData {
|
|
41
|
-
envId: string;
|
|
42
|
-
collName: string;
|
|
43
|
-
queryID: string;
|
|
44
|
-
eventID: number;
|
|
45
|
-
}
|
|
46
|
-
export interface IRequestMessageRebuildWatchMsg extends IRequestMessageBase {
|
|
47
|
-
msgType: 'REBUILD_WATCH';
|
|
48
|
-
msgData: IRequestMessageRebuildWatchData;
|
|
49
|
-
}
|
|
50
|
-
export interface IRequestMessageCheckLastData {
|
|
51
|
-
queryID: string;
|
|
52
|
-
eventID: number;
|
|
53
|
-
}
|
|
54
|
-
export interface IRequestMessageCheckLastMsg extends IRequestMessageBase {
|
|
55
|
-
msgType: 'CHECK_LAST';
|
|
56
|
-
msgData: IRequestMessageCheckLastData;
|
|
57
|
-
}
|
|
58
|
-
export declare type IRequestMessageCloseWatchData = null;
|
|
59
|
-
export interface IRequestMessageCloseWatchMsg extends IRequestMessageBase {
|
|
60
|
-
msgType: 'CLOSE_WATCH';
|
|
61
|
-
msgData: IRequestMessageCloseWatchData;
|
|
62
|
-
}
|
|
63
|
-
export declare type IRequestMessagePingData = null;
|
|
64
|
-
export interface IRequestMessagePingMsg extends IRequestMessageBase<false> {
|
|
65
|
-
msgType: 'PING';
|
|
66
|
-
msgData: IRequestMessagePingData;
|
|
67
|
-
}
|
|
68
|
-
export interface IResponseMessageBase<W extends boolean = true> {
|
|
69
|
-
watchId: W extends true ? string : undefined;
|
|
70
|
-
requestId: string;
|
|
71
|
-
msgType: IResponseMsgType;
|
|
72
|
-
msgData: IResponseMessageMsgData;
|
|
73
|
-
}
|
|
74
|
-
export declare type IResponseMessageMsgData = IResponseMessageLoginResData | IResponseMessageInitEventData | IResponseMessageNextEventData | IResponseMessageCheckEventData | IResponseMessagePongData | IResponseMessageErrorData;
|
|
75
|
-
export declare type IResponseMessage = IResponseMessageLoginResMsg | IResponseMessageInitEventMsg | IResponseMessageNextEventMsg | IResponseMessageCheckEventMsg | IResponseMessagePongMsg | IResponseMessageErrorMsg;
|
|
76
|
-
export declare type IResponseMessageLoginResData = {
|
|
77
|
-
envId: string;
|
|
78
|
-
} & Partial<IResponseMessageErrorData>;
|
|
79
|
-
export interface IResponseMessageLoginResMsg extends IResponseMessageBase<false> {
|
|
80
|
-
msgType: 'LOGIN_RES';
|
|
81
|
-
msgData: IResponseMessageLoginResData;
|
|
82
|
-
}
|
|
83
|
-
export interface IResponseMessageInitEventData {
|
|
84
|
-
queryID: string;
|
|
85
|
-
currEvent: number;
|
|
86
|
-
events: IDBEvent[];
|
|
87
|
-
}
|
|
88
|
-
export interface IResponseMessageInitEventMsg extends IResponseMessageBase {
|
|
89
|
-
msgType: 'INIT_EVENT';
|
|
90
|
-
msgData: IResponseMessageInitEventData;
|
|
91
|
-
}
|
|
92
|
-
export interface IResponseMessageNextEventData {
|
|
93
|
-
queryID: string;
|
|
94
|
-
currEvent: number;
|
|
95
|
-
events: IDBEvent[];
|
|
96
|
-
}
|
|
97
|
-
export interface IResponseMessageNextEventMsg extends IResponseMessageBase {
|
|
98
|
-
msgType: 'NEXT_EVENT';
|
|
99
|
-
msgData: IResponseMessageNextEventData;
|
|
100
|
-
}
|
|
101
|
-
export interface IResponseMessageCheckEventData {
|
|
102
|
-
queryID: string;
|
|
103
|
-
currEvent: number;
|
|
104
|
-
}
|
|
105
|
-
export interface IResponseMessageCheckEventMsg extends IResponseMessageBase {
|
|
106
|
-
msgType: 'CHECK_EVENT';
|
|
107
|
-
msgData: IResponseMessageCheckEventData;
|
|
108
|
-
}
|
|
109
|
-
export declare type IResponseMessagePongData = null;
|
|
110
|
-
export interface IResponseMessagePongMsg extends IResponseMessageBase {
|
|
111
|
-
msgType: 'PONG';
|
|
112
|
-
msgData: IResponseMessagePongData;
|
|
113
|
-
}
|
|
114
|
-
export declare type IResponseMessageErrorData = {
|
|
115
|
-
message: string;
|
|
116
|
-
} & ({
|
|
117
|
-
code: 'SYS_ERR';
|
|
118
|
-
} | {
|
|
119
|
-
code: 'CHECK_LOGIN_FAILED';
|
|
120
|
-
} | {
|
|
121
|
-
code: 'SIGN_INVALID_ERROR';
|
|
122
|
-
} | {
|
|
123
|
-
code: 'SIGN_EXPIRED_ERROR';
|
|
124
|
-
} | {
|
|
125
|
-
code: 'INVALIID_ENV';
|
|
126
|
-
} | {
|
|
127
|
-
code: 'SIGN_PARAM_INVALID';
|
|
128
|
-
} | {
|
|
129
|
-
code: 'COLLECTION_PERMISSION_DENIED';
|
|
130
|
-
} | {
|
|
131
|
-
code: 'QUERYID_INVALID_ERROR';
|
|
132
|
-
});
|
|
133
|
-
export interface IResponseMessageErrorMsg extends IResponseMessageBase {
|
|
134
|
-
msgType: 'ERROR';
|
|
135
|
-
msgData: IResponseMessageErrorData;
|
|
136
|
-
}
|
|
137
|
-
export declare type IDBEvent = IDBInitEvent | IDBNextEvent;
|
|
138
|
-
export interface IDBEventBase {
|
|
139
|
-
ID: number;
|
|
140
|
-
DataType: DataType;
|
|
141
|
-
QueueType: QueueType;
|
|
142
|
-
DocID: string;
|
|
143
|
-
Doc: string;
|
|
144
|
-
}
|
|
145
|
-
export interface IDBInitEvent extends IDBEventBase {
|
|
146
|
-
DataType: 'init';
|
|
147
|
-
QueueType: 'init';
|
|
148
|
-
UpdatedFields?: any;
|
|
149
|
-
removedFields?: any;
|
|
150
|
-
}
|
|
151
|
-
export declare type IDBNextEvent = IDBNextEventDataUpdate | IDBNextEventDataReplace | IDBNextEventDataAdd | IDBNextEventDataRemove | IDBNextEventDataLimit;
|
|
152
|
-
export declare type IDBNextEventDataUpdate = IDBNextEventDataUpdateQueueUpdate | IDBNextEventDataUpdateQueueEnqueue | IDBNextEventDataUpdateQueueDequeue;
|
|
153
|
-
export declare type IDBNextEventDataReplace = IDBNextEventDataReplaceQueueUpdate | IDBNextEventDataReplaceQueueEnqueue | IDBNextEventDataReplaceQueueDequeue;
|
|
154
|
-
export declare type IDBNextEventDataLimit = IDBNextEventDataLimitQueueEnqueue | IDBNextEventDataLimitQueueDequeue;
|
|
155
|
-
export interface IDBNextEventDataUpdateQueueUpdate extends IDBEventBase {
|
|
156
|
-
DataType: 'update';
|
|
157
|
-
QueueType: 'update';
|
|
158
|
-
Doc: '';
|
|
159
|
-
UpdatedFields: string;
|
|
160
|
-
RemovedFields: string;
|
|
161
|
-
}
|
|
162
|
-
export interface IDBNextEventDataUpdateQueueEnqueue extends IDBEventBase {
|
|
163
|
-
DataType: 'update';
|
|
164
|
-
QueueType: 'enqueue';
|
|
165
|
-
Doc: string;
|
|
166
|
-
UpdatedFields: string;
|
|
167
|
-
RemovedFields: string;
|
|
168
|
-
}
|
|
169
|
-
export interface IDBNextEventDataUpdateQueueDequeue extends IDBEventBase {
|
|
170
|
-
DataType: 'update';
|
|
171
|
-
QueueType: 'dequeue';
|
|
172
|
-
Doc: '';
|
|
173
|
-
UpdatedFields: string;
|
|
174
|
-
RemovedFields: string;
|
|
175
|
-
}
|
|
176
|
-
export interface IDBNextEventDataReplaceQueueUpdate extends IDBEventBase {
|
|
177
|
-
DataType: 'replace';
|
|
178
|
-
QueueType: 'update';
|
|
179
|
-
Doc: string;
|
|
180
|
-
UpdatedFields: '';
|
|
181
|
-
RemovedFields: '';
|
|
182
|
-
}
|
|
183
|
-
export interface IDBNextEventDataReplaceQueueEnqueue extends IDBEventBase {
|
|
184
|
-
DataType: 'replace';
|
|
185
|
-
QueueType: 'enqueue';
|
|
186
|
-
Doc: string;
|
|
187
|
-
UpdatedFields: '';
|
|
188
|
-
RemovedFields: '';
|
|
189
|
-
}
|
|
190
|
-
export interface IDBNextEventDataReplaceQueueDequeue extends IDBEventBase {
|
|
191
|
-
DataType: 'replace';
|
|
192
|
-
QueueType: 'dequeue';
|
|
193
|
-
Doc: string;
|
|
194
|
-
UpdatedFields: '';
|
|
195
|
-
RemovedFields: '';
|
|
196
|
-
}
|
|
197
|
-
export interface IDBNextEventDataAdd extends IDBEventBase {
|
|
198
|
-
DataType: 'add';
|
|
199
|
-
QueueType: 'enqueue';
|
|
200
|
-
}
|
|
201
|
-
export interface IDBNextEventDataRemove extends IDBEventBase {
|
|
202
|
-
DataType: 'remove';
|
|
203
|
-
QueueType: 'dequeue';
|
|
204
|
-
Doc: '';
|
|
205
|
-
}
|
|
206
|
-
export interface IDBNextEventDataLimitQueueEnqueue extends IDBEventBase {
|
|
207
|
-
DataType: 'limit';
|
|
208
|
-
QueueType: 'enqueue';
|
|
209
|
-
Doc: string;
|
|
210
|
-
UpdatedFields: '';
|
|
211
|
-
RemovedFields: '';
|
|
212
|
-
}
|
|
213
|
-
export interface IDBNextEventDataLimitQueueDequeue extends IDBEventBase {
|
|
214
|
-
DataType: 'limit';
|
|
215
|
-
QueueType: 'dequeue';
|
|
216
|
-
Doc: '';
|
|
217
|
-
UpdatedFields: '';
|
|
218
|
-
RemovedFields: '';
|
|
219
|
-
}
|
|
1
|
+
import { DataType, QueueType } from './index';
|
|
2
|
+
export declare type IRequestMsgType = 'LOGIN' | 'INIT_WATCH' | 'REBUILD_WATCH' | 'CHECK_LAST' | 'CLOSE_WATCH' | 'PING';
|
|
3
|
+
export declare type IResponseMsgType = 'LOGIN_RES' | 'INIT_EVENT' | 'NEXT_EVENT' | 'CHECK_EVENT' | 'PONG' | 'ERROR';
|
|
4
|
+
export interface IRequestMessageBase<W extends boolean = true> {
|
|
5
|
+
watchId: W extends true ? string : undefined;
|
|
6
|
+
requestId: string;
|
|
7
|
+
msgType: IRequestMsgType;
|
|
8
|
+
msgData: IRequestMessageMsgData;
|
|
9
|
+
}
|
|
10
|
+
export declare type IRequestMessageMsgData = IRequestMessageInitWatchData | IRequestMessageLoginData | IRequestMessageRebuildWatchData | IRequestMessageCheckLastData | IRequestMessageCloseWatchData | IRequestMessagePingData;
|
|
11
|
+
export declare type IRequestMessage = IRequestMessageInitWatchMsg | IRequestMessageLoginMsg | IRequestMessageRebuildWatchMsg | IRequestMessageCheckLastMsg | IRequestMessageCloseWatchMsg | IRequestMessagePingMsg;
|
|
12
|
+
export interface IRequestMessageLoginData {
|
|
13
|
+
envId: string;
|
|
14
|
+
accessToken: string;
|
|
15
|
+
referrer: 'web';
|
|
16
|
+
sdkVersion: string;
|
|
17
|
+
dataVersion: string;
|
|
18
|
+
}
|
|
19
|
+
export interface IRequestExtraMessageLoginData {
|
|
20
|
+
runtime: string;
|
|
21
|
+
signStr: string;
|
|
22
|
+
secretVersion: string;
|
|
23
|
+
}
|
|
24
|
+
export interface IRequestMessageLoginMsg extends IRequestMessageBase<false> {
|
|
25
|
+
msgType: 'LOGIN';
|
|
26
|
+
msgData: IRequestMessageLoginData;
|
|
27
|
+
exMsgData?: IRequestExtraMessageLoginData;
|
|
28
|
+
}
|
|
29
|
+
export interface IRequestMessageInitWatchData {
|
|
30
|
+
envId: string;
|
|
31
|
+
collName: string;
|
|
32
|
+
query: string;
|
|
33
|
+
limit?: number;
|
|
34
|
+
orderBy?: Record<string, string>;
|
|
35
|
+
}
|
|
36
|
+
export interface IRequestMessageInitWatchMsg extends IRequestMessageBase {
|
|
37
|
+
msgType: 'INIT_WATCH';
|
|
38
|
+
msgData: IRequestMessageInitWatchData;
|
|
39
|
+
}
|
|
40
|
+
export interface IRequestMessageRebuildWatchData {
|
|
41
|
+
envId: string;
|
|
42
|
+
collName: string;
|
|
43
|
+
queryID: string;
|
|
44
|
+
eventID: number;
|
|
45
|
+
}
|
|
46
|
+
export interface IRequestMessageRebuildWatchMsg extends IRequestMessageBase {
|
|
47
|
+
msgType: 'REBUILD_WATCH';
|
|
48
|
+
msgData: IRequestMessageRebuildWatchData;
|
|
49
|
+
}
|
|
50
|
+
export interface IRequestMessageCheckLastData {
|
|
51
|
+
queryID: string;
|
|
52
|
+
eventID: number;
|
|
53
|
+
}
|
|
54
|
+
export interface IRequestMessageCheckLastMsg extends IRequestMessageBase {
|
|
55
|
+
msgType: 'CHECK_LAST';
|
|
56
|
+
msgData: IRequestMessageCheckLastData;
|
|
57
|
+
}
|
|
58
|
+
export declare type IRequestMessageCloseWatchData = null;
|
|
59
|
+
export interface IRequestMessageCloseWatchMsg extends IRequestMessageBase {
|
|
60
|
+
msgType: 'CLOSE_WATCH';
|
|
61
|
+
msgData: IRequestMessageCloseWatchData;
|
|
62
|
+
}
|
|
63
|
+
export declare type IRequestMessagePingData = null;
|
|
64
|
+
export interface IRequestMessagePingMsg extends IRequestMessageBase<false> {
|
|
65
|
+
msgType: 'PING';
|
|
66
|
+
msgData: IRequestMessagePingData;
|
|
67
|
+
}
|
|
68
|
+
export interface IResponseMessageBase<W extends boolean = true> {
|
|
69
|
+
watchId: W extends true ? string : undefined;
|
|
70
|
+
requestId: string;
|
|
71
|
+
msgType: IResponseMsgType;
|
|
72
|
+
msgData: IResponseMessageMsgData;
|
|
73
|
+
}
|
|
74
|
+
export declare type IResponseMessageMsgData = IResponseMessageLoginResData | IResponseMessageInitEventData | IResponseMessageNextEventData | IResponseMessageCheckEventData | IResponseMessagePongData | IResponseMessageErrorData;
|
|
75
|
+
export declare type IResponseMessage = IResponseMessageLoginResMsg | IResponseMessageInitEventMsg | IResponseMessageNextEventMsg | IResponseMessageCheckEventMsg | IResponseMessagePongMsg | IResponseMessageErrorMsg;
|
|
76
|
+
export declare type IResponseMessageLoginResData = {
|
|
77
|
+
envId: string;
|
|
78
|
+
} & Partial<IResponseMessageErrorData>;
|
|
79
|
+
export interface IResponseMessageLoginResMsg extends IResponseMessageBase<false> {
|
|
80
|
+
msgType: 'LOGIN_RES';
|
|
81
|
+
msgData: IResponseMessageLoginResData;
|
|
82
|
+
}
|
|
83
|
+
export interface IResponseMessageInitEventData {
|
|
84
|
+
queryID: string;
|
|
85
|
+
currEvent: number;
|
|
86
|
+
events: IDBEvent[];
|
|
87
|
+
}
|
|
88
|
+
export interface IResponseMessageInitEventMsg extends IResponseMessageBase {
|
|
89
|
+
msgType: 'INIT_EVENT';
|
|
90
|
+
msgData: IResponseMessageInitEventData;
|
|
91
|
+
}
|
|
92
|
+
export interface IResponseMessageNextEventData {
|
|
93
|
+
queryID: string;
|
|
94
|
+
currEvent: number;
|
|
95
|
+
events: IDBEvent[];
|
|
96
|
+
}
|
|
97
|
+
export interface IResponseMessageNextEventMsg extends IResponseMessageBase {
|
|
98
|
+
msgType: 'NEXT_EVENT';
|
|
99
|
+
msgData: IResponseMessageNextEventData;
|
|
100
|
+
}
|
|
101
|
+
export interface IResponseMessageCheckEventData {
|
|
102
|
+
queryID: string;
|
|
103
|
+
currEvent: number;
|
|
104
|
+
}
|
|
105
|
+
export interface IResponseMessageCheckEventMsg extends IResponseMessageBase {
|
|
106
|
+
msgType: 'CHECK_EVENT';
|
|
107
|
+
msgData: IResponseMessageCheckEventData;
|
|
108
|
+
}
|
|
109
|
+
export declare type IResponseMessagePongData = null;
|
|
110
|
+
export interface IResponseMessagePongMsg extends IResponseMessageBase {
|
|
111
|
+
msgType: 'PONG';
|
|
112
|
+
msgData: IResponseMessagePongData;
|
|
113
|
+
}
|
|
114
|
+
export declare type IResponseMessageErrorData = {
|
|
115
|
+
message: string;
|
|
116
|
+
} & ({
|
|
117
|
+
code: 'SYS_ERR';
|
|
118
|
+
} | {
|
|
119
|
+
code: 'CHECK_LOGIN_FAILED';
|
|
120
|
+
} | {
|
|
121
|
+
code: 'SIGN_INVALID_ERROR';
|
|
122
|
+
} | {
|
|
123
|
+
code: 'SIGN_EXPIRED_ERROR';
|
|
124
|
+
} | {
|
|
125
|
+
code: 'INVALIID_ENV';
|
|
126
|
+
} | {
|
|
127
|
+
code: 'SIGN_PARAM_INVALID';
|
|
128
|
+
} | {
|
|
129
|
+
code: 'COLLECTION_PERMISSION_DENIED';
|
|
130
|
+
} | {
|
|
131
|
+
code: 'QUERYID_INVALID_ERROR';
|
|
132
|
+
});
|
|
133
|
+
export interface IResponseMessageErrorMsg extends IResponseMessageBase {
|
|
134
|
+
msgType: 'ERROR';
|
|
135
|
+
msgData: IResponseMessageErrorData;
|
|
136
|
+
}
|
|
137
|
+
export declare type IDBEvent = IDBInitEvent | IDBNextEvent;
|
|
138
|
+
export interface IDBEventBase {
|
|
139
|
+
ID: number;
|
|
140
|
+
DataType: DataType;
|
|
141
|
+
QueueType: QueueType;
|
|
142
|
+
DocID: string;
|
|
143
|
+
Doc: string;
|
|
144
|
+
}
|
|
145
|
+
export interface IDBInitEvent extends IDBEventBase {
|
|
146
|
+
DataType: 'init';
|
|
147
|
+
QueueType: 'init';
|
|
148
|
+
UpdatedFields?: any;
|
|
149
|
+
removedFields?: any;
|
|
150
|
+
}
|
|
151
|
+
export declare type IDBNextEvent = IDBNextEventDataUpdate | IDBNextEventDataReplace | IDBNextEventDataAdd | IDBNextEventDataRemove | IDBNextEventDataLimit;
|
|
152
|
+
export declare type IDBNextEventDataUpdate = IDBNextEventDataUpdateQueueUpdate | IDBNextEventDataUpdateQueueEnqueue | IDBNextEventDataUpdateQueueDequeue;
|
|
153
|
+
export declare type IDBNextEventDataReplace = IDBNextEventDataReplaceQueueUpdate | IDBNextEventDataReplaceQueueEnqueue | IDBNextEventDataReplaceQueueDequeue;
|
|
154
|
+
export declare type IDBNextEventDataLimit = IDBNextEventDataLimitQueueEnqueue | IDBNextEventDataLimitQueueDequeue;
|
|
155
|
+
export interface IDBNextEventDataUpdateQueueUpdate extends IDBEventBase {
|
|
156
|
+
DataType: 'update';
|
|
157
|
+
QueueType: 'update';
|
|
158
|
+
Doc: '';
|
|
159
|
+
UpdatedFields: string;
|
|
160
|
+
RemovedFields: string;
|
|
161
|
+
}
|
|
162
|
+
export interface IDBNextEventDataUpdateQueueEnqueue extends IDBEventBase {
|
|
163
|
+
DataType: 'update';
|
|
164
|
+
QueueType: 'enqueue';
|
|
165
|
+
Doc: string;
|
|
166
|
+
UpdatedFields: string;
|
|
167
|
+
RemovedFields: string;
|
|
168
|
+
}
|
|
169
|
+
export interface IDBNextEventDataUpdateQueueDequeue extends IDBEventBase {
|
|
170
|
+
DataType: 'update';
|
|
171
|
+
QueueType: 'dequeue';
|
|
172
|
+
Doc: '';
|
|
173
|
+
UpdatedFields: string;
|
|
174
|
+
RemovedFields: string;
|
|
175
|
+
}
|
|
176
|
+
export interface IDBNextEventDataReplaceQueueUpdate extends IDBEventBase {
|
|
177
|
+
DataType: 'replace';
|
|
178
|
+
QueueType: 'update';
|
|
179
|
+
Doc: string;
|
|
180
|
+
UpdatedFields: '';
|
|
181
|
+
RemovedFields: '';
|
|
182
|
+
}
|
|
183
|
+
export interface IDBNextEventDataReplaceQueueEnqueue extends IDBEventBase {
|
|
184
|
+
DataType: 'replace';
|
|
185
|
+
QueueType: 'enqueue';
|
|
186
|
+
Doc: string;
|
|
187
|
+
UpdatedFields: '';
|
|
188
|
+
RemovedFields: '';
|
|
189
|
+
}
|
|
190
|
+
export interface IDBNextEventDataReplaceQueueDequeue extends IDBEventBase {
|
|
191
|
+
DataType: 'replace';
|
|
192
|
+
QueueType: 'dequeue';
|
|
193
|
+
Doc: string;
|
|
194
|
+
UpdatedFields: '';
|
|
195
|
+
RemovedFields: '';
|
|
196
|
+
}
|
|
197
|
+
export interface IDBNextEventDataAdd extends IDBEventBase {
|
|
198
|
+
DataType: 'add';
|
|
199
|
+
QueueType: 'enqueue';
|
|
200
|
+
}
|
|
201
|
+
export interface IDBNextEventDataRemove extends IDBEventBase {
|
|
202
|
+
DataType: 'remove';
|
|
203
|
+
QueueType: 'dequeue';
|
|
204
|
+
Doc: '';
|
|
205
|
+
}
|
|
206
|
+
export interface IDBNextEventDataLimitQueueEnqueue extends IDBEventBase {
|
|
207
|
+
DataType: 'limit';
|
|
208
|
+
QueueType: 'enqueue';
|
|
209
|
+
Doc: string;
|
|
210
|
+
UpdatedFields: '';
|
|
211
|
+
RemovedFields: '';
|
|
212
|
+
}
|
|
213
|
+
export interface IDBNextEventDataLimitQueueDequeue extends IDBEventBase {
|
|
214
|
+
DataType: 'limit';
|
|
215
|
+
QueueType: 'dequeue';
|
|
216
|
+
Doc: '';
|
|
217
|
+
UpdatedFields: '';
|
|
218
|
+
RemovedFields: '';
|
|
219
|
+
}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
package/dist/commonjs/util.d.ts
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
interface DocumentModel {
|
|
2
|
-
_id: string;
|
|
3
|
-
}
|
|
4
|
-
export declare class Util {
|
|
5
|
-
static formatResDocumentData: (documents: DocumentModel[]) => {}[];
|
|
6
|
-
static whichType: (obj: any) => String;
|
|
7
|
-
static generateDocId: () => string;
|
|
8
|
-
}
|
|
9
|
-
export {};
|
|
1
|
+
interface DocumentModel {
|
|
2
|
+
_id: string;
|
|
3
|
+
}
|
|
4
|
+
export declare class Util {
|
|
5
|
+
static formatResDocumentData: (documents: DocumentModel[]) => {}[];
|
|
6
|
+
static whichType: (obj: any) => String;
|
|
7
|
+
static generateDocId: () => string;
|
|
8
|
+
}
|
|
9
|
+
export {};
|
package/dist/commonjs/util.js
CHANGED
|
@@ -1,101 +1,101 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
const constant_1 = require("./constant");
|
|
4
|
-
const index_1 = require("./geo/index");
|
|
5
|
-
class Util {
|
|
6
|
-
}
|
|
7
|
-
exports.Util = Util;
|
|
8
|
-
Util.formatResDocumentData = (documents) => {
|
|
9
|
-
return documents.map(document => {
|
|
10
|
-
return Util.formatField(document);
|
|
11
|
-
});
|
|
12
|
-
};
|
|
13
|
-
Util.formatField = document => {
|
|
14
|
-
const keys = Object.keys(document);
|
|
15
|
-
let protoField = {};
|
|
16
|
-
if (Array.isArray(document)) {
|
|
17
|
-
protoField = [];
|
|
18
|
-
}
|
|
19
|
-
keys.forEach(key => {
|
|
20
|
-
const item = document[key];
|
|
21
|
-
const type = Util.whichType(item);
|
|
22
|
-
let realValue;
|
|
23
|
-
switch (type) {
|
|
24
|
-
case constant_1.FieldType.GeoPoint:
|
|
25
|
-
realValue = new index_1.Point(item.coordinates[0], item.coordinates[1]);
|
|
26
|
-
break;
|
|
27
|
-
case constant_1.FieldType.GeoLineString:
|
|
28
|
-
realValue = new index_1.LineString(item.coordinates.map(point => new index_1.Point(point[0], point[1])));
|
|
29
|
-
break;
|
|
30
|
-
case constant_1.FieldType.GeoPolygon:
|
|
31
|
-
realValue = new index_1.Polygon(item.coordinates.map(line => new index_1.LineString(line.map(([lng, lat]) => new index_1.Point(lng, lat)))));
|
|
32
|
-
break;
|
|
33
|
-
case constant_1.FieldType.GeoMultiPoint:
|
|
34
|
-
realValue = new index_1.MultiPoint(item.coordinates.map(point => new index_1.Point(point[0], point[1])));
|
|
35
|
-
break;
|
|
36
|
-
case constant_1.FieldType.GeoMultiLineString:
|
|
37
|
-
realValue = new index_1.MultiLineString(item.coordinates.map(line => new index_1.LineString(line.map(([lng, lat]) => new index_1.Point(lng, lat)))));
|
|
38
|
-
break;
|
|
39
|
-
case constant_1.FieldType.GeoMultiPolygon:
|
|
40
|
-
realValue = new index_1.MultiPolygon(item.coordinates.map(polygon => new index_1.Polygon(polygon.map(line => new index_1.LineString(line.map(([lng, lat]) => new index_1.Point(lng, lat)))))));
|
|
41
|
-
break;
|
|
42
|
-
case constant_1.FieldType.Date:
|
|
43
|
-
realValue = item;
|
|
44
|
-
break;
|
|
45
|
-
case constant_1.FieldType.Object:
|
|
46
|
-
case constant_1.FieldType.Array:
|
|
47
|
-
realValue = Util.formatField(item);
|
|
48
|
-
break;
|
|
49
|
-
case constant_1.FieldType.ServerDate:
|
|
50
|
-
realValue = new Date(item.$date);
|
|
51
|
-
break;
|
|
52
|
-
default:
|
|
53
|
-
realValue = item;
|
|
54
|
-
}
|
|
55
|
-
if (Array.isArray(protoField)) {
|
|
56
|
-
protoField.push(realValue);
|
|
57
|
-
}
|
|
58
|
-
else {
|
|
59
|
-
protoField[key] = realValue;
|
|
60
|
-
}
|
|
61
|
-
});
|
|
62
|
-
return protoField;
|
|
63
|
-
};
|
|
64
|
-
Util.whichType = (obj) => {
|
|
65
|
-
let type = Object.prototype.toString.call(obj).slice(8, -1);
|
|
66
|
-
if (type === constant_1.FieldType.Date) {
|
|
67
|
-
return constant_1.FieldType.Date;
|
|
68
|
-
}
|
|
69
|
-
if (type === constant_1.FieldType.Object) {
|
|
70
|
-
if (obj.$date) {
|
|
71
|
-
type = constant_1.FieldType.ServerDate;
|
|
72
|
-
}
|
|
73
|
-
else if (index_1.Point.validate(obj)) {
|
|
74
|
-
type = constant_1.FieldType.GeoPoint;
|
|
75
|
-
}
|
|
76
|
-
else if (index_1.LineString.validate(obj)) {
|
|
77
|
-
type = constant_1.FieldType.GeoLineString;
|
|
78
|
-
}
|
|
79
|
-
else if (index_1.Polygon.validate(obj)) {
|
|
80
|
-
type = constant_1.FieldType.GeoPolygon;
|
|
81
|
-
}
|
|
82
|
-
else if (index_1.MultiPoint.validate(obj)) {
|
|
83
|
-
type = constant_1.FieldType.GeoMultiPoint;
|
|
84
|
-
}
|
|
85
|
-
else if (index_1.MultiLineString.validate(obj)) {
|
|
86
|
-
type = constant_1.FieldType.GeoMultiLineString;
|
|
87
|
-
}
|
|
88
|
-
else if (index_1.MultiPolygon.validate(obj)) {
|
|
89
|
-
type = constant_1.FieldType.GeoMultiPolygon;
|
|
90
|
-
}
|
|
91
|
-
}
|
|
92
|
-
return type;
|
|
93
|
-
};
|
|
94
|
-
Util.generateDocId = () => {
|
|
95
|
-
let chars = 'ABCDEFabcdef0123456789';
|
|
96
|
-
let autoId = '';
|
|
97
|
-
for (let i = 0; i < 24; i++) {
|
|
98
|
-
autoId += chars.charAt(Math.floor(Math.random() * chars.length));
|
|
99
|
-
}
|
|
100
|
-
return autoId;
|
|
101
|
-
};
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const constant_1 = require("./constant");
|
|
4
|
+
const index_1 = require("./geo/index");
|
|
5
|
+
class Util {
|
|
6
|
+
}
|
|
7
|
+
exports.Util = Util;
|
|
8
|
+
Util.formatResDocumentData = (documents) => {
|
|
9
|
+
return documents.map(document => {
|
|
10
|
+
return Util.formatField(document);
|
|
11
|
+
});
|
|
12
|
+
};
|
|
13
|
+
Util.formatField = document => {
|
|
14
|
+
const keys = Object.keys(document);
|
|
15
|
+
let protoField = {};
|
|
16
|
+
if (Array.isArray(document)) {
|
|
17
|
+
protoField = [];
|
|
18
|
+
}
|
|
19
|
+
keys.forEach(key => {
|
|
20
|
+
const item = document[key];
|
|
21
|
+
const type = Util.whichType(item);
|
|
22
|
+
let realValue;
|
|
23
|
+
switch (type) {
|
|
24
|
+
case constant_1.FieldType.GeoPoint:
|
|
25
|
+
realValue = new index_1.Point(item.coordinates[0], item.coordinates[1]);
|
|
26
|
+
break;
|
|
27
|
+
case constant_1.FieldType.GeoLineString:
|
|
28
|
+
realValue = new index_1.LineString(item.coordinates.map(point => new index_1.Point(point[0], point[1])));
|
|
29
|
+
break;
|
|
30
|
+
case constant_1.FieldType.GeoPolygon:
|
|
31
|
+
realValue = new index_1.Polygon(item.coordinates.map(line => new index_1.LineString(line.map(([lng, lat]) => new index_1.Point(lng, lat)))));
|
|
32
|
+
break;
|
|
33
|
+
case constant_1.FieldType.GeoMultiPoint:
|
|
34
|
+
realValue = new index_1.MultiPoint(item.coordinates.map(point => new index_1.Point(point[0], point[1])));
|
|
35
|
+
break;
|
|
36
|
+
case constant_1.FieldType.GeoMultiLineString:
|
|
37
|
+
realValue = new index_1.MultiLineString(item.coordinates.map(line => new index_1.LineString(line.map(([lng, lat]) => new index_1.Point(lng, lat)))));
|
|
38
|
+
break;
|
|
39
|
+
case constant_1.FieldType.GeoMultiPolygon:
|
|
40
|
+
realValue = new index_1.MultiPolygon(item.coordinates.map(polygon => new index_1.Polygon(polygon.map(line => new index_1.LineString(line.map(([lng, lat]) => new index_1.Point(lng, lat)))))));
|
|
41
|
+
break;
|
|
42
|
+
case constant_1.FieldType.Date:
|
|
43
|
+
realValue = item;
|
|
44
|
+
break;
|
|
45
|
+
case constant_1.FieldType.Object:
|
|
46
|
+
case constant_1.FieldType.Array:
|
|
47
|
+
realValue = Util.formatField(item);
|
|
48
|
+
break;
|
|
49
|
+
case constant_1.FieldType.ServerDate:
|
|
50
|
+
realValue = new Date(item.$date);
|
|
51
|
+
break;
|
|
52
|
+
default:
|
|
53
|
+
realValue = item;
|
|
54
|
+
}
|
|
55
|
+
if (Array.isArray(protoField)) {
|
|
56
|
+
protoField.push(realValue);
|
|
57
|
+
}
|
|
58
|
+
else {
|
|
59
|
+
protoField[key] = realValue;
|
|
60
|
+
}
|
|
61
|
+
});
|
|
62
|
+
return protoField;
|
|
63
|
+
};
|
|
64
|
+
Util.whichType = (obj) => {
|
|
65
|
+
let type = Object.prototype.toString.call(obj).slice(8, -1);
|
|
66
|
+
if (type === constant_1.FieldType.Date) {
|
|
67
|
+
return constant_1.FieldType.Date;
|
|
68
|
+
}
|
|
69
|
+
if (type === constant_1.FieldType.Object) {
|
|
70
|
+
if (obj.$date) {
|
|
71
|
+
type = constant_1.FieldType.ServerDate;
|
|
72
|
+
}
|
|
73
|
+
else if (index_1.Point.validate(obj)) {
|
|
74
|
+
type = constant_1.FieldType.GeoPoint;
|
|
75
|
+
}
|
|
76
|
+
else if (index_1.LineString.validate(obj)) {
|
|
77
|
+
type = constant_1.FieldType.GeoLineString;
|
|
78
|
+
}
|
|
79
|
+
else if (index_1.Polygon.validate(obj)) {
|
|
80
|
+
type = constant_1.FieldType.GeoPolygon;
|
|
81
|
+
}
|
|
82
|
+
else if (index_1.MultiPoint.validate(obj)) {
|
|
83
|
+
type = constant_1.FieldType.GeoMultiPoint;
|
|
84
|
+
}
|
|
85
|
+
else if (index_1.MultiLineString.validate(obj)) {
|
|
86
|
+
type = constant_1.FieldType.GeoMultiLineString;
|
|
87
|
+
}
|
|
88
|
+
else if (index_1.MultiPolygon.validate(obj)) {
|
|
89
|
+
type = constant_1.FieldType.GeoMultiPolygon;
|
|
90
|
+
}
|
|
91
|
+
}
|
|
92
|
+
return type;
|
|
93
|
+
};
|
|
94
|
+
Util.generateDocId = () => {
|
|
95
|
+
let chars = 'ABCDEFabcdef0123456789';
|
|
96
|
+
let autoId = '';
|
|
97
|
+
for (let i = 0; i < 24; i++) {
|
|
98
|
+
autoId += chars.charAt(Math.floor(Math.random() * chars.length));
|
|
99
|
+
}
|
|
100
|
+
return autoId;
|
|
101
|
+
};
|