Skip to content

Commit fd2ed3a

Browse files
committed
Improve JSON typing
1 parent 738e97e commit fd2ed3a

2 files changed

Lines changed: 10 additions & 1 deletion

File tree

‎api/projects/code_references/models.py‎

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,8 @@
22
from django.db import models
33
from django.db.models.expressions import Func
44

5+
from projects.code_references.types import JSONCodeReference
6+
57

68
class FeatureFlagCodeReferencesScan(models.Model):
79
"""
@@ -16,7 +18,7 @@ class FeatureFlagCodeReferencesScan(models.Model):
1618

1719
repository_url = models.URLField() # Provider-agnostic
1820
revision = models.CharField(max_length=100)
19-
code_references = models.JSONField(default=list)
21+
code_references = models.JSONField[list[JSONCodeReference]](default=list)
2022

2123
created_at = models.DateTimeField(auto_now_add=True, db_index=True)
2224

‎api/projects/code_references/types.py‎

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,12 @@
11
from dataclasses import dataclass
22
from datetime import datetime
3+
from typing import TypedDict
4+
5+
6+
class JSONCodeReference(TypedDict):
7+
feature_name: str
8+
file_path: str
9+
line_number: int
310

411

512
@dataclass

0 commit comments

Comments
 (0)