@loopback/sequelize 0.5.4 → 0.6.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -27,5 +27,7 @@ exports.operatorTranslations = {
27
27
  regexp: sequelize_1.Op.regexp,
28
28
  and: sequelize_1.Op.and,
29
29
  or: sequelize_1.Op.or,
30
+ match: sequelize_1.Op.match,
31
+ contains: sequelize_1.Op.contains,
30
32
  };
31
33
  //# sourceMappingURL=operator-translation.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"operator-translation.js","sourceRoot":"","sources":["../../src/sequelize/operator-translation.ts"],"names":[],"mappings":";AAAA,6DAA6D;AAC7D,mCAAmC;AACnC,+CAA+C;AAC/C,gEAAgE;;;AAGhE,yCAA6B;AAE7B;;;GAGG;AACU,QAAA,oBAAoB,GAE7B;IACF,EAAE,EAAE,cAAE,CAAC,EAAE;IACT,EAAE,EAAE,cAAE,CAAC,EAAE;IACT,GAAG,EAAE,cAAE,CAAC,GAAG;IACX,EAAE,EAAE,cAAE,CAAC,EAAE;IACT,GAAG,EAAE,cAAE,CAAC,GAAG;IACX,GAAG,EAAE,cAAE,CAAC,EAAE;IACV,OAAO,EAAE,cAAE,CAAC,OAAO;IACnB,GAAG,EAAE,cAAE,CAAC,EAAE;IACV,GAAG,EAAE,cAAE,CAAC,KAAK;IACb,IAAI,EAAE,cAAE,CAAC,IAAI;IACb,KAAK,EAAE,cAAE,CAAC,OAAO;IACjB,KAAK,EAAE,cAAE,CAAC,KAAK;IACf,MAAM,EAAE,cAAE,CAAC,QAAQ;IACnB,MAAM,EAAE,cAAE,CAAC,MAAM;IACjB,GAAG,EAAE,cAAE,CAAC,GAAG;IACX,EAAE,EAAE,cAAE,CAAC,EAAE;CACV,CAAC"}
