parse static method

DesignStyle parse(
  1. String value
)

Parse a user-supplied value. Aliases are normalized. Throws FormatException on unknown input.

Implementation

static DesignStyle parse(String value) {
  final compact = value
      .toLowerCase()
      .trim()
      .replaceAll(RegExp(r'[\s-]'), '_')
      .replaceAll('_', '');
  switch (compact) {
    case 'material':
      return DesignStyle.material;
    case 'vibrant':
      return DesignStyle.vibrant;
    case 'minimal':
    case 'minimalism':
      return DesignStyle.minimalism;
    case 'neomorphism':
    case 'neoorphism':
    case 'neuomorphism':
      return DesignStyle.neomorphism;
    case 'skeuomorphism':
      return DesignStyle.skeuomorphism;
    case 'glassmorphism':
      return DesignStyle.glassmorphism;
    case 'claymorphism':
      return DesignStyle.claymorphism;
    case 'maximalism':
      return DesignStyle.maximalism;
    case 'brutalism':
      return DesignStyle.brutalism;
    case 'liquidglass':
      return DesignStyle.liquidGlass;
    case 'spatialui':
      return DesignStyle.spatialUi;
    default:
      throw FormatException(
        'Unknown design style "$value". '
        'Valid: material, vibrant, minimalism, neomorphism, '
        'skeuomorphism, glassmorphism, claymorphism, maximalism, '
        'brutalism, liquid_glass, spatial_ui. '
        'Aliases: minimal, liquidglass, spatialui, neoorphism.',
      );
  }
}