Update authentication methods and UI components, remove redundant file

This commit accomplishes a few modifications including the elimination of `use-toast.tsx` due to redundancy. The authentication methods in `personal-accounts-server-actions.ts` were refactored to improve service integration and data handling. Additionally, UI components were updated for better readability and clarity. Cascading deletion was enabled in the `schema.sql` file for 'invited_by' reference.
This commit is contained in:
giancarlo
2024-03-27 13:52:46 +08:00
parent 6699399864
commit ff19e0c204
26 changed files with 589 additions and 674 deletions

View File

@@ -2,3 +2,4 @@ export * from './create-billing-checkout.schema';
export * from './create-biling-portal-session.schema';
export * from './retrieve-checkout-session.schema';
export * from './cancel-subscription-params.schema';
export * from './report-billing-usage.schema';

View File

@@ -0,0 +1,8 @@
import { z } from 'zod';
export const ReportBillingUsageSchema = z.object({
subscriptionId: z.string(),
usage: z.object({
quantity: z.number(),
}),
});

View File

@@ -6,6 +6,7 @@ import {
CreateBillingPortalSessionSchema,
RetrieveCheckoutSessionSchema,
} from '../schema';
import { ReportBillingUsageSchema } from '../schema/report-billing-usage.schema';
export abstract class BillingStrategyProviderService {
abstract createBillingPortalSession(
@@ -37,4 +38,10 @@ export abstract class BillingStrategyProviderService {
): Promise<{
success: boolean;
}>;
abstract reportUsage(
params: z.infer<typeof ReportBillingUsageSchema>,
): Promise<{
success: boolean;
}>;
}