From 6e354939c68c1cd4db227e338ad69c29817b200a Mon Sep 17 00:00:00 2001 From: Nikita Yutanov Date: Sat, 2 Sep 2023 16:42:39 +0300 Subject: [PATCH] Add timeout option --- utils/gear-hooks/package.json | 2 +- utils/gear-hooks/src/context/Api.tsx | 8 ++++++-- 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/utils/gear-hooks/package.json b/utils/gear-hooks/package.json index 46972af70b..bc1ad3d331 100644 --- a/utils/gear-hooks/package.json +++ b/utils/gear-hooks/package.json @@ -1,6 +1,6 @@ { "name": "@gear-js/react-hooks", - "version": "0.6.0", + "version": "0.6.1", "description": "React hooks used across Gear applications", "author": "Gear Technologies", "license": "GPL-3.0", diff --git a/utils/gear-hooks/src/context/Api.tsx b/utils/gear-hooks/src/context/Api.tsx index 3b65fd435c..cdbe0436a7 100644 --- a/utils/gear-hooks/src/context/Api.tsx +++ b/utils/gear-hooks/src/context/Api.tsx @@ -1,6 +1,7 @@ import { createContext, useEffect, useState } from 'react'; import { GearApi } from '@gear-js/api'; import { ProviderProps } from 'types'; +import { WsProvider } from '@polkadot/api'; type Value = { api: GearApi; @@ -9,18 +10,21 @@ type Value = { type Props = ProviderProps & { providerAddress: string; + timeout?: number; }; const ApiContext = createContext({} as Value); -function ApiProvider({ providerAddress, children }: Props) { +function ApiProvider({ providerAddress, timeout, children }: Props) { const [api, setApi] = useState(); const { Provider } = ApiContext; const value = { api: api as GearApi, isApiReady: !!api }; useEffect(() => { - GearApi.create({ providerAddress }).then(setApi); + const provider = new WsProvider(providerAddress, undefined, undefined, timeout); + + GearApi.create({ provider }).then(setApi); }, []); return {children};