UNPKG

@reservoir0x/relay-kit-hooks

Version:

Relay is the Fastest and Cheapest Way to Bridge and Transact Across Chains.

62 lines 2.1 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.queryExecutionStatus = void 0; const tslib_1 = require("tslib"); const relay_sdk_1 = require("@reservoir0x/relay-sdk"); const fetcher_js_1 = tslib_1.__importDefault(require("../fetcher.js")); const react_query_1 = require("@tanstack/react-query"); const react_1 = require("react"); const queryExecutionStatus = function (baseApiUrl = relay_sdk_1.MAINNET_RELAY_API, options, headers) { return new Promise((resolve, reject) => { const url = new URL(`${baseApiUrl}/intents/status/v2`); let query = { ...options }; (0, relay_sdk_1.setParams)(url, query); (0, fetcher_js_1.default)(url.href, headers) .then((response) => { const request = { url: url.href, method: 'get' }; resolve({ ...response, request }); }) .catch((e) => { reject(e); }); }); }; exports.queryExecutionStatus = queryExecutionStatus; function default_1(client, options, onRequest, onResponse, queryOptions) { const queryKey = ['useExecutionStatus', options]; const response = react_query_1.useQuery({ queryKey: queryKey, queryFn: () => { onRequest?.(); const promise = (0, exports.queryExecutionStatus)(client?.baseApiUrl, options); promise.then((response) => { onResponse?.(response); }); return promise; }, enabled: client !== undefined && options !== undefined, retry: false, ...queryOptions }); return (0, react_1.useMemo)(() => ({ ...response, data: response.error ? undefined : response.data, queryKey }), [ response.data, response.error, response.isLoading, response.isFetching, response.isRefetching, response.dataUpdatedAt, queryKey ]); } exports.default = default_1; //# sourceMappingURL=useExecutionStatus.js.map