nestjs typeorm custom manytomany delete 에러

안녕하세요. nestjs typeorm을 이용해서 custom manytomany를 진행하고 있습니다.

맨 하단 Many-to-many relations with custom properties를 참고해서 만들었고 insert에 대해선 잘 작동하고 있습니다. 다만, update시 사용자가 입력한 값을 제외한 나머지는 삭제 처리하는 기능을 구현하고 있는데 insert에 대해서만 작동합니다.

데이터베이스에는 하단과 같습니다.

이때 사용자에서 이러한 데이터가 전달되면 데이터베이스는 insert합니다.

// parameters: 5

{
  "vendors": [
    {
      "vendorId": 4 
    }
  ]
}

이때, 1번은 지워지지 않고 insert만 된 상태입니다. 제가 원하는 것은 위 데이터가 전달되었을 때 1번은 지워지고 8번은 생기는 상태로 만들고 싶습니다. 또한, 배열형태로 데이터가 들어오면 1,8번이 삭제가 되는것으로 만들고 싶습니다.

코드는 다음과 같습니다.

// vendorGroup-vendor.entity.ts

import {Entity, ManyToOne, PrimaryGeneratedColumn, Unique} from 'typeorm'
import {Vendor, VendorGroup} from './index'
import {IsInt} from 'class-validator'

@Unique(['group', 'vendor'])
@Entity({name: 'VendorGroup-Vendor'})
export class VendorGroupToVendor {
  @IsInt()
  @PrimaryGeneratedColumn()
  id: number

  @ManyToOne(() => VendorGroup, (group) => group.id, {
    nullable: false,
    onUpdate: 'CASCADE',
    onDelete: 'CASCADE',
    orphanedRowAction: 'delete'
  })
  group: VendorGroup

  @ManyToOne(() => Vendor, (vendor) => vendor.id, {
    nullable: false,
    onUpdate: 'CASCADE',
    onDelete: 'CASCADE',
    orphanedRowAction: 'delete'
  })
  vendor: Vendor

  constructor(partial: Partial<VendorGroupToVendor>) {
    Object.assign(this, partial)
  }
}
// vendor.entity.ts

  @ApiHideProperty()
  @OneToMany(() => VendorGroupToVendor, (vendorGroupToVendor) => vendorGroupToVendor.vendor, {
    cascade: true
  })
  vendorGroupToVendor: VendorGroupToVendor[]
// vendor-group.entity.ts

  @ApiHideProperty()
  @OneToMany(() => VendorGroupToVendor, (vendorGroupToVendor) => vendorGroupToVendor.group, {
    cascade: true
  })
  vendorGroupToVendor: VendorGroupToVendor[]
// vendor-groups.service.ts

const {vendors, ...rest} = data
const group = new VendorGroup({id, ...rest})
await this.vendorGroupRepository.save(group)
const vendorGroupToVendors: VendorGroupToVendor[] = []
for (let i = 0; i < vendors.length; i++) {
  vendorGroupToVendors.push(
    new VendorGroupToVendor({
              id: vendors[i].id,
              vendor: new Vendor({id: vendors[i].vendorId}),
              group: new VendorGroup({id})
            })
          )
        }
await this.vendorGroupVendorRepository.save(vendorGroupToVendors)

더 원하시는 코드있으면 알려주세요. 댓글로 전달해드리겠습니다.