Package-level declarations

Types

Link copied to clipboard
abstract class AsyncPaginatedDropdownControl<T : Any>(label: String?, required: Boolean?, dependencies: Map<String, ControlDependency<*>>?, actions: List<ControlAction<T>>?) : DropdownControlBase<T>

Abstrakcyjna baza dla kontrolek dropdown, które ładują dane asynchronicznie, wspierają wyszukiwanie i doczytywanie kolejnych stron przy przewijaniu.

Link copied to clipboard
abstract class DropdownControlBase<T : Any>(label: String?, required: Boolean?, dependencies: Map<String, ControlDependency<*>>?, actions: List<ControlAction<T>>?) : Control<T>

Super-bazowa klasa dla kontrolek dropdown. Odpowiada wyłącznie za renderowanie ramki UI (ExposedDropdownMenuBox) i deleguje renderowanie zawartości menu do podklas.

Link copied to clipboard
data class DropdownOption<T>(val value: T, val displayText: String, val payload: Any? = null)

Reprezentuje pojedynczą opcję w liście rozwijanej (dropdown).

Link copied to clipboard
data class DropdownPage<T>(val options: List<DropdownOption<T>>, val hasMore: Boolean)

Jedna porcja opcji dla kontrolki dropdown ładującej dane stronami.

Link copied to clipboard
private data class Paging<T>(val query: String? = null, val options: List<DropdownOption<T>> = emptyList(), val nextPage: Long = 0, val hasMore: Boolean = false)

Pozycja w stronicowaniu dla jednego wyszukiwania, wymieniana w całości.

Properties

Link copied to clipboard
private const val LoadMoreThresholdPx: Int = 100

O ile pikseli przed końcem menu zaczynamy doczytywać następną stronę. Mniej więcej dwie pozycje, żeby lista dojechała zanim użytkownik zobaczy koniec.