diff --git a/src/accordion/Accordion.tsx b/src/accordion/Accordion.tsx
index 8a1eb39a..54dc31de 100644
--- a/src/accordion/Accordion.tsx
+++ b/src/accordion/Accordion.tsx
@@ -11,7 +11,8 @@ export interface AccordionProps {
const accordionItemCSS = css`
cursor: pointer;
- padding: var(--accordion-padding-top) var(--accordion-padding-side);
+ height: 40px;
+ padding: 0 var(--accordion-padding-side);
display: block;
width: 100%;
display: flex;
@@ -48,12 +49,16 @@ export function Accordion({ children }: AccordionProps) {
role="region"
css={css`
--accordion-animation-duration: ${theme.animation.global.duration}ms;
-
&.ac-accordion--default {
--accordion-padding-top: var(--ac-global-dimension-static-size-100);
--accordion-padding-side: var(--ac-global-dimension-static-size-200);
--accordion-font-size: ${theme.typography.sizes.medium.fontSize}px;
}
+ .ac-accordion-item:not(:last-of-type) {
+ .ac-accordion-itemContent {
+ border-bottom: 1px solid var(--ac-global-border-color-dark);
+ }
+ }
`}
>
{children}
@@ -77,6 +82,10 @@ export interface AccordionItemProps {
* Callback function for when the collapsed state changes
*/
onChange?: (isOpen: boolean) => void;
+ /**
+ * An extra element to show on the right hand side
+ */
+ extra?: ReactNode;
}
export function AccordionItem(props: AccordionItemProps) {
@@ -87,6 +96,7 @@ export function AccordionItem(props: AccordionItemProps) {
defaultIsOpen = true,
onChange,
children,
+ extra,
} = props;
const [isOpen, setIsOpen] = useState(defaultIsOpen);
const contentId = `${id}-content`,
@@ -137,15 +147,25 @@ export function AccordionItem(props: AccordionItemProps) {
aria-expanded={isOpen}
>
{titleEl}
-
+