forked from eatvio/eatvio_app
242 lines
7.6 KiB
Dart
242 lines
7.6 KiB
Dart
// GENERATED CODE - DO NOT MODIFY BY HAND
|
|
|
|
part of 'chat_service.dart';
|
|
|
|
// **************************************************************************
|
|
// RetrofitGenerator
|
|
// **************************************************************************
|
|
|
|
// ignore_for_file: unnecessary_brace_in_string_interps,no_leading_underscores_for_local_identifiers,unused_element,unnecessary_string_interpolations
|
|
|
|
class _ChatService implements ChatService {
|
|
_ChatService(this._dio, {this.baseUrl, this.errorLogger});
|
|
|
|
final Dio _dio;
|
|
|
|
String? baseUrl;
|
|
|
|
final ParseErrorLogger? errorLogger;
|
|
|
|
@override
|
|
Future<ChatRoomPaginationModel> getChatRooms({
|
|
required int page,
|
|
String? query,
|
|
}) async {
|
|
final _extra = <String, dynamic>{};
|
|
final queryParameters = <String, dynamic>{r'page': page, r'find': query};
|
|
queryParameters.removeWhere((k, v) => v == null);
|
|
final _headers = <String, dynamic>{};
|
|
const Map<String, dynamic>? _data = null;
|
|
final _options = _setStreamType<ChatRoomPaginationModel>(
|
|
Options(method: 'GET', headers: _headers, extra: _extra)
|
|
.compose(
|
|
_dio.options,
|
|
'/api/chat/index',
|
|
queryParameters: queryParameters,
|
|
data: _data,
|
|
)
|
|
.copyWith(baseUrl: _combineBaseUrls(_dio.options.baseUrl, baseUrl)),
|
|
);
|
|
final _result = await _dio.fetch<Map<String, dynamic>>(_options);
|
|
late ChatRoomPaginationModel _value;
|
|
try {
|
|
_value = ChatRoomPaginationModel.fromJson(_result.data!);
|
|
} on Object catch (e, s) {
|
|
errorLogger?.logError(e, s, _options);
|
|
rethrow;
|
|
}
|
|
return _value;
|
|
}
|
|
|
|
@override
|
|
Future<Map<String, ChatRoomModel>> getChatRoom({required String id}) async {
|
|
final _extra = <String, dynamic>{};
|
|
final queryParameters = <String, dynamic>{};
|
|
final _headers = <String, dynamic>{};
|
|
const Map<String, dynamic>? _data = null;
|
|
final _options = _setStreamType<Map<String, ChatRoomModel>>(
|
|
Options(method: 'GET', headers: _headers, extra: _extra)
|
|
.compose(
|
|
_dio.options,
|
|
'/api/chat/show/${id}',
|
|
queryParameters: queryParameters,
|
|
data: _data,
|
|
)
|
|
.copyWith(baseUrl: _combineBaseUrls(_dio.options.baseUrl, baseUrl)),
|
|
);
|
|
final _result = await _dio.fetch<Map<String, dynamic>>(_options);
|
|
late Map<String, ChatRoomModel> _value;
|
|
try {
|
|
_value = _result.data!.map(
|
|
(k, dynamic v) =>
|
|
MapEntry(k, ChatRoomModel.fromJson(v as Map<String, dynamic>)),
|
|
);
|
|
} on Object catch (e, s) {
|
|
errorLogger?.logError(e, s, _options);
|
|
rethrow;
|
|
}
|
|
return _value;
|
|
}
|
|
|
|
@override
|
|
Future<void> sendMessage({
|
|
required String id,
|
|
String? data,
|
|
List<MultipartFile>? media_data,
|
|
}) async {
|
|
final _extra = <String, dynamic>{};
|
|
final queryParameters = <String, dynamic>{};
|
|
queryParameters.removeWhere((k, v) => v == null);
|
|
final _headers = <String, dynamic>{};
|
|
final _data = FormData();
|
|
if (data != null) {
|
|
_data.fields.add(MapEntry('data', data));
|
|
}
|
|
if (media_data != null) {
|
|
_data.files.addAll(media_data.map((i) => MapEntry('media_data[]', i)));
|
|
}
|
|
final _options = _setStreamType<void>(
|
|
Options(
|
|
method: 'POST',
|
|
headers: _headers,
|
|
extra: _extra,
|
|
contentType: 'multipart/form-data',
|
|
)
|
|
.compose(
|
|
_dio.options,
|
|
'/api/chat/${id}/message/send',
|
|
queryParameters: queryParameters,
|
|
data: _data,
|
|
)
|
|
.copyWith(baseUrl: _combineBaseUrls(_dio.options.baseUrl, baseUrl)),
|
|
);
|
|
await _dio.fetch<void>(_options);
|
|
}
|
|
|
|
@override
|
|
Future<ChatMessagesModel> getChatMessages({
|
|
required String id,
|
|
required int page,
|
|
}) async {
|
|
final _extra = <String, dynamic>{};
|
|
final queryParameters = <String, dynamic>{};
|
|
final _headers = <String, dynamic>{};
|
|
const Map<String, dynamic>? _data = null;
|
|
final _options = _setStreamType<ChatMessagesModel>(
|
|
Options(method: 'GET', headers: _headers, extra: _extra)
|
|
.compose(
|
|
_dio.options,
|
|
'/api/chat/show/${id}/messages?page=${page}',
|
|
queryParameters: queryParameters,
|
|
data: _data,
|
|
)
|
|
.copyWith(baseUrl: _combineBaseUrls(_dio.options.baseUrl, baseUrl)),
|
|
);
|
|
final _result = await _dio.fetch<Map<String, dynamic>>(_options);
|
|
late ChatMessagesModel _value;
|
|
try {
|
|
_value = ChatMessagesModel.fromJson(_result.data!);
|
|
} on Object catch (e, s) {
|
|
errorLogger?.logError(e, s, _options);
|
|
rethrow;
|
|
}
|
|
return _value;
|
|
}
|
|
|
|
@override
|
|
Future<ChatRoomModel> getChatRoomIdByUserSlug({required String user}) async {
|
|
final _extra = <String, dynamic>{};
|
|
final queryParameters = <String, dynamic>{};
|
|
final _headers = <String, dynamic>{};
|
|
const Map<String, dynamic>? _data = null;
|
|
final _options = _setStreamType<ChatRoomModel>(
|
|
Options(method: 'GET', headers: _headers, extra: _extra)
|
|
.compose(
|
|
_dio.options,
|
|
'/api/chat/get_by_user/${user}',
|
|
queryParameters: queryParameters,
|
|
data: _data,
|
|
)
|
|
.copyWith(baseUrl: _combineBaseUrls(_dio.options.baseUrl, baseUrl)),
|
|
);
|
|
final _result = await _dio.fetch<Map<String, dynamic>>(_options);
|
|
late ChatRoomModel _value;
|
|
try {
|
|
_value = ChatRoomModel.fromJson(_result.data!);
|
|
} on Object catch (e, s) {
|
|
errorLogger?.logError(e, s, _options);
|
|
rethrow;
|
|
}
|
|
return _value;
|
|
}
|
|
|
|
@override
|
|
Future<void> markMessagesAsRead({
|
|
required String id,
|
|
required Map<String, List<int>> body,
|
|
}) async {
|
|
final _extra = <String, dynamic>{};
|
|
final queryParameters = <String, dynamic>{};
|
|
final _headers = <String, dynamic>{};
|
|
final _data = <String, dynamic>{};
|
|
_data.addAll(body);
|
|
final _options = _setStreamType<void>(
|
|
Options(method: 'POST', headers: _headers, extra: _extra)
|
|
.compose(
|
|
_dio.options,
|
|
'/api/chat/${id}/messages/markAsRead',
|
|
queryParameters: queryParameters,
|
|
data: _data,
|
|
)
|
|
.copyWith(baseUrl: _combineBaseUrls(_dio.options.baseUrl, baseUrl)),
|
|
);
|
|
await _dio.fetch<void>(_options);
|
|
}
|
|
|
|
@override
|
|
Future<void> cancelChosenPlan({required int id}) async {
|
|
final _extra = <String, dynamic>{};
|
|
final queryParameters = <String, dynamic>{};
|
|
final _headers = <String, dynamic>{};
|
|
const Map<String, dynamic>? _data = null;
|
|
final _options = _setStreamType<void>(
|
|
Options(method: 'POST', headers: _headers, extra: _extra)
|
|
.compose(
|
|
_dio.options,
|
|
'/api/chosen_plans/${id}/cancel',
|
|
queryParameters: queryParameters,
|
|
data: _data,
|
|
)
|
|
.copyWith(baseUrl: _combineBaseUrls(_dio.options.baseUrl, baseUrl)),
|
|
);
|
|
await _dio.fetch<void>(_options);
|
|
}
|
|
|
|
RequestOptions _setStreamType<T>(RequestOptions requestOptions) {
|
|
if (T != dynamic &&
|
|
!(requestOptions.responseType == ResponseType.bytes ||
|
|
requestOptions.responseType == ResponseType.stream)) {
|
|
if (T == String) {
|
|
requestOptions.responseType = ResponseType.plain;
|
|
} else {
|
|
requestOptions.responseType = ResponseType.json;
|
|
}
|
|
}
|
|
return requestOptions;
|
|
}
|
|
|
|
String _combineBaseUrls(String dioBaseUrl, String? baseUrl) {
|
|
if (baseUrl == null || baseUrl.trim().isEmpty) {
|
|
return dioBaseUrl;
|
|
}
|
|
|
|
final url = Uri.parse(baseUrl);
|
|
|
|
if (url.isAbsolute) {
|
|
return url.toString();
|
|
}
|
|
|
|
return Uri.parse(dioBaseUrl).resolveUri(url).toString();
|
|
}
|
|
}
|