Raise the declared minimums in pubspec.yaml to what our deps already require: Flutter >=3.35.0 / Dart >=3.9.0 (was 3.19.0 / 3.5.0). alchemist 0.12 needs Flutter 3.32; Dart 3.9 first ships in Flutter 3.35, so 3.35 is the binding floor. Pin the exact build toolchain in .fvmrc (Flutter 3.44.1). Moving to the Dart 3.9 language level switches `dart format` to the new "tall" style and enables two new lints. This commit is the resulting mechanical churn, isolated from any behaviour change: - whole-tree `dart format` reformat (tall style) - `dart fix` for unnecessary_underscores + use_null_aware_elements No runtime behaviour change; `make test` green. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
29 lines
830 B
Dart
29 lines
830 B
Dart
import 'dart:ui';
|
|
|
|
import 'package:flutter/foundation.dart';
|
|
|
|
@immutable
|
|
class SemanticRoles {
|
|
const SemanticRoles(this._roles);
|
|
final Map<String, Color> _roles;
|
|
|
|
Color? lookup(String role) => _roles[role];
|
|
Iterable<String> get roles => _roles.keys;
|
|
}
|
|
|
|
abstract class SemanticKeys {
|
|
static const mainchrome = 'mainchrome';
|
|
static const calltoaction = 'calltoaction';
|
|
static const focus = 'focus';
|
|
static const background = 'background';
|
|
static const surface = 'surface';
|
|
static const text = 'text';
|
|
static const textMuted = 'text_muted';
|
|
static const success = 'success';
|
|
static const warning = 'warning';
|
|
static const error = 'error';
|
|
static const info = 'info';
|
|
|
|
static const all = <String>[mainchrome, calltoaction, focus, background, surface, text, textMuted, success, warning, error, info];
|
|
}
|