@cloudbase/database 0.9.18-next → 0.9.20

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 (96) hide show
  1. package/.trunk/configs/.markdownlint.yaml +10 -0
  2. package/.trunk/trunk.yaml +26 -0
  3. package/README.md +32 -10
  4. package/dist/commonjs/aggregate.js +10 -0
  5. package/dist/commonjs/document.js +1 -4
  6. package/dist/commonjs/query.js +6 -6
  7. package/package.json +2 -3
  8. package/src/aggregate.ts +11 -0
  9. package/src/document.ts +1 -4
  10. package/src/query.ts +3 -3
  11. package/dist/esm/aggregate.d.ts +0 -29
  12. package/dist/esm/aggregate.js +0 -144
  13. package/dist/esm/collection.d.ts +0 -9
  14. package/dist/esm/collection.js +0 -44
  15. package/dist/esm/command.d.ts +0 -175
  16. package/dist/esm/command.js +0 -296
  17. package/dist/esm/commands/logic.d.ts +0 -24
  18. package/dist/esm/commands/logic.js +0 -84
  19. package/dist/esm/commands/query.d.ts +0 -68
  20. package/dist/esm/commands/query.js +0 -152
  21. package/dist/esm/commands/update.d.ts +0 -29
  22. package/dist/esm/commands/update.js +0 -46
  23. package/dist/esm/config/app.config.d.ts +0 -6
  24. package/dist/esm/config/app.config.js +0 -5
  25. package/dist/esm/config/error.config.d.ts +0 -3
  26. package/dist/esm/config/error.config.js +0 -13
  27. package/dist/esm/const/code.d.ts +0 -30
  28. package/dist/esm/const/code.js +0 -30
  29. package/dist/esm/constant.d.ts +0 -51
  30. package/dist/esm/constant.js +0 -65
  31. package/dist/esm/document.d.ts +0 -11
  32. package/dist/esm/document.js +0 -250
  33. package/dist/esm/geo/index.d.ts +0 -6
  34. package/dist/esm/geo/index.js +0 -6
  35. package/dist/esm/geo/interface.d.ts +0 -24
  36. package/dist/esm/geo/interface.js +0 -0
  37. package/dist/esm/geo/lineString.d.ts +0 -19
  38. package/dist/esm/geo/lineString.js +0 -83
  39. package/dist/esm/geo/multiLineString.d.ts +0 -18
  40. package/dist/esm/geo/multiLineString.js +0 -92
  41. package/dist/esm/geo/multiPoint.d.ts +0 -18
  42. package/dist/esm/geo/multiPoint.js +0 -76
  43. package/dist/esm/geo/multiPolygon.d.ts +0 -18
  44. package/dist/esm/geo/multiPolygon.js +0 -119
  45. package/dist/esm/geo/point.d.ts +0 -19
  46. package/dist/esm/geo/point.js +0 -47
  47. package/dist/esm/geo/polygon.d.ts +0 -19
  48. package/dist/esm/geo/polygon.js +0 -106
  49. package/dist/esm/helper/symbol.d.ts +0 -14
  50. package/dist/esm/helper/symbol.js +0 -14
  51. package/dist/esm/index.d.ts +0 -33
  52. package/dist/esm/index.js +0 -41
  53. package/dist/esm/lib/util.d.ts +0 -1
  54. package/dist/esm/lib/util.js +0 -23
  55. package/dist/esm/operator-map.d.ts +0 -4
  56. package/dist/esm/operator-map.js +0 -20
  57. package/dist/esm/query.d.ts +0 -22
  58. package/dist/esm/query.js +0 -249
  59. package/dist/esm/regexp/index.d.ts +0 -14
  60. package/dist/esm/regexp/index.js +0 -29
  61. package/dist/esm/serializer/common.d.ts +0 -11
  62. package/dist/esm/serializer/common.js +0 -113
  63. package/dist/esm/serializer/datatype.d.ts +0 -7
  64. package/dist/esm/serializer/datatype.js +0 -122
  65. package/dist/esm/serializer/query.d.ts +0 -7
  66. package/dist/esm/serializer/query.js +0 -229
  67. package/dist/esm/serializer/update.d.ts +0 -15
  68. package/dist/esm/serializer/update.js +0 -139
  69. package/dist/esm/serverDate/index.d.ts +0 -13
  70. package/dist/esm/serverDate/index.js +0 -26
  71. package/dist/esm/transaction/collection.d.ts +0 -7
  72. package/dist/esm/transaction/collection.js +0 -44
  73. package/dist/esm/transaction/document.d.ts +0 -27
  74. package/dist/esm/transaction/document.js +0 -203
  75. package/dist/esm/transaction/index.d.ts +0 -30
  76. package/dist/esm/transaction/index.js +0 -210
  77. package/dist/esm/transaction/query.d.ts +0 -5
  78. package/dist/esm/transaction/query.js +0 -8
  79. package/dist/esm/typings/index.d.ts +0 -40
  80. package/dist/esm/typings/index.js +0 -0
  81. package/dist/esm/typings/realtime.d.ts +0 -219
  82. package/dist/esm/typings/realtime.js +0 -0
  83. package/dist/esm/util.d.ts +0 -9
  84. package/dist/esm/util.js +0 -142
  85. package/dist/esm/utils/error.d.ts +0 -37
  86. package/dist/esm/utils/error.js +0 -82
  87. package/dist/esm/utils/msg.d.ts +0 -0
  88. package/dist/esm/utils/msg.js +0 -0
  89. package/dist/esm/utils/symbol.d.ts +0 -8
  90. package/dist/esm/utils/symbol.js +0 -55
  91. package/dist/esm/utils/type.d.ts +0 -13
  92. package/dist/esm/utils/type.js +0 -20
  93. package/dist/esm/utils/utils.d.ts +0 -4
  94. package/dist/esm/utils/utils.js +0 -33
  95. package/dist/esm/validate.d.ts +0 -1
  96. package/dist/esm/validate.js +0 -57
