@dynamic-labs/sdk-react-core 0.18.100-viem.1 → 0.18.100-viem.10

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 (106) hide show
  1. package/CHANGELOG.md +86 -0
  2. package/package.cjs +3 -3
  3. package/package.js +3 -3
  4. package/package.json +10 -10
  5. package/src/index.cjs +2 -0
  6. package/src/index.js +1 -0
  7. package/src/lib/components/MenuList/Dropdown/Dropdown.cjs +1 -1
  8. package/src/lib/components/MenuList/Dropdown/Dropdown.js +1 -1
  9. package/src/lib/components/ModalHeaderBanner/ModalHeaderBanner.cjs +6 -2
  10. package/src/lib/components/ModalHeaderBanner/ModalHeaderBanner.d.ts +2 -1
  11. package/src/lib/components/ModalHeaderBanner/ModalHeaderBanner.js +6 -2
  12. package/src/lib/components/OTPVerificationView/OTPVerificationView.cjs +2 -2
  13. package/src/lib/components/OTPVerificationView/OTPVerificationView.d.ts +1 -0
  14. package/src/lib/components/OTPVerificationView/OTPVerificationView.js +2 -2
  15. package/src/lib/components/Typography/Typography.cjs +1 -0
  16. package/src/lib/components/Typography/Typography.js +1 -0
  17. package/src/lib/components/Typography/Typography.types.d.ts +1 -1
  18. package/src/lib/components/UserProfile/UserProfile.cjs +1 -1
  19. package/src/lib/components/UserProfile/UserProfile.js +1 -1
  20. package/src/lib/components/UserProfile/parts/UserProfileSocialAccount/UserProfileSocialAccount.cjs +1 -1
  21. package/src/lib/components/UserProfile/parts/UserProfileSocialAccount/UserProfileSocialAccount.js +1 -1
  22. package/src/lib/context/DynamicContext/DynamicContext.cjs +8 -2
  23. package/src/lib/context/DynamicContext/DynamicContext.js +9 -3
  24. package/src/lib/context/DynamicContext/internalEvents/index.d.ts +2 -0
  25. package/src/lib/context/DynamicContext/internalEvents/internalEvents.cjs +14 -0
  26. package/src/lib/context/DynamicContext/internalEvents/internalEvents.d.ts +8 -0
  27. package/src/lib/context/DynamicContext/internalEvents/internalEvents.js +6 -0
  28. package/src/lib/context/DynamicContext/types/index.d.ts +4 -1
  29. package/src/lib/context/DynamicContext/useDynamicContext.cjs +2 -1
  30. package/src/lib/context/DynamicContext/useDynamicContext.d.ts +1 -1
  31. package/src/lib/context/DynamicContext/useDynamicContext.js +2 -1
  32. package/src/lib/context/SocialRedirectContext/SocialRedirectContext.cjs +2 -1
  33. package/src/lib/context/SocialRedirectContext/SocialRedirectContext.js +2 -1
  34. package/src/lib/data/api.cjs +17 -1
  35. package/src/lib/data/api.d.ts +2 -1
  36. package/src/lib/data/api.js +17 -2
  37. package/src/lib/main.global.cjs +1 -1
  38. package/src/lib/main.global.js +1 -1
  39. package/src/lib/modals/TransactionConfirmationModal/TransactionConfirmationModal.cjs +2 -1
  40. package/src/lib/modals/TransactionConfirmationModal/TransactionConfirmationModal.js +2 -1
  41. package/src/lib/shared/utils/hooks/usePreventPageScroll/usePreventPageScroll.cjs +28 -2
  42. package/src/lib/shared/utils/hooks/usePreventPageScroll/usePreventPageScroll.js +28 -2
  43. package/src/lib/styles/index.shadow.cjs +1 -1
  44. package/src/lib/styles/index.shadow.js +1 -1
  45. package/src/lib/utils/functions/createUserProfile/createUserProfile.cjs +1 -1
  46. package/src/lib/utils/functions/createUserProfile/createUserProfile.js +1 -1
  47. package/src/lib/utils/functions/digestSHA256/digestSHA256.cjs +11 -0
  48. package/src/lib/utils/functions/digestSHA256/digestSHA256.d.ts +1 -0
  49. package/src/lib/utils/functions/digestSHA256/digestSHA256.js +7 -0
  50. package/src/lib/utils/functions/digestSHA256/index.d.ts +1 -0
  51. package/src/lib/utils/functions/encodeBase64URL/encodeBase64URL.cjs +14 -0
  52. package/src/lib/utils/functions/encodeBase64URL/encodeBase64URL.d.ts +1 -0
  53. package/src/lib/utils/functions/encodeBase64URL/encodeBase64URL.js +10 -0
  54. package/src/lib/utils/functions/encodeBase64URL/index.d.ts +1 -0
  55. package/src/lib/utils/functions/getRedirectURIOrigin/getRedirectURIOrigin.cjs +33 -0
  56. package/src/lib/utils/functions/getRedirectURIOrigin/getRedirectURIOrigin.d.ts +1 -0
  57. package/src/lib/utils/functions/getRedirectURIOrigin/getRedirectURIOrigin.js +29 -0
  58. package/src/lib/utils/functions/getRedirectURIOrigin/index.d.ts +1 -0
  59. package/src/lib/utils/functions/index.d.ts +6 -0
  60. package/src/lib/utils/functions/randomString/index.d.ts +1 -0
  61. package/src/lib/utils/functions/randomString/randomString.cjs +14 -0
  62. package/src/lib/utils/functions/randomString/randomString.d.ts +1 -0
  63. package/src/lib/utils/functions/randomString/randomString.js +10 -0
  64. package/src/lib/utils/functions/sendTransactionWithAutoNonce/index.d.ts +1 -0
  65. package/src/lib/utils/functions/sendTransactionWithAutoNonce/sendTransactionWithAutoNonce.cjs +48 -0
  66. package/src/lib/utils/functions/sendTransactionWithAutoNonce/sendTransactionWithAutoNonce.d.ts +18 -0
  67. package/src/lib/utils/functions/sendTransactionWithAutoNonce/sendTransactionWithAutoNonce.js +43 -0
  68. package/src/lib/utils/functions/stringifyURIQuery/index.d.ts +1 -0
  69. package/src/lib/utils/functions/stringifyURIQuery/stringifyURIQuery.cjs +13 -0
  70. package/src/lib/utils/functions/stringifyURIQuery/stringifyURIQuery.d.ts +1 -0
  71. package/src/lib/utils/functions/stringifyURIQuery/stringifyURIQuery.js +9 -0
  72. package/src/lib/utils/hooks/authenticationHooks/useConnectAndSign/useConnectAndSign.cjs +8 -2
  73. package/src/lib/utils/hooks/authenticationHooks/useConnectAndSign/useConnectAndSign.js +9 -3
  74. package/src/lib/utils/hooks/multiWallet/useSyncPrimaryWallet/useSyncPrimaryWallet.cjs +4 -0
  75. package/src/lib/utils/hooks/multiWallet/useSyncPrimaryWallet/useSyncPrimaryWallet.js +4 -0
  76. package/src/lib/utils/hooks/useConnectWallet/useConnectWallet.cjs +14 -16
  77. package/src/lib/utils/hooks/useConnectWallet/useConnectWallet.js +15 -17
  78. package/src/lib/utils/hooks/useConnectedWalletsNetworkValidation/useConnectedWalletsNetworkValidation.cjs +7 -6
  79. package/src/lib/utils/hooks/useConnectedWalletsNetworkValidation/useConnectedWalletsNetworkValidation.js +7 -6
  80. package/src/lib/utils/hooks/usePrimaryWalletId/usePrimaryWalletId.cjs +6 -2
  81. package/src/lib/utils/hooks/usePrimaryWalletId/usePrimaryWalletId.d.ts +2 -1
  82. package/src/lib/utils/hooks/usePrimaryWalletId/usePrimaryWalletId.js +6 -2
  83. package/src/lib/utils/hooks/useSocialAccounts/useSocialAccounts.cjs +128 -23
  84. package/src/lib/utils/hooks/useSocialAccounts/useSocialAccounts.d.ts +5 -1
  85. package/src/lib/utils/hooks/useSocialAccounts/useSocialAccounts.js +130 -25
  86. package/src/lib/views/CaptchaVerifyUser/CaptchaVerifyUser.cjs +9 -3
  87. package/src/lib/views/CaptchaVerifyUser/CaptchaVerifyUser.js +9 -3
  88. package/src/lib/views/EmailWalletOTPVerificationView/EmailWalletOTPVerificationView.cjs +1 -1
  89. package/src/lib/views/EmailWalletOTPVerificationView/EmailWalletOTPVerificationView.js +1 -1
  90. package/src/lib/views/NetworkNotSupported/NetworkNotSupported.cjs +3 -2
  91. package/src/lib/views/NetworkNotSupported/NetworkNotSupported.js +3 -2
  92. package/src/lib/views/NetworkNotSupportedSwitchManual/NetworkNotSupportedSwitchManual.cjs +3 -2
  93. package/src/lib/views/NetworkNotSupportedSwitchManual/NetworkNotSupportedSwitchManual.js +3 -2
  94. package/src/lib/views/SendBalanceView/components/TransactionStage/TransactionStage.cjs +4 -10
  95. package/src/lib/views/SendBalanceView/components/TransactionStage/TransactionStage.js +4 -10
  96. package/src/lib/views/WalletGroupView/components/WalletGroupItem/WalletGroupItem.cjs +1 -0
  97. package/src/lib/views/WalletGroupView/components/WalletGroupItem/WalletGroupItem.js +1 -0
  98. package/src/lib/views/WalletList/WalletListItem/WalletListItem.cjs +1 -1
  99. package/src/lib/views/WalletList/WalletListItem/WalletListItem.js +1 -1
  100. package/src/lib/widgets/DynamicWidget/hooks/useFetchCurrency/useFetchCurrency.cjs +4 -1
  101. package/src/lib/widgets/DynamicWidget/hooks/useFetchCurrency/useFetchCurrency.js +4 -1
  102. package/src/lib/widgets/OAuthIFrameContainer/OAuthIFrameContainer.cjs +13 -0
  103. package/src/lib/widgets/OAuthIFrameContainer/OAuthIFrameContainer.d.ts +2 -0
  104. package/src/lib/widgets/OAuthIFrameContainer/OAuthIFrameContainer.js +9 -0
  105. package/src/lib/widgets/OAuthIFrameContainer/index.d.ts +1 -0
  106. package/src/lib/widgets/index.d.ts +1 -0
