Package-level declarations

Types

Link copied to clipboard
data class KmpDatePickerStyles(val accentColor: Color, val fontColor: Color, val backgroundColor: Color, val fontColorOnAccent: Color, val buttonStyle: TextStyle)
Link copied to clipboard
data class KmpTimePickerStyles(val accentColor: Color, val fontColor: Color, val backgroundColor: Color, val fontColorOnAccent: Color, val buttonStyle: TextStyle)
Link copied to clipboard
Link copied to clipboard
typealias KmpWheelPickerScrollEffect = GraphicsLayerScope.(index: Int, multiplier: Float, state: KmpWheelPickerState) -> Unit
Link copied to clipboard
data class KmpWheelPickerState(val initiallySelectedItemIndex: Int = 0, val isInfinite: Boolean = false) : ScrollableState

KmpWheelPickerState The state for KmpWheelPicker

Link copied to clipboard

Functions

Link copied to clipboard
fun KmpDatePickerInline(modifier: Modifier = Modifier, date: LocalDate = Clock.System.now().toLocalDateTime(currentSystemDefault()).date, minDate: LocalDate = remember { LocalDate(0, Month.JANUARY, 1) }, maxDate: LocalDate = remember { LocalDate(3000, Month.DECEMBER, 31) }, styles: KmpDatePickerStyles = rememberKmpDatePickerStyles(), isEnabled: Boolean = true, onChange: (date: LocalDate) -> Unit)
Link copied to clipboard
fun KmpDatePickerModal(isVisible: Boolean, isEnabled: Boolean = true, modifier: Modifier = Modifier, onDismissRequest: () -> Unit? = null, isFullScreen: Boolean = true, modalStyles: ModalStyles = remember { ModalStyles() }, datePickerStyles: KmpDatePickerStyles = rememberKmpDatePickerStyles(), dismissOnBackPress: Boolean = true, dismissOnExternalClick: Boolean = true, onKeyEvent: (KeyEvent) -> Boolean = { false }, onPreviewKeyEvent: (KeyEvent) -> Boolean = { false }, date: LocalDate = Clock.System.now().toLocalDateTime(currentSystemDefault()).date, minDate: LocalDate = remember { LocalDate(0, Month.JANUARY, 1) }, maxDate: LocalDate = remember { LocalDate(3000, Month.DECEMBER, 31) }, onChange: (date: LocalDate) -> Unit)
Link copied to clipboard
fun KmpDatePickerPopover(isVisible: Boolean, isEnabled: Boolean = true, datePickerStyles: KmpDatePickerStyles = rememberKmpDatePickerStyles(), modifier: Modifier = Modifier .shadow(16.dp, RoundedCornerShape(8.dp)) .background(datePickerStyles.backgroundColor) .padding(16.dp) .defaultMaxSize(maxWidth = DATE_PICKER_MIN_WIDTH), onDismissRequest: () -> Unit? = null, anchors: PopoverAnchors = PopoverAnchors.ExternalBottomAlignCenter, popupPositionProvider: PopupPositionProvider? = null, dismissOnBackPress: Boolean = true, onKeyEvent: (KeyEvent) -> Boolean = { false }, onPreviewKeyEvent: (KeyEvent) -> Boolean = { false }, offset: DpOffset = DpOffset(0.dp, (-16f).dp), date: LocalDate = Clock.System.now().toLocalDateTime(currentSystemDefault()).date, minDate: LocalDate = remember { LocalDate(0, Month.JANUARY, 1) }, maxDate: LocalDate = remember { LocalDate(3000, Month.DECEMBER, 31) }, onChange: (date: LocalDate) -> Unit)
Link copied to clipboard
fun KmpTimePickerInline(modifier: Modifier = Modifier, time: LocalTime = Clock.System.now().toLocalDateTime(currentSystemDefault()).time, minuteStep: Int = 1, styles: KmpTimePickerStyles = rememberKmpTimePickerStyles(), isEnabled: Boolean = true, onChange: (time: LocalTime) -> Unit)
Link copied to clipboard
fun KmpTimePickerModal(isVisible: Boolean, isEnabled: Boolean = true, modifier: Modifier = Modifier, onDismissRequest: () -> Unit? = null, isFullScreen: Boolean = true, modalStyles: ModalStyles = remember { ModalStyles() }, timePickerStyles: KmpTimePickerStyles = rememberKmpTimePickerStyles(), dismissOnBackPress: Boolean = true, dismissOnExternalClick: Boolean = true, onKeyEvent: (KeyEvent) -> Boolean = { false }, onPreviewKeyEvent: (KeyEvent) -> Boolean = { false }, time: LocalTime = Clock.System.now().toLocalDateTime(currentSystemDefault()).time, minuteStep: Int = 1, onChange: (time: LocalTime) -> Unit)
Link copied to clipboard
fun KmpTimePickerPopover(isVisible: Boolean, isEnabled: Boolean = true, timePickerStyles: KmpTimePickerStyles = rememberKmpTimePickerStyles(), modifier: Modifier = Modifier .shadow(16.dp, RoundedCornerShape(8.dp)) .background(timePickerStyles.backgroundColor) .padding(16.dp) .defaultMaxSize(maxWidth = TIME_PICKER_MIN_WIDTH), onDismissRequest: () -> Unit? = null, anchors: PopoverAnchors = PopoverAnchors.ExternalBottomAlignCenter, popupPositionProvider: PopupPositionProvider? = null, dismissOnBackPress: Boolean = true, onKeyEvent: (KeyEvent) -> Boolean = { false }, onPreviewKeyEvent: (KeyEvent) -> Boolean = { false }, offset: DpOffset = DpOffset(0.dp, (-16f).dp), time: LocalTime = Clock.System.now().toLocalDateTime(currentSystemDefault()).time, minuteStep: Int = 1, onChange: (time: LocalTime) -> Unit)
Link copied to clipboard
fun <T : Any> KmpWheelPicker(selectedIndex: Int, items: List<T>, itemKey: (T, Int) -> Any = { _, index -> index }, state: KmpWheelPickerState = rememberKmpWheelPickerState(isInfinite = false, initiallySelectedItemIndex = selectedIndex), modifier: Modifier = Modifier, isEnabled: Boolean = true, onChange: (T) -> Unit, onImmediateChange: (T) -> Unit = {}, scrollEffect: KmpWheelPickerScrollEffect = remember { KmpWheelPickerScrollEffects.magnify() }, horizontalAlignment: Alignment.Horizontal = Alignment.Start, indicator: KmpWheelPickerIndicator = remember { KmpWheelPickerIndicators.window() }, content: @Composable LazyItemScope.(T) -> Unit)

KmpWheelPicker a cross-platform wheel picker.

Link copied to clipboard
fun rememberKmpWheelPickerState(isInfinite: Boolean = false, initiallySelectedItemIndex: Int = 0): KmpWheelPickerState