@dynamic-labs/sdk-react-core 4.0.0-alpha.37 → 4.0.0-alpha.39

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.
Files changed (43) hide show
  1. package/CHANGELOG.md +21 -0
  2. package/package.cjs +1 -1
  3. package/package.js +1 -1
  4. package/package.json +11 -11
  5. package/src/lib/context/ConnectWithOtpContext/ConnectWithOtpProvider.cjs +1 -1
  6. package/src/lib/context/ConnectWithOtpContext/ConnectWithOtpProvider.js +1 -1
  7. package/src/lib/data/api/embeddedWallets/embeddedWallets.cjs +2 -1
  8. package/src/lib/data/api/embeddedWallets/embeddedWallets.d.ts +1 -1
  9. package/src/lib/data/api/embeddedWallets/embeddedWallets.js +2 -1
  10. package/src/lib/data/api/embeddedWallets/types.d.ts +1 -0
  11. package/src/lib/styles/index.shadow.cjs +1 -1
  12. package/src/lib/styles/index.shadow.js +1 -1
  13. package/src/lib/utils/hooks/index.d.ts +1 -0
  14. package/src/lib/utils/hooks/useCreateDynamicEmbeddedWalletMutation/useCreateDynamicEmbeddedWalletMutation.cjs +12 -1
  15. package/src/lib/utils/hooks/useCreateDynamicEmbeddedWalletMutation/useCreateDynamicEmbeddedWalletMutation.js +12 -1
  16. package/src/lib/utils/hooks/useCreateWalletConnectorOptions/index.d.ts +1 -0
  17. package/src/lib/utils/hooks/useCreateWalletConnectorOptions/useCreateWalletConnectorOptions.cjs +5 -24
  18. package/src/lib/utils/hooks/useCreateWalletConnectorOptions/useCreateWalletConnectorOptions.d.ts +2 -3
  19. package/src/lib/utils/hooks/useCreateWalletConnectorOptions/useCreateWalletConnectorOptions.js +5 -24
  20. package/src/lib/utils/hooks/useEmbeddedWalletSessionKeys/useEmbeddedWalletSessionKeys.cjs +11 -0
  21. package/src/lib/utils/hooks/useEmbeddedWalletSessionKeys/useEmbeddedWalletSessionKeys.d.ts +1 -0
  22. package/src/lib/utils/hooks/useEmbeddedWalletSessionKeys/useEmbeddedWalletSessionKeys.js +11 -0
  23. package/src/lib/utils/hooks/useExternalAuth/useExternalAuth.cjs +1 -1
  24. package/src/lib/utils/hooks/useExternalAuth/useExternalAuth.js +1 -1
  25. package/src/lib/utils/hooks/useResetCookieLocalStorage/useResetCookieLocalStorage.cjs +3 -5
  26. package/src/lib/utils/hooks/useResetCookieLocalStorage/useResetCookieLocalStorage.js +4 -6
  27. package/src/lib/utils/hooks/useSetWalletConnectorFetchers/useSetWalletConnectorFetchers.cjs +1 -1
  28. package/src/lib/utils/hooks/useSetWalletConnectorFetchers/useSetWalletConnectorFetchers.js +1 -1
  29. package/src/lib/utils/hooks/useSocialAuth/useSocialAuth.cjs +1 -1
  30. package/src/lib/utils/hooks/useSocialAuth/useSocialAuth.js +1 -1
  31. package/src/lib/utils/hooks/useVerifyWallet/useVerifyWallet.cjs +1 -1
  32. package/src/lib/utils/hooks/useVerifyWallet/useVerifyWallet.js +1 -1
  33. package/src/lib/views/EmailVerification/EmailVerification.cjs +1 -1
  34. package/src/lib/views/EmailVerification/EmailVerification.js +1 -1
  35. package/src/lib/views/Passkey/utils/createEmbeddedWalletRequest/createEmbeddedWalletRequest.cjs +3 -2
  36. package/src/lib/views/Passkey/utils/createEmbeddedWalletRequest/createEmbeddedWalletRequest.d.ts +2 -1
  37. package/src/lib/views/Passkey/utils/createEmbeddedWalletRequest/createEmbeddedWalletRequest.js +3 -2
  38. package/src/lib/views/SmsVerification/useSmsVerification/useSmsVerification.cjs +1 -1
  39. package/src/lib/views/SmsVerification/useSmsVerification/useSmsVerification.js +1 -1
  40. package/src/lib/views/WalletList/WalletListItem/WalletListItem.cjs +1 -1
  41. package/src/lib/views/WalletList/WalletListItem/WalletListItem.js +2 -2
  42. package/src/lib/widgets/DynamicBridgeWidget/DynamicBridgeWidget.cjs +5 -1
  43. package/src/lib/widgets/DynamicBridgeWidget/DynamicBridgeWidget.js +5 -1
