0.0.5 • Published 1 year ago

ip-url-kit v0.0.5

Weekly downloads
-
License
MIT
Repository
github
Last release
1 year ago

ip-url-kit

Provides a series of ready to use methods for ip or url

Install

npm install ip-url-kit --save

Usage

import { isIPv4 } from 'ip-url-kit'

console.log(isIPv4('1.1.1.1'))

API

  • isIPv4
  • isIPv4WithPort
  • isIPv4Range
  • isIPv4SameSubnet
  • compareIPv4
  • getIPv4AndPort
  • isIPv6
  • isIPv6WithPort
  • isIPv6MatchPrefix
  • compareIPv6
  • isIPv6Range
  • getIPv6AndPort
  • isURL
  • isURLWithProtocol
isIPv4('1.2.3.4') // true
isIPV4('1') // false

isIPv4WithPort('1.1.1.1:200') // true

isIPv4Range('192.168.124.111', '192.168.124.1', '192.168.124.122') // true


isIpv4SameSubnet('192.168.124.2', '192.168.123.3', '255.255.255.0') // false
isIpv4SameSubnet('192.168.124.2', '192.168.124.3', '255.255.255.0') // true

getIPv4AndPort('1.1.1.1:3000') // ['1.1.1.1','3000']
getIPv4AndPort('1.1.1.1')  // ['1.1.1.1', '']
getIPv4AndPort('any string') // ['any string', '']

compareIPv4('1.1.1.1', '2.2.2.2') // -1
compareIPv4('2.2.2.2', '1.1.1.1') // 1
compareIPv4('1.1.1.1', '1.1.1.1') // 0

isIPv6('::1') // true
isIPv6WithPort('[::1]:300') // true

isIPv6MatchPrefix('ffff:abcd::1', 'ffff::/16') // true
isIPv6MatchPrefix('ffff:abcd::1', 'ffff:dddd::/32') // false

compareIPv6('::1', '::2') // -1
compareIPv6('1::1', '::2') // 1
compareIPv6('1::1', '1::1') // 0

getIPv6AndPort('[::1]:3000') // ['::1','3000']
getIPv6AndPort('[::1]:300033')  // ['[::1]:300033', ''] //not valid
getIPv6AndPort('any string') // ['any string', '']

isURL('a') // false
isURL('a.b') // true
isURL('http://a.b') //true
isURL('http://192.168.124.2:4000') // true

isURLWithProtocol('http://goole.com', 'http') // true
isURLWithProtocol('http://goole.com', 'https') // false
isURLWithProtocol('goole.com', 'http') // false
0.0.3

1 year ago

0.0.5

1 year ago

0.0.4

1 year ago

0.0.2

1 year ago

0.0.1

1 year ago