workflows-boolean-assignment-expressions ← workflows-boolean-expressions-followups
merged 11:08AM - 30 Jul 26 UTC
Stacked on `workflows-boolean-assignment-expressions` — only the last commit is …new. Meant as follow-ups to review together with (or fold into) that branch before it ships.
Previously, `BooleanControl` kept a local copy of the plain/dynamic value conversion (so fixes to `ExpressionWrapper`'s converters silently did not apply to booleans), the wrapper carried `@expressionMode`/`@modeItems`/`@onModeChange`/`@modeControlClass` override hooks that only this one control used, and the full-width control wrapper defeated FormKit's end-alignment — the plain toggle sat stranded mid-row with the mode switcher at the far edge.
This change folds the boolean conversion into `plainValueForModeToggle` beside the existing array handling (preserving the `={{ true }}` literal round-trip your tests pin down), removes the now-unused wrapper hooks, derives the switcher positioning in CSS from FormKit's own `form-kit__field-toggle` class instead of a component arg, and re-aligns the toggle flush to the field's end.
All the tests on the base branch pass unchanged except one assertion updated to the new positioning contract (`--toggle` class → rendered inside `form-kit__field-toggle`).