@dynamic-labs-sdk/react-hooks 1.8.0 → 1.8.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.esm.js CHANGED
@@ -1,5 +1,5 @@
1
1
  import { assertPackageVersion } from "@dynamic-labs-sdk/assert-package-version";
2
- import { BaseError, acknowledgeRecoveryCodes, addCoinbaseOnrampOrderEventListener, addNetwork, authenticateMfaRecoveryCode, authenticatePasskeyMFA, authenticateTotpMfaDevice, checkStepUpAuth, completeDeviceRegistration, completeSocialRedirect, confirmTransaction, connectAndVerifyWithWalletProvider, connectWithWalletProvider, consumeMfaToken, createCoinbaseOnrampOrder, createCryptoDotComPayment, createNewMfaRecoveryCodes, deleteMfaDevice, deletePasskey, deleteUser, executeSwapTransaction, getActiveNetworkData, getAvailableWalletProvidersData, getBalanceForAddress, getCoinbaseBuyUrl, getGoogleDriveBackupReadiness, getKrakenWhitelistedAddresses, getMfaDevices, getMfaMethods, getMfaRecoveryCodes, getMoonPayCurrencies, getMoonPayUrl, getMultichainTokenBalances, getNativeBalance, getNetworksData, getPasskeys, getRegisteredDevices, getSwapQuote, getSwapStatus, getTokenBalances, getTransactionHistory, getUserSocialAccounts, getWalletAccounts, getWalletConnectCatalog, getWalletOptionsCatalogue, isCaptchaRequired, isUserMissingMfaAuth, isUserOnboardingComplete, logout, onEvent, onWalletProviderEvent, onceEvent, proveWalletAccountOwnership, refreshAuth, registerPasskey, registerTotpMfaDevice, removeWalletAccount, requestExternalAuthElevatedToken, revokeAllRegisteredDevices, revokeRegisteredDevice, sendEmailOTP, sendSmsOTP, setDefaultMfaDevice, signInWithExternalJwt, signInWithPasskey, signInWithSocialPopUp, signInWithSocialRedirect, signMessage, switchActiveNetwork, transferAmount, transferWalletAccount, unlinkSocialAccount, updateUser, verifyOTP, verifyWalletAccount, waitForClientInitialized } from "@dynamic-labs-sdk/client";
2
+ import { BaseError, acknowledgeRecoveryCodes, addCoinbaseOnrampOrderEventListener, addNetwork, authenticateMfaRecoveryCode, authenticatePasskeyMFA, authenticateTotpMfaDevice, checkStepUpAuth, completeDeviceRegistration, completeSocialRedirect, confirmTransaction, connectAndVerifyWithWalletProvider, connectWithWalletProvider, consumeMfaToken, createCoinbaseOnrampOrder, createCryptoDotComPayment, createKrakenExchangeTransfer, createNewMfaRecoveryCodes, deleteMfaDevice, deletePasskey, deleteUser, executeSwapTransaction, getActiveNetworkData, getAvailableWalletProvidersData, getBalanceForAddress, getCoinbaseBuyUrl, getGoogleDriveBackupReadiness, getKrakenAccounts, getKrakenWhitelistedAddresses, getMfaDevices, getMfaMethods, getMfaRecoveryCodes, getMoonPayCurrencies, getMoonPayUrl, getMultichainTokenBalances, getNativeBalance, getNetworksData, getPasskeys, getRegisteredDevices, getSwapQuote, getSwapStatus, getTokenBalances, getTransactionHistory, getUserSocialAccounts, getWalletAccounts, getWalletConnectCatalog, getWalletOptionsCatalogue, isCaptchaRequired, isUserMissingMfaAuth, isUserOnboardingComplete, logout, onEvent, onWalletProviderEvent, onceEvent, proveWalletAccountOwnership, refreshAuth, registerPasskey, registerTotpMfaDevice, removeWalletAccount, requestExternalAuthElevatedToken, revokeAllRegisteredDevices, revokeRegisteredDevice, sendEmailOTP, sendSmsOTP, setDefaultMfaDevice, signInWithExternalJwt, signInWithPasskey, signInWithSocialPopUp, signInWithSocialRedirect, signMessage, switchActiveNetwork, transferAmount, transferWalletAccount, unlinkSocialAccount, updateUser, verifyOTP, verifyWalletAccount, waitForClientInitialized } from "@dynamic-labs-sdk/client";
3
3
  import { useMutation, useQuery, useQueryClient } from "@tanstack/react-query";
4
4
  import { createContext, useContext, useEffect, useMemo, useRef } from "react";
5
5
  import { jsx } from "react/jsx-runtime";
@@ -7,7 +7,7 @@ import { getCore } from "@dynamic-labs-sdk/client/core";
7
7
 
8
8
  //#region package.json
9
9
  var name = "@dynamic-labs-sdk/react-hooks";
