+
    Tj3                         ^ RI t ^ RIHt ^ RIHtHt ^ RIHtHtH	t	 ^ RI
Ht ^ RIHtHt ^ RIHt Rt ! R	 R]4      t] ! R
 R4      4       tR# )    N)ValidationError)RenderableFieldMixinpretty_name)MultiWidgetTextarea	TextInput)cached_property)format_html	html_safe)gettext_lazy
BoundFieldc                   T  a  ] tR t^t o RtR t]R 4       tR tR t	R t
R t]R 4       t]R	 4       tR
 tRR ltR R ltR R ltR R lt]R 4       tR tR tR!R ltR"R ltR R lt]R 4       t]R 4       t]R 4       t]R 4       tR R lt]R 4       t]R 4       t ]R 4       t!Rt"V t#R# )#r   zA Field plus datac                   Wn         W n        W0n        VP                  V4      V n        VP                  V4      V n        VP                  V P                  4      V n        V P                  P                  f   \        V4      V n	        MV P                  P                  V n	        VP                  ;'       g    RV n        VP                  V n        R # )N )formfieldname
add_prefix	html_nameadd_initial_prefixhtml_initial_nameauto_idhtml_initial_idlabelr   	help_textrenderer)selfr   r   r   s   &&&&L/var/www/idalgo/venv/lib/python3.14/site-packages/django/forms/boundfield.py__init__BoundField.__init__   s    	
	.!%!8!8!>#66t||D::#$T*DJ))DJ..B    c                   V P                   P                  P                  P                  R4      ;'       g    V P                  pV'       d   RV/M/ pV P                  V4      pV P                   P                  P                  V P                  V P                  4       VR7       Uu. uF7  p\        V P                   P                  W0P                  P                  4      NK9  	  up# u upi )z
Most widgets yield a single subwidget, but others like RadioSelect and
CheckboxSelectMultiple produce one subwidget for each choice.

This property is cached so that only one database query occurs when
rendering ModelChoiceFields.
id)attrs)r   widgetr$   getr   build_widget_attrs
subwidgetsr   valueBoundWidgetr   r   )r   id_r$   r%   s   &   r   r(   BoundField.subwidgets   s     jj%%))$/??4<<"s''. **++66

E 7 
 

))6993E3EF
 	
 
s   %=C%c                    R # T r   s   &r   __bool__BoundField.__bool__1   s    r!   c                ,    \        V P                  4      # N)iterr(   r0   s   &r   __iter__BoundField.__iter__5   s    DOO$$r!   c                ,    \        V P                  4      # r4   )lenr(   r0   s   &r   __len__BoundField.__len__8   s    4??##r!   c                    \        V\        \        34      '       g&   \        R \	        V4      P
                  ,          4      hV P                  V,          # )z6BoundField indices must be integers or slices, not %s.)
isinstanceintslice	TypeErrortype__name__r(   )r   idxs   &&r   __getitem__BoundField.__getitem__;   sH     #U|,,Hs)$$%  s##r!   c                    V P                   P                  P                  V P                  V P                   P	                  V P                   P
                  R7      4      # )zD
Return an ErrorList (empty if there are no errors) for this field.
)r   )r   errorsr&   r   error_classr   r0   s   &r   rG   BoundField.errorsE   sF    
 yy##IItyy,,dii6H6H,I
 	
r!   c                ~    V P                   P                  ;'       g!    V P                  P                  P                  # r4   )r   template_namer   r   field_template_namer0   s   &r   rK   BoundField.template_nameN   s*    zz''QQ499+=+=+Q+QQr!   c                
    R V /# )r   r/   r0   s   &r   get_contextBoundField.get_contextR   s    r!   Nc                   T;'       g    V P                   P                  pV P                   P                  '       d   RVn        T;'       g    / pV P	                  W!4      pV P
                  '       dB   RVP                  9  d1   TP                  RV'       d   V P                  MV P
                  4       V'       de   V P                  V P                  P                  9   d@   V P                  P                  V P                   P                  4       V P                  4      pMV P                  4       pTP                  V'       d   V P                  MV P                   VVV P                  P"                  R7      # )z
Render the field by rendering the passed widget, adding any HTML
attributes passed as attrs. If a widget isn't specified, use the
field's default widget.
Tr#   )r   r)   r$   r   )r   r%   localizeis_localizedr'   r   r$   
setdefaultr   r   r   data_widget_data_valuehidden_widgetr)   renderr   r   )r   r%   r$   only_initialr)   s   &&&& r   	as_widgetBoundField.as_widgetU   s    ,,4::,,::"&F''6<<<D4ld** D22diinnDII00

((*&&E
 JJLE}}+7''T^^YY''	  
 	
r!   c                :    V P                   ! \        4       V3/ VB # )zJ
Return a string of HTML for representing this as an
<input type="text">.
)rZ   r   r   r$   kwargss   &&,r   as_textBoundField.as_texts   s    
 ~~ik5;F;;r!   c                :    V P                   ! \        4       V3/ VB # )z>Return a string of HTML for representing this as a <textarea>.)rZ   r   r]   s   &&,r   as_textareaBoundField.as_textareaz   s    ~~hj%:6::r!   c                Z    V P                   ! V P                  P                  4       V3/ VB # )zL
