
    x
h              	       j   d dl mZ d dlmZ d dlmZ  G d dej                        Z ej                  e      Z	 ej                         e_         ej                         e_         ej                         e_         ej                         e_         ej                         e_         ej                         e_         ej                         e_         ej                         e_        ej                  ej                  ej                  ej                  ej                  ej                   ej"                  ej$                  de_         ed      e_         ed      e_         ed	      e_         ed
      e_         ed      e_         ed      e_         ed      e_         ed      e_        i Zy)    )unicode_literals)
stone_base)stone_validatorsc                   v     e Zd ZdZdZdZdZdZdZdZ	dZ
dZdZd Zd Zd Zd Zd Zd	 Zd
 Zd Z fdZ xZS )PlatformTypea  
    Possible platforms on which a user may view content.

    This class acts as a tagged union. Only one of the ``is_*`` methods will
    return true. To get the associated value of a tag (if one exists), use the
    corresponding ``get_*`` method.

    :ivar seen_state.PlatformType.web: The content was viewed on the web.
    :ivar seen_state.PlatformType.desktop: The content was viewed on a desktop
        client.
    :ivar seen_state.PlatformType.mobile_ios: The content was viewed on a mobile
        iOS client.
    :ivar seen_state.PlatformType.mobile_android: The content was viewed on a
        mobile android client.
    :ivar seen_state.PlatformType.api: The content was viewed from an API
        client.
    :ivar seen_state.PlatformType.unknown: The content was viewed on an unknown
        platform.
    :ivar seen_state.PlatformType.mobile: The content was viewed on a mobile
        client. DEPRECATED: Use mobile_ios or mobile_android instead.
    otherNc                      | j                   dk(  S )zJ
        Check if the union tag is ``web``.

        :rtype: bool
        web_tagselfs    W/var/www/html/lionshead-backend/venv/lib/python3.12/site-packages/dropbox/seen_state.pyis_webzPlatformType.is_web3        yyE!!    c                      | j                   dk(  S )zN
        Check if the union tag is ``desktop``.

        :rtype: bool
        desktopr   r   s    r   
is_desktopzPlatformType.is_desktop;        yyI%%r   c                      | j                   dk(  S )zQ
        Check if the union tag is ``mobile_ios``.

        :rtype: bool
        
mobile_iosr   r   s    r   is_mobile_ioszPlatformType.is_mobile_iosC   s     yyL((r   c                      | j                   dk(  S )zU
        Check if the union tag is ``mobile_android``.

        :rtype: bool
        mobile_androidr   r   s    r   is_mobile_androidzPlatformType.is_mobile_androidK   s     yy,,,r   c                      | j                   dk(  S )zJ
        Check if the union tag is ``api``.

        :rtype: bool
        apir   r   s    r   is_apizPlatformType.is_apiS   r   r   c                      | j                   dk(  S )zN
        Check if the union tag is ``unknown``.

        :rtype: bool
        unknownr   r   s    r   
is_unknownzPlatformType.is_unknown[   r   r   c                      | j                   dk(  S )zM
        Check if the union tag is ``mobile``.

        :rtype: bool
        mobiler   r   s    r   	is_mobilezPlatformType.is_mobilec   s     yyH$$r   c                      | j                   dk(  S )zL
        Check if the union tag is ``other``.

        :rtype: bool
        r   r   r   s    r   is_otherzPlatformType.is_otherk   s     yyG##r   c                 0    t         t        |   |||       y )N)superr   _process_custom_annotations)r   annotation_type
field_path	processor	__class__s       r   r*   z(PlatformType._process_custom_annotationss   s    lD=oz[der   )__name__
__module____qualname____doc__
_catch_allr
   r   r   r   r   r!   r$   r   r   r   r   r   r   r"   r%   r'   r*   __classcell__)r.   s   @r   r   r   
   sk    , J
CGJN
CGFE"&)-"&%$f fr   r   )r
   r   r   r   r   r!   r$   r   r
   r   r   r   r   r!   r$   r   N)
__future__r   stone.backends.python_rsrcr   bbr   bvUnionr   PlatformType_validatorVoid_web_validator_desktop_validator_mobile_ios_validator_mobile_android_validator_api_validator_unknown_validator_mobile_validator_other_validator_tagmapr
   r   r   r   r   r!   r$   r   ROUTES r   r   <module>rG      s|   ( 7 =jf288 jfX ",/ %bggi ")"'') %,RWWY ")0 &%bggi ")"'') !(  '	 &&..44"<<&&..,,**	   & #I. &|4 *+;< & #I. "8, !'* 
r   