Press n or j to go to the next uncovered block, b, p or k for the previous block.
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 | 2x 2x 2x 2x 1x 1x 1x 1x | import { AbstractDAO } from './AbstractDAO';
import { SearchResponse } from '../model/SearchResponse';
import { TwitarrHTTPOptions } from '../api/TwitarrHTTPOptions';
export class SearchDAO extends AbstractDAO {
/**
* Search all metadata (seamail, twarrts, etc.)
*/
public async all(query: string, limit?: number, page?: number) {
return this.doSearch('/api/v2/search/all/' + query, limit, page);
}
/**
* Search events.
*/
public async events(query: string, limit?: number, page?: number) {
return this.doSearch('/api/v2/search/events/' + query, limit, page);
}
/**
* Search forums.
*/
public async forums(query: string, limit?: number, page?: number) {
return this.doSearch('/api/v2/search/forums/' + query, limit, page);
}
/**
* Search seamails.
*/
public async seamails(query: string, limit?: number, page?: number) {
return this.doSearch('/api/v2/search/seamails/' + query, limit, page);
}
/**
* Search tweets.
*/
public async tweets(query: string, limit?: number, page?: number) {
return this.doSearch('/api/v2/search/tweets/' + query, limit, page);
}
/**
* Search users.
*/
public async users(query: string, limit?: number, page?: number) {
return this.doSearch('/api/v2/search/users/' + query, limit, page);
}
protected async doSearch(url: string, limit?: number, page?: number) {
const options = new TwitarrHTTPOptions().withParameter('app', 'plain');
if (limit && limit > 0) {
options.parameters.limit = '' + limit;
}
if (page !== undefined) {
options.parameters.page = '' + page;
}
return this.http.get(url, options).then(result => {
return SearchResponse.fromRest(result.data);
});
}
}
|