Skip to content
This repository was archived by the owner on Oct 17, 2025. It is now read-only.

Commit 7ea1f0b

Browse files
committed
Handle removal of FetchProductsResultAll from Types.kt
- Update OpenIapModule to handle ProductQueryType.All by combining products - Remove FetchProductsResultAll import from OpenIapStore - When type=All, return combined products as FetchProductsResultProducts - Add toProduct import for subscription to product conversion
1 parent 822e5a0 commit 7ea1f0b

File tree

2 files changed

+6
-7
lines changed

2 files changed

+6
-7
lines changed

openiap/src/main/java/dev/hyo/openiap/OpenIapModule.kt

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -58,6 +58,7 @@ import dev.hyo.openiap.utils.BillingConverters.toPurchase
5858
import dev.hyo.openiap.utils.BillingConverters.toSubscriptionProduct
5959
import dev.hyo.openiap.utils.fromBillingState
6060
import dev.hyo.openiap.utils.toActiveSubscription
61+
import dev.hyo.openiap.utils.toProduct
6162
import kotlinx.coroutines.Dispatchers
6263
import kotlinx.coroutines.suspendCancellableCoroutine
6364
import kotlinx.coroutines.withContext
@@ -130,7 +131,11 @@ class OpenIapModule(private val context: Context) : PurchasesUpdatedListener {
130131
when (queryType) {
131132
ProductQueryType.InApp -> FetchProductsResultProducts(inAppProducts)
132133
ProductQueryType.Subs -> FetchProductsResultSubscriptions(subscriptionProducts)
133-
ProductQueryType.All -> FetchProductsResultAll(inAppProducts, subscriptionProducts)
134+
ProductQueryType.All -> {
135+
// For All type, combine products and return as Products result
136+
val allProducts = inAppProducts + subscriptionProducts.filterIsInstance<ProductSubscriptionAndroid>().map { it.toProduct() }
137+
FetchProductsResultProducts(allProducts)
138+
}
134139
}
135140
}
136141
}

openiap/src/main/java/dev/hyo/openiap/store/OpenIapStore.kt

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,6 @@ package dev.hyo.openiap.store
33
import dev.hyo.openiap.ActiveSubscription
44
import dev.hyo.openiap.DeepLinkOptions
55
import dev.hyo.openiap.FetchProductsResult
6-
import dev.hyo.openiap.FetchProductsResultAll
76
import dev.hyo.openiap.FetchProductsResultProducts
87
import dev.hyo.openiap.FetchProductsResultSubscriptions
98
import dev.hyo.openiap.Product
@@ -193,11 +192,6 @@ class OpenIapStore(private val module: OpenIapModule) {
193192
val productsToAdd = subProducts.filter { it.id !in existingProductIds }
194193
_products.value = _products.value + productsToAdd
195194
}
196-
is FetchProductsResultAll -> {
197-
// For All type, replace with combined results
198-
_products.value = result.products.orEmpty()
199-
_subscriptions.value = result.subscriptions.orEmpty()
200-
}
201195
}
202196
result
203197
} catch (e: Exception) {

0 commit comments

Comments
 (0)