elevation method

double elevation(
  1. M3EButtonStyle style,
  2. Set<WidgetState> states
)

elevation.

Implementation

double elevation(M3EButtonStyle style, Set<WidgetState> states) {
  final hovered = states.contains(WidgetState.hovered);
  final pressed = states.contains(WidgetState.pressed);
  final disabled = states.contains(WidgetState.disabled);
  if (disabled) {
    return 0;
  }
  switch (style) {
    case M3EButtonStyle.elevated:
      return pressed
          ? 0
          : hovered
          ? 3
          : 1;
    case M3EButtonStyle.filled:
    case M3EButtonStyle.tonal:
      return pressed
          ? 0
          : hovered
          ? 1
          : 0;
    case M3EButtonStyle.outlined:
    case M3EButtonStyle.text:
      return 0;
  }
}