@lifi/widget 3.9.0 → 3.10.0
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/CHANGELOG.md +12 -0
- package/dist/esm/components/ChainSelect/useChainSelect.js +9 -3
- package/dist/esm/components/ChainSelect/useChainSelect.js.map +1 -1
- package/dist/esm/components/Header/CloseDrawerButton.js +4 -3
- package/dist/esm/components/Header/CloseDrawerButton.js.map +1 -1
- package/dist/esm/components/Header/WalletHeader.js +14 -10
- package/dist/esm/components/Header/WalletHeader.js.map +1 -1
- package/dist/esm/components/Step/StepTimer.js +13 -6
- package/dist/esm/components/Step/StepTimer.js.map +1 -1
- package/dist/esm/config/version.d.ts +1 -1
- package/dist/esm/config/version.js +1 -1
- package/dist/esm/config/version.js.map +1 -1
- package/dist/esm/i18n/bn.json +3 -4
- package/dist/esm/i18n/de.json +3 -4
- package/dist/esm/i18n/es.json +3 -4
- package/dist/esm/i18n/fr.json +3 -4
- package/dist/esm/i18n/hi.json +3 -4
- package/dist/esm/i18n/id.json +3 -4
- package/dist/esm/i18n/it.json +3 -4
- package/dist/esm/i18n/ja.json +3 -4
- package/dist/esm/i18n/ko.json +3 -4
- package/dist/esm/i18n/pt.json +3 -4
- package/dist/esm/i18n/th.json +3 -4
- package/dist/esm/i18n/tr.json +3 -4
- package/dist/esm/i18n/uk.json +3 -4
- package/dist/esm/i18n/vi.json +3 -4
- package/dist/esm/i18n/zh.json +3 -4
- package/dist/esm/pages/SendToWallet/ConnectedWalletsPage.js +2 -2
- package/dist/esm/pages/SendToWallet/ConnectedWalletsPage.js.map +1 -1
- package/dist/esm/pages/SendToWallet/RecentWalletsPage.js +2 -2
- package/dist/esm/pages/SendToWallet/RecentWalletsPage.js.map +1 -1
- package/dist/esm/providers/WalletProvider/WalletProvider.js +8 -2
- package/dist/esm/providers/WalletProvider/WalletProvider.js.map +1 -1
- package/dist/esm/providers/WalletProvider/useExternalWalletProvider.d.ts +8 -0
- package/dist/esm/providers/WalletProvider/useExternalWalletProvider.js +39 -0
- package/dist/esm/providers/WalletProvider/useExternalWalletProvider.js.map +1 -0
- package/dist/esm/stores/chains/ChainOrderStore.js +26 -5
- package/dist/esm/stores/chains/ChainOrderStore.js.map +1 -1
- package/dist/esm/types/widget.d.ts +9 -0
- package/package.json +2 -2
- package/src/components/ChainSelect/useChainSelect.ts +9 -4
- package/src/components/Header/CloseDrawerButton.tsx +4 -3
- package/src/components/Header/WalletHeader.tsx +20 -12
- package/src/components/Step/StepTimer.tsx +29 -19
- package/src/config/version.ts +1 -1
- package/src/i18n/bn.json +3 -4
- package/src/i18n/de.json +3 -4
- package/src/i18n/es.json +3 -4
- package/src/i18n/fr.json +3 -4
- package/src/i18n/hi.json +3 -4
- package/src/i18n/id.json +3 -4
- package/src/i18n/it.json +3 -4
- package/src/i18n/ja.json +3 -4
- package/src/i18n/ko.json +3 -4
- package/src/i18n/pt.json +3 -4
- package/src/i18n/th.json +3 -4
- package/src/i18n/tr.json +3 -4
- package/src/i18n/uk.json +3 -4
- package/src/i18n/vi.json +3 -4
- package/src/i18n/zh.json +3 -4
- package/src/pages/SendToWallet/ConnectedWalletsPage.tsx +2 -2
- package/src/pages/SendToWallet/RecentWalletsPage.tsx +2 -2
- package/src/providers/WalletProvider/WalletProvider.tsx +9 -2
- package/src/providers/WalletProvider/useExternalWalletProvider.ts +53 -0
- package/src/stores/chains/ChainOrderStore.tsx +28 -5
- package/src/types/widget.ts +9 -0
- package/dist/esm/providers/WalletProvider/useHasExternalWalletProvider.d.ts +0 -7
- package/dist/esm/providers/WalletProvider/useHasExternalWalletProvider.js +0 -28
- package/dist/esm/providers/WalletProvider/useHasExternalWalletProvider.js.map +0 -1
- package/src/providers/WalletProvider/useHasExternalWalletProvider.ts +0 -36
package/dist/esm/i18n/th.json
CHANGED
|
@@ -16,10 +16,10 @@
|
|
|
16
16
|
"bridgeReview": "",
|
|
17
17
|
"buy": "ซื้อ",
|
|
18
18
|
"cancel": "ยกเลิก",
|
|
19
|
-
"changeWallet": "เปลี่ยนกระเป๋า",
|
|
20
19
|
"checkoutReview": "",
|
|
21
20
|
"close": "ปิด",
|
|
22
21
|
"confirm": "ยืนยัน",
|
|
22
|
+
"connectAnotherWallet": "",
|
|
23
23
|
"connectWallet": "เชื่อมต่อ กระเป๋า",
|
|
24
24
|
"contactSupport": "ติดต่อฝ่ายสนับสนุน",
|
|
25
25
|
"continue": "ดำเนินการต่อ",
|
|
@@ -142,6 +142,7 @@
|
|
|
142
142
|
"signatureRejected": "จำเป็นต้องมีลายเซ็นของคุณเพื่อทำธุรกรมให้เสร็จสมบูรณ์. {{amount, number(maximumFractionDigits: 9)}} {{tokenSymbol}} บน {{chainName}} ยังคงอยู่ในกระเป๋าเงินของคุณ.",
|
|
143
143
|
"slippageThreshold": "การคลาดเคลื่อนมีขนาดใหญ่กว่าเกณฑ์ที่กำหนด โปรดขอเส้นทางใหม่เพื่อได้รับการเสนอราคาใหม่.",
|
|
144
144
|
"transactionCanceled": "ธุรกรรมได้ถูกยกเลิกแล้ว",
|
|
145
|
+
"transactionConflict": "",
|
|
145
146
|
"transactionExpired": "",
|
|
146
147
|
"transactionFailed": "โปรดตรวจสอบบล็อกการสำรวจสำหรับข้อมูลเพิ่มเติม.",
|
|
147
148
|
"transactionNotSent": "ธุรกรรมไม่ได้ถูกส่ง",
|
|
@@ -161,6 +162,7 @@
|
|
|
161
162
|
"signatureRejected": "ต้องมีลายเซ็น",
|
|
162
163
|
"slippageNotMet": "ความคลาดเคลื่อนของราคาไม่เป็นไปตามเงื่อนไข.",
|
|
163
164
|
"transactionCanceled": "ธุรกรรมถูกยกเลิกแล้ว",
|
|
165
|
+
"transactionConflict": "",
|
|
164
166
|
"transactionExpired": "",
|
|
165
167
|
"transactionFailed": "การทำธุรกรรมล้มเหลว",
|
|
166
168
|
"transactionSimulationFailed": "",
|
|
@@ -309,8 +311,5 @@
|
|
|
309
311
|
"noBookmarkedWallets": "ไม่มีกระเป๋าเงินที่ bookmark ไว้",
|
|
310
312
|
"noConnectedWallets": "ไม่มีกระเป๋าเงินที่เชื่อมต่อไว้",
|
|
311
313
|
"noRecentWallets": "ไม่พบกระเป๋าเงินล่าสุด"
|
|
312
|
-
},
|
|
313
|
-
"wallet": {
|
|
314
|
-
"extensionNotFound": "โปรดตรวจสอบว่ามีเพียงส่วนขยายของเบราว์เซอร์ {{name}} เท่านั้นที่ใช้งานได้ก่อนที่จะเลือกกระเป๋าเงินนี้."
|
|
315
314
|
}
|
|
316
315
|
}
|
package/dist/esm/i18n/tr.json
CHANGED
|
@@ -16,10 +16,10 @@
|
|
|
16
16
|
"bridgeReview": "Köprüyü incele",
|
|
17
17
|
"buy": "Satın al",
|
|
18
18
|
"cancel": "İptal",
|
|
19
|
-
"changeWallet": "Cüzdan değiştir",
|
|
20
19
|
"checkoutReview": "Satın alımı incele",
|
|
21
20
|
"close": "Kapat",
|
|
22
21
|
"confirm": "Onayla",
|
|
22
|
+
"connectAnotherWallet": "",
|
|
23
23
|
"connectWallet": "Cüzdanı Bağla",
|
|
24
24
|
"contactSupport": "Destek Ekibine Ulaş",
|
|
25
25
|
"continue": "Devam et",
|
|
@@ -142,6 +142,7 @@
|
|
|
142
142
|
"signatureRejected": "İşlemi tamamlamak için imzanız gerekiyor. {{chainName}} üzerinde {{amount, number(maximumFractionDigits: 9)}} {{tokenSymbol}} cüzdanınızda bulunmaktadır.",
|
|
143
143
|
"slippageThreshold": "Slipaj, tanımlanan eşikten daha büyük. Yeni bir fiyat teklifi almak için lütfen yeni bir rota isteyin.",
|
|
144
144
|
"transactionCanceled": "İşlem iptal edildi.",
|
|
145
|
+
"transactionConflict": "",
|
|
145
146
|
"transactionExpired": "Blok yüksekliği izin verilen maksimum sınırı aştı veya blok hash'i artık yeterince güncel değil.",
|
|
146
147
|
"transactionFailed": "Daha fazla bilgi için ağ tarayıcısını kontrol edin.",
|
|
147
148
|
"transactionNotSent": "İşlem gönderilmedi.",
|
|
@@ -161,6 +162,7 @@
|
|
|
161
162
|
"signatureRejected": "İmza gerekiyor",
|
|
162
163
|
"slippageNotMet": "Slipaj koşulları karşılanmadı",
|
|
163
164
|
"transactionCanceled": "İşlem iptal edildi",
|
|
165
|
+
"transactionConflict": "",
|
|
164
166
|
"transactionExpired": "İşlem zaman aşımına uğradı",
|
|
165
167
|
"transactionFailed": "İşlem başarısız",
|
|
166
168
|
"transactionSimulationFailed": "İşlem simulasyonu başarısız oldu",
|
|
@@ -309,8 +311,5 @@
|
|
|
309
311
|
"noBookmarkedWallets": "Kayıtlı cüzdan bulunamadı",
|
|
310
312
|
"noConnectedWallets": "Bağlı cüzdan bulunamadı",
|
|
311
313
|
"noRecentWallets": "Son kullanılan cüzdan bulunamadı"
|
|
312
|
-
},
|
|
313
|
-
"wallet": {
|
|
314
|
-
"extensionNotFound": "Lütfen bu cüzdanı seçmeden önce yalnızca {{name}} tarayıcı uzantısının etkin olduğundan emin olun."
|
|
315
314
|
}
|
|
316
315
|
}
|
package/dist/esm/i18n/uk.json
CHANGED
|
@@ -16,10 +16,10 @@
|
|
|
16
16
|
"bridgeReview": "Переглянути бридж",
|
|
17
17
|
"buy": "Придбати",
|
|
18
18
|
"cancel": "Скасувати",
|
|
19
|
-
"changeWallet": "Змінити гаманець",
|
|
20
19
|
"checkoutReview": "Перегляд покупки",
|
|
21
20
|
"close": "Закрити",
|
|
22
21
|
"confirm": "Підтвердити",
|
|
22
|
+
"connectAnotherWallet": "Під'єднати інший гаманець",
|
|
23
23
|
"connectWallet": "Під'єднати гаманець",
|
|
24
24
|
"contactSupport": "Служба підтримки",
|
|
25
25
|
"continue": "Продовжити",
|
|
@@ -142,6 +142,7 @@
|
|
|
142
142
|
"signatureRejected": "Для завершення транзакції потрібен ваш підпис. {{amount, number(maximumFractionDigits: 9)}} {{tokenSymbol}} на {{chainName}} залишаються у вашому гаманці.",
|
|
143
143
|
"slippageThreshold": "Прослизання перевищує визначений поріг. Будь ласка, зробіть запит на новий маршрут, щоб отримати нову пропозицію.",
|
|
144
144
|
"transactionCanceled": "Транзакцію скасовано.",
|
|
145
|
+
"transactionConflict": "Неможливо обробити транзакцію, оскільки вона конфліктує з іншою очікуваною транзакцією за допомогою тих же коштів. Дочекайтеся підтвердження транзакції або перевірте історію транзакцій, перш ніж спробувати ще раз.",
|
|
145
146
|
"transactionExpired": "Висота блоку перевищила максимально дозволену межу або хеш блоку вже не достатньо свіжий.",
|
|
146
147
|
"transactionFailed": "Будь ласка, перевірте провідник блоків для отримання додаткової інформації.",
|
|
147
148
|
"transactionNotSent": "Транзакція не була надіслана.",
|
|
@@ -161,6 +162,7 @@
|
|
|
161
162
|
"signatureRejected": "Підпис обов'язковий",
|
|
162
163
|
"slippageNotMet": "Не виконані умови прослизання",
|
|
163
164
|
"transactionCanceled": "Транзакцію скасовано",
|
|
165
|
+
"transactionConflict": "Конфлікт між транзакціями",
|
|
164
166
|
"transactionExpired": "Транзакція прострочена",
|
|
165
167
|
"transactionFailed": "Транзакція не вдалася.",
|
|
166
168
|
"transactionSimulationFailed": "Збій симуляції транзакції",
|
|
@@ -309,8 +311,5 @@
|
|
|
309
311
|
"noBookmarkedWallets": "Немає гаманців в закладках",
|
|
310
312
|
"noConnectedWallets": "Немає підключених гаманців",
|
|
311
313
|
"noRecentWallets": "Немає недавніх гаманців"
|
|
312
|
-
},
|
|
313
|
-
"wallet": {
|
|
314
|
-
"extensionNotFound": "Перш ніж вибрати цей гаманець, переконайтеся, що в браузері активне лише розширення {{name}}."
|
|
315
314
|
}
|
|
316
315
|
}
|
package/dist/esm/i18n/vi.json
CHANGED
|
@@ -16,10 +16,10 @@
|
|
|
16
16
|
"bridgeReview": "",
|
|
17
17
|
"buy": "Mua",
|
|
18
18
|
"cancel": "Huỷ bỏ",
|
|
19
|
-
"changeWallet": "Thay đổi ví",
|
|
20
19
|
"checkoutReview": "",
|
|
21
20
|
"close": "Đóng",
|
|
22
21
|
"confirm": "Xác nhận",
|
|
22
|
+
"connectAnotherWallet": "",
|
|
23
23
|
"connectWallet": "Kết nối ví",
|
|
24
24
|
"contactSupport": "Liên hệ hỗ trợ",
|
|
25
25
|
"continue": "Tiếp tục",
|
|
@@ -142,6 +142,7 @@
|
|
|
142
142
|
"signatureRejected": "Cần có chữ ký để hoàn tất giao dịch. {{amount, number(maximumFractionDigits: 9)}} {{tokenSymbol}} tại {{chainName}} vẫn còn trong ví của bạn.",
|
|
143
143
|
"slippageThreshold": "Độ trượt giá lớn hơn ngưỡng xác định. Vui lòng yêu cầu một tuyến đường mới để nhận báo giá mới.",
|
|
144
144
|
"transactionCanceled": "Giao dịch đã bị huỷ.",
|
|
145
|
+
"transactionConflict": "",
|
|
145
146
|
"transactionExpired": "",
|
|
146
147
|
"transactionFailed": "Vui lòng kiểm tra block explorer để biết thêm thông tin.",
|
|
147
148
|
"transactionNotSent": "Giao dịch không được gửi.",
|
|
@@ -161,6 +162,7 @@
|
|
|
161
162
|
"signatureRejected": "Yêu cầu chữ ký",
|
|
162
163
|
"slippageNotMet": "Điều kiện trượt giá không được đáp ứng",
|
|
163
164
|
"transactionCanceled": "Giao dịch bị huỷ",
|
|
165
|
+
"transactionConflict": "",
|
|
164
166
|
"transactionExpired": "",
|
|
165
167
|
"transactionFailed": "Giao dịch không thành công",
|
|
166
168
|
"transactionSimulationFailed": "",
|
|
@@ -309,8 +311,5 @@
|
|
|
309
311
|
"noBookmarkedWallets": "Không có ví được đánh dấu",
|
|
310
312
|
"noConnectedWallets": "Không có ví được kết nối",
|
|
311
313
|
"noRecentWallets": "Không có ví gần đây"
|
|
312
|
-
},
|
|
313
|
-
"wallet": {
|
|
314
|
-
"extensionNotFound": "Chắc chắn rằng tiện ích trên trình duyệt {{name}} đã được kích hoạt tước khi chọn ví này."
|
|
315
314
|
}
|
|
316
315
|
}
|
package/dist/esm/i18n/zh.json
CHANGED
|
@@ -16,10 +16,10 @@
|
|
|
16
16
|
"bridgeReview": "",
|
|
17
17
|
"buy": "购买",
|
|
18
18
|
"cancel": "取消",
|
|
19
|
-
"changeWallet": "更换钱包",
|
|
20
19
|
"checkoutReview": "",
|
|
21
20
|
"close": "关闭",
|
|
22
21
|
"confirm": "确认",
|
|
22
|
+
"connectAnotherWallet": "",
|
|
23
23
|
"connectWallet": "关联钱包",
|
|
24
24
|
"contactSupport": "联系技术支持",
|
|
25
25
|
"continue": "继续",
|
|
@@ -142,6 +142,7 @@
|
|
|
142
142
|
"signatureRejected": "需要您签名来完成此次交易。不用担心,{{chainName}} 链上 {{amount, number(maximumFractionDigits: 9)}} 个 {{tokenSymbol}} 仍在您的钱包里。",
|
|
143
143
|
"slippageThreshold": "滑点大于预设值,请选择其他路由并获取新的价格。",
|
|
144
144
|
"transactionCanceled": "交易已被取消。",
|
|
145
|
+
"transactionConflict": "",
|
|
145
146
|
"transactionExpired": "",
|
|
146
147
|
"transactionFailed": "请查看区块浏览器以了解更多信息。",
|
|
147
148
|
"transactionNotSent": "交易未能发送。",
|
|
@@ -161,6 +162,7 @@
|
|
|
161
162
|
"signatureRejected": "交易需要签名。",
|
|
162
163
|
"slippageNotMet": "滑点未满足",
|
|
163
164
|
"transactionCanceled": "交易取消",
|
|
165
|
+
"transactionConflict": "",
|
|
164
166
|
"transactionExpired": "",
|
|
165
167
|
"transactionFailed": "交易失败",
|
|
166
168
|
"transactionSimulationFailed": "",
|
|
@@ -309,8 +311,5 @@
|
|
|
309
311
|
"noBookmarkedWallets": "没有收藏的钱包",
|
|
310
312
|
"noConnectedWallets": "没有已连接的钱包",
|
|
311
313
|
"noRecentWallets": "没有最近使用的钱包"
|
|
312
|
-
},
|
|
313
|
-
"wallet": {
|
|
314
|
-
"extensionNotFound": "在选择钱包之前,请确保只有{{name}} 浏览器的扩展应用处于激活状态。"
|
|
315
314
|
}
|
|
316
315
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
2
|
import { useAccount } from '@lifi/wallet-management';
|
|
3
|
-
import { ContentCopyRounded, MoreHoriz, OpenInNewRounded,
|
|
3
|
+
import { ContentCopyRounded, MoreHoriz, OpenInNewRounded, Wallet, } from '@mui/icons-material';
|
|
4
4
|
import { ListItemAvatar, ListItemText, MenuItem } from '@mui/material';
|
|
5
5
|
import { useId, useState } from 'react';
|
|
6
6
|
import { useTranslation } from 'react-i18next';
|
|
@@ -81,7 +81,7 @@ export const ConnectedWalletsPage = () => {
|
|
|
81
81
|
? 0.5
|
|
82
82
|
: 1,
|
|
83
83
|
}, children: _jsx(MoreHoriz, { fontSize: "small" }) })] }, account.address));
|
|
84
|
-
}), !accounts.length && (_jsx(EmptyListIndicator, { icon: _jsx(
|
|
84
|
+
}), !accounts.length && (_jsx(EmptyListIndicator, { icon: _jsx(Wallet, { sx: { fontSize: 48 } }), children: t('sendToWallet.noConnectedWallets') })), _jsxs(Menu, { id: moreMenuId, elevation: 0, anchorOrigin: {
|
|
85
85
|
vertical: 'bottom',
|
|
86
86
|
horizontal: 'right',
|
|
87
87
|
}, transformOrigin: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ConnectedWalletsPage.js","sourceRoot":"","sources":["../../../../src/pages/SendToWallet/ConnectedWalletsPage.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAA;AACpD,OAAO,EACL,kBAAkB,EAClB,SAAS,EACT,gBAAgB,EAChB,
|
|
1
|
+
{"version":3,"file":"ConnectedWalletsPage.js","sourceRoot":"","sources":["../../../../src/pages/SendToWallet/ConnectedWalletsPage.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
-
import { ContentCopyRounded, DeleteOutline, MoreHoriz, OpenInNewRounded, TurnedInNot,
|
|
2
|
+
import { ContentCopyRounded, DeleteOutline, History, MoreHoriz, OpenInNewRounded, TurnedInNot, } from '@mui/icons-material';
|
|
3
3
|
import { ListItemAvatar, ListItemText, MenuItem } from '@mui/material';
|
|
4
4
|
import { useId, useRef, useState } from 'react';
|
|
5
5
|
import { useTranslation } from 'react-i18next';
|
|
@@ -98,7 +98,7 @@ export const RecentWalletsPage = () => {
|
|
|
98
98
|
requiredToChainType !== recentWallet.chainType
|
|
99
99
|
? 0.5
|
|
100
100
|
: 1,
|
|
101
|
-
}, children: _jsx(MoreHoriz, { fontSize: "small" }) })] }, recentWallet.address))), !recentWallets.length && (_jsx(EmptyListIndicator, { icon: _jsx(
|
|
101
|
+
}, children: _jsx(MoreHoriz, { fontSize: "small" }) })] }, recentWallet.address))), !recentWallets.length && (_jsx(EmptyListIndicator, { icon: _jsx(History, { sx: { fontSize: 48 } }), children: t('sendToWallet.noRecentWallets') })), _jsxs(Menu, { id: moreMenuId, elevation: 0, anchorOrigin: {
|
|
102
102
|
vertical: 'bottom',
|
|
103
103
|
horizontal: 'right',
|
|
104
104
|
}, transformOrigin: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RecentWalletsPage.js","sourceRoot":"","sources":["../../../../src/pages/SendToWallet/RecentWalletsPage.tsx"],"names":[],"mappings":";AAAA,OAAO,EACL,kBAAkB,EAClB,aAAa,EACb,SAAS,EACT,gBAAgB,EAChB,WAAW,
|
|
1
|
+
{"version":3,"file":"RecentWalletsPage.js","sourceRoot":"","sources":["../../../../src/pages/SendToWallet/RecentWalletsPage.tsx"],"names":[],"mappings":"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"}
|
|
@@ -7,15 +7,21 @@ import { EVMProvider } from './EVMProvider.js';
|
|
|
7
7
|
import { SDKProviders } from './SDKProviders.js';
|
|
8
8
|
import { SVMProvider } from './SVMProvider.js';
|
|
9
9
|
import { UTXOProvider } from './UTXOProvider.js';
|
|
10
|
+
import { useExternalWalletProvider } from './useExternalWalletProvider.js';
|
|
10
11
|
export const WalletProvider = ({ children }) => {
|
|
11
12
|
return (_jsx(EVMProvider, { children: _jsx(SVMProvider, { children: _jsxs(UTXOProvider, { children: [_jsx(SDKProviders, {}), _jsx(WalletMenuProvider, { children: children })] }) }) }));
|
|
12
13
|
};
|
|
13
14
|
export const WalletMenuProvider = ({ children }) => {
|
|
14
15
|
const { walletConfig } = useWidgetConfig();
|
|
15
16
|
const { i18n } = useTranslation();
|
|
17
|
+
const { internalChainTypes } = useExternalWalletProvider();
|
|
16
18
|
const config = useMemo(() => {
|
|
17
|
-
return {
|
|
18
|
-
|
|
19
|
+
return {
|
|
20
|
+
locale: i18n.resolvedLanguage,
|
|
21
|
+
enabledChainTypes: internalChainTypes,
|
|
22
|
+
...walletConfig,
|
|
23
|
+
};
|
|
24
|
+
}, [i18n.resolvedLanguage, internalChainTypes, walletConfig]);
|
|
19
25
|
return (_jsx(WalletManagementProvider, { config: config, children: children }));
|
|
20
26
|
};
|
|
21
27
|
//# sourceMappingURL=WalletProvider.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"WalletProvider.js","sourceRoot":"","sources":["../../../../src/providers/WalletProvider/WalletProvider.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,wBAAwB,EAAE,MAAM,yBAAyB,CAAA;AAClE,OAAO,EAAmC,OAAO,EAAE,MAAM,OAAO,CAAA;AAChE,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AAC9C,OAAO,EAAE,eAAe,EAAE,MAAM,qCAAqC,CAAA;AACrE,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAA;AAC9C,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AAChD,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAA;AAC9C,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;
|
|
1
|
+
{"version":3,"file":"WalletProvider.js","sourceRoot":"","sources":["../../../../src/providers/WalletProvider/WalletProvider.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,wBAAwB,EAAE,MAAM,yBAAyB,CAAA;AAClE,OAAO,EAAmC,OAAO,EAAE,MAAM,OAAO,CAAA;AAChE,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AAC9C,OAAO,EAAE,eAAe,EAAE,MAAM,qCAAqC,CAAA;AACrE,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAA;AAC9C,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AAChD,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAA;AAC9C,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AAChD,OAAO,EAAE,yBAAyB,EAAE,MAAM,gCAAgC,CAAA;AAE1E,MAAM,CAAC,MAAM,cAAc,GAA0B,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE;IACpE,OAAO,CACL,KAAC,WAAW,cACV,KAAC,WAAW,cACV,MAAC,YAAY,eACX,KAAC,YAAY,KAAG,EAChB,KAAC,kBAAkB,cAAE,QAAQ,GAAsB,IACtC,GACH,GACF,CACf,CAAA;AACH,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,kBAAkB,GAA0B,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE;IACxE,MAAM,EAAE,YAAY,EAAE,GAAG,eAAe,EAAE,CAAA;IAC1C,MAAM,EAAE,IAAI,EAAE,GAAG,cAAc,EAAE,CAAA;IACjC,MAAM,EAAE,kBAAkB,EAAE,GAAG,yBAAyB,EAAE,CAAA;IAE1D,MAAM,MAAM,GAA2B,OAAO,CAAC,GAAG,EAAE;QAClD,OAAO;YACL,MAAM,EAAE,IAAI,CAAC,gBAAyB;YACtC,iBAAiB,EAAE,kBAAkB;YACrC,GAAG,YAAY;SAChB,CAAA;IACH,CAAC,EAAE,CAAC,IAAI,CAAC,gBAAgB,EAAE,kBAAkB,EAAE,YAAY,CAAC,CAAC,CAAA;IAE7D,OAAO,CACL,KAAC,wBAAwB,IAAC,MAAM,EAAE,MAAM,YACrC,QAAQ,GACgB,CAC5B,CAAA;AACH,CAAC,CAAA"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { ChainType } from '@lifi/sdk';
|
|
2
|
+
interface ExternalWalletProvider {
|
|
3
|
+
useExternalWalletProvidersOnly: boolean;
|
|
4
|
+
externalChainTypes: ChainType[];
|
|
5
|
+
internalChainTypes: ChainType[];
|
|
6
|
+
}
|
|
7
|
+
export declare function useExternalWalletProvider(): ExternalWalletProvider;
|
|
8
|
+
export {};
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import { ChainType } from '@lifi/sdk';
|
|
2
|
+
import { useContext, useMemo } from 'react';
|
|
3
|
+
import { useWidgetConfig } from '../WidgetProvider/WidgetProvider.js';
|
|
4
|
+
import { EVMExternalContext } from './EVMExternalContext.js';
|
|
5
|
+
import { SVMExternalContext } from './SVMExternalContext.js';
|
|
6
|
+
import { UTXOExternalContext } from './UTXOExternalContext.js';
|
|
7
|
+
const internalChainTypes = [ChainType.EVM, ChainType.SVM, ChainType.UTXO];
|
|
8
|
+
export function useExternalWalletProvider() {
|
|
9
|
+
const { walletConfig } = useWidgetConfig();
|
|
10
|
+
const hasExternalEVMContext = useContext(EVMExternalContext);
|
|
11
|
+
const hasExternalSVMContext = useContext(SVMExternalContext);
|
|
12
|
+
const hasExternalUTXOContext = useContext(UTXOExternalContext);
|
|
13
|
+
const data = useMemo(() => {
|
|
14
|
+
const providers = [];
|
|
15
|
+
if (hasExternalEVMContext) {
|
|
16
|
+
providers.push(ChainType.EVM);
|
|
17
|
+
}
|
|
18
|
+
if (hasExternalSVMContext) {
|
|
19
|
+
providers.push(ChainType.SVM);
|
|
20
|
+
}
|
|
21
|
+
if (hasExternalUTXOContext) {
|
|
22
|
+
providers.push(ChainType.UTXO);
|
|
23
|
+
}
|
|
24
|
+
const hasExternalProvider = hasExternalEVMContext || hasExternalSVMContext || hasExternalUTXOContext;
|
|
25
|
+
const useExternalWalletProvidersOnly = hasExternalProvider && !walletConfig?.usePartialWalletManagement;
|
|
26
|
+
return {
|
|
27
|
+
useExternalWalletProvidersOnly,
|
|
28
|
+
externalChainTypes: providers,
|
|
29
|
+
internalChainTypes: internalChainTypes.filter((chainType) => !providers.includes(chainType)),
|
|
30
|
+
};
|
|
31
|
+
}, [
|
|
32
|
+
hasExternalEVMContext,
|
|
33
|
+
hasExternalSVMContext,
|
|
34
|
+
hasExternalUTXOContext,
|
|
35
|
+
walletConfig?.usePartialWalletManagement,
|
|
36
|
+
]);
|
|
37
|
+
return data;
|
|
38
|
+
}
|
|
39
|
+
//# sourceMappingURL=useExternalWalletProvider.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useExternalWalletProvider.js","sourceRoot":"","sources":["../../../../src/providers/WalletProvider/useExternalWalletProvider.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAA;AACrC,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,OAAO,CAAA;AAC3C,OAAO,EAAE,eAAe,EAAE,MAAM,qCAAqC,CAAA;AACrE,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAA;AAC5D,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAA;AAC5D,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAA;AAQ9D,MAAM,kBAAkB,GAAG,CAAC,SAAS,CAAC,GAAG,EAAE,SAAS,CAAC,GAAG,EAAE,SAAS,CAAC,IAAI,CAAC,CAAA;AAEzE,MAAM,UAAU,yBAAyB;IACvC,MAAM,EAAE,YAAY,EAAE,GAAG,eAAe,EAAE,CAAA;IAC1C,MAAM,qBAAqB,GAAG,UAAU,CAAC,kBAAkB,CAAC,CAAA;IAC5D,MAAM,qBAAqB,GAAG,UAAU,CAAC,kBAAkB,CAAC,CAAA;IAC5D,MAAM,sBAAsB,GAAG,UAAU,CAAC,mBAAmB,CAAC,CAAA;IAE9D,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,EAAE;QACxB,MAAM,SAAS,GAAgB,EAAE,CAAA;QACjC,IAAI,qBAAqB,EAAE,CAAC;YAC1B,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAA;QAC/B,CAAC;QACD,IAAI,qBAAqB,EAAE,CAAC;YAC1B,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAA;QAC/B,CAAC;QACD,IAAI,sBAAsB,EAAE,CAAC;YAC3B,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAA;QAChC,CAAC;QACD,MAAM,mBAAmB,GACvB,qBAAqB,IAAI,qBAAqB,IAAI,sBAAsB,CAAA;QAE1E,MAAM,8BAA8B,GAClC,mBAAmB,IAAI,CAAC,YAAY,EAAE,0BAA0B,CAAA;QAClE,OAAO;YACL,8BAA8B;YAC9B,kBAAkB,EAAE,SAAS;YAC7B,kBAAkB,EAAE,kBAAkB,CAAC,MAAM,CAC3C,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC,SAAS,CAAC,QAAQ,CAAC,SAAS,CAAC,CAC9C;SACF,CAAA;IACH,CAAC,EAAE;QACD,qBAAqB;QACrB,qBAAqB;QACrB,sBAAsB;QACtB,YAAY,EAAE,0BAA0B;KACzC,CAAC,CAAA;IAEF,OAAO,IAAI,CAAA;AACb,CAAC"}
|
|
@@ -1,16 +1,18 @@
|
|
|
1
1
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
2
|
import { createContext, useContext, useEffect, useRef } from 'react';
|
|
3
3
|
import { useChains } from '../../hooks/useChains.js';
|
|
4
|
+
import { useExternalWalletProvider } from '../../providers/WalletProvider/useExternalWalletProvider.js';
|
|
4
5
|
import { useWidgetConfig } from '../../providers/WidgetProvider/WidgetProvider.js';
|
|
5
6
|
import { isItemAllowed } from '../../utils/item.js';
|
|
6
7
|
import { useFieldActions } from '../form/useFieldActions.js';
|
|
7
8
|
import { createChainOrderStore } from './createChainOrderStore.js';
|
|
8
9
|
export const ChainOrderStoreContext = createContext(null);
|
|
9
10
|
export function ChainOrderStoreProvider({ children, ...props }) {
|
|
10
|
-
const { chains:
|
|
11
|
+
const { chains: chainsConfig } = useWidgetConfig();
|
|
11
12
|
const storeRef = useRef();
|
|
12
13
|
const { chains } = useChains();
|
|
13
14
|
const { setFieldValue, getFieldValues } = useFieldActions();
|
|
15
|
+
const { externalChainTypes, useExternalWalletProvidersOnly } = useExternalWalletProvider();
|
|
14
16
|
if (!storeRef.current) {
|
|
15
17
|
storeRef.current = createChainOrderStore(props);
|
|
16
18
|
}
|
|
@@ -18,9 +20,21 @@ export function ChainOrderStoreProvider({ children, ...props }) {
|
|
|
18
20
|
if (chains) {
|
|
19
21
|
;
|
|
20
22
|
['from', 'to'].forEach((key) => {
|
|
21
|
-
const
|
|
22
|
-
|
|
23
|
-
|
|
23
|
+
const configChainIds = chainsConfig?.[key];
|
|
24
|
+
const isFromKey = key === 'from';
|
|
25
|
+
const filteredChains = chains.filter((chain) => {
|
|
26
|
+
const passesChainsConfigFilter = configChainIds
|
|
27
|
+
? isItemAllowed(chain.id, configChainIds)
|
|
28
|
+
: true;
|
|
29
|
+
// If the integrator uses external wallet management and has not opted in for partial wallet management,
|
|
30
|
+
// restrict the displayed chains to those compatible with external wallet management.
|
|
31
|
+
// This ensures users only see chains for which they can sign transactions.
|
|
32
|
+
const passesWalletConfigFilter = isFromKey
|
|
33
|
+
? !useExternalWalletProvidersOnly ||
|
|
34
|
+
externalChainTypes.includes(chain.chainType)
|
|
35
|
+
: true;
|
|
36
|
+
return passesChainsConfigFilter && passesWalletConfigFilter;
|
|
37
|
+
});
|
|
24
38
|
const chainOrder = storeRef.current?.getState().initializeChains(filteredChains.map((chain) => chain.id), key);
|
|
25
39
|
if (chainOrder) {
|
|
26
40
|
const [chainValue] = getFieldValues(`${key}Chain`);
|
|
@@ -30,7 +44,14 @@ export function ChainOrderStoreProvider({ children, ...props }) {
|
|
|
30
44
|
}
|
|
31
45
|
});
|
|
32
46
|
}
|
|
33
|
-
}, [
|
|
47
|
+
}, [
|
|
48
|
+
chains,
|
|
49
|
+
chainsConfig,
|
|
50
|
+
externalChainTypes,
|
|
51
|
+
getFieldValues,
|
|
52
|
+
setFieldValue,
|
|
53
|
+
useExternalWalletProvidersOnly,
|
|
54
|
+
]);
|
|
34
55
|
return (_jsx(ChainOrderStoreContext.Provider, { value: storeRef.current, children: children }));
|
|
35
56
|
}
|
|
36
57
|
export function useChainOrderStoreContext() {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ChainOrderStore.js","sourceRoot":"","sources":["../../../../src/stores/chains/ChainOrderStore.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,OAAO,CAAA;AAGpE,OAAO,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAA;AACpD,OAAO,EAAE,eAAe,EAAE,MAAM,kDAAkD,CAAA;AAClF,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAA;AAEnD,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAA;AAE5D,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAA;AAOlE,MAAM,CAAC,MAAM,sBAAsB,GAAG,aAAa,CACjD,IAAI,CACL,CAAA;AAED,MAAM,UAAU,uBAAuB,CAAC,EACtC,QAAQ,EACR,GAAG,KAAK,EACkB;IAC1B,MAAM,EAAE,MAAM,EAAE,YAAY,EAAE,GAAG,eAAe,EAAE,CAAA;IAClD,MAAM,QAAQ,GAAG,MAAM,EAAmB,CAAA;IAC1C,MAAM,EAAE,MAAM,EAAE,GAAG,SAAS,EAAE,CAAA;IAC9B,MAAM,EAAE,aAAa,EAAE,cAAc,EAAE,GAAG,eAAe,EAAE,CAAA;
|
|
1
|
+
{"version":3,"file":"ChainOrderStore.js","sourceRoot":"","sources":["../../../../src/stores/chains/ChainOrderStore.tsx"],"names":[],"mappings":"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"}
|
|
@@ -60,6 +60,15 @@ export interface WidgetWalletConfig {
|
|
|
60
60
|
walletConnect?: WalletConnectParameters;
|
|
61
61
|
coinbase?: CoinbaseWalletParameters;
|
|
62
62
|
metaMask?: MetaMaskParameters;
|
|
63
|
+
/**
|
|
64
|
+
* Determines whether the widget should provide partial wallet management functionality.
|
|
65
|
+
*
|
|
66
|
+
* In partial mode, external wallet management will be used for "opt-out" providers,
|
|
67
|
+
* while the internal management is applied for any remaining providers that do not opt out.
|
|
68
|
+
* This allows a flexible balance between the integrator’s custom wallet menu and the widget’s native wallet menu.
|
|
69
|
+
* @default false
|
|
70
|
+
*/
|
|
71
|
+
usePartialWalletManagement?: boolean;
|
|
63
72
|
}
|
|
64
73
|
export interface WidgetSDKConfig extends Omit<SDKConfig, 'apiKey' | 'disableVersionCheck' | 'integrator' | 'routeOptions' | 'widgetVersion'> {
|
|
65
74
|
routeOptions?: Omit<RouteOptions, 'bridges' | 'exchanges'>;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@lifi/widget",
|
|
3
|
-
"version": "3.
|
|
3
|
+
"version": "3.10.0",
|
|
4
4
|
"description": "LI.FI Widget for cross-chain bridging and swapping. It will drive your multi-chain strategy and attract new users from everywhere.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./dist/esm/index.js",
|
|
@@ -56,7 +56,7 @@
|
|
|
56
56
|
"viem": "^2.21.35",
|
|
57
57
|
"wagmi": "^2.12.25",
|
|
58
58
|
"zustand": "^4.5.5",
|
|
59
|
-
"@lifi/wallet-management": "^3.4.
|
|
59
|
+
"@lifi/wallet-management": "^3.4.1"
|
|
60
60
|
},
|
|
61
61
|
"peerDependencies": {
|
|
62
62
|
"react": ">=18",
|
|
@@ -2,7 +2,7 @@ import type { EVMChain } from '@lifi/sdk'
|
|
|
2
2
|
import { useChains } from '../../hooks/useChains.js'
|
|
3
3
|
import { useSwapOnly } from '../../hooks/useSwapOnly.js'
|
|
4
4
|
import { useToAddressReset } from '../../hooks/useToAddressReset.js'
|
|
5
|
-
import {
|
|
5
|
+
import { useExternalWalletProvider } from '../../providers/WalletProvider/useExternalWalletProvider.js'
|
|
6
6
|
import { useWidgetConfig } from '../../providers/WidgetProvider/WidgetProvider.js'
|
|
7
7
|
import { useChainOrder } from '../../stores/chains/useChainOrder.js'
|
|
8
8
|
import type { FormType } from '../../stores/form/types.js'
|
|
@@ -16,11 +16,16 @@ export const useChainSelect = (formType: FormType) => {
|
|
|
16
16
|
const chainKey = FormKeyHelper.getChainKey(formType)
|
|
17
17
|
const { onChange } = useFieldController({ name: chainKey })
|
|
18
18
|
const { setFieldValue, getFieldValues } = useFieldActions()
|
|
19
|
-
const {
|
|
20
|
-
|
|
19
|
+
const { useExternalWalletProvidersOnly, externalChainTypes } =
|
|
20
|
+
useExternalWalletProvider()
|
|
21
21
|
const { chains, isLoading, getChainById } = useChains(
|
|
22
22
|
formType,
|
|
23
|
-
|
|
23
|
+
// If the integrator uses external wallet management and has not opted in for partial wallet management,
|
|
24
|
+
// restrict the displayed chains to those compatible with external wallet management.
|
|
25
|
+
// This ensures users only see chains for which they can sign transactions.
|
|
26
|
+
formType === 'from' && useExternalWalletProvidersOnly
|
|
27
|
+
? externalChainTypes
|
|
28
|
+
: undefined
|
|
24
29
|
)
|
|
25
30
|
|
|
26
31
|
const [chainOrder, setChainOrder] = useChainOrder(formType)
|
|
@@ -2,7 +2,7 @@ import { CloseRounded } from '@mui/icons-material'
|
|
|
2
2
|
import { IconButton, Tooltip } from '@mui/material'
|
|
3
3
|
import { useTranslation } from 'react-i18next'
|
|
4
4
|
import { useDrawer } from '../../AppDrawerContext.js'
|
|
5
|
-
import {
|
|
5
|
+
import { useExternalWalletProvider } from '../../providers/WalletProvider/useExternalWalletProvider.js'
|
|
6
6
|
import { useWidgetConfig } from '../../providers/WidgetProvider/WidgetProvider.js'
|
|
7
7
|
|
|
8
8
|
interface CloseDrawerButtonProps {
|
|
@@ -13,10 +13,11 @@ export const CloseDrawerButton = ({ header }: CloseDrawerButtonProps) => {
|
|
|
13
13
|
const { t } = useTranslation()
|
|
14
14
|
const { subvariant } = useWidgetConfig()
|
|
15
15
|
const { closeDrawer } = useDrawer()
|
|
16
|
-
const {
|
|
16
|
+
const { useExternalWalletProvidersOnly } = useExternalWalletProvider()
|
|
17
17
|
|
|
18
18
|
const showInNavigationHeader =
|
|
19
|
-
header === 'navigation' &&
|
|
19
|
+
header === 'navigation' &&
|
|
20
|
+
(useExternalWalletProvidersOnly || subvariant === 'split')
|
|
20
21
|
|
|
21
22
|
const showInWalletHeader = header === 'wallet' && subvariant !== 'split'
|
|
22
23
|
|
|
@@ -9,7 +9,7 @@ import { Avatar, Badge } from '@mui/material'
|
|
|
9
9
|
import { useState } from 'react'
|
|
10
10
|
import { useTranslation } from 'react-i18next'
|
|
11
11
|
import { useChain } from '../../hooks/useChain.js'
|
|
12
|
-
import {
|
|
12
|
+
import { useExternalWalletProvider } from '../../providers/WalletProvider/useExternalWalletProvider.js'
|
|
13
13
|
import { useWidgetConfig } from '../../providers/WidgetProvider/WidgetProvider.js'
|
|
14
14
|
import { useFieldValues } from '../../stores/form/useFieldValues.js'
|
|
15
15
|
import { HiddenUI } from '../../types/widget.js'
|
|
@@ -25,12 +25,23 @@ import {
|
|
|
25
25
|
import { WalletMenu } from './WalletMenu.js'
|
|
26
26
|
import { WalletMenuContainer } from './WalletMenu.style.js'
|
|
27
27
|
|
|
28
|
-
|
|
28
|
+
const useInternalWalletManagement = () => {
|
|
29
29
|
const { subvariant, hiddenUI } = useWidgetConfig()
|
|
30
|
-
const {
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
30
|
+
const { useExternalWalletProvidersOnly } = useExternalWalletProvider()
|
|
31
|
+
|
|
32
|
+
const isSplitVariant = subvariant === 'split'
|
|
33
|
+
const isWalletMenuHidden = hiddenUI?.includes(HiddenUI.WalletMenu)
|
|
34
|
+
|
|
35
|
+
const shouldShowWalletMenu =
|
|
36
|
+
!useExternalWalletProvidersOnly && !isSplitVariant && !isWalletMenuHidden
|
|
37
|
+
|
|
38
|
+
return shouldShowWalletMenu
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
export const WalletHeader: React.FC = () => {
|
|
42
|
+
const shouldShowWalletMenu = useInternalWalletManagement()
|
|
43
|
+
|
|
44
|
+
return shouldShowWalletMenu ? (
|
|
34
45
|
<HeaderAppBar elevation={0} sx={{ justifyContent: 'flex-end' }}>
|
|
35
46
|
<WalletMenuButton />
|
|
36
47
|
</HeaderAppBar>
|
|
@@ -38,11 +49,8 @@ export const WalletHeader: React.FC = () => {
|
|
|
38
49
|
}
|
|
39
50
|
|
|
40
51
|
export const SplitWalletMenuButton: React.FC = () => {
|
|
41
|
-
const
|
|
42
|
-
|
|
43
|
-
return !hasExternalProvider && !hiddenUI?.includes(HiddenUI.WalletMenu) ? (
|
|
44
|
-
<WalletMenuButton />
|
|
45
|
-
) : null
|
|
52
|
+
const shouldShowWalletMenu = useInternalWalletManagement()
|
|
53
|
+
return shouldShowWalletMenu ? <WalletMenuButton /> : null
|
|
46
54
|
}
|
|
47
55
|
|
|
48
56
|
export const WalletMenuButton: React.FC = () => {
|
|
@@ -83,7 +91,7 @@ const ConnectButton = () => {
|
|
|
83
91
|
const { walletConfig, subvariant, variant } = useWidgetConfig()
|
|
84
92
|
const { openWalletMenu } = useWalletMenu()
|
|
85
93
|
const connect = async () => {
|
|
86
|
-
if (walletConfig?.onConnect) {
|
|
94
|
+
if (!walletConfig?.usePartialWalletManagement && walletConfig?.onConnect) {
|
|
87
95
|
walletConfig.onConnect()
|
|
88
96
|
return
|
|
89
97
|
}
|