
    Pi                     &#   d dl Z d dlZd dlmZ d dlmZ d dlZej        j	        ej        j
        ej        j        ej        j        ej        j        ej        j        ej        j        ej        j        gZej        j        j        Zej        j        j        Zg dZg dZ eej        j	        j        ej        j	                  d         Z eej        j	        j        ej        j	                  d         Zd Zd Z e            \  ZZd	Z  ej!        d
          5 Z" ej#                    5   ej$        ddd          5   ej#                    5   ej%        dd          Z& ej%        ddd          Z'ddd           n# 1 swxY w Y    ej(                    5   ej)        d          5   ej*        d            ej+        d eD             dd          Z, ej%        dd          Z-ddd           n# 1 swxY w Y    ej)        d          5   ej*        d            ej+        d  eD             d!"          Z. ej/        d#d$%          5  g Z0eD ])Z1e02                     ej3        d&e1 "                     *	 ddd           n# 1 swxY w Y    ej+        d' eD             d("          Z4 ej/        d)d$%          5  g Z5eD ])Z1e52                     ej3        d*e1 "                     *	 ddd           n# 1 swxY w Y    ej+        d+ eD             d,"          Z6 ej/        d-d$%          5  g Z7eD ])Z1e72                     ej3        d.e1 "                     *	 ddd           n# 1 swxY w Y   ddd           n# 1 swxY w Y    ej)        d/          5   ej*        d0            ej+        d1 eD             d2"          Z8 ej/        d3d$%          5  g Z9eD ])Z1e92                     ej:        d4e1 "                     *	 ddd           n# 1 swxY w Y    ej+        d5 eD             d6"          Z; ej/        d7d$%          5  g Z<eD ])Z1e<2                     ej:        d8e1 "                     *	 ddd           n# 1 swxY w Y    ej+        d9 eD             d:"          Z= ej/        d;d$%          5  g Z>eD ])Z1e>2                     ej:        d<e1 "                     *	 ddd           n# 1 swxY w Y   ddd           n# 1 swxY w Y    ej)        d=          5   ej*        d>            ej*        d?           g g cZ?Z@ eAd@          D ]{Z1 ej#                    5   ej:        dAe1dz    "          ZB ejC        dB"          ZDe?2                    eB           e@2                    eD           ddd           n# 1 swxY w Y   |g g cZEZF ej*        dC            eAd@          D ]{Z1 ej#                    5   ej:        dAe1dz    "          ZB ejC        dB"          ZDeE2                    eB           eF2                    eD           ddd           n# 1 swxY w Y   |	 ddd           n# 1 swxY w Y   g ZGdD eD             dE eD             z   dF eD             z   ZHeHdd         eHdd         dG eD             dH eD             dI eD             dJ eD             g dKdLgg dM	ZIeD ]PZJeJK                    dN          reIL                                D ]#\  ZMZNeMeJv reN2                    dOeJz               n$QeIdP         eIdQ          eOeH          d         z   eIdQ         eIdP          eOeH          d         z   ceIdP<   eIdQ<   eD ]\  ZPZQZR ej)        eP          5   ej*        eQdRz              eRD ]pZJg ZNeID ]7ZMeMeJv r1eIeM         dd         ZNdOeJz   eNv reNS                    dOeJz               n8 ej+        eJ eeJ          eNdST          ZTeG2                    eT           q	 ddd           n# 1 swxY w Y   	 ddd           n# 1 swxY w Y   ddd           n# 1 swxY w Y    ej$        dUdVW          5   ej$        dXY          5   ej*        dZ            ej/        d[d$\          5   ejU        d]^          ZVddd           n# 1 swxY w Y    ej/        d_d$\          5   ej*        d`            ej#                    5   ej:        da"          ZW ej:        db"          ZX ej:        dcdde          ZYddd           n# 1 swxY w Y    ej%        d_          ZZ ej*        dfg          Z[ddd           n# 1 swxY w Y    ej*        dh           ddd           n# 1 swxY w Y    ej:        didjdkdkdSl          Z\ ej#                    5   ej]        dm"          Z^ ej]        dn"          Z_ddd           n# 1 swxY w Y    ej`        g dodp"            ej#                    5   ej$        dXdq          5   ej*        dr            eja        g dodsdtu          Zb ej+        g dvd$w          Zc ej+        g dxdSdygdzdS{          Zd ejC        d|"          Zeddd           n# 1 swxY w Y    ej$        dXd}q          5   ejf        d~dd          Zg ej#                    5   ej%        d|dY          Zh ej%        ddY          Zid Zjehk                    ejebecedeee\gegd           d Zleik                    eldeg           ddd           n# 1 swxY w Y    ej#                    5   ej%        dd          Zm ejn        d          Zo ej%        ddd          Zpddd           n# 1 swxY w Y   ddd           n# 1 swxY w Y   ddd           n# 1 swxY w Y    ejq        dddgdSgddddgd$ggebecedeegd            ej#                    5   ejr        dd}dg dddd            ejs        dddd            ejt                     ddd           n# 1 swxY w Y    ej#                    5   ej3                      eju        d            ejv        g ddd}           ddd           n# 1 swxY w Y    ej#                    5   ej$        d}          5   ejw        ddddddgd          Zx ejy        dSd$          Zz ej%        d          Z{e{k                    d exexd           ddd           n# 1 swxY w Y    ej$        d          5   ej/        d          5   ej*        d            ej|        d"            ej|        d"            ej|        d"           ddd           n# 1 swxY w Y   ddd           n# 1 swxY w Y   ddd           n# 1 swxY w Y   ddd           n# 1 swxY w Y    ej:        dfg          Z} ej~        dfg          Ze"                    ddddd           e.e4e6ge0z   e5z   e7z   e8e;e=gz   e9z   e<z   e>z   e?z   e@z   eEz   eFz   eGz   Zd Zd Z ej        g           Z ej        d          Zd Zd Zd Z ee.                    ee.e0d          j                    ee4                    ee4e5d          j                    ee6                    ee6e7d          j                   e0e5e7fD ]ZeD ]Z eej                   d Z ee8                    ee8e9d          j                    ee;                    ee;e<d          j                    ee=                    ee=e>d          j                    ee-k                    ee,ed          j                   e9e<z   e>z   e?z   eEz   D ]"Z eej                    eej                   #eGD ]"Z eej                    eej                   #e@eFz   D ]Z eej                   e'k                    ddddd           d Z ee&k                    eegee,gez   d          j                   d ZeZk                    d deZd                              eeeWeXeYhe[eZgd           e"                    d            ddd           n# 1 swxY w Y   ddd           n# 1 swxY w Y   edk    r1e"                    ej        	                                e d           dS dS )    N)Iterable)document_fn)2   d      i,    i  iX  i  i   i  i  )xxsxssmmdlgxlxxl   c                 x    t           t          z   D ]}|d         | k    r
