@@ -1212,6 +1212,14 @@ export class MongoDriver extends Driver<Connection, Collection> {
1212
1212
* Set a where in statement in your query.
1213
1213
*/
1214
1214
public whereIn ( column : string , values : any [ ] ) {
1215
+ values = values . flatMap ( value => {
1216
+ if ( ObjectId . isValid ( value ) ) {
1217
+ return [ value , ObjectId . ifValidSwap ( value ) ]
1218
+ }
1219
+
1220
+ return [ value ]
1221
+ } )
1222
+
1215
1223
this . _where . push ( { [ column ] : { $in : values } } )
1216
1224
1217
1225
return this
@@ -1221,6 +1229,14 @@ export class MongoDriver extends Driver<Connection, Collection> {
1221
1229
* Set a where not in statement in your query.
1222
1230
*/
1223
1231
public whereNotIn ( column : string , values : any [ ] ) {
1232
+ values = values . flatMap ( value => {
1233
+ if ( ObjectId . isValid ( value ) ) {
1234
+ return [ value , ObjectId . ifValidSwap ( value ) ]
1235
+ }
1236
+
1237
+ return [ value ]
1238
+ } )
1239
+
1224
1240
this . _where . push ( { [ column ] : { $nin : values } } )
1225
1241
1226
1242
return this
@@ -1344,6 +1360,14 @@ export class MongoDriver extends Driver<Connection, Collection> {
1344
1360
* Set an or where in statement in your query.
1345
1361
*/
1346
1362
public orWhereIn ( column : string , values : any [ ] ) {
1363
+ values = values . flatMap ( value => {
1364
+ if ( ObjectId . isValid ( value ) ) {
1365
+ return [ value , ObjectId . ifValidSwap ( value ) ]
1366
+ }
1367
+
1368
+ return [ value ]
1369
+ } )
1370
+
1347
1371
this . _orWhere . push ( { [ column ] : { $in : values } } )
1348
1372
1349
1373
return this
@@ -1353,6 +1377,14 @@ export class MongoDriver extends Driver<Connection, Collection> {
1353
1377
* Set an or where not in statement in your query.
1354
1378
*/
1355
1379
public orWhereNotIn ( column : string , values : any [ ] ) {
1380
+ values = values . flatMap ( value => {
1381
+ if ( ObjectId . isValid ( value ) ) {
1382
+ return [ value , ObjectId . ifValidSwap ( value ) ]
1383
+ }
1384
+
1385
+ return [ value ]
1386
+ } )
1387
+
1356
1388
this . _orWhere . push ( { [ column ] : { $nin : values } } )
1357
1389
1358
1390
return this
0 commit comments