Merge pull request #4471 from mempool/nymkappa/fix-one-bug-add-two-more
Various fixes and improvements
This commit is contained in:
		
						commit
						025788e78c
					
				| @ -0,0 +1,16 @@ | |||||||
|  | <div id="become-sponsor-container"> | ||||||
|  |   <div class="become-sponsor community"> | ||||||
|  |     <p style="font-weight: 700; font-size: 18px;">If you're an individual...</p> | ||||||
|  |     <a href="https://mempool.space/sponsor" class="btn" style="background-color: rgba(152, 88, 255, 0.75); box-shadow: 0px 0px 50px 5px rgba(152, 88, 255, 0.75)" i18n="about.community-sponsor-button" (click)="onSponsorClick($event)">Become a Community Sponsor</a> | ||||||
|  |     <p class="sponsor-feature"><fa-icon [icon]="['fas', 'check']"></fa-icon> Exclusive swag</p> | ||||||
|  |     <p class="sponsor-feature"><fa-icon [icon]="['fas', 'check']"></fa-icon> Your avatar on the About page</p> | ||||||
|  |     <p class="sponsor-feature"><fa-icon [icon]="['fas', 'check']"></fa-icon> And more coming soon :)</p> | ||||||
|  |   </div> | ||||||
|  |   <div class="become-sponsor enterprise"> | ||||||
|  |     <p style="font-weight: 700; font-size: 18px;">If you're a business...</p> | ||||||
|  |     <a href="https://mempool.space/enterprise" class="btn" style="background-color: rgba(152, 88, 255, 0.75); box-shadow: 0px 0px 50px 5px rgba(152, 88, 255, 0.75)" i18n="about.enterprise-sponsor-button" (click)="onEnterpriseClick($event)">Become an Enterprise Sponsor</a> | ||||||
|  |     <p class="sponsor-feature"><fa-icon [icon]="['fas', 'check']"></fa-icon> Increased API limits</p> | ||||||
|  |     <p class="sponsor-feature"><fa-icon [icon]="['fas', 'check']"></fa-icon> Co-branded instance</p> | ||||||
|  |     <p class="sponsor-feature"><fa-icon [icon]="['fas', 'check']"></fa-icon> 99% service-level agreement</p> | ||||||
|  |   </div> | ||||||
|  | </div> | ||||||
| @ -0,0 +1,45 @@ | |||||||
|  | #become-sponsor-container { | ||||||
|  |   display: flex; | ||||||
|  |   flex-direction: row; | ||||||
|  |   flex-wrap: nowrap; | ||||||
|  |   justify-content: center; | ||||||
|  |   align-items: center; | ||||||
|  |   gap: 20px; | ||||||
|  |   margin: 68px auto; | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | .become-sponsor { | ||||||
|  |   background-color: #1d1f31; | ||||||
|  |   border-radius: 16px; | ||||||
|  |   padding: 12px 20px; | ||||||
|  |   width: 400px; | ||||||
|  |   padding: 40px 20px; | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | .become-sponsor a { | ||||||
|  |   margin-top: 10px; | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | #become-sponsor-container .btn { | ||||||
|  |   margin-bottom: 24px; | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | #become-sponsor-container .ng-fa-icon { | ||||||
|  |   color: #2ecc71; | ||||||
|  |   margin-right: 5px; | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | #become-sponsor-container .sponsor-feature { | ||||||
|  |   text-align: left; | ||||||
|  |   width: 250px; | ||||||
|  |   margin: 12px auto; | ||||||
|  |   white-space: nowrap; | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | @media (max-width: 992px) { | ||||||
|  | 
 | ||||||
|  |   #become-sponsor-container { | ||||||
|  |     flex-wrap: wrap; | ||||||
|  |   } | ||||||
|  | 
 | ||||||
|  | } | ||||||
| @ -0,0 +1,22 @@ | |||||||
|  | import { Component } from '@angular/core'; | ||||||
|  | import { EnterpriseService } from '../../services/enterprise.service'; | ||||||
|  | 
 | ||||||
|  | @Component({ | ||||||
|  |   selector: 'app-about-sponsors', | ||||||
|  |   templateUrl: './about-sponsors.component.html', | ||||||
|  |   styleUrls: ['./about-sponsors.component.scss'], | ||||||
|  | }) | ||||||
|  | export class AboutSponsorsComponent { | ||||||
|  |   constructor(private enterpriseService: EnterpriseService) { | ||||||
|  |   } | ||||||
|  | 
 | ||||||
|  |   onSponsorClick(e): boolean { | ||||||
|  |     this.enterpriseService.goal(5); | ||||||
|  |     return true; | ||||||
|  |   } | ||||||
|  | 
 | ||||||
|  |   onEnterpriseClick(e): boolean { | ||||||
|  |     this.enterpriseService.goal(6); | ||||||
|  |     return true; | ||||||
|  |   } | ||||||
|  | } | ||||||
| @ -33,22 +33,7 @@ | |||||||
|   </video> |   </video> | ||||||
| 
 | 
 | ||||||
|   <ng-container *ngIf="officialMempoolSpace"> |   <ng-container *ngIf="officialMempoolSpace"> | ||||||
|     <div id="become-sponsor-container"> |     <app-about-sponsors></app-about-sponsors> | ||||||
|       <div class="become-sponsor community"> |  | ||||||
|         <p style="font-weight: 700; font-size: 18px;">If you're an individual...</p> |  | ||||||
|         <a href="https://mempool.space/sponsor" class="btn" style="background-color: rgba(152, 88, 255, 0.75); box-shadow: 0px 0px 50px 5px rgba(152, 88, 255, 0.75)" i18n="about.community-sponsor-button" (click)="onSponsorClick($event)">Become a Community Sponsor</a> |  | ||||||
|         <p class="sponsor-feature"><fa-icon [icon]="['fas', 'check']"></fa-icon> Exclusive swag</p> |  | ||||||
|         <p class="sponsor-feature"><fa-icon [icon]="['fas', 'check']"></fa-icon> Your avatar on the About page</p> |  | ||||||
|         <p class="sponsor-feature"><fa-icon [icon]="['fas', 'check']"></fa-icon> And more coming soon :)</p> |  | ||||||
|       </div> |  | ||||||
|       <div class="become-sponsor enterprise"> |  | ||||||
|         <p style="font-weight: 700; font-size: 18px;">If you're a business...</p> |  | ||||||
|         <a href="https://mempool.space/enterprise" class="btn" style="background-color: rgba(152, 88, 255, 0.75); box-shadow: 0px 0px 50px 5px rgba(152, 88, 255, 0.75)" i18n="about.enterprise-sponsor-button" (click)="onEnterpriseClick($event)">Become an Enterprise Sponsor</a> |  | ||||||
|         <p class="sponsor-feature"><fa-icon [icon]="['fas', 'check']"></fa-icon> Increased API limits</p> |  | ||||||
|         <p class="sponsor-feature"><fa-icon [icon]="['fas', 'check']"></fa-icon> Co-branded instance</p> |  | ||||||
|         <p class="sponsor-feature"><fa-icon [icon]="['fas', 'check']"></fa-icon> 99% service-level agreement</p> |  | ||||||
|       </div> |  | ||||||
|     </div> |  | ||||||
|   </ng-container> |   </ng-container> | ||||||
| 
 | 
 | ||||||
