@@ -70,26 +70,54 @@ export const load: PageLoad = async ({ parent, depends, url, route }) => {
7070
7171 const areCreditsSupported = isCloud ? currentPlan ?. supportsCredits : false ;
7272
73- const [ paymentMethods , addressList , billingAddress , availableCredit , billingPlanDowngrade ] =
74- await Promise . all ( [
75- sdk . forConsole . account . listPaymentMethods ( ) ,
76- sdk . forConsole . account . listBillingAddresses ( ) ,
77- billingAddressPromise ,
78- areCreditsSupported
79- ? sdk . forConsole . organizations . getAvailableCredits ( {
80- organizationId : organization . $id
73+ const primaryPaymentMethodPromise : Promise < Models . PaymentMethod | null > | null =
74+ organization . paymentMethodId
75+ ? sdk . forConsole . organizations
76+ . getPaymentMethod ( {
77+ organizationId : organization . $id ,
78+ paymentMethodId : organization . paymentMethodId
8179 } )
82- : null ,
83- organization . billingPlanDowngrade
84- ? sdk . forConsole . console . getPlan ( {
85- planId : organization . billingPlanDowngrade
80+ . catch ( ( ) => null )
81+ : null ;
82+
83+ const backupPaymentMethodPromise : Promise < Models . PaymentMethod | null > | null =
84+ organization . backupPaymentMethodId
85+ ? sdk . forConsole . organizations
86+ . getPaymentMethod ( {
87+ organizationId : organization . $id ,
88+ paymentMethodId : organization . backupPaymentMethodId
8689 } )
87- : null
88- ] ) ;
90+ . catch ( ( ) => null )
91+ : null ;
92+
93+ const [
94+ paymentMethods ,
95+ addressList ,
96+ billingAddress ,
97+ availableCredit ,
98+ billingPlanDowngrade ,
99+ primary ,
100+ backup
101+ ] = await Promise . all ( [
102+ sdk . forConsole . account . listPaymentMethods ( ) ,
103+ sdk . forConsole . account . listBillingAddresses ( ) ,
104+ billingAddressPromise ,
105+ areCreditsSupported
106+ ? sdk . forConsole . organizations . getAvailableCredits ( {
107+ organizationId : organization . $id
108+ } )
109+ : null ,
110+ organization . billingPlanDowngrade
111+ ? sdk . forConsole . console . getPlan ( {
112+ planId : organization . billingPlanDowngrade
113+ } )
114+ : null ,
115+ primaryPaymentMethodPromise ,
116+ backupPaymentMethodPromise
117+ ] ) ;
89118
90119 // make number
91120 const credits = availableCredit ? availableCredit . available : null ;
92- const { backup, primary } = getOrganizationPaymentMethods ( organization , paymentMethods ) ;
93121
94122 return {
95123 paymentMethods,
@@ -112,26 +140,3 @@ export const load: PageLoad = async ({ parent, depends, url, route }) => {
112140 primaryPaymentMethod : primary
113141 } ;
114142} ;
115-
116- function getOrganizationPaymentMethods (
117- organization : Models . Organization ,
118- paymentMethods : Models . PaymentMethodList
119- ) : {
120- backup : Models . PaymentMethod | null ;
121- primary : Models . PaymentMethod | null ;
122- } {
123- let backup : Models . PaymentMethod | null = null ;
124- let primary : Models . PaymentMethod | null = null ;
125-
126- for ( const paymentMethod of paymentMethods . paymentMethods ) {
127- if ( paymentMethod . $id === organization . paymentMethodId ) {
128- primary = paymentMethod ;
129- } else if ( paymentMethod . $id === organization . backupPaymentMethodId ) {
130- backup = paymentMethod ;
131- }
132-
133- if ( primary && backup ) break ;
134- }
135-
136- return { primary, backup } ;
137- }
0 commit comments