streetView method

Future<Response<Uint8List>> streetView(
  1. String size, {
  2. num? fov,
  3. num? heading,
  4. String? location,
  5. String? pano,
  6. num? pitch,
  7. num? radius,
  8. bool? returnErrorCode,
  9. String? signature,
  10. String? source_,
  11. CancelToken? cancelToken,
  12. Map<String, dynamic>? headers,
  13. Map<String, dynamic>? extra,
  14. ValidateStatus? validateStatus,
  15. ProgressCallback? onSendProgress,
  16. ProgressCallback? onReceiveProgress,
})

The Street View Static API lets you embed a static (non-interactive) Street View panorama or thumbnail into your web page, without the use of JavaScript. The viewport is defined with URL parameters sent through a standard HTTP request, and is returned as a static image.

Implementation

Future<Response<Uint8List>> streetView(
  String size, {
  num? fov,
  num? heading,
  String? location,
  String? pano,
  num? pitch,
  num? radius,
  bool? returnErrorCode,
  String? signature,
  String? source_,
  CancelToken? cancelToken,
  Map<String, dynamic>? headers,
  Map<String, dynamic>? extra,
  ValidateStatus? validateStatus,
  ProgressCallback? onSendProgress,
  ProgressCallback? onReceiveProgress,
}) async {
  final _request = RequestOptions(
    path: r'/maps/api/streetview',
    method: 'GET',
    responseType: ResponseType.bytes,
    headers: <String, dynamic>{
      ...?headers,
    },
    queryParameters: <String, dynamic>{
      if (fov != null) r'fov': fov,
      if (heading != null) r'heading': heading,
      if (location != null) r'location': location,
      if (pano != null) r'pano': pano,
      if (pitch != null) r'pitch': pitch,
      if (radius != null) r'radius': radius,
      if (returnErrorCode != null) r'return_error_code': returnErrorCode,
      if (signature != null) r'signature': signature,
      r'size': size,
      if (source_ != null) r'source': source_,
    },
    extra: <String, dynamic>{
      'secure': <Map<String, String>>[
        {
          'type': 'apiKey',
          'name': 'ApiKeyAuth',
          'keyName': 'key',
          'where': 'query',
        },
      ],
      ...?extra,
    },
    validateStatus: validateStatus,
    contentType: 'application/json',
    cancelToken: cancelToken,
    onSendProgress: onSendProgress,
    onReceiveProgress: onReceiveProgress,
  );

  dynamic _bodyData;

  final _response = await _dio.request<dynamic>(
    _request.path,
    data: _bodyData,
    options: Options(
      method: _request.method,
      sendTimeout: _request.sendTimeout,
      receiveTimeout: _request.receiveTimeout,
      extra: _request.extra,
      headers: _request.headers,
      responseType: _request.responseType,
      contentType: _request.contentType,
      validateStatus: _request.validateStatus,
      receiveDataWhenStatusError: _request.receiveDataWhenStatusError,
      followRedirects: _request.followRedirects,
      maxRedirects: _request.maxRedirects,
      requestEncoder: _request.requestEncoder,
      listFormat: _request.listFormat,
    ),
  );

  final Uint8List? _responseData = _response.data as Uint8List?;

  return Response<Uint8List>(
    data: _responseData,
    headers: _response.headers,
    isRedirect: _response.isRedirect,
    requestOptions: _response.requestOptions,
    redirects: _response.redirects,
    statusCode: _response.statusCode,
    statusMessage: _response.statusMessage,
    extra: _response.extra,
  );
}