@embarkai/ui-kit 0.4.65 → 0.4.67
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/iframe/index.html +1 -1
- package/dist/iframe/main.js +1 -1
- package/dist/index.cjs +62 -46
- package/dist/index.d.cts +1 -0
- package/dist/index.d.ts +1 -0
- package/dist/index.js +35 -17
- package/package.json +1 -1
package/dist/iframe/index.html
CHANGED
|
@@ -15,7 +15,7 @@
|
|
|
15
15
|
<meta http-equiv="X-Content-Type-Options" content="nosniff" />
|
|
16
16
|
<meta http-equiv="Referrer-Policy" content="strict-origin-when-cross-origin" />
|
|
17
17
|
|
|
18
|
-
<title>EmbarkAI Secure Wallet - iframe version 0.4.
|
|
18
|
+
<title>EmbarkAI Secure Wallet - iframe version 0.4.67</title>
|
|
19
19
|
|
|
20
20
|
<!-- Styles will be injected by build process -->
|
|
21
21
|
<style>
|
package/dist/iframe/main.js
CHANGED
|
@@ -6398,7 +6398,7 @@ var SigningManager = class extends TokenRefreshApiClient {
|
|
|
6398
6398
|
};
|
|
6399
6399
|
|
|
6400
6400
|
// src/iframe/main.ts
|
|
6401
|
-
var IFRAME_VERSION = "0.4.
|
|
6401
|
+
var IFRAME_VERSION = "0.4.67";
|
|
6402
6402
|
var IframeWallet = class {
|
|
6403
6403
|
constructor() {
|
|
6404
6404
|
console.log("=".repeat(60));
|
package/dist/index.cjs
CHANGED
|
@@ -972,11 +972,12 @@ async function getAssetRate(symbol, asSymbol) {
|
|
|
972
972
|
});
|
|
973
973
|
}
|
|
974
974
|
function useAssetUsdtRate(assetSymbol, options) {
|
|
975
|
-
const { refetchInterval, staleTime } = options || {};
|
|
975
|
+
const { disabled, refetchInterval, staleTime } = options || {};
|
|
976
976
|
const address = useSession((st) => st.address);
|
|
977
977
|
return (0, import_react_query.useQuery)({
|
|
978
978
|
queryKey: [ASSET_RATE_QUERY_KEY, address, assetSymbol],
|
|
979
|
-
enabled: !!address && !!assetSymbol,
|
|
979
|
+
enabled: !disabled && !!address && !!assetSymbol,
|
|
980
|
+
// && !isProjectAsset && !isNft && !isSecurity
|
|
980
981
|
refetchInterval: refetchInterval || BALANCE_POLLING_INTERVAL * 2,
|
|
981
982
|
staleTime: staleTime || BALANCE_POLLING_INTERVAL * 2,
|
|
982
983
|
// keeps the data fresh for 1 minute before considering it stale
|
|
@@ -996,28 +997,28 @@ var init_useAssetRate = __esm({
|
|
|
996
997
|
// src/internal/components/BalanceFeedProvider/BalanceFeedProvider.tsx
|
|
997
998
|
function BalanceFeedProvider() {
|
|
998
999
|
const config = useProviderConfig().config;
|
|
999
|
-
const
|
|
1000
|
+
const embarkaiAddress = useSession((st) => st.address);
|
|
1000
1001
|
const chainConfig = useSession((st) => st.chainConfig);
|
|
1001
1002
|
const publicClient = useSession((st) => st.publicClient);
|
|
1002
1003
|
const [balanceSymbol, setBalanceSymbol] = (0, import_react.useState)(null);
|
|
1003
1004
|
(0, import_react.useEffect)(
|
|
1004
1005
|
() => setBalanceSymbol(config?.current?.showBalanceAs || chainConfig.nativeCurrency.symbol),
|
|
1005
|
-
[config,
|
|
1006
|
+
[config, embarkaiAddress, chainConfig]
|
|
1006
1007
|
);
|
|
1007
1008
|
(0, import_react.useEffect)(
|
|
1008
1009
|
() => useLayoutDataStore.getState().setCryptoSymbol(chainConfig?.nativeCurrency?.symbol || "LUMIA"),
|
|
1009
|
-
[chainConfig]
|
|
1010
|
+
[embarkaiAddress, chainConfig]
|
|
1010
1011
|
);
|
|
1011
1012
|
const { data: cryptoRate } = useAssetUsdtRate(balanceSymbol);
|
|
1012
1013
|
const isNativeBalanceFeedEnabled = !!balanceSymbol && !!chainConfig?.nativeCurrency.symbol && balanceSymbol === chainConfig?.nativeCurrency.symbol;
|
|
1013
1014
|
const { data: nativeBalance } = (0, import_react_query2.useQuery)({
|
|
1014
|
-
enabled: !!isNativeBalanceFeedEnabled && !!
|
|
1015
|
+
enabled: !!isNativeBalanceFeedEnabled && !!embarkaiAddress && !!publicClient,
|
|
1015
1016
|
retry: false,
|
|
1016
1017
|
refetchInterval: BALANCE_POLLING_INTERVAL,
|
|
1017
|
-
queryKey: [NATIVE_BALANCE_QUERY_KEY,
|
|
1018
|
+
queryKey: [NATIVE_BALANCE_QUERY_KEY, embarkaiAddress, chainConfig?.nativeCurrency?.symbol],
|
|
1018
1019
|
// Include chainId in query key to refetch when chain changes
|
|
1019
1020
|
queryFn: async () => {
|
|
1020
|
-
const balanceValue = await publicClient.getBalance({ address });
|
|
1021
|
+
const balanceValue = await publicClient.getBalance({ address: embarkaiAddress });
|
|
1021
1022
|
return {
|
|
1022
1023
|
decimals: chainConfig?.nativeCurrency?.decimals || 18,
|
|
1023
1024
|
formatted: (0, import_viem2.formatUnits)(balanceValue, chainConfig?.nativeCurrency?.decimals || 18),
|
|
@@ -1047,7 +1048,7 @@ function BalanceFeedProvider() {
|
|
|
1047
1048
|
const { data: projectAssetBalance } = (0, import_react_query2.useQuery)({
|
|
1048
1049
|
retry: false,
|
|
1049
1050
|
refetchInterval: BALANCE_POLLING_INTERVAL,
|
|
1050
|
-
enabled: !!
|
|
1051
|
+
enabled: !!embarkaiAddress && !!isProjectAssetBalanceEnabled,
|
|
1051
1052
|
queryKey: PROJECT_ASSET_BALANCE_QUERY_KEY,
|
|
1052
1053
|
// should be invalidated by host app via provided queryKey
|
|
1053
1054
|
queryFn: async () => await projectAssetBalanceQueryFn?.()
|
|
@@ -1069,20 +1070,33 @@ function BalanceFeedProvider() {
|
|
|
1069
1070
|
}, [isProjectAssetBalanceEnabled, projectAssetBalance]);
|
|
1070
1071
|
const isCustomAssetBalanceEnabled = !isNativeBalanceFeedEnabled && !isProjectAssetBalanceEnabled;
|
|
1071
1072
|
const { data: customBalance } = (0, import_react_query2.useQuery)({
|
|
1072
|
-
enabled: !!isCustomAssetBalanceEnabled && !!balanceSymbol && !!chainConfig?.id && !!
|
|
1073
|
+
enabled: !!isCustomAssetBalanceEnabled && !!balanceSymbol && !!chainConfig?.id && !!embarkaiAddress && !!publicClient,
|
|
1073
1074
|
retry: false,
|
|
1074
1075
|
refetchInterval: BALANCE_POLLING_INTERVAL,
|
|
1075
1076
|
// staleTime: 0,
|
|
1076
|
-
queryKey: [CUSTOM_BALANCE_QUERY_KEY, chainConfig?.id,
|
|
1077
|
+
queryKey: [CUSTOM_BALANCE_QUERY_KEY, chainConfig?.id, embarkaiAddress, balanceSymbol],
|
|
1077
1078
|
// Include chainId in query key to refetch when chain changes
|
|
1078
1079
|
queryFn: async () => {
|
|
1079
|
-
const
|
|
1080
|
+
const blockscoutApiUrl = getBlockscoutApiUrl(chainConfig);
|
|
1080
1081
|
const watchTokensList = (config?.current?.watchTokens?.[chainConfig?.id] || []).map((el) => ({
|
|
1081
1082
|
address: el.address,
|
|
1082
1083
|
decimals: el.decimals,
|
|
1083
1084
|
symbol: el.symbol
|
|
1084
1085
|
}));
|
|
1085
|
-
const customAssetList = [
|
|
1086
|
+
const customAssetList = [];
|
|
1087
|
+
if (blockscoutApiUrl) {
|
|
1088
|
+
const blockscoutClient = (0, import_core.createBlockscoutClient)({ baseUrl: blockscoutApiUrl });
|
|
1089
|
+
const blockscoutTokens = await blockscoutClient.getTokenBalances(embarkaiAddress);
|
|
1090
|
+
const blockscoutAssets = blockscoutTokens.map((el) => ({
|
|
1091
|
+
address: el.token.address_hash,
|
|
1092
|
+
decimals: Number(el.token.decimals),
|
|
1093
|
+
symbol: el.token.symbol
|
|
1094
|
+
}));
|
|
1095
|
+
customAssetList.push(...watchTokensList, ...blockscoutAssets);
|
|
1096
|
+
} else {
|
|
1097
|
+
const coreTokenList = import_read2.NON_BLOCKSCOUT_CORE_TOKENS[chainConfig?.id] || [];
|
|
1098
|
+
customAssetList.push(...watchTokensList, ...coreTokenList);
|
|
1099
|
+
}
|
|
1086
1100
|
const { address: customAssetAddress, decimals: customAssetADecimals } = customAssetList.find((el) => el.symbol === balanceSymbol) || {};
|
|
1087
1101
|
if (!customAssetAddress) {
|
|
1088
1102
|
console.warn(`[BALANCE FEED] No token address found for symbol ${balanceSymbol} on chain ${chainConfig?.name}`);
|
|
@@ -1092,7 +1106,7 @@ function BalanceFeedProvider() {
|
|
|
1092
1106
|
address: customAssetAddress,
|
|
1093
1107
|
abi: import_viem2.erc20Abi,
|
|
1094
1108
|
functionName: "balanceOf",
|
|
1095
|
-
args: [
|
|
1109
|
+
args: [embarkaiAddress],
|
|
1096
1110
|
authorizationList: void 0
|
|
1097
1111
|
});
|
|
1098
1112
|
return {
|
|
@@ -1116,11 +1130,13 @@ function BalanceFeedProvider() {
|
|
|
1116
1130
|
}, [isCustomAssetBalanceEnabled, customBalance, cryptoRate]);
|
|
1117
1131
|
return null;
|
|
1118
1132
|
}
|
|
1119
|
-
var import_read2, import_react_query2, import_react, import_viem2;
|
|
1133
|
+
var import_core, import_read2, import_react_query2, import_react, import_viem2;
|
|
1120
1134
|
var init_BalanceFeedProvider = __esm({
|
|
1121
1135
|
"src/internal/components/BalanceFeedProvider/BalanceFeedProvider.tsx"() {
|
|
1136
|
+
init_initial();
|
|
1122
1137
|
init_ProviderContext();
|
|
1123
1138
|
init_SessionContext();
|
|
1139
|
+
import_core = require("@embarkai/core");
|
|
1124
1140
|
import_read2 = require("@embarkai/core/read");
|
|
1125
1141
|
import_react_query2 = require("@tanstack/react-query");
|
|
1126
1142
|
import_react = require("react");
|
|
@@ -1600,17 +1616,17 @@ async function resolveUiKitPaymaster(chainId, shouldUsePaymaster) {
|
|
|
1600
1616
|
};
|
|
1601
1617
|
}
|
|
1602
1618
|
const chainConfig = (0, import_read5.getChainConfig)(chainId);
|
|
1603
|
-
return (0,
|
|
1619
|
+
return (0, import_core2.resolveProjectPaymaster)({
|
|
1604
1620
|
chainId,
|
|
1605
1621
|
projectId: getProjectId(),
|
|
1606
1622
|
defaultPaymasterAddress: chainConfig?.paymasterAddress,
|
|
1607
1623
|
dashboardApiUrl: getDashboardApiUrl()
|
|
1608
1624
|
});
|
|
1609
1625
|
}
|
|
1610
|
-
var
|
|
1626
|
+
var import_core2, import_read5;
|
|
1611
1627
|
var init_resolve_paymaster = __esm({
|
|
1612
1628
|
"src/internal/clients/account/resolve-paymaster.ts"() {
|
|
1613
|
-
|
|
1629
|
+
import_core2 = require("@embarkai/core");
|
|
1614
1630
|
import_read5 = require("@embarkai/core/read");
|
|
1615
1631
|
init_base2();
|
|
1616
1632
|
init_projectId();
|
|
@@ -11773,8 +11789,8 @@ function ChainsMenu() {
|
|
|
11773
11789
|
return resolveUiKitPaymaster(activeChainId, true);
|
|
11774
11790
|
},
|
|
11775
11791
|
enabled: !!activeChainId,
|
|
11776
|
-
staleTime:
|
|
11777
|
-
gcTime:
|
|
11792
|
+
staleTime: import_core3.PAYMASTER_CACHE_TTL_MS,
|
|
11793
|
+
gcTime: import_core3.PAYMASTER_CACHE_TTL_MS,
|
|
11778
11794
|
placeholderData: activeChainId ? {
|
|
11779
11795
|
address: activeDefaultPaymasterAddress ?? null,
|
|
11780
11796
|
source: activeDefaultPaymasterAddress ? "default" : "none",
|
|
@@ -11828,14 +11844,14 @@ function ChainsMenu() {
|
|
|
11828
11844
|
}
|
|
11829
11845
|
);
|
|
11830
11846
|
}
|
|
11831
|
-
var
|
|
11847
|
+
var import_core3, import_read15, import_react_query16, import_lucide_react20, import_react31, import_jsx_runtime53;
|
|
11832
11848
|
var init_ChainsMenu = __esm({
|
|
11833
11849
|
"src/internal/components/ChainsMenu/ChainsMenu.tsx"() {
|
|
11834
11850
|
init_networks3();
|
|
11835
11851
|
init_ProviderContext();
|
|
11836
11852
|
init_SessionContext();
|
|
11837
11853
|
init_useT();
|
|
11838
|
-
|
|
11854
|
+
import_core3 = require("@embarkai/core");
|
|
11839
11855
|
import_read15 = require("@embarkai/core/read");
|
|
11840
11856
|
import_react_query16 = require("@tanstack/react-query");
|
|
11841
11857
|
import_lucide_react20 = require("lucide-react");
|
|
@@ -17888,7 +17904,7 @@ function useBlockscoutAssets(options) {
|
|
|
17888
17904
|
} = useProviderConfig().config?.current?.portfolio || {};
|
|
17889
17905
|
const blockscoutApiUrl = getBlockscoutApiUrl(chainConfig);
|
|
17890
17906
|
const blockscoutClient = (0, import_react58.useMemo)(
|
|
17891
|
-
() => blockscoutApiUrl ? (0,
|
|
17907
|
+
() => blockscoutApiUrl ? (0, import_core4.createBlockscoutClient)({ baseUrl: blockscoutApiUrl }) : null,
|
|
17892
17908
|
[blockscoutApiUrl]
|
|
17893
17909
|
);
|
|
17894
17910
|
const lastRefreshRef = (0, import_react58.useRef)(0);
|
|
@@ -17922,7 +17938,7 @@ function useBlockscoutAssets(options) {
|
|
|
17922
17938
|
...BALANCE_DEFAULT_QUERY_CFG,
|
|
17923
17939
|
queryKey: [`NON-${BLOCKSCOUT_QUERY_KEY}`, resolvedChainId, address],
|
|
17924
17940
|
queryFn: async () => {
|
|
17925
|
-
const assetList = await
|
|
17941
|
+
const assetList = await import_core4.nonBlockscoutClient.getTokenBalances({
|
|
17926
17942
|
walletAddress: address,
|
|
17927
17943
|
chainId: resolvedChainId
|
|
17928
17944
|
});
|
|
@@ -18149,11 +18165,11 @@ function useBlockscoutAssets(options) {
|
|
|
18149
18165
|
lastUpdated: dataUpdatedAt || null
|
|
18150
18166
|
};
|
|
18151
18167
|
}
|
|
18152
|
-
var
|
|
18168
|
+
var import_core4, import_react_query39, import_react58;
|
|
18153
18169
|
var init_useBlockscoutAssets = __esm({
|
|
18154
18170
|
"src/internal/hooks/useBlockscoutAssets/useBlockscoutAssets.ts"() {
|
|
18155
18171
|
init_ProviderContext();
|
|
18156
|
-
|
|
18172
|
+
import_core4 = require("@embarkai/core");
|
|
18157
18173
|
import_react_query39 = require("@tanstack/react-query");
|
|
18158
18174
|
import_react58 = require("react");
|
|
18159
18175
|
init_initial();
|
|
@@ -19951,7 +19967,7 @@ async function getUserOperationByHash(userOpHash, chainId) {
|
|
|
19951
19967
|
throw new Error("Operation hash is required");
|
|
19952
19968
|
}
|
|
19953
19969
|
try {
|
|
19954
|
-
const result = await (0,
|
|
19970
|
+
const result = await (0, import_core5.bundlerRpc)("eth_getUserOperationByHash", [userOpHash], chainConfig.bundlerUrl);
|
|
19955
19971
|
if (!result) {
|
|
19956
19972
|
return null;
|
|
19957
19973
|
}
|
|
@@ -19968,11 +19984,11 @@ async function getUserOperationByHash(userOpHash, chainId) {
|
|
|
19968
19984
|
return null;
|
|
19969
19985
|
}
|
|
19970
19986
|
}
|
|
19971
|
-
var
|
|
19987
|
+
var import_core5, import_read18;
|
|
19972
19988
|
var init_getUserOperationByHash = __esm({
|
|
19973
19989
|
"src/clients/bundler/getUserOperationByHash.ts"() {
|
|
19974
19990
|
init_SessionContext();
|
|
19975
|
-
|
|
19991
|
+
import_core5 = require("@embarkai/core");
|
|
19976
19992
|
import_read18 = require("@embarkai/core/read");
|
|
19977
19993
|
}
|
|
19978
19994
|
});
|
|
@@ -19991,7 +20007,7 @@ async function getUserOperationReceipt(userOpHash, chainId) {
|
|
|
19991
20007
|
throw new Error("Operation hash is required");
|
|
19992
20008
|
}
|
|
19993
20009
|
try {
|
|
19994
|
-
const result = await (0,
|
|
20010
|
+
const result = await (0, import_core6.bundlerRpc)("eth_getUserOperationReceipt", [userOpHash], chainConfig.bundlerUrl);
|
|
19995
20011
|
if (!result) {
|
|
19996
20012
|
return null;
|
|
19997
20013
|
}
|
|
@@ -20014,11 +20030,11 @@ async function getUserOperationReceipt(userOpHash, chainId) {
|
|
|
20014
20030
|
return null;
|
|
20015
20031
|
}
|
|
20016
20032
|
}
|
|
20017
|
-
var
|
|
20033
|
+
var import_core6, import_read19;
|
|
20018
20034
|
var init_getUserOperationReceipt = __esm({
|
|
20019
20035
|
"src/clients/bundler/getUserOperationReceipt.ts"() {
|
|
20020
20036
|
init_SessionContext();
|
|
20021
|
-
|
|
20037
|
+
import_core6 = require("@embarkai/core");
|
|
20022
20038
|
import_read19 = require("@embarkai/core/read");
|
|
20023
20039
|
}
|
|
20024
20040
|
});
|
|
@@ -20075,7 +20091,7 @@ async function executeWarpTransactions(txs, walletClient) {
|
|
|
20075
20091
|
const externalWalletChain = CHAINS_UI_META[originChain].chain;
|
|
20076
20092
|
const publicClient = bridgeSender === "embarkai-wallet" ? useSession.getState().publicClient : (0, import_viem12.createPublicClient)({
|
|
20077
20093
|
chain: externalWalletChain,
|
|
20078
|
-
transport:
|
|
20094
|
+
transport: import_core7.CHAINS_BROWSERS_TRANSPORTS[externalWalletChain.id] || (0, import_viem12.http)(externalWalletChain.rpcUrls.default.http[0])
|
|
20079
20095
|
});
|
|
20080
20096
|
if (!session) {
|
|
20081
20097
|
throw new Error("No active session");
|
|
@@ -20142,7 +20158,7 @@ async function executeWarpTransactions(txs, walletClient) {
|
|
|
20142
20158
|
}
|
|
20143
20159
|
if (!TARGET_TX_CATEGORIES.includes(tx.category)) {
|
|
20144
20160
|
useBridgeStore.getState().setBridgeTxStatus(`Tx receipt: ${tx.category || ""}...`);
|
|
20145
|
-
const wagmiNonTransferReceipt = await (0,
|
|
20161
|
+
const wagmiNonTransferReceipt = await (0, import_core7.waitForWagmiTransactionReceipt)(import_core7.wagmiConfig, {
|
|
20146
20162
|
chainId: publicClient.chain.id,
|
|
20147
20163
|
hash: walletOpHash,
|
|
20148
20164
|
pollingInterval: 6e3
|
|
@@ -20156,13 +20172,13 @@ async function executeWarpTransactions(txs, walletClient) {
|
|
|
20156
20172
|
}
|
|
20157
20173
|
return hashes;
|
|
20158
20174
|
}
|
|
20159
|
-
var
|
|
20175
|
+
var import_core7, import_viem12, TARGET_TX_CATEGORIES;
|
|
20160
20176
|
var init_executeWarpTxs = __esm({
|
|
20161
20177
|
"src/internal/components/SendMenu/hyperbridge/lib/executeWarpTxs.ts"() {
|
|
20162
20178
|
init_bundler();
|
|
20163
20179
|
init_SessionContext();
|
|
20164
20180
|
init_account2();
|
|
20165
|
-
|
|
20181
|
+
import_core7 = require("@embarkai/core");
|
|
20166
20182
|
import_viem12 = require("viem");
|
|
20167
20183
|
init_useBridgeStore();
|
|
20168
20184
|
init_chains();
|
|
@@ -20616,7 +20632,7 @@ function useBridgeBalance(hyperlaneWarpRoutes) {
|
|
|
20616
20632
|
enabled: bridgeSender === "direct-wallet" && !isSelectedTokenNative && !!directWalletAddress && !!routeTokenAddress && !!originChain,
|
|
20617
20633
|
queryKey: [EXTERNAL_WALLET_BRIDGING_BALANCE_QUERY, originChain, directWalletAddress, routeTokenAddress],
|
|
20618
20634
|
queryFn: async () => {
|
|
20619
|
-
const chainTransport =
|
|
20635
|
+
const chainTransport = import_core8.CHAINS_BROWSERS_TRANSPORTS[originChainMeta.chain.id] || (0, import_viem14.http)(originChainMeta.chain.rpcUrls.default.http[0]);
|
|
20620
20636
|
const client = (0, import_viem14.createPublicClient)({
|
|
20621
20637
|
chain: originChainMeta.chain,
|
|
20622
20638
|
transport: chainTransport
|
|
@@ -20659,7 +20675,7 @@ function useBridgeBalance(hyperlaneWarpRoutes) {
|
|
|
20659
20675
|
enabled: bridgeSender === "direct-wallet" && isSelectedTokenNative && !!directWalletAddress && !!originChain,
|
|
20660
20676
|
queryKey: [EXTERNAL_WALLET_BRIDGING_NATIVE_BALANCE_QUERY, originChain, directWalletAddress],
|
|
20661
20677
|
queryFn: async () => {
|
|
20662
|
-
const chainTransport =
|
|
20678
|
+
const chainTransport = import_core8.CHAINS_BROWSERS_TRANSPORTS[originChainMeta.chain.id] || (0, import_viem14.http)(originChainMeta.chain.rpcUrls.default.http[0]);
|
|
20663
20679
|
const client = (0, import_viem14.createPublicClient)({ chain: originChainMeta.chain, transport: chainTransport });
|
|
20664
20680
|
const rawBalance = await client.getBalance({ address: directWalletAddress });
|
|
20665
20681
|
return {
|
|
@@ -20716,12 +20732,12 @@ function useBridgeBalance(hyperlaneWarpRoutes) {
|
|
|
20716
20732
|
isRouteTokenBalanceLoading: isAssetsLoading || isExternalBalanceLoading || isExternalNativeBalanceLoading
|
|
20717
20733
|
};
|
|
20718
20734
|
}
|
|
20719
|
-
var
|
|
20735
|
+
var import_core8, import_react_query49, import_react69, import_viem14, import_wagmi5, EXTERNAL_WALLET_BRIDGING_BALANCE_QUERY, EXTERNAL_WALLET_BRIDGING_NATIVE_BALANCE_QUERY;
|
|
20720
20736
|
var init_useBridgeBalance = __esm({
|
|
20721
20737
|
"src/internal/components/SendMenu/hyperbridge/hooks/useBridgeBalance.ts"() {
|
|
20722
20738
|
init_SessionContext();
|
|
20723
20739
|
init_i18n();
|
|
20724
|
-
|
|
20740
|
+
import_core8 = require("@embarkai/core");
|
|
20725
20741
|
import_react_query49 = require("@tanstack/react-query");
|
|
20726
20742
|
import_react69 = require("react");
|
|
20727
20743
|
import_viem14 = require("viem");
|
|
@@ -24631,7 +24647,7 @@ var init_package = __esm({
|
|
|
24631
24647
|
"package.json"() {
|
|
24632
24648
|
package_default = {
|
|
24633
24649
|
name: "@embarkai/ui-kit",
|
|
24634
|
-
version: "0.4.
|
|
24650
|
+
version: "0.4.67",
|
|
24635
24651
|
description: "React UI components and hooks for EmbarkAI authentication and Account Abstraction",
|
|
24636
24652
|
type: "module",
|
|
24637
24653
|
main: "./dist/index.cjs",
|
|
@@ -28428,14 +28444,14 @@ var init_utils12 = __esm({
|
|
|
28428
28444
|
});
|
|
28429
28445
|
|
|
28430
28446
|
// src/context/WagmiContext.tsx
|
|
28431
|
-
var
|
|
28447
|
+
var import_core9, import_wagmi12, import_jsx_runtime124, WagmiProvider2;
|
|
28432
28448
|
var init_WagmiContext = __esm({
|
|
28433
28449
|
"src/context/WagmiContext.tsx"() {
|
|
28434
|
-
|
|
28450
|
+
import_core9 = require("@embarkai/core");
|
|
28435
28451
|
import_wagmi12 = require("wagmi");
|
|
28436
28452
|
import_jsx_runtime124 = require("react/jsx-runtime");
|
|
28437
28453
|
WagmiProvider2 = ({ children }) => {
|
|
28438
|
-
return /* @__PURE__ */ (0, import_jsx_runtime124.jsx)(import_wagmi12.WagmiProvider, { config:
|
|
28454
|
+
return /* @__PURE__ */ (0, import_jsx_runtime124.jsx)(import_wagmi12.WagmiProvider, { config: import_core9.wagmiConfig, children });
|
|
28439
28455
|
};
|
|
28440
28456
|
}
|
|
28441
28457
|
});
|
|
@@ -28683,7 +28699,7 @@ __export(index_exports, {
|
|
|
28683
28699
|
useWalletMode: () => useWalletMode,
|
|
28684
28700
|
verifyFingerprint: () => verifyFingerprint,
|
|
28685
28701
|
verifyFingerprintDetailed: () => verifyFingerprintDetailed,
|
|
28686
|
-
wagmiConfig: () =>
|
|
28702
|
+
wagmiConfig: () => import_core10.wagmiConfig,
|
|
28687
28703
|
waitForStoreHydration: () => waitForStoreHydration,
|
|
28688
28704
|
waitForUserOperationReceipt: () => waitForUserOperationReceipt
|
|
28689
28705
|
});
|
|
@@ -28693,7 +28709,7 @@ module.exports = __toCommonJS(index_exports);
|
|
|
28693
28709
|
var built_default = `.container{width:100%}@media (min-width:640px){.container{max-width:640px}}@media (min-width:768px){.container{max-width:768px}}@media (min-width:1024px){.container{max-width:1024px}}@media (min-width:1280px){.container{max-width:1280px}}@media (min-width:1536px){.container{max-width:1536px}}.embarkai-ui-scope .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.embarkai-ui-scope .pointer-events-none{pointer-events:none}.embarkai-ui-scope .pointer-events-auto{pointer-events:auto}.embarkai-ui-scope .visible{visibility:visible}.embarkai-ui-scope .invisible{visibility:hidden}.embarkai-ui-scope .static{position:static}.embarkai-ui-scope .fixed{position:fixed}.embarkai-ui-scope .absolute{position:absolute}.embarkai-ui-scope .relative{position:relative}.embarkai-ui-scope .inset-0{inset:0}.embarkai-ui-scope .-right-1{right:-.25rem}.embarkai-ui-scope .-right-2{right:-.5rem}.embarkai-ui-scope .-top-1{top:-.25rem}.embarkai-ui-scope .-top-2{top:-.5rem}.embarkai-ui-scope .bottom-0{bottom:0}.embarkai-ui-scope .bottom-full{bottom:100%}.embarkai-ui-scope .left-0{left:0}.embarkai-ui-scope .left-1\\/2{left:50%}.embarkai-ui-scope .left-4{left:1rem}.embarkai-ui-scope .right-0{right:0}.embarkai-ui-scope .right-2{right:.5rem}.embarkai-ui-scope .right-3{right:.75rem}.embarkai-ui-scope .right-4{right:1rem}.embarkai-ui-scope .right-\\[var\\(--ui-kit-pd\\)\\]{right:var(--ui-kit-pd)}.embarkai-ui-scope .right-full{right:100%}.embarkai-ui-scope .top-0{top:0}.embarkai-ui-scope .top-1\\/2{top:50%}.embarkai-ui-scope .top-2{top:.5rem}.embarkai-ui-scope .top-4{top:1rem}.embarkai-ui-scope .top-\\[var\\(--ui-kit-pd\\)\\]{top:var(--ui-kit-pd)}.embarkai-ui-scope .z-10{z-index:10}.embarkai-ui-scope .z-50{z-index:50}.embarkai-ui-scope .z-\\[9998\\]{z-index:9998}.embarkai-ui-scope .z-\\[9999\\]{z-index:9999}.embarkai-ui-scope .-m-px{margin:-1px}.embarkai-ui-scope .-mx-1{margin-left:-.25rem;margin-right:-.25rem}.embarkai-ui-scope .mx-auto{margin-left:auto;margin-right:auto}.embarkai-ui-scope .my-1{margin-top:.25rem;margin-bottom:.25rem}.embarkai-ui-scope .mb-1{margin-bottom:.25rem}.embarkai-ui-scope .mb-2{margin-bottom:.5rem}.embarkai-ui-scope .mb-3{margin-bottom:.75rem}.embarkai-ui-scope .mb-4{margin-bottom:1rem}.embarkai-ui-scope .ml-1{margin-left:.25rem}.embarkai-ui-scope .ml-2{margin-left:.5rem}.embarkai-ui-scope .ml-auto{margin-left:auto}.embarkai-ui-scope .mr-1{margin-right:.25rem}.embarkai-ui-scope .mt-0\\.5{margin-top:.125rem}.embarkai-ui-scope .mt-1{margin-top:.25rem}.embarkai-ui-scope .mt-2{margin-top:.5rem}.embarkai-ui-scope .mt-4{margin-top:1rem}.embarkai-ui-scope .block{display:block}.embarkai-ui-scope .inline-block{display:inline-block}.embarkai-ui-scope .inline{display:inline}.embarkai-ui-scope .flex{display:flex}.embarkai-ui-scope .inline-flex{display:inline-flex}.embarkai-ui-scope .table{display:table}.embarkai-ui-scope .grid{display:grid}.embarkai-ui-scope .hidden{display:none}.embarkai-ui-scope .aspect-square{aspect-ratio:1/1}.embarkai-ui-scope .size-4{width:1rem;height:1rem}.embarkai-ui-scope .size-8{width:2rem;height:2rem}.embarkai-ui-scope .size-auto{width:auto;height:auto}.embarkai-ui-scope .h-0{height:0}.embarkai-ui-scope .h-1{height:.25rem}.embarkai-ui-scope .h-10{height:2.5rem}.embarkai-ui-scope .h-12{height:3rem}.embarkai-ui-scope .h-16{height:4rem}.embarkai-ui-scope .h-3{height:.75rem}.embarkai-ui-scope .h-3\\.5{height:.875rem}.embarkai-ui-scope .h-4{height:1rem}.embarkai-ui-scope .h-48{height:12rem}.embarkai-ui-scope .h-5{height:1.25rem}.embarkai-ui-scope .h-6{height:1.5rem}.embarkai-ui-scope .h-7{height:1.75rem}.embarkai-ui-scope .h-8{height:2rem}.embarkai-ui-scope .h-\\[100dvh\\]{height:100dvh}.embarkai-ui-scope .h-\\[48px\\]{height:48px}.embarkai-ui-scope .h-\\[var\\(--radix-select-trigger-height\\)\\]{height:var(--radix-select-trigger-height)}.embarkai-ui-scope .h-auto{height:auto}.embarkai-ui-scope .h-fit{height:-moz-fit-content;height:fit-content}.embarkai-ui-scope .h-full{height:100%}.embarkai-ui-scope .h-px{height:1px}.embarkai-ui-scope .max-h-96{max-height:24rem}.embarkai-ui-scope .max-h-\\[95dvh\\]{max-height:95dvh}.embarkai-ui-scope .min-h-10{min-height:2.5rem}.embarkai-ui-scope .min-h-12{min-height:3rem}.embarkai-ui-scope .w-1{width:.25rem}.embarkai-ui-scope .w-1\\/2{width:50%}.embarkai-ui-scope .w-10{width:2.5rem}.embarkai-ui-scope .w-12{width:3rem}.embarkai-ui-scope .w-16{width:4rem}.embarkai-ui-scope .w-3{width:.75rem}.embarkai-ui-scope .w-3\\.5{width:.875rem}.embarkai-ui-scope .w-4{width:1rem}.embarkai-ui-scope .w-48{width:12rem}.embarkai-ui-scope .w-5{width:1.25rem}.embarkai-ui-scope .w-6{width:1.5rem}.embarkai-ui-scope .w-7{width:1.75rem}.embarkai-ui-scope .w-8{width:2rem}.embarkai-ui-scope .w-\\[100dvw\\]{width:100dvw}.embarkai-ui-scope .w-\\[40px\\]{width:40px}.embarkai-ui-scope .w-\\[var\\(--ui-kit-maw\\)\\]{width:var(--ui-kit-maw)}.embarkai-ui-scope .w-fit{width:-moz-fit-content;width:fit-content}.embarkai-ui-scope .w-full{width:100%}.embarkai-ui-scope .w-px{width:1px}.embarkai-ui-scope .min-w-0{min-width:0}.embarkai-ui-scope .min-w-10{min-width:2.5rem}.embarkai-ui-scope .min-w-16{min-width:4rem}.embarkai-ui-scope .min-w-\\[256px\\]{min-width:256px}.embarkai-ui-scope .min-w-\\[8rem\\]{min-width:8rem}.embarkai-ui-scope .min-w-\\[var\\(--radix-select-trigger-width\\)\\]{min-width:var(--radix-select-trigger-width)}.embarkai-ui-scope .max-w-\\[100px\\]{max-width:100px}.embarkai-ui-scope .max-w-\\[144px\\]{max-width:144px}.embarkai-ui-scope .max-w-\\[150px\\]{max-width:150px}.embarkai-ui-scope .max-w-\\[160px\\]{max-width:160px}.embarkai-ui-scope .max-w-\\[256px\\]{max-width:256px}.embarkai-ui-scope .max-w-\\[680px\\]{max-width:680px}.embarkai-ui-scope .max-w-\\[calc\\(50\\%-8px\\)\\]{max-width:calc(50% - 8px)}.embarkai-ui-scope .max-w-full{max-width:100%}.embarkai-ui-scope .max-w-sm{max-width:24rem}.embarkai-ui-scope .flex-1{flex:1 1 0%}.embarkai-ui-scope .flex-none{flex:none}.embarkai-ui-scope .flex-shrink-0,.embarkai-ui-scope .shrink-0{flex-shrink:0}.embarkai-ui-scope .-translate-x-1\\/2{--tw-translate-x:-50%}.embarkai-ui-scope .-translate-x-1\\/2,.embarkai-ui-scope .-translate-x-\\[var\\(--ui-kit-gap\\)\\]{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.embarkai-ui-scope .-translate-x-\\[var\\(--ui-kit-gap\\)\\]{--tw-translate-x:calc(var(--ui-kit-gap)*-1)}.embarkai-ui-scope .-translate-y-1\\/2{--tw-translate-y:-50%}.embarkai-ui-scope .-translate-y-1\\/2,.embarkai-ui-scope .-translate-y-1\\/3{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.embarkai-ui-scope .-translate-y-1\\/3{--tw-translate-y:-33.333333%}.embarkai-ui-scope .transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes glow-warning{0%,to{transform:scale(1);box-shadow:0 0 16px var(--ui-kit-bg-warning)}50%{transform:scale(.97);box-shadow:0 0 4px var(--ui-kit-bg-warning)}}.embarkai-ui-scope .animate-glow-warning{animation:glow-warning 2s ease infinite}@keyframes pulse{50%{opacity:.5}}.embarkai-ui-scope .animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}@keyframes spin{to{transform:rotate(1turn)}}.embarkai-ui-scope .animate-spin{animation:spin 1s linear infinite}.embarkai-ui-scope .cursor-default{cursor:default}.embarkai-ui-scope .cursor-help{cursor:help}.embarkai-ui-scope .cursor-pointer{cursor:pointer}.embarkai-ui-scope .cursor-text{cursor:text}.embarkai-ui-scope .select-none{-webkit-user-select:none;-moz-user-select:none;user-select:none}.embarkai-ui-scope .select-all{-webkit-user-select:all;-moz-user-select:all;user-select:all}.embarkai-ui-scope .scroll-my-1{scroll-margin-top:.25rem;scroll-margin-bottom:.25rem}.embarkai-ui-scope .list-inside{list-style-position:inside}.embarkai-ui-scope .list-disc{list-style-type:disc}.embarkai-ui-scope .grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.embarkai-ui-scope .grid-cols-10{grid-template-columns:repeat(10,minmax(0,1fr))}.embarkai-ui-scope .grid-cols-11{grid-template-columns:repeat(11,minmax(0,1fr))}.embarkai-ui-scope .grid-cols-12{grid-template-columns:repeat(12,minmax(0,1fr))}.embarkai-ui-scope .grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.embarkai-ui-scope .grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.embarkai-ui-scope .grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.embarkai-ui-scope .grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.embarkai-ui-scope .grid-cols-6{grid-template-columns:repeat(6,minmax(0,1fr))}.embarkai-ui-scope .grid-cols-7{grid-template-columns:repeat(7,minmax(0,1fr))}.embarkai-ui-scope .grid-cols-8{grid-template-columns:repeat(8,minmax(0,1fr))}.embarkai-ui-scope .flex-col{flex-direction:column}.embarkai-ui-scope .flex-col-reverse{flex-direction:column-reverse}.embarkai-ui-scope .flex-wrap{flex-wrap:wrap}.embarkai-ui-scope .place-content-center{place-content:center}.embarkai-ui-scope .items-start{align-items:flex-start}.embarkai-ui-scope .items-end{align-items:flex-end}.embarkai-ui-scope .items-center{align-items:center}.embarkai-ui-scope .justify-start{justify-content:flex-start}.embarkai-ui-scope .justify-end{justify-content:flex-end}.embarkai-ui-scope .justify-center{justify-content:center}.embarkai-ui-scope .justify-between{justify-content:space-between}.embarkai-ui-scope .gap-0{gap:0}.embarkai-ui-scope .gap-1{gap:.25rem}.embarkai-ui-scope .gap-2{gap:.5rem}.embarkai-ui-scope .gap-3{gap:.75rem}.embarkai-ui-scope .gap-4{gap:1rem}.embarkai-ui-scope .gap-\\[10px\\]{gap:10px}.embarkai-ui-scope .gap-\\[var\\(--ui-kit-gap\\)\\]{gap:var(--ui-kit-gap)}.embarkai-ui-scope :is(.space-x-1>:not([hidden])~:not([hidden])){--tw-space-x-reverse:0;margin-right:calc(.25rem*var(--tw-space-x-reverse));margin-left:calc(.25rem*(1 - var(--tw-space-x-reverse)))}.embarkai-ui-scope :is(.space-x-2>:not([hidden])~:not([hidden])){--tw-space-x-reverse:0;margin-right:calc(.5rem*var(--tw-space-x-reverse));margin-left:calc(.5rem*(1 - var(--tw-space-x-reverse)))}.embarkai-ui-scope :is(.space-y-0\\.5>:not([hidden])~:not([hidden])){--tw-space-y-reverse:0;margin-top:calc(.125rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.125rem*var(--tw-space-y-reverse))}.embarkai-ui-scope :is(.space-y-1>:not([hidden])~:not([hidden])){--tw-space-y-reverse:0;margin-top:calc(.25rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.25rem*var(--tw-space-y-reverse))}.embarkai-ui-scope :is(.space-y-1\\.5>:not([hidden])~:not([hidden])){--tw-space-y-reverse:0;margin-top:calc(.375rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.375rem*var(--tw-space-y-reverse))}.embarkai-ui-scope :is(.space-y-2>:not([hidden])~:not([hidden])){--tw-space-y-reverse:0;margin-top:calc(.5rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem*var(--tw-space-y-reverse))}.embarkai-ui-scope .overflow-hidden{overflow:hidden}.embarkai-ui-scope .overflow-y-auto{overflow-y:auto}.embarkai-ui-scope .overflow-x-hidden{overflow-x:hidden}.embarkai-ui-scope .truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.embarkai-ui-scope .text-ellipsis{text-overflow:ellipsis}.embarkai-ui-scope .whitespace-nowrap{white-space:nowrap}.embarkai-ui-scope .whitespace-pre-line{white-space:pre-line}.embarkai-ui-scope .whitespace-pre-wrap{white-space:pre-wrap}.embarkai-ui-scope .break-normal{overflow-wrap:normal;word-break:normal}.embarkai-ui-scope .break-words{overflow-wrap:break-word}.embarkai-ui-scope .break-all{word-break:break-all}.embarkai-ui-scope .rounded{border-radius:.25rem}.embarkai-ui-scope .rounded-\\[10px\\]{border-radius:10px}.embarkai-ui-scope .rounded-\\[8px\\]{border-radius:8px}.embarkai-ui-scope .rounded-\\[calc\\(var\\(--ui-kit-el-bdrs\\)_\\/_2\\)\\]{border-radius:calc(var(--ui-kit-el-bdrs)/2)}.embarkai-ui-scope .rounded-\\[var\\(--ui-kit-bdrs\\)\\]{border-radius:var(--ui-kit-bdrs)}.embarkai-ui-scope .rounded-\\[var\\(--ui-kit-el-bdrs\\)\\]{border-radius:var(--ui-kit-el-bdrs)}.embarkai-ui-scope .rounded-full{border-radius:9999px}.embarkai-ui-scope .rounded-lg{border-radius:.5rem}.embarkai-ui-scope .rounded-md{border-radius:.375rem}.embarkai-ui-scope .rounded-xl{border-radius:.75rem}.embarkai-ui-scope .border{border-width:1px}.embarkai-ui-scope .border-0{border-width:0}.embarkai-ui-scope .border-2{border-width:2px}.embarkai-ui-scope .border-b{border-bottom-width:1px}.embarkai-ui-scope .border-t{border-top-width:1px}.embarkai-ui-scope .border-dashed{border-style:dashed}.embarkai-ui-scope .border-\\[var\\(--ui-kit-bd\\)\\]{border-color:var(--ui-kit-bd)}.embarkai-ui-scope .border-\\[var\\(--ui-kit-bg-error\\)\\]{border-color:var(--ui-kit-bg-error)}.embarkai-ui-scope .border-\\[var\\(--ui-kit-bg-success\\)\\]{border-color:var(--ui-kit-bg-success)}.embarkai-ui-scope .border-\\[var\\(--ui-kit-bg-warning\\)\\]{border-color:var(--ui-kit-bg-warning)}.embarkai-ui-scope .border-\\[var\\(--ui-kit-error\\)\\]{border-color:var(--ui-kit-error)}.embarkai-ui-scope .border-\\[var\\(--ui-kit-secondary\\)\\]{border-color:var(--ui-kit-secondary)}.embarkai-ui-scope .border-current{border-color:currentColor}.embarkai-ui-scope .border-transparent{border-color:transparent}.embarkai-ui-scope .border-t-transparent{border-top-color:transparent}.embarkai-ui-scope .bg-\\[\\#002c15\\]{--tw-bg-opacity:1;background-color:rgb(0 44 21/var(--tw-bg-opacity,1))}.embarkai-ui-scope .bg-\\[\\#081f2c\\]{--tw-bg-opacity:1;background-color:rgb(8 31 44/var(--tw-bg-opacity,1))}.embarkai-ui-scope .bg-\\[\\#f0f6f8\\]{--tw-bg-opacity:1;background-color:rgb(240 246 248/var(--tw-bg-opacity,1))}.embarkai-ui-scope .bg-\\[\\#f3ba2f\\]{--tw-bg-opacity:1;background-color:rgb(243 186 47/var(--tw-bg-opacity,1))}.embarkai-ui-scope .bg-\\[var\\(--ui-kit-bg\\)\\]{background-color:var(--ui-kit-bg)}.embarkai-ui-scope .bg-\\[var\\(--ui-kit-bg-error\\)\\]{background-color:var(--ui-kit-bg-error)}.embarkai-ui-scope .bg-\\[var\\(--ui-kit-bg-info\\)\\]{background-color:var(--ui-kit-bg-info)}.embarkai-ui-scope .bg-\\[var\\(--ui-kit-bg-secondary\\)\\]{background-color:var(--ui-kit-bg-secondary)}.embarkai-ui-scope .bg-\\[var\\(--ui-kit-bg-success\\)\\]{background-color:var(--ui-kit-bg-success)}.embarkai-ui-scope .bg-\\[var\\(--ui-kit-bg-warning\\)\\]{background-color:var(--ui-kit-bg-warning)}.embarkai-ui-scope .bg-\\[var\\(--ui-kit-fg\\)\\]{background-color:var(--ui-kit-fg)}.embarkai-ui-scope .bg-\\[var\\(--ui-kit-overlay\\)\\]{background-color:var(--ui-kit-overlay)}.embarkai-ui-scope .bg-\\[var\\(--ui-kit-primary\\)\\]{background-color:var(--ui-kit-primary)}.embarkai-ui-scope .bg-\\[var\\(--ui-kit-secondary\\)\\]{background-color:var(--ui-kit-secondary)}.embarkai-ui-scope .bg-\\[var\\(--ui-kit-secondary-h\\)\\]{background-color:var(--ui-kit-secondary-h)}.embarkai-ui-scope .bg-blue-100{--tw-bg-opacity:1;background-color:rgb(219 234 254/var(--tw-bg-opacity,1))}.embarkai-ui-scope .bg-gray-100{--tw-bg-opacity:1;background-color:rgb(243 244 246/var(--tw-bg-opacity,1))}.embarkai-ui-scope .bg-green-100{--tw-bg-opacity:1;background-color:rgb(220 252 231/var(--tw-bg-opacity,1))}.embarkai-ui-scope .bg-red-100{--tw-bg-opacity:1;background-color:rgb(254 226 226/var(--tw-bg-opacity,1))}.embarkai-ui-scope .bg-transparent{background-color:transparent}.embarkai-ui-scope .fill-\\[var\\(--ui-kit-bg-warning\\)\\]{fill:var(--ui-kit-bg-warning)}.embarkai-ui-scope .object-contain{-o-object-fit:contain;object-fit:contain}.embarkai-ui-scope .object-cover{-o-object-fit:cover;object-fit:cover}.embarkai-ui-scope .p-0{padding:0}.embarkai-ui-scope .p-1{padding:.25rem}.embarkai-ui-scope .p-2{padding:.5rem}.embarkai-ui-scope .p-3{padding:.75rem}.embarkai-ui-scope .p-4{padding:1rem}.embarkai-ui-scope .p-5{padding:1.25rem}.embarkai-ui-scope .p-6{padding:1.5rem}.embarkai-ui-scope .p-8{padding:2rem}.embarkai-ui-scope .p-\\[2px\\]{padding:2px}.embarkai-ui-scope .p-\\[var\\(--ui-kit-gap\\)\\]{padding:var(--ui-kit-gap)}.embarkai-ui-scope .p-\\[var\\(--ui-kit-pd\\)\\]{padding:var(--ui-kit-pd)}.embarkai-ui-scope .px-0{padding-left:0;padding-right:0}.embarkai-ui-scope .px-1{padding-left:.25rem;padding-right:.25rem}.embarkai-ui-scope .px-2{padding-left:.5rem;padding-right:.5rem}.embarkai-ui-scope .px-3{padding-left:.75rem;padding-right:.75rem}.embarkai-ui-scope .px-4{padding-left:1rem;padding-right:1rem}.embarkai-ui-scope .px-5{padding-left:1.25rem;padding-right:1.25rem}.embarkai-ui-scope .px-8{padding-left:2rem;padding-right:2rem}.embarkai-ui-scope .px-\\[var\\(--ui-kit-gap\\)\\]{padding-left:var(--ui-kit-gap);padding-right:var(--ui-kit-gap)}.embarkai-ui-scope .px-\\[var\\(--ui-kit-pd\\)\\]{padding-left:var(--ui-kit-pd);padding-right:var(--ui-kit-pd)}.embarkai-ui-scope .py-0{padding-top:0;padding-bottom:0}.embarkai-ui-scope .py-1{padding-top:.25rem;padding-bottom:.25rem}.embarkai-ui-scope .py-1\\.5{padding-top:.375rem;padding-bottom:.375rem}.embarkai-ui-scope .py-2{padding-top:.5rem;padding-bottom:.5rem}.embarkai-ui-scope .py-3{padding-top:.75rem;padding-bottom:.75rem}.embarkai-ui-scope .py-4{padding-top:1rem;padding-bottom:1rem}.embarkai-ui-scope .py-8{padding-top:2rem;padding-bottom:2rem}.embarkai-ui-scope .py-\\[10px\\]{padding-top:10px;padding-bottom:10px}.embarkai-ui-scope .py-\\[var\\(--ui-kit-gap\\)\\]{padding-top:var(--ui-kit-gap);padding-bottom:var(--ui-kit-gap)}.embarkai-ui-scope .py-\\[var\\(--ui-kit-pd\\)\\]{padding-top:var(--ui-kit-pd);padding-bottom:var(--ui-kit-pd)}.embarkai-ui-scope .pb-2{padding-bottom:.5rem}.embarkai-ui-scope .pb-5{padding-bottom:1.25rem}.embarkai-ui-scope .pb-6{padding-bottom:1.5rem}.embarkai-ui-scope .pb-\\[var\\(--ui-kit-pd\\)\\]{padding-bottom:var(--ui-kit-pd)}.embarkai-ui-scope .pl-\\[var\\(--ui-kit-pd\\)\\]{padding-left:var(--ui-kit-pd)}.embarkai-ui-scope .pr-8{padding-right:2rem}.embarkai-ui-scope .pt-3{padding-top:.75rem}.embarkai-ui-scope .pt-4{padding-top:1rem}.embarkai-ui-scope .pt-5{padding-top:1.25rem}.embarkai-ui-scope .text-left{text-align:left}.embarkai-ui-scope .text-center{text-align:center}.embarkai-ui-scope .text-right{text-align:right}.embarkai-ui-scope .font-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.embarkai-ui-scope .font-sans{font-family:ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji}.embarkai-ui-scope .text-2xl{font-size:1.5rem;line-height:2rem}.embarkai-ui-scope .text-\\[10px\\]{font-size:10px}.embarkai-ui-scope .text-\\[14px\\]{font-size:14px}.embarkai-ui-scope .text-\\[16px\\]{font-size:16px}.embarkai-ui-scope .text-\\[8px\\]{font-size:8px}.embarkai-ui-scope .text-lg{font-size:1.125rem;line-height:1.75rem}.embarkai-ui-scope .text-sm{font-size:.875rem;line-height:1.25rem}.embarkai-ui-scope .text-xl{font-size:1.25rem;line-height:1.75rem}.embarkai-ui-scope .text-xs{font-size:.75rem;line-height:1rem}.embarkai-ui-scope .font-bold{font-weight:700}.embarkai-ui-scope .font-medium{font-weight:500}.embarkai-ui-scope .font-normal{font-weight:400}.embarkai-ui-scope .font-semibold{font-weight:600}.embarkai-ui-scope .uppercase{text-transform:uppercase}.embarkai-ui-scope .lowercase{text-transform:lowercase}.embarkai-ui-scope .leading-3{line-height:.75rem}.embarkai-ui-scope .leading-4{line-height:1rem}.embarkai-ui-scope .leading-5{line-height:1.25rem}.embarkai-ui-scope .leading-6{line-height:1.5rem}.embarkai-ui-scope .leading-7{line-height:1.75rem}.embarkai-ui-scope .leading-8{line-height:2rem}.embarkai-ui-scope .leading-\\[8px\\]{line-height:8px}.embarkai-ui-scope .leading-none{line-height:1}.embarkai-ui-scope .leading-tight{line-height:1.25}.embarkai-ui-scope .tracking-\\[0\\.3em\\]{letter-spacing:.3em}.embarkai-ui-scope .tracking-tight{letter-spacing:-.025em}.embarkai-ui-scope .text-\\[\\#c3f53c\\]{--tw-text-opacity:1;color:rgb(195 245 60/var(--tw-text-opacity,1))}.embarkai-ui-scope .text-\\[var\\(--ui-kit-bg-error\\)\\]{color:var(--ui-kit-bg-error)}.embarkai-ui-scope .text-\\[var\\(--ui-kit-bg-success\\)\\]{color:var(--ui-kit-bg-success)}.embarkai-ui-scope .text-\\[var\\(--ui-kit-bg-warning\\)\\]{color:var(--ui-kit-bg-warning)}.embarkai-ui-scope .text-\\[var\\(--ui-kit-error\\)\\]{color:var(--ui-kit-error)}.embarkai-ui-scope .text-\\[var\\(--ui-kit-fg\\)\\]{color:var(--ui-kit-fg)}.embarkai-ui-scope .text-\\[var\\(--ui-kit-fg-inverted\\)\\]{color:var(--ui-kit-fg-inverted)}.embarkai-ui-scope .text-\\[var\\(--ui-kit-fg-muted\\)\\]{color:var(--ui-kit-fg-muted)}.embarkai-ui-scope .text-\\[var\\(--ui-kit-info\\)\\]{color:var(--ui-kit-info)}.embarkai-ui-scope .text-\\[var\\(--ui-kit-primary\\)\\]{color:var(--ui-kit-primary)}.embarkai-ui-scope .text-\\[var\\(--ui-kit-success\\)\\]{color:var(--ui-kit-success)}.embarkai-ui-scope .text-\\[var\\(--ui-kit-text-secondary\\)\\]{color:var(--ui-kit-text-secondary)}.embarkai-ui-scope .text-\\[var\\(--ui-kit-warning\\)\\]{color:var(--ui-kit-warning)}.embarkai-ui-scope .text-black{--tw-text-opacity:1;color:rgb(0 0 0/var(--tw-text-opacity,1))}.embarkai-ui-scope .text-blue-600{--tw-text-opacity:1;color:rgb(37 99 235/var(--tw-text-opacity,1))}.embarkai-ui-scope .text-blue-800{--tw-text-opacity:1;color:rgb(30 64 175/var(--tw-text-opacity,1))}.embarkai-ui-scope .text-gray-400{--tw-text-opacity:1;color:rgb(156 163 175/var(--tw-text-opacity,1))}.embarkai-ui-scope .text-gray-500{--tw-text-opacity:1;color:rgb(107 114 128/var(--tw-text-opacity,1))}.embarkai-ui-scope .text-gray-600{--tw-text-opacity:1;color:rgb(75 85 99/var(--tw-text-opacity,1))}.embarkai-ui-scope .text-green-500{--tw-text-opacity:1;color:rgb(34 197 94/var(--tw-text-opacity,1))}.embarkai-ui-scope .text-green-600{--tw-text-opacity:1;color:rgb(22 163 74/var(--tw-text-opacity,1))}.embarkai-ui-scope .text-green-800{--tw-text-opacity:1;color:rgb(22 101 52/var(--tw-text-opacity,1))}.embarkai-ui-scope .text-red-600{--tw-text-opacity:1;color:rgb(220 38 38/var(--tw-text-opacity,1))}.embarkai-ui-scope .text-red-800{--tw-text-opacity:1;color:rgb(153 27 27/var(--tw-text-opacity,1))}.embarkai-ui-scope .text-white{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.embarkai-ui-scope .underline{text-decoration-line:underline}.embarkai-ui-scope .underline-offset-2{text-underline-offset:2px}.embarkai-ui-scope .underline-offset-4{text-underline-offset:4px}.embarkai-ui-scope .antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.embarkai-ui-scope .opacity-0{opacity:0}.embarkai-ui-scope .opacity-100{opacity:1}.embarkai-ui-scope .opacity-50{opacity:.5}.embarkai-ui-scope .opacity-60{opacity:.6}.embarkai-ui-scope .shadow{--tw-shadow:0 1px 3px 0 rgba(0,0,0,.1),0 1px 2px -1px rgba(0,0,0,.1);--tw-shadow-colored:0 1px 3px 0 var(--tw-shadow-color),0 1px 2px -1px var(--tw-shadow-color)}.embarkai-ui-scope .shadow,.embarkai-ui-scope .shadow-lg{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.embarkai-ui-scope .shadow-lg{--tw-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -4px rgba(0,0,0,.1);--tw-shadow-colored:0 10px 15px -3px var(--tw-shadow-color),0 4px 6px -4px var(--tw-shadow-color)}.embarkai-ui-scope .outline-none{outline:2px solid transparent;outline-offset:2px}.embarkai-ui-scope .outline{outline-style:solid}.embarkai-ui-scope .blur{--tw-blur:blur(8px)}.embarkai-ui-scope .blur,.embarkai-ui-scope .grayscale{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.embarkai-ui-scope .grayscale{--tw-grayscale:grayscale(100%)}.embarkai-ui-scope .filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.embarkai-ui-scope .transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.embarkai-ui-scope .transition-\\[color\\2c box-shadow\\]{transition-property:color,box-shadow;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.embarkai-ui-scope .transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.embarkai-ui-scope .transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.embarkai-ui-scope .transition-none{transition-property:none}.embarkai-ui-scope .transition-opacity{transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.embarkai-ui-scope .duration-200{transition-duration:.2s}.embarkai-ui-scope .ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}.embarkai-ui-scope{--ui-kit-ff:var(--embark-ui-ff,-apple-system,BlinkMacSystemFont,"Inter",system-ui,sans-serif);--ui-kit-maw:var(--embark-ui-maw,384px);--ui-kit-pd:var(--embark-ui-pd,12px);--ui-kit-gap:var(--embark-ui-gap,10px);--ui-kit-bdrs:var(--embark-ui-bdrs,20px);--ui-kit-el-bdrs:var(--embark-ui-element-bdrs,10px);--ui-kit-backdrop-blur:var(--embark-ui-backdrop-blur,10px)}.embarkai-ui-scope[data-current-theme-mode=light]{--ui-kit-overlay:var(--embark-ui-overlay,hsla(0,0%,100%,.8));--ui-kit-bg:var(--embark-ui-bg,#fff);--ui-kit-fg:var(--embark-ui-fg,#000);--ui-kit-fg-inverted:var(--embark-ui-fg-inverted,#fff);--ui-kit-fg-muted:var(--embark-ui-fg-muted,rgba(0,0,0,.6));--ui-kit-primary:var(--embark-ui-primary,#000);--ui-kit-primary-h:var(--embark-ui-primary-h,rgba(0,0,0,.8));--ui-kit-primary-a:var(--embark-ui-primary-a,rgba(0,0,0,.6));--ui-kit-secondary:var(--embark-ui-secondary,#e4e4e4);--ui-kit-secondary-h:var(--embark-ui-secondary-h,hsla(0,0%,89%,.8));--ui-kit-secondary-a:var(--embark-ui-secondary-a,hsla(0,0%,89%,.6));--ui-kit-bd:var(--embark-ui-bd,#ebebeb);--ui-kit-bd-intense:var(--embark-ui-bd-intense,#a9a9a9);--ui-kit-shadow:var(--embark-ui-shadow,0 0 0 0 transparent);--ui-kit-shadow-c:var(--embark-ui-shadow-c,rgba(0,0,0,.1));--ui-kit-info:var(--embark-ui-info,var(--ui-kit-fg));--ui-kit-bg-info:var(--embark-ui-bg-info,var(--ui-kit-secondary));--ui-kit-success:var(--embark-ui-success,#000);--ui-kit-bg-success:var(--embark-ui-bg-success,#21ff51);--ui-kit-warning:var(--embark-ui-warning,#000);--ui-kit-bg-warning:var(--embark-ui-bg-warning,#e9fa00);--ui-kit-error:var(--embark-ui-error,#fff);--ui-kit-bg-error:var(--embark-ui-bg-error,#d6204e)}.embarkai-ui-scope[data-current-theme-mode=dark]{--ui-kit-overlay:var(--embark-ui-overlay,rgba(0,0,0,.8));--ui-kit-bg:var(--embark-ui-bg,#1a1a1a);--ui-kit-fg:var(--embark-ui-fg,#fff);--ui-kit-fg-inverted:var(--embark-ui-fg-inverted,#000);--ui-kit-fg-muted:var(--embark-ui-fg-muted,hsla(0,0%,100%,.6));--ui-kit-primary:var(--embark-ui-primary,#fff);--ui-kit-primary-h:var(--embark-ui-primary-h,hsla(0,0%,100%,.8));--ui-kit-primary-a:var(--embark-ui-primary-a,hsla(0,0%,100%,.6));--ui-kit-secondary:var(--embark-ui-secondary,#2a2a2a);--ui-kit-secondary-h:var(--embark-ui-secondary-h,rgba(42,42,42,.6));--ui-kit-secondary-a:var(--embark-ui-secondary-a,rgba(42,42,42,.4));--ui-kit-bd:var(--embark-ui-bd,#3a3a3a);--ui-kit-bd-intense:var(--embark-ui-bd-intense,#4a4a4a);--ui-kit-shadow:var(--embark-ui-shadow,0 0 0 0 transparent);--ui-kit-shadow-c:var(--embark-ui-shadow-c,rgba(0,0,0,.1));--ui-kit-info:var(--embark-ui-info,var(--ui-kit-fg));--ui-kit-bg-info:var(--embark-ui-bg-info,var(--ui-kit-secondary));--ui-kit-success:var(--embark-ui-success,#000);--ui-kit-bg-success:var(--embark-ui-bg-success,#21ff51);--ui-kit-warning:var(--embark-ui-warning,#000);--ui-kit-bg-warning:var(--embark-ui-bg-warning,#e9fa00);--ui-kit-error:var(--embark-ui-error,#fff);--ui-kit-bg-error:var(--embark-ui-bg-error,#d6204e)}.embarkai-ui-scope,.embarkai-ui-scope *{margin:0;box-sizing:border-box;font-family:var(--ui-kit-ff);font-optical-sizing:auto;-webkit-tap-highlight-color:transparent;-moz-tap-highlight-color:transparent;-ms-tap-highlight-color:transparent;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.embarkai-ui-scope button,.embarkai-ui-scope h1,.embarkai-ui-scope h2,.embarkai-ui-scope h3,.embarkai-ui-scope h4,.embarkai-ui-scope h5,.embarkai-ui-scope h6,.embarkai-ui-scope input,.embarkai-ui-scope p,.embarkai-ui-scope select,.embarkai-ui-scope textarea{font-family:var(--ui-kit-ff)!important;margin:0}.embarkai-ui-scope button,.embarkai-ui-scope input,.embarkai-ui-scope select,.embarkai-ui-scope textarea{border-style:solid;outline:none!important;appearance:none!important;-webkit-appearance:none;-moz-appearance:none}.embarkai-ui-scope input,.embarkai-ui-scope textarea{font-size:16px!important}.embarkai-ui-scope .account-connect-button{box-shadow:0 4px 20px var(--ui-kit-shadow-c),inset 0 0 0 1px var(--ui-kit-bd);transition:transform .25s ease}.embarkai-ui-scope .account-connect-button:hover{transform:scale(1.02)}.embarkai-ui-scope .account-connect-button:active{transform:scale(1)}@keyframes lumia-mobile-dialog-fade-in{0%{opacity:0;transform:translateY(64px)}to{opacity:1;transform:translateY(0)}}@keyframes lumia-mobile-dialog-fade-out{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(64px)}}.embarkai-ui-scope .animate-mobile-dialog-in{animation:lumia-mobile-dialog-fade-in 375ms ease}.embarkai-ui-scope .animate-mobile-dialog-out{animation:lumia-mobile-dialog-fade-out 375ms ease}@keyframes lumia-dialog-fade-in{0%{opacity:0}to{opacity:1}}@keyframes lumia-dialog-fade-out{0%{opacity:1}to{opacity:0}}.embarkai-ui-scope .animate-dialog-in{animation:lumia-dialog-fade-in 375ms ease}.embarkai-ui-scope .animate-dialog-out{animation:lumia-dialog-fade-out 375ms ease}.embarkai-ui-scope .list-scrollbar-y{width:100%;padding-right:var(--ui-kit-list-scrollbar-pd-r,0);overflow-y:auto;overflow-x:hidden;max-height:var(--ui-kit-scrollbar-mah,300px)}.embarkai-ui-scope .list-scrollbar-y::-webkit-scrollbar{width:4px;height:4px}.embarkai-ui-scope .list-scrollbar-y::-webkit-scrollbar-thumb{cursor:pointer;width:4px;border-radius:2px;background-color:var(--ui-kit-bd)}.embarkai-ui-scope .list-scrollbar-y::-webkit-scrollbar-track{margin-top:10px;margin-bottom:10px;background-color:transparent}.embarkai-ui-scope .noScrollbars::-webkit-scrollbar{display:none}.embarkai-ui-scope div[data-radix-popper-content-wrapper]{z-index:10000!important}@keyframes rotateShine{0%{transform:translate(-50%,-50%) rotate(0deg)}to{transform:translate(-50%,-50%) rotate(1turn)}}.embarkai-ui-scope .button-shine-outline{position:absolute;top:0;left:0;width:100%;height:100%;padding:1px;-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0) border-box;mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0) border-box;-webkit-mask-composite:xor;mask-composite:exclude}.embarkai-ui-scope .button-shine-outline-shiner{position:absolute;top:50%;left:50%;width:500px;height:500px;transform:translate(-50%,-50%);background:conic-gradient(from 0deg,transparent 0,var(--ui-kit-fg) 8%,transparent 24%);animation:rotateShine 3s linear infinite}.embarkai-ui-scope .file\\:mr-\\[var\\(--ui-kit-gap\\)\\]::file-selector-button{margin-right:var(--ui-kit-gap)}.embarkai-ui-scope .file\\:h-12::file-selector-button{height:3rem}.embarkai-ui-scope .file\\:cursor-pointer::file-selector-button{cursor:pointer}.embarkai-ui-scope .file\\:rounded-\\[var\\(--ui-kit-el-bdrs\\)\\]::file-selector-button{border-radius:var(--ui-kit-el-bdrs)}.embarkai-ui-scope .file\\:border-0::file-selector-button{border-width:0}.embarkai-ui-scope .file\\:bg-\\[var\\(--ui-kit-primary\\)\\]::file-selector-button{background-color:var(--ui-kit-primary)}.embarkai-ui-scope .file\\:bg-transparent::file-selector-button{background-color:transparent}.embarkai-ui-scope .file\\:px-\\[var\\(--ui-kit-pd\\)\\]::file-selector-button{padding-left:var(--ui-kit-pd);padding-right:var(--ui-kit-pd)}.embarkai-ui-scope .file\\:text-\\[16px\\]::file-selector-button{font-size:16px}.embarkai-ui-scope .file\\:text-base::file-selector-button{font-size:1rem;line-height:1.5rem}.embarkai-ui-scope .file\\:font-medium::file-selector-button{font-weight:500}.embarkai-ui-scope .file\\:text-\\[var\\(--ui-kit-fg-inverted\\)\\]::file-selector-button{color:var(--ui-kit-fg-inverted)}.embarkai-ui-scope .placeholder\\:text-\\[var\\(--ui-kit-fg-muted\\)\\]::-moz-placeholder{color:var(--ui-kit-fg-muted)}.embarkai-ui-scope .placeholder\\:text-\\[var\\(--ui-kit-fg-muted\\)\\]::placeholder{color:var(--ui-kit-fg-muted)}.embarkai-ui-scope .focus-within\\:bg-\\[var\\(--ui-kit-secondary-a\\)\\]:focus-within{background-color:var(--ui-kit-secondary-a)}.embarkai-ui-scope .focus-within\\:outline-none:focus-within{outline:2px solid transparent;outline-offset:2px}.embarkai-ui-scope .hover\\:bg-\\[\\#002c15\\]:hover{--tw-bg-opacity:1;background-color:rgb(0 44 21/var(--tw-bg-opacity,1))}.embarkai-ui-scope .hover\\:bg-\\[\\#081f2c\\]:hover{--tw-bg-opacity:1;background-color:rgb(8 31 44/var(--tw-bg-opacity,1))}.embarkai-ui-scope .hover\\:bg-\\[\\#f0f6f8\\]:hover{--tw-bg-opacity:1;background-color:rgb(240 246 248/var(--tw-bg-opacity,1))}.embarkai-ui-scope .hover\\:bg-\\[\\#f3ba2f\\]:hover{--tw-bg-opacity:1;background-color:rgb(243 186 47/var(--tw-bg-opacity,1))}.embarkai-ui-scope .hover\\:bg-\\[var\\(--ui-kit-bg\\)\\]:hover{background-color:var(--ui-kit-bg)}.embarkai-ui-scope .hover\\:bg-\\[var\\(--ui-kit-secondary\\)\\]:hover{background-color:var(--ui-kit-secondary)}.embarkai-ui-scope .hover\\:bg-\\[var\\(--ui-kit-secondary-h\\)\\]:hover{background-color:var(--ui-kit-secondary-h)}.embarkai-ui-scope .hover\\:bg-gray-50:hover{--tw-bg-opacity:1;background-color:rgb(249 250 251/var(--tw-bg-opacity,1))}.embarkai-ui-scope .hover\\:text-\\[\\#c3f53c\\]:hover{--tw-text-opacity:1;color:rgb(195 245 60/var(--tw-text-opacity,1))}.embarkai-ui-scope .hover\\:text-\\[var\\(--ui-kit-fg\\)\\]:hover{color:var(--ui-kit-fg)}.embarkai-ui-scope .hover\\:text-gray-600:hover{--tw-text-opacity:1;color:rgb(75 85 99/var(--tw-text-opacity,1))}.embarkai-ui-scope .hover\\:text-gray-700:hover{--tw-text-opacity:1;color:rgb(55 65 81/var(--tw-text-opacity,1))}.embarkai-ui-scope .hover\\:underline:hover{text-decoration-line:underline}.embarkai-ui-scope .hover\\:opacity-80:hover{opacity:.8}.embarkai-ui-scope .hover\\:brightness-110:hover{--tw-brightness:brightness(1.1);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.embarkai-ui-scope .file\\:hover\\:opacity-90:hover::file-selector-button{opacity:.9}.embarkai-ui-scope .focus\\:border-\\[var\\(--ui-kit-primary\\)\\]:focus{border-color:var(--ui-kit-primary)}.embarkai-ui-scope .focus\\:bg-\\[var\\(--ui-kit-secondary-a\\)\\]:focus{background-color:var(--ui-kit-secondary-a)}.embarkai-ui-scope .focus\\:bg-transparent:focus{background-color:transparent}.embarkai-ui-scope .focus\\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}.embarkai-ui-scope .focus-visible\\:outline-none:focus-visible{outline:2px solid transparent;outline-offset:2px}.embarkai-ui-scope .focus-visible\\:ring-0:focus-visible{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.embarkai-ui-scope .focus-visible\\:ring-\\[2px\\]:focus-visible{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.embarkai-ui-scope .focus-visible\\:ring-transparent:focus-visible{--tw-ring-color:transparent}.embarkai-ui-scope .focus-visible\\:ring-offset-0:focus-visible{--tw-ring-offset-width:0px}.embarkai-ui-scope .active\\:bg-\\[\\#f3ba2f\\]:active{--tw-bg-opacity:1;background-color:rgb(243 186 47/var(--tw-bg-opacity,1))}.embarkai-ui-scope .active\\:bg-\\[var\\(--ui-kit-bg\\)\\]:active{background-color:var(--ui-kit-bg)}.embarkai-ui-scope .active\\:bg-\\[var\\(--ui-kit-secondary-a\\)\\]:active{background-color:var(--ui-kit-secondary-a)}.embarkai-ui-scope .active\\:text-\\[\\#c3f53c\\]:active{--tw-text-opacity:1;color:rgb(195 245 60/var(--tw-text-opacity,1))}.embarkai-ui-scope .active\\:opacity-60:active{opacity:.6}.embarkai-ui-scope .file\\:active\\:opacity-80:active::file-selector-button{opacity:.8}.embarkai-ui-scope .disabled\\:cursor-default:disabled{cursor:default}.embarkai-ui-scope .disabled\\:cursor-not-allowed:disabled{cursor:not-allowed}.embarkai-ui-scope .disabled\\:opacity-50:disabled{opacity:.5}.embarkai-ui-scope .disabled\\:hover\\:bg-\\[var\\(--ui-kit-bg\\)\\]:hover:disabled{background-color:var(--ui-kit-bg)}.embarkai-ui-scope .disabled\\:hover\\:bg-\\[var\\(--ui-kit-secondary\\)\\]:hover:disabled{background-color:var(--ui-kit-secondary)}.embarkai-ui-scope .disabled\\:hover\\:text-\\[var\\(--ui-kit-bg-error\\)\\]:hover:disabled{color:var(--ui-kit-bg-error)}.embarkai-ui-scope .disabled\\:hover\\:opacity-50:hover:disabled{opacity:.5}.embarkai-ui-scope .disabled\\:active\\:bg-\\[var\\(--ui-kit-bg\\)\\]:active:disabled{background-color:var(--ui-kit-bg)}.embarkai-ui-scope .disabled\\:active\\:text-\\[var\\(--ui-kit-bg-error\\)\\]:active:disabled{color:var(--ui-kit-bg-error)}.embarkai-ui-scope .disabled\\:active\\:opacity-50:active:disabled{opacity:.5}.embarkai-ui-scope :is(.group:hover .group-hover\\:opacity-100){opacity:1}.embarkai-ui-scope .data-\\[disabled\\]\\:pointer-events-none[data-disabled]{pointer-events:none}.embarkai-ui-scope .data-\\[size\\=default\\]\\:h-12[data-size=default]{height:3rem}.embarkai-ui-scope .data-\\[size\\=sm\\]\\:h-10[data-size=sm]{height:2.5rem}.embarkai-ui-scope .data-\\[side\\=bottom\\]\\:translate-y-1[data-side=bottom]{--tw-translate-y:0.25rem}.embarkai-ui-scope .data-\\[side\\=bottom\\]\\:translate-y-1[data-side=bottom],.embarkai-ui-scope .data-\\[side\\=left\\]\\:-translate-x-1[data-side=left]{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.embarkai-ui-scope .data-\\[side\\=left\\]\\:-translate-x-1[data-side=left]{--tw-translate-x:-0.25rem}.embarkai-ui-scope .data-\\[side\\=right\\]\\:translate-x-1[data-side=right]{--tw-translate-x:0.25rem}.embarkai-ui-scope .data-\\[side\\=right\\]\\:translate-x-1[data-side=right],.embarkai-ui-scope .data-\\[side\\=top\\]\\:-translate-y-1[data-side=top]{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.embarkai-ui-scope .data-\\[side\\=top\\]\\:-translate-y-1[data-side=top]{--tw-translate-y:-0.25rem}.embarkai-ui-scope .data-\\[state\\=checked\\]\\:border-\\[var\\(--ui-kit-bd-intense\\)\\][data-state=checked]{border-color:var(--ui-kit-bd-intense)}.embarkai-ui-scope .data-\\[state\\=checked\\]\\:bg-\\[var\\(--ui-kit-secondary\\)\\][data-state=checked]{background-color:var(--ui-kit-secondary)}.embarkai-ui-scope .data-\\[state\\=checked\\]\\:text-\\[var\\(--ui-kit-fg\\)\\][data-state=checked]{color:var(--ui-kit-fg)}.embarkai-ui-scope .data-\\[disabled\\]\\:opacity-50[data-disabled]{opacity:.5}.embarkai-ui-scope :is(.\\*\\:data-\\[slot\\=select-value\\]\\:line-clamp-1[data-slot=select-value]>*){overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:1}.embarkai-ui-scope :is(.\\*\\:data-\\[slot\\=select-value\\]\\:flex[data-slot=select-value]>*){display:flex}.embarkai-ui-scope :is(.\\*\\:data-\\[slot\\=select-value\\]\\:items-center[data-slot=select-value]>*){align-items:center}.embarkai-ui-scope :is(.\\*\\:data-\\[slot\\=select-value\\]\\:gap-\\[var\\(--ui-kit-gap\\)\\][data-slot=select-value]>*){gap:var(--ui-kit-gap)}@media (min-width:640px){.embarkai-ui-scope .sm\\:flex-row{flex-direction:row}.embarkai-ui-scope .sm\\:justify-end{justify-content:flex-end}.embarkai-ui-scope :is(.sm\\:space-x-2>:not([hidden])~:not([hidden])){--tw-space-x-reverse:0;margin-right:calc(.5rem*var(--tw-space-x-reverse));margin-left:calc(.5rem*(1 - var(--tw-space-x-reverse)))}.embarkai-ui-scope .sm\\:text-left{text-align:left}}@media (min-width:768px){.embarkai-ui-scope .md\\:h-8{height:2rem}.embarkai-ui-scope .md\\:w-8{width:2rem}.embarkai-ui-scope .md\\:gap-\\[var\\(--ui-kit-gap\\)\\]{gap:var(--ui-kit-gap)}.embarkai-ui-scope .md\\:py-1{padding-top:.25rem;padding-bottom:.25rem}}.embarkai-ui-scope :is(.\\[\\&_svg\\:not\\(\\[class\\*\\=\\'size-\\'\\]\\)\\]\\:size-4 svg:not([class*=size-])){width:1rem;height:1rem}.embarkai-ui-scope :is(.\\[\\&_svg\\]\\:pointer-events-none svg){pointer-events:none}.embarkai-ui-scope :is(.\\[\\&_svg\\]\\:shrink-0 svg){flex-shrink:0}`;
|
|
28694
28710
|
|
|
28695
28711
|
// src/index.ts
|
|
28696
|
-
var
|
|
28712
|
+
var import_core10 = require("@embarkai/core");
|
|
28697
28713
|
init_ProviderContext();
|
|
28698
28714
|
|
|
28699
28715
|
// src/components/ConnectWalletButton.tsx
|
package/dist/index.d.cts
CHANGED
package/dist/index.d.ts
CHANGED
package/dist/index.js
CHANGED
|
@@ -962,11 +962,12 @@ async function getAssetRate(symbol, asSymbol) {
|
|
|
962
962
|
});
|
|
963
963
|
}
|
|
964
964
|
function useAssetUsdtRate(assetSymbol, options) {
|
|
965
|
-
const { refetchInterval, staleTime } = options || {};
|
|
965
|
+
const { disabled, refetchInterval, staleTime } = options || {};
|
|
966
966
|
const address = useSession((st) => st.address);
|
|
967
967
|
return useQuery({
|
|
968
968
|
queryKey: [ASSET_RATE_QUERY_KEY, address, assetSymbol],
|
|
969
|
-
enabled: !!address && !!assetSymbol,
|
|
969
|
+
enabled: !disabled && !!address && !!assetSymbol,
|
|
970
|
+
// && !isProjectAsset && !isNft && !isSecurity
|
|
970
971
|
refetchInterval: refetchInterval || BALANCE_POLLING_INTERVAL * 2,
|
|
971
972
|
staleTime: staleTime || BALANCE_POLLING_INTERVAL * 2,
|
|
972
973
|
// keeps the data fresh for 1 minute before considering it stale
|
|
@@ -983,34 +984,37 @@ var init_useAssetRate = __esm({
|
|
|
983
984
|
});
|
|
984
985
|
|
|
985
986
|
// src/internal/components/BalanceFeedProvider/BalanceFeedProvider.tsx
|
|
987
|
+
import {
|
|
988
|
+
createBlockscoutClient
|
|
989
|
+
} from "@embarkai/core";
|
|
986
990
|
import { NON_BLOCKSCOUT_CORE_TOKENS } from "@embarkai/core/read";
|
|
987
991
|
import { useQuery as useQuery2 } from "@tanstack/react-query";
|
|
988
992
|
import { useEffect, useState } from "react";
|
|
989
993
|
import { erc20Abi, formatUnits } from "viem";
|
|
990
994
|
function BalanceFeedProvider() {
|
|
991
995
|
const config = useProviderConfig().config;
|
|
992
|
-
const
|
|
996
|
+
const embarkaiAddress = useSession((st) => st.address);
|
|
993
997
|
const chainConfig = useSession((st) => st.chainConfig);
|
|
994
998
|
const publicClient = useSession((st) => st.publicClient);
|
|
995
999
|
const [balanceSymbol, setBalanceSymbol] = useState(null);
|
|
996
1000
|
useEffect(
|
|
997
1001
|
() => setBalanceSymbol(config?.current?.showBalanceAs || chainConfig.nativeCurrency.symbol),
|
|
998
|
-
[config,
|
|
1002
|
+
[config, embarkaiAddress, chainConfig]
|
|
999
1003
|
);
|
|
1000
1004
|
useEffect(
|
|
1001
1005
|
() => useLayoutDataStore.getState().setCryptoSymbol(chainConfig?.nativeCurrency?.symbol || "LUMIA"),
|
|
1002
|
-
[chainConfig]
|
|
1006
|
+
[embarkaiAddress, chainConfig]
|
|
1003
1007
|
);
|
|
1004
1008
|
const { data: cryptoRate } = useAssetUsdtRate(balanceSymbol);
|
|
1005
1009
|
const isNativeBalanceFeedEnabled = !!balanceSymbol && !!chainConfig?.nativeCurrency.symbol && balanceSymbol === chainConfig?.nativeCurrency.symbol;
|
|
1006
1010
|
const { data: nativeBalance } = useQuery2({
|
|
1007
|
-
enabled: !!isNativeBalanceFeedEnabled && !!
|
|
1011
|
+
enabled: !!isNativeBalanceFeedEnabled && !!embarkaiAddress && !!publicClient,
|
|
1008
1012
|
retry: false,
|
|
1009
1013
|
refetchInterval: BALANCE_POLLING_INTERVAL,
|
|
1010
|
-
queryKey: [NATIVE_BALANCE_QUERY_KEY,
|
|
1014
|
+
queryKey: [NATIVE_BALANCE_QUERY_KEY, embarkaiAddress, chainConfig?.nativeCurrency?.symbol],
|
|
1011
1015
|
// Include chainId in query key to refetch when chain changes
|
|
1012
1016
|
queryFn: async () => {
|
|
1013
|
-
const balanceValue = await publicClient.getBalance({ address });
|
|
1017
|
+
const balanceValue = await publicClient.getBalance({ address: embarkaiAddress });
|
|
1014
1018
|
return {
|
|
1015
1019
|
decimals: chainConfig?.nativeCurrency?.decimals || 18,
|
|
1016
1020
|
formatted: formatUnits(balanceValue, chainConfig?.nativeCurrency?.decimals || 18),
|
|
@@ -1040,7 +1044,7 @@ function BalanceFeedProvider() {
|
|
|
1040
1044
|
const { data: projectAssetBalance } = useQuery2({
|
|
1041
1045
|
retry: false,
|
|
1042
1046
|
refetchInterval: BALANCE_POLLING_INTERVAL,
|
|
1043
|
-
enabled: !!
|
|
1047
|
+
enabled: !!embarkaiAddress && !!isProjectAssetBalanceEnabled,
|
|
1044
1048
|
queryKey: PROJECT_ASSET_BALANCE_QUERY_KEY,
|
|
1045
1049
|
// should be invalidated by host app via provided queryKey
|
|
1046
1050
|
queryFn: async () => await projectAssetBalanceQueryFn?.()
|
|
@@ -1062,20 +1066,33 @@ function BalanceFeedProvider() {
|
|
|
1062
1066
|
}, [isProjectAssetBalanceEnabled, projectAssetBalance]);
|
|
1063
1067
|
const isCustomAssetBalanceEnabled = !isNativeBalanceFeedEnabled && !isProjectAssetBalanceEnabled;
|
|
1064
1068
|
const { data: customBalance } = useQuery2({
|
|
1065
|
-
enabled: !!isCustomAssetBalanceEnabled && !!balanceSymbol && !!chainConfig?.id && !!
|
|
1069
|
+
enabled: !!isCustomAssetBalanceEnabled && !!balanceSymbol && !!chainConfig?.id && !!embarkaiAddress && !!publicClient,
|
|
1066
1070
|
retry: false,
|
|
1067
1071
|
refetchInterval: BALANCE_POLLING_INTERVAL,
|
|
1068
1072
|
// staleTime: 0,
|
|
1069
|
-
queryKey: [CUSTOM_BALANCE_QUERY_KEY, chainConfig?.id,
|
|
1073
|
+
queryKey: [CUSTOM_BALANCE_QUERY_KEY, chainConfig?.id, embarkaiAddress, balanceSymbol],
|
|
1070
1074
|
// Include chainId in query key to refetch when chain changes
|
|
1071
1075
|
queryFn: async () => {
|
|
1072
|
-
const
|
|
1076
|
+
const blockscoutApiUrl = getBlockscoutApiUrl(chainConfig);
|
|
1073
1077
|
const watchTokensList = (config?.current?.watchTokens?.[chainConfig?.id] || []).map((el) => ({
|
|
1074
1078
|
address: el.address,
|
|
1075
1079
|
decimals: el.decimals,
|
|
1076
1080
|
symbol: el.symbol
|
|
1077
1081
|
}));
|
|
1078
|
-
const customAssetList = [
|
|
1082
|
+
const customAssetList = [];
|
|
1083
|
+
if (blockscoutApiUrl) {
|
|
1084
|
+
const blockscoutClient = createBlockscoutClient({ baseUrl: blockscoutApiUrl });
|
|
1085
|
+
const blockscoutTokens = await blockscoutClient.getTokenBalances(embarkaiAddress);
|
|
1086
|
+
const blockscoutAssets = blockscoutTokens.map((el) => ({
|
|
1087
|
+
address: el.token.address_hash,
|
|
1088
|
+
decimals: Number(el.token.decimals),
|
|
1089
|
+
symbol: el.token.symbol
|
|
1090
|
+
}));
|
|
1091
|
+
customAssetList.push(...watchTokensList, ...blockscoutAssets);
|
|
1092
|
+
} else {
|
|
1093
|
+
const coreTokenList = NON_BLOCKSCOUT_CORE_TOKENS[chainConfig?.id] || [];
|
|
1094
|
+
customAssetList.push(...watchTokensList, ...coreTokenList);
|
|
1095
|
+
}
|
|
1079
1096
|
const { address: customAssetAddress, decimals: customAssetADecimals } = customAssetList.find((el) => el.symbol === balanceSymbol) || {};
|
|
1080
1097
|
if (!customAssetAddress) {
|
|
1081
1098
|
console.warn(`[BALANCE FEED] No token address found for symbol ${balanceSymbol} on chain ${chainConfig?.name}`);
|
|
@@ -1085,7 +1102,7 @@ function BalanceFeedProvider() {
|
|
|
1085
1102
|
address: customAssetAddress,
|
|
1086
1103
|
abi: erc20Abi,
|
|
1087
1104
|
functionName: "balanceOf",
|
|
1088
|
-
args: [
|
|
1105
|
+
args: [embarkaiAddress],
|
|
1089
1106
|
authorizationList: void 0
|
|
1090
1107
|
});
|
|
1091
1108
|
return {
|
|
@@ -1111,6 +1128,7 @@ function BalanceFeedProvider() {
|
|
|
1111
1128
|
}
|
|
1112
1129
|
var init_BalanceFeedProvider = __esm({
|
|
1113
1130
|
"src/internal/components/BalanceFeedProvider/BalanceFeedProvider.tsx"() {
|
|
1131
|
+
init_initial();
|
|
1114
1132
|
init_ProviderContext();
|
|
1115
1133
|
init_SessionContext();
|
|
1116
1134
|
init_useLayoutDataStore();
|
|
@@ -17806,7 +17824,7 @@ var init_utils8 = __esm({
|
|
|
17806
17824
|
});
|
|
17807
17825
|
|
|
17808
17826
|
// src/internal/hooks/useBlockscoutAssets/useBlockscoutAssets.ts
|
|
17809
|
-
import { createBlockscoutClient, nonBlockscoutClient } from "@embarkai/core
|
|
17827
|
+
import { createBlockscoutClient as createBlockscoutClient2, nonBlockscoutClient } from "@embarkai/core";
|
|
17810
17828
|
import { useQuery as useQuery16, useQueryClient as useQueryClient19 } from "@tanstack/react-query";
|
|
17811
17829
|
import { useCallback as useCallback23, useMemo as useMemo10, useRef as useRef15 } from "react";
|
|
17812
17830
|
function useBlockscoutAssets(options) {
|
|
@@ -17820,7 +17838,7 @@ function useBlockscoutAssets(options) {
|
|
|
17820
17838
|
} = useProviderConfig().config?.current?.portfolio || {};
|
|
17821
17839
|
const blockscoutApiUrl = getBlockscoutApiUrl(chainConfig);
|
|
17822
17840
|
const blockscoutClient = useMemo10(
|
|
17823
|
-
() => blockscoutApiUrl ?
|
|
17841
|
+
() => blockscoutApiUrl ? createBlockscoutClient2({ baseUrl: blockscoutApiUrl }) : null,
|
|
17824
17842
|
[blockscoutApiUrl]
|
|
17825
17843
|
);
|
|
17826
17844
|
const lastRefreshRef = useRef15(0);
|
|
@@ -24536,7 +24554,7 @@ var init_package = __esm({
|
|
|
24536
24554
|
"package.json"() {
|
|
24537
24555
|
package_default = {
|
|
24538
24556
|
name: "@embarkai/ui-kit",
|
|
24539
|
-
version: "0.4.
|
|
24557
|
+
version: "0.4.67",
|
|
24540
24558
|
description: "React UI components and hooks for EmbarkAI authentication and Account Abstraction",
|
|
24541
24559
|
type: "module",
|
|
24542
24560
|
main: "./dist/index.cjs",
|