Skip to content

feat: Data Import tab with Bulk API v2#155

Merged
bct8925 merged 14 commits into
mainfrom
importV2
Mar 25, 2026
Merged

feat: Data Import tab with Bulk API v2#155
bct8925 merged 14 commits into
mainfrom
importV2

Conversation

@bct8925

@bct8925 bct8925 commented Mar 25, 2026

Copy link
Copy Markdown
Owner

Fixes #125

Summary

  • Adds a new Data Import tab for importing CSV data into Salesforce objects via Bulk API v2, supporting insert, update, upsert, and delete operations
  • Implements CSV parsing with column mapping (auto-map + manual override), batch size control, job progress tracking, and downloadable result CSVs for successes/failures/unprocessed records
  • Cleans up post-import UI: button re-enables after completion for re-runs, zero-count result items are hidden, and the upsert operation defaults the external ID field to Salesforce Id

Test plan

  • npm run typecheck passes
  • npm run validate passes
  • npm run test:unit passes (983 tests)
  • npm run test:frontend passes (70 tests, including 5 data-import specs)
  • Manual: navigate to Data Import tab via Alt+6 or home tile
  • Manual: upload a CSV, verify auto-mapping, run an insert import
  • Manual: select Upsert — external ID field defaults to Id
  • Manual: after import completes, Import button re-enables; zero-count result rows hidden; re-clicking triggers a fresh import

Comment thread src/components/data-import/DataImportTab.tsx Outdated
Comment thread src/components/data-import/ImportSettingsSection.tsx
Comment thread src/api/bulk-ingest.ts
Comment thread src/api/bulk-ingest.ts Outdated
Comment thread src/components/data-import/ColumnMappingSection.tsx Outdated
Comment thread src/components/data-import/DataImportTab.tsx Outdated
@github-actions

Copy link
Copy Markdown
Contributor

Code review

No issues found. Checked for bugs and CLAUDE.md compliance.

- Remove unnecessary useCallback wrappers in ColumnMappingSection
- Add responseType option to salesforceRequest for non-JSON content
- Migrate bulk-ingest and bulk-query from smartFetch to salesforceRequest
- Fix DataImportTab import to use salesforce.ts re-exports
@github-actions

Copy link
Copy Markdown
Contributor

✅ Unit Test Results

Passed Failed Total Duration
983 0 983 0.4s

@github-actions

Copy link
Copy Markdown
Contributor

✅ Frontend Test Results

Passed Failed Total Duration
70 0 70 137.2s

@github-actions

Copy link
Copy Markdown
Contributor

Code review

No issues found. Checked for bugs and CLAUDE.md compliance.

@bct8925 bct8925 merged commit c1d5917 into main Mar 25, 2026
2 checks passed
@bct8925 bct8925 deleted the importV2 branch March 25, 2026 18:00
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Data Import (Insert / Update / Upsert / Delete)

1 participant