@cloudbase/database 1.4.3 → 1.5.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.
Files changed (196) hide show
  1. package/dist/commonjs/ObjectId/index.d.ts +1 -1
  2. package/dist/commonjs/ObjectId/index.js +16 -9
  3. package/dist/commonjs/aggregate.js +126 -75
  4. package/dist/commonjs/collection.d.ts +3 -2
  5. package/dist/commonjs/collection.js +131 -58
  6. package/dist/commonjs/command.d.ts +5 -5
  7. package/dist/commonjs/command.js +181 -154
  8. package/dist/commonjs/commands/logic.js +30 -20
  9. package/dist/commonjs/commands/query.d.ts +1 -1
  10. package/dist/commonjs/commands/query.js +85 -65
  11. package/dist/commonjs/commands/update.js +9 -7
  12. package/dist/commonjs/config/error.config.js +1 -0
  13. package/dist/commonjs/const/code.js +1 -0
  14. package/dist/commonjs/constant.d.ts +7 -7
  15. package/dist/commonjs/constant.js +13 -11
  16. package/dist/commonjs/document.d.ts +10 -6
  17. package/dist/commonjs/document.js +305 -193
  18. package/dist/commonjs/geo/index.js +20 -9
  19. package/dist/commonjs/geo/lineString.d.ts +1 -1
  20. package/dist/commonjs/geo/lineString.js +62 -33
  21. package/dist/commonjs/geo/multiLineString.d.ts +1 -1
  22. package/dist/commonjs/geo/multiLineString.js +71 -32
  23. package/dist/commonjs/geo/multiPoint.d.ts +1 -1
  24. package/dist/commonjs/geo/multiPoint.js +58 -29
  25. package/dist/commonjs/geo/multiPolygon.d.ts +1 -1
  26. package/dist/commonjs/geo/multiPolygon.js +96 -36
  27. package/dist/commonjs/geo/point.d.ts +1 -1
  28. package/dist/commonjs/geo/point.js +30 -23
  29. package/dist/commonjs/geo/polygon.d.ts +1 -1
  30. package/dist/commonjs/geo/polygon.js +78 -39
  31. package/dist/commonjs/helper/symbol.js +17 -5
  32. package/dist/commonjs/index.d.ts +8 -2
  33. package/dist/commonjs/index.js +73 -20
  34. package/dist/commonjs/lib/util.d.ts +1 -0
  35. package/dist/commonjs/lib/util.js +26 -0
  36. package/dist/commonjs/operator-map.js +7 -6
  37. package/dist/commonjs/query.d.ts +8 -4
  38. package/dist/commonjs/query.js +308 -201
  39. package/dist/commonjs/regexp/index.d.ts +1 -1
  40. package/dist/commonjs/regexp/index.js +16 -9
  41. package/dist/commonjs/serializer/common.d.ts +2 -2
  42. package/dist/commonjs/serializer/common.js +59 -22
  43. package/dist/commonjs/serializer/datatype.d.ts +2 -2
  44. package/dist/commonjs/serializer/datatype.js +58 -21
  45. package/dist/commonjs/serializer/query.d.ts +1 -1
  46. package/dist/commonjs/serializer/query.js +137 -127
  47. package/dist/commonjs/serializer/update.d.ts +1 -1
  48. package/dist/commonjs/serializer/update.js +83 -78
  49. package/dist/commonjs/serverDate/index.d.ts +1 -1
  50. package/dist/commonjs/serverDate/index.js +16 -9
  51. package/dist/commonjs/transaction/collection.d.ts +7 -0
  52. package/dist/commonjs/transaction/collection.js +49 -0
  53. package/dist/commonjs/transaction/document.d.ts +27 -0
  54. package/dist/commonjs/transaction/document.js +205 -0
  55. package/dist/commonjs/transaction/index.js +196 -86
  56. package/dist/commonjs/transaction/query.d.ts +43 -0
  57. package/dist/commonjs/transaction/query.js +261 -0
  58. package/dist/commonjs/typings/index.d.ts +4 -4
  59. package/dist/commonjs/typings/realtime.d.ts +16 -16
  60. package/dist/commonjs/util.js +123 -92
  61. package/dist/commonjs/utils/error.d.ts +2 -1
  62. package/dist/commonjs/utils/error.js +74 -38
  63. package/dist/commonjs/utils/symbol.js +33 -14
  64. package/dist/commonjs/utils/type.d.ts +1 -1
  65. package/dist/commonjs/utils/type.js +25 -13
  66. package/dist/commonjs/utils/utils.d.ts +4 -1
  67. package/dist/commonjs/utils/utils.js +93 -22
  68. package/dist/commonjs/validate.js +79 -63
  69. package/dist/esm/ObjectId/index.d.ts +1 -1
  70. package/dist/esm/ObjectId/index.js +15 -8
  71. package/dist/esm/aggregate.js +118 -66
  72. package/dist/esm/collection.d.ts +3 -2
  73. package/dist/esm/collection.js +125 -52
  74. package/dist/esm/command.d.ts +5 -5
  75. package/dist/esm/command.js +175 -147
  76. package/dist/esm/commands/logic.js +30 -20
  77. package/dist/esm/commands/query.d.ts +1 -1
  78. package/dist/esm/commands/query.js +91 -71
  79. package/dist/esm/commands/update.js +8 -6
  80. package/dist/esm/config/error.config.js +1 -1
  81. package/dist/esm/const/code.js +1 -1
  82. package/dist/esm/constant.d.ts +7 -7
  83. package/dist/esm/constant.js +12 -11
  84. package/dist/esm/document.d.ts +10 -6
  85. package/dist/esm/document.js +297 -185
  86. package/dist/esm/geo/interface.js +1 -0
  87. package/dist/esm/geo/lineString.d.ts +1 -1
  88. package/dist/esm/geo/lineString.js +57 -28
  89. package/dist/esm/geo/multiLineString.d.ts +1 -1
  90. package/dist/esm/geo/multiLineString.js +66 -27
  91. package/dist/esm/geo/multiPoint.d.ts +1 -1
  92. package/dist/esm/geo/multiPoint.js +53 -24
  93. package/dist/esm/geo/multiPolygon.d.ts +1 -1
  94. package/dist/esm/geo/multiPolygon.js +91 -31
  95. package/dist/esm/geo/point.d.ts +1 -1
  96. package/dist/esm/geo/point.js +26 -19
  97. package/dist/esm/geo/polygon.d.ts +1 -1
  98. package/dist/esm/geo/polygon.js +73 -34
  99. package/dist/esm/helper/symbol.js +13 -13
  100. package/dist/esm/index.d.ts +8 -2
  101. package/dist/esm/index.js +62 -9
  102. package/dist/esm/lib/util.d.ts +1 -0
  103. package/dist/esm/lib/util.js +22 -0
  104. package/dist/esm/operator-map.js +4 -4
  105. package/dist/esm/query.d.ts +8 -4
  106. package/dist/esm/query.js +299 -192
  107. package/dist/esm/regexp/index.d.ts +1 -1
  108. package/dist/esm/regexp/index.js +15 -8
  109. package/dist/esm/serializer/common.d.ts +2 -2
  110. package/dist/esm/serializer/common.js +49 -13
  111. package/dist/esm/serializer/datatype.d.ts +2 -2
  112. package/dist/esm/serializer/datatype.js +44 -8
  113. package/dist/esm/serializer/query.d.ts +1 -1
  114. package/dist/esm/serializer/query.js +112 -102
  115. package/dist/esm/serializer/update.d.ts +1 -1
  116. package/dist/esm/serializer/update.js +69 -64
  117. package/dist/esm/serverDate/index.d.ts +1 -1
  118. package/dist/esm/serverDate/index.js +15 -8
  119. package/dist/esm/transaction/collection.d.ts +7 -0
  120. package/dist/esm/transaction/collection.js +46 -0
  121. package/dist/esm/transaction/document.d.ts +27 -0
  122. package/dist/esm/transaction/document.js +202 -0
  123. package/dist/esm/transaction/index.js +191 -81
  124. package/dist/esm/transaction/query.d.ts +43 -0
  125. package/dist/esm/transaction/query.js +258 -0
  126. package/dist/esm/typings/index.d.ts +4 -4
  127. package/dist/esm/typings/index.js +1 -0
  128. package/dist/esm/typings/realtime.d.ts +16 -16
  129. package/dist/esm/typings/realtime.js +1 -0
  130. package/dist/esm/util.js +121 -90
  131. package/dist/esm/utils/error.d.ts +2 -1
  132. package/dist/esm/utils/error.js +70 -35
  133. package/dist/esm/utils/symbol.js +33 -14
  134. package/dist/esm/utils/type.d.ts +1 -1
  135. package/dist/esm/utils/type.js +12 -12
  136. package/dist/esm/utils/utils.d.ts +4 -1
  137. package/dist/esm/utils/utils.js +78 -16
  138. package/dist/esm/validate.js +65 -49
  139. package/jest.config.js +14 -0
  140. package/package.json +14 -10
  141. package/src/aggregate.ts +1 -5
  142. package/src/collection.ts +15 -2
  143. package/src/document.ts +45 -34
  144. package/src/index.ts +51 -4
  145. package/src/query.ts +33 -29
  146. package/src/serializer/query.ts +18 -6
  147. package/src/transaction/index.ts +1 -1
  148. package/src/typings/index.ts +0 -4
  149. package/src/utils/utils.ts +46 -0
  150. package/src/validate.ts +3 -6
  151. package/tests/gateway-contract.test.ts +180 -0
  152. package/tests/index.test.ts +283 -0
  153. package/tests/transaction-query.test.ts +207 -0
  154. package/tsconfig.esm.json +4 -2
  155. package/tsconfig.json +16 -6
  156. package/tsconfig.test.json +15 -0
  157. package/dist/commonjs/realtime/error.d.ts +0 -7
  158. package/dist/commonjs/realtime/error.js +0 -11
  159. package/dist/commonjs/realtime/listener.d.ts +0 -14
  160. package/dist/commonjs/realtime/listener.js +0 -17
  161. package/dist/commonjs/realtime/message.d.ts +0 -3
  162. package/dist/commonjs/realtime/message.js +0 -10
  163. package/dist/commonjs/realtime/snapshot.d.ts +0 -16
  164. package/dist/commonjs/realtime/snapshot.js +0 -42
  165. package/dist/commonjs/realtime/virtual-websocket-client.d.ts +0 -63
  166. package/dist/commonjs/realtime/virtual-websocket-client.js +0 -736
  167. package/dist/commonjs/realtime/websocket-client.d.ts +0 -78
  168. package/dist/commonjs/realtime/websocket-client.js +0 -567
  169. package/dist/commonjs/realtime/ws-event.d.ts +0 -126
  170. package/dist/commonjs/realtime/ws-event.js +0 -139
  171. package/dist/commonjs/transaction.d.ts +0 -42
  172. package/dist/commonjs/transaction.js +0 -126
  173. package/dist/esm/realtime/error.d.ts +0 -7
  174. package/dist/esm/realtime/error.js +0 -8
  175. package/dist/esm/realtime/listener.d.ts +0 -14
  176. package/dist/esm/realtime/listener.js +0 -14
  177. package/dist/esm/realtime/message.d.ts +0 -3
  178. package/dist/esm/realtime/message.js +0 -6
  179. package/dist/esm/realtime/snapshot.d.ts +0 -16
  180. package/dist/esm/realtime/snapshot.js +0 -39
  181. package/dist/esm/realtime/virtual-websocket-client.d.ts +0 -63
  182. package/dist/esm/realtime/virtual-websocket-client.js +0 -733
  183. package/dist/esm/realtime/websocket-client.d.ts +0 -78
  184. package/dist/esm/realtime/websocket-client.js +0 -564
  185. package/dist/esm/realtime/ws-event.d.ts +0 -126
  186. package/dist/esm/realtime/ws-event.js +0 -137
  187. package/dist/esm/transaction.d.ts +0 -42
  188. package/dist/esm/transaction.js +0 -121
  189. package/src/realtime/error.ts +0 -19
  190. package/src/realtime/listener.ts +0 -35
  191. package/src/realtime/message.ts +0 -14
  192. package/src/realtime/snapshot.ts +0 -60
  193. package/src/realtime/virtual-websocket-client.ts +0 -1195
  194. package/src/realtime/websocket-client.ts +0 -995
  195. package/src/realtime/ws-event.ts +0 -163
  196. package/src/transaction.ts +0 -190
