@rhinestone/deposit-modal 0.3.0-alpha.13 → 0.3.0-alpha.15

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.
Files changed (34) hide show
  1. package/dist/{DepositModalReown-HBAWSK6K.mjs → DepositModalReown-CAX35NN2.mjs} +4 -4
  2. package/dist/{DepositModalReown-CXPRZRXL.cjs → DepositModalReown-P4QGKQRZ.cjs} +7 -7
  3. package/dist/{QRCode-KG47KTGX.cjs → QRCode-5DXFNKI2.cjs} +1 -1
  4. package/dist/{QRCode-YJ3EGWQS.mjs → QRCode-WUC652SH.mjs} +1 -1
  5. package/dist/{WithdrawModalReown-EEWQRENY.mjs → WithdrawModalReown-V4YYPNBE.mjs} +4 -4
  6. package/dist/{WithdrawModalReown-T3TPJIME.cjs → WithdrawModalReown-ZSFALZOB.cjs} +7 -7
  7. package/dist/{chunk-PWV2UJP3.cjs → chunk-6O4NGY2N.cjs} +5 -5
  8. package/dist/{chunk-SZIYS42B.mjs → chunk-7C4SPVM5.mjs} +6 -2
  9. package/dist/{chunk-6RCOF3XU.cjs → chunk-7LJYEGZZ.cjs} +93 -93
  10. package/dist/{chunk-DZNXG5JK.cjs → chunk-7NO7WVJV.cjs} +35 -28
  11. package/dist/{chunk-SEOQ66FW.cjs → chunk-AAQPYKBA.cjs} +397 -355
  12. package/dist/{chunk-7JIDIX27.cjs → chunk-DZ2RPLBM.cjs} +7 -3
  13. package/dist/{chunk-YB3JPWJW.mjs → chunk-H2WSFD53.mjs} +2 -2
  14. package/dist/{chunk-6K4JHM2D.mjs → chunk-IZMF2WHM.mjs} +12 -5
  15. package/dist/{chunk-HZBO2SIZ.mjs → chunk-KDJS56TQ.mjs} +97 -55
  16. package/dist/{chunk-EC63ZHY4.mjs → chunk-LDMY67HP.mjs} +3 -3
  17. package/dist/constants.cjs +2 -2
  18. package/dist/constants.mjs +1 -1
  19. package/dist/deposit.cjs +4 -4
  20. package/dist/deposit.d.cts +2 -2
  21. package/dist/deposit.d.ts +2 -2
  22. package/dist/deposit.mjs +3 -3
  23. package/dist/index.cjs +5 -5
  24. package/dist/index.d.cts +1 -1
  25. package/dist/index.d.ts +1 -1
  26. package/dist/index.mjs +4 -4
  27. package/dist/styles.css +60 -65
  28. package/dist/{types-C8i2ebY1.d.cts → types-cXr3j4NV.d.cts} +26 -0
  29. package/dist/{types-C8i2ebY1.d.ts → types-cXr3j4NV.d.ts} +26 -0
  30. package/dist/withdraw.cjs +4 -4
  31. package/dist/withdraw.d.cts +2 -2
  32. package/dist/withdraw.d.ts +2 -2
  33. package/dist/withdraw.mjs +3 -3
  34. package/package.json +1 -1
package/dist/index.mjs CHANGED
@@ -1,10 +1,10 @@
1
1
  import {
2
2
  DepositModal
3
- } from "./chunk-HZBO2SIZ.mjs";
3
+ } from "./chunk-KDJS56TQ.mjs";
4
4
  import {
5
5
  WithdrawModal
6
- } from "./chunk-EC63ZHY4.mjs";
7
- import "./chunk-6K4JHM2D.mjs";
6
+ } from "./chunk-LDMY67HP.mjs";
7
+ import "./chunk-IZMF2WHM.mjs";
8
8
  import {
9
9
  CHAIN_BY_ID,
10
10
  DEFAULT_BACKEND_URL,
@@ -34,7 +34,7 @@ import {
34
34
  getUsdcAddress,
35
35
  getUsdcDecimals,
36
36
  isSupportedTokenAddressForChain
37
- } from "./chunk-SZIYS42B.mjs";
37
+ } from "./chunk-7C4SPVM5.mjs";
38
38
 
39
39
  // src/core/reown-disconnect.ts
