Skip to content

Commit

Permalink
fix: rename util.ts
Browse files Browse the repository at this point in the history
  • Loading branch information
jiho-kr committed Aug 14, 2023
1 parent db45eb8 commit 16ff0ca
Show file tree
Hide file tree
Showing 5 changed files with 9 additions and 10 deletions.
1 change: 1 addition & 0 deletions src/lib/capitalize-first-letter.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
export const capitalizeFirstLetter = (raw: string) => `${raw.charAt(0).toUpperCase()}${raw.slice(1)}`;
2 changes: 1 addition & 1 deletion src/lib/crud.policy.ts
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
import { HttpStatus, NestInterceptor, RequestMethod, Type } from '@nestjs/common';

import { capitalizeFirstLetter } from './capitalize-first-letter';
import { ReadOneRequestInterceptor, CreateRequestInterceptor } from './interceptor';
import { DeleteRequestInterceptor } from './interceptor/delete-request.interceptor';
import { ReadManyRequestInterceptor } from './interceptor/read-many-request.interceptor';
Expand All @@ -8,7 +9,6 @@ import { SearchRequestInterceptor } from './interceptor/search-request.intercept
import { UpdateRequestInterceptor } from './interceptor/update-request.interceptor';
import { UpsertRequestInterceptor } from './interceptor/upsert-request.interceptor';
import { CrudOptions, Method, PrimaryKey, FactoryOption, Sort, PaginationType } from './interface';
import { capitalizeFirstLetter } from './util';

type CrudMethodPolicy = {
[Method.READ_ONE]: MethodPolicy<Method.READ_ONE>;
Expand Down
8 changes: 6 additions & 2 deletions src/lib/crud.route.factory.ts
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,7 @@ import { DECORATORS } from '@nestjs/swagger/dist/constants';
import { BaseEntity, getMetadataArgsStorage } from 'typeorm';
import { MetadataUtils } from 'typeorm/metadata-builder/MetadataUtils';

import { capitalizeFirstLetter } from './capitalize-first-letter';
import { CRUD_ROUTE_ARGS } from './constants';
import { CRUD_POLICY } from './crud.policy';
import { RequestSearchDto } from './dto/request-search.dto';
Expand All @@ -33,7 +34,6 @@ import {
} from './interface';
import { CrudLogger } from './provider/crud-logger';
import { CrudReadManyRequest } from './request';
import { capitalizeFirstLetter, isSomeEnum } from './util';

export class CrudRouteFactory {
private crudLogger: CrudLogger;
Expand All @@ -51,7 +51,11 @@ export class CrudRouteFactory {
this.entityInformation(crudOptions.entity);

const paginationType = crudOptions.routes?.readMany?.paginationType ?? CRUD_POLICY[Method.READ_MANY].default.paginationType;
const isPaginationType = isSomeEnum(PaginationType);
const isPaginationType = (
<TEnum extends Record<string, unknown>>(enumType: TEnum) =>
(nextCursor: unknown): nextCursor is TEnum[keyof TEnum] =>
Object.values(enumType).includes(nextCursor as TEnum[keyof TEnum])
)(PaginationType);
if (!isPaginationType(paginationType)) {
throw new TypeError(`invalid PaginationType ${paginationType}`);
}
Expand Down
2 changes: 1 addition & 1 deletion src/lib/dto/request.dto.ts
Original file line number Diff line number Diff line change
Expand Up @@ -5,8 +5,8 @@ import { getMetadataStorage, MetadataStorage } from 'class-validator';
import { ValidationMetadata } from 'class-validator/types/metadata/ValidationMetadata';
import { BaseEntity } from 'typeorm';

import { capitalizeFirstLetter } from '../capitalize-first-letter';
import { Method } from '../interface';
import { capitalizeFirstLetter } from '../util';

export function CreateRequestDto(parentClass: typeof BaseEntity, group: Method) {
const propertyNamesAppliedValidation = getPropertyNamesFromMetadata(parentClass, group);
Expand Down
6 changes: 0 additions & 6 deletions src/lib/util.ts

This file was deleted.

0 comments on commit 16ff0ca

Please sign in to comment.