from dataclasses import dataclass from rest_framework import serializers @dataclass class OpenApiExample: name: str value: object = None request_only: bool = False response_only: bool = False summary: str | None = None description: str | None = None @dataclass class OpenApiResponse: response: object = None description: str = "" class OpenApiParameter: QUERY = "query" PATH = "path" HEADER = "header" def __init__( self, name, type=None, location=None, required=False, description="", default=None, ): self.name = name self.type = type self.location = location self.required = required self.description = description self.default = default def extend_schema(*args, **kwargs): def decorator(target): return target return decorator def extend_schema_view(**kwargs): def decorator(target): return target return decorator def inline_serializer(*, name, fields): serializer_fields = {"__module__": __name__, **fields} return type(name, (serializers.Serializer,), serializer_fields)