71 lines
1.9 KiB
Dart
Raw Normal View History

import 'package:enaklo_pos/core/extensions/build_context_ext.dart';
2025-07-30 22:38:44 +07:00
import 'package:flutter/material.dart';
import '../../../core/components/search_input.dart';
import '../../../core/constants/colors.dart';
class SettingsTitle extends StatelessWidget {
final String title;
final String? subtitle;
2025-07-30 22:38:44 +07:00
final TextEditingController? controller;
final Function(String value)? onChanged;
final List<Widget>? actionWidget;
2025-07-30 22:38:44 +07:00
const SettingsTitle(
this.title, {
super.key,
this.controller,
this.onChanged,
this.actionWidget,
this.subtitle,
2025-07-30 22:38:44 +07:00
});
@override
Widget build(BuildContext context) {
return Container(
height: context.deviceHeight * 0.1,
padding: const EdgeInsets.symmetric(horizontal: 16.0, vertical: 12.0),
decoration: BoxDecoration(
color: AppColors.white,
),
child: Row(
mainAxisAlignment: MainAxisAlignment.spaceBetween,
children: [
Column(
crossAxisAlignment: CrossAxisAlignment.start,
2025-08-01 15:01:44 +07:00
mainAxisAlignment: MainAxisAlignment.center,
children: [
Text(
title,
style: TextStyle(
color: AppColors.black,
fontSize: 20,
fontWeight: FontWeight.w600,
),
),
if (subtitle != null)
Text(
subtitle ?? '',
style: TextStyle(
color: AppColors.grey,
fontSize: 14,
),
),
],
2025-07-30 22:38:44 +07:00
),
if (controller != null)
SizedBox(
width: 300.0,
child: SearchInput(
controller: controller!,
onChanged: onChanged,
hintText: 'Search for food, coffe, etc..',
),
2025-07-30 22:38:44 +07:00
),
if (actionWidget != null) ...actionWidget!,
],
),
2025-07-30 22:38:44 +07:00
);
}
}