12.1.6 • Published 9 months ago

@multiformats/mafmt v12.1.6

Weekly downloads
-
License
Apache-2.0 OR MIT
Repository
github
Last release
9 months ago

@multiformats/mafmt

multiformats.io codecov CI

A multiaddr validator

Table of contents

Install

$ npm i @multiformats/mafmt

Browser <script> tag

Loading this module through a script tag will make it's exports available as MultiformatsMafmt in the global namespace.

<script src="https://unpkg.com/@multiformats/mafmt/dist/index.min.js"></script>

Usage

import * as mafmt from '@multiformats/mafmt'

mafmt.DNS.matches('/dns4/ipfs.io') // true

API

mafmt.<FORMAT>.matches(multiaddr)

Where <FORMAT> may be:

<FORMAT>DescriptionExample(s)
DNSa "dns4" or "dns6" format multiaddr/dnsaddr/ipfs.io
DNS4a "dns4" format multiaddr/dns4/ipfs.io
DNS6a "dns6" format multiaddr/dns6/protocol.ai/tcp/80
IPan "ip4" or "ip6" format multiaddr/ip4/127.0.0.1 /ip6/fc00::
TCPa "tcp" over IP format multiaddr/ip4/0.0.7.6/tcp/1234
UDPa "udp" over IP format multiaddr/ip4/0.0.7.6/udp/1234
QUICa "quic" over UDP format multiaddr/ip4/1.2.3.4/udp/1234/quic
UTPa "utp" over UDP format multiaddr/ip4/1.2.3.4/udp/3456/utp
Websocketsa "ws" over TCP or "ws" over DNS format multiaddr/ip4/1.2.3.4/tcp/3456/ws /dnsaddr/ipfs.io/ws
WebSocketsSecurea "wss" over TCP or "wss" over DNS format multiaddr/ip6/::/tcp/0/wss /dnsaddr/ipfs.io/wss
HTTPa "http" over TCP or DNS or "http" over DNS format multiaddr/ip4/127.0.0.1/tcp/90/http /dnsaddr/ipfs.io/http
HTTPSa "https" over TCP or DNS or "https" over DNS format multiaddr/ip4/127.0.0.1/tcp/90/https /dnsaddr/ipfs.io/https
WebRTCStara "p2p" over "p2p-webrtc-star" over Websockets or "p2p" over "p2p-webrtc-star" over WebSocketsSecure format multiaddr/dnsaddr/ipfs.io/wss/p2p-webrtc-star/p2p/QmcgpsyWgH8Y8ajJz1Cu72KnS5uo2Aa2LpzU7kinSoooo4
WebSocketStara "p2p" over "p2p-websocket-star" over Websockets or "p2p" over "p2p-websocket-star" over WebSocketsSecure or "p2p-websocket-star" over Websockets or "p2p-websocket-star" over WebSocketsSecure format multiaddr/ip4/1.2.3.4/tcp/3456/ws/p2p-websocket-star /dnsaddr/localhost/ws/p2p-websocket-star/p2p/QmcgpsyWgH8Y8ajJz1Cu72KnS5uo2Aa2LpzU7kinSoooo4
WebRTCDirecta "p2p-webrtc-direct" over HTTP or "p2p-webrtc-direct" over HTTPS format multiaddr/ip4/1.2.3.4/tcp/3456/http/p2p-webrtc-direct
Reliablea WebSockets or WebSocketsSecure or HTTP or HTTPS or WebRTCStar or WebRTCDirect or TCP or UTP or QUIC format multiaddr/dnsaddr/ipfs.io/wss
Circuit/p2p/QmcgpsyWgH8Y8ajJz1Cu72KnS5uo2Aa2LpzU7kinSoooo4/p2p-circuit/p2p/QmUjNmr8TgJCn1Ao7DvMy4cjoZU15b9bwSCBLE3vwXiwgj
P2P"p2p", aka "ipfs", over Reliable or WebRTCStar or "p2p" format multiaddr/p2p/QmcgpsyWgH8Y8ajJz1Cu72KnS5uo2Aa2LpzU7kinSoooo4 /ip4/127.0.0.1/tcp/20008/ws/p2p/QmUjNmr8TgJCn1Ao7DvMy4cjoZU15b9bwSCBLE3vwXiwgj

Where multiaddr may be:

Returns true/false

API Docs

License

Licensed under either of

Contribution

Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.