♻️ Refactor thought widgets
This commit is contained in:
52
lib/widgets/thought/thought_header.dart
Normal file
52
lib/widgets/thought/thought_header.dart
Normal file
@@ -0,0 +1,52 @@
|
||||
import 'package:easy_localization/easy_localization.dart';
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:material_symbols_icons/material_symbols_icons.dart';
|
||||
|
||||
class ThoughtHeader extends StatelessWidget {
|
||||
const ThoughtHeader({
|
||||
super.key,
|
||||
required this.isStreaming,
|
||||
required this.isUser,
|
||||
});
|
||||
|
||||
final bool isStreaming;
|
||||
final bool isUser;
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
if (!isStreaming) {
|
||||
return Row(
|
||||
spacing: 6,
|
||||
children: [
|
||||
Icon(
|
||||
isUser ? Symbols.person : Symbols.smart_toy,
|
||||
size: 16,
|
||||
color:
|
||||
isUser
|
||||
? Theme.of(context).colorScheme.primary
|
||||
: Theme.of(context).colorScheme.secondary,
|
||||
fill: 1,
|
||||
),
|
||||
Text(
|
||||
isUser ? 'thoughtUserName'.tr() : 'aiThought'.tr(),
|
||||
style: Theme.of(context).textTheme.titleSmall!.copyWith(
|
||||
fontWeight: FontWeight.w600,
|
||||
color:
|
||||
isUser
|
||||
? Theme.of(context).colorScheme.primary
|
||||
: Theme.of(context).colorScheme.secondary,
|
||||
),
|
||||
),
|
||||
],
|
||||
);
|
||||
} else {
|
||||
return Text(
|
||||
'aiThought'.tr(),
|
||||
style: Theme.of(context).textTheme.titleSmall!.copyWith(
|
||||
fontWeight: FontWeight.w600,
|
||||
color: Theme.of(context).colorScheme.primary,
|
||||
),
|
||||
);
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user