@embarkai/ui-kit 0.4.79 → 0.4.80
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 +203 -139
- package/dist/index.d.cts +28 -6
- package/dist/index.d.ts +28 -6
- package/dist/index.js +254 -191
- package/dist/styles.css +1 -1
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -183,7 +183,8 @@ var init_initial = __esm({
|
|
|
183
183
|
requestDeduplication: true,
|
|
184
184
|
kycNeeded: false,
|
|
185
185
|
displayNameNeeded: false,
|
|
186
|
-
showActiveBalanceAsFiat: false
|
|
186
|
+
showActiveBalanceAsFiat: false,
|
|
187
|
+
showAssetBridge: false
|
|
187
188
|
},
|
|
188
189
|
warnings: {
|
|
189
190
|
backupWarning: true,
|
|
@@ -5744,9 +5745,13 @@ var init_en = __esm({
|
|
|
5744
5745
|
},
|
|
5745
5746
|
receiveMenu: {
|
|
5746
5747
|
title: "Receive Asset",
|
|
5747
|
-
|
|
5748
|
+
scanQR: "Scan QR code with your address to receive asset",
|
|
5749
|
+
share: {
|
|
5750
|
+
nickname: "Share your nickname to receive assets",
|
|
5751
|
+
address: "Share your address to receive assets",
|
|
5752
|
+
identity: "Share this to verify your identity"
|
|
5753
|
+
},
|
|
5748
5754
|
warning: "Ensure sender is on the same network",
|
|
5749
|
-
share: "Share this address to receive tokens",
|
|
5750
5755
|
onboarding: {
|
|
5751
5756
|
receiveMenu: {
|
|
5752
5757
|
title: "Receive Menu",
|
|
@@ -6288,9 +6293,13 @@ var init_ru = __esm({
|
|
|
6288
6293
|
},
|
|
6289
6294
|
receiveMenu: {
|
|
6290
6295
|
title: "\u041F\u043E\u043B\u0443\u0447\u0438\u0442\u044C \u0430\u043A\u0442\u0438\u0432",
|
|
6291
|
-
|
|
6296
|
+
scanQR: "\u0421\u043A\u0430\u043D\u0438\u0440\u0443\u0439\u0442\u0435 QR-\u043A\u043E\u0434 \u0441 \u0432\u0430\u0448\u0438\u043C \u0430\u0434\u0440\u0435\u0441\u043E\u043C, \u0447\u0442\u043E\u0431\u044B \u043F\u043E\u043B\u0443\u0447\u0438\u0442\u044C \u0430\u043A\u0442\u0438\u0432",
|
|
6297
|
+
share: {
|
|
6298
|
+
nickname: "\u041F\u043E\u0434\u0435\u043B\u0438\u0442\u0435\u0441\u044C \u0441\u0432\u043E\u0438\u043C \u043D\u0438\u043A\u043D\u0435\u0439\u043C\u043E\u043C, \u0447\u0442\u043E\u0431\u044B \u043F\u043E\u043B\u0443\u0447\u0438\u0442\u044C \u0430\u043A\u0442\u0438\u0432\u044B",
|
|
6299
|
+
address: "\u041F\u043E\u0434\u0435\u043B\u0438\u0442\u0435\u0441\u044C \u0441\u0432\u043E\u0438\u043C \u0430\u0434\u0440\u0435\u0441\u043E\u043C, \u0447\u0442\u043E\u0431\u044B \u043F\u043E\u043B\u0443\u0447\u0438\u0442\u044C \u0430\u043A\u0442\u0438\u0432\u044B",
|
|
6300
|
+
identity: "\u041F\u043E\u0434\u0435\u043B\u0438\u0442\u0435\u0441\u044C \u044D\u0442\u0438\u043C, \u0447\u0442\u043E\u0431\u044B \u043F\u043E\u0434\u0442\u0432\u0435\u0440\u0434\u0438\u0442\u044C \u0441\u0432\u043E\u044E \u043B\u0438\u0447\u043D\u043E\u0441\u0442\u044C"
|
|
6301
|
+
},
|
|
6292
6302
|
warning: "\u0423\u0431\u0435\u0434\u0438\u0442\u0435\u0441\u044C, \u0447\u0442\u043E \u043E\u0442\u043F\u0440\u0430\u0432\u0438\u0442\u0435\u043B\u044C \u043D\u0430\u0445\u043E\u0434\u0438\u0442\u0441\u044F \u0432 \u0442\u043E\u0439 \u0436\u0435 \u0441\u0435\u0442\u0438",
|
|
6293
|
-
share: "\u041F\u043E\u0434\u0435\u043B\u0438\u0442\u0435\u0441\u044C \u044D\u0442\u0438\u043C \u0430\u0434\u0440\u0435\u0441\u043E\u043C, \u0447\u0442\u043E\u0431\u044B \u043F\u043E\u043B\u0443\u0447\u0438\u0442\u044C \u0442\u043E\u043A\u0435\u043D\u044B",
|
|
6294
6303
|
onboarding: {
|
|
6295
6304
|
receiveMenu: {
|
|
6296
6305
|
title: "\u041C\u0435\u043D\u044E \u043F\u043E\u043B\u0443\u0447\u0435\u043D\u0438\u044F",
|
|
@@ -6832,9 +6841,13 @@ var init_zh = __esm({
|
|
|
6832
6841
|
},
|
|
6833
6842
|
receiveMenu: {
|
|
6834
6843
|
title: "\u63A5\u6536\u8D44\u4EA7",
|
|
6835
|
-
|
|
6844
|
+
scanQR: "\u4F7F\u7528\u60A8\u7684\u5730\u5740\u626B\u63CF\u4E8C\u7EF4\u7801\u4EE5\u63A5\u6536\u8D44\u4EA7",
|
|
6845
|
+
share: {
|
|
6846
|
+
nickname: "\u5206\u4EAB\u60A8\u7684\u6635\u79F0\u4EE5\u63A5\u6536\u8D44\u4EA7",
|
|
6847
|
+
address: "\u5206\u4EAB\u60A8\u7684\u5730\u5740\u4EE5\u63A5\u6536\u8D44\u4EA7",
|
|
6848
|
+
identity: "\u5206\u4EAB\u6B64\u4FE1\u606F\u4EE5\u9A8C\u8BC1\u60A8\u7684\u8EAB\u4EFD"
|
|
6849
|
+
},
|
|
6836
6850
|
warning: "\u786E\u4FDD\u53D1\u9001\u65B9\u4E0E\u60A8\u5728\u540C\u4E00\u7F51\u7EDC\u4E0A",
|
|
6837
|
-
share: "\u5206\u4EAB\u6B64\u5730\u5740\u4EE5\u63A5\u6536\u4EE3\u5E01",
|
|
6838
6851
|
onboarding: {
|
|
6839
6852
|
receiveMenu: {
|
|
6840
6853
|
title: "\u63A5\u6536\u83DC\u5355",
|
|
@@ -19905,21 +19918,26 @@ var init_onboarding_setup7 = __esm({
|
|
|
19905
19918
|
});
|
|
19906
19919
|
|
|
19907
19920
|
// src/internal/components/ReceiveMenu/ReceiveMenu.tsx
|
|
19908
|
-
import {
|
|
19921
|
+
import { useQuery as useQuery18 } from "@tanstack/react-query";
|
|
19922
|
+
import { ArrowLeft as ArrowLeft17, AtSignIcon as AtSignIcon2, CheckCircle2 as CheckCircle23, Copy as Copy2, FingerprintIcon, LoaderIcon as LoaderIcon10, Wallet2Icon } from "lucide-react";
|
|
19909
19923
|
import QRCode from "qrcode";
|
|
19910
|
-
import {
|
|
19924
|
+
import { useEffect as useEffect36, useMemo as useMemo12, useState as useState21 } from "react";
|
|
19911
19925
|
import { Fragment as Fragment31, jsx as jsx86, jsxs as jsxs80 } from "react/jsx-runtime";
|
|
19912
19926
|
function ReceiveMenu() {
|
|
19927
|
+
const { t } = useT();
|
|
19913
19928
|
const session = useSession((st) => st.session);
|
|
19914
|
-
const address = session?.smartAccountAddress ?? null;
|
|
19915
|
-
const page = useLayoutDataStore((st) => st.page);
|
|
19916
|
-
const setPage = useLayoutDataStore((st) => st.setPage);
|
|
19917
19929
|
const chainConfig = useSession((st) => st.chainConfig);
|
|
19918
|
-
const
|
|
19930
|
+
const address = session?.smartAccountAddress ?? null;
|
|
19931
|
+
const { data: nicknameInfo, isLoading: isNicknameInfoLoading } = useQuery18({
|
|
19932
|
+
retry: 1,
|
|
19933
|
+
enabled: !!address,
|
|
19934
|
+
queryKey: [QUERY_KEYS.nicknameInfo, address],
|
|
19935
|
+
queryFn: async () => await getNicknameInfo()
|
|
19936
|
+
});
|
|
19919
19937
|
const maxScrollHeight = useLayoutStore((st) => st.maxScrollHeight);
|
|
19920
|
-
const open = page === "receive";
|
|
19921
19938
|
const [qrCodeUrl, setQrCodeUrl] = useState21("");
|
|
19922
|
-
const [
|
|
19939
|
+
const [isAddressCopied, setAddressCopied] = useState21(false);
|
|
19940
|
+
const [isNicknameCopied, setNicknameCopied] = useState21(false);
|
|
19923
19941
|
const [fingerprintCopied, setFingerprintCopied] = useState21(false);
|
|
19924
19942
|
useOnboardingTourAvailable(true);
|
|
19925
19943
|
const fingerprint = useMemo12(() => {
|
|
@@ -19931,38 +19949,13 @@ function ReceiveMenu() {
|
|
|
19931
19949
|
}
|
|
19932
19950
|
}, [session?.ownerAddress]);
|
|
19933
19951
|
useEffect36(() => {
|
|
19934
|
-
if (open && address) {
|
|
19935
|
-
QRCode.toDataURL(address, {
|
|
19936
|
-
width: 200,
|
|
19937
|
-
margin: 1,
|
|
19938
|
-
color: { dark: "#000000", light: "#ffffff" }
|
|
19939
|
-
}).then((url) => {
|
|
19940
|
-
setQrCodeUrl(url);
|
|
19941
|
-
}).catch((err) => {
|
|
19942
|
-
console.error("Failed to generate QR code:", err);
|
|
19943
|
-
});
|
|
19944
|
-
}
|
|
19945
|
-
}, [open, address]);
|
|
19946
|
-
const handleCopy = useCallback25(async () => {
|
|
19947
19952
|
if (!address) return;
|
|
19948
|
-
|
|
19949
|
-
|
|
19950
|
-
|
|
19951
|
-
|
|
19952
|
-
} catch (
|
|
19953
|
-
console.error("Failed to copy address:", error);
|
|
19954
|
-
}
|
|
19953
|
+
QRCode.toDataURL(address, {
|
|
19954
|
+
width: 200,
|
|
19955
|
+
margin: 1,
|
|
19956
|
+
color: { dark: "#000000", light: "#ffffff" }
|
|
19957
|
+
}).then((url) => setQrCodeUrl(url)).catch((err) => console.error("Failed to generate QR code:", err));
|
|
19955
19958
|
}, [address]);
|
|
19956
|
-
const handleCopyFingerprint = useCallback25(async () => {
|
|
19957
|
-
if (!fingerprint) return;
|
|
19958
|
-
try {
|
|
19959
|
-
await navigator.clipboard.writeText(fingerprint);
|
|
19960
|
-
setFingerprintCopied(true);
|
|
19961
|
-
setTimeout(() => setFingerprintCopied(false), 2e3);
|
|
19962
|
-
} catch (error) {
|
|
19963
|
-
console.error("Failed to copy fingerprint:", error);
|
|
19964
|
-
}
|
|
19965
|
-
}, [fingerprint]);
|
|
19966
19959
|
return /* @__PURE__ */ jsxs80(
|
|
19967
19960
|
"div",
|
|
19968
19961
|
{
|
|
@@ -19974,43 +19967,97 @@ function ReceiveMenu() {
|
|
|
19974
19967
|
className: "list-scrollbar-y w-full p-[var(--ui-kit-pd)] flex flex-col gap-[var(--ui-kit-gap)]",
|
|
19975
19968
|
children: [
|
|
19976
19969
|
/* @__PURE__ */ jsxs80("div", { className: "w-full flex items-center gap-[var(--ui-kit-gap)]", children: [
|
|
19977
|
-
/* @__PURE__ */ jsx86(
|
|
19970
|
+
/* @__PURE__ */ jsx86(
|
|
19971
|
+
Button,
|
|
19972
|
+
{
|
|
19973
|
+
variant: "ghost",
|
|
19974
|
+
size: "icon",
|
|
19975
|
+
title: "Back",
|
|
19976
|
+
onClick: () => useLayoutDataStore.getState().setPage("main-menu" /* MAIN_MENU */),
|
|
19977
|
+
children: /* @__PURE__ */ jsx86(ArrowLeft17, { className: "h-4 w-4" })
|
|
19978
|
+
}
|
|
19979
|
+
),
|
|
19978
19980
|
/* @__PURE__ */ jsx86("span", { className: "text-xl font-semibold", children: t("passport:receiveMenu.title") })
|
|
19979
19981
|
] }),
|
|
19982
|
+
/* @__PURE__ */ jsx86("span", { className: "text-xs text-[var(--ui-kit-fg-muted)]", children: t("passport:receiveMenu.scanQR") }),
|
|
19980
19983
|
/* @__PURE__ */ jsxs80(Highlight, { className: "text-center", type: "warning", children: [
|
|
19981
19984
|
/* @__PURE__ */ jsx86("strong", { className: "block w-full", children: `${t("passport:common.network")}: ${chainConfig.name}` }),
|
|
19982
19985
|
/* @__PURE__ */ jsx86("span", { className: "block w-full", children: t("passport:receiveMenu.warning") })
|
|
19983
19986
|
] }),
|
|
19984
|
-
/* @__PURE__ */ jsx86("div", { className: "flex items-center justify-center p-[var(--ui-kit-pd)]", style: { minHeight: "216px" }, children: qrCodeUrl
|
|
19985
|
-
|
|
19986
|
-
/* @__PURE__ */ jsx86(
|
|
19987
|
-
/* @__PURE__ */
|
|
19988
|
-
|
|
19989
|
-
/* @__PURE__ */ jsxs80("div", { className: "relative group", children: [
|
|
19990
|
-
/* @__PURE__ */ jsx86(Info4, { className: "w-3.5 h-3.5 text-[var(--ui-kit-fg-muted)] cursor-help" }),
|
|
19991
|
-
/* @__PURE__ */ jsx86("div", { className: "absolute bottom-full left-1/2 -translate-x-1/2 mb-2 px-2 py-1 text-xs bg-[var(--ui-kit-bg)] text-[var(--ui-kit-fg)] rounded shadow-lg opacity-0 group-hover:opacity-100 transition-opacity whitespace-nowrap pointer-events-none z-10", children: "Share this to verify your identity" })
|
|
19992
|
-
] }),
|
|
19993
|
-
/* @__PURE__ */ jsx86(
|
|
19994
|
-
"button",
|
|
19987
|
+
/* @__PURE__ */ jsx86("div", { className: "flex items-center justify-center p-[var(--ui-kit-pd)]", style: { minHeight: "216px" }, children: qrCodeUrl && /* @__PURE__ */ jsx86("img", { src: qrCodeUrl, alt: "Wallet QR Code", className: "w-48 h-48" }) }),
|
|
19988
|
+
/* @__PURE__ */ jsxs80("div", { className: "w-full", children: [
|
|
19989
|
+
/* @__PURE__ */ jsx86("span", { className: "block text-xs leading-6 text-[var(--ui-kit-fg-muted)]", children: t("passport:receiveMenu.share.address") }),
|
|
19990
|
+
/* @__PURE__ */ jsxs80(
|
|
19991
|
+
Button,
|
|
19995
19992
|
{
|
|
19996
|
-
|
|
19997
|
-
|
|
19998
|
-
|
|
19999
|
-
|
|
19993
|
+
title: "Copy address",
|
|
19994
|
+
variant: "outline",
|
|
19995
|
+
size: "medium",
|
|
19996
|
+
className: "w-full",
|
|
19997
|
+
onClick: () => {
|
|
19998
|
+
if (!address) return;
|
|
19999
|
+
navigator.clipboard.writeText(address);
|
|
20000
|
+
setAddressCopied(true);
|
|
20001
|
+
setTimeout(() => setAddressCopied(false), 2e3);
|
|
20002
|
+
},
|
|
20003
|
+
children: [
|
|
20004
|
+
/* @__PURE__ */ jsx86(Wallet2Icon, { className: "h-4 w-4 flex-none" }),
|
|
20005
|
+
/* @__PURE__ */ jsxs80("span", { className: cn("text-[10px] flex-1 block", { "text-[var(--ui-kit-bg-success)]": isAddressCopied }), children: [
|
|
20006
|
+
address.slice(0, 10),
|
|
20007
|
+
"...",
|
|
20008
|
+
address.slice(-6)
|
|
20009
|
+
] }),
|
|
20010
|
+
isAddressCopied ? /* @__PURE__ */ jsx86(CheckCircle23, { className: "h-4 w-4 text-[var(--ui-kit-bg-success)] flex-none" }) : /* @__PURE__ */ jsx86(Copy2, { className: "h-4 w-4 flex-none" })
|
|
20011
|
+
]
|
|
20000
20012
|
}
|
|
20001
20013
|
)
|
|
20002
20014
|
] }),
|
|
20003
|
-
/* @__PURE__ */ jsxs80(
|
|
20004
|
-
/* @__PURE__ */ jsx86("span", { className: "block
|
|
20005
|
-
/* @__PURE__ */ jsx86(
|
|
20006
|
-
|
|
20007
|
-
|
|
20008
|
-
|
|
20009
|
-
|
|
20010
|
-
|
|
20011
|
-
|
|
20015
|
+
/* @__PURE__ */ jsxs80("div", { className: "w-full", children: [
|
|
20016
|
+
/* @__PURE__ */ jsx86("span", { className: "block text-xs leading-6 text-[var(--ui-kit-fg-muted)]", children: t("passport:receiveMenu.share.nickname") }),
|
|
20017
|
+
/* @__PURE__ */ jsx86(
|
|
20018
|
+
Button,
|
|
20019
|
+
{
|
|
20020
|
+
title: "Copy nickname",
|
|
20021
|
+
variant: "outline",
|
|
20022
|
+
size: "medium",
|
|
20023
|
+
className: "w-full",
|
|
20024
|
+
onClick: () => {
|
|
20025
|
+
const nickname = nicknameInfo.handle;
|
|
20026
|
+
navigator.clipboard.writeText(nickname);
|
|
20027
|
+
setNicknameCopied(true);
|
|
20028
|
+
setTimeout(() => setNicknameCopied(false), 2e3);
|
|
20029
|
+
},
|
|
20030
|
+
children: isNicknameInfoLoading ? /* @__PURE__ */ jsx86("div", { className: "flex-1", children: /* @__PURE__ */ jsx86(LoaderIcon10, { className: "w-4 h-4 animate-spin" }) }) : /* @__PURE__ */ jsxs80(Fragment31, { children: [
|
|
20031
|
+
/* @__PURE__ */ jsx86(AtSignIcon2, { className: "h-4 w-4 flex-none" }),
|
|
20032
|
+
/* @__PURE__ */ jsx86("span", { className: cn("text-xs flex-1", { "text-[var(--ui-kit-bg-success)]": isNicknameCopied }), children: nicknameInfo.handle }),
|
|
20033
|
+
isNicknameCopied ? /* @__PURE__ */ jsx86(CheckCircle23, { className: "h-4 w-4 text-[var(--ui-kit-bg-success)] flex-none" }) : /* @__PURE__ */ jsx86(Copy2, { className: "h-4 w-4 flex-none" })
|
|
20034
|
+
] })
|
|
20035
|
+
}
|
|
20036
|
+
)
|
|
20012
20037
|
] }),
|
|
20013
|
-
/* @__PURE__ */
|
|
20038
|
+
fingerprint && /* @__PURE__ */ jsxs80("div", { className: "w-full", children: [
|
|
20039
|
+
/* @__PURE__ */ jsx86("span", { className: "block text-xs leading-6 text-[var(--ui-kit-fg-muted)]", children: t("passport:receiveMenu.share.identity") }),
|
|
20040
|
+
/* @__PURE__ */ jsxs80(
|
|
20041
|
+
Button,
|
|
20042
|
+
{
|
|
20043
|
+
title: "Copy fingerprint",
|
|
20044
|
+
variant: "outline",
|
|
20045
|
+
size: "medium",
|
|
20046
|
+
className: "w-full justify-between",
|
|
20047
|
+
onClick: () => {
|
|
20048
|
+
if (!fingerprint) return;
|
|
20049
|
+
navigator.clipboard.writeText(fingerprint);
|
|
20050
|
+
setFingerprintCopied(true);
|
|
20051
|
+
setTimeout(() => setFingerprintCopied(false), 2e3);
|
|
20052
|
+
},
|
|
20053
|
+
children: [
|
|
20054
|
+
/* @__PURE__ */ jsx86(FingerprintIcon, { className: "w-4 h-4 flex-none" }),
|
|
20055
|
+
/* @__PURE__ */ jsx86("span", { className: cn("text-xs font-bold flex-1", { "text-[var(--ui-kit-bg-success)]": fingerprintCopied }), children: fingerprint }),
|
|
20056
|
+
fingerprintCopied ? /* @__PURE__ */ jsx86(CheckCircle23, { className: "w-4 h-4 text-[var(--ui-kit-bg-success)] flex-none" }) : /* @__PURE__ */ jsx86(Copy2, { className: "w-4 h-4 flex-none" })
|
|
20057
|
+
]
|
|
20058
|
+
}
|
|
20059
|
+
)
|
|
20060
|
+
] })
|
|
20014
20061
|
]
|
|
20015
20062
|
}
|
|
20016
20063
|
);
|
|
@@ -20019,9 +20066,12 @@ var init_ReceiveMenu = __esm({
|
|
|
20019
20066
|
"src/internal/components/ReceiveMenu/ReceiveMenu.tsx"() {
|
|
20020
20067
|
init_SessionContext();
|
|
20021
20068
|
init_i18n();
|
|
20069
|
+
init_nickname();
|
|
20070
|
+
init_profile();
|
|
20022
20071
|
init_useLayoutDataStore();
|
|
20023
20072
|
init_useLayoutStore();
|
|
20024
20073
|
init_nickname_fingerprint();
|
|
20074
|
+
init_utils2();
|
|
20025
20075
|
init_Onboarding();
|
|
20026
20076
|
init_button();
|
|
20027
20077
|
init_highlight();
|
|
@@ -20115,11 +20165,11 @@ var init_constants7 = __esm({
|
|
|
20115
20165
|
});
|
|
20116
20166
|
|
|
20117
20167
|
// src/internal/components/SecurityMenu/ConnectedApps/useConnectedApps.ts
|
|
20118
|
-
import { useQuery as
|
|
20168
|
+
import { useQuery as useQuery19 } from "@tanstack/react-query";
|
|
20119
20169
|
function useConnectedApps() {
|
|
20120
20170
|
const session = useSession((st) => st.session);
|
|
20121
20171
|
const userId = session?.mpcUserId || null;
|
|
20122
|
-
return
|
|
20172
|
+
return useQuery19({
|
|
20123
20173
|
retry: false,
|
|
20124
20174
|
enabled: !!userId,
|
|
20125
20175
|
queryKey: [CONNECTED_TRUSTED_APPS_QUERY, userId],
|
|
@@ -20142,7 +20192,7 @@ var init_useConnectedApps = __esm({
|
|
|
20142
20192
|
|
|
20143
20193
|
// src/internal/components/SecurityMenu/ConnectedApps/ConnectedApps.tsx
|
|
20144
20194
|
import dayjs5 from "dayjs";
|
|
20145
|
-
import { AppWindowMac, ExternalLinkIcon as ExternalLinkIcon2, InfoIcon as InfoIcon4, LoaderIcon as
|
|
20195
|
+
import { AppWindowMac, ExternalLinkIcon as ExternalLinkIcon2, InfoIcon as InfoIcon4, LoaderIcon as LoaderIcon11, ShieldBanIcon, ShieldCheckIcon } from "lucide-react";
|
|
20146
20196
|
import { useEffect as useEffect37 } from "react";
|
|
20147
20197
|
import { Fragment as Fragment32, jsx as jsx87, jsxs as jsxs81 } from "react/jsx-runtime";
|
|
20148
20198
|
function Application(props) {
|
|
@@ -20263,7 +20313,7 @@ function ConnectedApps() {
|
|
|
20263
20313
|
return /* @__PURE__ */ jsxs81(Fragment32, { children: [
|
|
20264
20314
|
/* @__PURE__ */ jsxs81("div", { className: "flex items-center justify-between gap-[var(--ui-kit-gap)]", children: [
|
|
20265
20315
|
/* @__PURE__ */ jsx87("span", { className: "leading-4 text-xs", children: t("passport:securityMenu.connectedApps.connectedApps") }),
|
|
20266
|
-
isConnectedAppsLoading && /* @__PURE__ */ jsx87(
|
|
20316
|
+
isConnectedAppsLoading && /* @__PURE__ */ jsx87(LoaderIcon11, { className: "h-4 w-4 animate-spin" })
|
|
20267
20317
|
] }),
|
|
20268
20318
|
/* @__PURE__ */ jsx87(
|
|
20269
20319
|
"div",
|
|
@@ -20289,7 +20339,7 @@ var init_ConnectedApps = __esm({
|
|
|
20289
20339
|
|
|
20290
20340
|
// src/internal/components/SecurityMenu/ConnectedApps/UntrustApplication.tsx
|
|
20291
20341
|
import { useMutation as useMutation18, useQueryClient as useQueryClient21 } from "@tanstack/react-query";
|
|
20292
|
-
import { AppWindowMac as AppWindowMac2, Loader as
|
|
20342
|
+
import { AppWindowMac as AppWindowMac2, Loader as Loader17 } from "lucide-react";
|
|
20293
20343
|
import { jsx as jsx88, jsxs as jsxs82 } from "react/jsx-runtime";
|
|
20294
20344
|
function UntrustApplication() {
|
|
20295
20345
|
const { t } = useT();
|
|
@@ -20366,7 +20416,7 @@ function UntrustApplication() {
|
|
|
20366
20416
|
className: "flex-1",
|
|
20367
20417
|
onClick: () => handleUntrustApp(),
|
|
20368
20418
|
disabled: isUntrustingApp,
|
|
20369
|
-
children: isUntrustingApp ? /* @__PURE__ */ jsx88(
|
|
20419
|
+
children: isUntrustingApp ? /* @__PURE__ */ jsx88(Loader17, { className: "h-4 w-4 animate-spin" }) : t("passport:common.delete")
|
|
20370
20420
|
}
|
|
20371
20421
|
)
|
|
20372
20422
|
] })
|
|
@@ -20394,7 +20444,7 @@ var init_ConnectedApps2 = __esm({
|
|
|
20394
20444
|
});
|
|
20395
20445
|
|
|
20396
20446
|
// src/internal/components/SecurityMenu/Keyshare/KeyshareStatus.tsx
|
|
20397
|
-
import { Loader as
|
|
20447
|
+
import { Loader as Loader18 } from "lucide-react";
|
|
20398
20448
|
import { forwardRef as forwardRef5 } from "react";
|
|
20399
20449
|
import { jsx as jsx89, jsxs as jsxs83 } from "react/jsx-runtime";
|
|
20400
20450
|
var KeyshareStatus;
|
|
@@ -20403,7 +20453,7 @@ var init_KeyshareStatus = __esm({
|
|
|
20403
20453
|
init_utils2();
|
|
20404
20454
|
KeyshareStatus = forwardRef5((props, ref) => {
|
|
20405
20455
|
const { isLoading, content, icon: Icon2, children } = props;
|
|
20406
|
-
if (isLoading) return /* @__PURE__ */ jsx89(
|
|
20456
|
+
if (isLoading) return /* @__PURE__ */ jsx89(Loader18, { className: "w-4 h-4 animate-spin" });
|
|
20407
20457
|
return /* @__PURE__ */ jsxs83("div", { ref, className: "group relative w-full h-full", children: [
|
|
20408
20458
|
children,
|
|
20409
20459
|
/* @__PURE__ */ jsx89(
|
|
@@ -20501,11 +20551,11 @@ var init_LastBackup = __esm({
|
|
|
20501
20551
|
});
|
|
20502
20552
|
|
|
20503
20553
|
// src/internal/components/SecurityMenu/Keyshare/useKeyshareRecoveryStats.ts
|
|
20504
|
-
import { useQuery as
|
|
20554
|
+
import { useQuery as useQuery20 } from "@tanstack/react-query";
|
|
20505
20555
|
function useKeyshareRecoveryStats() {
|
|
20506
20556
|
const session = useSession((st) => st.session);
|
|
20507
20557
|
const userId = session?.mpcUserId || null;
|
|
20508
|
-
return
|
|
20558
|
+
return useQuery20({
|
|
20509
20559
|
enabled: !!userId,
|
|
20510
20560
|
queryKey: [KEYSHARE_RECOVERY_STATS_QUERY, userId],
|
|
20511
20561
|
queryFn: async () => {
|
|
@@ -20533,7 +20583,7 @@ var init_useKeyshareRecoveryStats = __esm({
|
|
|
20533
20583
|
});
|
|
20534
20584
|
|
|
20535
20585
|
// src/internal/components/SecurityMenu/Keyshare/Keyshare.tsx
|
|
20536
|
-
import { Cloud as Cloud3, DatabaseBackupIcon, Laptop, LoaderIcon as
|
|
20586
|
+
import { Cloud as Cloud3, DatabaseBackupIcon, Laptop, LoaderIcon as LoaderIcon12, Server as Server2 } from "lucide-react";
|
|
20537
20587
|
import { useEffect as useEffect38 } from "react";
|
|
20538
20588
|
import { Fragment as Fragment34, jsx as jsx91, jsxs as jsxs85 } from "react/jsx-runtime";
|
|
20539
20589
|
function Keyshare() {
|
|
@@ -20552,7 +20602,7 @@ function Keyshare() {
|
|
|
20552
20602
|
return /* @__PURE__ */ jsxs85(Fragment34, { children: [
|
|
20553
20603
|
/* @__PURE__ */ jsxs85("div", { className: "flex items-center justify-between gap-[var(--ui-kit-gap)]", children: [
|
|
20554
20604
|
/* @__PURE__ */ jsx91("span", { className: "text-xs leading-4", children: t("passport:securityMenu.keyshareStatus.title") }),
|
|
20555
|
-
isRecoveryLoading && /* @__PURE__ */ jsx91(
|
|
20605
|
+
isRecoveryLoading && /* @__PURE__ */ jsx91(LoaderIcon12, { className: "h-4 w-4 animate-spin" })
|
|
20556
20606
|
] }),
|
|
20557
20607
|
!isRecoveryLoading && /* @__PURE__ */ jsxs85(Fragment34, { children: [
|
|
20558
20608
|
/* @__PURE__ */ jsxs85(
|
|
@@ -21223,7 +21273,7 @@ var init_metamask = __esm({
|
|
|
21223
21273
|
});
|
|
21224
21274
|
|
|
21225
21275
|
// src/internal/assets/wallets/index.ts
|
|
21226
|
-
import { Wallet2Icon } from "lucide-react";
|
|
21276
|
+
import { Wallet2Icon as Wallet2Icon2 } from "lucide-react";
|
|
21227
21277
|
var WALLET_ICONS;
|
|
21228
21278
|
var init_wallets = __esm({
|
|
21229
21279
|
"src/internal/assets/wallets/index.ts"() {
|
|
@@ -21232,7 +21282,7 @@ var init_wallets = __esm({
|
|
|
21232
21282
|
WALLET_ICONS = {
|
|
21233
21283
|
metamask: metamask_default,
|
|
21234
21284
|
embarkai: embarkAI_default2,
|
|
21235
|
-
default:
|
|
21285
|
+
default: Wallet2Icon2
|
|
21236
21286
|
};
|
|
21237
21287
|
}
|
|
21238
21288
|
});
|
|
@@ -21611,7 +21661,7 @@ var init_utils9 = __esm({
|
|
|
21611
21661
|
// src/internal/components/SendMenu/hyperbridge/hooks/useHyperlaneHistory.ts
|
|
21612
21662
|
import { useInfiniteQuery as useInfiniteQuery3 } from "@tanstack/react-query";
|
|
21613
21663
|
import { debounce as debounce7 } from "lodash-es";
|
|
21614
|
-
import { useCallback as
|
|
21664
|
+
import { useCallback as useCallback25, useEffect as useEffect41, useMemo as useMemo13 } from "react";
|
|
21615
21665
|
function useHyperlaneHistory() {
|
|
21616
21666
|
const address = useSession((st) => st.address);
|
|
21617
21667
|
const page = useLayoutDataStore((st) => st.page);
|
|
@@ -21631,7 +21681,7 @@ function useHyperlaneHistory() {
|
|
|
21631
21681
|
() => txHistoryData?.pages?.map((p) => p.data).flat(Infinity) || [],
|
|
21632
21682
|
[txHistoryData]
|
|
21633
21683
|
);
|
|
21634
|
-
const updateExpandable =
|
|
21684
|
+
const updateExpandable = useCallback25(
|
|
21635
21685
|
debounce7(() => {
|
|
21636
21686
|
useFlowSelectorStore.getState().setRenderKey(`hyperlane-history-loaded-${Date.now()}`);
|
|
21637
21687
|
}, 250),
|
|
@@ -21673,7 +21723,7 @@ var init_useOperationHashesStore = __esm({
|
|
|
21673
21723
|
|
|
21674
21724
|
// src/internal/components/SendMenu/hyperbridge/hooks/useBridge.ts
|
|
21675
21725
|
import { useMutation as useMutation20, useQueryClient as useQueryClient22 } from "@tanstack/react-query";
|
|
21676
|
-
import { useCallback as
|
|
21726
|
+
import { useCallback as useCallback26 } from "react";
|
|
21677
21727
|
import { useSwitchChain, useWalletClient } from "wagmi";
|
|
21678
21728
|
function useBridge() {
|
|
21679
21729
|
const qc = useQueryClient22();
|
|
@@ -21681,7 +21731,7 @@ function useBridge() {
|
|
|
21681
21731
|
const address = useSession((st) => st.address);
|
|
21682
21732
|
const { data: walletClient } = useWalletClient();
|
|
21683
21733
|
const { switchChainAsync } = useSwitchChain();
|
|
21684
|
-
const swapDirection =
|
|
21734
|
+
const swapDirection = useCallback26(() => {
|
|
21685
21735
|
const {
|
|
21686
21736
|
bridgeStep,
|
|
21687
21737
|
originChain,
|
|
@@ -21733,7 +21783,7 @@ function useBridge() {
|
|
|
21733
21783
|
useFlowSelectorStore.getState().setError(error instanceof Error ? error.message : String(error));
|
|
21734
21784
|
}
|
|
21735
21785
|
});
|
|
21736
|
-
const handleQuoteEstimation =
|
|
21786
|
+
const handleQuoteEstimation = useCallback26((amnt) => {
|
|
21737
21787
|
const { originChain, destinationChain, bridgeSender } = useBridgeStore.getState();
|
|
21738
21788
|
if (!amnt || !Number(amnt)) {
|
|
21739
21789
|
useBridgeStore.getState().setQuote(null);
|
|
@@ -21876,7 +21926,7 @@ var init_useBridge = __esm({
|
|
|
21876
21926
|
});
|
|
21877
21927
|
|
|
21878
21928
|
// src/internal/components/SendMenu/hyperbridge/hooks/useHyperlaneRoutes.ts
|
|
21879
|
-
import { useQuery as
|
|
21929
|
+
import { useQuery as useQuery21 } from "@tanstack/react-query";
|
|
21880
21930
|
import { useEffect as useEffect42 } from "react";
|
|
21881
21931
|
function useHyperlaneRoutes() {
|
|
21882
21932
|
const address = useSession((st) => st.address);
|
|
@@ -21887,7 +21937,7 @@ function useHyperlaneRoutes() {
|
|
|
21887
21937
|
data: hyperlaneWarpRoutes = [],
|
|
21888
21938
|
isLoading: isLoadingWarpRoutes,
|
|
21889
21939
|
error: errorWarpRoutes
|
|
21890
|
-
} =
|
|
21940
|
+
} = useQuery21({
|
|
21891
21941
|
retry: false,
|
|
21892
21942
|
enabled: !!address && page === "send" /* SEND */ && flow === "bridge",
|
|
21893
21943
|
queryKey: [HYPERLANE_WARP_ROUTES_QUERY_KEY, address],
|
|
@@ -22144,8 +22194,8 @@ var init_ResolveChainIcon = __esm({
|
|
|
22144
22194
|
|
|
22145
22195
|
// src/internal/components/SendMenu/hyperbridge/hooks/useBridgeBalance.ts
|
|
22146
22196
|
import { CHAINS_BROWSERS_TRANSPORTS as CHAINS_BROWSERS_TRANSPORTS2 } from "@embarkai/core";
|
|
22147
|
-
import { useQuery as
|
|
22148
|
-
import { useCallback as
|
|
22197
|
+
import { useQuery as useQuery22, useQueryClient as useQueryClient23 } from "@tanstack/react-query";
|
|
22198
|
+
import { useCallback as useCallback27, useEffect as useEffect44 } from "react";
|
|
22149
22199
|
import { createPublicClient as createPublicClient2, erc20Abi as erc20Abi3, formatUnits as formatUnits8, http as http3 } from "viem";
|
|
22150
22200
|
import { useSwitchChain as useSwitchChain2 } from "wagmi";
|
|
22151
22201
|
function useBridgeBalance(hyperlaneWarpRoutes) {
|
|
@@ -22177,7 +22227,7 @@ function useBridgeBalance(hyperlaneWarpRoutes) {
|
|
|
22177
22227
|
const embarkTokenBalanace = assets.find((a) => selectedWarpRoute?.symbol === checkWrapedTokenSymbol(a.symbol));
|
|
22178
22228
|
const originChainMeta = CHAINS_UI_META[originChain];
|
|
22179
22229
|
const isSelectedTokenNative = selectedWarpRoute?.symbol?.toUpperCase() === originChainMeta?.chain?.nativeCurrency?.symbol?.toUpperCase();
|
|
22180
|
-
const { data: externalBalanceData, isLoading: isExternalBalanceLoading } =
|
|
22230
|
+
const { data: externalBalanceData, isLoading: isExternalBalanceLoading } = useQuery22({
|
|
22181
22231
|
retry: false,
|
|
22182
22232
|
enabled: bridgeSender === "direct-wallet" && !isSelectedTokenNative && !!directWalletAddress && !!routeTokenAddress && !!originChain,
|
|
22183
22233
|
queryKey: [EXTERNAL_WALLET_BRIDGING_BALANCE_QUERY, originChain, directWalletAddress, routeTokenAddress],
|
|
@@ -22220,7 +22270,7 @@ function useBridgeBalance(hyperlaneWarpRoutes) {
|
|
|
22220
22270
|
return { value, decimals, symbol, formatted };
|
|
22221
22271
|
}
|
|
22222
22272
|
});
|
|
22223
|
-
const { data: externalNativeBalanceData, isLoading: isExternalNativeBalanceLoading } =
|
|
22273
|
+
const { data: externalNativeBalanceData, isLoading: isExternalNativeBalanceLoading } = useQuery22({
|
|
22224
22274
|
retry: false,
|
|
22225
22275
|
enabled: bridgeSender === "direct-wallet" && isSelectedTokenNative && !!directWalletAddress && !!originChain,
|
|
22226
22276
|
queryKey: [EXTERNAL_WALLET_BRIDGING_NATIVE_BALANCE_QUERY, originChain, directWalletAddress],
|
|
@@ -22235,7 +22285,7 @@ function useBridgeBalance(hyperlaneWarpRoutes) {
|
|
|
22235
22285
|
};
|
|
22236
22286
|
}
|
|
22237
22287
|
});
|
|
22238
|
-
const refreshRouteTokenBalance =
|
|
22288
|
+
const refreshRouteTokenBalance = useCallback27(
|
|
22239
22289
|
(senderWallet) => {
|
|
22240
22290
|
switch (true) {
|
|
22241
22291
|
case senderWallet === "embarkai-wallet":
|
|
@@ -22300,7 +22350,7 @@ var init_useBridgeBalance = __esm({
|
|
|
22300
22350
|
});
|
|
22301
22351
|
|
|
22302
22352
|
// src/internal/components/SendMenu/hyperbridge/steps/SelectStep.tsx
|
|
22303
|
-
import { ArrowLeftRightIcon, ArrowRightLeftIcon, LoaderIcon as
|
|
22353
|
+
import { ArrowLeftRightIcon, ArrowRightLeftIcon, LoaderIcon as LoaderIcon13, Wallet2Icon as Wallet2Icon3, XIcon as XIcon2 } from "lucide-react";
|
|
22304
22354
|
import { Fragment as Fragment36 } from "react";
|
|
22305
22355
|
import { Fragment as Fragment37, jsx as jsx97, jsxs as jsxs90 } from "react/jsx-runtime";
|
|
22306
22356
|
function SelectStep(props) {
|
|
@@ -22326,7 +22376,7 @@ function SelectStep(props) {
|
|
|
22326
22376
|
const SelectedWarpRoteIcon = TOKENS_ICONS[(selectedWarpRoute?.symbol || "null_icon").toUpperCase()] || TOKENS_ICONS.EMBARKAI;
|
|
22327
22377
|
const isError = useFlowSelectorStore((st) => !!st.error);
|
|
22328
22378
|
if (isLoadingWarpRoutes) {
|
|
22329
|
-
return /* @__PURE__ */ jsx97("div", { className: "w-full flex items-center justify-center p-[var(--ui-kit-pd)]", children: /* @__PURE__ */ jsx97(
|
|
22379
|
+
return /* @__PURE__ */ jsx97("div", { className: "w-full flex items-center justify-center p-[var(--ui-kit-pd)]", children: /* @__PURE__ */ jsx97(LoaderIcon13, { className: "w-4 h-4 animate-spin" }) });
|
|
22330
22380
|
}
|
|
22331
22381
|
const isBalanceInsufficient = !routeTokenBalance || Number(amount || 0) > Number(routeTokenBalance || 0);
|
|
22332
22382
|
const isFalsyAmount = !amount || !Number(amount) || Number(amount) <= 0;
|
|
@@ -22379,7 +22429,7 @@ function SelectStep(props) {
|
|
|
22379
22429
|
t("passport:common.balance"),
|
|
22380
22430
|
": "
|
|
22381
22431
|
] }),
|
|
22382
|
-
isRouteTokenBalanceLoading && /* @__PURE__ */ jsx97(
|
|
22432
|
+
isRouteTokenBalanceLoading && /* @__PURE__ */ jsx97(LoaderIcon13, { className: "w-4 h-4 animate-spin text-[var(--ui-kit-fg-muted)]" }),
|
|
22383
22433
|
!isRouteTokenBalanceLoading && /* @__PURE__ */ jsxs90("span", { className: cn("font-semibold", { "text-[var(--ui-kit-bg-error)]": isBalanceInsufficient }), children: [
|
|
22384
22434
|
formatPrice(Number(routeTokenBalance || 0)),
|
|
22385
22435
|
" ",
|
|
@@ -22514,7 +22564,7 @@ function SelectStep(props) {
|
|
|
22514
22564
|
disabled: isQuoteEstimating || !originChain || !destinationChain || !hyperRoute,
|
|
22515
22565
|
placeholder: t("passport:bridgeMenu.labels.optionalRecipient") + " (ex: 0x...)",
|
|
22516
22566
|
value: recipient || "",
|
|
22517
|
-
Icon:
|
|
22567
|
+
Icon: Wallet2Icon3,
|
|
22518
22568
|
onChange: (e) => {
|
|
22519
22569
|
useFlowSelectorStore.getState().setError(null);
|
|
22520
22570
|
useBridgeStore.getState().setRecipient(e.target.value);
|
|
@@ -22548,7 +22598,7 @@ function SelectStep(props) {
|
|
|
22548
22598
|
onClick: () => handleQuoteEstimation(amount),
|
|
22549
22599
|
disabled: isQuoteEstimationDisabled,
|
|
22550
22600
|
children: [
|
|
22551
|
-
isQuoteEstimating && /* @__PURE__ */ jsx97(
|
|
22601
|
+
isQuoteEstimating && /* @__PURE__ */ jsx97(LoaderIcon13, { className: "h-4 w-4 animate-spin" }),
|
|
22552
22602
|
/* @__PURE__ */ jsx97("span", { children: isBalanceInsufficient ? t("passport:bridgeMenu.statuses.balanceInsufficient").toUpperCase() : t("passport:bridgeMenu.actions.estimateQuote").toUpperCase() })
|
|
22553
22603
|
]
|
|
22554
22604
|
}
|
|
@@ -22604,7 +22654,7 @@ var init_checkbox = __esm({
|
|
|
22604
22654
|
});
|
|
22605
22655
|
|
|
22606
22656
|
// src/internal/components/SendMenu/hyperbridge/steps/ConfirmStep.tsx
|
|
22607
|
-
import { LoaderIcon as
|
|
22657
|
+
import { LoaderIcon as LoaderIcon14 } from "lucide-react";
|
|
22608
22658
|
import { useState as useState23 } from "react";
|
|
22609
22659
|
import { jsx as jsx99, jsxs as jsxs91 } from "react/jsx-runtime";
|
|
22610
22660
|
function ConfirmStep(props) {
|
|
@@ -22716,7 +22766,7 @@ function ConfirmStep(props) {
|
|
|
22716
22766
|
onClick: () => bridgeAsset(),
|
|
22717
22767
|
className: "w-full",
|
|
22718
22768
|
children: [
|
|
22719
|
-
isAssetBridging && /* @__PURE__ */ jsx99(
|
|
22769
|
+
isAssetBridging && /* @__PURE__ */ jsx99(LoaderIcon14, { className: "h-4 w-4 animate-spin" }),
|
|
22720
22770
|
/* @__PURE__ */ jsx99("span", { children: (bridgeTxStatus || t("passport:common.continue")).toUpperCase() })
|
|
22721
22771
|
]
|
|
22722
22772
|
}
|
|
@@ -22836,7 +22886,7 @@ var init_SuccessStep = __esm({
|
|
|
22836
22886
|
// src/internal/components/SendMenu/hyperbridge/steps/HistoryStep.tsx
|
|
22837
22887
|
import { useQueryClient as useQueryClient24 } from "@tanstack/react-query";
|
|
22838
22888
|
import dayjs7 from "dayjs";
|
|
22839
|
-
import { ArrowRightIcon, DownloadIcon as DownloadIcon2, ExternalLinkIcon as ExternalLinkIcon3, InfoIcon as InfoIcon5, LoaderIcon as
|
|
22889
|
+
import { ArrowRightIcon, DownloadIcon as DownloadIcon2, ExternalLinkIcon as ExternalLinkIcon3, InfoIcon as InfoIcon5, LoaderIcon as LoaderIcon15 } from "lucide-react";
|
|
22840
22890
|
import { jsx as jsx101, jsxs as jsxs93 } from "react/jsx-runtime";
|
|
22841
22891
|
function HistoryDetailsStep() {
|
|
22842
22892
|
const { t } = useT();
|
|
@@ -23062,7 +23112,7 @@ function HistoryStep() {
|
|
|
23062
23112
|
return /* @__PURE__ */ jsx101(Highlight, { type: "info", className: "w-full text-center text-[10px] text-[var(--ui-kit-fg-muted)] leading-4", children: t("passport:bridgeMenu.errors.noHistory") });
|
|
23063
23113
|
}
|
|
23064
23114
|
return /* @__PURE__ */ jsxs93("div", { className: "w-full flex flex-col gap-[var(--ui-kit-gap)]", children: [
|
|
23065
|
-
isLoading && /* @__PURE__ */ jsx101("div", { className: "w-full flex items-center justify-center p-[var(--ui-kit-pd)]", children: /* @__PURE__ */ jsx101(
|
|
23115
|
+
isLoading && /* @__PURE__ */ jsx101("div", { className: "w-full flex items-center justify-center p-[var(--ui-kit-pd)]", children: /* @__PURE__ */ jsx101(LoaderIcon15, { className: "w-4 h-4 animate-spin" }) }),
|
|
23066
23116
|
!isLoading && txList.map((item) => /* @__PURE__ */ jsx101(HistoryItem, { ...item }, item.id)),
|
|
23067
23117
|
hasNextPage && /* @__PURE__ */ jsxs93(
|
|
23068
23118
|
Button,
|
|
@@ -23073,7 +23123,7 @@ function HistoryStep() {
|
|
|
23073
23123
|
className: "w-full",
|
|
23074
23124
|
onClick: () => fetchNextPage(),
|
|
23075
23125
|
children: [
|
|
23076
|
-
isTxDataFetching ? /* @__PURE__ */ jsx101(
|
|
23126
|
+
isTxDataFetching ? /* @__PURE__ */ jsx101(LoaderIcon15, { className: "w-4 h-4 animate-spin" }) : /* @__PURE__ */ jsx101(DownloadIcon2, { className: "w-4 h-4" }),
|
|
23077
23127
|
t("passport:common.loadMore")
|
|
23078
23128
|
]
|
|
23079
23129
|
}
|
|
@@ -23374,7 +23424,7 @@ var init_useErc3643Compliance = __esm({
|
|
|
23374
23424
|
});
|
|
23375
23425
|
|
|
23376
23426
|
// src/hooks/useNicknameResolve.ts
|
|
23377
|
-
import { useQuery as
|
|
23427
|
+
import { useQuery as useQuery23 } from "@tanstack/react-query";
|
|
23378
23428
|
import { useEffect as useEffect46, useMemo as useMemo15, useState as useState24 } from "react";
|
|
23379
23429
|
function looksLikeNickname(input) {
|
|
23380
23430
|
if (!input) return false;
|
|
@@ -23404,7 +23454,7 @@ function useNicknameResolve(input, options) {
|
|
|
23404
23454
|
clearTimeout(timer);
|
|
23405
23455
|
};
|
|
23406
23456
|
}, [normalized, isNicknameInput, enabled]);
|
|
23407
|
-
const query =
|
|
23457
|
+
const query = useQuery23({
|
|
23408
23458
|
queryKey: [...QUERY_KEYS.nicknameResolve(debouncedInput), chainId],
|
|
23409
23459
|
queryFn: async () => await resolveNickname(debouncedInput, chainId),
|
|
23410
23460
|
enabled: enabled && isNicknameInput && debouncedInput.length > 0,
|
|
@@ -23449,7 +23499,7 @@ var init_useNicknameResolve = __esm({
|
|
|
23449
23499
|
});
|
|
23450
23500
|
|
|
23451
23501
|
// src/hooks/useSendTransaction.ts
|
|
23452
|
-
import { useCallback as
|
|
23502
|
+
import { useCallback as useCallback28, useState as useState25 } from "react";
|
|
23453
23503
|
import { encodeFunctionData as encodeFunctionData2, isAddress, parseEther as parseEther2, parseUnits } from "viem";
|
|
23454
23504
|
function useSendTransaction() {
|
|
23455
23505
|
const session = useSession((st) => st.session);
|
|
@@ -23457,7 +23507,7 @@ function useSendTransaction() {
|
|
|
23457
23507
|
const [isLoading, setIsLoading] = useState25(false);
|
|
23458
23508
|
const [error, setError] = useState25(null);
|
|
23459
23509
|
const [userOpHash, setUserOpHash] = useState25(null);
|
|
23460
|
-
const sendTransaction =
|
|
23510
|
+
const sendTransaction = useCallback28(
|
|
23461
23511
|
async (params) => {
|
|
23462
23512
|
if (!session || !address) {
|
|
23463
23513
|
setError("No active session");
|
|
@@ -23554,7 +23604,7 @@ function useSendTransaction() {
|
|
|
23554
23604
|
},
|
|
23555
23605
|
[session, address]
|
|
23556
23606
|
);
|
|
23557
|
-
const reset =
|
|
23607
|
+
const reset = useCallback28(() => {
|
|
23558
23608
|
setError(null);
|
|
23559
23609
|
setUserOpHash(null);
|
|
23560
23610
|
setIsLoading(false);
|
|
@@ -23941,7 +23991,7 @@ var init_components3 = __esm({
|
|
|
23941
23991
|
|
|
23942
23992
|
// src/internal/components/SendMenu/send/useTokenBalance.ts
|
|
23943
23993
|
import {
|
|
23944
|
-
useQuery as
|
|
23994
|
+
useQuery as useQuery24
|
|
23945
23995
|
} from "@tanstack/react-query";
|
|
23946
23996
|
import {
|
|
23947
23997
|
erc20Abi as erc20Abi4,
|
|
@@ -23954,7 +24004,7 @@ function isNftAsset4(asset) {
|
|
|
23954
24004
|
function useTokenBalance(asset) {
|
|
23955
24005
|
const address = useSession((st) => st.address);
|
|
23956
24006
|
const chainConfig = useSession((st) => st.chainConfig);
|
|
23957
|
-
return
|
|
24007
|
+
return useQuery24({
|
|
23958
24008
|
retry: false,
|
|
23959
24009
|
enabled: !!address && !!chainConfig?.id && !!asset?.symbol,
|
|
23960
24010
|
refetchInterval: 5e3,
|
|
@@ -24027,7 +24077,7 @@ var init_useTokenBalance = __esm({
|
|
|
24027
24077
|
});
|
|
24028
24078
|
|
|
24029
24079
|
// src/internal/components/SendMenu/send/sendSteps/InputSendStep.tsx
|
|
24030
|
-
import { AlertCircle as AlertCircle4, AtSign as AtSign2, CheckCircle2 as CheckCircle25, Loader as
|
|
24080
|
+
import { AlertCircle as AlertCircle4, AtSign as AtSign2, CheckCircle2 as CheckCircle25, Loader as Loader19, Wallet2 as Wallet24 } from "lucide-react";
|
|
24031
24081
|
import { formatUnits as formatUnits12, isAddress as isAddress2 } from "viem";
|
|
24032
24082
|
import { Fragment as Fragment39, jsx as jsx109, jsxs as jsxs100 } from "react/jsx-runtime";
|
|
24033
24083
|
function InputSendStep(props) {
|
|
@@ -24143,7 +24193,7 @@ function InputSendStep(props) {
|
|
|
24143
24193
|
/* @__PURE__ */ jsx109(AssetInputIcon, { asset: selectedAsset }),
|
|
24144
24194
|
/* @__PURE__ */ jsx109("span", { children: (isNft ? selectedAsset.nftMetadata?.name || selectedAsset.symbol : selectedAsset.name).toUpperCase() })
|
|
24145
24195
|
] }) : /* @__PURE__ */ jsx109("span", { className: "text-[var(--ui-kit-fg-muted)]", children: "No Asset Selected" }),
|
|
24146
|
-
isAssetsLoading && /* @__PURE__ */ jsx109(
|
|
24196
|
+
isAssetsLoading && /* @__PURE__ */ jsx109(Loader19, { className: "w-4 h-4 animate-spin" })
|
|
24147
24197
|
]
|
|
24148
24198
|
}
|
|
24149
24199
|
),
|
|
@@ -24157,7 +24207,7 @@ function InputSendStep(props) {
|
|
|
24157
24207
|
disabled: isAssetsLoading,
|
|
24158
24208
|
onChange: (e) => setRecipient(e.target.value),
|
|
24159
24209
|
placeholder: "0x... or @nickname",
|
|
24160
|
-
element: isNicknameInput && isResolving ? /* @__PURE__ */ jsx109(
|
|
24210
|
+
element: isNicknameInput && isResolving ? /* @__PURE__ */ jsx109(Loader19, { className: "w-4 h-4 animate-spin text-[var(--ui-kit-fg-muted)]" }) : null
|
|
24161
24211
|
}
|
|
24162
24212
|
),
|
|
24163
24213
|
/* @__PURE__ */ jsx109(NicknameData, { resolvedNicknameData, isNicknameInput }),
|
|
@@ -24166,7 +24216,7 @@ function InputSendStep(props) {
|
|
|
24166
24216
|
!isNft && selectedAsset && /* @__PURE__ */ jsxs100("span", { className: "block text-[10px]", children: [
|
|
24167
24217
|
t("passport:common.balance"),
|
|
24168
24218
|
" ",
|
|
24169
|
-
isBalanceLoading ? /* @__PURE__ */ jsx109(
|
|
24219
|
+
isBalanceLoading ? /* @__PURE__ */ jsx109(Loader19, { className: "h-4 w-4 animate-spin" }) : /* @__PURE__ */ jsxs100("span", { className: "text-[var(--ui-kit-fg)] font-semibold", children: [
|
|
24170
24220
|
formatPrice(balanceData.formatted),
|
|
24171
24221
|
" ",
|
|
24172
24222
|
balanceData.symbol
|
|
@@ -24193,7 +24243,7 @@ function InputSendStep(props) {
|
|
|
24193
24243
|
type: isComplianceLoading ? "info" : erc3643CanTransfer ? "success" : "error",
|
|
24194
24244
|
className: "flex gap-[var(--ui-kit-gap)]",
|
|
24195
24245
|
children: isComplianceLoading ? /* @__PURE__ */ jsxs100(Fragment39, { children: [
|
|
24196
|
-
/* @__PURE__ */ jsx109(
|
|
24246
|
+
/* @__PURE__ */ jsx109(Loader19, { className: "h-4 w-4 animate-spin" }),
|
|
24197
24247
|
/* @__PURE__ */ jsx109("span", { children: "Checking compliance..." })
|
|
24198
24248
|
] }) : erc3643CanTransfer ? /* @__PURE__ */ jsxs100(Fragment39, { children: [
|
|
24199
24249
|
/* @__PURE__ */ jsx109(CheckCircle25, { className: "h-4 w-4" }),
|
|
@@ -24237,7 +24287,7 @@ var init_InputSendStep = __esm({
|
|
|
24237
24287
|
|
|
24238
24288
|
// src/internal/components/SendMenu/send/sendSteps/ConfirmSendStep.tsx
|
|
24239
24289
|
import { useMutation as useMutation21 } from "@tanstack/react-query";
|
|
24240
|
-
import { AlertTriangle as AlertTriangle5, AtSign as AtSign3, Loader as
|
|
24290
|
+
import { AlertTriangle as AlertTriangle5, AtSign as AtSign3, Loader as Loader20, Shield, ShieldAlert as ShieldAlert2, ShieldCheck as ShieldCheck3 } from "lucide-react";
|
|
24241
24291
|
import { Fragment as Fragment40, jsx as jsx110, jsxs as jsxs101 } from "react/jsx-runtime";
|
|
24242
24292
|
function ConfirmSendStep(props) {
|
|
24243
24293
|
const { sendTransaction, erc3643Compliance, isNicknameInput, resolvedNicknameData } = props;
|
|
@@ -24286,7 +24336,7 @@ function ConfirmSendStep(props) {
|
|
|
24286
24336
|
/* @__PURE__ */ jsx110("span", { children: "This handle is frozen. Proceed with caution." })
|
|
24287
24337
|
] }),
|
|
24288
24338
|
isSecurity && erc3643CanTransfer && /* @__PURE__ */ jsxs101(Highlight, { type: "success", className: "flex gap-[var(--ui-kit-gap)]", children: [
|
|
24289
|
-
/* @__PURE__ */ jsx110(
|
|
24339
|
+
/* @__PURE__ */ jsx110(Shield, { className: "h-4 w-4 flex-shrink-0" }),
|
|
24290
24340
|
/* @__PURE__ */ jsx110("span", { children: "Security token compliance verified" })
|
|
24291
24341
|
] }),
|
|
24292
24342
|
!isNft && /* @__PURE__ */ jsxs101("div", { className: "flex justify-between leading-5", children: [
|
|
@@ -24402,7 +24452,7 @@ function ConfirmSendStep(props) {
|
|
|
24402
24452
|
className: "w-full",
|
|
24403
24453
|
size: "large",
|
|
24404
24454
|
children: [
|
|
24405
|
-
isTransactionPending && /* @__PURE__ */ jsx110(
|
|
24455
|
+
isTransactionPending && /* @__PURE__ */ jsx110(Loader20, { className: "h-4 w-4 animate-spin" }),
|
|
24406
24456
|
t("passport:common.confirm")
|
|
24407
24457
|
]
|
|
24408
24458
|
}
|
|
@@ -24435,7 +24485,7 @@ var init_sendSteps = __esm({
|
|
|
24435
24485
|
});
|
|
24436
24486
|
|
|
24437
24487
|
// src/internal/components/SendMenu/send/SendMenu.tsx
|
|
24438
|
-
import { CheckCircle2 as CheckCircle26, Loader as
|
|
24488
|
+
import { CheckCircle2 as CheckCircle26, Loader as Loader21 } from "lucide-react";
|
|
24439
24489
|
import { useEffect as useEffect48, useMemo as useMemo16 } from "react";
|
|
24440
24490
|
import { parseUnits as parseUnits2 } from "viem";
|
|
24441
24491
|
import { Fragment as Fragment41, jsx as jsx111, jsxs as jsxs102 } from "react/jsx-runtime";
|
|
@@ -24545,7 +24595,7 @@ function SendMenu() {
|
|
|
24545
24595
|
}
|
|
24546
24596
|
),
|
|
24547
24597
|
txStep === "pending" && /* @__PURE__ */ jsxs102(Highlight, { type: "info", className: "flex gap-[var(--ui-kit-gap)]", children: [
|
|
24548
|
-
/* @__PURE__ */ jsx111(
|
|
24598
|
+
/* @__PURE__ */ jsx111(Loader21, { className: "h-4 w-4 animate-spin" }),
|
|
24549
24599
|
/* @__PURE__ */ jsxs102("span", { className: "flex-1", children: [
|
|
24550
24600
|
/* @__PURE__ */ jsx111("span", { className: "block leading-4 font-semibold", children: t("passport:sendMenu.pendingStep") }),
|
|
24551
24601
|
/* @__PURE__ */ jsx111("span", { children: t("passport:sendMenu.pendingStepMsg") })
|
|
@@ -24602,10 +24652,15 @@ var init_send = __esm({
|
|
|
24602
24652
|
import { keys as keys2 } from "lodash-es";
|
|
24603
24653
|
import { useEffect as useEffect49 } from "react";
|
|
24604
24654
|
function useSendMenuParams() {
|
|
24655
|
+
const { config } = useProviderConfig();
|
|
24605
24656
|
useEffect49(() => {
|
|
24606
24657
|
const { pageParams, setPageParams } = useLayoutDataStore.getState();
|
|
24607
24658
|
if (!pageParams || !keys2(pageParams).length) return;
|
|
24608
24659
|
const { sendFlow, send, bridge } = pageParams || {};
|
|
24660
|
+
if (sendFlow === "bridge" && !config?.current?.features?.showAssetBridge) {
|
|
24661
|
+
setPageParams(null);
|
|
24662
|
+
return;
|
|
24663
|
+
}
|
|
24609
24664
|
const {
|
|
24610
24665
|
setAmount: setSendAmount,
|
|
24611
24666
|
setRecipient: setSendRecipient,
|
|
@@ -24653,6 +24708,7 @@ function useSendMenuParams() {
|
|
|
24653
24708
|
}
|
|
24654
24709
|
var init_useSendMenuParams = __esm({
|
|
24655
24710
|
"src/internal/components/SendMenu/useSendMenuParams.ts"() {
|
|
24711
|
+
init_ProviderContext();
|
|
24656
24712
|
init_useLayoutDataStore();
|
|
24657
24713
|
init_useBridgeStore();
|
|
24658
24714
|
init_useSendStore();
|
|
@@ -24662,7 +24718,7 @@ var init_useSendMenuParams = __esm({
|
|
|
24662
24718
|
|
|
24663
24719
|
// src/internal/components/SendMenu/SendFlowSelector.tsx
|
|
24664
24720
|
import { ArrowLeft as ArrowLeft19, ArrowRightIcon as ArrowRightIcon2, ArrowRightLeftIcon as ArrowRightLeftIcon2, InfoIcon as InfoIcon6 } from "lucide-react";
|
|
24665
|
-
import { useEffect as useEffect50 } from "react";
|
|
24721
|
+
import { useEffect as useEffect50, useMemo as useMemo17 } from "react";
|
|
24666
24722
|
import { jsx as jsx112, jsxs as jsxs103 } from "react/jsx-runtime";
|
|
24667
24723
|
function SelectorFlowButtons() {
|
|
24668
24724
|
const { t } = useT();
|
|
@@ -24714,14 +24770,14 @@ function SelectorFlowButtons() {
|
|
|
24714
24770
|
}
|
|
24715
24771
|
function SendFlowSelector() {
|
|
24716
24772
|
const { t } = useT();
|
|
24773
|
+
const { config } = useProviderConfig();
|
|
24717
24774
|
useSendMenuParams();
|
|
24718
|
-
const setPage = useLayoutDataStore((st) => st.setPage);
|
|
24719
24775
|
const maxScrollHeight = useLayoutStore((st) => st.maxScrollHeight);
|
|
24720
|
-
const isUiLocked = useFlowSelectorStore((st) => st.isUiLocked);
|
|
24721
24776
|
const renderKey = useFlowSelectorStore((st) => st.renderKey);
|
|
24722
|
-
const
|
|
24723
|
-
const menuTitle = useFlowSelectorStore((st) => st.menuTitle);
|
|
24777
|
+
const isUiLocked = useFlowSelectorStore((st) => st.isUiLocked);
|
|
24724
24778
|
const selectorFlow = useFlowSelectorStore((st) => st.flow);
|
|
24779
|
+
const menuTitle = useFlowSelectorStore((st) => st.menuTitle);
|
|
24780
|
+
const error = useFlowSelectorStore((st) => st.error);
|
|
24725
24781
|
const sendStep = useSendStore((st) => st.txStep);
|
|
24726
24782
|
const bridgeStep = useBridgeStore((st) => st.bridgeStep);
|
|
24727
24783
|
useOnboardingTourAvailable(sendStep === "input" && bridgeStep === "select");
|
|
@@ -24731,7 +24787,17 @@ function SendFlowSelector() {
|
|
|
24731
24787
|
},
|
|
24732
24788
|
[]
|
|
24733
24789
|
);
|
|
24790
|
+
useEffect50(() => {
|
|
24791
|
+
if (!!config?.current?.features?.showAssetBridge) return;
|
|
24792
|
+
if (selectorFlow === "bridge") useFlowSelectorStore.getState().setFlow("send");
|
|
24793
|
+
}, [selectorFlow]);
|
|
24794
|
+
const availableFlows = useMemo17(() => {
|
|
24795
|
+
const selectorFlows = { send: /* @__PURE__ */ jsx112(SendMenu, {}) };
|
|
24796
|
+
if (!!config?.current?.features?.showAssetBridge) selectorFlows.bridge = /* @__PURE__ */ jsx112(HyperlaneBridge, {});
|
|
24797
|
+
return selectorFlows;
|
|
24798
|
+
}, []);
|
|
24734
24799
|
const isSendFlowInitialState = selectorFlow === "send" && sendStep === "input" || selectorFlow === "bridge" && bridgeStep === "select";
|
|
24800
|
+
const showFlowSelectorButtons = !!config?.current?.features?.showAssetBridge && isSendFlowInitialState;
|
|
24735
24801
|
return /* @__PURE__ */ jsx112(
|
|
24736
24802
|
"div",
|
|
24737
24803
|
{
|
|
@@ -24752,6 +24818,7 @@ function SendFlowSelector() {
|
|
|
24752
24818
|
disabled: isUiLocked,
|
|
24753
24819
|
onClick: () => {
|
|
24754
24820
|
useFlowSelectorStore.getState().setError(null);
|
|
24821
|
+
const { setPage } = useLayoutDataStore.getState();
|
|
24755
24822
|
if (selectorFlow === "bridge") {
|
|
24756
24823
|
const { bridgeStep: bridgeStep2, setBridgeStep } = useBridgeStore.getState();
|
|
24757
24824
|
switch (bridgeStep2) {
|
|
@@ -24781,8 +24848,8 @@ function SendFlowSelector() {
|
|
|
24781
24848
|
] }),
|
|
24782
24849
|
/* @__PURE__ */ jsx112("div", { className: "flex items-center gap-[var(--ui-kit-gap)]", children: /* @__PURE__ */ jsx112(BridgeHistorySwitch, {}) })
|
|
24783
24850
|
] }),
|
|
24784
|
-
|
|
24785
|
-
|
|
24851
|
+
showFlowSelectorButtons && /* @__PURE__ */ jsx112(SelectorFlowButtons, {}),
|
|
24852
|
+
availableFlows[selectorFlow],
|
|
24786
24853
|
error && /* @__PURE__ */ jsxs103(Highlight, { type: "error", className: "w-full flex flex-col gap-[var(--ui-kit-gap)]", children: [
|
|
24787
24854
|
/* @__PURE__ */ jsxs103("div", { className: "w-full flex gap-[var(--ui-kit-gap)]", children: [
|
|
24788
24855
|
/* @__PURE__ */ jsx112(InfoIcon6, { className: "h-4 w-4 flex-none" }),
|
|
@@ -24804,9 +24871,9 @@ function SendFlowSelector() {
|
|
|
24804
24871
|
}
|
|
24805
24872
|
);
|
|
24806
24873
|
}
|
|
24807
|
-
var SELECTOR_FLOW;
|
|
24808
24874
|
var init_SendFlowSelector = __esm({
|
|
24809
24875
|
"src/internal/components/SendMenu/SendFlowSelector.tsx"() {
|
|
24876
|
+
init_ProviderContext();
|
|
24810
24877
|
init_i18n();
|
|
24811
24878
|
init_useLayoutDataStore();
|
|
24812
24879
|
init_useLayoutStore();
|
|
@@ -24819,10 +24886,6 @@ var init_SendFlowSelector = __esm({
|
|
|
24819
24886
|
init_send();
|
|
24820
24887
|
init_useFlowSelector();
|
|
24821
24888
|
init_useSendMenuParams();
|
|
24822
|
-
SELECTOR_FLOW = {
|
|
24823
|
-
send: /* @__PURE__ */ jsx112(SendMenu, {}),
|
|
24824
|
-
bridge: /* @__PURE__ */ jsx112(HyperlaneBridge, {})
|
|
24825
|
-
};
|
|
24826
24889
|
}
|
|
24827
24890
|
});
|
|
24828
24891
|
|
|
@@ -24919,7 +24982,7 @@ var init_onboarding_setup10 = __esm({
|
|
|
24919
24982
|
});
|
|
24920
24983
|
|
|
24921
24984
|
// src/internal/components/SettingsMenu/SettingsMenu.tsx
|
|
24922
|
-
import { useQuery as
|
|
24985
|
+
import { useQuery as useQuery25 } from "@tanstack/react-query";
|
|
24923
24986
|
import { ArrowLeft as ArrowLeft20, HardDrive as HardDrive3 } from "lucide-react";
|
|
24924
24987
|
import { useEffect as useEffect51 } from "react";
|
|
24925
24988
|
import { jsx as jsx113, jsxs as jsxs104 } from "react/jsx-runtime";
|
|
@@ -24963,7 +25026,7 @@ function SettingsMenu() {
|
|
|
24963
25026
|
const setPage = useLayoutDataStore((st) => st.setPage);
|
|
24964
25027
|
const settingsButtons = useSettingsButtons();
|
|
24965
25028
|
useProvidersList();
|
|
24966
|
-
|
|
25029
|
+
useQuery25({
|
|
24967
25030
|
retry: 1,
|
|
24968
25031
|
enabled: !!address,
|
|
24969
25032
|
queryKey: [QUERY_KEYS.nicknameInfo, address],
|
|
@@ -25896,9 +25959,9 @@ var init_TransactionsGroup = __esm({
|
|
|
25896
25959
|
});
|
|
25897
25960
|
|
|
25898
25961
|
// src/internal/components/TransactionsMenu/TransactionsMenu.tsx
|
|
25899
|
-
import { useQuery as
|
|
25900
|
-
import { ArrowLeft as ArrowLeft22, Loader as
|
|
25901
|
-
import { useCallback as
|
|
25962
|
+
import { useQuery as useQuery26, useQueryClient as useQueryClient25 } from "@tanstack/react-query";
|
|
25963
|
+
import { ArrowLeft as ArrowLeft22, Loader as Loader27, RefreshCw as RefreshCw3, XCircle } from "lucide-react";
|
|
25964
|
+
import { useCallback as useCallback29, useState as useState27 } from "react";
|
|
25902
25965
|
import { jsx as jsx116, jsxs as jsxs107 } from "react/jsx-runtime";
|
|
25903
25966
|
function TransactionsMenu() {
|
|
25904
25967
|
const qc = useQueryClient25();
|
|
@@ -25915,13 +25978,13 @@ function TransactionsMenu() {
|
|
|
25915
25978
|
isLoading: isTxHistoryLoading,
|
|
25916
25979
|
isFetching: isTxHistoryFetching,
|
|
25917
25980
|
error: txHistoryError
|
|
25918
|
-
} =
|
|
25981
|
+
} = useQuery26({
|
|
25919
25982
|
retry: false,
|
|
25920
25983
|
enabled: !!address && !!chainConfig?.id && historySupported,
|
|
25921
25984
|
queryKey: [TRANSACTIONS_HISTORY_QUERY_KEY, chainConfig.id, address],
|
|
25922
25985
|
queryFn: () => getTransactionsListQuery({ address, chainConfig })
|
|
25923
25986
|
});
|
|
25924
|
-
const refreshTxHistory =
|
|
25987
|
+
const refreshTxHistory = useCallback29(
|
|
25925
25988
|
() => qc.invalidateQueries({ queryKey: [TRANSACTIONS_HISTORY_QUERY_KEY, chainConfig.id, address] }),
|
|
25926
25989
|
[qc, chainConfig.id, address]
|
|
25927
25990
|
);
|
|
@@ -25947,12 +26010,12 @@ function TransactionsMenu() {
|
|
|
25947
26010
|
onClick: refreshTxHistory,
|
|
25948
26011
|
disabled: isTxHistoryFetching,
|
|
25949
26012
|
title: "Refresh transactions",
|
|
25950
|
-
children: isTxHistoryFetching ? /* @__PURE__ */ jsx116(
|
|
26013
|
+
children: isTxHistoryFetching ? /* @__PURE__ */ jsx116(Loader27, { className: "h-4 w-4 animate-spin" }) : /* @__PURE__ */ jsx116(RefreshCw3, { className: "h-4 w-4" })
|
|
25951
26014
|
}
|
|
25952
26015
|
)
|
|
25953
26016
|
] }),
|
|
25954
26017
|
!historySupported && /* @__PURE__ */ jsx116(Highlight, { type: "warning", children: /* @__PURE__ */ jsx116("span", { children: t("passport:transactionsMenu.comingSoon") }) }),
|
|
25955
|
-
historySupported && isTxHistoryLoading && /* @__PURE__ */ jsx116("div", { className: "flex items-center justify-center p-8", children: /* @__PURE__ */ jsx116(
|
|
26018
|
+
historySupported && isTxHistoryLoading && /* @__PURE__ */ jsx116("div", { className: "flex items-center justify-center p-8", children: /* @__PURE__ */ jsx116(Loader27, { className: "w-4 h-4 animate-spin" }) }),
|
|
25956
26019
|
historySupported && !isTxHistoryLoading && !txHistoryResolvedError && txHistoryGroups.length === 0 && /* @__PURE__ */ jsx116(Highlight, { type: "info", children: /* @__PURE__ */ jsx116("span", { children: t("passport:transactionsMenu.noTransactions") }) }),
|
|
25957
26020
|
historySupported && !isTxHistoryLoading && txHistoryResolvedError && /* @__PURE__ */ jsxs107(Highlight, { type: "error", className: "flex gap-[var(--ui-kit-gap)]", children: [
|
|
25958
26021
|
/* @__PURE__ */ jsx116(XCircle, { className: "w-4 h-4 flex-none" }),
|
|
@@ -26163,7 +26226,7 @@ var init_PageMap = __esm({
|
|
|
26163
26226
|
});
|
|
26164
26227
|
|
|
26165
26228
|
// src/internal/hooks/usePageMapper.tsx
|
|
26166
|
-
import { useCallback as
|
|
26229
|
+
import { useCallback as useCallback30, useEffect as useEffect52 } from "react";
|
|
26167
26230
|
import { jsx as jsx117 } from "react/jsx-runtime";
|
|
26168
26231
|
function usePageMapper() {
|
|
26169
26232
|
const page = useLayoutDataStore((st) => st.page);
|
|
@@ -26175,7 +26238,7 @@ function usePageMapper() {
|
|
|
26175
26238
|
setIsDialogOpen,
|
|
26176
26239
|
setIsDialogClosing
|
|
26177
26240
|
} = useLayoutStore();
|
|
26178
|
-
const closeDialog =
|
|
26241
|
+
const closeDialog = useCallback30(() => {
|
|
26179
26242
|
setIsDialogClosing(true);
|
|
26180
26243
|
setTimeout(() => {
|
|
26181
26244
|
setDialogContent(null);
|
|
@@ -26186,7 +26249,7 @@ function usePageMapper() {
|
|
|
26186
26249
|
setIsDialogOpen(false);
|
|
26187
26250
|
}, CLEAR_DIALOG_TIMEOUT);
|
|
26188
26251
|
}, [setDialogContent, setDialogDescription, setDialogTitle, setIsDialogForced, setIsDialogOpen, setIsDialogClosing]);
|
|
26189
|
-
const openDialog =
|
|
26252
|
+
const openDialog = useCallback30(
|
|
26190
26253
|
(pageItem) => {
|
|
26191
26254
|
const PageContentComponent = pageItem.component;
|
|
26192
26255
|
setDialogTitle(pageItem.title);
|
|
@@ -26264,7 +26327,7 @@ var init_package = __esm({
|
|
|
26264
26327
|
"package.json"() {
|
|
26265
26328
|
package_default = {
|
|
26266
26329
|
name: "@embarkai/ui-kit",
|
|
26267
|
-
version: "0.4.
|
|
26330
|
+
version: "0.4.80",
|
|
26268
26331
|
description: "React UI components and hooks for EmbarkAI authentication and Account Abstraction",
|
|
26269
26332
|
type: "module",
|
|
26270
26333
|
main: "./dist/index.cjs",
|
|
@@ -26366,7 +26429,7 @@ var init_package = __esm({
|
|
|
26366
26429
|
|
|
26367
26430
|
// src/internal/components/Footer/Footer.tsx
|
|
26368
26431
|
import { useMutation as useMutation22, useQueryClient as useQueryClient26 } from "@tanstack/react-query";
|
|
26369
|
-
import { Loader as
|
|
26432
|
+
import { Loader as Loader28, LogOut } from "lucide-react";
|
|
26370
26433
|
import { useDisconnect as useDisconnect3 } from "wagmi";
|
|
26371
26434
|
import { jsx as jsx118, jsxs as jsxs108 } from "react/jsx-runtime";
|
|
26372
26435
|
function Footer() {
|
|
@@ -26463,7 +26526,7 @@ function Footer() {
|
|
|
26463
26526
|
disabled: isDisconnecting,
|
|
26464
26527
|
children: [
|
|
26465
26528
|
/* @__PURE__ */ jsx118("span", { children: t("passport:auth.logout") }),
|
|
26466
|
-
isDisconnecting ? /* @__PURE__ */ jsx118(
|
|
26529
|
+
isDisconnecting ? /* @__PURE__ */ jsx118(Loader28, { className: "w-4 h-4 animate-spin" }) : /* @__PURE__ */ jsx118(LogOut, { className: "w-4 h-4" })
|
|
26467
26530
|
]
|
|
26468
26531
|
}
|
|
26469
26532
|
) : null
|
|
@@ -26585,8 +26648,8 @@ var init_onborading_setup = __esm({
|
|
|
26585
26648
|
});
|
|
26586
26649
|
|
|
26587
26650
|
// src/internal/components/Header/Header.tsx
|
|
26588
|
-
import { CircleQuestionMarkIcon
|
|
26589
|
-
import { useCallback as
|
|
26651
|
+
import { CircleQuestionMarkIcon, Copy as Copy4, Loader as Loader29 } from "lucide-react";
|
|
26652
|
+
import { useCallback as useCallback31, useRef as useRef19, useState as useState28 } from "react";
|
|
26590
26653
|
import { Fragment as Fragment43, jsx as jsx119, jsxs as jsxs109 } from "react/jsx-runtime";
|
|
26591
26654
|
function formatAddress2(addr) {
|
|
26592
26655
|
if (!addr) return "";
|
|
@@ -26603,7 +26666,7 @@ function Header() {
|
|
|
26603
26666
|
const [copied, setCopied] = useState28(false);
|
|
26604
26667
|
const clickCountRef = useRef19(0);
|
|
26605
26668
|
const clickTimerRef = useRef19(null);
|
|
26606
|
-
const handleAvatarClick =
|
|
26669
|
+
const handleAvatarClick = useCallback31(() => {
|
|
26607
26670
|
clickCountRef.current += 1;
|
|
26608
26671
|
if (clickTimerRef.current) {
|
|
26609
26672
|
clearTimeout(clickTimerRef.current);
|
|
@@ -26650,7 +26713,7 @@ function Header() {
|
|
|
26650
26713
|
style: { width: "calc(100% - 48px - var(--ui-kit-gap))" },
|
|
26651
26714
|
className: "flex-1 flex flex-col justify-center gap-1",
|
|
26652
26715
|
children: [
|
|
26653
|
-
isProfileLoading && /* @__PURE__ */ jsx119(
|
|
26716
|
+
isProfileLoading && /* @__PURE__ */ jsx119(Loader29, { className: "w-4 h-4 animate-spin" }),
|
|
26654
26717
|
!!address && !isProfileLoading && !!profile && /* @__PURE__ */ jsxs109(Fragment43, { children: [
|
|
26655
26718
|
/* @__PURE__ */ jsxs109("div", { className: "w-full flex items-center gap-[var(--ui-kit-gap)]", children: [
|
|
26656
26719
|
/* @__PURE__ */ jsx119(
|
|
@@ -26699,7 +26762,7 @@ function Header() {
|
|
|
26699
26762
|
variant: "ghost",
|
|
26700
26763
|
className: "text-[10px] px-2",
|
|
26701
26764
|
onClick: () => onboarder.startTour(ONBOARDING_TOURS[embarkPage]({ config: config.current })),
|
|
26702
|
-
children: /* @__PURE__ */ jsx119(
|
|
26765
|
+
children: /* @__PURE__ */ jsx119(CircleQuestionMarkIcon, { className: "w-4 h-4" })
|
|
26703
26766
|
}
|
|
26704
26767
|
)
|
|
26705
26768
|
] })
|
|
@@ -27068,7 +27131,7 @@ var init_DirectWalletHandler = __esm({
|
|
|
27068
27131
|
});
|
|
27069
27132
|
|
|
27070
27133
|
// src/internal/components/TssManager.tsx
|
|
27071
|
-
import React27, { useCallback as
|
|
27134
|
+
import React27, { useCallback as useCallback32 } from "react";
|
|
27072
27135
|
var TssManagerWithRef;
|
|
27073
27136
|
var init_TssManager = __esm({
|
|
27074
27137
|
"src/internal/components/TssManager.tsx"() {
|
|
@@ -27083,7 +27146,7 @@ var init_TssManager = __esm({
|
|
|
27083
27146
|
const setStatus = useSession((st) => st.setStatus);
|
|
27084
27147
|
const setSession = useSession((st) => st.setSession);
|
|
27085
27148
|
const setAddress = useSession((st) => st.setAddress);
|
|
27086
|
-
const onSessionCreated =
|
|
27149
|
+
const onSessionCreated = useCallback32(
|
|
27087
27150
|
(session, address) => {
|
|
27088
27151
|
setSession(session);
|
|
27089
27152
|
setAddress(address);
|
|
@@ -27124,7 +27187,7 @@ var init_TssManager = __esm({
|
|
|
27124
27187
|
// src/internal/components/WalletConnectHandler.tsx
|
|
27125
27188
|
import { useConnectModal as useConnectModal2 } from "@rainbow-me/rainbowkit";
|
|
27126
27189
|
import { useMutation as useMutation23, useQueryClient as useQueryClient27 } from "@tanstack/react-query";
|
|
27127
|
-
import React28, { useCallback as
|
|
27190
|
+
import React28, { useCallback as useCallback33, useEffect as useEffect56 } from "react";
|
|
27128
27191
|
import { useAccount as useAccount2, useDisconnect as useDisconnect4, useSignMessage as useSignMessage2 } from "wagmi";
|
|
27129
27192
|
function WalletConnectHandler() {
|
|
27130
27193
|
const qc = useQueryClient27();
|
|
@@ -27147,7 +27210,7 @@ function WalletConnectHandler() {
|
|
|
27147
27210
|
const projectId = providerConfig?.projectId;
|
|
27148
27211
|
const setExternalWallet = useExternalWalletStore((st) => st.setExternalWallet);
|
|
27149
27212
|
const setPendingWalletLogin = useLayoutDataStore((st) => st.setPendingWalletLogin);
|
|
27150
|
-
const onLinkingComplete =
|
|
27213
|
+
const onLinkingComplete = useCallback33(
|
|
27151
27214
|
async (success) => {
|
|
27152
27215
|
setIsWalletLinking(false);
|
|
27153
27216
|
if (!success && !passportWalletAddress) {
|
|
@@ -30145,14 +30208,14 @@ var init_rainbowkit = __esm({
|
|
|
30145
30208
|
|
|
30146
30209
|
// src/context/RainbowKitContext.tsx
|
|
30147
30210
|
import { darkTheme, lightTheme, RainbowKitProvider as NativeRainbowKitProvider } from "@rainbow-me/rainbowkit";
|
|
30148
|
-
import { useMemo as
|
|
30211
|
+
import { useMemo as useMemo18 } from "react";
|
|
30149
30212
|
import { WagmiProvider } from "wagmi";
|
|
30150
30213
|
import "@rainbow-me/rainbowkit/styles.css";
|
|
30151
30214
|
import { Fragment as Fragment45, jsx as jsx124 } from "react/jsx-runtime";
|
|
30152
30215
|
function RainbowKitProvider({ children }) {
|
|
30153
30216
|
const config = useProviderConfig().config;
|
|
30154
30217
|
const colorMode = useLayoutStore((st) => st.colorMode);
|
|
30155
|
-
const rainbowConfig =
|
|
30218
|
+
const rainbowConfig = useMemo18(
|
|
30156
30219
|
() => createRainbowConfig({
|
|
30157
30220
|
projectId: config.current?.wallet?.walletConnectProjectId,
|
|
30158
30221
|
allowedWallets: config.current?.wallet?.allowedWallets,
|
|
@@ -30166,7 +30229,7 @@ function RainbowKitProvider({ children }) {
|
|
|
30166
30229
|
config.current?.wallet?.walletConnectProjectId
|
|
30167
30230
|
]
|
|
30168
30231
|
);
|
|
30169
|
-
const customTheme =
|
|
30232
|
+
const customTheme = useMemo18(() => {
|
|
30170
30233
|
if (!config.current?.wallet?.enabled) return {};
|
|
30171
30234
|
return colorMode === "dark" ? {
|
|
30172
30235
|
...darkTheme(),
|
|
@@ -30224,10 +30287,10 @@ import { initSdkErrorTracking } from "@embarkai/core/internal/error-tracking";
|
|
|
30224
30287
|
import { merge as merge3 } from "lodash-es";
|
|
30225
30288
|
import {
|
|
30226
30289
|
createContext,
|
|
30227
|
-
useCallback as
|
|
30290
|
+
useCallback as useCallback34,
|
|
30228
30291
|
useContext,
|
|
30229
30292
|
useEffect as useEffect57,
|
|
30230
|
-
useMemo as
|
|
30293
|
+
useMemo as useMemo19,
|
|
30231
30294
|
useRef as useRef20
|
|
30232
30295
|
} from "react";
|
|
30233
30296
|
import { jsx as jsx126 } from "react/jsx-runtime";
|
|
@@ -30251,7 +30314,7 @@ function Provider(props) {
|
|
|
30251
30314
|
const callbacksRef = useRef20(callbacks);
|
|
30252
30315
|
useEffect57(() => notifyNoProjetctId(projectId), [projectId]);
|
|
30253
30316
|
const config = useRef20(merge3({}, DEFAULT_PROVIDER_CONFIG, { projectId }, initialConfig));
|
|
30254
|
-
const updateConfig =
|
|
30317
|
+
const updateConfig = useCallback34((updates) => {
|
|
30255
30318
|
const prev = config.current;
|
|
30256
30319
|
const next = { ...prev };
|
|
30257
30320
|
if (updates.projectId !== void 0) next.projectId = updates.projectId;
|
|
@@ -30285,7 +30348,7 @@ function Provider(props) {
|
|
|
30285
30348
|
if (updates.translations) next.translations = { ...next.translations, ...updates.translations };
|
|
30286
30349
|
config.current = next;
|
|
30287
30350
|
}, []);
|
|
30288
|
-
const updateCallbacks =
|
|
30351
|
+
const updateCallbacks = useCallback34((updates) => {
|
|
30289
30352
|
const prev = callbacksRef.current;
|
|
30290
30353
|
const next = updates ? { ...prev, ...updates } : void 0;
|
|
30291
30354
|
callbacksRef.current = next;
|
|
@@ -30339,7 +30402,7 @@ function Provider(props) {
|
|
|
30339
30402
|
console.error("[PROVIDER] Error setting up iframe manager:", error);
|
|
30340
30403
|
}
|
|
30341
30404
|
}, [projectId]);
|
|
30342
|
-
const contextValue =
|
|
30405
|
+
const contextValue = useMemo19(
|
|
30343
30406
|
() => ({
|
|
30344
30407
|
config,
|
|
30345
30408
|
updateConfig,
|
|
@@ -30379,7 +30442,7 @@ var init_ProviderContext = __esm({
|
|
|
30379
30442
|
});
|
|
30380
30443
|
|
|
30381
30444
|
// src/styles/built.css
|
|
30382
|
-
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-1{right:.25rem}.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{top:.25rem}.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-0{width:0}.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 .resize{resize:both}.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-\\[12px\\]{padding:12px}.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{pointer-events:none;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}`;
|
|
30445
|
+
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-1{right:.25rem}.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{top:.25rem}.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-0{width:0}.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-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 .resize{resize:both}.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-\\[12px\\]{padding:12px}.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);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.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{pointer-events:none;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}`;
|
|
30383
30446
|
|
|
30384
30447
|
// src/index.ts
|
|
30385
30448
|
init_ProviderContext();
|
|
@@ -30398,8 +30461,8 @@ init_useUserProfile();
|
|
|
30398
30461
|
init_useLayoutStore();
|
|
30399
30462
|
init_pro_mode();
|
|
30400
30463
|
init_utils2();
|
|
30401
|
-
import { Cloud as Cloud4, Laptop as Laptop2, Loader as
|
|
30402
|
-
import { useEffect as useEffect58, useMemo as
|
|
30464
|
+
import { Cloud as Cloud4, Laptop as Laptop2, Loader as Loader30, Shield as Shield2 } from "lucide-react";
|
|
30465
|
+
import { useEffect as useEffect58, useMemo as useMemo20 } from "react";
|
|
30403
30466
|
import { Fragment as Fragment46, jsx as jsx127, jsxs as jsxs113 } from "react/jsx-runtime";
|
|
30404
30467
|
function getFormattedStatus(label, status, showStatus) {
|
|
30405
30468
|
const isStatus = showStatus && status && status !== "idle" && status !== "ready";
|
|
@@ -30422,7 +30485,7 @@ function ConnectWalletButton(props) {
|
|
|
30422
30485
|
useEffect58(() => setUsePaymaster(usePaymaster), [setUsePaymaster, usePaymaster]);
|
|
30423
30486
|
const { data: profile, isLoading: isProfileLoading } = useUserProfile();
|
|
30424
30487
|
const displayName = profile?.nicknameDisplay || profile?.displayName || jwtTokenManager2.getDisplayName();
|
|
30425
|
-
const indicators =
|
|
30488
|
+
const indicators = useMemo20(() => {
|
|
30426
30489
|
const userId = session?.mpcUserId;
|
|
30427
30490
|
if (!userId) return { server: false, local: false, backup: false };
|
|
30428
30491
|
const server = jwtTokenManager2.getHasKeyshare() ?? false;
|
|
@@ -30440,7 +30503,7 @@ function ConnectWalletButton(props) {
|
|
|
30440
30503
|
disabled: isConnecting,
|
|
30441
30504
|
onClick: () => setPage("auth" /* AUTH */),
|
|
30442
30505
|
children: [
|
|
30443
|
-
isConnecting ? /* @__PURE__ */ jsx127("span", { className: "w-6 h-6 flex items-center justify-center", children: /* @__PURE__ */ jsx127(
|
|
30506
|
+
isConnecting ? /* @__PURE__ */ jsx127("span", { className: "w-6 h-6 flex items-center justify-center", children: /* @__PURE__ */ jsx127(Loader30, { className: "w-4 h-4 animate-spin" }) }) : /* @__PURE__ */ jsx127(embarkAI_default2, { className: "w-6 h-6" }),
|
|
30444
30507
|
connectButtonLabel
|
|
30445
30508
|
]
|
|
30446
30509
|
}
|
|
@@ -30461,7 +30524,7 @@ function ConnectWalletButton(props) {
|
|
|
30461
30524
|
"disabled:hover:bg-[var(--ui-kit-bg)] disabled:active:bg-[var(--ui-kit-bg)]"
|
|
30462
30525
|
),
|
|
30463
30526
|
children: [
|
|
30464
|
-
isConnecting ? /* @__PURE__ */ jsx127("span", { className: "w-6 h-6 flex items-center justify-center", children: /* @__PURE__ */ jsx127(
|
|
30527
|
+
isConnecting ? /* @__PURE__ */ jsx127("span", { className: "w-6 h-6 flex items-center justify-center", children: /* @__PURE__ */ jsx127(Loader30, { className: "w-4 h-4 animate-spin" }) }) : /* @__PURE__ */ jsx127(embarkAI_default2, { className: "w-6 h-6" }),
|
|
30465
30528
|
connectButtonLabel.toUpperCase()
|
|
30466
30529
|
]
|
|
30467
30530
|
}
|
|
@@ -30485,7 +30548,7 @@ function ConnectWalletButton(props) {
|
|
|
30485
30548
|
] }),
|
|
30486
30549
|
/* @__PURE__ */ jsxs113("div", { className: "text-left flex-1 min-w-0 text-[var(--ui-kit-fg)]", children: [
|
|
30487
30550
|
/* @__PURE__ */ jsxs113("div", { className: "flex items-center gap-[var(--ui-kit-gap)]", children: [
|
|
30488
|
-
isProfileLoading ? /* @__PURE__ */ jsx127(
|
|
30551
|
+
isProfileLoading ? /* @__PURE__ */ jsx127(Loader30, { className: "w-4 h-4 animate-spin" }) : /* @__PURE__ */ jsx127("span", { className: "w-fit text-[14px] leading-4 truncate max-w-[144px] text-[var(--ui-kit-fg)]", children: displayName }),
|
|
30489
30552
|
/* @__PURE__ */ jsx127(KYCStatus, {})
|
|
30490
30553
|
] }),
|
|
30491
30554
|
/* @__PURE__ */ jsx127(BalanceView, {})
|
|
@@ -30537,7 +30600,7 @@ function ConnectWalletButton(props) {
|
|
|
30537
30600
|
] }),
|
|
30538
30601
|
/* @__PURE__ */ jsxs113("div", { className: "group relative", children: [
|
|
30539
30602
|
/* @__PURE__ */ jsx127(
|
|
30540
|
-
|
|
30603
|
+
Shield2,
|
|
30541
30604
|
{
|
|
30542
30605
|
className: `w-3 h-3 ${indicators.backup ? "text-[var(--ui-kit-bg-success)]" : "text-[var(--ui-kit-bg-warning)]"}`
|
|
30543
30606
|
}
|
|
@@ -31363,12 +31426,12 @@ init_useErc3643Compliance();
|
|
|
31363
31426
|
|
|
31364
31427
|
// src/hooks/useWalletMode.ts
|
|
31365
31428
|
init_useExternalWalletStore();
|
|
31366
|
-
import { useCallback as
|
|
31429
|
+
import { useCallback as useCallback37 } from "react";
|
|
31367
31430
|
function useWalletMode() {
|
|
31368
31431
|
const configMode = useExternalWalletStore((st) => st.configMode);
|
|
31369
31432
|
const activeMode = useExternalWalletStore((st) => st.activeMode);
|
|
31370
31433
|
const setActiveMode = useExternalWalletStore((st) => st.setActiveMode);
|
|
31371
|
-
const switchMode =
|
|
31434
|
+
const switchMode = useCallback37(
|
|
31372
31435
|
(mode) => {
|
|
31373
31436
|
if (configMode !== "both") return;
|
|
31374
31437
|
setActiveMode(mode);
|
|
@@ -31386,7 +31449,7 @@ function useWalletMode() {
|
|
|
31386
31449
|
// src/hooks/useDirectWallet.ts
|
|
31387
31450
|
init_useExternalWalletStore();
|
|
31388
31451
|
init_useLayoutDataStore();
|
|
31389
|
-
import { useCallback as
|
|
31452
|
+
import { useCallback as useCallback38 } from "react";
|
|
31390
31453
|
import { useConnectModal as useConnectModal3 } from "@rainbow-me/rainbowkit";
|
|
31391
31454
|
import { useDisconnect as useDisconnect5 } from "wagmi";
|
|
31392
31455
|
function useDirectWallet() {
|
|
@@ -31398,13 +31461,13 @@ function useDirectWallet() {
|
|
|
31398
31461
|
const { disconnect: wagmiDisconnect } = useDisconnect5();
|
|
31399
31462
|
const { openConnectModal } = useConnectModal3();
|
|
31400
31463
|
const setIsWalletLinking = useLayoutDataStore((st) => st.setIsWalletLinking);
|
|
31401
|
-
const connect =
|
|
31464
|
+
const connect = useCallback38(() => {
|
|
31402
31465
|
setIsWalletLinking(true);
|
|
31403
31466
|
}, [setIsWalletLinking]);
|
|
31404
|
-
const reconnect =
|
|
31467
|
+
const reconnect = useCallback38(() => {
|
|
31405
31468
|
if (openConnectModal) openConnectModal();
|
|
31406
31469
|
}, [openConnectModal]);
|
|
31407
|
-
const disconnect =
|
|
31470
|
+
const disconnect = useCallback38(() => {
|
|
31408
31471
|
wagmiDisconnect();
|
|
31409
31472
|
clearExternalWallet();
|
|
31410
31473
|
}, [wagmiDisconnect, clearExternalWallet]);
|
|
@@ -31421,7 +31484,7 @@ function useDirectWallet() {
|
|
|
31421
31484
|
|
|
31422
31485
|
// src/hooks/useSendDirectTransaction.ts
|
|
31423
31486
|
init_useExternalWalletStore();
|
|
31424
|
-
import { useCallback as
|
|
31487
|
+
import { useCallback as useCallback39, useState as useState34 } from "react";
|
|
31425
31488
|
import { isAddress as isAddress3, parseEther as parseEther3 } from "viem";
|
|
31426
31489
|
import { useSendTransaction as useWagmiSendTransaction, useSwitchChain as useSwitchChain3 } from "wagmi";
|
|
31427
31490
|
function useSendDirectTransaction() {
|
|
@@ -31432,7 +31495,7 @@ function useSendDirectTransaction() {
|
|
|
31432
31495
|
const [isPending, setIsPending] = useState34(false);
|
|
31433
31496
|
const [error, setError] = useState34(null);
|
|
31434
31497
|
const [txHash, setTxHash] = useState34(null);
|
|
31435
|
-
const sendTransaction =
|
|
31498
|
+
const sendTransaction = useCallback39(
|
|
31436
31499
|
async (params) => {
|
|
31437
31500
|
if (!isConnected) {
|
|
31438
31501
|
setError("No external wallet connected");
|
|
@@ -31466,7 +31529,7 @@ function useSendDirectTransaction() {
|
|
|
31466
31529
|
},
|
|
31467
31530
|
[isConnected, externalChainId, sendTransactionAsync, switchChainAsync]
|
|
31468
31531
|
);
|
|
31469
|
-
const reset =
|
|
31532
|
+
const reset = useCallback39(() => {
|
|
31470
31533
|
setError(null);
|
|
31471
31534
|
setTxHash(null);
|
|
31472
31535
|
setIsPending(false);
|
|
@@ -31478,7 +31541,7 @@ function useSendDirectTransaction() {
|
|
|
31478
31541
|
init_SessionContext();
|
|
31479
31542
|
init_account2();
|
|
31480
31543
|
init_linkedProfiles();
|
|
31481
|
-
import { useCallback as
|
|
31544
|
+
import { useCallback as useCallback40, useMemo as useMemo21, useState as useState35 } from "react";
|
|
31482
31545
|
import { encodeFunctionData as encodeFunctionData3, isAddress as isAddress4, parseEther as parseEther4, parseUnits as parseUnits3 } from "viem";
|
|
31483
31546
|
var ERC20_TRANSFER_ABI2 = [
|
|
31484
31547
|
{
|
|
@@ -31497,11 +31560,11 @@ function useTransferToLinkedWallet() {
|
|
|
31497
31560
|
const [isPending, setIsPending] = useState35(false);
|
|
31498
31561
|
const [error, setError] = useState35(null);
|
|
31499
31562
|
const [userOpHash, setUserOpHash] = useState35(null);
|
|
31500
|
-
const linkedWallets =
|
|
31563
|
+
const linkedWallets = useMemo21(
|
|
31501
31564
|
() => (profiles || []).filter((p) => p.provider === "wallet" && p.externalId).map((p) => p.externalId),
|
|
31502
31565
|
[profiles]
|
|
31503
31566
|
);
|
|
31504
|
-
const transfer =
|
|
31567
|
+
const transfer = useCallback40(
|
|
31505
31568
|
async (params) => {
|
|
31506
31569
|
if (!session) {
|
|
31507
31570
|
setError("No active session");
|
|
@@ -31552,7 +31615,7 @@ function useTransferToLinkedWallet() {
|
|
|
31552
31615
|
},
|
|
31553
31616
|
[session, linkedWallets]
|
|
31554
31617
|
);
|
|
31555
|
-
const reset =
|
|
31618
|
+
const reset = useCallback40(() => {
|
|
31556
31619
|
setError(null);
|
|
31557
31620
|
setUserOpHash(null);
|
|
31558
31621
|
setIsPending(false);
|
|
@@ -31579,7 +31642,7 @@ init_ProviderContext();
|
|
|
31579
31642
|
init_SessionContext();
|
|
31580
31643
|
init_useExternalWalletStore();
|
|
31581
31644
|
import { logout as coreLogout, jwtTokenManager as jwtTokenManager3 } from "@embarkai/core/auth";
|
|
31582
|
-
import { useCallback as
|
|
31645
|
+
import { useCallback as useCallback41 } from "react";
|
|
31583
31646
|
import { useDisconnect as useDisconnect6 } from "wagmi";
|
|
31584
31647
|
function useLogout() {
|
|
31585
31648
|
const { callbacksRef } = useProviderConfig();
|
|
@@ -31596,7 +31659,7 @@ function useLogout() {
|
|
|
31596
31659
|
}
|
|
31597
31660
|
}
|
|
31598
31661
|
});
|
|
31599
|
-
const logout2 =
|
|
31662
|
+
const logout2 = useCallback41(async () => {
|
|
31600
31663
|
const { setSession, setIsLoading, setAddress, setStatus, setError } = useSession.getState();
|
|
31601
31664
|
const prevAddress = address;
|
|
31602
31665
|
let userId = null;
|