collab: Use StripeClient in sync_subscription (#31761)

This PR updates the `sync_subscription` function to use the
`StripeClient` trait instead of using `stripe::Client` directly.

Release Notes:

- N/A

---------

Co-authored-by: Ben Brandt <benjamin.j.brandt@gmail.com>
This commit is contained in:
Marshall Bowers 2025-05-30 12:08:58 -04:00 committed by GitHub
parent 07436b4284
commit f725b5e248
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
10 changed files with 177 additions and 75 deletions

View file

@ -111,14 +111,12 @@ impl StripeBilling {
pub async fn determine_subscription_kind(
&self,
subscription: &stripe::Subscription,
subscription: &StripeSubscription,
) -> Option<SubscriptionKind> {
let zed_pro_price_id: stripe::PriceId =
self.zed_pro_price_id().await.ok()?.try_into().ok()?;
let zed_free_price_id: stripe::PriceId =
self.zed_free_price_id().await.ok()?.try_into().ok()?;
let zed_pro_price_id = self.zed_pro_price_id().await.ok()?;
let zed_free_price_id = self.zed_free_price_id().await.ok()?;
subscription.items.data.iter().find_map(|item| {
subscription.items.iter().find_map(|item| {
let price = item.price.as_ref()?;
if price.id == zed_pro_price_id {