Comparing version 0.0.4 to 0.1.0
22
index.js
@@ -5,2 +5,3 @@ const base58 = require('bs58') | ||
const urlPattern = /^https?:\/\/[^\/]+\/(ip(f|n)s)\/((\w+).*)/ | ||
const pathPattern = /^\/(ip(f|n)s)\/((\w+).*)/ | ||
@@ -17,4 +18,4 @@ function isMultihash (hash) { | ||
function isIpfsUrl (url) { | ||
const match = url.match(urlPattern) | ||
function isIpfs (input, pattern) { | ||
const match = input.match(pattern) | ||
if (!match) { | ||
@@ -32,4 +33,4 @@ return false | ||
function isIpnsUrl (url) { | ||
const match = url.match(urlPattern) | ||
function isIpns (input, pattern) { | ||
const match = input.match(pattern) | ||
if (!match) { | ||
@@ -48,6 +49,11 @@ return false | ||
multihash: isMultihash, | ||
ipfsUrl: isIpfsUrl, | ||
ipnsUrl: isIpnsUrl, | ||
url: (url) => (isIpfsUrl(url) || isIpnsUrl(url)), | ||
urlPattern: urlPattern | ||
ipfsUrl: (url) => isIpfs(url, urlPattern), | ||
ipnsUrl: (url) => isIpns(url, urlPattern), | ||
url: (url) => (isIpfs(url, urlPattern) || isIpns(url, urlPattern)), | ||
urlPattern: urlPattern, | ||
ipfsPath: (path) => isIpfs(path, pathPattern), | ||
ipnsPath: (path) => isIpns(path, pathPattern), | ||
path: (path) => (isIpfs(path, pathPattern) || isIpns(path, pathPattern)), | ||
pathPattern: pathPattern, | ||
urlOrPath: (x) => (isIpfs(x, urlPattern) || isIpns(x, urlPattern) || isIpfs(x, pathPattern) || isIpns(x, pathPattern)) | ||
} |
{ | ||
"name": "is-ipfs", | ||
"version": "0.0.4", | ||
"version": "0.1.0", | ||
"description": "A set of utilities to help identify IPFS resources", | ||
"main": "index.js", | ||
"scripts": { | ||
"test": "tape test.js", | ||
"test": "tape test-*.js", | ||
"lint": "standard" | ||
@@ -9,0 +9,0 @@ }, |
@@ -23,3 +23,3 @@ is-ipfs | ||
isIPFS.url('https://ipfs.io/ipfs/QmYjtig7VJQ6XsnUjqqJvj7QaMcCAwtrgNdahSiFofrE7o') // true | ||
isIPFS.url('https://ipfs.io/ipfs/github.com') // true | ||
isIPFS.url('https://ipfs.io/ipns/github.com') // true | ||
isIPFS.url('https://github.com/ipfs/js-ipfs/blob/master/README.md') // false | ||
@@ -29,6 +29,6 @@ isIPFS.url('https://google.com') // false | ||
isIPFS.ipfsUrl('https://ipfs.io/ipfs/QmYjtig7VJQ6XsnUjqqJvj7QaMcCAwtrgNdahSiFofrE7o') // true | ||
isIPFS.ipfsUrl('https://ipfs.io/ipfs/github.com') // false | ||
isIPFS.ipfsUrl('https://ipfs.io/ipfs/invalid-hash') // false | ||
isIPFS.ipnsUrl('https://ipfs.io/ipfs/QmYjtig7VJQ6XsnUjqqJvj7QaMcCAwtrgNdahSiFofrE7o') // false | ||
isIPFS.ipnsUrl('https://ipfs.io/ipfs/github.com') // true | ||
isIPFS.ipnsUrl('https://ipfs.io/ipns/github.com') // true | ||
``` | ||
@@ -35,0 +35,0 @@ |
Sorry, the diff of this file is not supported yet
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
3820
5
46