[accelerator] fix redirect url, fix UX
This commit is contained in:
		
							parent
							
								
									73f241e9c3
								
							
						
					
					
						commit
						fb8808ea59
					
				| @ -14,6 +14,7 @@ | |||||||
|   </div> |   </div> | ||||||
| </div> | </div> | ||||||
| 
 | 
 | ||||||
|  | @if (!processingPayment) { | ||||||
| <div class="accelerate-cols"> | <div class="accelerate-cols"> | ||||||
|   <ng-container *ngIf="!isMobile"> |   <ng-container *ngIf="!isMobile"> | ||||||
|     <app-accelerate-fee-graph |     <app-accelerate-fee-graph | ||||||
| @ -306,5 +307,9 @@ | |||||||
|   <div class="skeleton-loader"></div> |   <div class="skeleton-loader"></div> | ||||||
|   <br> |   <br> | ||||||
| </ng-template> | </ng-template> | ||||||
|  | } | ||||||
|  | @else if (!showSuccess && !error) { | ||||||
|  | <div class="alert alert-info">Processing payment...</div> | ||||||
|  | } | ||||||
| 
 | 
 | ||||||
| <ng-template #acceleratedTo let-i i18n="accelerator.accelerated-to-description">If your tx is accelerated to ~{{ i | number : '1.0-0' }} sat/vB</ng-template> | <ng-template #acceleratedTo let-i i18n="accelerator.accelerated-to-description">If your tx is accelerated to ~{{ i | number : '1.0-0' }} sat/vB</ng-template> | ||||||
| @ -77,6 +77,7 @@ export class AcceleratePreviewComponent implements OnInit, OnDestroy, OnChanges | |||||||
|   square: any; |   square: any; | ||||||
|   cashAppPay: any; |   cashAppPay: any; | ||||||
|   hideCashApp = false; |   hideCashApp = false; | ||||||
|  |   processingPayment = false; | ||||||
| 
 | 
 | ||||||
|   constructor( |   constructor( | ||||||
|     public stateService: StateService, |     public stateService: StateService, | ||||||
| @ -85,6 +86,12 @@ export class AcceleratePreviewComponent implements OnInit, OnDestroy, OnChanges | |||||||
|     private audioService: AudioService, |     private audioService: AudioService, | ||||||
|     private cd: ChangeDetectorRef |     private cd: ChangeDetectorRef | ||||||
|   ) { |   ) { | ||||||
|  |     const urlParams = new URLSearchParams(window.location.search); | ||||||
|  |     if (urlParams.get('cash_request_id')) { | ||||||
|  |       this.processingPayment = true; | ||||||
|  |       this.scrollToPreviewWithTimeout('successAlert', 'center'); | ||||||
|  |     } | ||||||
|  |      | ||||||
|     if (this.stateService.ref === 'https://cash.app/') { |     if (this.stateService.ref === 'https://cash.app/') { | ||||||
|       this.paymentType = 'cashapp'; |       this.paymentType = 'cashapp'; | ||||||
|       this.insertSquare(); |       this.insertSquare(); | ||||||
| @ -322,6 +329,7 @@ export class AcceleratePreviewComponent implements OnInit, OnDestroy, OnChanges | |||||||
|           this.cashAppPay.destroy(); |           this.cashAppPay.destroy(); | ||||||
|         } |         } | ||||||
| 
 | 
 | ||||||
|  |         const redirectHostname = document.location.hostname === 'localhost' ? 'http://localhost:4200': 'https://mempool.space'; | ||||||
|         const maxCostUsd = this.maxCost / 100_000_000 * conversions.USD; |         const maxCostUsd = this.maxCost / 100_000_000 * conversions.USD; | ||||||
|         const paymentRequest = this.payments.paymentRequest({ |         const paymentRequest = this.payments.paymentRequest({ | ||||||
|           countryCode: 'US', |           countryCode: 'US', | ||||||
| @ -330,12 +338,12 @@ export class AcceleratePreviewComponent implements OnInit, OnDestroy, OnChanges | |||||||
|             amount: maxCostUsd.toString(), |             amount: maxCostUsd.toString(), | ||||||
|             label: 'Total', |             label: 'Total', | ||||||
|             pending: true, |             pending: true, | ||||||
|             productUrl: `https://mempool.space/tx/${this.tx.txid}`, |             productUrl: `${redirectHostname}/tx/${this.tx.txid}`, | ||||||
|           }, |           }, | ||||||
|           button: { shape: 'semiround', size: 'small', theme: 'light'} |           button: { shape: 'semiround', size: 'small', theme: 'light'} | ||||||
|         }); |         }); | ||||||
|         this.cashAppPay = await this.payments.cashAppPay(paymentRequest, { |         this.cashAppPay = await this.payments.cashAppPay(paymentRequest, { | ||||||
|           redirectURL: `https://mempool.space/tx/${this.tx.txid}`, |           redirectURL: `${redirectHostname}/tx/${this.tx.txid}?acceleration=false`, | ||||||
|           referenceId: `accelerator-${this.tx.txid.substring(0, 15)}-${Math.round(new Date().getTime() / 1000)}`, |           referenceId: `accelerator-${this.tx.txid.substring(0, 15)}-${Math.round(new Date().getTime() / 1000)}`, | ||||||
|           button: { shape: 'semiround', size: 'small', theme: 'light'} |           button: { shape: 'semiround', size: 'small', theme: 'light'} | ||||||
|         }); |         }); | ||||||
| @ -344,6 +352,8 @@ export class AcceleratePreviewComponent implements OnInit, OnDestroy, OnChanges | |||||||
|          |          | ||||||
|         const that = this; |         const that = this; | ||||||
|         this.cashAppPay.addEventListener('ontokenization', function (event) { |         this.cashAppPay.addEventListener('ontokenization', function (event) { | ||||||
|  |           that.processingPayment = true; | ||||||
|  |           that.scrollToPreviewWithTimeout('successAlert', 'center'); | ||||||
|           const { tokenResult, error } = event.detail; |           const { tokenResult, error } = event.detail; | ||||||
|           if (error) { |           if (error) { | ||||||
|             this.error = error; |             this.error = error; | ||||||
| @ -361,7 +371,6 @@ export class AcceleratePreviewComponent implements OnInit, OnDestroy, OnChanges | |||||||
|               next: () => { |               next: () => { | ||||||
|                 that.audioService.playSound('ascend-chime-cartoon'); |                 that.audioService.playSound('ascend-chime-cartoon'); | ||||||
|                 that.showSuccess = true; |                 that.showSuccess = true; | ||||||
|                 that.scrollToPreviewWithTimeout('successAlert', 'center'); |  | ||||||
|                 that.estimateSubscription.unsubscribe(); |                 that.estimateSubscription.unsubscribe(); | ||||||
|               }, |               }, | ||||||
|               error: (response) => { |               error: (response) => { | ||||||
|  | |||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user