Return a string of HTML for representing this as an
<input type="hidden">.
)rZ   r   rW   r]   s   &&,r   	as_hiddenBoundField.as_hidden~   s'    
 ~~djj668%J6JJr!   c                v    V P                   P                  V P                  P                  V P                  4      # )zB
Return the data for this BoundField, or None if it wasn't given.
)r   rV   r   r%   r   r0   s   &r   rU   BoundField.data   s)    
 yy++DJJ,=,=t~~NNr!   c                    V P                   pV P                  P                  '       d'   V P                  P	                  V P
                  V4      pV P                  P                  V4      # )zo
Return the value for this BoundField, using the initial value if
the form is not bound or the data otherwise.
)initialr   is_boundr   
bound_datarU   prepare_value)r   rU   s   & r   r)   BoundField.value   sL    
 ||99::((D9Dzz''--r!   c                B   V P                   pVP                  '       dJ   VP                  4       pV P                  P	                  VV P
                  4      p VP                  V4      pMV P                  pVP                  W0P                  4      #   \         d     R # i ; ir.   )r   show_hidden_initialrW   r   rV   r   	to_pythonr   rj   has_changedrU   )r   r   rW   initial_values   &   r   _has_changedBoundField._has_changed   s    

$$$!//1M II88&&M % >
 !LLM  		:: # s   B BBc                   T;'       g    V P                   pVfE   V P                  P                  e   V P                  P                  MV P                  P                  pV'       d,   V'       d$   VR,          \	        R4      9  d   \        RW4      pV P                  P                  pVP                  P                  R4      ;'       g    V P                  pV'       d   VP                  V4      pV'       d   / T;'       g    / CRV/CpV P                  P                  '       dz   \        V P                  R4      '       d^   T;'       g    / pRV9   d2   VR;;,          RV P                  P                  ,           ,          uu&   MV P                  P                  VR&   RT R	TR
TR\        V4      RT;'       g    R	/pV P                  P                  V P                  P                   V4      # )a4  
Wrap the given contents in a <label>, if the field has an ID attribute.
contents should be mark_safe'd to avoid HTML escaping. If contents
aren't given, use the field's HTML-escaped label.

If attrs are given, use them as HTML attributes on the <label> tag.

label_suffix overrides the form's label_suffix.
z:?.!z{}{}r#   forrequired_css_classclass r   r   r$   use_tagtag)r   r   label_suffixr   _r
   r%   r$   r&   r   id_for_labelrequiredhasattrrx   boolrX   template_name_label)	r   contentsr$   r~   r|   r%   r+   r   contexts	   &&&&&    r   	label_tagBoundField.label_tag   s}    ))tzz ::**6 

