@dynamic-labs/sdk-react-core 4.0.0-alpha.16 → 4.0.0-alpha.18
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/CHANGELOG.md +20 -0
- package/package.cjs +2 -2
- package/package.js +2 -2
- package/package.json +12 -12
- package/src/lib/shared/utils/functions/chain/getChainIcon.cjs +1 -0
- package/src/lib/shared/utils/functions/chain/getChainIcon.js +2 -1
- package/src/lib/styles/index.shadow.cjs +1 -1
- package/src/lib/styles/index.shadow.js +1 -1
- package/src/lib/utils/hooks/useNetworkConfigurationsFromProjectSettings/useNetworkConfigurationsFromProjectSettings.cjs +4 -1
- package/src/lib/utils/hooks/useNetworkConfigurationsFromProjectSettings/useNetworkConfigurationsFromProjectSettings.js +4 -1
- package/src/lib/views/MobileWalletRedirectView/MobileWalletRedirectView.cjs +6 -7
- package/src/lib/views/MobileWalletRedirectView/MobileWalletRedirectView.js +6 -7
- package/src/lib/views/WalletList/data.d.ts +1 -1
- package/src/lib/widgets/DynamicWidget/hooks/useFetchCurrency/useFetchCurrency.cjs +11 -1
- package/src/lib/widgets/DynamicWidget/hooks/useFetchCurrency/useFetchCurrency.js +11 -1
|
@@ -6,7 +6,7 @@ Object.defineProperty(exports, '__esModule', { value: true });
|
|
|
6
6
|
var React = require('react');
|
|
7
7
|
|
|
8
8
|
const useNetworkConfigurationsFromProjectSettings = ({ projectSettings, cosmosNetworkOverrides, evmNetworksOverrides, }) => React.useMemo(() => {
|
|
9
|
-
var _a, _b, _c, _d;
|
|
9
|
+
var _a, _b, _c, _d, _e;
|
|
10
10
|
const networks = projectSettings === null || projectSettings === void 0 ? void 0 : projectSettings.networks;
|
|
11
11
|
if (!networks)
|
|
12
12
|
return {};
|
|
@@ -14,12 +14,14 @@ const useNetworkConfigurationsFromProjectSettings = ({ projectSettings, cosmosNe
|
|
|
14
14
|
const solana = networks.find((configurations) => configurations.chainName === 'solana');
|
|
15
15
|
const cosmos = networks.find((configurations) => configurations.chainName === 'cosmos');
|
|
16
16
|
const starknet = networks.find((configurations) => configurations.chainName === 'starknet');
|
|
17
|
+
const eclipse = networks.find((configurations) => configurations.chainName === 'eclipse');
|
|
17
18
|
let cosmosNetworks = (_a = cosmos === null || cosmos === void 0 ? void 0 : cosmos.networks) === null || _a === void 0 ? void 0 : _a.map((net) => createNetwork(net, parseInt));
|
|
18
19
|
cosmosNetworks = overrideNetworks(cosmosNetworkOverrides, cosmosNetworks);
|
|
19
20
|
let evmNetworks = (_b = evm === null || evm === void 0 ? void 0 : evm.networks) === null || _b === void 0 ? void 0 : _b.map((net) => createNetwork(net, parseInt));
|
|
20
21
|
evmNetworks = overrideNetworks(evmNetworksOverrides, evmNetworks);
|
|
21
22
|
const starknetNetworks = (_c = starknet === null || starknet === void 0 ? void 0 : starknet.networks) === null || _c === void 0 ? void 0 : _c.map((net) => createNetwork(net));
|
|
22
23
|
const solanaNetworks = (_d = solana === null || solana === void 0 ? void 0 : solana.networks) === null || _d === void 0 ? void 0 : _d.map((net) => createNetwork(net));
|
|
24
|
+
const eclipseNetworks = (_e = eclipse === null || eclipse === void 0 ? void 0 : eclipse.networks) === null || _e === void 0 ? void 0 : _e.map((net) => createNetwork(net));
|
|
23
25
|
if (evmNetworksOverrides) {
|
|
24
26
|
if (Array.isArray(evmNetworksOverrides)) {
|
|
25
27
|
evmNetworks = evmNetworksOverrides;
|
|
@@ -30,6 +32,7 @@ const useNetworkConfigurationsFromProjectSettings = ({ projectSettings, cosmosNe
|
|
|
30
32
|
}
|
|
31
33
|
const networkConfigurations = {
|
|
32
34
|
cosmos: cosmosNetworks,
|
|
35
|
+
eclipse: eclipseNetworks,
|
|
33
36
|
evm: evmNetworks,
|
|
34
37
|
solana: solanaNetworks,
|
|
35
38
|
starknet: starknetNetworks,
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
import { useMemo } from 'react';
|
|
3
3
|
|
|
4
4
|
const useNetworkConfigurationsFromProjectSettings = ({ projectSettings, cosmosNetworkOverrides, evmNetworksOverrides, }) => useMemo(() => {
|
|
5
|
-
var _a, _b, _c, _d;
|
|
5
|
+
var _a, _b, _c, _d, _e;
|
|
6
6
|
const networks = projectSettings === null || projectSettings === void 0 ? void 0 : projectSettings.networks;
|
|
7
7
|
if (!networks)
|
|
8
8
|
return {};
|
|
@@ -10,12 +10,14 @@ const useNetworkConfigurationsFromProjectSettings = ({ projectSettings, cosmosNe
|
|
|
10
10
|
const solana = networks.find((configurations) => configurations.chainName === 'solana');
|
|
11
11
|
const cosmos = networks.find((configurations) => configurations.chainName === 'cosmos');
|
|
12
12
|
const starknet = networks.find((configurations) => configurations.chainName === 'starknet');
|
|
13
|
+
const eclipse = networks.find((configurations) => configurations.chainName === 'eclipse');
|
|
13
14
|
let cosmosNetworks = (_a = cosmos === null || cosmos === void 0 ? void 0 : cosmos.networks) === null || _a === void 0 ? void 0 : _a.map((net) => createNetwork(net, parseInt));
|
|
14
15
|
cosmosNetworks = overrideNetworks(cosmosNetworkOverrides, cosmosNetworks);
|
|
15
16
|
let evmNetworks = (_b = evm === null || evm === void 0 ? void 0 : evm.networks) === null || _b === void 0 ? void 0 : _b.map((net) => createNetwork(net, parseInt));
|
|
16
17
|
evmNetworks = overrideNetworks(evmNetworksOverrides, evmNetworks);
|
|
17
18
|
const starknetNetworks = (_c = starknet === null || starknet === void 0 ? void 0 : starknet.networks) === null || _c === void 0 ? void 0 : _c.map((net) => createNetwork(net));
|
|
18
19
|
const solanaNetworks = (_d = solana === null || solana === void 0 ? void 0 : solana.networks) === null || _d === void 0 ? void 0 : _d.map((net) => createNetwork(net));
|
|
20
|
+
const eclipseNetworks = (_e = eclipse === null || eclipse === void 0 ? void 0 : eclipse.networks) === null || _e === void 0 ? void 0 : _e.map((net) => createNetwork(net));
|
|
19
21
|
if (evmNetworksOverrides) {
|
|
20
22
|
if (Array.isArray(evmNetworksOverrides)) {
|
|
21
23
|
evmNetworks = evmNetworksOverrides;
|
|
@@ -26,6 +28,7 @@ const useNetworkConfigurationsFromProjectSettings = ({ projectSettings, cosmosNe
|
|
|
26
28
|
}
|
|
27
29
|
const networkConfigurations = {
|
|
28
30
|
cosmos: cosmosNetworks,
|
|
31
|
+
eclipse: eclipseNetworks,
|
|
29
32
|
evm: evmNetworks,
|
|
30
33
|
solana: solanaNetworks,
|
|
31
34
|
starknet: starknetNetworks,
|
|
@@ -6,9 +6,12 @@ Object.defineProperty(exports, '__esModule', { value: true });
|
|
|
6
6
|
var jsxRuntime = require('react/jsx-runtime');
|
|
7
7
|
var React = require('react');
|
|
8
8
|
var reactI18next = require('react-i18next');
|
|
9
|
-
var walletBook = require('@dynamic-labs/wallet-book');
|
|
10
9
|
var utils = require('@dynamic-labs/utils');
|
|
10
|
+
var walletBook = require('@dynamic-labs/wallet-book');
|
|
11
|
+
var Icon = require('../../components/Icon/Icon.cjs');
|
|
11
12
|
var IconWithSpinner = require('../../components/IconWithSpinner/IconWithSpinner.cjs');
|
|
13
|
+
var Typography = require('../../components/Typography/Typography.cjs');
|
|
14
|
+
var TypographyButton = require('../../components/TypographyButton/TypographyButton.cjs');
|
|
12
15
|
require('../../context/DynamicContext/DynamicContext.cjs');
|
|
13
16
|
require('@dynamic-labs/sdk-api-core');
|
|
14
17
|
require('../../shared/logger.cjs');
|
|
@@ -16,7 +19,6 @@ require('@dynamic-labs/iconic');
|
|
|
16
19
|
require('@dynamic-labs/wallet-connector-core');
|
|
17
20
|
require('../../context/ViewContext/ViewContext.cjs');
|
|
18
21
|
var externalLink = require('../../shared/assets/externalLink.cjs');
|
|
19
|
-
var footerInfoIcon = require('../../shared/assets/footer-info-icon.cjs');
|
|
20
22
|
require('../../utils/constants/colors.cjs');
|
|
21
23
|
require('../../utils/constants/values.cjs');
|
|
22
24
|
require('../../store/state/loadingAndLifecycle.cjs');
|
|
@@ -52,10 +54,7 @@ require('@dynamic-labs/rpc-providers');
|
|
|
52
54
|
require('../../store/state/environmentId.cjs');
|
|
53
55
|
require('../../store/state/walletConnectorOptions.cjs');
|
|
54
56
|
require('../../components/Accordion/components/AccordionItem/AccordionItem.cjs');
|
|
55
|
-
|
|
56
|
-
var Typography = require('../../components/Typography/Typography.cjs');
|
|
57
|
-
var Icon = require('../../components/Icon/Icon.cjs');
|
|
58
|
-
var TypographyButton = require('../../components/TypographyButton/TypographyButton.cjs');
|
|
57
|
+
require('../../components/Alert/Alert.cjs');
|
|
59
58
|
require('../../components/ShadowDOM/ShadowDOM.cjs');
|
|
60
59
|
require('../../components/IconButton/IconButton.cjs');
|
|
61
60
|
require('../../components/InlineWidget/InlineWidget.cjs');
|
|
@@ -116,7 +115,7 @@ const MobileWalletRedirectView = ({ onRetry, }) => {
|
|
|
116
115
|
height: pixelToRem.pixelToRem(size),
|
|
117
116
|
width: pixelToRem.pixelToRem(size),
|
|
118
117
|
} }));
|
|
119
|
-
return (jsxRuntime.jsxs("div", { className: 'mobile-wallet-redirect', children: [jsxRuntime.jsx(IconWithSpinner.IconWithSpinner, { Icon: makeIcon(94 * IconWithSpinner.iconRatio), iconSize: 94, isSpinning: true, className: 'mobile-wallet-redirect__icon-with-spinner' }), jsxRuntime.jsx(Typography.Typography, { variant: 'body_normal', weight: 'regular', className: 'mobile-wallet-redirect__copy-text', copykey: 'dyn_login.mobile_wallet_redirect.prompt', children: t('dyn_login.mobile_wallet_redirect.prompt') }), jsxRuntime.jsxs(TypographyButton.TypographyButton, { buttonVariant: 'brand-primary', typographyProps: { color: 'white', variant: 'button_secondary' }, onClick: onRetry, buttonPadding: 'small', children: [t('dyn_login.mobile_wallet_redirect.open_prompt'), ' ', selectedWalletConnector === null || selectedWalletConnector === void 0 ? void 0 : selectedWalletConnector.name] }), jsxRuntime.jsx(
|
|
118
|
+
return (jsxRuntime.jsxs("div", { className: 'mobile-wallet-redirect', children: [jsxRuntime.jsx(IconWithSpinner.IconWithSpinner, { Icon: makeIcon(94 * IconWithSpinner.iconRatio), iconSize: 94, isSpinning: true, className: 'mobile-wallet-redirect__icon-with-spinner' }), jsxRuntime.jsx(Typography.Typography, { variant: 'body_normal', weight: 'regular', className: 'mobile-wallet-redirect__copy-text', copykey: 'dyn_login.mobile_wallet_redirect.prompt', children: t('dyn_login.mobile_wallet_redirect.prompt') }), jsxRuntime.jsxs(TypographyButton.TypographyButton, { buttonVariant: 'brand-primary', typographyProps: { color: 'white', variant: 'button_secondary' }, onClick: onRetry, buttonPadding: 'small', children: [t('dyn_login.mobile_wallet_redirect.open_prompt'), ' ', selectedWalletConnector === null || selectedWalletConnector === void 0 ? void 0 : selectedWalletConnector.name] }), jsxRuntime.jsx(Typography.Typography, { variant: 'body_small', color: 'secondary', className: 'mobile-wallet-redirect__alert', children: t('dyn_login.mobile_wallet_redirect.redirect_fail_message', {
|
|
120
119
|
walletName: selectedWalletConnector === null || selectedWalletConnector === void 0 ? void 0 : selectedWalletConnector.name,
|
|
121
120
|
}) }), storeName && (jsxRuntime.jsxs("div", { className: 'mobile-wallet-redirect__wallet-app', onClick: openWalletApp, children: [jsxRuntime.jsxs("div", { className: 'mobile-wallet-redirect__wallet-app__group', children: [makeIcon(26), jsxRuntime.jsxs(Typography.Typography, { variant: 'body_small', weight: 'bold', children: [t('dyn_login.mobile_wallet_redirect.get_app_prompt'), ' ', selectedWalletConnector === null || selectedWalletConnector === void 0 ? void 0 : selectedWalletConnector.name] })] }), jsxRuntime.jsxs("div", { className: 'mobile-wallet-redirect__wallet-app__group', children: [jsxRuntime.jsx(Typography.Typography, { className: 'mobile-wallet-redirect__wallet-app__group__app-store', variant: 'body_small', weight: 'bold', color: 'secondary', children: storeName }), jsxRuntime.jsx(Icon.Icon, { color: 'text-secondary', size: 'small', children: jsxRuntime.jsx(externalLink.ReactComponent, {}) })] })] }))] }));
|
|
122
121
|
};
|
|
@@ -2,9 +2,12 @@
|
|
|
2
2
|
import { jsxs, jsx } from 'react/jsx-runtime';
|
|
3
3
|
import { useMemo } from 'react';
|
|
4
4
|
import { useTranslation } from 'react-i18next';
|
|
5
|
-
import { useWalletBookContext, getWalletLinks, WalletIcon } from '@dynamic-labs/wallet-book';
|
|
6
5
|
import { isIOS, isAndroid, isSamsungBrowser } from '@dynamic-labs/utils';
|
|
6
|
+
import { useWalletBookContext, getWalletLinks, WalletIcon } from '@dynamic-labs/wallet-book';
|
|
7
|
+
import { Icon } from '../../components/Icon/Icon.js';
|
|
7
8
|
import { IconWithSpinner, iconRatio } from '../../components/IconWithSpinner/IconWithSpinner.js';
|
|
9
|
+
import { Typography } from '../../components/Typography/Typography.js';
|
|
10
|
+
import { TypographyButton } from '../../components/TypographyButton/TypographyButton.js';
|
|
8
11
|
import '../../context/DynamicContext/DynamicContext.js';
|
|
9
12
|
import '@dynamic-labs/sdk-api-core';
|
|
10
13
|
import '../../shared/logger.js';
|
|
@@ -12,7 +15,6 @@ import '@dynamic-labs/iconic';
|
|
|
12
15
|
import '@dynamic-labs/wallet-connector-core';
|
|
13
16
|
import '../../context/ViewContext/ViewContext.js';
|
|
14
17
|
import { ReactComponent as SvgExternalLink } from '../../shared/assets/externalLink.js';
|
|
15
|
-
import { ReactComponent as SvgFooterInfoIcon } from '../../shared/assets/footer-info-icon.js';
|
|
16
18
|
import '../../utils/constants/colors.js';
|
|
17
19
|
import '../../utils/constants/values.js';
|
|
18
20
|
import '../../store/state/loadingAndLifecycle.js';
|
|
@@ -48,10 +50,7 @@ import '@dynamic-labs/rpc-providers';
|
|
|
48
50
|
import '../../store/state/environmentId.js';
|
|
49
51
|
import '../../store/state/walletConnectorOptions.js';
|
|
50
52
|
import '../../components/Accordion/components/AccordionItem/AccordionItem.js';
|
|
51
|
-
import
|
|
52
|
-
import { Typography } from '../../components/Typography/Typography.js';
|
|
53
|
-
import { Icon } from '../../components/Icon/Icon.js';
|
|
54
|
-
import { TypographyButton } from '../../components/TypographyButton/TypographyButton.js';
|
|
53
|
+
import '../../components/Alert/Alert.js';
|
|
55
54
|
import '../../components/ShadowDOM/ShadowDOM.js';
|
|
56
55
|
import '../../components/IconButton/IconButton.js';
|
|
57
56
|
import '../../components/InlineWidget/InlineWidget.js';
|
|
@@ -112,7 +111,7 @@ const MobileWalletRedirectView = ({ onRetry, }) => {
|
|
|
112
111
|
height: pixelToRem(size),
|
|
113
112
|
width: pixelToRem(size),
|
|
114
113
|
} }));
|
|
115
|
-
return (jsxs("div", { className: 'mobile-wallet-redirect', children: [jsx(IconWithSpinner, { Icon: makeIcon(94 * iconRatio), iconSize: 94, isSpinning: true, className: 'mobile-wallet-redirect__icon-with-spinner' }), jsx(Typography, { variant: 'body_normal', weight: 'regular', className: 'mobile-wallet-redirect__copy-text', copykey: 'dyn_login.mobile_wallet_redirect.prompt', children: t('dyn_login.mobile_wallet_redirect.prompt') }), jsxs(TypographyButton, { buttonVariant: 'brand-primary', typographyProps: { color: 'white', variant: 'button_secondary' }, onClick: onRetry, buttonPadding: 'small', children: [t('dyn_login.mobile_wallet_redirect.open_prompt'), ' ', selectedWalletConnector === null || selectedWalletConnector === void 0 ? void 0 : selectedWalletConnector.name] }), jsx(
|
|
114
|
+
return (jsxs("div", { className: 'mobile-wallet-redirect', children: [jsx(IconWithSpinner, { Icon: makeIcon(94 * iconRatio), iconSize: 94, isSpinning: true, className: 'mobile-wallet-redirect__icon-with-spinner' }), jsx(Typography, { variant: 'body_normal', weight: 'regular', className: 'mobile-wallet-redirect__copy-text', copykey: 'dyn_login.mobile_wallet_redirect.prompt', children: t('dyn_login.mobile_wallet_redirect.prompt') }), jsxs(TypographyButton, { buttonVariant: 'brand-primary', typographyProps: { color: 'white', variant: 'button_secondary' }, onClick: onRetry, buttonPadding: 'small', children: [t('dyn_login.mobile_wallet_redirect.open_prompt'), ' ', selectedWalletConnector === null || selectedWalletConnector === void 0 ? void 0 : selectedWalletConnector.name] }), jsx(Typography, { variant: 'body_small', color: 'secondary', className: 'mobile-wallet-redirect__alert', children: t('dyn_login.mobile_wallet_redirect.redirect_fail_message', {
|
|
116
115
|
walletName: selectedWalletConnector === null || selectedWalletConnector === void 0 ? void 0 : selectedWalletConnector.name,
|
|
117
116
|
}) }), storeName && (jsxs("div", { className: 'mobile-wallet-redirect__wallet-app', onClick: openWalletApp, children: [jsxs("div", { className: 'mobile-wallet-redirect__wallet-app__group', children: [makeIcon(26), jsxs(Typography, { variant: 'body_small', weight: 'bold', children: [t('dyn_login.mobile_wallet_redirect.get_app_prompt'), ' ', selectedWalletConnector === null || selectedWalletConnector === void 0 ? void 0 : selectedWalletConnector.name] })] }), jsxs("div", { className: 'mobile-wallet-redirect__wallet-app__group', children: [jsx(Typography, { className: 'mobile-wallet-redirect__wallet-app__group__app-store', variant: 'body_small', weight: 'bold', color: 'secondary', children: storeName }), jsx(Icon, { color: 'text-secondary', size: 'small', children: jsx(SvgExternalLink, {}) })] })] }))] }));
|
|
118
117
|
};
|
|
@@ -4,7 +4,7 @@ interface IChain {
|
|
|
4
4
|
enabled: boolean;
|
|
5
5
|
name: string;
|
|
6
6
|
}
|
|
7
|
-
export declare const getEnabledChains: (chains: IChain[]) => ("STARK" | "ETH" | "FLOW" | "SOL" | "EVM" | "ALGO" | "ATOM" | "COSMOS" | "BTC")[];
|
|
7
|
+
export declare const getEnabledChains: (chains: IChain[]) => ("STARK" | "ETH" | "FLOW" | "SOL" | "EVM" | "ALGO" | "ATOM" | "COSMOS" | "BTC" | "ECLIPSE")[];
|
|
8
8
|
type BaseGetSupportedWalletOpts = Omit<GetSupportedWalletsOpts, 'walletConnectProjectId' | 'chainRpcProviders'>;
|
|
9
9
|
export declare const getWallets: (props: {
|
|
10
10
|
getSupportedWalletOpts: BaseGetSupportedWalletOpts;
|
|
@@ -93,7 +93,17 @@ const useFetchCurrency = (connector, network) => {
|
|
|
93
93
|
if (!chainId) {
|
|
94
94
|
return chainInfo === null || chainInfo === void 0 ? void 0 : chainInfo.symbol;
|
|
95
95
|
}
|
|
96
|
-
const network =
|
|
96
|
+
const network = (() => {
|
|
97
|
+
if (connector.connectedChain === 'STARK') {
|
|
98
|
+
return 'starknetNetworks';
|
|
99
|
+
}
|
|
100
|
+
else if (connector.connectedChain === 'ECLIPSE') {
|
|
101
|
+
return 'eclipseNetworks';
|
|
102
|
+
}
|
|
103
|
+
else {
|
|
104
|
+
return 'evmNetworks';
|
|
105
|
+
}
|
|
106
|
+
})();
|
|
97
107
|
const result = (_b = connector[network]) === null || _b === void 0 ? void 0 : _b.find((element) => element.chainId === chainId);
|
|
98
108
|
return (_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;
|
|
99
109
|
});
|
|
@@ -89,7 +89,17 @@ const useFetchCurrency = (connector, network) => {
|
|
|
89
89
|
if (!chainId) {
|
|
90
90
|
return chainInfo === null || chainInfo === void 0 ? void 0 : chainInfo.symbol;
|
|
91
91
|
}
|
|
92
|
-
const network =
|
|
92
|
+
const network = (() => {
|
|
93
|
+
if (connector.connectedChain === 'STARK') {
|
|
94
|
+
return 'starknetNetworks';
|
|
95
|
+
}
|
|
96
|
+
else if (connector.connectedChain === 'ECLIPSE') {
|
|
97
|
+
return 'eclipseNetworks';
|
|
98
|
+
}
|
|
99
|
+
else {
|
|
100
|
+
return 'evmNetworks';
|
|
101
|
+
}
|
|
102
|
+
})();
|
|
93
103
|
const result = (_b = connector[network]) === null || _b === void 0 ? void 0 : _b.find((element) => element.chainId === chainId);
|
|
94
104
|
return (_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;
|
|
95
105
|
});
|