Package-level declarations

Types

Link copied to clipboard

Implementation of Navigator. Takes a mapper function to map all NavigationAction to a NavigationSpec Whenever navigate is called, this class maps it to a NavigationSpec and performs navigation according to that Requires to be subscribed to an activity via subscribe to work

Link copied to clipboard

Error indicating a Bundle could not be converted to a NavigationBundle

Link copied to clipboard
class DefaultNavigator<Action>(val onAction: (Action) -> Unit) : Navigator<Action>
data class ImagePickerSourceNotAvailableNavigationException(val source: <Error class: unknown class>)
Link copied to clipboard
sealed class IntentFlag

Intent Flags supported for Navigation

Link copied to clipboard

Action that describes the intent to navigate.

Link copied to clipboard

A container class that bundles a set of data for sharing between classes. Only takes values in a NavigationBundleSpec

Link copied to clipboard

Exception to be thrown when NavigationBundle.get is called with a NavigationBundleSpecRow that does not match the NavigationBundleSpec of the bundle.

Link copied to clipboard
open class NavigationBundleSpec<R : NavigationBundleSpecRow<*>>(val rows: Set<R>)
Link copied to clipboard
open class NavigationBundleSpecRow<T>(val associatedType: NavigationBundleSpecType<T>)

A row within a NavigationBundleSpec that is associated with a given NavigationBundleSpecType

Link copied to clipboard

Types of data a NavigationBundleSpecRow can be associated with.

Link copied to clipboard
sealed class NavigationBundleValue<T>

Value of a NavigationBundleSpecRow where T describes the type of the value.

Link copied to clipboard

Exception thrown by a Navigator

Link copied to clipboard
sealed class NavigationSpec

Spec used by Navigator to determine how to perform Navigation

sealed class NavigationSpec

Spec used by Navigator to determine how to perform Navigation

Link copied to clipboard

Class that can trigger a given NavigationAction

Class that can trigger a given NavigationAction

actual interface Navigator<Action : NavigationAction<*>>

Class that can trigger a given NavigationAction

Class that can trigger a given NavigationAction

Class that can trigger a given NavigationAction

Link copied to clipboard
class ViewControllerNavigator<Action>(parentVC: <Error class: unknown class>, navigationMapper: (Action) -> NavigationSpec) : Navigator<Action>

Implementation of Navigator used for navigating to and from UIViewController. Takes a mapper function to map all NavigationAction to a NavigationSpec Whenever navigate is called, this class maps it to a NavigationSpec and performs navigation according to that

Functions

Link copied to clipboard

Converts a Bundle to a Boolean. Requires that the Bundle is described by a SingleValueNavigationSpec matching the NavigationBundleSpecType.BooleanType

Link copied to clipboard
Link copied to clipboard
Link copied to clipboard

Converts a Bundle to a Boolean if it is described by a SingleValueNavigationSpec matching the NavigationBundleSpecType.BooleanType either directly or wrapped by NavigationBundleSpecType.OptionalType.

Link copied to clipboard

Converts a Bundle to a Byte. Requires that the Bundle is described by a SingleValueNavigationSpec matching the NavigationBundleSpecType.ByteArrayType

Link copied to clipboard

Converts a Bundle to a ByteArray. Requires that the Bundle is described by a SingleValueNavigationSpec matching the NavigationBundleSpecType.ByteArrayType

Link copied to clipboard

Converts a Bundle to a ByteArray if it is described by a SingleValueNavigationSpec matching the NavigationBundleSpecType.ByteArrayType either directly or wrapped by NavigationBundleSpecType.OptionalType.

Link copied to clipboard

Converts a Bundle to a Byte if it is described by a SingleValueNavigationSpec matching the NavigationBundleSpecType.ByteType either directly or wrapped by NavigationBundleSpecType.OptionalType.

Link copied to clipboard

Converts a Bundle to a Char. Requires that the Bundle is described by a SingleValueNavigationSpec matching the NavigationBundleSpecType.CharType

Link copied to clipboard

Converts a Bundle to a CharArray. Requires that the Bundle is described by a SingleValueNavigationSpec matching the NavigationBundleSpecType.CharArrayType

