feat(backend): [WIP] expose `privacy_level` in `Upload` object
This commit is contained in:
parent
70192906ba
commit
33a5b70435
|
@ -9291,16 +9291,25 @@ paths:
|
|||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '#/components/schemas/PatchedUploadForOwnerRequest'
|
||||
type: array
|
||||
items:
|
||||
$ref: '#/components/schemas/UploadBulkUpdateRequest'
|
||||
application/x-www-form-urlencoded:
|
||||
schema:
|
||||
$ref: '#/components/schemas/PatchedUploadForOwnerRequest'
|
||||
type: array
|
||||
items:
|
||||
$ref: '#/components/schemas/UploadBulkUpdateRequest'
|
||||
multipart/form-data:
|
||||
schema:
|
||||
$ref: '#/components/schemas/PatchedUploadForOwnerRequest'
|
||||
type: array
|
||||
items:
|
||||
$ref: '#/components/schemas/UploadBulkUpdateRequest'
|
||||
application/activity+json:
|
||||
schema:
|
||||
$ref: '#/components/schemas/PatchedUploadForOwnerRequest'
|
||||
type: array
|
||||
items:
|
||||
$ref: '#/components/schemas/UploadBulkUpdateRequest'
|
||||
required: true
|
||||
security:
|
||||
- oauth2: []
|
||||
- ApplicationToken: []
|
||||
|
@ -18957,16 +18966,25 @@ paths:
|
|||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '#/components/schemas/PatchedUploadForOwnerRequest'
|
||||
type: array
|
||||
items:
|
||||
$ref: '#/components/schemas/UploadBulkUpdateRequest'
|
||||
application/x-www-form-urlencoded:
|
||||
schema:
|
||||
$ref: '#/components/schemas/PatchedUploadForOwnerRequest'
|
||||
type: array
|
||||
items:
|
||||
$ref: '#/components/schemas/UploadBulkUpdateRequest'
|
||||
multipart/form-data:
|
||||
schema:
|
||||
$ref: '#/components/schemas/PatchedUploadForOwnerRequest'
|
||||
type: array
|
||||
items:
|
||||
$ref: '#/components/schemas/UploadBulkUpdateRequest'
|
||||
application/activity+json:
|
||||
schema:
|
||||
$ref: '#/components/schemas/PatchedUploadForOwnerRequest'
|
||||
type: array
|
||||
items:
|
||||
$ref: '#/components/schemas/UploadBulkUpdateRequest'
|
||||
required: true
|
||||
security:
|
||||
- oauth2: []
|
||||
- ApplicationToken: []
|
||||
|
@ -24609,6 +24627,8 @@ components:
|
|||
allOf:
|
||||
- $ref: '#/components/schemas/ImportStatusEnum'
|
||||
default: pending
|
||||
privacy_level:
|
||||
$ref: '#/components/schemas/LibraryPrivacyLevelEnum'
|
||||
import_metadata: {}
|
||||
import_reference:
|
||||
type: string
|
||||
|
@ -25667,6 +25687,17 @@ components:
|
|||
- mimetype
|
||||
- size
|
||||
- uuid
|
||||
UploadBulkUpdateRequest:
|
||||
type: object
|
||||
properties:
|
||||
uuid:
|
||||
type: string
|
||||
format: uuid
|
||||
privacy_level:
|
||||
$ref: '#/components/schemas/LibraryPrivacyLevelEnum'
|
||||
required:
|
||||
- privacy_level
|
||||
- uuid
|
||||
UploadForOwner:
|
||||
type: object
|
||||
properties:
|
||||
|
@ -25713,6 +25744,8 @@ components:
|
|||
allOf:
|
||||
- $ref: '#/components/schemas/ImportStatusEnum'
|
||||
default: pending
|
||||
privacy_level:
|
||||
$ref: '#/components/schemas/LibraryPrivacyLevelEnum'
|
||||
import_details:
|
||||
readOnly: true
|
||||
import_metadata: {}
|
||||
|
@ -25733,6 +25766,7 @@ components:
|
|||
- import_details
|
||||
- metadata
|
||||
- mimetype
|
||||
- privacy_level
|
||||
- size
|
||||
- uuid
|
||||
UploadForOwnerRequest:
|
||||
|
@ -25753,6 +25787,8 @@ components:
|
|||
allOf:
|
||||
- $ref: '#/components/schemas/ImportStatusEnum'
|
||||
default: pending
|
||||
privacy_level:
|
||||
$ref: '#/components/schemas/LibraryPrivacyLevelEnum'
|
||||
import_metadata: {}
|
||||
import_reference:
|
||||
type: string
|
||||
|
@ -25768,6 +25804,7 @@ components:
|
|||
writeOnly: true
|
||||
required:
|
||||
- audio_file
|
||||
- privacy_level
|
||||
Usage:
|
||||
type: object
|
||||
properties:
|
||||
|
|
|
@ -372,6 +372,9 @@ class UploadSerializer(serializers.ModelSerializer):
|
|||
required=False,
|
||||
filters=lambda context: {"actor": context["user"].actor},
|
||||
)
|
||||
privacy_level = serializers.ChoiceField(
|
||||
choices=models.LIBRARY_PRIVACY_LEVEL_CHOICES
|
||||
)
|
||||
channel = common_serializers.RelatedField(
|
||||
"uuid",
|
||||
ChannelSerializer(),
|
||||
|
@ -395,6 +398,7 @@ class UploadSerializer(serializers.ModelSerializer):
|
|||
"size",
|
||||
"import_date",
|
||||
"import_status",
|
||||
"privacy_level",
|
||||
]
|
||||
|
||||
read_only_fields = [
|
||||
|
@ -495,6 +499,7 @@ class UploadForOwnerSerializer(UploadSerializer):
|
|||
r = super().to_representation(obj)
|
||||
if "audio_file" in r:
|
||||
del r["audio_file"]
|
||||
r["privacy_level"] = obj.library.privacy_level
|
||||
return r
|
||||
|
||||
def validate(self, validated_data):
|
||||
|
|
|
@ -798,6 +798,9 @@ class UploadViewSet(
|
|||
cover_data["content"] = base64.b64encode(cover_data["content"])
|
||||
return Response(payload, status=200)
|
||||
|
||||
@extend_schema(
|
||||
request=serializers.UploadBulkUpdateSerializer(many=True),
|
||||
)
|
||||
@action(detail=False, methods=["patch"])
|
||||
def bulk_update(self, request, *args, **kwargs):
|
||||
"""
|
||||
|
|
Loading…
Reference in New Issue