diff --git a/build.gradle.kts b/build.gradle.kts index 39e87f8..c0ea666 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -1,5 +1,5 @@ plugins { - id("root.publication") +// id("root.publication") //trick: for the same plugin versions in all sub-modules alias(libs.plugins.androidLibrary) apply false alias(libs.plugins.kotlinMultiplatform) apply false diff --git a/samples/ride/src/commonMain/kotlin/dev.omkartenkale.nodal.sample.ride/nodes/root/loggedin/ride/RideNode.kt b/samples/ride/src/commonMain/kotlin/dev.omkartenkale.nodal.sample.ride/nodes/root/loggedin/ride/RideNode.kt index eff8e37..13953ff 100644 --- a/samples/ride/src/commonMain/kotlin/dev.omkartenkale.nodal.sample.ride/nodes/root/loggedin/ride/RideNode.kt +++ b/samples/ride/src/commonMain/kotlin/dev.omkartenkale.nodal.sample.ride/nodes/root/loggedin/ride/RideNode.kt @@ -17,11 +17,10 @@ import dev.omkartenkale.nodal.sample.ride.nodes.root.loggedin.ride.request.RideR import dev.omkartenkale.nodal.sample.ride.nodes.root.loggedin.ride.request.addRequestRideNode import kotlinx.coroutines.flow.launchIn import kotlinx.coroutines.flow.onEach +import nodal.ride.generated.resources.Res +import nodal.ride.generated.resources.google_map import org.jetbrains.compose.resources.ExperimentalResourceApi import org.jetbrains.compose.resources.painterResource -import org.jetbrains.kotlinx.multiplatform_library_template.ride.generated.resources.Res -import org.jetbrains.kotlinx.multiplatform_library_template.ride.generated.resources.google_map - class RideNode: Node() { private lateinit var layer: UI.Layer diff --git a/samples/ride/src/commonMain/kotlin/dev.omkartenkale.nodal.sample.ride/nodes/root/loggedin/ride/active/assigned/pickup/PrePickupNode.kt b/samples/ride/src/commonMain/kotlin/dev.omkartenkale.nodal.sample.ride/nodes/root/loggedin/ride/active/assigned/pickup/PrePickupNode.kt index 6c3955d..79b5432 100644 --- a/samples/ride/src/commonMain/kotlin/dev.omkartenkale.nodal.sample.ride/nodes/root/loggedin/ride/active/assigned/pickup/PrePickupNode.kt +++ b/samples/ride/src/commonMain/kotlin/dev.omkartenkale.nodal.sample.ride/nodes/root/loggedin/ride/active/assigned/pickup/PrePickupNode.kt @@ -12,12 +12,10 @@ import dev.omkartenkale.nodal.Node import dev.omkartenkale.nodal.compose.UI import dev.omkartenkale.nodal.compose.draw import dev.omkartenkale.nodal.sample.ride.util.ui.bottomsheet.nonExpandingSheetState +import nodal.ride.generated.resources.Res +import nodal.ride.generated.resources.driver_arriving import org.jetbrains.compose.resources.ExperimentalResourceApi import org.jetbrains.compose.resources.painterResource -import org.jetbrains.kotlinx.multiplatform_library_template.ride.generated.resources.Res -import org.jetbrains.kotlinx.multiplatform_library_template.ride.generated.resources.driver_arriving -import org.jetbrains.kotlinx.multiplatform_library_template.ride.generated.resources.finding_driver - class PrePickupNode() : Node(/*dismissible = false*/) { private lateinit var layer: UI.Layer diff --git a/samples/ride/src/commonMain/kotlin/dev.omkartenkale.nodal.sample.ride/nodes/root/loggedin/ride/active/driversearch/DriverSearchNode.kt b/samples/ride/src/commonMain/kotlin/dev.omkartenkale.nodal.sample.ride/nodes/root/loggedin/ride/active/driversearch/DriverSearchNode.kt index 4aa595a..3975055 100644 --- a/samples/ride/src/commonMain/kotlin/dev.omkartenkale.nodal.sample.ride/nodes/root/loggedin/ride/active/driversearch/DriverSearchNode.kt +++ b/samples/ride/src/commonMain/kotlin/dev.omkartenkale.nodal.sample.ride/nodes/root/loggedin/ride/active/driversearch/DriverSearchNode.kt @@ -14,12 +14,10 @@ import dev.omkartenkale.nodal.Node import dev.omkartenkale.nodal.compose.UI import dev.omkartenkale.nodal.compose.draw import dev.omkartenkale.nodal.sample.ride.util.ui.bottomsheet.alwaysIntermediatelyExpandedSheetState +import nodal.ride.generated.resources.Res +import nodal.ride.generated.resources.finding_driver import org.jetbrains.compose.resources.ExperimentalResourceApi import org.jetbrains.compose.resources.painterResource -import org.jetbrains.kotlinx.multiplatform_library_template.ride.generated.resources.Res -import org.jetbrains.kotlinx.multiplatform_library_template.ride.generated.resources.finding_driver -import org.jetbrains.kotlinx.multiplatform_library_template.ride.generated.resources.google_map - class DriverSearchNode() : Node() { private lateinit var layer: UI.Layer diff --git a/samples/ride/src/commonMain/kotlin/dev.omkartenkale.nodal.sample.ride/nodes/root/loggedin/ride/completed/DriverRatingNode.kt b/samples/ride/src/commonMain/kotlin/dev.omkartenkale.nodal.sample.ride/nodes/root/loggedin/ride/completed/DriverRatingNode.kt index 6af0ace..d09a192 100644 --- a/samples/ride/src/commonMain/kotlin/dev.omkartenkale.nodal.sample.ride/nodes/root/loggedin/ride/completed/DriverRatingNode.kt +++ b/samples/ride/src/commonMain/kotlin/dev.omkartenkale.nodal.sample.ride/nodes/root/loggedin/ride/completed/DriverRatingNode.kt @@ -22,11 +22,10 @@ import dev.omkartenkale.nodal.compose.UI import dev.omkartenkale.nodal.compose.draw import dev.omkartenkale.nodal.misc.VoidCallback import dev.omkartenkale.nodal.util.addChild +import nodal.ride.generated.resources.Res +import nodal.ride.generated.resources.rate_driver import org.jetbrains.compose.resources.ExperimentalResourceApi import org.jetbrains.compose.resources.painterResource -import org.jetbrains.kotlinx.multiplatform_library_template.ride.generated.resources.Res -import org.jetbrains.kotlinx.multiplatform_library_template.ride.generated.resources.finding_driver -import org.jetbrains.kotlinx.multiplatform_library_template.ride.generated.resources.rate_driver class DriverRatedCallback(block: () -> Unit) : VoidCallback by VoidCallback(block) diff --git a/samples/ride/src/commonMain/kotlin/dev.omkartenkale.nodal.sample.ride/nodes/root/loggedin/ride/request/RequestRideNode.kt b/samples/ride/src/commonMain/kotlin/dev.omkartenkale.nodal.sample.ride/nodes/root/loggedin/ride/request/RequestRideNode.kt index 9c81fba..8f9741c 100644 --- a/samples/ride/src/commonMain/kotlin/dev.omkartenkale.nodal.sample.ride/nodes/root/loggedin/ride/request/RequestRideNode.kt +++ b/samples/ride/src/commonMain/kotlin/dev.omkartenkale.nodal.sample.ride/nodes/root/loggedin/ride/request/RequestRideNode.kt @@ -40,10 +40,10 @@ import dev.omkartenkale.nodal.sample.ride.nodes.root.loggedin.ride.request.selec import dev.omkartenkale.nodal.sample.ride.util.ui.bottomsheet.alwaysIntermediatelyExpandedSheetState import dev.omkartenkale.nodal.sample.ride.util.ui.bottomsheet.nonExpandingSheetState import dev.omkartenkale.nodal.util.child +import nodal.ride.generated.resources.Res +import nodal.ride.generated.resources.submit_button import org.jetbrains.compose.resources.ExperimentalResourceApi import org.jetbrains.compose.resources.painterResource -import org.jetbrains.kotlinx.multiplatform_library_template.ride.generated.resources.Res -import org.jetbrains.kotlinx.multiplatform_library_template.ride.generated.resources.submit_button data class RideRequest( val rideType: String, diff --git a/samples/ride/src/commonMain/kotlin/dev.omkartenkale.nodal.sample.ride/nodes/root/loggedin/ride/request/select/paymentmode/PaymentModeSelectionNode.kt b/samples/ride/src/commonMain/kotlin/dev.omkartenkale.nodal.sample.ride/nodes/root/loggedin/ride/request/select/paymentmode/PaymentModeSelectionNode.kt index ed8e033..f342fc5 100644 --- a/samples/ride/src/commonMain/kotlin/dev.omkartenkale.nodal.sample.ride/nodes/root/loggedin/ride/request/select/paymentmode/PaymentModeSelectionNode.kt +++ b/samples/ride/src/commonMain/kotlin/dev.omkartenkale.nodal.sample.ride/nodes/root/loggedin/ride/request/select/paymentmode/PaymentModeSelectionNode.kt @@ -15,11 +15,10 @@ import dev.omkartenkale.nodal.compose.draw import dev.omkartenkale.nodal.misc.Callback import dev.omkartenkale.nodal.sample.ride.util.ui.bottomsheet.nonExpandingSheetState import dev.omkartenkale.nodal.util.addChild +import nodal.ride.generated.resources.Res +import nodal.ride.generated.resources.payment_methods import org.jetbrains.compose.resources.ExperimentalResourceApi import org.jetbrains.compose.resources.painterResource -import org.jetbrains.kotlinx.multiplatform_library_template.ride.generated.resources.Res -import org.jetbrains.kotlinx.multiplatform_library_template.ride.generated.resources.driver_arriving -import org.jetbrains.kotlinx.multiplatform_library_template.ride.generated.resources.payment_methods fun Node.addPaymentSelectionSelectionNode(onPaymentModeSelected: (String) -> Unit) = addChild(PaymentModeSelectionCallback { onPaymentModeSelected(it) }) diff --git a/samples/ride/src/commonMain/kotlin/dev.omkartenkale.nodal.sample.ride/nodes/root/loggedin/ride/request/select/paymentmode/SelectedPaymentModeNode.kt b/samples/ride/src/commonMain/kotlin/dev.omkartenkale.nodal.sample.ride/nodes/root/loggedin/ride/request/select/paymentmode/SelectedPaymentModeNode.kt index 1cbace3..bebaebb 100644 --- a/samples/ride/src/commonMain/kotlin/dev.omkartenkale.nodal.sample.ride/nodes/root/loggedin/ride/request/select/paymentmode/SelectedPaymentModeNode.kt +++ b/samples/ride/src/commonMain/kotlin/dev.omkartenkale.nodal.sample.ride/nodes/root/loggedin/ride/request/select/paymentmode/SelectedPaymentModeNode.kt @@ -21,11 +21,10 @@ import androidx.compose.ui.unit.dp import dev.omkartenkale.nodal.Node import dev.omkartenkale.nodal.misc.Callback import dev.omkartenkale.nodal.util.addChild +import nodal.ride.generated.resources.Res +import nodal.ride.generated.resources.add_payment import org.jetbrains.compose.resources.ExperimentalResourceApi import org.jetbrains.compose.resources.painterResource -import org.jetbrains.kotlinx.multiplatform_library_template.ride.generated.resources.Res -import org.jetbrains.kotlinx.multiplatform_library_template.ride.generated.resources.add_payment -import org.jetbrains.kotlinx.multiplatform_library_template.ride.generated.resources.confirm_otp fun Node.addSelectedPaymentModeNode(onPaymentModeChanged: (String) -> Unit) = addChild(PaymentModeChangedCallback { onPaymentModeChanged(it) }) diff --git a/samples/ride/src/commonMain/kotlin/dev.omkartenkale.nodal.sample.ride/nodes/root/loggedin/ride/request/select/ride/RideSelectionNode.kt b/samples/ride/src/commonMain/kotlin/dev.omkartenkale.nodal.sample.ride/nodes/root/loggedin/ride/request/select/ride/RideSelectionNode.kt index ef8a38e..e805a16 100644 --- a/samples/ride/src/commonMain/kotlin/dev.omkartenkale.nodal.sample.ride/nodes/root/loggedin/ride/request/select/ride/RideSelectionNode.kt +++ b/samples/ride/src/commonMain/kotlin/dev.omkartenkale.nodal.sample.ride/nodes/root/loggedin/ride/request/select/ride/RideSelectionNode.kt @@ -24,11 +24,10 @@ import dev.omkartenkale.nodal.misc.Callback import dev.omkartenkale.nodal.sample.ride.util.ui.bottomsheet.alwaysIntermediatelyExpandedSheetState import dev.omkartenkale.nodal.util.addChild import kotlinx.coroutines.launch +import nodal.ride.generated.resources.Res +import nodal.ride.generated.resources.ride_estimates import org.jetbrains.compose.resources.ExperimentalResourceApi import org.jetbrains.compose.resources.painterResource -import org.jetbrains.kotlinx.multiplatform_library_template.ride.generated.resources.Res -import org.jetbrains.kotlinx.multiplatform_library_template.ride.generated.resources.ride_estimates - fun Node.addRideSelectionNode(rideSelectedCallback: (String) -> Unit) = addChild(RideBookedCallback { rideSelectedCallback(it) }) diff --git a/samples/ride/src/commonMain/kotlin/dev.omkartenkale.nodal.sample.ride/nodes/root/loggedin/ride/request/select/route/AddressSelectionNode.kt b/samples/ride/src/commonMain/kotlin/dev.omkartenkale.nodal.sample.ride/nodes/root/loggedin/ride/request/select/route/AddressSelectionNode.kt index 6627e92..7388102 100644 --- a/samples/ride/src/commonMain/kotlin/dev.omkartenkale.nodal.sample.ride/nodes/root/loggedin/ride/request/select/route/AddressSelectionNode.kt +++ b/samples/ride/src/commonMain/kotlin/dev.omkartenkale.nodal.sample.ride/nodes/root/loggedin/ride/request/select/route/AddressSelectionNode.kt @@ -7,16 +7,15 @@ import androidx.compose.ui.layout.ContentScale import com.skydoves.flexible.bottomsheet.material.FlexibleBottomSheet import com.skydoves.flexible.core.rememberFlexibleBottomSheetState import dev.omkartenkale.nodal.Node +import dev.omkartenkale.nodal.compose.UI import dev.omkartenkale.nodal.compose.draw import dev.omkartenkale.nodal.misc.Callback import dev.omkartenkale.nodal.sample.ride.util.ui.bottomsheet.nonExpandingSheetState import dev.omkartenkale.nodal.util.addChild +import nodal.ride.generated.resources.Res +import nodal.ride.generated.resources.address_selection import org.jetbrains.compose.resources.ExperimentalResourceApi import org.jetbrains.compose.resources.painterResource -import org.jetbrains.kotlinx.multiplatform_library_template.ride.generated.resources.Res -import org.jetbrains.kotlinx.multiplatform_library_template.ride.generated.resources.address_selection -import org.jetbrains.kotlinx.multiplatform_library_template.ride.generated.resources.route_selection - fun Node.selectAddress(onAddressSelected: (String) -> Unit) = addChild(AddressSelectionCallback { onAddressSelected(it) }) @@ -27,9 +26,11 @@ class AddressSelectionNode : Node() { private val onAddressSelected by dependencies() + private lateinit var layer: UI.Layer + override fun onAdded() { - draw { + layer = ui.draw { FlexibleBottomSheet( onDismissRequest = { removeSelf() @@ -48,4 +49,9 @@ class AddressSelectionNode : Node() { } } } + + override fun onRemoved() { + super.onRemoved() + layer.destroy() + } } \ No newline at end of file diff --git a/samples/ride/src/commonMain/kotlin/dev.omkartenkale.nodal.sample.ride/nodes/root/loggedin/ride/request/select/route/RouteSelectionNode.kt b/samples/ride/src/commonMain/kotlin/dev.omkartenkale.nodal.sample.ride/nodes/root/loggedin/ride/request/select/route/RouteSelectionNode.kt index 4b386f0..7c48e21 100644 --- a/samples/ride/src/commonMain/kotlin/dev.omkartenkale.nodal.sample.ride/nodes/root/loggedin/ride/request/select/route/RouteSelectionNode.kt +++ b/samples/ride/src/commonMain/kotlin/dev.omkartenkale.nodal.sample.ride/nodes/root/loggedin/ride/request/select/route/RouteSelectionNode.kt @@ -14,11 +14,10 @@ import dev.omkartenkale.nodal.compose.draw import dev.omkartenkale.nodal.misc.Callback import dev.omkartenkale.nodal.sample.ride.util.ui.bottomsheet.nonExpandingSheetState import dev.omkartenkale.nodal.util.addChild +import nodal.ride.generated.resources.Res +import nodal.ride.generated.resources.route_selection import org.jetbrains.compose.resources.ExperimentalResourceApi import org.jetbrains.compose.resources.painterResource -import org.jetbrains.kotlinx.multiplatform_library_template.ride.generated.resources.Res -import org.jetbrains.kotlinx.multiplatform_library_template.ride.generated.resources.driver_arriving -import org.jetbrains.kotlinx.multiplatform_library_template.ride.generated.resources.route_selection data class SelectedRoute(val pickup: SelectedPickup, val destination: SelectedDestination) data class SelectedPickup(val address: String, val coordinates: Float) diff --git a/samples/ride/src/commonMain/kotlin/dev.omkartenkale.nodal.sample.ride/nodes/root/loggedout/ConfirmOtpNode.kt b/samples/ride/src/commonMain/kotlin/dev.omkartenkale.nodal.sample.ride/nodes/root/loggedout/ConfirmOtpNode.kt index 6d2f725..540a549 100644 --- a/samples/ride/src/commonMain/kotlin/dev.omkartenkale.nodal.sample.ride/nodes/root/loggedout/ConfirmOtpNode.kt +++ b/samples/ride/src/commonMain/kotlin/dev.omkartenkale.nodal.sample.ride/nodes/root/loggedout/ConfirmOtpNode.kt @@ -24,10 +24,10 @@ import dev.omkartenkale.nodal.compose.UI import dev.omkartenkale.nodal.compose.draw import dev.omkartenkale.nodal.sample.ride.util.ui.bottomsheet.nonExpandingSheetState import kotlinx.coroutines.launch +import nodal.ride.generated.resources.Res +import nodal.ride.generated.resources.confirm_otp import org.jetbrains.compose.resources.ExperimentalResourceApi import org.jetbrains.compose.resources.painterResource -import org.jetbrains.kotlinx.multiplatform_library_template.ride.generated.resources.Res -import org.jetbrains.kotlinx.multiplatform_library_template.ride.generated.resources.confirm_otp @ExperimentalResourceApi class ConfirmOtpNode : Node() { diff --git a/samples/ride/src/commonMain/kotlin/dev.omkartenkale.nodal.sample.ride/nodes/root/loggedout/LoggedOutNode.kt b/samples/ride/src/commonMain/kotlin/dev.omkartenkale.nodal.sample.ride/nodes/root/loggedout/LoggedOutNode.kt index 78d169a..4d6da6f 100644 --- a/samples/ride/src/commonMain/kotlin/dev.omkartenkale.nodal.sample.ride/nodes/root/loggedout/LoggedOutNode.kt +++ b/samples/ride/src/commonMain/kotlin/dev.omkartenkale.nodal.sample.ride/nodes/root/loggedout/LoggedOutNode.kt @@ -19,11 +19,10 @@ import dev.omkartenkale.nodal.compose.UI import dev.omkartenkale.nodal.compose.draw import dev.omkartenkale.nodal.misc.Callback import dev.omkartenkale.nodal.sample.ride.nodes.root.LoggedInCallback +import nodal.ride.generated.resources.Res +import nodal.ride.generated.resources.signup import org.jetbrains.compose.resources.ExperimentalResourceApi import org.jetbrains.compose.resources.painterResource -import org.jetbrains.kotlinx.multiplatform_library_template.ride.generated.resources.Res -import org.jetbrains.kotlinx.multiplatform_library_template.ride.generated.resources.signup - class OTPConfirmedCallback(block: (String) -> Unit) : Callback by Callback(block) fun Node.addLoggedOutNode(onLoggedIn: (String) -> Unit) =