40
40
  import { modal } from "@reown/appkit/react";
package/dist/styles.css CHANGED
@@ -391,21 +391,17 @@
391
391
  padding-inline: 16px;
392
392
  }
393
393
 
394
- .rs-modal-body::-webkit-scrollbar {
395
- width: 6px;
394
+ /* Scrollbars are hidden throughout the modal UI. The portfolio list
395
+ (.rs-asset-list) is the sole exception — it keeps a visible scrollbar since
396
+ it's a long, independently-scrolling list. The :not() exemption also keeps
397
+ this rule's specificity above the per-container scrollbar rules elsewhere. */
398
+ .rs-modal *:not(.rs-asset-list) {
399
+ scrollbar-width: none;
396
400
  }
397
401
 
398
- .rs-modal-body::-webkit-scrollbar-track {
399
- background: transparent;
400
- }
401
-
402
- .rs-modal-body::-webkit-scrollbar-thumb {
403
- background-color: var(--rs-surface-hover);
404
- border-radius: var(--rs-radius-full);
405
- }
406
-
407
- .rs-modal-body::-webkit-scrollbar-thumb:hover {
408
- background-color: var(--rs-muted-foreground);
402
+ .rs-modal *:not(.rs-asset-list)::-webkit-scrollbar {
403
+ width: 0;
404
+ height: 0;
409
405
  }
410
406
 
411
407
  /* =============================================================================
@@ -1111,7 +1107,10 @@
1111
1107
  display: flex;
1112
1108
  flex-direction: column;
1113
1109
  gap: 4px;
1114
- max-height: 320px;
1110
+ /* Figma's asset list is 284px — exactly 4 rows (4×68 + 3×4 gaps). Cap here
1111
+ so wallets with many assets scroll inside instead of growing the modal
1112
+ past the design's height. */
1113
+ max-height: 284px;
1115
1114
  overflow-y: auto;
1116
1115
  overscroll-behavior: contain;
1117
1116
  /* Pull rows back to the row's natural left edge inside a scrollable
@@ -3004,11 +3003,13 @@
3004
3003
  align-items: center;
3005
3004
  justify-content: space-between;
3006
3005
  gap: 6px;
3006
+ white-space: nowrap;
3007
3007
  }
3008
3008
 
3009
3009
  .rs-deposit-address-min {
3010
3010
  display: inline-flex;
3011
3011
  align-items: center;
3012
+ flex-shrink: 0;
3012
3013
  gap: 4px;
3013
3014
  font-size: 11px;
3014
3015
  font-weight: 500;
@@ -3016,8 +3017,8 @@
3016
3017
  }
3017
3018
 
3018
3019
  .rs-deposit-address-min-icon {
3019
- width: 16px;
3020
- height: 16px;
3020
+ width: 12px;
3021
+ height: 12px;
3021
3022
  flex-shrink: 0;
3022
3023
  color: var(--rs-icon-secondary);
3023
3024
  }
@@ -3041,6 +3042,7 @@
3041
3042
  border: none;
3042
3043
  cursor: pointer;
3043
3044
  font-family: inherit;
3045
+ line-height: normal;
3044
3046
  color: var(--rs-muted);
3045
3047
  text-align: left;
3046
3048
  }
@@ -3202,7 +3204,10 @@
3202
3204
  align-items: center;
3203
3205
  gap: 8px;
3204
3206
  width: 100%;
3205
- padding: 12px;
3207
+ /* 11px vertical (not 12) so the 1px border lands the input at Figma's
3208
+ 48px total height — Figma draws the stroke inside the box, CSS adds it
3209
+ outside. Horizontal stays 12px to match the design. */
3210
+ padding: 11px 12px;
3206
3211
  background: var(--rs-surface-subtle);
3207
3212
  border-radius: 8px;
3208
3213
  border: 1px solid var(--rs-surface-subtle);
@@ -3310,39 +3315,18 @@
3310
3315
  border-radius: 8px;
3311
3316
  }
3312
3317
 
3313
- /* Mid-refetch: dim the address/QR and block interaction so a stale
3314
- registration can't be copied or scanned until setup is ready again. */
3315
- .rs-deposit-address-well--updating {
3316
- opacity: 0.4;
3317
- pointer-events: none;
3318
- filter: grayscale(0.3);
3319
- transition: opacity 0.15s;
3320
- }
3321
-
3322
- .rs-deposit-address-updating {
3323
- display: flex;
3324
- align-items: center;
3325
- justify-content: center;
3326
- gap: 8px;
3327
- width: 100%;
3328
- padding: 10px 12px;
3329
- font-size: 14px;
3330
- font-weight: 500;
3331
- color: var(--rs-muted);
3332
- }
3333
-
3334
3318
  .rs-deposit-address-qr {
3335
3319
  display: flex;
3336
3320
  align-items: center;
3337
3321
  justify-content: center;
3338
- padding: 12px;
3322
+ padding: 16px;
3339
3323
  }
3340
3324
 
3341
3325
  .rs-deposit-address-qr canvas,
3342
3326
  .rs-deposit-address-qr svg {
3343
3327
  display: block;
3344
- width: 200px;
3345
- height: 200px;
3328
+ width: 190px;
3329
+ height: 190px;
3346
3330
  }
3347
3331
 
3348
3332
  .rs-deposit-address-value {
@@ -3384,8 +3368,8 @@
3384
3368
  }
3385
3369
 
3386
3370
  .rs-skeleton-qr {
3387
- width: 200px;
3388
- height: 200px;
3371
+ width: 190px;
3372
+ height: 190px;
3389
3373
  }
3390
3374
 
3391
3375
  .rs-skeleton-address {
@@ -3417,6 +3401,7 @@
3417
3401
  color: var(--rs-foreground);
3418
3402
  font-size: 14px;
3419
3403
  font-weight: 500;
3404
+ line-height: normal;
3420
3405
  font-family: inherit;
3421
3406
  cursor: pointer;
3422
3407
  transition: background-color 0.15s;
@@ -3521,8 +3506,8 @@
3521
3506
  .rs-deposit-notifications {
3522
3507
  position: absolute;
3523
3508
  bottom: 12px;
3524
- left: 12px;
3525
- right: 12px;
3509
+ left: 0;
3510
+ right: 0;
3526
3511
  z-index: 10;
3527
3512
  display: flex;
3528
3513
  flex-direction: column;
@@ -3579,7 +3564,8 @@
3579
3564
  justify-content: center;
3580
3565
  }
3581
3566
 
3582
- .rs-deposit-notification-badge svg {
3567
+ .rs-deposit-notification-badge--complete svg,
3568
+ .rs-deposit-notification-badge--failed svg {
3583
3569
  width: 20px;
3584
3570
  height: 20px;
3585
3571
  }
@@ -3599,9 +3585,29 @@
3599
3585
  color: var(--rs-icon-secondary);
3600
3586
  }
3601
3587
 
3602
- .rs-deposit-notification-badge--processing .rs-spinner {
3588
+ .rs-deposit-notification-spinner {
3603
3589
  width: 42px;
3604
3590
  height: 42px;
3591
+ animation: rs-spin 1s linear infinite;
3592
+ }
3593
+
3594
+ /* Spinner ring/arc colors flip with the theme. Light: a faint zinc-200 ring
3595
+ with a zinc-600 arc on the near-white card. Dark: the Figma values — a
3596
+ zinc-300 ring with a zinc-600 arc on the #18181b card. */
3597
+ .rs-deposit-notification-spinner-track {
3598
+ stroke: #e4e4e7;
3599
+ }
3600
+
3601
+ .rs-deposit-notification-spinner-head {
3602
+ stroke: #52525c;
3603
+ }
3604
+
3605
+ .rs-modal[data-theme="dark"] .rs-deposit-notification-spinner-track {
3606
+ stroke: #d4d4d8;
3607
+ }
3608
+
3609
+ .rs-modal[data-theme="dark"] .rs-deposit-notification-spinner-head {
3610
+ stroke: #52525c;
3605
3611
  }
3606
3612
 
3607
3613
  .rs-deposit-notification-content {
@@ -4049,23 +4055,6 @@
4049
4055
  padding-right: 2px;
4050
4056
  }
4051
4057
 
4052
- .rs-history-list::-webkit-scrollbar {
4053
- width: 6px;
4054
- }
4055
-
4056
- .rs-history-list::-webkit-scrollbar-thumb {
4057
- background-color: var(--rs-surface-hover);
4058
- border-radius: var(--rs-radius-full);
4059
- }
4060
-
4061
- .rs-history-list::-webkit-scrollbar-thumb:hover {
4062
- background-color: var(--rs-muted-foreground);
4063
- }
4064
-
4065
- .rs-history-list::-webkit-scrollbar-track {
4066
- background: transparent;
4067
- }
4068
-
4069
4058
  /* Card */
4070
4059
  .rs-history-card {
4071
4060
  width: 100%;
@@ -4408,6 +4397,12 @@
4408
4397
  gap: 8px;
4409
4398
  }
4410
4399
 
4400
+ /* Figma gives subtitle headers a 12px icon→title gap (vs 8px for title-only
4401
+ headers like the QR screen). */
4402
+ .rs-body-header:has(.rs-body-header-subtitle) {
4403
+ gap: 12px;
4404
+ }
4405
+
4411
4406
  .rs-body-header-icon {
4412
4407
  display: inline-flex;
4413
4408
  align-items: center;
@@ -4456,7 +4451,7 @@
4456
4451
  .rs-body-header-subtitle {
4457
4452
  font-size: 14px;
4458
4453
  font-weight: 500;
4459
- line-height: 1.4;
4454
+ line-height: normal;
4460
4455
  color: var(--rs-muted);
4461
4456
  margin: 0;
4462
4457
  }
@@ -299,14 +299,40 @@ type DepositLifecycleEvent = {
299
299
  type: "submitted";
300
300
  txHash: string;
301
301
  sourceChain: ChainId | "unknown";
302
+ /** Source-token base units (e.g. "1100000" for 1.10 USDC). */
302
303
  amount: string;
304
+ /**
305
+ * Decimals of the source token, for converting `amount` to a
306
+ * human-readable value. Omitted when the token is not recognised
307
+ * (e.g. a QR deposit of an unlisted token).
308
+ */
309
+ sourceDecimals?: number;
310
+ /**
311
+ * USD equivalent of the deposit as entered in the modal (token units
312
+ * for unpriced non-stablecoins). Omitted for flows without an amount
313
+ * input (QR transfer, fiat onramp, exchange connect).
314
+ */
315
+ amountUsd?: string;
303
316
  } | {
304
317
  type: "complete";
305
318
  txHash: string;
306
319
  destinationTxHash?: string;
320
+ /** Source-token base units (e.g. "1100000" for 1.10 USDC). */
307
321
  amount: string;
308
322
  sourceChain: ChainId | "unknown";
309
323
  sourceToken?: string;
324
+ /**
325
+ * Decimals of the source token, for converting `amount` to a
326
+ * human-readable value. Omitted when the token is not recognised
327
+ * (e.g. a QR deposit of an unlisted token).
328
+ */
329
+ sourceDecimals?: number;
330
+ /**
331
+ * USD equivalent of the deposit as entered in the modal (token units
332
+ * for unpriced non-stablecoins). Omitted for flows without an amount
333
+ * input (QR transfer, fiat onramp, exchange connect).
334
+ */
335
+ amountUsd?: string;
310
336
  targetChain: number | "solana";
311
337
  targetToken: string;
312
338
  } | {
@@ -299,14 +299,40 @@ type DepositLifecycleEvent = {
299
299
  type: "submitted";
300
300
  txHash: string;
301
301
  sourceChain: ChainId | "unknown";
302
+ /** Source-token base units (e.g. "1100000" for 1.10 USDC). */
302
303
  amount: string;
304
+ /**
305
+ * Decimals of the source token, for converting `amount` to a
306
+ * human-readable value. Omitted when the token is not recognised
307
+ * (e.g. a QR deposit of an unlisted token).
308
+ */
309
+ sourceDecimals?: number;
310
+ /**
311
+ * USD equivalent of the deposit as entered in the modal (token units
312
+ * for unpriced non-stablecoins). Omitted for flows without an amount
313
+ * input (QR transfer, fiat onramp, exchange connect).
314
+ */
315
+ amountUsd?: string;
303
316
  } | {
304
317
  type: "complete";
305
318
  txHash: string;
306
319
  destinationTxHash?: string;
320
+ /** Source-token base units (e.g. "1100000" for 1.10 USDC). */
307
321
  amount: string;
308
322
  sourceChain: ChainId | "unknown";
309
323
  sourceToken?: string;
324
+ /**
325
+ * Decimals of the source token, for converting `amount` to a
326
+ * human-readable value. Omitted when the token is not recognised
327
+ * (e.g. a QR deposit of an unlisted token).
328
+ */
329
+ sourceDecimals?: number;
330
+ /**
331
+ * USD equivalent of the deposit as entered in the modal (token units
332
+ * for unpriced non-stablecoins). Omitted for flows without an amount
333
+ * input (QR transfer, fiat onramp, exchange connect).
334
+ */
335
+ amountUsd?: string;
310
336
  targetChain: number | "solana";
311
337
  targetToken: string;
312
338
  } | {
package/dist/withdraw.cjs CHANGED
@@ -1,8 +1,8 @@
1
1
  "use strict";Object.defineProperty(exports, "__esModule", {value: true});
2
2
 
3
- var _chunk6RCOF3XUcjs = require('./chunk-6RCOF3XU.cjs');
4
- require('./chunk-DZNXG5JK.cjs');
5
- require('./chunk-7JIDIX27.cjs');
3
+ var _chunk7LJYEGZZcjs = require('./chunk-7LJYEGZZ.cjs');
4
+ require('./chunk-7NO7WVJV.cjs');
5
+ require('./chunk-DZ2RPLBM.cjs');
6
6
 
7
7
 
8
- exports.WithdrawModal = _chunk6RCOF3XUcjs.WithdrawModal;
8
+ exports.WithdrawModal = _chunk7LJYEGZZcjs.WithdrawModal;
@@ -1,6 +1,6 @@
1
1
  import * as react_jsx_runtime from 'react/jsx-runtime';
2
- import { n as WithdrawModalProps } from './types-C8i2ebY1.cjs';
3
- export { A as AssetOption, a as ConnectedEventData, E as ErrorEventData, S as SafeTransactionRequest, k as WithdrawCompleteEventData, l as WithdrawFailedEventData, o as WithdrawSubmittedEventData } from './types-C8i2ebY1.cjs';
2
+ import { n as WithdrawModalProps } from './types-cXr3j4NV.cjs';
3
+ export { A as AssetOption, a as ConnectedEventData, E as ErrorEventData, S as SafeTransactionRequest, k as WithdrawCompleteEventData, l as WithdrawFailedEventData, o as WithdrawSubmittedEventData } from './types-cXr3j4NV.cjs';
4
4
  import 'viem';
5
5
 
6
6
  declare function WithdrawModal(props: WithdrawModalProps): react_jsx_runtime.JSX.Element;
@@ -1,6 +1,6 @@
1
1
  import * as react_jsx_runtime from 'react/jsx-runtime';
2
- import { n as WithdrawModalProps } from './types-C8i2ebY1.js';
3
- export { A as AssetOption, a as ConnectedEventData, E as ErrorEventData, S as SafeTransactionRequest, k as WithdrawCompleteEventData, l as WithdrawFailedEventData, o as WithdrawSubmittedEventData } from './types-C8i2ebY1.js';
2
+ import { n as WithdrawModalProps } from './types-cXr3j4NV.js';
3
+ export { A as AssetOption, a as ConnectedEventData, E as ErrorEventData, S as SafeTransactionRequest, k as WithdrawCompleteEventData, l as WithdrawFailedEventData, o as WithdrawSubmittedEventData } from './types-cXr3j4NV.js';
4
4
  import 'viem';
5
5
 
6
6
  declare function WithdrawModal(props: WithdrawModalProps): react_jsx_runtime.JSX.Element;
package/dist/withdraw.mjs CHANGED
@@ -1,8 +1,8 @@
1
1
  import {
2
2
  WithdrawModal
3
- } from "./chunk-EC63ZHY4.mjs";
4
- import "./chunk-6K4JHM2D.mjs";
5
- import "./chunk-SZIYS42B.mjs";
3
+ } from "./chunk-LDMY67HP.mjs";
4
+ import "./chunk-IZMF2WHM.mjs";
5
+ import "./chunk-7C4SPVM5.mjs";
6
6
  export {
7
7
  WithdrawModal
8
8
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@rhinestone/deposit-modal",
3
- "version": "0.3.0-alpha.13",
3
+ "version": "0.3.0-alpha.15",
4
4
  "description": "React modal component for Rhinestone cross-chain deposits",
5
5
  "author": "Rhinestone <dev@rhinestone.wtf>",
6
6
  "bugs": {