@tuwaio/nova-connect 1.0.0-fix-packages-alpha.3.03d1b99 → 1.0.0-fix-packages-alpha.4.a65039b
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/{ToastError-CQBhCnr9.d.cts → ToastError-AjNQOETK.d.cts} +282 -1
- package/dist/{ToastError-Dd-5Ql0Y.d.ts → ToastError-B6QhCVuG.d.ts} +282 -1
- package/dist/chunk-G5ZR2T4P.js +3 -0
- package/dist/chunk-G5ZR2T4P.js.map +1 -0
- package/dist/chunk-PGDNEHRC.cjs +3 -0
- package/dist/chunk-PGDNEHRC.cjs.map +1 -0
- package/dist/chunk-UJKDTNLR.cjs +6 -0
- package/dist/chunk-UJKDTNLR.cjs.map +1 -0
- package/dist/chunk-XUQIDROF.js +6 -0
- package/dist/chunk-XUQIDROF.js.map +1 -0
- package/dist/components/index.cjs +1 -1
- package/dist/components/index.d.cts +1 -1
- package/dist/components/index.d.ts +1 -1
- package/dist/components/index.js +1 -1
- package/dist/hooks/index.cjs +1 -1
- package/dist/hooks/index.js +1 -1
- package/dist/index.cjs +1 -1
- package/dist/index.css +3 -0
- package/dist/index.d.cts +2 -2
- package/dist/index.d.ts +2 -2
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/package.json +3 -3
- package/dist/chunk-6ESMWU2H.js +0 -3
- package/dist/chunk-6ESMWU2H.js.map +0 -1
- package/dist/chunk-BG2OQMFS.cjs +0 -3
- package/dist/chunk-BG2OQMFS.cjs.map +0 -1
- package/dist/chunk-CU47IKTB.cjs +0 -6
- package/dist/chunk-CU47IKTB.cjs.map +0 -1
- package/dist/chunk-PSY7SJ7S.js +0 -6
- package/dist/chunk-PSY7SJ7S.js.map +0 -1
|
@@ -8,7 +8,7 @@ import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
|
8
8
|
import * as Select from '@radix-ui/react-select';
|
|
9
9
|
import { I as InitialChains } from './types-DGsiEwne.cjs';
|
|
10
10
|
import { Transaction } from '@tuwaio/pulsar-core';
|
|
11
|
-
import { OrbitAdapter, RecentlyConnectedConnectorData
|
|
11
|
+
import { ConnectorType, OrbitAdapter, RecentlyConnectedConnectorData } from '@tuwaio/orbit-core';
|
|
12
12
|
import { Connector } from '@tuwaio/satellite-react';
|
|
13
13
|
|
|
14
14
|
/**
|
|
@@ -3010,6 +3010,284 @@ interface ConnectedModalTxHistoryProps extends Pick<NovaConnectProviderProps, 't
|
|
|
3010
3010
|
*/
|
|
3011
3011
|
declare const ConnectedModalTxHistory: React__default.ForwardRefExoticComponent<ConnectedModalTxHistoryProps & React__default.RefAttributes<HTMLDivElement>>;
|
|
3012
3012
|
|
|
3013
|
+
/**
|
|
3014
|
+
* @file ConnectionsContent component for managing multiple wallet connections.
|
|
3015
|
+
*/
|
|
3016
|
+
|
|
3017
|
+
type CustomContainerProps = {
|
|
3018
|
+
className?: string;
|
|
3019
|
+
children: ReactNode;
|
|
3020
|
+
isEmpty?: boolean;
|
|
3021
|
+
connectionsCount?: number;
|
|
3022
|
+
recentCount?: number;
|
|
3023
|
+
role?: string;
|
|
3024
|
+
'aria-label'?: string;
|
|
3025
|
+
'data-testid'?: string;
|
|
3026
|
+
};
|
|
3027
|
+
type CustomSectionHeaderProps = {
|
|
3028
|
+
title: string;
|
|
3029
|
+
count?: number;
|
|
3030
|
+
className?: string;
|
|
3031
|
+
'aria-level'?: number;
|
|
3032
|
+
};
|
|
3033
|
+
type CustomActiveSectionProps = {
|
|
3034
|
+
className?: string;
|
|
3035
|
+
children: ReactNode;
|
|
3036
|
+
count: number;
|
|
3037
|
+
labels?: Record<string, string>;
|
|
3038
|
+
};
|
|
3039
|
+
type CustomRecentSectionProps = {
|
|
3040
|
+
className?: string;
|
|
3041
|
+
children: ReactNode;
|
|
3042
|
+
labels?: Record<string, string>;
|
|
3043
|
+
};
|
|
3044
|
+
type CustomActiveRowProps = {
|
|
3045
|
+
connectorType: ConnectorType;
|
|
3046
|
+
address: string;
|
|
3047
|
+
fullAddress?: string;
|
|
3048
|
+
chainId?: number | string;
|
|
3049
|
+
onDisconnect: (e: React.MouseEvent) => void;
|
|
3050
|
+
className?: string;
|
|
3051
|
+
explorerLink?: string;
|
|
3052
|
+
icon?: string;
|
|
3053
|
+
labels?: Record<string, string>;
|
|
3054
|
+
isCopied?: boolean;
|
|
3055
|
+
onCopy?: () => void;
|
|
3056
|
+
onExplorer?: () => void;
|
|
3057
|
+
};
|
|
3058
|
+
type CustomConnectedRowProps = {
|
|
3059
|
+
connectorType: ConnectorType;
|
|
3060
|
+
address: string;
|
|
3061
|
+
chainId?: number | string;
|
|
3062
|
+
onSwitch: () => void;
|
|
3063
|
+
onDisconnect: (e: React.MouseEvent) => void;
|
|
3064
|
+
className?: string;
|
|
3065
|
+
icon?: string;
|
|
3066
|
+
labels?: Record<string, string>;
|
|
3067
|
+
isHovered?: boolean;
|
|
3068
|
+
};
|
|
3069
|
+
type CustomRecentRowProps = {
|
|
3070
|
+
connectorType: ConnectorType;
|
|
3071
|
+
address: string;
|
|
3072
|
+
timestamp: number;
|
|
3073
|
+
onConnect?: () => void;
|
|
3074
|
+
onRemove: (e: React.MouseEvent) => void;
|
|
3075
|
+
className?: string;
|
|
3076
|
+
icon?: string;
|
|
3077
|
+
isConnecting?: boolean;
|
|
3078
|
+
labels?: Record<string, string>;
|
|
3079
|
+
};
|
|
3080
|
+
type CustomActionButtonProps = {
|
|
3081
|
+
onClick: (e: React.MouseEvent) => void;
|
|
3082
|
+
label: string;
|
|
3083
|
+
icon?: ReactNode;
|
|
3084
|
+
disabled?: boolean;
|
|
3085
|
+
loading?: boolean;
|
|
3086
|
+
className?: string;
|
|
3087
|
+
'aria-label'?: string;
|
|
3088
|
+
'aria-describedby'?: string;
|
|
3089
|
+
variant?: 'primary' | 'secondary' | 'danger';
|
|
3090
|
+
};
|
|
3091
|
+
type CustomAddWalletButtonProps = {
|
|
3092
|
+
onClick: () => void;
|
|
3093
|
+
label: string;
|
|
3094
|
+
className?: string;
|
|
3095
|
+
disabled?: boolean;
|
|
3096
|
+
};
|
|
3097
|
+
type CustomEmptyStateProps = {
|
|
3098
|
+
message: string;
|
|
3099
|
+
className?: string;
|
|
3100
|
+
};
|
|
3101
|
+
/**
|
|
3102
|
+
* Customization options for ConnectionsContent component
|
|
3103
|
+
*/
|
|
3104
|
+
type ConnectionsContentCustomization = {
|
|
3105
|
+
/** Override container element props */
|
|
3106
|
+
containerProps?: Partial<ComponentPropsWithoutRef<'div'>>;
|
|
3107
|
+
/** Custom components */
|
|
3108
|
+
components?: {
|
|
3109
|
+
/** Custom container component */
|
|
3110
|
+
Container?: ComponentType<CustomContainerProps>;
|
|
3111
|
+
/** Custom section header component */
|
|
3112
|
+
SectionHeader?: ComponentType<CustomSectionHeaderProps>;
|
|
3113
|
+
/** Custom active connectors section */
|
|
3114
|
+
ActiveConnectorsSection?: ComponentType<CustomActiveSectionProps>;
|
|
3115
|
+
/** Custom recently connected section */
|
|
3116
|
+
RecentlyConnectedSection?: ComponentType<CustomRecentSectionProps>;
|
|
3117
|
+
/** Custom active connector row */
|
|
3118
|
+
ActiveConnectorRow?: ComponentType<CustomActiveRowProps>;
|
|
3119
|
+
/** Custom connected connector row */
|
|
3120
|
+
ConnectedConnectorRow?: ComponentType<CustomConnectedRowProps>;
|
|
3121
|
+
/** Custom recently connected row */
|
|
3122
|
+
RecentlyConnectedRow?: ComponentType<CustomRecentRowProps>;
|
|
3123
|
+
/** Custom action button */
|
|
3124
|
+
ActionButton?: ComponentType<CustomActionButtonProps>;
|
|
3125
|
+
/** Custom add wallet button */
|
|
3126
|
+
AddWalletButton?: ComponentType<CustomAddWalletButtonProps>;
|
|
3127
|
+
/** Custom empty state */
|
|
3128
|
+
EmptyState?: ComponentType<CustomEmptyStateProps>;
|
|
3129
|
+
};
|
|
3130
|
+
/** Custom class name generators */
|
|
3131
|
+
classNames?: {
|
|
3132
|
+
/** Function to generate container classes */
|
|
3133
|
+
container?: (params: {
|
|
3134
|
+
isEmpty: boolean;
|
|
3135
|
+
connectionsCount: number;
|
|
3136
|
+
recentCount: number;
|
|
3137
|
+
}) => string;
|
|
3138
|
+
/** Function to generate section header classes */
|
|
3139
|
+
sectionHeader?: (params: {
|
|
3140
|
+
sectionType: 'active' | 'recent';
|
|
3141
|
+
}) => string;
|
|
3142
|
+
/** Function to generate active section classes */
|
|
3143
|
+
activeSection?: (params: {
|
|
3144
|
+
count: number;
|
|
3145
|
+
}) => string;
|
|
3146
|
+
/** Function to generate recent section classes */
|
|
3147
|
+
recentSection?: (params: {
|
|
3148
|
+
count: number;
|
|
3149
|
+
}) => string;
|
|
3150
|
+
/** Function to generate active row classes */
|
|
3151
|
+
activeRow?: (params: {
|
|
3152
|
+
connectorType: ConnectorType;
|
|
3153
|
+
hasExplorer: boolean;
|
|
3154
|
+
}) => string;
|
|
3155
|
+
/** Function to generate connected row classes */
|
|
3156
|
+
connectedRow?: (params: {
|
|
3157
|
+
connectorType: ConnectorType;
|
|
3158
|
+
isHovered: boolean;
|
|
3159
|
+
}) => string;
|
|
3160
|
+
/** Function to generate recent row classes */
|
|
3161
|
+
recentRow?: (params: {
|
|
3162
|
+
connectorType: ConnectorType;
|
|
3163
|
+
isConnecting: boolean;
|
|
3164
|
+
}) => string;
|
|
3165
|
+
/** Function to generate action button classes */
|
|
3166
|
+
actionButton?: (params: {
|
|
3167
|
+
variant?: 'primary' | 'secondary' | 'danger';
|
|
3168
|
+
disabled?: boolean;
|
|
3169
|
+
loading?: boolean;
|
|
3170
|
+
}) => string;
|
|
3171
|
+
/** Function to generate add wallet button classes */
|
|
3172
|
+
addWalletButton?: (params: {
|
|
3173
|
+
disabled?: boolean;
|
|
3174
|
+
}) => string;
|
|
3175
|
+
/** Function to generate empty state classes */
|
|
3176
|
+
emptyState?: () => string;
|
|
3177
|
+
};
|
|
3178
|
+
/** Custom event handlers */
|
|
3179
|
+
handlers?: {
|
|
3180
|
+
/** Custom handler before switching connection */
|
|
3181
|
+
onBeforeSwitch?: (connectorType: ConnectorType) => boolean | Promise<boolean>;
|
|
3182
|
+
/** Custom handler after switching connection */
|
|
3183
|
+
onAfterSwitch?: (connectorType: ConnectorType) => void;
|
|
3184
|
+
/** Custom handler when switch fails */
|
|
3185
|
+
onSwitchError?: (connectorType: ConnectorType, error: Error) => void;
|
|
3186
|
+
/** Custom handler before disconnect */
|
|
3187
|
+
onBeforeDisconnect?: (connectorType: ConnectorType) => boolean | Promise<boolean>;
|
|
3188
|
+
/** Custom handler after disconnect */
|
|
3189
|
+
onAfterDisconnect?: (connectorType: ConnectorType) => void;
|
|
3190
|
+
/** Custom handler when disconnect fails */
|
|
3191
|
+
onDisconnectError?: (connectorType: ConnectorType, error: Error) => void;
|
|
3192
|
+
/** Custom handler before connecting recent */
|
|
3193
|
+
onBeforeConnect?: (connectorType: ConnectorType) => boolean | Promise<boolean>;
|
|
3194
|
+
/** Custom handler after connecting recent */
|
|
3195
|
+
onAfterConnect?: (connectorType: ConnectorType) => void;
|
|
3196
|
+
/** Custom handler when connect fails */
|
|
3197
|
+
onConnectError?: (connectorType: ConnectorType, error: Error) => void;
|
|
3198
|
+
/** Custom handler before removing recent */
|
|
3199
|
+
onBeforeRemove?: (connectorType: ConnectorType) => boolean | Promise<boolean>;
|
|
3200
|
+
/** Custom handler after removing recent */
|
|
3201
|
+
onAfterRemove?: (connectorType: ConnectorType) => void;
|
|
3202
|
+
/** Custom handler for copy address */
|
|
3203
|
+
onCopyAddress?: (address: string, connectorType: ConnectorType) => void;
|
|
3204
|
+
/** Custom handler for explorer click */
|
|
3205
|
+
onExplorerClick?: (url: string, address: string, connectorType: ConnectorType) => void;
|
|
3206
|
+
/** Custom handler for add wallet click */
|
|
3207
|
+
onAddWalletClick?: () => void;
|
|
3208
|
+
};
|
|
3209
|
+
/** Custom text and ARIA labels */
|
|
3210
|
+
labels?: {
|
|
3211
|
+
/** Custom empty state message */
|
|
3212
|
+
emptyStateMessage?: string;
|
|
3213
|
+
/** Custom active section title */
|
|
3214
|
+
activeSectionTitle?: string;
|
|
3215
|
+
/** Custom recent section title */
|
|
3216
|
+
recentSectionTitle?: string;
|
|
3217
|
+
/** Custom disconnect button label */
|
|
3218
|
+
disconnectLabel?: string;
|
|
3219
|
+
/** Custom switch button label */
|
|
3220
|
+
switchLabel?: string;
|
|
3221
|
+
/** Custom connect button label */
|
|
3222
|
+
connectLabel?: string;
|
|
3223
|
+
/** Custom remove button label */
|
|
3224
|
+
removeLabel?: string;
|
|
3225
|
+
/** Custom copy button label */
|
|
3226
|
+
copyLabel?: string;
|
|
3227
|
+
/** Custom copied success label */
|
|
3228
|
+
copiedLabel?: string;
|
|
3229
|
+
/** Custom explorer button label */
|
|
3230
|
+
explorerLabel?: string;
|
|
3231
|
+
/** Custom add wallet button label */
|
|
3232
|
+
addWalletLabel?: string;
|
|
3233
|
+
/** Custom ARIA label for container */
|
|
3234
|
+
containerAriaLabel?: string;
|
|
3235
|
+
/** Custom ARIA label for active section */
|
|
3236
|
+
activeSectionAriaLabel?: string;
|
|
3237
|
+
/** Custom ARIA label for recent section */
|
|
3238
|
+
recentSectionAriaLabel?: string;
|
|
3239
|
+
/** Custom ARIA description for switch action */
|
|
3240
|
+
switchAriaDescription?: string;
|
|
3241
|
+
/** Custom ARIA description for disconnect action */
|
|
3242
|
+
disconnectAriaDescription?: string;
|
|
3243
|
+
/** Custom ARIA description for connect action */
|
|
3244
|
+
connectAriaDescription?: string;
|
|
3245
|
+
/** Custom ARIA description for remove action */
|
|
3246
|
+
removeAriaDescription?: string;
|
|
3247
|
+
/** Custom ARIA live region announcement for switch */
|
|
3248
|
+
switchAnnouncement?: (walletName: string) => string;
|
|
3249
|
+
/** Custom ARIA live region announcement for disconnect */
|
|
3250
|
+
disconnectAnnouncement?: (walletName: string) => string;
|
|
3251
|
+
/** Custom ARIA live region announcement for connect */
|
|
3252
|
+
connectAnnouncement?: (walletName: string) => string;
|
|
3253
|
+
};
|
|
3254
|
+
/** Configuration options */
|
|
3255
|
+
config?: {
|
|
3256
|
+
/** Whether to disable animations */
|
|
3257
|
+
disableAnimation?: boolean;
|
|
3258
|
+
/** Whether to reduce motion for accessibility */
|
|
3259
|
+
reduceMotion?: boolean;
|
|
3260
|
+
/** Whether to show empty state */
|
|
3261
|
+
showEmptyState?: boolean;
|
|
3262
|
+
/** Whether to show add wallet button */
|
|
3263
|
+
showAddWalletButton?: boolean;
|
|
3264
|
+
/** Whether to show recently connected section */
|
|
3265
|
+
showRecentSection?: boolean;
|
|
3266
|
+
/** Whether to enable keyboard shortcuts */
|
|
3267
|
+
enableKeyboardShortcuts?: boolean;
|
|
3268
|
+
/** Custom keyboard shortcuts map */
|
|
3269
|
+
keyboardShortcuts?: {
|
|
3270
|
+
/** Key for switching to next connection */
|
|
3271
|
+
nextConnection?: string;
|
|
3272
|
+
/** Key for switching to previous connection */
|
|
3273
|
+
prevConnection?: string;
|
|
3274
|
+
/** Key for disconnecting active wallet */
|
|
3275
|
+
disconnect?: string;
|
|
3276
|
+
};
|
|
3277
|
+
/** Maximum recent connections to show */
|
|
3278
|
+
maxRecentConnections?: number;
|
|
3279
|
+
/** Whether to auto-focus first interactive element */
|
|
3280
|
+
autoFocus?: boolean;
|
|
3281
|
+
/** Custom test IDs */
|
|
3282
|
+
testIds?: {
|
|
3283
|
+
container?: string;
|
|
3284
|
+
activeSection?: string;
|
|
3285
|
+
recentSection?: string;
|
|
3286
|
+
addWalletButton?: string;
|
|
3287
|
+
};
|
|
3288
|
+
};
|
|
3289
|
+
};
|
|
3290
|
+
|
|
3013
3291
|
/**
|
|
3014
3292
|
* @file ConnectedModal component with comprehensive customization options for all child components.
|
|
3015
3293
|
*/
|
|
@@ -3052,6 +3330,7 @@ type MainContentProps$1 = Pick<NovaConnectProviderProps, 'transactionPool' | 'pu
|
|
|
3052
3330
|
chain: string | number;
|
|
3053
3331
|
};
|
|
3054
3332
|
className?: string;
|
|
3333
|
+
childCustomizations?: ConnectedModalCustomization['childCustomizations'];
|
|
3055
3334
|
};
|
|
3056
3335
|
type WalletNameConfig = {
|
|
3057
3336
|
abbreviateSymbols?: number;
|
|
@@ -3184,6 +3463,8 @@ type ConnectedModalCustomization = {
|
|
|
3184
3463
|
childCustomizations?: {
|
|
3185
3464
|
/** Customization for ConnectedModalMainContent component */
|
|
3186
3465
|
mainContent?: ConnectedModalMainContentCustomization;
|
|
3466
|
+
/** Customization for ConnectionsContent component */
|
|
3467
|
+
connections?: ConnectionsContentCustomization;
|
|
3187
3468
|
/** Customization for ConnectedModalTxHistory component */
|
|
3188
3469
|
txHistory?: Record<string, unknown>;
|
|
3189
3470
|
/** Customization for ScrollableChainList component */
|
|
@@ -8,7 +8,7 @@ import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
|
8
8
|
import * as Select from '@radix-ui/react-select';
|
|
9
9
|
import { I as InitialChains } from './types-DGsiEwne.js';
|
|
10
10
|
import { Transaction } from '@tuwaio/pulsar-core';
|
|
11
|
-
import { OrbitAdapter, RecentlyConnectedConnectorData
|
|
11
|
+
import { ConnectorType, OrbitAdapter, RecentlyConnectedConnectorData } from '@tuwaio/orbit-core';
|
|
12
12
|
import { Connector } from '@tuwaio/satellite-react';
|
|
13
13
|
|
|
14
14
|
/**
|
|
@@ -3010,6 +3010,284 @@ interface ConnectedModalTxHistoryProps extends Pick<NovaConnectProviderProps, 't
|
|
|
3010
3010
|
*/
|
|
3011
3011
|
declare const ConnectedModalTxHistory: React__default.ForwardRefExoticComponent<ConnectedModalTxHistoryProps & React__default.RefAttributes<HTMLDivElement>>;
|
|
3012
3012
|
|
|
3013
|
+
/**
|
|
3014
|
+
* @file ConnectionsContent component for managing multiple wallet connections.
|
|
3015
|
+
*/
|
|
3016
|
+
|
|
3017
|
+
type CustomContainerProps = {
|
|
3018
|
+
className?: string;
|
|
3019
|
+
children: ReactNode;
|
|
3020
|
+
isEmpty?: boolean;
|
|
3021
|
+
connectionsCount?: number;
|
|
3022
|
+
recentCount?: number;
|
|
3023
|
+
role?: string;
|
|
3024
|
+
'aria-label'?: string;
|
|
3025
|
+
'data-testid'?: string;
|
|
3026
|
+
};
|
|
3027
|
+
type CustomSectionHeaderProps = {
|
|
3028
|
+
title: string;
|
|
3029
|
+
count?: number;
|
|
3030
|
+
className?: string;
|
|
3031
|
+
'aria-level'?: number;
|
|
3032
|
+
};
|
|
3033
|
+
type CustomActiveSectionProps = {
|
|
3034
|
+
className?: string;
|
|
3035
|
+
children: ReactNode;
|
|
3036
|
+
count: number;
|
|
3037
|
+
labels?: Record<string, string>;
|
|
3038
|
+
};
|
|
3039
|
+
type CustomRecentSectionProps = {
|
|
3040
|
+
className?: string;
|
|
3041
|
+
children: ReactNode;
|
|
3042
|
+
labels?: Record<string, string>;
|
|
3043
|
+
};
|
|
3044
|
+
type CustomActiveRowProps = {
|
|
3045
|
+
connectorType: ConnectorType;
|
|
3046
|
+
address: string;
|
|
3047
|
+
fullAddress?: string;
|
|
3048
|
+
chainId?: number | string;
|
|
3049
|
+
onDisconnect: (e: React.MouseEvent) => void;
|
|
3050
|
+
className?: string;
|
|
3051
|
+
explorerLink?: string;
|
|
3052
|
+
icon?: string;
|
|
3053
|
+
labels?: Record<string, string>;
|
|
3054
|
+
isCopied?: boolean;
|
|
3055
|
+
onCopy?: () => void;
|
|
3056
|
+
onExplorer?: () => void;
|
|
3057
|
+
};
|
|
3058
|
+
type CustomConnectedRowProps = {
|
|
3059
|
+
connectorType: ConnectorType;
|
|
3060
|
+
address: string;
|
|
3061
|
+
chainId?: number | string;
|
|
3062
|
+
onSwitch: () => void;
|
|
3063
|
+
onDisconnect: (e: React.MouseEvent) => void;
|
|
3064
|
+
className?: string;
|
|
3065
|
+
icon?: string;
|
|
3066
|
+
labels?: Record<string, string>;
|
|
3067
|
+
isHovered?: boolean;
|
|
3068
|
+
};
|
|
3069
|
+
type CustomRecentRowProps = {
|
|
3070
|
+
connectorType: ConnectorType;
|
|
3071
|
+
address: string;
|
|
3072
|
+
timestamp: number;
|
|
3073
|
+
onConnect?: () => void;
|
|
3074
|
+
onRemove: (e: React.MouseEvent) => void;
|
|
3075
|
+
className?: string;
|
|
3076
|
+
icon?: string;
|
|
3077
|
+
isConnecting?: boolean;
|
|
3078
|
+
labels?: Record<string, string>;
|
|
3079
|
+
};
|
|
3080
|
+
type CustomActionButtonProps = {
|
|
3081
|
+
onClick: (e: React.MouseEvent) => void;
|
|
3082
|
+
label: string;
|
|
3083
|
+
icon?: ReactNode;
|
|
3084
|
+
disabled?: boolean;
|
|
3085
|
+
loading?: boolean;
|
|
3086
|
+
className?: string;
|
|
3087
|
+
'aria-label'?: string;
|
|
3088
|
+
'aria-describedby'?: string;
|
|
3089
|
+
variant?: 'primary' | 'secondary' | 'danger';
|
|
3090
|
+
};
|
|
3091
|
+
type CustomAddWalletButtonProps = {
|
|
3092
|
+
onClick: () => void;
|
|
3093
|
+
label: string;
|
|
3094
|
+
className?: string;
|
|
3095
|
+
disabled?: boolean;
|
|
3096
|
+
};
|
|
3097
|
+
type CustomEmptyStateProps = {
|
|
3098
|
+
message: string;
|
|
3099
|
+
className?: string;
|
|
3100
|
+
};
|
|
3101
|
+
/**
|
|
3102
|
+
* Customization options for ConnectionsContent component
|
|
3103
|
+
*/
|
|
3104
|
+
type ConnectionsContentCustomization = {
|
|
3105
|
+
/** Override container element props */
|
|
3106
|
+
containerProps?: Partial<ComponentPropsWithoutRef<'div'>>;
|
|
3107
|
+
/** Custom components */
|
|
3108
|
+
components?: {
|
|
3109
|
+
/** Custom container component */
|
|
3110
|
+
Container?: ComponentType<CustomContainerProps>;
|
|
3111
|
+
/** Custom section header component */
|
|
3112
|
+
SectionHeader?: ComponentType<CustomSectionHeaderProps>;
|
|
3113
|
+
/** Custom active connectors section */
|
|
3114
|
+
ActiveConnectorsSection?: ComponentType<CustomActiveSectionProps>;
|
|
3115
|
+
/** Custom recently connected section */
|
|
3116
|
+
RecentlyConnectedSection?: ComponentType<CustomRecentSectionProps>;
|
|
3117
|
+
/** Custom active connector row */
|
|
3118
|
+
ActiveConnectorRow?: ComponentType<CustomActiveRowProps>;
|
|
3119
|
+
/** Custom connected connector row */
|
|
3120
|
+
ConnectedConnectorRow?: ComponentType<CustomConnectedRowProps>;
|
|
3121
|
+
/** Custom recently connected row */
|
|
3122
|
+
RecentlyConnectedRow?: ComponentType<CustomRecentRowProps>;
|
|
3123
|
+
/** Custom action button */
|
|
3124
|
+
ActionButton?: ComponentType<CustomActionButtonProps>;
|
|
3125
|
+
/** Custom add wallet button */
|
|
3126
|
+
AddWalletButton?: ComponentType<CustomAddWalletButtonProps>;
|
|
3127
|
+
/** Custom empty state */
|
|
3128
|
+
EmptyState?: ComponentType<CustomEmptyStateProps>;
|
|
3129
|
+
};
|
|
3130
|
+
/** Custom class name generators */
|
|
3131
|
+
classNames?: {
|
|
3132
|
+
/** Function to generate container classes */
|
|
3133
|
+
container?: (params: {
|
|
3134
|
+
isEmpty: boolean;
|
|
3135
|
+
connectionsCount: number;
|
|
3136
|
+
recentCount: number;
|
|
3137
|
+
}) => string;
|
|
3138
|
+
/** Function to generate section header classes */
|
|
3139
|
+
sectionHeader?: (params: {
|
|
3140
|
+
sectionType: 'active' | 'recent';
|
|
3141
|
+
}) => string;
|
|
3142
|
+
/** Function to generate active section classes */
|
|
3143
|
+
activeSection?: (params: {
|
|
3144
|
+
count: number;
|
|
3145
|
+
}) => string;
|
|
3146
|
+
/** Function to generate recent section classes */
|
|
3147
|
+
recentSection?: (params: {
|
|
3148
|
+
count: number;
|
|
3149
|
+
}) => string;
|
|
3150
|
+
/** Function to generate active row classes */
|
|
3151
|
+
activeRow?: (params: {
|
|
3152
|
+
connectorType: ConnectorType;
|
|
3153
|
+
hasExplorer: boolean;
|
|
3154
|
+
}) => string;
|
|
3155
|
+
/** Function to generate connected row classes */
|
|
3156
|
+
connectedRow?: (params: {
|
|
3157
|
+
connectorType: ConnectorType;
|
|
3158
|
+
isHovered: boolean;
|
|
3159
|
+
}) => string;
|
|
3160
|
+
/** Function to generate recent row classes */
|
|
3161
|
+
recentRow?: (params: {
|
|
3162
|
+
connectorType: ConnectorType;
|
|
3163
|
+
isConnecting: boolean;
|
|
3164
|
+
}) => string;
|
|
3165
|
+
/** Function to generate action button classes */
|
|
3166
|
+
actionButton?: (params: {
|
|
3167
|
+
variant?: 'primary' | 'secondary' | 'danger';
|
|
3168
|
+
disabled?: boolean;
|
|
3169
|
+
loading?: boolean;
|
|
3170
|
+
}) => string;
|
|
3171
|
+
/** Function to generate add wallet button classes */
|
|
3172
|
+
addWalletButton?: (params: {
|
|
3173
|
+
disabled?: boolean;
|
|
3174
|
+
}) => string;
|
|
3175
|
+
/** Function to generate empty state classes */
|
|
3176
|
+
emptyState?: () => string;
|
|
3177
|
+
};
|
|
3178
|
+
/** Custom event handlers */
|
|
3179
|
+
handlers?: {
|
|
3180
|
+
/** Custom handler before switching connection */
|
|
3181
|
+
onBeforeSwitch?: (connectorType: ConnectorType) => boolean | Promise<boolean>;
|
|
3182
|
+
/** Custom handler after switching connection */
|
|
3183
|
+
onAfterSwitch?: (connectorType: ConnectorType) => void;
|
|
3184
|
+
/** Custom handler when switch fails */
|
|
3185
|
+
onSwitchError?: (connectorType: ConnectorType, error: Error) => void;
|
|
3186
|
+
/** Custom handler before disconnect */
|
|
3187
|
+
onBeforeDisconnect?: (connectorType: ConnectorType) => boolean | Promise<boolean>;
|
|
3188
|
+
/** Custom handler after disconnect */
|
|
3189
|
+
onAfterDisconnect?: (connectorType: ConnectorType) => void;
|
|
3190
|
+
/** Custom handler when disconnect fails */
|
|
3191
|
+
onDisconnectError?: (connectorType: ConnectorType, error: Error) => void;
|
|
3192
|
+
/** Custom handler before connecting recent */
|
|
3193
|
+
onBeforeConnect?: (connectorType: ConnectorType) => boolean | Promise<boolean>;
|
|
3194
|
+
/** Custom handler after connecting recent */
|
|
3195
|
+
onAfterConnect?: (connectorType: ConnectorType) => void;
|
|
3196
|
+
/** Custom handler when connect fails */
|
|
3197
|
+
onConnectError?: (connectorType: ConnectorType, error: Error) => void;
|
|
3198
|
+
/** Custom handler before removing recent */
|
|
3199
|
+
onBeforeRemove?: (connectorType: ConnectorType) => boolean | Promise<boolean>;
|
|
3200
|
+
/** Custom handler after removing recent */
|
|
3201
|
+
onAfterRemove?: (connectorType: ConnectorType) => void;
|
|
3202
|
+
/** Custom handler for copy address */
|
|
3203
|
+
onCopyAddress?: (address: string, connectorType: ConnectorType) => void;
|
|
3204
|
+
/** Custom handler for explorer click */
|
|
3205
|
+
onExplorerClick?: (url: string, address: string, connectorType: ConnectorType) => void;
|
|
3206
|
+
/** Custom handler for add wallet click */
|
|
3207
|
+
onAddWalletClick?: () => void;
|
|
3208
|
+
};
|
|
3209
|
+
/** Custom text and ARIA labels */
|
|
3210
|
+
labels?: {
|
|
3211
|
+
/** Custom empty state message */
|
|
3212
|
+
emptyStateMessage?: string;
|
|
3213
|
+
/** Custom active section title */
|
|
3214
|
+
activeSectionTitle?: string;
|
|
3215
|
+
/** Custom recent section title */
|
|
3216
|
+
recentSectionTitle?: string;
|
|
3217
|
+
/** Custom disconnect button label */
|
|
3218
|
+
disconnectLabel?: string;
|
|
3219
|
+
/** Custom switch button label */
|
|
3220
|
+
switchLabel?: string;
|
|
3221
|
+
/** Custom connect button label */
|
|
3222
|
+
connectLabel?: string;
|
|
3223
|
+
/** Custom remove button label */
|
|
3224
|
+
removeLabel?: string;
|
|
3225
|
+
/** Custom copy button label */
|
|
3226
|
+
copyLabel?: string;
|
|
3227
|
+
/** Custom copied success label */
|
|
3228
|
+
copiedLabel?: string;
|
|
3229
|
+
/** Custom explorer button label */
|
|
3230
|
+
explorerLabel?: string;
|
|
3231
|
+
/** Custom add wallet button label */
|
|
3232
|
+
addWalletLabel?: string;
|
|
3233
|
+
/** Custom ARIA label for container */
|
|
3234
|
+
containerAriaLabel?: string;
|
|
3235
|
+
/** Custom ARIA label for active section */
|
|
3236
|
+
activeSectionAriaLabel?: string;
|
|
3237
|
+
/** Custom ARIA label for recent section */
|
|
3238
|
+
recentSectionAriaLabel?: string;
|
|
3239
|
+
/** Custom ARIA description for switch action */
|
|
3240
|
+
switchAriaDescription?: string;
|
|
3241
|
+
/** Custom ARIA description for disconnect action */
|
|
3242
|
+
disconnectAriaDescription?: string;
|
|
3243
|
+
/** Custom ARIA description for connect action */
|
|
3244
|
+
connectAriaDescription?: string;
|
|
3245
|
+
/** Custom ARIA description for remove action */
|
|
3246
|
+
removeAriaDescription?: string;
|
|
3247
|
+
/** Custom ARIA live region announcement for switch */
|
|
3248
|
+
switchAnnouncement?: (walletName: string) => string;
|
|
3249
|
+
/** Custom ARIA live region announcement for disconnect */
|
|
3250
|
+
disconnectAnnouncement?: (walletName: string) => string;
|
|
3251
|
+
/** Custom ARIA live region announcement for connect */
|
|
3252
|
+
connectAnnouncement?: (walletName: string) => string;
|
|
3253
|
+
};
|
|
3254
|
+
/** Configuration options */
|
|
3255
|
+
config?: {
|
|
3256
|
+
/** Whether to disable animations */
|
|
3257
|
+
disableAnimation?: boolean;
|
|
3258
|
+
/** Whether to reduce motion for accessibility */
|
|
3259
|
+
reduceMotion?: boolean;
|
|
3260
|
+
/** Whether to show empty state */
|
|
3261
|
+
showEmptyState?: boolean;
|
|
3262
|
+
/** Whether to show add wallet button */
|
|
3263
|
+
showAddWalletButton?: boolean;
|
|
3264
|
+
/** Whether to show recently connected section */
|
|
3265
|
+
showRecentSection?: boolean;
|
|
3266
|
+
/** Whether to enable keyboard shortcuts */
|
|
3267
|
+
enableKeyboardShortcuts?: boolean;
|
|
3268
|
+
/** Custom keyboard shortcuts map */
|
|
3269
|
+
keyboardShortcuts?: {
|
|
3270
|
+
/** Key for switching to next connection */
|
|
3271
|
+
nextConnection?: string;
|
|
3272
|
+
/** Key for switching to previous connection */
|
|
3273
|
+
prevConnection?: string;
|
|
3274
|
+
/** Key for disconnecting active wallet */
|
|
3275
|
+
disconnect?: string;
|
|
3276
|
+
};
|
|
3277
|
+
/** Maximum recent connections to show */
|
|
3278
|
+
maxRecentConnections?: number;
|
|
3279
|
+
/** Whether to auto-focus first interactive element */
|
|
3280
|
+
autoFocus?: boolean;
|
|
3281
|
+
/** Custom test IDs */
|
|
3282
|
+
testIds?: {
|
|
3283
|
+
container?: string;
|
|
3284
|
+
activeSection?: string;
|
|
3285
|
+
recentSection?: string;
|
|
3286
|
+
addWalletButton?: string;
|
|
3287
|
+
};
|
|
3288
|
+
};
|
|
3289
|
+
};
|
|
3290
|
+
|
|
3013
3291
|
/**
|
|
3014
3292
|
* @file ConnectedModal component with comprehensive customization options for all child components.
|
|
3015
3293
|
*/
|
|
@@ -3052,6 +3330,7 @@ type MainContentProps$1 = Pick<NovaConnectProviderProps, 'transactionPool' | 'pu
|
|
|
3052
3330
|
chain: string | number;
|
|
3053
3331
|
};
|
|
3054
3332
|
className?: string;
|
|
3333
|
+
childCustomizations?: ConnectedModalCustomization['childCustomizations'];
|
|
3055
3334
|
};
|
|
3056
3335
|
type WalletNameConfig = {
|
|
3057
3336
|
abbreviateSymbols?: number;
|
|
@@ -3184,6 +3463,8 @@ type ConnectedModalCustomization = {
|
|
|
3184
3463
|
childCustomizations?: {
|
|
3185
3464
|
/** Customization for ConnectedModalMainContent component */
|
|
3186
3465
|
mainContent?: ConnectedModalMainContentCustomization;
|
|
3466
|
+
/** Customization for ConnectionsContent component */
|
|
3467
|
+
connections?: ConnectionsContentCustomization;
|
|
3187
3468
|
/** Customization for ConnectedModalTxHistory component */
|
|
3188
3469
|
txHistory?: Record<string, unknown>;
|
|
3189
3470
|
/** Customization for ScrollableChainList component */
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import {a as a$1,i}from'./chunk-B2NRY4JV.js';import {a}from'./chunk-ALPKQFNU.js';import {h as h$1}from'./chunk-P5ZBSLGK.js';import {textCenterEllipsis}from'@tuwaio/nova-core';import {OrbitAdapter,getAdapterFromConnectorType,formatConnectorName}from'@tuwaio/orbit-core';import {createContext,useContext,useMemo,useState,useRef,useCallback,useEffect}from'react';function me(e){let{abbreviateSymbols:t=12,maxNameLength:a=30,autoRetry:o=false,retryDelay:s=3e3}=e,n=h$1(f=>f.activeConnection),i=h$1(f=>f.getAdapter),r=useMemo(()=>n?.address,[n?.address]),d=useMemo(()=>n?.connectorType,[n?.connectorType]),c=useMemo(()=>d?i(getAdapterFromConnectorType(d??`${OrbitAdapter.EVM}:not-connected`)):null,[i,d]),[u,b]=useState(null),[K,p]=useState(null),[y,m]=useState(false),[N,v]=useState(null),L=useRef(null),T=useRef(null),I=useMemo(()=>{if(!c)return {hasNameResolver:false,hasAvatarResolver:false};let f="getName"in c&&typeof c.getName=="function",C="getAvatar"in c&&typeof c.getAvatar=="function";return {hasNameResolver:f,hasAvatarResolver:C}},[c]),g=useCallback(()=>{L.current&&(L.current.abort(),L.current=null),T.current!==null&&(clearTimeout(T.current),T.current=null);},[]),x=useCallback(async()=>{if(g(),!r||!c||!I.hasNameResolver){b(null),p(null),m(false),v(null);return}L.current=new AbortController;let{signal:f}=L.current;m(true),v(null),b(null),p(null);try{if(f.aborted)return;let C=await c.getName?.(r);if(f.aborted)return;if(C&&(b(C),I.hasAvatarResolver))try{let S=await c.getAvatar?.(C);f.aborted||p(S??null);}catch(S){console.warn("Failed to fetch avatar:",S),f.aborted||p(null);}}catch(C){if(f.aborted)return;let S=C instanceof Error?C.message:"Failed to fetch name service data";console.error("Failed to fetch name service data:",C),v(S),b(null),p(null),o&&(T.current=setTimeout(()=>{x();},s));}finally{f.aborted||m(false);}},[r,c,I,o,s,g]),Y=useCallback(()=>{v(null),x();},[x]);useEffect(()=>(x(),g),[x,g]),useEffect(()=>g,[g]);let Z=useMemo(()=>u?u.length>a?textCenterEllipsis(u,t,t):u:r?textCenterEllipsis(r,t,t):void 0,[u,r,a,t]);return {ensName:u,ensAvatar:K,isLoading:y,ensNameAbbreviated:Z,error:N,retry:Y}}var R=class extends Error{constructor(t="useNovaConnect must be used within NovaConnectProvider"){super(t),this.name="NovaConnectProviderError";}},V=createContext(void 0),ye=()=>{let e=useContext(V);if(!e)throw new R;return e},ge=()=>useContext(V)!==void 0,Ae=()=>useContext(V)??null;var re=createContext(a),D=()=>useContext(re),Oe=e=>D()[e],Te=e=>{let t=D(),a={};for(let o of e)a[o]=t[o];return a},ke=(e,t)=>!!e[t]?.trim(),we=e=>{let t=D(),o={actions:["connectWallet","disconnect","connecting","connected","tryAgain","back","connect","close"],states:["success","error","replaced","loading","idle"],accessibility:["chainSelector","closeModal","selectChain","walletControls","openWalletModal"],transactions:["transactionLoading","transactionSuccess","transactionError","transactionReplaced","recent"]}[e],s={};for(let n of o)s[n]=t[n];return s},Ee=e=>e===a,Be=(e,t,a$1)=>{let o=e[t];return o&&o.trim()?o:a$1||a[t]||t.toString()},Ie=(e,t)=>{let a={};for(let o of t)a[o]=e[o];return a};var h={[OrbitAdapter.EVM]:1,[OrbitAdapter.SOLANA]:"mainnet",[OrbitAdapter.Starknet]:"0x534e5f4d41494e"};function Re({selectedAdapter:e,appChains:t,solanaRPCUrls:a}){switch(e){case OrbitAdapter.EVM:{let o=t?.[0];return o?.id&&typeof o.id=="number"?o.id:(process.env.NODE_ENV==="development"&&!t?.length&&console.warn("getConnectChainId: No EVM chains configured, using Ethereum Mainnet"),h[OrbitAdapter.EVM])}case OrbitAdapter.SOLANA:{if(a&&typeof a=="object"){let o=Object.keys(a);if(o.length>0)return o[0]}return process.env.NODE_ENV==="development"&&!a&&console.warn("getConnectChainId: No Solana RPC URLs configured, using mainnet"),h[OrbitAdapter.SOLANA]}case OrbitAdapter.Starknet:return process.env.NODE_ENV==="development"&&console.info("getConnectChainId: Using default Starknet chain ID"),h[OrbitAdapter.Starknet];default:return process.env.NODE_ENV==="development"&&console.error("getConnectChainId: Unknown adapter:",e),h[OrbitAdapter.EVM]}}function We({selectedAdapter:e,appChains:t,solanaRPCUrls:a}){switch(e){case OrbitAdapter.EVM:return t?.map(o=>o.id).filter(Boolean)??[h[OrbitAdapter.EVM]];case OrbitAdapter.SOLANA:return a?Object.keys(a):[h[OrbitAdapter.SOLANA]];case OrbitAdapter.Starknet:return [h[OrbitAdapter.Starknet]];default:return [h[OrbitAdapter.EVM]]}}function se(e,t){if(!e||typeof e!="object")return null;let a=e;return !a.name||typeof a.name!="string"?null:{name:a.name,icon:a.icon,adapter:t,originalConnector:a}}function U({connectors:e,excludeConnectors:t=["injected"]}={connectors:{}}){if(!e||Object.keys(e).length===0)return [];let a=new Set(t.map(n=>formatConnectorName(n))),o=[];Object.entries(e).forEach(([n,i])=>{if(Array.isArray(i)){let r=n;i.forEach(d=>{let c=se(d,r);if(c){let u=formatConnectorName(c.name);a.has(u)||o.push(c);}});}});let s=new Map;return o.forEach(n=>{let i=formatConnectorName(n.name);s.has(i)||s.set(i,{name:n.name,icon:n.icon,adapters:[],connectors:[]});let r=s.get(i);r.adapters.includes(n.adapter)||r.adapters.push(n.adapter),r.connectors.push({...n.originalConnector,adapter:n.adapter}),!r.icon&&n.icon&&(r.icon=n.icon);}),Array.from(s.values()).sort((n,i)=>n.name.localeCompare(i.name,void 0,{sensitivity:"base"}))}function Ke(e){return Object.values(e).some(t=>Array.isArray(t)&&t.length>0)}function ce(e){try{if(e&&typeof e=="object"&&e.adapter)return e.adapter}catch{}}function _(e,t){return ce(e)===t}function Ue({connectors:e,selectedAdapter:t}){if(!e||Object.keys(e).length===0)return [];let a=U({connectors:e});return t?a.filter(o=>o.adapters.includes(t)&&o.connectors.some(s=>_(s,t))).map(o=>{let s=o.connectors.filter(n=>_(n,t));return {...o,adapters:[t],connectors:s}}).filter(o=>o.connectors.length>0):a}function _e(e,t){let a=e[t];return Array.isArray(a)&&a.length>0}var ze=e=>{switch(e){case OrbitAdapter.EVM:return {chainId:1,name:"Ethereum"};case OrbitAdapter.SOLANA:return {chainId:"solana:mainnet",name:"Solana"}}};var Xe={[OrbitAdapter.EVM]:{aboutNetwork:"https://ethereum.org/developers/docs/intro-to-ethereum/",choseWallet:"https://ethereum.org/wallets/find-wallet/",about:"https://ethereum.org/wallets/"},[OrbitAdapter.SOLANA]:{aboutNetwork:"https://solana.com/en/learn/what-is-solana",choseWallet:"https://solana.com/en/solana-wallets",about:"https://solana.com/en/learn/what-is-a-wallet"}};function lt(){return console.warn("getAvailableSolanaClusters: Using synchronous fallback with limited functionality. Use getAvailableSolanaClustersAsync for complete cluster detection."),[]}function ut(e){return console.warn("isValidSolanaCluster: Using synchronous fallback with basic validation. Use isValidSolanaClusterAsync for comprehensive cluster validation."),["mainnet","devnet","testnet","localnet"].includes(e)}function St({activeConnection:e,appChains:t,solanaRPCUrls:a}){let[o,s]=useState([]),[n,i$1]=useState(false);return useEffect(()=>{let r=true;return (async()=>{i$1(true);try{if(!e){let b=await a$1({connectorType:`${OrbitAdapter.EVM}:not-connected`,appChains:t,solanaRPCUrls:a,chains:[]});r&&s(b);return}let c=i(e),u=await a$1({connectorType:e.connectorType,appChains:t,solanaRPCUrls:a,chains:c});r&&s(u);}catch(c){console.error("Failed to fetch chains list:",c),r&&s([]);}finally{r&&i$1(false);}})(),()=>{r=false;}},[e,t,a]),{chainsList:o,isLoading:n}}function Et(){let[e,t]=useState({}),[a,o]=useState(false),s=useRef(null),n=h$1(p=>p.activeConnection),i=h$1(p=>p.getAdapter),r=useMemo(()=>n?.chainId&&n?.address?`${n.address}-${n.chainId}`:null,[n?.chainId,n?.address]),d=useMemo(()=>n?.connectorType?i(getAdapterFromConnectorType(n.connectorType)):null,[i,n?.connectorType]),c=useMemo(()=>d&&"getBalance"in d&&typeof d.getBalance=="function",[d]),u=useCallback(async(p=false)=>{if(!n?.address||!d||!n?.chainId||!r||!c){o(false);return}let y=`${r}-${Date.now()}`;if(s.current=y,!p&&e[r]){o(false);return}o(true);try{let m=await d.getBalance(n.address,n.chainId);s.current===y&&t(N=>({...N,[r]:m}));}catch(m){console.error(`Failed to fetch native balance for ${r}:`,m),p&&s.current===y&&t(N=>{let v={...N};return delete v[r],v});}finally{s.current===y&&o(false);}},[n?.address,d,n?.chainId,r,c,e]),b=useCallback(()=>{u(true);},[u]);return useEffect(()=>{r&&c&&!e[r]?u(false):(!r||!c)&&o(false);},[r,c,e,u]),useEffect(()=>()=>{s.current=null;},[]),{balance:useMemo(()=>r&&e[r]||null,[r,e]),isLoading:a,refetch:b}}
|
|
2
|
+
export{Et as A,me as a,R as b,V as c,ye as d,ge as e,Ae as f,re as g,D as h,Oe as i,Te as j,ke as k,we as l,Ee as m,Be as n,Ie as o,Re as p,We as q,U as r,Ke as s,Ue as t,_e as u,ze as v,Xe as w,lt as x,ut as y,St as z};//# sourceMappingURL=chunk-G5ZR2T4P.js.map
|
|
3
|
+
//# sourceMappingURL=chunk-G5ZR2T4P.js.map
|