@@ -1,7 +1,7 @@
1
1
  'use client'
2
2
  import { __awaiter } from '../../../../../_virtual/_tslib.js';
3
3
  import { jsx } from 'react/jsx-runtime';
4
- import { useWalletBookContext, getWalletGroup, getWalletBookWallet, WalletIcon } from '@dynamic-labs/wallet-book';
4
+ import { useWalletBookContext, getWalletGroup, WalletIcon } from '@dynamic-labs/wallet-book';
5
5
  import { isHardwareWalletConnector } from '@dynamic-labs/wallet-connector-core';
6
6
  import '@dynamic-labs/iconic';
7
7
  import { useViewContext } from '../../../context/ViewContext/ViewContext.js';
@@ -121,7 +121,7 @@ const WalletListItem = ({ disabled = false, wallet, onResetSearchValue, recommen
121
121
  });
122
122
  const name = _isWalletGroup
123
123
  ? getWalletGroup(walletBook, wallet.key).name
124
- : getWalletBookWallet(walletBook, wallet.key).name;
124
+ : wallet.walletConnector.metadata.name;
125
125
  const leading = (jsx(WalletIcon, { className: 'wallet-list-item__leading', icon: (_a = wallet.walletConnector) === null || _a === void 0 ? void 0 : _a.metadata.icon, walletKey: wallet.key, style: { height: pixelToRem(28), width: pixelToRem(28) } }));
