o
    mi                     @   s,   d dl mZ d dlmZ G dd deZdS )    )JSONRenderer)statusc                       s"   e Zd ZdZd fdd	Z  ZS )StandardJSONRendererz^
    Custom renderer to format API responses in the standard JSON API response structure.
    Nc              	      s   |d j }|tjkr*dd|v r|d n	d|v r|d ndd d|v r%|d nd d}nC|dkrEdd|v r7|d n	d|v r?|d ndd d	}n(d
|v rg|d
g }dd||dd|dd |dd dd}ndd|d	}tt| |||S )NresponseFdetailmessage errors)successr   datar	   i  )r
   r   r   resultsTcountr   previousnext)r   prevr   )r
   r   r   meta)status_coder   HTTP_422_UNPROCESSABLE_ENTITYpopgetsuperr   render)selfr   accepted_media_typerenderer_contextr   Zresponse_dataZpagination_data	__class__ D/var/www/html/kuke-dev/django-kuke/common/standard_json_renderers.pyr      s6   

""


zStandardJSONRenderer.render)NN)__name__
__module____qualname____doc__r   __classcell__r   r   r   r   r      s    r   N)rest_framework.renderersr   rest_frameworkr   r   r   r   r   r   <module>   s    