
    Cj                        S r SSKJrJrJrJr  S\S\4S jrS\S\4S jrS\S\4S jr	S\S\4S jr
S\S\4S	 jrS\S\4S
 jrS\S\4S jrS\S\4S jrS\S\4S jr0 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.S/ _0 S0S1 _S2S3 _S4\_S5S6 _S7S8 _S9\_S:S; _S<S= _S>\	_S?S@ _SA\
_SB\_SC\_SD\_SE\_SF\_ErS"rS$rgG)Hz
Define a series of easing functions for more natural-looking animations.
Taken from https://easings.net/ and translated from JavaScript.
    )cospisinsqrtxreturnc                     SU s=:  a  S:  a  O  O[        SSU -  S-
  5      S-  $ SU s=::  a  S:  a  O  U $ S[        SSU -  S-   5      -
  S-  $ U $ )z"https://easings.net/#easeInOutExpor         ?      
      powr   s    a/home/rurouni/.local/share/pipx/venvs/strix-agent/lib/python3.13/site-packages/textual/_easing.py_in_out_expor   	   s_    1{s{1b1frk"Q&&	A  C37R<((A--    c                     U S:  a!  S[        S[        SU -  S5      -
  5      -
  S-  $ [        S[        SU -  S-   S5      -
  5      S-   S-  $ )z"https://easings.net/#easeInOutCircr
   r   r   r   r   r   s    r   _in_out_circr      sV    3wDSQ]*++q00QR!VaZ++,q0A55r   c                     SnU S:  a!  [        SU -  S5      US-   S-  U -  U-
  -  S-  $ [        SU -  S-
  S5      US-   U S-  S-
  -  U-   -  S-   S-  $ )z"https://easings.net/#easeInOutBackg@t_@r
   r   r   r   r   cs     r   _in_out_backr      ss    A3wAE1!a%1q1!45::AEAIq!a!eA	%:Q%>?!CqHHr   c                     S[         -  S-  nSU s=:  a  S:  a,  O  U $ [        SSU -  S-
  5      * [        U S-  S-
  U-  5      -  $ U $ )z"https://easings.net/#easeInElasticr      r   r   r   g     %@r   r   r   r   s     r   _in_elasticr!   $   sW    	B
A1yqy  ArAv{##c1r6E>Q*>&???r   c                    S[         -  S-  nSU s=:  a  S:  a.  O  O+[        SSU -  S-
  5      [        SU -  S-
  U-  5      -  * S-  $ SU s=::  a  S:  a1  O  U $ [        SS	U -  S-   5      [        SU -  S-
  U-  5      -  S-  S-   $ U $ )
%https://easings.net/#easeInOutElasticr   g      @r   r
   r   r   g     @&@r   r   r    r   s     r   _in_out_elasticr$   -   s    	BA1{s{QQ$sBFVOq+@'AABQFF	A  AsQw|$sBFVOq+@'AAQFJJr   c                     S[         -  S-  nSU s=:  a  S:  a+  O  U $ [        SSU -  5      [        U S-  S-
  U-  5      -  S-   $ U $ )r#   r   r   r   r   r         ?r    r   s     r   _out_elasticr(   8   sT    	B
A1yqy  1cAga"ftmq%8!99A==r   c                     Su  pU SU-  :  a  X-  U -  $ U SU-  :  a  U SU-  -
  nX-  U-  S-   $ U SU-  :  a  U SU-  -
  nX-  U-  S-   $ U S	U-  -
  nX-  U-  S
-   $ )z"https://easings.net/#easeOutBounce)g     @@g      @r   r   g      ?r'   g      @g      @g      ?g      @g     ? )r   ndx_s       r   _out_bouncer.   A   s    DA1q5yuqy	
QUq[v{T!!	
S1W\v{V##]v{X%%r   c                 $    S[        SU -
  5      -
  $ )z!https://easings.net/#easeInBouncer   r.   r   s    r   
_in_bouncer1   Q   s    {1q5!!!r   c                 j    U S:  a  S[        SSU -  -
  5      -
  S-  $ S[        SU -  S-
  5      -   S-  $ )z$https://easings.net/#easeInOutBouncer
   r   r   r0   r   s    r   _in_out_bouncer3   V   sC    3wKAE	**a//KA	**a//r   nonec                     g)N      ?r*   r   s    r   <lambda>r7   _   s    cr   roundc                     U S:  a  S$ S$ )Nr
   g        r6   r*   r   s    r   r7   r7   `   s    a#gs.3.r   linearc                     U $ Nr*   r   s    r   r7   r7   a   s    r   in_sinec                 2    S[        U [        -  S-  5      -
  $ Nr   r   r   r   r   s    r   r7   r7   b   s    S!b&A..r   in_out_sinec                 4    [        U [        -  5      S-
  * S-  $ r?   r@   r   s    r   r7   r7   c   s    s1r6{Q/!3r   out_sinec                 ,    [        U [        -  S-  5      $ )Nr   )r   r   r   s    r   r7   r7   d   s    #q2vl+r   in_quadc                 
    X -  $ r<   r*   r   s    r   r7   r7   e   s    r   in_out_quadc                 N    U S:  a  SU -  U -  $ S[        SU -  S-   S5      S-  -
  $ )Nr
   r   r   r   r   r   s    r   r7   r7   f   s4    !c'QUQYQq3rAvz1;MPQ;Q7QQr   out_quadc                 &    S[        SU -
  S5      -
  $ r?   r   r   s    r   r7   r7   g   s    !c!a%m+r   in_cubicc                     X -  U -  $ r<   r*   r   s    r   r7   r7   h   s
    !%!)r   in_out_cubicc                 T    U S:  a  SU -  U -  U -  $ S[        SU -  S-   S5      S-  -
  $ )Nr
      r   r   r   r   r   r   s    r   r7   r7   i   s9    q3wa!eai!mVABFQJPQ@RUV@V<VVr   	out_cubicc                 &    S[        SU -
  S5      -
  $ )Nr   r   r   r   s    r   r7   r7   j       1s1q5!},r   in_quartc                     [        U S5      $ )NrO   r   r   s    r   r7   r7   k   
    #a)r   in_out_quartc                 \    U S:  a  S[        U S5      -  $ S[        SU -  S-   S5      S-  -
  $ )Nr
      rO   r   r   r   r   r   s    r   r7   r7   l   s7    q3wa#a)mVABFQJPQ@RUV@V<VVr   	out_quartc                 &    S[        SU -
  S5      -
  $ )Nr   rO   r   r   s    r   r7   r7   m   rR   r   in_quintc                     [        U S5      $ )N   r   r   s    r   r7   r7   n   rU   r   in_out_quintc                 \    U S:  a  S[        U S5      -  $ S[        SU -  S-   S5      S-  -
  $ )Nr
      r]   r   r   r   r   r   s    r   r7   r7   o   s7    Cb3q!9nWQR!VaZQRASVWAW=WWr   	out_quintc                 &    S[        SU -
  S5      -
  $ )Nr   r]   r   r   s    r   r7   r7   p   rR   r   in_expoc                 8    U (       a  [        SSU -  S-
  5      $ S$ )Nr   r   r   r   r   s    r   r7   r7   q   s    QQ,8q8r   in_out_expoout_expoc                 6    U S:w  a  S[        SSU -  5      -
  $ S$ )Nr   r   r&   r   r   s    r   r7   r7   s   s!    a!c!S1Wo->Q>r   in_circc                 8    S[        S[        U S5      -
  5      -
  $ r?   r   r   s    r   r7   r7   t   s    T!c!Qi-00r   in_out_circout_circc                 8    [        S[        U S-
  S5      -
  5      $ r?   r   r   s    r   r7   r7   v   s    $q3q1ua=01r   in_backc                 @    S[        U S5      -  S[        U S5      -  -
  $ )N8՜@r   aq89?r   r   r   s    r   r7   r7   w   s    3q!9,wQ/BBr   in_out_backout_backc                 R    SS[        U S-
  S5      -  -   S[        U S-
  S5      -  -   $ )Nr   ro   r   rp   r   r   r   s    r   r7   r7   y   s,    !gAE155#a!eQ-8OOr   
in_elasticin_out_elasticout_elastic	in_bouncein_out_bounce
out_bounceN)__doc__mathr   r   r   r   floatr   r   r   r!   r$   r(   r.   r1   r3   EASINGDEFAULT_EASINGDEFAULT_SCROLL_EASINGr*   r   r   <module>r      sv  
 $ #E e 6E 6e 6IE Ie I5 U u  E e &5 &U & "% "E "
0e 0 0"

M"
."
 k"
 .	"

 3"
 +"
 "
 Q"
 +"
 #"
 V"
 ,"
 #"
 V"
 ,"
  #!"
" W#"
$ ,%"
& 8'"
( <)"
* >+"
, 0-"
. </"
0 11"
2 B3"
4 <5"
6 O7"
8 +9"
: o;"
< <="
> ?"
@ ^A"
B +C"
H  # r   