ImportShell — Shared import workflow
Purpose: standardise import UX across entities so each importer focuses on schema and validation.
Stages (recommended): - Upload - Map (optional) - Validate - Preview - Confirm - Report
Importer responsibilities: - Define accepted file types and required columns - Provide validation rules and error messages - Implement save/merge semantics
Shell responsibilities: - File upload UI and progress - Column mapping UI (for Map stage) - Validation runner and aggregated error display - Preview rendering and row-level actions - Generate downloadable import report
Mapping details - Allow users to save mappings per source (e.g., Canvas, Moodle) - Provide example mappings to reduce friction
Example flow: Outcomes importer
1. Admin uploads outcomes.csv
2. (Skip Map if native) Validate rows for required fields
3. Preview first 50 rows with inline warnings
4. Confirm import; show final report and downloadable CSV with statuses
Last updated: 2026-07-07