|d         c S t          d|  d          )Nnamedocz	Variable z" not found in theme documentation.)docs_theme_coredocs_theme_vars
ValueError)var
parameterss     m/home/jaya/work/projects/VOICE-AGENT/VIET/agent-env/lib/python3.11/site-packages/gradio/themes/builder_app.py
get_docstrr      sV    %7 % %
f$$e$$$$ %
HHHH
I
II    c                  ^   t          j        t          j        j        j                  } g }d d g g f\  }}}}|                                 D ]}|                                }|                    d          r n|                    d          r=||	                    |||f           |dd          
                    d          \  }}g }d|v rE|
                    d          d         }|	                    |           |	                    |           |	                    |||f           ||fS )N)z#    z: =r   )inspect	getsourcegrthemesBaseset
splitlinesstrip
startswithappendsplit)sourcegroupsgroupdesc	variablesflat_variablesliner   s           r   get_doc_theme_var_groupsr2   #   s7   ry~122FF-14R-?*E4N!!## ' 'zz||??3 
	'E__T"" 	' udI6777qrr(....KE4IID[[**S//!$CS!!!!!#&&&
MM5$	*+++>!!r   a  
.gradio-container {
    overflow: visible !important;
    max-width: none !important;
}
#controls {
    max-height: 100vh;
    flex-wrap: unset;
    overflow-y: scroll;
    position: sticky;
    top: 0;
}
#controls::-webkit-scrollbar {
  -webkit-appearance: none;
  width: 7px;
}

#controls::-webkit-scrollbar-thumb {
  border-radius: 4px;
  background-color: rgba(0, 0, 0, .5);
  box-shadow: 0 0 1px rgba(255, 255, 255, .5);
}
zGradio Theme Builder)titlecontrolsr   )scaleelem_id	min_widthUndor   )sizez	Dark Modeprimary)variantr9   zSource Themez
                    Select a base theme below you would like to build off of. Note: when you click 'Load Theme', all variable values in other tabs will be overwritten!
                    c                     g | ]	}|j         
S  __name__).0themes     r   
<listcomp>rB   b   s    <<<E<<<r   r$   Theme)valuelabelz
Load Theme
load_theme)r6   zCore Colorsa  Set the three hues of the theme: `primary_hue`, `secondary_hue`, and `neutral_hue`.
                        Each of these is a palette ranging from 50 to 950 in brightness. Pick a preset palette - optionally, open the accordion to overwrite specific values.
                        Note that these variables do not affect elements directly, but are referenced by other variables with asterisks, such as `*primary_200` or `*neutral_950`.c                     g | ]	}|j         
S r=   r   r@   colors     r   rB   rB   n       888888r   zPrimary Hue)rE   zPrimary Hue PaletteF)rE   openprimary_c                     g | ]	}|j         
S r=   rH   rI   s     r   rB   rB   z   rK   r   zSecondary HuezSecondary Hue Palette
secondary_c                     g | ]	}|j         
S r=   rH   rI   s     r   rB   rB      rK   r   zNeutral huezNeutral Hue Paletteneutral_zCore Sizinga  Set the sizing of the theme via: `text_size`, `spacing_size`, and `radius_size`.
                        Each of these is set to a collection of sizes ranging from `xxs` to `xxl`. Pick a preset size collection - optionally, open the accordion to overwrite specific values.
                        Note that these variables do not affect elements directly, but are referenced by other variables with asterisks, such as `*spacing_xl` or `*text_sm`.
                        c                 P    g | ]#}|j                             d           |j         $S )text_r   r(   r@   r9   s     r   rB   rB      s/    VVVt	8L8LW8U8UVVVVr   z	Text SizezText Size RangerS   c                 P    g | ]#}|j                             d           |j         $S )spacing_rT   rU   s     r   rB   rB      s@        $#y33J?? I  r   zSpacing SizezSpacing Size RangerW   c                 P    g | ]#}|j                             d           |j         $S )radius_rT   rU   s     r   rB   rB      s@        $#y33I>> I  r   zRadius SizezRadius Size RangerY   z