Link copied to clipboard

Converts a Bundle to a CharArray if it is described by a SingleValueNavigationSpec matching the NavigationBundleSpecType.CharArrayType either directly or wrapped by NavigationBundleSpecType.OptionalType.

Link copied to clipboard

Converts a Bundle to a Char if it is described by a SingleValueNavigationSpec matching the NavigationBundleSpecType.CharType either directly or wrapped by NavigationBundleSpecType.OptionalType.

Link copied to clipboard
Link copied to clipboard
Link copied to clipboard

Converts a Bundle to a KalugaDate. Requires that the Bundle is described by a SingleValueNavigationSpec matching the NavigationBundleSpecType.DateType

Link copied to clipboard

Converts a Bundle to a List of KalugaDate. Requires that the Bundle is described by a SingleValueNavigationSpec matching the NavigationBundleSpecType.DateArrayType

Link copied to clipboard
Link copied to clipboard

Converts a Bundle to a KalugaDate if it is described by a SingleValueNavigationSpec matching the NavigationBundleSpecType.DateType either directly or wrapped by NavigationBundleSpecType.OptionalType.

Link copied to clipboard

Converts a Bundle to a Double. Requires that the Bundle is described by a SingleValueNavigationSpec matching the NavigationBundleSpecType.DoubleType

Link copied to clipboard

Converts a Bundle to a DoubleArray. Requires that the Bundle is described by a SingleValueNavigationSpec matching the NavigationBundleSpecType.DoubleArrayType

Link copied to clipboard
Link copied to clipboard

Converts a Bundle to a Double if it is described by a SingleValueNavigationSpec matching the NavigationBundleSpecType.DoubleType either directly or wrapped by NavigationBundleSpecType.OptionalType.

Link copied to clipboard

Converts a Bundle to a Float. Requires that the Bundle is described by a SingleValueNavigationSpec matching the NavigationBundleSpecType.FloatType

Link copied to clipboard

Converts a Bundle to a FloatArray. Requires that the Bundle is described by a SingleValueNavigationSpec matching the NavigationBundleSpecType.FloatArrayType

Link copied to clipboard
Link copied to clipboard

Converts a Bundle to a Float if it is described by a SingleValueNavigationSpec matching the NavigationBundleSpecType.FloatType either directly or wrapped by NavigationBundleSpecType.OptionalType.

Link copied to clipboard

Converts a Bundle to an Int. Requires that the Bundle is described by a SingleValueNavigationSpec matching the NavigationBundleSpecType.IntegerType

Link copied to clipboard

Converts a Bundle to an IntArray. Requires that the Bundle is described by a SingleValueNavigationSpec matching the NavigationBundleSpecType.IntegerArrayType

Link copied to clipboard

Converts a Bundle to an IntArray if it is described by a SingleValueNavigationSpec matching the NavigationBundleSpecType.IntegerArrayType either directly or wrapped by NavigationBundleSpecType.OptionalType.

Link copied to clipboard

Converts a Bundle to an Int if it is described by a SingleValueNavigationSpec matching the NavigationBundleSpecType.IntegerType either directly or wrapped by NavigationBundleSpecType.OptionalType.

Link copied to clipboard

Converts a Bundle to a Long. Requires that the Bundle is described by a SingleValueNavigationSpec matching the NavigationBundleSpecType.LongType

Link copied to clipboard

Converts a Bundle to a LongArray. Requires that the Bundle is described by a SingleValueNavigationSpec matching the NavigationBundleSpecType.LongArrayType

Link copied to clipboard

Converts a Bundle to a LongArray if it is described by a SingleValueNavigationSpec matching the NavigationBundleSpecType.LongArrayType either directly or wrapped by NavigationBundleSpecType.OptionalType.

Link copied to clipboard

Converts a Bundle to a Long if it is described by a SingleValueNavigationSpec matching the NavigationBundleSpecType.LongType either directly or wrapped by NavigationBundleSpecType.OptionalType.

Link copied to clipboard

Converts a Bundle to a Short. Requires that the Bundle is described by a SingleValueNavigationSpec matching the NavigationBundleSpecType.ShortType

