reset method

  1. @override
Future<void> reset()
override

Implementation

@override
Future<void> reset() async {
  try {
    super.reset();

    // Send any remaining queued events before resetting
    if (_eventQueue.isNotEmpty) {
      await _sendBatchEvents(List.from(_eventQueue));
      _eventQueue.clear();
    }

    // Clear userUUID both in memory and storage
    _userUUID = null;
    _userUUID = null;
    _isIdentified = false;
    await _storage.remove(_userUUIDKey);

    if (config.enableLogging) {
      developer.log(
        'IForevents API Integration reset successfully',
        name: 'IForeventsAPI',
      );
    }
  } catch (e) {
    if (config.enableLogging) {
      developer.log('Error during reset', name: 'IForeventsAPI', error: e);
    }
  }
}