@furystack/sequelize-store 0.3.25 → 0.3.26

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.
@@ -1,11 +1,11 @@
1
1
  import { FindOptions, PhysicalStore, PartialResult, FilterType, WithOptionalId, CreateResult } from '@furystack/core';
2
2
  import { Constructable } from '@furystack/inject';
3
- import { Sequelize, ModelCtor, Model } from 'sequelize';
3
+ import { Sequelize, ModelStatic, Model } from 'sequelize';
4
4
  export interface SequelizeStoreSettings<T extends Model, TPrimaryKey extends keyof T> {
5
5
  /**
6
6
  * The Sequelize Model class
7
7
  */
8
- model: ModelCtor<T> & Constructable<T>;
8
+ model: ModelStatic<T> & Constructable<T>;
9
9
  /**
10
10
  * The Primary key field
11
11
  */
@@ -25,10 +25,10 @@ export interface SequelizeStoreSettings<T extends Model, TPrimaryKey extends key
25
25
  export declare class SequelizeStore<T extends Model, TPrimaryKey extends keyof T> implements PhysicalStore<T, TPrimaryKey> {
26
26
  private readonly options;
27
27
  readonly primaryKey: TPrimaryKey;
28
- readonly model: ModelCtor<T> & Constructable<T>;
28
+ readonly model: ModelStatic<T> & Constructable<T>;
29
29
  private initLock;
30
30
  private initializedModel?;
31
- getModel(): Promise<ModelCtor<T>>;
31
+ getModel(): Promise<ModelStatic<T>>;
32
32
  constructor(options: SequelizeStoreSettings<T, TPrimaryKey>);
33
33
  add(...entries: Array<WithOptionalId<T, TPrimaryKey>>): Promise<CreateResult<T>>;
34
34
  update(id: T[TPrimaryKey], data: Partial<T>): Promise<void>;
@@ -1 +1 @@
1
- {"version":3,"file":"sequelize-store.d.ts","sourceRoot":"","sources":["../src/sequelize-store.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,aAAa,EAAE,UAAU,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAA;AACrH,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAA;AACjD,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,WAAW,CAAA;AAGvD,MAAM,WAAW,sBAAsB,CAAC,CAAC,SAAS,KAAK,EAAE,WAAW,SAAS,MAAM,CAAC;IAClF;;OAEG;IACH,KAAK,EAAE,SAAS,CAAC,CAAC,CAAC,GAAG,aAAa,CAAC,CAAC,CAAC,CAAA;IACtC;;OAEG;IACH,UAAU,EAAE,WAAW,CAAA;IACvB;;OAEG;IACH,kBAAkB,EAAE,MAAM,OAAO,CAAC,SAAS,CAAC,CAAA;IAC5C;;OAEG;IACH,SAAS,CAAC,EAAE,CAAC,SAAS,EAAE,SAAS,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;CACpD;AAED;;GAEG;AACH,qBAAa,cAAc,CAAC,CAAC,SAAS,KAAK,EAAE,WAAW,SAAS,MAAM,CAAC,CAAE,YAAW,aAAa,CAAC,CAAC,EAAE,WAAW,CAAC;IAsCpG,OAAO,CAAC,QAAQ,CAAC,OAAO;IArCpC,SAAgB,UAAU,EAAE,WAAW,CAAA;IAEvC,SAAgB,KAAK,EAAE,SAAS,CAAC,CAAC,CAAC,GAAG,aAAa,CAAC,CAAC,CAAC,CAAA;IAEtD,OAAO,CAAC,QAAQ,CAAmB;IAEnC,OAAO,CAAC,gBAAgB,CAAC,CAAc;IAE1B,QAAQ,IAAI,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;gBA6BjB,OAAO,EAAE,sBAAsB,CAAC,CAAC,EAAE,WAAW,CAAC;IAI/D,GAAG,CAAC,GAAG,OAAO,EAAE,KAAK,CAAC,cAAc,CAAC,CAAC,EAAE,WAAW,CAAC,CAAC,GAAG,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;IAOhF,MAAM,CAAC,EAAE,EAAE,CAAC,CAAC,WAAW,CAAC,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAQ3D,KAAK,CAAC,MAAM,CAAC,EAAE,UAAU,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC;IAI9C,IAAI,CAAC,OAAO,SAAS,KAAK,CAAC,MAAM,CAAC,CAAC,EAC9C,MAAM,EAAE,WAAW,CAAC,CAAC,EAAE,OAAO,CAAC,GAC9B,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC;IAsB/B,GAAG,CAAC,GAAG,EAAE,CAAC,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,GAAG,SAAS,CAAC;IAIzE,MAAM,CAAC,GAAG,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAIrD,OAAO;CAGrB"}
1
+ {"version":3,"file":"sequelize-store.d.ts","sourceRoot":"","sources":["../src/sequelize-store.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,aAAa,EAAE,UAAU,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAA;AACrH,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAA;AACjD,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,KAAK,EAA4B,MAAM,WAAW,CAAA;AAGnF,MAAM,WAAW,sBAAsB,CAAC,CAAC,SAAS,KAAK,EAAE,WAAW,SAAS,MAAM,CAAC;IAClF;;OAEG;IACH,KAAK,EAAE,WAAW,CAAC,CAAC,CAAC,GAAG,aAAa,CAAC,CAAC,CAAC,CAAA;IACxC;;OAEG;IACH,UAAU,EAAE,WAAW,CAAA;IACvB;;OAEG;IACH,kBAAkB,EAAE,MAAM,OAAO,CAAC,SAAS,CAAC,CAAA;IAC5C;;OAEG;IACH,SAAS,CAAC,EAAE,CAAC,SAAS,EAAE,SAAS,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;CACpD;AAED;;GAEG;AACH,qBAAa,cAAc,CAAC,CAAC,SAAS,KAAK,EAAE,WAAW,SAAS,MAAM,CAAC,CAAE,YAAW,aAAa,CAAC,CAAC,EAAE,WAAW,CAAC;IAsCpG,OAAO,CAAC,QAAQ,CAAC,OAAO;IArCpC,SAAgB,UAAU,EAAE,WAAW,CAAA;IAEvC,SAAgB,KAAK,EAAE,WAAW,CAAC,CAAC,CAAC,GAAG,aAAa,CAAC,CAAC,CAAC,CAAA;IAExD,OAAO,CAAC,QAAQ,CAAmB;IAEnC,OAAO,CAAC,gBAAgB,CAAC,CAAgB;IAE5B,QAAQ,IAAI,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;gBA6BnB,OAAO,EAAE,sBAAsB,CAAC,CAAC,EAAE,WAAW,CAAC;IAI/D,GAAG,CAAC,GAAG,OAAO,EAAE,KAAK,CAAC,cAAc,CAAC,CAAC,EAAE,WAAW,CAAC,CAAC,GAAG,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;IAOhF,MAAM,CAAC,EAAE,EAAE,CAAC,CAAC,WAAW,CAAC,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAQ3D,KAAK,CAAC,MAAM,CAAC,EAAE,UAAU,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC;IAI9C,IAAI,CAAC,OAAO,SAAS,KAAK,CAAC,MAAM,CAAC,CAAC,EAC9C,MAAM,EAAE,WAAW,CAAC,CAAC,EAAE,OAAO,CAAC,GAC9B,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC;IAsB/B,GAAG,CAAC,GAAG,EAAE,CAAC,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,GAAG,SAAS,CAAC;IAIzE,MAAM,CAAC,GAAG,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAIrD,OAAO;CAGrB"}
@@ -1 +1 @@
1
- {"version":3,"file":"sequelize-store.js","sourceRoot":"","sources":["../src/sequelize-store.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sequelize-store.js","sourceRoot":"","sources":["../src/sequelize-store.ts"],"names":[],"mappings":";;;;AAGA,0FAA6C;AAqB7C;;GAEG;AACH,MAAa,cAAc;IAsCzB,YAA6B,OAA+C;QAA/C,YAAO,GAAP,OAAO,CAAwC;QAjCpE,aAAQ,GAAG,IAAI,+BAAS,CAAC,CAAC,CAAC,CAAA;QAkCjC,IAAI,CAAC,UAAU,GAAG,OAAO,CAAC,UAAU,CAAA;QACpC,IAAI,CAAC,KAAK,GAAG,OAAO,CAAC,KAAK,CAAA;IAC5B,CAAC;IAhCM,KAAK,CAAC,QAAQ;QACnB,IAAI,IAAI,CAAC,gBAAgB,EAAE;YACzB,OAAO,IAAI,CAAC,gBAAgB,CAAA;SAC7B;QACD,MAAM,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAA;QAC7B,IAAI,IAAI,CAAC,gBAAgB,EAAE;YACzB,OAAO,IAAI,CAAC,gBAAgB,CAAA;SAC7B;QACD,IAAI;YACF,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,kBAAkB,EAAE,CAAA;YAEtD,IAAI,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE;gBAC1B,MAAM,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,MAAM,CAAC,CAAA;gBACpC,MAAM,MAAM,CAAC,IAAI,EAAE,CAAA;aACpB;YAED,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAA+B,CAAA;YAEjF,IAAI,CAAC,KAAK,EAAE;gBACV,MAAM,KAAK,CAAC,8CAA8C,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,GAAG,CAAC,CAAA;aACtF;YAED,IAAI,CAAC,gBAAgB,GAAG,KAAK,CAAA;YAC7B,OAAO,KAAK,CAAA;SACb;gBAAS;YACR,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAA;SACxB;IACH,CAAC;IAMM,KAAK,CAAC,GAAG,CAAC,GAAG,OAA8C;QAChE,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,QAAQ,EAAE,CAAA;QACnC,MAAM,OAAO,GAAG,MAAM,KAAK,CAAC,UAAU,CAAC,OAAc,CAAC,CAAA;QACtD,OAAO;YACL,OAAO,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,EAAO,CAAC;SAC7C,CAAA;IACH,CAAC;IACM,KAAK,CAAC,MAAM,CAAC,EAAkB,EAAE,IAAgB;QACtD,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,QAAQ,EAAE,CAAA;QAEnC,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,EAAE,EAAS,EAAE,CAAC,CAAA;QACpF,IAAI,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE;YACjB,MAAM,KAAK,CAAC,kBAAkB,CAAC,CAAA;SAChC;IACH,CAAC;IACM,KAAK,CAAC,KAAK,CAAC,MAAsB;QACvC,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,QAAQ,EAAE,CAAA;QACnC,OAAO,MAAM,KAAK,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE,MAAyB,EAAE,CAAC,CAAA;IAChE,CAAC;IACM,KAAK,CAAC,IAAI,CACf,MAA+B;QAE/B,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,QAAQ,EAAE,CAAA;QAEnC,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK;YACxB,CAAC,CAAC;gBACE,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,GAAG,CAAmB,CAAC,GAAG,EAAE,EAAE,CAAC;oBAC1D,GAAG;oBACF,MAAM,CAAC,KAAa,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM;iBACtD,CAAC;aACH;YACH,CAAC,CAAC,EAAE,CAAA;QAEN,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,OAAO,CAAC;YACjC,KAAK,EAAE,MAAM,CAAC,MAAyB;YACvC,UAAU,EAAE,MAAM,CAAC,MAAuB;YAC1C,KAAK;YACL,KAAK,EAAE,MAAM,CAAC,GAAG;YACjB,MAAM,EAAE,MAAM,CAAC,IAAI;SACpB,CAAC,CAAA;QACF,OAAO,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,EAAO,CAAC,CAAA;IAC3C,CAAC;IAEM,KAAK,CAAC,GAAG,CAAC,GAAmB,EAAE,MAAuB;;QAC3D,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,QAAQ,EAAE,CAAA;QACnC,OAAO,CAAC,MAAM,CAAA,MAAA,CAAC,MAAM,KAAK,CAAC,QAAQ,CAAC,GAAU,EAAE,EAAE,UAAU,EAAE,MAAM,EAAS,CAAC,CAAC,0CAAE,MAAM,EAAE,CAAA,CAAM,CAAA;IACjG,CAAC;IACM,KAAK,CAAC,MAAM,CAAC,GAAG,IAA2B;QAChD,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,QAAQ,EAAE,CAAA;QACnC,MAAM,KAAK,CAAC,OAAO,CAAC,EAAE,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,IAAI,EAAE,EAAS,CAAC,CAAA;IACpE,CAAC;IACM,KAAK,CAAC,OAAO;QAClB,MAAM;IACR,CAAC;CACF;AAhGD,wCAgGC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@furystack/sequelize-store",
3
- "version": "0.3.25",
3
+ "version": "0.3.26",
4
4
  "description": "Sequelize-based Store implementation for FuryStack",
5
5
  "main": "dist/index.js",
6
6
  "files": [
@@ -26,12 +26,12 @@
26
26
  },
27
27
  "homepage": "https://github.com/furystack/furystack",
28
28
  "dependencies": {
29
- "@furystack/core": "^10.4.9",
30
- "@furystack/inject": "^5.0.6",
31
- "@furystack/logging": "^2.0.90",
32
- "@furystack/utils": "^2.0.5",
29
+ "@furystack/core": "^10.4.10",
30
+ "@furystack/inject": "^5.0.7",
31
+ "@furystack/logging": "^2.0.91",
32
+ "@furystack/utils": "^2.1.0",
33
33
  "semaphore-async-await": "^1.5.1",
34
- "sequelize": "^6.17.0",
34
+ "sequelize": "^6.19.0",
35
35
  "tslib": "^2.3.1"
36
36
  },
37
37
  "devDependencies": {
@@ -1,13 +1,13 @@
1
1
  import { FindOptions, PhysicalStore, PartialResult, FilterType, WithOptionalId, CreateResult } from '@furystack/core'
2
2
  import { Constructable } from '@furystack/inject'
3
- import { Sequelize, ModelCtor, Model } from 'sequelize'
3
+ import { Sequelize, ModelStatic, Model, WhereOptions, Attributes } from 'sequelize'
4
4
  import Semaphore from 'semaphore-async-await'
5
5
 
6
6
  export interface SequelizeStoreSettings<T extends Model, TPrimaryKey extends keyof T> {
7
7
  /**
8
8
  * The Sequelize Model class
9
9
  */
10
- model: ModelCtor<T> & Constructable<T>
10
+ model: ModelStatic<T> & Constructable<T>
11
11
  /**
12
12
  * The Primary key field
13
13
  */
@@ -28,13 +28,13 @@ export interface SequelizeStoreSettings<T extends Model, TPrimaryKey extends key
28
28
  export class SequelizeStore<T extends Model, TPrimaryKey extends keyof T> implements PhysicalStore<T, TPrimaryKey> {
29
29
  public readonly primaryKey: TPrimaryKey
30
30
 
31
- public readonly model: ModelCtor<T> & Constructable<T>
31
+ public readonly model: ModelStatic<T> & Constructable<T>
32
32
 
33
33
  private initLock = new Semaphore(1)
34
34
 
35
- private initializedModel?: ModelCtor<T>
35
+ private initializedModel?: ModelStatic<T>
36
36
 
37
- public async getModel(): Promise<ModelCtor<T>> {
37
+ public async getModel(): Promise<ModelStatic<T>> {
38
38
  if (this.initializedModel) {
39
39
  return this.initializedModel
40
40
  }
@@ -50,7 +50,7 @@ export class SequelizeStore<T extends Model, TPrimaryKey extends keyof T> implem
50
50
  await client.sync()
51
51
  }
52
52
 
53
- const model = client.model(this.options.model.name) as ModelCtor<T> | undefined
53
+ const model = client.model(this.options.model.name) as ModelStatic<T> | undefined
54
54
 
55
55
  if (!model) {
56
56
  throw Error(`'No initialized Sequelize model found for '${this.options.model.name}'`)
@@ -84,7 +84,7 @@ export class SequelizeStore<T extends Model, TPrimaryKey extends keyof T> implem
84
84
  }
85
85
  public async count(filter?: FilterType<T>): Promise<number> {
86
86
  const model = await this.getModel()
87
- return await model.count({ where: filter })
87
+ return await model.count({ where: filter as WhereOptions<T> })
88
88
  }
89
89
  public async find<TFields extends Array<keyof T>>(
90
90
  filter: FindOptions<T, TFields>,
@@ -101,8 +101,8 @@ export class SequelizeStore<T extends Model, TPrimaryKey extends keyof T> implem
101
101
  : []
102
102
 
103
103
  const result = await model.findAll({
104
- where: filter.filter,
105
- attributes: filter.select as any,
104
+ where: filter.filter as WhereOptions<T>,
105
+ attributes: filter.select as Attributes<T>,
106
106
  order,
107
107
  limit: filter.top,
108
108
  offset: filter.skip,