@feathersjs/knex 5.0.0-pre.34 → 5.0.0-pre.36
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 +23 -0
- package/LICENSE +1 -1
- package/README.md +1 -1
- package/lib/adapter.d.ts +11 -4
- package/lib/adapter.js +35 -21
- package/lib/adapter.js.map +1 -1
- package/lib/error-handler.js +1 -1
- package/lib/error-handler.js.map +1 -1
- package/lib/hooks.js +1 -1
- package/lib/hooks.js.map +1 -1
- package/lib/index.d.ts +4 -1
- package/lib/index.js.map +1 -1
- package/package.json +15 -14
- package/src/adapter.ts +37 -23
- package/src/error-handler.ts +2 -1
- package/src/hooks.ts +1 -2
- package/src/index.ts +3 -0
package/CHANGELOG.md
CHANGED
|
@@ -3,6 +3,29 @@
|
|
|
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.36](https://github.com/feathersjs/feathers/compare/v5.0.0-pre.35...v5.0.0-pre.36) (2023-01-29)
|
|
7
|
+
|
|
8
|
+
### Bug Fixes
|
|
9
|
+
|
|
10
|
+
- **databases:** Ensure that query sanitization is not necessary when using query schemas ([#3022](https://github.com/feathersjs/feathers/issues/3022)) ([dbf514e](https://github.com/feathersjs/feathers/commit/dbf514e85d1508b95c007462a39b3cadd4ff391d))
|
|
11
|
+
- **databases:** Improve documentation for adapters and allow dynamic Knex adapter options ([#3019](https://github.com/feathersjs/feathers/issues/3019)) ([66c4b5e](https://github.com/feathersjs/feathers/commit/66c4b5e72000dd03acb57fca1cad4737c85c9c9e))
|
|
12
|
+
- Update all dependencies ([#3024](https://github.com/feathersjs/feathers/issues/3024)) ([283dc47](https://github.com/feathersjs/feathers/commit/283dc4798d85584bc031e6e54b83b4ea77d1edd0))
|
|
13
|
+
|
|
14
|
+
### Features
|
|
15
|
+
|
|
16
|
+
- **database:** Add and to the query syntax ([#3021](https://github.com/feathersjs/feathers/issues/3021)) ([00cb0d9](https://github.com/feathersjs/feathers/commit/00cb0d9c302ae951ae007d3d6ceba33e254edd9c))
|
|
17
|
+
|
|
18
|
+
# [5.0.0-pre.35](https://github.com/feathersjs/feathers/compare/v5.0.0-pre.34...v5.0.0-pre.35) (2023-01-12)
|
|
19
|
+
|
|
20
|
+
### Bug Fixes
|
|
21
|
+
|
|
22
|
+
- **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))
|
|
23
|
+
- **knex:** Ensure custom ids are returned on create ([#2934](https://github.com/feathersjs/feathers/issues/2934)) ([c4fa3cf](https://github.com/feathersjs/feathers/commit/c4fa3cf812d59e6e8e3831ab098bb8768c92e8f4))
|
|
24
|
+
|
|
25
|
+
### Features
|
|
26
|
+
|
|
27
|
+
- **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))
|
|
28
|
+
|
|
6
29
|
# [5.0.0-pre.34](https://github.com/feathersjs/feathers/compare/v5.0.0-pre.33...v5.0.0-pre.34) (2022-12-14)
|
|
7
30
|
|
|
8
31
|
### Features
|
package/LICENSE
CHANGED
package/README.md
CHANGED
|
@@ -17,6 +17,6 @@ Refer to the [Feathers documentation](https://docs.feathersjs.com) for more deta
|
|
|
17
17
|
|
|
18
18
|
## License
|
|
19
19
|
|
|
20
|
-
Copyright (c)
|
|
20
|
+
Copyright (c) 2023 [Feathers contributors](https://github.com/feathersjs/feathers/graphs/contributors)
|
|
21
21
|
|
|
22
22
|
Licensed under the [MIT license](LICENSE).
|
package/lib/adapter.d.ts
CHANGED
|
@@ -3,20 +3,27 @@ import { AdapterBase, PaginationOptions } from '@feathersjs/adapter-commons';
|
|
|
3
3
|
import { Knex } from 'knex';
|
|
4
4
|
import { KnexAdapterOptions, KnexAdapterParams } from './declarations';
|
|
5
5
|
export declare class KnexAdapter<Result, Data = Partial<Result>, ServiceParams extends KnexAdapterParams<any> = KnexAdapterParams, PatchData = Partial<Data>> extends AdapterBase<Result, Data, PatchData, ServiceParams, KnexAdapterOptions> {
|
|
6
|
-
table: string;
|
|
7
6
|
schema?: string;
|
|
8
7
|
constructor(options: KnexAdapterOptions);
|
|
9
|
-
get Model(): Knex<any, any[]>;
|
|
10
8
|
get fullName(): string;
|
|
9
|
+
get Model(): Knex<any, any[]>;
|
|
10
|
+
getModel(params?: ServiceParams): Knex<any, any[]>;
|
|
11
11
|
db(params?: ServiceParams): Knex.QueryBuilder<any, any>;
|
|
12
12
|
knexify(knexQuery: Knex.QueryBuilder, query?: Query, parentKey?: string): Knex.QueryBuilder;
|
|
13
13
|
createQuery(params: ServiceParams): Knex.QueryBuilder<any, any>;
|
|
14
14
|
filterQuery(params: ServiceParams): {
|
|
15
|
+
paginate: import("@feathersjs/adapter-commons").PaginationParams;
|
|
15
16
|
filters: {
|
|
17
|
+
$select: string[];
|
|
18
|
+
$sort: {
|
|
19
|
+
[key: string]: 1 | -1;
|
|
20
|
+
};
|
|
21
|
+
$limit: number;
|
|
22
|
+
$skip: number;
|
|
23
|
+
};
|
|
24
|
+
query: {
|
|
16
25
|
[key: string]: any;
|
|
17
26
|
};
|
|
18
|
-
query: Query;
|
|
19
|
-
paginate: import("@feathersjs/adapter-commons").PaginationParams;
|
|
20
27
|
};
|
|
21
28
|
_find(params?: ServiceParams & {
|
|
22
29
|
paginate?: PaginationOptions;
|
package/lib/adapter.js
CHANGED
|
@@ -37,25 +37,28 @@ class KnexAdapter extends adapter_commons_1.AdapterBase {
|
|
|
37
37
|
...options.filters,
|
|
38
38
|
$and: (value) => value
|
|
39
39
|
},
|
|
40
|
-
operators: [...(options.operators || []), '$like', '$notlike', '$ilike'
|
|
40
|
+
operators: [...(options.operators || []), '$like', '$notlike', '$ilike']
|
|
41
41
|
});
|
|
42
|
-
|
|
43
|
-
|
|
42
|
+
}
|
|
43
|
+
get fullName() {
|
|
44
|
+
const { name, schema } = this.getOptions({});
|
|
45
|
+
return schema ? `${schema}.${name}` : name;
|
|
44
46
|
}
|
|
45
47
|
get Model() {
|
|
46
|
-
return this.
|
|
48
|
+
return this.getModel();
|
|
47
49
|
}
|
|
48
|
-
|
|
49
|
-
|
|
50
|
+
getModel(params) {
|
|
51
|
+
const { Model } = this.getOptions(params);
|
|
52
|
+
return Model;
|
|
50
53
|
}
|
|
51
54
|
db(params) {
|
|
52
|
-
const { Model,
|
|
55
|
+
const { Model, name, schema } = this.getOptions(params);
|
|
53
56
|
if (params && params.transaction && params.transaction.trx) {
|
|
54
57
|
const { trx } = params.transaction;
|
|
55
58
|
// debug('ran %s with transaction %s', fullName, id)
|
|
56
|
-
return schema ? trx.withSchema(schema).table(
|
|
59
|
+
return schema ? trx.withSchema(schema).table(name) : trx(name);
|
|
57
60
|
}
|
|
58
|
-
return schema ? Model.withSchema(schema).table(
|
|
61
|
+
return schema ? Model.withSchema(schema).table(name) : Model(name);
|
|
59
62
|
}
|
|
60
63
|
knexify(knexQuery, query = {}, parentKey) {
|
|
61
64
|
const knexify = this.knexify.bind(this);
|
|
@@ -87,16 +90,16 @@ class KnexAdapter extends adapter_commons_1.AdapterBase {
|
|
|
87
90
|
}, knexQuery);
|
|
88
91
|
}
|
|
89
92
|
createQuery(params) {
|
|
90
|
-
const {
|
|
93
|
+
const { name, id } = this.getOptions(params);
|
|
91
94
|
const { filters, query } = this.filterQuery(params);
|
|
92
95
|
const builder = this.db(params);
|
|
93
96
|
// $select uses a specific find syntax, so it has to come first.
|
|
94
97
|
if (filters.$select) {
|
|
95
98
|
// always select the id field, but make sure we only select it once
|
|
96
|
-
builder.select(...new Set([...filters.$select, `${
|
|
99
|
+
builder.select(...new Set([...filters.$select, `${name}.${id}`]));
|
|
97
100
|
}
|
|
98
101
|
else {
|
|
99
|
-
builder.select(`${
|
|
102
|
+
builder.select(`${name}.*`);
|
|
100
103
|
}
|
|
101
104
|
// build up the knex query out of the query params, include $and and $or filters
|
|
102
105
|
this.knexify(builder, {
|
|
@@ -111,13 +114,19 @@ class KnexAdapter extends adapter_commons_1.AdapterBase {
|
|
|
111
114
|
}
|
|
112
115
|
filterQuery(params) {
|
|
113
116
|
const options = this.getOptions(params);
|
|
114
|
-
const {
|
|
115
|
-
|
|
117
|
+
const { $select, $sort, $limit: _limit, $skip = 0, ...query } = (params.query || {});
|
|
118
|
+
const $limit = (0, adapter_commons_1.getLimit)(_limit, options.paginate);
|
|
119
|
+
return {
|
|
120
|
+
paginate: options.paginate,
|
|
121
|
+
filters: { $select, $sort, $limit, $skip },
|
|
122
|
+
query
|
|
123
|
+
};
|
|
116
124
|
}
|
|
117
125
|
async _find(params = {}) {
|
|
118
126
|
const { filters, paginate } = this.filterQuery(params);
|
|
127
|
+
const { name, id } = this.getOptions(params);
|
|
119
128
|
const builder = params.knex ? params.knex.clone() : this.createQuery(params);
|
|
120
|
-
const countBuilder = builder.clone().clearSelect().clearOrder().count(`${
|
|
129
|
+
const countBuilder = builder.clone().clearSelect().clearOrder().count(`${name}.${id} as total`);
|
|
121
130
|
// Handle $limit
|
|
122
131
|
if (filters.$limit) {
|
|
123
132
|
builder.limit(filters.$limit);
|
|
@@ -128,7 +137,7 @@ class KnexAdapter extends adapter_commons_1.AdapterBase {
|
|
|
128
137
|
}
|
|
129
138
|
// provide default sorting if its not set
|
|
130
139
|
if (!filters.$sort) {
|
|
131
|
-
builder.orderBy(`${
|
|
140
|
+
builder.orderBy(`${name}.${id}`, 'asc');
|
|
132
141
|
}
|
|
133
142
|
const data = filters.$limit === 0 ? [] : await builder.catch(error_handler_1.errorHandler);
|
|
134
143
|
if (paginate && paginate.default) {
|
|
@@ -143,12 +152,13 @@ class KnexAdapter extends adapter_commons_1.AdapterBase {
|
|
|
143
152
|
return data;
|
|
144
153
|
}
|
|
145
154
|
async _findOrGet(id, params) {
|
|
155
|
+
const { name, id: idField } = this.getOptions(params);
|
|
146
156
|
const findParams = {
|
|
147
157
|
...params,
|
|
148
158
|
paginate: false,
|
|
149
159
|
query: {
|
|
150
160
|
...params === null || params === void 0 ? void 0 : params.query,
|
|
151
|
-
...(id !== null ? { [`${
|
|
161
|
+
...(id !== null ? { [`${name}.${idField}`]: id } : {})
|
|
152
162
|
}
|
|
153
163
|
};
|
|
154
164
|
return this._find(findParams);
|
|
@@ -172,26 +182,30 @@ class KnexAdapter extends adapter_commons_1.AdapterBase {
|
|
|
172
182
|
if (!id) {
|
|
173
183
|
return rows;
|
|
174
184
|
}
|
|
175
|
-
return this._get(id,
|
|
185
|
+
return this._get(id, {
|
|
186
|
+
...params,
|
|
187
|
+
query: commons_1._.pick((params === null || params === void 0 ? void 0 : params.query) || {}, '$select')
|
|
188
|
+
});
|
|
176
189
|
}
|
|
177
190
|
async _patch(id, raw, params = {}) {
|
|
178
191
|
var _a, _b;
|
|
179
192
|
if (id === null && !this.allowsMulti('patch', params)) {
|
|
180
193
|
throw new errors_1.MethodNotAllowed('Can not patch multiple entries');
|
|
181
194
|
}
|
|
195
|
+
const { name, id: idField } = this.getOptions(params);
|
|
182
196
|
const data = commons_1._.omit(raw, this.id);
|
|
183
197
|
const results = await this._findOrGet(id, {
|
|
184
198
|
...params,
|
|
185
199
|
query: {
|
|
186
200
|
...params === null || params === void 0 ? void 0 : params.query,
|
|
187
|
-
$select: [`${
|
|
201
|
+
$select: [`${name}.${idField}`]
|
|
188
202
|
}
|
|
189
203
|
});
|
|
190
|
-
const idList = results.map((current) => current[
|
|
204
|
+
const idList = results.map((current) => current[idField]);
|
|
191
205
|
const updateParams = {
|
|
192
206
|
...params,
|
|
193
207
|
query: {
|
|
194
|
-
[`${
|
|
208
|
+
[`${name}.${idField}`]: { $in: idList },
|
|
195
209
|
...(((_a = params === null || params === void 0 ? void 0 : params.query) === null || _a === void 0 ? void 0 : _a.$select) ? { $select: (_b = params === null || params === void 0 ? void 0 : params.query) === null || _b === void 0 ? void 0 : _b.$select } : {})
|
|
196
210
|
}
|
|
197
211
|
};
|
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/error-handler.js
CHANGED
|
@@ -66,7 +66,7 @@ function errorHandler(error) {
|
|
|
66
66
|
// NOTE: Error codes taken from
|
|
67
67
|
// https://www.postgresql.org/docs/9.6/static/errcodes-appendix.html
|
|
68
68
|
// Omit query information
|
|
69
|
-
const messages = error.message.split('-');
|
|
69
|
+
const messages = (error.message || '').split('-');
|
|
70
70
|
error.message = messages[messages.length - 1];
|
|
71
71
|
switch (error.code.slice(0, 2)) {
|
|
72
72
|
case '22':
|
package/lib/error-handler.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"error-handler.js","sourceRoot":"","sources":["../src/error-handler.ts"],"names":[],"mappings":";;;AAAA,+CAA2C;AAE9B,QAAA,KAAK,GAAG,MAAM,CAAC,wBAAwB,CAAC,CAAA;AAErD,SAAgB,YAAY,CAAC,KAAU;IACrC,MAAM,EAAE,OAAO,EAAE,GAAG,KAAK,CAAA;IACzB,IAAI,aAAa,GAAG,KAAK,CAAA;IAEzB,IAAI,KAAK,CAAC,QAAQ,IAAI,KAAK,CAAC,QAAQ,CAAC,MAAM,EAAE;QAC3C,kEAAkE;QAClE,MAAM,QAAQ,GAAG,CAAC,OAAO,GAAG,KAAK,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;QAEtE,QAAQ,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE;YAC5B,KAAK,IAAI;gBACP,aAAa,GAAG,IAAI,eAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAA;gBAC5C,MAAK;YACP,KAAK,IAAI;gBACP,aAAa,GAAG,IAAI,eAAM,CAAC,SAAS,CAAC,OAAO,CAAC,CAAA;gBAC7C,MAAK;YACP,KAAK,IAAI,CAAC;YACV,KAAK,IAAI,CAAC;YACV,KAAK,IAAI;gBACP,aAAa,GAAG,IAAI,eAAM,CAAC,WAAW,CAAC,OAAO,CAAC,CAAA;gBAC/C,MAAK;YACP,KAAK,IAAI,CAAC;YACV,KAAK,IAAI,CAAC;YACV,KAAK,IAAI,CAAC;YACV,KAAK,IAAI,CAAC;YACV,KAAK,IAAI,CAAC;YACV,KAAK,IAAI,CAAC;YACV,KAAK,IAAI,CAAC;YACV,KAAK,IAAI,CAAC;YACV,KAAK,IAAI;gBACP,aAAa,GAAG,IAAI,eAAM,CAAC,UAAU,CAAC,OAAO,CAAC,CAAA;gBAC9C,MAAK;YACP;gBACE,aAAa,GAAG,IAAI,eAAM,CAAC,YAAY,CAAC,OAAO,CAAC,CAAA;SACnD;KACF;SAAM,IAAI,KAAK,CAAC,IAAI,KAAK,cAAc,EAAE;QACxC,oCAAoC;QACpC,4CAA4C;QAC5C,QAAQ,KAAK,CAAC,KAAK,EAAE;YACnB,KAAK,CAAC,CAAC;YACP,KAAK,CAAC,CAAC;YACP,KAAK,EAAE,CAAC;YACR,KAAK,EAAE,CAAC;YACR,KAAK,EAAE;gBACL,aAAa,GAAG,IAAI,eAAM,CAAC,UAAU,CAAC,OAAO,CAAC,CAAA;gBAC9C,MAAK;YACP,KAAK,CAAC;gBACJ,aAAa,GAAG,IAAI,eAAM,CAAC,WAAW,CAAC,OAAO,CAAC,CAAA;gBAC/C,MAAK;YACP,KAAK,CAAC,CAAC;YACP,KAAK,EAAE;gBACL,aAAa,GAAG,IAAI,eAAM,CAAC,SAAS,CAAC,OAAO,CAAC,CAAA;gBAC7C,MAAK;YACP,KAAK,EAAE;gBACL,aAAa,GAAG,IAAI,eAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAA;gBAC5C,MAAK;YACP;gBACE,aAAa,GAAG,IAAI,eAAM,CAAC,YAAY,CAAC,OAAO,CAAC,CAAA;gBAChD,MAAK;SACR;KACF;SAAM,IAAI,OAAO,KAAK,CAAC,IAAI,KAAK,QAAQ,IAAI,KAAK,CAAC,QAAQ,IAAI,KAAK,CAAC,OAAO,EAAE;QAC5E,+BAA+B;QAC/B,oEAAoE;QACpE,yBAAyB;QACzB,MAAM,QAAQ,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;
|
|
1
|
+
{"version":3,"file":"error-handler.js","sourceRoot":"","sources":["../src/error-handler.ts"],"names":[],"mappings":"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"}
|
package/lib/hooks.js
CHANGED
|
@@ -5,7 +5,7 @@ const commons_1 = require("@feathersjs/commons");
|
|
|
5
5
|
const debug = (0, commons_1.createDebug)('feathers-knex-transaction');
|
|
6
6
|
const ROLLBACK = { rollback: true };
|
|
7
7
|
const getKnex = (context) => {
|
|
8
|
-
const knex = context.service.
|
|
8
|
+
const knex = typeof context.service.getModel === 'function' && context.service.getModel(context.params);
|
|
9
9
|
return knex && typeof knex.transaction === 'function' ? knex : undefined;
|
|
10
10
|
};
|
|
11
11
|
exports.getKnex = getKnex;
|
package/lib/hooks.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hooks.js","sourceRoot":"","sources":["../src/hooks.ts"],"names":[],"mappings":";;;AAAA,iDAAiD;AAKjD,MAAM,KAAK,GAAG,IAAA,qBAAW,EAAC,2BAA2B,CAAC,CAAA;AAEtD,MAAM,QAAQ,GAAG,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAA;AAE5B,MAAM,OAAO,GAAG,CAAC,OAAoB,EAAQ,EAAE;IACpD,MAAM,IAAI,GAAG,OAAO,CAAC,OAAO,CAAC,KAAK,CAAA;
|
|
1
|
+
{"version":3,"file":"hooks.js","sourceRoot":"","sources":["../src/hooks.ts"],"names":[],"mappings":"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"}
|
package/lib/index.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { PaginationOptions } from '@feathersjs/adapter-commons';
|
|
2
|
-
import { Paginated, ServiceMethods, Id, Params } from '@feathersjs/feathers';
|
|
2
|
+
import { Paginated, ServiceMethods, Id, NullableId, Params } from '@feathersjs/feathers';
|
|
3
3
|
import { KnexAdapter } from './adapter';
|
|
4
4
|
import { KnexAdapterParams } from './declarations';
|
|
5
5
|
export * from './declarations';
|
|
@@ -17,9 +17,12 @@ export declare class KnexService<Result = any, Data = Partial<Result>, ServicePa
|
|
|
17
17
|
get(id: Id, params?: ServiceParams): Promise<Result>;
|
|
18
18
|
create(data: Data, params?: ServiceParams): Promise<Result>;
|
|
19
19
|
create(data: Data[], params?: ServiceParams): Promise<Result[]>;
|
|
20
|
+
create(data: Data | Data[], params?: ServiceParams): Promise<Result | Result[]>;
|
|
20
21
|
update(id: Id, data: Data, params?: ServiceParams): Promise<Result>;
|
|
21
22
|
patch(id: Id, data: PatchData, params?: ServiceParams): Promise<Result>;
|
|
22
23
|
patch(id: null, data: PatchData, params?: ServiceParams): Promise<Result[]>;
|
|
24
|
+
patch(id: NullableId, data: PatchData, params?: ServiceParams): Promise<Result | Result[]>;
|
|
23
25
|
remove(id: Id, params?: ServiceParams): Promise<Result>;
|
|
24
26
|
remove(id: null, params?: ServiceParams): Promise<Result[]>;
|
|
27
|
+
remove(id: NullableId, params?: ServiceParams): Promise<Result | Result[]>;
|
|
25
28
|
}
|
package/lib/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,gDAAyD;AAEzD,uCAAuC;AAGvC,iDAA8B;AAC9B,4CAAyB;AACzB,kDAA+B;AAC/B,uDAAsC;AAEtC,MAAa,WAMX,SAAQ,qBAAmD;IAM3D,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,EAAM,EAAE,MAAsB;QACtC,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;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,gDAAyD;AAEzD,uCAAuC;AAGvC,iDAA8B;AAC9B,4CAAyB;AACzB,kDAA+B;AAC/B,uDAAsC;AAEtC,MAAa,WAMX,SAAQ,qBAAmD;IAM3D,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,EAAM,EAAE,MAAsB;QACtC,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,EAAM,EAAE,IAAU,EAAE,MAAsB;QACrD,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,EAAc,EAAE,IAAe,EAAE,MAAsB;QACjE,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,EAAc,EAAE,MAAsB;QACjD,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;AAnED,kCAmEC"}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@feathersjs/knex",
|
|
3
3
|
"description": "Feathers SQL service adapter using KnexJS",
|
|
4
|
-
"version": "5.0.0-pre.
|
|
4
|
+
"version": "5.0.0-pre.36",
|
|
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,24 +51,25 @@
|
|
|
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.36",
|
|
55
|
+
"@feathersjs/commons": "^5.0.0-pre.36",
|
|
56
|
+
"@feathersjs/errors": "^5.0.0-pre.36",
|
|
57
|
+
"@feathersjs/feathers": "^5.0.0-pre.36"
|
|
58
58
|
},
|
|
59
59
|
"peerDependencies": {
|
|
60
60
|
"knex": "^2.3.0"
|
|
61
61
|
},
|
|
62
62
|
"devDependencies": {
|
|
63
|
-
"@feathersjs/adapter-tests": "^5.0.0-pre.
|
|
63
|
+
"@feathersjs/adapter-tests": "^5.0.0-pre.36",
|
|
64
|
+
"@feathersjs/schema": "^5.0.0-pre.36",
|
|
64
65
|
"@types/mocha": "^10.0.1",
|
|
65
|
-
"@types/node": "^18.11.
|
|
66
|
-
"knex": "^2.
|
|
67
|
-
"mocha": "^10.
|
|
68
|
-
"pg": "^8.
|
|
66
|
+
"@types/node": "^18.11.18",
|
|
67
|
+
"knex": "^2.4.2",
|
|
68
|
+
"mocha": "^10.2.0",
|
|
69
|
+
"pg": "^8.9.0",
|
|
69
70
|
"shx": "^0.3.4",
|
|
70
|
-
"sqlite3": "^5.1.
|
|
71
|
-
"typescript": "^4.9.
|
|
71
|
+
"sqlite3": "^5.1.4",
|
|
72
|
+
"typescript": "^4.9.4"
|
|
72
73
|
},
|
|
73
|
-
"gitHead": "
|
|
74
|
+
"gitHead": "9a107b463cc80d7f3c28553c908987e05b0b634a"
|
|
74
75
|
}
|
package/src/adapter.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { Id, NullableId, Paginated, Query } from '@feathersjs/feathers'
|
|
2
2
|
import { _ } from '@feathersjs/commons'
|
|
3
|
-
import { AdapterBase, PaginationOptions,
|
|
3
|
+
import { AdapterBase, PaginationOptions, AdapterQuery, getLimit } from '@feathersjs/adapter-commons'
|
|
4
4
|
import { BadRequest, MethodNotAllowed, NotFound } from '@feathersjs/errors'
|
|
5
5
|
import { Knex } from 'knex'
|
|
6
6
|
|
|
@@ -32,7 +32,6 @@ export class KnexAdapter<
|
|
|
32
32
|
ServiceParams extends KnexAdapterParams<any> = KnexAdapterParams,
|
|
33
33
|
PatchData = Partial<Data>
|
|
34
34
|
> extends AdapterBase<Result, Data, PatchData, ServiceParams, KnexAdapterOptions> {
|
|
35
|
-
table: string
|
|
36
35
|
schema?: string
|
|
37
36
|
|
|
38
37
|
constructor(options: KnexAdapterOptions) {
|
|
@@ -51,30 +50,34 @@ export class KnexAdapter<
|
|
|
51
50
|
...options.filters,
|
|
52
51
|
$and: (value: any) => value
|
|
53
52
|
},
|
|
54
|
-
operators: [...(options.operators || []), '$like', '$notlike', '$ilike'
|
|
53
|
+
operators: [...(options.operators || []), '$like', '$notlike', '$ilike']
|
|
55
54
|
})
|
|
55
|
+
}
|
|
56
56
|
|
|
57
|
-
|
|
58
|
-
|
|
57
|
+
get fullName() {
|
|
58
|
+
const { name, schema } = this.getOptions({} as ServiceParams)
|
|
59
|
+
return schema ? `${schema}.${name}` : name
|
|
59
60
|
}
|
|
60
61
|
|
|
61
62
|
get Model() {
|
|
62
|
-
return this.
|
|
63
|
+
return this.getModel()
|
|
63
64
|
}
|
|
64
65
|
|
|
65
|
-
|
|
66
|
-
|
|
66
|
+
getModel(params?: ServiceParams) {
|
|
67
|
+
const { Model } = this.getOptions(params)
|
|
68
|
+
return Model
|
|
67
69
|
}
|
|
68
70
|
|
|
69
71
|
db(params?: ServiceParams) {
|
|
70
|
-
const { Model,
|
|
72
|
+
const { Model, name, schema } = this.getOptions(params)
|
|
71
73
|
|
|
72
74
|
if (params && params.transaction && params.transaction.trx) {
|
|
73
75
|
const { trx } = params.transaction
|
|
74
76
|
// debug('ran %s with transaction %s', fullName, id)
|
|
75
|
-
return schema ? (trx.withSchema(schema).table(
|
|
77
|
+
return schema ? (trx.withSchema(schema).table(name) as Knex.QueryBuilder) : trx(name)
|
|
76
78
|
}
|
|
77
|
-
|
|
79
|
+
|
|
80
|
+
return schema ? (Model.withSchema(schema).table(name) as Knex.QueryBuilder) : Model(name)
|
|
78
81
|
}
|
|
79
82
|
|
|
80
83
|
knexify(knexQuery: Knex.QueryBuilder, query: Query = {}, parentKey?: string): Knex.QueryBuilder {
|
|
@@ -116,16 +119,16 @@ export class KnexAdapter<
|
|
|
116
119
|
}
|
|
117
120
|
|
|
118
121
|
createQuery(params: ServiceParams) {
|
|
119
|
-
const {
|
|
122
|
+
const { name, id } = this.getOptions(params)
|
|
120
123
|
const { filters, query } = this.filterQuery(params)
|
|
121
124
|
const builder = this.db(params)
|
|
122
125
|
|
|
123
126
|
// $select uses a specific find syntax, so it has to come first.
|
|
124
127
|
if (filters.$select) {
|
|
125
128
|
// always select the id field, but make sure we only select it once
|
|
126
|
-
builder.select(...new Set([...filters.$select, `${
|
|
129
|
+
builder.select(...new Set([...filters.$select, `${name}.${id}`]))
|
|
127
130
|
} else {
|
|
128
|
-
builder.select(`${
|
|
131
|
+
builder.select(`${name}.*`)
|
|
129
132
|
}
|
|
130
133
|
|
|
131
134
|
// build up the knex query out of the query params, include $and and $or filters
|
|
@@ -147,9 +150,14 @@ export class KnexAdapter<
|
|
|
147
150
|
|
|
148
151
|
filterQuery(params: ServiceParams) {
|
|
149
152
|
const options = this.getOptions(params)
|
|
150
|
-
const {
|
|
153
|
+
const { $select, $sort, $limit: _limit, $skip = 0, ...query } = (params.query || {}) as AdapterQuery
|
|
154
|
+
const $limit = getLimit(_limit, options.paginate)
|
|
151
155
|
|
|
152
|
-
return {
|
|
156
|
+
return {
|
|
157
|
+
paginate: options.paginate,
|
|
158
|
+
filters: { $select, $sort, $limit, $skip },
|
|
159
|
+
query
|
|
160
|
+
}
|
|
153
161
|
}
|
|
154
162
|
|
|
155
163
|
async _find(params?: ServiceParams & { paginate?: PaginationOptions }): Promise<Paginated<Result>>
|
|
@@ -157,8 +165,9 @@ export class KnexAdapter<
|
|
|
157
165
|
async _find(params?: ServiceParams): Promise<Paginated<Result> | Result[]>
|
|
158
166
|
async _find(params: ServiceParams = {} as ServiceParams): Promise<Paginated<Result> | Result[]> {
|
|
159
167
|
const { filters, paginate } = this.filterQuery(params)
|
|
168
|
+
const { name, id } = this.getOptions(params)
|
|
160
169
|
const builder = params.knex ? params.knex.clone() : this.createQuery(params)
|
|
161
|
-
const countBuilder = builder.clone().clearSelect().clearOrder().count(`${
|
|
170
|
+
const countBuilder = builder.clone().clearSelect().clearOrder().count(`${name}.${id} as total`)
|
|
162
171
|
|
|
163
172
|
// Handle $limit
|
|
164
173
|
if (filters.$limit) {
|
|
@@ -172,7 +181,7 @@ export class KnexAdapter<
|
|
|
172
181
|
|
|
173
182
|
// provide default sorting if its not set
|
|
174
183
|
if (!filters.$sort) {
|
|
175
|
-
builder.orderBy(`${
|
|
184
|
+
builder.orderBy(`${name}.${id}`, 'asc')
|
|
176
185
|
}
|
|
177
186
|
|
|
178
187
|
const data = filters.$limit === 0 ? [] : await builder.catch(errorHandler)
|
|
@@ -192,12 +201,13 @@ export class KnexAdapter<
|
|
|
192
201
|
}
|
|
193
202
|
|
|
194
203
|
async _findOrGet(id: NullableId, params?: ServiceParams) {
|
|
204
|
+
const { name, id: idField } = this.getOptions(params)
|
|
195
205
|
const findParams = {
|
|
196
206
|
...params,
|
|
197
207
|
paginate: false,
|
|
198
208
|
query: {
|
|
199
209
|
...params?.query,
|
|
200
|
-
...(id !== null ? { [`${
|
|
210
|
+
...(id !== null ? { [`${name}.${idField}`]: id } : {})
|
|
201
211
|
}
|
|
202
212
|
}
|
|
203
213
|
|
|
@@ -236,7 +246,10 @@ export class KnexAdapter<
|
|
|
236
246
|
return rows as Result[]
|
|
237
247
|
}
|
|
238
248
|
|
|
239
|
-
return this._get(id,
|
|
249
|
+
return this._get(id, {
|
|
250
|
+
...params,
|
|
251
|
+
query: _.pick(params?.query || {}, '$select')
|
|
252
|
+
})
|
|
240
253
|
}
|
|
241
254
|
|
|
242
255
|
async _patch(id: null, data: PatchData, params?: ServiceParams): Promise<Result[]>
|
|
@@ -251,19 +264,20 @@ export class KnexAdapter<
|
|
|
251
264
|
throw new MethodNotAllowed('Can not patch multiple entries')
|
|
252
265
|
}
|
|
253
266
|
|
|
267
|
+
const { name, id: idField } = this.getOptions(params)
|
|
254
268
|
const data = _.omit(raw, this.id)
|
|
255
269
|
const results = await this._findOrGet(id, {
|
|
256
270
|
...params,
|
|
257
271
|
query: {
|
|
258
272
|
...params?.query,
|
|
259
|
-
$select: [`${
|
|
273
|
+
$select: [`${name}.${idField}`]
|
|
260
274
|
}
|
|
261
275
|
})
|
|
262
|
-
const idList = results.map((current: any) => current[
|
|
276
|
+
const idList = results.map((current: any) => current[idField])
|
|
263
277
|
const updateParams = {
|
|
264
278
|
...params,
|
|
265
279
|
query: {
|
|
266
|
-
[`${
|
|
280
|
+
[`${name}.${idField}`]: { $in: idList },
|
|
267
281
|
...(params?.query?.$select ? { $select: params?.query?.$select } : {})
|
|
268
282
|
}
|
|
269
283
|
}
|
package/src/error-handler.ts
CHANGED
|
@@ -65,7 +65,8 @@ export function errorHandler(error: any) {
|
|
|
65
65
|
// NOTE: Error codes taken from
|
|
66
66
|
// https://www.postgresql.org/docs/9.6/static/errcodes-appendix.html
|
|
67
67
|
// Omit query information
|
|
68
|
-
const messages = error.message.split('-')
|
|
68
|
+
const messages = (error.message || '').split('-')
|
|
69
|
+
|
|
69
70
|
error.message = messages[messages.length - 1]
|
|
70
71
|
|
|
71
72
|
switch (error.code.slice(0, 2)) {
|
package/src/hooks.ts
CHANGED
|
@@ -8,7 +8,7 @@ const debug = createDebug('feathers-knex-transaction')
|
|
|
8
8
|
const ROLLBACK = { rollback: true }
|
|
9
9
|
|
|
10
10
|
export const getKnex = (context: HookContext): Knex => {
|
|
11
|
-
const knex = context.service.
|
|
11
|
+
const knex = typeof context.service.getModel === 'function' && context.service.getModel(context.params)
|
|
12
12
|
|
|
13
13
|
return knex && typeof knex.transaction === 'function' ? knex : undefined
|
|
14
14
|
}
|
|
@@ -45,7 +45,6 @@ export const start =
|
|
|
45
45
|
transaction.id = Date.now()
|
|
46
46
|
|
|
47
47
|
context.params = { ...context.params, transaction }
|
|
48
|
-
|
|
49
48
|
debug('started a new transaction %s', transaction.id)
|
|
50
49
|
|
|
51
50
|
resolve()
|
package/src/index.ts
CHANGED
|
@@ -37,6 +37,7 @@ export class KnexService<
|
|
|
37
37
|
|
|
38
38
|
async create(data: Data, params?: ServiceParams): Promise<Result>
|
|
39
39
|
async create(data: Data[], params?: ServiceParams): Promise<Result[]>
|
|
40
|
+
async create(data: Data | Data[], params?: ServiceParams): Promise<Result | Result[]>
|
|
40
41
|
async create(data: Data | Data[], params?: ServiceParams): Promise<Result | Result[]> {
|
|
41
42
|
if (Array.isArray(data) && !this.allowsMulti('create', params)) {
|
|
42
43
|
throw new MethodNotAllowed('Can not create multiple entries')
|
|
@@ -54,6 +55,7 @@ export class KnexService<
|
|
|
54
55
|
|
|
55
56
|
async patch(id: Id, data: PatchData, params?: ServiceParams): Promise<Result>
|
|
56
57
|
async patch(id: null, data: PatchData, params?: ServiceParams): Promise<Result[]>
|
|
58
|
+
async patch(id: NullableId, data: PatchData, params?: ServiceParams): Promise<Result | Result[]>
|
|
57
59
|
async patch(id: NullableId, data: PatchData, params?: ServiceParams): Promise<Result | Result[]> {
|
|
58
60
|
const { $limit, ...query } = await this.sanitizeQuery(params)
|
|
59
61
|
|
|
@@ -65,6 +67,7 @@ export class KnexService<
|
|
|
65
67
|
|
|
66
68
|
async remove(id: Id, params?: ServiceParams): Promise<Result>
|
|
67
69
|
async remove(id: null, params?: ServiceParams): Promise<Result[]>
|
|
70
|
+
async remove(id: NullableId, params?: ServiceParams): Promise<Result | Result[]>
|
|
68
71
|
async remove(id: NullableId, params?: ServiceParams): Promise<Result | Result[]> {
|
|
69
72
|
const { $limit, ...query } = await this.sanitizeQuery(params)
|
|
70
73
|
|