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/web/index.js CHANGED
@@ -5177,8 +5177,72 @@ function PageHeader({
5177
5177
  ] }) });
5178
5178
  }
5179
5179
 
5180
- // src/web/components/setting-item.tsx
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__ */ jsx52(
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__ */ jsxs39("div", { className: "flex items-center justify-between gap-3", children: [
5205
- /* @__PURE__ */ jsxs39("div", { className: "flex items-center gap-3 flex-1 min-w-0", children: [
5206
- (icon || iconSrc) && /* @__PURE__ */ jsx52(
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__ */ jsx52("img", { src: iconSrc, alt: iconAlt ?? title, className: "size-5 object-contain" }) : /* @__PURE__ */ jsx52("span", { className: "material-symbols-outlined text-icon-xl", children: icon })
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__ */ jsxs39("div", { className: "flex flex-col flex-1 min-w-0", children: [
5217
- /* @__PURE__ */ jsx52("span", { className: "font-bold text-body text-foreground tracking-wide", children: title }),
5218
- description && /* @__PURE__ */ jsx52("span", { className: "text-sm text-muted-foreground mt-0.5 font-medium", children: description })
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__ */ jsxs39("div", { className: "flex items-center gap-2 flex-shrink-0", children: [
5222
- value && /* @__PURE__ */ jsx52("span", { className: "text-xs text-muted-foreground font-mono", children: value }),
5223
- showChevron && isClickable && /* @__PURE__ */ jsx52("span", { className: "material-symbols-outlined text-icon-md text-muted-foreground group-hover:scale-110 group-hover:text-white transition-all", children: "chevron_right" })
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 jsx53 } from "react/jsx-runtime";
5295
+ import { jsx as jsx54 } from "react/jsx-runtime";
5232
5296
  function SectionLabel({ children, className }) {
5233
- return /* @__PURE__ */ jsx53(
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 jsx54, jsxs as jsxs40 } from "react/jsx-runtime";
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__ */ jsxs40("div", { className: cn("rounded-xl p-3 flex items-center gap-2", styles.container, className), children: [
5253
- /* @__PURE__ */ jsx54(Icon, { name: icon ?? styles.iconName, size: "md", className: cn("shrink-0", styles.icon) }),
5254
- /* @__PURE__ */ jsx54("div", { className: cn("text-sm", styles.icon), children })
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 jsx55, jsxs as jsxs41 } from "react/jsx-runtime";
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__ */ jsxs41("div", { className: "min-h-screen bg-background text-foreground font-display flex flex-col items-center justify-center p-6 gap-4", children: [
5275
- /* @__PURE__ */ jsx55("span", { className: "material-symbols-outlined text-danger text-icon-5xl", children: "error" }),
5276
- /* @__PURE__ */ jsx55("h2", { className: "text-lg font-bold", children: "Something went wrong" }),
5277
- /* @__PURE__ */ jsx55("p", { className: "text-sm text-muted-foreground text-center", children: this.state.error?.message ?? "An unexpected error occurred." }),
5278
- /* @__PURE__ */ jsx55(
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 jsx56, jsxs as jsxs42 } from "react/jsx-runtime";
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__ */ jsxs42("section", { className: cn("space-y-2", className), children: [
5308
- /* @__PURE__ */ jsxs42("div", { className: "flex items-center justify-between px-0.5", children: [
5309
- /* @__PURE__ */ jsx56("p", { className: "text-xs font-bold uppercase tracking-wider text-muted-foreground", children: title }),
5310
- hasWords && revealed && onRevealChange && /* @__PURE__ */ jsxs42(
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__ */ jsx56(Icon, { name: "visibility_off", className: "text-icon-md" }),
5449
+ /* @__PURE__ */ jsx59(Icon, { name: "visibility_off", className: "text-icon-md" }),
5320
5450
  "Hide"
5321
5451
  ]
5322
5452
  }
5323
5453
  )
5324
5454
  ] }),
5325
- /* @__PURE__ */ jsxs42("div", { className: "relative", children: [
5326
- hasWords ? /* @__PURE__ */ jsx56(
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__ */ jsxs42("div", { className: "flex items-center gap-2 rounded-xl bg-card px-3 py-2.5", children: [
5334
- /* @__PURE__ */ jsx56("span", { className: "w-4 shrink-0 text-xs font-bold text-muted-foreground", children: index + 1 }),
5335
- /* @__PURE__ */ jsx56("span", { className: "font-mono text-sm text-white", children: word })
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__ */ jsx56("div", { className: "rounded-xl border border-warning/30 bg-warning/10 px-4 py-3 text-sm text-warning", children: emptyMessage }),
5339
- hasWords && !revealed && onRevealChange && /* @__PURE__ */ jsx56("div", { className: "absolute inset-0 flex items-center justify-center", children: /* @__PURE__ */ jsxs42(
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__ */ jsx56(Icon, { name: "visibility", className: "text-icon-lg" }),
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__ */ jsxs42(
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__ */ jsx56(Icon, { name: "content_copy", className: "text-icon-lg" }),
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 Fragment12, jsx as jsx57, jsxs as jsxs43 } from "react/jsx-runtime";
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__ */ jsxs43(
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__ */ jsx57("style", { children: KEYFRAMES }),
5439
- /* @__PURE__ */ jsxs43("div", { style: {
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__ */ jsxs43(
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__ */ jsxs43("defs", { children: [
5458
- /* @__PURE__ */ jsxs43("radialGradient", { id: "mh-center-glow", cx: "50%", cy: "50%", r: "50%", children: [
5459
- /* @__PURE__ */ jsx57("stop", { offset: "0%", stopColor: "#0e9dff", stopOpacity: "0.3" }),
5460
- /* @__PURE__ */ jsx57("stop", { offset: "40%", stopColor: "#8a5cf6", stopOpacity: "0.15" }),
5461
- /* @__PURE__ */ jsx57("stop", { offset: "100%", stopColor: "transparent", stopOpacity: "0" })
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__ */ jsxs43("linearGradient", { id: "mh-gp", x1: "0%", y1: "0%", x2: "100%", y2: "100%", children: [
5464
- /* @__PURE__ */ jsx57("stop", { offset: "0%", stopColor: "#22c55e" }),
5465
- /* @__PURE__ */ jsx57("stop", { offset: "100%", stopColor: "#8a5cf6" })
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__ */ jsxs43("linearGradient", { id: "mh-bp", x1: "0%", y1: "0%", x2: "100%", y2: "100%", children: [
5468
- /* @__PURE__ */ jsx57("stop", { offset: "0%", stopColor: "#0e9dff" }),
5469
- /* @__PURE__ */ jsx57("stop", { offset: "100%", stopColor: "#8a5cf6" })
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__ */ jsxs43("filter", { id: "mh-glow", x: "-50%", y: "-50%", width: "200%", height: "200%", children: [
5472
- /* @__PURE__ */ jsx57("feGaussianBlur", { stdDeviation: "2.5", result: "blur" }),
5473
- /* @__PURE__ */ jsxs43("feMerge", { children: [
5474
- /* @__PURE__ */ jsx57("feMergeNode", { in: "blur" }),
5475
- /* @__PURE__ */ jsx57("feMergeNode", { in: "SourceGraphic" })
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__ */ jsx57("circle", { cx: C, cy: C, r: ORBIT_R, fill: "none", stroke: "#0e9dff", strokeWidth: "1", strokeOpacity: "0.25", opacity: "0.4", children: anim && /* @__PURE__ */ jsxs43(Fragment12, { children: [
5480
- /* @__PURE__ */ jsx57("animate", { attributeName: "r", values: `${ORBIT_R};${Math.round(ORBIT_R * 1.12)};${ORBIT_R}`, dur: "2.5s", repeatCount: "indefinite" }),
5481
- /* @__PURE__ */ jsx57("animate", { attributeName: "opacity", values: "0.4;0;0.4", dur: "2.5s", repeatCount: "indefinite" })
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__ */ jsx57("circle", { cx: C, cy: C, r: 80, fill: "none", stroke: "rgba(255,255,255,0.1)", strokeWidth: "1", strokeDasharray: "4 4" }),
5484
- /* @__PURE__ */ jsxs43("g", { children: [
5485
- anim && /* @__PURE__ */ jsx57(
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__ */ jsxs43("g", { children: [
5507
- /* @__PURE__ */ jsx57(
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__ */ jsx57("animate", { attributeName: "stroke-dashoffset", from: "0", to: "-12", dur: `${1.5 + i * 0.2}s`, repeatCount: "indefinite" })
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__ */ jsx57("circle", { r: "2", fill: color, opacity: "0", children: anim && /* @__PURE__ */ jsxs43(Fragment12, { children: [
5522
- /* @__PURE__ */ jsx57("animate", { attributeName: "cx", values: `${x1};${x2}`, dur, repeatCount: "indefinite" }),
5523
- /* @__PURE__ */ jsx57("animate", { attributeName: "cy", values: `${y1};${y2}`, dur, repeatCount: "indefinite" }),
5524
- /* @__PURE__ */ jsx57("animate", { attributeName: "opacity", values: "0;0.85;0", dur, repeatCount: "indefinite" }),
5525
- /* @__PURE__ */ jsx57("animate", { attributeName: "r", values: "1.5;2.5;1.5", dur, repeatCount: "indefinite" })
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__ */ jsx57("circle", { cx: C, cy: C, r: "42", fill: "url(#mh-center-glow)", children: anim && /* @__PURE__ */ jsx57("animate", { attributeName: "r", values: "38;46;38", dur: "4s", repeatCount: "indefinite" }) }),
5531
- /* @__PURE__ */ jsx57("circle", { cx: C, cy: C, r: "29", fill: "none", stroke: "url(#mh-bp)", strokeWidth: "1", opacity: "0", children: anim && /* @__PURE__ */ jsxs43(Fragment12, { children: [
5532
- /* @__PURE__ */ jsx57("animate", { attributeName: "r", values: "27;38", dur: "3s", repeatCount: "indefinite" }),
5533
- /* @__PURE__ */ jsx57("animate", { attributeName: "opacity", values: "0.4;0", dur: "3s", repeatCount: "indefinite" })
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__ */ jsx57("circle", { cx: C, cy: C, r: "27", fill: "none", stroke: "url(#mh-gp)", strokeWidth: "0.8", opacity: "0", children: anim && /* @__PURE__ */ jsxs43(Fragment12, { children: [
5536
- /* @__PURE__ */ jsx57("animate", { attributeName: "r", values: "27;36", dur: "3s", repeatCount: "indefinite", begin: "1.5s" }),
5537
- /* @__PURE__ */ jsx57("animate", { attributeName: "opacity", values: "0.3;0", dur: "3s", repeatCount: "indefinite", begin: "1.5s" })
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__ */ jsx57("g", { transform: `translate(${C},${C})`, children: /* @__PURE__ */ jsxs43("g", { children: [
5540
- anim && /* @__PURE__ */ jsx57(
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__ */ jsx57("path", { d: hexPath(34), fill: "none", stroke: "url(#mh-gp)", strokeWidth: "1.5", opacity: "0.4", filter: "url(#mh-glow)", children: anim && /* @__PURE__ */ jsxs43(Fragment12, { children: [
5553
- /* @__PURE__ */ jsx57("animate", { attributeName: "opacity", values: "0.3;0.65;0.3", dur: "3s", repeatCount: "indefinite" }),
5554
- /* @__PURE__ */ jsx57("animate", { attributeName: "stroke-width", values: "1.5;2.5;1.5", dur: "3s", repeatCount: "indefinite" })
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__ */ jsx57("g", { transform: `translate(${C},${C})`, children: /* @__PURE__ */ jsxs43("g", { children: [
5558
- anim && /* @__PURE__ */ jsx57(
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__ */ jsx57("path", { d: hexPath(32), fill: "rgba(10,15,30,0.75)", stroke: "rgba(255,255,255,0.08)", strokeWidth: "0.5" })
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__ */ jsxs43("g", { transform: `translate(${C - 19},${C - 19}) scale(0.182)`, children: [
5573
- /* @__PURE__ */ jsx57("path", { d: "M69.7141 207.3H0.908203L35.3243 172.936L69.7141 207.3Z", fill: "#6F32FF" }),
5574
- /* @__PURE__ */ jsx57("path", { d: "M138.441 0.96106V69.767L104.078 35.3508L138.441 0.96106Z", fill: "#17B581" }),
5575
- /* @__PURE__ */ jsx57("path", { d: "M138.415 138.547V207.352L104.051 172.936L138.415 138.547Z", fill: "#17B581" }),
5576
- /* @__PURE__ */ jsx57("path", { d: "M138.441 69.7406V0.96106L172.804 35.3772L138.441 69.767V69.7406Z", fill: "#17B581" }),
5577
- /* @__PURE__ */ jsx57("path", { d: "M69.6614 138.494V69.6879L104.025 104.104L69.6614 138.494Z", fill: "#15E99A" }),
5578
- /* @__PURE__ */ jsx57("path", { d: "M69.6615 69.7142V138.52L35.2981 104.104L69.6615 69.7142Z", fill: "#15E99A" }),
5579
- /* @__PURE__ */ jsx57("path", { d: "M138.467 207.379V138.573L172.831 172.989L138.467 207.379Z", fill: "#17B581" }),
5580
- /* @__PURE__ */ jsx57("path", { d: "M0.908203 0.908325H69.7141L35.298 35.2718L0.908203 0.908325Z", fill: "#6F32FF" }),
5581
- /* @__PURE__ */ jsx57("path", { d: "M207.22 207.3H138.415L172.831 172.936L207.22 207.3Z", fill: "#17B581" }),
5582
- /* @__PURE__ */ jsx57("path", { d: "M138.415 0.987427H207.22L172.804 35.3509L138.415 0.987427Z", fill: "#17B581" }),
5583
- /* @__PURE__ */ jsx57("path", { d: "M138.467 69.7143H69.6614L104.078 35.3508L138.467 69.7143Z", fill: "#17B581" }),
5584
- /* @__PURE__ */ jsx57("path", { d: "M69.635 138.494H138.441L104.025 172.857L69.635 138.494Z", fill: "#17B581" }),
5585
- /* @__PURE__ */ jsx57("path", { d: "M138.415 138.494H69.635L104.025 104.157L138.388 138.494H138.415Z", fill: "#15E99A" }),
5586
- /* @__PURE__ */ jsx57("path", { d: "M138.415 69.7142L104.051 104.051L69.6614 69.7142H138.441H138.415Z", fill: "#15E99A" })
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__ */ jsx57("div", { style: {
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__ */ jsx57(
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__ */ jsx57("div", { style: {
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__ */ jsx57(
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 Fragment13, jsx as jsx58, jsxs as jsxs44 } from "react/jsx-runtime";
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__ */ jsx58(
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__ */ jsxs44(
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__ */ jsxs44("defs", { children: [
5765
- /* @__PURE__ */ jsxs44("linearGradient", { id: "kh-grad-a", x1: "0%", y1: "0%", x2: "100%", y2: "100%", children: [
5766
- /* @__PURE__ */ jsx58("stop", { offset: "0%", children: anim && /* @__PURE__ */ jsx58("animate", { attributeName: "stop-color", values: "#22c55e;#8a5cf6;#06b6d4;#F7931A;#22c55e", dur: "10s", repeatCount: "indefinite" }) }),
5767
- /* @__PURE__ */ jsx58("stop", { offset: "100%", children: anim && /* @__PURE__ */ jsx58("animate", { attributeName: "stop-color", values: "#8a5cf6;#F7931A;#22c55e;#06b6d4;#8a5cf6", dur: "10s", repeatCount: "indefinite" }) })
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__ */ jsxs44("linearGradient", { id: "kh-grad-b", x1: "100%", y1: "0%", x2: "0%", y2: "100%", children: [
5770
- /* @__PURE__ */ jsx58("stop", { offset: "0%", children: anim && /* @__PURE__ */ jsx58("animate", { attributeName: "stop-color", values: "#06b6d4;#22c55e;#F7931A;#8a5cf6;#06b6d4", dur: "8s", repeatCount: "indefinite" }) }),
5771
- /* @__PURE__ */ jsx58("stop", { offset: "100%", children: anim && /* @__PURE__ */ jsx58("animate", { attributeName: "stop-color", values: "#F7931A;#06b6d4;#8a5cf6;#22c55e;#F7931A", dur: "8s", repeatCount: "indefinite" }) })
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__ */ jsxs44("linearGradient", { id: "kh-grad-c", x1: "50%", y1: "0%", x2: "50%", y2: "100%", children: [
5774
- /* @__PURE__ */ jsx58("stop", { offset: "0%", children: anim && /* @__PURE__ */ jsx58("animate", { attributeName: "stop-color", values: "#0e9dff;#8a5cf6;#15E99A;#0e9dff", dur: "6s", repeatCount: "indefinite" }) }),
5775
- /* @__PURE__ */ jsx58("stop", { offset: "100%", children: anim && /* @__PURE__ */ jsx58("animate", { attributeName: "stop-color", values: "#8a5cf6;#15E99A;#0e9dff;#8a5cf6", dur: "6s", repeatCount: "indefinite" }) })
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__ */ jsxs44("linearGradient", { id: "kh-gp", x1: "0%", y1: "0%", x2: "100%", y2: "100%", children: [
5778
- /* @__PURE__ */ jsx58("stop", { offset: "0%", stopColor: "#22c55e" }),
5779
- /* @__PURE__ */ jsx58("stop", { offset: "100%", stopColor: "#8a5cf6" })
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__ */ jsxs44("linearGradient", { id: "kh-oc", x1: "0%", y1: "0%", x2: "100%", y2: "100%", children: [
5782
- /* @__PURE__ */ jsx58("stop", { offset: "0%", stopColor: "#F7931A" }),
5783
- /* @__PURE__ */ jsx58("stop", { offset: "100%", stopColor: "#06b6d4" })
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__ */ jsxs44("linearGradient", { id: "kh-bp", x1: "0%", y1: "0%", x2: "100%", y2: "100%", children: [
5786
- /* @__PURE__ */ jsx58("stop", { offset: "0%", stopColor: "#0e9dff" }),
5787
- /* @__PURE__ */ jsx58("stop", { offset: "100%", stopColor: "#8a5cf6" })
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__ */ jsxs44("radialGradient", { id: "kh-center-glow", cx: "50%", cy: "50%", r: "50%", children: [
5790
- /* @__PURE__ */ jsx58("stop", { offset: "0%", stopColor: "#0e9dff", stopOpacity: "0.3" }),
5791
- /* @__PURE__ */ jsx58("stop", { offset: "40%", stopColor: "#8a5cf6", stopOpacity: "0.15" }),
5792
- /* @__PURE__ */ jsx58("stop", { offset: "100%", stopColor: "transparent", stopOpacity: "0" })
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__ */ jsxs44("radialGradient", { id: "kh-haze", cx: "50%", cy: "50%", r: "50%", children: [
5795
- /* @__PURE__ */ jsx58("stop", { offset: "0%", stopColor: "transparent", stopOpacity: "0" }),
5796
- /* @__PURE__ */ jsx58("stop", { offset: "60%", stopColor: "#0e9dff", stopOpacity: "0.03" }),
5797
- /* @__PURE__ */ jsx58("stop", { offset: "100%", stopColor: "#8a5cf6", stopOpacity: "0.06" })
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__ */ jsxs44("filter", { id: "kh-glow", x: "-50%", y: "-50%", width: "200%", height: "200%", children: [
5800
- /* @__PURE__ */ jsx58("feGaussianBlur", { stdDeviation: "3", result: "blur" }),
5801
- /* @__PURE__ */ jsxs44("feMerge", { children: [
5802
- /* @__PURE__ */ jsx58("feMergeNode", { in: "blur" }),
5803
- /* @__PURE__ */ jsx58("feMergeNode", { in: "SourceGraphic" })
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__ */ jsxs44("filter", { id: "kh-glow-lg", x: "-50%", y: "-50%", width: "200%", height: "200%", children: [
5807
- /* @__PURE__ */ jsx58("feGaussianBlur", { stdDeviation: "8", result: "blur" }),
5808
- /* @__PURE__ */ jsxs44("feMerge", { children: [
5809
- /* @__PURE__ */ jsx58("feMergeNode", { in: "blur" }),
5810
- /* @__PURE__ */ jsx58("feMergeNode", { in: "SourceGraphic" })
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__ */ jsx58("circle", { cx: c, cy: c, r: "248", fill: "url(#kh-haze)" }),
5815
- /* @__PURE__ */ jsxs44("g", { transform: px(20), children: [
5816
- /* @__PURE__ */ jsxs44("g", { children: [
5817
- anim && /* @__PURE__ */ jsx58(
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__ */ jsxs44("g", { transform: `translate(${c + outerR1 * Math.cos(a)},${c + outerR1 * Math.sin(a)})`, children: [
5831
- /* @__PURE__ */ jsx58("path", { d: hexPath2(40), fill: "url(#kh-grad-a)", opacity: 0.08 + i % 3 * 0.04 }),
5832
- /* @__PURE__ */ jsx58("path", { d: hexPath2(40), fill: "none", stroke: "url(#kh-grad-a)", strokeWidth: "0.5", opacity: 0.15, children: anim && /* @__PURE__ */ jsx58("animate", { attributeName: "opacity", values: "0.1;0.25;0.1", dur: `${4 + i * 0.3}s`, repeatCount: "indefinite" }) })
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__ */ jsx58(
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__ */ jsx58(
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__ */ jsx58("animate", { attributeName: "opacity", values: "0.08;0.25;0.08", dur: `${2 + i % 3 * 0.7}s`, repeatCount: "indefinite" })
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__ */ jsxs44("g", { children: [
5865
- anim && /* @__PURE__ */ jsx58(
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__ */ jsxs44("g", { transform: `translate(${c + outerR2 * Math.cos(a)},${c + outerR2 * Math.sin(a)})`, children: [
5879
- /* @__PURE__ */ jsx58("path", { d: hexPath2(30), fill: "url(#kh-grad-b)", opacity: 0.06 + i % 2 * 0.04 }),
5880
- /* @__PURE__ */ jsx58("path", { d: hexPath2(30), fill: "none", stroke: "url(#kh-grad-b)", strokeWidth: "0.5", opacity: 0.12 })
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__ */ jsx58(
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__ */ jsx58("animate", { attributeName: "opacity", values: "0.05;0.15;0.05", dur: `${3.5 + i * 0.4}s`, repeatCount: "indefinite" })
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__ */ jsxs44("g", { children: [
5899
- anim && /* @__PURE__ */ jsx58(
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__ */ jsx58(
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__ */ jsx58("animate", { attributeName: "opacity", values: "0.03;0.1;0.03", dur: `${5 + i % 4 * 0.8}s`, repeatCount: "indefinite" })
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__ */ jsxs44("g", { transform: px(14), children: [
5928
- /* @__PURE__ */ jsxs44("g", { children: [
5929
- anim && /* @__PURE__ */ jsx58(
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__ */ jsxs44("g", { transform: `translate(${c + midR * Math.cos(a)},${c + midR * Math.sin(a)})`, children: [
5943
- /* @__PURE__ */ jsx58("path", { d: hexPath2(12), fill: "url(#kh-grad-c)", opacity: 0.08 + i % 3 * 0.03 }),
5944
- /* @__PURE__ */ jsx58("path", { d: hexPath2(12), fill: "none", stroke: "url(#kh-grad-c)", strokeWidth: "0.4", opacity: "0.12", children: anim && /* @__PURE__ */ jsx58("animate", { attributeName: "opacity", values: "0.08;0.2;0.08", dur: `${3 + i % 4 * 0.5}s`, repeatCount: "indefinite" }) })
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__ */ jsx58(
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__ */ jsx58("animate", { attributeName: "stroke-dashoffset", from: "0", to: "-16", dur: `${3 + i * 0.2}s`, repeatCount: "indefinite" })
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__ */ jsxs44("g", { transform: px(10), children: [
5971
- /* @__PURE__ */ jsx58("circle", { cx: c, cy: c, r: orbitR, fill: "none", stroke: "rgba(255,255,255,0.05)", strokeWidth: "1", strokeDasharray: "3 5", children: anim && /* @__PURE__ */ jsx58("animateTransform", { attributeName: "transform", type: "rotate", from: `0 ${c} ${c}`, to: `360 ${c} ${c}`, dur: "90s", repeatCount: "indefinite" }) }),
5972
- /* @__PURE__ */ jsx58("circle", { cx: c, cy: c, r: orbitR + 4, fill: "none", stroke: "rgba(255,255,255,0.03)", strokeWidth: "0.5" }),
5973
- /* @__PURE__ */ jsxs44("g", { children: [
5974
- anim && /* @__PURE__ */ jsx58(
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__ */ jsxs44("g", { children: [
5990
- /* @__PURE__ */ jsx58(
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__ */ jsx58("animate", { attributeName: "stroke-dashoffset", from: "0", to: "-12", dur: `${1.5 + i * 0.2}s`, repeatCount: "indefinite" })
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__ */ jsx58("circle", { r: "2.5", fill: PROTOCOLS2[i].color, opacity: "0", children: anim && /* @__PURE__ */ jsxs44(Fragment13, { children: [
6005
- /* @__PURE__ */ jsx58("animate", { attributeName: "cx", values: `${c + dx * 52};${pos.x}`, dur: `${2 + i * 0.3}s`, repeatCount: "indefinite" }),
6006
- /* @__PURE__ */ jsx58("animate", { attributeName: "cy", values: `${c + dy * 52};${pos.y}`, dur: `${2 + i * 0.3}s`, repeatCount: "indefinite" }),
6007
- /* @__PURE__ */ jsx58("animate", { attributeName: "opacity", values: "0;0.8;0", dur: `${2 + i * 0.3}s`, repeatCount: "indefinite" }),
6008
- /* @__PURE__ */ jsx58("animate", { attributeName: "r", values: "1.5;3;1.5", dur: `${2 + i * 0.3}s`, repeatCount: "indefinite" })
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__ */ jsx58("g", { transform: `translate(${pos.x},${pos.y})`, children: /* @__PURE__ */ jsxs44(
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__ */ jsx58(
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__ */ jsx58(
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__ */ jsxs44(Fragment13, { children: [
6045
- /* @__PURE__ */ jsx58("animate", { attributeName: "r", values: `${iconR};${iconR + 12}`, dur: `${3 + i * 0.5}s`, repeatCount: "indefinite", begin: `${i * 0.4}s` }),
6046
- /* @__PURE__ */ jsx58("animate", { attributeName: "opacity", values: "0.5;0", dur: `${3 + i * 0.5}s`, repeatCount: "indefinite", begin: `${i * 0.4}s` })
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__ */ jsx58(
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__ */ jsx58("animate", { attributeName: "opacity", values: "0.15;0.4;0.15", dur: `${3 + i * 0.4}s`, repeatCount: "indefinite" })
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__ */ jsx58(
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__ */ jsx58("animate", { attributeName: "opacity", values: "0.2;0.5;0.2", dur: `${2.5 + i * 0.3}s`, repeatCount: "indefinite" })
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__ */ jsx58(
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__ */ jsx58("circle", { cx: "0", cy: "0", r: iconR - 2, fill: proto.color, opacity: "0.06" }),
6088
- /* @__PURE__ */ jsx58("foreignObject", { x: -iconR, y: -iconR, width: iconR * 2, height: iconR * 2, children: /* @__PURE__ */ jsx58(
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__ */ jsxs44("g", { opacity: isHovered ? 1 : 0, style: { transition: "opacity 0.2s ease" }, children: [
6097
- /* @__PURE__ */ jsx58(
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__ */ jsx58(
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__ */ jsxs44("g", { transform: px(5), children: [
6132
- /* @__PURE__ */ jsxs44("g", { children: [
6133
- anim && /* @__PURE__ */ jsx58(
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__ */ jsx58(
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__ */ jsx58("animate", { attributeName: "opacity", values: "0.1;0.28;0.1", dur: `${2.8 + i * 0.35}s`, repeatCount: "indefinite" })
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__ */ jsx58(
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__ */ jsx58("animate", { attributeName: "opacity", values: "0.06;0.18;0.06", dur: `${3.2 + i * 0.3}s`, repeatCount: "indefinite" })
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__ */ jsx58(
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__ */ jsx58("animate", { attributeName: "opacity", values: "0.1;0.35;0.1", dur: `${2 + i % 4 * 0.5}s`, repeatCount: "indefinite" })
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__ */ jsxs44("g", { children: [
6190
- anim && /* @__PURE__ */ jsx58(
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__ */ jsx58(
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__ */ jsx58("animate", { attributeName: "opacity", values: "0.06;0.18;0.06", dur: `${2.5 + i * 0.3}s`, repeatCount: "indefinite" })
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__ */ jsx58("g", { transform: px(18), children: Array.from({ length: 16 }, (_, i) => {
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__ */ jsx58(
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__ */ jsxs44(Fragment13, { children: [
6232
- /* @__PURE__ */ jsx58("animate", { attributeName: "opacity", values: "0;0.6;0", dur: `${3 + i % 5 * 0.8}s`, repeatCount: "indefinite", begin: `${i % 7 * 0.5}s` }),
6233
- /* @__PURE__ */ jsx58("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` }),
6234
- /* @__PURE__ */ jsx58("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` })
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__ */ jsxs44("g", { children: [
6241
- /* @__PURE__ */ jsx58("circle", { cx: c, cy: c, r: "75", fill: "url(#kh-center-glow)", children: anim && /* @__PURE__ */ jsx58("animate", { attributeName: "r", values: "70;80;70", dur: "4s", repeatCount: "indefinite" }) }),
6242
- /* @__PURE__ */ jsx58("circle", { cx: c, cy: c, r: "52", fill: "none", stroke: "url(#kh-bp)", strokeWidth: "1", opacity: "0", children: anim && /* @__PURE__ */ jsxs44(Fragment13, { children: [
6243
- /* @__PURE__ */ jsx58("animate", { attributeName: "r", values: "48;65", dur: "3s", repeatCount: "indefinite" }),
6244
- /* @__PURE__ */ jsx58("animate", { attributeName: "opacity", values: "0.4;0", dur: "3s", repeatCount: "indefinite" })
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__ */ jsx58("circle", { cx: c, cy: c, r: "48", fill: "none", stroke: "url(#kh-gp)", strokeWidth: "0.8", opacity: "0", children: anim && /* @__PURE__ */ jsxs44(Fragment13, { children: [
6247
- /* @__PURE__ */ jsx58("animate", { attributeName: "r", values: "48;60", dur: "3s", repeatCount: "indefinite", begin: "1.5s" }),
6248
- /* @__PURE__ */ jsx58("animate", { attributeName: "opacity", values: "0.3;0", dur: "3s", repeatCount: "indefinite", begin: "1.5s" })
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__ */ jsx58(
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__ */ jsxs44(Fragment13, { children: [
6261
- /* @__PURE__ */ jsx58("animate", { attributeName: "opacity", values: "0.3;0.65;0.3", dur: "3s", repeatCount: "indefinite" }),
6262
- /* @__PURE__ */ jsx58("animate", { attributeName: "stroke-width", values: "1.5;2.5;1.5", dur: "3s", repeatCount: "indefinite" })
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__ */ jsx58(
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__ */ jsxs44("g", { transform: `translate(${c - 34},${c - 34}) scale(0.325)`, children: [
6277
- /* @__PURE__ */ jsx58("path", { d: "M69.7141 207.3H0.908203L35.3243 172.936L69.7141 207.3Z", fill: "#6F32FF" }),
6278
- /* @__PURE__ */ jsx58("path", { d: "M138.441 0.96106V69.767L104.078 35.3508L138.441 0.96106Z", fill: "#17B581" }),
6279
- /* @__PURE__ */ jsx58("path", { d: "M138.415 138.547V207.352L104.051 172.936L138.415 138.547Z", fill: "#17B581" }),
6280
- /* @__PURE__ */ jsx58("path", { d: "M138.441 69.7406V0.96106L172.804 35.3772L138.441 69.767V69.7406Z", fill: "#17B581" }),
6281
- /* @__PURE__ */ jsx58("path", { d: "M69.6614 138.494V69.6879L104.025 104.104L69.6614 138.494Z", fill: "#15E99A" }),
6282
- /* @__PURE__ */ jsx58("path", { d: "M69.6615 69.7142V138.52L35.2981 104.104L69.6615 69.7142Z", fill: "#15E99A" }),
6283
- /* @__PURE__ */ jsx58("path", { d: "M138.467 207.379V138.573L172.831 172.989L138.467 207.379Z", fill: "#17B581" }),
6284
- /* @__PURE__ */ jsx58("path", { d: "M0.908203 0.908325H69.7141L35.298 35.2718L0.908203 0.908325Z", fill: "#6F32FF" }),
6285
- /* @__PURE__ */ jsx58("path", { d: "M207.22 207.3H138.415L172.831 172.936L207.22 207.3Z", fill: "#17B581" }),
6286
- /* @__PURE__ */ jsx58("path", { d: "M138.415 0.987427H207.22L172.804 35.3509L138.415 0.987427Z", fill: "#17B581" }),
6287
- /* @__PURE__ */ jsx58("path", { d: "M138.467 69.7143H69.6614L104.078 35.3508L138.467 69.7143Z", fill: "#17B581" }),
6288
- /* @__PURE__ */ jsx58("path", { d: "M69.635 138.494H138.441L104.025 172.857L69.635 138.494Z", fill: "#17B581" }),
6289
- /* @__PURE__ */ jsx58("path", { d: "M138.415 138.494H69.635L104.025 104.157L138.388 138.494H138.415Z", fill: "#15E99A" }),
6290
- /* @__PURE__ */ jsx58("path", { d: "M138.415 69.7142L104.051 104.051L69.6614 69.7142H138.441H138.415Z", fill: "#15E99A" })
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 Fragment14, jsx as jsx59, jsxs as jsxs45 } from "react/jsx-runtime";
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__ */ jsx59("span", { className: "material-symbols-outlined text-icon-xs leading-none", children: "link" })
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__ */ jsx59("img", { src: "/icons/lightning/lightning.svg", className: "size-3", alt: "" })
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__ */ jsx59("img", { src: "/icons/spark/Asterisk/Spark Asterisk White.svg", className: "h-3 w-3", alt: "" })
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__ */ jsx59("img", { src: "/icons/arkade/arkade-icon.svg", className: "h-3 w-3 rounded-sm", alt: "" })
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__ */ jsx59("img", { src: "/icons/rgb/rgb-logo.svg", alt: "", className: "h-2.5 w-2.5 object-contain" })
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__ */ jsx59(
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__ */ jsx59("img", { src: "/icons/arkade/arkade-icon.svg", alt: "", className: "h-2.5 w-2.5 rounded-[1px] object-contain" })
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__ */ jsxs45(
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__ */ jsxs45(Fragment14, { children: [
6517
- /* @__PURE__ */ jsx59("span", { className: "material-symbols-outlined animate-spin text-icon-sm", children: "progress_activity" }),
6518
- /* @__PURE__ */ jsx59("span", { children: "Waiting for payment..." })
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__ */ jsxs45(Fragment14, { children: [
6521
- /* @__PURE__ */ jsx59("span", { className: "material-symbols-outlined text-icon-sm", children: "check_circle" }),
6522
- /* @__PURE__ */ jsx59("span", { children: "Payment received!" })
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__ */ jsxs45(Fragment14, { children: [
6525
- /* @__PURE__ */ jsx59("span", { className: "material-symbols-outlined text-icon-sm", children: "cancel" }),
6526
- /* @__PURE__ */ jsxs45("span", { children: [
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__ */ jsx59("div", { className: "absolute inset-0 flex items-center justify-center rounded-2xl bg-background/80", children: /* @__PURE__ */ jsxs45("div", { className: "flex flex-col items-center gap-2", children: [
6537
- /* @__PURE__ */ jsx59("div", { className: "flex size-14 items-center justify-center rounded-full bg-primary", children: /* @__PURE__ */ jsx59("span", { className: "material-symbols-outlined text-icon-4xl text-background", children: "check" }) }),
6538
- /* @__PURE__ */ jsx59("span", { className: "text-sm font-bold text-primary", children: "Received!" })
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__ */ jsx59(
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__ */ jsx59(Icon, { name: "check", size: "sm" }) : /* @__PURE__ */ jsx59(Icon, { name: "content_copy", size: "sm" })
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__ */ jsxs45(
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__ */ jsx59("span", { children: meta.shortLabel })
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__ */ jsxs45("div", { className: cn("overflow-hidden rounded-xl border border-white/8 bg-white/3 transition-all", className), children: [
6621
- /* @__PURE__ */ jsxs45(
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__ */ jsx59(Icon, { name: "info", size: "xs", className: "text-white/40" }),
6630
- /* @__PURE__ */ jsx59("span", { className: "flex-1 text-xxs font-bold uppercase tracking-widest text-white/50", children: "What are these networks?" }),
6631
- /* @__PURE__ */ jsx59(Icon, { name: open ? "expand_less" : "expand_more", size: "xs", className: "text-white/40" })
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__ */ jsx59("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) => {
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__ */ jsxs45("div", { className: "space-y-1", children: [
6639
- /* @__PURE__ */ jsxs45("div", { className: "flex items-center gap-1.5", children: [
6640
- /* @__PURE__ */ jsx59("div", { className: cn("flex size-4 flex-shrink-0 items-center justify-center rounded-md", cfg.bg), children: cfg.icon }),
6641
- /* @__PURE__ */ jsx59("span", { className: cn("text-xxs font-bold uppercase tracking-widest", cfg.text), children: info.title })
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__ */ jsx59("p", { className: "pl-5 text-tiny leading-snug text-muted-foreground", children: info.detail }),
6644
- /* @__PURE__ */ jsx59("ul", { className: "space-y-0.5 pl-5", children: info.bullets.map((bullet) => /* @__PURE__ */ jsxs45("li", { className: "flex items-start gap-1.5 text-xxs leading-snug text-white/50", children: [
6645
- /* @__PURE__ */ jsx59("span", { className: "mt-[1px] text-white/30", children: "-" }),
6646
- /* @__PURE__ */ jsx59("span", { children: bullet })
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__ */ jsxs45(
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__ */ jsx59("span", { className: "text-xxs font-normal opacity-60", children: disabledReason })
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 jsx60, jsxs as jsxs46 } from "react/jsx-runtime";
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__ */ jsx60("div", { className: "flex h-screen flex-col overflow-hidden bg-background font-display text-foreground", children: /* @__PURE__ */ jsxs46("div", { className: "flex flex-1 flex-col items-center justify-center p-6 text-center", children: [
6694
- /* @__PURE__ */ jsxs46("div", { className: "relative mb-8", children: [
6695
- /* @__PURE__ */ jsx60("div", { className: "absolute inset-0 scale-150 animate-pulse rounded-full bg-primary/20 blur-2xl" }),
6696
- /* @__PURE__ */ jsx60("div", { className: "relative flex size-28 items-center justify-center rounded-full border-2 border-primary/40 bg-primary/10 shadow-sm", children: /* @__PURE__ */ jsx60("span", { className: "material-symbols-outlined text-display text-primary animate-in zoom-in-50 duration-500", children: "check_circle" }) })
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__ */ jsx60("h1", { className: "mb-2 text-2xl font-bold text-white", children: title }),
6699
- /* @__PURE__ */ jsx60("p", { className: "mb-8 max-w-[260px] text-sm leading-relaxed text-muted-foreground", children: subtitle }),
6700
- /* @__PURE__ */ jsxs46("div", { className: "mb-10 flex items-center gap-3 rounded-2xl border bg-white/5 px-4 py-3", children: [
6701
- /* @__PURE__ */ jsx60(AssetIcon, { ticker: displayTicker, size: 36 }),
6702
- /* @__PURE__ */ jsxs46("div", { className: "text-left", children: [
6703
- /* @__PURE__ */ jsx60("p", { className: "text-sm font-bold text-white", children: displayTicker }),
6704
- /* @__PURE__ */ jsx60("p", { className: "text-xs text-white/40", children: selectedAsset?.name ?? displayTicker })
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__ */ jsxs46(
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__ */ jsx60("span", { children: networkLabel })
7376
+ /* @__PURE__ */ jsx74("span", { children: networkLabel })
6718
7377
  ]
6719
7378
  }
6720
7379
  )
6721
7380
  ] }),
6722
- /* @__PURE__ */ jsxs46(Button, { variant: "cta", size: "cta", onClick: handleDone, children: [
6723
- /* @__PURE__ */ jsx60("span", { className: "material-symbols-outlined text-icon-lg", children: "home" }),
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 jsx61, jsxs as jsxs47 } from "react/jsx-runtime";
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__ */ jsx61("span", { className: "material-symbols-outlined text-icon-lg", children: "link" }),
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__ */ jsx61("img", { src: "/icons/spark/Asterisk/Spark Asterisk White.svg", alt: "", className: "h-[18px]" }),
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__ */ jsx61("img", { src: "/icons/arkade/arkade-icon.svg", alt: "", className: "h-[18px]" }),
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__ */ jsx61("div", { className: "fixed inset-0 z-50 flex items-end justify-center bg-black/60 backdrop-blur-sm", children: /* @__PURE__ */ jsxs47("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: [
6773
- /* @__PURE__ */ jsx61("div", { className: "-mt-1 mb-1 flex justify-center", children: /* @__PURE__ */ jsx61("div", { className: "h-1 w-10 rounded-full bg-white/15" }) }),
6774
- /* @__PURE__ */ jsxs47("div", { children: [
6775
- /* @__PURE__ */ jsx61("p", { className: "text-sm font-bold text-white", children: "Choose your default network" }),
6776
- /* @__PURE__ */ jsxs47("p", { className: "mt-0.5 text-tiny text-white/45", children: [
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__ */ jsx61("span", { className: "font-semibold text-muted-foreground", children: assetTicker }),
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__ */ jsx61("div", { className: "space-y-2", children: options.map((option) => {
7442
+ /* @__PURE__ */ jsx75("div", { className: "space-y-2", children: options.map((option) => {
6784
7443
  const isSuggested = option.account === suggestedAccount;
6785
- return /* @__PURE__ */ jsxs47(
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__ */ jsx61(
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__ */ jsxs47("div", { className: "min-w-0 flex-1", children: [
6807
- /* @__PURE__ */ jsxs47("div", { className: "flex items-center gap-2", children: [
6808
- /* @__PURE__ */ jsx61("span", { className: cn("text-xs font-bold", isSuggested ? option.accentText : "text-white"), children: option.label }),
6809
- isSuggested && /* @__PURE__ */ jsx61(
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__ */ jsx61("p", { className: "mt-0.5 text-xxs leading-snug text-white/45", children: option.description })
7480
+ /* @__PURE__ */ jsx75("p", { className: "mt-0.5 text-xxs leading-snug text-white/45", children: option.description })
6822
7481
  ] }),
6823
- /* @__PURE__ */ jsx61(
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 jsx62, jsxs as jsxs48 } from "react/jsx-runtime";
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__ */ jsxs48("div", { className: "space-y-3 animate-in fade-in zoom-in-95 duration-300", children: [
6869
- /* @__PURE__ */ jsxs48("div", { className: "flex flex-col gap-1.5 rounded-xl border border-white/8 bg-white/3 p-2.5", children: [
6870
- /* @__PURE__ */ jsx62("div", { className: "flex items-center justify-between px-1", children: /* @__PURE__ */ jsx62("label", { className: "text-xxs font-bold uppercase tracking-widest text-white/40", children: "Amount (optional)" }) }),
6871
- /* @__PURE__ */ jsx62(
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__ */ jsxs48("p", { className: "flex items-center gap-1 text-xxs text-warning/70", children: [
6883
- /* @__PURE__ */ jsx62("span", { className: "material-symbols-outlined animate-spin text-icon-xxs", children: "progress_activity" }),
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__ */ jsxs48("div", { className: "flex flex-col items-center gap-3", children: [
6888
- /* @__PURE__ */ jsxs48(
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__ */ jsx62(QrCode, { value: accountReceiveResult.qrValue, size: 200 }),
6898
- isInvoicePaid && /* @__PURE__ */ jsx62(PaidOverlay, {})
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__ */ jsxs48(
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__ */ jsx62(Icon, { name: isQrCopied ? "check" : "content_copy", size: "xs" }),
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__ */ jsx62(
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__ */ jsxs48("div", { className: "space-y-1.5", children: [
6934
- /* @__PURE__ */ jsx62("p", { className: "text-xxs font-bold uppercase tracking-widest text-white/30", children: "Available Addresses" }),
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__ */ jsxs48(
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__ */ jsx62("div", { className: cn("flex size-5 flex-shrink-0 items-center justify-center rounded-md", network.bg), children: network.icon }),
6949
- /* @__PURE__ */ jsxs48("div", { className: "min-w-0 flex-1", children: [
6950
- /* @__PURE__ */ jsxs48("div", { className: "flex items-center gap-1.5", children: [
6951
- /* @__PURE__ */ jsx62("p", { className: cn("text-xxs font-bold uppercase tracking-widest", network.text), children: address.label }),
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__ */ jsx62("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;
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__ */ jsx62("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 })
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__ */ jsx62(CopyIcon, { copied: copied === address.value })
7618
+ /* @__PURE__ */ jsx76(CopyIcon, { copied: copied === address.value })
6960
7619
  ]
6961
7620
  },
6962
7621
  address.network
6963
7622
  );
6964
7623
  })
6965
7624
  ] }),
6966
- /* @__PURE__ */ jsx62(
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__ */ jsxs48("div", { className: "flex gap-2.5 pt-1", children: [
6975
- showRegenerate && /* @__PURE__ */ jsxs48(
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__ */ jsx62("span", { className: "material-symbols-outlined text-icon-sm", children: "refresh" }),
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__ */ jsxs48(Button, { variant: "cta", onClick: handleDone, className: showRegenerate ? void 0 : "flex-1", children: [
6993
- /* @__PURE__ */ jsx62("span", { className: "material-symbols-outlined text-icon-sm", children: "check" }),
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 jsx63, jsxs as jsxs49 } from "react/jsx-runtime";
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__ */ jsxs49("div", { className: "space-y-3 animate-in fade-in zoom-in-95 duration-300", children: [
7043
- (network === "lightning" || network === "arkade" && arkSubMode === "ark") && isBtc && /* @__PURE__ */ jsxs49("div", { className: "flex flex-col gap-1.5 rounded-xl border border-white/8 bg-white/3 p-2.5", children: [
7044
- /* @__PURE__ */ jsx63("div", { className: "flex items-center justify-between px-1", children: /* @__PURE__ */ jsx63("label", { className: "text-xxs font-bold uppercase tracking-widest text-white/40", children: "Specify amount (optional)" }) }),
7045
- /* @__PURE__ */ jsx63(
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__ */ jsx63("p", { className: "text-xxs text-warning/70", children: loading ? /* @__PURE__ */ jsxs49("span", { className: "flex items-center gap-1", children: [
7057
- /* @__PURE__ */ jsx63("span", { className: "material-symbols-outlined animate-spin text-icon-xxs", children: "progress_activity" }),
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__ */ jsxs49("div", { className: "flex flex-col gap-1.5 rounded-xl border border-white/8 bg-white/3 p-2.5", children: [
7064
- /* @__PURE__ */ jsx63("div", { className: "flex items-center justify-between px-1", children: /* @__PURE__ */ jsx63("label", { className: "text-xxs font-bold uppercase tracking-widest text-white/40", children: "Specify amount (optional)" }) }),
7065
- /* @__PURE__ */ jsx63(
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__ */ jsx63("p", { className: "text-xxs text-warning/70", children: loading ? /* @__PURE__ */ jsxs49("span", { className: "flex items-center gap-1", children: [
7077
- /* @__PURE__ */ jsx63("span", { className: "material-symbols-outlined animate-spin text-icon-xxs", children: "progress_activity" }),
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__ */ jsxs49("p", { className: "rounded-lg border border-danger/20 bg-danger/10 px-2.5 py-1.5 text-xxs text-danger", children: [
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__ */ jsxs49("div", { className: "flex flex-col items-center gap-3", children: [
7088
- /* @__PURE__ */ jsxs49(
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__ */ jsxs49(
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__ */ jsx63("span", { children: net.label })
7766
+ /* @__PURE__ */ jsx77("span", { children: net.label })
7108
7767
  ]
7109
7768
  }
7110
7769
  ),
7111
- /* @__PURE__ */ jsx63(QrCode, { value: address, size: 188 }),
7112
- isInvoicePaid && /* @__PURE__ */ jsx63(PaidOverlay, {}),
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__ */ jsx63("div", { className: "absolute inset-0 flex items-center justify-center rounded-2xl bg-white/80 backdrop-blur-sm", children: /* @__PURE__ */ jsx63("span", { className: "material-symbols-outlined animate-spin text-icon-3xl text-network-bitcoin", children: "progress_activity" }) })
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__ */ jsxs49(
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__ */ jsx63(Icon, { name: isAddressCopied ? "check" : "content_copy", size: "xs" }),
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__ */ jsx63(
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__ */ jsxs49(
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__ */ jsx63("div", { className: cn("flex size-5 flex-shrink-0 items-center justify-center rounded-md", net.bg), children: net.icon }),
7164
- /* @__PURE__ */ jsxs49("div", { className: "min-w-0 flex-1", children: [
7165
- /* @__PURE__ */ jsx63("p", { className: cn("text-xxs font-bold uppercase tracking-widest", net.text), children: /* @__PURE__ */ jsx63("span", { "data-testid": "deposit-address-label", children: addressLabel }) }),
7166
- /* @__PURE__ */ jsx63("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 })
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__ */ jsx63(CopyIcon, { copied: copied === address })
7827
+ /* @__PURE__ */ jsx77(CopyIcon, { copied: copied === address })
7169
7828
  ]
7170
7829
  }
7171
7830
  ),
7172
- recipientId && /* @__PURE__ */ jsxs49(
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__ */ jsx63("div", { className: "flex size-5 flex-shrink-0 items-center justify-center rounded-md bg-primary/15", children: /* @__PURE__ */ jsx63(Icon, { name: "person", size: "xs", className: "text-primary" }) }),
7183
- /* @__PURE__ */ jsxs49("div", { className: "min-w-0 flex-1", children: [
7184
- /* @__PURE__ */ jsx63("p", { className: "text-xxs font-bold uppercase tracking-widest text-primary", children: "Recipient ID" }),
7185
- /* @__PURE__ */ jsx63("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 })
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__ */ jsx63(CopyIcon, { copied: copied === recipientId })
7846
+ /* @__PURE__ */ jsx77(CopyIcon, { copied: copied === recipientId })
7188
7847
  ]
7189
7848
  }
7190
7849
  ),
7191
- showRegenerate && /* @__PURE__ */ jsx63("div", { className: "flex justify-center pt-1", children: /* @__PURE__ */ jsx63(
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__ */ jsx63(
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 jsx64, jsxs as jsxs50 } from "react/jsx-runtime";
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__ */ jsxs50("div", { className: "space-y-3", children: [
7263
- showReceiveSummary && /* @__PURE__ */ jsxs50("div", { className: "rounded-2xl border border-white/8 bg-white/4 p-3", children: [
7264
- /* @__PURE__ */ jsx64("p", { className: "text-xxs font-bold uppercase tracking-widest text-white/35", children: "Receive Summary" }),
7265
- /* @__PURE__ */ jsxs50("div", { className: "mt-2 grid grid-cols-1 gap-2 text-xs", children: [
7266
- /* @__PURE__ */ jsxs50("div", { className: "flex items-center justify-between gap-3", children: [
7267
- /* @__PURE__ */ jsx64("span", { className: "text-white/45", children: "Asset" }),
7268
- /* @__PURE__ */ jsx64("span", { className: "font-bold text-white", children: selectedAsset?.ticker ?? (isBtc ? "BTC" : "Asset") })
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__ */ jsxs50("div", { className: "flex items-center justify-between gap-3", children: [
7271
- /* @__PURE__ */ jsx64("span", { className: "text-white/45", children: "Destination account" }),
7272
- /* @__PURE__ */ jsx64("span", { className: "font-bold text-white", children: ACCOUNT_TITLES[selectedAccount] })
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__ */ jsxs50("div", { className: "flex items-center justify-between gap-3", children: [
7275
- /* @__PURE__ */ jsx64("span", { className: "text-white/45", children: "Transfer method" }),
7276
- /* @__PURE__ */ jsx64("span", { className: "font-bold text-white", children: method.label })
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__ */ jsx64("p", { className: "text-tiny text-white/35", children: method.summary })
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__ */ jsxs50("div", { className: "flex items-center gap-2.5 rounded-xl border bg-card p-3", children: [
7282
- /* @__PURE__ */ jsx64("span", { className: "material-symbols-outlined animate-spin text-icon-lg text-primary", children: "progress_activity" }),
7283
- /* @__PURE__ */ jsx64("span", { className: "text-xs font-medium text-white/60", children: "Checking channel availability..." })
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__ */ jsxs50(AlertBanner, { variant: "warning", children: [
7286
- /* @__PURE__ */ jsx64("p", { className: "mb-0.5 text-xs font-bold text-warning", children: "No Lightning Channels" }),
7287
- /* @__PURE__ */ jsx64("p", { className: "text-tiny text-warning/70", children: "Only on-chain deposits are available." })
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__ */ jsxs50(AlertBanner, { variant: "warning", children: [
7290
- /* @__PURE__ */ jsx64("p", { className: "mb-0.5 text-xs font-bold text-warning", children: "No Inbound Liquidity" }),
7291
- /* @__PURE__ */ jsxs50("p", { className: "text-tiny text-warning/70", children: [
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__ */ jsxs50("div", { className: "flex flex-col items-center gap-4 py-10", children: [
7298
- /* @__PURE__ */ jsx64("div", { className: cn("flex size-16 items-center justify-center rounded-2xl border", net.bg, net.border), children: /* @__PURE__ */ jsx64("span", { className: cn("material-symbols-outlined animate-spin text-icon-4xl", net.text), children: "progress_activity" }) }),
7299
- /* @__PURE__ */ jsxs50("div", { className: "space-y-1 text-center", children: [
7300
- /* @__PURE__ */ jsxs50("p", { className: "text-sm font-bold text-muted-foreground", children: [
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__ */ jsxs50("p", { className: "text-xs text-white/30", children: [
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__ */ jsxs50("div", { className: "space-y-2 rounded-xl border bg-card p-3", children: [
7312
- /* @__PURE__ */ jsxs50("div", { className: "flex items-center justify-between gap-3", children: [
7313
- /* @__PURE__ */ jsxs50("div", { className: "min-w-0 flex-1", children: [
7314
- /* @__PURE__ */ jsx64("h4", { className: "text-xs font-bold text-white", children: "Receive with Privacy" }),
7315
- /* @__PURE__ */ jsx64("p", { className: "mt-0.5 text-xxs text-muted-foreground", children: usePrivacy ? "Blinded UTXO - enhanced privacy" : "Witness address - less private" })
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__ */ jsx64(
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__ */ jsx64(
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__ */ jsx64("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." })
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__ */ jsxs50("div", { className: "space-y-1.5", children: [
7341
- /* @__PURE__ */ jsxs50("div", { className: "flex items-center justify-between", children: [
7342
- /* @__PURE__ */ jsxs50("label", { className: "text-xxs font-bold uppercase tracking-widest text-white/40", children: [
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__ */ jsxs50("span", { className: "text-xxs text-white/30", children: [
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__ */ jsx64(
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__ */ jsxs50(AlertBanner, { variant: "warning", children: [
7365
- /* @__PURE__ */ jsx64("p", { className: "mb-0.5 text-xs font-bold text-warning", children: "Colorable UTXOs Required" }),
7366
- /* @__PURE__ */ jsx64("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." })
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__ */ jsx64(Button, { variant: "cta", size: "cta", onClick: onOpenCreateUtxos, disabled: loading, children: /* @__PURE__ */ jsxs50("span", { className: "flex items-center justify-center gap-2", children: [
7369
- /* @__PURE__ */ jsx64("span", { className: "material-symbols-outlined text-icon-md", children: "add_circle" }),
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__ */ jsx64(Button, { variant: "cta", size: "cta", onClick: generateInvoice, disabled: loading, children: loading ? /* @__PURE__ */ jsxs50("span", { className: "flex items-center justify-center gap-2", children: [
7372
- /* @__PURE__ */ jsx64("span", { className: "material-symbols-outlined animate-spin text-icon-md", children: "progress_activity" }),
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__ */ jsxs50("span", { className: "flex items-center justify-center gap-2", children: [
7375
- /* @__PURE__ */ jsx64("span", { className: "material-symbols-outlined text-icon-md", children: "qr_code_2" }),
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 Fragment15, jsx as jsx65, jsxs as jsxs51 } from "react/jsx-runtime";
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__ */ jsxs51("div", { className: "relative flex h-screen flex-col overflow-hidden bg-background pt-16 font-display text-foreground", children: [
7455
- /* @__PURE__ */ jsx65("div", { className: "absolute left-4 top-4 z-30", children: /* @__PURE__ */ jsx65(
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__ */ jsx65(Icon, { name: "arrow_back", size: "xl" })
8122
+ children: /* @__PURE__ */ jsx79(Icon, { name: "arrow_back", size: "xl" })
7464
8123
  }
7465
8124
  ) }),
7466
- /* @__PURE__ */ jsx65("div", { className: "flex-shrink-0 px-5 pb-3 pt-4", children: /* @__PURE__ */ jsx65(
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__ */ jsx65("div", { className: "flex-shrink-0 px-5 pb-3", children: /* @__PURE__ */ jsxs51("div", { className: "relative", children: [
7475
- /* @__PURE__ */ jsx65(
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__ */ jsx65(
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__ */ jsxs51(ScrollArea, { className: "min-h-0 flex-1", viewportClassName: "space-y-1.5 px-5 pb-3", children: [
7497
- btcAsset && /* @__PURE__ */ jsxs51(
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__ */ jsx65(AssetIcon, { ticker: "BTC", size: 40, className: "flex-shrink-0" }),
7506
- /* @__PURE__ */ jsxs51("div", { className: "min-w-0 flex-1 text-left", children: [
7507
- /* @__PURE__ */ jsx65("div", { className: "font-bold tracking-wide text-white transition-colors group-hover:text-primary/90", children: "Bitcoin" }),
7508
- /* @__PURE__ */ jsx65("div", { className: "mt-0.5 text-xs text-white/40", children: "Choose destination account next" })
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__ */ jsxs51("div", { className: "hidden min-w-0 max-w-[42%] flex-shrink flex-wrap justify-end gap-1 min-[380px]:flex", children: [
7511
- /* @__PURE__ */ jsx65(NetworkBadge, { network: "L1", size: "sm" }),
7512
- /* @__PURE__ */ jsx65(NetworkBadge, { network: "LN", size: "sm" }),
7513
- isSparkConnected && /* @__PURE__ */ jsx65(NetworkBadge, { network: "Spark", size: "sm" }),
7514
- isArkadeConnected && /* @__PURE__ */ jsx65(NetworkBadge, { network: "Arkade", size: "sm" })
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__ */ jsx65("span", { className: "material-symbols-outlined flex-shrink-0 text-icon-md text-white/20 transition-colors group-hover:text-white/50", children: "arrow_forward" })
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__ */ jsxs51("div", { className: "py-8 text-center text-sm text-white/30", children: [
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__ */ jsxs51("div", { className: "space-y-1.5 pt-1", children: [
7525
- /* @__PURE__ */ jsxs51(
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__ */ jsx65("span", { className: "text-xxs font-bold uppercase tracking-[0.18em] text-white/55", children: "Your assets" }),
7539
- /* @__PURE__ */ jsx65("span", { className: "inline-flex size-5 items-center justify-center rounded-full bg-white/10 text-tiny font-bold text-white/70", children: ownedAssetsCount }),
7540
- /* @__PURE__ */ jsx65("div", { className: "flex-1" }),
7541
- !isSearching && /* @__PURE__ */ jsx65("span", { className: "material-symbols-outlined text-icon-md text-white/40", children: showOwnedAssets ? "expand_less" : "expand_more" })
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__ */ jsx65("div", { className: "space-y-1.5 duration-200 animate-in fade-in slide-in-from-top-1", children: ownedAssets.map((asset) => {
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__ */ jsxs51(
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__ */ jsx65(AssetIcon, { ticker: asset.ticker, size: 40, className: "flex-shrink-0" }),
7557
- /* @__PURE__ */ jsxs51("div", { className: "min-w-0 flex-1 text-left", children: [
7558
- /* @__PURE__ */ jsxs51("div", { className: "flex min-w-0 items-center gap-1.5", children: [
7559
- /* @__PURE__ */ jsx65("span", { className: "truncate font-bold tracking-wide text-white transition-colors group-hover:text-primary/90", children: asset.ticker }),
7560
- protocolBadge && /* @__PURE__ */ jsx65(
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__ */ jsx65("div", { className: "mt-0.5 truncate text-xs text-white/40", children: asset.name ?? "Asset" })
8230
+ /* @__PURE__ */ jsx79("div", { className: "mt-0.5 truncate text-xs text-white/40", children: asset.name ?? "Asset" })
7572
8231
  ] }),
7573
- balance > 0 && /* @__PURE__ */ jsxs51("div", { className: "flex-shrink-0 text-right", children: [
7574
- /* @__PURE__ */ jsx65("div", { className: "font-mono text-xs font-bold text-white", children: formatAssetBalance(asset) }),
7575
- /* @__PURE__ */ jsx65("div", { className: "mt-0.5 text-tiny uppercase tracking-wider text-white/35", children: asset.ticker })
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__ */ jsx65("span", { className: "material-symbols-outlined flex-shrink-0 text-icon-sm text-white/20 transition-colors group-hover:text-white/50", children: "arrow_forward" })
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__ */ jsx65("div", { className: "pb-1 pt-2", children: /* @__PURE__ */ jsxs51(
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__ */ jsx65("div", { className: "flex size-10 shrink-0 items-center justify-center rounded-xl bg-primary/20", children: /* @__PURE__ */ jsx65("span", { className: "material-symbols-outlined text-lg text-primary", children: "swap_calls" }) }),
7592
- /* @__PURE__ */ jsxs51("div", { className: "flex-1 text-left", children: [
7593
- /* @__PURE__ */ jsx65("p", { className: "text-sm font-semibold text-white transition-colors group-hover:text-primary", children: "Bridge from another chain" }),
7594
- /* @__PURE__ */ jsx65("p", { className: "text-xxs leading-tight text-white/40", children: "USDC, USDT, ETH, SOL via Flashnet" })
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__ */ jsx65("span", { className: "material-symbols-outlined text-lg text-white/30 transition-colors group-hover:text-primary", children: "arrow_forward" })
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__ */ jsxs51("div", { className: "space-y-2 pt-2", children: [
7601
- /* @__PURE__ */ jsx65("div", { className: "px-1", children: /* @__PURE__ */ jsx65("p", { className: "text-xxs font-bold uppercase tracking-[0.18em] text-white/35", children: "New Asset" }) }),
7602
- /* @__PURE__ */ jsx65(
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__ */ jsxs51(
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__ */ jsxs51("div", { className: "relative", children: [
7623
- /* @__PURE__ */ jsx65(AssetIcon, { ticker: option.ticker, size: 40 }),
7624
- /* @__PURE__ */ jsx65("div", { className: "absolute -bottom-1 -right-1 flex size-4 items-center justify-center rounded-full bg-primary", children: /* @__PURE__ */ jsx65(Icon, { name: "add", size: "xs", className: "text-background" }) })
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__ */ jsx65("div", { className: "mt-2 min-w-0", children: /* @__PURE__ */ jsx65(
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__ */ jsxs51(Fragment15, { children: [
7647
- /* @__PURE__ */ jsx65("div", { className: "flex-shrink-0 px-5 pb-3 animate-in fade-in slide-in-from-bottom-2 duration-300", children: /* @__PURE__ */ jsxs51("div", { className: "space-y-2 rounded-2xl border border-network-arkade/20 bg-network-arkade/5 p-3", children: [
7648
- /* @__PURE__ */ jsx65("p", { className: "text-tiny leading-relaxed text-network-arkade/80", children: "Leave empty to receive any RGB asset, or enter a specific asset ID." }),
7649
- /* @__PURE__ */ jsx65(
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__ */ jsx65("div", { className: "flex-shrink-0 px-5 pb-5 pt-2", children: /* @__PURE__ */ jsxs51(Button, { variant: "cta", size: "cta", onClick: handleContinueToGenerate, children: [
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__ */ jsx65("span", { className: "material-symbols-outlined text-icon-xl font-bold", children: "arrow_forward" })
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 jsx66, jsxs as jsxs52 } from "react/jsx-runtime";
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__ */ jsx66(
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__ */ jsxs52("div", { className: "relative flex h-screen flex-col overflow-hidden bg-background pt-16 font-display text-foreground", children: [
7842
- /* @__PURE__ */ jsx66("div", { className: "absolute left-4 top-4 z-30", children: /* @__PURE__ */ jsx66(Button, { type: "button", variant: "ghost", size: "icon-xl", onClick: handleBack, "aria-label": "Go back", children: /* @__PURE__ */ jsx66(Icon, { name: "arrow_back", size: "xl" }) }) }),
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__ */ jsx66("div", { className: "flex-shrink-0 border-b border-border bg-background px-4 py-2", children: /* @__PURE__ */ jsxs52("div", { className: "space-y-2", children: [
7847
- /* @__PURE__ */ jsxs52("div", { children: [
7848
- /* @__PURE__ */ jsx66("p", { className: "text-xxs font-bold uppercase tracking-widest text-white/35", children: "Destination Account" }),
7849
- /* @__PURE__ */ jsx66("div", { className: "mt-1.5 flex gap-1.5 overflow-x-auto no-scrollbar", children: availableAccounts.map((account) => /* @__PURE__ */ jsx66(
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__ */ jsxs52("div", { children: [
7875
- /* @__PURE__ */ jsx66("p", { className: "text-xxs font-bold uppercase tracking-widest text-white/35", children: "Transfer Method" }),
7876
- /* @__PURE__ */ jsx66("div", { className: "mt-1.5 flex gap-1.5 overflow-x-auto no-scrollbar", children: methodOptions.map(({ method, enabled, disabledReason }) => /* @__PURE__ */ jsx66(
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__ */ jsx66(ScrollArea, { className: "flex-1", viewportAs: "main", viewportClassName: "space-y-2.5 px-4 py-2.5", children: isBtc && accountReceiveResult ? /* @__PURE__ */ jsx66(
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__ */ jsxs52("div", { className: "flex flex-col items-center gap-4 py-10", children: [
7911
- /* @__PURE__ */ jsx66(
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__ */ jsx66(
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__ */ jsxs52("div", { className: "space-y-1 text-center", children: [
7932
- /* @__PURE__ */ jsx66("p", { className: "text-sm font-bold text-muted-foreground", children: "Generating addresses..." }),
7933
- /* @__PURE__ */ jsx66("p", { className: "text-xs text-white/30", children: ACCOUNT_TITLES2[btcSelectedAccount] })
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__ */ jsx66(
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__ */ jsx66(
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,