|   <div class="enterprise-sponsor" id="enterprise-sponsors"> |   <div class="enterprise-sponsor" id="enterprise-sponsors"> | ||||||
| @ -197,7 +182,7 @@ | |||||||
|   </div> |   </div> | ||||||
| 
 | 
 | ||||||
|   <ng-container *ngIf="officialMempoolSpace"> |   <ng-container *ngIf="officialMempoolSpace"> | ||||||
|     <div *ngIf="profiles$ | async as profiles" id="community-sponsors"> |     <div *ngIf="profiles$ | async as profiles" id="community-sponsors-anchor"> | ||||||
|       <div class="community-sponsor" style="margin-bottom: 68px" *ngIf="profiles.whales.length > 0"> |       <div class="community-sponsor" style="margin-bottom: 68px" *ngIf="profiles.whales.length > 0"> | ||||||
|         <h3 i18n="about.sponsors.withHeart">Whale Sponsors</h3> |         <h3 i18n="about.sponsors.withHeart">Whale Sponsors</h3> | ||||||
|         <div class="wrapper"> |         <div class="wrapper"> | ||||||
|  | |||||||
| @ -246,49 +246,3 @@ | |||||||
|   width: 64px; |   width: 64px; | ||||||
|   height: 64px; |   height: 64px; | ||||||
| } | } | ||||||
| 
 |  | ||||||
| #become-sponsor-container { |  | ||||||
|   display: flex; |  | ||||||
|   flex-direction: row; |  | ||||||
|   flex-wrap: nowrap; |  | ||||||
|   justify-content: center; |  | ||||||
|   align-items: center; |  | ||||||
|   gap: 20px; |  | ||||||
|   margin: 68px auto; |  | ||||||
| } |  | ||||||
| 
 |  | ||||||
| .become-sponsor { |  | ||||||
|   background-color: #1d1f31; |  | ||||||
|   border-radius: 16px; |  | ||||||
|   padding: 12px 20px; |  | ||||||
|   width: 400px; |  | ||||||
|   padding: 40px 20px; |  | ||||||
| } |  | ||||||
| 
 |  | ||||||