Core Fontsa	  Set the main `font` and the monospace `font_mono` here.
                        Set up to 4 values for each (fallbacks in case a font is not available).
                        Check "Google Font" if font should be loaded from Google Fonts.
                        z### Main Font   zFont zGoogle Fontz### Monospace Fontc                     g | ]}d | S )z	*primary_r=   r@   is     r   rB   rB      s    <<<___<<<r   c                     g | ]}d | S )z*secondary_r=   r\   s     r   rB   rB      s!    @@@Q(Q((@@@r   c                     g | ]}d | S )z	*neutral_r=   r\   s     r   rB   rB      s    >>>11>>>r   c                     g | ]}d | S )z*text_r=   r\   s     r   rB   rB      s    !C!C!C1,1,,!C!C!Cr   c                     g | ]}d | S )z*radius_r=   r\   s     r   rB   rB      s    BBB!~!~~BBBr   c                     g | ]}d | S z	*spacing_r=   r\   s     r   rB   rB      s    DDDAADDDr   c                     g | ]}d | S rc   r=   r\   s     r   rB   rB      s    @@@OOO@@@r   )100200300400500600700800none)	fillrJ   	text_sizeradiuspaddinggapweightshadowborder_width_dark*rn   rJ   z^
You can set these to one of the dropdown values, or clear the dropdown to set a custom value.T)rE   infochoicesallow_custom_value   app)r5   r6   panel)r;   ai  
                    # Theme Builder
                    Welcome to the theme builder. The left panel is where you create the theme. The different aspects of the theme are broken down into different tabs. Here's how to navigate them:
                    1. First, set the "Source Theme". This will set the default values that you can override.
                    2. Set the "Core Colors", "Core Sizing" and "Core Fonts". These are the core variables that are used to build the rest of the theme.
                    3. The rest of the tabs set specific CSS theme variables. These control finer aspects of the UI. Within these theme variables, you can reference the core variables and other theme variables using the variable name preceded by an asterisk, e.g. `*primary_50` or `*body_text_color`. Clear the dropdown to set a custom value.
                    4. Once you have finished your theme, click on "View Code" below to see how you can integrate the theme into your app. You can also click on "Upload to Hub" to upload your theme to the Hugging Face Hub, where others can download and use your theme.
                    z	View Code)rL   python)languageUpload to HubzYou can save your theme on the Hugging Face Hub. HF API write token can be found [here](https://huggingface.co/settings/tokens).z
Theme NamezHugging Face Write TokenVersionz,Leave blank to automatically update version.)rE   placeholderhidden)visiblez3Below this panel is a dummy app to demo your theme.Namez8Full name, including middle name. No special characters.zJohn Doe)rE   rx   r   rD   interactivezSlider 1zSlider 2)ABCzCheckbox Group)r;   r5   z
## Panel 1RadiozLorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.)rE   rx   )Option 1Option 2zOption 3)
show_label)Option AOption BOption Cr   Dropdown)multiselectrD   rE   r   Gor   Ghttps://gradio-static-files.s3.us-west-2.amazonaws.com/header-image.jpgImagei@  )rE   heightClear	secondaryc                  .    t          j        d           dS )N   r   timesleep)_argss    r   gor   m  s     JqMMM#l#lr   privateapi_visibilityc                  .    t          j        d           d S )N皙?r   r=   r   r   clearr   x  s     JsOOOOOr   zButton 1Stopstopr   r   r   r   r   r   Examples)examplesinputsrE   a)r   r   r   )testtest2)r   bcJSONgffffff?r   g?)catdogfish)rD   z@https://gradio-static-files.s3.us-west-2.amazonaws.com/world.mp4))z?https://gradio-static-files.s3.us-west-2.amazonaws.com/lion.jpglion)z?https://gradio-static-files.s3.us-west-2.amazonaws.com/logo.pnglogo)z@https://gradio-static-files.s3.us-west-2.amazonaws.com/tower.jpgtower200px)r   columns)r5   Hellouser)contentroleHi	assistantChatbot)r   r   zAdd messagesc                 @    | ddggz   t          j        d          pg z   S )NzHow are you?z
I am good.r   r   )historys    r   <lambda>r     s+    *L9:);:a==.B)0 r   zAdvanced SettingszChatbot control 1zChatbot control 2zChatbot control 3a  () => {
                let evt_listener = window.setTimeout(
                    () => {
                        load_theme_btn = document.querySelector('#load_theme');
                        if (load_theme_btn) {
                            load_theme_btn.click();
                            window.clearTimeout(evt_listener);
                        }
                    },
                    100
                );
            }undocumentedjsr   c                 0     fdt           D             d         }t          j        |j                  j        }|d         j        }|d         j        }|d         j        }|d         j        }|d         j        }|d         j        } |            }|j        d d	         }	|j        d d	         }
