duck.html.components.modal¶
Modal components module.
Module Contents¶
Classes¶
Modal component with overlay and centered content. |
API¶
- class duck.html.components.modal.Modal(element: Optional[str] = None, properties: Optional[Dict[str, str]] = None, props: Optional[Dict[str, str]] = None, style: Optional[Dict[str, str]] = None, inner_html: Optional[Union[str, str, float]] = None, children: Optional[List[duck.html.components.HtmlComponent]] = None, **kwargs)[source]¶
Bases:
duck.html.components.container.FlexContainerModal component with overlay and centered content.
- Parameters:
title – Optional title for the modal dialog.
show_close – Whether to show a close (‘×’) button (default: True).
open_on_ready – Whether to open modal instantly after page load. Defaults to False.
modal_props – Props for the modal content container (optional).
modal_style – Style for the content container (optional).
children – List of child components (modal body).
**kwargs – Extra arguments passed to the overlay.
Example:
from duck.html.components.label import Label modal = Modal(title="Test modal", open_on_ready=True) # `open_on_ready` will open modal instantly on page load modal.set_content(Label(color="blue", text="Some Content"))Initialization
Initialize an HTML component.
- Parameters:
element – The HTML element tag name (e.g., textarea, input, button). Can be None, but make sure element is returned by get_element method.
accept_inner_html – Whether the HTML component accepts an inner body (e.g., inner-body-here).
inner_html – Inner html to add to the HTML component. Defaults to None.
properties – Dictionary for properties to initialize the component with.
props – Just same as properties argument (added for simplicity).
style – Dictionary for style to initialize the component with.
**kwargs – Extra keyword arguments
- Raises:
HtmlComponentError – If ‘element’ is not a string or ‘inner_html’ is set but ‘accept_inner_html’ is False.