1.0.0 • Published 12 months ago

@element-public/react-file-upload v1.0.0

Weekly downloads
-
License
ISC
Repository
github
Last release
12 months ago

FileUpload

Description

File uploads are used to browse file(s) for upload from the users system.

See live demos on storybook

Storybook FileUpload Demos

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

NameTypeDefaultRequiredDescription
classNamestringundefinedfalseThe css class name to be passed through to the component markup.
disabledbooleanfalsefalsePrevent the user from interacting with the component.
idstringundefinedfalseRandomly generated id. May be overwritten.
labelstringnullfalseLabel to be displayed on the button.
multiplebooleanfalsefalseAllows for multiple files to be uploaded.
placeholderstring'No File Chosen'falsePlaceholder text for the file name readonly input.
themeColorstring'primary'falseOverride 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

NameTypeDefaultRequiredDescription
childrenReact.ReactNodenullfalseContent 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

NameDefaultRequiredParamsDescription
onChangenullfalse1. 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