add status display in search
This commit is contained in:
parent
12502a0319
commit
628cb94505
|
@ -19,14 +19,18 @@
|
||||||
</a>
|
</a>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div *ngIf="statuses.length > 0" class="search-results">
|
|
||||||
<h3 class="search-results__title">Statuses</h3>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div *ngIf="hashtags.length > 0" class="search-results">
|
<div *ngIf="hashtags.length > 0" class="search-results">
|
||||||
<h3 class="search-results__title">Hashtags</h3>
|
<h3 class="search-results__title">Hashtags</h3>
|
||||||
<a (click)="addHashtag(hashtag)" href *ngFor="let hashtag of hashtags" class="search-results__hashtag" title="add hashtag column">
|
<a (click)="addHashtag(hashtag)" href *ngFor="let hashtag of hashtags" class="search-results__hashtag" title="add hashtag column">
|
||||||
#{{ hashtag }}
|
#{{ hashtag }}
|
||||||
</a>
|
</a>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
<div *ngIf="statuses.length > 0" class="search-results">
|
||||||
|
<h3 class="search-results__title">Statuses</h3>
|
||||||
|
|
||||||
|
<div class="search-results__status" *ngFor="let statusWrapper of statuses">
|
||||||
|
<app-status [statusWrapper]="statusWrapper" (browseAccount)="browseAccount($event)" (browseHashtag)="browseHashtag($event)"></app-status>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
|
@ -59,6 +59,13 @@ $button-background-color-hover: lighten($color-primary, 20);
|
||||||
border-bottom: 1px solid $separator-color;
|
border-bottom: 1px solid $separator-color;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
&__status {
|
||||||
|
border-top: 1px solid $separator-color;
|
||||||
|
&:last-of-type {
|
||||||
|
border-bottom: 1px solid $separator-color;
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
.account {
|
.account {
|
||||||
|
|
|
@ -4,6 +4,8 @@ import { Store } from '@ngxs/store';
|
||||||
import { MastodonService } from '../../../services/mastodon.service';
|
import { MastodonService } from '../../../services/mastodon.service';
|
||||||
import { AccountInfo } from '../../../states/accounts.state';
|
import { AccountInfo } from '../../../states/accounts.state';
|
||||||
import { Results, Account, Status } from '../../../services/models/mastodon.interfaces';
|
import { Results, Account, Status } from '../../../services/models/mastodon.interfaces';
|
||||||
|
import { ToolsService } from '../../../services/tools.service';
|
||||||
|
import { StatusWrapper } from '../../stream/stream.component';
|
||||||
|
|
||||||
|
|
||||||
@Component({
|
@Component({
|
||||||
|
@ -15,13 +17,14 @@ export class SearchComponent implements OnInit {
|
||||||
@Input() searchHandle: string;
|
@Input() searchHandle: string;
|
||||||
|
|
||||||
accounts: Account[] = [];
|
accounts: Account[] = [];
|
||||||
statuses: Status[] = [];
|
statuses: StatusWrapper[] = [];
|
||||||
hashtags: string[] = [];
|
hashtags: string[] = [];
|
||||||
|
|
||||||
isLoading: boolean;
|
isLoading: boolean;
|
||||||
|
|
||||||
constructor(
|
constructor(
|
||||||
private readonly store: Store,
|
private readonly store: Store,
|
||||||
|
private readonly toolsService: ToolsService,
|
||||||
private readonly mastodonService: MastodonService) { }
|
private readonly mastodonService: MastodonService) { }
|
||||||
|
|
||||||
ngOnInit() {
|
ngOnInit() {
|
||||||
|
@ -46,8 +49,7 @@ export class SearchComponent implements OnInit {
|
||||||
|
|
||||||
console.warn(`search: ${data}`);
|
console.warn(`search: ${data}`);
|
||||||
|
|
||||||
const enabledAccounts = this.getRegisteredAccounts().filter(x => x.isSelected);
|
const enabledAccounts = this.toolsService.getSelectedAccounts();
|
||||||
|
|
||||||
//First candid implementation
|
//First candid implementation
|
||||||
if (enabledAccounts.length > 0) {
|
if (enabledAccounts.length > 0) {
|
||||||
const candid_oneAccount = enabledAccounts[0];
|
const candid_oneAccount = enabledAccounts[0];
|
||||||
|
@ -57,6 +59,13 @@ export class SearchComponent implements OnInit {
|
||||||
console.warn(results);
|
console.warn(results);
|
||||||
this.accounts = results.accounts.slice(0, 5);
|
this.accounts = results.accounts.slice(0, 5);
|
||||||
this.hashtags = results.hashtags;
|
this.hashtags = results.hashtags;
|
||||||
|
|
||||||
|
for (let status of results.statuses) {
|
||||||
|
const statusWrapper = new StatusWrapper(status, candid_oneAccount);
|
||||||
|
this.statuses.push(statusWrapper);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
.catch((err) => console.error(err))
|
.catch((err) => console.error(err))
|
||||||
|
|
Loading…
Reference in New Issue