
    <4h                    n   d dl mZ d dlmZ d dlmZmZmZmZm	Z	m
Z
  G d dej                        Z G d dej                        Z G d d	ej                        Z G d
 dej                        Z G d dej                        ZeZ G d dej                        Zh dZ G d dej                        Zy)    )annotations)serializers)
SourceHtmlSourceManualNetworkMonitoredPage	AdsManualSourceNetworkAdsc                       e Zd Z G d d      Zy)NetworkSourceSerializerc                      e Zd ZeZdZy)NetworkSourceSerializer.Meta__all__N)__name__
__module____qualname__r	   modelfields     +/var/www/extractly/extractly/serializers.pyMetar      s    r   r   Nr   r   r   r   r   r   r   r   r           r   r   c                       e Zd Z G d d      Zy)HtmlNetworkSourceSerializerc                      e Zd ZeZdZy) HtmlNetworkSourceSerializer.Metar   N)r   r   r   r   r   r   r   r   r   r   r      s    r   r   Nr   r   r   r   r   r      r   r   r   c                       e Zd Z G d d      Zy)ManualDataSourceSerializerc                      e Zd ZeZdZy)ManualDataSourceSerializer.Metar   N)r   r   r   r   r   r   r   r   r   r   r"      s    r   r   Nr   r   r   r   r    r       r   r   r    c                       e Zd Z G d d      Zy)NetworkMonitoredPageSerializerc                      e Zd ZeZdZy)#NetworkMonitoredPageSerializer.Metar   N)r   r   r   r   r   r   r   r   r   r   r&      s    $r   r   Nr   r   r   r   r$   r$      r   r   r$   c                       e Zd Z G d d      Zy)AdsSerializerc                      e Zd ZeZdZy)AdsSerializer.Metar   N)r   r   r   r
   r   r   r   r   r   r   r*   #   s    r   r   Nr   r   r   r   r(   r(   "   r   r   r(   c                  $    e Zd ZdZ G d d      Zy)!NetworkMonitoringManualSerializeru;   Pełny serializer AdsManual (do wewnętrznych zastosowań).c                      e Zd ZeZdZy)&NetworkMonitoringManualSerializer.Metar   N)r   r   r   r   r   r   r   r   r   r   r.   .   s    r   r   N)r   r   r   __doc__r   r   r   r   r,   r,   ,   s    E r   r,   >
   has_datacheck_activeadvertiser_nameincomplete_dataadvertiser_phonecheck_active_dateisSendToMainServeroriginal_image_urlscheck_active_from_imageprocessed_without_imagec                  6     e Zd ZdZ G d d      Z fdZ xZS )AdsManualCloudSerializeru   
    Minimalny, bezpieczny serializer do wysyłki do chmury:
    - wycina pola techniczne/niewspierane po stronie odbiorcy (exclude)
    - opcjonalnie usuwa puste wartości w to_representation (lżejszy payload)
    c                       e Zd ZeZ ee      Zy)AdsManualCloudSerializer.MetaN)r   r   r   r   r   tuple_CLOUD_DISALLOWED_FIELDSexcluder   r   r   r   r=   H   s    01r   r   c           	         t         |   |      }|j                         D ci c]  \  }}|d dg i fvs|| }}}|S c c}}w )N )superto_representationitems)selfinstancedatakvcleaned	__class__s         r   rD   z*AdsManualCloudSerializer.to_representationM   sO    w(2$(JJLPLDAqAdBB=O4O1a4LP Qs   ??)r   r   r   r/   r   rD   __classcell__)rL   s   @r   r;   r;   B   s    
2 2
 r   r;   N)
__future__r   rest_frameworkr   extractly.modelsr   r   r   r   r	   r
   ModelSerializerr   r   r    r$   r(   NetworkMonitoringSerializerr,   r?   r;   r   r   r   <module>rS      s    " & k99 
+"="= 
!<!< 
[%@%@ K//  , (C(C  {:: r   