What problem does it solve?
Prevents inconsistent or unsafe UI wiring for action buttons and side-effects on Angular Portal list and detail screens by standardizing placement, confirmation, permission gates, validation, and post-action reload behavior.
Core Features & Use Cases
- Action placement by scope: routes actions to detail headerRight, list toolbar, selector.actions (bulk), or row action column based on single-record vs selection context.
- Workflow transitions with safety: supports approve/reject/submit/withdraw-style transitions using confirmations (including confirm-with-input when a reason/note is required).
- Permission + state gating: shows/hides buttons based on CREATE/UPDATE/DETAIL state, business flags (e.g., approvable/editable/exportable), and
*sdPermission directives.
- Save-and-submit pattern: validates the form first, then calls create/update followed by workflow transition using the returned id.
- Bulk operations: confirms with selected row count, executes bulk service calls in one round-trip, and reloads the table to avoid stale status.
Quick Start
Use angular-portal-actions when adding an action button like approve/reject/export or a bulk approve on a list or detail screen, and ensure the button appears in the correct place for the current state and is gated by the proper sdPermission.