in packages/issue-dashboard-widgets/widgets/youtrack-issues-list/app/issues-list-edit-form.js [275:339]
renderFilteringSettings() {
const {
search,
context,
filtersType,
allContexts
} = this.state;
const toSelectItem = it => it && {key: it.id, label: it.name, model: it};
const contextOptions = (allContexts || []).map(toSelectItem);
contextOptions.unshift(IssuesListEditForm.EVERYTHING_CONTEXT_OPTION);
return (
<div>
<div>
<Select
className="issues-list-widget__search-context"
type={Select.Type.BUTTON}
size={InputSize.S}
data={contextOptions}
selected={toSelectItem(context)}
onSelect={this.changeSearchContext}
filter
loading={!allContexts}
label={i18n('Everything')}
/>
<div className="issues-list-widget__search-query">
<QueryAssist
disabled={this.state.isLoading}
query={search}
placeholder={i18n('Type search query')}
onChange={this.onQueryAssistInputChange}
dataSource={this.queryAssistDataSource}
/>
</div>
</div>
<div className="issues-list-widget__filters-switcher">
<Tabs
selected={`${filtersType}`}
onSelect={this.changeFiltersType}
>
<Tab
id={`${IssuesListEditForm.FILTERS_TYPES.PROJECTS}`}
title={i18n('Projects')}
>
{this.renderFiltersList(filtersType)}
</Tab>
<Tab
id={`${IssuesListEditForm.FILTERS_TYPES.TAGS}`}
title={i18n('Tags')}
>
{this.renderFiltersList(filtersType)}
</Tab>
<Tab
id={`${IssuesListEditForm.FILTERS_TYPES.SEARCHES}`}
title={i18n('Saved searches')}
>
{this.renderFiltersList(filtersType)}
</Tab>
</Tabs>
</div>
</div>
);
}