Skip to content

Linh - Add multi-select and bulk actions to Materials table#4680

Open
linh2020 wants to merge 9 commits into
developmentfrom
linh_bulk_actions_materials_frontend
Open

Linh - Add multi-select and bulk actions to Materials table#4680
linh2020 wants to merge 9 commits into
developmentfrom
linh_bulk_actions_materials_frontend

Conversation

@linh2020
Copy link
Copy Markdown
Contributor

@linh2020 linh2020 commented Jan 7, 2026

Description

image

Implements bulk multi-select and bulk actions for BM Materials at /bmdashboard/materials so admins can apply updates to multiple materials in one flow (mark hold, mark reviewed, add/update notes, export selected), with selection highlighting and disabled bulk actions until at least one row is selected.

Related PRS (if any):

To test this frontend PR you need to checkout the #2178 backend PR.

Main changes explained:

Update ItemsTable.jsx for:

multi-select row checkboxes + select-all header checkbox
bulk actions dropdown with disabled/loading states
backend-connected actions for hold/review/notes
CSV/PDF export on selected rows
selected row highlight and persisted status chips (On Hold, Reviewed, Has Note)
Update materialsActions.js for new bulk action API helper (postMaterialsBulkAction).

Update URL.js for new endpoint constant BM_MATERIALS_BULK_ACTIONS.

Update ItemListView.module.css for bulk action responsive styles, disabled button state, selected-row clarity, and light/dark bulk status tag styling.

@netlify
Copy link
Copy Markdown

netlify Bot commented Jan 7, 2026

Deploy Preview for highestgoodnetwork-dev ready!

Name Link
🔨 Latest commit 1c83861
🔍 Latest deploy log https://app.netlify.com/projects/highestgoodnetwork-dev/deploys/695e03d220f4f30008438a20
😎 Deploy Preview https://deploy-preview-4680--highestgoodnetwork-dev.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.

To edit notification comments on pull requests, go to your Netlify project configuration.

@sonarqubecloud
Copy link
Copy Markdown

sonarqubecloud Bot commented Jan 7, 2026

…rsisted backend integration

- add row multi-select checkboxes and header Select All on materials table
- add bulk actions dropdown with:
  - Mark as Hold
  - Mark as Reviewed
  - Add/Update Notes
  - Export Selected (CSV/PDF)
- disable bulk actions when no rows are selected
- add loading state while bulk actions are being applied
- visually highlight selected rows for better clarity
- show bulk status tags per row (On Hold, Reviewed, Has Note)
- connect materials bulk actions to backend API and refresh materials after success
- keep dark mode and responsive behavior for bulk actions area
- add endpoint constant and action helper for materials bulk actions API

Files updated:
- frontend/HighestGoodNetworkApp/src/components/BMDashboard/ItemList/ItemsTable.jsx
- frontend/HighestGoodNetworkApp/src/components/BMDashboard/ItemList/ItemListView.module.css
- frontend/HighestGoodNetworkApp/src/actions/bmdashboard/materialsActions.js
- frontend/HighestGoodNetworkApp/src/utils/URL.js
@netlify
Copy link
Copy Markdown

netlify Bot commented Apr 23, 2026

Deploy Preview for highestgoodnetwork-dev ready!

Name Link
🔨 Latest commit dfa917a
🔍 Latest deploy log https://app.netlify.com/projects/highestgoodnetwork-dev/deploys/69eb35d6134fbd0008549b2f
😎 Deploy Preview https://deploy-preview-4680--highestgoodnetwork-dev.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.

To edit notification comments on pull requests, go to your Netlify project configuration.

- fix invalid regex used to sanitize env keys in vite define config
- normalize non-alphanumeric characters to underscores
- guard against keys starting with digits
- resolve Netlify deploy-preview build failure caused by invalid define names
- fix invalid regex used to sanitize env keys in vite define config
- normalize non-alphanumeric characters to underscores
- guard against keys starting with digits
- resolve Netlify deploy-preview build failure caused by invalid define names
- fix invalid regex used to sanitize env keys in vite define config
- normalize non-alphanumeric characters to underscores
- guard against keys starting with digits
- resolve Netlify deploy-preview build failure caused by invalid define names
- Install joi@18.1.2 (required by setupTests.js vi.mock)
- Remove package-lock.json to resolve mixed npm/yarn conflict
- Regenerate yarn.lock with proper dependency tracking
- Resolves pre-push hook test failures from missing 'joi' import
@one-community one-community added the High Priority - Please Review First This is an important PR we'd like to get merged as soon as possible label Apr 24, 2026
@sonarqubecloud
Copy link
Copy Markdown

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

High Priority - Please Review First This is an important PR we'd like to get merged as soon as possible

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants