UNPKG

@particle-network/connectkit

Version:
8 lines (7 loc) 2.6 kB
{ "version": 3, "sources": ["../../src/hooks/useWalletConnectUri.ts"], "sourcesContent": ["import type { Connector } from '@particle-network/connector-core';\nimport { useCallback, useState } from 'react';\nimport useConnect from './useConnect';\nimport { useConnector } from './useConnectors';\nimport { useLastConnectorId } from './useLastConnectorId';\n\nexport function useWalletConnectUri(connectorId?: string) {\n const connector = useConnector('walletConnect');\n const { connectAsync } = useConnect();\n const { updateLastConnectorId } = useLastConnectorId();\n\n const [uri, setUri] = useState<string>();\n const [error, setError] = useState<Error>();\n\n const handleMessage = useCallback((message) => {\n const { type, data } = message;\n console.log('walletConnect Message', type, data);\n if (type === 'display_uri') {\n setUri(data);\n }\n }, []);\n\n const connectWalletConnect = useCallback(\n async (connector: Connector) => {\n setError(undefined);\n try {\n await connectAsync({ connector });\n if (connectorId) {\n updateLastConnectorId(connectorId);\n }\n } catch (error: any) {\n console.log('walletConnect requestUri', error);\n setError(error);\n }\n },\n [connectAsync, connectorId, updateLastConnectorId]\n );\n\n const requestUri = useCallback(() => {\n if (connector) {\n connectWalletConnect(connector);\n connector.emitter.on('message', handleMessage);\n }\n }, [connector, connectWalletConnect, handleMessage]);\n\n return {\n available: !!connector,\n uri,\n error,\n requestUri,\n };\n}\n"], "mappings": ";;;;;;;;;;;;;;;;;;AACA,SAAS,aAAa,gBAAgB;AAK/B,SAAS,oBAAoB,aAAsB;AACxD,QAAM,YAAY,aAAa,eAAe;AAC9C,QAAM,EAAE,aAAa,IAAI,WAAW;AACpC,QAAM,EAAE,sBAAsB,IAAI,mBAAmB;AAErD,QAAM,CAAC,KAAK,MAAM,IAAI,SAAiB;AACvC,QAAM,CAAC,OAAO,QAAQ,IAAI,SAAgB;AAE1C,QAAM,gBAAgB,YAAY,CAAC,YAAY;AAC7C,UAAM,EAAE,MAAM,KAAK,IAAI;AAEvB,QAAI,SAAS,eAAe;AAC1B,aAAO,IAAI;AAAA,IACb;AAAA,EACF,GAAG,CAAC,CAAC;AAEL,QAAM,uBAAuB;AAAA,IAC3B,OAAOA,eAAyB;AAC9B,eAAS,MAAS;AAClB,UAAI;AACF,cAAM,aAAa,EAAE,WAAAA,WAAU,CAAC;AAChC,YAAI,aAAa;AACf,gCAAsB,WAAW;AAAA,QACnC;AAAA,MACF,SAASC,QAAP;AAEA,iBAASA,MAAK;AAAA,MAChB;AAAA,IACF;AAAA,IACA,CAAC,cAAc,aAAa,qBAAqB;AAAA,EACnD;AAEA,QAAM,aAAa,YAAY,MAAM;AACnC,QAAI,WAAW;AACb,2BAAqB,SAAS;AAC9B,gBAAU,QAAQ,GAAG,WAAW,aAAa;AAAA,IAC/C;AAAA,EACF,GAAG,CAAC,WAAW,sBAAsB,aAAa,CAAC;AAEnD,SAAO;AAAA,IACL,WAAW,CAAC,CAAC;AAAA,IACb;AAAA,IACA;AAAA,IACA;AAAA,EACF;AACF;AAnDA;AAAA;AAAA;AAEA;AACA;AACA;AAAA;AAAA;", "names": ["connector", "error"] }