atmob_file_api.c.dart 2.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081
  1. // GENERATED CODE - DO NOT MODIFY BY HAND
  2. part of 'atmob_file_api.dart';
  3. // **************************************************************************
  4. // RetrofitGenerator
  5. // **************************************************************************
  6. // ignore_for_file: unnecessary_brace_in_string_interps,no_leading_underscores_for_local_identifiers
  7. class _AtmobFileApi implements AtmobFileApi {
  8. _AtmobFileApi(
  9. this._dio, {
  10. this.baseUrl,
  11. });
  12. final Dio _dio;
  13. String? baseUrl;
  14. @override
  15. Future<BaseResponse<TalkGenerateResponse>> uploadTalkFile(
  16. Map<String, dynamic> body,
  17. {ProgressCallback? onSendProgress}) async {
  18. const _extra = <String, dynamic>{};
  19. final queryParameters = <String, dynamic>{};
  20. final _headers = <String, dynamic>{};
  21. final _data = FormData.fromMap(body);
  22. final _result = await _dio.fetch<Map<String, dynamic>>(
  23. _setStreamType<BaseResponse<TalkGenerateResponse>>(Options(
  24. method: 'POST',
  25. headers: _headers,
  26. extra: _extra,
  27. contentType: 'multipart/form-data',
  28. )
  29. .compose(_dio.options, '/project/secretary/v1/talk/generate',
  30. queryParameters: queryParameters,
  31. data: _data,
  32. onSendProgress: onSendProgress)
  33. .copyWith(
  34. baseUrl: _combineBaseUrls(
  35. _dio.options.baseUrl,
  36. baseUrl,
  37. ))));
  38. final value = BaseResponse<TalkGenerateResponse>.fromJson(
  39. _result.data!,
  40. (json) => TalkGenerateResponse.fromJson(json as Map<String, dynamic>),
  41. );
  42. return value;
  43. }
  44. RequestOptions _setStreamType<T>(RequestOptions requestOptions) {
  45. if (T != dynamic &&
  46. !(requestOptions.responseType == ResponseType.bytes ||
  47. requestOptions.responseType == ResponseType.stream)) {
  48. if (T == String) {
  49. requestOptions.responseType = ResponseType.plain;
  50. } else {
  51. requestOptions.responseType = ResponseType.json;
  52. }
  53. }
  54. return requestOptions;
  55. }
  56. String _combineBaseUrls(
  57. String dioBaseUrl,
  58. String? baseUrl,
  59. ) {
  60. if (baseUrl == null || baseUrl.trim().isEmpty) {
  61. return dioBaseUrl;
  62. }
  63. final url = Uri.parse(baseUrl);
  64. if (url.isAbsolute) {
  65. return url.toString();
  66. }
  67. return Uri.parse(dioBaseUrl).resolveUri(url).toString();
  68. }
  69. }