o
    -wi*
                     @  sl   d dl mZ d dlmZ d dlmZ d dlmZ d dlm	Z
 eh dZdddZddddZdddZdS )    )annotations)dedent)	print_ast)
gql_compat)Api>   tagsaliaseshistoryStepttlIsInheritedttlDurationSecondsapiInternalApireturnset[str]c                 C  s   t |  }t t| S )z[Return names of Artifact fields to remove from GraphQL requests (for server compatibility).)setserver_artifact_introspectionOMITTABLE_ARTIFACT_FIELDS)r   allowed_fields r   c/home/ubuntu/sommelier/.venv/lib/python3.10/site-packages/wandb/sdk/artifacts/_graphql_fragments.pyomit_artifact_fields   s   r   Tinclude_aliasesboolstrc                 C  s6   t t d}| s|d td}t||d}t|S )zGReturn a GraphQL query fragment with all parseable Artifact attributes.)r   r   a          fragment ArtifactFragment on Artifact {
            id
            artifactSequence {
                project {
                    entityName
                    name
                }
                name
            }
            versionIndex
            artifactType {
                name
            }
            description
            metadata
            ttlDurationSeconds
            ttlIsInherited
            aliases {
                artifactCollection {
                    project {
                        entityName
                        name
                    }
                    name
                }
                alias
            }
            tags {
                name
            }
            historyStep
            state
            currentManifest {
                file {
                    directUrl
                }
            }
            commitHash
            fileCount
            createdAt
            updatedAt
        })omit_fields)r   r   addr   r   r   )r   r   artifact_fragment_str
compat_docr   r   r   _gql_artifact_fragment   s   
-r   c                   C  s   dS )Na  
        fragment RegistryFragment on Project {
           id
            allowAllArtifactTypesInRegistry
            artifactTypes(includeAll: true) {
                edges {
                    node {
                        name
                    }
                }
            }
            name
            description
            createdAt
            updatedAt
            access
        }
    r   r   r   r   r   _gql_registry_fragmentT   s   r   N)r   r   r   r   )T)r   r   r   r   )r   r   )
__future__r   textwrapr   wandb_graphql.language.printerr   wandb.apis.public.utilsr   wandb.sdk.internal.internal_apir   r   	frozensetr   r   r   r   r   r   r   r   <module>   s    
9