1
0
Fork 0
mirror of https://github.com/portainer/portainer.git synced 2025-07-23 15:29:42 +02:00

refactor(ui): migrate env var field to react [EE-4853] (#8451)

This commit is contained in:
Chaim Lev-Ari 2023-05-31 10:08:41 +07:00 committed by GitHub
parent 6b5940e00e
commit 2d05103fed
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
40 changed files with 721 additions and 442 deletions

View file

@ -1,5 +1,5 @@
import { ChangeEvent, createRef } from 'react';
import { XCircle } from 'lucide-react';
import { ChangeEvent, ComponentProps, createRef } from 'react';
import { Upload, XCircle } from 'lucide-react';
import { Button } from '@@/buttons';
import { Icon } from '@@/Icon';
@ -8,11 +8,12 @@ import styles from './FileUploadField.module.css';
export interface Props {
onChange(value: File): void;
value?: File;
value?: File | null;
accept?: string;
title?: string;
required?: boolean;
inputId: string;
color?: ComponentProps<typeof Button>['color'];
}
export function FileUploadField({
@ -22,6 +23,7 @@ export function FileUploadField({
title = 'Select a file',
required = false,
inputId,
color = 'primary',
}: Props) {
const fileRef = createRef<HTMLInputElement>();
@ -39,15 +41,16 @@ export function FileUploadField({
/>
<Button
size="small"
color="primary"
color={color}
onClick={handleButtonClick}
className={styles.fileButton}
icon={Upload}
>
{title}
</Button>
<span className="vertical-center">
{value ? value.name : <Icon icon={XCircle} mode="danger" />}
{value ? value.name : required && <Icon icon={XCircle} mode="danger" />}
</span>
</div>
);