diff --git a/apps/dashboard/package.json b/apps/dashboard/package.json index 60720249de2..13f78ab6020 100644 --- a/apps/dashboard/package.json +++ b/apps/dashboard/package.json @@ -30,6 +30,7 @@ "@hookform/resolvers": "^3.9.1", "@marsidev/react-turnstile": "^1.0.2", "@n8tb1t/use-scroll-position": "^2.0.3", + "@radix-ui/react-accordion": "^1.2.1", "@radix-ui/react-alert-dialog": "^1.1.2", "@radix-ui/react-avatar": "^1.1.1", "@radix-ui/react-checkbox": "^1.1.2", diff --git a/apps/dashboard/src/@/components/blocks/FormFieldSetup.tsx b/apps/dashboard/src/@/components/blocks/FormFieldSetup.tsx index 1c704b098c2..3483026c579 100644 --- a/apps/dashboard/src/@/components/blocks/FormFieldSetup.tsx +++ b/apps/dashboard/src/@/components/blocks/FormFieldSetup.tsx @@ -9,6 +9,7 @@ export function FormFieldSetup(props: { children: React.ReactNode; tooltip?: React.ReactNode; isRequired: boolean; + helperText?: React.ReactNode; }) { return (
@@ -26,8 +27,13 @@ export function FormFieldSetup(props: { )}
{props.children} + + {props.helperText && ( +

{props.helperText}

+ )} + {props.errorMessage && ( -

+

{props.errorMessage}

)} diff --git a/apps/dashboard/src/@/components/ui/DatePickerWithRange.tsx b/apps/dashboard/src/@/components/ui/DatePickerWithRange.tsx index 75643301b2f..f75d6c895e1 100644 --- a/apps/dashboard/src/@/components/ui/DatePickerWithRange.tsx +++ b/apps/dashboard/src/@/components/ui/DatePickerWithRange.tsx @@ -69,14 +69,14 @@ export function DatePickerWithRange(props: {
{!isValid && ( -

+

Invalid date range

)} {props.header} -
+
, + React.ComponentPropsWithoutRef +>(({ className, ...props }, ref) => ( + +)); +AccordionItem.displayName = "AccordionItem"; + +const AccordionTrigger = React.forwardRef< + React.ElementRef, + React.ComponentPropsWithoutRef +>(({ className, children, ...props }, ref) => ( + + svg]:rotate-180", + className, + )} + {...props} + > + {children} + + + +)); +AccordionTrigger.displayName = AccordionPrimitive.Trigger.displayName; + +const AccordionContent = React.forwardRef< + React.ElementRef, + React.ComponentPropsWithoutRef +>(({ className, children, ...props }, ref) => ( + +
{children}
+
+)); + +AccordionContent.displayName = AccordionPrimitive.Content.displayName; + +export { Accordion, AccordionItem, AccordionTrigger, AccordionContent }; diff --git a/apps/dashboard/src/@3rdweb-sdk/react/components/connect-wallet/index.tsx b/apps/dashboard/src/@3rdweb-sdk/react/components/connect-wallet/index.tsx index 1ad97df9bdc..b1b3d4c418d 100644 --- a/apps/dashboard/src/@3rdweb-sdk/react/components/connect-wallet/index.tsx +++ b/apps/dashboard/src/@3rdweb-sdk/react/components/connect-wallet/index.tsx @@ -34,6 +34,7 @@ import { popularChains } from "../popularChains"; export const CustomConnectWallet = (props: { loginRequired?: boolean; connectButtonClassName?: string; + signInLinkButtonClassName?: string; detailsButtonClassName?: string; }) => { const thirdwebClient = useThirdwebClient(); @@ -134,7 +135,12 @@ export const CustomConnectWallet = (props: { if (!isLoggedIn && loginRequired) { return ( <> -