+
{name}
+
+ {variants.length ? (
+
+ ) : null}
+ {sizes.length ? (
+
+ ) : null}
+ {radiuses.length ? (
+
+ ) : null}
+
+
+ {Children.map(children, (child) => cloneElement(child, {radius, size, variant}))}
+
+
+ );
+}
+
+const defaultRadiuses: {label: string; value: NextUIRadius}[] = [
+ {label: "None", value: "none"},
+ {label: "Small", value: "sm"},
+ {label: "Medium", value: "md"},
+ {label: "Large", value: "lg"},
+ {label: "Full", value: "full"},
+];
+
+const defaultVariants: {label: string; value: NextUIVariant}[] = [
+ {label: "Dot", value: "dot"},
+ {label: "Solid", value: "solid"},
+ {label: "Faded", value: "faded"},
+ {label: "Bordered", value: "bordered"},
+ {label: "Light", value: "light"},
+ {label: "Flat", value: "flat"},
+ {label: "Ghost", value: "ghost"},
+ {label: "Shadow", value: "shadow"},
+ {label: "Underlined", value: "underlined"},
+];
+
+const defaultSizes: {label: string; value: NextUISize}[] = [
+ {label: "Small", value: "sm"},
+ {label: "Medium", value: "md"},
+ {label: "Large", value: "lg"},
+];
diff --git a/apps/docs/components/themes/components/showcase/avatar.tsx b/apps/docs/components/themes/components/showcase/avatar.tsx
new file mode 100644
index 0000000000..c9d9c043b4
--- /dev/null
+++ b/apps/docs/components/themes/components/showcase/avatar.tsx
@@ -0,0 +1,52 @@
+import {Avatar as NextUIAvatar} from "@nextui-org/react";
+
+import {NextUIRadius, NextUISize} from "../../types";
+import {ShowcaseComponent} from "../showcase-component";
+
+export function Avatar() {
+ return (
+