@stableops/wallet-ui 0.1.4 → 0.1.5
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.css +63 -33
- package/dist/index.css.map +1 -1
- package/dist/index.d.mts +13 -3
- package/dist/index.d.ts +13 -3
- package/dist/index.js +39 -4
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +40 -5
- package/dist/index.mjs.map +1 -1
- package/dist/walletconnect-dialog.css +63 -33
- package/dist/walletconnect-dialog.css.map +1 -1
- package/package.json +1 -1
package/dist/index.css
CHANGED
|
@@ -1,36 +1,39 @@
|
|
|
1
1
|
/* src/walletconnect-dialog.css */
|
|
2
2
|
:root {
|
|
3
|
-
--stableops-wc-backdrop: rgb(0 0 0 /
|
|
4
|
-
--stableops-wc-surface:
|
|
5
|
-
--stableops-wc-text:
|
|
6
|
-
--stableops-wc-muted:
|
|
7
|
-
--stableops-wc-border:
|
|
8
|
-
--stableops-wc-strong-border:
|
|
9
|
-
--stableops-wc-subtle:
|
|
10
|
-
--stableops-wc-hover:
|
|
3
|
+
--stableops-wc-backdrop: rgb(0 0 0 / 80%);
|
|
4
|
+
--stableops-wc-surface: var(--background, oklch(1 0 0));
|
|
5
|
+
--stableops-wc-text: var(--foreground, oklch(0.141 0.005 285.823));
|
|
6
|
+
--stableops-wc-muted: var(--muted-foreground, oklch(0.552 0.016 285.938));
|
|
7
|
+
--stableops-wc-border: var(--border, oklch(0.92 0.004 286.32));
|
|
8
|
+
--stableops-wc-strong-border: var(--input, oklch(0.92 0.004 286.32));
|
|
9
|
+
--stableops-wc-subtle: var(--muted, oklch(0.967 0.001 286.375));
|
|
10
|
+
--stableops-wc-hover: var(--accent, #e8faf7);
|
|
11
|
+
--stableops-wc-hover-text: var(--accent-foreground, #0f766e);
|
|
11
12
|
--stableops-wc-shade: #000000;
|
|
12
|
-
--stableops-wc-brand: #
|
|
13
|
-
--stableops-wc-
|
|
14
|
-
--stableops-wc-
|
|
15
|
-
--stableops-wc-danger
|
|
16
|
-
--stableops-wc-danger-
|
|
13
|
+
--stableops-wc-brand: var(--primary, #12233a);
|
|
14
|
+
--stableops-wc-brand-text: var(--primary-foreground, oklch(0.985 0 0));
|
|
15
|
+
--stableops-wc-copy-done-bg: var(--accent, #e8faf7);
|
|
16
|
+
--stableops-wc-danger: var(--destructive, oklch(0.577 0.245 27.325));
|
|
17
|
+
--stableops-wc-danger-text: var(--destructive-foreground, oklch(0.985 0 0));
|
|
18
|
+
--stableops-wc-danger-border: color-mix(in oklab, var(--stableops-wc-danger) 25%, transparent);
|
|
19
|
+
--stableops-wc-danger-bg: color-mix( in oklab, var(--stableops-wc-danger) 8%, var(--stableops-wc-surface) );
|
|
17
20
|
}
|
|
18
21
|
@media (prefers-color-scheme: dark) {
|
|
19
22
|
:root {
|
|
20
|
-
--stableops-wc-
|
|
21
|
-
--stableops-wc-
|
|
22
|
-
--stableops-wc-
|
|
23
|
-
--stableops-wc-
|
|
24
|
-
--stableops-wc-border:
|
|
25
|
-
--stableops-wc-
|
|
26
|
-
--stableops-wc-
|
|
27
|
-
--stableops-wc-hover:
|
|
23
|
+
--stableops-wc-surface: var(--background, oklch(0.141 0.005 285.823));
|
|
24
|
+
--stableops-wc-text: var(--foreground, oklch(0.985 0 0));
|
|
25
|
+
--stableops-wc-muted: var(--muted-foreground, oklch(0.705 0.015 286.067));
|
|
26
|
+
--stableops-wc-border: var(--border, oklch(1 0 0 / 10%));
|
|
27
|
+
--stableops-wc-strong-border: var(--input, oklch(1 0 0 / 15%));
|
|
28
|
+
--stableops-wc-subtle: var(--muted, oklch(0.274 0.006 286.033));
|
|
29
|
+
--stableops-wc-hover: var(--accent, oklch(0.274 0.006 286.033));
|
|
30
|
+
--stableops-wc-hover-text: var(--accent-foreground, oklch(0.985 0 0));
|
|
28
31
|
--stableops-wc-shade: #ffffff;
|
|
29
|
-
--stableops-wc-brand:
|
|
30
|
-
--stableops-wc-
|
|
31
|
-
--stableops-wc-
|
|
32
|
-
--stableops-wc-danger
|
|
33
|
-
--stableops-wc-danger-
|
|
32
|
+
--stableops-wc-brand: var(--primary, oklch(0.92 0.004 286.32));
|
|
33
|
+
--stableops-wc-brand-text: var(--primary-foreground, oklch(0.21 0.006 285.885));
|
|
34
|
+
--stableops-wc-copy-done-bg: var(--accent, oklch(0.274 0.006 286.033));
|
|
35
|
+
--stableops-wc-danger: var(--destructive, oklch(0.704 0.191 22.216));
|
|
36
|
+
--stableops-wc-danger-text: var(--destructive-foreground, oklch(0.985 0 0));
|
|
34
37
|
}
|
|
35
38
|
}
|
|
36
39
|
@keyframes stableops-walletconnect-backdrop-in {
|
|
@@ -86,9 +89,24 @@
|
|
|
86
89
|
padding-bottom: max(0.75rem, env(safe-area-inset-bottom));
|
|
87
90
|
background: var(--stableops-wc-surface);
|
|
88
91
|
color: var(--stableops-wc-text);
|
|
89
|
-
box-shadow: 0
|
|
92
|
+
box-shadow: 0 10px 15px -3px rgb(0 0 0 / 10%), 0 4px 6px -4px rgb(0 0 0 / 10%);
|
|
90
93
|
animation: stableops-walletconnect-sheet-in 220ms cubic-bezier(0.2, 0, 0, 1) both;
|
|
91
94
|
}
|
|
95
|
+
.stableops-wc-sheet,
|
|
96
|
+
.stableops-wc-sheet * {
|
|
97
|
+
box-sizing: border-box;
|
|
98
|
+
}
|
|
99
|
+
.stableops-wc-sheet :where(button, a, p, img) {
|
|
100
|
+
margin: 0;
|
|
101
|
+
font: inherit;
|
|
102
|
+
color: inherit;
|
|
103
|
+
text-decoration: none;
|
|
104
|
+
}
|
|
105
|
+
.stableops-wc-sheet :where(img) {
|
|
106
|
+
display: block;
|
|
107
|
+
max-width: 100%;
|
|
108
|
+
height: auto;
|
|
109
|
+
}
|
|
92
110
|
.stableops-wc-header {
|
|
93
111
|
position: relative;
|
|
94
112
|
display: flex;
|
|
@@ -140,7 +158,7 @@
|
|
|
140
158
|
.stableops-wc-qr-frame {
|
|
141
159
|
position: relative;
|
|
142
160
|
width: 100%;
|
|
143
|
-
max-width:
|
|
161
|
+
max-width: 12rem;
|
|
144
162
|
aspect-ratio: 1 / 1;
|
|
145
163
|
margin: 0 auto;
|
|
146
164
|
border: 1px solid rgb(15 28 46 / 8%);
|
|
@@ -150,6 +168,8 @@
|
|
|
150
168
|
overflow: hidden;
|
|
151
169
|
}
|
|
152
170
|
.stableops-wc-qr-image {
|
|
171
|
+
width: 100%;
|
|
172
|
+
height: 100%;
|
|
153
173
|
object-fit: contain;
|
|
154
174
|
}
|
|
155
175
|
.stableops-wc-qr-placeholder {
|
|
@@ -222,7 +242,9 @@
|
|
|
222
242
|
.stableops-wc-muted-spinner {
|
|
223
243
|
color: #9ca3af;
|
|
224
244
|
}
|
|
225
|
-
.stableops-wc-error-
|
|
245
|
+
.stableops-wc-error-icon {
|
|
246
|
+
width: 1.75rem;
|
|
247
|
+
height: 1.75rem;
|
|
226
248
|
color: var(--stableops-wc-danger);
|
|
227
249
|
}
|
|
228
250
|
.stableops-wc-help-text {
|
|
@@ -267,12 +289,18 @@
|
|
|
267
289
|
font-size: 0.875rem;
|
|
268
290
|
font-weight: 500;
|
|
269
291
|
text-decoration: none;
|
|
292
|
+
overflow: hidden;
|
|
293
|
+
text-overflow: ellipsis;
|
|
294
|
+
white-space: nowrap;
|
|
270
295
|
}
|
|
271
296
|
.stableops-wc-primary-action {
|
|
272
297
|
border: 1px solid transparent;
|
|
273
298
|
background: var(--stableops-wc-brand);
|
|
274
|
-
color:
|
|
275
|
-
box-shadow: 0 1px
|
|
299
|
+
color: var(--stableops-wc-brand-text);
|
|
300
|
+
box-shadow: 0 1px 3px 0 rgb(0 0 0 / 10%), 0 1px 2px -1px rgb(0 0 0 / 10%);
|
|
301
|
+
}
|
|
302
|
+
.stableops-wc-button-action {
|
|
303
|
+
font: inherit;
|
|
276
304
|
}
|
|
277
305
|
.stableops-wc-primary-action:hover {
|
|
278
306
|
background: color-mix(in srgb, var(--stableops-wc-brand) 82%, var(--stableops-wc-shade));
|
|
@@ -283,7 +311,8 @@
|
|
|
283
311
|
color: var(--stableops-wc-text);
|
|
284
312
|
}
|
|
285
313
|
.stableops-wc-secondary-action:hover {
|
|
286
|
-
background: var(--stableops-wc-
|
|
314
|
+
background: var(--stableops-wc-hover);
|
|
315
|
+
color: var(--stableops-wc-hover-text);
|
|
287
316
|
}
|
|
288
317
|
.stableops-wc-secondary-action:disabled,
|
|
289
318
|
.stableops-wc-disabled-link {
|
|
@@ -321,7 +350,8 @@
|
|
|
321
350
|
}
|
|
322
351
|
.stableops-wc-wallet-button:hover {
|
|
323
352
|
border-color: color-mix(in srgb, var(--stableops-wc-brand) 40%, transparent);
|
|
324
|
-
background: var(--stableops-wc-
|
|
353
|
+
background: var(--stableops-wc-hover);
|
|
354
|
+
color: var(--stableops-wc-hover-text);
|
|
325
355
|
}
|
|
326
356
|
.stableops-wc-wallet-button:disabled {
|
|
327
357
|
cursor: not-allowed;
|
package/dist/index.css.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/walletconnect-dialog.css"],"sourcesContent":["/* 语义色 token:亮色在 :root 定义,暗色在下方 prefers-color-scheme 媒体查询里\n 覆盖同名变量,随系统自动切换。主题色只有 --stableops-wc-brand 一个,可被\n themeColor prop 内联覆盖;强调态颜色一律对 brand 做 color-mix 现算,混合目标\n 由 --stableops-wc-shade 控制(亮色掺黑、暗色掺白),不再额外引入 brand token。 */\n:root {\n --stableops-wc-backdrop: rgb(0 0 0 / 45%);\n --stableops-wc-surface: #ffffff;\n --stableops-wc-text: #0f1c2e;\n --stableops-wc-muted: rgb(15 28 46 / 55%);\n --stableops-wc-border: rgb(15 28 46 / 10%);\n --stableops-wc-strong-border: rgb(15 28 46 / 15%);\n --stableops-wc-subtle: rgb(15 28 46 / 3%);\n --stableops-wc-hover: rgb(15 28 46 / 5%);\n --stableops-wc-shade: #000000;\n --stableops-wc-brand: #14b8a6;\n --stableops-wc-copy-done-bg: color-mix(in srgb, var(--stableops-wc-brand) 8%, var(--stableops-wc-surface));\n --stableops-wc-danger: #e11d48;\n --stableops-wc-danger-border: rgb(225 29 72 / 25%);\n --stableops-wc-danger-bg: rgb(225 29 72 / 8%);\n}\n\n@media (prefers-color-scheme: dark) {\n :root {\n --stableops-wc-backdrop: rgb(0 0 0 / 60%);\n --stableops-wc-surface: #111c2e;\n --stableops-wc-text: #e6edf6;\n --stableops-wc-muted: rgb(230 237 246 / 55%);\n --stableops-wc-border: rgb(230 237 246 / 12%);\n --stableops-wc-strong-border: rgb(230 237 246 / 18%);\n --stableops-wc-subtle: rgb(230 237 246 / 5%);\n --stableops-wc-hover: rgb(230 237 246 / 8%);\n --stableops-wc-shade: #ffffff;\n --stableops-wc-brand: #2dd4bf;\n --stableops-wc-copy-done-bg: color-mix(in srgb, var(--stableops-wc-brand) 14%, var(--stableops-wc-surface));\n --stableops-wc-danger: #fb7185;\n --stableops-wc-danger-border: rgb(251 113 133 / 30%);\n --stableops-wc-danger-bg: rgb(251 113 133 / 10%);\n }\n}\n\n@keyframes stableops-walletconnect-backdrop-in {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n\n@keyframes stableops-walletconnect-sheet-in {\n from {\n opacity: 0;\n transform: translateY(1.25rem);\n }\n to {\n opacity: 1;\n transform: translateY(0);\n }\n}\n\n@media (min-width: 640px) {\n @keyframes stableops-walletconnect-sheet-in {\n from {\n opacity: 0;\n transform: translateY(0.375rem) scale(0.98);\n }\n to {\n opacity: 1;\n transform: translateY(0) scale(1);\n }\n }\n}\n\n.stableops-wc-backdrop {\n position: fixed;\n inset: 0;\n z-index: 50;\n display: flex;\n align-items: flex-end;\n justify-content: center;\n margin: 0;\n padding: 0;\n background: var(--stableops-wc-backdrop);\n animation: stableops-walletconnect-backdrop-in 160ms ease-out both;\n}\n\n.stableops-wc-sheet {\n position: relative;\n width: 100%;\n max-width: 28rem;\n max-height: min(90dvh, calc(100vh - 1rem));\n overflow: hidden;\n border: 1px solid var(--stableops-wc-border);\n border-radius: 1rem 1rem 0 0;\n padding-bottom: max(0.75rem, env(safe-area-inset-bottom));\n background: var(--stableops-wc-surface);\n color: var(--stableops-wc-text);\n box-shadow: 0 25px 50px -12px rgb(0 0 0 / 25%);\n animation: stableops-walletconnect-sheet-in 220ms cubic-bezier(0.2, 0, 0, 1) both;\n}\n\n.stableops-wc-header {\n position: relative;\n display: flex;\n align-items: center;\n justify-content: center;\n padding: 1.5rem 1.5rem 0;\n}\n\n.stableops-wc-title {\n min-width: 0;\n flex: 1;\n overflow: hidden;\n text-align: center;\n text-overflow: ellipsis;\n white-space: nowrap;\n font-size: 0.875rem;\n font-weight: 600;\n}\n\n.stableops-wc-icon-button {\n position: absolute;\n display: flex;\n width: 2rem;\n height: 2rem;\n cursor: pointer;\n align-items: center;\n justify-content: center;\n border: 0;\n border-radius: 0.375rem;\n background: transparent;\n color: var(--stableops-wc-muted);\n}\n\n.stableops-wc-icon-button:hover {\n background: var(--stableops-wc-hover);\n color: var(--stableops-wc-text);\n}\n\n.stableops-wc-back-button {\n left: 1.25rem;\n}\n\n.stableops-wc-close-button {\n right: 1.25rem;\n}\n\n.stableops-wc-icon,\n.stableops-wc-action-icon {\n width: 1rem;\n height: 1rem;\n}\n\n.stableops-wc-body {\n padding: 1.5rem;\n}\n\n.stableops-wc-qr-frame {\n position: relative;\n width: 100%;\n max-width: 15rem;\n aspect-ratio: 1 / 1;\n margin: 0 auto;\n border: 1px solid rgb(15 28 46 / 8%);\n border-radius: 1rem;\n padding: 1rem;\n background: #ffffff;\n overflow: hidden;\n}\n\n.stableops-wc-qr-image {\n object-fit: contain;\n}\n\n.stableops-wc-qr-placeholder {\n opacity: 0.9;\n}\n\n.stableops-wc-centered-overlay,\n.stableops-wc-loading-overlay {\n position: absolute;\n inset: 0;\n display: flex;\n align-items: center;\n justify-content: center;\n}\n\n.stableops-wc-loading-overlay {\n inset: 0.5rem;\n border-radius: 0.5rem;\n background: rgb(255 255 255 / 60%);\n backdrop-filter: blur(4px);\n}\n\n.stableops-wc-wallet-chip {\n border-radius: 0.75rem;\n padding: 0.25rem;\n background: #ffffff;\n box-shadow:\n 0 4px 6px -1px rgb(0 0 0 / 10%),\n 0 2px 4px -2px rgb(0 0 0 / 10%);\n outline: 1px solid rgb(0 0 0 / 5%);\n}\n\n.stableops-wc-wallet-logo,\n.stableops-wc-wallet-fallback {\n display: flex;\n width: 3rem;\n height: 3rem;\n flex-shrink: 0;\n align-items: center;\n justify-content: center;\n border-radius: 0.5rem;\n box-shadow: 0 1px 2px 0 rgb(0 0 0 / 5%);\n outline: 1px solid rgb(0 0 0 / 5%);\n}\n\n.stableops-wc-wallet-logo {\n object-fit: cover;\n}\n\n.stableops-wc-wallet-fallback {\n color: #ffffff;\n font-size: 0.75rem;\n font-weight: 600;\n}\n\n.stableops-wc-empty-qr {\n display: flex;\n width: 100%;\n height: 100%;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n gap: 0.5rem;\n padding: 0 0.75rem;\n text-align: center;\n font-size: 0.75rem;\n color: var(--stableops-wc-muted);\n}\n\n.stableops-wc-spinner {\n width: 1.5rem;\n height: 1.5rem;\n animation: stableops-wc-spin 1s linear infinite;\n}\n\n@keyframes stableops-wc-spin {\n to {\n transform: rotate(360deg);\n }\n}\n\n.stableops-wc-muted-spinner {\n color: #9ca3af;\n}\n\n.stableops-wc-error-text {\n color: var(--stableops-wc-danger);\n}\n\n.stableops-wc-help-text {\n margin: 1.25rem 0 0;\n text-align: center;\n font-size: 0.875rem;\n font-weight: 500;\n}\n\n.stableops-wc-separator {\n display: flex;\n align-items: center;\n gap: 0.75rem;\n margin: 1rem 0;\n font-size: 0.75rem;\n color: var(--stableops-wc-muted);\n}\n\n.stableops-wc-line {\n height: 1px;\n flex: 1;\n background: var(--stableops-wc-border);\n}\n\n.stableops-wc-spacer {\n height: 1rem;\n}\n\n.stableops-wc-actions {\n display: flex;\n flex-direction: column;\n gap: 0.5rem;\n}\n\n.stableops-wc-primary-action,\n.stableops-wc-secondary-action {\n display: inline-flex;\n min-height: 2.5rem;\n flex: 1;\n cursor: pointer;\n align-items: center;\n justify-content: center;\n gap: 0.5rem;\n border-radius: 0.5rem;\n padding: 0.5rem 1rem;\n text-align: center;\n font-size: 0.875rem;\n font-weight: 500;\n text-decoration: none;\n}\n\n.stableops-wc-primary-action {\n border: 1px solid transparent;\n background: var(--stableops-wc-brand);\n color: #ffffff;\n box-shadow: 0 1px 2px 0 rgb(0 0 0 / 5%);\n}\n\n.stableops-wc-primary-action:hover {\n background: color-mix(in srgb, var(--stableops-wc-brand) 82%, var(--stableops-wc-shade));\n}\n\n.stableops-wc-secondary-action {\n border: 1px solid var(--stableops-wc-strong-border);\n background: var(--stableops-wc-surface);\n color: var(--stableops-wc-text);\n}\n\n.stableops-wc-secondary-action:hover {\n background: var(--stableops-wc-subtle);\n}\n\n.stableops-wc-secondary-action:disabled,\n.stableops-wc-disabled-link {\n cursor: not-allowed;\n opacity: 0.5;\n pointer-events: none;\n}\n\n.stableops-wc-check-icon {\n color: color-mix(in srgb, var(--stableops-wc-brand) 82%, var(--stableops-wc-shade));\n}\n\n.stableops-wc-copy-done {\n border-color: color-mix(in srgb, var(--stableops-wc-brand) 35%, transparent);\n background: var(--stableops-wc-copy-done-bg);\n color: color-mix(in srgb, var(--stableops-wc-brand) 82%, var(--stableops-wc-shade));\n}\n\n.stableops-wc-wallet-grid {\n display: grid;\n grid-template-columns: repeat(3, minmax(0, 1fr));\n gap: 0.5rem 1rem;\n overflow-y: auto;\n padding: 1rem;\n}\n\n.stableops-wc-wallet-button {\n display: flex;\n cursor: pointer;\n flex-direction: column;\n align-items: center;\n gap: 0.5rem;\n border: 1px solid transparent;\n border-radius: 0.75rem;\n background: transparent;\n padding: 1rem 0.5rem;\n text-align: center;\n color: var(--stableops-wc-text);\n}\n\n.stableops-wc-wallet-button:hover {\n border-color: color-mix(in srgb, var(--stableops-wc-brand) 40%, transparent);\n background: var(--stableops-wc-subtle);\n}\n\n.stableops-wc-wallet-button:disabled {\n cursor: not-allowed;\n opacity: 0.5;\n}\n\n.stableops-wc-wallet-button span {\n width: 100%;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n font-size: 0.75rem;\n font-weight: 500;\n}\n\n.stableops-wc-error-box {\n margin: 0 1.25rem 1.25rem;\n border: 1px solid var(--stableops-wc-danger-border);\n border-radius: 0.5rem;\n background: var(--stableops-wc-danger-bg);\n padding: 0.625rem;\n text-align: center;\n font-size: 0.75rem;\n color: var(--stableops-wc-danger);\n}\n\n@media (min-width: 640px) {\n .stableops-wc-backdrop {\n align-items: center;\n padding: 1rem;\n }\n\n .stableops-wc-sheet {\n max-height: calc(100vh - 2rem);\n border-radius: 1rem;\n padding-bottom: 0;\n }\n\n .stableops-wc-actions {\n flex-direction: row;\n }\n}\n"],"mappings":"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","names":[]}
|
|
1
|
+
{"version":3,"sources":["../src/walletconnect-dialog.css"],"sourcesContent":["/* 语义色 token:优先读取 dashboard/shadcn 的 CSS 变量;未接入这些变量的宿主使用\n dashboard 当前 light/dark 默认值作为 fallback。主题色只有 --stableops-wc-brand\n 一个,可被 themeColor prop 内联覆盖。 */\n:root {\n --stableops-wc-backdrop: rgb(0 0 0 / 80%);\n --stableops-wc-surface: var(--background, oklch(1 0 0));\n --stableops-wc-text: var(--foreground, oklch(0.141 0.005 285.823));\n --stableops-wc-muted: var(--muted-foreground, oklch(0.552 0.016 285.938));\n --stableops-wc-border: var(--border, oklch(0.92 0.004 286.32));\n --stableops-wc-strong-border: var(--input, oklch(0.92 0.004 286.32));\n --stableops-wc-subtle: var(--muted, oklch(0.967 0.001 286.375));\n --stableops-wc-hover: var(--accent, #e8faf7);\n --stableops-wc-hover-text: var(--accent-foreground, #0f766e);\n --stableops-wc-shade: #000000;\n --stableops-wc-brand: var(--primary, #12233a);\n --stableops-wc-brand-text: var(--primary-foreground, oklch(0.985 0 0));\n --stableops-wc-copy-done-bg: var(--accent, #e8faf7);\n --stableops-wc-danger: var(--destructive, oklch(0.577 0.245 27.325));\n --stableops-wc-danger-text: var(--destructive-foreground, oklch(0.985 0 0));\n --stableops-wc-danger-border: color-mix(in oklab, var(--stableops-wc-danger) 25%, transparent);\n --stableops-wc-danger-bg: color-mix(\n in oklab,\n var(--stableops-wc-danger) 8%,\n var(--stableops-wc-surface)\n );\n}\n\n@media (prefers-color-scheme: dark) {\n :root {\n --stableops-wc-surface: var(--background, oklch(0.141 0.005 285.823));\n --stableops-wc-text: var(--foreground, oklch(0.985 0 0));\n --stableops-wc-muted: var(--muted-foreground, oklch(0.705 0.015 286.067));\n --stableops-wc-border: var(--border, oklch(1 0 0 / 10%));\n --stableops-wc-strong-border: var(--input, oklch(1 0 0 / 15%));\n --stableops-wc-subtle: var(--muted, oklch(0.274 0.006 286.033));\n --stableops-wc-hover: var(--accent, oklch(0.274 0.006 286.033));\n --stableops-wc-hover-text: var(--accent-foreground, oklch(0.985 0 0));\n --stableops-wc-shade: #ffffff;\n --stableops-wc-brand: var(--primary, oklch(0.92 0.004 286.32));\n --stableops-wc-brand-text: var(--primary-foreground, oklch(0.21 0.006 285.885));\n --stableops-wc-copy-done-bg: var(--accent, oklch(0.274 0.006 286.033));\n --stableops-wc-danger: var(--destructive, oklch(0.704 0.191 22.216));\n --stableops-wc-danger-text: var(--destructive-foreground, oklch(0.985 0 0));\n }\n}\n\n@keyframes stableops-walletconnect-backdrop-in {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n\n@keyframes stableops-walletconnect-sheet-in {\n from {\n opacity: 0;\n transform: translateY(1.25rem);\n }\n to {\n opacity: 1;\n transform: translateY(0);\n }\n}\n\n@media (min-width: 640px) {\n @keyframes stableops-walletconnect-sheet-in {\n from {\n opacity: 0;\n transform: translateY(0.375rem) scale(0.98);\n }\n to {\n opacity: 1;\n transform: translateY(0) scale(1);\n }\n }\n}\n\n.stableops-wc-backdrop {\n position: fixed;\n inset: 0;\n z-index: 50;\n display: flex;\n align-items: flex-end;\n justify-content: center;\n margin: 0;\n padding: 0;\n background: var(--stableops-wc-backdrop);\n animation: stableops-walletconnect-backdrop-in 160ms ease-out both;\n}\n\n.stableops-wc-sheet {\n position: relative;\n width: 100%;\n max-width: 28rem;\n max-height: min(90dvh, calc(100vh - 1rem));\n overflow: hidden;\n border: 1px solid var(--stableops-wc-border);\n border-radius: 1rem 1rem 0 0;\n padding-bottom: max(0.75rem, env(safe-area-inset-bottom));\n background: var(--stableops-wc-surface);\n color: var(--stableops-wc-text);\n box-shadow:\n 0 10px 15px -3px rgb(0 0 0 / 10%),\n 0 4px 6px -4px rgb(0 0 0 / 10%);\n animation: stableops-walletconnect-sheet-in 220ms cubic-bezier(0.2, 0, 0, 1) both;\n}\n\n.stableops-wc-sheet,\n.stableops-wc-sheet * {\n box-sizing: border-box;\n}\n\n.stableops-wc-sheet :where(button, a, p, img) {\n margin: 0;\n font: inherit;\n color: inherit;\n text-decoration: none;\n}\n\n.stableops-wc-sheet :where(img) {\n display: block;\n max-width: 100%;\n height: auto;\n}\n\n.stableops-wc-header {\n position: relative;\n display: flex;\n align-items: center;\n justify-content: center;\n padding: 1.5rem 1.5rem 0;\n}\n\n.stableops-wc-title {\n min-width: 0;\n flex: 1;\n overflow: hidden;\n text-align: center;\n text-overflow: ellipsis;\n white-space: nowrap;\n font-size: 0.875rem;\n font-weight: 600;\n}\n\n.stableops-wc-icon-button {\n position: absolute;\n display: flex;\n width: 2rem;\n height: 2rem;\n cursor: pointer;\n align-items: center;\n justify-content: center;\n border: 0;\n border-radius: 0.375rem;\n background: transparent;\n color: var(--stableops-wc-muted);\n}\n\n.stableops-wc-icon-button:hover {\n background: var(--stableops-wc-hover);\n color: var(--stableops-wc-text);\n}\n\n.stableops-wc-back-button {\n left: 1.25rem;\n}\n\n.stableops-wc-close-button {\n right: 1.25rem;\n}\n\n.stableops-wc-icon,\n.stableops-wc-action-icon {\n width: 1rem;\n height: 1rem;\n}\n\n.stableops-wc-body {\n padding: 1.5rem;\n}\n\n.stableops-wc-qr-frame {\n position: relative;\n width: 100%;\n max-width: 12rem;\n aspect-ratio: 1 / 1;\n margin: 0 auto;\n border: 1px solid rgb(15 28 46 / 8%);\n border-radius: 1rem;\n padding: 1rem;\n background: #ffffff;\n overflow: hidden;\n}\n\n.stableops-wc-qr-image {\n width: 100%;\n height: 100%;\n object-fit: contain;\n}\n\n.stableops-wc-qr-placeholder {\n opacity: 0.9;\n}\n\n.stableops-wc-centered-overlay,\n.stableops-wc-loading-overlay {\n position: absolute;\n inset: 0;\n display: flex;\n align-items: center;\n justify-content: center;\n}\n\n.stableops-wc-loading-overlay {\n inset: 0.5rem;\n border-radius: 0.5rem;\n background: rgb(255 255 255 / 60%);\n backdrop-filter: blur(4px);\n}\n\n.stableops-wc-wallet-chip {\n border-radius: 0.75rem;\n padding: 0.25rem;\n background: #ffffff;\n box-shadow:\n 0 4px 6px -1px rgb(0 0 0 / 10%),\n 0 2px 4px -2px rgb(0 0 0 / 10%);\n outline: 1px solid rgb(0 0 0 / 5%);\n}\n\n.stableops-wc-wallet-logo,\n.stableops-wc-wallet-fallback {\n display: flex;\n width: 3rem;\n height: 3rem;\n flex-shrink: 0;\n align-items: center;\n justify-content: center;\n border-radius: 0.5rem;\n box-shadow: 0 1px 2px 0 rgb(0 0 0 / 5%);\n outline: 1px solid rgb(0 0 0 / 5%);\n}\n\n.stableops-wc-wallet-logo {\n object-fit: cover;\n}\n\n.stableops-wc-wallet-fallback {\n color: #ffffff;\n font-size: 0.75rem;\n font-weight: 600;\n}\n\n.stableops-wc-empty-qr {\n display: flex;\n width: 100%;\n height: 100%;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n gap: 0.5rem;\n padding: 0 0.75rem;\n text-align: center;\n font-size: 0.75rem;\n color: var(--stableops-wc-muted);\n}\n\n.stableops-wc-spinner {\n width: 1.5rem;\n height: 1.5rem;\n animation: stableops-wc-spin 1s linear infinite;\n}\n\n@keyframes stableops-wc-spin {\n to {\n transform: rotate(360deg);\n }\n}\n\n.stableops-wc-muted-spinner {\n color: #9ca3af;\n}\n\n.stableops-wc-error-icon {\n width: 1.75rem;\n height: 1.75rem;\n color: var(--stableops-wc-danger);\n}\n\n.stableops-wc-help-text {\n margin: 1.25rem 0 0;\n text-align: center;\n font-size: 0.875rem;\n font-weight: 500;\n}\n\n.stableops-wc-separator {\n display: flex;\n align-items: center;\n gap: 0.75rem;\n margin: 1rem 0;\n font-size: 0.75rem;\n color: var(--stableops-wc-muted);\n}\n\n.stableops-wc-line {\n height: 1px;\n flex: 1;\n background: var(--stableops-wc-border);\n}\n\n.stableops-wc-spacer {\n height: 1rem;\n}\n\n.stableops-wc-actions {\n display: flex;\n flex-direction: column;\n gap: 0.5rem;\n}\n\n.stableops-wc-primary-action,\n.stableops-wc-secondary-action {\n display: inline-flex;\n min-height: 2.5rem;\n flex: 1;\n cursor: pointer;\n align-items: center;\n justify-content: center;\n gap: 0.5rem;\n border-radius: 0.5rem;\n padding: 0.5rem 1rem;\n text-align: center;\n font-size: 0.875rem;\n font-weight: 500;\n text-decoration: none;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n\n.stableops-wc-primary-action {\n border: 1px solid transparent;\n background: var(--stableops-wc-brand);\n color: var(--stableops-wc-brand-text);\n box-shadow:\n 0 1px 3px 0 rgb(0 0 0 / 10%),\n 0 1px 2px -1px rgb(0 0 0 / 10%);\n}\n\n.stableops-wc-button-action {\n font: inherit;\n}\n\n.stableops-wc-primary-action:hover {\n background: color-mix(in srgb, var(--stableops-wc-brand) 82%, var(--stableops-wc-shade));\n}\n\n.stableops-wc-secondary-action {\n border: 1px solid var(--stableops-wc-strong-border);\n background: var(--stableops-wc-surface);\n color: var(--stableops-wc-text);\n}\n\n.stableops-wc-secondary-action:hover {\n background: var(--stableops-wc-hover);\n color: var(--stableops-wc-hover-text);\n}\n\n.stableops-wc-secondary-action:disabled,\n.stableops-wc-disabled-link {\n cursor: not-allowed;\n opacity: 0.5;\n pointer-events: none;\n}\n\n.stableops-wc-check-icon {\n color: color-mix(in srgb, var(--stableops-wc-brand) 82%, var(--stableops-wc-shade));\n}\n\n.stableops-wc-copy-done {\n border-color: color-mix(in srgb, var(--stableops-wc-brand) 35%, transparent);\n background: var(--stableops-wc-copy-done-bg);\n color: color-mix(in srgb, var(--stableops-wc-brand) 82%, var(--stableops-wc-shade));\n}\n\n.stableops-wc-wallet-grid {\n display: grid;\n grid-template-columns: repeat(3, minmax(0, 1fr));\n gap: 0.5rem 1rem;\n overflow-y: auto;\n padding: 1rem;\n}\n\n.stableops-wc-wallet-button {\n display: flex;\n cursor: pointer;\n flex-direction: column;\n align-items: center;\n gap: 0.5rem;\n border: 1px solid transparent;\n border-radius: 0.75rem;\n background: transparent;\n padding: 1rem 0.5rem;\n text-align: center;\n color: var(--stableops-wc-text);\n}\n\n.stableops-wc-wallet-button:hover {\n border-color: color-mix(in srgb, var(--stableops-wc-brand) 40%, transparent);\n background: var(--stableops-wc-hover);\n color: var(--stableops-wc-hover-text);\n}\n\n.stableops-wc-wallet-button:disabled {\n cursor: not-allowed;\n opacity: 0.5;\n}\n\n.stableops-wc-wallet-button span {\n width: 100%;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n font-size: 0.75rem;\n font-weight: 500;\n}\n\n.stableops-wc-error-box {\n margin: 0 1.25rem 1.25rem;\n border: 1px solid var(--stableops-wc-danger-border);\n border-radius: 0.5rem;\n background: var(--stableops-wc-danger-bg);\n padding: 0.625rem;\n text-align: center;\n font-size: 0.75rem;\n color: var(--stableops-wc-danger);\n}\n\n@media (min-width: 640px) {\n .stableops-wc-backdrop {\n align-items: center;\n padding: 1rem;\n }\n\n .stableops-wc-sheet {\n max-height: calc(100vh - 2rem);\n border-radius: 1rem;\n padding-bottom: 0;\n }\n\n .stableops-wc-actions {\n flex-direction: row;\n }\n}\n"],"mappings":"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","names":[]}
|
package/dist/index.d.mts
CHANGED
|
@@ -28,10 +28,18 @@ type WalletConnectDialogCopy = {
|
|
|
28
28
|
scanWithWallet: (wallet: string) => string;
|
|
29
29
|
scanAnyWallet: string;
|
|
30
30
|
openWallet: (wallet: string) => string;
|
|
31
|
+
paymentPrompt: (wallet: string) => string;
|
|
32
|
+
retryPayment: (wallet: string) => string;
|
|
33
|
+
retryingPayment: string;
|
|
31
34
|
copyUri: string;
|
|
32
35
|
copied: string;
|
|
33
36
|
or: string;
|
|
34
37
|
connectFailed: string;
|
|
38
|
+
errorMessage: (code: string) => string | null;
|
|
39
|
+
};
|
|
40
|
+
type WalletConnectDialogError = string | {
|
|
41
|
+
code?: string;
|
|
42
|
+
message: string;
|
|
35
43
|
};
|
|
36
44
|
type WalletConnectDialogProps<TWallet extends WalletConnectDialogWallet> = {
|
|
37
45
|
open: boolean;
|
|
@@ -42,12 +50,14 @@ type WalletConnectDialogProps<TWallet extends WalletConnectDialogWallet> = {
|
|
|
42
50
|
selectedWallet: TWallet | null;
|
|
43
51
|
state: WalletConnectControllerState;
|
|
44
52
|
qrCode: string | null;
|
|
45
|
-
error:
|
|
53
|
+
error: WalletConnectDialogError | null;
|
|
46
54
|
walletLinkMode?: boolean;
|
|
47
55
|
themeColor?: string;
|
|
48
56
|
copied: boolean;
|
|
57
|
+
paymentPending?: boolean;
|
|
49
58
|
renderWalletIcon?: (wallet: TWallet) => ReactNode;
|
|
50
59
|
onSelectWallet: (wallet: TWallet) => void;
|
|
60
|
+
onRetryPayment?: () => void;
|
|
51
61
|
onBack: () => void;
|
|
52
62
|
onClose: () => void;
|
|
53
63
|
onCopyUri: (uri: string) => void;
|
|
@@ -58,8 +68,8 @@ declare const walletConnectDialogClassNames: {
|
|
|
58
68
|
readonly qrFrame: "stableops-wc-qr-frame";
|
|
59
69
|
};
|
|
60
70
|
declare function walletLink(prefix: string, uri: string): string;
|
|
61
|
-
declare function WalletConnectDialog<TWallet extends WalletConnectDialogWallet>({ open, copy, projectId, available, wallets, selectedWallet, state, qrCode, error, walletLinkMode, themeColor, copied, renderWalletIcon, onSelectWallet, onBack, onClose, onCopyUri, }: WalletConnectDialogProps<TWallet>): ReactNode;
|
|
71
|
+
declare function WalletConnectDialog<TWallet extends WalletConnectDialogWallet>({ open, copy, projectId, available, wallets, selectedWallet, state, qrCode, error, walletLinkMode, themeColor, copied, paymentPending, renderWalletIcon, onSelectWallet, onRetryPayment, onBack, onClose, onCopyUri, }: WalletConnectDialogProps<TWallet>): ReactNode;
|
|
62
72
|
|
|
63
73
|
declare const WALLET_LOGOS: Record<string, string>;
|
|
64
74
|
|
|
65
|
-
export { WALLET_LOGOS, WalletConnectDialog, type WalletConnectDialogCopy, type WalletConnectDialogProps, type WalletConnectDialogWallet, WalletIcon, type WalletIconWallet, walletConnectDialogClassNames, walletLink };
|
|
75
|
+
export { WALLET_LOGOS, WalletConnectDialog, type WalletConnectDialogCopy, type WalletConnectDialogError, type WalletConnectDialogProps, type WalletConnectDialogWallet, WalletIcon, type WalletIconWallet, walletConnectDialogClassNames, walletLink };
|
package/dist/index.d.ts
CHANGED
|
@@ -28,10 +28,18 @@ type WalletConnectDialogCopy = {
|
|
|
28
28
|
scanWithWallet: (wallet: string) => string;
|
|
29
29
|
scanAnyWallet: string;
|
|
30
30
|
openWallet: (wallet: string) => string;
|
|
31
|
+
paymentPrompt: (wallet: string) => string;
|
|
32
|
+
retryPayment: (wallet: string) => string;
|
|
33
|
+
retryingPayment: string;
|
|
31
34
|
copyUri: string;
|
|
32
35
|
copied: string;
|
|
33
36
|
or: string;
|
|
34
37
|
connectFailed: string;
|
|
38
|
+
errorMessage: (code: string) => string | null;
|
|
39
|
+
};
|
|
40
|
+
type WalletConnectDialogError = string | {
|
|
41
|
+
code?: string;
|
|
42
|
+
message: string;
|
|
35
43
|
};
|
|
36
44
|
type WalletConnectDialogProps<TWallet extends WalletConnectDialogWallet> = {
|
|
37
45
|
open: boolean;
|
|
@@ -42,12 +50,14 @@ type WalletConnectDialogProps<TWallet extends WalletConnectDialogWallet> = {
|
|
|
42
50
|
selectedWallet: TWallet | null;
|
|
43
51
|
state: WalletConnectControllerState;
|
|
44
52
|
qrCode: string | null;
|
|
45
|
-
error:
|
|
53
|
+
error: WalletConnectDialogError | null;
|
|
46
54
|
walletLinkMode?: boolean;
|
|
47
55
|
themeColor?: string;
|
|
48
56
|
copied: boolean;
|
|
57
|
+
paymentPending?: boolean;
|
|
49
58
|
renderWalletIcon?: (wallet: TWallet) => ReactNode;
|
|
50
59
|
onSelectWallet: (wallet: TWallet) => void;
|
|
60
|
+
onRetryPayment?: () => void;
|
|
51
61
|
onBack: () => void;
|
|
52
62
|
onClose: () => void;
|
|
53
63
|
onCopyUri: (uri: string) => void;
|
|
@@ -58,8 +68,8 @@ declare const walletConnectDialogClassNames: {
|
|
|
58
68
|
readonly qrFrame: "stableops-wc-qr-frame";
|
|
59
69
|
};
|
|
60
70
|
declare function walletLink(prefix: string, uri: string): string;
|
|
61
|
-
declare function WalletConnectDialog<TWallet extends WalletConnectDialogWallet>({ open, copy, projectId, available, wallets, selectedWallet, state, qrCode, error, walletLinkMode, themeColor, copied, renderWalletIcon, onSelectWallet, onBack, onClose, onCopyUri, }: WalletConnectDialogProps<TWallet>): ReactNode;
|
|
71
|
+
declare function WalletConnectDialog<TWallet extends WalletConnectDialogWallet>({ open, copy, projectId, available, wallets, selectedWallet, state, qrCode, error, walletLinkMode, themeColor, copied, paymentPending, renderWalletIcon, onSelectWallet, onRetryPayment, onBack, onClose, onCopyUri, }: WalletConnectDialogProps<TWallet>): ReactNode;
|
|
62
72
|
|
|
63
73
|
declare const WALLET_LOGOS: Record<string, string>;
|
|
64
74
|
|
|
65
|
-
export { WALLET_LOGOS, WalletConnectDialog, type WalletConnectDialogCopy, type WalletConnectDialogProps, type WalletConnectDialogWallet, WalletIcon, type WalletIconWallet, walletConnectDialogClassNames, walletLink };
|
|
75
|
+
export { WALLET_LOGOS, WalletConnectDialog, type WalletConnectDialogCopy, type WalletConnectDialogError, type WalletConnectDialogProps, type WalletConnectDialogWallet, WalletIcon, type WalletIconWallet, walletConnectDialogClassNames, walletLink };
|
package/dist/index.js
CHANGED
|
@@ -59,6 +59,11 @@ var walletConnectDialogClassNames = {
|
|
|
59
59
|
function walletLink(prefix, uri) {
|
|
60
60
|
return `${prefix}${encodeURIComponent(uri)}`;
|
|
61
61
|
}
|
|
62
|
+
function formatWalletConnectDialogError(error, copy) {
|
|
63
|
+
if (typeof error === "string") return error;
|
|
64
|
+
if (error.code) return copy.errorMessage(error.code) ?? error.message;
|
|
65
|
+
return error.message;
|
|
66
|
+
}
|
|
62
67
|
function WalletConnectDialog({
|
|
63
68
|
open,
|
|
64
69
|
copy,
|
|
@@ -72,8 +77,10 @@ function WalletConnectDialog({
|
|
|
72
77
|
walletLinkMode = false,
|
|
73
78
|
themeColor,
|
|
74
79
|
copied,
|
|
80
|
+
paymentPending = false,
|
|
75
81
|
renderWalletIcon,
|
|
76
82
|
onSelectWallet,
|
|
83
|
+
onRetryPayment,
|
|
77
84
|
onBack,
|
|
78
85
|
onClose,
|
|
79
86
|
onCopyUri
|
|
@@ -84,9 +91,11 @@ function WalletConnectDialog({
|
|
|
84
91
|
const readyUri = state.status === "uri_ready" ? state.uri : null;
|
|
85
92
|
const walletHref = walletLinkMode && readyUri ? readyUri : appLink && readyUri ? walletLink(appLink, readyUri) : void 0;
|
|
86
93
|
const qrLoading = selectedWallet && !qrCode && (state.status === "connecting" || state.status === "uri_ready");
|
|
94
|
+
const paymentReady = Boolean(selectedWallet) && state.status === "connected" && Boolean(onRetryPayment);
|
|
87
95
|
const disabledList = !walletLinkMode && !projectId || !available;
|
|
88
96
|
const renderIcon = renderWalletIcon ?? ((wallet) => /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(WalletIcon, { wallet }));
|
|
89
97
|
const themeStyle = themeColor ? { "--stableops-wc-brand": themeColor } : void 0;
|
|
98
|
+
const visibleError = error !== null ? formatWalletConnectDialogError(error, copy) : state.status === "failed" ? formatWalletConnectDialogError(state.error, copy) : null;
|
|
90
99
|
return /* @__PURE__ */ (0, import_jsx_runtime2.jsx)("div", { className: walletConnectDialogClassNames.backdrop, style: themeStyle, onClick: onClose, children: /* @__PURE__ */ (0, import_jsx_runtime2.jsxs)(
|
|
91
100
|
"div",
|
|
92
101
|
{
|
|
@@ -136,15 +145,41 @@ function WalletConnectDialog({
|
|
|
136
145
|
),
|
|
137
146
|
/* @__PURE__ */ (0, import_jsx_runtime2.jsx)("div", { className: "stableops-wc-centered-overlay", children: /* @__PURE__ */ (0, import_jsx_runtime2.jsx)("div", { className: "stableops-wc-wallet-chip", children: renderIcon(selectedWallet) }) }),
|
|
138
147
|
/* @__PURE__ */ (0, import_jsx_runtime2.jsx)("div", { className: "stableops-wc-loading-overlay", children: /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(import_lucide_react.Loader2, { className: "stableops-wc-spinner stableops-wc-muted-spinner" }) })
|
|
139
|
-
] }) : /* @__PURE__ */ (0, import_jsx_runtime2.
|
|
140
|
-
|
|
148
|
+
] }) : /* @__PURE__ */ (0, import_jsx_runtime2.jsxs)(import_jsx_runtime2.Fragment, { children: [
|
|
149
|
+
/* @__PURE__ */ (0, import_jsx_runtime2.jsx)(
|
|
150
|
+
"img",
|
|
151
|
+
{
|
|
152
|
+
src: PLACEHOLDER_QR_CODE,
|
|
153
|
+
alt: "",
|
|
154
|
+
className: "stableops-wc-qr-image stableops-wc-qr-placeholder",
|
|
155
|
+
"aria-hidden": "true"
|
|
156
|
+
}
|
|
157
|
+
),
|
|
158
|
+
/* @__PURE__ */ (0, import_jsx_runtime2.jsx)("div", { className: "stableops-wc-centered-overlay", children: /* @__PURE__ */ (0, import_jsx_runtime2.jsx)("div", { className: "stableops-wc-wallet-chip", children: renderIcon(selectedWallet) }) }),
|
|
159
|
+
state.status === "failed" ? /* @__PURE__ */ (0, import_jsx_runtime2.jsx)("div", { className: "stableops-wc-loading-overlay", children: /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(import_lucide_react.CircleAlert, { className: "stableops-wc-error-icon", "aria-hidden": "true" }) }) : null
|
|
160
|
+
] }) }),
|
|
161
|
+
/* @__PURE__ */ (0, import_jsx_runtime2.jsx)("p", { className: "stableops-wc-help-text", children: paymentReady ? copy.paymentPrompt(selectedWallet.name) : walletLinkMode || selectedWallet.links ? copy.scanWithWallet(selectedWallet.name) : copy.scanAnyWallet }),
|
|
141
162
|
walletLinkMode || appLink ? /* @__PURE__ */ (0, import_jsx_runtime2.jsxs)("div", { className: "stableops-wc-separator", children: [
|
|
142
163
|
/* @__PURE__ */ (0, import_jsx_runtime2.jsx)("div", { className: "stableops-wc-line" }),
|
|
143
164
|
/* @__PURE__ */ (0, import_jsx_runtime2.jsx)("span", { children: copy.or }),
|
|
144
165
|
/* @__PURE__ */ (0, import_jsx_runtime2.jsx)("div", { className: "stableops-wc-line" })
|
|
145
166
|
] }) : /* @__PURE__ */ (0, import_jsx_runtime2.jsx)("div", { className: "stableops-wc-spacer" }),
|
|
146
167
|
/* @__PURE__ */ (0, import_jsx_runtime2.jsxs)("div", { className: "stableops-wc-actions", children: [
|
|
147
|
-
|
|
168
|
+
paymentReady ? /* @__PURE__ */ (0, import_jsx_runtime2.jsxs)(
|
|
169
|
+
"button",
|
|
170
|
+
{
|
|
171
|
+
type: "button",
|
|
172
|
+
className: "stableops-wc-primary-action stableops-wc-button-action",
|
|
173
|
+
onClick: () => {
|
|
174
|
+
if (onRetryPayment) onRetryPayment();
|
|
175
|
+
},
|
|
176
|
+
children: [
|
|
177
|
+
paymentPending ? /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(import_lucide_react.Loader2, { className: "stableops-wc-action-icon stableops-wc-spinner" }) : /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(import_lucide_react.ExternalLink, { className: "stableops-wc-action-icon" }),
|
|
178
|
+
paymentPending ? copy.retryingPayment : copy.retryPayment(selectedWallet.name)
|
|
179
|
+
]
|
|
180
|
+
}
|
|
181
|
+
) : null,
|
|
182
|
+
!paymentReady && (walletLinkMode || appLink) ? /* @__PURE__ */ (0, import_jsx_runtime2.jsxs)(
|
|
148
183
|
"a",
|
|
149
184
|
{
|
|
150
185
|
className: `stableops-wc-primary-action ${walletHref ? "" : "stableops-wc-disabled-link"}`,
|
|
@@ -196,7 +231,7 @@ function WalletConnectDialog({
|
|
|
196
231
|
},
|
|
197
232
|
wallet.id
|
|
198
233
|
)) }),
|
|
199
|
-
|
|
234
|
+
visibleError ? /* @__PURE__ */ (0, import_jsx_runtime2.jsx)("div", { className: "stableops-wc-error-box", children: visibleError }) : null
|
|
200
235
|
]
|
|
201
236
|
}
|
|
202
237
|
) });
|