d
 |	D             }d |
D             }d }g }t          D ]V}t          ||          }|-|
                    d          rt          ||d d                   }|                    |           W|j        |j        |j        g|                                z   |                                z   |                                z   |j        |j        |j        gz   |                                z   |                                z   |                                z    |d |	D                       z    ||          z    |d |
D                       z    ||          z   |z   S )Nc                 *    g | ]}|j         k    |S r=   r>   )r@   rA   
theme_names     r   rB   zload_theme.<locals>.<listcomp>  s%    OOOu%.J2N2NU2N2N2Nr   r   primary_huesecondary_hueneutral_huero   spacing_sizeradius_sizerZ   c                 L    g | ]!}t          |t          j        j                  "S r=   
isinstancer"   r#   
GoogleFontr@   fs     r   rB   zload_theme.<locals>.<listcomp>	  s'    PPPajBI,@AAPPPr   c                 L    g | ]!}t          |t          j        j                  "S r=   r   r   s     r   rB   zload_theme.<locals>.<listcomp>
  s4     # # #89
1bi233# # #r   c                 4    | d gdt          |           z
  z  z   S )NrZ   )len)xs    r   pad_to_4zload_theme.<locals>.pad_to_4  s    D6QQZ000r   rv   c                 @    g | ]}t          |d           r|j        n|S rH   hasattrr   r   s     r   rB   zload_theme.<locals>.<listcomp>!  s-    NNNAga&8&8?AFFaNNNr   c                 @    g | ]}t          |d           r|j        n|S rH   r   r   s     r   rB   zload_theme.<locals>.<listcomp>#  s-    SSSAga&8&8?AFFaSSSr   )r#   r    	signature__init__r   default_font
