Package dev.fritz2.components.foundations

Types

Link copied to clipboard
class CloseButtonMixin(val closeButtonPrefix: String = "close-button", defaultStyle: Style<BasicParams>) : CloseButtonProperty

Default implementation of the CloseButtonProperty interface in order to apply this as mixin for a component

Link copied to clipboard
interface CloseButtonProperty

This interface offers some convenience properties for adding a close button to a component.

Link copied to clipboard
interface Component<T>

Marker interface that every component should implement, so that the central render method appears in a unified way throughout this framework.

Link copied to clipboard
class ComponentProperty<T>(var value: T)

Generic container for modeling a property for a component class. Use it like this:

Link copied to clipboard
class DynamicComponentProperty<T>(var values: Flow<T> = emptyFlow())

Generic container for modeling a property for a component class that could be either consist on a value or on a Flow of a value.

Link copied to clipboard
class ElementMixin<T> : ElementProperties<T>

Default implementation of the ElementProperties interface in order to apply this as mixin for a component

Link copied to clipboard
interface ElementProperties<T>

An interface for exposing an HTML element. Use this vor components that more or less wrap a single basic HTML tag like `inputField` or `pushButton`.

Link copied to clipboard
class EventMixin<T : Element> : EventProperties<T>

Default implementation of the EventProperties interface in order to apply this as mixin for a component

Link copied to clipboard
interface EventProperties<T : Element>

An interface for exposing the events of a component. The type of the underlying HTML element must be specified. This way all events of the wrapped element get exposed to the client via the events property.

Link copied to clipboard
open class FormMixin : FormProperties

Default implementation of the FormProperties interface in order to apply this as mixin for a component

Link copied to clipboard
interface FormProperties

This interface add typical state properties for en- or disabling form components.

Link copied to clipboard
class InputFieldMixin : InputFieldProperties

Default implementation of the InputFieldProperties interface in order to apply this as mixin for a component

Link copied to clipboard
interface InputFieldProperties

This interface offers a convenience property for inputField based components.

Link copied to clipboard
class InputFormMixin : FormMixin, InputFormProperties

Default implementation of the InputFormProperties interface in order to apply this as mixin for a component

Link copied to clipboard
interface InputFormProperties : FormProperties

This interface offers a convenience property for input form based components.

Link copied to clipboard
interface ManagedComponent<T>

This interface should be implemented by all components, that should appear at a specific, centralized node within the DOM tree. Think of modals or toasts for example: They appear as overlays above all other screen elements, which is realized by a central parent node in the DOM.

Link copied to clipboard
open class MultiSelectionStore<T> : RootStore<List<T>>

This store can be used for components with an internal store that has to deal with a List of some type T.

Link copied to clipboard
class NullableDynamicComponentProperty<T>(var values: Flow<T?>)

Generic container for modeling a property for a component class that could be either consist on a nullable value or on a Flow of a nullable value. This specific implementation could be useful for properties where the distinction between some states and the "not yet set" state is important.

Link copied to clipboard
enum Orientation : Enum<Orientation>

Definition of the layout orientation of a form.

Link copied to clipboard
object OrientationContext

A context class for allowing an expressive DSL for component's configuration:

Link copied to clipboard
class OrientationMixin(default: Orientation) : OrientationProperty

Default implementation of the OrientationProperty interface in order to apply this as mixin for a component

Link copied to clipboard
interface OrientationProperty

This interface add an orientation property for position the component's element(s) into an horizontal or vertical orientation.

Link copied to clipboard
class SeverityMixin : SeverityProperties

Default implementation of the SeverityProperties interface in order to apply this as mixin for a component

Link copied to clipboard
interface SeverityProperties

This interface defines convenience properties and helper functions to easily apply Severity based behaviour to a component.

Link copied to clipboard
open class SingleSelectionStore : RootStore<Int?>

This store can be used for components with an internal store that has to deal with a single element selection from a collection of predefined values (like for a selectField or radioGroup component)

Link copied to clipboard
open class TooltipMixin : TooltipProperties

Default implementation of TooltipProperties interface in order to apply this as mixin for a component

Link copied to clipboard
interface TooltipProperties

This interface offers convenience functions to call a tooltip from withiin a component. It also provides a property to render the tooltip, that must be manually applied by an implementing component.

Functions

Link copied to clipboard
fun randomId(): String

Creates a random id based on random number and timestamp.