Orders Providers¶
Source: pharmanet/lib/core/providers/order_provider.dart
Provider Reference¶
| Provider | Type | Description |
|---|---|---|
ordersProvider |
StateNotifierProvider<AsyncValue<List<Order>>> |
Order list with CRUD actions |
orderStreamProvider |
StreamProvider<List<Map<String, dynamic>>> |
Real-time order updates |
orderDetailsProvider |
FutureProvider.family<Map<String, dynamic>, String> |
Single order detail |
Order Stream (Real-time)¶
final orderStreamProvider = StreamProvider<List<Map<String, dynamic>>>((ref) {
final userId = ref.watch(currentUserProvider)?.id;
if (userId == null) return Stream.value([]);
return supabase
.from('orders')
.stream(primaryKey: ['id'])
.eq('user_id', userId)
.order('created_at', ascending: false);
});
Orders update in real-time as sellers/admins change order statuses.
Usage¶
final ordersAsync = ref.watch(ordersProvider);
final orders = ref.watch(orderStreamProvider);
final details = ref.watch(orderDetailsProvider(orderId));
Related¶
- Orders Feature — UI and API
- Order Model — Data model fields