_font_monor0   getattrendswithr)   r   expand)r   rA   r   r   r   r   ro   r   r   font	font_monofont_is_googlefont_mono_is_googler   
var_outputvariable	theme_vals   `                r   rF   rF     s   OOOOOOOPQRE *5>::EJ$]3;K&7?M$]3;K";/7I%n5=L$]3;KEGGE;rr?D(!,IPP4PPPN# #=F# # #1 1 1 J* - -#E844	$):):7)C)C$ 'x} = =I!!),,,, !=#5{7GH$$&&'&&(() $$&&' ><#4k6FG	H
 ""$$% %%''( $$&&' (NNNNNOOP (>**	+ (SSSSSTT
U (.//0 r   c                 
   0  }  fdt           D             d                      t          j         j                  j        }|d         j        }|d         j        }|d         j        }	|d         j        }
|d         j        }|d         j        }|d	         j        }t          |t                    s|gn|}d
 |D             }|d         j        }t          |t                    s|gn|}d |D             }i }i }g d}t          ||||	|
||gt          j         j
        t          j         j
        t          j         j
        t          j         j        t          j         j        t          j         j        g|d          D ]i\  }}}0|j        0k    r0||<   0fd|j        D             d         }i }d}t          |          D ]}|dv s|                    d          r|                    d          d         dz   |t          j         j
        k    r
|dd          n|z   }t#          ||          ||<   t#          ||          ||         k    rd}|ri }|                                D ]y\  }}|                    d          r$d|                    d          d         z   }|||<   >|                    d          r!|                    d          d         }|||<   t|||<   z||f||<   ki }d |D             }d |D             }|d d         }|d d         }||d	f||dffD ]^\  } }!}"t'          |           t'          |!          k    s)t)          d t          | |!d          D                       rd |!D             ||"<   _d}#d}$t'          |          t'          |          z   dk    r|D ]}%|%|v rO||%         \  }&}'|$d |% d!|&j         d"d#                    d$ |'                                D                        d%z  }$U|%|v rD||%         }(|%                    d&          r|(                    d          d         }(|$d |% d'|( d(z  }$d})t'          |          dk    r1d                    d) |                                D                       })i }*t0          D ]j}+t#           |+          },t#          ||+          }-|,-|+                    d*          rt#           |+d d+                   },|,|-k    rt#          ||+          |*|+<   kd}#d}.t'          |*          dk    r;d,d-|#z   d z                       d. |*                                D                        d/}.d0| d"|$s|)r|#nd |$ |) d1|. d2	}/|/S )3Nc                 *    g | ]}|j         k    |S r=   r>   )r@   rA   
base_themes     r   rB   z'generate_theme_code.<locals>.<listcomp>,  s%    TTTEu~7S7S%7S7S7Sr   r   r   r   r   ro   r   r   r   c                     g | ]B}t          |t          j        j                  st          j                            |          n|CS r=   r   r"   r#   Fontr   s     r   rB   z'generate_theme_code.<locals>.<listcomp>9  sN        *4Ary~)F)FM	q!!!A  r   r   c                     g | ]B}t          |t          j        j                  st          j                            |          n|CS r=   r   r   s     r   rB   z'generate_theme_code.<locals>.<listcomp>A  sN        *4Ary~)F)FM	q!!!A  r   )r   r   r   ro   r   r   Fstrictc                 *    g | ]}|j         k    |S r=   rH   )r@   objfinal_values     r   rB   z'generate_theme_code.<locals>.<listcomp>g  s,       sx;7N7NC7N7N7Nr   )allr   r   _r   T)rM   rO   rQ   r   )rS   rW   rY   c                 "    g | ]}|d          
|S r   r=   r@   r   s     r   rB   z'generate_theme_code.<locals>.<listcomp>  !    MMMT!WMMMMr   c                 "    g | ]}|d          
|S r   r=   r   s     r   rB   z'generate_theme_code.<locals>.<listcomp>  r   r   rZ   c              3      K   | ]A\  }}|j         |d          k    p(t          |t          j        j                  |d         k    V  BdS )r   r   N)r   r   r"   r#   r   )r@   	base_font
theme_fonts      r   	<genexpr>z&generate_theme_code.<locals>.<genexpr>  sq       D D .	: Njm3 T!)RY-ABBjQRmSD D D D D Dr   c                 0    g | ]\  }}|rd | dnd| dS )zgr.themes.GoogleFont('z')'r=   )r@   	font_nameis_google_fonts      r   rB   z'generate_theme_code.<locals>.<listcomp>  sR     1 1 1 6I~ *.>>>>>----1 1 1r   
     z=gr.themes.(, c              3   ,   K   | ]\  }}| d | dV  dS )=""Nr=   r@   kvs      r   r  z&generate_theme_code.<locals>.<genexpr>  s\        bM  bMw{wxz{ghbrbrlmbrbrbr  bM  bM  bM  bM  bM  bMr   z),
_sizer  z",
c                 L    g | ]!\  }}d | dd                     |           d"S )r  z=[r  z],
)join)r@   font_set_namefontss      r   rB   z'generate_theme_code.<locals>.<listcomp>  sL       0M5 KJJ$))E2B2BJJJ  r   rv   r   z
.set(
    ,c                 $    g | ]\  }}| d | dS )z='r  r=   r  s      r   rB   z'generate_theme_code.<locals>.<listcomp>  s(    #O#O#OTQqLLALLL#O#O#Or   z
)z(
import gradio as gr

theme = gr.themes.r   zU

with gr.Blocks() as demo:
    ... # your code here
demo.launch(theme=theme)
    ...)r#   r    r   r   r   r   r   r   zipr"   ColorSizer   r   dirr(   r*   r   itemsr   anyr?   r  r   r0   )1r   final_themecore_variablesfinal_main_fontsfinal_mono_fontsbase_theme_namer   r   r   r   ro   r   r   r   r   
core_diffsspecific_core_diffscore_var_names
value_name
base_valuesource_class
source_objfinal_attr_valuesdiffattrfinal_theme_attrnew_final_attr_valueskeyval	color_keysize_key
font_diffsbase_font_settheme_font_setr  newlinecore_diffs_codevar_nameclsvalsvar_valfont_diffs_code	var_diffsr   base_theme_valfinal_theme_valvars_diff_codeoutputr   s1   `                                               @r   generate_theme_coderE  (  s    )OTTTTVTTT  J !*:+>??JJ$]3;K&7?M$]3;K";/7I%n5=L$]3;Kf%-D!+D(!;!;ED66D   D #;/7I#-i#B#BQ	  "  I
 J"$  N FI!  IOIOIOINININ 'F F F 8 8A
Jk* ?k11-8Jz*   #/#3  
 %'!
OO $ $D888DOOC<P<P8 "((--a0'3ry'F'F488DR %
 ;B#%5; ;%&67 z4004EFV4WWW# ,.)$5$;$;$=$= = =S>>*PQQ =(+ciinnR.@(@I?B1)<< ^^,LMM ='*yy~~b'9H>A1(;;9<1#66$-7'
