@embarkai/ui-kit 0.4.92 → 0.4.94
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 +1323 -1522
- package/dist/index.js +1318 -1518
- package/dist/styles.css +1 -1
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -5010,10 +5010,11 @@ var init_cn = __esm({
|
|
|
5010
5010
|
|
|
5011
5011
|
// src/internal/constants.ts
|
|
5012
5012
|
import { Key, Mail, Wallet2 } from "lucide-react";
|
|
5013
|
-
var LOCAL_COLOR_MODE_KEY, LOOCAL_BACKUP_STATUS_KEY, DEFAULT_AUTH_MENU_HEIGHT, DEFAULT_MAIN_MENU_HEIGHT, MAX_CONTENT_HEIGHT, MAIN_DIALOG_ANIMATION_SPEED, Y_ANIMATION_SETUP, BLOCKSCOUT_QUERY_STALE_TIME, BLOCKSCOUT_QUERY_GC_TIME, BLOCKSCOUT_REFRESH_DEBOUNCE, IPFS_GATEWAY, PROVIDERS_META;
|
|
5013
|
+
var EMBARKAI_DIALOG_ONBOARDING_ID, LOCAL_COLOR_MODE_KEY, LOOCAL_BACKUP_STATUS_KEY, DEFAULT_AUTH_MENU_HEIGHT, DEFAULT_MAIN_MENU_HEIGHT, MAX_CONTENT_HEIGHT, MAIN_DIALOG_ANIMATION_SPEED, Y_ANIMATION_SETUP, BLOCKSCOUT_QUERY_STALE_TIME, BLOCKSCOUT_QUERY_GC_TIME, BLOCKSCOUT_REFRESH_DEBOUNCE, IPFS_GATEWAY, PROVIDERS_META;
|
|
5014
5014
|
var init_constants = __esm({
|
|
5015
5015
|
"src/internal/constants.ts"() {
|
|
5016
5016
|
init_assets();
|
|
5017
|
+
EMBARKAI_DIALOG_ONBOARDING_ID = "embark-main-dialog-content";
|
|
5017
5018
|
LOCAL_COLOR_MODE_KEY = "passport-theme-mode";
|
|
5018
5019
|
LOOCAL_BACKUP_STATUS_KEY = "passport-backup-status";
|
|
5019
5020
|
DEFAULT_AUTH_MENU_HEIGHT = 253;
|
|
@@ -5049,25 +5050,16 @@ var init_useLayoutStore = __esm({
|
|
|
5049
5050
|
colorMode: "light",
|
|
5050
5051
|
isMobileView: false,
|
|
5051
5052
|
maxScrollHeight: MAX_CONTENT_HEIGHT,
|
|
5052
|
-
isDialogClosing: false,
|
|
5053
5053
|
isDialogOpen: false,
|
|
5054
|
+
isDialogAnimating: false,
|
|
5054
5055
|
isDialogForced: false,
|
|
5055
|
-
dialogTitle: null,
|
|
5056
|
-
dialogDescription: null,
|
|
5057
5056
|
dialogContent: null,
|
|
5058
5057
|
isSettings: false,
|
|
5059
5058
|
setColorMode: (colorMode) => set({ colorMode }),
|
|
5060
|
-
// setLayoutView: (layoutView) => set(() => ({ layoutView })),
|
|
5061
|
-
// setDeviceType: (deviceType) => set(() => ({ deviceType })),
|
|
5062
5059
|
setIsMobileView: (isMobileView) => set({ isMobileView }),
|
|
5063
5060
|
setMaxScrollHeight: (maxScrollHeight) => set({ maxScrollHeight }),
|
|
5064
|
-
|
|
5065
|
-
|
|
5066
|
-
setIsDialogForced: (isDialogForced) => set({ isDialogForced }),
|
|
5067
|
-
setDialogTitle: (dialogTitle) => set({ dialogTitle }),
|
|
5068
|
-
setDialogDescription: (dialogDescription) => set({ dialogDescription }),
|
|
5069
|
-
setDialogContent: (dialogContent) => set({ dialogContent }),
|
|
5070
|
-
setIsSettings: (isSettings) => set({ isSettings })
|
|
5061
|
+
/** dedicated setter for dialog forced state */
|
|
5062
|
+
setIsDialogForced: (isDialogForced) => set({ isDialogForced })
|
|
5071
5063
|
}));
|
|
5072
5064
|
}
|
|
5073
5065
|
});
|
|
@@ -9685,18 +9677,20 @@ var init_input = __esm({
|
|
|
9685
9677
|
/* @__PURE__ */ jsxs11(
|
|
9686
9678
|
"div",
|
|
9687
9679
|
{
|
|
9688
|
-
className: cn2(
|
|
9689
|
-
"flex h-12 w-full rounded-[var(--ui-kit-el-bdrs)] items-center gap-[var(--ui-kit-gap)] px-[var(--ui-kit-pd)]",
|
|
9690
|
-
"bg-[var(--ui-kit-secondary)]",
|
|
9691
|
-
"hover:bg-[var(--ui-kit-secondary-a)]",
|
|
9692
|
-
"transition-colors duration-200 ease-in-out",
|
|
9693
|
-
"file:border-0 file:bg-transparent file:text-base file:font-medium",
|
|
9694
|
-
"focus-within:outline-none focus-within:bg-[var(--ui-kit-secondary-h)]",
|
|
9695
|
-
disabled ? "cursor-default opacity-50" : "cursor-text"
|
|
9696
|
-
),
|
|
9697
9680
|
onClick: () => {
|
|
9698
9681
|
internalRef.current?.focus();
|
|
9699
9682
|
},
|
|
9683
|
+
className: cn2(
|
|
9684
|
+
"flex h-12 w-full items-center gap-[var(--ui-kit-gap)] px-[var(--ui-kit-pd)]",
|
|
9685
|
+
"bg-[var(--ui-kit-secondary)] rounded-[var(--ui-kit-el-bdrs)]",
|
|
9686
|
+
"border border-transparent",
|
|
9687
|
+
"transition-all duration-200 ease-in-out",
|
|
9688
|
+
disabled ? "cursor-not-allowed opacity-50" : cn2(
|
|
9689
|
+
"cursor-text opacity-100 hover:opacity-80",
|
|
9690
|
+
"focus-within:opacity-100 focus-within:border-[var(--ui-kit-bd)]",
|
|
9691
|
+
"focus-within:hover:opacity-100"
|
|
9692
|
+
)
|
|
9693
|
+
),
|
|
9700
9694
|
children: [
|
|
9701
9695
|
Icon2 && /* @__PURE__ */ jsx16("div", { className: "flex flex-none items-center justify-center w-8 h-8", children: /* @__PURE__ */ jsx16(Icon2, { width: 16, height: 16, className: "text-[var(--ui-kit-fg)]" }) }),
|
|
9702
9696
|
/* @__PURE__ */ jsx16(
|
|
@@ -9706,9 +9700,10 @@ var init_input = __esm({
|
|
|
9706
9700
|
className: cn2(
|
|
9707
9701
|
"text-[16px] text-[var(--ui-kit-fg)] font-semibold",
|
|
9708
9702
|
"placeholder:text-[var(--ui-kit-fg-muted)]",
|
|
9709
|
-
"
|
|
9710
|
-
"
|
|
9711
|
-
|
|
9703
|
+
"ring-0 ring-offset-0",
|
|
9704
|
+
"outline-none focus-visible:ring-0 focus-visible:ring-transparent focus-visible:ring-offset-0",
|
|
9705
|
+
"h-full flex-1 border-0 bg-transparent px-0",
|
|
9706
|
+
{ ["cursor-not-allowed"]: disabled },
|
|
9712
9707
|
inputClassName
|
|
9713
9708
|
),
|
|
9714
9709
|
disabled,
|
|
@@ -10834,13 +10829,15 @@ var init_VerificationCodeInput = __esm({
|
|
|
10834
10829
|
onPaste: handlePaste,
|
|
10835
10830
|
className: cn2(
|
|
10836
10831
|
"block w-[40px] h-[48px] rounded-[var(--ui-kit-el-bdrs)]",
|
|
10837
|
-
"text-[16px] leading-5 text-center font-semibold text-[var(--ui-kit-fg)]
|
|
10838
|
-
"bg-[var(--ui-kit-secondary)]
|
|
10839
|
-
"disabled:cursor-default disabled:opacity-50 disabled:hover:bg-[var(--ui-kit-secondary)]",
|
|
10840
|
-
"focus:bg-[var(--ui-kit-secondary-a)]",
|
|
10841
|
-
"border-0 border-transparent",
|
|
10832
|
+
"text-[16px] leading-5 text-center font-semibold text-[var(--ui-kit-fg)]",
|
|
10833
|
+
"bg-[var(--ui-kit-secondary)] border-0 border-transparent",
|
|
10842
10834
|
// to avoid default appearance border
|
|
10843
|
-
"transition-
|
|
10835
|
+
"transition-all duration-200",
|
|
10836
|
+
isLoading ? "cursor-not-allowed opacity-50" : cn2(
|
|
10837
|
+
"cursor-text opacity-100 hover:opacity-80",
|
|
10838
|
+
"focus-within:opacity-100 focus-within:border-[var(--ui-kit-bd)]",
|
|
10839
|
+
"focus-within:hover:opacity-100"
|
|
10840
|
+
)
|
|
10844
10841
|
)
|
|
10845
10842
|
},
|
|
10846
10843
|
i
|
|
@@ -11076,7 +11073,6 @@ var init_AuthMenu = __esm({
|
|
|
11076
11073
|
init_auth();
|
|
11077
11074
|
init_constants();
|
|
11078
11075
|
init_useLayoutDataStore();
|
|
11079
|
-
init_useLayoutStore();
|
|
11080
11076
|
init_Expandable2();
|
|
11081
11077
|
init_button();
|
|
11082
11078
|
init_highlight();
|
|
@@ -11090,16 +11086,14 @@ var init_AuthMenu = __esm({
|
|
|
11090
11086
|
AuthMenu = () => {
|
|
11091
11087
|
const { t } = useT();
|
|
11092
11088
|
const isIframeReady = useSession((st) => st.isIframeReady);
|
|
11093
|
-
const maxScrollHeight = useLayoutStore((st) => st.maxScrollHeight);
|
|
11094
|
-
const setTransitionPageHeight = useLayoutDataStore((st) => st.setTransitionPageHeight);
|
|
11095
11089
|
const pendingWalletLogin = useLayoutDataStore((st) => st.pendingWalletLogin);
|
|
11096
|
-
const
|
|
11097
|
-
const
|
|
11090
|
+
const step = useAuthStore((st) => st.step);
|
|
11091
|
+
const alert2 = useAuthStore((st) => st.alert);
|
|
11098
11092
|
const { pendingLoginResponseRef, onAuthSuccess, goBackToSignIn } = useAuthMenuHandlers();
|
|
11099
11093
|
useEffect12(() => {
|
|
11100
11094
|
if (!pendingWalletLogin) return;
|
|
11101
11095
|
const loginResponse = pendingWalletLogin;
|
|
11102
|
-
setPendingWalletLogin(null);
|
|
11096
|
+
useLayoutDataStore.getState().setPendingWalletLogin(null);
|
|
11103
11097
|
console.log("[AuthMenu] Processing wallet login response:", loginResponse);
|
|
11104
11098
|
jwtTokenManager2.clearTokens().then(() => {
|
|
11105
11099
|
pendingLoginResponseRef.current = loginResponse;
|
|
@@ -11107,8 +11101,9 @@ var init_AuthMenu = __esm({
|
|
|
11107
11101
|
});
|
|
11108
11102
|
}, [pendingWalletLogin]);
|
|
11109
11103
|
useEffect12(() => {
|
|
11110
|
-
setTransitionPageHeight(DEFAULT_AUTH_MENU_HEIGHT);
|
|
11104
|
+
useLayoutDataStore.getState().setTransitionPageHeight(DEFAULT_AUTH_MENU_HEIGHT);
|
|
11111
11105
|
return () => {
|
|
11106
|
+
const { setStep, setPasskeyStatus, setEmail, setEmailChallenge, setAlert } = useAuthStore.getState();
|
|
11112
11107
|
setStep("signin");
|
|
11113
11108
|
setEmail("");
|
|
11114
11109
|
setEmailChallenge(null);
|
|
@@ -11117,7 +11112,7 @@ var init_AuthMenu = __esm({
|
|
|
11117
11112
|
};
|
|
11118
11113
|
}, []);
|
|
11119
11114
|
if (!isIframeReady) {
|
|
11120
|
-
return /* @__PURE__ */ jsxs18(
|
|
11115
|
+
return /* @__PURE__ */ jsxs18(Expandable, { isExpanded: true, className: "w-full p-8 flex flex-col justify-center items-center gap-[var(--ui-kit-gap)]", children: [
|
|
11121
11116
|
/* @__PURE__ */ jsx23(Loader4, { className: "w-4 h-4 animate-spin" }),
|
|
11122
11117
|
/* @__PURE__ */ jsx23("span", { className: "text-sm text-[var(--ui-kit-fg-muted)]", children: "Initializing wallet..." })
|
|
11123
11118
|
] });
|
|
@@ -11139,26 +11134,25 @@ var init_AuthMenu = __esm({
|
|
|
11139
11134
|
}),
|
|
11140
11135
|
[onAuthSuccess, goBackToSignIn]
|
|
11141
11136
|
);
|
|
11142
|
-
return /* @__PURE__ */
|
|
11143
|
-
|
|
11144
|
-
{
|
|
11145
|
-
|
|
11146
|
-
"
|
|
11147
|
-
"
|
|
11148
|
-
},
|
|
11149
|
-
|
|
11150
|
-
|
|
11151
|
-
|
|
11152
|
-
|
|
11153
|
-
|
|
11154
|
-
|
|
11155
|
-
|
|
11156
|
-
|
|
11157
|
-
|
|
11158
|
-
|
|
11159
|
-
|
|
11160
|
-
|
|
11161
|
-
);
|
|
11137
|
+
return /* @__PURE__ */ jsxs18(Expandable, { isExpanded: true, contentClassName: "w-full flex flex-col gap-[var(--ui-kit-gap)]", children: [
|
|
11138
|
+
stepContent[step],
|
|
11139
|
+
alert2 && /* @__PURE__ */ jsxs18(Highlight, { type: "error", children: [
|
|
11140
|
+
/* @__PURE__ */ jsxs18("span", { className: "block w-full flex flex-col gap-1 flex-1 mb-2", children: [
|
|
11141
|
+
/* @__PURE__ */ jsx23("span", { className: "block font-bold leading-5", children: alert2.title }),
|
|
11142
|
+
/* @__PURE__ */ jsx23("span", { className: "block whitespace-pre-line", children: alert2.message || "Unknown error" })
|
|
11143
|
+
] }),
|
|
11144
|
+
/* @__PURE__ */ jsx23(
|
|
11145
|
+
Button,
|
|
11146
|
+
{
|
|
11147
|
+
variant: "default",
|
|
11148
|
+
size: "medium",
|
|
11149
|
+
className: "w-full",
|
|
11150
|
+
onClick: () => useAuthStore.getState().setAlert(null),
|
|
11151
|
+
children: t("passport:common.hide")
|
|
11152
|
+
}
|
|
11153
|
+
)
|
|
11154
|
+
] })
|
|
11155
|
+
] });
|
|
11162
11156
|
};
|
|
11163
11157
|
}
|
|
11164
11158
|
});
|
|
@@ -12644,11 +12638,12 @@ var init_components = __esm({
|
|
|
12644
12638
|
var BUY_MENU_BINANCE_TOUR;
|
|
12645
12639
|
var init_onboarding_setup = __esm({
|
|
12646
12640
|
"src/internal/components/BuyMenu/onboarding.setup.ts"() {
|
|
12641
|
+
init_constants();
|
|
12647
12642
|
init_useBinanceStore();
|
|
12648
12643
|
init_useBuyMenuStore();
|
|
12649
12644
|
BUY_MENU_BINANCE_TOUR = [
|
|
12650
12645
|
{
|
|
12651
|
-
elId: "
|
|
12646
|
+
elId: `${EMBARKAI_DIALOG_ONBOARDING_ID}-${"buy" /* BUY */}`,
|
|
12652
12647
|
title: "passport:buyMenu.onboarding.buyMenu.title",
|
|
12653
12648
|
description: "passport:buyMenu.onboarding.buyMenu.description",
|
|
12654
12649
|
waitSecs: 6,
|
|
@@ -13828,7 +13823,7 @@ function FinchPayTxHistoryItem(props) {
|
|
|
13828
13823
|
"relative",
|
|
13829
13824
|
"w-full p-[var(--ui-kit-pd)]",
|
|
13830
13825
|
"rounded-[var(--ui-kit-el-bdrs)]",
|
|
13831
|
-
"bg-[var(--ui-kit-secondary
|
|
13826
|
+
"bg-[var(--ui-kit-secondary)]"
|
|
13832
13827
|
),
|
|
13833
13828
|
children: [
|
|
13834
13829
|
/* @__PURE__ */ jsx47(
|
|
@@ -14451,7 +14446,6 @@ import { Fragment as Fragment14, jsx as jsx50, jsxs as jsxs43 } from "react/jsx-
|
|
|
14451
14446
|
function BuyMenu() {
|
|
14452
14447
|
const { t } = useT();
|
|
14453
14448
|
const walletAddress = useSession((st) => st.address);
|
|
14454
|
-
const maxScrollHeight = useLayoutStore((st) => st.maxScrollHeight);
|
|
14455
14449
|
useBuyMenuParams();
|
|
14456
14450
|
useHandleInputAmount();
|
|
14457
14451
|
const rampProvider = useBuyMenuStore((st) => st.rampProvider);
|
|
@@ -14467,103 +14461,92 @@ function BuyMenu() {
|
|
|
14467
14461
|
const showExtras = !isCryptoSelector && !isFiatSelector && !isProviderSummary && !isProviderSelector && !isPaymentModeSelector;
|
|
14468
14462
|
const showProviderTrigger = showExtras && !isTransactionHistory;
|
|
14469
14463
|
useOnboardingTourAvailable(showProviderTrigger);
|
|
14470
|
-
return /* @__PURE__ */
|
|
14471
|
-
"div",
|
|
14472
|
-
|
|
14473
|
-
|
|
14474
|
-
|
|
14475
|
-
|
|
14476
|
-
|
|
14477
|
-
|
|
14478
|
-
|
|
14479
|
-
|
|
14480
|
-
|
|
14481
|
-
|
|
14482
|
-
|
|
14483
|
-
|
|
14484
|
-
|
|
14485
|
-
|
|
14486
|
-
|
|
14487
|
-
|
|
14488
|
-
|
|
14489
|
-
|
|
14490
|
-
|
|
14491
|
-
|
|
14492
|
-
setIsCryptoSelector,
|
|
14493
|
-
setIsFiatSelector,
|
|
14494
|
-
setIsPaymentModeSelector,
|
|
14495
|
-
setError
|
|
14496
|
-
} = useBuyMenuStore.getState();
|
|
14497
|
-
setError(null);
|
|
14498
|
-
if (isProviderSummary) {
|
|
14499
|
-
setIsProviderSummary(false);
|
|
14500
|
-
return;
|
|
14501
|
-
}
|
|
14502
|
-
if (isTransactionHistory) {
|
|
14503
|
-
setIsTransactionHistory(false);
|
|
14504
|
-
return;
|
|
14505
|
-
}
|
|
14506
|
-
if (isProviderSelector) {
|
|
14507
|
-
setIsProviderSelector(false);
|
|
14508
|
-
return;
|
|
14509
|
-
}
|
|
14510
|
-
if (isCryptoSelector) {
|
|
14511
|
-
setIsCryptoSelector(false);
|
|
14512
|
-
return;
|
|
14513
|
-
}
|
|
14514
|
-
if (isFiatSelector) {
|
|
14515
|
-
setIsFiatSelector(false);
|
|
14516
|
-
return;
|
|
14517
|
-
}
|
|
14518
|
-
if (isPaymentModeSelector) {
|
|
14519
|
-
setIsPaymentModeSelector(false);
|
|
14520
|
-
return;
|
|
14521
|
-
}
|
|
14522
|
-
useLayoutDataStore.getState().setPage("main-menu" /* MAIN_MENU */);
|
|
14523
|
-
},
|
|
14524
|
-
children: /* @__PURE__ */ jsx50(ArrowLeft3, { className: "h-4 w-4" })
|
|
14464
|
+
return /* @__PURE__ */ jsxs43(Expandable, { isExpanded: true, contentClassName: "relative w-full flex flex-col gap-[var(--ui-kit-gap)]", children: [
|
|
14465
|
+
/* @__PURE__ */ jsxs43("div", { className: "flex items-center gap-[var(--ui-kit-gap)]", children: [
|
|
14466
|
+
/* @__PURE__ */ jsx50(
|
|
14467
|
+
Button,
|
|
14468
|
+
{
|
|
14469
|
+
variant: "ghost",
|
|
14470
|
+
size: "icon",
|
|
14471
|
+
className: "flex-none",
|
|
14472
|
+
onClick: () => {
|
|
14473
|
+
const {
|
|
14474
|
+
setIsProviderSummary,
|
|
14475
|
+
setIsTransactionHistory,
|
|
14476
|
+
setIsProviderSelector,
|
|
14477
|
+
setIsCryptoSelector,
|
|
14478
|
+
setIsFiatSelector,
|
|
14479
|
+
setIsPaymentModeSelector,
|
|
14480
|
+
setError
|
|
14481
|
+
} = useBuyMenuStore.getState();
|
|
14482
|
+
setError(null);
|
|
14483
|
+
if (isProviderSummary) {
|
|
14484
|
+
setIsProviderSummary(false);
|
|
14485
|
+
return;
|
|
14525
14486
|
}
|
|
14526
|
-
|
|
14527
|
-
|
|
14528
|
-
|
|
14529
|
-
Switch,
|
|
14530
|
-
{
|
|
14531
|
-
labels: { checked: "PURCHASE", unchecked: "HISTORY" },
|
|
14532
|
-
checked: isTransactionHistory,
|
|
14533
|
-
onChange: () => {
|
|
14534
|
-
useBuyMenuStore.getState().setError(null);
|
|
14535
|
-
useBuyMenuStore.getState().setIsTransactionHistory();
|
|
14536
|
-
}
|
|
14487
|
+
if (isTransactionHistory) {
|
|
14488
|
+
setIsTransactionHistory(false);
|
|
14489
|
+
return;
|
|
14537
14490
|
}
|
|
14538
|
-
|
|
14539
|
-
|
|
14540
|
-
|
|
14541
|
-
/* @__PURE__ */ jsx50("span", { className: "block text-[10px] text-[var(--ui-kit-fg-muted)]", children: t("passport:buyMenu.selectProvider") }),
|
|
14542
|
-
/* @__PURE__ */ jsxs43(
|
|
14543
|
-
Button,
|
|
14544
|
-
{
|
|
14545
|
-
ref: (inst) => onboarder.registerElement("buymenu-provider-selector" /* providerSelector */, inst),
|
|
14546
|
-
variant: !!selectedProvider?.id ? "default" : "secondary",
|
|
14547
|
-
onClick: () => {
|
|
14548
|
-
useBuyMenuStore.getState().setError(null);
|
|
14549
|
-
useBuyMenuStore.getState().setIsProviderSelector(true);
|
|
14550
|
-
},
|
|
14551
|
-
className: cn2("w-full justify-center", {
|
|
14552
|
-
[ACTIVE_PROVIDER_CNS[selectedProvider?.id]]: rampProvider === selectedProvider?.id,
|
|
14553
|
-
[IDLE_PROVIDERS_CNS[selectedProvider?.id]]: rampProvider !== selectedProvider?.id
|
|
14554
|
-
}),
|
|
14555
|
-
children: [
|
|
14556
|
-
/* @__PURE__ */ jsx50(selectedProvider.icon, {}),
|
|
14557
|
-
!selectedProvider.icon && t("passport:buyMenu.selectProvider")
|
|
14558
|
-
]
|
|
14491
|
+
if (isProviderSelector) {
|
|
14492
|
+
setIsProviderSelector(false);
|
|
14493
|
+
return;
|
|
14559
14494
|
}
|
|
14560
|
-
|
|
14561
|
-
|
|
14562
|
-
|
|
14563
|
-
|
|
14564
|
-
|
|
14565
|
-
|
|
14566
|
-
|
|
14495
|
+
if (isCryptoSelector) {
|
|
14496
|
+
setIsCryptoSelector(false);
|
|
14497
|
+
return;
|
|
14498
|
+
}
|
|
14499
|
+
if (isFiatSelector) {
|
|
14500
|
+
setIsFiatSelector(false);
|
|
14501
|
+
return;
|
|
14502
|
+
}
|
|
14503
|
+
if (isPaymentModeSelector) {
|
|
14504
|
+
setIsPaymentModeSelector(false);
|
|
14505
|
+
return;
|
|
14506
|
+
}
|
|
14507
|
+
useLayoutDataStore.getState().setPage("main-menu" /* MAIN_MENU */);
|
|
14508
|
+
},
|
|
14509
|
+
children: /* @__PURE__ */ jsx50(ArrowLeft3, { className: "h-4 w-4" })
|
|
14510
|
+
}
|
|
14511
|
+
),
|
|
14512
|
+
/* @__PURE__ */ jsx50("span", { className: "block flex-none text-xl font-semibold", children: t("passport:buyMenu.title") }),
|
|
14513
|
+
showExtras && /* @__PURE__ */ jsx50("div", { className: "flex-1 h-8 flex items-center justify-end gap-[var(--ui-kit-gap)]", children: /* @__PURE__ */ jsx50(
|
|
14514
|
+
Switch,
|
|
14515
|
+
{
|
|
14516
|
+
labels: { checked: "PURCHASE", unchecked: "HISTORY" },
|
|
14517
|
+
checked: isTransactionHistory,
|
|
14518
|
+
onChange: () => {
|
|
14519
|
+
useBuyMenuStore.getState().setError(null);
|
|
14520
|
+
useBuyMenuStore.getState().setIsTransactionHistory();
|
|
14521
|
+
}
|
|
14522
|
+
}
|
|
14523
|
+
) })
|
|
14524
|
+
] }),
|
|
14525
|
+
showProviderTrigger && /* @__PURE__ */ jsxs43(Fragment14, { children: [
|
|
14526
|
+
/* @__PURE__ */ jsx50("span", { className: "block text-[10px] text-[var(--ui-kit-fg-muted)]", children: t("passport:buyMenu.selectProvider") }),
|
|
14527
|
+
/* @__PURE__ */ jsxs43(
|
|
14528
|
+
Button,
|
|
14529
|
+
{
|
|
14530
|
+
ref: (inst) => onboarder.registerElement("buymenu-provider-selector" /* providerSelector */, inst),
|
|
14531
|
+
variant: !!selectedProvider?.id ? "default" : "secondary",
|
|
14532
|
+
onClick: () => {
|
|
14533
|
+
useBuyMenuStore.getState().setError(null);
|
|
14534
|
+
useBuyMenuStore.getState().setIsProviderSelector(true);
|
|
14535
|
+
},
|
|
14536
|
+
className: cn2("w-full justify-center", {
|
|
14537
|
+
[ACTIVE_PROVIDER_CNS[selectedProvider?.id]]: rampProvider === selectedProvider?.id,
|
|
14538
|
+
[IDLE_PROVIDERS_CNS[selectedProvider?.id]]: rampProvider !== selectedProvider?.id
|
|
14539
|
+
}),
|
|
14540
|
+
children: [
|
|
14541
|
+
/* @__PURE__ */ jsx50(selectedProvider.icon, {}),
|
|
14542
|
+
!selectedProvider.icon && t("passport:buyMenu.selectProvider")
|
|
14543
|
+
]
|
|
14544
|
+
}
|
|
14545
|
+
)
|
|
14546
|
+
] }),
|
|
14547
|
+
isProviderSelector ? /* @__PURE__ */ jsx50(ProviderSelector, { providers: AVAILABLE_RAMP_PROVIDERS.map((el) => ({ ...el, Icon: el.icon })) }) : /* @__PURE__ */ jsx50(ProviderComponent, { walletAddress }),
|
|
14548
|
+
error && /* @__PURE__ */ jsx50(Highlight, { type: "error", children: error })
|
|
14549
|
+
] });
|
|
14567
14550
|
}
|
|
14568
14551
|
var init_BuyMenu = __esm({
|
|
14569
14552
|
"src/internal/components/BuyMenu/BuyMenu.tsx"() {
|
|
@@ -14571,7 +14554,6 @@ var init_BuyMenu = __esm({
|
|
|
14571
14554
|
init_SessionContext();
|
|
14572
14555
|
init_i18n();
|
|
14573
14556
|
init_useLayoutDataStore();
|
|
14574
|
-
init_useLayoutStore();
|
|
14575
14557
|
init_Expandable2();
|
|
14576
14558
|
init_Onboarding();
|
|
14577
14559
|
init_button();
|
|
@@ -14932,20 +14914,6 @@ var init_ChainItem = __esm({
|
|
|
14932
14914
|
}
|
|
14933
14915
|
});
|
|
14934
14916
|
|
|
14935
|
-
// src/internal/components/ChainsMenu/onboarding.setup.ts
|
|
14936
|
-
var CHAIN_MENU_TOUR;
|
|
14937
|
-
var init_onboarding_setup2 = __esm({
|
|
14938
|
-
"src/internal/components/ChainsMenu/onboarding.setup.ts"() {
|
|
14939
|
-
CHAIN_MENU_TOUR = [
|
|
14940
|
-
{
|
|
14941
|
-
elId: "embarkai-chain-menu-onboarding" /* chainMenu */,
|
|
14942
|
-
title: "passport:chainMenu.onboarding.chainMenu.title",
|
|
14943
|
-
description: "passport:chainMenu.onboarding.chainMenu.description"
|
|
14944
|
-
}
|
|
14945
|
-
];
|
|
14946
|
-
}
|
|
14947
|
-
});
|
|
14948
|
-
|
|
14949
14917
|
// src/internal/components/ChainsMenu/ChainsMenu.tsx
|
|
14950
14918
|
import { PAYMASTER_CACHE_TTL_MS } from "@embarkai/core";
|
|
14951
14919
|
import { getChainConfig as getChainConfig8, SUPPORTED_MAINNETS as SUPPORTED_MAINNETS2 } from "@embarkai/core/read";
|
|
@@ -14957,7 +14925,6 @@ function ChainsMenu() {
|
|
|
14957
14925
|
const { t } = useT();
|
|
14958
14926
|
const config = useProviderConfig().config;
|
|
14959
14927
|
const activeChainId = useSession((st) => st.activeChainId);
|
|
14960
|
-
const maxScrollHeight = useLayoutStore((st) => st.maxScrollHeight);
|
|
14961
14928
|
const [isTestnets, setIsTestnets] = useState11(false);
|
|
14962
14929
|
const [nextChainId, setNextChainId] = useState11(null);
|
|
14963
14930
|
useOnboardingTourAvailable(true);
|
|
@@ -14988,56 +14955,45 @@ function ChainsMenu() {
|
|
|
14988
14955
|
chainId: activeChainId
|
|
14989
14956
|
} : void 0
|
|
14990
14957
|
});
|
|
14991
|
-
return /* @__PURE__ */
|
|
14992
|
-
"div",
|
|
14993
|
-
|
|
14994
|
-
|
|
14995
|
-
|
|
14996
|
-
"--ui-kit-scrollbar-mah": `${maxScrollHeight}px`,
|
|
14997
|
-
"--ui-kit-list-scrollbar-pd-r": "var(--ui-kit-pd)"
|
|
14998
|
-
},
|
|
14999
|
-
className: "list-scrollbar-y w-full p-[var(--ui-kit-pd)]",
|
|
15000
|
-
children: /* @__PURE__ */ jsxs51(Expandable, { isExpanded: true, contentClassName: "flex flex-col gap-[var(--ui-kit-gap)]", children: [
|
|
15001
|
-
/* @__PURE__ */ jsxs51("div", { className: "flex items-center justify-between gap-[var(--ui-kit-gap)]", children: [
|
|
15002
|
-
/* @__PURE__ */ jsxs51("div", { className: "flex items-center gap-[var(--ui-kit-gap)]", children: [
|
|
15003
|
-
/* @__PURE__ */ jsx58(
|
|
15004
|
-
Button,
|
|
15005
|
-
{
|
|
15006
|
-
size: "icon",
|
|
15007
|
-
variant: "ghost",
|
|
15008
|
-
title: t("passport:common.back"),
|
|
15009
|
-
onClick: () => {
|
|
15010
|
-
const chainMenuOpenedFrom = useLayoutDataStore.getState().chainMenuOpenedFrom;
|
|
15011
|
-
useLayoutDataStore.getState().setPage(chainMenuOpenedFrom || "settings" /* SETTINGS */);
|
|
15012
|
-
},
|
|
15013
|
-
children: /* @__PURE__ */ jsx58(ArrowLeft4, { className: "h-4 w-4" })
|
|
15014
|
-
}
|
|
15015
|
-
),
|
|
15016
|
-
/* @__PURE__ */ jsx58("span", { className: "text-xl font-semibold", children: t("passport:chainMenu.title") })
|
|
15017
|
-
] }),
|
|
15018
|
-
/* @__PURE__ */ jsx58(
|
|
15019
|
-
Switch,
|
|
15020
|
-
{
|
|
15021
|
-
labels: { checked: "MAINNETS", unchecked: "ALL" },
|
|
15022
|
-
checked: isTestnets,
|
|
15023
|
-
onChange: () => setIsTestnets(!isTestnets)
|
|
15024
|
-
}
|
|
15025
|
-
)
|
|
15026
|
-
] }),
|
|
15027
|
-
/* @__PURE__ */ jsx58("div", { className: "w-full flex flex-col gap-[var(--ui-kit-gap)]", children: visibleNetworks.map((network, networkIdx) => /* @__PURE__ */ jsx58(
|
|
15028
|
-
ChainItem,
|
|
14958
|
+
return /* @__PURE__ */ jsxs51(Expandable, { isExpanded: true, contentClassName: "flex flex-col gap-[var(--ui-kit-gap)]", children: [
|
|
14959
|
+
/* @__PURE__ */ jsxs51("div", { className: "flex items-center justify-between gap-[var(--ui-kit-gap)]", children: [
|
|
14960
|
+
/* @__PURE__ */ jsxs51("div", { className: "flex items-center gap-[var(--ui-kit-gap)]", children: [
|
|
14961
|
+
/* @__PURE__ */ jsx58(
|
|
14962
|
+
Button,
|
|
15029
14963
|
{
|
|
15030
|
-
|
|
15031
|
-
|
|
15032
|
-
|
|
15033
|
-
|
|
15034
|
-
|
|
15035
|
-
|
|
15036
|
-
|
|
15037
|
-
|
|
15038
|
-
|
|
15039
|
-
|
|
15040
|
-
|
|
14964
|
+
size: "icon",
|
|
14965
|
+
variant: "ghost",
|
|
14966
|
+
title: t("passport:common.back"),
|
|
14967
|
+
onClick: () => {
|
|
14968
|
+
const chainMenuOpenedFrom = useLayoutDataStore.getState().chainMenuOpenedFrom;
|
|
14969
|
+
useLayoutDataStore.getState().setPage(chainMenuOpenedFrom || "settings" /* SETTINGS */);
|
|
14970
|
+
},
|
|
14971
|
+
children: /* @__PURE__ */ jsx58(ArrowLeft4, { className: "h-4 w-4" })
|
|
14972
|
+
}
|
|
14973
|
+
),
|
|
14974
|
+
/* @__PURE__ */ jsx58("span", { className: "text-xl font-semibold", children: t("passport:chainMenu.title") })
|
|
14975
|
+
] }),
|
|
14976
|
+
/* @__PURE__ */ jsx58(
|
|
14977
|
+
Switch,
|
|
14978
|
+
{
|
|
14979
|
+
labels: { checked: "MAINNETS", unchecked: "ALL" },
|
|
14980
|
+
checked: isTestnets,
|
|
14981
|
+
onChange: () => setIsTestnets(!isTestnets)
|
|
14982
|
+
}
|
|
14983
|
+
)
|
|
14984
|
+
] }),
|
|
14985
|
+
/* @__PURE__ */ jsx58("div", { className: "w-full flex flex-col gap-[var(--ui-kit-gap)]", children: visibleNetworks.map((network, networkIdx) => /* @__PURE__ */ jsx58(
|
|
14986
|
+
ChainItem,
|
|
14987
|
+
{
|
|
14988
|
+
...network,
|
|
14989
|
+
nextChainId,
|
|
14990
|
+
setNextChainId,
|
|
14991
|
+
isActivePaymasterDataLoading,
|
|
14992
|
+
activePaymasterData
|
|
14993
|
+
},
|
|
14994
|
+
`chain-${network.chainId}-${networkIdx}`
|
|
14995
|
+
)) })
|
|
14996
|
+
] });
|
|
15041
14997
|
}
|
|
15042
14998
|
var init_ChainsMenu = __esm({
|
|
15043
14999
|
"src/internal/components/ChainsMenu/ChainsMenu.tsx"() {
|
|
@@ -15047,7 +15003,6 @@ var init_ChainsMenu = __esm({
|
|
|
15047
15003
|
init_useT();
|
|
15048
15004
|
init_resolve_paymaster();
|
|
15049
15005
|
init_useLayoutDataStore();
|
|
15050
|
-
init_useLayoutStore();
|
|
15051
15006
|
init_Expandable2();
|
|
15052
15007
|
init_Onboarding();
|
|
15053
15008
|
init_button();
|
|
@@ -15065,71 +15020,60 @@ function ChainSwitchRequest() {
|
|
|
15065
15020
|
const config = useProviderConfig().config;
|
|
15066
15021
|
const isLoading = useSession((st) => st.isLoading);
|
|
15067
15022
|
const chainConfig = useSession((st) => st.chainConfig);
|
|
15068
|
-
const maxScrollHeight = useLayoutStore((st) => st.maxScrollHeight);
|
|
15069
15023
|
const prefferedChain = NETWORK_OPTIONS.find((ch) => ch.chainId === config.current?.network?.chainId) || null;
|
|
15070
15024
|
const PrefferedChainIcon = prefferedChain?.Icon || (() => null);
|
|
15071
|
-
return /* @__PURE__ */
|
|
15072
|
-
"div",
|
|
15073
|
-
|
|
15074
|
-
|
|
15075
|
-
|
|
15076
|
-
|
|
15077
|
-
|
|
15078
|
-
|
|
15079
|
-
|
|
15080
|
-
|
|
15081
|
-
|
|
15082
|
-
|
|
15083
|
-
|
|
15084
|
-
|
|
15085
|
-
|
|
15086
|
-
|
|
15087
|
-
|
|
15088
|
-
|
|
15089
|
-
|
|
15090
|
-
|
|
15091
|
-
|
|
15092
|
-
|
|
15093
|
-
|
|
15094
|
-
|
|
15095
|
-
|
|
15096
|
-
|
|
15097
|
-
{
|
|
15098
|
-
i18nKey: "passport:chainMenu.chainSwitchRequest.description",
|
|
15099
|
-
values: {
|
|
15100
|
-
preferredChain: `${prefferedChain?.name || "N/A"}`,
|
|
15101
|
-
currentChain: `${chainConfig?.name || "N/A"}`
|
|
15102
|
-
},
|
|
15103
|
-
components: {
|
|
15104
|
-
br: /* @__PURE__ */ jsx59("br", {}),
|
|
15105
|
-
b: /* @__PURE__ */ jsx59("span", { className: "font-bold" })
|
|
15106
|
-
}
|
|
15107
|
-
}
|
|
15108
|
-
) })
|
|
15109
|
-
] }),
|
|
15110
|
-
/* @__PURE__ */ jsxs52(
|
|
15111
|
-
Button,
|
|
15112
|
-
{
|
|
15113
|
-
size: "large",
|
|
15114
|
-
variant: "default",
|
|
15115
|
-
className: "w-full",
|
|
15116
|
-
disabled: isLoading,
|
|
15117
|
-
onClick: () => {
|
|
15118
|
-
if (!config.current?.network?.chainId) return;
|
|
15119
|
-
useSession.getState().setActiveChainId(config.current.network.chainId);
|
|
15120
|
-
useLayoutDataStore.getState().setPage("chain" /* CHAIN */);
|
|
15121
|
-
},
|
|
15122
|
-
children: [
|
|
15123
|
-
isLoading ? /* @__PURE__ */ jsx59(Loader7, { className: "w-6 h-6 animate-spin" }) : /* @__PURE__ */ jsx59(PrefferedChainIcon, { className: "w-6 h-6" }),
|
|
15124
|
-
t("passport:chainMenu.chainSwitchRequest.confirmButton", {
|
|
15125
|
-
chain: `${prefferedChain?.name || "N/A"}`
|
|
15126
|
-
})
|
|
15127
|
-
]
|
|
15025
|
+
return /* @__PURE__ */ jsxs52(Expandable, { isExpanded: true, contentClassName: "flex flex-col gap-[var(--ui-kit-gap)]", children: [
|
|
15026
|
+
/* @__PURE__ */ jsxs52("div", { className: "flex items-center gap-[var(--ui-kit-gap)]", children: [
|
|
15027
|
+
/* @__PURE__ */ jsx59(
|
|
15028
|
+
Button,
|
|
15029
|
+
{
|
|
15030
|
+
size: "icon",
|
|
15031
|
+
variant: "ghost",
|
|
15032
|
+
title: t("passport:common.back"),
|
|
15033
|
+
onClick: () => useLayoutDataStore.getState().setPage("settings" /* SETTINGS */),
|
|
15034
|
+
children: /* @__PURE__ */ jsx59(ArrowLeft5, { className: "h-4 w-4" })
|
|
15035
|
+
}
|
|
15036
|
+
),
|
|
15037
|
+
/* @__PURE__ */ jsx59("span", { className: "text-xl font-semibold", children: t("passport:chainMenu.chainSwitchRequest.title") })
|
|
15038
|
+
] }),
|
|
15039
|
+
/* @__PURE__ */ jsxs52(Highlight, { type: "info", className: "flex gap-[var(--ui-kit-gap)]", children: [
|
|
15040
|
+
/* @__PURE__ */ jsx59(Info2, { className: "w-4 h-4 flex-none" }),
|
|
15041
|
+
/* @__PURE__ */ jsx59("span", { className: "block", children: /* @__PURE__ */ jsx59(
|
|
15042
|
+
Trans,
|
|
15043
|
+
{
|
|
15044
|
+
i18nKey: "passport:chainMenu.chainSwitchRequest.description",
|
|
15045
|
+
values: {
|
|
15046
|
+
preferredChain: `${prefferedChain?.name || "N/A"}`,
|
|
15047
|
+
currentChain: `${chainConfig?.name || "N/A"}`
|
|
15048
|
+
},
|
|
15049
|
+
components: {
|
|
15050
|
+
br: /* @__PURE__ */ jsx59("br", {}),
|
|
15051
|
+
b: /* @__PURE__ */ jsx59("span", { className: "font-bold" })
|
|
15128
15052
|
}
|
|
15129
|
-
|
|
15130
|
-
|
|
15131
|
-
}
|
|
15132
|
-
|
|
15053
|
+
}
|
|
15054
|
+
) })
|
|
15055
|
+
] }),
|
|
15056
|
+
/* @__PURE__ */ jsxs52(
|
|
15057
|
+
Button,
|
|
15058
|
+
{
|
|
15059
|
+
size: "large",
|
|
15060
|
+
variant: "default",
|
|
15061
|
+
className: "w-full",
|
|
15062
|
+
disabled: isLoading,
|
|
15063
|
+
onClick: () => {
|
|
15064
|
+
if (!config.current?.network?.chainId) return;
|
|
15065
|
+
useSession.getState().setActiveChainId(config.current.network.chainId);
|
|
15066
|
+
useLayoutDataStore.getState().setPage("chain" /* CHAIN */);
|
|
15067
|
+
},
|
|
15068
|
+
children: [
|
|
15069
|
+
isLoading ? /* @__PURE__ */ jsx59(Loader7, { className: "w-6 h-6 animate-spin" }) : /* @__PURE__ */ jsx59(PrefferedChainIcon, { className: "w-6 h-6" }),
|
|
15070
|
+
t("passport:chainMenu.chainSwitchRequest.confirmButton", {
|
|
15071
|
+
chain: `${prefferedChain?.name || "N/A"}`
|
|
15072
|
+
})
|
|
15073
|
+
]
|
|
15074
|
+
}
|
|
15075
|
+
)
|
|
15076
|
+
] });
|
|
15133
15077
|
}
|
|
15134
15078
|
var init_ChainSwitchRequest = __esm({
|
|
15135
15079
|
"src/internal/components/ChainsMenu/ChainSwitchRequest.tsx"() {
|
|
@@ -15138,13 +15082,27 @@ var init_ChainSwitchRequest = __esm({
|
|
|
15138
15082
|
init_SessionContext();
|
|
15139
15083
|
init_useT();
|
|
15140
15084
|
init_useLayoutDataStore();
|
|
15141
|
-
init_useLayoutStore();
|
|
15142
15085
|
init_Expandable2();
|
|
15143
15086
|
init_button();
|
|
15144
15087
|
init_highlight();
|
|
15145
15088
|
}
|
|
15146
15089
|
});
|
|
15147
15090
|
|
|
15091
|
+
// src/internal/components/ChainsMenu/onboarding.setup.ts
|
|
15092
|
+
var CHAIN_MENU_TOUR;
|
|
15093
|
+
var init_onboarding_setup2 = __esm({
|
|
15094
|
+
"src/internal/components/ChainsMenu/onboarding.setup.ts"() {
|
|
15095
|
+
init_constants();
|
|
15096
|
+
CHAIN_MENU_TOUR = [
|
|
15097
|
+
{
|
|
15098
|
+
elId: `${EMBARKAI_DIALOG_ONBOARDING_ID}-${"chain" /* CHAIN */}`,
|
|
15099
|
+
title: "passport:chainMenu.onboarding.chainMenu.title",
|
|
15100
|
+
description: "passport:chainMenu.onboarding.chainMenu.description"
|
|
15101
|
+
}
|
|
15102
|
+
];
|
|
15103
|
+
}
|
|
15104
|
+
});
|
|
15105
|
+
|
|
15148
15106
|
// src/internal/components/ChainsMenu/index.ts
|
|
15149
15107
|
var init_ChainsMenu2 = __esm({
|
|
15150
15108
|
"src/internal/components/ChainsMenu/index.ts"() {
|
|
@@ -16354,20 +16312,6 @@ var init_useLinkTelegram = __esm({
|
|
|
16354
16312
|
}
|
|
16355
16313
|
});
|
|
16356
16314
|
|
|
16357
|
-
// src/internal/components/ManageWalletMenu/onboarding.setup.ts
|
|
16358
|
-
var MANAGE_WALLET_MENU_TOUR;
|
|
16359
|
-
var init_onboarding_setup3 = __esm({
|
|
16360
|
-
"src/internal/components/ManageWalletMenu/onboarding.setup.ts"() {
|
|
16361
|
-
MANAGE_WALLET_MENU_TOUR = [
|
|
16362
|
-
{
|
|
16363
|
-
elId: "embarkai-profiles-menu-onboarding" /* profilesMenu */,
|
|
16364
|
-
title: "passport:profilesMenu.onboarding.profilesMenu.title",
|
|
16365
|
-
description: "passport:profilesMenu.onboarding.profilesMenu.description"
|
|
16366
|
-
}
|
|
16367
|
-
];
|
|
16368
|
-
}
|
|
16369
|
-
});
|
|
16370
|
-
|
|
16371
16315
|
// src/internal/components/ManageWalletMenu/ProviderCard.tsx
|
|
16372
16316
|
import { Clock, Link2Icon, LoaderIcon as LoaderIcon7, Trash2Icon, UnplugIcon } from "lucide-react";
|
|
16373
16317
|
import { Fragment as Fragment16, jsx as jsx68, jsxs as jsxs60 } from "react/jsx-runtime";
|
|
@@ -16545,7 +16489,6 @@ function ManageWalletMenu() {
|
|
|
16545
16489
|
const config = useProviderConfig().config;
|
|
16546
16490
|
const { t } = useT();
|
|
16547
16491
|
const { open: openEmbarkAI } = useOpenPage();
|
|
16548
|
-
const maxScrollHeight = useLayoutStore((st) => st.maxScrollHeight);
|
|
16549
16492
|
const {
|
|
16550
16493
|
alert: alert2,
|
|
16551
16494
|
providerType,
|
|
@@ -16640,66 +16583,54 @@ function ManageWalletMenu() {
|
|
|
16640
16583
|
const showExtraProvidersUi = !isProvidersLoading && !providersError && (providerType === "email" || providerType === "passkey");
|
|
16641
16584
|
useOnboardingTourAvailable(!showExtraProvidersUi && providerType === null);
|
|
16642
16585
|
const combinedAlertMessage = alert2?.message || providersError?.message || null;
|
|
16643
|
-
return /* @__PURE__ */
|
|
16644
|
-
"div",
|
|
16645
|
-
|
|
16646
|
-
|
|
16647
|
-
|
|
16648
|
-
|
|
16649
|
-
|
|
16650
|
-
|
|
16651
|
-
|
|
16652
|
-
|
|
16653
|
-
|
|
16654
|
-
|
|
16655
|
-
|
|
16656
|
-
|
|
16657
|
-
|
|
16658
|
-
|
|
16659
|
-
|
|
16660
|
-
|
|
16661
|
-
|
|
16662
|
-
|
|
16663
|
-
|
|
16664
|
-
|
|
16665
|
-
|
|
16666
|
-
|
|
16667
|
-
|
|
16668
|
-
|
|
16669
|
-
|
|
16670
|
-
|
|
16671
|
-
|
|
16672
|
-
|
|
16673
|
-
|
|
16674
|
-
|
|
16675
|
-
|
|
16676
|
-
|
|
16677
|
-
|
|
16678
|
-
|
|
16586
|
+
return /* @__PURE__ */ jsxs61(Expandable, { isExpanded: true, contentClassName: "flex flex-col gap-[var(--ui-kit-gap)]", children: [
|
|
16587
|
+
/* @__PURE__ */ jsxs61("div", { className: "flex items-center gap-[var(--ui-kit-gap)] w-full justify-between", children: [
|
|
16588
|
+
/* @__PURE__ */ jsxs61("div", { className: "flex items-center gap-[var(--ui-kit-gap)]", children: [
|
|
16589
|
+
/* @__PURE__ */ jsx69(
|
|
16590
|
+
Button,
|
|
16591
|
+
{
|
|
16592
|
+
variant: "ghost",
|
|
16593
|
+
size: "icon",
|
|
16594
|
+
title: t("passport:common.back"),
|
|
16595
|
+
disabled: linkIsLoading,
|
|
16596
|
+
onClick: () => {
|
|
16597
|
+
setAlert(null);
|
|
16598
|
+
if (providerType === "email") {
|
|
16599
|
+
setEmail("");
|
|
16600
|
+
setEmailCode("");
|
|
16601
|
+
setEmailStep("input");
|
|
16602
|
+
setEmailCodeExpiresAt(0);
|
|
16603
|
+
}
|
|
16604
|
+
if (!providerType) useLayoutDataStore.getState().setPage("settings" /* SETTINGS */);
|
|
16605
|
+
setProviderType(null);
|
|
16606
|
+
},
|
|
16607
|
+
children: /* @__PURE__ */ jsx69(ArrowLeft6, { className: "h-4 w-4" })
|
|
16608
|
+
}
|
|
16609
|
+
),
|
|
16610
|
+
/* @__PURE__ */ jsx69("span", { className: "text-xl font-semibold", children: t("passport:profilesMenu.title") })
|
|
16611
|
+
] }),
|
|
16612
|
+
linkIsLoading && /* @__PURE__ */ jsx69(LoaderIcon8, { className: "w-4 h-4 animate-spin text-[var(--ui-kit-fg-muted)]" })
|
|
16613
|
+
] }),
|
|
16614
|
+
isProvidersLoading && /* @__PURE__ */ jsx69("div", { className: "flex items-center justify-center p-4 text-[var(--ui-kit-fg-muted)]", children: /* @__PURE__ */ jsx69(Loader9, { className: "w-4 h-4 animate-spin" }) }),
|
|
16615
|
+
/* @__PURE__ */ jsx69(EmailNotConnectedWarning, {}),
|
|
16616
|
+
showCurrentProviders && renderProviders.map((node) => node),
|
|
16617
|
+
showExtraProvidersUi && /* @__PURE__ */ jsx69(AddProvider, {}),
|
|
16618
|
+
combinedAlertMessage && /* @__PURE__ */ jsxs61(Highlight, { type: "error", children: [
|
|
16619
|
+
/* @__PURE__ */ jsxs61("div", { className: "break-words whitespace-pre-wrap mb-4", children: [
|
|
16620
|
+
alert2?.title && /* @__PURE__ */ jsxs61(Fragment17, { children: [
|
|
16621
|
+
/* @__PURE__ */ jsx69("strong", { children: alert2.title }),
|
|
16622
|
+
/* @__PURE__ */ jsx69("br", {})
|
|
16679
16623
|
] }),
|
|
16680
|
-
|
|
16681
|
-
|
|
16682
|
-
|
|
16683
|
-
|
|
16684
|
-
|
|
16685
|
-
/* @__PURE__ */ jsxs61("div", { className: "break-words whitespace-pre-wrap mb-4", children: [
|
|
16686
|
-
alert2?.title && /* @__PURE__ */ jsxs61(Fragment17, { children: [
|
|
16687
|
-
/* @__PURE__ */ jsx69("strong", { children: alert2.title }),
|
|
16688
|
-
/* @__PURE__ */ jsx69("br", {})
|
|
16689
|
-
] }),
|
|
16690
|
-
combinedAlertMessage
|
|
16691
|
-
] }),
|
|
16692
|
-
/* @__PURE__ */ jsx69(Button, { variant: "default", size: "medium", className: "w-full", onClick: () => setAlert(null), children: t("passport:common.hide") })
|
|
16693
|
-
] })
|
|
16694
|
-
] })
|
|
16695
|
-
}
|
|
16696
|
-
);
|
|
16624
|
+
combinedAlertMessage
|
|
16625
|
+
] }),
|
|
16626
|
+
/* @__PURE__ */ jsx69(Button, { variant: "default", size: "medium", className: "w-full", onClick: () => setAlert(null), children: t("passport:common.hide") })
|
|
16627
|
+
] })
|
|
16628
|
+
] });
|
|
16697
16629
|
}
|
|
16698
16630
|
var POSSIBLE_PROVIDERS, MULTI_PROVIDERS;
|
|
16699
16631
|
var init_ManageWallet = __esm({
|
|
16700
16632
|
"src/internal/components/ManageWalletMenu/ManageWallet.tsx"() {
|
|
16701
16633
|
init_useLayoutDataStore();
|
|
16702
|
-
init_useLayoutStore();
|
|
16703
16634
|
init_ProviderContext();
|
|
16704
16635
|
init_useOpenPage();
|
|
16705
16636
|
init_i18n();
|
|
@@ -16842,6 +16773,21 @@ var init_UnlinkProviderMenu = __esm({
|
|
|
16842
16773
|
}
|
|
16843
16774
|
});
|
|
16844
16775
|
|
|
16776
|
+
// src/internal/components/ManageWalletMenu/onboarding.setup.ts
|
|
16777
|
+
var MANAGE_WALLET_MENU_TOUR;
|
|
16778
|
+
var init_onboarding_setup3 = __esm({
|
|
16779
|
+
"src/internal/components/ManageWalletMenu/onboarding.setup.ts"() {
|
|
16780
|
+
init_constants();
|
|
16781
|
+
MANAGE_WALLET_MENU_TOUR = [
|
|
16782
|
+
{
|
|
16783
|
+
elId: `${EMBARKAI_DIALOG_ONBOARDING_ID}-${"manage-wallet" /* MANAGE_WALLET */}`,
|
|
16784
|
+
title: "passport:profilesMenu.onboarding.profilesMenu.title",
|
|
16785
|
+
description: "passport:profilesMenu.onboarding.profilesMenu.description"
|
|
16786
|
+
}
|
|
16787
|
+
];
|
|
16788
|
+
}
|
|
16789
|
+
});
|
|
16790
|
+
|
|
16845
16791
|
// src/internal/components/ManageWalletMenu/index.ts
|
|
16846
16792
|
var init_ManageWalletMenu = __esm({
|
|
16847
16793
|
"src/internal/components/ManageWalletMenu/index.ts"() {
|
|
@@ -16896,7 +16842,6 @@ function ConnectExternalWalletMenu() {
|
|
|
16896
16842
|
const { isConnected: isExternalWalletConnected } = useConnection();
|
|
16897
16843
|
const { mutate: disconnect } = useDisconnect2();
|
|
16898
16844
|
const { mutateAsync: signMessageAsync } = useSignMessage();
|
|
16899
|
-
const maxScrollHeight = useLayoutStore((st) => st.maxScrollHeight);
|
|
16900
16845
|
const walletMenuOpenedFrom = useLayoutDataStore((st) => st.walletMenuOpenedFrom);
|
|
16901
16846
|
const { data: providers = [] } = useQuery8({
|
|
16902
16847
|
retry: false,
|
|
@@ -17112,69 +17057,59 @@ function ConnectExternalWalletMenu() {
|
|
|
17112
17057
|
return t("passport:connectMenu.instructions.confirm");
|
|
17113
17058
|
}
|
|
17114
17059
|
}, [embarkAiAddress, t]);
|
|
17115
|
-
return /* @__PURE__ */
|
|
17116
|
-
"div",
|
|
17117
|
-
|
|
17118
|
-
|
|
17119
|
-
|
|
17120
|
-
|
|
17121
|
-
|
|
17122
|
-
|
|
17123
|
-
|
|
17124
|
-
|
|
17125
|
-
/* @__PURE__ */ jsx71(
|
|
17126
|
-
|
|
17127
|
-
|
|
17128
|
-
|
|
17129
|
-
|
|
17130
|
-
|
|
17131
|
-
|
|
17132
|
-
|
|
17133
|
-
|
|
17060
|
+
return /* @__PURE__ */ jsxs63(Expandable, { isExpanded: true, contentClassName: "flex flex-col gap-[var(--ui-kit-gap)]", children: [
|
|
17061
|
+
/* @__PURE__ */ jsxs63("div", { className: "flex items-center gap-[var(--ui-kit-gap)]", children: [
|
|
17062
|
+
/* @__PURE__ */ jsx71(
|
|
17063
|
+
Button,
|
|
17064
|
+
{
|
|
17065
|
+
variant: "ghost",
|
|
17066
|
+
size: "icon",
|
|
17067
|
+
title: t("passport:common.back"),
|
|
17068
|
+
disabled: isConnectingExternalWallet || isLoginOrLinkOrConnectWallet,
|
|
17069
|
+
onClick: () => useLayoutDataStore.getState().setPage(walletMenuOpenedFrom ?? "main-menu" /* MAIN_MENU */),
|
|
17070
|
+
children: /* @__PURE__ */ jsx71(ArrowLeft7, { className: "h-4 w-4" })
|
|
17071
|
+
}
|
|
17072
|
+
),
|
|
17073
|
+
/* @__PURE__ */ jsx71("span", { className: "text-xl font-semibold", children: t("passport:connectMenu.connectWallet") })
|
|
17074
|
+
] }),
|
|
17075
|
+
visibleConnectors.map((connector) => {
|
|
17076
|
+
const isConnectingThis = isConnectingExternalWallet && //@ts-expect-error uid exists
|
|
17077
|
+
pendingConnectVariables?.connector?.uid === connector.uid;
|
|
17078
|
+
const WalletIcon = WALLET_ICONS[connector.id] || Wallet2Icon2;
|
|
17079
|
+
return /* @__PURE__ */ jsxs63(
|
|
17080
|
+
Button,
|
|
17081
|
+
{
|
|
17082
|
+
variant: "secondary",
|
|
17083
|
+
size: "large",
|
|
17084
|
+
className: "w-full justify-center",
|
|
17085
|
+
disabled: isConnectingExternalWallet,
|
|
17086
|
+
onClick: async () => {
|
|
17087
|
+
if (isExternalWalletConnected) {
|
|
17088
|
+
disconnect();
|
|
17089
|
+
await new Promise((resolve) => setTimeout(resolve, 500));
|
|
17134
17090
|
}
|
|
17135
|
-
|
|
17136
|
-
|
|
17137
|
-
|
|
17138
|
-
|
|
17139
|
-
|
|
17140
|
-
|
|
17141
|
-
|
|
17142
|
-
|
|
17143
|
-
|
|
17144
|
-
|
|
17145
|
-
|
|
17146
|
-
|
|
17147
|
-
|
|
17148
|
-
|
|
17149
|
-
|
|
17150
|
-
|
|
17151
|
-
|
|
17152
|
-
|
|
17153
|
-
|
|
17154
|
-
|
|
17155
|
-
|
|
17156
|
-
|
|
17157
|
-
children: [
|
|
17158
|
-
isConnectingThis ? /* @__PURE__ */ jsx71("div", { className: "w-6 h-6 flex-none flex items-center justify-center", children: /* @__PURE__ */ jsx71(Loader11, { className: "w-4 h-4 animate-spin" }) }) : /* @__PURE__ */ jsx71(WalletIcon, { className: "w-6 h-6 flex-none" }),
|
|
17159
|
-
/* @__PURE__ */ jsx71("span", { children: connector.name })
|
|
17160
|
-
]
|
|
17161
|
-
},
|
|
17162
|
-
connector.uid
|
|
17163
|
-
);
|
|
17164
|
-
}),
|
|
17165
|
-
isConnectingExternalWallet && !!pendingConnectVariables?.connector && /* @__PURE__ */ jsx71(Highlight, {
|
|
17166
|
-
type: "warning",
|
|
17167
|
-
// @ts-expect-error i18n typing
|
|
17168
|
-
children: t("passport:connectMenu.instructions.follow", {
|
|
17169
|
-
wallet: pendingConnectVariables.connector.name,
|
|
17170
|
-
steps: getInstructionSteps()
|
|
17171
|
-
})
|
|
17172
|
-
}),
|
|
17173
|
-
visibleConnectors.length === 0 && /* @__PURE__ */ jsx71(Highlight, { type: "info", children: t("passport:connectMenu.noWallets") }),
|
|
17174
|
-
error && /* @__PURE__ */ jsx71(Highlight, { type: "error", children: error.message })
|
|
17175
|
-
] })
|
|
17176
|
-
}
|
|
17177
|
-
);
|
|
17091
|
+
useLayoutStore.getState().setIsDialogForced(true);
|
|
17092
|
+
connect({ connector });
|
|
17093
|
+
},
|
|
17094
|
+
children: [
|
|
17095
|
+
isConnectingThis ? /* @__PURE__ */ jsx71("div", { className: "w-6 h-6 flex-none flex items-center justify-center", children: /* @__PURE__ */ jsx71(Loader11, { className: "w-4 h-4 animate-spin" }) }) : /* @__PURE__ */ jsx71(WalletIcon, { className: "w-6 h-6 flex-none" }),
|
|
17096
|
+
/* @__PURE__ */ jsx71("span", { children: connector.name })
|
|
17097
|
+
]
|
|
17098
|
+
},
|
|
17099
|
+
connector.uid
|
|
17100
|
+
);
|
|
17101
|
+
}),
|
|
17102
|
+
isConnectingExternalWallet && !!pendingConnectVariables?.connector && /* @__PURE__ */ jsx71(Highlight, {
|
|
17103
|
+
type: "warning",
|
|
17104
|
+
// @ts-expect-error i18n typing
|
|
17105
|
+
children: t("passport:connectMenu.instructions.follow", {
|
|
17106
|
+
wallet: pendingConnectVariables.connector.name,
|
|
17107
|
+
steps: getInstructionSteps()
|
|
17108
|
+
})
|
|
17109
|
+
}),
|
|
17110
|
+
visibleConnectors.length === 0 && /* @__PURE__ */ jsx71(Highlight, { type: "info", children: t("passport:connectMenu.noWallets") }),
|
|
17111
|
+
error && /* @__PURE__ */ jsx71(Highlight, { type: "error", children: error.message })
|
|
17112
|
+
] });
|
|
17178
17113
|
}
|
|
17179
17114
|
var init_ConnectExternalWalletMenu = __esm({
|
|
17180
17115
|
"src/internal/components/ConnectExternalWalletMenu/ConnectExternalWalletMenu.tsx"() {
|
|
@@ -17330,8 +17265,8 @@ var init_devices = __esm({
|
|
|
17330
17265
|
});
|
|
17331
17266
|
|
|
17332
17267
|
// src/internal/components/DevicesMenu/DeviceLinkScreen.tsx
|
|
17333
|
-
import { useState as useState14 } from "react";
|
|
17334
17268
|
import { ArrowLeft as ArrowLeft8, Loader2 as Loader22 } from "lucide-react";
|
|
17269
|
+
import { useState as useState14 } from "react";
|
|
17335
17270
|
import { jsx as jsx72, jsxs as jsxs64 } from "react/jsx-runtime";
|
|
17336
17271
|
function getErrorMessage(err) {
|
|
17337
17272
|
const code = err?.code;
|
|
@@ -17350,7 +17285,6 @@ function getErrorMessage(err) {
|
|
|
17350
17285
|
}
|
|
17351
17286
|
function DeviceLinkScreen() {
|
|
17352
17287
|
const setPage = useLayoutDataStore((s) => s.setPage);
|
|
17353
|
-
const maxScrollHeight = useLayoutStore((s) => s.maxScrollHeight);
|
|
17354
17288
|
const { mutate: link, isPending } = useLinkDevice();
|
|
17355
17289
|
const [code, setCode] = useState14("");
|
|
17356
17290
|
const [error, setError] = useState14(null);
|
|
@@ -17372,54 +17306,36 @@ function DeviceLinkScreen() {
|
|
|
17372
17306
|
}
|
|
17373
17307
|
});
|
|
17374
17308
|
}
|
|
17375
|
-
return /* @__PURE__ */
|
|
17376
|
-
"div",
|
|
17377
|
-
|
|
17378
|
-
|
|
17379
|
-
|
|
17380
|
-
|
|
17381
|
-
|
|
17382
|
-
|
|
17383
|
-
|
|
17384
|
-
|
|
17385
|
-
|
|
17386
|
-
|
|
17387
|
-
|
|
17388
|
-
|
|
17389
|
-
|
|
17390
|
-
|
|
17391
|
-
|
|
17392
|
-
|
|
17393
|
-
|
|
17394
|
-
|
|
17395
|
-
|
|
17396
|
-
|
|
17397
|
-
}
|
|
17398
|
-
),
|
|
17399
|
-
error && /* @__PURE__ */ jsx72("p", { className: "text-sm text-[var(--ui-kit-bg-error)]", children: error }),
|
|
17400
|
-
/* @__PURE__ */ jsx72(
|
|
17401
|
-
Button,
|
|
17402
|
-
{
|
|
17403
|
-
variant: "default",
|
|
17404
|
-
size: "large",
|
|
17405
|
-
className: "w-full",
|
|
17406
|
-
disabled: !isValid || isPending,
|
|
17407
|
-
onClick: handleLink,
|
|
17408
|
-
children: isPending ? /* @__PURE__ */ jsx72(Loader22, { className: "w-4 h-4 animate-spin" }) : "Link"
|
|
17409
|
-
}
|
|
17410
|
-
)
|
|
17411
|
-
] })
|
|
17412
|
-
}
|
|
17413
|
-
);
|
|
17309
|
+
return /* @__PURE__ */ jsxs64(Expandable, { isExpanded: true, contentClassName: "w-full flex flex-col gap-[var(--ui-kit-gap)]", children: [
|
|
17310
|
+
/* @__PURE__ */ jsxs64("div", { className: "flex items-center gap-[var(--ui-kit-gap)]", children: [
|
|
17311
|
+
/* @__PURE__ */ jsx72(Button, { variant: "ghost", size: "icon", onClick: () => setPage("devices" /* DEVICES */), children: /* @__PURE__ */ jsx72(ArrowLeft8, { className: "h-4 w-4 flex-none" }) }),
|
|
17312
|
+
/* @__PURE__ */ jsx72("span", { className: "text-xl font-semibold", children: "Link Device" })
|
|
17313
|
+
] }),
|
|
17314
|
+
/* @__PURE__ */ jsx72("p", { className: "text-sm text-[var(--ui-kit-fg-muted)]", children: "On your device: Long press to link smart wallet. Then enter the 6-character code shown on screen." }),
|
|
17315
|
+
/* @__PURE__ */ jsx72(
|
|
17316
|
+
"input",
|
|
17317
|
+
{
|
|
17318
|
+
type: "text",
|
|
17319
|
+
value: code,
|
|
17320
|
+
onChange: (e) => handleCodeChange(e.target.value),
|
|
17321
|
+
onKeyDown: (e) => e.key === "Enter" && handleLink(),
|
|
17322
|
+
placeholder: "XXXXXX",
|
|
17323
|
+
autoFocus: true,
|
|
17324
|
+
maxLength: 6,
|
|
17325
|
+
className: "w-full text-center text-2xl tracking-[0.3em] font-mono px-4 py-3 rounded-lg\n bg-[var(--ui-kit-bg)] text-[var(--ui-kit-fg)]\n border border-[var(--ui-kit-bd)] focus:outline-none focus:border-[var(--ui-kit-primary)]\n uppercase"
|
|
17326
|
+
}
|
|
17327
|
+
),
|
|
17328
|
+
error && /* @__PURE__ */ jsx72("p", { className: "text-sm text-[var(--ui-kit-bg-error)]", children: error }),
|
|
17329
|
+
/* @__PURE__ */ jsx72(Button, { variant: "default", size: "large", className: "w-full", disabled: !isValid || isPending, onClick: handleLink, children: isPending ? /* @__PURE__ */ jsx72(Loader22, { className: "w-4 h-4 animate-spin" }) : "Link" })
|
|
17330
|
+
] });
|
|
17414
17331
|
}
|
|
17415
17332
|
var VALID_CHARS;
|
|
17416
17333
|
var init_DeviceLinkScreen = __esm({
|
|
17417
17334
|
"src/internal/components/DevicesMenu/DeviceLinkScreen.tsx"() {
|
|
17335
|
+
init_devices();
|
|
17336
|
+
init_useLayoutDataStore();
|
|
17418
17337
|
init_Expandable2();
|
|
17419
17338
|
init_button();
|
|
17420
|
-
init_useLayoutDataStore();
|
|
17421
|
-
init_useLayoutStore();
|
|
17422
|
-
init_devices();
|
|
17423
17339
|
VALID_CHARS = /^[A-HJ-NP-Z2-9]*$/;
|
|
17424
17340
|
}
|
|
17425
17341
|
});
|
|
@@ -17942,8 +17858,8 @@ var init_guardian_backup = __esm({
|
|
|
17942
17858
|
});
|
|
17943
17859
|
|
|
17944
17860
|
// src/internal/components/DevicesMenu/DeviceManageScreen.tsx
|
|
17945
|
-
import { useCallback as useCallback19, useEffect as useEffect25, useRef as useRef14, useState as useState15 } from "react";
|
|
17946
17861
|
import { ArrowLeft as ArrowLeft9, Cpu, Download, HardDrive, Loader2 as Loader23, Trash2, Upload } from "lucide-react";
|
|
17862
|
+
import { useCallback as useCallback19, useEffect as useEffect25, useRef as useRef14, useState as useState15 } from "react";
|
|
17947
17863
|
import { Fragment as Fragment18, jsx as jsx73, jsxs as jsxs65 } from "react/jsx-runtime";
|
|
17948
17864
|
function formatSize(bytes) {
|
|
17949
17865
|
if (bytes < 1024) return `${bytes} B`;
|
|
@@ -17952,7 +17868,6 @@ function formatSize(bytes) {
|
|
|
17952
17868
|
function DeviceManageScreen() {
|
|
17953
17869
|
const setPage = useLayoutDataStore((s) => s.setPage);
|
|
17954
17870
|
const pageParams = useLayoutDataStore((s) => s.pageParams);
|
|
17955
|
-
const maxScrollHeight = useLayoutStore((s) => s.maxScrollHeight);
|
|
17956
17871
|
const session = useSession((st) => st.session);
|
|
17957
17872
|
const userId = session?.mpcUserId || "";
|
|
17958
17873
|
const deviceId = pageParams?.deviceId;
|
|
@@ -18054,193 +17969,211 @@ function DeviceManageScreen() {
|
|
|
18054
17969
|
setActionState(null);
|
|
18055
17970
|
}
|
|
18056
17971
|
}, [password, userId, refreshList]);
|
|
18057
|
-
const handleDelete = useCallback19(
|
|
18058
|
-
|
|
18059
|
-
|
|
18060
|
-
|
|
18061
|
-
|
|
18062
|
-
|
|
18063
|
-
|
|
18064
|
-
|
|
18065
|
-
|
|
18066
|
-
|
|
18067
|
-
|
|
18068
|
-
|
|
18069
|
-
|
|
18070
|
-
|
|
18071
|
-
|
|
18072
|
-
|
|
18073
|
-
|
|
18074
|
-
|
|
17972
|
+
const handleDelete = useCallback19(
|
|
17973
|
+
async (keyshareId) => {
|
|
17974
|
+
const guardian = guardianRef.current;
|
|
17975
|
+
if (!guardian) return;
|
|
17976
|
+
setActionState({ action: "delete", keyshareId, substep: "confirm-device" });
|
|
17977
|
+
setErrorMessage(null);
|
|
17978
|
+
setWaitingConfirm(true);
|
|
17979
|
+
try {
|
|
17980
|
+
await deleteFromGuardian(guardian, keyshareId);
|
|
17981
|
+
setWaitingConfirm(false);
|
|
17982
|
+
setStatusMessage("Keyshare deleted.");
|
|
17983
|
+
setActionState(null);
|
|
17984
|
+
await refreshList();
|
|
17985
|
+
} catch (err) {
|
|
17986
|
+
setWaitingConfirm(false);
|
|
17987
|
+
setErrorMessage(err.message);
|
|
17988
|
+
setActionState(null);
|
|
17989
|
+
}
|
|
17990
|
+
},
|
|
17991
|
+
[refreshList]
|
|
17992
|
+
);
|
|
18075
17993
|
const isWorking = actionState?.substep === "working" || actionState?.substep === "confirm-device";
|
|
18076
|
-
return /* @__PURE__ */
|
|
18077
|
-
"div",
|
|
18078
|
-
|
|
18079
|
-
|
|
18080
|
-
|
|
18081
|
-
|
|
18082
|
-
|
|
18083
|
-
|
|
17994
|
+
return /* @__PURE__ */ jsxs65(Expandable, { isExpanded: true, contentClassName: "w-full flex flex-col gap-[var(--ui-kit-gap)] p-[var(--ui-kit-pd)]", children: [
|
|
17995
|
+
/* @__PURE__ */ jsxs65("div", { className: "flex items-center gap-[var(--ui-kit-gap)]", children: [
|
|
17996
|
+
/* @__PURE__ */ jsx73(
|
|
17997
|
+
Button,
|
|
17998
|
+
{
|
|
17999
|
+
variant: "ghost",
|
|
18000
|
+
size: "icon",
|
|
18001
|
+
onClick: () => {
|
|
18084
18002
|
guardianRef.current?.close();
|
|
18085
18003
|
setPage("devices" /* DEVICES */);
|
|
18086
|
-
},
|
|
18087
|
-
/* @__PURE__ */ jsx73(
|
|
18088
|
-
|
|
18089
|
-
|
|
18090
|
-
|
|
18091
|
-
|
|
18092
|
-
|
|
18093
|
-
|
|
18094
|
-
|
|
18095
|
-
|
|
18096
|
-
|
|
18004
|
+
},
|
|
18005
|
+
children: /* @__PURE__ */ jsx73(ArrowLeft9, { className: "h-4 w-4 flex-none" })
|
|
18006
|
+
}
|
|
18007
|
+
),
|
|
18008
|
+
/* @__PURE__ */ jsx73(HardDrive, { className: "h-5 w-5 flex-none" }),
|
|
18009
|
+
/* @__PURE__ */ jsx73("span", { className: "text-xl font-semibold", children: deviceName || "Guardian" }),
|
|
18010
|
+
screen.step === "connected" && /* @__PURE__ */ jsxs65("span", { className: "text-xs text-[var(--ui-kit-fg-muted)] ml-auto", children: [
|
|
18011
|
+
"v",
|
|
18012
|
+
screen.info.fwVer
|
|
18013
|
+
] })
|
|
18014
|
+
] }),
|
|
18015
|
+
waitingConfirm && /* @__PURE__ */ jsxs65("div", { className: "flex items-center gap-2 p-3 rounded-lg bg-[var(--ui-kit-bg)] text-sm animate-pulse", children: [
|
|
18016
|
+
/* @__PURE__ */ jsx73(Loader23, { className: "w-4 h-4 animate-spin" }),
|
|
18017
|
+
/* @__PURE__ */ jsx73("span", { children: "Confirm on your device..." })
|
|
18018
|
+
] }),
|
|
18019
|
+
statusMessage && /* @__PURE__ */ jsx73("div", { className: "text-sm text-green-500 p-2", children: statusMessage }),
|
|
18020
|
+
errorMessage && /* @__PURE__ */ jsx73("div", { className: "text-sm text-[var(--ui-kit-bg-error)] p-2", children: errorMessage }),
|
|
18021
|
+
screen.step === "connecting" && /* @__PURE__ */ jsx73("div", { className: "flex justify-center py-8", children: /* @__PURE__ */ jsx73(Loader23, { className: "w-6 h-6 animate-spin text-[var(--ui-kit-fg-muted)]" }) }),
|
|
18022
|
+
screen.step === "error" && /* @__PURE__ */ jsx73("div", { className: "text-sm text-[var(--ui-kit-bg-error)] text-center py-8", children: screen.message }),
|
|
18023
|
+
screen.step === "new-device" && /* @__PURE__ */ jsxs65("div", { className: "flex flex-col items-center gap-4 py-8", children: [
|
|
18024
|
+
/* @__PURE__ */ jsx73(Cpu, { className: "w-10 h-10 text-[var(--ui-kit-fg-muted)]" }),
|
|
18025
|
+
/* @__PURE__ */ jsxs65("div", { className: "text-center", children: [
|
|
18026
|
+
/* @__PURE__ */ jsx73("p", { className: "text-sm font-semibold", children: "New device detected" }),
|
|
18027
|
+
/* @__PURE__ */ jsxs65("p", { className: "text-xs text-[var(--ui-kit-fg-muted)] mt-1", children: [
|
|
18028
|
+
screen.info.deviceId,
|
|
18029
|
+
" \xB7 v",
|
|
18030
|
+
screen.info.fwVer
|
|
18031
|
+
] })
|
|
18032
|
+
] }),
|
|
18033
|
+
/* @__PURE__ */ jsx73(
|
|
18034
|
+
Button,
|
|
18035
|
+
{
|
|
18036
|
+
variant: "default",
|
|
18037
|
+
size: "large",
|
|
18038
|
+
className: "w-full",
|
|
18039
|
+
onClick: () => {
|
|
18040
|
+
setPage("device-link" /* DEVICE_LINK */);
|
|
18041
|
+
},
|
|
18042
|
+
children: "Link Device"
|
|
18043
|
+
}
|
|
18044
|
+
)
|
|
18045
|
+
] }),
|
|
18046
|
+
screen.step === "connected" && /* @__PURE__ */ jsxs65(Fragment18, { children: [
|
|
18047
|
+
screen.keyshares.length === 0 && /* @__PURE__ */ jsx73("div", { className: "text-sm text-[var(--ui-kit-fg-muted)] text-center py-4", children: "No keyshares stored on this device" }),
|
|
18048
|
+
screen.keyshares.length > 0 && /* @__PURE__ */ jsxs65("div", { className: "text-xs text-[var(--ui-kit-fg-muted)] text-right", children: [
|
|
18049
|
+
screen.keyshares.length,
|
|
18050
|
+
" keyshare",
|
|
18051
|
+
screen.keyshares.length > 1 ? "s" : "",
|
|
18052
|
+
" \xB7",
|
|
18053
|
+
" ",
|
|
18054
|
+
formatSize(screen.keyshares.reduce((s, e) => s + e.size, 0))
|
|
18055
|
+
] }),
|
|
18056
|
+
screen.keyshares.map(({ id, size }) => /* @__PURE__ */ jsxs65("div", { className: "flex items-center gap-3 p-3 rounded-lg bg-[var(--ui-kit-bg)]", children: [
|
|
18057
|
+
/* @__PURE__ */ jsx73(Cpu, { className: "w-5 h-5 text-[var(--ui-kit-fg-muted)] shrink-0" }),
|
|
18058
|
+
/* @__PURE__ */ jsxs65("div", { className: "flex-1 min-w-0", children: [
|
|
18059
|
+
/* @__PURE__ */ jsx73("span", { className: "text-sm font-mono truncate block text-[var(--ui-kit-fg)]", children: id }),
|
|
18060
|
+
/* @__PURE__ */ jsx73("span", { className: "text-xs text-[var(--ui-kit-fg-muted)]", children: formatSize(size) })
|
|
18097
18061
|
] }),
|
|
18098
|
-
|
|
18099
|
-
|
|
18100
|
-
|
|
18101
|
-
|
|
18102
|
-
|
|
18103
|
-
|
|
18104
|
-
|
|
18105
|
-
|
|
18106
|
-
|
|
18107
|
-
|
|
18108
|
-
"
|
|
18109
|
-
|
|
18110
|
-
|
|
18111
|
-
|
|
18062
|
+
/* @__PURE__ */ jsx73(
|
|
18063
|
+
Button,
|
|
18064
|
+
{
|
|
18065
|
+
variant: "ghost",
|
|
18066
|
+
size: "icon",
|
|
18067
|
+
disabled: isWorking,
|
|
18068
|
+
onClick: () => {
|
|
18069
|
+
guardianRef.current?.close();
|
|
18070
|
+
const store = useLayoutDataStore.getState();
|
|
18071
|
+
store.setPageParams({ key: "device-restore" /* DEVICE_RESTORE */, keyshareId: id, deviceId, deviceName });
|
|
18072
|
+
store.setPage("device-restore" /* DEVICE_RESTORE */);
|
|
18073
|
+
},
|
|
18074
|
+
title: "Restore",
|
|
18075
|
+
children: /* @__PURE__ */ jsx73(Download, { className: "w-4 h-4" })
|
|
18076
|
+
}
|
|
18077
|
+
),
|
|
18078
|
+
/* @__PURE__ */ jsx73(
|
|
18079
|
+
Button,
|
|
18080
|
+
{
|
|
18081
|
+
variant: "ghost",
|
|
18082
|
+
size: "icon",
|
|
18083
|
+
disabled: isWorking,
|
|
18084
|
+
onClick: () => handleDelete(id),
|
|
18085
|
+
title: "Delete",
|
|
18086
|
+
className: "text-[var(--ui-kit-bg-error)]",
|
|
18087
|
+
children: /* @__PURE__ */ jsx73(Trash2, { className: "w-4 h-4" })
|
|
18088
|
+
}
|
|
18089
|
+
)
|
|
18090
|
+
] }, id)),
|
|
18091
|
+
actionState?.action === "overwrite" && actionState.substep === "confirm" && /* @__PURE__ */ jsxs65("div", { className: "flex items-center justify-between gap-2 p-3 rounded-lg bg-[var(--ui-kit-bg)]", children: [
|
|
18092
|
+
/* @__PURE__ */ jsx73("span", { className: "text-sm", children: "Keyshare exists. Overwrite? (requires button press on device)" }),
|
|
18093
|
+
/* @__PURE__ */ jsxs65("div", { className: "flex gap-2", children: [
|
|
18112
18094
|
/* @__PURE__ */ jsx73(
|
|
18113
18095
|
Button,
|
|
18114
18096
|
{
|
|
18115
|
-
variant: "
|
|
18116
|
-
size: "
|
|
18117
|
-
className: "w-full",
|
|
18097
|
+
variant: "ghost",
|
|
18098
|
+
size: "small",
|
|
18118
18099
|
onClick: () => {
|
|
18119
|
-
setPage("device-link" /* DEVICE_LINK */);
|
|
18120
|
-
},
|
|
18121
|
-
children: "Link Device"
|
|
18122
|
-
}
|
|
18123
|
-
)
|
|
18124
|
-
] }),
|
|
18125
|
-
screen.step === "connected" && /* @__PURE__ */ jsxs65(Fragment18, { children: [
|
|
18126
|
-
screen.keyshares.length === 0 && /* @__PURE__ */ jsx73("div", { className: "text-sm text-[var(--ui-kit-fg-muted)] text-center py-4", children: "No keyshares stored on this device" }),
|
|
18127
|
-
screen.keyshares.length > 0 && /* @__PURE__ */ jsxs65("div", { className: "text-xs text-[var(--ui-kit-fg-muted)] text-right", children: [
|
|
18128
|
-
screen.keyshares.length,
|
|
18129
|
-
" keyshare",
|
|
18130
|
-
screen.keyshares.length > 1 ? "s" : "",
|
|
18131
|
-
" \xB7 ",
|
|
18132
|
-
formatSize(screen.keyshares.reduce((s, e) => s + e.size, 0))
|
|
18133
|
-
] }),
|
|
18134
|
-
screen.keyshares.map(({ id, size }) => /* @__PURE__ */ jsxs65("div", { className: "flex items-center gap-3 p-3 rounded-lg bg-[var(--ui-kit-bg)]", children: [
|
|
18135
|
-
/* @__PURE__ */ jsx73(Cpu, { className: "w-5 h-5 text-[var(--ui-kit-fg-muted)] shrink-0" }),
|
|
18136
|
-
/* @__PURE__ */ jsxs65("div", { className: "flex-1 min-w-0", children: [
|
|
18137
|
-
/* @__PURE__ */ jsx73("span", { className: "text-sm font-mono truncate block text-[var(--ui-kit-fg)]", children: id }),
|
|
18138
|
-
/* @__PURE__ */ jsx73("span", { className: "text-xs text-[var(--ui-kit-fg-muted)]", children: formatSize(size) })
|
|
18139
|
-
] }),
|
|
18140
|
-
/* @__PURE__ */ jsx73(
|
|
18141
|
-
Button,
|
|
18142
|
-
{
|
|
18143
|
-
variant: "ghost",
|
|
18144
|
-
size: "icon",
|
|
18145
|
-
disabled: isWorking,
|
|
18146
|
-
onClick: () => {
|
|
18147
|
-
guardianRef.current?.close();
|
|
18148
|
-
const store = useLayoutDataStore.getState();
|
|
18149
|
-
store.setPageParams({ key: "device-restore" /* DEVICE_RESTORE */, keyshareId: id, deviceId, deviceName });
|
|
18150
|
-
store.setPage("device-restore" /* DEVICE_RESTORE */);
|
|
18151
|
-
},
|
|
18152
|
-
title: "Restore",
|
|
18153
|
-
children: /* @__PURE__ */ jsx73(Download, { className: "w-4 h-4" })
|
|
18154
|
-
}
|
|
18155
|
-
),
|
|
18156
|
-
/* @__PURE__ */ jsx73(
|
|
18157
|
-
Button,
|
|
18158
|
-
{
|
|
18159
|
-
variant: "ghost",
|
|
18160
|
-
size: "icon",
|
|
18161
|
-
disabled: isWorking,
|
|
18162
|
-
onClick: () => handleDelete(id),
|
|
18163
|
-
title: "Delete",
|
|
18164
|
-
className: "text-[var(--ui-kit-bg-error)]",
|
|
18165
|
-
children: /* @__PURE__ */ jsx73(Trash2, { className: "w-4 h-4" })
|
|
18166
|
-
}
|
|
18167
|
-
)
|
|
18168
|
-
] }, id)),
|
|
18169
|
-
actionState?.action === "overwrite" && actionState.substep === "confirm" && /* @__PURE__ */ jsxs65("div", { className: "flex items-center justify-between gap-2 p-3 rounded-lg bg-[var(--ui-kit-bg)]", children: [
|
|
18170
|
-
/* @__PURE__ */ jsx73("span", { className: "text-sm", children: "Keyshare exists. Overwrite? (requires button press on device)" }),
|
|
18171
|
-
/* @__PURE__ */ jsxs65("div", { className: "flex gap-2", children: [
|
|
18172
|
-
/* @__PURE__ */ jsx73(Button, { variant: "ghost", size: "small", onClick: () => {
|
|
18173
18100
|
setActionState(null);
|
|
18174
18101
|
setPassword("");
|
|
18175
|
-
}, children: "Cancel" }),
|
|
18176
|
-
/* @__PURE__ */ jsx73(Button, { variant: "outline", size: "small", onClick: handleOverwrite, children: "Overwrite" })
|
|
18177
|
-
] })
|
|
18178
|
-
] }),
|
|
18179
|
-
actionState?.action === "backup" && actionState.substep === "password" ? /* @__PURE__ */ jsxs65("div", { className: "flex gap-2", children: [
|
|
18180
|
-
/* @__PURE__ */ jsx73(
|
|
18181
|
-
"input",
|
|
18182
|
-
{
|
|
18183
|
-
type: "password",
|
|
18184
|
-
autoComplete: "one-time-code",
|
|
18185
|
-
"data-1p-ignore": true,
|
|
18186
|
-
"data-lpignore": "true",
|
|
18187
|
-
value: password,
|
|
18188
|
-
onChange: (e) => setPassword(e.target.value),
|
|
18189
|
-
onKeyDown: (e) => e.key === "Enter" && password && handleBackup(),
|
|
18190
|
-
placeholder: "Encryption password",
|
|
18191
|
-
className: "flex-1 text-sm px-3 py-2 rounded-lg bg-[var(--ui-kit-bg)] border border-[var(--ui-kit-bd)] text-[var(--ui-kit-fg)] focus:outline-none focus:border-[var(--ui-kit-primary)]",
|
|
18192
|
-
autoFocus: true
|
|
18193
|
-
}
|
|
18194
|
-
),
|
|
18195
|
-
/* @__PURE__ */ jsx73(Button, { variant: "default", disabled: !password, onClick: handleBackup, children: "Backup" }),
|
|
18196
|
-
/* @__PURE__ */ jsx73(Button, { variant: "ghost", onClick: () => {
|
|
18197
|
-
setActionState(null);
|
|
18198
|
-
setPassword("");
|
|
18199
|
-
}, children: "Cancel" })
|
|
18200
|
-
] }) : /* @__PURE__ */ jsxs65(
|
|
18201
|
-
Button,
|
|
18202
|
-
{
|
|
18203
|
-
variant: "default",
|
|
18204
|
-
size: "large",
|
|
18205
|
-
className: "w-full",
|
|
18206
|
-
disabled: isWorking,
|
|
18207
|
-
onClick: () => {
|
|
18208
|
-
setStatusMessage(null);
|
|
18209
|
-
setErrorMessage(null);
|
|
18210
|
-
setActionState({ action: "backup", substep: "password" });
|
|
18211
18102
|
},
|
|
18212
|
-
children:
|
|
18213
|
-
/* @__PURE__ */ jsx73(Upload, { className: "w-4 h-4" }),
|
|
18214
|
-
/* @__PURE__ */ jsx73("span", { children: "Backup Current Keyshare" })
|
|
18215
|
-
]
|
|
18103
|
+
children: "Cancel"
|
|
18216
18104
|
}
|
|
18217
18105
|
),
|
|
18218
|
-
|
|
18106
|
+
/* @__PURE__ */ jsx73(Button, { variant: "outline", size: "small", onClick: handleOverwrite, children: "Overwrite" })
|
|
18219
18107
|
] })
|
|
18220
|
-
] })
|
|
18221
|
-
|
|
18222
|
-
|
|
18108
|
+
] }),
|
|
18109
|
+
actionState?.action === "backup" && actionState.substep === "password" ? /* @__PURE__ */ jsxs65("div", { className: "flex gap-2", children: [
|
|
18110
|
+
/* @__PURE__ */ jsx73(
|
|
18111
|
+
"input",
|
|
18112
|
+
{
|
|
18113
|
+
type: "password",
|
|
18114
|
+
autoComplete: "one-time-code",
|
|
18115
|
+
"data-1p-ignore": true,
|
|
18116
|
+
"data-lpignore": "true",
|
|
18117
|
+
value: password,
|
|
18118
|
+
onChange: (e) => setPassword(e.target.value),
|
|
18119
|
+
onKeyDown: (e) => e.key === "Enter" && password && handleBackup(),
|
|
18120
|
+
placeholder: "Encryption password",
|
|
18121
|
+
className: "flex-1 text-sm px-3 py-2 rounded-lg bg-[var(--ui-kit-bg)] border border-[var(--ui-kit-bd)] text-[var(--ui-kit-fg)] focus:outline-none focus:border-[var(--ui-kit-primary)]",
|
|
18122
|
+
autoFocus: true
|
|
18123
|
+
}
|
|
18124
|
+
),
|
|
18125
|
+
/* @__PURE__ */ jsx73(Button, { variant: "default", disabled: !password, onClick: handleBackup, children: "Backup" }),
|
|
18126
|
+
/* @__PURE__ */ jsx73(
|
|
18127
|
+
Button,
|
|
18128
|
+
{
|
|
18129
|
+
variant: "ghost",
|
|
18130
|
+
onClick: () => {
|
|
18131
|
+
setActionState(null);
|
|
18132
|
+
setPassword("");
|
|
18133
|
+
},
|
|
18134
|
+
children: "Cancel"
|
|
18135
|
+
}
|
|
18136
|
+
)
|
|
18137
|
+
] }) : /* @__PURE__ */ jsxs65(
|
|
18138
|
+
Button,
|
|
18139
|
+
{
|
|
18140
|
+
variant: "default",
|
|
18141
|
+
size: "large",
|
|
18142
|
+
className: "w-full",
|
|
18143
|
+
disabled: isWorking,
|
|
18144
|
+
onClick: () => {
|
|
18145
|
+
setStatusMessage(null);
|
|
18146
|
+
setErrorMessage(null);
|
|
18147
|
+
setActionState({ action: "backup", substep: "password" });
|
|
18148
|
+
},
|
|
18149
|
+
children: [
|
|
18150
|
+
/* @__PURE__ */ jsx73(Upload, { className: "w-4 h-4" }),
|
|
18151
|
+
/* @__PURE__ */ jsx73("span", { children: "Backup Current Keyshare" })
|
|
18152
|
+
]
|
|
18153
|
+
}
|
|
18154
|
+
),
|
|
18155
|
+
actionState?.substep === "working" && /* @__PURE__ */ jsx73("div", { className: "flex justify-center py-2", children: /* @__PURE__ */ jsx73(Loader23, { className: "w-5 h-5 animate-spin" }) })
|
|
18156
|
+
] })
|
|
18157
|
+
] });
|
|
18223
18158
|
}
|
|
18224
18159
|
var init_DeviceManageScreen = __esm({
|
|
18225
18160
|
"src/internal/components/DevicesMenu/DeviceManageScreen.tsx"() {
|
|
18226
|
-
init_Expandable2();
|
|
18227
|
-
init_button();
|
|
18228
|
-
init_useLayoutDataStore();
|
|
18229
|
-
init_useLayoutStore();
|
|
18230
18161
|
init_SessionContext();
|
|
18231
|
-
init_iframe_manager();
|
|
18232
18162
|
init_guardian_backup();
|
|
18163
|
+
init_useLayoutDataStore();
|
|
18164
|
+
init_iframe_manager();
|
|
18165
|
+
init_Expandable2();
|
|
18166
|
+
init_button();
|
|
18233
18167
|
}
|
|
18234
18168
|
});
|
|
18235
18169
|
|
|
18236
18170
|
// src/internal/components/DevicesMenu/DeviceRestoreScreen.tsx
|
|
18237
|
-
import { useCallback as useCallback20, useState as useState16 } from "react";
|
|
18238
18171
|
import { AlertTriangle as AlertTriangle2, ArrowLeft as ArrowLeft10, Download as Download2, Loader2 as Loader24 } from "lucide-react";
|
|
18172
|
+
import { useCallback as useCallback20, useState as useState16 } from "react";
|
|
18239
18173
|
import { Fragment as Fragment19, jsx as jsx74, jsxs as jsxs66 } from "react/jsx-runtime";
|
|
18240
18174
|
function DeviceRestoreScreen() {
|
|
18241
18175
|
const setPage = useLayoutDataStore((s) => s.setPage);
|
|
18242
18176
|
const pageParams = useLayoutDataStore((s) => s.pageParams);
|
|
18243
|
-
const maxScrollHeight = useLayoutStore((s) => s.maxScrollHeight);
|
|
18244
18177
|
const session = useSession((st) => st.session);
|
|
18245
18178
|
const userId = session?.mpcUserId || "";
|
|
18246
18179
|
const keyshareId = pageParams?.keyshareId;
|
|
@@ -18276,82 +18209,74 @@ function DeviceRestoreScreen() {
|
|
|
18276
18209
|
setIsWorking(false);
|
|
18277
18210
|
}
|
|
18278
18211
|
}, [password, keyshareId, userId, deviceId]);
|
|
18279
|
-
return /* @__PURE__ */
|
|
18280
|
-
"div",
|
|
18281
|
-
|
|
18282
|
-
|
|
18283
|
-
|
|
18284
|
-
|
|
18285
|
-
|
|
18286
|
-
|
|
18287
|
-
|
|
18288
|
-
]
|
|
18289
|
-
|
|
18290
|
-
|
|
18291
|
-
|
|
18292
|
-
|
|
18293
|
-
/* @__PURE__ */ jsxs66("p", { className: "text-[var(--ui-kit-fg-muted)] mt-1", children: [
|
|
18294
|
-
"Your existing keyshare will be overwritten with the backup from ",
|
|
18295
|
-
deviceName || "Guardian",
|
|
18296
|
-
" device. Make sure you have a backup of your current keyshare before proceeding."
|
|
18297
|
-
] })
|
|
18298
|
-
] })
|
|
18299
|
-
] }),
|
|
18300
|
-
/* @__PURE__ */ jsx74("div", { className: "text-xs text-[var(--ui-kit-fg-muted)] font-mono truncate px-1", children: keyshareId }),
|
|
18301
|
-
/* @__PURE__ */ jsx74(
|
|
18302
|
-
"input",
|
|
18303
|
-
{
|
|
18304
|
-
type: "password",
|
|
18305
|
-
autoComplete: "one-time-code",
|
|
18306
|
-
"data-1p-ignore": true,
|
|
18307
|
-
"data-lpignore": "true",
|
|
18308
|
-
value: password,
|
|
18309
|
-
onChange: (e) => setPassword(e.target.value),
|
|
18310
|
-
onKeyDown: (e) => e.key === "Enter" && password && !isWorking && handleRestore(),
|
|
18311
|
-
placeholder: "Encryption password",
|
|
18312
|
-
className: "w-full text-sm px-3 py-2 rounded-lg bg-[var(--ui-kit-bg)] border border-[var(--ui-kit-bd)] text-[var(--ui-kit-fg)] focus:outline-none focus:border-[var(--ui-kit-primary)]",
|
|
18313
|
-
autoFocus: true,
|
|
18314
|
-
disabled: isWorking
|
|
18315
|
-
}
|
|
18316
|
-
),
|
|
18317
|
-
/* @__PURE__ */ jsx74(
|
|
18318
|
-
Button,
|
|
18319
|
-
{
|
|
18320
|
-
variant: "default",
|
|
18321
|
-
size: "large",
|
|
18322
|
-
className: "w-full",
|
|
18323
|
-
disabled: !password || isWorking,
|
|
18324
|
-
onClick: handleRestore,
|
|
18325
|
-
children: isWorking ? /* @__PURE__ */ jsxs66(Fragment19, { children: [
|
|
18326
|
-
/* @__PURE__ */ jsx74(Loader24, { className: "w-4 h-4 animate-spin" }),
|
|
18327
|
-
/* @__PURE__ */ jsx74("span", { children: "Restoring \u2014 confirm on your device..." })
|
|
18328
|
-
] }) : /* @__PURE__ */ jsxs66(Fragment19, { children: [
|
|
18329
|
-
/* @__PURE__ */ jsx74(Download2, { className: "w-4 h-4" }),
|
|
18330
|
-
/* @__PURE__ */ jsx74("span", { children: "Restore from Guardian" })
|
|
18331
|
-
] })
|
|
18332
|
-
}
|
|
18333
|
-
),
|
|
18334
|
-
statusMessage && /* @__PURE__ */ jsx74("div", { className: "text-sm text-green-500 p-2 text-center", children: statusMessage }),
|
|
18335
|
-
errorMessage && /* @__PURE__ */ jsx74("div", { className: "text-sm text-[var(--ui-kit-bg-error)] p-2 text-center", children: errorMessage })
|
|
18212
|
+
return /* @__PURE__ */ jsxs66(Expandable, { isExpanded: true, contentClassName: "w-full flex flex-col gap-[var(--ui-kit-gap)] p-[var(--ui-kit-pd)]", children: [
|
|
18213
|
+
/* @__PURE__ */ jsxs66("div", { className: "flex items-center gap-[var(--ui-kit-gap)]", children: [
|
|
18214
|
+
/* @__PURE__ */ jsx74(Button, { variant: "ghost", size: "icon", onClick: () => setPage("device-manage" /* DEVICE_MANAGE */), children: /* @__PURE__ */ jsx74(ArrowLeft10, { className: "h-4 w-4 flex-none" }) }),
|
|
18215
|
+
/* @__PURE__ */ jsx74("span", { className: "text-xl font-semibold", children: "Restore Keyshare" })
|
|
18216
|
+
] }),
|
|
18217
|
+
/* @__PURE__ */ jsxs66("div", { className: "flex gap-3 p-3 rounded-lg bg-[var(--ui-kit-bg)] border border-[var(--ui-kit-bg-error)]", children: [
|
|
18218
|
+
/* @__PURE__ */ jsx74(AlertTriangle2, { className: "w-5 h-5 text-[var(--ui-kit-bg-error)] shrink-0 mt-0.5" }),
|
|
18219
|
+
/* @__PURE__ */ jsxs66("div", { className: "text-sm", children: [
|
|
18220
|
+
/* @__PURE__ */ jsx74("p", { className: "font-semibold text-[var(--ui-kit-bg-error)]", children: "This will replace your current keyshare" }),
|
|
18221
|
+
/* @__PURE__ */ jsxs66("p", { className: "text-[var(--ui-kit-fg-muted)] mt-1", children: [
|
|
18222
|
+
"Your existing keyshare will be overwritten with the backup from ",
|
|
18223
|
+
deviceName || "Guardian",
|
|
18224
|
+
" device. Make sure you have a backup of your current keyshare before proceeding."
|
|
18225
|
+
] })
|
|
18336
18226
|
] })
|
|
18337
|
-
}
|
|
18338
|
-
|
|
18227
|
+
] }),
|
|
18228
|
+
/* @__PURE__ */ jsx74("div", { className: "text-xs text-[var(--ui-kit-fg-muted)] font-mono truncate px-1", children: keyshareId }),
|
|
18229
|
+
/* @__PURE__ */ jsx74(
|
|
18230
|
+
"input",
|
|
18231
|
+
{
|
|
18232
|
+
type: "password",
|
|
18233
|
+
autoComplete: "one-time-code",
|
|
18234
|
+
"data-1p-ignore": true,
|
|
18235
|
+
"data-lpignore": "true",
|
|
18236
|
+
value: password,
|
|
18237
|
+
onChange: (e) => setPassword(e.target.value),
|
|
18238
|
+
onKeyDown: (e) => e.key === "Enter" && password && !isWorking && handleRestore(),
|
|
18239
|
+
placeholder: "Encryption password",
|
|
18240
|
+
className: "w-full text-sm px-3 py-2 rounded-lg bg-[var(--ui-kit-bg)] border border-[var(--ui-kit-bd)] text-[var(--ui-kit-fg)] focus:outline-none focus:border-[var(--ui-kit-primary)]",
|
|
18241
|
+
autoFocus: true,
|
|
18242
|
+
disabled: isWorking
|
|
18243
|
+
}
|
|
18244
|
+
),
|
|
18245
|
+
/* @__PURE__ */ jsx74(
|
|
18246
|
+
Button,
|
|
18247
|
+
{
|
|
18248
|
+
variant: "default",
|
|
18249
|
+
size: "large",
|
|
18250
|
+
className: "w-full",
|
|
18251
|
+
disabled: !password || isWorking,
|
|
18252
|
+
onClick: handleRestore,
|
|
18253
|
+
children: isWorking ? /* @__PURE__ */ jsxs66(Fragment19, { children: [
|
|
18254
|
+
/* @__PURE__ */ jsx74(Loader24, { className: "w-4 h-4 animate-spin" }),
|
|
18255
|
+
/* @__PURE__ */ jsx74("span", { children: "Restoring \u2014 confirm on your device..." })
|
|
18256
|
+
] }) : /* @__PURE__ */ jsxs66(Fragment19, { children: [
|
|
18257
|
+
/* @__PURE__ */ jsx74(Download2, { className: "w-4 h-4" }),
|
|
18258
|
+
/* @__PURE__ */ jsx74("span", { children: "Restore from Guardian" })
|
|
18259
|
+
] })
|
|
18260
|
+
}
|
|
18261
|
+
),
|
|
18262
|
+
statusMessage && /* @__PURE__ */ jsx74("div", { className: "text-sm text-green-500 p-2 text-center", children: statusMessage }),
|
|
18263
|
+
errorMessage && /* @__PURE__ */ jsx74("div", { className: "text-sm text-[var(--ui-kit-bg-error)] p-2 text-center", children: errorMessage })
|
|
18264
|
+
] });
|
|
18339
18265
|
}
|
|
18340
18266
|
var init_DeviceRestoreScreen = __esm({
|
|
18341
18267
|
"src/internal/components/DevicesMenu/DeviceRestoreScreen.tsx"() {
|
|
18342
|
-
init_Expandable2();
|
|
18343
|
-
init_button();
|
|
18344
|
-
init_useLayoutDataStore();
|
|
18345
|
-
init_useLayoutStore();
|
|
18346
18268
|
init_SessionContext();
|
|
18347
|
-
init_iframe_manager();
|
|
18348
18269
|
init_guardian_backup();
|
|
18270
|
+
init_useLayoutDataStore();
|
|
18271
|
+
init_iframe_manager();
|
|
18272
|
+
init_Expandable2();
|
|
18273
|
+
init_button();
|
|
18349
18274
|
}
|
|
18350
18275
|
});
|
|
18351
18276
|
|
|
18352
18277
|
// src/internal/components/DevicesMenu/DevicesMenu.tsx
|
|
18278
|
+
import { ArrowLeft as ArrowLeft11, CheckCircle, Cpu as Cpu2, HardDrive as HardDrive2, Loader2 as Loader25, Monitor, RefreshCw, Trash2 as Trash22 } from "lucide-react";
|
|
18353
18279
|
import { useState as useState17 } from "react";
|
|
18354
|
-
import { ArrowLeft as ArrowLeft11, Cpu as Cpu2, Monitor, CheckCircle, Trash2 as Trash22, Loader2 as Loader25, RefreshCw, HardDrive as HardDrive2 } from "lucide-react";
|
|
18355
18280
|
import { jsx as jsx75, jsxs as jsxs67 } from "react/jsx-runtime";
|
|
18356
18281
|
function DeviceIcon({ deviceType }) {
|
|
18357
18282
|
const Icon2 = deviceType === "iot" ? Cpu2 : Monitor;
|
|
@@ -18421,7 +18346,11 @@ function DeviceRow({ device }) {
|
|
|
18421
18346
|
{
|
|
18422
18347
|
onClick: () => {
|
|
18423
18348
|
const store = useLayoutDataStore.getState();
|
|
18424
|
-
store.setPageParams({
|
|
18349
|
+
store.setPageParams({
|
|
18350
|
+
key: "device-manage" /* DEVICE_MANAGE */,
|
|
18351
|
+
deviceId: device.deviceId,
|
|
18352
|
+
deviceName: device.deviceName
|
|
18353
|
+
});
|
|
18425
18354
|
store.setPage("device-manage" /* DEVICE_MANAGE */);
|
|
18426
18355
|
},
|
|
18427
18356
|
className: "text-[var(--ui-kit-fg-muted)] hover:text-[var(--ui-kit-fg)] transition-colors shrink-0",
|
|
@@ -18441,50 +18370,32 @@ function DeviceRow({ device }) {
|
|
|
18441
18370
|
}
|
|
18442
18371
|
function DevicesMenu() {
|
|
18443
18372
|
const setPage = useLayoutDataStore((s) => s.setPage);
|
|
18444
|
-
const maxScrollHeight = useLayoutStore((s) => s.maxScrollHeight);
|
|
18445
18373
|
const { data, isLoading, error, refetch, isFetching } = useDevices();
|
|
18446
18374
|
const devices = data?.devices ?? [];
|
|
18447
|
-
return /* @__PURE__ */
|
|
18448
|
-
"div",
|
|
18449
|
-
|
|
18450
|
-
|
|
18451
|
-
className: "
|
|
18452
|
-
|
|
18453
|
-
|
|
18454
|
-
|
|
18455
|
-
|
|
18456
|
-
|
|
18457
|
-
|
|
18458
|
-
|
|
18459
|
-
|
|
18460
|
-
|
|
18461
|
-
|
|
18462
|
-
|
|
18463
|
-
/* @__PURE__ */ jsxs67(
|
|
18464
|
-
Button,
|
|
18465
|
-
{
|
|
18466
|
-
variant: "default",
|
|
18467
|
-
size: "large",
|
|
18468
|
-
className: "w-full",
|
|
18469
|
-
onClick: () => setPage("device-link" /* DEVICE_LINK */),
|
|
18470
|
-
children: [
|
|
18471
|
-
/* @__PURE__ */ jsx75(Cpu2, { className: "w-4 h-4" }),
|
|
18472
|
-
/* @__PURE__ */ jsx75("span", { children: "Add Device" })
|
|
18473
|
-
]
|
|
18474
|
-
}
|
|
18475
|
-
)
|
|
18476
|
-
] })
|
|
18477
|
-
}
|
|
18478
|
-
);
|
|
18375
|
+
return /* @__PURE__ */ jsxs67(Expandable, { isExpanded: true, contentClassName: "w-full flex flex-col gap-[var(--ui-kit-gap)] p-[var(--ui-kit-pd)]", children: [
|
|
18376
|
+
/* @__PURE__ */ jsxs67("div", { className: "flex items-center gap-[var(--ui-kit-gap)]", children: [
|
|
18377
|
+
/* @__PURE__ */ jsx75(Button, { variant: "ghost", size: "icon", onClick: () => setPage("main-menu" /* MAIN_MENU */), children: /* @__PURE__ */ jsx75(ArrowLeft11, { className: "h-4 w-4 flex-none" }) }),
|
|
18378
|
+
/* @__PURE__ */ jsx75("span", { className: "text-xl font-semibold", children: "Devices" }),
|
|
18379
|
+
isLoading && /* @__PURE__ */ jsx75(Loader25, { className: "w-4 h-4 animate-spin" }),
|
|
18380
|
+
/* @__PURE__ */ jsx75("div", { className: "flex-1" }),
|
|
18381
|
+
/* @__PURE__ */ jsx75(Button, { variant: "ghost", size: "icon", onClick: () => refetch(), disabled: isFetching, children: /* @__PURE__ */ jsx75(RefreshCw, { className: `h-4 w-4 flex-none ${isFetching ? "animate-spin" : ""}` }) })
|
|
18382
|
+
] }),
|
|
18383
|
+
error && /* @__PURE__ */ jsx75("div", { className: "text-sm text-[var(--ui-kit-bg-error)] text-center py-4", children: "Failed to load devices" }),
|
|
18384
|
+
!isLoading && !error && devices.length === 0 && /* @__PURE__ */ jsx75("div", { className: "text-sm text-[var(--ui-kit-fg-muted)] text-center py-8", children: "No linked devices" }),
|
|
18385
|
+
devices.map((device) => /* @__PURE__ */ jsx75(DeviceRow, { device }, device.deviceId)),
|
|
18386
|
+
/* @__PURE__ */ jsxs67(Button, { variant: "default", size: "large", className: "w-full", onClick: () => setPage("device-link" /* DEVICE_LINK */), children: [
|
|
18387
|
+
/* @__PURE__ */ jsx75(Cpu2, { className: "w-4 h-4" }),
|
|
18388
|
+
/* @__PURE__ */ jsx75("span", { children: "Add Device" })
|
|
18389
|
+
] })
|
|
18390
|
+
] });
|
|
18479
18391
|
}
|
|
18480
18392
|
var init_DevicesMenu = __esm({
|
|
18481
18393
|
"src/internal/components/DevicesMenu/DevicesMenu.tsx"() {
|
|
18482
|
-
init_Expandable2();
|
|
18483
|
-
init_button();
|
|
18484
|
-
init_useLayoutDataStore();
|
|
18485
|
-
init_useLayoutStore();
|
|
18486
18394
|
init_devices();
|
|
18487
18395
|
init_guardian_backup();
|
|
18396
|
+
init_useLayoutDataStore();
|
|
18397
|
+
init_Expandable2();
|
|
18398
|
+
init_button();
|
|
18488
18399
|
}
|
|
18489
18400
|
});
|
|
18490
18401
|
|
|
@@ -19362,10 +19273,11 @@ var init_MethodSelector = __esm({
|
|
|
19362
19273
|
var KEYSHARE_BACKUP_MENU_TOUR, KEYSHARE_BACKUP_MENU_TOUR_NO_PASSKEY;
|
|
19363
19274
|
var init_onboarding_setup4 = __esm({
|
|
19364
19275
|
"src/internal/components/KeyshareRestoreMenu/onboarding.setup.ts"() {
|
|
19276
|
+
init_constants();
|
|
19365
19277
|
init_hooks();
|
|
19366
19278
|
KEYSHARE_BACKUP_MENU_TOUR = [
|
|
19367
19279
|
{
|
|
19368
|
-
elId: "
|
|
19280
|
+
elId: `${EMBARKAI_DIALOG_ONBOARDING_ID}-${"keysare-backup" /* KEYSARE_BACKUP */}`,
|
|
19369
19281
|
title: "passport:backupMenu.onboarding.backupMenu.title",
|
|
19370
19282
|
description: "passport:backupMenu.onboarding.backupMenu.description",
|
|
19371
19283
|
onNext: () => {
|
|
@@ -19390,7 +19302,7 @@ var init_onboarding_setup4 = __esm({
|
|
|
19390
19302
|
}
|
|
19391
19303
|
},
|
|
19392
19304
|
{
|
|
19393
|
-
elId: "
|
|
19305
|
+
elId: `${EMBARKAI_DIALOG_ONBOARDING_ID}-${"keysare-backup" /* KEYSARE_BACKUP */}`,
|
|
19394
19306
|
title: "passport:backupMenu.onboarding.backupEncryptionPassword.title",
|
|
19395
19307
|
description: "passport:backupMenu.onboarding.backupEncryptionPassword.description",
|
|
19396
19308
|
onNext: () => {
|
|
@@ -19401,7 +19313,7 @@ var init_onboarding_setup4 = __esm({
|
|
|
19401
19313
|
}
|
|
19402
19314
|
},
|
|
19403
19315
|
{
|
|
19404
|
-
elId: "
|
|
19316
|
+
elId: `${EMBARKAI_DIALOG_ONBOARDING_ID}-${"keysare-backup" /* KEYSARE_BACKUP */}`,
|
|
19405
19317
|
title: "passport:backupMenu.onboarding.backupEncryptionPasskey.title",
|
|
19406
19318
|
description: "passport:backupMenu.onboarding.backupEncryptionPasskey.description",
|
|
19407
19319
|
onNext: () => {
|
|
@@ -19421,7 +19333,7 @@ var init_onboarding_setup4 = __esm({
|
|
|
19421
19333
|
];
|
|
19422
19334
|
KEYSHARE_BACKUP_MENU_TOUR_NO_PASSKEY = [
|
|
19423
19335
|
{
|
|
19424
|
-
elId: "
|
|
19336
|
+
elId: `${EMBARKAI_DIALOG_ONBOARDING_ID}-${"keysare-backup" /* KEYSARE_BACKUP */}`,
|
|
19425
19337
|
title: "passport:backupMenu.onboarding.backupMenu.title",
|
|
19426
19338
|
description: "passport:backupMenu.onboarding.backupMenu.description",
|
|
19427
19339
|
onNext: () => {
|
|
@@ -19436,7 +19348,7 @@ var init_onboarding_setup4 = __esm({
|
|
|
19436
19348
|
}
|
|
19437
19349
|
},
|
|
19438
19350
|
{
|
|
19439
|
-
elId: "
|
|
19351
|
+
elId: `${EMBARKAI_DIALOG_ONBOARDING_ID}-${"keysare-backup" /* KEYSARE_BACKUP */}`,
|
|
19440
19352
|
title: "passport:backupMenu.onboarding.backupEncryptionPassword.title",
|
|
19441
19353
|
description: "passport:backupMenu.onboarding.backupEncryptionPassword.description",
|
|
19442
19354
|
onNext: () => {
|
|
@@ -20324,7 +20236,6 @@ var init_KeyshareRestoreMenu = __esm({
|
|
|
20324
20236
|
const { callbacksRef } = useProviderConfig();
|
|
20325
20237
|
const { t } = useT();
|
|
20326
20238
|
const address = useSession((st) => st.address);
|
|
20327
|
-
const maxScrollHeight = useLayoutStore((st) => st.maxScrollHeight);
|
|
20328
20239
|
const error = useRestoreStore((st) => st.error);
|
|
20329
20240
|
const success = useRestoreStore((st) => st.success);
|
|
20330
20241
|
const currentRestoreMethod = useRestoreStore((st) => st.method);
|
|
@@ -20407,106 +20318,99 @@ var init_KeyshareRestoreMenu = __esm({
|
|
|
20407
20318
|
}
|
|
20408
20319
|
});
|
|
20409
20320
|
const RestoreComponent = currentRestoreMethod ? RESTORE_COMPONENTS[currentRestoreMethod] : null;
|
|
20410
|
-
return /* @__PURE__ */
|
|
20411
|
-
"div",
|
|
20412
|
-
|
|
20413
|
-
|
|
20414
|
-
|
|
20415
|
-
|
|
20416
|
-
|
|
20417
|
-
|
|
20418
|
-
|
|
20321
|
+
return /* @__PURE__ */ jsxs76(Expandable, { isExpanded: true, contentClassName: "w-full flex flex-col gap-[var(--ui-kit-gap)]", children: [
|
|
20322
|
+
isBackupStatusLoading && /* @__PURE__ */ jsxs76("div", { className: "w-full flex flex-col gap-[var(--ui-kit-gap)] text-center justify-center items-center", children: [
|
|
20323
|
+
/* @__PURE__ */ jsx84(Loader14, { className: "w-4 h-4 animate-spin" }),
|
|
20324
|
+
/* @__PURE__ */ jsx84("span", { className: "block w-full text-xs leading-4", children: t("passport:restoreMenu.check") })
|
|
20325
|
+
] }),
|
|
20326
|
+
!success && !isBackupStatusLoading && !isDisconnecting && !hasServerBackup && /* @__PURE__ */ jsx84(
|
|
20327
|
+
NoBackupFound,
|
|
20328
|
+
{
|
|
20329
|
+
isLoading: isRestoringFromServer || isRestoringFromCloud || isRestoringFromFile || isDisconnecting,
|
|
20330
|
+
restoreFromFile
|
|
20331
|
+
}
|
|
20332
|
+
),
|
|
20333
|
+
!success && !isBackupStatusLoading && !isDisconnecting && hasServerBackup && /* @__PURE__ */ jsxs76(Fragment27, { children: [
|
|
20334
|
+
/* @__PURE__ */ jsxs76("div", { className: "flex items-center justify-between gap-[var(--ui-kit-gap)] p-[var(--ui-kit-pd)]", children: [
|
|
20335
|
+
/* @__PURE__ */ jsxs76("div", { className: "flex items-center gap-[var(--ui-kit-gap)]", children: [
|
|
20336
|
+
/* @__PURE__ */ jsx84(CloudDownload2, { className: "w-6 h-6" }),
|
|
20337
|
+
/* @__PURE__ */ jsx84("span", { className: "font-bold text-xl leading-6", children: t("passport:restoreMenu.title") })
|
|
20419
20338
|
] }),
|
|
20420
|
-
|
|
20421
|
-
|
|
20339
|
+
/* @__PURE__ */ jsx84(
|
|
20340
|
+
Switch,
|
|
20422
20341
|
{
|
|
20423
|
-
|
|
20424
|
-
|
|
20425
|
-
|
|
20426
|
-
|
|
20427
|
-
|
|
20428
|
-
|
|
20429
|
-
|
|
20430
|
-
|
|
20431
|
-
|
|
20432
|
-
|
|
20433
|
-
|
|
20434
|
-
|
|
20435
|
-
{
|
|
20436
|
-
name: "advanced-restore-flow-toggle",
|
|
20437
|
-
labels: { checked: t("passport:common.standard"), unchecked: t("passport:common.advanced") },
|
|
20438
|
-
checked: currentRestoreMethod !== "server",
|
|
20439
|
-
onChange: () => {
|
|
20440
|
-
const { setError, setRestorePassword, setRestoreFile, setMethod } = useRestoreStore.getState();
|
|
20441
|
-
if (!!error) setError(null);
|
|
20442
|
-
if (currentRestoreMethod === "server") {
|
|
20443
|
-
setRestorePassword("");
|
|
20444
|
-
setMethod(null);
|
|
20445
|
-
} else {
|
|
20446
|
-
setRestoreFile(null);
|
|
20447
|
-
setMethod("server");
|
|
20448
|
-
}
|
|
20449
|
-
}
|
|
20342
|
+
name: "advanced-restore-flow-toggle",
|
|
20343
|
+
labels: { checked: t("passport:common.standard"), unchecked: t("passport:common.advanced") },
|
|
20344
|
+
checked: currentRestoreMethod !== "server",
|
|
20345
|
+
onChange: () => {
|
|
20346
|
+
const { setError, setRestorePassword, setRestoreFile, setMethod } = useRestoreStore.getState();
|
|
20347
|
+
if (!!error) setError(null);
|
|
20348
|
+
if (currentRestoreMethod === "server") {
|
|
20349
|
+
setRestorePassword("");
|
|
20350
|
+
setMethod(null);
|
|
20351
|
+
} else {
|
|
20352
|
+
setRestoreFile(null);
|
|
20353
|
+
setMethod("server");
|
|
20450
20354
|
}
|
|
20451
|
-
)
|
|
20452
|
-
] }),
|
|
20453
|
-
/* @__PURE__ */ jsx84(MethodSelector, { mode: "restore", serverRecoveryStatus }),
|
|
20454
|
-
!!currentRestoreMethod && /* @__PURE__ */ jsx84(
|
|
20455
|
-
RestoreComponent,
|
|
20456
|
-
{
|
|
20457
|
-
isLoading: isRestoringFromFile || isRestoringFromServer || isRestoringFromCloud || isDisconnecting,
|
|
20458
|
-
fileHandler: restoreFromFile,
|
|
20459
|
-
serverHandler: restoreFromServer2,
|
|
20460
|
-
cloudHandler: restoreFromCloud
|
|
20461
20355
|
}
|
|
20462
|
-
)
|
|
20463
|
-
] }),
|
|
20464
|
-
!success && !isBackupStatusLoading && /* @__PURE__ */ jsxs76(
|
|
20465
|
-
Button,
|
|
20466
|
-
{
|
|
20467
|
-
size: "large",
|
|
20468
|
-
variant: "ghost",
|
|
20469
|
-
onClick: () => {
|
|
20470
|
-
const {
|
|
20471
|
-
setError,
|
|
20472
|
-
setShowPassword,
|
|
20473
|
-
setUsePasskey,
|
|
20474
|
-
setRestoreFile,
|
|
20475
|
-
setRestorePassword,
|
|
20476
|
-
setSuccess,
|
|
20477
|
-
setMethod
|
|
20478
|
-
} = useRestoreStore.getState();
|
|
20479
|
-
setError(null);
|
|
20480
|
-
setShowPassword(false);
|
|
20481
|
-
setUsePasskey(false);
|
|
20482
|
-
setRestoreFile(null);
|
|
20483
|
-
setRestorePassword("");
|
|
20484
|
-
setSuccess(null);
|
|
20485
|
-
setMethod(null);
|
|
20486
|
-
disconnect();
|
|
20487
|
-
},
|
|
20488
|
-
disabled: isDisconnecting || isRestoringFromFile || isRestoringFromServer,
|
|
20489
|
-
className: "w-fit mx-auto",
|
|
20490
|
-
children: [
|
|
20491
|
-
isDisconnecting ? /* @__PURE__ */ jsx84(Loader14, { className: "w-4 h-4 animate-spin" }) : /* @__PURE__ */ jsx84(UserCircle2, { className: "w-4 h-4" }),
|
|
20492
|
-
/* @__PURE__ */ jsx84("span", { children: t("passport:restoreMenu.tryAnotherAccount") })
|
|
20493
|
-
]
|
|
20494
20356
|
}
|
|
20495
|
-
)
|
|
20496
|
-
|
|
20497
|
-
|
|
20498
|
-
|
|
20499
|
-
|
|
20500
|
-
|
|
20501
|
-
|
|
20502
|
-
|
|
20503
|
-
|
|
20504
|
-
|
|
20505
|
-
|
|
20506
|
-
|
|
20507
|
-
|
|
20508
|
-
|
|
20509
|
-
|
|
20357
|
+
)
|
|
20358
|
+
] }),
|
|
20359
|
+
/* @__PURE__ */ jsx84(MethodSelector, { mode: "restore", serverRecoveryStatus }),
|
|
20360
|
+
!!currentRestoreMethod && /* @__PURE__ */ jsx84(
|
|
20361
|
+
RestoreComponent,
|
|
20362
|
+
{
|
|
20363
|
+
isLoading: isRestoringFromFile || isRestoringFromServer || isRestoringFromCloud || isDisconnecting,
|
|
20364
|
+
fileHandler: restoreFromFile,
|
|
20365
|
+
serverHandler: restoreFromServer2,
|
|
20366
|
+
cloudHandler: restoreFromCloud
|
|
20367
|
+
}
|
|
20368
|
+
)
|
|
20369
|
+
] }),
|
|
20370
|
+
!success && !isBackupStatusLoading && /* @__PURE__ */ jsxs76(
|
|
20371
|
+
Button,
|
|
20372
|
+
{
|
|
20373
|
+
size: "large",
|
|
20374
|
+
variant: "ghost",
|
|
20375
|
+
onClick: () => {
|
|
20376
|
+
const {
|
|
20377
|
+
setError,
|
|
20378
|
+
setShowPassword,
|
|
20379
|
+
setUsePasskey,
|
|
20380
|
+
setRestoreFile,
|
|
20381
|
+
setRestorePassword,
|
|
20382
|
+
setSuccess,
|
|
20383
|
+
setMethod
|
|
20384
|
+
} = useRestoreStore.getState();
|
|
20385
|
+
setError(null);
|
|
20386
|
+
setShowPassword(false);
|
|
20387
|
+
setUsePasskey(false);
|
|
20388
|
+
setRestoreFile(null);
|
|
20389
|
+
setRestorePassword("");
|
|
20390
|
+
setSuccess(null);
|
|
20391
|
+
setMethod(null);
|
|
20392
|
+
disconnect();
|
|
20393
|
+
},
|
|
20394
|
+
disabled: isDisconnecting || isRestoringFromFile || isRestoringFromServer,
|
|
20395
|
+
className: "w-fit mx-auto",
|
|
20396
|
+
children: [
|
|
20397
|
+
isDisconnecting ? /* @__PURE__ */ jsx84(Loader14, { className: "w-4 h-4 animate-spin" }) : /* @__PURE__ */ jsx84(UserCircle2, { className: "w-4 h-4" }),
|
|
20398
|
+
/* @__PURE__ */ jsx84("span", { children: t("passport:restoreMenu.tryAnotherAccount") })
|
|
20399
|
+
]
|
|
20400
|
+
}
|
|
20401
|
+
),
|
|
20402
|
+
error && /* @__PURE__ */ jsxs76(Highlight, { type: "error", className: "flex gap-[var(--ui-kit-gap)]", children: [
|
|
20403
|
+
/* @__PURE__ */ jsx84(AlertCircle2, { className: "h-4 w-4 flex-shrink-0" }),
|
|
20404
|
+
/* @__PURE__ */ jsx84("span", { className: "w-full flex-1 block", children: error })
|
|
20405
|
+
] }),
|
|
20406
|
+
success && /* @__PURE__ */ jsxs76(Fragment27, { children: [
|
|
20407
|
+
/* @__PURE__ */ jsxs76(Highlight, { type: "success", className: "flex gap-[var(--ui-kit-gap)]", children: [
|
|
20408
|
+
/* @__PURE__ */ jsx84(CheckCircle2, { className: "h-4 w-4 flex-shrink-0" }),
|
|
20409
|
+
/* @__PURE__ */ jsx84("span", { className: "w-full flex-1 block", children: success })
|
|
20410
|
+
] }),
|
|
20411
|
+
/* @__PURE__ */ jsx84(Button, { variant: "default", size: "large", className: "w-full", onClick: () => onRestoreSuccess(), children: "Done" })
|
|
20412
|
+
] })
|
|
20413
|
+
] });
|
|
20510
20414
|
};
|
|
20511
20415
|
}
|
|
20512
20416
|
});
|
|
@@ -20521,7 +20425,6 @@ function KeyshareBackupMenu() {
|
|
|
20521
20425
|
const hasServerVault = useSession((st) => st.hasServerVault);
|
|
20522
20426
|
const { t } = useT();
|
|
20523
20427
|
const setPage = useLayoutDataStore((st) => st.setPage);
|
|
20524
|
-
const maxScrollHeight = useLayoutStore((st) => st.maxScrollHeight);
|
|
20525
20428
|
const currentBackupMethod = useRestoreStore((st) => st.method);
|
|
20526
20429
|
const usePasskey = useRestoreStore((st) => st.usePasskey);
|
|
20527
20430
|
const error = useRestoreStore((st) => st.error);
|
|
@@ -20560,118 +20463,110 @@ function KeyshareBackupMenu() {
|
|
|
20560
20463
|
createPasskey
|
|
20561
20464
|
} = useCreateBackup();
|
|
20562
20465
|
const BackupComponent = !!currentBackupMethod ? COMPONENTS[currentBackupMethod] : null;
|
|
20563
|
-
return /* @__PURE__ */
|
|
20564
|
-
"div",
|
|
20565
|
-
{
|
|
20566
|
-
|
|
20567
|
-
|
|
20568
|
-
|
|
20569
|
-
|
|
20570
|
-
|
|
20571
|
-
|
|
20572
|
-
|
|
20573
|
-
|
|
20574
|
-
|
|
20575
|
-
|
|
20576
|
-
|
|
20577
|
-
|
|
20578
|
-
|
|
20579
|
-
|
|
20580
|
-
|
|
20581
|
-
|
|
20582
|
-
|
|
20583
|
-
|
|
20584
|
-
|
|
20585
|
-
|
|
20586
|
-
|
|
20587
|
-
|
|
20588
|
-
|
|
20589
|
-
|
|
20590
|
-
|
|
20591
|
-
|
|
20592
|
-
|
|
20593
|
-
|
|
20594
|
-
|
|
20595
|
-
|
|
20596
|
-
|
|
20597
|
-
|
|
20598
|
-
|
|
20599
|
-
|
|
20600
|
-
|
|
20601
|
-
|
|
20602
|
-
|
|
20603
|
-
|
|
20604
|
-
|
|
20605
|
-
|
|
20606
|
-
|
|
20607
|
-
setPage("settings" /* SETTINGS */);
|
|
20608
|
-
},
|
|
20609
|
-
children: /* @__PURE__ */ jsx85(ArrowLeft13, { className: "h-4 w-4" })
|
|
20610
|
-
}
|
|
20611
|
-
),
|
|
20612
|
-
/* @__PURE__ */ jsx85("span", { className: "text-xl font-semibold leading-8", children: t("passport:backupMenu.title") })
|
|
20613
|
-
] }),
|
|
20614
|
-
/* @__PURE__ */ jsx85(
|
|
20615
|
-
Switch,
|
|
20616
|
-
{
|
|
20617
|
-
name: "advanced-restore-flow-toggle",
|
|
20618
|
-
labels: { checked: t("passport:common.standard"), unchecked: t("passport:common.advanced") },
|
|
20619
|
-
checked: currentBackupMethod !== "server",
|
|
20620
|
-
onChange: () => {
|
|
20621
|
-
const { setError, setRestorePassword, setRestoreFile, setMethod } = useRestoreStore.getState();
|
|
20622
|
-
if (!!error) setError(null);
|
|
20623
|
-
if (currentBackupMethod === "server") {
|
|
20624
|
-
setRestorePassword("");
|
|
20625
|
-
setMethod(null);
|
|
20626
|
-
} else {
|
|
20627
|
-
setRestoreFile(null);
|
|
20628
|
-
setMethod("server");
|
|
20629
|
-
}
|
|
20630
|
-
}
|
|
20631
|
-
}
|
|
20632
|
-
)
|
|
20633
|
-
]
|
|
20634
|
-
}
|
|
20635
|
-
),
|
|
20636
|
-
!isRecoveryLoading && !!hasRecoveryData2 && !currentBackupMethod && /* @__PURE__ */ jsx85(MethodSelector, { mode: "backup", serverRecoveryStatus }),
|
|
20637
|
-
(!isRecoveryLoading || !hasServerVault) && !!currentBackupMethod && /* @__PURE__ */ jsx85(Fragment28, { children: /* @__PURE__ */ jsx85(
|
|
20638
|
-
BackupComponent,
|
|
20639
|
-
{
|
|
20640
|
-
mode: "backup",
|
|
20641
|
-
isLoading: isPasswordBackupCreating || isCloudBackupCreating || isLocalBackupCreating || isPasskeyCreating,
|
|
20642
|
-
fileHandler: createLocalBackup,
|
|
20643
|
-
serverHandler: createPasswordBackup,
|
|
20644
|
-
cloudHandler: createCloudBackup,
|
|
20645
|
-
createPasskeyHandler: createPasskey
|
|
20646
|
-
}
|
|
20647
|
-
) }),
|
|
20648
|
-
!isRecoveryLoading && !currentBackupMethod && !hasRecoveryData2 && /* @__PURE__ */ jsxs77(Highlight, { type: "warning", className: "flex gap-[var(--ui-kit-gap)]", children: [
|
|
20649
|
-
/* @__PURE__ */ jsx85(AlertCircle3, { className: "h-4 w-4 flex-shrink-0" }),
|
|
20650
|
-
/* @__PURE__ */ jsx85("span", { className: "block flex-1 font-semibold", children: "No Backup Found" })
|
|
20651
|
-
] }),
|
|
20652
|
-
error && /* @__PURE__ */ jsxs77(Highlight, { type: "error", className: "flex gap-[var(--ui-kit-gap)]", children: [
|
|
20653
|
-
/* @__PURE__ */ jsx85(AlertCircle3, { className: "h-4 w-4 flex-shrink-0" }),
|
|
20654
|
-
/* @__PURE__ */ jsx85("span", { className: "block w-full flex-1", children: error })
|
|
20655
|
-
] }),
|
|
20656
|
-
success && /* @__PURE__ */ jsxs77(Highlight, { type: "success", className: "w-full flex flex-col gap-[var(--ui-kit-gap)]", children: [
|
|
20657
|
-
/* @__PURE__ */ jsxs77("div", { className: "w-full flex gap-[var(--ui-kit-gap)]", children: [
|
|
20658
|
-
/* @__PURE__ */ jsx85(CheckCircle22, { className: "h-4 w-4 flex-shrink-0" }),
|
|
20659
|
-
/* @__PURE__ */ jsx85("span", { className: "block w-full flex-1", children: success })
|
|
20466
|
+
return /* @__PURE__ */ jsxs77(Expandable, { isExpanded: true, contentClassName: "w-full flex flex-col gap-[var(--ui-kit-gap)]", children: [
|
|
20467
|
+
!!isRecoveryLoading && (hasServerVault || !currentBackupMethod) && /* @__PURE__ */ jsx85("div", { className: "w-full flex items-center justify-center p-[var(--ui-kit-pd)]", children: /* @__PURE__ */ jsx85(Loader15, { className: "w-4 h-4 animate-spin" }) }),
|
|
20468
|
+
(!isRecoveryLoading || !hasServerVault) && !hasRecoveryData2 && /* @__PURE__ */ jsxs77("div", { className: "flex items-center justify-center gap-2 px-5 py-[var(--ui-kit-pd)]", children: [
|
|
20469
|
+
/* @__PURE__ */ jsx85(LockIcon, { className: "w-6 h-6" }),
|
|
20470
|
+
/* @__PURE__ */ jsx85("span", { className: "font-bold text-xl leading-6", children: t("passport:backupMenu.title") })
|
|
20471
|
+
] }),
|
|
20472
|
+
!isRecoveryLoading && !!hasRecoveryData2 && /* @__PURE__ */ jsxs77(
|
|
20473
|
+
"div",
|
|
20474
|
+
{
|
|
20475
|
+
ref: (inst) => onboarder.registerElement("embarkai-keyshare-backup-advanced-onboarding" /* backupAdvanced */, inst),
|
|
20476
|
+
className: "flex items-center justify-between gap-[var(--ui-kit-gap)]",
|
|
20477
|
+
children: [
|
|
20478
|
+
/* @__PURE__ */ jsxs77("div", { className: "flex items-center gap-[var(--ui-kit-gap)]", children: [
|
|
20479
|
+
/* @__PURE__ */ jsx85(
|
|
20480
|
+
Button,
|
|
20481
|
+
{
|
|
20482
|
+
variant: "ghost",
|
|
20483
|
+
size: "icon",
|
|
20484
|
+
title: "Back",
|
|
20485
|
+
onClick: () => {
|
|
20486
|
+
const {
|
|
20487
|
+
setSuccess,
|
|
20488
|
+
setError,
|
|
20489
|
+
setRestorePassword,
|
|
20490
|
+
setRestoreFile,
|
|
20491
|
+
setShowPassword,
|
|
20492
|
+
setUsePasskey,
|
|
20493
|
+
setMethod,
|
|
20494
|
+
setSelectedCloudProvider
|
|
20495
|
+
} = useRestoreStore.getState();
|
|
20496
|
+
setRestorePassword("");
|
|
20497
|
+
setRestoreFile(null);
|
|
20498
|
+
setShowPassword(false);
|
|
20499
|
+
setSelectedCloudProvider(null);
|
|
20500
|
+
setUsePasskey(false);
|
|
20501
|
+
setError(null);
|
|
20502
|
+
setSuccess(null);
|
|
20503
|
+
setMethod(null);
|
|
20504
|
+
setPage("settings" /* SETTINGS */);
|
|
20505
|
+
},
|
|
20506
|
+
children: /* @__PURE__ */ jsx85(ArrowLeft13, { className: "h-4 w-4" })
|
|
20507
|
+
}
|
|
20508
|
+
),
|
|
20509
|
+
/* @__PURE__ */ jsx85("span", { className: "text-xl font-semibold leading-8", children: t("passport:backupMenu.title") })
|
|
20660
20510
|
] }),
|
|
20661
20511
|
/* @__PURE__ */ jsx85(
|
|
20662
|
-
|
|
20512
|
+
Switch,
|
|
20663
20513
|
{
|
|
20664
|
-
|
|
20665
|
-
|
|
20666
|
-
|
|
20667
|
-
|
|
20668
|
-
|
|
20514
|
+
name: "advanced-restore-flow-toggle",
|
|
20515
|
+
labels: { checked: t("passport:common.standard"), unchecked: t("passport:common.advanced") },
|
|
20516
|
+
checked: currentBackupMethod !== "server",
|
|
20517
|
+
onChange: () => {
|
|
20518
|
+
const { setError, setRestorePassword, setRestoreFile, setMethod } = useRestoreStore.getState();
|
|
20519
|
+
if (!!error) setError(null);
|
|
20520
|
+
if (currentBackupMethod === "server") {
|
|
20521
|
+
setRestorePassword("");
|
|
20522
|
+
setMethod(null);
|
|
20523
|
+
} else {
|
|
20524
|
+
setRestoreFile(null);
|
|
20525
|
+
setMethod("server");
|
|
20526
|
+
}
|
|
20527
|
+
}
|
|
20669
20528
|
}
|
|
20670
20529
|
)
|
|
20671
|
-
]
|
|
20672
|
-
|
|
20673
|
-
|
|
20674
|
-
|
|
20530
|
+
]
|
|
20531
|
+
}
|
|
20532
|
+
),
|
|
20533
|
+
!isRecoveryLoading && !!hasRecoveryData2 && !currentBackupMethod && /* @__PURE__ */ jsx85(MethodSelector, { mode: "backup", serverRecoveryStatus }),
|
|
20534
|
+
(!isRecoveryLoading || !hasServerVault) && !!currentBackupMethod && /* @__PURE__ */ jsx85(Fragment28, { children: /* @__PURE__ */ jsx85(
|
|
20535
|
+
BackupComponent,
|
|
20536
|
+
{
|
|
20537
|
+
mode: "backup",
|
|
20538
|
+
isLoading: isPasswordBackupCreating || isCloudBackupCreating || isLocalBackupCreating || isPasskeyCreating,
|
|
20539
|
+
fileHandler: createLocalBackup,
|
|
20540
|
+
serverHandler: createPasswordBackup,
|
|
20541
|
+
cloudHandler: createCloudBackup,
|
|
20542
|
+
createPasskeyHandler: createPasskey
|
|
20543
|
+
}
|
|
20544
|
+
) }),
|
|
20545
|
+
!isRecoveryLoading && !currentBackupMethod && !hasRecoveryData2 && /* @__PURE__ */ jsxs77(Highlight, { type: "warning", className: "flex gap-[var(--ui-kit-gap)]", children: [
|
|
20546
|
+
/* @__PURE__ */ jsx85(AlertCircle3, { className: "h-4 w-4 flex-shrink-0" }),
|
|
20547
|
+
/* @__PURE__ */ jsx85("span", { className: "block flex-1 font-semibold", children: "No Backup Found" })
|
|
20548
|
+
] }),
|
|
20549
|
+
error && /* @__PURE__ */ jsxs77(Highlight, { type: "error", className: "flex gap-[var(--ui-kit-gap)]", children: [
|
|
20550
|
+
/* @__PURE__ */ jsx85(AlertCircle3, { className: "h-4 w-4 flex-shrink-0" }),
|
|
20551
|
+
/* @__PURE__ */ jsx85("span", { className: "block w-full flex-1", children: error })
|
|
20552
|
+
] }),
|
|
20553
|
+
success && /* @__PURE__ */ jsxs77(Highlight, { type: "success", className: "w-full flex flex-col gap-[var(--ui-kit-gap)]", children: [
|
|
20554
|
+
/* @__PURE__ */ jsxs77("div", { className: "w-full flex gap-[var(--ui-kit-gap)]", children: [
|
|
20555
|
+
/* @__PURE__ */ jsx85(CheckCircle22, { className: "h-4 w-4 flex-shrink-0" }),
|
|
20556
|
+
/* @__PURE__ */ jsx85("span", { className: "block w-full flex-1", children: success })
|
|
20557
|
+
] }),
|
|
20558
|
+
/* @__PURE__ */ jsx85(
|
|
20559
|
+
Button,
|
|
20560
|
+
{
|
|
20561
|
+
variant: "default",
|
|
20562
|
+
size: "large",
|
|
20563
|
+
className: "w-full",
|
|
20564
|
+
onClick: () => useRestoreStore.getState().setSuccess(null),
|
|
20565
|
+
children: t("passport:common.continue")
|
|
20566
|
+
}
|
|
20567
|
+
)
|
|
20568
|
+
] })
|
|
20569
|
+
] });
|
|
20675
20570
|
}
|
|
20676
20571
|
var COMPONENTS;
|
|
20677
20572
|
var init_KeyshareBackupMenu = __esm({
|
|
@@ -20679,7 +20574,6 @@ var init_KeyshareBackupMenu = __esm({
|
|
|
20679
20574
|
init_SessionContext();
|
|
20680
20575
|
init_i18n();
|
|
20681
20576
|
init_useLayoutDataStore();
|
|
20682
|
-
init_useLayoutStore();
|
|
20683
20577
|
init_vaultClient();
|
|
20684
20578
|
init_Expandable2();
|
|
20685
20579
|
init_Onboarding();
|
|
@@ -20902,34 +20796,20 @@ import { ArrowLeft as ArrowLeft14 } from "lucide-react";
|
|
|
20902
20796
|
import { jsx as jsx87, jsxs as jsxs79 } from "react/jsx-runtime";
|
|
20903
20797
|
function KycMenu() {
|
|
20904
20798
|
const setPage = useLayoutDataStore((st) => st.setPage);
|
|
20905
|
-
|
|
20906
|
-
|
|
20907
|
-
|
|
20908
|
-
|
|
20909
|
-
|
|
20910
|
-
|
|
20911
|
-
|
|
20912
|
-
"paddingTop": "var(--ui-kit-pd)",
|
|
20913
|
-
"paddingBottom": "var(--ui-kit-pd)",
|
|
20914
|
-
"paddingLeft": "4px"
|
|
20915
|
-
},
|
|
20916
|
-
className: "list-scrollbar-y w-full flex flex-col gap-[var(--ui-kit-gap)]",
|
|
20917
|
-
children: [
|
|
20918
|
-
/* @__PURE__ */ jsxs79("div", { className: "flex items-center gap-[var(--ui-kit-gap)]", children: [
|
|
20919
|
-
/* @__PURE__ */ jsx87(Button, { variant: "ghost", size: "icon", title: "Back", onClick: () => setPage("settings" /* SETTINGS */), children: /* @__PURE__ */ jsx87(ArrowLeft14, { className: "h-4 w-4" }) }),
|
|
20920
|
-
/* @__PURE__ */ jsx87("span", { className: "text-xl font-semibold", children: "KYC" })
|
|
20921
|
-
] }),
|
|
20922
|
-
/* @__PURE__ */ jsx87(KycContent, {})
|
|
20923
|
-
]
|
|
20924
|
-
}
|
|
20925
|
-
);
|
|
20799
|
+
return /* @__PURE__ */ jsxs79(Expandable, { isExpanded: true, contentClassName: "w-full flex flex-col gap-[var(--ui-kit-gap)]", children: [
|
|
20800
|
+
/* @__PURE__ */ jsxs79("div", { className: "flex items-center gap-[var(--ui-kit-gap)]", children: [
|
|
20801
|
+
/* @__PURE__ */ jsx87(Button, { variant: "ghost", size: "icon", title: "Back", onClick: () => setPage("settings" /* SETTINGS */), children: /* @__PURE__ */ jsx87(ArrowLeft14, { className: "h-4 w-4" }) }),
|
|
20802
|
+
/* @__PURE__ */ jsx87("span", { className: "text-xl font-semibold", children: "KYC" })
|
|
20803
|
+
] }),
|
|
20804
|
+
/* @__PURE__ */ jsx87(KycContent, {})
|
|
20805
|
+
] });
|
|
20926
20806
|
}
|
|
20927
20807
|
var KycContent;
|
|
20928
20808
|
var init_KycMenu = __esm({
|
|
20929
20809
|
"src/internal/components/KYC/KycMenu.tsx"() {
|
|
20930
20810
|
init_ProviderContext();
|
|
20931
20811
|
init_useLayoutDataStore();
|
|
20932
|
-
|
|
20812
|
+
init_Expandable2();
|
|
20933
20813
|
init_button();
|
|
20934
20814
|
init_SumsubIframe();
|
|
20935
20815
|
KycContent = () => {
|
|
@@ -21008,51 +20888,47 @@ import { jsx as jsx89, jsxs as jsxs81 } from "react/jsx-runtime";
|
|
|
21008
20888
|
function LanguagesMenu() {
|
|
21009
20889
|
const config = useProviderConfig().config;
|
|
21010
20890
|
const { t, i18n } = useT();
|
|
21011
|
-
const maxScrollHeight = useLayoutStore((st) => st.maxScrollHeight);
|
|
21012
20891
|
const langOpenedFromMenu = useLayoutDataStore((st) => st.langOpenedFromMenu);
|
|
21013
|
-
const setPage = useLayoutDataStore((st) => st.setPage);
|
|
21014
20892
|
const languageList = getAvailableLanguages(config.current.translations);
|
|
21015
|
-
return /* @__PURE__ */
|
|
21016
|
-
"div",
|
|
21017
|
-
|
|
21018
|
-
|
|
21019
|
-
|
|
21020
|
-
|
|
20893
|
+
return /* @__PURE__ */ jsxs81(Expandable, { isExpanded: true, contentClassName: "w-full flex flex-col gap-[var(--ui-kit-gap)]", children: [
|
|
20894
|
+
/* @__PURE__ */ jsxs81("div", { className: "flex items-center gap-[var(--ui-kit-gap)]", children: [
|
|
20895
|
+
/* @__PURE__ */ jsx89(
|
|
20896
|
+
Button,
|
|
20897
|
+
{
|
|
20898
|
+
variant: "ghost",
|
|
20899
|
+
size: "icon",
|
|
20900
|
+
title: "Back",
|
|
20901
|
+
onClick: () => useLayoutDataStore.getState().setPage(langOpenedFromMenu),
|
|
20902
|
+
children: /* @__PURE__ */ jsx89(ArrowLeft15, { className: "h-4 w-4" })
|
|
20903
|
+
}
|
|
20904
|
+
),
|
|
20905
|
+
/* @__PURE__ */ jsx89("span", { className: "text-xl font-semibold", children: t("passport:common.language") })
|
|
20906
|
+
] }),
|
|
20907
|
+
/* @__PURE__ */ jsx89("div", { className: "w-full flex flex-col gap-[var(--ui-kit-gap)] py-[var(--ui-kit-pd)]", children: languageList.map((langKey) => /* @__PURE__ */ jsxs81(
|
|
20908
|
+
Button,
|
|
20909
|
+
{
|
|
20910
|
+
size: "large",
|
|
20911
|
+
variant: i18n.resolvedLanguage === langKey ? "default" : "ghost",
|
|
20912
|
+
className: "justify-between",
|
|
20913
|
+
onClick: () => {
|
|
20914
|
+
i18n.changeLanguage(langKey);
|
|
20915
|
+
localStorage.setItem(LOCAL_STORAGE_I18N_KEY, langKey);
|
|
20916
|
+
useLayoutDataStore.getState().setPage(langOpenedFromMenu);
|
|
20917
|
+
},
|
|
20918
|
+
children: [
|
|
20919
|
+
/* @__PURE__ */ jsx89("span", { children: LANGUAGES[langKey]?.name }),
|
|
20920
|
+
/* @__PURE__ */ jsx89("span", { className: "text-2xl leading-6", children: LANGUAGES[langKey]?.flags })
|
|
20921
|
+
]
|
|
21021
20922
|
},
|
|
21022
|
-
|
|
21023
|
-
|
|
21024
|
-
|
|
21025
|
-
/* @__PURE__ */ jsx89(Button, { variant: "ghost", size: "icon", title: "Back", onClick: () => setPage(langOpenedFromMenu), children: /* @__PURE__ */ jsx89(ArrowLeft15, { className: "h-4 w-4" }) }),
|
|
21026
|
-
/* @__PURE__ */ jsx89("span", { className: "text-xl font-semibold", children: t("passport:common.language") })
|
|
21027
|
-
] }),
|
|
21028
|
-
/* @__PURE__ */ jsx89("div", { className: "w-full flex flex-col gap-[var(--ui-kit-gap)] py-[var(--ui-kit-pd)]", children: languageList.map((langKey) => /* @__PURE__ */ jsxs81(
|
|
21029
|
-
Button,
|
|
21030
|
-
{
|
|
21031
|
-
size: "large",
|
|
21032
|
-
variant: i18n.resolvedLanguage === langKey ? "default" : "ghost",
|
|
21033
|
-
className: "justify-between",
|
|
21034
|
-
onClick: () => {
|
|
21035
|
-
i18n.changeLanguage(langKey);
|
|
21036
|
-
localStorage.setItem(LOCAL_STORAGE_I18N_KEY, langKey);
|
|
21037
|
-
setPage(langOpenedFromMenu);
|
|
21038
|
-
},
|
|
21039
|
-
children: [
|
|
21040
|
-
/* @__PURE__ */ jsx89("span", { children: LANGUAGES[langKey]?.name }),
|
|
21041
|
-
/* @__PURE__ */ jsx89("span", { className: "text-2xl leading-6", children: LANGUAGES[langKey]?.flags })
|
|
21042
|
-
]
|
|
21043
|
-
},
|
|
21044
|
-
langKey
|
|
21045
|
-
)) })
|
|
21046
|
-
] })
|
|
21047
|
-
}
|
|
21048
|
-
);
|
|
20923
|
+
langKey
|
|
20924
|
+
)) })
|
|
20925
|
+
] });
|
|
21049
20926
|
}
|
|
21050
20927
|
var init_LanguagesMenu = __esm({
|
|
21051
20928
|
"src/internal/components/LanguagesMenu/LanguagesMenu.tsx"() {
|
|
21052
20929
|
init_ProviderContext();
|
|
21053
20930
|
init_i18n();
|
|
21054
20931
|
init_useLayoutDataStore();
|
|
21055
|
-
init_useLayoutStore();
|
|
21056
20932
|
init_Expandable2();
|
|
21057
20933
|
init_button();
|
|
21058
20934
|
}
|
|
@@ -21101,12 +20977,16 @@ import { jsx as jsx90, jsxs as jsxs82 } from "react/jsx-runtime";
|
|
|
21101
20977
|
function MainMenu() {
|
|
21102
20978
|
const address = useSession((st) => st.address);
|
|
21103
20979
|
const { t } = useT();
|
|
21104
|
-
|
|
21105
|
-
|
|
21106
|
-
|
|
20980
|
+
useEffect34(
|
|
20981
|
+
() => (
|
|
20982
|
+
// actual height measurement of the main menu on mount. prevents layout animations jumps
|
|
20983
|
+
useLayoutDataStore.getState().setTransitionPageHeight(DEFAULT_MAIN_MENU_HEIGHT)
|
|
20984
|
+
),
|
|
20985
|
+
[]
|
|
20986
|
+
);
|
|
21107
20987
|
useOnboardingTourAvailable(true);
|
|
21108
20988
|
useProvidersList();
|
|
21109
|
-
return /* @__PURE__ */ jsx90(
|
|
20989
|
+
return /* @__PURE__ */ jsx90(Expandable, { isExpanded: true, contentClassName: "w-full flex flex-col gap-[var(--ui-kit-gap)]", children: /* @__PURE__ */ jsx90("div", { className: "w-full grid grid-cols-4 gap-0 md:gap-[var(--ui-kit-gap)] py-[10px] md:py-1", children: MAIN_MENU_BUTTONS.map(({ id, onboardingId, label, icon: Icon2 }) => /* @__PURE__ */ jsxs82(
|
|
21110
20990
|
Button,
|
|
21111
20991
|
{
|
|
21112
20992
|
ref: (inst) => onboarder.registerElement(onboardingId, inst),
|
|
@@ -21114,7 +20994,7 @@ function MainMenu() {
|
|
|
21114
20994
|
variant: "ghost",
|
|
21115
20995
|
disabled: !address,
|
|
21116
20996
|
className: "flex-col w-full h-fit p-0",
|
|
21117
|
-
onClick: () => setPage(id),
|
|
20997
|
+
onClick: () => useLayoutDataStore.getState().setPage(id),
|
|
21118
20998
|
children: [
|
|
21119
20999
|
/* @__PURE__ */ jsx90(Icon2, { className: "w-5 h-5 md:w-8 md:h-8" }),
|
|
21120
21000
|
/* @__PURE__ */ jsx90("span", { className: "text-xs font-semibold", children: t(label) })
|
|
@@ -21130,6 +21010,7 @@ var init_MainMenu = __esm({
|
|
|
21130
21010
|
init_useT();
|
|
21131
21011
|
init_constants();
|
|
21132
21012
|
init_useLayoutDataStore();
|
|
21013
|
+
init_Expandable2();
|
|
21133
21014
|
init_useProvidersList();
|
|
21134
21015
|
init_Onboarding();
|
|
21135
21016
|
init_button();
|
|
@@ -21499,20 +21380,6 @@ var init_NicknameEditForm = __esm({
|
|
|
21499
21380
|
}
|
|
21500
21381
|
});
|
|
21501
21382
|
|
|
21502
|
-
// src/internal/components/NicknameMenu/onboarding.setup.ts
|
|
21503
|
-
var NICKNAME_MENU_TOUR;
|
|
21504
|
-
var init_onboarding_setup6 = __esm({
|
|
21505
|
-
"src/internal/components/NicknameMenu/onboarding.setup.ts"() {
|
|
21506
|
-
NICKNAME_MENU_TOUR = [
|
|
21507
|
-
{
|
|
21508
|
-
elId: "embarkai-nickname-menu-onboarding" /* nicknameMenu */,
|
|
21509
|
-
title: "passport:nicknameMenu.onboarding.nicknameMenu.title",
|
|
21510
|
-
description: "passport:nicknameMenu.onboarding.nicknameMenu.description"
|
|
21511
|
-
}
|
|
21512
|
-
];
|
|
21513
|
-
}
|
|
21514
|
-
});
|
|
21515
|
-
|
|
21516
21383
|
// src/internal/components/NicknameMenu/NicknameMenu.tsx
|
|
21517
21384
|
import { useQuery as useQuery14 } from "@tanstack/react-query";
|
|
21518
21385
|
import dayjs4 from "dayjs";
|
|
@@ -21539,79 +21406,71 @@ function NicknameMenu() {
|
|
|
21539
21406
|
});
|
|
21540
21407
|
const resolvedError = nicknameError || nicknameInfoError?.message || null;
|
|
21541
21408
|
useEffect37(() => () => useNicknameStore.getState().reset(), []);
|
|
21542
|
-
return /* @__PURE__ */
|
|
21543
|
-
"div",
|
|
21544
|
-
|
|
21545
|
-
|
|
21546
|
-
|
|
21547
|
-
|
|
21548
|
-
|
|
21549
|
-
|
|
21550
|
-
/*
|
|
21551
|
-
|
|
21552
|
-
|
|
21553
|
-
|
|
21554
|
-
|
|
21555
|
-
|
|
21556
|
-
|
|
21557
|
-
children: /* @__PURE__ */ jsx92(ArrowLeft16, { className: "h-4 w-4 flex-none" })
|
|
21558
|
-
}
|
|
21559
|
-
),
|
|
21560
|
-
/* @__PURE__ */ jsxs84("div", { className: "flex gap-[var(--ui-kit-gap)] items-center w-fit", children: [
|
|
21561
|
-
/* @__PURE__ */ jsx92("span", { className: "text-xl font-semibold", children: t("passport:nicknameMenu.title") }),
|
|
21562
|
-
isNicknameInfoLoading && /* @__PURE__ */ jsx92(Loader16, { className: "w-4 h-4 animate-spin" })
|
|
21563
|
-
] })
|
|
21564
|
-
] }),
|
|
21565
|
-
/* @__PURE__ */ jsx92(NicknameEditForm, { nicknameInfo, isInitialUser }),
|
|
21566
|
-
!nicknameInfo?.canChange && nicknameInfo?.cooldownEndsAt && /* @__PURE__ */ jsx92(Highlight, { type: "info", children: t("passport:nicknameMenu.cooldownMessage", {
|
|
21567
|
-
canChangeAt: dayjs4(nicknameInfo.cooldownEndsAt).format("MMM D, YYYY"),
|
|
21568
|
-
days: String(getDaysRemaining(nicknameInfo.cooldownEndsAt))
|
|
21569
|
-
}) }),
|
|
21570
|
-
!nicknameSuccess && !!nicknameInfo && /* @__PURE__ */ jsxs84("div", { className: "flex items-center gap-[var(--ui-kit-gap)] justify-between text-[10px]", children: [
|
|
21571
|
-
/* @__PURE__ */ jsxs84("span", { children: [
|
|
21572
|
-
/* @__PURE__ */ jsx92("span", { className: "text-[var(--ui-kit-fg-muted)]", children: nicknameInfo.changedAt ? t("passport:nicknameMenu.lastChanged") : t("passport:common.created") }),
|
|
21573
|
-
/* @__PURE__ */ jsx92("span", { children: ": " }),
|
|
21574
|
-
/* @__PURE__ */ jsx92("strong", { className: "text-[var(--ui-kit-fg)]", children: dayjs4(nicknameInfo.changedAt || nicknameInfo.createdAt).format("MMM D, YYYY") })
|
|
21575
|
-
] }),
|
|
21576
|
-
/* @__PURE__ */ jsxs84("span", { children: [
|
|
21577
|
-
/* @__PURE__ */ jsx92("span", { className: "text-[var(--ui-kit-fg-muted)]", children: t("passport:nicknameMenu.timesChanged") }),
|
|
21578
|
-
/* @__PURE__ */ jsx92("span", { children: ": " }),
|
|
21579
|
-
/* @__PURE__ */ jsx92("strong", { className: "text-[var(--ui-kit-fg)]", children: nicknameInfo.changeCount })
|
|
21580
|
-
] })
|
|
21581
|
-
] }),
|
|
21582
|
-
!!nicknameSuccess && /* @__PURE__ */ jsx92(Highlight, { type: "success", children: nicknameSuccess }),
|
|
21583
|
-
isInitialUser && /* @__PURE__ */ jsxs84(Highlight, { type: "success", children: [
|
|
21584
|
-
/* @__PURE__ */ jsx92("p", {
|
|
21585
|
-
//@ts-expect-error i18n typings
|
|
21586
|
-
children: t("passport:nicknameMenu.initialUser.welcome", {
|
|
21587
|
-
nickname: nicknameInfo?.handle || "N/A"
|
|
21588
|
-
})
|
|
21589
|
-
}),
|
|
21590
|
-
/* @__PURE__ */ jsx92("p", { children: t("passport:nicknameMenu.initialUser.message") }),
|
|
21591
|
-
/* @__PURE__ */ jsxs84(
|
|
21592
|
-
Button,
|
|
21593
|
-
{
|
|
21594
|
-
variant: "default",
|
|
21595
|
-
size: "large",
|
|
21596
|
-
title: t("passport:common.continue"),
|
|
21597
|
-
onClick: () => {
|
|
21598
|
-
const { openPostAuthNavigation, setPage } = useLayoutDataStore.getState();
|
|
21599
|
-
if (!openPostAuthNavigation()) setPage(null);
|
|
21600
|
-
},
|
|
21601
|
-
className: "w-full",
|
|
21602
|
-
children: [
|
|
21603
|
-
t("passport:common.continue"),
|
|
21604
|
-
" (",
|
|
21605
|
-
nicknameInfo?.handle,
|
|
21606
|
-
")"
|
|
21607
|
-
]
|
|
21608
|
-
}
|
|
21609
|
-
)
|
|
21610
|
-
] }),
|
|
21611
|
-
!!resolvedError?.length && /* @__PURE__ */ jsx92(Highlight, { type: "error", children: resolvedError })
|
|
21409
|
+
return /* @__PURE__ */ jsxs84(Expandable, { isExpanded: true, contentClassName: "w-full flex flex-col gap-[var(--ui-kit-gap)]", children: [
|
|
21410
|
+
/* @__PURE__ */ jsxs84("div", { className: "flex items-center gap-[var(--ui-kit-gap)] ", children: [
|
|
21411
|
+
/* @__PURE__ */ jsx92(
|
|
21412
|
+
Button,
|
|
21413
|
+
{
|
|
21414
|
+
variant: "ghost",
|
|
21415
|
+
size: "icon",
|
|
21416
|
+
title: t("passport:common.back"),
|
|
21417
|
+
onClick: () => useLayoutDataStore.getState().setPage("settings" /* SETTINGS */),
|
|
21418
|
+
children: /* @__PURE__ */ jsx92(ArrowLeft16, { className: "h-4 w-4 flex-none" })
|
|
21419
|
+
}
|
|
21420
|
+
),
|
|
21421
|
+
/* @__PURE__ */ jsxs84("div", { className: "flex gap-[var(--ui-kit-gap)] items-center w-fit", children: [
|
|
21422
|
+
/* @__PURE__ */ jsx92("span", { className: "text-xl font-semibold", children: t("passport:nicknameMenu.title") }),
|
|
21423
|
+
isNicknameInfoLoading && /* @__PURE__ */ jsx92(Loader16, { className: "w-4 h-4 animate-spin" })
|
|
21612
21424
|
] })
|
|
21613
|
-
}
|
|
21614
|
-
|
|
21425
|
+
] }),
|
|
21426
|
+
/* @__PURE__ */ jsx92(NicknameEditForm, { nicknameInfo, isInitialUser }),
|
|
21427
|
+
!nicknameInfo?.canChange && nicknameInfo?.cooldownEndsAt && /* @__PURE__ */ jsx92(Highlight, { type: "info", children: t("passport:nicknameMenu.cooldownMessage", {
|
|
21428
|
+
canChangeAt: dayjs4(nicknameInfo.cooldownEndsAt).format("MMM D, YYYY"),
|
|
21429
|
+
days: String(getDaysRemaining(nicknameInfo.cooldownEndsAt))
|
|
21430
|
+
}) }),
|
|
21431
|
+
!nicknameSuccess && !!nicknameInfo && /* @__PURE__ */ jsxs84("div", { className: "flex items-center gap-[var(--ui-kit-gap)] justify-between text-[10px]", children: [
|
|
21432
|
+
/* @__PURE__ */ jsxs84("span", { children: [
|
|
21433
|
+
/* @__PURE__ */ jsx92("span", { className: "text-[var(--ui-kit-fg-muted)]", children: nicknameInfo.changedAt ? t("passport:nicknameMenu.lastChanged") : t("passport:common.created") }),
|
|
21434
|
+
/* @__PURE__ */ jsx92("span", { children: ": " }),
|
|
21435
|
+
/* @__PURE__ */ jsx92("strong", { className: "text-[var(--ui-kit-fg)]", children: dayjs4(nicknameInfo.changedAt || nicknameInfo.createdAt).format("MMM D, YYYY") })
|
|
21436
|
+
] }),
|
|
21437
|
+
/* @__PURE__ */ jsxs84("span", { children: [
|
|
21438
|
+
/* @__PURE__ */ jsx92("span", { className: "text-[var(--ui-kit-fg-muted)]", children: t("passport:nicknameMenu.timesChanged") }),
|
|
21439
|
+
/* @__PURE__ */ jsx92("span", { children: ": " }),
|
|
21440
|
+
/* @__PURE__ */ jsx92("strong", { className: "text-[var(--ui-kit-fg)]", children: nicknameInfo.changeCount })
|
|
21441
|
+
] })
|
|
21442
|
+
] }),
|
|
21443
|
+
!!nicknameSuccess && /* @__PURE__ */ jsx92(Highlight, { type: "success", children: nicknameSuccess }),
|
|
21444
|
+
isInitialUser && /* @__PURE__ */ jsxs84(Highlight, { type: "success", children: [
|
|
21445
|
+
/* @__PURE__ */ jsx92("p", {
|
|
21446
|
+
//@ts-expect-error i18n typings
|
|
21447
|
+
children: t("passport:nicknameMenu.initialUser.welcome", {
|
|
21448
|
+
nickname: nicknameInfo?.handle || "N/A"
|
|
21449
|
+
})
|
|
21450
|
+
}),
|
|
21451
|
+
/* @__PURE__ */ jsx92("p", { children: t("passport:nicknameMenu.initialUser.message") }),
|
|
21452
|
+
/* @__PURE__ */ jsxs84(
|
|
21453
|
+
Button,
|
|
21454
|
+
{
|
|
21455
|
+
variant: "default",
|
|
21456
|
+
size: "large",
|
|
21457
|
+
title: t("passport:common.continue"),
|
|
21458
|
+
onClick: () => {
|
|
21459
|
+
const { openPostAuthNavigation, setPage } = useLayoutDataStore.getState();
|
|
21460
|
+
if (!openPostAuthNavigation()) setPage(null);
|
|
21461
|
+
},
|
|
21462
|
+
className: "w-full",
|
|
21463
|
+
children: [
|
|
21464
|
+
t("passport:common.continue"),
|
|
21465
|
+
" (",
|
|
21466
|
+
nicknameInfo?.handle,
|
|
21467
|
+
")"
|
|
21468
|
+
]
|
|
21469
|
+
}
|
|
21470
|
+
)
|
|
21471
|
+
] }),
|
|
21472
|
+
!!resolvedError?.length && /* @__PURE__ */ jsx92(Highlight, { type: "error", children: resolvedError })
|
|
21473
|
+
] });
|
|
21615
21474
|
}
|
|
21616
21475
|
var init_NicknameMenu = __esm({
|
|
21617
21476
|
"src/internal/components/NicknameMenu/NicknameMenu.tsx"() {
|
|
@@ -21632,6 +21491,21 @@ var init_NicknameMenu = __esm({
|
|
|
21632
21491
|
}
|
|
21633
21492
|
});
|
|
21634
21493
|
|
|
21494
|
+
// src/internal/components/NicknameMenu/onboarding.setup.ts
|
|
21495
|
+
var NICKNAME_MENU_TOUR;
|
|
21496
|
+
var init_onboarding_setup6 = __esm({
|
|
21497
|
+
"src/internal/components/NicknameMenu/onboarding.setup.ts"() {
|
|
21498
|
+
init_constants();
|
|
21499
|
+
NICKNAME_MENU_TOUR = [
|
|
21500
|
+
{
|
|
21501
|
+
elId: `${EMBARKAI_DIALOG_ONBOARDING_ID}-${"nickname-settings" /* NICKNAME_SETTINGS */}`,
|
|
21502
|
+
title: "passport:nicknameMenu.onboarding.nicknameMenu.title",
|
|
21503
|
+
description: "passport:nicknameMenu.onboarding.nicknameMenu.description"
|
|
21504
|
+
}
|
|
21505
|
+
];
|
|
21506
|
+
}
|
|
21507
|
+
});
|
|
21508
|
+
|
|
21635
21509
|
// src/internal/components/NicknameMenu/index.ts
|
|
21636
21510
|
var init_NicknameMenu2 = __esm({
|
|
21637
21511
|
"src/internal/components/NicknameMenu/index.ts"() {
|
|
@@ -22537,7 +22411,6 @@ function PortfolioMenu() {
|
|
|
22537
22411
|
const { t } = useT();
|
|
22538
22412
|
const qc = useQueryClient21();
|
|
22539
22413
|
const address = useSession((st) => st.address);
|
|
22540
|
-
const maxScrollHeight = useLayoutStore((st) => st.maxScrollHeight);
|
|
22541
22414
|
const {
|
|
22542
22415
|
assets: blockscoutAssets,
|
|
22543
22416
|
refreshBalances: refreshBlockscoutBalances,
|
|
@@ -22554,57 +22427,47 @@ function PortfolioMenu() {
|
|
|
22554
22427
|
Promise.all(shownProjectAssets.map((asset) => qc.invalidateQueries({ queryKey: asset.balanceQueryKey })));
|
|
22555
22428
|
refreshBlockscoutBalances();
|
|
22556
22429
|
}, [qc, shownProjectAssets, refreshBlockscoutBalances]);
|
|
22557
|
-
return /* @__PURE__ */
|
|
22558
|
-
"div",
|
|
22559
|
-
|
|
22560
|
-
|
|
22561
|
-
|
|
22562
|
-
|
|
22430
|
+
return /* @__PURE__ */ jsxs87(Expandable, { isExpanded: true, contentClassName: "w-full flex flex-col gap-[var(--ui-kit-gap)]", children: [
|
|
22431
|
+
/* @__PURE__ */ jsxs87("div", { className: "flex items-center gap-[var(--ui-kit-gap)]", children: [
|
|
22432
|
+
/* @__PURE__ */ jsx95(
|
|
22433
|
+
Button,
|
|
22434
|
+
{
|
|
22435
|
+
variant: "ghost",
|
|
22436
|
+
size: "icon",
|
|
22437
|
+
title: "Back",
|
|
22438
|
+
onClick: () => useLayoutDataStore.getState().setPage("main-menu" /* MAIN_MENU */),
|
|
22439
|
+
children: /* @__PURE__ */ jsx95(ArrowLeft17, { className: "h-4 w-4" })
|
|
22440
|
+
}
|
|
22441
|
+
),
|
|
22442
|
+
/* @__PURE__ */ jsx95("span", { className: "text-xl font-semibold", children: t("passport:portfolioMenu.title") }),
|
|
22443
|
+
/* @__PURE__ */ jsx95(
|
|
22444
|
+
Button,
|
|
22445
|
+
{
|
|
22446
|
+
title: "Refresh balances",
|
|
22447
|
+
variant: "ghost",
|
|
22448
|
+
size: "icon",
|
|
22449
|
+
onClick: refreshAllAssetsBalances,
|
|
22450
|
+
disabled: isBlockscoutLoading || isBlockscoutFetching,
|
|
22451
|
+
children: isBlockscoutLoading || isBlockscoutFetching ? /* @__PURE__ */ jsx95(Loader17, { className: "h-4 w-4 animate-spin" }) : /* @__PURE__ */ jsx95(RefreshCw2, { className: "h-4 w-4" })
|
|
22452
|
+
}
|
|
22453
|
+
)
|
|
22454
|
+
] }),
|
|
22455
|
+
isBlockscoutLoading && /* @__PURE__ */ jsx95("div", { className: "w-full flex items-center justify-center gap-[var(--ui-kit-gap)] p-[var(--ui-kit-pd)]", children: /* @__PURE__ */ jsx95(Loader17, { className: "w-4 h-4 animate-spin" }) }),
|
|
22456
|
+
!isBlockscoutLoading && blockscoutAssets?.length === 0 && /* @__PURE__ */ jsxs87(Highlight, { type: "info", className: "flex flex-col items-center justify-center gap-[var(--ui-kit-gap)]", children: [
|
|
22457
|
+
/* @__PURE__ */ jsx95(Gem, { className: "w-8 h-8" }),
|
|
22458
|
+
/* @__PURE__ */ jsx95("span", { className: "block", children: t("passport:portfolioMenu.noAssets") })
|
|
22459
|
+
] }),
|
|
22460
|
+
!isBlockscoutLoading && shownProjectAssets?.map((asset, index) => /* @__PURE__ */ jsx95(PortfolioItem, { isProjectAsset: true, address, asset }, `project-${asset.symbol}-${index}`)),
|
|
22461
|
+
!isBlockscoutLoading && blockscoutAssets?.length > 0 && blockscoutAssets.map((asset, index) => /* @__PURE__ */ jsx95(
|
|
22462
|
+
PortfolioItem,
|
|
22463
|
+
{
|
|
22464
|
+
address,
|
|
22465
|
+
asset
|
|
22563
22466
|
},
|
|
22564
|
-
|
|
22565
|
-
|
|
22566
|
-
|
|
22567
|
-
|
|
22568
|
-
Button,
|
|
22569
|
-
{
|
|
22570
|
-
variant: "ghost",
|
|
22571
|
-
size: "icon",
|
|
22572
|
-
title: "Back",
|
|
22573
|
-
onClick: () => useLayoutDataStore.getState().setPage("main-menu" /* MAIN_MENU */),
|
|
22574
|
-
children: /* @__PURE__ */ jsx95(ArrowLeft17, { className: "h-4 w-4" })
|
|
22575
|
-
}
|
|
22576
|
-
),
|
|
22577
|
-
/* @__PURE__ */ jsx95("span", { className: "text-xl font-semibold", children: t("passport:portfolioMenu.title") }),
|
|
22578
|
-
/* @__PURE__ */ jsx95(
|
|
22579
|
-
Button,
|
|
22580
|
-
{
|
|
22581
|
-
title: "Refresh balances",
|
|
22582
|
-
variant: "ghost",
|
|
22583
|
-
size: "icon",
|
|
22584
|
-
onClick: refreshAllAssetsBalances,
|
|
22585
|
-
disabled: isBlockscoutLoading || isBlockscoutFetching,
|
|
22586
|
-
children: isBlockscoutLoading || isBlockscoutFetching ? /* @__PURE__ */ jsx95(Loader17, { className: "h-4 w-4 animate-spin" }) : /* @__PURE__ */ jsx95(RefreshCw2, { className: "h-4 w-4" })
|
|
22587
|
-
}
|
|
22588
|
-
)
|
|
22589
|
-
] }),
|
|
22590
|
-
isBlockscoutLoading && /* @__PURE__ */ jsx95("div", { className: "w-full flex items-center justify-center gap-[var(--ui-kit-gap)] p-[var(--ui-kit-pd)]", children: /* @__PURE__ */ jsx95(Loader17, { className: "w-4 h-4 animate-spin" }) }),
|
|
22591
|
-
!isBlockscoutLoading && blockscoutAssets?.length === 0 && /* @__PURE__ */ jsxs87(Highlight, { type: "info", className: "flex flex-col items-center justify-center gap-[var(--ui-kit-gap)]", children: [
|
|
22592
|
-
/* @__PURE__ */ jsx95(Gem, { className: "w-8 h-8" }),
|
|
22593
|
-
/* @__PURE__ */ jsx95("span", { className: "block", children: t("passport:portfolioMenu.noAssets") })
|
|
22594
|
-
] }),
|
|
22595
|
-
!isBlockscoutLoading && shownProjectAssets?.map((asset, index) => /* @__PURE__ */ jsx95(PortfolioItem, { isProjectAsset: true, address, asset }, `project-${asset.symbol}-${index}`)),
|
|
22596
|
-
!isBlockscoutLoading && blockscoutAssets?.length > 0 && blockscoutAssets.map((asset, index) => /* @__PURE__ */ jsx95(
|
|
22597
|
-
PortfolioItem,
|
|
22598
|
-
{
|
|
22599
|
-
address,
|
|
22600
|
-
asset
|
|
22601
|
-
},
|
|
22602
|
-
`${asset.type}-${asset.address || "native"}-${asset.tokenId || index}`
|
|
22603
|
-
)),
|
|
22604
|
-
blockscoutError && /* @__PURE__ */ jsx95(Highlight, { type: "error", children: blockscoutError?.message })
|
|
22605
|
-
] })
|
|
22606
|
-
}
|
|
22607
|
-
);
|
|
22467
|
+
`${asset.type}-${asset.address || "native"}-${asset.tokenId || index}`
|
|
22468
|
+
)),
|
|
22469
|
+
blockscoutError && /* @__PURE__ */ jsx95(Highlight, { type: "error", children: blockscoutError?.message })
|
|
22470
|
+
] });
|
|
22608
22471
|
}
|
|
22609
22472
|
var init_PortfolioMenu = __esm({
|
|
22610
22473
|
"src/internal/components/PortfolioMenu/PortfolioMenu.tsx"() {
|
|
@@ -22613,7 +22476,6 @@ var init_PortfolioMenu = __esm({
|
|
|
22613
22476
|
init_i18n();
|
|
22614
22477
|
init_useBlockscoutAssets2();
|
|
22615
22478
|
init_useLayoutDataStore();
|
|
22616
|
-
init_useLayoutStore();
|
|
22617
22479
|
init_Expandable2();
|
|
22618
22480
|
init_button();
|
|
22619
22481
|
init_highlight();
|
|
@@ -22708,21 +22570,6 @@ var init_nickname_fingerprint = __esm({
|
|
|
22708
22570
|
}
|
|
22709
22571
|
});
|
|
22710
22572
|
|
|
22711
|
-
// src/internal/components/ReceiveMenu/onboarding.setup.ts
|
|
22712
|
-
var RECEIVE_MENU_ONBOARDING_ID, RECEIVE_MENU_TOUR;
|
|
22713
|
-
var init_onboarding_setup7 = __esm({
|
|
22714
|
-
"src/internal/components/ReceiveMenu/onboarding.setup.ts"() {
|
|
22715
|
-
RECEIVE_MENU_ONBOARDING_ID = "embarkai-receive-menu-onboarding";
|
|
22716
|
-
RECEIVE_MENU_TOUR = [
|
|
22717
|
-
{
|
|
22718
|
-
elId: RECEIVE_MENU_ONBOARDING_ID,
|
|
22719
|
-
title: "passport:receiveMenu.onboarding.receiveMenu.title",
|
|
22720
|
-
description: "passport:receiveMenu.onboarding.receiveMenu.description"
|
|
22721
|
-
}
|
|
22722
|
-
];
|
|
22723
|
-
}
|
|
22724
|
-
});
|
|
22725
|
-
|
|
22726
22573
|
// src/internal/components/ReceiveMenu/ReceiveMenu.tsx
|
|
22727
22574
|
import { useQuery as useQuery19 } from "@tanstack/react-query";
|
|
22728
22575
|
import { ArrowLeft as ArrowLeft18, AtSignIcon as AtSignIcon2, CheckCircle2 as CheckCircle23, Copy as Copy2, FingerprintIcon, LoaderIcon as LoaderIcon12, Wallet2Icon as Wallet2Icon3 } from "lucide-react";
|
|
@@ -22740,7 +22587,6 @@ function ReceiveMenu() {
|
|
|
22740
22587
|
queryKey: [QUERY_KEYS.nicknameInfo, address],
|
|
22741
22588
|
queryFn: async () => await getNicknameInfo()
|
|
22742
22589
|
});
|
|
22743
|
-
const maxScrollHeight = useLayoutStore((st) => st.maxScrollHeight);
|
|
22744
22590
|
const [qrCodeUrl, setQrCodeUrl] = useState23("");
|
|
22745
22591
|
const [isAddressCopied, setAddressCopied] = useState23(false);
|
|
22746
22592
|
const [isNicknameCopied, setNicknameCopied] = useState23(false);
|
|
@@ -22762,107 +22608,96 @@ function ReceiveMenu() {
|
|
|
22762
22608
|
color: { dark: "#000000", light: "#ffffff" }
|
|
22763
22609
|
}).then((url) => setQrCodeUrl(url)).catch((err) => console.error("Failed to generate QR code:", err));
|
|
22764
22610
|
}, [address]);
|
|
22765
|
-
return /* @__PURE__ */ jsxs88(
|
|
22766
|
-
"div",
|
|
22767
|
-
|
|
22768
|
-
|
|
22769
|
-
|
|
22770
|
-
|
|
22771
|
-
|
|
22772
|
-
|
|
22773
|
-
|
|
22774
|
-
|
|
22775
|
-
|
|
22776
|
-
|
|
22777
|
-
|
|
22778
|
-
|
|
22779
|
-
|
|
22780
|
-
|
|
22781
|
-
|
|
22782
|
-
|
|
22783
|
-
|
|
22784
|
-
|
|
22785
|
-
|
|
22786
|
-
|
|
22787
|
-
|
|
22788
|
-
|
|
22789
|
-
|
|
22790
|
-
|
|
22791
|
-
|
|
22792
|
-
|
|
22793
|
-
|
|
22794
|
-
|
|
22795
|
-
|
|
22796
|
-
|
|
22797
|
-
|
|
22798
|
-
|
|
22799
|
-
|
|
22800
|
-
|
|
22801
|
-
|
|
22802
|
-
|
|
22803
|
-
|
|
22804
|
-
|
|
22805
|
-
|
|
22806
|
-
|
|
22807
|
-
|
|
22808
|
-
|
|
22809
|
-
|
|
22810
|
-
|
|
22811
|
-
|
|
22812
|
-
|
|
22813
|
-
|
|
22814
|
-
|
|
22815
|
-
|
|
22816
|
-
|
|
22817
|
-
|
|
22818
|
-
)
|
|
22819
|
-
|
|
22820
|
-
|
|
22821
|
-
|
|
22822
|
-
|
|
22823
|
-
|
|
22824
|
-
|
|
22825
|
-
|
|
22826
|
-
|
|
22827
|
-
|
|
22828
|
-
const nickname = nicknameInfo.handle;
|
|
22829
|
-
navigator.clipboard.writeText(nickname);
|
|
22830
|
-
setNicknameCopied(true);
|
|
22831
|
-
setTimeout(() => setNicknameCopied(false), 2e3);
|
|
22832
|
-
},
|
|
22833
|
-
children: isNicknameInfoLoading ? /* @__PURE__ */ jsx96("div", { className: "flex-1", children: /* @__PURE__ */ jsx96(LoaderIcon12, { className: "w-4 h-4 animate-spin" }) }) : /* @__PURE__ */ jsxs88(Fragment32, { children: [
|
|
22834
|
-
/* @__PURE__ */ jsx96(AtSignIcon2, { className: "h-4 w-4 flex-none" }),
|
|
22835
|
-
/* @__PURE__ */ jsx96("span", { className: cn2("text-xs flex-1", { "text-[var(--ui-kit-bg-success)]": isNicknameCopied }), children: nicknameInfo.handle }),
|
|
22836
|
-
isNicknameCopied ? /* @__PURE__ */ jsx96(CheckCircle23, { className: "h-4 w-4 text-[var(--ui-kit-bg-success)] flex-none" }) : /* @__PURE__ */ jsx96(Copy2, { className: "h-4 w-4 flex-none" })
|
|
22837
|
-
] })
|
|
22838
|
-
}
|
|
22839
|
-
),
|
|
22840
|
-
fingerprint && /* @__PURE__ */ jsxs88(Fragment32, { children: [
|
|
22841
|
-
/* @__PURE__ */ jsx96("span", { className: "block text-xs leading-4 text-[var(--ui-kit-fg-muted)]", children: t("passport:receiveMenu.share.identity") }),
|
|
22842
|
-
/* @__PURE__ */ jsxs88(
|
|
22843
|
-
Button,
|
|
22844
|
-
{
|
|
22845
|
-
title: "Copy fingerprint",
|
|
22846
|
-
variant: "secondary",
|
|
22847
|
-
size: "medium",
|
|
22848
|
-
className: "w-full justify-between",
|
|
22849
|
-
onClick: () => {
|
|
22850
|
-
if (!fingerprint) return;
|
|
22851
|
-
navigator.clipboard.writeText(fingerprint);
|
|
22852
|
-
setFingerprintCopied(true);
|
|
22853
|
-
setTimeout(() => setFingerprintCopied(false), 2e3);
|
|
22854
|
-
},
|
|
22855
|
-
children: [
|
|
22856
|
-
/* @__PURE__ */ jsx96(FingerprintIcon, { className: "w-4 h-4 flex-none" }),
|
|
22857
|
-
/* @__PURE__ */ jsx96("span", { className: cn2("text-xs font-bold flex-1", { "text-[var(--ui-kit-bg-success)]": fingerprintCopied }), children: fingerprint }),
|
|
22858
|
-
fingerprintCopied ? /* @__PURE__ */ jsx96(CheckCircle23, { className: "w-4 h-4 text-[var(--ui-kit-bg-success)] flex-none" }) : /* @__PURE__ */ jsx96(Copy2, { className: "w-4 h-4 flex-none" })
|
|
22859
|
-
]
|
|
22860
|
-
}
|
|
22861
|
-
)
|
|
22611
|
+
return /* @__PURE__ */ jsxs88(Expandable, { isExpanded: true, contentClassName: "w-full flex flex-col gap-[var(--ui-kit-gap)]", children: [
|
|
22612
|
+
/* @__PURE__ */ jsxs88("div", { className: "w-full flex items-center gap-[var(--ui-kit-gap)]", children: [
|
|
22613
|
+
/* @__PURE__ */ jsx96(
|
|
22614
|
+
Button,
|
|
22615
|
+
{
|
|
22616
|
+
variant: "ghost",
|
|
22617
|
+
size: "icon",
|
|
22618
|
+
title: "Back",
|
|
22619
|
+
onClick: () => useLayoutDataStore.getState().setPage("main-menu" /* MAIN_MENU */),
|
|
22620
|
+
children: /* @__PURE__ */ jsx96(ArrowLeft18, { className: "h-4 w-4" })
|
|
22621
|
+
}
|
|
22622
|
+
),
|
|
22623
|
+
/* @__PURE__ */ jsx96("span", { className: "text-xl font-semibold", children: t("passport:receiveMenu.title") })
|
|
22624
|
+
] }),
|
|
22625
|
+
/* @__PURE__ */ jsx96("span", { className: "text-xs text-[var(--ui-kit-fg-muted)]", children: t("passport:receiveMenu.scanQR") }),
|
|
22626
|
+
/* @__PURE__ */ jsxs88(Highlight, { className: "text-center", type: "warning", children: [
|
|
22627
|
+
/* @__PURE__ */ jsx96("strong", { className: "block w-full", children: `${t("passport:common.network")}: ${chainConfig.name}` }),
|
|
22628
|
+
/* @__PURE__ */ jsx96("span", { className: "block w-full", children: t("passport:receiveMenu.warning") })
|
|
22629
|
+
] }),
|
|
22630
|
+
/* @__PURE__ */ jsx96("div", { className: "flex items-center justify-center p-[var(--ui-kit-pd)]", style: { minHeight: "216px" }, children: qrCodeUrl && /* @__PURE__ */ jsx96("img", { src: qrCodeUrl, alt: "Wallet QR Code", className: "w-48 h-48" }) }),
|
|
22631
|
+
/* @__PURE__ */ jsx96("span", { className: "block text-xs leading-4 text-[var(--ui-kit-fg-muted)]", children: t("passport:receiveMenu.share.address") }),
|
|
22632
|
+
/* @__PURE__ */ jsxs88(
|
|
22633
|
+
Button,
|
|
22634
|
+
{
|
|
22635
|
+
title: "Copy address",
|
|
22636
|
+
variant: "secondary",
|
|
22637
|
+
size: "medium",
|
|
22638
|
+
className: "w-full",
|
|
22639
|
+
onClick: () => {
|
|
22640
|
+
if (!address) return;
|
|
22641
|
+
navigator.clipboard.writeText(address);
|
|
22642
|
+
setAddressCopied(true);
|
|
22643
|
+
setTimeout(() => setAddressCopied(false), 2e3);
|
|
22644
|
+
},
|
|
22645
|
+
children: [
|
|
22646
|
+
/* @__PURE__ */ jsx96(Wallet2Icon3, { className: "h-4 w-4 flex-none" }),
|
|
22647
|
+
/* @__PURE__ */ jsxs88("span", { className: cn2("text-[10px] flex-1 block", { "text-[var(--ui-kit-bg-success)]": isAddressCopied }), children: [
|
|
22648
|
+
address.slice(0, 10),
|
|
22649
|
+
"...",
|
|
22650
|
+
address.slice(-6)
|
|
22651
|
+
] }),
|
|
22652
|
+
isAddressCopied ? /* @__PURE__ */ jsx96(CheckCircle23, { className: "h-4 w-4 text-[var(--ui-kit-bg-success)] flex-none" }) : /* @__PURE__ */ jsx96(Copy2, { className: "h-4 w-4 flex-none" })
|
|
22653
|
+
]
|
|
22654
|
+
}
|
|
22655
|
+
),
|
|
22656
|
+
/* @__PURE__ */ jsx96("span", { className: "block text-xs leading-4 text-[var(--ui-kit-fg-muted)]", children: t("passport:receiveMenu.share.nickname") }),
|
|
22657
|
+
/* @__PURE__ */ jsx96(
|
|
22658
|
+
Button,
|
|
22659
|
+
{
|
|
22660
|
+
title: "Copy nickname",
|
|
22661
|
+
variant: "secondary",
|
|
22662
|
+
size: "medium",
|
|
22663
|
+
className: "w-full",
|
|
22664
|
+
onClick: () => {
|
|
22665
|
+
const nickname = nicknameInfo.handle;
|
|
22666
|
+
navigator.clipboard.writeText(nickname);
|
|
22667
|
+
setNicknameCopied(true);
|
|
22668
|
+
setTimeout(() => setNicknameCopied(false), 2e3);
|
|
22669
|
+
},
|
|
22670
|
+
children: isNicknameInfoLoading ? /* @__PURE__ */ jsx96("div", { className: "flex-1", children: /* @__PURE__ */ jsx96(LoaderIcon12, { className: "w-4 h-4 animate-spin" }) }) : /* @__PURE__ */ jsxs88(Fragment32, { children: [
|
|
22671
|
+
/* @__PURE__ */ jsx96(AtSignIcon2, { className: "h-4 w-4 flex-none" }),
|
|
22672
|
+
/* @__PURE__ */ jsx96("span", { className: cn2("text-xs flex-1", { "text-[var(--ui-kit-bg-success)]": isNicknameCopied }), children: nicknameInfo.handle }),
|
|
22673
|
+
isNicknameCopied ? /* @__PURE__ */ jsx96(CheckCircle23, { className: "h-4 w-4 text-[var(--ui-kit-bg-success)] flex-none" }) : /* @__PURE__ */ jsx96(Copy2, { className: "h-4 w-4 flex-none" })
|
|
22862
22674
|
] })
|
|
22863
|
-
|
|
22864
|
-
|
|
22865
|
-
|
|
22675
|
+
}
|
|
22676
|
+
),
|
|
22677
|
+
fingerprint && /* @__PURE__ */ jsxs88(Fragment32, { children: [
|
|
22678
|
+
/* @__PURE__ */ jsx96("span", { className: "block text-xs leading-4 text-[var(--ui-kit-fg-muted)]", children: t("passport:receiveMenu.share.identity") }),
|
|
22679
|
+
/* @__PURE__ */ jsxs88(
|
|
22680
|
+
Button,
|
|
22681
|
+
{
|
|
22682
|
+
title: "Copy fingerprint",
|
|
22683
|
+
variant: "secondary",
|
|
22684
|
+
size: "medium",
|
|
22685
|
+
className: "w-full justify-between",
|
|
22686
|
+
onClick: () => {
|
|
22687
|
+
if (!fingerprint) return;
|
|
22688
|
+
navigator.clipboard.writeText(fingerprint);
|
|
22689
|
+
setFingerprintCopied(true);
|
|
22690
|
+
setTimeout(() => setFingerprintCopied(false), 2e3);
|
|
22691
|
+
},
|
|
22692
|
+
children: [
|
|
22693
|
+
/* @__PURE__ */ jsx96(FingerprintIcon, { className: "w-4 h-4 flex-none" }),
|
|
22694
|
+
/* @__PURE__ */ jsx96("span", { className: cn2("text-xs font-bold flex-1", { "text-[var(--ui-kit-bg-success)]": fingerprintCopied }), children: fingerprint }),
|
|
22695
|
+
fingerprintCopied ? /* @__PURE__ */ jsx96(CheckCircle23, { className: "w-4 h-4 text-[var(--ui-kit-bg-success)] flex-none" }) : /* @__PURE__ */ jsx96(Copy2, { className: "w-4 h-4 flex-none" })
|
|
22696
|
+
]
|
|
22697
|
+
}
|
|
22698
|
+
)
|
|
22699
|
+
] })
|
|
22700
|
+
] });
|
|
22866
22701
|
}
|
|
22867
22702
|
var init_ReceiveMenu = __esm({
|
|
22868
22703
|
"src/internal/components/ReceiveMenu/ReceiveMenu.tsx"() {
|
|
@@ -22871,13 +22706,27 @@ var init_ReceiveMenu = __esm({
|
|
|
22871
22706
|
init_nickname();
|
|
22872
22707
|
init_profile();
|
|
22873
22708
|
init_useLayoutDataStore();
|
|
22874
|
-
init_useLayoutStore();
|
|
22875
22709
|
init_nickname_fingerprint();
|
|
22876
22710
|
init_utils();
|
|
22711
|
+
init_Expandable2();
|
|
22877
22712
|
init_Onboarding();
|
|
22878
22713
|
init_button();
|
|
22879
22714
|
init_highlight();
|
|
22880
|
-
|
|
22715
|
+
}
|
|
22716
|
+
});
|
|
22717
|
+
|
|
22718
|
+
// src/internal/components/ReceiveMenu/onboarding.setup.ts
|
|
22719
|
+
var RECEIVE_MENU_TOUR;
|
|
22720
|
+
var init_onboarding_setup7 = __esm({
|
|
22721
|
+
"src/internal/components/ReceiveMenu/onboarding.setup.ts"() {
|
|
22722
|
+
init_constants();
|
|
22723
|
+
RECEIVE_MENU_TOUR = [
|
|
22724
|
+
{
|
|
22725
|
+
elId: `${EMBARKAI_DIALOG_ONBOARDING_ID}-${"receive" /* RECEIVE */}`,
|
|
22726
|
+
title: "passport:receiveMenu.onboarding.receiveMenu.title",
|
|
22727
|
+
description: "passport:receiveMenu.onboarding.receiveMenu.description"
|
|
22728
|
+
}
|
|
22729
|
+
];
|
|
22881
22730
|
}
|
|
22882
22731
|
});
|
|
22883
22732
|
|
|
@@ -22893,9 +22742,10 @@ var init_ReceiveMenu2 = __esm({
|
|
|
22893
22742
|
var SECURITY_MENU_TOUR;
|
|
22894
22743
|
var init_onboarding_setup8 = __esm({
|
|
22895
22744
|
"src/internal/components/SecurityMenu/onboarding.setup.ts"() {
|
|
22745
|
+
init_constants();
|
|
22896
22746
|
SECURITY_MENU_TOUR = [
|
|
22897
22747
|
{
|
|
22898
|
-
elId: "
|
|
22748
|
+
elId: `${EMBARKAI_DIALOG_ONBOARDING_ID}-${"security" /* SECURITY */}`,
|
|
22899
22749
|
title: "passport:securityMenu.onboarding.securityMenu.title",
|
|
22900
22750
|
description: "passport:securityMenu.onboarding.securityMenu.description"
|
|
22901
22751
|
},
|
|
@@ -23011,8 +22861,8 @@ function Application(props) {
|
|
|
23011
22861
|
"p-2 rounded-[var(--ui-kit-el-bdrs)] bg-[var(--ui-kit-secondary)]",
|
|
23012
22862
|
{
|
|
23013
22863
|
"cursor-default": !appUrl,
|
|
23014
|
-
"cursor-pointer transition-
|
|
23015
|
-
"hover:
|
|
22864
|
+
"cursor-pointer transition-opacity duration-200": !!appUrl,
|
|
22865
|
+
"hover:opacity-80 active:opacity-60": !!appUrl
|
|
23016
22866
|
}
|
|
23017
22867
|
),
|
|
23018
22868
|
onClick: () => {
|
|
@@ -23508,53 +23358,40 @@ import { ArrowLeft as ArrowLeft19 } from "lucide-react";
|
|
|
23508
23358
|
import { Fragment as Fragment36, jsx as jsx102, jsxs as jsxs94 } from "react/jsx-runtime";
|
|
23509
23359
|
function SecurityMenu() {
|
|
23510
23360
|
const { t } = useT();
|
|
23511
|
-
const maxScrollHeight = useLayoutStore((st) => st.maxScrollHeight);
|
|
23512
23361
|
const appToUntrust = useSecurityStore((st) => st.appToUntrust);
|
|
23513
23362
|
useOnboardingTourAvailable(!appToUntrust);
|
|
23514
|
-
return /* @__PURE__ */
|
|
23515
|
-
"div",
|
|
23516
|
-
|
|
23517
|
-
|
|
23518
|
-
|
|
23519
|
-
|
|
23520
|
-
|
|
23521
|
-
|
|
23522
|
-
|
|
23523
|
-
|
|
23524
|
-
|
|
23525
|
-
|
|
23526
|
-
|
|
23527
|
-
|
|
23528
|
-
variant: "ghost",
|
|
23529
|
-
size: "icon",
|
|
23530
|
-
title: t("passport:common.back"),
|
|
23531
|
-
onClick: () => {
|
|
23532
|
-
const { appToUntrust: appToUntrust2, untrustApp } = useSecurityStore.getState();
|
|
23533
|
-
if (!!appToUntrust2) {
|
|
23534
|
-
untrustApp(null);
|
|
23535
|
-
} else {
|
|
23536
|
-
useLayoutDataStore.getState().setPage("settings" /* SETTINGS */);
|
|
23537
|
-
}
|
|
23538
|
-
},
|
|
23539
|
-
children: /* @__PURE__ */ jsx102(ArrowLeft19, { className: "h-4 w-4" })
|
|
23363
|
+
return /* @__PURE__ */ jsxs94(Expandable, { isExpanded: true, contentClassName: "w-full flex flex-col gap-[var(--ui-kit-gap)]", children: [
|
|
23364
|
+
/* @__PURE__ */ jsxs94("div", { className: "flex items-center gap-[var(--ui-kit-gap)]", children: [
|
|
23365
|
+
/* @__PURE__ */ jsx102(
|
|
23366
|
+
Button,
|
|
23367
|
+
{
|
|
23368
|
+
variant: "ghost",
|
|
23369
|
+
size: "icon",
|
|
23370
|
+
title: t("passport:common.back"),
|
|
23371
|
+
onClick: () => {
|
|
23372
|
+
const { appToUntrust: appToUntrust2, untrustApp } = useSecurityStore.getState();
|
|
23373
|
+
if (!!appToUntrust2) {
|
|
23374
|
+
untrustApp(null);
|
|
23375
|
+
} else {
|
|
23376
|
+
useLayoutDataStore.getState().setPage("settings" /* SETTINGS */);
|
|
23540
23377
|
}
|
|
23541
|
-
|
|
23542
|
-
/* @__PURE__ */ jsx102(
|
|
23543
|
-
|
|
23544
|
-
|
|
23545
|
-
|
|
23546
|
-
|
|
23547
|
-
|
|
23548
|
-
|
|
23549
|
-
|
|
23550
|
-
|
|
23551
|
-
|
|
23378
|
+
},
|
|
23379
|
+
children: /* @__PURE__ */ jsx102(ArrowLeft19, { className: "h-4 w-4" })
|
|
23380
|
+
}
|
|
23381
|
+
),
|
|
23382
|
+
/* @__PURE__ */ jsx102("span", { className: "text-xl font-semibold", children: t("passport:securityMenu.title") })
|
|
23383
|
+
] }),
|
|
23384
|
+
appToUntrust && /* @__PURE__ */ jsx102(UntrustApplication, {}),
|
|
23385
|
+
!appToUntrust && /* @__PURE__ */ jsxs94(Fragment36, { children: [
|
|
23386
|
+
/* @__PURE__ */ jsx102(Keyshare, {}),
|
|
23387
|
+
/* @__PURE__ */ jsx102(ConnectedApps, {})
|
|
23388
|
+
] })
|
|
23389
|
+
] });
|
|
23552
23390
|
}
|
|
23553
23391
|
var init_SecurityMenu = __esm({
|
|
23554
23392
|
"src/internal/components/SecurityMenu/SecurityMenu.tsx"() {
|
|
23555
23393
|
init_i18n();
|
|
23556
23394
|
init_useLayoutDataStore();
|
|
23557
|
-
init_useLayoutStore();
|
|
23558
23395
|
init_Expandable2();
|
|
23559
23396
|
init_Onboarding();
|
|
23560
23397
|
init_button();
|
|
@@ -24604,6 +24441,7 @@ var init_useSendStore = __esm({
|
|
|
24604
24441
|
var TOUR_SEND_ASSET, TOUR_BRIDGE_QUOTE, SEND_MENU_TOUR, BRIDGE_MENU_TOUR;
|
|
24605
24442
|
var init_onboarding_setup9 = __esm({
|
|
24606
24443
|
"src/internal/components/SendMenu/onboarding.setup.ts"() {
|
|
24444
|
+
init_constants();
|
|
24607
24445
|
init_useBridgeStore();
|
|
24608
24446
|
init_useSendStore();
|
|
24609
24447
|
TOUR_SEND_ASSET = {
|
|
@@ -24623,7 +24461,7 @@ var init_onboarding_setup9 = __esm({
|
|
|
24623
24461
|
};
|
|
24624
24462
|
SEND_MENU_TOUR = [
|
|
24625
24463
|
{
|
|
24626
|
-
elId: "
|
|
24464
|
+
elId: `${EMBARKAI_DIALOG_ONBOARDING_ID}-${"send" /* SEND */}`,
|
|
24627
24465
|
title: "passport:sendMenu.onboarding.sendMenu.title",
|
|
24628
24466
|
description: "passport:sendMenu.onboarding.sendMenu.description",
|
|
24629
24467
|
waitSecs: 4,
|
|
@@ -24652,7 +24490,7 @@ var init_onboarding_setup9 = __esm({
|
|
|
24652
24490
|
];
|
|
24653
24491
|
BRIDGE_MENU_TOUR = [
|
|
24654
24492
|
{
|
|
24655
|
-
elId: "
|
|
24493
|
+
elId: `${EMBARKAI_DIALOG_ONBOARDING_ID}-${"send" /* SEND */}`,
|
|
24656
24494
|
title: "passport:bridgeMenu.onboarding.bridgeMenu.title",
|
|
24657
24495
|
description: "passport:bridgeMenu.onboarding.bridgeMenu.description",
|
|
24658
24496
|
waitSecs: 5
|
|
@@ -27301,7 +27139,6 @@ function SendFlowSelector() {
|
|
|
27301
27139
|
const { t } = useT();
|
|
27302
27140
|
const { config } = useProviderConfig();
|
|
27303
27141
|
useSendMenuParams();
|
|
27304
|
-
const maxScrollHeight = useLayoutStore((st) => st.maxScrollHeight);
|
|
27305
27142
|
const selectorFlow = useFlowSelectorStore((st) => st.flow);
|
|
27306
27143
|
const menuTitle = useFlowSelectorStore((st) => st.menuTitle);
|
|
27307
27144
|
const isUiLocked = useFlowSelectorStore((st) => st.isUiLocked);
|
|
@@ -27326,81 +27163,69 @@ function SendFlowSelector() {
|
|
|
27326
27163
|
}, []);
|
|
27327
27164
|
const isSendFlowInitialState = selectorFlow === "send" && sendStep === "input" || selectorFlow === "bridge" && bridgeStep === "select";
|
|
27328
27165
|
const isFlowSelectorButtonsShown = !!config?.current?.features?.showAssetBridge && isSendFlowInitialState;
|
|
27329
|
-
return /* @__PURE__ */
|
|
27330
|
-
"div",
|
|
27331
|
-
|
|
27332
|
-
|
|
27333
|
-
|
|
27334
|
-
|
|
27335
|
-
|
|
27336
|
-
|
|
27337
|
-
|
|
27338
|
-
|
|
27339
|
-
|
|
27340
|
-
|
|
27341
|
-
|
|
27342
|
-
|
|
27343
|
-
|
|
27344
|
-
|
|
27345
|
-
|
|
27346
|
-
|
|
27347
|
-
|
|
27348
|
-
|
|
27349
|
-
|
|
27350
|
-
|
|
27351
|
-
|
|
27352
|
-
switch (bridgeStep2) {
|
|
27353
|
-
case "select":
|
|
27354
|
-
return setPage("main-menu" /* MAIN_MENU */);
|
|
27355
|
-
// case ''
|
|
27356
|
-
case "tx-history-details":
|
|
27357
|
-
return setBridgeStep("tx-history");
|
|
27358
|
-
default:
|
|
27359
|
-
return setBridgeStep("select");
|
|
27360
|
-
}
|
|
27361
|
-
}
|
|
27362
|
-
if (selectorFlow === "send") {
|
|
27363
|
-
const { txStep, setTxStep } = useSendStore.getState();
|
|
27364
|
-
switch (txStep) {
|
|
27365
|
-
case "input":
|
|
27366
|
-
return setPage("main-menu" /* MAIN_MENU */);
|
|
27367
|
-
default:
|
|
27368
|
-
return setTxStep("input");
|
|
27369
|
-
}
|
|
27370
|
-
}
|
|
27371
|
-
},
|
|
27372
|
-
children: /* @__PURE__ */ jsx120(ArrowLeft20, { className: "h-4 w-4" })
|
|
27166
|
+
return /* @__PURE__ */ jsxs109(Expandable, { isExpanded: true, contentClassName: "w-full flex flex-col gap-[var(--ui-kit-gap)]", children: [
|
|
27167
|
+
/* @__PURE__ */ jsxs109("div", { className: "flex items-center justify-between", children: [
|
|
27168
|
+
/* @__PURE__ */ jsxs109("div", { className: "flex items-center gap-[var(--ui-kit-gap)]", children: [
|
|
27169
|
+
/* @__PURE__ */ jsx120(
|
|
27170
|
+
Button,
|
|
27171
|
+
{
|
|
27172
|
+
variant: "ghost",
|
|
27173
|
+
size: "icon",
|
|
27174
|
+
disabled: isUiLocked,
|
|
27175
|
+
onClick: () => {
|
|
27176
|
+
useFlowSelectorStore.getState().setError(null);
|
|
27177
|
+
const { setPage } = useLayoutDataStore.getState();
|
|
27178
|
+
if (selectorFlow === "bridge") {
|
|
27179
|
+
const { bridgeStep: bridgeStep2, setBridgeStep } = useBridgeStore.getState();
|
|
27180
|
+
switch (bridgeStep2) {
|
|
27181
|
+
case "select":
|
|
27182
|
+
return setPage("main-menu" /* MAIN_MENU */);
|
|
27183
|
+
// case ''
|
|
27184
|
+
case "tx-history-details":
|
|
27185
|
+
return setBridgeStep("tx-history");
|
|
27186
|
+
default:
|
|
27187
|
+
return setBridgeStep("select");
|
|
27188
|
+
}
|
|
27373
27189
|
}
|
|
27374
|
-
|
|
27375
|
-
|
|
27376
|
-
|
|
27377
|
-
|
|
27378
|
-
|
|
27379
|
-
|
|
27380
|
-
|
|
27381
|
-
|
|
27382
|
-
|
|
27383
|
-
|
|
27384
|
-
|
|
27385
|
-
|
|
27386
|
-
|
|
27387
|
-
|
|
27388
|
-
|
|
27389
|
-
|
|
27390
|
-
|
|
27391
|
-
|
|
27392
|
-
|
|
27393
|
-
|
|
27394
|
-
|
|
27395
|
-
|
|
27396
|
-
|
|
27190
|
+
if (selectorFlow === "send") {
|
|
27191
|
+
const { txStep, setTxStep } = useSendStore.getState();
|
|
27192
|
+
switch (txStep) {
|
|
27193
|
+
case "input":
|
|
27194
|
+
return setPage("main-menu" /* MAIN_MENU */);
|
|
27195
|
+
default:
|
|
27196
|
+
return setTxStep("input");
|
|
27197
|
+
}
|
|
27198
|
+
}
|
|
27199
|
+
},
|
|
27200
|
+
children: /* @__PURE__ */ jsx120(ArrowLeft20, { className: "h-4 w-4" })
|
|
27201
|
+
}
|
|
27202
|
+
),
|
|
27203
|
+
/* @__PURE__ */ jsx120("span", { className: "text-xl font-semibold", children: menuTitle })
|
|
27204
|
+
] }),
|
|
27205
|
+
/* @__PURE__ */ jsx120("div", { className: "flex items-center gap-[var(--ui-kit-gap)]", children: /* @__PURE__ */ jsx120(BridgeHistorySwitch, {}) })
|
|
27206
|
+
] }),
|
|
27207
|
+
isFlowSelectorButtonsShown && /* @__PURE__ */ jsx120(SelectorFlowButtons, {}),
|
|
27208
|
+
availableFlows[selectorFlow],
|
|
27209
|
+
sendOrBridgeError && /* @__PURE__ */ jsxs109(Highlight, { type: "error", className: "w-full flex flex-col gap-[var(--ui-kit-gap)]", children: [
|
|
27210
|
+
/* @__PURE__ */ jsx120("span", { children: sendOrBridgeError }),
|
|
27211
|
+
/* @__PURE__ */ jsx120(
|
|
27212
|
+
Button,
|
|
27213
|
+
{
|
|
27214
|
+
variant: "default",
|
|
27215
|
+
size: "medium",
|
|
27216
|
+
className: "w-full",
|
|
27217
|
+
onClick: () => useFlowSelectorStore.getState().setError(null),
|
|
27218
|
+
children: t("passport:common.hide")
|
|
27219
|
+
}
|
|
27220
|
+
)
|
|
27221
|
+
] })
|
|
27222
|
+
] });
|
|
27397
27223
|
}
|
|
27398
27224
|
var init_SendFlowSelector = __esm({
|
|
27399
27225
|
"src/internal/components/SendMenu/SendFlowSelector.tsx"() {
|
|
27400
27226
|
init_ProviderContext();
|
|
27401
27227
|
init_i18n();
|
|
27402
27228
|
init_useLayoutDataStore();
|
|
27403
|
-
init_useLayoutStore();
|
|
27404
27229
|
init_utils();
|
|
27405
27230
|
init_Expandable2();
|
|
27406
27231
|
init_Onboarding();
|
|
@@ -28080,20 +27905,6 @@ var init_api4 = __esm({
|
|
|
28080
27905
|
}
|
|
28081
27906
|
});
|
|
28082
27907
|
|
|
28083
|
-
// src/internal/components/TransactionsMenu/onboarding.setup.ts
|
|
28084
|
-
var TRANSACTIONS_MENU_TOUR;
|
|
28085
|
-
var init_onboarding_setup10 = __esm({
|
|
28086
|
-
"src/internal/components/TransactionsMenu/onboarding.setup.ts"() {
|
|
28087
|
-
TRANSACTIONS_MENU_TOUR = [
|
|
28088
|
-
{
|
|
28089
|
-
elId: "embarkai-transactions-menu-onboarding" /* transactionsMenu */,
|
|
28090
|
-
title: "passport:transactionsMenu.onboarding.transactionsMenu.title",
|
|
28091
|
-
description: "passport:transactionsMenu.onboarding.transactionsMenu.description"
|
|
28092
|
-
}
|
|
28093
|
-
];
|
|
28094
|
-
}
|
|
28095
|
-
});
|
|
28096
|
-
|
|
28097
27908
|
// src/internal/components/TransactionsMenu/utils.ts
|
|
28098
27909
|
function formatIntl(price, fractionDigits) {
|
|
28099
27910
|
const formatter = Intl.NumberFormat("en-US", {
|
|
@@ -28192,8 +28003,8 @@ function TransactionsGroup(props) {
|
|
|
28192
28003
|
onClick: () => openInExplorer2(parent.parentHash),
|
|
28193
28004
|
className: cn2(
|
|
28194
28005
|
"w-full flex flex-col gap-1 p-[var(--ui-kit-pd)] rounded-[var(--ui-kit-el-bdrs)]",
|
|
28195
|
-
"transition-
|
|
28196
|
-
"bg-[var(--ui-kit-secondary)] hover:
|
|
28006
|
+
"transition-opacity cursor-pointer",
|
|
28007
|
+
"bg-[var(--ui-kit-secondary)] hover:opacity-80 active:opacity-60"
|
|
28197
28008
|
),
|
|
28198
28009
|
children: [
|
|
28199
28010
|
/* @__PURE__ */ jsxs110("div", { className: "flex items-center justify-between gap-[var(--ui-kit-gap)]", children: [
|
|
@@ -28295,7 +28106,6 @@ function TransactionsMenu() {
|
|
|
28295
28106
|
const { t } = useT();
|
|
28296
28107
|
useOnboardingTourAvailable(true);
|
|
28297
28108
|
const setPage = useLayoutDataStore((st) => st.setPage);
|
|
28298
|
-
const maxScrollHeight = useLayoutStore((st) => st.maxScrollHeight);
|
|
28299
28109
|
const [expandedGroups, setExpandedGroups] = useState28({});
|
|
28300
28110
|
const historySupported = isTransactionHistorySupported(chainConfig?.id);
|
|
28301
28111
|
const {
|
|
@@ -28314,57 +28124,45 @@ function TransactionsMenu() {
|
|
|
28314
28124
|
[qc, chainConfig.id, address]
|
|
28315
28125
|
);
|
|
28316
28126
|
const txHistoryResolvedError = txHistoryError ? txHistoryError instanceof Error ? txHistoryError.message : "Failed to load transactions" : null;
|
|
28317
|
-
return /* @__PURE__ */
|
|
28318
|
-
"div",
|
|
28319
|
-
|
|
28320
|
-
|
|
28321
|
-
|
|
28322
|
-
|
|
28323
|
-
|
|
28127
|
+
return /* @__PURE__ */ jsxs111(Expandable, { isExpanded: true, contentClassName: "w-full flex flex-col gap-[var(--ui-kit-gap)]", children: [
|
|
28128
|
+
/* @__PURE__ */ jsxs111("div", { className: "flex items-center gap-[var(--ui-kit-gap)]", children: [
|
|
28129
|
+
/* @__PURE__ */ jsx122(Button, { variant: "ghost", size: "icon", title: "Back", onClick: () => setPage("settings" /* SETTINGS */), children: /* @__PURE__ */ jsx122(ArrowLeft21, { className: "h-4 w-4" }) }),
|
|
28130
|
+
/* @__PURE__ */ jsx122("span", { className: "text-xl font-semibold", children: t("passport:transactionsMenu.title") }),
|
|
28131
|
+
historySupported && /* @__PURE__ */ jsx122(
|
|
28132
|
+
Button,
|
|
28133
|
+
{
|
|
28134
|
+
variant: "ghost",
|
|
28135
|
+
size: "icon",
|
|
28136
|
+
onClick: refreshTxHistory,
|
|
28137
|
+
disabled: isTxHistoryFetching,
|
|
28138
|
+
title: "Refresh transactions",
|
|
28139
|
+
children: isTxHistoryFetching ? /* @__PURE__ */ jsx122(Loader28, { className: "h-4 w-4 animate-spin" }) : /* @__PURE__ */ jsx122(RefreshCw3, { className: "h-4 w-4" })
|
|
28140
|
+
}
|
|
28141
|
+
)
|
|
28142
|
+
] }),
|
|
28143
|
+
!historySupported && /* @__PURE__ */ jsx122(Highlight, { type: "warning", children: /* @__PURE__ */ jsx122("span", { children: t("passport:transactionsMenu.comingSoon") }) }),
|
|
28144
|
+
historySupported && isTxHistoryLoading && /* @__PURE__ */ jsx122("div", { className: "flex items-center justify-center p-8", children: /* @__PURE__ */ jsx122(Loader28, { className: "w-4 h-4 animate-spin" }) }),
|
|
28145
|
+
historySupported && !isTxHistoryLoading && !txHistoryResolvedError && txHistoryGroups.length === 0 && /* @__PURE__ */ jsx122(Highlight, { type: "info", children: /* @__PURE__ */ jsx122("span", { children: t("passport:transactionsMenu.noTransactions") }) }),
|
|
28146
|
+
historySupported && !isTxHistoryLoading && txHistoryResolvedError && /* @__PURE__ */ jsxs111(Highlight, { type: "error", className: "flex gap-[var(--ui-kit-gap)]", children: [
|
|
28147
|
+
/* @__PURE__ */ jsx122(XCircle, { className: "w-4 h-4 flex-none" }),
|
|
28148
|
+
/* @__PURE__ */ jsx122("span", { className: "block w-full flex-1 text-center text-xs", children: txHistoryResolvedError })
|
|
28149
|
+
] }),
|
|
28150
|
+
historySupported && !isTxHistoryLoading && !txHistoryResolvedError && txHistoryGroups.length > 0 && /* @__PURE__ */ jsx122("div", { className: "w-full flex flex-col gap-[var(--ui-kit-gap)]", children: txHistoryGroups.map((group) => /* @__PURE__ */ jsx122(
|
|
28151
|
+
TransactionsGroup,
|
|
28152
|
+
{
|
|
28153
|
+
group,
|
|
28154
|
+
expanded: expandedGroups[group.id] ?? false,
|
|
28155
|
+
onToggleExpanded: (groupId) => setExpandedGroups((prev) => ({ ...prev, [groupId]: !prev[groupId] }))
|
|
28324
28156
|
},
|
|
28325
|
-
|
|
28326
|
-
|
|
28327
|
-
|
|
28328
|
-
/* @__PURE__ */ jsx122(Button, { variant: "ghost", size: "icon", title: "Back", onClick: () => setPage("settings" /* SETTINGS */), children: /* @__PURE__ */ jsx122(ArrowLeft21, { className: "h-4 w-4" }) }),
|
|
28329
|
-
/* @__PURE__ */ jsx122("span", { className: "text-xl font-semibold", children: t("passport:transactionsMenu.title") }),
|
|
28330
|
-
historySupported && /* @__PURE__ */ jsx122(
|
|
28331
|
-
Button,
|
|
28332
|
-
{
|
|
28333
|
-
variant: "ghost",
|
|
28334
|
-
size: "icon",
|
|
28335
|
-
onClick: refreshTxHistory,
|
|
28336
|
-
disabled: isTxHistoryFetching,
|
|
28337
|
-
title: "Refresh transactions",
|
|
28338
|
-
children: isTxHistoryFetching ? /* @__PURE__ */ jsx122(Loader28, { className: "h-4 w-4 animate-spin" }) : /* @__PURE__ */ jsx122(RefreshCw3, { className: "h-4 w-4" })
|
|
28339
|
-
}
|
|
28340
|
-
)
|
|
28341
|
-
] }),
|
|
28342
|
-
!historySupported && /* @__PURE__ */ jsx122(Highlight, { type: "warning", children: /* @__PURE__ */ jsx122("span", { children: t("passport:transactionsMenu.comingSoon") }) }),
|
|
28343
|
-
historySupported && isTxHistoryLoading && /* @__PURE__ */ jsx122("div", { className: "flex items-center justify-center p-8", children: /* @__PURE__ */ jsx122(Loader28, { className: "w-4 h-4 animate-spin" }) }),
|
|
28344
|
-
historySupported && !isTxHistoryLoading && !txHistoryResolvedError && txHistoryGroups.length === 0 && /* @__PURE__ */ jsx122(Highlight, { type: "info", children: /* @__PURE__ */ jsx122("span", { children: t("passport:transactionsMenu.noTransactions") }) }),
|
|
28345
|
-
historySupported && !isTxHistoryLoading && txHistoryResolvedError && /* @__PURE__ */ jsxs111(Highlight, { type: "error", className: "flex gap-[var(--ui-kit-gap)]", children: [
|
|
28346
|
-
/* @__PURE__ */ jsx122(XCircle, { className: "w-4 h-4 flex-none" }),
|
|
28347
|
-
/* @__PURE__ */ jsx122("span", { className: "block w-full flex-1 text-center text-xs", children: txHistoryResolvedError })
|
|
28348
|
-
] }),
|
|
28349
|
-
historySupported && !isTxHistoryLoading && !txHistoryResolvedError && txHistoryGroups.length > 0 && /* @__PURE__ */ jsx122("div", { className: "w-full flex flex-col gap-[var(--ui-kit-gap)]", children: txHistoryGroups.map((group) => /* @__PURE__ */ jsx122(
|
|
28350
|
-
TransactionsGroup,
|
|
28351
|
-
{
|
|
28352
|
-
group,
|
|
28353
|
-
expanded: expandedGroups[group.id] ?? false,
|
|
28354
|
-
onToggleExpanded: (groupId) => setExpandedGroups((prev) => ({ ...prev, [groupId]: !prev[groupId] }))
|
|
28355
|
-
},
|
|
28356
|
-
group.id
|
|
28357
|
-
)) })
|
|
28358
|
-
] })
|
|
28359
|
-
}
|
|
28360
|
-
);
|
|
28157
|
+
group.id
|
|
28158
|
+
)) })
|
|
28159
|
+
] });
|
|
28361
28160
|
}
|
|
28362
28161
|
var init_TransactionsMenu = __esm({
|
|
28363
28162
|
"src/internal/components/TransactionsMenu/TransactionsMenu.tsx"() {
|
|
28364
28163
|
init_SessionContext();
|
|
28365
28164
|
init_i18n();
|
|
28366
28165
|
init_useLayoutDataStore();
|
|
28367
|
-
init_useLayoutStore();
|
|
28368
28166
|
init_Expandable2();
|
|
28369
28167
|
init_Onboarding();
|
|
28370
28168
|
init_button();
|
|
@@ -28375,6 +28173,21 @@ var init_TransactionsMenu = __esm({
|
|
|
28375
28173
|
}
|
|
28376
28174
|
});
|
|
28377
28175
|
|
|
28176
|
+
// src/internal/components/TransactionsMenu/onboarding.setup.ts
|
|
28177
|
+
var TRANSACTIONS_MENU_TOUR;
|
|
28178
|
+
var init_onboarding_setup10 = __esm({
|
|
28179
|
+
"src/internal/components/TransactionsMenu/onboarding.setup.ts"() {
|
|
28180
|
+
init_constants();
|
|
28181
|
+
TRANSACTIONS_MENU_TOUR = [
|
|
28182
|
+
{
|
|
28183
|
+
elId: `${EMBARKAI_DIALOG_ONBOARDING_ID}-${"transactions" /* TRANSACTIONS */}`,
|
|
28184
|
+
title: "passport:transactionsMenu.onboarding.transactionsMenu.title",
|
|
28185
|
+
description: "passport:transactionsMenu.onboarding.transactionsMenu.description"
|
|
28186
|
+
}
|
|
28187
|
+
];
|
|
28188
|
+
}
|
|
28189
|
+
});
|
|
28190
|
+
|
|
28378
28191
|
// src/internal/components/TransactionsMenu/index.ts
|
|
28379
28192
|
var init_TransactionsMenu2 = __esm({
|
|
28380
28193
|
"src/internal/components/TransactionsMenu/index.ts"() {
|
|
@@ -28402,21 +28215,6 @@ var init_constants8 = __esm({
|
|
|
28402
28215
|
}
|
|
28403
28216
|
});
|
|
28404
28217
|
|
|
28405
|
-
// src/internal/components/SettingsMenu/onboarding.setup.ts
|
|
28406
|
-
var SETTINGS_MENU_ONBOARDING_ID, SETTINGS_MENU_TOUR;
|
|
28407
|
-
var init_onboarding_setup11 = __esm({
|
|
28408
|
-
"src/internal/components/SettingsMenu/onboarding.setup.ts"() {
|
|
28409
|
-
SETTINGS_MENU_ONBOARDING_ID = "embarkai-settings-menu-onboarding";
|
|
28410
|
-
SETTINGS_MENU_TOUR = [
|
|
28411
|
-
{
|
|
28412
|
-
elId: SETTINGS_MENU_ONBOARDING_ID,
|
|
28413
|
-
title: "passport:common.onboarding.settingsMenu.title",
|
|
28414
|
-
description: "passport:common.onboarding.settingsMenu.description"
|
|
28415
|
-
}
|
|
28416
|
-
];
|
|
28417
|
-
}
|
|
28418
|
-
});
|
|
28419
|
-
|
|
28420
28218
|
// src/internal/components/SettingsMenu/SettingsMenu.tsx
|
|
28421
28219
|
import { useQuery as useQuery27 } from "@tanstack/react-query";
|
|
28422
28220
|
import { ArrowLeft as ArrowLeft22, HardDrive as HardDrive3 } from "lucide-react";
|
|
@@ -28473,41 +28271,30 @@ function SettingsMenu() {
|
|
|
28473
28271
|
queryFn: getNicknameInfo
|
|
28474
28272
|
});
|
|
28475
28273
|
const highlightedKeys = settingsNotifications.map((n) => n.target);
|
|
28476
|
-
return /* @__PURE__ */ jsxs112(
|
|
28477
|
-
"div",
|
|
28478
|
-
|
|
28479
|
-
|
|
28480
|
-
|
|
28481
|
-
|
|
28482
|
-
|
|
28274
|
+
return /* @__PURE__ */ jsxs112(Expandable, { isExpanded: true, contentClassName: "flex flex-col gap-[var(--ui-kit-gap)]", children: [
|
|
28275
|
+
/* @__PURE__ */ jsxs112("div", { className: "flex items-center gap-[var(--ui-kit-gap)]", children: [
|
|
28276
|
+
/* @__PURE__ */ jsx123(Button, { variant: "ghost", size: "icon", title: "Back", onClick: () => setPage("main-menu" /* MAIN_MENU */), children: /* @__PURE__ */ jsx123(ArrowLeft22, { className: "h-4 w-4" }) }),
|
|
28277
|
+
/* @__PURE__ */ jsx123("span", { className: "text-xl font-semibold", children: t("passport:common.settings") })
|
|
28278
|
+
] }),
|
|
28279
|
+
/* @__PURE__ */ jsx123("div", { className: "w-full flex flex-col gap-[var(--ui-kit-gap)]", children: settingsButtons.map((el) => ({ ...el, onClick: () => setPage(el.id) })).map(({ id, name, Icon: Icon2, onClick }) => /* @__PURE__ */ jsxs112(
|
|
28280
|
+
Button,
|
|
28281
|
+
{
|
|
28282
|
+
variant: "secondary",
|
|
28283
|
+
size: "large",
|
|
28284
|
+
onClick,
|
|
28285
|
+
disabled: !address,
|
|
28286
|
+
className: cn2(
|
|
28287
|
+
"w-full items-center justify-start",
|
|
28288
|
+
highlightedKeys.includes(id) && "animate-glow-warning"
|
|
28289
|
+
),
|
|
28290
|
+
children: [
|
|
28291
|
+
/* @__PURE__ */ jsx123(Icon2, { className: "w-4 h-4" }),
|
|
28292
|
+
/* @__PURE__ */ jsx123("span", { children: t(name) })
|
|
28293
|
+
]
|
|
28483
28294
|
},
|
|
28484
|
-
|
|
28485
|
-
|
|
28486
|
-
|
|
28487
|
-
/* @__PURE__ */ jsx123(Button, { variant: "ghost", size: "icon", title: "Back", onClick: () => setPage("main-menu" /* MAIN_MENU */), children: /* @__PURE__ */ jsx123(ArrowLeft22, { className: "h-4 w-4" }) }),
|
|
28488
|
-
/* @__PURE__ */ jsx123("span", { className: "text-xl font-semibold", children: t("passport:common.settings") })
|
|
28489
|
-
] }),
|
|
28490
|
-
/* @__PURE__ */ jsx123("div", { className: "w-full flex flex-col gap-[var(--ui-kit-gap)]", children: settingsButtons.map((el) => ({ ...el, onClick: () => setPage(el.id) })).map(({ id, name, Icon: Icon2, onClick }) => /* @__PURE__ */ jsxs112(
|
|
28491
|
-
Button,
|
|
28492
|
-
{
|
|
28493
|
-
variant: "secondary",
|
|
28494
|
-
size: "large",
|
|
28495
|
-
onClick,
|
|
28496
|
-
disabled: !address,
|
|
28497
|
-
className: cn2(
|
|
28498
|
-
"w-full items-center justify-start",
|
|
28499
|
-
highlightedKeys.includes(id) && "animate-glow-warning"
|
|
28500
|
-
),
|
|
28501
|
-
children: [
|
|
28502
|
-
/* @__PURE__ */ jsx123(Icon2, { className: "w-4 h-4" }),
|
|
28503
|
-
/* @__PURE__ */ jsx123("span", { children: t(name) })
|
|
28504
|
-
]
|
|
28505
|
-
},
|
|
28506
|
-
id
|
|
28507
|
-
)) })
|
|
28508
|
-
]
|
|
28509
|
-
}
|
|
28510
|
-
);
|
|
28295
|
+
id
|
|
28296
|
+
)) })
|
|
28297
|
+
] });
|
|
28511
28298
|
}
|
|
28512
28299
|
var init_SettingsMenu = __esm({
|
|
28513
28300
|
"src/internal/components/SettingsMenu/SettingsMenu.tsx"() {
|
|
@@ -28520,12 +28307,27 @@ var init_SettingsMenu = __esm({
|
|
|
28520
28307
|
init_useLayoutStore();
|
|
28521
28308
|
init_pro_mode();
|
|
28522
28309
|
init_utils();
|
|
28310
|
+
init_Expandable2();
|
|
28523
28311
|
init_useProvidersList();
|
|
28524
28312
|
init_Onboarding();
|
|
28525
28313
|
init_TransactionsMenu2();
|
|
28526
28314
|
init_button();
|
|
28527
28315
|
init_constants8();
|
|
28528
|
-
|
|
28316
|
+
}
|
|
28317
|
+
});
|
|
28318
|
+
|
|
28319
|
+
// src/internal/components/SettingsMenu/onboarding.setup.ts
|
|
28320
|
+
var SETTINGS_MENU_TOUR;
|
|
28321
|
+
var init_onboarding_setup11 = __esm({
|
|
28322
|
+
"src/internal/components/SettingsMenu/onboarding.setup.ts"() {
|
|
28323
|
+
init_constants();
|
|
28324
|
+
SETTINGS_MENU_TOUR = [
|
|
28325
|
+
{
|
|
28326
|
+
elId: `${EMBARKAI_DIALOG_ONBOARDING_ID}-${"settings" /* SETTINGS */}`,
|
|
28327
|
+
title: "passport:common.onboarding.settingsMenu.title",
|
|
28328
|
+
description: "passport:common.onboarding.settingsMenu.description"
|
|
28329
|
+
}
|
|
28330
|
+
];
|
|
28529
28331
|
}
|
|
28530
28332
|
});
|
|
28531
28333
|
|
|
@@ -28751,35 +28553,25 @@ import { useCallback as useCallback31, useEffect as useEffect50 } from "react";
|
|
|
28751
28553
|
import { jsx as jsx125 } from "react/jsx-runtime";
|
|
28752
28554
|
function usePageMapper() {
|
|
28753
28555
|
const page = useLayoutDataStore((st) => st.page);
|
|
28754
|
-
const {
|
|
28755
|
-
setDialogTitle,
|
|
28756
|
-
setDialogDescription,
|
|
28757
|
-
setIsDialogForced,
|
|
28758
|
-
setDialogContent,
|
|
28759
|
-
setIsDialogOpen,
|
|
28760
|
-
setIsDialogClosing
|
|
28761
|
-
} = useLayoutStore();
|
|
28762
28556
|
const closeDialog = useCallback31(() => {
|
|
28763
|
-
|
|
28557
|
+
useLayoutStore.setState({ isDialogAnimating: true });
|
|
28764
28558
|
setTimeout(() => {
|
|
28765
|
-
|
|
28766
|
-
|
|
28767
|
-
|
|
28768
|
-
|
|
28769
|
-
|
|
28770
|
-
|
|
28559
|
+
useLayoutStore.setState({
|
|
28560
|
+
dialogContent: null,
|
|
28561
|
+
isDialogAnimating: false,
|
|
28562
|
+
isDialogOpen: false,
|
|
28563
|
+
isDialogForced: false
|
|
28564
|
+
// closing via page === null should reset forced state
|
|
28565
|
+
});
|
|
28771
28566
|
}, CLEAR_DIALOG_TIMEOUT);
|
|
28772
|
-
}, [
|
|
28773
|
-
const openDialog = useCallback31(
|
|
28774
|
-
(
|
|
28775
|
-
|
|
28776
|
-
|
|
28777
|
-
|
|
28778
|
-
|
|
28779
|
-
|
|
28780
|
-
},
|
|
28781
|
-
[setDialogContent, setDialogDescription, setDialogTitle, setIsDialogOpen]
|
|
28782
|
-
);
|
|
28567
|
+
}, []);
|
|
28568
|
+
const openDialog = useCallback31((pageItem) => {
|
|
28569
|
+
useLayoutStore.setState({
|
|
28570
|
+
dialogContent: /* @__PURE__ */ jsx125(pageItem.component, {}),
|
|
28571
|
+
isDialogOpen: true
|
|
28572
|
+
// isDialogAnimating: true
|
|
28573
|
+
});
|
|
28574
|
+
}, []);
|
|
28783
28575
|
useEffect50(() => {
|
|
28784
28576
|
if (page === null) return closeDialog();
|
|
28785
28577
|
const pageItem = PAGE_MAP[page];
|
|
@@ -28848,7 +28640,7 @@ var init_package = __esm({
|
|
|
28848
28640
|
"package.json"() {
|
|
28849
28641
|
package_default = {
|
|
28850
28642
|
name: "@embarkai/ui-kit",
|
|
28851
|
-
version: "0.4.
|
|
28643
|
+
version: "0.4.94",
|
|
28852
28644
|
description: "React UI components and hooks for EmbarkAI authentication and Account Abstraction",
|
|
28853
28645
|
type: "module",
|
|
28854
28646
|
main: "./dist/index.cjs",
|
|
@@ -29111,9 +28903,9 @@ var init_Footer2 = __esm({
|
|
|
29111
28903
|
var EMBARKAI_HEADER_ONBOARDING_ID, EMBARKAI_HEADER_TOUR_BUTTON_ID, ONBOARDING_TOURS;
|
|
29112
28904
|
var init_onborading_setup = __esm({
|
|
29113
28905
|
"src/internal/components/Header/onborading.setup.ts"() {
|
|
28906
|
+
init_constants();
|
|
29114
28907
|
init_BuyMenu2();
|
|
29115
28908
|
init_ChainsMenu2();
|
|
29116
|
-
init_Dialog2();
|
|
29117
28909
|
init_Footer2();
|
|
29118
28910
|
init_KeyshareRestoreMenu2();
|
|
29119
28911
|
init_MainMenu2();
|
|
@@ -29328,7 +29120,7 @@ import { forwardRef as forwardRef6 } from "react";
|
|
|
29328
29120
|
import { jsx as jsx128, jsxs as jsxs116 } from "react/jsx-runtime";
|
|
29329
29121
|
function useDecideContentStyles() {
|
|
29330
29122
|
const isMobileView = useLayoutStore((st) => st.isMobileView);
|
|
29331
|
-
const isClosing = useLayoutStore((st) => !!st.isDialogOpen && !!st.
|
|
29123
|
+
const isClosing = useLayoutStore((st) => !!st.isDialogOpen && !!st.isDialogAnimating);
|
|
29332
29124
|
const mobileStyles = isMobileView ? { "--ui-kit-bdrs": "20px 20px 0px 0px" } : {};
|
|
29333
29125
|
return {
|
|
29334
29126
|
isClosing,
|
|
@@ -29512,12 +29304,10 @@ function Dialog2() {
|
|
|
29512
29304
|
const className = config.current?.ui?.dialogClassName;
|
|
29513
29305
|
const session = useSession((st) => st.session);
|
|
29514
29306
|
const hasServerVault = useSession((st) => st.hasServerVault);
|
|
29307
|
+
const { colorMode, maxScrollHeight, isDialogOpen, dialogContent, isDialogForced } = useLayoutStore();
|
|
29515
29308
|
const page = useLayoutDataStore((st) => st.page);
|
|
29516
29309
|
const transitionPageHeight = useLayoutDataStore((st) => st.transitionPageHeight);
|
|
29517
|
-
|
|
29518
|
-
const setPostAuthNavigation = useLayoutDataStore((st) => st.setPostAuthNavigation);
|
|
29519
|
-
const { colorMode, isDialogOpen, dialogTitle, dialogDescription, dialogContent, isDialogForced, setIsSettings } = useLayoutStore();
|
|
29520
|
-
useEffect52(() => setIsSettings(!!session), [session, setIsSettings]);
|
|
29310
|
+
useEffect52(() => useLayoutStore.setState({ isSettings: !!session }), [session]);
|
|
29521
29311
|
usePageMapper();
|
|
29522
29312
|
useAutoConnect();
|
|
29523
29313
|
useBackupStatusChanges();
|
|
@@ -29532,6 +29322,7 @@ function Dialog2() {
|
|
|
29532
29322
|
onOpenChange: (open) => {
|
|
29533
29323
|
if (isDialogForced) return;
|
|
29534
29324
|
if (!open) {
|
|
29325
|
+
const { setPostAuthNavigation, setPage } = useLayoutDataStore.getState();
|
|
29535
29326
|
setPostAuthNavigation(null);
|
|
29536
29327
|
setPage(null);
|
|
29537
29328
|
}
|
|
@@ -29543,18 +29334,29 @@ function Dialog2() {
|
|
|
29543
29334
|
colorMode,
|
|
29544
29335
|
className,
|
|
29545
29336
|
children: [
|
|
29546
|
-
/* @__PURE__ */ jsx130(VisuallyHidden, { children: /* @__PURE__ */ jsx130(DialogTitle, { children:
|
|
29547
|
-
/* @__PURE__ */ jsx130(DialogDescription, { className: "sr-only", children:
|
|
29337
|
+
/* @__PURE__ */ jsx130(VisuallyHidden, { children: /* @__PURE__ */ jsx130(DialogTitle, { children: "embarkAI" }) }),
|
|
29338
|
+
/* @__PURE__ */ jsx130(DialogDescription, { className: "sr-only", children: "embarkAI wallet" }),
|
|
29548
29339
|
!isHeaderHidden && /* @__PURE__ */ jsx130(Header, {}),
|
|
29549
29340
|
/* @__PURE__ */ jsx130(AnimatePresence, { mode: "wait", initial: false, children: /* @__PURE__ */ jsx130(
|
|
29550
29341
|
motion.div,
|
|
29551
29342
|
{
|
|
29343
|
+
style: { overflow: "hidden" },
|
|
29552
29344
|
initial: { opacity: 0, height: transitionPageHeight },
|
|
29553
29345
|
animate: { opacity: 1, height: "auto" },
|
|
29554
29346
|
exit: { opacity: 0, height: transitionPageHeight },
|
|
29555
|
-
style: { overflow: "hidden" },
|
|
29556
29347
|
transition: Y_ANIMATION_SETUP,
|
|
29557
|
-
children:
|
|
29348
|
+
children: /* @__PURE__ */ jsx130(
|
|
29349
|
+
"div",
|
|
29350
|
+
{
|
|
29351
|
+
ref: (inst) => onboarder.registerElement(`${EMBARKAI_DIALOG_ONBOARDING_ID}-${page}`, inst),
|
|
29352
|
+
style: {
|
|
29353
|
+
"--ui-kit-scrollbar-mah": `${maxScrollHeight}px`,
|
|
29354
|
+
"--ui-kit-list-scrollbar-pd-r": "var(--ui-kit-pd)"
|
|
29355
|
+
},
|
|
29356
|
+
className: "list-scrollbar-y w-full p-[var(--ui-kit-pd)]",
|
|
29357
|
+
children: dialogContent
|
|
29358
|
+
}
|
|
29359
|
+
)
|
|
29558
29360
|
},
|
|
29559
29361
|
page || "empty"
|
|
29560
29362
|
) }),
|
|
@@ -29565,7 +29367,6 @@ function Dialog2() {
|
|
|
29565
29367
|
}
|
|
29566
29368
|
);
|
|
29567
29369
|
}
|
|
29568
|
-
var EMBARKAI_DIALOG_ONBOARDING_ID;
|
|
29569
29370
|
var init_Dialog = __esm({
|
|
29570
29371
|
"src/internal/components/Dialog/Dialog.tsx"() {
|
|
29571
29372
|
init_ProviderContext();
|
|
@@ -29584,7 +29385,6 @@ var init_Dialog = __esm({
|
|
|
29584
29385
|
init_Onboarding();
|
|
29585
29386
|
init_dialog();
|
|
29586
29387
|
init_visually_hidden();
|
|
29587
|
-
EMBARKAI_DIALOG_ONBOARDING_ID = "embark-main-dialog-content";
|
|
29588
29388
|
}
|
|
29589
29389
|
});
|
|
29590
29390
|
|
|
@@ -32352,7 +32152,7 @@ var init_ProviderContext = __esm({
|
|
|
32352
32152
|
});
|
|
32353
32153
|
|
|
32354
32154
|
// src/styles/built.css
|
|
32355
|
-
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 .sticky{position:sticky}.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 .float-right{float:right}.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-\\[30dvw\\]{width:30dvw}.embarkai-ui-scope .w-\\[40px\\]{width:40px}.embarkai-ui-scope .w-\\[60dvw\\]{width:60dvw}.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-7xl{max-width:80rem}.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-\\[420px\\]{max-width:420px}.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-10{padding-left:2.5rem;padding-right:2.5rem}.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-light{font-weight:300}.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-\\[inset_0_0_0_1px_var\\(--ui-kit-bd\\)\\]{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.embarkai-ui-scope .shadow-\\[inset_0_0_0_1px_var\\(--ui-kit-bd\\)\\]{--tw-shadow:inset 0 0 0 1px var(--ui-kit-bd);--tw-shadow-colored:inset 0 0 0 1px 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)}:root{--w3m-z-index:10001!important}.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-secondary:var(--embark-ui-secondary,#e4e4e4);--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-secondary:var(--embark-ui-secondary,#2a2a2a);--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-h\\)\\]:focus-within{background-color:var(--ui-kit-secondary-h)}.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-a\\)\\]:hover{background-color:var(--ui-kit-secondary-a)}.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 .md\\:text-3xl{font-size:1.875rem;line-height:2.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}`;
|
|
32155
|
+
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 .sticky{position:sticky}.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 .float-right{float:right}.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-\\[30dvw\\]{width:30dvw}.embarkai-ui-scope .w-\\[40px\\]{width:40px}.embarkai-ui-scope .w-\\[60dvw\\]{width:60dvw}.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-7xl{max-width:80rem}.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-\\[420px\\]{max-width:420px}.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-not-allowed{cursor:not-allowed}.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-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-10{padding-left:2.5rem;padding-right:2.5rem}.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-light{font-weight:300}.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-\\[inset_0_0_0_1px_var\\(--ui-kit-bd\\)\\]{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.embarkai-ui-scope .shadow-\\[inset_0_0_0_1px_var\\(--ui-kit-bd\\)\\]{--tw-shadow:inset 0 0 0 1px var(--ui-kit-bd);--tw-shadow-colored:inset 0 0 0 1px 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 .ring-0{--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 .ring-offset-0{--tw-ring-offset-width:0px}.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)}:root{--w3m-z-index:10001!important}.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-secondary:var(--embark-ui-secondary,#e4e4e4);--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-secondary:var(--embark-ui-secondary,#2a2a2a);--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\\: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-\\[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\\:border-\\[var\\(--ui-kit-bd\\)\\]:focus-within{border-color:var(--ui-kit-bd)}.embarkai-ui-scope .focus-within\\:opacity-100:focus-within{opacity:1}.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-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-within\\:hover\\:opacity-100:hover:focus-within{opacity:1}.embarkai-ui-scope .focus\\:border-\\[var\\(--ui-kit-primary\\)\\]:focus{border-color:var(--ui-kit-primary)}.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\\: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\\: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 .md\\:text-3xl{font-size:1.875rem;line-height:2.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}`;
|
|
32356
32156
|
|
|
32357
32157
|
// src/index.ts
|
|
32358
32158
|
init_ProviderContext();
|