Link copied to clipboard

Converts a Bundle to a ShortArray. Requires that the Bundle is described by a SingleValueNavigationSpec matching the NavigationBundleSpecType.ShortArrayType

Link copied to clipboard
Link copied to clipboard

Converts a Bundle to a Short if it is described by a SingleValueNavigationSpec matching the NavigationBundleSpecType.ShortType either directly or wrapped by NavigationBundleSpecType.OptionalType.

Link copied to clipboard

Converts a Bundle to a String. Requires that the Bundle is described by a SingleValueNavigationSpec matching the NavigationBundleSpecType.StringType

Link copied to clipboard

Converts a Bundle to a List of String. Requires that the Bundle is described by a SingleValueNavigationSpec matching the NavigationBundleSpecType.StringArrayType

Link copied to clipboard

Converts a Bundle to a List of String if it is described by a SingleValueNavigationSpec matching the NavigationBundleSpecType.StringArrayType either directly or wrapped by NavigationBundleSpecType.OptionalType.

Link copied to clipboard

Converts a Bundle to a String if it is described by a SingleValueNavigationSpec matching the NavigationBundleSpecType.StringType either directly or wrapped by NavigationBundleSpecType.OptionalType.

Link copied to clipboard
fun <T> Bundle.asTypeOf(serializer: KSerializer<T>): T

Converts a Bundle to T. Requires that the Bundle is described by a SingleValueNavigationSpec matching the NavigationBundleSpecType.SerializedType with serializer

Link copied to clipboard
@JvmName(name = "asNullableTypeOfOrNull")
fun <T> Bundle.asTypeOfOrNull(serializer: KSerializer<T>): T?

Converts a Bundle to T if is described by a SingleValueNavigationSpec matching the NavigationBundleSpecType.SerializedType with serializer.

fun <T : Any> Bundle.asTypeOfOrNull(serializer: KSerializer<T>): T?

Converts a Bundle to T if is described by a SingleValueNavigationSpec matching the NavigationBundleSpecType.SerializedType with serializer either directly or wrapped by NavigationBundleSpecType.OptionalType.

Link copied to clipboard

Converts a Bundle to a Unit. Requires that the Bundle is described by a SingleValueNavigationSpec matching the NavigationBundleSpecType.UnitType

Link copied to clipboard

Converts a Bundle to a Unit if it is described by a SingleValueNavigationSpec matching the NavigationBundleSpecType.UnitType either directly or wrapped by NavigationBundleSpecType.OptionalType.

Link copied to clipboard
fun <Action : NavigationAction<*>> Navigator<Action>.navigateOrElse(action: Action, onFailure: () -> Unit)

Triggers a given NavigationAction or executes a closure if the navigation failed to complete.

Link copied to clipboard

Triggers a given NavigationAction and returns true if it succeeded.

Link copied to clipboard
Link copied to clipboard

Parses the Bundle of android.app.Activity.getIntent into Byte. Requires that the Bundle is described by a SingleValueNavigationSpec matching the NavigationBundleSpecType.ByteType

Parses the Bundle of Intent into Byte. Requires that the Bundle is described by a SingleValueNavigationSpec matching the NavigationBundleSpecType.ByteType

Link copied to clipboard
Link copied to clipboard

Parses the Bundle of android.app.Activity.getIntent into Char. Requires that the Bundle is described by a SingleValueNavigationSpec matching the NavigationBundleSpecType.CharType

Parses the Bundle of Intent into Char. Requires that the Bundle is described by a SingleValueNavigationSpec matching the NavigationBundleSpecType.CharType

Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
fun <T> Intent?.parseExtra(convert: Bundle.() -> T): T

Parses the Bundle of Intent into T using a convert method.

fun <T> Fragment.parseExtra(convert: Bundle.() -> T): T

Parses the Bundle of androidx.fragment.app.Fragment.getArguments into T using a convert method.

Link copied to clipboard
fun <T> Intent?.parseExtraOrNull(convert: Bundle.() -> T?): T?

Parses the Bundle of Intent into T using a convert method.

fun <T> Fragment.parseExtraOrNull(convert: Bundle.() -> T?): T?

