forked from eatvio/eatvio_app
32 lines
1.2 KiB
Dart
32 lines
1.2 KiB
Dart
import 'package:dio/dio.dart';
|
|
import 'package:eatvio_app/features/profile/models/profile_model.dart';
|
|
import 'package:eatvio_app/features/settings/models/oauth_account_model.dart';
|
|
import 'package:eatvio_app/features/settings/models/oauth_attach_request.dart';
|
|
import 'package:eatvio_app/features/settings/models/profile_settings_model.dart';
|
|
import 'package:retrofit/retrofit.dart';
|
|
|
|
part 'settings_service.g.dart';
|
|
|
|
@RestApi()
|
|
abstract class SettingsService {
|
|
factory SettingsService(Dio dio, {String baseUrl}) = _SettingsService;
|
|
|
|
@GET('/api/profile/settings')
|
|
Future<ProfileSettingsModel> getProfileSettings();
|
|
|
|
@PUT('/api/profile/settings/update')
|
|
Future<ProfileSettingsModel> updateProfileSettings({@Body() required Map<String, dynamic> data});
|
|
|
|
@PUT('/api/profile/update')
|
|
Future<ProfileDetailsModel> updateProfileDetails({@Body() required Map<String, dynamic> data});
|
|
|
|
@GET('/api/oauth/accounts')
|
|
Future<OAuthAccountsResponseModel> getOAuthAccounts();
|
|
|
|
@POST('/api/oauth/attach')
|
|
Future<void> linkOAuthAccount(@Body() OAuthAttachRequest request);
|
|
|
|
@DELETE('/api/oauth/accounts/{provider}')
|
|
Future<void> unlinkOAuthAccount(@Path('provider') String provider);
|
|
}
|