@@ -19,6 +19,7 @@ require('viem');
19
19
  require('../../../../shared/consts/index.cjs');
20
20
  require('@dynamic-labs/multi-wallet');
21
21
  var isMagicConnector = require('../../../../utils/functions/isMagicConnector/isMagicConnector.cjs');
22
+ var sendTransactionWithAutoNonce = require('../../../../utils/functions/sendTransactionWithAutoNonce/sendTransactionWithAutoNonce.cjs');
22
23
  require('@dynamic-labs/rpc-providers');
23
24
  require('../../../../utils/hooks/useWallets/utils/verifyMagicIsSetup/verifyMagicIsSetup.cjs');
24
25
  var useInternalDynamicContext = require('../../../../context/DynamicContext/useInternalDynamicContext.cjs');
@@ -55,19 +56,12 @@ const TransactionStage = (_a) => {
55
56
  provider,
56
57
  transaction,
57
58
  });
58
- return (jsxRuntime.jsx(TransactionConfirmationView.TransactionConfirmationView, Object.assign({ provider: provider, transaction: transactionWithGasPrice, mutation: () => _tslib.__awaiter(void 0, void 0, void 0, function* () {
59
+ return (jsxRuntime.jsx(TransactionConfirmationView.TransactionConfirmationView, Object.assign({ provider: provider, transaction: transactionWithGasPrice, mutation: () => sendTransactionWithAutoNonce.sendTransactionWithAutoNonce(walletConnector, transactionWithGasPrice, (transaction) => _tslib.__awaiter(void 0, void 0, void 0, function* () {
59
60
  walletUiUtils.disabledConfirmationOnce();
60
61
  const signer = yield walletConnector.getSigner();
61
- const sentTransaction = yield signer.sendTransaction({
62
- account: transactionWithGasPrice.from,
63
- chain: null,
64
- gasPrice: transactionWithGasPrice.gasPrice,
65
- to: transactionWithGasPrice.to,
66
- type: 'eip2930',
67
- value: transactionWithGasPrice.value,
68
- });
62
+ const sentTransaction = yield signer.sendTransaction(Object.assign(Object.assign({}, transaction), { account: transaction.from, chain: null }));
69
63
  return sentTransaction;
70
- }) }, rest)));
64
+ })) }, rest)));
71
65
  };
