From 4fabd65c864fcc759d1344d5d3531ce784c54119 Mon Sep 17 00:00:00 2001 From: Matthias Kretschmann Date: Sun, 12 Sep 2021 21:19:07 +0200 Subject: [PATCH] config changes --- src/components/Add.tsx | 12 ++---------- src/hooks/use-ipfs-api.tsx | 20 +++++++++++++++----- 2 files changed, 17 insertions(+), 15 deletions(-) diff --git a/src/components/Add.tsx b/src/components/Add.tsx index 923be69..3facbae 100644 --- a/src/components/Add.tsx +++ b/src/components/Add.tsx @@ -1,21 +1,13 @@ import React, { useState, ReactElement } from 'react' -import { ipfsNodeUri, ipfsGateway } from '../../site.config' +import { ipfsGateway } from '../../site.config' import Dropzone, { FileDropzone } from './Dropzone' import styles from './Add.module.css' import Loader from './Loader' import useIpfsApi from '../hooks/use-ipfs-api' import { FileIpfs } from '../@types/ipfs' -const { hostname, port, protocol } = new URL(ipfsNodeUri) - -const ipfsConfig = { - protocol: protocol.replace(':', ''), - host: hostname, - port: Number(port) || 443 -} - export default function Add(): ReactElement { - const { ipfs, isIpfsReady, ipfsError, addFiles } = useIpfsApi(ipfsConfig) + const { ipfs, isIpfsReady, ipfsError, addFiles } = useIpfsApi() const [files, setFiles] = useState() const [loading, setLoading] = useState(false) const [message] = useState() diff --git a/src/hooks/use-ipfs-api.tsx b/src/hooks/use-ipfs-api.tsx index e232919..8bbcb7d 100644 --- a/src/hooks/use-ipfs-api.tsx +++ b/src/hooks/use-ipfs-api.tsx @@ -1,9 +1,11 @@ import { useCallback, useEffect, useState } from 'react' -import { create, IPFSHTTPClient, Options } from 'ipfs-http-client' +import { create } from 'ipfs-http-client' +import type { IPFSHTTPClient } from 'ipfs-http-client' import type { CIDVersion } from 'multiformats/cid' +import { ipfsNodeUri } from '../../site.config' import { formatBytes } from '../utils' import { FileDropzone } from '../components/Dropzone' -import { FileIpfs } from '../@types/ipfs' +import type { FileIpfs } from '../@types/ipfs' export interface IpfsApiValue { ipfs: IPFSHTTPClient | undefined @@ -13,7 +15,15 @@ export interface IpfsApiValue { addFiles: (files: FileDropzone[]) => Promise } -export default function useIpfsApi(config: Options): IpfsApiValue { +const { hostname, port, protocol } = new URL(ipfsNodeUri) + +const ipfsConfig = { + protocol: protocol.replace(':', ''), + host: hostname, + port: Number(port) || 443 +} + +export default function useIpfsApi(): IpfsApiValue { const [ipfs, setIpfs] = useState() const [version, setVersion] = useState() const [isIpfsReady, setIpfsReady] = useState(Boolean(ipfs)) @@ -52,7 +62,7 @@ export default function useIpfsApi(config: Options): IpfsApiValue { async function initIpfs() { try { - const ipfs = create(config) + const ipfs = create(ipfsConfig) setIpfs(ipfs) const version = await ipfs.version() setVersion(version.version) @@ -73,7 +83,7 @@ export default function useIpfsApi(config: Options): IpfsApiValue { setIpfsError(undefined) } } - }, [config, ipfs]) + }, [ipfs]) return { ipfs, version, isIpfsReady, ipfsError, addFiles } }