@@ -1,46 +0,0 @@
1
- import { SYMBOL_UNSET_FIELD_NAME, SYMBOL_UPDATE_COMMAND } from '../helper/symbol';
2
- export var UPDATE_COMMANDS_LITERAL;
3
- (function (UPDATE_COMMANDS_LITERAL) {
4
- UPDATE_COMMANDS_LITERAL["SET"] = "set";
5
- UPDATE_COMMANDS_LITERAL["REMOVE"] = "remove";
6
- UPDATE_COMMANDS_LITERAL["INC"] = "inc";
7
- UPDATE_COMMANDS_LITERAL["MUL"] = "mul";
8
- UPDATE_COMMANDS_LITERAL["PUSH"] = "push";
9
- UPDATE_COMMANDS_LITERAL["PULL"] = "pull";
10
- UPDATE_COMMANDS_LITERAL["PULL_ALL"] = "pullAll";
11
- UPDATE_COMMANDS_LITERAL["POP"] = "pop";
12
- UPDATE_COMMANDS_LITERAL["SHIFT"] = "shift";
13
- UPDATE_COMMANDS_LITERAL["UNSHIFT"] = "unshift";
14
- UPDATE_COMMANDS_LITERAL["ADD_TO_SET"] = "addToSet";
15
- UPDATE_COMMANDS_LITERAL["BIT"] = "bit";
16
- UPDATE_COMMANDS_LITERAL["RENAME"] = "rename";
17
- UPDATE_COMMANDS_LITERAL["MAX"] = "max";
18
- UPDATE_COMMANDS_LITERAL["MIN"] = "min";
19
- })(UPDATE_COMMANDS_LITERAL || (UPDATE_COMMANDS_LITERAL = {}));
20
- var UpdateCommand = (function () {
21
- function UpdateCommand(operator, operands, fieldName) {
22
- this._internalType = SYMBOL_UPDATE_COMMAND;
23
- Object.defineProperties(this, {
24
- _internalType: {
25
- enumerable: false,
26
- configurable: false,
27
- },
28
- });
29
- this.operator = operator;
30
- this.operands = operands;
31
- this.fieldName = fieldName || SYMBOL_UNSET_FIELD_NAME;
32
- }
33
- UpdateCommand.prototype._setFieldName = function (fieldName) {
34
- var command = new UpdateCommand(this.operator, this.operands, fieldName);
35
- return command;
36
- };
37
- return UpdateCommand;
38
- }());
39
- export { UpdateCommand };
40
- export function isUpdateCommand(object) {
41
- return object && (object instanceof UpdateCommand) && (object._internalType === SYMBOL_UPDATE_COMMAND);
42
- }
43
- export function isKnownUpdateCommand(object) {
44
- return isUpdateCommand(object) && (object.operator.toUpperCase() in UPDATE_COMMANDS_LITERAL);
45
- }
46
- export default UpdateCommand;
@@ -1,6 +0,0 @@
1
- declare const _default: {
2
- db_doc_size_limit: number;
3
- db_realtime_ping_interval: number;
4
- db_realtime_pong_wait_timeout: number;
5
- };
6
- export default _default;
@@ -1,5 +0,0 @@
1
- export default {
2
- db_doc_size_limit: 512 * 1024,
3
- db_realtime_ping_interval: 15 * 1000,
4
- db_realtime_pong_wait_timeout: 15 * 1000,
5
- };
@@ -1,3 +0,0 @@
1
- export declare const ERR_CODE: {
2
- [key: string]: string | number;
3
- };
@@ -1,13 +0,0 @@
1
- export var ERR_CODE = {
2
- UNKNOWN_ERROR: 'UNKNOWN_ERROR',
3
- SDK_DATABASE_REALTIME_LISTENER_INIT_WATCH_FAIL: 'SDK_DATABASE_REALTIME_LISTENER_INIT_WATCH_FAIL',
4
- SDK_DATABASE_REALTIME_LISTENER_RECONNECT_WATCH_FAIL: 'SDK_DATABASE_REALTIME_LISTENER_RECONNECT_WATCH_FAIL',
5
- SDK_DATABASE_REALTIME_LISTENER_REBUILD_WATCH_FAIL: 'SDK_DATABASE_REALTIME_LISTENER_REBUILD_WATCH_FAIL',
6
- SDK_DATABASE_REALTIME_LISTENER_CLOSE_WATCH_FAIL: 'SDK_DATABASE_REALTIME_LISTENER_CLOSE_WATCH_FAIL',
7
- SDK_DATABASE_REALTIME_LISTENER_SERVER_ERROR_MSG: 'SDK_DATABASE_REALTIME_LISTENER_SERVER_ERROR_MSG',
8
- SDK_DATABASE_REALTIME_LISTENER_RECEIVE_INVALID_SERVER_DATA: 'SDK_DATABASE_REALTIME_LISTENER_RECEIVE_INVALID_SERVER_DATA',
9
- SDK_DATABASE_REALTIME_LISTENER_WEBSOCKET_CONNECTION_ERROR: 'SDK_DATABASE_REALTIME_LISTENER_WEBSOCKET_CONNECTION_ERROR',
10
- SDK_DATABASE_REALTIME_LISTENER_WEBSOCKET_CONNECTION_CLOSED: 'SDK_DATABASE_REALTIME_LISTENER_WEBSOCKET_CONNECTION_CLOSED',
11
- SDK_DATABASE_REALTIME_LISTENER_CHECK_LAST_FAIL: 'SDK_DATABASE_REALTIME_LISTENER_CHECK_LAST_FAIL',
12
- SDK_DATABASE_REALTIME_LISTENER_UNEXPECTED_FATAL_ERROR: 'SDK_DATABASE_REALTIME_LISTENER_UNEXPECTED_FATAL_ERROR'
13
- };
@@ -1,30 +0,0 @@
1
- export declare const ERRORS: {
2
- CREATE_WATCH_NET_ERROR: {
3
- code: string;
4
- message: string;
5
- };
6
- CREATE_WACTH_EXCEED_ERROR: {
7
- code: string;
8
- message: string;
9
- };
10
- CREATE_WATCH_SERVER_ERROR: {
11
- code: string;
12
- message: string;
13
- };
14
- CONN_ERROR: {
15
- code: string;
16
- message: string;
17
- };
18
- INVALID_PARAM: {
19
- code: string;
20
- message: string;
21
- };
22
- INSERT_DOC_FAIL: {
23
- code: string;
24
- message: string;
25
- };
26
- DATABASE_TRANSACTION_CONFLICT: {
27
- code: string;
28
- message: string;
29
- };
30
- };
@@ -1,30 +0,0 @@
1
- export var ERRORS = {
2
- CREATE_WATCH_NET_ERROR: {
3
- code: 'CREATE_WATCH_NET_ERROR',
4
- message: 'create watch network error'
5
- },
6
- CREATE_WACTH_EXCEED_ERROR: {
7
- code: 'CREATE_WACTH_EXCEED_ERROR',
8
- message: 'maximum connections exceed'
9
- },
10
- CREATE_WATCH_SERVER_ERROR: {
11
- code: 'CREATE_WATCH_SERVER_ERROR',
12
- message: 'create watch server error'
13
- },
14
- CONN_ERROR: {
15
- code: 'CONN_ERROR',
16
- message: 'connection error'
17
- },
18
- INVALID_PARAM: {
19
- code: 'INVALID_PARAM',
20
- message: 'Invalid request param'
21
- },
22
- INSERT_DOC_FAIL: {
23
- code: 'INSERT_DOC_FAIL',
24
- message: 'insert document failed'
25
- },
26
- DATABASE_TRANSACTION_CONFLICT: {
27
- code: 'DATABASE_TRANSACTION_CONFLICT',
28
- message: 'database transaction conflict'
29
- }
30
- };
@@ -1,51 +0,0 @@
1
- declare enum ErrorCode {
2
- DocIDError = "\u6587\u6863ID\u4E0D\u5408\u6CD5",
3
- CollNameError = "\u96C6\u5408\u540D\u79F0\u4E0D\u5408\u6CD5",
4
- OpStrError = "\u64CD\u4F5C\u7B26\u4E0D\u5408\u6CD5",
5
- DirectionError = "\u6392\u5E8F\u5B57\u7B26\u4E0D\u5408\u6CD5",
6
- IntergerError = "must be integer",
7
- QueryParamTypeError = "\u67E5\u8BE2\u53C2\u6570\u5FC5\u987B\u4E3A\u5BF9\u8C61",
8
- QueryParamValueError = "\u67E5\u8BE2\u53C2\u6570\u5BF9\u8C61\u503C\u4E0D\u80FD\u5747\u4E3Aundefined"
9
- }
10
- declare const FieldType: {
11
- String: string;
12
- Number: string;
13
- Object: string;
14
- Array: string;
15
- Boolean: string;
16
- Null: string;
17
- GeoPoint: string;
18
- GeoLineString: string;
19
- GeoPolygon: string;
20
- GeoMultiPoint: string;
21
- GeoMultiLineString: string;
22
- GeoMultiPolygon: string;
23
- Timestamp: string;
24
- Command: string;
25
- ServerDate: string;
26
- BsonDate: string;
27
- };
28
- declare type OrderByDirection = 'desc' | 'asc';
29
- declare const OrderDirectionList: string[];
30
- declare type WhereFilterOp = '<' | '<=' | '==' | '>=' | '>';
31
- declare const WhereFilterOpList: string[];
32
- declare enum Opeartor {
33
- lt = "<",
34
- gt = ">",
35
- lte = "<=",
36
- gte = ">=",
37
- eq = "=="
38
- }
39
- declare const OperatorMap: {
40
- [Opeartor.eq]: string;
41
- [Opeartor.lt]: string;
42
- [Opeartor.lte]: string;
43
- [Opeartor.gt]: string;
44
- [Opeartor.gte]: string;
45
- };
46
- declare const UpdateOperatorList: string[];
47
- declare enum QueryType {
48
- WHERE = "WHERE",
49
- DOC = "DOC"
50
- }
51
- export { ErrorCode, FieldType, WhereFilterOp, WhereFilterOpList, Opeartor, OperatorMap, OrderByDirection, OrderDirectionList, UpdateOperatorList, QueryType };
@@ -1,65 +0,0 @@
1
- var _a;
2
- var ErrorCode;
3
- (function (ErrorCode) {
4
- ErrorCode["DocIDError"] = "\u6587\u6863ID\u4E0D\u5408\u6CD5";
5
- ErrorCode["CollNameError"] = "\u96C6\u5408\u540D\u79F0\u4E0D\u5408\u6CD5";
6
- ErrorCode["OpStrError"] = "\u64CD\u4F5C\u7B26\u4E0D\u5408\u6CD5";
7
- ErrorCode["DirectionError"] = "\u6392\u5E8F\u5B57\u7B26\u4E0D\u5408\u6CD5";
8
- ErrorCode["IntergerError"] = "must be integer";
9
- ErrorCode["QueryParamTypeError"] = "\u67E5\u8BE2\u53C2\u6570\u5FC5\u987B\u4E3A\u5BF9\u8C61";
10
- ErrorCode["QueryParamValueError"] = "\u67E5\u8BE2\u53C2\u6570\u5BF9\u8C61\u503C\u4E0D\u80FD\u5747\u4E3Aundefined";
11
- })(ErrorCode || (ErrorCode = {}));
12
- var FieldType = {
13
- String: 'String',
14
- Number: 'Number',
15
- Object: 'Object',
16
- Array: 'Array',
17
- Boolean: 'Boolean',
18
- Null: 'Null',
19
- GeoPoint: 'GeoPoint',
20
- GeoLineString: 'GeoLineString',
21
- GeoPolygon: 'GeoPolygon',
22
- GeoMultiPoint: 'GeoMultiPoint',
23
- GeoMultiLineString: 'GeoMultiLineString',
24
- GeoMultiPolygon: 'GeoMultiPolygon',
25
- Timestamp: 'Date',
26
- Command: 'Command',
27
- ServerDate: 'ServerDate',
28
- BsonDate: 'BsonDate'
29
- };
30
- var OrderDirectionList = ['desc', 'asc'];
31
- var WhereFilterOpList = ['<', '<=', '==', '>=', '>'];
32
- var Opeartor;
33
- (function (Opeartor) {
34
- Opeartor["lt"] = "<";
35
- Opeartor["gt"] = ">";
36
- Opeartor["lte"] = "<=";
37
- Opeartor["gte"] = ">=";
38
- Opeartor["eq"] = "==";
39
- })(Opeartor || (Opeartor = {}));
40
- var OperatorMap = (_a = {},
41
- _a[Opeartor.eq] = '$eq',
42
- _a[Opeartor.lt] = '$lt',
43
- _a[Opeartor.lte] = '$lte',
44
- _a[Opeartor.gt] = '$gt',
45
- _a[Opeartor.gte] = '$gte',
46
- _a);
47
- var UpdateOperatorList = [
48
- '$set',
49
- '$inc',
50
- '$mul',
51
- '$unset',
52
- '$push',
53
- '$pop',
54
- '$unshift',
55
- '$shift',
56
- '$currentDate',
57
- '$each',
58
- '$position'
59
- ];
60
- var QueryType;
61
- (function (QueryType) {
62
- QueryType["WHERE"] = "WHERE";
63
- QueryType["DOC"] = "DOC";
64
- })(QueryType || (QueryType = {}));
65
- export { ErrorCode, FieldType, WhereFilterOpList, Opeartor, OperatorMap, OrderDirectionList, UpdateOperatorList, QueryType };
@@ -1,11 +0,0 @@
1
- import { IWatchOptions, DBRealtimeListener } from './typings/index';
2
- export declare class DocumentReference {
3
- readonly id: string | number;
4
- readonly projection: Object;
5
- set(data: Object, callback?: any): Promise<any>;
6
- update(data: Object, callback?: any): any;
7
- remove(callback?: any): Promise<any>;
8
- get(callback?: any): Promise<any>;
9
- field(projection: Object): DocumentReference;
10
- watch: (options: IWatchOptions) => DBRealtimeListener;
11
- }
@@ -1,250 +0,0 @@
1
- var __assign = (this && this.__assign) || function () {
2
- __assign = Object.assign || function(t) {
3
- for (var s, i = 1, n = arguments.length; i < n; i++) {
4
- s = arguments[i];
5
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
6
- t[p] = s[p];
7
- }
8
- return t;
9
- };
10
- return __assign.apply(this, arguments);
11
- };
12
- import { createPromiseCallback } from './lib/util';
13
- import { Db } from './index';
14
- import { Util } from './util';
15
- import { UpdateSerializer } from './serializer/update';
16
- import { serialize } from './serializer/datatype';
17
- import { UpdateCommand } from './commands/update';
18
- import { QueryType } from './constant';
19
- import { getWsInstance } from './utils/utils';
20
- var DocumentReference = (function () {
21
- function DocumentReference(db, coll, docID, projection) {
22
- var _this = this;
23
- if (projection === void 0) { projection = {}; }
24
- this.watch = function (options) {
25
- var ws = getWsInstance(_this._db);
26
- return ws.watch(__assign(__assign({}, options), { envId: _this._db.config.env, collectionName: _this._coll, query: JSON.stringify({
27
- _id: _this.id
28
- }) }));
29
- };
30
- this._db = db;
31
- this._coll = coll;
32
- this.id = docID;
33
- this.request = new Db.reqClass(this._db.config);
34
- this.projection = projection;
35
- }
36
- DocumentReference.prototype.create = function (data, callback) {
37
- callback = callback || createPromiseCallback();
38
- var params = {
39
- collectionName: this._coll,
40
- data: serialize(data)
41
- };
42
- if (this.id) {
43
- params['_id'] = this.id;
44
- }
45
- this.request
46
- .send('database.addDocument', params)
47
- .then(function (res) {
48
- if (res.code) {
49
- callback(0, res);
50
- }
51
- else {
52
- callback(0, {
53
- id: res.data._id,
54
- requestId: res.requestId
55
- });
56
- }
57
- })
58
- .catch(function (err) {
59
- callback(err);
60
- });
61
- return callback.promise;
62
- };
63
- DocumentReference.prototype.set = function (data, callback) {
64
- callback = callback || createPromiseCallback();
65
- if (!this.id) {
66
- return Promise.resolve({
67
- code: 'INVALID_PARAM',
68
- message: 'docId不能为空'
69
- });
70
- }
71
- if (!data || typeof data !== 'object') {
72
- return Promise.resolve({
73
- code: 'INVALID_PARAM',
74
- message: '参数必需是非空对象'
75
- });
76
- }
77
- if (data.hasOwnProperty('_id')) {
78
- return Promise.resolve({
79
- code: 'INVALID_PARAM',
80
- message: '不能更新_id的值'
81
- });
82
- }
83
- var hasOperator = false;
84
- var checkMixed = function (objs) {
85
- if (typeof objs === 'object') {
86
- for (var key in objs) {
87
- if (objs[key] instanceof UpdateCommand) {
88
- hasOperator = true;
89
- }
90
- else if (typeof objs[key] === 'object') {
91
- checkMixed(objs[key]);
92
- }
93
- }
94
- }
95
- };
96
- checkMixed(data);
97
- if (hasOperator) {
98
- return Promise.resolve({
99
- code: 'DATABASE_REQUEST_FAILED',
100
- message: 'update operator complicit'
101
- });
102
- }
103
- var merge = false;
104
- var param = {
105
- collectionName: this._coll,
106
- queryType: QueryType.DOC,
107
- data: serialize(data),
108
- multi: false,
109
- merge: merge,
110
- upsert: true
111
- };
112
- if (this.id) {
113
- param['query'] = { _id: this.id };
114
- }
115
- this.request
116
- .send('database.updateDocument', param)
117
- .then(function (res) {
118
- if (res.code) {
119
- callback(0, res);
120
- }
121
- else {
122
- callback(0, {
123
- updated: res.data.updated,
124
- upsertedId: res.data.upserted_id,
125
- requestId: res.requestId
126
- });
127
- }
128
- })
129
- .catch(function (err) {
130
- callback(err);
131
- });
132
- return callback.promise;
133
- };
134
- DocumentReference.prototype.update = function (data, callback) {
135
- callback = callback || createPromiseCallback();
136
- if (!data || typeof data !== 'object') {
137
- return Promise.resolve({
138
- code: 'INVALID_PARAM',
139
- message: '参数必需是非空对象'
140
- });
141
- }
142
- if (data.hasOwnProperty('_id')) {
143
- return Promise.resolve({
144
- code: 'INVALID_PARAM',
145
- message: '不能更新_id的值'
146
- });
147
- }
148
- var query = { _id: this.id };
149
- var merge = true;
150
- var param = {
151
- collectionName: this._coll,
152
- data: UpdateSerializer.encode(data),
153
- query: query,
154
- queryType: QueryType.DOC,
155
- multi: false,
156
- merge: merge,
157
- upsert: false
158
- };
159
- this.request
160
- .send('database.updateDocument', param)
161
- .then(function (res) {
162
- if (res.code) {
163
- callback(0, res);
164
- }
165
- else {
166
- callback(0, {
167
- updated: res.data.updated,
168
- upsertedId: res.data.upserted_id,
169
- requestId: res.requestId
170
- });
171
- }
172
- })
173
- .catch(function (err) {
174
- callback(err);
175
- });
176
- return callback.promise;
177
- };
178
- DocumentReference.prototype.remove = function (callback) {
179
- callback = callback || createPromiseCallback();
180
- var query = { _id: this.id };
181
- var param = {
182
- collectionName: this._coll,
183
- query: query,
184
- queryType: QueryType.DOC,
185
- multi: false
186
- };
187
- this.request
188
- .send('database.deleteDocument', param)
189
- .then(function (res) {
190
- if (res.code) {
191
- callback(0, res);
192
- }
193
- else {
194
- callback(0, {
195
- deleted: res.data.deleted,
196
- requestId: res.requestId
197
- });
198
- }
199
- })
200
- .catch(function (err) {
201
- callback(err);
202
- });
203
- return callback.promise;
204
- };
205
- DocumentReference.prototype.get = function (callback) {
206
- callback = callback || createPromiseCallback();
207
- var query = { _id: this.id };
208
- var param = {
209
- collectionName: this._coll,
210
- query: query,
211
- queryType: QueryType.DOC,
212
- multi: false,
213
- projection: this.projection
214
- };
215
- this.request
216
- .send('database.queryDocument', param)
217
- .then(function (res) {
218
- if (res.code) {
219
- callback(0, res);
220
- }
221
- else {
222
- var documents = Util.formatResDocumentData(res.data.list);
223
- callback(0, {
224
- data: documents,
225
- requestId: res.requestId,
226
- total: res.TotalCount,
227
- limit: res.Limit,
228
- offset: res.Offset
229
- });
230
- }
231
- })
232
- .catch(function (err) {
233
- callback(err);
234
- });
235
- return callback.promise;
236
- };
237
- DocumentReference.prototype.field = function (projection) {
238
- for (var k in projection) {
239
- if (projection[k]) {
240
- projection[k] = 1;
241
- }
242
- else {
243
- projection[k] = 0;
244
- }
245
- }
246
- return new DocumentReference(this._db, this._coll, this.id, projection);
247
- };
248
- return DocumentReference;
249
- }());
250
- export { DocumentReference };
@@ -1,6 +0,0 @@
1
- export * from './point';
2
- export * from './lineString';
3
- export * from './polygon';
4
- export * from './multiPoint';
5
- export * from './multiLineString';
6
- export * from './multiPolygon';
@@ -1,6 +0,0 @@
1
- export * from './point';
2
- export * from './lineString';
3
- export * from './polygon';
4
- export * from './multiPoint';
5
- export * from './multiLineString';
6
- export * from './multiPolygon';
@@ -1,24 +0,0 @@
1
- export interface ISerializedPoint {
2
- type: string;
3
- coordinates: [number, number];
4
- }
5
- export interface ISerializedLineString {
6
- type: string;
7
- coordinates: [number, number][];
8
- }
9
- export interface ISerializedPolygon {
10
- type: string;
11
- coordinates: [number, number][][];
12
- }
13
- export interface ISerializedMultiPoint {
14
- type: string;
15
- coordinates: [number, number][];
16
- }
17
- export interface ISerializedMultiLineString {
18
- type: string;
19
- coordinates: [number, number][][];
20
- }
21
- export interface ISerializedMultiPolygon {
22
- type: string;
23
- coordinates: [number, number][][][];
24
- }
File without changes
@@ -1,19 +0,0 @@
1
- import { Point } from './point';
2
- import { ISerializedLineString } from './interface';
3
- export declare class LineString {
4
- readonly points: Point[];
5
- constructor(points: Point[]);
6
- parse(key: any): {
7
- [x: number]: {
8
- type: string;
9
- coordinates: number[][];
10
- };
11
- };
12
- toJSON(): {
13
- type: string;
14
- coordinates: number[][];
15
- };
16
- static validate(lineString: ISerializedLineString): boolean;
17
- static isClosed(lineString: LineString): boolean;
18
- readonly _internalType: import("../utils/symbol").InternalSymbol;
19
- }
@@ -1,83 +0,0 @@
1
- var __values = (this && this.__values) || function(o) {
2
- var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0;
3
- if (m) return m.call(o);
4
- if (o && typeof o.length === "number") return {
5
- next: function () {
6
- if (o && i >= o.length) o = void 0;
7
- return { value: o && o[i++], done: !o };
8
- }
9
- };
10
- throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
11
- };
12
- import { SYMBOL_GEO_LINE_STRING } from '../helper/symbol';
13
- import { Point } from './point';
14
- import { isArray, isNumber } from '../utils/type';
15
- var LineString = (function () {
16
- function LineString(points) {
17
- if (!isArray(points)) {
18
- throw new TypeError("\"points\" must be of type Point[]. Received type " + typeof points);
19
- }
20
- if (points.length < 2) {
21
- throw new Error('"points" must contain 2 points at least');
22
- }
23
- points.forEach(function (point) {
24
- if (!(point instanceof Point)) {
25
- throw new TypeError("\"points\" must be of type Point[]. Received type " + typeof point + "[]");
26
- }
27
- });
28
- this.points = points;
29
- }
30
- LineString.prototype.parse = function (key) {
31
- var _a;
32
- return _a = {},
33
- _a[key] = {
34
- type: 'LineString',
35
- coordinates: this.points.map(function (point) { return point.toJSON().coordinates; })
36
- },
37
- _a;
38
- };
39
- LineString.prototype.toJSON = function () {
40
- return {
41
- type: 'LineString',
42
- coordinates: this.points.map(function (point) { return point.toJSON().coordinates; })
43
- };
44
- };
45
- LineString.validate = function (lineString) {
46
- var e_1, _a;
47
- if (lineString.type !== 'LineString' || !isArray(lineString.coordinates)) {
48
- return false;
49
- }
50
- try {
51
- for (var _b = __values(lineString.coordinates), _c = _b.next(); !_c.done; _c = _b.next()) {
52
- var point = _c.value;
53
- if (!isNumber(point[0]) || !isNumber(point[1])) {
54
- return false;
55
- }
56
- }
57
- }
58
- catch (e_1_1) { e_1 = { error: e_1_1 }; }
59
- finally {
60
- try {
61
- if (_c && !_c.done && (_a = _b.return)) _a.call(_b);
62
- }
63
- finally { if (e_1) throw e_1.error; }
64
- }
65
- return true;
66
- };
67
- LineString.isClosed = function (lineString) {
68
- var firstPoint = lineString.points[0];
69
- var lastPoint = lineString.points[lineString.points.length - 1];
70
- if (firstPoint.latitude === lastPoint.latitude && firstPoint.longitude === lastPoint.longitude) {
71
- return true;
72
- }
73
- };
74
- Object.defineProperty(LineString.prototype, "_internalType", {
75
- get: function () {
76
- return SYMBOL_GEO_LINE_STRING;
77
- },
78
- enumerable: true,
79
- configurable: true
80
- });
81
- return LineString;
82
- }());
83
- export { LineString };