@feathersjs/knex 5.0.1 → 5.0.3

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 CHANGED
@@ -3,6 +3,15 @@
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.3](https://github.com/feathersjs/feathers/compare/v5.0.2...v5.0.3) (2023-04-05)
7
+
8
+ ### Bug Fixes
9
+
10
+ - **dependencies:** Update all dependencies ([#3139](https://github.com/feathersjs/feathers/issues/3139)) ([f24276e](https://github.com/feathersjs/feathers/commit/f24276e9a909e2e58a0730c730258ce1f70f4028))
11
+ - **knex:** Ensure that columns are selected unambigiously and avoid duplicate id selection ([#3144](https://github.com/feathersjs/feathers/issues/3144)) ([3eb7428](https://github.com/feathersjs/feathers/commit/3eb7428f888f0e8a0fbc09f5261bff3e68a0ed63))
12
+ - **knex:** Get by id and transactions should work with params.knex ([#3146](https://github.com/feathersjs/feathers/issues/3146)) ([b172b5e](https://github.com/feathersjs/feathers/commit/b172b5ea9b461642874eb7d2ba01dc4cfc275155))
13
+ - **knex:** Only apply default order for MSSQL ([#3145](https://github.com/feathersjs/feathers/issues/3145)) ([28c2627](https://github.com/feathersjs/feathers/commit/28c26279befea6cf43cedd3af628234b170b8c91))
14
+
6
15
  ## [5.0.1](https://github.com/feathersjs/feathers/compare/v5.0.0...v5.0.1) (2023-03-15)
7
16
 
8
17
  ### Bug Fixes
package/lib/adapter.d.ts CHANGED
@@ -10,7 +10,7 @@ export declare class KnexAdapter<Result, Data = Partial<Result>, ServiceParams e
10
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
- createQuery(params: ServiceParams): Knex.QueryBuilder<any, any>;
13
+ createQuery(params?: ServiceParams): Knex.QueryBuilder<any, any>;
14
14
  filterQuery(params: ServiceParams): {
15
15
  paginate: import("@feathersjs/feathers").PaginationParams;
16
16
  filters: {
package/lib/adapter.js CHANGED
@@ -89,14 +89,15 @@ class KnexAdapter extends adapter_commons_1.AdapterBase {
89
89
  : currentQuery.where(column, operator, value);
90
90
  }, knexQuery);
91
91
  }
92
- createQuery(params) {
92
+ createQuery(params = {}) {
93
93
  const { name, id } = this.getOptions(params);
94
94
  const { filters, query } = this.filterQuery(params);
95
95
  const builder = this.db(params);
96
96
  // $select uses a specific find syntax, so it has to come first.
97
97
  if (filters.$select) {
98
+ const select = filters.$select.map((column) => (column.includes('.') ? column : `${name}.${column}`));
98
99
  // always select the id field, but make sure we only select it once
99
- builder.select(...new Set([...filters.$select, `${name}.${id}`]));
100
+ builder.select(...new Set([...select, `${name}.${id}`]));
100
101
  }
101
102
  else {
102
103
  builder.select(`${name}.*`);
@@ -136,7 +137,7 @@ class KnexAdapter extends adapter_commons_1.AdapterBase {
136
137
  builder.offset(filters.$skip);
137
138
  }
138
139
  // provide default sorting if its not set
139
- if (!filters.$sort) {
140
+ if (!filters.$sort && builder.client.driverName === 'mssql') {
140
141
  builder.orderBy(`${name}.${id}`, 'asc');
141
142
  }
142
143
  const data = filters.$limit === 0 ? [] : await builder.catch(error_handler_1.errorHandler);
@@ -152,16 +153,16 @@ class KnexAdapter extends adapter_commons_1.AdapterBase {
152
153
  return data;
153
154
  }
154
155
  async _findOrGet(id, params) {
155
- const { name, id: idField } = this.getOptions(params);
156
- const findParams = {
156
+ if (id !== null) {
157
+ const { name, id: idField } = this.getOptions(params);
158
+ const builder = params.knex ? params.knex.clone() : this.createQuery(params);
159
+ const idQuery = builder.andWhere(`${name}.${idField}`, '=', id).catch(error_handler_1.errorHandler);
160
+ return idQuery;
161
+ }
162
+ return this._find({
157
163
  ...params,
158
- paginate: false,
159
- query: {
160
- ...params === null || params === void 0 ? void 0 : params.query,
161
- ...(id !== null ? { [`${name}.${idField}`]: id } : {})
162
- }
163
- };
164
- return this._find(findParams);
164
+ paginate: false
165
+ });
165
166
  }
166
167
  async _get(id, params = {}) {
167
168
  const data = await this._findOrGet(id, params);
@@ -175,7 +176,7 @@ class KnexAdapter extends adapter_commons_1.AdapterBase {
175
176
  if (Array.isArray(data)) {
176
177
  return Promise.all(data.map((current) => this._create(current, params)));
177
178
  }
178
- const client = this.db(params).client.config.client;
179
+ const { client } = this.db(params).client.config;
179
180
  const returning = RETURNING_CLIENTS.includes(client) ? [this.id] : [];
180
181
  const rows = await this.db(params).insert(data, returning).catch(error_handler_1.errorHandler);
181
182
  const id = data[this.id] || rows[0][this.id] || rows[0];
@@ -1 +1 @@
1
- {"version":3,"file":"adapter.js","sourceRoot":"","sources":["../src/adapter.ts"],"names":[],"mappings":";;;AACA,iDAAuC;AACvC,iEAAoG;AACpG,+CAA2E;AAG3E,mDAA8C;AAE9C,MAAM,OAAO,GAAG;IACd,GAAG,EAAE,UAAU;IACf,GAAG,EAAE,SAAS;IACd,IAAI,EAAE,YAAY;IAClB,GAAG,EAAE,SAAS;IACd,IAAI,EAAE,UAAU;CACjB,CAAA;AAED,MAAM,SAAS,GAAG;IAChB,GAAG,EAAE,GAAG;IACR,IAAI,EAAE,IAAI;IACV,GAAG,EAAE,GAAG;IACR,IAAI,EAAE,IAAI;IACV,KAAK,EAAE,MAAM;IACb,QAAQ,EAAE,UAAU;IACpB,MAAM,EAAE,OAAO;CAChB,CAAA;AAED,MAAM,iBAAiB,GAAG,CAAC,YAAY,EAAE,IAAI,EAAE,UAAU,EAAE,OAAO,CAAC,CAAA;AAEnE,MAAa,WAKX,SAAQ,6BAAuE;IAG/E,YAAY,OAA2B;QACrC,IAAI,CAAC,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE;YAC9B,MAAM,IAAI,KAAK,CAAC,wDAAwD,CAAC,CAAA;SAC1E;QAED,IAAI,OAAO,OAAO,CAAC,IAAI,KAAK,QAAQ,EAAE;YACpC,MAAM,IAAI,KAAK,CAAC,0BAA0B,CAAC,CAAA;SAC5C;QAED,KAAK,CAAC;YACJ,EAAE,EAAE,IAAI;YACR,GAAG,OAAO;YACV,OAAO,EAAE;gBACP,GAAG,OAAO,CAAC,OAAO;gBAClB,IAAI,EAAE,CAAC,KAAU,EAAE,EAAE,CAAC,KAAK;aAC5B;YACD,SAAS,EAAE,CAAC,GAAG,CAAC,OAAO,CAAC,SAAS,IAAI,EAAE,CAAC,EAAE,OAAO,EAAE,UAAU,EAAE,QAAQ,CAAC;SACzE,CAAC,CAAA;IACJ,CAAC;IAED,IAAI,QAAQ;QACV,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,EAAmB,CAAC,CAAA;QAC7D,OAAO,MAAM,CAAC,CAAC,CAAC,GAAG,MAAM,IAAI,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,CAAA;IAC5C,CAAC;IAED,IAAI,KAAK;QACP,OAAO,IAAI,CAAC,QAAQ,EAAE,CAAA;IACxB,CAAC;IAED,QAAQ,CAAC,SAAwB,EAAmB;QAClD,MAAM,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAA;QACzC,OAAO,KAAK,CAAA;IACd,CAAC;IAED,EAAE,CAAC,MAAsB;QACvB,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAA;QAEvD,IAAI,MAAM,IAAI,MAAM,CAAC,WAAW,IAAI,MAAM,CAAC,WAAW,CAAC,GAAG,EAAE;YAC1D,MAAM,EAAE,GAAG,EAAE,GAAG,MAAM,CAAC,WAAW,CAAA;YAClC,oDAAoD;YACpD,OAAO,MAAM,CAAC,CAAC,CAAE,GAAG,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,IAAI,CAAuB,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;SACtF;QAED,OAAO,MAAM,CAAC,CAAC,CAAE,KAAK,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,IAAI,CAAuB,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;IAC3F,CAAC;IAED,OAAO,CAAC,SAA4B,EAAE,QAAe,EAAE,EAAE,SAAkB;QACzE,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QAEvC,OAAO,MAAM,CAAC,IAAI,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,YAAY,EAAE,GAAG,EAAE,EAAE;YAC3D,MAAM,KAAK,GAAG,KAAK,CAAC,GAAG,CAAC,CAAA;YAExB,IAAI,WAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE;gBACrB,OAAO,OAAO,CAAC,YAAY,EAAE,KAAK,EAAE,GAAG,CAAC,CAAA;aACzC;YAED,MAAM,MAAM,GAAG,SAAS,IAAI,GAAG,CAAA;YAC/B,MAAM,MAAM,GAAG,OAAO,CAAC,GAA2B,CAAC,CAAA;YAEnD,IAAI,MAAM,EAAE;gBACV,IAAI,GAAG,KAAK,KAAK,IAAI,GAAG,KAAK,MAAM,EAAE;oBACnC,kCAAkC;oBAClC,YAAY,CAAC,KAAK,CAAC;wBACjB,KAAK,MAAM,SAAS,IAAI,KAAK,EAAE;4BAC7B,IAAI,CAAC,MAAM,CAAC,CAAC;gCACX,OAAO,CAAC,IAAI,EAAE,SAAS,CAAC,CAAA;4BAC1B,CAAC,CAAC,CAAA;yBACH;oBACH,CAAC,CAAC,CAAA;oBAEF,OAAO,YAAY,CAAA;iBACpB;gBAED,OAAQ,YAAoB,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,KAAK,CAAC,CAAA;aACpD;YAED,MAAM,QAAQ,GAAG,SAAS,CAAC,GAA6B,CAAC,IAAI,GAAG,CAAA;YAEhE,OAAO,QAAQ,KAAK,GAAG;gBACrB,CAAC,CAAC,YAAY,CAAC,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC;gBACnC,CAAC,CAAC,YAAY,CAAC,KAAK,CAAC,MAAM,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAA;QACjD,CAAC,EAAE,SAAS,CAAC,CAAA;IACf,CAAC;IAED,WAAW,CAAC,MAAqB;QAC/B,MAAM,EAAE,IAAI,EAAE,EAAE,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAA;QAC5C,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,CAAA;QACnD,MAAM,OAAO,GAAG,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,CAAA;QAE/B,gEAAgE;QAChE,IAAI,OAAO,CAAC,OAAO,EAAE;YACnB,mEAAmE;YACnE,OAAO,CAAC,MAAM,CAAC,GAAG,IAAI,GAAG,CAAC,CAAC,GAAG,OAAO,CAAC,OAAO,EAAE,GAAG,IAAI,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC,CAAA;SAClE;aAAM;YACL,OAAO,CAAC,MAAM,CAAC,GAAG,IAAI,IAAI,CAAC,CAAA;SAC5B;QAED,gFAAgF;QAChF,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE;YACpB,GAAG,KAAK;YACR,GAAG,WAAC,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC;SAClC,CAAC,CAAA;QAEF,eAAe;QACf,IAAI,OAAO,CAAC,KAAK,EAAE;YACjB,OAAO,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,MAAM,CACtC,CAAC,YAAY,EAAE,GAAG,EAAE,EAAE,CAAC,YAAY,CAAC,OAAO,CAAC,GAAG,EAAE,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,EAC3F,OAAO,CACR,CAAA;SACF;QAED,OAAO,OAAO,CAAA;IAChB,CAAC;IAED,WAAW,CAAC,MAAqB;QAC/B,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAA;QACvC,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,GAAG,CAAC,EAAE,GAAG,KAAK,EAAE,GAAG,CAAC,MAAM,CAAC,KAAK,IAAI,EAAE,CAAiB,CAAA;QACpG,MAAM,MAAM,GAAG,IAAA,0BAAQ,EAAC,MAAM,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAA;QAEjD,OAAO;YACL,QAAQ,EAAE,OAAO,CAAC,QAAQ;YAC1B,OAAO,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE;YAC1C,KAAK;SACN,CAAA;IACH,CAAC;IAKD,KAAK,CAAC,KAAK,CAAC,SAAwB,EAAmB;QACrD,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,GAAG,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,CAAA;QACtD,MAAM,EAAE,IAAI,EAAE,EAAE,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAA;QAC5C,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,CAAA;QAC5E,MAAM,YAAY,GAAG,OAAO,CAAC,KAAK,EAAE,CAAC,WAAW,EAAE,CAAC,UAAU,EAAE,CAAC,KAAK,CAAC,GAAG,IAAI,IAAI,EAAE,WAAW,CAAC,CAAA;QAE/F,gBAAgB;QAChB,IAAI,OAAO,CAAC,MAAM,EAAE;YAClB,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAA;SAC9B;QAED,eAAe;QACf,IAAI,OAAO,CAAC,KAAK,EAAE;YACjB,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAA;SAC9B;QAED,yCAAyC;QACzC,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE;YAClB,OAAO,CAAC,OAAO,CAAC,GAAG,IAAI,IAAI,EAAE,EAAE,EAAE,KAAK,CAAC,CAAA;SACxC;QAED,MAAM,IAAI,GAAG,OAAO,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,OAAO,CAAC,KAAK,CAAC,4BAAY,CAAC,CAAA;QAE1E,IAAI,QAAQ,IAAI,QAAQ,CAAC,OAAO,EAAE;YAChC,MAAM,KAAK,GAAG,MAAM,YAAY,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;YAEzF,OAAO;gBACL,KAAK;gBACL,KAAK,EAAE,OAAO,CAAC,MAAM;gBACrB,IAAI,EAAE,OAAO,CAAC,KAAK,IAAI,CAAC;gBACxB,IAAI;aACL,CAAA;SACF;QAED,OAAO,IAAI,CAAA;IACb,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,EAAc,EAAE,MAAsB;QACrD,MAAM,EAAE,IAAI,EAAE,EAAE,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAA;QACrD,MAAM,UAAU,GAAG;YACjB,GAAG,MAAM;YACT,QAAQ,EAAE,KAAK;YACf,KAAK,EAAE;gBACL,GAAG,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,KAAK;gBAChB,GAAG,CAAC,EAAE,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,IAAI,IAAI,OAAO,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aACvD;SACF,CAAA;QAED,OAAO,IAAI,CAAC,KAAK,CAAC,UAAiB,CAA6B,CAAA;IAClE,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,EAAM,EAAE,SAAwB,EAAmB;QAC5D,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,EAAE,EAAE,MAAM,CAAC,CAAA;QAE9C,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE;YACrB,MAAM,IAAI,iBAAQ,CAAC,2BAA2B,EAAE,GAAG,CAAC,CAAA;SACrD;QAED,OAAO,IAAI,CAAC,CAAC,CAAC,CAAA;IAChB,CAAC;IAKD,KAAK,CAAC,OAAO,CACX,KAAoB,EACpB,SAAwB,EAAmB;QAE3C,MAAM,IAAI,GAAG,KAAY,CAAA;QAEzB,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;YACvB,OAAO,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC,CAAA;SACzE;QAED,MAAM,MAAM,GAAG,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAA;QACnD,MAAM,SAAS,GAAG,iBAAiB,CAAC,QAAQ,CAAC,MAAgB,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAA;QAC/E,MAAM,IAAI,GAAQ,MAAM,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC,KAAK,CAAC,4BAAY,CAAC,CAAA;QACnF,MAAM,EAAE,GAAG,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,CAAA;QAEvD,IAAI,CAAC,EAAE,EAAE;YACP,OAAO,IAAgB,CAAA;SACxB;QAED,OAAO,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE;YACnB,GAAG,MAAM;YACT,KAAK,EAAE,WAAC,CAAC,IAAI,CAAC,CAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,KAAK,KAAI,EAAE,EAAE,SAAS,CAAC;SAC9C,CAAC,CAAA;IACJ,CAAC;IAKD,KAAK,CAAC,MAAM,CACV,EAAc,EACd,GAAc,EACd,SAAwB,EAAmB;;QAE3C,IAAI,EAAE,KAAK,IAAI,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE,MAAM,CAAC,EAAE;YACrD,MAAM,IAAI,yBAAgB,CAAC,gCAAgC,CAAC,CAAA;SAC7D;QAED,MAAM,EAAE,IAAI,EAAE,EAAE,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAA;QACrD,MAAM,IAAI,GAAG,WAAC,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,EAAE,CAAC,CAAA;QACjC,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,EAAE,EAAE;YACxC,GAAG,MAAM;YACT,KAAK,EAAE;gBACL,GAAG,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,KAAK;gBAChB,OAAO,EAAE,CAAC,GAAG,IAAI,IAAI,OAAO,EAAE,CAAC;aAChC;SACF,CAAC,CAAA;QACF,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,OAAY,EAAE,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAA;QAC9D,MAAM,YAAY,GAAG;YACnB,GAAG,MAAM;YACT,KAAK,EAAE;gBACL,CAAC,GAAG,IAAI,IAAI,OAAO,EAAE,CAAC,EAAE,EAAE,GAAG,EAAE,MAAM,EAAE;gBACvC,GAAG,CAAC,CAAA,MAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,KAAK,0CAAE,OAAO,EAAC,CAAC,CAAC,EAAE,OAAO,EAAE,MAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,KAAK,0CAAE,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aACvE;SACF,CAAA;QACD,MAAM,OAAO,GAAG,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC,CAAA;QAE9C,MAAM,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;QAE1B,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,YAAY,CAAC,CAAA;QAEvD,IAAI,EAAE,KAAK,IAAI,EAAE;YACf,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE;gBACtB,OAAO,KAAK,CAAC,CAAC,CAAC,CAAA;aAChB;iBAAM;gBACL,MAAM,IAAI,iBAAQ,CAAC,2BAA2B,EAAE,GAAG,CAAC,CAAA;aACrD;SACF;QAED,OAAO,KAAK,CAAA;IACd,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,EAAM,EAAE,KAAW,EAAE,SAAwB,EAAmB;QAC5E,IAAI,EAAE,KAAK,IAAI,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;YACvC,MAAM,IAAI,mBAAU,CAAC,+DAA+D,CAAC,CAAA;SACtF;QAED,MAAM,IAAI,GAAG,WAAC,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,EAAE,CAAC,CAAA;QACnC,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,MAAM,CAAC,CAAA;QAC3C,MAAM,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC,MAAW,EAAE,GAAG,EAAE,EAAE;YACjE,IAAI,GAAG,KAAK,IAAI,CAAC,EAAE,EAAE;gBACnB,2CAA2C;gBAC3C,MAAM,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;aACzD;YAED,OAAO,MAAM,CAAA;QACf,CAAC,EAAE,EAAE,CAAC,CAAA;QAEN,MAAM,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,CAAC,CAAA;QAE/D,OAAO,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,MAAM,CAAC,CAAA;IAC9B,CAAC;IAKD,KAAK,CAAC,OAAO,CAAC,EAAc,EAAE,SAAwB,EAAmB;QACvE,IAAI,EAAE,KAAK,IAAI,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,QAAQ,EAAE,MAAM,CAAC,EAAE;YACtD,MAAM,IAAI,yBAAgB,CAAC,iCAAiC,CAAC,CAAA;SAC9D;QAED,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,EAAE,EAAE,MAAM,CAAC,CAAA;QAC/C,MAAM,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,CAAA;QAC1C,MAAM,CAAC,GAAG,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,CAAA;QACzB,MAAM,MAAM,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,OAAY,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAA;QAE5D,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,MAAM,EAAE,CAAA;QAEhC,kDAAkD;QAClD,IAAI,CAAC,OAAO,CAAC,CAAC,EAAE,KAAK,CAAC,CAAA;QAEtB,MAAM,CAAC,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,4BAAY,CAAC,CAAA;QAEjC,IAAI,EAAE,KAAK,IAAI,EAAE;YACf,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE;gBACtB,OAAO,KAAK,CAAC,CAAC,CAAC,CAAA;aAChB;YAED,MAAM,IAAI,iBAAQ,CAAC,2BAA2B,EAAE,GAAG,CAAC,CAAA;SACrD;QAED,OAAO,KAAK,CAAA;IACd,CAAC;CACF;AAnUD,kCAmUC"}
1
+ {"version":3,"file":"adapter.js","sourceRoot":"","sources":["../src/adapter.ts"],"names":[],"mappings":"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"}
package/lib/hooks.js CHANGED
@@ -5,7 +5,10 @@ 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 = typeof context.service.getModel === 'function' && context.service.getModel(context.params);
8
+ var _a;
9
+ const knex = ((_a = context.params) === null || _a === void 0 ? void 0 : _a.knex)
10
+ ? context.params.knex
11
+ : typeof context.service.getModel === 'function' && context.service.getModel(context.params);
9
12
  return knex && typeof knex.transaction === 'function' ? knex : undefined;
10
13
  };
11
14
  exports.getKnex = getKnex;
package/lib/hooks.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"hooks.js","sourceRoot":"","sources":["../src/hooks.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"hooks.js","sourceRoot":"","sources":["../src/hooks.ts"],"names":[],"mappings":"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"}
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.1",
4
+ "version": "5.0.3",
5
5
  "homepage": "https://feathersjs.com",
6
6
  "main": "lib/",
7
7
  "keywords": [
@@ -51,25 +51,25 @@
51
51
  "access": "public"
52
52
  },
53
53
  "dependencies": {
54
- "@feathersjs/adapter-commons": "^5.0.1",
55
- "@feathersjs/commons": "^5.0.1",
56
- "@feathersjs/errors": "^5.0.1",
57
- "@feathersjs/feathers": "^5.0.1"
54
+ "@feathersjs/adapter-commons": "^5.0.3",
55
+ "@feathersjs/commons": "^5.0.3",
56
+ "@feathersjs/errors": "^5.0.3",
57
+ "@feathersjs/feathers": "^5.0.3"
58
58
  },
59
59
  "peerDependencies": {
60
60
  "knex": "^2.3.0"
61
61
  },
62
62
  "devDependencies": {
63
- "@feathersjs/adapter-tests": "^5.0.1",
64
- "@feathersjs/schema": "^5.0.1",
63
+ "@feathersjs/adapter-tests": "^5.0.3",
64
+ "@feathersjs/schema": "^5.0.3",
65
65
  "@types/mocha": "^10.0.1",
66
- "@types/node": "^18.14.6",
66
+ "@types/node": "^18.15.11",
67
67
  "knex": "^2.4.2",
68
68
  "mocha": "^10.2.0",
69
69
  "pg": "^8.10.0",
70
70
  "shx": "^0.3.4",
71
- "sqlite3": "^5.1.4",
72
- "typescript": "^4.9.5"
71
+ "sqlite3": "^5.1.6",
72
+ "typescript": "^5.0.3"
73
73
  },
74
- "gitHead": "18b7f4ab0a8075572a81d78956ba1205a9795c91"
74
+ "gitHead": "a6ba4dfd08f537a7d4778bed4c45091cbe3802aa"
75
75
  }
package/src/adapter.ts CHANGED
@@ -118,15 +118,16 @@ export class KnexAdapter<
118
118
  }, knexQuery)
119
119
  }
120
120
 
121
- createQuery(params: ServiceParams) {
121
+ createQuery(params: ServiceParams = {} as ServiceParams) {
122
122
  const { name, id } = this.getOptions(params)
123
123
  const { filters, query } = this.filterQuery(params)
124
124
  const builder = this.db(params)
125
125
 
126
126
  // $select uses a specific find syntax, so it has to come first.
127
127
  if (filters.$select) {
128
+ const select = filters.$select.map((column) => (column.includes('.') ? column : `${name}.${column}`))
128
129
  // always select the id field, but make sure we only select it once
129
- builder.select(...new Set([...filters.$select, `${name}.${id}`]))
130
+ builder.select(...new Set([...select, `${name}.${id}`]))
130
131
  } else {
131
132
  builder.select(`${name}.*`)
132
133
  }
@@ -180,7 +181,7 @@ export class KnexAdapter<
180
181
  }
181
182
 
182
183
  // provide default sorting if its not set
183
- if (!filters.$sort) {
184
+ if (!filters.$sort && builder.client.driverName === 'mssql') {
184
185
  builder.orderBy(`${name}.${id}`, 'asc')
185
186
  }
186
187
 
@@ -201,17 +202,18 @@ export class KnexAdapter<
201
202
  }
202
203
 
203
204
  async _findOrGet(id: NullableId, params?: ServiceParams) {
204
- const { name, id: idField } = this.getOptions(params)
205
- const findParams = {
206
- ...params,
207
- paginate: false,
208
- query: {
209
- ...params?.query,
210
- ...(id !== null ? { [`${name}.${idField}`]: id } : {})
211
- }
205
+ if (id !== null) {
206
+ const { name, id: idField } = this.getOptions(params)
207
+ const builder = params.knex ? params.knex.clone() : this.createQuery(params)
208
+ const idQuery = builder.andWhere(`${name}.${idField}`, '=', id).catch(errorHandler)
209
+
210
+ return idQuery as Promise<Result[]>
212
211
  }
213
212
 
214
- return this._find(findParams as any) as any as Promise<Result[]>
213
+ return this._find({
214
+ ...params,
215
+ paginate: false
216
+ })
215
217
  }
216
218
 
217
219
  async _get(id: Id, params: ServiceParams = {} as ServiceParams): Promise<Result> {
@@ -237,7 +239,7 @@ export class KnexAdapter<
237
239
  return Promise.all(data.map((current) => this._create(current, params)))
238
240
  }
239
241
 
240
- const client = this.db(params).client.config.client
242
+ const { client } = this.db(params).client.config
241
243
  const returning = RETURNING_CLIENTS.includes(client as string) ? [this.id] : []
242
244
  const rows: any = await this.db(params).insert(data, returning).catch(errorHandler)
243
245
  const id = data[this.id] || rows[0][this.id] || rows[0]
package/src/hooks.ts CHANGED
@@ -8,7 +8,9 @@ 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 = typeof context.service.getModel === 'function' && context.service.getModel(context.params)
11
+ const knex = context.params?.knex
12
+ ? context.params.knex
13
+ : typeof context.service.getModel === 'function' && context.service.getModel(context.params)
12
14
 
13
15
  return knex && typeof knex.transaction === 'function' ? knex : undefined
14
16
  }