postForm method
      
Future<Map<String, dynamic> > 
postForm(
    
- String endpoint,
- FormData formData, {
- CancelToken? cancelToken,
Make a POST request with form data
Implementation
Future<Map<String, dynamic>> postForm(
  String endpoint,
  FormData formData, {
  CancelToken? cancelToken,
}) async {
  if (config.apiKey.isEmpty) {
    throw const AuthError('Missing OpenAI API key');
  }
  try {
    if (logger.isLoggable(Level.FINE)) {
      logger.fine('OpenAI request: POST /$endpoint (form)');
      logger.fine('OpenAI request headers: ${dio.options.headers}');
    }
    final response = await dio.post(
      endpoint,
      data: formData,
      cancelToken: cancelToken,
    );
    if (logger.isLoggable(Level.FINE)) {
      logger.fine('OpenAI HTTP status: ${response.statusCode}');
    }
    if (response.statusCode != 200) {
      _handleErrorResponse(response, endpoint);
    }
    return response.data as Map<String, dynamic>;
  } on DioException catch (e) {
    throw handleDioError(e);
  } catch (e) {
    throw GenericError('Unexpected error: $e');
  }
}