ContrastPreviewCard constructor
ContrastPreviewCard({})
Implementation
ContrastPreviewCard({
super.key,
required this.foreground,
required this.background,
required this.sampleText,
this.threshold,
this.largeText = false,
this.onTap,
this.semanticLabel,
this.passLabel = 'Pass',
this.failLabel = 'Needs more contrast',
}) {
if (sampleText.trim().isEmpty) {
throw ArgumentError.value(sampleText, 'sampleText', 'must not be blank');
}
final requestedThreshold = threshold;
if (requestedThreshold != null &&
(!requestedThreshold.isFinite || requestedThreshold <= 0)) {
throw ArgumentError.value(
threshold,
'threshold',
'must be finite and > 0',
);
}
for (final (name, value) in [
('semanticLabel', semanticLabel),
('passLabel', passLabel),
('failLabel', failLabel),
]) {
if (value != null && value.trim().isEmpty) {
throw ArgumentError.value(value, name, 'must not be blank');
}
}
}