Typed input primitives for EVM data entry.
Thin wrappers around Html.input with semantic class names and appropriate
type / inputmode attributes. No validation -- the host app calls
T.address, BigInt.fromString, etc. on the string value.
The address, bigInt, and bytes inputs accept a valid : Bool field.
Pass False to add the --invalid modifier class (e.g. after a failed parse).
Web3.Ui.Input.address []
{ value = model.toAddress, onInput = ToAddressChanged, valid = True }
Web3.Ui.Input.bigInt []
{ value = model.amount, onInput = AmountChanged, valid = True }
Web3.Ui.Input.bool []
{ value = model.approve, onToggle = ApproveToggled }Text input for a BigInt / uint256 value.
Uses inputmode="numeric" to show the numeric keyboard on mobile.
Adds web3-input-bigint--invalid when valid is False.
CSS class: web3-input-bigint
Checkbox input for a boolean value.
CSS class: web3-input-bool
Plain text input.
CSS class: web3-input-text
Text input for hex bytes (0x...).
Adds web3-input-bytes--invalid when valid is False.
CSS class: web3-input-bytes
Text input for Ethereum address entry (
0x...).Adds
web3-input-address--invalidwhenvalidisFalse.CSS class:
web3-input-address