| .become-sponsor a { |  | ||||||
|   margin-top: 10px; |  | ||||||
| } |  | ||||||
| 
 |  | ||||||
| #become-sponsor-container .btn { |  | ||||||
|   margin-bottom: 24px; |  | ||||||
| } |  | ||||||
| 
 |  | ||||||
| #become-sponsor-container .ng-fa-icon { |  | ||||||
|   color: #2ecc71; |  | ||||||
|   margin-right: 5px; |  | ||||||
| } |  | ||||||
| 
 |  | ||||||
| #become-sponsor-container .sponsor-feature { |  | ||||||
|   text-align: left; |  | ||||||
|   width: 250px; |  | ||||||
|   margin: 12px auto; |  | ||||||
|   white-space: nowrap; |  | ||||||
| } |  | ||||||
| 
 |  | ||||||
| @media (max-width: 992px) { |  | ||||||
| 
 |  | ||||||
|   #become-sponsor-container { |  | ||||||
|     flex-wrap: wrap; |  | ||||||
|   } |  | ||||||
| 
 |  | ||||||
| } |  | ||||||
|  | |||||||
| @ -49,8 +49,13 @@ export class AboutComponent implements OnInit { | |||||||
|     this.websocketService.want(['blocks']); |     this.websocketService.want(['blocks']); | ||||||
| 
 | 
 | ||||||
|     this.profiles$ = this.apiService.getAboutPageProfiles$().pipe( |     this.profiles$ = this.apiService.getAboutPageProfiles$().pipe( | ||||||
|       tap(() => { |       tap((profiles: any) => { | ||||||
|         this.goToAnchor() |         const scrollToSponsors = this.route.snapshot.fragment === 'community-sponsors'; | ||||||
|  |         if (scrollToSponsors && !profiles?.whales?.length && !profiles?.chads?.length) { | ||||||
|  |           return; | ||||||
|  |         } else { | ||||||
|  |           this.goToAnchor(scrollToSponsors) | ||||||
|  |         } | ||||||
|       }), |       }), | ||||||
|       share(), |       share(), | ||||||
|     ) |     ) | ||||||
| @ -85,11 +90,19 @@ export class AboutComponent implements OnInit { | |||||||
|     this.goToAnchor(); |     this.goToAnchor(); | ||||||
|   } |   } | ||||||
| 
 | 
 | ||||||
|   goToAnchor() { |   goToAnchor(scrollToSponsor = false) { | ||||||
|  |     if (!scrollToSponsor) { | ||||||
|  |       return; | ||||||
|  |     } | ||||||
|     setTimeout(() => { |     setTimeout(() => { | ||||||
|       if (this.route.snapshot.fragment) { |       if (this.route.snapshot.fragment) { | ||||||
|         if (this.document.getElementById(this.route.snapshot.fragment)) { |         const el = scrollToSponsor ? this.document.getElementById('community-sponsors-anchor') : this.document.getElementById(this.route.snapshot.fragment); | ||||||
|           this.document.getElementById(this.route.snapshot.fragment).scrollIntoView({behavior: 'smooth'}); |         if (el) { | ||||||
|  |           if (scrollToSponsor) { | ||||||
|  |             el.scrollIntoView({behavior: 'smooth', block: 'center', inline: 'center'}); | ||||||
|  |           } else { | ||||||
|  |             el.scrollIntoView({behavior: 'smooth'}); | ||||||
|  |           } | ||||||
|         } |         } | ||||||
|       } |       } | ||||||
|     }, 1); |     }, 1); | ||||||
|  | |||||||
| @ -2,6 +2,7 @@ import { NgModule } from '@angular/core'; | |||||||
| import { CommonModule } from '@angular/common'; | import { CommonModule } from '@angular/common'; | ||||||
| import { Routes, RouterModule } from '@angular/router'; | import { Routes, RouterModule } from '@angular/router'; | ||||||
| import { AboutComponent } from './about.component'; | import { AboutComponent } from './about.component'; | ||||||
|  | import { AboutSponsorsComponent } from './about-sponsors.component'; | ||||||
| import { SharedModule } from '../../shared/shared.module'; | import { SharedModule } from '../../shared/shared.module'; | ||||||
| 
 | 
 | ||||||
| const routes: Routes = [ | const routes: Routes = [ | ||||||
| @ -29,6 +30,10 @@ export class AboutRoutingModule { } | |||||||
|   ], |   ], | ||||||
|   declarations: [ |   declarations: [ | ||||||
|     AboutComponent, |     AboutComponent, | ||||||
|  |     AboutSponsorsComponent, | ||||||
|  |   ], | ||||||
|  |   exports: [ | ||||||
|  |     AboutSponsorsComponent, | ||||||
|   ] |   ] | ||||||
| }) | }) | ||||||
| export class AboutModule { } | export class AboutModule { } | ||||||
|  | |||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user