@swype-org/react-sdk 0.2.297 → 0.2.303
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/index.cjs +505 -312
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +41 -5
- package/dist/index.d.ts +41 -5
- package/dist/index.js +505 -313
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -41,6 +41,7 @@ var darkTheme = {
|
|
|
41
41
|
accent: "#B2FF93",
|
|
42
42
|
accentHover: "#8FD974",
|
|
43
43
|
accentText: "#1B4332",
|
|
44
|
+
highlight: "#B2FF93",
|
|
44
45
|
success: "#0f9d73",
|
|
45
46
|
successBg: "#0f2f2a",
|
|
46
47
|
error: "#d46a72",
|
|
@@ -72,6 +73,7 @@ var lightTheme = {
|
|
|
72
73
|
accent: "#B2FF93",
|
|
73
74
|
accentHover: "#8FD974",
|
|
74
75
|
accentText: "#1B4332",
|
|
76
|
+
highlight: "#B2FF93",
|
|
75
77
|
success: "#0f9d73",
|
|
76
78
|
successBg: "#e6f7f1",
|
|
77
79
|
error: "#ce6670",
|
|
@@ -113,6 +115,8 @@ var lightThemeNew = {
|
|
|
113
115
|
accent: "#000000",
|
|
114
116
|
accentHover: "#1a1a1a",
|
|
115
117
|
accentText: "#fafafa",
|
|
118
|
+
// Figma `accent` token (#eaff03) — the lime "0% FEES" chip.
|
|
119
|
+
highlight: "#eaff03",
|
|
116
120
|
success: "#0f9d73",
|
|
117
121
|
successBg: "#e6f7f1",
|
|
118
122
|
error: "#ce6670",
|
|
@@ -8393,12 +8397,32 @@ function PrimaryButton({
|
|
|
8393
8397
|
icon,
|
|
8394
8398
|
progress,
|
|
8395
8399
|
progressText,
|
|
8396
|
-
progressPaused
|
|
8400
|
+
progressPaused,
|
|
8401
|
+
spinnerOnly
|
|
8397
8402
|
}) {
|
|
8398
8403
|
const { tokens } = useBlinkConfig();
|
|
8399
8404
|
const inProgress = progress != null;
|
|
8400
8405
|
const isDisabled = disabled || loading || inProgress;
|
|
8401
8406
|
const done = inProgress && progress >= 1;
|
|
8407
|
+
if (spinnerOnly) {
|
|
8408
|
+
return /* @__PURE__ */ jsxs(
|
|
8409
|
+
"button",
|
|
8410
|
+
{
|
|
8411
|
+
type: "button",
|
|
8412
|
+
disabled: true,
|
|
8413
|
+
"aria-label": "Please wait",
|
|
8414
|
+
style: buttonStyle2(tokens, { disabled: false, loading: true }),
|
|
8415
|
+
children: [
|
|
8416
|
+
/* @__PURE__ */ jsx("span", { "aria-hidden": true, style: inlineSpinnerStyle(tokens.accentText) }),
|
|
8417
|
+
/* @__PURE__ */ jsx("style", { children: `
|
|
8418
|
+
@keyframes blink-spin {
|
|
8419
|
+
to { transform: rotate(360deg); }
|
|
8420
|
+
}
|
|
8421
|
+
` })
|
|
8422
|
+
]
|
|
8423
|
+
}
|
|
8424
|
+
);
|
|
8425
|
+
}
|
|
8402
8426
|
if (inProgress) {
|
|
8403
8427
|
return /* @__PURE__ */ jsxs(
|
|
8404
8428
|
"button",
|
|
@@ -8525,6 +8549,15 @@ var buttonStyle2 = (tokens, state) => {
|
|
|
8525
8549
|
gap: 8
|
|
8526
8550
|
};
|
|
8527
8551
|
};
|
|
8552
|
+
var inlineSpinnerStyle = (color) => ({
|
|
8553
|
+
width: 20,
|
|
8554
|
+
height: 20,
|
|
8555
|
+
border: `2px solid ${color}44`,
|
|
8556
|
+
borderTopColor: color,
|
|
8557
|
+
borderRadius: "50%",
|
|
8558
|
+
animation: "blink-spin 0.9s linear infinite",
|
|
8559
|
+
flexShrink: 0
|
|
8560
|
+
});
|
|
8528
8561
|
var iconWrapStyle = {
|
|
8529
8562
|
display: "flex",
|
|
8530
8563
|
alignItems: "center"
|
|
@@ -10641,269 +10674,288 @@ var avatarStyle = (tokens) => ({
|
|
|
10641
10674
|
color: tokens.textMuted,
|
|
10642
10675
|
background: "transparent"
|
|
10643
10676
|
});
|
|
10644
|
-
|
|
10677
|
+
|
|
10678
|
+
// src/deviceBiometricUnlockText.ts
|
|
10679
|
+
var FALLBACK = "Biometric verification";
|
|
10680
|
+
function getDeviceBiometricUnlockText() {
|
|
10681
|
+
const ua = typeof navigator !== "undefined" && typeof navigator.userAgent === "string" ? navigator.userAgent : "";
|
|
10682
|
+
if (/iPhone|iPad|iPod/i.test(ua)) {
|
|
10683
|
+
return "Face ID";
|
|
10684
|
+
}
|
|
10685
|
+
if (/Android/i.test(ua)) {
|
|
10686
|
+
return "Fingerprint or face unlock";
|
|
10687
|
+
}
|
|
10688
|
+
if (/Windows NT/i.test(ua)) {
|
|
10689
|
+
return "Windows Hello";
|
|
10690
|
+
}
|
|
10691
|
+
if (/Macintosh|Mac OS X/i.test(ua)) {
|
|
10692
|
+
return "Touch ID";
|
|
10693
|
+
}
|
|
10694
|
+
return FALLBACK;
|
|
10695
|
+
}
|
|
10696
|
+
var CLUSTER_LOGOS = [
|
|
10697
|
+
METAMASK_LOGO,
|
|
10698
|
+
PHANTOM_LOGO,
|
|
10699
|
+
RABBY_LOGO,
|
|
10700
|
+
OKX_WALLET_LOGO,
|
|
10701
|
+
TRUST_WALLET_LOGO,
|
|
10702
|
+
BASE_LOGO
|
|
10703
|
+
];
|
|
10645
10704
|
function DepositOptionsScreen({
|
|
10646
|
-
onFromWallet,
|
|
10647
10705
|
onToAddress,
|
|
10648
10706
|
onSignInWithBlink,
|
|
10649
10707
|
onClose
|
|
10650
10708
|
}) {
|
|
10651
10709
|
const { tokens } = useBlinkConfig();
|
|
10652
|
-
const
|
|
10653
|
-
|
|
10654
|
-
{
|
|
10655
|
-
|
|
10656
|
-
|
|
10657
|
-
|
|
10658
|
-
style: closeButtonStyle2(tokens),
|
|
10659
|
-
children: /* @__PURE__ */ jsx("svg", { width: "18", height: "18", viewBox: "0 0 24 24", fill: "none", "aria-hidden": "true", children: /* @__PURE__ */ jsx(
|
|
10660
|
-
"path",
|
|
10710
|
+
const depositLabel = `Deposit with ${getDeviceBiometricUnlockText()}`;
|
|
10711
|
+
return /* @__PURE__ */ jsx(ScreenLayout, { children: /* @__PURE__ */ jsx("div", { style: sheetStyle, children: /* @__PURE__ */ jsxs("div", { style: contentStyle2, children: [
|
|
10712
|
+
/* @__PURE__ */ jsxs("div", { style: headerRowStyle, children: [
|
|
10713
|
+
/* @__PURE__ */ jsx("img", { src: BLINK_WORDMARK, alt: "Blink", style: wordmarkImgStyle }),
|
|
10714
|
+
onClose ? /* @__PURE__ */ jsx(
|
|
10715
|
+
"button",
|
|
10661
10716
|
{
|
|
10662
|
-
|
|
10663
|
-
|
|
10664
|
-
|
|
10665
|
-
|
|
10666
|
-
|
|
10717
|
+
type: "button",
|
|
10718
|
+
onClick: onClose,
|
|
10719
|
+
"aria-label": "Close",
|
|
10720
|
+
style: closeButtonStyle2(tokens.bgRecessed, tokens.text),
|
|
10721
|
+
children: /* @__PURE__ */ jsx("svg", { width: "20", height: "20", viewBox: "0 0 24 24", fill: "none", "aria-hidden": "true", children: /* @__PURE__ */ jsx(
|
|
10722
|
+
"path",
|
|
10723
|
+
{
|
|
10724
|
+
d: "M6 6l12 12M18 6L6 18",
|
|
10725
|
+
stroke: "currentColor",
|
|
10726
|
+
strokeWidth: "2",
|
|
10727
|
+
strokeLinecap: "round",
|
|
10728
|
+
strokeLinejoin: "round"
|
|
10729
|
+
}
|
|
10730
|
+
) })
|
|
10667
10731
|
}
|
|
10668
|
-
)
|
|
10669
|
-
}
|
|
10670
|
-
|
|
10671
|
-
|
|
10672
|
-
|
|
10673
|
-
|
|
10674
|
-
|
|
10675
|
-
children: [
|
|
10676
|
-
/* @__PURE__ */ jsx(
|
|
10677
|
-
ScreenHeader,
|
|
10732
|
+
) : null
|
|
10733
|
+
] }),
|
|
10734
|
+
/* @__PURE__ */ jsx("img", { src: BLINK_PASSKEY_ILLUSTRATION, alt: "", "aria-hidden": "true", style: heroStyle }),
|
|
10735
|
+
/* @__PURE__ */ jsxs("div", { style: stackStyle, children: [
|
|
10736
|
+
/* @__PURE__ */ jsxs("div", { style: depositPillWrapperStyle, children: [
|
|
10737
|
+
/* @__PURE__ */ jsxs(
|
|
10738
|
+
"button",
|
|
10678
10739
|
{
|
|
10679
|
-
|
|
10680
|
-
|
|
10681
|
-
|
|
10682
|
-
|
|
10683
|
-
{
|
|
10684
|
-
|
|
10685
|
-
|
|
10686
|
-
|
|
10687
|
-
|
|
10688
|
-
|
|
10740
|
+
type: "button",
|
|
10741
|
+
onClick: onSignInWithBlink,
|
|
10742
|
+
style: depositPillStyle(tokens.accent),
|
|
10743
|
+
children: [
|
|
10744
|
+
/* @__PURE__ */ jsx("span", { style: depositPillLabelStyle(tokens.accentText), children: depositLabel }),
|
|
10745
|
+
/* @__PURE__ */ jsx("span", { style: clusterStyle, children: CLUSTER_LOGOS.map((logo, i) => /* @__PURE__ */ jsx(
|
|
10746
|
+
"span",
|
|
10747
|
+
{
|
|
10748
|
+
style: clusterChipStyle(tokens.bgInput, i === CLUSTER_LOGOS.length - 1),
|
|
10749
|
+
children: /* @__PURE__ */ jsx("img", { src: logo, alt: "", "aria-hidden": "true", style: clusterIconStyle })
|
|
10750
|
+
},
|
|
10751
|
+
logo
|
|
10752
|
+
)) })
|
|
10753
|
+
]
|
|
10689
10754
|
}
|
|
10690
10755
|
),
|
|
10691
|
-
/* @__PURE__ */
|
|
10692
|
-
|
|
10693
|
-
|
|
10694
|
-
|
|
10695
|
-
|
|
10696
|
-
|
|
10697
|
-
|
|
10698
|
-
|
|
10699
|
-
|
|
10700
|
-
|
|
10701
|
-
|
|
10702
|
-
|
|
10703
|
-
|
|
10704
|
-
|
|
10705
|
-
|
|
10706
|
-
|
|
10707
|
-
|
|
10708
|
-
|
|
10709
|
-
|
|
10710
|
-
|
|
10711
|
-
|
|
10712
|
-
SourceRow,
|
|
10713
|
-
{
|
|
10714
|
-
name: "Exchange",
|
|
10715
|
-
icon: /* @__PURE__ */ jsx(LinkIcon, { color: tokens.textTertiary }),
|
|
10716
|
-
disabled: true,
|
|
10717
|
-
disabledColor: tokens.textTertiary,
|
|
10718
|
-
right: /* @__PURE__ */ jsx(ComingSoonBadge, { tokens })
|
|
10719
|
-
}
|
|
10720
|
-
)
|
|
10721
|
-
] })
|
|
10722
|
-
] })
|
|
10723
|
-
]
|
|
10724
|
-
}
|
|
10725
|
-
);
|
|
10726
|
-
}
|
|
10727
|
-
function DepositTypeToggle({ tokens }) {
|
|
10728
|
-
return /* @__PURE__ */ jsx(Fragment, {});
|
|
10729
|
-
}
|
|
10730
|
-
function ComingSoonBadge({ tokens }) {
|
|
10731
|
-
return /* @__PURE__ */ jsx("span", { style: comingSoonBadgeStyle(tokens.bgRecessed, tokens.textMuted), children: "Coming soon" });
|
|
10732
|
-
}
|
|
10733
|
-
function WalletIcon({ color }) {
|
|
10734
|
-
return /* @__PURE__ */ jsxs("svg", { width: "24", height: "24", viewBox: "0 0 24 24", fill: "none", "aria-hidden": "true", children: [
|
|
10735
|
-
/* @__PURE__ */ jsx(
|
|
10736
|
-
"path",
|
|
10737
|
-
{
|
|
10738
|
-
d: "M3 9.5a3 3 0 013-3h12a3 3 0 013 3v8a3 3 0 01-3 3H6a3 3 0 01-3-3v-8z",
|
|
10739
|
-
stroke: color,
|
|
10740
|
-
strokeWidth: "1.6"
|
|
10741
|
-
}
|
|
10742
|
-
),
|
|
10743
|
-
/* @__PURE__ */ jsx(
|
|
10744
|
-
"path",
|
|
10745
|
-
{
|
|
10746
|
-
d: "M16 4.5l-9 2",
|
|
10747
|
-
stroke: color,
|
|
10748
|
-
strokeWidth: "1.6",
|
|
10749
|
-
strokeLinecap: "round"
|
|
10750
|
-
}
|
|
10751
|
-
),
|
|
10752
|
-
/* @__PURE__ */ jsx("circle", { cx: "17.25", cy: "13.5", r: "1.1", fill: color })
|
|
10753
|
-
] });
|
|
10754
|
-
}
|
|
10755
|
-
function AddressIcon({ color }) {
|
|
10756
|
-
return /* @__PURE__ */ jsxs("svg", { width: "24", height: "24", viewBox: "0 0 24 24", fill: "none", "aria-hidden": "true", children: [
|
|
10757
|
-
/* @__PURE__ */ jsx("rect", { x: "3.5", y: "3.5", width: "7", height: "7", rx: "1", stroke: color, strokeWidth: "1.4" }),
|
|
10758
|
-
/* @__PURE__ */ jsx("rect", { x: "6", y: "6", width: "2", height: "2", fill: color }),
|
|
10759
|
-
/* @__PURE__ */ jsx("rect", { x: "13.5", y: "3.5", width: "7", height: "7", rx: "1", stroke: color, strokeWidth: "1.4" }),
|
|
10760
|
-
/* @__PURE__ */ jsx("rect", { x: "16", y: "6", width: "2", height: "2", fill: color }),
|
|
10761
|
-
/* @__PURE__ */ jsx("rect", { x: "3.5", y: "13.5", width: "7", height: "7", rx: "1", stroke: color, strokeWidth: "1.4" }),
|
|
10762
|
-
/* @__PURE__ */ jsx("rect", { x: "6", y: "16", width: "2", height: "2", fill: color }),
|
|
10763
|
-
/* @__PURE__ */ jsx("rect", { x: "13.5", y: "13.5", width: "2.5", height: "2.5", fill: color }),
|
|
10764
|
-
/* @__PURE__ */ jsx("rect", { x: "18", y: "13.5", width: "2.5", height: "2.5", fill: color }),
|
|
10765
|
-
/* @__PURE__ */ jsx("rect", { x: "13.5", y: "18", width: "2.5", height: "2.5", fill: color }),
|
|
10766
|
-
/* @__PURE__ */ jsx("rect", { x: "18", y: "18", width: "2.5", height: "2.5", fill: color })
|
|
10767
|
-
] });
|
|
10756
|
+
/* @__PURE__ */ jsx("span", { style: feesBadgeStyle(tokens.highlight, tokens.text), children: "0% FEES" })
|
|
10757
|
+
] }),
|
|
10758
|
+
/* @__PURE__ */ jsxs("div", { style: dividerRowStyle, children: [
|
|
10759
|
+
/* @__PURE__ */ jsx("span", { style: dividerRuleStyle(tokens.textTertiary) }),
|
|
10760
|
+
/* @__PURE__ */ jsx("span", { style: dividerLabelStyle(tokens.textTertiary), children: "OR" }),
|
|
10761
|
+
/* @__PURE__ */ jsx("span", { style: dividerRuleStyle(tokens.textTertiary) })
|
|
10762
|
+
] }),
|
|
10763
|
+
/* @__PURE__ */ jsxs(
|
|
10764
|
+
"button",
|
|
10765
|
+
{
|
|
10766
|
+
type: "button",
|
|
10767
|
+
onClick: onToAddress,
|
|
10768
|
+
style: manualRowStyle(tokens.bgCardTranslucent),
|
|
10769
|
+
children: [
|
|
10770
|
+
/* @__PURE__ */ jsx("span", { style: manualLabelStyle(tokens.text), children: "Send Crypto Manually" }),
|
|
10771
|
+
/* @__PURE__ */ jsx(QrIcon, { color: tokens.text })
|
|
10772
|
+
]
|
|
10773
|
+
}
|
|
10774
|
+
)
|
|
10775
|
+
] })
|
|
10776
|
+
] }) }) });
|
|
10768
10777
|
}
|
|
10769
|
-
function
|
|
10770
|
-
return /* @__PURE__ */
|
|
10771
|
-
"
|
|
10778
|
+
function QrIcon({ color }) {
|
|
10779
|
+
return /* @__PURE__ */ jsxs(
|
|
10780
|
+
"svg",
|
|
10772
10781
|
{
|
|
10773
|
-
|
|
10774
|
-
|
|
10782
|
+
width: "24",
|
|
10783
|
+
height: "24",
|
|
10784
|
+
viewBox: "0 0 24 24",
|
|
10785
|
+
fill: "none",
|
|
10775
10786
|
"aria-hidden": "true",
|
|
10776
|
-
style:
|
|
10787
|
+
style: { flexShrink: 0 },
|
|
10788
|
+
children: [
|
|
10789
|
+
/* @__PURE__ */ jsx("rect", { x: "3.5", y: "3.5", width: "7", height: "7", rx: "1", stroke: color, strokeWidth: "1.4" }),
|
|
10790
|
+
/* @__PURE__ */ jsx("rect", { x: "6", y: "6", width: "2", height: "2", fill: color }),
|
|
10791
|
+
/* @__PURE__ */ jsx("rect", { x: "13.5", y: "3.5", width: "7", height: "7", rx: "1", stroke: color, strokeWidth: "1.4" }),
|
|
10792
|
+
/* @__PURE__ */ jsx("rect", { x: "16", y: "6", width: "2", height: "2", fill: color }),
|
|
10793
|
+
/* @__PURE__ */ jsx("rect", { x: "3.5", y: "13.5", width: "7", height: "7", rx: "1", stroke: color, strokeWidth: "1.4" }),
|
|
10794
|
+
/* @__PURE__ */ jsx("rect", { x: "6", y: "16", width: "2", height: "2", fill: color }),
|
|
10795
|
+
/* @__PURE__ */ jsx("rect", { x: "13.5", y: "13.5", width: "2.5", height: "2.5", fill: color }),
|
|
10796
|
+
/* @__PURE__ */ jsx("rect", { x: "18", y: "13.5", width: "2.5", height: "2.5", fill: color }),
|
|
10797
|
+
/* @__PURE__ */ jsx("rect", { x: "13.5", y: "18", width: "2.5", height: "2.5", fill: color }),
|
|
10798
|
+
/* @__PURE__ */ jsx("rect", { x: "18", y: "18", width: "2.5", height: "2.5", fill: color })
|
|
10799
|
+
]
|
|
10777
10800
|
}
|
|
10778
10801
|
);
|
|
10779
10802
|
}
|
|
10780
|
-
|
|
10781
|
-
|
|
10782
|
-
|
|
10783
|
-
|
|
10784
|
-
|
|
10785
|
-
|
|
10786
|
-
|
|
10787
|
-
|
|
10788
|
-
|
|
10789
|
-
|
|
10790
|
-
|
|
10791
|
-
|
|
10792
|
-
|
|
10793
|
-
|
|
10794
|
-
|
|
10795
|
-
|
|
10796
|
-
|
|
10797
|
-
|
|
10798
|
-
|
|
10799
|
-
|
|
10800
|
-
|
|
10801
|
-
|
|
10802
|
-
|
|
10803
|
-
d: "M21 16v2a3 3 0 01-3 3h-2",
|
|
10804
|
-
stroke: "currentColor",
|
|
10805
|
-
strokeWidth: "1.6",
|
|
10806
|
-
strokeLinecap: "round"
|
|
10807
|
-
}
|
|
10808
|
-
),
|
|
10809
|
-
/* @__PURE__ */ jsx(
|
|
10810
|
-
"path",
|
|
10811
|
-
{
|
|
10812
|
-
d: "M8 21H6a3 3 0 01-3-3v-2",
|
|
10813
|
-
stroke: "currentColor",
|
|
10814
|
-
strokeWidth: "1.6",
|
|
10815
|
-
strokeLinecap: "round"
|
|
10816
|
-
}
|
|
10817
|
-
),
|
|
10818
|
-
/* @__PURE__ */ jsx(
|
|
10819
|
-
"path",
|
|
10820
|
-
{
|
|
10821
|
-
d: "M9 10v1.5",
|
|
10822
|
-
stroke: "currentColor",
|
|
10823
|
-
strokeWidth: "1.6",
|
|
10824
|
-
strokeLinecap: "round"
|
|
10825
|
-
}
|
|
10826
|
-
),
|
|
10827
|
-
/* @__PURE__ */ jsx(
|
|
10828
|
-
"path",
|
|
10829
|
-
{
|
|
10830
|
-
d: "M15 10v1.5",
|
|
10831
|
-
stroke: "currentColor",
|
|
10832
|
-
strokeWidth: "1.6",
|
|
10833
|
-
strokeLinecap: "round"
|
|
10834
|
-
}
|
|
10835
|
-
),
|
|
10836
|
-
/* @__PURE__ */ jsx(
|
|
10837
|
-
"path",
|
|
10838
|
-
{
|
|
10839
|
-
d: "M12 10v3.5",
|
|
10840
|
-
stroke: "currentColor",
|
|
10841
|
-
strokeWidth: "1.6",
|
|
10842
|
-
strokeLinecap: "round"
|
|
10843
|
-
}
|
|
10844
|
-
),
|
|
10845
|
-
/* @__PURE__ */ jsx(
|
|
10846
|
-
"path",
|
|
10847
|
-
{
|
|
10848
|
-
d: "M9.5 16.25c.7.6 1.55.95 2.5.95s1.8-.35 2.5-.95",
|
|
10849
|
-
stroke: "currentColor",
|
|
10850
|
-
strokeWidth: "1.6",
|
|
10851
|
-
strokeLinecap: "round"
|
|
10852
|
-
}
|
|
10853
|
-
)
|
|
10854
|
-
] });
|
|
10855
|
-
}
|
|
10856
|
-
var wordmarkStyle = {
|
|
10857
|
-
height: 20,
|
|
10803
|
+
var sheetStyle = {
|
|
10804
|
+
position: "relative",
|
|
10805
|
+
minHeight: "100%",
|
|
10806
|
+
display: "flex",
|
|
10807
|
+
flexDirection: "column",
|
|
10808
|
+
boxSizing: "border-box"
|
|
10809
|
+
};
|
|
10810
|
+
var contentStyle2 = {
|
|
10811
|
+
display: "flex",
|
|
10812
|
+
flexDirection: "column",
|
|
10813
|
+
alignItems: "center",
|
|
10814
|
+
gap: 32,
|
|
10815
|
+
padding: "32px 8px"
|
|
10816
|
+
};
|
|
10817
|
+
var headerRowStyle = {
|
|
10818
|
+
display: "flex",
|
|
10819
|
+
alignItems: "center",
|
|
10820
|
+
justifyContent: "space-between",
|
|
10821
|
+
width: "100%",
|
|
10822
|
+
minHeight: 44
|
|
10823
|
+
};
|
|
10824
|
+
var wordmarkImgStyle = {
|
|
10825
|
+
height: 31,
|
|
10858
10826
|
width: "auto",
|
|
10827
|
+
display: "block"
|
|
10828
|
+
};
|
|
10829
|
+
var heroStyle = {
|
|
10830
|
+
width: 253,
|
|
10831
|
+
height: 253,
|
|
10832
|
+
maxWidth: "100%",
|
|
10859
10833
|
objectFit: "contain",
|
|
10860
10834
|
display: "block"
|
|
10861
10835
|
};
|
|
10862
|
-
var
|
|
10836
|
+
var stackStyle = {
|
|
10863
10837
|
display: "flex",
|
|
10864
10838
|
flexDirection: "column",
|
|
10865
|
-
gap:
|
|
10866
|
-
|
|
10839
|
+
gap: 16,
|
|
10840
|
+
width: "100%"
|
|
10867
10841
|
};
|
|
10868
|
-
var
|
|
10842
|
+
var depositPillWrapperStyle = {
|
|
10843
|
+
position: "relative",
|
|
10844
|
+
width: "100%",
|
|
10845
|
+
height: 71
|
|
10846
|
+
};
|
|
10847
|
+
var depositPillStyle = (bg) => ({
|
|
10869
10848
|
display: "flex",
|
|
10870
|
-
|
|
10849
|
+
alignItems: "center",
|
|
10850
|
+
justifyContent: "space-between",
|
|
10851
|
+
width: "100%",
|
|
10852
|
+
height: 56,
|
|
10853
|
+
padding: "12px 12px 12px 24px",
|
|
10871
10854
|
background: bg,
|
|
10855
|
+
border: "none",
|
|
10872
10856
|
borderRadius: 28,
|
|
10873
|
-
|
|
10857
|
+
cursor: "pointer",
|
|
10858
|
+
boxSizing: "border-box",
|
|
10859
|
+
fontFamily: "inherit"
|
|
10860
|
+
});
|
|
10861
|
+
var depositPillLabelStyle = (color) => ({
|
|
10862
|
+
color,
|
|
10863
|
+
fontSize: 16,
|
|
10864
|
+
fontWeight: 500,
|
|
10865
|
+
whiteSpace: "nowrap"
|
|
10874
10866
|
});
|
|
10875
|
-
var
|
|
10867
|
+
var clusterStyle = {
|
|
10868
|
+
display: "inline-flex",
|
|
10869
|
+
alignItems: "center",
|
|
10870
|
+
isolation: "isolate"
|
|
10871
|
+
};
|
|
10872
|
+
var clusterChipStyle = (bg, last) => ({
|
|
10873
|
+
width: 32,
|
|
10874
|
+
height: 32,
|
|
10875
|
+
borderRadius: "50%",
|
|
10876
|
+
background: bg,
|
|
10877
|
+
display: "inline-flex",
|
|
10878
|
+
alignItems: "center",
|
|
10879
|
+
justifyContent: "center",
|
|
10880
|
+
marginRight: last ? 0 : -12,
|
|
10881
|
+
filter: "drop-shadow(0 0 2px rgba(0, 0, 0, 0.24))",
|
|
10882
|
+
flexShrink: 0
|
|
10883
|
+
});
|
|
10884
|
+
var clusterIconStyle = {
|
|
10885
|
+
width: 24,
|
|
10886
|
+
height: 24,
|
|
10887
|
+
borderRadius: "50%",
|
|
10888
|
+
objectFit: "cover",
|
|
10889
|
+
display: "block"
|
|
10890
|
+
};
|
|
10891
|
+
var feesBadgeStyle = (bg, color) => ({
|
|
10892
|
+
position: "absolute",
|
|
10893
|
+
left: 131,
|
|
10894
|
+
top: 45,
|
|
10876
10895
|
display: "inline-flex",
|
|
10877
10896
|
alignItems: "center",
|
|
10878
10897
|
justifyContent: "center",
|
|
10879
10898
|
background: bg,
|
|
10880
10899
|
color,
|
|
10881
|
-
fontSize:
|
|
10900
|
+
fontSize: 12,
|
|
10882
10901
|
fontWeight: 500,
|
|
10883
10902
|
lineHeight: 1,
|
|
10884
10903
|
padding: "4px 8px",
|
|
10885
|
-
borderRadius:
|
|
10886
|
-
|
|
10887
|
-
|
|
10904
|
+
borderRadius: 6,
|
|
10905
|
+
whiteSpace: "nowrap",
|
|
10906
|
+
transform: "rotate(-6.75deg)",
|
|
10907
|
+
boxShadow: "0 2px 4px rgba(0, 0, 0, 0.16)",
|
|
10908
|
+
pointerEvents: "none"
|
|
10888
10909
|
});
|
|
10889
|
-
var
|
|
10910
|
+
var dividerRowStyle = {
|
|
10890
10911
|
display: "flex",
|
|
10891
|
-
alignItems: "center"
|
|
10912
|
+
alignItems: "center",
|
|
10913
|
+
justifyContent: "center",
|
|
10914
|
+
gap: 10,
|
|
10915
|
+
padding: "0 16px",
|
|
10916
|
+
width: "100%",
|
|
10917
|
+
boxSizing: "border-box"
|
|
10892
10918
|
};
|
|
10893
|
-
var
|
|
10894
|
-
|
|
10895
|
-
height:
|
|
10896
|
-
|
|
10897
|
-
display: "block",
|
|
10898
|
-
opacity: color.includes("rgba") ? 0.3 : 1
|
|
10919
|
+
var dividerRuleStyle = (color) => ({
|
|
10920
|
+
flex: 1,
|
|
10921
|
+
height: 1,
|
|
10922
|
+
background: color
|
|
10899
10923
|
});
|
|
10900
|
-
var
|
|
10901
|
-
|
|
10902
|
-
|
|
10924
|
+
var dividerLabelStyle = (color) => ({
|
|
10925
|
+
color,
|
|
10926
|
+
fontSize: 12,
|
|
10927
|
+
fontWeight: 500,
|
|
10928
|
+
whiteSpace: "nowrap"
|
|
10929
|
+
});
|
|
10930
|
+
var manualRowStyle = (bg) => ({
|
|
10931
|
+
display: "flex",
|
|
10932
|
+
alignItems: "center",
|
|
10933
|
+
gap: 8,
|
|
10934
|
+
width: "100%",
|
|
10935
|
+
height: 56,
|
|
10936
|
+
padding: "12px 24px",
|
|
10937
|
+
background: bg,
|
|
10938
|
+
border: "none",
|
|
10939
|
+
borderRadius: 28,
|
|
10940
|
+
cursor: "pointer",
|
|
10941
|
+
boxSizing: "border-box",
|
|
10942
|
+
fontFamily: "inherit"
|
|
10943
|
+
});
|
|
10944
|
+
var manualLabelStyle = (color) => ({
|
|
10945
|
+
flex: 1,
|
|
10946
|
+
minWidth: 0,
|
|
10947
|
+
color,
|
|
10948
|
+
fontSize: 16,
|
|
10949
|
+
fontWeight: 400
|
|
10950
|
+
});
|
|
10951
|
+
var closeButtonStyle2 = (bg, color) => ({
|
|
10952
|
+
flexShrink: 0,
|
|
10953
|
+
width: 44,
|
|
10954
|
+
height: 44,
|
|
10903
10955
|
borderRadius: "50%",
|
|
10904
10956
|
border: "none",
|
|
10905
|
-
background:
|
|
10906
|
-
color
|
|
10957
|
+
background: bg,
|
|
10958
|
+
color,
|
|
10907
10959
|
display: "flex",
|
|
10908
10960
|
alignItems: "center",
|
|
10909
10961
|
justifyContent: "center",
|
|
@@ -11259,7 +11311,7 @@ function PasskeyPopupWelcomeScreen({
|
|
|
11259
11311
|
/* @__PURE__ */ jsxs("div", { style: contentStyle6, children: [
|
|
11260
11312
|
/* @__PURE__ */ jsxs("div", { style: lockupStyle, children: [
|
|
11261
11313
|
/* @__PURE__ */ jsx("img", { src: BLINK_LOGO, alt: "", "aria-hidden": true, style: lockupMarkStyle }),
|
|
11262
|
-
/* @__PURE__ */ jsx("span", { style:
|
|
11314
|
+
/* @__PURE__ */ jsx("span", { style: wordmarkStyle(tokens.text), children: "Blink" })
|
|
11263
11315
|
] }),
|
|
11264
11316
|
/* @__PURE__ */ jsx("div", { style: illustrationFrameStyle, children: /* @__PURE__ */ jsx(
|
|
11265
11317
|
"img",
|
|
@@ -11316,7 +11368,7 @@ var lockupMarkStyle = {
|
|
|
11316
11368
|
height: 24,
|
|
11317
11369
|
display: "block"
|
|
11318
11370
|
};
|
|
11319
|
-
var
|
|
11371
|
+
var wordmarkStyle = (color) => ({
|
|
11320
11372
|
fontSize: "1.45rem",
|
|
11321
11373
|
fontWeight: 500,
|
|
11322
11374
|
letterSpacing: "-0.03em",
|
|
@@ -11765,7 +11817,7 @@ function WalletPickerScreen({
|
|
|
11765
11817
|
),
|
|
11766
11818
|
/* @__PURE__ */ jsx("h1", { style: titleStyle3(tokens.text), children: "Link wallet" }),
|
|
11767
11819
|
error && /* @__PURE__ */ jsx("div", { style: errorBannerStyle5(tokens), children: error }),
|
|
11768
|
-
/* @__PURE__ */ jsx("div", { style: sheetStackStyle, children: /* @__PURE__ */ jsx("div", { style:
|
|
11820
|
+
/* @__PURE__ */ jsx("div", { style: sheetStackStyle, children: /* @__PURE__ */ jsx("div", { style: cardStyle(tokens.bgCardTranslucent), children: showOtherWallets ? /* @__PURE__ */ jsx(
|
|
11769
11821
|
OtherWalletsPanel,
|
|
11770
11822
|
{
|
|
11771
11823
|
wallets: filteredReownWallets,
|
|
@@ -11988,7 +12040,7 @@ var sheetStackStyle = {
|
|
|
11988
12040
|
flexDirection: "column",
|
|
11989
12041
|
gap: 16
|
|
11990
12042
|
};
|
|
11991
|
-
var
|
|
12043
|
+
var cardStyle = (bg) => ({
|
|
11992
12044
|
display: "flex",
|
|
11993
12045
|
flexDirection: "column",
|
|
11994
12046
|
background: bg,
|
|
@@ -12141,7 +12193,7 @@ function LinkTokensScreen({
|
|
|
12141
12193
|
{
|
|
12142
12194
|
onBack,
|
|
12143
12195
|
onLogout,
|
|
12144
|
-
center: /* @__PURE__ */ jsx("img", { src: BLINK_WORDMARK, alt: "Blink", style:
|
|
12196
|
+
center: /* @__PURE__ */ jsx("img", { src: BLINK_WORDMARK, alt: "Blink", style: wordmarkImgStyle2 })
|
|
12145
12197
|
}
|
|
12146
12198
|
),
|
|
12147
12199
|
/* @__PURE__ */ jsxs("div", { style: contentStyle9, children: [
|
|
@@ -12207,7 +12259,7 @@ var contentStyle9 = {
|
|
|
12207
12259
|
minHeight: 0,
|
|
12208
12260
|
width: "100%"
|
|
12209
12261
|
};
|
|
12210
|
-
var
|
|
12262
|
+
var wordmarkImgStyle2 = {
|
|
12211
12263
|
height: 22,
|
|
12212
12264
|
width: "auto",
|
|
12213
12265
|
display: "block",
|
|
@@ -12531,7 +12583,7 @@ function SelectDepositSourceScreen({
|
|
|
12531
12583
|
label: "Send manually",
|
|
12532
12584
|
color: tokens.text,
|
|
12533
12585
|
onClick: onSendManually,
|
|
12534
|
-
icon: /* @__PURE__ */ jsx(
|
|
12586
|
+
icon: /* @__PURE__ */ jsx(QrIcon2, { color: tokens.text })
|
|
12535
12587
|
}
|
|
12536
12588
|
),
|
|
12537
12589
|
onAddProvider && /* @__PURE__ */ jsx(
|
|
@@ -12540,7 +12592,7 @@ function SelectDepositSourceScreen({
|
|
|
12540
12592
|
label: "Link Wallet",
|
|
12541
12593
|
color: tokens.text,
|
|
12542
12594
|
onClick: onAddProvider,
|
|
12543
|
-
icon: /* @__PURE__ */ jsx(
|
|
12595
|
+
icon: /* @__PURE__ */ jsx(WalletIcon, {})
|
|
12544
12596
|
}
|
|
12545
12597
|
)
|
|
12546
12598
|
] })
|
|
@@ -12625,12 +12677,23 @@ function ActionRow({
|
|
|
12625
12677
|
onClick,
|
|
12626
12678
|
icon
|
|
12627
12679
|
}) {
|
|
12628
|
-
|
|
12629
|
-
|
|
12630
|
-
|
|
12631
|
-
|
|
12680
|
+
const [hovered, setHovered] = useState(false);
|
|
12681
|
+
return /* @__PURE__ */ jsxs(
|
|
12682
|
+
"button",
|
|
12683
|
+
{
|
|
12684
|
+
type: "button",
|
|
12685
|
+
onClick,
|
|
12686
|
+
onMouseEnter: () => setHovered(true),
|
|
12687
|
+
onMouseLeave: () => setHovered(false),
|
|
12688
|
+
style: actionRowStyle(color, hovered),
|
|
12689
|
+
children: [
|
|
12690
|
+
/* @__PURE__ */ jsx("span", { style: actionIconSlotStyle, children: icon }),
|
|
12691
|
+
/* @__PURE__ */ jsx("span", { style: actionLabelStyle, children: label })
|
|
12692
|
+
]
|
|
12693
|
+
}
|
|
12694
|
+
);
|
|
12632
12695
|
}
|
|
12633
|
-
function
|
|
12696
|
+
function QrIcon2({ color }) {
|
|
12634
12697
|
return /* @__PURE__ */ jsxs("svg", { width: "24", height: "24", viewBox: "0 0 24 24", fill: "none", "aria-hidden": "true", children: [
|
|
12635
12698
|
/* @__PURE__ */ jsx("rect", { x: "3.5", y: "3.5", width: "7", height: "7", rx: "1", stroke: color, strokeWidth: "1.4" }),
|
|
12636
12699
|
/* @__PURE__ */ jsx("rect", { x: "6", y: "6", width: "2", height: "2", fill: color }),
|
|
@@ -12644,7 +12707,7 @@ function QrIcon({ color }) {
|
|
|
12644
12707
|
/* @__PURE__ */ jsx("rect", { x: "18", y: "18", width: "2.5", height: "2.5", fill: color })
|
|
12645
12708
|
] });
|
|
12646
12709
|
}
|
|
12647
|
-
function
|
|
12710
|
+
function WalletIcon() {
|
|
12648
12711
|
return /* @__PURE__ */ jsxs("svg", { width: "24", height: "24", viewBox: "0 0 24 24", fill: "none", "aria-hidden": "true", children: [
|
|
12649
12712
|
/* @__PURE__ */ jsx(
|
|
12650
12713
|
"path",
|
|
@@ -12662,13 +12725,13 @@ function WalletIcon2() {
|
|
|
12662
12725
|
)
|
|
12663
12726
|
] });
|
|
12664
12727
|
}
|
|
12665
|
-
var actionRowStyle = (color) => ({
|
|
12728
|
+
var actionRowStyle = (color, hovered) => ({
|
|
12666
12729
|
display: "flex",
|
|
12667
12730
|
alignItems: "center",
|
|
12668
12731
|
gap: 8,
|
|
12669
12732
|
width: "100%",
|
|
12670
12733
|
padding: 4,
|
|
12671
|
-
background: "transparent",
|
|
12734
|
+
background: hovered ? "rgba(255,255,255,0.24)" : "transparent",
|
|
12672
12735
|
border: "none",
|
|
12673
12736
|
borderRadius: 56,
|
|
12674
12737
|
color,
|
|
@@ -12676,6 +12739,7 @@ var actionRowStyle = (color) => ({
|
|
|
12676
12739
|
fontFamily: "inherit",
|
|
12677
12740
|
textAlign: "left",
|
|
12678
12741
|
outline: "none",
|
|
12742
|
+
transition: "background 0.15s ease",
|
|
12679
12743
|
boxSizing: "border-box"
|
|
12680
12744
|
});
|
|
12681
12745
|
var actionIconSlotStyle = {
|
|
@@ -12850,7 +12914,7 @@ function DepositScreen({
|
|
|
12850
12914
|
onClick: () => onDeposit(amount),
|
|
12851
12915
|
disabled: !canDeposit,
|
|
12852
12916
|
loading: processing,
|
|
12853
|
-
icon: /* @__PURE__ */ jsx(
|
|
12917
|
+
icon: /* @__PURE__ */ jsx(FaceIdIcon2, {}),
|
|
12854
12918
|
children: "Deposit"
|
|
12855
12919
|
}
|
|
12856
12920
|
);
|
|
@@ -12998,7 +13062,7 @@ function DepositScreen({
|
|
|
12998
13062
|
) : /* @__PURE__ */ jsx("span", { style: redesignNoFeesStyle(tokens.text), children: "No fees" }) }),
|
|
12999
13063
|
showHeroPresets && presetsRow
|
|
13000
13064
|
] }),
|
|
13001
|
-
/* @__PURE__ */ jsx("div", { style: bannerSlotStyle2, children: showLowFunds ? /* @__PURE__ */ jsx(
|
|
13065
|
+
/* @__PURE__ */ jsx("div", { style: bannerSlotStyle2, children: mobileEntryWithKeypad ? null : showLowFunds ? /* @__PURE__ */ jsx(
|
|
13002
13066
|
NotificationBanner,
|
|
13003
13067
|
{
|
|
13004
13068
|
variant: "negative",
|
|
@@ -13020,7 +13084,7 @@ function DepositScreen({
|
|
|
13020
13084
|
) : error ? /* @__PURE__ */ jsx(NotificationBanner, { title: "Something went wrong", description: error }) : null })
|
|
13021
13085
|
] });
|
|
13022
13086
|
}
|
|
13023
|
-
function
|
|
13087
|
+
function FaceIdIcon2() {
|
|
13024
13088
|
return /* @__PURE__ */ jsxs("svg", { width: "24", height: "24", viewBox: "0 0 24 24", fill: "none", "aria-hidden": "true", children: [
|
|
13025
13089
|
/* @__PURE__ */ jsx("path", { d: "M3 8V6a3 3 0 013-3h2", stroke: "currentColor", strokeWidth: "1.6", strokeLinecap: "round" }),
|
|
13026
13090
|
/* @__PURE__ */ jsx("path", { d: "M16 3h2a3 3 0 013 3v2", stroke: "currentColor", strokeWidth: "1.6", strokeLinecap: "round" }),
|
|
@@ -14760,30 +14824,102 @@ var closeButtonStyle5 = (bg, color) => ({
|
|
|
14760
14824
|
padding: 0
|
|
14761
14825
|
});
|
|
14762
14826
|
var DELAYED_RETRY_VISIBLE_MS = 2e4;
|
|
14827
|
+
var SPIN_KEYFRAMES_CSS2 = `
|
|
14828
|
+
@keyframes blink-approving-spin {
|
|
14829
|
+
to { transform: rotate(360deg); }
|
|
14830
|
+
}`;
|
|
14763
14831
|
function ApprovingInWalletScreen({
|
|
14764
14832
|
tokenSymbol,
|
|
14765
14833
|
chainName,
|
|
14766
14834
|
step,
|
|
14767
14835
|
error,
|
|
14768
|
-
onRetry
|
|
14836
|
+
onRetry,
|
|
14837
|
+
onBack,
|
|
14838
|
+
onLogout
|
|
14769
14839
|
}) {
|
|
14770
|
-
const { tokens } = useBlinkConfig();
|
|
14840
|
+
const { tokens: t } = useBlinkConfig();
|
|
14771
14841
|
const showDelayedRetry = useDelayedRetry(error == null && onRetry != null);
|
|
14772
14842
|
const retryVisible = onRetry != null && (error != null || showDelayedRetry);
|
|
14773
|
-
|
|
14843
|
+
const token = tokenSymbol ?? "token";
|
|
14844
|
+
const steps = buildSteps(step, tokenSymbol, chainName);
|
|
14845
|
+
return /* @__PURE__ */ jsxs(
|
|
14774
14846
|
ScreenLayout,
|
|
14775
14847
|
{
|
|
14776
|
-
|
|
14777
|
-
|
|
14778
|
-
/* @__PURE__ */
|
|
14779
|
-
|
|
14780
|
-
|
|
14781
|
-
/* @__PURE__ */ jsxs("div", { style: lockupStyle2, children: [
|
|
14782
|
-
/* @__PURE__ */ jsx("img", { src: BLINK_LOGO, alt: "", "aria-hidden": true, style: lockupMarkStyle2 }),
|
|
14783
|
-
/* @__PURE__ */ jsx("span", { style: wordmarkStyle3(tokens.text), children: "Blink" })
|
|
14848
|
+
scrollableBody: false,
|
|
14849
|
+
footer: /* @__PURE__ */ jsxs("div", { style: footerStackStyle4, children: [
|
|
14850
|
+
/* @__PURE__ */ jsxs("div", { style: lockBannerStyle2, children: [
|
|
14851
|
+
/* @__PURE__ */ jsx("span", { style: lockIconWrapStyle2(t.text), children: /* @__PURE__ */ jsx(LockIcon3, {}) }),
|
|
14852
|
+
/* @__PURE__ */ jsx("p", { style: lockBannerTextStyle2(t.text), children: "Your passkey is required each time you deposit. Funds cannot move without your approval." })
|
|
14784
14853
|
] }),
|
|
14785
|
-
/* @__PURE__ */
|
|
14786
|
-
|
|
14854
|
+
retryVisible ? /* @__PURE__ */ jsxs("div", { style: retryStackStyle, children: [
|
|
14855
|
+
error && /* @__PURE__ */ jsx(InfoBanner, { children: error }),
|
|
14856
|
+
/* @__PURE__ */ jsx(OutlineButton, { onClick: onRetry, children: "Retry" })
|
|
14857
|
+
] }) : /* @__PURE__ */ jsx(PrimaryButton, { spinnerOnly: true })
|
|
14858
|
+
] }),
|
|
14859
|
+
children: [
|
|
14860
|
+
/* @__PURE__ */ jsx(
|
|
14861
|
+
ScreenHeader,
|
|
14862
|
+
{
|
|
14863
|
+
onBack,
|
|
14864
|
+
onLogout,
|
|
14865
|
+
center: /* @__PURE__ */ jsx("img", { src: BLINK_WORDMARK, alt: "Blink", style: wordmarkImgStyle3 })
|
|
14866
|
+
}
|
|
14867
|
+
),
|
|
14868
|
+
/* @__PURE__ */ jsxs("div", { style: contentStyle15, children: [
|
|
14869
|
+
/* @__PURE__ */ jsx("h2", { style: headingStyle13(t.text), children: `Authorizing ${token} for passkey deposits` }),
|
|
14870
|
+
/* @__PURE__ */ jsxs("div", { style: cardStyle2(t.bgRecessed, t.radiusLg), children: [
|
|
14871
|
+
/* @__PURE__ */ jsx("style", { children: SPIN_KEYFRAMES_CSS2 }),
|
|
14872
|
+
steps.map((s, i) => /* @__PURE__ */ jsx(ChecklistRow, { step: s }, i))
|
|
14873
|
+
] })
|
|
14874
|
+
] })
|
|
14875
|
+
]
|
|
14876
|
+
}
|
|
14877
|
+
);
|
|
14878
|
+
}
|
|
14879
|
+
function ChecklistRow({ step }) {
|
|
14880
|
+
const { tokens: t } = useBlinkConfig();
|
|
14881
|
+
const isComplete = step.status === "complete";
|
|
14882
|
+
const isActive = step.status === "active";
|
|
14883
|
+
return /* @__PURE__ */ jsxs("div", { style: rowStyle6, children: [
|
|
14884
|
+
isComplete ? /* @__PURE__ */ jsx("span", { style: completeBadgeStyle(t.accent), children: /* @__PURE__ */ jsx("svg", { width: "14", height: "14", viewBox: "0 0 24 24", fill: "none", children: /* @__PURE__ */ jsx(
|
|
14885
|
+
"path",
|
|
14886
|
+
{
|
|
14887
|
+
d: "M9 16.17L4.83 12l-1.42 1.41L9 19 21 7l-1.41-1.41L9 16.17z",
|
|
14888
|
+
fill: t.accentText
|
|
14889
|
+
}
|
|
14890
|
+
) }) }) : isActive ? /* @__PURE__ */ jsx(RowSpinner, { color: t.accent }) : /* @__PURE__ */ jsx("span", { style: pendingBadgeStyle(t.bgRecessed) }),
|
|
14891
|
+
/* @__PURE__ */ jsx("span", { style: labelStyle7(isComplete || isActive ? t.text : t.textMuted), children: step.label })
|
|
14892
|
+
] });
|
|
14893
|
+
}
|
|
14894
|
+
function RowSpinner({ color }) {
|
|
14895
|
+
const size = 24;
|
|
14896
|
+
const stroke = 2;
|
|
14897
|
+
const r = (size - stroke) / 2;
|
|
14898
|
+
const c = size / 2;
|
|
14899
|
+
const circumference = 2 * Math.PI * r;
|
|
14900
|
+
return /* @__PURE__ */ jsx(
|
|
14901
|
+
"div",
|
|
14902
|
+
{
|
|
14903
|
+
role: "status",
|
|
14904
|
+
"aria-label": "Loading",
|
|
14905
|
+
style: {
|
|
14906
|
+
width: size,
|
|
14907
|
+
height: size,
|
|
14908
|
+
flexShrink: 0,
|
|
14909
|
+
animation: "blink-approving-spin 0.9s linear infinite"
|
|
14910
|
+
},
|
|
14911
|
+
children: /* @__PURE__ */ jsx("svg", { width: size, height: size, viewBox: `0 0 ${size} ${size}`, fill: "none", children: /* @__PURE__ */ jsx(
|
|
14912
|
+
"circle",
|
|
14913
|
+
{
|
|
14914
|
+
cx: c,
|
|
14915
|
+
cy: c,
|
|
14916
|
+
r,
|
|
14917
|
+
stroke: color,
|
|
14918
|
+
strokeWidth: stroke,
|
|
14919
|
+
strokeLinecap: "round",
|
|
14920
|
+
strokeDasharray: `${circumference * 0.25} ${circumference}`
|
|
14921
|
+
}
|
|
14922
|
+
) })
|
|
14787
14923
|
}
|
|
14788
14924
|
);
|
|
14789
14925
|
}
|
|
@@ -14812,50 +14948,124 @@ function useDelayedRetry(enabled) {
|
|
|
14812
14948
|
}, [enabled]);
|
|
14813
14949
|
return visible;
|
|
14814
14950
|
}
|
|
14951
|
+
function LockIcon3() {
|
|
14952
|
+
return /* @__PURE__ */ jsx("svg", { width: "24", height: "24", viewBox: "0 0 24 24", fill: "none", "aria-hidden": "true", children: /* @__PURE__ */ jsx(
|
|
14953
|
+
"path",
|
|
14954
|
+
{
|
|
14955
|
+
d: "M7 10V8a5 5 0 0 1 10 0v2m-12 0h14a1 1 0 0 1 1 1v8a1 1 0 0 1-1 1H5a1 1 0 0 1-1-1v-8a1 1 0 0 1 1-1z",
|
|
14956
|
+
stroke: "currentColor",
|
|
14957
|
+
strokeWidth: "2",
|
|
14958
|
+
strokeLinecap: "round",
|
|
14959
|
+
strokeLinejoin: "round"
|
|
14960
|
+
}
|
|
14961
|
+
) });
|
|
14962
|
+
}
|
|
14963
|
+
var wordmarkImgStyle3 = {
|
|
14964
|
+
height: 22,
|
|
14965
|
+
width: "auto",
|
|
14966
|
+
display: "block",
|
|
14967
|
+
pointerEvents: "none",
|
|
14968
|
+
userSelect: "none"
|
|
14969
|
+
};
|
|
14815
14970
|
var contentStyle15 = {
|
|
14971
|
+
display: "flex",
|
|
14972
|
+
flexDirection: "column",
|
|
14973
|
+
alignItems: "center",
|
|
14974
|
+
gap: 16,
|
|
14975
|
+
paddingTop: 8,
|
|
14816
14976
|
flex: 1,
|
|
14817
14977
|
minHeight: 0,
|
|
14978
|
+
width: "100%"
|
|
14979
|
+
};
|
|
14980
|
+
var headingStyle13 = (color) => ({
|
|
14981
|
+
fontSize: 24,
|
|
14982
|
+
fontWeight: 700,
|
|
14983
|
+
lineHeight: "normal",
|
|
14984
|
+
letterSpacing: 0,
|
|
14985
|
+
color,
|
|
14986
|
+
margin: 0,
|
|
14987
|
+
textAlign: "center"
|
|
14988
|
+
});
|
|
14989
|
+
var cardStyle2 = (bg, radius) => ({
|
|
14990
|
+
background: bg,
|
|
14991
|
+
borderRadius: radius,
|
|
14992
|
+
padding: 8,
|
|
14993
|
+
width: "100%",
|
|
14994
|
+
boxSizing: "border-box",
|
|
14818
14995
|
display: "flex",
|
|
14819
14996
|
flexDirection: "column",
|
|
14997
|
+
gap: 4
|
|
14998
|
+
});
|
|
14999
|
+
var rowStyle6 = {
|
|
15000
|
+
display: "flex",
|
|
14820
15001
|
alignItems: "center",
|
|
15002
|
+
gap: 16,
|
|
15003
|
+
padding: "12px 16px 12px 12px",
|
|
15004
|
+
borderRadius: 16,
|
|
14821
15005
|
width: "100%",
|
|
14822
|
-
|
|
14823
|
-
// 32px Figma gutter, with 32px above the logo and a 32px gap to the checklist.
|
|
14824
|
-
padding: "32px 8px 0",
|
|
14825
|
-
gap: 32
|
|
15006
|
+
boxSizing: "border-box"
|
|
14826
15007
|
};
|
|
14827
|
-
var
|
|
14828
|
-
|
|
15008
|
+
var completeBadgeStyle = (color) => ({
|
|
15009
|
+
width: 24,
|
|
15010
|
+
height: 24,
|
|
15011
|
+
borderRadius: "50%",
|
|
15012
|
+
background: color,
|
|
15013
|
+
display: "inline-flex",
|
|
14829
15014
|
alignItems: "center",
|
|
14830
|
-
|
|
15015
|
+
justifyContent: "center",
|
|
14831
15016
|
flexShrink: 0
|
|
14832
|
-
};
|
|
14833
|
-
var
|
|
15017
|
+
});
|
|
15018
|
+
var pendingBadgeStyle = (color) => ({
|
|
14834
15019
|
width: 24,
|
|
14835
15020
|
height: 24,
|
|
14836
|
-
|
|
14837
|
-
|
|
14838
|
-
|
|
14839
|
-
|
|
14840
|
-
|
|
14841
|
-
|
|
14842
|
-
|
|
15021
|
+
borderRadius: "50%",
|
|
15022
|
+
background: color,
|
|
15023
|
+
flexShrink: 0
|
|
15024
|
+
});
|
|
15025
|
+
var labelStyle7 = (color) => ({
|
|
15026
|
+
fontSize: "1rem",
|
|
15027
|
+
fontWeight: 400,
|
|
15028
|
+
lineHeight: 1.25,
|
|
14843
15029
|
color
|
|
14844
15030
|
});
|
|
14845
|
-
var
|
|
14846
|
-
flex: 1,
|
|
14847
|
-
minHeight: 0,
|
|
15031
|
+
var footerStackStyle4 = {
|
|
14848
15032
|
display: "flex",
|
|
14849
15033
|
flexDirection: "column",
|
|
14850
|
-
|
|
14851
|
-
justifyContent: "center",
|
|
15034
|
+
gap: 16,
|
|
14852
15035
|
width: "100%"
|
|
14853
15036
|
};
|
|
14854
|
-
var
|
|
15037
|
+
var retryStackStyle = {
|
|
14855
15038
|
display: "flex",
|
|
14856
15039
|
flexDirection: "column",
|
|
14857
|
-
gap: 8
|
|
15040
|
+
gap: 8,
|
|
15041
|
+
width: "100%"
|
|
14858
15042
|
};
|
|
15043
|
+
var lockBannerStyle2 = {
|
|
15044
|
+
display: "flex",
|
|
15045
|
+
alignItems: "flex-start",
|
|
15046
|
+
gap: 16,
|
|
15047
|
+
padding: "12px 16px 12px 12px",
|
|
15048
|
+
borderRadius: 16,
|
|
15049
|
+
width: "100%",
|
|
15050
|
+
boxSizing: "border-box"
|
|
15051
|
+
};
|
|
15052
|
+
var lockIconWrapStyle2 = (color) => ({
|
|
15053
|
+
flexShrink: 0,
|
|
15054
|
+
width: 24,
|
|
15055
|
+
height: 24,
|
|
15056
|
+
display: "inline-flex",
|
|
15057
|
+
alignItems: "center",
|
|
15058
|
+
justifyContent: "center",
|
|
15059
|
+
color
|
|
15060
|
+
});
|
|
15061
|
+
var lockBannerTextStyle2 = (color) => ({
|
|
15062
|
+
margin: 0,
|
|
15063
|
+
flex: 1,
|
|
15064
|
+
fontSize: 12,
|
|
15065
|
+
fontWeight: 500,
|
|
15066
|
+
lineHeight: "normal",
|
|
15067
|
+
color
|
|
15068
|
+
});
|
|
14859
15069
|
function ConfirmSignScreen({
|
|
14860
15070
|
walletName,
|
|
14861
15071
|
chainFamily,
|
|
@@ -14884,7 +15094,7 @@ function ConfirmSignScreen({
|
|
|
14884
15094
|
/* @__PURE__ */ jsx(ScreenHeader, { onLogout }),
|
|
14885
15095
|
/* @__PURE__ */ jsxs("div", { style: contentStyle16, children: [
|
|
14886
15096
|
logoSrc ? /* @__PURE__ */ jsx("img", { src: logoSrc, alt: displayName, style: logoStyle3 }) : /* @__PURE__ */ jsx(Spinner, { size: 48 }),
|
|
14887
|
-
/* @__PURE__ */ jsx("h2", { style:
|
|
15097
|
+
/* @__PURE__ */ jsx("h2", { style: headingStyle14(tokens.text), children: heading }),
|
|
14888
15098
|
/* @__PURE__ */ jsx("p", { style: subtitleStyle10(tokens.textSecondary), children: subtitle }),
|
|
14889
15099
|
/* @__PURE__ */ jsxs("div", { style: successBadgeStyle(tokens), children: [
|
|
14890
15100
|
/* @__PURE__ */ jsx("span", { style: checkmarkStyle, children: "\u2713" }),
|
|
@@ -14910,7 +15120,7 @@ var logoStyle3 = {
|
|
|
14910
15120
|
borderRadius: 14,
|
|
14911
15121
|
objectFit: "contain"
|
|
14912
15122
|
};
|
|
14913
|
-
var
|
|
15123
|
+
var headingStyle14 = (color) => ({
|
|
14914
15124
|
fontSize: "1.45rem",
|
|
14915
15125
|
fontWeight: 700,
|
|
14916
15126
|
letterSpacing: "-0.02em",
|
|
@@ -15272,10 +15482,10 @@ function GuestTokenPickerScreen({
|
|
|
15272
15482
|
children: [
|
|
15273
15483
|
/* @__PURE__ */ jsx(ScreenHeader, { onBack }),
|
|
15274
15484
|
/* @__PURE__ */ jsxs("div", { style: contentStyle17, children: [
|
|
15275
|
-
/* @__PURE__ */ jsx("h2", { style:
|
|
15485
|
+
/* @__PURE__ */ jsx("h2", { style: headingStyle15(tokens.text), children: title }),
|
|
15276
15486
|
error && /* @__PURE__ */ jsx("div", { style: errorBannerStyle8(tokens), children: error }),
|
|
15277
15487
|
entries2.length === 0 ? /* @__PURE__ */ jsx("p", { style: subtitleStyle11(tokens.textMuted), children: emptyMessage ?? "No tokens available." }) : /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
15278
|
-
/* @__PURE__ */ jsx("label", { style:
|
|
15488
|
+
/* @__PURE__ */ jsx("label", { style: labelStyle8(tokens.textSecondary), children: "Token" }),
|
|
15279
15489
|
/* @__PURE__ */ jsx(
|
|
15280
15490
|
"button",
|
|
15281
15491
|
{
|
|
@@ -15355,7 +15565,7 @@ var contentStyle17 = {
|
|
|
15355
15565
|
padding: "0 20px 16px",
|
|
15356
15566
|
gap: 12
|
|
15357
15567
|
};
|
|
15358
|
-
var
|
|
15568
|
+
var headingStyle15 = (color) => ({
|
|
15359
15569
|
fontSize: "1.25rem",
|
|
15360
15570
|
fontWeight: 700,
|
|
15361
15571
|
color,
|
|
@@ -15367,7 +15577,7 @@ var subtitleStyle11 = (color) => ({
|
|
|
15367
15577
|
color,
|
|
15368
15578
|
textAlign: "center"
|
|
15369
15579
|
});
|
|
15370
|
-
var
|
|
15580
|
+
var labelStyle8 = (color) => ({
|
|
15371
15581
|
fontSize: "0.75rem",
|
|
15372
15582
|
fontWeight: 600,
|
|
15373
15583
|
color,
|
|
@@ -15500,7 +15710,7 @@ function ManualTransferFlow({
|
|
|
15500
15710
|
screenContent = /* @__PURE__ */ jsxs(ScreenLayout, { footer: /* @__PURE__ */ jsx(PrimaryButton, { onClick: onBack, children: "Back" }), children: [
|
|
15501
15711
|
/* @__PURE__ */ jsx(ScreenHeader, { onBack }),
|
|
15502
15712
|
/* @__PURE__ */ jsxs("div", { style: contentStyle18, children: [
|
|
15503
|
-
/* @__PURE__ */ jsx("h2", { style:
|
|
15713
|
+
/* @__PURE__ */ jsx("h2", { style: headingStyle16(tokens.text), children: "Manual transfer unavailable" }),
|
|
15504
15714
|
/* @__PURE__ */ jsx("p", { style: bodyStyle5(tokens.textMuted), children: "merchantAuthorization is required." })
|
|
15505
15715
|
] })
|
|
15506
15716
|
] });
|
|
@@ -15579,7 +15789,7 @@ var contentStyle18 = {
|
|
|
15579
15789
|
paddingBottom: 24,
|
|
15580
15790
|
width: "100%"
|
|
15581
15791
|
};
|
|
15582
|
-
var
|
|
15792
|
+
var headingStyle16 = (color) => ({
|
|
15583
15793
|
color,
|
|
15584
15794
|
fontSize: "2rem",
|
|
15585
15795
|
lineHeight: 1.05,
|
|
@@ -15604,7 +15814,7 @@ function GenericLoadingShimmer() {
|
|
|
15604
15814
|
role: "status",
|
|
15605
15815
|
"aria-label": "Loading payment flow",
|
|
15606
15816
|
"aria-busy": "true",
|
|
15607
|
-
style:
|
|
15817
|
+
style: sheetStyle2(tokens),
|
|
15608
15818
|
children: [
|
|
15609
15819
|
/* @__PURE__ */ jsx("style", { children: `
|
|
15610
15820
|
@keyframes blink-loading-shimmer {
|
|
@@ -15650,7 +15860,7 @@ function ShimmerBlock2({
|
|
|
15650
15860
|
}
|
|
15651
15861
|
);
|
|
15652
15862
|
}
|
|
15653
|
-
var
|
|
15863
|
+
var sheetStyle2 = (tokens) => ({
|
|
15654
15864
|
display: "flex",
|
|
15655
15865
|
flexDirection: "column",
|
|
15656
15866
|
height: "100%",
|
|
@@ -15697,12 +15907,12 @@ function buildLoginScreenProps({ flow, handlers }) {
|
|
|
15697
15907
|
}
|
|
15698
15908
|
function buildDepositOptionsScreenProps({ flow, handlers }) {
|
|
15699
15909
|
return {
|
|
15700
|
-
// "
|
|
15701
|
-
// existing login path runs unchanged.
|
|
15702
|
-
onFromWallet: handlers.onLogin,
|
|
15703
|
-
// "To Address" navigates to the manual-transfer flow.
|
|
15910
|
+
// "Send Crypto Manually" navigates to the manual-transfer flow.
|
|
15704
15911
|
onToAddress: () => handlers.onSetPhase({ step: "manual-transfer" }),
|
|
15705
|
-
|
|
15912
|
+
// The primary CTA routes to the login screen (credential selection) rather
|
|
15913
|
+
// than prompting for a passkey directly, matching the connect-wallet entry
|
|
15914
|
+
// point. onLogin dispatches REQUEST_LOGIN → step 'login' → LoginScreen.
|
|
15915
|
+
onSignInWithBlink: handlers.onLogin,
|
|
15706
15916
|
// Deposit-options is the root screen for the full-widget flow, so the
|
|
15707
15917
|
// top-right (X) closes the widget through the same `onBack` the host
|
|
15708
15918
|
// provides. Falling back to `undefined` hides the close button when the
|
|
@@ -15794,7 +16004,8 @@ function buildApprovingInWalletScreenProps({
|
|
|
15794
16004
|
chainName: setupToken?.chainName ?? null,
|
|
15795
16005
|
step,
|
|
15796
16006
|
error: flow.state.error || remote.authExecutorError,
|
|
15797
|
-
onRetry: handlers.onRetryAuthorization
|
|
16007
|
+
onRetry: handlers.onRetryAuthorization,
|
|
16008
|
+
onLogout: flow.isDesktop ? handlers.onLogout : void 0
|
|
15798
16009
|
};
|
|
15799
16010
|
}
|
|
15800
16011
|
function buildLinkTokensScreenProps({
|
|
@@ -19556,25 +19767,6 @@ function BlinkPaymentInner({
|
|
|
19556
19767
|
) });
|
|
19557
19768
|
}
|
|
19558
19769
|
|
|
19559
|
-
|
|
19560
|
-
var FALLBACK = "Biometric verification";
|
|
19561
|
-
function getDeviceBiometricUnlockText() {
|
|
19562
|
-
const ua = typeof navigator !== "undefined" && typeof navigator.userAgent === "string" ? navigator.userAgent : "";
|
|
19563
|
-
if (/iPhone|iPad|iPod/i.test(ua)) {
|
|
19564
|
-
return "Face ID";
|
|
19565
|
-
}
|
|
19566
|
-
if (/Android/i.test(ua)) {
|
|
19567
|
-
return "Fingerprint or face unlock";
|
|
19568
|
-
}
|
|
19569
|
-
if (/Windows NT/i.test(ua)) {
|
|
19570
|
-
return "Windows Hello";
|
|
19571
|
-
}
|
|
19572
|
-
if (/Macintosh|Mac OS X/i.test(ua)) {
|
|
19573
|
-
return "Touch ID";
|
|
19574
|
-
}
|
|
19575
|
-
return FALLBACK;
|
|
19576
|
-
}
|
|
19577
|
-
|
|
19578
|
-
export { ACCOUNT_SWITCH_CONFLICT_MESSAGE, AdvancedSourceScreen, ApprovingInWalletScreen, AuthorizationSessionCancelledError, BLINK_ERROR_ILLUSTRATION, BLINK_LOGO, BLINK_MASCOT, BLINK_PASSKEY_ILLUSTRATION, BLINK_SUCCESS_ILLUSTRATION, BlinkErrorScreen, BlinkInitialLoadingScreen, BlinkLoadingScreen, BlinkPayment, BlinkProvider, ConfirmSignScreen, DepositCompleteScreen, DepositScreen, DepositTransferStatusScreen, GuestTokenPickerScreen, IconCircle, InfoBanner, LOGIN_KEY_ILLUSTRATION, LinkTokensScreen, LoginScreen, OpenWalletScreen, OtpVerifyScreen, OutlineButton, PasskeyIframeBlockedError, PasskeyPopupWelcomeScreen, PasskeyScreen, PoweredByFooter, PrimaryButton, ScreenHeader, ScreenLayout, SecondaryButton, SelectDepositSourceScreen, SelectSourceScreen, SettingsMenu, Spinner, StepList, StepRenderer, SuccessScreen, TokenPickerScreen, VerifyPasskeyScreen, WalletPickerScreen, appendDebug, api_exports as blinkApi, clearDebugEntries, createInitialState, credentialIdBase64ToBytes, darkTheme, darkThemeNew, darkTransparentTheme, darkTransparentThemeNew, deviceHasPasskey, encodePermit2ApproveCalldata, findDevicePasskey, findDevicePasskeyViaPopup, getAtomicBatchSupportDebugInfo, getDebugEntries, getDeviceBiometricUnlockText, getTheme, getThemeBase, getWalletCapabilities, isAuthorizationSessionCancelled, isExpectedAuthorizationCancellation, isTerminalTransferStatus, isTransferAwaitingCompletion, isTransparentTheme, isUserDismissedAuthorizationError, isVisibleUsdAmountAtTwoDecimals, lightTheme, lightThemeNew, lightTransparentTheme, lightTransparentThemeNew, mapGuestPickerEntries, replaceOpenProviderForAccountSwitch, resolvePasskeyRpId, screenForPhase, subscribeDebug, supportsAtomicBatch, supportsPaymasterService, useAuthorizationExecutor, useAuthorizationOrchestrator, useBlinkConfig, useBlinkDebugLog, useBlinkDepositAmount, useTransferPolling, useTransferSigning };
|
|
19770
|
+
export { ACCOUNT_SWITCH_CONFLICT_MESSAGE, AdvancedSourceScreen, ApprovingInWalletScreen, AuthorizationSessionCancelledError, BLINK_ERROR_ILLUSTRATION, BLINK_LOGO, BLINK_MASCOT, BLINK_PASSKEY_ILLUSTRATION, BLINK_SUCCESS_ILLUSTRATION, BlinkErrorScreen, BlinkInitialLoadingScreen, BlinkLoadingScreen, BlinkPayment, BlinkProvider, ConfirmSignScreen, DepositCompleteScreen, DepositOptionsScreen, DepositScreen, DepositTransferStatusScreen, GuestTokenPickerScreen, IconCircle, InfoBanner, LOGIN_KEY_ILLUSTRATION, LinkTokensScreen, LoginScreen, OpenWalletScreen, OtpVerifyScreen, OutlineButton, PasskeyIframeBlockedError, PasskeyPopupWelcomeScreen, PasskeyScreen, PoweredByFooter, PrimaryButton, ScreenHeader, ScreenLayout, SecondaryButton, SelectDepositSourceScreen, SelectSourceScreen, SettingsMenu, Spinner, StepList, StepRenderer, SuccessScreen, TokenPickerScreen, VerifyPasskeyScreen, WalletPickerScreen, appendDebug, api_exports as blinkApi, clearDebugEntries, createInitialState, credentialIdBase64ToBytes, darkTheme, darkThemeNew, darkTransparentTheme, darkTransparentThemeNew, deviceHasPasskey, encodePermit2ApproveCalldata, findDevicePasskey, findDevicePasskeyViaPopup, getAtomicBatchSupportDebugInfo, getDebugEntries, getDeviceBiometricUnlockText, getTheme, getThemeBase, getWalletCapabilities, isAuthorizationSessionCancelled, isExpectedAuthorizationCancellation, isTerminalTransferStatus, isTransferAwaitingCompletion, isTransparentTheme, isUserDismissedAuthorizationError, isVisibleUsdAmountAtTwoDecimals, lightTheme, lightThemeNew, lightTransparentTheme, lightTransparentThemeNew, mapGuestPickerEntries, replaceOpenProviderForAccountSwitch, resolvePasskeyRpId, screenForPhase, subscribeDebug, supportsAtomicBatch, supportsPaymasterService, useAuthorizationExecutor, useAuthorizationOrchestrator, useBlinkConfig, useBlinkDebugLog, useBlinkDepositAmount, useTransferPolling, useTransferSigning };
|
|
19579
19771
|
//# sourceMappingURL=index.js.map
|
|
19580
19772
|
//# sourceMappingURL=index.js.map
|