
    TiF                     V    S SK r S SK Jr  S SKJr  S SKrS SKJrJr  / SQrS r	S r
S rg)	    N)BeautifulSoup)NavigableString)Tagtranslate_tags)
addressappletaudiocanvascodeembedscriptstyletimevideoc                 @   [        U [        R                  R                  5      (       a  [	        U 5      $ U R
                  [        ;  =(       a    U R                  S5      S:g  n[        U R                   Vs/ s H  n[        U5      PM     snU5      nXl        U$ s  snf )zReturns an argostranslate.tags.ITag tree from a BeautifulSoup object.

Args:
    soup (bs4.element.Navigablestring or bs4.element.Tag): Beautiful Soup object

Returns:
    argostranslate.tags.ITag: Argos Translate ITag tree
	translateno)
isinstancebs4elementr   strnameNON_TRANSLATEABLE_TAGSgetr   contentsitag_of_soupsoup)r   translateablecontent	to_returns       s/var/www/html/backend/Backoffice_Marketplace/venv/lib/python3.13/site-packages/argostranslatefiles/translatehtml.pyr   r      s}     $33444yII%;;]@UY]@]M$--H-w\'*-H-XIN Is   6Bc                    [        U 5      [        :X  a  [        R                  R	                  U 5      $ U R
                  nUR                  5         UR                  U R                   Vs/ s H  n[        U5      PM     sn5        U$ s  snf )zReturns a BeautifulSoup object from an Argos Translate ITag.

Args:
    itag (argostranslate.tags.ITag): ITag object to convert to Soup

Returns:
    bs4.elements.BeautifulSoup: BeautifulSoup object
)
typer   r   r   r   r   clearextendchildrensoup_of_itag)itagr   childs      r!   r'   r'   '   sf     DzS{{**40099DJJLKK$--@-e$-@AK As   (Bc                 `    [        US5      n[        U5      n[        X5      n[        U5      nU$ )zTranslate HTML str.

Args:
    underlying_translation (argostranslate.translate.ITranslation): Argos Translate Translation
    html (str): An HTML string

Returns:
    str: Translated HTML string
zhtml.parser)r   r   r   r'   )underlying_translationhtmlr   r(   translated_tagtranslated_soups         r!   translate_htmlr/   8   s5     }-DD#$:AN">2O    )r   r   bs4.elementr   argostranslateargostranslate.tagsr   r   r   r   r'   r/    r0   r!   <module>r5      s+    
  '  3 ""r0   