react-toolbox/components/card
Javi Velasco 81acda7162 Migrate styles to PostCSS (#666)
* Add postcss-next postcss-include and reporter

* Add stylelint

* Add CSS colors

* Add CSS custom media queries

* Use dashes for CSS colors

* Add base CSS variables

* Remove AppBar SASS dependency from spec page

* Migrate AppBar style to PostCSS

* Migrate Avatar style to PostCSS

* Migrate Ripple style to PostCSS

* Remove unneeded media CSS import in Avatar

* Add shadows to CSS variables

* Migrate Button style to PostCSS

* Update webpack test config and linting from npm

* Migrate Input style to PostCSS

* Add missing input config variables for Dropdown and Autocomplete

* Migrate Chip style to PostCSS

* Migrate Autocomplete style to PostCSS

* Migrate Dropdown style to PostCSS

* Migrate animations to PostCSS

* Migrate Card style to PostCSS

* Migrate Checkbox style to PostCSS

* Migrate DataPicker style to PostCSS

* Migrate Dialog style to PostCSS

* Migrate Drawer style to PostCSS

* Add postcss-mixins and postcss-each

* Migrate Layout style to PostCSS

* Fix bug in button theme

* Bugfix in avatar css

* Add some missing nesting notations

* Migrate Link style to PostCSS

* Migrate List style to PostCSS

* Migrate Menu style to PostCSS

* Migrate Navigation style to PostCSS

* Migrate Overlay style to PostCSS

* Migrate ProgressBar style to PostCSS

* Migrate Radio style to PostCSS

* Migrate Slider style to PostCSS

* Migrate Snackbar style to PostCSS

* Migrate Switch style to PostCSS

* Migrate Table style to PostCSS

* Migrate Tabs style to PostCSS

* Migrate TimePicker to PostCSS

* Migrate Tooltip styles to PostCSS

* Update webpack config for testing and tests

* Migrate commons to PostCSS

* Remove sass from main project

* Bye from docs to sass

* Build with CSS

* Remove unneded deps for sass in docs subproject

* Fix tests

* use 4p shadow in AppBar as spec indicates

* Fixed typo in list/config.css

* Fix tests

* Fix linter errors

* Latest build

* Release 2.0.0-beta.0

* Remove sass lint

* fixes old sass var in css config

* Update linter

* New Table implementation

* Fix old sass var in list/config.css

See da0c47041e.

* Remove normalize.css from commons.css

* Update dependencies

* Latest build

* Input ready to accept visible hint

* Prepare slider and progress to be disabled

* Render Snackbar using Portal

* Refactor Dialog, Drawer and Overlay to be used in Layout

* Add inner layer to AppBar

* New layout

* Use Layout in spec

* Latest build

* remove layout playground example

* add smTablet and lgTablet to NavDrawer in Layout readme

* add default prop className to Layout, NavDrawer and Sidebar

* fix css linter errors in card and slider

* Typings for Table component

* Add missing Drawer identifier

* Update lib build

* Adds onQueryChange callback property to Autocomplete

The onQueryChange callback is called when the value of the query changes in Autocomplete.
It is called with the new query value.

* Fix #966

* Fix #965

* Fixes #976

* Updated css-related dependencies

Removed usages of `addDependencyTo` since it's deprecated and not needed anymore.
See https://github.com/postcss/postcss-import#adddependencyto

* Enabled HMR for styles by disabling extracting them to a CSS file

* Remove lib from repo

* Remove lib

* Fixes #1021

* Build using Gulp

* Export ThemeProvider from react-css-themr

* Add CHANGELOG to release command

* Release 2.0.0-beta.1

* Remove immutability helper

* Update dependencies

* Fix Tooltip trying to render after it's been unmounted

* Fixes #1038

* Release 2.0.0-beta.2

* Add ramda, refactor utils and remove slide animation modules

* Remove separate slide animations modules

* Remove box-sizing reset and body rule

* Remove commons.css

* Release 2.0.0-beta.4

* Update dependencies

* Fixes #1061

* More aggresive guard condition for multiple autocomplete

* Fix typeof check in isBrowser function

* Fixes an issue when specs are opened with browsers that do not support Object.entries().

* Import from ramda using the 'import XXX from "ramda/src/XXX"' pattern so that bundle sizes will be smaller for not including the whole ramda package.

* Fix #1032

* Fix tests

* Update yarn.lock

* Fixes #1064
2017-01-05 02:42:18 +01:00
..
Card.js Better PropType syntax and delete required className api 2016-06-03 23:44:33 +02:00
CardActions.js Better PropType syntax and delete required className api 2016-06-03 23:44:33 +02:00
CardMedia.js Better PropType syntax and delete required className api 2016-06-03 23:44:33 +02:00
CardText.js Better PropType syntax and delete required className api 2016-06-03 23:44:33 +02:00
CardTitle.js Pass down theme from Card title to nested Avatar 2016-09-07 13:11:56 +02:00
config.css Migrate styles to PostCSS (#666) 2017-01-05 02:42:18 +01:00
index.d.ts update typings to 1.3.3 2016-12-19 20:13:36 +01:00
index.js Migrate styles to PostCSS (#666) 2017-01-05 02:42:18 +01:00
readme.md fix few missing propTypes 2016-12-19 20:39:07 +01:00
theme.css Migrate styles to PostCSS (#666) 2017-01-05 02:42:18 +01:00

readme.md

Card

A Card is a piece of paper with unique related data that serves as an entry point to more detailed information. For example, a card could contain a photo, text, and a link about a single subject.

Cards are composed of multiple subcomponents in React Toolbox. You can combine each of the subcomponents to create all different Material Design Cards given in the spec.

import { Card, CardMedia, CardTitle, CardText, CardActions } from 'react-toolbox/lib/card';
import {Button} from 'react-toolbox/lib/button';

const dummyText = 'Lorem Ipsum is simply dummy text of the printing and typesetting industry. Lorem Ipsum has been the industry\'s standard dummy text ever since the 1500s, when an unknown printer took a galley of type and scrambled it to make a type specimen book.';

const TestCards = () => (
  <Card style={{width: '350px'}}>
    <CardTitle
      avatar="https://placeimg.com/80/80/animals"
      title="Avatar style title"
      subtitle="Subtitle here"
    />
    <CardMedia
      aspectRatio="wide"
      image="https://placeimg.com/800/450/nature"
    />
    <CardTitle
      title="Title goes here"
      subtitle="Subtitle here"
    />
    <CardText>{dummyText}</CardText>
    <CardActions theme={theme}>
      <Button label="Action 1" />
      <Button label="Action 2" />
    </CardActions>
  </Card>
);

return <TestCards />;

This component and all of its subcomponents are themeable by context using the key RTCard. This component theme can also include class modifiers for Button and Avatar component.

Card

The base card component. This acts as the main card container that all subcomponents are placed within.

Properties

Name Type Default Description
children Any Child components, usually Card subcomponents.
className String Additional class(es) for custom styling.
raised Boolean Increases the shadow depth to appear elevated.

Theme

Name Description
card Class used for the root element.
raised Added to the root element in case the card is raised.

CardTitle

A versatile title block that can be used in various places on the card, including the media area. This component can also display an avatar next to the title content.

Properties

Name Type Default Description
avatar String or Element A string URL or Element to specify an avatar in the left side of the title.
children String, Element or Array Children to pass through the component.
className String Additional class(es) for custom styling.
subtitle String Text used for the sub header of the card.
title String Text used for the title of the card.

Theme

Name Description
cardTitle Class used for the root element.
large Added to the root element when the card has no avatar.
small Added to the root element when the card has avatar.
subtitle Added to the subtitle element.
title Added to the title element.

CardMedia

Used for displaying media such as images or videos on a card. Can also be used with a solid background color instead of an image.

Properties

Name Type Default Description
aspectRatio enum('wide','square') Forces a 16:9 or 1:1 aspect ratio respectively. Unset, the media area will have a flexible height.
children Any Usually an image/video element or a <CardTitle> component.
className String Additional class(es) for custom styling.
color String Sets the background color.
contentOverlay Boolean Creates a dark overlay underneath the child components.
image String, Element Can be used instead of children. Accepts an element or a URL string.

Theme

Name Description
cardMedia Added to the element root.
content Used for the content element.
contentOverlay Added to content element if its overlayed.
square Added to content element if its squared.
wide Added to content element if its wide.

CardText

Basic card content container. Good for small descriptions or other supplementary text.

Properties

Name Type Default Description
children Any Children to pass through the component.
className String Additional class(es) for custom styling.

Theme

Name Description
cardText Used for the main root element.

CardActions

This component is used as a container for supplemental card actions. Supplemental actions within the card are explicitly called out using icons, text, and UI controls, typically placed at the bottom of the card.

Properties

Name Type Default Description
children Any Children to pass through the component.
className String Additional class(es) for custom styling.

Theme

Name Description
cardActions Used for a wrapper around actions as the root element.