UNPKG

@stacksjs/ts-validation

Version:

A simple TypeScript starter kit using Bun.

25 lines (19 loc) 629 B
declare const IPv4AddressFormat: unknown; declare const IPv6AddressRegExp: unknown; declare interface IsIPOptions { version?: number } export default function isIP(ipAddress: string, options: IsIPOptions = {}): boolean { assertString(ipAddress) const version = (typeof options === 'object' ? options.version : arguments[1]) || '' if (!version) { return isIP(ipAddress, { version: 4 }) || isIP(ipAddress, { version: 6 }) } if (version.toString() === '4') { return IPv4AddressRegExp.test(ipAddress) } if (version.toString() === '6') { return IPv6AddressRegExp.test(ipAddress) } return false };