o
    l>j]                     @  s   U d Z ddlmZ ddlmZmZmZ eG dd deZG dd deeZ	e	j
e	jfZded	< d!ddZd"ddZd#ddZG dd deeZG dd deeZG dd deeZdddZded< d S )$z;Constants and enums for the modern Photos CloudKit service.    )annotations)EnumIntEnumuniquec                   @  s   e Zd ZdZdZdZdZdS )AlbumTypeEnumz,Album types used by CloudKit Photos records.r         N)__name__
__module____qualname____doc__ALBUMFOLDERSMART_ALBUM r   r   `/home/thesage/.local/lib/python3.10/site-packages/pyicloud/services/photos_cloudkit/constants.pyr      s
    r   c                   @  s<   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S )SmartAlbumEnumz$Well-known Photos smart album names.LibraryBursts	FavoritesHiddenLive	PanoramaszRecently DeletedScreenshotszSlo-moz
Time-lapseVideosN)r	   r
   r   r   
ALL_PHOTOSBURSTS	FAVORITESHIDDENLIVE	PANORAMASRECENTLY_DELETEDSCREENSHOTSSLO_MO
TIME_LAPSEVIDEOSr   r   r   r   r      s    r   ztuple[SmartAlbumEnum, ...]%SUPPORTED_SHARED_LIBRARY_SMART_ALBUMSreturntuple[str, ...]c                   C  s   t dd tD S )zAReturn the currently supported Shared Library album filter names.c                 s  s    | ]}|j V  qd S )N)value).0albumr   r   r   	<genexpr>*   s    z7supported_shared_library_album_names.<locals>.<genexpr>)tupler&   r   r   r   r   $supported_shared_library_album_names'   s   r.   library_keystrc                 C  s   d|  dS )zBReturn a consistent error for legacy Shared Albums library misuse.zPhoto library 'z' uses legacy Shared Albums streams and is not supported by this command. Use 'root' or a Shared Library key like 'shared:<zoneName>'.r   )r/   r   r   r   (legacy_shared_stream_unsupported_message-   s   
r1   
album_namec                 C  s$   d t }d|  d| d| dS )zGReturn a consistent error for unsupported Shared Library album filters.z, zShared Library 'z,' currently supports album filters only for z	. Album 'z' is not supported yet.)joinr.   )r/   r2   	supportedr   r   r   (unsupported_shared_library_album_message7   s   r5   c                   @  s   e Zd ZdZdZdZdS )DirectionEnumz5Direction values accepted by Photos CloudKit indexes.	ASCENDING
DESCENDINGN)r	   r
   r   r   r7   r8   r   r   r   r   r6   D   s    r6   c                   @  s8   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S )ListTypeEnumzPhotos list/index record types.2CPLAssetAndMasterByAssetDateWithoutHiddenOrDeletedCPLAssetAndMasterByAddedDate&CPLAssetAndMasterDeletedByExpungedDate"CPLAssetAndMasterHiddenByAssetDate(CPLAssetAndMasterInSmartAlbumByAssetDate&CPLBurstStackAssetAndMasterByAssetDate#CPLContainerRelationLiveByAssetDate"CPLContainerRelationLiveByPositionsharedstreamN)r	   r
   r   r   DEFAULTADDEDDELETEDr   r   STACK	CONTAINERCONTAINER_ASSET_DATECONTAINER_POSITIONSHARED_STREAMr   r   r   r   r9   K   s    r9   c                   @  s@   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S )ObjectTypeEnumz'Logical album/object index identifiers.)CPLAssetByAssetDateWithoutHiddenOrDeleted"CPLAssetBurstStackAssetByAssetDateCPLAssetDeletedByExpungedDatez(CPLAssetInSmartAlbumByAssetDate:FavoriteCPLAssetHiddenByAssetDatez$CPLAssetInSmartAlbumByAssetDate:Livez(CPLAssetInSmartAlbumByAssetDate:Panoramaz*CPLAssetInSmartAlbumByAssetDate:Screenshotz%CPLAssetInSmartAlbumByAssetDate:Slomoz)CPLAssetInSmartAlbumByAssetDate:Timelapsez%CPLAssetInSmartAlbumByAssetDate:Video)CPLContainerRelationNotDeletedByAssetDateN)r	   r
   r   r   ALLBURSTrE   FAVORITEr   r   PANORAMA
SCREENSHOTSLOMO	TIMELAPSEVIDEOrG   r   r   r   r   rK   Z   s    rK   PrimarySyncREGULAR_CUSTOM_ZONE)zoneNamezoneTypezdict[str, str]PRIMARY_ZONEN)r'   r(   )r/   r0   r'   r0   )r/   r0   r2   r0   r'   r0   )r   
__future__r   enumr   r   r   r   r0   r   r   r   r&   __annotations__r.   r1   r5   r6   r9   rK   r]   r   r   r   r   <module>   s$    