72
66
 
73
67
  exports.TransactionStage = TransactionStage;
@@ -15,6 +15,7 @@ import 'viem';
15
15
  import '../../../../shared/consts/index.js';
16
16
  import '@dynamic-labs/multi-wallet';
17
17
  import { isMagicConnector } from '../../../../utils/functions/isMagicConnector/isMagicConnector.js';
18
+ import { sendTransactionWithAutoNonce } from '../../../../utils/functions/sendTransactionWithAutoNonce/sendTransactionWithAutoNonce.js';
18
19
  import '@dynamic-labs/rpc-providers';
19
20
  import '../../../../utils/hooks/useWallets/utils/verifyMagicIsSetup/verifyMagicIsSetup.js';
20
21
  import { useInternalDynamicContext } from '../../../../context/DynamicContext/useInternalDynamicContext.js';
@@ -51,19 +52,12 @@ const TransactionStage = (_a) => {
51
52
  provider,
52
53
  transaction,
53
54
  });
54
- return (jsx(TransactionConfirmationView, Object.assign({ provider: provider, transaction: transactionWithGasPrice, mutation: () => __awaiter(void 0, void 0, void 0, function* () {
55
+ return (jsx(TransactionConfirmationView, Object.assign({ provider: provider, transaction: transactionWithGasPrice, mutation: () => sendTransactionWithAutoNonce(walletConnector, transactionWithGasPrice, (transaction) => __awaiter(void 0, void 0, void 0, function* () {
55
56
  walletUiUtils.disabledConfirmationOnce();
56
57
  const signer = yield walletConnector.getSigner();
57
- const sentTransaction = yield signer.sendTransaction({
58
- account: transactionWithGasPrice.from,
59
- chain: null,
60
- gasPrice: transactionWithGasPrice.gasPrice,
61
- to: transactionWithGasPrice.to,
62
- type: 'eip2930',
63
- value: transactionWithGasPrice.value,
64
- });
58
+ const sentTransaction = yield signer.sendTransaction(Object.assign(Object.assign({}, transaction), { account: transaction.from, chain: null }));
65
59
  return sentTransaction;
66
- }) }, rest)));
60
+ })) }, rest)));
67
61
  };
