Skip to content

Commit b3e9f31

Browse files
committed
feat(json-api-nestjs-typeorm): refine type usage, update imports, and handle relation aliases consistently
1 parent 5d07b34 commit b3e9f31

File tree

3 files changed

+9
-10
lines changed

3 files changed

+9
-10
lines changed

libs/json-api/json-api-nestjs-typeorm/src/lib/orm-methods/get-all/get-all.ts

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
import { Query, ASC, DESC } from '@klerick/json-api-nestjs';
22
import { ObjectTyped, ResourceObject } from '@klerick/json-api-nestjs-shared';
33

4-
import { TypeOrmService } from '../../service';
4+
import { RelationAlias, TypeOrmService } from '../../service';
55

66
import {
77
ALIAS_FOR_PAGINATION,
@@ -173,17 +173,17 @@ export async function getAll<E extends object, IdKey extends string = 'id'>(
173173
}
174174
if (include) {
175175
for (const rel of include) {
176-
includeRel.add(rel);
176+
includeRel.add(`${rel}`);
177177
}
178178
}
179179
const fieldsCast = fields as Query<Record<string, any>, IdKey>['fields'];
180180
if (fieldsCast) {
181181
if (include) {
182182
for (const rel of include) {
183183
const currentIncludeAlias =
184-
this.typeormUtilsService.getAliasForRelation(rel);
184+
this.typeormUtilsService.getAliasForRelation(rel as keyof RelationAlias<E>);
185185
const primaryColumnName =
186-
this.typeormUtilsService.getPrimaryColumnForRel(rel);
186+
this.typeormUtilsService.getPrimaryColumnForRel(rel as keyof RelationAlias<E>);
187187
selectFields.add(`${currentIncludeAlias}.${primaryColumnName}`);
188188
}
189189
}

libs/json-api/json-api-nestjs-typeorm/src/lib/orm-methods/get-one/get-one.ts

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
import { NotFoundException } from '@nestjs/common';
22
import { ValidateQueryError, QueryOne } from '@klerick/json-api-nestjs';
33
import { ObjectTyped, ResourceObject } from '@klerick/json-api-nestjs-shared';
4-
import { TypeOrmService } from '../../service';
4+
import { RelationAlias, TypeOrmService } from '../../service';
55

66
export async function getOne<E extends object, IdKey extends string>(
77
this: TypeOrmService<E, IdKey>,
@@ -34,7 +34,7 @@ export async function getOne<E extends object, IdKey extends string>(
3434
selectFields.add(
3535
this.typeormUtilsService.getAliasPath(
3636
itemFieldRel,
37-
this.typeormUtilsService.getAliasForRelation(rel as any)
37+
this.typeormUtilsService.getAliasForRelation(rel as keyof RelationAlias<E>)
3838
)
3939
);
4040
}
@@ -43,7 +43,8 @@ export async function getOne<E extends object, IdKey extends string>(
4343
}
4444

4545
if (include) {
46-
for (const rel of include) {
46+
for (const relFromLoop of include) {
47+
const rel = relFromLoop as keyof RelationAlias<E>
4748
const currentIncludeAlias =
4849
this.typeormUtilsService.getAliasForRelation(rel);
4950

libs/json-api/json-api-nestjs-typeorm/src/lib/service/typeorm-utils.service.ts

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -10,8 +10,6 @@ import {
1010
Equal,
1111
In,
1212
Repository,
13-
ILike,
14-
FindOperator,
1513
} from 'typeorm';
1614
import { RelationMetadata as TypeOrmRelationMetadata } from 'typeorm/metadata/RelationMetadata';
1715
import {
@@ -40,7 +38,7 @@ import {
4038
import { CURRENT_ENTITY_REPOSITORY } from '../constants';
4139
import { DriverUtils } from 'typeorm/driver/DriverUtils';
4240

43-
type RelationAlias<E> = {
41+
export type RelationAlias<E> = {
4442
[K in UnionToTuple<RelationKeys<E>>[number] & PropertyKey]: string;
4543
};
4644
type RelationMetadata<E> = {

0 commit comments

Comments
 (0)