
    b\jK                       S SK Jr  S SKrS SKJrJrJrJrJr  S SK	J
r
Jr  S SKrSSKJr  SSKJr  SSKJrJrJrJr  SS	KJr  SS
KJr  SSKJr  SSKJr  SSKJrJ r   SSK!J"r"J#r#  SSKJ$r$J%r%  SSK&J'r'  SSK(J)r)J*r*J+r+J,r,J-r-  SSK.J/r/J0r0J1r1J2r2  SSK3J4r4J5r5  SSK6J4r7J5r8  Sr9Sr:\" S\\Rv                  \Rx                  4   S9r=\" S\\"\   \#\   4   S9r> " S S\5      r? " S S\ 5      r@ " S S\*\=\>4   5      rA                  S%S  jrB " S! S"\A\Rv                  \"\   4   \+5      rC " S# S$\A\Rx                  \#\   4   \,5      rDg)&    )annotationsN)AnyUnionMappingTypeVarSequence)Selfoverride   )_exceptionsQuerystring)	NOT_GIVENOmitTimeoutNotGiven)is_given)cached_property)__version__   )get_auth_headers)SyncAPIResourceAsyncAPIResource)StreamAsyncStream)AnthropicErrorAPIStatusError)MiddlewareInput)DEFAULT_MAX_RETRIES
BaseClientSyncAPIClientAsyncAPIClientmerge_headers)resolve_regionresolve_api_keyresolve_auth_modevalidate_credentials)MessagesAsyncMessageszbedrock-mantle)AWS_BEARER_TOKEN_BEDROCKANTHROPIC_AWS_API_KEY_HttpxClientT)bound_DefaultStreamTc                  (    \ rS rSr\SS j5       rSrg)
MantleBeta/   c                ,    [        U R                  5      $ N)BetaMessages_clientselfs    S/var/www/website/venv/lib/python3.13/site-packages/anthropic/lib/bedrock/_mantle.pymessagesMantleBeta.messages0   s    DLL))     N)returnr4   __name__
__module____qualname____firstlineno__r   r9   __static_attributes__r<   r;   r8   r0   r0   /   s    * *r;   r0   c                  (    \ rS rSr\SS j5       rSrg)AsyncMantleBeta5   c                ,    [        U R                  5      $ r3   )AsyncBetaMessagesr5   r6   s    r8   r9   AsyncMantleBeta.messages6   s     ..r;   r<   N)r=   rH   r>   r<   r;   r8   rE   rE   5   s    / /r;   rE   c                  8    \ rS rSr\        SS j5       rSrg)BaseMantleClient>   c                  UR                   S:X  a  [        R                  " XUS9$ UR                   S:X  a  [        R                  " XUS9$ UR                   S:X  a  [        R                  " XUS9$ UR                   S:X  a  [        R
                  " XUS9$ UR                   S:X  a  [        R                  " XUS9$ UR                   S:X  a  [        R                  " XUS9$ UR                   S:X  a  [        R                  " XUS9$ UR                   S	:X  a  [        R                  " XUS9$ UR                   S
:X  a  [        R                  " XUS9$ UR                   S:  a  [        R                  " XUS9$ [        XUS9$ )Ni  )responsebodyi  i  i  i  i  i  i  i  i  )status_coder   BadRequestErrorAuthenticationErrorPermissionDeniedErrorNotFoundErrorConflictErrorRequestTooLargeErrorUnprocessableEntityErrorRateLimitErrorOverloadedErrorInternalServerErrorr   )r7   err_msgrO   rN   s       r8   _make_status_error#BaseMantleClient._make_status_error?   sb    3&..wPTUU3&227TXYY3&44WVZ[[3&,,WdSS3&,,WdSS3&33GUYZZ3&77Y]^^3&--gtTT3&..wPTUU3&227TXYYgtDDr;   r<   N)r[   strrO   objectrN   zhttpx.Responser=   r   )r?   r@   rA   rB   r
   r\   rC   r<   r;   r8   rK   rK   >   s@    $E$E 	$E
 !$E 
$E $Er;   rK   c                0   U(       a  SnSn	O)[        XS9  [        U UUU[        S9n[        U U[        S9n	[	        U5      n
Uc  [
        R                  R                  S5      nUc  U
c  [        S5      eSU
 S	3n0 nU(       a  UR                  U5        XX4$ )
zResolve and validate all Mantle client configuration.

Returns (resolved_api_key, resolved_base_url, use_sigv4, merged_headers).
FN)aws_access_keyaws_secret_key)api_keyra   rb   aws_profileapi_key_env_vars)rc   	use_sigv4re   !ANTHROPIC_BEDROCK_MANTLE_BASE_URLzNo AWS region or base URL found. Set `aws_region` in the constructor, the `AWS_REGION` / `AWS_DEFAULT_REGION` environment variable, or provide a `base_url` / `ANTHROPIC_BEDROCK_MANTLE_BASE_URL` environment variable.zhttps://bedrock-mantle.z.api.aws/anthropic)
r'   r&   _MANTLE_API_KEY_ENV_VARSr%   r$   osenvirongetr   update)rc   ra   rb   
aws_regionrd   	skip_authbase_urldefault_headersrf   resolved_api_keyresolved_regionmerged_headerss               r8   _resolve_mantle_configrt   j   s     	NZ%))#5
	 +5
 %Z0O::>>"EF" [ 
 -_,==OP%'No.y@@r;   c                    ^  \ rS rSr% S\S'   S\S'   S\S'   S\S'   S\S	'   S\S
'   S\S'   S\S'   S\S'   SSSSSSSS\\SSSSSS.                               SU 4S jjjr\\	SS j5       5       r
\\	SS j5       5       r\\	SU 4S jj5       5       r\	S S j5       r\	S!S j5       rSSSSSSSS\S\SSSS\0 S.                                   S"S jjr\rS#S jrSrU =r$ )$AnthropicBedrockMantle   r(   r9   r0   beta
str | Nonerm   ra   rb   aws_session_tokenrd   boolrn   
_use_sigv4NFra   rb   rz   rm   rd   rc   rn   ro   timeoutmax_retriesrp   default_queryhttp_client
middleware_strict_response_validationc                 > [        UUUUUUUUS9u  nnnn[        U5      n[        TU ]  [        UU	U
UUUUUS9	  UU l        UU l        Xl        X l        X0l	        XPl
        Xpl        UU l        [        U 5      U l        [        U 5      U l        g N)rc   ra   rb   rm   rd   rn   ro   rp   )	versionro   r~   r   custom_headerscustom_queryr   r   r   )rt   r$   super__init__r   rc   rm   ra   rb   rz   rd   rn   r|   r(   r9   r0   rx   r7   ra   rb   rz   rm   rd   rc   rn   ro   r~   r   rp   r   r   r   r   rq   resolved_base_urlrf   rs   rr   	__class__s                        r8   r   AnthropicBedrockMantle.__init__   s    & J`))!#+	J
F+Y )4&#)&#!(C 	 
	
 (),,!2&"# t$	r;   c                    [        SS9$ Ncomma)array_formatr   r6   s    r8   qsAnthropicBedrockMantle.qs        00r;   c                z    U R                   (       d  U R                  (       a  0 $ U R                  nUc  0 $ SSU 30$ NAuthorizationzBearer rn   r|   rc   r7   rc   s     r8   auth_headers#AnthropicBedrockMantle.auth_headers   ;     >>T__I,,?I77)!455r;   c                >   > 0 [         TU ]  ESSS.EU R                  E$ )Nfalse
2023-06-01zX-Stainless-Asynczanthropic-versionr   rp   _custom_headersr7   r   s    r8   rp   &AnthropicBedrockMantle.default_headers   s5    
g%
!(!-
 ""	
 	
r;   c                    g r3   r<   r7   headersr   s      r8   _validate_headers(AnthropicBedrockMantle._validate_headers      r;   c                   U R                   (       d  U R                  (       d  g UR                  5       R                  5       n[	        UR
                  [        UR                  5      UR                  U R                  U R                  U R                  U R                  U R                  U[        S9
nUR                  R                  U5        g N)
methodurlr   ra   rb   rz   regionprofiledataservice_namern   r|   readdecoder   r   r^   r   r   ra   rb   rz   rm   rd   DEFAULT_SERVICE_NAMErl   r7   requestr   r   s       r8   _prepare_request'AnthropicBedrockMantle._prepare_request  s    >>||~$$&">>GKK OO...."44??$$-
 	w'r;   rc   ra   rb   rz   rm   rd   rn   ro   r~   r   r   rp   set_default_headersr   set_default_queryr   _extra_kwargsc                  Ub  Ub  [        S5      eUb  Ub  [        S5      eU R                  nUb  [        UU5      nOUb  UnU R                  nUb  0 UEUEnOUb  UnU R                  " SU=(       d    U R
                  U=(       d    U R                  U=(       d    U R                  U=(       d    U R                  U=(       d    U R                  U=(       d    U R                  Ub  UOU R                  U=(       d    U R                  [        U	[        5      (       a  U R                  OU	U
[!        U5      (       a  UOU R"                  UU[        U[        5      (       a  U R$                  OUS.UD6$ zn
Create a new client instance re-using the same options given to the current client with optional overriding.
zPThe `default_headers` and `set_default_headers` arguments are mutually exclusivezLThe `default_query` and `set_default_query` arguments are mutually exclusive)rc   ra   rb   rz   rm   rd   rn   ro   r~   r   r   rp   r   r   r<   
ValueErrorr   r#   _custom_queryr   rc   ra   rb   rz   rm   rd   rn   ro   
isinstancer   r~   r   r   _middlewarer7   rc   ra   rb   rz   rm   rd   rn   ro   r~   r   r   rp   r   r   r   r   r   r   paramss                       r8   copyAnthropicBedrockMantle.copy  \   0 &+>+Jopp$):)Fkll&&&#G_=G ,)G##$00-0F*&F~~ 
+t||)@T-@-@)@T-@-@/I43I3I!4T__#7t'7'7#,#8idnn.$.w$A$ADLLw#'/'<'<$BRBR# +5j(+K+Kt''Q[
 
 	
r;   c                <    U R                  / U R                  QUQS9$ zA new client with the given middleware appended after this client's middleware.

Convenience for applying extra middleware to a single request:

```py
client.with_middleware(my_middleware).messages.create(...)
```
)r   r   r   r7   r   s     r8   with_middleware&AnthropicBedrockMantle.with_middlewareY  &     yy$Dd&6&6$D$DyEEr;   
r|   rc   ra   rd   rm   rb   rz   rx   r9   rn   ) ra   ry   rb   ry   rz   ry   rm   ry   rd   ry   rc   ry   rn   r{   ro   str | httpx.URL | Noner~   !float | Timeout | None | NotGivenr   intrp   Mapping[str, str] | Noner   Mapping[str, object] | Noner   httpx.Client | Noner    Sequence[MiddlewareInput] | Noner   r{   r=   Noner=   r   r=   zdict[str, str]r=   zdict[str, str | Omit]r   r   r   r   r=   r   r   zhttpx.Requestr=   r   )$rc   ry   ra   ry   rb   ry   rz   ry   rm   ry   rd   ry   rn   bool | Nonero   r   r~   r   r   r   r   int | NotGivenrp   r   r   r   r   r   r   r   r   +Sequence[MiddlewareInput] | None | NotGivenr   Mapping[str, Any]r=   r	   r   r   r=   r	   r?   r@   rA   rB   __annotations__r   r   r   propertyr
   r   r   rp   r   r   r   with_optionsr   rC   __classcell__r   s   @r8   rv   rv      s   
!!O
 &*%)(,!%"&"+/5>.4859+/7;,1#6% #6% #	6%
 &6% 6%  6% 6% 6% )6% 36% 6% 26% 36% )6%  5!6%" &*#6%$ 
%6% 6%p 1  1 6  6 
  
   ( (. #%)%)(,!%"&!%+/5>+/&/488<599=BK+-':
 :
 #	:

 #:
 &:
 :
  :
 :
 ):
 3:
 ):
 $:
 2:
 6:
  3!:
" 7#:
$ @%:
& )':
( 
):
x L	F 	Fr;   rv   c                    ^  \ rS rSr% S\S'   S\S'   S\S'   S\S'   S\S	'   S\S
'   S\S'   S\S'   S\S'   SSSSSSSS\\SSSSSS.                               SU 4S jjjr\\	SS j5       5       r
\\	SS j5       5       r\\	SU 4S jj5       5       r\	S S j5       r\	S!S j5       rSSSSSSSS\S\SSSS\0 S.                                   S"S jjr\rS#S jrSrU =r$ )$AsyncAnthropicBedrockMantleih  r)   r9   rE   rx   ry   rm   ra   rb   rz   rd   r{   rn   r|   NFr}   c                 > [        UUUUUUUUS9u  nnnn[        U5      n[        TU ]  [        UU	U
UUUUUS9	  UU l        UU l        Xl        X l        X0l	        XPl
        Xpl        UU l        [        U 5      U l        [        U 5      U l        g r   )rt   r$   r   r   r   rc   rm   ra   rb   rz   rd   rn   r|   r)   r9   rE   rx   r   s                        r8   r   $AsyncAnthropicBedrockMantle.__init__u  s    & J`))!#+	J
F+Y )4&#)&#!(C 	 
	
 (),,!2&"#%d+#D)	r;   c                    [        SS9$ r   r   r6   s    r8   r   AsyncAnthropicBedrockMantle.qs  r   r;   c                z    U R                   (       d  U R                  (       a  0 $ U R                  nUc  0 $ SSU 30$ r   r   r   s     r8   r   (AsyncAnthropicBedrockMantle.auth_headers  r   r;   c                >   > 0 [         TU ]  ESSS.EU R                  E$ )Nzasync:asyncior   r   r   r   s    r8   rp   +AsyncAnthropicBedrockMantle.default_headers  s5    
g%
!0!-
 ""	
 	
r;   c                    g r3   r<   r   s      r8   r   -AsyncAnthropicBedrockMantle._validate_headers  r   r;   c                  #    U R                   (       d  U R                  (       d  g UR                  5       R                  5       n[	        UR
                  [        UR                  5      UR                  U R                  U R                  U R                  U R                  U R                  U[        S9
nUR                  R                  U5        g 7fr   r   r   s       r8   r   ,AsyncAnthropicBedrockMantle._prepare_request  s     >>||~$$&">>GKK OO...."44??$$-
 	w's   CCr   c                  Ub  Ub  [        S5      eUb  Ub  [        S5      eU R                  nUb  [        UU5      nOUb  UnU R                  nUb  0 UEUEnOUb  UnU R                  " SU=(       d    U R
                  U=(       d    U R                  U=(       d    U R                  U=(       d    U R                  U=(       d    U R                  U=(       d    U R                  Ub  UOU R                  U=(       d    U R                  [        U	[        5      (       a  U R                  OU	U
[!        U5      (       a  UOU R"                  UU[        U[        5      (       a  U R$                  OUS.UD6$ r   r   r   s                       r8   r    AsyncAnthropicBedrockMantle.copy  r   r;   c                <    U R                  / U R                  QUQS9$ r   r   r   s     r8   r   +AsyncAnthropicBedrockMantle.with_middleware  r   r;   r   ) ra   ry   rb   ry   rz   ry   rm   ry   rd   ry   rc   ry   rn   r{   ro   r   r~   r   r   r   rp   r   r   r   r   httpx.AsyncClient | Noner   r   r   r{   r=   r   r   r   r   r   r   )$rc   ry   ra   ry   rb   ry   rz   ry   rm   ry   rd   ry   rn   r   ro   r   r~   r   r   r   r   r   rp   r   r   r   r   r   r   r   r   r   r   r   r=   r	   r   r   r   s   @r8   r   r   h  s   
!!O
 &*%)(,!%"&"+/5>.4859047;,1#6* #6* #	6*
 &6* 6*  6* 6* 6* )6* 36* 6* 26* 36* .6*  5!6*" &*#6*$ 
%6* 6*p 1  1 6  6 
  
   ( (. #%)%)(,!%"&!%+/5>04&/488<599=BK+-':
 :
 #	:

 #:
 &:
 :
  :
 :
 ):
 3:
 .:
 $:
 2:
 6:
  3!:
" 7#:
$ @%:
& )':
( 
):
x L	F 	Fr;   r   )rc   ry   ra   ry   rb   ry   rm   ry   rd   ry   rn   r{   ro   r   rp   r   r=   z8tuple[str | None, str | httpx.URL, bool, dict[str, str]])E
__future__r   ri   typingr   r   r   r   r   typing_extensionsr	   r
   httpx r   _qsr   _typesr   r   r   r   _utilsr   _compatr   _versionr   	aws._authr   	_resourcer   r   
_streamingr   r   r   r   r   r   _base_clientr   r    r!   r"   r#   aws._credentialsr$   r%   r&   r'   resources.messagesr(   r)   resources.beta.messagesr4   rH   r   rh   ClientAsyncClientr,   r.   r0   rE   rK   rt   rv   r   r<   r;   r8   <module>r     s   " 	 9 9 ,    8 8  & # ( : - 9 *   : c' P uU\\5CTCT5T/UV+5kRUFV9V3WX* */& /&Ez-"@A &EX4A4A 4A 	4A
 4A 4A 4A %4A .4A >4At~F-ellF3K.GH- ~FH~F"253D3DkRUFV3V"WYg ~Fr;   