@iota/validators
v1.0.0-beta.30
Published
Collection of guards and validators, useful in IOTA development.
Downloads
43,194
Readme
@iota/validators
Collection of guards and validators, useful in IOTA development.
Installation
Instal using npm:
npm install @iota/validators
or using yarn:
yarn add @iota/validators
API Reference
validators.isAddress(address)
Summary: Validates the checksum of the given address.
| Param | Type | Description | | --- | --- | --- | | address | string | Address with a checksum |
This method takes an address with a checksum and validates that the checksum is correct.
Related methods
To generate a new address with a checksum, use the getNewAddress()
method.
Returns: boolean - valid - Whether the checksum is valid
Example
let valid = Validator.isAddress('9FNJWLMBECSQDKHQAGDHDPXBMZFMQIMAFAUIQTDECJVGKJBKHLEBVU9TWCTPRJGYORFDSYENIQKBVSYKW9NSLGS9UW');
validators~isTrits(input)
| Param | Type | | --- | --- | | input | any |
Checks if input is an Int8Array
of trit values; -1, 0, 1
.
validators~isNullTrits(trits)
| Param | Type | | --- | --- | | trits | Int8Array |
Checks if trits are NULL.
validators~isTrytes(trytes, [length])
| Param | Type | Default | | --- | --- | --- | | trytes | string | | | [length] | string | number | "'1,'" |
Checks if input is correct trytes consisting of [9A-Z]; optionally validate length
validators~isTrytesOfExactLength(trytes, length)
| Param | Type | | --- | --- | | trytes | string | | length | number |
validators~isTrytesOfMaxLength(trytes, length)
| Param | Type | | --- | --- | | trytes | string | | length | number |
validators~isEmpty(hash)
| Param | Type | | --- | --- | | hash | string |
Checks if input contains 9
s only.
validators~isHash(hash)
| Param | Type | | --- | --- | | hash | string |
Checks if input is correct hash (81 trytes) or address with checksum (90 trytes)
validators~isInput(address)
| Param | Type | | --- | --- | | address | string |
Checks if input is valid input object. Address can be passed with or without checksum. It does not validate the checksum.
validators~isTag(tag)
| Param | Type | | --- | --- | | tag | string |
Checks that input is valid tag trytes.
validators~isTransfer(transfer)
| Param | Type | | --- | --- | | transfer | Transfer |
Checks if input is valid transfer
object.
validators~isUri(uri)
| Param | Type | | --- | --- | | uri | string |
Checks that a given URI
is valid
Valid Examples:
udp://[2001:db8:a0b:12f0::1]:14265
udp://[2001:db8:a0b:12f0::1]
udp://8.8.8.8:14265
udp://domain.com
udp://domain2.com:14265
validators~validate()
Throws:
- Error error
Runs each validator in sequence, and throws on the first occurence of invalid data.
Validators are passed as arguments and executed in given order.
You might want place validate()
in promise chains before operations that require valid inputs,
taking advantage of built-in promise branching.
Example
try {
validate([
value, // Given value
isTrytes, // Validator function
'Invalid trytes' // Error message
])
} catch (err) {
console.log(err.message) // 'Invalid trytes'
}