@element-public/react-file-upload
v1.0.0
Published
File Upload component for Element React
Downloads
3
Keywords
Readme
FileUpload
Description
File uploads are used to browse file(s) for upload from the users system.
See live demos on storybook
Install bundle from npm-e
npm i @element-public/react-components @element-public/themes
Optional: install the component individually
npm i @element-public/react-file-upload @element-public/themes
Open ~/.npmrc
in an editor and add the following line to enable the @element-public
scope:
@element-public:registry=https://npm.platforms.engineering
Troubleshooting
See below if you have never installed a package from Bayer's npm-enterprise or run into the following error:
npm ERR! code E401
npm ERR! Unable to authenticate, your authentication token seems to be invalid.
npm ERR! To correct this please trying logging in again with:
npm ERR! npm login
Setup an access token
See the
devtools npm-e guide
to learn how to create an access token if this is the first time you are using a
npm-e package at Bayer or you do not have a line that starts with the following
in your ~/.npmrc
file:
//npm.platforms.engineering/:_authToken=
Notes
File uploads are used to browse file(s) for upload from the user's system. The file is actually uploaded by the parent application.
Using References & Imperative Functions
File Upload supports the use of React references. You will receive an object with a reference to the table and the following imperative functions:
{
clear, // Function to clear the file values after uploading is complete
btnRef, // Ref to the browse file button
urlInput, // Ref to the url or file name input that displays the file name(s)
input; // Ref to the input that holds the file value, located inside the button
}
Please see the File upload demos for example usage.
File Upload Props
| Name | Type | Default | Required | Description |
| ----------- | ------- | ---------------- | -------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| className | string | undefined | false | The css class name to be passed through to the component markup. |
| disabled | boolean | false | false | Prevent the user from interacting with the component. |
| id | string | undefined | false | Randomly generated id. May be overwritten. |
| label | string | null | false | Label to be displayed on the button. |
| multiple | boolean | false | false | Allows for multiple files to be uploaded. |
| placeholder | string | 'No File Chosen' | false | Placeholder text for the file name readonly input. |
| themeColor | string | 'primary' | false | Override the default (primary
) color with the secondary
color. Most commonly used when the control is placed on a darker surface.Accepted Values: primary, secondary |
File Upload Render Props
| Name | Type | Default | Required | Description |
| -------- | --------------- | ------- | -------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| children | React.ReactNode | null | false | Content to be rendered inside the button. Can be used instead label
of to provide more flexibility. Accepts any valid markup. Warning, if Label is set, it will be used instead of child content. |
File Upload Events
| Name | Default | Required | Params | Description | | -------- | ------- | -------- | -------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------- | | onChange | null | false | 1. Name: files, Type: FileList, Description: The file list of loaded files.,2. Name: event, Type: object, Description: The javascript event. | Fired when file input's value is changed |