3
 JMM1AMMMMM1AMMM8D!"1"I'0,k:A  <~} }%%^)<)<<< D D 25%~e2 2 2D D D A A<1 1 :H	1 1 1J}- G O:%8!9!99A== . P PH#666$7$A	T'  ,UH  ,U  ,U  ,U  ,UX\XaXa  bM  bM  @D  @J  @J  @L  @L  bM  bM  bM  YM  YM  ,U  ,U  ,U  U!Z//",X"6#,,W55 =&-mmC&8&8&<G'+OH+O+O+O+O+OO O:"""$'' 4>4D4D4F4F  # # I* I I!(X!>!>")+x"@"@!)h.?.?.H.H)%,Z#2#%G%GN!_44*1+x*H*HIh'GN9~~!!"	Gmf""#O#OY__=N=N#O#O#OPP" " " #  1@%Z?%ZWWXZ ]l n}  @N  F Mr   c                    |dd         \  }}}|ddt          t                    z            }|dt          t                    z   ddt          t                    z  z            }|ddt          t                    z  z   ddt          t                    z  z            }|ddt          t                    z  z   ddt          t                    z  z            \  }	}
}|ddt          t                    z  z   ddt          t                    z  z   t          t                    z            }|ddt          t                    z  z   t          t                    z   ddt          t                    z  z   dt          t                    z  z            }|ddt          t                    z  z   dt          t                    z  z   ddt          t                    z  z   dt          t                    z  z            }|ddt          t                    z  z   dt          t                    z  z   ddt          t                    z  z   dt          t                    z  z   dz            }|ddt          t                    z  z   dt          t                    z  z   dz   ddt          t                    z  z   dt          t                    z  z   dz            }|ddt          t                    z  z   dt          t                    z  z   dz   ddt          t                    z  z   dt          t                    z  z   dz            }|ddt          t                    z  z   dt          t                    z  z   dz   ddt          t                    z  z   dt          t                    z  z   dz            }|ddt          t                    z  z   dt          t                    z  z   dz   d          }t          j        j        | }t          j        j        | }t          j        j        | }t          j        j        | }t          j        j        | }t          j        j        | }g }t                      }t          t          |d	
          D ]\  }}d|v r|
                    |           t          |          }t          ||d	
          D ]@\  }}|s|r!t          j                            ||          }|                    |           Ag } t          ||d	
          D ]@\  }!}|!s|r!t          j                            |!|          }!|                     |!           At          j                            ||||||||           }" |"j        di t          t          t          |d	
                     ||f}#t          |           dk    s&t!          | d                   t!          |#          k    r|                     |#           | |"                                |"j        t'          ||"||||	|
|ft)          t          ||d	
                    t)          t          ||d	
                              |"fS )Nr   r   r   r{   rZ            Fr   rs   )weights)r   r   r   ro   r   r   r   r   r   r=   )r   palette_range
size_ranger"   r#   r  r  r%   r  r0   addsortedr   r)   r$   dictstr_get_theme_css_stylesheetsrE  list)$r   r   argsr   r   r   primary_huessecondary_huesneutral_huesro   r   r   
text_sizesspacing_sizesradius_sizes
main_fontsmain_is_google
mono_fontsmono_is_googleremaining_argsfinal_primary_colorfinal_secondary_colorfinal_neutral_colorfinal_text_sizefinal_spacing_sizefinal_radius_sizer#  font_weightsr/  r3  	main_font	is_googler$  	mono_fontrA   new_steps$                                       r   render_variablesrk    s   6:1Q3i3KAM(:(:$: :;L!!c-&8&8"81q3}CUCU?U;U"UVNAM(:(:$: :QSEWEWAW=W WXL37AM****QS5G5G1G-GG40I|[ AM****Qc-(((.)j//." "J
 !AM****S__<qc-(((@)c*oo%@& &M
  AM****QZ-@@1c-(((D)c*oo%D& &L
 AM****QZ-@@1c-(((D)c*oo%D& D J "AM****QZ-@@1Dqc-(((H)c*oo%H& H N AM****QZ-@@1Dqc-(((H)c*oo%H& H J "AM****QZ-@@2Ec-(((I)c*oo%I& I N "AM****QZ-@@2EGGN #%)/<"@$&IO^$D!"$)/<"@ inj9O!#!? "	 =!55L NNN * *	ct## $$S)))!,//L(+Ju(U(U(U 3 3$	9   V "	 4 4Y 4 U UI ''	2222!(+Ju(U(U(U 3 3$	9   V "	 4 4Y 4 U UI ''	2222INN/3/)/-%* # 	 	E EIPPSNNNOOPPP"D)H7||q  C$4$4H$E$Ex((( $$&&"##%#!$# ZFFFGGZFFFGG  % r   c           	           | t           t          t          gt          z   t          t          t
          t          t          gd                              d t          t
          gd dd          S )Nr   r   a  (css, fonts) => {
                    document.getElementById('theme_css').innerHTML = css;
                    if (fonts && Array.isArray(fonts)) {
                        let existing_font_links = document.querySelectorAll('link[rel="stylesheet"][href^="https://fonts.googleapis.com/css"]');
                        existing_font_links.forEach(link => {
                            if (fonts.includes(link.href)) {
                                fonts = fonts.filter(font => font != link.href);
                            } else {
                                link.remove();
                            }
                        });
                        fonts.forEach(font => {
                            let link = document.createElement('link');
                            link.rel = 'stylesheet';
                            link.href = font;
                            document.head.appendChild(link);
                        });
                    }
                }r   )	rk  r   base_theme_dropdowntheme_inputs
secret_csssecret_fontoutput_codecurrent_themethen)evt_listeners    r   attach_rerenderru  L  sk    < -.=*k;N(	  
 d[)&  )/   r   c                 ^      fdt           D             d         fdt          D             S )Nc                 *    g | ]}|j         k    |S r=   rH   )r@   rJ   
color_names     r   rB   zload_color.<locals>.<listcomp>m  s%    KKKu%*
2J2JU2J2J2Jr   r   c                 6    g | ]}t          d |           S )r   r   )r@   r]   rJ   s     r   rB   zload_color.<locals>.<listcomp>n  s)    CCCGE7q77++CCCr   )colorsrK  )rx  rJ   s   `@r   
load_colorr|  l  s<    KKKKKKKANECCCC]CCCCr   c                 ^      fdt           D             d         fdt          D             S )Nc                 *    g | ]}|j         k    |S r=   rH   )r@   r9   	size_names     r   rB   zload_size.<locals>.<listcomp>  s%    EEETdi9.D.DD.D.D.Dr   r   c                 0    g | ]}t          |          S r=   rz  )r@   r]   r9   s     r   rB   zload_size.<locals>.<listcomp>  s#    999GD!$$999r   )sizesrL  )r  r9   s   `@r   	load_sizer    s<    EEEEUEEEaHD9999j9999r   a  () => {
            if (document.querySelectorAll('.dark').length) {
                document.querySelectorAll('.dark').forEach(el => el.classList.remove('dark'));
            } else {
                document.querySelector('body').classList.add('dark');
            }
        }c                     t          |           dk    rt          t          j                    iS |                                  |                                 }| |d         gt          |d                   z   S )Nr   r   )r   r   r"   skippoprS  )history_varolds     r   undor    sc    ;1$$++!!!!oo''#SV,tCF||;;r   c                    	 | t                                        | t                   | t                   pd | t                   | t                             }d                    |                    d          dd                    }t          j        d| d| dd          d	fS # t          $ r%}t          j        d
