mirror of
https://github.com/bggRGjQaUbCoE/PiliPlus.git
synced 2026-04-20 11:08:03 +08:00
40 lines
1.1 KiB
Dart
40 lines
1.1 KiB
Dart
import 'package:flex_seed_scheme/flex_seed_scheme.dart';
|
|
import 'package:flutter/material.dart';
|
|
|
|
extension ColorSchemeExt on ColorScheme {
|
|
Color get vipColor =>
|
|
brightness.isLight ? const Color(0xFFFF6699) : const Color(0xFFD44E7D);
|
|
|
|
Color get freeColor =>
|
|
brightness.isLight ? const Color(0xFFFF7F24) : const Color(0xFFD66011);
|
|
|
|
bool get isLight => brightness.isLight;
|
|
|
|
bool get isDark => brightness.isDark;
|
|
}
|
|
|
|
extension ColorExtension on Color {
|
|
Color darken([double amount = .5]) {
|
|
assert(amount >= 0 && amount <= 1, 'Amount must be between 0 and 1');
|
|
return Color.lerp(this, Colors.black, amount)!;
|
|
}
|
|
|
|
ColorScheme asColorSchemeSeed([
|
|
FlexSchemeVariant variant = .material,
|
|
Brightness brightness = .light,
|
|
]) => SeedColorScheme.fromSeeds(
|
|
primaryKey: this,
|
|
variant: variant,
|
|
brightness: brightness,
|
|
useExpressiveOnContainerColors: false,
|
|
);
|
|
}
|
|
|
|
extension BrightnessExt on Brightness {
|
|
Brightness get reverse => isLight ? Brightness.dark : Brightness.light;
|
|
|
|
bool get isLight => this == Brightness.light;
|
|
|
|
bool get isDark => this == Brightness.dark;
|
|
}
|