@cloudbase/database 1.4.3 → 1.5.1
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/dist/commonjs/ObjectId/index.d.ts +1 -1
- package/dist/commonjs/ObjectId/index.js +16 -9
- package/dist/commonjs/aggregate.js +126 -75
- package/dist/commonjs/collection.d.ts +3 -2
- package/dist/commonjs/collection.js +131 -58
- package/dist/commonjs/command.d.ts +5 -5
- package/dist/commonjs/command.js +181 -154
- package/dist/commonjs/commands/logic.js +30 -20
- package/dist/commonjs/commands/query.d.ts +1 -1
- package/dist/commonjs/commands/query.js +85 -65
- package/dist/commonjs/commands/update.js +9 -7
- package/dist/commonjs/config/error.config.js +1 -0
- package/dist/commonjs/const/code.js +1 -0
- package/dist/commonjs/constant.d.ts +7 -7
- package/dist/commonjs/constant.js +13 -11
- package/dist/commonjs/document.d.ts +10 -6
- package/dist/commonjs/document.js +305 -193
- package/dist/commonjs/geo/index.js +20 -9
- package/dist/commonjs/geo/lineString.d.ts +1 -1
- package/dist/commonjs/geo/lineString.js +62 -33
- package/dist/commonjs/geo/multiLineString.d.ts +1 -1
- package/dist/commonjs/geo/multiLineString.js +71 -32
- package/dist/commonjs/geo/multiPoint.d.ts +1 -1
- package/dist/commonjs/geo/multiPoint.js +58 -29
- package/dist/commonjs/geo/multiPolygon.d.ts +1 -1
- package/dist/commonjs/geo/multiPolygon.js +96 -36
- package/dist/commonjs/geo/point.d.ts +1 -1
- package/dist/commonjs/geo/point.js +30 -23
- package/dist/commonjs/geo/polygon.d.ts +1 -1
- package/dist/commonjs/geo/polygon.js +78 -39
- package/dist/commonjs/helper/symbol.js +17 -5
- package/dist/commonjs/index.d.ts +8 -2
- package/dist/commonjs/index.js +73 -20
- package/dist/commonjs/lib/util.d.ts +1 -0
- package/dist/commonjs/lib/util.js +26 -0
- package/dist/commonjs/operator-map.js +7 -6
- package/dist/commonjs/query.d.ts +9 -5
- package/dist/commonjs/query.js +330 -205
- package/dist/commonjs/regexp/index.d.ts +1 -1
- package/dist/commonjs/regexp/index.js +16 -9
- package/dist/commonjs/serializer/common.d.ts +2 -2
- package/dist/commonjs/serializer/common.js +59 -22
- package/dist/commonjs/serializer/datatype.d.ts +2 -2
- package/dist/commonjs/serializer/datatype.js +58 -21
- package/dist/commonjs/serializer/query.d.ts +1 -1
- package/dist/commonjs/serializer/query.js +137 -127
- package/dist/commonjs/serializer/update.d.ts +1 -1
- package/dist/commonjs/serializer/update.js +83 -78
- package/dist/commonjs/serverDate/index.d.ts +1 -1
- package/dist/commonjs/serverDate/index.js +16 -9
- package/dist/commonjs/transaction/collection.d.ts +7 -0
- package/dist/commonjs/transaction/collection.js +49 -0
- package/dist/commonjs/transaction/document.d.ts +27 -0
- package/dist/commonjs/transaction/document.js +205 -0
- package/dist/commonjs/transaction/index.js +196 -86
- package/dist/commonjs/transaction/query.d.ts +43 -0
- package/dist/commonjs/transaction/query.js +261 -0
- package/dist/commonjs/typings/index.d.ts +4 -4
- package/dist/commonjs/typings/realtime.d.ts +16 -16
- package/dist/commonjs/util.js +123 -92
- package/dist/commonjs/utils/error.d.ts +2 -1
- package/dist/commonjs/utils/error.js +74 -38
- package/dist/commonjs/utils/symbol.js +33 -14
- package/dist/commonjs/utils/type.d.ts +1 -1
- package/dist/commonjs/utils/type.js +25 -13
- package/dist/commonjs/utils/utils.d.ts +5 -1
- package/dist/commonjs/utils/utils.js +153 -22
- package/dist/commonjs/validate.js +79 -63
- package/dist/esm/ObjectId/index.d.ts +1 -1
- package/dist/esm/ObjectId/index.js +15 -8
- package/dist/esm/aggregate.js +118 -66
- package/dist/esm/collection.d.ts +3 -2
- package/dist/esm/collection.js +125 -52
- package/dist/esm/command.d.ts +5 -5
- package/dist/esm/command.js +175 -147
- package/dist/esm/commands/logic.js +30 -20
- package/dist/esm/commands/query.d.ts +1 -1
- package/dist/esm/commands/query.js +91 -71
- package/dist/esm/commands/update.js +8 -6
- package/dist/esm/config/error.config.js +1 -1
- package/dist/esm/const/code.js +1 -1
- package/dist/esm/constant.d.ts +7 -7
- package/dist/esm/constant.js +12 -11
- package/dist/esm/document.d.ts +10 -6
- package/dist/esm/document.js +297 -185
- package/dist/esm/geo/interface.js +1 -0
- package/dist/esm/geo/lineString.d.ts +1 -1
- package/dist/esm/geo/lineString.js +57 -28
- package/dist/esm/geo/multiLineString.d.ts +1 -1
- package/dist/esm/geo/multiLineString.js +66 -27
- package/dist/esm/geo/multiPoint.d.ts +1 -1
- package/dist/esm/geo/multiPoint.js +53 -24
- package/dist/esm/geo/multiPolygon.d.ts +1 -1
- package/dist/esm/geo/multiPolygon.js +91 -31
- package/dist/esm/geo/point.d.ts +1 -1
- package/dist/esm/geo/point.js +26 -19
- package/dist/esm/geo/polygon.d.ts +1 -1
- package/dist/esm/geo/polygon.js +73 -34
- package/dist/esm/helper/symbol.js +13 -13
- package/dist/esm/index.d.ts +8 -2
- package/dist/esm/index.js +62 -9
- package/dist/esm/lib/util.d.ts +1 -0
- package/dist/esm/lib/util.js +22 -0
- package/dist/esm/operator-map.js +4 -4
- package/dist/esm/query.d.ts +9 -5
- package/dist/esm/query.js +321 -196
- package/dist/esm/regexp/index.d.ts +1 -1
- package/dist/esm/regexp/index.js +15 -8
- package/dist/esm/serializer/common.d.ts +2 -2
- package/dist/esm/serializer/common.js +49 -13
- package/dist/esm/serializer/datatype.d.ts +2 -2
- package/dist/esm/serializer/datatype.js +44 -8
- package/dist/esm/serializer/query.d.ts +1 -1
- package/dist/esm/serializer/query.js +112 -102
- package/dist/esm/serializer/update.d.ts +1 -1
- package/dist/esm/serializer/update.js +69 -64
- package/dist/esm/serverDate/index.d.ts +1 -1
- package/dist/esm/serverDate/index.js +15 -8
- package/dist/esm/transaction/collection.d.ts +7 -0
- package/dist/esm/transaction/collection.js +46 -0
- package/dist/esm/transaction/document.d.ts +27 -0
- package/dist/esm/transaction/document.js +202 -0
- package/dist/esm/transaction/index.js +191 -81
- package/dist/esm/transaction/query.d.ts +43 -0
- package/dist/esm/transaction/query.js +258 -0
- package/dist/esm/typings/index.d.ts +4 -4
- package/dist/esm/typings/index.js +1 -0
- package/dist/esm/typings/realtime.d.ts +16 -16
- package/dist/esm/typings/realtime.js +1 -0
- package/dist/esm/util.js +121 -90
- package/dist/esm/utils/error.d.ts +2 -1
- package/dist/esm/utils/error.js +70 -35
- package/dist/esm/utils/symbol.js +33 -14
- package/dist/esm/utils/type.d.ts +1 -1
- package/dist/esm/utils/type.js +12 -12
- package/dist/esm/utils/utils.d.ts +5 -1
- package/dist/esm/utils/utils.js +137 -16
- package/dist/esm/validate.js +65 -49
- package/jest.config.js +14 -0
- package/package.json +14 -10
- package/src/aggregate.ts +1 -5
- package/src/collection.ts +15 -2
- package/src/document.ts +45 -34
- package/src/index.ts +51 -4
- package/src/query.ts +48 -38
- package/src/serializer/query.ts +18 -6
- package/src/transaction/index.ts +1 -1
- package/src/typings/index.ts +0 -4
- package/src/utils/utils.ts +105 -0
- package/src/validate.ts +3 -6
- package/tests/gateway-contract.test.ts +180 -0
- package/tests/index.test.ts +283 -0
- package/tests/transaction-query.test.ts +207 -0
- package/tests/watch-query.test.ts +144 -0
- package/tsconfig.esm.json +4 -2
- package/tsconfig.json +16 -6
- package/tsconfig.test.json +15 -0
- package/dist/commonjs/realtime/error.d.ts +0 -7
- package/dist/commonjs/realtime/error.js +0 -11
- package/dist/commonjs/realtime/listener.d.ts +0 -14
- package/dist/commonjs/realtime/listener.js +0 -17
- package/dist/commonjs/realtime/message.d.ts +0 -3
- package/dist/commonjs/realtime/message.js +0 -10
- package/dist/commonjs/realtime/snapshot.d.ts +0 -16
- package/dist/commonjs/realtime/snapshot.js +0 -42
- package/dist/commonjs/realtime/virtual-websocket-client.d.ts +0 -63
- package/dist/commonjs/realtime/virtual-websocket-client.js +0 -736
- package/dist/commonjs/realtime/websocket-client.d.ts +0 -78
- package/dist/commonjs/realtime/websocket-client.js +0 -567
- package/dist/commonjs/realtime/ws-event.d.ts +0 -126
- package/dist/commonjs/realtime/ws-event.js +0 -139
- package/dist/commonjs/transaction.d.ts +0 -42
- package/dist/commonjs/transaction.js +0 -126
- 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/transaction.d.ts +0 -42
- package/dist/esm/transaction.js +0 -121
- package/src/realtime/error.ts +0 -19
- package/src/realtime/listener.ts +0 -35
- package/src/realtime/message.ts +0 -14
- package/src/realtime/snapshot.ts +0 -60
- package/src/realtime/virtual-websocket-client.ts +0 -1195
- package/src/realtime/websocket-client.ts +0 -995
- package/src/realtime/ws-event.ts +0 -163
- package/src/transaction.ts +0 -190
package/dist/esm/command.js
CHANGED
|
@@ -3,92 +3,112 @@ import { LogicCommand, LOGIC_COMMANDS_LITERAL } from './commands/logic';
|
|
|
3
3
|
import { UpdateCommand, UPDATE_COMMANDS_LITERAL } from './commands/update';
|
|
4
4
|
import { isArray, isObject, isString } from './utils/type';
|
|
5
5
|
import Aggregation from './aggregate';
|
|
6
|
-
export
|
|
7
|
-
eq(val) {
|
|
6
|
+
export var Command = {
|
|
7
|
+
eq: function (val) {
|
|
8
8
|
return new QueryCommand(QUERY_COMMANDS_LITERAL.EQ, [val]);
|
|
9
9
|
},
|
|
10
|
-
neq(val) {
|
|
10
|
+
neq: function (val) {
|
|
11
11
|
return new QueryCommand(QUERY_COMMANDS_LITERAL.NEQ, [val]);
|
|
12
12
|
},
|
|
13
|
-
lt(val) {
|
|
13
|
+
lt: function (val) {
|
|
14
14
|
return new QueryCommand(QUERY_COMMANDS_LITERAL.LT, [val]);
|
|
15
15
|
},
|
|
16
|
-
lte(val) {
|
|
16
|
+
lte: function (val) {
|
|
17
17
|
return new QueryCommand(QUERY_COMMANDS_LITERAL.LTE, [val]);
|
|
18
18
|
},
|
|
19
|
-
gt(val) {
|
|
19
|
+
gt: function (val) {
|
|
20
20
|
return new QueryCommand(QUERY_COMMANDS_LITERAL.GT, [val]);
|
|
21
21
|
},
|
|
22
|
-
gte(val) {
|
|
22
|
+
gte: function (val) {
|
|
23
23
|
return new QueryCommand(QUERY_COMMANDS_LITERAL.GTE, [val]);
|
|
24
24
|
},
|
|
25
|
-
in(val) {
|
|
25
|
+
in: function (val) {
|
|
26
26
|
return new QueryCommand(QUERY_COMMANDS_LITERAL.IN, val);
|
|
27
27
|
},
|
|
28
|
-
nin(val) {
|
|
28
|
+
nin: function (val) {
|
|
29
29
|
return new QueryCommand(QUERY_COMMANDS_LITERAL.NIN, val);
|
|
30
30
|
},
|
|
31
|
-
all(val) {
|
|
31
|
+
all: function (val) {
|
|
32
32
|
return new QueryCommand(QUERY_COMMANDS_LITERAL.ALL, val);
|
|
33
33
|
},
|
|
34
|
-
elemMatch(val) {
|
|
34
|
+
elemMatch: function (val) {
|
|
35
35
|
return new QueryCommand(QUERY_COMMANDS_LITERAL.ELEM_MATCH, [val]);
|
|
36
36
|
},
|
|
37
|
-
exists(val) {
|
|
37
|
+
exists: function (val) {
|
|
38
38
|
return new QueryCommand(QUERY_COMMANDS_LITERAL.EXISTS, [val]);
|
|
39
39
|
},
|
|
40
|
-
size(val) {
|
|
40
|
+
size: function (val) {
|
|
41
41
|
return new QueryCommand(QUERY_COMMANDS_LITERAL.SIZE, [val]);
|
|
42
42
|
},
|
|
43
|
-
mod() {
|
|
43
|
+
mod: function () {
|
|
44
44
|
if (arguments.length == 1)
|
|
45
45
|
return new QueryCommand(QUERY_COMMANDS_LITERAL.MOD, [arguments[0]]);
|
|
46
46
|
if (arguments.length == 2)
|
|
47
47
|
return new QueryCommand(QUERY_COMMANDS_LITERAL.MOD, [[arguments[0], arguments[1]]]);
|
|
48
48
|
return new QueryCommand(QUERY_COMMANDS_LITERAL.MOD, arguments);
|
|
49
49
|
},
|
|
50
|
-
geoNear(val) {
|
|
50
|
+
geoNear: function (val) {
|
|
51
51
|
return new QueryCommand(QUERY_COMMANDS_LITERAL.GEO_NEAR, [val]);
|
|
52
52
|
},
|
|
53
|
-
geoWithin(val) {
|
|
53
|
+
geoWithin: function (val) {
|
|
54
54
|
return new QueryCommand(QUERY_COMMANDS_LITERAL.GEO_WITHIN, [val]);
|
|
55
55
|
},
|
|
56
|
-
geoIntersects(val) {
|
|
56
|
+
geoIntersects: function (val) {
|
|
57
57
|
return new QueryCommand(QUERY_COMMANDS_LITERAL.GEO_INTERSECTS, [val]);
|
|
58
58
|
},
|
|
59
|
-
and(
|
|
60
|
-
|
|
59
|
+
and: function () {
|
|
60
|
+
var __expressions__ = [];
|
|
61
|
+
for (var _i = 0; _i < arguments.length; _i++) {
|
|
62
|
+
__expressions__[_i] = arguments[_i];
|
|
63
|
+
}
|
|
64
|
+
var expressions = isArray(arguments[0]) ? arguments[0] : Array.from(arguments);
|
|
61
65
|
return new LogicCommand(LOGIC_COMMANDS_LITERAL.AND, expressions);
|
|
62
66
|
},
|
|
63
|
-
nor(
|
|
64
|
-
|
|
67
|
+
nor: function () {
|
|
68
|
+
var __expressions__ = [];
|
|
69
|
+
for (var _i = 0; _i < arguments.length; _i++) {
|
|
70
|
+
__expressions__[_i] = arguments[_i];
|
|
71
|
+
}
|
|
72
|
+
var expressions = isArray(arguments[0]) ? arguments[0] : Array.from(arguments);
|
|
65
73
|
return new LogicCommand(LOGIC_COMMANDS_LITERAL.NOR, expressions);
|
|
66
74
|
},
|
|
67
|
-
or(
|
|
68
|
-
|
|
75
|
+
or: function () {
|
|
76
|
+
var __expressions__ = [];
|
|
77
|
+
for (var _i = 0; _i < arguments.length; _i++) {
|
|
78
|
+
__expressions__[_i] = arguments[_i];
|
|
79
|
+
}
|
|
80
|
+
var expressions = isArray(arguments[0]) ? arguments[0] : Array.from(arguments);
|
|
69
81
|
return new LogicCommand(LOGIC_COMMANDS_LITERAL.OR, expressions);
|
|
70
82
|
},
|
|
71
|
-
not(
|
|
72
|
-
|
|
83
|
+
not: function () {
|
|
84
|
+
var __expressions__ = [];
|
|
85
|
+
for (var _i = 0; _i < arguments.length; _i++) {
|
|
86
|
+
__expressions__[_i] = arguments[_i];
|
|
87
|
+
}
|
|
88
|
+
var expressions = isArray(arguments[0]) ? arguments[0] : Array.from(arguments);
|
|
73
89
|
return new LogicCommand(LOGIC_COMMANDS_LITERAL.NOT, expressions);
|
|
74
90
|
},
|
|
75
|
-
set(val) {
|
|
91
|
+
set: function (val) {
|
|
76
92
|
return new UpdateCommand(UPDATE_COMMANDS_LITERAL.SET, [val]);
|
|
77
93
|
},
|
|
78
|
-
remove() {
|
|
94
|
+
remove: function () {
|
|
79
95
|
return new UpdateCommand(UPDATE_COMMANDS_LITERAL.REMOVE, []);
|
|
80
96
|
},
|
|
81
|
-
inc(val) {
|
|
97
|
+
inc: function (val) {
|
|
82
98
|
return new UpdateCommand(UPDATE_COMMANDS_LITERAL.INC, [val]);
|
|
83
99
|
},
|
|
84
|
-
mul(val) {
|
|
100
|
+
mul: function (val) {
|
|
85
101
|
return new UpdateCommand(UPDATE_COMMANDS_LITERAL.MUL, [val]);
|
|
86
102
|
},
|
|
87
|
-
push(
|
|
88
|
-
|
|
103
|
+
push: function () {
|
|
104
|
+
var args = [];
|
|
105
|
+
for (var _i = 0; _i < arguments.length; _i++) {
|
|
106
|
+
args[_i] = arguments[_i];
|
|
107
|
+
}
|
|
108
|
+
var values;
|
|
89
109
|
if (isObject(args[0]) && args[0].hasOwnProperty('each')) {
|
|
90
110
|
values = {};
|
|
91
|
-
|
|
111
|
+
var options = args[0];
|
|
92
112
|
if (options.each !== undefined) {
|
|
93
113
|
values['$each'] = options.each;
|
|
94
114
|
}
|
|
@@ -110,48 +130,52 @@ export const Command = {
|
|
|
110
130
|
}
|
|
111
131
|
return new UpdateCommand(UPDATE_COMMANDS_LITERAL.PUSH, values);
|
|
112
132
|
},
|
|
113
|
-
pull(values) {
|
|
133
|
+
pull: function (values) {
|
|
114
134
|
return new UpdateCommand(UPDATE_COMMANDS_LITERAL.PULL, values);
|
|
115
135
|
},
|
|
116
|
-
pullAll(values) {
|
|
136
|
+
pullAll: function (values) {
|
|
117
137
|
return new UpdateCommand(UPDATE_COMMANDS_LITERAL.PULL_ALL, values);
|
|
118
138
|
},
|
|
119
|
-
pop() {
|
|
139
|
+
pop: function () {
|
|
120
140
|
return new UpdateCommand(UPDATE_COMMANDS_LITERAL.POP, []);
|
|
121
141
|
},
|
|
122
|
-
shift() {
|
|
142
|
+
shift: function () {
|
|
123
143
|
return new UpdateCommand(UPDATE_COMMANDS_LITERAL.SHIFT, []);
|
|
124
144
|
},
|
|
125
|
-
unshift(
|
|
126
|
-
|
|
145
|
+
unshift: function () {
|
|
146
|
+
var __values__ = [];
|
|
147
|
+
for (var _i = 0; _i < arguments.length; _i++) {
|
|
148
|
+
__values__[_i] = arguments[_i];
|
|
149
|
+
}
|
|
150
|
+
var values = isArray(arguments[0]) ? arguments[0] : Array.from(arguments);
|
|
127
151
|
return new UpdateCommand(UPDATE_COMMANDS_LITERAL.UNSHIFT, values);
|
|
128
152
|
},
|
|
129
|
-
addToSet(values) {
|
|
153
|
+
addToSet: function (values) {
|
|
130
154
|
return new UpdateCommand(UPDATE_COMMANDS_LITERAL.ADD_TO_SET, values);
|
|
131
155
|
},
|
|
132
|
-
rename(values) {
|
|
156
|
+
rename: function (values) {
|
|
133
157
|
return new UpdateCommand(UPDATE_COMMANDS_LITERAL.RENAME, [values]);
|
|
134
158
|
},
|
|
135
|
-
bit(values) {
|
|
159
|
+
bit: function (values) {
|
|
136
160
|
return new UpdateCommand(UPDATE_COMMANDS_LITERAL.BIT, [values]);
|
|
137
161
|
},
|
|
138
|
-
max(values) {
|
|
162
|
+
max: function (values) {
|
|
139
163
|
return new UpdateCommand(UPDATE_COMMANDS_LITERAL.MAX, [values]);
|
|
140
164
|
},
|
|
141
|
-
min(values) {
|
|
165
|
+
min: function (values) {
|
|
142
166
|
return new UpdateCommand(UPDATE_COMMANDS_LITERAL.MIN, [values]);
|
|
143
167
|
},
|
|
144
|
-
expr(values) {
|
|
168
|
+
expr: function (values) {
|
|
145
169
|
return {
|
|
146
170
|
$expr: values
|
|
147
171
|
};
|
|
148
172
|
},
|
|
149
|
-
jsonSchema(schema) {
|
|
173
|
+
jsonSchema: function (schema) {
|
|
150
174
|
return {
|
|
151
175
|
$jsonSchema: schema
|
|
152
176
|
};
|
|
153
177
|
},
|
|
154
|
-
text(values) {
|
|
178
|
+
text: function (values) {
|
|
155
179
|
if (isString(values)) {
|
|
156
180
|
return {
|
|
157
181
|
$search: values.search
|
|
@@ -167,115 +191,119 @@ export const Command = {
|
|
|
167
191
|
}
|
|
168
192
|
},
|
|
169
193
|
aggregate: {
|
|
170
|
-
pipeline() {
|
|
194
|
+
pipeline: function () {
|
|
171
195
|
return new Aggregation();
|
|
172
196
|
},
|
|
173
|
-
abs: param
|
|
174
|
-
add: param
|
|
175
|
-
ceil: param
|
|
176
|
-
divide: param
|
|
177
|
-
exp: param
|
|
178
|
-
floor: param
|
|
179
|
-
ln: param
|
|
180
|
-
log: param
|
|
181
|
-
log10: param
|
|
182
|
-
mod: param
|
|
183
|
-
multiply: param
|
|
184
|
-
pow: param
|
|
185
|
-
sqrt: param
|
|
186
|
-
subtract: param
|
|
187
|
-
trunc: param
|
|
188
|
-
arrayElemAt: param
|
|
189
|
-
arrayToObject: param
|
|
190
|
-
concatArrays: param
|
|
191
|
-
filter: param
|
|
192
|
-
in: param
|
|
193
|
-
indexOfArray: param
|
|
194
|
-
isArray: param
|
|
195
|
-
map: param
|
|
196
|
-
range: param
|
|
197
|
-
reduce: param
|
|
198
|
-
reverseArray: param
|
|
199
|
-
size: param
|
|
200
|
-
slice: param
|
|
201
|
-
zip: param
|
|
202
|
-
and: param
|
|
203
|
-
not: param
|
|
204
|
-
or: param
|
|
205
|
-
cmp: param
|
|
206
|
-
eq: param
|
|
207
|
-
gt: param
|
|
208
|
-
gte: param
|
|
209
|
-
lt: param
|
|
210
|
-
lte: param
|
|
211
|
-
neq: param
|
|
212
|
-
cond: param
|
|
213
|
-
ifNull: param
|
|
214
|
-
switch: param
|
|
215
|
-
dateFromParts: param
|
|
216
|
-
dateFromString: param
|
|
217
|
-
dayOfMonth: param
|
|
218
|
-
dayOfWeek: param
|
|
219
|
-
dayOfYear: param
|
|
220
|
-
isoDayOfWeek: param
|
|
221
|
-
isoWeek: param
|
|
222
|
-
isoWeekYear: param
|
|
223
|
-
millisecond: param
|
|
224
|
-
minute: param
|
|
225
|
-
month: param
|
|
226
|
-
second: param
|
|
227
|
-
hour: param
|
|
228
|
-
week: param
|
|
229
|
-
year: param
|
|
230
|
-
literal: param
|
|
231
|
-
mergeObjects: param
|
|
232
|
-
objectToArray: param
|
|
233
|
-
allElementsTrue: param
|
|
234
|
-
anyElementTrue: param
|
|
235
|
-
setDifference: param
|
|
236
|
-
setEquals: param
|
|
237
|
-
setIntersection: param
|
|
238
|
-
setIsSubset: param
|
|
239
|
-
setUnion: param
|
|
240
|
-
concat: param
|
|
241
|
-
dateToString: param
|
|
242
|
-
indexOfBytes: param
|
|
243
|
-
indexOfCP: param
|
|
244
|
-
split: param
|
|
245
|
-
strLenBytes: param
|
|
246
|
-
strLenCP: param
|
|
247
|
-
strcasecmp: param
|
|
248
|
-
substr: param
|
|
249
|
-
substrBytes: param
|
|
250
|
-
substrCP: param
|
|
251
|
-
toLower: param
|
|
252
|
-
toUpper: param
|
|
253
|
-
meta: param
|
|
254
|
-
addToSet: param
|
|
255
|
-
avg: param
|
|
256
|
-
first: param
|
|
257
|
-
last: param
|
|
258
|
-
max: param
|
|
259
|
-
min: param
|
|
260
|
-
push: param
|
|
261
|
-
stdDevPop: param
|
|
262
|
-
stdDevSamp: param
|
|
263
|
-
sum: param
|
|
264
|
-
let: param
|
|
197
|
+
abs: function (param) { return new AggregationOperator('abs', param); },
|
|
198
|
+
add: function (param) { return new AggregationOperator('add', param); },
|
|
199
|
+
ceil: function (param) { return new AggregationOperator('ceil', param); },
|
|
200
|
+
divide: function (param) { return new AggregationOperator('divide', param); },
|
|
201
|
+
exp: function (param) { return new AggregationOperator('exp', param); },
|
|
202
|
+
floor: function (param) { return new AggregationOperator('floor', param); },
|
|
203
|
+
ln: function (param) { return new AggregationOperator('ln', param); },
|
|
204
|
+
log: function (param) { return new AggregationOperator('log', param); },
|
|
205
|
+
log10: function (param) { return new AggregationOperator('log10', param); },
|
|
206
|
+
mod: function (param) { return new AggregationOperator('mod', param); },
|
|
207
|
+
multiply: function (param) { return new AggregationOperator('multiply', param); },
|
|
208
|
+
pow: function (param) { return new AggregationOperator('pow', param); },
|
|
209
|
+
sqrt: function (param) { return new AggregationOperator('sqrt', param); },
|
|
210
|
+
subtract: function (param) { return new AggregationOperator('subtract', param); },
|
|
211
|
+
trunc: function (param) { return new AggregationOperator('trunc', param); },
|
|
212
|
+
arrayElemAt: function (param) { return new AggregationOperator('arrayElemAt', param); },
|
|
213
|
+
arrayToObject: function (param) { return new AggregationOperator('arrayToObject', param); },
|
|
214
|
+
concatArrays: function (param) { return new AggregationOperator('concatArrays', param); },
|
|
215
|
+
filter: function (param) { return new AggregationOperator('filter', param); },
|
|
216
|
+
in: function (param) { return new AggregationOperator('in', param); },
|
|
217
|
+
indexOfArray: function (param) { return new AggregationOperator('indexOfArray', param); },
|
|
218
|
+
isArray: function (param) { return new AggregationOperator('isArray', param); },
|
|
219
|
+
map: function (param) { return new AggregationOperator('map', param); },
|
|
220
|
+
range: function (param) { return new AggregationOperator('range', param); },
|
|
221
|
+
reduce: function (param) { return new AggregationOperator('reduce', param); },
|
|
222
|
+
reverseArray: function (param) { return new AggregationOperator('reverseArray', param); },
|
|
223
|
+
size: function (param) { return new AggregationOperator('size', param); },
|
|
224
|
+
slice: function (param) { return new AggregationOperator('slice', param); },
|
|
225
|
+
zip: function (param) { return new AggregationOperator('zip', param); },
|
|
226
|
+
and: function (param) { return new AggregationOperator('and', param); },
|
|
227
|
+
not: function (param) { return new AggregationOperator('not', param); },
|
|
228
|
+
or: function (param) { return new AggregationOperator('or', param); },
|
|
229
|
+
cmp: function (param) { return new AggregationOperator('cmp', param); },
|
|
230
|
+
eq: function (param) { return new AggregationOperator('eq', param); },
|
|
231
|
+
gt: function (param) { return new AggregationOperator('gt', param); },
|
|
232
|
+
gte: function (param) { return new AggregationOperator('gte', param); },
|
|
233
|
+
lt: function (param) { return new AggregationOperator('lt', param); },
|
|
234
|
+
lte: function (param) { return new AggregationOperator('lte', param); },
|
|
235
|
+
neq: function (param) { return new AggregationOperator('ne', param); },
|
|
236
|
+
cond: function (param) { return new AggregationOperator('cond', param); },
|
|
237
|
+
ifNull: function (param) { return new AggregationOperator('ifNull', param); },
|
|
238
|
+
switch: function (param) { return new AggregationOperator('switch', param); },
|
|
239
|
+
dateFromParts: function (param) { return new AggregationOperator('dateFromParts', param); },
|
|
240
|
+
dateFromString: function (param) { return new AggregationOperator('dateFromString', param); },
|
|
241
|
+
dayOfMonth: function (param) { return new AggregationOperator('dayOfMonth', param); },
|
|
242
|
+
dayOfWeek: function (param) { return new AggregationOperator('dayOfWeek', param); },
|
|
243
|
+
dayOfYear: function (param) { return new AggregationOperator('dayOfYear', param); },
|
|
244
|
+
isoDayOfWeek: function (param) { return new AggregationOperator('isoDayOfWeek', param); },
|
|
245
|
+
isoWeek: function (param) { return new AggregationOperator('isoWeek', param); },
|
|
246
|
+
isoWeekYear: function (param) { return new AggregationOperator('isoWeekYear', param); },
|
|
247
|
+
millisecond: function (param) { return new AggregationOperator('millisecond', param); },
|
|
248
|
+
minute: function (param) { return new AggregationOperator('minute', param); },
|
|
249
|
+
month: function (param) { return new AggregationOperator('month', param); },
|
|
250
|
+
second: function (param) { return new AggregationOperator('second', param); },
|
|
251
|
+
hour: function (param) { return new AggregationOperator('hour', param); },
|
|
252
|
+
week: function (param) { return new AggregationOperator('week', param); },
|
|
253
|
+
year: function (param) { return new AggregationOperator('year', param); },
|
|
254
|
+
literal: function (param) { return new AggregationOperator('literal', param); },
|
|
255
|
+
mergeObjects: function (param) { return new AggregationOperator('mergeObjects', param); },
|
|
256
|
+
objectToArray: function (param) { return new AggregationOperator('objectToArray', param); },
|
|
257
|
+
allElementsTrue: function (param) { return new AggregationOperator('allElementsTrue', param); },
|
|
258
|
+
anyElementTrue: function (param) { return new AggregationOperator('anyElementTrue', param); },
|
|
259
|
+
setDifference: function (param) { return new AggregationOperator('setDifference', param); },
|
|
260
|
+
setEquals: function (param) { return new AggregationOperator('setEquals', param); },
|
|
261
|
+
setIntersection: function (param) { return new AggregationOperator('setIntersection', param); },
|
|
262
|
+
setIsSubset: function (param) { return new AggregationOperator('setIsSubset', param); },
|
|
263
|
+
setUnion: function (param) { return new AggregationOperator('setUnion', param); },
|
|
264
|
+
concat: function (param) { return new AggregationOperator('concat', param); },
|
|
265
|
+
dateToString: function (param) { return new AggregationOperator('dateToString', param); },
|
|
266
|
+
indexOfBytes: function (param) { return new AggregationOperator('indexOfBytes', param); },
|
|
267
|
+
indexOfCP: function (param) { return new AggregationOperator('indexOfCP', param); },
|
|
268
|
+
split: function (param) { return new AggregationOperator('split', param); },
|
|
269
|
+
strLenBytes: function (param) { return new AggregationOperator('strLenBytes', param); },
|
|
270
|
+
strLenCP: function (param) { return new AggregationOperator('strLenCP', param); },
|
|
271
|
+
strcasecmp: function (param) { return new AggregationOperator('strcasecmp', param); },
|
|
272
|
+
substr: function (param) { return new AggregationOperator('substr', param); },
|
|
273
|
+
substrBytes: function (param) { return new AggregationOperator('substrBytes', param); },
|
|
274
|
+
substrCP: function (param) { return new AggregationOperator('substrCP', param); },
|
|
275
|
+
toLower: function (param) { return new AggregationOperator('toLower', param); },
|
|
276
|
+
toUpper: function (param) { return new AggregationOperator('toUpper', param); },
|
|
277
|
+
meta: function (param) { return new AggregationOperator('meta', param); },
|
|
278
|
+
addToSet: function (param) { return new AggregationOperator('addToSet', param); },
|
|
279
|
+
avg: function (param) { return new AggregationOperator('avg', param); },
|
|
280
|
+
first: function (param) { return new AggregationOperator('first', param); },
|
|
281
|
+
last: function (param) { return new AggregationOperator('last', param); },
|
|
282
|
+
max: function (param) { return new AggregationOperator('max', param); },
|
|
283
|
+
min: function (param) { return new AggregationOperator('min', param); },
|
|
284
|
+
push: function (param) { return new AggregationOperator('push', param); },
|
|
285
|
+
stdDevPop: function (param) { return new AggregationOperator('stdDevPop', param); },
|
|
286
|
+
stdDevSamp: function (param) { return new AggregationOperator('stdDevSamp', param); },
|
|
287
|
+
sum: function (param) { return new AggregationOperator('sum', param); },
|
|
288
|
+
let: function (param) { return new AggregationOperator('let', param); }
|
|
265
289
|
},
|
|
266
290
|
project: {
|
|
267
|
-
slice: param
|
|
268
|
-
elemMatch: param
|
|
291
|
+
slice: function (param) { return new ProjectionOperator('slice', param); },
|
|
292
|
+
elemMatch: function (param) { return new ProjectionOperator('elemMatch', param); }
|
|
269
293
|
}
|
|
270
294
|
};
|
|
271
|
-
|
|
272
|
-
|
|
295
|
+
var AggregationOperator = (function () {
|
|
296
|
+
function AggregationOperator(name, param) {
|
|
273
297
|
this['$' + name] = param;
|
|
274
298
|
}
|
|
275
|
-
|
|
276
|
-
|
|
277
|
-
|
|
299
|
+
return AggregationOperator;
|
|
300
|
+
}());
|
|
301
|
+
export { AggregationOperator };
|
|
302
|
+
var ProjectionOperator = (function () {
|
|
303
|
+
function ProjectionOperator(name, param) {
|
|
278
304
|
this['$' + name] = param;
|
|
279
305
|
}
|
|
280
|
-
|
|
306
|
+
return ProjectionOperator;
|
|
307
|
+
}());
|
|
308
|
+
export { ProjectionOperator };
|
|
281
309
|
export default Command;
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { SYMBOL_UNSET_FIELD_NAME, SYMBOL_LOGIC_COMMAND } from '../helper/symbol';
|
|
2
2
|
import { isQueryCommand } from './query';
|
|
3
|
-
export
|
|
4
|
-
export
|
|
5
|
-
export
|
|
6
|
-
export
|
|
3
|
+
export var AND = 'and';
|
|
4
|
+
export var OR = 'or';
|
|
5
|
+
export var NOT = 'not';
|
|
6
|
+
export var NOR = 'nor';
|
|
7
7
|
export var LOGIC_COMMANDS_LITERAL;
|
|
8
8
|
(function (LOGIC_COMMANDS_LITERAL) {
|
|
9
9
|
LOGIC_COMMANDS_LITERAL["AND"] = "and";
|
|
@@ -11,8 +11,8 @@ export var LOGIC_COMMANDS_LITERAL;
|
|
|
11
11
|
LOGIC_COMMANDS_LITERAL["NOT"] = "not";
|
|
12
12
|
LOGIC_COMMANDS_LITERAL["NOR"] = "nor";
|
|
13
13
|
})(LOGIC_COMMANDS_LITERAL || (LOGIC_COMMANDS_LITERAL = {}));
|
|
14
|
-
|
|
15
|
-
|
|
14
|
+
var LogicCommand = (function () {
|
|
15
|
+
function LogicCommand(operator, operands, fieldName) {
|
|
16
16
|
this._internalType = SYMBOL_LOGIC_COMMAND;
|
|
17
17
|
Object.defineProperties(this, {
|
|
18
18
|
_internalType: {
|
|
@@ -27,23 +27,23 @@ export class LogicCommand {
|
|
|
27
27
|
if (Array.isArray(operands)) {
|
|
28
28
|
operands = operands.slice();
|
|
29
29
|
this.operands = operands;
|
|
30
|
-
for (
|
|
31
|
-
|
|
30
|
+
for (var i = 0, len = operands.length; i < len; i++) {
|
|
31
|
+
var query = operands[i];
|
|
32
32
|
if (isLogicCommand(query) || isQueryCommand(query)) {
|
|
33
33
|
operands[i] = query._setFieldName(this.fieldName);
|
|
34
34
|
}
|
|
35
35
|
}
|
|
36
36
|
}
|
|
37
37
|
else {
|
|
38
|
-
|
|
38
|
+
var query = operands;
|
|
39
39
|
if (isLogicCommand(query) || isQueryCommand(query)) {
|
|
40
40
|
operands = query._setFieldName(this.fieldName);
|
|
41
41
|
}
|
|
42
42
|
}
|
|
43
43
|
}
|
|
44
44
|
}
|
|
45
|
-
_setFieldName(fieldName) {
|
|
46
|
-
|
|
45
|
+
LogicCommand.prototype._setFieldName = function (fieldName) {
|
|
46
|
+
var operands = this.operands.map(function (operand) {
|
|
47
47
|
if (operand instanceof LogicCommand) {
|
|
48
48
|
return operand._setFieldName(fieldName);
|
|
49
49
|
}
|
|
@@ -51,20 +51,30 @@ export class LogicCommand {
|
|
|
51
51
|
return operand;
|
|
52
52
|
}
|
|
53
53
|
});
|
|
54
|
-
|
|
54
|
+
var command = new LogicCommand(this.operator, operands, fieldName);
|
|
55
55
|
return command;
|
|
56
|
-
}
|
|
57
|
-
and(
|
|
58
|
-
|
|
56
|
+
};
|
|
57
|
+
LogicCommand.prototype.and = function () {
|
|
58
|
+
var __expressions__ = [];
|
|
59
|
+
for (var _i = 0; _i < arguments.length; _i++) {
|
|
60
|
+
__expressions__[_i] = arguments[_i];
|
|
61
|
+
}
|
|
62
|
+
var expressions = Array.isArray(arguments[0]) ? arguments[0] : Array.from(arguments);
|
|
59
63
|
expressions.unshift(this);
|
|
60
64
|
return new LogicCommand(LOGIC_COMMANDS_LITERAL.AND, expressions, this.fieldName);
|
|
61
|
-
}
|
|
62
|
-
or(
|
|
63
|
-
|
|
65
|
+
};
|
|
66
|
+
LogicCommand.prototype.or = function () {
|
|
67
|
+
var __expressions__ = [];
|
|
68
|
+
for (var _i = 0; _i < arguments.length; _i++) {
|
|
69
|
+
__expressions__[_i] = arguments[_i];
|
|
70
|
+
}
|
|
71
|
+
var expressions = Array.isArray(arguments[0]) ? arguments[0] : Array.from(arguments);
|
|
64
72
|
expressions.unshift(this);
|
|
65
73
|
return new LogicCommand(LOGIC_COMMANDS_LITERAL.OR, expressions, this.fieldName);
|
|
66
|
-
}
|
|
67
|
-
|
|
74
|
+
};
|
|
75
|
+
return LogicCommand;
|
|
76
|
+
}());
|
|
77
|
+
export { LogicCommand };
|
|
68
78
|
export function isLogicCommand(object) {
|
|
69
79
|
return object && (object instanceof LogicCommand) && (object._internalType === SYMBOL_LOGIC_COMMAND);
|
|
70
80
|
}
|
|
@@ -37,7 +37,7 @@ export declare class QueryCommand extends LogicCommand {
|
|
|
37
37
|
operator: QUERY_COMMANDS_LITERAL;
|
|
38
38
|
constructor(operator: QUERY_COMMANDS_LITERAL, operands: any, fieldName?: string | InternalSymbol);
|
|
39
39
|
toJSON(): {
|
|
40
|
-
|
|
40
|
+
$ne: any;
|
|
41
41
|
} | {
|
|
42
42
|
[x: string]: any;
|
|
43
43
|
$ne?: undefined;
|