-10 it sits below the redirect (20) and the Web NFC scanner (0), so an explicit value is a last resort, taken only when nothing else could capture. It is not part of defaultTapSources(); register it yourself with client.registerTapSource(...) or include it in the tapSources config option.
The provider returns whatever your interface has: a tap URL, an already identified TapInput, or a nullish value (or empty string) when there is nothing to submit. A string is validated through the same core parser as every other source, and an already identified tap is normalized through it too, so this source cannot emit values another source would have rejected or cased differently. An invalid URL throws the core ChipUrlError, so form validation can branch on it.
Example
Parameters
ManualTapProvider
required
Supplies the tap value. Called with the
TapCaptureOptions from
captureTap() (its signal is honored: an aborted capture throws the
signal’s reason). Return a tap URL string, a TapInput, or a nullish value or
empty string for “nothing to submit”. May be sync or async.Returns
object
required
A source named
manual with priority MANUAL_TAP_SOURCE_PRIORITY (-10).
Its isAvailable() is always true; capture() runs the provider and
returns the validated TapResult, or null when the provider yields nothing.number
required
The source’s priority,
-10. Exported for interfaces that order or compare
sources themselves.
