| 
						
						
							
								
							
						
						
					 | 
					@ -41,7 +41,7 @@ export class SubscriptionService { | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					    } | 
					 | 
					 | 
					    } | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					  } | 
					 | 
					 | 
					  } | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					
 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					  public async createCheckoutSession({ | 
					 | 
					 | 
					  public async createStripeCheckoutSession({ | 
				
			
			
				
				
			
		
	
		
		
	
		
		
			
				
					 | 
					 | 
					    couponId, | 
					 | 
					 | 
					    couponId, | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					    priceId, | 
					 | 
					 | 
					    priceId, | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					    user | 
					 | 
					 | 
					    user | 
				
			
			
		
	
	
		
		
			
				
					| 
						
						
						
							
								
							
						
					 | 
					@ -61,33 +61,34 @@ export class SubscriptionService { | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					      } | 
					 | 
					 | 
					      } | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					    ); | 
					 | 
					 | 
					    ); | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					
 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					    const checkoutSessionCreateParams: Stripe.Checkout.SessionCreateParams = { | 
					 | 
					 | 
					    const stripeCheckoutSessionCreateParams: Stripe.Checkout.SessionCreateParams = | 
				
			
			
				
				
			
		
	
		
		
			
				
					
					 | 
					 | 
					      cancel_url: `${this.configurationService.get('ROOT_URL')}/${ | 
					 | 
					 | 
					      { | 
				
			
			
				
				
			
		
	
		
		
			
				
					
					 | 
					 | 
					        user.settings.settings.language | 
					 | 
					 | 
					        cancel_url: `${this.configurationService.get('ROOT_URL')}/${ | 
				
			
			
				
				
			
		
	
		
		
			
				
					
					 | 
					 | 
					      }/account`,
 | 
					 | 
					 | 
					          user.settings.settings.language | 
				
			
			
				
				
			
		
	
		
		
			
				
					
					 | 
					 | 
					      client_reference_id: user.id, | 
					 | 
					 | 
					        }/account`,
 | 
				
			
			
				
				
			
		
	
		
		
			
				
					
					 | 
					 | 
					      line_items: [ | 
					 | 
					 | 
					        client_reference_id: user.id, | 
				
			
			
				
				
			
		
	
		
		
			
				
					
					 | 
					 | 
					        { | 
					 | 
					 | 
					        line_items: [ | 
				
			
			
				
				
			
		
	
		
		
			
				
					
					 | 
					 | 
					          price: priceId, | 
					 | 
					 | 
					          { | 
				
			
			
				
				
			
		
	
		
		
			
				
					
					 | 
					 | 
					          quantity: 1 | 
					 | 
					 | 
					            price: priceId, | 
				
			
			
				
				
			
		
	
		
		
			
				
					
					 | 
					 | 
					        } | 
					 | 
					 | 
					            quantity: 1 | 
				
			
			
				
				
			
		
	
		
		
			
				
					
					 | 
					 | 
					      ], | 
					 | 
					 | 
					          } | 
				
			
			
				
				
			
		
	
		
		
			
				
					
					 | 
					 | 
					      locale: | 
					 | 
					 | 
					        ], | 
				
			
			
				
				
			
		
	
		
		
			
				
					
					 | 
					 | 
					        (user.settings?.settings | 
					 | 
					 | 
					        locale: | 
				
			
			
				
				
			
		
	
		
		
			
				
					
					 | 
					 | 
					          ?.language as Stripe.Checkout.SessionCreateParams.Locale) ?? | 
					 | 
					 | 
					          (user.settings?.settings | 
				
			
			
				
				
			
		
	
		
		
			
				
					
					 | 
					 | 
					        DEFAULT_LANGUAGE_CODE, | 
					 | 
					 | 
					            ?.language as Stripe.Checkout.SessionCreateParams.Locale) ?? | 
				
			
			
				
				
			
		
	
		
		
			
				
					
					 | 
					 | 
					      metadata: subscriptionOffer | 
					 | 
					 | 
					          DEFAULT_LANGUAGE_CODE, | 
				
			
			
				
				
			
		
	
		
		
			
				
					
					 | 
					 | 
					        ? { subscriptionOffer: JSON.stringify(subscriptionOffer) } | 
					 | 
					 | 
					        metadata: subscriptionOffer | 
				
			
			
				
				
			
		
	
		
		
			
				
					
					 | 
					 | 
					        : {}, | 
					 | 
					 | 
					          ? { subscriptionOffer: JSON.stringify(subscriptionOffer) } | 
				
			
			
				
				
			
		
	
		
		
			
				
					
					 | 
					 | 
					      mode: 'payment', | 
					 | 
					 | 
					          : {}, | 
				
			
			
				
				
			
		
	
		
		
			
				
					
					 | 
					 | 
					      payment_method_types: ['card'], | 
					 | 
					 | 
					        mode: 'payment', | 
				
			
			
				
				
			
		
	
		
		
			
				
					
					 | 
					 | 
					      success_url: `${this.configurationService.get( | 
					 | 
					 | 
					        payment_method_types: ['card'], | 
				
			
			
				
				
			
		
	
		
		
			
				
					
					 | 
					 | 
					        'ROOT_URL' | 
					 | 
					 | 
					        success_url: `${this.configurationService.get( | 
				
			
			
				
				
			
		
	
		
		
			
				
					
					 | 
					 | 
					      )}/api/v1/subscription/stripe/callback?checkoutSessionId={CHECKOUT_SESSION_ID}` | 
					 | 
					 | 
					          'ROOT_URL' | 
				
			
			
				
				
			
		
	
		
		
			
				
					
					 | 
					 | 
					    }; | 
					 | 
					 | 
					        )}/api/v1/subscription/stripe/callback?checkoutSessionId={CHECKOUT_SESSION_ID}` | 
				
			
			
				
				
			
		
	
		
		
	
		
		
	
		
		
	
		
		
	
		
		
	
		
		
	
		
		
	
		
		
	
		
		
	
		
		
	
		
		
	
		
		
	
		
		
	
		
		
	
		
		
	
		
		
	
		
		
	
		
		
	
		
		
	
		
		
	
		
		
	
		
		
	
		
		
	
		
		
	
		
		
			
				
					 | 
					 | 
					 | 
					 | 
					 | 
					      }; | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					
 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					    if (couponId) { | 
					 | 
					 | 
					    if (couponId) { | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					      checkoutSessionCreateParams.discounts = [ | 
					 | 
					 | 
					      stripeCheckoutSessionCreateParams.discounts = [ | 
				
			
			
				
				
			
		
	
		
		
	
		
		
			
				
					 | 
					 | 
					        { | 
					 | 
					 | 
					        { | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					          coupon: couponId | 
					 | 
					 | 
					          coupon: couponId | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					        } | 
					 | 
					 | 
					        } | 
				
			
			
		
	
	
		
		
			
				
					| 
						
						
						
							
								
							
						
					 | 
					@ -95,7 +96,7 @@ export class SubscriptionService { | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					    } | 
					 | 
					 | 
					    } | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					
 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					    const session = await this.stripe.checkout.sessions.create( | 
					 | 
					 | 
					    const session = await this.stripe.checkout.sessions.create( | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					      checkoutSessionCreateParams | 
					 | 
					 | 
					      stripeCheckoutSessionCreateParams | 
				
			
			
				
				
			
		
	
		
		
	
		
		
			
				
					 | 
					 | 
					    ); | 
					 | 
					 | 
					    ); | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					
 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					    return { | 
					 | 
					 | 
					    return { | 
				
			
			
		
	
	
		
		
			
				
					| 
						
							
								
							
						
						
						
					 | 
					
  |