feat: Update API endpoint usage in repositories to remove redundant path property
- Refactored multiple repository implementations across client and staff features to directly use endpoint objects without accessing the `path` property. - Introduced a new `FeatureGate` class for client-side feature gating based on user scopes, allowing for better access control to API endpoints. - Added `ApiEndpoint` class to represent API endpoints with their paths and required scopes for future feature gating.
This commit is contained in:
@@ -16,7 +16,7 @@ class BankAccountRepositoryImpl implements BankAccountRepository {
|
||||
@override
|
||||
Future<List<BankAccount>> getAccounts() async {
|
||||
final ApiResponse response =
|
||||
await _api.get(StaffEndpoints.bankAccounts.path);
|
||||
await _api.get(StaffEndpoints.bankAccounts);
|
||||
final List<dynamic> items = response.data['accounts'] as List<dynamic>;
|
||||
return items
|
||||
.map((dynamic json) =>
|
||||
@@ -27,7 +27,7 @@ class BankAccountRepositoryImpl implements BankAccountRepository {
|
||||
@override
|
||||
Future<void> addAccount(BankAccount account) async {
|
||||
await _api.post(
|
||||
StaffEndpoints.bankAccounts.path,
|
||||
StaffEndpoints.bankAccounts,
|
||||
data: account.toJson(),
|
||||
);
|
||||
}
|
||||
|
||||
@@ -16,7 +16,7 @@ class TimeCardRepositoryImpl implements TimeCardRepository {
|
||||
@override
|
||||
Future<List<TimeCardEntry>> getTimeCards(DateTime month) async {
|
||||
final ApiResponse response = await _api.get(
|
||||
StaffEndpoints.timeCard.path,
|
||||
StaffEndpoints.timeCard,
|
||||
params: <String, dynamic>{
|
||||
'year': month.year,
|
||||
'month': month.month,
|
||||
|
||||
Reference in New Issue
Block a user