
    hd              	          d dl mZ d dlmZ d dlmZ ddlmZ ddl	m
Z
mZ ddlmZ d	d
lmZmZ  ej                   e      Zej$                   G d d ed      e
e             Zej$                   G d d ed      e             Zej$                   G d d ed      e
ee             Zd Zej$                   G d d ed      e
e             Zy)    )plugin_pool)gettext_lazy)settings   )CMSUIPlugin)AttributesMixinSpacingMixin   )	utilities   )formsmodelsc                   v    e Zd ZdZ ed      Z ed      Zej                  Z	e
j                  ZdZdZdddifgZy)	SpacingPluginz[
    Components > "Card" Plugin
    https://getbootstrap.com/docs/5.0/components/card/
    SpacingFrontendz%djangocms_frontend/admin/spacing.htmlTNfields)space_propertyspace_sides
space_sizespace_device)__name__
__module____qualname____doc___namemoduler   r   modelr   SpacingFormformchange_form_templateallow_children	fieldsets     `/home/dcms/DCMS/lib/python3.12/site-packages/djangocms_frontend/contrib/utilities/cms_plugins.pyr   r      sX    
 Y<Dz]FNNEDBN  
	
Ir&   r   r   c                   @    e Zd ZdZ ed      Z ed      ZdZdZdZ	dZ
y)EditorNotePlugin3Room for notes for editor only visible in edit modezEditor noter   T%djangocms_frontend/admin/no_form.htmlFN)r   r   r   r   r   r   r   r#   r"   show_add_formedit_disabledr%   r&   r'   r)   r)   ,   s-    =]Dz]FNBMMr&   r)   
EditorNotec                        e Zd ZdZ ed      Z ed      Zej                  Z	e
j                  ZdZdZdZddd	ifgZd
Z fdZ xZS )HeadingPluginr*   Headingr   zdjangocms_frontend/heading.htmlTFNr   ))heading_level
heading_idheadingheading_alignmentheading_context)r4   c           	          t        |d   d      s
g |d   _        t        |dd      }|r7|d   j                  j                  |t        |dd      t        |dd      f       ||d<   t        |   |||      S )	NrequestTOCr3    r4   r2   h2instance)hasattrr9   getattrappendsuperrender)selfcontextr<   placeholderr3   	__class__s        r'   rA   zHeadingPlugin.renderU   s    wy)51%'GI"X|R8
I""))Hi4Hot< '
w~gx==r&   )r   r   r   r   r   r   r   r   r1   r   r   HeadingFormr!   render_templater#   is_localr$   frontend_editable_fieldsrA   __classcell__rE   s   @r'   r0   r0   8   sk    =Y<Dz]FNNED7ONH  
	
I  ,> >r&   r0   r1   c                 (      fdd        S )Nc                  "   d } g }t              k  r{| |    d   k(  r-|j                     d      d   f          d   } dz  n2|    d   k  r|j                  d         f       n|    d   kD  r	 |S t              k  r{|S )Nr
   r   r   )lenr?   )previous_leveltoc_treeiprocess_levelrequest_tocs     r'   rR   z"create_tree.<locals>.process_levelf   s     #k""%;q>!;L)LQ!2KN14E FG!,Q!2Q+a."33} 78+a."33 #k"" r&   r   r%   )rS   rQ   rR   s   `@@r'   create_treerT   e   s      	
A?r&   c                        e Zd Z ed      Z ed      Zej                  Ze	j                  ZdZdZej                  ZdZdZdZ fdZ xZS )	TOCPluginzTable of contentsr   zdjangocms_frontend/toc.htmlr+   FTc                     t        |d   d      rt        |d   j                        }||d<   ng |d<   | j                  |d<   ||d<   t        |   |||      S )Nr8   r9   toctemplater<   )r=   rT   r9   rG   r@   rA   )rB   rC   r<   rD   rP   rE   s        r'   rA   zTOCPlugin.render   sf    79%u-"79#5#9#9:H%GENGEN"22
&
w~gx==r&   )r   r   r   r   r   r   r   TableOfContentsr   r   TableOfContentsFormr!   rG   r"   r   EMPTY_FIELDSETr$   r,   r-   rH   rA   rJ   rK   s   @r'   rV   rV   z   s\     !Dz]F""E$$D3OB''IMMH> >r&   rV   r9   N)cms.plugin_poolr   django.utils.translationr   r   djangocms_frontendr   cms_pluginsr   commonr   r	   r:   r   r   r   get_renderermixin_factoryregister_pluginr   r)   r0   rT   rV   r%   r&   r'   <module>re      s    ' 6 ' & 3  %%%i0 M),o{  : }\2K   )>M),o|[ )> )>X* >e$o{ > >r&   