diff --git a/package.json b/package.json index b2e408d..e5bcabf 100644 --- a/package.json +++ b/package.json @@ -20,7 +20,7 @@ "express-session": "^1.15.6" }, "peerDependencies": { - "typeorm": "^0.1.2" + "typeorm": "^0.1.2 || ^0.2.5" }, "scripts": { "format": "tslint --fix 'src/**/*.ts'", diff --git a/src/app/TypeormStore/TypeormStore.ts b/src/app/TypeormStore/TypeormStore.ts index 2c2eb76..315989e 100644 --- a/src/app/TypeormStore/TypeormStore.ts +++ b/src/app/TypeormStore/TypeormStore.ts @@ -20,7 +20,7 @@ export type Ttl = number | ((store: TypeormStore, sess: any, sid?: string) => nu export class TypeormStore extends Store { private debug = Debug("connect:typeorm"); - private repository: Repository; + private repository!: Repository; private ttl: Ttl | undefined; @@ -120,9 +120,11 @@ export class TypeormStore extends Store { const ttl = this.getTTL(sess); this.debug('EXPIRE "%s" ttl:%s', sid, ttl); - this.repository.updateById(sid, { - expiredAt: Date.now() + ttl * 1000, - }) + this.repository + .createQueryBuilder() + .update({ expiredAt: Date.now() + ttl * 1000 }) + .whereInIds([sid]) + .execute() .then(() => { this.debug("EXPIRE complete"); fn();