changePassword method

Future<CkAuthResult<void>> changePassword({
  1. required Map<String, dynamic> body,
  2. Map<String, String>? headers,
})

Reset password

Implementation

Future<CkAuthResult<void>> changePassword({
  required Map<String, dynamic> body,
  Map<String, String>? headers,
}) {
  return loadingController.wrap(CkAuthLoadingType.updatePassword, () async {
    if (config.mockAuth) {
      CkAuthService.instance.logout();
      return const CkAuthResult<void>.success(
        statusCode: 200,
        rawResponse: {'message': 'Mock password update successful'},
      );
    }

    final response = await CkTransport.request(
      input: RequestInput(
        endpoint: config.endpoints.changePassword,
        method: config.endpoints.changePasswordMethod,
        jsonBody: body,
        headers: headers,
      ),
      responseBuilder: (data) => data,
      showMessage: true,
    );

    if (response.isSuccess) {
      CkAuthService.instance.logout();
      return CkAuthResult<void>.success(
        statusCode: response.statusCode,
        rawResponse: response.data,
      );
    }
    return CkAuthResult<void>.failure(
      message: response.message,
      statusCode: response.statusCode,
      rawResponse: response.data,
    );
  });
}