o
    di                     @   s   d dl mZ d dlmZ d dlmZ G dd deZG dd deZG dd	 d	eZ	G d
d deZ
G dd deZG dd deZG dd deZG dd deZG dd deZG dd deZdS )    )models)DynamicFieldsModelSerializer)serializersc                   @      e Zd ZdZG dd dZdS )AmenitiesMasterSerializersa  
    This is the LocationsCSVUploadSerializers class responsible for serializing and deserializing location data.

    It allows users to manage the upload of location data from a CSV file and the creation or update of location records.

    Meta:
        model (LocationMaster): The model used for serialization and deserialization.
        fields (str): The fields to include in the serialization (all fields are included).
    c                   @      e Zd ZejZddgZdS )zAmenitiesMasterSerializers.MetaidnameN)__name__
__module____qualname__master_modelAmenitiesMastermodelfields r   r   e/var/www/html/evchargy.com/django-station-ev/station_ev/apps/master/serializers/master_serializers.pyMeta       r   Nr
   r   r   __doc__r   r   r   r   r   r      s    
r   c                   @   s*   e Zd ZdZejddZG dd dZdS )ConnectorMasterSerializersx  
    This is the ConnectorMasterSerializers class responsible for serializing and deserializing connector data.

    It enables users to manage the serialization and deserialization of connector data,
    allowing for efficient processing of data related to connectors.

    Meta:
        model (ConnectorMaster): The model used for serialization and deserialization.
        fields (str): The fields to include in the serialization, with all relevant fields included.

    Usage Example:
    - This serializer is typically used for converting connector data to a format suitable for
    transmission or storage and vice versa.
    T)use_urlc                   @      e Zd ZejZg dZdS )zConnectorMasterSerializers.Meta)r   r	   
short_nameimageN)r
   r   r   r   ConnectorMasterr   r   r   r   r   r   r   '   r   r   N)r
   r   r   r   r   	FileFieldr   r   r   r   r   r   r      s    r   c                   @   r   )LocationMasterSerializersr   c                   @   r   )zLocationMasterSerializers.Metar   r	   N)r
   r   r   r   LocationMasterr   r   r   r   r   r   r   <   r   r   Nr   r   r   r   r   r   ,       r   c                   @   r   ) NetworkOperatorMasterSerializersa  
    This is the NetworkOperatorMasterSerializers class responsible for serializing and deserializing
     network operator data.

    It enables users to manage the serialization and deserialization of network operator data,
    allowing for efficient processing of data related to network operators.

    Attributes:
        class Meta: Specifies the model used for serialization and the fields to include in the serialization.

    Meta:
        model (NetworkOperatorMaster): The model used for serialization and deserialization.
        fields (str): The fields to include in the serialization, with all relevant fields included.
    c                   @   r   )z%NetworkOperatorMasterSerializers.Meta)r   r	   logourlphoneN)r
   r   r   r   NetworkOperatorMasterr   r   r   r   r   r   r   Q   r   r   Nr   r   r   r   r   r"   A   r!   r"   c                   @   r   )RatingLabelsSerializersz
    Serializer for rating labels data.

    Fields:
        - id (int): Unique identifier for the rating label.
        - label (str): Name of the rating label.
    c                   @      e Zd ZejZdZdgZdS )zRatingLabelsSerializers.Meta)r   labelr   N)r
   r   r   r   RatingLabelMasterr   r   read_only_fieldsr   r   r   r   r   _       
r   Nr   r   r   r   r   r'   V   s    r'   c                   @   s2   e Zd ZdZedddgdddZG dd dZd	S )
RatingLabelsAssetSerializersaC  
    Serializer for rating labels assets data.

    Fields:
        - rating (float): Rating associated with the asset.
        - title (str): Title or name of the asset.
        - labels (RatingLabelsSerializer, optional): Rating labels associated with the asset.
        - asset (str): URL or reference to the asset.
    labelsr   r)   T)sourcer   many	read_onlyc                   @   s,   e Zd ZejZg dZdgZdddiiZdS )z!RatingLabelsAssetSerializers.Meta)r   ratingtitler.   labels_dataassetr   r.   
write_onlyTN)	r
   r   r   r   RatingLabelsAssetr   r   r+   extra_kwargsr   r   r   r   r   t   s    r   N)r
   r   r   r   r'   r4   r   r   r   r   r   r-   e   s    
r-   c                   @   r   )PrivacyPolicySerializerszm
    Serializer for PrivacyPolicy data.

    Fields:
        - content (str): content for PrivacyPolicy.
    c                   @       e Zd ZejZddgZdgZdS )zPrivacyPolicySerializers.Metar   contentN)r
   r   r   r   PrivacyPolicyMasterr   r   r+   r   r   r   r   r          
r   Nr   r   r   r   r   r9   }       r9   c                   @   r   )TermsOfUseSerializerszg
    Serializer for TermsOfUse data.

    Fields:
        - content (str): content for TermsOfUse.
    c                   @   r:   )zTermsOfUseSerializers.Metar   r;   N)r
   r   r   r   TermsOfUseMasterr   r   r+   r   r   r   r   r      r=   r   Nr   r   r   r   r   r?      r>   r?   c                   @   r   )FaqSerializersz
    Serializer for faq data.

    Fields:
        - id (int): Unique identifier for the rating label.
        - title (str): Title of the faq.
        - content (str): Content of the faq.
    c                   @   r(   )zFaqSerializers.Meta)r   r3   r;   r   N)r
   r   r   r   	FaqMasterr   r   r+   r   r   r   r   r      r,   r   Nr   r   r   r   r   rA      s    	rA   c                   @   r   )ContactUsRequestTypeSerializersa  
    Serializer class for serializing and deserializing ContactUsRequestTypeMaster instances.

    This serializer class includes fields for 'id' and 'name'.
    'id' is marked as read-only.

    Attributes:
        Meta.model: The model class to which this serializer applies.
        Meta.fields: The fields to include in the serialized representation.
        Meta.read_only_fields: The fields that should be treated as read-only during updates.
    c                   @   r(   )z$ContactUsRequestTypeSerializers.Meta)r   r	   r   N)r
   r   r   r   ContactUsRequestTypeMasterr   r   r+   r   r   r   r   r      r,   r   Nr   r   r   r   r   rC      s    rC   N)Zapps.masterr   r   base.serializersr   rest_frameworkr   r   r   r   r"   r'   r-   r9   r?   rA   rC   r   r   r   r   <module>   s    