6.0.0-beta.1 • Published 5 years ago

@lightspeed/cirrus-card v6.0.0-beta.1

Weekly downloads
160
License
MIT
Repository
-
Last release
5 years ago

Card

Cards shape our interfaces into easily readable screens.

Installation

  1. Since we use peer dependencies to minimize library duplication, ensure you have the following dependencies loaded within your project
yarn add @lightspeed/cirrus-tokens emotion@9 react-emotion@9 styled-system@3 polished@2
  1. Install the component library
yarn add @lightspeed/cirrus-card
  1. Hook the <ThemeProvider> and the theme in your app.
// 1. Import the theme provider from emotion-theming
//    This is needed to forward all our tokens to the components
import { ThemeProvider } from 'emotion-theming';

// 2. Import the base theme from cirrus-tokens
//    There's nothing magical about this file. it's literally
//    a plain old javascript object with keys and values that
//    map to the tokens/design-system
import cirrusTheme from '@lightspeed/cirrus-tokens/theme/default';

/* Within your root app component */
class App extends React.Component {
  render() {
    return (
      {/*
        3. Wrap the children with ThemeProvider and pass in
        the cirrus theme into the theme prop.
      */}
      <ThemeProvider theme={cirrusTheme}>
        {/* Whatever children */ }
      </ThemeProvider>
    );
  }
}
  1. Import { Card } and use right away!

React Component

<Card>

Note: This components supports all space properties from styled-system

PropTypeDescription
topBooleanTop card variant
colorStringSet the text color within the card
bgStringSet the background color within the card
largebooleanForcebly set all children to have large spacing
noSpacingbooleanForcebly set all children to have noSpacing

<CardSection>

Note: This components supports all space properties from styled-system

PropTypeDescription
childrenReact.ReactNodeThe content to display inside the section
colorStringSet the text color within the card
bgStringSet the background color within the card
largebooleanMake the corresponding component have larger spacing
noSpacingbooleanMake the corresponding component remove any spacing

<CardHeader>

Extends CardSection

PropTypeDescription
titleStringTitle for the card
actionsReact.ReactNodeThe action content (such as action buttons)
childrenReact.ReactNodeThe content to display inside the header

<CardFooter>

Extends CardSection

<CardDivider>

Use this component to add a small divider between various sections.

Example

import React from 'react';
import { Card CardHeader, CardSection, CardFooter, CardDivider } from '@lightspeed/cirrus-card';

const MyComponent = () => (
  <Card>
    <CardHeader title="Card Title" />
    <CardSection>Card Content</CardSection>
    <CardDivider />
    <CardSection>Card Content</CardSection>
    <CardFooter>Card Footer</CardFooter>
  </Card>
);

export default MyComponent;
6.0.0-beta.1

5 years ago

6.0.0-beta.0

5 years ago

5.0.0

5 years ago

4.0.0

6 years ago

3.0.0

6 years ago

2.0.0

6 years ago

1.0.0

6 years ago

0.2.8

6 years ago

0.2.7

6 years ago

0.2.6

6 years ago

0.2.5

6 years ago

0.2.4

6 years ago

0.2.3

6 years ago

0.2.2

6 years ago

0.2.1

6 years ago

0.2.0

6 years ago