@sky-mavis/tanto-widget
Version:
Tanto Widget
61 lines (57 loc) • 1.99 kB
JavaScript
'use strict';
var jsxRuntime = require('@emotion/react/jsx-runtime');
var react = require('react');
var analytic = require('../../analytic.cjs');
var Box = require('../../components/box/Box.cjs');
var DashedDivider = require('../../components/dashed-divider/DashedDivider.cjs');
var Disclaimer = require('../../components/disclaimer/Disclaimer.cjs');
var GetWalletCTA = require('../../components/get-wallet-cta/GetWalletCTA.cjs');
var useWidgetConnect = require('../../contexts/widget-connect/useWidgetConnect.cjs');
var userAgent = require('../../utils/userAgent.cjs');
var walletDetection = require('../../utils/walletDetection.cjs');
var WalletGroup = require('./components/WalletGroup.cjs');
function WalletList() {
const {
wallets,
primaryWallets,
secondaryWallets
} = useWidgetConnect.useWidgetConnect();
react.useEffect(() => {
analytic.analytic.sendEvent('walletlist_view', {
wallets_available: wallets.map(({
connector,
name,
homepage,
id,
isInstalled
}) => ({
id,
name,
homepage,
isInstalled,
connector: {
id: connector?.id,
type: connector?.type,
name: connector?.name,
chainId: connector?.chainId
}
}))
});
}, []);
return jsxRuntime.jsxs(Box.Box, {
vertical: true,
gap: 20,
children: [jsxRuntime.jsx(WalletGroup.WalletGroup, {
wallets: primaryWallets
}), secondaryWallets.length > 0 && jsxRuntime.jsxs(Box.Box, {
vertical: true,
gap: 12,
children: [primaryWallets.length > 0 && jsxRuntime.jsx(DashedDivider.DashedDivider, {
text: "Other wallets"
}), jsxRuntime.jsx(WalletGroup.WalletGroup, {
wallets: secondaryWallets
})]
}), userAgent.isMobile() && !walletDetection.isRoninInAppBrowser() && jsxRuntime.jsx(GetWalletCTA.GetWalletCTA, {}), jsxRuntime.jsx(Disclaimer.Disclaimer, {})]
});
}
exports.WalletList = WalletList;