@@ -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 const Command = {
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(...__expressions__) {
60
- const expressions = isArray(arguments[0]) ? arguments[0] : Array.from(arguments);
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(...__expressions__) {
64
- const expressions = isArray(arguments[0]) ? arguments[0] : Array.from(arguments);
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(...__expressions__) {
68
- const expressions = isArray(arguments[0]) ? arguments[0] : Array.from(arguments);
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(...__expressions__) {
72
- const expressions = isArray(arguments[0]) ? arguments[0] : Array.from(arguments);
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(...args) {
88
- let values;
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
- const options = args[0];
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(...__values__) {
126
- const values = isArray(arguments[0]) ? arguments[0] : Array.from(arguments);
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 => new AggregationOperator('abs', param),
174
- add: param => new AggregationOperator('add', param),
175
- ceil: param => new AggregationOperator('ceil', param),
176
- divide: param => new AggregationOperator('divide', param),
177
- exp: param => new AggregationOperator('exp', param),
178
- floor: param => new AggregationOperator('floor', param),
179
- ln: param => new AggregationOperator('ln', param),
180
- log: param => new AggregationOperator('log', param),
181
- log10: param => new AggregationOperator('log10', param),
182
- mod: param => new AggregationOperator('mod', param),
183
- multiply: param => new AggregationOperator('multiply', param),
184
- pow: param => new AggregationOperator('pow', param),
185
- sqrt: param => new AggregationOperator('sqrt', param),
186
- subtract: param => new AggregationOperator('subtract', param),
187
- trunc: param => new AggregationOperator('trunc', param),
188
- arrayElemAt: param => new AggregationOperator('arrayElemAt', param),
189
- arrayToObject: param => new AggregationOperator('arrayToObject', param),
190
- concatArrays: param => new AggregationOperator('concatArrays', param),
191
- filter: param => new AggregationOperator('filter', param),
192
- in: param => new AggregationOperator('in', param),
193
- indexOfArray: param => new AggregationOperator('indexOfArray', param),
194
- isArray: param => new AggregationOperator('isArray', param),
195
- map: param => new AggregationOperator('map', param),
196
- range: param => new AggregationOperator('range', param),
197
- reduce: param => new AggregationOperator('reduce', param),
198
- reverseArray: param => new AggregationOperator('reverseArray', param),
199
- size: param => new AggregationOperator('size', param),
200
- slice: param => new AggregationOperator('slice', param),
201
- zip: param => new AggregationOperator('zip', param),
202
- and: param => new AggregationOperator('and', param),
203
- not: param => new AggregationOperator('not', param),
204
- or: param => new AggregationOperator('or', param),
205
- cmp: param => new AggregationOperator('cmp', param),
206
- eq: param => new AggregationOperator('eq', param),
207
- gt: param => new AggregationOperator('gt', param),
208
- gte: param => new AggregationOperator('gte', param),
209
- lt: param => new AggregationOperator('lt', param),
210
- lte: param => new AggregationOperator('lte', param),
211
- neq: param => new AggregationOperator('ne', param),
212
- cond: param => new AggregationOperator('cond', param),
213
- ifNull: param => new AggregationOperator('ifNull', param),
214
- switch: param => new AggregationOperator('switch', param),
215
- dateFromParts: param => new AggregationOperator('dateFromParts', param),
216
- dateFromString: param => new AggregationOperator('dateFromString', param),
217
- dayOfMonth: param => new AggregationOperator('dayOfMonth', param),
218
- dayOfWeek: param => new AggregationOperator('dayOfWeek', param),
219
- dayOfYear: param => new AggregationOperator('dayOfYear', param),
220
- isoDayOfWeek: param => new AggregationOperator('isoDayOfWeek', param),
221
- isoWeek: param => new AggregationOperator('isoWeek', param),
222
- isoWeekYear: param => new AggregationOperator('isoWeekYear', param),
223
- millisecond: param => new AggregationOperator('millisecond', param),
224
- minute: param => new AggregationOperator('minute', param),
225
- month: param => new AggregationOperator('month', param),
226
- second: param => new AggregationOperator('second', param),
227
- hour: param => new AggregationOperator('hour', param),
228
- week: param => new AggregationOperator('week', param),
229
- year: param => new AggregationOperator('year', param),
230
- literal: param => new AggregationOperator('literal', param),
231
- mergeObjects: param => new AggregationOperator('mergeObjects', param),
232
- objectToArray: param => new AggregationOperator('objectToArray', param),
233
- allElementsTrue: param => new AggregationOperator('allElementsTrue', param),
234
- anyElementTrue: param => new AggregationOperator('anyElementTrue', param),
235
- setDifference: param => new AggregationOperator('setDifference', param),
236
- setEquals: param => new AggregationOperator('setEquals', param),
237
- setIntersection: param => new AggregationOperator('setIntersection', param),
238
- setIsSubset: param => new AggregationOperator('setIsSubset', param),
239
- setUnion: param => new AggregationOperator('setUnion', param),
240
- concat: param => new AggregationOperator('concat', param),
241
- dateToString: param => new AggregationOperator('dateToString', param),
242
- indexOfBytes: param => new AggregationOperator('indexOfBytes', param),
243
- indexOfCP: param => new AggregationOperator('indexOfCP', param),
244
- split: param => new AggregationOperator('split', param),
245
- strLenBytes: param => new AggregationOperator('strLenBytes', param),
246
- strLenCP: param => new AggregationOperator('strLenCP', param),
247
- strcasecmp: param => new AggregationOperator('strcasecmp', param),
248
- substr: param => new AggregationOperator('substr', param),
249
- substrBytes: param => new AggregationOperator('substrBytes', param),
250
- substrCP: param => new AggregationOperator('substrCP', param),
251
- toLower: param => new AggregationOperator('toLower', param),
252
- toUpper: param => new AggregationOperator('toUpper', param),
253
- meta: param => new AggregationOperator('meta', param),
254
- addToSet: param => new AggregationOperator('addToSet', param),
255
- avg: param => new AggregationOperator('avg', param),
256
- first: param => new AggregationOperator('first', param),
257
- last: param => new AggregationOperator('last', param),
258
- max: param => new AggregationOperator('max', param),
259
- min: param => new AggregationOperator('min', param),
260
- push: param => new AggregationOperator('push', param),
261
- stdDevPop: param => new AggregationOperator('stdDevPop', param),
262
- stdDevSamp: param => new AggregationOperator('stdDevSamp', param),
263
- sum: param => new AggregationOperator('sum', param),
264
- let: param => new AggregationOperator('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 => new ProjectionOperator('slice', param),
268
- elemMatch: param => new ProjectionOperator('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
- export class AggregationOperator {
272
- constructor(name, param) {
295
+ var AggregationOperator = (function () {
296
+ function AggregationOperator(name, param) {
273
297
  this['$' + name] = param;
274
298
  }
275
- }
276
- export class ProjectionOperator {
277
- constructor(name, param) {
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 const AND = 'and';
4
- export const OR = 'or';
5
- export const NOT = 'not';
6
- export const NOR = 'nor';
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
- export class LogicCommand {
15
- constructor(operator, operands, fieldName) {
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 (let i = 0, len = operands.length; i < len; i++) {
31
- const query = operands[i];
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
- const query = operands;
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
- const operands = this.operands.map(operand => {
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
- const command = new LogicCommand(this.operator, operands, fieldName);
54
+ var command = new LogicCommand(this.operator, operands, fieldName);
55
55
  return command;
56
- }
57
- and(...__expressions__) {
58
- const expressions = Array.isArray(arguments[0]) ? arguments[0] : Array.from(arguments);
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(...__expressions__) {
63
- const expressions = Array.isArray(arguments[0]) ? arguments[0] : Array.from(arguments);
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
- ['$ne']: any;
40
+ $ne: any;
41
41
  } | {
42
42
  [x: string]: any;
43
43
  $ne?: undefined;