@0xsplits/splits-kit
Version:
UI Components for working with 0xSplits contracts
17 lines • 1.19 kB
JavaScript
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
import { useState } from 'react';
import { copyToClipboard } from '../../utils/clipboard';
import { shortenAddress, shortenENS } from '../../utils/address';
import SplitsAvatar from '../util/SplitsAvatar';
var AddressDisplay = function (_a) {
var address = _a.address, ens = _a.ens;
var _b = useState(false), showFullAddress = _b[0], setShowFullAddress = _b[1];
var displayName = showFullAddress
? address
: ens
? shortenENS(ens)
: shortenAddress(address);
return (_jsx("div", { onMouseEnter: function () { return setShowFullAddress(true); }, onMouseLeave: function () { return setShowFullAddress(false); }, onClick: function () { return copyToClipboard(address); }, className: "cursor-pointer overflow-hidden", children: _jsxs("div", { className: 'flex items-center space-x-2 truncate active:bg-yellow-200 dark:active:text-black', children: [_jsx(SplitsAvatar, { address: address, size: 20, className: "flex-shrink-0" }), _jsx("div", { className: "truncate", children: displayName })] }) }));
};
export default AddressDisplay;
//# sourceMappingURL=AddressDisplay.js.map