From af5f0de0509368360d5b599fbd3a7452b8c356e2 Mon Sep 17 00:00:00 2001 From: Wojtek Mach Date: Tue, 11 Feb 2025 15:07:32 +0100 Subject: [PATCH] Update canceled status (#2929) --- lib/livebook/hubs/team_client.ex | 33 ++++++++++++++----- .../billing_status_canceled.pb.ex | 2 -- proto/messages.proto | 1 - 3 files changed, 24 insertions(+), 12 deletions(-) diff --git a/lib/livebook/hubs/team_client.ex b/lib/livebook/hubs/team_client.ex index 9415ffa4c..6c0e62a17 100644 --- a/lib/livebook/hubs/team_client.ex +++ b/lib/livebook/hubs/team_client.ex @@ -844,7 +844,7 @@ defmodule Livebook.Hubs.TeamClient do ) end - # TODO: Remove when Billign is public + # TODO: Remove when Billing is public defp put_billing_status(hub, nil) do put_in( hub.billing_status, @@ -852,20 +852,35 @@ defmodule Livebook.Hubs.TeamClient do ) end - defp put_billing_status({:trialing, %LivebookProto.BillingStatusTrialing{} = type}) do - %{type: :trialing, trial_ends_at: DateTime.from_unix!(type.trial_ends_at)} + defp put_billing_status( + {:trialing, + %LivebookProto.BillingStatusTrialing{ + trial_ends_at: %DateTime{} = trial_ends_at + }} + ) do + %{type: :trialing, trial_ends_at: DateTime.from_unix!(trial_ends_at)} end - defp put_billing_status({:trial_ended, %LivebookProto.BillingStatusTrialEnded{} = type}) do - %{type: :trial_ended, trial_ends_at: DateTime.from_unix!(type.trial_ends_at)} + defp put_billing_status( + {:trial_ended, + %LivebookProto.BillingStatusTrialEnded{ + trial_ends_at: %DateTime{} = trial_ends_at + }} + ) do + %{type: :trial_ended, trial_ends_at: DateTime.from_unix!(trial_ends_at)} end - defp put_billing_status({:canceling, %LivebookProto.BillingStatusCanceling{} = type}) do - %{type: :canceling, cancel_at: DateTime.from_unix!(type.cancel_at)} + defp put_billing_status( + {:canceling, + %LivebookProto.BillingStatusCanceling{ + cancel_at: %DateTime{} = cancel_at + }} + ) do + %{type: :canceling, cancel_at: DateTime.from_unix!(cancel_at)} end - defp put_billing_status({:canceled, %LivebookProto.BillingStatusCanceled{} = type}) do - %{type: :canceled, cancel_at: DateTime.from_unix!(type.cancel_at)} + defp put_billing_status({:canceled, %LivebookProto.BillingStatusCanceled{}}) do + %{type: :canceled} end defp put_billing_status(_other) do diff --git a/proto/lib/livebook_proto/billing_status_canceled.pb.ex b/proto/lib/livebook_proto/billing_status_canceled.pb.ex index 3ae75e74f..d101be913 100644 --- a/proto/lib/livebook_proto/billing_status_canceled.pb.ex +++ b/proto/lib/livebook_proto/billing_status_canceled.pb.ex @@ -1,5 +1,3 @@ defmodule LivebookProto.BillingStatusCanceled do use Protobuf, protoc_gen_elixir_version: "0.13.0", syntax: :proto3 - - field :cancel_at, 1, type: :int64, json_name: "cancelAt" end diff --git a/proto/messages.proto b/proto/messages.proto index ae3ebba25..60183c677 100644 --- a/proto/messages.proto +++ b/proto/messages.proto @@ -244,5 +244,4 @@ message BillingStatusCanceling { } message BillingStatusCanceled { - int64 cancel_at = 1; }