Du kannst nicht mehr als 25 Themen auswählen Themen müssen mit entweder einem Buchstaben oder einer Ziffer beginnen. Sie können Bindestriche („-“) enthalten und bis zu 35 Zeichen lang sein.

PrimaryButton.tsx 1.1KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  1. 'use client';
  2. import React from 'react';
  3. import { Button } from 'antd';
  4. import { useThemeToken } from '@/hooks/useThemeToken';
  5. import classNames from 'classnames';
  6. type PrimaryButtonProps = {
  7. onClick?: () => void;
  8. children: React.ReactNode;
  9. customStyle?: string;
  10. outline?: boolean;
  11. };
  12. const PrimaryButton: React.FC<PrimaryButtonProps> = ({
  13. onClick = () => { },
  14. children,
  15. customStyle = '',
  16. outline = false,
  17. }: PrimaryButtonProps) => {
  18. const token = useThemeToken();
  19. console.log(token.colorPrimary2);
  20. const baseClasses = 'mt-2 !rounded-full !px-6 !py-4';
  21. const filledClasses = '!border-0 !bg-[#602FD0] !text-[#fff] hover:!bg-[#271550]';
  22. const outlineClasses = '!border !bg-[#fff] !text-[#602FD0] hover:!bg-[#602FD0] hover:!text-[#fff]';
  23. return (
  24. <Button
  25. size="small"
  26. className={classNames(
  27. baseClasses,
  28. outline ? outlineClasses : filledClasses,
  29. customStyle
  30. )}
  31. onClick={onClick}
  32. >
  33. {children}
  34. </Button>
  35. );
  36. };
  37. export default PrimaryButton;