
    Rit                    0    d Z ddlmZ ddlZddlmZ ddZy)zAuthentication utility helpers.    )annotationsN)Anyc                   | | dk(  r| dS g S t        | t              rA| D cg c]5  }t        |      j                         st        |      j                         7 c}S t        | t              r| j                         } | sg S | j	                  d      rh	 t        j                  |       }t        |t              rA|D cg c]5  }t        |      j                         st        |      j                         7 c}S 	 | j                  dd      j                         D cg c]#  }|j                         s|j                         % c}S | S c c}w c c}w # t        $ r Y dw xY wc c}w )zParse scopes from environment variables or settings values.

    Accepts either a JSON array string, a comma- or space-separated string,
    a list of strings, or ``None``. Returns a list of scopes or ``None`` if
    no value is provided.
    N [, )

isinstanceliststrstrip
startswithjsonloads	Exceptionreplacesplit)valuevdatass       |/home/jay/workspace/.worktrees/task-2117-dev1/scripts/.codegraph-venv/lib/python3.12/site-packages/fastmcp/utilities/auth.pyparse_scopesr   	   s     }}t,",%(-@1QA@@%IC zz%(dD)48KqCFLLNCFLLNKK *
 $)==c#:#@#@#BPaaggi	PPL A L  QsA   EE)E >EE8E E$4E$E 	E! E!)r   r   returnzlist[str] | None)__doc__
__future__r   r   typingr   r        r   <module>r       s    % "  r   