o
    sg^                     @   s<   d dl Z d dlZd dlZd dlmZ d dlmZ dd ZdS )    N)HTTPException)JSONResponsec               
      sD  zt d} | stdddd|  }t 4 I dH `}||4 I dH ?}|jdkr3t|jdd| I dH }d	d
 |dg D }td|t	|ddW  d  I dH  W  d  I dH  W S 1 I dH skw   Y  W d  I dH  W dS 1 I dH sw   Y  W dS  tj
y } ztddt| dd}~ww )z=Fallback function to get fonts without caching if Redis failsGOOGLE_FONTS_API_KEYi  z#Google Fonts API key not configured)status_codedetailz4https://www.googleapis.com/webfonts/v1/webfonts?key=N   zFailed to fetch Google Fontsc                 S   s   g | ]}|d  qS )family ).0fontr	   r	   ./var/www/html/XCapMarket/utils/google_fonts.py
<listcomp>   s    z2get_google_fonts_without_cache.<locals>.<listcomp>items)fontstotal)r   contentz&Error connecting to Google Fonts API: )osgetenvr   aiohttpClientSessiongetstatusjsonr   lenClientErrorstr)r   urlsessionresponse
fonts_datafont_familieser	   r	   r   get_google_fonts_without_cache	   s>   


2r"   )r   r   boto3fastapir   fastapi.responsesr   r"   r	   r	   r	   r   <module>   s    