10
- var version = "1.8.0";
10
+ var version = "1.8.2";
11
11
 
12
12
  //#endregion
13
13
  //#region src/modules/DynamicContext/DynamicContext.ts
@@ -755,17 +755,45 @@ const useGoogleDriveBackupReadiness = ({ queryParams } = {}) => useBaseQuery({
755
755
  //#endregion
756
756
  //#region src/hooks/useInitStatus/useInitStatus.ts
757
757
  /**
758
- * Returns the current initialization status of the Dynamic client.
758
+ * Returns the current initialization status of the Dynamic client, plus the
759
+ * error that caused initialization to fail (when it did).
759
760
  *
760
- * Possible values: 'uninitialized', 'in-progress', 'finished', 'failed'.
761
+ * Exposes only `data` (the reactive init status), `error` and `isError` —
762
+ * see {@link UseInitStatusResult}. Possible `data` values: `'uninitialized'`,
763
+ * `'in-progress'`, `'finished'`, `'failed'`. When `data === 'failed'`, `error`
764
+ * carries the failure reason.
765
+ *
766
+ * @example
767
+ * ```tsx
768
+ * const { data: status, error } = useInitStatus();
769
+ * if (status === 'failed') return <InitErrorScreen message={error?.message} />;
770
+ * if (status !== 'finished') return <LoadingScreen />;
771
+ * return <App />;
772
+ * ```
773
+ *
774
+ * @not-instrumented
761
775
  */
762
- const useInitStatus = () => useBaseState({
763
- defaultValue: "uninitialized",
764
- event: "initStatusChanged",
765
- queryKey: ["useInitStatus"],
766
- selector: (client) => client.initStatus,
767
- skipWaitForInit: true
768
- });
776
+ const useInitStatus = () => {
777
+ const { data } = useBaseState({
778
+ defaultValue: {
779
+ error: null,
780
+ status: "uninitialized"
781
+ },
782
+ event: "initStatusChanged",
783
+ queryKey: ["useInitStatus"],
784
+ selector: (client) => ({
785
+ error: client.initError,
786
+ status: client.initStatus
787
+ }),
788
+ skipWaitForInit: true
789
+ });
790
+ const error = data?.error ?? null;
791
+ return {
792
+ data: data?.status,
793
+ error,
794
+ isError: error !== null
795
+ };
796
+ };
769
797
 
770
798
  //#endregion
771
799
  //#region src/hooks/useIsCaptchaRequired/useIsCaptchaRequired.ts
@@ -831,6 +859,38 @@ const useIsUserOnboardingComplete = () => useBaseState({
831
859
  selector: (client) => client.user === null ? false : isUserOnboardingComplete(client)
832
860
  });
833
861
 
862
+ //#endregion
863
+ //#region src/hooks/useKrakenAccounts/useKrakenAccounts.ts
864
+ /**
865
+ * Wraps `getKrakenAccounts` from `@dynamic-labs-sdk/client`. Returns the authenticated user's Kraken accounts (with balances), optionally filtered by chain/network.
866
+ *
867
+ * @example
868
+ * ```tsx
869
+ * const { data: accounts, isLoading } = useKrakenAccounts();
870
+ * ```
871
+ */
872
+ const useKrakenAccounts = ({ queryParams, ...args } = {}) => useBaseQuery({
873
+ queryFn: (client) => getKrakenAccounts(args, client),
874
+ queryKey: ["useKrakenAccounts", args],
875
+ queryParams
876
+ });
877
+
878
+ //#endregion
879
+ //#region src/hooks/useKrakenExchangeTransfer/useKrakenExchangeTransfer.ts
880
+ /**
881
+ * Wraps `createKrakenExchangeTransfer` from `@dynamic-labs-sdk/client`. Call `mutate({ accountId, ... })` to send crypto from a Kraken account (see `useKrakenAccounts`) to a whitelisted address (see `useKrakenWhitelistedAddresses`); the resolved `data` is the created transfer.
882
+ *
883
+ * @example
884
+ * ```tsx
885
+ * const { mutate: transfer, data } = useKrakenExchangeTransfer();
886
+ * transfer({ accountId, asset, amount, address });
887
+ * ```
888
+ */
889
+ const useKrakenExchangeTransfer = ({ mutateParams } = {}) => useBaseMutation({
890
+ mutateParams,
891
+ mutationFn: ({ client, variables }) => createKrakenExchangeTransfer(variables, client)
892
+ });
893
+
834
894
  //#endregion
835
895
  //#region src/hooks/useKrakenWhitelistedAddresses/useKrakenWhitelistedAddresses.ts
836
896
  /**
@@ -1826,5 +1886,5 @@ const useWalletProviderEvent = ({ callback, event, walletProviderKey }) => {
1826
1886
  assertPackageVersion(name, version);
1827
1887
 
1828
1888
  //#endregion
1829
- export { DynamicProvider, useAcknowledgeRecoveryCodes, useActiveNetworkData, useAddNetwork, useAuthenticateMfaRecoveryCode, useAuthenticatePasskeyMfa, useAuthenticateTotpMfaDevice, useAvailableWalletProvidersData, useBalanceForAddress, useCheckStepUpAuth, useCoinbaseBuyUrl, useCoinbaseOnrampOrderEventListener, useCompleteDeviceRegistration, useCompleteSocialRedirect, useConfirmTransaction, useConnectAndVerifyWithWalletProvider, useConnectWithWalletProvider, useConsumeMfaToken, useCreateCoinbaseOnrampOrder, useCreateCryptoDotComPayment, useCreateNewMfaRecoveryCodes, useDeleteMfaDevice, useDeletePasskey, useDeleteUser, useDynamicClient, useEvent, useExecuteSwapTransaction, useGoogleDriveBackupReadiness, useInitStatus, useIsCaptchaRequired, useIsUserMissingMfaAuth, useIsUserOnboardingComplete, useKrakenWhitelistedAddresses, useLogout, useMfaDevices, useMfaMethods, useMfaRecoveryCodes, useMoonPayCurrencies, useMoonPayUrl, useMultichainTokenBalances, useNativeBalance, useNetworksData, useOnceEvent, usePasskeys, useProveWalletAccountOwnership, useRefreshAuth, useRegisterPasskey, useRegisterTotpMfaDevice, useRegisteredDevices, useRemoveWalletAccount, useRequestExternalAuthElevatedToken, useRevokeAllRegisteredDevices, useRevokeRegisteredDevice, useSendEmailOtp, useSendSmsOtp, useSessionExpiresAt, useSetDefaultMfaDevice, useSignInWithExternalJwt, useSignInWithPasskey, useSignInWithSocialPopUp, useSignInWithSocialRedirect, useSignMessage, useSwapQuote, useSwapStatus, useSwitchActiveNetwork, useTokenBalances, useTransactionHistory, useTransferAmount, useTransferWalletAccount, useUnlinkSocialAccount, useUpdateUser, useUser, useUserSocialAccounts, useVerifyOtp, useVerifyWalletAccount, useWalletAccounts, useWalletConnectCatalog, useWalletOptionsCatalogue, useWalletProviderEvent };
1889
+ export { DynamicProvider, useAcknowledgeRecoveryCodes, useActiveNetworkData, useAddNetwork, useAuthenticateMfaRecoveryCode, useAuthenticatePasskeyMfa, useAuthenticateTotpMfaDevice, useAvailableWalletProvidersData, useBalanceForAddress, useCheckStepUpAuth, useCoinbaseBuyUrl, useCoinbaseOnrampOrderEventListener, useCompleteDeviceRegistration, useCompleteSocialRedirect, useConfirmTransaction, useConnectAndVerifyWithWalletProvider, useConnectWithWalletProvider, useConsumeMfaToken, useCreateCoinbaseOnrampOrder, useCreateCryptoDotComPayment, useCreateNewMfaRecoveryCodes, useDeleteMfaDevice, useDeletePasskey, useDeleteUser, useDynamicClient, useEvent, useExecuteSwapTransaction, useGoogleDriveBackupReadiness, useInitStatus, useIsCaptchaRequired, useIsUserMissingMfaAuth, useIsUserOnboardingComplete, useKrakenAccounts, useKrakenExchangeTransfer, useKrakenWhitelistedAddresses, useLogout, useMfaDevices, useMfaMethods, useMfaRecoveryCodes, useMoonPayCurrencies, useMoonPayUrl, useMultichainTokenBalances, useNativeBalance, useNetworksData, useOnceEvent, usePasskeys, useProveWalletAccountOwnership, useRefreshAuth, useRegisterPasskey, useRegisterTotpMfaDevice, useRegisteredDevices, useRemoveWalletAccount, useRequestExternalAuthElevatedToken, useRevokeAllRegisteredDevices, useRevokeRegisteredDevice, useSendEmailOtp, useSendSmsOtp, useSessionExpiresAt, useSetDefaultMfaDevice, useSignInWithExternalJwt, useSignInWithPasskey, useSignInWithSocialPopUp, useSignInWithSocialRedirect, useSignMessage, useSwapQuote, useSwapStatus, useSwitchActiveNetwork, useTokenBalances, useTransactionHistory, useTransferAmount, useTransferWalletAccount, useUnlinkSocialAccount, useUpdateUser, useUser, useUserSocialAccounts, useVerifyOtp, useVerifyWalletAccount, useWalletAccounts, useWalletConnectCatalog, useWalletOptionsCatalogue, useWalletProviderEvent };
1830
1890
  //# sourceMappingURL=index.esm.js.map