Files
YouTube.js/src/parser/ytkids/Search.ts
Luan e86a0daf45 refactor(general): Clean up and add a logger (#587)
* feat(utils): Add logger

* chore: Clean up some classes and add more logging

* chore: Fix conflicts
2024-01-25 19:01:28 -03:00

26 lines
851 B
TypeScript

import Feed from '../../core/mixins/Feed.js';
import ItemSection from '../classes/ItemSection.js';
import { InnertubeError } from '../../utils/Utils.js';
import type { ApiResponse, Actions } from '../../core/index.js';
import type { ObservedArray, YTNode } from '../helpers.js';
import type { ISearchResponse } from '../types/index.js';
class Search extends Feed<ISearchResponse> {
estimated_results: number;
contents: ObservedArray<YTNode> | null;
constructor(actions: Actions, data: ApiResponse | ISearchResponse) {
super(actions, data);
this.estimated_results = this.page.estimated_results;
const item_section = this.memo.getType(ItemSection).first();
if (!item_section)
throw new InnertubeError('No item section found in search response.');
this.contents = item_section.contents;
}
}
export default Search;