updateSession method

Future<T?> updateSession(
  1. Map<String, dynamic> data
)

Update session data

Implementation

Future<T?> updateSession(Map<String, dynamic> data) async {
  try {
    final url = apiBaseUrl(_config.domain, _config.authBasePath, 'session');

    final response = await _config.httpClient.post(
      url,
      options: HttpClientOptions(
        contentType: 'application/json',
        cookies: await _getCookieList(attachAccessToken: true),
      ),
      body: {'csrfToken': await getCSRFToken(), 'data': data},
    );

    final body = response.body;
    if (body != null && body is Map<String, dynamic> && body.isNotEmpty) {
      await _cacheCSRFCookieFromHeaders(response);
      return _config.sessionSerializer.fromJson(body);
    }

    return null;
  } catch (e) {
    logger?.error('updateSession error', e);
    return null;
  }
}