argo-cd

Форк
0
37 строк · 981.0 Байт
1
import {Checkbox} from 'argo-ui';
2
import * as React from 'react';
3
import * as ReactForm from 'react-form';
4

5
import {ArrayInput, NameValueEditor} from '../../../shared/components';
6

7
export interface Var {
8
    name: string;
9
    value: string;
10
    code: boolean;
11
}
12

13
const VarInputEditor = (item: Var, onChange: (item: Var) => any) => (
14
    <React.Fragment>
15
        {NameValueEditor(item, onChange)}
16
        &nbsp;
17
        <Checkbox checked={!!item.code} onChange={val => onChange({...item, code: val})} />
18
        &nbsp;
19
    </React.Fragment>
20
);
21

22
export const VarsInputField = ReactForm.FormField((props: {fieldApi: ReactForm.FieldApi}) => {
23
    const {
24
        fieldApi: {getValue, setValue, setTouched}
25
    } = props;
26
    const val = getValue() || [];
27
    return (
28
        <ArrayInput
29
            editor={VarInputEditor}
30
            items={val}
31
            onChange={items => {
32
                setTouched(true);
33
                setValue(items);
34
            }}
35
        />
36
    );
37
});
38

Использование cookies

Мы используем файлы cookie в соответствии с Политикой конфиденциальности и Политикой использования cookies.

Нажимая кнопку «Принимаю», Вы даете АО «СберТех» согласие на обработку Ваших персональных данных в целях совершенствования нашего веб-сайта и Сервиса GitVerse, а также повышения удобства их использования.

Запретить использование cookies Вы можете самостоятельно в настройках Вашего браузера.