| d          d	fcY d }~S d }~ww xY w)N)	repo_nameversionhf_tokenr   /zTheme uploaded [here!](z )! Load it as `gr.Blocks(theme='z')`T)rD   r   r   zError: )
rr  push_to_hubr   theme_versiontheme_hf_tokenr  r*   r"   Markdown	Exception)data	theme_url
space_namees       r   upload_to_hubr    s    /;;":. /74!.1#J/	 <  	 !XXiooc&:&:233&?@@
Kr	rrcmrrr $   $     K+mm $   $      s   B B# #
C-CCCc                      dS )NzUploading...r=   r=   r   r   r   r     s    N r   c                       t          d          S )NFOO)printr=   r   r   r   r     s    %,, r   __main__z<style id='theme_css'></style>)rA   csshead)r    r   collections.abcr   gradio_client.documentationr   gradior"   r#   r$   DefaultSoft
MonochromeGlassOriginCitrusOceanr  r   r{  r  r  rK  rL  r   r   r%   r   r   r2   variable_groupsr0   r  BlocksdemoRowColumnButtonundo_btndark_mode_btnTabsTabItemr  r   rm  load_theme_btnr   	AccordionrU  r]   r)   ColorPickerr   rV  r   rW  ro   rX  Textboxr   rY  r   rZ  r[  r\  ranger   Checkboxr   r]  r^  theme_var_inputcore_color_suggestionsvariable_suggestionsr   r   r  
style_typesuggestionsr   r-   r.   r/   removedropdownCoderq  r   r  r  upload_to_hub_btntheme_upload_statusr   Sliderslider1slider2CheckboxGroupr   radiodropdrop_2checkr   imggo_btn	clear_btnr   clickr   btn1UploadButtonbtn2stop_btnr   JsonLabelFileVideoGalleryr   chatbotMultimodalTextbox
multimodalchat_btnNumberro  r   rp  loadrn  rF   rE  Stater   rr  rk  ru  r|  selectrs  hue_sethueblurr  change	theme_boxsubmitcheckboxr  r  r?   launchr=   r   r   <module>r     s"     $ $ $ $ $ $ 3 3 3 3 3 3     INIINIIOIIIO	
 
	
	FFF999
