diff --git a/docs/pages/components/Card.mdx b/docs/pages/components/Card.mdx
deleted file mode 100644
index 660f843c8..000000000
--- a/docs/pages/components/Card.mdx
+++ /dev/null
@@ -1,61 +0,0 @@
----
-title: Card
-description: A common, versatile pattern used to display content composed of different elements, usually in a collection.
-source: https://github.com/dequelabs/cauldron/tree/develop/packages/react/src/components/Card/Card.tsx
-deprecated: true
----
-
-
- The `Card` component will be deprecated in the future and will eventually be replaced by [Panel](./Panel).
-
-
-import { Card, CardHeader, CardContent, CardFooter, Toast } from '@deque/cauldron-react'
-
-```js
-import {
- Card,
- CardHeader,
- CardContent,
- CardFooter
-} from '@deque/cauldron-react'
-```
-
-## Examples
-
-```jsx example
-
-
- Card heading
-
-
- Card content
-
- Footer content
-
-````
-
-### Simple
-
-```jsx example
-
-
- Card heading
-
-
- Card content
-
-
-```
-
-## Props
-
-
diff --git a/packages/react/__tests__/src/components/Card/index.js b/packages/react/__tests__/src/components/Card/index.js
deleted file mode 100644
index fe2b726fd..000000000
--- a/packages/react/__tests__/src/components/Card/index.js
+++ /dev/null
@@ -1,66 +0,0 @@
-import React from 'react';
-import { shallow } from 'enzyme';
-import {
- default as Card,
- CardHeader,
- CardContent,
- CardFooter
-} from 'src/components/Card';
-import axe from '../../../axe';
-
-test('should render default card components', () => {
- const defaultCard = shallow();
- const defaultCardHeader = shallow(
-
- Heading
-
- );
- const defaultCardFooter = shallow(Footer);
-
- expect(defaultCard.hasClass('Card')).toBe(true);
- expect(defaultCardHeader.hasClass('Card__header')).toBe(true);
- expect(defaultCardFooter.hasClass('Card__footer')).toBe(true);
-});
-
-test('should render simple card', () => {
- const simpleCard = shallow(
-
-
- Simple card heading
-
-
- Card content
-
-
- );
-
- expect(simpleCard.hasClass('Card--simple')).toBe(true);
-});
-
-test('should return no axe violations', async () => {
- const defaultCard = shallow(
-
-
- Card heading
-
-
- Card content
-
- Footer content
-
- );
-
- const simpleCard = shallow(
-
-
- Simple card heading
-
-
- Card content
-
-
- );
-
- expect(await axe(defaultCard.html())).toHaveNoViolations();
- expect(await axe(simpleCard.html())).toHaveNoViolations();
-});
diff --git a/packages/react/src/components/Card/Card.tsx b/packages/react/src/components/Card/Card.tsx
deleted file mode 100644
index f9763660e..000000000
--- a/packages/react/src/components/Card/Card.tsx
+++ /dev/null
@@ -1,20 +0,0 @@
-import React from 'react';
-import classNames from 'classnames';
-
-export interface CardProps extends React.HTMLAttributes {
- variant?: 'simple';
-}
-
-const Card = ({ className, variant, ...other }: CardProps) => (
-
-);
-
-Card.displayName = 'Card';
-
-export default Card;
diff --git a/packages/react/src/components/Card/CardContent.tsx b/packages/react/src/components/Card/CardContent.tsx
deleted file mode 100644
index 52055d774..000000000
--- a/packages/react/src/components/Card/CardContent.tsx
+++ /dev/null
@@ -1,14 +0,0 @@
-import React from 'react';
-import classNames from 'classnames';
-
-export type CardContentProps = React.HTMLAttributes & {
- className?: string;
-};
-
-const CardContent = ({ className, ...other }: CardContentProps) => (
-
-);
-
-CardContent.displayName = 'CardContent';
-
-export default CardContent;
diff --git a/packages/react/src/components/Card/CardFooter.tsx b/packages/react/src/components/Card/CardFooter.tsx
deleted file mode 100644
index c6b43ba7f..000000000
--- a/packages/react/src/components/Card/CardFooter.tsx
+++ /dev/null
@@ -1,14 +0,0 @@
-import React from 'react';
-import classNames from 'classnames';
-
-export type CardFooterProps = React.HTMLAttributes & {
- className?: string;
-};
-
-const CardFooter = ({ className, ...other }: CardFooterProps) => (
-
-);
-
-CardFooter.displayName = 'CardFooter';
-
-export default CardFooter;
diff --git a/packages/react/src/components/Card/CardHeader.tsx b/packages/react/src/components/Card/CardHeader.tsx
deleted file mode 100644
index 6c71609e3..000000000
--- a/packages/react/src/components/Card/CardHeader.tsx
+++ /dev/null
@@ -1,14 +0,0 @@
-import React from 'react';
-import classNames from 'classnames';
-
-export type CardHeaderProps = React.HTMLAttributes & {
- className?: string;
-};
-
-const CardHeader = ({ className, ...other }: CardHeaderProps) => (
-
-);
-
-CardHeader.displayName = 'CardHeader';
-
-export default CardHeader;
diff --git a/packages/react/src/components/Card/index.ts b/packages/react/src/components/Card/index.ts
deleted file mode 100644
index e3df2b067..000000000
--- a/packages/react/src/components/Card/index.ts
+++ /dev/null
@@ -1,4 +0,0 @@
-export { default } from './Card';
-export { default as CardHeader } from './CardHeader';
-export { default as CardContent } from './CardContent';
-export { default as CardFooter } from './CardFooter';
diff --git a/packages/react/src/components/RadioCardGroup/index.tsx b/packages/react/src/components/RadioCardGroup/index.tsx
index 847227580..7d3e6fb03 100644
--- a/packages/react/src/components/RadioCardGroup/index.tsx
+++ b/packages/react/src/components/RadioCardGroup/index.tsx
@@ -1,7 +1,7 @@
import React, { useState, useRef, useEffect } from 'react';
import classNames from 'classnames';
import Icon, { IconType } from '../Icon';
-import Card, { CardContent } from '../Card';
+import Panel, { PanelContent } from '../Panel';
export interface RadioItem extends React.InputHTMLAttributes {
label: React.ReactNode;
@@ -72,8 +72,7 @@ const RadioCardGroup = ({
return (
-
-
+
{isChecked && (
-
-
+
+
);
});
diff --git a/packages/react/src/index.ts b/packages/react/src/index.ts
index 46d76c452..ad7932ec4 100644
--- a/packages/react/src/index.ts
+++ b/packages/react/src/index.ts
@@ -57,12 +57,6 @@ export {
TooltipContent
} from './components/Tooltip';
export { default as TooltipTabstop } from './components/TooltipTabstop';
-export {
- default as Card,
- CardHeader,
- CardContent,
- CardFooter
-} from './components/Card';
export { default as TextField } from './components/TextField';
export { default as ClickOutsideListener } from './components/ClickOutsideListener';
export {
diff --git a/packages/styles/card.css b/packages/styles/card.css
deleted file mode 100644
index 87ad93a4f..000000000
--- a/packages/styles/card.css
+++ /dev/null
@@ -1,81 +0,0 @@
-:root {
- --tile-background-color: var(--white);
- --list-separator: rgba(153, 153, 153, 0.15);
-}
-
-.Card {
- box-shadow: 0px 0px 13px 1px rgba(0, 0, 0, 0.39);
- max-width: 476px;
-}
-
-.Card--simple {
- max-width: 267px;
- border: 1px solid var(--gray-40);
- border-radius: 3px;
- background-color: var(--tile-background-color);
- color: var(--heading-text-color);
- box-shadow: 0 2px 3px rgba(0, 0, 0, 0.15);
-}
-
-.cauldron--theme-dark .Card--simple {
- background-color: var(--dark-workspace-color);
-}
-
-.Card__header {
- color: var(--tile-background-color);
- background-color: var(--top-bar-background-color);
- padding: var(--space-three-quarters) var(--space-three-quarters)
- var(--space-three-quarters) var(--space-large);
-}
-
-.Card--simple .Card__header {
- border-bottom: 1px solid var(--gray-40);
- padding: var(--space-small);
- border-top-left-radius: 3px;
- border-top-right-radius: 3px;
-}
-
-.Card__header h2,
-.Card__header h3,
-.Card__header h4,
-.Card__header h5,
-.Card__header h6 {
- font-size: var(--text-small-medium);
- font-weight: var(--font-weight-light);
- color: var(--heading-text-color);
- margin: 0;
-}
-
-.Card--simple .Card__header h2,
-.Card--simple .Card__header h3,
-.Card--simple .Card__header h4,
-.Card--simple .Card__header h5,
-.Card--simple .Card__header h6 {
- font-size: var(--text-size-small);
- font-weight: var(--font-weight-bold);
- color: var(--heading-text-color);
-}
-
-.Card__header .OptionsMenu {
- margin-left: auto;
-}
-
-.Card__header .OptionsMenu__trigger {
- background: var(--top-bar-background-color);
- color: var(--tile-background-color);
- border: none;
- height: auto;
-}
-
-.Card--simple .Card__content {
- padding: var(--space-small);
-}
-
-.Card__content ul {
- box-sizing: border-box;
-}
-
-.Card__footer {
- padding: var(--space-small);
- text-align: center;
-}
diff --git a/packages/styles/index.css b/packages/styles/index.css
index ec009e02d..526b5d59e 100644
--- a/packages/styles/index.css
+++ b/packages/styles/index.css
@@ -14,7 +14,6 @@
@import './select.css';
@import './side-bar.css';
@import './radio-card.css';
-@import './card.css';
@import './toast.css';
@import './tooltip.css';
@import './tooltip-tabstop.css';
diff --git a/packages/styles/radio-card.css b/packages/styles/radio-card.css
index e44b2aa26..9e73cb52e 100644
--- a/packages/styles/radio-card.css
+++ b/packages/styles/radio-card.css
@@ -53,12 +53,17 @@
width: 44px;
}
-.RadioCardGroup__Card.Card--simple {
+.RadioCardGroup__Card {
width: var(--radio-card-width);
height: var(--radio-card-height);
align-content: center;
}
+.RadioCardGroup__Card .Panel__Content {
+ padding-top: 0;
+ padding-bottom: 0;
+}
+
.RadioCardGroup__Card:hover {
background-color: var(--gray-20);
}
@@ -92,3 +97,7 @@
.cauldron--theme-dark .RadioCardGroup__Icon.Icon svg {
color: var(--accent-success);
}
+
+.cauldron--theme-dark .RadioCardGroup__Card {
+ background-color: var(--dark-workspace-color);
+}