feat: Implement permanent and recurring order features with BLoC architecture

- Added PermanentOrderEvent and PermanentOrderState to manage permanent order events and states.
- Created RapidOrderBloc, RapidOrderEvent, and RapidOrderState for handling rapid order creation.
- Introduced RecurringOrderBloc, RecurringOrderEvent, and RecurringOrderState for managing recurring orders.
- Developed utility classes for order types and UI metadata for styling order type cards.
- Enhanced validation logic for order states to ensure data integrity.
- Integrated vendor and hub loading functionalities for both permanent and recurring orders.
This commit is contained in:
Achintha Isuru
2026-02-21 18:11:47 -05:00
parent 9e0ca1ef96
commit f3eb33a303
41 changed files with 138 additions and 246 deletions

View File

@@ -221,6 +221,14 @@ class UiTypography {
color: UiColors.textPrimary,
);
/// Headline 4 Bold - Font: Instrument Sans, Size: 20, Height: 1.5 (#121826)
static final TextStyle headline4b = _primaryBase.copyWith(
fontWeight: FontWeight.w600,
fontSize: 18,
height: 1.5,
color: UiColors.textPrimary,
);
/// Headline 5 Regular - Font: Instrument Sans, Size: 18, Height: 1.5 (#121826)
static final TextStyle headline5r = _primaryBase.copyWith(
fontWeight: FontWeight.w400,

View File

@@ -1,3 +1,4 @@
import 'package:design_system/src/ui_typography.dart';
import 'package:flutter/material.dart';
import '../ui_icons.dart';
@@ -14,7 +15,7 @@ class UiAppBar extends StatelessWidget implements PreferredSizeWidget {
this.leading,
this.actions,
this.height = kToolbarHeight,
this.centerTitle = true,
this.centerTitle = false,
this.onLeadingPressed,
this.showBackButton = true,
this.bottom,
@@ -56,6 +57,7 @@ class UiAppBar extends StatelessWidget implements PreferredSizeWidget {
(title != null
? Text(
title!,
style: UiTypography.headline4b,
)
: null),
leading: leading ??