Use standard Python type hints in models
This commit is contained in:
parent
1bb80c67c9
commit
2746d8750d
|
@ -15,9 +15,6 @@ from funkwhale_api.federation import models as federation_models
|
|||
from funkwhale_api.federation import utils as federation_utils
|
||||
from funkwhale_api.users import models as user_models
|
||||
|
||||
from drf_spectacular.utils import extend_schema_field
|
||||
from drf_spectacular.types import OpenApiTypes
|
||||
|
||||
def empty_dict():
|
||||
return {}
|
||||
|
||||
|
@ -83,8 +80,7 @@ class Channel(models.Model):
|
|||
return self.actor.fid
|
||||
|
||||
@property
|
||||
@extend_schema_field(OpenApiTypes.BOOL)
|
||||
def is_local(self):
|
||||
def is_local(self) -> bool:
|
||||
return self.actor.is_local
|
||||
|
||||
@property
|
||||
|
|
|
@ -18,9 +18,6 @@ from django.urls import reverse
|
|||
from versatileimagefield.fields import VersatileImageField
|
||||
from versatileimagefield.image_warmer import VersatileImageFieldWarmer
|
||||
|
||||
from drf_spectacular.utils import extend_schema_field
|
||||
from drf_spectacular.types import OpenApiTypes
|
||||
|
||||
from funkwhale_api.federation import utils as federation_utils
|
||||
|
||||
from . import utils
|
||||
|
@ -243,7 +240,6 @@ class Attachment(models.Model):
|
|||
return super().save()
|
||||
|
||||
@property
|
||||
@extend_schema_field(OpenApiTypes.BOOL)
|
||||
def is_local(self):
|
||||
return federation_utils.is_local(self.fid)
|
||||
|
||||
|
|
|
@ -19,9 +19,6 @@ from funkwhale_api.common import utils as common_utils
|
|||
from funkwhale_api.common import validators as common_validators
|
||||
from funkwhale_api.music import utils as music_utils
|
||||
|
||||
from drf_spectacular.utils import extend_schema_field
|
||||
from drf_spectacular.types import OpenApiTypes
|
||||
|
||||
from . import utils as federation_utils
|
||||
|
||||
TYPE_CHOICES = [
|
||||
|
@ -51,8 +48,7 @@ class FederationMixin(models.Model):
|
|||
abstract = True
|
||||
|
||||
@property
|
||||
@extend_schema_field(OpenApiTypes.BOOL)
|
||||
def is_local(self):
|
||||
def is_local(self) -> bool:
|
||||
return federation_utils.is_local(self.fid)
|
||||
|
||||
@property
|
||||
|
@ -176,8 +172,7 @@ class Domain(models.Model):
|
|||
return data
|
||||
|
||||
@property
|
||||
@extend_schema_field(OpenApiTypes.BOOL)
|
||||
def is_local(self):
|
||||
def is_local(self) -> bool:
|
||||
return self.name == settings.FEDERATION_HOSTNAME
|
||||
|
||||
|
||||
|
@ -237,24 +232,20 @@ class Actor(models.Model):
|
|||
return "{}#main-key".format(self.fid)
|
||||
|
||||
@property
|
||||
@extend_schema_field(OpenApiTypes.STR)
|
||||
def full_username(self):
|
||||
def full_username(self) -> str:
|
||||
return "{}@{}".format(self.preferred_username, self.domain_id)
|
||||
|
||||
def __str__(self):
|
||||
return "{}@{}".format(self.preferred_username, self.domain_id)
|
||||
|
||||
@property
|
||||
@extend_schema_field(OpenApiTypes.BOOL)
|
||||
def is_local(self) -> bool:
|
||||
return self.domain_id == settings.FEDERATION_HOSTNAME
|
||||
|
||||
@extend_schema_field({'type': 'array', 'items': {'type': 'object'}})
|
||||
def get_approved_followers(self):
|
||||
follows = self.received_follows.filter(approved=True)
|
||||
return self.followers.filter(pk__in=follows.values_list("actor", flat=True))
|
||||
|
||||
@extend_schema_field(OpenApiTypes.BOOL)
|
||||
def should_autoapprove_follow(self, actor):
|
||||
if self.get_channel():
|
||||
return True
|
||||
|
|
|
@ -35,9 +35,6 @@ from funkwhale_api.federation import utils as federation_utils
|
|||
from funkwhale_api.tags import models as tags_models
|
||||
from . import importers, metadata, utils
|
||||
|
||||
from drf_spectacular.utils import extend_schema_field
|
||||
from drf_spectacular.types import OpenApiTypes
|
||||
|
||||
logger = logging.getLogger(__name__)
|
||||
|
||||
MAX_LENGTHS = {
|
||||
|
@ -140,8 +137,7 @@ class APIModelMixin(models.Model):
|
|||
return super().save(**kwargs)
|
||||
|
||||
@property
|
||||
@extend_schema_field(OpenApiTypes.BOOL)
|
||||
def is_local(self):
|
||||
def is_local(self) -> bool:
|
||||
return federation_utils.is_local(self.fid)
|
||||
|
||||
@property
|
||||
|
@ -152,7 +148,6 @@ class APIModelMixin(models.Model):
|
|||
parsed = urllib.parse.urlparse(self.fid)
|
||||
return parsed.hostname
|
||||
|
||||
@extend_schema_field({'type': 'array', 'items': {'type': 'string'}})
|
||||
def get_tags(self):
|
||||
return list(sorted(self.tagged_items.values_list("tag__name", flat=True)))
|
||||
|
||||
|
@ -787,8 +782,7 @@ class Upload(models.Model):
|
|||
objects = UploadQuerySet.as_manager()
|
||||
|
||||
@property
|
||||
@extend_schema_field(OpenApiTypes.BOOL)
|
||||
def is_local(self):
|
||||
def is_local(self) -> bool:
|
||||
return federation_utils.is_local(self.fid)
|
||||
|
||||
@property
|
||||
|
|
|
@ -29,9 +29,6 @@ from funkwhale_api.federation import keys
|
|||
from funkwhale_api.federation import models as federation_models
|
||||
from funkwhale_api.federation import utils as federation_utils
|
||||
|
||||
from drf_spectacular.utils import extend_schema_field
|
||||
from drf_spectacular.types import OpenApiTypes
|
||||
|
||||
def get_token(length=5):
|
||||
wordlist_path = os.path.join(
|
||||
os.path.dirname(os.path.abspath(__file__)), "wordlist.txt"
|
||||
|
@ -309,8 +306,7 @@ class User(AbstractUser):
|
|||
|
||||
return groups
|
||||
|
||||
@extend_schema_field(OpenApiTypes.STR)
|
||||
def full_username(self):
|
||||
def full_username(self) -> str:
|
||||
return "{}@{}".format(self.username, settings.FEDERATION_HOSTNAME)
|
||||
|
||||
def get_avatar(self):
|
||||
|
|
Loading…
Reference in New Issue