From e79b8136e427ddd49407ebfccf68780f67878e98 Mon Sep 17 00:00:00 2001 From: Jeongho Nam Date: Tue, 15 Mar 2022 17:02:35 +0900 Subject: [PATCH 1/2] Close #63 --- package.json | 2 +- src/Model.ts | 2 +- src/functional/getWhereArguments.ts | 6 +++--- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/package.json b/package.json index f336c7f..0b44f14 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "safe-typeorm", - "version": "1.0.9", + "version": "1.0.10", "description": "Safe Relationship Decorators for the TypeORM", "main": "lib/index.js", "typings": "lib/index.d.ts", diff --git a/src/Model.ts b/src/Model.ts index 7b3de48..f07ab5c 100644 --- a/src/Model.ts +++ b/src/Model.ts @@ -302,7 +302,7 @@ export abstract class Model extends orm.BaseEntity ( this: Model.Creator, fieldLike: `${Literal}` | `${string}.${Literal}`, - operator: "IN", + operator: "IN" | "NOT IN", parameters: Array>, ): [string, Record>>]; diff --git a/src/functional/getWhereArguments.ts b/src/functional/getWhereArguments.ts index ca244fb..815ebff 100644 --- a/src/functional/getWhereArguments.ts +++ b/src/functional/getWhereArguments.ts @@ -112,7 +112,7 @@ export function getWhereArguments< ( creator: Creator, fieldLike: `${Literal}` | `${string}.${Literal}`, - operator: "IN", + operator: "IN" | "NOT IN", parameters: Array> ): [string, Record, Field.ValueType]>]; @@ -171,7 +171,7 @@ export function getWhereArguments< if (rest.length <= 2) { // SPECIALIZE OPERATOR AND PARAMETER - let operator: Operator | "IN"; + let operator: Operator | "IN" | "NOT IN"; let param: Field.ValueType; if (rest.length === 1) @@ -199,7 +199,7 @@ export function getWhereArguments< // RETURNS WITH BINDING const uuid: string = crypto.randomBytes(64).toString("hex"); - const binding: string = (operator === "IN") + const binding: string = (operator === "IN" || operator === "NOT IN") ? `(:...${uuid})` : `:${uuid}`; return [`${column} ${operator} ${binding}`, { [uuid]: param }]; From ab97a07ed1fa0353e61fa78c4bea7ad188528491 Mon Sep 17 00:00:00 2001 From: Jeongho Nam Date: Mon, 21 Mar 2022 14:18:52 +0900 Subject: [PATCH 2/2] Fix #64 --- package.json | 2 +- src/transactions/InsertCollection.ts | 3 ++- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/package.json b/package.json index 0b44f14..5899369 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "safe-typeorm", - "version": "1.0.10", + "version": "1.0.11", "description": "Safe Relationship Decorators for the TypeORM", "main": "lib/index.js", "typings": "lib/index.d.ts", diff --git a/src/transactions/InsertCollection.ts b/src/transactions/InsertCollection.ts index 098ae64..19a4d92 100644 --- a/src/transactions/InsertCollection.ts +++ b/src/transactions/InsertCollection.ts @@ -153,6 +153,8 @@ function getDependencies if (output === undefined) { output = new Set(); + dependencies.set(target, output); + for (const meta of connection.entityMetadatas) { const child: Creator = meta.target as Creator; @@ -168,7 +170,6 @@ function getDependencies break; } } - dependencies.set(target, output); } return output; }