Selection Card

Installation

  yarn add @chewy/kib-cards-styles

Import

  @use '~@chewy/kib-cards-styles/src/kib-selection-card/styles' as kib-selection-card;

Mixins

card-root

@mixin card-root() { ... }@mixin card-root() { 
  @include kib-foundations.card;
  @include kib-foundations.card-interactive-default;

  padding: spacing.get('s4');
  margin-bottom: spacing.get('s2');
  display: flex;
  flex-direction: column;
  width: 100%;

  // This fixes IE11 vertical alignment bug
  // @see https://chewyinc.atlassian.net/browse/CDS-4167
  min-height: settings.$min-height;
  align-items: top;
  justify-content: stretch;

  &:focus,
  &:hover {
    @include kib-foundations.card-interactive-hover;
  }

  &:active {
    @include kib-foundations.card-interactive-active;
  }

  // This fixes IE11 not showing custom focus outline
  // @see https://chewyinc.atlassian.net/browse/CDS-4168
  overflow: visible;
  text-align: left;
 }
Description

Card root container element styles

Parameters

None.

Requires
Author
  • CDS

card-disabled

@mixin card-disabled() { ... }@mixin card-disabled() { 
  @include kib-foundations.card-interactive-disabled;
 }
Description

Card container disabled element styles

Parameters

None.

Author
  • CDS

selected

@mixin selected() { ... }@mixin selected() { 
  border-color: kib-foundations.$card-outline-border-color;
 }
Description

Styles for selected selection card

Parameters

None.

Author
  • CDS

label

@mixin label() { ... }@mixin label() { 
  @include section-heading.heading;
  @include section-heading.heading-small;

  padding-left: settings.$label-spacing;
 }
Description

Card root container element styles

Parameters

None.

Requires
Author
  • CDS

unselected-label

@mixin unselected-label() { ... }@mixin unselected-label() { 
  $distance: kib-foundations.$card-border-width * -3;

  position: absolute;
  top: $distance;
  left: $distance;
  right: $distance;
  bottom: $distance;
  border: none;
  content: '';
  cursor: pointer;
  z-index: 1;
 }
Description

Card root container element styles

Parameters

None.

Author
  • CDS

radio-control-custom

@mixin radio-control-custom($block) { ... }@mixin radio-control-custom($block) { 
  @include mixins.choice-control-custom($block);

  #{$block}__native:checked ~ & {
    #{$block}__fill {
      opacity: 1;
      transform: translate(-50%, -50%) scale(1);
    }
  }
 }
Description

Radio custom input control styles and various states

Parameters
Parameters
parameter Nameparameter Descriptionparameter Typeparameter Default value
$block

root class of parent block element

String none
Author
  • CDS

radio-control-fill

@mixin radio-control-fill() { ... }@mixin radio-control-fill() { 
  position: absolute;
  top: 50%;
  left: 50%;
  width: 60%;
  height: 60%;
  background-color: settings.$control-fill-color;
  border-radius: 50%;
  content: '';
  opacity: 0;
  transform: translate(-50%, -50%) scale(0);
  transition: transform 0.2s, opacity 0.2s;
 }
Description

Control fill with inner pseudo element to style checked state

Parameters

None.

Requires
Author
  • CDS

append-container-indent

@mixin append-container-indent($width) { ... }@mixin append-container-indent($width) { 
  margin-top: spacing.get('s2');
  padding-left: calc(#{$width} + #{settings.$label-spacing});
 }
Description

Container that holds appended content below label

Parameters
Parameters
parameter Nameparameter Descriptionparameter Typeparameter Default value
$width

input control width

Number none
Requires
Author
  • CDS

Variables

appended-indent

$appended-indent: kib-foundations.rem(20px) !default;
Description

Appended content indentation

Type

Number

Author
  • CDS

label-spacing

$label-spacing: spacing.get('s4') !default;
Description

Spacing between choice control and label

Type

Number

Author
  • CDS

control-fill-color

$control-fill-color: color.get('action', 'selection-control', 'on', 'primary') !default;
Description

Control fill color

Type

Color

Used by
Author
  • CDS

min-height

$min-height: kib-foundations.rem(52px) !default;
Description

Minimum card height

Type

Number

Author
  • CDS