+bin5ry~FFqI+bin0").AA!DJ J J" " "* #;":"<"< 0 RY
    b(		 _( _(RYQ
cBBB I	= I	= U U$29V$777 )	+yt T T TU U U U U U U U U U U U U U U  E= E=RZ// S SBK  
 +6"+<<V<<<$%+ + +'
 &/RY|\%R%R%RNS S S S S S S S S S S S S S S  RZ.. ( (BKv  
 #."+88888# # #K &,ANNN  ')!.  A(// .*8Q..!" !" !"                  %0BK88888% % %M &,C%PPP  )+!.  A*11 .*:q*:*:!" !" !"                  #."+88888# # #K &,ANNN  ')!.  A(// .*8Q..!" !" !"                 C( ( ( ( ( ( ( ( ( ( ( ( ( ( (T  RZ.. 4 4BK   !,VVuVVV)! ! !I &,=EJJJ  %'
!+  A&-- *
*5!++!" !" !"                  $/2; (-  
 -$ $ $L &,@uMMM  (*!+  A)00 *
*8Q..!" !" !"                  #."+ (-  
 ,# # #K &,?eLLL  ')!+  A(// *
*7A--!" !" !"                 [4 4 4 4 4 4 4 4 4 4 4 4 4 4 4l  RZ-- B BBK    BK00013R.J"U1XX B B#RVXX B B#-2:OAEOO#D#D#DD-8R[}-M-M-MN&--d333*11.AAA	B B B B B B B B B B B B B B B 24R.JBK 4555"U1XX B B#RVXX B B#-2:OAEOO#D#D#DD-8R[}-M-M-MN&--d333*11.AAA	B B B B B B B B B B B B B B BB%B B B B B B B B B B B B B B B2 #% =<m<<<@@-@@@A>>>>>? ' 311153AAA6!C!C
!C!C!CBBzBBBDDDDD@@Z@@@	 	 	  &h$&%( ($( !/ " "H((11 ! 3G3M3M3O3O " "/
K%11'..sX~>>>!E 2
 )0*73CC8N4O4O4Q4QRS(1*62337M3N3N3P3PQR L$V,.B7.K /> = =*E4#E** = =# @   )2 = =H*,K.B * *
#-#9#92Fz2RSTSTST2UK'*X~'D'D(3(:(:3>(J(J(J$)E	 $:
 (3r{&.%/Z%9%9(337	( ( (H ,228<<<<== = = = = = = = = = = = = = ==cE= E= E= E= E= E= E= E= E= E= E= E= E= E= E=	I	= I	= I	= I	= I	= I	= I	= I	= I	= I	= I	= I	= I	= I	= I	=Z RYQ... m	= m	=7+++ S S	 	 	 "R\+E::: = =")"'8"<"<"<K= = = = = = = = = = = = = = =!R\/>>> H HBK [      %/RZl%C%C%C
)3:T)U)U)U(2
"+(V) ) )               )2	/(B(B%*5"+h*G*G*G'H H H H H H H H H H H H H H H QRRR7S S S S S S S S S S S S S S S: 2:O&    D  6 6#")*555#")*5556 6 6 6 6 6 6 6 6 6 6 6 6 6 6 B___4DEEEE 0P 0PRYwa888 4 4BK---$BH'% G  E
 '2;<<<  D )R[<<<$()l($(  F (BKd333E#4 4 4 4 4 4 4 4 4 4 4 4 4 4 4$ RYwa888 P P""(a%"  C
   : :!*4!C!C!C$-BIg{$K$K$K	m m m "D&%>+4	 %   , , , "tS999%: : : : : : : : : : : : : : :(   P P(ry$???.rD999#,29VV$#O#O#OP P P P P P P P P P P P P P P5P P P P P P P P P P P P P P P'0P 0P 0P 0P 0P 0P 0P 0P 0P 0P 0P 0P 0P 0P 0Pd BK "#	 "#Z0	 tVU3 !   &    !yyy0Q0QRR     s3DDEEEE			                    V   
   #!                 0  = =RYQ'''  (bj(/@@(,kBB (  G "6!5$(U" " "J  )ry88HNN0 0  '0 #                 * RYQ''' = =%&9:: = =#G,,,!	(;<<<<!	(;<<<<!	(;<<<<	= = = = = = = = = = = = = = == = = = = = = = = = = = = = =-= = = = = = = = = = = = = = =em	= m	= m	= m	= m	= m	= m	= m	= m	= m	= m	= m	= m	= m	= m	=b  RZ111
bgh///		 *! 	 	
 	
 	
( -5  ,4	5
     	 
   	 ,	 ,	 ,	\k	 k	 k	Z "(2,, r	 r	 r	h	 	 	@	D 	D 	D 	Kn   	
 	
 	

 	  M>. !  	
 	
 	

 	Kn   	
 	
 	

 %nlC 	* 	*G * *))))*	: 	: 	: 	9j   	
 	
 	

 	<~    	
 	
 	

 	;^   	
 	
 	
 	  #-	 !  
 	
 	
 	
 &5
BZO	. 	.I OIN+++OI,----( 	. 	.IOIN+++OI,----&7 	- 	-HOHO,,,, * 	 	
 	
 	
	< 	< 	< 	NN	-.=(	   
 	
 	
 	
	 	 	2 	"")	 	  	
 	

 $	 !"34)  

 

 

 			&&'''_( _( _( _( _( _( _( _( _( _( _( _( _( _( _(b( b( b( b( b( b( b( b( b( b( b( b( b( b( b(J zKKbinn&&C6VKWWWWW s  AE)AD8=b	&E?	3b	?Fb	Fb	a2	*A G6*a2	6G::a2	=G:>a2	?N/J NJNJ1N/L5NLNL	1N:/M6*N6M::N=M:>Na2	Na2	Na2	(?T$'/P#T$#P''T$*P'+1T$/RT$RT$R 1T$/TT$TT$TT$a2	$T((a2	+T(,a2	?AZAW Z W$$Z'W$(5ZAY<0Z<Z  ZZ Z	a2	Za2	ZD(a2	Baa2	aa2	 a!a2	&b	2a66b	9a6:b	=AD8	bAD8bAD8&y8#g	c9-g	9c==g	 c=g	 f/65e7+f/7e;;f/>e;?$f/#g	/f33g	6f37g	
ygyg'y#h4	(y4h88y;h8<&y"p	5A#k$p	$k((p	+k(,p	#p$A npnpnp*7o-!p-o11p4o15p8p	pp	pp	ypy"p#6yA r%	y%r))y,r)-y?5t 	4y tytyx:	,Avx:	vx:	vx:	+x#<Ax x#xx#xx#x:	#x''x:	*x'+x:	.y:x>>yx>yAD8yAD8yKAD8D,AED8AD<	D<AED?AD<	E AEEAEEAE