68
62
 
69
63
  export { TransactionStage };
@@ -13,6 +13,7 @@ require('@dynamic-labs/wallet-book');
13
13
  var getWalletListItemLabel = require('../../../../shared/utils/functions/getWalletListItemLabel/getWalletListItemLabel.cjs');
14
14
  require('viem');
15
15
  require('../../../../shared/utils/classes/storage/localStorage.cjs');
16
+ require('@dynamic-labs/utils');
16
17
  require('../../../../context/ViewContext/ViewContext.cjs');
17
18
  var stroke = require('../../../../shared/assets/stroke.cjs');
18
19
  require('../../../../shared/consts/index.cjs');
@@ -9,6 +9,7 @@ import '@dynamic-labs/wallet-book';
9
9
  import { getWalletListItemLabel } from '../../../../shared/utils/functions/getWalletListItemLabel/getWalletListItemLabel.js';
10
10
  import 'viem';
11
11
  import '../../../../shared/utils/classes/storage/localStorage.js';
12
+ import '@dynamic-labs/utils';
12
13
  import '../../../../context/ViewContext/ViewContext.js';
13
14
  import { ReactComponent as SvgStroke } from '../../../../shared/assets/stroke.js';
14
15
  import '../../../../shared/consts/index.js';
@@ -16,11 +16,11 @@ require('@dynamic-labs/wallet-connector-core');
16
16
  var getWalletListItemLabel = require('../../../shared/utils/functions/getWalletListItemLabel/getWalletListItemLabel.cjs');
17
17
  require('viem');
18
18
  require('../../../shared/utils/classes/storage/localStorage.cjs');
19
+ require('@dynamic-labs/utils');
19
20
  require('../../../shared/consts/index.cjs');
20
21
  require('../../../context/DynamicContext/DynamicContext.cjs');
21
22
  require('../../../utils/constants/colors.cjs');
22
23
  require('@dynamic-labs/multi-wallet');
23
- require('@dynamic-labs/utils');
24
24
  var pixelToRem = require('../../../utils/functions/pixelToRem/pixelToRem.cjs');
25
25
  require('../../../components/ShadowDOM/ShadowDOM.cjs');
26
26
  require('../../../context/ThemeContext/ThemeContext.cjs');
@@ -12,11 +12,11 @@ import '@dynamic-labs/wallet-connector-core';
12
12
  import { getWalletListItemLabel } from '../../../shared/utils/functions/getWalletListItemLabel/getWalletListItemLabel.js';
13
13
  import 'viem';
14
14
  import '../../../shared/utils/classes/storage/localStorage.js';
15
+ import '@dynamic-labs/utils';
15
16
  import '../../../shared/consts/index.js';
16
17
  import '../../../context/DynamicContext/DynamicContext.js';
