diff options
author | kumavis <kumavis@users.noreply.github.com> | 2018-10-21 17:48:15 +0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2018-10-21 17:48:15 +0800 |
commit | 6d09f60bbfe5ee737ff7a138260cc33e3db5ca46 (patch) | |
tree | a0642d45087aca57ad3e06bd93dac6bfc042f233 /app/scripts/lib/ipfsContent.js | |
parent | b0c649a4e3c68293e08e764bbf4d53939df88e2d (diff) | |
download | tangerine-wallet-browser-6d09f60bbfe5ee737ff7a138260cc33e3db5ca46.tar.gz tangerine-wallet-browser-6d09f60bbfe5ee737ff7a138260cc33e3db5ca46.tar.zst tangerine-wallet-browser-6d09f60bbfe5ee737ff7a138260cc33e3db5ca46.zip |
ens-ipfs - refactor for readability (#5568)
* ens-ipfs - refactor for readability
* ens-ipfs - use official ipfs gateway for better performance
* lint - remove unused code
* ens-ipfs - support path and search
* lint - gotta love that linter
* ens-ipfs - improve loading page formatting
* ens-ipfs - loading - redirect to 404 after 1 min timeout
* ens-ipfs - destructure for cleaner code
Diffstat (limited to 'app/scripts/lib/ipfsContent.js')
-rw-r--r-- | app/scripts/lib/ipfsContent.js | 46 |
1 files changed, 0 insertions, 46 deletions
diff --git a/app/scripts/lib/ipfsContent.js b/app/scripts/lib/ipfsContent.js deleted file mode 100644 index 8b08453c4..000000000 --- a/app/scripts/lib/ipfsContent.js +++ /dev/null @@ -1,46 +0,0 @@ -const extension = require('extensionizer') -const resolver = require('./resolver.js') - -module.exports = function (provider) { - function ipfsContent (details) { - const name = details.url.substring(7, details.url.length - 1) - let clearTime = null - if (/^.+\.eth$/.test(name) === false) return - - extension.tabs.query({active: true}, tab => { - extension.tabs.update(tab.id, { url: 'loading.html' }) - - clearTime = setTimeout(() => { - return extension.tabs.update(tab.id, { url: '404.html' }) - }, 60000) - - resolver.resolve(name, provider).then(ipfsHash => { - clearTimeout(clearTime) - let url = 'https://ipfs.infura.io/ipfs/' + ipfsHash - return fetch(url, { method: 'HEAD' }).then(response => response.status).then(statusCode => { - if (statusCode !== 200) return extension.tabs.update(tab.id, { url: '404.html' }) - extension.tabs.update(tab.id, { url: url }) - }) - .catch(err => { - url = 'https://ipfs.infura.io/ipfs/' + ipfsHash - extension.tabs.update(tab.id, {url: url}) - return err - }) - }) - .catch(err => { - clearTimeout(clearTime) - const url = err === 'unsupport' ? 'unsupport' : 'error' - extension.tabs.update(tab.id, {url: `${url}.html?name=${name}`}) - }) - }) - return { cancel: true } - } - - extension.webRequest.onErrorOccurred.addListener(ipfsContent, {urls: ['*://*.eth/'], types: ['main_frame']}) - - return { - remove () { - extension.webRequest.onErrorOccurred.removeListener(ipfsContent) - }, - } -} |