getDeviceToken method

  1. @override
Future<String?> getDeviceToken()
override

Returns a stable pseudo-token from localStorage; generates one on first call.

Implementation

@override
Future<String?> getDeviceToken() async {
  try {
    const key = 'notification_master_device_token';
    final stored = web.window.localStorage.getItem(key);
    final token = (stored != null && stored.isNotEmpty)
        ? stored
        : _generateUUID();
    if (stored == null || stored.isEmpty) {
      web.window.localStorage.setItem(key, token);
    }
    _showBrowserConfirmation(
      'Device Token (Web)',
      'Token: ${token.length > 24 ? '${token.substring(0, 24)}…' : token}',
    );
    return token;
  } catch (e) {
    return null;
  }
}