Builds a next() payload from normalized callback fields and form values.
Journey node from useJourney.
Form values keyed by normalized field id.
OptionalhandledCallbackTypes: ReadonlySet<any>Callback types already handled by the app via
native integration. Matching integration_required fields are excluded
from submit issues so canSubmit reflects true readiness.
Submit planning result with payload and issues.
When the node contains a PingOne Protect callback and handledCallbackTypes
includes its type, HiddenValueCallback fields whose callback id contains
pingone_risk_evaluation_signals or clientError are always omitted from
the payload, regardless of form values, because the native Protect SDK
writes the risk signal and client error into those sibling hidden fields on
MetadataCallback-derived trees and resubmitting a JS-side value would
overwrite the native-written result. A caller-provided value that differs
from the callback default is dropped with a dev-only console warning.
Headless callback normalization and submit-planning helpers.