my_gradio / gradio /layouts /accordion.py
xray918's picture
Upload folder using huggingface_hub
0ad74ed verified
from __future__ import annotations
from typing import TYPE_CHECKING
from gradio_client.documentation import document
from gradio.blocks import BlockContext
from gradio.component_meta import ComponentMeta
if TYPE_CHECKING:
pass
@document()
class Accordion(BlockContext, metaclass=ComponentMeta):
"""
Accordion is a layout element which can be toggled to show/hide the contained content.
Example:
with gr.Accordion("See Details"):
gr.Markdown("lorem ipsum")
"""
EVENTS = []
def __init__(
self,
label: str | None = None,
*,
open: bool = True,
visible: bool = True,
elem_id: str | None = None,
elem_classes: list[str] | str | None = None,
render: bool = True,
):
"""
Parameters:
label: name of accordion section.
open: if True, accordion is open by default.
elem_id: An optional string that is assigned as the id of this component in the HTML DOM. Can be used for targeting CSS styles.
elem_classes: An optional string or list of strings that are assigned as the class of this component in the HTML DOM. Can be used for targeting CSS styles.
render: If False, this layout will not be rendered in the Blocks context. Should be used if the intention is to assign event listeners now but render the component later.
"""
self.label = label
self.open = open
BlockContext.__init__(
self,
visible=visible,
elem_id=elem_id,
elem_classes=elem_classes,
render=render,
)