diff options
author | crupest <crupest@outlook.com> | 2020-09-01 02:32:06 +0800 |
---|---|---|
committer | crupest <crupest@outlook.com> | 2020-09-01 02:32:06 +0800 |
commit | a314b5350e269676e8c39eda4cc7842751b1a7fc (patch) | |
tree | ab3e8c96f18c8e9f6e8c613ace0e04329614304c /Timeline/ClientApp/src/app/common/FileInput.tsx | |
parent | 02a9bf9ecfe1659b3481a5386e7a06ee2f0e5fc5 (diff) | |
download | timeline-a314b5350e269676e8c39eda4cc7842751b1a7fc.tar.gz timeline-a314b5350e269676e8c39eda4cc7842751b1a7fc.tar.bz2 timeline-a314b5350e269676e8c39eda4cc7842751b1a7fc.zip |
...
Diffstat (limited to 'Timeline/ClientApp/src/app/common/FileInput.tsx')
-rw-r--r-- | Timeline/ClientApp/src/app/common/FileInput.tsx | 41 |
1 files changed, 0 insertions, 41 deletions
diff --git a/Timeline/ClientApp/src/app/common/FileInput.tsx b/Timeline/ClientApp/src/app/common/FileInput.tsx deleted file mode 100644 index 3d1bc2b3..00000000 --- a/Timeline/ClientApp/src/app/common/FileInput.tsx +++ /dev/null @@ -1,41 +0,0 @@ -import React from "react"; -import clsx from "clsx"; - -import { ExcludeKey } from "../utilities/type"; - -export interface FileInputProps - extends ExcludeKey< - React.InputHTMLAttributes<HTMLInputElement>, - "type" | "id" - > { - inputId?: string; - labelText: string; - color?: string; - className?: string; -} - -const FileInput: React.FC<FileInputProps> = (props) => { - const { inputId, labelText, color, className, ...otherProps } = props; - - const realInputId = React.useMemo<string>(() => { - if (inputId != null) return inputId; - return ( - "file-input-" + - (((1 + Math.random()) * 0x10000) | 0).toString(16).substring(1) - ); - }, [inputId]); - - return ( - <> - <input className="d-none" type="file" id={realInputId} {...otherProps} /> - <label - htmlFor={realInputId} - className={clsx("btn", "btn-" + (color ?? "primary"), className)} - > - {labelText} - </label> - </> - ); -}; - -export default FileInput; |