Comments (1)
Hey alvipeo!
Yea there are limits to what I try to detect. I don't check if a type is aliased to a primitive type. It isn't a common use case in the apps i've written at least. anyone doing that can just disable the rule for that property.
For your releases status list - I DO require a type property for arrays. The only non-primitive type that I don't require a @type() for is enums.
So you could fix your issue there a couple of ways
method 1: Disable the rule
// eslint-disable-next-line @darraghor/nestjs-typed/validated-non-primitive-property-needs-type-decorator
@ApiProperty({
enum: ["planned", "failed", "blocked", "in-progress"]
})
@IsIn(RELEASE_STATUSES)
status!: ReleaseStatus;
Method 2: indicate the array element type
@ApiProperty({
enum: ["planned", "failed", "blocked", "in-progress"]
})
@IsIn(RELEASE_STATUSES)
@Type(()=> String)
status!: ReleaseStatus;
Method 3: Use an enum (This is what I usually do for these)
export enum ReleaseStatus {
PLANNED="planned";
FAILED= "failed";
BLOCKED= "blocked"
IN_PROGRESS = "in-progress"
}
@ApiProperty({
enum: ReleaseStatus,
enumName "ReleaseStatus"
})
@IsEnum(ReleaseStatus)
status!: ReleaseStatus;
from eslint-plugin-nestjs-typed.
Related Issues (20)
- hacktoberfest 2023 HOT 2
- param-decorator-name-matches-route-param: why does it fails in this case? HOT 1
- New Rule Suggestion: disallow multiple usage of the same 'discoverable' decorator HOT 4
- ValidateIf should be handled like IsOptional HOT 2
- add rule to disalow using `@Inject()` without some token when using it on `constructor` HOT 2
- Swagger: Rule for requiring @ApiParam and @ApiQuery for every @Param() and @Query() used.
- Swagger: Rule for enforcing @ApiParam and @ApiQuery of @Param("...") or @Query("...") is used. HOT 5
- New Rule Suggestion: forbids `app.get()` for APP_* tokens HOT 1
- ApiPropertOptional
- New Rule: No redundant required on `@ApiProperty` HOT 1
- New Rule: Use Dependency Injection HOT 1
- filterFromPaths doesn't work
- plugin doesn't work with NX HOT 2
- `provided-injected-should-match-factory-parameters` fails linting on unrelated code HOT 1
- Using constants as options for `@ApiProperty` breaks `api-property-returning-array-should-set-array` HOT 4
- Rule to detect that an injected dependency has no @Injectable() decorator on the defining class HOT 3
- Invalid tests ? HOT 3
- Should ignore non-verifiable types - param-decorator-name-matches-route-param
- Support for @typescript-eslint/parse v6 HOT 5
- Dependency Dashboard
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from eslint-plugin-nestjs-typed.