'destructive', 'error' => 'destructive', 'neutral' => 'secondary', 'default' => 'secondary', 'light' => 'secondary', ); public static function action( $variant, $fallback = 'secondary' ) { return self::resolve( $variant, self::ACTION_VARIANTS, $fallback ); } public static function badge( $variant, $fallback = 'secondary' ) { return self::resolve( $variant, self::BADGE_VARIANTS, $fallback ); } private static function resolve( $variant, $allowed, $fallback ) { $variant = strtolower( trim( (string) $variant ) ); if ( '' === $variant ) { return $fallback; } if ( isset( self::ALIASES[ $variant ] ) ) { $variant = self::ALIASES[ $variant ]; } return in_array( $variant, $allowed, true ) ? $variant : $fallback; } public static function tone( $tone, $fallback = '' ) { $tone = strtolower( trim( (string) $tone ) ); if ( '' === $tone ) { return $fallback; } return in_array( $tone, self::TONES, true ) ? $tone : $fallback; } public static function is_action_variant( $variant ) { $variant = strtolower( trim( (string) $variant ) ); if ( isset( self::ALIASES[ $variant ] ) ) { $variant = self::ALIASES[ $variant ]; } return in_array( $variant, self::ACTION_VARIANTS, true ); } public static function wp_button_class( $variant, $small = true ) { $variant = self::action( $variant ); $size = $small ? ' aieo-c-btn--sm' : ''; return 'aieo-c-btn' . $size . ' aieo-c-btn--' . $variant; } }