''YY++  H"QvY)F"68BH""llt$44!..s3L>EKKR>%>zz"""wtyy:N'O'Oe#'NcDII,H,H&HHN%)YY%A%AE'NTXUtCy3>>'
 yy		 = =wGGr!   c                *    V P                  WVRR7      # )a6  
Wrap the given contents in a <legend>, if the field has an ID
attribute. Contents should be mark_safe'd to avoid HTML escaping. If
contents aren't given, use the field's HTML-escaped label.

If attrs are given, use them as HTML attributes on the <legend> tag.

label_suffix overrides the form's label_suffix.
legendr|   )r   )r   r   r$   r~   s   &&&&r   
legend_tagBoundField.legend_tag   s     ~~h|~JJr!   c                   \        VR4      '       d   VP                  4       p\        T;'       g    . 4      pV P                  '       dB   \        V P                  R4      '       d&   VP                  V P                  P                  4       V P                  P                  '       dB   \        V P                  R4      '       d&   VP                  V P                  P                  4       RP                  V4      # )z@
Return a string of space-separated CSS classes for this field.
spliterror_css_classrx   rz   )r   r   setrG   r   addr   r   r   rx   join)r   extra_classess   &&r   css_classesBoundField.css_classes   s     ='**)//1MM//R0;;;7499.?@@dii778::74996J#K#Kdii::;xx&&r!   c                B    V P                   P                  P                  # )z2Return True if this BoundField's widget is hidden.)r   r%   	is_hiddenr0   s   &r   r   BoundField.is_hidden   s     zz  ***r!   c                    V P                   P                  pV'       d#   R\        V4      9   d   WP                  ,          # V'       d   V P                  # R# )z
Calculate and return the ID attribute for this BoundField, if the
associated Form has specified auto_id. Return an empty string
otherwise.
z%sr   )r   r   strr   )r   r   s   & r   r   BoundField.auto_id   s>     ))##ts7|+^^++>>!r!   c                    V P                   P                  pVP                  P                  R4      ;'       g    V P                  pVP                  V4      # )z
Wrapper around the field widget's `id_for_label` method.
Useful, for example, for focusing on this field regardless of whether
it has a single widget or a MultiWidget.
r#   )r   r%   r$   r&   r   r   )r   r%   r+   s   &  r   r   BoundField.id_for_label   sD     ""llt$44""3''r!   c                b    V P                   P                  V P                  V P                  4      # r4   )r   get_initial_for_fieldr   r   r0   s   &r   rj   BoundField.initial
  s!    yy..tzz499EEr!   c                   T;'       g    V P                   P                  p\        V4      pVP                  V P                  4      '       Ed   V P                   P
                  '       d   V P                  P                  '       d   \        V P                   R 4      '       d   V P                   P                  '       g   \        V P                   P                  \        4      '       dq   \        V P                   P                  VP                  4       FA  w  r4VP                  V P                  4      ;'       d    VP
                  VP                  R&   KC  	  MRVR&   V P                   P                  '       d   RVR&   VP                   '       g   V P"                  '       d   RVR&   VP%                  R4      '       g+   V P&                  '       g   V P(                  ;p'       d   WQR&   V# )require_all_fieldsr   Tdisabledtruezaria-invalidaria-describedby)r   r%   dictuse_required_attributerj   r   r   r   r   r=   r   zipfieldswidgetsr$   r   r   rG   r&   use_fieldsetaria_describedby)r   r$   r%   subfield	subwidgetr   s   &&&   r   r'   BoundField.build_widget_attrs  si   ,,4::,,U))$,,77

###		000
 

$899

555tzz00+>>+.tzz/@/@&..+Q'H!88F . .$-- OOJ/ ,R %)j!:: $E*DKKK$*E.! yy+,,T5F5F5F#'#8#888,<()r!   c                   V P                   P                  P                  P                  R 4      '       d   R# . pV P                  '       ds   V P
                  '       ga   V P                  '       d   VP                  V P                   R24       V P                  '       d   VP                  V P                   R24       RP                  V4      # )r   N	_helptext_errorrz   )
r   r%   r$   r&   r   r   r   appendrG   r   )r   r   s   & r   r   BoundField.aria_describedby/  s     ::""&&'9::<<<~~~ ''4<<.	(BC{{{ ''4<<.(?@xx())r!   c                    \         P                  ! R RV P                  P                  P                  P
                  P                  4       4      # )zwidget$|input$r   )resubr   r%   	__class__rB   lowerr0   s   &r   widget_typeBoundField.widget_type<  s9    vvr4::#4#4#>#>#G#G#M#M#O
 	
r!   c                B    V P                   P                  P                  # )zF
Return the value of this BoundField widget's use_fieldset attribute.
)r   r%   r   r0   s   &r   r   BoundField.use_fieldsetB  s    
 zz  ---r!   )	r   r   r   r   r   r   r   r   r   )NNFr4   )NNNN)NNN)$rB   
__module____qualname____firstlineno____doc__r   r	   r(   r1   r6   r:   rD   propertyrG   rK   rO   rZ   r_   rb   re   rU   r)   rt   r   r   r   r   r   r   rj   r'   r   r   r   __static_attributes____classdictcell____classdict__s   @r   r   r      s?    & 
 
$%$$ 
 
 R R
<<;K O O.;"*HX
K' + +   ( ( F FB 
* 
* 
 

 . .r!   c                   j   a  ] tR tRt o RtR tR tRR lt]R 4       t	]R 4       t
]R 4       tR	tV tR
# )r*   iJ  aH  
A container class used for iterating over widgets. This is useful for
widgets that have choices. For example, the following can be used in a
template:

{% for radio in myform.beatles %}
  <label for="{{ radio.id_for_label }}">
    {{ radio.choice_label }}
    <span class="radio">{{ radio.tag }}</span>
  </label>
{% endfor %}
c                *    Wn         W n        W0n        R # r4   )parent_widgetrU   r   )r   r   rU   r   s   &&&&r   r   BoundWidget.__init__Y  s    *	 r!   c                &    V P                  R R7      # )T)
wrap_labelr   r0   s   &r   __str__BoundWidget.__str__^  s    xx4x((r!   c                    R / V P                   CRV/C/pV P                  P                  V P                  W P                  4      # )r%   r   )rU   r   _renderrK   r   )r   r   r   s   && r   r|   BoundWidget.taga  s@    D		D<DE!!))$*<*<g}}UUr!   c                v    R V P                   9   d   V P                   R ,          # V P                  P                  # )rK   )rU   r   rK   r0   s   &r   rK   BoundWidget.template_namee  s/    dii'99_--!!///r!   c                F    V P                   R ,          P                  R4      # )r$   r#   )rU   r&   r0   s   &r   r   BoundWidget.id_for_labelk  s    yy!%%d++r!   c                (    V P                   R ,          # )r   )rU   r0   s   &r   choice_labelBoundWidget.choice_labelo  s    yy!!r!   )rU   r   r   N)F)rB   r   r   r   r   r   r   r|   r   rK   r   r   r   r   r   s   @r   r*   r*   J  sV     !
)V 0 0
 , , " "r!   r*   )r   )r   django.core.exceptionsr   django.forms.utilsr   r   django.forms.widgetsr   r   r   django.utils.functionalr	   django.utils.htmlr
   r   django.utils.translationr   r   __all__r   r*   r/   r!   r   <module>r      sK    	 2 @ A A 3 4 6
z.% z.z	 &" &" &"r!   