126
126
  const trailing = (jsx(ListTileAnimatedTrailing, { hoverElement:
127
127
  // eslint-disable-next-line react/jsx-wrap-multilines
@@ -60,6 +60,7 @@ require('../../components/Transition/ZoomTransition/ZoomTransition.cjs');
60
60
  require('../../components/Transition/SlideInUpTransition/SlideInUpTransition.cjs');
61
61
  require('../../components/Transition/OpacityTransition/OpacityTransition.cjs');
62
62
  require('../../components/OverlayCardBase/OverlayCardTarget/OverlayCardTarget.cjs');
63
+ var Skeleton = require('../../components/Skeleton/Skeleton.cjs');
63
64
  require('../../context/SocialRedirectContext/SocialRedirectContext.cjs');
64
65
  require('../../context/WalletGroupContext/WalletGroupContext.cjs');
65
66
  require('../DynamicWidget/components/DynamicWidgetHeader/DynamicWidgetHeader.cjs');
@@ -91,7 +92,7 @@ var DynamicBridgeUserProfile = require('./components/DynamicBridgeUserProfile/Dy
91
92
  var DynamicBridgeWidgetContext = require('./context/DynamicBridgeWidgetContext/DynamicBridgeWidgetContext.cjs');
92
93
 
93
94
  const DynamicBridgeWidget = ({ className, variant = 'modal', iconVariant = 'chain', }) => {
94
- const { showAuthFlow, setShowBridgeWidget, bridgeChains, setShowAuthFlow, connectedWallets, } = useInternalDynamicContext.useInternalDynamicContext();
95
+ const { showAuthFlow, setShowBridgeWidget, bridgeChains, setShowAuthFlow, connectedWallets, sdkHasLoaded, } = useInternalDynamicContext.useInternalDynamicContext();
95
96
  const { widgetRef, inlineControlsRef } = DynamicBridgeWidgetContext.useDynamicBridgeWidgetContext();
96
97
  const { t } = reactI18next.useTranslation();
97
98
  const closeOnOutsideClick = React.useCallback((e) => {
@@ -106,6 +107,9 @@ const DynamicBridgeWidget = ({ className, variant = 'modal', iconVariant = 'chai
106
107
  index.useOnClickOutside(widgetRef, closeOnOutsideClick);
107
108
  return (jsxRuntime.jsxs(ShadowDOM.ShadowDOM, { id: 'dynamic-bridge-widget', className: 'dynamic-widget__container', children: [jsxRuntime.jsx(InlineWidget.InlineWidget, { ref: inlineControlsRef, className: className, dataTestId: 'BridgeWidgetNav', children: bridgeChains === null || bridgeChains === void 0 ? void 0 : bridgeChains.map(({ chain }) => {
108
109
  const ChainIcon = getChainIcon.getChainIcon(chain);
110
+ if (!sdkHasLoaded) {
111
+ return (jsxRuntime.jsx(InlineWidgetButton.InlineWidgetButton, { icon: jsxRuntime.jsx(ChainIcon, {}), className: 'dynamic-bridge-widget__skeleton-button', children: jsxRuntime.jsx(Skeleton.Skeleton, { className: 'dynamic-bridge-widget__skeleton' }) }, `skeleton-${chain}`));
112
+ }
109
113
  const connectedChainWallets = connectedWallets.filter(({ chain: connectedChain }) => connectedChain === chain);
110
114
  if (connectedChainWallets.length > 0) {
111
115
  return connectedChainWallets.map((wallet) => (jsxRuntime.jsx(InlineWidgetButton.InlineWidgetButton, { icon: iconVariant === 'wallet' ? (jsxRuntime.jsx(walletBook.WalletIcon, { icon: wallet.connector.metadata.icon, walletKey: wallet.connector.key })) : (jsxRuntime.jsx(ChainIcon, {})), onClick: () => setShowBridgeWidget(true), children: shortenWalletAddress.shortenWalletAddress(wallet.address) }, wallet.id)));
@@ -56,6 +56,7 @@ import '../../components/Transition/ZoomTransition/ZoomTransition.js';
56
56
  import '../../components/Transition/SlideInUpTransition/SlideInUpTransition.js';
57
57
  import '../../components/Transition/OpacityTransition/OpacityTransition.js';
58
58
  import '../../components/OverlayCardBase/OverlayCardTarget/OverlayCardTarget.js';
59
+ import { Skeleton } from '../../components/Skeleton/Skeleton.js';
59
60
  import '../../context/SocialRedirectContext/SocialRedirectContext.js';
60
61
  import '../../context/WalletGroupContext/WalletGroupContext.js';
61
62
  import '../DynamicWidget/components/DynamicWidgetHeader/DynamicWidgetHeader.js';
@@ -87,7 +88,7 @@ import { DynamicBridgeUserProfile } from './components/DynamicBridgeUserProfile/
87
88
  import { useDynamicBridgeWidgetContext } from './context/DynamicBridgeWidgetContext/DynamicBridgeWidgetContext.js';
88
89
 
89
90
  const DynamicBridgeWidget = ({ className, variant = 'modal', iconVariant = 'chain', }) => {
90
- const { showAuthFlow, setShowBridgeWidget, bridgeChains, setShowAuthFlow, connectedWallets, } = useInternalDynamicContext();
91
+ const { showAuthFlow, setShowBridgeWidget, bridgeChains, setShowAuthFlow, connectedWallets, sdkHasLoaded, } = useInternalDynamicContext();
91
92
  const { widgetRef, inlineControlsRef } = useDynamicBridgeWidgetContext();
92
93
  const { t } = useTranslation();
93
94
  const closeOnOutsideClick = useCallback((e) => {
@@ -102,6 +103,9 @@ const DynamicBridgeWidget = ({ className, variant = 'modal', iconVariant = 'chai
102
103
  useOnClickOutside(widgetRef, closeOnOutsideClick);
103
104
  return (jsxs(ShadowDOM, { id: 'dynamic-bridge-widget', className: 'dynamic-widget__container', children: [jsx(InlineWidget, { ref: inlineControlsRef, className: className, dataTestId: 'BridgeWidgetNav', children: bridgeChains === null || bridgeChains === void 0 ? void 0 : bridgeChains.map(({ chain }) => {
104
105
  const ChainIcon = getChainIcon(chain);
106
+ if (!sdkHasLoaded) {
107
+ return (jsx(InlineWidgetButton, { icon: jsx(ChainIcon, {}), className: 'dynamic-bridge-widget__skeleton-button', children: jsx(Skeleton, { className: 'dynamic-bridge-widget__skeleton' }) }, `skeleton-${chain}`));
108
+ }
105
109
  const connectedChainWallets = connectedWallets.filter(({ chain: connectedChain }) => connectedChain === chain);
106
110
  if (connectedChainWallets.length > 0) {
107
111
  return connectedChainWallets.map((wallet) => (jsx(InlineWidgetButton, { icon: iconVariant === 'wallet' ? (jsx(WalletIcon, { icon: wallet.connector.metadata.icon, walletKey: wallet.connector.key })) : (jsx(ChainIcon, {})), onClick: () => setShowBridgeWidget(true), children: shortenWalletAddress(wallet.address) }, wallet.id)));