Parses the Bundle of androidx.fragment.app.Fragment.getArguments into T using a convert method.

Link copied to clipboard

Parses the Bundle of android.app.Activity.getIntent into Float. Requires that the Bundle is described by a SingleValueNavigationSpec matching the NavigationBundleSpecType.FloatType

Parses the Bundle of Intent into Float. Requires that the Bundle is described by a SingleValueNavigationSpec matching the NavigationBundleSpecType.FloatType

Link copied to clipboard
Link copied to clipboard

Parses the Bundle of android.app.Activity.getIntent into Int. Requires that the Bundle is described by a SingleValueNavigationSpec matching the NavigationBundleSpecType.IntegerType

Parses the Bundle of Intent into Int. Requires that the Bundle is described by a SingleValueNavigationSpec matching the NavigationBundleSpecType.IntegerType

Link copied to clipboard
Link copied to clipboard

Parses the Bundle of android.app.Activity.getIntent into Long. Requires that the Bundle is described by a SingleValueNavigationSpec matching the NavigationBundleSpecType.LongType

Parses the Bundle of Intent into Long. Requires that the Bundle is described by a SingleValueNavigationSpec matching the NavigationBundleSpecType.LongType

Link copied to clipboard
Link copied to clipboard

Parses the Bundle of android.app.Activity.getIntent into Short. Requires that the Bundle is described by a SingleValueNavigationSpec matching the NavigationBundleSpecType.ShortType

Parses the Bundle of Intent into Short. Requires that the Bundle is described by a SingleValueNavigationSpec matching the NavigationBundleSpecType.ShortType

Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
fun <T> Activity.parseTypeOf(serializer: KSerializer<T>): T

Parses the Bundle of android.app.Activity.getIntent into T. Requires that the Bundle is described by a SingleValueNavigationSpec matching the NavigationBundleSpecType.SerializedType with serializer

fun <T> Intent?.parseTypeOf(serializer: KSerializer<T>): T

Parses the Bundle of Intent into T. Requires that the Bundle is described by a SingleValueNavigationSpec matching the NavigationBundleSpecType.SerializedType with serializer

fun <T> Fragment.parseTypeOf(serializer: KSerializer<T>): T
Link copied to clipboard
@JvmName(name = "parseNullableTypeOfOrNull")
fun <T> Activity.parseTypeOfOrNull(serializer: KSerializer<T>): T?
fun <T : Any> Activity.parseTypeOfOrNull(serializer: KSerializer<T>): T?
@JvmName(name = "parseNullableTypeOfOrNull")
fun <T> Intent?.parseTypeOfOrNull(serializer: KSerializer<T>): T?
fun <T : Any> Intent?.parseTypeOfOrNull(serializer: KSerializer<T>): T?

Parses the Bundle of Intent into T if is described by a SingleValueNavigationSpec matching the NavigationBundleSpecType.SerializedType with serializer either directly or wrapped by NavigationBundleSpecType.OptionalType.

@JvmName(name = "parseNullableTypeOfOrNull")
fun <T> Fragment.parseTypeOfOrNull(serializer: KSerializer<T>): T?
fun <T : Any> Fragment.parseTypeOfOrNull(serializer: KSerializer<T>): T?
Link copied to clipboard

Transforms a set of IntentFlag to its corresponding Int

Link copied to clipboard
Link copied to clipboard

Converts a Bundle to a R property associated with a NavigationBundleSpecType Requires that the Bundle is described by a SingleValueNavigationSpec matching the NavigationBundleSpecType

Link copied to clipboard
@JvmName(name = "toNullableTypedPropertyOrNull")
fun <R> Bundle.toTypedPropertyOrNull(type: NavigationBundleSpecType<R>): R?

Converts a Bundle to a R property associated with a NavigationBundleSpecType Requires that the Bundle is described by a SingleValueNavigationSpec matching the NavigationBundleSpecType.

Converts a Bundle to a R property associated with a NavigationBundleSpecType Requires that the Bundle is described by a SingleValueNavigationSpec matching the NavigationBundleSpecType either directly or wrapped in NavigationBundleSpecType.OptionalType