|
1 |
| -<ion-refresher slot="fixed" (ionRefresh)="refreshCaptures($event)"> |
2 |
| - <ion-refresher-content></ion-refresher-content> |
3 |
| -</ion-refresher> |
4 |
| -<mat-card *transloco="let t" class="user-card" id="user-card"> |
5 |
| - <app-avatar mat-card-avatar></app-avatar> |
6 |
| - <mat-card-header> |
7 |
| - <mat-card-title>{{ username$ | ngrxPush }}</mat-card-title> |
8 |
| - <div class="vertical-space-8"></div> |
9 |
| - <mat-card-subtitle>{{ email$ | ngrxPush }} </mat-card-subtitle> |
10 |
| - </mat-card-header> |
11 |
| -</mat-card> |
12 |
| -<app-uploading-bar></app-uploading-bar> |
| 1 | +<ion-content> |
| 2 | + <ion-refresher slot="fixed" (ionRefresh)="refreshCaptures($event)"> |
| 3 | + <ion-refresher-content></ion-refresher-content> |
| 4 | + </ion-refresher> |
| 5 | + <mat-card *transloco="let t" class="user-card" id="user-card"> |
| 6 | + <app-avatar mat-card-avatar></app-avatar> |
| 7 | + <mat-card-header> |
| 8 | + <mat-card-title>{{ username$ | ngrxPush }}</mat-card-title> |
| 9 | + <div class="vertical-space-8"></div> |
| 10 | + <mat-card-subtitle>{{ email$ | ngrxPush }} </mat-card-subtitle> |
| 11 | + </mat-card-header> |
| 12 | + </mat-card> |
| 13 | + <app-uploading-bar></app-uploading-bar> |
13 | 14 |
|
14 |
| -<div [ngSwitch]="categories"> |
15 |
| - <ion-segment mode="md" [(ngModel)]="categories"> |
16 |
| - <ion-segment-button value="captured"> |
17 |
| - <ion-label>{{ 'home.profileTab.captured' | transloco }}</ion-label> |
18 |
| - </ion-segment-button> |
19 |
| - <ion-segment-button value="collected"> |
20 |
| - <ion-label>{{ 'home.profileTab.collected' | transloco }}</ion-label> |
21 |
| - </ion-segment-button> |
22 |
| - </ion-segment> |
| 15 | + <div [ngSwitch]="categories"> |
| 16 | + <ion-segment mode="md" [(ngModel)]="categories"> |
| 17 | + <ion-segment-button value="captured"> |
| 18 | + <ion-label>{{ 'home.profileTab.captured' | transloco }}</ion-label> |
| 19 | + </ion-segment-button> |
| 20 | + <ion-segment-button value="collected"> |
| 21 | + <ion-label>{{ 'home.profileTab.collected' | transloco }}</ion-label> |
| 22 | + </ion-segment-button> |
| 23 | + </ion-segment> |
23 | 24 |
|
24 |
| - <p *ngIf="(networkConnected$ | ngrxPush) === false" class="network-status"> |
25 |
| - {{ 'message.networkNotConnected' | transloco }} |
26 |
| - </p> |
| 25 | + <p *ngIf="(networkConnected$ | ngrxPush) === false" class="network-status"> |
| 26 | + {{ 'message.networkNotConnected' | transloco }} |
| 27 | + </p> |
27 | 28 |
|
28 |
| - <div *ngSwitchCase="'captured'"> |
29 |
| - <div class="capture-container" *transloco="let t"> |
| 29 | + <div *ngSwitchCase="'captured'"> |
| 30 | + <div class="capture-container" *transloco="let t"> |
| 31 | + <mat-grid-list cols="2" gutterSize="16px"> |
| 32 | + <mat-grid-tile |
| 33 | + *ngFor=" |
| 34 | + let proof of capturedTabItems$ | ngrxPush; |
| 35 | + first as isFirstProof; |
| 36 | + trackBy: trackCaptureItem |
| 37 | + " |
| 38 | + class="capture-item" |
| 39 | + [joyrideStep]="isFirstProof ? 'highlightFirstCapture' : 'notFirst'" |
| 40 | + [title]="t('userGuide.capturedItem')" |
| 41 | + [text]="t('userGuide.openToSeeDetailsAndMoreActionItems')" |
| 42 | + > |
| 43 | + <app-capture-item [proof]="proof"></app-capture-item> |
| 44 | + </mat-grid-tile> |
| 45 | + </mat-grid-list> |
| 46 | + </div> |
| 47 | + </div> |
| 48 | + |
| 49 | + <div class="post-captures" *ngSwitchCase="'collected'"> |
30 | 50 | <mat-grid-list cols="2" gutterSize="16px">
|
31 | 51 | <mat-grid-tile
|
| 52 | + class="capture-item" |
32 | 53 | *ngFor="
|
33 |
| - let proof of captures$ | ngrxPush; |
34 |
| - first as isFirstProof; |
35 |
| - trackBy: trackCaptureItem |
| 54 | + let postCapture of collectedTabItems$ | ngrxPush; |
| 55 | + trackBy: trackPostCapture |
36 | 56 | "
|
37 |
| - class="capture-item" |
38 |
| - [joyrideStep]="isFirstProof ? 'highlightFirstCapture' : 'notFirst'" |
39 |
| - [title]="t('userGuide.capturedItem')" |
40 |
| - [text]="t('userGuide.openToSeeDetailsAndMoreActionItems')" |
| 57 | + [routerLink]="[ |
| 58 | + 'details', |
| 59 | + { type: 'post-capture', id: postCapture.id } |
| 60 | + ]" |
41 | 61 | >
|
42 |
| - <app-capture-item [proof]="proof"></app-capture-item> |
| 62 | + <ng-container *ngIf="postCapture.asset_file_mime_type as mimeType"> |
| 63 | + <ion-icon |
| 64 | + *ngIf="mimeType | startsWith: 'video'" |
| 65 | + name="videocam" |
| 66 | + class="is-video" |
| 67 | + ></ion-icon> |
| 68 | + </ng-container> |
| 69 | + <ion-icon |
| 70 | + *ngIf="postCapture.source_type === 'store'" |
| 71 | + name="storefront" |
| 72 | + class="is-from-store" |
| 73 | + ></ion-icon> |
| 74 | + <ion-img [src]="postCapture.asset_file_thumbnail"></ion-img> |
43 | 75 | </mat-grid-tile>
|
44 | 76 | </mat-grid-list>
|
45 | 77 | </div>
|
46 | 78 | </div>
|
47 | 79 |
|
48 |
| - <div class="post-captures" *ngSwitchCase="'collected'"> |
49 |
| - <mat-grid-list cols="2" gutterSize="16px"> |
50 |
| - <mat-grid-tile |
51 |
| - class="capture-item" |
52 |
| - *ngFor=" |
53 |
| - let postCapture of postCaptures$ | ngrxPush; |
54 |
| - trackBy: trackPostCapture |
55 |
| - " |
56 |
| - [routerLink]="['details', { type: 'post-capture', id: postCapture.id }]" |
57 |
| - > |
58 |
| - <ng-container *ngIf="postCapture.asset_file_mime_type as mimeType"> |
59 |
| - <ion-icon |
60 |
| - *ngIf="mimeType | startsWith: 'video'" |
61 |
| - name="videocam" |
62 |
| - class="is-video" |
63 |
| - ></ion-icon> |
64 |
| - </ng-container> |
65 |
| - <ion-icon |
66 |
| - *ngIf="postCapture.source_type === 'store'" |
67 |
| - name="storefront" |
68 |
| - class="is-from-store" |
69 |
| - ></ion-icon> |
70 |
| - <ion-img [src]="postCapture.asset_file_thumbnail"></ion-img> |
71 |
| - </mat-grid-tile> |
72 |
| - </mat-grid-list> |
73 |
| - </div> |
74 |
| -</div> |
| 80 | + <ion-infinite-scroll threshold="100px" (ionInfinite)="loadMoreItems($event)"> |
| 81 | + <ion-infinite-scroll-content loading-spinner="bubbles"> |
| 82 | + </ion-infinite-scroll-content> |
| 83 | + </ion-infinite-scroll> |
| 84 | +</ion-content> |
0 commit comments