This commit is contained in:
Iliyan Angelov
2025-09-14 23:24:25 +03:00
commit c67067a2a4
71311 changed files with 6800714 additions and 0 deletions

View File

@@ -0,0 +1,29 @@
from crispy_forms.bootstrap import Accordion
from crispy_forms.layout import Field
class FloatingField(Field):
template = "bootstrap5/layout/floating_field.html"
class BS5Accordion(Accordion):
"""
Bootstrap5 Accordion menu object. It wraps `AccordionGroup` objects in a
container. It also allows the usage of accordion-flush, introduced in bootstrap5::
BS5Accordion(
AccordionGroup("group name", "form_field_1", "form_field_2"),
AccordionGroup("another group name", "form_field"),
flush=True,
always_open=True
)
"""
def __init__(self, *args, **kwargs):
super().__init__(*args, **kwargs)
self.flush = kwargs.pop("flush", False)
self.always_open = kwargs.pop("always_open", False)
if self.always_open:
for accordion_group in self.fields:
accordion_group.always_open = True