17
18
  import '../../../utils/constants/colors.js';
18
19
  import '@dynamic-labs/multi-wallet';
19
- import '@dynamic-labs/utils';
20
20
  import { pixelToRem } from '../../../utils/functions/pixelToRem/pixelToRem.js';
21
21
  import '../../../components/ShadowDOM/ShadowDOM.js';
22
22
  import '../../../context/ThemeContext/ThemeContext.js';
@@ -18,7 +18,10 @@ const useFetchCurrency = (connector, network) => {
18
18
  setCurrency(chainInfo === null || chainInfo === void 0 ? void 0 : chainInfo.symbol);
19
19
  return;
20
20
  }
21
- const result = (_b = connector.evmNetworks) === null || _b === void 0 ? void 0 : _b.find((element) => element.chainId === chainId);
21
+ const network = connector.connectedChain === 'STARK'
22
+ ? 'starknetNetworks'
23
+ : 'evmNetworks';
24
+ const result = (_b = connector[network]) === null || _b === void 0 ? void 0 : _b.find((element) => element.chainId === chainId);
22
25
  setCurrency((_d = (_c = result === null || result === void 0 ? void 0 : result.nativeCurrency) === null || _c === void 0 ? void 0 : _c.symbol) !== null && _d !== void 0 ? _d : chainInfo === null || chainInfo === void 0 ? void 0 : chainInfo.symbol);
23
26
  return [currency];
24
27
  });
@@ -14,7 +14,10 @@ const useFetchCurrency = (connector, network) => {
14
14
  setCurrency(chainInfo === null || chainInfo === void 0 ? void 0 : chainInfo.symbol);
15
15
  return;
16
16
  }
17
- const result = (_b = connector.evmNetworks) === null || _b === void 0 ? void 0 : _b.find((element) => element.chainId === chainId);
17
+ const network = connector.connectedChain === 'STARK'
18
+ ? 'starknetNetworks'
19
+ : 'evmNetworks';
20
+ const result = (_b = connector[network]) === null || _b === void 0 ? void 0 : _b.find((element) => element.chainId === chainId);
18
21
  setCurrency((_d = (_c = result === null || result === void 0 ? void 0 : result.nativeCurrency) === null || _c === void 0 ? void 0 : _c.symbol) !== null && _d !== void 0 ? _d : chainInfo === null || chainInfo === void 0 ? void 0 : chainInfo.symbol);
19
22
  return [currency];
20
23
  });
@@ -0,0 +1,13 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var jsxRuntime = require('react/jsx-runtime');
6
+
7
+ // we need to use an iframe to be the intermediary in communications between the oauth popup and the sdk
8
+ // because of twitter limitations with accessing the window.opener and BroadcastChannel not working between
9
+ // different origins (our api redirect page and the app where the sdk is running)
10
+ // https://linear.app/dynamic-labs/issue/GVTY-17/[frontend]-fix-twitter-linking
11
+ const OAuthIFrameContainer = () => (jsxRuntime.jsx("div", { id: 'oauth-iframe-container', "data-testid": 'oauth-iframe-container', style: { height: 0, visibility: 'hidden', width: 0 } }));
12
+
13
+ exports.OAuthIFrameContainer = OAuthIFrameContainer;
@@ -0,0 +1,2 @@
1
+ /// <reference types="react" />
2
+ export declare const OAuthIFrameContainer: () => JSX.Element;
@@ -0,0 +1,9 @@
1
+ import { jsx } from 'react/jsx-runtime';
2
+
3
+ // we need to use an iframe to be the intermediary in communications between the oauth popup and the sdk
4
+ // because of twitter limitations with accessing the window.opener and BroadcastChannel not working between
5
+ // different origins (our api redirect page and the app where the sdk is running)
6
+ // https://linear.app/dynamic-labs/issue/GVTY-17/[frontend]-fix-twitter-linking
7
+ const OAuthIFrameContainer = () => (jsx("div", { id: 'oauth-iframe-container', "data-testid": 'oauth-iframe-container', style: { height: 0, visibility: 'hidden', width: 0 } }));
8
+
9
+ export { OAuthIFrameContainer };
@@ -0,0 +1 @@
1
+ export { OAuthIFrameContainer } from './OAuthIFrameContainer';
@@ -1,3 +1,4 @@
1
1
  export * from './DynamicWidget';
2
2
  export * from './FundingWidget';
3
3
  export * from './DynamicBridgeWidget';
4
+ export * from './OAuthIFrameContainer';