1.0.0-alpha.7 • Published 5 years ago

@helixnetwork/validators v1.0.0-alpha.7

Weekly downloads
8
License
MIT
Repository
github
Last release
5 years ago

.# @helixnetwork/validators

Collection of guards and validators, useful in Helix development.

Installation

Instal using npm:

npm install @helixnetwork/validators

or using yarn:

yarn add @helixnetwork/validators

API Reference

validators~isTxHex(txs, length)

ParamTypeDefault
txsstring
lengthstring | number"'1,'"

Checks if input is correct TxHex consisting of 0-9A-F; optionally validate length

validators~isTxHexOfExactLength(txs, length)

ParamType
txsstring
lengthnumber

validators~isTxHexOfMaxLength(txs, length)

ParamType
txsstring
lengthnumber

validators~isEmpty(hash)

ParamType
hashstring

Checks if input contains 0s only.

validators~isEmptyBytes(bytes)

ParamType
bytesTxBytes

Checks if input contains 0s only.

validators~isHash(hash)

ParamType
hashTxHex

Checks if input is correct hash (64 txs) or address with checksum (72 txs)

validators~isAddress(hash)

ParamType
hashstring

Checks if input is correct address or address with checksum (72 txs)

validators~isInput(address)

ParamType
addressTxHex

Checks if input is valid input object. Address can be passed with or without checksum. It does not validate the checksum.

validators~isTag(tag)

ParamType
tagTxHex

Checks that input is valid tag txs.

validators~isTransfer(transfer)

ParamType
transferTransfer

Checks if input is valid transfer object.

validators~isUri(uri)

ParamType
uristring

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
    isTxHex, // Validator function
    'Invalid TxHex' // Error message
  ])
} catch (err) {
  console.log(err.message) // 'Invalid TxHex'
}

validators~isAddress(address)

ParamTypeDescription
addressstringAddress txs, with checksum

Checks integrity of given address by validating the checksum.