From b558c11251bce58691351d4c4bb5b800fe64ab60 Mon Sep 17 00:00:00 2001 From: John Kapantzakis Date: Wed, 4 Feb 2026 17:17:32 +0200 Subject: [PATCH 1/2] Add storybook case for ButtonGroup --- src/components/button/button.stories.js | 24 +-------- src/components/button/buttonGroup.js | 42 ++++++++------- src/components/button/buttonGroup.stories.js | 55 ++++++++++++++++++++ 3 files changed, 80 insertions(+), 41 deletions(-) create mode 100644 src/components/button/buttonGroup.stories.js diff --git a/src/components/button/button.stories.js b/src/components/button/button.stories.js index 5a8c9a327..db954ea48 100644 --- a/src/components/button/button.stories.js +++ b/src/components/button/button.stories.js @@ -1,5 +1,5 @@ -import React, { useState } from "react" -import { Button, IconButton, ButtonGroup } from "." +import React from "react" +import { Button, IconButton } from "." import { iconsList } from "@/components/icon" const icons = Object.keys(iconsList) @@ -17,26 +17,6 @@ export const BaseIconButton = args => ( /> ) -const radioButtonItems = [ - { label: "One", value: 1 }, - { label: "Two", value: 2 }, - { label: "Three", value: 3 }, -] - -export const RadioButtonGroup = args => { - const [checked, setChecked] = useState(1) - const onChange = value => setChecked(value) - - return ( - ({ ...args, ...item }))} - checked={checked} - buttonProps={args} - onChange={onChange} - /> - ) -} - export default { component: Button, tags: ["autodocs"], diff --git a/src/components/button/buttonGroup.js b/src/components/button/buttonGroup.js index 8736cb62f..bf60450c5 100644 --- a/src/components/button/buttonGroup.js +++ b/src/components/button/buttonGroup.js @@ -1,4 +1,4 @@ -import React, { Children, isValidElement, cloneElement } from "react" +import React, { Children, isValidElement, cloneElement, useCallback } from "react" import Flex from "@/components/templates/flex" import { Button } from "./button" @@ -30,24 +30,28 @@ const Content = ({ children }) => { ) } -const RadioButtons = ({ items, checked, buttonProps = {}, onChange }) => ( - <> - {items.map(({ label, value, title }, index) => { - const buttonGroupProps = getButtonGroupProps(index, items.length) - return ( -