§
   µ°È”?¸`)ã                   óx   — d Z ddlZddlZddlZddlZdZdZdZdZdZ	dZ
d	ZdZd
ZdZdZdad„ Zd„ Zd„ Zd„ Zd„ ZdS )uy  Metadata chips (1080p Â· MKV Â· 725 MB Â· CZ) rendered as one image per list row.

Kodi list layouts cannot size a chip background to its text (controls inside a
grouplist in an itemlayout do not resolve ListItem infolabels â€” verified live
in Kodi 21), so each row gets a PNG with snug chips: white text on a faint
white pill, tinted by `colordiffuse` in the XML (idle vs focused). Rendered at
2x for crisp output on 1440p/4K GUIs; cached by content.

Geometry (1080p skin px, measured on the design reference): height 33,
horizontal text padding 14, gap 15, fully rounded ends, fill alpha ~11.5 %,
text Kodi Arial at font10 size.
é    Né   é!   é   é   é   )éÿ   r   r   é   )r   r   r   r   z$special://xbmc/media/Fonts/arial.ttfÚ4z?special://profile/addon_data/plugin.video.milionar/cache/chips/c                  óž   — t           €@ddlm}  |                      t	          j        t          ¦  «        t          t          z  ¦  «        a t           S )Nr   ©Ú	ImageFont)	Ú_fontÚPILr   ÚtruetypeÚxbmcvfsÚtranslatePathÚ
_FONT_FILEÚ	FONT_SIZEÚSCALEr   s    ú_/Users/chudy/Library/Application Support/Kodi/addons/plugin.video.milionar/wcs/ui/chip_strip.pyÚ	_get_fontr   $   sD   € å€}Ø!Ð!Ð!Ð!Ð!Ð!Ø×"Ò"¥7Ô#8½Ñ#DÔ#DÅiÕRWÑFWÑXÔXˆÝ€Ló    c                 ó‚   — t          | d¦  «        r|                      |¦  «        n|                      |¦  «        d         S )zTPillow 8+ getlength; older Pillow (Kodi's script.module.pil 5.x on Windows) getsize.Ú	getlengthr   )Úhasattrr   Úgetsize)ÚfontÚtexts     r   Ú_text_widthr   ,   s;   € å#*¨4°Ñ#=Ô#=ÐXˆ4�>Š>˜$ÑÔÐÀ4Ç<Â<ÐPTÑCUÔCUÐVWÔCXÐXr   c                 óÚ   — t          | d¦  «        r%|                      |¦  «        }|d         |d         fS |                      |¦  «                             ¦   «         }|d         |d         fS )zV(top, bottom) of the ink of text: getbbox in Pillow 8+, the mask bbox in older Pillow.Úgetbboxé   é   )r   r!   Úgetmask)r   r   Úboxs      r   Ú	_ink_spanr&   1   sf   € åˆt�YÑÔð Ø�lŠl˜4Ñ Ô ˆØ�1Œv�s˜1”vˆ~ÐØ
�,Š,�tÑ
Ô
×
$Ò
$Ñ
&Ô
&€CØˆqŒ6�3�q”6ˆ>Ðr   c                 óP  — t          | d¦  «        r$|                      |d||dz
  g|dz  |¬¦  «         dS |dz  }|                      ||z   d||z
  |dz
  g|¬¦  «         |                      |d||z   dz
  |dz
  g|¬¦  «         |                      ||z
  dz   d||dz
  g|¬¦  «         dS )z@Fully rounded bar; rounded_rectangle only exists in Pillow 8.2+.Úrounded_rectangler   r"   r   )ÚradiusÚfillN)r*   )r   r(   Ú	rectangleÚellipse)ÚdrawÚleftÚrightÚheightr*   r)   s         r   Ú_pillr1   :   sÙ   € åˆtÐ(Ñ)Ô)ð Ø×Ò  a¨°¸±
Ð;ÀFÈaÁKÐVZÐÑ[Ô[Ð[ØˆØ�q‰[€FØ‡N‚N�D˜6‘M 1 e¨f¡n°f¸q±jÐAÈ€NÑMÔMÐMØ‡L‚L�$˜˜4 &™=¨1Ñ,¨f°q©jÐ9À€LÑEÔEÐEØ‡L‚L�%˜&‘. 1Ñ$ a¨°¸±
Ð;À$€LÑGÔGÐGÐGÐGr   c                 óü  ‡‡— d„ | D ¦   «         } | sdS t          j        t          dz   d                     | ¦  «        z                        d¦  «        ¦  «                             ¦   «         dd…         }t          j        t          ¦  «        }t          j
                             |d                     |¦  «        ¦  «        }t          j
                             |¦  «        r|S 	 dd	lm}m} t!          ¦   «         Št"          t$          z  t&          t$          z  t(          t$          z  c}Š}ˆˆfd
„| D ¦   «         }|                     dt-          |¦  «        |t/          | ¦  «        dz
  z  z   |fd¦  «        }	|                     |	¦  «        }
d}t3          | |¦  «        D ]o\  }}t5          |
|||z   dz
  |t6          ¦  «         t9          ‰d¦  «        \  }}|||z
  z
  dz  |z
  }|
                     |‰z   |f|‰t<          ¬¦  «         |||z   z  }Œpt          j        |d¬¦  «         |	                      |d¦  «         |S # tB          $ r=}tE          j#        d                     |¦  «        tD          j$        ¦  «         Y d}~dS d}~ww xY w)zJPath to a PNG with one chip per non-empty value ('' when nothing to show).c                 ó¼   — g | ]Y}|¯t          |¦  «                             ¦   «         ¯%|d k    ¯+t          |¦  «                             ¦   «         dt          …         ‘ŒZS )zN/AN)ÚstrÚstripÚMAX_CHIP_CHARS)Ú.0Úvs     r   ú
<listcomp>zchip_strip.<locals>.<listcomp>G   sS   € ÐeÐeÐe°!ÀÐeÅsÈ1ÁvÄvÇ|Â|Á~Ä~ÐeÐZ[Ð_dÒZdÐZd�c�!‰fŒf�lŠl‰nŒn˜_�n˜_Ô-ÐZdÐZdÐZdr   Ú ú|zutf-8Né   zchips_{}.pngr   )ÚImageÚ	ImageDrawc           
      óp   •— g | ]2}t          t          t          ‰|¦  «        ¦  «        ¦  «        d ‰z  z   ‘Œ3S )r   )ÚintÚroundr   )r7   r8   r   Úpads     €€r   r9   zchip_strip.<locals>.<listcomp>S   s<   ø€ ÐMÐMÐMÀ•#•e�K¨¨aÑ0Ô0Ñ1Ô1Ñ2Ô2°Q¸±WÑ<ÐMÐMÐMr   ÚRGBAr"   )r   r   r   r   Ú0MKr   )r   r*   T)Úexist_okÚPNGz-[plugin.video.milionar] chip_strip failed: {})%ÚhashlibÚsha1Ú_VERSIONÚjoinÚencodeÚ	hexdigestr   r   Ú
_CACHE_DIRÚosÚpathÚformatÚexistsr   r=   r>   r   ÚHEIGHTr   ÚPAD_XÚGAPÚnewÚsumÚlenÚDrawÚzipr1   ÚFILLr&   r   ÚTEXTÚmakedirsÚsaveÚ	ExceptionÚxbmcÚlogÚ
LOGWARNING)ÚvaluesÚkeyÚfolderrO   r=   r>   r0   ÚgapÚwidthsÚimgr-   ÚxÚvalueÚwidthÚtopÚbottomÚyÚexcr   rB   s                     @@r   Ú
chip_stripro   E   sz  øø€ àeÐe°vÐeÑeÔe€FØð ØˆrÝ
Œ,� 3™¨¯ª°&Ñ)9Ô)9Ñ9×AÒAÀ'ÑJÔJÑ
KÔ
K×
UÒ
UÑ
WÔ
WÐX[ÐY[ÐX[Ô
\€CÝÔ"¥:Ñ.Ô.€FÝŒ7�<Š<˜ × 5Ò 5°cÑ :Ô :Ñ;Ô;€DÝ	„w‡~‚~�dÑÔð ØˆðØ(Ð(Ð(Ð(Ð(Ð(Ð(Ð(Ý‰{Œ{ˆÝ!¥E™>­5µ5©=½#Å¹+Ðˆ��SØMÐMÐMÐMÐMÀfÐMÑMÔMˆØ�iŠi˜¥ V¡¤¨sµc¸&±k´kÀA±oÑ/FÑ!FÈÐ OÐQ]Ñ^Ô^ˆØ�~Š~˜cÑ"Ô"ˆØˆÝ ¨Ñ/Ô/ð 	ð 	‰LˆE�5Ý�$˜˜1˜u™9 q™=¨&µ$Ñ7Ô7Ð7å# D¨%Ñ0Ô0‰KˆC�Ø˜6 C™<Ñ(¨AÑ-°Ñ3ˆAØ�IŠI�q˜3‘w �l E°½4ˆIÑ@Ô@Ð@Ø�˜‘ÑˆAˆAÝ
Œ�F TÐ*Ñ*Ô*Ð*Ø�Š��uÑÔÐØˆøÝð ð ð ÝŒÐ@×GÒGÈÑLÔLÍdÌoÑ^Ô^Ð^Øˆrˆrˆrˆrˆrøøøøðøøøs   Ã EH4 È4
I;È>2I6É6I;)Ú__doc__rG   rN   r_   r   r   rR   rS   rT   r   rZ   r[   r6   r   rI   rM   r   r   r   r&   r1   ro   © r   r   ú<module>rr      sÌ   ððð ð €€€Ø 	€	€	€	à €€€Ø €€€à	€Ø	€Ø
€Ø€Ø€	Ø€Ø€Ø€à3€
Ø€ØN€
Ø€ðð ð ðYð Yð Yð
ð ð ðHð Hð Hðð ð ð ð r   