Skip to content

Bulk Import / Export Page #312

@ElioNeto

Description

@ElioNeto

Bulk Import / Export Page

Create an Angular page for bulk importing and exporting data using the existing bulk_io infrastructure.

Backend Endpoints Needed

POST   /admin/import          — Import data (JSON/CSV)
GET    /admin/export          — Export all data (JSON/CSV)
POST   /admin/import/validate — Validate data before importing (dry run)
GET    /admin/export/status   — Export progress (for large exports)

UI Requirements

Import

  • File Upload: Drag-and-drop or file picker for JSON/CSV files
  • Format Preview: Show first few rows of the uploaded file
  • Column Mapping: Map file columns to key/value fields (for CSV)
  • Dry Run: Validate without importing, show errors summary
  • Import Button: Execute import with progress bar
  • Result Summary: Keys imported, errors, duration

Export

  • Format Selector: JSON or CSV
  • Filter: Optional prefix filter
  • Limit: Max records to export
  • Download: Trigger file download
  • Progress: Progress indicator for large exports
  • History: Table of recent imports/exports

Supported Formats

// JSON format
[
  { "key": "mykey", "value": "myvalue" },
  { "key": "mykey2", "value": "myvalue2" }
]

// CSV format
key,value
mykey,myvalue
mykey2,myvalue2

Acceptance Criteria

  • File upload works with drag-and-drop
  • JSON import processes correctly
  • CSV import with column mapping works
  • Dry run validates without importing
  • Export downloads file in selected format
  • Progress indicators shown for large operations
  • Error handling for malformed files
  • Responsive layout

Parent Epic

#290

Metadata

Metadata

Assignees

No one assigned

    Labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions