
    Lpj                        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	  \(       a  S SK
Jr  S SKJr  S SKJr  S S	KJr   " S
 S\	S   5      rg)    )annotations)chain)TYPE_CHECKING)join_column_names)
SQLGroupBy)Sequence)
Expression)DuckDBLazyFrame)
DuckDBExprc                  8    \ rS rSr        SS jrSS jrSrg)DuckDBGroupBy   c                  U R                  XS9u  o@l        U l        U(       a!  UR                  U R                  5      U l        g UU l        g )N)keys)_parse_keys_keys_output_key_names
drop_nulls_compliant_frame)selfdfr   drop_null_keysframes        U/var/www/html/pdf-tiff/venv/lib/python3.13/site-packages/narwhals/_duckdb/group_by.py__init__DuckDBGroupBy.__init__   sB     594D4DR4D4S1z41@N 0 0 <TY    c           
     |   [        U R                  U5      5      nU R                  R                  R	                  [        [        U R                  U5      5      [        U R                  6 5      nU R                  R                  U5      R                  [        [        U R                  U R                  SS95      5      $ )NF)strict)tuple_evaluate_exprs	compliantnative	aggregater   r   r   _with_nativerenamedictzipr   )r   exprsagg_columnsresults       r   aggDuckDBGroupBy.agg   s    D0078&&00%

K013Ddjj3Q
 ~~**6299TZZ!7!7FG
 	
r   )r   r   r   N)r   r
   r   z$Sequence[DuckDBExpr] | Sequence[str]r   boolreturnNone)r)   r   r/   r
   )__name__
__module____qualname____firstlineno__r   r,   __static_attributes__ r   r   r   r      s7    	Z	Z 3	Z 	Z 
	Z
r   r   )r
   r   r	   N)
__future__r   	itertoolsr   typingr   narwhals._duckdb.utilsr   narwhals._sql.group_byr   collections.abcr   duckdbr	   narwhals._duckdb.dataframer
   narwhals._duckdb.exprr   r   r6   r   r   <module>r@      s5    "    4 -(!:0
JLM 
r   