abp icon indicating copy to clipboard operation
abp copied to clipboard

NX Proxy Generator failed to generate generic / template dto

Open puschie286 opened this issue 1 year ago • 0 comments

Is there an existing issue for this?

  • [X] I have searched the existing issues

Description

Dtos with generic parameter failed to generate correct proxy dto.

we have a simple dto (almost identical to Volo.Abp.Applcation.Dtos.EntityDto) that we used as base for almost all dtos.

[Serializable]
public abstract class ConcurrencyEntityDto : EntityDto, IHasConcurrencyStamp
{
	public string ConcurrencyStamp { get; set; } = null!;
}

[Serializable]
public abstract class ConcurrencyEntityDto<TKey> : EntityDto<TKey>, IHasConcurrencyStamp
{
	public string ConcurrencyStamp { get; set; } = null!;
}

but the fails to generate correct proxy classes. this is generated:

import type { EntityDto } from '@abp/ng.core';
import type { TKey } from '../../../models';

export interface ConcurrencyEntityDto extends EntityDto {
  concurrencyStamp?: string;
}

export interface ConcurrencyEntityDto<TKey> extends EntityDto<TKey> {
  concurrencyStamp?: string;
}

there are two problems:

  1. generated import of generic type
  2. two version are generated (not valid for typescript)

Reproduction Steps

No response

Expected behavior

No response

Actual behavior

No response

Regression?

No response

Known Workarounds

Manual removing generic type import, remove non generic version and define type (like string) as generic default

Version

8.0.5

User Interface

Angular

Database Provider

EF Core (Default)

Tiered or separate authentication server

None (Default)

Operation System

Windows (Default)

Other information

No response

puschie286 avatar Mar 21 '24 09:03 puschie286