TaskBoard - Transition Rules
Restrict movement between workflow columns and require confirmation for guarded transitions.
#Usage
import { TaskBoard } from '@primeui/vue-taskboard';<TaskBoard.Root v-model:tasks="tasks" data-key="id" column-field="columnId" :columns="columns" @card-move="onCardMove" @card-drop-blocked="onCardDropBlocked">
<!-- TaskBoard parts -->
<TaskBoard.DragConfirm />
</TaskBoard.Root>Column transition fields define allowed sources, allowed targets, required fields, and optional confirmation. TaskBoard.DragConfirm renders the confirmation surface for guarded moves.
#Transition Fields
| Field | Use |
|---|---|
allowedTransitionsFrom | Source columns that may move into this column. |
allowedTransitionsTo | Target columns this column may move into. |
requiredFields | Task fields required before entering the column. |
confirmOnEnter | Boolean or message string for a confirmation step. |
Workflow checks run in this order: transition rules, WIP limit, required-field validation, then confirmation. The first failing check blocks the move and emits @card-drop-blocked, except confirmation, which stores a pending move for TaskBoard.DragConfirm.
#Block Reasons
| Reason | Trigger |
|---|---|
transition-rule | Source or target transition lists reject the move. |
wip-limit | The target column is over capacity. |
validation | The target column has missing requiredFields. |
confirmation-required | The target column has confirmOnEnter. |
#Confirmation Surface
TaskBoard.DragConfirm reads pending move state and calls confirmPendingMove or cancelPendingMove through context.
#Rules
The transition-rules sample blocks invalid workflow moves and explains the blocked reason.
#Confirmation
The confirmation sample renders an explicit confirm or cancel flow before a guarded move is applied.