Skip to content

[FEATURE] Add Upload component #36

@albx

Description

@albx

Implement a BitUploadField component inspired by the Bootstrap Italia upload component.

Requirements:

  • Create a reusable BitUploadField component following the design and UX patterns of the Bootstrap Italia upload component (docs).
  • Support for both single and multiple file uploads.
  • Expose properties for accepted file types, max file size, and max file count.
  • Provide visual feedback for file upload progress, errors, and completed uploads.
  • Add support for drag & drop file selection.
  • Allow customization of labels, button texts, and icons.
  • Emit events or callbacks for file selection, upload progress, completion, and errors.
  • Ensure accessibility and keyboard navigation as shown in Bootstrap Italia documentation.
  • Responsive layout and mobile-friendly behavior.

Acceptance Criteria:

  • The BitUploadField visually matches the Bootstrap Italia component (as much as possible within BitBlazor/Blazor constraints).
  • Users can select files either via the dialog or by drag & drop.
  • Component must restrict file types and enforce limits on file size/count.
  • Upload progress, success, and error states are visually indicated.
  • All customization props and events are documented and tested.
  • Component passes accessibility checks (keyboard navigation, ARIA labels).
  • Example usage is provided in the documentation and a sample page is available.

References

Metadata

Metadata

Assignees

No one assigned

    Labels

    componentsIssues related to the componentsenhancementNew feature or request

    Projects

    Status

    Inbox

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions