Enhance payment processing and rental features

- Updated the BTCPay service to support internal Lightning invoices with private route hints, improving payment routing for users with private channels.
- Added reconciliation methods for pending rents and subscriptions to ensure missed payments are processed on startup.
- Enhanced the rental and subscription services to handle payments in satoshis, aligning with Lightning Network standards.
- Improved the rental modal and content detail components to display rental status and pricing more clearly, including a countdown for rental expiration.
- Refactored various components to streamline user experience and ensure accurate rental access checks.
This commit is contained in:
Dorian
2026-02-12 23:24:25 +00:00
parent cdd24a5def
commit 0da83f461c
39 changed files with 1182 additions and 270 deletions

View File

@@ -52,7 +52,7 @@ class SubscriptionService {
*/
async createLightningSubscription(data: {
type: 'enthusiast' | 'film-buff' | 'cinephile'
period: 'monthly' | 'annual'
period: 'monthly' | 'yearly'
}): Promise<{
lnInvoice: string
expiration: string
@@ -72,7 +72,7 @@ class SubscriptionService {
}
/**
* Get subscription tiers with pricing
* Get subscription tiers with pricing (in sats)
*/
async getSubscriptionTiers(): Promise<Array<{
tier: string
@@ -81,26 +81,23 @@ class SubscriptionService {
annualPrice: number
features: string[]
}>> {
// This might be a static endpoint or hardcoded
// Adjust based on actual API
return [
{
tier: 'enthusiast',
name: 'Enthusiast',
monthlyPrice: 9.99,
annualPrice: 99.99,
monthlyPrice: 10000,
annualPrice: 100000,
features: [
'Access to all films and series',
'HD streaming',
'Watch on 2 devices',
'Cancel anytime',
],
},
{
tier: 'film-buff',
name: 'Film Buff',
monthlyPrice: 19.99,
annualPrice: 199.99,
monthlyPrice: 21000,
annualPrice: 210000,
features: [
'Everything in Enthusiast',
'4K streaming',
@@ -112,14 +109,13 @@ class SubscriptionService {
{
tier: 'cinephile',
name: 'Cinephile',
monthlyPrice: 29.99,
annualPrice: 299.99,
monthlyPrice: 42000,
annualPrice: 420000,
features: [
'Everything in Film Buff',
'Watch on unlimited devices',
'Offline downloads',
'Director commentary tracks',
'Virtual festival access',
'Support independent filmmakers',
],
},