Package dev.fritz2.headless.components

Types

Link copied to clipboard
abstract class AbstractSwitch<C : HTMLElement>(tag: Tag<C>, explicitId: String?) : Tag<C>

This base class provides the building blocks to implement a switch.

Link copied to clipboard
class CheckboxGroup<C : HTMLElement, T>(tag: Tag<C>, explicitId: String?) : Tag<C>

This class provides the building blocks to implement a checkbox-group.

Link copied to clipboard
data class CollectionData<T>(data: Flow<List<T>>, idProvider: IdProvider<T, *>?, id: String?)

This data class groups all basic elements of a data collection in one object.

Link copied to clipboard
class CollectionDataProperty<T> : Property<CollectionData<T>>
Link copied to clipboard
class DataCollection<T, C : HTMLElement>(tag: Tag<C>) : Tag<C>

This class provides the building blocks to implement a all kind of data presentation UIs like data-tables or grid-lists and so on.

Link copied to clipboard
class Disclosure<C : HTMLElement>(tag: Tag<C>, id: String?) : OpenClose, Tag<C>

This class provides the building blocks to implement a disclosure.

Link copied to clipboard
class InputField<C : HTMLElement>(tag: Tag<C>, id: String?) : Textfield<C, HtmlTag<HTMLInputElement>>

This class provides the building blocks to implement an input-field.

Link copied to clipboard
class Listbox<T, C : HTMLElement>(tag: Tag<C>, id: String?) : OpenClose, Tag<C>

This class provides the building blocks to implement a listbox.

Link copied to clipboard
class Menu<C : HTMLElement>(tag: Tag<C>, id: String?) : OpenClose, Tag<C>

This class provides the building blocks to implement a menu.

Link copied to clipboard
class Modal(renderContext: RenderContext) : OpenClose, RenderContext

This class provides the building blocks to implement a modal.

Link copied to clipboard
class PopOver<C : HTMLElement>(tag: Tag<C>, id: String?) : OpenClose, Tag<C>

This class provides the building blocks to implement a popover.

Link copied to clipboard
class RadioGroup<C : HTMLElement, T>(tag: Tag<C>, explicitId: String?) : Tag<C>

This class provides the building blocks to implement a radio-group.

Link copied to clipboard
class ScrollIntoViewProperty : Property<ScrollIntoViewOptions>

This Property offers a nice API for configuring the ScrollIntoViewOptions which in term configures all the scrolling behaviour if scrolling is enabled by the styling of a component.

Link copied to clipboard
class SelectionMode<T>

This Property alike class exposes the selection configuration of a data collection. There are two modes available:

Link copied to clipboard
class Switch<C : HTMLElement>(tag: Tag<C>, explicitId: String?) : AbstractSwitch<C>

This class provides the building blocks to implement a simple switch.

Link copied to clipboard
class SwitchWithLabel<C : HTMLElement>(tag: Tag<C>, id: String?) : AbstractSwitch<C>

This class provides the building blocks to implement a switch with label and description facilities.

Link copied to clipboard
class TabGroup<C : HTMLElement>(tag: Tag<C>, id: String?) : Tag<C>

This class provides the building blocks to implement a tab-group.

Link copied to clipboard
class TextArea<C : HTMLElement>(tag: Tag<C>, id: String?) : Textfield<C, HtmlTag<HTMLTextAreaElement>>

This class provides the building blocks to implement a textarea.

Link copied to clipboard
abstract class Textfield<C : HTMLElement, CT : Tag<HTMLElement>>(tag: Tag<C>, id: String?) : Tag<C>

This base class provides the building blocks to implement textfields.

Functions

Link copied to clipboard
fun <T> RenderContext.checkboxGroup(classes: String? = null, id: String? = null, scope: ScopeContext.() -> Unit = {}, initialize: CheckboxGroup<HTMLDivElement, T>.() -> Unit): Tag<HTMLDivElement>

Factory function to create a CheckboxGroup with a HTMLDivElement as default root Tag.

fun <C : HTMLElement, T> RenderContext.checkboxGroup(classes: String? = null, id: String? = null, scope: ScopeContext.() -> Unit = {}, tag: TagFactory<Tag<C>>, initialize: CheckboxGroup<C, T>.() -> Unit): Tag<C>

Factory function to create a CheckboxGroup.

Link copied to clipboard
fun <T> RenderContext.dataCollection(classes: String? = null, id: String? = null, scope: ScopeContext.() -> Unit = {}, initialize: DataCollection<T, HTMLDivElement>.() -> Unit): Tag<HTMLDivElement>

Factory function to create a DataCollection with a HTMLDivElement as default root Tag.

fun <T, C : HTMLElement> RenderContext.dataCollection(classes: String? = null, id: String? = null, scope: ScopeContext.() -> Unit = {}, tag: TagFactory<Tag<C>>, initialize: DataCollection<T, C>.() -> Unit): Tag<C>

Factory function to create a DataCollection.

Link copied to clipboard
fun RenderContext.disclosure(classes: String? = null, id: String? = null, scope: ScopeContext.() -> Unit = {}, initialize: Disclosure<HTMLDivElement>.() -> Unit): Tag<HTMLDivElement>

Factory function to create a Disclosure with a HTMLDivElement as default root Tag.

fun <C : HTMLElement> RenderContext.disclosure(classes: String? = null, id: String? = null, scope: ScopeContext.() -> Unit = {}, tag: TagFactory<Tag<C>>, initialize: Disclosure<C>.() -> Unit): Tag<C>

Factory function to create a Disclosure.