1
+ {"version":3,"file":"operator-translation.js","sourceRoot":"","sources":["../../src/sequelize/operator-translation.ts"],"names":[],"mappings":";AAAA,6DAA6D;AAC7D,mCAAmC;AACnC,+CAA+C;AAC/C,gEAAgE;;;AAGhE,yCAA6B;AAE7B;;;GAGG;AACU,QAAA,oBAAoB,GAE7B;IACF,EAAE,EAAE,cAAE,CAAC,EAAE;IACT,EAAE,EAAE,cAAE,CAAC,EAAE;IACT,GAAG,EAAE,cAAE,CAAC,GAAG;IACX,EAAE,EAAE,cAAE,CAAC,EAAE;IACT,GAAG,EAAE,cAAE,CAAC,GAAG;IACX,GAAG,EAAE,cAAE,CAAC,EAAE;IACV,OAAO,EAAE,cAAE,CAAC,OAAO;IACnB,GAAG,EAAE,cAAE,CAAC,EAAE;IACV,GAAG,EAAE,cAAE,CAAC,KAAK;IACb,IAAI,EAAE,cAAE,CAAC,IAAI;IACb,KAAK,EAAE,cAAE,CAAC,OAAO;IACjB,KAAK,EAAE,cAAE,CAAC,KAAK;IACf,MAAM,EAAE,cAAE,CAAC,QAAQ;IACnB,MAAM,EAAE,cAAE,CAAC,MAAM;IACjB,GAAG,EAAE,cAAE,CAAC,GAAG;IACX,EAAE,EAAE,cAAE,CAAC,EAAE;IACT,KAAK,EAAE,cAAE,CAAC,KAAK;IACf,QAAQ,EAAE,cAAE,CAAC,QAAQ;CACtB,CAAC"}
@@ -147,7 +147,7 @@ class SequelizeDataSource {
147
147
  // Sequelize returns the select query result in an array at index 0 and at index 1 is the actual Result instance
148
148
  // Whereas in juggler it is returned directly as plain array.
149
149
  // Below condition maps that 0th index to final result to match juggler's behaviour
150
- if (command.match(/^select/i) && result.length >= 1) {
150
+ if (command.match(/^(select|\(select)/i) && result.length >= 1) {
151
151
  return result[0];
152
152
  }
153
153
  return result;
@@ -1 +1 @@
1
- {"version":3,"file":"sequelize.datasource.base.js","sourceRoot":"","sources":["../../src/sequelize/sequelize.datasource.base.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sequelize.datasource.base.js","sourceRoot":"","sources":["../../src/sequelize/sequelize.datasource.base.ts"],"names":[],"mappings":"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"}
@@ -123,7 +123,12 @@ export declare class SequelizeCrudRepository<T extends Entity, ID, Relations ext
123
123
  */
124
124
  protected buildSequelizeAttributeFilter(fields?: Fields): FindAttributeOptions | undefined;
125
125
  /**
126
- * Get Sequelize Order filter value from loopback style order value
126
+ * Get Sequelize Order filter value from loopback style order value.
127
+ *
128
+ * It also supports passing associations in the order array to sort by nested models. Example: `["user email ASC"]`.
129
+ *
130
+ * @see https://sequelize.org/docs/v6/advanced-association-concepts/eager-loading/#ordering-eager-loaded-associations
131
+ *
127
132
  * @param order Sorting order in loopback style filter. eg. `title ASC`, `["id DESC", "age ASC"]`
128
133
  * @returns Sequelize compatible order filter value
129
134
  */
@@ -112,7 +112,13 @@ class SequelizeCrudRepository {
112
112
  where[idProp] = id;
113
113
  const result = await this.updateAll(data, where, options);
114
114
  if (result.count === 0) {
115
- throw new repository_1.EntityNotFoundError(this.entityClass, id);
115
+ // as MySQL didn't provide affected rows when the values are same as what database have
116
+ if (this.dataSource.sequelizeConfig.dialect === 'mysql') {
117
+ await this.findById(id);
118
+ }
119
+ else {
120
+ throw new repository_1.EntityNotFoundError(this.entityClass, id);
121
+ }
116
122
  }
117
123
  }
118
124
  async updateAll(data, where, options) {
@@ -295,7 +301,12 @@ class SequelizeCrudRepository {
295
301
  return sequelizeFields;
296
302
  }
297
303
  /**
298
- * Get Sequelize Order filter value from loopback style order value
304
+ * Get Sequelize Order filter value from loopback style order value.
305
+ *
306
+ * It also supports passing associations in the order array to sort by nested models. Example: `["user email ASC"]`.
307
+ *
308
+ * @see https://sequelize.org/docs/v6/advanced-association-concepts/eager-loading/#ordering-eager-loaded-associations
309
+ *
299
310
  * @param order Sorting order in loopback style filter. eg. `title ASC`, `["id DESC", "age ASC"]`
300
311
  * @returns Sequelize compatible order filter value
301
312
  */
@@ -303,14 +314,17 @@ class SequelizeCrudRepository {
303
314
  if (order === undefined || order === '') {
304
315
  return undefined;
305
316
  }
317
+ const parseOrderItem = (orderStr) => {
318
+ const [columnName, ...rest] = orderStr.trim().split(' ');
319
+ if (rest.length === 0) {
320
+ return [columnName, this.DEFAULT_ORDER_STYLE];
321
+ }
322
+ return [columnName, ...rest];
323
+ };
306
324
  if (typeof order === 'string') {
307
- const [columnName, orderType] = order.trim().split(' ');
308
- return [[columnName, orderType !== null && orderType !== void 0 ? orderType : this.DEFAULT_ORDER_STYLE]];
325
+ return [parseOrderItem(order)];
309
326
  }
310
- return order.map(orderStr => {
311
- const [columnName, orderType] = orderStr.trim().split(' ');
312
- return [columnName, orderType !== null && orderType !== void 0 ? orderType : this.DEFAULT_ORDER_STYLE];
313
- });
327
+ return order.map(parseOrderItem);
314
328
  }
315
329
  /**
316
330
  * Checks if the resolver of the inclusion relation is registered
@@ -586,7 +600,7 @@ class SequelizeCrudRepository {
586
600
  * TODO: Verify all possible loopback types https://loopback.io/doc/en/lb4/LoopBack-types.html
587
601
  */
588
602
  getSequelizeModelAttributes(definition) {
589
- var _a;
603
+ var _a, _b;
590
604
  debugModelBuilder('loopback model definition', definition);
591
605
  const sequelizeDefinition = {};
592
606
  for (const propName in definition) {
@@ -616,7 +630,11 @@ class SequelizeCrudRepository {
616
630
  if (definition[propName].type === Array ||
617
631
  ['Array', 'array'].includes(definition[propName].type.toString())) {
618
632
  // Postgres only
619
- dataType = sequelize_1.DataTypes.ARRAY(sequelize_1.DataTypes.INTEGER);
633
+ const stringTypeArray = definition[propName].itemType === String ||
634
+ ['String', 'string'].includes(((_a = definition[propName].itemType) === null || _a === void 0 ? void 0 : _a.toString()) || '');
635
+ dataType = stringTypeArray
636
+ ? sequelize_1.DataTypes.ARRAY(sequelize_1.DataTypes.STRING)
637
+ : sequelize_1.DataTypes.ARRAY(sequelize_1.DataTypes.INTEGER);
620
638
  }
621
639
  if (definition[propName].type === Object ||
622
640
  ['object', 'Object'].includes(definition[propName].type.toString())) {
@@ -657,7 +675,7 @@ class SequelizeCrudRepository {
657
675
  }
658
676
  // TODO: Get the column name casing using actual methods / conventions used in different sql connectors for loopback
659
677
  columnOptions.field =
660
- (_a = definition[propName]['name']) !== null && _a !== void 0 ? _a : propName.toLowerCase();
678
+ (_b = definition[propName]['name']) !== null && _b !== void 0 ? _b : propName.toLowerCase();
661
679
  sequelizeDefinition[propName] = columnOptions;
662
680
  }
663
681
  debugModelBuilder('Sequelize model definition', sequelizeDefinition);
@@ -1 +1 @@
1
- {"version":3,"file":"sequelize.repository.base.js","sourceRoot":"","sources":["../../src/sequelize/sequelize.repository.base.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sequelize.repository.base.js","sourceRoot":"","sources":["../../src/sequelize/sequelize.repository.base.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@loopback/sequelize",
3
3
  "description": "Loopback 4 Extension That Provides Sequelize Crud Repository Compatible With Default Loopback Models.",
4
- "version": "0.5.4",
4
+ "version": "0.6.0",
5
5
  "keywords": [
6
6
  "loopback-extension",
7
7
  "loopback",
@@ -19,7 +19,7 @@
19
19
  "directory": "extensions/sequelize"
20
20
  },
21
21
  "engines": {
22
- "node": "16 || 18 || 20"
22
+ "node": "18 || 20"
23
23
  },
24
24
  "scripts": {
25
25
  "build": "lb-tsc",
@@ -40,27 +40,27 @@
40
40
  "!dist/.sandbox"
41
41
  ],
42
42
  "peerDependencies": {
43
- "@loopback/core": "^5.0.0",
44
- "@loopback/repository": "^6.0.0"
43
+ "@loopback/core": "^6.0.0",
44
+ "@loopback/repository": "^7.0.0"
45
45
  },
46
46
  "dependencies": {
47
47
  "debug": "^4.3.4",
48
- "sequelize": "^6.35.2",
48
+ "sequelize": "^6.37.1",
49
49
  "tslib": "^2.6.2"
50
50
  },
51
51
  "devDependencies": {
52
- "@loopback/boot": "^6.1.5",
53
- "@loopback/build": "^10.1.5",
54
- "@loopback/core": "^5.1.5",
55
- "@loopback/repository": "^6.1.5",
56
- "@loopback/rest": "^13.1.5",
57
- "@loopback/testlab": "^6.1.5",
58
- "@types/node": "^16.18.70",
52
+ "@loopback/boot": "^7.0.0",
53
+ "@loopback/build": "^11.0.0",
54
+ "@loopback/core": "^6.0.0",
55
+ "@loopback/repository": "^7.0.0",
56
+ "@loopback/rest": "^14.0.0",
57
+ "@loopback/testlab": "^7.0.0",
58
+ "@types/node": "^16.18.86",
59
59
  "oracledb": "^6.3.0",
60
60
  "pg": "^8.11.3",
61
61
  "pg-hstore": "^2.3.4",
62
62
  "sqlite3": "5.1.4",
63
63
  "typescript": "~5.2.2"
64
64
  },
65
- "gitHead": "3f73360ac38e1615317cae977ac20c2e124e3518"
65
+ "gitHead": "bb4864f7405492d9c86c7db6e714542a292a8790"
66
66
  }
@@ -29,4 +29,6 @@ export const operatorTranslations: {
29
29
  regexp: Op.regexp,
30
30
  and: Op.and,
31
31
  or: Op.or,
32
+ match: Op.match,
33
+ contains: Op.contains,
32
34
  };
@@ -209,7 +209,7 @@ export class SequelizeDataSource implements LifeCycleObserver {
209
209
  // Sequelize returns the select query result in an array at index 0 and at index 1 is the actual Result instance
210
210
  // Whereas in juggler it is returned directly as plain array.
211
211
  // Below condition maps that 0th index to final result to match juggler's behaviour
212
- if (command.match(/^select/i) && result.length >= 1) {
212
+ if (command.match(/^(select|\(select)/i) && result.length >= 1) {
213
213
  return result[0];
214
214
  }
215
215
 
@@ -53,6 +53,7 @@ import {
53
53
  ModelStatic,
54
54
  Op,
55
55
  Order,
56
+ OrderItem,
56
57
  SyncOptions,
57
58
  Transaction,
58
59
  TransactionOptions,
@@ -227,7 +228,12 @@ export class SequelizeCrudRepository<
227
228
  (where as AnyObject)[idProp] = id;
228
229
  const result = await this.updateAll(data, where, options);
229
230
  if (result.count === 0) {
230
- throw new EntityNotFoundError(this.entityClass, id);
231
+ // as MySQL didn't provide affected rows when the values are same as what database have
232
+ if (this.dataSource.sequelizeConfig.dialect === 'mysql') {
233
+ await this.findById(id);
234
+ } else {
235
+ throw new EntityNotFoundError(this.entityClass, id);
236
+ }
231
237
  }
232
238
  }
233
239
 
@@ -484,7 +490,12 @@ export class SequelizeCrudRepository<
484
490
  }
485
491
 
486
492
  /**
487
- * Get Sequelize Order filter value from loopback style order value
493
+ * Get Sequelize Order filter value from loopback style order value.
494
+ *
495
+ * It also supports passing associations in the order array to sort by nested models. Example: `["user email ASC"]`.
496
+ *
497
+ * @see https://sequelize.org/docs/v6/advanced-association-concepts/eager-loading/#ordering-eager-loaded-associations
498
+ *
488
499
  * @param order Sorting order in loopback style filter. eg. `title ASC`, `["id DESC", "age ASC"]`
489
500
  * @returns Sequelize compatible order filter value
490
501
  */
@@ -493,15 +504,21 @@ export class SequelizeCrudRepository<
493
504
  return undefined;
494
505
  }
495
506
 
507
+ const parseOrderItem = (orderStr: string): OrderItem => {
508
+ const [columnName, ...rest] = orderStr.trim().split(' ');
509
+
510
+ if (rest.length === 0) {
511
+ return [columnName, this.DEFAULT_ORDER_STYLE];
512
+ }
513
+
514
+ return [columnName, ...rest] as OrderItem;
515
+ };
516
+
496
517
  if (typeof order === 'string') {
497
- const [columnName, orderType] = order.trim().split(' ');
498
- return [[columnName, orderType ?? this.DEFAULT_ORDER_STYLE]];
518
+ return [parseOrderItem(order)];
499
519
  }
500
520
 
501
- return order.map(orderStr => {
502
- const [columnName, orderType] = orderStr.trim().split(' ');
503
- return [columnName, orderType ?? this.DEFAULT_ORDER_STYLE];
504
- });
521
+ return order.map(parseOrderItem);
505
522
  }
506
523
 
507
524
  /**
@@ -914,7 +931,14 @@ export class SequelizeCrudRepository<
914
931
  ['Array', 'array'].includes(definition[propName].type.toString())
915
932
  ) {
916
933
  // Postgres only
917
- dataType = DataTypes.ARRAY(DataTypes.INTEGER);
934
+ const stringTypeArray =
935
+ definition[propName].itemType === String ||
936
+ ['String', 'string'].includes(
937
+ definition[propName].itemType?.toString() || '',
938
+ );
939
+ dataType = stringTypeArray
940
+ ? DataTypes.ARRAY(DataTypes.STRING)
941
+ : DataTypes.ARRAY(DataTypes.INTEGER);
918
942
  }
919
943
 
920
944
  if (