Skip to content

Commit c4c5685

Browse files
Merge pull request #221 from StacDev/dv/update-theme
feat: Update StacTheme
2 parents f5f7160 + 2a4017c commit c4c5685

File tree

46 files changed

+9454
-211
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

46 files changed

+9454
-211
lines changed
Lines changed: 42 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,42 @@
1+
import 'package:flutter/material.dart';
2+
import 'package:freezed_annotation/freezed_annotation.dart';
3+
import 'package:stac/src/parsers/widgets/stac_alignment_geometry/stac_alignment_geometry.dart';
4+
import 'package:stac/src/parsers/widgets/stac_edge_insets/stac_edge_insets.dart';
5+
import 'package:stac/src/parsers/widgets/stac_offset/stac_offset.dart';
6+
import 'package:stac/src/parsers/widgets/stac_text_style/stac_text_style.dart';
7+
import 'package:stac/src/utils/color_utils.dart';
8+
9+
part 'stac_badge_theme_data.freezed.dart';
10+
part 'stac_badge_theme_data.g.dart';
11+
12+
@freezed
13+
abstract class StacBadgeThemeData with _$StacBadgeThemeData {
14+
const factory StacBadgeThemeData({
15+
String? backgroundColor,
16+
String? textColor,
17+
double? smallSize,
18+
double? largeSize,
19+
StacTextStyle? textStyle,
20+
StacEdgeInsets? padding,
21+
StacAlignmentGeometry? alignment,
22+
StacOffset? offset,
23+
}) = _StacBadgeThemeData;
24+
25+
factory StacBadgeThemeData.fromJson(Map<String, dynamic> json) =>
26+
_$StacBadgeThemeDataFromJson(json);
27+
}
28+
29+
extension StacBadgeThemeDataParser on StacBadgeThemeData {
30+
BadgeThemeData parse(BuildContext context) {
31+
return BadgeThemeData(
32+
backgroundColor: backgroundColor?.toColor(context),
33+
textColor: textColor?.toColor(context),
34+
smallSize: smallSize,
35+
largeSize: largeSize,
36+
textStyle: textStyle?.parse(context),
37+
padding: padding?.parse,
38+
alignment: alignment?.parse,
39+
offset: offset?.parse,
40+
);
41+
}
42+
}

0 commit comments

Comments
 (0)