@feathersjs/mongodb 5.0.0-pre.33 → 5.0.0-pre.35
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/CHANGELOG.md +20 -0
- package/lib/adapter.d.ts +28 -28
- package/lib/adapter.js +21 -12
- package/lib/adapter.js.map +1 -1
- package/lib/index.d.ts +19 -21
- package/lib/index.js +26 -5
- package/lib/index.js.map +1 -1
- package/lib/resolvers.d.ts +2 -2
- package/lib/resolvers.js +3 -0
- package/lib/resolvers.js.map +1 -1
- package/package.json +13 -13
- package/src/adapter.ts +65 -40
- package/src/index.ts +55 -33
- package/src/resolvers.ts +4 -0
package/CHANGELOG.md
CHANGED
|
@@ -3,6 +3,26 @@
|
|
|
3
3
|
All notable changes to this project will be documented in this file.
|
|
4
4
|
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
|
|
5
5
|
|
|
6
|
+
# [5.0.0-pre.35](https://github.com/feathersjs/feathers/compare/v5.0.0-pre.34...v5.0.0-pre.35) (2023-01-12)
|
|
7
|
+
|
|
8
|
+
### Bug Fixes
|
|
9
|
+
|
|
10
|
+
- **databases:** Make sure adapter method signatures are exported properly ([#2943](https://github.com/feathersjs/feathers/issues/2943)) ([458d668](https://github.com/feathersjs/feathers/commit/458d66859e256c5854e7590f0b4a11b233fe0374))
|
|
11
|
+
|
|
12
|
+
### Features
|
|
13
|
+
|
|
14
|
+
- **generators:** Move core code generators to shared generators package ([#2982](https://github.com/feathersjs/feathers/issues/2982)) ([0328d22](https://github.com/feathersjs/feathers/commit/0328d2292153870bc43958f73d2c6f288a8cec17))
|
|
15
|
+
|
|
16
|
+
# [5.0.0-pre.34](https://github.com/feathersjs/feathers/compare/v5.0.0-pre.33...v5.0.0-pre.34) (2022-12-14)
|
|
17
|
+
|
|
18
|
+
### Bug Fixes
|
|
19
|
+
|
|
20
|
+
- **schema:** Check for undefined value in resolveQueryObjectId resolver ([#2914](https://github.com/feathersjs/feathers/issues/2914)) ([d9449fa](https://github.com/feathersjs/feathers/commit/d9449fa835f58fc9cec5f7254c50219494129140))
|
|
21
|
+
|
|
22
|
+
### Features
|
|
23
|
+
|
|
24
|
+
- **adapter:** Add patch data type to adapters and refactor AdapterBase usage ([#2906](https://github.com/feathersjs/feathers/issues/2906)) ([9ddc2e6](https://github.com/feathersjs/feathers/commit/9ddc2e6b028f026f939d6af68125847e5c6734b4))
|
|
25
|
+
|
|
6
26
|
# [5.0.0-pre.33](https://github.com/feathersjs/feathers/compare/v5.0.0-pre.32...v5.0.0-pre.33) (2022-11-08)
|
|
7
27
|
|
|
8
28
|
### Features
|
package/lib/adapter.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { ObjectId, Collection, FindOptions, BulkWriteOptions, InsertOneOptions, DeleteOptions, CountDocumentsOptions, ReplaceOptions, Document } from 'mongodb';
|
|
2
2
|
import { AdapterBase, AdapterParams, AdapterServiceOptions, PaginationOptions, AdapterQuery } from '@feathersjs/adapter-commons';
|
|
3
|
-
import {
|
|
3
|
+
import { Id, Paginated } from '@feathersjs/feathers';
|
|
4
4
|
export interface MongoDBAdapterOptions extends AdapterServiceOptions {
|
|
5
5
|
Model: Collection | Promise<Collection>;
|
|
6
6
|
disableObjectify?: boolean;
|
|
@@ -10,10 +10,12 @@ export interface MongoDBAdapterParams<Q = AdapterQuery> extends AdapterParams<Q,
|
|
|
10
10
|
pipeline?: Document[];
|
|
11
11
|
mongodb?: BulkWriteOptions | FindOptions | InsertOneOptions | DeleteOptions | CountDocumentsOptions | ReplaceOptions;
|
|
12
12
|
}
|
|
13
|
-
export
|
|
13
|
+
export type AdapterId = Id | ObjectId;
|
|
14
|
+
export type NullableAdapterId = AdapterId | null;
|
|
15
|
+
export declare class MongoDbAdapter<Result, Data = Partial<Result>, ServiceParams extends MongoDBAdapterParams<any> = MongoDBAdapterParams, PatchData = Partial<Data>> extends AdapterBase<Result, Data, PatchData, ServiceParams, MongoDBAdapterOptions, AdapterId> {
|
|
14
16
|
constructor(options: MongoDBAdapterOptions);
|
|
15
|
-
getObjectId(id:
|
|
16
|
-
filterQuery(id:
|
|
17
|
+
getObjectId(id: AdapterId): AdapterId;
|
|
18
|
+
filterQuery(id: NullableAdapterId, params: ServiceParams): {
|
|
17
19
|
filters: {
|
|
18
20
|
$select: string[];
|
|
19
21
|
$sort: {
|
|
@@ -26,35 +28,33 @@ export declare class MongoDbAdapter<T, D = Partial<T>, P extends MongoDBAdapterP
|
|
|
26
28
|
[key: string]: any;
|
|
27
29
|
};
|
|
28
30
|
};
|
|
29
|
-
getModel(params:
|
|
30
|
-
findRaw(params:
|
|
31
|
-
aggregateRaw(params:
|
|
32
|
-
makeFeathersPipeline(params:
|
|
31
|
+
getModel(params: ServiceParams): Promise<Collection<Document>>;
|
|
32
|
+
findRaw(params: ServiceParams): Promise<import("mongodb").FindCursor<import("mongodb").WithId<Document>>>;
|
|
33
|
+
aggregateRaw(params: ServiceParams): Promise<import("mongodb").AggregationCursor<Document>>;
|
|
34
|
+
makeFeathersPipeline(params: ServiceParams): Document[];
|
|
33
35
|
getSelect(select: string[] | {
|
|
34
36
|
[key: string]: number;
|
|
35
37
|
}): {
|
|
36
38
|
[key: string]: number;
|
|
37
39
|
};
|
|
38
|
-
|
|
39
|
-
normalizeId(id:
|
|
40
|
-
|
|
41
|
-
|
|
40
|
+
_findOrGet(id: NullableAdapterId, params: ServiceParams): Promise<Result | Paginated<Result> | Result[]>;
|
|
41
|
+
normalizeId<D>(id: NullableAdapterId, data: D): D;
|
|
42
|
+
_get(id: AdapterId, params?: ServiceParams): Promise<Result>;
|
|
43
|
+
_find(params?: ServiceParams & {
|
|
42
44
|
paginate?: PaginationOptions;
|
|
43
|
-
}): Promise<Paginated<
|
|
44
|
-
|
|
45
|
+
}): Promise<Paginated<Result>>;
|
|
46
|
+
_find(params?: ServiceParams & {
|
|
45
47
|
paginate: false;
|
|
46
|
-
}): Promise<
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
$remove(id: ObjectId, params?: P): Promise<T>;
|
|
59
|
-
$remove(id: NullableId, _params?: P): Promise<T | T[]>;
|
|
48
|
+
}): Promise<Result[]>;
|
|
49
|
+
_find(params?: ServiceParams): Promise<Paginated<Result> | Result[]>;
|
|
50
|
+
_create(data: Data, params?: ServiceParams): Promise<Result>;
|
|
51
|
+
_create(data: Data[], params?: ServiceParams): Promise<Result[]>;
|
|
52
|
+
_create(data: Data | Data[], _params?: ServiceParams): Promise<Result | Result[]>;
|
|
53
|
+
_patch(id: null, data: PatchData, params?: ServiceParams): Promise<Result[]>;
|
|
54
|
+
_patch(id: AdapterId, data: PatchData, params?: ServiceParams): Promise<Result>;
|
|
55
|
+
_patch(id: NullableAdapterId, data: PatchData, _params?: ServiceParams): Promise<Result | Result[]>;
|
|
56
|
+
_update(id: AdapterId, data: Data, params?: ServiceParams): Promise<Result>;
|
|
57
|
+
_remove(id: null, params?: ServiceParams): Promise<Result[]>;
|
|
58
|
+
_remove(id: AdapterId, params?: ServiceParams): Promise<Result>;
|
|
59
|
+
_remove(id: NullableAdapterId, _params?: ServiceParams): Promise<Result | Result[]>;
|
|
60
60
|
}
|
package/lib/adapter.js
CHANGED
|
@@ -98,8 +98,8 @@ class MongoDbAdapter extends adapter_commons_1.AdapterBase {
|
|
|
98
98
|
}
|
|
99
99
|
return select;
|
|
100
100
|
}
|
|
101
|
-
async
|
|
102
|
-
return id === null ? await this
|
|
101
|
+
async _findOrGet(id, params) {
|
|
102
|
+
return id === null ? await this._find(params) : await this._get(id, params);
|
|
103
103
|
}
|
|
104
104
|
normalizeId(id, data) {
|
|
105
105
|
if (this.id === '_id') {
|
|
@@ -117,7 +117,7 @@ class MongoDbAdapter extends adapter_commons_1.AdapterBase {
|
|
|
117
117
|
}
|
|
118
118
|
return data;
|
|
119
119
|
}
|
|
120
|
-
async
|
|
120
|
+
async _get(id, params = {}) {
|
|
121
121
|
const { query, filters: { $select } } = this.filterQuery(id, params);
|
|
122
122
|
const projection = $select
|
|
123
123
|
? {
|
|
@@ -141,7 +141,7 @@ class MongoDbAdapter extends adapter_commons_1.AdapterBase {
|
|
|
141
141
|
})
|
|
142
142
|
.catch(error_handler_1.errorHandler);
|
|
143
143
|
}
|
|
144
|
-
async
|
|
144
|
+
async _find(params = {}) {
|
|
145
145
|
const { paginate, useEstimatedDocumentCount } = this.getOptions(params);
|
|
146
146
|
const { filters, query } = this.filterQuery(null, params);
|
|
147
147
|
const useAggregation = !params.mongodb && filters.$limit !== 0;
|
|
@@ -169,7 +169,7 @@ class MongoDbAdapter extends adapter_commons_1.AdapterBase {
|
|
|
169
169
|
};
|
|
170
170
|
return paginate && paginate.default ? page : page.data;
|
|
171
171
|
}
|
|
172
|
-
async
|
|
172
|
+
async _create(data, params = {}) {
|
|
173
173
|
const writeOptions = params.mongodb;
|
|
174
174
|
const model = await this.getModel(params);
|
|
175
175
|
const setId = (item) => {
|
|
@@ -192,7 +192,10 @@ class MongoDbAdapter extends adapter_commons_1.AdapterBase {
|
|
|
192
192
|
.then(async (result) => model.findOne({ _id: result.insertedId }, params.mongodb));
|
|
193
193
|
return promise.then((0, adapter_commons_1.select)(params, this.id)).catch(error_handler_1.errorHandler);
|
|
194
194
|
}
|
|
195
|
-
async
|
|
195
|
+
async _patch(id, _data, params = {}) {
|
|
196
|
+
if (id === null && !this.allowsMulti('patch', params)) {
|
|
197
|
+
throw new errors_1.MethodNotAllowed('Can not patch multiple entries');
|
|
198
|
+
}
|
|
196
199
|
const data = this.normalizeId(id, _data);
|
|
197
200
|
const model = await this.getModel(params);
|
|
198
201
|
const { query, filters: { $select } } = this.filterQuery(id, params);
|
|
@@ -210,7 +213,7 @@ class MongoDbAdapter extends adapter_commons_1.AdapterBase {
|
|
|
210
213
|
}
|
|
211
214
|
return current;
|
|
212
215
|
}, {});
|
|
213
|
-
const originalIds = await this
|
|
216
|
+
const originalIds = await this._findOrGet(id, {
|
|
214
217
|
...params,
|
|
215
218
|
query: {
|
|
216
219
|
...query,
|
|
@@ -229,16 +232,22 @@ class MongoDbAdapter extends adapter_commons_1.AdapterBase {
|
|
|
229
232
|
}
|
|
230
233
|
};
|
|
231
234
|
await model.updateMany(query, modifier, updateOptions);
|
|
232
|
-
return this
|
|
235
|
+
return this._findOrGet(id, findParams).catch(error_handler_1.errorHandler);
|
|
233
236
|
}
|
|
234
|
-
async
|
|
237
|
+
async _update(id, data, params = {}) {
|
|
238
|
+
if (id === null || Array.isArray(data)) {
|
|
239
|
+
throw new errors_1.BadRequest("You can not replace multiple instances. Did you mean 'patch'?");
|
|
240
|
+
}
|
|
235
241
|
const model = await this.getModel(params);
|
|
236
242
|
const { query } = this.filterQuery(id, params);
|
|
237
243
|
const replaceOptions = { ...params.mongodb };
|
|
238
244
|
await model.replaceOne(query, this.normalizeId(id, data), replaceOptions);
|
|
239
|
-
return this
|
|
245
|
+
return this._findOrGet(id, params).catch(error_handler_1.errorHandler);
|
|
240
246
|
}
|
|
241
|
-
async
|
|
247
|
+
async _remove(id, params = {}) {
|
|
248
|
+
if (id === null && !this.allowsMulti('remove', params)) {
|
|
249
|
+
throw new errors_1.MethodNotAllowed('Can not remove multiple entries');
|
|
250
|
+
}
|
|
242
251
|
const model = await this.getModel(params);
|
|
243
252
|
const { query, filters: { $select } } = this.filterQuery(id, params);
|
|
244
253
|
const deleteOptions = { ...params.mongodb };
|
|
@@ -250,7 +259,7 @@ class MongoDbAdapter extends adapter_commons_1.AdapterBase {
|
|
|
250
259
|
$select
|
|
251
260
|
}
|
|
252
261
|
};
|
|
253
|
-
return this
|
|
262
|
+
return this._findOrGet(id, findParams)
|
|
254
263
|
.then(async (items) => {
|
|
255
264
|
await model.deleteMany(query, deleteOptions);
|
|
256
265
|
return items;
|
package/lib/adapter.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"adapter.js","sourceRoot":"","sources":["../src/adapter.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"adapter.js","sourceRoot":"","sources":["../src/adapter.ts"],"names":[],"mappings":"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"}
|
package/lib/index.d.ts
CHANGED
|
@@ -1,28 +1,26 @@
|
|
|
1
1
|
import { PaginationOptions } from '@feathersjs/adapter-commons';
|
|
2
|
-
import { Paginated,
|
|
3
|
-
import {
|
|
4
|
-
import { MongoDbAdapter, MongoDBAdapterParams } from './adapter';
|
|
2
|
+
import { Paginated, Params } from '@feathersjs/feathers';
|
|
3
|
+
import { AdapterId, MongoDbAdapter, MongoDBAdapterParams, NullableAdapterId } from './adapter';
|
|
5
4
|
export * from './adapter';
|
|
6
5
|
export * from './error-handler';
|
|
7
6
|
export * from './resolvers';
|
|
8
|
-
export declare class MongoDBService<
|
|
9
|
-
find(params?:
|
|
7
|
+
export declare class MongoDBService<Result = any, Data = Partial<Result>, ServiceParams extends Params<any> = MongoDBAdapterParams, PatchData = Partial<Data>> extends MongoDbAdapter<Result, Data, ServiceParams, PatchData> {
|
|
8
|
+
find(params?: ServiceParams & {
|
|
10
9
|
paginate?: PaginationOptions;
|
|
11
|
-
}): Promise<Paginated<
|
|
12
|
-
find(params?:
|
|
10
|
+
}): Promise<Paginated<Result>>;
|
|
11
|
+
find(params?: ServiceParams & {
|
|
13
12
|
paginate: false;
|
|
14
|
-
}): Promise<
|
|
15
|
-
find(params?:
|
|
16
|
-
get(id:
|
|
17
|
-
|
|
18
|
-
create(data:
|
|
19
|
-
create(data:
|
|
20
|
-
update(id:
|
|
21
|
-
|
|
22
|
-
patch(id:
|
|
23
|
-
patch(id:
|
|
24
|
-
|
|
25
|
-
remove(id:
|
|
26
|
-
remove(id:
|
|
27
|
-
remove(id: null, params?: P): Promise<T[]>;
|
|
13
|
+
}): Promise<Result[]>;
|
|
14
|
+
find(params?: ServiceParams): Promise<Paginated<Result> | Result[]>;
|
|
15
|
+
get(id: AdapterId, params?: ServiceParams): Promise<Result>;
|
|
16
|
+
create(data: Data, params?: ServiceParams): Promise<Result>;
|
|
17
|
+
create(data: Data[], params?: ServiceParams): Promise<Result[]>;
|
|
18
|
+
create(data: Data | Data[], params?: ServiceParams): Promise<Result | Result[]>;
|
|
19
|
+
update(id: AdapterId, data: Data, params?: ServiceParams): Promise<Result>;
|
|
20
|
+
patch(id: null, data: PatchData, params?: ServiceParams): Promise<Result[]>;
|
|
21
|
+
patch(id: AdapterId, data: PatchData, params?: ServiceParams): Promise<Result>;
|
|
22
|
+
patch(id: NullableAdapterId, data: PatchData, params?: ServiceParams): Promise<Result | Result[]>;
|
|
23
|
+
remove(id: AdapterId, params?: ServiceParams): Promise<Result>;
|
|
24
|
+
remove(id: null, params?: ServiceParams): Promise<Result[]>;
|
|
25
|
+
remove(id: NullableAdapterId, params?: ServiceParams): Promise<Result | Result[]>;
|
|
28
26
|
}
|
package/lib/index.js
CHANGED
|
@@ -15,28 +15,49 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
15
15
|
};
|
|
16
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
17
|
exports.MongoDBService = void 0;
|
|
18
|
+
const lib_1 = require("@feathersjs/errors/lib");
|
|
18
19
|
const adapter_1 = require("./adapter");
|
|
19
20
|
__exportStar(require("./adapter"), exports);
|
|
20
21
|
__exportStar(require("./error-handler"), exports);
|
|
21
22
|
__exportStar(require("./resolvers"), exports);
|
|
22
23
|
class MongoDBService extends adapter_1.MongoDbAdapter {
|
|
23
24
|
async find(params) {
|
|
24
|
-
return this._find(
|
|
25
|
+
return this._find({
|
|
26
|
+
...params,
|
|
27
|
+
query: await this.sanitizeQuery(params)
|
|
28
|
+
});
|
|
25
29
|
}
|
|
26
30
|
async get(id, params) {
|
|
27
|
-
return this._get(id,
|
|
31
|
+
return this._get(id, {
|
|
32
|
+
...params,
|
|
33
|
+
query: await this.sanitizeQuery(params)
|
|
34
|
+
});
|
|
28
35
|
}
|
|
29
36
|
async create(data, params) {
|
|
37
|
+
if (Array.isArray(data) && !this.allowsMulti('create', params)) {
|
|
38
|
+
throw new lib_1.MethodNotAllowed('Can not create multiple entries');
|
|
39
|
+
}
|
|
30
40
|
return this._create(data, params);
|
|
31
41
|
}
|
|
32
42
|
async update(id, data, params) {
|
|
33
|
-
return this._update(id, data,
|
|
43
|
+
return this._update(id, data, {
|
|
44
|
+
...params,
|
|
45
|
+
query: await this.sanitizeQuery(params)
|
|
46
|
+
});
|
|
34
47
|
}
|
|
35
48
|
async patch(id, data, params) {
|
|
36
|
-
|
|
49
|
+
const { $limit, ...query } = await this.sanitizeQuery(params);
|
|
50
|
+
return this._patch(id, data, {
|
|
51
|
+
...params,
|
|
52
|
+
query
|
|
53
|
+
});
|
|
37
54
|
}
|
|
38
55
|
async remove(id, params) {
|
|
39
|
-
|
|
56
|
+
const { $limit, ...query } = await this.sanitizeQuery(params);
|
|
57
|
+
return this._remove(id, {
|
|
58
|
+
...params,
|
|
59
|
+
query
|
|
60
|
+
});
|
|
40
61
|
}
|
|
41
62
|
}
|
|
42
63
|
exports.MongoDBService = MongoDBService;
|
package/lib/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AACA,gDAAyD;AAEzD,uCAA8F;AAE9F,4CAAyB;AACzB,kDAA+B;AAC/B,8CAA2B;AAE3B,MAAa,cAKX,SAAQ,wBAAsD;IAI9D,KAAK,CAAC,IAAI,CAAC,MAAsB;QAC/B,OAAO,IAAI,CAAC,KAAK,CAAC;YAChB,GAAG,MAAM;YACT,KAAK,EAAE,MAAM,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC;SACxC,CAAC,CAAA;IACJ,CAAC;IAED,KAAK,CAAC,GAAG,CAAC,EAAa,EAAE,MAAsB;QAC7C,OAAO,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE;YACnB,GAAG,MAAM;YACT,KAAK,EAAE,MAAM,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC;SACxC,CAAC,CAAA;IACJ,CAAC;IAKD,KAAK,CAAC,MAAM,CAAC,IAAmB,EAAE,MAAsB;QACtD,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,QAAQ,EAAE,MAAM,CAAC,EAAE;YAC9D,MAAM,IAAI,sBAAgB,CAAC,iCAAiC,CAAC,CAAA;SAC9D;QAED,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC,CAAA;IACnC,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,EAAa,EAAE,IAAU,EAAE,MAAsB;QAC5D,OAAO,IAAI,CAAC,OAAO,CAAC,EAAE,EAAE,IAAI,EAAE;YAC5B,GAAG,MAAM;YACT,KAAK,EAAE,MAAM,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC;SACxC,CAAC,CAAA;IACJ,CAAC;IAKD,KAAK,CAAC,KAAK,CAAC,EAAqB,EAAE,IAAe,EAAE,MAAsB;QACxE,MAAM,EAAE,MAAM,EAAE,GAAG,KAAK,EAAE,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,CAAA;QAE7D,OAAO,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,IAAI,EAAE;YAC3B,GAAG,MAAM;YACT,KAAK;SACN,CAAC,CAAA;IACJ,CAAC;IAKD,KAAK,CAAC,MAAM,CAAC,EAAqB,EAAE,MAAsB;QACxD,MAAM,EAAE,MAAM,EAAE,GAAG,KAAK,EAAE,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,CAAA;QAE7D,OAAO,IAAI,CAAC,OAAO,CAAC,EAAE,EAAE;YACtB,GAAG,MAAM;YACT,KAAK;SACN,CAAC,CAAA;IACJ,CAAC;CACF;AAhED,wCAgEC"}
|
package/lib/resolvers.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { ObjectId } from 'mongodb';
|
|
2
|
-
export
|
|
3
|
-
export
|
|
2
|
+
export type ObjectIdParam = string | number | ObjectId;
|
|
3
|
+
export type IdQueryObject<T> = {
|
|
4
4
|
$in?: T[];
|
|
5
5
|
$nin?: T[];
|
|
6
6
|
$ne?: T;
|
package/lib/resolvers.js
CHANGED
|
@@ -8,6 +8,9 @@ async function resolveObjectId(value) {
|
|
|
8
8
|
}
|
|
9
9
|
exports.resolveObjectId = resolveObjectId;
|
|
10
10
|
async function resolveQueryObjectId(value) {
|
|
11
|
+
if (!value) {
|
|
12
|
+
return undefined;
|
|
13
|
+
}
|
|
11
14
|
if (typeof value === 'string' || typeof value === 'number' || value instanceof mongodb_1.ObjectId) {
|
|
12
15
|
return toObjectId(value);
|
|
13
16
|
}
|
package/lib/resolvers.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"resolvers.js","sourceRoot":"","sources":["../src/resolvers.ts"],"names":[],"mappings":";;;AAAA,qCAAkC;AAUlC,MAAM,UAAU,GAAG,CAAC,KAAoB,EAAE,EAAE,CAAC,IAAI,kBAAQ,CAAC,KAAK,CAAC,CAAA;AAEzD,KAAK,UAAU,eAAe,CAAC,KAAoB;IACxD,OAAO,UAAU,CAAC,KAAK,CAAC,CAAA;AAC1B,CAAC;AAFD,0CAEC;AAMM,KAAK,UAAU,oBAAoB,CAAC,KAAmD;IAC5F,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,YAAY,kBAAQ,EAAE;QACvF,OAAO,UAAU,CAAC,KAAK,CAAC,CAAA;KACzB;IAED,MAAM,eAAe,GAA4B,EAAE,CAAA;IAEnD,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE;QAC5B,eAAe,CAAC,GAAG,GAAG,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,UAAU,CAAC,CAAA;KAChD;IAED,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE;QAC7B,eAAe,CAAC,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,CAAA;KAClD;IAED,IAAI,KAAK,CAAC,GAAG,KAAK,SAAS,EAAE;QAC3B,eAAe,CAAC,GAAG,GAAG,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;KAC5C;IAED,OAAO,eAAe,CAAA;AACxB,CAAC;
|
|
1
|
+
{"version":3,"file":"resolvers.js","sourceRoot":"","sources":["../src/resolvers.ts"],"names":[],"mappings":";;;AAAA,qCAAkC;AAUlC,MAAM,UAAU,GAAG,CAAC,KAAoB,EAAE,EAAE,CAAC,IAAI,kBAAQ,CAAC,KAAK,CAAC,CAAA;AAEzD,KAAK,UAAU,eAAe,CAAC,KAAoB;IACxD,OAAO,UAAU,CAAC,KAAK,CAAC,CAAA;AAC1B,CAAC;AAFD,0CAEC;AAMM,KAAK,UAAU,oBAAoB,CAAC,KAAmD;IAC5F,IAAI,CAAC,KAAK,EAAE;QACV,OAAO,SAAS,CAAA;KACjB;IAED,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,YAAY,kBAAQ,EAAE;QACvF,OAAO,UAAU,CAAC,KAAK,CAAC,CAAA;KACzB;IAED,MAAM,eAAe,GAA4B,EAAE,CAAA;IAEnD,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE;QAC5B,eAAe,CAAC,GAAG,GAAG,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,UAAU,CAAC,CAAA;KAChD;IAED,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE;QAC7B,eAAe,CAAC,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,CAAA;KAClD;IAED,IAAI,KAAK,CAAC,GAAG,KAAK,SAAS,EAAE;QAC3B,eAAe,CAAC,GAAG,GAAG,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;KAC5C;IAED,OAAO,eAAe,CAAA;AACxB,CAAC;AAxBD,oDAwBC"}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@feathersjs/mongodb",
|
|
3
3
|
"description": "Feathers MongoDB service adapter",
|
|
4
|
-
"version": "5.0.0-pre.
|
|
4
|
+
"version": "5.0.0-pre.35",
|
|
5
5
|
"homepage": "https://feathersjs.com",
|
|
6
6
|
"main": "lib/",
|
|
7
7
|
"keywords": [
|
|
@@ -40,7 +40,7 @@
|
|
|
40
40
|
],
|
|
41
41
|
"scripts": {
|
|
42
42
|
"prepublish": "npm run compile",
|
|
43
|
-
"pack": "npm pack --pack-destination ../
|
|
43
|
+
"pack": "npm pack --pack-destination ../generators/test/build",
|
|
44
44
|
"compile": "shx rm -rf lib/ && tsc && npm run pack",
|
|
45
45
|
"test": "mocha --config ../../.mocharc.json --recursive test/**.test.ts test/**/*.test.ts"
|
|
46
46
|
},
|
|
@@ -51,22 +51,22 @@
|
|
|
51
51
|
"access": "public"
|
|
52
52
|
},
|
|
53
53
|
"dependencies": {
|
|
54
|
-
"@feathersjs/adapter-commons": "^5.0.0-pre.
|
|
55
|
-
"@feathersjs/commons": "^5.0.0-pre.
|
|
56
|
-
"@feathersjs/errors": "^5.0.0-pre.
|
|
57
|
-
"@feathersjs/feathers": "^5.0.0-pre.
|
|
54
|
+
"@feathersjs/adapter-commons": "^5.0.0-pre.35",
|
|
55
|
+
"@feathersjs/commons": "^5.0.0-pre.35",
|
|
56
|
+
"@feathersjs/errors": "^5.0.0-pre.35",
|
|
57
|
+
"@feathersjs/feathers": "^5.0.0-pre.35"
|
|
58
58
|
},
|
|
59
59
|
"peerDependencies": {
|
|
60
60
|
"mongodb": "^4.5.0"
|
|
61
61
|
},
|
|
62
62
|
"devDependencies": {
|
|
63
|
-
"@feathersjs/adapter-tests": "^5.0.0-pre.
|
|
64
|
-
"@types/mocha": "^10.0.
|
|
65
|
-
"@types/node": "^18.11.
|
|
66
|
-
"mocha": "^10.
|
|
67
|
-
"mongodb-memory-server": "^8.
|
|
63
|
+
"@feathersjs/adapter-tests": "^5.0.0-pre.35",
|
|
64
|
+
"@types/mocha": "^10.0.1",
|
|
65
|
+
"@types/node": "^18.11.18",
|
|
66
|
+
"mocha": "^10.2.0",
|
|
67
|
+
"mongodb-memory-server": "^8.10.2",
|
|
68
68
|
"shx": "^0.3.4",
|
|
69
|
-
"typescript": "^4.
|
|
69
|
+
"typescript": "^4.9.4"
|
|
70
70
|
},
|
|
71
|
-
"gitHead": "
|
|
71
|
+
"gitHead": "c641598d9a4de3ceda10f56cf2af288a4236b15e"
|
|
72
72
|
}
|
package/src/adapter.ts
CHANGED
|
@@ -9,7 +9,7 @@ import {
|
|
|
9
9
|
ReplaceOptions,
|
|
10
10
|
Document
|
|
11
11
|
} from 'mongodb'
|
|
12
|
-
import { NotFound } from '@feathersjs/errors'
|
|
12
|
+
import { BadRequest, MethodNotAllowed, NotFound } from '@feathersjs/errors'
|
|
13
13
|
import { _ } from '@feathersjs/commons'
|
|
14
14
|
import {
|
|
15
15
|
AdapterBase,
|
|
@@ -19,7 +19,7 @@ import {
|
|
|
19
19
|
PaginationOptions,
|
|
20
20
|
AdapterQuery
|
|
21
21
|
} from '@feathersjs/adapter-commons'
|
|
22
|
-
import {
|
|
22
|
+
import { Id, Paginated } from '@feathersjs/feathers'
|
|
23
23
|
import { errorHandler } from './error-handler'
|
|
24
24
|
|
|
25
25
|
export interface MongoDBAdapterOptions extends AdapterServiceOptions {
|
|
@@ -40,12 +40,17 @@ export interface MongoDBAdapterParams<Q = AdapterQuery>
|
|
|
40
40
|
| ReplaceOptions
|
|
41
41
|
}
|
|
42
42
|
|
|
43
|
+
export type AdapterId = Id | ObjectId
|
|
44
|
+
|
|
45
|
+
export type NullableAdapterId = AdapterId | null
|
|
46
|
+
|
|
43
47
|
// Create the service.
|
|
44
48
|
export class MongoDbAdapter<
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
+
Result,
|
|
50
|
+
Data = Partial<Result>,
|
|
51
|
+
ServiceParams extends MongoDBAdapterParams<any> = MongoDBAdapterParams,
|
|
52
|
+
PatchData = Partial<Data>
|
|
53
|
+
> extends AdapterBase<Result, Data, PatchData, ServiceParams, MongoDBAdapterOptions, AdapterId> {
|
|
49
54
|
constructor(options: MongoDBAdapterOptions) {
|
|
50
55
|
if (!options) {
|
|
51
56
|
throw new Error('MongoDB options have to be provided')
|
|
@@ -57,7 +62,7 @@ export class MongoDbAdapter<
|
|
|
57
62
|
})
|
|
58
63
|
}
|
|
59
64
|
|
|
60
|
-
getObjectId(id:
|
|
65
|
+
getObjectId(id: AdapterId) {
|
|
61
66
|
if (this.options.disableObjectify) {
|
|
62
67
|
return id
|
|
63
68
|
}
|
|
@@ -69,7 +74,7 @@ export class MongoDbAdapter<
|
|
|
69
74
|
return id
|
|
70
75
|
}
|
|
71
76
|
|
|
72
|
-
filterQuery(id:
|
|
77
|
+
filterQuery(id: NullableAdapterId, params: ServiceParams) {
|
|
73
78
|
const { $select, $sort, $limit, $skip, ...query } = (params.query || {}) as AdapterQuery
|
|
74
79
|
|
|
75
80
|
if (id !== null) {
|
|
@@ -88,12 +93,12 @@ export class MongoDbAdapter<
|
|
|
88
93
|
}
|
|
89
94
|
}
|
|
90
95
|
|
|
91
|
-
getModel(params:
|
|
96
|
+
getModel(params: ServiceParams) {
|
|
92
97
|
const { Model } = this.getOptions(params)
|
|
93
98
|
return Promise.resolve(Model)
|
|
94
99
|
}
|
|
95
100
|
|
|
96
|
-
async findRaw(params:
|
|
101
|
+
async findRaw(params: ServiceParams) {
|
|
97
102
|
const { filters, query } = this.filterQuery(null, params)
|
|
98
103
|
const model = await this.getModel(params)
|
|
99
104
|
const q = model.find(query, { ...params.mongodb })
|
|
@@ -117,7 +122,7 @@ export class MongoDbAdapter<
|
|
|
117
122
|
return q
|
|
118
123
|
}
|
|
119
124
|
|
|
120
|
-
async aggregateRaw(params:
|
|
125
|
+
async aggregateRaw(params: ServiceParams) {
|
|
121
126
|
const model = await this.getModel(params)
|
|
122
127
|
const pipeline = params.pipeline || []
|
|
123
128
|
const index = pipeline.findIndex((stage: Document) => stage.$feathers)
|
|
@@ -128,7 +133,7 @@ export class MongoDbAdapter<
|
|
|
128
133
|
return model.aggregate([...before, ...feathersPipeline, ...after])
|
|
129
134
|
}
|
|
130
135
|
|
|
131
|
-
makeFeathersPipeline(params:
|
|
136
|
+
makeFeathersPipeline(params: ServiceParams) {
|
|
132
137
|
const { filters, query } = this.filterQuery(null, params)
|
|
133
138
|
const pipeline: Document[] = [{ $match: query }]
|
|
134
139
|
|
|
@@ -164,11 +169,11 @@ export class MongoDbAdapter<
|
|
|
164
169
|
return select
|
|
165
170
|
}
|
|
166
171
|
|
|
167
|
-
async
|
|
168
|
-
return id === null ? await this
|
|
172
|
+
async _findOrGet(id: NullableAdapterId, params: ServiceParams) {
|
|
173
|
+
return id === null ? await this._find(params) : await this._get(id, params)
|
|
169
174
|
}
|
|
170
175
|
|
|
171
|
-
normalizeId(id:
|
|
176
|
+
normalizeId<D>(id: NullableAdapterId, data: D): D {
|
|
172
177
|
if (this.id === '_id') {
|
|
173
178
|
// Default Mongo IDs cannot be updated. The Mongo library handles
|
|
174
179
|
// this automatically.
|
|
@@ -184,7 +189,7 @@ export class MongoDbAdapter<
|
|
|
184
189
|
return data
|
|
185
190
|
}
|
|
186
191
|
|
|
187
|
-
async
|
|
192
|
+
async _get(id: AdapterId, params: ServiceParams = {} as ServiceParams): Promise<Result> {
|
|
188
193
|
const {
|
|
189
194
|
query,
|
|
190
195
|
filters: { $select }
|
|
@@ -214,10 +219,10 @@ export class MongoDbAdapter<
|
|
|
214
219
|
.catch(errorHandler)
|
|
215
220
|
}
|
|
216
221
|
|
|
217
|
-
async
|
|
218
|
-
async
|
|
219
|
-
async
|
|
220
|
-
async
|
|
222
|
+
async _find(params?: ServiceParams & { paginate?: PaginationOptions }): Promise<Paginated<Result>>
|
|
223
|
+
async _find(params?: ServiceParams & { paginate: false }): Promise<Result[]>
|
|
224
|
+
async _find(params?: ServiceParams): Promise<Paginated<Result> | Result[]>
|
|
225
|
+
async _find(params: ServiceParams = {} as ServiceParams): Promise<Paginated<Result> | Result[]> {
|
|
221
226
|
const { paginate, useEstimatedDocumentCount } = this.getOptions(params)
|
|
222
227
|
const { filters, query } = this.filterQuery(null, params)
|
|
223
228
|
const useAggregation = !params.mongodb && filters.$limit !== 0
|
|
@@ -243,16 +248,19 @@ export class MongoDbAdapter<
|
|
|
243
248
|
total,
|
|
244
249
|
limit: filters.$limit,
|
|
245
250
|
skip: filters.$skip || 0,
|
|
246
|
-
data: filters.$limit === 0 ? [] : ((await request.toArray()) as any as
|
|
251
|
+
data: filters.$limit === 0 ? [] : ((await request.toArray()) as any as Result[])
|
|
247
252
|
}
|
|
248
253
|
|
|
249
254
|
return paginate && paginate.default ? page : page.data
|
|
250
255
|
}
|
|
251
256
|
|
|
252
|
-
async
|
|
253
|
-
async
|
|
254
|
-
async
|
|
255
|
-
async
|
|
257
|
+
async _create(data: Data, params?: ServiceParams): Promise<Result>
|
|
258
|
+
async _create(data: Data[], params?: ServiceParams): Promise<Result[]>
|
|
259
|
+
async _create(data: Data | Data[], _params?: ServiceParams): Promise<Result | Result[]>
|
|
260
|
+
async _create(
|
|
261
|
+
data: Data | Data[],
|
|
262
|
+
params: ServiceParams = {} as ServiceParams
|
|
263
|
+
): Promise<Result | Result[]> {
|
|
256
264
|
const writeOptions = params.mongodb
|
|
257
265
|
const model = await this.getModel(params)
|
|
258
266
|
const setId = (item: any) => {
|
|
@@ -284,11 +292,18 @@ export class MongoDbAdapter<
|
|
|
284
292
|
return promise.then(select(params, this.id)).catch(errorHandler)
|
|
285
293
|
}
|
|
286
294
|
|
|
287
|
-
async
|
|
288
|
-
async
|
|
289
|
-
async
|
|
290
|
-
async
|
|
291
|
-
|
|
295
|
+
async _patch(id: null, data: PatchData, params?: ServiceParams): Promise<Result[]>
|
|
296
|
+
async _patch(id: AdapterId, data: PatchData, params?: ServiceParams): Promise<Result>
|
|
297
|
+
async _patch(id: NullableAdapterId, data: PatchData, _params?: ServiceParams): Promise<Result | Result[]>
|
|
298
|
+
async _patch(
|
|
299
|
+
id: NullableAdapterId,
|
|
300
|
+
_data: PatchData,
|
|
301
|
+
params: ServiceParams = {} as ServiceParams
|
|
302
|
+
): Promise<Result | Result[]> {
|
|
303
|
+
if (id === null && !this.allowsMulti('patch', params)) {
|
|
304
|
+
throw new MethodNotAllowed('Can not patch multiple entries')
|
|
305
|
+
}
|
|
306
|
+
|
|
292
307
|
const data = this.normalizeId(id, _data)
|
|
293
308
|
const model = await this.getModel(params)
|
|
294
309
|
const {
|
|
@@ -310,7 +325,7 @@ export class MongoDbAdapter<
|
|
|
310
325
|
|
|
311
326
|
return current
|
|
312
327
|
}, {} as any)
|
|
313
|
-
const originalIds = await this
|
|
328
|
+
const originalIds = await this._findOrGet(id, {
|
|
314
329
|
...params,
|
|
315
330
|
query: {
|
|
316
331
|
...query,
|
|
@@ -331,24 +346,34 @@ export class MongoDbAdapter<
|
|
|
331
346
|
|
|
332
347
|
await model.updateMany(query, modifier, updateOptions)
|
|
333
348
|
|
|
334
|
-
return this
|
|
349
|
+
return this._findOrGet(id, findParams).catch(errorHandler)
|
|
335
350
|
}
|
|
336
351
|
|
|
337
|
-
async
|
|
352
|
+
async _update(id: AdapterId, data: Data, params: ServiceParams = {} as ServiceParams): Promise<Result> {
|
|
353
|
+
if (id === null || Array.isArray(data)) {
|
|
354
|
+
throw new BadRequest("You can not replace multiple instances. Did you mean 'patch'?")
|
|
355
|
+
}
|
|
356
|
+
|
|
338
357
|
const model = await this.getModel(params)
|
|
339
358
|
const { query } = this.filterQuery(id, params)
|
|
340
359
|
const replaceOptions = { ...params.mongodb }
|
|
341
360
|
|
|
342
361
|
await model.replaceOne(query, this.normalizeId(id, data), replaceOptions)
|
|
343
362
|
|
|
344
|
-
return this
|
|
363
|
+
return this._findOrGet(id, params).catch(errorHandler)
|
|
345
364
|
}
|
|
346
365
|
|
|
347
|
-
async
|
|
348
|
-
async
|
|
349
|
-
async
|
|
350
|
-
async
|
|
351
|
-
|
|
366
|
+
async _remove(id: null, params?: ServiceParams): Promise<Result[]>
|
|
367
|
+
async _remove(id: AdapterId, params?: ServiceParams): Promise<Result>
|
|
368
|
+
async _remove(id: NullableAdapterId, _params?: ServiceParams): Promise<Result | Result[]>
|
|
369
|
+
async _remove(
|
|
370
|
+
id: NullableAdapterId | ObjectId,
|
|
371
|
+
params: ServiceParams = {} as ServiceParams
|
|
372
|
+
): Promise<Result | Result[]> {
|
|
373
|
+
if (id === null && !this.allowsMulti('remove', params)) {
|
|
374
|
+
throw new MethodNotAllowed('Can not remove multiple entries')
|
|
375
|
+
}
|
|
376
|
+
|
|
352
377
|
const model = await this.getModel(params)
|
|
353
378
|
const {
|
|
354
379
|
query,
|
|
@@ -364,7 +389,7 @@ export class MongoDbAdapter<
|
|
|
364
389
|
}
|
|
365
390
|
}
|
|
366
391
|
|
|
367
|
-
return this
|
|
392
|
+
return this._findOrGet(id, findParams)
|
|
368
393
|
.then(async (items) => {
|
|
369
394
|
await model.deleteMany(query, deleteOptions)
|
|
370
395
|
return items
|
package/src/index.ts
CHANGED
|
@@ -1,52 +1,74 @@
|
|
|
1
1
|
import { PaginationOptions } from '@feathersjs/adapter-commons'
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
import { MongoDbAdapter, MongoDBAdapterParams } from './adapter'
|
|
2
|
+
import { MethodNotAllowed } from '@feathersjs/errors/lib'
|
|
3
|
+
import { Paginated, Params } from '@feathersjs/feathers'
|
|
4
|
+
import { AdapterId, MongoDbAdapter, MongoDBAdapterParams, NullableAdapterId } from './adapter'
|
|
5
5
|
|
|
6
6
|
export * from './adapter'
|
|
7
7
|
export * from './error-handler'
|
|
8
8
|
export * from './resolvers'
|
|
9
9
|
|
|
10
|
-
export class MongoDBService<
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
async find(params?:
|
|
17
|
-
async find(params?:
|
|
18
|
-
|
|
10
|
+
export class MongoDBService<
|
|
11
|
+
Result = any,
|
|
12
|
+
Data = Partial<Result>,
|
|
13
|
+
ServiceParams extends Params<any> = MongoDBAdapterParams,
|
|
14
|
+
PatchData = Partial<Data>
|
|
15
|
+
> extends MongoDbAdapter<Result, Data, ServiceParams, PatchData> {
|
|
16
|
+
async find(params?: ServiceParams & { paginate?: PaginationOptions }): Promise<Paginated<Result>>
|
|
17
|
+
async find(params?: ServiceParams & { paginate: false }): Promise<Result[]>
|
|
18
|
+
async find(params?: ServiceParams): Promise<Paginated<Result> | Result[]>
|
|
19
|
+
async find(params?: ServiceParams): Promise<Paginated<Result> | Result[]> {
|
|
20
|
+
return this._find({
|
|
21
|
+
...params,
|
|
22
|
+
query: await this.sanitizeQuery(params)
|
|
23
|
+
})
|
|
19
24
|
}
|
|
20
25
|
|
|
21
|
-
async get(id:
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
26
|
+
async get(id: AdapterId, params?: ServiceParams): Promise<Result> {
|
|
27
|
+
return this._get(id, {
|
|
28
|
+
...params,
|
|
29
|
+
query: await this.sanitizeQuery(params)
|
|
30
|
+
})
|
|
25
31
|
}
|
|
26
32
|
|
|
27
|
-
async create(data:
|
|
28
|
-
async create(data:
|
|
29
|
-
async create(data:
|
|
33
|
+
async create(data: Data, params?: ServiceParams): Promise<Result>
|
|
34
|
+
async create(data: Data[], params?: ServiceParams): Promise<Result[]>
|
|
35
|
+
async create(data: Data | Data[], params?: ServiceParams): Promise<Result | Result[]>
|
|
36
|
+
async create(data: Data | Data[], params?: ServiceParams): Promise<Result | Result[]> {
|
|
37
|
+
if (Array.isArray(data) && !this.allowsMulti('create', params)) {
|
|
38
|
+
throw new MethodNotAllowed('Can not create multiple entries')
|
|
39
|
+
}
|
|
40
|
+
|
|
30
41
|
return this._create(data, params)
|
|
31
42
|
}
|
|
32
43
|
|
|
33
|
-
async update(id:
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
44
|
+
async update(id: AdapterId, data: Data, params?: ServiceParams): Promise<Result> {
|
|
45
|
+
return this._update(id, data, {
|
|
46
|
+
...params,
|
|
47
|
+
query: await this.sanitizeQuery(params)
|
|
48
|
+
})
|
|
37
49
|
}
|
|
38
50
|
|
|
39
|
-
async patch(id:
|
|
40
|
-
async patch(id:
|
|
41
|
-
async patch(id:
|
|
42
|
-
async patch(id:
|
|
43
|
-
|
|
51
|
+
async patch(id: null, data: PatchData, params?: ServiceParams): Promise<Result[]>
|
|
52
|
+
async patch(id: AdapterId, data: PatchData, params?: ServiceParams): Promise<Result>
|
|
53
|
+
async patch(id: NullableAdapterId, data: PatchData, params?: ServiceParams): Promise<Result | Result[]>
|
|
54
|
+
async patch(id: NullableAdapterId, data: PatchData, params?: ServiceParams): Promise<Result | Result[]> {
|
|
55
|
+
const { $limit, ...query } = await this.sanitizeQuery(params)
|
|
56
|
+
|
|
57
|
+
return this._patch(id, data, {
|
|
58
|
+
...params,
|
|
59
|
+
query
|
|
60
|
+
})
|
|
44
61
|
}
|
|
45
62
|
|
|
46
|
-
async remove(id:
|
|
47
|
-
async remove(id:
|
|
48
|
-
async remove(id:
|
|
49
|
-
async remove(id:
|
|
50
|
-
|
|
63
|
+
async remove(id: AdapterId, params?: ServiceParams): Promise<Result>
|
|
64
|
+
async remove(id: null, params?: ServiceParams): Promise<Result[]>
|
|
65
|
+
async remove(id: NullableAdapterId, params?: ServiceParams): Promise<Result | Result[]>
|
|
66
|
+
async remove(id: NullableAdapterId, params?: ServiceParams): Promise<Result | Result[]> {
|
|
67
|
+
const { $limit, ...query } = await this.sanitizeQuery(params)
|
|
68
|
+
|
|
69
|
+
return this._remove(id, {
|
|
70
|
+
...params,
|
|
71
|
+
query
|
|
72
|
+
})
|
|
51
73
|
}
|
|
52
74
|
}
|
package/src/resolvers.ts
CHANGED
|
@@ -19,6 +19,10 @@ export async function resolveQueryObjectId(
|
|
|
19
19
|
): Promise<IdQueryObject<ObjectId>>
|
|
20
20
|
export async function resolveQueryObjectId(value: ObjectIdParam): Promise<ObjectId>
|
|
21
21
|
export async function resolveQueryObjectId(value: ObjectIdParam | IdQueryObject<ObjectIdParam>) {
|
|
22
|
+
if (!value) {
|
|
23
|
+
return undefined
|
|
24
|
+
}
|
|
25
|
+
|
|
22
26
|
if (typeof value === 'string' || typeof value === 'number' || value instanceof ObjectId) {
|
|
23
27
|
return toObjectId(value)
|
|
24
28
|
}
|