littlefish_feature_models 1.0.5
littlefish_feature_models: ^1.0.5 copied to clipboard
Shared domain models package for littlefish merchant app. Contains all common data models organized by domain.
Littlefish Feature Models #
Shared domain models package for the littlefish merchant app. This package contains all common data models organized by domain, providing a single source of truth for model definitions across all feature packages.
Purpose #
This package centralizes all domain models that are shared across multiple feature packages. Instead of duplicating models in each feature package, all packages reference this shared models package.
Structure #
lib/
├── littlefish_feature_models.dart # Main library file
└── models/
├── shared/ # Shared utilities and base models
│ ├── enums.dart
│ ├── country_list.dart
│ ├── country_stub.dart
│ └── ...
├── accounts/ # Linked account models
├── customers/ # Customer models
├── store/ # Business profile models
└── tax/ # Tax models
Note: Product, stock, promotion and checkout-cart models previously lived here. They have been retired in favour of the clean UI models owned by
littlefish_feature_productsandlittlefish_feature_stock. Feature packages consume those models directly — they are no longer re-exported through this package.
Usage #
Add this package as a dependency in your feature package's pubspec.yaml:
dependencies:
littlefish_feature_models:
path: ../../models/littlefish_feature_models
Then import the models you need:
import 'package:littlefish_feature_models/littlefish_feature_models.dart';
// Or import specific domains
import 'package:littlefish_feature_models/models/customers/customers.dart';
import 'package:littlefish_feature_models/models/store/store.dart';
Dependencies #
littlefish_core: ^4.2.0littlefish_core_utilsjson_annotation: ^4.9.0
Development #
To generate JSON serialization code:
dart run build_runner build --delete-conflicting-outputs