Skip to content

Commit

Permalink
Refactor BaseAction and BaseActionRequest DTOs
Browse files Browse the repository at this point in the history
  • Loading branch information
wcalderipe committed Feb 14, 2024
1 parent 30a84b1 commit 98ec08c
Show file tree
Hide file tree
Showing 19 changed files with 36 additions and 106 deletions.
8 changes: 4 additions & 4 deletions apps/authz/src/app/evaluation-request.dto.ts
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ import {
BaseActionDto,
FiatCurrency,
Hex,
RequestSignatureDto
SignatureDto
} from '@narval/authz-shared'
import { ApiExtraModels, ApiProperty, getSchemaPath } from '@nestjs/swagger'
import { Transform, Type } from 'class-transformer'
Expand Down Expand Up @@ -133,15 +133,15 @@ export class EvaluationRequestDto {
@IsDefined()
@ValidateNested()
@ApiProperty()
authentication: RequestSignatureDto
authentication: SignatureDto

@IsOptional()
@ValidateNested()
@ApiProperty({
type: () => RequestSignatureDto,
type: () => SignatureDto,
isArray: true
})
approvals?: RequestSignatureDto[]
approvals?: SignatureDto[]

@ValidateNested()
@Type((opts) => {
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import { Action, BaseActionDto, BaseAdminRequestPayloadDto } from '@narval/authz-shared'
import { Action, BaseActionDto, BaseActionRequestDto } from '@narval/authz-shared'
import { ApiProperty } from '@nestjs/swagger'
import { Type } from 'class-transformer'
import { IsArray, IsDefined, IsString, Matches, ValidateNested } from 'class-validator'
Expand All @@ -19,7 +19,7 @@ export class SetPolicyRulesDto extends BaseActionDto {
data: Policy[]
}

export class SetPolicyRulesRequestDto extends BaseAdminRequestPayloadDto {
export class SetPolicyRulesRequestDto extends BaseActionRequestDto {
@IsDefined()
@ValidateNested()
@Type(() => SetPolicyRulesDto)
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import { Action, BaseActionDto, BaseAdminRequestPayloadDto } from '@narval/authz-shared'
import { Action, BaseActionDto, BaseActionRequestDto } from '@narval/authz-shared'
import { ApiProperty } from '@nestjs/swagger'
import { Type } from 'class-transformer'
import { IsDefined, IsIn, ValidateNested } from 'class-validator'
Expand All @@ -22,7 +22,7 @@ class AssignUserGroupActionDto extends BaseActionDto {
data: UserGroupMembershipDto
}

export class AssignUserGroupRequestDto extends BaseAdminRequestPayloadDto {
export class AssignUserGroupRequestDto extends BaseActionRequestDto {
@IsDefined()
@Type(() => AssignUserGroupActionDto)
@ValidateNested()
Expand Down
Original file line number Diff line number Diff line change
@@ -1,8 +1,7 @@
import { Action, BaseAdminRequestPayloadDto } from '@narval/authz-shared'
import { Action, BaseActionDto, BaseActionRequestDto } from '@narval/authz-shared'
import { ApiProperty } from '@nestjs/swagger'
import { Type } from 'class-transformer'
import { IsDefined, IsEnum, ValidateNested } from 'class-validator'
import { BaseActionDto } from './base-action.dto'
import { UserWalletDto } from './user-wallet.dto'

class AssignUserWalletActionDto extends BaseActionDto {
Expand All @@ -22,7 +21,7 @@ class AssignUserWalletActionDto extends BaseActionDto {
data: UserWalletDto
}

export class AssignUserWalletRequestDto extends BaseAdminRequestPayloadDto {
export class AssignUserWalletRequestDto extends BaseActionRequestDto {
@IsDefined()
@Type(() => AssignUserWalletActionDto)
@ValidateNested()
Expand Down
Original file line number Diff line number Diff line change
@@ -1,8 +1,7 @@
import { Action, BaseAdminRequestPayloadDto } from '@narval/authz-shared'
import { Action, BaseActionDto, BaseActionRequestDto } from '@narval/authz-shared'
import { ApiProperty } from '@nestjs/swagger'
import { Type } from 'class-transformer'
import { IsDefined, IsEnum, ValidateNested } from 'class-validator'
import { BaseActionDto } from './base-action.dto'
import { WalletGroupMembershipDto } from './wallet-group-membership.dto'

class AssignWalletGroupActionDto extends BaseActionDto {
Expand All @@ -23,7 +22,7 @@ class AssignWalletGroupActionDto extends BaseActionDto {
data: WalletGroupMembershipDto
}

export class AssignWalletGroupRequestDto extends BaseAdminRequestPayloadDto {
export class AssignWalletGroupRequestDto extends BaseActionRequestDto {
@IsDefined()
@Type(() => AssignWalletGroupActionDto)
@ValidateNested()
Expand Down

This file was deleted.

Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import { Action, BaseActionDto, BaseAdminRequestPayloadDto } from '@narval/authz-shared'
import { Action, BaseActionDto, BaseActionRequestDto } from '@narval/authz-shared'
import { ApiProperty } from '@nestjs/swagger'
import { Type } from 'class-transformer'
import { IsDefined, IsEnum, ValidateNested } from 'class-validator'
Expand All @@ -21,7 +21,7 @@ class CreateAddressBookAccountActionDto extends BaseActionDto {
account: AddressBookAccountDataDto
}

export class CreateAddressBookAccountRequestDto extends BaseAdminRequestPayloadDto {
export class CreateAddressBookAccountRequestDto extends BaseActionRequestDto {
@IsDefined()
@Type(() => CreateAddressBookAccountActionDto)
@ValidateNested()
Expand Down
Original file line number Diff line number Diff line change
@@ -1,10 +1,8 @@
import { Action } from '@narval/authz-shared'
import { Action, BaseActionDto, BaseActionRequestDto } from '@narval/authz-shared'
import { ApiProperty } from '@nestjs/swagger'
import { Type } from 'class-transformer'
import { IsDefined, IsEnum, ValidateNested } from 'class-validator'
import { AuthCredentialDto } from './auth-credential.dto'
import { BaseActionDto } from './base-action.dto'
import { BaseAdminRequestPayloadDto } from './base-admin-request-payload.dto'

class CreateCredentialActionDto extends BaseActionDto {
@IsEnum(Action)
Expand All @@ -21,7 +19,7 @@ class CreateCredentialActionDto extends BaseActionDto {
credential: AuthCredentialDto
}

export class CreateCredentialRequestDto extends BaseAdminRequestPayloadDto {
export class CreateCredentialRequestDto extends BaseActionRequestDto {
@IsDefined()
@Type(() => CreateCredentialActionDto)
@ValidateNested()
Expand Down
Original file line number Diff line number Diff line change
@@ -1,10 +1,8 @@
import { Action } from '@narval/authz-shared'
import { Action, BaseActionDto, BaseActionRequestDto } from '@narval/authz-shared'
import { ApiProperty } from '@nestjs/swagger'
import { Type } from 'class-transformer'
import { IsDefined, IsEnum, IsNotEmpty, IsString, ValidateNested } from 'class-validator'
import { AuthCredentialDto } from './auth-credential.dto'
import { BaseActionDto } from './base-action.dto'
import { BaseAdminRequestPayloadDto } from './base-admin-request-payload.dto'

class CreateOrganizationDataDto {
@IsString()
Expand Down Expand Up @@ -39,7 +37,7 @@ class CreateOrganizationActionDto extends BaseActionDto {
organization: CreateOrganizationDataDto
}

export class CreateOrganizationRequestDto extends BaseAdminRequestPayloadDto {
export class CreateOrganizationRequestDto extends BaseActionRequestDto {
@IsDefined()
@Type(() => CreateOrganizationActionDto)
@ValidateNested()
Expand Down
Original file line number Diff line number Diff line change
@@ -1,9 +1,7 @@
import { Action, UserRole } from '@narval/authz-shared'
import { Action, BaseActionDto, BaseActionRequestDto, UserRole } from '@narval/authz-shared'
import { ApiProperty } from '@nestjs/swagger'
import { IsDefined, IsIn, IsOptional, IsString, ValidateNested } from 'class-validator'
import { AuthCredentialDto } from './auth-credential.dto'
import { BaseActionDto } from './base-action.dto'
import { BaseAdminRequestPayloadDto } from './base-admin-request-payload.dto'

class CreateUserDataDto {
@IsString()
Expand Down Expand Up @@ -43,7 +41,7 @@ class CreateUserActionDto extends BaseActionDto {
user: CreateUserDataDto
}

export class CreateUserRequestDto extends BaseAdminRequestPayloadDto {
export class CreateUserRequestDto extends BaseActionRequestDto {
@IsDefined()
@ValidateNested()
@ApiProperty()
Expand Down
Original file line number Diff line number Diff line change
@@ -1,8 +1,7 @@
import { Action, BaseAdminRequestPayloadDto } from '@narval/authz-shared'
import { Action, BaseActionDto, BaseActionRequestDto } from '@narval/authz-shared'
import { ApiProperty } from '@nestjs/swagger'
import { Type } from 'class-transformer'
import { IsArray, IsDefined, IsEnum, ValidateNested } from 'class-validator'
import { BaseActionDto } from './base-action.dto'
import { TokenDto } from './token-dto'

class RegisterTokensActionDto extends BaseActionDto {
Expand All @@ -23,7 +22,7 @@ class RegisterTokensActionDto extends BaseActionDto {
tokens: TokenDto[]
}

export class RegisterTokensRequestDto extends BaseAdminRequestPayloadDto {
export class RegisterTokensRequestDto extends BaseActionRequestDto {
@IsDefined()
@Type(() => RegisterTokensActionDto)
@ValidateNested()
Expand Down
Original file line number Diff line number Diff line change
@@ -1,9 +1,7 @@
import { Action } from '@narval/authz-shared'
import { Action, BaseActionDto, BaseActionRequestDto } from '@narval/authz-shared'
import { ApiProperty } from '@nestjs/swagger'
import { Type } from 'class-transformer'
import { IsDefined, IsEnum, ValidateNested } from 'class-validator'
import { BaseActionDto } from './base-action.dto'
import { BaseAdminRequestPayloadDto } from './base-admin-request-payload.dto'
import { WalletDto } from './wallet-dto'

class RegisterWalletActionDto extends BaseActionDto {
Expand All @@ -23,7 +21,7 @@ class RegisterWalletActionDto extends BaseActionDto {
wallet: WalletDto
}

export class RegisterWalletRequestDto extends BaseAdminRequestPayloadDto {
export class RegisterWalletRequestDto extends BaseActionRequestDto {
@IsDefined()
@Type(() => RegisterWalletActionDto)
@ValidateNested()
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import { Action, BaseActionDto, BaseAdminRequestPayloadDto, UserRole } from '@narval/authz-shared'
import { Action, BaseActionDto, BaseActionRequestDto, UserRole } from '@narval/authz-shared'
import { ApiProperty } from '@nestjs/swagger'
import { IsDefined, IsIn, IsString, ValidateNested } from 'class-validator'

Expand Down Expand Up @@ -31,7 +31,7 @@ class UpdateUserActionDto extends BaseActionDto {
user: UpdateUserDataDto
}

export class UpdateUserRequestDto extends BaseAdminRequestPayloadDto {
export class UpdateUserRequestDto extends BaseActionRequestDto {
@IsDefined()
@ValidateNested()
@ApiProperty()
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
import { UserDto } from '@narval/authz-shared'
import { ApiProperty } from '@nestjs/swagger'
import { Type } from 'class-transformer'
import { IsDefined, ValidateNested } from 'class-validator'
import { UserDto } from './user-dto'

export class UpdateUserResponseDto {
@IsDefined()
Expand Down
Original file line number Diff line number Diff line change
@@ -1,20 +1,20 @@
import { ApiProperty } from '@nestjs/swagger'
import { ArrayNotEmpty, IsDefined, ValidateNested } from 'class-validator'
import { RequestSignatureDto } from './request-signature.dto'
import { SignatureDto } from './signature.dto'

export class BaseAdminRequestPayloadDto {
export class BaseActionRequestDto {
@IsDefined()
@ApiProperty({
type: () => RequestSignatureDto
type: () => SignatureDto
})
authentication: RequestSignatureDto
authentication: SignatureDto

@IsDefined()
@ArrayNotEmpty()
@ValidateNested()
@ApiProperty({
type: () => RequestSignatureDto,
type: () => SignatureDto,
isArray: true
})
approvals: RequestSignatureDto[]
approvals: SignatureDto[]
}

This file was deleted.

5 changes: 2 additions & 3 deletions packages/authz-shared/src/lib/dto/index.ts
Original file line number Diff line number Diff line change
@@ -1,4 +1,3 @@
export * from './base-action-request.dto'
export * from './base-action.dto'
export * from './base-admin-request-payload.dto'
export * from './request-signature.dto'
export * from './user-dto'
export * from './signature.dto'
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ import { ApiProperty } from '@nestjs/swagger'
import { IsDefined, IsIn, IsString } from 'class-validator'
import { Alg } from '../type/action.type'

export class RequestSignatureDto {
export class SignatureDto {
@IsString()
@IsDefined()
@ApiProperty()
Expand Down
21 changes: 0 additions & 21 deletions packages/authz-shared/src/lib/dto/user-dto.ts

This file was deleted.

0 comments on commit 98ec08c

Please sign in to comment.