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 | import Form from 'antd/lib/form'; import { WrappedFormUtils } from 'antd/lib/form/Form'; import Select from 'antd/lib/select'; import * as React from 'react'; import { Query } from 'react-apollo'; import { IArticle, ICategory } from '../../../../../shared'; import RULES from '../../../form/rules'; import { SETTINGS_CATEGORIES } from '../../queries'; const get = require('lodash/get'); interface IProps { form: WrappedFormUtils; article?: IArticle; } const SelectArticleCategory = ({ form, article }: IProps) => ( <Query query={SETTINGS_CATEGORIES}> {({ loading, error, data }) => { if (loading || error) { return null; // TODO: loader } return ( <Form.Item label="Kategorie"> {form.getFieldDecorator('category', { rules: RULES.ARTICLE_CATEGORY.rules, initialValue: article ? get(article, 'category._id') : undefined, })( <Select showSearch={true} placeholder="Zvolte kategorii" optionFilterProp="children" > {data.categories.map((c: ICategory) => ( <Select.Option key={c._id} value={c._id}> {c.title} </Select.Option> ))} </Select>, )} </Form.Item> ); }} </Query> ); export default SelectArticleCategory; |