kaleido-ui 0.1.49 → 0.1.51
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/native/index.cjs +13 -6
- package/dist/native/index.d.cts +2 -1
- package/dist/native/index.d.ts +2 -1
- package/dist/native/index.js +13 -6
- package/dist/web/index.cjs +1218 -527
- package/dist/web/index.d.cts +189 -1
- package/dist/web/index.d.ts +189 -1
- package/dist/web/index.js +1202 -527
- package/package.json +1 -1
package/dist/web/index.js
CHANGED
|
@@ -5177,8 +5177,72 @@ function PageHeader({
|
|
|
5177
5177
|
] }) });
|
|
5178
5178
|
}
|
|
5179
5179
|
|
|
5180
|
-
// src/web/components/
|
|
5180
|
+
// src/web/components/extension-page-frame.tsx
|
|
5181
5181
|
import { jsx as jsx52, jsxs as jsxs39 } from "react/jsx-runtime";
|
|
5182
|
+
function ExtensionPageFrame({
|
|
5183
|
+
children,
|
|
5184
|
+
header,
|
|
5185
|
+
title,
|
|
5186
|
+
subtitle,
|
|
5187
|
+
left,
|
|
5188
|
+
right,
|
|
5189
|
+
onBack,
|
|
5190
|
+
backLabel,
|
|
5191
|
+
titleAlign,
|
|
5192
|
+
bottomNav,
|
|
5193
|
+
bottomFade = Boolean(bottomNav),
|
|
5194
|
+
scroll = true,
|
|
5195
|
+
viewportAs = "main",
|
|
5196
|
+
className,
|
|
5197
|
+
contentClassName,
|
|
5198
|
+
viewportClassName,
|
|
5199
|
+
fadeClassName
|
|
5200
|
+
}) {
|
|
5201
|
+
const renderedHeader = header ?? (title || subtitle || left || right || onBack ? /* @__PURE__ */ jsx52(
|
|
5202
|
+
PageHeader,
|
|
5203
|
+
{
|
|
5204
|
+
title,
|
|
5205
|
+
subtitle,
|
|
5206
|
+
left,
|
|
5207
|
+
right,
|
|
5208
|
+
onBack,
|
|
5209
|
+
backLabel,
|
|
5210
|
+
titleAlign
|
|
5211
|
+
}
|
|
5212
|
+
) : null);
|
|
5213
|
+
return /* @__PURE__ */ jsxs39(
|
|
5214
|
+
"div",
|
|
5215
|
+
{
|
|
5216
|
+
className: cn(
|
|
5217
|
+
"relative flex h-screen flex-col overflow-hidden bg-background font-display text-foreground",
|
|
5218
|
+
className
|
|
5219
|
+
),
|
|
5220
|
+
children: [
|
|
5221
|
+
renderedHeader,
|
|
5222
|
+
scroll ? /* @__PURE__ */ jsx52(
|
|
5223
|
+
ScrollArea,
|
|
5224
|
+
{
|
|
5225
|
+
className: cn("flex-1", contentClassName),
|
|
5226
|
+
viewportAs,
|
|
5227
|
+
viewportClassName,
|
|
5228
|
+
children
|
|
5229
|
+
}
|
|
5230
|
+
) : /* @__PURE__ */ jsx52("div", { className: cn("min-h-0 flex-1", contentClassName), children }),
|
|
5231
|
+
bottomNav,
|
|
5232
|
+
bottomFade && /* @__PURE__ */ jsx52(
|
|
5233
|
+
FadeOverlay,
|
|
5234
|
+
{
|
|
5235
|
+
heightClassName: "h-20",
|
|
5236
|
+
className: cn("fixed inset-x-0 bottom-0 z-20", fadeClassName)
|
|
5237
|
+
}
|
|
5238
|
+
)
|
|
5239
|
+
]
|
|
5240
|
+
}
|
|
5241
|
+
);
|
|
5242
|
+
}
|
|
5243
|
+
|
|
5244
|
+
// src/web/components/setting-item.tsx
|
|
5245
|
+
import { jsx as jsx53, jsxs as jsxs40 } from "react/jsx-runtime";
|
|
5182
5246
|
function SettingItem({
|
|
5183
5247
|
icon,
|
|
5184
5248
|
iconSrc,
|
|
@@ -5192,7 +5256,7 @@ function SettingItem({
|
|
|
5192
5256
|
iconColor = "text-primary"
|
|
5193
5257
|
}) {
|
|
5194
5258
|
const isClickable = !!onClick;
|
|
5195
|
-
return /* @__PURE__ */
|
|
5259
|
+
return /* @__PURE__ */ jsx53(
|
|
5196
5260
|
"div",
|
|
5197
5261
|
{
|
|
5198
5262
|
className: cn(
|
|
@@ -5201,26 +5265,26 @@ function SettingItem({
|
|
|
5201
5265
|
className
|
|
5202
5266
|
),
|
|
5203
5267
|
onClick,
|
|
5204
|
-
children: /* @__PURE__ */
|
|
5205
|
-
/* @__PURE__ */
|
|
5206
|
-
(icon || iconSrc) && /* @__PURE__ */
|
|
5268
|
+
children: /* @__PURE__ */ jsxs40("div", { className: "flex items-center justify-between gap-3", children: [
|
|
5269
|
+
/* @__PURE__ */ jsxs40("div", { className: "flex items-center gap-3 flex-1 min-w-0", children: [
|
|
5270
|
+
(icon || iconSrc) && /* @__PURE__ */ jsx53(
|
|
5207
5271
|
"div",
|
|
5208
5272
|
{
|
|
5209
5273
|
className: cn(
|
|
5210
5274
|
"flex-shrink-0 size-10 rounded-xl flex items-center justify-center bg-primary/15 group-hover:bg-primary/25 group-hover:scale-105 transition-all",
|
|
5211
5275
|
iconColor
|
|
5212
5276
|
),
|
|
5213
|
-
children: iconSrc ? /* @__PURE__ */
|
|
5277
|
+
children: iconSrc ? /* @__PURE__ */ jsx53("img", { src: iconSrc, alt: iconAlt ?? title, className: "size-5 object-contain" }) : /* @__PURE__ */ jsx53("span", { className: "material-symbols-outlined text-icon-xl", children: icon })
|
|
5214
5278
|
}
|
|
5215
5279
|
),
|
|
5216
|
-
/* @__PURE__ */
|
|
5217
|
-
/* @__PURE__ */
|
|
5218
|
-
description && /* @__PURE__ */
|
|
5280
|
+
/* @__PURE__ */ jsxs40("div", { className: "flex flex-col flex-1 min-w-0", children: [
|
|
5281
|
+
/* @__PURE__ */ jsx53("span", { className: "font-bold text-body text-foreground tracking-wide", children: title }),
|
|
5282
|
+
description && /* @__PURE__ */ jsx53("span", { className: "text-sm text-muted-foreground mt-0.5 font-medium", children: description })
|
|
5219
5283
|
] })
|
|
5220
5284
|
] }),
|
|
5221
|
-
/* @__PURE__ */
|
|
5222
|
-
value && /* @__PURE__ */
|
|
5223
|
-
showChevron && isClickable && /* @__PURE__ */
|
|
5285
|
+
/* @__PURE__ */ jsxs40("div", { className: "flex items-center gap-2 flex-shrink-0", children: [
|
|
5286
|
+
value && /* @__PURE__ */ jsx53("span", { className: "text-xs text-muted-foreground font-mono", children: value }),
|
|
5287
|
+
showChevron && isClickable && /* @__PURE__ */ jsx53("span", { className: "material-symbols-outlined text-icon-md text-muted-foreground group-hover:scale-110 group-hover:text-white transition-all", children: "chevron_right" })
|
|
5224
5288
|
] })
|
|
5225
5289
|
] })
|
|
5226
5290
|
}
|
|
@@ -5228,9 +5292,9 @@ function SettingItem({
|
|
|
5228
5292
|
}
|
|
5229
5293
|
|
|
5230
5294
|
// src/web/components/section-label.tsx
|
|
5231
|
-
import { jsx as
|
|
5295
|
+
import { jsx as jsx54 } from "react/jsx-runtime";
|
|
5232
5296
|
function SectionLabel({ children, className }) {
|
|
5233
|
-
return /* @__PURE__ */
|
|
5297
|
+
return /* @__PURE__ */ jsx54(
|
|
5234
5298
|
"span",
|
|
5235
5299
|
{
|
|
5236
5300
|
className: cn("text-xxs font-black uppercase tracking-eyebrow-wide text-muted-foreground", className),
|
|
@@ -5239,8 +5303,22 @@ function SectionLabel({ children, className }) {
|
|
|
5239
5303
|
);
|
|
5240
5304
|
}
|
|
5241
5305
|
|
|
5306
|
+
// src/web/components/section-header.tsx
|
|
5307
|
+
import { jsx as jsx55, jsxs as jsxs41 } from "react/jsx-runtime";
|
|
5308
|
+
function SectionHeader({
|
|
5309
|
+
children,
|
|
5310
|
+
right,
|
|
5311
|
+
as: Tag = "h2",
|
|
5312
|
+
className
|
|
5313
|
+
}) {
|
|
5314
|
+
return /* @__PURE__ */ jsxs41("div", { className: cn("flex items-center justify-between gap-3 px-1", className), children: [
|
|
5315
|
+
/* @__PURE__ */ jsx55(Tag, { className: "text-xs font-bold uppercase tracking-wider text-muted-foreground", children }),
|
|
5316
|
+
right
|
|
5317
|
+
] });
|
|
5318
|
+
}
|
|
5319
|
+
|
|
5242
5320
|
// src/web/components/alert-banner.tsx
|
|
5243
|
-
import { jsx as
|
|
5321
|
+
import { jsx as jsx56, jsxs as jsxs42 } from "react/jsx-runtime";
|
|
5244
5322
|
var variantStyles = {
|
|
5245
5323
|
error: { container: "bg-danger/40", icon: "text-danger", iconName: "error" },
|
|
5246
5324
|
warning: { container: "bg-warning/40", icon: "text-warning", iconName: "warning" },
|
|
@@ -5249,15 +5327,67 @@ var variantStyles = {
|
|
|
5249
5327
|
};
|
|
5250
5328
|
function AlertBanner({ variant = "info", icon, children, className }) {
|
|
5251
5329
|
const styles = variantStyles[variant];
|
|
5252
|
-
return /* @__PURE__ */
|
|
5253
|
-
/* @__PURE__ */
|
|
5254
|
-
/* @__PURE__ */
|
|
5330
|
+
return /* @__PURE__ */ jsxs42("div", { className: cn("rounded-xl p-3 flex items-center gap-2", styles.container, className), children: [
|
|
5331
|
+
/* @__PURE__ */ jsx56(Icon, { name: icon ?? styles.iconName, size: "md", className: cn("shrink-0", styles.icon) }),
|
|
5332
|
+
/* @__PURE__ */ jsx56("div", { className: cn("text-sm", styles.icon), children })
|
|
5255
5333
|
] });
|
|
5256
5334
|
}
|
|
5257
5335
|
|
|
5336
|
+
// src/web/components/info-panel.tsx
|
|
5337
|
+
import { jsx as jsx57, jsxs as jsxs43 } from "react/jsx-runtime";
|
|
5338
|
+
var toneClass = {
|
|
5339
|
+
default: {
|
|
5340
|
+
panel: "border-white/8 bg-white/[0.03]",
|
|
5341
|
+
icon: "text-muted-foreground",
|
|
5342
|
+
title: "text-foreground"
|
|
5343
|
+
},
|
|
5344
|
+
primary: {
|
|
5345
|
+
panel: "border-primary/30 bg-primary/5",
|
|
5346
|
+
icon: "text-primary",
|
|
5347
|
+
title: "text-primary"
|
|
5348
|
+
},
|
|
5349
|
+
info: {
|
|
5350
|
+
panel: "border-info/20 bg-info/10",
|
|
5351
|
+
icon: "text-info",
|
|
5352
|
+
title: "text-info"
|
|
5353
|
+
},
|
|
5354
|
+
warning: {
|
|
5355
|
+
panel: "border-warning/20 bg-warning/5",
|
|
5356
|
+
icon: "text-warning",
|
|
5357
|
+
title: "text-warning"
|
|
5358
|
+
},
|
|
5359
|
+
danger: {
|
|
5360
|
+
panel: "border-danger/20 bg-danger/10",
|
|
5361
|
+
icon: "text-danger",
|
|
5362
|
+
title: "text-danger"
|
|
5363
|
+
},
|
|
5364
|
+
success: {
|
|
5365
|
+
panel: "border-success/20 bg-success/10",
|
|
5366
|
+
icon: "text-success",
|
|
5367
|
+
title: "text-success"
|
|
5368
|
+
}
|
|
5369
|
+
};
|
|
5370
|
+
function InfoPanel({
|
|
5371
|
+
tone = "info",
|
|
5372
|
+
title,
|
|
5373
|
+
icon = tone === "danger" ? "warning" : tone === "success" ? "check_circle" : "info",
|
|
5374
|
+
children,
|
|
5375
|
+
className
|
|
5376
|
+
}) {
|
|
5377
|
+
const styles = toneClass[tone];
|
|
5378
|
+
const renderedIcon = typeof icon === "string" ? /* @__PURE__ */ jsx57(Icon, { name: icon, className: cn("mt-0.5 shrink-0 text-icon-xl", styles.icon) }) : icon;
|
|
5379
|
+
return /* @__PURE__ */ jsx57("div", { className: cn("rounded-xl border p-4", styles.panel, className), children: /* @__PURE__ */ jsxs43("div", { className: "flex items-start gap-3", children: [
|
|
5380
|
+
renderedIcon,
|
|
5381
|
+
/* @__PURE__ */ jsxs43("div", { className: "min-w-0 flex-1", children: [
|
|
5382
|
+
title && /* @__PURE__ */ jsx57("p", { className: cn("text-sm font-bold", styles.title), children: title }),
|
|
5383
|
+
/* @__PURE__ */ jsx57("div", { className: cn("text-xs leading-relaxed", title ? "mt-1" : "", styles.title), children })
|
|
5384
|
+
] })
|
|
5385
|
+
] }) });
|
|
5386
|
+
}
|
|
5387
|
+
|
|
5258
5388
|
// src/web/components/error-boundary.tsx
|
|
5259
5389
|
import { Component } from "react";
|
|
5260
|
-
import { jsx as
|
|
5390
|
+
import { jsx as jsx58, jsxs as jsxs44 } from "react/jsx-runtime";
|
|
5261
5391
|
var ErrorBoundary = class extends Component {
|
|
5262
5392
|
constructor(props) {
|
|
5263
5393
|
super(props);
|
|
@@ -5271,11 +5401,11 @@ var ErrorBoundary = class extends Component {
|
|
|
5271
5401
|
}
|
|
5272
5402
|
render() {
|
|
5273
5403
|
if (this.state.hasError) {
|
|
5274
|
-
return this.props.fallback ?? /* @__PURE__ */
|
|
5275
|
-
/* @__PURE__ */
|
|
5276
|
-
/* @__PURE__ */
|
|
5277
|
-
/* @__PURE__ */
|
|
5278
|
-
/* @__PURE__ */
|
|
5404
|
+
return this.props.fallback ?? /* @__PURE__ */ jsxs44("div", { className: "min-h-screen bg-background text-foreground font-display flex flex-col items-center justify-center p-6 gap-4", children: [
|
|
5405
|
+
/* @__PURE__ */ jsx58("span", { className: "material-symbols-outlined text-danger text-icon-5xl", children: "error" }),
|
|
5406
|
+
/* @__PURE__ */ jsx58("h2", { className: "text-lg font-bold", children: "Something went wrong" }),
|
|
5407
|
+
/* @__PURE__ */ jsx58("p", { className: "text-sm text-muted-foreground text-center", children: this.state.error?.message ?? "An unexpected error occurred." }),
|
|
5408
|
+
/* @__PURE__ */ jsx58(
|
|
5279
5409
|
"button",
|
|
5280
5410
|
{
|
|
5281
5411
|
onClick: () => {
|
|
@@ -5293,7 +5423,7 @@ var ErrorBoundary = class extends Component {
|
|
|
5293
5423
|
};
|
|
5294
5424
|
|
|
5295
5425
|
// src/web/components/recovery-phrase-card.tsx
|
|
5296
|
-
import { jsx as
|
|
5426
|
+
import { jsx as jsx59, jsxs as jsxs45 } from "react/jsx-runtime";
|
|
5297
5427
|
function RecoveryPhraseCard({
|
|
5298
5428
|
words,
|
|
5299
5429
|
revealed = false,
|
|
@@ -5304,10 +5434,10 @@ function RecoveryPhraseCard({
|
|
|
5304
5434
|
className
|
|
5305
5435
|
}) {
|
|
5306
5436
|
const hasWords = words.length > 0;
|
|
5307
|
-
return /* @__PURE__ */
|
|
5308
|
-
/* @__PURE__ */
|
|
5309
|
-
/* @__PURE__ */
|
|
5310
|
-
hasWords && revealed && onRevealChange && /* @__PURE__ */
|
|
5437
|
+
return /* @__PURE__ */ jsxs45("section", { className: cn("space-y-2", className), children: [
|
|
5438
|
+
/* @__PURE__ */ jsxs45("div", { className: "flex items-center justify-between px-0.5", children: [
|
|
5439
|
+
/* @__PURE__ */ jsx59("p", { className: "text-xs font-bold uppercase tracking-wider text-muted-foreground", children: title }),
|
|
5440
|
+
hasWords && revealed && onRevealChange && /* @__PURE__ */ jsxs45(
|
|
5311
5441
|
Button,
|
|
5312
5442
|
{
|
|
5313
5443
|
type: "button",
|
|
@@ -5316,27 +5446,27 @@ function RecoveryPhraseCard({
|
|
|
5316
5446
|
onClick: () => onRevealChange(!revealed),
|
|
5317
5447
|
className: "h-auto rounded-lg px-2 py-1 text-xs text-muted-foreground hover:text-white",
|
|
5318
5448
|
children: [
|
|
5319
|
-
/* @__PURE__ */
|
|
5449
|
+
/* @__PURE__ */ jsx59(Icon, { name: "visibility_off", className: "text-icon-md" }),
|
|
5320
5450
|
"Hide"
|
|
5321
5451
|
]
|
|
5322
5452
|
}
|
|
5323
5453
|
)
|
|
5324
5454
|
] }),
|
|
5325
|
-
/* @__PURE__ */
|
|
5326
|
-
hasWords ? /* @__PURE__ */
|
|
5455
|
+
/* @__PURE__ */ jsxs45("div", { className: "relative", children: [
|
|
5456
|
+
hasWords ? /* @__PURE__ */ jsx59(
|
|
5327
5457
|
"div",
|
|
5328
5458
|
{
|
|
5329
5459
|
className: cn(
|
|
5330
5460
|
"grid grid-cols-3 gap-2 transition-all duration-300",
|
|
5331
5461
|
!revealed && "pointer-events-none select-none blur-sm"
|
|
5332
5462
|
),
|
|
5333
|
-
children: words.map((word, index) => /* @__PURE__ */
|
|
5334
|
-
/* @__PURE__ */
|
|
5335
|
-
/* @__PURE__ */
|
|
5463
|
+
children: words.map((word, index) => /* @__PURE__ */ jsxs45("div", { className: "flex items-center gap-2 rounded-xl bg-card px-3 py-2.5", children: [
|
|
5464
|
+
/* @__PURE__ */ jsx59("span", { className: "w-4 shrink-0 text-xs font-bold text-muted-foreground", children: index + 1 }),
|
|
5465
|
+
/* @__PURE__ */ jsx59("span", { className: "font-mono text-sm text-white", children: word })
|
|
5336
5466
|
] }, `${index}-${word}`))
|
|
5337
5467
|
}
|
|
5338
|
-
) : /* @__PURE__ */
|
|
5339
|
-
hasWords && !revealed && onRevealChange && /* @__PURE__ */
|
|
5468
|
+
) : /* @__PURE__ */ jsx59("div", { className: "rounded-xl border border-warning/30 bg-warning/10 px-4 py-3 text-sm text-warning", children: emptyMessage }),
|
|
5469
|
+
hasWords && !revealed && onRevealChange && /* @__PURE__ */ jsx59("div", { className: "absolute inset-0 flex items-center justify-center", children: /* @__PURE__ */ jsxs45(
|
|
5340
5470
|
Button,
|
|
5341
5471
|
{
|
|
5342
5472
|
type: "button",
|
|
@@ -5344,13 +5474,13 @@ function RecoveryPhraseCard({
|
|
|
5344
5474
|
size: "sm",
|
|
5345
5475
|
onClick: () => onRevealChange(true),
|
|
5346
5476
|
children: [
|
|
5347
|
-
/* @__PURE__ */
|
|
5477
|
+
/* @__PURE__ */ jsx59(Icon, { name: "visibility", className: "text-icon-lg" }),
|
|
5348
5478
|
"Tap to reveal"
|
|
5349
5479
|
]
|
|
5350
5480
|
}
|
|
5351
5481
|
) })
|
|
5352
5482
|
] }),
|
|
5353
|
-
hasWords && revealed && onCopy && /* @__PURE__ */
|
|
5483
|
+
hasWords && revealed && onCopy && /* @__PURE__ */ jsxs45(
|
|
5354
5484
|
Button,
|
|
5355
5485
|
{
|
|
5356
5486
|
type: "button",
|
|
@@ -5359,7 +5489,7 @@ function RecoveryPhraseCard({
|
|
|
5359
5489
|
onClick: onCopy,
|
|
5360
5490
|
className: "w-full",
|
|
5361
5491
|
children: [
|
|
5362
|
-
/* @__PURE__ */
|
|
5492
|
+
/* @__PURE__ */ jsx59(Icon, { name: "content_copy", className: "text-icon-lg" }),
|
|
5363
5493
|
"Copy to clipboard"
|
|
5364
5494
|
]
|
|
5365
5495
|
}
|
|
@@ -5367,9 +5497,538 @@ function RecoveryPhraseCard({
|
|
|
5367
5497
|
] });
|
|
5368
5498
|
}
|
|
5369
5499
|
|
|
5500
|
+
// src/web/components/settings-selector-row.tsx
|
|
5501
|
+
import { jsx as jsx60, jsxs as jsxs46 } from "react/jsx-runtime";
|
|
5502
|
+
function SettingsSelectorRow({
|
|
5503
|
+
icon,
|
|
5504
|
+
title,
|
|
5505
|
+
description,
|
|
5506
|
+
control,
|
|
5507
|
+
className,
|
|
5508
|
+
iconClassName
|
|
5509
|
+
}) {
|
|
5510
|
+
return /* @__PURE__ */ jsxs46("div", { className: cn("flex items-start justify-between gap-3 rounded-2xl bg-card p-5", className), children: [
|
|
5511
|
+
/* @__PURE__ */ jsxs46("div", { className: "flex min-w-0 flex-1 items-start gap-3", children: [
|
|
5512
|
+
/* @__PURE__ */ jsx60(
|
|
5513
|
+
"div",
|
|
5514
|
+
{
|
|
5515
|
+
className: cn(
|
|
5516
|
+
"flex size-10 shrink-0 items-center justify-center rounded-xl bg-muted",
|
|
5517
|
+
iconClassName
|
|
5518
|
+
),
|
|
5519
|
+
children: icon
|
|
5520
|
+
}
|
|
5521
|
+
),
|
|
5522
|
+
/* @__PURE__ */ jsxs46("div", { className: "flex min-w-0 flex-1 flex-col", children: [
|
|
5523
|
+
/* @__PURE__ */ jsx60("span", { className: "text-body font-bold tracking-wide text-foreground", children: title }),
|
|
5524
|
+
description && /* @__PURE__ */ jsx60("span", { className: "mt-0.5 text-sm font-medium text-muted-foreground", children: description })
|
|
5525
|
+
] })
|
|
5526
|
+
] }),
|
|
5527
|
+
/* @__PURE__ */ jsx60("div", { className: "shrink-0", children: control })
|
|
5528
|
+
] });
|
|
5529
|
+
}
|
|
5530
|
+
|
|
5531
|
+
// src/web/components/bottom-sheet.tsx
|
|
5532
|
+
import { jsx as jsx61, jsxs as jsxs47 } from "react/jsx-runtime";
|
|
5533
|
+
function BottomSheet({
|
|
5534
|
+
open,
|
|
5535
|
+
title,
|
|
5536
|
+
icon,
|
|
5537
|
+
children,
|
|
5538
|
+
onClose,
|
|
5539
|
+
closeOnBackdrop = true,
|
|
5540
|
+
actions,
|
|
5541
|
+
className,
|
|
5542
|
+
contentClassName
|
|
5543
|
+
}) {
|
|
5544
|
+
if (!open) return null;
|
|
5545
|
+
const handleBackdropClick = (event) => {
|
|
5546
|
+
if (closeOnBackdrop && event.target === event.currentTarget) onClose?.();
|
|
5547
|
+
};
|
|
5548
|
+
return /* @__PURE__ */ jsx61(
|
|
5549
|
+
"div",
|
|
5550
|
+
{
|
|
5551
|
+
className: cn(
|
|
5552
|
+
"fixed inset-0 z-50 flex items-end justify-center bg-black/60 backdrop-blur-sm",
|
|
5553
|
+
className
|
|
5554
|
+
),
|
|
5555
|
+
onClick: handleBackdropClick,
|
|
5556
|
+
children: /* @__PURE__ */ jsxs47(
|
|
5557
|
+
"div",
|
|
5558
|
+
{
|
|
5559
|
+
className: cn(
|
|
5560
|
+
"max-h-[90vh] w-full overflow-y-auto rounded-t-2xl border-t border-border bg-background px-4 pb-6 pt-5 shadow-xl animate-in slide-in-from-bottom-4 duration-200",
|
|
5561
|
+
contentClassName
|
|
5562
|
+
),
|
|
5563
|
+
children: [
|
|
5564
|
+
/* @__PURE__ */ jsx61("div", { className: "-mt-1 flex justify-center", children: /* @__PURE__ */ jsx61("div", { className: "h-1 w-10 rounded-full bg-white/15" }) }),
|
|
5565
|
+
(title || icon) && /* @__PURE__ */ jsxs47("div", { className: "mt-4 flex items-center gap-2", children: [
|
|
5566
|
+
icon,
|
|
5567
|
+
/* @__PURE__ */ jsx61("p", { className: "text-sm font-bold text-foreground", children: title })
|
|
5568
|
+
] }),
|
|
5569
|
+
/* @__PURE__ */ jsx61("div", { className: cn((title || icon) && "mt-3"), children }),
|
|
5570
|
+
actions && actions.length > 0 && /* @__PURE__ */ jsx61("div", { className: "mt-4 flex gap-2", children: actions.map((action, index) => /* @__PURE__ */ jsxs47(
|
|
5571
|
+
Button,
|
|
5572
|
+
{
|
|
5573
|
+
type: "button",
|
|
5574
|
+
variant: action.variant ?? (index === actions.length - 1 ? "cta" : "outline"),
|
|
5575
|
+
size: "cta",
|
|
5576
|
+
className: "flex-1",
|
|
5577
|
+
onClick: action.onClick,
|
|
5578
|
+
disabled: action.disabled,
|
|
5579
|
+
children: [
|
|
5580
|
+
action.icon && /* @__PURE__ */ jsx61(Icon, { name: action.icon, className: "text-icon-md" }),
|
|
5581
|
+
action.label
|
|
5582
|
+
]
|
|
5583
|
+
},
|
|
5584
|
+
index
|
|
5585
|
+
)) })
|
|
5586
|
+
]
|
|
5587
|
+
}
|
|
5588
|
+
)
|
|
5589
|
+
}
|
|
5590
|
+
);
|
|
5591
|
+
}
|
|
5592
|
+
|
|
5593
|
+
// src/web/components/disclosure-card.tsx
|
|
5594
|
+
import { jsx as jsx62, jsxs as jsxs48 } from "react/jsx-runtime";
|
|
5595
|
+
function DisclosureCard({
|
|
5596
|
+
title,
|
|
5597
|
+
children,
|
|
5598
|
+
open,
|
|
5599
|
+
onOpenChange,
|
|
5600
|
+
icon,
|
|
5601
|
+
className,
|
|
5602
|
+
triggerClassName,
|
|
5603
|
+
contentClassName
|
|
5604
|
+
}) {
|
|
5605
|
+
return /* @__PURE__ */ jsxs48("div", { className, children: [
|
|
5606
|
+
/* @__PURE__ */ jsxs48(
|
|
5607
|
+
"button",
|
|
5608
|
+
{
|
|
5609
|
+
type: "button",
|
|
5610
|
+
onClick: () => onOpenChange(!open),
|
|
5611
|
+
className: cn(
|
|
5612
|
+
"flex w-full items-center justify-between rounded-xl border border-border bg-white/3 px-3 py-2 text-left transition-colors hover:bg-white/6",
|
|
5613
|
+
triggerClassName
|
|
5614
|
+
),
|
|
5615
|
+
children: [
|
|
5616
|
+
/* @__PURE__ */ jsxs48("span", { className: "flex min-w-0 items-center gap-1.5", children: [
|
|
5617
|
+
icon,
|
|
5618
|
+
/* @__PURE__ */ jsx62("span", { className: "truncate text-xs font-bold text-foreground", children: title })
|
|
5619
|
+
] }),
|
|
5620
|
+
/* @__PURE__ */ jsx62(
|
|
5621
|
+
Icon,
|
|
5622
|
+
{
|
|
5623
|
+
name: open ? "expand_less" : "expand_more",
|
|
5624
|
+
className: "text-icon-md text-muted-foreground"
|
|
5625
|
+
}
|
|
5626
|
+
)
|
|
5627
|
+
]
|
|
5628
|
+
}
|
|
5629
|
+
),
|
|
5630
|
+
open && /* @__PURE__ */ jsx62(
|
|
5631
|
+
"div",
|
|
5632
|
+
{
|
|
5633
|
+
className: cn(
|
|
5634
|
+
"mt-3 rounded-xl border border-border bg-white/3 px-3 py-3",
|
|
5635
|
+
contentClassName
|
|
5636
|
+
),
|
|
5637
|
+
children
|
|
5638
|
+
}
|
|
5639
|
+
)
|
|
5640
|
+
] });
|
|
5641
|
+
}
|
|
5642
|
+
|
|
5643
|
+
// src/web/components/stepper-number-input.tsx
|
|
5644
|
+
import { jsx as jsx63, jsxs as jsxs49 } from "react/jsx-runtime";
|
|
5645
|
+
function StepperNumberInput({
|
|
5646
|
+
value,
|
|
5647
|
+
onChange,
|
|
5648
|
+
min,
|
|
5649
|
+
max,
|
|
5650
|
+
step = 1,
|
|
5651
|
+
disabled,
|
|
5652
|
+
className,
|
|
5653
|
+
inputClassName,
|
|
5654
|
+
ariaLabel
|
|
5655
|
+
}) {
|
|
5656
|
+
const clamp = (next) => {
|
|
5657
|
+
const boundedMin = min === void 0 ? next : Math.max(min, next);
|
|
5658
|
+
const bounded = max === void 0 ? boundedMin : Math.min(max, boundedMin);
|
|
5659
|
+
onChange(Number.isFinite(bounded) ? bounded : min ?? 0);
|
|
5660
|
+
};
|
|
5661
|
+
return /* @__PURE__ */ jsxs49(
|
|
5662
|
+
"div",
|
|
5663
|
+
{
|
|
5664
|
+
className: cn(
|
|
5665
|
+
"flex items-center gap-1.5 overflow-hidden rounded-lg border border-border bg-black/25",
|
|
5666
|
+
className
|
|
5667
|
+
),
|
|
5668
|
+
children: [
|
|
5669
|
+
/* @__PURE__ */ jsx63(
|
|
5670
|
+
"button",
|
|
5671
|
+
{
|
|
5672
|
+
type: "button",
|
|
5673
|
+
className: "px-3 py-1.5 text-white/70 transition-colors hover:bg-white/8 hover:text-white disabled:opacity-30",
|
|
5674
|
+
disabled: disabled || min !== void 0 && value <= min,
|
|
5675
|
+
onClick: () => clamp(value - step),
|
|
5676
|
+
"aria-label": "Decrease",
|
|
5677
|
+
children: /* @__PURE__ */ jsx63(Icon, { name: "remove", className: "text-icon-md" })
|
|
5678
|
+
}
|
|
5679
|
+
),
|
|
5680
|
+
/* @__PURE__ */ jsx63(
|
|
5681
|
+
"input",
|
|
5682
|
+
{
|
|
5683
|
+
type: "number",
|
|
5684
|
+
min,
|
|
5685
|
+
max,
|
|
5686
|
+
step,
|
|
5687
|
+
value,
|
|
5688
|
+
disabled,
|
|
5689
|
+
"aria-label": ariaLabel,
|
|
5690
|
+
onChange: (event) => clamp(Number(event.target.value)),
|
|
5691
|
+
className: cn(
|
|
5692
|
+
"min-w-0 flex-1 bg-transparent text-center text-sm font-bold text-foreground focus:outline-none",
|
|
5693
|
+
inputClassName
|
|
5694
|
+
)
|
|
5695
|
+
}
|
|
5696
|
+
),
|
|
5697
|
+
/* @__PURE__ */ jsx63(
|
|
5698
|
+
"button",
|
|
5699
|
+
{
|
|
5700
|
+
type: "button",
|
|
5701
|
+
className: "px-3 py-1.5 text-white/70 transition-colors hover:bg-white/8 hover:text-white disabled:opacity-30",
|
|
5702
|
+
disabled: disabled || max !== void 0 && value >= max,
|
|
5703
|
+
onClick: () => clamp(value + step),
|
|
5704
|
+
"aria-label": "Increase",
|
|
5705
|
+
children: /* @__PURE__ */ jsx63(Icon, { name: "add", className: "text-icon-md" })
|
|
5706
|
+
}
|
|
5707
|
+
)
|
|
5708
|
+
]
|
|
5709
|
+
}
|
|
5710
|
+
);
|
|
5711
|
+
}
|
|
5712
|
+
|
|
5713
|
+
// src/web/components/metric-card.tsx
|
|
5714
|
+
import { jsx as jsx64, jsxs as jsxs50 } from "react/jsx-runtime";
|
|
5715
|
+
var toneClasses2 = {
|
|
5716
|
+
primary: "border-primary/20 bg-primary/10 text-primary",
|
|
5717
|
+
purple: "border-network-arkade/20 bg-network-arkade/10 text-network-arkade",
|
|
5718
|
+
blue: "border-info/20 bg-info/10 text-info",
|
|
5719
|
+
info: "border-info/20 bg-info/10 text-info",
|
|
5720
|
+
warning: "border-warning/20 bg-warning/10 text-warning",
|
|
5721
|
+
success: "border-success/20 bg-success/10 text-success",
|
|
5722
|
+
muted: "border-white/8 bg-white/5 text-muted-foreground"
|
|
5723
|
+
};
|
|
5724
|
+
function MetricCard({
|
|
5725
|
+
label,
|
|
5726
|
+
value,
|
|
5727
|
+
description,
|
|
5728
|
+
icon,
|
|
5729
|
+
tone = "muted",
|
|
5730
|
+
className
|
|
5731
|
+
}) {
|
|
5732
|
+
return /* @__PURE__ */ jsxs50("div", { className: cn("space-y-1 rounded-xl border border-white/8 bg-white/3 p-2.5", className), children: [
|
|
5733
|
+
/* @__PURE__ */ jsxs50("div", { className: "flex items-center gap-1.5", children: [
|
|
5734
|
+
icon && /* @__PURE__ */ jsx64("span", { className: cn("flex size-5 items-center justify-center rounded-md", toneClasses2[tone]), children: typeof icon === "string" ? /* @__PURE__ */ jsx64(Icon, { name: icon, className: "text-icon-xs" }) : icon }),
|
|
5735
|
+
/* @__PURE__ */ jsx64("span", { className: "text-xxs font-bold uppercase tracking-widest text-white/45", children: label })
|
|
5736
|
+
] }),
|
|
5737
|
+
/* @__PURE__ */ jsx64("p", { className: "font-mono text-sm font-bold text-foreground", children: value }),
|
|
5738
|
+
description && /* @__PURE__ */ jsx64("p", { className: "text-xxs text-white/45", children: description })
|
|
5739
|
+
] });
|
|
5740
|
+
}
|
|
5741
|
+
|
|
5742
|
+
// src/web/components/filter-chip-group.tsx
|
|
5743
|
+
import { jsx as jsx65, jsxs as jsxs51 } from "react/jsx-runtime";
|
|
5744
|
+
function FilterChipGroup({
|
|
5745
|
+
options,
|
|
5746
|
+
value,
|
|
5747
|
+
onChange,
|
|
5748
|
+
className
|
|
5749
|
+
}) {
|
|
5750
|
+
return /* @__PURE__ */ jsx65("div", { className: cn("flex gap-1.5 overflow-x-auto no-scrollbar", className), children: options.map((option) => {
|
|
5751
|
+
const active = option.value === value;
|
|
5752
|
+
return /* @__PURE__ */ jsxs51(
|
|
5753
|
+
"button",
|
|
5754
|
+
{
|
|
5755
|
+
type: "button",
|
|
5756
|
+
disabled: option.disabled,
|
|
5757
|
+
onClick: () => onChange(option.value),
|
|
5758
|
+
className: cn(
|
|
5759
|
+
"flex shrink-0 items-center gap-1.5 whitespace-nowrap rounded-full border px-2.5 py-1 text-tiny font-bold transition-all",
|
|
5760
|
+
active ? "border-white/20 bg-white/12 text-white" : "border-white/8 bg-white/5 text-muted-foreground hover:border-white/20 hover:text-white/80",
|
|
5761
|
+
option.disabled && "cursor-not-allowed opacity-40"
|
|
5762
|
+
),
|
|
5763
|
+
children: [
|
|
5764
|
+
option.icon,
|
|
5765
|
+
option.label,
|
|
5766
|
+
option.count !== void 0 && /* @__PURE__ */ jsx65(
|
|
5767
|
+
"span",
|
|
5768
|
+
{
|
|
5769
|
+
className: cn(
|
|
5770
|
+
"rounded-full px-1.5 py-0.5 text-xxs",
|
|
5771
|
+
active ? "bg-white/20" : "bg-white/8"
|
|
5772
|
+
),
|
|
5773
|
+
children: option.count
|
|
5774
|
+
}
|
|
5775
|
+
)
|
|
5776
|
+
]
|
|
5777
|
+
},
|
|
5778
|
+
option.value
|
|
5779
|
+
);
|
|
5780
|
+
}) });
|
|
5781
|
+
}
|
|
5782
|
+
|
|
5783
|
+
// src/web/components/activity-row.tsx
|
|
5784
|
+
import { Fragment as Fragment12, jsx as jsx66, jsxs as jsxs52 } from "react/jsx-runtime";
|
|
5785
|
+
var directionUi = {
|
|
5786
|
+
inbound: { icon: "south_west", iconClass: "bg-primary/20 text-primary", amountClass: "text-primary", sign: "+" },
|
|
5787
|
+
outbound: { icon: "north_east", iconClass: "bg-white/10 text-muted-foreground", amountClass: "text-foreground", sign: "-" },
|
|
5788
|
+
swap: { icon: "swap_horiz", iconClass: "bg-white/10 text-foreground", amountClass: "text-foreground", sign: "" },
|
|
5789
|
+
neutral: { icon: "receipt_long", iconClass: "bg-white/10 text-muted-foreground", amountClass: "text-foreground", sign: "" }
|
|
5790
|
+
};
|
|
5791
|
+
function ActivityRow({
|
|
5792
|
+
title,
|
|
5793
|
+
amount,
|
|
5794
|
+
direction = "neutral",
|
|
5795
|
+
status,
|
|
5796
|
+
timestamp,
|
|
5797
|
+
networkBadge,
|
|
5798
|
+
unit,
|
|
5799
|
+
icon,
|
|
5800
|
+
onClick,
|
|
5801
|
+
className
|
|
5802
|
+
}) {
|
|
5803
|
+
const ui = directionUi[direction];
|
|
5804
|
+
const content = /* @__PURE__ */ jsxs52(Fragment12, { children: [
|
|
5805
|
+
/* @__PURE__ */ jsxs52("div", { className: "flex min-w-0 items-center gap-3", children: [
|
|
5806
|
+
/* @__PURE__ */ jsx66("div", { className: cn("flex size-10 shrink-0 items-center justify-center rounded-xl shadow-inner", ui.iconClass), children: typeof icon === "string" || !icon ? /* @__PURE__ */ jsx66(Icon, { name: icon ?? ui.icon, className: "text-icon-xl" }) : icon }),
|
|
5807
|
+
/* @__PURE__ */ jsxs52("div", { className: "flex min-w-0 flex-col", children: [
|
|
5808
|
+
/* @__PURE__ */ jsxs52("div", { className: "flex min-w-0 items-center gap-1.5", children: [
|
|
5809
|
+
/* @__PURE__ */ jsx66("span", { className: "truncate text-sm font-bold tracking-wide text-foreground", children: title }),
|
|
5810
|
+
networkBadge
|
|
5811
|
+
] }),
|
|
5812
|
+
(status || timestamp) && /* @__PURE__ */ jsxs52("div", { className: "mt-1 flex items-center gap-2", children: [
|
|
5813
|
+
status && /* @__PURE__ */ jsx66(StatusBadge, { status, className: "px-1.5 py-0.5 text-xxs" }),
|
|
5814
|
+
timestamp && /* @__PURE__ */ jsx66("span", { className: "text-xxs text-muted-foreground", children: timestamp })
|
|
5815
|
+
] })
|
|
5816
|
+
] })
|
|
5817
|
+
] }),
|
|
5818
|
+
/* @__PURE__ */ jsxs52("div", { className: "shrink-0 text-right", children: [
|
|
5819
|
+
/* @__PURE__ */ jsxs52("p", { className: cn("text-sm font-bold tracking-wide", ui.amountClass), children: [
|
|
5820
|
+
ui.sign,
|
|
5821
|
+
amount
|
|
5822
|
+
] }),
|
|
5823
|
+
unit && /* @__PURE__ */ jsx66("p", { className: "mt-0.5 text-xxs font-bold uppercase tracking-wider text-muted-foreground", children: unit })
|
|
5824
|
+
] })
|
|
5825
|
+
] });
|
|
5826
|
+
const rowClassName = cn(
|
|
5827
|
+
"flex w-full items-center justify-between gap-3 rounded-2xl bg-card p-4 shadow-inner transition-colors",
|
|
5828
|
+
onClick && "hover:bg-accent",
|
|
5829
|
+
className
|
|
5830
|
+
);
|
|
5831
|
+
if (onClick) {
|
|
5832
|
+
return /* @__PURE__ */ jsx66("button", { type: "button", onClick, className: rowClassName, children: content });
|
|
5833
|
+
}
|
|
5834
|
+
return /* @__PURE__ */ jsx66("div", { className: rowClassName, children: content });
|
|
5835
|
+
}
|
|
5836
|
+
|
|
5837
|
+
// src/web/components/skeleton.tsx
|
|
5838
|
+
import { jsx as jsx67, jsxs as jsxs53 } from "react/jsx-runtime";
|
|
5839
|
+
var toneClass2 = {
|
|
5840
|
+
primary: "bg-white/10",
|
|
5841
|
+
secondary: "bg-white/5",
|
|
5842
|
+
card: "bg-white/[0.06]"
|
|
5843
|
+
};
|
|
5844
|
+
function Skeleton({ className, tone = "primary" }) {
|
|
5845
|
+
return /* @__PURE__ */ jsx67("div", { "aria-hidden": true, className: cn("animate-pulse rounded", toneClass2[tone], className) });
|
|
5846
|
+
}
|
|
5847
|
+
function ListSkeletonRows({ rows = 3, className, rowClassName }) {
|
|
5848
|
+
return /* @__PURE__ */ jsx67("div", { className: cn("space-y-2", className), children: Array.from({ length: rows }).map((_, index) => /* @__PURE__ */ jsxs53(
|
|
5849
|
+
"div",
|
|
5850
|
+
{
|
|
5851
|
+
className: cn(
|
|
5852
|
+
"flex items-center gap-3 rounded-2xl bg-white/[0.02] p-4 animate-pulse",
|
|
5853
|
+
rowClassName
|
|
5854
|
+
),
|
|
5855
|
+
children: [
|
|
5856
|
+
/* @__PURE__ */ jsx67(Skeleton, { className: "size-10 shrink-0 rounded-xl" }),
|
|
5857
|
+
/* @__PURE__ */ jsxs53("div", { className: "flex-1 space-y-2", children: [
|
|
5858
|
+
/* @__PURE__ */ jsx67(Skeleton, { className: "h-3 w-28" }),
|
|
5859
|
+
/* @__PURE__ */ jsx67(Skeleton, { tone: "secondary", className: "h-2.5 w-20" })
|
|
5860
|
+
] }),
|
|
5861
|
+
/* @__PURE__ */ jsxs53("div", { className: "flex flex-col items-end space-y-1.5", children: [
|
|
5862
|
+
/* @__PURE__ */ jsx67(Skeleton, { className: "h-3 w-14" }),
|
|
5863
|
+
/* @__PURE__ */ jsx67(Skeleton, { tone: "secondary", className: "h-2 w-10" })
|
|
5864
|
+
] })
|
|
5865
|
+
]
|
|
5866
|
+
},
|
|
5867
|
+
index
|
|
5868
|
+
)) });
|
|
5869
|
+
}
|
|
5870
|
+
|
|
5871
|
+
// src/web/components/secret-reveal-card.tsx
|
|
5872
|
+
import { jsx as jsx68, jsxs as jsxs54 } from "react/jsx-runtime";
|
|
5873
|
+
function SecretRevealCard({
|
|
5874
|
+
value,
|
|
5875
|
+
revealed,
|
|
5876
|
+
onRevealChange,
|
|
5877
|
+
onCopy,
|
|
5878
|
+
revealLabel = "Tap to reveal",
|
|
5879
|
+
hideLabel = "Hide",
|
|
5880
|
+
copyLabel = "Copy",
|
|
5881
|
+
className,
|
|
5882
|
+
valueClassName
|
|
5883
|
+
}) {
|
|
5884
|
+
return /* @__PURE__ */ jsxs54("div", { className: cn("space-y-3", className), children: [
|
|
5885
|
+
/* @__PURE__ */ jsxs54("div", { className: "relative", children: [
|
|
5886
|
+
/* @__PURE__ */ jsx68("div", { className: "rounded-xl bg-card px-3 py-3", children: /* @__PURE__ */ jsx68(
|
|
5887
|
+
"p",
|
|
5888
|
+
{
|
|
5889
|
+
className: cn(
|
|
5890
|
+
"break-all font-mono text-sm text-foreground transition-all duration-300",
|
|
5891
|
+
!revealed && "pointer-events-none select-none blur-sm",
|
|
5892
|
+
valueClassName
|
|
5893
|
+
),
|
|
5894
|
+
children: value
|
|
5895
|
+
}
|
|
5896
|
+
) }),
|
|
5897
|
+
!revealed && /* @__PURE__ */ jsx68("div", { className: "absolute inset-0 flex items-center justify-center", children: /* @__PURE__ */ jsxs54(
|
|
5898
|
+
"button",
|
|
5899
|
+
{
|
|
5900
|
+
type: "button",
|
|
5901
|
+
onClick: () => onRevealChange(true),
|
|
5902
|
+
className: "flex items-center gap-2 rounded-xl border border-white/20 bg-card px-4 py-2 text-sm font-bold text-foreground shadow-lg transition-all hover:bg-accent",
|
|
5903
|
+
children: [
|
|
5904
|
+
/* @__PURE__ */ jsx68(Icon, { name: "visibility", className: "text-icon-lg" }),
|
|
5905
|
+
revealLabel
|
|
5906
|
+
]
|
|
5907
|
+
}
|
|
5908
|
+
) })
|
|
5909
|
+
] }),
|
|
5910
|
+
/* @__PURE__ */ jsxs54("div", { className: "flex gap-2", children: [
|
|
5911
|
+
/* @__PURE__ */ jsxs54(
|
|
5912
|
+
"button",
|
|
5913
|
+
{
|
|
5914
|
+
type: "button",
|
|
5915
|
+
onClick: () => onRevealChange(!revealed),
|
|
5916
|
+
className: "flex flex-1 items-center justify-center gap-2 rounded-xl bg-white/5 py-3 text-sm font-semibold text-muted-foreground transition-all hover:bg-accent hover:text-foreground",
|
|
5917
|
+
children: [
|
|
5918
|
+
/* @__PURE__ */ jsx68(Icon, { name: revealed ? "visibility_off" : "visibility", className: "text-icon-lg" }),
|
|
5919
|
+
revealed ? hideLabel : revealLabel
|
|
5920
|
+
]
|
|
5921
|
+
}
|
|
5922
|
+
),
|
|
5923
|
+
revealed && onCopy && /* @__PURE__ */ jsxs54(
|
|
5924
|
+
"button",
|
|
5925
|
+
{
|
|
5926
|
+
type: "button",
|
|
5927
|
+
onClick: onCopy,
|
|
5928
|
+
className: "flex flex-1 items-center justify-center gap-2 rounded-xl bg-white/5 py-3 text-sm font-semibold text-muted-foreground transition-all hover:bg-accent hover:text-foreground",
|
|
5929
|
+
children: [
|
|
5930
|
+
/* @__PURE__ */ jsx68(Icon, { name: "content_copy", className: "text-icon-lg" }),
|
|
5931
|
+
copyLabel
|
|
5932
|
+
]
|
|
5933
|
+
}
|
|
5934
|
+
)
|
|
5935
|
+
] })
|
|
5936
|
+
] });
|
|
5937
|
+
}
|
|
5938
|
+
|
|
5939
|
+
// src/web/components/settings-section-card.tsx
|
|
5940
|
+
import { jsx as jsx69, jsxs as jsxs55 } from "react/jsx-runtime";
|
|
5941
|
+
function SettingsSectionCard({
|
|
5942
|
+
title,
|
|
5943
|
+
description,
|
|
5944
|
+
badge,
|
|
5945
|
+
children,
|
|
5946
|
+
className,
|
|
5947
|
+
bodyClassName
|
|
5948
|
+
}) {
|
|
5949
|
+
return /* @__PURE__ */ jsxs55("section", { className: cn("space-y-4 rounded-xl bg-card p-4", className), children: [
|
|
5950
|
+
/* @__PURE__ */ jsxs55("div", { className: "flex items-start justify-between gap-4", children: [
|
|
5951
|
+
/* @__PURE__ */ jsxs55("div", { className: "min-w-0 flex-1", children: [
|
|
5952
|
+
/* @__PURE__ */ jsx69("h2", { className: "text-sm font-bold text-foreground", children: title }),
|
|
5953
|
+
description && /* @__PURE__ */ jsx69("p", { className: "mt-1 text-xs text-muted-foreground", children: description })
|
|
5954
|
+
] }),
|
|
5955
|
+
badge
|
|
5956
|
+
] }),
|
|
5957
|
+
/* @__PURE__ */ jsx69("div", { className: bodyClassName, children })
|
|
5958
|
+
] });
|
|
5959
|
+
}
|
|
5960
|
+
var badgeToneClass = {
|
|
5961
|
+
primary: "border-primary/30 bg-primary/10 text-primary",
|
|
5962
|
+
info: "border-info/30 bg-info/10 text-info",
|
|
5963
|
+
warning: "border-warning/30 bg-warning/10 text-warning",
|
|
5964
|
+
danger: "border-danger/30 bg-danger/10 text-danger",
|
|
5965
|
+
success: "border-success/30 bg-success/10 text-success",
|
|
5966
|
+
muted: "border-white/10 bg-white/[0.05] text-white/55"
|
|
5967
|
+
};
|
|
5968
|
+
function ToneBadge({ children, tone = "muted", className }) {
|
|
5969
|
+
return /* @__PURE__ */ jsx69(
|
|
5970
|
+
"span",
|
|
5971
|
+
{
|
|
5972
|
+
className: cn(
|
|
5973
|
+
"rounded-full border px-2.5 py-1 text-xxs font-bold uppercase tracking-wider",
|
|
5974
|
+
badgeToneClass[tone],
|
|
5975
|
+
className
|
|
5976
|
+
),
|
|
5977
|
+
children
|
|
5978
|
+
}
|
|
5979
|
+
);
|
|
5980
|
+
}
|
|
5981
|
+
|
|
5982
|
+
// src/web/components/selectable-card.tsx
|
|
5983
|
+
import { jsx as jsx70, jsxs as jsxs56 } from "react/jsx-runtime";
|
|
5984
|
+
function SelectableCard({
|
|
5985
|
+
selected,
|
|
5986
|
+
onClick,
|
|
5987
|
+
title,
|
|
5988
|
+
description,
|
|
5989
|
+
badge,
|
|
5990
|
+
preview,
|
|
5991
|
+
indicator = true,
|
|
5992
|
+
children,
|
|
5993
|
+
className
|
|
5994
|
+
}) {
|
|
5995
|
+
const content = /* @__PURE__ */ jsxs56("div", { className: "flex items-start justify-between gap-3", children: [
|
|
5996
|
+
/* @__PURE__ */ jsxs56("div", { className: "flex min-w-0 flex-1 items-start gap-3", children: [
|
|
5997
|
+
indicator && /* @__PURE__ */ jsx70(
|
|
5998
|
+
"div",
|
|
5999
|
+
{
|
|
6000
|
+
className: cn(
|
|
6001
|
+
"mt-0.5 flex size-5 shrink-0 items-center justify-center rounded-full border-2 transition-colors",
|
|
6002
|
+
selected ? "border-primary bg-primary" : "border-white/20"
|
|
6003
|
+
),
|
|
6004
|
+
children: selected && /* @__PURE__ */ jsx70("div", { className: "size-2 rounded-full bg-background" })
|
|
6005
|
+
}
|
|
6006
|
+
),
|
|
6007
|
+
/* @__PURE__ */ jsxs56("div", { className: "min-w-0 flex-1", children: [
|
|
6008
|
+
/* @__PURE__ */ jsxs56("div", { className: "flex flex-wrap items-center gap-2", children: [
|
|
6009
|
+
/* @__PURE__ */ jsx70("span", { className: "text-body font-bold text-foreground", children: title }),
|
|
6010
|
+
badge
|
|
6011
|
+
] }),
|
|
6012
|
+
description && /* @__PURE__ */ jsx70("p", { className: "mt-0.5 text-xs leading-relaxed text-muted-foreground", children: description }),
|
|
6013
|
+
children
|
|
6014
|
+
] })
|
|
6015
|
+
] }),
|
|
6016
|
+
preview && /* @__PURE__ */ jsx70("div", { className: "shrink-0 text-right", children: preview })
|
|
6017
|
+
] });
|
|
6018
|
+
const cardClassName = cn(
|
|
6019
|
+
"w-full rounded-2xl border p-4 text-left transition-all duration-200",
|
|
6020
|
+
selected ? "border-primary/40 bg-primary/10 shadow-sm" : "border-border bg-card hover:bg-accent",
|
|
6021
|
+
className
|
|
6022
|
+
);
|
|
6023
|
+
if (onClick) {
|
|
6024
|
+
return /* @__PURE__ */ jsx70("button", { type: "button", onClick, className: cardClassName, children: content });
|
|
6025
|
+
}
|
|
6026
|
+
return /* @__PURE__ */ jsx70("div", { className: cardClassName, children: content });
|
|
6027
|
+
}
|
|
6028
|
+
|
|
5370
6029
|
// src/web/components/mobile-hero-animation.tsx
|
|
5371
6030
|
import { useRef as useRef4, useEffect as useEffect8, useState as useState12 } from "react";
|
|
5372
|
-
import { Fragment as
|
|
6031
|
+
import { Fragment as Fragment13, jsx as jsx71, jsxs as jsxs57 } from "react/jsx-runtime";
|
|
5373
6032
|
var PROTOCOLS = [
|
|
5374
6033
|
{ name: "Bitcoin", network: "Bitcoin", iconSuffix: "bitcoin/bitcoin-logo.svg" },
|
|
5375
6034
|
{ name: "Lightning", network: "LN", iconSuffix: "lightning/lightning.svg" },
|
|
@@ -5428,15 +6087,15 @@ var MobileHeroAnimation = ({
|
|
|
5428
6087
|
}, []);
|
|
5429
6088
|
const anim = !reducedMotion && isVisible;
|
|
5430
6089
|
const scale = size / 280;
|
|
5431
|
-
return /* @__PURE__ */
|
|
6090
|
+
return /* @__PURE__ */ jsxs57(
|
|
5432
6091
|
"div",
|
|
5433
6092
|
{
|
|
5434
6093
|
ref: containerRef,
|
|
5435
6094
|
className,
|
|
5436
6095
|
style: { position: "relative", width: size, height: size },
|
|
5437
6096
|
children: [
|
|
5438
|
-
/* @__PURE__ */
|
|
5439
|
-
/* @__PURE__ */
|
|
6097
|
+
/* @__PURE__ */ jsx71("style", { children: KEYFRAMES }),
|
|
6098
|
+
/* @__PURE__ */ jsxs57("div", { style: {
|
|
5440
6099
|
position: "absolute",
|
|
5441
6100
|
top: 0,
|
|
5442
6101
|
left: 0,
|
|
@@ -5445,7 +6104,7 @@ var MobileHeroAnimation = ({
|
|
|
5445
6104
|
transformOrigin: "top left",
|
|
5446
6105
|
transform: scale !== 1 ? `scale(${scale})` : void 0
|
|
5447
6106
|
}, children: [
|
|
5448
|
-
/* @__PURE__ */
|
|
6107
|
+
/* @__PURE__ */ jsxs57(
|
|
5449
6108
|
"svg",
|
|
5450
6109
|
{
|
|
5451
6110
|
viewBox: "0 0 280 280",
|
|
@@ -5454,35 +6113,35 @@ var MobileHeroAnimation = ({
|
|
|
5454
6113
|
style: { position: "absolute", inset: 0 },
|
|
5455
6114
|
xmlns: "http://www.w3.org/2000/svg",
|
|
5456
6115
|
children: [
|
|
5457
|
-
/* @__PURE__ */
|
|
5458
|
-
/* @__PURE__ */
|
|
5459
|
-
/* @__PURE__ */
|
|
5460
|
-
/* @__PURE__ */
|
|
5461
|
-
/* @__PURE__ */
|
|
6116
|
+
/* @__PURE__ */ jsxs57("defs", { children: [
|
|
6117
|
+
/* @__PURE__ */ jsxs57("radialGradient", { id: "mh-center-glow", cx: "50%", cy: "50%", r: "50%", children: [
|
|
6118
|
+
/* @__PURE__ */ jsx71("stop", { offset: "0%", stopColor: "#0e9dff", stopOpacity: "0.3" }),
|
|
6119
|
+
/* @__PURE__ */ jsx71("stop", { offset: "40%", stopColor: "#8a5cf6", stopOpacity: "0.15" }),
|
|
6120
|
+
/* @__PURE__ */ jsx71("stop", { offset: "100%", stopColor: "transparent", stopOpacity: "0" })
|
|
5462
6121
|
] }),
|
|
5463
|
-
/* @__PURE__ */
|
|
5464
|
-
/* @__PURE__ */
|
|
5465
|
-
/* @__PURE__ */
|
|
6122
|
+
/* @__PURE__ */ jsxs57("linearGradient", { id: "mh-gp", x1: "0%", y1: "0%", x2: "100%", y2: "100%", children: [
|
|
6123
|
+
/* @__PURE__ */ jsx71("stop", { offset: "0%", stopColor: "#22c55e" }),
|
|
6124
|
+
/* @__PURE__ */ jsx71("stop", { offset: "100%", stopColor: "#8a5cf6" })
|
|
5466
6125
|
] }),
|
|
5467
|
-
/* @__PURE__ */
|
|
5468
|
-
/* @__PURE__ */
|
|
5469
|
-
/* @__PURE__ */
|
|
6126
|
+
/* @__PURE__ */ jsxs57("linearGradient", { id: "mh-bp", x1: "0%", y1: "0%", x2: "100%", y2: "100%", children: [
|
|
6127
|
+
/* @__PURE__ */ jsx71("stop", { offset: "0%", stopColor: "#0e9dff" }),
|
|
6128
|
+
/* @__PURE__ */ jsx71("stop", { offset: "100%", stopColor: "#8a5cf6" })
|
|
5470
6129
|
] }),
|
|
5471
|
-
/* @__PURE__ */
|
|
5472
|
-
/* @__PURE__ */
|
|
5473
|
-
/* @__PURE__ */
|
|
5474
|
-
/* @__PURE__ */
|
|
5475
|
-
/* @__PURE__ */
|
|
6130
|
+
/* @__PURE__ */ jsxs57("filter", { id: "mh-glow", x: "-50%", y: "-50%", width: "200%", height: "200%", children: [
|
|
6131
|
+
/* @__PURE__ */ jsx71("feGaussianBlur", { stdDeviation: "2.5", result: "blur" }),
|
|
6132
|
+
/* @__PURE__ */ jsxs57("feMerge", { children: [
|
|
6133
|
+
/* @__PURE__ */ jsx71("feMergeNode", { in: "blur" }),
|
|
6134
|
+
/* @__PURE__ */ jsx71("feMergeNode", { in: "SourceGraphic" })
|
|
5476
6135
|
] })
|
|
5477
6136
|
] })
|
|
5478
6137
|
] }),
|
|
5479
|
-
/* @__PURE__ */
|
|
5480
|
-
/* @__PURE__ */
|
|
5481
|
-
/* @__PURE__ */
|
|
6138
|
+
/* @__PURE__ */ jsx71("circle", { cx: C, cy: C, r: ORBIT_R, fill: "none", stroke: "#0e9dff", strokeWidth: "1", strokeOpacity: "0.25", opacity: "0.4", children: anim && /* @__PURE__ */ jsxs57(Fragment13, { children: [
|
|
6139
|
+
/* @__PURE__ */ jsx71("animate", { attributeName: "r", values: `${ORBIT_R};${Math.round(ORBIT_R * 1.12)};${ORBIT_R}`, dur: "2.5s", repeatCount: "indefinite" }),
|
|
6140
|
+
/* @__PURE__ */ jsx71("animate", { attributeName: "opacity", values: "0.4;0;0.4", dur: "2.5s", repeatCount: "indefinite" })
|
|
5482
6141
|
] }) }),
|
|
5483
|
-
/* @__PURE__ */
|
|
5484
|
-
/* @__PURE__ */
|
|
5485
|
-
anim && /* @__PURE__ */
|
|
6142
|
+
/* @__PURE__ */ jsx71("circle", { cx: C, cy: C, r: 80, fill: "none", stroke: "rgba(255,255,255,0.1)", strokeWidth: "1", strokeDasharray: "4 4" }),
|
|
6143
|
+
/* @__PURE__ */ jsxs57("g", { children: [
|
|
6144
|
+
anim && /* @__PURE__ */ jsx71(
|
|
5486
6145
|
"animateTransform",
|
|
5487
6146
|
{
|
|
5488
6147
|
attributeName: "transform",
|
|
@@ -5503,8 +6162,8 @@ var MobileHeroAnimation = ({
|
|
|
5503
6162
|
const y2 = C + dy * (ORBIT_R - BADGE_HALF);
|
|
5504
6163
|
const color = PROTOCOL_COLORS[protocol.network] ?? "#ffffff";
|
|
5505
6164
|
const dur = `${2 + i * 0.3}s`;
|
|
5506
|
-
return /* @__PURE__ */
|
|
5507
|
-
/* @__PURE__ */
|
|
6165
|
+
return /* @__PURE__ */ jsxs57("g", { children: [
|
|
6166
|
+
/* @__PURE__ */ jsx71(
|
|
5508
6167
|
"line",
|
|
5509
6168
|
{
|
|
5510
6169
|
x1,
|
|
@@ -5515,29 +6174,29 @@ var MobileHeroAnimation = ({
|
|
|
5515
6174
|
strokeWidth: "0.8",
|
|
5516
6175
|
strokeDasharray: "2 4",
|
|
5517
6176
|
opacity: "0.25",
|
|
5518
|
-
children: anim && /* @__PURE__ */
|
|
6177
|
+
children: anim && /* @__PURE__ */ jsx71("animate", { attributeName: "stroke-dashoffset", from: "0", to: "-12", dur: `${1.5 + i * 0.2}s`, repeatCount: "indefinite" })
|
|
5519
6178
|
}
|
|
5520
6179
|
),
|
|
5521
|
-
/* @__PURE__ */
|
|
5522
|
-
/* @__PURE__ */
|
|
5523
|
-
/* @__PURE__ */
|
|
5524
|
-
/* @__PURE__ */
|
|
5525
|
-
/* @__PURE__ */
|
|
6180
|
+
/* @__PURE__ */ jsx71("circle", { r: "2", fill: color, opacity: "0", children: anim && /* @__PURE__ */ jsxs57(Fragment13, { children: [
|
|
6181
|
+
/* @__PURE__ */ jsx71("animate", { attributeName: "cx", values: `${x1};${x2}`, dur, repeatCount: "indefinite" }),
|
|
6182
|
+
/* @__PURE__ */ jsx71("animate", { attributeName: "cy", values: `${y1};${y2}`, dur, repeatCount: "indefinite" }),
|
|
6183
|
+
/* @__PURE__ */ jsx71("animate", { attributeName: "opacity", values: "0;0.85;0", dur, repeatCount: "indefinite" }),
|
|
6184
|
+
/* @__PURE__ */ jsx71("animate", { attributeName: "r", values: "1.5;2.5;1.5", dur, repeatCount: "indefinite" })
|
|
5526
6185
|
] }) })
|
|
5527
6186
|
] }, `line-${i}`);
|
|
5528
6187
|
})
|
|
5529
6188
|
] }),
|
|
5530
|
-
/* @__PURE__ */
|
|
5531
|
-
/* @__PURE__ */
|
|
5532
|
-
/* @__PURE__ */
|
|
5533
|
-
/* @__PURE__ */
|
|
6189
|
+
/* @__PURE__ */ jsx71("circle", { cx: C, cy: C, r: "42", fill: "url(#mh-center-glow)", children: anim && /* @__PURE__ */ jsx71("animate", { attributeName: "r", values: "38;46;38", dur: "4s", repeatCount: "indefinite" }) }),
|
|
6190
|
+
/* @__PURE__ */ jsx71("circle", { cx: C, cy: C, r: "29", fill: "none", stroke: "url(#mh-bp)", strokeWidth: "1", opacity: "0", children: anim && /* @__PURE__ */ jsxs57(Fragment13, { children: [
|
|
6191
|
+
/* @__PURE__ */ jsx71("animate", { attributeName: "r", values: "27;38", dur: "3s", repeatCount: "indefinite" }),
|
|
6192
|
+
/* @__PURE__ */ jsx71("animate", { attributeName: "opacity", values: "0.4;0", dur: "3s", repeatCount: "indefinite" })
|
|
5534
6193
|
] }) }),
|
|
5535
|
-
/* @__PURE__ */
|
|
5536
|
-
/* @__PURE__ */
|
|
5537
|
-
/* @__PURE__ */
|
|
6194
|
+
/* @__PURE__ */ jsx71("circle", { cx: C, cy: C, r: "27", fill: "none", stroke: "url(#mh-gp)", strokeWidth: "0.8", opacity: "0", children: anim && /* @__PURE__ */ jsxs57(Fragment13, { children: [
|
|
6195
|
+
/* @__PURE__ */ jsx71("animate", { attributeName: "r", values: "27;36", dur: "3s", repeatCount: "indefinite", begin: "1.5s" }),
|
|
6196
|
+
/* @__PURE__ */ jsx71("animate", { attributeName: "opacity", values: "0.3;0", dur: "3s", repeatCount: "indefinite", begin: "1.5s" })
|
|
5538
6197
|
] }) }),
|
|
5539
|
-
/* @__PURE__ */
|
|
5540
|
-
anim && /* @__PURE__ */
|
|
6198
|
+
/* @__PURE__ */ jsx71("g", { transform: `translate(${C},${C})`, children: /* @__PURE__ */ jsxs57("g", { children: [
|
|
6199
|
+
anim && /* @__PURE__ */ jsx71(
|
|
5541
6200
|
"animateTransform",
|
|
5542
6201
|
{
|
|
5543
6202
|
attributeName: "transform",
|
|
@@ -5549,13 +6208,13 @@ var MobileHeroAnimation = ({
|
|
|
5549
6208
|
additive: "sum"
|
|
5550
6209
|
}
|
|
5551
6210
|
),
|
|
5552
|
-
/* @__PURE__ */
|
|
5553
|
-
/* @__PURE__ */
|
|
5554
|
-
/* @__PURE__ */
|
|
6211
|
+
/* @__PURE__ */ jsx71("path", { d: hexPath(34), fill: "none", stroke: "url(#mh-gp)", strokeWidth: "1.5", opacity: "0.4", filter: "url(#mh-glow)", children: anim && /* @__PURE__ */ jsxs57(Fragment13, { children: [
|
|
6212
|
+
/* @__PURE__ */ jsx71("animate", { attributeName: "opacity", values: "0.3;0.65;0.3", dur: "3s", repeatCount: "indefinite" }),
|
|
6213
|
+
/* @__PURE__ */ jsx71("animate", { attributeName: "stroke-width", values: "1.5;2.5;1.5", dur: "3s", repeatCount: "indefinite" })
|
|
5555
6214
|
] }) })
|
|
5556
6215
|
] }) }),
|
|
5557
|
-
/* @__PURE__ */
|
|
5558
|
-
anim && /* @__PURE__ */
|
|
6216
|
+
/* @__PURE__ */ jsx71("g", { transform: `translate(${C},${C})`, children: /* @__PURE__ */ jsxs57("g", { children: [
|
|
6217
|
+
anim && /* @__PURE__ */ jsx71(
|
|
5559
6218
|
"animateTransform",
|
|
5560
6219
|
{
|
|
5561
6220
|
attributeName: "transform",
|
|
@@ -5567,28 +6226,28 @@ var MobileHeroAnimation = ({
|
|
|
5567
6226
|
additive: "sum"
|
|
5568
6227
|
}
|
|
5569
6228
|
),
|
|
5570
|
-
/* @__PURE__ */
|
|
6229
|
+
/* @__PURE__ */ jsx71("path", { d: hexPath(32), fill: "rgba(10,15,30,0.75)", stroke: "rgba(255,255,255,0.08)", strokeWidth: "0.5" })
|
|
5571
6230
|
] }) }),
|
|
5572
|
-
/* @__PURE__ */
|
|
5573
|
-
/* @__PURE__ */
|
|
5574
|
-
/* @__PURE__ */
|
|
5575
|
-
/* @__PURE__ */
|
|
5576
|
-
/* @__PURE__ */
|
|
5577
|
-
/* @__PURE__ */
|
|
5578
|
-
/* @__PURE__ */
|
|
5579
|
-
/* @__PURE__ */
|
|
5580
|
-
/* @__PURE__ */
|
|
5581
|
-
/* @__PURE__ */
|
|
5582
|
-
/* @__PURE__ */
|
|
5583
|
-
/* @__PURE__ */
|
|
5584
|
-
/* @__PURE__ */
|
|
5585
|
-
/* @__PURE__ */
|
|
5586
|
-
/* @__PURE__ */
|
|
6231
|
+
/* @__PURE__ */ jsxs57("g", { transform: `translate(${C - 19},${C - 19}) scale(0.182)`, children: [
|
|
6232
|
+
/* @__PURE__ */ jsx71("path", { d: "M69.7141 207.3H0.908203L35.3243 172.936L69.7141 207.3Z", fill: "#6F32FF" }),
|
|
6233
|
+
/* @__PURE__ */ jsx71("path", { d: "M138.441 0.96106V69.767L104.078 35.3508L138.441 0.96106Z", fill: "#17B581" }),
|
|
6234
|
+
/* @__PURE__ */ jsx71("path", { d: "M138.415 138.547V207.352L104.051 172.936L138.415 138.547Z", fill: "#17B581" }),
|
|
6235
|
+
/* @__PURE__ */ jsx71("path", { d: "M138.441 69.7406V0.96106L172.804 35.3772L138.441 69.767V69.7406Z", fill: "#17B581" }),
|
|
6236
|
+
/* @__PURE__ */ jsx71("path", { d: "M69.6614 138.494V69.6879L104.025 104.104L69.6614 138.494Z", fill: "#15E99A" }),
|
|
6237
|
+
/* @__PURE__ */ jsx71("path", { d: "M69.6615 69.7142V138.52L35.2981 104.104L69.6615 69.7142Z", fill: "#15E99A" }),
|
|
6238
|
+
/* @__PURE__ */ jsx71("path", { d: "M138.467 207.379V138.573L172.831 172.989L138.467 207.379Z", fill: "#17B581" }),
|
|
6239
|
+
/* @__PURE__ */ jsx71("path", { d: "M0.908203 0.908325H69.7141L35.298 35.2718L0.908203 0.908325Z", fill: "#6F32FF" }),
|
|
6240
|
+
/* @__PURE__ */ jsx71("path", { d: "M207.22 207.3H138.415L172.831 172.936L207.22 207.3Z", fill: "#17B581" }),
|
|
6241
|
+
/* @__PURE__ */ jsx71("path", { d: "M138.415 0.987427H207.22L172.804 35.3509L138.415 0.987427Z", fill: "#17B581" }),
|
|
6242
|
+
/* @__PURE__ */ jsx71("path", { d: "M138.467 69.7143H69.6614L104.078 35.3508L138.467 69.7143Z", fill: "#17B581" }),
|
|
6243
|
+
/* @__PURE__ */ jsx71("path", { d: "M69.635 138.494H138.441L104.025 172.857L69.635 138.494Z", fill: "#17B581" }),
|
|
6244
|
+
/* @__PURE__ */ jsx71("path", { d: "M138.415 138.494H69.635L104.025 104.157L138.388 138.494H138.415Z", fill: "#15E99A" }),
|
|
6245
|
+
/* @__PURE__ */ jsx71("path", { d: "M138.415 69.7142L104.051 104.051L69.6614 69.7142H138.441H138.415Z", fill: "#15E99A" })
|
|
5587
6246
|
] })
|
|
5588
6247
|
]
|
|
5589
6248
|
}
|
|
5590
6249
|
),
|
|
5591
|
-
/* @__PURE__ */
|
|
6250
|
+
/* @__PURE__ */ jsx71("div", { style: {
|
|
5592
6251
|
position: "absolute",
|
|
5593
6252
|
inset: 0,
|
|
5594
6253
|
width: 280,
|
|
@@ -5599,7 +6258,7 @@ var MobileHeroAnimation = ({
|
|
|
5599
6258
|
const x = C + Math.cos(angle) * ORBIT_R - BADGE_HALF;
|
|
5600
6259
|
const y = C + Math.sin(angle) * ORBIT_R - BADGE_HALF;
|
|
5601
6260
|
const color = PROTOCOL_COLORS[protocol.network] ?? "#ffffff";
|
|
5602
|
-
return /* @__PURE__ */
|
|
6261
|
+
return /* @__PURE__ */ jsx71(
|
|
5603
6262
|
"div",
|
|
5604
6263
|
{
|
|
5605
6264
|
style: {
|
|
@@ -5610,7 +6269,7 @@ var MobileHeroAnimation = ({
|
|
|
5610
6269
|
height: BADGE_SIZE,
|
|
5611
6270
|
animation: anim ? "mha-counter-spin 20s linear infinite" : "none"
|
|
5612
6271
|
},
|
|
5613
|
-
children: /* @__PURE__ */
|
|
6272
|
+
children: /* @__PURE__ */ jsx71("div", { style: {
|
|
5614
6273
|
width: "100%",
|
|
5615
6274
|
height: "100%",
|
|
5616
6275
|
borderRadius: "50%",
|
|
@@ -5621,7 +6280,7 @@ var MobileHeroAnimation = ({
|
|
|
5621
6280
|
display: "flex",
|
|
5622
6281
|
alignItems: "center",
|
|
5623
6282
|
justifyContent: "center"
|
|
5624
|
-
}, children: /* @__PURE__ */
|
|
6283
|
+
}, children: /* @__PURE__ */ jsx71(
|
|
5625
6284
|
"img",
|
|
5626
6285
|
{
|
|
5627
6286
|
src: iconBasePath ? `${iconBasePath}/${protocol.iconSuffix}` : protocolIcons[protocol.network] ?? protocol.iconSuffix,
|
|
@@ -5641,7 +6300,7 @@ var MobileHeroAnimation = ({
|
|
|
5641
6300
|
|
|
5642
6301
|
// src/web/components/kaleidoscope-hero-animation.tsx
|
|
5643
6302
|
import { useRef as useRef5, useEffect as useEffect9, useState as useState13, useCallback as useCallback2 } from "react";
|
|
5644
|
-
import { Fragment as
|
|
6303
|
+
import { Fragment as Fragment14, jsx as jsx72, jsxs as jsxs58 } from "react/jsx-runtime";
|
|
5645
6304
|
var PROTOCOLS2 = [
|
|
5646
6305
|
{ name: "Bitcoin L1", network: "L1", color: "#F7931A", glowColor: "rgba(247,147,26,0.5)" },
|
|
5647
6306
|
{ name: "Lightning", network: "LN", color: "#fbbf24", glowColor: "rgba(251,191,36,0.5)" },
|
|
@@ -5746,13 +6405,13 @@ var KaleidoScopeHeroAnimation = ({
|
|
|
5746
6405
|
const angle = Math.PI * 2 * i / 7 - Math.PI / 2;
|
|
5747
6406
|
return { x: c + orbitR * Math.cos(angle), y: c + orbitR * Math.sin(angle) };
|
|
5748
6407
|
});
|
|
5749
|
-
return /* @__PURE__ */
|
|
6408
|
+
return /* @__PURE__ */ jsx72(
|
|
5750
6409
|
"div",
|
|
5751
6410
|
{
|
|
5752
6411
|
ref: containerRef,
|
|
5753
6412
|
className: `relative ${className}`,
|
|
5754
6413
|
style: size ? { width: size, height: size } : void 0,
|
|
5755
|
-
children: /* @__PURE__ */
|
|
6414
|
+
children: /* @__PURE__ */ jsxs58(
|
|
5756
6415
|
"svg",
|
|
5757
6416
|
{
|
|
5758
6417
|
viewBox: "0 0 500 500",
|
|
@@ -5761,60 +6420,60 @@ var KaleidoScopeHeroAnimation = ({
|
|
|
5761
6420
|
xmlns: "http://www.w3.org/2000/svg",
|
|
5762
6421
|
className: "overflow-visible",
|
|
5763
6422
|
children: [
|
|
5764
|
-
/* @__PURE__ */
|
|
5765
|
-
/* @__PURE__ */
|
|
5766
|
-
/* @__PURE__ */
|
|
5767
|
-
/* @__PURE__ */
|
|
6423
|
+
/* @__PURE__ */ jsxs58("defs", { children: [
|
|
6424
|
+
/* @__PURE__ */ jsxs58("linearGradient", { id: "kh-grad-a", x1: "0%", y1: "0%", x2: "100%", y2: "100%", children: [
|
|
6425
|
+
/* @__PURE__ */ jsx72("stop", { offset: "0%", children: anim && /* @__PURE__ */ jsx72("animate", { attributeName: "stop-color", values: "#22c55e;#8a5cf6;#06b6d4;#F7931A;#22c55e", dur: "10s", repeatCount: "indefinite" }) }),
|
|
6426
|
+
/* @__PURE__ */ jsx72("stop", { offset: "100%", children: anim && /* @__PURE__ */ jsx72("animate", { attributeName: "stop-color", values: "#8a5cf6;#F7931A;#22c55e;#06b6d4;#8a5cf6", dur: "10s", repeatCount: "indefinite" }) })
|
|
5768
6427
|
] }),
|
|
5769
|
-
/* @__PURE__ */
|
|
5770
|
-
/* @__PURE__ */
|
|
5771
|
-
/* @__PURE__ */
|
|
6428
|
+
/* @__PURE__ */ jsxs58("linearGradient", { id: "kh-grad-b", x1: "100%", y1: "0%", x2: "0%", y2: "100%", children: [
|
|
6429
|
+
/* @__PURE__ */ jsx72("stop", { offset: "0%", children: anim && /* @__PURE__ */ jsx72("animate", { attributeName: "stop-color", values: "#06b6d4;#22c55e;#F7931A;#8a5cf6;#06b6d4", dur: "8s", repeatCount: "indefinite" }) }),
|
|
6430
|
+
/* @__PURE__ */ jsx72("stop", { offset: "100%", children: anim && /* @__PURE__ */ jsx72("animate", { attributeName: "stop-color", values: "#F7931A;#06b6d4;#8a5cf6;#22c55e;#F7931A", dur: "8s", repeatCount: "indefinite" }) })
|
|
5772
6431
|
] }),
|
|
5773
|
-
/* @__PURE__ */
|
|
5774
|
-
/* @__PURE__ */
|
|
5775
|
-
/* @__PURE__ */
|
|
6432
|
+
/* @__PURE__ */ jsxs58("linearGradient", { id: "kh-grad-c", x1: "50%", y1: "0%", x2: "50%", y2: "100%", children: [
|
|
6433
|
+
/* @__PURE__ */ jsx72("stop", { offset: "0%", children: anim && /* @__PURE__ */ jsx72("animate", { attributeName: "stop-color", values: "#0e9dff;#8a5cf6;#15E99A;#0e9dff", dur: "6s", repeatCount: "indefinite" }) }),
|
|
6434
|
+
/* @__PURE__ */ jsx72("stop", { offset: "100%", children: anim && /* @__PURE__ */ jsx72("animate", { attributeName: "stop-color", values: "#8a5cf6;#15E99A;#0e9dff;#8a5cf6", dur: "6s", repeatCount: "indefinite" }) })
|
|
5776
6435
|
] }),
|
|
5777
|
-
/* @__PURE__ */
|
|
5778
|
-
/* @__PURE__ */
|
|
5779
|
-
/* @__PURE__ */
|
|
6436
|
+
/* @__PURE__ */ jsxs58("linearGradient", { id: "kh-gp", x1: "0%", y1: "0%", x2: "100%", y2: "100%", children: [
|
|
6437
|
+
/* @__PURE__ */ jsx72("stop", { offset: "0%", stopColor: "#22c55e" }),
|
|
6438
|
+
/* @__PURE__ */ jsx72("stop", { offset: "100%", stopColor: "#8a5cf6" })
|
|
5780
6439
|
] }),
|
|
5781
|
-
/* @__PURE__ */
|
|
5782
|
-
/* @__PURE__ */
|
|
5783
|
-
/* @__PURE__ */
|
|
6440
|
+
/* @__PURE__ */ jsxs58("linearGradient", { id: "kh-oc", x1: "0%", y1: "0%", x2: "100%", y2: "100%", children: [
|
|
6441
|
+
/* @__PURE__ */ jsx72("stop", { offset: "0%", stopColor: "#F7931A" }),
|
|
6442
|
+
/* @__PURE__ */ jsx72("stop", { offset: "100%", stopColor: "#06b6d4" })
|
|
5784
6443
|
] }),
|
|
5785
|
-
/* @__PURE__ */
|
|
5786
|
-
/* @__PURE__ */
|
|
5787
|
-
/* @__PURE__ */
|
|
6444
|
+
/* @__PURE__ */ jsxs58("linearGradient", { id: "kh-bp", x1: "0%", y1: "0%", x2: "100%", y2: "100%", children: [
|
|
6445
|
+
/* @__PURE__ */ jsx72("stop", { offset: "0%", stopColor: "#0e9dff" }),
|
|
6446
|
+
/* @__PURE__ */ jsx72("stop", { offset: "100%", stopColor: "#8a5cf6" })
|
|
5788
6447
|
] }),
|
|
5789
|
-
/* @__PURE__ */
|
|
5790
|
-
/* @__PURE__ */
|
|
5791
|
-
/* @__PURE__ */
|
|
5792
|
-
/* @__PURE__ */
|
|
6448
|
+
/* @__PURE__ */ jsxs58("radialGradient", { id: "kh-center-glow", cx: "50%", cy: "50%", r: "50%", children: [
|
|
6449
|
+
/* @__PURE__ */ jsx72("stop", { offset: "0%", stopColor: "#0e9dff", stopOpacity: "0.3" }),
|
|
6450
|
+
/* @__PURE__ */ jsx72("stop", { offset: "40%", stopColor: "#8a5cf6", stopOpacity: "0.15" }),
|
|
6451
|
+
/* @__PURE__ */ jsx72("stop", { offset: "100%", stopColor: "transparent", stopOpacity: "0" })
|
|
5793
6452
|
] }),
|
|
5794
|
-
/* @__PURE__ */
|
|
5795
|
-
/* @__PURE__ */
|
|
5796
|
-
/* @__PURE__ */
|
|
5797
|
-
/* @__PURE__ */
|
|
6453
|
+
/* @__PURE__ */ jsxs58("radialGradient", { id: "kh-haze", cx: "50%", cy: "50%", r: "50%", children: [
|
|
6454
|
+
/* @__PURE__ */ jsx72("stop", { offset: "0%", stopColor: "transparent", stopOpacity: "0" }),
|
|
6455
|
+
/* @__PURE__ */ jsx72("stop", { offset: "60%", stopColor: "#0e9dff", stopOpacity: "0.03" }),
|
|
6456
|
+
/* @__PURE__ */ jsx72("stop", { offset: "100%", stopColor: "#8a5cf6", stopOpacity: "0.06" })
|
|
5798
6457
|
] }),
|
|
5799
|
-
/* @__PURE__ */
|
|
5800
|
-
/* @__PURE__ */
|
|
5801
|
-
/* @__PURE__ */
|
|
5802
|
-
/* @__PURE__ */
|
|
5803
|
-
/* @__PURE__ */
|
|
6458
|
+
/* @__PURE__ */ jsxs58("filter", { id: "kh-glow", x: "-50%", y: "-50%", width: "200%", height: "200%", children: [
|
|
6459
|
+
/* @__PURE__ */ jsx72("feGaussianBlur", { stdDeviation: "3", result: "blur" }),
|
|
6460
|
+
/* @__PURE__ */ jsxs58("feMerge", { children: [
|
|
6461
|
+
/* @__PURE__ */ jsx72("feMergeNode", { in: "blur" }),
|
|
6462
|
+
/* @__PURE__ */ jsx72("feMergeNode", { in: "SourceGraphic" })
|
|
5804
6463
|
] })
|
|
5805
6464
|
] }),
|
|
5806
|
-
/* @__PURE__ */
|
|
5807
|
-
/* @__PURE__ */
|
|
5808
|
-
/* @__PURE__ */
|
|
5809
|
-
/* @__PURE__ */
|
|
5810
|
-
/* @__PURE__ */
|
|
6465
|
+
/* @__PURE__ */ jsxs58("filter", { id: "kh-glow-lg", x: "-50%", y: "-50%", width: "200%", height: "200%", children: [
|
|
6466
|
+
/* @__PURE__ */ jsx72("feGaussianBlur", { stdDeviation: "8", result: "blur" }),
|
|
6467
|
+
/* @__PURE__ */ jsxs58("feMerge", { children: [
|
|
6468
|
+
/* @__PURE__ */ jsx72("feMergeNode", { in: "blur" }),
|
|
6469
|
+
/* @__PURE__ */ jsx72("feMergeNode", { in: "SourceGraphic" })
|
|
5811
6470
|
] })
|
|
5812
6471
|
] })
|
|
5813
6472
|
] }),
|
|
5814
|
-
/* @__PURE__ */
|
|
5815
|
-
/* @__PURE__ */
|
|
5816
|
-
/* @__PURE__ */
|
|
5817
|
-
anim && /* @__PURE__ */
|
|
6473
|
+
/* @__PURE__ */ jsx72("circle", { cx: c, cy: c, r: "248", fill: "url(#kh-haze)" }),
|
|
6474
|
+
/* @__PURE__ */ jsxs58("g", { transform: px(20), children: [
|
|
6475
|
+
/* @__PURE__ */ jsxs58("g", { children: [
|
|
6476
|
+
anim && /* @__PURE__ */ jsx72(
|
|
5818
6477
|
"animateTransform",
|
|
5819
6478
|
{
|
|
5820
6479
|
attributeName: "transform",
|
|
@@ -5827,14 +6486,14 @@ var KaleidoScopeHeroAnimation = ({
|
|
|
5827
6486
|
),
|
|
5828
6487
|
Array.from({ length: 6 }, (_, i) => {
|
|
5829
6488
|
const a = Math.PI / 3 * i;
|
|
5830
|
-
return /* @__PURE__ */
|
|
5831
|
-
/* @__PURE__ */
|
|
5832
|
-
/* @__PURE__ */
|
|
6489
|
+
return /* @__PURE__ */ jsxs58("g", { transform: `translate(${c + outerR1 * Math.cos(a)},${c + outerR1 * Math.sin(a)})`, children: [
|
|
6490
|
+
/* @__PURE__ */ jsx72("path", { d: hexPath2(40), fill: "url(#kh-grad-a)", opacity: 0.08 + i % 3 * 0.04 }),
|
|
6491
|
+
/* @__PURE__ */ jsx72("path", { d: hexPath2(40), fill: "none", stroke: "url(#kh-grad-a)", strokeWidth: "0.5", opacity: 0.15, children: anim && /* @__PURE__ */ jsx72("animate", { attributeName: "opacity", values: "0.1;0.25;0.1", dur: `${4 + i * 0.3}s`, repeatCount: "indefinite" }) })
|
|
5833
6492
|
] }, `ha-${i}`);
|
|
5834
6493
|
}),
|
|
5835
6494
|
Array.from({ length: 6 }, (_, i) => {
|
|
5836
6495
|
const a = Math.PI / 3 * i + Math.PI / 6;
|
|
5837
|
-
return /* @__PURE__ */
|
|
6496
|
+
return /* @__PURE__ */ jsx72(
|
|
5838
6497
|
"path",
|
|
5839
6498
|
{
|
|
5840
6499
|
d: triPath(14),
|
|
@@ -5847,7 +6506,7 @@ var KaleidoScopeHeroAnimation = ({
|
|
|
5847
6506
|
}),
|
|
5848
6507
|
Array.from({ length: 12 }, (_, i) => {
|
|
5849
6508
|
const a = Math.PI / 6 * i;
|
|
5850
|
-
return /* @__PURE__ */
|
|
6509
|
+
return /* @__PURE__ */ jsx72(
|
|
5851
6510
|
"circle",
|
|
5852
6511
|
{
|
|
5853
6512
|
cx: c + outerR1 * 0.92 * Math.cos(a),
|
|
@@ -5855,14 +6514,14 @@ var KaleidoScopeHeroAnimation = ({
|
|
|
5855
6514
|
r: "1.5",
|
|
5856
6515
|
fill: "url(#kh-grad-a)",
|
|
5857
6516
|
opacity: "0.15",
|
|
5858
|
-
children: anim && /* @__PURE__ */
|
|
6517
|
+
children: anim && /* @__PURE__ */ jsx72("animate", { attributeName: "opacity", values: "0.08;0.25;0.08", dur: `${2 + i % 3 * 0.7}s`, repeatCount: "indefinite" })
|
|
5859
6518
|
},
|
|
5860
6519
|
`od-${i}`
|
|
5861
6520
|
);
|
|
5862
6521
|
})
|
|
5863
6522
|
] }),
|
|
5864
|
-
/* @__PURE__ */
|
|
5865
|
-
anim && /* @__PURE__ */
|
|
6523
|
+
/* @__PURE__ */ jsxs58("g", { children: [
|
|
6524
|
+
anim && /* @__PURE__ */ jsx72(
|
|
5866
6525
|
"animateTransform",
|
|
5867
6526
|
{
|
|
5868
6527
|
attributeName: "transform",
|
|
@@ -5875,28 +6534,28 @@ var KaleidoScopeHeroAnimation = ({
|
|
|
5875
6534
|
),
|
|
5876
6535
|
Array.from({ length: 6 }, (_, i) => {
|
|
5877
6536
|
const a = Math.PI / 3 * i + Math.PI / 6;
|
|
5878
|
-
return /* @__PURE__ */
|
|
5879
|
-
/* @__PURE__ */
|
|
5880
|
-
/* @__PURE__ */
|
|
6537
|
+
return /* @__PURE__ */ jsxs58("g", { transform: `translate(${c + outerR2 * Math.cos(a)},${c + outerR2 * Math.sin(a)})`, children: [
|
|
6538
|
+
/* @__PURE__ */ jsx72("path", { d: hexPath2(30), fill: "url(#kh-grad-b)", opacity: 0.06 + i % 2 * 0.04 }),
|
|
6539
|
+
/* @__PURE__ */ jsx72("path", { d: hexPath2(30), fill: "none", stroke: "url(#kh-grad-b)", strokeWidth: "0.5", opacity: 0.12 })
|
|
5881
6540
|
] }, `hb-${i}`);
|
|
5882
6541
|
}),
|
|
5883
6542
|
Array.from({ length: 6 }, (_, i) => {
|
|
5884
6543
|
const a = Math.PI / 3 * i;
|
|
5885
|
-
return /* @__PURE__ */
|
|
6544
|
+
return /* @__PURE__ */ jsx72(
|
|
5886
6545
|
"path",
|
|
5887
6546
|
{
|
|
5888
6547
|
d: diamondPath(8, 16),
|
|
5889
6548
|
transform: `translate(${c + outerR2 * 0.85 * Math.cos(a)},${c + outerR2 * 0.85 * Math.sin(a)}) rotate(${i * 60})`,
|
|
5890
6549
|
fill: "url(#kh-grad-b)",
|
|
5891
6550
|
opacity: "0.08",
|
|
5892
|
-
children: anim && /* @__PURE__ */
|
|
6551
|
+
children: anim && /* @__PURE__ */ jsx72("animate", { attributeName: "opacity", values: "0.05;0.15;0.05", dur: `${3.5 + i * 0.4}s`, repeatCount: "indefinite" })
|
|
5893
6552
|
},
|
|
5894
6553
|
`db-${i}`
|
|
5895
6554
|
);
|
|
5896
6555
|
})
|
|
5897
6556
|
] }),
|
|
5898
|
-
/* @__PURE__ */
|
|
5899
|
-
anim && /* @__PURE__ */
|
|
6557
|
+
/* @__PURE__ */ jsxs58("g", { children: [
|
|
6558
|
+
anim && /* @__PURE__ */ jsx72(
|
|
5900
6559
|
"animateTransform",
|
|
5901
6560
|
{
|
|
5902
6561
|
attributeName: "transform",
|
|
@@ -5910,23 +6569,23 @@ var KaleidoScopeHeroAnimation = ({
|
|
|
5910
6569
|
Array.from({ length: 12 }, (_, i) => {
|
|
5911
6570
|
const a = Math.PI / 6 * i;
|
|
5912
6571
|
const r = outerR1 * (0.6 + i % 2 * 0.15);
|
|
5913
|
-
return /* @__PURE__ */
|
|
6572
|
+
return /* @__PURE__ */ jsx72(
|
|
5914
6573
|
"path",
|
|
5915
6574
|
{
|
|
5916
6575
|
d: triPath(10),
|
|
5917
6576
|
transform: `translate(${c + r * Math.cos(a)},${c + r * Math.sin(a)}) rotate(${i * 30 + 15})`,
|
|
5918
6577
|
fill: "url(#kh-grad-c)",
|
|
5919
6578
|
opacity: "0.05",
|
|
5920
|
-
children: anim && /* @__PURE__ */
|
|
6579
|
+
children: anim && /* @__PURE__ */ jsx72("animate", { attributeName: "opacity", values: "0.03;0.1;0.03", dur: `${5 + i % 4 * 0.8}s`, repeatCount: "indefinite" })
|
|
5921
6580
|
},
|
|
5922
6581
|
`tc-${i}`
|
|
5923
6582
|
);
|
|
5924
6583
|
})
|
|
5925
6584
|
] })
|
|
5926
6585
|
] }),
|
|
5927
|
-
/* @__PURE__ */
|
|
5928
|
-
/* @__PURE__ */
|
|
5929
|
-
anim && /* @__PURE__ */
|
|
6586
|
+
/* @__PURE__ */ jsxs58("g", { transform: px(14), children: [
|
|
6587
|
+
/* @__PURE__ */ jsxs58("g", { children: [
|
|
6588
|
+
anim && /* @__PURE__ */ jsx72(
|
|
5930
6589
|
"animateTransform",
|
|
5931
6590
|
{
|
|
5932
6591
|
attributeName: "transform",
|
|
@@ -5939,9 +6598,9 @@ var KaleidoScopeHeroAnimation = ({
|
|
|
5939
6598
|
),
|
|
5940
6599
|
Array.from({ length: 12 }, (_, i) => {
|
|
5941
6600
|
const a = Math.PI / 6 * i;
|
|
5942
|
-
return /* @__PURE__ */
|
|
5943
|
-
/* @__PURE__ */
|
|
5944
|
-
/* @__PURE__ */
|
|
6601
|
+
return /* @__PURE__ */ jsxs58("g", { transform: `translate(${c + midR * Math.cos(a)},${c + midR * Math.sin(a)})`, children: [
|
|
6602
|
+
/* @__PURE__ */ jsx72("path", { d: hexPath2(12), fill: "url(#kh-grad-c)", opacity: 0.08 + i % 3 * 0.03 }),
|
|
6603
|
+
/* @__PURE__ */ jsx72("path", { d: hexPath2(12), fill: "none", stroke: "url(#kh-grad-c)", strokeWidth: "0.4", opacity: "0.12", children: anim && /* @__PURE__ */ jsx72("animate", { attributeName: "opacity", values: "0.08;0.2;0.08", dur: `${3 + i % 4 * 0.5}s`, repeatCount: "indefinite" }) })
|
|
5945
6604
|
] }, `mh-${i}`);
|
|
5946
6605
|
})
|
|
5947
6606
|
] }),
|
|
@@ -5952,7 +6611,7 @@ var KaleidoScopeHeroAnimation = ({
|
|
|
5952
6611
|
const y1 = c + midR * Math.sin(a1);
|
|
5953
6612
|
const x2 = c + midR * Math.cos(a2);
|
|
5954
6613
|
const y2 = c + midR * Math.sin(a2);
|
|
5955
|
-
return /* @__PURE__ */
|
|
6614
|
+
return /* @__PURE__ */ jsx72(
|
|
5956
6615
|
"path",
|
|
5957
6616
|
{
|
|
5958
6617
|
d: `M${x1},${y1} Q${c},${c} ${x2},${y2}`,
|
|
@@ -5961,17 +6620,17 @@ var KaleidoScopeHeroAnimation = ({
|
|
|
5961
6620
|
strokeWidth: "0.5",
|
|
5962
6621
|
strokeDasharray: "3 5",
|
|
5963
6622
|
opacity: "0.1",
|
|
5964
|
-
children: anim && /* @__PURE__ */
|
|
6623
|
+
children: anim && /* @__PURE__ */ jsx72("animate", { attributeName: "stroke-dashoffset", from: "0", to: "-16", dur: `${3 + i * 0.2}s`, repeatCount: "indefinite" })
|
|
5965
6624
|
},
|
|
5966
6625
|
`arc-${i}`
|
|
5967
6626
|
);
|
|
5968
6627
|
})
|
|
5969
6628
|
] }),
|
|
5970
|
-
/* @__PURE__ */
|
|
5971
|
-
/* @__PURE__ */
|
|
5972
|
-
/* @__PURE__ */
|
|
5973
|
-
/* @__PURE__ */
|
|
5974
|
-
anim && /* @__PURE__ */
|
|
6629
|
+
/* @__PURE__ */ jsxs58("g", { transform: px(10), children: [
|
|
6630
|
+
/* @__PURE__ */ jsx72("circle", { cx: c, cy: c, r: orbitR, fill: "none", stroke: "rgba(255,255,255,0.05)", strokeWidth: "1", strokeDasharray: "3 5", children: anim && /* @__PURE__ */ jsx72("animateTransform", { attributeName: "transform", type: "rotate", from: `0 ${c} ${c}`, to: `360 ${c} ${c}`, dur: "90s", repeatCount: "indefinite" }) }),
|
|
6631
|
+
/* @__PURE__ */ jsx72("circle", { cx: c, cy: c, r: orbitR + 4, fill: "none", stroke: "rgba(255,255,255,0.03)", strokeWidth: "0.5" }),
|
|
6632
|
+
/* @__PURE__ */ jsxs58("g", { children: [
|
|
6633
|
+
anim && /* @__PURE__ */ jsx72(
|
|
5975
6634
|
"animateTransform",
|
|
5976
6635
|
{
|
|
5977
6636
|
attributeName: "transform",
|
|
@@ -5986,8 +6645,8 @@ var KaleidoScopeHeroAnimation = ({
|
|
|
5986
6645
|
const angle = Math.atan2(pos.y - c, pos.x - c);
|
|
5987
6646
|
const dx = Math.cos(angle);
|
|
5988
6647
|
const dy = Math.sin(angle);
|
|
5989
|
-
return /* @__PURE__ */
|
|
5990
|
-
/* @__PURE__ */
|
|
6648
|
+
return /* @__PURE__ */ jsxs58("g", { children: [
|
|
6649
|
+
/* @__PURE__ */ jsx72(
|
|
5991
6650
|
"line",
|
|
5992
6651
|
{
|
|
5993
6652
|
x1: c + dx * 52,
|
|
@@ -5998,14 +6657,14 @@ var KaleidoScopeHeroAnimation = ({
|
|
|
5998
6657
|
strokeWidth: "0.8",
|
|
5999
6658
|
strokeDasharray: "2 4",
|
|
6000
6659
|
opacity: "0.2",
|
|
6001
|
-
children: anim && /* @__PURE__ */
|
|
6660
|
+
children: anim && /* @__PURE__ */ jsx72("animate", { attributeName: "stroke-dashoffset", from: "0", to: "-12", dur: `${1.5 + i * 0.2}s`, repeatCount: "indefinite" })
|
|
6002
6661
|
}
|
|
6003
6662
|
),
|
|
6004
|
-
/* @__PURE__ */
|
|
6005
|
-
/* @__PURE__ */
|
|
6006
|
-
/* @__PURE__ */
|
|
6007
|
-
/* @__PURE__ */
|
|
6008
|
-
/* @__PURE__ */
|
|
6663
|
+
/* @__PURE__ */ jsx72("circle", { r: "2.5", fill: PROTOCOLS2[i].color, opacity: "0", children: anim && /* @__PURE__ */ jsxs58(Fragment14, { children: [
|
|
6664
|
+
/* @__PURE__ */ jsx72("animate", { attributeName: "cx", values: `${c + dx * 52};${pos.x}`, dur: `${2 + i * 0.3}s`, repeatCount: "indefinite" }),
|
|
6665
|
+
/* @__PURE__ */ jsx72("animate", { attributeName: "cy", values: `${c + dy * 52};${pos.y}`, dur: `${2 + i * 0.3}s`, repeatCount: "indefinite" }),
|
|
6666
|
+
/* @__PURE__ */ jsx72("animate", { attributeName: "opacity", values: "0;0.8;0", dur: `${2 + i * 0.3}s`, repeatCount: "indefinite" }),
|
|
6667
|
+
/* @__PURE__ */ jsx72("animate", { attributeName: "r", values: "1.5;3;1.5", dur: `${2 + i * 0.3}s`, repeatCount: "indefinite" })
|
|
6009
6668
|
] }) })
|
|
6010
6669
|
] }, `conn-${i}`);
|
|
6011
6670
|
}),
|
|
@@ -6013,14 +6672,14 @@ var KaleidoScopeHeroAnimation = ({
|
|
|
6013
6672
|
const pos = iconPositions[i];
|
|
6014
6673
|
const labelWidth = Math.max(proto.name.length * 5.5 + 10, 32);
|
|
6015
6674
|
const isHovered = hoveredProtocol === proto.name;
|
|
6016
|
-
return /* @__PURE__ */
|
|
6675
|
+
return /* @__PURE__ */ jsx72("g", { transform: `translate(${pos.x},${pos.y})`, children: /* @__PURE__ */ jsxs58(
|
|
6017
6676
|
"g",
|
|
6018
6677
|
{
|
|
6019
6678
|
onMouseEnter: () => setHoveredProtocol(proto.name),
|
|
6020
6679
|
onMouseLeave: () => setHoveredProtocol(null),
|
|
6021
6680
|
style: { cursor: "pointer" },
|
|
6022
6681
|
children: [
|
|
6023
|
-
anim && /* @__PURE__ */
|
|
6682
|
+
anim && /* @__PURE__ */ jsx72(
|
|
6024
6683
|
"animateTransform",
|
|
6025
6684
|
{
|
|
6026
6685
|
attributeName: "transform",
|
|
@@ -6031,7 +6690,7 @@ var KaleidoScopeHeroAnimation = ({
|
|
|
6031
6690
|
repeatCount: "indefinite"
|
|
6032
6691
|
}
|
|
6033
6692
|
),
|
|
6034
|
-
/* @__PURE__ */
|
|
6693
|
+
/* @__PURE__ */ jsx72(
|
|
6035
6694
|
"circle",
|
|
6036
6695
|
{
|
|
6037
6696
|
cx: "0",
|
|
@@ -6041,13 +6700,13 @@ var KaleidoScopeHeroAnimation = ({
|
|
|
6041
6700
|
stroke: proto.color,
|
|
6042
6701
|
strokeWidth: "1",
|
|
6043
6702
|
opacity: "0",
|
|
6044
|
-
children: anim && /* @__PURE__ */
|
|
6045
|
-
/* @__PURE__ */
|
|
6046
|
-
/* @__PURE__ */
|
|
6703
|
+
children: anim && /* @__PURE__ */ jsxs58(Fragment14, { children: [
|
|
6704
|
+
/* @__PURE__ */ jsx72("animate", { attributeName: "r", values: `${iconR};${iconR + 12}`, dur: `${3 + i * 0.5}s`, repeatCount: "indefinite", begin: `${i * 0.4}s` }),
|
|
6705
|
+
/* @__PURE__ */ jsx72("animate", { attributeName: "opacity", values: "0.5;0", dur: `${3 + i * 0.5}s`, repeatCount: "indefinite", begin: `${i * 0.4}s` })
|
|
6047
6706
|
] })
|
|
6048
6707
|
}
|
|
6049
6708
|
),
|
|
6050
|
-
/* @__PURE__ */
|
|
6709
|
+
/* @__PURE__ */ jsx72(
|
|
6051
6710
|
"circle",
|
|
6052
6711
|
{
|
|
6053
6712
|
cx: "0",
|
|
@@ -6057,10 +6716,10 @@ var KaleidoScopeHeroAnimation = ({
|
|
|
6057
6716
|
stroke: proto.color,
|
|
6058
6717
|
strokeWidth: "1",
|
|
6059
6718
|
opacity: "0.15",
|
|
6060
|
-
children: anim && /* @__PURE__ */
|
|
6719
|
+
children: anim && /* @__PURE__ */ jsx72("animate", { attributeName: "opacity", values: "0.15;0.4;0.15", dur: `${3 + i * 0.4}s`, repeatCount: "indefinite" })
|
|
6061
6720
|
}
|
|
6062
6721
|
),
|
|
6063
|
-
/* @__PURE__ */
|
|
6722
|
+
/* @__PURE__ */ jsx72(
|
|
6064
6723
|
"circle",
|
|
6065
6724
|
{
|
|
6066
6725
|
cx: "0",
|
|
@@ -6070,10 +6729,10 @@ var KaleidoScopeHeroAnimation = ({
|
|
|
6070
6729
|
stroke: proto.color,
|
|
6071
6730
|
strokeWidth: "1.5",
|
|
6072
6731
|
opacity: "0.25",
|
|
6073
|
-
children: anim && /* @__PURE__ */
|
|
6732
|
+
children: anim && /* @__PURE__ */ jsx72("animate", { attributeName: "opacity", values: "0.2;0.5;0.2", dur: `${2.5 + i * 0.3}s`, repeatCount: "indefinite" })
|
|
6074
6733
|
}
|
|
6075
6734
|
),
|
|
6076
|
-
/* @__PURE__ */
|
|
6735
|
+
/* @__PURE__ */ jsx72(
|
|
6077
6736
|
"circle",
|
|
6078
6737
|
{
|
|
6079
6738
|
cx: "0",
|
|
@@ -6084,8 +6743,8 @@ var KaleidoScopeHeroAnimation = ({
|
|
|
6084
6743
|
strokeWidth: "1"
|
|
6085
6744
|
}
|
|
6086
6745
|
),
|
|
6087
|
-
/* @__PURE__ */
|
|
6088
|
-
/* @__PURE__ */
|
|
6746
|
+
/* @__PURE__ */ jsx72("circle", { cx: "0", cy: "0", r: iconR - 2, fill: proto.color, opacity: "0.06" }),
|
|
6747
|
+
/* @__PURE__ */ jsx72("foreignObject", { x: -iconR, y: -iconR, width: iconR * 2, height: iconR * 2, children: /* @__PURE__ */ jsx72(
|
|
6089
6748
|
NetworkBadge,
|
|
6090
6749
|
{
|
|
6091
6750
|
network: proto.network,
|
|
@@ -6093,8 +6752,8 @@ var KaleidoScopeHeroAnimation = ({
|
|
|
6093
6752
|
className: "w-full h-full"
|
|
6094
6753
|
}
|
|
6095
6754
|
) }),
|
|
6096
|
-
/* @__PURE__ */
|
|
6097
|
-
/* @__PURE__ */
|
|
6755
|
+
/* @__PURE__ */ jsxs58("g", { opacity: isHovered ? 1 : 0, style: { transition: "opacity 0.2s ease" }, children: [
|
|
6756
|
+
/* @__PURE__ */ jsx72(
|
|
6098
6757
|
"rect",
|
|
6099
6758
|
{
|
|
6100
6759
|
x: -labelWidth / 2,
|
|
@@ -6108,7 +6767,7 @@ var KaleidoScopeHeroAnimation = ({
|
|
|
6108
6767
|
strokeOpacity: 0.4
|
|
6109
6768
|
}
|
|
6110
6769
|
),
|
|
6111
|
-
/* @__PURE__ */
|
|
6770
|
+
/* @__PURE__ */ jsx72(
|
|
6112
6771
|
"text",
|
|
6113
6772
|
{
|
|
6114
6773
|
x: "0",
|
|
@@ -6128,9 +6787,9 @@ var KaleidoScopeHeroAnimation = ({
|
|
|
6128
6787
|
})
|
|
6129
6788
|
] })
|
|
6130
6789
|
] }),
|
|
6131
|
-
/* @__PURE__ */
|
|
6132
|
-
/* @__PURE__ */
|
|
6133
|
-
anim && /* @__PURE__ */
|
|
6790
|
+
/* @__PURE__ */ jsxs58("g", { transform: px(5), children: [
|
|
6791
|
+
/* @__PURE__ */ jsxs58("g", { children: [
|
|
6792
|
+
anim && /* @__PURE__ */ jsx72(
|
|
6134
6793
|
"animateTransform",
|
|
6135
6794
|
{
|
|
6136
6795
|
attributeName: "transform",
|
|
@@ -6143,28 +6802,28 @@ var KaleidoScopeHeroAnimation = ({
|
|
|
6143
6802
|
),
|
|
6144
6803
|
Array.from({ length: 6 }, (_, i) => {
|
|
6145
6804
|
const a = Math.PI / 3 * i;
|
|
6146
|
-
return /* @__PURE__ */
|
|
6805
|
+
return /* @__PURE__ */ jsx72(
|
|
6147
6806
|
"path",
|
|
6148
6807
|
{
|
|
6149
6808
|
d: diamondPath(10, 22),
|
|
6150
6809
|
transform: `translate(${c + innerR * Math.cos(a)},${c + innerR * Math.sin(a)}) rotate(${i * 60})`,
|
|
6151
6810
|
fill: "url(#kh-gp)",
|
|
6152
6811
|
opacity: "0.15",
|
|
6153
|
-
children: anim && /* @__PURE__ */
|
|
6812
|
+
children: anim && /* @__PURE__ */ jsx72("animate", { attributeName: "opacity", values: "0.1;0.28;0.1", dur: `${2.8 + i * 0.35}s`, repeatCount: "indefinite" })
|
|
6154
6813
|
},
|
|
6155
6814
|
`d-${i}`
|
|
6156
6815
|
);
|
|
6157
6816
|
}),
|
|
6158
6817
|
Array.from({ length: 6 }, (_, i) => {
|
|
6159
6818
|
const a = Math.PI / 3 * i + Math.PI / 6;
|
|
6160
|
-
return /* @__PURE__ */
|
|
6819
|
+
return /* @__PURE__ */ jsx72(
|
|
6161
6820
|
"path",
|
|
6162
6821
|
{
|
|
6163
6822
|
d: triPath(8),
|
|
6164
6823
|
transform: `translate(${c + innerR * 0.75 * Math.cos(a)},${c + innerR * 0.75 * Math.sin(a)}) rotate(${i * 60 + 30})`,
|
|
6165
6824
|
fill: "url(#kh-oc)",
|
|
6166
6825
|
opacity: "0.1",
|
|
6167
|
-
children: anim && /* @__PURE__ */
|
|
6826
|
+
children: anim && /* @__PURE__ */ jsx72("animate", { attributeName: "opacity", values: "0.06;0.18;0.06", dur: `${3.2 + i * 0.3}s`, repeatCount: "indefinite" })
|
|
6168
6827
|
},
|
|
6169
6828
|
`it-${i}`
|
|
6170
6829
|
);
|
|
@@ -6172,7 +6831,7 @@ var KaleidoScopeHeroAnimation = ({
|
|
|
6172
6831
|
Array.from({ length: 12 }, (_, i) => {
|
|
6173
6832
|
const a = Math.PI / 6 * i;
|
|
6174
6833
|
const r = innerR * (i % 2 === 0 ? 0.55 : 0.65);
|
|
6175
|
-
return /* @__PURE__ */
|
|
6834
|
+
return /* @__PURE__ */ jsx72(
|
|
6176
6835
|
"circle",
|
|
6177
6836
|
{
|
|
6178
6837
|
cx: c + r * Math.cos(a),
|
|
@@ -6180,14 +6839,14 @@ var KaleidoScopeHeroAnimation = ({
|
|
|
6180
6839
|
r: i % 2 === 0 ? 2 : 1.5,
|
|
6181
6840
|
fill: "url(#kh-oc)",
|
|
6182
6841
|
opacity: "0.2",
|
|
6183
|
-
children: anim && /* @__PURE__ */
|
|
6842
|
+
children: anim && /* @__PURE__ */ jsx72("animate", { attributeName: "opacity", values: "0.1;0.35;0.1", dur: `${2 + i % 4 * 0.5}s`, repeatCount: "indefinite" })
|
|
6184
6843
|
},
|
|
6185
6844
|
`id-${i}`
|
|
6186
6845
|
);
|
|
6187
6846
|
})
|
|
6188
6847
|
] }),
|
|
6189
|
-
/* @__PURE__ */
|
|
6190
|
-
anim && /* @__PURE__ */
|
|
6848
|
+
/* @__PURE__ */ jsxs58("g", { children: [
|
|
6849
|
+
anim && /* @__PURE__ */ jsx72(
|
|
6191
6850
|
"animateTransform",
|
|
6192
6851
|
{
|
|
6193
6852
|
attributeName: "transform",
|
|
@@ -6200,27 +6859,27 @@ var KaleidoScopeHeroAnimation = ({
|
|
|
6200
6859
|
),
|
|
6201
6860
|
Array.from({ length: 6 }, (_, i) => {
|
|
6202
6861
|
const a = Math.PI / 3 * i + Math.PI / 6;
|
|
6203
|
-
return /* @__PURE__ */
|
|
6862
|
+
return /* @__PURE__ */ jsx72(
|
|
6204
6863
|
"path",
|
|
6205
6864
|
{
|
|
6206
6865
|
d: hexPath2(6),
|
|
6207
6866
|
transform: `translate(${c + innerR * 0.42 * Math.cos(a)},${c + innerR * 0.42 * Math.sin(a)})`,
|
|
6208
6867
|
fill: "url(#kh-bp)",
|
|
6209
6868
|
opacity: "0.1",
|
|
6210
|
-
children: anim && /* @__PURE__ */
|
|
6869
|
+
children: anim && /* @__PURE__ */ jsx72("animate", { attributeName: "opacity", values: "0.06;0.18;0.06", dur: `${2.5 + i * 0.3}s`, repeatCount: "indefinite" })
|
|
6211
6870
|
},
|
|
6212
6871
|
`ih-${i}`
|
|
6213
6872
|
);
|
|
6214
6873
|
})
|
|
6215
6874
|
] })
|
|
6216
6875
|
] }),
|
|
6217
|
-
/* @__PURE__ */
|
|
6876
|
+
/* @__PURE__ */ jsx72("g", { transform: px(18), children: Array.from({ length: 16 }, (_, i) => {
|
|
6218
6877
|
const a = Math.PI * 2 * i / 16;
|
|
6219
6878
|
const baseR = 60 + i % 4 * 45;
|
|
6220
6879
|
const x = c + baseR * Math.cos(a);
|
|
6221
6880
|
const y = c + baseR * Math.sin(a);
|
|
6222
6881
|
const colors2 = ["#0e9dff", "#8a5cf6", "#22c55e", "#F7931A", "#06b6d4", "#15E99A"];
|
|
6223
|
-
return /* @__PURE__ */
|
|
6882
|
+
return /* @__PURE__ */ jsx72(
|
|
6224
6883
|
"circle",
|
|
6225
6884
|
{
|
|
6226
6885
|
cx: x,
|
|
@@ -6228,26 +6887,26 @@ var KaleidoScopeHeroAnimation = ({
|
|
|
6228
6887
|
r: 1 + i % 3 * 0.5,
|
|
6229
6888
|
fill: colors2[i % colors2.length],
|
|
6230
6889
|
opacity: "0",
|
|
6231
|
-
children: anim && /* @__PURE__ */
|
|
6232
|
-
/* @__PURE__ */
|
|
6233
|
-
/* @__PURE__ */
|
|
6234
|
-
/* @__PURE__ */
|
|
6890
|
+
children: anim && /* @__PURE__ */ jsxs58(Fragment14, { children: [
|
|
6891
|
+
/* @__PURE__ */ jsx72("animate", { attributeName: "opacity", values: "0;0.6;0", dur: `${3 + i % 5 * 0.8}s`, repeatCount: "indefinite", begin: `${i % 7 * 0.5}s` }),
|
|
6892
|
+
/* @__PURE__ */ jsx72("animate", { attributeName: "cx", values: `${x};${x + Math.cos(a) * 15}`, dur: `${4 + i % 3 * 1.5}s`, repeatCount: "indefinite", begin: `${i % 7 * 0.5}s` }),
|
|
6893
|
+
/* @__PURE__ */ jsx72("animate", { attributeName: "cy", values: `${y};${y + Math.sin(a) * 15}`, dur: `${4 + i % 3 * 1.5}s`, repeatCount: "indefinite", begin: `${i % 7 * 0.5}s` })
|
|
6235
6894
|
] })
|
|
6236
6895
|
},
|
|
6237
6896
|
`p-${i}`
|
|
6238
6897
|
);
|
|
6239
6898
|
}) }),
|
|
6240
|
-
/* @__PURE__ */
|
|
6241
|
-
/* @__PURE__ */
|
|
6242
|
-
/* @__PURE__ */
|
|
6243
|
-
/* @__PURE__ */
|
|
6244
|
-
/* @__PURE__ */
|
|
6899
|
+
/* @__PURE__ */ jsxs58("g", { children: [
|
|
6900
|
+
/* @__PURE__ */ jsx72("circle", { cx: c, cy: c, r: "75", fill: "url(#kh-center-glow)", children: anim && /* @__PURE__ */ jsx72("animate", { attributeName: "r", values: "70;80;70", dur: "4s", repeatCount: "indefinite" }) }),
|
|
6901
|
+
/* @__PURE__ */ jsx72("circle", { cx: c, cy: c, r: "52", fill: "none", stroke: "url(#kh-bp)", strokeWidth: "1", opacity: "0", children: anim && /* @__PURE__ */ jsxs58(Fragment14, { children: [
|
|
6902
|
+
/* @__PURE__ */ jsx72("animate", { attributeName: "r", values: "48;65", dur: "3s", repeatCount: "indefinite" }),
|
|
6903
|
+
/* @__PURE__ */ jsx72("animate", { attributeName: "opacity", values: "0.4;0", dur: "3s", repeatCount: "indefinite" })
|
|
6245
6904
|
] }) }),
|
|
6246
|
-
/* @__PURE__ */
|
|
6247
|
-
/* @__PURE__ */
|
|
6248
|
-
/* @__PURE__ */
|
|
6905
|
+
/* @__PURE__ */ jsx72("circle", { cx: c, cy: c, r: "48", fill: "none", stroke: "url(#kh-gp)", strokeWidth: "0.8", opacity: "0", children: anim && /* @__PURE__ */ jsxs58(Fragment14, { children: [
|
|
6906
|
+
/* @__PURE__ */ jsx72("animate", { attributeName: "r", values: "48;60", dur: "3s", repeatCount: "indefinite", begin: "1.5s" }),
|
|
6907
|
+
/* @__PURE__ */ jsx72("animate", { attributeName: "opacity", values: "0.3;0", dur: "3s", repeatCount: "indefinite", begin: "1.5s" })
|
|
6249
6908
|
] }) }),
|
|
6250
|
-
/* @__PURE__ */
|
|
6909
|
+
/* @__PURE__ */ jsx72(
|
|
6251
6910
|
"path",
|
|
6252
6911
|
{
|
|
6253
6912
|
d: hexPath2(50),
|
|
@@ -6257,13 +6916,13 @@ var KaleidoScopeHeroAnimation = ({
|
|
|
6257
6916
|
strokeWidth: "1.5",
|
|
6258
6917
|
opacity: "0.4",
|
|
6259
6918
|
filter: "url(#kh-glow)",
|
|
6260
|
-
children: anim && /* @__PURE__ */
|
|
6261
|
-
/* @__PURE__ */
|
|
6262
|
-
/* @__PURE__ */
|
|
6919
|
+
children: anim && /* @__PURE__ */ jsxs58(Fragment14, { children: [
|
|
6920
|
+
/* @__PURE__ */ jsx72("animate", { attributeName: "opacity", values: "0.3;0.65;0.3", dur: "3s", repeatCount: "indefinite" }),
|
|
6921
|
+
/* @__PURE__ */ jsx72("animate", { attributeName: "stroke-width", values: "1.5;2.5;1.5", dur: "3s", repeatCount: "indefinite" })
|
|
6263
6922
|
] })
|
|
6264
6923
|
}
|
|
6265
6924
|
),
|
|
6266
|
-
/* @__PURE__ */
|
|
6925
|
+
/* @__PURE__ */ jsx72(
|
|
6267
6926
|
"path",
|
|
6268
6927
|
{
|
|
6269
6928
|
d: hexPath2(46),
|
|
@@ -6273,21 +6932,21 @@ var KaleidoScopeHeroAnimation = ({
|
|
|
6273
6932
|
strokeWidth: "0.5"
|
|
6274
6933
|
}
|
|
6275
6934
|
),
|
|
6276
|
-
/* @__PURE__ */
|
|
6277
|
-
/* @__PURE__ */
|
|
6278
|
-
/* @__PURE__ */
|
|
6279
|
-
/* @__PURE__ */
|
|
6280
|
-
/* @__PURE__ */
|
|
6281
|
-
/* @__PURE__ */
|
|
6282
|
-
/* @__PURE__ */
|
|
6283
|
-
/* @__PURE__ */
|
|
6284
|
-
/* @__PURE__ */
|
|
6285
|
-
/* @__PURE__ */
|
|
6286
|
-
/* @__PURE__ */
|
|
6287
|
-
/* @__PURE__ */
|
|
6288
|
-
/* @__PURE__ */
|
|
6289
|
-
/* @__PURE__ */
|
|
6290
|
-
/* @__PURE__ */
|
|
6935
|
+
/* @__PURE__ */ jsxs58("g", { transform: `translate(${c - 34},${c - 34}) scale(0.325)`, children: [
|
|
6936
|
+
/* @__PURE__ */ jsx72("path", { d: "M69.7141 207.3H0.908203L35.3243 172.936L69.7141 207.3Z", fill: "#6F32FF" }),
|
|
6937
|
+
/* @__PURE__ */ jsx72("path", { d: "M138.441 0.96106V69.767L104.078 35.3508L138.441 0.96106Z", fill: "#17B581" }),
|
|
6938
|
+
/* @__PURE__ */ jsx72("path", { d: "M138.415 138.547V207.352L104.051 172.936L138.415 138.547Z", fill: "#17B581" }),
|
|
6939
|
+
/* @__PURE__ */ jsx72("path", { d: "M138.441 69.7406V0.96106L172.804 35.3772L138.441 69.767V69.7406Z", fill: "#17B581" }),
|
|
6940
|
+
/* @__PURE__ */ jsx72("path", { d: "M69.6614 138.494V69.6879L104.025 104.104L69.6614 138.494Z", fill: "#15E99A" }),
|
|
6941
|
+
/* @__PURE__ */ jsx72("path", { d: "M69.6615 69.7142V138.52L35.2981 104.104L69.6615 69.7142Z", fill: "#15E99A" }),
|
|
6942
|
+
/* @__PURE__ */ jsx72("path", { d: "M138.467 207.379V138.573L172.831 172.989L138.467 207.379Z", fill: "#17B581" }),
|
|
6943
|
+
/* @__PURE__ */ jsx72("path", { d: "M0.908203 0.908325H69.7141L35.298 35.2718L0.908203 0.908325Z", fill: "#6F32FF" }),
|
|
6944
|
+
/* @__PURE__ */ jsx72("path", { d: "M207.22 207.3H138.415L172.831 172.936L207.22 207.3Z", fill: "#17B581" }),
|
|
6945
|
+
/* @__PURE__ */ jsx72("path", { d: "M138.415 0.987427H207.22L172.804 35.3509L138.415 0.987427Z", fill: "#17B581" }),
|
|
6946
|
+
/* @__PURE__ */ jsx72("path", { d: "M138.467 69.7143H69.6614L104.078 35.3508L138.467 69.7143Z", fill: "#17B581" }),
|
|
6947
|
+
/* @__PURE__ */ jsx72("path", { d: "M69.635 138.494H138.441L104.025 172.857L69.635 138.494Z", fill: "#17B581" }),
|
|
6948
|
+
/* @__PURE__ */ jsx72("path", { d: "M138.415 138.494H69.635L104.025 104.157L138.388 138.494H138.415Z", fill: "#15E99A" }),
|
|
6949
|
+
/* @__PURE__ */ jsx72("path", { d: "M138.415 69.7142L104.051 104.051L69.6614 69.7142H138.441H138.415Z", fill: "#15E99A" })
|
|
6291
6950
|
] })
|
|
6292
6951
|
] })
|
|
6293
6952
|
]
|
|
@@ -6414,7 +7073,7 @@ var colors = {
|
|
|
6414
7073
|
};
|
|
6415
7074
|
|
|
6416
7075
|
// src/web/components/deposit-ui-shared.tsx
|
|
6417
|
-
import { Fragment as
|
|
7076
|
+
import { Fragment as Fragment15, jsx as jsx73, jsxs as jsxs59 } from "react/jsx-runtime";
|
|
6418
7077
|
var GLOW_ALPHA = "26";
|
|
6419
7078
|
function qrGlowStyle(hex) {
|
|
6420
7079
|
return { boxShadow: `0 0 30px ${hex}${GLOW_ALPHA}` };
|
|
@@ -6428,7 +7087,7 @@ var NETWORK_CONFIG = {
|
|
|
6428
7087
|
border: "border-network-bitcoin/40",
|
|
6429
7088
|
qrBorder: "border-network-bitcoin/30",
|
|
6430
7089
|
qrGlow: qrGlowStyle(colors.network.bitcoin),
|
|
6431
|
-
icon: /* @__PURE__ */
|
|
7090
|
+
icon: /* @__PURE__ */ jsx73("span", { className: "material-symbols-outlined text-icon-xs leading-none", children: "link" })
|
|
6432
7091
|
},
|
|
6433
7092
|
lightning: {
|
|
6434
7093
|
label: "Lightning",
|
|
@@ -6438,7 +7097,7 @@ var NETWORK_CONFIG = {
|
|
|
6438
7097
|
border: "border-network-lightning/40",
|
|
6439
7098
|
qrBorder: "border-network-lightning/30",
|
|
6440
7099
|
qrGlow: qrGlowStyle(colors.network.lightning),
|
|
6441
|
-
icon: /* @__PURE__ */
|
|
7100
|
+
icon: /* @__PURE__ */ jsx73("img", { src: "/icons/lightning/lightning.svg", className: "size-3", alt: "" })
|
|
6442
7101
|
},
|
|
6443
7102
|
spark: {
|
|
6444
7103
|
label: "Spark",
|
|
@@ -6448,7 +7107,7 @@ var NETWORK_CONFIG = {
|
|
|
6448
7107
|
border: "border-info/40",
|
|
6449
7108
|
qrBorder: "border-info/30",
|
|
6450
7109
|
qrGlow: qrGlowStyle(colors.info),
|
|
6451
|
-
icon: /* @__PURE__ */
|
|
7110
|
+
icon: /* @__PURE__ */ jsx73("img", { src: "/icons/spark/Asterisk/Spark Asterisk White.svg", className: "h-3 w-3", alt: "" })
|
|
6452
7111
|
},
|
|
6453
7112
|
arkade: {
|
|
6454
7113
|
label: "Arkade",
|
|
@@ -6458,7 +7117,7 @@ var NETWORK_CONFIG = {
|
|
|
6458
7117
|
border: "border-network-arkade/40",
|
|
6459
7118
|
qrBorder: "border-network-arkade/30",
|
|
6460
7119
|
qrGlow: qrGlowStyle(colors.network.arkade),
|
|
6461
|
-
icon: /* @__PURE__ */
|
|
7120
|
+
icon: /* @__PURE__ */ jsx73("img", { src: "/icons/arkade/arkade-icon.svg", className: "h-3 w-3 rounded-sm", alt: "" })
|
|
6462
7121
|
}
|
|
6463
7122
|
};
|
|
6464
7123
|
var ACCOUNT_META = {
|
|
@@ -6467,14 +7126,14 @@ var ACCOUNT_META = {
|
|
|
6467
7126
|
accentBg: "bg-primary/10",
|
|
6468
7127
|
accentText: "text-primary",
|
|
6469
7128
|
accentBorder: "border-primary/30",
|
|
6470
|
-
icon: /* @__PURE__ */
|
|
7129
|
+
icon: /* @__PURE__ */ jsx73("img", { src: "/icons/rgb/rgb-logo.svg", alt: "", className: "h-2.5 w-2.5 object-contain" })
|
|
6471
7130
|
},
|
|
6472
7131
|
SPARK: {
|
|
6473
7132
|
shortLabel: "Spark",
|
|
6474
7133
|
accentBg: "bg-info/10",
|
|
6475
7134
|
accentText: "text-info",
|
|
6476
7135
|
accentBorder: "border-info/30",
|
|
6477
|
-
icon: /* @__PURE__ */
|
|
7136
|
+
icon: /* @__PURE__ */ jsx73(
|
|
6478
7137
|
"img",
|
|
6479
7138
|
{
|
|
6480
7139
|
src: "/icons/spark/Asterisk/Spark Asterisk White.svg",
|
|
@@ -6488,7 +7147,7 @@ var ACCOUNT_META = {
|
|
|
6488
7147
|
accentBg: "bg-network-arkade/10",
|
|
6489
7148
|
accentText: "text-network-arkade",
|
|
6490
7149
|
accentBorder: "border-network-arkade/30",
|
|
6491
|
-
icon: /* @__PURE__ */
|
|
7150
|
+
icon: /* @__PURE__ */ jsx73("img", { src: "/icons/arkade/arkade-icon.svg", alt: "", className: "h-2.5 w-2.5 rounded-[1px] object-contain" })
|
|
6492
7151
|
}
|
|
6493
7152
|
};
|
|
6494
7153
|
var METHOD_META = {
|
|
@@ -6505,7 +7164,7 @@ function InvoiceStatusBanner({
|
|
|
6505
7164
|
isInvoiceFailedOrExpired,
|
|
6506
7165
|
invoiceStatus
|
|
6507
7166
|
}) {
|
|
6508
|
-
return /* @__PURE__ */
|
|
7167
|
+
return /* @__PURE__ */ jsxs59(
|
|
6509
7168
|
"div",
|
|
6510
7169
|
{
|
|
6511
7170
|
className: cn(
|
|
@@ -6513,17 +7172,17 @@ function InvoiceStatusBanner({
|
|
|
6513
7172
|
isInvoicePaid ? "border-primary/30 bg-primary/10 text-primary" : isInvoiceFailedOrExpired ? "border-danger/20 bg-danger/10 text-danger" : "border-warning/20 bg-warning/10 text-warning"
|
|
6514
7173
|
),
|
|
6515
7174
|
children: [
|
|
6516
|
-
isInvoicePending && /* @__PURE__ */
|
|
6517
|
-
/* @__PURE__ */
|
|
6518
|
-
/* @__PURE__ */
|
|
7175
|
+
isInvoicePending && /* @__PURE__ */ jsxs59(Fragment15, { children: [
|
|
7176
|
+
/* @__PURE__ */ jsx73("span", { className: "material-symbols-outlined animate-spin text-icon-sm", children: "progress_activity" }),
|
|
7177
|
+
/* @__PURE__ */ jsx73("span", { children: "Waiting for payment..." })
|
|
6519
7178
|
] }),
|
|
6520
|
-
isInvoicePaid && /* @__PURE__ */
|
|
6521
|
-
/* @__PURE__ */
|
|
6522
|
-
/* @__PURE__ */
|
|
7179
|
+
isInvoicePaid && /* @__PURE__ */ jsxs59(Fragment15, { children: [
|
|
7180
|
+
/* @__PURE__ */ jsx73("span", { className: "material-symbols-outlined text-icon-sm", children: "check_circle" }),
|
|
7181
|
+
/* @__PURE__ */ jsx73("span", { children: "Payment received!" })
|
|
6523
7182
|
] }),
|
|
6524
|
-
isInvoiceFailedOrExpired && /* @__PURE__ */
|
|
6525
|
-
/* @__PURE__ */
|
|
6526
|
-
/* @__PURE__ */
|
|
7183
|
+
isInvoiceFailedOrExpired && /* @__PURE__ */ jsxs59(Fragment15, { children: [
|
|
7184
|
+
/* @__PURE__ */ jsx73("span", { className: "material-symbols-outlined text-icon-sm", children: "cancel" }),
|
|
7185
|
+
/* @__PURE__ */ jsxs59("span", { children: [
|
|
6527
7186
|
"Invoice ",
|
|
6528
7187
|
invoiceStatus?.toLowerCase() === "expired" ? "expired" : "failed"
|
|
6529
7188
|
] })
|
|
@@ -6533,20 +7192,20 @@ function InvoiceStatusBanner({
|
|
|
6533
7192
|
);
|
|
6534
7193
|
}
|
|
6535
7194
|
function PaidOverlay() {
|
|
6536
|
-
return /* @__PURE__ */
|
|
6537
|
-
/* @__PURE__ */
|
|
6538
|
-
/* @__PURE__ */
|
|
7195
|
+
return /* @__PURE__ */ jsx73("div", { className: "absolute inset-0 flex items-center justify-center rounded-2xl bg-background/80", children: /* @__PURE__ */ jsxs59("div", { className: "flex flex-col items-center gap-2", children: [
|
|
7196
|
+
/* @__PURE__ */ jsx73("div", { className: "flex size-14 items-center justify-center rounded-full bg-primary", children: /* @__PURE__ */ jsx73("span", { className: "material-symbols-outlined text-icon-4xl text-background", children: "check" }) }),
|
|
7197
|
+
/* @__PURE__ */ jsx73("span", { className: "text-sm font-bold text-primary", children: "Received!" })
|
|
6539
7198
|
] }) });
|
|
6540
7199
|
}
|
|
6541
7200
|
function CopyIcon({ copied }) {
|
|
6542
|
-
return /* @__PURE__ */
|
|
7201
|
+
return /* @__PURE__ */ jsx73(
|
|
6543
7202
|
"div",
|
|
6544
7203
|
{
|
|
6545
7204
|
className: cn(
|
|
6546
7205
|
"flex-shrink-0 rounded-lg p-2 transition-all",
|
|
6547
7206
|
copied ? "bg-primary/15 text-primary" : "bg-white/5 text-white/40 group-hover:bg-primary/10 group-hover:text-primary"
|
|
6548
7207
|
),
|
|
6549
|
-
children: copied ? /* @__PURE__ */
|
|
7208
|
+
children: copied ? /* @__PURE__ */ jsx73(Icon, { name: "check", size: "sm" }) : /* @__PURE__ */ jsx73(Icon, { name: "content_copy", size: "sm" })
|
|
6550
7209
|
}
|
|
6551
7210
|
);
|
|
6552
7211
|
}
|
|
@@ -6556,7 +7215,7 @@ function AccountChoiceChip({
|
|
|
6556
7215
|
onClick
|
|
6557
7216
|
}) {
|
|
6558
7217
|
const meta = ACCOUNT_META[account];
|
|
6559
|
-
return /* @__PURE__ */
|
|
7218
|
+
return /* @__PURE__ */ jsxs59(
|
|
6560
7219
|
"button",
|
|
6561
7220
|
{
|
|
6562
7221
|
type: "button",
|
|
@@ -6568,7 +7227,7 @@ function AccountChoiceChip({
|
|
|
6568
7227
|
),
|
|
6569
7228
|
children: [
|
|
6570
7229
|
meta.icon,
|
|
6571
|
-
/* @__PURE__ */
|
|
7230
|
+
/* @__PURE__ */ jsx73("span", { children: meta.shortLabel })
|
|
6572
7231
|
]
|
|
6573
7232
|
}
|
|
6574
7233
|
);
|
|
@@ -6617,8 +7276,8 @@ function NetworkInfoDisclosure({
|
|
|
6617
7276
|
}) {
|
|
6618
7277
|
const [open, setOpen] = useState14(false);
|
|
6619
7278
|
if (networks.length === 0) return null;
|
|
6620
|
-
return /* @__PURE__ */
|
|
6621
|
-
/* @__PURE__ */
|
|
7279
|
+
return /* @__PURE__ */ jsxs59("div", { className: cn("overflow-hidden rounded-xl border border-white/8 bg-white/3 transition-all", className), children: [
|
|
7280
|
+
/* @__PURE__ */ jsxs59(
|
|
6622
7281
|
"button",
|
|
6623
7282
|
{
|
|
6624
7283
|
type: "button",
|
|
@@ -6626,24 +7285,24 @@ function NetworkInfoDisclosure({
|
|
|
6626
7285
|
"aria-expanded": open,
|
|
6627
7286
|
className: "flex w-full items-center gap-2 px-2.5 py-1.5 text-left transition-colors hover:bg-white/4",
|
|
6628
7287
|
children: [
|
|
6629
|
-
/* @__PURE__ */
|
|
6630
|
-
/* @__PURE__ */
|
|
6631
|
-
/* @__PURE__ */
|
|
7288
|
+
/* @__PURE__ */ jsx73(Icon, { name: "info", size: "xs", className: "text-white/40" }),
|
|
7289
|
+
/* @__PURE__ */ jsx73("span", { className: "flex-1 text-xxs font-bold uppercase tracking-widest text-white/50", children: "What are these networks?" }),
|
|
7290
|
+
/* @__PURE__ */ jsx73(Icon, { name: open ? "expand_less" : "expand_more", size: "xs", className: "text-white/40" })
|
|
6632
7291
|
]
|
|
6633
7292
|
}
|
|
6634
7293
|
),
|
|
6635
|
-
open && /* @__PURE__ */
|
|
7294
|
+
open && /* @__PURE__ */ jsx73("div", { className: "space-y-2 px-2.5 pb-2.5 pt-0.5 animate-in fade-in slide-in-from-top-1 duration-200", children: networks.map((network) => {
|
|
6636
7295
|
const info = NETWORK_INFO[network];
|
|
6637
7296
|
const cfg = NETWORK_CONFIG[network];
|
|
6638
|
-
return /* @__PURE__ */
|
|
6639
|
-
/* @__PURE__ */
|
|
6640
|
-
/* @__PURE__ */
|
|
6641
|
-
/* @__PURE__ */
|
|
7297
|
+
return /* @__PURE__ */ jsxs59("div", { className: "space-y-1", children: [
|
|
7298
|
+
/* @__PURE__ */ jsxs59("div", { className: "flex items-center gap-1.5", children: [
|
|
7299
|
+
/* @__PURE__ */ jsx73("div", { className: cn("flex size-4 flex-shrink-0 items-center justify-center rounded-md", cfg.bg), children: cfg.icon }),
|
|
7300
|
+
/* @__PURE__ */ jsx73("span", { className: cn("text-xxs font-bold uppercase tracking-widest", cfg.text), children: info.title })
|
|
6642
7301
|
] }),
|
|
6643
|
-
/* @__PURE__ */
|
|
6644
|
-
/* @__PURE__ */
|
|
6645
|
-
/* @__PURE__ */
|
|
6646
|
-
/* @__PURE__ */
|
|
7302
|
+
/* @__PURE__ */ jsx73("p", { className: "pl-5 text-tiny leading-snug text-muted-foreground", children: info.detail }),
|
|
7303
|
+
/* @__PURE__ */ jsx73("ul", { className: "space-y-0.5 pl-5", children: info.bullets.map((bullet) => /* @__PURE__ */ jsxs59("li", { className: "flex items-start gap-1.5 text-xxs leading-snug text-white/50", children: [
|
|
7304
|
+
/* @__PURE__ */ jsx73("span", { className: "mt-[1px] text-white/30", children: "-" }),
|
|
7305
|
+
/* @__PURE__ */ jsx73("span", { children: bullet })
|
|
6647
7306
|
] }, bullet)) })
|
|
6648
7307
|
] }, network);
|
|
6649
7308
|
}) })
|
|
@@ -6657,7 +7316,7 @@ function MethodChoiceChip({
|
|
|
6657
7316
|
onClick
|
|
6658
7317
|
}) {
|
|
6659
7318
|
const meta = METHOD_META[method];
|
|
6660
|
-
return /* @__PURE__ */
|
|
7319
|
+
return /* @__PURE__ */ jsxs59(
|
|
6661
7320
|
"button",
|
|
6662
7321
|
{
|
|
6663
7322
|
type: "button",
|
|
@@ -6670,14 +7329,14 @@ function MethodChoiceChip({
|
|
|
6670
7329
|
),
|
|
6671
7330
|
children: [
|
|
6672
7331
|
meta.label,
|
|
6673
|
-
!enabled && disabledReason && /* @__PURE__ */
|
|
7332
|
+
!enabled && disabledReason && /* @__PURE__ */ jsx73("span", { className: "text-xxs font-normal opacity-60", children: disabledReason })
|
|
6674
7333
|
]
|
|
6675
7334
|
}
|
|
6676
7335
|
);
|
|
6677
7336
|
}
|
|
6678
7337
|
|
|
6679
7338
|
// src/web/components/deposit-success-screen.tsx
|
|
6680
|
-
import { jsx as
|
|
7339
|
+
import { jsx as jsx74, jsxs as jsxs60 } from "react/jsx-runtime";
|
|
6681
7340
|
function DepositSuccessScreen({
|
|
6682
7341
|
handleDone,
|
|
6683
7342
|
displayTicker,
|
|
@@ -6690,20 +7349,20 @@ function DepositSuccessScreen({
|
|
|
6690
7349
|
const isInstant = network === "lightning" || network === "spark";
|
|
6691
7350
|
const title = isInstant ? "Payment Received!" : "Deposit Detected!";
|
|
6692
7351
|
const subtitle = isInstant ? `Your ${displayTicker} has arrived via ${networkLabel}.` : `Incoming deposit detected via ${networkLabel}. Funds will be available after confirmation.`;
|
|
6693
|
-
return /* @__PURE__ */
|
|
6694
|
-
/* @__PURE__ */
|
|
6695
|
-
/* @__PURE__ */
|
|
6696
|
-
/* @__PURE__ */
|
|
7352
|
+
return /* @__PURE__ */ jsx74("div", { className: "flex h-screen flex-col overflow-hidden bg-background font-display text-foreground", children: /* @__PURE__ */ jsxs60("div", { className: "flex flex-1 flex-col items-center justify-center p-6 text-center", children: [
|
|
7353
|
+
/* @__PURE__ */ jsxs60("div", { className: "relative mb-8", children: [
|
|
7354
|
+
/* @__PURE__ */ jsx74("div", { className: "absolute inset-0 scale-150 animate-pulse rounded-full bg-primary/20 blur-2xl" }),
|
|
7355
|
+
/* @__PURE__ */ jsx74("div", { className: "relative flex size-28 items-center justify-center rounded-full border-2 border-primary/40 bg-primary/10 shadow-sm", children: /* @__PURE__ */ jsx74("span", { className: "material-symbols-outlined text-display text-primary animate-in zoom-in-50 duration-500", children: "check_circle" }) })
|
|
6697
7356
|
] }),
|
|
6698
|
-
/* @__PURE__ */
|
|
6699
|
-
/* @__PURE__ */
|
|
6700
|
-
/* @__PURE__ */
|
|
6701
|
-
/* @__PURE__ */
|
|
6702
|
-
/* @__PURE__ */
|
|
6703
|
-
/* @__PURE__ */
|
|
6704
|
-
/* @__PURE__ */
|
|
7357
|
+
/* @__PURE__ */ jsx74("h1", { className: "mb-2 text-2xl font-bold text-white", children: title }),
|
|
7358
|
+
/* @__PURE__ */ jsx74("p", { className: "mb-8 max-w-[260px] text-sm leading-relaxed text-muted-foreground", children: subtitle }),
|
|
7359
|
+
/* @__PURE__ */ jsxs60("div", { className: "mb-10 flex items-center gap-3 rounded-2xl border bg-white/5 px-4 py-3", children: [
|
|
7360
|
+
/* @__PURE__ */ jsx74(AssetIcon, { ticker: displayTicker, size: 36 }),
|
|
7361
|
+
/* @__PURE__ */ jsxs60("div", { className: "text-left", children: [
|
|
7362
|
+
/* @__PURE__ */ jsx74("p", { className: "text-sm font-bold text-white", children: displayTicker }),
|
|
7363
|
+
/* @__PURE__ */ jsx74("p", { className: "text-xs text-white/40", children: selectedAsset?.name ?? displayTicker })
|
|
6705
7364
|
] }),
|
|
6706
|
-
/* @__PURE__ */
|
|
7365
|
+
/* @__PURE__ */ jsxs60(
|
|
6707
7366
|
"div",
|
|
6708
7367
|
{
|
|
6709
7368
|
className: cn(
|
|
@@ -6714,27 +7373,27 @@ function DepositSuccessScreen({
|
|
|
6714
7373
|
),
|
|
6715
7374
|
children: [
|
|
6716
7375
|
net.icon,
|
|
6717
|
-
/* @__PURE__ */
|
|
7376
|
+
/* @__PURE__ */ jsx74("span", { children: networkLabel })
|
|
6718
7377
|
]
|
|
6719
7378
|
}
|
|
6720
7379
|
)
|
|
6721
7380
|
] }),
|
|
6722
|
-
/* @__PURE__ */
|
|
6723
|
-
/* @__PURE__ */
|
|
7381
|
+
/* @__PURE__ */ jsxs60(Button, { variant: "cta", size: "cta", onClick: handleDone, children: [
|
|
7382
|
+
/* @__PURE__ */ jsx74("span", { className: "material-symbols-outlined text-icon-lg", children: "home" }),
|
|
6724
7383
|
"Back to Dashboard"
|
|
6725
7384
|
] })
|
|
6726
7385
|
] }) });
|
|
6727
7386
|
}
|
|
6728
7387
|
|
|
6729
7388
|
// src/web/components/deposit-network-default-modal.tsx
|
|
6730
|
-
import { jsx as
|
|
7389
|
+
import { jsx as jsx75, jsxs as jsxs61 } from "react/jsx-runtime";
|
|
6731
7390
|
var NETWORK_OPTIONS = {
|
|
6732
7391
|
RGB: {
|
|
6733
7392
|
network: "onchain",
|
|
6734
7393
|
account: "RGB",
|
|
6735
7394
|
label: "On-chain / Lightning",
|
|
6736
7395
|
description: "Classic Bitcoin address or Lightning invoice via the RLN node.",
|
|
6737
|
-
icon: /* @__PURE__ */
|
|
7396
|
+
icon: /* @__PURE__ */ jsx75("span", { className: "material-symbols-outlined text-icon-lg", children: "link" }),
|
|
6738
7397
|
accentBg: "bg-network-bitcoin/10",
|
|
6739
7398
|
accentBorder: "border-network-bitcoin/30",
|
|
6740
7399
|
accentText: "text-network-bitcoin"
|
|
@@ -6744,7 +7403,7 @@ var NETWORK_OPTIONS = {
|
|
|
6744
7403
|
account: "SPARK",
|
|
6745
7404
|
label: "Spark",
|
|
6746
7405
|
description: "Receive directly into your Spark account. Fast and free.",
|
|
6747
|
-
icon: /* @__PURE__ */
|
|
7406
|
+
icon: /* @__PURE__ */ jsx75("img", { src: "/icons/spark/Asterisk/Spark Asterisk White.svg", alt: "", className: "h-[18px]" }),
|
|
6748
7407
|
accentBg: "bg-info/10",
|
|
6749
7408
|
accentBorder: "border-info/30",
|
|
6750
7409
|
accentText: "text-info"
|
|
@@ -6754,7 +7413,7 @@ var NETWORK_OPTIONS = {
|
|
|
6754
7413
|
account: "ARKADE",
|
|
6755
7414
|
label: "Arkade",
|
|
6756
7415
|
description: "Receive directly into your Arkade account. Low fees, near-instant settlement.",
|
|
6757
|
-
icon: /* @__PURE__ */
|
|
7416
|
+
icon: /* @__PURE__ */ jsx75("img", { src: "/icons/arkade/arkade-icon.svg", alt: "", className: "h-[18px]" }),
|
|
6758
7417
|
accentBg: "bg-network-arkade/10",
|
|
6759
7418
|
accentBorder: "border-network-arkade/30",
|
|
6760
7419
|
accentText: "text-network-arkade"
|
|
@@ -6769,20 +7428,20 @@ function DepositNetworkDefaultModal({
|
|
|
6769
7428
|
}) {
|
|
6770
7429
|
if (!open) return null;
|
|
6771
7430
|
const options = availableAccounts.map((id) => NETWORK_OPTIONS[id]).filter(Boolean);
|
|
6772
|
-
return /* @__PURE__ */
|
|
6773
|
-
/* @__PURE__ */
|
|
6774
|
-
/* @__PURE__ */
|
|
6775
|
-
/* @__PURE__ */
|
|
6776
|
-
/* @__PURE__ */
|
|
7431
|
+
return /* @__PURE__ */ jsx75("div", { className: "fixed inset-0 z-50 flex items-end justify-center bg-black/60 backdrop-blur-sm", children: /* @__PURE__ */ jsxs61("div", { className: "w-full space-y-4 rounded-t-2xl border-t border-border bg-background px-4 pb-7 pt-5 animate-in slide-in-from-bottom-4 duration-200", children: [
|
|
7432
|
+
/* @__PURE__ */ jsx75("div", { className: "-mt-1 mb-1 flex justify-center", children: /* @__PURE__ */ jsx75("div", { className: "h-1 w-10 rounded-full bg-white/15" }) }),
|
|
7433
|
+
/* @__PURE__ */ jsxs61("div", { children: [
|
|
7434
|
+
/* @__PURE__ */ jsx75("p", { className: "text-sm font-bold text-white", children: "Choose your default network" }),
|
|
7435
|
+
/* @__PURE__ */ jsxs61("p", { className: "mt-0.5 text-tiny text-white/45", children: [
|
|
6777
7436
|
"Pick how you would like to receive",
|
|
6778
7437
|
" ",
|
|
6779
|
-
/* @__PURE__ */
|
|
7438
|
+
/* @__PURE__ */ jsx75("span", { className: "font-semibold text-muted-foreground", children: assetTicker }),
|
|
6780
7439
|
" by default. You can always switch in the deposit screen."
|
|
6781
7440
|
] })
|
|
6782
7441
|
] }),
|
|
6783
|
-
/* @__PURE__ */
|
|
7442
|
+
/* @__PURE__ */ jsx75("div", { className: "space-y-2", children: options.map((option) => {
|
|
6784
7443
|
const isSuggested = option.account === suggestedAccount;
|
|
6785
|
-
return /* @__PURE__ */
|
|
7444
|
+
return /* @__PURE__ */ jsxs61(
|
|
6786
7445
|
"button",
|
|
6787
7446
|
{
|
|
6788
7447
|
type: "button",
|
|
@@ -6792,7 +7451,7 @@ function DepositNetworkDefaultModal({
|
|
|
6792
7451
|
isSuggested ? cn("border-2", option.accentBorder, option.accentBg) : "border border-white/8 bg-white/4 hover:bg-white/8"
|
|
6793
7452
|
),
|
|
6794
7453
|
children: [
|
|
6795
|
-
/* @__PURE__ */
|
|
7454
|
+
/* @__PURE__ */ jsx75(
|
|
6796
7455
|
"div",
|
|
6797
7456
|
{
|
|
6798
7457
|
className: cn(
|
|
@@ -6803,10 +7462,10 @@ function DepositNetworkDefaultModal({
|
|
|
6803
7462
|
children: option.icon
|
|
6804
7463
|
}
|
|
6805
7464
|
),
|
|
6806
|
-
/* @__PURE__ */
|
|
6807
|
-
/* @__PURE__ */
|
|
6808
|
-
/* @__PURE__ */
|
|
6809
|
-
isSuggested && /* @__PURE__ */
|
|
7465
|
+
/* @__PURE__ */ jsxs61("div", { className: "min-w-0 flex-1", children: [
|
|
7466
|
+
/* @__PURE__ */ jsxs61("div", { className: "flex items-center gap-2", children: [
|
|
7467
|
+
/* @__PURE__ */ jsx75("span", { className: cn("text-xs font-bold", isSuggested ? option.accentText : "text-white"), children: option.label }),
|
|
7468
|
+
isSuggested && /* @__PURE__ */ jsx75(
|
|
6810
7469
|
"span",
|
|
6811
7470
|
{
|
|
6812
7471
|
className: cn(
|
|
@@ -6818,9 +7477,9 @@ function DepositNetworkDefaultModal({
|
|
|
6818
7477
|
}
|
|
6819
7478
|
)
|
|
6820
7479
|
] }),
|
|
6821
|
-
/* @__PURE__ */
|
|
7480
|
+
/* @__PURE__ */ jsx75("p", { className: "mt-0.5 text-xxs leading-snug text-white/45", children: option.description })
|
|
6822
7481
|
] }),
|
|
6823
|
-
/* @__PURE__ */
|
|
7482
|
+
/* @__PURE__ */ jsx75(
|
|
6824
7483
|
"span",
|
|
6825
7484
|
{
|
|
6826
7485
|
className: cn(
|
|
@@ -6839,7 +7498,7 @@ function DepositNetworkDefaultModal({
|
|
|
6839
7498
|
}
|
|
6840
7499
|
|
|
6841
7500
|
// src/web/components/btc-unified-receive.tsx
|
|
6842
|
-
import { jsx as
|
|
7501
|
+
import { jsx as jsx76, jsxs as jsxs62 } from "react/jsx-runtime";
|
|
6843
7502
|
function formatSatsForRow(value) {
|
|
6844
7503
|
if (!value || value <= 0 || !Number.isFinite(value)) return null;
|
|
6845
7504
|
return `${value.toLocaleString("en-US")} sats`;
|
|
@@ -6865,10 +7524,10 @@ function BtcUnifiedReceive({
|
|
|
6865
7524
|
}) {
|
|
6866
7525
|
const accountNetwork = btcSelectedAccount === "SPARK" ? "spark" : btcSelectedAccount === "ARKADE" ? "arkade" : "onchain";
|
|
6867
7526
|
const qrNetwork = NETWORK_CONFIG[accountNetwork];
|
|
6868
|
-
return /* @__PURE__ */
|
|
6869
|
-
/* @__PURE__ */
|
|
6870
|
-
/* @__PURE__ */
|
|
6871
|
-
/* @__PURE__ */
|
|
7527
|
+
return /* @__PURE__ */ jsxs62("div", { className: "space-y-3 animate-in fade-in zoom-in-95 duration-300", children: [
|
|
7528
|
+
/* @__PURE__ */ jsxs62("div", { className: "flex flex-col gap-1.5 rounded-xl border border-white/8 bg-white/3 p-2.5", children: [
|
|
7529
|
+
/* @__PURE__ */ jsx76("div", { className: "flex items-center justify-between px-1", children: /* @__PURE__ */ jsx76("label", { className: "text-xxs font-bold uppercase tracking-widest text-white/40", children: "Amount (optional)" }) }),
|
|
7530
|
+
/* @__PURE__ */ jsx76(
|
|
6872
7531
|
"input",
|
|
6873
7532
|
{
|
|
6874
7533
|
type: "text",
|
|
@@ -6879,13 +7538,13 @@ function BtcUnifiedReceive({
|
|
|
6879
7538
|
inputMode: "decimal"
|
|
6880
7539
|
}
|
|
6881
7540
|
),
|
|
6882
|
-
amount && loading && /* @__PURE__ */
|
|
6883
|
-
/* @__PURE__ */
|
|
7541
|
+
amount && loading && /* @__PURE__ */ jsxs62("p", { className: "flex items-center gap-1 text-xxs text-warning/70", children: [
|
|
7542
|
+
/* @__PURE__ */ jsx76("span", { className: "material-symbols-outlined animate-spin text-icon-xxs", children: "progress_activity" }),
|
|
6884
7543
|
"Updating invoice..."
|
|
6885
7544
|
] })
|
|
6886
7545
|
] }),
|
|
6887
|
-
/* @__PURE__ */
|
|
6888
|
-
/* @__PURE__ */
|
|
7546
|
+
/* @__PURE__ */ jsxs62("div", { className: "flex flex-col items-center gap-3", children: [
|
|
7547
|
+
/* @__PURE__ */ jsxs62(
|
|
6889
7548
|
"div",
|
|
6890
7549
|
{
|
|
6891
7550
|
className: cn(
|
|
@@ -6894,14 +7553,14 @@ function BtcUnifiedReceive({
|
|
|
6894
7553
|
),
|
|
6895
7554
|
style: qrNetwork.qrGlow,
|
|
6896
7555
|
children: [
|
|
6897
|
-
/* @__PURE__ */
|
|
6898
|
-
isInvoicePaid && /* @__PURE__ */
|
|
7556
|
+
/* @__PURE__ */ jsx76(QrCode, { value: accountReceiveResult.qrValue, size: 200 }),
|
|
7557
|
+
isInvoicePaid && /* @__PURE__ */ jsx76(PaidOverlay, {})
|
|
6899
7558
|
]
|
|
6900
7559
|
}
|
|
6901
7560
|
),
|
|
6902
7561
|
(() => {
|
|
6903
7562
|
const isQrCopied = copied === accountReceiveResult.qrValue;
|
|
6904
|
-
return /* @__PURE__ */
|
|
7563
|
+
return /* @__PURE__ */ jsxs62(
|
|
6905
7564
|
"button",
|
|
6906
7565
|
{
|
|
6907
7566
|
type: "button",
|
|
@@ -6914,14 +7573,14 @@ function BtcUnifiedReceive({
|
|
|
6914
7573
|
void copyToClipboard(accountReceiveResult.qrValue);
|
|
6915
7574
|
},
|
|
6916
7575
|
children: [
|
|
6917
|
-
/* @__PURE__ */
|
|
7576
|
+
/* @__PURE__ */ jsx76(Icon, { name: isQrCopied ? "check" : "content_copy", size: "xs" }),
|
|
6918
7577
|
isQrCopied ? "Copied" : `Copy ${accountReceiveResult.qrLabel}`
|
|
6919
7578
|
]
|
|
6920
7579
|
}
|
|
6921
7580
|
);
|
|
6922
7581
|
})()
|
|
6923
7582
|
] }),
|
|
6924
|
-
invoiceStatus && /* @__PURE__ */
|
|
7583
|
+
invoiceStatus && /* @__PURE__ */ jsx76(
|
|
6925
7584
|
InvoiceStatusBanner,
|
|
6926
7585
|
{
|
|
6927
7586
|
isInvoicePending,
|
|
@@ -6930,11 +7589,11 @@ function BtcUnifiedReceive({
|
|
|
6930
7589
|
invoiceStatus
|
|
6931
7590
|
}
|
|
6932
7591
|
),
|
|
6933
|
-
/* @__PURE__ */
|
|
6934
|
-
/* @__PURE__ */
|
|
7592
|
+
/* @__PURE__ */ jsxs62("div", { className: "space-y-1.5", children: [
|
|
7593
|
+
/* @__PURE__ */ jsx76("p", { className: "text-xxs font-bold uppercase tracking-widest text-white/30", children: "Available Addresses" }),
|
|
6935
7594
|
accountReceiveResult.addresses.map((address) => {
|
|
6936
7595
|
const network = NETWORK_CONFIG[address.network];
|
|
6937
|
-
return /* @__PURE__ */
|
|
7596
|
+
return /* @__PURE__ */ jsxs62(
|
|
6938
7597
|
"div",
|
|
6939
7598
|
{
|
|
6940
7599
|
className: cn(
|
|
@@ -6945,25 +7604,25 @@ function BtcUnifiedReceive({
|
|
|
6945
7604
|
style: { borderLeftWidth: 3, borderLeftColor: network.color },
|
|
6946
7605
|
onClick: () => void copyToClipboard(address.value),
|
|
6947
7606
|
children: [
|
|
6948
|
-
/* @__PURE__ */
|
|
6949
|
-
/* @__PURE__ */
|
|
6950
|
-
/* @__PURE__ */
|
|
6951
|
-
/* @__PURE__ */
|
|
7607
|
+
/* @__PURE__ */ jsx76("div", { className: cn("flex size-5 flex-shrink-0 items-center justify-center rounded-md", network.bg), children: network.icon }),
|
|
7608
|
+
/* @__PURE__ */ jsxs62("div", { className: "min-w-0 flex-1", children: [
|
|
7609
|
+
/* @__PURE__ */ jsxs62("div", { className: "flex items-center gap-1.5", children: [
|
|
7610
|
+
/* @__PURE__ */ jsx76("p", { className: cn("text-xxs font-bold uppercase tracking-widest", network.text), children: address.label }),
|
|
6952
7611
|
(() => {
|
|
6953
7612
|
const amountLabel = formatSatsForRow(address.amountSats);
|
|
6954
|
-
return amountLabel ? /* @__PURE__ */
|
|
7613
|
+
return amountLabel ? /* @__PURE__ */ jsx76("span", { className: "rounded-full bg-white/10 px-1.5 py-0.5 text-tiny font-bold tabular-nums text-white/70", children: amountLabel }) : null;
|
|
6955
7614
|
})()
|
|
6956
7615
|
] }),
|
|
6957
|
-
/* @__PURE__ */
|
|
7616
|
+
/* @__PURE__ */ jsx76("p", { className: "mt-0.5 truncate font-mono text-tiny text-muted-foreground", children: address.value.length > 50 ? `${address.value.slice(0, 18)}...${address.value.slice(-14)}` : address.value })
|
|
6958
7617
|
] }),
|
|
6959
|
-
/* @__PURE__ */
|
|
7618
|
+
/* @__PURE__ */ jsx76(CopyIcon, { copied: copied === address.value })
|
|
6960
7619
|
]
|
|
6961
7620
|
},
|
|
6962
7621
|
address.network
|
|
6963
7622
|
);
|
|
6964
7623
|
})
|
|
6965
7624
|
] }),
|
|
6966
|
-
/* @__PURE__ */
|
|
7625
|
+
/* @__PURE__ */ jsx76(
|
|
6967
7626
|
NetworkInfoDisclosure,
|
|
6968
7627
|
{
|
|
6969
7628
|
networks: Array.from(
|
|
@@ -6971,8 +7630,8 @@ function BtcUnifiedReceive({
|
|
|
6971
7630
|
)
|
|
6972
7631
|
}
|
|
6973
7632
|
),
|
|
6974
|
-
/* @__PURE__ */
|
|
6975
|
-
showRegenerate && /* @__PURE__ */
|
|
7633
|
+
/* @__PURE__ */ jsxs62("div", { className: "flex gap-2.5 pt-1", children: [
|
|
7634
|
+
showRegenerate && /* @__PURE__ */ jsxs62(
|
|
6976
7635
|
"button",
|
|
6977
7636
|
{
|
|
6978
7637
|
type: "button",
|
|
@@ -6984,13 +7643,13 @@ function BtcUnifiedReceive({
|
|
|
6984
7643
|
},
|
|
6985
7644
|
className: "flex flex-1 items-center justify-center gap-1.5 rounded-xl border py-3 text-xs font-bold text-muted-foreground transition-all hover:border-border hover:bg-accent hover:text-white active:scale-[0.98]",
|
|
6986
7645
|
children: [
|
|
6987
|
-
/* @__PURE__ */
|
|
7646
|
+
/* @__PURE__ */ jsx76("span", { className: "material-symbols-outlined text-icon-sm", children: "refresh" }),
|
|
6988
7647
|
"New Address"
|
|
6989
7648
|
]
|
|
6990
7649
|
}
|
|
6991
7650
|
),
|
|
6992
|
-
/* @__PURE__ */
|
|
6993
|
-
/* @__PURE__ */
|
|
7651
|
+
/* @__PURE__ */ jsxs62(Button, { variant: "cta", onClick: handleDone, className: showRegenerate ? void 0 : "flex-1", children: [
|
|
7652
|
+
/* @__PURE__ */ jsx76("span", { className: "material-symbols-outlined text-icon-sm", children: "check" }),
|
|
6994
7653
|
"Done"
|
|
6995
7654
|
] })
|
|
6996
7655
|
] })
|
|
@@ -6998,7 +7657,7 @@ function BtcUnifiedReceive({
|
|
|
6998
7657
|
}
|
|
6999
7658
|
|
|
7000
7659
|
// src/web/components/deposit-generated-view.tsx
|
|
7001
|
-
import { jsx as
|
|
7660
|
+
import { jsx as jsx77, jsxs as jsxs63 } from "react/jsx-runtime";
|
|
7002
7661
|
function parseAssetAmount(amountString, asset) {
|
|
7003
7662
|
const value = Number(amountString);
|
|
7004
7663
|
if (!Number.isFinite(value)) return 0;
|
|
@@ -7039,10 +7698,10 @@ function DepositGeneratedView({
|
|
|
7039
7698
|
showRegenerate = true,
|
|
7040
7699
|
onRegenerate
|
|
7041
7700
|
}) {
|
|
7042
|
-
return /* @__PURE__ */
|
|
7043
|
-
(network === "lightning" || network === "arkade" && arkSubMode === "ark") && isBtc && /* @__PURE__ */
|
|
7044
|
-
/* @__PURE__ */
|
|
7045
|
-
/* @__PURE__ */
|
|
7701
|
+
return /* @__PURE__ */ jsxs63("div", { className: "space-y-3 animate-in fade-in zoom-in-95 duration-300", children: [
|
|
7702
|
+
(network === "lightning" || network === "arkade" && arkSubMode === "ark") && isBtc && /* @__PURE__ */ jsxs63("div", { className: "flex flex-col gap-1.5 rounded-xl border border-white/8 bg-white/3 p-2.5", children: [
|
|
7703
|
+
/* @__PURE__ */ jsx77("div", { className: "flex items-center justify-between px-1", children: /* @__PURE__ */ jsx77("label", { className: "text-xxs font-bold uppercase tracking-widest text-white/40", children: "Specify amount (optional)" }) }),
|
|
7704
|
+
/* @__PURE__ */ jsx77(
|
|
7046
7705
|
"input",
|
|
7047
7706
|
{
|
|
7048
7707
|
type: "text",
|
|
@@ -7053,16 +7712,16 @@ function DepositGeneratedView({
|
|
|
7053
7712
|
inputMode: "decimal"
|
|
7054
7713
|
}
|
|
7055
7714
|
),
|
|
7056
|
-
amount && /* @__PURE__ */
|
|
7057
|
-
/* @__PURE__ */
|
|
7715
|
+
amount && /* @__PURE__ */ jsx77("p", { className: "text-xxs text-warning/70", children: loading ? /* @__PURE__ */ jsxs63("span", { className: "flex items-center gap-1", children: [
|
|
7716
|
+
/* @__PURE__ */ jsx77("span", { className: "material-symbols-outlined animate-spin text-icon-xxs", children: "progress_activity" }),
|
|
7058
7717
|
"Updating ",
|
|
7059
7718
|
network === "arkade" ? "URI" : "invoice",
|
|
7060
7719
|
"..."
|
|
7061
7720
|
] }) : network === "arkade" ? `Unified URI for ${amount} ${getUnitLabel()}` : `Invoice for ${amount} ${getUnitLabel()}` })
|
|
7062
7721
|
] }),
|
|
7063
|
-
network === "lightning" && !isBtc && /* @__PURE__ */
|
|
7064
|
-
/* @__PURE__ */
|
|
7065
|
-
/* @__PURE__ */
|
|
7722
|
+
network === "lightning" && !isBtc && /* @__PURE__ */ jsxs63("div", { className: "flex flex-col gap-1.5 rounded-xl border border-white/8 bg-white/3 p-2.5", children: [
|
|
7723
|
+
/* @__PURE__ */ jsx77("div", { className: "flex items-center justify-between px-1", children: /* @__PURE__ */ jsx77("label", { className: "text-xxs font-bold uppercase tracking-widest text-white/40", children: "Specify amount (optional)" }) }),
|
|
7724
|
+
/* @__PURE__ */ jsx77(
|
|
7066
7725
|
"input",
|
|
7067
7726
|
{
|
|
7068
7727
|
type: "text",
|
|
@@ -7073,19 +7732,19 @@ function DepositGeneratedView({
|
|
|
7073
7732
|
inputMode: "decimal"
|
|
7074
7733
|
}
|
|
7075
7734
|
),
|
|
7076
|
-
amount && /* @__PURE__ */
|
|
7077
|
-
/* @__PURE__ */
|
|
7735
|
+
amount && /* @__PURE__ */ jsx77("p", { className: "text-xxs text-warning/70", children: loading ? /* @__PURE__ */ jsxs63("span", { className: "flex items-center gap-1", children: [
|
|
7736
|
+
/* @__PURE__ */ jsx77("span", { className: "material-symbols-outlined animate-spin text-icon-xxs", children: "progress_activity" }),
|
|
7078
7737
|
"Updating invoice..."
|
|
7079
7738
|
] }) : `Invoice for ${amount} ${getUnitLabel()}` }),
|
|
7080
|
-
amount && maxDepositAmount > 0 && parseAssetAmount(amount, selectedAsset) > maxDepositAmount && /* @__PURE__ */
|
|
7739
|
+
amount && maxDepositAmount > 0 && parseAssetAmount(amount, selectedAsset) > maxDepositAmount && /* @__PURE__ */ jsxs63("p", { className: "rounded-lg border border-danger/20 bg-danger/10 px-2.5 py-1.5 text-xxs text-danger", children: [
|
|
7081
7740
|
"Exceeds max: ",
|
|
7082
7741
|
formatAssetAmount(maxDepositAmount, selectedAsset),
|
|
7083
7742
|
" ",
|
|
7084
7743
|
getUnitLabel()
|
|
7085
7744
|
] })
|
|
7086
7745
|
] }),
|
|
7087
|
-
/* @__PURE__ */
|
|
7088
|
-
/* @__PURE__ */
|
|
7746
|
+
/* @__PURE__ */ jsxs63("div", { className: "flex flex-col items-center gap-3", children: [
|
|
7747
|
+
/* @__PURE__ */ jsxs63(
|
|
7089
7748
|
"div",
|
|
7090
7749
|
{
|
|
7091
7750
|
className: cn(
|
|
@@ -7094,7 +7753,7 @@ function DepositGeneratedView({
|
|
|
7094
7753
|
),
|
|
7095
7754
|
style: net.qrGlow,
|
|
7096
7755
|
children: [
|
|
7097
|
-
showQrNetworkBadge && network !== "spark" && network !== "arkade" && /* @__PURE__ */
|
|
7756
|
+
showQrNetworkBadge && network !== "spark" && network !== "arkade" && /* @__PURE__ */ jsxs63(
|
|
7098
7757
|
"div",
|
|
7099
7758
|
{
|
|
7100
7759
|
className: cn(
|
|
@@ -7104,21 +7763,21 @@ function DepositGeneratedView({
|
|
|
7104
7763
|
),
|
|
7105
7764
|
children: [
|
|
7106
7765
|
net.icon,
|
|
7107
|
-
/* @__PURE__ */
|
|
7766
|
+
/* @__PURE__ */ jsx77("span", { children: net.label })
|
|
7108
7767
|
]
|
|
7109
7768
|
}
|
|
7110
7769
|
),
|
|
7111
|
-
/* @__PURE__ */
|
|
7112
|
-
isInvoicePaid && /* @__PURE__ */
|
|
7770
|
+
/* @__PURE__ */ jsx77(QrCode, { value: address, size: 188 }),
|
|
7771
|
+
isInvoicePaid && /* @__PURE__ */ jsx77(PaidOverlay, {}),
|
|
7113
7772
|
loading && !isInvoicePaid && // Loading scrim — sits over the QR while a fresh address/invoice
|
|
7114
7773
|
// is being fetched (e.g. after the New Address button).
|
|
7115
|
-
/* @__PURE__ */
|
|
7774
|
+
/* @__PURE__ */ jsx77("div", { className: "absolute inset-0 flex items-center justify-center rounded-2xl bg-white/80 backdrop-blur-sm", children: /* @__PURE__ */ jsx77("span", { className: "material-symbols-outlined animate-spin text-icon-3xl text-network-bitcoin", children: "progress_activity" }) })
|
|
7116
7775
|
]
|
|
7117
7776
|
}
|
|
7118
7777
|
),
|
|
7119
7778
|
(() => {
|
|
7120
7779
|
const isAddressCopied = copied === address;
|
|
7121
|
-
return /* @__PURE__ */
|
|
7780
|
+
return /* @__PURE__ */ jsxs63(
|
|
7122
7781
|
"button",
|
|
7123
7782
|
{
|
|
7124
7783
|
type: "button",
|
|
@@ -7131,14 +7790,14 @@ function DepositGeneratedView({
|
|
|
7131
7790
|
void copyToClipboard(address);
|
|
7132
7791
|
},
|
|
7133
7792
|
children: [
|
|
7134
|
-
/* @__PURE__ */
|
|
7793
|
+
/* @__PURE__ */ jsx77(Icon, { name: isAddressCopied ? "check" : "content_copy", size: "xs" }),
|
|
7135
7794
|
isAddressCopied ? "Copied" : network === "lightning" ? "Copy Invoice" : "Copy Address"
|
|
7136
7795
|
]
|
|
7137
7796
|
}
|
|
7138
7797
|
);
|
|
7139
7798
|
})()
|
|
7140
7799
|
] }),
|
|
7141
|
-
network === "lightning" && invoiceStatus && /* @__PURE__ */
|
|
7800
|
+
network === "lightning" && invoiceStatus && /* @__PURE__ */ jsx77(
|
|
7142
7801
|
InvoiceStatusBanner,
|
|
7143
7802
|
{
|
|
7144
7803
|
isInvoicePending,
|
|
@@ -7147,7 +7806,7 @@ function DepositGeneratedView({
|
|
|
7147
7806
|
invoiceStatus
|
|
7148
7807
|
}
|
|
7149
7808
|
),
|
|
7150
|
-
/* @__PURE__ */
|
|
7809
|
+
/* @__PURE__ */ jsxs63(
|
|
7151
7810
|
"div",
|
|
7152
7811
|
{
|
|
7153
7812
|
"data-testid": "deposit-generated-address",
|
|
@@ -7160,16 +7819,16 @@ function DepositGeneratedView({
|
|
|
7160
7819
|
style: { borderLeftWidth: 3, borderLeftColor: net.color },
|
|
7161
7820
|
onClick: () => void copyToClipboard(address),
|
|
7162
7821
|
children: [
|
|
7163
|
-
/* @__PURE__ */
|
|
7164
|
-
/* @__PURE__ */
|
|
7165
|
-
/* @__PURE__ */
|
|
7166
|
-
/* @__PURE__ */
|
|
7822
|
+
/* @__PURE__ */ jsx77("div", { className: cn("flex size-5 flex-shrink-0 items-center justify-center rounded-md", net.bg), children: net.icon }),
|
|
7823
|
+
/* @__PURE__ */ jsxs63("div", { className: "min-w-0 flex-1", children: [
|
|
7824
|
+
/* @__PURE__ */ jsx77("p", { className: cn("text-xxs font-bold uppercase tracking-widest", net.text), children: /* @__PURE__ */ jsx77("span", { "data-testid": "deposit-address-label", children: addressLabel }) }),
|
|
7825
|
+
/* @__PURE__ */ jsx77("p", { className: "mt-0.5 truncate font-mono text-tiny text-muted-foreground", children: address.length > 50 ? `${address.slice(0, 18)}...${address.slice(-14)}` : address })
|
|
7167
7826
|
] }),
|
|
7168
|
-
/* @__PURE__ */
|
|
7827
|
+
/* @__PURE__ */ jsx77(CopyIcon, { copied: copied === address })
|
|
7169
7828
|
]
|
|
7170
7829
|
}
|
|
7171
7830
|
),
|
|
7172
|
-
recipientId && /* @__PURE__ */
|
|
7831
|
+
recipientId && /* @__PURE__ */ jsxs63(
|
|
7173
7832
|
"div",
|
|
7174
7833
|
{
|
|
7175
7834
|
className: cn(
|
|
@@ -7179,16 +7838,16 @@ function DepositGeneratedView({
|
|
|
7179
7838
|
style: { borderLeftWidth: 3, borderLeftColor: "var(--primary)" },
|
|
7180
7839
|
onClick: () => void copyToClipboard(recipientId),
|
|
7181
7840
|
children: [
|
|
7182
|
-
/* @__PURE__ */
|
|
7183
|
-
/* @__PURE__ */
|
|
7184
|
-
/* @__PURE__ */
|
|
7185
|
-
/* @__PURE__ */
|
|
7841
|
+
/* @__PURE__ */ jsx77("div", { className: "flex size-5 flex-shrink-0 items-center justify-center rounded-md bg-primary/15", children: /* @__PURE__ */ jsx77(Icon, { name: "person", size: "xs", className: "text-primary" }) }),
|
|
7842
|
+
/* @__PURE__ */ jsxs63("div", { className: "min-w-0 flex-1", children: [
|
|
7843
|
+
/* @__PURE__ */ jsx77("p", { className: "text-xxs font-bold uppercase tracking-widest text-primary", children: "Recipient ID" }),
|
|
7844
|
+
/* @__PURE__ */ jsx77("p", { className: "mt-0.5 truncate font-mono text-tiny text-muted-foreground", children: recipientId.length > 50 ? `${recipientId.slice(0, 18)}...${recipientId.slice(-14)}` : recipientId })
|
|
7186
7845
|
] }),
|
|
7187
|
-
/* @__PURE__ */
|
|
7846
|
+
/* @__PURE__ */ jsx77(CopyIcon, { copied: copied === recipientId })
|
|
7188
7847
|
]
|
|
7189
7848
|
}
|
|
7190
7849
|
),
|
|
7191
|
-
showRegenerate && /* @__PURE__ */
|
|
7850
|
+
showRegenerate && /* @__PURE__ */ jsx77("div", { className: "flex justify-center pt-1", children: /* @__PURE__ */ jsx77(
|
|
7192
7851
|
"button",
|
|
7193
7852
|
{
|
|
7194
7853
|
type: "button",
|
|
@@ -7206,7 +7865,7 @@ function DepositGeneratedView({
|
|
|
7206
7865
|
setInvoiceStatus(null);
|
|
7207
7866
|
},
|
|
7208
7867
|
className: "flex size-10 items-center justify-center rounded-full bg-primary/15 text-primary transition-all hover:bg-primary/25 active:scale-[0.98] disabled:opacity-50",
|
|
7209
|
-
children: /* @__PURE__ */
|
|
7868
|
+
children: /* @__PURE__ */ jsx77(
|
|
7210
7869
|
"span",
|
|
7211
7870
|
{
|
|
7212
7871
|
className: cn("material-symbols-outlined text-icon-md", loading && "animate-spin"),
|
|
@@ -7219,7 +7878,7 @@ function DepositGeneratedView({
|
|
|
7219
7878
|
}
|
|
7220
7879
|
|
|
7221
7880
|
// src/web/components/deposit-pre-generation.tsx
|
|
7222
|
-
import { jsx as
|
|
7881
|
+
import { jsx as jsx78, jsxs as jsxs64 } from "react/jsx-runtime";
|
|
7223
7882
|
var ACCOUNT_TITLES = {
|
|
7224
7883
|
RGB: "RGB & Lightning",
|
|
7225
7884
|
SPARK: "Spark",
|
|
@@ -7259,62 +7918,62 @@ function DepositPreGeneration({
|
|
|
7259
7918
|
showReceiveSummary = true
|
|
7260
7919
|
}) {
|
|
7261
7920
|
const method = METHOD_META2[currentMethod];
|
|
7262
|
-
return /* @__PURE__ */
|
|
7263
|
-
showReceiveSummary && /* @__PURE__ */
|
|
7264
|
-
/* @__PURE__ */
|
|
7265
|
-
/* @__PURE__ */
|
|
7266
|
-
/* @__PURE__ */
|
|
7267
|
-
/* @__PURE__ */
|
|
7268
|
-
/* @__PURE__ */
|
|
7921
|
+
return /* @__PURE__ */ jsxs64("div", { className: "space-y-3", children: [
|
|
7922
|
+
showReceiveSummary && /* @__PURE__ */ jsxs64("div", { className: "rounded-2xl border border-white/8 bg-white/4 p-3", children: [
|
|
7923
|
+
/* @__PURE__ */ jsx78("p", { className: "text-xxs font-bold uppercase tracking-widest text-white/35", children: "Receive Summary" }),
|
|
7924
|
+
/* @__PURE__ */ jsxs64("div", { className: "mt-2 grid grid-cols-1 gap-2 text-xs", children: [
|
|
7925
|
+
/* @__PURE__ */ jsxs64("div", { className: "flex items-center justify-between gap-3", children: [
|
|
7926
|
+
/* @__PURE__ */ jsx78("span", { className: "text-white/45", children: "Asset" }),
|
|
7927
|
+
/* @__PURE__ */ jsx78("span", { className: "font-bold text-white", children: selectedAsset?.ticker ?? (isBtc ? "BTC" : "Asset") })
|
|
7269
7928
|
] }),
|
|
7270
|
-
/* @__PURE__ */
|
|
7271
|
-
/* @__PURE__ */
|
|
7272
|
-
/* @__PURE__ */
|
|
7929
|
+
/* @__PURE__ */ jsxs64("div", { className: "flex items-center justify-between gap-3", children: [
|
|
7930
|
+
/* @__PURE__ */ jsx78("span", { className: "text-white/45", children: "Destination account" }),
|
|
7931
|
+
/* @__PURE__ */ jsx78("span", { className: "font-bold text-white", children: ACCOUNT_TITLES[selectedAccount] })
|
|
7273
7932
|
] }),
|
|
7274
|
-
/* @__PURE__ */
|
|
7275
|
-
/* @__PURE__ */
|
|
7276
|
-
/* @__PURE__ */
|
|
7933
|
+
/* @__PURE__ */ jsxs64("div", { className: "flex items-center justify-between gap-3", children: [
|
|
7934
|
+
/* @__PURE__ */ jsx78("span", { className: "text-white/45", children: "Transfer method" }),
|
|
7935
|
+
/* @__PURE__ */ jsx78("span", { className: "font-bold text-white", children: method.label })
|
|
7277
7936
|
] }),
|
|
7278
|
-
/* @__PURE__ */
|
|
7937
|
+
/* @__PURE__ */ jsx78("p", { className: "text-tiny text-white/35", children: method.summary })
|
|
7279
7938
|
] })
|
|
7280
7939
|
] }),
|
|
7281
|
-
channelsLoading && selectedAccount === "RGB" && currentMethod === "lightning" && !isBtc && /* @__PURE__ */
|
|
7282
|
-
/* @__PURE__ */
|
|
7283
|
-
/* @__PURE__ */
|
|
7940
|
+
channelsLoading && selectedAccount === "RGB" && currentMethod === "lightning" && !isBtc && /* @__PURE__ */ jsxs64("div", { className: "flex items-center gap-2.5 rounded-xl border bg-card p-3", children: [
|
|
7941
|
+
/* @__PURE__ */ jsx78("span", { className: "material-symbols-outlined animate-spin text-icon-lg text-primary", children: "progress_activity" }),
|
|
7942
|
+
/* @__PURE__ */ jsx78("span", { className: "text-xs font-medium text-white/60", children: "Checking channel availability..." })
|
|
7284
7943
|
] }),
|
|
7285
|
-
showChannelWarning && /* @__PURE__ */
|
|
7286
|
-
/* @__PURE__ */
|
|
7287
|
-
/* @__PURE__ */
|
|
7944
|
+
showChannelWarning && /* @__PURE__ */ jsxs64(AlertBanner, { variant: "warning", children: [
|
|
7945
|
+
/* @__PURE__ */ jsx78("p", { className: "mb-0.5 text-xs font-bold text-warning", children: "No Lightning Channels" }),
|
|
7946
|
+
/* @__PURE__ */ jsx78("p", { className: "text-tiny text-warning/70", children: "Only on-chain deposits are available." })
|
|
7288
7947
|
] }),
|
|
7289
|
-
showLiquidityWarning && /* @__PURE__ */
|
|
7290
|
-
/* @__PURE__ */
|
|
7291
|
-
/* @__PURE__ */
|
|
7948
|
+
showLiquidityWarning && /* @__PURE__ */ jsxs64(AlertBanner, { variant: "warning", children: [
|
|
7949
|
+
/* @__PURE__ */ jsx78("p", { className: "mb-0.5 text-xs font-bold text-warning", children: "No Inbound Liquidity" }),
|
|
7950
|
+
/* @__PURE__ */ jsxs64("p", { className: "text-tiny text-warning/70", children: [
|
|
7292
7951
|
"No channels with inbound capacity for ",
|
|
7293
7952
|
selectedAsset?.ticker ?? "this asset",
|
|
7294
7953
|
"."
|
|
7295
7954
|
] })
|
|
7296
7955
|
] }),
|
|
7297
|
-
isAutoGenerate && loading && /* @__PURE__ */
|
|
7298
|
-
/* @__PURE__ */
|
|
7299
|
-
/* @__PURE__ */
|
|
7300
|
-
/* @__PURE__ */
|
|
7956
|
+
isAutoGenerate && loading && /* @__PURE__ */ jsxs64("div", { className: "flex flex-col items-center gap-4 py-10", children: [
|
|
7957
|
+
/* @__PURE__ */ jsx78("div", { className: cn("flex size-16 items-center justify-center rounded-2xl border", net.bg, net.border), children: /* @__PURE__ */ jsx78("span", { className: cn("material-symbols-outlined animate-spin text-icon-4xl", net.text), children: "progress_activity" }) }),
|
|
7958
|
+
/* @__PURE__ */ jsxs64("div", { className: "space-y-1 text-center", children: [
|
|
7959
|
+
/* @__PURE__ */ jsxs64("p", { className: "text-sm font-bold text-muted-foreground", children: [
|
|
7301
7960
|
"Generating ",
|
|
7302
7961
|
network === "lightning" ? "invoice" : "address",
|
|
7303
7962
|
"..."
|
|
7304
7963
|
] }),
|
|
7305
|
-
/* @__PURE__ */
|
|
7964
|
+
/* @__PURE__ */ jsxs64("p", { className: "text-xs text-white/30", children: [
|
|
7306
7965
|
net.label,
|
|
7307
7966
|
" network"
|
|
7308
7967
|
] })
|
|
7309
7968
|
] })
|
|
7310
7969
|
] }),
|
|
7311
|
-
network === "onchain" && !isBtc && /* @__PURE__ */
|
|
7312
|
-
/* @__PURE__ */
|
|
7313
|
-
/* @__PURE__ */
|
|
7314
|
-
/* @__PURE__ */
|
|
7315
|
-
/* @__PURE__ */
|
|
7970
|
+
network === "onchain" && !isBtc && /* @__PURE__ */ jsxs64("div", { className: "space-y-2 rounded-xl border bg-card p-3", children: [
|
|
7971
|
+
/* @__PURE__ */ jsxs64("div", { className: "flex items-center justify-between gap-3", children: [
|
|
7972
|
+
/* @__PURE__ */ jsxs64("div", { className: "min-w-0 flex-1", children: [
|
|
7973
|
+
/* @__PURE__ */ jsx78("h4", { className: "text-xs font-bold text-white", children: "Receive with Privacy" }),
|
|
7974
|
+
/* @__PURE__ */ jsx78("p", { className: "mt-0.5 text-xxs text-muted-foreground", children: usePrivacy ? "Blinded UTXO - enhanced privacy" : "Witness address - less private" })
|
|
7316
7975
|
] }),
|
|
7317
|
-
/* @__PURE__ */
|
|
7976
|
+
/* @__PURE__ */ jsx78(
|
|
7318
7977
|
"button",
|
|
7319
7978
|
{
|
|
7320
7979
|
type: "button",
|
|
@@ -7323,7 +7982,7 @@ function DepositPreGeneration({
|
|
|
7323
7982
|
usePrivacy ? "bg-primary" : "bg-white/10"
|
|
7324
7983
|
),
|
|
7325
7984
|
onClick: () => setUsePrivacy(!usePrivacy),
|
|
7326
|
-
children: /* @__PURE__ */
|
|
7985
|
+
children: /* @__PURE__ */ jsx78(
|
|
7327
7986
|
"span",
|
|
7328
7987
|
{
|
|
7329
7988
|
className: cn(
|
|
@@ -7335,21 +7994,21 @@ function DepositPreGeneration({
|
|
|
7335
7994
|
}
|
|
7336
7995
|
)
|
|
7337
7996
|
] }),
|
|
7338
|
-
!usePrivacy && /* @__PURE__ */
|
|
7997
|
+
!usePrivacy && /* @__PURE__ */ jsx78("p", { className: "rounded-lg border border-warning/15 bg-warning/5 px-2.5 py-1.5 text-xxs text-warning/80", children: "Sender needs to add sats to create a new UTXO for you." })
|
|
7339
7998
|
] }),
|
|
7340
|
-
network === "onchain" && !isBtc && /* @__PURE__ */
|
|
7341
|
-
/* @__PURE__ */
|
|
7342
|
-
/* @__PURE__ */
|
|
7999
|
+
network === "onchain" && !isBtc && /* @__PURE__ */ jsxs64("div", { className: "space-y-1.5", children: [
|
|
8000
|
+
/* @__PURE__ */ jsxs64("div", { className: "flex items-center justify-between", children: [
|
|
8001
|
+
/* @__PURE__ */ jsxs64("label", { className: "text-xxs font-bold uppercase tracking-widest text-white/40", children: [
|
|
7343
8002
|
"Amount (",
|
|
7344
8003
|
getUnitLabel(),
|
|
7345
8004
|
") - Optional"
|
|
7346
8005
|
] }),
|
|
7347
|
-
selectedAsset && /* @__PURE__ */
|
|
8006
|
+
selectedAsset && /* @__PURE__ */ jsxs64("span", { className: "text-xxs text-white/30", children: [
|
|
7348
8007
|
selectedAsset.precision ?? 0,
|
|
7349
8008
|
" decimals"
|
|
7350
8009
|
] })
|
|
7351
8010
|
] }),
|
|
7352
|
-
/* @__PURE__ */
|
|
8011
|
+
/* @__PURE__ */ jsx78(
|
|
7353
8012
|
"input",
|
|
7354
8013
|
{
|
|
7355
8014
|
type: "text",
|
|
@@ -7361,18 +8020,18 @@ function DepositPreGeneration({
|
|
|
7361
8020
|
}
|
|
7362
8021
|
)
|
|
7363
8022
|
] }),
|
|
7364
|
-
needsColorableUtxos && /* @__PURE__ */
|
|
7365
|
-
/* @__PURE__ */
|
|
7366
|
-
/* @__PURE__ */
|
|
8023
|
+
needsColorableUtxos && /* @__PURE__ */ jsxs64(AlertBanner, { variant: "warning", children: [
|
|
8024
|
+
/* @__PURE__ */ jsx78("p", { className: "mb-0.5 text-xs font-bold text-warning", children: "Colorable UTXOs Required" }),
|
|
8025
|
+
/* @__PURE__ */ jsx78("p", { className: "text-tiny text-warning/70", children: "To receive RGB assets on-chain you need at least one uncolored UTXO. Create some now and the invoice will be generated automatically." })
|
|
7367
8026
|
] }),
|
|
7368
|
-
!isAutoGenerate && (needsColorableUtxos && onOpenCreateUtxos ? /* @__PURE__ */
|
|
7369
|
-
/* @__PURE__ */
|
|
8027
|
+
!isAutoGenerate && (needsColorableUtxos && onOpenCreateUtxos ? /* @__PURE__ */ jsx78(Button, { variant: "cta", size: "cta", onClick: onOpenCreateUtxos, disabled: loading, children: /* @__PURE__ */ jsxs64("span", { className: "flex items-center justify-center gap-2", children: [
|
|
8028
|
+
/* @__PURE__ */ jsx78("span", { className: "material-symbols-outlined text-icon-md", children: "add_circle" }),
|
|
7370
8029
|
"Create Colorable UTXOs"
|
|
7371
|
-
] }) }) : /* @__PURE__ */
|
|
7372
|
-
/* @__PURE__ */
|
|
8030
|
+
] }) }) : /* @__PURE__ */ jsx78(Button, { variant: "cta", size: "cta", onClick: generateInvoice, disabled: loading, children: loading ? /* @__PURE__ */ jsxs64("span", { className: "flex items-center justify-center gap-2", children: [
|
|
8031
|
+
/* @__PURE__ */ jsx78("span", { className: "material-symbols-outlined animate-spin text-icon-md", children: "progress_activity" }),
|
|
7373
8032
|
"Generating..."
|
|
7374
|
-
] }) : /* @__PURE__ */
|
|
7375
|
-
/* @__PURE__ */
|
|
8033
|
+
] }) : /* @__PURE__ */ jsxs64("span", { className: "flex items-center justify-center gap-2", children: [
|
|
8034
|
+
/* @__PURE__ */ jsx78("span", { className: "material-symbols-outlined text-icon-md", children: "qr_code_2" }),
|
|
7376
8035
|
"Generate Address"
|
|
7377
8036
|
] }) }))
|
|
7378
8037
|
] });
|
|
@@ -7380,7 +8039,7 @@ function DepositPreGeneration({
|
|
|
7380
8039
|
|
|
7381
8040
|
// src/web/components/deposit-asset-selection.tsx
|
|
7382
8041
|
import { useEffect as useEffect10, useState as useState15 } from "react";
|
|
7383
|
-
import { Fragment as
|
|
8042
|
+
import { Fragment as Fragment16, jsx as jsx79, jsxs as jsxs65 } from "react/jsx-runtime";
|
|
7384
8043
|
var PROTOCOL_BADGE = {
|
|
7385
8044
|
RGB: { label: "RGB", className: "bg-network-rgb-chip text-network-rgb-text" },
|
|
7386
8045
|
SPARK: { label: "Spark", className: "bg-network-spark-chip text-network-spark-text" },
|
|
@@ -7451,8 +8110,8 @@ function DepositAssetSelection({
|
|
|
7451
8110
|
titleHoverClass: "group-hover:text-network-arkade"
|
|
7452
8111
|
}
|
|
7453
8112
|
].filter((option) => option.enabled);
|
|
7454
|
-
return /* @__PURE__ */
|
|
7455
|
-
/* @__PURE__ */
|
|
8113
|
+
return /* @__PURE__ */ jsxs65("div", { className: "relative flex h-screen flex-col overflow-hidden bg-background pt-16 font-display text-foreground", children: [
|
|
8114
|
+
/* @__PURE__ */ jsx79("div", { className: "absolute left-4 top-4 z-30", children: /* @__PURE__ */ jsx79(
|
|
7456
8115
|
Button,
|
|
7457
8116
|
{
|
|
7458
8117
|
type: "button",
|
|
@@ -7460,10 +8119,10 @@ function DepositAssetSelection({
|
|
|
7460
8119
|
size: "icon-xl",
|
|
7461
8120
|
onClick: () => setCurrentView("dashboard"),
|
|
7462
8121
|
"aria-label": "Go back",
|
|
7463
|
-
children: /* @__PURE__ */
|
|
8122
|
+
children: /* @__PURE__ */ jsx79(Icon, { name: "arrow_back", size: "xl" })
|
|
7464
8123
|
}
|
|
7465
8124
|
) }),
|
|
7466
|
-
/* @__PURE__ */
|
|
8125
|
+
/* @__PURE__ */ jsx79("div", { className: "flex-shrink-0 px-5 pb-3 pt-4", children: /* @__PURE__ */ jsx79(
|
|
7467
8126
|
DotPagination,
|
|
7468
8127
|
{
|
|
7469
8128
|
count: 2,
|
|
@@ -7471,8 +8130,8 @@ function DepositAssetSelection({
|
|
|
7471
8130
|
ariaLabel: "Deposit step 1 of 2: select asset"
|
|
7472
8131
|
}
|
|
7473
8132
|
) }),
|
|
7474
|
-
/* @__PURE__ */
|
|
7475
|
-
/* @__PURE__ */
|
|
8133
|
+
/* @__PURE__ */ jsx79("div", { className: "flex-shrink-0 px-5 pb-3", children: /* @__PURE__ */ jsxs65("div", { className: "relative", children: [
|
|
8134
|
+
/* @__PURE__ */ jsx79(
|
|
7476
8135
|
Icon,
|
|
7477
8136
|
{
|
|
7478
8137
|
name: "search",
|
|
@@ -7480,7 +8139,7 @@ function DepositAssetSelection({
|
|
|
7480
8139
|
className: "absolute left-3 top-1/2 -translate-y-1/2 text-white/30"
|
|
7481
8140
|
}
|
|
7482
8141
|
),
|
|
7483
|
-
/* @__PURE__ */
|
|
8142
|
+
/* @__PURE__ */ jsx79(
|
|
7484
8143
|
"input",
|
|
7485
8144
|
{
|
|
7486
8145
|
autoFocus: true,
|
|
@@ -7493,8 +8152,8 @@ function DepositAssetSelection({
|
|
|
7493
8152
|
}
|
|
7494
8153
|
)
|
|
7495
8154
|
] }) }),
|
|
7496
|
-
/* @__PURE__ */
|
|
7497
|
-
btcAsset && /* @__PURE__ */
|
|
8155
|
+
/* @__PURE__ */ jsxs65(ScrollArea, { className: "min-h-0 flex-1", viewportClassName: "space-y-1.5 px-5 pb-3", children: [
|
|
8156
|
+
btcAsset && /* @__PURE__ */ jsxs65(
|
|
7498
8157
|
"button",
|
|
7499
8158
|
{
|
|
7500
8159
|
type: "button",
|
|
@@ -7502,27 +8161,27 @@ function DepositAssetSelection({
|
|
|
7502
8161
|
className: "group flex w-full min-w-0 items-center gap-3 overflow-hidden rounded-2xl bg-white/3 px-4 py-3 text-sm transition-all hover:bg-accent",
|
|
7503
8162
|
onClick: () => onSelectAsset(btcAsset),
|
|
7504
8163
|
children: [
|
|
7505
|
-
/* @__PURE__ */
|
|
7506
|
-
/* @__PURE__ */
|
|
7507
|
-
/* @__PURE__ */
|
|
7508
|
-
/* @__PURE__ */
|
|
8164
|
+
/* @__PURE__ */ jsx79(AssetIcon, { ticker: "BTC", size: 40, className: "flex-shrink-0" }),
|
|
8165
|
+
/* @__PURE__ */ jsxs65("div", { className: "min-w-0 flex-1 text-left", children: [
|
|
8166
|
+
/* @__PURE__ */ jsx79("div", { className: "font-bold tracking-wide text-white transition-colors group-hover:text-primary/90", children: "Bitcoin" }),
|
|
8167
|
+
/* @__PURE__ */ jsx79("div", { className: "mt-0.5 text-xs text-white/40", children: "Choose destination account next" })
|
|
7509
8168
|
] }),
|
|
7510
|
-
/* @__PURE__ */
|
|
7511
|
-
/* @__PURE__ */
|
|
7512
|
-
/* @__PURE__ */
|
|
7513
|
-
isSparkConnected && /* @__PURE__ */
|
|
7514
|
-
isArkadeConnected && /* @__PURE__ */
|
|
8169
|
+
/* @__PURE__ */ jsxs65("div", { className: "hidden min-w-0 max-w-[42%] flex-shrink flex-wrap justify-end gap-1 min-[380px]:flex", children: [
|
|
8170
|
+
/* @__PURE__ */ jsx79(NetworkBadge, { network: "L1", size: "sm" }),
|
|
8171
|
+
/* @__PURE__ */ jsx79(NetworkBadge, { network: "LN", size: "sm" }),
|
|
8172
|
+
isSparkConnected && /* @__PURE__ */ jsx79(NetworkBadge, { network: "Spark", size: "sm" }),
|
|
8173
|
+
isArkadeConnected && /* @__PURE__ */ jsx79(NetworkBadge, { network: "Arkade", size: "sm" })
|
|
7515
8174
|
] }),
|
|
7516
|
-
/* @__PURE__ */
|
|
8175
|
+
/* @__PURE__ */ jsx79("span", { className: "material-symbols-outlined flex-shrink-0 text-icon-md text-white/20 transition-colors group-hover:text-white/50", children: "arrow_forward" })
|
|
7517
8176
|
]
|
|
7518
8177
|
}
|
|
7519
8178
|
),
|
|
7520
|
-
noResults ? /* @__PURE__ */
|
|
8179
|
+
noResults ? /* @__PURE__ */ jsxs65("div", { className: "py-8 text-center text-sm text-white/30", children: [
|
|
7521
8180
|
'No assets match "',
|
|
7522
8181
|
searchQuery,
|
|
7523
8182
|
'"'
|
|
7524
|
-
] }) : ownedAssetsCount > 0 ? /* @__PURE__ */
|
|
7525
|
-
/* @__PURE__ */
|
|
8183
|
+
] }) : ownedAssetsCount > 0 ? /* @__PURE__ */ jsxs65("div", { className: "space-y-1.5 pt-1", children: [
|
|
8184
|
+
/* @__PURE__ */ jsxs65(
|
|
7526
8185
|
"button",
|
|
7527
8186
|
{
|
|
7528
8187
|
type: "button",
|
|
@@ -7535,17 +8194,17 @@ function DepositAssetSelection({
|
|
|
7535
8194
|
isSearching && "cursor-default"
|
|
7536
8195
|
),
|
|
7537
8196
|
children: [
|
|
7538
|
-
/* @__PURE__ */
|
|
7539
|
-
/* @__PURE__ */
|
|
7540
|
-
/* @__PURE__ */
|
|
7541
|
-
!isSearching && /* @__PURE__ */
|
|
8197
|
+
/* @__PURE__ */ jsx79("span", { className: "text-xxs font-bold uppercase tracking-[0.18em] text-white/55", children: "Your assets" }),
|
|
8198
|
+
/* @__PURE__ */ jsx79("span", { className: "inline-flex size-5 items-center justify-center rounded-full bg-white/10 text-tiny font-bold text-white/70", children: ownedAssetsCount }),
|
|
8199
|
+
/* @__PURE__ */ jsx79("div", { className: "flex-1" }),
|
|
8200
|
+
!isSearching && /* @__PURE__ */ jsx79(Icon, { name: showOwnedAssets ? "expand_less" : "expand_more", size: "md", className: "text-white/40" })
|
|
7542
8201
|
]
|
|
7543
8202
|
}
|
|
7544
8203
|
),
|
|
7545
|
-
showOwnedAssets && /* @__PURE__ */
|
|
8204
|
+
showOwnedAssets && /* @__PURE__ */ jsx79("div", { className: "space-y-1.5 duration-200 animate-in fade-in slide-in-from-top-1", children: ownedAssets.map((asset) => {
|
|
7546
8205
|
const protocolBadge = asset.accountId ? PROTOCOL_BADGE[asset.accountId] : null;
|
|
7547
8206
|
const balance = asset.balance ?? 0;
|
|
7548
|
-
return /* @__PURE__ */
|
|
8207
|
+
return /* @__PURE__ */ jsxs65(
|
|
7549
8208
|
"button",
|
|
7550
8209
|
{
|
|
7551
8210
|
type: "button",
|
|
@@ -7553,11 +8212,11 @@ function DepositAssetSelection({
|
|
|
7553
8212
|
className: "group flex w-full min-w-0 items-center gap-3 overflow-hidden rounded-2xl border border-white/8 bg-white/3 px-4 py-3 text-sm transition-all hover:border-border hover:bg-accent",
|
|
7554
8213
|
onClick: () => onSelectAsset(asset),
|
|
7555
8214
|
children: [
|
|
7556
|
-
/* @__PURE__ */
|
|
7557
|
-
/* @__PURE__ */
|
|
7558
|
-
/* @__PURE__ */
|
|
7559
|
-
/* @__PURE__ */
|
|
7560
|
-
protocolBadge && /* @__PURE__ */
|
|
8215
|
+
/* @__PURE__ */ jsx79(AssetIcon, { ticker: asset.ticker, size: 40, className: "flex-shrink-0" }),
|
|
8216
|
+
/* @__PURE__ */ jsxs65("div", { className: "min-w-0 flex-1 text-left", children: [
|
|
8217
|
+
/* @__PURE__ */ jsxs65("div", { className: "flex min-w-0 items-center gap-1.5", children: [
|
|
8218
|
+
/* @__PURE__ */ jsx79("span", { className: "truncate font-bold tracking-wide text-white transition-colors group-hover:text-primary/90", children: asset.ticker }),
|
|
8219
|
+
protocolBadge && /* @__PURE__ */ jsx79(
|
|
7561
8220
|
"span",
|
|
7562
8221
|
{
|
|
7563
8222
|
className: cn(
|
|
@@ -7568,38 +8227,38 @@ function DepositAssetSelection({
|
|
|
7568
8227
|
}
|
|
7569
8228
|
)
|
|
7570
8229
|
] }),
|
|
7571
|
-
/* @__PURE__ */
|
|
8230
|
+
/* @__PURE__ */ jsx79("div", { className: "mt-0.5 truncate text-xs text-white/40", children: asset.name ?? "Asset" })
|
|
7572
8231
|
] }),
|
|
7573
|
-
balance > 0 && /* @__PURE__ */
|
|
7574
|
-
/* @__PURE__ */
|
|
7575
|
-
/* @__PURE__ */
|
|
8232
|
+
balance > 0 && /* @__PURE__ */ jsxs65("div", { className: "flex-shrink-0 text-right", children: [
|
|
8233
|
+
/* @__PURE__ */ jsx79("div", { className: "font-mono text-xs font-bold text-white", children: formatAssetBalance(asset) }),
|
|
8234
|
+
/* @__PURE__ */ jsx79("div", { className: "mt-0.5 text-tiny uppercase tracking-wider text-white/35", children: asset.ticker })
|
|
7576
8235
|
] }),
|
|
7577
|
-
/* @__PURE__ */
|
|
8236
|
+
/* @__PURE__ */ jsx79("span", { className: "material-symbols-outlined flex-shrink-0 text-icon-sm text-white/20 transition-colors group-hover:text-white/50", children: "arrow_forward" })
|
|
7578
8237
|
]
|
|
7579
8238
|
},
|
|
7580
8239
|
asset.asset_id
|
|
7581
8240
|
);
|
|
7582
8241
|
}) })
|
|
7583
8242
|
] }) : null,
|
|
7584
|
-
!searchQuery && /* @__PURE__ */
|
|
8243
|
+
!searchQuery && /* @__PURE__ */ jsx79("div", { className: "pb-1 pt-2", children: /* @__PURE__ */ jsxs65(
|
|
7585
8244
|
"button",
|
|
7586
8245
|
{
|
|
7587
8246
|
type: "button",
|
|
7588
8247
|
onClick: () => setCurrentView("bridge"),
|
|
7589
8248
|
className: "group flex w-full items-center gap-3 rounded-2xl bg-gradient-to-r from-primary/10 to-primary/5 p-3 transition-all hover:from-primary/20 hover:to-primary/10",
|
|
7590
8249
|
children: [
|
|
7591
|
-
/* @__PURE__ */
|
|
7592
|
-
/* @__PURE__ */
|
|
7593
|
-
/* @__PURE__ */
|
|
7594
|
-
/* @__PURE__ */
|
|
8250
|
+
/* @__PURE__ */ jsx79("div", { className: "flex size-10 shrink-0 items-center justify-center rounded-xl bg-primary/20", children: /* @__PURE__ */ jsx79("span", { className: "material-symbols-outlined text-lg text-primary", children: "swap_calls" }) }),
|
|
8251
|
+
/* @__PURE__ */ jsxs65("div", { className: "flex-1 text-left", children: [
|
|
8252
|
+
/* @__PURE__ */ jsx79("p", { className: "text-sm font-semibold text-white transition-colors group-hover:text-primary", children: "Bridge from another chain" }),
|
|
8253
|
+
/* @__PURE__ */ jsx79("p", { className: "text-xxs leading-tight text-white/40", children: "USDC, USDT, ETH, SOL via Flashnet" })
|
|
7595
8254
|
] }),
|
|
7596
|
-
/* @__PURE__ */
|
|
8255
|
+
/* @__PURE__ */ jsx79("span", { className: "material-symbols-outlined text-lg text-white/30 transition-colors group-hover:text-primary", children: "arrow_forward" })
|
|
7597
8256
|
]
|
|
7598
8257
|
}
|
|
7599
8258
|
) }),
|
|
7600
|
-
!searchQuery && newAssetOptions.length > 0 && /* @__PURE__ */
|
|
7601
|
-
/* @__PURE__ */
|
|
7602
|
-
/* @__PURE__ */
|
|
8259
|
+
!searchQuery && newAssetOptions.length > 0 && /* @__PURE__ */ jsxs65("div", { className: "space-y-2 pt-2", children: [
|
|
8260
|
+
/* @__PURE__ */ jsx79("div", { className: "px-1", children: /* @__PURE__ */ jsx79("p", { className: "text-xxs font-bold uppercase tracking-[0.18em] text-white/35", children: "New Asset" }) }),
|
|
8261
|
+
/* @__PURE__ */ jsx79(
|
|
7603
8262
|
"div",
|
|
7604
8263
|
{
|
|
7605
8264
|
className: cn(
|
|
@@ -7608,7 +8267,7 @@ function DepositAssetSelection({
|
|
|
7608
8267
|
),
|
|
7609
8268
|
children: newAssetOptions.map((option) => {
|
|
7610
8269
|
const active = isNewAsset && newAssetAccount === option.account;
|
|
7611
|
-
return /* @__PURE__ */
|
|
8270
|
+
return /* @__PURE__ */ jsxs65(
|
|
7612
8271
|
"button",
|
|
7613
8272
|
{
|
|
7614
8273
|
type: "button",
|
|
@@ -7619,11 +8278,11 @@ function DepositAssetSelection({
|
|
|
7619
8278
|
),
|
|
7620
8279
|
onClick: () => handleAddNewAsset(option.account),
|
|
7621
8280
|
children: [
|
|
7622
|
-
/* @__PURE__ */
|
|
7623
|
-
/* @__PURE__ */
|
|
7624
|
-
/* @__PURE__ */
|
|
8281
|
+
/* @__PURE__ */ jsxs65("div", { className: "relative", children: [
|
|
8282
|
+
/* @__PURE__ */ jsx79(AssetIcon, { ticker: option.ticker, size: 40 }),
|
|
8283
|
+
/* @__PURE__ */ jsx79("div", { className: "absolute -bottom-1 -right-1 flex size-4 items-center justify-center rounded-full bg-primary", children: /* @__PURE__ */ jsx79(Icon, { name: "add", size: "xs", className: "text-background" }) })
|
|
7625
8284
|
] }),
|
|
7626
|
-
/* @__PURE__ */
|
|
8285
|
+
/* @__PURE__ */ jsx79("div", { className: "mt-2 min-w-0", children: /* @__PURE__ */ jsx79(
|
|
7627
8286
|
"div",
|
|
7628
8287
|
{
|
|
7629
8288
|
className: cn(
|
|
@@ -7643,10 +8302,10 @@ function DepositAssetSelection({
|
|
|
7643
8302
|
)
|
|
7644
8303
|
] })
|
|
7645
8304
|
] }),
|
|
7646
|
-
isNewAsset && newAssetAccount === "RGB" && /* @__PURE__ */
|
|
7647
|
-
/* @__PURE__ */
|
|
7648
|
-
/* @__PURE__ */
|
|
7649
|
-
/* @__PURE__ */
|
|
8305
|
+
isNewAsset && newAssetAccount === "RGB" && /* @__PURE__ */ jsxs65(Fragment16, { children: [
|
|
8306
|
+
/* @__PURE__ */ jsx79("div", { className: "flex-shrink-0 px-5 pb-3 animate-in fade-in slide-in-from-bottom-2 duration-300", children: /* @__PURE__ */ jsxs65("div", { className: "space-y-2 rounded-2xl border border-network-arkade/20 bg-network-arkade/5 p-3", children: [
|
|
8307
|
+
/* @__PURE__ */ jsx79("p", { className: "text-tiny leading-relaxed text-network-arkade/80", children: "Leave empty to receive any RGB asset, or enter a specific asset ID." }),
|
|
8308
|
+
/* @__PURE__ */ jsx79(
|
|
7650
8309
|
"input",
|
|
7651
8310
|
{
|
|
7652
8311
|
className: "w-full rounded-xl border bg-white/5 px-3 py-2 font-mono text-sm text-white transition-all placeholder:text-white/25 focus:border-network-arkade/40 focus:outline-none",
|
|
@@ -7657,16 +8316,16 @@ function DepositAssetSelection({
|
|
|
7657
8316
|
}
|
|
7658
8317
|
)
|
|
7659
8318
|
] }) }),
|
|
7660
|
-
/* @__PURE__ */
|
|
8319
|
+
/* @__PURE__ */ jsx79("div", { className: "flex-shrink-0 px-5 pb-5 pt-2", children: /* @__PURE__ */ jsxs65(Button, { variant: "cta", size: "cta", onClick: handleContinueToGenerate, children: [
|
|
7661
8320
|
"Continue with New Asset",
|
|
7662
|
-
/* @__PURE__ */
|
|
8321
|
+
/* @__PURE__ */ jsx79("span", { className: "material-symbols-outlined text-icon-xl font-bold", children: "arrow_forward" })
|
|
7663
8322
|
] }) })
|
|
7664
8323
|
] })
|
|
7665
8324
|
] });
|
|
7666
8325
|
}
|
|
7667
8326
|
|
|
7668
8327
|
// src/web/components/deposit-invoice-generation.tsx
|
|
7669
|
-
import { jsx as
|
|
8328
|
+
import { jsx as jsx80, jsxs as jsxs66 } from "react/jsx-runtime";
|
|
7670
8329
|
var ACCOUNT_TITLES2 = {
|
|
7671
8330
|
RGB: "RGB & Lightning",
|
|
7672
8331
|
SPARK: "Spark",
|
|
@@ -7821,7 +8480,7 @@ function DepositInvoiceGeneration({
|
|
|
7821
8480
|
if (nextMethod) applyMethodSelection(account, nextMethod);
|
|
7822
8481
|
};
|
|
7823
8482
|
if (depositDetected) {
|
|
7824
|
-
return /* @__PURE__ */
|
|
8483
|
+
return /* @__PURE__ */ jsx80(
|
|
7825
8484
|
DepositSuccessScreen,
|
|
7826
8485
|
{
|
|
7827
8486
|
handleDone,
|
|
@@ -7838,15 +8497,15 @@ function DepositInvoiceGeneration({
|
|
|
7838
8497
|
const showChannelWarning = selectedAccount === "RGB" && network === "lightning" && !channelsLoading && channels.length === 0 && !isSparkConnected;
|
|
7839
8498
|
const showLiquidityWarning = !isSparkLightning && network === "lightning" && maxDepositAmount === 0 && !channelsLoading && !isBtc;
|
|
7840
8499
|
const isNewRgbAsset = isNewAsset && assetFamily === "RGB";
|
|
7841
|
-
return /* @__PURE__ */
|
|
7842
|
-
/* @__PURE__ */
|
|
8500
|
+
return /* @__PURE__ */ jsxs66("div", { className: "relative flex h-screen flex-col overflow-hidden bg-background pt-16 font-display text-foreground", children: [
|
|
8501
|
+
/* @__PURE__ */ jsx80("div", { className: "absolute left-4 top-4 z-30", children: /* @__PURE__ */ jsx80(Button, { type: "button", variant: "ghost", size: "icon-xl", onClick: handleBack, "aria-label": "Go back", children: /* @__PURE__ */ jsx80(Icon, { name: "arrow_back", size: "xl" }) }) }),
|
|
7843
8502
|
(() => {
|
|
7844
8503
|
const hideDestinationRail = isNewAsset && (network === "spark" || network === "arkade");
|
|
7845
8504
|
if (hideDestinationRail) return null;
|
|
7846
|
-
return /* @__PURE__ */
|
|
7847
|
-
/* @__PURE__ */
|
|
7848
|
-
/* @__PURE__ */
|
|
7849
|
-
/* @__PURE__ */
|
|
8505
|
+
return /* @__PURE__ */ jsx80("div", { className: "flex-shrink-0 border-b border-border bg-background px-4 py-2", children: /* @__PURE__ */ jsxs66("div", { className: "space-y-2", children: [
|
|
8506
|
+
/* @__PURE__ */ jsxs66("div", { children: [
|
|
8507
|
+
/* @__PURE__ */ jsx80("p", { className: "text-xxs font-bold uppercase tracking-widest text-white/35", children: "Destination Account" }),
|
|
8508
|
+
/* @__PURE__ */ jsx80("div", { className: "mt-1.5 flex gap-1.5 overflow-x-auto no-scrollbar", children: availableAccounts.map((account) => /* @__PURE__ */ jsx80(
|
|
7850
8509
|
AccountChoiceChip,
|
|
7851
8510
|
{
|
|
7852
8511
|
account,
|
|
@@ -7871,9 +8530,9 @@ function DepositInvoiceGeneration({
|
|
|
7871
8530
|
account
|
|
7872
8531
|
)) })
|
|
7873
8532
|
] }),
|
|
7874
|
-
!isBtc && !(isNewAsset && (network === "spark" || network === "arkade")) && /* @__PURE__ */
|
|
7875
|
-
/* @__PURE__ */
|
|
7876
|
-
/* @__PURE__ */
|
|
8533
|
+
!isBtc && !(isNewAsset && (network === "spark" || network === "arkade")) && /* @__PURE__ */ jsxs66("div", { children: [
|
|
8534
|
+
/* @__PURE__ */ jsx80("p", { className: "text-xxs font-bold uppercase tracking-widest text-white/35", children: "Transfer Method" }),
|
|
8535
|
+
/* @__PURE__ */ jsx80("div", { className: "mt-1.5 flex gap-1.5 overflow-x-auto no-scrollbar", children: methodOptions.map(({ method, enabled, disabledReason }) => /* @__PURE__ */ jsx80(
|
|
7877
8536
|
MethodChoiceChip,
|
|
7878
8537
|
{
|
|
7879
8538
|
method,
|
|
@@ -7887,7 +8546,7 @@ function DepositInvoiceGeneration({
|
|
|
7887
8546
|
] })
|
|
7888
8547
|
] }) });
|
|
7889
8548
|
})(),
|
|
7890
|
-
/* @__PURE__ */
|
|
8549
|
+
/* @__PURE__ */ jsx80(ScrollArea, { className: "flex-1", viewportAs: "main", viewportClassName: "space-y-2.5 px-4 py-2.5", children: isBtc && accountReceiveResult ? /* @__PURE__ */ jsx80(
|
|
7891
8550
|
BtcUnifiedReceive,
|
|
7892
8551
|
{
|
|
7893
8552
|
btcSelectedAccount,
|
|
@@ -7907,8 +8566,8 @@ function DepositInvoiceGeneration({
|
|
|
7907
8566
|
setAccountReceiveResult,
|
|
7908
8567
|
handleDone
|
|
7909
8568
|
}
|
|
7910
|
-
) : isBtc && !accountReceiveResult && loading ? /* @__PURE__ */
|
|
7911
|
-
/* @__PURE__ */
|
|
8569
|
+
) : isBtc && !accountReceiveResult && loading ? /* @__PURE__ */ jsxs66("div", { className: "flex flex-col items-center gap-4 py-10", children: [
|
|
8570
|
+
/* @__PURE__ */ jsx80(
|
|
7912
8571
|
"div",
|
|
7913
8572
|
{
|
|
7914
8573
|
className: cn(
|
|
@@ -7916,7 +8575,7 @@ function DepositInvoiceGeneration({
|
|
|
7916
8575
|
NETWORK_CONFIG[btcSelectedAccount === "SPARK" ? "spark" : btcSelectedAccount === "ARKADE" ? "arkade" : "onchain"].bg,
|
|
7917
8576
|
NETWORK_CONFIG[btcSelectedAccount === "SPARK" ? "spark" : btcSelectedAccount === "ARKADE" ? "arkade" : "onchain"].border
|
|
7918
8577
|
),
|
|
7919
|
-
children: /* @__PURE__ */
|
|
8578
|
+
children: /* @__PURE__ */ jsx80(
|
|
7920
8579
|
"span",
|
|
7921
8580
|
{
|
|
7922
8581
|
className: cn(
|
|
@@ -7928,11 +8587,11 @@ function DepositInvoiceGeneration({
|
|
|
7928
8587
|
)
|
|
7929
8588
|
}
|
|
7930
8589
|
),
|
|
7931
|
-
/* @__PURE__ */
|
|
7932
|
-
/* @__PURE__ */
|
|
7933
|
-
/* @__PURE__ */
|
|
8590
|
+
/* @__PURE__ */ jsxs66("div", { className: "space-y-1 text-center", children: [
|
|
8591
|
+
/* @__PURE__ */ jsx80("p", { className: "text-sm font-bold text-muted-foreground", children: "Generating addresses..." }),
|
|
8592
|
+
/* @__PURE__ */ jsx80("p", { className: "text-xs text-white/30", children: ACCOUNT_TITLES2[btcSelectedAccount] })
|
|
7934
8593
|
] })
|
|
7935
|
-
] }) : !address ? /* @__PURE__ */
|
|
8594
|
+
] }) : !address ? /* @__PURE__ */ jsx80(
|
|
7936
8595
|
DepositPreGeneration,
|
|
7937
8596
|
{
|
|
7938
8597
|
selectedAsset,
|
|
@@ -7956,7 +8615,7 @@ function DepositInvoiceGeneration({
|
|
|
7956
8615
|
onOpenCreateUtxos,
|
|
7957
8616
|
showReceiveSummary: !isNewRgbAsset
|
|
7958
8617
|
}
|
|
7959
|
-
) : /* @__PURE__ */
|
|
8618
|
+
) : /* @__PURE__ */ jsx80(
|
|
7960
8619
|
DepositGeneratedView,
|
|
7961
8620
|
{
|
|
7962
8621
|
network,
|
|
@@ -8006,6 +8665,7 @@ export {
|
|
|
8006
8665
|
ActivityFilterBar,
|
|
8007
8666
|
ActivityList,
|
|
8008
8667
|
ActivityNetworkFilters,
|
|
8668
|
+
ActivityRow,
|
|
8009
8669
|
ActivityTypeTabs,
|
|
8010
8670
|
AlertBanner,
|
|
8011
8671
|
AppIcon,
|
|
@@ -8015,6 +8675,7 @@ export {
|
|
|
8015
8675
|
AssetSelector,
|
|
8016
8676
|
BalanceBreakdown,
|
|
8017
8677
|
BottomNav,
|
|
8678
|
+
BottomSheet,
|
|
8018
8679
|
BtcUnifiedReceive,
|
|
8019
8680
|
Button,
|
|
8020
8681
|
Card,
|
|
@@ -8040,15 +8701,19 @@ export {
|
|
|
8040
8701
|
DialogPortal,
|
|
8041
8702
|
DialogTitle,
|
|
8042
8703
|
DialogTrigger,
|
|
8704
|
+
DisclosureCard,
|
|
8043
8705
|
DotPagination,
|
|
8044
8706
|
ErrorBoundary,
|
|
8045
8707
|
ErrorCard,
|
|
8046
8708
|
ExpandIcon,
|
|
8709
|
+
ExtensionPageFrame,
|
|
8047
8710
|
FadeOverlay,
|
|
8711
|
+
FilterChipGroup,
|
|
8048
8712
|
FilterDropdown,
|
|
8049
8713
|
HeadlineGradient,
|
|
8050
8714
|
Icon,
|
|
8051
8715
|
Icons,
|
|
8716
|
+
InfoPanel,
|
|
8052
8717
|
InlineAction,
|
|
8053
8718
|
InlineSelector,
|
|
8054
8719
|
Input,
|
|
@@ -8056,8 +8721,10 @@ export {
|
|
|
8056
8721
|
KaleidoScopeHeroAnimation,
|
|
8057
8722
|
Label2 as Label,
|
|
8058
8723
|
LightningNetworkIcon,
|
|
8724
|
+
ListSkeletonRows,
|
|
8059
8725
|
LoadingCard,
|
|
8060
8726
|
MethodChoiceChip,
|
|
8727
|
+
MetricCard,
|
|
8061
8728
|
MobileHeroAnimation,
|
|
8062
8729
|
NETWORK_CONFIG,
|
|
8063
8730
|
NetworkBadge,
|
|
@@ -8071,6 +8738,8 @@ export {
|
|
|
8071
8738
|
QrCode,
|
|
8072
8739
|
RecoveryPhraseCard,
|
|
8073
8740
|
ScrollArea,
|
|
8741
|
+
SecretRevealCard,
|
|
8742
|
+
SectionHeader,
|
|
8074
8743
|
SectionLabel,
|
|
8075
8744
|
SectionTitle,
|
|
8076
8745
|
Select,
|
|
@@ -8081,12 +8750,17 @@ export {
|
|
|
8081
8750
|
SelectSeparator,
|
|
8082
8751
|
SelectTrigger,
|
|
8083
8752
|
SelectValue,
|
|
8753
|
+
SelectableCard,
|
|
8084
8754
|
SettingItem,
|
|
8085
8755
|
SettingsActionButton,
|
|
8756
|
+
SettingsSectionCard,
|
|
8757
|
+
SettingsSelectorRow,
|
|
8086
8758
|
SettingsStatusPanel,
|
|
8087
8759
|
SettingsTile,
|
|
8760
|
+
Skeleton,
|
|
8088
8761
|
SparkNetworkIcon,
|
|
8089
8762
|
StatusBadge,
|
|
8763
|
+
StepperNumberInput,
|
|
8090
8764
|
SwapInputCard,
|
|
8091
8765
|
Switch,
|
|
8092
8766
|
Tabs,
|
|
@@ -8101,6 +8775,7 @@ export {
|
|
|
8101
8775
|
ToastTitle,
|
|
8102
8776
|
ToastViewport,
|
|
8103
8777
|
Toaster,
|
|
8778
|
+
ToneBadge,
|
|
8104
8779
|
TransactionCard,
|
|
8105
8780
|
TransferRouteCard,
|
|
8106
8781
|
WalletAssetList,
|