Skip to content

Add member CSV parsing and upload preview - #109

Merged
Arshadul-Monir merged 1 commit into
mainfrom
bulk-import-csv-upload
Oct 22, 2026
Merged

Arshadul-Monir merged 1 commit into
mainfrom
bulk-import-csv-upload

Conversation

@Arshadul-Monir

@Arshadul-Monir Arshadul-Monir commented Sep 18, 2026 •

Copy link
Copy Markdown
Member

Summary

  • Parse member CSV files, validate required headers and row values, and flag duplicate emails.
  • Add a CSV file picker with a preview of parsed rows and validation errors.

Stack

1 of 3. #110 connects this component to the Members page; #108 adds interaction and feedback refinements.

Verification

  • TypeScript type check passed at this branch tip.

@graphite-app

graphite-app Bot commented Sep 18, 2026

Copy link
Copy Markdown

Graphite Automations

"Request reviewers once CI passes" took an action on this PR • (09/18/26)

1 reviewer was added to this PR based on Henry Chen's automation.

@Arshadul-Monir
Arshadul-Monir removed the request for review from arklian September 18, 2026 02:11

Copy link
Copy Markdown
Member Author

@spiffyy99

Copy link
Copy Markdown
Contributor

Please attach a screenshot of this component.

@Arshadul-Monir
Arshadul-Monir force-pushed the bulk-import-csv-upload branch 2 times, most recently from 9ec83c8 to 22fa2f6 Compare October 9, 2026 22:53
@spiffyy99

Copy link
Copy Markdown
Contributor

Looks fine other than the stuff we discussed over discord thread

@Arshadul-Monir
Arshadul-Monir force-pushed the bulk-import-csv-upload branch 3 times, most recently from 9a36916 to cceaca1 Compare October 16, 2026 22:02
@sonarqubecloud

Copy link
Copy Markdown

Arshadul-Monir commented Oct 22, 2026 •

Copy link
Copy Markdown
Member Author

Merge activity

  • Oct 22, 8:40 PM UTC: A user started a stack merge that includes this pull request via Graphite.
  • Oct 22, 8:40 PM UTC: @Arshadul-Monir merged this pull request with Graphite.

@Arshadul-Monir
Arshadul-Monir merged commit 7acd5f3 into main Oct 22, 2026
8 checks passed
@Arshadul-Monir
Arshadul-Monir deleted the bulk-import-csv-upload branch October 22, 2026 20:40
Arshadul-Monir added a commit that referenced this pull request Oct 22, 2026
## Summary
- Add a modal for manual member entry and CSV import, with validation and submission feedback.
- Connect the modal to the Members page.
- Test manual submission, CSV import, API errors, and existing page behavior.

## Stack
2 of 3. Depends on #109. #108 is the final stage.

## Verification
- TypeScript type check passed at this branch tip.
- All 14 Members page tests passed at this branch tip.
Arshadul-Monir added a commit that referenced this pull request Oct 26, 2026
## Summary

- Add drag and drop to the member CSV uploader.
- Summarize bulk import successes in one notification and retain per-member error feedback.
- Update member page tests for the revised notifications.

## Stack

3 of 3. Depends on #110, which depends on #109.

## Verification

- TypeScript type check passed at this branch tip.
- All 15 Members page tests passed at this branch tip.

## Images

### Manual Entry Modal
![image.png](https://app.graphite.com/user-attachments/assets/8586f81a-d8c5-4495-9330-5043e44a92e0.png)

### Bulk CSV Upload Modal
<img width="773" height="382" alt="image" src="https://github.com/user-attachments/assets/2bc3b1ab-579c-420c-8b94-bbc49740879b" />

### Successful Upload
![image.png](https://app.graphite.com/user-attachments/assets/1eca3199-111a-4284-af09-fc2c842cc027.png)

### Additional Headers
<img width="767" height="328" alt="image" src="https://github.com/user-attachments/assets/e4e9f12b-b3ef-4d21-9820-deff40e496cb" />

### Uploading Duplicate User
<img width="468" height="83" alt="image" src="https://github.com/user-attachments/assets/668f725f-6d3d-4cd3-9ed4-a7f199c5c3b8" />

### Invalid Column Order
<img width="763" height="261" alt="image" src="https://github.com/user-attachments/assets/230f4fbb-8e66-4e09-94a8-50db47f6f7b9" />
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.

2 participants