Link copied to clipboard
fun RenderContext.inputField(classes: String? = null, id: String? = null, scope: ScopeContext.() -> Unit = {}, initialize: InputField<HTMLDivElement>.() -> Unit): Tag<HTMLDivElement>

Factory function to create a InputField with a HTMLDivElement as default root Tag.

fun <C : HTMLElement> RenderContext.inputField(classes: String? = null, id: String? = null, scope: ScopeContext.() -> Unit = {}, tag: TagFactory<Tag<C>>, initialize: InputField<C>.() -> Unit): Tag<C>

Factory function to create a InputField.

Link copied to clipboard
fun <T> RenderContext.listbox(classes: String? = null, id: String? = null, scope: ScopeContext.() -> Unit = {}, initialize: Listbox<T, HTMLDivElement>.() -> Unit): Tag<HTMLDivElement>

Factory function to create a Listbox with a HTMLDivElement as default root Tag.

fun <T, C : HTMLElement> RenderContext.listbox(classes: String? = null, id: String? = null, scope: ScopeContext.() -> Unit = {}, tag: TagFactory<Tag<C>>, initialize: Listbox<T, C>.() -> Unit): Tag<C>

Factory function to create a Listbox.

Link copied to clipboard
fun RenderContext.menu(classes: String? = null, id: String? = null, scope: ScopeContext.() -> Unit = {}, initialize: Menu<HTMLDivElement>.() -> Unit): Tag<HTMLDivElement>

Factory function to create a Menu with a HTMLDivElement as default root Tag.

fun <C : HTMLElement> RenderContext.menu(classes: String? = null, id: String? = null, scope: ScopeContext.() -> Unit = {}, tag: TagFactory<Tag<C>>, initialize: Menu<C>.() -> Unit): Tag<C>

Factory function to create a Menu.

Link copied to clipboard
fun RenderContext.modal(initialize: Modal.() -> Unit)

Factory function to create a Modal.

Link copied to clipboard
fun RenderContext.popOver(classes: String? = null, id: String? = null, scope: ScopeContext.() -> Unit = {}, initialize: PopOver<HTMLDivElement>.() -> Unit): Tag<HTMLDivElement>

Factory function to create a PopOver with a HTMLDivElement as default root Tag.

fun <C : HTMLElement> RenderContext.popOver(classes: String? = null, id: String? = null, scope: ScopeContext.() -> Unit = {}, tag: TagFactory<Tag<C>>, initialize: PopOver<C>.() -> Unit): Tag<C>

Factory function to create a PopOver.

Link copied to clipboard
fun <T> RenderContext.radioGroup(classes: String? = null, id: String? = null, scope: ScopeContext.() -> Unit = {}, initialize: RadioGroup<HTMLDivElement, T>.() -> Unit): Tag<HTMLDivElement>

Factory function to create a RadioGroup with a HTMLDivElement as default root Tag.

fun <C : HTMLElement, T> RenderContext.radioGroup(classes: String? = null, id: String? = null, scope: ScopeContext.() -> Unit = {}, tag: TagFactory<Tag<C>>, initialize: RadioGroup<C, T>.() -> Unit): Tag<C>

Factory function to create a RadioGroup.

Link copied to clipboard
fun RenderContext.switch(classes: String? = null, id: String? = null, scope: ScopeContext.() -> Unit = {}, initialize: Switch<HTMLButtonElement>.() -> Unit): Tag<HTMLButtonElement>

Factory function to create a Switch with a HTMLButtonElement as default root Tag.

fun <C : HTMLElement> RenderContext.switch(classes: String? = null, id: String? = null, scope: ScopeContext.() -> Unit = {}, tag: TagFactory<Tag<C>>, initialize: Switch<C>.() -> Unit): Tag<C>

Factory function to create a Switch.

Link copied to clipboard
fun RenderContext.switchWithLabel(classes: String? = null, id: String? = null, scope: ScopeContext.() -> Unit = {}, initialize: SwitchWithLabel<HTMLDivElement>.() -> Unit): Tag<HTMLDivElement>

Factory function to create a SwitchWithLabel with a HTMLDivElement as default root Tag.

fun <C : HTMLElement> RenderContext.switchWithLabel(classes: String? = null, id: String? = null, scope: ScopeContext.() -> Unit = {}, tag: TagFactory<Tag<C>>, initialize: SwitchWithLabel<C>.() -> Unit): Tag<C>

Factory function to create a SwitchWithLabel.

Link copied to clipboard
fun RenderContext.tabGroup(classes: String? = null, id: String? = null, scope: ScopeContext.() -> Unit = {}, initialize: TabGroup<HTMLDivElement>.() -> Unit): Tag<HTMLDivElement>

Factory function to create a TabGroup with a HTMLDivElement as default root Tag.

fun <C : HTMLElement> RenderContext.tabGroup(classes: String? = null, id: String? = null, scope: ScopeContext.() -> Unit = {}, tag: TagFactory<Tag<C>>, initialize: TabGroup<C>.() -> Unit): Tag<C>

Factory function to create a TabGroup.

Link copied to clipboard
fun RenderContext.textArea(classes: String? = null, id: String? = null, scope: ScopeContext.() -> Unit = {}, initialize: TextArea<HTMLDivElement>.() -> Unit): Tag<HTMLDivElement>

Factory function to create a TextArea with a HTMLDivElement as default root Tag.

fun <C : HTMLElement> RenderContext.textArea(classes: String? = null, id: String? = null, scope: ScopeContext.() -> Unit = {}, tag: TagFactory<Tag<C>>, initialize: TextArea<C>.() -> Unit): Tag<C>

Factory function to create a TextArea.