diff --git a/public/configs/exchanges.json b/public/configs/exchanges.json new file mode 100644 index 0000000..5a2a824 --- /dev/null +++ b/public/configs/exchanges.json @@ -0,0 +1,8 @@ +[ + { + "name": "coinbase", + "label": "Coinbase", + "icon": "/exchanges/coinbase.png", + "depositType": "noble" + } +] \ No newline at end of file diff --git a/public/exchanges/coinbase.png b/public/exchanges/coinbase.png new file mode 100644 index 0000000..081a89e Binary files /dev/null and b/public/exchanges/coinbase.png differ diff --git a/src/components/QrCode.tsx b/src/components/QrCode.tsx index d5bc6a6..fb79383 100644 --- a/src/components/QrCode.tsx +++ b/src/components/QrCode.tsx @@ -11,6 +11,7 @@ type ElementProps = { }; type StyleProps = { + className?: string; hasLogo?: boolean; size?: number; }; @@ -18,7 +19,7 @@ type StyleProps = { const DARK_LOGO_MARK_URL = '/logos/logo-mark-dark.svg'; const LIGHT_LOGO_MARK_URL = '/logos/logo-mark-light.svg'; -export const QrCode = ({ value, hasLogo, size = 300 }: ElementProps & StyleProps) => { +export const QrCode = ({ className, value, hasLogo, size = 300 }: ElementProps & StyleProps) => { const ref = useRef(null); const appTheme: AppTheme = useSelector(getAppTheme); @@ -74,7 +75,7 @@ export const QrCode = ({ value, hasLogo, size = 300 }: ElementProps & StyleProps } }, [appTheme, hasLogo]); - return ; + return ; }; const Styled: Record = {}; diff --git a/src/components/TimeoutButton.tsx b/src/components/TimeoutButton.tsx index df0a7f7..4e0c4e6 100644 --- a/src/components/TimeoutButton.tsx +++ b/src/components/TimeoutButton.tsx @@ -8,6 +8,7 @@ import { Button, type ButtonStateConfig, type ButtonProps } from '@/components/B type ElementProps = { timeoutInSeconds: number; + slotFinal?: ReactNode; } & ButtonProps; export type TimeoutButtonProps = ElementProps; @@ -15,6 +16,7 @@ export type TimeoutButtonProps = ElementProps; export const TimeoutButton = ({ children, timeoutInSeconds, + slotFinal, ...otherProps }: TimeoutButtonProps) => { const [timeoutDeadline] = useState(Date.now() + timeoutInSeconds * 1000); @@ -23,6 +25,8 @@ export const TimeoutButton = ({ const secondsLeft = Math.max(0, (timeoutDeadline - now) / 1000); + if (slotFinal && secondsLeft <= 0) return slotFinal; + return (