New to KendoReactStart a free 30-day trial

PromptBoxUploadButtonProps
Premium

Updated on Feb 6, 2026

Represents the props of the PromptBoxUploadButton component.

NameTypeDefaultDescription

accept?

string

The file types that can be selected.

disabled?

boolean

false

Specifies if the Button is disabled (see example).

endIcon?

React.ReactNode

Sets an SVG icon or custom element after the content of the Button. For the custom component, consider using Phrasing content. Do not use Interactive content.

fillMode?

"link" | "flat" | "solid" | "outline" | "clear"

undefined (theme-controlled)

Configures the fillMode of the Button. See Button Appearance.

tsx
<Button fillMode="outline">Outline Button</Button>

icon?

string

Defines the name for an existing icon in a KendoReact theme (see example). The icon renders inside the Button by a span.k-icon element.

iconClass?

string

Defines a CSS class — or multiple classes separated by spaces — which apply to a span element inside the Button (see example). Allows you to use custom icons.

iconSize?

"small" | "medium" | "large"

undefined (theme-controlled)

Configures the size of the SVG icon that displays inside the Button.

tsx
<Button svgIcon={searchIcon} iconSize="large">Search</Button>

imageAlt?

string

Defines the alternative text of the image that renders inside the Button component.

imageUrl?

string

Defines a URL which is used as an img element inside the Button (see example). The URL can be relative or absolute. If relative, it evaluates in relation to the URL of the web page.

multiple?

boolean

Whether multiple files can be selected.

onRemoveAttachment?

(fileName: string) => void

Fires when the user removes an attachment by clicking the remove button. Used for controlled attachment management in custom placement scenarios.

tsx
<PromptBox
  uploadButtonConfig={false}
  startAffix={(props) => (
    <PromptBoxUploadButton
      {...props.uploadButtonProps}
      onRemoveAttachment={(fileName) => setAttachments(prev => prev.filter(f => f.name !== fileName))}
    />
  )}
/>

onSelectAttachments?

(event: PromptBoxSelectAttachmentsEvent) => void

Fires when the user selects files via the upload button. Used for controlled attachment management in custom placement scenarios.

tsx
<PromptBox
  uploadButtonConfig={false}
  startAffix={(props) => (
    <PromptBoxUploadButton
      {...props.uploadButtonProps}
      onSelectAttachments={(e) => setAttachments(e.allFiles)}
    />
  )}
/>

restrictions?

any

Restrictions on the files that can be uploaded.

rounded?

"small" | "none" | "medium" | "large" | "full"

undefined (theme-controlled)

Configures the roundness of the Button. See Button Appearance.

The available options are:

  • small
  • medium
  • large
  • full
  • none
tsx
<Button rounded="full">Rounded Button</Button>

selected?

boolean

Sets the selected state of the Button. You can use this for controlled mode.

size?

"small" | "medium" | "large"

undefined (theme-controlled)

Configures the size of the Button. See Button Appearance.

tsx
<Button size="large">Large Button</Button>

startIcon?

React.ReactNode

Sets an SVG icon or custom element before the content of the Button. For the custom component, consider using Phrasing content. Do not use Interactive content.

svgIcon?

SVGIcon

Defines the SVG icon that renders inside the Button component.

themeColor?

"base" | "error" | "primary" | "secondary" | "tertiary" | "info" | "success" | "warning" | "dark" | "light" | "inverse"

undefined (theme-controlled)

Configures the themeColor of the Button. See Button Appearance.

tsx
<Button themeColor="primary">Primary Button</Button>

title?

string

Sets the title HTML attribute of the Button.

togglable?

boolean

false

Provides visual styling that shows if the Button is selected (see example).

unstyled?

ButtonsClassStructure

The unstyled option classes.

Not finding the help you need?
Contact Support