chore: format code
This commit is contained in:
parent
cfab9a65ca
commit
d6efed3e77
|
|
@ -10,49 +10,46 @@ import type Mithril from 'mithril';
|
|||
* the search dropdown.
|
||||
*/
|
||||
export default class Source implements SearchSource {
|
||||
protected results = new Map<string, unknown[]>();
|
||||
protected results = new Map<string, unknown[]>();
|
||||
|
||||
search(query: string) {
|
||||
query = query.toLowerCase();
|
||||
search(query: string) {
|
||||
query = query.toLowerCase();
|
||||
|
||||
this.results.set(query, []);
|
||||
this.results.set(query, []);
|
||||
|
||||
const params = {
|
||||
filter: { q: query },
|
||||
page: { limit: 3 },
|
||||
include: 'mostRelevantPost',
|
||||
};
|
||||
const params = {
|
||||
filter: { q: query },
|
||||
page: { limit: 3 },
|
||||
include: 'mostRelevantPost',
|
||||
};
|
||||
|
||||
return app.request(
|
||||
app.forum.attribute('apiUrl') + '/blomstra/search',
|
||||
params
|
||||
).then((results) => this.results.set(query, results));
|
||||
}
|
||||
return app.request(app.forum.attribute('apiUrl') + '/blomstra/search', params).then((results) => this.results.set(query, results));
|
||||
}
|
||||
|
||||
view(query: string): Array<Mithril.Vnode> {
|
||||
query = query.toLowerCase();
|
||||
view(query: string): Array<Mithril.Vnode> {
|
||||
query = query.toLowerCase();
|
||||
|
||||
const results = (this.results.get(query) || []).map((discussion: unknown) => {
|
||||
const mostRelevantPost = discussion.mostRelevantPost();
|
||||
const results = (this.results.get(query) || []).map((discussion: unknown) => {
|
||||
const mostRelevantPost = discussion.mostRelevantPost();
|
||||
|
||||
return (
|
||||
<li className="DiscussionSearchResult" data-index={'discussions' + discussion.id()}>
|
||||
<Link href={app.route.discussion(discussion, mostRelevantPost && mostRelevantPost.number())}>
|
||||
<div className="DiscussionSearchResult-title">{highlight(discussion.title(), query)}</div>
|
||||
{mostRelevantPost ? <div className="DiscussionSearchResult-excerpt">{highlight(mostRelevantPost.contentPlain(), query, 100)}</div> : ''}
|
||||
</Link>
|
||||
</li>
|
||||
);
|
||||
}) as Array<Mithril.Vnode>;
|
||||
return (
|
||||
<li className="DiscussionSearchResult" data-index={'discussions' + discussion.id()}>
|
||||
<Link href={app.route.discussion(discussion, mostRelevantPost && mostRelevantPost.number())}>
|
||||
<div className="DiscussionSearchResult-title">{highlight(discussion.title(), query)}</div>
|
||||
{mostRelevantPost ? <div className="DiscussionSearchResult-excerpt">{highlight(mostRelevantPost.contentPlain(), query, 100)}</div> : ''}
|
||||
</Link>
|
||||
</li>
|
||||
);
|
||||
}) as Array<Mithril.Vnode>;
|
||||
|
||||
return [
|
||||
<li className="Dropdown-header">{app.translator.trans('core.forum.search.discussions_heading')}</li>,
|
||||
<li>
|
||||
<LinkButton icon="fas fa-search" href={app.route('index', { q: query })}>
|
||||
{app.translator.trans('core.forum.search.all_discussions_button', { query })}
|
||||
</LinkButton>
|
||||
</li>,
|
||||
...results,
|
||||
];
|
||||
}
|
||||
return [
|
||||
<li className="Dropdown-header">{app.translator.trans('core.forum.search.discussions_heading')}</li>,
|
||||
<li>
|
||||
<LinkButton icon="fas fa-search" href={app.route('index', { q: query })}>
|
||||
{app.translator.trans('core.forum.search.all_discussions_button', { query })}
|
||||
</LinkButton>
|
||||
</li>,
|
||||
...results,
|
||||
];
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -4,12 +4,12 @@ import Search from 'flarum/forum/components/Search';
|
|||
import Source from './Source';
|
||||
|
||||
app.initializers.add('blomstra-search', () => {
|
||||
extend(Search.prototype, 'sourceItems', function (items) {
|
||||
items.remove('users');
|
||||
items.remove('discussions');
|
||||
extend(Search.prototype, 'sourceItems', function (items) {
|
||||
items.remove('users');
|
||||
items.remove('discussions');
|
||||
|
||||
items.add('discussions', new Source());
|
||||
items.add('discussions', new Source());
|
||||
|
||||
console.log(items)
|
||||
});
|
||||
console.log(items);
|
||||
});
|
||||
});
|
||||
|
|
|
|||
Loading…
Reference in New Issue