Coverage for lintro / parsers / vue_tsc / vue_tsc_issue.py: 100%

7 statements  

« prev     ^ index     » next       coverage.py v7.13.0, created at 2026-04-03 18:53 +0000

1"""Models for vue-tsc issues.""" 

2 

3from __future__ import annotations 

4 

5from dataclasses import dataclass, field 

6 

7from lintro.parsers.base_issue import BaseIssue 

8 

9 

10@dataclass 

11class VueTscIssue(BaseIssue): 

12 """Represents a vue-tsc type checking issue. 

13 

14 This class extends BaseIssue with vue-tsc-specific fields for type checking 

15 errors and warnings in Vue Single File Components. The output format is 

16 identical to tsc. 

17 

18 Attributes: 

19 code: TypeScript error code (e.g., "TS2322", "TS1234"). 

20 Empty string if vue-tsc doesn't provide an error code. 

21 severity: Severity level reported by vue-tsc (e.g., "error", "warning"). 

22 None if severity is not specified. 

23 

24 Examples: 

25 >>> issue = VueTscIssue( 

26 ... file="src/components/Button.vue", 

27 ... line=15, 

28 ... column=5, 

29 ... code="TS2322", 

30 ... severity="error", 

31 ... message="Type 'string' is not assignable to type 'number'.", 

32 ... ) 

33 """ 

34 

35 code: str = field(default="") 

36 severity: str | None = field(default=None)