1 | import { __rest } from "tslib";
|
2 | import * as React from 'react';
|
3 | import styles from '@patternfly/react-styles/css/components/MultipleFileUpload/multiple-file-upload';
|
4 | import { css } from '@patternfly/react-styles';
|
5 | import { ExpandableSection } from '../ExpandableSection';
|
6 | import InProgressIcon from '@patternfly/react-icons/dist/esm/icons/in-progress-icon';
|
7 | import CheckCircleIcon from '@patternfly/react-icons/dist/esm/icons/check-circle-icon';
|
8 | import TimesCircleIcon from '@patternfly/react-icons/dist/esm/icons/times-circle-icon';
|
9 | export const MultipleFileUploadStatus = (_a) => {
|
10 | var { children, className, statusToggleText, statusToggleIcon } = _a, props = __rest(_a, ["children", "className", "statusToggleText", "statusToggleIcon"]);
|
11 | const [icon, setIcon] = React.useState();
|
12 | const [isOpen, setIsOpen] = React.useState(true);
|
13 | React.useEffect(() => {
|
14 | switch (statusToggleIcon) {
|
15 | case 'danger':
|
16 | setIcon(React.createElement(TimesCircleIcon, null));
|
17 | break;
|
18 | case 'success':
|
19 | setIcon(React.createElement(CheckCircleIcon, null));
|
20 | break;
|
21 | case 'inProgress':
|
22 | setIcon(React.createElement(InProgressIcon, null));
|
23 | break;
|
24 | default:
|
25 | setIcon(statusToggleIcon);
|
26 | }
|
27 | }, [statusToggleIcon]);
|
28 | const toggle = (React.createElement("div", { className: styles.multipleFileUploadStatusProgress },
|
29 | React.createElement("div", { className: styles.multipleFileUploadStatusProgressIcon }, icon),
|
30 | React.createElement("div", { className: styles.multipleFileUploadStatusItemProgressText }, statusToggleText)));
|
31 | const toggleExpandableSection = () => {
|
32 | setIsOpen(!isOpen);
|
33 | };
|
34 | return (React.createElement("div", Object.assign({ className: css(styles.multipleFileUploadStatus, className) }, props),
|
35 | React.createElement(ExpandableSection, { toggleContent: toggle, isExpanded: isOpen, onToggle: toggleExpandableSection },
|
36 | React.createElement("ul", { className: "pf-c-multiple-file-upload__status-list" }, children))));
|
37 | };
|
38 | MultipleFileUploadStatus.displayName = 'MultipleFileUploadStatus';
|
39 |
|
\ | No newline at end of file |