From 0e0d6f7ec44710a96461259f14db886a68097f94 Mon Sep 17 00:00:00 2001 From: Joseph Young Date: Sun, 17 Mar 2024 18:30:57 -0500 Subject: [PATCH] Add default style. Colors TBD. Update theme object --- src/components/Accordion/Accordion.jsx | 38 +++++++++++++++---- .../Accordion/Accordion.stories.jsx | 5 +-- .../components/Accordion/Accordion.theme.js | 2 +- .../Accordion/AccordionFilled.theme.js | 29 ++------------ .../Accordion/Drawer/AccordionDrawer.theme.js | 6 +-- .../Accordion/Drawer/DrawerFilled.theme.js | 38 +++++++++---------- 6 files changed, 57 insertions(+), 61 deletions(-) diff --git a/src/components/Accordion/Accordion.jsx b/src/components/Accordion/Accordion.jsx index 66538b2..0cf1044 100644 --- a/src/components/Accordion/Accordion.jsx +++ b/src/components/Accordion/Accordion.jsx @@ -70,7 +70,7 @@ export default function Accordion({ onChange = null, initialExpanded = [], accor ) } -export const Drawer = ({ ariaId, ariaControls, title, onClick = () => { }, onChange, expanded = false, icon = true, color, variant, className, children }) => { +export const Drawer = ({ ariaId, ariaControls, title, onClick = () => { }, onChange, expanded = false, icon = true, buttonProps, color, variant, className, children }) => { const handleClick = () => { if (onChange) { @@ -86,26 +86,48 @@ export const Drawer = ({ ariaId, ariaControls, title, onClick = () => { }, onCha const resolvedColor = color || themeColor || defaultOptions.color; const resolvedVariant = variant || defaultOptions.variant; + const initialContentClasses = mapObjectToString( + lookupOptions(initial, 'content', 'content'), + ); + const initialButtonClasses = mapObjectToString( + lookupOptions(initial, 'button', 'button'), + ) + const initialClasses = mapObjectToString(initial); - const variantClasses = mapObjectToString( - lookupOptions(variants, resolvedVariant, defaultOptions.variant)[resolvedColor] + + const containerVariant = mapObjectToString( + lookupOptions(variants, resolvedVariant, defaultOptions.variant)['content']['base'], + lookupOptions(variants, resolvedVariant, defaultOptions.variant)['content']['style'][resolvedColor], ); - const classes = twMerge( + const buttonVariant = mapObjectToString( + lookupOptions(variants, resolvedVariant, defaultOptions.variant)['button']['base'], + lookupOptions(variants, resolvedVariant, defaultOptions.variant)['button']['style'][resolvedColor], + ); + + const contentClasses = twMerge( ...initialClasses, - variantClasses, - className, + ...initialContentClasses, + ...containerVariant, + className + ); + + const buttonClasses = twMerge( + ...initialButtonClasses, + ...buttonVariant, + buttonProps?.className, ); return (