Skip to content

Commit 45c5272

Browse files
committed
Merge DB Names into ResourceNameLike
1 parent c54e329 commit 45c5272

File tree

3 files changed

+7
-11
lines changed

3 files changed

+7
-11
lines changed

src/common/id-field.ts

Lines changed: 2 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -2,11 +2,7 @@ import { applyDecorators } from '@nestjs/common';
22
import { Field, FieldOptions, ID as IDType } from '@nestjs/graphql';
33
import { ValidationOptions } from 'class-validator';
44
import { IsAny, IsNever, Tagged } from 'type-fest';
5-
import type {
6-
AllResourceDBNames,
7-
ResourceName,
8-
ResourceNameLike,
9-
} from '~/core';
5+
import type { ResourceName, ResourceNameLike } from '~/core';
106
import { IsId } from './validators';
117

128
export const IdField = ({
@@ -40,4 +36,4 @@ type IDTag<Kind> = IsAny<Kind> extends true
4036
: Kind
4137
: never;
4238

43-
type IDKindLike = ResourceNameLike | AllResourceDBNames | object;
39+
type IDKindLike = ResourceNameLike | object;

src/core/resources/resource-name.types.ts

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,9 @@ import { ConditionalKeys, IsAny, LiteralUnion, ValueOf } from 'type-fest';
22
import { DBName, ResourceShape } from '~/common';
33
import { ResourceDBMap, ResourceMap } from './map';
44

5-
export type AllResourceNames = keyof ResourceMap;
5+
export type AllResourceAppNames = keyof ResourceMap;
66
export type AllResourceDBNames = DBName<ValueOf<ResourceDBMap>>;
7+
export type AllResourceNames = AllResourceAppNames | AllResourceDBNames;
78
export type ResourceNameLike = LiteralUnion<AllResourceNames, string>;
89

910
//region ResourceName
@@ -32,13 +33,13 @@ export type ResourceName<
3233
T,
3334
IncludeSubclasses extends boolean = false,
3435
> = IsAny<T> extends true
35-
? AllResourceNames // short-circuit and prevent many seemly random circular definitions
36+
? AllResourceAppNames // short-circuit and prevent many seemly random circular definitions
3637
: T extends AllResourceDBNames
3738
? ResourceNameFromStatic<
3839
ResourceMap[ResourceNameFromDBName<T>],
3940
IncludeSubclasses
4041
>
41-
: T extends AllResourceNames
42+
: T extends AllResourceAppNames
4243
? ResourceNameFromStatic<ResourceMap[T], IncludeSubclasses>
4344
: T extends ResourceShape<any>
4445
? ResourceNameFromStatic<T, IncludeSubclasses>

src/core/resources/resources.host.ts

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,6 @@ import {
1414
import { ResourceMap } from './map';
1515
import { __privateDontUseThis } from './resource-map-holder';
1616
import {
17-
AllResourceDBNames,
1817
ResourceName,
1918
ResourceNameLike,
2019
ResourceStaticFromName,
@@ -70,7 +69,7 @@ export class ResourcesHost {
7069
return this.getByName(name as any);
7170
}
7271

73-
getByEdgeDB<Name extends ResourceNameLike | AllResourceDBNames>(
72+
getByEdgeDB<Name extends ResourceNameLike>(
7473
name: Name,
7574
): EnhancedResource<
7675
string extends Name

0 commit comments

Comments
 (0)