@@ -190,7 +190,7 @@ exports[`AccordionItem renders correctly with other blocks inside 2 1`] = `
diff --git a/src/AccordionItemHeading/AccordionItemHeading.spec.tsx b/src/AccordionItemHeading/AccordionItemHeading.spec.tsx
index c0812585..3560bddd 100644
--- a/src/AccordionItemHeading/AccordionItemHeading.spec.tsx
+++ b/src/AccordionItemHeading/AccordionItemHeading.spec.tsx
@@ -70,20 +70,19 @@ describe('AccordionItemHeading', () => {
expect(wrapper.find('div').hasClass(className)).toEqual(true);
});
- it('renders with different hideBodyClassName', () => {
- const hideBodyClassName = 'hideBodyClassName';
- const wrapper = mountItem(
-
,
- );
- expect(wrapper.find('div').hasClass(hideBodyClassName)).toEqual(true);
- });
+ it('renders with different expandedClassName when item is expanded', () => {
+ const expandedClassName = 'expandedClassName';
- it("doesn't present hideBodyClassName when collapsed", () => {
- const hideBodyClassName = 'hideBodyClassName';
- const wrapper = mountItem(
-
,
+ const wrapper = mount(
+
+
+
+
+ ,
);
- expect(wrapper.find('div').hasClass(hideBodyClassName)).toEqual(true);
+ expect(wrapper.find('div').hasClass(expandedClassName)).toEqual(true);
});
it('toggles state when clicked', async () => {
diff --git a/src/AccordionItemHeading/AccordionItemHeading.tsx b/src/AccordionItemHeading/AccordionItemHeading.tsx
index 57a705d9..84e41a9b 100644
--- a/src/AccordionItemHeading/AccordionItemHeading.tsx
+++ b/src/AccordionItemHeading/AccordionItemHeading.tsx
@@ -3,7 +3,7 @@ import * as React from 'react';
import { UUID } from '../ItemContainer/ItemContainer';
type AccordionItemHeadingProps = React.HTMLAttributes
& {
- hideBodyClassName: string;
+ expandedClassName: string;
expanded: boolean;
uuid: UUID;
disabled: boolean;
@@ -32,7 +32,7 @@ export default class AccordionItemHeading extends React.Component<
render(): JSX.Element {
const {
className,
- hideBodyClassName,
+ expandedClassName,
setExpanded,
expanded,
uuid,
@@ -42,8 +42,9 @@ export default class AccordionItemHeading extends React.Component<
const id = `accordion__heading-${uuid}`;
const ariaControls = `accordion__panel-${uuid}`;
+
const headingClassName = classnames(className, {
- [hideBodyClassName]: hideBodyClassName && !expanded,
+ [expandedClassName]: expandedClassName && expanded,
});
return (
diff --git a/src/AccordionItemHeading/AccordionItemHeading.wrapper.tsx b/src/AccordionItemHeading/AccordionItemHeading.wrapper.tsx
index 31f481d1..646f2ecb 100644
--- a/src/AccordionItemHeading/AccordionItemHeading.wrapper.tsx
+++ b/src/AccordionItemHeading/AccordionItemHeading.wrapper.tsx
@@ -12,7 +12,7 @@ import {
import { default as AccordionItemHeading } from './AccordionItemHeading';
type AccordionItemHeadingWrapperProps = React.HTMLAttributes & {
- hideBodyClassName: string;
+ expandedClassName: string;
};
type AccordionItemHeadingWrapperState = {};
@@ -32,7 +32,7 @@ export default class AccordionItemHeadingWrapper extends React.Component<
static defaultProps: AccordionItemHeadingWrapperProps = {
className: 'accordion__heading',
- hideBodyClassName: '',
+ expandedClassName: '',
};
render(): JSX.Element {
diff --git a/src/AccordionItemPanel/AccordionItemPanel.spec.tsx b/src/AccordionItemPanel/AccordionItemPanel.spec.tsx
index 52110b05..ccf8b1f4 100644
--- a/src/AccordionItemPanel/AccordionItemPanel.spec.tsx
+++ b/src/AccordionItemPanel/AccordionItemPanel.spec.tsx
@@ -11,7 +11,7 @@ describe('AccordionItemPanel', () => {
function mountItem(children: React.ReactNode): ReactWrapper {
const item: Item = {
uuid: 0,
- expanded: false,
+ expanded: true,
};
return mount(
@@ -36,12 +36,12 @@ describe('AccordionItemPanel', () => {
expect(wrapper.find('div').hasClass(className)).toEqual(true);
});
- it('renders correctly with different hideBodyClassName', () => {
- const hideBodyClassName = 'hideBodyClassName';
+ it('renders correctly with different expandedClassName when item is expanded', () => {
+ const expandedClassName = 'expandedClassName';
const wrapper = mountItem(
- ,
+ ,
);
- expect(wrapper.find('div').hasClass(hideBodyClassName)).toEqual(true);
+ expect(wrapper.find('div').hasClass(expandedClassName)).toEqual(true);
});
it('respects arbitrary user-defined props', () => {
diff --git a/src/AccordionItemPanel/AccordionItemPanel.tsx b/src/AccordionItemPanel/AccordionItemPanel.tsx
index 1ca6d2fd..b0aa7101 100644
--- a/src/AccordionItemPanel/AccordionItemPanel.tsx
+++ b/src/AccordionItemPanel/AccordionItemPanel.tsx
@@ -3,7 +3,7 @@ import * as React from 'react';
import { UUID } from '../ItemContainer/ItemContainer';
type AccordionItemPanelProps = React.HTMLAttributes & {
- hideBodyClassName: string;
+ expandedClassName: string;
uuid: UUID;
expanded: boolean;
allowMultipleExpanded: boolean;
@@ -12,7 +12,7 @@ type AccordionItemPanelProps = React.HTMLAttributes & {
const AccordionItemPanel = (props: AccordionItemPanelProps): JSX.Element => {
const {
className,
- hideBodyClassName,
+ expandedClassName,
uuid,
expanded,
allowMultipleExpanded,
@@ -26,7 +26,7 @@ const AccordionItemPanel = (props: AccordionItemPanelProps): JSX.Element => {
& {
- hideBodyClassName: string;
+ expandedClassName: string;
};
type AccordionItemPanelWrapperState = {};
@@ -35,7 +35,7 @@ export default class AccordionItemPanelWrapper extends React.Component<
static defaultProps: AccordionItemPanelWrapperProps = {
className: 'accordion__panel',
- hideBodyClassName: 'accordion__panel--hidden',
+ expandedClassName: 'accordion__panel--expanded',
};
render(): JSX.Element {
diff --git a/src/AccordionItemPanel/__snapshots__/AccordionItemPanel.spec.tsx.snap b/src/AccordionItemPanel/__snapshots__/AccordionItemPanel.spec.tsx.snap
index 7166e2aa..80eec0f9 100644
--- a/src/AccordionItemPanel/__snapshots__/AccordionItemPanel.spec.tsx.snap
+++ b/src/AccordionItemPanel/__snapshots__/AccordionItemPanel.spec.tsx.snap
@@ -4,7 +4,7 @@ exports[`AccordionItemPanel renders correctly with min params 1`] = `
diff --git a/src/css/fancy-example.css b/src/css/fancy-example.css
index 570c9955..6cf872d6 100644
--- a/src/css/fancy-example.css
+++ b/src/css/fancy-example.css
@@ -40,13 +40,13 @@
.accordion__panel {
padding: 20px;
- display: block;
+ display: none;
+ opacity: 0;
animation: fadein 0.35s ease-in;
}
-.accordion__panel--hidden {
- display: none;
- opacity: 0;
+.accordion__panel--expanded {
+ display: block;
animation: fadein 0.35s ease-in;
}
diff --git a/src/css/minimal-example.css b/src/css/minimal-example.css
index f88d4f91..3acfd543 100644
--- a/src/css/minimal-example.css
+++ b/src/css/minimal-example.css
@@ -1,7 +1,7 @@
.accordion__panel {
- display: block;
-}
-
-.accordion__panel--hidden {
display: none;
}
+
+.accordion__panel--expanded {
+ display: block;
+}
\ No newline at end of file